Skip to contentSkip to conversation

MIPS Kconfig updates

PATCH New Daniel Schwierzeck 2 participants 8 messages Oct 26, 2014 – Oct 27, 2014 MIPS

lore
Share & tools
lore
#0 lore raw

cover MIPS Kconfig updates

This patch series introduce Kconfig symbols for various MIPS specific config options. It also add Kconfig symbols for board specific config options on vct and dbau1x00. With this series the option CONFIG_SYS_EXTRA_OPTIONS becomes obsolete for existing MIPS boards.

This series is also available at
git://git.denx.de/u-boot-mips.git mips_kconfig_v1

Daniel Schwierzeck (6):
MIPS: kconfig: add options for endianess select
MIPS: kconfig: add options for CPU type select
MIPS: kconfig: globally define CONFIG_SYS_CPU for MIPS
MIPS: kconfig: merge targets qemu_mips and qemu_mips64
MIPS: kconfig: add options for dbau1x00 board variant select
MIPS: kconfig: add options for vct board variant select

 arch/mips/Kconfig                               | 110 +++++++++++++++++++++++-
 board/dbau1x00/Kconfig                          |  21 ++++-
 board/imgtec/malta/Kconfig                      |   3 -
 board/micronas/vct/Kconfig                      |  27 +++++-
 board/pb1x00/Kconfig                            |   3 -
 board/qemu-mips/Kconfig                         |  19 +---
 configs/dbau1000_defconfig                      |   1 +
 configs/dbau1100_defconfig                      |   3 +-
 configs/dbau1500_defconfig                      |   3 +-
 configs/dbau1550_defconfig                      |   3 +-
 configs/dbau1550_el_defconfig                   |   3 +-
 configs/malta_defconfig                         |   2 +-
 configs/maltael_defconfig                       |   2 +-
 configs/pb1000_defconfig                        |   1 +
 configs/qemu_mips64_defconfig                   |   5 +-
 configs/qemu_mips64el_defconfig                 |   5 +-
 configs/qemu_mips_defconfig                     |   3 +-
 configs/qemu_mipsel_defconfig                   |   3 +-
 configs/vct_platinum_defconfig                  |   3 +-
 configs/vct_platinum_onenand_defconfig          |   4 +-
 configs/vct_platinum_onenand_small_defconfig    |   5 +-
 configs/vct_platinum_small_defconfig            |   4 +-
 configs/vct_platinumavc_defconfig               |   3 +-
 configs/vct_platinumavc_onenand_defconfig       |   4 +-
 configs/vct_platinumavc_onenand_small_defconfig |   5 +-
 configs/vct_platinumavc_small_defconfig         |   4 +-
 configs/vct_premium_defconfig                   |   3 +-
 configs/vct_premium_onenand_defconfig           |   4 +-
 configs/vct_premium_onenand_small_defconfig     |   5 +-
 configs/vct_premium_small_defconfig             |   4 +-
 30 files changed, 210 insertions(+), 55 deletions(-)
Signature · 1 line
2.1.1
#1 lore raw

PATCH 1/6 MIPS: kconfig: add options for endianess select

Add new Kconfig option to let the user select the targets endianess. Each target have to select SUPPORTS_BIG_ENDIAN and/or SUPPORTS_LITTLE_ENDIAN to indicate which endianess is supported.

---

 arch/mips/Kconfig                               | 38 +++++++++++++++++++++++++
 configs/dbau1000_defconfig                      |  1 +
 configs/dbau1100_defconfig                      |  1 +
 configs/dbau1500_defconfig                      |  1 +
 configs/dbau1550_defconfig                      |  1 +
 configs/dbau1550_el_defconfig                   |  3 +-
 configs/malta_defconfig                         |  2 +-
 configs/maltael_defconfig                       |  2 +-
 configs/pb1000_defconfig                        |  1 +
 configs/qemu_mips64_defconfig                   |  2 +-
 configs/qemu_mips64el_defconfig                 |  2 +-
 configs/qemu_mips_defconfig                     |  2 +-
 configs/qemu_mipsel_defconfig                   |  2 +-
 configs/vct_platinum_defconfig                  |  1 +
 configs/vct_platinum_onenand_defconfig          |  1 +
 configs/vct_platinum_onenand_small_defconfig    |  1 +
 configs/vct_platinum_small_defconfig            |  1 +
 configs/vct_platinumavc_defconfig               |  1 +
 configs/vct_platinumavc_onenand_defconfig       |  1 +
 configs/vct_platinumavc_onenand_small_defconfig |  1 +
 configs/vct_platinumavc_small_defconfig         |  1 +
 configs/vct_premium_defconfig                   |  1 +
 configs/vct_premium_onenand_defconfig           |  1 +
 configs/vct_premium_onenand_small_defconfig     |  1 +
 configs/vct_premium_small_defconfig             |  1 +
 25 files changed, 63 insertions(+), 7 deletions(-)
arch/mips/Kconfig +38 -0
index 9b72bab..b8f9741 100644
@@ -12,21 +12,31 @@ choice
 
 config TARGET_QEMU_MIPS
 	bool "Support qemu-mips"
+	select SUPPORTS_BIG_ENDIAN
+	select SUPPORTS_LITTLE_ENDIAN
 
 config TARGET_MALTA
 	bool "Support malta"
+	select SUPPORTS_BIG_ENDIAN
+	select SUPPORTS_LITTLE_ENDIAN
 
 config TARGET_VCT
 	bool "Support vct"
+	select SUPPORTS_BIG_ENDIAN
 
 config TARGET_DBAU1X00
 	bool "Support dbau1x00"
+	select SUPPORTS_BIG_ENDIAN
+	select SUPPORTS_LITTLE_ENDIAN
 
 config TARGET_PB1X00
 	bool "Support pb1x00"
+	select SUPPORTS_BIG_ENDIAN
 
 config TARGET_QEMU_MIPS64
 	bool "Support qemu-mips64"
+	select SUPPORTS_BIG_ENDIAN
+	select SUPPORTS_LITTLE_ENDIAN
 
 endchoice
 
@@ -36,4 +46,32 @@ source "board/micronas/vct/Kconfig"
 source "board/pb1x00/Kconfig"
 source "board/qemu-mips/Kconfig"
 
+if MIPS
+
+choice
+	prompt "Endianness selection"
+	help
+	  Some MIPS boards can be configured for either little or big endian
+	  byte order. These modes require different U-Boot images. In general there
+	  is one preferred byteorder for a particular system but some systems are
+	  just as commonly used in the one or the other endianness.
+
+config SYS_BIG_ENDIAN
+	bool "Big endian"
+	depends on SUPPORTS_BIG_ENDIAN
+
+config SYS_LITTLE_ENDIAN
+	bool "Little endian"
+	depends on SUPPORTS_LITTLE_ENDIAN
+
+endchoice
+
+config SUPPORTS_BIG_ENDIAN
+	bool
+
+config SUPPORTS_LITTLE_ENDIAN
+	bool
+
+endif
+
 endmenu
configs/dbau1000_defconfig +1 -0
index 7c95629..aa4d338 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="DBAU1000"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/dbau1100_defconfig +1 -0
index 506f5da..db6f98e 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="DBAU1100"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/dbau1500_defconfig +1 -0
index 5a02a78..d2fbff9 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="DBAU1500"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/dbau1550_defconfig +1 -0
index 9015023..3142391 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="DBAU1550"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/dbau1550_el_defconfig +2 -1
index 53b35ce..514f227 100644
@@ -1,3 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="DBAU1550,SYS_LITTLE_ENDIAN"
+CONFIG_SYS_EXTRA_OPTIONS="DBAU1550"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
+CONFIG_SYS_LITTLE_ENDIAN=y
configs/malta_defconfig +1 -1
index f3788b6..5a178a7 100644
@@ -1,3 +1,3 @@
-CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN"
 CONFIG_MIPS=y
 CONFIG_TARGET_MALTA=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/maltael_defconfig +1 -1
index 97d0e89..011525f 100644
@@ -1,3 +1,3 @@
-CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN"
 CONFIG_MIPS=y
 CONFIG_TARGET_MALTA=y
+CONFIG_SYS_LITTLE_ENDIAN=y
configs/pb1000_defconfig +1 -0
index e226358..7d9509b 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="PB1000"
 CONFIG_MIPS=y
 CONFIG_TARGET_PB1X00=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/qemu_mips64_defconfig +1 -1
index 2948355..36897b9 100644
@@ -1,3 +1,3 @@
-CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN"
 CONFIG_MIPS=y
 CONFIG_TARGET_QEMU_MIPS64=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/qemu_mips64el_defconfig +1 -1
index 13a039f..70d226a 100644
@@ -1,3 +1,3 @@
-CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN"
 CONFIG_MIPS=y
 CONFIG_TARGET_QEMU_MIPS64=y
+CONFIG_SYS_LITTLE_ENDIAN=y
configs/qemu_mips_defconfig +1 -1
index 6b2c029..0a385af 100644
@@ -1,3 +1,3 @@
-CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN"
 CONFIG_MIPS=y
 CONFIG_TARGET_QEMU_MIPS=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/qemu_mipsel_defconfig +1 -1
index 57c8701..d0acb28 100644
@@ -1,3 +1,3 @@
-CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN"
 CONFIG_MIPS=y
 CONFIG_TARGET_QEMU_MIPS=y
+CONFIG_SYS_LITTLE_ENDIAN=y
configs/vct_platinum_defconfig +1 -0
index 9ff8b68..85584e3 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/vct_platinum_onenand_defconfig +1 -0
index f33c97d..0ba7ae6 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/vct_platinum_onenand_small_defconfig +1 -0
index 58c7995..d70a979 100644
@@ -1,4 +1,5 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_platinum_small_defconfig +1 -0
index f4f56c4..ab5c2e1 100644
@@ -1,4 +1,5 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_platinumavc_defconfig +1 -0
index 8aaac56..691325d 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/vct_platinumavc_onenand_defconfig +1 -0
index 926c6e4..1e0c399 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/vct_platinumavc_onenand_small_defconfig +1 -0
index 31b4c9a..f254ab6 100644
@@ -1,4 +1,5 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_platinumavc_small_defconfig +1 -0
index 23f6561..83670ed 100644
@@ -1,4 +1,5 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_premium_defconfig +1 -0
index 0e16ff9..24bf87e 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/vct_premium_onenand_defconfig +1 -0
index 29734b8..0039ec1 100644
@@ -1,3 +1,4 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
configs/vct_premium_onenand_small_defconfig +1 -0
index 354793e..8fc6ac1 100644
@@ -1,4 +1,5 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_premium_small_defconfig +1 -0
index a23ddb7..96bb0ee 100644
@@ -1,4 +1,5 @@
 CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
+CONFIG_SYS_BIG_ENDIAN=y
 # CONFIG_CMD_CRC32 is not set
Signature · 1 line
2.1.1
#2 lore raw

PATCH 2/6 MIPS: kconfig: add options for CPU type select

In reply to Daniel Schwierzeck

Add new Kconfig option to let the user select the targets CPU type. Each target have to select SUPPORTS_CPU_MIPS[32,64]_R[1,2] to indicate which CPU types are supported.

---

 arch/mips/Kconfig | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)
arch/mips/Kconfig +68 -0
index b8f9741..21747b2 100644
@@ -14,29 +14,41 @@ config TARGET_QEMU_MIPS
 	bool "Support qemu-mips"
 	select SUPPORTS_BIG_ENDIAN
 	select SUPPORTS_LITTLE_ENDIAN
+	select SUPPORTS_CPU_MIPS32_R1
+	select SUPPORTS_CPU_MIPS32_R2
 
 config TARGET_MALTA
 	bool "Support malta"
 	select SUPPORTS_BIG_ENDIAN
 	select SUPPORTS_LITTLE_ENDIAN
+	select SUPPORTS_CPU_MIPS32_R1
+	select SUPPORTS_CPU_MIPS32_R2
 
 config TARGET_VCT
 	bool "Support vct"
 	select SUPPORTS_BIG_ENDIAN
+	select SUPPORTS_CPU_MIPS32_R1
+	select SUPPORTS_CPU_MIPS32_R2
 
 config TARGET_DBAU1X00
 	bool "Support dbau1x00"
 	select SUPPORTS_BIG_ENDIAN
 	select SUPPORTS_LITTLE_ENDIAN
+	select SUPPORTS_CPU_MIPS32_R1
+	select SUPPORTS_CPU_MIPS32_R2
 
 config TARGET_PB1X00
 	bool "Support pb1x00"
 	select SUPPORTS_BIG_ENDIAN
+	select SUPPORTS_CPU_MIPS32_R1
+	select SUPPORTS_CPU_MIPS32_R2
 
 config TARGET_QEMU_MIPS64
 	bool "Support qemu-mips64"
 	select SUPPORTS_BIG_ENDIAN
 	select SUPPORTS_LITTLE_ENDIAN
+	select SUPPORTS_CPU_MIPS64_R1
+	select SUPPORTS_CPU_MIPS64_R2
 
 endchoice
 
@@ -66,12 +78,68 @@ config SYS_LITTLE_ENDIAN
 
 endchoice
 
+choice
+	prompt "CPU selection"
+	default CPU_MIPS32_R2
+
+config CPU_MIPS32_R1
+	bool "MIPS32 Release 1"
+	depends on SUPPORTS_CPU_MIPS32_R1
+	select 32BIT
+	help
+	  Choose this option to build an U-Boot for release 1 or later of the
+	  MIPS32 architecture.
+
+config CPU_MIPS32_R2
+	bool "MIPS32 Release 2"
+	depends on SUPPORTS_CPU_MIPS32_R2
+	select 32BIT
+	help
+	  Choose this option to build an U-Boot for release 2 or later of the
+	  MIPS32 architecture.
+
+config CPU_MIPS64_R1
+	bool "MIPS64 Release 1"
+	depends on SUPPORTS_CPU_MIPS64_R1
+	select 64BIT
+	help
+	  Choose this option to build a kernel for release 1 or later of the
+	  MIPS64 architecture.
+
+config CPU_MIPS64_R2
+	bool "MIPS64 Release 2"
+	depends on SUPPORTS_CPU_MIPS64_R2
+	select 64BIT
+	help
+	  Choose this option to build a kernel for release 2 or later of the
+	  MIPS64 architecture.
+
+endchoice
+
 config SUPPORTS_BIG_ENDIAN
 	bool
 
 config SUPPORTS_LITTLE_ENDIAN
 	bool
 
+config SUPPORTS_CPU_MIPS32_R1
+	bool
+
+config SUPPORTS_CPU_MIPS32_R2
+	bool
+
+config SUPPORTS_CPU_MIPS64_R1
+	bool
+
+config SUPPORTS_CPU_MIPS64_R2
+	bool
+
+config 32BIT
+	bool
+
+config 64BIT
+	bool
+
 endif
 
 endmenu
Signature · 1 line
2.1.1
#3 lore raw

PATCH 3/6 MIPS: kconfig: globally define CONFIG_SYS_CPU for MIPS

In reply to Daniel Schwierzeck

Now the user can select the CPU type for each target. Thus CONFIG_SYS_CPU could be set globally.

---

 arch/mips/Kconfig          | 4 ++++
 board/dbau1x00/Kconfig     | 3 ---
 board/imgtec/malta/Kconfig | 3 ---
 board/micronas/vct/Kconfig | 3 ---
 board/pb1x00/Kconfig       | 3 ---
 board/qemu-mips/Kconfig    | 3 ---
 6 files changed, 4 insertions(+), 15 deletions(-)
arch/mips/Kconfig +4 -0
index 21747b2..734133d 100644
@@ -4,6 +4,10 @@ menu "MIPS architecture"
 config SYS_ARCH
 	default "mips"
 
+config SYS_CPU
+	default "mips32" if CPU_MIPS32_R1 || CPU_MIPS32_R2
+	default "mips64" if CPU_MIPS64_R1 || CPU_MIPS64_R2
+
 config USE_PRIVATE_LIBGCC
 	default y
 
board/dbau1x00/Kconfig +0 -3
index 1a8946d..3e3cb77 100644
@@ -1,8 +1,5 @@
 if TARGET_DBAU1X00
 
-config SYS_CPU
-	default "mips32"
-
 config SYS_BOARD
 	default "dbau1x00"
 
board/imgtec/malta/Kconfig +0 -3
index 401962c..4c06d0c 100644
@@ -1,8 +1,5 @@
 if TARGET_MALTA
 
-config SYS_CPU
-	default "mips32"
-
 config SYS_BOARD
 	default "malta"
 
board/micronas/vct/Kconfig +0 -3
index 75046fe..7c69453 100644
@@ -1,8 +1,5 @@
 if TARGET_VCT
 
-config SYS_CPU
-	default "mips32"
-
 config SYS_BOARD
 	default "vct"
 
board/pb1x00/Kconfig +0 -3
index ef2844a..251db6a 100644
@@ -1,8 +1,5 @@
 if TARGET_PB1X00
 
-config SYS_CPU
-	default "mips32"
-
 config SYS_BOARD
 	default "pb1x00"
 
board/qemu-mips/Kconfig +0 -3
index e4d9663..394534f 100644
@@ -1,8 +1,5 @@
 if TARGET_QEMU_MIPS
 
-config SYS_CPU
-	default "mips32"
-
 config SYS_BOARD
 	default "qemu-mips"
 
Signature · 1 line
2.1.1
#4 lore raw

PATCH 4/6 MIPS: kconfig: merge targets qemu_mips and qemu_mips64

In reply to Daniel Schwierzeck

Now the user can separately select the CPU type. Thus the targets qemu_mips and qemu_mips64 can be merged to a single target.

---

 arch/mips/Kconfig               |  8 ++------
 board/qemu-mips/Kconfig         | 16 ++--------------
 configs/qemu_mips64_defconfig   |  3 ++-
 configs/qemu_mips64el_defconfig |  3 ++-
 configs/qemu_mips_defconfig     |  1 +
 configs/qemu_mipsel_defconfig   |  1 +
 6 files changed, 10 insertions(+), 22 deletions(-)
arch/mips/Kconfig +2 -6
index 734133d..080e12d 100644
@@ -20,6 +20,8 @@ config TARGET_QEMU_MIPS
 	select SUPPORTS_LITTLE_ENDIAN
 	select SUPPORTS_CPU_MIPS32_R1
 	select SUPPORTS_CPU_MIPS32_R2
+	select SUPPORTS_CPU_MIPS64_R1
+	select SUPPORTS_CPU_MIPS64_R2
 
 config TARGET_MALTA
 	bool "Support malta"
@@ -47,12 +49,6 @@ config TARGET_PB1X00
 	select SUPPORTS_CPU_MIPS32_R1
 	select SUPPORTS_CPU_MIPS32_R2
 
-config TARGET_QEMU_MIPS64
-	bool "Support qemu-mips64"
-	select SUPPORTS_BIG_ENDIAN
-	select SUPPORTS_LITTLE_ENDIAN
-	select SUPPORTS_CPU_MIPS64_R1
-	select SUPPORTS_CPU_MIPS64_R2
 
 endchoice
 
board/qemu-mips/Kconfig +2 -14
index 394534f..18d78b5 100644
@@ -4,19 +4,7 @@ config SYS_BOARD
 	default "qemu-mips"
 
 config SYS_CONFIG_NAME
-	default "qemu-mips"
-
-endif
-
-if TARGET_QEMU_MIPS64
-
-config SYS_CPU
-	default "mips64"
-
-config SYS_BOARD
-	default "qemu-mips"
-
-config SYS_CONFIG_NAME
-	default "qemu-mips64"
+	default "qemu-mips" if 32BIT
+	default "qemu-mips64" if 64BIT
 
 endif
configs/qemu_mips64_defconfig +2 -1
index 36897b9..a117fff 100644
@@ -1,3 +1,4 @@
 CONFIG_MIPS=y
-CONFIG_TARGET_QEMU_MIPS64=y
+CONFIG_TARGET_QEMU_MIPS=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_CPU_MIPS64_R2=y
configs/qemu_mips64el_defconfig +2 -1
index 70d226a..ac55c7e 100644
@@ -1,3 +1,4 @@
 CONFIG_MIPS=y
-CONFIG_TARGET_QEMU_MIPS64=y
+CONFIG_TARGET_QEMU_MIPS=y
 CONFIG_SYS_LITTLE_ENDIAN=y
+CONFIG_CPU_MIPS64_R2=y
configs/qemu_mips_defconfig +1 -0
index 0a385af..f58dd22 100644
@@ -1,3 +1,4 @@
 CONFIG_MIPS=y
 CONFIG_TARGET_QEMU_MIPS=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_CPU_MIPS32_R2=y
configs/qemu_mipsel_defconfig +1 -0
index d0acb28..84a4511 100644
@@ -1,3 +1,4 @@
 CONFIG_MIPS=y
 CONFIG_TARGET_QEMU_MIPS=y
 CONFIG_SYS_LITTLE_ENDIAN=y
+CONFIG_CPU_MIPS32_R2=y
Signature · 1 line
2.1.1
#5 lore raw

PATCH 5/6 MIPS: kconfig: add options for dbau1x00 board variant select

In reply to Daniel Schwierzeck

The dbau1x00 board can be built with various variants which are configured via CONFIG_SYS_EXTRA_OPTIONS. This is deprecated. Thus add new Kconfig options for those board variants.

---

 board/dbau1x00/Kconfig        | 18 ++++++++++++++++++
 configs/dbau1100_defconfig    |  2 +-
 configs/dbau1500_defconfig    |  2 +-
 configs/dbau1550_defconfig    |  2 +-
 configs/dbau1550_el_defconfig |  2 +-
 5 files changed, 22 insertions(+), 4 deletions(-)
board/dbau1x00/Kconfig +18 -0
index 3e3cb77..1286e45 100644
@@ -9,4 +9,22 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "dbau1x00"
 
+menu "dbau1x00 board options"
+
+choice
+	prompt "Select au1x00 SoC type"
+
+config DBAU1100
+	bool "Select AU1100"
+
+config DBAU1500
+	bool "Select AU1500"
+
+config DBAU1550
+	bool "Select AU1550"
+
+endchoice
+
+endmenu
+
 endif
configs/dbau1100_defconfig +1 -1
index db6f98e..aac9f03 100644
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="DBAU1100"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_DBAU1100=y
configs/dbau1500_defconfig +1 -1
index d2fbff9..d96de13 100644
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="DBAU1500"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_DBAU1500=y
configs/dbau1550_defconfig +1 -1
index 3142391..a2dfe18 100644
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="DBAU1550"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_DBAU1550=y
configs/dbau1550_el_defconfig +1 -1
index 514f227..767326f 100644
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="DBAU1550"
 CONFIG_MIPS=y
 CONFIG_TARGET_DBAU1X00=y
 CONFIG_SYS_LITTLE_ENDIAN=y
+CONFIG_DBAU1550=y
Signature · 1 line
2.1.1
#6 lore raw

PATCH 6/6 MIPS: kconfig: add options for vct board variant select

In reply to Daniel Schwierzeck

The vct board can be built with various variants which are configured via CONFIG_SYS_EXTRA_OPTIONS. This is deprecated. Thus add new Kconfig options for those board variants.

---

 board/micronas/vct/Kconfig                      | 24 ++++++++++++++++++++++++
 configs/vct_platinum_defconfig                  |  2 +-
 configs/vct_platinum_onenand_defconfig          |  3 ++-
 configs/vct_platinum_onenand_small_defconfig    |  4 +++-
 configs/vct_platinum_small_defconfig            |  3 ++-
 configs/vct_platinumavc_defconfig               |  2 +-
 configs/vct_platinumavc_onenand_defconfig       |  3 ++-
 configs/vct_platinumavc_onenand_small_defconfig |  4 +++-
 configs/vct_platinumavc_small_defconfig         |  3 ++-
 configs/vct_premium_defconfig                   |  2 +-
 configs/vct_premium_onenand_defconfig           |  3 ++-
 configs/vct_premium_onenand_small_defconfig     |  4 +++-
 configs/vct_premium_small_defconfig             |  3 ++-
 13 files changed, 48 insertions(+), 12 deletions(-)
board/micronas/vct/Kconfig +24 -0
index 7c69453..288a1ae 100644
@@ -9,4 +9,28 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "vct"
 
+menu "vct board options"
+
+choice
+	prompt "Board variant"
+
+config VCT_PLATINUM
+	bool "Enable VCT_PLATINUM"
+
+config VCT_PLATINUMAVC
+	bool "Enable VCT_PLATINUMAVC"
+
+config VCT_PREMIUM
+	bool "Enable VCT_PLATINUMAVC"
+
+endchoice
+
+config VCT_ONENAND
+	bool "Enable VCT_ONENAND"
+
+config VCT_SMALL_IMAGE
+	bool "Enable VCT_SMALL_IMAGE"
+
+endmenu
+
 endif
configs/vct_platinum_defconfig +1 -1
index 85584e3..32e9e8c 100644
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUM=y
configs/vct_platinum_onenand_defconfig +2 -1
index 0ba7ae6..4346518 100644
@@ -1,4 +1,5 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUM=y
+CONFIG_VCT_ONENAND=y
configs/vct_platinum_onenand_small_defconfig +3 -1
index d70a979..fd52282 100644
@@ -1,5 +1,7 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUM=y
+CONFIG_VCT_ONENAND=y
+CONFIG_VCT_SMALL_IMAGE=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_platinum_small_defconfig +2 -1
index ab5c2e1..58f956d 100644
@@ -1,5 +1,6 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUM=y
+CONFIG_VCT_SMALL_IMAGE=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_platinumavc_defconfig +1 -1
index 691325d..732565c 100644
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUMAVC=y
configs/vct_platinumavc_onenand_defconfig +2 -1
index 1e0c399..670e7f9 100644
@@ -1,4 +1,5 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUMAVC=y
+CONFIG_VCT_ONENAND=y
configs/vct_platinumavc_onenand_small_defconfig +3 -1
index f254ab6..31a4948 100644
@@ -1,5 +1,7 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUMAVC=y
+CONFIG_VCT_ONENAND=y
+CONFIG_VCT_SMALL_IMAGE=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_platinumavc_small_defconfig +2 -1
index 83670ed..ce00a6c 100644
@@ -1,5 +1,6 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PLATINUMAVC=y
+CONFIG_VCT_SMALL_IMAGE=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_premium_defconfig +1 -1
index 24bf87e..a19e65d 100644
@@ -1,4 +1,4 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PREMIUM=y
configs/vct_premium_onenand_defconfig +2 -1
index 0039ec1..092d0f7 100644
@@ -1,4 +1,5 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PREMIUM=y
+CONFIG_VCT_ONENAND=y
configs/vct_premium_onenand_small_defconfig +3 -1
index 8fc6ac1..eabfb88 100644
@@ -1,5 +1,7 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PREMIUM=y
+CONFIG_VCT_ONENAND=y
+CONFIG_VCT_SMALL_IMAGE=y
 # CONFIG_CMD_CRC32 is not set
configs/vct_premium_small_defconfig +2 -1
index 96bb0ee..1ce0efd 100644
@@ -1,5 +1,6 @@
-CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_SMALL_IMAGE"
 CONFIG_MIPS=y
 CONFIG_TARGET_VCT=y
 CONFIG_SYS_BIG_ENDIAN=y
+CONFIG_VCT_PREMIUM=y
+CONFIG_VCT_SMALL_IMAGE=y
 # CONFIG_CMD_CRC32 is not set
Signature · 1 line
2.1.1
#7 lore raw

cover MIPS Kconfig updates

In reply to Daniel Schwierzeck

Hi Daniel,

Quoted 10 lines · Daniel Schwierzeck

This patch series introduce Kconfig symbols for various MIPS specific config options. It also add Kconfig symbols for board specific config options on vct and dbau1x00. With this series the option CONFIG_SYS_EXTRA_OPTIONS becomes obsolete for existing MIPS boards.

This series is also available at
git://git.denx.de/u-boot-mips.git mips_kconfig_v1

Quoted 7 lines

Daniel Schwierzeck (6):
MIPS: kconfig: add options for endianess select
MIPS: kconfig: add options for CPU type select
MIPS: kconfig: globally define CONFIG_SYS_CPU for MIPS
MIPS: kconfig: merge targets qemu_mips and qemu_mips64
MIPS: kconfig: add options for dbau1x00 board variant select
MIPS: kconfig: add options for vct board variant select

Thanks for working on this. Please add my:

to all VCT related patches.

Thanks,
Stefan