Hi Mark,
First of all, thanks for taking the rest of the series!
Mark Brown wrote:
On Wed, Jan 28, 2015 at 03:16:08PM +0100, Peter Rosin wrote:
@@ -78,7 +78,7 @@ static const struct reg_default
pcm512x_reg_defaults[] = {
{ PCM512x_DIGITAL_VOLUME_2, 0x30 }, { PCM512x_DIGITAL_VOLUME_3, 0x30 }, { PCM512x_DIGITAL_MUTE_1, 0x22 },
- { PCM512x_DIGITAL_MUTE_2, 0x00 },
- { PCM512x_DIGITAL_MUTE_2, 0x02 },
The datasheet claims these have undefined values as reserved bits - what would be a more robust change here would be to remove the register default entirely so that we take the value the hardware has, giving robustness against any hardware revisions. Of course the device has rather a lot of such reserved bits which is unfortunate.
Given the incompleteness of the datasheets this might be safest; a lot of the reserved areas appear to have undocumented functions. But it works as is of course, so it is not high priority... I don't know what happens when this particular bit is cleared, but it doesn't change anything for the pcm5142 that I am able to detect. So, no real problem with dropping 3/7.
Cheers, Peter