diff options
author | Poonam Aggrwal <poonam.aggrwal@freescale.com> | 2009-10-07 15:47:44 -0400 |
---|---|---|
committer | Justin Waters <justin.waters@timesys.com> | 2009-10-07 15:47:44 -0400 |
commit | 7fd9bbc747fdfd038281d9d3d080c8b484b425cd (patch) | |
tree | fe07e9e193ee66cc3c7cb7cb8f016c4adc0bf55c | |
parent | 1a6d07ce17bdb34df21d0acb711424b3063322d3 (diff) |
u-boot-2009.03-p2020rdb-DDR-data-width-from-SVR
DDR data width getting detected dynamically based on SVR value.
Would be helpful to cater more than one similar platforms with a single u-boot image.
(for example, P1020(32 bit DDR), P2020(64 bit DDR))
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
-rw-r--r-- | cpu/mpc85xx/cpu.c | 54 | ||||
-rw-r--r-- | include/asm-ppc/processor.h | 5 |
2 files changed, 30 insertions, 29 deletions
diff --git a/cpu/mpc85xx/cpu.c b/cpu/mpc85xx/cpu.c index d176fd7956..177e35856b 100644 --- a/cpu/mpc85xx/cpu.c +++ b/cpu/mpc85xx/cpu.c @@ -38,33 +38,33 @@ DECLARE_GLOBAL_DATA_PTR; struct cpu_type cpu_type_list [] = { - CPU_TYPE_ENTRY(8533, 8533, 1), - CPU_TYPE_ENTRY(8533, 8533_E, 1), - CPU_TYPE_ENTRY(8536, 8536, 1), - CPU_TYPE_ENTRY(8536, 8536_E, 1), - CPU_TYPE_ENTRY(8540, 8540, 1), - CPU_TYPE_ENTRY(8541, 8541, 1), - CPU_TYPE_ENTRY(8541, 8541_E, 1), - CPU_TYPE_ENTRY(8543, 8543, 1), - CPU_TYPE_ENTRY(8543, 8543_E, 1), - CPU_TYPE_ENTRY(8544, 8544, 1), - CPU_TYPE_ENTRY(8544, 8544_E, 1), - CPU_TYPE_ENTRY(8545, 8545, 1), - CPU_TYPE_ENTRY(8545, 8545_E, 1), - CPU_TYPE_ENTRY(8547, 8547_E, 1), - CPU_TYPE_ENTRY(8548, 8548, 1), - CPU_TYPE_ENTRY(8548, 8548_E, 1), - CPU_TYPE_ENTRY(8555, 8555, 1), - CPU_TYPE_ENTRY(8555, 8555_E, 1), - CPU_TYPE_ENTRY(8560, 8560, 1), - CPU_TYPE_ENTRY(8567, 8567, 1), - CPU_TYPE_ENTRY(8567, 8567_E, 1), - CPU_TYPE_ENTRY(8568, 8568, 1), - CPU_TYPE_ENTRY(8568, 8568_E, 1), - CPU_TYPE_ENTRY(8572, 8572, 2), - CPU_TYPE_ENTRY(8572, 8572_E, 2), - CPU_TYPE_ENTRY(P2020, P2020, 2), - CPU_TYPE_ENTRY(P2020, P2020_E, 2), + CPU_TYPE_ENTRY(8533, 8533, 1, 64), + CPU_TYPE_ENTRY(8533, 8533_E, 1, 64), + CPU_TYPE_ENTRY(8536, 8536, 1, 64), + CPU_TYPE_ENTRY(8536, 8536_E, 1, 64), + CPU_TYPE_ENTRY(8540, 8540, 1, 64), + CPU_TYPE_ENTRY(8541, 8541, 1, 64), + CPU_TYPE_ENTRY(8541, 8541_E, 1, 64), + CPU_TYPE_ENTRY(8543, 8543, 1, 64), + CPU_TYPE_ENTRY(8543, 8543_E, 1, 64), + CPU_TYPE_ENTRY(8544, 8544, 1, 64), + CPU_TYPE_ENTRY(8544, 8544_E, 1, 64), + CPU_TYPE_ENTRY(8545, 8545, 1, 64), + CPU_TYPE_ENTRY(8545, 8545_E, 1, 64), + CPU_TYPE_ENTRY(8547, 8547_E, 1, 64), + CPU_TYPE_ENTRY(8548, 8548, 1, 64), + CPU_TYPE_ENTRY(8548, 8548_E, 1, 64), + CPU_TYPE_ENTRY(8555, 8555, 1, 64), + CPU_TYPE_ENTRY(8555, 8555_E, 1, 64), + CPU_TYPE_ENTRY(8560, 8560, 1, 64), + CPU_TYPE_ENTRY(8567, 8567, 1, 64), + CPU_TYPE_ENTRY(8567, 8567_E, 1, 64), + CPU_TYPE_ENTRY(8568, 8568, 1, 64), + CPU_TYPE_ENTRY(8568, 8568_E, 1, 64), + CPU_TYPE_ENTRY(8572, 8572, 2, 64), + CPU_TYPE_ENTRY(8572, 8572_E, 2, 64), + CPU_TYPE_ENTRY(P2020, P2020, 2, 64), + CPU_TYPE_ENTRY(P2020, P2020_E, 2, 64), }; struct cpu_type *identify_cpu(u32 ver) diff --git a/include/asm-ppc/processor.h b/include/asm-ppc/processor.h index 9fd60e84d0..062d42d899 100644 --- a/include/asm-ppc/processor.h +++ b/include/asm-ppc/processor.h @@ -1014,13 +1014,14 @@ struct cpu_type { char name[15]; u32 soc_ver; u32 num_cores; + u32 ddr_data_width; }; struct cpu_type *identify_cpu(u32 ver); #if defined(CONFIG_MPC85xx) -#define CPU_TYPE_ENTRY(n, v, nc) \ - { .name = #n, .soc_ver = SVR_##v, .num_cores = (nc), } +#define CPU_TYPE_ENTRY(n, v, nc, dw) \ + { .name = #n, .soc_ver = SVR_##v, .num_cores = (nc), .ddr_data_width = (dw), } #else #if defined(CONFIG_MPC83XX) #define CPU_TYPE_ENTRY(x) {#x, SPR_##x} |