* [U-Boot] [PATCH] powerpc/c29xpcie: add DDR ECC on off config setting
@ 2013-09-24 8:19 Po Liu
2013-09-24 22:56 ` Scott Wood
2013-09-26 1:40 ` [U-Boot] [PATCH v2] " Po Liu
0 siblings, 2 replies; 5+ messages in thread
From: Po Liu @ 2013-09-24 8:19 UTC (permalink / raw)
To: u-boot
c29xpcie REV_A board DDR ECC chip has bad impedance in hardware,
force that kind of board to be DDR ECC off when booting.
Other version board config ECC on/off by hwconfig=fsl_ddr:ecc=on
in uboot enviroment.
Signed-off-by: Po Liu <Po.Liu@freescale.com>
---
Add this patch after the camelcase patch
http://patchwork.ozlabs.org/patch/271670/ was added.
board/freescale/c29xpcie/ddr.c | 8 ++++++++
include/configs/C29XPCIE.h | 2 +-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/board/freescale/c29xpcie/ddr.c b/board/freescale/c29xpcie/ddr.c
index b017cfd..4077ed9 100644
--- a/board/freescale/c29xpcie/ddr.c
+++ b/board/freescale/c29xpcie/ddr.c
@@ -9,6 +9,9 @@
#include <asm/fsl_ddr_sdram.h>
#include <asm/fsl_ddr_dimm_params.h>
+#include "cpld.h"
+
+#define C29XPCIE_HARDWARE_REVA 0x40
/*
* Micron MT41J128M16HA-15E
* */
@@ -61,7 +64,9 @@ void fsl_ddr_board_options(memctl_options_t *popts,
dimm_params_t *pdimm,
unsigned int ctrl_num)
{
+ struct cpld_data *cpld_data = (void *)(CONFIG_SYS_CPLD_BASE);
int i;
+
popts->clk_adjust = 2;
popts->cpo_override = 0x1f;
popts->write_data_delay = 4;
@@ -79,6 +84,9 @@ void fsl_ddr_board_options(memctl_options_t *popts,
popts->trwt_override = 1;
popts->trwt = 0;
+ if (in_8(&cpld_data->hwver) == C29XPCIE_HARDWARE_REVA)
+ popts->ecc_mode = 0;
+
for (i = 0; i < CONFIG_CHIP_SELECTS_PER_CTRL; i++) {
popts->cs_local_opts[i].odt_rd_cfg = FSL_DDR_ODT_NEVER;
popts->cs_local_opts[i].odt_wr_cfg = FSL_DDR_ODT_CS;
diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h
index 83779ef..877375d 100644
--- a/include/configs/C29XPCIE.h
+++ b/include/configs/C29XPCIE.h
@@ -432,7 +432,7 @@
#define CONFIG_BAUDRATE 115200
#define CONFIG_EXTRA_ENV_SETTINGS \
- "hwconfig=" __stringify(CONFIG_DEF_HWCONFIG) "\0" \
+ "hwconfig=fsl_ddr:ecc=off\0" \
"netdev=eth0\0" \
"uboot=" __stringify(CONFIG_UBOOTPATH) "\0" \
"loadaddr=1000000\0" \
--
1.8.0
camelcase patch
^ permalink raw reply related [flat|nested] 5+ messages in thread* [U-Boot] [PATCH] powerpc/c29xpcie: add DDR ECC on off config setting
2013-09-24 8:19 [U-Boot] [PATCH] powerpc/c29xpcie: add DDR ECC on off config setting Po Liu
@ 2013-09-24 22:56 ` Scott Wood
[not found] ` <D473A0D087F4EA47A30C37E4637E25E609DEC5C5@039-SN2MPN1-023.039d.mgd.msft.net>
2013-09-26 1:40 ` [U-Boot] [PATCH v2] " Po Liu
1 sibling, 1 reply; 5+ messages in thread
From: Scott Wood @ 2013-09-24 22:56 UTC (permalink / raw)
To: u-boot
On Tue, 2013-09-24 at 16:19 +0800, Po Liu wrote:
> c29xpcie REV_A board DDR ECC chip has bad impedance in hardware,
> force that kind of board to be DDR ECC off when booting.
> Other version board config ECC on/off by hwconfig=fsl_ddr:ecc=on
> in uboot enviroment.
Why does the Rev A workaround require setting the default ECC to off for
other revisions? Why are you removing the use of CONFIG_DEF_HWCONFIG?
-Scott
^ permalink raw reply [flat|nested] 5+ messages in thread* [U-Boot] [PATCH v2] powerpc/c29xpcie: add DDR ECC on off config setting
2013-09-24 8:19 [U-Boot] [PATCH] powerpc/c29xpcie: add DDR ECC on off config setting Po Liu
2013-09-24 22:56 ` Scott Wood
@ 2013-09-26 1:40 ` Po Liu
2013-10-17 17:16 ` York Sun
1 sibling, 1 reply; 5+ messages in thread
From: Po Liu @ 2013-09-26 1:40 UTC (permalink / raw)
To: u-boot
c29xpcie REV_A board DDR ECC chip has bad impedance in hardware,
force that kind of board to be DDR ECC off when booting.
Other version board config ECC on/off by hwconfig=fsl_ddr:ecc=on
in uboot enviroment.
Signed-off-by: Po Liu <Po.Liu@freescale.com>
---
Add this patch after the camelcase patch
http://patchwork.ozlabs.org/patch/271670/ was added.
changes for v2:
- Default ecc on by hwconfig=fsl_ddr:ecc=on
- Keep the macro define CONFIG_DEF_HWCONFIG
board/freescale/c29xpcie/ddr.c | 8 ++++++++
include/configs/C29XPCIE.h | 2 ++
2 files changed, 10 insertions(+)
diff --git a/board/freescale/c29xpcie/ddr.c b/board/freescale/c29xpcie/ddr.c
index b017cfd..4077ed9 100644
--- a/board/freescale/c29xpcie/ddr.c
+++ b/board/freescale/c29xpcie/ddr.c
@@ -9,6 +9,9 @@
#include <asm/fsl_ddr_sdram.h>
#include <asm/fsl_ddr_dimm_params.h>
+#include "cpld.h"
+
+#define C29XPCIE_HARDWARE_REVA 0x40
/*
* Micron MT41J128M16HA-15E
* */
@@ -61,7 +64,9 @@ void fsl_ddr_board_options(memctl_options_t *popts,
dimm_params_t *pdimm,
unsigned int ctrl_num)
{
+ struct cpld_data *cpld_data = (void *)(CONFIG_SYS_CPLD_BASE);
int i;
+
popts->clk_adjust = 2;
popts->cpo_override = 0x1f;
popts->write_data_delay = 4;
@@ -79,6 +84,9 @@ void fsl_ddr_board_options(memctl_options_t *popts,
popts->trwt_override = 1;
popts->trwt = 0;
+ if (in_8(&cpld_data->hwver) == C29XPCIE_HARDWARE_REVA)
+ popts->ecc_mode = 0;
+
for (i = 0; i < CONFIG_CHIP_SELECTS_PER_CTRL; i++) {
popts->cs_local_opts[i].odt_rd_cfg = FSL_DDR_ODT_NEVER;
popts->cs_local_opts[i].odt_wr_cfg = FSL_DDR_ODT_CS;
diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h
index 83779ef..8ccc904 100644
--- a/include/configs/C29XPCIE.h
+++ b/include/configs/C29XPCIE.h
@@ -431,6 +431,8 @@
#define CONFIG_BAUDRATE 115200
+#define CONFIG_DEF_HWCONFIG fsl_ddr:ecc=on
+
#define CONFIG_EXTRA_ENV_SETTINGS \
"hwconfig=" __stringify(CONFIG_DEF_HWCONFIG) "\0" \
"netdev=eth0\0" \
--
1.8.0
^ permalink raw reply related [flat|nested] 5+ messages in thread* [U-Boot] [PATCH v2] powerpc/c29xpcie: add DDR ECC on off config setting
2013-09-26 1:40 ` [U-Boot] [PATCH v2] " Po Liu
@ 2013-10-17 17:16 ` York Sun
0 siblings, 0 replies; 5+ messages in thread
From: York Sun @ 2013-10-17 17:16 UTC (permalink / raw)
To: u-boot
On 09/25/2013 06:40 PM, Po Liu wrote:
> c29xpcie REV_A board DDR ECC chip has bad impedance in hardware,
> force that kind of board to be DDR ECC off when booting.
> Other version board config ECC on/off by hwconfig=fsl_ddr:ecc=on
> in uboot enviroment.
>
> Signed-off-by: Po Liu <Po.Liu@freescale.com>
> ---
> Add this patch after the camelcase patch
> http://patchwork.ozlabs.org/patch/271670/ was added.
> changes for v2:
> - Default ecc on by hwconfig=fsl_ddr:ecc=on
> - Keep the macro define CONFIG_DEF_HWCONFIG
>
> board/freescale/c29xpcie/ddr.c | 8 ++++++++
> include/configs/C29XPCIE.h | 2 ++
> 2 files changed, 10 insertions(+)
>
Applied to 85xx/next branch. Pending merging to master branch.
York
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-10-17 17:16 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-24 8:19 [U-Boot] [PATCH] powerpc/c29xpcie: add DDR ECC on off config setting Po Liu
2013-09-24 22:56 ` Scott Wood
[not found] ` <D473A0D087F4EA47A30C37E4637E25E609DEC5C5@039-SN2MPN1-023.039d.mgd.msft.net>
2013-09-25 17:16 ` Scott Wood
2013-09-26 1:40 ` [U-Boot] [PATCH v2] " Po Liu
2013-10-17 17:16 ` York Sun
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox