km/powerpc: various bugfixes and support for 3 new boards
v2 cover km/powerpc: various bugfixes and support for 3 new boards
A few bugfixes have been done for the km_kirkwood bards in the last months and this series collects them all to be sumbitted to mainline. Furthermore, support for 2 new Keymile ppc boards are added:
- kmtepr2: based on a 8321, this is another variation of tuxx1
- kmtegr1: based on 8309, similarly to kmvect1 but with a lot of different peripherals
Changes in v2:
- Removed merge conflict files in commit message
- Squashed commit 9/17 and 10/17 together into a single commit
- Rewritten commit message to get rid of internal git commit reference
- Removed support for kmvect1_p1a: not relevant anymore
Bagavathiannan Palanisamy (1):
board/keymile/km82xx: setting dip_switch 3 and 4 will run bootloader
Christoph Dietrich (1):
powerpc/83xx: add support for kmtepr2 board
Holger Brunck (6):
powerpc/82xx: make set/get_pin for km82xx more flexible powerpc/82xx/km: add testpin detection for mgcoge3ne km/powerpc: increase space for kernel imange and FDT blob km/powerpc: move open firmware defines to km-powerpc.h km/powerpc: remove unneeded defines km/powerpc82xx: remove unused function
Valentin Longchamp (7):
powerpc/km8321: define CONFIG_SYS_DDRCDR powerpc/km8309: define CONFIG_SYS_DDRCDR powerpc/km8360: fix the ODT parameters for CS0
km83xx: use CONFIG_ENV_ADDR for the newenv env command
km8309: change the default QE_FW address powerpc/83xx: add support for kmtegr1 board km/powerpc: fix ft_board_setup prototype for km82xx & km83xx
board/keymile/common/common.c | 5 ++- board/keymile/common/common.h | 2 ++ board/keymile/km82xx/km82xx.c | 57 ++++++++++++++------------------- board/keymile/km83xx/MAINTAINERS | 2 ++ board/keymile/km83xx/km83xx.c | 2 -- configs/kmtegr1_defconfig | 4 +++ configs/kmtepr2_defconfig | 4 +++ include/configs/km/km-powerpc.h | 10 ++++-- include/configs/km/km8309-common.h | 12 +++++-- include/configs/km/km8321-common.h | 6 ++++ include/configs/km/km83xx-common.h | 11 ++++--- include/configs/km82xx.h | 3 -- include/configs/km8360.h | 4 +-- include/configs/suvd3.h | 65 +++++++++++++++++++++++++++++++++++--- include/configs/tuxx1.h | 43 +++++++++++++++++++++---- 15 files changed, 167 insertions(+), 63 deletions(-) create mode 100644 configs/kmtegr1_defconfig create mode 100644 configs/kmtepr2_defconfig
Signature · 1 line
1.8.3.1
PATCH v2 1/15 powerpc/83xx: add support for kmtepr2 board
From: Christoph Dietrich <[email protected]>
This board is similar to TUXX1, but it has differend FPGAs.
---
Changes in v2: None
board/keymile/km83xx/MAINTAINERS | 1 + configs/kmtepr2_defconfig | 4 ++++ include/configs/tuxx1.h | 43 +++++++++++++++++++++++++++++++++------- 3 files changed, 41 insertions(+), 7 deletions(-) create mode 100644 configs/kmtepr2_defconfig
board/keymile/km83xx/MAINTAINERS +1 -0
@@ -7,6 +7,7 @@ F: configs/kmcoge5ne_defconfig F: configs/kmeter1_defconfig F: include/configs/tuxx1.h F: configs/kmopti2_defconfig +F: configs/kmtepr2_defconfig F: include/configs/suvd3.h F: configs/kmvect1_defconfig F: configs/suvd3_defconfig
configs/kmtepr2_defconfig new file +4 -0
@@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMTEPR2" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_TUXX1=y
include/configs/tuxx1.h +36 -7
76 lines not on this page · raw message
Signature · 1 line
1.8.3.1
PATCH v2 1/15 powerpc/83xx: add support for kmtepr2 board
Quoted 7 lines · Valentin Longchamp
From: Christoph Dietrich <[email protected]>
This board is similar to TUXX1, but it has differend FPGAs.
Signed-off-by Christoph Dietrich <[email protected]>Signed-off-by Andreas Huber <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/dc4faa3f/attachment.sig>
PATCH v2 2/15 powerpc/82xx: make set/get_pin for km82xx more flexible
In reply to Valentin LongchampFrom: Holger Brunck <[email protected]>
The get_pin and set_pin funciton was only used for pins on Port D and therefore the value was hard coded in the function. Enhance this with a parameter, that we are able to use this functions for other ports too.
---
Changes in v2: None
board/keymile/km82xx/km82xx.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-)
board/keymile/km82xx/km82xx.c +12 -12
@@ -343,7 +343,7 @@ int last_stage_init(void) }#ifdef CONFIG_MGCOGE3NE -static void set_pin (int state,unsigned long mask); +static void set_pin (int state,unsigned long mask,int port);/* * For mgcoge3ne boards, the mgcoge3un control is controlled from
@@ -357,11 +357,11 @@ static void handle_mgcoge3un_reset(void)if (bobcatreset) {if (strcmp (bobcatreset,"true" ) ==0 ) {puts ("Forcing bobcat reset\n" ); -set_pin (0 ,0x00000004 );/* clear PD29 to reset arm */ +set_pin (0 ,0x00000004 ,3 );/* clear PD29 (reset arm) */ udelay (1000 ); -set_pin (1 ,0x00000004 ); +set_pin (1 ,0x00000004 ,3 ); }else -set_pin (1 ,0x00000004 );/* set PD29 to not reset arm */ +set_pin (1 ,0x00000004 ,3 );/* don't reset arm */ } }#endif
@@ -410,9 +410,9 @@ int hush_init_var(void)#define SDA_MASK 0x00010000#define SCL_MASK 0x00020000 -static void set_pin (int state,unsigned long mask) +static void set_pin (int state,unsigned long mask,int port) { -ioport_t *iop =ioport_addr ((immap_t *)CONFIG_SYS_IMMR ,3 ); +ioport_t *iop =ioport_addr ((immap_t *)CONFIG_SYS_IMMR , port);if (state)setbits_be32 (&iop->pdat, mask);
@@ -422,9 +422,9 @@ static void set_pin(int state, unsigned long mask)setbits_be32 (&iop->pdir, mask); } -static int get_pin (unsigned long mask) +static int get_pin (unsigned long mask,int port) { -ioport_t *iop =ioport_addr ((immap_t *)CONFIG_SYS_IMMR ,3 ); +ioport_t *iop =ioport_addr ((immap_t *)CONFIG_SYS_IMMR , port);clrbits_be32 (&iop->pdir, mask);return 0 != (in_be32 (&iop->pdat) & mask);
@@ -432,22 +432,22 @@ static int get_pin(unsigned long mask)void set_sda (int state) { -set_pin (state,SDA_MASK ); +set_pin (state,SDA_MASK ,3 ); }void set_scl (int state) { -set_pin (state,SCL_MASK ); +set_pin (state,SCL_MASK ,3 ); }int get_sda (void ) { -return get_pin (SDA_MASK ); +return get_pin (SDA_MASK ,3 ); }int get_scl (void ) { -return get_pin (SCL_MASK ); +return get_pin (SCL_MASK ,3 ); }#if defined(CONFIG_HARD_I2C )
Signature · 1 line
1.8.3.1
PATCH v2 2/15 powerpc/82xx: make set/get_pin for km82xx more flexible
Quoted 8 lines · Valentin Longchamp
From: Holger Brunck <[email protected]>
The
get_pinandset_pinfunciton was only used for pins on Port D and therefore the value was hard coded in the function. Enhance this with a parameter, that we are able to use this functions for other ports too.Signed-off-by Holger Brunck <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/bfacd768/attachment.sig>
PATCH v2 3/15 powerpc/82xx/km: add testpin detection for mgcoge3ne
In reply to Valentin LongchampFrom: Holger Brunck <[email protected]>
On mgcoge3ne we also want to start the test application if the testpin is asserted. But we don't have a full POST test support yet. So simply add a function to read the testpin value.
---
Changes in v2: None
board/keymile/common/common.c | 5 ++++- board/keymile/common/common.h | 2 ++ board/keymile/km82xx/km82xx.c | 9 +++++++++ 3 files changed, 15 insertions(+), 1 deletion(-)
board/keymile/common/common.c +4 -1
@@ -354,8 +354,11 @@ static int do_checktestboot(cmd_tbl_t *cmdtp, int flag, int argc,#if defined(CONFIG_POST ) testpin =post_hotkeys_pressed (); - s =getenv ("test_bank" );#endif +#if defined(CONFIG_MGCOGE3NE ) + testpin =get_testpin (); +#endif + s =getenv ("test_bank" );/* when test_bank is not set, act as if testpin is not asserted */ testboot = (testpin !=0 ) && (s);if (verbose) {
board/keymile/common/common.h +2 -0
@@ -134,6 +134,8 @@ int wait_for_fpga_config(void);int fpga_reset (void );int toggle_eeprom_spi_bus (void ); +int get_testpin (void ); +int set_km_env (void ); int fdt_set_node_and_value(void *blob, char *nodename,
board/keymile/km82xx/km82xx.c +9 -0
@@ -473,3 +473,12 @@ int ft_board_setup(void *blob, bd_t *bd) return 0; }#endif /* defined(CONFIG_OF_BOARD_SETUP) && defined(CONFIG_OF_LIBFDT) */ + +#if defined(CONFIG_MGCOGE3NE ) +int get_testpin (void ) +{ +/* Testpin is Port C pin 29 - enable = low */ +int testpin = !get_pin (0x00000004 ,2 ); +return testpin; +} +#endif
Signature · 1 line
1.8.3.1
PATCH v2 3/15 powerpc/82xx/km: add testpin detection for mgcoge3ne
Quoted 8 lines · Valentin Longchamp
From: Holger Brunck <[email protected]>
On mgcoge3ne we also want to start the test application if the testpin is asserted. But we don't have a full POST test support yet. So simply add a function to read the testpin value.
Signed-off-by Holger Brunck <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/f7a95805/attachment.sig>
PATCH v2 4/15 km/powerpc: increase space for kernel imange and FDT blob
In reply to Valentin LongchampFrom: Holger Brunck <[email protected]>
128kByte and 3,986MB may be in the future too little for kernel the fdt blob respectively the kernel image. So increase the reserved areas here, we have the space for this.
---
Changes in v2: None
include/configs/km/km-powerpc.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
include/configs/km/km-powerpc.h +3 -3
@@ -63,9 +63,9 @@* is not valid yet, which is the case for when u-boot copies itself to RAM */ #define CONFIG_PRAM ((CONFIG_KM_PNVRAM + CONFIG_KM_PHRAM)>>10) -#define CONFIG_KM_CRAMFS_ADDR 0x800000 -#define CONFIG_KM_KERNEL_ADDR 0x400000/* 3968Kbytes */ -#define CONFIG_KM_FDT_ADDR 0x7E0000/* 128Kbytes */ +#define CONFIG_KM_CRAMFS_ADDR 0xC00000 +#define CONFIG_KM_KERNEL_ADDR 0x400000/* 7680Kbytes */ +#define CONFIG_KM_FDT_ADDR 0xB80000/* 512Kbytes */ /* architecture specific default bootargs */ #define CONFIG_KM_DEF_BOOT_ARGS_CPU ""
Signature · 1 line
1.8.3.1
PATCH v2 4/15 km/powerpc: increase space for kernel imange and FDT blob
Quoted 8 lines · Valentin Longchamp
From: Holger Brunck <[email protected]>
128kByte and 3,986MB may be in the future too little for kernel the fdt blob respectively the kernel image. So increase the reserved areas here, we have the space for this.
Signed-off-by Holger Brunck <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/4b62b94a/attachment.sig>
PATCH v2 5/15 km/powerpc: move open firmware defines to km-powerpc.h
In reply to Valentin LongchampFrom: Holger Brunck <[email protected]>
We use the same settings for open firmware defines on all our powerpc targets, so move them from the CPU specific headers to the common powerpc header.
---
Changes in v2: None
include/configs/km/km-powerpc.h | 4 ++++ include/configs/km/km83xx-common.h | 3 --- include/configs/km82xx.h | 3 --- 3 files changed, 4 insertions(+), 6 deletions(-)
include/configs/km/km-powerpc.h +4 -0
@@ -17,6 +17,10 @@#define CONFIG_CMD_DTT #define CONFIG_JFFS2_CMDLINE +/* Pass open firmware flat tree */ +#define CONFIG_OF_LIBFDT +#define CONFIG_OF_BOARD_SETUP +/* standard km ethernet_present for piggy */ #define CONFIG_KM_COMMON_ETH_INIT
include/configs/km/km83xx-common.h +0 -3
@@ -153,9 +153,6 @@#define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500)#define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600) -/* Pass open firmware flat tree */ -#define CONFIG_OF_LIBFDT -#define CONFIG_OF_BOARD_SETUP #define CONFIG_OF_STDOUT_VIA_ALIAS /*
include/configs/km82xx.h +0 -3
@@ -431,10 +431,7 @@ int get_scl(void);#define CONFIG_SYS_RESET_ADDRESS 0xFDFFFFFC/* "bad" address */ -/* pass open firmware flat tree */ #define CONFIG_FIT 1 -#define CONFIG_OF_LIBFDT 1 -#define CONFIG_OF_BOARD_SETUP 1#define OF_TBCLK (bd->bi_busfreq / 4)#define OF_STDOUT_PATH "/soc/cpm/serial at 11a90"
Signature · 1 line
1.8.3.1
PATCH v2 5/15 km/powerpc: move open firmware defines to km-powerpc.h
Quoted 8 lines · Valentin Longchamp
From: Holger Brunck <[email protected]>
We use the same settings for open firmware defines on all our powerpc targets, so move them from the CPU specific headers to the common powerpc header.
Signed-off-by Holger Brunck <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/efa0a3e2/attachment.sig>
PATCH v2 6/15 km/powerpc: remove unneeded defines
In reply to Valentin LongchampFrom: Holger Brunck <[email protected]>
We use CONFIG_OF_LIBFDT and CONFIG_OF_BOARD_SETUP on all our powerpc targets, so there is no need to check these defines within our C code.
---
Changes in v2:
- Removed merge conflict files in commit message
board/keymile/km82xx/km82xx.c | 8 ++------ board/keymile/km83xx/km83xx.c | 4 +--- 2 files changed, 3 insertions(+), 9 deletions(-)
board/keymile/km82xx/km82xx.c +2 -6
@@ -11,10 +11,7 @@#include <malloc.h> #include <asm/io.h> -#if defined(CONFIG_OF_BOARD_SETUP ) && defined(CONFIG_OF_LIBFDT )#include <libfdt.h> -#endif -#include <i2c.h> #include "../common/common.h"
@@ -465,14 +462,13 @@ static void setports(int gpio) } }#endif -#if defined(CONFIG_OF_BOARD_SETUP ) && defined(CONFIG_OF_LIBFDT ) -int ft_board_setup (void *blob,bd_t *bd) + +void ft_board_setup (void *blob,bd_t *bd) {ft_cpu_setup (blob, bd);return 0 ; } -#endif /* defined(CONFIG_OF_BOARD_SETUP) && defined(CONFIG_OF_LIBFDT) */ #if defined(CONFIG_MGCOGE3NE )int get_testpin (void )
board/keymile/km83xx/km83xx.c +1 -3
@@ -361,14 +361,12 @@ int checkboard(void)return 0 ; } -#if defined(CONFIG_OF_BOARD_SETUP ) -int ft_board_setup (void *blob,bd_t *bd) +void ft_board_setup (void *blob,bd_t *bd) {ft_cpu_setup (blob, bd);return 0 ; } -#endif #if defined(CONFIG_HUSH_INIT_VAR )int hush_init_var (void )
Signature · 1 line
1.8.3.1
PATCH v2 6/15 km/powerpc: remove unneeded defines
Quoted 7 lines · Valentin Longchamp
From: Holger Brunck <[email protected]>
We use
CONFIG_OF_LIBFDTandCONFIG_OF_BOARD_SETUPon all our powerpc targets, so there is no need to check these defines within our C code.Signed-off-by Holger Brunck <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/279e0f30/attachment.sig>
PATCH v2 7/15 km/powerpc82xx: remove unused function
In reply to Valentin LongchampFrom: Holger Brunck <[email protected]>
commit 0a4f88b98 removed the usage of our setports function, but the function itself were not removed. So toss it it's dead code.
---
Changes in v2: None
board/keymile/km82xx/km82xx.c | 16 ---------------- 1 file changed, 16 deletions(-)
board/keymile/km82xx/km82xx.c +0 -16
@@ -447,22 +447,6 @@ int get_scl(void)return get_pin (SCL_MASK ,3 ); } -#if defined(CONFIG_HARD_I2C ) -static void setports (int gpio) -{ -ioport_t *iop =ioport_addr ((immap_t *)CONFIG_SYS_IMMR ,3 ); - -if (gpio) { -clrbits_be32 (&iop->ppar, (SDA_MASK |SCL_MASK )); -clrbits_be32 (&iop->podr, (SDA_MASK |SCL_MASK )); - }else { -setbits_be32 (&iop->ppar, (SDA_MASK |SCL_MASK )); -clrbits_be32 (&iop->pdir, (SDA_MASK |SCL_MASK )); -setbits_be32 (&iop->podr, (SDA_MASK |SCL_MASK )); - } -} -#endif -void ft_board_setup (void *blob,bd_t *bd) {ft_cpu_setup (blob, bd);
Signature · 1 line
1.8.3.1
PATCH v2 7/15 km/powerpc82xx: remove unused function
Quoted 7 lines · Valentin Longchamp
From: Holger Brunck <[email protected]>
commit
0a4f88b98removed the usage of our setports function, but the function itself were not removed. So toss it it's dead code.Signed-off-by Holger Brunck <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/d6ea3faf/attachment.sig>
PATCH v2 8/15 powerpc/km8321: define CONFIG_SYS_DDRCDR
In reply to Valentin LongchampOn the km8321 boards is CONFIG_SYS_DDRCDR not defined, which leads to the DDRCDR not being configured at startup and still containing the reset value.
The required settings for our km8321 hardware designs are different than the reset value and must be set with CONFIG_SYS_DDRCDR, that is used by mpc83xx's cpu_init_f function at early CPU initialization.
The important settings are the DDR2 internal voltage level and the half-strength "drivers".
In our case where the DRAM chips are soldered on board and the routing for these signals under control, half-strength is sufficient as a few measurements done in the lasts have shown. Since all the hardware qualification tests have been performed with half strength, the nominal strength settings are removed in favor of the default reset half strength settings.
---
Changes in v2:
- Squashed commit 9/17 and 10/17 together into a single commit
include/configs/km/km8321-common.h | 6 ++++++ 1 file changed, 6 insertions(+)
include/configs/km/km8321-common.h +6 -0
@@ -65,6 +65,12 @@ HRCWH_BIG_ENDIAN | \ HRCWH_LALE_NORMAL) +#define CONFIG_SYS_DDRCDR (\ + DDRCDR_EN | \ + DDRCDR_PZ_MAXZ | \ + DDRCDR_NZ_MAXZ | \ + DDRCDR_M_ODR) +#define CONFIG_SYS_DDR_CS0_BNDS 0x0000007f#define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SDRAM_TYPE_DDR2 | \ SDRAM_CFG_32_BE | \
Signature · 1 line
1.8.3.1
PATCH v2 8/15 powerpc/km8321: define CONFIG_SYS_DDRCDR
Quoted 11 lines · Valentin Longchamp
On the km8321 boards is
CONFIG_SYS_DDRCDRnot defined, which leads to the DDRCDR not being configured at startup and still containing the reset value.The required settings for our km8321 hardware designs are different than the reset value and must be set with
CONFIG_SYS_DDRCDR, that is used by mpc83xx'scpu_init_ffunction at early CPU initialization.The important settings are the DDR2 internal voltage level and the half-strength "drivers".
Quoted 8 lines
In our case where the DRAM chips are soldered on board and the routing for these signals under control, half-strength is sufficient as a few measurements done in the lasts have shown. Since all the hardware qualification tests have been performed with half strength, the nominal strength settings are removed in favor of the default reset half strength settings.
Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/c6ff5928/attachment.sig>
PATCH v2 9/15 powerpc/km8309: define CONFIG_SYS_DDRCDR
In reply to Valentin LongchampFor consistency with all the other km83xx plaforms, this should also be defined for km8309. The same settings as for km8321 are taken.
---
Changes in v2: None
include/configs/km/km8309-common.h | 6 ++++++ 1 file changed, 6 insertions(+)
include/configs/km/km8309-common.h +6 -0
@@ -99,6 +99,12 @@ HRCWH_BIG_ENDIAN | \ HRCWH_LALE_NORMAL) +#define CONFIG_SYS_DDRCDR (\ + DDRCDR_EN | \ + DDRCDR_PZ_MAXZ | \ + DDRCDR_NZ_MAXZ | \ + DDRCDR_M_ODR) +#define CONFIG_SYS_DDR_CS0_BNDS 0x0000007f#define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SDRAM_TYPE_DDR2 | \ SDRAM_CFG_32_BE | \
Signature · 1 line
1.8.3.1
PATCH v2 9/15 powerpc/km8309: define CONFIG_SYS_DDRCDR
Quoted 4 lines · Valentin Longchamp
For consistency with all the other km83xx plaforms, this should also be defined for km8309. The same settings as for km8321 are taken.
Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/b481badb/attachment.sig>
PATCH v2 10/15 powerpc/km8360: fix the ODT parameters for CS0
In reply to Valentin LongchampThe ODT parameters for km8360 set the ODT_WR_ACS bit in u-boot KM-2011.09 that is used in the release bootpackage for kmcoge5ne. During the transition from the kmeter1 to km8360 this was changed to ODT_RD_ONLY_CURRENT, which is uncorrect and causes faulty RAM accesses at low temperatures.
This is now changed to ODT_WR_ONLY_CURRENT which is the equivalent of ODT_WR_ACS.
---
Changes in v2:
- Rewritten commit message to get rid of internal git commit reference
include/configs/km8360.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
include/configs/km8360.h +2 -2
@@ -100,7 +100,7 @@#define CONFIG_SYS_DDR_CS0_CONFIG (\ CSCONFIG_EN | \ CSCONFIG_AP | \ - CSCONFIG_ODT_RD_ONLY_CURRENT | \ + CSCONFIG_ODT_WR_ONLY_CURRENT | \ CSCONFIG_BANK_BIT_3 | \ CSCONFIG_ROW_BIT_13 | \ CSCONFIG_COL_BIT_10)
@@ -108,7 +108,7 @@#define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN | CSCONFIG_AP | \ CSCONFIG_ROW_BIT_13 | \ CSCONFIG_COL_BIT_10 | \ - CSCONFIG_ODT_RD_ONLY_CURRENT) + CSCONFIG_ODT_WR_ONLY_CURRENT)#endif #define CONFIG_SYS_DDR_CLK_CNTL (\
Signature · 1 line
1.8.3.1
PATCH v2 10/15 powerpc/km8360: fix the ODT parameters for CS0
Quoted 10 lines · Valentin Longchamp
The ODT parameters for km8360 set the
ODT_WR_ACSbit in u-boot KM-2011.09 that is used in the release bootpackage for kmcoge5ne. During the transition from the kmeter1 to km8360 this was changed toODT_RD_ONLY_CURRENT, which is uncorrect and causes faulty RAM accesses at low temperatures.This is now changed to
ODT_WR_ONLY_CURRENTwhich is the equivalent ofODT_WR_ACS.Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/dd91b4df/attachment.sig>
PATCH v2 11/15 board/keymile/km82xx: setting dip_switch 3 and 4 will run bootloader
In reply to Valentin LongchampFrom: Bagavathiannan Palanisamy <[email protected]>
Setting dip_switch 3 and 4 also will run bootloader in COGE3 and COGE6 It is required remove local mgmt IP address, when DIP Switch PIN3 is enabled. DIP Switch 4 also enabled to avoid u-boot update in future for DIP switch enhancements.
---
Changes in v2: None
board/keymile/km82xx/km82xx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
board/keymile/km82xx/km82xx.c +2 -2
@@ -329,8 +329,8 @@ int last_stage_init(void) dip_switch =in_8 (&base->mswitch); dip_switch &=BFTICU_DIPSWITCH_MASK ; -/* dip switch 'full reset' or 'db erase' */ -if (dip_switch &0x1 || dip_switch &0x2 ) { +/* dip switch 'full reset' or 'db erase' or 'Local mgmt IP' or any */ +if (dip_switch !=0 ) {/* start bootloader */ puts ("DIP: Enabled\n" );setenv ("actual_bank" ,"0" );
Signature · 1 line
1.8.3.1
PATCH v2 11/15 board/keymile/km82xx: setting dip_switch 3 and 4 will run bootloader
Quoted 9 lines · Valentin Longchamp
From: Bagavathiannan Palanisamy <[email protected]>
Setting
dip_switch3 and 4 also will run bootloader in COGE3 and COGE6 It is required remove local mgmt IP address, when DIP Switch PIN3 is enabled. DIP Switch 4 also enabled to avoid u-boot update in future for DIP switch enhancements.Signed-off-by Bagavathiannan Palanisamy <[email protected]>Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/47eb8a2d/attachment.sig>
PATCH v2 12/15 km83xx: use CONFIG_ENV_ADDR for the newenv env command
In reply to Valentin LongchampThe hardcoded value are bad, since the address could change between different boards.
Furthermore, the relevant #defines are set only if #undefined here, so that they can be changed by some boards if required.
---
Changes in v2: None
include/configs/km/km83xx-common.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
include/configs/km/km83xx-common.h +6 -2
@@ -182,10 +182,14 @@#ifndef CONFIG_SYS_RAMBOOT #define CONFIG_ENV_IS_IN_FLASH +#ifndef CONFIG_ENV_ADDR #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE + \ CONFIG_SYS_MONITOR_LEN) +#endif #define CONFIG_ENV_SECT_SIZE 0x20000/* 128K(one sector) for env */ +#ifndef CONFIG_ENV_OFFSET #define CONFIG_ENV_OFFSET (CONFIG_SYS_MONITOR_LEN) +#endif /* Address and size of Redundant Environment Sector */ #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + \
@@ -320,8 +324,8 @@CONFIG_KM_DEF_ENV \ CONFIG_KM_DEF_ARCH \ "newenv=" \ -"prot off 0xF00C0000 +0x40000 && " \ -"era 0xF00C0000 +0x40000\0" \ +" prot off"__stringify(CONFIG_ENV_ADDR)" +0x40000 &&" \ + "era "__stringify(CONFIG_ENV_ADDR)" +0x40000\0" \"unlock=yes\0" \""
Signature · 1 line
1.8.3.1
PATCH v2 12/15 km83xx: use CONFIG_ENV_ADDR for the newenv env command
Quoted 7 lines · Valentin Longchamp
The hardcoded value are bad, since the address could change between different boards.
Furthermore, the relevant #defines are set only if #undefined here, so that they can be changed by some boards if required.
Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/fda22afe/attachment.sig>
PATCH v2 13/15 km8309: change the default QE_FW address
In reply to Valentin LongchampIt should be after the u-boot reserved sectors and before the env sectors, since the solution used for kmvect1 (tell the linker to put the firmware into the u-boot produced binary, at the end of the area) should be the exception.
The #define is only "conditional" so that we can still support kmvect1.
---
Changes in v2: None
include/configs/km/km8309-common.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
include/configs/km/km8309-common.h +4 -2
@@ -29,8 +29,10 @@/* QE microcode/firmware address */ #define CONFIG_SYS_QE_FMAN_FW_IN_NOR -/* at end of uboot partition, before env */ -#define CONFIG_SYS_QE_FW_ADDR 0xF00B0000 +/* between the u-boot partition and env */ +#ifndef CONFIG_SYS_QE_FW_ADDR +#define CONFIG_SYS_QE_FW_ADDR 0xF00C0000 +#endif /* * System IO Config
Signature · 1 line
1.8.3.1
PATCH v2 13/15 km8309: change the default QE_FW address
Quoted 8 lines · Valentin Longchamp
It should be after the u-boot reserved sectors and before the env sectors, since the solution used for kmvect1 (tell the linker to put the firmware into the u-boot produced binary, at the end of the area) should be the exception.
The #define is only "conditional" so that we can still support kmvect1.
Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/4cd7f138/attachment.sig>
PATCH v2 14/15 powerpc/83xx: add support for kmtegr1 board
In reply to Valentin LongchampThis board uses the same CPU (8309) as VECT1. The memory however is different since it has NAND Flash, the NOR Flash partitioning is different and of course the FPGAs as well.
---
Changes in v2: None
board/keymile/km83xx/MAINTAINERS | 1 + configs/kmtegr1_defconfig | 4 +++ include/configs/suvd3.h | 65 +++++++++++++++++++++++++++++++++++++--- 3 files changed, 66 insertions(+), 4 deletions(-) create mode 100644 configs/kmtegr1_defconfig
board/keymile/km83xx/MAINTAINERS +1 -0
@@ -9,6 +9,7 @@ F: include/configs/tuxx1.h F: configs/kmopti2_defconfig F: configs/kmtepr2_defconfig F: include/configs/suvd3.h +F: configs/kmtegr1_defconfig F: configs/kmvect1_defconfig F: configs/suvd3_defconfig F: configs/tuge1_defconfig
configs/kmtegr1_defconfig new file +4 -0
@@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMTEGR1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_SUVD3=y
include/configs/suvd3.h +61 -4
113 lines not on this page · raw message
Signature · 1 line
1.8.3.1
PATCH v2 14/15 powerpc/83xx: add support for kmtegr1 board
Quoted 6 lines · Valentin Longchamp
This board uses the same CPU (8309) as VECT1. The memory however is different since it has NAND Flash, the NOR Flash partitioning is different and of course the FPGAs as well.
Signed-off-by Valentin Longchamp <[email protected]>Signed-off-by Christoph Dietrich <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/df9048a1/attachment.sig>
PATCH v2 15/15 km/powerpc: fix ft_board_setup prototype for km82xx & km83xx
In reply to Valentin Longchamp---
Changes in v2:
- Removed support for kmvect1_p1a: not relevant anymore
board/keymile/km82xx/km82xx.c | 2 +- board/keymile/km83xx/km83xx.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
board/keymile/km82xx/km82xx.c +1 -1
@@ -447,7 +447,7 @@ int get_scl(void)return get_pin (SCL_MASK ,3 ); } -void ft_board_setup (void *blob,bd_t *bd) +int ft_board_setup (void *blob,bd_t *bd) {ft_cpu_setup (blob, bd);
board/keymile/km83xx/km83xx.c +1 -1
@@ -361,7 +361,7 @@ int checkboard(void)return 0 ; } -void ft_board_setup (void *blob,bd_t *bd) +int ft_board_setup (void *blob,bd_t *bd) {ft_cpu_setup (blob, bd);
Signature · 1 line
1.8.3.1
PATCH v2 15/15 km/powerpc: fix ft_board_setup prototype for km82xx & km83xx
Quoted 1 line · Valentin Longchamp
Signed-off-by Valentin Longchamp <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151118/12ffc2c3/attachment.sig>
v2 cover km/powerpc: various bugfixes and support for 3 new boards
In reply to Valentin LongchampHello Valentin,
for the hole serie:
bye,
Heiko
Am 17.11.2015 um 10:53 schrieb Valentin Longchamp:
Quoted 55 lines
A few bugfixes have been done for the
km_kirkwoodbards in the last months and this series collects them all to be sumbitted to mainline. Furthermore, support for 2 new Keymile ppc boards are added:
- kmtepr2: based on a 8321, this is another variation of tuxx1
- kmtegr1: based on 8309, similarly to kmvect1 but with a lot of different peripheralsChanges in v2:
- Removed merge conflict files in commit message
- Squashed commit 9/17 and 10/17 together into a single commit
- Rewritten commit message to get rid of internal git commit reference
- Removed support forkmvect1_p1a: not relevant anymoreBagavathiannan Palanisamy (1):
board/keymile/km82xx: settingdip_switch3 and 4 will run bootloaderChristoph Dietrich (1):
powerpc/83xx: add support for kmtepr2 boardHolger Brunck (6):
powerpc/82xx: make set/get_pin for km82xx more flexible powerpc/82xx/km: add testpin detection for mgcoge3ne km/powerpc: increase space for kernel imange and FDT blob km/powerpc: move open firmware defines tokm-powerpc.hkm/powerpc: remove unneeded defines km/powerpc82xx: remove unused functionValentin Longchamp (7):
powerpc/km8321: defineCONFIG_SYS_DDRCDRpowerpc/km8309: defineCONFIG_SYS_DDRCDRpowerpc/km8360: fix the ODT parameters for CS0
km83xx: useCONFIG_ENV_ADDRfor the newenv env command
km8309: change the defaultQE_FWaddress powerpc/83xx: add support for kmtegr1 board km/powerpc: fixft_board_setupprototype for km82xx & km83xxboard/keymile/common/common.c | 5 ++- board/keymile/common/common.h | 2 ++ board/keymile/km82xx/km82xx.c | 57 ++++++++++++++------------------- board/keymile/km83xx/MAINTAINERS | 2 ++ board/keymile/km83xx/km83xx.c | 2 -- configs/kmtegr1_defconfig | 4 +++ configs/kmtepr2_defconfig | 4 +++ include/configs/km/km-powerpc.h | 10 ++++-- include/configs/km/km8309-common.h | 12 +++++-- include/configs/km/km8321-common.h | 6 ++++ include/configs/km/km83xx-common.h | 11 ++++--- include/configs/km82xx.h | 3 -- include/configs/km8360.h | 4 +-- include/configs/suvd3.h | 65 +++++++++++++++++++++++++++++++++++--- include/configs/tuxx1.h | 43 +++++++++++++++++++++---- 15 files changed, 167 insertions(+), 63 deletions(-)create mode 100644 configs/kmtegr1_defconfig
create mode 100644 configs/kmtepr2_defconfig
Signature · 2 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany