On Fri, Mar 6, 2015 at 7:36 PM, Lars-Peter Clausen <[email protected]> wrote:
> On 03/06/2015 06:26 PM, Daniel Baluta wrote:
> [...]
>>
>> I can reproduce the problem with:
>>
>> static struct reg_default xxx_reg_defaults[] = {
>>          { XXX_REG_CTRL0,  0x00 },
>>          { XXX_REG_CTRL1,  0x00 },
>>          { XXX_REG_STATUS, 0x00 },
>> };
>>
>> but, not if the reg default definition is:
>>
>> static struct reg_default xxx_reg_defaults[] = {
>>          { XXX_REG_STATUS, 0x00 },
>>          { XXX_REG_CTRL0,  0x00 },
>>          { XXX_REG_CTRL1,  0x00 },
>>    };
>>
>> Is this normal?
>
>
> That's a rhetorical question, right?
>
> It might be that there is a bug when growing a rbblock to the left. It
> probably went unnoticed because everybody has their reg defaults ordered in
> ascending order.
>
> Try to put a few debug printks into regcache_rbtree_write() and
> regcache_rbtree_insert_to_block() to see what exactly is going on when a new
> register is inserted into the block. How do base_reg and top_reg change.

I cannot test is right now because I don't have access to the physical device.
Is there a way to use to test the regmap API without an I2C/SPI device?

Daniel.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to