|
@@ -46,6 +46,11 @@ u8 get_omap3_evm_rev(void)
|
|
|
|
|
|
static void omap3_evm_get_revision(void)
|
|
static void omap3_evm_get_revision(void)
|
|
{
|
|
{
|
|
|
|
+#if defined(CONFIG_CMD_NET)
|
|
|
|
+ /*
|
|
|
|
+ * Board revision can be ascertained only by identifying
|
|
|
|
+ * the Ethernet chipset.
|
|
|
|
+ */
|
|
unsigned int smsc_id;
|
|
unsigned int smsc_id;
|
|
|
|
|
|
/* Ethernet PHY ID is stored at ID_REV register */
|
|
/* Ethernet PHY ID is stored at ID_REV register */
|
|
@@ -62,6 +67,19 @@ static void omap3_evm_get_revision(void)
|
|
default:
|
|
default:
|
|
omap3_evm_version = OMAP3EVM_BOARD_GEN_2;
|
|
omap3_evm_version = OMAP3EVM_BOARD_GEN_2;
|
|
}
|
|
}
|
|
|
|
+#else
|
|
|
|
+#if defined(CONFIG_STATIC_BOARD_REV)
|
|
|
|
+ /*
|
|
|
|
+ * Look for static defintion of the board revision
|
|
|
|
+ */
|
|
|
|
+ omap3_evm_version = CONFIG_STATIC_BOARD_REV;
|
|
|
|
+#else
|
|
|
|
+ /*
|
|
|
|
+ * Fallback to the default above.
|
|
|
|
+ */
|
|
|
|
+ omap3_evm_version = OMAP3EVM_BOARD_GEN_2;
|
|
|
|
+#endif
|
|
|
|
+#endif /* CONFIG_CMD_NET */
|
|
}
|
|
}
|
|
|
|
|
|
#ifdef CONFIG_USB_OMAP3
|
|
#ifdef CONFIG_USB_OMAP3
|
|
@@ -110,6 +128,7 @@ int misc_init_r(void)
|
|
#if defined(CONFIG_CMD_NET)
|
|
#if defined(CONFIG_CMD_NET)
|
|
setup_net_chip();
|
|
setup_net_chip();
|
|
#endif
|
|
#endif
|
|
|
|
+ omap3_evm_get_revision();
|
|
|
|
|
|
dieid_num_r();
|
|
dieid_num_r();
|
|
|
|
|
|
@@ -163,9 +182,6 @@ static void setup_net_chip(void)
|
|
writel(GPIO0, &gpio3_base->cleardataout);
|
|
writel(GPIO0, &gpio3_base->cleardataout);
|
|
udelay(1);
|
|
udelay(1);
|
|
writel(GPIO0, &gpio3_base->setdataout);
|
|
writel(GPIO0, &gpio3_base->setdataout);
|
|
-
|
|
|
|
- /* determine omap3evm revision */
|
|
|
|
- omap3_evm_get_revision();
|
|
|
|
}
|
|
}
|
|
|
|
|
|
int board_eth_init(bd_t *bis)
|
|
int board_eth_init(bd_t *bis)
|