mirror of
https://github.com/Stichting-MINIX-Research-Foundation/u-boot.git
synced 2025-09-09 20:18:54 -04:00
omap3evm: Fix mechanism to identify board revision
Function omap3_evm_get_revision() - to identify the board revision was called at end of setup_net_chip(). Board revision can be ascertained only by identifying the Ethernet chipset - but combining setup operations with revision detection isn't a good idea. So, moved the function after call to setup_net_chip(). Function setup_net_chip() should be ideally be called only when CONFIG_CMD_NET is defined. But this leaves the board revision "undetected". This patch allows static definition of revision or default fallback to the latest revision. Signed-off-by: Sanjeev Premi <premi@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
This commit is contained in:
parent
63f42400e5
commit
76ee9a2c3b
@ -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)
|
||||||
|
@ -47,7 +47,9 @@ enum {
|
|||||||
|
|
||||||
u8 get_omap3_evm_rev(void);
|
u8 get_omap3_evm_rev(void);
|
||||||
|
|
||||||
|
#if defined(CONFIG_CMD_NET)
|
||||||
static void setup_net_chip(void);
|
static void setup_net_chip(void);
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* IEN - Input Enable
|
* IEN - Input Enable
|
||||||
|
@ -350,6 +350,11 @@ extern unsigned int boot_flash_type;
|
|||||||
#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
|
#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
|
||||||
#define CONFIG_SYS_INIT_SP_ADDR (LOW_LEVEL_SRAM_STACK - CONFIG_SYS_GBL_DATA_SIZE)
|
#define CONFIG_SYS_INIT_SP_ADDR (LOW_LEVEL_SRAM_STACK - CONFIG_SYS_GBL_DATA_SIZE)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Define the board revision statically
|
||||||
|
*/
|
||||||
|
/* #define CONFIG_STATIC_BOARD_REV OMAP3EVM_BOARD_GEN_2 */
|
||||||
|
|
||||||
/*----------------------------------------------------------------------------
|
/*----------------------------------------------------------------------------
|
||||||
* SMSC9115 Ethernet from SMSC9118 family
|
* SMSC9115 Ethernet from SMSC9118 family
|
||||||
*----------------------------------------------------------------------------
|
*----------------------------------------------------------------------------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user