par->chan[2].par = par;
 
        par->chan[0].ddc_base = (par->reverse_i2c) ? 0x36 : 0x3e;
-       nvidia_setup_i2c_bus(&par->chan[0], "nvidia #0", 0);
+       nvidia_setup_i2c_bus(&par->chan[0], "nvidia #0",
+                            (par->reverse_i2c) ? I2C_CLASS_HWMON : 0);
 
        par->chan[1].ddc_base = (par->reverse_i2c) ? 0x3e : 0x36;
-       nvidia_setup_i2c_bus(&par->chan[1], "nvidia #1", I2C_CLASS_HWMON);
+       nvidia_setup_i2c_bus(&par->chan[1], "nvidia #1",
+                            (par->reverse_i2c) ? 0 : I2C_CLASS_HWMON);
 
        par->chan[2].ddc_base = 0x50;
        nvidia_setup_i2c_bus(&par->chan[2], "nvidia #2", 0);