From: Hardik Patel <hardik.pa...@volansystech.com>

Signed-off-by: Hardik Patel <hardik.pa...@volansystech.com>
---
 arch/arm/cpu/armv7/omap4/sdram_elpida.c |    2 +-
 board/ti/panda/panda.c                  |   24 ++++++++++++++++++++++++
 2 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/arch/arm/cpu/armv7/omap4/sdram_elpida.c 
b/arch/arm/cpu/armv7/omap4/sdram_elpida.c
index e4c8316..9fbdeea 100644
--- a/arch/arm/cpu/armv7/omap4/sdram_elpida.c
+++ b/arch/arm/cpu/armv7/omap4/sdram_elpida.c
@@ -123,7 +123,7 @@ static void emif_get_reg_dump_sdp(u32 emif_nr, const struct 
emif_regs **regs)
                *regs = &emif_regs_elpida_200_mhz_2cs;
        else if (omap4_rev == OMAP4430_ES2_3)
                *regs = &emif_regs_elpida_400_mhz_1cs;
-       else if (omap4_rev < OMAP4470_ES1_0)
+       else if (omap4_rev < OMAP4470_ES1_0 && !is_panda_es_rev_b3())
                *regs = &emif_regs_elpida_400_mhz_2cs;
        else
                *regs = &emif_regs_elpida_400_mhz_1cs;
diff --git a/board/ti/panda/panda.c b/board/ti/panda/panda.c
index c104024..5a7f80a 100644
--- a/board/ti/panda/panda.c
+++ b/board/ti/panda/panda.c
@@ -122,6 +122,30 @@ int get_board_revision(void)
        return board_id;
 }
 
+/*
+* Routine: is_panda_es_rev_b3
+* Description: Detect if we are running on B3 version of ES panda board,
+*              This can be done by reading the level of GPIO 171 
+*              and checking the processor revisions.
+*              GPIO171: 1 => Panda ES Rev B3
+*/
+u8 is_panda_es_rev_b3(void)
+{
+        int processor_rev = omap_revision();
+        int ret = 0;
+
+        if ((processor_rev >= OMAP4460_ES1_0 &&
+             processor_rev <= OMAP4460_ES1_1)) {
+
+                /* Setup the mux for the common board ID pins (gpio 171) */
+                writew((IEN | M3), (*ctrl)->control_padconf_core_base + 
UNIPRO_TX0);
+
+                /* if processor_rev is panda ES and GPIO171 is 1, it is rev b3 
*/
+                ret = gpio_get_value(PANDA_BOARD_ID_2_GPIO);
+        }
+        return ret;
+}
+
 /**
  * @brief misc_init_r - Configure Panda board specific configurations
  * such as power configurations, ethernet initialization as phase2 of
-- 
1.7.9.5

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to