dm_writeb
dm_writeb(DM1105_I2CCTR, 0x00);
dm_writeb(DM1105_I2CDAT, addr);
dm_writeb(DM1105_I2CDAT + byte + 1, 0);
dm_writeb(DM1105_I2CCTR, 0x81 + msgs[i].len);
dm_writeb(DM1105_I2CDAT, msgs[i].addr << 1);
dm_writeb(DM1105_I2CDAT + 1, 0xf7);
dm_writeb(DM1105_I2CDAT + byte + 2, data);
dm_writeb(DM1105_I2CCTR, 0x82 + (len > 48 ? 48 : len));
dm_writeb(DM1105_I2CDAT, msgs[i].addr << 1);
dm_writeb(DM1105_I2CDAT + byte + 1, data);
dm_writeb(DM1105_I2CCTR, 0x81 + msgs[i].len);
dm_writeb(DM1105_INTMAK, INTMAK_ALLMASK);
dm_writeb(DM1105_CR, 1);
dm_writeb(DM1105_INTMAK, INTMAK_IRM);
dm_writeb(DM1105_CR, 0);
dm_writeb(DM1105_RST, 1);
dm_writeb(DM1105_INTSTS, intsts);
dm_writeb(DM1105_HOST_CTR, 0);
dm_writeb(DM1105_DTALENTH, 188);
dm_writeb(DM1105_INTCNT, 47);
dm_writeb(DM1105_IRCTR, (DM1105_IR_EN | DM1105_SYS_CHK));
dm_writeb(DM1105_IRMODE, 0);
dm_writeb(DM1105_IRCTR, 0);
dm_writeb(DM1105_INTMAK, INTMAK_NONEMASK);