Hello Roy, On Sat, Feb 29, 2020 at 12:59:20AM +0000, Roy Im wrote: > Okay, thanks. I have tried to update that as below. > Could I get your comment if you still see anything on this? > > /* Maximum gain is 0x7fff for PWM mode */ > #define MAX_MAGNITUDE_SHIFT 15 > [...] > period_mag_multi >>= MAX_MAGNITUDE_SHIFT; > > /* The interpretation of duty cycle depends on the acc_en, > * it should be from 50% to 100% for acc_en = 0. > * See datasheet 'PWM mode' section for more details. > */ > if (!haptics->acc_en) { > period_mag_multi += state.period; > period_mag_multi /= 2; > } Much better. Extra points if you add a link to the datasheet at the top of the driver. I didn't look at the datasheet and assume that the reasoning is obvious then. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |