Quoting Jonathan Cameron (2022-03-27 07:51:47) > On Thu, 24 Mar 2022 15:29:28 -0700 > Stephen Boyd <swboyd@xxxxxxxxxxxx> wrote: > > > There are four possible gain values according to 'sx9324_gain_vals[]': > > > > 1, 2, 4, and 8 > > > > The values are off by one when writing and reading the register. The > > bits should be set according to this equation: > > > > ilog2(<gain>) + 1 > > > > so that a gain of 8 is 0x3 in the register field and a gain of 4 is 0x2 > > in the register field, etc > > Example seems wrong... > > ilog2(8) + 1 = 3 + 1 = 0x4 > ilog2(4) + 1 = 2 + 1 = 0x3 > ilog2(2) + 1 = 1 + 1 = 0x2 > ilog2(1) + 1 = 0 + 1 = 0x1 > 0x0 reserved. > > or have I misunderstood? Nope. I hit the wrong key but your table is correct. Can you fix it when applying?