x-loader git: update to 1.5.1
[glsdk/meta-ti-glsdk.git] / recipes-bsp / x-load / x-load / 0001-Beagle-Rev-C5-support.patch
1 From 992eb6ff881792f5c753ef6c85be0ceb2d162c78 Mon Sep 17 00:00:00 2001
2 From: Joel Fernandes <agnel.joel@gmail.com>
3 Date: Tue, 7 Jun 2011 09:50:03 +0200
4 Subject: [PATCH] Beagle Rev C5 support
6 ---
7  board/omap3530beagle/omap3530beagle.c |   16 ++++++++++++++++
8  1 files changed, 16 insertions(+), 0 deletions(-)
10 diff --git a/board/omap3530beagle/omap3530beagle.c b/board/omap3530beagle/omap3530beagle.c
11 index 15943f5..2b8c3c0 100644
12 --- a/board/omap3530beagle/omap3530beagle.c
13 +++ b/board/omap3530beagle/omap3530beagle.c
14 @@ -281,6 +281,7 @@ u32 wait_on_value(u32 read_bit_mask, u32 match_value, u32 read_addr, u32 bound)
15  
16  #define MICRON_DDR     0
17  #define NUMONYX_MCP    1
18 +#define MICRON_MCP     2
19  int identify_xm_ddr()
20  {
21         int     mfr, id;
22 @@ -303,6 +304,8 @@ int identify_xm_ddr()
23                 return MICRON_DDR;
24         if ((mfr == 0x20) && (id == 0xba))
25                 return NUMONYX_MCP;
26 +       if ((mfr == 0x2c) && (id == 0xbc))
27 +               return MICRON_MCP;
28  }
29  /*********************************************************************
30   * config_3430sdram_ddr() - Init DDR on 3430SDP dev board.
31 @@ -329,6 +332,17 @@ void config_3430sdram_ddr(void)
32                         __raw_writel(NUMONYX_V_ACTIMB_165, SDRC_ACTIM_CTRLB_1);
33                         __raw_writel(SDP_3430_SDRC_RFR_CTRL_165MHz, SDRC_RFR_CTRL_0);
34                         __raw_writel(SDP_3430_SDRC_RFR_CTRL_165MHz, SDRC_RFR_CTRL_1);
35 +               } else if (identify_xm_ddr() == MICRON_MCP) {
36 +                       /* Beagleboard Rev C5 */
37 +                       __raw_writel(0x2, SDRC_CS_CFG); /* 256MB/bank */
38 +                       __raw_writel(SDP_SDRC_MDCFG_0_DDR_MICRON_XM, SDRC_MCFG_0);
39 +                       __raw_writel(SDP_SDRC_MDCFG_0_DDR_MICRON_XM, SDRC_MCFG_1);
40 +                       __raw_writel(MICRON_V_ACTIMA_200, SDRC_ACTIM_CTRLA_0);
41 +                       __raw_writel(MICRON_V_ACTIMB_200, SDRC_ACTIM_CTRLB_0);
42 +                       __raw_writel(MICRON_V_ACTIMA_200, SDRC_ACTIM_CTRLA_1);
43 +                       __raw_writel(MICRON_V_ACTIMB_200, SDRC_ACTIM_CTRLB_1);
44 +                       __raw_writel(SDP_3430_SDRC_RFR_CTRL_200MHz, SDRC_RFR_CTRL_0);
45 +                       __raw_writel(SDP_3430_SDRC_RFR_CTRL_200MHz, SDRC_RFR_CTRL_1);
46                 } else {
47                         __raw_writel(0x1, SDRC_CS_CFG); /* 128MB/bank */
48                         __raw_writel(SDP_SDRC_MDCFG_0_DDR, SDRC_MCFG_0);
49 @@ -699,6 +713,8 @@ int misc_init_r(void)
50         case REVISION_C4:
51                 if (identify_xm_ddr() == NUMONYX_MCP)
52                         printf("Beagle Rev C4 from Special Computing\n");
53 +               else if(identify_xm_ddr() == MICRON_MCP)
54 +                       printf("Beagle Rev C5\n");
55                 else
56                         printf("Beagle Rev C4\n");
57                 break;
58 -- 
59 1.6.6.1