summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorVaibhav Hiremath <hvaibhav@ti.com>2009-06-13 00:58:06 +0530
committerJustin Waters <justin.waters@timesys.com>2009-10-21 16:46:33 -0400
commit97f4a40fddabef9bdf195b7668a0220e4f29cb82 (patch)
tree6333fafdfd1b81029962db5c163300c49719d19e /drivers
parent697eb49d001d1ba53969065cddfe9a9f13ed83a5 (diff)
OMAP3517TEB: validated on OMAP3517TEB board
OMAP3517TEB board is being used as a pre-silicon development platform, below are the details - Validation - - PLL conifguration - NAND 8-bit micron part (x-loader, u-boot) - USB Host* (Linux) - MMC1 (x-loader, u-boot, Linux) - Video (TV out, LCD (Toshiba part)) - MMC boot from x-loader Changes - - GPMC timing parameters for NAND interface - omap3517evm.h config file cleanup - commented out "smi" instruction Issues - - USB host support has been validated by commenting the mux configuration in u-boot. Was not able to conclude on muxing part of it. - NAND 16-bit is not working, found out to be daughter card issue Daughter card is not designed for 16bit micron part. - LCD is validated based on AVV panel initialization, since it was SPI based LCD panel.
Diffstat (limited to 'drivers')
-rw-r--r--drivers/i2c/omap24xx_i2c.c9
-rw-r--r--drivers/mmc/omap3_mmc.c6
2 files changed, 10 insertions, 5 deletions
diff --git a/drivers/i2c/omap24xx_i2c.c b/drivers/i2c/omap24xx_i2c.c
index 678460325dd..9f7d3e80320 100644
--- a/drivers/i2c/omap24xx_i2c.c
+++ b/drivers/i2c/omap24xx_i2c.c
@@ -109,7 +109,8 @@ static int i2c_read_byte (u8 devaddr, u8 regoffset, u8 * value)
status = wait_for_pin ();
if (status & I2C_STAT_RRDY) {
-#if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX)
+#if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) \
+ || defined(CONFIG_OMAP35XX)
*value = readb (I2C_DATA);
#else
*value = readw (I2C_DATA);
@@ -154,7 +155,8 @@ static int i2c_write_byte (u8 devaddr, u8 regoffset, u8 value)
status = wait_for_pin ();
if (status & I2C_STAT_XRDY) {
-#if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX)
+#if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) \
+ || defined(CONFIG_OMAP35XX)
/* send out 1 byte */
writeb (regoffset, I2C_DATA);
writew (I2C_STAT_XRDY, I2C_STAT);
@@ -207,7 +209,8 @@ static void flush_fifo(void)
while(1){
stat = readw(I2C_STAT);
if(stat == I2C_STAT_RRDY){
-#if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX)
+#if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) \
+ || defined(CONFIG_OMAP35XX)
readb(I2C_DATA);
#else
readw(I2C_DATA);
diff --git a/drivers/mmc/omap3_mmc.c b/drivers/mmc/omap3_mmc.c
index e90db7ee337..2d9ec5ef603 100644
--- a/drivers/mmc/omap3_mmc.c
+++ b/drivers/mmc/omap3_mmc.c
@@ -57,7 +57,7 @@ block_dev_desc_t *mmc_get_dev(int dev)
{
return (block_dev_desc_t *) &mmc_blk_dev;
}
-
+#if defined (CONFIG_OMAP3_EVM)
void twl4030_mmc_config(void)
{
unsigned char data;
@@ -67,12 +67,14 @@ void twl4030_mmc_config(void)
data = VMMC1_VSEL_30;
i2c_write(PWRMGT_ADDR_ID4, VMMC1_DEDICATED, 1, &data, 1);
}
-
+#endif
unsigned char mmc_board_init(void)
{
t2_t *t2_base = (t2_t *)T2_BASE;
+#if defined (CONFIG_OMAP3_EVM)
twl4030_mmc_config();
+#endif
writel(readl(&t2_base->pbias_lite) | PBIASLITEPWRDNZ1 |
PBIASSPEEDCTRL0 | PBIASLITEPWRDNZ0,