fix bug in broadcast mode
authora0220410 <peter-li@ti.com>
Wed, 2 Nov 2016 12:16:14 +0000 (20:16 +0800)
committera0220410 <peter-li@ti.com>
Wed, 2 Nov 2016 12:16:14 +0000 (20:16 +0800)
tas2555-core.c
tas2555-i2c.c

index e1d7c07fd8a57b58f946ed83816e908c932480ee..99e74ecc64ed5dcba1739a1d1b6df2bb90e4554a 100755 (executable)
@@ -1157,6 +1157,9 @@ int tas2555_set_program(struct tas2555_priv *pTAS2555,
        udelay(1000);
        
        dev_info(pTAS2555->dev, "load program %d\n", nProgram);
+       tas2555_load_data(pTAS2555,
+               &(pTAS2555->mpFirmware->mpPrograms[nProgram].mData),
+               TAS2555_BLOCK_MAIN_ALL);
        tas2555_load_data(pTAS2555,
                &(pTAS2555->mpFirmware->mpPrograms[nProgram].mData),
                TAS2555_BLOCK_MAIN_DEV_A);
index 668e5158e05311df1770be8d76436e97668d2375..a2e172e150cf4a05cfc4ec69846e732e3fa7b2e2 100755 (executable)
@@ -535,10 +535,6 @@ static int tas2555_dev_update_bits(
                if(chn&channel_right){
                        tas2555_i2c_update_bits(pTAS2555, pTAS2555->mnRAddr, TAS2555_PAGE_REG(nRegister), nMask, nValue);
                }       
-               
-               if(chn == channel_broadcast){
-                       tas2555_i2c_update_bits(pTAS2555, TAS2555_BROADCAST_ADDR, TAS2555_PAGE_REG(nRegister), nMask, nValue);
-               }
        }
                
        mutex_unlock(&pTAS2555->dev_lock);