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.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
This commit is contained in:
Daniel Schwierzeck 2014-10-26 14:14:07 +01:00
parent 571bdf16a7
commit 0e1dc3456f
26 changed files with 63 additions and 9 deletions

View File

@ -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_LITTLE_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

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="DBAU1000"
CONFIG_MIPS=y
CONFIG_TARGET_DBAU1X00=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="DBAU1100"
CONFIG_MIPS=y
CONFIG_TARGET_DBAU1X00=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="DBAU1500"
CONFIG_MIPS=y
CONFIG_TARGET_DBAU1X00=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="DBAU1550"
CONFIG_MIPS=y
CONFIG_TARGET_DBAU1X00=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -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

View File

@ -1,3 +1,3 @@
CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN"
CONFIG_MIPS=y
CONFIG_TARGET_MALTA=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,3 @@
CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN"
CONFIG_MIPS=y
CONFIG_TARGET_MALTA=y
CONFIG_SYS_LITTLE_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="PB1000"
CONFIG_MIPS=y
CONFIG_TARGET_PB1X00=y
CONFIG_SYS_LITTLE_ENDIAN=y

View File

@ -1,3 +1,3 @@
CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN"
CONFIG_MIPS=y
CONFIG_TARGET_QEMU_MIPS64=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,3 @@
CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN"
CONFIG_MIPS=y
CONFIG_TARGET_QEMU_MIPS64=y
CONFIG_SYS_LITTLE_ENDIAN=y

View File

@ -1,3 +1,3 @@
CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN"
CONFIG_MIPS=y
CONFIG_TARGET_QEMU_MIPS=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,3 @@
CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN"
CONFIG_MIPS=y
CONFIG_TARGET_QEMU_MIPS=y
CONFIG_SYS_LITTLE_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM"
CONFIG_MIPS=y
CONFIG_TARGET_VCT=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND"
CONFIG_MIPS=y
CONFIG_TARGET_VCT=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -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

View File

@ -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

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC"
CONFIG_MIPS=y
CONFIG_TARGET_VCT=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND"
CONFIG_MIPS=y
CONFIG_TARGET_VCT=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -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

View File

@ -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

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM"
CONFIG_MIPS=y
CONFIG_TARGET_VCT=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -1,3 +1,4 @@
CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND"
CONFIG_MIPS=y
CONFIG_TARGET_VCT=y
CONFIG_SYS_BIG_ENDIAN=y

View File

@ -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

View File

@ -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

View File

@ -29,8 +29,6 @@
#endif
#endif
#define CONFIG_SYS_LITTLE_ENDIAN
#define CONFIG_ETHADDR DE:AD:BE:EF:01:01 /* Ethernet address */
#define CONFIG_BOOTDELAY 2 /* autoboot after 2 seconds */