On Wed, Mar 30, 2016 at 10:14:56AM +0200, Petr Kulhavy wrote:
On 29.03.2016 23:33, Mark Brown wrote:
On Tue, Mar 29, 2016 at 09:39:34AM +0200, Petr Kulhavy wrote:
The list of TAS571x registers was incomplete. Added the missing register definitions up to register 0x25
According to the driver the device has registers up to 0xff?
That is indeed true. But from address 0x29 on (0x26 to 0x28 are reserved) the register width varies between 20, 12 and 8 bytes, which I'm afraid the register map is unable to represent.
Say what's going on in your changelog then.
+#define TAS571X_DEV_ID_REG 0x01 +#define TAS571X_ERR_STATUS_REG 0x02
These look like volatile registers but the device has a register cache and we're not adding a list of volatile registers (or readable registers for that matter).
That's a good point, thanks! 0x03 is a regular RW register but 0x00 to 0x02 are indeed volatile. Is it better to make them read-only, or volatile?
It's not an either/or. If they are read only they should be flagged as that. If they are volatile (if they could change value at runtime) then they need to be flagged as that, I'd expect this applies to ERR_STATUS_REG.