> > + u8 i; > > + /* Only 5 dividers (1 2 4 8 16)... Search for the nearest available frequency */ > > + for (i = 0; i < 5; i++) { > > + if (val > (((W83627HF_BASE_PWM_FREQ >> i) + (W83627HF_BASE_PWM_FREQ >> (i+1))) / 2)) > > + break; > > + } > > + return i; > > +} > This could return with i = 5, which isn't correct. Hi Jean, I dont agree on your statement; I think for (i = 0; i < 5; i++) is the same as for (i = 0; i <= 4; i++) so maximum i returned is 4. Am I wrong?? Carlos