[U-Boot] [PATCH 0/9] km: Kconfig and driver model implementations

This series of patches contains the driver model implementation for the UART and Ethernet interface on KM Kirkwood boards. Moreover, the conversion from header files to Kconfig has been advanced. Finally, three now unmaintained boards are removed in order to clean up the source code.
The patches cannot directly be put on mainline, as they depend on a previously sent series that is, however, not yet mainlined. Meant is the SPI driver model implementation that is found on the mailing list over following link: https://lists.denx.de/pipermail/u-boot/2019-June/373115.html. Most importantly it is the first patch of the series setting up a new Kconfig file organization for KM boards, which is required.
Holger Brunck (2): powerpc/km: remove unmaintained target KMVECT1 powerpc/km: remove unmaintained board KMLION1
Pascal Linder (7): km: add Kconfig menus for KM boards km: remove obsolete definitions in KM header files km: clean up header files for KM Kirkwood boards km: fixed typo in KM Kirkwood header file km/uart: port UART interface of KM Kirkwood boards to driver model km/rgmii: port Ethernet interface of KM Kirkwood boards to driver model km/arm: remove unmaintained target PORTL2
arch/arm/dts/kirkwood-km_common.dtsi | 1 + arch/powerpc/cpu/mpc83xx/Kconfig | 4 - board/keymile/Kconfig | 101 +++++++ board/keymile/common/common.h | 4 - board/keymile/common/ivm.c | 5 - board/keymile/km83xx/Kconfig | 19 -- board/keymile/km83xx/MAINTAINERS | 1 - board/keymile/km83xx/km83xx.c | 81 ------ board/keymile/km_arm/Kconfig | 31 ++ board/keymile/km_arm/MAINTAINERS | 1 - board/keymile/kmp204x/MAINTAINERS | 1 - configs/km_kirkwood_pci_defconfig | 1 + configs/kmcoge5un_defconfig | 3 + configs/kmlion1_defconfig | 57 ---- configs/kmnusa_defconfig | 4 + configs/kmsugp1_defconfig | 4 + configs/kmsuv31_defconfig | 2 + configs/kmvect1_defconfig | 180 ------------ configs/mgcoge3un_defconfig | 2 + configs/portl2_defconfig | 46 --- include/configs/km/keymile-common.h | 8 - include/configs/km/km-mpc83xx.h | 4 - include/configs/km/km-powerpc.h | 13 - include/configs/km/km_arm.h | 54 +--- include/configs/km/kmp204x-common.h | 409 -------------------------- include/configs/km_kirkwood.h | 28 +- include/configs/kmp204x.h | 410 +++++++++++++++++++++++++-- include/configs/kmvect1.h | 61 ---- scripts/config_whitelist.txt | 22 -- 29 files changed, 541 insertions(+), 1016 deletions(-) delete mode 100644 configs/kmlion1_defconfig delete mode 100644 configs/kmvect1_defconfig delete mode 100644 configs/portl2_defconfig delete mode 100644 include/configs/km/kmp204x-common.h delete mode 100644 include/configs/kmvect1.h

To execute the conversion away from board specific header files, Kconfig menus have been implemented for all KM boards and additionally for those having an ARM architecture.
For the moment, the preprocessor definitions stay in the headers. The boolean types, however, needed a modification (#define CONFIG_* 1).
The default configuration files of some boards required an update in order to not change the currently defined values of the configurations.
Signed-off-by: Pascal Linder pascal.linder@edu.hefr.ch Signed-off-by: Holger Brunck holger.brunck@ch.abb.com --- board/keymile/Kconfig | 101 ++++++++++++++++++++++++++++++ board/keymile/km_arm/Kconfig | 29 +++++++++ configs/km_kirkwood_pci_defconfig | 1 + configs/kmcoge5un_defconfig | 3 + configs/kmnusa_defconfig | 4 ++ configs/kmsugp1_defconfig | 4 ++ configs/kmsuv31_defconfig | 2 + configs/kmvect1_defconfig | 1 + configs/mgcoge3un_defconfig | 2 + configs/portl2_defconfig | 1 + include/configs/km/km-powerpc.h | 2 +- include/configs/km/km_arm.h | 2 +- include/configs/km_kirkwood.h | 22 +++---- include/configs/kmvect1.h | 2 +- 14 files changed, 162 insertions(+), 14 deletions(-)
diff --git a/board/keymile/Kconfig b/board/keymile/Kconfig index e30d64818c..acaa9289f7 100644 --- a/board/keymile/Kconfig +++ b/board/keymile/Kconfig @@ -9,8 +9,109 @@ config VENDOR_KM
if VENDOR_KM
+menu "KM Board Setup" + +config KM_PNVRAM + hex "Pseudo RAM" + default 0x80000 + help + Start address of the pseudo non-volatile RAM for application. + +config KM_PHRAM + hex "Physical RAM" + default 0x17F000 if ARM + default 0x100000 if PPC + help + Start address of the physical RAM, which is the mounted /var folder. + +config KM_RESERVED_PRAM + hex "Reserved RAM" + default 0x801000 if KIRKWOOD + default 0x0 if MPC83xx + default 0x1000 if MPC85xx + help + Reserved physical RAM area at the end of memory for special purposes. + +config KM_CRAMFS_ADDR + hex "CRAMFS Address" + default 0x2400000 if KIRKWOOD + default 0xC00000 if MPC83xx + default 0x2000000 if MPC85xx + help + Start address of the CRAMFS containing the Linux kernel. + +config KM_KERNEL_ADDR + hex "Kernel Load Address" + default 0x2000000 if KIRKWOOD + default 0x400000 if MPC83xx + default 0x1000000 if MPC85xx + help + Address where to load Linux kernel in RAM. + +config KM_FDT_ADDR + hex "FDT Load Address" + default 0x23E0000 if KIRKWOOD + default 0xB80000 if MPC83xx + default 0x1F80000 if MPC85xx + help + Address where to load flattened device tree in RAM. + +config KM_CONSOLE_TTY + string "KM Console" + default "ttyS0" + help + TTY console to use on board. + +config KM_COMMON_ETH_INIT + bool "Common Ethernet Initialization" + default y if KIRKWOOD || MPC83xx + default n if MPC85xx + help + Use the Ethernet initialization implemented in common code, which + detects if a Piggy board is present. + +config PIGGY_MAC_ADRESS_OFFSET + int "Piggy Address Offset" + default 0 + help + MAC address offset for the Piggy board. + +config KM_MVEXTSW_ADDR + hex "Marvell Switch Address" + depends on MV88E6352_SWITCH + default 0x10 + help + Address of external Marvell switch. + +config KM_IVM_BUS + int "IVM I2C Bus" + default 1 if KIRKWOOD || MPC85xx + default 2 if MPC83xx + help + Identifier number of I2C bus, where the inventory EEPROM is connected to. + +config SYS_IVM_EEPROM_ADR + hex "IVM I2C Address" + default 0x50 + help + I2C address of the EEPROM containing the inventory. + +config SYS_IVM_EEPROM_MAX_LEN + hex "IVM Length" + default 0x400 + help + Maximum length of inventory in EEPROM. + +config SYS_IVM_EEPROM_PAGE_LEN + hex "IVM Page Size" + default 0x100 + help + Page size of inventory in EEPROM. + source "board/keymile/km83xx/Kconfig" source "board/keymile/kmp204x/Kconfig" source "board/keymile/km_arm/Kconfig"
+endmenu + endif diff --git a/board/keymile/km_arm/Kconfig b/board/keymile/km_arm/Kconfig index 19c1db3bc2..7da052f4c4 100644 --- a/board/keymile/km_arm/Kconfig +++ b/board/keymile/km_arm/Kconfig @@ -1,3 +1,32 @@ +menu "KM ARM Options" + depends on ARM + +config KM_FPGA_CONFIG + bool "FPGA Configuration" + default n + help + Include capability to change FPGA configuration. + +config KM_ENV_IS_IN_SPI_NOR + bool "Environment in SPI NOR" + default n + help + Put the U-Boot environment in the SPI NOR flash. + +config KM_PIGGY4_88E6061 + bool "Piggy via Switch 88E6061" + default n + help + The Piggy4 board is connected via a Marvell 88E6061 switch. + +config KM_PIGGY4_88E6352 + bool "Piggy via Switch 88E6352" + default n + help + The Piggy4 board is connected via a Marvell 88E6352 switch. + +endmenu + if TARGET_KM_KIRKWOOD
config SYS_BOARD diff --git a/configs/km_kirkwood_pci_defconfig b/configs/km_kirkwood_pci_defconfig index 5abf543270..b8c8445c34 100644 --- a/configs/km_kirkwood_pci_defconfig +++ b/configs/km_kirkwood_pci_defconfig @@ -3,6 +3,7 @@ CONFIG_SYS_DCACHE_OFF=y CONFIG_KIRKWOOD=y CONFIG_SYS_TEXT_BASE=0x07d00000 CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_KM_FPGA_CONFIG=y CONFIG_IDENT_STRING="\nKeymile Kirkwood PCI" CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_PCI" CONFIG_MISC_INIT_R=y diff --git a/configs/kmcoge5un_defconfig b/configs/kmcoge5un_defconfig index b6ac31e0ff..519402ed48 100644 --- a/configs/kmcoge5un_defconfig +++ b/configs/kmcoge5un_defconfig @@ -3,6 +3,9 @@ CONFIG_SYS_DCACHE_OFF=y CONFIG_KIRKWOOD=y CONFIG_SYS_TEXT_BASE=0x07d00000 CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_PIGGY_MAC_ADRESS_OFFSET=3 +CONFIG_KM_ENV_IS_IN_SPI_NOR=y +CONFIG_KM_PIGGY4_88E6352=y CONFIG_IDENT_STRING="\nKeymile COGE5UN" CONFIG_SYS_EXTRA_OPTIONS="KM_COGE5UN" CONFIG_MISC_INIT_R=y diff --git a/configs/kmnusa_defconfig b/configs/kmnusa_defconfig index 08e9b7566a..1496882163 100644 --- a/configs/kmnusa_defconfig +++ b/configs/kmnusa_defconfig @@ -3,6 +3,9 @@ CONFIG_SYS_DCACHE_OFF=y CONFIG_KIRKWOOD=y CONFIG_SYS_TEXT_BASE=0x07d00000 CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_KM_FPGA_CONFIG=y +CONFIG_KM_ENV_IS_IN_SPI_NOR=y +CONFIG_KM_PIGGY4_88E6352=y CONFIG_IDENT_STRING="\nKeymile NUSA" CONFIG_SYS_EXTRA_OPTIONS="KM_NUSA" CONFIG_MISC_INIT_R=y @@ -38,6 +41,7 @@ CONFIG_BOOTCOUNT_BOOTLIMIT=3 CONFIG_SPI_FLASH=y CONFIG_SF_DEFAULT_SPEED=8100000 CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MV88E6352_SWITCH=y CONFIG_MVGBE=y CONFIG_MII=y CONFIG_SYS_NS16550=y diff --git a/configs/kmsugp1_defconfig b/configs/kmsugp1_defconfig index cafc1f97cb..5da967ad2a 100644 --- a/configs/kmsugp1_defconfig +++ b/configs/kmsugp1_defconfig @@ -3,6 +3,9 @@ CONFIG_SYS_DCACHE_OFF=y CONFIG_KIRKWOOD=y CONFIG_SYS_TEXT_BASE=0x07d00000 CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_KM_FPGA_CONFIG=y +CONFIG_KM_ENV_IS_IN_SPI_NOR=y +CONFIG_KM_PIGGY4_88E6352=y CONFIG_IDENT_STRING="\nKeymile SUGP1" CONFIG_SYS_EXTRA_OPTIONS="KM_SUGP1" CONFIG_MISC_INIT_R=y @@ -38,6 +41,7 @@ CONFIG_BOOTCOUNT_BOOTLIMIT=3 CONFIG_SPI_FLASH=y CONFIG_SF_DEFAULT_SPEED=8100000 CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MV88E6352_SWITCH=y CONFIG_MVGBE=y CONFIG_MII=y CONFIG_SYS_NS16550=y diff --git a/configs/kmsuv31_defconfig b/configs/kmsuv31_defconfig index 14c1c168f6..ced1be5c0b 100644 --- a/configs/kmsuv31_defconfig +++ b/configs/kmsuv31_defconfig @@ -3,6 +3,8 @@ CONFIG_SYS_DCACHE_OFF=y CONFIG_KIRKWOOD=y CONFIG_SYS_TEXT_BASE=0x07d00000 CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_KM_FPGA_CONFIG=y +CONFIG_KM_ENV_IS_IN_SPI_NOR=y CONFIG_IDENT_STRING="\nKeymile SUV31" CONFIG_SYS_EXTRA_OPTIONS="KM_SUV31" CONFIG_MISC_INIT_R=y diff --git a/configs/kmvect1_defconfig b/configs/kmvect1_defconfig index 6f2f7329a2..890c4138ec 100644 --- a/configs/kmvect1_defconfig +++ b/configs/kmvect1_defconfig @@ -173,6 +173,7 @@ CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y CONFIG_SYS_FLASH_PROTECTION=y CONFIG_SYS_FLASH_CFI=y +CONFIG_MV88E6352_SWITCH=y # CONFIG_PCI is not set CONFIG_QE=y CONFIG_SYS_QE_FMAN_FW_IN_NOR=y diff --git a/configs/mgcoge3un_defconfig b/configs/mgcoge3un_defconfig index 6b36cf9ce8..6dd21bcdc1 100644 --- a/configs/mgcoge3un_defconfig +++ b/configs/mgcoge3un_defconfig @@ -3,6 +3,8 @@ CONFIG_SYS_DCACHE_OFF=y CONFIG_KIRKWOOD=y CONFIG_SYS_TEXT_BASE=0x07d00000 CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_PIGGY_MAC_ADRESS_OFFSET=3 +CONFIG_KM_PIGGY4_88E6061=y CONFIG_IDENT_STRING="\nKeymile COGE3UN" CONFIG_SYS_EXTRA_OPTIONS="KM_MGCOGE3UN" CONFIG_MISC_INIT_R=y diff --git a/configs/portl2_defconfig b/configs/portl2_defconfig index 918d27c331..a8981db956 100644 --- a/configs/portl2_defconfig +++ b/configs/portl2_defconfig @@ -3,6 +3,7 @@ CONFIG_SYS_DCACHE_OFF=y CONFIG_KIRKWOOD=y CONFIG_SYS_TEXT_BASE=0x07d00000 CONFIG_TARGET_KM_KIRKWOOD=y +CONFIG_KM_PIGGY4_88E6061=y CONFIG_IDENT_STRING="\nKeymile Port-L2" CONFIG_SYS_EXTRA_OPTIONS="KM_PORTL2" CONFIG_MISC_INIT_R=y diff --git a/include/configs/km/km-powerpc.h b/include/configs/km/km-powerpc.h index 16b11d82a2..74cd67456c 100644 --- a/include/configs/km/km-powerpc.h +++ b/include/configs/km/km-powerpc.h @@ -12,7 +12,7 @@ #define CONFIG_JFFS2_CMDLINE
/* standard km ethernet_present for piggy */ -#define CONFIG_KM_COMMON_ETH_INIT +#define CONFIG_KM_COMMON_ETH_INIT 1
/* EEprom support 24C08, 24C16, 24C64 */ #define CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE diff --git a/include/configs/km/km_arm.h b/include/configs/km/km_arm.h index 3136d48f62..5df507bddf 100644 --- a/include/configs/km/km_arm.h +++ b/include/configs/km/km_arm.h @@ -122,7 +122,7 @@ #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ #define CONFIG_PHY_BASE_ADR 0 #define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */ -#define CONFIG_KM_COMMON_ETH_INIT /* standard km ethernet_present for piggy */ +#define CONFIG_KM_COMMON_ETH_INIT 1 /* standard km ethernet_present for piggy */
/* * I2C related stuff diff --git a/include/configs/km_kirkwood.h b/include/configs/km_kirkwood.h index e7b12d0dca..d0324573b1 100644 --- a/include/configs/km_kirkwood.h +++ b/include/configs/km_kirkwood.h @@ -30,7 +30,7 @@ #elif defined(CONFIG_KM_KIRKWOOD_PCI) #define CONFIG_HOSTNAME "km_kirkwood_pci" #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ -#define CONFIG_KM_FPGA_CONFIG +#define CONFIG_KM_FPGA_CONFIG 1 #define CONFIG_KM_UBI_PART_BOOT_OPTS ",2048" #define CONFIG_SYS_NAND_NO_SUBPAGE_WRITE
@@ -55,10 +55,10 @@
#undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg -#define CONFIG_KM_ENV_IS_IN_SPI_NOR -#define CONFIG_KM_FPGA_CONFIG -#define CONFIG_KM_PIGGY4_88E6352 -#define CONFIG_MV88E6352_SWITCH +#define CONFIG_KM_ENV_IS_IN_SPI_NOR 1 +#define CONFIG_KM_FPGA_CONFIG 1 +#define CONFIG_KM_PIGGY4_88E6352 1 +#define CONFIG_MV88E6352_SWITCH 1 #define CONFIG_KM_MVEXTSW_ADDR 0x10
/* KM_MGCOGE3UN */ @@ -70,24 +70,24 @@ #define CONFIG_KM_BOARD_EXTRA_ENV "waitforne=true\0" #define CONFIG_PIGGY_MAC_ADRESS_OFFSET 3 #define CONFIG_KM_DISABLE_PCIE -#define CONFIG_KM_PIGGY4_88E6061 +#define CONFIG_KM_PIGGY4_88E6061 1
/* KMCOGE5UN */ #elif defined(CONFIG_KM_COGE5UN) #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_256M8_1.cfg -#define CONFIG_KM_ENV_IS_IN_SPI_NOR +#define CONFIG_KM_ENV_IS_IN_SPI_NOR 1 #define CONFIG_PIGGY_MAC_ADRESS_OFFSET 3 #define CONFIG_HOSTNAME "kmcoge5un" #define CONFIG_KM_DISABLE_PCIE -#define CONFIG_KM_PIGGY4_88E6352 +#define CONFIG_KM_PIGGY4_88E6352 1
/* KM_PORTL2 */ #elif defined(CONFIG_KM_PORTL2) #define CONFIG_HOSTNAME "portl2" #define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ -#define CONFIG_KM_PIGGY4_88E6061 +#define CONFIG_KM_PIGGY4_88E6061 1
/* KM_SUV31 */ #elif defined(CONFIG_KM_SUV31) @@ -95,8 +95,8 @@ #define CONFIG_HOSTNAME "kmsuv31" #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg -#define CONFIG_KM_ENV_IS_IN_SPI_NOR -#define CONFIG_KM_FPGA_CONFIG +#define CONFIG_KM_ENV_IS_IN_SPI_NOR 1 +#define CONFIG_KM_FPGA_CONFIG 1 #define CONFIG_KM_UBI_PART_BOOT_OPTS ",2048" #define CONFIG_SYS_NAND_NO_SUBPAGE_WRITE #else diff --git a/include/configs/kmvect1.h b/include/configs/kmvect1.h index 6e5d50700c..3049521757 100644 --- a/include/configs/kmvect1.h +++ b/include/configs/kmvect1.h @@ -37,7 +37,7 @@ /* * QE UEC ethernet configuration */ -#define CONFIG_MV88E6352_SWITCH +#define CONFIG_MV88E6352_SWITCH 1 #define CONFIG_KM_MVEXTSW_ADDR 0x10
/* ethernet port connected to simple switch 88e6122 (UEC0) */

After moving the KM specific configurations to Kconfig, the associated preprocessor definitions can now be removed in the headers. Moreover, the whitelist has been adapted correspondingly.
Signed-off-by: Pascal Linder pascal.linder@edu.hefr.ch Signed-off-by: Holger Brunck holger.brunck@ch.abb.com --- board/keymile/common/common.h | 4 ---- include/configs/km/keymile-common.h | 6 ------ include/configs/km/km-mpc83xx.h | 4 ---- include/configs/km/km-powerpc.h | 13 ------------- include/configs/km/km_arm.h | 22 ---------------------- include/configs/km/kmp204x-common.h | 15 --------------- include/configs/km_kirkwood.h | 22 ---------------------- include/configs/kmvect1.h | 5 ----- scripts/config_whitelist.txt | 18 ------------------ 9 files changed, 109 deletions(-)
diff --git a/board/keymile/common/common.h b/board/keymile/common/common.h index 859d9130a9..42b760dc6e 100644 --- a/board/keymile/common/common.h +++ b/board/keymile/common/common.h @@ -120,10 +120,6 @@ struct bfticu_iomap { u8 pb_dbug; };
-#if !defined(CONFIG_PIGGY_MAC_ADRESS_OFFSET) -#define CONFIG_PIGGY_MAC_ADRESS_OFFSET 0 -#endif - int ethernet_present(void); int ivm_read_eeprom(unsigned char *buf, int len); int ivm_analyze_eeprom(unsigned char *buf, int len); diff --git a/include/configs/km/keymile-common.h b/include/configs/km/keymile-common.h index a83782e1cf..3106ef1d8c 100644 --- a/include/configs/km/keymile-common.h +++ b/include/configs/km/keymile-common.h @@ -27,12 +27,6 @@ #define CONFIG_LOADS_ECHO #define CONFIG_SYS_LOADS_BAUD_CHANGE
- -/* Support the IVM EEprom */ -#define CONFIG_SYS_IVM_EEPROM_ADR 0x50 -#define CONFIG_SYS_IVM_EEPROM_MAX_LEN 0x400 -#define CONFIG_SYS_IVM_EEPROM_PAGE_LEN 0x100 - /* * BOOTP options */ diff --git a/include/configs/km/km-mpc83xx.h b/include/configs/km/km-mpc83xx.h index 455e5236de..c06143c68b 100644 --- a/include/configs/km/km-mpc83xx.h +++ b/include/configs/km/km-mpc83xx.h @@ -3,8 +3,6 @@ */ #define BOOTFLASH_START 0xF0000000
-#define CONFIG_KM_CONSOLE_TTY "ttyS0" - /* * DDR Setup */ @@ -89,8 +87,6 @@ {0, {{I2C_MUX_PCA9547, 0x70, 1} } }, \ {1, {I2C_NULL_HOP} } }
-#define CONFIG_KM_IVM_BUS 2 /* I2C2 (Mux-Port 1)*/ - #if defined(CONFIG_CMD_NAND) #define CONFIG_NAND_KMETER1 #define CONFIG_SYS_MAX_NAND_DEVICE 1 diff --git a/include/configs/km/km-powerpc.h b/include/configs/km/km-powerpc.h index 74cd67456c..20b596f541 100644 --- a/include/configs/km/km-powerpc.h +++ b/include/configs/km/km-powerpc.h @@ -11,9 +11,6 @@
#define CONFIG_JFFS2_CMDLINE
-/* standard km ethernet_present for piggy */ -#define CONFIG_KM_COMMON_ETH_INIT 1 - /* EEprom support 24C08, 24C16, 24C64 */ #define CONFIG_SYS_EEPROM_PAGE_WRITE_ENABLE #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 /* 8 Byte write page */ @@ -45,20 +42,10 @@
/* size of rootfs in RAM */ #define CONFIG_KM_ROOTFSSIZE 0x0 -/* pseudo-non volatile RAM [hex] */ -#define CONFIG_KM_PNVRAM 0x80000 -/* physical RAM MTD size [hex] */ -#define CONFIG_KM_PHRAM 0x100000 -/* resereved pram area at the end of memroy [hex] */ -#define CONFIG_KM_RESERVED_PRAM 0x0 /* set the default PRAM value to at least PNVRAM + PHRAM when pram env variable * 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 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 ""
diff --git a/include/configs/km/km_arm.h b/include/configs/km/km_arm.h index 5df507bddf..d4a6a6357c 100644 --- a/include/configs/km/km_arm.h +++ b/include/configs/km/km_arm.h @@ -41,15 +41,6 @@ #define CONFIG_SYS_MEMTEST_END 0x007fffff /*(_8M -1) */ #define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */
-/* pseudo-non volatile RAM [hex] */ -#define CONFIG_KM_PNVRAM 0x80000 -/* physical RAM MTD size [hex] */ -#define CONFIG_KM_PHRAM 0x17F000 - -#define CONFIG_KM_CRAMFS_ADDR 0x2400000 -#define CONFIG_KM_KERNEL_ADDR 0x2000000 /* 3098KBytes */ -#define CONFIG_KM_FDT_ADDR 0x23E0000 /* 128KBytes */ - /* architecture specific default bootargs */ #define CONFIG_KM_DEF_BOOT_ARGS_CPU \ "bootcountaddr=${bootcountaddr} ${mtdparts}" \ @@ -101,13 +92,6 @@
#define BOOTFLASH_START 0x0
-/* Kirkwood has two serial IF */ -#if (CONFIG_CONS_INDEX == 2) -#define CONFIG_KM_CONSOLE_TTY "ttyS1" -#else -#define CONFIG_KM_CONSOLE_TTY "ttyS0" -#endif - /* * Other required minimal configurations */ @@ -122,7 +106,6 @@ #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ #define CONFIG_PHY_BASE_ADR 0 #define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */ -#define CONFIG_KM_COMMON_ETH_INIT 1 /* standard km ethernet_present for piggy */
/* * I2C related stuff @@ -244,11 +227,6 @@ int get_scl(void); #define CONFIG_SYS_SDRAM_BASE 0x00000000 /* Do early setups now in board_init_f() */
-/* - * resereved pram area at the end of memroy [hex] - * 8Mbytes for switch + 4Kbytes for bootcount - */ -#define CONFIG_KM_RESERVED_PRAM 0x801000 /* address for the bootcount (taken from end of RAM) */ #define BOOTCOUNT_ADDR (CONFIG_KM_RESERVED_PRAM)
diff --git a/include/configs/km/kmp204x-common.h b/include/configs/km/kmp204x-common.h index 3eff38017f..421a03e580 100644 --- a/include/configs/km/kmp204x-common.h +++ b/include/configs/km/kmp204x-common.h @@ -113,21 +113,10 @@ unsigned long get_board_sys_clk(unsigned long dummy);
/* size of rootfs in RAM */ #define CONFIG_KM_ROOTFSSIZE 0x0 -/* pseudo-non volatile RAM [hex] */ -#define CONFIG_KM_PNVRAM 0x80000 -/* physical RAM MTD size [hex] */ -#define CONFIG_KM_PHRAM 0x100000 -/* reserved pram area at the end of memory [hex] - * u-boot reserves some memory for the MP boot page */ -#define CONFIG_KM_RESERVED_PRAM 0x1000 /* set the default PRAM value to at least PNVRAM + PHRAM when pram env variable * 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 0x2000000 -#define CONFIG_KM_KERNEL_ADDR 0x1000000 /* max kernel size 15.5Mbytes */ -#define CONFIG_KM_FDT_ADDR 0x1F80000 /* max dtb size 0.5Mbytes */ - /* * Local Bus Definitions */ @@ -217,8 +206,6 @@ unsigned long get_board_sys_clk(unsigned long dummy); #define CONFIG_SYS_NS16550_COM3 (CONFIG_SYS_CCSRBAR+0x11D500) #define CONFIG_SYS_NS16550_COM4 (CONFIG_SYS_CCSRBAR+0x11D600)
-#define CONFIG_KM_CONSOLE_TTY "ttyS0" - /* I2C */
#define CONFIG_SYS_I2C @@ -243,8 +230,6 @@ int get_sda(void); int get_scl(void); #endif
-#define CONFIG_KM_IVM_BUS 1 /* I2C1 (Mux-Port 1)*/ - /* * eSPI - Enhanced SPI */ diff --git a/include/configs/km_kirkwood.h b/include/configs/km_kirkwood.h index d0324573b1..b679701424 100644 --- a/include/configs/km_kirkwood.h +++ b/include/configs/km_kirkwood.h @@ -24,13 +24,10 @@ #if defined(CONFIG_KM_KIRKWOOD) #define CONFIG_HOSTNAME "km_kirkwood" #define CONFIG_KM_DISABLE_PCIE -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/
/* KM_KIRKWOOD_PCI */ #elif defined(CONFIG_KM_KIRKWOOD_PCI) #define CONFIG_HOSTNAME "km_kirkwood_pci" -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ -#define CONFIG_KM_FPGA_CONFIG 1 #define CONFIG_KM_UBI_PART_BOOT_OPTS ",2048" #define CONFIG_SYS_NAND_NO_SUBPAGE_WRITE
@@ -40,11 +37,9 @@ #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg #define CONFIG_KM_DISABLE_PCIE -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/
/* KM_NUSA / KM_SUGP1 */ #elif defined(CONFIG_KM_NUSA) || defined(CONFIG_KM_SUGP1) -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/
# if defined(CONFIG_KM_NUSA) #define CONFIG_HOSTNAME "kmnusa" @@ -55,48 +50,31 @@
#undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg -#define CONFIG_KM_ENV_IS_IN_SPI_NOR 1 -#define CONFIG_KM_FPGA_CONFIG 1 -#define CONFIG_KM_PIGGY4_88E6352 1 -#define CONFIG_MV88E6352_SWITCH 1 -#define CONFIG_KM_MVEXTSW_ADDR 0x10
/* KM_MGCOGE3UN */ #elif defined(CONFIG_KM_MGCOGE3UN) #define CONFIG_HOSTNAME "mgcoge3un" -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-memphis.cfg #define CONFIG_KM_BOARD_EXTRA_ENV "waitforne=true\0" -#define CONFIG_PIGGY_MAC_ADRESS_OFFSET 3 #define CONFIG_KM_DISABLE_PCIE -#define CONFIG_KM_PIGGY4_88E6061 1
/* KMCOGE5UN */ #elif defined(CONFIG_KM_COGE5UN) -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_256M8_1.cfg -#define CONFIG_KM_ENV_IS_IN_SPI_NOR 1 -#define CONFIG_PIGGY_MAC_ADRESS_OFFSET 3 #define CONFIG_HOSTNAME "kmcoge5un" #define CONFIG_KM_DISABLE_PCIE -#define CONFIG_KM_PIGGY4_88E6352 1
/* KM_PORTL2 */ #elif defined(CONFIG_KM_PORTL2) #define CONFIG_HOSTNAME "portl2" -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ -#define CONFIG_KM_PIGGY4_88E6061 1
/* KM_SUV31 */ #elif defined(CONFIG_KM_SUV31) -#define CONFIG_KM_IVM_BUS 1 /* I2C2 (Mux-Port 1)*/ #define CONFIG_HOSTNAME "kmsuv31" #undef CONFIG_SYS_KWD_CONFIG #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage_128M16_1.cfg -#define CONFIG_KM_ENV_IS_IN_SPI_NOR 1 -#define CONFIG_KM_FPGA_CONFIG 1 #define CONFIG_KM_UBI_PART_BOOT_OPTS ",2048" #define CONFIG_SYS_NAND_NO_SUBPAGE_WRITE #else diff --git a/include/configs/kmvect1.h b/include/configs/kmvect1.h index 3049521757..4a3064d87f 100644 --- a/include/configs/kmvect1.h +++ b/include/configs/kmvect1.h @@ -34,11 +34,6 @@ #define CONFIG_SYS_MAMR (MxMR_GPL_x4DIS | \ 0x0000c000 | \ MxMR_WLFx_2X) -/* - * QE UEC ethernet configuration - */ -#define CONFIG_MV88E6352_SWITCH 1 -#define CONFIG_KM_MVEXTSW_ADDR 0x10
/* ethernet port connected to simple switch 88e6122 (UEC0) */ #define CONFIG_UEC_ETH1 diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index 4158928c18..5d54f12375 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -956,9 +956,6 @@ CONFIG_KMVECT1 CONFIG_KM_BOARD_EXTRA_ENV CONFIG_KM_BOARD_NAME CONFIG_KM_COGE5UN -CONFIG_KM_COMMON_ETH_INIT -CONFIG_KM_CONSOLE_TTY -CONFIG_KM_CRAMFS_ADDR CONFIG_KM_DEF_ARCH CONFIG_KM_DEF_BOOT_ARGS_CPU CONFIG_KM_DEF_ENV @@ -973,24 +970,13 @@ CONFIG_KM_DEV_ENV_FLASH_BOOT_UBI CONFIG_KM_DISABLE_PCI CONFIG_KM_DISABLE_PCIE CONFIG_KM_ECC_MODE -CONFIG_KM_ENV_IS_IN_SPI_NOR -CONFIG_KM_FDT_ADDR -CONFIG_KM_FPGA_CONFIG -CONFIG_KM_IVM_BUS -CONFIG_KM_KERNEL_ADDR CONFIG_KM_KIRKWOOD CONFIG_KM_KIRKWOOD_128M16 CONFIG_KM_KIRKWOOD_PCI CONFIG_KM_MGCOGE3UN -CONFIG_KM_MVEXTSW_ADDR CONFIG_KM_NEW_ENV CONFIG_KM_NUSA -CONFIG_KM_PHRAM -CONFIG_KM_PIGGY4_88E6061 -CONFIG_KM_PIGGY4_88E6352 -CONFIG_KM_PNVRAM CONFIG_KM_PORTL2 -CONFIG_KM_RESERVED_PRAM CONFIG_KM_ROOTFSSIZE CONFIG_KM_SUGP1 CONFIG_KM_SUV31 @@ -1390,7 +1376,6 @@ CONFIG_PHY_M88E1111 CONFIG_PHY_MODE_NEED_CHANGE CONFIG_PHY_RESET CONFIG_PHY_RESET_DELAY -CONFIG_PIGGY_MAC_ADRESS_OFFSET CONFIG_PIXIS_BRDCFG0_SPI CONFIG_PIXIS_BRDCFG0_USB2 CONFIG_PIXIS_BRDCFG1_AUDCLK_11 @@ -3068,9 +3053,6 @@ CONFIG_SYS_ISA_IO_BASE_ADDRESS CONFIG_SYS_ISA_IO_OFFSET CONFIG_SYS_ISA_IO_STRIDE CONFIG_SYS_ISA_MEM -CONFIG_SYS_IVM_EEPROM_ADR -CONFIG_SYS_IVM_EEPROM_MAX_LEN -CONFIG_SYS_IVM_EEPROM_PAGE_LEN CONFIG_SYS_JFFS2_FIRST_BANK CONFIG_SYS_JFFS2_FIRST_SECTOR CONFIG_SYS_JFFS2_MEM_NAND

Remove unused preprocessor definitions and comments of already eliminated code.
The Ethernet driver configuration is already declared in arch/arm/mach-kirkwood/include/mach/config.h and, therefore, superfluous.
Signed-off-by: Pascal Linder pascal.linder@edu.hefr.ch Signed-off-by: Holger Brunck holger.brunck@ch.abb.com --- include/configs/km/keymile-common.h | 2 -- include/configs/km/km_arm.h | 22 ---------------------- scripts/config_whitelist.txt | 1 - 3 files changed, 25 deletions(-)
diff --git a/include/configs/km/keymile-common.h b/include/configs/km/keymile-common.h index 3106ef1d8c..8433d8e568 100644 --- a/include/configs/km/keymile-common.h +++ b/include/configs/km/keymile-common.h @@ -7,8 +7,6 @@ #ifndef __CONFIG_KEYMILE_H #define __CONFIG_KEYMILE_H
-#undef CONFIG_WATCHDOG /* disable platform specific watchdog */ - /* * Miscellaneous configurable options */ diff --git a/include/configs/km/km_arm.h b/include/configs/km/km_arm.h index d4a6a6357c..b257c384dc 100644 --- a/include/configs/km/km_arm.h +++ b/include/configs/km/km_arm.h @@ -30,8 +30,6 @@ /* include common defines/options for all Keymile boards */ #include "keymile-common.h"
-/* SPI NOR Flash default params, used by sf commands */ - /* Reserve 4 MB for malloc */ #define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024)
@@ -69,18 +67,11 @@ #define CONFIG_SYS_NS16550_COM1 KW_UART0_BASE #define CONFIG_SYS_NS16550_COM2 KW_UART1_BASE
-/* - * Serial Port configuration - * The following definitions let you select what serial you want to use - * for your console driver. - */ - /* * For booting Linux, the board info and command line data * have to be in the first 8 MB of memory, since this is * the maximum mapped by the Linux kernel during initialization. */ -#define CONFIG_BOOTMAPSZ (8 << 20) /* Initial Memmap for Linux */ #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ #define CONFIG_INITRD_TAG /* enable INITRD tag */ #define CONFIG_SETUP_MEMORY_TAGS /* enable memory tag */ @@ -90,22 +81,16 @@ */ #define CONFIG_SYS_MAX_NAND_DEVICE 1
-#define BOOTFLASH_START 0x0 - /* * Other required minimal configurations */ #define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */ -#define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */
/* * Ethernet Driver configuration */ -#define CONFIG_NETCONSOLE /* include NetConsole support */ -#define CONFIG_SYS_FAULT_ECHO_LINK_DOWN /* detect link using phy */ #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ #define CONFIG_PHY_BASE_ADR 0 -#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
/* * I2C related stuff @@ -219,13 +204,8 @@ int get_scl(void); "arch=arm\0" \ ""
-#if !defined(CONFIG_MTD_NOR_FLASH) -#undef CONFIG_JFFS2_CMDLINE -#endif - /* additions for new relocation code, must be added to all boards */ #define CONFIG_SYS_SDRAM_BASE 0x00000000 -/* Do early setups now in board_init_f() */
/* address for the bootcount (taken from end of RAM) */ #define BOOTCOUNT_ADDR (CONFIG_KM_RESERVED_PRAM) @@ -235,6 +215,4 @@ int get_scl(void); #define CONFIG_POST_SKIP_ENV_FLAGS #define CONFIG_POST_EXTERNAL_WORD_FUNCS
-/* we do the whole PCIe FPGA config stuff here */ - #endif /* _CONFIG_KM_ARM_H */ diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index 5d54f12375..fab6bbae3a 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -129,7 +129,6 @@ CONFIG_BOARD_SIZE_LIMIT CONFIG_BOOGER CONFIG_BOOTBLOCK CONFIG_BOOTFILE -CONFIG_BOOTMAPSZ CONFIG_BOOTMODE CONFIG_BOOTM_LINUX CONFIG_BOOTM_NETBSD

A typo in the km_kirkwood.h header prevented to undefine the initialization of the Kirkwood PCIe interface.
Signed-off-by: Pascal Linder pascal.linder@edu.hefr.ch Signed-off-by: Holger Brunck holger.brunck@ch.abb.com --- include/configs/km_kirkwood.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/configs/km_kirkwood.h b/include/configs/km_kirkwood.h index b679701424..92b0590d08 100644 --- a/include/configs/km_kirkwood.h +++ b/include/configs/km_kirkwood.h @@ -144,7 +144,7 @@ MVGBE_SET_MII_SPEED_TO_100) #endif
-#ifdef CONFIG_KM_DISABLE_PCI +#ifdef CONFIG_KM_DISABLE_PCIE #undef CONFIG_KIRKWOOD_PCIE_INIT #endif

On 09.07.19 09:28, Pascal Linder wrote:
This series of patches contains the driver model implementation for the UART and Ethernet interface on KM Kirkwood boards. Moreover, the conversion from header files to Kconfig has been advanced. Finally, three now unmaintained boards are removed in order to clean up the source code.
The patches cannot directly be put on mainline, as they depend on a previously sent series that is, however, not yet mainlined. Meant is the SPI driver model implementation that is found on the mailing list over following link: https://lists.denx.de/pipermail/u-boot/2019-June/373115.html. Most importantly it is the first patch of the series setting up a new Kconfig file organization for KM boards, which is required.
Holger Brunck (2): powerpc/km: remove unmaintained target KMVECT1 powerpc/km: remove unmaintained board KMLION1
Pascal Linder (7): km: add Kconfig menus for KM boards km: remove obsolete definitions in KM header files km: clean up header files for KM Kirkwood boards km: fixed typo in KM Kirkwood header file km/uart: port UART interface of KM Kirkwood boards to driver model km/rgmii: port Ethernet interface of KM Kirkwood boards to driver model km/arm: remove unmaintained target PORTL2
All patches applied to:
u-boot-marvell/master.
Thanks, Stefan
arch/arm/dts/kirkwood-km_common.dtsi | 1 + arch/powerpc/cpu/mpc83xx/Kconfig | 4 - board/keymile/Kconfig | 101 +++++++ board/keymile/common/common.h | 4 - board/keymile/common/ivm.c | 5 - board/keymile/km83xx/Kconfig | 19 -- board/keymile/km83xx/MAINTAINERS | 1 - board/keymile/km83xx/km83xx.c | 81 ------ board/keymile/km_arm/Kconfig | 31 ++ board/keymile/km_arm/MAINTAINERS | 1 - board/keymile/kmp204x/MAINTAINERS | 1 - configs/km_kirkwood_pci_defconfig | 1 + configs/kmcoge5un_defconfig | 3 + configs/kmlion1_defconfig | 57 ---- configs/kmnusa_defconfig | 4 + configs/kmsugp1_defconfig | 4 + configs/kmsuv31_defconfig | 2 + configs/kmvect1_defconfig | 180 ------------ configs/mgcoge3un_defconfig | 2 + configs/portl2_defconfig | 46 --- include/configs/km/keymile-common.h | 8 - include/configs/km/km-mpc83xx.h | 4 - include/configs/km/km-powerpc.h | 13 - include/configs/km/km_arm.h | 54 +--- include/configs/km/kmp204x-common.h | 409 -------------------------- include/configs/km_kirkwood.h | 28 +- include/configs/kmp204x.h | 410 +++++++++++++++++++++++++-- include/configs/kmvect1.h | 61 ---- scripts/config_whitelist.txt | 22 -- 29 files changed, 541 insertions(+), 1016 deletions(-) delete mode 100644 configs/kmlion1_defconfig delete mode 100644 configs/kmvect1_defconfig delete mode 100644 configs/portl2_defconfig delete mode 100644 include/configs/km/kmp204x-common.h delete mode 100644 include/configs/kmvect1.h
participants (2)
-
Pascal Linder
-
Stefan Roese