1
0
Fork 0
forked from len0rd/rockbox

Fixed loong-standing bug in mas_writereg().

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9222 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jens Arnold 2006-03-24 07:57:55 +00:00
parent 8307d0b388
commit 6a5ef8e742

View file

@ -198,9 +198,15 @@ int mas_writereg(int reg, unsigned int val)
buf[0] = MAS_DATA_WRITE;
buf[1] = MAS_CMD_WRITE_REG | (reg >> 4);
#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
buf[2] = ((reg & 0x0f) << 4) | (val >> 16 & 0x0f);
buf[3] = (val >> 8) & 0xff;
buf[4] = val & 0xff;
#else
buf[2] = ((reg & 0x0f) << 4) | (val & 0x0f);
buf[3] = (val >> 12) & 0xff;
buf[4] = (val >> 4) & 0xff;
#endif
/* send write command */
if (i2c_write(MAS_DEV_WRITE,buf,5))