lsr = readl(i2c->regs + I2C_LSR);
if((lsr & I2C_LSR_RCV_NAK) && (i != msg->len -1) && !(msg->flags & I2C_M_IGNORE_NAK))
return -EINVAL;
-
- if(msg->addr == 0x41) //delay for tp
- udelay(50);
}
return ret;
else
rk29_set_ack(i2c);
i2c_dbg(i2c->dev, "i2c recv >>>>>>>>>>>> buf[%d]: %x\n", i, msg->buf[i]);
-
- if(msg->addr == 0x41) //delay for tp
- udelay(50);
}
return ret;
}
static int rk29_sdmmc_get_cd(struct mmc_host *mmc)
{
-#if defined(CONFIG_MACH_RK29_A22) //A22's sdcard do not support detect pin
-return 1;
-#else
struct rk29_sdmmc *host = mmc_priv(mmc);
u32 cdetect = rk29_sdmmc_read(host->regs, SDMMC_CDETECT);
return (cdetect & SDMMC_CARD_DETECT_N)?0:1;
-#endif
}
static void rk29_sdmmc_enable_sdio_irq(struct mmc_host *mmc, int enable)