diff options
author | Stefano Babic <sbabic@denx.de> | 2014-08-11 10:21:03 +0200 |
---|---|---|
committer | Stefano Babic <sbabic@denx.de> | 2014-08-11 10:21:03 +0200 |
commit | e82abaeb7f2a0833fccf90460c48b9f2100258f8 (patch) | |
tree | de701f5c90b7373966412d566b5c00d3837954bc | |
parent | f93f21906e374d46c6abfbdf4eb9cb1ab51b6384 (diff) | |
parent | 1899fac925eda817e12234aef3d01d354788662e (diff) | |
download | u-boot-imx-e82abaeb7f2a0833fccf90460c48b9f2100258f8.zip u-boot-imx-e82abaeb7f2a0833fccf90460c48b9f2100258f8.tar.gz u-boot-imx-e82abaeb7f2a0833fccf90460c48b9f2100258f8.tar.bz2 |
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts:
boards.cfg
Signed-off-by: Stefano Babic <sbabic@denx.de>
2625 files changed, 50912 insertions, 2924 deletions
@@ -34,6 +34,7 @@ /SPL /System.map /u-boot* +/boards.cfg # # git files that we don't want to ignore even it they are dot-files @@ -53,8 +54,6 @@ # /include/config/ /include/generated/ -/include/spl-autoconf.mk -/include/tpl-autoconf.mk # stgit generated dirs patches-* @@ -0,0 +1,65 @@ +# +# For a description of the syntax of this configuration file, +# see Documentation/kbuild/kconfig-language.txt. +# +mainmenu "U-Boot $UBOOTVERSION Configuration" + +config UBOOTVERSION + string + option env="UBOOTVERSION" + +config KCONFIG_OBJDIR + string + option env="KCONFIG_OBJDIR" + +config DEFCONFIG_LIST + string + depends on !SPL_BUILD + option defconfig_list + default "configs/sandbox_defconfig" + +menu "General setup" + +config SPL_BUILD + bool + depends on $KCONFIG_OBJDIR="spl" || $KCONFIG_OBJDIR="tpl" + default y + +config TPL_BUILD + bool + depends on $KCONFIG_OBJDIR="tpl" + default y + +config SPL + bool + prompt "Enable SPL" if !SPL_BUILD + default y if SPL_BUILD + help + If you want to build SPL as well as the normal image, say Y. + +config TPL + bool + depends on SPL + prompt "Enable TPL" if !SPL_BUILD + default y if TPL_BUILD + default n + help + If you want to build TPL as well as the normal image and SPL, say Y. + +config SYS_EXTRA_OPTIONS + string "Extra Options (DEPRECATED)" + depends on !SPL_BUILD + help + The old configuration infrastructure (= mkconfig + boards.cfg) + provided the extra options field. It you have something like + "HAS_BAR,BAZ=64", the optional options + #define CONFIG_HAS + #define CONFIG_BAZ 64 + will be defined in include/config.h. + This option was prepared for the smooth migration from the old + configuration to Kconfig. Since this option will be removed sometime, + new boards should not use this option. + +endmenu # General setup + +source "arch/Kconfig" @@ -162,9 +162,23 @@ while true ; do echo "Internal error!" >&2 ; exit 1 ;; esac done + +GNU_MAKE=$(scripts/show-gnu-make) || { + echo "GNU Make not found" >&2 + exit 1 +} + # echo "Remaining arguments:" # for arg do echo '--> '"\`$arg'" ; done +if [ ! -r boards.cfg ]; then + echo "Could not find boards.cfg" + tools/genboardscfg.py || { + echo "Failed to generate boards.cfg" >&2 + exit 1 + } +fi + FILTER="\$1 !~ /^#/" [ "$opt_a" ] && FILTER="${FILTER} && $opt_a" [ "$opt_c" ] && FILTER="${FILTER} && $opt_c" @@ -506,9 +520,9 @@ get_target_location() { set ${line} - CONFIG_NAME="${7%_config}" + CONFIG_NAME="${7%_defconfig}" - [ "${BOARD_NAME}" ] || BOARD_NAME="${7%_config}" + [ "${BOARD_NAME}" ] || BOARD_NAME="${7%_defconfig}" if [ $# -gt 5 ]; then if [ "$6" = "-" ] ; then @@ -633,11 +647,11 @@ build_target() { target_arch=$(get_target_arch ${target}) eval cross_toolchain=\$CROSS_COMPILE_`echo $target_arch | tr '[:lower:]' '[:upper:]'` if [ "${cross_toolchain}" ] ; then - MAKE="make CROSS_COMPILE=${cross_toolchain}" + MAKE="$GNU_MAKE CROSS_COMPILE=${cross_toolchain}" elif [ "${CROSS_COMPILE}" ] ; then - MAKE="make CROSS_COMPILE=${CROSS_COMPILE}" + MAKE="$GNU_MAKE CROSS_COMPILE=${CROSS_COMPILE}" else - MAKE=make + MAKE=$GNU_MAKE fi if [ "${output_dir}" != "." ] ; then @@ -645,7 +659,9 @@ build_target() { fi ${MAKE} distclean >/dev/null - ${MAKE} -s ${target}_config + + echo "Building ${target} board..." + ${MAKE} -s ${target}_defconfig >/dev/null ${MAKE} ${JOBS} ${CHECK} all \ >${LOG_DIR}/$target.MAKELOG 2> ${LOG_DIR}/$target.ERR @@ -6,9 +6,9 @@ # VERSION = 2014 -PATCHLEVEL = 07 +PATCHLEVEL = 10 SUBLEVEL = -EXTRAVERSION = +EXTRAVERSION = -rc1 NAME = # *DOCUMENTATION* @@ -166,9 +166,6 @@ VPATH := $(srctree)$(if $(KBUILD_EXTMOD),:$(KBUILD_EXTMOD)) export srctree objtree VPATH -MKCONFIG := $(srctree)/mkconfig -export MKCONFIG - # Make sure CDPATH settings don't interfere unexport CDPATH @@ -189,9 +186,6 @@ HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \ export HOSTARCH HOSTOS -# Deal with colliding definitions from tcsh etc. -VENDOR= - ######################################################################### # set default to nothing for native builds @@ -199,6 +193,9 @@ ifeq ($(HOSTARCH),$(ARCH)) CROSS_COMPILE ?= endif +KCONFIG_CONFIG ?= .config +export KCONFIG_CONFIG + # SHELL used by kbuild CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ else if [ -x /bin/bash ]; then echo /bin/bash; \ @@ -341,6 +338,7 @@ OBJCOPY = $(CROSS_COMPILE)objcopy OBJDUMP = $(CROSS_COMPILE)objdump AWK = awk PERL = perl +PYTHON = python DTC = dtc CHECK = sparse @@ -362,7 +360,7 @@ export VERSION PATCHLEVEL SUBLEVEL UBOOTRELEASE UBOOTVERSION export ARCH CPU BOARD VENDOR SOC CPUDIR BOARDDIR export CONFIG_SHELL HOSTCC HOSTCFLAGS HOSTLDFLAGS CROSS_COMPILE AS LD CC export CPP AR NM LDR STRIP OBJCOPY OBJDUMP -export MAKE AWK PERL +export MAKE AWK PERL PYTHON export HOSTCXX HOSTCXXFLAGS DTC CHECK CHECKFLAGS export KBUILD_CPPFLAGS NOSTDINC_FLAGS UBOOTINCLUDE OBJCOPYFLAGS LDFLAGS @@ -460,31 +458,49 @@ ifeq ($(config-targets),1) # *config targets only - make sure prerequisites are updated, and descend # in scripts/kconfig to make the *config target -# Read arch specific Makefile to set KBUILD_DEFCONFIG as needed. -# KBUILD_DEFCONFIG may point out an alternative default configuration -# used for 'make defconfig' +KBUILD_DEFCONFIG := sandbox_defconfig +export KBUILD_DEFCONFIG KBUILD_KCONFIG -%_config:: outputmakefile - @$(MKCONFIG) -A $(@:_config=) +config: scripts_basic outputmakefile FORCE + +$(Q)$(PYTHON) $(srctree)/scripts/multiconfig.py $@ + +%config: scripts_basic outputmakefile FORCE + +$(Q)$(PYTHON) $(srctree)/scripts/multiconfig.py $@ else # =========================================================================== # Build targets only - this includes vmlinux, arch specific targets, clean # targets and others. In general all targets except *config targets. -# load ARCH, BOARD, and CPU configuration --include include/config.mk - ifeq ($(dot-config),1) # Read in config +-include include/config/auto.conf + +# Read in dependencies to all Kconfig* files, make sure to run +# oldconfig if changes are detected. +-include include/config/auto.conf.cmd + +# To avoid any implicit rule to kick in, define an empty command +$(KCONFIG_CONFIG) include/config/auto.conf.cmd: ; + +# If .config is newer than include/config/auto.conf, someone tinkered +# with it and forgot to run make oldconfig. +# if auto.conf.cmd is missing then we are probably in a cleaned tree so +# we execute the config step to be sure to catch updated Kconfig files +include/config/%.conf: $(KCONFIG_CONFIG) include/config/auto.conf.cmd + $(Q)$(MAKE) -f $(srctree)/Makefile silentoldconfig + -include include/autoconf.mk -include include/autoconf.mk.dep -# load other configuration +# We want to include arch/$(ARCH)/config.mk only when include/config/auto.conf +# is up-to-date. When we switch to a different board configuration, old CONFIG +# macros are still remaining in include/config/auto.conf. Without the following +# gimmick, wrong config.mk would be included leading nasty warnings/errors. +autoconf_is_current := $(if $(wildcard $(KCONFIG_CONFIG)),$(shell find . \ + -path ./include/config/auto.conf -newer $(KCONFIG_CONFIG))) +ifneq ($(autoconf_is_current),) include $(srctree)/config.mk - -ifeq ($(wildcard include/config.mk),) -$(error "System not configured - see README") endif # If board code explicitly specified LDSCRIPT or CONFIG_SYS_LDSCRIPT, use @@ -513,8 +529,8 @@ ifndef LDSCRIPT endif else - - +# Dummy target needed, because used as prerequisite +include/config/auto.conf: ; endif # $(dot-config) KBUILD_CFLAGS += -Os #-fomit-frame-pointer @@ -563,7 +579,8 @@ KBUILD_CFLAGS += $(KCFLAGS) UBOOTINCLUDE := \ -Iinclude \ $(if $(KBUILD_SRC), -I$(srctree)/include) \ - -I$(srctree)/arch/$(ARCH)/include + -I$(srctree)/arch/$(ARCH)/include \ + -include $(srctree)/include/linux/kconfig.h NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include) CHECKFLAGS += $(NOSTDINC_FLAGS) @@ -1024,7 +1041,7 @@ define filechk_uboot.release endef # Store (new) UBOOTRELEASE string in include/config/uboot.release -include/config/uboot.release: Makefile FORCE +include/config/uboot.release: include/config/auto.conf FORCE $(call filechk,uboot.release) @@ -1042,8 +1059,8 @@ PHONY += prepare archprepare prepare0 prepare1 prepare2 prepare3 # 1) Check that make has not been executed in the kernel src $(srctree) prepare3: include/config/uboot.release ifneq ($(KBUILD_SRC),) - @$(kecho) ' Using $(srctree) as source for u-boot' - $(Q)if [ -f $(srctree)/include/config.mk ]; then \ + @$(kecho) ' Using $(srctree) as source for U-Boot' + $(Q)if [ -f $(srctree)/.config -o -d $(srctree)/include/config ]; then \ echo >&2 " $(srctree) is not clean, please run 'make mrproper'"; \ echo >&2 " in the '$(srctree)' directory.";\ /bin/false; \ @@ -1053,7 +1070,8 @@ endif # prepare2 creates a makefile if using a separate output directory prepare2: prepare3 outputmakefile -prepare1: prepare2 $(version_h) $(timestamp_h) +prepare1: prepare2 $(version_h) $(timestamp_h) \ + include/config/auto.conf ifeq ($(__HAVE_ARCH_GENERIC_BOARD),) ifeq ($(CONFIG_SYS_GENERIC_BOARD),y) @echo >&2 " Your architecture does not support generic board." @@ -1095,29 +1113,6 @@ $(version_h): include/config/uboot.release FORCE $(timestamp_h): $(srctree)/Makefile FORCE $(call filechk,timestamp.h) -# -# Auto-generate the autoconf.mk file (which is included by all makefiles) -# -# This target actually generates 2 files; autoconf.mk and autoconf.mk.dep. -# the dep file is only include in this top level makefile to determine when -# to regenerate the autoconf.mk file. - -quiet_cmd_autoconf_dep = GEN $@ - cmd_autoconf_dep = $(CC) -x c -DDO_DEPS_ONLY -M $(c_flags) \ - -MQ include/autoconf.mk $(srctree)/include/common.h > $@ || rm $@ - -include/autoconf.mk.dep: include/config.h include/common.h - $(call cmd,autoconf_dep) - -quiet_cmd_autoconf = GEN $@ - cmd_autoconf = \ - $(CPP) $(c_flags) -DDO_DEPS_ONLY -dM $(srctree)/include/common.h > $@.tmp && \ - sed -n -f $(srctree)/tools/scripts/define2mk.sed $@.tmp > $@; \ - rm $@.tmp - -include/autoconf.mk: include/config.h - $(call cmd,autoconf) - # --------------------------------------------------------------------------- PHONY += depend dep @@ -1141,7 +1136,7 @@ spl/sunxi-spl.bin: spl/u-boot-spl @: tpl/u-boot-tpl.bin: tools prepare - $(Q)$(MAKE) obj=tpl -f $(srctree)/scripts/Makefile.spl all CONFIG_TPL_BUILD=y + $(Q)$(MAKE) obj=tpl -f $(srctree)/scripts/Makefile.spl all TAG_SUBDIRS := $(patsubst %,$(srctree)/%,$(u-boot-dirs) include) @@ -1216,20 +1211,18 @@ include/license.h: tools/bin2header COPYING # Directories & files removed with 'make clean' CLEAN_DIRS += $(MODVERDIR) -CLEAN_FILES += u-boot.lds include/bmp_logo.h include/bmp_logo_data.h \ - include/autoconf.mk* include/spl-autoconf.mk \ - include/tpl-autoconf.mk +CLEAN_FILES += u-boot.lds include/bmp_logo.h include/bmp_logo_data.h # Directories & files removed with 'make clobber' -CLOBBER_DIRS += spl tpl +CLOBBER_DIRS += $(foreach d, spl tpl, $(patsubst %,$d/%, \ + $(filter-out include, $(shell ls -1 $d 2>/dev/null)))) CLOBBER_FILES += u-boot* MLO* SPL System.map # Directories & files removed with 'make mrproper' -MRPROPER_DIRS += include/config include/generated \ +MRPROPER_DIRS += include/config include/generated spl tpl \ .tmp_objdiff -MRPROPER_FILES += .config .config.old \ - ctags etags cscope* GPATH GTAGS GRTAGS GSYMS \ - include/config.h include/config.mk +MRPROPER_FILES += .config .config.old include/autoconf.mk* include/config.h \ + ctags etags TAGS cscope* GPATH GTAGS GRTAGS GSYMS # clean - Delete most, but leave enough to build external modules # @@ -1306,10 +1299,9 @@ help: @echo ' mrproper - Remove all generated files + config + various backup files' @echo ' distclean - mrproper + remove editor backup and patch files' @echo '' -# uncomment after adding Kconfig feature -# @echo 'Configuration targets:' -# @$(MAKE) -f $(srctree)/scripts/kconfig/Makefile help -# @echo '' + @echo 'Configuration targets:' + @$(MAKE) -f $(srctree)/scripts/kconfig/Makefile help + @echo '' @echo 'Other generic targets:' @echo ' all - Build all necessary images depending on configuration' @echo ' u-boot - Build the bare u-boot' @@ -252,15 +252,15 @@ Selection of Processor Architecture and Board Type: --------------------------------------------------- For all supported boards there are ready-to-use default -configurations available; just type "make <board_name>_config". +configurations available; just type "make <board_name>_defconfig". Example: For a TQM823L module type: cd u-boot - make TQM823L_config + make TQM823L_defconfig For the Cogent platform, you need to specify the CPU type as well; -e.g. "make cogent_mpc8xx_config". And also configure the cogent +e.g. "make cogent_mpc8xx_defconfig". And also configure the cogent directory according to the instructions in cogent/README. @@ -2601,6 +2601,10 @@ CBFS (Coreboot Filesystem) support Enables the driver for the SPI controllers on i.MX and MXC SoCs. Currently i.MX31/35/51 are supported. + CONFIG_SYS_SPI_MXC_WAIT + Timeout for waiting until spi transfer completed. + default: (CONFIG_SYS_HZ/100) /* 10 ms */ + - FPGA Support: CONFIG_FPGA Enables FPGA subsystem. @@ -3767,6 +3771,9 @@ Configuration Settings: Pre-relocation malloc() is only supported on sandbox at present but is fairly easy to enable for other archs. + Pre-relocation malloc() is only supported on ARM at present + but is fairly easy to enable for other archs. + - CONFIG_SYS_BOOTM_LEN: Normally compressed uImages are limited to an uncompressed size of 8 MBytes. If this is not enough, @@ -4855,9 +4862,9 @@ U-Boot is intended to be simple to build. After installing the sources you must configure U-Boot for one specific board type. This is done by typing: - make NAME_config + make NAME_defconfig -where "NAME_config" is the name of one of the existing configu- +where "NAME_defconfig" is the name of one of the existing configu- rations; see boards.cfg for supported names. Note: for some board special configuration names may exist; check if @@ -4866,10 +4873,10 @@ Note: for some board special configuration names may exist; check if or with LCD support. You can select such additional "features" when choosing the configuration, i. e. - make TQM823L_config + make TQM823L_defconfig - will configure for a plain TQM823L, i. e. no LCD support - make TQM823L_LCD_config + make TQM823L_LCD_defconfig - will configure for a TQM823L with U-Boot console on LCD etc. @@ -4889,14 +4896,14 @@ this behavior and build U-Boot to some external directory: 1. Add O= to the make command line invocations: make O=/tmp/build distclean - make O=/tmp/build NAME_config + make O=/tmp/build NAME_defconfig make O=/tmp/build all 2. Set environment variable BUILD_DIR to point to the desired location: export BUILD_DIR=/tmp/build make distclean - make NAME_config + make NAME_defconfig make all Note that the command line "O=" setting overrides the BUILD_DIR environment @@ -4922,7 +4929,7 @@ steps: your board 3. If you're porting U-Boot to a new CPU, then also create a new directory to hold your CPU specific code. Add any files you need. -4. Run "make <board>_config" with your new name. +4. Run "make <board>_defconfig" with your new name. 5. Type "make", and you should get a working "u-boot.srec" file to be installed on your target system. 6. Debug and solve any problems that might arise. @@ -5502,7 +5509,7 @@ which was introduced for our predecessor project PPCBoot and uses a Example: - make TQM850L_config + make TQM850L_defconfig make oldconfig make dep make uImage diff --git a/arch/Kconfig b/arch/Kconfig new file mode 100644 index 0000000..8620a4f --- /dev/null +++ b/arch/Kconfig @@ -0,0 +1,66 @@ +choice + prompt "Architecture select" + default SANDBOX + +config ARC + bool "ARC architecture" + +config ARM + bool "ARM architecture" + +config AVR32 + bool "AVR32 architecture" + +config BLACKFIN + bool "Blackfin architecture" + +config M68K + bool "M68000 architecture" + +config MICROBLAZE + bool "MicroBlaze architecture" + +config MIPS + bool "MIPS architecture" + +config NDS32 + bool "NDS32 architecture" + +config NIOS2 + bool "Nios II architecture" + +config OPENRISC + bool "OpenRISC architecture" + +config PPC + bool "PowerPC architecture" + +config SANDBOX + bool "Sandbox" + +config SH + bool "SuperH architecture" + +config SPARC + bool "SPARC architecture" + +config X86 + bool "x86 architecture" + +endchoice + +source "arch/arc/Kconfig" +source "arch/arm/Kconfig" +source "arch/avr32/Kconfig" +source "arch/blackfin/Kconfig" +source "arch/m68k/Kconfig" +source "arch/microblaze/Kconfig" +source "arch/mips/Kconfig" +source "arch/nds32/Kconfig" +source "arch/nios2/Kconfig" +source "arch/openrisc/Kconfig" +source "arch/powerpc/Kconfig" +source "arch/sandbox/Kconfig" +source "arch/sh/Kconfig" +source "arch/sparc/Kconfig" +source "arch/x86/Kconfig" diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig new file mode 100644 index 0000000..51d5aff --- /dev/null +++ b/arch/arc/Kconfig @@ -0,0 +1,29 @@ +menu "ARC architecture" + depends on ARC + +config SYS_ARCH + string + default "arc" + +choice + prompt "Target select" + +config TARGET_TB100 + bool "Support tb100" + +config TARGET_ARCANGEL4 + bool "Support arcangel4" + +config TARGET_ARCANGEL4_BE + bool "Support arcangel4-be" + +config TARGET_AXS101 + bool "Support axs101" + +endchoice + +source "board/abilis/tb100/Kconfig" +source "board/synopsys/Kconfig" +source "board/synopsys/axs101/Kconfig" + +endmenu diff --git a/arch/arc/config.mk b/arch/arc/config.mk index a3b8df7..e408800 100644 --- a/arch/arc/config.mk +++ b/arch/arc/config.mk @@ -21,7 +21,7 @@ ifeq ($(CROSS_COMPILE),) CROSS_COMPILE := $(ARC_CROSS_COMPILE) endif -PLATFORM_CPPFLAGS += -ffixed-r25 -D__ARC__ -DCONFIG_ARC -gdwarf-2 +PLATFORM_CPPFLAGS += -ffixed-r25 -D__ARC__ -gdwarf-2 # Needed for relocation LDFLAGS_FINAL += -pie diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig new file mode 100644 index 0000000..e385eda --- /dev/null +++ b/arch/arm/Kconfig @@ -0,0 +1,1002 @@ +menu "ARM architecture" + depends on ARM + +config SYS_ARCH + string + default "arm" + +choice + prompt "Target select" + +config TARGET_INTEGRATORAP_CM720T + bool "Support integratorap_cm720t" + +config TARGET_INTEGRATORAP_CM920T + bool "Support integratorap_cm920t" + +config TARGET_INTEGRATORCP_CM920T + bool "Support integratorcp_cm920t" + +config TARGET_A320EVB + bool "Support a320evb" + +config TARGET_AT91RM9200EK + bool "Support at91rm9200ek" + +config TARGET_EB_CPUX9K2 + bool "Support eb_cpux9k2" + +config TARGET_CPUAT91 + bool "Support cpuat91" + +config TARGET_EDB93XX + bool "Support edb93xx" + +config TARGET_SCB9328 + bool "Support scb9328" + +config TARGET_CM4008 + bool "Support cm4008" + +config TARGET_CM41XX + bool "Support cm41xx" + +config TARGET_VCMA9 + bool "Support VCMA9" + +config TARGET_SMDK2410 + bool "Support smdk2410" + +config TARGET_INTEGRATORAP_CM926EJS + bool "Support integratorap_cm926ejs" + +config TARGET_INTEGRATORCP_CM926EJS + bool "Support integratorcp_cm926ejs" + +config TARGET_ASPENITE + bool "Support aspenite" + +config TARGET_GPLUGD + bool "Support gplugd" + +config TARGET_AFEB9260 + bool "Support afeb9260" + +config TARGET_AT91SAM9260EK + bool "Support at91sam9260ek" + +config TARGET_AT91SAM9261EK + bool "Support at91sam9261ek" + +config TARGET_AT91SAM9263EK + bool "Support at91sam9263ek" + +config TARGET_AT91SAM9M10G45EK + bool "Support at91sam9m10g45ek" + +config TARGET_AT91SAM9N12EK + bool "Support at91sam9n12ek" + +config TARGET_AT91SAM9RLEK + bool "Support at91sam9rlek" + +config TARGET_AT91SAM9X5EK + bool "Support at91sam9x5ek" + +config TARGET_SNAPPER9260 + bool "Support snapper9260" + +config TARGET_VL_MA2SC + bool "Support vl_ma2sc" + +config TARGET_SBC35_A9G20 + bool "Support sbc35_a9g20" + +config TARGET_TNY_A9260 + bool "Support tny_a9260" + +config TARGET_USB_A9263 + bool "Support usb_a9263" + +config TARGET_ETHERNUT5 + bool "Support ethernut5" + +config TARGET_TOP9000 + bool "Support top9000" + +config TARGET_MEESC + bool "Support meesc" + +config TARGET_OTC570 + bool "Support otc570" + +config TARGET_CPU9260 + bool "Support cpu9260" + +config TARGET_PM9261 + bool "Support pm9261" + +config TARGET_PM9263 + bool "Support pm9263" + +config TARGET_PM9G45 + bool "Support pm9g45" + +config TARGET_CORVUS + bool "Support corvus" + +config TARGET_TAURUS + bool "Support taurus" + +config TARGET_STAMP9G20 + bool "Support stamp9g20" + +config TARGET_CAM_ENC_4XX + bool "Support cam_enc_4xx" + +config TARGET_IPAM390 + bool "Support ipam390" + +config TARGET_DA830EVM + bool "Support da830evm" + +config TARGET_DA850EVM + bool "Support da850evm" + +config TARGET_HAWKBOARD + bool "Support hawkboard" + +config TARGET_DAVINCI_DM355EVM + bool "Support davinci_dm355evm" + +config TARGET_DAVINCI_DM355LEOPARD + bool "Support davinci_dm355leopard" + +config TARGET_DAVINCI_DM365EVM + bool "Support davinci_dm365evm" + +config TARGET_DAVINCI_DM6467EVM + bool "Support davinci_dm6467evm" + +config TARGET_DAVINCI_DVEVM + bool "Support davinci_dvevm" + +config TARGET_EA20 + bool "Support ea20" + +config TARGET_DAVINCI_SCHMOOGIE + bool "Support davinci_schmoogie" + +config TARGET_DAVINCI_SFFSDR + bool "Support davinci_sffsdr" + +config TARGET_DAVINCI_SONATA + bool "Support davinci_sonata" + +config TARGET_ENBW_CMC + bool "Support enbw_cmc" + +config TARGET_CALIMAIN + bool "Support calimain" + +config TARGET_LSXL + bool "Support lsxl" + +config TARGET_POGO_E02 + bool "Support pogo_e02" + +config TARGET_DNS325 + bool "Support dns325" + +config TARGET_ICONNECT + bool "Support iconnect" + +config TARGET_TK71 + bool "Support tk71" + +config TARGET_KM_KIRKWOOD + bool "Support km_kirkwood" + +config TARGET_NET2BIG_V2 + bool "Support net2big_v2" + +config TARGET_NETSPACE_V2 + bool "Support netspace_v2" + +config TARGET_WIRELESS_SPACE + bool "Support wireless_space" + +config TARGET_DREAMPLUG + bool "Support dreamplug" + +config TARGET_GURUPLUG + bool "Support guruplug" + +config TARGET_MV88F6281GTW_GE + bool "Support mv88f6281gtw_ge" + +config TARGET_OPENRD + bool "Support openrd" + +config TARGET_RD6281A + bool "Support rd6281a" + +config TARGET_SHEEVAPLUG + bool "Support sheevaplug" + +config TARGET_IB62X0 + bool "Support ib62x0" + +config TARGET_DOCKSTAR + bool "Support dockstar" + +config TARGET_GOFLEXHOME + bool "Support goflexhome" + +config TARGET_DEVKIT3250 + bool "Support devkit3250" + +config TARGET_JADECPU + bool "Support jadecpu" + +config TARGET_MX25PDK + bool "Support mx25pdk" + +config TARGET_TX25 + bool "Support tx25" + +config TARGET_ZMX25 + bool "Support zmx25" + +config TARGET_APF27 + bool "Support apf27" + +config TARGET_IMX27LITE + bool "Support imx27lite" + +config TARGET_MAGNESIUM + bool "Support magnesium" + +config TARGET_APX4DEVKIT + bool "Support apx4devkit" + +config TARGET_XFI3 + bool "Support xfi3" + +config TARGET_M28EVK + bool "Support m28evk" + +config TARGET_MX23EVK + bool "Support mx23evk" + +config TARGET_MX28EVK + bool "Support mx28evk" + +config TARGET_MX23_OLINUXINO + bool "Support mx23_olinuxino" + +config TARGET_BG0900 + bool "Support bg0900" + +config TARGET_SANSA_FUZE_PLUS + bool "Support sansa_fuze_plus" + +config TARGET_SC_SPS_1 + bool "Support sc_sps_1" + +config TARGET_NHK8815 + bool "Support nhk8815" + +config TARGET_OMAP5912OSK + bool "Support omap5912osk" + +config TARGET_EDMINIV2 + bool "Support edminiv2" + +config TARGET_DKB + bool "Support dkb" + +config TARGET_SPEAR300 + bool "Support spear300" + +config TARGET_SPEAR310 + bool "Support spear310" + +config TARGET_SPEAR320 + bool "Support spear320" + +config TARGET_SPEAR600 + bool "Support spear600" + +config TARGET_X600 + bool "Support x600" + +config TARGET_VERSATILEAB + bool "Support versatileab" + +config TARGET_VERSATILEPB + bool "Support versatilepb" + +config TARGET_VERSATILEQEMU + bool "Support versatileqemu" + +config TARGET_INTEGRATORCP_CM1136 + bool "Support integratorcp_cm1136" + +config TARGET_IMX31_PHYCORE + bool "Support imx31_phycore" + +config TARGET_QONG + bool "Support qong" + +config TARGET_MX31ADS + bool "Support mx31ads" + +config TARGET_MX31PDK + bool "Support mx31pdk" + +config TARGET_TT01 + bool "Support tt01" + +config TARGET_IMX31_LITEKIT + bool "Support imx31_litekit" + +config TARGET_WOODBURN + bool "Support woodburn" + +config TARGET_WOODBURN_SD + bool "Support woodburn_sd" + +config TARGET_FLEA3 + bool "Support flea3" + +config TARGET_MX35PDK + bool "Support mx35pdk" + +config TARGET_RPI_B + bool "Support rpi_b" + +config TARGET_TNETV107X_EVM + bool "Support tnetv107x_evm" + +config TARGET_INTEGRATORAP_CM946ES + bool "Support integratorap_cm946es" + +config TARGET_INTEGRATORCP_CM946ES + bool "Support integratorcp_cm946es" + +config TARGET_VEXPRESS_CA15_TC2 + bool "Support vexpress_ca15_tc2" + +config TARGET_VEXPRESS_CA5X2 + bool "Support vexpress_ca5x2" + +config TARGET_VEXPRESS_CA9X4 + bool "Support vexpress_ca9x4" + +config TARGET_KWB + bool "Support kwb" + +config TARGET_TSERIES + bool "Support tseries" + +config TARGET_CM_T335 + bool "Support cm_t335" + +config TARGET_PEPPER + bool "Support pepper" + +config TARGET_AM335X_IGEP0033 + bool "Support am335x_igep0033" + +config TARGET_PCM051 + bool "Support pcm051" + +config TARGET_DRACO + bool "Support draco" + +config TARGET_DXR2 + bool "Support dxr2" + +config TARGET_PXM2 + bool "Support pxm2" + +config TARGET_RUT + bool "Support rut" + +config TARGET_PENGWYN + bool "Support pengwyn" + +config TARGET_AM335X_EVM + bool "Support am335x_evm" + +config TARGET_AM43XX_EVM + bool "Support am43xx_evm" + +config TARGET_TI814X_EVM + bool "Support ti814x_evm" + +config TARGET_TI816X_EVM + bool "Support ti816x_evm" + +config TARGET_SAMA5D3_XPLAINED + bool "Support sama5d3_xplained" + +config TARGET_SAMA5D3XEK + bool "Support sama5d3xek" + +config TARGET_BCM28155_AP + bool "Support bcm28155_ap" + +config TARGET_ARNDALE + bool "Support arndale" + +config TARGET_ORIGEN + bool "Support origen" + +config TARGET_SMDK5250 + bool "Support smdk5250" + +config TARGET_SNOW + bool "Support snow" + +config TARGET_PEACH_PIT + bool "Support peach-pit" + +config TARGET_SMDK5420 + bool "Support smdk5420" + +config TARGET_SMDKV310 + bool "Support smdkv310" + +config TARGET_TRATS + bool "Support trats" + +config TARGET_TRATS2 + bool "Support trats2" + +config TARGET_S5PC210_UNIVERSAL + bool "Support s5pc210_universal" + +config TARGET_HIGHBANK + bool "Support highbank" + +config TARGET_K2E_EVM + bool "Support k2e_evm" + +config TARGET_K2HK_EVM + bool "Support k2hk_evm" + +config TARGET_M53EVK + bool "Support m53evk" + +config TARGET_IMA3_MX53 + bool "Support ima3-mx53" + +config TARGET_MX51EVK + bool "Support mx51evk" + +config TARGET_MX53ARD + bool "Support mx53ard" + +config TARGET_MX53EVK + bool "Support mx53evk" + +config TARGET_MX53LOCO + bool "Support mx53loco" + +config TARGET_MX53SMD + bool "Support mx53smd" + +config TARGET_MX51_EFIKAMX + bool "Support mx51_efikamx" + +config TARGET_VISION2 + bool "Support vision2" + +config TARGET_UDOO + bool "Support udoo" + +config TARGET_WANDBOARD + bool "Support wandboard" + +config TARGET_TITANIUM + bool "Support titanium" + +config TARGET_NITROGEN6X + bool "Support nitrogen6x" + +config TARGET_CGTQMX6EVAL + bool "Support cgtqmx6eval" + +config TARGET_EMBESTMX6BOARDS + bool "Support embestmx6boards" + +config TARGET_MX6QARM2 + bool "Support mx6qarm2" + +config TARGET_MX6QSABREAUTO + bool "Support mx6qsabreauto" + +config TARGET_MX6SABRESD + bool "Support mx6sabresd" + +config TARGET_MX6SLEVK + bool "Support mx6slevk" + +config TARGET_GW_VENTANA + bool "Support gw_ventana" + +config TARGET_HUMMINGBOARD + bool "Support hummingboard" + +config TARGET_OMAP3_OVERO + bool "Support omap3_overo" + +config TARGET_OMAP3_PANDORA + bool "Support omap3_pandora" + +config TARGET_ECO5PK + bool "Support eco5pk" + +config TARGET_DIG297 + bool "Support dig297" + +config TARGET_CM_T35 + bool "Support cm_t35" + +config TARGET_TRICORDER + bool "Support tricorder" + +config TARGET_MCX + bool "Support mcx" + +config TARGET_OMAP3_IGEP00X0 + bool "Support omap3_igep00x0" + +config TARGET_AM3517_EVM + bool "Support am3517_evm" + +config TARGET_OMAP3_LOGIC + bool "Support omap3_logic" + +config TARGET_OMAP3_ZOOM1 + bool "Support omap3_zoom1" + +config TARGET_OMAP3_MVBLX + bool "Support omap3_mvblx" + +config TARGET_NOKIA_RX51 + bool "Support nokia_rx51" + +config TARGET_TAO3530 + bool "Support tao3530" + +config TARGET_TWISTER + bool "Support twister" + +config TARGET_MT_VENTOUX + bool "Support mt_ventoux" + +config TARGET_AM3517_CRANE + bool "Support am3517_crane" + +config TARGET_OMAP3_BEAGLE + bool "Support omap3_beagle" + +config TARGET_OMAP3_EVM + bool "Support omap3_evm" + +config TARGET_OMAP3_EVM_QUICK_MMC + bool "Support omap3_evm_quick_mmc" + +config TARGET_OMAP3_EVM_QUICK_NAND + bool "Support omap3_evm_quick_nand" + +config TARGET_OMAP3_SDP3430 + bool "Support omap3_sdp3430" + +config TARGET_DEVKIT8000 + bool "Support devkit8000" + +config TARGET_DUOVERO + bool "Support duovero" + +config TARGET_OMAP4_PANDA + bool "Support omap4_panda" + +config TARGET_OMAP4_SDP4430 + bool "Support omap4_sdp4430" + +config TARGET_CM_T54 + bool "Support cm_t54" + +config TARGET_DRA7XX_EVM + bool "Support dra7xx_evm" + +config TARGET_OMAP5_UEVM + bool "Support omap5_uevm" + +config TARGET_ARMADILLO_800EVA + bool "Support armadillo-800eva" + +config TARGET_KZM9G + bool "Support kzm9g" + +config TARGET_ALT + bool "Support alt" + +config TARGET_KOELSCH + bool "Support koelsch" + +config TARGET_LAGER + bool "Support lager" + +config TARGET_S5P_GONI + bool "Support s5p_goni" + +config TARGET_SMDKC100 + bool "Support smdkc100" + +config TARGET_SOCFPGA_CYCLONE5 + bool "Support socfpga_cyclone5" + +config TARGET_SUN4I + bool "Support sun4i" + +config TARGET_SUN5I + bool "Support sun5i" + +config TARGET_SUN7I + bool "Support sun7i" + +config TARGET_SNOWBALL + bool "Support snowball" + +config TARGET_U8500_HREF + bool "Support u8500_href" + +config TARGET_VF610TWR + bool "Support vf610twr" + +config TARGET_ZYNQ_MICROZED + bool "Support zynq_microzed" + +config TARGET_ZYNQ_ZC70X + bool "Support zynq_zc70x" + +config TARGET_ZYNQ_ZC770 + bool "Support zynq_zc770" + +config TARGET_ZYNQ_ZED + bool "Support zynq_zed" + +config TARGET_MEDCOM_WIDE + bool "Support medcom-wide" + +config TARGET_PLUTUX + bool "Support plutux" + +config TARGET_TEC + bool "Support tec" + +config TARGET_PAZ00 + bool "Support paz00" + +config TARGET_TRIMSLICE + bool "Support trimslice" + +config TARGET_HARMONY + bool "Support harmony" + +config TARGET_SEABOARD + bool "Support seaboard" + +config TARGET_VENTANA + bool "Support ventana" + +config TARGET_WHISTLER + bool "Support whistler" + +config TARGET_COLIBRI_T20_IRIS + bool "Support colibri_t20_iris" + +config TARGET_TEC_NG + bool "Support tec-ng" + +config TARGET_BEAVER + bool "Support beaver" + +config TARGET_CARDHU + bool "Support cardhu" + +config TARGET_DALMORE + bool "Support dalmore" + +config TARGET_JETSON_TK1 + bool "Support jetson-tk1" + +config TARGET_VENICE2 + bool "Support venice2" + +config TARGET_VEXPRESS_AEMV8A + bool "Support vexpress_aemv8a" + +config TARGET_VEXPRESS_AEMV8A_SEMI + bool "Support vexpress_aemv8a_semi" + +config TARGET_LS2085A_EMU + bool "Support ls2085a_emu" + +config TARGET_LS2085A_SIMU + bool "Support ls2085a_simu" + +config TARGET_BALLOON3 + bool "Support balloon3" + +config TARGET_H2200 + bool "Support h2200" + +config TARGET_PALMLD + bool "Support palmld" + +config TARGET_PALMTC + bool "Support palmtc" + +config TARGET_PALMTREO680 + bool "Support palmtreo680" + +config TARGET_PXA255_IDP + bool "Support pxa255_idp" + +config TARGET_TRIZEPSIV + bool "Support trizepsiv" + +config TARGET_VPAC270 + bool "Support vpac270" + +config TARGET_XAENIAX + bool "Support xaeniax" + +config TARGET_ZIPITZ2 + bool "Support zipitz2" + +config TARGET_LP8X4X + bool "Support lp8x4x" + +config TARGET_COLIBRI_PXA270 + bool "Support colibri_pxa270" + +config TARGET_JORNADA + bool "Support jornada" + +endchoice + +source "board/8dtech/eco5pk/Kconfig" +source "board/Barix/ipam390/Kconfig" +source "board/BuR/kwb/Kconfig" +source "board/BuR/tseries/Kconfig" +source "board/BuS/eb_cpux9k2/Kconfig" +source "board/BuS/vl_ma2sc/Kconfig" +source "board/CarMediaLab/flea3/Kconfig" +source "board/LaCie/edminiv2/Kconfig" +source "board/LaCie/net2big_v2/Kconfig" +source "board/LaCie/netspace_v2/Kconfig" +source "board/LaCie/wireless_space/Kconfig" +source "board/Marvell/aspenite/Kconfig" +source "board/Marvell/dkb/Kconfig" +source "board/Marvell/dreamplug/Kconfig" +source "board/Marvell/gplugd/Kconfig" +source "board/Marvell/guruplug/Kconfig" +source "board/Marvell/mv88f6281gtw_ge/Kconfig" +source "board/Marvell/openrd/Kconfig" +source "board/Marvell/rd6281a/Kconfig" +source "board/Marvell/sheevaplug/Kconfig" +source "board/Seagate/dockstar/Kconfig" +source "board/Seagate/goflexhome/Kconfig" +source "board/afeb9260/Kconfig" +source "board/ait/cam_enc_4xx/Kconfig" +source "board/altera/socfpga/Kconfig" +source "board/armadeus/apf27/Kconfig" +source "board/armltd/integrator/Kconfig" +source "board/armltd/versatile/Kconfig" +source "board/armltd/vexpress/Kconfig" +source "board/armltd/vexpress64/Kconfig" +source "board/atmark-techno/armadillo-800eva/Kconfig" +source "board/atmel/at91rm9200ek/Kconfig" +source "board/atmel/at91sam9260ek/Kconfig" +source "board/atmel/at91sam9261ek/Kconfig" +source "board/atmel/at91sam9263ek/Kconfig" +source "board/atmel/at91sam9m10g45ek/Kconfig" +source "board/atmel/at91sam9n12ek/Kconfig" +source "board/atmel/at91sam9rlek/Kconfig" +source "board/atmel/at91sam9x5ek/Kconfig" +source "board/atmel/sama5d3_xplained/Kconfig" +source "board/atmel/sama5d3xek/Kconfig" +source "board/avionic-design/medcom-wide/Kconfig" +source "board/avionic-design/plutux/Kconfig" +source "board/avionic-design/tec-ng/Kconfig" +source "board/avionic-design/tec/Kconfig" +source "board/balloon3/Kconfig" +source "board/barco/titanium/Kconfig" +source "board/bluegiga/apx4devkit/Kconfig" +source "board/bluewater/snapper9260/Kconfig" +source "board/boundary/nitrogen6x/Kconfig" +source "board/broadcom/bcm28155_ap/Kconfig" +source "board/buffalo/lsxl/Kconfig" +source "board/calao/sbc35_a9g20/Kconfig" +source "board/calao/tny_a9260/Kconfig" +source "board/calao/usb_a9263/Kconfig" +source "board/cirrus/edb93xx/Kconfig" +source "board/cloudengines/pogo_e02/Kconfig" +source "board/cm4008/Kconfig" +source "board/cm41xx/Kconfig" +source "board/comelit/dig297/Kconfig" +source "board/compal/paz00/Kconfig" +source "board/compulab/cm_t335/Kconfig" +source "board/compulab/cm_t35/Kconfig" +source "board/compulab/cm_t54/Kconfig" +source "board/compulab/trimslice/Kconfig" +source "board/congatec/cgtqmx6eval/Kconfig" +source "board/corscience/tricorder/Kconfig" +source "board/creative/xfi3/Kconfig" +source "board/d-link/dns325/Kconfig" +source "board/davedenx/qong/Kconfig" +source "board/davinci/da8xxevm/Kconfig" +source "board/davinci/dm355evm/Kconfig" +source "board/davinci/dm355leopard/Kconfig" +source "board/davinci/dm365evm/Kconfig" +source "board/davinci/dm6467evm/Kconfig" +source "board/davinci/dvevm/Kconfig" +source "board/davinci/ea20/Kconfig" +source "board/davinci/schmoogie/Kconfig" +source "board/davinci/sffsdr/Kconfig" +source "board/davinci/sonata/Kconfig" +source "board/denx/m28evk/Kconfig" +source "board/denx/m53evk/Kconfig" +source "board/egnite/ethernut5/Kconfig" +source "board/embest/mx6boards/Kconfig" +source "board/emk/top9000/Kconfig" +source "board/enbw/enbw_cmc/Kconfig" +source "board/esd/meesc/Kconfig" +source "board/esd/otc570/Kconfig" +source "board/esg/ima3-mx53/Kconfig" +source "board/eukrea/cpu9260/Kconfig" +source "board/eukrea/cpuat91/Kconfig" +source "board/faraday/a320evb/Kconfig" +source "board/freescale/ls2085a/Kconfig" +source "board/freescale/mx23evk/Kconfig" +source "board/freescale/mx25pdk/Kconfig" +source "board/freescale/mx28evk/Kconfig" +source "board/freescale/mx31ads/Kconfig" +source "board/freescale/mx31pdk/Kconfig" +source "board/freescale/mx35pdk/Kconfig" +source "board/freescale/mx51evk/Kconfig" +source "board/freescale/mx53ard/Kconfig" +source "board/freescale/mx53evk/Kconfig" +source "board/freescale/mx53loco/Kconfig" +source "board/freescale/mx53smd/Kconfig" +source "board/freescale/mx6qarm2/Kconfig" +source "board/freescale/mx6qsabreauto/Kconfig" +source "board/freescale/mx6sabresd/Kconfig" +source "board/freescale/mx6slevk/Kconfig" +source "board/freescale/vf610twr/Kconfig" +source "board/gateworks/gw_ventana/Kconfig" +source "board/genesi/mx51_efikamx/Kconfig" +source "board/gumstix/duovero/Kconfig" +source "board/gumstix/pepper/Kconfig" +source "board/h2200/Kconfig" +source "board/hale/tt01/Kconfig" +source "board/highbank/Kconfig" +source "board/htkw/mcx/Kconfig" +source "board/icpdas/lp8x4x/Kconfig" +source "board/imx31_phycore/Kconfig" +source "board/iomega/iconnect/Kconfig" +source "board/isee/igep0033/Kconfig" +source "board/isee/igep00x0/Kconfig" +source "board/jornada/Kconfig" +source "board/karo/tk71/Kconfig" +source "board/karo/tx25/Kconfig" +source "board/keymile/km_arm/Kconfig" +source "board/kmc/kzm9g/Kconfig" +source "board/logicpd/am3517evm/Kconfig" +source "board/logicpd/imx27lite/Kconfig" +source "board/logicpd/imx31_litekit/Kconfig" +source "board/logicpd/omap3som/Kconfig" +source "board/logicpd/zoom1/Kconfig" +source "board/matrix_vision/mvblx/Kconfig" +source "board/mpl/vcma9/Kconfig" +source "board/nokia/rx51/Kconfig" +source "board/nvidia/beaver/Kconfig" +source "board/nvidia/cardhu/Kconfig" +source "board/nvidia/dalmore/Kconfig" +source "board/nvidia/harmony/Kconfig" +source "board/nvidia/jetson-tk1/Kconfig" +source "board/nvidia/seaboard/Kconfig" +source "board/nvidia/venice2/Kconfig" +source "board/nvidia/ventana/Kconfig" +source "board/nvidia/whistler/Kconfig" +source "board/olimex/mx23_olinuxino/Kconfig" +source "board/omicron/calimain/Kconfig" +source "board/overo/Kconfig" +source "board/palmld/Kconfig" +source "board/palmtc/Kconfig" +source "board/palmtreo680/Kconfig" +source "board/pandora/Kconfig" +source "board/phytec/pcm051/Kconfig" +source "board/ppcag/bg0900/Kconfig" +source "board/pxa255_idp/Kconfig" +source "board/raidsonic/ib62x0/Kconfig" +source "board/raspberrypi/rpi_b/Kconfig" +source "board/renesas/alt/Kconfig" +source "board/renesas/koelsch/Kconfig" +source "board/renesas/lager/Kconfig" +source "board/ronetix/pm9261/Kconfig" +source "board/ronetix/pm9263/Kconfig" +source "board/ronetix/pm9g45/Kconfig" +source "board/samsung/arndale/Kconfig" +source "board/samsung/goni/Kconfig" +source "board/samsung/origen/Kconfig" +source "board/samsung/smdk2410/Kconfig" +source "board/samsung/smdk5250/Kconfig" +source "board/samsung/smdk5420/Kconfig" +source "board/samsung/smdkc100/Kconfig" +source "board/samsung/smdkv310/Kconfig" +source "board/samsung/trats/Kconfig" +source "board/samsung/trats2/Kconfig" +source "board/samsung/universal_c210/Kconfig" +source "board/sandisk/sansa_fuze_plus/Kconfig" +source "board/scb9328/Kconfig" +source "board/schulercontrol/sc_sps_1/Kconfig" +source "board/siemens/corvus/Kconfig" +source "board/siemens/draco/Kconfig" +source "board/siemens/pxm2/Kconfig" +source "board/siemens/rut/Kconfig" +source "board/siemens/taurus/Kconfig" +source "board/silica/pengwyn/Kconfig" +source "board/solidrun/hummingboard/Kconfig" +source "board/spear/spear300/Kconfig" +source "board/spear/spear310/Kconfig" +source "board/spear/spear320/Kconfig" +source "board/spear/spear600/Kconfig" +source "board/spear/x600/Kconfig" +source "board/st-ericsson/snowball/Kconfig" +source "board/st-ericsson/u8500/Kconfig" +source "board/st/nhk8815/Kconfig" +source "board/sunxi/Kconfig" +source "board/syteco/jadecpu/Kconfig" +source "board/syteco/zmx25/Kconfig" +source "board/taskit/stamp9g20/Kconfig" +source "board/technexion/tao3530/Kconfig" +source "board/technexion/twister/Kconfig" +source "board/teejet/mt_ventoux/Kconfig" +source "board/ti/am335x/Kconfig" +source "board/ti/am3517crane/Kconfig" +source "board/ti/am43xx/Kconfig" +source "board/ti/beagle/Kconfig" +source "board/ti/dra7xx/Kconfig" +source "board/ti/evm/Kconfig" +source "board/ti/ks2_evm/Kconfig" +source "board/ti/omap5912osk/Kconfig" +source "board/ti/omap5_uevm/Kconfig" +source "board/ti/panda/Kconfig" +source "board/ti/sdp3430/Kconfig" +source "board/ti/sdp4430/Kconfig" +source "board/ti/ti814x/Kconfig" +source "board/ti/ti816x/Kconfig" +source "board/ti/tnetv107xevm/Kconfig" +source "board/timll/devkit3250/Kconfig" +source "board/timll/devkit8000/Kconfig" +source "board/toradex/colibri_pxa270/Kconfig" +source "board/toradex/colibri_t20_iris/Kconfig" +source "board/trizepsiv/Kconfig" +source "board/ttcontrol/vision2/Kconfig" +source "board/udoo/Kconfig" +source "board/vpac270/Kconfig" +source "board/wandboard/Kconfig" +source "board/woodburn/Kconfig" +source "board/xaeniax/Kconfig" +source "board/xilinx/zynq/Kconfig" +source "board/zipitz2/Kconfig" + +endmenu diff --git a/arch/arm/config.mk b/arch/arm/config.mk index c3b8289..c339e6d 100644 --- a/arch/arm/config.mk +++ b/arch/arm/config.mk @@ -22,7 +22,7 @@ PLATFORM_RELFLAGS += $(call cc-option, -msoft-float) \ # Support generic board on ARM __HAVE_ARCH_GENERIC_BOARD := y -PLATFORM_CPPFLAGS += -DCONFIG_ARM -D__ARM__ +PLATFORM_CPPFLAGS += -D__ARM__ # Choose between ARM/Thumb instruction sets ifeq ($(CONFIG_SYS_THUMB_BUILD),y) diff --git a/arch/arm/cpu/arm926ejs/kirkwood/cpu.c b/arch/arm/cpu/arm926ejs/kirkwood/cpu.c index da80240..881e2de 100644 --- a/arch/arm/cpu/arm926ejs/kirkwood/cpu.c +++ b/arch/arm/cpu/arm926ejs/kirkwood/cpu.c @@ -13,6 +13,7 @@ #include <asm/io.h> #include <asm/arch/cpu.h> #include <asm/arch/kirkwood.h> +#include <mvebu_mmc.h> #define BUFLEN 16 @@ -377,3 +378,11 @@ int cpu_eth_init(bd_t *bis) return 0; } #endif + +#ifdef CONFIG_MVEBU_MMC +int board_mmc_init(bd_t *bis) +{ + mvebu_mmc_init(bis); + return 0; +} +#endif /* CONFIG_MVEBU_MMC */ diff --git a/arch/arm/cpu/armv7/sunxi/Makefile b/arch/arm/cpu/armv7/sunxi/Makefile index 6c70639..e9721b2 100644 --- a/arch/arm/cpu/armv7/sunxi/Makefile +++ b/arch/arm/cpu/armv7/sunxi/Makefile @@ -17,6 +17,9 @@ obj-$(CONFIG_SUN7I) += clock_sun4i.o ifndef CONFIG_SPL_BUILD obj-y += cpu_info.o +ifdef CONFIG_ARMV7_PSCI +obj-y += psci.o +endif endif ifdef CONFIG_SPL_BUILD diff --git a/arch/arm/cpu/armv7/sunxi/board.c b/arch/arm/cpu/armv7/sunxi/board.c index 8f2cef3..f2cedbb 100644 --- a/arch/arm/cpu/armv7/sunxi/board.c +++ b/arch/arm/cpu/armv7/sunxi/board.c @@ -129,6 +129,11 @@ int cpu_eth_init(bd_t *bis) { __maybe_unused int rc; +#ifdef CONFIG_MACPWR + gpio_direction_output(CONFIG_MACPWR, 1); + mdelay(200); +#endif + #ifdef CONFIG_SUNXI_EMAC rc = sunxi_emac_initialize(bis); if (rc < 0) { diff --git a/arch/arm/cpu/armv7/sunxi/clock_sun4i.c b/arch/arm/cpu/armv7/sunxi/clock_sun4i.c index b8b16cf..ecbdb01 100644 --- a/arch/arm/cpu/armv7/sunxi/clock_sun4i.c +++ b/arch/arm/cpu/armv7/sunxi/clock_sun4i.c @@ -39,6 +39,10 @@ void clock_init_safe(void) setbits_le32(&ccm->ahb_gate0, 0x1 << AHB_GATE_OFFSET_DMA); #endif writel(PLL6_CFG_DEFAULT, &ccm->pll6_cfg); +#ifdef CONFIG_SUNXI_AHCI + setbits_le32(&ccm->ahb_gate0, 0x1 << AHB_GATE_OFFSET_SATA); + setbits_le32(&ccm->pll6_cfg, 0x1 << CCM_PLL6_CTRL_SATA_EN_SHIFT); +#endif } #endif diff --git a/arch/arm/cpu/armv7/sunxi/psci.S b/arch/arm/cpu/armv7/sunxi/psci.S new file mode 100644 index 0000000..0084c81 --- /dev/null +++ b/arch/arm/cpu/armv7/sunxi/psci.S @@ -0,0 +1,162 @@ +/* + * Copyright (C) 2013 - ARM Ltd + * Author: Marc Zyngier <marc.zyngier@arm.com> + * + * Based on code by Carl van Schaik <carl@ok-labs.com>. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include <config.h> +#include <asm/psci.h> +#include <asm/arch/cpu.h> + +/* + * Memory layout: + * + * SECURE_RAM to text_end : + * ._secure_text section + * text_end to ALIGN_PAGE(text_end): + * nothing + * ALIGN_PAGE(text_end) to ALIGN_PAGE(text_end) + 0x1000) + * 1kB of stack per CPU (4 CPUs max). + */ + + .pushsection ._secure.text, "ax" + + .arch_extension sec + +#define ONE_MS (CONFIG_SYS_CLK_FREQ / 1000) +#define TEN_MS (10 * ONE_MS) + +.macro timer_wait reg, ticks + @ Program CNTP_TVAL + movw \reg, #(\ticks & 0xffff) + movt \reg, #(\ticks >> 16) + mcr p15, 0, \reg, c14, c2, 0 + isb + @ Enable physical timer, mask interrupt + mov \reg, #3 + mcr p15, 0, \reg, c14, c2, 1 + @ Poll physical timer until ISTATUS is on +1: isb + mrc p15, 0, \reg, c14, c2, 1 + ands \reg, \reg, #4 + bne 1b + @ Disable timer + mov \reg, #0 + mcr p15, 0, \reg, c14, c2, 1 + isb +.endm + +.globl psci_arch_init +psci_arch_init: + mrc p15, 0, r5, c1, c1, 0 @ Read SCR + bic r5, r5, #1 @ Secure mode + mcr p15, 0, r5, c1, c1, 0 @ Write SCR + isb + + mrc p15, 0, r4, c0, c0, 5 @ MPIDR + and r4, r4, #3 @ cpu number in cluster + mov r5, #400 @ 1kB of stack per CPU + mul r4, r4, r5 + + adr r5, text_end @ end of text + add r5, r5, #0x2000 @ Skip two pages + lsr r5, r5, #12 @ Align to start of page + lsl r5, r5, #12 + sub sp, r5, r4 @ here's our stack! + + bx lr + + @ r1 = target CPU + @ r2 = target PC +.globl psci_cpu_on +psci_cpu_on: + adr r0, _target_pc + str r2, [r0] + dsb + + movw r0, #(SUNXI_CPUCFG_BASE & 0xffff) + movt r0, #(SUNXI_CPUCFG_BASE >> 16) + + @ CPU mask + and r1, r1, #3 @ only care about first cluster + mov r4, #1 + lsl r4, r4, r1 + + adr r6, _sunxi_cpu_entry + str r6, [r0, #0x1a4] @ PRIVATE_REG (boot vector) + + @ Assert reset on target CPU + mov r6, #0 + lsl r5, r1, #6 @ 64 bytes per CPU + add r5, r5, #0x40 @ Offset from base + add r5, r5, r0 @ CPU control block + str r6, [r5] @ Reset CPU + + @ l1 invalidate + ldr r6, [r0, #0x184] + bic r6, r6, r4 + str r6, [r0, #0x184] + + @ Lock CPU + ldr r6, [r0, #0x1e4] + bic r6, r6, r4 + str r6, [r0, #0x1e4] + + @ Release power clamp + movw r6, #0x1ff + movt r6, #0 +1: lsrs r6, r6, #1 + str r6, [r0, #0x1b0] + bne 1b + + timer_wait r1, TEN_MS + + @ Clear power gating + ldr r6, [r0, #0x1b4] + bic r6, r6, #1 + str r6, [r0, #0x1b4] + + @ Deassert reset on target CPU + mov r6, #3 + str r6, [r5] + + @ Unlock CPU + ldr r6, [r0, #0x1e4] + orr r6, r6, r4 + str r6, [r0, #0x1e4] + + mov r0, #ARM_PSCI_RET_SUCCESS @ Return PSCI_RET_SUCCESS + mov pc, lr + +_target_pc: + .word 0 + +_sunxi_cpu_entry: + @ Set SMP bit + mrc p15, 0, r0, c1, c0, 1 + orr r0, r0, #0x40 + mcr p15, 0, r0, c1, c0, 1 + isb + + bl _nonsec_init + bl psci_arch_init + + adr r0, _target_pc + ldr r0, [r0] + b _do_nonsec_entry + +text_end: + .popsection diff --git a/arch/arm/include/asm/arch-fsl-lsch3/config.h b/arch/arm/include/asm/arch-fsl-lsch3/config.h index c1c718e..b17410a 100644 --- a/arch/arm/include/asm/arch-fsl-lsch3/config.h +++ b/arch/arm/include/asm/arch-fsl-lsch3/config.h @@ -43,7 +43,11 @@ /* DDR */ #define CONFIG_SYS_FSL_DDR_LE #define CONFIG_VERY_BIG_RAM +#ifdef CONFIG_SYS_FSL_DDR4 +#define CONFIG_SYS_FSL_DDRC_GEN4 +#else #define CONFIG_SYS_FSL_DDRC_ARM_GEN3 /* Enable Freescale ARM DDR3 driver */ +#endif #define CONFIG_SYS_FSL_DDR /* Freescale DDR driver */ #define CONFIG_SYS_LS2_DDR_BLOCK1_SIZE ((phys_size_t)2 << 30) #define CONFIG_MAX_MEM_MAPPED CONFIG_SYS_LS2_DDR_BLOCK1_SIZE diff --git a/arch/arm/include/asm/arch-kirkwood/kirkwood.h b/arch/arm/include/asm/arch-kirkwood/kirkwood.h index bc207f5..3ea51d7 100644 --- a/arch/arm/include/asm/arch-kirkwood/kirkwood.h +++ b/arch/arm/include/asm/arch-kirkwood/kirkwood.h @@ -39,6 +39,7 @@ #define KW_EGIGA0_BASE (KW_REGISTER(0x72000)) #define KW_EGIGA1_BASE (KW_REGISTER(0x76000)) #define KW_SATA_BASE (KW_REGISTER(0x80000)) +#define KW_SDIO_BASE (KW_REGISTER(0x90000)) /* Kirkwood Sata controller has two ports */ #define KW_SATA_PORT0_OFFSET 0x2000 diff --git a/arch/arm/include/asm/arch-s3c24x0/s3c2410.h b/arch/arm/include/asm/arch-s3c24x0/s3c2410.h index 01fe0f2..ce4186f 100644 --- a/arch/arm/include/asm/arch-s3c24x0/s3c2410.h +++ b/arch/arm/include/asm/arch-s3c24x0/s3c2410.h @@ -139,9 +139,9 @@ static inline struct s3c24x0_spi *s3c24x0_get_base_spi(void) return (struct s3c24x0_spi *)S3C24X0_SPI_BASE; } -static inline struct s3c2410_sdi *s3c2410_get_base_sdi(void) +static inline struct s3c24x0_sdi *s3c24x0_get_base_sdi(void) { - return (struct s3c2410_sdi *)S3C2410_SDI_BASE; + return (struct s3c24x0_sdi *)S3C2410_SDI_BASE; } #endif /*__S3C2410_H__*/ diff --git a/arch/arm/include/asm/arch-s3c24x0/s3c2440.h b/arch/arm/include/asm/arch-s3c24x0/s3c2440.h index 15a7cb4..3f44bdc 100644 --- a/arch/arm/include/asm/arch-s3c24x0/s3c2440.h +++ b/arch/arm/include/asm/arch-s3c24x0/s3c2440.h @@ -137,9 +137,9 @@ static inline struct s3c24x0_spi *s3c24x0_get_base_spi(void) return (struct s3c24x0_spi *)S3C24X0_SPI_BASE; } -static inline struct s3c2440_sdi *s3c2440_get_base_sdi(void) +static inline struct s3c24x0_sdi *s3c24x0_get_base_sdi(void) { - return (struct s3c2440_sdi *)S3C2440_SDI_BASE; + return (struct s3c24x0_sdi *)S3C2440_SDI_BASE; } #endif /*__S3C2440_H__*/ diff --git a/arch/arm/include/asm/arch-s3c24x0/s3c24x0.h b/arch/arm/include/asm/arch-s3c24x0/s3c24x0.h index 86d720c..ed9df34 100644 --- a/arch/arm/include/asm/arch-s3c24x0/s3c24x0.h +++ b/arch/arm/include/asm/arch-s3c24x0/s3c24x0.h @@ -675,7 +675,7 @@ struct s3c2400_mmc { /* SD INTERFACE (see S3C2410 manual chapter 19) */ -struct s3c2410_sdi { +struct s3c24x0_sdi { u32 sdicon; u32 sdipre; u32 sdicarg; @@ -691,14 +691,19 @@ struct s3c2410_sdi { u32 sdidcnt; u32 sdidsta; u32 sdifsta; -#ifdef __BIG_ENDIAN - u8 res[3]; - u8 sdidat; +#ifdef CONFIG_S3C2410 + u32 sdidat; + u32 sdiimsk; #else - u8 sdidat; - u8 res[3]; -#endif u32 sdiimsk; + u32 sdidat; +#endif }; +#ifdef CONFIG_CMD_MMC +#include <mmc.h> +int s3cmmc_initialize(bd_t *bis, int (*getcd)(struct mmc *), + int (*getwp)(struct mmc *)); +#endif + #endif /*__S3C24X0_H__*/ diff --git a/arch/arm/include/asm/arch-sunxi/clock_sun4i.h b/arch/arm/include/asm/arch-sunxi/clock_sun4i.h index 928f3f2..1ba997a 100644 --- a/arch/arm/include/asm/arch-sunxi/clock_sun4i.h +++ b/arch/arm/include/asm/arch-sunxi/clock_sun4i.h @@ -218,10 +218,13 @@ struct sunxi_ccm_reg { #define CCM_PLL5_CTRL_BYPASS (0x1 << 30) #define CCM_PLL5_CTRL_EN (0x1 << 31) -#define CCM_PLL6_CTRL_N_SHIFT 8 -#define CCM_PLL6_CTRL_N_MASK (0x1f << CCM_PLL6_CTRL_N_SHIFT) -#define CCM_PLL6_CTRL_K_SHIFT 4 -#define CCM_PLL6_CTRL_K_MASK (0x3 << CCM_PLL6_CTRL_K_SHIFT) +#define CCM_PLL6_CTRL_EN 31 +#define CCM_PLL6_CTRL_BYPASS_EN 30 +#define CCM_PLL6_CTRL_SATA_EN_SHIFT 14 +#define CCM_PLL6_CTRL_N_SHIFT 8 +#define CCM_PLL6_CTRL_N_MASK (0x1f << CCM_PLL6_CTRL_N_SHIFT) +#define CCM_PLL6_CTRL_K_SHIFT 4 +#define CCM_PLL6_CTRL_K_MASK (0x3 << CCM_PLL6_CTRL_K_SHIFT) #define CCM_GPS_CTRL_RESET (0x1 << 0) #define CCM_GPS_CTRL_GATE (0x1 << 1) @@ -253,4 +256,8 @@ struct sunxi_ccm_reg { #define CCM_GMAC_CTRL_GPIT_MII (0x0 << 2) #define CCM_GMAC_CTRL_GPIT_RGMII (0x1 << 2) +#define CCM_USB_CTRL_PHY1_RST (0x1 << 1) +#define CCM_USB_CTRL_PHY2_RST (0x1 << 2) +#define CCM_USB_CTRL_PHYGATE (0x1 << 8) + #endif /* _SUNXI_CLOCK_SUN4I_H */ diff --git a/arch/arm/include/asm/config.h b/arch/arm/include/asm/config.h index d3433da..5f2a5f4 100644 --- a/arch/arm/include/asm/config.h +++ b/arch/arm/include/asm/config.h @@ -7,7 +7,9 @@ #ifndef _ASM_CONFIG_H_ #define _ASM_CONFIG_H_ +#ifdef __aarch64__ #define CONFIG_SYS_GENERIC_GLOBAL_DATA +#endif #define CONFIG_LMB #define CONFIG_SYS_BOOT_RAMDISK_HIGH diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h index 214f3ea..6d18eb3 100644 --- a/arch/arm/include/asm/io.h +++ b/arch/arm/include/asm/io.h @@ -136,6 +136,7 @@ extern inline void __raw_readsl(unsigned long addr, void *data, int longlen) * TODO: The kernel offers some more advanced versions of barriers, it might * have some advantages to use them instead of the simple one here. */ +#define mb() asm volatile("dsb sy" : : : "memory") #define dmb() __asm__ __volatile__ ("" : : : "memory") #define __iormb() dmb() #define __iowmb() dmb() diff --git a/arch/arm/lib/crt0.S b/arch/arm/lib/crt0.S index dfc2de9..29cdad0 100644 --- a/arch/arm/lib/crt0.S +++ b/arch/arm/lib/crt0.S @@ -67,10 +67,22 @@ ENTRY(_main) ldr sp, =(CONFIG_SYS_INIT_SP_ADDR) #endif bic sp, sp, #7 /* 8-byte alignment for ABI compliance */ + mov r2, sp sub sp, sp, #GD_SIZE /* allocate one GD above SP */ bic sp, sp, #7 /* 8-byte alignment for ABI compliance */ mov r9, sp /* GD is above SP */ + mov r1, sp mov r0, #0 +clr_gd: + cmp r1, r2 /* while not at end of GD */ + strlo r0, [r1] /* clear 32-bit GD word */ + addlo r1, r1, #4 /* move to next */ + blo clr_gd +#if defined(CONFIG_SYS_MALLOC_F_LEN) && !defined(CONFIG_SPL_BUILD) + sub sp, sp, #CONFIG_SYS_MALLOC_F_LEN + str sp, [r9, #GD_MALLOC_BASE] +#endif + /* mov r0, #0 not needed due to above code */ bl board_init_f #if ! defined(CONFIG_SPL_BUILD) diff --git a/arch/avr32/Kconfig b/arch/avr32/Kconfig new file mode 100644 index 0000000..46337ae --- /dev/null +++ b/arch/avr32/Kconfig @@ -0,0 +1,51 @@ +menu "AVR32 architecture" + depends on AVR32 + +config SYS_ARCH + string + default "avr32" + +choice + prompt "Target select" + +config TARGET_ATNGW100 + bool "Support atngw100" + +config TARGET_ATNGW100MKII + bool "Support atngw100mkii" + +config TARGET_ATSTK1002 + bool "Support atstk1002" + +config TARGET_ATSTK1003 + bool "Support atstk1003" + +config TARGET_ATSTK1004 + bool "Support atstk1004" + +config TARGET_ATSTK1006 + bool "Support atstk1006" + +config TARGET_FAVR_32_EZKIT + bool "Support favr-32-ezkit" + +config TARGET_GRASSHOPPER + bool "Support grasshopper" + +config TARGET_MIMC200 + bool "Support mimc200" + +config TARGET_HAMMERHEAD + bool "Support hammerhead" + +endchoice + +source "board/atmel/atngw100/Kconfig" +source "board/atmel/atngw100mkii/Kconfig" +source "board/atmel/atstk1000/Kconfig" +source "board/earthlcd/favr-32-ezkit/Kconfig" +source "board/in-circuit/grasshopper/Kconfig" +source "board/mimc/mimc200/Kconfig" +source "board/miromico/hammerhead/Kconfig" + +endmenu diff --git a/arch/avr32/config.mk b/arch/avr32/config.mk index 28a371c..469185e 100644 --- a/arch/avr32/config.mk +++ b/arch/avr32/config.mk @@ -9,7 +9,6 @@ ifeq ($(CROSS_COMPILE),) CROSS_COMPILE := avr32-linux- endif -PLATFORM_CPPFLAGS += -DCONFIG_AVR32 CONFIG_STANDALONE_LOAD_ADDR ?= 0x00000000 PLATFORM_RELFLAGS += -ffixed-r5 -fPIC -mno-init-got -mrelax diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig new file mode 100644 index 0000000..bb8a133 --- /dev/null +++ b/arch/blackfin/Kconfig @@ -0,0 +1,150 @@ +menu "Blackfin architecture" + depends on BLACKFIN + +config SYS_ARCH + string + default "blackfin" + +choice + prompt "Target select" + +config TARGET_BCT_BRETTL2 + bool "Support bct-brettl2" + +config TARGET_BF506F_EZKIT + bool "Support bf506f-ezkit" + +config TARGET_BF518F_EZBRD + bool "Support bf518f-ezbrd" + +config TARGET_BF525_UCR2 + bool "Support bf525-ucr2" + +config TARGET_BF526_EZBRD + bool "Support bf526-ezbrd" + +config TARGET_BF527_AD7160_EVAL + bool "Support bf527-ad7160-eval" + +config TARGET_BF527_EZKIT + bool "Support bf527-ezkit" + +config TARGET_BF527_SDP + bool "Support bf527-sdp" + +config TARGET_BF533_EZKIT + bool "Support bf533-ezkit" + +config TARGET_BF533_STAMP + bool "Support bf533-stamp" + +config TARGET_BF537_MINOTAUR + bool "Support bf537-minotaur" + +config TARGET_BF537_PNAV + bool "Support bf537-pnav" + +config TARGET_BF537_SRV1 + bool "Support bf537-srv1" + +config TARGET_BF537_STAMP + bool "Support bf537-stamp" + +config TARGET_BF538F_EZKIT + bool "Support bf538f-ezkit" + +config TARGET_BF548_EZKIT + bool "Support bf548-ezkit" + +config TARGET_BF561_ACVILON + bool "Support bf561-acvilon" + +config TARGET_BF561_EZKIT + bool "Support bf561-ezkit" + +config TARGET_BF609_EZKIT + bool "Support bf609-ezkit" + +config TARGET_BLACKSTAMP + bool "Support blackstamp" + +config TARGET_BLACKVME + bool "Support blackvme" + +config TARGET_BR4 + bool "Support br4" + +config TARGET_CM_BF527 + bool "Support cm-bf527" + +config TARGET_CM_BF533 + bool "Support cm-bf533" + +config TARGET_CM_BF537E + bool "Support cm-bf537e" + +config TARGET_CM_BF537U + bool "Support cm-bf537u" + +config TARGET_CM_BF548 + bool "Support cm-bf548" + +config TARGET_CM_BF561 + bool "Support cm-bf561" + +config TARGET_DNP5370 + bool "Support dnp5370" + +config TARGET_IBF_DSP561 + bool "Support ibf-dsp561" + +config TARGET_IP04 + bool "Support ip04" + +config TARGET_PR1 + bool "Support pr1" + +config TARGET_TCM_BF518 + bool "Support tcm-bf518" + +config TARGET_TCM_BF537 + bool "Support tcm-bf537" + +endchoice + +source "board/bct-brettl2/Kconfig" +source "board/bf506f-ezkit/Kconfig" +source "board/bf518f-ezbrd/Kconfig" +source "board/bf525-ucr2/Kconfig" +source "board/bf526-ezbrd/Kconfig" +source "board/bf527-ad7160-eval/Kconfig" +source "board/bf527-ezkit/Kconfig" +source "board/bf527-sdp/Kconfig" +source "board/bf533-ezkit/Kconfig" +source "board/bf533-stamp/Kconfig" +source "board/bf537-minotaur/Kconfig" +source "board/bf537-pnav/Kconfig" +source "board/bf537-srv1/Kconfig" +source "board/bf537-stamp/Kconfig" +source "board/bf538f-ezkit/Kconfig" +source "board/bf548-ezkit/Kconfig" +source "board/bf561-acvilon/Kconfig" +source "board/bf561-ezkit/Kconfig" +source "board/bf609-ezkit/Kconfig" +source "board/blackstamp/Kconfig" +source "board/blackvme/Kconfig" +source "board/br4/Kconfig" +source "board/cm-bf527/Kconfig" +source "board/cm-bf533/Kconfig" +source "board/cm-bf537e/Kconfig" +source "board/cm-bf537u/Kconfig" +source "board/cm-bf548/Kconfig" +source "board/cm-bf561/Kconfig" +source "board/dnp5370/Kconfig" +source "board/ibf-dsp561/Kconfig" +source "board/ip04/Kconfig" +source "board/pr1/Kconfig" +source "board/tcm-bf518/Kconfig" +source "board/tcm-bf537/Kconfig" + +endmenu diff --git a/arch/blackfin/config.mk b/arch/blackfin/config.mk index fcaa44f..7b17b75 100644 --- a/arch/blackfin/config.mk +++ b/arch/blackfin/config.mk @@ -21,7 +21,6 @@ endif CONFIG_BFIN_BOOT_MODE := $(strip $(CONFIG_BFIN_BOOT_MODE:"%"=%)) PLATFORM_RELFLAGS += -ffixed-P3 -fomit-frame-pointer -mno-fdpic -PLATFORM_CPPFLAGS += -DCONFIG_BLACKFIN LDFLAGS_FINAL += --gc-sections LDFLAGS += -m elf32bfin diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig new file mode 100644 index 0000000..6cda7db --- /dev/null +++ b/arch/m68k/Kconfig @@ -0,0 +1,98 @@ +menu "M68000 architecture" + depends on M68K + +config SYS_ARCH + string + default "m68k" + +choice + prompt "Target select" + +config TARGET_M52277EVB + bool "Support M52277EVB" + +config TARGET_M5235EVB + bool "Support M5235EVB" + +config TARGET_COBRA5272 + bool "Support cobra5272" + +config TARGET_EB_CPU5282 + bool "Support eb_cpu5282" + +config TARGET_TASREG + bool "Support TASREG" + +config TARGET_M5208EVBE + bool "Support M5208EVBE" + +config TARGET_M5249EVB + bool "Support M5249EVB" + +config TARGET_M5253DEMO + bool "Support M5253DEMO" + +config TARGET_M5253EVBE + bool "Support M5253EVBE" + +config TARGET_M5272C3 + bool "Support M5272C3" + +config TARGET_M5275EVB + bool "Support M5275EVB" + +config TARGET_M5282EVB + bool "Support M5282EVB" + +config TARGET_ASTRO_MCF5373L + bool "Support astro_mcf5373l" + +config TARGET_M53017EVB + bool "Support M53017EVB" + +config TARGET_M5329EVB + bool "Support M5329EVB" + +config TARGET_M5373EVB + bool "Support M5373EVB" + +config TARGET_M54418TWR + bool "Support M54418TWR" + +config TARGET_M54451EVB + bool "Support M54451EVB" + +config TARGET_M54455EVB + bool "Support M54455EVB" + +config TARGET_M5475EVB + bool "Support M5475EVB" + +config TARGET_M5485EVB + bool "Support M5485EVB" + +endchoice + +source "board/BuS/eb_cpu5282/Kconfig" +source "board/astro/mcf5373l/Kconfig" +source "board/cobra5272/Kconfig" +source "board/esd/tasreg/Kconfig" +source "board/freescale/m5208evbe/Kconfig" +source "board/freescale/m52277evb/Kconfig" +source "board/freescale/m5235evb/Kconfig" +source "board/freescale/m5249evb/Kconfig" +source "board/freescale/m5253demo/Kconfig" +source "board/freescale/m5253evbe/Kconfig" +source "board/freescale/m5272c3/Kconfig" +source "board/freescale/m5275evb/Kconfig" +source "board/freescale/m5282evb/Kconfig" +source "board/freescale/m53017evb/Kconfig" +source "board/freescale/m5329evb/Kconfig" +source "board/freescale/m5373evb/Kconfig" +source "board/freescale/m54418twr/Kconfig" +source "board/freescale/m54451evb/Kconfig" +source "board/freescale/m54455evb/Kconfig" +source "board/freescale/m547xevb/Kconfig" +source "board/freescale/m548xevb/Kconfig" + +endmenu diff --git a/arch/m68k/config.mk b/arch/m68k/config.mk index 33b3d51..3b3a7e8 100644 --- a/arch/m68k/config.mk +++ b/arch/m68k/config.mk @@ -11,7 +11,7 @@ endif CONFIG_STANDALONE_LOAD_ADDR ?= 0x20000 -PLATFORM_CPPFLAGS += -DCONFIG_M68K -D__M68K__ +PLATFORM_CPPFLAGS += -D__M68K__ PLATFORM_LDFLAGS += -n PLATFORM_RELFLAGS += -ffunction-sections -fdata-sections PLATFORM_RELFLAGS += -ffixed-d7 -msep-data diff --git a/arch/m68k/cpu/mcf52x2/config.mk b/arch/m68k/cpu/mcf52x2/config.mk index 34ad99e..f66000b 100644 --- a/arch/m68k/cpu/mcf52x2/config.mk +++ b/arch/m68k/cpu/mcf52x2/config.mk @@ -7,14 +7,14 @@ # SPDX-License-Identifier: GPL-2.0+ # -cfg=$(shell grep configs $(objtree)/include/config.h | sed 's/.*<\(configs.*\)>/\1/') -is5208:=$(shell grep CONFIG_M5208 $(srctree)/include/$(cfg)) -is5249:=$(shell grep CONFIG_M5249 $(srctree)/include/$(cfg)) -is5253:=$(shell grep CONFIG_M5253 $(srctree)/include/$(cfg)) -is5271:=$(shell grep CONFIG_M5271 $(srctree)/include/$(cfg)) -is5272:=$(shell grep CONFIG_M5272 $(srctree)/include/$(cfg)) -is5275:=$(shell grep CONFIG_M5275 $(srctree)/include/$(cfg)) -is5282:=$(shell grep CONFIG_M5282 $(srctree)/include/$(cfg)) +cfg=$(srctree)/include/configs/$(CONFIG_SYS_CONFIG_NAME:"%"=%).h +is5208:=$(shell grep CONFIG_M5208 $(cfg)) +is5249:=$(shell grep CONFIG_M5249 $(cfg)) +is5253:=$(shell grep CONFIG_M5253 $(cfg)) +is5271:=$(shell grep CONFIG_M5271 $(cfg)) +is5272:=$(shell grep CONFIG_M5272 $(cfg)) +is5275:=$(shell grep CONFIG_M5275 $(cfg)) +is5282:=$(shell grep CONFIG_M5282 $(cfg)) ifneq (,$(findstring CONFIG_M5208,$(is5208))) PLATFORM_CPPFLAGS += -mcpu=5208 diff --git a/arch/m68k/cpu/mcf532x/config.mk b/arch/m68k/cpu/mcf532x/config.mk index af94354..2efb60f 100644 --- a/arch/m68k/cpu/mcf532x/config.mk +++ b/arch/m68k/cpu/mcf532x/config.mk @@ -7,9 +7,9 @@ # SPDX-License-Identifier: GPL-2.0+ # -cfg=$(shell grep configs $(objtree)/include/config.h | sed 's/.*<\(configs.*\)>/\1/') -is5301x:=$(shell grep CONFIG_MCF5301x $(srctree)/include/$(cfg)) -is532x:=$(shell grep CONFIG_MCF532x $(srctree)/include/$(cfg)) +cfg=$(srctree)/include/configs/$(CONFIG_SYS_CONFIG_NAME:"%"=%).h +is5301x:=$(shell grep CONFIG_MCF5301x $(cfg)) +is532x:=$(shell grep CONFIG_MCF532x $(cfg)) ifneq (,$(findstring CONFIG_MCF5301x,$(is5301x))) PLATFORM_CPPFLAGS += -mcpu=53015 -fPIC diff --git a/arch/m68k/cpu/mcf5445x/config.mk b/arch/m68k/cpu/mcf5445x/config.mk index 5fd0d4d..13f8a9f 100644 --- a/arch/m68k/cpu/mcf5445x/config.mk +++ b/arch/m68k/cpu/mcf5445x/config.mk @@ -9,8 +9,8 @@ # SPDX-License-Identifier: GPL-2.0+ # -cfg=$(shell grep configs $(objtree)/include/config.h | sed 's/.*<\(configs.*\)>/\1/') -is5441x:=$(shell grep CONFIG_MCF5441x $(srctree)/include/$(cfg)) +cfg=$(srctree)/include/configs/$(CONFIG_SYS_CONFIG_NAME:"%"=%).h +is5441x:=$(shell grep CONFIG_MCF5441x $(cfg)) ifneq (,$(findstring CONFIG_MCF5441x,$(is5441x))) PLATFORM_CPPFLAGS += -mcpu=54418 -fPIC diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig new file mode 100644 index 0000000..ddaa45f --- /dev/null +++ b/arch/microblaze/Kconfig @@ -0,0 +1,18 @@ +menu "MicroBlaze architecture" + depends on MICROBLAZE + +config SYS_ARCH + string + default "microblaze" + +choice + prompt "Target select" + +config TARGET_MICROBLAZE_GENERIC + bool "Support microblaze-generic" + +endchoice + +source "board/xilinx/microblaze-generic/Kconfig" + +endmenu diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig new file mode 100644 index 0000000..5bf0df4 --- /dev/null +++ b/arch/mips/Kconfig @@ -0,0 +1,37 @@ +menu "MIPS architecture" + depends on MIPS + +config SYS_ARCH + string + default "mips" + +choice + prompt "Target select" + +config TARGET_QEMU_MIPS + bool "Support qemu-mips" + +config TARGET_MALTA + bool "Support malta" + +config TARGET_VCT + bool "Support vct" + +config TARGET_DBAU1X00 + bool "Support dbau1x00" + +config TARGET_PB1X00 + bool "Support pb1x00" + +config TARGET_QEMU_MIPS64 + bool "Support qemu-mips64" + +endchoice + +source "board/dbau1x00/Kconfig" +source "board/imgtec/malta/Kconfig" +source "board/micronas/vct/Kconfig" +source "board/pb1x00/Kconfig" +source "board/qemu-mips/Kconfig" + +endmenu diff --git a/arch/mips/config.mk b/arch/mips/config.mk index f4a234a..a2d07af 100644 --- a/arch/mips/config.mk +++ b/arch/mips/config.mk @@ -25,7 +25,7 @@ endif # Default to EB if no endianess is configured ENDIANNESS ?= -EB -PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__ +PLATFORM_CPPFLAGS += -D__MIPS__ __HAVE_ARCH_GENERIC_BOARD := y diff --git a/arch/nds32/Kconfig b/arch/nds32/Kconfig new file mode 100644 index 0000000..743a8fe --- /dev/null +++ b/arch/nds32/Kconfig @@ -0,0 +1,26 @@ +menu "NDS32 architecture" + depends on NDS32 + +config SYS_ARCH + string + default "nds32" + +choice + prompt "Target select" + +config TARGET_ADP_AG101 + bool "Support adp-ag101" + +config TARGET_ADP_AG101P + bool "Support adp-ag101p" + +config TARGET_ADP_AG102 + bool "Support adp-ag102" + +endchoice + +source "board/AndesTech/adp-ag101/Kconfig" +source "board/AndesTech/adp-ag101p/Kconfig" +source "board/AndesTech/adp-ag102/Kconfig" + +endmenu diff --git a/arch/nds32/config.mk b/arch/nds32/config.mk index 1024852..5ac9f90 100644 --- a/arch/nds32/config.mk +++ b/arch/nds32/config.mk @@ -17,6 +17,6 @@ CONFIG_STANDALONE_LOAD_ADDR = 0x300000 \ PLATFORM_RELFLAGS += -fno-strict-aliasing -fno-common -mrelax PLATFORM_RELFLAGS += -gdwarf-2 -PLATFORM_CPPFLAGS += -DCONFIG_NDS32 -D__nds32__ -G0 -ffixed-10 -fpie +PLATFORM_CPPFLAGS += -D__nds32__ -G0 -ffixed-10 -fpie LDFLAGS_u-boot = --gc-sections --relax diff --git a/arch/nios2/Kconfig b/arch/nios2/Kconfig new file mode 100644 index 0000000..b703646 --- /dev/null +++ b/arch/nios2/Kconfig @@ -0,0 +1,26 @@ +menu "Nios II architecture" + depends on NIOS2 + +config SYS_ARCH + string + default "nios2" + +choice + prompt "Target select" + +config TARGET_NIOS2_GENERIC + bool "Support nios2-generic" + +config TARGET_PCI5441 + bool "Support PCI5441" + +config TARGET_PK1C20 + bool "Support PK1C20" + +endchoice + +source "board/altera/nios2-generic/Kconfig" +source "board/psyent/pci5441/Kconfig" +source "board/psyent/pk1c20/Kconfig" + +endmenu diff --git a/arch/nios2/config.mk b/arch/nios2/config.mk index 65a5a40..82bd887 100644 --- a/arch/nios2/config.mk +++ b/arch/nios2/config.mk @@ -12,7 +12,7 @@ endif CONFIG_STANDALONE_LOAD_ADDR ?= 0x02000000 -PLATFORM_CPPFLAGS += -DCONFIG_NIOS2 -D__NIOS2__ +PLATFORM_CPPFLAGS += -D__NIOS2__ PLATFORM_CPPFLAGS += -G0 LDFLAGS_FINAL += --gc-sections diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig new file mode 100644 index 0000000..cc54a2e --- /dev/null +++ b/arch/openrisc/Kconfig @@ -0,0 +1,18 @@ +menu "OpenRISC architecture" + depends on OPENRISC + +config SYS_ARCH + string + default "openrisc" + +choice + prompt "Target select" + +config TARGET_OPENRISC_GENERIC + bool "Support openrisc-generic" + +endchoice + +source "board/openrisc/openrisc-generic/Kconfig" + +endmenu diff --git a/arch/openrisc/config.mk b/arch/openrisc/config.mk index 9902b9a..cd95f24 100644 --- a/arch/openrisc/config.mk +++ b/arch/openrisc/config.mk @@ -11,6 +11,6 @@ endif # r10 used for global object pointer, already set in OR32 GCC but just to be # clear -PLATFORM_CPPFLAGS += -DCONFIG_OPENRISC -D__OR1K__ -ffixed-r10 +PLATFORM_CPPFLAGS += -D__OR1K__ -ffixed-r10 CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000 diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig new file mode 100644 index 0000000..3325af3 --- /dev/null +++ b/arch/powerpc/Kconfig @@ -0,0 +1,58 @@ +menu "PowerPC architecture" + depends on PPC + +config SYS_ARCH + string + default "powerpc" + +choice + prompt "CPU select" + +config 74xx_7xx + bool "74xx" + +config MPC512X + bool "MPC512X" + +config 5xx + bool "MPC5xx" + +config MPC5xxx + bool "MPC5xxx" + +config MPC824X + bool "MPC824X" + +config MPC8260 + bool "MPC8260" + +config MPC83xx + bool "MPC83xx" + +config MPC85xx + bool "MPC85xx" + +config MPC86xx + bool "MPC86xx" + +config 8xx + bool "MPC8xx" + +config 4xx + bool "PPC4xx" + +endchoice + +source "arch/powerpc/cpu/74xx_7xx/Kconfig" +source "arch/powerpc/cpu/mpc512x/Kconfig" +source "arch/powerpc/cpu/mpc5xx/Kconfig" +source "arch/powerpc/cpu/mpc5xxx/Kconfig" +source "arch/powerpc/cpu/mpc824x/Kconfig" +source "arch/powerpc/cpu/mpc8260/Kconfig" +source "arch/powerpc/cpu/mpc83xx/Kconfig" +source "arch/powerpc/cpu/mpc85xx/Kconfig" +source "arch/powerpc/cpu/mpc86xx/Kconfig" +source "arch/powerpc/cpu/mpc8xx/Kconfig" +source "arch/powerpc/cpu/ppc4xx/Kconfig" + +endmenu diff --git a/arch/powerpc/config.mk b/arch/powerpc/config.mk index fb7096e..6329b6c 100644 --- a/arch/powerpc/config.mk +++ b/arch/powerpc/config.mk @@ -13,7 +13,7 @@ CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000 LDFLAGS_FINAL += --gc-sections PLATFORM_RELFLAGS += -fpic -mrelocatable -ffunction-sections -fdata-sections \ -meabi -PLATFORM_CPPFLAGS += -DCONFIG_PPC -D__powerpc__ -ffixed-r2 +PLATFORM_CPPFLAGS += -D__powerpc__ -ffixed-r2 PLATFORM_LDFLAGS += -n # Support generic board on PPC diff --git a/arch/powerpc/cpu/74xx_7xx/Kconfig b/arch/powerpc/cpu/74xx_7xx/Kconfig new file mode 100644 index 0000000..6ce464d --- /dev/null +++ b/arch/powerpc/cpu/74xx_7xx/Kconfig @@ -0,0 +1,49 @@ +menu "74xx_7xx CPU" + depends on 74xx_7xx + +config SYS_CPU + string + default "74xx_7xx" + +choice + prompt "Target select" + +config TARGET_P3G4 + bool "Support P3G4" + +config TARGET_ZUMA + bool "Support ZUMA" + +config TARGET_PPMC7XX + bool "Support ppmc7xx" + +config TARGET_ELPPC + bool "Support ELPPC" + +config TARGET_CPCI750 + bool "Support CPCI750" + +config TARGET_MPC7448HPC2 + bool "Support mpc7448hpc2" + +config TARGET_DB64360 + bool "Support DB64360" + +config TARGET_DB64460 + bool "Support DB64460" + +config TARGET_P3MX + bool "Support p3mx" + +endchoice + +source "board/Marvell/db64360/Kconfig" +source "board/Marvell/db64460/Kconfig" +source "board/eltec/elppc/Kconfig" +source "board/esd/cpci750/Kconfig" +source "board/evb64260/Kconfig" +source "board/freescale/mpc7448hpc2/Kconfig" +source "board/ppmc7xx/Kconfig" +source "board/prodrive/p3mx/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/74xx_7xx/config.mk b/arch/powerpc/cpu/74xx_7xx/config.mk index 96812a0..4cd1a26 100644 --- a/arch/powerpc/cpu/74xx_7xx/config.mk +++ b/arch/powerpc/cpu/74xx_7xx/config.mk @@ -5,4 +5,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_74xx_7xx -mstring +PLATFORM_CPPFLAGS += -mstring diff --git a/arch/powerpc/cpu/mpc512x/Kconfig b/arch/powerpc/cpu/mpc512x/Kconfig new file mode 100644 index 0000000..bfc4eae --- /dev/null +++ b/arch/powerpc/cpu/mpc512x/Kconfig @@ -0,0 +1,34 @@ +menu "mpc512x CPU" + depends on MPC512X + +config SYS_CPU + string + default "mpc512x" + +choice + prompt "Target select" + +config TARGET_PDM360NG + bool "Support pdm360ng" + +config TARGET_ARIA + bool "Support aria" + +config TARGET_MECP5123 + bool "Support mecp5123" + +config TARGET_MPC5121ADS + bool "Support mpc5121ads" + +config TARGET_AC14XX + bool "Support ac14xx" + +endchoice + +source "board/davedenx/aria/Kconfig" +source "board/esd/mecp5123/Kconfig" +source "board/freescale/mpc5121ads/Kconfig" +source "board/ifm/ac14xx/Kconfig" +source "board/pdm360ng/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc512x/config.mk b/arch/powerpc/cpu/mpc512x/config.mk index 03759e6..5bf1b2a 100644 --- a/arch/powerpc/cpu/mpc512x/config.mk +++ b/arch/powerpc/cpu/mpc512x/config.mk @@ -4,4 +4,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_MPC512X -DCONFIG_E300 -msoft-float -mcpu=603e +PLATFORM_CPPFLAGS += -DCONFIG_E300 -msoft-float -mcpu=603e diff --git a/arch/powerpc/cpu/mpc5xx/Kconfig b/arch/powerpc/cpu/mpc5xx/Kconfig new file mode 100644 index 0000000..79579d7 --- /dev/null +++ b/arch/powerpc/cpu/mpc5xx/Kconfig @@ -0,0 +1,22 @@ +menu "mpc5xx CPU" + depends on 5xx + +config SYS_CPU + string + default "mpc5xx" + +choice + prompt "Target select" + +config TARGET_CMI_MPC5XX + bool "Support cmi_mpc5xx" + +config TARGET_PATI + bool "Support PATI" + +endchoice + +source "board/cmi/Kconfig" +source "board/mpl/pati/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc5xx/config.mk b/arch/powerpc/cpu/mpc5xx/config.mk index 31e2dc9..dd2ec37 100644 --- a/arch/powerpc/cpu/mpc5xx/config.mk +++ b/arch/powerpc/cpu/mpc5xx/config.mk @@ -5,4 +5,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_5xx -mpowerpc -msoft-float +PLATFORM_CPPFLAGS += -mpowerpc -msoft-float diff --git a/arch/powerpc/cpu/mpc5xxx/Kconfig b/arch/powerpc/cpu/mpc5xxx/Kconfig new file mode 100644 index 0000000..b2f0bad --- /dev/null +++ b/arch/powerpc/cpu/mpc5xxx/Kconfig @@ -0,0 +1,154 @@ +menu "mpc5xxx CPU" + depends on MPC5xxx + +config SYS_CPU + string + default "mpc5xxx" + +choice + prompt "Target select" + +config TARGET_A3M071 + bool "Support a3m071" + +config TARGET_A4M072 + bool "Support a4m072" + +config TARGET_BC3450 + bool "Support BC3450" + +config TARGET_CANMB + bool "Support canmb" + +config TARGET_CM5200 + bool "Support cm5200" + +config TARGET_GALAXY5200 + bool "Support galaxy5200" + +config TARGET_ICECUBE + bool "Support IceCube" + +config TARGET_INKA4X0 + bool "Support inka4x0" + +config TARGET_IPEK01 + bool "Support ipek01" + +config TARGET_JUPITER + bool "Support jupiter" + +config TARGET_MCC200 + bool "Support mcc200" + +config TARGET_MOTIONPRO + bool "Support motionpro" + +config TARGET_MUNICES + bool "Support munices" + +config TARGET_PM520 + bool "Support PM520" + +config TARGET_TOTAL5200 + bool "Support Total5200" + +config TARGET_V38B + bool "Support v38b" + +config TARGET_TOP5200 + bool "Support TOP5200" + +config TARGET_CPCI5200 + bool "Support cpci5200" + +config TARGET_MECP5200 + bool "Support mecp5200" + +config TARGET_PF5200 + bool "Support pf5200" + +config TARGET_O2D + bool "Support O2D" + +config TARGET_O2D300 + bool "Support O2D300" + +config TARGET_O2DNT2 + bool "Support O2DNT2" + +config TARGET_O2I + bool "Support O2I" + +config TARGET_O2MNT + bool "Support O2MNT" + +config TARGET_O3DNT + bool "Support O3DNT" + +config TARGET_DIGSY_MTC + bool "Support digsy_mtc" + +config TARGET_HMI1001 + bool "Support hmi1001" + +config TARGET_MUCMC52 + bool "Support mucmc52" + +config TARGET_UC101 + bool "Support uc101" + +config TARGET_MVBC_P + bool "Support MVBC_P" + +config TARGET_MVSMR + bool "Support MVSMR" + +config TARGET_PCM030 + bool "Support pcm030" + +config TARGET_AEV + bool "Support aev" + +config TARGET_CHARON + bool "Support charon" + +config TARGET_TB5200 + bool "Support TB5200" + +config TARGET_TQM5200 + bool "Support TQM5200" + +endchoice + +source "board/a3m071/Kconfig" +source "board/a4m072/Kconfig" +source "board/bc3450/Kconfig" +source "board/canmb/Kconfig" +source "board/cm5200/Kconfig" +source "board/emk/top5200/Kconfig" +source "board/esd/cpci5200/Kconfig" +source "board/esd/mecp5200/Kconfig" +source "board/esd/pf5200/Kconfig" +source "board/galaxy5200/Kconfig" +source "board/icecube/Kconfig" +source "board/ifm/o2dnt2/Kconfig" +source "board/inka4x0/Kconfig" +source "board/intercontrol/digsy_mtc/Kconfig" +source "board/ipek01/Kconfig" +source "board/jupiter/Kconfig" +source "board/manroland/hmi1001/Kconfig" +source "board/manroland/mucmc52/Kconfig" +source "board/manroland/uc101/Kconfig" +source "board/matrix_vision/mvbc_p/Kconfig" +source "board/matrix_vision/mvsmr/Kconfig" +source "board/mcc200/Kconfig" +source "board/motionpro/Kconfig" +source "board/munices/Kconfig" +source "board/phytec/pcm030/Kconfig" +source "board/pm520/Kconfig" +source "board/total5200/Kconfig" +source "board/tqc/tqm5200/Kconfig" +source "board/v38b/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc5xxx/config.mk b/arch/powerpc/cpu/mpc5xxx/config.mk index 3384f6f..bcff214 100644 --- a/arch/powerpc/cpu/mpc5xxx/config.mk +++ b/arch/powerpc/cpu/mpc5xxx/config.mk @@ -5,5 +5,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_MPC5xxx \ - -mstring -mcpu=603e -mmultiple +PLATFORM_CPPFLAGS += -mstring -mcpu=603e -mmultiple diff --git a/arch/powerpc/cpu/mpc824x/Kconfig b/arch/powerpc/cpu/mpc824x/Kconfig new file mode 100644 index 0000000..309833f --- /dev/null +++ b/arch/powerpc/cpu/mpc824x/Kconfig @@ -0,0 +1,49 @@ +menu "mpc824x CPU" + depends on MPC824X + +config SYS_CPU + string + default "mpc824x" + +choice + prompt "Target select" + +config TARGET_A3000 + bool "Support A3000" + +config TARGET_CPC45 + bool "Support CPC45" + +config TARGET_CU824 + bool "Support CU824" + +config TARGET_EXALION + bool "Support eXalion" + +config TARGET_MUSENKI + bool "Support MUSENKI" + +config TARGET_MVBLUE + bool "Support MVBLUE" + +config TARGET_SANDPOINT8240 + bool "Support Sandpoint8240" + +config TARGET_SANDPOINT8245 + bool "Support Sandpoint8245" + +config TARGET_UTX8245 + bool "Support utx8245" + +endchoice + +source "board/a3000/Kconfig" +source "board/cpc45/Kconfig" +source "board/cu824/Kconfig" +source "board/eXalion/Kconfig" +source "board/musenki/Kconfig" +source "board/mvblue/Kconfig" +source "board/sandpoint/Kconfig" +source "board/utx8245/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc824x/config.mk b/arch/powerpc/cpu/mpc824x/config.mk index a224bc8..ecfb07e 100644 --- a/arch/powerpc/cpu/mpc824x/config.mk +++ b/arch/powerpc/cpu/mpc824x/config.mk @@ -5,4 +5,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_MPC824X -mstring -mcpu=603e -msoft-float +PLATFORM_CPPFLAGS += -mstring -mcpu=603e -msoft-float diff --git a/arch/powerpc/cpu/mpc8260/Kconfig b/arch/powerpc/cpu/mpc8260/Kconfig new file mode 100644 index 0000000..1a8707d --- /dev/null +++ b/arch/powerpc/cpu/mpc8260/Kconfig @@ -0,0 +1,94 @@ +menu "mpc8260 CPU" + depends on MPC8260 + +config SYS_CPU + string + default "mpc8260" + +choice + prompt "Target select" + +config TARGET_ATC + bool "Support atc" + +config TARGET_COGENT_MPC8260 + bool "Support cogent_mpc8260" + +config TARGET_CPU86 + bool "Support CPU86" + +config TARGET_CPU87 + bool "Support CPU87" + +config TARGET_EP8260 + bool "Support ep8260" + +config TARGET_EP82XXM + bool "Support ep82xxm" + +config TARGET_GW8260 + bool "Support gw8260" + +config TARGET_HYMOD + bool "Support hymod" + +config TARGET_IPHASE4539 + bool "Support IPHASE4539" + +config TARGET_MUAS3001 + bool "Support muas3001" + +config TARGET_PM826 + bool "Support PM826" + +config TARGET_PM828 + bool "Support PM828" + +config TARGET_PPMC8260 + bool "Support ppmc8260" + +config TARGET_SACSNG + bool "Support sacsng" + +config TARGET_MPC8266ADS + bool "Support MPC8266ADS" + +config TARGET_VOVPN_GW + bool "Support VoVPN-GW" + +config TARGET_IDS8247 + bool "Support IDS8247" + +config TARGET_KM82XX + bool "Support km82xx" + +config TARGET_TQM8260 + bool "Support TQM8260" + +config TARGET_TQM8272 + bool "Support TQM8272" + +endchoice + +source "board/atc/Kconfig" +source "board/cogent/Kconfig" +source "board/cpu86/Kconfig" +source "board/cpu87/Kconfig" +source "board/ep8260/Kconfig" +source "board/ep82xxm/Kconfig" +source "board/freescale/mpc8266ads/Kconfig" +source "board/funkwerk/vovpn-gw/Kconfig" +source "board/gw8260/Kconfig" +source "board/hymod/Kconfig" +source "board/ids/ids8247/Kconfig" +source "board/iphase4539/Kconfig" +source "board/keymile/km82xx/Kconfig" +source "board/muas3001/Kconfig" +source "board/pm826/Kconfig" +source "board/pm828/Kconfig" +source "board/ppmc8260/Kconfig" +source "board/sacsng/Kconfig" +source "board/tqc/tqm8260/Kconfig" +source "board/tqc/tqm8272/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc8260/config.mk b/arch/powerpc/cpu/mpc8260/config.mk index 59f152d..6a1b6e3 100644 --- a/arch/powerpc/cpu/mpc8260/config.mk +++ b/arch/powerpc/cpu/mpc8260/config.mk @@ -5,5 +5,5 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_MPC8260 -DCONFIG_CPM2 \ +PLATFORM_CPPFLAGS += -DCONFIG_CPM2 \ -mstring -mcpu=603e -mmultiple diff --git a/arch/powerpc/cpu/mpc83xx/Kconfig b/arch/powerpc/cpu/mpc83xx/Kconfig new file mode 100644 index 0000000..5fd3393 --- /dev/null +++ b/arch/powerpc/cpu/mpc83xx/Kconfig @@ -0,0 +1,100 @@ +menu "mpc83xx CPU" + depends on MPC83xx + +config SYS_CPU + string + default "mpc83xx" + +choice + prompt "Target select" + +config TARGET_MPC8308_P1M + bool "Support mpc8308_p1m" + +config TARGET_SBC8349 + bool "Support sbc8349" + +config TARGET_VE8313 + bool "Support ve8313" + +config TARGET_VME8349 + bool "Support vme8349" + +config TARGET_MPC8308RDB + bool "Support MPC8308RDB" + +config TARGET_MPC8313ERDB + bool "Support MPC8313ERDB" + +config TARGET_MPC8315ERDB + bool "Support MPC8315ERDB" + +config TARGET_MPC8323ERDB + bool "Support MPC8323ERDB" + +config TARGET_MPC832XEMDS + bool "Support MPC832XEMDS" + +config TARGET_MPC8349EMDS + bool "Support MPC8349EMDS" + +config TARGET_MPC8349ITX + bool "Support MPC8349ITX" + +config TARGET_MPC8360EMDS + bool "Support MPC8360EMDS" + +config TARGET_MPC8360ERDK + bool "Support MPC8360ERDK" + +config TARGET_MPC837XEMDS + bool "Support MPC837XEMDS" + +config TARGET_MPC837XERDB + bool "Support MPC837XERDB" + +config TARGET_IDS8313 + bool "Support ids8313" + +config TARGET_KM8360 + bool "Support km8360" + +config TARGET_SUVD3 + bool "Support suvd3" + +config TARGET_TUXX1 + bool "Support tuxx1" + +config TARGET_MERGERBOX + bool "Support MERGERBOX" + +config TARGET_MVBLM7 + bool "Support MVBLM7" + +config TARGET_TQM834X + bool "Support TQM834x" + +endchoice + +source "board/esd/vme8349/Kconfig" +source "board/freescale/mpc8308rdb/Kconfig" +source "board/freescale/mpc8313erdb/Kconfig" +source "board/freescale/mpc8315erdb/Kconfig" +source "board/freescale/mpc8323erdb/Kconfig" +source "board/freescale/mpc832xemds/Kconfig" +source "board/freescale/mpc8349emds/Kconfig" +source "board/freescale/mpc8349itx/Kconfig" +source "board/freescale/mpc8360emds/Kconfig" +source "board/freescale/mpc8360erdk/Kconfig" +source "board/freescale/mpc837xemds/Kconfig" +source "board/freescale/mpc837xerdb/Kconfig" +source "board/ids/ids8313/Kconfig" +source "board/keymile/km83xx/Kconfig" +source "board/matrix_vision/mergerbox/Kconfig" +source "board/matrix_vision/mvblm7/Kconfig" +source "board/mpc8308_p1m/Kconfig" +source "board/sbc8349/Kconfig" +source "board/tqc/tqm834x/Kconfig" +source "board/ve8313/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc83xx/config.mk b/arch/powerpc/cpu/mpc83xx/config.mk index dfce4d5..0c08350 100644 --- a/arch/powerpc/cpu/mpc83xx/config.mk +++ b/arch/powerpc/cpu/mpc83xx/config.mk @@ -4,4 +4,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_MPC83xx -DCONFIG_E300 -msoft-float +PLATFORM_CPPFLAGS += -DCONFIG_E300 -msoft-float diff --git a/arch/powerpc/cpu/mpc83xx/cpu.c b/arch/powerpc/cpu/mpc83xx/cpu.c index e41988d..3809309 100644 --- a/arch/powerpc/cpu/mpc83xx/cpu.c +++ b/arch/powerpc/cpu/mpc83xx/cpu.c @@ -20,7 +20,7 @@ #include <netdev.h> #include <fsl_esdhc.h> #if defined(CONFIG_BOOTCOUNT_LIMIT) && !defined(CONFIG_MPC831x) -#include <asm/immap_qe.h> +#include <linux/immap_qe.h> #include <asm/io.h> #endif diff --git a/arch/powerpc/cpu/mpc83xx/fdt.c b/arch/powerpc/cpu/mpc83xx/fdt.c index 450a970..f249a58 100644 --- a/arch/powerpc/cpu/mpc83xx/fdt.c +++ b/arch/powerpc/cpu/mpc83xx/fdt.c @@ -18,7 +18,7 @@ DECLARE_GLOBAL_DATA_PTR; #if defined(CONFIG_BOOTCOUNT_LIMIT) && \ (defined(CONFIG_QE) && !defined(CONFIG_MPC831x)) -#include <asm/immap_qe.h> +#include <linux/immap_qe.h> void fdt_fixup_muram (void *blob) { diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig new file mode 100644 index 0000000..0f70380 --- /dev/null +++ b/arch/powerpc/cpu/mpc85xx/Kconfig @@ -0,0 +1,190 @@ +menu "mpc85xx CPU" + depends on MPC85xx + +config SYS_CPU + string + default "mpc85xx" + +choice + prompt "Target select" + +config TARGET_SBC8548 + bool "Support sbc8548" + +config TARGET_SOCRATES + bool "Support socrates" + +config TARGET_HWW1U1A + bool "Support HWW1U1A" + +config TARGET_B4860QDS + bool "Support B4860QDS" + +config TARGET_BSC9131RDB + bool "Support BSC9131RDB" + +config TARGET_BSC9132QDS + bool "Support BSC9132QDS" + +config TARGET_C29XPCIE + bool "Support C29XPCIE" + +config TARGET_P3041DS + bool "Support P3041DS" + +config TARGET_P4080DS + bool "Support P4080DS" + +config TARGET_P5020DS + bool "Support P5020DS" + +config TARGET_P5040DS + bool "Support P5040DS" + +config TARGET_MPC8536DS + bool "Support MPC8536DS" + +config TARGET_MPC8540ADS + bool "Support MPC8540ADS" + +config TARGET_MPC8541CDS + bool "Support MPC8541CDS" + +config TARGET_MPC8544DS + bool "Support MPC8544DS" + +config TARGET_MPC8548CDS + bool "Support MPC8548CDS" + +config TARGET_MPC8555CDS + bool "Support MPC8555CDS" + +config TARGET_MPC8560ADS + bool "Support MPC8560ADS" + +config TARGET_MPC8568MDS + bool "Support MPC8568MDS" + +config TARGET_MPC8569MDS + bool "Support MPC8569MDS" + +config TARGET_MPC8572DS + bool "Support MPC8572DS" + +config TARGET_P1010RDB + bool "Support P1010RDB" + +config TARGET_P1022DS + bool "Support P1022DS" + +config TARGET_P1023RDB + bool "Support P1023RDB" + +config TARGET_P1_P2_RDB + bool "Support P1_P2_RDB" + +config TARGET_P1_P2_RDB_PC + bool "Support p1_p2_rdb_pc" + +config TARGET_P1_TWR + bool "Support p1_twr" + +config TARGET_P2020COME + bool "Support P2020COME" + +config TARGET_P2020DS + bool "Support P2020DS" + +config TARGET_P2041RDB + bool "Support P2041RDB" + +config TARGET_QEMU_PPCE500 + bool "Support qemu-ppce500" + +config TARGET_T1040QDS + bool "Support T1040QDS" + +config TARGET_T104XRDB + bool "Support T104xRDB" + +config TARGET_T208XQDS + bool "Support T208xQDS" + +config TARGET_T208XRDB + bool "Support T208xRDB" + +config TARGET_T4240EMU + bool "Support T4240EMU" + +config TARGET_T4240QDS + bool "Support T4240QDS" + +config TARGET_T4240RDB + bool "Support T4240RDB" + +config TARGET_CONTROLCENTERD + bool "Support controlcenterd" + +config TARGET_KMP204X + bool "Support kmp204x" + +config TARGET_STXGP3 + bool "Support stxgp3" + +config TARGET_STXSSA + bool "Support stxssa" + +config TARGET_XPEDITE520X + bool "Support xpedite520x" + +config TARGET_XPEDITE537X + bool "Support xpedite537x" + +config TARGET_XPEDITE550X + bool "Support xpedite550x" + +endchoice + +source "board/exmeritus/hww1u1a/Kconfig" +source "board/freescale/b4860qds/Kconfig" +source "board/freescale/bsc9131rdb/Kconfig" +source "board/freescale/bsc9132qds/Kconfig" +source "board/freescale/c29xpcie/Kconfig" +source "board/freescale/corenet_ds/Kconfig" +source "board/freescale/mpc8536ds/Kconfig" +source "board/freescale/mpc8540ads/Kconfig" +source "board/freescale/mpc8541cds/Kconfig" +source "board/freescale/mpc8544ds/Kconfig" +source "board/freescale/mpc8548cds/Kconfig" +source "board/freescale/mpc8555cds/Kconfig" +source "board/freescale/mpc8560ads/Kconfig" +source "board/freescale/mpc8568mds/Kconfig" +source "board/freescale/mpc8569mds/Kconfig" +source "board/freescale/mpc8572ds/Kconfig" +source "board/freescale/p1010rdb/Kconfig" +source "board/freescale/p1022ds/Kconfig" +source "board/freescale/p1023rdb/Kconfig" +source "board/freescale/p1_p2_rdb/Kconfig" +source "board/freescale/p1_p2_rdb_pc/Kconfig" +source "board/freescale/p1_twr/Kconfig" +source "board/freescale/p2020come/Kconfig" +source "board/freescale/p2020ds/Kconfig" +source "board/freescale/p2041rdb/Kconfig" +source "board/freescale/qemu-ppce500/Kconfig" +source "board/freescale/t1040qds/Kconfig" +source "board/freescale/t104xrdb/Kconfig" +source "board/freescale/t208xqds/Kconfig" +source "board/freescale/t208xrdb/Kconfig" +source "board/freescale/t4qds/Kconfig" +source "board/freescale/t4rdb/Kconfig" +source "board/gdsys/p1022/Kconfig" +source "board/keymile/kmp204x/Kconfig" +source "board/sbc8548/Kconfig" +source "board/socrates/Kconfig" +source "board/stx/stxgp3/Kconfig" +source "board/stx/stxssa/Kconfig" +source "board/xes/xpedite520x/Kconfig" +source "board/xes/xpedite537x/Kconfig" +source "board/xes/xpedite550x/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc85xx/config.mk b/arch/powerpc/cpu/mpc85xx/config.mk index 1470f95..72c964c 100644 --- a/arch/powerpc/cpu/mpc85xx/config.mk +++ b/arch/powerpc/cpu/mpc85xx/config.mk @@ -5,7 +5,7 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_MPC85xx -Wa,-me500 -msoft-float -mno-string +PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string # -mspe=yes is needed to have -mno-spe accepted by a buggy GCC; # see "[PATCH,rs6000] make -mno-spe work as expected" on diff --git a/arch/powerpc/cpu/mpc85xx/cpu.c b/arch/powerpc/cpu/mpc85xx/cpu.c index 684d400..6274f92 100644 --- a/arch/powerpc/cpu/mpc85xx/cpu.c +++ b/arch/powerpc/cpu/mpc85xx/cpu.c @@ -310,6 +310,14 @@ __weak unsigned long get_tbclk (void) #if defined(CONFIG_WATCHDOG) +#define WATCHDOG_MASK (TCR_WP(63) | TCR_WRC(3) | TCR_WIE) +void +init_85xx_watchdog(void) +{ + mtspr(SPRN_TCR, (mfspr(SPRN_TCR) & ~WATCHDOG_MASK) | + TCR_WP(CONFIG_WATCHDOG_PRESC) | TCR_WRC(CONFIG_WATCHDOG_RC)); +} + void reset_85xx_watchdog(void) { diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c b/arch/powerpc/cpu/mpc85xx/cpu_init.c index 78316a6..b237505 100644 --- a/arch/powerpc/cpu/mpc85xx/cpu_init.c +++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c @@ -200,7 +200,7 @@ void config_8560_ioports (volatile ccsr_cpm_t * cpm) #ifdef CONFIG_SYS_FSL_CPC #if defined(CONFIG_RAMBOOT_PBL) || defined(CONFIG_SYS_CPC_REINIT_F) -static void disable_cpc_sram(void) +void disable_cpc_sram(void) { int i; @@ -251,7 +251,7 @@ static void enable_tdm_law(void) } #endif -static void enable_cpc(void) +void enable_cpc(void) { int i; u32 size = 0; @@ -306,6 +306,7 @@ static void invalidate_cpc(void) #else #define enable_cpc() #define invalidate_cpc() +#define disable_cpc_sram() #endif /* CONFIG_SYS_FSL_CPC */ /* @@ -520,7 +521,8 @@ int enable_cluster_l2(void) u32 idx = (cluster >> (j*8)) & TP_CLUSTER_INIT_MASK; u32 type = in_be32(&gur->tp_ityp[idx]); - if (type & TP_ITYP_AV) + if ((type & TP_ITYP_AV) && + TP_ITYP_TYPE(type) == TP_ITYP_TYPE_PPC) cluster_valid = 1; } @@ -545,88 +547,15 @@ int enable_cluster_l2(void) /* * Initialize L2 as cache. - * - * The newer 8548, etc, parts have twice as much cache, but - * use the same bit-encoding as the older 8555, etc, parts. - * */ -int cpu_init_r(void) +int l2cache_init(void) { __maybe_unused u32 svr = get_svr(); -#ifdef CONFIG_SYS_LBC_LCRR - fsl_lbc_t *lbc = (void __iomem *)LBC_BASE_ADDR; -#endif #ifdef CONFIG_L2_CACHE ccsr_l2cache_t *l2cache = (void __iomem *)CONFIG_SYS_MPC85xx_L2_ADDR; #elif defined(CONFIG_SYS_FSL_QORIQ_CHASSIS2) && defined(CONFIG_E6500) struct ccsr_cluster_l2 * l2cache = (void __iomem *)CONFIG_SYS_FSL_CLUSTER_1_L2; #endif -#if defined(CONFIG_PPC_SPINTABLE_COMPATIBLE) && defined(CONFIG_MP) - extern int spin_table_compat; - const char *spin; -#endif -#ifdef CONFIG_SYS_FSL_ERRATUM_SEC_A003571 - ccsr_sec_t __iomem *sec = (void *)CONFIG_SYS_FSL_SEC_ADDR; -#endif -#if defined(CONFIG_SYS_P4080_ERRATUM_CPU22) || \ - defined(CONFIG_SYS_FSL_ERRATUM_NMG_CPU_A011) - /* - * CPU22 and NMG_CPU_A011 share the same workaround. - * CPU22 applies to P4080 rev 1.0, 2.0, fixed in 3.0 - * NMG_CPU_A011 applies to P4080 rev 1.0, 2.0, fixed in 3.0 - * also applies to P3041 rev 1.0, 1.1, P2041 rev 1.0, 1.1, both - * fixed in 2.0. NMG_CPU_A011 is activated by default and can - * be disabled by hwconfig with syntax: - * - * fsl_cpu_a011:disable - */ - extern int enable_cpu_a011_workaround; -#ifdef CONFIG_SYS_P4080_ERRATUM_CPU22 - enable_cpu_a011_workaround = (SVR_MAJ(svr) < 3); -#else - char buffer[HWCONFIG_BUFFER_SIZE]; - char *buf = NULL; - int n, res; - - n = getenv_f("hwconfig", buffer, sizeof(buffer)); - if (n > 0) - buf = buffer; - - res = hwconfig_arg_cmp_f("fsl_cpu_a011", "disable", buf); - if (res > 0) - enable_cpu_a011_workaround = 0; - else { - if (n >= HWCONFIG_BUFFER_SIZE) { - printf("fsl_cpu_a011 was not found. hwconfig variable " - "may be too long\n"); - } - enable_cpu_a011_workaround = - (SVR_SOC_VER(svr) == SVR_P4080 && SVR_MAJ(svr) < 3) || - (SVR_SOC_VER(svr) != SVR_P4080 && SVR_MAJ(svr) < 2); - } -#endif - if (enable_cpu_a011_workaround) { - flush_dcache(); - mtspr(L1CSR2, (mfspr(L1CSR2) | L1CSR2_DCWS)); - sync(); - } -#endif -#ifdef CONFIG_SYS_FSL_ERRATUM_A005812 - /* - * A-005812 workaround sets bit 32 of SPR 976 for SoCs running - * in write shadow mode. Checking DCWS before setting SPR 976. - */ - if (mfspr(L1CSR2) & L1CSR2_DCWS) - mtspr(SPRN_HDBCR0, (mfspr(SPRN_HDBCR0) | 0x80000000)); -#endif - -#if defined(CONFIG_PPC_SPINTABLE_COMPATIBLE) && defined(CONFIG_MP) - spin = getenv("spin_table_compat"); - if (spin && (*spin == 'n')) - spin_table_compat = 0; - else - spin_table_compat = 1; -#endif puts ("L2: "); @@ -751,6 +680,89 @@ skip_l2: puts("disabled\n"); #endif + return 0; +} + +/* + * + * The newer 8548, etc, parts have twice as much cache, but + * use the same bit-encoding as the older 8555, etc, parts. + * + */ +int cpu_init_r(void) +{ + __maybe_unused u32 svr = get_svr(); +#ifdef CONFIG_SYS_LBC_LCRR + fsl_lbc_t *lbc = (void __iomem *)LBC_BASE_ADDR; +#endif +#if defined(CONFIG_PPC_SPINTABLE_COMPATIBLE) && defined(CONFIG_MP) + extern int spin_table_compat; + const char *spin; +#endif +#ifdef CONFIG_SYS_FSL_ERRATUM_SEC_A003571 + ccsr_sec_t __iomem *sec = (void *)CONFIG_SYS_FSL_SEC_ADDR; +#endif +#if defined(CONFIG_SYS_P4080_ERRATUM_CPU22) || \ + defined(CONFIG_SYS_FSL_ERRATUM_NMG_CPU_A011) + /* + * CPU22 and NMG_CPU_A011 share the same workaround. + * CPU22 applies to P4080 rev 1.0, 2.0, fixed in 3.0 + * NMG_CPU_A011 applies to P4080 rev 1.0, 2.0, fixed in 3.0 + * also applies to P3041 rev 1.0, 1.1, P2041 rev 1.0, 1.1, both + * fixed in 2.0. NMG_CPU_A011 is activated by default and can + * be disabled by hwconfig with syntax: + * + * fsl_cpu_a011:disable + */ + extern int enable_cpu_a011_workaround; +#ifdef CONFIG_SYS_P4080_ERRATUM_CPU22 + enable_cpu_a011_workaround = (SVR_MAJ(svr) < 3); +#else + char buffer[HWCONFIG_BUFFER_SIZE]; + char *buf = NULL; + int n, res; + + n = getenv_f("hwconfig", buffer, sizeof(buffer)); + if (n > 0) + buf = buffer; + + res = hwconfig_arg_cmp_f("fsl_cpu_a011", "disable", buf); + if (res > 0) { + enable_cpu_a011_workaround = 0; + } else { + if (n >= HWCONFIG_BUFFER_SIZE) { + printf("fsl_cpu_a011 was not found. hwconfig variable " + "may be too long\n"); + } + enable_cpu_a011_workaround = + (SVR_SOC_VER(svr) == SVR_P4080 && SVR_MAJ(svr) < 3) || + (SVR_SOC_VER(svr) != SVR_P4080 && SVR_MAJ(svr) < 2); + } +#endif + if (enable_cpu_a011_workaround) { + flush_dcache(); + mtspr(L1CSR2, (mfspr(L1CSR2) | L1CSR2_DCWS)); + sync(); + } +#endif +#ifdef CONFIG_SYS_FSL_ERRATUM_A005812 + /* + * A-005812 workaround sets bit 32 of SPR 976 for SoCs running + * in write shadow mode. Checking DCWS before setting SPR 976. + */ + if (mfspr(L1CSR2) & L1CSR2_DCWS) + mtspr(SPRN_HDBCR0, (mfspr(SPRN_HDBCR0) | 0x80000000)); +#endif + +#if defined(CONFIG_PPC_SPINTABLE_COMPATIBLE) && defined(CONFIG_MP) + spin = getenv("spin_table_compat"); + if (spin && (*spin == 'n')) + spin_table_compat = 0; + else + spin_table_compat = 1; +#endif + + l2cache_init(); #if defined(CONFIG_RAMBOOT_PBL) disable_cpc_sram(); #endif diff --git a/arch/powerpc/cpu/mpc85xx/fdt.c b/arch/powerpc/cpu/mpc85xx/fdt.c index 85dfa5b..3665ec6 100644 --- a/arch/powerpc/cpu/mpc85xx/fdt.c +++ b/arch/powerpc/cpu/mpc85xx/fdt.c @@ -612,6 +612,51 @@ static void fdt_fixup_usb(void *fdt) #define fdt_fixup_usb(x) #endif +#if defined(CONFIG_PPC_T2080) || defined(CONFIG_PPC_T4240) || \ + defined(CONFIG_PPC_T4160) || defined(CONFIG_PPC_T4080) +void fdt_fixup_dma3(void *blob) +{ + /* the 3rd DMA is not functional if SRIO2 is chosen */ + int nodeoff; + ccsr_gur_t __iomem *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR); + +#define CONFIG_SYS_ELO3_DMA3 (0xffe000000 + 0x102300) +#if defined(CONFIG_PPC_T2080) + u32 srds_prtcl_s2 = in_be32(&gur->rcwsr[4]) & + FSL_CORENET2_RCWSR4_SRDS2_PRTCL; + srds_prtcl_s2 >>= FSL_CORENET2_RCWSR4_SRDS2_PRTCL_SHIFT; + + switch (srds_prtcl_s2) { + case 0x29: + case 0x2d: + case 0x2e: +#elif defined(CONFIG_PPC_T4240) || defined(CONFIG_PPC_T4160) || \ + defined(CONFIG_PPC_T4080) + u32 srds_prtcl_s4 = in_be32(&gur->rcwsr[4]) & + FSL_CORENET2_RCWSR4_SRDS4_PRTCL; + srds_prtcl_s4 >>= FSL_CORENET2_RCWSR4_SRDS4_PRTCL_SHIFT; + + switch (srds_prtcl_s4) { + case 6: + case 8: + case 14: + case 16: +#endif + nodeoff = fdt_node_offset_by_compat_reg(blob, "fsl,elo3-dma", + CONFIG_SYS_ELO3_DMA3); + if (nodeoff > 0) + fdt_status_disabled(blob, nodeoff); + else + printf("WARNING: unable to disable dma3\n"); + break; + default: + break; + } +} +#else +#define fdt_fixup_dma3(x) +#endif + #if defined(CONFIG_PPC_T1040) static void fdt_fixup_l2_switch(void *blob) { @@ -778,6 +823,8 @@ void ft_cpu_setup(void *blob, bd_t *bd) fdt_fixup_usb(blob); fdt_fixup_l2_switch(blob); + + fdt_fixup_dma3(blob); } /* diff --git a/arch/powerpc/cpu/mpc85xx/interrupts.c b/arch/powerpc/cpu/mpc85xx/interrupts.c index a36a4af..daf46a9 100644 --- a/arch/powerpc/cpu/mpc85xx/interrupts.c +++ b/arch/powerpc/cpu/mpc85xx/interrupts.c @@ -42,7 +42,7 @@ int interrupt_init_cpu(unsigned int *decrementer_count) *decrementer_count = get_tbclk() / CONFIG_SYS_HZ; /* PIE is same as DIE, dec interrupt enable */ - mtspr(SPRN_TCR, TCR_PIE); + mtspr(SPRN_TCR, mfspr(SPRN_TCR) | TCR_PIE); #ifdef CONFIG_INTERRUPTS pic->iivpr1 = 0x810001; /* 50220 enable ecm interrupts */ diff --git a/arch/powerpc/cpu/mpc86xx/Kconfig b/arch/powerpc/cpu/mpc86xx/Kconfig new file mode 100644 index 0000000..f0ff441 --- /dev/null +++ b/arch/powerpc/cpu/mpc86xx/Kconfig @@ -0,0 +1,30 @@ +menu "mpc86xx CPU" + depends on MPC86xx + +config SYS_CPU + string + default "mpc86xx" + +choice + prompt "Target select" + +config TARGET_SBC8641D + bool "Support sbc8641d" + +config TARGET_MPC8610HPCD + bool "Support MPC8610HPCD" + +config TARGET_MPC8641HPCN + bool "Support MPC8641HPCN" + +config TARGET_XPEDITE517X + bool "Support xpedite517x" + +endchoice + +source "board/freescale/mpc8610hpcd/Kconfig" +source "board/freescale/mpc8641hpcn/Kconfig" +source "board/sbc8641d/Kconfig" +source "board/xes/xpedite517x/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc86xx/config.mk b/arch/powerpc/cpu/mpc86xx/config.mk index 4c7235f..69a0b96 100644 --- a/arch/powerpc/cpu/mpc86xx/config.mk +++ b/arch/powerpc/cpu/mpc86xx/config.mk @@ -5,4 +5,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_MPC86xx -mstring -maltivec -mabi=altivec -msoft-float +PLATFORM_CPPFLAGS += -mstring -maltivec -mabi=altivec -msoft-float diff --git a/arch/powerpc/cpu/mpc8xx/Kconfig b/arch/powerpc/cpu/mpc8xx/Kconfig new file mode 100644 index 0000000..35608a6 --- /dev/null +++ b/arch/powerpc/cpu/mpc8xx/Kconfig @@ -0,0 +1,160 @@ +menu "mpc8xx CPU" + depends on 8xx + +config SYS_CPU + string + default "mpc8xx" + +choice + prompt "Target select" + +config TARGET_COGENT_MPC8XX + bool "Support cogent_mpc8xx" + +config TARGET_ESTEEM192E + bool "Support ESTEEM192E" + +config TARGET_FLAGADM + bool "Support FLAGADM" + +config TARGET_GEN860T + bool "Support GEN860T" + +config TARGET_HERMES + bool "Support hermes" + +config TARGET_ICU862 + bool "Support ICU862" + +config TARGET_IP860 + bool "Support IP860" + +config TARGET_IVML24 + bool "Support IVML24" + +config TARGET_IVMS8 + bool "Support IVMS8" + +config TARGET_LWMON + bool "Support lwmon" + +config TARGET_NETVIA + bool "Support NETVIA" + +config TARGET_R360MPI + bool "Support R360MPI" + +config TARGET_RRVISION + bool "Support RRvision" + +config TARGET_SXNI855T + bool "Support SXNI855T" + +config TARGET_SPD823TS + bool "Support SPD823TS" + +config TARGET_SVM_SC8XX + bool "Support svm_sc8xx" + +config TARGET_MHPC + bool "Support MHPC" + +config TARGET_TOP860 + bool "Support TOP860" + +config TARGET_KUP4K + bool "Support KUP4K" + +config TARGET_KUP4X + bool "Support KUP4X" + +config TARGET_ELPT860 + bool "Support ELPT860" + +config TARGET_UC100 + bool "Support uc100" + +config TARGET_STXXTC + bool "Support stxxtc" + +config TARGET_FPS850L + bool "Support FPS850L" + +config TARGET_FPS860L + bool "Support FPS860L" + +config TARGET_NSCU + bool "Support NSCU" + +config TARGET_SM850 + bool "Support SM850" + +config TARGET_TK885D + bool "Support TK885D" + +config TARGET_TQM823L + bool "Support TQM823L" + +config TARGET_TQM823M + bool "Support TQM823M" + +config TARGET_TQM850L + bool "Support TQM850L" + +config TARGET_TQM850M + bool "Support TQM850M" + +config TARGET_TQM855L + bool "Support TQM855L" + +config TARGET_TQM855M + bool "Support TQM855M" + +config TARGET_TQM860L + bool "Support TQM860L" + +config TARGET_TQM860M + bool "Support TQM860M" + +config TARGET_TQM862L + bool "Support TQM862L" + +config TARGET_TQM862M + bool "Support TQM862M" + +config TARGET_TQM866M + bool "Support TQM866M" + +config TARGET_TQM885D + bool "Support TQM885D" + +config TARGET_VIRTLAB2 + bool "Support virtlab2" + +endchoice + +source "board/LEOX/elpt860/Kconfig" +source "board/RRvision/Kconfig" +source "board/cogent/Kconfig" +source "board/eltec/mhpc/Kconfig" +source "board/emk/top860/Kconfig" +source "board/esteem192e/Kconfig" +source "board/flagadm/Kconfig" +source "board/gen860t/Kconfig" +source "board/hermes/Kconfig" +source "board/icu862/Kconfig" +source "board/ip860/Kconfig" +source "board/ivm/Kconfig" +source "board/kup/kup4k/Kconfig" +source "board/kup/kup4x/Kconfig" +source "board/lwmon/Kconfig" +source "board/manroland/uc100/Kconfig" +source "board/netvia/Kconfig" +source "board/r360mpi/Kconfig" +source "board/sixnet/Kconfig" +source "board/spd8xx/Kconfig" +source "board/stx/stxxtc/Kconfig" +source "board/svm_sc8xx/Kconfig" +source "board/tqc/tqm8xx/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/mpc8xx/config.mk b/arch/powerpc/cpu/mpc8xx/config.mk index ee2c883..485e43d 100644 --- a/arch/powerpc/cpu/mpc8xx/config.mk +++ b/arch/powerpc/cpu/mpc8xx/config.mk @@ -5,4 +5,4 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_8xx -mstring -mcpu=860 -msoft-float +PLATFORM_CPPFLAGS += -mstring -mcpu=860 -msoft-float diff --git a/arch/powerpc/cpu/mpc8xxx/cpu.c b/arch/powerpc/cpu/mpc8xxx/cpu.c index 15561a1..84fec5e 100644 --- a/arch/powerpc/cpu/mpc8xxx/cpu.c +++ b/arch/powerpc/cpu/mpc8xxx/cpu.c @@ -65,7 +65,6 @@ static struct cpu_type cpu_type_list[] = { CPU_TYPE_ENTRY(T4080, T4080, 4), CPU_TYPE_ENTRY(B4860, B4860, 0), CPU_TYPE_ENTRY(G4860, G4860, 0), - CPU_TYPE_ENTRY(G4060, G4060, 0), CPU_TYPE_ENTRY(B4440, B4440, 0), CPU_TYPE_ENTRY(B4460, B4460, 0), CPU_TYPE_ENTRY(G4440, G4440, 0), diff --git a/arch/powerpc/cpu/ppc4xx/Kconfig b/arch/powerpc/cpu/ppc4xx/Kconfig new file mode 100644 index 0000000..2d15dd1 --- /dev/null +++ b/arch/powerpc/cpu/ppc4xx/Kconfig @@ -0,0 +1,322 @@ +menu "ppc4xx CPU" + depends on 4xx + +config SYS_CPU + string + default "ppc4xx" + +choice + prompt "Target select" + +config TARGET_CSB272 + bool "Support csb272" + +config TARGET_CSB472 + bool "Support csb472" + +config TARGET_G2000 + bool "Support G2000" + +config TARGET_JSE + bool "Support JSE" + +config TARGET_KORAT + bool "Support korat" + +config TARGET_LWMON5 + bool "Support lwmon5" + +config TARGET_PCS440EP + bool "Support pcs440ep" + +config TARGET_SBC405 + bool "Support sbc405" + +config TARGET_SC3 + bool "Support sc3" + +config TARGET_T3CORP + bool "Support t3corp" + +config TARGET_W7OLMC + bool "Support W7OLMC" + +config TARGET_W7OLMG + bool "Support W7OLMG" + +config TARGET_ZEUS + bool "Support zeus" + +config TARGET_ACADIA + bool "Support acadia" + +config TARGET_BAMBOO + bool "Support bamboo" + +config TARGET_BLUESTONE + bool "Support bluestone" + +config TARGET_BUBINGA + bool "Support bubinga" + +config TARGET_CANYONLANDS + bool "Support canyonlands" + +config TARGET_EBONY + bool "Support ebony" + +config TARGET_KATMAI + bool "Support katmai" + +config TARGET_KILAUEA + bool "Support kilauea" + +config TARGET_LUAN + bool "Support luan" + +config TARGET_MAKALU + bool "Support makalu" + +config TARGET_OCOTEA + bool "Support ocotea" + +config TARGET_REDWOOD + bool "Support redwood" + +config TARGET_SEQUOIA + bool "Support sequoia" + +config TARGET_TAIHU + bool "Support taihu" + +config TARGET_TAISHAN + bool "Support taishan" + +config TARGET_WALNUT + bool "Support walnut" + +config TARGET_YOSEMITE + bool "Support yosemite" + +config TARGET_YUCCA + bool "Support yucca" + +config TARGET_FX12MM + bool "Support fx12mm" + +config TARGET_V5FX30TEVAL + bool "Support v5fx30teval" + +config TARGET_CRAYL1 + bool "Support CRAYL1" + +config TARGET_CATCENTER + bool "Support CATcenter" + +config TARGET_PPCHAMELEONEVB + bool "Support PPChameleonEVB" + +config TARGET_APC405 + bool "Support APC405" + +config TARGET_AR405 + bool "Support AR405" + +config TARGET_ASH405 + bool "Support ASH405" + +config TARGET_CMS700 + bool "Support CMS700" + +config TARGET_CPCI2DP + bool "Support CPCI2DP" + +config TARGET_CPCI405 + bool "Support CPCI405" + +config TARGET_CPCI4052 + bool "Support CPCI4052" + +config TARGET_CPCI405AB + bool "Support CPCI405AB" + +config TARGET_CPCI405DT + bool "Support CPCI405DT" + +config TARGET_CPCIISER4 + bool "Support CPCIISER4" + +config TARGET_DP405 + bool "Support DP405" + +config TARGET_DU405 + bool "Support DU405" + +config TARGET_DU440 + bool "Support DU440" + +config TARGET_HH405 + bool "Support HH405" + +config TARGET_HUB405 + bool "Support HUB405" + +config TARGET_OCRTC + bool "Support OCRTC" + +config TARGET_PCI405 + bool "Support PCI405" + +config TARGET_PLU405 + bool "Support PLU405" + +config TARGET_PMC405 + bool "Support PMC405" + +config TARGET_PMC405DE + bool "Support PMC405DE" + +config TARGET_PMC440 + bool "Support PMC440" + +config TARGET_VOH405 + bool "Support VOH405" + +config TARGET_VOM405 + bool "Support VOM405" + +config TARGET_WUH405 + bool "Support WUH405" + +config TARGET_DLVISION_10G + bool "Support dlvision-10g" + +config TARGET_IO + bool "Support io" + +config TARGET_IOCON + bool "Support iocon" + +config TARGET_NEO + bool "Support neo" + +config TARGET_IO64 + bool "Support io64" + +config TARGET_DLVISION + bool "Support dlvision" + +config TARGET_GDPPC440ETX + bool "Support gdppc440etx" + +config TARGET_INTIP + bool "Support intip" + +config TARGET_ICON + bool "Support icon" + +config TARGET_MIP405 + bool "Support MIP405" + +config TARGET_PIP405 + bool "Support PIP405" + +config TARGET_ALPR + bool "Support alpr" + +config TARGET_P3P440 + bool "Support p3p440" + +config TARGET_KAREF + bool "Support KAREF" + +config TARGET_METROBOX + bool "Support METROBOX" + +config TARGET_XPEDITE1000 + bool "Support xpedite1000" + +config TARGET_ML507 + bool "Support ml507" + +config TARGET_XILINX_PPC405_GENERIC + bool "Support xilinx-ppc405-generic" + +config TARGET_XILINX_PPC440_GENERIC + bool "Support xilinx-ppc440-generic" + +endchoice + +source "board/amcc/acadia/Kconfig" +source "board/amcc/bamboo/Kconfig" +source "board/amcc/bluestone/Kconfig" +source "board/amcc/bubinga/Kconfig" +source "board/amcc/canyonlands/Kconfig" +source "board/amcc/ebony/Kconfig" +source "board/amcc/katmai/Kconfig" +source "board/amcc/kilauea/Kconfig" +source "board/amcc/luan/Kconfig" +source "board/amcc/makalu/Kconfig" +source "board/amcc/ocotea/Kconfig" +source "board/amcc/redwood/Kconfig" +source "board/amcc/sequoia/Kconfig" +source "board/amcc/taihu/Kconfig" +source "board/amcc/taishan/Kconfig" +source "board/amcc/walnut/Kconfig" +source "board/amcc/yosemite/Kconfig" +source "board/amcc/yucca/Kconfig" +source "board/avnet/fx12mm/Kconfig" +source "board/avnet/v5fx30teval/Kconfig" +source "board/cray/L1/Kconfig" +source "board/csb272/Kconfig" +source "board/csb472/Kconfig" +source "board/dave/PPChameleonEVB/Kconfig" +source "board/esd/apc405/Kconfig" +source "board/esd/ar405/Kconfig" +source "board/esd/ash405/Kconfig" +source "board/esd/cms700/Kconfig" +source "board/esd/cpci2dp/Kconfig" +source "board/esd/cpci405/Kconfig" +source "board/esd/cpciiser4/Kconfig" +source "board/esd/dp405/Kconfig" +source "board/esd/du405/Kconfig" +source "board/esd/du440/Kconfig" +source "board/esd/hh405/Kconfig" +source "board/esd/hub405/Kconfig" +source "board/esd/ocrtc/Kconfig" +source "board/esd/pci405/Kconfig" +source "board/esd/plu405/Kconfig" +source "board/esd/pmc405/Kconfig" +source "board/esd/pmc405de/Kconfig" +source "board/esd/pmc440/Kconfig" +source "board/esd/voh405/Kconfig" +source "board/esd/vom405/Kconfig" +source "board/esd/wuh405/Kconfig" +source "board/g2000/Kconfig" +source "board/gdsys/405ep/Kconfig" +source "board/gdsys/405ex/Kconfig" +source "board/gdsys/dlvision/Kconfig" +source "board/gdsys/gdppc440etx/Kconfig" +source "board/gdsys/intip/Kconfig" +source "board/jse/Kconfig" +source "board/korat/Kconfig" +source "board/lwmon5/Kconfig" +source "board/mosaixtech/icon/Kconfig" +source "board/mpl/mip405/Kconfig" +source "board/mpl/pip405/Kconfig" +source "board/pcs440ep/Kconfig" +source "board/prodrive/alpr/Kconfig" +source "board/prodrive/p3p440/Kconfig" +source "board/sandburst/karef/Kconfig" +source "board/sandburst/metrobox/Kconfig" +source "board/sbc405/Kconfig" +source "board/sc3/Kconfig" +source "board/t3corp/Kconfig" +source "board/w7o/Kconfig" +source "board/xes/xpedite1000/Kconfig" +source "board/xilinx/ml507/Kconfig" +source "board/xilinx/ppc405-generic/Kconfig" +source "board/xilinx/ppc440-generic/Kconfig" +source "board/zeus/Kconfig" + +endmenu diff --git a/arch/powerpc/cpu/ppc4xx/config.mk b/arch/powerpc/cpu/ppc4xx/config.mk index 102f069..f87c9dc 100644 --- a/arch/powerpc/cpu/ppc4xx/config.mk +++ b/arch/powerpc/cpu/ppc4xx/config.mk @@ -5,10 +5,10 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -DCONFIG_4xx -mstring -msoft-float +PLATFORM_CPPFLAGS += -mstring -msoft-float -cfg=$(shell grep configs $(objtree)/include/config.h | sed 's/.*<\(configs.*\)>/\1/') -is440:=$(shell grep CONFIG_440 $(srctree)/include/$(cfg)) +cfg=$(srctree)/include/configs/$(CONFIG_SYS_CONFIG_NAME:"%"=%).h +is440:=$(shell grep CONFIG_440 $(cfg)) ifneq (,$(findstring CONFIG_440,$(is440))) PLATFORM_CPPFLAGS += -Wa,-m440 -mcpu=440 diff --git a/arch/powerpc/cpu/ppc4xx/cpu_init.c b/arch/powerpc/cpu/ppc4xx/cpu_init.c index d465dcd..0b27d29 100644 --- a/arch/powerpc/cpu/ppc4xx/cpu_init.c +++ b/arch/powerpc/cpu/ppc4xx/cpu_init.c @@ -12,9 +12,7 @@ #include <asm/ppc4xx-gpio.h> #include <asm/ppc4xx.h> -#if defined(CONFIG_405GP) || defined(CONFIG_405EP) DECLARE_GLOBAL_DATA_PTR; -#endif #ifndef CONFIG_SYS_PLL_RECONFIG #define CONFIG_SYS_PLL_RECONFIG 0 @@ -451,6 +449,8 @@ cpu_init_f (void) mtdcr(PLB4A1_ACR, (mfdcr(PLB4A1_ACR) & ~PLB4Ax_ACR_RDP_MASK) | PLB4Ax_ACR_RDP_4DEEP); #endif /* CONFIG_440SP/SPE || CONFIG_460EX/GT || CONFIG_405EX */ + + gd = (gd_t *)(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_GBL_DATA_OFFSET); } /* diff --git a/arch/powerpc/include/asm/cache.h b/arch/powerpc/include/asm/cache.h index cdc1f10..d3a8391 100644 --- a/arch/powerpc/include/asm/cache.h +++ b/arch/powerpc/include/asm/cache.h @@ -57,6 +57,12 @@ extern void unlock_ram_in_cache(void); #endif /* CONFIG_SYS_INIT_RAM_LOCK */ #endif /* __ASSEMBLY__ */ +#if defined(__KERNEL__) && !defined(__ASSEMBLY__) +int l2cache_init(void); +void enable_cpc(void); +void disable_cpc_sram(void); +#endif + /* prep registers for L2 */ #define CACHECRBA 0x80000823 /* Cache configuration register address */ #define L2CACHE_MASK 0x03 /* Mask for 2 L2 Cache bits */ diff --git a/arch/powerpc/include/asm/immap_85xx.h b/arch/powerpc/include/asm/immap_85xx.h index 8258ab3..dfb370e 100644 --- a/arch/powerpc/include/asm/immap_85xx.h +++ b/arch/powerpc/include/asm/immap_85xx.h @@ -2905,6 +2905,8 @@ struct ccsr_sfp_regs { #endif #define CONFIG_SYS_FSL_CORENET_SERDES_OFFSET 0xEA000 #define CONFIG_SYS_FSL_CORENET_SERDES2_OFFSET 0xEB000 +#define CONFIG_SYS_FSL_CORENET_SERDES3_OFFSET 0xEC000 +#define CONFIG_SYS_FSL_CORENET_SERDES4_OFFSET 0xED000 #define CONFIG_SYS_FSL_CPC_OFFSET 0x10000 #define CONFIG_SYS_FSL_SCFG_OFFSET 0xFC000 #define CONFIG_SYS_MPC85xx_DMA1_OFFSET 0x100000 @@ -3090,6 +3092,10 @@ struct ccsr_sfp_regs { (CONFIG_SYS_IMMR + CONFIG_SYS_FSL_CORENET_SERDES_OFFSET) #define CONFIG_SYS_FSL_CORENET_SERDES2_ADDR \ (CONFIG_SYS_IMMR + CONFIG_SYS_FSL_CORENET_SERDES2_OFFSET) +#define CONFIG_SYS_FSL_CORENET_SERDES3_ADDR \ + (CONFIG_SYS_IMMR + CONFIG_SYS_FSL_CORENET_SERDES3_OFFSET) +#define CONFIG_SYS_FSL_CORENET_SERDES4_ADDR \ + (CONFIG_SYS_IMMR + CONFIG_SYS_FSL_CORENET_SERDES4_OFFSET) #define CONFIG_SYS_MPC85xx_USB1_ADDR \ (CONFIG_SYS_IMMR + CONFIG_SYS_MPC85xx_USB1_OFFSET) #define CONFIG_SYS_MPC85xx_USB2_ADDR \ diff --git a/arch/powerpc/include/asm/io.h b/arch/powerpc/include/asm/io.h index d8b7b97..a5257e9 100644 --- a/arch/powerpc/include/asm/io.h +++ b/arch/powerpc/include/asm/io.h @@ -123,6 +123,9 @@ static inline void isync(void) #define iobarrier_r() eieio() #define iobarrier_w() eieio() +#define mb() sync() +#define isb() isync() + /* * Non ordered and non-swapping "raw" accessors */ diff --git a/arch/powerpc/include/asm/processor.h b/arch/powerpc/include/asm/processor.h index a5e7a61..1b98e0f 100644 --- a/arch/powerpc/include/asm/processor.h +++ b/arch/powerpc/include/asm/processor.h @@ -378,11 +378,16 @@ #else #define SPRN_TCR 0x154 /* Book E Timer Control Register */ #endif /* CONFIG_BOOKE */ +#ifdef CONFIG_E500MC +#define TCR_WP(x) (((64-x)&0x3)<<30)| \ + (((64-x)&0x3c)<<15) /* WDT Period 2^x clocks*/ +#else #define TCR_WP(x) (((x)&0x3)<<30) /* WDT Period */ #define WP_2_17 0 /* 2^17 clocks */ #define WP_2_21 1 /* 2^21 clocks */ #define WP_2_25 2 /* 2^25 clocks */ #define WP_2_29 3 /* 2^29 clocks */ +#endif /* CONFIG_E500 */ #define TCR_WRC(x) (((x)&0x3)<<28) /* WDT Reset Control */ #define WRC_NONE 0 /* No reset will occur */ #define WRC_CORE 1 /* Core reset will occur */ @@ -1118,7 +1123,6 @@ #define SVR_B4860 0X868000 #define SVR_G4860 0x868001 #define SVR_B4460 0x868003 -#define SVR_G4060 0x868003 #define SVR_B4440 0x868100 #define SVR_G4440 0x868101 #define SVR_B4420 0x868102 diff --git a/arch/powerpc/lib/board.c b/arch/powerpc/lib/board.c index 300ab12..0296205 100644 --- a/arch/powerpc/lib/board.c +++ b/arch/powerpc/lib/board.c @@ -226,6 +226,9 @@ static int init_func_spi(void) #if defined(CONFIG_WATCHDOG) int init_func_watchdog_init(void) { +#if defined(CONFIG_MPC85xx) + init_85xx_watchdog(); +#endif puts(" Watchdog enabled\n"); WATCHDOG_RESET(); return 0; @@ -370,6 +373,11 @@ void board_init_f(ulong bootflag) #ifdef CONFIG_DEEP_SLEEP /* Jump to kernel in deep sleep case */ if (in_be32(&gur->scrtsr[0]) & (1 << 3)) { + l2cache_init(); +#if defined(CONFIG_RAMBOOT_PBL) + disable_cpc_sram(); +#endif + enable_cpc(); start_addr = in_be32(&scfg->sparecr[1]); kernel_resume = (func_t)start_addr; kernel_resume(); diff --git a/arch/sandbox/Kconfig b/arch/sandbox/Kconfig new file mode 100644 index 0000000..c393550 --- /dev/null +++ b/arch/sandbox/Kconfig @@ -0,0 +1,16 @@ +menu "Sandbox architecture" + depends on SANDBOX + +config SYS_ARCH + string + default "sandbox" + +config SYS_BOARD + string + default "sandbox" + +config SYS_CONFIG_NAME + string + default "sandbox" + +endmenu diff --git a/arch/sandbox/config.mk b/arch/sandbox/config.mk index c3f889f..e38a44b 100644 --- a/arch/sandbox/config.mk +++ b/arch/sandbox/config.mk @@ -1,7 +1,7 @@ # Copyright (c) 2011 The Chromium OS Authors. # SPDX-License-Identifier: GPL-2.0+ -PLATFORM_CPPFLAGS += -DCONFIG_SANDBOX -D__SANDBOX__ -U_FORTIFY_SOURCE +PLATFORM_CPPFLAGS += -D__SANDBOX__ -U_FORTIFY_SOURCE PLATFORM_CPPFLAGS += -DCONFIG_ARCH_MAP_SYSMEM -DCONFIG_SYS_GENERIC_BOARD PLATFORM_LIBS += -lrt diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig new file mode 100644 index 0000000..e6ded16 --- /dev/null +++ b/arch/sh/Kconfig @@ -0,0 +1,98 @@ +menu "SuperH architecture" + depends on SH + +config SYS_ARCH + string + default "sh" + +choice + prompt "Target select" + +config TARGET_RSK7203 + bool "Support rsk7203" + +config TARGET_RSK7264 + bool "Support rsk7264" + +config TARGET_RSK7269 + bool "Support rsk7269" + +config TARGET_MPR2 + bool "Support mpr2" + +config TARGET_MS7720SE + bool "Support ms7720se" + +config TARGET_SHMIN + bool "Support shmin" + +config TARGET_ESPT + bool "Support espt" + +config TARGET_MS7722SE + bool "Support ms7722se" + +config TARGET_MS7750SE + bool "Support ms7750se" + +config TARGET_AP_SH4A_4A + bool "Support ap_sh4a_4a" + +config TARGET_AP325RXA + bool "Support ap325rxa" + +config TARGET_ECOVEC + bool "Support ecovec" + +config TARGET_MIGOR + bool "Support MigoR" + +config TARGET_R0P7734 + bool "Support r0p7734" + +config TARGET_R2DPLUS + bool "Support r2dplus" + +config TARGET_R7780MP + bool "Support r7780mp" + +config TARGET_SH7752EVB + bool "Support sh7752evb" + +config TARGET_SH7753EVB + bool "Support sh7753evb" + +config TARGET_SH7757LCR + bool "Support sh7757lcr" + +config TARGET_SH7763RDP + bool "Support sh7763rdp" + +config TARGET_SH7785LCR + bool "Support sh7785lcr" + +endchoice + +source "board/alphaproject/ap_sh4a_4a/Kconfig" +source "board/espt/Kconfig" +source "board/mpr2/Kconfig" +source "board/ms7720se/Kconfig" +source "board/ms7722se/Kconfig" +source "board/ms7750se/Kconfig" +source "board/renesas/MigoR/Kconfig" +source "board/renesas/ap325rxa/Kconfig" +source "board/renesas/ecovec/Kconfig" +source "board/renesas/r0p7734/Kconfig" +source "board/renesas/r2dplus/Kconfig" +source "board/renesas/r7780mp/Kconfig" +source "board/renesas/rsk7203/Kconfig" +source "board/renesas/rsk7264/Kconfig" +source "board/renesas/rsk7269/Kconfig" +source "board/renesas/sh7752evb/Kconfig" +source "board/renesas/sh7753evb/Kconfig" +source "board/renesas/sh7757lcr/Kconfig" +source "board/renesas/sh7763rdp/Kconfig" +source "board/renesas/sh7785lcr/Kconfig" +source "board/shmin/Kconfig" + +endmenu diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig new file mode 100644 index 0000000..fc92910 --- /dev/null +++ b/arch/sparc/Kconfig @@ -0,0 +1,34 @@ +menu "SPARC architecture" + depends on SPARC + +config SYS_ARCH + string + default "sparc" + +choice + prompt "Target select" + +config TARGET_GRSIM_LEON2 + bool "Support grsim_leon2" + +config TARGET_GR_CPCI_AX2000 + bool "Support gr_cpci_ax2000" + +config TARGET_GR_EP2S60 + bool "Support gr_ep2s60" + +config TARGET_GR_XC3S_1500 + bool "Support gr_xc3s_1500" + +config TARGET_GRSIM + bool "Support grsim" + +endchoice + +source "board/gaisler/gr_cpci_ax2000/Kconfig" +source "board/gaisler/gr_ep2s60/Kconfig" +source "board/gaisler/gr_xc3s_1500/Kconfig" +source "board/gaisler/grsim/Kconfig" +source "board/gaisler/grsim_leon2/Kconfig" + +endmenu diff --git a/arch/sparc/config.mk b/arch/sparc/config.mk index be59f58..196d28a 100644 --- a/arch/sparc/config.mk +++ b/arch/sparc/config.mk @@ -14,4 +14,4 @@ gcclibdir := $(shell dirname `$(CC) -print-libgcc-file-name`) CONFIG_STANDALONE_LOAD_ADDR ?= 0x00000000 -L $(gcclibdir) \ -T $(srctree)/examples/standalone/sparc.lds -PLATFORM_CPPFLAGS += -DCONFIG_SPARC -D__sparc__ +PLATFORM_CPPFLAGS += -D__sparc__ diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig new file mode 100644 index 0000000..8fc619a --- /dev/null +++ b/arch/x86/Kconfig @@ -0,0 +1,18 @@ +menu "x86 architecture" + depends on X86 + +config SYS_ARCH + string + default "x86" + +choice + prompt "Target select" + +config TARGET_COREBOOT + bool "Support coreboot" + +endchoice + +source "board/chromebook-x86/coreboot/Kconfig" + +endmenu diff --git a/arch/x86/cpu/config.mk b/arch/x86/cpu/config.mk index 4b2c873..f7b01d3 100644 --- a/arch/x86/cpu/config.mk +++ b/arch/x86/cpu/config.mk @@ -7,7 +7,7 @@ CROSS_COMPILE ?= i386-linux- -PLATFORM_CPPFLAGS += -DCONFIG_X86 -D__I386__ -Werror +PLATFORM_CPPFLAGS += -D__I386__ -Werror # DO NOT MODIFY THE FOLLOWING UNLESS YOU REALLY KNOW WHAT YOU ARE DOING! LDPPFLAGS += -DRESET_SEG_START=0xffff0000 diff --git a/board/8dtech/eco5pk/Kconfig b/board/8dtech/eco5pk/Kconfig new file mode 100644 index 0000000..fb1b308 --- /dev/null +++ b/board/8dtech/eco5pk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ECO5PK + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "eco5pk" + +config SYS_VENDOR + string + default "8dtech" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "eco5pk" + +endif diff --git a/board/8dtech/eco5pk/MAINTAINERS b/board/8dtech/eco5pk/MAINTAINERS new file mode 100644 index 0000000..20c1c8c --- /dev/null +++ b/board/8dtech/eco5pk/MAINTAINERS @@ -0,0 +1,6 @@ +ECO5PK BOARD +M: Raphael Assenat <raph@8d.com> +S: Maintained +F: board/8dtech/eco5pk/ +F: include/configs/eco5pk.h +F: configs/eco5pk_defconfig diff --git a/board/AndesTech/adp-ag101/Kconfig b/board/AndesTech/adp-ag101/Kconfig new file mode 100644 index 0000000..3567543 --- /dev/null +++ b/board/AndesTech/adp-ag101/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ADP_AG101 + +config SYS_CPU + string + default "n1213" + +config SYS_BOARD + string + default "adp-ag101" + +config SYS_VENDOR + string + default "AndesTech" + +config SYS_SOC + string + default "ag101" + +config SYS_CONFIG_NAME + string + default "adp-ag101" + +endif diff --git a/board/AndesTech/adp-ag101/MAINTAINERS b/board/AndesTech/adp-ag101/MAINTAINERS new file mode 100644 index 0000000..1f0169b --- /dev/null +++ b/board/AndesTech/adp-ag101/MAINTAINERS @@ -0,0 +1,6 @@ +ADP-AG101 BOARD +M: Andes <uboot@andestech.com> +S: Maintained +F: board/AndesTech/adp-ag101/ +F: include/configs/adp-ag101.h +F: configs/adp-ag101_defconfig diff --git a/board/AndesTech/adp-ag101p/Kconfig b/board/AndesTech/adp-ag101p/Kconfig new file mode 100644 index 0000000..ee551a6 --- /dev/null +++ b/board/AndesTech/adp-ag101p/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ADP_AG101P + +config SYS_CPU + string + default "n1213" + +config SYS_BOARD + string + default "adp-ag101p" + +config SYS_VENDOR + string + default "AndesTech" + +config SYS_SOC + string + default "ag101" + +config SYS_CONFIG_NAME + string + default "adp-ag101p" + +endif diff --git a/board/AndesTech/adp-ag101p/MAINTAINERS b/board/AndesTech/adp-ag101p/MAINTAINERS new file mode 100644 index 0000000..9a2c7a3 --- /dev/null +++ b/board/AndesTech/adp-ag101p/MAINTAINERS @@ -0,0 +1,6 @@ +ADP-AG101P BOARD +M: Andes <uboot@andestech.com> +S: Maintained +F: board/AndesTech/adp-ag101p/ +F: include/configs/adp-ag101p.h +F: configs/adp-ag101p_defconfig diff --git a/board/AndesTech/adp-ag102/Kconfig b/board/AndesTech/adp-ag102/Kconfig new file mode 100644 index 0000000..34566bd --- /dev/null +++ b/board/AndesTech/adp-ag102/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ADP_AG102 + +config SYS_CPU + string + default "n1213" + +config SYS_BOARD + string + default "adp-ag102" + +config SYS_VENDOR + string + default "AndesTech" + +config SYS_SOC + string + default "ag102" + +config SYS_CONFIG_NAME + string + default "adp-ag102" + +endif diff --git a/board/AndesTech/adp-ag102/MAINTAINERS b/board/AndesTech/adp-ag102/MAINTAINERS new file mode 100644 index 0000000..94b87c7 --- /dev/null +++ b/board/AndesTech/adp-ag102/MAINTAINERS @@ -0,0 +1,6 @@ +ADP-AG102 BOARD +M: Andes <uboot@andestech.com> +S: Maintained +F: board/AndesTech/adp-ag102/ +F: include/configs/adp-ag102.h +F: configs/adp-ag102_defconfig diff --git a/board/Barix/ipam390/Kconfig b/board/Barix/ipam390/Kconfig new file mode 100644 index 0000000..a8134479 --- /dev/null +++ b/board/Barix/ipam390/Kconfig @@ -0,0 +1,23 @@ +if TARGET_IPAM390 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "ipam390" + +config SYS_VENDOR + string + default "Barix" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "ipam390" + +endif diff --git a/board/Barix/ipam390/MAINTAINERS b/board/Barix/ipam390/MAINTAINERS new file mode 100644 index 0000000..640e34f --- /dev/null +++ b/board/Barix/ipam390/MAINTAINERS @@ -0,0 +1,6 @@ +IPAM390 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/Barix/ipam390/ +F: include/configs/ipam390.h +F: configs/ipam390_defconfig diff --git a/board/BuR/kwb/Kconfig b/board/BuR/kwb/Kconfig new file mode 100644 index 0000000..5676c4f --- /dev/null +++ b/board/BuR/kwb/Kconfig @@ -0,0 +1,23 @@ +if TARGET_KWB + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "kwb" + +config SYS_VENDOR + string + default "BuR" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "kwb" + +endif diff --git a/board/BuR/kwb/MAINTAINERS b/board/BuR/kwb/MAINTAINERS new file mode 100644 index 0000000..c28fb49 --- /dev/null +++ b/board/BuR/kwb/MAINTAINERS @@ -0,0 +1,6 @@ +KWB BOARD +M: Hannes Petermaier <hannes.petermaier@br-automation.com> +S: Maintained +F: board/BuR/kwb/ +F: include/configs/kwb.h +F: configs/kwb_defconfig diff --git a/board/BuR/tseries/Kconfig b/board/BuR/tseries/Kconfig new file mode 100644 index 0000000..f452023 --- /dev/null +++ b/board/BuR/tseries/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TSERIES + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "tseries" + +config SYS_VENDOR + string + default "BuR" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "tseries" + +endif diff --git a/board/BuR/tseries/MAINTAINERS b/board/BuR/tseries/MAINTAINERS new file mode 100644 index 0000000..e57326a --- /dev/null +++ b/board/BuR/tseries/MAINTAINERS @@ -0,0 +1,8 @@ +TSERIES BOARD +M: Hannes Petermaier <hannes.petermaier@br-automation.com> +S: Maintained +F: board/BuR/tseries/ +F: include/configs/tseries.h +F: configs/tseries_mmc_defconfig +F: configs/tseries_nand_defconfig +F: configs/tseries_spi_defconfig diff --git a/board/BuS/eb_cpu5282/Kconfig b/board/BuS/eb_cpu5282/Kconfig new file mode 100644 index 0000000..f53f295 --- /dev/null +++ b/board/BuS/eb_cpu5282/Kconfig @@ -0,0 +1,19 @@ +if TARGET_EB_CPU5282 + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "eb_cpu5282" + +config SYS_VENDOR + string + default "BuS" + +config SYS_CONFIG_NAME + string + default "eb_cpu5282" + +endif diff --git a/board/BuS/eb_cpu5282/MAINTAINERS b/board/BuS/eb_cpu5282/MAINTAINERS new file mode 100644 index 0000000..87298ad --- /dev/null +++ b/board/BuS/eb_cpu5282/MAINTAINERS @@ -0,0 +1,7 @@ +EB_CPU5282 BOARD +M: Jens Scharsig <esw@bus-elektronik.de> +S: Maintained +F: board/BuS/eb_cpu5282/ +F: include/configs/eb_cpu5282.h +F: configs/eb_cpu5282_defconfig +F: configs/eb_cpu5282_internal_defconfig diff --git a/board/BuS/eb_cpux9k2/Kconfig b/board/BuS/eb_cpux9k2/Kconfig new file mode 100644 index 0000000..3a36cf3 --- /dev/null +++ b/board/BuS/eb_cpux9k2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_EB_CPUX9K2 + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "eb_cpux9k2" + +config SYS_VENDOR + string + default "BuS" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "eb_cpux9k2" + +endif diff --git a/board/BuS/eb_cpux9k2/MAINTAINERS b/board/BuS/eb_cpux9k2/MAINTAINERS new file mode 100644 index 0000000..81c4349 --- /dev/null +++ b/board/BuS/eb_cpux9k2/MAINTAINERS @@ -0,0 +1,7 @@ +EB_CPUX9K2 BOARD +M: Jens Scharsig <esw@bus-elektronik.de> +S: Maintained +F: board/BuS/eb_cpux9k2/ +F: include/configs/eb_cpux9k2.h +F: configs/eb_cpux9k2_defconfig +F: configs/eb_cpux9k2_ram_defconfig diff --git a/board/BuS/vl_ma2sc/Kconfig b/board/BuS/vl_ma2sc/Kconfig new file mode 100644 index 0000000..d4a6e52 --- /dev/null +++ b/board/BuS/vl_ma2sc/Kconfig @@ -0,0 +1,23 @@ +if TARGET_VL_MA2SC + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "vl_ma2sc" + +config SYS_VENDOR + string + default "BuS" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "vl_ma2sc" + +endif diff --git a/board/BuS/vl_ma2sc/MAINTAINERS b/board/BuS/vl_ma2sc/MAINTAINERS new file mode 100644 index 0000000..b70104d --- /dev/null +++ b/board/BuS/vl_ma2sc/MAINTAINERS @@ -0,0 +1,7 @@ +VL_MA2SC BOARD +M: Jens Scharsig <esw@bus-elektronik.de> +S: Maintained +F: board/BuS/vl_ma2sc/ +F: include/configs/vl_ma2sc.h +F: configs/vl_ma2sc_defconfig +F: configs/vl_ma2sc_ram_defconfig diff --git a/board/CarMediaLab/flea3/Kconfig b/board/CarMediaLab/flea3/Kconfig new file mode 100644 index 0000000..cbc004a --- /dev/null +++ b/board/CarMediaLab/flea3/Kconfig @@ -0,0 +1,23 @@ +if TARGET_FLEA3 + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "flea3" + +config SYS_VENDOR + string + default "CarMediaLab" + +config SYS_SOC + string + default "mx35" + +config SYS_CONFIG_NAME + string + default "flea3" + +endif diff --git a/board/CarMediaLab/flea3/MAINTAINERS b/board/CarMediaLab/flea3/MAINTAINERS new file mode 100644 index 0000000..c7b0df7 --- /dev/null +++ b/board/CarMediaLab/flea3/MAINTAINERS @@ -0,0 +1,6 @@ +FLEA3 BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/CarMediaLab/flea3/ +F: include/configs/flea3.h +F: configs/flea3_defconfig diff --git a/board/LEOX/elpt860/Kconfig b/board/LEOX/elpt860/Kconfig new file mode 100644 index 0000000..2cfa5bc --- /dev/null +++ b/board/LEOX/elpt860/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ELPT860 + +config SYS_BOARD + string + default "elpt860" + +config SYS_VENDOR + string + default "LEOX" + +config SYS_CONFIG_NAME + string + default "ELPT860" + +endif diff --git a/board/LEOX/elpt860/MAINTAINERS b/board/LEOX/elpt860/MAINTAINERS new file mode 100644 index 0000000..8f8a199 --- /dev/null +++ b/board/LEOX/elpt860/MAINTAINERS @@ -0,0 +1,6 @@ +ELPT860 BOARD +M: The LEOX team <team@leox.org> +S: Maintained +F: board/LEOX/elpt860/ +F: include/configs/ELPT860.h +F: configs/ELPT860_defconfig diff --git a/board/LaCie/edminiv2/Kconfig b/board/LaCie/edminiv2/Kconfig new file mode 100644 index 0000000..f1151d1 --- /dev/null +++ b/board/LaCie/edminiv2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_EDMINIV2 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "edminiv2" + +config SYS_VENDOR + string + default "LaCie" + +config SYS_SOC + string + default "orion5x" + +config SYS_CONFIG_NAME + string + default "edminiv2" + +endif diff --git a/board/LaCie/edminiv2/MAINTAINERS b/board/LaCie/edminiv2/MAINTAINERS new file mode 100644 index 0000000..e0591f4 --- /dev/null +++ b/board/LaCie/edminiv2/MAINTAINERS @@ -0,0 +1,6 @@ +EDMINIV2 BOARD +M: Albert ARIBAUD <albert.u.boot@aribaud.net> +S: Maintained +F: board/LaCie/edminiv2/ +F: include/configs/edminiv2.h +F: configs/edminiv2_defconfig diff --git a/board/LaCie/net2big_v2/Kconfig b/board/LaCie/net2big_v2/Kconfig new file mode 100644 index 0000000..867d0d3 --- /dev/null +++ b/board/LaCie/net2big_v2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_NET2BIG_V2 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "net2big_v2" + +config SYS_VENDOR + string + default "LaCie" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "lacie_kw" + +endif diff --git a/board/LaCie/net2big_v2/MAINTAINERS b/board/LaCie/net2big_v2/MAINTAINERS new file mode 100644 index 0000000..1afaa5c --- /dev/null +++ b/board/LaCie/net2big_v2/MAINTAINERS @@ -0,0 +1,11 @@ +NET2BIG_V2 BOARD +M: - +S: Maintained +F: board/LaCie/net2big_v2/ +F: include/configs/lacie_kw.h +F: configs/d2net_v2_defconfig + +NET2BIG_V2 BOARD +M: Simon Guinot <simon.guinot@sequanux.org> +S: Maintained +F: configs/net2big_v2_defconfig diff --git a/board/LaCie/netspace_v2/Kconfig b/board/LaCie/netspace_v2/Kconfig new file mode 100644 index 0000000..fb6fbef --- /dev/null +++ b/board/LaCie/netspace_v2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_NETSPACE_V2 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "netspace_v2" + +config SYS_VENDOR + string + default "LaCie" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "lacie_kw" + +endif diff --git a/board/LaCie/netspace_v2/MAINTAINERS b/board/LaCie/netspace_v2/MAINTAINERS new file mode 100644 index 0000000..ad3dfa1 --- /dev/null +++ b/board/LaCie/netspace_v2/MAINTAINERS @@ -0,0 +1,14 @@ +NETSPACE_V2 BOARD +M: Simon Guinot <simon.guinot@sequanux.org> +S: Maintained +F: board/LaCie/netspace_v2/ +F: include/configs/lacie_kw.h +F: configs/inetspace_v2_defconfig +F: configs/netspace_max_v2_defconfig +F: configs/netspace_v2_defconfig + +NETSPACE_LITE_V2 BOARD +M: - +S: Maintained +F: configs/netspace_lite_v2_defconfig +F: configs/netspace_mini_v2_defconfig diff --git a/board/LaCie/wireless_space/Kconfig b/board/LaCie/wireless_space/Kconfig new file mode 100644 index 0000000..4815cde --- /dev/null +++ b/board/LaCie/wireless_space/Kconfig @@ -0,0 +1,23 @@ +if TARGET_WIRELESS_SPACE + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "wireless_space" + +config SYS_VENDOR + string + default "LaCie" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "wireless_space" + +endif diff --git a/board/LaCie/wireless_space/MAINTAINERS b/board/LaCie/wireless_space/MAINTAINERS new file mode 100644 index 0000000..8b36bff --- /dev/null +++ b/board/LaCie/wireless_space/MAINTAINERS @@ -0,0 +1,6 @@ +WIRELESS_SPACE BOARD +M: - +S: Maintained +F: board/LaCie/wireless_space/ +F: include/configs/wireless_space.h +F: configs/wireless_space_defconfig diff --git a/board/Marvell/aspenite/Kconfig b/board/Marvell/aspenite/Kconfig new file mode 100644 index 0000000..7edcd81 --- /dev/null +++ b/board/Marvell/aspenite/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ASPENITE + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "aspenite" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "armada100" + +config SYS_CONFIG_NAME + string + default "aspenite" + +endif diff --git a/board/Marvell/aspenite/MAINTAINERS b/board/Marvell/aspenite/MAINTAINERS new file mode 100644 index 0000000..a77d30e --- /dev/null +++ b/board/Marvell/aspenite/MAINTAINERS @@ -0,0 +1,6 @@ +ASPENITE BOARD +M: Prafulla Wadaskar <prafulla@marvell.com> +S: Maintained +F: board/Marvell/aspenite/ +F: include/configs/aspenite.h +F: configs/aspenite_defconfig diff --git a/board/Marvell/db64360/Kconfig b/board/Marvell/db64360/Kconfig new file mode 100644 index 0000000..c08fd05 --- /dev/null +++ b/board/Marvell/db64360/Kconfig @@ -0,0 +1,15 @@ +if TARGET_DB64360 + +config SYS_BOARD + string + default "db64360" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_CONFIG_NAME + string + default "DB64360" + +endif diff --git a/board/Marvell/db64360/MAINTAINERS b/board/Marvell/db64360/MAINTAINERS new file mode 100644 index 0000000..7383207 --- /dev/null +++ b/board/Marvell/db64360/MAINTAINERS @@ -0,0 +1,6 @@ +DB64360 BOARD +M: - +S: Maintained +F: board/Marvell/db64360/ +F: include/configs/DB64360.h +F: configs/DB64360_defconfig diff --git a/board/Marvell/db64460/Kconfig b/board/Marvell/db64460/Kconfig new file mode 100644 index 0000000..3cd2eb4 --- /dev/null +++ b/board/Marvell/db64460/Kconfig @@ -0,0 +1,15 @@ +if TARGET_DB64460 + +config SYS_BOARD + string + default "db64460" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_CONFIG_NAME + string + default "DB64460" + +endif diff --git a/board/Marvell/db64460/MAINTAINERS b/board/Marvell/db64460/MAINTAINERS new file mode 100644 index 0000000..751aac2 --- /dev/null +++ b/board/Marvell/db64460/MAINTAINERS @@ -0,0 +1,6 @@ +DB64460 BOARD +M: - +S: Maintained +F: board/Marvell/db64460/ +F: include/configs/DB64460.h +F: configs/DB64460_defconfig diff --git a/board/Marvell/dkb/Kconfig b/board/Marvell/dkb/Kconfig new file mode 100644 index 0000000..7ce761b --- /dev/null +++ b/board/Marvell/dkb/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DKB + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dkb" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "pantheon" + +config SYS_CONFIG_NAME + string + default "dkb" + +endif diff --git a/board/Marvell/dkb/MAINTAINERS b/board/Marvell/dkb/MAINTAINERS new file mode 100644 index 0000000..c272b7a --- /dev/null +++ b/board/Marvell/dkb/MAINTAINERS @@ -0,0 +1,6 @@ +DKB BOARD +M: Lei Wen <leiwen@marvell.com> +S: Maintained +F: board/Marvell/dkb/ +F: include/configs/dkb.h +F: configs/dkb_defconfig diff --git a/board/Marvell/dreamplug/Kconfig b/board/Marvell/dreamplug/Kconfig new file mode 100644 index 0000000..e067318 --- /dev/null +++ b/board/Marvell/dreamplug/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DREAMPLUG + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dreamplug" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "dreamplug" + +endif diff --git a/board/Marvell/dreamplug/MAINTAINERS b/board/Marvell/dreamplug/MAINTAINERS new file mode 100644 index 0000000..2561ba8 --- /dev/null +++ b/board/Marvell/dreamplug/MAINTAINERS @@ -0,0 +1,6 @@ +DREAMPLUG BOARD +M: Jason Cooper <u-boot@lakedaemon.net> +S: Maintained +F: board/Marvell/dreamplug/ +F: include/configs/dreamplug.h +F: configs/dreamplug_defconfig diff --git a/board/Marvell/gplugd/Kconfig b/board/Marvell/gplugd/Kconfig new file mode 100644 index 0000000..94cdd48 --- /dev/null +++ b/board/Marvell/gplugd/Kconfig @@ -0,0 +1,23 @@ +if TARGET_GPLUGD + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "gplugd" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "armada100" + +config SYS_CONFIG_NAME + string + default "gplugd" + +endif diff --git a/board/Marvell/gplugd/MAINTAINERS b/board/Marvell/gplugd/MAINTAINERS new file mode 100644 index 0000000..320bc09 --- /dev/null +++ b/board/Marvell/gplugd/MAINTAINERS @@ -0,0 +1,6 @@ +GPLUGD BOARD +M: Ajay Bhargav <ajay.bhargav@einfochips.com> +S: Maintained +F: board/Marvell/gplugd/ +F: include/configs/gplugd.h +F: configs/gplugd_defconfig diff --git a/board/Marvell/guruplug/Kconfig b/board/Marvell/guruplug/Kconfig new file mode 100644 index 0000000..fce8562 --- /dev/null +++ b/board/Marvell/guruplug/Kconfig @@ -0,0 +1,23 @@ +if TARGET_GURUPLUG + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "guruplug" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "guruplug" + +endif diff --git a/board/Marvell/guruplug/MAINTAINERS b/board/Marvell/guruplug/MAINTAINERS new file mode 100644 index 0000000..b5d0734 --- /dev/null +++ b/board/Marvell/guruplug/MAINTAINERS @@ -0,0 +1,6 @@ +GURUPLUG BOARD +M: Siddarth Gore <gores@marvell.com> +S: Maintained +F: board/Marvell/guruplug/ +F: include/configs/guruplug.h +F: configs/guruplug_defconfig diff --git a/board/Marvell/mv88f6281gtw_ge/Kconfig b/board/Marvell/mv88f6281gtw_ge/Kconfig new file mode 100644 index 0000000..17adab0 --- /dev/null +++ b/board/Marvell/mv88f6281gtw_ge/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MV88F6281GTW_GE + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "mv88f6281gtw_ge" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "mv88f6281gtw_ge" + +endif diff --git a/board/Marvell/mv88f6281gtw_ge/MAINTAINERS b/board/Marvell/mv88f6281gtw_ge/MAINTAINERS new file mode 100644 index 0000000..9c26ca7 --- /dev/null +++ b/board/Marvell/mv88f6281gtw_ge/MAINTAINERS @@ -0,0 +1,6 @@ +MV88F6281GTW_GE BOARD +M: Prafulla Wadaskar <prafulla@marvell.com> +S: Maintained +F: board/Marvell/mv88f6281gtw_ge/ +F: include/configs/mv88f6281gtw_ge.h +F: configs/mv88f6281gtw_ge_defconfig diff --git a/board/Marvell/openrd/Kconfig b/board/Marvell/openrd/Kconfig new file mode 100644 index 0000000..2dfed34 --- /dev/null +++ b/board/Marvell/openrd/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OPENRD + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "openrd" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "openrd" + +endif diff --git a/board/Marvell/openrd/MAINTAINERS b/board/Marvell/openrd/MAINTAINERS new file mode 100644 index 0000000..7a52a8e --- /dev/null +++ b/board/Marvell/openrd/MAINTAINERS @@ -0,0 +1,12 @@ +OPENRD BOARD +M: Prafulla Wadaskar <prafulla@marvell.com> +S: Maintained +F: board/Marvell/openrd/ +F: include/configs/openrd.h +F: configs/openrd_base_defconfig + +OPENRD_CLIENT BOARD +M: - +S: Maintained +F: configs/openrd_client_defconfig +F: configs/openrd_ultimate_defconfig diff --git a/board/Marvell/rd6281a/Kconfig b/board/Marvell/rd6281a/Kconfig new file mode 100644 index 0000000..ae753b0 --- /dev/null +++ b/board/Marvell/rd6281a/Kconfig @@ -0,0 +1,23 @@ +if TARGET_RD6281A + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "rd6281a" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "rd6281a" + +endif diff --git a/board/Marvell/rd6281a/MAINTAINERS b/board/Marvell/rd6281a/MAINTAINERS new file mode 100644 index 0000000..d4ad592 --- /dev/null +++ b/board/Marvell/rd6281a/MAINTAINERS @@ -0,0 +1,6 @@ +RD6281A BOARD +M: Prafulla Wadaskar <prafulla@marvell.com> +S: Maintained +F: board/Marvell/rd6281a/ +F: include/configs/rd6281a.h +F: configs/rd6281a_defconfig diff --git a/board/Marvell/sheevaplug/Kconfig b/board/Marvell/sheevaplug/Kconfig new file mode 100644 index 0000000..6f3eb38 --- /dev/null +++ b/board/Marvell/sheevaplug/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SHEEVAPLUG + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "sheevaplug" + +config SYS_VENDOR + string + default "Marvell" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "sheevaplug" + +endif diff --git a/board/Marvell/sheevaplug/MAINTAINERS b/board/Marvell/sheevaplug/MAINTAINERS new file mode 100644 index 0000000..2b0103d --- /dev/null +++ b/board/Marvell/sheevaplug/MAINTAINERS @@ -0,0 +1,6 @@ +SHEEVAPLUG BOARD +M: Prafulla Wadaskar <prafulla@marvell.com> +S: Maintained +F: board/Marvell/sheevaplug/ +F: include/configs/sheevaplug.h +F: configs/sheevaplug_defconfig diff --git a/board/RRvision/Kconfig b/board/RRvision/Kconfig new file mode 100644 index 0000000..ac6bebc --- /dev/null +++ b/board/RRvision/Kconfig @@ -0,0 +1,11 @@ +if TARGET_RRVISION + +config SYS_BOARD + string + default "RRvision" + +config SYS_CONFIG_NAME + string + default "RRvision" + +endif diff --git a/board/RRvision/MAINTAINERS b/board/RRvision/MAINTAINERS new file mode 100644 index 0000000..59b5c5f --- /dev/null +++ b/board/RRvision/MAINTAINERS @@ -0,0 +1,7 @@ +RRVISION BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/RRvision/ +F: include/configs/RRvision.h +F: configs/RRvision_defconfig +F: configs/RRvision_LCD_defconfig diff --git a/board/Seagate/dockstar/Kconfig b/board/Seagate/dockstar/Kconfig new file mode 100644 index 0000000..4696ac6 --- /dev/null +++ b/board/Seagate/dockstar/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DOCKSTAR + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dockstar" + +config SYS_VENDOR + string + default "Seagate" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "dockstar" + +endif diff --git a/board/Seagate/dockstar/MAINTAINERS b/board/Seagate/dockstar/MAINTAINERS new file mode 100644 index 0000000..f259e58 --- /dev/null +++ b/board/Seagate/dockstar/MAINTAINERS @@ -0,0 +1,6 @@ +DOCKSTAR BOARD +M: Eric Cooper <ecc@cmu.edu> +S: Maintained +F: board/Seagate/dockstar/ +F: include/configs/dockstar.h +F: configs/dockstar_defconfig diff --git a/board/Seagate/goflexhome/Kconfig b/board/Seagate/goflexhome/Kconfig new file mode 100644 index 0000000..0f918cb --- /dev/null +++ b/board/Seagate/goflexhome/Kconfig @@ -0,0 +1,23 @@ +if TARGET_GOFLEXHOME + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "goflexhome" + +config SYS_VENDOR + string + default "Seagate" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "goflexhome" + +endif diff --git a/board/Seagate/goflexhome/MAINTAINERS b/board/Seagate/goflexhome/MAINTAINERS new file mode 100644 index 0000000..6d6a1ff --- /dev/null +++ b/board/Seagate/goflexhome/MAINTAINERS @@ -0,0 +1,6 @@ +GOFLEXHOME BOARD +M: Suriyan Ramasami <suriyan.r@gmail.com> +S: Maintained +F: board/Seagate/goflexhome/ +F: include/configs/goflexhome.h +F: configs/goflexhome_defconfig diff --git a/board/a3000/Kconfig b/board/a3000/Kconfig new file mode 100644 index 0000000..9ce64fd --- /dev/null +++ b/board/a3000/Kconfig @@ -0,0 +1,11 @@ +if TARGET_A3000 + +config SYS_BOARD + string + default "a3000" + +config SYS_CONFIG_NAME + string + default "A3000" + +endif diff --git a/board/a3000/MAINTAINERS b/board/a3000/MAINTAINERS new file mode 100644 index 0000000..2d8560f --- /dev/null +++ b/board/a3000/MAINTAINERS @@ -0,0 +1,6 @@ +A3000 BOARD +M: - +S: Maintained +F: board/a3000/ +F: include/configs/A3000.h +F: configs/A3000_defconfig diff --git a/board/a3m071/Kconfig b/board/a3m071/Kconfig new file mode 100644 index 0000000..ab32d5c --- /dev/null +++ b/board/a3m071/Kconfig @@ -0,0 +1,11 @@ +if TARGET_A3M071 + +config SYS_BOARD + string + default "a3m071" + +config SYS_CONFIG_NAME + string + default "a3m071" + +endif diff --git a/board/a3m071/MAINTAINERS b/board/a3m071/MAINTAINERS new file mode 100644 index 0000000..975107d --- /dev/null +++ b/board/a3m071/MAINTAINERS @@ -0,0 +1,7 @@ +A3M071 BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/a3m071/ +F: include/configs/a3m071.h +F: configs/a3m071_defconfig +F: configs/a4m2k_defconfig diff --git a/board/a4m072/Kconfig b/board/a4m072/Kconfig new file mode 100644 index 0000000..cc31947 --- /dev/null +++ b/board/a4m072/Kconfig @@ -0,0 +1,11 @@ +if TARGET_A4M072 + +config SYS_BOARD + string + default "a4m072" + +config SYS_CONFIG_NAME + string + default "a4m072" + +endif diff --git a/board/a4m072/MAINTAINERS b/board/a4m072/MAINTAINERS new file mode 100644 index 0000000..83dc59e --- /dev/null +++ b/board/a4m072/MAINTAINERS @@ -0,0 +1,6 @@ +A4M072 BOARD +M: Sergei Poselenov <sposelenov@emcraft.com> +S: Maintained +F: board/a4m072/ +F: include/configs/a4m072.h +F: configs/a4m072_defconfig diff --git a/board/abilis/tb100/Kconfig b/board/abilis/tb100/Kconfig new file mode 100644 index 0000000..eccf928 --- /dev/null +++ b/board/abilis/tb100/Kconfig @@ -0,0 +1,19 @@ +if TARGET_TB100 + +config SYS_CPU + string + default "arc700" + +config SYS_BOARD + string + default "tb100" + +config SYS_VENDOR + string + default "abilis" + +config SYS_CONFIG_NAME + string + default "tb100" + +endif diff --git a/board/abilis/tb100/MAINTAINERS b/board/abilis/tb100/MAINTAINERS new file mode 100644 index 0000000..f08c3fe --- /dev/null +++ b/board/abilis/tb100/MAINTAINERS @@ -0,0 +1,6 @@ +TB100 BOARD +M: Alexey Brodkin <abrodkin@synopsys.com> +S: Maintained +F: board/abilis/tb100/ +F: include/configs/tb100.h +F: configs/tb100_defconfig diff --git a/board/afeb9260/Kconfig b/board/afeb9260/Kconfig new file mode 100644 index 0000000..008d943 --- /dev/null +++ b/board/afeb9260/Kconfig @@ -0,0 +1,19 @@ +if TARGET_AFEB9260 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "afeb9260" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "afeb9260" + +endif diff --git a/board/afeb9260/MAINTAINERS b/board/afeb9260/MAINTAINERS new file mode 100644 index 0000000..337f302 --- /dev/null +++ b/board/afeb9260/MAINTAINERS @@ -0,0 +1,6 @@ +AFEB9260 BOARD +M: Sergey Lapin <slapin@ossfans.org> +S: Maintained +F: board/afeb9260/ +F: include/configs/afeb9260.h +F: configs/afeb9260_defconfig diff --git a/board/ait/cam_enc_4xx/Kconfig b/board/ait/cam_enc_4xx/Kconfig new file mode 100644 index 0000000..d1f89df --- /dev/null +++ b/board/ait/cam_enc_4xx/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CAM_ENC_4XX + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "cam_enc_4xx" + +config SYS_VENDOR + string + default "ait" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "cam_enc_4xx" + +endif diff --git a/board/ait/cam_enc_4xx/MAINTAINERS b/board/ait/cam_enc_4xx/MAINTAINERS new file mode 100644 index 0000000..d6477c6 --- /dev/null +++ b/board/ait/cam_enc_4xx/MAINTAINERS @@ -0,0 +1,6 @@ +CAM_ENC_4XX BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/ait/cam_enc_4xx/ +F: include/configs/cam_enc_4xx.h +F: configs/cam_enc_4xx_defconfig diff --git a/board/alphaproject/ap_sh4a_4a/Kconfig b/board/alphaproject/ap_sh4a_4a/Kconfig new file mode 100644 index 0000000..7893164 --- /dev/null +++ b/board/alphaproject/ap_sh4a_4a/Kconfig @@ -0,0 +1,19 @@ +if TARGET_AP_SH4A_4A + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "ap_sh4a_4a" + +config SYS_VENDOR + string + default "alphaproject" + +config SYS_CONFIG_NAME + string + default "ap_sh4a_4a" + +endif diff --git a/board/alphaproject/ap_sh4a_4a/MAINTAINERS b/board/alphaproject/ap_sh4a_4a/MAINTAINERS new file mode 100644 index 0000000..f24489d --- /dev/null +++ b/board/alphaproject/ap_sh4a_4a/MAINTAINERS @@ -0,0 +1,7 @@ +AP_SH4A_4A BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/alphaproject/ap_sh4a_4a/ +F: include/configs/ap_sh4a_4a.h +F: configs/ap_sh4a_4a_defconfig diff --git a/board/altera/nios2-generic/Kconfig b/board/altera/nios2-generic/Kconfig new file mode 100644 index 0000000..1209638 --- /dev/null +++ b/board/altera/nios2-generic/Kconfig @@ -0,0 +1,15 @@ +if TARGET_NIOS2_GENERIC + +config SYS_BOARD + string + default "nios2-generic" + +config SYS_VENDOR + string + default "altera" + +config SYS_CONFIG_NAME + string + default "nios2-generic" + +endif diff --git a/board/altera/nios2-generic/MAINTAINERS b/board/altera/nios2-generic/MAINTAINERS new file mode 100644 index 0000000..9cbcba9 --- /dev/null +++ b/board/altera/nios2-generic/MAINTAINERS @@ -0,0 +1,6 @@ +NIOS2-GENERIC BOARD +M: Scott McNutt <smcnutt@psyent.com> +S: Maintained +F: board/altera/nios2-generic/ +F: include/configs/nios2-generic.h +F: configs/nios2-generic_defconfig diff --git a/board/altera/socfpga/Kconfig b/board/altera/socfpga/Kconfig new file mode 100644 index 0000000..d0d9012 --- /dev/null +++ b/board/altera/socfpga/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SOCFPGA_CYCLONE5 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "socfpga" + +config SYS_VENDOR + string + default "altera" + +config SYS_SOC + string + default "socfpga" + +config SYS_CONFIG_NAME + string + default "socfpga_cyclone5" + +endif diff --git a/board/altera/socfpga/MAINTAINERS b/board/altera/socfpga/MAINTAINERS new file mode 100644 index 0000000..626c0f7 --- /dev/null +++ b/board/altera/socfpga/MAINTAINERS @@ -0,0 +1,7 @@ +SOCFPGA BOARD +M: Dinh Nguyen <dinguyen@altera.com> +M: Chin-Liang See <clsee@altera.com> +S: Maintained +F: board/altera/socfpga/ +F: include/configs/socfpga_cyclone5.h +F: configs/socfpga_cyclone5_defconfig diff --git a/board/amcc/acadia/Kconfig b/board/amcc/acadia/Kconfig new file mode 100644 index 0000000..096f02e --- /dev/null +++ b/board/amcc/acadia/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ACADIA + +config SYS_BOARD + string + default "acadia" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "acadia" + +endif diff --git a/board/amcc/acadia/MAINTAINERS b/board/amcc/acadia/MAINTAINERS new file mode 100644 index 0000000..c16961f --- /dev/null +++ b/board/amcc/acadia/MAINTAINERS @@ -0,0 +1,6 @@ +ACADIA BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/acadia/ +F: include/configs/acadia.h +F: configs/acadia_defconfig diff --git a/board/amcc/bamboo/Kconfig b/board/amcc/bamboo/Kconfig new file mode 100644 index 0000000..a002cfa --- /dev/null +++ b/board/amcc/bamboo/Kconfig @@ -0,0 +1,15 @@ +if TARGET_BAMBOO + +config SYS_BOARD + string + default "bamboo" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "bamboo" + +endif diff --git a/board/amcc/bamboo/MAINTAINERS b/board/amcc/bamboo/MAINTAINERS new file mode 100644 index 0000000..4c8929e --- /dev/null +++ b/board/amcc/bamboo/MAINTAINERS @@ -0,0 +1,6 @@ +BAMBOO BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/bamboo/ +F: include/configs/bamboo.h +F: configs/bamboo_defconfig diff --git a/board/amcc/bluestone/Kconfig b/board/amcc/bluestone/Kconfig new file mode 100644 index 0000000..2f5999d --- /dev/null +++ b/board/amcc/bluestone/Kconfig @@ -0,0 +1,15 @@ +if TARGET_BLUESTONE + +config SYS_BOARD + string + default "bluestone" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "bluestone" + +endif diff --git a/board/amcc/bluestone/MAINTAINERS b/board/amcc/bluestone/MAINTAINERS new file mode 100644 index 0000000..4a329e9 --- /dev/null +++ b/board/amcc/bluestone/MAINTAINERS @@ -0,0 +1,6 @@ +BLUESTONE BOARD +M: Tirumala Marri <tmarri@apm.com> +S: Orphan (since 2014-03) +F: board/amcc/bluestone/ +F: include/configs/bluestone.h +F: configs/bluestone_defconfig diff --git a/board/amcc/bubinga/Kconfig b/board/amcc/bubinga/Kconfig new file mode 100644 index 0000000..29f769b --- /dev/null +++ b/board/amcc/bubinga/Kconfig @@ -0,0 +1,15 @@ +if TARGET_BUBINGA + +config SYS_BOARD + string + default "bubinga" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "bubinga" + +endif diff --git a/board/amcc/bubinga/MAINTAINERS b/board/amcc/bubinga/MAINTAINERS new file mode 100644 index 0000000..9d5ace2 --- /dev/null +++ b/board/amcc/bubinga/MAINTAINERS @@ -0,0 +1,6 @@ +BUBINGA BOARD +M: - +S: Maintained +F: board/amcc/bubinga/ +F: include/configs/bubinga.h +F: configs/bubinga_defconfig diff --git a/board/amcc/canyonlands/Kconfig b/board/amcc/canyonlands/Kconfig new file mode 100644 index 0000000..545056a --- /dev/null +++ b/board/amcc/canyonlands/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CANYONLANDS + +config SYS_BOARD + string + default "canyonlands" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "canyonlands" + +endif diff --git a/board/amcc/canyonlands/MAINTAINERS b/board/amcc/canyonlands/MAINTAINERS new file mode 100644 index 0000000..52bf004 --- /dev/null +++ b/board/amcc/canyonlands/MAINTAINERS @@ -0,0 +1,8 @@ +CANYONLANDS BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/canyonlands/ +F: include/configs/canyonlands.h +F: configs/arches_defconfig +F: configs/canyonlands_defconfig +F: configs/glacier_defconfig diff --git a/board/amcc/ebony/Kconfig b/board/amcc/ebony/Kconfig new file mode 100644 index 0000000..cc1448f --- /dev/null +++ b/board/amcc/ebony/Kconfig @@ -0,0 +1,15 @@ +if TARGET_EBONY + +config SYS_BOARD + string + default "ebony" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "ebony" + +endif diff --git a/board/amcc/ebony/MAINTAINERS b/board/amcc/ebony/MAINTAINERS new file mode 100644 index 0000000..bc62851 --- /dev/null +++ b/board/amcc/ebony/MAINTAINERS @@ -0,0 +1,6 @@ +EBONY BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/ebony/ +F: include/configs/ebony.h +F: configs/ebony_defconfig diff --git a/board/amcc/katmai/Kconfig b/board/amcc/katmai/Kconfig new file mode 100644 index 0000000..2a8d783 --- /dev/null +++ b/board/amcc/katmai/Kconfig @@ -0,0 +1,15 @@ +if TARGET_KATMAI + +config SYS_BOARD + string + default "katmai" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "katmai" + +endif diff --git a/board/amcc/katmai/MAINTAINERS b/board/amcc/katmai/MAINTAINERS new file mode 100644 index 0000000..f089352 --- /dev/null +++ b/board/amcc/katmai/MAINTAINERS @@ -0,0 +1,6 @@ +KATMAI BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/katmai/ +F: include/configs/katmai.h +F: configs/katmai_defconfig diff --git a/board/amcc/kilauea/Kconfig b/board/amcc/kilauea/Kconfig new file mode 100644 index 0000000..3564cc3 --- /dev/null +++ b/board/amcc/kilauea/Kconfig @@ -0,0 +1,15 @@ +if TARGET_KILAUEA + +config SYS_BOARD + string + default "kilauea" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "kilauea" + +endif diff --git a/board/amcc/kilauea/MAINTAINERS b/board/amcc/kilauea/MAINTAINERS new file mode 100644 index 0000000..12bbcb1 --- /dev/null +++ b/board/amcc/kilauea/MAINTAINERS @@ -0,0 +1,7 @@ +KILAUEA BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/kilauea/ +F: include/configs/kilauea.h +F: configs/haleakala_defconfig +F: configs/kilauea_defconfig diff --git a/board/amcc/luan/Kconfig b/board/amcc/luan/Kconfig new file mode 100644 index 0000000..7f19980 --- /dev/null +++ b/board/amcc/luan/Kconfig @@ -0,0 +1,15 @@ +if TARGET_LUAN + +config SYS_BOARD + string + default "luan" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "luan" + +endif diff --git a/board/amcc/luan/MAINTAINERS b/board/amcc/luan/MAINTAINERS new file mode 100644 index 0000000..a23296d --- /dev/null +++ b/board/amcc/luan/MAINTAINERS @@ -0,0 +1,6 @@ +LUAN BOARD +M: John Otken <jotken@softadvances.com> +S: Maintained +F: board/amcc/luan/ +F: include/configs/luan.h +F: configs/luan_defconfig diff --git a/board/amcc/makalu/Kconfig b/board/amcc/makalu/Kconfig new file mode 100644 index 0000000..7f95bdc --- /dev/null +++ b/board/amcc/makalu/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MAKALU + +config SYS_BOARD + string + default "makalu" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "makalu" + +endif diff --git a/board/amcc/makalu/MAINTAINERS b/board/amcc/makalu/MAINTAINERS new file mode 100644 index 0000000..ecd5e19 --- /dev/null +++ b/board/amcc/makalu/MAINTAINERS @@ -0,0 +1,6 @@ +MAKALU BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/makalu/ +F: include/configs/makalu.h +F: configs/makalu_defconfig diff --git a/board/amcc/ocotea/Kconfig b/board/amcc/ocotea/Kconfig new file mode 100644 index 0000000..5eaf812 --- /dev/null +++ b/board/amcc/ocotea/Kconfig @@ -0,0 +1,15 @@ +if TARGET_OCOTEA + +config SYS_BOARD + string + default "ocotea" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "ocotea" + +endif diff --git a/board/amcc/ocotea/MAINTAINERS b/board/amcc/ocotea/MAINTAINERS new file mode 100644 index 0000000..34634a2 --- /dev/null +++ b/board/amcc/ocotea/MAINTAINERS @@ -0,0 +1,6 @@ +OCOTEA BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/ocotea/ +F: include/configs/ocotea.h +F: configs/ocotea_defconfig diff --git a/board/amcc/redwood/Kconfig b/board/amcc/redwood/Kconfig new file mode 100644 index 0000000..001d400 --- /dev/null +++ b/board/amcc/redwood/Kconfig @@ -0,0 +1,15 @@ +if TARGET_REDWOOD + +config SYS_BOARD + string + default "redwood" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "redwood" + +endif diff --git a/board/amcc/redwood/MAINTAINERS b/board/amcc/redwood/MAINTAINERS new file mode 100644 index 0000000..756b301 --- /dev/null +++ b/board/amcc/redwood/MAINTAINERS @@ -0,0 +1,6 @@ +REDWOOD BOARD +M: Feng Kan <fkan@amcc.com> +S: Maintained +F: board/amcc/redwood/ +F: include/configs/redwood.h +F: configs/redwood_defconfig diff --git a/board/amcc/sequoia/Kconfig b/board/amcc/sequoia/Kconfig new file mode 100644 index 0000000..ddcaced --- /dev/null +++ b/board/amcc/sequoia/Kconfig @@ -0,0 +1,15 @@ +if TARGET_SEQUOIA + +config SYS_BOARD + string + default "sequoia" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "sequoia" + +endif diff --git a/board/amcc/sequoia/MAINTAINERS b/board/amcc/sequoia/MAINTAINERS new file mode 100644 index 0000000..6c28a37 --- /dev/null +++ b/board/amcc/sequoia/MAINTAINERS @@ -0,0 +1,9 @@ +SEQUOIA BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/sequoia/ +F: include/configs/sequoia.h +F: configs/rainier_defconfig +F: configs/rainier_ramboot_defconfig +F: configs/sequoia_defconfig +F: configs/sequoia_ramboot_defconfig diff --git a/board/amcc/taihu/Kconfig b/board/amcc/taihu/Kconfig new file mode 100644 index 0000000..8411a82 --- /dev/null +++ b/board/amcc/taihu/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TAIHU + +config SYS_BOARD + string + default "taihu" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "taihu" + +endif diff --git a/board/amcc/taihu/MAINTAINERS b/board/amcc/taihu/MAINTAINERS new file mode 100644 index 0000000..2efc254 --- /dev/null +++ b/board/amcc/taihu/MAINTAINERS @@ -0,0 +1,6 @@ +TAIHU BOARD +M: John Otken <jotken@softadvances.com> +S: Maintained +F: board/amcc/taihu/ +F: include/configs/taihu.h +F: configs/taihu_defconfig diff --git a/board/amcc/taishan/Kconfig b/board/amcc/taishan/Kconfig new file mode 100644 index 0000000..0022063 --- /dev/null +++ b/board/amcc/taishan/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TAISHAN + +config SYS_BOARD + string + default "taishan" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "taishan" + +endif diff --git a/board/amcc/taishan/MAINTAINERS b/board/amcc/taishan/MAINTAINERS new file mode 100644 index 0000000..d9d80bf --- /dev/null +++ b/board/amcc/taishan/MAINTAINERS @@ -0,0 +1,6 @@ +TAISHAN BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/taishan/ +F: include/configs/taishan.h +F: configs/taishan_defconfig diff --git a/board/amcc/walnut/Kconfig b/board/amcc/walnut/Kconfig new file mode 100644 index 0000000..f98cec5 --- /dev/null +++ b/board/amcc/walnut/Kconfig @@ -0,0 +1,15 @@ +if TARGET_WALNUT + +config SYS_BOARD + string + default "walnut" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "walnut" + +endif diff --git a/board/amcc/walnut/MAINTAINERS b/board/amcc/walnut/MAINTAINERS new file mode 100644 index 0000000..2a98c85 --- /dev/null +++ b/board/amcc/walnut/MAINTAINERS @@ -0,0 +1,7 @@ +WALNUT BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/walnut/ +F: include/configs/walnut.h +F: configs/sycamore_defconfig +F: configs/walnut_defconfig diff --git a/board/amcc/yosemite/Kconfig b/board/amcc/yosemite/Kconfig new file mode 100644 index 0000000..8aa62c0 --- /dev/null +++ b/board/amcc/yosemite/Kconfig @@ -0,0 +1,15 @@ +if TARGET_YOSEMITE + +config SYS_BOARD + string + default "yosemite" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "yosemite" + +endif diff --git a/board/amcc/yosemite/MAINTAINERS b/board/amcc/yosemite/MAINTAINERS new file mode 100644 index 0000000..3f553e1 --- /dev/null +++ b/board/amcc/yosemite/MAINTAINERS @@ -0,0 +1,7 @@ +YOSEMITE BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/amcc/yosemite/ +F: include/configs/yosemite.h +F: configs/yellowstone_defconfig +F: configs/yosemite_defconfig diff --git a/board/amcc/yucca/Kconfig b/board/amcc/yucca/Kconfig new file mode 100644 index 0000000..945333f --- /dev/null +++ b/board/amcc/yucca/Kconfig @@ -0,0 +1,15 @@ +if TARGET_YUCCA + +config SYS_BOARD + string + default "yucca" + +config SYS_VENDOR + string + default "amcc" + +config SYS_CONFIG_NAME + string + default "yucca" + +endif diff --git a/board/amcc/yucca/MAINTAINERS b/board/amcc/yucca/MAINTAINERS new file mode 100644 index 0000000..0663003 --- /dev/null +++ b/board/amcc/yucca/MAINTAINERS @@ -0,0 +1,6 @@ +YUCCA BOARD +M: - +S: Maintained +F: board/amcc/yucca/ +F: include/configs/yucca.h +F: configs/yucca_defconfig diff --git a/board/armadeus/apf27/Kconfig b/board/armadeus/apf27/Kconfig new file mode 100644 index 0000000..f2d33c6 --- /dev/null +++ b/board/armadeus/apf27/Kconfig @@ -0,0 +1,23 @@ +if TARGET_APF27 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "apf27" + +config SYS_VENDOR + string + default "armadeus" + +config SYS_SOC + string + default "mx27" + +config SYS_CONFIG_NAME + string + default "apf27" + +endif diff --git a/board/armadeus/apf27/MAINTAINERS b/board/armadeus/apf27/MAINTAINERS new file mode 100644 index 0000000..09f0525 --- /dev/null +++ b/board/armadeus/apf27/MAINTAINERS @@ -0,0 +1,7 @@ +APF27 BOARD +M: Philippe Reynes <tremyfr@yahoo.fr> +M: Eric Jarrige <eric.jarrige@armadeus.org> +S: Maintained +F: board/armadeus/apf27/ +F: include/configs/apf27.h +F: configs/apf27_defconfig diff --git a/board/armltd/integrator/Kconfig b/board/armltd/integrator/Kconfig new file mode 100644 index 0000000..c1ac6b1 --- /dev/null +++ b/board/armltd/integrator/Kconfig @@ -0,0 +1,159 @@ +if TARGET_INTEGRATORAP_CM720T + +config SYS_CPU + string + default "arm720t" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorap" + +endif + +if TARGET_INTEGRATORAP_CM920T + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorap" + +endif + +if TARGET_INTEGRATORCP_CM920T + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorcp" + +endif + +if TARGET_INTEGRATORAP_CM926EJS + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorap" + +endif + +if TARGET_INTEGRATORCP_CM926EJS + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorcp" + +endif + +if TARGET_INTEGRATORCP_CM1136 + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorcp" + +endif + +if TARGET_INTEGRATORAP_CM946ES + +config SYS_CPU + string + default "arm946es" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorap" + +endif + +if TARGET_INTEGRATORCP_CM946ES + +config SYS_CPU + string + default "arm946es" + +config SYS_BOARD + string + default "integrator" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "integratorcp" + +endif diff --git a/board/armltd/integrator/MAINTAINERS b/board/armltd/integrator/MAINTAINERS new file mode 100644 index 0000000..8af765e --- /dev/null +++ b/board/armltd/integrator/MAINTAINERS @@ -0,0 +1,14 @@ +INTEGRATOR BOARD +M: Linus Walleij <linus.walleij@linaro.org> +S: Maintained +F: board/armltd/integrator/ +F: include/configs/integratorcp.h +F: configs/integratorcp_cm1136_defconfig +F: include/configs/integratorap.h +F: configs/integratorap_cm720t_defconfig +F: configs/integratorap_cm920t_defconfig +F: configs/integratorcp_cm920t_defconfig +F: configs/integratorap_cm926ejs_defconfig +F: configs/integratorcp_cm926ejs_defconfig +F: configs/integratorap_cm946es_defconfig +F: configs/integratorcp_cm946es_defconfig diff --git a/board/armltd/versatile/Kconfig b/board/armltd/versatile/Kconfig new file mode 100644 index 0000000..f96d0b2 --- /dev/null +++ b/board/armltd/versatile/Kconfig @@ -0,0 +1,71 @@ +if TARGET_VERSATILEAB + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "versatile" + +config SYS_VENDOR + string + default "armltd" + +config SYS_SOC + string + default "versatile" + +config SYS_CONFIG_NAME + string + default "versatile" + +endif + +if TARGET_VERSATILEPB + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "versatile" + +config SYS_VENDOR + string + default "armltd" + +config SYS_SOC + string + default "versatile" + +config SYS_CONFIG_NAME + string + default "versatile" + +endif + +if TARGET_VERSATILEQEMU + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "versatile" + +config SYS_VENDOR + string + default "armltd" + +config SYS_SOC + string + default "versatile" + +config SYS_CONFIG_NAME + string + default "versatile" + +endif diff --git a/board/armltd/versatile/MAINTAINERS b/board/armltd/versatile/MAINTAINERS new file mode 100644 index 0000000..f390e53 --- /dev/null +++ b/board/armltd/versatile/MAINTAINERS @@ -0,0 +1,8 @@ +VERSATILE BOARD +M: - +S: Maintained +F: board/armltd/versatile/ +F: include/configs/versatile.h +F: configs/versatileab_defconfig +F: configs/versatilepb_defconfig +F: configs/versatileqemu_defconfig diff --git a/board/armltd/vexpress/Kconfig b/board/armltd/vexpress/Kconfig new file mode 100644 index 0000000..e49e871 --- /dev/null +++ b/board/armltd/vexpress/Kconfig @@ -0,0 +1,59 @@ +if TARGET_VEXPRESS_CA15_TC2 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "vexpress" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "vexpress_ca15_tc2" + +endif + +if TARGET_VEXPRESS_CA5X2 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "vexpress" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "vexpress_ca5x2" + +endif + +if TARGET_VEXPRESS_CA9X4 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "vexpress" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "vexpress_ca9x4" + +endif diff --git a/board/armltd/vexpress/MAINTAINERS b/board/armltd/vexpress/MAINTAINERS new file mode 100644 index 0000000..cfde7f2 --- /dev/null +++ b/board/armltd/vexpress/MAINTAINERS @@ -0,0 +1,14 @@ +VEXPRESS BOARD +M: - +S: Maintained +F: board/armltd/vexpress/ +F: include/configs/vexpress_ca15_tc2.h +F: configs/vexpress_ca15_tc2_defconfig + +VEXPRESS_CA5X2 BOARD +M: Matt Waddel <matt.waddel@linaro.org> +S: Maintained +F: include/configs/vexpress_ca5x2.h +F: configs/vexpress_ca5x2_defconfig +F: include/configs/vexpress_ca9x4.h +F: configs/vexpress_ca9x4_defconfig diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig new file mode 100644 index 0000000..91eb8d2 --- /dev/null +++ b/board/armltd/vexpress64/Kconfig @@ -0,0 +1,39 @@ +if TARGET_VEXPRESS_AEMV8A + +config SYS_CPU + string + default "armv8" + +config SYS_BOARD + string + default "vexpress64" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "vexpress_aemv8a" + +endif + +if TARGET_VEXPRESS_AEMV8A_SEMI + +config SYS_CPU + string + default "armv8" + +config SYS_BOARD + string + default "vexpress64" + +config SYS_VENDOR + string + default "armltd" + +config SYS_CONFIG_NAME + string + default "vexpress_aemv8a" + +endif diff --git a/board/armltd/vexpress64/MAINTAINERS b/board/armltd/vexpress64/MAINTAINERS new file mode 100644 index 0000000..97c4b0e --- /dev/null +++ b/board/armltd/vexpress64/MAINTAINERS @@ -0,0 +1,11 @@ +VEXPRESS64 BOARD +M: David Feng <fenghua@phytium.com.cn> +S: Maintained +F: board/armltd/vexpress64/ +F: include/configs/vexpress_aemv8a.h +F: configs/vexpress_aemv8a_defconfig + +VEXPRESS_AEMV8A_SEMI BOARD +M: Steve Rae <srae@broadcom.com> +S: Maintained +F: configs/vexpress_aemv8a_semi_defconfig diff --git a/board/astro/mcf5373l/Kconfig b/board/astro/mcf5373l/Kconfig new file mode 100644 index 0000000..6e947dc --- /dev/null +++ b/board/astro/mcf5373l/Kconfig @@ -0,0 +1,19 @@ +if TARGET_ASTRO_MCF5373L + +config SYS_CPU + string + default "mcf532x" + +config SYS_BOARD + string + default "mcf5373l" + +config SYS_VENDOR + string + default "astro" + +config SYS_CONFIG_NAME + string + default "astro_mcf5373l" + +endif diff --git a/board/astro/mcf5373l/MAINTAINERS b/board/astro/mcf5373l/MAINTAINERS new file mode 100644 index 0000000..6c23da7 --- /dev/null +++ b/board/astro/mcf5373l/MAINTAINERS @@ -0,0 +1,6 @@ +MCF5373L BOARD +M: Wolfgang Wegner <w.wegner@astro-kom.de> +S: Maintained +F: board/astro/mcf5373l/ +F: include/configs/astro_mcf5373l.h +F: configs/astro_mcf5373l_defconfig diff --git a/board/atc/Kconfig b/board/atc/Kconfig new file mode 100644 index 0000000..826753f --- /dev/null +++ b/board/atc/Kconfig @@ -0,0 +1,11 @@ +if TARGET_ATC + +config SYS_BOARD + string + default "atc" + +config SYS_CONFIG_NAME + string + default "atc" + +endif diff --git a/board/atc/MAINTAINERS b/board/atc/MAINTAINERS new file mode 100644 index 0000000..1c5d61e --- /dev/null +++ b/board/atc/MAINTAINERS @@ -0,0 +1,6 @@ +ATC BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/atc/ +F: include/configs/atc.h +F: configs/atc_defconfig diff --git a/board/atmark-techno/armadillo-800eva/Kconfig b/board/atmark-techno/armadillo-800eva/Kconfig new file mode 100644 index 0000000..c8f89fe --- /dev/null +++ b/board/atmark-techno/armadillo-800eva/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ARMADILLO_800EVA + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "armadillo-800eva" + +config SYS_VENDOR + string + default "atmark-techno" + +config SYS_SOC + string + default "rmobile" + +config SYS_CONFIG_NAME + string + default "armadillo-800eva" + +endif diff --git a/board/atmark-techno/armadillo-800eva/MAINTAINERS b/board/atmark-techno/armadillo-800eva/MAINTAINERS new file mode 100644 index 0000000..6f547d8 --- /dev/null +++ b/board/atmark-techno/armadillo-800eva/MAINTAINERS @@ -0,0 +1,6 @@ +ARMADILLO-800EVA BOARD +M: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> +S: Maintained +F: board/atmark-techno/armadillo-800eva/ +F: include/configs/armadillo-800eva.h +F: configs/armadillo-800eva_defconfig diff --git a/board/atmel/at91rm9200ek/Kconfig b/board/atmel/at91rm9200ek/Kconfig new file mode 100644 index 0000000..d7ee4f4 --- /dev/null +++ b/board/atmel/at91rm9200ek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91RM9200EK + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "at91rm9200ek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91rm9200ek" + +endif diff --git a/board/atmel/at91rm9200ek/MAINTAINERS b/board/atmel/at91rm9200ek/MAINTAINERS new file mode 100644 index 0000000..d2a479b --- /dev/null +++ b/board/atmel/at91rm9200ek/MAINTAINERS @@ -0,0 +1,7 @@ +AT91RM9200EK BOARD +M: Andreas Bießmann <andreas.devel@gmail.com> +S: Maintained +F: board/atmel/at91rm9200ek/ +F: include/configs/at91rm9200ek.h +F: configs/at91rm9200ek_defconfig +F: configs/at91rm9200ek_ram_defconfig diff --git a/board/atmel/at91sam9260ek/Kconfig b/board/atmel/at91sam9260ek/Kconfig new file mode 100644 index 0000000..14af5bc --- /dev/null +++ b/board/atmel/at91sam9260ek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91SAM9260EK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "at91sam9260ek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91sam9260ek" + +endif diff --git a/board/atmel/at91sam9260ek/MAINTAINERS b/board/atmel/at91sam9260ek/MAINTAINERS new file mode 100644 index 0000000..0c7c721 --- /dev/null +++ b/board/atmel/at91sam9260ek/MAINTAINERS @@ -0,0 +1,16 @@ +AT91SAM9260EK BOARD +M: Stelian Pop <stelian@popies.net> +S: Maintained +F: board/atmel/at91sam9260ek/ +F: include/configs/at91sam9260ek.h +F: configs/at91sam9260ek_dataflash_cs0_defconfig +F: configs/at91sam9260ek_dataflash_cs1_defconfig +F: configs/at91sam9260ek_nandflash_defconfig +F: configs/at91sam9g20ek_2mmc_nandflash_defconfig +F: configs/at91sam9g20ek_dataflash_cs0_defconfig +F: configs/at91sam9g20ek_dataflash_cs1_defconfig +F: configs/at91sam9g20ek_mmc_defconfig +F: configs/at91sam9g20ek_nandflash_defconfig +F: configs/at91sam9xeek_dataflash_cs0_defconfig +F: configs/at91sam9xeek_dataflash_cs1_defconfig +F: configs/at91sam9xeek_nandflash_defconfig diff --git a/board/atmel/at91sam9261ek/Kconfig b/board/atmel/at91sam9261ek/Kconfig new file mode 100644 index 0000000..63dcdd8 --- /dev/null +++ b/board/atmel/at91sam9261ek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91SAM9261EK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "at91sam9261ek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91sam9261ek" + +endif diff --git a/board/atmel/at91sam9261ek/MAINTAINERS b/board/atmel/at91sam9261ek/MAINTAINERS new file mode 100644 index 0000000..682dfdf --- /dev/null +++ b/board/atmel/at91sam9261ek/MAINTAINERS @@ -0,0 +1,11 @@ +AT91SAM9261EK BOARD +M: Stelian Pop <stelian@popies.net> +S: Maintained +F: board/atmel/at91sam9261ek/ +F: include/configs/at91sam9261ek.h +F: configs/at91sam9261ek_dataflash_cs0_defconfig +F: configs/at91sam9261ek_dataflash_cs3_defconfig +F: configs/at91sam9261ek_nandflash_defconfig +F: configs/at91sam9g10ek_dataflash_cs0_defconfig +F: configs/at91sam9g10ek_dataflash_cs3_defconfig +F: configs/at91sam9g10ek_nandflash_defconfig diff --git a/board/atmel/at91sam9263ek/Kconfig b/board/atmel/at91sam9263ek/Kconfig new file mode 100644 index 0000000..fa0a58a --- /dev/null +++ b/board/atmel/at91sam9263ek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91SAM9263EK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "at91sam9263ek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91sam9263ek" + +endif diff --git a/board/atmel/at91sam9263ek/MAINTAINERS b/board/atmel/at91sam9263ek/MAINTAINERS new file mode 100644 index 0000000..3b4b654 --- /dev/null +++ b/board/atmel/at91sam9263ek/MAINTAINERS @@ -0,0 +1,10 @@ +AT91SAM9263EK BOARD +M: Stelian Pop <stelian@popies.net> +S: Maintained +F: board/atmel/at91sam9263ek/ +F: include/configs/at91sam9263ek.h +F: configs/at91sam9263ek_dataflash_defconfig +F: configs/at91sam9263ek_dataflash_cs0_defconfig +F: configs/at91sam9263ek_nandflash_defconfig +F: configs/at91sam9263ek_norflash_defconfig +F: configs/at91sam9263ek_norflash_boot_defconfig diff --git a/board/atmel/at91sam9m10g45ek/Kconfig b/board/atmel/at91sam9m10g45ek/Kconfig new file mode 100644 index 0000000..8567f95 --- /dev/null +++ b/board/atmel/at91sam9m10g45ek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91SAM9M10G45EK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "at91sam9m10g45ek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91sam9m10g45ek" + +endif diff --git a/board/atmel/at91sam9m10g45ek/MAINTAINERS b/board/atmel/at91sam9m10g45ek/MAINTAINERS new file mode 100644 index 0000000..6389e6a --- /dev/null +++ b/board/atmel/at91sam9m10g45ek/MAINTAINERS @@ -0,0 +1,7 @@ +AT91SAM9M10G45EK BOARD +M: Bo Shen <voice.shen@atmel.com> +S: Maintained +F: board/atmel/at91sam9m10g45ek/ +F: include/configs/at91sam9m10g45ek.h +F: configs/at91sam9m10g45ek_mmc_defconfig +F: configs/at91sam9m10g45ek_nandflash_defconfig diff --git a/board/atmel/at91sam9n12ek/Kconfig b/board/atmel/at91sam9n12ek/Kconfig new file mode 100644 index 0000000..4fc714b --- /dev/null +++ b/board/atmel/at91sam9n12ek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91SAM9N12EK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "at91sam9n12ek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91sam9n12ek" + +endif diff --git a/board/atmel/at91sam9n12ek/MAINTAINERS b/board/atmel/at91sam9n12ek/MAINTAINERS new file mode 100644 index 0000000..82a9192 --- /dev/null +++ b/board/atmel/at91sam9n12ek/MAINTAINERS @@ -0,0 +1,8 @@ +AT91SAM9N12EK BOARD +M: Josh Wu <josh.wu@atmel.com> +S: Maintained +F: board/atmel/at91sam9n12ek/ +F: include/configs/at91sam9n12ek.h +F: configs/at91sam9n12ek_mmc_defconfig +F: configs/at91sam9n12ek_nandflash_defconfig +F: configs/at91sam9n12ek_spiflash_defconfig diff --git a/board/atmel/at91sam9rlek/Kconfig b/board/atmel/at91sam9rlek/Kconfig new file mode 100644 index 0000000..178f80d --- /dev/null +++ b/board/atmel/at91sam9rlek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91SAM9RLEK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "at91sam9rlek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91sam9rlek" + +endif diff --git a/board/atmel/at91sam9rlek/MAINTAINERS b/board/atmel/at91sam9rlek/MAINTAINERS new file mode 100644 index 0000000..7dd8ef7 --- /dev/null +++ b/board/atmel/at91sam9rlek/MAINTAINERS @@ -0,0 +1,7 @@ +AT91SAM9RLEK BOARD +M: Stelian Pop <stelian@popies.net> +S: Maintained +F: board/atmel/at91sam9rlek/ +F: include/configs/at91sam9rlek.h +F: configs/at91sam9rlek_dataflash_defconfig +F: configs/at91sam9rlek_nandflash_defconfig diff --git a/board/atmel/at91sam9x5ek/Kconfig b/board/atmel/at91sam9x5ek/Kconfig new file mode 100644 index 0000000..0a0b132 --- /dev/null +++ b/board/atmel/at91sam9x5ek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AT91SAM9X5EK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "at91sam9x5ek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "at91sam9x5ek" + +endif diff --git a/board/atmel/at91sam9x5ek/MAINTAINERS b/board/atmel/at91sam9x5ek/MAINTAINERS new file mode 100644 index 0000000..5fea489 --- /dev/null +++ b/board/atmel/at91sam9x5ek/MAINTAINERS @@ -0,0 +1,9 @@ +AT91SAM9X5EK BOARD +M: Bo Shen <voice.shen@atmel.com> +S: Maintained +F: board/atmel/at91sam9x5ek/ +F: include/configs/at91sam9x5ek.h +F: configs/at91sam9x5ek_dataflash_defconfig +F: configs/at91sam9x5ek_mmc_defconfig +F: configs/at91sam9x5ek_nandflash_defconfig +F: configs/at91sam9x5ek_spiflash_defconfig diff --git a/board/atmel/atngw100/Kconfig b/board/atmel/atngw100/Kconfig new file mode 100644 index 0000000..a966b31 --- /dev/null +++ b/board/atmel/atngw100/Kconfig @@ -0,0 +1,19 @@ +if TARGET_ATNGW100 + +config SYS_BOARD + string + default "atngw100" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "atngw100" + +endif diff --git a/board/atmel/atngw100/MAINTAINERS b/board/atmel/atngw100/MAINTAINERS new file mode 100644 index 0000000..dd698ea --- /dev/null +++ b/board/atmel/atngw100/MAINTAINERS @@ -0,0 +1,6 @@ +ATNGW100 BOARD +M: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> +S: Orphan (since 2014-06) +F: board/atmel/atngw100/ +F: include/configs/atngw100.h +F: configs/atngw100_defconfig diff --git a/board/atmel/atngw100mkii/Kconfig b/board/atmel/atngw100mkii/Kconfig new file mode 100644 index 0000000..dcea07e --- /dev/null +++ b/board/atmel/atngw100mkii/Kconfig @@ -0,0 +1,19 @@ +if TARGET_ATNGW100MKII + +config SYS_BOARD + string + default "atngw100mkii" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "atngw100mkii" + +endif diff --git a/board/atmel/atngw100mkii/MAINTAINERS b/board/atmel/atngw100mkii/MAINTAINERS new file mode 100644 index 0000000..212363e --- /dev/null +++ b/board/atmel/atngw100mkii/MAINTAINERS @@ -0,0 +1,6 @@ +ATNGW100MKII BOARD +M: Andreas Bießmann <andreas.devel@googlemail.com> +S: Maintained +F: board/atmel/atngw100mkii/ +F: include/configs/atngw100mkii.h +F: configs/atngw100mkii_defconfig diff --git a/board/atmel/atstk1000/Kconfig b/board/atmel/atstk1000/Kconfig new file mode 100644 index 0000000..1a24409 --- /dev/null +++ b/board/atmel/atstk1000/Kconfig @@ -0,0 +1,79 @@ +if TARGET_ATSTK1002 + +config SYS_BOARD + string + default "atstk1000" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "atstk1002" + +endif + +if TARGET_ATSTK1003 + +config SYS_BOARD + string + default "atstk1000" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "atstk1003" + +endif + +if TARGET_ATSTK1004 + +config SYS_BOARD + string + default "atstk1000" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "atstk1004" + +endif + +if TARGET_ATSTK1006 + +config SYS_BOARD + string + default "atstk1000" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "atstk1006" + +endif diff --git a/board/atmel/atstk1000/MAINTAINERS b/board/atmel/atstk1000/MAINTAINERS new file mode 100644 index 0000000..76365b0 --- /dev/null +++ b/board/atmel/atstk1000/MAINTAINERS @@ -0,0 +1,12 @@ +ATSTK1000 BOARD +M: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> +S: Orphan (since 2014-06) +F: board/atmel/atstk1000/ +F: include/configs/atstk1002.h +F: configs/atstk1002_defconfig +F: include/configs/atstk1003.h +F: configs/atstk1003_defconfig +F: include/configs/atstk1004.h +F: configs/atstk1004_defconfig +F: include/configs/atstk1006.h +F: configs/atstk1006_defconfig diff --git a/board/atmel/sama5d3_xplained/Kconfig b/board/atmel/sama5d3_xplained/Kconfig new file mode 100644 index 0000000..603b241 --- /dev/null +++ b/board/atmel/sama5d3_xplained/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SAMA5D3_XPLAINED + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "sama5d3_xplained" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "sama5d3_xplained" + +endif diff --git a/board/atmel/sama5d3_xplained/MAINTAINERS b/board/atmel/sama5d3_xplained/MAINTAINERS new file mode 100644 index 0000000..8a09c19 --- /dev/null +++ b/board/atmel/sama5d3_xplained/MAINTAINERS @@ -0,0 +1,7 @@ +SAMA5D3_XPLAINED BOARD +M: Bo Shen <voice.shen@atmel.com> +S: Maintained +F: board/atmel/sama5d3_xplained/ +F: include/configs/sama5d3_xplained.h +F: configs/sama5d3_xplained_mmc_defconfig +F: configs/sama5d3_xplained_nandflash_defconfig diff --git a/board/atmel/sama5d3xek/Kconfig b/board/atmel/sama5d3xek/Kconfig new file mode 100644 index 0000000..5b4eb6f --- /dev/null +++ b/board/atmel/sama5d3xek/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SAMA5D3XEK + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "sama5d3xek" + +config SYS_VENDOR + string + default "atmel" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "sama5d3xek" + +endif diff --git a/board/atmel/sama5d3xek/MAINTAINERS b/board/atmel/sama5d3xek/MAINTAINERS new file mode 100644 index 0000000..560303c --- /dev/null +++ b/board/atmel/sama5d3xek/MAINTAINERS @@ -0,0 +1,8 @@ +SAMA5D3XEK BOARD +M: Bo Shen <voice.shen@atmel.com> +S: Maintained +F: board/atmel/sama5d3xek/ +F: include/configs/sama5d3xek.h +F: configs/sama5d3xek_mmc_defconfig +F: configs/sama5d3xek_nandflash_defconfig +F: configs/sama5d3xek_spiflash_defconfig diff --git a/board/avionic-design/medcom-wide/Kconfig b/board/avionic-design/medcom-wide/Kconfig new file mode 100644 index 0000000..2472fe2 --- /dev/null +++ b/board/avionic-design/medcom-wide/Kconfig @@ -0,0 +1,24 @@ +if TARGET_MEDCOM_WIDE + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "medcom-wide" + +config SYS_VENDOR + string + default "avionic-design" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "medcom-wide" + +endif diff --git a/board/avionic-design/medcom-wide/MAINTAINERS b/board/avionic-design/medcom-wide/MAINTAINERS new file mode 100644 index 0000000..0a00fcf --- /dev/null +++ b/board/avionic-design/medcom-wide/MAINTAINERS @@ -0,0 +1,6 @@ +MEDCOM-WIDE BOARD +M: Alban Bedel <alban.bedel@avionic-design.de> +S: Maintained +F: board/avionic-design/medcom-wide/ +F: include/configs/medcom-wide.h +F: configs/medcom-wide_defconfig diff --git a/board/avionic-design/plutux/Kconfig b/board/avionic-design/plutux/Kconfig new file mode 100644 index 0000000..a697a54 --- /dev/null +++ b/board/avionic-design/plutux/Kconfig @@ -0,0 +1,24 @@ +if TARGET_PLUTUX + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "plutux" + +config SYS_VENDOR + string + default "avionic-design" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "plutux" + +endif diff --git a/board/avionic-design/plutux/MAINTAINERS b/board/avionic-design/plutux/MAINTAINERS new file mode 100644 index 0000000..e8ef509 --- /dev/null +++ b/board/avionic-design/plutux/MAINTAINERS @@ -0,0 +1,6 @@ +PLUTUX BOARD +M: Alban Bedel <alban.bedel@avionic-design.de> +S: Maintained +F: board/avionic-design/plutux/ +F: include/configs/plutux.h +F: configs/plutux_defconfig diff --git a/board/avionic-design/tec-ng/Kconfig b/board/avionic-design/tec-ng/Kconfig new file mode 100644 index 0000000..f52edda --- /dev/null +++ b/board/avionic-design/tec-ng/Kconfig @@ -0,0 +1,24 @@ +if TARGET_TEC_NG + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "tec-ng" + +config SYS_VENDOR + string + default "avionic-design" + +config SYS_SOC + string + default "tegra30" + +config SYS_CONFIG_NAME + string + default "tec-ng" + +endif diff --git a/board/avionic-design/tec-ng/MAINTAINERS b/board/avionic-design/tec-ng/MAINTAINERS new file mode 100644 index 0000000..5cbdf8e --- /dev/null +++ b/board/avionic-design/tec-ng/MAINTAINERS @@ -0,0 +1,6 @@ +TEC-NG BOARD +M: Alban Bedel <alban.bedel@avionic-design.de> +S: Maintained +F: board/avionic-design/tec-ng/ +F: include/configs/tec-ng.h +F: configs/tec-ng_defconfig diff --git a/board/avionic-design/tec/Kconfig b/board/avionic-design/tec/Kconfig new file mode 100644 index 0000000..d19e3f4 --- /dev/null +++ b/board/avionic-design/tec/Kconfig @@ -0,0 +1,24 @@ +if TARGET_TEC + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "tec" + +config SYS_VENDOR + string + default "avionic-design" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "tec" + +endif diff --git a/board/avionic-design/tec/MAINTAINERS b/board/avionic-design/tec/MAINTAINERS new file mode 100644 index 0000000..10f1aac --- /dev/null +++ b/board/avionic-design/tec/MAINTAINERS @@ -0,0 +1,6 @@ +TEC BOARD +M: Alban Bedel <alban.bedel@avionic-design.de> +S: Maintained +F: board/avionic-design/tec/ +F: include/configs/tec.h +F: configs/tec_defconfig diff --git a/board/avnet/fx12mm/Kconfig b/board/avnet/fx12mm/Kconfig new file mode 100644 index 0000000..7b1687e --- /dev/null +++ b/board/avnet/fx12mm/Kconfig @@ -0,0 +1,15 @@ +if TARGET_FX12MM + +config SYS_BOARD + string + default "fx12mm" + +config SYS_VENDOR + string + default "avnet" + +config SYS_CONFIG_NAME + string + default "fx12mm" + +endif diff --git a/board/avnet/fx12mm/MAINTAINERS b/board/avnet/fx12mm/MAINTAINERS new file mode 100644 index 0000000..c92e258 --- /dev/null +++ b/board/avnet/fx12mm/MAINTAINERS @@ -0,0 +1,7 @@ +FX12MM BOARD +M: Georg Schardt <schardt@team-ctech.de> +S: Maintained +F: board/avnet/fx12mm/ +F: include/configs/fx12mm.h +F: configs/fx12mm_defconfig +F: configs/fx12mm_flash_defconfig diff --git a/board/avnet/v5fx30teval/Kconfig b/board/avnet/v5fx30teval/Kconfig new file mode 100644 index 0000000..8ae22e9 --- /dev/null +++ b/board/avnet/v5fx30teval/Kconfig @@ -0,0 +1,15 @@ +if TARGET_V5FX30TEVAL + +config SYS_BOARD + string + default "v5fx30teval" + +config SYS_VENDOR + string + default "avnet" + +config SYS_CONFIG_NAME + string + default "v5fx30teval" + +endif diff --git a/board/avnet/v5fx30teval/MAINTAINERS b/board/avnet/v5fx30teval/MAINTAINERS new file mode 100644 index 0000000..91dde7a --- /dev/null +++ b/board/avnet/v5fx30teval/MAINTAINERS @@ -0,0 +1,7 @@ +V5FX30TEVAL BOARD +M: Ricardo Ribalda <ricardo.ribalda@uam.es> +S: Maintained +F: board/avnet/v5fx30teval/ +F: include/configs/v5fx30teval.h +F: configs/v5fx30teval_defconfig +F: configs/v5fx30teval_flash_defconfig diff --git a/board/balloon3/Kconfig b/board/balloon3/Kconfig new file mode 100644 index 0000000..aee2193 --- /dev/null +++ b/board/balloon3/Kconfig @@ -0,0 +1,15 @@ +if TARGET_BALLOON3 + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "balloon3" + +config SYS_CONFIG_NAME + string + default "balloon3" + +endif diff --git a/board/balloon3/MAINTAINERS b/board/balloon3/MAINTAINERS new file mode 100644 index 0000000..df9a5bb --- /dev/null +++ b/board/balloon3/MAINTAINERS @@ -0,0 +1,6 @@ +BALLOON3 BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/balloon3/ +F: include/configs/balloon3.h +F: configs/balloon3_defconfig diff --git a/board/barco/titanium/Kconfig b/board/barco/titanium/Kconfig new file mode 100644 index 0000000..a2ddd87 --- /dev/null +++ b/board/barco/titanium/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TITANIUM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "titanium" + +config SYS_VENDOR + string + default "barco" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "titanium" + +endif diff --git a/board/barco/titanium/MAINTAINERS b/board/barco/titanium/MAINTAINERS new file mode 100644 index 0000000..7e9913f --- /dev/null +++ b/board/barco/titanium/MAINTAINERS @@ -0,0 +1,6 @@ +TITANIUM BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/barco/titanium/ +F: include/configs/titanium.h +F: configs/titanium_defconfig diff --git a/board/bc3450/Kconfig b/board/bc3450/Kconfig new file mode 100644 index 0000000..ba058db --- /dev/null +++ b/board/bc3450/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BC3450 + +config SYS_BOARD + string + default "bc3450" + +config SYS_CONFIG_NAME + string + default "BC3450" + +endif diff --git a/board/bc3450/MAINTAINERS b/board/bc3450/MAINTAINERS new file mode 100644 index 0000000..e2a8363 --- /dev/null +++ b/board/bc3450/MAINTAINERS @@ -0,0 +1,6 @@ +BC3450 BOARD +M: - +S: Maintained +F: board/bc3450/ +F: include/configs/BC3450.h +F: configs/BC3450_defconfig diff --git a/board/bct-brettl2/Kconfig b/board/bct-brettl2/Kconfig new file mode 100644 index 0000000..c3e3837 --- /dev/null +++ b/board/bct-brettl2/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BCT_BRETTL2 + +config SYS_BOARD + string + default "bct-brettl2" + +config SYS_CONFIG_NAME + string + default "bct-brettl2" + +endif diff --git a/board/bct-brettl2/MAINTAINERS b/board/bct-brettl2/MAINTAINERS new file mode 100644 index 0000000..32245d4 --- /dev/null +++ b/board/bct-brettl2/MAINTAINERS @@ -0,0 +1,6 @@ +BCT-BRETTL2 BOARD +M: Peter Meerwald <devel@bct-electronic.com> +S: Maintained +F: board/bct-brettl2/ +F: include/configs/bct-brettl2.h +F: configs/bct-brettl2_defconfig diff --git a/board/bf506f-ezkit/Kconfig b/board/bf506f-ezkit/Kconfig new file mode 100644 index 0000000..749ad2b --- /dev/null +++ b/board/bf506f-ezkit/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF506F_EZKIT + +config SYS_BOARD + string + default "bf506f-ezkit" + +config SYS_CONFIG_NAME + string + default "bf506f-ezkit" + +endif diff --git a/board/bf506f-ezkit/MAINTAINERS b/board/bf506f-ezkit/MAINTAINERS new file mode 100644 index 0000000..aaf1b7e --- /dev/null +++ b/board/bf506f-ezkit/MAINTAINERS @@ -0,0 +1,6 @@ +BF506F-EZKIT BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf506f-ezkit/ +F: include/configs/bf506f-ezkit.h +F: configs/bf506f-ezkit_defconfig diff --git a/board/bf518f-ezbrd/Kconfig b/board/bf518f-ezbrd/Kconfig new file mode 100644 index 0000000..5656d1c --- /dev/null +++ b/board/bf518f-ezbrd/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF518F_EZBRD + +config SYS_BOARD + string + default "bf518f-ezbrd" + +config SYS_CONFIG_NAME + string + default "bf518f-ezbrd" + +endif diff --git a/board/bf518f-ezbrd/MAINTAINERS b/board/bf518f-ezbrd/MAINTAINERS new file mode 100644 index 0000000..6727ae4 --- /dev/null +++ b/board/bf518f-ezbrd/MAINTAINERS @@ -0,0 +1,6 @@ +BF518F-EZBRD BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf518f-ezbrd/ +F: include/configs/bf518f-ezbrd.h +F: configs/bf518f-ezbrd_defconfig diff --git a/board/bf525-ucr2/Kconfig b/board/bf525-ucr2/Kconfig new file mode 100644 index 0000000..5967d04 --- /dev/null +++ b/board/bf525-ucr2/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF525_UCR2 + +config SYS_BOARD + string + default "bf525-ucr2" + +config SYS_CONFIG_NAME + string + default "bf525-ucr2" + +endif diff --git a/board/bf525-ucr2/MAINTAINERS b/board/bf525-ucr2/MAINTAINERS new file mode 100644 index 0000000..f2e9575 --- /dev/null +++ b/board/bf525-ucr2/MAINTAINERS @@ -0,0 +1,7 @@ +BF525-UCR2 BOARD +M: Haitao Zhang <hzhang@ucrobotics.com> +M: Chong Huang <chuang@ucrobotics.com> +S: Maintained +F: board/bf525-ucr2/ +F: include/configs/bf525-ucr2.h +F: configs/bf525-ucr2_defconfig diff --git a/board/bf526-ezbrd/Kconfig b/board/bf526-ezbrd/Kconfig new file mode 100644 index 0000000..6793c0e --- /dev/null +++ b/board/bf526-ezbrd/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF526_EZBRD + +config SYS_BOARD + string + default "bf526-ezbrd" + +config SYS_CONFIG_NAME + string + default "bf526-ezbrd" + +endif diff --git a/board/bf526-ezbrd/MAINTAINERS b/board/bf526-ezbrd/MAINTAINERS new file mode 100644 index 0000000..f7c2d18 --- /dev/null +++ b/board/bf526-ezbrd/MAINTAINERS @@ -0,0 +1,6 @@ +BF526-EZBRD BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf526-ezbrd/ +F: include/configs/bf526-ezbrd.h +F: configs/bf526-ezbrd_defconfig diff --git a/board/bf527-ad7160-eval/Kconfig b/board/bf527-ad7160-eval/Kconfig new file mode 100644 index 0000000..6febd7f --- /dev/null +++ b/board/bf527-ad7160-eval/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF527_AD7160_EVAL + +config SYS_BOARD + string + default "bf527-ad7160-eval" + +config SYS_CONFIG_NAME + string + default "bf527-ad7160-eval" + +endif diff --git a/board/bf527-ad7160-eval/MAINTAINERS b/board/bf527-ad7160-eval/MAINTAINERS new file mode 100644 index 0000000..e93de1a --- /dev/null +++ b/board/bf527-ad7160-eval/MAINTAINERS @@ -0,0 +1,6 @@ +BF527-AD7160-EVAL BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf527-ad7160-eval/ +F: include/configs/bf527-ad7160-eval.h +F: configs/bf527-ad7160-eval_defconfig diff --git a/board/bf527-ezkit/Kconfig b/board/bf527-ezkit/Kconfig new file mode 100644 index 0000000..459d971 --- /dev/null +++ b/board/bf527-ezkit/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF527_EZKIT + +config SYS_BOARD + string + default "bf527-ezkit" + +config SYS_CONFIG_NAME + string + default "bf527-ezkit" + +endif diff --git a/board/bf527-ezkit/MAINTAINERS b/board/bf527-ezkit/MAINTAINERS new file mode 100644 index 0000000..7a95396 --- /dev/null +++ b/board/bf527-ezkit/MAINTAINERS @@ -0,0 +1,7 @@ +BF527-EZKIT BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf527-ezkit/ +F: include/configs/bf527-ezkit.h +F: configs/bf527-ezkit_defconfig +F: configs/bf527-ezkit-v2_defconfig diff --git a/board/bf527-sdp/Kconfig b/board/bf527-sdp/Kconfig new file mode 100644 index 0000000..8d54fb8 --- /dev/null +++ b/board/bf527-sdp/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF527_SDP + +config SYS_BOARD + string + default "bf527-sdp" + +config SYS_CONFIG_NAME + string + default "bf527-sdp" + +endif diff --git a/board/bf527-sdp/MAINTAINERS b/board/bf527-sdp/MAINTAINERS new file mode 100644 index 0000000..32ccfc5 --- /dev/null +++ b/board/bf527-sdp/MAINTAINERS @@ -0,0 +1,6 @@ +BF527-SDP BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf527-sdp/ +F: include/configs/bf527-sdp.h +F: configs/bf527-sdp_defconfig diff --git a/board/bf533-ezkit/Kconfig b/board/bf533-ezkit/Kconfig new file mode 100644 index 0000000..c0317c2 --- /dev/null +++ b/board/bf533-ezkit/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF533_EZKIT + +config SYS_BOARD + string + default "bf533-ezkit" + +config SYS_CONFIG_NAME + string + default "bf533-ezkit" + +endif diff --git a/board/bf533-ezkit/MAINTAINERS b/board/bf533-ezkit/MAINTAINERS new file mode 100644 index 0000000..bfa7c3c --- /dev/null +++ b/board/bf533-ezkit/MAINTAINERS @@ -0,0 +1,6 @@ +BF533-EZKIT BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf533-ezkit/ +F: include/configs/bf533-ezkit.h +F: configs/bf533-ezkit_defconfig diff --git a/board/bf533-stamp/Kconfig b/board/bf533-stamp/Kconfig new file mode 100644 index 0000000..3f01c2b --- /dev/null +++ b/board/bf533-stamp/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF533_STAMP + +config SYS_BOARD + string + default "bf533-stamp" + +config SYS_CONFIG_NAME + string + default "bf533-stamp" + +endif diff --git a/board/bf533-stamp/MAINTAINERS b/board/bf533-stamp/MAINTAINERS new file mode 100644 index 0000000..c7aeefa --- /dev/null +++ b/board/bf533-stamp/MAINTAINERS @@ -0,0 +1,6 @@ +BF533-STAMP BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf533-stamp/ +F: include/configs/bf533-stamp.h +F: configs/bf533-stamp_defconfig diff --git a/board/bf537-minotaur/Kconfig b/board/bf537-minotaur/Kconfig new file mode 100644 index 0000000..6704f2d --- /dev/null +++ b/board/bf537-minotaur/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF537_MINOTAUR + +config SYS_BOARD + string + default "bf537-minotaur" + +config SYS_CONFIG_NAME + string + default "bf537-minotaur" + +endif diff --git a/board/bf537-minotaur/MAINTAINERS b/board/bf537-minotaur/MAINTAINERS new file mode 100644 index 0000000..04643b1 --- /dev/null +++ b/board/bf537-minotaur/MAINTAINERS @@ -0,0 +1,6 @@ +BF537-MINOTAUR BOARD +M: Martin Strubel <strubel@section5.ch> +S: Maintained +F: board/bf537-minotaur/ +F: include/configs/bf537-minotaur.h +F: configs/bf537-minotaur_defconfig diff --git a/board/bf537-pnav/Kconfig b/board/bf537-pnav/Kconfig new file mode 100644 index 0000000..125a9fa --- /dev/null +++ b/board/bf537-pnav/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF537_PNAV + +config SYS_BOARD + string + default "bf537-pnav" + +config SYS_CONFIG_NAME + string + default "bf537-pnav" + +endif diff --git a/board/bf537-pnav/MAINTAINERS b/board/bf537-pnav/MAINTAINERS new file mode 100644 index 0000000..b8b22a3 --- /dev/null +++ b/board/bf537-pnav/MAINTAINERS @@ -0,0 +1,6 @@ +BF537-PNAV BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf537-pnav/ +F: include/configs/bf537-pnav.h +F: configs/bf537-pnav_defconfig diff --git a/board/bf537-srv1/Kconfig b/board/bf537-srv1/Kconfig new file mode 100644 index 0000000..658a6e5 --- /dev/null +++ b/board/bf537-srv1/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF537_SRV1 + +config SYS_BOARD + string + default "bf537-srv1" + +config SYS_CONFIG_NAME + string + default "bf537-srv1" + +endif diff --git a/board/bf537-srv1/MAINTAINERS b/board/bf537-srv1/MAINTAINERS new file mode 100644 index 0000000..c8f1458 --- /dev/null +++ b/board/bf537-srv1/MAINTAINERS @@ -0,0 +1,6 @@ +BF537-SRV1 BOARD +M: Martin Strubel <strubel@section5.ch> +S: Maintained +F: board/bf537-srv1/ +F: include/configs/bf537-srv1.h +F: configs/bf537-srv1_defconfig diff --git a/board/bf537-stamp/Kconfig b/board/bf537-stamp/Kconfig new file mode 100644 index 0000000..9330a4c --- /dev/null +++ b/board/bf537-stamp/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF537_STAMP + +config SYS_BOARD + string + default "bf537-stamp" + +config SYS_CONFIG_NAME + string + default "bf537-stamp" + +endif diff --git a/board/bf537-stamp/MAINTAINERS b/board/bf537-stamp/MAINTAINERS new file mode 100644 index 0000000..7d9c133 --- /dev/null +++ b/board/bf537-stamp/MAINTAINERS @@ -0,0 +1,6 @@ +BF537-STAMP BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf537-stamp/ +F: include/configs/bf537-stamp.h +F: configs/bf537-stamp_defconfig diff --git a/board/bf538f-ezkit/Kconfig b/board/bf538f-ezkit/Kconfig new file mode 100644 index 0000000..5b9c8d9 --- /dev/null +++ b/board/bf538f-ezkit/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF538F_EZKIT + +config SYS_BOARD + string + default "bf538f-ezkit" + +config SYS_CONFIG_NAME + string + default "bf538f-ezkit" + +endif diff --git a/board/bf538f-ezkit/MAINTAINERS b/board/bf538f-ezkit/MAINTAINERS new file mode 100644 index 0000000..7964735 --- /dev/null +++ b/board/bf538f-ezkit/MAINTAINERS @@ -0,0 +1,6 @@ +BF538F-EZKIT BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf538f-ezkit/ +F: include/configs/bf538f-ezkit.h +F: configs/bf538f-ezkit_defconfig diff --git a/board/bf548-ezkit/Kconfig b/board/bf548-ezkit/Kconfig new file mode 100644 index 0000000..8d799aa --- /dev/null +++ b/board/bf548-ezkit/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF548_EZKIT + +config SYS_BOARD + string + default "bf548-ezkit" + +config SYS_CONFIG_NAME + string + default "bf548-ezkit" + +endif diff --git a/board/bf548-ezkit/MAINTAINERS b/board/bf548-ezkit/MAINTAINERS new file mode 100644 index 0000000..e2683bb --- /dev/null +++ b/board/bf548-ezkit/MAINTAINERS @@ -0,0 +1,6 @@ +BF548-EZKIT BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf548-ezkit/ +F: include/configs/bf548-ezkit.h +F: configs/bf548-ezkit_defconfig diff --git a/board/bf561-acvilon/Kconfig b/board/bf561-acvilon/Kconfig new file mode 100644 index 0000000..6c1789c --- /dev/null +++ b/board/bf561-acvilon/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF561_ACVILON + +config SYS_BOARD + string + default "bf561-acvilon" + +config SYS_CONFIG_NAME + string + default "bf561-acvilon" + +endif diff --git a/board/bf561-acvilon/MAINTAINERS b/board/bf561-acvilon/MAINTAINERS new file mode 100644 index 0000000..056ee0b --- /dev/null +++ b/board/bf561-acvilon/MAINTAINERS @@ -0,0 +1,6 @@ +BF561-ACVILON BOARD +M: Valentin Yakovenkov <yakovenkov@niistt.ru> +S: Maintained +F: board/bf561-acvilon/ +F: include/configs/bf561-acvilon.h +F: configs/bf561-acvilon_defconfig diff --git a/board/bf561-ezkit/Kconfig b/board/bf561-ezkit/Kconfig new file mode 100644 index 0000000..d1cb81f --- /dev/null +++ b/board/bf561-ezkit/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF561_EZKIT + +config SYS_BOARD + string + default "bf561-ezkit" + +config SYS_CONFIG_NAME + string + default "bf561-ezkit" + +endif diff --git a/board/bf561-ezkit/MAINTAINERS b/board/bf561-ezkit/MAINTAINERS new file mode 100644 index 0000000..5ced3bb --- /dev/null +++ b/board/bf561-ezkit/MAINTAINERS @@ -0,0 +1,6 @@ +BF561-EZKIT BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf561-ezkit/ +F: include/configs/bf561-ezkit.h +F: configs/bf561-ezkit_defconfig diff --git a/board/bf609-ezkit/Kconfig b/board/bf609-ezkit/Kconfig new file mode 100644 index 0000000..ad959d7 --- /dev/null +++ b/board/bf609-ezkit/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BF609_EZKIT + +config SYS_BOARD + string + default "bf609-ezkit" + +config SYS_CONFIG_NAME + string + default "bf609-ezkit" + +endif diff --git a/board/bf609-ezkit/MAINTAINERS b/board/bf609-ezkit/MAINTAINERS new file mode 100644 index 0000000..acfc6c7 --- /dev/null +++ b/board/bf609-ezkit/MAINTAINERS @@ -0,0 +1,6 @@ +BF609-EZKIT BOARD +M: Sonic Zhang <sonic.adi@gmail.com> +S: Maintained +F: board/bf609-ezkit/ +F: include/configs/bf609-ezkit.h +F: configs/bf609-ezkit_defconfig diff --git a/board/blackstamp/Kconfig b/board/blackstamp/Kconfig new file mode 100644 index 0000000..0046b93 --- /dev/null +++ b/board/blackstamp/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BLACKSTAMP + +config SYS_BOARD + string + default "blackstamp" + +config SYS_CONFIG_NAME + string + default "blackstamp" + +endif diff --git a/board/blackstamp/MAINTAINERS b/board/blackstamp/MAINTAINERS new file mode 100644 index 0000000..a0d72c6 --- /dev/null +++ b/board/blackstamp/MAINTAINERS @@ -0,0 +1,8 @@ +BLACKSTAMP BOARD +M: Wojtek Skulski <skulski@pas.rochester.edu> +M: Wojtek Skulski <info@skutek.com> +M: Benjamin Matthews <mben12@gmail.com> +S: Maintained +F: board/blackstamp/ +F: include/configs/blackstamp.h +F: configs/blackstamp_defconfig diff --git a/board/blackvme/Kconfig b/board/blackvme/Kconfig new file mode 100644 index 0000000..72aaa29 --- /dev/null +++ b/board/blackvme/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BLACKVME + +config SYS_BOARD + string + default "blackvme" + +config SYS_CONFIG_NAME + string + default "blackvme" + +endif diff --git a/board/blackvme/MAINTAINERS b/board/blackvme/MAINTAINERS new file mode 100644 index 0000000..3f8b32c --- /dev/null +++ b/board/blackvme/MAINTAINERS @@ -0,0 +1,8 @@ +BLACKVME BOARD +M: Wojtek Skulski <skulski@pas.rochester.edu> +M: Wojtek Skulski <info@skutek.com> +M: Benjamin Matthews <mben12@gmail.com> +S: Maintained +F: board/blackvme/ +F: include/configs/blackvme.h +F: configs/blackvme_defconfig diff --git a/board/bluegiga/apx4devkit/Kconfig b/board/bluegiga/apx4devkit/Kconfig new file mode 100644 index 0000000..acccec9 --- /dev/null +++ b/board/bluegiga/apx4devkit/Kconfig @@ -0,0 +1,23 @@ +if TARGET_APX4DEVKIT + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "apx4devkit" + +config SYS_VENDOR + string + default "bluegiga" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "apx4devkit" + +endif diff --git a/board/bluegiga/apx4devkit/MAINTAINERS b/board/bluegiga/apx4devkit/MAINTAINERS new file mode 100644 index 0000000..286e9e9 --- /dev/null +++ b/board/bluegiga/apx4devkit/MAINTAINERS @@ -0,0 +1,6 @@ +APX4DEVKIT BOARD +M: Lauri Hintsala <lauri.hintsala@bluegiga.com> +S: Maintained +F: board/bluegiga/apx4devkit/ +F: include/configs/apx4devkit.h +F: configs/apx4devkit_defconfig diff --git a/board/bluewater/snapper9260/Kconfig b/board/bluewater/snapper9260/Kconfig new file mode 100644 index 0000000..81eb911 --- /dev/null +++ b/board/bluewater/snapper9260/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SNAPPER9260 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "snapper9260" + +config SYS_VENDOR + string + default "bluewater" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "snapper9260" + +endif diff --git a/board/bluewater/snapper9260/MAINTAINERS b/board/bluewater/snapper9260/MAINTAINERS new file mode 100644 index 0000000..ff1e997 --- /dev/null +++ b/board/bluewater/snapper9260/MAINTAINERS @@ -0,0 +1,7 @@ +SNAPPER9260 BOARD +M: Ryan Mallon <ryan@bluewatersys.com> +S: Maintained +F: board/bluewater/snapper9260/ +F: include/configs/snapper9260.h +F: configs/snapper9260_defconfig +F: configs/snapper9g20_defconfig diff --git a/board/boundary/nitrogen6x/Kconfig b/board/boundary/nitrogen6x/Kconfig new file mode 100644 index 0000000..190809c --- /dev/null +++ b/board/boundary/nitrogen6x/Kconfig @@ -0,0 +1,23 @@ +if TARGET_NITROGEN6X + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "nitrogen6x" + +config SYS_VENDOR + string + default "boundary" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "nitrogen6x" + +endif diff --git a/board/boundary/nitrogen6x/MAINTAINERS b/board/boundary/nitrogen6x/MAINTAINERS new file mode 100644 index 0000000..cb06c03 --- /dev/null +++ b/board/boundary/nitrogen6x/MAINTAINERS @@ -0,0 +1,12 @@ +NITROGEN6X BOARD +M: Eric Nelson <eric.nelson@boundarydevices.com> +S: Maintained +F: board/boundary/nitrogen6x/ +F: include/configs/nitrogen6x.h +F: configs/mx6qsabrelite_defconfig +F: configs/nitrogen6dl_defconfig +F: configs/nitrogen6dl2g_defconfig +F: configs/nitrogen6q_defconfig +F: configs/nitrogen6q2g_defconfig +F: configs/nitrogen6s_defconfig +F: configs/nitrogen6s1g_defconfig diff --git a/board/br4/Kconfig b/board/br4/Kconfig new file mode 100644 index 0000000..03d9783 --- /dev/null +++ b/board/br4/Kconfig @@ -0,0 +1,11 @@ +if TARGET_BR4 + +config SYS_BOARD + string + default "br4" + +config SYS_CONFIG_NAME + string + default "br4" + +endif diff --git a/board/br4/MAINTAINERS b/board/br4/MAINTAINERS new file mode 100644 index 0000000..4085da5 --- /dev/null +++ b/board/br4/MAINTAINERS @@ -0,0 +1,6 @@ +BR4 BOARD +M: Dimitar Penev <dpn@switchfin.org> +S: Maintained +F: board/br4/ +F: include/configs/br4.h +F: configs/br4_defconfig diff --git a/board/broadcom/bcm28155_ap/Kconfig b/board/broadcom/bcm28155_ap/Kconfig new file mode 100644 index 0000000..20c83d3 --- /dev/null +++ b/board/broadcom/bcm28155_ap/Kconfig @@ -0,0 +1,23 @@ +if TARGET_BCM28155_AP + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "bcm28155_ap" + +config SYS_VENDOR + string + default "broadcom" + +config SYS_SOC + string + default "bcm281xx" + +config SYS_CONFIG_NAME + string + default "bcm28155_ap" + +endif diff --git a/board/broadcom/bcm28155_ap/MAINTAINERS b/board/broadcom/bcm28155_ap/MAINTAINERS new file mode 100644 index 0000000..a74c394 --- /dev/null +++ b/board/broadcom/bcm28155_ap/MAINTAINERS @@ -0,0 +1,6 @@ +BCM28155_AP BOARD +M: Tim Kryger <tim.kryger@linaro.org> +S: Maintained +F: board/broadcom/bcm28155_ap/ +F: include/configs/bcm28155_ap.h +F: configs/bcm28155_ap_defconfig diff --git a/board/buffalo/lsxl/Kconfig b/board/buffalo/lsxl/Kconfig new file mode 100644 index 0000000..99f7b7c --- /dev/null +++ b/board/buffalo/lsxl/Kconfig @@ -0,0 +1,23 @@ +if TARGET_LSXL + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "lsxl" + +config SYS_VENDOR + string + default "buffalo" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "lsxl" + +endif diff --git a/board/buffalo/lsxl/MAINTAINERS b/board/buffalo/lsxl/MAINTAINERS new file mode 100644 index 0000000..facc2dd --- /dev/null +++ b/board/buffalo/lsxl/MAINTAINERS @@ -0,0 +1,7 @@ +LSXL BOARD +M: Michael Walle <michael@walle.cc> +S: Maintained +F: board/buffalo/lsxl/ +F: include/configs/lsxl.h +F: configs/lschlv2_defconfig +F: configs/lsxhl_defconfig diff --git a/board/calao/sbc35_a9g20/Kconfig b/board/calao/sbc35_a9g20/Kconfig new file mode 100644 index 0000000..192d228 --- /dev/null +++ b/board/calao/sbc35_a9g20/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SBC35_A9G20 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "sbc35_a9g20" + +config SYS_VENDOR + string + default "calao" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "sbc35_a9g20" + +endif diff --git a/board/calao/sbc35_a9g20/MAINTAINERS b/board/calao/sbc35_a9g20/MAINTAINERS new file mode 100644 index 0000000..d275230 --- /dev/null +++ b/board/calao/sbc35_a9g20/MAINTAINERS @@ -0,0 +1,7 @@ +SBC35_A9G20 BOARD +M: Albin Tonnerre <albin.tonnerre@free-electrons.com> +S: Orphan (since 2014-06) +F: board/calao/sbc35_a9g20/ +F: include/configs/sbc35_a9g20.h +F: configs/sbc35_a9g20_eeprom_defconfig +F: configs/sbc35_a9g20_nandflash_defconfig diff --git a/board/calao/tny_a9260/Kconfig b/board/calao/tny_a9260/Kconfig new file mode 100644 index 0000000..3d33d5c --- /dev/null +++ b/board/calao/tny_a9260/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TNY_A9260 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "tny_a9260" + +config SYS_VENDOR + string + default "calao" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "tny_a9260" + +endif diff --git a/board/calao/tny_a9260/MAINTAINERS b/board/calao/tny_a9260/MAINTAINERS new file mode 100644 index 0000000..5a71b8e --- /dev/null +++ b/board/calao/tny_a9260/MAINTAINERS @@ -0,0 +1,9 @@ +TNY_A9260 BOARD +M: Albin Tonnerre <albin.tonnerre@free-electrons.com> +S: Orphan (since 2014-06) +F: board/calao/tny_a9260/ +F: include/configs/tny_a9260.h +F: configs/tny_a9260_eeprom_defconfig +F: configs/tny_a9260_nandflash_defconfig +F: configs/tny_a9g20_eeprom_defconfig +F: configs/tny_a9g20_nandflash_defconfig diff --git a/board/calao/usb_a9263/Kconfig b/board/calao/usb_a9263/Kconfig new file mode 100644 index 0000000..8141c7d --- /dev/null +++ b/board/calao/usb_a9263/Kconfig @@ -0,0 +1,23 @@ +if TARGET_USB_A9263 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "usb_a9263" + +config SYS_VENDOR + string + default "calao" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "usb_a9263" + +endif diff --git a/board/calao/usb_a9263/MAINTAINERS b/board/calao/usb_a9263/MAINTAINERS new file mode 100644 index 0000000..2f39cd3 --- /dev/null +++ b/board/calao/usb_a9263/MAINTAINERS @@ -0,0 +1,6 @@ +USB_A9263 BOARD +M: Mateusz Kulikowski <mateusz.kulikowski@gmail.com> +S: Maintained +F: board/calao/usb_a9263/ +F: include/configs/usb_a9263.h +F: configs/usb_a9263_dataflash_defconfig diff --git a/board/canmb/Kconfig b/board/canmb/Kconfig new file mode 100644 index 0000000..042cc35 --- /dev/null +++ b/board/canmb/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CANMB + +config SYS_BOARD + string + default "canmb" + +config SYS_CONFIG_NAME + string + default "canmb" + +endif diff --git a/board/canmb/MAINTAINERS b/board/canmb/MAINTAINERS new file mode 100644 index 0000000..aa4eb30 --- /dev/null +++ b/board/canmb/MAINTAINERS @@ -0,0 +1,6 @@ +CANMB BOARD +M: - +S: Maintained +F: board/canmb/ +F: include/configs/canmb.h +F: configs/canmb_defconfig diff --git a/board/chromebook-x86/coreboot/Kconfig b/board/chromebook-x86/coreboot/Kconfig new file mode 100644 index 0000000..64cd347 --- /dev/null +++ b/board/chromebook-x86/coreboot/Kconfig @@ -0,0 +1,19 @@ +if TARGET_COREBOOT + +config SYS_BOARD + string + default "coreboot" + +config SYS_VENDOR + string + default "chromebook-x86" + +config SYS_SOC + string + default "coreboot" + +config SYS_CONFIG_NAME + string + default "coreboot" + +endif diff --git a/board/chromebook-x86/coreboot/MAINTAINERS b/board/chromebook-x86/coreboot/MAINTAINERS new file mode 100644 index 0000000..3b2fb52 --- /dev/null +++ b/board/chromebook-x86/coreboot/MAINTAINERS @@ -0,0 +1,6 @@ +COREBOOT BOARD +M: Simon Glass <sjg@chromium.org> +S: Maintained +F: board/chromebook-x86/coreboot/ +F: include/configs/coreboot.h +F: configs/coreboot-x86_defconfig diff --git a/board/cirrus/edb93xx/Kconfig b/board/cirrus/edb93xx/Kconfig new file mode 100644 index 0000000..0a9bdb2 --- /dev/null +++ b/board/cirrus/edb93xx/Kconfig @@ -0,0 +1,23 @@ +if TARGET_EDB93XX + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "edb93xx" + +config SYS_VENDOR + string + default "cirrus" + +config SYS_SOC + string + default "ep93xx" + +config SYS_CONFIG_NAME + string + default "edb93xx" + +endif diff --git a/board/cirrus/edb93xx/MAINTAINERS b/board/cirrus/edb93xx/MAINTAINERS new file mode 100644 index 0000000..3bb2843 --- /dev/null +++ b/board/cirrus/edb93xx/MAINTAINERS @@ -0,0 +1,6 @@ +EDB93XX BOARD +M: Sergey Kostanbaev <sergey.kostanbaev@fairwaves.ru> +S: Maintained +F: board/cirrus/edb93xx/ +F: include/configs/edb93xx.h +F: configs/edb9315a_defconfig diff --git a/board/cloudengines/pogo_e02/Kconfig b/board/cloudengines/pogo_e02/Kconfig new file mode 100644 index 0000000..149a1a2 --- /dev/null +++ b/board/cloudengines/pogo_e02/Kconfig @@ -0,0 +1,23 @@ +if TARGET_POGO_E02 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "pogo_e02" + +config SYS_VENDOR + string + default "cloudengines" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "pogo_e02" + +endif diff --git a/board/cloudengines/pogo_e02/MAINTAINERS b/board/cloudengines/pogo_e02/MAINTAINERS new file mode 100644 index 0000000..42c5dda --- /dev/null +++ b/board/cloudengines/pogo_e02/MAINTAINERS @@ -0,0 +1,6 @@ +POGO_E02 BOARD +M: Dave Purdy <david.c.purdy@gmail.com> +S: Maintained +F: board/cloudengines/pogo_e02/ +F: include/configs/pogo_e02.h +F: configs/pogo_e02_defconfig diff --git a/board/cm-bf527/Kconfig b/board/cm-bf527/Kconfig new file mode 100644 index 0000000..d43d306 --- /dev/null +++ b/board/cm-bf527/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CM_BF527 + +config SYS_BOARD + string + default "cm-bf527" + +config SYS_CONFIG_NAME + string + default "cm-bf527" + +endif diff --git a/board/cm-bf527/MAINTAINERS b/board/cm-bf527/MAINTAINERS new file mode 100644 index 0000000..789f5c4 --- /dev/null +++ b/board/cm-bf527/MAINTAINERS @@ -0,0 +1,6 @@ +CM-BF527 BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/cm-bf527/ +F: include/configs/cm-bf527.h +F: configs/cm-bf527_defconfig diff --git a/board/cm-bf533/Kconfig b/board/cm-bf533/Kconfig new file mode 100644 index 0000000..af5bbb2 --- /dev/null +++ b/board/cm-bf533/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CM_BF533 + +config SYS_BOARD + string + default "cm-bf533" + +config SYS_CONFIG_NAME + string + default "cm-bf533" + +endif diff --git a/board/cm-bf533/MAINTAINERS b/board/cm-bf533/MAINTAINERS new file mode 100644 index 0000000..f643043 --- /dev/null +++ b/board/cm-bf533/MAINTAINERS @@ -0,0 +1,6 @@ +CM-BF533 BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/cm-bf533/ +F: include/configs/cm-bf533.h +F: configs/cm-bf533_defconfig diff --git a/board/cm-bf537e/Kconfig b/board/cm-bf537e/Kconfig new file mode 100644 index 0000000..83c160d --- /dev/null +++ b/board/cm-bf537e/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CM_BF537E + +config SYS_BOARD + string + default "cm-bf537e" + +config SYS_CONFIG_NAME + string + default "cm-bf537e" + +endif diff --git a/board/cm-bf537e/MAINTAINERS b/board/cm-bf537e/MAINTAINERS new file mode 100644 index 0000000..44735fa --- /dev/null +++ b/board/cm-bf537e/MAINTAINERS @@ -0,0 +1,6 @@ +CM-BF537E BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/cm-bf537e/ +F: include/configs/cm-bf537e.h +F: configs/cm-bf537e_defconfig diff --git a/board/cm-bf537u/Kconfig b/board/cm-bf537u/Kconfig new file mode 100644 index 0000000..de384b7 --- /dev/null +++ b/board/cm-bf537u/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CM_BF537U + +config SYS_BOARD + string + default "cm-bf537u" + +config SYS_CONFIG_NAME + string + default "cm-bf537u" + +endif diff --git a/board/cm-bf537u/MAINTAINERS b/board/cm-bf537u/MAINTAINERS new file mode 100644 index 0000000..da925f8 --- /dev/null +++ b/board/cm-bf537u/MAINTAINERS @@ -0,0 +1,6 @@ +CM-BF537U BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/cm-bf537u/ +F: include/configs/cm-bf537u.h +F: configs/cm-bf537u_defconfig diff --git a/board/cm-bf548/Kconfig b/board/cm-bf548/Kconfig new file mode 100644 index 0000000..29b027d --- /dev/null +++ b/board/cm-bf548/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CM_BF548 + +config SYS_BOARD + string + default "cm-bf548" + +config SYS_CONFIG_NAME + string + default "cm-bf548" + +endif diff --git a/board/cm-bf548/MAINTAINERS b/board/cm-bf548/MAINTAINERS new file mode 100644 index 0000000..4cd83df --- /dev/null +++ b/board/cm-bf548/MAINTAINERS @@ -0,0 +1,6 @@ +CM-BF548 BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/cm-bf548/ +F: include/configs/cm-bf548.h +F: configs/cm-bf548_defconfig diff --git a/board/cm-bf561/Kconfig b/board/cm-bf561/Kconfig new file mode 100644 index 0000000..94d110c --- /dev/null +++ b/board/cm-bf561/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CM_BF561 + +config SYS_BOARD + string + default "cm-bf561" + +config SYS_CONFIG_NAME + string + default "cm-bf561" + +endif diff --git a/board/cm-bf561/MAINTAINERS b/board/cm-bf561/MAINTAINERS new file mode 100644 index 0000000..a4606ff --- /dev/null +++ b/board/cm-bf561/MAINTAINERS @@ -0,0 +1,6 @@ +CM-BF561 BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/cm-bf561/ +F: include/configs/cm-bf561.h +F: configs/cm-bf561_defconfig diff --git a/board/cm4008/Kconfig b/board/cm4008/Kconfig new file mode 100644 index 0000000..397794d --- /dev/null +++ b/board/cm4008/Kconfig @@ -0,0 +1,19 @@ +if TARGET_CM4008 + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "cm4008" + +config SYS_SOC + string + default "ks8695" + +config SYS_CONFIG_NAME + string + default "cm4008" + +endif diff --git a/board/cm4008/MAINTAINERS b/board/cm4008/MAINTAINERS new file mode 100644 index 0000000..5f08bc3 --- /dev/null +++ b/board/cm4008/MAINTAINERS @@ -0,0 +1,6 @@ +CM4008 BOARD +M: Greg Ungerer <greg.ungerer@opengear.com> +S: Maintained +F: board/cm4008/ +F: include/configs/cm4008.h +F: configs/cm4008_defconfig diff --git a/board/cm41xx/Kconfig b/board/cm41xx/Kconfig new file mode 100644 index 0000000..ae2831e --- /dev/null +++ b/board/cm41xx/Kconfig @@ -0,0 +1,19 @@ +if TARGET_CM41XX + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "cm41xx" + +config SYS_SOC + string + default "ks8695" + +config SYS_CONFIG_NAME + string + default "cm41xx" + +endif diff --git a/board/cm41xx/MAINTAINERS b/board/cm41xx/MAINTAINERS new file mode 100644 index 0000000..f308b0f --- /dev/null +++ b/board/cm41xx/MAINTAINERS @@ -0,0 +1,6 @@ +CM41XX BOARD +M: - +S: Maintained +F: board/cm41xx/ +F: include/configs/cm41xx.h +F: configs/cm41xx_defconfig diff --git a/board/cm5200/Kconfig b/board/cm5200/Kconfig new file mode 100644 index 0000000..b4c8f22 --- /dev/null +++ b/board/cm5200/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CM5200 + +config SYS_BOARD + string + default "cm5200" + +config SYS_CONFIG_NAME + string + default "cm5200" + +endif diff --git a/board/cm5200/MAINTAINERS b/board/cm5200/MAINTAINERS new file mode 100644 index 0000000..9fc5365 --- /dev/null +++ b/board/cm5200/MAINTAINERS @@ -0,0 +1,6 @@ +CM5200 BOARD +M: - +S: Maintained +F: board/cm5200/ +F: include/configs/cm5200.h +F: configs/cm5200_defconfig diff --git a/board/cmi/Kconfig b/board/cmi/Kconfig new file mode 100644 index 0000000..8040e59 --- /dev/null +++ b/board/cmi/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CMI_MPC5XX + +config SYS_BOARD + string + default "cmi" + +config SYS_CONFIG_NAME + string + default "cmi_mpc5xx" + +endif diff --git a/board/cmi/MAINTAINERS b/board/cmi/MAINTAINERS new file mode 100644 index 0000000..ab33d5d --- /dev/null +++ b/board/cmi/MAINTAINERS @@ -0,0 +1,6 @@ +CMI BOARD +M: - +S: Maintained +F: board/cmi/ +F: include/configs/cmi_mpc5xx.h +F: configs/cmi_mpc5xx_defconfig diff --git a/board/cobra5272/Kconfig b/board/cobra5272/Kconfig new file mode 100644 index 0000000..6e55d43 --- /dev/null +++ b/board/cobra5272/Kconfig @@ -0,0 +1,15 @@ +if TARGET_COBRA5272 + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "cobra5272" + +config SYS_CONFIG_NAME + string + default "cobra5272" + +endif diff --git a/board/cobra5272/MAINTAINERS b/board/cobra5272/MAINTAINERS new file mode 100644 index 0000000..00942fc --- /dev/null +++ b/board/cobra5272/MAINTAINERS @@ -0,0 +1,6 @@ +COBRA5272 BOARD +M: - +S: Maintained +F: board/cobra5272/ +F: include/configs/cobra5272.h +F: configs/cobra5272_defconfig diff --git a/board/cogent/Kconfig b/board/cogent/Kconfig new file mode 100644 index 0000000..113034d --- /dev/null +++ b/board/cogent/Kconfig @@ -0,0 +1,23 @@ +if TARGET_COGENT_MPC8260 + +config SYS_BOARD + string + default "cogent" + +config SYS_CONFIG_NAME + string + default "cogent_mpc8260" + +endif + +if TARGET_COGENT_MPC8XX + +config SYS_BOARD + string + default "cogent" + +config SYS_CONFIG_NAME + string + default "cogent_mpc8xx" + +endif diff --git a/board/cogent/MAINTAINERS b/board/cogent/MAINTAINERS new file mode 100644 index 0000000..7126015 --- /dev/null +++ b/board/cogent/MAINTAINERS @@ -0,0 +1,8 @@ +COGENT BOARD +M: Murray Jensen <Murray.Jensen@csiro.au> +S: Maintained +F: board/cogent/ +F: include/configs/cogent_mpc8260.h +F: configs/cogent_mpc8260_defconfig +F: include/configs/cogent_mpc8xx.h +F: configs/cogent_mpc8xx_defconfig diff --git a/board/comelit/dig297/Kconfig b/board/comelit/dig297/Kconfig new file mode 100644 index 0000000..d7a2bf2 --- /dev/null +++ b/board/comelit/dig297/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DIG297 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "dig297" + +config SYS_VENDOR + string + default "comelit" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "dig297" + +endif diff --git a/board/comelit/dig297/MAINTAINERS b/board/comelit/dig297/MAINTAINERS new file mode 100644 index 0000000..318374e --- /dev/null +++ b/board/comelit/dig297/MAINTAINERS @@ -0,0 +1,6 @@ +DIG297 BOARD +M: Luca Ceresoli <luca.ceresoli@comelit.it> +S: Maintained +F: board/comelit/dig297/ +F: include/configs/dig297.h +F: configs/dig297_defconfig diff --git a/board/compal/paz00/Kconfig b/board/compal/paz00/Kconfig new file mode 100644 index 0000000..4f0f09f --- /dev/null +++ b/board/compal/paz00/Kconfig @@ -0,0 +1,24 @@ +if TARGET_PAZ00 + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "paz00" + +config SYS_VENDOR + string + default "compal" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "paz00" + +endif diff --git a/board/compal/paz00/MAINTAINERS b/board/compal/paz00/MAINTAINERS new file mode 100644 index 0000000..ee2b2e9 --- /dev/null +++ b/board/compal/paz00/MAINTAINERS @@ -0,0 +1,7 @@ +PAZ00 BOARD +M: Tom Warren <twarren@nvidia.com> +M: Stephen Warren <swarren@nvidia.com> +S: Maintained +F: board/compal/paz00/ +F: include/configs/paz00.h +F: configs/paz00_defconfig diff --git a/board/compulab/cm_t335/Kconfig b/board/compulab/cm_t335/Kconfig new file mode 100644 index 0000000..4a1adf3 --- /dev/null +++ b/board/compulab/cm_t335/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CM_T335 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "cm_t335" + +config SYS_VENDOR + string + default "compulab" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "cm_t335" + +endif diff --git a/board/compulab/cm_t335/MAINTAINERS b/board/compulab/cm_t335/MAINTAINERS new file mode 100644 index 0000000..5fb922c --- /dev/null +++ b/board/compulab/cm_t335/MAINTAINERS @@ -0,0 +1,6 @@ +CM_T335 BOARD +M: Igor Grinberg <grinberg@compulab.co.il> +S: Maintained +F: board/compulab/cm_t335/ +F: include/configs/cm_t335.h +F: configs/cm_t335_defconfig diff --git a/board/compulab/cm_t35/Kconfig b/board/compulab/cm_t35/Kconfig new file mode 100644 index 0000000..fd960bc --- /dev/null +++ b/board/compulab/cm_t35/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CM_T35 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "cm_t35" + +config SYS_VENDOR + string + default "compulab" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "cm_t35" + +endif diff --git a/board/compulab/cm_t35/MAINTAINERS b/board/compulab/cm_t35/MAINTAINERS new file mode 100644 index 0000000..fc5d73f --- /dev/null +++ b/board/compulab/cm_t35/MAINTAINERS @@ -0,0 +1,6 @@ +CM_T35 BOARD +M: Igor Grinberg <grinberg@compulab.co.il> +S: Maintained +F: board/compulab/cm_t35/ +F: include/configs/cm_t35.h +F: configs/cm_t35_defconfig diff --git a/board/compulab/cm_t54/Kconfig b/board/compulab/cm_t54/Kconfig new file mode 100644 index 0000000..0fe3692 --- /dev/null +++ b/board/compulab/cm_t54/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CM_T54 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "cm_t54" + +config SYS_VENDOR + string + default "compulab" + +config SYS_SOC + string + default "omap5" + +config SYS_CONFIG_NAME + string + default "cm_t54" + +endif diff --git a/board/compulab/cm_t54/MAINTAINERS b/board/compulab/cm_t54/MAINTAINERS new file mode 100644 index 0000000..461fe09 --- /dev/null +++ b/board/compulab/cm_t54/MAINTAINERS @@ -0,0 +1,6 @@ +CM_T54 BOARD +M: Dmitry Lifshitz <lifshitz@compulab.co.il> +S: Maintained +F: board/compulab/cm_t54/ +F: include/configs/cm_t54.h +F: configs/cm_t54_defconfig diff --git a/board/compulab/trimslice/Kconfig b/board/compulab/trimslice/Kconfig new file mode 100644 index 0000000..e545f0c --- /dev/null +++ b/board/compulab/trimslice/Kconfig @@ -0,0 +1,24 @@ +if TARGET_TRIMSLICE + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "trimslice" + +config SYS_VENDOR + string + default "compulab" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "trimslice" + +endif diff --git a/board/compulab/trimslice/MAINTAINERS b/board/compulab/trimslice/MAINTAINERS new file mode 100644 index 0000000..85b1200 --- /dev/null +++ b/board/compulab/trimslice/MAINTAINERS @@ -0,0 +1,7 @@ +TRIMSLICE BOARD +M: Tom Warren <twarren@nvidia.com> +M: Stephen Warren <swarren@nvidia.com> +S: Maintained +F: board/compulab/trimslice/ +F: include/configs/trimslice.h +F: configs/trimslice_defconfig diff --git a/board/congatec/cgtqmx6eval/Kconfig b/board/congatec/cgtqmx6eval/Kconfig new file mode 100644 index 0000000..155fa2c --- /dev/null +++ b/board/congatec/cgtqmx6eval/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CGTQMX6EVAL + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "cgtqmx6eval" + +config SYS_VENDOR + string + default "congatec" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "cgtqmx6eval" + +endif diff --git a/board/congatec/cgtqmx6eval/MAINTAINERS b/board/congatec/cgtqmx6eval/MAINTAINERS new file mode 100644 index 0000000..53ad759 --- /dev/null +++ b/board/congatec/cgtqmx6eval/MAINTAINERS @@ -0,0 +1,6 @@ +CGTQMX6EVAL BOARD +M: Leo Sartre <lsartre@adeneo-embedded.com> +S: Orphan (since 2014-06) +F: board/congatec/cgtqmx6eval/ +F: include/configs/cgtqmx6eval.h +F: configs/cgtqmx6qeval_defconfig diff --git a/board/corscience/tricorder/Kconfig b/board/corscience/tricorder/Kconfig new file mode 100644 index 0000000..a1e06e7 --- /dev/null +++ b/board/corscience/tricorder/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TRICORDER + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "tricorder" + +config SYS_VENDOR + string + default "corscience" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "tricorder" + +endif diff --git a/board/corscience/tricorder/MAINTAINERS b/board/corscience/tricorder/MAINTAINERS new file mode 100644 index 0000000..8a8171b --- /dev/null +++ b/board/corscience/tricorder/MAINTAINERS @@ -0,0 +1,7 @@ +TRICORDER BOARD +M: Thomas Weber <weber@corscience.de> +S: Maintained +F: board/corscience/tricorder/ +F: include/configs/tricorder.h +F: configs/tricorder_defconfig +F: configs/tricorder_flash_defconfig diff --git a/board/cpc45/Kconfig b/board/cpc45/Kconfig new file mode 100644 index 0000000..fd1a536 --- /dev/null +++ b/board/cpc45/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CPC45 + +config SYS_BOARD + string + default "cpc45" + +config SYS_CONFIG_NAME + string + default "CPC45" + +endif diff --git a/board/cpc45/MAINTAINERS b/board/cpc45/MAINTAINERS new file mode 100644 index 0000000..163e09c --- /dev/null +++ b/board/cpc45/MAINTAINERS @@ -0,0 +1,7 @@ +CPC45 BOARD +M: Josef Wagner <Wagner@Microsys.de> +S: Maintained +F: board/cpc45/ +F: include/configs/CPC45.h +F: configs/CPC45_defconfig +F: configs/CPC45_ROMBOOT_defconfig diff --git a/board/cpu86/Kconfig b/board/cpu86/Kconfig new file mode 100644 index 0000000..27f1e4e --- /dev/null +++ b/board/cpu86/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CPU86 + +config SYS_BOARD + string + default "cpu86" + +config SYS_CONFIG_NAME + string + default "CPU86" + +endif diff --git a/board/cpu86/MAINTAINERS b/board/cpu86/MAINTAINERS new file mode 100644 index 0000000..06bdd0d --- /dev/null +++ b/board/cpu86/MAINTAINERS @@ -0,0 +1,7 @@ +CPU86 BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/cpu86/ +F: include/configs/CPU86.h +F: configs/CPU86_defconfig +F: configs/CPU86_ROMBOOT_defconfig diff --git a/board/cpu87/Kconfig b/board/cpu87/Kconfig new file mode 100644 index 0000000..b45225d --- /dev/null +++ b/board/cpu87/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CPU87 + +config SYS_BOARD + string + default "cpu87" + +config SYS_CONFIG_NAME + string + default "CPU87" + +endif diff --git a/board/cpu87/MAINTAINERS b/board/cpu87/MAINTAINERS new file mode 100644 index 0000000..6e84f60 --- /dev/null +++ b/board/cpu87/MAINTAINERS @@ -0,0 +1,7 @@ +CPU87 BOARD +M: - +S: Maintained +F: board/cpu87/ +F: include/configs/CPU87.h +F: configs/CPU87_defconfig +F: configs/CPU87_ROMBOOT_defconfig diff --git a/board/cray/L1/Kconfig b/board/cray/L1/Kconfig new file mode 100644 index 0000000..fa9a702 --- /dev/null +++ b/board/cray/L1/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CRAYL1 + +config SYS_BOARD + string + default "L1" + +config SYS_VENDOR + string + default "cray" + +config SYS_CONFIG_NAME + string + default "CRAYL1" + +endif diff --git a/board/cray/L1/MAINTAINERS b/board/cray/L1/MAINTAINERS new file mode 100644 index 0000000..e93819e --- /dev/null +++ b/board/cray/L1/MAINTAINERS @@ -0,0 +1,6 @@ +L1 BOARD +M: David Updegraff <dave@cray.com> +S: Orphan (since 2014-03) +F: board/cray/L1/ +F: include/configs/CRAYL1.h +F: configs/CRAYL1_defconfig diff --git a/board/creative/xfi3/Kconfig b/board/creative/xfi3/Kconfig new file mode 100644 index 0000000..9baf515 --- /dev/null +++ b/board/creative/xfi3/Kconfig @@ -0,0 +1,23 @@ +if TARGET_XFI3 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "xfi3" + +config SYS_VENDOR + string + default "creative" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "xfi3" + +endif diff --git a/board/creative/xfi3/MAINTAINERS b/board/creative/xfi3/MAINTAINERS new file mode 100644 index 0000000..fb8235a --- /dev/null +++ b/board/creative/xfi3/MAINTAINERS @@ -0,0 +1,6 @@ +XFI3 BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/creative/xfi3/ +F: include/configs/xfi3.h +F: configs/xfi3_defconfig diff --git a/board/csb272/Kconfig b/board/csb272/Kconfig new file mode 100644 index 0000000..90f94a3 --- /dev/null +++ b/board/csb272/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CSB272 + +config SYS_BOARD + string + default "csb272" + +config SYS_CONFIG_NAME + string + default "csb272" + +endif diff --git a/board/csb272/MAINTAINERS b/board/csb272/MAINTAINERS new file mode 100644 index 0000000..4bc95ea --- /dev/null +++ b/board/csb272/MAINTAINERS @@ -0,0 +1,6 @@ +CSB272 BOARD +M: Tolunay Orkun <torkun@nextio.com> +S: Maintained +F: board/csb272/ +F: include/configs/csb272.h +F: configs/csb272_defconfig diff --git a/board/csb472/Kconfig b/board/csb472/Kconfig new file mode 100644 index 0000000..05230a0 --- /dev/null +++ b/board/csb472/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CSB472 + +config SYS_BOARD + string + default "csb472" + +config SYS_CONFIG_NAME + string + default "csb472" + +endif diff --git a/board/csb472/MAINTAINERS b/board/csb472/MAINTAINERS new file mode 100644 index 0000000..25041ed --- /dev/null +++ b/board/csb472/MAINTAINERS @@ -0,0 +1,6 @@ +CSB472 BOARD +M: Tolunay Orkun <torkun@nextio.com> +S: Maintained +F: board/csb472/ +F: include/configs/csb472.h +F: configs/csb472_defconfig diff --git a/board/cu824/Kconfig b/board/cu824/Kconfig new file mode 100644 index 0000000..d866688 --- /dev/null +++ b/board/cu824/Kconfig @@ -0,0 +1,11 @@ +if TARGET_CU824 + +config SYS_BOARD + string + default "cu824" + +config SYS_CONFIG_NAME + string + default "CU824" + +endif diff --git a/board/cu824/MAINTAINERS b/board/cu824/MAINTAINERS new file mode 100644 index 0000000..b1b7190 --- /dev/null +++ b/board/cu824/MAINTAINERS @@ -0,0 +1,6 @@ +CU824 BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/cu824/ +F: include/configs/CU824.h +F: configs/CU824_defconfig diff --git a/board/d-link/dns325/Kconfig b/board/d-link/dns325/Kconfig new file mode 100644 index 0000000..dea6071 --- /dev/null +++ b/board/d-link/dns325/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DNS325 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dns325" + +config SYS_VENDOR + string + default "d-link" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "dns325" + +endif diff --git a/board/d-link/dns325/MAINTAINERS b/board/d-link/dns325/MAINTAINERS new file mode 100644 index 0000000..4b65a9b --- /dev/null +++ b/board/d-link/dns325/MAINTAINERS @@ -0,0 +1,6 @@ +DNS325 BOARD +M: Stefan Herbrechtsmeier <stefan@code.herbrechtsmeier.net> +S: Maintained +F: board/d-link/dns325/ +F: include/configs/dns325.h +F: configs/dns325_defconfig diff --git a/board/dave/PPChameleonEVB/Kconfig b/board/dave/PPChameleonEVB/Kconfig new file mode 100644 index 0000000..3e95654 --- /dev/null +++ b/board/dave/PPChameleonEVB/Kconfig @@ -0,0 +1,31 @@ +if TARGET_CATCENTER + +config SYS_BOARD + string + default "PPChameleonEVB" + +config SYS_VENDOR + string + default "dave" + +config SYS_CONFIG_NAME + string + default "CATcenter" + +endif + +if TARGET_PPCHAMELEONEVB + +config SYS_BOARD + string + default "PPChameleonEVB" + +config SYS_VENDOR + string + default "dave" + +config SYS_CONFIG_NAME + string + default "PPChameleonEVB" + +endif diff --git a/board/dave/PPChameleonEVB/MAINTAINERS b/board/dave/PPChameleonEVB/MAINTAINERS new file mode 100644 index 0000000..3af5b57 --- /dev/null +++ b/board/dave/PPChameleonEVB/MAINTAINERS @@ -0,0 +1,20 @@ +PPCHAMELEONEVB BOARD +M: - +S: Maintained +F: board/dave/PPChameleonEVB/ +F: include/configs/CATcenter.h +F: configs/CATcenter_defconfig +F: configs/CATcenter_25_defconfig +F: configs/CATcenter_33_defconfig + +PPCHAMELEONEVB BOARD +M: Andrea "llandre" Marson <andrea.marson@dave-tech.it> +S: Maintained +F: include/configs/PPChameleonEVB.h +F: configs/PPChameleonEVB_defconfig +F: configs/PPChameleonEVB_BA_25_defconfig +F: configs/PPChameleonEVB_BA_33_defconfig +F: configs/PPChameleonEVB_HI_25_defconfig +F: configs/PPChameleonEVB_HI_33_defconfig +F: configs/PPChameleonEVB_ME_25_defconfig +F: configs/PPChameleonEVB_ME_33_defconfig diff --git a/board/davedenx/aria/Kconfig b/board/davedenx/aria/Kconfig new file mode 100644 index 0000000..f5d2aef --- /dev/null +++ b/board/davedenx/aria/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ARIA + +config SYS_BOARD + string + default "aria" + +config SYS_VENDOR + string + default "davedenx" + +config SYS_CONFIG_NAME + string + default "aria" + +endif diff --git a/board/davedenx/aria/MAINTAINERS b/board/davedenx/aria/MAINTAINERS new file mode 100644 index 0000000..a6152c9 --- /dev/null +++ b/board/davedenx/aria/MAINTAINERS @@ -0,0 +1,6 @@ +ARIA BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/davedenx/aria/ +F: include/configs/aria.h +F: configs/aria_defconfig diff --git a/board/davedenx/qong/Kconfig b/board/davedenx/qong/Kconfig new file mode 100644 index 0000000..51b9428 --- /dev/null +++ b/board/davedenx/qong/Kconfig @@ -0,0 +1,23 @@ +if TARGET_QONG + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "qong" + +config SYS_VENDOR + string + default "davedenx" + +config SYS_SOC + string + default "mx31" + +config SYS_CONFIG_NAME + string + default "qong" + +endif diff --git a/board/davedenx/qong/MAINTAINERS b/board/davedenx/qong/MAINTAINERS new file mode 100644 index 0000000..a275b5b --- /dev/null +++ b/board/davedenx/qong/MAINTAINERS @@ -0,0 +1,6 @@ +QONG BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/davedenx/qong/ +F: include/configs/qong.h +F: configs/qong_defconfig diff --git a/board/davinci/da8xxevm/Kconfig b/board/davinci/da8xxevm/Kconfig new file mode 100644 index 0000000..89f78d7 --- /dev/null +++ b/board/davinci/da8xxevm/Kconfig @@ -0,0 +1,71 @@ +if TARGET_DA830EVM + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "da8xxevm" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "da830evm" + +endif + +if TARGET_DA850EVM + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "da8xxevm" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "da850evm" + +endif + +if TARGET_HAWKBOARD + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "da8xxevm" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "hawkboard" + +endif diff --git a/board/davinci/da8xxevm/MAINTAINERS b/board/davinci/da8xxevm/MAINTAINERS new file mode 100644 index 0000000..dd66f07 --- /dev/null +++ b/board/davinci/da8xxevm/MAINTAINERS @@ -0,0 +1,22 @@ +DA8XXEVM BOARD +M: Nick Thompson <nick.thompson@gefanuc.com> +S: Maintained +F: board/davinci/da8xxevm/ +F: include/configs/da830evm.h +F: configs/da830evm_defconfig + +DA850_AM18XXEVM BOARD +M: Sudhakar Rajashekhara <sudhakar.raj@ti.com> +S: Maintained +F: include/configs/da850evm.h +F: configs/da850_am18xxevm_defconfig +F: configs/da850evm_defconfig +F: configs/da850evm_direct_nor_defconfig + +HAWKBOARD BOARD +M: Syed Mohammed Khasim <sm.khasim@gmail.com> +M: Sughosh Ganu <urwithsughosh@gmail.com> +S: Maintained +F: include/configs/hawkboard.h +F: configs/hawkboard_defconfig +F: configs/hawkboard_uart_defconfig diff --git a/board/davinci/dm355evm/Kconfig b/board/davinci/dm355evm/Kconfig new file mode 100644 index 0000000..2dbb509 --- /dev/null +++ b/board/davinci/dm355evm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_DM355EVM + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dm355evm" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_dm355evm" + +endif diff --git a/board/davinci/dm355evm/MAINTAINERS b/board/davinci/dm355evm/MAINTAINERS new file mode 100644 index 0000000..b823785 --- /dev/null +++ b/board/davinci/dm355evm/MAINTAINERS @@ -0,0 +1,6 @@ +DM355EVM BOARD +M: Sandeep Paulraj <s-paulraj@ti.com> +S: Maintained +F: board/davinci/dm355evm/ +F: include/configs/davinci_dm355evm.h +F: configs/davinci_dm355evm_defconfig diff --git a/board/davinci/dm355leopard/Kconfig b/board/davinci/dm355leopard/Kconfig new file mode 100644 index 0000000..345704f --- /dev/null +++ b/board/davinci/dm355leopard/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_DM355LEOPARD + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dm355leopard" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_dm355leopard" + +endif diff --git a/board/davinci/dm355leopard/MAINTAINERS b/board/davinci/dm355leopard/MAINTAINERS new file mode 100644 index 0000000..f17fea2 --- /dev/null +++ b/board/davinci/dm355leopard/MAINTAINERS @@ -0,0 +1,6 @@ +DM355LEOPARD BOARD +M: Sandeep Paulraj <s-paulraj@ti.com> +S: Maintained +F: board/davinci/dm355leopard/ +F: include/configs/davinci_dm355leopard.h +F: configs/davinci_dm355leopard_defconfig diff --git a/board/davinci/dm365evm/Kconfig b/board/davinci/dm365evm/Kconfig new file mode 100644 index 0000000..d5f7ea2 --- /dev/null +++ b/board/davinci/dm365evm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_DM365EVM + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dm365evm" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_dm365evm" + +endif diff --git a/board/davinci/dm365evm/MAINTAINERS b/board/davinci/dm365evm/MAINTAINERS new file mode 100644 index 0000000..5adb4e0 --- /dev/null +++ b/board/davinci/dm365evm/MAINTAINERS @@ -0,0 +1,6 @@ +DM365EVM BOARD +M: Sandeep Paulraj <s-paulraj@ti.com> +S: Maintained +F: board/davinci/dm365evm/ +F: include/configs/davinci_dm365evm.h +F: configs/davinci_dm365evm_defconfig diff --git a/board/davinci/dm6467evm/Kconfig b/board/davinci/dm6467evm/Kconfig new file mode 100644 index 0000000..f7b225d --- /dev/null +++ b/board/davinci/dm6467evm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_DM6467EVM + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dm6467evm" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_dm6467evm" + +endif diff --git a/board/davinci/dm6467evm/MAINTAINERS b/board/davinci/dm6467evm/MAINTAINERS new file mode 100644 index 0000000..4030bf3 --- /dev/null +++ b/board/davinci/dm6467evm/MAINTAINERS @@ -0,0 +1,7 @@ +DM6467EVM BOARD +M: Sandeep Paulraj <s-paulraj@ti.com> +S: Maintained +F: board/davinci/dm6467evm/ +F: include/configs/davinci_dm6467evm.h +F: configs/davinci_dm6467evm_defconfig +F: configs/davinci_dm6467Tevm_defconfig diff --git a/board/davinci/dvevm/Kconfig b/board/davinci/dvevm/Kconfig new file mode 100644 index 0000000..7a2d86b --- /dev/null +++ b/board/davinci/dvevm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_DVEVM + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "dvevm" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_dvevm" + +endif diff --git a/board/davinci/dvevm/MAINTAINERS b/board/davinci/dvevm/MAINTAINERS new file mode 100644 index 0000000..4b3ce45 --- /dev/null +++ b/board/davinci/dvevm/MAINTAINERS @@ -0,0 +1,6 @@ +DVEVM BOARD +M: - +S: Maintained +F: board/davinci/dvevm/ +F: include/configs/davinci_dvevm.h +F: configs/davinci_dvevm_defconfig diff --git a/board/davinci/ea20/Kconfig b/board/davinci/ea20/Kconfig new file mode 100644 index 0000000..afab821 --- /dev/null +++ b/board/davinci/ea20/Kconfig @@ -0,0 +1,23 @@ +if TARGET_EA20 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "ea20" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "ea20" + +endif diff --git a/board/davinci/ea20/MAINTAINERS b/board/davinci/ea20/MAINTAINERS new file mode 100644 index 0000000..5c300a3 --- /dev/null +++ b/board/davinci/ea20/MAINTAINERS @@ -0,0 +1,6 @@ +EA20 BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/davinci/ea20/ +F: include/configs/ea20.h +F: configs/ea20_defconfig diff --git a/board/davinci/schmoogie/Kconfig b/board/davinci/schmoogie/Kconfig new file mode 100644 index 0000000..45401e4 --- /dev/null +++ b/board/davinci/schmoogie/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_SCHMOOGIE + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "schmoogie" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_schmoogie" + +endif diff --git a/board/davinci/schmoogie/MAINTAINERS b/board/davinci/schmoogie/MAINTAINERS new file mode 100644 index 0000000..b1fc29c --- /dev/null +++ b/board/davinci/schmoogie/MAINTAINERS @@ -0,0 +1,6 @@ +SCHMOOGIE BOARD +M: - +S: Maintained +F: board/davinci/schmoogie/ +F: include/configs/davinci_schmoogie.h +F: configs/davinci_schmoogie_defconfig diff --git a/board/davinci/sffsdr/Kconfig b/board/davinci/sffsdr/Kconfig new file mode 100644 index 0000000..aeb7ef2 --- /dev/null +++ b/board/davinci/sffsdr/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_SFFSDR + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "sffsdr" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_sffsdr" + +endif diff --git a/board/davinci/sffsdr/MAINTAINERS b/board/davinci/sffsdr/MAINTAINERS new file mode 100644 index 0000000..428d003 --- /dev/null +++ b/board/davinci/sffsdr/MAINTAINERS @@ -0,0 +1,6 @@ +SFFSDR BOARD +M: - +S: Maintained +F: board/davinci/sffsdr/ +F: include/configs/davinci_sffsdr.h +F: configs/davinci_sffsdr_defconfig diff --git a/board/davinci/sonata/Kconfig b/board/davinci/sonata/Kconfig new file mode 100644 index 0000000..2cf5035 --- /dev/null +++ b/board/davinci/sonata/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DAVINCI_SONATA + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "sonata" + +config SYS_VENDOR + string + default "davinci" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "davinci_sonata" + +endif diff --git a/board/davinci/sonata/MAINTAINERS b/board/davinci/sonata/MAINTAINERS new file mode 100644 index 0000000..625978c --- /dev/null +++ b/board/davinci/sonata/MAINTAINERS @@ -0,0 +1,6 @@ +SONATA BOARD +M: - +S: Maintained +F: board/davinci/sonata/ +F: include/configs/davinci_sonata.h +F: configs/davinci_sonata_defconfig diff --git a/board/dbau1x00/Kconfig b/board/dbau1x00/Kconfig new file mode 100644 index 0000000..5fca62d --- /dev/null +++ b/board/dbau1x00/Kconfig @@ -0,0 +1,19 @@ +if TARGET_DBAU1X00 + +config SYS_CPU + string + default "mips32" + +config SYS_BOARD + string + default "dbau1x00" + +config SYS_SOC + string + default "au1x00" + +config SYS_CONFIG_NAME + string + default "dbau1x00" + +endif diff --git a/board/dbau1x00/MAINTAINERS b/board/dbau1x00/MAINTAINERS new file mode 100644 index 0000000..b94ed81 --- /dev/null +++ b/board/dbau1x00/MAINTAINERS @@ -0,0 +1,10 @@ +DBAU1X00 BOARD +M: Thomas Lange <thomas@corelatus.se> +S: Maintained +F: board/dbau1x00/ +F: include/configs/dbau1x00.h +F: configs/dbau1000_defconfig +F: configs/dbau1100_defconfig +F: configs/dbau1500_defconfig +F: configs/dbau1550_defconfig +F: configs/dbau1550_el_defconfig diff --git a/board/denx/m28evk/Kconfig b/board/denx/m28evk/Kconfig new file mode 100644 index 0000000..05f79ad --- /dev/null +++ b/board/denx/m28evk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_M28EVK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "m28evk" + +config SYS_VENDOR + string + default "denx" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "m28evk" + +endif diff --git a/board/denx/m28evk/MAINTAINERS b/board/denx/m28evk/MAINTAINERS new file mode 100644 index 0000000..b0535a9 --- /dev/null +++ b/board/denx/m28evk/MAINTAINERS @@ -0,0 +1,6 @@ +M28EVK BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/denx/m28evk/ +F: include/configs/m28evk.h +F: configs/m28evk_defconfig diff --git a/board/denx/m53evk/Kconfig b/board/denx/m53evk/Kconfig new file mode 100644 index 0000000..5e3298c --- /dev/null +++ b/board/denx/m53evk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_M53EVK + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "m53evk" + +config SYS_VENDOR + string + default "denx" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "m53evk" + +endif diff --git a/board/denx/m53evk/MAINTAINERS b/board/denx/m53evk/MAINTAINERS new file mode 100644 index 0000000..5d8c764 --- /dev/null +++ b/board/denx/m53evk/MAINTAINERS @@ -0,0 +1,6 @@ +M53EVK BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/denx/m53evk/ +F: include/configs/m53evk.h +F: configs/m53evk_defconfig diff --git a/board/dnp5370/Kconfig b/board/dnp5370/Kconfig new file mode 100644 index 0000000..f03a1e7 --- /dev/null +++ b/board/dnp5370/Kconfig @@ -0,0 +1,11 @@ +if TARGET_DNP5370 + +config SYS_BOARD + string + default "dnp5370" + +config SYS_CONFIG_NAME + string + default "dnp5370" + +endif diff --git a/board/dnp5370/MAINTAINERS b/board/dnp5370/MAINTAINERS new file mode 100644 index 0000000..8333891 --- /dev/null +++ b/board/dnp5370/MAINTAINERS @@ -0,0 +1,6 @@ +DNP5370 BOARD +M: M.Hasewinkel (MHA) <info@ssv-embedded.de> +S: Maintained +F: board/dnp5370/ +F: include/configs/dnp5370.h +F: configs/dnp5370_defconfig diff --git a/board/eXalion/Kconfig b/board/eXalion/Kconfig new file mode 100644 index 0000000..42ba092 --- /dev/null +++ b/board/eXalion/Kconfig @@ -0,0 +1,11 @@ +if TARGET_EXALION + +config SYS_BOARD + string + default "eXalion" + +config SYS_CONFIG_NAME + string + default "eXalion" + +endif diff --git a/board/eXalion/MAINTAINERS b/board/eXalion/MAINTAINERS new file mode 100644 index 0000000..0ea74ca --- /dev/null +++ b/board/eXalion/MAINTAINERS @@ -0,0 +1,6 @@ +EXALION BOARD +M: Torsten Demke <torsten.demke@fci.com> +S: Maintained +F: board/eXalion/ +F: include/configs/eXalion.h +F: configs/eXalion_defconfig diff --git a/board/earthlcd/favr-32-ezkit/Kconfig b/board/earthlcd/favr-32-ezkit/Kconfig new file mode 100644 index 0000000..c0cd1b7 --- /dev/null +++ b/board/earthlcd/favr-32-ezkit/Kconfig @@ -0,0 +1,19 @@ +if TARGET_FAVR_32_EZKIT + +config SYS_BOARD + string + default "favr-32-ezkit" + +config SYS_VENDOR + string + default "earthlcd" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "favr-32-ezkit" + +endif diff --git a/board/earthlcd/favr-32-ezkit/MAINTAINERS b/board/earthlcd/favr-32-ezkit/MAINTAINERS new file mode 100644 index 0000000..30453c6 --- /dev/null +++ b/board/earthlcd/favr-32-ezkit/MAINTAINERS @@ -0,0 +1,6 @@ +FAVR-32-EZKIT BOARD +M: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> +S: Orphan (since 2014-06) +F: board/earthlcd/favr-32-ezkit/ +F: include/configs/favr-32-ezkit.h +F: configs/favr-32-ezkit_defconfig diff --git a/board/egnite/ethernut5/Kconfig b/board/egnite/ethernut5/Kconfig new file mode 100644 index 0000000..cd2e53c --- /dev/null +++ b/board/egnite/ethernut5/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ETHERNUT5 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "ethernut5" + +config SYS_VENDOR + string + default "egnite" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "ethernut5" + +endif diff --git a/board/egnite/ethernut5/MAINTAINERS b/board/egnite/ethernut5/MAINTAINERS new file mode 100644 index 0000000..a4ad913 --- /dev/null +++ b/board/egnite/ethernut5/MAINTAINERS @@ -0,0 +1,6 @@ +ETHERNUT5 BOARD +M: egnite GmbH <info@egnite.de> +S: Maintained +F: board/egnite/ethernut5/ +F: include/configs/ethernut5.h +F: configs/ethernut5_defconfig diff --git a/board/eltec/elppc/Kconfig b/board/eltec/elppc/Kconfig new file mode 100644 index 0000000..55564dc --- /dev/null +++ b/board/eltec/elppc/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ELPPC + +config SYS_BOARD + string + default "elppc" + +config SYS_VENDOR + string + default "eltec" + +config SYS_CONFIG_NAME + string + default "ELPPC" + +endif diff --git a/board/eltec/elppc/MAINTAINERS b/board/eltec/elppc/MAINTAINERS new file mode 100644 index 0000000..5258b3a --- /dev/null +++ b/board/eltec/elppc/MAINTAINERS @@ -0,0 +1,6 @@ +ELPPC BOARD +M: - +S: Maintained +F: board/eltec/elppc/ +F: include/configs/ELPPC.h +F: configs/ELPPC_defconfig diff --git a/board/eltec/mhpc/Kconfig b/board/eltec/mhpc/Kconfig new file mode 100644 index 0000000..69c8358 --- /dev/null +++ b/board/eltec/mhpc/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MHPC + +config SYS_BOARD + string + default "mhpc" + +config SYS_VENDOR + string + default "eltec" + +config SYS_CONFIG_NAME + string + default "MHPC" + +endif diff --git a/board/eltec/mhpc/MAINTAINERS b/board/eltec/mhpc/MAINTAINERS new file mode 100644 index 0000000..4d84a35 --- /dev/null +++ b/board/eltec/mhpc/MAINTAINERS @@ -0,0 +1,6 @@ +MHPC BOARD +M: Frank Gottschling <fgottschling@eltec.de> +S: Maintained +F: board/eltec/mhpc/ +F: include/configs/MHPC.h +F: configs/MHPC_defconfig diff --git a/board/embest/mx6boards/Kconfig b/board/embest/mx6boards/Kconfig new file mode 100644 index 0000000..b0c823e --- /dev/null +++ b/board/embest/mx6boards/Kconfig @@ -0,0 +1,23 @@ +if TARGET_EMBESTMX6BOARDS + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx6boards" + +config SYS_VENDOR + string + default "embest" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "embestmx6boards" + +endif diff --git a/board/embest/mx6boards/MAINTAINERS b/board/embest/mx6boards/MAINTAINERS new file mode 100644 index 0000000..0ffd466 --- /dev/null +++ b/board/embest/mx6boards/MAINTAINERS @@ -0,0 +1,7 @@ +MX6BOARDS BOARD +M: Eric Bénard <eric@eukrea.com> +S: Maintained +F: board/embest/mx6boards/ +F: include/configs/embestmx6boards.h +F: configs/marsboard_defconfig +F: configs/riotboard_defconfig diff --git a/board/emk/top5200/Kconfig b/board/emk/top5200/Kconfig new file mode 100644 index 0000000..1d4e326 --- /dev/null +++ b/board/emk/top5200/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TOP5200 + +config SYS_BOARD + string + default "top5200" + +config SYS_VENDOR + string + default "emk" + +config SYS_CONFIG_NAME + string + default "TOP5200" + +endif diff --git a/board/emk/top5200/MAINTAINERS b/board/emk/top5200/MAINTAINERS new file mode 100644 index 0000000..72fea41 --- /dev/null +++ b/board/emk/top5200/MAINTAINERS @@ -0,0 +1,8 @@ +TOP5200 BOARD +M: Reinhard Meyer <reinhard.meyer@emk-elektronik.de> +S: Maintained +F: board/emk/top5200/ +F: include/configs/TOP5200.h +F: configs/EVAL5200_defconfig +F: configs/MINI5200_defconfig +F: configs/TOP5200_defconfig diff --git a/board/emk/top860/Kconfig b/board/emk/top860/Kconfig new file mode 100644 index 0000000..4da934e --- /dev/null +++ b/board/emk/top860/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TOP860 + +config SYS_BOARD + string + default "top860" + +config SYS_VENDOR + string + default "emk" + +config SYS_CONFIG_NAME + string + default "TOP860" + +endif diff --git a/board/emk/top860/MAINTAINERS b/board/emk/top860/MAINTAINERS new file mode 100644 index 0000000..3676aca --- /dev/null +++ b/board/emk/top860/MAINTAINERS @@ -0,0 +1,6 @@ +TOP860 BOARD +M: Reinhard Meyer <reinhard.meyer@emk-elektronik.de> +S: Maintained +F: board/emk/top860/ +F: include/configs/TOP860.h +F: configs/TOP860_defconfig diff --git a/board/emk/top9000/Kconfig b/board/emk/top9000/Kconfig new file mode 100644 index 0000000..421f7b2 --- /dev/null +++ b/board/emk/top9000/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TOP9000 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "top9000" + +config SYS_VENDOR + string + default "emk" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "top9000" + +endif diff --git a/board/emk/top9000/MAINTAINERS b/board/emk/top9000/MAINTAINERS new file mode 100644 index 0000000..890359f --- /dev/null +++ b/board/emk/top9000/MAINTAINERS @@ -0,0 +1,7 @@ +TOP9000 BOARD +M: Reinhard Meyer <reinhard.meyer@emk-elektronik.de> +S: Maintained +F: board/emk/top9000/ +F: include/configs/top9000.h +F: configs/top9000eval_xe_defconfig +F: configs/top9000su_xe_defconfig diff --git a/board/enbw/enbw_cmc/Kconfig b/board/enbw/enbw_cmc/Kconfig new file mode 100644 index 0000000..e061e7e --- /dev/null +++ b/board/enbw/enbw_cmc/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ENBW_CMC + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "enbw_cmc" + +config SYS_VENDOR + string + default "enbw" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "enbw_cmc" + +endif diff --git a/board/enbw/enbw_cmc/MAINTAINERS b/board/enbw/enbw_cmc/MAINTAINERS new file mode 100644 index 0000000..f7c9920 --- /dev/null +++ b/board/enbw/enbw_cmc/MAINTAINERS @@ -0,0 +1,6 @@ +ENBW_CMC BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/enbw/enbw_cmc/ +F: include/configs/enbw_cmc.h +F: configs/enbw_cmc_defconfig diff --git a/board/ep8260/Kconfig b/board/ep8260/Kconfig new file mode 100644 index 0000000..15ca962 --- /dev/null +++ b/board/ep8260/Kconfig @@ -0,0 +1,11 @@ +if TARGET_EP8260 + +config SYS_BOARD + string + default "ep8260" + +config SYS_CONFIG_NAME + string + default "ep8260" + +endif diff --git a/board/ep8260/MAINTAINERS b/board/ep8260/MAINTAINERS new file mode 100644 index 0000000..bb273df --- /dev/null +++ b/board/ep8260/MAINTAINERS @@ -0,0 +1,6 @@ +EP8260 BOARD +M: Frank Panno <fpanno@delphintech.com> +S: Orphan (since 2014-06) +F: board/ep8260/ +F: include/configs/ep8260.h +F: configs/ep8260_defconfig diff --git a/board/ep82xxm/Kconfig b/board/ep82xxm/Kconfig new file mode 100644 index 0000000..b4121a6 --- /dev/null +++ b/board/ep82xxm/Kconfig @@ -0,0 +1,11 @@ +if TARGET_EP82XXM + +config SYS_BOARD + string + default "ep82xxm" + +config SYS_CONFIG_NAME + string + default "ep82xxm" + +endif diff --git a/board/ep82xxm/MAINTAINERS b/board/ep82xxm/MAINTAINERS new file mode 100644 index 0000000..822261b --- /dev/null +++ b/board/ep82xxm/MAINTAINERS @@ -0,0 +1,6 @@ +EP82XXM BOARD +M: - +S: Maintained +F: board/ep82xxm/ +F: include/configs/ep82xxm.h +F: configs/ep82xxm_defconfig diff --git a/board/esd/apc405/Kconfig b/board/esd/apc405/Kconfig new file mode 100644 index 0000000..83cd8bd --- /dev/null +++ b/board/esd/apc405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_APC405 + +config SYS_BOARD + string + default "apc405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "APC405" + +endif diff --git a/board/esd/apc405/MAINTAINERS b/board/esd/apc405/MAINTAINERS new file mode 100644 index 0000000..7f2a33f --- /dev/null +++ b/board/esd/apc405/MAINTAINERS @@ -0,0 +1,6 @@ +APC405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/apc405/ +F: include/configs/APC405.h +F: configs/APC405_defconfig diff --git a/board/esd/ar405/Kconfig b/board/esd/ar405/Kconfig new file mode 100644 index 0000000..e35fc5e --- /dev/null +++ b/board/esd/ar405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_AR405 + +config SYS_BOARD + string + default "ar405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "AR405" + +endif diff --git a/board/esd/ar405/MAINTAINERS b/board/esd/ar405/MAINTAINERS new file mode 100644 index 0000000..be74ff7 --- /dev/null +++ b/board/esd/ar405/MAINTAINERS @@ -0,0 +1,6 @@ +AR405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/ar405/ +F: include/configs/AR405.h +F: configs/AR405_defconfig diff --git a/board/esd/ash405/Kconfig b/board/esd/ash405/Kconfig new file mode 100644 index 0000000..e9558a4 --- /dev/null +++ b/board/esd/ash405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ASH405 + +config SYS_BOARD + string + default "ash405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "ASH405" + +endif diff --git a/board/esd/ash405/MAINTAINERS b/board/esd/ash405/MAINTAINERS new file mode 100644 index 0000000..a9dae90 --- /dev/null +++ b/board/esd/ash405/MAINTAINERS @@ -0,0 +1,6 @@ +ASH405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/ash405/ +F: include/configs/ASH405.h +F: configs/ASH405_defconfig diff --git a/board/esd/cms700/Kconfig b/board/esd/cms700/Kconfig new file mode 100644 index 0000000..398d22a --- /dev/null +++ b/board/esd/cms700/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CMS700 + +config SYS_BOARD + string + default "cms700" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CMS700" + +endif diff --git a/board/esd/cms700/MAINTAINERS b/board/esd/cms700/MAINTAINERS new file mode 100644 index 0000000..0191c8b --- /dev/null +++ b/board/esd/cms700/MAINTAINERS @@ -0,0 +1,6 @@ +CMS700 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/cms700/ +F: include/configs/CMS700.h +F: configs/CMS700_defconfig diff --git a/board/esd/cpci2dp/Kconfig b/board/esd/cpci2dp/Kconfig new file mode 100644 index 0000000..c99404c --- /dev/null +++ b/board/esd/cpci2dp/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CPCI2DP + +config SYS_BOARD + string + default "cpci2dp" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CPCI2DP" + +endif diff --git a/board/esd/cpci2dp/MAINTAINERS b/board/esd/cpci2dp/MAINTAINERS new file mode 100644 index 0000000..660e185 --- /dev/null +++ b/board/esd/cpci2dp/MAINTAINERS @@ -0,0 +1,6 @@ +CPCI2DP BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/cpci2dp/ +F: include/configs/CPCI2DP.h +F: configs/CPCI2DP_defconfig diff --git a/board/esd/cpci405/Kconfig b/board/esd/cpci405/Kconfig new file mode 100644 index 0000000..0b9f9f4 --- /dev/null +++ b/board/esd/cpci405/Kconfig @@ -0,0 +1,63 @@ +if TARGET_CPCI405 + +config SYS_BOARD + string + default "cpci405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CPCI405" + +endif + +if TARGET_CPCI4052 + +config SYS_BOARD + string + default "cpci405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CPCI4052" + +endif + +if TARGET_CPCI405AB + +config SYS_BOARD + string + default "cpci405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CPCI405AB" + +endif + +if TARGET_CPCI405DT + +config SYS_BOARD + string + default "cpci405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CPCI405DT" + +endif diff --git a/board/esd/cpci405/MAINTAINERS b/board/esd/cpci405/MAINTAINERS new file mode 100644 index 0000000..1da58dc --- /dev/null +++ b/board/esd/cpci405/MAINTAINERS @@ -0,0 +1,12 @@ +CPCI405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/cpci405/ +F: include/configs/CPCI405.h +F: configs/CPCI405_defconfig +F: include/configs/CPCI4052.h +F: configs/CPCI4052_defconfig +F: include/configs/CPCI405AB.h +F: configs/CPCI405AB_defconfig +F: include/configs/CPCI405DT.h +F: configs/CPCI405DT_defconfig diff --git a/board/esd/cpci5200/Kconfig b/board/esd/cpci5200/Kconfig new file mode 100644 index 0000000..29fa9e6 --- /dev/null +++ b/board/esd/cpci5200/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CPCI5200 + +config SYS_BOARD + string + default "cpci5200" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "cpci5200" + +endif diff --git a/board/esd/cpci5200/MAINTAINERS b/board/esd/cpci5200/MAINTAINERS new file mode 100644 index 0000000..184d3cc --- /dev/null +++ b/board/esd/cpci5200/MAINTAINERS @@ -0,0 +1,6 @@ +CPCI5200 BOARD +M: Reinhard Arlt <reinhard.arlt@esd-electronics.com> +S: Maintained +F: board/esd/cpci5200/ +F: include/configs/cpci5200.h +F: configs/cpci5200_defconfig diff --git a/board/esd/cpci750/Kconfig b/board/esd/cpci750/Kconfig new file mode 100644 index 0000000..99f8c2d --- /dev/null +++ b/board/esd/cpci750/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CPCI750 + +config SYS_BOARD + string + default "cpci750" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CPCI750" + +endif diff --git a/board/esd/cpci750/MAINTAINERS b/board/esd/cpci750/MAINTAINERS new file mode 100644 index 0000000..4a46457 --- /dev/null +++ b/board/esd/cpci750/MAINTAINERS @@ -0,0 +1,6 @@ +CPCI750 BOARD +M: Reinhard Arlt <reinhard.arlt@esd-electronics.com> +S: Maintained +F: board/esd/cpci750/ +F: include/configs/CPCI750.h +F: configs/CPCI750_defconfig diff --git a/board/esd/cpciiser4/Kconfig b/board/esd/cpciiser4/Kconfig new file mode 100644 index 0000000..1357a51 --- /dev/null +++ b/board/esd/cpciiser4/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CPCIISER4 + +config SYS_BOARD + string + default "cpciiser4" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "CPCIISER4" + +endif diff --git a/board/esd/cpciiser4/MAINTAINERS b/board/esd/cpciiser4/MAINTAINERS new file mode 100644 index 0000000..85743db --- /dev/null +++ b/board/esd/cpciiser4/MAINTAINERS @@ -0,0 +1,6 @@ +CPCIISER4 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/cpciiser4/ +F: include/configs/CPCIISER4.h +F: configs/CPCIISER4_defconfig diff --git a/board/esd/dp405/Kconfig b/board/esd/dp405/Kconfig new file mode 100644 index 0000000..0fd7014 --- /dev/null +++ b/board/esd/dp405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_DP405 + +config SYS_BOARD + string + default "dp405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "DP405" + +endif diff --git a/board/esd/dp405/MAINTAINERS b/board/esd/dp405/MAINTAINERS new file mode 100644 index 0000000..6833d8c --- /dev/null +++ b/board/esd/dp405/MAINTAINERS @@ -0,0 +1,6 @@ +DP405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/dp405/ +F: include/configs/DP405.h +F: configs/DP405_defconfig diff --git a/board/esd/du405/Kconfig b/board/esd/du405/Kconfig new file mode 100644 index 0000000..f2857f6 --- /dev/null +++ b/board/esd/du405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_DU405 + +config SYS_BOARD + string + default "du405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "DU405" + +endif diff --git a/board/esd/du405/MAINTAINERS b/board/esd/du405/MAINTAINERS new file mode 100644 index 0000000..5eff2a4 --- /dev/null +++ b/board/esd/du405/MAINTAINERS @@ -0,0 +1,6 @@ +DU405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/du405/ +F: include/configs/DU405.h +F: configs/DU405_defconfig diff --git a/board/esd/du440/Kconfig b/board/esd/du440/Kconfig new file mode 100644 index 0000000..f80e181 --- /dev/null +++ b/board/esd/du440/Kconfig @@ -0,0 +1,15 @@ +if TARGET_DU440 + +config SYS_BOARD + string + default "du440" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "DU440" + +endif diff --git a/board/esd/du440/MAINTAINERS b/board/esd/du440/MAINTAINERS new file mode 100644 index 0000000..ba26948 --- /dev/null +++ b/board/esd/du440/MAINTAINERS @@ -0,0 +1,6 @@ +DU440 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/du440/ +F: include/configs/DU440.h +F: configs/DU440_defconfig diff --git a/board/esd/hh405/Kconfig b/board/esd/hh405/Kconfig new file mode 100644 index 0000000..0dc4b06 --- /dev/null +++ b/board/esd/hh405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_HH405 + +config SYS_BOARD + string + default "hh405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "HH405" + +endif diff --git a/board/esd/hh405/MAINTAINERS b/board/esd/hh405/MAINTAINERS new file mode 100644 index 0000000..b695c7b --- /dev/null +++ b/board/esd/hh405/MAINTAINERS @@ -0,0 +1,6 @@ +HH405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/hh405/ +F: include/configs/HH405.h +F: configs/HH405_defconfig diff --git a/board/esd/hub405/Kconfig b/board/esd/hub405/Kconfig new file mode 100644 index 0000000..e355dd2 --- /dev/null +++ b/board/esd/hub405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_HUB405 + +config SYS_BOARD + string + default "hub405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "HUB405" + +endif diff --git a/board/esd/hub405/MAINTAINERS b/board/esd/hub405/MAINTAINERS new file mode 100644 index 0000000..e84a1d9 --- /dev/null +++ b/board/esd/hub405/MAINTAINERS @@ -0,0 +1,6 @@ +HUB405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/hub405/ +F: include/configs/HUB405.h +F: configs/HUB405_defconfig diff --git a/board/esd/mecp5123/Kconfig b/board/esd/mecp5123/Kconfig new file mode 100644 index 0000000..74237e3 --- /dev/null +++ b/board/esd/mecp5123/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MECP5123 + +config SYS_BOARD + string + default "mecp5123" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "mecp5123" + +endif diff --git a/board/esd/mecp5123/MAINTAINERS b/board/esd/mecp5123/MAINTAINERS new file mode 100644 index 0000000..ae5fcea --- /dev/null +++ b/board/esd/mecp5123/MAINTAINERS @@ -0,0 +1,6 @@ +MECP5123 BOARD +M: Reinhard Arlt <reinhard.arlt@esd-electronics.com> +S: Maintained +F: board/esd/mecp5123/ +F: include/configs/mecp5123.h +F: configs/mecp5123_defconfig diff --git a/board/esd/mecp5200/Kconfig b/board/esd/mecp5200/Kconfig new file mode 100644 index 0000000..dfcaefd --- /dev/null +++ b/board/esd/mecp5200/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MECP5200 + +config SYS_BOARD + string + default "mecp5200" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "mecp5200" + +endif diff --git a/board/esd/mecp5200/MAINTAINERS b/board/esd/mecp5200/MAINTAINERS new file mode 100644 index 0000000..05b7824 --- /dev/null +++ b/board/esd/mecp5200/MAINTAINERS @@ -0,0 +1,6 @@ +MECP5200 BOARD +M: Reinhard Arlt <reinhard.arlt@esd-electronics.com> +S: Maintained +F: board/esd/mecp5200/ +F: include/configs/mecp5200.h +F: configs/mecp5200_defconfig diff --git a/board/esd/meesc/Kconfig b/board/esd/meesc/Kconfig new file mode 100644 index 0000000..86a2835 --- /dev/null +++ b/board/esd/meesc/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MEESC + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "meesc" + +config SYS_VENDOR + string + default "esd" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "meesc" + +endif diff --git a/board/esd/meesc/MAINTAINERS b/board/esd/meesc/MAINTAINERS new file mode 100644 index 0000000..9403699 --- /dev/null +++ b/board/esd/meesc/MAINTAINERS @@ -0,0 +1,7 @@ +MEESC BOARD +M: Daniel Gorsulowski <daniel.gorsulowski@esd.eu> +S: Maintained +F: board/esd/meesc/ +F: include/configs/meesc.h +F: configs/meesc_defconfig +F: configs/meesc_dataflash_defconfig diff --git a/board/esd/ocrtc/Kconfig b/board/esd/ocrtc/Kconfig new file mode 100644 index 0000000..83fa495 --- /dev/null +++ b/board/esd/ocrtc/Kconfig @@ -0,0 +1,15 @@ +if TARGET_OCRTC + +config SYS_BOARD + string + default "ocrtc" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "OCRTC" + +endif diff --git a/board/esd/ocrtc/MAINTAINERS b/board/esd/ocrtc/MAINTAINERS new file mode 100644 index 0000000..85c1a12 --- /dev/null +++ b/board/esd/ocrtc/MAINTAINERS @@ -0,0 +1,6 @@ +OCRTC BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/ocrtc/ +F: include/configs/OCRTC.h +F: configs/OCRTC_defconfig diff --git a/board/esd/otc570/Kconfig b/board/esd/otc570/Kconfig new file mode 100644 index 0000000..ec6e4d9 --- /dev/null +++ b/board/esd/otc570/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OTC570 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "otc570" + +config SYS_VENDOR + string + default "esd" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "otc570" + +endif diff --git a/board/esd/otc570/MAINTAINERS b/board/esd/otc570/MAINTAINERS new file mode 100644 index 0000000..a7e165d --- /dev/null +++ b/board/esd/otc570/MAINTAINERS @@ -0,0 +1,7 @@ +OTC570 BOARD +M: Daniel Gorsulowski <daniel.gorsulowski@esd.eu> +S: Maintained +F: board/esd/otc570/ +F: include/configs/otc570.h +F: configs/otc570_defconfig +F: configs/otc570_dataflash_defconfig diff --git a/board/esd/pci405/Kconfig b/board/esd/pci405/Kconfig new file mode 100644 index 0000000..a1a3971 --- /dev/null +++ b/board/esd/pci405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PCI405 + +config SYS_BOARD + string + default "pci405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "PCI405" + +endif diff --git a/board/esd/pci405/MAINTAINERS b/board/esd/pci405/MAINTAINERS new file mode 100644 index 0000000..cf9c1c9 --- /dev/null +++ b/board/esd/pci405/MAINTAINERS @@ -0,0 +1,6 @@ +PCI405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/pci405/ +F: include/configs/PCI405.h +F: configs/PCI405_defconfig diff --git a/board/esd/pf5200/Kconfig b/board/esd/pf5200/Kconfig new file mode 100644 index 0000000..82f30af --- /dev/null +++ b/board/esd/pf5200/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PF5200 + +config SYS_BOARD + string + default "pf5200" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "pf5200" + +endif diff --git a/board/esd/pf5200/MAINTAINERS b/board/esd/pf5200/MAINTAINERS new file mode 100644 index 0000000..b6e624e --- /dev/null +++ b/board/esd/pf5200/MAINTAINERS @@ -0,0 +1,6 @@ +PF5200 BOARD +M: Reinhard Arlt <reinhard.arlt@esd-electronics.com> +S: Maintained +F: board/esd/pf5200/ +F: include/configs/pf5200.h +F: configs/pf5200_defconfig diff --git a/board/esd/plu405/Kconfig b/board/esd/plu405/Kconfig new file mode 100644 index 0000000..b9783d7 --- /dev/null +++ b/board/esd/plu405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PLU405 + +config SYS_BOARD + string + default "plu405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "PLU405" + +endif diff --git a/board/esd/plu405/MAINTAINERS b/board/esd/plu405/MAINTAINERS new file mode 100644 index 0000000..ccb3658 --- /dev/null +++ b/board/esd/plu405/MAINTAINERS @@ -0,0 +1,6 @@ +PLU405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/plu405/ +F: include/configs/PLU405.h +F: configs/PLU405_defconfig diff --git a/board/esd/pmc405/Kconfig b/board/esd/pmc405/Kconfig new file mode 100644 index 0000000..e3c3c82 --- /dev/null +++ b/board/esd/pmc405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PMC405 + +config SYS_BOARD + string + default "pmc405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "PMC405" + +endif diff --git a/board/esd/pmc405/MAINTAINERS b/board/esd/pmc405/MAINTAINERS new file mode 100644 index 0000000..148a596 --- /dev/null +++ b/board/esd/pmc405/MAINTAINERS @@ -0,0 +1,6 @@ +PMC405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/pmc405/ +F: include/configs/PMC405.h +F: configs/PMC405_defconfig diff --git a/board/esd/pmc405de/Kconfig b/board/esd/pmc405de/Kconfig new file mode 100644 index 0000000..f06b26b --- /dev/null +++ b/board/esd/pmc405de/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PMC405DE + +config SYS_BOARD + string + default "pmc405de" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "PMC405DE" + +endif diff --git a/board/esd/pmc405de/MAINTAINERS b/board/esd/pmc405de/MAINTAINERS new file mode 100644 index 0000000..a891e23 --- /dev/null +++ b/board/esd/pmc405de/MAINTAINERS @@ -0,0 +1,6 @@ +PMC405DE BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/pmc405de/ +F: include/configs/PMC405DE.h +F: configs/PMC405DE_defconfig diff --git a/board/esd/pmc440/Kconfig b/board/esd/pmc440/Kconfig new file mode 100644 index 0000000..28db4ab --- /dev/null +++ b/board/esd/pmc440/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PMC440 + +config SYS_BOARD + string + default "pmc440" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "PMC440" + +endif diff --git a/board/esd/pmc440/MAINTAINERS b/board/esd/pmc440/MAINTAINERS new file mode 100644 index 0000000..32fb9ba --- /dev/null +++ b/board/esd/pmc440/MAINTAINERS @@ -0,0 +1,6 @@ +PMC440 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/pmc440/ +F: include/configs/PMC440.h +F: configs/PMC440_defconfig diff --git a/board/esd/tasreg/Kconfig b/board/esd/tasreg/Kconfig new file mode 100644 index 0000000..8fb80dc --- /dev/null +++ b/board/esd/tasreg/Kconfig @@ -0,0 +1,19 @@ +if TARGET_TASREG + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "tasreg" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "TASREG" + +endif diff --git a/board/esd/tasreg/MAINTAINERS b/board/esd/tasreg/MAINTAINERS new file mode 100644 index 0000000..10bc7a4 --- /dev/null +++ b/board/esd/tasreg/MAINTAINERS @@ -0,0 +1,6 @@ +TASREG BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/tasreg/ +F: include/configs/TASREG.h +F: configs/TASREG_defconfig diff --git a/board/esd/vme8349/Kconfig b/board/esd/vme8349/Kconfig new file mode 100644 index 0000000..4fd507c --- /dev/null +++ b/board/esd/vme8349/Kconfig @@ -0,0 +1,15 @@ +if TARGET_VME8349 + +config SYS_BOARD + string + default "vme8349" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "vme8349" + +endif diff --git a/board/esd/vme8349/MAINTAINERS b/board/esd/vme8349/MAINTAINERS new file mode 100644 index 0000000..a88ba13 --- /dev/null +++ b/board/esd/vme8349/MAINTAINERS @@ -0,0 +1,7 @@ +VME8349 BOARD +M: Reinhard Arlt <reinhard.arlt@esd-electronics.com> +S: Maintained +F: board/esd/vme8349/ +F: include/configs/vme8349.h +F: configs/caddy2_defconfig +F: configs/vme8349_defconfig diff --git a/board/esd/voh405/Kconfig b/board/esd/voh405/Kconfig new file mode 100644 index 0000000..ef3d073 --- /dev/null +++ b/board/esd/voh405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_VOH405 + +config SYS_BOARD + string + default "voh405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "VOH405" + +endif diff --git a/board/esd/voh405/MAINTAINERS b/board/esd/voh405/MAINTAINERS new file mode 100644 index 0000000..0039f5d --- /dev/null +++ b/board/esd/voh405/MAINTAINERS @@ -0,0 +1,6 @@ +VOH405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/voh405/ +F: include/configs/VOH405.h +F: configs/VOH405_defconfig diff --git a/board/esd/vom405/Kconfig b/board/esd/vom405/Kconfig new file mode 100644 index 0000000..90ba34a --- /dev/null +++ b/board/esd/vom405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_VOM405 + +config SYS_BOARD + string + default "vom405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "VOM405" + +endif diff --git a/board/esd/vom405/MAINTAINERS b/board/esd/vom405/MAINTAINERS new file mode 100644 index 0000000..385f60a --- /dev/null +++ b/board/esd/vom405/MAINTAINERS @@ -0,0 +1,6 @@ +VOM405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/vom405/ +F: include/configs/VOM405.h +F: configs/VOM405_defconfig diff --git a/board/esd/wuh405/Kconfig b/board/esd/wuh405/Kconfig new file mode 100644 index 0000000..214af9f --- /dev/null +++ b/board/esd/wuh405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_WUH405 + +config SYS_BOARD + string + default "wuh405" + +config SYS_VENDOR + string + default "esd" + +config SYS_CONFIG_NAME + string + default "WUH405" + +endif diff --git a/board/esd/wuh405/MAINTAINERS b/board/esd/wuh405/MAINTAINERS new file mode 100644 index 0000000..782c72a --- /dev/null +++ b/board/esd/wuh405/MAINTAINERS @@ -0,0 +1,6 @@ +WUH405 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/esd/wuh405/ +F: include/configs/WUH405.h +F: configs/WUH405_defconfig diff --git a/board/esg/ima3-mx53/Kconfig b/board/esg/ima3-mx53/Kconfig new file mode 100644 index 0000000..fc27625 --- /dev/null +++ b/board/esg/ima3-mx53/Kconfig @@ -0,0 +1,23 @@ +if TARGET_IMA3_MX53 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "ima3-mx53" + +config SYS_VENDOR + string + default "esg" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "ima3-mx53" + +endif diff --git a/board/esg/ima3-mx53/MAINTAINERS b/board/esg/ima3-mx53/MAINTAINERS new file mode 100644 index 0000000..c434eb9 --- /dev/null +++ b/board/esg/ima3-mx53/MAINTAINERS @@ -0,0 +1,6 @@ +IMA3-MX53 BOARD +M: - +S: Maintained +F: board/esg/ima3-mx53/ +F: include/configs/ima3-mx53.h +F: configs/ima3-mx53_defconfig diff --git a/board/espt/Kconfig b/board/espt/Kconfig new file mode 100644 index 0000000..7527e34 --- /dev/null +++ b/board/espt/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ESPT + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "espt" + +config SYS_CONFIG_NAME + string + default "espt" + +endif diff --git a/board/espt/MAINTAINERS b/board/espt/MAINTAINERS new file mode 100644 index 0000000..ff6e20c --- /dev/null +++ b/board/espt/MAINTAINERS @@ -0,0 +1,6 @@ +ESPT BOARD +M: - +S: Maintained +F: board/espt/ +F: include/configs/espt.h +F: configs/espt_defconfig diff --git a/board/esteem192e/Kconfig b/board/esteem192e/Kconfig new file mode 100644 index 0000000..848fef8 --- /dev/null +++ b/board/esteem192e/Kconfig @@ -0,0 +1,11 @@ +if TARGET_ESTEEM192E + +config SYS_BOARD + string + default "esteem192e" + +config SYS_CONFIG_NAME + string + default "ESTEEM192E" + +endif diff --git a/board/esteem192e/MAINTAINERS b/board/esteem192e/MAINTAINERS new file mode 100644 index 0000000..8d6634c --- /dev/null +++ b/board/esteem192e/MAINTAINERS @@ -0,0 +1,6 @@ +ESTEEM192E BOARD +M: Conn Clark <clark@esteem.com> +S: Maintained +F: board/esteem192e/ +F: include/configs/ESTEEM192E.h +F: configs/ESTEEM192E_defconfig diff --git a/board/eukrea/cpu9260/Kconfig b/board/eukrea/cpu9260/Kconfig new file mode 100644 index 0000000..d86044e --- /dev/null +++ b/board/eukrea/cpu9260/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CPU9260 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "cpu9260" + +config SYS_VENDOR + string + default "eukrea" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "cpu9260" + +endif diff --git a/board/eukrea/cpu9260/MAINTAINERS b/board/eukrea/cpu9260/MAINTAINERS new file mode 100644 index 0000000..fb5aee8 --- /dev/null +++ b/board/eukrea/cpu9260/MAINTAINERS @@ -0,0 +1,13 @@ +CPU9260 BOARD +M: Eric Benard <eric@eukrea.com> +S: Maintained +F: board/eukrea/cpu9260/ +F: include/configs/cpu9260.h +F: configs/cpu9260_defconfig +F: configs/cpu9260_128M_defconfig +F: configs/cpu9260_nand_defconfig +F: configs/cpu9260_nand_128M_defconfig +F: configs/cpu9G20_defconfig +F: configs/cpu9G20_128M_defconfig +F: configs/cpu9G20_nand_defconfig +F: configs/cpu9G20_nand_128M_defconfig diff --git a/board/eukrea/cpuat91/Kconfig b/board/eukrea/cpuat91/Kconfig new file mode 100644 index 0000000..ced3748 --- /dev/null +++ b/board/eukrea/cpuat91/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CPUAT91 + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "cpuat91" + +config SYS_VENDOR + string + default "eukrea" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "cpuat91" + +endif diff --git a/board/eukrea/cpuat91/MAINTAINERS b/board/eukrea/cpuat91/MAINTAINERS new file mode 100644 index 0000000..1f6bc79 --- /dev/null +++ b/board/eukrea/cpuat91/MAINTAINERS @@ -0,0 +1,7 @@ +CPUAT91 BOARD +M: Eric Benard <eric@eukrea.com> +S: Maintained +F: board/eukrea/cpuat91/ +F: include/configs/cpuat91.h +F: configs/cpuat91_defconfig +F: configs/cpuat91_ram_defconfig diff --git a/board/evb64260/Kconfig b/board/evb64260/Kconfig new file mode 100644 index 0000000..f7f86c9 --- /dev/null +++ b/board/evb64260/Kconfig @@ -0,0 +1,23 @@ +if TARGET_P3G4 + +config SYS_BOARD + string + default "evb64260" + +config SYS_CONFIG_NAME + string + default "P3G4" + +endif + +if TARGET_ZUMA + +config SYS_BOARD + string + default "evb64260" + +config SYS_CONFIG_NAME + string + default "ZUMA" + +endif diff --git a/board/evb64260/MAINTAINERS b/board/evb64260/MAINTAINERS new file mode 100644 index 0000000..f8307cc --- /dev/null +++ b/board/evb64260/MAINTAINERS @@ -0,0 +1,12 @@ +EVB64260 BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/evb64260/ +F: include/configs/P3G4.h +F: configs/P3G4_defconfig + +ZUMA BOARD +M: Nye Liu <nyet@zumanetworks.com> +S: Orphan (since 2014-04) +F: include/configs/ZUMA.h +F: configs/ZUMA_defconfig diff --git a/board/exmeritus/hww1u1a/Kconfig b/board/exmeritus/hww1u1a/Kconfig new file mode 100644 index 0000000..126ce2f --- /dev/null +++ b/board/exmeritus/hww1u1a/Kconfig @@ -0,0 +1,15 @@ +if TARGET_HWW1U1A + +config SYS_BOARD + string + default "hww1u1a" + +config SYS_VENDOR + string + default "exmeritus" + +config SYS_CONFIG_NAME + string + default "HWW1U1A" + +endif diff --git a/board/exmeritus/hww1u1a/MAINTAINERS b/board/exmeritus/hww1u1a/MAINTAINERS new file mode 100644 index 0000000..e2fe2a6 --- /dev/null +++ b/board/exmeritus/hww1u1a/MAINTAINERS @@ -0,0 +1,6 @@ +HWW1U1A BOARD +M: Kyle Moffett <Kyle.D.Moffett@boeing.com> +S: Orphan (since 2014-06) +F: board/exmeritus/hww1u1a/ +F: include/configs/HWW1U1A.h +F: configs/HWW1U1A_defconfig diff --git a/board/exmeritus/hww1u1a/hww1u1a.c b/board/exmeritus/hww1u1a/hww1u1a.c index 97b84b3..643ece1 100644 --- a/board/exmeritus/hww1u1a/hww1u1a.c +++ b/board/exmeritus/hww1u1a/hww1u1a.c @@ -203,7 +203,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap bootflash region to caching-inhibited @@ -214,8 +214,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for FLASH */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for FLASH */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/faraday/a320evb/Kconfig b/board/faraday/a320evb/Kconfig new file mode 100644 index 0000000..353c873 --- /dev/null +++ b/board/faraday/a320evb/Kconfig @@ -0,0 +1,23 @@ +if TARGET_A320EVB + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "a320evb" + +config SYS_VENDOR + string + default "faraday" + +config SYS_SOC + string + default "a320" + +config SYS_CONFIG_NAME + string + default "a320evb" + +endif diff --git a/board/faraday/a320evb/MAINTAINERS b/board/faraday/a320evb/MAINTAINERS new file mode 100644 index 0000000..f13b015 --- /dev/null +++ b/board/faraday/a320evb/MAINTAINERS @@ -0,0 +1,6 @@ +A320EVB BOARD +M: Po-Yu Chuang <ratbert@faraday-tech.com> +S: Maintained +F: board/faraday/a320evb/ +F: include/configs/a320evb.h +F: configs/a320evb_defconfig diff --git a/board/flagadm/Kconfig b/board/flagadm/Kconfig new file mode 100644 index 0000000..bc0657e --- /dev/null +++ b/board/flagadm/Kconfig @@ -0,0 +1,11 @@ +if TARGET_FLAGADM + +config SYS_BOARD + string + default "flagadm" + +config SYS_CONFIG_NAME + string + default "FLAGADM" + +endif diff --git a/board/flagadm/MAINTAINERS b/board/flagadm/MAINTAINERS new file mode 100644 index 0000000..606989c --- /dev/null +++ b/board/flagadm/MAINTAINERS @@ -0,0 +1,6 @@ +FLAGADM BOARD +M: Kári DavÃðsson <kd@flaga.is> +S: Orphan (since 2014-06) +F: board/flagadm/ +F: include/configs/FLAGADM.h +F: configs/FLAGADM_defconfig diff --git a/board/freescale/b4860qds/Kconfig b/board/freescale/b4860qds/Kconfig new file mode 100644 index 0000000..c5321d6 --- /dev/null +++ b/board/freescale/b4860qds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_B4860QDS + +config SYS_BOARD + string + default "b4860qds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "B4860QDS" + +endif diff --git a/board/freescale/b4860qds/MAINTAINERS b/board/freescale/b4860qds/MAINTAINERS new file mode 100644 index 0000000..9f9a612 --- /dev/null +++ b/board/freescale/b4860qds/MAINTAINERS @@ -0,0 +1,17 @@ +B4860QDS BOARD +M: - +S: Maintained +F: board/freescale/b4860qds/ +F: include/configs/B4860QDS.h +F: configs/B4420QDS_defconfig +F: configs/B4420QDS_NAND_defconfig +F: configs/B4420QDS_SPIFLASH_defconfig +F: configs/B4860QDS_defconfig +F: configs/B4860QDS_NAND_defconfig +F: configs/B4860QDS_SPIFLASH_defconfig +F: configs/B4860QDS_SRIO_PCIE_BOOT_defconfig + +B4860QDS_SECURE_BOOT BOARD +M: Aneesh Bansal <aneesh.bansal@freescale.com> +S: Maintained +F: configs/B4860QDS_SECURE_BOOT_defconfig diff --git a/board/freescale/b4860qds/b4860qds.c b/board/freescale/b4860qds/b4860qds.c index 9d6b9a7..34d66d5 100644 --- a/board/freescale/b4860qds/b4860qds.c +++ b/board/freescale/b4860qds/b4860qds.c @@ -913,7 +913,7 @@ out: int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); int ret; /* @@ -925,8 +925,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/bsc9131rdb/Kconfig b/board/freescale/bsc9131rdb/Kconfig new file mode 100644 index 0000000..6099d4d --- /dev/null +++ b/board/freescale/bsc9131rdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_BSC9131RDB + +config SYS_BOARD + string + default "bsc9131rdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "BSC9131RDB" + +endif diff --git a/board/freescale/bsc9131rdb/MAINTAINERS b/board/freescale/bsc9131rdb/MAINTAINERS new file mode 100644 index 0000000..7cd8134 --- /dev/null +++ b/board/freescale/bsc9131rdb/MAINTAINERS @@ -0,0 +1,9 @@ +BSC9131RDB BOARD +M: Poonam Aggrwal <poonam.aggrwal@freescale.com> +S: Maintained +F: board/freescale/bsc9131rdb/ +F: include/configs/BSC9131RDB.h +F: configs/BSC9131RDB_NAND_defconfig +F: configs/BSC9131RDB_NAND_SYSCLK100_defconfig +F: configs/BSC9131RDB_SPIFLASH_defconfig +F: configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig diff --git a/board/freescale/bsc9132qds/Kconfig b/board/freescale/bsc9132qds/Kconfig new file mode 100644 index 0000000..955069b --- /dev/null +++ b/board/freescale/bsc9132qds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_BSC9132QDS + +config SYS_BOARD + string + default "bsc9132qds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "BSC9132QDS" + +endif diff --git a/board/freescale/bsc9132qds/MAINTAINERS b/board/freescale/bsc9132qds/MAINTAINERS new file mode 100644 index 0000000..3de62d3 --- /dev/null +++ b/board/freescale/bsc9132qds/MAINTAINERS @@ -0,0 +1,25 @@ +BSC9132QDS BOARD +M: Naveen Burmi <NaveenBurmi@freescale.com> +S: Maintained +F: board/freescale/bsc9132qds/ +F: include/configs/BSC9132QDS.h +F: configs/BSC9132QDS_NAND_DDRCLK100_defconfig +F: configs/BSC9132QDS_NAND_DDRCLK133_defconfig +F: configs/BSC9132QDS_NOR_DDRCLK100_defconfig +F: configs/BSC9132QDS_NOR_DDRCLK133_defconfig +F: configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig +F: configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig +F: configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig +F: configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig + +BSC9132QDS_NAND_DDRCLK100_SECURE BOARD +M: Aneesh Bansal <aneesh.bansal@freescale.com> +S: Maintained +F: configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig +F: configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig +F: configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig +F: configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig +F: configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig +F: configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig +F: configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig +F: configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig diff --git a/board/freescale/bsc9132qds/bsc9132qds.c b/board/freescale/bsc9132qds/bsc9132qds.c index 9377280..10580bc 100644 --- a/board/freescale/bsc9132qds/bsc9132qds.c +++ b/board/freescale/bsc9132qds/bsc9132qds.c @@ -150,7 +150,7 @@ int board_early_init_r(void) { #ifndef CONFIG_SYS_NO_FLASH const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash region to caching-inhibited @@ -161,8 +161,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/c29xpcie/Kconfig b/board/freescale/c29xpcie/Kconfig new file mode 100644 index 0000000..be9c237 --- /dev/null +++ b/board/freescale/c29xpcie/Kconfig @@ -0,0 +1,15 @@ +if TARGET_C29XPCIE + +config SYS_BOARD + string + default "c29xpcie" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "C29XPCIE" + +endif diff --git a/board/freescale/c29xpcie/MAINTAINERS b/board/freescale/c29xpcie/MAINTAINERS new file mode 100644 index 0000000..db2e5e3 --- /dev/null +++ b/board/freescale/c29xpcie/MAINTAINERS @@ -0,0 +1,8 @@ +C29XPCIE BOARD +M: Po Liu <po.liu@freescale.com> +S: Maintained +F: board/freescale/c29xpcie/ +F: include/configs/C29XPCIE.h +F: configs/C29XPCIE_defconfig +F: configs/C29XPCIE_NAND_defconfig +F: configs/C29XPCIE_SPIFLASH_defconfig diff --git a/board/freescale/c29xpcie/c29xpcie.c b/board/freescale/c29xpcie/c29xpcie.c index f964d61..534c6d1 100644 --- a/board/freescale/c29xpcie/c29xpcie.c +++ b/board/freescale/c29xpcie/c29xpcie.c @@ -49,7 +49,7 @@ int board_early_init_f(void) int board_early_init_r(void) { const unsigned long flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash region to caching-inhibited @@ -60,8 +60,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 1; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/corenet_ds/Kconfig b/board/freescale/corenet_ds/Kconfig new file mode 100644 index 0000000..8c3bd9c --- /dev/null +++ b/board/freescale/corenet_ds/Kconfig @@ -0,0 +1,63 @@ +if TARGET_P3041DS + +config SYS_BOARD + string + default "corenet_ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P3041DS" + +endif + +if TARGET_P4080DS + +config SYS_BOARD + string + default "corenet_ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P4080DS" + +endif + +if TARGET_P5020DS + +config SYS_BOARD + string + default "corenet_ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P5020DS" + +endif + +if TARGET_P5040DS + +config SYS_BOARD + string + default "corenet_ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P5040DS" + +endif diff --git a/board/freescale/corenet_ds/MAINTAINERS b/board/freescale/corenet_ds/MAINTAINERS new file mode 100644 index 0000000..841d82f --- /dev/null +++ b/board/freescale/corenet_ds/MAINTAINERS @@ -0,0 +1,29 @@ +CORENET_DS BOARD +M: - +S: Maintained +F: board/freescale/corenet_ds/ +F: include/configs/P3041DS.h +F: configs/P3041DS_defconfig +F: configs/P3041DS_NAND_defconfig +F: configs/P3041DS_SDCARD_defconfig +F: configs/P3041DS_SECURE_BOOT_defconfig +F: configs/P3041DS_SPIFLASH_defconfig +F: configs/P3041DS_SRIO_PCIE_BOOT_defconfig +F: include/configs/P4080DS.h +F: configs/P4080DS_defconfig +F: configs/P4080DS_SDCARD_defconfig +F: configs/P4080DS_SECURE_BOOT_defconfig +F: configs/P4080DS_SPIFLASH_defconfig +F: configs/P4080DS_SRIO_PCIE_BOOT_defconfig +F: include/configs/P5020DS.h +F: configs/P5020DS_defconfig +F: configs/P5020DS_NAND_defconfig +F: configs/P5020DS_SDCARD_defconfig +F: configs/P5020DS_SECURE_BOOT_defconfig +F: configs/P5020DS_SPIFLASH_defconfig +F: configs/P5020DS_SRIO_PCIE_BOOT_defconfig +F: include/configs/P5040DS.h +F: configs/P5040DS_defconfig +F: configs/P5040DS_NAND_defconfig +F: configs/P5040DS_SDCARD_defconfig +F: configs/P5040DS_SPIFLASH_defconfig diff --git a/board/freescale/corenet_ds/corenet_ds.c b/board/freescale/corenet_ds/corenet_ds.c index 9212372..65b3867 100644 --- a/board/freescale/corenet_ds/corenet_ds.c +++ b/board/freescale/corenet_ds/corenet_ds.c @@ -101,7 +101,7 @@ int board_early_init_f(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -112,8 +112,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, /* tlb, epn, rpn */ MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, /* perms, wimge */ diff --git a/board/freescale/ls2085a/Kconfig b/board/freescale/ls2085a/Kconfig new file mode 100644 index 0000000..5655e18 --- /dev/null +++ b/board/freescale/ls2085a/Kconfig @@ -0,0 +1,47 @@ +if TARGET_LS2085A_EMU + +config SYS_CPU + string + default "armv8" + +config SYS_BOARD + string + default "ls2085a" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "fsl-lsch3" + +config SYS_CONFIG_NAME + string + default "ls2085a_emu" + +endif + +if TARGET_LS2085A_SIMU + +config SYS_CPU + string + default "armv8" + +config SYS_BOARD + string + default "ls2085a" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "fsl-lsch3" + +config SYS_CONFIG_NAME + string + default "ls2085a_simu" + +endif diff --git a/board/freescale/ls2085a/MAINTAINERS b/board/freescale/ls2085a/MAINTAINERS new file mode 100644 index 0000000..572c4b8 --- /dev/null +++ b/board/freescale/ls2085a/MAINTAINERS @@ -0,0 +1,9 @@ +LS2085A BOARD +M: York Sun <yorksun@freescale.com> +S: Maintained +F: board/freescale/ls2085a/ +F: include/configs/ls2085a_emu.h +F: configs/ls2085a_emu_defconfig +F: configs/ls2085a_emu_D4_defconfig +F: include/configs/ls2085a_simu.h +F: configs/ls2085a_simu_defconfig diff --git a/board/freescale/m5208evbe/Kconfig b/board/freescale/m5208evbe/Kconfig new file mode 100644 index 0000000..9b1fa42 --- /dev/null +++ b/board/freescale/m5208evbe/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5208EVBE + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "m5208evbe" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5208EVBE" + +endif diff --git a/board/freescale/m5208evbe/MAINTAINERS b/board/freescale/m5208evbe/MAINTAINERS new file mode 100644 index 0000000..65d04df --- /dev/null +++ b/board/freescale/m5208evbe/MAINTAINERS @@ -0,0 +1,6 @@ +M5208EVBE BOARD +M: - +S: Maintained +F: board/freescale/m5208evbe/ +F: include/configs/M5208EVBE.h +F: configs/M5208EVBE_defconfig diff --git a/board/freescale/m52277evb/Kconfig b/board/freescale/m52277evb/Kconfig new file mode 100644 index 0000000..54a86e4 --- /dev/null +++ b/board/freescale/m52277evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M52277EVB + +config SYS_CPU + string + default "mcf5227x" + +config SYS_BOARD + string + default "m52277evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M52277EVB" + +endif diff --git a/board/freescale/m52277evb/MAINTAINERS b/board/freescale/m52277evb/MAINTAINERS new file mode 100644 index 0000000..390f041 --- /dev/null +++ b/board/freescale/m52277evb/MAINTAINERS @@ -0,0 +1,7 @@ +M52277EVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m52277evb/ +F: include/configs/M52277EVB.h +F: configs/M52277EVB_defconfig +F: configs/M52277EVB_stmicro_defconfig diff --git a/board/freescale/m5235evb/Kconfig b/board/freescale/m5235evb/Kconfig new file mode 100644 index 0000000..f996ca2 --- /dev/null +++ b/board/freescale/m5235evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5235EVB + +config SYS_CPU + string + default "mcf523x" + +config SYS_BOARD + string + default "m5235evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5235EVB" + +endif diff --git a/board/freescale/m5235evb/MAINTAINERS b/board/freescale/m5235evb/MAINTAINERS new file mode 100644 index 0000000..f44422e --- /dev/null +++ b/board/freescale/m5235evb/MAINTAINERS @@ -0,0 +1,7 @@ +M5235EVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m5235evb/ +F: include/configs/M5235EVB.h +F: configs/M5235EVB_defconfig +F: configs/M5235EVB_Flash32_defconfig diff --git a/board/freescale/m5249evb/Kconfig b/board/freescale/m5249evb/Kconfig new file mode 100644 index 0000000..87643e4 --- /dev/null +++ b/board/freescale/m5249evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5249EVB + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "m5249evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5249EVB" + +endif diff --git a/board/freescale/m5249evb/MAINTAINERS b/board/freescale/m5249evb/MAINTAINERS new file mode 100644 index 0000000..22301b7 --- /dev/null +++ b/board/freescale/m5249evb/MAINTAINERS @@ -0,0 +1,6 @@ +M5249EVB BOARD +M: - +S: Maintained +F: board/freescale/m5249evb/ +F: include/configs/M5249EVB.h +F: configs/M5249EVB_defconfig diff --git a/board/freescale/m5253demo/Kconfig b/board/freescale/m5253demo/Kconfig new file mode 100644 index 0000000..76197a7 --- /dev/null +++ b/board/freescale/m5253demo/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5253DEMO + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "m5253demo" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5253DEMO" + +endif diff --git a/board/freescale/m5253demo/MAINTAINERS b/board/freescale/m5253demo/MAINTAINERS new file mode 100644 index 0000000..abe065e --- /dev/null +++ b/board/freescale/m5253demo/MAINTAINERS @@ -0,0 +1,6 @@ +M5253DEMO BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m5253demo/ +F: include/configs/M5253DEMO.h +F: configs/M5253DEMO_defconfig diff --git a/board/freescale/m5253evbe/Kconfig b/board/freescale/m5253evbe/Kconfig new file mode 100644 index 0000000..bdc6c27 --- /dev/null +++ b/board/freescale/m5253evbe/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5253EVBE + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "m5253evbe" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5253EVBE" + +endif diff --git a/board/freescale/m5253evbe/MAINTAINERS b/board/freescale/m5253evbe/MAINTAINERS new file mode 100644 index 0000000..1c21b03 --- /dev/null +++ b/board/freescale/m5253evbe/MAINTAINERS @@ -0,0 +1,6 @@ +M5253EVBE BOARD +M: Hayden Fraser <Hayden.Fraser@freescale.com> +S: Orphan (since 2014-06) +F: board/freescale/m5253evbe/ +F: include/configs/M5253EVBE.h +F: configs/M5253EVBE_defconfig diff --git a/board/freescale/m5272c3/Kconfig b/board/freescale/m5272c3/Kconfig new file mode 100644 index 0000000..b69c37a --- /dev/null +++ b/board/freescale/m5272c3/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5272C3 + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "m5272c3" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5272C3" + +endif diff --git a/board/freescale/m5272c3/MAINTAINERS b/board/freescale/m5272c3/MAINTAINERS new file mode 100644 index 0000000..aa4739f --- /dev/null +++ b/board/freescale/m5272c3/MAINTAINERS @@ -0,0 +1,6 @@ +M5272C3 BOARD +M: - +S: Maintained +F: board/freescale/m5272c3/ +F: include/configs/M5272C3.h +F: configs/M5272C3_defconfig diff --git a/board/freescale/m5275evb/Kconfig b/board/freescale/m5275evb/Kconfig new file mode 100644 index 0000000..85514b7 --- /dev/null +++ b/board/freescale/m5275evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5275EVB + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "m5275evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5275EVB" + +endif diff --git a/board/freescale/m5275evb/MAINTAINERS b/board/freescale/m5275evb/MAINTAINERS new file mode 100644 index 0000000..b87d52c --- /dev/null +++ b/board/freescale/m5275evb/MAINTAINERS @@ -0,0 +1,6 @@ +M5275EVB BOARD +M: - +S: Maintained +F: board/freescale/m5275evb/ +F: include/configs/M5275EVB.h +F: configs/M5275EVB_defconfig diff --git a/board/freescale/m5282evb/Kconfig b/board/freescale/m5282evb/Kconfig new file mode 100644 index 0000000..33e98a7 --- /dev/null +++ b/board/freescale/m5282evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5282EVB + +config SYS_CPU + string + default "mcf52x2" + +config SYS_BOARD + string + default "m5282evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5282EVB" + +endif diff --git a/board/freescale/m5282evb/MAINTAINERS b/board/freescale/m5282evb/MAINTAINERS new file mode 100644 index 0000000..f945ab4 --- /dev/null +++ b/board/freescale/m5282evb/MAINTAINERS @@ -0,0 +1,6 @@ +M5282EVB BOARD +M: - +S: Maintained +F: board/freescale/m5282evb/ +F: include/configs/M5282EVB.h +F: configs/M5282EVB_defconfig diff --git a/board/freescale/m53017evb/Kconfig b/board/freescale/m53017evb/Kconfig new file mode 100644 index 0000000..99ffd7d --- /dev/null +++ b/board/freescale/m53017evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M53017EVB + +config SYS_CPU + string + default "mcf532x" + +config SYS_BOARD + string + default "m53017evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M53017EVB" + +endif diff --git a/board/freescale/m53017evb/MAINTAINERS b/board/freescale/m53017evb/MAINTAINERS new file mode 100644 index 0000000..700b6f7 --- /dev/null +++ b/board/freescale/m53017evb/MAINTAINERS @@ -0,0 +1,6 @@ +M53017EVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m53017evb/ +F: include/configs/M53017EVB.h +F: configs/M53017EVB_defconfig diff --git a/board/freescale/m5329evb/Kconfig b/board/freescale/m5329evb/Kconfig new file mode 100644 index 0000000..c9a621a --- /dev/null +++ b/board/freescale/m5329evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5329EVB + +config SYS_CPU + string + default "mcf532x" + +config SYS_BOARD + string + default "m5329evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5329EVB" + +endif diff --git a/board/freescale/m5329evb/MAINTAINERS b/board/freescale/m5329evb/MAINTAINERS new file mode 100644 index 0000000..f4f103a --- /dev/null +++ b/board/freescale/m5329evb/MAINTAINERS @@ -0,0 +1,7 @@ +M5329EVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m5329evb/ +F: include/configs/M5329EVB.h +F: configs/M5329AFEE_defconfig +F: configs/M5329BFEE_defconfig diff --git a/board/freescale/m5373evb/Kconfig b/board/freescale/m5373evb/Kconfig new file mode 100644 index 0000000..583a4b5 --- /dev/null +++ b/board/freescale/m5373evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5373EVB + +config SYS_CPU + string + default "mcf532x" + +config SYS_BOARD + string + default "m5373evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5373EVB" + +endif diff --git a/board/freescale/m5373evb/MAINTAINERS b/board/freescale/m5373evb/MAINTAINERS new file mode 100644 index 0000000..5db0b34 --- /dev/null +++ b/board/freescale/m5373evb/MAINTAINERS @@ -0,0 +1,6 @@ +M5373EVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m5373evb/ +F: include/configs/M5373EVB.h +F: configs/M5373EVB_defconfig diff --git a/board/freescale/m54418twr/Kconfig b/board/freescale/m54418twr/Kconfig new file mode 100644 index 0000000..7d73b94 --- /dev/null +++ b/board/freescale/m54418twr/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M54418TWR + +config SYS_CPU + string + default "mcf5445x" + +config SYS_BOARD + string + default "m54418twr" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M54418TWR" + +endif diff --git a/board/freescale/m54418twr/MAINTAINERS b/board/freescale/m54418twr/MAINTAINERS new file mode 100644 index 0000000..37b24c7 --- /dev/null +++ b/board/freescale/m54418twr/MAINTAINERS @@ -0,0 +1,11 @@ +M54418TWR BOARD +M: - +S: Maintained +F: board/freescale/m54418twr/ +F: include/configs/M54418TWR.h +F: configs/M54418TWR_defconfig +F: configs/M54418TWR_nand_mii_defconfig +F: configs/M54418TWR_nand_rmii_defconfig +F: configs/M54418TWR_nand_rmii_lowfreq_defconfig +F: configs/M54418TWR_serial_mii_defconfig +F: configs/M54418TWR_serial_rmii_defconfig diff --git a/board/freescale/m54451evb/Kconfig b/board/freescale/m54451evb/Kconfig new file mode 100644 index 0000000..814db72 --- /dev/null +++ b/board/freescale/m54451evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M54451EVB + +config SYS_CPU + string + default "mcf5445x" + +config SYS_BOARD + string + default "m54451evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M54451EVB" + +endif diff --git a/board/freescale/m54451evb/MAINTAINERS b/board/freescale/m54451evb/MAINTAINERS new file mode 100644 index 0000000..be14549 --- /dev/null +++ b/board/freescale/m54451evb/MAINTAINERS @@ -0,0 +1,7 @@ +M54451EVB BOARD +M: - +S: Maintained +F: board/freescale/m54451evb/ +F: include/configs/M54451EVB.h +F: configs/M54451EVB_defconfig +F: configs/M54451EVB_stmicro_defconfig diff --git a/board/freescale/m54455evb/Kconfig b/board/freescale/m54455evb/Kconfig new file mode 100644 index 0000000..acdd13f --- /dev/null +++ b/board/freescale/m54455evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M54455EVB + +config SYS_CPU + string + default "mcf5445x" + +config SYS_BOARD + string + default "m54455evb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M54455EVB" + +endif diff --git a/board/freescale/m54455evb/MAINTAINERS b/board/freescale/m54455evb/MAINTAINERS new file mode 100644 index 0000000..3788f5f --- /dev/null +++ b/board/freescale/m54455evb/MAINTAINERS @@ -0,0 +1,10 @@ +M54455EVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m54455evb/ +F: include/configs/M54455EVB.h +F: configs/M54455EVB_defconfig +F: configs/M54455EVB_a66_defconfig +F: configs/M54455EVB_i66_defconfig +F: configs/M54455EVB_intel_defconfig +F: configs/M54455EVB_stm33_defconfig diff --git a/board/freescale/m547xevb/Kconfig b/board/freescale/m547xevb/Kconfig new file mode 100644 index 0000000..d21072e --- /dev/null +++ b/board/freescale/m547xevb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5475EVB + +config SYS_CPU + string + default "mcf547x_8x" + +config SYS_BOARD + string + default "m547xevb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5475EVB" + +endif diff --git a/board/freescale/m547xevb/MAINTAINERS b/board/freescale/m547xevb/MAINTAINERS new file mode 100644 index 0000000..9a8408d --- /dev/null +++ b/board/freescale/m547xevb/MAINTAINERS @@ -0,0 +1,12 @@ +M547XEVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m547xevb/ +F: include/configs/M5475EVB.h +F: configs/M5475AFE_defconfig +F: configs/M5475BFE_defconfig +F: configs/M5475CFE_defconfig +F: configs/M5475DFE_defconfig +F: configs/M5475EFE_defconfig +F: configs/M5475FFE_defconfig +F: configs/M5475GFE_defconfig diff --git a/board/freescale/m548xevb/Kconfig b/board/freescale/m548xevb/Kconfig new file mode 100644 index 0000000..2afe11c --- /dev/null +++ b/board/freescale/m548xevb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_M5485EVB + +config SYS_CPU + string + default "mcf547x_8x" + +config SYS_BOARD + string + default "m548xevb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "M5485EVB" + +endif diff --git a/board/freescale/m548xevb/MAINTAINERS b/board/freescale/m548xevb/MAINTAINERS new file mode 100644 index 0000000..82ad9fd --- /dev/null +++ b/board/freescale/m548xevb/MAINTAINERS @@ -0,0 +1,13 @@ +M548XEVB BOARD +M: TsiChung Liew <Tsi-Chung.Liew@freescale.com> +S: Maintained +F: board/freescale/m548xevb/ +F: include/configs/M5485EVB.h +F: configs/M5485AFE_defconfig +F: configs/M5485BFE_defconfig +F: configs/M5485CFE_defconfig +F: configs/M5485DFE_defconfig +F: configs/M5485EFE_defconfig +F: configs/M5485FFE_defconfig +F: configs/M5485GFE_defconfig +F: configs/M5485HFE_defconfig diff --git a/board/freescale/mpc5121ads/Kconfig b/board/freescale/mpc5121ads/Kconfig new file mode 100644 index 0000000..9989ccb --- /dev/null +++ b/board/freescale/mpc5121ads/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC5121ADS + +config SYS_BOARD + string + default "mpc5121ads" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "mpc5121ads" + +endif diff --git a/board/freescale/mpc5121ads/MAINTAINERS b/board/freescale/mpc5121ads/MAINTAINERS new file mode 100644 index 0000000..0c7f682 --- /dev/null +++ b/board/freescale/mpc5121ads/MAINTAINERS @@ -0,0 +1,7 @@ +MPC5121ADS BOARD +M: - +S: Maintained +F: board/freescale/mpc5121ads/ +F: include/configs/mpc5121ads.h +F: configs/mpc5121ads_defconfig +F: configs/mpc5121ads_rev2_defconfig diff --git a/board/freescale/mpc7448hpc2/Kconfig b/board/freescale/mpc7448hpc2/Kconfig new file mode 100644 index 0000000..0ea712c --- /dev/null +++ b/board/freescale/mpc7448hpc2/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC7448HPC2 + +config SYS_BOARD + string + default "mpc7448hpc2" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "mpc7448hpc2" + +endif diff --git a/board/freescale/mpc7448hpc2/MAINTAINERS b/board/freescale/mpc7448hpc2/MAINTAINERS new file mode 100644 index 0000000..9966b55 --- /dev/null +++ b/board/freescale/mpc7448hpc2/MAINTAINERS @@ -0,0 +1,6 @@ +MPC7448HPC2 BOARD +M: Roy Zang <tie-fei.zang@freescale.com> +S: Maintained +F: board/freescale/mpc7448hpc2/ +F: include/configs/mpc7448hpc2.h +F: configs/mpc7448hpc2_defconfig diff --git a/board/freescale/mpc8266ads/Kconfig b/board/freescale/mpc8266ads/Kconfig new file mode 100644 index 0000000..7c5a646 --- /dev/null +++ b/board/freescale/mpc8266ads/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8266ADS + +config SYS_BOARD + string + default "mpc8266ads" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8266ADS" + +endif diff --git a/board/freescale/mpc8266ads/MAINTAINERS b/board/freescale/mpc8266ads/MAINTAINERS new file mode 100644 index 0000000..bdea02d --- /dev/null +++ b/board/freescale/mpc8266ads/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8266ADS BOARD +M: Rune Torgersen <runet@innovsys.com> +S: Maintained +F: board/freescale/mpc8266ads/ +F: include/configs/MPC8266ADS.h +F: configs/MPC8266ADS_defconfig diff --git a/board/freescale/mpc8308rdb/Kconfig b/board/freescale/mpc8308rdb/Kconfig new file mode 100644 index 0000000..b47765a --- /dev/null +++ b/board/freescale/mpc8308rdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8308RDB + +config SYS_BOARD + string + default "mpc8308rdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8308RDB" + +endif diff --git a/board/freescale/mpc8308rdb/MAINTAINERS b/board/freescale/mpc8308rdb/MAINTAINERS new file mode 100644 index 0000000..07ff2abd --- /dev/null +++ b/board/freescale/mpc8308rdb/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8308RDB BOARD +M: Ilya Yanok <yanok@emcraft.com> +S: Maintained +F: board/freescale/mpc8308rdb/ +F: include/configs/MPC8308RDB.h +F: configs/MPC8308RDB_defconfig diff --git a/board/freescale/mpc8313erdb/Kconfig b/board/freescale/mpc8313erdb/Kconfig new file mode 100644 index 0000000..078f437 --- /dev/null +++ b/board/freescale/mpc8313erdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8313ERDB + +config SYS_BOARD + string + default "mpc8313erdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8313ERDB" + +endif diff --git a/board/freescale/mpc8313erdb/MAINTAINERS b/board/freescale/mpc8313erdb/MAINTAINERS new file mode 100644 index 0000000..923ba95 --- /dev/null +++ b/board/freescale/mpc8313erdb/MAINTAINERS @@ -0,0 +1,9 @@ +MPC8313ERDB BOARD +M: - +S: Maintained +F: board/freescale/mpc8313erdb/ +F: include/configs/MPC8313ERDB.h +F: configs/MPC8313ERDB_33_defconfig +F: configs/MPC8313ERDB_66_defconfig +F: configs/MPC8313ERDB_NAND_33_defconfig +F: configs/MPC8313ERDB_NAND_66_defconfig diff --git a/board/freescale/mpc8315erdb/Kconfig b/board/freescale/mpc8315erdb/Kconfig new file mode 100644 index 0000000..46833ca --- /dev/null +++ b/board/freescale/mpc8315erdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8315ERDB + +config SYS_BOARD + string + default "mpc8315erdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8315ERDB" + +endif diff --git a/board/freescale/mpc8315erdb/MAINTAINERS b/board/freescale/mpc8315erdb/MAINTAINERS new file mode 100644 index 0000000..938c152 --- /dev/null +++ b/board/freescale/mpc8315erdb/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8315ERDB BOARD +M: Dave Liu <daveliu@freescale.com> +S: Maintained +F: board/freescale/mpc8315erdb/ +F: include/configs/MPC8315ERDB.h +F: configs/MPC8315ERDB_defconfig diff --git a/board/freescale/mpc8323erdb/Kconfig b/board/freescale/mpc8323erdb/Kconfig new file mode 100644 index 0000000..a1c0a61 --- /dev/null +++ b/board/freescale/mpc8323erdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8323ERDB + +config SYS_BOARD + string + default "mpc8323erdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8323ERDB" + +endif diff --git a/board/freescale/mpc8323erdb/MAINTAINERS b/board/freescale/mpc8323erdb/MAINTAINERS new file mode 100644 index 0000000..05057c0 --- /dev/null +++ b/board/freescale/mpc8323erdb/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8323ERDB BOARD +M: Michael Barkowski <michael.barkowski@freescale.com> +S: Maintained +F: board/freescale/mpc8323erdb/ +F: include/configs/MPC8323ERDB.h +F: configs/MPC8323ERDB_defconfig diff --git a/board/freescale/mpc832xemds/Kconfig b/board/freescale/mpc832xemds/Kconfig new file mode 100644 index 0000000..83af2c2 --- /dev/null +++ b/board/freescale/mpc832xemds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC832XEMDS + +config SYS_BOARD + string + default "mpc832xemds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC832XEMDS" + +endif diff --git a/board/freescale/mpc832xemds/MAINTAINERS b/board/freescale/mpc832xemds/MAINTAINERS new file mode 100644 index 0000000..56d7073 --- /dev/null +++ b/board/freescale/mpc832xemds/MAINTAINERS @@ -0,0 +1,10 @@ +MPC832XEMDS BOARD +M: Dave Liu <daveliu@freescale.com> +S: Maintained +F: board/freescale/mpc832xemds/ +F: include/configs/MPC832XEMDS.h +F: configs/MPC832XEMDS_defconfig +F: configs/MPC832XEMDS_ATM_defconfig +F: configs/MPC832XEMDS_HOST_33_defconfig +F: configs/MPC832XEMDS_HOST_66_defconfig +F: configs/MPC832XEMDS_SLAVE_defconfig diff --git a/board/freescale/mpc8349emds/Kconfig b/board/freescale/mpc8349emds/Kconfig new file mode 100644 index 0000000..8f549dc --- /dev/null +++ b/board/freescale/mpc8349emds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8349EMDS + +config SYS_BOARD + string + default "mpc8349emds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8349EMDS" + +endif diff --git a/board/freescale/mpc8349emds/MAINTAINERS b/board/freescale/mpc8349emds/MAINTAINERS new file mode 100644 index 0000000..141e77a --- /dev/null +++ b/board/freescale/mpc8349emds/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8349EMDS BOARD +M: Kim Phillips <kim.phillips@freescale.com> +S: Maintained +F: board/freescale/mpc8349emds/ +F: include/configs/MPC8349EMDS.h +F: configs/MPC8349EMDS_defconfig diff --git a/board/freescale/mpc8349itx/Kconfig b/board/freescale/mpc8349itx/Kconfig new file mode 100644 index 0000000..af3fedd --- /dev/null +++ b/board/freescale/mpc8349itx/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8349ITX + +config SYS_BOARD + string + default "mpc8349itx" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8349ITX" + +endif diff --git a/board/freescale/mpc8349itx/MAINTAINERS b/board/freescale/mpc8349itx/MAINTAINERS new file mode 100644 index 0000000..ed6e4e5 --- /dev/null +++ b/board/freescale/mpc8349itx/MAINTAINERS @@ -0,0 +1,8 @@ +MPC8349ITX BOARD +M: - +S: Maintained +F: board/freescale/mpc8349itx/ +F: include/configs/MPC8349ITX.h +F: configs/MPC8349ITX_defconfig +F: configs/MPC8349ITX_LOWBOOT_defconfig +F: configs/MPC8349ITXGP_defconfig diff --git a/board/freescale/mpc8360emds/Kconfig b/board/freescale/mpc8360emds/Kconfig new file mode 100644 index 0000000..d6e7766 --- /dev/null +++ b/board/freescale/mpc8360emds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8360EMDS + +config SYS_BOARD + string + default "mpc8360emds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8360EMDS" + +endif diff --git a/board/freescale/mpc8360emds/MAINTAINERS b/board/freescale/mpc8360emds/MAINTAINERS new file mode 100644 index 0000000..91ff2ef --- /dev/null +++ b/board/freescale/mpc8360emds/MAINTAINERS @@ -0,0 +1,15 @@ +MPC8360EMDS BOARD +M: Dave Liu <daveliu@freescale.com> +S: Maintained +F: board/freescale/mpc8360emds/ +F: include/configs/MPC8360EMDS.h +F: configs/MPC8360EMDS_33_defconfig +F: configs/MPC8360EMDS_33_ATM_defconfig +F: configs/MPC8360EMDS_33_HOST_33_defconfig +F: configs/MPC8360EMDS_33_HOST_66_defconfig +F: configs/MPC8360EMDS_33_SLAVE_defconfig +F: configs/MPC8360EMDS_66_defconfig +F: configs/MPC8360EMDS_66_ATM_defconfig +F: configs/MPC8360EMDS_66_HOST_33_defconfig +F: configs/MPC8360EMDS_66_HOST_66_defconfig +F: configs/MPC8360EMDS_66_SLAVE_defconfig diff --git a/board/freescale/mpc8360erdk/Kconfig b/board/freescale/mpc8360erdk/Kconfig new file mode 100644 index 0000000..bfb3b1f --- /dev/null +++ b/board/freescale/mpc8360erdk/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8360ERDK + +config SYS_BOARD + string + default "mpc8360erdk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8360ERDK" + +endif diff --git a/board/freescale/mpc8360erdk/MAINTAINERS b/board/freescale/mpc8360erdk/MAINTAINERS new file mode 100644 index 0000000..cb075d6 --- /dev/null +++ b/board/freescale/mpc8360erdk/MAINTAINERS @@ -0,0 +1,7 @@ +MPC8360ERDK BOARD +M: Anton Vorontsov <avorontsov@ru.mvista.com> +S: Orphan (since 2014-03) +F: board/freescale/mpc8360erdk/ +F: include/configs/MPC8360ERDK.h +F: configs/MPC8360ERDK_defconfig +F: configs/MPC8360ERDK_33_defconfig diff --git a/board/freescale/mpc837xemds/Kconfig b/board/freescale/mpc837xemds/Kconfig new file mode 100644 index 0000000..b0357cb --- /dev/null +++ b/board/freescale/mpc837xemds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC837XEMDS + +config SYS_BOARD + string + default "mpc837xemds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC837XEMDS" + +endif diff --git a/board/freescale/mpc837xemds/MAINTAINERS b/board/freescale/mpc837xemds/MAINTAINERS new file mode 100644 index 0000000..6ff1346 --- /dev/null +++ b/board/freescale/mpc837xemds/MAINTAINERS @@ -0,0 +1,7 @@ +MPC837XEMDS BOARD +M: Dave Liu <daveliu@freescale.com> +S: Maintained +F: board/freescale/mpc837xemds/ +F: include/configs/MPC837XEMDS.h +F: configs/MPC837XEMDS_defconfig +F: configs/MPC837XEMDS_HOST_defconfig diff --git a/board/freescale/mpc837xerdb/Kconfig b/board/freescale/mpc837xerdb/Kconfig new file mode 100644 index 0000000..f8e33e6 --- /dev/null +++ b/board/freescale/mpc837xerdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC837XERDB + +config SYS_BOARD + string + default "mpc837xerdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC837XERDB" + +endif diff --git a/board/freescale/mpc837xerdb/MAINTAINERS b/board/freescale/mpc837xerdb/MAINTAINERS new file mode 100644 index 0000000..c216d8d --- /dev/null +++ b/board/freescale/mpc837xerdb/MAINTAINERS @@ -0,0 +1,6 @@ +MPC837XERDB BOARD +M: Joe D'Abbraccio <ljd015@freescale.com> +S: Orphan (since 2014-06) +F: board/freescale/mpc837xerdb/ +F: include/configs/MPC837XERDB.h +F: configs/MPC837XERDB_defconfig diff --git a/board/freescale/mpc8536ds/Kconfig b/board/freescale/mpc8536ds/Kconfig new file mode 100644 index 0000000..c7c818c --- /dev/null +++ b/board/freescale/mpc8536ds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8536DS + +config SYS_BOARD + string + default "mpc8536ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8536DS" + +endif diff --git a/board/freescale/mpc8536ds/MAINTAINERS b/board/freescale/mpc8536ds/MAINTAINERS new file mode 100644 index 0000000..51d7cd7 --- /dev/null +++ b/board/freescale/mpc8536ds/MAINTAINERS @@ -0,0 +1,9 @@ +MPC8536DS BOARD +M: - +S: Maintained +F: board/freescale/mpc8536ds/ +F: include/configs/MPC8536DS.h +F: configs/MPC8536DS_defconfig +F: configs/MPC8536DS_36BIT_defconfig +F: configs/MPC8536DS_SDCARD_defconfig +F: configs/MPC8536DS_SPIFLASH_defconfig diff --git a/board/freescale/mpc8536ds/mpc8536ds.c b/board/freescale/mpc8536ds/mpc8536ds.c index 467f4f2..93eed59 100644 --- a/board/freescale/mpc8536ds/mpc8536ds.c +++ b/board/freescale/mpc8536ds/mpc8536ds.c @@ -196,7 +196,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -207,8 +207,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 1; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, /* tlb, epn, rpn */ MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, /* perms, wimge */ diff --git a/board/freescale/mpc8540ads/Kconfig b/board/freescale/mpc8540ads/Kconfig new file mode 100644 index 0000000..2cf252c --- /dev/null +++ b/board/freescale/mpc8540ads/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8540ADS + +config SYS_BOARD + string + default "mpc8540ads" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8540ADS" + +endif diff --git a/board/freescale/mpc8540ads/MAINTAINERS b/board/freescale/mpc8540ads/MAINTAINERS new file mode 100644 index 0000000..41a2191 --- /dev/null +++ b/board/freescale/mpc8540ads/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8540ADS BOARD +M: Kumar Gala <kumar.gala@freescale.com> +S: Orphan (since 2014-06) +F: board/freescale/mpc8540ads/ +F: include/configs/MPC8540ADS.h +F: configs/MPC8540ADS_defconfig diff --git a/board/freescale/mpc8541cds/Kconfig b/board/freescale/mpc8541cds/Kconfig new file mode 100644 index 0000000..2beefc2 --- /dev/null +++ b/board/freescale/mpc8541cds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8541CDS + +config SYS_BOARD + string + default "mpc8541cds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8541CDS" + +endif diff --git a/board/freescale/mpc8541cds/MAINTAINERS b/board/freescale/mpc8541cds/MAINTAINERS new file mode 100644 index 0000000..073210d --- /dev/null +++ b/board/freescale/mpc8541cds/MAINTAINERS @@ -0,0 +1,7 @@ +MPC8541CDS BOARD +M: Kumar Gala <kumar.gala@freescale.com> +S: Orphan (since 2014-06) +F: board/freescale/mpc8541cds/ +F: include/configs/MPC8541CDS.h +F: configs/MPC8541CDS_defconfig +F: configs/MPC8541CDS_legacy_defconfig diff --git a/board/freescale/mpc8544ds/Kconfig b/board/freescale/mpc8544ds/Kconfig new file mode 100644 index 0000000..d55b680 --- /dev/null +++ b/board/freescale/mpc8544ds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8544DS + +config SYS_BOARD + string + default "mpc8544ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8544DS" + +endif diff --git a/board/freescale/mpc8544ds/MAINTAINERS b/board/freescale/mpc8544ds/MAINTAINERS new file mode 100644 index 0000000..81b664c --- /dev/null +++ b/board/freescale/mpc8544ds/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8544DS BOARD +M: - +S: Maintained +F: board/freescale/mpc8544ds/ +F: include/configs/MPC8544DS.h +F: configs/MPC8544DS_defconfig diff --git a/board/freescale/mpc8548cds/Kconfig b/board/freescale/mpc8548cds/Kconfig new file mode 100644 index 0000000..69d717e --- /dev/null +++ b/board/freescale/mpc8548cds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8548CDS + +config SYS_BOARD + string + default "mpc8548cds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8548CDS" + +endif diff --git a/board/freescale/mpc8548cds/MAINTAINERS b/board/freescale/mpc8548cds/MAINTAINERS new file mode 100644 index 0000000..89b2425 --- /dev/null +++ b/board/freescale/mpc8548cds/MAINTAINERS @@ -0,0 +1,8 @@ +MPC8548CDS BOARD +M: - +S: Maintained +F: board/freescale/mpc8548cds/ +F: include/configs/MPC8548CDS.h +F: configs/MPC8548CDS_defconfig +F: configs/MPC8548CDS_36BIT_defconfig +F: configs/MPC8548CDS_legacy_defconfig diff --git a/board/freescale/mpc8555cds/Kconfig b/board/freescale/mpc8555cds/Kconfig new file mode 100644 index 0000000..5858308 --- /dev/null +++ b/board/freescale/mpc8555cds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8555CDS + +config SYS_BOARD + string + default "mpc8555cds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8555CDS" + +endif diff --git a/board/freescale/mpc8555cds/MAINTAINERS b/board/freescale/mpc8555cds/MAINTAINERS new file mode 100644 index 0000000..14470d7 --- /dev/null +++ b/board/freescale/mpc8555cds/MAINTAINERS @@ -0,0 +1,7 @@ +MPC8555CDS BOARD +M: Kumar Gala <kumar.gala@freescale.com> +S: Orphan (since 2014-06) +F: board/freescale/mpc8555cds/ +F: include/configs/MPC8555CDS.h +F: configs/MPC8555CDS_defconfig +F: configs/MPC8555CDS_legacy_defconfig diff --git a/board/freescale/mpc8560ads/Kconfig b/board/freescale/mpc8560ads/Kconfig new file mode 100644 index 0000000..55cdb62 --- /dev/null +++ b/board/freescale/mpc8560ads/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8560ADS + +config SYS_BOARD + string + default "mpc8560ads" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8560ADS" + +endif diff --git a/board/freescale/mpc8560ads/MAINTAINERS b/board/freescale/mpc8560ads/MAINTAINERS new file mode 100644 index 0000000..836def2 --- /dev/null +++ b/board/freescale/mpc8560ads/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8560ADS BOARD +M: Kumar Gala <kumar.gala@freescale.com> +S: Orphan (since 2014-06) +F: board/freescale/mpc8560ads/ +F: include/configs/MPC8560ADS.h +F: configs/MPC8560ADS_defconfig diff --git a/board/freescale/mpc8568mds/Kconfig b/board/freescale/mpc8568mds/Kconfig new file mode 100644 index 0000000..b02946b --- /dev/null +++ b/board/freescale/mpc8568mds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8568MDS + +config SYS_BOARD + string + default "mpc8568mds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8568MDS" + +endif diff --git a/board/freescale/mpc8568mds/MAINTAINERS b/board/freescale/mpc8568mds/MAINTAINERS new file mode 100644 index 0000000..72c25f5 --- /dev/null +++ b/board/freescale/mpc8568mds/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8568MDS BOARD +M: - +S: Maintained +F: board/freescale/mpc8568mds/ +F: include/configs/MPC8568MDS.h +F: configs/MPC8568MDS_defconfig diff --git a/board/freescale/mpc8569mds/Kconfig b/board/freescale/mpc8569mds/Kconfig new file mode 100644 index 0000000..f13a07e --- /dev/null +++ b/board/freescale/mpc8569mds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8569MDS + +config SYS_BOARD + string + default "mpc8569mds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8569MDS" + +endif diff --git a/board/freescale/mpc8569mds/MAINTAINERS b/board/freescale/mpc8569mds/MAINTAINERS new file mode 100644 index 0000000..b5478db --- /dev/null +++ b/board/freescale/mpc8569mds/MAINTAINERS @@ -0,0 +1,7 @@ +MPC8569MDS BOARD +M: - +S: Maintained +F: board/freescale/mpc8569mds/ +F: include/configs/MPC8569MDS.h +F: configs/MPC8569MDS_defconfig +F: configs/MPC8569MDS_ATM_defconfig diff --git a/board/freescale/mpc8572ds/Kconfig b/board/freescale/mpc8572ds/Kconfig new file mode 100644 index 0000000..3794f03 --- /dev/null +++ b/board/freescale/mpc8572ds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8572DS + +config SYS_BOARD + string + default "mpc8572ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8572DS" + +endif diff --git a/board/freescale/mpc8572ds/MAINTAINERS b/board/freescale/mpc8572ds/MAINTAINERS new file mode 100644 index 0000000..4c9b968 --- /dev/null +++ b/board/freescale/mpc8572ds/MAINTAINERS @@ -0,0 +1,7 @@ +MPC8572DS BOARD +M: York Sun <yorksun@freescale.com> +S: Maintained +F: board/freescale/mpc8572ds/ +F: include/configs/MPC8572DS.h +F: configs/MPC8572DS_defconfig +F: configs/MPC8572DS_36BIT_defconfig diff --git a/board/freescale/mpc8572ds/mpc8572ds.c b/board/freescale/mpc8572ds/mpc8572ds.c index 5686322..1bbf832 100644 --- a/board/freescale/mpc8572ds/mpc8572ds.c +++ b/board/freescale/mpc8572ds/mpc8572ds.c @@ -144,7 +144,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -155,8 +155,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, /* tlb, epn, rpn */ MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, /* perms, wimge */ diff --git a/board/freescale/mpc8610hpcd/Kconfig b/board/freescale/mpc8610hpcd/Kconfig new file mode 100644 index 0000000..463a433 --- /dev/null +++ b/board/freescale/mpc8610hpcd/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8610HPCD + +config SYS_BOARD + string + default "mpc8610hpcd" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8610HPCD" + +endif diff --git a/board/freescale/mpc8610hpcd/MAINTAINERS b/board/freescale/mpc8610hpcd/MAINTAINERS new file mode 100644 index 0000000..993c02a --- /dev/null +++ b/board/freescale/mpc8610hpcd/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8610HPCD BOARD +M: - +S: Maintained +F: board/freescale/mpc8610hpcd/ +F: include/configs/MPC8610HPCD.h +F: configs/MPC8610HPCD_defconfig diff --git a/board/freescale/mpc8641hpcn/Kconfig b/board/freescale/mpc8641hpcn/Kconfig new file mode 100644 index 0000000..9fc4241 --- /dev/null +++ b/board/freescale/mpc8641hpcn/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPC8641HPCN + +config SYS_BOARD + string + default "mpc8641hpcn" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "MPC8641HPCN" + +endif diff --git a/board/freescale/mpc8641hpcn/MAINTAINERS b/board/freescale/mpc8641hpcn/MAINTAINERS new file mode 100644 index 0000000..34bcc6c --- /dev/null +++ b/board/freescale/mpc8641hpcn/MAINTAINERS @@ -0,0 +1,7 @@ +MPC8641HPCN BOARD +M: Kumar Gala <kumar.gala@freescale.com> +S: Orphan (since 2014-06) +F: board/freescale/mpc8641hpcn/ +F: include/configs/MPC8641HPCN.h +F: configs/MPC8641HPCN_defconfig +F: configs/MPC8641HPCN_36BIT_defconfig diff --git a/board/freescale/mx23evk/Kconfig b/board/freescale/mx23evk/Kconfig new file mode 100644 index 0000000..ee7911c --- /dev/null +++ b/board/freescale/mx23evk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX23EVK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "mx23evk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "mx23evk" + +endif diff --git a/board/freescale/mx23evk/MAINTAINERS b/board/freescale/mx23evk/MAINTAINERS new file mode 100644 index 0000000..b03ad6a --- /dev/null +++ b/board/freescale/mx23evk/MAINTAINERS @@ -0,0 +1,6 @@ +MX23EVK BOARD +M: Otavio Salvador <otavio@ossystems.com.br> +S: Maintained +F: board/freescale/mx23evk/ +F: include/configs/mx23evk.h +F: configs/mx23evk_defconfig diff --git a/board/freescale/mx25pdk/Kconfig b/board/freescale/mx25pdk/Kconfig new file mode 100644 index 0000000..67cb5ec --- /dev/null +++ b/board/freescale/mx25pdk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX25PDK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "mx25pdk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx25" + +config SYS_CONFIG_NAME + string + default "mx25pdk" + +endif diff --git a/board/freescale/mx25pdk/MAINTAINERS b/board/freescale/mx25pdk/MAINTAINERS new file mode 100644 index 0000000..6322176 --- /dev/null +++ b/board/freescale/mx25pdk/MAINTAINERS @@ -0,0 +1,6 @@ +MX25PDK BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx25pdk/ +F: include/configs/mx25pdk.h +F: configs/mx25pdk_defconfig diff --git a/board/freescale/mx28evk/Kconfig b/board/freescale/mx28evk/Kconfig new file mode 100644 index 0000000..2fe6f32 --- /dev/null +++ b/board/freescale/mx28evk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX28EVK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "mx28evk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "mx28evk" + +endif diff --git a/board/freescale/mx28evk/MAINTAINERS b/board/freescale/mx28evk/MAINTAINERS new file mode 100644 index 0000000..1caf5fb --- /dev/null +++ b/board/freescale/mx28evk/MAINTAINERS @@ -0,0 +1,9 @@ +MX28EVK BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx28evk/ +F: include/configs/mx28evk.h +F: configs/mx28evk_defconfig +F: configs/mx28evk_auart_console_defconfig +F: configs/mx28evk_nand_defconfig +F: configs/mx28evk_spi_defconfig diff --git a/board/freescale/mx31ads/Kconfig b/board/freescale/mx31ads/Kconfig new file mode 100644 index 0000000..96116dd --- /dev/null +++ b/board/freescale/mx31ads/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX31ADS + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "mx31ads" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx31" + +config SYS_CONFIG_NAME + string + default "mx31ads" + +endif diff --git a/board/freescale/mx31ads/MAINTAINERS b/board/freescale/mx31ads/MAINTAINERS new file mode 100644 index 0000000..e9c8fe7 --- /dev/null +++ b/board/freescale/mx31ads/MAINTAINERS @@ -0,0 +1,6 @@ +MX31ADS BOARD +M: (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> +S: Orphan (since 2013-09) +F: board/freescale/mx31ads/ +F: include/configs/mx31ads.h +F: configs/mx31ads_defconfig diff --git a/board/freescale/mx31pdk/Kconfig b/board/freescale/mx31pdk/Kconfig new file mode 100644 index 0000000..6ac6a59 --- /dev/null +++ b/board/freescale/mx31pdk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX31PDK + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "mx31pdk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx31" + +config SYS_CONFIG_NAME + string + default "mx31pdk" + +endif diff --git a/board/freescale/mx31pdk/MAINTAINERS b/board/freescale/mx31pdk/MAINTAINERS new file mode 100644 index 0000000..2e057db --- /dev/null +++ b/board/freescale/mx31pdk/MAINTAINERS @@ -0,0 +1,6 @@ +MX31PDK BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx31pdk/ +F: include/configs/mx31pdk.h +F: configs/mx31pdk_defconfig diff --git a/board/freescale/mx35pdk/Kconfig b/board/freescale/mx35pdk/Kconfig new file mode 100644 index 0000000..5555b0b --- /dev/null +++ b/board/freescale/mx35pdk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX35PDK + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "mx35pdk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx35" + +config SYS_CONFIG_NAME + string + default "mx35pdk" + +endif diff --git a/board/freescale/mx35pdk/MAINTAINERS b/board/freescale/mx35pdk/MAINTAINERS new file mode 100644 index 0000000..540e943 --- /dev/null +++ b/board/freescale/mx35pdk/MAINTAINERS @@ -0,0 +1,6 @@ +MX35PDK BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/freescale/mx35pdk/ +F: include/configs/mx35pdk.h +F: configs/mx35pdk_defconfig diff --git a/board/freescale/mx51evk/Kconfig b/board/freescale/mx51evk/Kconfig new file mode 100644 index 0000000..a6dbbdd --- /dev/null +++ b/board/freescale/mx51evk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX51EVK + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx51evk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "mx51evk" + +endif diff --git a/board/freescale/mx51evk/MAINTAINERS b/board/freescale/mx51evk/MAINTAINERS new file mode 100644 index 0000000..0e5f22c --- /dev/null +++ b/board/freescale/mx51evk/MAINTAINERS @@ -0,0 +1,6 @@ +MX51EVK BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/freescale/mx51evk/ +F: include/configs/mx51evk.h +F: configs/mx51evk_defconfig diff --git a/board/freescale/mx53ard/Kconfig b/board/freescale/mx53ard/Kconfig new file mode 100644 index 0000000..eaaa1b2 --- /dev/null +++ b/board/freescale/mx53ard/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX53ARD + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx53ard" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "mx53ard" + +endif diff --git a/board/freescale/mx53ard/MAINTAINERS b/board/freescale/mx53ard/MAINTAINERS new file mode 100644 index 0000000..7cc0e5e --- /dev/null +++ b/board/freescale/mx53ard/MAINTAINERS @@ -0,0 +1,6 @@ +MX53ARD BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx53ard/ +F: include/configs/mx53ard.h +F: configs/mx53ard_defconfig diff --git a/board/freescale/mx53evk/Kconfig b/board/freescale/mx53evk/Kconfig new file mode 100644 index 0000000..dda1ada --- /dev/null +++ b/board/freescale/mx53evk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX53EVK + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx53evk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "mx53evk" + +endif diff --git a/board/freescale/mx53evk/MAINTAINERS b/board/freescale/mx53evk/MAINTAINERS new file mode 100644 index 0000000..5c5f747 --- /dev/null +++ b/board/freescale/mx53evk/MAINTAINERS @@ -0,0 +1,6 @@ +MX53EVK BOARD +M: Jason Liu <r64343@freescale.com> +S: Maintained +F: board/freescale/mx53evk/ +F: include/configs/mx53evk.h +F: configs/mx53evk_defconfig diff --git a/board/freescale/mx53loco/Kconfig b/board/freescale/mx53loco/Kconfig new file mode 100644 index 0000000..8b285d2 --- /dev/null +++ b/board/freescale/mx53loco/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX53LOCO + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx53loco" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "mx53loco" + +endif diff --git a/board/freescale/mx53loco/MAINTAINERS b/board/freescale/mx53loco/MAINTAINERS new file mode 100644 index 0000000..73b113e --- /dev/null +++ b/board/freescale/mx53loco/MAINTAINERS @@ -0,0 +1,6 @@ +MX53LOCO BOARD +M: Jason Liu <r64343@freescale.com> +S: Maintained +F: board/freescale/mx53loco/ +F: include/configs/mx53loco.h +F: configs/mx53loco_defconfig diff --git a/board/freescale/mx53smd/Kconfig b/board/freescale/mx53smd/Kconfig new file mode 100644 index 0000000..1f7e42f --- /dev/null +++ b/board/freescale/mx53smd/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX53SMD + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx53smd" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "mx53smd" + +endif diff --git a/board/freescale/mx53smd/MAINTAINERS b/board/freescale/mx53smd/MAINTAINERS new file mode 100644 index 0000000..8830321 --- /dev/null +++ b/board/freescale/mx53smd/MAINTAINERS @@ -0,0 +1,6 @@ +MX53SMD BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx53smd/ +F: include/configs/mx53smd.h +F: configs/mx53smd_defconfig diff --git a/board/freescale/mx6qarm2/Kconfig b/board/freescale/mx6qarm2/Kconfig new file mode 100644 index 0000000..2c42e9a --- /dev/null +++ b/board/freescale/mx6qarm2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX6QARM2 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx6qarm2" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "mx6qarm2" + +endif diff --git a/board/freescale/mx6qarm2/MAINTAINERS b/board/freescale/mx6qarm2/MAINTAINERS new file mode 100644 index 0000000..42c19d1 --- /dev/null +++ b/board/freescale/mx6qarm2/MAINTAINERS @@ -0,0 +1,6 @@ +MX6QARM2 BOARD +M: Jason Liu <r64343@freescale.com> +S: Maintained +F: board/freescale/mx6qarm2/ +F: include/configs/mx6qarm2.h +F: configs/mx6qarm2_defconfig diff --git a/board/freescale/mx6qsabreauto/Kconfig b/board/freescale/mx6qsabreauto/Kconfig new file mode 100644 index 0000000..21fb4fc --- /dev/null +++ b/board/freescale/mx6qsabreauto/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX6QSABREAUTO + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx6qsabreauto" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "mx6qsabreauto" + +endif diff --git a/board/freescale/mx6qsabreauto/MAINTAINERS b/board/freescale/mx6qsabreauto/MAINTAINERS new file mode 100644 index 0000000..fb65ce4 --- /dev/null +++ b/board/freescale/mx6qsabreauto/MAINTAINERS @@ -0,0 +1,7 @@ +MX6QSABREAUTO BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx6qsabreauto/ +F: include/configs/mx6qsabreauto.h +F: configs/mx6dlsabreauto_defconfig +F: configs/mx6qsabreauto_defconfig diff --git a/board/freescale/mx6sabresd/Kconfig b/board/freescale/mx6sabresd/Kconfig new file mode 100644 index 0000000..65d6736 --- /dev/null +++ b/board/freescale/mx6sabresd/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX6SABRESD + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx6sabresd" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "mx6sabresd" + +endif diff --git a/board/freescale/mx6sabresd/MAINTAINERS b/board/freescale/mx6sabresd/MAINTAINERS new file mode 100644 index 0000000..69c0a30 --- /dev/null +++ b/board/freescale/mx6sabresd/MAINTAINERS @@ -0,0 +1,7 @@ +MX6SABRESD BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx6sabresd/ +F: include/configs/mx6sabresd.h +F: configs/mx6dlsabresd_defconfig +F: configs/mx6qsabresd_defconfig diff --git a/board/freescale/mx6slevk/Kconfig b/board/freescale/mx6slevk/Kconfig new file mode 100644 index 0000000..23c3154 --- /dev/null +++ b/board/freescale/mx6slevk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX6SLEVK + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx6slevk" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "mx6slevk" + +endif diff --git a/board/freescale/mx6slevk/MAINTAINERS b/board/freescale/mx6slevk/MAINTAINERS new file mode 100644 index 0000000..660af91 --- /dev/null +++ b/board/freescale/mx6slevk/MAINTAINERS @@ -0,0 +1,6 @@ +MX6SLEVK BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/freescale/mx6slevk/ +F: include/configs/mx6slevk.h +F: configs/mx6slevk_defconfig diff --git a/board/freescale/p1010rdb/Kconfig b/board/freescale/p1010rdb/Kconfig new file mode 100644 index 0000000..2abe1c0 --- /dev/null +++ b/board/freescale/p1010rdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P1010RDB + +config SYS_BOARD + string + default "p1010rdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P1010RDB" + +endif diff --git a/board/freescale/p1010rdb/MAINTAINERS b/board/freescale/p1010rdb/MAINTAINERS new file mode 100644 index 0000000..579e775 --- /dev/null +++ b/board/freescale/p1010rdb/MAINTAINERS @@ -0,0 +1,33 @@ +P1010RDB BOARD +M: - +S: Maintained +F: board/freescale/p1010rdb/ +F: include/configs/P1010RDB.h +F: configs/P1010RDB-PA_36BIT_NAND_defconfig +F: configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig +F: configs/P1010RDB-PA_36BIT_NOR_defconfig +F: configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig +F: configs/P1010RDB-PA_36BIT_SDCARD_defconfig +F: configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig +F: configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig +F: configs/P1010RDB-PA_NAND_defconfig +F: configs/P1010RDB-PA_NAND_SECBOOT_defconfig +F: configs/P1010RDB-PA_NOR_defconfig +F: configs/P1010RDB-PA_NOR_SECBOOT_defconfig +F: configs/P1010RDB-PA_SDCARD_defconfig +F: configs/P1010RDB-PA_SPIFLASH_defconfig +F: configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig +F: configs/P1010RDB-PB_36BIT_NAND_defconfig +F: configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig +F: configs/P1010RDB-PB_36BIT_NOR_defconfig +F: configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig +F: configs/P1010RDB-PB_36BIT_SDCARD_defconfig +F: configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig +F: configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig +F: configs/P1010RDB-PB_NAND_defconfig +F: configs/P1010RDB-PB_NAND_SECBOOT_defconfig +F: configs/P1010RDB-PB_NOR_defconfig +F: configs/P1010RDB-PB_NOR_SECBOOT_defconfig +F: configs/P1010RDB-PB_SDCARD_defconfig +F: configs/P1010RDB-PB_SPIFLASH_defconfig +F: configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig diff --git a/board/freescale/p1010rdb/p1010rdb.c b/board/freescale/p1010rdb/p1010rdb.c index 62caf67..491b576 100644 --- a/board/freescale/p1010rdb/p1010rdb.c +++ b/board/freescale/p1010rdb/p1010rdb.c @@ -93,7 +93,7 @@ int board_early_init_f(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash region to caching-inhibited @@ -104,8 +104,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/p1022ds/Kconfig b/board/freescale/p1022ds/Kconfig new file mode 100644 index 0000000..39e37bd --- /dev/null +++ b/board/freescale/p1022ds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P1022DS + +config SYS_BOARD + string + default "p1022ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P1022DS" + +endif diff --git a/board/freescale/p1022ds/MAINTAINERS b/board/freescale/p1022ds/MAINTAINERS new file mode 100644 index 0000000..86aac36 --- /dev/null +++ b/board/freescale/p1022ds/MAINTAINERS @@ -0,0 +1,13 @@ +P1022DS BOARD +M: Timur Tabi <timur@freescale.com> +S: Maintained +F: board/freescale/p1022ds/ +F: include/configs/P1022DS.h +F: configs/P1022DS_defconfig +F: configs/P1022DS_36BIT_defconfig +F: configs/P1022DS_36BIT_NAND_defconfig +F: configs/P1022DS_36BIT_SDCARD_defconfig +F: configs/P1022DS_36BIT_SPIFLASH_defconfig +F: configs/P1022DS_NAND_defconfig +F: configs/P1022DS_SDCARD_defconfig +F: configs/P1022DS_SPIFLASH_defconfig diff --git a/board/freescale/p1022ds/p1022ds.c b/board/freescale/p1022ds/p1022ds.c index ba789a4..f5e1851 100644 --- a/board/freescale/p1022ds/p1022ds.c +++ b/board/freescale/p1022ds/p1022ds.c @@ -249,7 +249,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -260,8 +260,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/p1023rdb/Kconfig b/board/freescale/p1023rdb/Kconfig new file mode 100644 index 0000000..95d3295 --- /dev/null +++ b/board/freescale/p1023rdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P1023RDB + +config SYS_BOARD + string + default "p1023rdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P1023RDB" + +endif diff --git a/board/freescale/p1023rdb/MAINTAINERS b/board/freescale/p1023rdb/MAINTAINERS new file mode 100644 index 0000000..81501aa --- /dev/null +++ b/board/freescale/p1023rdb/MAINTAINERS @@ -0,0 +1,6 @@ +P1023RDB BOARD +M: - +S: Maintained +F: board/freescale/p1023rdb/ +F: include/configs/P1023RDB.h +F: configs/P1023RDB_defconfig diff --git a/board/freescale/p1023rdb/p1023rdb.c b/board/freescale/p1023rdb/p1023rdb.c index d2d4f83..d4d277b 100644 --- a/board/freescale/p1023rdb/p1023rdb.c +++ b/board/freescale/p1023rdb/p1023rdb.c @@ -57,7 +57,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -68,8 +68,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/p1023rds/Makefile b/board/freescale/p1023rds/Makefile deleted file mode 100644 index fdbf365..0000000 --- a/board/freescale/p1023rds/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# -# Copyright 2010-2011 Freescale Semiconductor, Inc. -# -# SPDX-License-Identifier: GPL-2.0+ -# - -obj-y += p1023rds.o -obj-y += law.o -obj-y += tlb.o diff --git a/board/freescale/p1023rds/README b/board/freescale/p1023rds/README deleted file mode 100644 index d382551..0000000 --- a/board/freescale/p1023rds/README +++ /dev/null @@ -1,101 +0,0 @@ -Overview --------- -The P1023 process includes a performance optimized implementation of the -QorIQ data Path Acceleration Architecture (DPAA). This architecture -provides the infrastructure to support simplified sharing of networking -interfaces and accelerators by multiple CPU cores. P1023 is an e500 based -dual core SOC. - -P1023RDS board is a Low End Dual core platform supporting the P1023 -processor of QorIQ series. - -Building U-boot ---------------- -To build the u-boot for P1023RDS: -Configure to NOR boot: - make P1023RDS_config -Configure to NAND boot: - make P1023RDS_NAND_config -Build: - make - -Board Switches --------------- -Most switches on the board should not be changed. The most frequent -user-settable switches on the board are used to configure -the flash banks. - -J4: all open - -Default NOR flash boot switch setting: - Sw3[1:8]: off on on off on on off off - Sw4[1:8]: off off off on off off off off - Sw6[1:8]: off on off on off on on off - Sw7[1:8]: off on off off on off off off - Sw8[1:8]: on off off off off off off off - -For NAND flash boot,set -Sw4[1:4]: off on on on - -The default native ethernet setting is for RGMII mode. -To use SGMII mode, set -SW8[1:2]: OFF OFF -SW7[6:7]: ON ON - -Memory Map ----------- -0x0000_0000 0x7fff_ffff DDR 2G Cacheable -0x8000_0000 0xbfff_ffff PCI Express Mem 1G non-cacheable -0xc000_0000 0xdfff_ffff PCI 512M non-cacheable -0xe100_0000 0xe3ff_ffff PCI IO range 4M non-cacheable - -0xe000_0000 0xe003_ffff BCSR 256K BCSR -0xee00_0000 0xefff_ffff NOR flash 32M NOR flash -0xff00_0000 0xff3f_ffff DPAA_QBMAN 4M -0xff60_0000 0xff7f_ffff CCSR 2M non-cacheable -0xffa0_0000 0xffaf_ffff NAND FLASH 1M non-cacheable -0xffd0_0000 0xffd0_3fff L1 for stack 16K Cacheable TLB0 - -Flashing u-boot Images ---------------- -To program the image in the boot flash bank: -NOR flash boot: - => tftp 1000000 u-boot.bin - => protect off all - => erase eff40000 efffffff - => cp.b 1000000 eff40000 c0000 - -NAND flash boot: - => tftp 1000000 u-boot-nand.bin - => nand erase 0 80000 - => nand write 1000000 0 80000 - -Firmware ucode location ---------------------------------- -Microcode(ucode) to FMAN's IRAM is needed to make FMAN Ethernet work. -u-boot loads ucode FLASH. The location for ucode: -NOR Flash: 0xfe000000 -NAND Flash: 0x1f00000 - -Using the Device Tree Source File ---------------------------------- -To create the DTB (Device Tree Binary) image file, -use a command similar to this: - - dtc -b 0 -f -I dts -O dtb p1023rds.dts > p1023rds.dtb - -Likely, that .dts file will come from here; - - linux-2.6/arch/powerpc/boot/dts/p1023rds.dts -or - make p1023rds.dtb ARCH=powerpc -in linux-2.6 directory. - -Booting Linux -------------- -Place a linux uImage in the TFTP disk area. - - tftp 1000000 uImage - tftp 2000000 rootfs.ext2.gz.uboot - tftp c00000 p1023rds.dtb - bootm 1000000 2000000 c00000 diff --git a/board/freescale/p1023rds/bcsr.h b/board/freescale/p1023rds/bcsr.h deleted file mode 100644 index a9deb72..0000000 --- a/board/freescale/p1023rds/bcsr.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (C) 2011 Freescale Semiconductor, Inc. - * - * Authors: Chunhe Lan <b25806@freescale.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#ifndef __BCSR_H_ -#define __BCSR_H_ - -#include <common.h> - -/* - * BCSR Bit definitions - * BCSR 15 * - 0 device insertion oriention - 1 stack processor present - 2 power supply shut down/normal operation - 3 I2C bus0 drive enable - 4 reserved - 5:7 I2C bus0 select - 5 - I2C_BUS_0_SS0 - 6 - I2C_BUS_0_SS1 - 7 - I2C_BUS_0_SS2 -*/ - -/* BCSR register base address is 0xFX000020 */ -#define BCSR_BASE_REG_OFFSET 0x20 -#define BCSR_ACCESS_REG_ADDR (CONFIG_SYS_BCSR_BASE + BCSR_BASE_REG_OFFSET) - -#define BCSR15_DEV_INS_ORI 0x80 -#define BCSR15_STACK_PRO_PRE 0x40 -#define BCSR15_POWER_SUPPLY 0x20 -#define BCSR15_I2C_BUS0_EN 0x10 -#define BCSR15_I2C_BUS0_SEG0 0x00 -#define BCSR15_I2C_BUS0_SEG1 0x04 -#define BCSR15_I2C_BUS0_SEG2 0x02 -#define BCSR15_I2C_BUS0_SEG3 0x06 -#define BCSR15_I2C_BUS0_SEG4 0x01 -#define BCSR15_I2C_BUS0_SEG5 0x05 -#define BCSR15_I2C_BUS0_SEG6 0x03 -#define BCSR15_I2C_BUS0_SEG7 0x07 -#define BCSR15_I2C_BUS0_SEG_CLR 0x07 -#define BCSR19_SGMII_SEL_L 0x01 - -/*BCSR Utils functions*/ -void fixup_i2c_bus0_sel_seg0(void); -#endif /* __BCSR_H_ */ diff --git a/board/freescale/p1023rds/law.c b/board/freescale/p1023rds/law.c deleted file mode 100644 index 92f5a3f..0000000 --- a/board/freescale/p1023rds/law.c +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright 2010-2011 Freescale Semiconductor, Inc. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <asm/fsl_law.h> -#include <asm/mmu.h> - -struct law_entry law_table[] = { - SET_LAW(CONFIG_SYS_NAND_BASE_PHYS, LAW_SIZE_1M, LAW_TRGT_IF_LBC), - SET_LAW(CONFIG_SYS_QMAN_MEM_PHYS, LAW_SIZE_4M, - LAW_TRGT_IF_DPAA_SWP_SRAM), - /* The LAW 0xe0000000 ~ 0xefffffff for BCSR and NOR flash */ - SET_LAW(CONFIG_SYS_BCSR_BASE_PHYS, LAW_SIZE_256M, LAW_TRGT_IF_LBC), -}; - -int num_law_entries = ARRAY_SIZE(law_table); diff --git a/board/freescale/p1023rds/p1023rds.c b/board/freescale/p1023rds/p1023rds.c deleted file mode 100644 index 2b883c7..0000000 --- a/board/freescale/p1023rds/p1023rds.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Copyright 2010-2012 Freescale Semiconductor, Inc. - * - * Authors: Roy Zang <tie-fei.zang@freescale.com> - * Chunhe Lan <b25806@freescale.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <command.h> -#include <pci.h> -#include <asm/io.h> -#include <asm/cache.h> -#include <asm/processor.h> -#include <asm/mmu.h> -#include <asm/immap_85xx.h> -#include <asm/fsl_pci.h> -#include <fsl_ddr_sdram.h> -#include <asm/fsl_portals.h> -#include <libfdt.h> -#include <fdt_support.h> -#include <netdev.h> -#include <malloc.h> -#include <fm_eth.h> -#include <fsl_mdio.h> -#include <miiphy.h> -#include <phy.h> -#include <asm/fsl_dtsec.h> - -#include "bcsr.h" - -DECLARE_GLOBAL_DATA_PTR; - -int board_early_init_f(void) -{ - fsl_lbc_t *lbc = LBC_BASE_ADDR; - - /* Set ABSWP to implement conversion of addresses in the LBC */ - setbits_be32(&lbc->lbcr, CONFIG_SYS_LBC_LBCR); - - return 0; -} - -int checkboard(void) -{ - u8 *bcsr = (u8 *)BCSR_ACCESS_REG_ADDR; - - printf("Board: P1023 RDS\n"); - - clrbits_8(&bcsr[15], BCSR15_I2C_BUS0_SEG_CLR); - setbits_8(&bcsr[15], BCSR15_I2C_BUS0_SEG0); - - return 0; -} - -/* Fixed sdram init -- doesn't use serial presence detect. */ -phys_size_t fixed_sdram(void) -{ -#ifndef CONFIG_SYS_RAMBOOT - struct ccsr_ddr __iomem *ddr = - (struct ccsr_ddr __iomem *)CONFIG_SYS_FSL_DDR_ADDR; - - set_next_law(0, LAW_SIZE_2G, LAW_TRGT_IF_DDR_1); - - out_be32(&ddr->cs0_bnds, CONFIG_SYS_DDR_CS0_BNDS); - out_be32(&ddr->cs0_config, CONFIG_SYS_DDR_CS0_CONFIG); - out_be32(&ddr->cs1_bnds, CONFIG_SYS_DDR_CS1_BNDS); - out_be32(&ddr->cs1_config, CONFIG_SYS_DDR_CS1_CONFIG); - out_be32(&ddr->timing_cfg_3, CONFIG_SYS_DDR_TIMING_3); - out_be32(&ddr->timing_cfg_0, CONFIG_SYS_DDR_TIMING_0); - out_be32(&ddr->timing_cfg_1, CONFIG_SYS_DDR_TIMING_1); - out_be32(&ddr->timing_cfg_2, CONFIG_SYS_DDR_TIMING_2); - out_be32(&ddr->sdram_cfg_2, CONFIG_SYS_DDR_CONTROL2); - out_be32(&ddr->sdram_mode, CONFIG_SYS_DDR_MODE_1); - out_be32(&ddr->sdram_mode_2, CONFIG_SYS_DDR_MODE_2); - out_be32(&ddr->sdram_interval, CONFIG_SYS_DDR_INTERVAL); - out_be32(&ddr->sdram_data_init, CONFIG_SYS_DDR_DATA_INIT); - out_be32(&ddr->sdram_clk_cntl, CONFIG_SYS_DDR_CLK_CTRL); - out_be32(&ddr->timing_cfg_4, CONFIG_SYS_DDR_TIMING_4); - out_be32(&ddr->timing_cfg_5, CONFIG_SYS_DDR_TIMING_5); - out_be32(&ddr->ddr_zq_cntl, CONFIG_SYS_DDR_ZQ_CNTL); - out_be32(&ddr->ddr_wrlvl_cntl, CONFIG_SYS_DDR_WRLVL_CNTL); - out_be32(&ddr->ddr_cdr1, CONFIG_SYS_DDR_CDR_1); - out_be32(&ddr->ddr_cdr2, CONFIG_SYS_DDR_CDR_2); - out_be32(&ddr->sdram_cfg, CONFIG_SYS_DDR_CONTROL); -#endif - return CONFIG_SYS_SDRAM_SIZE * 1024 * 1024ul; -} - -#ifdef CONFIG_PCI -void pci_init_board(void) -{ - fsl_pcie_init_board(0); -} -#endif - -int board_early_init_r(void) -{ - const unsigned int flashbase = CONFIG_SYS_BCSR_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); - - /* - * Remap Boot flash + BCSR region to caching-inhibited - * so that flash can be erased properly. - */ - - /* Flush d-cache and invalidate i-cache of any FLASH data */ - flush_dcache(); - invalidate_icache(); - - /* invalidate existing TLB entry for flash + bcsr */ - disable_tlb(flash_esel); - - set_tlb(1, flashbase, CONFIG_SYS_BCSR_BASE_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, flash_esel, BOOKE_PAGESZ_256M, 1); - - setup_portals(); - - return 0; -} - -unsigned long get_board_sys_clk(ulong dummy) -{ - return gd->bus_clk; -} - -unsigned long get_board_ddr_clk(ulong dummy) -{ - return gd->mem_clk; -} - -int board_eth_init(bd_t *bis) -{ - u8 *bcsr = (u8 *)BCSR_ACCESS_REG_ADDR; - ccsr_gur_t *gur = (ccsr_gur_t *)CONFIG_SYS_MPC85xx_GUTS_ADDR; - struct fsl_pq_mdio_info dtsec_mdio_info; - - /* - * Need to set dTSEC 1 pin multiplexing to TSEC. The default setting - * is not correct. - */ - setbits_be32(&gur->pmuxcr, MPC85xx_PMUXCR_TSEC1_1); - - dtsec_mdio_info.regs = - (struct tsec_mii_mng *)CONFIG_SYS_FM1_DTSEC1_MDIO_ADDR; - dtsec_mdio_info.name = DEFAULT_FM_MDIO_NAME; - - /* Register the 1G MDIO bus */ - fsl_pq_mdio_init(bis, &dtsec_mdio_info); - - fm_info_set_phy_address(FM1_DTSEC1, CONFIG_SYS_FM1_DTSEC1_PHY_ADDR); - fm_info_set_phy_address(FM1_DTSEC2, CONFIG_SYS_FM1_DTSEC2_PHY_ADDR); - - fm_info_set_mdio(FM1_DTSEC1, - miiphy_get_dev_by_name(DEFAULT_FM_MDIO_NAME)); - fm_info_set_mdio(FM1_DTSEC2, - miiphy_get_dev_by_name(DEFAULT_FM_MDIO_NAME)); - - /* Make SERDES connected to SGMII by cleaing bcsr19[7] */ - if (fm_info_get_enet_if(FM1_DTSEC1) == PHY_INTERFACE_MODE_SGMII) - clrbits_8(&bcsr[19], BCSR19_SGMII_SEL_L); - -#ifdef CONFIG_FMAN_ENET - cpu_eth_init(bis); -#endif - - return pci_eth_init(bis); -} - -#if defined(CONFIG_OF_BOARD_SETUP) -void ft_board_setup(void *blob, bd_t *bd) -{ - phys_addr_t base; - phys_size_t size; - - ft_cpu_setup(blob, bd); - - base = getenv_bootm_low(); - size = getenv_bootm_size(); - - fdt_fixup_memory(blob, (u64)base, (u64)size); - -#ifdef CONFIG_HAS_FSL_DR_USB - fdt_fixup_dr_usb(blob, bd); -#endif - - fdt_fixup_fman_ethernet(blob); -} -#endif diff --git a/board/freescale/p1023rds/tlb.c b/board/freescale/p1023rds/tlb.c deleted file mode 100644 index 3c92c14..0000000 --- a/board/freescale/p1023rds/tlb.c +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Copyright 2010-2011 Freescale Semiconductor, Inc. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <asm/mmu.h> - -struct fsl_e_tlb_entry tlb_table[] = { - /* TLB 0 - for temp stack in cache */ - SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR, CONFIG_SYS_INIT_RAM_ADDR, - MAS3_SX|MAS3_SW|MAS3_SR, 0, - 0, 0, BOOKE_PAGESZ_4K, 0), - SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR + 4 * 1024, - CONFIG_SYS_INIT_RAM_ADDR + 4 * 1024, - MAS3_SX|MAS3_SW|MAS3_SR, 0, - 0, 0, BOOKE_PAGESZ_4K, 0), - SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR + 8 * 1024, - CONFIG_SYS_INIT_RAM_ADDR + 8 * 1024, - MAS3_SX|MAS3_SW|MAS3_SR, 0, - 0, 0, BOOKE_PAGESZ_4K, 0), - SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR + 12 * 1024, - CONFIG_SYS_INIT_RAM_ADDR + 12 * 1024, - MAS3_SX|MAS3_SW|MAS3_SR, 0, - 0, 0, BOOKE_PAGESZ_4K, 0), - - /* TLB 1 */ - /* *I*** - Covers boot page */ - SET_TLB_ENTRY(1, 0xfffff000, 0xfffff000, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I, - 0, 0, BOOKE_PAGESZ_4K, 1), - - /* *I*G* - CCSRBAR */ - SET_TLB_ENTRY(1, CONFIG_SYS_CCSRBAR, CONFIG_SYS_CCSRBAR_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 1, BOOKE_PAGESZ_4M, 1), - - /* *W*G* - BCSR and NOR flash on local bus*/ - /* This will be changed to *I*G* after relocation to RAM. */ - SET_TLB_ENTRY(1, CONFIG_SYS_BCSR_BASE, CONFIG_SYS_BCSR_BASE_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_W|MAS2_G, - 0, 2, BOOKE_PAGESZ_256M, 1), - - /* *I*G* - PCI */ - SET_TLB_ENTRY(1, CONFIG_SYS_PCIE3_MEM_VIRT, CONFIG_SYS_PCIE3_MEM_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 3, BOOKE_PAGESZ_1G, 1), - - /* *I*G* - PCI */ - SET_TLB_ENTRY(1, CONFIG_SYS_PCIE3_MEM_VIRT + 0x40000000, - CONFIG_SYS_PCIE3_MEM_PHYS + 0x40000000, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 4, BOOKE_PAGESZ_256M, 1), - - SET_TLB_ENTRY(1, CONFIG_SYS_PCIE3_MEM_VIRT + 0x50000000, - CONFIG_SYS_PCIE3_MEM_PHYS + 0x50000000, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 5, BOOKE_PAGESZ_256M, 1), - - /* *I*G* - PCI I/O */ - SET_TLB_ENTRY(1, CONFIG_SYS_PCIE3_IO_VIRT, CONFIG_SYS_PCIE3_IO_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 6, BOOKE_PAGESZ_256K, 1), - - /* Bman/Qman */ - SET_TLB_ENTRY(1, CONFIG_SYS_BMAN_MEM_BASE, CONFIG_SYS_BMAN_MEM_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, 0, - 0, 7, BOOKE_PAGESZ_1M, 1), - SET_TLB_ENTRY(1, CONFIG_SYS_BMAN_MEM_BASE + 0x00100000, - CONFIG_SYS_BMAN_MEM_PHYS + 0x00100000, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 8, BOOKE_PAGESZ_1M, 1), - SET_TLB_ENTRY(1, CONFIG_SYS_QMAN_MEM_BASE, CONFIG_SYS_QMAN_MEM_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_M, - 0, 9, BOOKE_PAGESZ_1M, 1), - SET_TLB_ENTRY(1, CONFIG_SYS_QMAN_MEM_BASE + 0x00100000, - CONFIG_SYS_QMAN_MEM_PHYS + 0x00100000, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 10, BOOKE_PAGESZ_1M, 1), - - /* *I*G - NAND */ - SET_TLB_ENTRY(1, CONFIG_SYS_NAND_BASE, CONFIG_SYS_NAND_BASE_PHYS, - MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, - 0, 11, BOOKE_PAGESZ_1M, 1), - -#ifdef CONFIG_SYS_RAMBOOT - SET_TLB_ENTRY(1, CONFIG_SYS_DDR_SDRAM_BASE, - CONFIG_SYS_DDR_SDRAM_BASE, - MAS3_SX|MAS3_SW|MAS3_SR, 0, - 0, 12, BOOKE_PAGESZ_1G, 1), - - SET_TLB_ENTRY(1, CONFIG_SYS_DDR_SDRAM_BASE + 0x40000000, - CONFIG_SYS_DDR_SDRAM_BASE + 0x40000000, - MAS3_SX|MAS3_SW|MAS3_SR, 0, - 0, 13, BOOKE_PAGESZ_1G, 1), -#endif -}; - -int num_tlb_entries = ARRAY_SIZE(tlb_table); diff --git a/board/freescale/p1_p2_rdb/Kconfig b/board/freescale/p1_p2_rdb/Kconfig new file mode 100644 index 0000000..6d718b9 --- /dev/null +++ b/board/freescale/p1_p2_rdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P1_P2_RDB + +config SYS_BOARD + string + default "p1_p2_rdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P1_P2_RDB" + +endif diff --git a/board/freescale/p1_p2_rdb/MAINTAINERS b/board/freescale/p1_p2_rdb/MAINTAINERS new file mode 100644 index 0000000..ad0a858 --- /dev/null +++ b/board/freescale/p1_p2_rdb/MAINTAINERS @@ -0,0 +1,37 @@ +P1_P2_RDB BOARD +M: - +S: Maintained +F: board/freescale/p1_p2_rdb/ +F: include/configs/P1_P2_RDB.h +F: configs/P1011RDB_defconfig +F: configs/P1011RDB_36BIT_defconfig +F: configs/P1011RDB_36BIT_SDCARD_defconfig +F: configs/P1011RDB_36BIT_SPIFLASH_defconfig +F: configs/P1011RDB_NAND_defconfig +F: configs/P1011RDB_SDCARD_defconfig +F: configs/P1011RDB_SPIFLASH_defconfig +F: configs/P1020RDB_defconfig +F: configs/P1020RDB_36BIT_defconfig +F: configs/P1020RDB_36BIT_SDCARD_defconfig +F: configs/P1020RDB_36BIT_SPIFLASH_defconfig +F: configs/P1020RDB_NAND_defconfig +F: configs/P1020RDB_SDCARD_defconfig +F: configs/P1020RDB_SPIFLASH_defconfig +F: configs/P2010RDB_defconfig +F: configs/P2010RDB_36BIT_defconfig +F: configs/P2010RDB_36BIT_SDCARD_defconfig +F: configs/P2010RDB_36BIT_SPIFLASH_defconfig +F: configs/P2010RDB_NAND_defconfig +F: configs/P2010RDB_SDCARD_defconfig +F: configs/P2010RDB_SPIFLASH_defconfig +F: configs/P2020RDB_36BIT_defconfig +F: configs/P2020RDB_36BIT_SDCARD_defconfig +F: configs/P2020RDB_36BIT_SPIFLASH_defconfig +F: configs/P2020RDB_NAND_defconfig +F: configs/P2020RDB_SDCARD_defconfig +F: configs/P2020RDB_SPIFLASH_defconfig + +P2020RDB BOARD +M: Poonam Aggrwal <poonam.aggrwal@freescale.com> +S: Maintained +F: configs/P2020RDB_defconfig diff --git a/board/freescale/p1_p2_rdb/p1_p2_rdb.c b/board/freescale/p1_p2_rdb/p1_p2_rdb.c index 3df557d..aba4f53 100644 --- a/board/freescale/p1_p2_rdb/p1_p2_rdb.c +++ b/board/freescale/p1_p2_rdb/p1_p2_rdb.c @@ -128,7 +128,7 @@ int misc_init_r(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR); unsigned int orig_bus = i2c_get_bus_num(); u8 i2c_data; @@ -163,8 +163,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/p1_p2_rdb_pc/Kconfig b/board/freescale/p1_p2_rdb_pc/Kconfig new file mode 100644 index 0000000..01b89fa --- /dev/null +++ b/board/freescale/p1_p2_rdb_pc/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P1_P2_RDB_PC + +config SYS_BOARD + string + default "p1_p2_rdb_pc" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "p1_p2_rdb_pc" + +endif diff --git a/board/freescale/p1_p2_rdb_pc/MAINTAINERS b/board/freescale/p1_p2_rdb_pc/MAINTAINERS new file mode 100644 index 0000000..4d429fe --- /dev/null +++ b/board/freescale/p1_p2_rdb_pc/MAINTAINERS @@ -0,0 +1,51 @@ +P1_P2_RDB_PC BOARD +M: - +S: Maintained +F: board/freescale/p1_p2_rdb_pc/ +F: include/configs/p1_p2_rdb_pc.h +F: configs/P1020MBG-PC_defconfig +F: configs/P1020MBG-PC_36BIT_defconfig +F: configs/P1020MBG-PC_36BIT_SDCARD_defconfig +F: configs/P1020MBG-PC_SDCARD_defconfig +F: configs/P1020RDB-PC_defconfig +F: configs/P1020RDB-PC_36BIT_defconfig +F: configs/P1020RDB-PC_36BIT_NAND_defconfig +F: configs/P1020RDB-PC_36BIT_SDCARD_defconfig +F: configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig +F: configs/P1020RDB-PC_NAND_defconfig +F: configs/P1020RDB-PC_SDCARD_defconfig +F: configs/P1020RDB-PC_SPIFLASH_defconfig +F: configs/P1020RDB-PD_defconfig +F: configs/P1020RDB-PD_NAND_defconfig +F: configs/P1020RDB-PD_SDCARD_defconfig +F: configs/P1020RDB-PD_SPIFLASH_defconfig +F: configs/P1020UTM-PC_defconfig +F: configs/P1020UTM-PC_36BIT_defconfig +F: configs/P1020UTM-PC_36BIT_SDCARD_defconfig +F: configs/P1020UTM-PC_SDCARD_defconfig +F: configs/P1021RDB-PC_defconfig +F: configs/P1021RDB-PC_36BIT_defconfig +F: configs/P1021RDB-PC_36BIT_NAND_defconfig +F: configs/P1021RDB-PC_36BIT_SDCARD_defconfig +F: configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig +F: configs/P1021RDB-PC_NAND_defconfig +F: configs/P1021RDB-PC_SDCARD_defconfig +F: configs/P1021RDB-PC_SPIFLASH_defconfig +F: configs/P1024RDB_defconfig +F: configs/P1024RDB_36BIT_defconfig +F: configs/P1024RDB_NAND_defconfig +F: configs/P1024RDB_SDCARD_defconfig +F: configs/P1024RDB_SPIFLASH_defconfig +F: configs/P1025RDB_defconfig +F: configs/P1025RDB_36BIT_defconfig +F: configs/P1025RDB_NAND_defconfig +F: configs/P1025RDB_SDCARD_defconfig +F: configs/P1025RDB_SPIFLASH_defconfig +F: configs/P2020RDB-PC_defconfig +F: configs/P2020RDB-PC_36BIT_defconfig +F: configs/P2020RDB-PC_36BIT_NAND_defconfig +F: configs/P2020RDB-PC_36BIT_SDCARD_defconfig +F: configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig +F: configs/P2020RDB-PC_NAND_defconfig +F: configs/P2020RDB-PC_SDCARD_defconfig +F: configs/P2020RDB-PC_SPIFLASH_defconfig diff --git a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c index 5f3d6fd..a6756c6 100644 --- a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c +++ b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c @@ -288,7 +288,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash region to caching-inhibited @@ -299,8 +299,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, /* tlb, epn, rpn */ MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G,/* perms, wimge */ diff --git a/board/freescale/p1_twr/Kconfig b/board/freescale/p1_twr/Kconfig new file mode 100644 index 0000000..5fb4705 --- /dev/null +++ b/board/freescale/p1_twr/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P1_TWR + +config SYS_BOARD + string + default "p1_twr" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "p1_twr" + +endif diff --git a/board/freescale/p1_twr/MAINTAINERS b/board/freescale/p1_twr/MAINTAINERS new file mode 100644 index 0000000..2d7d7e1 --- /dev/null +++ b/board/freescale/p1_twr/MAINTAINERS @@ -0,0 +1,6 @@ +P1_TWR BOARD +M: - +S: Maintained +F: board/freescale/p1_twr/ +F: include/configs/p1_twr.h +F: configs/TWR-P1025_defconfig diff --git a/board/freescale/p1_twr/p1_twr.c b/board/freescale/p1_twr/p1_twr.c index 0e0d058..a0a416b 100644 --- a/board/freescale/p1_twr/p1_twr.c +++ b/board/freescale/p1_twr/p1_twr.c @@ -155,7 +155,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash region to caching-inhibited @@ -166,8 +166,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, /* tlb, epn, rpn */ MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, /* perms, wimge */ diff --git a/board/freescale/p2020come/Kconfig b/board/freescale/p2020come/Kconfig new file mode 100644 index 0000000..d4d7e13 --- /dev/null +++ b/board/freescale/p2020come/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P2020COME + +config SYS_BOARD + string + default "p2020come" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P2020COME" + +endif diff --git a/board/freescale/p2020come/MAINTAINERS b/board/freescale/p2020come/MAINTAINERS new file mode 100644 index 0000000..ab3ef94 --- /dev/null +++ b/board/freescale/p2020come/MAINTAINERS @@ -0,0 +1,7 @@ +P2020COME BOARD +M: Ira W. Snyder <iws@ovro.caltech.edu> +S: Maintained +F: board/freescale/p2020come/ +F: include/configs/P2020COME.h +F: configs/P2020COME_SDCARD_defconfig +F: configs/P2020COME_SPIFLASH_defconfig diff --git a/board/freescale/p2020ds/Kconfig b/board/freescale/p2020ds/Kconfig new file mode 100644 index 0000000..29031d0 --- /dev/null +++ b/board/freescale/p2020ds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P2020DS + +config SYS_BOARD + string + default "p2020ds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P2020DS" + +endif diff --git a/board/freescale/p2020ds/MAINTAINERS b/board/freescale/p2020ds/MAINTAINERS new file mode 100644 index 0000000..42cb18d --- /dev/null +++ b/board/freescale/p2020ds/MAINTAINERS @@ -0,0 +1,10 @@ +P2020DS BOARD +M: - +S: Maintained +F: board/freescale/p2020ds/ +F: include/configs/P2020DS.h +F: configs/P2020DS_defconfig +F: configs/P2020DS_36BIT_defconfig +F: configs/P2020DS_DDR2_defconfig +F: configs/P2020DS_SDCARD_defconfig +F: configs/P2020DS_SPIFLASH_defconfig diff --git a/board/freescale/p2020ds/p2020ds.c b/board/freescale/p2020ds/p2020ds.c index a0cf927..b72fcff 100644 --- a/board/freescale/p2020ds/p2020ds.c +++ b/board/freescale/p2020ds/p2020ds.c @@ -159,7 +159,7 @@ void pci_init_board(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -170,8 +170,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/p2041rdb/Kconfig b/board/freescale/p2041rdb/Kconfig new file mode 100644 index 0000000..b086b1b --- /dev/null +++ b/board/freescale/p2041rdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P2041RDB + +config SYS_BOARD + string + default "p2041rdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "P2041RDB" + +endif diff --git a/board/freescale/p2041rdb/MAINTAINERS b/board/freescale/p2041rdb/MAINTAINERS new file mode 100644 index 0000000..bb5bb83 --- /dev/null +++ b/board/freescale/p2041rdb/MAINTAINERS @@ -0,0 +1,11 @@ +P2041RDB BOARD +M: - +S: Maintained +F: board/freescale/p2041rdb/ +F: include/configs/P2041RDB.h +F: configs/P2041RDB_defconfig +F: configs/P2041RDB_NAND_defconfig +F: configs/P2041RDB_SDCARD_defconfig +F: configs/P2041RDB_SECURE_BOOT_defconfig +F: configs/P2041RDB_SPIFLASH_defconfig +F: configs/P2041RDB_SRIO_PCIE_BOOT_defconfig diff --git a/board/freescale/p2041rdb/p2041rdb.c b/board/freescale/p2041rdb/p2041rdb.c index 8554512..a14b43b 100644 --- a/board/freescale/p2041rdb/p2041rdb.c +++ b/board/freescale/p2041rdb/p2041rdb.c @@ -116,7 +116,7 @@ void board_config_lanes_mux(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -127,8 +127,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/qemu-ppce500/Kconfig b/board/freescale/qemu-ppce500/Kconfig new file mode 100644 index 0000000..314f6a1 --- /dev/null +++ b/board/freescale/qemu-ppce500/Kconfig @@ -0,0 +1,15 @@ +if TARGET_QEMU_PPCE500 + +config SYS_BOARD + string + default "qemu-ppce500" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "qemu-ppce500" + +endif diff --git a/board/freescale/qemu-ppce500/MAINTAINERS b/board/freescale/qemu-ppce500/MAINTAINERS new file mode 100644 index 0000000..77d0a4a --- /dev/null +++ b/board/freescale/qemu-ppce500/MAINTAINERS @@ -0,0 +1,6 @@ +QEMU-PPCE500 BOARD +M: Alexander Graf <agraf@suse.de> +S: Maintained +F: board/freescale/qemu-ppce500/ +F: include/configs/qemu-ppce500.h +F: configs/qemu-ppce500_defconfig diff --git a/board/freescale/t1040qds/Kconfig b/board/freescale/t1040qds/Kconfig new file mode 100644 index 0000000..c1c96f0 --- /dev/null +++ b/board/freescale/t1040qds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_T1040QDS + +config SYS_BOARD + string + default "t1040qds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "T1040QDS" + +endif diff --git a/board/freescale/t1040qds/MAINTAINERS b/board/freescale/t1040qds/MAINTAINERS new file mode 100644 index 0000000..83f6b3c --- /dev/null +++ b/board/freescale/t1040qds/MAINTAINERS @@ -0,0 +1,12 @@ +T1040QDS BOARD +M: Poonam Aggrwal <poonam.aggrwal@freescale.com> +S: Maintained +F: board/freescale/t1040qds/ +F: include/configs/T1040QDS.h +F: configs/T1040QDS_defconfig +F: configs/T1040QDS_D4_defconfig + +T1040QDS_SECURE_BOOT BOARD +M: Aneesh Bansal <aneesh.bansal@freescale.com> +S: Maintained +F: configs/T1040QDS_SECURE_BOOT_defconfig diff --git a/board/freescale/t1040qds/eth.c b/board/freescale/t1040qds/eth.c index 3077b4a..1929bba 100644 --- a/board/freescale/t1040qds/eth.c +++ b/board/freescale/t1040qds/eth.c @@ -355,7 +355,9 @@ static void set_brdcfg9_for_gtx_clk(void) { u8 brdcfg9; brdcfg9 = QIXIS_READ(brdcfg[9]); - brdcfg9 |= (1 << 5); +/* Initializing EPHY2 clock to RGMII mode */ + brdcfg9 &= ~(BRDCFG9_EPHY2_MASK); + brdcfg9 |= (BRDCFG9_EPHY2_VAL); QIXIS_WRITE(brdcfg[9], brdcfg9); } diff --git a/board/freescale/t1040qds/t1040qds.c b/board/freescale/t1040qds/t1040qds.c index 0e83d17..19af46e 100644 --- a/board/freescale/t1040qds/t1040qds.c +++ b/board/freescale/t1040qds/t1040qds.c @@ -119,7 +119,7 @@ int board_early_init_r(void) { #ifdef CONFIG_SYS_FLASH_BASE const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -130,8 +130,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/t1040qds/t1040qds_qixis.h b/board/freescale/t1040qds/t1040qds_qixis.h index 98d2d39..cef8ad0 100644 --- a/board/freescale/t1040qds/t1040qds_qixis.h +++ b/board/freescale/t1040qds/t1040qds_qixis.h @@ -17,6 +17,10 @@ #define BRDCFG5_IMX_MASK 0xC0 #define BRDCFG5_IMX_DIU 0x80 +/* BRDCFG9[2] controls EPHY2 Clock */ +#define BRDCFG9_EPHY2_MASK 0x20 +#define BRDCFG9_EPHY2_VAL 0x00 + /* BRDCFG15[3] controls LCD Panel Powerdown*/ #define BRDCFG15_LCDPD_MASK 0x10 #define BRDCFG15_LCDPD_ENABLED 0x00 diff --git a/board/freescale/t104xrdb/Kconfig b/board/freescale/t104xrdb/Kconfig new file mode 100644 index 0000000..d0fd3de --- /dev/null +++ b/board/freescale/t104xrdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_T104XRDB + +config SYS_BOARD + string + default "t104xrdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "T104xRDB" + +endif diff --git a/board/freescale/t104xrdb/MAINTAINERS b/board/freescale/t104xrdb/MAINTAINERS new file mode 100644 index 0000000..364b0a9 --- /dev/null +++ b/board/freescale/t104xrdb/MAINTAINERS @@ -0,0 +1,22 @@ +T104XRDB BOARD +M: Priyanka Jain <Priyanka.Jain@freescale.com> +S: Maintained +F: board/freescale/t104xrdb/ +F: include/configs/T104xRDB.h +F: configs/T1040RDB_defconfig +F: configs/T1040RDB_NAND_defconfig +F: configs/T1040RDB_SPIFLASH_defconfig +F: configs/T1042RDB_PI_defconfig +F: configs/T1042RDB_PI_NAND_defconfig +F: configs/T1042RDB_PI_SPIFLASH_defconfig + +T1040RDB_SDCARD BOARD +M: - +S: Maintained +F: configs/T1040RDB_SDCARD_defconfig +F: configs/T1042RDB_PI_SDCARD_defconfig + +T1040RDB_SECURE_BOOT BOARD +M: Aneesh Bansal <aneesh.bansal@freescale.com> +S: Maintained +F: configs/T1040RDB_SECURE_BOOT_defconfig diff --git a/board/freescale/t104xrdb/t104xrdb.c b/board/freescale/t104xrdb/t104xrdb.c index a5e5fff..ddb669f 100644 --- a/board/freescale/t104xrdb/t104xrdb.c +++ b/board/freescale/t104xrdb/t104xrdb.c @@ -48,7 +48,7 @@ int board_early_init_r(void) { #ifdef CONFIG_SYS_FLASH_BASE const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash region to caching-inhibited @@ -59,8 +59,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/t208xqds/Kconfig b/board/freescale/t208xqds/Kconfig new file mode 100644 index 0000000..3d0c6ab --- /dev/null +++ b/board/freescale/t208xqds/Kconfig @@ -0,0 +1,15 @@ +if TARGET_T208XQDS + +config SYS_BOARD + string + default "t208xqds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "T208xQDS" + +endif diff --git a/board/freescale/t208xqds/MAINTAINERS b/board/freescale/t208xqds/MAINTAINERS new file mode 100644 index 0000000..643926f --- /dev/null +++ b/board/freescale/t208xqds/MAINTAINERS @@ -0,0 +1,20 @@ +T208XQDS BOARD +M: - +S: Maintained +F: board/freescale/t208xqds/ +F: include/configs/T208xQDS.h +F: configs/T2080QDS_defconfig +F: configs/T2080QDS_NAND_defconfig +F: configs/T2080QDS_SDCARD_defconfig +F: configs/T2080QDS_SPIFLASH_defconfig +F: configs/T2080QDS_SRIO_PCIE_BOOT_defconfig +F: configs/T2081QDS_defconfig +F: configs/T2081QDS_NAND_defconfig +F: configs/T2081QDS_SDCARD_defconfig +F: configs/T2081QDS_SPIFLASH_defconfig +F: configs/T2081QDS_SRIO_PCIE_BOOT_defconfig + +T2080QDS_SECURE_BOOT BOARD +M: Aneesh Bansal <aneesh.bansal@freescale.com> +S: Maintained +F: configs/T2080QDS_SECURE_BOOT_defconfig diff --git a/board/freescale/t208xqds/t208xqds.c b/board/freescale/t208xqds/t208xqds.c index 1353439..fc6d256 100644 --- a/board/freescale/t208xqds/t208xqds.c +++ b/board/freescale/t208xqds/t208xqds.c @@ -326,7 +326,7 @@ int brd_mux_lane_to_slot(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -337,8 +337,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/t208xrdb/Kconfig b/board/freescale/t208xrdb/Kconfig new file mode 100644 index 0000000..f8d2c3c --- /dev/null +++ b/board/freescale/t208xrdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_T208XRDB + +config SYS_BOARD + string + default "t208xrdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "T208xRDB" + +endif diff --git a/board/freescale/t208xrdb/MAINTAINERS b/board/freescale/t208xrdb/MAINTAINERS new file mode 100644 index 0000000..5987143 --- /dev/null +++ b/board/freescale/t208xrdb/MAINTAINERS @@ -0,0 +1,15 @@ +T208XRDB BOARD +M: - +S: Maintained +F: board/freescale/t208xrdb/ +F: include/configs/T208xRDB.h +F: configs/T2080RDB_defconfig +F: configs/T2080RDB_NAND_defconfig +F: configs/T2080RDB_SDCARD_defconfig +F: configs/T2080RDB_SPIFLASH_defconfig +F: configs/T2080RDB_SRIO_PCIE_BOOT_defconfig + +T2080RDB_SECURE_BOOT BOARD +M: Aneesh Bansal <aneesh.bansal@freescale.com> +S: Maintained +F: configs/T2080RDB_SECURE_BOOT_defconfig diff --git a/board/freescale/t208xrdb/t208xrdb.c b/board/freescale/t208xrdb/t208xrdb.c index 265c1f9..be99fb8 100644 --- a/board/freescale/t208xrdb/t208xrdb.c +++ b/board/freescale/t208xrdb/t208xrdb.c @@ -58,7 +58,7 @@ int checkboard(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited * so that flash can be erased properly. @@ -67,9 +67,14 @@ int board_early_init_r(void) /* Flush d-cache and invalidate i-cache of any FLASH data */ flush_dcache(); invalidate_icache(); - - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/t4qds/Kconfig b/board/freescale/t4qds/Kconfig new file mode 100644 index 0000000..f4b0ba2 --- /dev/null +++ b/board/freescale/t4qds/Kconfig @@ -0,0 +1,31 @@ +if TARGET_T4240EMU + +config SYS_BOARD + string + default "t4qds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "T4240EMU" + +endif + +if TARGET_T4240QDS + +config SYS_BOARD + string + default "t4qds" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "T4240QDS" + +endif diff --git a/board/freescale/t4qds/MAINTAINERS b/board/freescale/t4qds/MAINTAINERS new file mode 100644 index 0000000..da796bd --- /dev/null +++ b/board/freescale/t4qds/MAINTAINERS @@ -0,0 +1,26 @@ +T4QDS BOARD +M: - +S: Maintained +F: board/freescale/t4qds/ +F: include/configs/T4240QDS.h +F: configs/T4160QDS_defconfig +F: configs/T4160QDS_NAND_defconfig +F: configs/T4160QDS_SDCARD_defconfig +F: configs/T4160QDS_SPIFLASH_defconfig +F: configs/T4240QDS_defconfig +F: configs/T4240QDS_NAND_defconfig +F: configs/T4240QDS_SDCARD_defconfig +F: configs/T4240QDS_SPIFLASH_defconfig +F: configs/T4240QDS_SRIO_PCIE_BOOT_defconfig + +T4160QDS_SECURE_BOOT BOARD +M: Aneesh Bansal <aneesh.bansal@freescale.com> +S: Maintained +F: configs/T4160QDS_SECURE_BOOT_defconfig +F: configs/T4240QDS_SECURE_BOOT_defconfig + +T4240EMU BOARD +M: York Sun <yorksun@freescale.com> +S: Maintained +F: include/configs/T4240EMU.h +F: configs/T4240EMU_defconfig diff --git a/board/freescale/t4qds/t4240emu.c b/board/freescale/t4qds/t4240emu.c index 7a61036..479e124 100644 --- a/board/freescale/t4qds/t4240emu.c +++ b/board/freescale/t4qds/t4240emu.c @@ -32,7 +32,7 @@ int checkboard(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -43,8 +43,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/t4qds/t4240qds.c b/board/freescale/t4qds/t4240qds.c index fe1bc7f..6205fea 100644 --- a/board/freescale/t4qds/t4240qds.c +++ b/board/freescale/t4qds/t4240qds.c @@ -528,7 +528,7 @@ int config_backside_crossbar_mux(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -539,8 +539,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, @@ -638,9 +644,10 @@ unsigned long get_board_ddr_clk(void) int misc_init_r(void) { u8 sw; - serdes_corenet_t *srds_regs = - (void *)CONFIG_SYS_FSL_CORENET_SERDES_ADDR; + void *srds_base = (void *)CONFIG_SYS_FSL_CORENET_SERDES_ADDR; + serdes_corenet_t *srds_regs; u32 actual[MAX_SERDES]; + u32 pllcr0, expected; unsigned int i; sw = QIXIS_READ(brdcfg[2]); @@ -663,8 +670,9 @@ int misc_init_r(void) } for (i = 0; i < MAX_SERDES; i++) { - u32 pllcr0 = srds_regs->bank[i].pllcr0; - u32 expected = pllcr0 & SRDS_PLLCR0_RFCK_SEL_MASK; + srds_regs = srds_base + i * 0x1000; + pllcr0 = srds_regs->bank[0].pllcr0; + expected = pllcr0 & SRDS_PLLCR0_RFCK_SEL_MASK; if (expected != actual[i]) { printf("Warning: SERDES%u expects reference clock %sMHz, but actual is %sMHz\n", i + 1, serdes_clock_to_string(expected), diff --git a/board/freescale/t4rdb/Kconfig b/board/freescale/t4rdb/Kconfig new file mode 100644 index 0000000..07e3c0d --- /dev/null +++ b/board/freescale/t4rdb/Kconfig @@ -0,0 +1,15 @@ +if TARGET_T4240RDB + +config SYS_BOARD + string + default "t4rdb" + +config SYS_VENDOR + string + default "freescale" + +config SYS_CONFIG_NAME + string + default "T4240RDB" + +endif diff --git a/board/freescale/t4rdb/MAINTAINERS b/board/freescale/t4rdb/MAINTAINERS new file mode 100644 index 0000000..845c1b6 --- /dev/null +++ b/board/freescale/t4rdb/MAINTAINERS @@ -0,0 +1,7 @@ +T4RDB BOARD +M: Chunhe Lan <Chunhe.Lan@freescale.com> +S: Maintained +F: board/freescale/t4rdb/ +F: include/configs/T4240RDB.h +F: configs/T4160RDB_defconfig +F: configs/T4240RDB_defconfig diff --git a/board/freescale/t4rdb/t4240rdb.c b/board/freescale/t4rdb/t4240rdb.c index 5448c86..afef7e9 100644 --- a/board/freescale/t4rdb/t4240rdb.c +++ b/board/freescale/t4rdb/t4240rdb.c @@ -39,7 +39,7 @@ int checkboard(void) int board_early_init_r(void) { const unsigned int flashbase = CONFIG_SYS_FLASH_BASE; - const u8 flash_esel = find_tlb_idx((void *)flashbase, 1); + int flash_esel = find_tlb_idx((void *)flashbase, 1); /* * Remap Boot flash + PROMJET region to caching-inhibited @@ -50,8 +50,14 @@ int board_early_init_r(void) flush_dcache(); invalidate_icache(); - /* invalidate existing TLB entry for flash + promjet */ - disable_tlb(flash_esel); + if (flash_esel == -1) { + /* very unlikely unless something is messed up */ + puts("Error: Could not find TLB for FLASH BASE\n"); + flash_esel = 2; /* give our best effort to continue */ + } else { + /* invalidate existing TLB entry for flash + promjet */ + disable_tlb(flash_esel); + } set_tlb(1, flashbase, CONFIG_SYS_FLASH_BASE_PHYS, MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, diff --git a/board/freescale/vf610twr/Kconfig b/board/freescale/vf610twr/Kconfig new file mode 100644 index 0000000..56bc52a --- /dev/null +++ b/board/freescale/vf610twr/Kconfig @@ -0,0 +1,23 @@ +if TARGET_VF610TWR + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "vf610twr" + +config SYS_VENDOR + string + default "freescale" + +config SYS_SOC + string + default "vf610" + +config SYS_CONFIG_NAME + string + default "vf610twr" + +endif diff --git a/board/freescale/vf610twr/MAINTAINERS b/board/freescale/vf610twr/MAINTAINERS new file mode 100644 index 0000000..56a09c9 --- /dev/null +++ b/board/freescale/vf610twr/MAINTAINERS @@ -0,0 +1,6 @@ +VF610TWR BOARD +M: Alison Wang <b18965@freescale.com> +S: Maintained +F: board/freescale/vf610twr/ +F: include/configs/vf610twr.h +F: configs/vf610twr_defconfig diff --git a/board/funkwerk/vovpn-gw/Kconfig b/board/funkwerk/vovpn-gw/Kconfig new file mode 100644 index 0000000..dc3deca --- /dev/null +++ b/board/funkwerk/vovpn-gw/Kconfig @@ -0,0 +1,15 @@ +if TARGET_VOVPN_GW + +config SYS_BOARD + string + default "vovpn-gw" + +config SYS_VENDOR + string + default "funkwerk" + +config SYS_CONFIG_NAME + string + default "VoVPN-GW" + +endif diff --git a/board/funkwerk/vovpn-gw/MAINTAINERS b/board/funkwerk/vovpn-gw/MAINTAINERS new file mode 100644 index 0000000..9af5f78 --- /dev/null +++ b/board/funkwerk/vovpn-gw/MAINTAINERS @@ -0,0 +1,6 @@ +VOVPN-GW BOARD +M: - +S: Maintained +F: board/funkwerk/vovpn-gw/ +F: include/configs/VoVPN-GW.h +F: configs/VoVPN-GW_66MHz_defconfig diff --git a/board/g2000/Kconfig b/board/g2000/Kconfig new file mode 100644 index 0000000..eae4886 --- /dev/null +++ b/board/g2000/Kconfig @@ -0,0 +1,11 @@ +if TARGET_G2000 + +config SYS_BOARD + string + default "g2000" + +config SYS_CONFIG_NAME + string + default "G2000" + +endif diff --git a/board/g2000/MAINTAINERS b/board/g2000/MAINTAINERS new file mode 100644 index 0000000..8171b10 --- /dev/null +++ b/board/g2000/MAINTAINERS @@ -0,0 +1,6 @@ +G2000 BOARD +M: Matthias Fuchs <matthias.fuchs@esd-electronics.com> +S: Maintained +F: board/g2000/ +F: include/configs/G2000.h +F: configs/G2000_defconfig diff --git a/board/gaisler/gr_cpci_ax2000/Kconfig b/board/gaisler/gr_cpci_ax2000/Kconfig new file mode 100644 index 0000000..d5a2eb4 --- /dev/null +++ b/board/gaisler/gr_cpci_ax2000/Kconfig @@ -0,0 +1,19 @@ +if TARGET_GR_CPCI_AX2000 + +config SYS_CPU + string + default "leon3" + +config SYS_BOARD + string + default "gr_cpci_ax2000" + +config SYS_VENDOR + string + default "gaisler" + +config SYS_CONFIG_NAME + string + default "gr_cpci_ax2000" + +endif diff --git a/board/gaisler/gr_cpci_ax2000/MAINTAINERS b/board/gaisler/gr_cpci_ax2000/MAINTAINERS new file mode 100644 index 0000000..493c31e --- /dev/null +++ b/board/gaisler/gr_cpci_ax2000/MAINTAINERS @@ -0,0 +1,6 @@ +GR_CPCI_AX2000 BOARD +M: - +S: Maintained +F: board/gaisler/gr_cpci_ax2000/ +F: include/configs/gr_cpci_ax2000.h +F: configs/gr_cpci_ax2000_defconfig diff --git a/board/gaisler/gr_ep2s60/Kconfig b/board/gaisler/gr_ep2s60/Kconfig new file mode 100644 index 0000000..e742ea8 --- /dev/null +++ b/board/gaisler/gr_ep2s60/Kconfig @@ -0,0 +1,19 @@ +if TARGET_GR_EP2S60 + +config SYS_CPU + string + default "leon3" + +config SYS_BOARD + string + default "gr_ep2s60" + +config SYS_VENDOR + string + default "gaisler" + +config SYS_CONFIG_NAME + string + default "gr_ep2s60" + +endif diff --git a/board/gaisler/gr_ep2s60/MAINTAINERS b/board/gaisler/gr_ep2s60/MAINTAINERS new file mode 100644 index 0000000..151bef1 --- /dev/null +++ b/board/gaisler/gr_ep2s60/MAINTAINERS @@ -0,0 +1,6 @@ +GR_EP2S60 BOARD +M: - +S: Maintained +F: board/gaisler/gr_ep2s60/ +F: include/configs/gr_ep2s60.h +F: configs/gr_ep2s60_defconfig diff --git a/board/gaisler/gr_xc3s_1500/Kconfig b/board/gaisler/gr_xc3s_1500/Kconfig new file mode 100644 index 0000000..6d9f107 --- /dev/null +++ b/board/gaisler/gr_xc3s_1500/Kconfig @@ -0,0 +1,19 @@ +if TARGET_GR_XC3S_1500 + +config SYS_CPU + string + default "leon3" + +config SYS_BOARD + string + default "gr_xc3s_1500" + +config SYS_VENDOR + string + default "gaisler" + +config SYS_CONFIG_NAME + string + default "gr_xc3s_1500" + +endif diff --git a/board/gaisler/gr_xc3s_1500/MAINTAINERS b/board/gaisler/gr_xc3s_1500/MAINTAINERS new file mode 100644 index 0000000..187f323 --- /dev/null +++ b/board/gaisler/gr_xc3s_1500/MAINTAINERS @@ -0,0 +1,6 @@ +GR_XC3S_1500 BOARD +M: - +S: Maintained +F: board/gaisler/gr_xc3s_1500/ +F: include/configs/gr_xc3s_1500.h +F: configs/gr_xc3s_1500_defconfig diff --git a/board/gaisler/grsim/Kconfig b/board/gaisler/grsim/Kconfig new file mode 100644 index 0000000..10f51e1 --- /dev/null +++ b/board/gaisler/grsim/Kconfig @@ -0,0 +1,19 @@ +if TARGET_GRSIM + +config SYS_CPU + string + default "leon3" + +config SYS_BOARD + string + default "grsim" + +config SYS_VENDOR + string + default "gaisler" + +config SYS_CONFIG_NAME + string + default "grsim" + +endif diff --git a/board/gaisler/grsim/MAINTAINERS b/board/gaisler/grsim/MAINTAINERS new file mode 100644 index 0000000..acb863c --- /dev/null +++ b/board/gaisler/grsim/MAINTAINERS @@ -0,0 +1,6 @@ +GRSIM BOARD +M: - +S: Maintained +F: board/gaisler/grsim/ +F: include/configs/grsim.h +F: configs/grsim_defconfig diff --git a/board/gaisler/grsim_leon2/Kconfig b/board/gaisler/grsim_leon2/Kconfig new file mode 100644 index 0000000..8dd2d27 --- /dev/null +++ b/board/gaisler/grsim_leon2/Kconfig @@ -0,0 +1,19 @@ +if TARGET_GRSIM_LEON2 + +config SYS_CPU + string + default "leon2" + +config SYS_BOARD + string + default "grsim_leon2" + +config SYS_VENDOR + string + default "gaisler" + +config SYS_CONFIG_NAME + string + default "grsim_leon2" + +endif diff --git a/board/gaisler/grsim_leon2/MAINTAINERS b/board/gaisler/grsim_leon2/MAINTAINERS new file mode 100644 index 0000000..6da9b78 --- /dev/null +++ b/board/gaisler/grsim_leon2/MAINTAINERS @@ -0,0 +1,6 @@ +GRSIM_LEON2 BOARD +M: - +S: Maintained +F: board/gaisler/grsim_leon2/ +F: include/configs/grsim_leon2.h +F: configs/grsim_leon2_defconfig diff --git a/board/galaxy5200/Kconfig b/board/galaxy5200/Kconfig new file mode 100644 index 0000000..04f079c --- /dev/null +++ b/board/galaxy5200/Kconfig @@ -0,0 +1,11 @@ +if TARGET_GALAXY5200 + +config SYS_BOARD + string + default "galaxy5200" + +config SYS_CONFIG_NAME + string + default "galaxy5200" + +endif diff --git a/board/galaxy5200/MAINTAINERS b/board/galaxy5200/MAINTAINERS new file mode 100644 index 0000000..f070132 --- /dev/null +++ b/board/galaxy5200/MAINTAINERS @@ -0,0 +1,7 @@ +GALAXY5200 BOARD +M: Eric Millbrandt <emillbrandt@dekaresearch.com> +S: Orphan (since 2014-06) +F: board/galaxy5200/ +F: include/configs/galaxy5200.h +F: configs/galaxy5200_defconfig +F: configs/galaxy5200_LOWBOOT_defconfig diff --git a/board/gateworks/gw_ventana/Kconfig b/board/gateworks/gw_ventana/Kconfig new file mode 100644 index 0000000..a9ff70a --- /dev/null +++ b/board/gateworks/gw_ventana/Kconfig @@ -0,0 +1,23 @@ +if TARGET_GW_VENTANA + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "gw_ventana" + +config SYS_VENDOR + string + default "gateworks" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "gw_ventana" + +endif diff --git a/board/gateworks/gw_ventana/MAINTAINERS b/board/gateworks/gw_ventana/MAINTAINERS new file mode 100644 index 0000000..b44fb4d --- /dev/null +++ b/board/gateworks/gw_ventana/MAINTAINERS @@ -0,0 +1,6 @@ +GW_VENTANA BOARD +M: Tim Harvey <tharvey@gateworks.com> +S: Maintained +F: board/gateworks/gw_ventana/ +F: include/configs/gw_ventana.h +F: configs/gwventana_defconfig diff --git a/board/gdsys/405ep/Kconfig b/board/gdsys/405ep/Kconfig new file mode 100644 index 0000000..8a5d3f5 --- /dev/null +++ b/board/gdsys/405ep/Kconfig @@ -0,0 +1,63 @@ +if TARGET_DLVISION_10G + +config SYS_BOARD + string + default "405ep" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "dlvision-10g" + +endif + +if TARGET_IO + +config SYS_BOARD + string + default "405ep" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "io" + +endif + +if TARGET_IOCON + +config SYS_BOARD + string + default "405ep" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "iocon" + +endif + +if TARGET_NEO + +config SYS_BOARD + string + default "405ep" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "neo" + +endif diff --git a/board/gdsys/405ep/MAINTAINERS b/board/gdsys/405ep/MAINTAINERS new file mode 100644 index 0000000..1403880 --- /dev/null +++ b/board/gdsys/405ep/MAINTAINERS @@ -0,0 +1,12 @@ +405EP BOARD +M: Dirk Eibach <eibach@gdsys.de> +S: Maintained +F: board/gdsys/405ep/ +F: include/configs/dlvision-10g.h +F: configs/dlvision-10g_defconfig +F: include/configs/io.h +F: configs/io_defconfig +F: include/configs/iocon.h +F: configs/iocon_defconfig +F: include/configs/neo.h +F: configs/neo_defconfig diff --git a/board/gdsys/405ex/Kconfig b/board/gdsys/405ex/Kconfig new file mode 100644 index 0000000..b4fb975 --- /dev/null +++ b/board/gdsys/405ex/Kconfig @@ -0,0 +1,15 @@ +if TARGET_IO64 + +config SYS_BOARD + string + default "405ex" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "io64" + +endif diff --git a/board/gdsys/405ex/MAINTAINERS b/board/gdsys/405ex/MAINTAINERS new file mode 100644 index 0000000..395b1ac --- /dev/null +++ b/board/gdsys/405ex/MAINTAINERS @@ -0,0 +1,6 @@ +405EX BOARD +M: Dirk Eibach <eibach@gdsys.de> +S: Maintained +F: board/gdsys/405ex/ +F: include/configs/io64.h +F: configs/io64_defconfig diff --git a/board/gdsys/dlvision/Kconfig b/board/gdsys/dlvision/Kconfig new file mode 100644 index 0000000..af8334e --- /dev/null +++ b/board/gdsys/dlvision/Kconfig @@ -0,0 +1,15 @@ +if TARGET_DLVISION + +config SYS_BOARD + string + default "dlvision" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "dlvision" + +endif diff --git a/board/gdsys/dlvision/MAINTAINERS b/board/gdsys/dlvision/MAINTAINERS new file mode 100644 index 0000000..e4d40f8 --- /dev/null +++ b/board/gdsys/dlvision/MAINTAINERS @@ -0,0 +1,6 @@ +DLVISION BOARD +M: Dirk Eibach <eibach@gdsys.de> +S: Maintained +F: board/gdsys/dlvision/ +F: include/configs/dlvision.h +F: configs/dlvision_defconfig diff --git a/board/gdsys/gdppc440etx/Kconfig b/board/gdsys/gdppc440etx/Kconfig new file mode 100644 index 0000000..5a05c1c --- /dev/null +++ b/board/gdsys/gdppc440etx/Kconfig @@ -0,0 +1,15 @@ +if TARGET_GDPPC440ETX + +config SYS_BOARD + string + default "gdppc440etx" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "gdppc440etx" + +endif diff --git a/board/gdsys/gdppc440etx/MAINTAINERS b/board/gdsys/gdppc440etx/MAINTAINERS new file mode 100644 index 0000000..cd8d1c6 --- /dev/null +++ b/board/gdsys/gdppc440etx/MAINTAINERS @@ -0,0 +1,6 @@ +GDPPC440ETX BOARD +M: Dirk Eibach <eibach@gdsys.de> +S: Maintained +F: board/gdsys/gdppc440etx/ +F: include/configs/gdppc440etx.h +F: configs/gdppc440etx_defconfig diff --git a/board/gdsys/intip/Kconfig b/board/gdsys/intip/Kconfig new file mode 100644 index 0000000..7be439c --- /dev/null +++ b/board/gdsys/intip/Kconfig @@ -0,0 +1,15 @@ +if TARGET_INTIP + +config SYS_BOARD + string + default "intip" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "intip" + +endif diff --git a/board/gdsys/intip/MAINTAINERS b/board/gdsys/intip/MAINTAINERS new file mode 100644 index 0000000..c99d507 --- /dev/null +++ b/board/gdsys/intip/MAINTAINERS @@ -0,0 +1,7 @@ +INTIP BOARD +M: Dirk Eibach <eibach@gdsys.de> +S: Maintained +F: board/gdsys/intip/ +F: include/configs/intip.h +F: configs/devconcenter_defconfig +F: configs/intip_defconfig diff --git a/board/gdsys/p1022/Kconfig b/board/gdsys/p1022/Kconfig new file mode 100644 index 0000000..277ed7d --- /dev/null +++ b/board/gdsys/p1022/Kconfig @@ -0,0 +1,15 @@ +if TARGET_CONTROLCENTERD + +config SYS_BOARD + string + default "p1022" + +config SYS_VENDOR + string + default "gdsys" + +config SYS_CONFIG_NAME + string + default "controlcenterd" + +endif diff --git a/board/gdsys/p1022/MAINTAINERS b/board/gdsys/p1022/MAINTAINERS new file mode 100644 index 0000000..5119fbb --- /dev/null +++ b/board/gdsys/p1022/MAINTAINERS @@ -0,0 +1,9 @@ +P1022 BOARD +M: Dirk Eibach <eibach@gdsys.de> +S: Maintained +F: board/gdsys/p1022/ +F: include/configs/controlcenterd.h +F: configs/controlcenterd_36BIT_SDCARD_defconfig +F: configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig +F: configs/controlcenterd_TRAILBLAZER_defconfig +F: configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig diff --git a/board/gen860t/Kconfig b/board/gen860t/Kconfig new file mode 100644 index 0000000..438f7cc --- /dev/null +++ b/board/gen860t/Kconfig @@ -0,0 +1,11 @@ +if TARGET_GEN860T + +config SYS_BOARD + string + default "gen860t" + +config SYS_CONFIG_NAME + string + default "GEN860T" + +endif diff --git a/board/gen860t/MAINTAINERS b/board/gen860t/MAINTAINERS new file mode 100644 index 0000000..c5d3da3 --- /dev/null +++ b/board/gen860t/MAINTAINERS @@ -0,0 +1,7 @@ +GEN860T BOARD +M: Keith Outwater <Keith_Outwater@mvis.com> +S: Orphan (since 2014-06) +F: board/gen860t/ +F: include/configs/GEN860T.h +F: configs/GEN860T_defconfig +F: configs/GEN860T_SC_defconfig diff --git a/board/genesi/mx51_efikamx/Kconfig b/board/genesi/mx51_efikamx/Kconfig new file mode 100644 index 0000000..adfddeb --- /dev/null +++ b/board/genesi/mx51_efikamx/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX51_EFIKAMX + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mx51_efikamx" + +config SYS_VENDOR + string + default "genesi" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "mx51_efikamx" + +endif diff --git a/board/genesi/mx51_efikamx/MAINTAINERS b/board/genesi/mx51_efikamx/MAINTAINERS new file mode 100644 index 0000000..a85df77 --- /dev/null +++ b/board/genesi/mx51_efikamx/MAINTAINERS @@ -0,0 +1,7 @@ +MX51_EFIKAMX BOARD +M: - +S: Maintained +F: board/genesi/mx51_efikamx/ +F: include/configs/mx51_efikamx.h +F: configs/mx51_efikamx_defconfig +F: configs/mx51_efikasb_defconfig diff --git a/board/gumstix/duovero/Kconfig b/board/gumstix/duovero/Kconfig new file mode 100644 index 0000000..d1b5c66 --- /dev/null +++ b/board/gumstix/duovero/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DUOVERO + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "duovero" + +config SYS_VENDOR + string + default "gumstix" + +config SYS_SOC + string + default "omap4" + +config SYS_CONFIG_NAME + string + default "duovero" + +endif diff --git a/board/gumstix/duovero/MAINTAINERS b/board/gumstix/duovero/MAINTAINERS new file mode 100644 index 0000000..87cd4e6 --- /dev/null +++ b/board/gumstix/duovero/MAINTAINERS @@ -0,0 +1,6 @@ +DUOVERO BOARD +M: Ash Charles <ash@gumstix.com> +S: Maintained +F: board/gumstix/duovero/ +F: include/configs/duovero.h +F: configs/duovero_defconfig diff --git a/board/gumstix/pepper/Kconfig b/board/gumstix/pepper/Kconfig new file mode 100644 index 0000000..290b428 --- /dev/null +++ b/board/gumstix/pepper/Kconfig @@ -0,0 +1,23 @@ +if TARGET_PEPPER + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "pepper" + +config SYS_VENDOR + string + default "gumstix" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "pepper" + +endif diff --git a/board/gumstix/pepper/MAINTAINERS b/board/gumstix/pepper/MAINTAINERS new file mode 100644 index 0000000..ae860ec --- /dev/null +++ b/board/gumstix/pepper/MAINTAINERS @@ -0,0 +1,6 @@ +PEPPER BOARD +M: Ash Charles <ash@gumstix.com> +S: Maintained +F: board/gumstix/pepper/ +F: include/configs/pepper.h +F: configs/pepper_defconfig diff --git a/board/gw8260/Kconfig b/board/gw8260/Kconfig new file mode 100644 index 0000000..ce8d1b0 --- /dev/null +++ b/board/gw8260/Kconfig @@ -0,0 +1,11 @@ +if TARGET_GW8260 + +config SYS_BOARD + string + default "gw8260" + +config SYS_CONFIG_NAME + string + default "gw8260" + +endif diff --git a/board/gw8260/MAINTAINERS b/board/gw8260/MAINTAINERS new file mode 100644 index 0000000..5268d19 --- /dev/null +++ b/board/gw8260/MAINTAINERS @@ -0,0 +1,6 @@ +GW8260 BOARD +M: Oliver Brown <obrown@adventnetworks.com> +S: Maintained +F: board/gw8260/ +F: include/configs/gw8260.h +F: configs/gw8260_defconfig diff --git a/board/h2200/Kconfig b/board/h2200/Kconfig new file mode 100644 index 0000000..f36b4d9 --- /dev/null +++ b/board/h2200/Kconfig @@ -0,0 +1,15 @@ +if TARGET_H2200 + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "h2200" + +config SYS_CONFIG_NAME + string + default "h2200" + +endif diff --git a/board/h2200/MAINTAINERS b/board/h2200/MAINTAINERS new file mode 100644 index 0000000..b66ff51 --- /dev/null +++ b/board/h2200/MAINTAINERS @@ -0,0 +1,6 @@ +H2200 BOARD +M: Lukasz Dalek <luk0104@gmail.com> +S: Maintained +F: board/h2200/ +F: include/configs/h2200.h +F: configs/h2200_defconfig diff --git a/board/hale/tt01/Kconfig b/board/hale/tt01/Kconfig new file mode 100644 index 0000000..549c18b --- /dev/null +++ b/board/hale/tt01/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TT01 + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "tt01" + +config SYS_VENDOR + string + default "hale" + +config SYS_SOC + string + default "mx31" + +config SYS_CONFIG_NAME + string + default "tt01" + +endif diff --git a/board/hale/tt01/MAINTAINERS b/board/hale/tt01/MAINTAINERS new file mode 100644 index 0000000..2f582be --- /dev/null +++ b/board/hale/tt01/MAINTAINERS @@ -0,0 +1,6 @@ +TT01 BOARD +M: Helmut Raiger <helmut.raiger@hale.at> +S: Maintained +F: board/hale/tt01/ +F: include/configs/tt01.h +F: configs/tt01_defconfig diff --git a/board/hermes/Kconfig b/board/hermes/Kconfig new file mode 100644 index 0000000..9d80650 --- /dev/null +++ b/board/hermes/Kconfig @@ -0,0 +1,11 @@ +if TARGET_HERMES + +config SYS_BOARD + string + default "hermes" + +config SYS_CONFIG_NAME + string + default "hermes" + +endif diff --git a/board/hermes/MAINTAINERS b/board/hermes/MAINTAINERS new file mode 100644 index 0000000..a596dad --- /dev/null +++ b/board/hermes/MAINTAINERS @@ -0,0 +1,6 @@ +HERMES BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/hermes/ +F: include/configs/hermes.h +F: configs/hermes_defconfig diff --git a/board/highbank/Kconfig b/board/highbank/Kconfig new file mode 100644 index 0000000..1c32490 --- /dev/null +++ b/board/highbank/Kconfig @@ -0,0 +1,19 @@ +if TARGET_HIGHBANK + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "highbank" + +config SYS_SOC + string + default "highbank" + +config SYS_CONFIG_NAME + string + default "highbank" + +endif diff --git a/board/highbank/MAINTAINERS b/board/highbank/MAINTAINERS new file mode 100644 index 0000000..69ddedd --- /dev/null +++ b/board/highbank/MAINTAINERS @@ -0,0 +1,6 @@ +HIGHBANK BOARD +M: Rob Herring <robh@kernel.org> +S: Maintained +F: board/highbank/ +F: include/configs/highbank.h +F: configs/highbank_defconfig diff --git a/board/htkw/mcx/Kconfig b/board/htkw/mcx/Kconfig new file mode 100644 index 0000000..1e2c679 --- /dev/null +++ b/board/htkw/mcx/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MCX + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mcx" + +config SYS_VENDOR + string + default "htkw" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "mcx" + +endif diff --git a/board/htkw/mcx/MAINTAINERS b/board/htkw/mcx/MAINTAINERS new file mode 100644 index 0000000..c5f8873 --- /dev/null +++ b/board/htkw/mcx/MAINTAINERS @@ -0,0 +1,6 @@ +MCX BOARD +M: Ilya Yanok <yanok@emcraft.com> +S: Maintained +F: board/htkw/mcx/ +F: include/configs/mcx.h +F: configs/mcx_defconfig diff --git a/board/hymod/Kconfig b/board/hymod/Kconfig new file mode 100644 index 0000000..106a837 --- /dev/null +++ b/board/hymod/Kconfig @@ -0,0 +1,11 @@ +if TARGET_HYMOD + +config SYS_BOARD + string + default "hymod" + +config SYS_CONFIG_NAME + string + default "hymod" + +endif diff --git a/board/hymod/MAINTAINERS b/board/hymod/MAINTAINERS new file mode 100644 index 0000000..e27fe97 --- /dev/null +++ b/board/hymod/MAINTAINERS @@ -0,0 +1,6 @@ +HYMOD BOARD +M: Murray Jensen <Murray.Jensen@csiro.au> +S: Maintained +F: board/hymod/ +F: include/configs/hymod.h +F: configs/hymod_defconfig diff --git a/board/ibf-dsp561/Kconfig b/board/ibf-dsp561/Kconfig new file mode 100644 index 0000000..5183aff --- /dev/null +++ b/board/ibf-dsp561/Kconfig @@ -0,0 +1,11 @@ +if TARGET_IBF_DSP561 + +config SYS_BOARD + string + default "ibf-dsp561" + +config SYS_CONFIG_NAME + string + default "ibf-dsp561" + +endif diff --git a/board/ibf-dsp561/MAINTAINERS b/board/ibf-dsp561/MAINTAINERS new file mode 100644 index 0000000..dfd0f90 --- /dev/null +++ b/board/ibf-dsp561/MAINTAINERS @@ -0,0 +1,6 @@ +IBF-DSP561 BOARD +M: I-SYST Micromodule <support@i-syst.com> +S: Maintained +F: board/ibf-dsp561/ +F: include/configs/ibf-dsp561.h +F: configs/ibf-dsp561_defconfig diff --git a/board/icecube/Kconfig b/board/icecube/Kconfig new file mode 100644 index 0000000..d409cd7 --- /dev/null +++ b/board/icecube/Kconfig @@ -0,0 +1,11 @@ +if TARGET_ICECUBE + +config SYS_BOARD + string + default "icecube" + +config SYS_CONFIG_NAME + string + default "IceCube" + +endif diff --git a/board/icecube/MAINTAINERS b/board/icecube/MAINTAINERS new file mode 100644 index 0000000..02e6c04 --- /dev/null +++ b/board/icecube/MAINTAINERS @@ -0,0 +1,21 @@ +ICECUBE BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/icecube/ +F: include/configs/IceCube.h +F: configs/icecube_5200_defconfig + +ICECUBE_5200_DDR BOARD +M: - +S: Maintained +F: configs/icecube_5200_DDR_defconfig +F: configs/icecube_5200_DDR_LOWBOOT_defconfig +F: configs/icecube_5200_DDR_LOWBOOT08_defconfig +F: configs/icecube_5200_LOWBOOT_defconfig +F: configs/icecube_5200_LOWBOOT08_defconfig +F: configs/Lite5200_defconfig +F: configs/Lite5200_LOWBOOT_defconfig +F: configs/Lite5200_LOWBOOT08_defconfig +F: configs/lite5200b_defconfig +F: configs/lite5200b_LOWBOOT_defconfig +F: configs/lite5200b_PM_defconfig diff --git a/board/icpdas/lp8x4x/Kconfig b/board/icpdas/lp8x4x/Kconfig new file mode 100644 index 0000000..6d58984 --- /dev/null +++ b/board/icpdas/lp8x4x/Kconfig @@ -0,0 +1,19 @@ +if TARGET_LP8X4X + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "lp8x4x" + +config SYS_VENDOR + string + default "icpdas" + +config SYS_CONFIG_NAME + string + default "lp8x4x" + +endif diff --git a/board/icpdas/lp8x4x/MAINTAINERS b/board/icpdas/lp8x4x/MAINTAINERS new file mode 100644 index 0000000..90a82e3 --- /dev/null +++ b/board/icpdas/lp8x4x/MAINTAINERS @@ -0,0 +1,6 @@ +LP8X4X BOARD +M: Sergey Yanovich <ynvich@gmail.com> +S: Maintained +F: board/icpdas/lp8x4x/ +F: include/configs/lp8x4x.h +F: configs/lp8x4x_defconfig diff --git a/board/icu862/Kconfig b/board/icu862/Kconfig new file mode 100644 index 0000000..d2a7a0a --- /dev/null +++ b/board/icu862/Kconfig @@ -0,0 +1,11 @@ +if TARGET_ICU862 + +config SYS_BOARD + string + default "icu862" + +config SYS_CONFIG_NAME + string + default "ICU862" + +endif diff --git a/board/icu862/MAINTAINERS b/board/icu862/MAINTAINERS new file mode 100644 index 0000000..7fe16d1 --- /dev/null +++ b/board/icu862/MAINTAINERS @@ -0,0 +1,7 @@ +ICU862 BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/icu862/ +F: include/configs/ICU862.h +F: configs/ICU862_defconfig +F: configs/ICU862_100MHz_defconfig diff --git a/board/ids/ids8247/Kconfig b/board/ids/ids8247/Kconfig new file mode 100644 index 0000000..a80af9e --- /dev/null +++ b/board/ids/ids8247/Kconfig @@ -0,0 +1,15 @@ +if TARGET_IDS8247 + +config SYS_BOARD + string + default "ids8247" + +config SYS_VENDOR + string + default "ids" + +config SYS_CONFIG_NAME + string + default "IDS8247" + +endif diff --git a/board/ids/ids8247/MAINTAINERS b/board/ids/ids8247/MAINTAINERS new file mode 100644 index 0000000..3173cdf --- /dev/null +++ b/board/ids/ids8247/MAINTAINERS @@ -0,0 +1,6 @@ +IDS8247 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/ids/ids8247/ +F: include/configs/IDS8247.h +F: configs/IDS8247_defconfig diff --git a/board/ids/ids8313/Kconfig b/board/ids/ids8313/Kconfig new file mode 100644 index 0000000..b38877b --- /dev/null +++ b/board/ids/ids8313/Kconfig @@ -0,0 +1,15 @@ +if TARGET_IDS8313 + +config SYS_BOARD + string + default "ids8313" + +config SYS_VENDOR + string + default "ids" + +config SYS_CONFIG_NAME + string + default "ids8313" + +endif diff --git a/board/ids/ids8313/MAINTAINERS b/board/ids/ids8313/MAINTAINERS new file mode 100644 index 0000000..c5b2f9e --- /dev/null +++ b/board/ids/ids8313/MAINTAINERS @@ -0,0 +1,6 @@ +IDS8313 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/ids/ids8313/ +F: include/configs/ids8313.h +F: configs/ids8313_defconfig diff --git a/board/ifm/ac14xx/Kconfig b/board/ifm/ac14xx/Kconfig new file mode 100644 index 0000000..0772d57 --- /dev/null +++ b/board/ifm/ac14xx/Kconfig @@ -0,0 +1,15 @@ +if TARGET_AC14XX + +config SYS_BOARD + string + default "ac14xx" + +config SYS_VENDOR + string + default "ifm" + +config SYS_CONFIG_NAME + string + default "ac14xx" + +endif diff --git a/board/ifm/ac14xx/MAINTAINERS b/board/ifm/ac14xx/MAINTAINERS new file mode 100644 index 0000000..8fd74e5 --- /dev/null +++ b/board/ifm/ac14xx/MAINTAINERS @@ -0,0 +1,6 @@ +AC14XX BOARD +M: Anatolij Gustschin <agust@denx.de> +S: Maintained +F: board/ifm/ac14xx/ +F: include/configs/ac14xx.h +F: configs/ac14xx_defconfig diff --git a/board/ifm/o2dnt2/Kconfig b/board/ifm/o2dnt2/Kconfig new file mode 100644 index 0000000..53e9c0f --- /dev/null +++ b/board/ifm/o2dnt2/Kconfig @@ -0,0 +1,95 @@ +if TARGET_O2D + +config SYS_BOARD + string + default "o2dnt2" + +config SYS_VENDOR + string + default "ifm" + +config SYS_CONFIG_NAME + string + default "o2d" + +endif + +if TARGET_O2D300 + +config SYS_BOARD + string + default "o2dnt2" + +config SYS_VENDOR + string + default "ifm" + +config SYS_CONFIG_NAME + string + default "o2d300" + +endif + +if TARGET_O2DNT2 + +config SYS_BOARD + string + default "o2dnt2" + +config SYS_VENDOR + string + default "ifm" + +config SYS_CONFIG_NAME + string + default "o2dnt2" + +endif + +if TARGET_O2I + +config SYS_BOARD + string + default "o2dnt2" + +config SYS_VENDOR + string + default "ifm" + +config SYS_CONFIG_NAME + string + default "o2i" + +endif + +if TARGET_O2MNT + +config SYS_BOARD + string + default "o2dnt2" + +config SYS_VENDOR + string + default "ifm" + +config SYS_CONFIG_NAME + string + default "o2mnt" + +endif + +if TARGET_O3DNT + +config SYS_BOARD + string + default "o2dnt2" + +config SYS_VENDOR + string + default "ifm" + +config SYS_CONFIG_NAME + string + default "o3dnt" + +endif diff --git a/board/ifm/o2dnt2/MAINTAINERS b/board/ifm/o2dnt2/MAINTAINERS new file mode 100644 index 0000000..002f89e --- /dev/null +++ b/board/ifm/o2dnt2/MAINTAINERS @@ -0,0 +1,20 @@ +O2DNT2 BOARD +M: Anatolij Gustschin <agust@denx.de> +S: Maintained +F: board/ifm/o2dnt2/ +F: include/configs/o2d.h +F: configs/O2D_defconfig +F: include/configs/o2d300.h +F: configs/O2D300_defconfig +F: include/configs/o2dnt2.h +F: configs/O2DNT2_defconfig +F: configs/O2DNT2_RAMBOOT_defconfig +F: include/configs/o2i.h +F: configs/O2I_defconfig +F: include/configs/o2mnt.h +F: configs/O2MNT_defconfig +F: configs/O2MNT_O2M110_defconfig +F: configs/O2MNT_O2M112_defconfig +F: configs/O2MNT_O2M113_defconfig +F: include/configs/o3dnt.h +F: configs/O3DNT_defconfig diff --git a/board/imgtec/malta/Kconfig b/board/imgtec/malta/Kconfig new file mode 100644 index 0000000..8e5cab1 --- /dev/null +++ b/board/imgtec/malta/Kconfig @@ -0,0 +1,19 @@ +if TARGET_MALTA + +config SYS_CPU + string + default "mips32" + +config SYS_BOARD + string + default "malta" + +config SYS_VENDOR + string + default "imgtec" + +config SYS_CONFIG_NAME + string + default "malta" + +endif diff --git a/board/imgtec/malta/MAINTAINERS b/board/imgtec/malta/MAINTAINERS new file mode 100644 index 0000000..a0b3284 --- /dev/null +++ b/board/imgtec/malta/MAINTAINERS @@ -0,0 +1,7 @@ +MALTA BOARD +M: Paul Burton <paul.burton@imgtec.com> +S: Maintained +F: board/imgtec/malta/ +F: include/configs/malta.h +F: configs/malta_defconfig +F: configs/maltael_defconfig diff --git a/board/imx31_phycore/Kconfig b/board/imx31_phycore/Kconfig new file mode 100644 index 0000000..c74f4a6 --- /dev/null +++ b/board/imx31_phycore/Kconfig @@ -0,0 +1,19 @@ +if TARGET_IMX31_PHYCORE + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "imx31_phycore" + +config SYS_SOC + string + default "mx31" + +config SYS_CONFIG_NAME + string + default "imx31_phycore" + +endif diff --git a/board/imx31_phycore/MAINTAINERS b/board/imx31_phycore/MAINTAINERS new file mode 100644 index 0000000..efd5e77 --- /dev/null +++ b/board/imx31_phycore/MAINTAINERS @@ -0,0 +1,11 @@ +IMX31_PHYCORE BOARD +M: - +S: Maintained +F: board/imx31_phycore/ +F: include/configs/imx31_phycore.h +F: configs/imx31_phycore_defconfig + +IMX31_PHYCORE_EET BOARD +M: (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> +S: Orphan (since 2013-09) +F: configs/imx31_phycore_eet_defconfig diff --git a/board/in-circuit/grasshopper/Kconfig b/board/in-circuit/grasshopper/Kconfig new file mode 100644 index 0000000..da3bcc3 --- /dev/null +++ b/board/in-circuit/grasshopper/Kconfig @@ -0,0 +1,19 @@ +if TARGET_GRASSHOPPER + +config SYS_BOARD + string + default "grasshopper" + +config SYS_VENDOR + string + default "in-circuit" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "grasshopper" + +endif diff --git a/board/in-circuit/grasshopper/MAINTAINERS b/board/in-circuit/grasshopper/MAINTAINERS new file mode 100644 index 0000000..db8bd0a --- /dev/null +++ b/board/in-circuit/grasshopper/MAINTAINERS @@ -0,0 +1,6 @@ +GRASSHOPPER BOARD +M: Andreas Bießmann <andreas.devel@googlemail.com> +S: Maintained +F: board/in-circuit/grasshopper/ +F: include/configs/grasshopper.h +F: configs/grasshopper_defconfig diff --git a/board/inka4x0/Kconfig b/board/inka4x0/Kconfig new file mode 100644 index 0000000..44bca35 --- /dev/null +++ b/board/inka4x0/Kconfig @@ -0,0 +1,11 @@ +if TARGET_INKA4X0 + +config SYS_BOARD + string + default "inka4x0" + +config SYS_CONFIG_NAME + string + default "inka4x0" + +endif diff --git a/board/inka4x0/MAINTAINERS b/board/inka4x0/MAINTAINERS new file mode 100644 index 0000000..246b2d4 --- /dev/null +++ b/board/inka4x0/MAINTAINERS @@ -0,0 +1,6 @@ +INKA4X0 BOARD +M: Detlev Zundel <dzu@denx.de> +S: Maintained +F: board/inka4x0/ +F: include/configs/inka4x0.h +F: configs/inka4x0_defconfig diff --git a/board/intercontrol/digsy_mtc/Kconfig b/board/intercontrol/digsy_mtc/Kconfig new file mode 100644 index 0000000..0b14bc0 --- /dev/null +++ b/board/intercontrol/digsy_mtc/Kconfig @@ -0,0 +1,15 @@ +if TARGET_DIGSY_MTC + +config SYS_BOARD + string + default "digsy_mtc" + +config SYS_VENDOR + string + default "intercontrol" + +config SYS_CONFIG_NAME + string + default "digsy_mtc" + +endif diff --git a/board/intercontrol/digsy_mtc/MAINTAINERS b/board/intercontrol/digsy_mtc/MAINTAINERS new file mode 100644 index 0000000..c83ebcd --- /dev/null +++ b/board/intercontrol/digsy_mtc/MAINTAINERS @@ -0,0 +1,9 @@ +DIGSY_MTC BOARD +M: Werner Pfister <Pfister_Werner@intercontrol.de> +S: Maintained +F: board/intercontrol/digsy_mtc/ +F: include/configs/digsy_mtc.h +F: configs/digsy_mtc_defconfig +F: configs/digsy_mtc_RAMBOOT_defconfig +F: configs/digsy_mtc_rev5_defconfig +F: configs/digsy_mtc_rev5_RAMBOOT_defconfig diff --git a/board/iomega/iconnect/Kconfig b/board/iomega/iconnect/Kconfig new file mode 100644 index 0000000..8ac21d2 --- /dev/null +++ b/board/iomega/iconnect/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ICONNECT + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "iconnect" + +config SYS_VENDOR + string + default "iomega" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "iconnect" + +endif diff --git a/board/iomega/iconnect/MAINTAINERS b/board/iomega/iconnect/MAINTAINERS new file mode 100644 index 0000000..167cf07 --- /dev/null +++ b/board/iomega/iconnect/MAINTAINERS @@ -0,0 +1,6 @@ +ICONNECT BOARD +M: Luka Perkov <luka@openwrt.org> +S: Maintained +F: board/iomega/iconnect/ +F: include/configs/iconnect.h +F: configs/iconnect_defconfig diff --git a/board/ip04/Kconfig b/board/ip04/Kconfig new file mode 100644 index 0000000..95abe63 --- /dev/null +++ b/board/ip04/Kconfig @@ -0,0 +1,11 @@ +if TARGET_IP04 + +config SYS_BOARD + string + default "ip04" + +config SYS_CONFIG_NAME + string + default "ip04" + +endif diff --git a/board/ip04/MAINTAINERS b/board/ip04/MAINTAINERS new file mode 100644 index 0000000..278072b --- /dev/null +++ b/board/ip04/MAINTAINERS @@ -0,0 +1,6 @@ +IP04 BOARD +M: Brent Kandetzki <brentk@teleco.com> +S: Orphan (since 2014-06) +F: board/ip04/ +F: include/configs/ip04.h +F: configs/ip04_defconfig diff --git a/board/ip860/Kconfig b/board/ip860/Kconfig new file mode 100644 index 0000000..df1ce8d --- /dev/null +++ b/board/ip860/Kconfig @@ -0,0 +1,11 @@ +if TARGET_IP860 + +config SYS_BOARD + string + default "ip860" + +config SYS_CONFIG_NAME + string + default "IP860" + +endif diff --git a/board/ip860/MAINTAINERS b/board/ip860/MAINTAINERS new file mode 100644 index 0000000..36d5690 --- /dev/null +++ b/board/ip860/MAINTAINERS @@ -0,0 +1,6 @@ +IP860 BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/ip860/ +F: include/configs/IP860.h +F: configs/IP860_defconfig diff --git a/board/ipek01/Kconfig b/board/ipek01/Kconfig new file mode 100644 index 0000000..a2a1f86 --- /dev/null +++ b/board/ipek01/Kconfig @@ -0,0 +1,11 @@ +if TARGET_IPEK01 + +config SYS_BOARD + string + default "ipek01" + +config SYS_CONFIG_NAME + string + default "ipek01" + +endif diff --git a/board/ipek01/MAINTAINERS b/board/ipek01/MAINTAINERS new file mode 100644 index 0000000..060f8a5 --- /dev/null +++ b/board/ipek01/MAINTAINERS @@ -0,0 +1,6 @@ +IPEK01 BOARD +M: Wolfgang Grandegger <wg@denx.de> +S: Maintained +F: board/ipek01/ +F: include/configs/ipek01.h +F: configs/ipek01_defconfig diff --git a/board/iphase4539/Kconfig b/board/iphase4539/Kconfig new file mode 100644 index 0000000..1ce42f3 --- /dev/null +++ b/board/iphase4539/Kconfig @@ -0,0 +1,11 @@ +if TARGET_IPHASE4539 + +config SYS_BOARD + string + default "iphase4539" + +config SYS_CONFIG_NAME + string + default "IPHASE4539" + +endif diff --git a/board/iphase4539/MAINTAINERS b/board/iphase4539/MAINTAINERS new file mode 100644 index 0000000..ddf6814 --- /dev/null +++ b/board/iphase4539/MAINTAINERS @@ -0,0 +1,6 @@ +IPHASE4539 BOARD +M: Wolfgang Grandegger <wg@denx.de> +S: Maintained +F: board/iphase4539/ +F: include/configs/IPHASE4539.h +F: configs/IPHASE4539_defconfig diff --git a/board/isee/igep0033/Kconfig b/board/isee/igep0033/Kconfig new file mode 100644 index 0000000..cdb67ed --- /dev/null +++ b/board/isee/igep0033/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AM335X_IGEP0033 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "igep0033" + +config SYS_VENDOR + string + default "isee" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "am335x_igep0033" + +endif diff --git a/board/isee/igep0033/MAINTAINERS b/board/isee/igep0033/MAINTAINERS new file mode 100644 index 0000000..d162d77 --- /dev/null +++ b/board/isee/igep0033/MAINTAINERS @@ -0,0 +1,6 @@ +IGEP0033 BOARD +M: Enric Balletbo i Serra <eballetbo@iseebcn.com> +S: Maintained +F: board/isee/igep0033/ +F: include/configs/am335x_igep0033.h +F: configs/am335x_igep0033_defconfig diff --git a/board/isee/igep00x0/Kconfig b/board/isee/igep00x0/Kconfig new file mode 100644 index 0000000..c9f2969 --- /dev/null +++ b/board/isee/igep00x0/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP3_IGEP00X0 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "igep00x0" + +config SYS_VENDOR + string + default "isee" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_igep00x0" + +endif diff --git a/board/isee/igep00x0/MAINTAINERS b/board/isee/igep00x0/MAINTAINERS new file mode 100644 index 0000000..fe4a8cd --- /dev/null +++ b/board/isee/igep00x0/MAINTAINERS @@ -0,0 +1,14 @@ +IGEP00X0 BOARD +M: Enric Balletbo i Serra <eballetbo@iseebcn.com> +S: Maintained +F: board/isee/igep00x0/ +F: include/configs/omap3_igep00x0.h +F: configs/igep0020_defconfig +F: configs/igep0030_defconfig +F: configs/igep0032_defconfig + +IGEP0020_NAND BOARD +M: - +S: Maintained +F: configs/igep0020_nand_defconfig +F: configs/igep0030_nand_defconfig diff --git a/board/ivm/Kconfig b/board/ivm/Kconfig new file mode 100644 index 0000000..ab3da79 --- /dev/null +++ b/board/ivm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_IVML24 + +config SYS_BOARD + string + default "ivm" + +config SYS_CONFIG_NAME + string + default "IVML24" + +endif + +if TARGET_IVMS8 + +config SYS_BOARD + string + default "ivm" + +config SYS_CONFIG_NAME + string + default "IVMS8" + +endif diff --git a/board/ivm/MAINTAINERS b/board/ivm/MAINTAINERS new file mode 100644 index 0000000..6a9082c --- /dev/null +++ b/board/ivm/MAINTAINERS @@ -0,0 +1,12 @@ +IVM BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/ivm/ +F: include/configs/IVML24.h +F: configs/IVML24_defconfig +F: configs/IVML24_128_defconfig +F: configs/IVML24_256_defconfig +F: include/configs/IVMS8.h +F: configs/IVMS8_defconfig +F: configs/IVMS8_128_defconfig +F: configs/IVMS8_256_defconfig diff --git a/board/jornada/Kconfig b/board/jornada/Kconfig new file mode 100644 index 0000000..345d3b6 --- /dev/null +++ b/board/jornada/Kconfig @@ -0,0 +1,15 @@ +if TARGET_JORNADA + +config SYS_CPU + string + default "sa1100" + +config SYS_BOARD + string + default "jornada" + +config SYS_CONFIG_NAME + string + default "jornada" + +endif diff --git a/board/jornada/MAINTAINERS b/board/jornada/MAINTAINERS new file mode 100644 index 0000000..c77d745 --- /dev/null +++ b/board/jornada/MAINTAINERS @@ -0,0 +1,6 @@ +JORNADA BOARD +M: Kristoffer Ericson <kristoffer.ericson@gmail.com> +S: Maintained +F: board/jornada/ +F: include/configs/jornada.h +F: configs/jornada_defconfig diff --git a/board/jse/Kconfig b/board/jse/Kconfig new file mode 100644 index 0000000..bb265f2 --- /dev/null +++ b/board/jse/Kconfig @@ -0,0 +1,11 @@ +if TARGET_JSE + +config SYS_BOARD + string + default "jse" + +config SYS_CONFIG_NAME + string + default "JSE" + +endif diff --git a/board/jse/MAINTAINERS b/board/jse/MAINTAINERS new file mode 100644 index 0000000..818a5a0 --- /dev/null +++ b/board/jse/MAINTAINERS @@ -0,0 +1,6 @@ +JSE BOARD +M: Stephen Williams <steve@icarus.com> +S: Maintained +F: board/jse/ +F: include/configs/JSE.h +F: configs/JSE_defconfig diff --git a/board/jupiter/Kconfig b/board/jupiter/Kconfig new file mode 100644 index 0000000..36e43b7 --- /dev/null +++ b/board/jupiter/Kconfig @@ -0,0 +1,11 @@ +if TARGET_JUPITER + +config SYS_BOARD + string + default "jupiter" + +config SYS_CONFIG_NAME + string + default "jupiter" + +endif diff --git a/board/jupiter/MAINTAINERS b/board/jupiter/MAINTAINERS new file mode 100644 index 0000000..5a79a61 --- /dev/null +++ b/board/jupiter/MAINTAINERS @@ -0,0 +1,6 @@ +JUPITER BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/jupiter/ +F: include/configs/jupiter.h +F: configs/jupiter_defconfig diff --git a/board/karo/tk71/Kconfig b/board/karo/tk71/Kconfig new file mode 100644 index 0000000..546491b --- /dev/null +++ b/board/karo/tk71/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TK71 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "tk71" + +config SYS_VENDOR + string + default "karo" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "tk71" + +endif diff --git a/board/karo/tk71/MAINTAINERS b/board/karo/tk71/MAINTAINERS new file mode 100644 index 0000000..39b2b1d --- /dev/null +++ b/board/karo/tk71/MAINTAINERS @@ -0,0 +1,6 @@ +TK71 BOARD +M: - +S: Maintained +F: board/karo/tk71/ +F: include/configs/tk71.h +F: configs/tk71_defconfig diff --git a/board/karo/tx25/Kconfig b/board/karo/tx25/Kconfig new file mode 100644 index 0000000..095b1a5 --- /dev/null +++ b/board/karo/tx25/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TX25 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "tx25" + +config SYS_VENDOR + string + default "karo" + +config SYS_SOC + string + default "mx25" + +config SYS_CONFIG_NAME + string + default "tx25" + +endif diff --git a/board/karo/tx25/MAINTAINERS b/board/karo/tx25/MAINTAINERS new file mode 100644 index 0000000..2defe34 --- /dev/null +++ b/board/karo/tx25/MAINTAINERS @@ -0,0 +1,6 @@ +TX25 BOARD +M: John Rigby <jcrigby@gmail.com> +S: Maintained +F: board/karo/tx25/ +F: include/configs/tx25.h +F: configs/tx25_defconfig diff --git a/board/keymile/km82xx/Kconfig b/board/keymile/km82xx/Kconfig new file mode 100644 index 0000000..c29032a --- /dev/null +++ b/board/keymile/km82xx/Kconfig @@ -0,0 +1,15 @@ +if TARGET_KM82XX + +config SYS_BOARD + string + default "km82xx" + +config SYS_VENDOR + string + default "keymile" + +config SYS_CONFIG_NAME + string + default "km82xx" + +endif diff --git a/board/keymile/km82xx/MAINTAINERS b/board/keymile/km82xx/MAINTAINERS new file mode 100644 index 0000000..50e06b2 --- /dev/null +++ b/board/keymile/km82xx/MAINTAINERS @@ -0,0 +1,7 @@ +KM82XX BOARD +M: Holger Brunck <holger.brunck@keymile.com> +S: Maintained +F: board/keymile/km82xx/ +F: include/configs/km82xx.h +F: configs/mgcoge_defconfig +F: configs/mgcoge3ne_defconfig diff --git a/board/keymile/km83xx/Kconfig b/board/keymile/km83xx/Kconfig new file mode 100644 index 0000000..934c45d --- /dev/null +++ b/board/keymile/km83xx/Kconfig @@ -0,0 +1,47 @@ +if TARGET_KM8360 + +config SYS_BOARD + string + default "km83xx" + +config SYS_VENDOR + string + default "keymile" + +config SYS_CONFIG_NAME + string + default "km8360" + +endif + +if TARGET_SUVD3 + +config SYS_BOARD + string + default "km83xx" + +config SYS_VENDOR + string + default "keymile" + +config SYS_CONFIG_NAME + string + default "suvd3" + +endif + +if TARGET_TUXX1 + +config SYS_BOARD + string + default "km83xx" + +config SYS_VENDOR + string + default "keymile" + +config SYS_CONFIG_NAME + string + default "tuxx1" + +endif diff --git a/board/keymile/km83xx/MAINTAINERS b/board/keymile/km83xx/MAINTAINERS new file mode 100644 index 0000000..cee7e08 --- /dev/null +++ b/board/keymile/km83xx/MAINTAINERS @@ -0,0 +1,19 @@ +KM83XX BOARD +M: Holger Brunck <holger.brunck@keymile.com> +S: Maintained +F: board/keymile/km83xx/ +F: include/configs/km8360.h +F: configs/kmcoge5ne_defconfig +F: configs/kmeter1_defconfig +F: include/configs/tuxx1.h +F: configs/kmopti2_defconfig +F: include/configs/suvd3.h +F: configs/kmvect1_defconfig +F: configs/suvd3_defconfig +F: configs/tuge1_defconfig +F: configs/tuxx1_defconfig + +KMSUPX5 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: configs/kmsupx5_defconfig diff --git a/board/keymile/km_arm/Kconfig b/board/keymile/km_arm/Kconfig new file mode 100644 index 0000000..dec4626 --- /dev/null +++ b/board/keymile/km_arm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_KM_KIRKWOOD + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "km_arm" + +config SYS_VENDOR + string + default "keymile" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "km_kirkwood" + +endif diff --git a/board/keymile/km_arm/MAINTAINERS b/board/keymile/km_arm/MAINTAINERS new file mode 100644 index 0000000..079c803 --- /dev/null +++ b/board/keymile/km_arm/MAINTAINERS @@ -0,0 +1,14 @@ +KM_ARM BOARD +M: Valentin Longchamp <valentin.longchamp@keymile.com> +S: Maintained +F: board/keymile/km_arm/ +F: include/configs/km_kirkwood.h +F: configs/km_kirkwood_defconfig +F: configs/km_kirkwood_128m16_defconfig +F: configs/km_kirkwood_pci_defconfig +F: configs/kmcoge5un_defconfig +F: configs/kmnusa_defconfig +F: configs/kmsugp1_defconfig +F: configs/kmsuv31_defconfig +F: configs/mgcoge3un_defconfig +F: configs/portl2_defconfig diff --git a/board/keymile/kmp204x/Kconfig b/board/keymile/kmp204x/Kconfig new file mode 100644 index 0000000..0236f69 --- /dev/null +++ b/board/keymile/kmp204x/Kconfig @@ -0,0 +1,15 @@ +if TARGET_KMP204X + +config SYS_BOARD + string + default "kmp204x" + +config SYS_VENDOR + string + default "keymile" + +config SYS_CONFIG_NAME + string + default "kmp204x" + +endif diff --git a/board/keymile/kmp204x/MAINTAINERS b/board/keymile/kmp204x/MAINTAINERS new file mode 100644 index 0000000..93b6bad --- /dev/null +++ b/board/keymile/kmp204x/MAINTAINERS @@ -0,0 +1,7 @@ +KMP204X BOARD +M: Valentin Longchamp <valentin.longchamp@keymile.com> +S: Maintained +F: board/keymile/kmp204x/ +F: include/configs/kmp204x.h +F: configs/kmcoge4_defconfig +F: configs/kmlion1_defconfig diff --git a/board/keymile/kmp204x/kmp204x.c b/board/keymile/kmp204x/kmp204x.c index 6bc8eb8..cd08379 100644 --- a/board/keymile/kmp204x/kmp204x.c +++ b/board/keymile/kmp204x/kmp204x.c @@ -80,14 +80,29 @@ int get_scl(void) #define ZL30158_RST 8 #define BFTIC4_RST 0 +#define RSTRQSR1_WDT_RR 0x00200000 +#define RSTRQSR1_SW_RR 0x00100000 int board_early_init_f(void) { ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR); + bool cpuwd_flag = false; + + /* configure mode for uP reset request */ + qrio_uprstreq(UPREQ_CORE_RST); /* board only uses the DDR_MCK0, so disable the DDR_MCK1/2/3 */ setbits_be32(&gur->ddrclkdr, 0x001f000f); + /* set reset reason according CPU register */ + if ((gur->rstrqsr1 & (RSTRQSR1_WDT_RR | RSTRQSR1_SW_RR)) == + RSTRQSR1_WDT_RR) + cpuwd_flag = true; + + qrio_cpuwd_flag(cpuwd_flag); + /* clear CPU bits by writing 1 */ + setbits_be32(&gur->rstrqsr1, RSTRQSR1_WDT_RR | RSTRQSR1_SW_RR); + /* set the BFTIC's prstcfg to reset at power-up and unit reset only */ qrio_prstcfg(BFTIC4_RST, PRSTCFG_POWUP_UNIT_RST); /* and enable WD on it */ diff --git a/board/keymile/kmp204x/kmp204x.h b/board/keymile/kmp204x/kmp204x.h index afede99..e90e8ab 100644 --- a/board/keymile/kmp204x/kmp204x.h +++ b/board/keymile/kmp204x/kmp204x.h @@ -24,5 +24,12 @@ void qrio_wdmask(u8 bit, bool wden); void qrio_prstcfg(u8 bit, u8 mode); void qrio_set_leds(void); void qrio_enable_app_buffer(void); +void qrio_cpuwd_flag(bool flag); +int qrio_reset_reason(void); + +#define UPREQ_UNIT_RST 0x0 +#define UPREQ_CORE_RST 0x1 + +void qrio_uprstreq(u8 mode); void pci_of_setup(void *blob, bd_t *bd); diff --git a/board/keymile/kmp204x/qrio.c b/board/keymile/kmp204x/qrio.c index b6ba93a..edf3bf1 100644 --- a/board/keymile/kmp204x/qrio.c +++ b/board/keymile/kmp204x/qrio.c @@ -173,3 +173,35 @@ void qrio_enable_app_buffer(void) ctrll |= (CTRLL_WRB_BUFENA); out_8(qrio_base + CTRLL_OFF, ctrll); } + +#define REASON1_OFF 0x12 +#define REASON1_CPUWD 0x01 + +void qrio_cpuwd_flag(bool flag) +{ + u8 reason1; + void __iomem *qrio_base = (void *)CONFIG_SYS_QRIO_BASE; + reason1 = in_8(qrio_base + REASON1_OFF); + if (flag) + reason1 |= REASON1_CPUWD; + else + reason1 &= ~REASON1_CPUWD; + out_8(qrio_base + REASON1_OFF, reason1); +} + +#define RSTCFG_OFF 0x11 + +void qrio_uprstreq(u8 mode) +{ + u32 rstcfg; + void __iomem *qrio_base = (void *)CONFIG_SYS_QRIO_BASE; + + rstcfg = in_8(qrio_base + RSTCFG_OFF); + + if (mode & UPREQ_CORE_RST) + rstcfg |= UPREQ_CORE_RST; + else + rstcfg &= ~UPREQ_CORE_RST; + + out_8(qrio_base + RSTCFG_OFF, rstcfg); +} diff --git a/board/kmc/kzm9g/Kconfig b/board/kmc/kzm9g/Kconfig new file mode 100644 index 0000000..2d40173 --- /dev/null +++ b/board/kmc/kzm9g/Kconfig @@ -0,0 +1,23 @@ +if TARGET_KZM9G + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "kzm9g" + +config SYS_VENDOR + string + default "kmc" + +config SYS_SOC + string + default "rmobile" + +config SYS_CONFIG_NAME + string + default "kzm9g" + +endif diff --git a/board/kmc/kzm9g/MAINTAINERS b/board/kmc/kzm9g/MAINTAINERS new file mode 100644 index 0000000..411efd1 --- /dev/null +++ b/board/kmc/kzm9g/MAINTAINERS @@ -0,0 +1,7 @@ +KZM9G BOARD +M: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> +M: Tetsuyuki Kobayashi <koba@kmckk.co.jp> +S: Maintained +F: board/kmc/kzm9g/ +F: include/configs/kzm9g.h +F: configs/kzm9g_defconfig diff --git a/board/korat/Kconfig b/board/korat/Kconfig new file mode 100644 index 0000000..c23061c --- /dev/null +++ b/board/korat/Kconfig @@ -0,0 +1,11 @@ +if TARGET_KORAT + +config SYS_BOARD + string + default "korat" + +config SYS_CONFIG_NAME + string + default "korat" + +endif diff --git a/board/korat/MAINTAINERS b/board/korat/MAINTAINERS new file mode 100644 index 0000000..8b96846 --- /dev/null +++ b/board/korat/MAINTAINERS @@ -0,0 +1,7 @@ +KORAT BOARD +M: Larry Johnson <lrj@acm.org> +S: Maintained +F: board/korat/ +F: include/configs/korat.h +F: configs/korat_defconfig +F: configs/korat_perm_defconfig diff --git a/board/kup/kup4k/Kconfig b/board/kup/kup4k/Kconfig new file mode 100644 index 0000000..bac89aa --- /dev/null +++ b/board/kup/kup4k/Kconfig @@ -0,0 +1,15 @@ +if TARGET_KUP4K + +config SYS_BOARD + string + default "kup4k" + +config SYS_VENDOR + string + default "kup" + +config SYS_CONFIG_NAME + string + default "KUP4K" + +endif diff --git a/board/kup/kup4k/MAINTAINERS b/board/kup/kup4k/MAINTAINERS new file mode 100644 index 0000000..25d90cf --- /dev/null +++ b/board/kup/kup4k/MAINTAINERS @@ -0,0 +1,6 @@ +KUP4K BOARD +M: Klaus Heydeck <heydeck@kieback-peter.de> +S: Maintained +F: board/kup/kup4k/ +F: include/configs/KUP4K.h +F: configs/KUP4K_defconfig diff --git a/board/kup/kup4x/Kconfig b/board/kup/kup4x/Kconfig new file mode 100644 index 0000000..e04b919 --- /dev/null +++ b/board/kup/kup4x/Kconfig @@ -0,0 +1,15 @@ +if TARGET_KUP4X + +config SYS_BOARD + string + default "kup4x" + +config SYS_VENDOR + string + default "kup" + +config SYS_CONFIG_NAME + string + default "KUP4X" + +endif diff --git a/board/kup/kup4x/MAINTAINERS b/board/kup/kup4x/MAINTAINERS new file mode 100644 index 0000000..85159e4 --- /dev/null +++ b/board/kup/kup4x/MAINTAINERS @@ -0,0 +1,6 @@ +KUP4X BOARD +M: Klaus Heydeck <heydeck@kieback-peter.de> +S: Maintained +F: board/kup/kup4x/ +F: include/configs/KUP4X.h +F: configs/KUP4X_defconfig diff --git a/board/logicpd/am3517evm/Kconfig b/board/logicpd/am3517evm/Kconfig new file mode 100644 index 0000000..9bc5ae5 --- /dev/null +++ b/board/logicpd/am3517evm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AM3517_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "am3517evm" + +config SYS_VENDOR + string + default "logicpd" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "am3517_evm" + +endif diff --git a/board/logicpd/am3517evm/MAINTAINERS b/board/logicpd/am3517evm/MAINTAINERS new file mode 100644 index 0000000..7f03ac1 --- /dev/null +++ b/board/logicpd/am3517evm/MAINTAINERS @@ -0,0 +1,6 @@ +AM3517EVM BOARD +M: Vaibhav Hiremath <hvaibhav@ti.com> +S: Maintained +F: board/logicpd/am3517evm/ +F: include/configs/am3517_evm.h +F: configs/am3517_evm_defconfig diff --git a/board/logicpd/imx27lite/Kconfig b/board/logicpd/imx27lite/Kconfig new file mode 100644 index 0000000..f107267 --- /dev/null +++ b/board/logicpd/imx27lite/Kconfig @@ -0,0 +1,47 @@ +if TARGET_IMX27LITE + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "imx27lite" + +config SYS_VENDOR + string + default "logicpd" + +config SYS_SOC + string + default "mx27" + +config SYS_CONFIG_NAME + string + default "imx27lite" + +endif + +if TARGET_MAGNESIUM + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "imx27lite" + +config SYS_VENDOR + string + default "logicpd" + +config SYS_SOC + string + default "mx27" + +config SYS_CONFIG_NAME + string + default "magnesium" + +endif diff --git a/board/logicpd/imx27lite/MAINTAINERS b/board/logicpd/imx27lite/MAINTAINERS new file mode 100644 index 0000000..a7b22ac --- /dev/null +++ b/board/logicpd/imx27lite/MAINTAINERS @@ -0,0 +1,12 @@ +IMX27LITE BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/logicpd/imx27lite/ +F: include/configs/imx27lite.h +F: configs/imx27lite_defconfig + +MAGNESIUM BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: include/configs/magnesium.h +F: configs/magnesium_defconfig diff --git a/board/logicpd/imx31_litekit/Kconfig b/board/logicpd/imx31_litekit/Kconfig new file mode 100644 index 0000000..ae3343b --- /dev/null +++ b/board/logicpd/imx31_litekit/Kconfig @@ -0,0 +1,23 @@ +if TARGET_IMX31_LITEKIT + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "imx31_litekit" + +config SYS_VENDOR + string + default "logicpd" + +config SYS_SOC + string + default "mx31" + +config SYS_CONFIG_NAME + string + default "imx31_litekit" + +endif diff --git a/board/logicpd/imx31_litekit/MAINTAINERS b/board/logicpd/imx31_litekit/MAINTAINERS new file mode 100644 index 0000000..98cc7bd --- /dev/null +++ b/board/logicpd/imx31_litekit/MAINTAINERS @@ -0,0 +1,6 @@ +IMX31_LITEKIT BOARD +M: - +S: Maintained +F: board/logicpd/imx31_litekit/ +F: include/configs/imx31_litekit.h +F: configs/imx31_litekit_defconfig diff --git a/board/logicpd/omap3som/Kconfig b/board/logicpd/omap3som/Kconfig new file mode 100644 index 0000000..daaefa6 --- /dev/null +++ b/board/logicpd/omap3som/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP3_LOGIC + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "omap3som" + +config SYS_VENDOR + string + default "logicpd" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_logic" + +endif diff --git a/board/logicpd/omap3som/MAINTAINERS b/board/logicpd/omap3som/MAINTAINERS new file mode 100644 index 0000000..ffe2201 --- /dev/null +++ b/board/logicpd/omap3som/MAINTAINERS @@ -0,0 +1,6 @@ +OMAP3SOM BOARD +M: Peter Barada <peter.barada@logicpd.com> +S: Maintained +F: board/logicpd/omap3som/ +F: include/configs/omap3_logic.h +F: configs/omap3_logic_defconfig diff --git a/board/logicpd/zoom1/Kconfig b/board/logicpd/zoom1/Kconfig new file mode 100644 index 0000000..3199130 --- /dev/null +++ b/board/logicpd/zoom1/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP3_ZOOM1 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "zoom1" + +config SYS_VENDOR + string + default "logicpd" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_zoom1" + +endif diff --git a/board/logicpd/zoom1/MAINTAINERS b/board/logicpd/zoom1/MAINTAINERS new file mode 100644 index 0000000..338b965 --- /dev/null +++ b/board/logicpd/zoom1/MAINTAINERS @@ -0,0 +1,6 @@ +ZOOM1 BOARD +M: Nishanth Menon <nm@ti.com> +S: Maintained +F: board/logicpd/zoom1/ +F: include/configs/omap3_zoom1.h +F: configs/omap3_zoom1_defconfig diff --git a/board/lwmon/Kconfig b/board/lwmon/Kconfig new file mode 100644 index 0000000..a0c7587 --- /dev/null +++ b/board/lwmon/Kconfig @@ -0,0 +1,11 @@ +if TARGET_LWMON + +config SYS_BOARD + string + default "lwmon" + +config SYS_CONFIG_NAME + string + default "lwmon" + +endif diff --git a/board/lwmon/MAINTAINERS b/board/lwmon/MAINTAINERS new file mode 100644 index 0000000..763ce22 --- /dev/null +++ b/board/lwmon/MAINTAINERS @@ -0,0 +1,6 @@ +LWMON BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/lwmon/ +F: include/configs/lwmon.h +F: configs/lwmon_defconfig diff --git a/board/lwmon5/Kconfig b/board/lwmon5/Kconfig new file mode 100644 index 0000000..79cf08e --- /dev/null +++ b/board/lwmon5/Kconfig @@ -0,0 +1,11 @@ +if TARGET_LWMON5 + +config SYS_BOARD + string + default "lwmon5" + +config SYS_CONFIG_NAME + string + default "lwmon5" + +endif diff --git a/board/lwmon5/MAINTAINERS b/board/lwmon5/MAINTAINERS new file mode 100644 index 0000000..7402ab6 --- /dev/null +++ b/board/lwmon5/MAINTAINERS @@ -0,0 +1,7 @@ +LWMON5 BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/lwmon5/ +F: include/configs/lwmon5.h +F: configs/lcd4_lwmon5_defconfig +F: configs/lwmon5_defconfig diff --git a/board/manroland/hmi1001/Kconfig b/board/manroland/hmi1001/Kconfig new file mode 100644 index 0000000..2f576dd --- /dev/null +++ b/board/manroland/hmi1001/Kconfig @@ -0,0 +1,15 @@ +if TARGET_HMI1001 + +config SYS_BOARD + string + default "hmi1001" + +config SYS_VENDOR + string + default "manroland" + +config SYS_CONFIG_NAME + string + default "hmi1001" + +endif diff --git a/board/manroland/hmi1001/MAINTAINERS b/board/manroland/hmi1001/MAINTAINERS new file mode 100644 index 0000000..bdfdc01 --- /dev/null +++ b/board/manroland/hmi1001/MAINTAINERS @@ -0,0 +1,6 @@ +HMI1001 BOARD +M: - +S: Maintained +F: board/manroland/hmi1001/ +F: include/configs/hmi1001.h +F: configs/hmi1001_defconfig diff --git a/board/manroland/mucmc52/Kconfig b/board/manroland/mucmc52/Kconfig new file mode 100644 index 0000000..4be0722 --- /dev/null +++ b/board/manroland/mucmc52/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MUCMC52 + +config SYS_BOARD + string + default "mucmc52" + +config SYS_VENDOR + string + default "manroland" + +config SYS_CONFIG_NAME + string + default "mucmc52" + +endif diff --git a/board/manroland/mucmc52/MAINTAINERS b/board/manroland/mucmc52/MAINTAINERS new file mode 100644 index 0000000..45a2764 --- /dev/null +++ b/board/manroland/mucmc52/MAINTAINERS @@ -0,0 +1,6 @@ +MUCMC52 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/manroland/mucmc52/ +F: include/configs/mucmc52.h +F: configs/mucmc52_defconfig diff --git a/board/manroland/uc100/Kconfig b/board/manroland/uc100/Kconfig new file mode 100644 index 0000000..a41a780 --- /dev/null +++ b/board/manroland/uc100/Kconfig @@ -0,0 +1,15 @@ +if TARGET_UC100 + +config SYS_BOARD + string + default "uc100" + +config SYS_VENDOR + string + default "manroland" + +config SYS_CONFIG_NAME + string + default "uc100" + +endif diff --git a/board/manroland/uc100/MAINTAINERS b/board/manroland/uc100/MAINTAINERS new file mode 100644 index 0000000..260471c --- /dev/null +++ b/board/manroland/uc100/MAINTAINERS @@ -0,0 +1,6 @@ +UC100 BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/manroland/uc100/ +F: include/configs/uc100.h +F: configs/uc100_defconfig diff --git a/board/manroland/uc101/Kconfig b/board/manroland/uc101/Kconfig new file mode 100644 index 0000000..07cfcc6 --- /dev/null +++ b/board/manroland/uc101/Kconfig @@ -0,0 +1,15 @@ +if TARGET_UC101 + +config SYS_BOARD + string + default "uc101" + +config SYS_VENDOR + string + default "manroland" + +config SYS_CONFIG_NAME + string + default "uc101" + +endif diff --git a/board/manroland/uc101/MAINTAINERS b/board/manroland/uc101/MAINTAINERS new file mode 100644 index 0000000..0fc7b85 --- /dev/null +++ b/board/manroland/uc101/MAINTAINERS @@ -0,0 +1,6 @@ +UC101 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/manroland/uc101/ +F: include/configs/uc101.h +F: configs/uc101_defconfig diff --git a/board/matrix_vision/mergerbox/Kconfig b/board/matrix_vision/mergerbox/Kconfig new file mode 100644 index 0000000..5b292dc --- /dev/null +++ b/board/matrix_vision/mergerbox/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MERGERBOX + +config SYS_BOARD + string + default "mergerbox" + +config SYS_VENDOR + string + default "matrix_vision" + +config SYS_CONFIG_NAME + string + default "MERGERBOX" + +endif diff --git a/board/matrix_vision/mergerbox/MAINTAINERS b/board/matrix_vision/mergerbox/MAINTAINERS new file mode 100644 index 0000000..22be981 --- /dev/null +++ b/board/matrix_vision/mergerbox/MAINTAINERS @@ -0,0 +1,6 @@ +MERGERBOX BOARD +M: Andre Schwarz <andre.schwarz@matrix-vision.de> +S: Orphan (since 2014-03) +F: board/matrix_vision/mergerbox/ +F: include/configs/MERGERBOX.h +F: configs/MERGERBOX_defconfig diff --git a/board/matrix_vision/mvbc_p/Kconfig b/board/matrix_vision/mvbc_p/Kconfig new file mode 100644 index 0000000..ab1fe65 --- /dev/null +++ b/board/matrix_vision/mvbc_p/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MVBC_P + +config SYS_BOARD + string + default "mvbc_p" + +config SYS_VENDOR + string + default "matrix_vision" + +config SYS_CONFIG_NAME + string + default "MVBC_P" + +endif diff --git a/board/matrix_vision/mvbc_p/MAINTAINERS b/board/matrix_vision/mvbc_p/MAINTAINERS new file mode 100644 index 0000000..9e76b57 --- /dev/null +++ b/board/matrix_vision/mvbc_p/MAINTAINERS @@ -0,0 +1,6 @@ +MVBC_P BOARD +M: Andre Schwarz <andre.schwarz@matrix-vision.de> +S: Orphan (since 2014-03) +F: board/matrix_vision/mvbc_p/ +F: include/configs/MVBC_P.h +F: configs/MVBC_P_defconfig diff --git a/board/matrix_vision/mvblm7/Kconfig b/board/matrix_vision/mvblm7/Kconfig new file mode 100644 index 0000000..c5998b3 --- /dev/null +++ b/board/matrix_vision/mvblm7/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MVBLM7 + +config SYS_BOARD + string + default "mvblm7" + +config SYS_VENDOR + string + default "matrix_vision" + +config SYS_CONFIG_NAME + string + default "MVBLM7" + +endif diff --git a/board/matrix_vision/mvblm7/MAINTAINERS b/board/matrix_vision/mvblm7/MAINTAINERS new file mode 100644 index 0000000..4f7ca50 --- /dev/null +++ b/board/matrix_vision/mvblm7/MAINTAINERS @@ -0,0 +1,6 @@ +MVBLM7 BOARD +M: Andre Schwarz <andre.schwarz@matrix-vision.de> +S: Orphan (since 2014-03) +F: board/matrix_vision/mvblm7/ +F: include/configs/MVBLM7.h +F: configs/MVBLM7_defconfig diff --git a/board/matrix_vision/mvblx/Kconfig b/board/matrix_vision/mvblx/Kconfig new file mode 100644 index 0000000..d89c1e3 --- /dev/null +++ b/board/matrix_vision/mvblx/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP3_MVBLX + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mvblx" + +config SYS_VENDOR + string + default "matrix_vision" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_mvblx" + +endif diff --git a/board/matrix_vision/mvblx/MAINTAINERS b/board/matrix_vision/mvblx/MAINTAINERS new file mode 100644 index 0000000..2f9a153 --- /dev/null +++ b/board/matrix_vision/mvblx/MAINTAINERS @@ -0,0 +1,6 @@ +MVBLX BOARD +M: Michael Jones <michael.jones@matrix-vision.de> +S: Maintained +F: board/matrix_vision/mvblx/ +F: include/configs/omap3_mvblx.h +F: configs/omap3_mvblx_defconfig diff --git a/board/matrix_vision/mvsmr/Kconfig b/board/matrix_vision/mvsmr/Kconfig new file mode 100644 index 0000000..1627a36 --- /dev/null +++ b/board/matrix_vision/mvsmr/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MVSMR + +config SYS_BOARD + string + default "mvsmr" + +config SYS_VENDOR + string + default "matrix_vision" + +config SYS_CONFIG_NAME + string + default "MVSMR" + +endif diff --git a/board/matrix_vision/mvsmr/MAINTAINERS b/board/matrix_vision/mvsmr/MAINTAINERS new file mode 100644 index 0000000..9659730 --- /dev/null +++ b/board/matrix_vision/mvsmr/MAINTAINERS @@ -0,0 +1,6 @@ +MVSMR BOARD +M: Andre Schwarz <andre.schwarz@matrix-vision.de> +S: Orphan (since 2014-03) +F: board/matrix_vision/mvsmr/ +F: include/configs/MVSMR.h +F: configs/MVSMR_defconfig diff --git a/board/mcc200/Kconfig b/board/mcc200/Kconfig new file mode 100644 index 0000000..c4e8cf1 --- /dev/null +++ b/board/mcc200/Kconfig @@ -0,0 +1,11 @@ +if TARGET_MCC200 + +config SYS_BOARD + string + default "mcc200" + +config SYS_CONFIG_NAME + string + default "mcc200" + +endif diff --git a/board/mcc200/MAINTAINERS b/board/mcc200/MAINTAINERS new file mode 100644 index 0000000..3d02bc6 --- /dev/null +++ b/board/mcc200/MAINTAINERS @@ -0,0 +1,17 @@ +MCC200 BOARD +M: - +S: Maintained +F: board/mcc200/ +F: include/configs/mcc200.h +F: configs/mcc200_defconfig +F: configs/mcc200_COM12_defconfig +F: configs/mcc200_COM12_highboot_defconfig +F: configs/mcc200_COM12_highboot_SDRAM_defconfig +F: configs/mcc200_COM12_SDRAM_defconfig +F: configs/mcc200_highboot_defconfig +F: configs/mcc200_highboot_SDRAM_defconfig +F: configs/mcc200_SDRAM_defconfig +F: configs/prs200_defconfig +F: configs/prs200_DDR_defconfig +F: configs/prs200_highboot_defconfig +F: configs/prs200_highboot_DDR_defconfig diff --git a/board/micronas/vct/Kconfig b/board/micronas/vct/Kconfig new file mode 100644 index 0000000..76c5f7c --- /dev/null +++ b/board/micronas/vct/Kconfig @@ -0,0 +1,19 @@ +if TARGET_VCT + +config SYS_CPU + string + default "mips32" + +config SYS_BOARD + string + default "vct" + +config SYS_VENDOR + string + default "micronas" + +config SYS_CONFIG_NAME + string + default "vct" + +endif diff --git a/board/micronas/vct/MAINTAINERS b/board/micronas/vct/MAINTAINERS new file mode 100644 index 0000000..4b825d3 --- /dev/null +++ b/board/micronas/vct/MAINTAINERS @@ -0,0 +1,17 @@ +VCT BOARD +M: - +S: Maintained +F: board/micronas/vct/ +F: include/configs/vct.h +F: configs/vct_platinum_defconfig +F: configs/vct_platinum_onenand_defconfig +F: configs/vct_platinum_onenand_small_defconfig +F: configs/vct_platinum_small_defconfig +F: configs/vct_platinumavc_defconfig +F: configs/vct_platinumavc_onenand_defconfig +F: configs/vct_platinumavc_onenand_small_defconfig +F: configs/vct_platinumavc_small_defconfig +F: configs/vct_premium_defconfig +F: configs/vct_premium_onenand_defconfig +F: configs/vct_premium_onenand_small_defconfig +F: configs/vct_premium_small_defconfig diff --git a/board/mimc/mimc200/Kconfig b/board/mimc/mimc200/Kconfig new file mode 100644 index 0000000..146c3b7 --- /dev/null +++ b/board/mimc/mimc200/Kconfig @@ -0,0 +1,19 @@ +if TARGET_MIMC200 + +config SYS_BOARD + string + default "mimc200" + +config SYS_VENDOR + string + default "mimc" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "mimc200" + +endif diff --git a/board/mimc/mimc200/MAINTAINERS b/board/mimc/mimc200/MAINTAINERS new file mode 100644 index 0000000..6cb51dd --- /dev/null +++ b/board/mimc/mimc200/MAINTAINERS @@ -0,0 +1,6 @@ +MIMC200 BOARD +M: Mark Jackson <mpfj@mimc.co.uk> +S: Maintained +F: board/mimc/mimc200/ +F: include/configs/mimc200.h +F: configs/mimc200_defconfig diff --git a/board/miromico/hammerhead/Kconfig b/board/miromico/hammerhead/Kconfig new file mode 100644 index 0000000..9795e55 --- /dev/null +++ b/board/miromico/hammerhead/Kconfig @@ -0,0 +1,19 @@ +if TARGET_HAMMERHEAD + +config SYS_BOARD + string + default "hammerhead" + +config SYS_VENDOR + string + default "miromico" + +config SYS_SOC + string + default "at32ap700x" + +config SYS_CONFIG_NAME + string + default "hammerhead" + +endif diff --git a/board/miromico/hammerhead/MAINTAINERS b/board/miromico/hammerhead/MAINTAINERS new file mode 100644 index 0000000..a87ceee --- /dev/null +++ b/board/miromico/hammerhead/MAINTAINERS @@ -0,0 +1,6 @@ +HAMMERHEAD BOARD +M: Alex Raimondi <alex.raimondi@miromico.ch> +S: Maintained +F: board/miromico/hammerhead/ +F: include/configs/hammerhead.h +F: configs/hammerhead_defconfig diff --git a/board/mosaixtech/icon/Kconfig b/board/mosaixtech/icon/Kconfig new file mode 100644 index 0000000..c439b14 --- /dev/null +++ b/board/mosaixtech/icon/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ICON + +config SYS_BOARD + string + default "icon" + +config SYS_VENDOR + string + default "mosaixtech" + +config SYS_CONFIG_NAME + string + default "icon" + +endif diff --git a/board/mosaixtech/icon/MAINTAINERS b/board/mosaixtech/icon/MAINTAINERS new file mode 100644 index 0000000..f3af072 --- /dev/null +++ b/board/mosaixtech/icon/MAINTAINERS @@ -0,0 +1,6 @@ +ICON BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/mosaixtech/icon/ +F: include/configs/icon.h +F: configs/icon_defconfig diff --git a/board/motionpro/Kconfig b/board/motionpro/Kconfig new file mode 100644 index 0000000..c8ee043 --- /dev/null +++ b/board/motionpro/Kconfig @@ -0,0 +1,11 @@ +if TARGET_MOTIONPRO + +config SYS_BOARD + string + default "motionpro" + +config SYS_CONFIG_NAME + string + default "motionpro" + +endif diff --git a/board/motionpro/MAINTAINERS b/board/motionpro/MAINTAINERS new file mode 100644 index 0000000..10a97cc --- /dev/null +++ b/board/motionpro/MAINTAINERS @@ -0,0 +1,6 @@ +MOTIONPRO BOARD +M: - +S: Maintained +F: board/motionpro/ +F: include/configs/motionpro.h +F: configs/motionpro_defconfig diff --git a/board/mpc8308_p1m/Kconfig b/board/mpc8308_p1m/Kconfig new file mode 100644 index 0000000..6e84bdf --- /dev/null +++ b/board/mpc8308_p1m/Kconfig @@ -0,0 +1,11 @@ +if TARGET_MPC8308_P1M + +config SYS_BOARD + string + default "mpc8308_p1m" + +config SYS_CONFIG_NAME + string + default "mpc8308_p1m" + +endif diff --git a/board/mpc8308_p1m/MAINTAINERS b/board/mpc8308_p1m/MAINTAINERS new file mode 100644 index 0000000..80d8de7 --- /dev/null +++ b/board/mpc8308_p1m/MAINTAINERS @@ -0,0 +1,6 @@ +MPC8308_P1M BOARD +M: Ilya Yanok <yanok@emcraft.com> +S: Maintained +F: board/mpc8308_p1m/ +F: include/configs/mpc8308_p1m.h +F: configs/mpc8308_p1m_defconfig diff --git a/board/mpl/mip405/Kconfig b/board/mpl/mip405/Kconfig new file mode 100644 index 0000000..6705260 --- /dev/null +++ b/board/mpl/mip405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MIP405 + +config SYS_BOARD + string + default "mip405" + +config SYS_VENDOR + string + default "mpl" + +config SYS_CONFIG_NAME + string + default "MIP405" + +endif diff --git a/board/mpl/mip405/MAINTAINERS b/board/mpl/mip405/MAINTAINERS new file mode 100644 index 0000000..b323e5a --- /dev/null +++ b/board/mpl/mip405/MAINTAINERS @@ -0,0 +1,7 @@ +MIP405 BOARD +M: Denis Peter <d.peter@mpl.ch> +S: Maintained +F: board/mpl/mip405/ +F: include/configs/MIP405.h +F: configs/MIP405_defconfig +F: configs/MIP405T_defconfig diff --git a/board/mpl/pati/Kconfig b/board/mpl/pati/Kconfig new file mode 100644 index 0000000..b902cbd --- /dev/null +++ b/board/mpl/pati/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PATI + +config SYS_BOARD + string + default "pati" + +config SYS_VENDOR + string + default "mpl" + +config SYS_CONFIG_NAME + string + default "PATI" + +endif diff --git a/board/mpl/pati/MAINTAINERS b/board/mpl/pati/MAINTAINERS new file mode 100644 index 0000000..f7c1bd8 --- /dev/null +++ b/board/mpl/pati/MAINTAINERS @@ -0,0 +1,6 @@ +PATI BOARD +M: - +S: Maintained +F: board/mpl/pati/ +F: include/configs/PATI.h +F: configs/PATI_defconfig diff --git a/board/mpl/pip405/Kconfig b/board/mpl/pip405/Kconfig new file mode 100644 index 0000000..1e1295b --- /dev/null +++ b/board/mpl/pip405/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PIP405 + +config SYS_BOARD + string + default "pip405" + +config SYS_VENDOR + string + default "mpl" + +config SYS_CONFIG_NAME + string + default "PIP405" + +endif diff --git a/board/mpl/pip405/MAINTAINERS b/board/mpl/pip405/MAINTAINERS new file mode 100644 index 0000000..9b3b974 --- /dev/null +++ b/board/mpl/pip405/MAINTAINERS @@ -0,0 +1,6 @@ +PIP405 BOARD +M: Denis Peter <d.peter@mpl.ch> +S: Maintained +F: board/mpl/pip405/ +F: include/configs/PIP405.h +F: configs/PIP405_defconfig diff --git a/board/mpl/vcma9/Kconfig b/board/mpl/vcma9/Kconfig new file mode 100644 index 0000000..91246be --- /dev/null +++ b/board/mpl/vcma9/Kconfig @@ -0,0 +1,23 @@ +if TARGET_VCMA9 + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "vcma9" + +config SYS_VENDOR + string + default "mpl" + +config SYS_SOC + string + default "s3c24x0" + +config SYS_CONFIG_NAME + string + default "VCMA9" + +endif diff --git a/board/mpl/vcma9/MAINTAINERS b/board/mpl/vcma9/MAINTAINERS new file mode 100644 index 0000000..3817436 --- /dev/null +++ b/board/mpl/vcma9/MAINTAINERS @@ -0,0 +1,6 @@ +VCMA9 BOARD +M: David Müller <d.mueller@elsoft.ch> +S: Maintained +F: board/mpl/vcma9/ +F: include/configs/VCMA9.h +F: configs/VCMA9_defconfig diff --git a/board/mpr2/Kconfig b/board/mpr2/Kconfig new file mode 100644 index 0000000..93bec59 --- /dev/null +++ b/board/mpr2/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MPR2 + +config SYS_CPU + string + default "sh3" + +config SYS_BOARD + string + default "mpr2" + +config SYS_CONFIG_NAME + string + default "mpr2" + +endif diff --git a/board/mpr2/MAINTAINERS b/board/mpr2/MAINTAINERS new file mode 100644 index 0000000..beedf8d --- /dev/null +++ b/board/mpr2/MAINTAINERS @@ -0,0 +1,6 @@ +MPR2 BOARD +M: Mark Jonas <mark.jonas@de.bosch.com> +S: Maintained +F: board/mpr2/ +F: include/configs/mpr2.h +F: configs/mpr2_defconfig diff --git a/board/ms7720se/Kconfig b/board/ms7720se/Kconfig new file mode 100644 index 0000000..8873062 --- /dev/null +++ b/board/ms7720se/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MS7720SE + +config SYS_CPU + string + default "sh3" + +config SYS_BOARD + string + default "ms7720se" + +config SYS_CONFIG_NAME + string + default "ms7720se" + +endif diff --git a/board/ms7720se/MAINTAINERS b/board/ms7720se/MAINTAINERS new file mode 100644 index 0000000..96a80f4 --- /dev/null +++ b/board/ms7720se/MAINTAINERS @@ -0,0 +1,6 @@ +MS7720SE BOARD +M: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> +S: Maintained +F: board/ms7720se/ +F: include/configs/ms7720se.h +F: configs/ms7720se_defconfig diff --git a/board/ms7722se/Kconfig b/board/ms7722se/Kconfig new file mode 100644 index 0000000..c5b5b4f --- /dev/null +++ b/board/ms7722se/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MS7722SE + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "ms7722se" + +config SYS_CONFIG_NAME + string + default "ms7722se" + +endif diff --git a/board/ms7722se/MAINTAINERS b/board/ms7722se/MAINTAINERS new file mode 100644 index 0000000..61614ba --- /dev/null +++ b/board/ms7722se/MAINTAINERS @@ -0,0 +1,7 @@ +MS7722SE BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/ms7722se/ +F: include/configs/ms7722se.h +F: configs/ms7722se_defconfig diff --git a/board/ms7750se/Kconfig b/board/ms7750se/Kconfig new file mode 100644 index 0000000..0c9d88f --- /dev/null +++ b/board/ms7750se/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MS7750SE + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "ms7750se" + +config SYS_CONFIG_NAME + string + default "ms7750se" + +endif diff --git a/board/ms7750se/MAINTAINERS b/board/ms7750se/MAINTAINERS new file mode 100644 index 0000000..e23a532 --- /dev/null +++ b/board/ms7750se/MAINTAINERS @@ -0,0 +1,7 @@ +MS7750SE BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/ms7750se/ +F: include/configs/ms7750se.h +F: configs/ms7750se_defconfig diff --git a/board/muas3001/Kconfig b/board/muas3001/Kconfig new file mode 100644 index 0000000..982d32f --- /dev/null +++ b/board/muas3001/Kconfig @@ -0,0 +1,11 @@ +if TARGET_MUAS3001 + +config SYS_BOARD + string + default "muas3001" + +config SYS_CONFIG_NAME + string + default "muas3001" + +endif diff --git a/board/muas3001/MAINTAINERS b/board/muas3001/MAINTAINERS new file mode 100644 index 0000000..cfb5983 --- /dev/null +++ b/board/muas3001/MAINTAINERS @@ -0,0 +1,7 @@ +MUAS3001 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/muas3001/ +F: include/configs/muas3001.h +F: configs/muas3001_defconfig +F: configs/muas3001_dev_defconfig diff --git a/board/munices/Kconfig b/board/munices/Kconfig new file mode 100644 index 0000000..d242d56 --- /dev/null +++ b/board/munices/Kconfig @@ -0,0 +1,11 @@ +if TARGET_MUNICES + +config SYS_BOARD + string + default "munices" + +config SYS_CONFIG_NAME + string + default "munices" + +endif diff --git a/board/munices/MAINTAINERS b/board/munices/MAINTAINERS new file mode 100644 index 0000000..b8f5761 --- /dev/null +++ b/board/munices/MAINTAINERS @@ -0,0 +1,6 @@ +MUNICES BOARD +M: - +S: Maintained +F: board/munices/ +F: include/configs/munices.h +F: configs/munices_defconfig diff --git a/board/musenki/Kconfig b/board/musenki/Kconfig new file mode 100644 index 0000000..ea33d16 --- /dev/null +++ b/board/musenki/Kconfig @@ -0,0 +1,11 @@ +if TARGET_MUSENKI + +config SYS_BOARD + string + default "musenki" + +config SYS_CONFIG_NAME + string + default "MUSENKI" + +endif diff --git a/board/musenki/MAINTAINERS b/board/musenki/MAINTAINERS new file mode 100644 index 0000000..03a1fe7 --- /dev/null +++ b/board/musenki/MAINTAINERS @@ -0,0 +1,6 @@ +MUSENKI BOARD +M: Jim Thompson <jim@musenki.com> +S: Orphan (since 2014-04) +F: board/musenki/ +F: include/configs/MUSENKI.h +F: configs/MUSENKI_defconfig diff --git a/board/mvblue/Kconfig b/board/mvblue/Kconfig new file mode 100644 index 0000000..a70bcbe --- /dev/null +++ b/board/mvblue/Kconfig @@ -0,0 +1,11 @@ +if TARGET_MVBLUE + +config SYS_BOARD + string + default "mvblue" + +config SYS_CONFIG_NAME + string + default "MVBLUE" + +endif diff --git a/board/mvblue/MAINTAINERS b/board/mvblue/MAINTAINERS new file mode 100644 index 0000000..a809ba5 --- /dev/null +++ b/board/mvblue/MAINTAINERS @@ -0,0 +1,6 @@ +MVBLUE BOARD +M: - +S: Maintained +F: board/mvblue/ +F: include/configs/MVBLUE.h +F: configs/MVBLUE_defconfig diff --git a/board/netvia/Kconfig b/board/netvia/Kconfig new file mode 100644 index 0000000..d177b70 --- /dev/null +++ b/board/netvia/Kconfig @@ -0,0 +1,11 @@ +if TARGET_NETVIA + +config SYS_BOARD + string + default "netvia" + +config SYS_CONFIG_NAME + string + default "NETVIA" + +endif diff --git a/board/netvia/MAINTAINERS b/board/netvia/MAINTAINERS new file mode 100644 index 0000000..0313058 --- /dev/null +++ b/board/netvia/MAINTAINERS @@ -0,0 +1,7 @@ +NETVIA BOARD +M: Pantelis Antoniou <panto@intracom.gr> +S: Maintained +F: board/netvia/ +F: include/configs/NETVIA.h +F: configs/NETVIA_defconfig +F: configs/NETVIA_V2_defconfig diff --git a/board/nokia/rx51/Kconfig b/board/nokia/rx51/Kconfig new file mode 100644 index 0000000..41d0daa --- /dev/null +++ b/board/nokia/rx51/Kconfig @@ -0,0 +1,23 @@ +if TARGET_NOKIA_RX51 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "rx51" + +config SYS_VENDOR + string + default "nokia" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "nokia_rx51" + +endif diff --git a/board/nokia/rx51/MAINTAINERS b/board/nokia/rx51/MAINTAINERS new file mode 100644 index 0000000..8bdddc1 --- /dev/null +++ b/board/nokia/rx51/MAINTAINERS @@ -0,0 +1,6 @@ +RX51 BOARD +M: Pali Rohár <pali.rohar@gmail.com> +S: Maintained +F: board/nokia/rx51/ +F: include/configs/nokia_rx51.h +F: configs/nokia_rx51_defconfig diff --git a/board/nvidia/beaver/Kconfig b/board/nvidia/beaver/Kconfig new file mode 100644 index 0000000..f052676 --- /dev/null +++ b/board/nvidia/beaver/Kconfig @@ -0,0 +1,24 @@ +if TARGET_BEAVER + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "beaver" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra30" + +config SYS_CONFIG_NAME + string + default "beaver" + +endif diff --git a/board/nvidia/beaver/MAINTAINERS b/board/nvidia/beaver/MAINTAINERS new file mode 100644 index 0000000..26bcacc --- /dev/null +++ b/board/nvidia/beaver/MAINTAINERS @@ -0,0 +1,7 @@ +BEAVER BOARD +M: Tom Warren <twarren@nvidia.com> +M: Stephen Warren <swarren@nvidia.com> +S: Maintained +F: board/nvidia/beaver/ +F: include/configs/beaver.h +F: configs/beaver_defconfig diff --git a/board/nvidia/cardhu/Kconfig b/board/nvidia/cardhu/Kconfig new file mode 100644 index 0000000..9853114 --- /dev/null +++ b/board/nvidia/cardhu/Kconfig @@ -0,0 +1,24 @@ +if TARGET_CARDHU + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "cardhu" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra30" + +config SYS_CONFIG_NAME + string + default "cardhu" + +endif diff --git a/board/nvidia/cardhu/MAINTAINERS b/board/nvidia/cardhu/MAINTAINERS new file mode 100644 index 0000000..d3c3e36 --- /dev/null +++ b/board/nvidia/cardhu/MAINTAINERS @@ -0,0 +1,6 @@ +CARDHU BOARD +M: Tom Warren <twarren@nvidia.com> +S: Maintained +F: board/nvidia/cardhu/ +F: include/configs/cardhu.h +F: configs/cardhu_defconfig diff --git a/board/nvidia/dalmore/Kconfig b/board/nvidia/dalmore/Kconfig new file mode 100644 index 0000000..33b78db --- /dev/null +++ b/board/nvidia/dalmore/Kconfig @@ -0,0 +1,24 @@ +if TARGET_DALMORE + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "dalmore" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra114" + +config SYS_CONFIG_NAME + string + default "dalmore" + +endif diff --git a/board/nvidia/dalmore/MAINTAINERS b/board/nvidia/dalmore/MAINTAINERS new file mode 100644 index 0000000..fe86375 --- /dev/null +++ b/board/nvidia/dalmore/MAINTAINERS @@ -0,0 +1,6 @@ +DALMORE BOARD +M: Tom Warren <twarren@nvidia.com> +S: Maintained +F: board/nvidia/dalmore/ +F: include/configs/dalmore.h +F: configs/dalmore_defconfig diff --git a/board/nvidia/harmony/Kconfig b/board/nvidia/harmony/Kconfig new file mode 100644 index 0000000..2a3bde4 --- /dev/null +++ b/board/nvidia/harmony/Kconfig @@ -0,0 +1,24 @@ +if TARGET_HARMONY + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "harmony" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "harmony" + +endif diff --git a/board/nvidia/harmony/MAINTAINERS b/board/nvidia/harmony/MAINTAINERS new file mode 100644 index 0000000..f3508ed --- /dev/null +++ b/board/nvidia/harmony/MAINTAINERS @@ -0,0 +1,6 @@ +HARMONY BOARD +M: Tom Warren <twarren@nvidia.com> +S: Maintained +F: board/nvidia/harmony/ +F: include/configs/harmony.h +F: configs/harmony_defconfig diff --git a/board/nvidia/jetson-tk1/Kconfig b/board/nvidia/jetson-tk1/Kconfig new file mode 100644 index 0000000..22b4c69 --- /dev/null +++ b/board/nvidia/jetson-tk1/Kconfig @@ -0,0 +1,24 @@ +if TARGET_JETSON_TK1 + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "jetson-tk1" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra124" + +config SYS_CONFIG_NAME + string + default "jetson-tk1" + +endif diff --git a/board/nvidia/jetson-tk1/MAINTAINERS b/board/nvidia/jetson-tk1/MAINTAINERS new file mode 100644 index 0000000..a5c687d --- /dev/null +++ b/board/nvidia/jetson-tk1/MAINTAINERS @@ -0,0 +1,6 @@ +JETSON-TK1 BOARD +M: Stephen Warren <swarren@nvidia.com> +S: Maintained +F: board/nvidia/jetson-tk1/ +F: include/configs/jetson-tk1.h +F: configs/jetson-tk1_defconfig diff --git a/board/nvidia/seaboard/Kconfig b/board/nvidia/seaboard/Kconfig new file mode 100644 index 0000000..39c65b5 --- /dev/null +++ b/board/nvidia/seaboard/Kconfig @@ -0,0 +1,24 @@ +if TARGET_SEABOARD + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "seaboard" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "seaboard" + +endif diff --git a/board/nvidia/seaboard/MAINTAINERS b/board/nvidia/seaboard/MAINTAINERS new file mode 100644 index 0000000..7926ca1 --- /dev/null +++ b/board/nvidia/seaboard/MAINTAINERS @@ -0,0 +1,6 @@ +SEABOARD BOARD +M: Tom Warren <twarren@nvidia.com> +S: Maintained +F: board/nvidia/seaboard/ +F: include/configs/seaboard.h +F: configs/seaboard_defconfig diff --git a/board/nvidia/venice2/Kconfig b/board/nvidia/venice2/Kconfig new file mode 100644 index 0000000..84a7160 --- /dev/null +++ b/board/nvidia/venice2/Kconfig @@ -0,0 +1,24 @@ +if TARGET_VENICE2 + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "venice2" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra124" + +config SYS_CONFIG_NAME + string + default "venice2" + +endif diff --git a/board/nvidia/venice2/MAINTAINERS b/board/nvidia/venice2/MAINTAINERS new file mode 100644 index 0000000..221df65 --- /dev/null +++ b/board/nvidia/venice2/MAINTAINERS @@ -0,0 +1,6 @@ +VENICE2 BOARD +M: Tom Warren <twarren@nvidia.com> +S: Maintained +F: board/nvidia/venice2/ +F: include/configs/venice2.h +F: configs/venice2_defconfig diff --git a/board/nvidia/ventana/Kconfig b/board/nvidia/ventana/Kconfig new file mode 100644 index 0000000..59e85c4 --- /dev/null +++ b/board/nvidia/ventana/Kconfig @@ -0,0 +1,24 @@ +if TARGET_VENTANA + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "ventana" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "ventana" + +endif diff --git a/board/nvidia/ventana/MAINTAINERS b/board/nvidia/ventana/MAINTAINERS new file mode 100644 index 0000000..285b84d --- /dev/null +++ b/board/nvidia/ventana/MAINTAINERS @@ -0,0 +1,7 @@ +VENTANA BOARD +M: Tom Warren <twarren@nvidia.com> +M: Stephen Warren <swarren@nvidia.com> +S: Maintained +F: board/nvidia/ventana/ +F: include/configs/ventana.h +F: configs/ventana_defconfig diff --git a/board/nvidia/whistler/Kconfig b/board/nvidia/whistler/Kconfig new file mode 100644 index 0000000..f025413 --- /dev/null +++ b/board/nvidia/whistler/Kconfig @@ -0,0 +1,24 @@ +if TARGET_WHISTLER + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "whistler" + +config SYS_VENDOR + string + default "nvidia" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "whistler" + +endif diff --git a/board/nvidia/whistler/MAINTAINERS b/board/nvidia/whistler/MAINTAINERS new file mode 100644 index 0000000..66e2c8d --- /dev/null +++ b/board/nvidia/whistler/MAINTAINERS @@ -0,0 +1,7 @@ +WHISTLER BOARD +M: Tom Warren <twarren@nvidia.com> +M: Stephen Warren <swarren@nvidia.com> +S: Maintained +F: board/nvidia/whistler/ +F: include/configs/whistler.h +F: configs/whistler_defconfig diff --git a/board/olimex/mx23_olinuxino/Kconfig b/board/olimex/mx23_olinuxino/Kconfig new file mode 100644 index 0000000..07b3284 --- /dev/null +++ b/board/olimex/mx23_olinuxino/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MX23_OLINUXINO + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "mx23_olinuxino" + +config SYS_VENDOR + string + default "olimex" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "mx23_olinuxino" + +endif diff --git a/board/olimex/mx23_olinuxino/MAINTAINERS b/board/olimex/mx23_olinuxino/MAINTAINERS new file mode 100644 index 0000000..25f4a10 --- /dev/null +++ b/board/olimex/mx23_olinuxino/MAINTAINERS @@ -0,0 +1,6 @@ +MX23_OLINUXINO BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/olimex/mx23_olinuxino/ +F: include/configs/mx23_olinuxino.h +F: configs/mx23_olinuxino_defconfig diff --git a/board/omicron/calimain/Kconfig b/board/omicron/calimain/Kconfig new file mode 100644 index 0000000..923af8a --- /dev/null +++ b/board/omicron/calimain/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CALIMAIN + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "calimain" + +config SYS_VENDOR + string + default "omicron" + +config SYS_SOC + string + default "davinci" + +config SYS_CONFIG_NAME + string + default "calimain" + +endif diff --git a/board/omicron/calimain/MAINTAINERS b/board/omicron/calimain/MAINTAINERS new file mode 100644 index 0000000..f6e37a2 --- /dev/null +++ b/board/omicron/calimain/MAINTAINERS @@ -0,0 +1,7 @@ +CALIMAIN BOARD +M: Manfred Rudigier <manfred.rudigier@omicron.at> +M: Christian Riesch <christian.riesch@omicron.at> +S: Maintained +F: board/omicron/calimain/ +F: include/configs/calimain.h +F: configs/calimain_defconfig diff --git a/board/openrisc/openrisc-generic/Kconfig b/board/openrisc/openrisc-generic/Kconfig new file mode 100644 index 0000000..71a8246 --- /dev/null +++ b/board/openrisc/openrisc-generic/Kconfig @@ -0,0 +1,15 @@ +if TARGET_OPENRISC_GENERIC + +config SYS_BOARD + string + default "openrisc-generic" + +config SYS_VENDOR + string + default "openrisc" + +config SYS_CONFIG_NAME + string + default "openrisc-generic" + +endif diff --git a/board/openrisc/openrisc-generic/MAINTAINERS b/board/openrisc/openrisc-generic/MAINTAINERS new file mode 100644 index 0000000..c8dbc74 --- /dev/null +++ b/board/openrisc/openrisc-generic/MAINTAINERS @@ -0,0 +1,6 @@ +OPENRISC-GENERIC BOARD +M: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi> +S: Maintained +F: board/openrisc/openrisc-generic/ +F: include/configs/openrisc-generic.h +F: configs/openrisc-generic_defconfig diff --git a/board/overo/Kconfig b/board/overo/Kconfig new file mode 100644 index 0000000..1d4a261 --- /dev/null +++ b/board/overo/Kconfig @@ -0,0 +1,19 @@ +if TARGET_OMAP3_OVERO + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "overo" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_overo" + +endif diff --git a/board/overo/MAINTAINERS b/board/overo/MAINTAINERS new file mode 100644 index 0000000..8f089e8 --- /dev/null +++ b/board/overo/MAINTAINERS @@ -0,0 +1,6 @@ +OVERO BOARD +M: Steve Sakoman <sakoman@gmail.com> +S: Maintained +F: board/overo/ +F: include/configs/omap3_overo.h +F: configs/omap3_overo_defconfig diff --git a/board/palmld/Kconfig b/board/palmld/Kconfig new file mode 100644 index 0000000..bed99b6 --- /dev/null +++ b/board/palmld/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PALMLD + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "palmld" + +config SYS_CONFIG_NAME + string + default "palmld" + +endif diff --git a/board/palmld/MAINTAINERS b/board/palmld/MAINTAINERS new file mode 100644 index 0000000..7d21b7b --- /dev/null +++ b/board/palmld/MAINTAINERS @@ -0,0 +1,6 @@ +PALMLD BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/palmld/ +F: include/configs/palmld.h +F: configs/palmld_defconfig diff --git a/board/palmtc/Kconfig b/board/palmtc/Kconfig new file mode 100644 index 0000000..86fb63b --- /dev/null +++ b/board/palmtc/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PALMTC + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "palmtc" + +config SYS_CONFIG_NAME + string + default "palmtc" + +endif diff --git a/board/palmtc/MAINTAINERS b/board/palmtc/MAINTAINERS new file mode 100644 index 0000000..57b6a22 --- /dev/null +++ b/board/palmtc/MAINTAINERS @@ -0,0 +1,6 @@ +PALMTC BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/palmtc/ +F: include/configs/palmtc.h +F: configs/palmtc_defconfig diff --git a/board/palmtreo680/Kconfig b/board/palmtreo680/Kconfig new file mode 100644 index 0000000..4df6c63 --- /dev/null +++ b/board/palmtreo680/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PALMTREO680 + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "palmtreo680" + +config SYS_CONFIG_NAME + string + default "palmtreo680" + +endif diff --git a/board/palmtreo680/MAINTAINERS b/board/palmtreo680/MAINTAINERS new file mode 100644 index 0000000..bdc034e --- /dev/null +++ b/board/palmtreo680/MAINTAINERS @@ -0,0 +1,6 @@ +PALMTREO680 BOARD +M: Mike Dunn <mikedunn@newsguy.com> +S: Orphan (since 2014-06) +F: board/palmtreo680/ +F: include/configs/palmtreo680.h +F: configs/palmtreo680_defconfig diff --git a/board/pandora/Kconfig b/board/pandora/Kconfig new file mode 100644 index 0000000..a36c0c8 --- /dev/null +++ b/board/pandora/Kconfig @@ -0,0 +1,19 @@ +if TARGET_OMAP3_PANDORA + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "pandora" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_pandora" + +endif diff --git a/board/pandora/MAINTAINERS b/board/pandora/MAINTAINERS new file mode 100644 index 0000000..e123517 --- /dev/null +++ b/board/pandora/MAINTAINERS @@ -0,0 +1,6 @@ +PANDORA BOARD +M: Grazvydas Ignotas <notasas@gmail.com> +S: Maintained +F: board/pandora/ +F: include/configs/omap3_pandora.h +F: configs/omap3_pandora_defconfig diff --git a/board/pb1x00/Kconfig b/board/pb1x00/Kconfig new file mode 100644 index 0000000..0ad3f23 --- /dev/null +++ b/board/pb1x00/Kconfig @@ -0,0 +1,19 @@ +if TARGET_PB1X00 + +config SYS_CPU + string + default "mips32" + +config SYS_BOARD + string + default "pb1x00" + +config SYS_SOC + string + default "au1x00" + +config SYS_CONFIG_NAME + string + default "pb1x00" + +endif diff --git a/board/pb1x00/MAINTAINERS b/board/pb1x00/MAINTAINERS new file mode 100644 index 0000000..6c5c2bb --- /dev/null +++ b/board/pb1x00/MAINTAINERS @@ -0,0 +1,6 @@ +PB1X00 BOARD +M: - +S: Maintained +F: board/pb1x00/ +F: include/configs/pb1x00.h +F: configs/pb1000_defconfig diff --git a/board/pcs440ep/Kconfig b/board/pcs440ep/Kconfig new file mode 100644 index 0000000..7e69fd3 --- /dev/null +++ b/board/pcs440ep/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PCS440EP + +config SYS_BOARD + string + default "pcs440ep" + +config SYS_CONFIG_NAME + string + default "pcs440ep" + +endif diff --git a/board/pcs440ep/MAINTAINERS b/board/pcs440ep/MAINTAINERS new file mode 100644 index 0000000..6eccc85 --- /dev/null +++ b/board/pcs440ep/MAINTAINERS @@ -0,0 +1,6 @@ +PCS440EP BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/pcs440ep/ +F: include/configs/pcs440ep.h +F: configs/pcs440ep_defconfig diff --git a/board/pdm360ng/Kconfig b/board/pdm360ng/Kconfig new file mode 100644 index 0000000..e7a8985 --- /dev/null +++ b/board/pdm360ng/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PDM360NG + +config SYS_BOARD + string + default "pdm360ng" + +config SYS_CONFIG_NAME + string + default "pdm360ng" + +endif diff --git a/board/pdm360ng/MAINTAINERS b/board/pdm360ng/MAINTAINERS new file mode 100644 index 0000000..5c99f59 --- /dev/null +++ b/board/pdm360ng/MAINTAINERS @@ -0,0 +1,6 @@ +PDM360NG BOARD +M: Michael Weiss <michael.weiss@ifm.com> +S: Maintained +F: board/pdm360ng/ +F: include/configs/pdm360ng.h +F: configs/pdm360ng_defconfig diff --git a/board/phytec/pcm030/Kconfig b/board/phytec/pcm030/Kconfig new file mode 100644 index 0000000..6eea7e8 --- /dev/null +++ b/board/phytec/pcm030/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PCM030 + +config SYS_BOARD + string + default "pcm030" + +config SYS_VENDOR + string + default "phytec" + +config SYS_CONFIG_NAME + string + default "pcm030" + +endif diff --git a/board/phytec/pcm030/MAINTAINERS b/board/phytec/pcm030/MAINTAINERS new file mode 100644 index 0000000..4e2ab0d --- /dev/null +++ b/board/phytec/pcm030/MAINTAINERS @@ -0,0 +1,7 @@ +PCM030 BOARD +M: Jon Smirl <jonsmirl@gmail.com> +S: Maintained +F: board/phytec/pcm030/ +F: include/configs/pcm030.h +F: configs/pcm030_defconfig +F: configs/pcm030_LOWBOOT_defconfig diff --git a/board/phytec/pcm051/Kconfig b/board/phytec/pcm051/Kconfig new file mode 100644 index 0000000..e710445 --- /dev/null +++ b/board/phytec/pcm051/Kconfig @@ -0,0 +1,23 @@ +if TARGET_PCM051 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "pcm051" + +config SYS_VENDOR + string + default "phytec" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "pcm051" + +endif diff --git a/board/phytec/pcm051/MAINTAINERS b/board/phytec/pcm051/MAINTAINERS new file mode 100644 index 0000000..18ea636 --- /dev/null +++ b/board/phytec/pcm051/MAINTAINERS @@ -0,0 +1,7 @@ +PCM051 BOARD +M: Lars Poeschel <poeschel@lemonage.de> +S: Maintained +F: board/phytec/pcm051/ +F: include/configs/pcm051.h +F: configs/pcm051_rev1_defconfig +F: configs/pcm051_rev3_defconfig diff --git a/board/pm520/Kconfig b/board/pm520/Kconfig new file mode 100644 index 0000000..d32f857 --- /dev/null +++ b/board/pm520/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PM520 + +config SYS_BOARD + string + default "pm520" + +config SYS_CONFIG_NAME + string + default "PM520" + +endif diff --git a/board/pm520/MAINTAINERS b/board/pm520/MAINTAINERS new file mode 100644 index 0000000..7b255bc --- /dev/null +++ b/board/pm520/MAINTAINERS @@ -0,0 +1,9 @@ +PM520 BOARD +M: Josef Wagner <Wagner@Microsys.de> +S: Maintained +F: board/pm520/ +F: include/configs/PM520.h +F: configs/PM520_defconfig +F: configs/PM520_DDR_defconfig +F: configs/PM520_ROMBOOT_defconfig +F: configs/PM520_ROMBOOT_DDR_defconfig diff --git a/board/pm826/Kconfig b/board/pm826/Kconfig new file mode 100644 index 0000000..f1de16a --- /dev/null +++ b/board/pm826/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PM826 + +config SYS_BOARD + string + default "pm826" + +config SYS_CONFIG_NAME + string + default "PM826" + +endif diff --git a/board/pm826/MAINTAINERS b/board/pm826/MAINTAINERS new file mode 100644 index 0000000..41df4c9 --- /dev/null +++ b/board/pm826/MAINTAINERS @@ -0,0 +1,13 @@ +PM826 BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/pm826/ +F: include/configs/PM826.h +F: configs/PM825_defconfig +F: configs/PM825_BIGFLASH_defconfig +F: configs/PM825_ROMBOOT_defconfig +F: configs/PM825_ROMBOOT_BIGFLASH_defconfig +F: configs/PM826_defconfig +F: configs/PM826_BIGFLASH_defconfig +F: configs/PM826_ROMBOOT_defconfig +F: configs/PM826_ROMBOOT_BIGFLASH_defconfig diff --git a/board/pm828/Kconfig b/board/pm828/Kconfig new file mode 100644 index 0000000..20f6b34 --- /dev/null +++ b/board/pm828/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PM828 + +config SYS_BOARD + string + default "pm828" + +config SYS_CONFIG_NAME + string + default "PM828" + +endif diff --git a/board/pm828/MAINTAINERS b/board/pm828/MAINTAINERS new file mode 100644 index 0000000..767a84d --- /dev/null +++ b/board/pm828/MAINTAINERS @@ -0,0 +1,9 @@ +PM828 BOARD +M: - +S: Maintained +F: board/pm828/ +F: include/configs/PM828.h +F: configs/PM828_defconfig +F: configs/PM828_PCI_defconfig +F: configs/PM828_ROMBOOT_defconfig +F: configs/PM828_ROMBOOT_PCI_defconfig diff --git a/board/ppcag/bg0900/Kconfig b/board/ppcag/bg0900/Kconfig new file mode 100644 index 0000000..e4fb601 --- /dev/null +++ b/board/ppcag/bg0900/Kconfig @@ -0,0 +1,23 @@ +if TARGET_BG0900 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "bg0900" + +config SYS_VENDOR + string + default "ppcag" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "bg0900" + +endif diff --git a/board/ppcag/bg0900/MAINTAINERS b/board/ppcag/bg0900/MAINTAINERS new file mode 100644 index 0000000..853c0d5 --- /dev/null +++ b/board/ppcag/bg0900/MAINTAINERS @@ -0,0 +1,6 @@ +BG0900 BOARD +M: Marek Vasut <marex@denx.de> +S: Maintained +F: board/ppcag/bg0900/ +F: include/configs/bg0900.h +F: configs/bg0900_defconfig diff --git a/board/ppmc7xx/Kconfig b/board/ppmc7xx/Kconfig new file mode 100644 index 0000000..a28ab98 --- /dev/null +++ b/board/ppmc7xx/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PPMC7XX + +config SYS_BOARD + string + default "ppmc7xx" + +config SYS_CONFIG_NAME + string + default "ppmc7xx" + +endif diff --git a/board/ppmc7xx/MAINTAINERS b/board/ppmc7xx/MAINTAINERS new file mode 100644 index 0000000..5b21aa7 --- /dev/null +++ b/board/ppmc7xx/MAINTAINERS @@ -0,0 +1,6 @@ +PPMC7XX BOARD +M: - +S: Maintained +F: board/ppmc7xx/ +F: include/configs/ppmc7xx.h +F: configs/ppmc7xx_defconfig diff --git a/board/ppmc8260/Kconfig b/board/ppmc8260/Kconfig new file mode 100644 index 0000000..e2e8793 --- /dev/null +++ b/board/ppmc8260/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PPMC8260 + +config SYS_BOARD + string + default "ppmc8260" + +config SYS_CONFIG_NAME + string + default "ppmc8260" + +endif diff --git a/board/ppmc8260/MAINTAINERS b/board/ppmc8260/MAINTAINERS new file mode 100644 index 0000000..768d092 --- /dev/null +++ b/board/ppmc8260/MAINTAINERS @@ -0,0 +1,6 @@ +PPMC8260 BOARD +M: Brad Kemp <Brad.Kemp@seranoa.com> +S: Orphan (since 2014-04) +F: board/ppmc8260/ +F: include/configs/ppmc8260.h +F: configs/ppmc8260_defconfig diff --git a/board/pr1/Kconfig b/board/pr1/Kconfig new file mode 100644 index 0000000..2d80cd4 --- /dev/null +++ b/board/pr1/Kconfig @@ -0,0 +1,11 @@ +if TARGET_PR1 + +config SYS_BOARD + string + default "pr1" + +config SYS_CONFIG_NAME + string + default "pr1" + +endif diff --git a/board/pr1/MAINTAINERS b/board/pr1/MAINTAINERS new file mode 100644 index 0000000..23fdbc7 --- /dev/null +++ b/board/pr1/MAINTAINERS @@ -0,0 +1,6 @@ +PR1 BOARD +M: Dimitar Penev <dpn@switchfin.org> +S: Maintained +F: board/pr1/ +F: include/configs/pr1.h +F: configs/pr1_defconfig diff --git a/board/prodrive/alpr/Kconfig b/board/prodrive/alpr/Kconfig new file mode 100644 index 0000000..6e99fc7 --- /dev/null +++ b/board/prodrive/alpr/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ALPR + +config SYS_BOARD + string + default "alpr" + +config SYS_VENDOR + string + default "prodrive" + +config SYS_CONFIG_NAME + string + default "alpr" + +endif diff --git a/board/prodrive/alpr/MAINTAINERS b/board/prodrive/alpr/MAINTAINERS new file mode 100644 index 0000000..31baabb --- /dev/null +++ b/board/prodrive/alpr/MAINTAINERS @@ -0,0 +1,6 @@ +ALPR BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/prodrive/alpr/ +F: include/configs/alpr.h +F: configs/alpr_defconfig diff --git a/board/prodrive/p3mx/Kconfig b/board/prodrive/p3mx/Kconfig new file mode 100644 index 0000000..89dcba0 --- /dev/null +++ b/board/prodrive/p3mx/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P3MX + +config SYS_BOARD + string + default "p3mx" + +config SYS_VENDOR + string + default "prodrive" + +config SYS_CONFIG_NAME + string + default "p3mx" + +endif diff --git a/board/prodrive/p3mx/MAINTAINERS b/board/prodrive/p3mx/MAINTAINERS new file mode 100644 index 0000000..e60fdb6 --- /dev/null +++ b/board/prodrive/p3mx/MAINTAINERS @@ -0,0 +1,7 @@ +P3MX BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/prodrive/p3mx/ +F: include/configs/p3mx.h +F: configs/p3m7448_defconfig +F: configs/p3m750_defconfig diff --git a/board/prodrive/p3p440/Kconfig b/board/prodrive/p3p440/Kconfig new file mode 100644 index 0000000..a0eabe1 --- /dev/null +++ b/board/prodrive/p3p440/Kconfig @@ -0,0 +1,15 @@ +if TARGET_P3P440 + +config SYS_BOARD + string + default "p3p440" + +config SYS_VENDOR + string + default "prodrive" + +config SYS_CONFIG_NAME + string + default "p3p440" + +endif diff --git a/board/prodrive/p3p440/MAINTAINERS b/board/prodrive/p3p440/MAINTAINERS new file mode 100644 index 0000000..68fd1a9 --- /dev/null +++ b/board/prodrive/p3p440/MAINTAINERS @@ -0,0 +1,6 @@ +P3P440 BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/prodrive/p3p440/ +F: include/configs/p3p440.h +F: configs/p3p440_defconfig diff --git a/board/psyent/pci5441/Kconfig b/board/psyent/pci5441/Kconfig new file mode 100644 index 0000000..d722f31 --- /dev/null +++ b/board/psyent/pci5441/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PCI5441 + +config SYS_BOARD + string + default "pci5441" + +config SYS_VENDOR + string + default "psyent" + +config SYS_CONFIG_NAME + string + default "PCI5441" + +endif diff --git a/board/psyent/pci5441/MAINTAINERS b/board/psyent/pci5441/MAINTAINERS new file mode 100644 index 0000000..f1f10e9 --- /dev/null +++ b/board/psyent/pci5441/MAINTAINERS @@ -0,0 +1,6 @@ +PCI5441 BOARD +M: Scott McNutt <smcnutt@psyent.com> +S: Maintained +F: board/psyent/pci5441/ +F: include/configs/PCI5441.h +F: configs/PCI5441_defconfig diff --git a/board/psyent/pk1c20/Kconfig b/board/psyent/pk1c20/Kconfig new file mode 100644 index 0000000..75f6cd1 --- /dev/null +++ b/board/psyent/pk1c20/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PK1C20 + +config SYS_BOARD + string + default "pk1c20" + +config SYS_VENDOR + string + default "psyent" + +config SYS_CONFIG_NAME + string + default "PK1C20" + +endif diff --git a/board/psyent/pk1c20/MAINTAINERS b/board/psyent/pk1c20/MAINTAINERS new file mode 100644 index 0000000..32b901a --- /dev/null +++ b/board/psyent/pk1c20/MAINTAINERS @@ -0,0 +1,6 @@ +PK1C20 BOARD +M: Scott McNutt <smcnutt@psyent.com> +S: Maintained +F: board/psyent/pk1c20/ +F: include/configs/PK1C20.h +F: configs/PK1C20_defconfig diff --git a/board/pxa255_idp/Kconfig b/board/pxa255_idp/Kconfig new file mode 100644 index 0000000..e231f28 --- /dev/null +++ b/board/pxa255_idp/Kconfig @@ -0,0 +1,15 @@ +if TARGET_PXA255_IDP + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "pxa255_idp" + +config SYS_CONFIG_NAME + string + default "pxa255_idp" + +endif diff --git a/board/pxa255_idp/MAINTAINERS b/board/pxa255_idp/MAINTAINERS new file mode 100644 index 0000000..24d7236 --- /dev/null +++ b/board/pxa255_idp/MAINTAINERS @@ -0,0 +1,6 @@ +PXA255_IDP BOARD +M: Cliff Brake <cliff.brake@gmail.com> +S: Maintained +F: board/pxa255_idp/ +F: include/configs/pxa255_idp.h +F: configs/pxa255_idp_defconfig diff --git a/board/qemu-mips/Kconfig b/board/qemu-mips/Kconfig new file mode 100644 index 0000000..0ca816d --- /dev/null +++ b/board/qemu-mips/Kconfig @@ -0,0 +1,31 @@ +if TARGET_QEMU_MIPS + +config SYS_CPU + string + default "mips32" + +config SYS_BOARD + string + default "qemu-mips" + +config SYS_CONFIG_NAME + string + default "qemu-mips" + +endif + +if TARGET_QEMU_MIPS64 + +config SYS_CPU + string + default "mips64" + +config SYS_BOARD + string + default "qemu-mips" + +config SYS_CONFIG_NAME + string + default "qemu-mips64" + +endif diff --git a/board/qemu-mips/MAINTAINERS b/board/qemu-mips/MAINTAINERS new file mode 100644 index 0000000..079949a --- /dev/null +++ b/board/qemu-mips/MAINTAINERS @@ -0,0 +1,14 @@ +QEMU-MIPS BOARD +M: Vlad Lungu <vlad.lungu@windriver.com> +S: Maintained +F: board/qemu-mips/ +F: include/configs/qemu-mips.h +F: configs/qemu_mips_defconfig + +QEMU_MIPSEL BOARD +M: - +S: Maintained +F: configs/qemu_mipsel_defconfig +F: include/configs/qemu-mips64.h +F: configs/qemu_mips64_defconfig +F: configs/qemu_mips64el_defconfig diff --git a/board/r360mpi/Kconfig b/board/r360mpi/Kconfig new file mode 100644 index 0000000..ea4614f --- /dev/null +++ b/board/r360mpi/Kconfig @@ -0,0 +1,11 @@ +if TARGET_R360MPI + +config SYS_BOARD + string + default "r360mpi" + +config SYS_CONFIG_NAME + string + default "R360MPI" + +endif diff --git a/board/r360mpi/MAINTAINERS b/board/r360mpi/MAINTAINERS new file mode 100644 index 0000000..a67ab0c --- /dev/null +++ b/board/r360mpi/MAINTAINERS @@ -0,0 +1,6 @@ +R360MPI BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/r360mpi/ +F: include/configs/R360MPI.h +F: configs/R360MPI_defconfig diff --git a/board/raidsonic/ib62x0/Kconfig b/board/raidsonic/ib62x0/Kconfig new file mode 100644 index 0000000..1e667c4 --- /dev/null +++ b/board/raidsonic/ib62x0/Kconfig @@ -0,0 +1,23 @@ +if TARGET_IB62X0 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "ib62x0" + +config SYS_VENDOR + string + default "raidsonic" + +config SYS_SOC + string + default "kirkwood" + +config SYS_CONFIG_NAME + string + default "ib62x0" + +endif diff --git a/board/raidsonic/ib62x0/MAINTAINERS b/board/raidsonic/ib62x0/MAINTAINERS new file mode 100644 index 0000000..423aa0c --- /dev/null +++ b/board/raidsonic/ib62x0/MAINTAINERS @@ -0,0 +1,6 @@ +IB62X0 BOARD +M: Luka Perkov <luka@openwrt.org> +S: Maintained +F: board/raidsonic/ib62x0/ +F: include/configs/ib62x0.h +F: configs/ib62x0_defconfig diff --git a/board/raspberrypi/rpi_b/Kconfig b/board/raspberrypi/rpi_b/Kconfig new file mode 100644 index 0000000..6e99c91 --- /dev/null +++ b/board/raspberrypi/rpi_b/Kconfig @@ -0,0 +1,23 @@ +if TARGET_RPI_B + +config SYS_CPU + string + default "arm1176" + +config SYS_BOARD + string + default "rpi_b" + +config SYS_VENDOR + string + default "raspberrypi" + +config SYS_SOC + string + default "bcm2835" + +config SYS_CONFIG_NAME + string + default "rpi_b" + +endif diff --git a/board/raspberrypi/rpi_b/MAINTAINERS b/board/raspberrypi/rpi_b/MAINTAINERS new file mode 100644 index 0000000..14f3948 --- /dev/null +++ b/board/raspberrypi/rpi_b/MAINTAINERS @@ -0,0 +1,6 @@ +RPI_B BOARD +M: Stephen Warren <swarren@wwwdotorg.org> +S: Maintained +F: board/raspberrypi/rpi_b/ +F: include/configs/rpi_b.h +F: configs/rpi_b_defconfig diff --git a/board/renesas/MigoR/Kconfig b/board/renesas/MigoR/Kconfig new file mode 100644 index 0000000..d72a453 --- /dev/null +++ b/board/renesas/MigoR/Kconfig @@ -0,0 +1,19 @@ +if TARGET_MIGOR + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "MigoR" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "MigoR" + +endif diff --git a/board/renesas/MigoR/MAINTAINERS b/board/renesas/MigoR/MAINTAINERS new file mode 100644 index 0000000..9368b05 --- /dev/null +++ b/board/renesas/MigoR/MAINTAINERS @@ -0,0 +1,6 @@ +MIGOR BOARD +M: - +S: Maintained +F: board/renesas/MigoR/ +F: include/configs/MigoR.h +F: configs/MigoR_defconfig diff --git a/board/renesas/alt/Kconfig b/board/renesas/alt/Kconfig new file mode 100644 index 0000000..d317025 --- /dev/null +++ b/board/renesas/alt/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ALT + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "alt" + +config SYS_VENDOR + string + default "renesas" + +config SYS_SOC + string + default "rmobile" + +config SYS_CONFIG_NAME + string + default "alt" + +endif diff --git a/board/renesas/alt/MAINTAINERS b/board/renesas/alt/MAINTAINERS new file mode 100644 index 0000000..6ec140b --- /dev/null +++ b/board/renesas/alt/MAINTAINERS @@ -0,0 +1,6 @@ +ALT BOARD +M: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> +S: Maintained +F: board/renesas/alt/ +F: include/configs/alt.h +F: configs/alt_defconfig diff --git a/board/renesas/ap325rxa/Kconfig b/board/renesas/ap325rxa/Kconfig new file mode 100644 index 0000000..ac1e9ef --- /dev/null +++ b/board/renesas/ap325rxa/Kconfig @@ -0,0 +1,19 @@ +if TARGET_AP325RXA + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "ap325rxa" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "ap325rxa" + +endif diff --git a/board/renesas/ap325rxa/MAINTAINERS b/board/renesas/ap325rxa/MAINTAINERS new file mode 100644 index 0000000..bdc49c5 --- /dev/null +++ b/board/renesas/ap325rxa/MAINTAINERS @@ -0,0 +1,7 @@ +AP325RXA BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/renesas/ap325rxa/ +F: include/configs/ap325rxa.h +F: configs/ap325rxa_defconfig diff --git a/board/renesas/ecovec/Kconfig b/board/renesas/ecovec/Kconfig new file mode 100644 index 0000000..d62389e --- /dev/null +++ b/board/renesas/ecovec/Kconfig @@ -0,0 +1,19 @@ +if TARGET_ECOVEC + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "ecovec" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "ecovec" + +endif diff --git a/board/renesas/ecovec/MAINTAINERS b/board/renesas/ecovec/MAINTAINERS new file mode 100644 index 0000000..439b528 --- /dev/null +++ b/board/renesas/ecovec/MAINTAINERS @@ -0,0 +1,7 @@ +ECOVEC BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/renesas/ecovec/ +F: include/configs/ecovec.h +F: configs/ecovec_defconfig diff --git a/board/renesas/koelsch/Kconfig b/board/renesas/koelsch/Kconfig new file mode 100644 index 0000000..0def847 --- /dev/null +++ b/board/renesas/koelsch/Kconfig @@ -0,0 +1,23 @@ +if TARGET_KOELSCH + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "koelsch" + +config SYS_VENDOR + string + default "renesas" + +config SYS_SOC + string + default "rmobile" + +config SYS_CONFIG_NAME + string + default "koelsch" + +endif diff --git a/board/renesas/koelsch/MAINTAINERS b/board/renesas/koelsch/MAINTAINERS new file mode 100644 index 0000000..5267b9f --- /dev/null +++ b/board/renesas/koelsch/MAINTAINERS @@ -0,0 +1,6 @@ +KOELSCH BOARD +M: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> +S: Maintained +F: board/renesas/koelsch/ +F: include/configs/koelsch.h +F: configs/koelsch_defconfig diff --git a/board/renesas/lager/Kconfig b/board/renesas/lager/Kconfig new file mode 100644 index 0000000..e88f4f6 --- /dev/null +++ b/board/renesas/lager/Kconfig @@ -0,0 +1,23 @@ +if TARGET_LAGER + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "lager" + +config SYS_VENDOR + string + default "renesas" + +config SYS_SOC + string + default "rmobile" + +config SYS_CONFIG_NAME + string + default "lager" + +endif diff --git a/board/renesas/lager/MAINTAINERS b/board/renesas/lager/MAINTAINERS new file mode 100644 index 0000000..a098686 --- /dev/null +++ b/board/renesas/lager/MAINTAINERS @@ -0,0 +1,6 @@ +LAGER BOARD +M: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> +S: Maintained +F: board/renesas/lager/ +F: include/configs/lager.h +F: configs/lager_defconfig diff --git a/board/renesas/r0p7734/Kconfig b/board/renesas/r0p7734/Kconfig new file mode 100644 index 0000000..2eb1de2 --- /dev/null +++ b/board/renesas/r0p7734/Kconfig @@ -0,0 +1,19 @@ +if TARGET_R0P7734 + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "r0p7734" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "r0p7734" + +endif diff --git a/board/renesas/r0p7734/MAINTAINERS b/board/renesas/r0p7734/MAINTAINERS new file mode 100644 index 0000000..c169ad7 --- /dev/null +++ b/board/renesas/r0p7734/MAINTAINERS @@ -0,0 +1,7 @@ +R0P7734 BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/renesas/r0p7734/ +F: include/configs/r0p7734.h +F: configs/r0p7734_defconfig diff --git a/board/renesas/r2dplus/Kconfig b/board/renesas/r2dplus/Kconfig new file mode 100644 index 0000000..d674d77 --- /dev/null +++ b/board/renesas/r2dplus/Kconfig @@ -0,0 +1,19 @@ +if TARGET_R2DPLUS + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "r2dplus" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "r2dplus" + +endif diff --git a/board/renesas/r2dplus/MAINTAINERS b/board/renesas/r2dplus/MAINTAINERS new file mode 100644 index 0000000..58877c5 --- /dev/null +++ b/board/renesas/r2dplus/MAINTAINERS @@ -0,0 +1,7 @@ +R2DPLUS BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/renesas/r2dplus/ +F: include/configs/r2dplus.h +F: configs/r2dplus_defconfig diff --git a/board/renesas/r7780mp/Kconfig b/board/renesas/r7780mp/Kconfig new file mode 100644 index 0000000..a862f59 --- /dev/null +++ b/board/renesas/r7780mp/Kconfig @@ -0,0 +1,19 @@ +if TARGET_R7780MP + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "r7780mp" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "r7780mp" + +endif diff --git a/board/renesas/r7780mp/MAINTAINERS b/board/renesas/r7780mp/MAINTAINERS new file mode 100644 index 0000000..56ec21f --- /dev/null +++ b/board/renesas/r7780mp/MAINTAINERS @@ -0,0 +1,7 @@ +R7780MP BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/renesas/r7780mp/ +F: include/configs/r7780mp.h +F: configs/r7780mp_defconfig diff --git a/board/renesas/rsk7203/Kconfig b/board/renesas/rsk7203/Kconfig new file mode 100644 index 0000000..61e9913 --- /dev/null +++ b/board/renesas/rsk7203/Kconfig @@ -0,0 +1,19 @@ +if TARGET_RSK7203 + +config SYS_CPU + string + default "sh2" + +config SYS_BOARD + string + default "rsk7203" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "rsk7203" + +endif diff --git a/board/renesas/rsk7203/MAINTAINERS b/board/renesas/rsk7203/MAINTAINERS new file mode 100644 index 0000000..18d3663 --- /dev/null +++ b/board/renesas/rsk7203/MAINTAINERS @@ -0,0 +1,7 @@ +RSK7203 BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/renesas/rsk7203/ +F: include/configs/rsk7203.h +F: configs/rsk7203_defconfig diff --git a/board/renesas/rsk7264/Kconfig b/board/renesas/rsk7264/Kconfig new file mode 100644 index 0000000..a32d3ca --- /dev/null +++ b/board/renesas/rsk7264/Kconfig @@ -0,0 +1,19 @@ +if TARGET_RSK7264 + +config SYS_CPU + string + default "sh2" + +config SYS_BOARD + string + default "rsk7264" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "rsk7264" + +endif diff --git a/board/renesas/rsk7264/MAINTAINERS b/board/renesas/rsk7264/MAINTAINERS new file mode 100644 index 0000000..f6202b7 --- /dev/null +++ b/board/renesas/rsk7264/MAINTAINERS @@ -0,0 +1,6 @@ +RSK7264 BOARD +M: Phil Edworthy <phil.edworthy@renesas.com> +S: Maintained +F: board/renesas/rsk7264/ +F: include/configs/rsk7264.h +F: configs/rsk7264_defconfig diff --git a/board/renesas/rsk7269/Kconfig b/board/renesas/rsk7269/Kconfig new file mode 100644 index 0000000..c126fcb --- /dev/null +++ b/board/renesas/rsk7269/Kconfig @@ -0,0 +1,19 @@ +if TARGET_RSK7269 + +config SYS_CPU + string + default "sh2" + +config SYS_BOARD + string + default "rsk7269" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "rsk7269" + +endif diff --git a/board/renesas/rsk7269/MAINTAINERS b/board/renesas/rsk7269/MAINTAINERS new file mode 100644 index 0000000..d3c77c3 --- /dev/null +++ b/board/renesas/rsk7269/MAINTAINERS @@ -0,0 +1,6 @@ +RSK7269 BOARD +M: - +S: Maintained +F: board/renesas/rsk7269/ +F: include/configs/rsk7269.h +F: configs/rsk7269_defconfig diff --git a/board/renesas/sh7752evb/Kconfig b/board/renesas/sh7752evb/Kconfig new file mode 100644 index 0000000..12e52b4 --- /dev/null +++ b/board/renesas/sh7752evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_SH7752EVB + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "sh7752evb" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "sh7752evb" + +endif diff --git a/board/renesas/sh7752evb/MAINTAINERS b/board/renesas/sh7752evb/MAINTAINERS new file mode 100644 index 0000000..8910669 --- /dev/null +++ b/board/renesas/sh7752evb/MAINTAINERS @@ -0,0 +1,6 @@ +SH7752EVB BOARD +M: - +S: Maintained +F: board/renesas/sh7752evb/ +F: include/configs/sh7752evb.h +F: configs/sh7752evb_defconfig diff --git a/board/renesas/sh7753evb/Kconfig b/board/renesas/sh7753evb/Kconfig new file mode 100644 index 0000000..a1f4cd0 --- /dev/null +++ b/board/renesas/sh7753evb/Kconfig @@ -0,0 +1,19 @@ +if TARGET_SH7753EVB + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "sh7753evb" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "sh7753evb" + +endif diff --git a/board/renesas/sh7753evb/MAINTAINERS b/board/renesas/sh7753evb/MAINTAINERS new file mode 100644 index 0000000..03e6c8c --- /dev/null +++ b/board/renesas/sh7753evb/MAINTAINERS @@ -0,0 +1,6 @@ +SH7753EVB BOARD +M: - +S: Maintained +F: board/renesas/sh7753evb/ +F: include/configs/sh7753evb.h +F: configs/sh7753evb_defconfig diff --git a/board/renesas/sh7757lcr/Kconfig b/board/renesas/sh7757lcr/Kconfig new file mode 100644 index 0000000..a0e3265 --- /dev/null +++ b/board/renesas/sh7757lcr/Kconfig @@ -0,0 +1,19 @@ +if TARGET_SH7757LCR + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "sh7757lcr" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "sh7757lcr" + +endif diff --git a/board/renesas/sh7757lcr/MAINTAINERS b/board/renesas/sh7757lcr/MAINTAINERS new file mode 100644 index 0000000..bbdd6d0 --- /dev/null +++ b/board/renesas/sh7757lcr/MAINTAINERS @@ -0,0 +1,6 @@ +SH7757LCR BOARD +M: - +S: Maintained +F: board/renesas/sh7757lcr/ +F: include/configs/sh7757lcr.h +F: configs/sh7757lcr_defconfig diff --git a/board/renesas/sh7763rdp/Kconfig b/board/renesas/sh7763rdp/Kconfig new file mode 100644 index 0000000..fbc11af --- /dev/null +++ b/board/renesas/sh7763rdp/Kconfig @@ -0,0 +1,19 @@ +if TARGET_SH7763RDP + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "sh7763rdp" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "sh7763rdp" + +endif diff --git a/board/renesas/sh7763rdp/MAINTAINERS b/board/renesas/sh7763rdp/MAINTAINERS new file mode 100644 index 0000000..6ee8f9f --- /dev/null +++ b/board/renesas/sh7763rdp/MAINTAINERS @@ -0,0 +1,7 @@ +SH7763RDP BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/renesas/sh7763rdp/ +F: include/configs/sh7763rdp.h +F: configs/sh7763rdp_defconfig diff --git a/board/renesas/sh7785lcr/Kconfig b/board/renesas/sh7785lcr/Kconfig new file mode 100644 index 0000000..8939f7d --- /dev/null +++ b/board/renesas/sh7785lcr/Kconfig @@ -0,0 +1,19 @@ +if TARGET_SH7785LCR + +config SYS_CPU + string + default "sh4" + +config SYS_BOARD + string + default "sh7785lcr" + +config SYS_VENDOR + string + default "renesas" + +config SYS_CONFIG_NAME + string + default "sh7785lcr" + +endif diff --git a/board/renesas/sh7785lcr/MAINTAINERS b/board/renesas/sh7785lcr/MAINTAINERS new file mode 100644 index 0000000..0d99de6 --- /dev/null +++ b/board/renesas/sh7785lcr/MAINTAINERS @@ -0,0 +1,7 @@ +SH7785LCR BOARD +M: - +S: Maintained +F: board/renesas/sh7785lcr/ +F: include/configs/sh7785lcr.h +F: configs/sh7785lcr_defconfig +F: configs/sh7785lcr_32bit_defconfig diff --git a/board/ronetix/pm9261/Kconfig b/board/ronetix/pm9261/Kconfig new file mode 100644 index 0000000..1cb9149 --- /dev/null +++ b/board/ronetix/pm9261/Kconfig @@ -0,0 +1,23 @@ +if TARGET_PM9261 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "pm9261" + +config SYS_VENDOR + string + default "ronetix" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "pm9261" + +endif diff --git a/board/ronetix/pm9261/MAINTAINERS b/board/ronetix/pm9261/MAINTAINERS new file mode 100644 index 0000000..a09b6c0 --- /dev/null +++ b/board/ronetix/pm9261/MAINTAINERS @@ -0,0 +1,6 @@ +PM9261 BOARD +M: Ilko Iliev <iliev@ronetix.at> +S: Maintained +F: board/ronetix/pm9261/ +F: include/configs/pm9261.h +F: configs/pm9261_defconfig diff --git a/board/ronetix/pm9263/Kconfig b/board/ronetix/pm9263/Kconfig new file mode 100644 index 0000000..292ccd6 --- /dev/null +++ b/board/ronetix/pm9263/Kconfig @@ -0,0 +1,23 @@ +if TARGET_PM9263 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "pm9263" + +config SYS_VENDOR + string + default "ronetix" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "pm9263" + +endif diff --git a/board/ronetix/pm9263/MAINTAINERS b/board/ronetix/pm9263/MAINTAINERS new file mode 100644 index 0000000..f26e82a --- /dev/null +++ b/board/ronetix/pm9263/MAINTAINERS @@ -0,0 +1,6 @@ +PM9263 BOARD +M: Ilko Iliev <iliev@ronetix.at> +S: Maintained +F: board/ronetix/pm9263/ +F: include/configs/pm9263.h +F: configs/pm9263_defconfig diff --git a/board/ronetix/pm9g45/Kconfig b/board/ronetix/pm9g45/Kconfig new file mode 100644 index 0000000..e60e9aa --- /dev/null +++ b/board/ronetix/pm9g45/Kconfig @@ -0,0 +1,23 @@ +if TARGET_PM9G45 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "pm9g45" + +config SYS_VENDOR + string + default "ronetix" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "pm9g45" + +endif diff --git a/board/ronetix/pm9g45/MAINTAINERS b/board/ronetix/pm9g45/MAINTAINERS new file mode 100644 index 0000000..255a357f --- /dev/null +++ b/board/ronetix/pm9g45/MAINTAINERS @@ -0,0 +1,6 @@ +PM9G45 BOARD +M: Ilko Iliev <iliev@ronetix.at> +S: Maintained +F: board/ronetix/pm9g45/ +F: include/configs/pm9g45.h +F: configs/pm9g45_defconfig diff --git a/board/sacsng/Kconfig b/board/sacsng/Kconfig new file mode 100644 index 0000000..f716a91 --- /dev/null +++ b/board/sacsng/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SACSNG + +config SYS_BOARD + string + default "sacsng" + +config SYS_CONFIG_NAME + string + default "sacsng" + +endif diff --git a/board/sacsng/MAINTAINERS b/board/sacsng/MAINTAINERS new file mode 100644 index 0000000..c2c8ee3 --- /dev/null +++ b/board/sacsng/MAINTAINERS @@ -0,0 +1,6 @@ +SACSNG BOARD +M: Jerry Van Baren <gerald.vanbaren@smiths-aerospace.com> +S: Orphan (since 2014-06) +F: board/sacsng/ +F: include/configs/sacsng.h +F: configs/sacsng_defconfig diff --git a/board/samsung/arndale/Kconfig b/board/samsung/arndale/Kconfig new file mode 100644 index 0000000..c3af0ec --- /dev/null +++ b/board/samsung/arndale/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ARNDALE + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "arndale" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "arndale" + +endif diff --git a/board/samsung/arndale/MAINTAINERS b/board/samsung/arndale/MAINTAINERS new file mode 100644 index 0000000..0a01a07 --- /dev/null +++ b/board/samsung/arndale/MAINTAINERS @@ -0,0 +1,6 @@ +ARNDALE BOARD +M: Inderpal Singh <inderpal.singh@linaro.org> +S: Maintained +F: board/samsung/arndale/ +F: include/configs/arndale.h +F: configs/arndale_defconfig diff --git a/board/samsung/goni/Kconfig b/board/samsung/goni/Kconfig new file mode 100644 index 0000000..0be535e --- /dev/null +++ b/board/samsung/goni/Kconfig @@ -0,0 +1,23 @@ +if TARGET_S5P_GONI + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "goni" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "s5pc1xx" + +config SYS_CONFIG_NAME + string + default "s5p_goni" + +endif diff --git a/board/samsung/goni/MAINTAINERS b/board/samsung/goni/MAINTAINERS new file mode 100644 index 0000000..248ec3c --- /dev/null +++ b/board/samsung/goni/MAINTAINERS @@ -0,0 +1,6 @@ +GONI BOARD +M: Robert Baldyga <r.baldyga@samsung.com> +S: Maintained +F: board/samsung/goni/ +F: include/configs/s5p_goni.h +F: configs/s5p_goni_defconfig diff --git a/board/samsung/origen/Kconfig b/board/samsung/origen/Kconfig new file mode 100644 index 0000000..f52de83 --- /dev/null +++ b/board/samsung/origen/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ORIGEN + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "origen" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "origen" + +endif diff --git a/board/samsung/origen/MAINTAINERS b/board/samsung/origen/MAINTAINERS new file mode 100644 index 0000000..8bf373e --- /dev/null +++ b/board/samsung/origen/MAINTAINERS @@ -0,0 +1,6 @@ +ORIGEN BOARD +M: Chander Kashyap <k.chander@samsung.com> +S: Maintained +F: board/samsung/origen/ +F: include/configs/origen.h +F: configs/origen_defconfig diff --git a/board/samsung/smdk2410/Kconfig b/board/samsung/smdk2410/Kconfig new file mode 100644 index 0000000..e921c09 --- /dev/null +++ b/board/samsung/smdk2410/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SMDK2410 + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "smdk2410" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "s3c24x0" + +config SYS_CONFIG_NAME + string + default "smdk2410" + +endif diff --git a/board/samsung/smdk2410/MAINTAINERS b/board/samsung/smdk2410/MAINTAINERS new file mode 100644 index 0000000..12a25e8 --- /dev/null +++ b/board/samsung/smdk2410/MAINTAINERS @@ -0,0 +1,6 @@ +SMDK2410 BOARD +M: David Müller <d.mueller@elsoft.ch> +S: Maintained +F: board/samsung/smdk2410/ +F: include/configs/smdk2410.h +F: configs/smdk2410_defconfig diff --git a/board/samsung/smdk5250/Kconfig b/board/samsung/smdk5250/Kconfig new file mode 100644 index 0000000..edebbde --- /dev/null +++ b/board/samsung/smdk5250/Kconfig @@ -0,0 +1,47 @@ +if TARGET_SMDK5250 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "smdk5250" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "smdk5250" + +endif + +if TARGET_SNOW + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "smdk5250" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "snow" + +endif diff --git a/board/samsung/smdk5250/MAINTAINERS b/board/samsung/smdk5250/MAINTAINERS new file mode 100644 index 0000000..8a2a4aa --- /dev/null +++ b/board/samsung/smdk5250/MAINTAINERS @@ -0,0 +1,12 @@ +SMDK5250 BOARD +M: Chander Kashyap <k.chander@samsung.com> +S: Maintained +F: board/samsung/smdk5250/ +F: include/configs/smdk5250.h +F: configs/smdk5250_defconfig + +SNOW BOARD +M: Rajeshwari Shinde <rajeshwari.s@samsung.com> +S: Maintained +F: include/configs/snow.h +F: configs/snow_defconfig diff --git a/board/samsung/smdk5420/Kconfig b/board/samsung/smdk5420/Kconfig new file mode 100644 index 0000000..052c275 --- /dev/null +++ b/board/samsung/smdk5420/Kconfig @@ -0,0 +1,47 @@ +if TARGET_PEACH_PIT + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "smdk5420" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "peach-pit" + +endif + +if TARGET_SMDK5420 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "smdk5420" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "smdk5420" + +endif diff --git a/board/samsung/smdk5420/MAINTAINERS b/board/samsung/smdk5420/MAINTAINERS new file mode 100644 index 0000000..c8241a8 --- /dev/null +++ b/board/samsung/smdk5420/MAINTAINERS @@ -0,0 +1,12 @@ +SMDK5420 BOARD +M: Akshay Saraswat <akshay.s@samsung.com> +S: Maintained +F: board/samsung/smdk5420/ +F: include/configs/peach-pit.h +F: configs/peach-pit_defconfig + +SMDK5420 BOARD +M: Rajeshwari Shinde <rajeshwari.s@samsung.com> +S: Maintained +F: include/configs/smdk5420.h +F: configs/smdk5420_defconfig diff --git a/board/samsung/smdkc100/Kconfig b/board/samsung/smdkc100/Kconfig new file mode 100644 index 0000000..9c2b4da --- /dev/null +++ b/board/samsung/smdkc100/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SMDKC100 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "smdkc100" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "s5pc1xx" + +config SYS_CONFIG_NAME + string + default "smdkc100" + +endif diff --git a/board/samsung/smdkc100/MAINTAINERS b/board/samsung/smdkc100/MAINTAINERS new file mode 100644 index 0000000..39949e4 --- /dev/null +++ b/board/samsung/smdkc100/MAINTAINERS @@ -0,0 +1,6 @@ +SMDKC100 BOARD +M: Minkyu Kang <mk7.kang@samsung.com> +S: Maintained +F: board/samsung/smdkc100/ +F: include/configs/smdkc100.h +F: configs/smdkc100_defconfig diff --git a/board/samsung/smdkv310/Kconfig b/board/samsung/smdkv310/Kconfig new file mode 100644 index 0000000..e467092 --- /dev/null +++ b/board/samsung/smdkv310/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SMDKV310 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "smdkv310" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "smdkv310" + +endif diff --git a/board/samsung/smdkv310/MAINTAINERS b/board/samsung/smdkv310/MAINTAINERS new file mode 100644 index 0000000..1e058cb --- /dev/null +++ b/board/samsung/smdkv310/MAINTAINERS @@ -0,0 +1,6 @@ +SMDKV310 BOARD +M: Chander Kashyap <k.chander@samsung.com> +S: Maintained +F: board/samsung/smdkv310/ +F: include/configs/smdkv310.h +F: configs/smdkv310_defconfig diff --git a/board/samsung/trats/Kconfig b/board/samsung/trats/Kconfig new file mode 100644 index 0000000..040413e --- /dev/null +++ b/board/samsung/trats/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TRATS + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "trats" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "trats" + +endif diff --git a/board/samsung/trats/MAINTAINERS b/board/samsung/trats/MAINTAINERS new file mode 100644 index 0000000..1b219b4 --- /dev/null +++ b/board/samsung/trats/MAINTAINERS @@ -0,0 +1,6 @@ +TRATS BOARD +M: Lukasz Majewski <l.majewski@samsung.com> +S: Maintained +F: board/samsung/trats/ +F: include/configs/trats.h +F: configs/trats_defconfig diff --git a/board/samsung/trats2/Kconfig b/board/samsung/trats2/Kconfig new file mode 100644 index 0000000..a82fdfb --- /dev/null +++ b/board/samsung/trats2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TRATS2 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "trats2" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "trats2" + +endif diff --git a/board/samsung/trats2/MAINTAINERS b/board/samsung/trats2/MAINTAINERS new file mode 100644 index 0000000..7018300 --- /dev/null +++ b/board/samsung/trats2/MAINTAINERS @@ -0,0 +1,6 @@ +TRATS2 BOARD +M: Lukasz Majewski <l.majewski@samsung.com> +S: Maintained +F: board/samsung/trats2/ +F: include/configs/trats2.h +F: configs/trats2_defconfig diff --git a/board/samsung/universal_c210/Kconfig b/board/samsung/universal_c210/Kconfig new file mode 100644 index 0000000..082168f --- /dev/null +++ b/board/samsung/universal_c210/Kconfig @@ -0,0 +1,23 @@ +if TARGET_S5PC210_UNIVERSAL + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "universal_c210" + +config SYS_VENDOR + string + default "samsung" + +config SYS_SOC + string + default "exynos" + +config SYS_CONFIG_NAME + string + default "s5pc210_universal" + +endif diff --git a/board/samsung/universal_c210/MAINTAINERS b/board/samsung/universal_c210/MAINTAINERS new file mode 100644 index 0000000..6760678 --- /dev/null +++ b/board/samsung/universal_c210/MAINTAINERS @@ -0,0 +1,6 @@ +UNIVERSAL_C210 BOARD +M: Przemyslaw Marczak <p.marczak@samsung.com> +S: Maintained +F: board/samsung/universal_c210/ +F: include/configs/s5pc210_universal.h +F: configs/s5pc210_universal_defconfig diff --git a/board/sandbox/MAINTAINERS b/board/sandbox/MAINTAINERS new file mode 100644 index 0000000..10d88a2 --- /dev/null +++ b/board/sandbox/MAINTAINERS @@ -0,0 +1,6 @@ +SANDBOX BOARD +M: Simon Glass <sjg@chromium.org> +S: Maintained +F: board/sandbox/ +F: include/configs/sandbox.h +F: configs/sandbox_defconfig diff --git a/board/sandburst/karef/Kconfig b/board/sandburst/karef/Kconfig new file mode 100644 index 0000000..d4aaea5 --- /dev/null +++ b/board/sandburst/karef/Kconfig @@ -0,0 +1,15 @@ +if TARGET_KAREF + +config SYS_BOARD + string + default "karef" + +config SYS_VENDOR + string + default "sandburst" + +config SYS_CONFIG_NAME + string + default "KAREF" + +endif diff --git a/board/sandburst/karef/MAINTAINERS b/board/sandburst/karef/MAINTAINERS new file mode 100644 index 0000000..4c29ae7 --- /dev/null +++ b/board/sandburst/karef/MAINTAINERS @@ -0,0 +1,6 @@ +KAREF BOARD +M: Travis Sawyer <travis.sawyer@sandburst.com> +S: Orphan (since 2014-03) +F: board/sandburst/karef/ +F: include/configs/KAREF.h +F: configs/KAREF_defconfig diff --git a/board/sandburst/metrobox/Kconfig b/board/sandburst/metrobox/Kconfig new file mode 100644 index 0000000..be2affc --- /dev/null +++ b/board/sandburst/metrobox/Kconfig @@ -0,0 +1,15 @@ +if TARGET_METROBOX + +config SYS_BOARD + string + default "metrobox" + +config SYS_VENDOR + string + default "sandburst" + +config SYS_CONFIG_NAME + string + default "METROBOX" + +endif diff --git a/board/sandburst/metrobox/MAINTAINERS b/board/sandburst/metrobox/MAINTAINERS new file mode 100644 index 0000000..f5734ba --- /dev/null +++ b/board/sandburst/metrobox/MAINTAINERS @@ -0,0 +1,6 @@ +METROBOX BOARD +M: Travis Sawyer <travis.sawyer@sandburst.com> +S: Orphan (since 2014-03) +F: board/sandburst/metrobox/ +F: include/configs/METROBOX.h +F: configs/METROBOX_defconfig diff --git a/board/sandisk/sansa_fuze_plus/Kconfig b/board/sandisk/sansa_fuze_plus/Kconfig new file mode 100644 index 0000000..eddbfd8 --- /dev/null +++ b/board/sandisk/sansa_fuze_plus/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SANSA_FUZE_PLUS + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "sansa_fuze_plus" + +config SYS_VENDOR + string + default "sandisk" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "sansa_fuze_plus" + +endif diff --git a/board/sandisk/sansa_fuze_plus/MAINTAINERS b/board/sandisk/sansa_fuze_plus/MAINTAINERS new file mode 100644 index 0000000..ccfd399 --- /dev/null +++ b/board/sandisk/sansa_fuze_plus/MAINTAINERS @@ -0,0 +1,6 @@ +SANSA_FUZE_PLUS BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/sandisk/sansa_fuze_plus/ +F: include/configs/sansa_fuze_plus.h +F: configs/sansa_fuze_plus_defconfig diff --git a/board/sandpoint/Kconfig b/board/sandpoint/Kconfig new file mode 100644 index 0000000..3cc99de --- /dev/null +++ b/board/sandpoint/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SANDPOINT8240 + +config SYS_BOARD + string + default "sandpoint" + +config SYS_CONFIG_NAME + string + default "Sandpoint8240" + +endif + +if TARGET_SANDPOINT8245 + +config SYS_BOARD + string + default "sandpoint" + +config SYS_CONFIG_NAME + string + default "Sandpoint8245" + +endif diff --git a/board/sandpoint/MAINTAINERS b/board/sandpoint/MAINTAINERS new file mode 100644 index 0000000..f28c309 --- /dev/null +++ b/board/sandpoint/MAINTAINERS @@ -0,0 +1,12 @@ +SANDPOINT BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/sandpoint/ +F: include/configs/Sandpoint8240.h +F: configs/Sandpoint8240_defconfig + +SANDPOINT8245 BOARD +M: Jim Thompson <jim@musenki.com> +S: Orphan (since 2014-04) +F: include/configs/Sandpoint8245.h +F: configs/Sandpoint8245_defconfig diff --git a/board/sbc405/Kconfig b/board/sbc405/Kconfig new file mode 100644 index 0000000..77082bf --- /dev/null +++ b/board/sbc405/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SBC405 + +config SYS_BOARD + string + default "sbc405" + +config SYS_CONFIG_NAME + string + default "sbc405" + +endif diff --git a/board/sbc405/MAINTAINERS b/board/sbc405/MAINTAINERS new file mode 100644 index 0000000..dbb4451 --- /dev/null +++ b/board/sbc405/MAINTAINERS @@ -0,0 +1,6 @@ +SBC405 BOARD +M: - +S: Maintained +F: board/sbc405/ +F: include/configs/sbc405.h +F: configs/sbc405_defconfig diff --git a/board/sbc8349/Kconfig b/board/sbc8349/Kconfig new file mode 100644 index 0000000..5b851f8 --- /dev/null +++ b/board/sbc8349/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SBC8349 + +config SYS_BOARD + string + default "sbc8349" + +config SYS_CONFIG_NAME + string + default "sbc8349" + +endif diff --git a/board/sbc8349/MAINTAINERS b/board/sbc8349/MAINTAINERS new file mode 100644 index 0000000..af95c1d --- /dev/null +++ b/board/sbc8349/MAINTAINERS @@ -0,0 +1,8 @@ +SBC8349 BOARD +M: Paul Gortmaker <paul.gortmaker@windriver.com> +S: Maintained +F: board/sbc8349/ +F: include/configs/sbc8349.h +F: configs/sbc8349_defconfig +F: configs/sbc8349_PCI_33_defconfig +F: configs/sbc8349_PCI_66_defconfig diff --git a/board/sbc8548/Kconfig b/board/sbc8548/Kconfig new file mode 100644 index 0000000..5223d3d --- /dev/null +++ b/board/sbc8548/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SBC8548 + +config SYS_BOARD + string + default "sbc8548" + +config SYS_CONFIG_NAME + string + default "sbc8548" + +endif diff --git a/board/sbc8548/MAINTAINERS b/board/sbc8548/MAINTAINERS new file mode 100644 index 0000000..ba1f247 --- /dev/null +++ b/board/sbc8548/MAINTAINERS @@ -0,0 +1,10 @@ +SBC8548 BOARD +M: Paul Gortmaker <paul.gortmaker@windriver.com> +S: Maintained +F: board/sbc8548/ +F: include/configs/sbc8548.h +F: configs/sbc8548_defconfig +F: configs/sbc8548_PCI_33_defconfig +F: configs/sbc8548_PCI_33_PCIE_defconfig +F: configs/sbc8548_PCI_66_defconfig +F: configs/sbc8548_PCI_66_PCIE_defconfig diff --git a/board/sbc8641d/Kconfig b/board/sbc8641d/Kconfig new file mode 100644 index 0000000..7f77bca --- /dev/null +++ b/board/sbc8641d/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SBC8641D + +config SYS_BOARD + string + default "sbc8641d" + +config SYS_CONFIG_NAME + string + default "sbc8641d" + +endif diff --git a/board/sbc8641d/MAINTAINERS b/board/sbc8641d/MAINTAINERS new file mode 100644 index 0000000..a50b541 --- /dev/null +++ b/board/sbc8641d/MAINTAINERS @@ -0,0 +1,6 @@ +SBC8641D BOARD +M: Paul Gortmaker <paul.gortmaker@windriver.com> +S: Maintained +F: board/sbc8641d/ +F: include/configs/sbc8641d.h +F: configs/sbc8641d_defconfig diff --git a/board/sc3/Kconfig b/board/sc3/Kconfig new file mode 100644 index 0000000..74694be --- /dev/null +++ b/board/sc3/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SC3 + +config SYS_BOARD + string + default "sc3" + +config SYS_CONFIG_NAME + string + default "sc3" + +endif diff --git a/board/sc3/MAINTAINERS b/board/sc3/MAINTAINERS new file mode 100644 index 0000000..b86c6e6 --- /dev/null +++ b/board/sc3/MAINTAINERS @@ -0,0 +1,6 @@ +SC3 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/sc3/ +F: include/configs/sc3.h +F: configs/sc3_defconfig diff --git a/board/scb9328/Kconfig b/board/scb9328/Kconfig new file mode 100644 index 0000000..040d055 --- /dev/null +++ b/board/scb9328/Kconfig @@ -0,0 +1,19 @@ +if TARGET_SCB9328 + +config SYS_CPU + string + default "arm920t" + +config SYS_BOARD + string + default "scb9328" + +config SYS_SOC + string + default "imx" + +config SYS_CONFIG_NAME + string + default "scb9328" + +endif diff --git a/board/scb9328/MAINTAINERS b/board/scb9328/MAINTAINERS new file mode 100644 index 0000000..0917266 --- /dev/null +++ b/board/scb9328/MAINTAINERS @@ -0,0 +1,6 @@ +SCB9328 BOARD +M: Torsten Koschorrek <koschorrek@synertronixx.de> +S: Maintained +F: board/scb9328/ +F: include/configs/scb9328.h +F: configs/scb9328_defconfig diff --git a/board/schulercontrol/sc_sps_1/Kconfig b/board/schulercontrol/sc_sps_1/Kconfig new file mode 100644 index 0000000..30071ed --- /dev/null +++ b/board/schulercontrol/sc_sps_1/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SC_SPS_1 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "sc_sps_1" + +config SYS_VENDOR + string + default "schulercontrol" + +config SYS_SOC + string + default "mxs" + +config SYS_CONFIG_NAME + string + default "sc_sps_1" + +endif diff --git a/board/schulercontrol/sc_sps_1/MAINTAINERS b/board/schulercontrol/sc_sps_1/MAINTAINERS new file mode 100644 index 0000000..74849cd --- /dev/null +++ b/board/schulercontrol/sc_sps_1/MAINTAINERS @@ -0,0 +1,6 @@ +SC_SPS_1 BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/schulercontrol/sc_sps_1/ +F: include/configs/sc_sps_1.h +F: configs/sc_sps_1_defconfig diff --git a/board/shmin/Kconfig b/board/shmin/Kconfig new file mode 100644 index 0000000..cb9fb9f --- /dev/null +++ b/board/shmin/Kconfig @@ -0,0 +1,15 @@ +if TARGET_SHMIN + +config SYS_CPU + string + default "sh3" + +config SYS_BOARD + string + default "shmin" + +config SYS_CONFIG_NAME + string + default "shmin" + +endif diff --git a/board/shmin/MAINTAINERS b/board/shmin/MAINTAINERS new file mode 100644 index 0000000..5dee37b --- /dev/null +++ b/board/shmin/MAINTAINERS @@ -0,0 +1,7 @@ +SHMIN BOARD +M: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> +M: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> +S: Maintained +F: board/shmin/ +F: include/configs/shmin.h +F: configs/shmin_defconfig diff --git a/board/siemens/corvus/Kconfig b/board/siemens/corvus/Kconfig new file mode 100644 index 0000000..e24364c --- /dev/null +++ b/board/siemens/corvus/Kconfig @@ -0,0 +1,23 @@ +if TARGET_CORVUS + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "corvus" + +config SYS_VENDOR + string + default "siemens" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "corvus" + +endif diff --git a/board/siemens/corvus/MAINTAINERS b/board/siemens/corvus/MAINTAINERS new file mode 100644 index 0000000..59176aa --- /dev/null +++ b/board/siemens/corvus/MAINTAINERS @@ -0,0 +1,6 @@ +CORVUS BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/siemens/corvus/ +F: include/configs/corvus.h +F: configs/corvus_defconfig diff --git a/board/siemens/draco/Kconfig b/board/siemens/draco/Kconfig new file mode 100644 index 0000000..c6dac1c --- /dev/null +++ b/board/siemens/draco/Kconfig @@ -0,0 +1,47 @@ +if TARGET_DRACO + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "draco" + +config SYS_VENDOR + string + default "siemens" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "draco" + +endif + +if TARGET_DXR2 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "draco" + +config SYS_VENDOR + string + default "siemens" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "dxr2" + +endif diff --git a/board/siemens/draco/MAINTAINERS b/board/siemens/draco/MAINTAINERS new file mode 100644 index 0000000..f6b68ca --- /dev/null +++ b/board/siemens/draco/MAINTAINERS @@ -0,0 +1,8 @@ +DRACO BOARD +M: Roger Meier <r.meier@siemens.com> +S: Maintained +F: board/siemens/draco/ +F: include/configs/draco.h +F: configs/draco_defconfig +F: include/configs/dxr2.h +F: configs/dxr2_defconfig diff --git a/board/siemens/pxm2/Kconfig b/board/siemens/pxm2/Kconfig new file mode 100644 index 0000000..db69537 --- /dev/null +++ b/board/siemens/pxm2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_PXM2 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "pxm2" + +config SYS_VENDOR + string + default "siemens" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "pxm2" + +endif diff --git a/board/siemens/pxm2/MAINTAINERS b/board/siemens/pxm2/MAINTAINERS new file mode 100644 index 0000000..fa734c9 --- /dev/null +++ b/board/siemens/pxm2/MAINTAINERS @@ -0,0 +1,6 @@ +PXM2 BOARD +M: Roger Meier <r.meier@siemens.com> +S: Maintained +F: board/siemens/pxm2/ +F: include/configs/pxm2.h +F: configs/pxm2_defconfig diff --git a/board/siemens/rut/Kconfig b/board/siemens/rut/Kconfig new file mode 100644 index 0000000..c4d9e7e --- /dev/null +++ b/board/siemens/rut/Kconfig @@ -0,0 +1,23 @@ +if TARGET_RUT + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "rut" + +config SYS_VENDOR + string + default "siemens" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "rut" + +endif diff --git a/board/siemens/rut/MAINTAINERS b/board/siemens/rut/MAINTAINERS new file mode 100644 index 0000000..8c1b770 --- /dev/null +++ b/board/siemens/rut/MAINTAINERS @@ -0,0 +1,6 @@ +RUT BOARD +M: Roger Meier <r.meier@siemens.com> +S: Maintained +F: board/siemens/rut/ +F: include/configs/rut.h +F: configs/rut_defconfig diff --git a/board/siemens/taurus/Kconfig b/board/siemens/taurus/Kconfig new file mode 100644 index 0000000..3ef14c6 --- /dev/null +++ b/board/siemens/taurus/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TAURUS + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "taurus" + +config SYS_VENDOR + string + default "siemens" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "taurus" + +endif diff --git a/board/siemens/taurus/MAINTAINERS b/board/siemens/taurus/MAINTAINERS new file mode 100644 index 0000000..74e3518 --- /dev/null +++ b/board/siemens/taurus/MAINTAINERS @@ -0,0 +1,7 @@ +TAURUS BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/siemens/taurus/ +F: include/configs/taurus.h +F: configs/axm_defconfig +F: configs/taurus_defconfig diff --git a/board/silica/pengwyn/Kconfig b/board/silica/pengwyn/Kconfig new file mode 100644 index 0000000..abf86b1 --- /dev/null +++ b/board/silica/pengwyn/Kconfig @@ -0,0 +1,23 @@ +if TARGET_PENGWYN + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "pengwyn" + +config SYS_VENDOR + string + default "silica" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "pengwyn" + +endif diff --git a/board/silica/pengwyn/MAINTAINERS b/board/silica/pengwyn/MAINTAINERS new file mode 100644 index 0000000..14ef775 --- /dev/null +++ b/board/silica/pengwyn/MAINTAINERS @@ -0,0 +1,6 @@ +PENGWYN BOARD +M: Lothar Felten <lothar.felten@gmail.com> +S: Maintained +F: board/silica/pengwyn/ +F: include/configs/pengwyn.h +F: configs/pengwyn_defconfig diff --git a/board/sixnet/Kconfig b/board/sixnet/Kconfig new file mode 100644 index 0000000..2c1b995 --- /dev/null +++ b/board/sixnet/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SXNI855T + +config SYS_BOARD + string + default "sixnet" + +config SYS_CONFIG_NAME + string + default "SXNI855T" + +endif diff --git a/board/sixnet/MAINTAINERS b/board/sixnet/MAINTAINERS new file mode 100644 index 0000000..eedb409 --- /dev/null +++ b/board/sixnet/MAINTAINERS @@ -0,0 +1,6 @@ +SIXNET BOARD +M: Dave Ellis <DGE@sixnetio.com> +S: Orphan (since 2014-06) +F: board/sixnet/ +F: include/configs/SXNI855T.h +F: configs/SXNI855T_defconfig diff --git a/board/socrates/Kconfig b/board/socrates/Kconfig new file mode 100644 index 0000000..06abd9d --- /dev/null +++ b/board/socrates/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SOCRATES + +config SYS_BOARD + string + default "socrates" + +config SYS_CONFIG_NAME + string + default "socrates" + +endif diff --git a/board/socrates/MAINTAINERS b/board/socrates/MAINTAINERS new file mode 100644 index 0000000..fc3e11d --- /dev/null +++ b/board/socrates/MAINTAINERS @@ -0,0 +1,6 @@ +SOCRATES BOARD +M: - +S: Maintained +F: board/socrates/ +F: include/configs/socrates.h +F: configs/socrates_defconfig diff --git a/board/solidrun/hummingboard/Kconfig b/board/solidrun/hummingboard/Kconfig new file mode 100644 index 0000000..a412347 --- /dev/null +++ b/board/solidrun/hummingboard/Kconfig @@ -0,0 +1,23 @@ +if TARGET_HUMMINGBOARD + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "hummingboard" + +config SYS_VENDOR + string + default "solidrun" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "hummingboard" + +endif diff --git a/board/solidrun/hummingboard/MAINTAINERS b/board/solidrun/hummingboard/MAINTAINERS new file mode 100644 index 0000000..c0c062a --- /dev/null +++ b/board/solidrun/hummingboard/MAINTAINERS @@ -0,0 +1,6 @@ +HUMMINGBOARD BOARD +M: Jon Nettleton <jon.nettleton@gmail.com> +S: Maintained +F: board/solidrun/hummingboard/ +F: include/configs/hummingboard.h +F: configs/hummingboard_solo_defconfig diff --git a/board/spd8xx/Kconfig b/board/spd8xx/Kconfig new file mode 100644 index 0000000..4845cba --- /dev/null +++ b/board/spd8xx/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SPD823TS + +config SYS_BOARD + string + default "spd8xx" + +config SYS_CONFIG_NAME + string + default "SPD823TS" + +endif diff --git a/board/spd8xx/MAINTAINERS b/board/spd8xx/MAINTAINERS new file mode 100644 index 0000000..7ed9423 --- /dev/null +++ b/board/spd8xx/MAINTAINERS @@ -0,0 +1,6 @@ +SPD8XX BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/spd8xx/ +F: include/configs/SPD823TS.h +F: configs/SPD823TS_defconfig diff --git a/board/spear/spear300/Kconfig b/board/spear/spear300/Kconfig new file mode 100644 index 0000000..7e49e34 --- /dev/null +++ b/board/spear/spear300/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SPEAR300 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "spear300" + +config SYS_VENDOR + string + default "spear" + +config SYS_SOC + string + default "spear" + +config SYS_CONFIG_NAME + string + default "spear3xx_evb" + +endif diff --git a/board/spear/spear300/MAINTAINERS b/board/spear/spear300/MAINTAINERS new file mode 100644 index 0000000..15164fe --- /dev/null +++ b/board/spear/spear300/MAINTAINERS @@ -0,0 +1,13 @@ +SPEAR300 BOARD +M: Vipin Kumar <vipin.kumar@st.com> +S: Maintained +F: board/spear/spear300/ +F: include/configs/spear3xx_evb.h +F: configs/spear300_defconfig + +SPEAR300_NAND BOARD +M: - +S: Maintained +F: configs/spear300_nand_defconfig +F: configs/spear300_usbtty_defconfig +F: configs/spear300_usbtty_nand_defconfig diff --git a/board/spear/spear310/Kconfig b/board/spear/spear310/Kconfig new file mode 100644 index 0000000..de71040 --- /dev/null +++ b/board/spear/spear310/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SPEAR310 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "spear310" + +config SYS_VENDOR + string + default "spear" + +config SYS_SOC + string + default "spear" + +config SYS_CONFIG_NAME + string + default "spear3xx_evb" + +endif diff --git a/board/spear/spear310/MAINTAINERS b/board/spear/spear310/MAINTAINERS new file mode 100644 index 0000000..3a7e610 --- /dev/null +++ b/board/spear/spear310/MAINTAINERS @@ -0,0 +1,15 @@ +SPEAR310 BOARD +M: Vipin Kumar <vipin.kumar@st.com> +S: Maintained +F: board/spear/spear310/ +F: include/configs/spear3xx_evb.h +F: configs/spear310_defconfig + +SPEAR310_NAND BOARD +M: - +S: Maintained +F: configs/spear310_nand_defconfig +F: configs/spear310_pnor_defconfig +F: configs/spear310_usbtty_defconfig +F: configs/spear310_usbtty_nand_defconfig +F: configs/spear310_usbtty_pnor_defconfig diff --git a/board/spear/spear320/Kconfig b/board/spear/spear320/Kconfig new file mode 100644 index 0000000..4cf6baf --- /dev/null +++ b/board/spear/spear320/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SPEAR320 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "spear320" + +config SYS_VENDOR + string + default "spear" + +config SYS_SOC + string + default "spear" + +config SYS_CONFIG_NAME + string + default "spear3xx_evb" + +endif diff --git a/board/spear/spear320/MAINTAINERS b/board/spear/spear320/MAINTAINERS new file mode 100644 index 0000000..414beca --- /dev/null +++ b/board/spear/spear320/MAINTAINERS @@ -0,0 +1,15 @@ +SPEAR320 BOARD +M: Vipin Kumar <vipin.kumar@st.com> +S: Maintained +F: board/spear/spear320/ +F: include/configs/spear3xx_evb.h +F: configs/spear320_defconfig + +SPEAR320_NAND BOARD +M: - +S: Maintained +F: configs/spear320_nand_defconfig +F: configs/spear320_pnor_defconfig +F: configs/spear320_usbtty_defconfig +F: configs/spear320_usbtty_nand_defconfig +F: configs/spear320_usbtty_pnor_defconfig diff --git a/board/spear/spear600/Kconfig b/board/spear/spear600/Kconfig new file mode 100644 index 0000000..d62f9e7 --- /dev/null +++ b/board/spear/spear600/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SPEAR600 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "spear600" + +config SYS_VENDOR + string + default "spear" + +config SYS_SOC + string + default "spear" + +config SYS_CONFIG_NAME + string + default "spear6xx_evb" + +endif diff --git a/board/spear/spear600/MAINTAINERS b/board/spear/spear600/MAINTAINERS new file mode 100644 index 0000000..a978fdd --- /dev/null +++ b/board/spear/spear600/MAINTAINERS @@ -0,0 +1,13 @@ +SPEAR600 BOARD +M: Vipin Kumar <vipin.kumar@st.com> +S: Maintained +F: board/spear/spear600/ +F: include/configs/spear6xx_evb.h +F: configs/spear600_defconfig + +SPEAR600_NAND BOARD +M: - +S: Maintained +F: configs/spear600_nand_defconfig +F: configs/spear600_usbtty_defconfig +F: configs/spear600_usbtty_nand_defconfig diff --git a/board/spear/x600/Kconfig b/board/spear/x600/Kconfig new file mode 100644 index 0000000..a924559 --- /dev/null +++ b/board/spear/x600/Kconfig @@ -0,0 +1,23 @@ +if TARGET_X600 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "x600" + +config SYS_VENDOR + string + default "spear" + +config SYS_SOC + string + default "spear" + +config SYS_CONFIG_NAME + string + default "x600" + +endif diff --git a/board/spear/x600/MAINTAINERS b/board/spear/x600/MAINTAINERS new file mode 100644 index 0000000..bff6824 --- /dev/null +++ b/board/spear/x600/MAINTAINERS @@ -0,0 +1,6 @@ +X600 BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/spear/x600/ +F: include/configs/x600.h +F: configs/x600_defconfig diff --git a/board/st-ericsson/snowball/Kconfig b/board/st-ericsson/snowball/Kconfig new file mode 100644 index 0000000..b5ead0f --- /dev/null +++ b/board/st-ericsson/snowball/Kconfig @@ -0,0 +1,23 @@ +if TARGET_SNOWBALL + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "snowball" + +config SYS_VENDOR + string + default "st-ericsson" + +config SYS_SOC + string + default "u8500" + +config SYS_CONFIG_NAME + string + default "snowball" + +endif diff --git a/board/st-ericsson/snowball/MAINTAINERS b/board/st-ericsson/snowball/MAINTAINERS new file mode 100644 index 0000000..132fc52 --- /dev/null +++ b/board/st-ericsson/snowball/MAINTAINERS @@ -0,0 +1,6 @@ +SNOWBALL BOARD +M: Mathieu Poirier <mathieu.poirier@linaro.org> +S: Maintained +F: board/st-ericsson/snowball/ +F: include/configs/snowball.h +F: configs/snowball_defconfig diff --git a/board/st-ericsson/u8500/Kconfig b/board/st-ericsson/u8500/Kconfig new file mode 100644 index 0000000..bbcfdaf --- /dev/null +++ b/board/st-ericsson/u8500/Kconfig @@ -0,0 +1,23 @@ +if TARGET_U8500_HREF + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "u8500" + +config SYS_VENDOR + string + default "st-ericsson" + +config SYS_SOC + string + default "u8500" + +config SYS_CONFIG_NAME + string + default "u8500_href" + +endif diff --git a/board/st-ericsson/u8500/MAINTAINERS b/board/st-ericsson/u8500/MAINTAINERS new file mode 100644 index 0000000..54e7921 --- /dev/null +++ b/board/st-ericsson/u8500/MAINTAINERS @@ -0,0 +1,6 @@ +U8500 BOARD +M: - +S: Maintained +F: board/st-ericsson/u8500/ +F: include/configs/u8500_href.h +F: configs/u8500_href_defconfig diff --git a/board/st/nhk8815/Kconfig b/board/st/nhk8815/Kconfig new file mode 100644 index 0000000..ec3f880 --- /dev/null +++ b/board/st/nhk8815/Kconfig @@ -0,0 +1,23 @@ +if TARGET_NHK8815 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "nhk8815" + +config SYS_VENDOR + string + default "st" + +config SYS_SOC + string + default "nomadik" + +config SYS_CONFIG_NAME + string + default "nhk8815" + +endif diff --git a/board/st/nhk8815/MAINTAINERS b/board/st/nhk8815/MAINTAINERS new file mode 100644 index 0000000..72c3a8d --- /dev/null +++ b/board/st/nhk8815/MAINTAINERS @@ -0,0 +1,8 @@ +NHK8815 BOARD +M: Nomadik Linux Team <STN_WMM_nomadik_linux@list.st.com> +M: Alessandro Rubini <rubini@unipv.it> +S: Maintained +F: board/st/nhk8815/ +F: include/configs/nhk8815.h +F: configs/nhk8815_defconfig +F: configs/nhk8815_onenand_defconfig diff --git a/board/stx/stxgp3/Kconfig b/board/stx/stxgp3/Kconfig new file mode 100644 index 0000000..aac2940 --- /dev/null +++ b/board/stx/stxgp3/Kconfig @@ -0,0 +1,15 @@ +if TARGET_STXGP3 + +config SYS_BOARD + string + default "stxgp3" + +config SYS_VENDOR + string + default "stx" + +config SYS_CONFIG_NAME + string + default "stxgp3" + +endif diff --git a/board/stx/stxgp3/MAINTAINERS b/board/stx/stxgp3/MAINTAINERS new file mode 100644 index 0000000..6f485d4 --- /dev/null +++ b/board/stx/stxgp3/MAINTAINERS @@ -0,0 +1,6 @@ +STXGP3 BOARD +M: Dan Malek <dan@embeddedalley.com> +S: Orphan (since 2014-06) +F: board/stx/stxgp3/ +F: include/configs/stxgp3.h +F: configs/stxgp3_defconfig diff --git a/board/stx/stxssa/Kconfig b/board/stx/stxssa/Kconfig new file mode 100644 index 0000000..06dd8be --- /dev/null +++ b/board/stx/stxssa/Kconfig @@ -0,0 +1,15 @@ +if TARGET_STXSSA + +config SYS_BOARD + string + default "stxssa" + +config SYS_VENDOR + string + default "stx" + +config SYS_CONFIG_NAME + string + default "stxssa" + +endif diff --git a/board/stx/stxssa/MAINTAINERS b/board/stx/stxssa/MAINTAINERS new file mode 100644 index 0000000..f56adf0 --- /dev/null +++ b/board/stx/stxssa/MAINTAINERS @@ -0,0 +1,7 @@ +STXSSA BOARD +M: Dan Malek <dan@embeddedalley.com> +S: Orphan (since 2014-06) +F: board/stx/stxssa/ +F: include/configs/stxssa.h +F: configs/stxssa_defconfig +F: configs/stxssa_4M_defconfig diff --git a/board/stx/stxxtc/Kconfig b/board/stx/stxxtc/Kconfig new file mode 100644 index 0000000..c444cff --- /dev/null +++ b/board/stx/stxxtc/Kconfig @@ -0,0 +1,15 @@ +if TARGET_STXXTC + +config SYS_BOARD + string + default "stxxtc" + +config SYS_VENDOR + string + default "stx" + +config SYS_CONFIG_NAME + string + default "stxxtc" + +endif diff --git a/board/stx/stxxtc/MAINTAINERS b/board/stx/stxxtc/MAINTAINERS new file mode 100644 index 0000000..5ea36b2 --- /dev/null +++ b/board/stx/stxxtc/MAINTAINERS @@ -0,0 +1,6 @@ +STXXTC BOARD +M: Dan Malek <dan@embeddedalley.com> +S: Orphan (since 2014-06) +F: board/stx/stxxtc/ +F: include/configs/stxxtc.h +F: configs/stxxtc_defconfig diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig new file mode 100644 index 0000000..b06b5e0 --- /dev/null +++ b/board/sunxi/Kconfig @@ -0,0 +1,59 @@ +if TARGET_SUN4I + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "sunxi" + +config SYS_SOC + string + default "sunxi" + +config SYS_CONFIG_NAME + string + default "sun4i" + +endif + +if TARGET_SUN5I + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "sunxi" + +config SYS_SOC + string + default "sunxi" + +config SYS_CONFIG_NAME + string + default "sun5i" + +endif + +if TARGET_SUN7I + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "sunxi" + +config SYS_SOC + string + default "sunxi" + +config SYS_CONFIG_NAME + string + default "sun7i" + +endif diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS new file mode 100644 index 0000000..b0b1804 --- /dev/null +++ b/board/sunxi/MAINTAINERS @@ -0,0 +1,34 @@ +SUNXI BOARD +M: Hans de Goede <hdegoede@redhat.com> +S: Maintained +F: board/sunxi/ +F: include/configs/sun4i.h +F: configs/A10-OLinuXino-Lime_defconfig +F: configs/ba10_tv_box_defconfig +F: configs/Cubieboard_defconfig +F: configs/Mele_A1000_defconfig +F: configs/Mele_A1000G_defconfig +F: configs/Mini-X_defconfig +F: configs/Mini-X-1Gb_defconfig +F: include/configs/sun5i.h +F: configs/A10s-OLinuXino-M_defconfig +F: configs/A13-OLinuXino_defconfig +F: configs/A13-OLinuXinoM_defconfig +F: configs/Auxtek-T004_defconfig +F: configs/r7-tv-dongle_defconfig +F: include/configs/sun7i.h +F: configs/A20-OLinuXino_MICRO_defconfig +F: configs/Bananapi_defconfig +F: configs/i12-tvbox_defconfig +F: configs/Linksprite_pcDuino3_defconfig +F: configs/qt840a_defconfig + +CUBIEBOARD2 BOARD +M: Ian Campbell <ijc@hellion.org.uk> +M: Hans de Goede <hdegoede@redhat.com> +S: Maintained +F: include/configs/sun7i.h +F: configs/Cubieboard2_defconfig +F: configs/Cubieboard2_FEL_defconfig +F: configs/Cubietruck_defconfig +F: configs/Cubietruck_FEL_defconfig diff --git a/board/sunxi/Makefile b/board/sunxi/Makefile index 62acb8f..cf001e7 100644 --- a/board/sunxi/Makefile +++ b/board/sunxi/Makefile @@ -10,8 +10,24 @@ # obj-y += board.o obj-$(CONFIG_SUNXI_GMAC) += gmac.o +obj-$(CONFIG_SUNXI_AHCI) += ahci.o +obj-$(CONFIG_A10_OLINUXINO_L) += dram_a10_olinuxino_l.o +obj-$(CONFIG_A10S_OLINUXINO_M) += dram_a10s_olinuxino_m.o +obj-$(CONFIG_A13_OLINUXINO) += dram_a13_olinuxino.o obj-$(CONFIG_A13_OLINUXINOM) += dram_a13_oli_micro.o +obj-$(CONFIG_A20_OLINUXINO_M) += dram_sun7i_384_1024_iow16.o +# This is not a typo, uses the same mem settings as the a10s-olinuxino-m +obj-$(CONFIG_AUXTEK_T004) += dram_a10s_olinuxino_m.o +obj-$(CONFIG_BA10_TV_BOX) += dram_sun4i_384_1024_iow8.o +obj-$(CONFIG_BANANAPI) += dram_bananapi.o obj-$(CONFIG_CUBIEBOARD) += dram_cubieboard.o obj-$(CONFIG_CUBIEBOARD2) += dram_cubieboard2.o obj-$(CONFIG_CUBIETRUCK) += dram_cubietruck.o +obj-$(CONFIG_I12_TVBOX) += dram_sun7i_384_1024_iow16.o +obj-$(CONFIG_MELE_A1000) += dram_sun4i_360_512.o +obj-$(CONFIG_MELE_A1000G) += dram_sun4i_360_1024_iow8.o +obj-$(CONFIG_MINI_X) += dram_sun4i_360_512.o +obj-$(CONFIG_MINI_X_1GB) += dram_sun4i_360_1024_iow16.o +obj-$(CONFIG_PCDUINO3) += dram_linksprite_pcduino3.o +obj-$(CONFIG_QT840A) += dram_sun7i_384_512_busw16_iow16.o obj-$(CONFIG_R7DONGLE) += dram_r7dongle.o diff --git a/board/sunxi/ahci.c b/board/sunxi/ahci.c new file mode 100644 index 0000000..0c262ea --- /dev/null +++ b/board/sunxi/ahci.c @@ -0,0 +1,84 @@ +#include <common.h> +#include <ahci.h> +#include <scsi.h> +#include <errno.h> +#include <asm/io.h> +#include <asm/gpio.h> + +#define AHCI_PHYCS0R 0x00c0 +#define AHCI_PHYCS1R 0x00c4 +#define AHCI_PHYCS2R 0x00c8 +#define AHCI_RWCR 0x00fc + +/* This magic PHY initialisation was taken from the Allwinner releases + * and Linux driver, but is completely undocumented. + */ +static int sunxi_ahci_phy_init(u32 base) +{ + u8 *reg_base = (u8 *)base; + u32 reg_val; + int timeout; + + writel(0, reg_base + AHCI_RWCR); + mdelay(5); + + setbits_le32(reg_base + AHCI_PHYCS1R, 0x1 << 19); + clrsetbits_le32(reg_base + AHCI_PHYCS0R, + (0x7 << 24), + (0x5 << 24) | (0x1 << 23) | (0x1 << 18)); + clrsetbits_le32(reg_base + AHCI_PHYCS1R, + (0x3 << 16) | (0x1f << 8) | (0x3 << 6), + (0x2 << 16) | (0x6 << 8) | (0x2 << 6)); + setbits_le32(reg_base + AHCI_PHYCS1R, (0x1 << 28) | (0x1 << 15)); + clrbits_le32(reg_base + AHCI_PHYCS1R, (0x1 << 19)); + clrsetbits_le32(reg_base + AHCI_PHYCS0R, (0x7 << 20), (0x3 << 20)); + clrsetbits_le32(reg_base + AHCI_PHYCS2R, (0x1f << 5), (0x19 << 5)); + mdelay(5); + + setbits_le32(reg_base + AHCI_PHYCS0R, (0x1 << 19)); + + timeout = 250; /* Power up takes approx 50 us */ + for (;;) { + reg_val = readl(reg_base + AHCI_PHYCS0R) & (0x7 << 28); + if (reg_val == (0x2 << 28)) + break; + if (--timeout == 0) { + printf("AHCI PHY power up failed.\n"); + return -EIO; + } + udelay(1); + }; + + setbits_le32(reg_base + AHCI_PHYCS2R, (0x1 << 24)); + + timeout = 100; /* Calibration takes approx 10 us */ + for (;;) { + reg_val = readl(reg_base + AHCI_PHYCS2R) & (0x1 << 24); + if (reg_val == 0x0) + break; + if (--timeout == 0) { + printf("AHCI PHY calibration failed.\n"); + return -EIO; + } + udelay(1); + } + + mdelay(15); + + writel(0x7, reg_base + AHCI_RWCR); + + return 0; +} + +void scsi_init(void) +{ + printf("SUNXI SCSI INIT\n"); +#ifdef CONFIG_SATAPWR + gpio_direction_output(CONFIG_SATAPWR, 1); +#endif + + if (sunxi_ahci_phy_init(SUNXI_SATA_BASE) < 0) + return; + + ahci_init(SUNXI_SATA_BASE); +} diff --git a/board/sunxi/dram_a10_olinuxino_l.c b/board/sunxi/dram_a10_olinuxino_l.c new file mode 100644 index 0000000..24a1bd9 --- /dev/null +++ b/board/sunxi/dram_a10_olinuxino_l.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 480, + .type = 3, + .rank_num = 1, + .density = 4096, + .io_width = 16, + .bus_width = 16, + .cas = 6, + .zq = 123, + .odt_en = 0, + .size = 512, + .tpr0 = 0x30926692, + .tpr1 = 0x1090, + .tpr2 = 0x1a0c8, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0x4, + .emr2 = 0, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_a10s_olinuxino_m.c b/board/sunxi/dram_a10s_olinuxino_m.c new file mode 100644 index 0000000..8900539 --- /dev/null +++ b/board/sunxi/dram_a10s_olinuxino_m.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 432, + .type = 3, + .rank_num = 1, + .density = 4096, + .io_width = 16, + .bus_width = 16, + .cas = 9, + .zq = 123, + .odt_en = 0, + .size = 512, + .tpr0 = 0x42d899b7, + .tpr1 = 0xa090, + .tpr2 = 0x22a00, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0x4, + .emr2 = 0x10, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_a13_olinuxino.c b/board/sunxi/dram_a13_olinuxino.c new file mode 100644 index 0000000..ca96260 --- /dev/null +++ b/board/sunxi/dram_a13_olinuxino.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 408, + .type = 3, + .rank_num = 1, + .density = 2048, + .io_width = 8, + .bus_width = 16, + .cas = 9, + .zq = 123, + .odt_en = 0, + .size = 512, + .tpr0 = 0x42d899b7, + .tpr1 = 0xa090, + .tpr2 = 0x22a00, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0, + .emr2 = 0x10, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_bananapi.c b/board/sunxi/dram_bananapi.c new file mode 100644 index 0000000..0ed7943 --- /dev/null +++ b/board/sunxi/dram_bananapi.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 432, + .type = 3, + .rank_num = 1, + .density = 4096, + .io_width = 16, + .bus_width = 32, + .cas = 9, + .zq = 0x7f, + .odt_en = 0, + .size = 1024, + .tpr0 = 0x42d899b7, + .tpr1 = 0xa090, + .tpr2 = 0x22a00, + .tpr3 = 0x0, + .tpr4 = 0x1, + .tpr5 = 0x0, + .emr1 = 0x4, + .emr2 = 0x10, + .emr3 = 0x0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_linksprite_pcduino3.c b/board/sunxi/dram_linksprite_pcduino3.c new file mode 100644 index 0000000..9cc6e19 --- /dev/null +++ b/board/sunxi/dram_linksprite_pcduino3.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 480, + .type = 3, + .rank_num = 1, + .density = 4096, + .io_width = 16, + .bus_width = 32, + .cas = 9, + .zq = 0x7a, + .odt_en = 0, + .size = 1024, + .tpr0 = 0x42d899b7, + .tpr1 = 0xa090, + .tpr2 = 0x22a00, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0x4, + .emr2 = 0x10, + .emr3 = 0x0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_sun4i_360_1024_iow16.c b/board/sunxi/dram_sun4i_360_1024_iow16.c new file mode 100644 index 0000000..3763713 --- /dev/null +++ b/board/sunxi/dram_sun4i_360_1024_iow16.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 360, + .type = 3, + .rank_num = 1, + .density = 4096, + .io_width = 16, + .bus_width = 32, + .cas = 6, + .zq = 123, + .odt_en = 0, + .size = 1024, + .tpr0 = 0x30926692, + .tpr1 = 0x1090, + .tpr2 = 0x1a0c8, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0, + .emr2 = 0, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_sun4i_360_1024_iow8.c b/board/sunxi/dram_sun4i_360_1024_iow8.c new file mode 100644 index 0000000..2a5c9ed --- /dev/null +++ b/board/sunxi/dram_sun4i_360_1024_iow8.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 360, + .type = 3, + .rank_num = 1, + .density = 2048, + .io_width = 8, + .bus_width = 32, + .cas = 6, + .zq = 123, + .odt_en = 0, + .size = 1024, + .tpr0 = 0x30926692, + .tpr1 = 0x1090, + .tpr2 = 0x1a0c8, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0, + .emr2 = 0, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_sun4i_360_512.c b/board/sunxi/dram_sun4i_360_512.c new file mode 100644 index 0000000..48aa6e2 --- /dev/null +++ b/board/sunxi/dram_sun4i_360_512.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 360, + .type = 3, + .rank_num = 1, + .density = 2048, + .io_width = 16, + .bus_width = 32, + .cas = 6, + .zq = 123, + .odt_en = 0, + .size = 512, + .tpr0 = 0x30926692, + .tpr1 = 0x1090, + .tpr2 = 0x1a0c8, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0, + .emr2 = 0, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_sun4i_384_1024_iow8.c b/board/sunxi/dram_sun4i_384_1024_iow8.c new file mode 100644 index 0000000..b0fcc55 --- /dev/null +++ b/board/sunxi/dram_sun4i_384_1024_iow8.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include <common.h> +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 384, + .type = 3, + .rank_num = 1, + .density = 2048, + .io_width = 8, + .bus_width = 32, + .cas = 6, + .zq = 123, + .odt_en = 0, + .size = 1024, + .tpr0 = 0x30926692, + .tpr1 = 0x1090, + .tpr2 = 0x1a0c8, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0x4, + .emr2 = 0, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_sun7i_384_1024_iow16.c b/board/sunxi/dram_sun7i_384_1024_iow16.c new file mode 100644 index 0000000..04e4b1e --- /dev/null +++ b/board/sunxi/dram_sun7i_384_1024_iow16.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include "common.h" +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 384, + .type = 3, + .rank_num = 1, + .density = 4096, + .io_width = 16, + .bus_width = 32, + .cas = 9, + .zq = 0x7f, + .odt_en = 0, + .size = 1024, + .tpr0 = 0x42d899b7, + .tpr1 = 0xa090, + .tpr2 = 0x22a00, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0x4, + .emr2 = 0x10, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/sunxi/dram_sun7i_384_512_busw16_iow16.c b/board/sunxi/dram_sun7i_384_512_busw16_iow16.c new file mode 100644 index 0000000..2e36011 --- /dev/null +++ b/board/sunxi/dram_sun7i_384_512_busw16_iow16.c @@ -0,0 +1,31 @@ +/* this file is generated, don't edit it yourself */ + +#include "common.h" +#include <asm/arch/dram.h> + +static struct dram_para dram_para = { + .clock = 384, + .type = 3, + .rank_num = 1, + .density = 4096, + .io_width = 16, + .bus_width = 16, + .cas = 9, + .zq = 0x7f, + .odt_en = 0, + .size = 512, + .tpr0 = 0x42d899b7, + .tpr1 = 0xa090, + .tpr2 = 0x22a00, + .tpr3 = 0, + .tpr4 = 0, + .tpr5 = 0, + .emr1 = 0x4, + .emr2 = 0x10, + .emr3 = 0, +}; + +unsigned long sunxi_dram_init(void) +{ + return dramc_init(&dram_para); +} diff --git a/board/svm_sc8xx/Kconfig b/board/svm_sc8xx/Kconfig new file mode 100644 index 0000000..522b1a8 --- /dev/null +++ b/board/svm_sc8xx/Kconfig @@ -0,0 +1,11 @@ +if TARGET_SVM_SC8XX + +config SYS_BOARD + string + default "svm_sc8xx" + +config SYS_CONFIG_NAME + string + default "svm_sc8xx" + +endif diff --git a/board/svm_sc8xx/MAINTAINERS b/board/svm_sc8xx/MAINTAINERS new file mode 100644 index 0000000..c19bcae --- /dev/null +++ b/board/svm_sc8xx/MAINTAINERS @@ -0,0 +1,6 @@ +SVM_SC8XX BOARD +M: John Zhan <zhanz@sinovee.com> +S: Orphan (since 2014-06) +F: board/svm_sc8xx/ +F: include/configs/svm_sc8xx.h +F: configs/svm_sc8xx_defconfig diff --git a/board/synopsys/Kconfig b/board/synopsys/Kconfig new file mode 100644 index 0000000..22034c1 --- /dev/null +++ b/board/synopsys/Kconfig @@ -0,0 +1,31 @@ +if TARGET_ARCANGEL4 + +config SYS_CPU + string + default "arc700" + +config SYS_VENDOR + string + default "synopsys" + +config SYS_CONFIG_NAME + string + default "arcangel4" + +endif + +if TARGET_ARCANGEL4_BE + +config SYS_CPU + string + default "arc700" + +config SYS_VENDOR + string + default "synopsys" + +config SYS_CONFIG_NAME + string + default "arcangel4-be" + +endif diff --git a/board/synopsys/MAINTAINERS b/board/synopsys/MAINTAINERS new file mode 100644 index 0000000..720edd8 --- /dev/null +++ b/board/synopsys/MAINTAINERS @@ -0,0 +1,7 @@ +- BOARD +M: Alexey Brodkin <abrodkin@synopsys.com> +S: Maintained +F: include/configs/arcangel4.h +F: configs/arcangel4_defconfig +F: include/configs/arcangel4-be.h +F: configs/arcangel4-be_defconfig diff --git a/board/synopsys/axs101/Kconfig b/board/synopsys/axs101/Kconfig new file mode 100644 index 0000000..535b8eb --- /dev/null +++ b/board/synopsys/axs101/Kconfig @@ -0,0 +1,19 @@ +if TARGET_AXS101 + +config SYS_CPU + string + default "arc700" + +config SYS_BOARD + string + default "axs101" + +config SYS_VENDOR + string + default "synopsys" + +config SYS_CONFIG_NAME + string + default "axs101" + +endif diff --git a/board/synopsys/axs101/MAINTAINERS b/board/synopsys/axs101/MAINTAINERS new file mode 100644 index 0000000..481bbcc --- /dev/null +++ b/board/synopsys/axs101/MAINTAINERS @@ -0,0 +1,6 @@ +AXS101 BOARD +M: Alexey Brodkin <abrodkin@synopsys.com> +S: Maintained +F: board/synopsys/axs101/ +F: include/configs/axs101.h +F: configs/axs101_defconfig diff --git a/board/syteco/jadecpu/Kconfig b/board/syteco/jadecpu/Kconfig new file mode 100644 index 0000000..c00204a --- /dev/null +++ b/board/syteco/jadecpu/Kconfig @@ -0,0 +1,23 @@ +if TARGET_JADECPU + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "jadecpu" + +config SYS_VENDOR + string + default "syteco" + +config SYS_SOC + string + default "mb86r0x" + +config SYS_CONFIG_NAME + string + default "jadecpu" + +endif diff --git a/board/syteco/jadecpu/MAINTAINERS b/board/syteco/jadecpu/MAINTAINERS new file mode 100644 index 0000000..b53e7ca --- /dev/null +++ b/board/syteco/jadecpu/MAINTAINERS @@ -0,0 +1,6 @@ +JADECPU BOARD +M: Matthias Weisser <weisserm@arcor.de> +S: Maintained +F: board/syteco/jadecpu/ +F: include/configs/jadecpu.h +F: configs/jadecpu_defconfig diff --git a/board/syteco/zmx25/Kconfig b/board/syteco/zmx25/Kconfig new file mode 100644 index 0000000..dbf34e5 --- /dev/null +++ b/board/syteco/zmx25/Kconfig @@ -0,0 +1,23 @@ +if TARGET_ZMX25 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "zmx25" + +config SYS_VENDOR + string + default "syteco" + +config SYS_SOC + string + default "mx25" + +config SYS_CONFIG_NAME + string + default "zmx25" + +endif diff --git a/board/syteco/zmx25/MAINTAINERS b/board/syteco/zmx25/MAINTAINERS new file mode 100644 index 0000000..90f9fab --- /dev/null +++ b/board/syteco/zmx25/MAINTAINERS @@ -0,0 +1,6 @@ +ZMX25 BOARD +M: Matthias Weisser <weisserm@arcor.de> +S: Maintained +F: board/syteco/zmx25/ +F: include/configs/zmx25.h +F: configs/zmx25_defconfig diff --git a/board/t3corp/Kconfig b/board/t3corp/Kconfig new file mode 100644 index 0000000..818293a --- /dev/null +++ b/board/t3corp/Kconfig @@ -0,0 +1,11 @@ +if TARGET_T3CORP + +config SYS_BOARD + string + default "t3corp" + +config SYS_CONFIG_NAME + string + default "t3corp" + +endif diff --git a/board/t3corp/MAINTAINERS b/board/t3corp/MAINTAINERS new file mode 100644 index 0000000..eaf28c4 --- /dev/null +++ b/board/t3corp/MAINTAINERS @@ -0,0 +1,6 @@ +T3CORP BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/t3corp/ +F: include/configs/t3corp.h +F: configs/t3corp_defconfig diff --git a/board/taskit/stamp9g20/Kconfig b/board/taskit/stamp9g20/Kconfig new file mode 100644 index 0000000..3aecad9 --- /dev/null +++ b/board/taskit/stamp9g20/Kconfig @@ -0,0 +1,23 @@ +if TARGET_STAMP9G20 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "stamp9g20" + +config SYS_VENDOR + string + default "taskit" + +config SYS_SOC + string + default "at91" + +config SYS_CONFIG_NAME + string + default "stamp9g20" + +endif diff --git a/board/taskit/stamp9g20/MAINTAINERS b/board/taskit/stamp9g20/MAINTAINERS new file mode 100644 index 0000000..a91c196 --- /dev/null +++ b/board/taskit/stamp9g20/MAINTAINERS @@ -0,0 +1,7 @@ +STAMP9G20 BOARD +M: Markus Hubig <mhubig@imko.de> +S: Maintained +F: board/taskit/stamp9g20/ +F: include/configs/stamp9g20.h +F: configs/portuxg20_defconfig +F: configs/stamp9g20_defconfig diff --git a/board/tcm-bf518/Kconfig b/board/tcm-bf518/Kconfig new file mode 100644 index 0000000..a246099 --- /dev/null +++ b/board/tcm-bf518/Kconfig @@ -0,0 +1,11 @@ +if TARGET_TCM_BF518 + +config SYS_BOARD + string + default "tcm-bf518" + +config SYS_CONFIG_NAME + string + default "tcm-bf518" + +endif diff --git a/board/tcm-bf518/MAINTAINERS b/board/tcm-bf518/MAINTAINERS new file mode 100644 index 0000000..f649b06 --- /dev/null +++ b/board/tcm-bf518/MAINTAINERS @@ -0,0 +1,6 @@ +TCM-BF518 BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/tcm-bf518/ +F: include/configs/tcm-bf518.h +F: configs/tcm-bf518_defconfig diff --git a/board/tcm-bf537/Kconfig b/board/tcm-bf537/Kconfig new file mode 100644 index 0000000..a7f1b21 --- /dev/null +++ b/board/tcm-bf537/Kconfig @@ -0,0 +1,11 @@ +if TARGET_TCM_BF537 + +config SYS_BOARD + string + default "tcm-bf537" + +config SYS_CONFIG_NAME + string + default "tcm-bf537" + +endif diff --git a/board/tcm-bf537/MAINTAINERS b/board/tcm-bf537/MAINTAINERS new file mode 100644 index 0000000..9ee557d --- /dev/null +++ b/board/tcm-bf537/MAINTAINERS @@ -0,0 +1,6 @@ +TCM-BF537 BOARD +M: Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> +S: Orphan (since 2014-03) +F: board/tcm-bf537/ +F: include/configs/tcm-bf537.h +F: configs/tcm-bf537_defconfig diff --git a/board/technexion/tao3530/Kconfig b/board/technexion/tao3530/Kconfig new file mode 100644 index 0000000..06e56a4 --- /dev/null +++ b/board/technexion/tao3530/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TAO3530 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "tao3530" + +config SYS_VENDOR + string + default "technexion" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "tao3530" + +endif diff --git a/board/technexion/tao3530/MAINTAINERS b/board/technexion/tao3530/MAINTAINERS new file mode 100644 index 0000000..ad02b46 --- /dev/null +++ b/board/technexion/tao3530/MAINTAINERS @@ -0,0 +1,11 @@ +TAO3530 BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/technexion/tao3530/ +F: include/configs/tao3530.h +F: configs/omap3_ha_defconfig + +TAO3530 BOARD +M: Tapani Utriainen <linuxfae@technexion.com> +S: Maintained +F: configs/tao3530_defconfig diff --git a/board/technexion/twister/Kconfig b/board/technexion/twister/Kconfig new file mode 100644 index 0000000..1790f6d --- /dev/null +++ b/board/technexion/twister/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TWISTER + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "twister" + +config SYS_VENDOR + string + default "technexion" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "twister" + +endif diff --git a/board/technexion/twister/MAINTAINERS b/board/technexion/twister/MAINTAINERS new file mode 100644 index 0000000..1ce2b37 --- /dev/null +++ b/board/technexion/twister/MAINTAINERS @@ -0,0 +1,6 @@ +TWISTER BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/technexion/twister/ +F: include/configs/twister.h +F: configs/twister_defconfig diff --git a/board/teejet/mt_ventoux/Kconfig b/board/teejet/mt_ventoux/Kconfig new file mode 100644 index 0000000..96cf7c0 --- /dev/null +++ b/board/teejet/mt_ventoux/Kconfig @@ -0,0 +1,23 @@ +if TARGET_MT_VENTOUX + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "mt_ventoux" + +config SYS_VENDOR + string + default "teejet" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "mt_ventoux" + +endif diff --git a/board/teejet/mt_ventoux/MAINTAINERS b/board/teejet/mt_ventoux/MAINTAINERS new file mode 100644 index 0000000..d23464c --- /dev/null +++ b/board/teejet/mt_ventoux/MAINTAINERS @@ -0,0 +1,6 @@ +MT_VENTOUX BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/teejet/mt_ventoux/ +F: include/configs/mt_ventoux.h +F: configs/mt_ventoux_defconfig diff --git a/board/ti/am335x/Kconfig b/board/ti/am335x/Kconfig new file mode 100644 index 0000000..c3b61af --- /dev/null +++ b/board/ti/am335x/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AM335X_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "am335x" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "am335x_evm" + +endif diff --git a/board/ti/am335x/MAINTAINERS b/board/ti/am335x/MAINTAINERS new file mode 100644 index 0000000..d166fa0 --- /dev/null +++ b/board/ti/am335x/MAINTAINERS @@ -0,0 +1,17 @@ +AM335X BOARD +M: Tom Rini <trini@ti.com> +S: Maintained +F: board/ti/am335x/ +F: include/configs/am335x_evm.h +F: configs/am335x_boneblack_defconfig +F: configs/am335x_boneblack_vboot_defconfig +F: configs/am335x_evm_defconfig +F: configs/am335x_evm_nor_defconfig +F: configs/am335x_evm_norboot_defconfig +F: configs/am335x_evm_spiboot_defconfig +F: configs/am335x_evm_uart1_defconfig +F: configs/am335x_evm_uart2_defconfig +F: configs/am335x_evm_uart3_defconfig +F: configs/am335x_evm_uart4_defconfig +F: configs/am335x_evm_uart5_defconfig +F: configs/am335x_evm_usbspl_defconfig diff --git a/board/ti/am3517crane/Kconfig b/board/ti/am3517crane/Kconfig new file mode 100644 index 0000000..fdb20ab --- /dev/null +++ b/board/ti/am3517crane/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AM3517_CRANE + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "am3517crane" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "am3517_crane" + +endif diff --git a/board/ti/am3517crane/MAINTAINERS b/board/ti/am3517crane/MAINTAINERS new file mode 100644 index 0000000..cbc3213 --- /dev/null +++ b/board/ti/am3517crane/MAINTAINERS @@ -0,0 +1,6 @@ +AM3517CRANE BOARD +M: Nagendra T S <nagendra@mistralsolutions.com> +S: Maintained +F: board/ti/am3517crane/ +F: include/configs/am3517_crane.h +F: configs/am3517_crane_defconfig diff --git a/board/ti/am43xx/Kconfig b/board/ti/am43xx/Kconfig new file mode 100644 index 0000000..3c61ec1 --- /dev/null +++ b/board/ti/am43xx/Kconfig @@ -0,0 +1,23 @@ +if TARGET_AM43XX_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "am43xx" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "am43xx_evm" + +endif diff --git a/board/ti/am43xx/MAINTAINERS b/board/ti/am43xx/MAINTAINERS new file mode 100644 index 0000000..d375278 --- /dev/null +++ b/board/ti/am43xx/MAINTAINERS @@ -0,0 +1,7 @@ +AM43XX BOARD +M: Lokesh Vutla <lokeshvutla@ti.com> +S: Maintained +F: board/ti/am43xx/ +F: include/configs/am43xx_evm.h +F: configs/am43xx_evm_defconfig +F: configs/am43xx_evm_qspiboot_defconfig diff --git a/board/ti/beagle/Kconfig b/board/ti/beagle/Kconfig new file mode 100644 index 0000000..15dccdf --- /dev/null +++ b/board/ti/beagle/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP3_BEAGLE + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "beagle" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_beagle" + +endif diff --git a/board/ti/beagle/MAINTAINERS b/board/ti/beagle/MAINTAINERS new file mode 100644 index 0000000..2225fb6 --- /dev/null +++ b/board/ti/beagle/MAINTAINERS @@ -0,0 +1,6 @@ +BEAGLE BOARD +M: Tom Rini <trini@ti.com> +S: Maintained +F: board/ti/beagle/ +F: include/configs/omap3_beagle.h +F: configs/omap3_beagle_defconfig diff --git a/board/ti/dra7xx/Kconfig b/board/ti/dra7xx/Kconfig new file mode 100644 index 0000000..4b13ef4 --- /dev/null +++ b/board/ti/dra7xx/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DRA7XX_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "dra7xx" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap5" + +config SYS_CONFIG_NAME + string + default "dra7xx_evm" + +endif diff --git a/board/ti/dra7xx/MAINTAINERS b/board/ti/dra7xx/MAINTAINERS new file mode 100644 index 0000000..5ec6769 --- /dev/null +++ b/board/ti/dra7xx/MAINTAINERS @@ -0,0 +1,8 @@ +DRA7XX BOARD +M: Lokesh Vutla <lokeshvutla@ti.com> +S: Maintained +F: board/ti/dra7xx/ +F: include/configs/dra7xx_evm.h +F: configs/dra7xx_evm_defconfig +F: configs/dra7xx_evm_qspiboot_defconfig +F: configs/dra7xx_evm_uart3_defconfig diff --git a/board/ti/evm/Kconfig b/board/ti/evm/Kconfig new file mode 100644 index 0000000..e342942 --- /dev/null +++ b/board/ti/evm/Kconfig @@ -0,0 +1,71 @@ +if TARGET_OMAP3_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "evm" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_evm" + +endif + +if TARGET_OMAP3_EVM_QUICK_MMC + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "evm" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_evm_quick_mmc" + +endif + +if TARGET_OMAP3_EVM_QUICK_NAND + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "evm" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_evm_quick_nand" + +endif diff --git a/board/ti/evm/MAINTAINERS b/board/ti/evm/MAINTAINERS new file mode 100644 index 0000000..b2ebadc --- /dev/null +++ b/board/ti/evm/MAINTAINERS @@ -0,0 +1,14 @@ +EVM BOARD +M: Tom Rini <trini@ti.com> +S: Maintained +F: board/ti/evm/ +F: include/configs/omap3_evm.h +F: configs/omap3_evm_defconfig + +OMAP3_EVM_QUICK_MMC BOARD +M: - +S: Maintained +F: include/configs/omap3_evm_quick_mmc.h +F: configs/omap3_evm_quick_mmc_defconfig +F: include/configs/omap3_evm_quick_nand.h +F: configs/omap3_evm_quick_nand_defconfig diff --git a/board/ti/ks2_evm/Kconfig b/board/ti/ks2_evm/Kconfig new file mode 100644 index 0000000..7890b30 --- /dev/null +++ b/board/ti/ks2_evm/Kconfig @@ -0,0 +1,47 @@ +if TARGET_K2E_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "ks2_evm" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "keystone" + +config SYS_CONFIG_NAME + string + default "k2e_evm" + +endif + +if TARGET_K2HK_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "ks2_evm" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "keystone" + +config SYS_CONFIG_NAME + string + default "k2hk_evm" + +endif diff --git a/board/ti/ks2_evm/MAINTAINERS b/board/ti/ks2_evm/MAINTAINERS new file mode 100644 index 0000000..595a80a --- /dev/null +++ b/board/ti/ks2_evm/MAINTAINERS @@ -0,0 +1,8 @@ +KS2_EVM BOARD +M: Vitaly Andrianov <vitalya@ti.com> +S: Maintained +F: board/ti/ks2_evm/ +F: include/configs/k2hk_evm.h +F: configs/k2hk_evm_defconfig +F: include/configs/k2e_evm.h +F: configs/k2e_evm_defconfig diff --git a/board/ti/omap5912osk/Kconfig b/board/ti/omap5912osk/Kconfig new file mode 100644 index 0000000..9f7493a --- /dev/null +++ b/board/ti/omap5912osk/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP5912OSK + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "omap5912osk" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap" + +config SYS_CONFIG_NAME + string + default "omap5912osk" + +endif diff --git a/board/ti/omap5912osk/MAINTAINERS b/board/ti/omap5912osk/MAINTAINERS new file mode 100644 index 0000000..43ffb9b --- /dev/null +++ b/board/ti/omap5912osk/MAINTAINERS @@ -0,0 +1,6 @@ +OMAP5912OSK BOARD +M: Rishi Bhattacharya <rishi@ti.com> +S: Maintained +F: board/ti/omap5912osk/ +F: include/configs/omap5912osk.h +F: configs/omap5912osk_defconfig diff --git a/board/ti/omap5_uevm/Kconfig b/board/ti/omap5_uevm/Kconfig new file mode 100644 index 0000000..7c7d5dc --- /dev/null +++ b/board/ti/omap5_uevm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP5_UEVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "omap5_uevm" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap5" + +config SYS_CONFIG_NAME + string + default "omap5_uevm" + +endif diff --git a/board/ti/omap5_uevm/MAINTAINERS b/board/ti/omap5_uevm/MAINTAINERS new file mode 100644 index 0000000..280ea2f --- /dev/null +++ b/board/ti/omap5_uevm/MAINTAINERS @@ -0,0 +1,6 @@ +OMAP5_UEVM BOARD +M: Lokesh Vutla <lokeshvutla@ti.com> +S: Maintained +F: board/ti/omap5_uevm/ +F: include/configs/omap5_uevm.h +F: configs/omap5_uevm_defconfig diff --git a/board/ti/panda/Kconfig b/board/ti/panda/Kconfig new file mode 100644 index 0000000..be1307d --- /dev/null +++ b/board/ti/panda/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP4_PANDA + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "panda" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap4" + +config SYS_CONFIG_NAME + string + default "omap4_panda" + +endif diff --git a/board/ti/panda/MAINTAINERS b/board/ti/panda/MAINTAINERS new file mode 100644 index 0000000..2142368 --- /dev/null +++ b/board/ti/panda/MAINTAINERS @@ -0,0 +1,6 @@ +PANDA BOARD +M: Lokesh Vutla <lokeshvutla@ti.com> +S: Maintained +F: board/ti/panda/ +F: include/configs/omap4_panda.h +F: configs/omap4_panda_defconfig diff --git a/board/ti/sdp3430/Kconfig b/board/ti/sdp3430/Kconfig new file mode 100644 index 0000000..81989b7 --- /dev/null +++ b/board/ti/sdp3430/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP3_SDP3430 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "sdp3430" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "omap3_sdp3430" + +endif diff --git a/board/ti/sdp3430/MAINTAINERS b/board/ti/sdp3430/MAINTAINERS new file mode 100644 index 0000000..943c196 --- /dev/null +++ b/board/ti/sdp3430/MAINTAINERS @@ -0,0 +1,6 @@ +SDP3430 BOARD +M: Nishanth Menon <nm@ti.com> +S: Maintained +F: board/ti/sdp3430/ +F: include/configs/omap3_sdp3430.h +F: configs/omap3_sdp3430_defconfig diff --git a/board/ti/sdp4430/Kconfig b/board/ti/sdp4430/Kconfig new file mode 100644 index 0000000..140e1f1 --- /dev/null +++ b/board/ti/sdp4430/Kconfig @@ -0,0 +1,23 @@ +if TARGET_OMAP4_SDP4430 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "sdp4430" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "omap4" + +config SYS_CONFIG_NAME + string + default "omap4_sdp4430" + +endif diff --git a/board/ti/sdp4430/MAINTAINERS b/board/ti/sdp4430/MAINTAINERS new file mode 100644 index 0000000..ac4d0cc --- /dev/null +++ b/board/ti/sdp4430/MAINTAINERS @@ -0,0 +1,6 @@ +SDP4430 BOARD +M: Lokesh Vutla <lokeshvutla@ti.com> +S: Maintained +F: board/ti/sdp4430/ +F: include/configs/omap4_sdp4430.h +F: configs/omap4_sdp4430_defconfig diff --git a/board/ti/ti814x/Kconfig b/board/ti/ti814x/Kconfig new file mode 100644 index 0000000..4d4f52c --- /dev/null +++ b/board/ti/ti814x/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TI814X_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "ti814x" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "ti814x_evm" + +endif diff --git a/board/ti/ti814x/MAINTAINERS b/board/ti/ti814x/MAINTAINERS new file mode 100644 index 0000000..e39b253 --- /dev/null +++ b/board/ti/ti814x/MAINTAINERS @@ -0,0 +1,6 @@ +TI814X BOARD +M: Matt Porter <matt.porter@linaro.org> +S: Maintained +F: board/ti/ti814x/ +F: include/configs/ti814x_evm.h +F: configs/ti814x_evm_defconfig diff --git a/board/ti/ti816x/Kconfig b/board/ti/ti816x/Kconfig new file mode 100644 index 0000000..5821172 --- /dev/null +++ b/board/ti/ti816x/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TI816X_EVM + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "ti816x" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "am33xx" + +config SYS_CONFIG_NAME + string + default "ti816x_evm" + +endif diff --git a/board/ti/ti816x/MAINTAINERS b/board/ti/ti816x/MAINTAINERS new file mode 100644 index 0000000..8bf6122 --- /dev/null +++ b/board/ti/ti816x/MAINTAINERS @@ -0,0 +1,6 @@ +TI816X BOARD +M: - +S: Maintained +F: board/ti/ti816x/ +F: include/configs/ti816x_evm.h +F: configs/ti816x_evm_defconfig diff --git a/board/ti/tnetv107xevm/Kconfig b/board/ti/tnetv107xevm/Kconfig new file mode 100644 index 0000000..9cffd7c --- /dev/null +++ b/board/ti/tnetv107xevm/Kconfig @@ -0,0 +1,23 @@ +if TARGET_TNETV107X_EVM + +config SYS_CPU + string + default "arm1176" + +config SYS_BOARD + string + default "tnetv107xevm" + +config SYS_VENDOR + string + default "ti" + +config SYS_SOC + string + default "tnetv107x" + +config SYS_CONFIG_NAME + string + default "tnetv107x_evm" + +endif diff --git a/board/ti/tnetv107xevm/MAINTAINERS b/board/ti/tnetv107xevm/MAINTAINERS new file mode 100644 index 0000000..76ccfdc --- /dev/null +++ b/board/ti/tnetv107xevm/MAINTAINERS @@ -0,0 +1,6 @@ +TNETV107XEVM BOARD +M: Chan-Taek Park <c-park@ti.com> +S: Orphan (since 2014-06) +F: board/ti/tnetv107xevm/ +F: include/configs/tnetv107x_evm.h +F: configs/tnetv107x_evm_defconfig diff --git a/board/timll/devkit3250/Kconfig b/board/timll/devkit3250/Kconfig new file mode 100644 index 0000000..4caee60 --- /dev/null +++ b/board/timll/devkit3250/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DEVKIT3250 + +config SYS_CPU + string + default "arm926ejs" + +config SYS_BOARD + string + default "devkit3250" + +config SYS_VENDOR + string + default "timll" + +config SYS_SOC + string + default "lpc32xx" + +config SYS_CONFIG_NAME + string + default "devkit3250" + +endif diff --git a/board/timll/devkit3250/MAINTAINERS b/board/timll/devkit3250/MAINTAINERS new file mode 100644 index 0000000..cb93563 --- /dev/null +++ b/board/timll/devkit3250/MAINTAINERS @@ -0,0 +1,6 @@ +DEVKIT3250 BOARD +M: Vladimir Zapolskiy <vz@mleia.com> +S: Maintained +F: board/timll/devkit3250/ +F: include/configs/devkit3250.h +F: configs/devkit3250_defconfig diff --git a/board/timll/devkit8000/Kconfig b/board/timll/devkit8000/Kconfig new file mode 100644 index 0000000..d9c920c --- /dev/null +++ b/board/timll/devkit8000/Kconfig @@ -0,0 +1,23 @@ +if TARGET_DEVKIT8000 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "devkit8000" + +config SYS_VENDOR + string + default "timll" + +config SYS_SOC + string + default "omap3" + +config SYS_CONFIG_NAME + string + default "devkit8000" + +endif diff --git a/board/timll/devkit8000/MAINTAINERS b/board/timll/devkit8000/MAINTAINERS new file mode 100644 index 0000000..c490757 --- /dev/null +++ b/board/timll/devkit8000/MAINTAINERS @@ -0,0 +1,6 @@ +DEVKIT8000 BOARD +M: Thomas Weber <weber@corscience.de> +S: Maintained +F: board/timll/devkit8000/ +F: include/configs/devkit8000.h +F: configs/devkit8000_defconfig diff --git a/board/toradex/colibri_pxa270/Kconfig b/board/toradex/colibri_pxa270/Kconfig new file mode 100644 index 0000000..9367c88 --- /dev/null +++ b/board/toradex/colibri_pxa270/Kconfig @@ -0,0 +1,19 @@ +if TARGET_COLIBRI_PXA270 + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "colibri_pxa270" + +config SYS_VENDOR + string + default "toradex" + +config SYS_CONFIG_NAME + string + default "colibri_pxa270" + +endif diff --git a/board/toradex/colibri_pxa270/MAINTAINERS b/board/toradex/colibri_pxa270/MAINTAINERS new file mode 100644 index 0000000..b378d7b --- /dev/null +++ b/board/toradex/colibri_pxa270/MAINTAINERS @@ -0,0 +1,6 @@ +COLIBRI_PXA270 BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/toradex/colibri_pxa270/ +F: include/configs/colibri_pxa270.h +F: configs/colibri_pxa270_defconfig diff --git a/board/toradex/colibri_t20_iris/Kconfig b/board/toradex/colibri_t20_iris/Kconfig new file mode 100644 index 0000000..334b7e0 --- /dev/null +++ b/board/toradex/colibri_t20_iris/Kconfig @@ -0,0 +1,24 @@ +if TARGET_COLIBRI_T20_IRIS + +config SYS_CPU + string + default "arm720t" if SPL_BUILD + default "armv7" if !SPL_BUILD + +config SYS_BOARD + string + default "colibri_t20_iris" + +config SYS_VENDOR + string + default "toradex" + +config SYS_SOC + string + default "tegra20" + +config SYS_CONFIG_NAME + string + default "colibri_t20_iris" + +endif diff --git a/board/toradex/colibri_t20_iris/MAINTAINERS b/board/toradex/colibri_t20_iris/MAINTAINERS new file mode 100644 index 0000000..c68955b --- /dev/null +++ b/board/toradex/colibri_t20_iris/MAINTAINERS @@ -0,0 +1,6 @@ +COLIBRI_T20_IRIS BOARD +M: Lucas Stach <dev@lynxeye.de> +S: Maintained +F: board/toradex/colibri_t20_iris/ +F: include/configs/colibri_t20_iris.h +F: configs/colibri_t20_iris_defconfig diff --git a/board/total5200/Kconfig b/board/total5200/Kconfig new file mode 100644 index 0000000..774eb98 --- /dev/null +++ b/board/total5200/Kconfig @@ -0,0 +1,11 @@ +if TARGET_TOTAL5200 + +config SYS_BOARD + string + default "total5200" + +config SYS_CONFIG_NAME + string + default "Total5200" + +endif diff --git a/board/total5200/MAINTAINERS b/board/total5200/MAINTAINERS new file mode 100644 index 0000000..983b96d --- /dev/null +++ b/board/total5200/MAINTAINERS @@ -0,0 +1,9 @@ +TOTAL5200 BOARD +M: - +S: Maintained +F: board/total5200/ +F: include/configs/Total5200.h +F: configs/Total5200_defconfig +F: configs/Total5200_lowboot_defconfig +F: configs/Total5200_Rev2_defconfig +F: configs/Total5200_Rev2_lowboot_defconfig diff --git a/board/tqc/tqm5200/Kconfig b/board/tqc/tqm5200/Kconfig new file mode 100644 index 0000000..c692196 --- /dev/null +++ b/board/tqc/tqm5200/Kconfig @@ -0,0 +1,63 @@ +if TARGET_AEV + +config SYS_BOARD + string + default "tqm5200" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "aev" + +endif + +if TARGET_CHARON + +config SYS_BOARD + string + default "tqm5200" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "charon" + +endif + +if TARGET_TB5200 + +config SYS_BOARD + string + default "tqm5200" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TB5200" + +endif + +if TARGET_TQM5200 + +config SYS_BOARD + string + default "tqm5200" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM5200" + +endif diff --git a/board/tqc/tqm5200/MAINTAINERS b/board/tqc/tqm5200/MAINTAINERS new file mode 100644 index 0000000..581ef95 --- /dev/null +++ b/board/tqc/tqm5200/MAINTAINERS @@ -0,0 +1,26 @@ +TQM5200 BOARD +M: - +S: Maintained +F: board/tqc/tqm5200/ +F: include/configs/aev.h +F: configs/aev_defconfig +F: include/configs/TQM5200.h +F: configs/cam5200_defconfig +F: configs/cam5200_niosflash_defconfig +F: configs/fo300_defconfig +F: configs/MiniFAP_defconfig +F: include/configs/TB5200.h +F: configs/TB5200_defconfig +F: configs/TB5200_B_defconfig +F: configs/TQM5200_defconfig +F: configs/TQM5200_B_defconfig +F: configs/TQM5200_B_HIGHBOOT_defconfig +F: configs/TQM5200_STK100_defconfig +F: configs/TQM5200S_defconfig +F: configs/TQM5200S_HIGHBOOT_defconfig + +CHARON BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: include/configs/charon.h +F: configs/charon_defconfig diff --git a/board/tqc/tqm8260/Kconfig b/board/tqc/tqm8260/Kconfig new file mode 100644 index 0000000..0cf80dd --- /dev/null +++ b/board/tqc/tqm8260/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TQM8260 + +config SYS_BOARD + string + default "tqm8260" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM8260" + +endif diff --git a/board/tqc/tqm8260/MAINTAINERS b/board/tqc/tqm8260/MAINTAINERS new file mode 100644 index 0000000..266910f --- /dev/null +++ b/board/tqc/tqm8260/MAINTAINERS @@ -0,0 +1,16 @@ +TQM8260 BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/tqc/tqm8260/ +F: include/configs/TQM8260.h +F: configs/TQM8255_AA_defconfig +F: configs/TQM8260_AA_defconfig +F: configs/TQM8260_AB_defconfig +F: configs/TQM8260_AC_defconfig +F: configs/TQM8260_AD_defconfig +F: configs/TQM8260_AE_defconfig +F: configs/TQM8260_AF_defconfig +F: configs/TQM8260_AG_defconfig +F: configs/TQM8260_AH_defconfig +F: configs/TQM8260_AI_defconfig +F: configs/TQM8265_AA_defconfig diff --git a/board/tqc/tqm8272/Kconfig b/board/tqc/tqm8272/Kconfig new file mode 100644 index 0000000..9be43d3 --- /dev/null +++ b/board/tqc/tqm8272/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TQM8272 + +config SYS_BOARD + string + default "tqm8272" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM8272" + +endif diff --git a/board/tqc/tqm8272/MAINTAINERS b/board/tqc/tqm8272/MAINTAINERS new file mode 100644 index 0000000..a660de1 --- /dev/null +++ b/board/tqc/tqm8272/MAINTAINERS @@ -0,0 +1,6 @@ +TQM8272 BOARD +M: - +S: Maintained +F: board/tqc/tqm8272/ +F: include/configs/TQM8272.h +F: configs/TQM8272_defconfig diff --git a/board/tqc/tqm834x/Kconfig b/board/tqc/tqm834x/Kconfig new file mode 100644 index 0000000..cd2e817 --- /dev/null +++ b/board/tqc/tqm834x/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TQM834X + +config SYS_BOARD + string + default "tqm834x" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM834x" + +endif diff --git a/board/tqc/tqm834x/MAINTAINERS b/board/tqc/tqm834x/MAINTAINERS new file mode 100644 index 0000000..10c14f3 --- /dev/null +++ b/board/tqc/tqm834x/MAINTAINERS @@ -0,0 +1,6 @@ +TQM834X BOARD +M: - +S: Maintained +F: board/tqc/tqm834x/ +F: include/configs/TQM834x.h +F: configs/TQM834x_defconfig diff --git a/board/tqc/tqm8xx/Kconfig b/board/tqc/tqm8xx/Kconfig new file mode 100644 index 0000000..5700d22 --- /dev/null +++ b/board/tqc/tqm8xx/Kconfig @@ -0,0 +1,287 @@ +if TARGET_FPS850L + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "FPS850L" + +endif + +if TARGET_FPS860L + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "FPS860L" + +endif + +if TARGET_NSCU + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "NSCU" + +endif + +if TARGET_SM850 + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "SM850" + +endif + +if TARGET_TK885D + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TK885D" + +endif + +if TARGET_TQM823L + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM823L" + +endif + +if TARGET_TQM823M + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM823M" + +endif + +if TARGET_TQM850L + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM850L" + +endif + +if TARGET_TQM850M + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM850M" + +endif + +if TARGET_TQM855L + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM855L" + +endif + +if TARGET_TQM855M + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM855M" + +endif + +if TARGET_TQM860L + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM860L" + +endif + +if TARGET_TQM860M + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM860M" + +endif + +if TARGET_TQM862L + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM862L" + +endif + +if TARGET_TQM862M + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM862M" + +endif + +if TARGET_TQM866M + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM866M" + +endif + +if TARGET_TQM885D + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "TQM885D" + +endif + +if TARGET_VIRTLAB2 + +config SYS_BOARD + string + default "tqm8xx" + +config SYS_VENDOR + string + default "tqc" + +config SYS_CONFIG_NAME + string + default "virtlab2" + +endif diff --git a/board/tqc/tqm8xx/MAINTAINERS b/board/tqc/tqm8xx/MAINTAINERS new file mode 100644 index 0000000..161fa68 --- /dev/null +++ b/board/tqc/tqm8xx/MAINTAINERS @@ -0,0 +1,47 @@ +TQM8XX BOARD +M: Wolfgang Denk <wd@denx.de> +S: Maintained +F: board/tqc/tqm8xx/ +F: include/configs/FPS850L.h +F: configs/FPS850L_defconfig +F: include/configs/FPS860L.h +F: configs/FPS860L_defconfig +F: include/configs/SM850.h +F: configs/SM850_defconfig +F: include/configs/TQM823L.h +F: configs/TQM823L_defconfig +F: configs/TQM823L_LCD_defconfig +F: include/configs/TQM823M.h +F: configs/TQM823M_defconfig +F: include/configs/TQM850L.h +F: configs/TQM850L_defconfig +F: include/configs/TQM850M.h +F: configs/TQM850M_defconfig +F: include/configs/TQM855L.h +F: configs/TQM855L_defconfig +F: include/configs/TQM855M.h +F: configs/TQM855M_defconfig +F: include/configs/TQM860L.h +F: configs/TQM860L_defconfig +F: include/configs/TQM860M.h +F: configs/TQM860M_defconfig +F: include/configs/TQM862L.h +F: configs/TQM862L_defconfig +F: include/configs/TQM862M.h +F: configs/TQM862M_defconfig +F: include/configs/TQM866M.h +F: configs/TQM866M_defconfig +F: include/configs/TQM885D.h +F: configs/TQM885D_defconfig +F: configs/TTTech_defconfig +F: include/configs/virtlab2.h +F: configs/virtlab2_defconfig +F: configs/wtk_defconfig + +NSCU BOARD +M: - +S: Maintained +F: include/configs/NSCU.h +F: configs/NSCU_defconfig +F: include/configs/TK885D.h +F: configs/TK885D_defconfig diff --git a/board/trizepsiv/Kconfig b/board/trizepsiv/Kconfig new file mode 100644 index 0000000..ddd2ce3 --- /dev/null +++ b/board/trizepsiv/Kconfig @@ -0,0 +1,15 @@ +if TARGET_TRIZEPSIV + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "trizepsiv" + +config SYS_CONFIG_NAME + string + default "trizepsiv" + +endif diff --git a/board/trizepsiv/MAINTAINERS b/board/trizepsiv/MAINTAINERS new file mode 100644 index 0000000..ba48c2e --- /dev/null +++ b/board/trizepsiv/MAINTAINERS @@ -0,0 +1,7 @@ +TRIZEPSIV BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/trizepsiv/ +F: include/configs/trizepsiv.h +F: configs/polaris_defconfig +F: configs/trizepsiv_defconfig diff --git a/board/ttcontrol/vision2/Kconfig b/board/ttcontrol/vision2/Kconfig new file mode 100644 index 0000000..3b18bea --- /dev/null +++ b/board/ttcontrol/vision2/Kconfig @@ -0,0 +1,23 @@ +if TARGET_VISION2 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "vision2" + +config SYS_VENDOR + string + default "ttcontrol" + +config SYS_SOC + string + default "mx5" + +config SYS_CONFIG_NAME + string + default "vision2" + +endif diff --git a/board/ttcontrol/vision2/MAINTAINERS b/board/ttcontrol/vision2/MAINTAINERS new file mode 100644 index 0000000..cfc9903 --- /dev/null +++ b/board/ttcontrol/vision2/MAINTAINERS @@ -0,0 +1,6 @@ +VISION2 BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/ttcontrol/vision2/ +F: include/configs/vision2.h +F: configs/vision2_defconfig diff --git a/board/udoo/Kconfig b/board/udoo/Kconfig new file mode 100644 index 0000000..69dbce0 --- /dev/null +++ b/board/udoo/Kconfig @@ -0,0 +1,19 @@ +if TARGET_UDOO + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "udoo" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "udoo" + +endif diff --git a/board/udoo/MAINTAINERS b/board/udoo/MAINTAINERS new file mode 100644 index 0000000..ee8b61e --- /dev/null +++ b/board/udoo/MAINTAINERS @@ -0,0 +1,6 @@ +UDOO BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/udoo/ +F: include/configs/udoo.h +F: configs/udoo_quad_defconfig diff --git a/board/utx8245/Kconfig b/board/utx8245/Kconfig new file mode 100644 index 0000000..3dd264b --- /dev/null +++ b/board/utx8245/Kconfig @@ -0,0 +1,11 @@ +if TARGET_UTX8245 + +config SYS_BOARD + string + default "utx8245" + +config SYS_CONFIG_NAME + string + default "utx8245" + +endif diff --git a/board/utx8245/MAINTAINERS b/board/utx8245/MAINTAINERS new file mode 100644 index 0000000..bed69c8 --- /dev/null +++ b/board/utx8245/MAINTAINERS @@ -0,0 +1,6 @@ +UTX8245 BOARD +M: Greg Allen <gallen@arlut.utexas.edu> +S: Maintained +F: board/utx8245/ +F: include/configs/utx8245.h +F: configs/utx8245_defconfig diff --git a/board/v38b/Kconfig b/board/v38b/Kconfig new file mode 100644 index 0000000..f473d89 --- /dev/null +++ b/board/v38b/Kconfig @@ -0,0 +1,11 @@ +if TARGET_V38B + +config SYS_BOARD + string + default "v38b" + +config SYS_CONFIG_NAME + string + default "v38b" + +endif diff --git a/board/v38b/MAINTAINERS b/board/v38b/MAINTAINERS new file mode 100644 index 0000000..1b12d0b --- /dev/null +++ b/board/v38b/MAINTAINERS @@ -0,0 +1,6 @@ +V38B BOARD +M: - +S: Maintained +F: board/v38b/ +F: include/configs/v38b.h +F: configs/v38b_defconfig diff --git a/board/ve8313/Kconfig b/board/ve8313/Kconfig new file mode 100644 index 0000000..ed9efbf --- /dev/null +++ b/board/ve8313/Kconfig @@ -0,0 +1,11 @@ +if TARGET_VE8313 + +config SYS_BOARD + string + default "ve8313" + +config SYS_CONFIG_NAME + string + default "ve8313" + +endif diff --git a/board/ve8313/MAINTAINERS b/board/ve8313/MAINTAINERS new file mode 100644 index 0000000..e3ca332 --- /dev/null +++ b/board/ve8313/MAINTAINERS @@ -0,0 +1,6 @@ +VE8313 BOARD +M: Heiko Schocher <hs@denx.de> +S: Maintained +F: board/ve8313/ +F: include/configs/ve8313.h +F: configs/ve8313_defconfig diff --git a/board/vpac270/Kconfig b/board/vpac270/Kconfig new file mode 100644 index 0000000..e9170b0 --- /dev/null +++ b/board/vpac270/Kconfig @@ -0,0 +1,15 @@ +if TARGET_VPAC270 + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "vpac270" + +config SYS_CONFIG_NAME + string + default "vpac270" + +endif diff --git a/board/vpac270/MAINTAINERS b/board/vpac270/MAINTAINERS new file mode 100644 index 0000000..1c62765 --- /dev/null +++ b/board/vpac270/MAINTAINERS @@ -0,0 +1,8 @@ +VPAC270 BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/vpac270/ +F: include/configs/vpac270.h +F: configs/vpac270_nor_128_defconfig +F: configs/vpac270_nor_256_defconfig +F: configs/vpac270_ond_256_defconfig diff --git a/board/w7o/Kconfig b/board/w7o/Kconfig new file mode 100644 index 0000000..c0e879a --- /dev/null +++ b/board/w7o/Kconfig @@ -0,0 +1,23 @@ +if TARGET_W7OLMC + +config SYS_BOARD + string + default "w7o" + +config SYS_CONFIG_NAME + string + default "W7OLMC" + +endif + +if TARGET_W7OLMG + +config SYS_BOARD + string + default "w7o" + +config SYS_CONFIG_NAME + string + default "W7OLMG" + +endif diff --git a/board/w7o/MAINTAINERS b/board/w7o/MAINTAINERS new file mode 100644 index 0000000..bfedee5 --- /dev/null +++ b/board/w7o/MAINTAINERS @@ -0,0 +1,8 @@ +W7O BOARD +M: Erik Theisen <etheisen@mindspring.com> +S: Maintained +F: board/w7o/ +F: include/configs/W7OLMC.h +F: configs/W7OLMC_defconfig +F: include/configs/W7OLMG.h +F: configs/W7OLMG_defconfig diff --git a/board/wandboard/Kconfig b/board/wandboard/Kconfig new file mode 100644 index 0000000..a323afa --- /dev/null +++ b/board/wandboard/Kconfig @@ -0,0 +1,19 @@ +if TARGET_WANDBOARD + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "wandboard" + +config SYS_SOC + string + default "mx6" + +config SYS_CONFIG_NAME + string + default "wandboard" + +endif diff --git a/board/wandboard/MAINTAINERS b/board/wandboard/MAINTAINERS new file mode 100644 index 0000000..b986980 --- /dev/null +++ b/board/wandboard/MAINTAINERS @@ -0,0 +1,8 @@ +WANDBOARD BOARD +M: Fabio Estevam <fabio.estevam@freescale.com> +S: Maintained +F: board/wandboard/ +F: include/configs/wandboard.h +F: configs/wandboard_dl_defconfig +F: configs/wandboard_quad_defconfig +F: configs/wandboard_solo_defconfig diff --git a/board/woodburn/Kconfig b/board/woodburn/Kconfig new file mode 100644 index 0000000..1aca934 --- /dev/null +++ b/board/woodburn/Kconfig @@ -0,0 +1,39 @@ +if TARGET_WOODBURN + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "woodburn" + +config SYS_SOC + string + default "mx35" + +config SYS_CONFIG_NAME + string + default "woodburn" + +endif + +if TARGET_WOODBURN_SD + +config SYS_CPU + string + default "arm1136" + +config SYS_BOARD + string + default "woodburn" + +config SYS_SOC + string + default "mx35" + +config SYS_CONFIG_NAME + string + default "woodburn_sd" + +endif diff --git a/board/woodburn/MAINTAINERS b/board/woodburn/MAINTAINERS new file mode 100644 index 0000000..715f2ca --- /dev/null +++ b/board/woodburn/MAINTAINERS @@ -0,0 +1,12 @@ +WOODBURN BOARD +M: Stefano Babic <sbabic@denx.de> +S: Maintained +F: board/woodburn/ +F: include/configs/woodburn.h +F: configs/woodburn_defconfig + +WOODBURN_SD BOARD +M: - +S: Maintained +F: include/configs/woodburn_sd.h +F: configs/woodburn_sd_defconfig diff --git a/board/xaeniax/Kconfig b/board/xaeniax/Kconfig new file mode 100644 index 0000000..9b41435 --- /dev/null +++ b/board/xaeniax/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XAENIAX + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "xaeniax" + +config SYS_CONFIG_NAME + string + default "xaeniax" + +endif diff --git a/board/xaeniax/MAINTAINERS b/board/xaeniax/MAINTAINERS new file mode 100644 index 0000000..f2fa4bf --- /dev/null +++ b/board/xaeniax/MAINTAINERS @@ -0,0 +1,6 @@ +XAENIAX BOARD +M: - +S: Maintained +F: board/xaeniax/ +F: include/configs/xaeniax.h +F: configs/xaeniax_defconfig diff --git a/board/xes/xpedite1000/Kconfig b/board/xes/xpedite1000/Kconfig new file mode 100644 index 0000000..115439a --- /dev/null +++ b/board/xes/xpedite1000/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XPEDITE1000 + +config SYS_BOARD + string + default "xpedite1000" + +config SYS_VENDOR + string + default "xes" + +config SYS_CONFIG_NAME + string + default "xpedite1000" + +endif diff --git a/board/xes/xpedite1000/MAINTAINERS b/board/xes/xpedite1000/MAINTAINERS new file mode 100644 index 0000000..055ce6a --- /dev/null +++ b/board/xes/xpedite1000/MAINTAINERS @@ -0,0 +1,6 @@ +XPEDITE1000 BOARD +M: Peter Tyser <ptyser@xes-inc.com> +S: Maintained +F: board/xes/xpedite1000/ +F: include/configs/xpedite1000.h +F: configs/xpedite1000_defconfig diff --git a/board/xes/xpedite517x/Kconfig b/board/xes/xpedite517x/Kconfig new file mode 100644 index 0000000..b938746 --- /dev/null +++ b/board/xes/xpedite517x/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XPEDITE517X + +config SYS_BOARD + string + default "xpedite517x" + +config SYS_VENDOR + string + default "xes" + +config SYS_CONFIG_NAME + string + default "xpedite517x" + +endif diff --git a/board/xes/xpedite517x/MAINTAINERS b/board/xes/xpedite517x/MAINTAINERS new file mode 100644 index 0000000..c74fdf4 --- /dev/null +++ b/board/xes/xpedite517x/MAINTAINERS @@ -0,0 +1,6 @@ +XPEDITE517X BOARD +M: - +S: Maintained +F: board/xes/xpedite517x/ +F: include/configs/xpedite517x.h +F: configs/xpedite517x_defconfig diff --git a/board/xes/xpedite520x/Kconfig b/board/xes/xpedite520x/Kconfig new file mode 100644 index 0000000..e524ff1 --- /dev/null +++ b/board/xes/xpedite520x/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XPEDITE520X + +config SYS_BOARD + string + default "xpedite520x" + +config SYS_VENDOR + string + default "xes" + +config SYS_CONFIG_NAME + string + default "xpedite520x" + +endif diff --git a/board/xes/xpedite520x/MAINTAINERS b/board/xes/xpedite520x/MAINTAINERS new file mode 100644 index 0000000..7f9bf9a --- /dev/null +++ b/board/xes/xpedite520x/MAINTAINERS @@ -0,0 +1,6 @@ +XPEDITE520X BOARD +M: - +S: Maintained +F: board/xes/xpedite520x/ +F: include/configs/xpedite520x.h +F: configs/xpedite520x_defconfig diff --git a/board/xes/xpedite537x/Kconfig b/board/xes/xpedite537x/Kconfig new file mode 100644 index 0000000..cab2ab3 --- /dev/null +++ b/board/xes/xpedite537x/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XPEDITE537X + +config SYS_BOARD + string + default "xpedite537x" + +config SYS_VENDOR + string + default "xes" + +config SYS_CONFIG_NAME + string + default "xpedite537x" + +endif diff --git a/board/xes/xpedite537x/MAINTAINERS b/board/xes/xpedite537x/MAINTAINERS new file mode 100644 index 0000000..a13dcf1 --- /dev/null +++ b/board/xes/xpedite537x/MAINTAINERS @@ -0,0 +1,6 @@ +XPEDITE537X BOARD +M: - +S: Maintained +F: board/xes/xpedite537x/ +F: include/configs/xpedite537x.h +F: configs/xpedite537x_defconfig diff --git a/board/xes/xpedite550x/Kconfig b/board/xes/xpedite550x/Kconfig new file mode 100644 index 0000000..fa11719 --- /dev/null +++ b/board/xes/xpedite550x/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XPEDITE550X + +config SYS_BOARD + string + default "xpedite550x" + +config SYS_VENDOR + string + default "xes" + +config SYS_CONFIG_NAME + string + default "xpedite550x" + +endif diff --git a/board/xes/xpedite550x/MAINTAINERS b/board/xes/xpedite550x/MAINTAINERS new file mode 100644 index 0000000..12d321e --- /dev/null +++ b/board/xes/xpedite550x/MAINTAINERS @@ -0,0 +1,6 @@ +XPEDITE550X BOARD +M: - +S: Maintained +F: board/xes/xpedite550x/ +F: include/configs/xpedite550x.h +F: configs/xpedite550x_defconfig diff --git a/board/xilinx/microblaze-generic/Kconfig b/board/xilinx/microblaze-generic/Kconfig new file mode 100644 index 0000000..b9cb334 --- /dev/null +++ b/board/xilinx/microblaze-generic/Kconfig @@ -0,0 +1,15 @@ +if TARGET_MICROBLAZE_GENERIC + +config SYS_BOARD + string + default "microblaze-generic" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_CONFIG_NAME + string + default "microblaze-generic" + +endif diff --git a/board/xilinx/microblaze-generic/MAINTAINERS b/board/xilinx/microblaze-generic/MAINTAINERS new file mode 100644 index 0000000..6796d4d --- /dev/null +++ b/board/xilinx/microblaze-generic/MAINTAINERS @@ -0,0 +1,6 @@ +MICROBLAZE-GENERIC BOARD +M: Michal Simek <monstr@monstr.eu> +S: Maintained +F: board/xilinx/microblaze-generic/ +F: include/configs/microblaze-generic.h +F: configs/microblaze-generic_defconfig diff --git a/board/xilinx/ml507/Kconfig b/board/xilinx/ml507/Kconfig new file mode 100644 index 0000000..6f3483d --- /dev/null +++ b/board/xilinx/ml507/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ML507 + +config SYS_BOARD + string + default "ml507" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_CONFIG_NAME + string + default "ml507" + +endif diff --git a/board/xilinx/ml507/MAINTAINERS b/board/xilinx/ml507/MAINTAINERS new file mode 100644 index 0000000..8b40f44 --- /dev/null +++ b/board/xilinx/ml507/MAINTAINERS @@ -0,0 +1,7 @@ +ML507 BOARD +M: Ricardo Ribalda <ricardo.ribalda@uam.es> +S: Maintained +F: board/xilinx/ml507/ +F: include/configs/ml507.h +F: configs/ml507_defconfig +F: configs/ml507_flash_defconfig diff --git a/board/xilinx/ppc405-generic/Kconfig b/board/xilinx/ppc405-generic/Kconfig new file mode 100644 index 0000000..98411c7 --- /dev/null +++ b/board/xilinx/ppc405-generic/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XILINX_PPC405_GENERIC + +config SYS_BOARD + string + default "ppc405-generic" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_CONFIG_NAME + string + default "xilinx-ppc405-generic" + +endif diff --git a/board/xilinx/ppc405-generic/MAINTAINERS b/board/xilinx/ppc405-generic/MAINTAINERS new file mode 100644 index 0000000..2b0c98d --- /dev/null +++ b/board/xilinx/ppc405-generic/MAINTAINERS @@ -0,0 +1,7 @@ +PPC405-GENERIC BOARD +M: Ricardo Ribalda <ricardo.ribalda@uam.es> +S: Maintained +F: board/xilinx/ppc405-generic/ +F: include/configs/xilinx-ppc405-generic.h +F: configs/xilinx-ppc405-generic_defconfig +F: configs/xilinx-ppc405-generic_flash_defconfig diff --git a/board/xilinx/ppc440-generic/Kconfig b/board/xilinx/ppc440-generic/Kconfig new file mode 100644 index 0000000..37abe63 --- /dev/null +++ b/board/xilinx/ppc440-generic/Kconfig @@ -0,0 +1,15 @@ +if TARGET_XILINX_PPC440_GENERIC + +config SYS_BOARD + string + default "ppc440-generic" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_CONFIG_NAME + string + default "xilinx-ppc440-generic" + +endif diff --git a/board/xilinx/ppc440-generic/MAINTAINERS b/board/xilinx/ppc440-generic/MAINTAINERS new file mode 100644 index 0000000..2d0b11a --- /dev/null +++ b/board/xilinx/ppc440-generic/MAINTAINERS @@ -0,0 +1,7 @@ +PPC440-GENERIC BOARD +M: Ricardo Ribalda <ricardo.ribalda@uam.es> +S: Maintained +F: board/xilinx/ppc440-generic/ +F: include/configs/xilinx-ppc440-generic.h +F: configs/xilinx-ppc440-generic_defconfig +F: configs/xilinx-ppc440-generic_flash_defconfig diff --git a/board/xilinx/zynq/Kconfig b/board/xilinx/zynq/Kconfig new file mode 100644 index 0000000..3b72a5f --- /dev/null +++ b/board/xilinx/zynq/Kconfig @@ -0,0 +1,95 @@ +if TARGET_ZYNQ_MICROZED + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "zynq" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_SOC + string + default "zynq" + +config SYS_CONFIG_NAME + string + default "zynq_microzed" + +endif + +if TARGET_ZYNQ_ZC70X + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "zynq" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_SOC + string + default "zynq" + +config SYS_CONFIG_NAME + string + default "zynq_zc70x" + +endif + +if TARGET_ZYNQ_ZC770 + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "zynq" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_SOC + string + default "zynq" + +config SYS_CONFIG_NAME + string + default "zynq_zc770" + +endif + +if TARGET_ZYNQ_ZED + +config SYS_CPU + string + default "armv7" + +config SYS_BOARD + string + default "zynq" + +config SYS_VENDOR + string + default "xilinx" + +config SYS_SOC + string + default "zynq" + +config SYS_CONFIG_NAME + string + default "zynq_zed" + +endif diff --git a/board/xilinx/zynq/MAINTAINERS b/board/xilinx/zynq/MAINTAINERS new file mode 100644 index 0000000..e167816 --- /dev/null +++ b/board/xilinx/zynq/MAINTAINERS @@ -0,0 +1,15 @@ +ZYNQ BOARD +M: Michal Simek <monstr@monstr.eu> +M: Jagannadha Sutradharudu Teki <jaganna@xilinx.com> +S: Maintained +F: board/xilinx/zynq/ +F: include/configs/zynq_microzed.h +F: configs/zynq_microzed_defconfig +F: include/configs/zynq_zc70x.h +F: configs/zynq_zc70x_defconfig +F: include/configs/zynq_zc770.h +F: configs/zynq_zc770_xm010_defconfig +F: configs/zynq_zc770_xm012_defconfig +F: configs/zynq_zc770_xm013_defconfig +F: include/configs/zynq_zed.h +F: configs/zynq_zed_defconfig diff --git a/board/zeus/Kconfig b/board/zeus/Kconfig new file mode 100644 index 0000000..5678694 --- /dev/null +++ b/board/zeus/Kconfig @@ -0,0 +1,11 @@ +if TARGET_ZEUS + +config SYS_BOARD + string + default "zeus" + +config SYS_CONFIG_NAME + string + default "zeus" + +endif diff --git a/board/zeus/MAINTAINERS b/board/zeus/MAINTAINERS new file mode 100644 index 0000000..3118710 --- /dev/null +++ b/board/zeus/MAINTAINERS @@ -0,0 +1,6 @@ +ZEUS BOARD +M: Stefan Roese <sr@denx.de> +S: Maintained +F: board/zeus/ +F: include/configs/zeus.h +F: configs/zeus_defconfig diff --git a/board/zipitz2/Kconfig b/board/zipitz2/Kconfig new file mode 100644 index 0000000..702edbf --- /dev/null +++ b/board/zipitz2/Kconfig @@ -0,0 +1,15 @@ +if TARGET_ZIPITZ2 + +config SYS_CPU + string + default "pxa" + +config SYS_BOARD + string + default "zipitz2" + +config SYS_CONFIG_NAME + string + default "zipitz2" + +endif diff --git a/board/zipitz2/MAINTAINERS b/board/zipitz2/MAINTAINERS new file mode 100644 index 0000000..55b0f64 --- /dev/null +++ b/board/zipitz2/MAINTAINERS @@ -0,0 +1,6 @@ +ZIPITZ2 BOARD +M: Marek Vasut <marek.vasut@gmail.com> +S: Maintained +F: board/zipitz2/ +F: include/configs/zipitz2.h +F: configs/zipitz2_defconfig diff --git a/boards.cfg b/boards.cfg deleted file mode 100644 index 44dccbf..0000000 --- a/boards.cfg +++ /dev/null @@ -1,1233 +0,0 @@ -# -# List of boards -# -# Syntax: -# white-space separated list of entries; -# each entry has the fields documented below. -# -# Unused fields can be specified as "-", or omitted if they -# are the last field on the line. -# -# Lines starting with '#' are comments. -# Blank lines are ignored. -# -# The CPU field takes the form: -# cpu[:spl_cpu] -# If spl_cpu is specified the make variable CPU will be set to this -# during the SPL build. -# -# The options field takes the form: -# <board config name>[:comma separated config options] -# Each config option has the form (value defaults to "1"): -# option[=value] -# So if you have: -# FOO:HAS_BAR,BAZ=64 -# The file include/configs/FOO.h will be used, and these defines created: -# #define CONFIG_HAS_BAR 1 -# #define CONFIG_BAZ 64 -# -# The maintainers field lists the e-mail addresses of the board's -# maintainers, separated by colons. NOTE: there are spaces in this field! -# For any board without permanent maintainer, please contact -# Wolfgang Denk <wd@denx.de> -# And Cc: the <u-boot@lists.denx.de> mailing list. - -# The list should be ordered according to the C locale. -# -# To keep the list formatted and sorted, script tools/reformat.py is available. -# It can be used from a shell: -# tools/reformat.py -i -d '-' -s 8 <boards.cfg >boards0.cfg && mv boards0.cfg boards.cfg -# It can directly be invoked from vim: -# :%!tools/reformat.py -i -d '-' -s 8 -# -# Status, Arch, CPU:SPLCPU, SoC, Vendor, Board name, Target, Options, Maintainers -########################################################################################################### - -Active aarch64 armv8 - armltd vexpress64 vexpress_aemv8a vexpress_aemv8a:ARM64 David Feng <fenghua@phytium.com.cn> -Active aarch64 armv8 - armltd vexpress64 vexpress_aemv8a_semi vexpress_aemv8a:ARM64,SEMIHOSTING,BASE_FVP Steve Rae <srae@broadcom.com> -Active aarch64 armv8 fsl-lsch3 freescale ls2085a ls2085a_emu ls2085a_emu:ARM64,EMU York Sun <yorksun@freescale.com> -Active aarch64 armv8 fsl-lsch3 freescale ls2085a ls2085a_emu_D4 ls2085a_emu:ARM64,EMU,SYS_FSL_DDR4 York Sun <yorksun@freescale.com> -Active aarch64 armv8 fsl-lsch3 freescale ls2085a ls2085a_simu ls2085a_simu:ARM64,SIMU York Sun <yorksun@freescale.com> -Active arc arc700 - abilis tb100 tb100 - Alexey Brodkin <abrodkin@synopsys.com> -Active arc arc700 - synopsys - arcangel4 - Alexey Brodkin <abrodkin@synopsys.com> -Active arc arc700 - synopsys - arcangel4-be - Alexey Brodkin <abrodkin@synopsys.com> -Active arc arc700 - synopsys axs101 axs101 - Alexey Brodkin <abrodkin@synopsys.com> -Active arm arm1136 - armltd integrator integratorcp_cm1136 integratorcp:CM1136 Linus Walleij <linus.walleij@linaro.org> -Active arm arm1136 mx31 - imx31_phycore imx31_phycore - - -Active arm arm1136 mx31 davedenx qong qong - Wolfgang Denk <wd@denx.de> -Active arm arm1136 mx31 freescale mx31pdk mx31pdk - Fabio Estevam <fabio.estevam@freescale.com> -Active arm arm1136 mx31 hale tt01 tt01 - Helmut Raiger <helmut.raiger@hale.at> -Active arm arm1136 mx31 logicpd imx31_litekit imx31_litekit - - -Active arm arm1136 mx35 - woodburn woodburn - Stefano Babic <sbabic@denx.de> -Active arm arm1136 mx35 - woodburn woodburn_sd woodburn_sd:IMX_CONFIG=board/woodburn/imximage.cfg - -Active arm arm1136 mx35 CarMediaLab flea3 flea3 - Stefano Babic <sbabic@denx.de> -Active arm arm1136 mx35 freescale mx35pdk mx35pdk - Stefano Babic <sbabic@denx.de> -Active arm arm1176 bcm2835 raspberrypi rpi_b rpi_b - Stephen Warren <swarren@wwwdotorg.org> -Active arm arm720t - armltd integrator integratorap_cm720t integratorap:CM720T Linus Walleij <linus.walleij@linaro.org> -Active arm arm920t - armltd integrator integratorap_cm920t integratorap:CM920T Linus Walleij <linus.walleij@linaro.org> -Active arm arm920t - armltd integrator integratorcp_cm920t integratorcp:CM920T Linus Walleij <linus.walleij@linaro.org> -Active arm arm920t a320 faraday a320evb a320evb - Po-Yu Chuang <ratbert@faraday-tech.com> -Active arm arm920t at91 atmel at91rm9200ek at91rm9200ek - Andreas Bießmann <andreas.devel@gmail.com> -Active arm arm920t at91 atmel at91rm9200ek at91rm9200ek_ram at91rm9200ek:RAMBOOT Andreas Bießmann <andreas.devel@gmail.com> -Active arm arm920t at91 BuS eb_cpux9k2 eb_cpux9k2 - Jens Scharsig <esw@bus-elektronik.de> -Active arm arm920t at91 BuS eb_cpux9k2 eb_cpux9k2_ram eb_cpux9k2:RAMBOOT Jens Scharsig <esw@bus-elektronik.de> -Active arm arm920t at91 eukrea cpuat91 cpuat91 - Eric Benard <eric@eukrea.com> -Active arm arm920t at91 eukrea cpuat91 cpuat91_ram cpuat91:RAMBOOT Eric Benard <eric@eukrea.com> -Active arm arm920t ep93xx cirrus edb93xx edb9315a edb93xx:MK_edb9315a Sergey Kostanbaev <sergey.kostanbaev@fairwaves.ru> -Active arm arm920t imx - scb9328 scb9328 - Torsten Koschorrek <koschorrek@synertronixx.de> -Active arm arm920t ks8695 - cm4008 cm4008 - Greg Ungerer <greg.ungerer@opengear.com> -Active arm arm920t ks8695 - cm41xx cm41xx - - -Active arm arm920t s3c24x0 mpl vcma9 VCMA9 - David Müller <d.mueller@elsoft.ch> -Active arm arm920t s3c24x0 samsung smdk2410 smdk2410 - David Müller <d.mueller@elsoft.ch> -Active arm arm926ejs - armltd integrator integratorap_cm926ejs integratorap:CM926EJ_S Linus Walleij <linus.walleij@linaro.org> -Active arm arm926ejs - armltd integrator integratorcp_cm926ejs integratorcp:CM924EJ_S Linus Walleij <linus.walleij@linaro.org> -Active arm arm926ejs armada100 Marvell aspenite aspenite - Prafulla Wadaskar <prafulla@marvell.com> -Active arm arm926ejs armada100 Marvell gplugd gplugd - Ajay Bhargav <ajay.bhargav@einfochips.com> -Active arm arm926ejs at91 - afeb9260 afeb9260 - Sergey Lapin <slapin@ossfans.org> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9260ek_dataflash_cs0 at91sam9260ek:AT91SAM9260,SYS_USE_DATAFLASH_CS0 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9260ek_dataflash_cs1 at91sam9260ek:AT91SAM9260,SYS_USE_DATAFLASH_CS1 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9260ek_nandflash at91sam9260ek:AT91SAM9260,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9g20ek_2mmc_nandflash at91sam9260ek:AT91SAM9G20,AT91SAM9G20EK_2MMC,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9g20ek_dataflash_cs0 at91sam9260ek:AT91SAM9G20,SYS_USE_DATAFLASH_CS0 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9g20ek_dataflash_cs1 at91sam9260ek:AT91SAM9G20,SYS_USE_DATAFLASH_CS1 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9g20ek_mmc at91sam9260ek:AT91SAM9G20,SYS_USE_MMC Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9g20ek_nandflash at91sam9260ek:AT91SAM9G20,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9xeek_dataflash_cs0 at91sam9260ek:AT91SAM9XE,SYS_USE_DATAFLASH_CS0 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9xeek_dataflash_cs1 at91sam9260ek:AT91SAM9XE,SYS_USE_DATAFLASH_CS1 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9260ek at91sam9xeek_nandflash at91sam9260ek:AT91SAM9XE,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9261ek at91sam9261ek_dataflash_cs0 at91sam9261ek:AT91SAM9261,SYS_USE_DATAFLASH_CS0 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9261ek at91sam9261ek_dataflash_cs3 at91sam9261ek:AT91SAM9261,SYS_USE_DATAFLASH_CS3 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9261ek at91sam9261ek_nandflash at91sam9261ek:AT91SAM9261,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9261ek at91sam9g10ek_dataflash_cs0 at91sam9261ek:AT91SAM9G10,SYS_USE_DATAFLASH_CS0 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9261ek at91sam9g10ek_dataflash_cs3 at91sam9261ek:AT91SAM9G10,SYS_USE_DATAFLASH_CS3 Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9261ek at91sam9g10ek_nandflash at91sam9261ek:AT91SAM9G10,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9263ek at91sam9263ek_dataflash at91sam9263ek:AT91SAM9263,SYS_USE_DATAFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9263ek at91sam9263ek_dataflash_cs0 at91sam9263ek:AT91SAM9263,SYS_USE_DATAFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9263ek at91sam9263ek_nandflash at91sam9263ek:AT91SAM9263,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9263ek at91sam9263ek_norflash at91sam9263ek:AT91SAM9263,SYS_USE_NORFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9263ek at91sam9263ek_norflash_boot at91sam9263ek:AT91SAM9263,SYS_USE_BOOT_NORFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9m10g45ek at91sam9m10g45ek_mmc at91sam9m10g45ek:AT91SAM9M10G45,SYS_USE_MMC Bo Shen<voice.shen@atmel.com> -Active arm arm926ejs at91 atmel at91sam9m10g45ek at91sam9m10g45ek_nandflash at91sam9m10g45ek:AT91SAM9M10G45,SYS_USE_NANDFLASH Bo Shen<voice.shen@atmel.com> -Active arm arm926ejs at91 atmel at91sam9n12ek at91sam9n12ek_mmc at91sam9n12ek:AT91SAM9N12,SYS_USE_MMC Josh Wu <josh.wu@atmel.com> -Active arm arm926ejs at91 atmel at91sam9n12ek at91sam9n12ek_nandflash at91sam9n12ek:AT91SAM9N12,SYS_USE_NANDFLASH Josh Wu <josh.wu@atmel.com> -Active arm arm926ejs at91 atmel at91sam9n12ek at91sam9n12ek_spiflash at91sam9n12ek:AT91SAM9N12,SYS_USE_SPIFLASH Josh Wu <josh.wu@atmel.com> -Active arm arm926ejs at91 atmel at91sam9rlek at91sam9rlek_dataflash at91sam9rlek:AT91SAM9RL,SYS_USE_DATAFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9rlek at91sam9rlek_nandflash at91sam9rlek:AT91SAM9RL,SYS_USE_NANDFLASH Stelian Pop <stelian@popies.net> -Active arm arm926ejs at91 atmel at91sam9x5ek at91sam9x5ek_dataflash at91sam9x5ek:AT91SAM9X5,SYS_USE_DATAFLASH Bo Shen <voice.shen@atmel.com> -Active arm arm926ejs at91 atmel at91sam9x5ek at91sam9x5ek_mmc at91sam9x5ek:AT91SAM9X5,SYS_USE_MMC Bo Shen <voice.shen@atmel.com> -Active arm arm926ejs at91 atmel at91sam9x5ek at91sam9x5ek_nandflash at91sam9x5ek:AT91SAM9X5,SYS_USE_NANDFLASH Bo Shen <voice.shen@atmel.com> -Active arm arm926ejs at91 atmel at91sam9x5ek at91sam9x5ek_spiflash at91sam9x5ek:AT91SAM9X5,SYS_USE_SPIFLASH Bo Shen <voice.shen@atmel.com> -Active arm arm926ejs at91 bluewater snapper9260 snapper9260 snapper9260:AT91SAM9260 Ryan Mallon <ryan@bluewatersys.com> -Active arm arm926ejs at91 bluewater snapper9260 snapper9g20 snapper9260:AT91SAM9G20 Ryan Mallon <ryan@bluewatersys.com> -Active arm arm926ejs at91 BuS vl_ma2sc vl_ma2sc - Jens Scharsig <esw@bus-elektronik.de> -Active arm arm926ejs at91 BuS vl_ma2sc vl_ma2sc_ram vl_ma2sc:RAMLOAD Jens Scharsig <esw@bus-elektronik.de> -Active arm arm926ejs at91 calao usb_a9263 usb_a9263_dataflash usb_a9263:AT91SAM9263,SYS_USE_DATAFLASH Mateusz Kulikowski <mateusz.kulikowski@gmail.com> -Active arm arm926ejs at91 egnite ethernut5 ethernut5 ethernut5:AT91SAM9XE egnite GmbH <info@egnite.de> -Active arm arm926ejs at91 emk top9000 top9000eval_xe top9000:EVAL9000 Reinhard Meyer <reinhard.meyer@emk-elektronik.de> -Active arm arm926ejs at91 emk top9000 top9000su_xe top9000:SU9000 Reinhard Meyer <reinhard.meyer@emk-elektronik.de> -Active arm arm926ejs at91 esd meesc meesc meesc:AT91SAM9263,SYS_USE_NANDFLASH Daniel Gorsulowski <daniel.gorsulowski@esd.eu> -Active arm arm926ejs at91 esd meesc meesc_dataflash meesc:AT91SAM9263,SYS_USE_DATAFLASH Daniel Gorsulowski <daniel.gorsulowski@esd.eu> -Active arm arm926ejs at91 esd otc570 otc570 otc570:AT91SAM9263,SYS_USE_NANDFLASH Daniel Gorsulowski <daniel.gorsulowski@esd.eu> -Active arm arm926ejs at91 esd otc570 otc570_dataflash otc570:AT91SAM9263,SYS_USE_DATAFLASH Daniel Gorsulowski <daniel.gorsulowski@esd.eu> -Active arm arm926ejs at91 eukrea cpu9260 cpu9260 cpu9260:CPU9260 Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 eukrea cpu9260 cpu9260_128M cpu9260:CPU9260,CPU9260_128M Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 eukrea cpu9260 cpu9260_nand cpu9260:CPU9260,NANDBOOT Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 eukrea cpu9260 cpu9260_nand_128M cpu9260:CPU9260,CPU9260_128M,NANDBOOT Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 eukrea cpu9260 cpu9G20 cpu9260:CPU9G20 Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 eukrea cpu9260 cpu9G20_128M cpu9260:CPU9G20,CPU9G20_128M Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 eukrea cpu9260 cpu9G20_nand cpu9260:CPU9G20,NANDBOOT Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 eukrea cpu9260 cpu9G20_nand_128M cpu9260:CPU9G20,CPU9G20_128M,NANDBOOT Eric Benard <eric@eukrea.com> -Active arm arm926ejs at91 ronetix pm9261 pm9261 pm9261:AT91SAM9261 Ilko Iliev <iliev@ronetix.at> -Active arm arm926ejs at91 ronetix pm9263 pm9263 pm9263:AT91SAM9263 Ilko Iliev <iliev@ronetix.at> -Active arm arm926ejs at91 ronetix pm9g45 pm9g45 pm9g45:AT91SAM9G45 Ilko Iliev <iliev@ronetix.at> -Active arm arm926ejs at91 siemens corvus corvus corvus:AT91SAM9M10G45,SYS_USE_NANDFLASH Heiko Schocher <hs@denx.de> -Active arm arm926ejs at91 siemens taurus axm taurus:AT91SAM9G20,MACH_TYPE=2068,BOARD_AXM Heiko Schocher <hs@denx.de> -Active arm arm926ejs at91 siemens taurus taurus taurus:AT91SAM9G20,MACH_TYPE=2067,BOARD_TAURUS Heiko Schocher <hs@denx.de> -Active arm arm926ejs at91 taskit stamp9g20 portuxg20 stamp9g20:AT91SAM9G20,PORTUXG20 Markus Hubig <mhubig@imko.de> -Active arm arm926ejs at91 taskit stamp9g20 stamp9g20 stamp9g20:AT91SAM9G20 Markus Hubig <mhubig@imko.de> -Active arm arm926ejs davinci ait cam_enc_4xx cam_enc_4xx - Heiko Schocher <hs@denx.de> -Active arm arm926ejs davinci Barix ipam390 ipam390 - Heiko Schocher <hs@denx.de> -Active arm arm926ejs davinci davinci da8xxevm da830evm - Nick Thompson <nick.thompson@gefanuc.com> -Active arm arm926ejs davinci davinci da8xxevm da850_am18xxevm da850evm:DA850_AM18X_EVM,MAC_ADDR_IN_EEPROM,SYS_I2C_EEPROM_ADDR_LEN=2,SYS_I2C_EEPROM_ADDR=0x50 Sudhakar Rajashekhara <sudhakar.raj@ti.com> -Active arm arm926ejs davinci davinci da8xxevm da850evm da850evm:MAC_ADDR_IN_SPIFLASH Sudhakar Rajashekhara <sudhakar.raj@ti.com> -Active arm arm926ejs davinci davinci da8xxevm da850evm_direct_nor da850evm:MAC_ADDR_IN_SPIFLASH,USE_NOR,DIRECT_NOR_BOOT Sudhakar Rajashekhara <sudhakar.raj@ti.com> -Active arm arm926ejs davinci davinci da8xxevm hawkboard - Syed Mohammed Khasim <sm.khasim@gmail.com>:Sughosh Ganu <urwithsughosh@gmail.com> -Active arm arm926ejs davinci davinci da8xxevm hawkboard_uart hawkboard:UART_U_BOOT Syed Mohammed Khasim <sm.khasim@gmail.com>:Sughosh Ganu <urwithsughosh@gmail.com> -Active arm arm926ejs davinci davinci dm355evm davinci_dm355evm - Sandeep Paulraj <s-paulraj@ti.com> -Active arm arm926ejs davinci davinci dm355leopard davinci_dm355leopard - Sandeep Paulraj <s-paulraj@ti.com> -Active arm arm926ejs davinci davinci dm365evm davinci_dm365evm - Sandeep Paulraj <s-paulraj@ti.com> -Active arm arm926ejs davinci davinci dm6467evm davinci_dm6467evm davinci_dm6467evm:REFCLK_FREQ=27000000 Sandeep Paulraj <s-paulraj@ti.com> -Active arm arm926ejs davinci davinci dm6467evm davinci_dm6467Tevm davinci_dm6467evm:DAVINCI_DM6467TEVM,REFCLK_FREQ=33000000 Sandeep Paulraj <s-paulraj@ti.com> -Active arm arm926ejs davinci davinci dvevm davinci_dvevm - - -Active arm arm926ejs davinci davinci ea20 ea20 - Stefano Babic <sbabic@denx.de> -Active arm arm926ejs davinci davinci schmoogie davinci_schmoogie - - -Active arm arm926ejs davinci davinci sffsdr davinci_sffsdr - - -Active arm arm926ejs davinci davinci sonata davinci_sonata - - -Active arm arm926ejs davinci enbw enbw_cmc enbw_cmc - Heiko Schocher <hs@denx.de> -Active arm arm926ejs davinci omicron calimain calimain - Manfred Rudigier <manfred.rudigier@omicron.at>:Christian Riesch <christian.riesch@omicron.at> -Active arm arm926ejs kirkwood buffalo lsxl lschlv2 lsxl:LSCHLV2 Michael Walle <michael@walle.cc> -Active arm arm926ejs kirkwood buffalo lsxl lsxhl lsxl:LSXHL Michael Walle <michael@walle.cc> -Active arm arm926ejs kirkwood cloudengines pogo_e02 pogo_e02 - Dave Purdy <david.c.purdy@gmail.com> -Active arm arm926ejs kirkwood d-link dns325 dns325 - Stefan Herbrechtsmeier <stefan@code.herbrechtsmeier.net> -Active arm arm926ejs kirkwood iomega iconnect iconnect - Luka Perkov <luka@openwrt.org> -Active arm arm926ejs kirkwood karo tk71 tk71 - - -Active arm arm926ejs kirkwood keymile km_arm km_kirkwood km_kirkwood:KM_KIRKWOOD Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm km_kirkwood_128m16 km_kirkwood:KM_KIRKWOOD_128M16 Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm km_kirkwood_pci km_kirkwood:KM_KIRKWOOD_PCI Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm kmcoge5un km_kirkwood:KM_COGE5UN Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm kmnusa km_kirkwood:KM_NUSA Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm kmsugp1 km_kirkwood:KM_SUGP1 Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm kmsuv31 km_kirkwood:KM_SUV31 Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm mgcoge3un km_kirkwood:KM_MGCOGE3UN Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood keymile km_arm portl2 km_kirkwood:KM_PORTL2 Valentin Longchamp <valentin.longchamp@keymile.com> -Active arm arm926ejs kirkwood LaCie net2big_v2 d2net_v2 lacie_kw:D2NET_V2 - -Active arm arm926ejs kirkwood LaCie net2big_v2 net2big_v2 lacie_kw:NET2BIG_V2 Simon Guinot <simon.guinot@sequanux.org> -Active arm arm926ejs kirkwood LaCie netspace_v2 inetspace_v2 lacie_kw:INETSPACE_V2 Simon Guinot <simon.guinot@sequanux.org> -Active arm arm926ejs kirkwood LaCie netspace_v2 netspace_lite_v2 lacie_kw:NETSPACE_LITE_V2 - -Active arm arm926ejs kirkwood LaCie netspace_v2 netspace_max_v2 lacie_kw:NETSPACE_MAX_V2 Simon Guinot <simon.guinot@sequanux.org> -Active arm arm926ejs kirkwood LaCie netspace_v2 netspace_mini_v2 lacie_kw:NETSPACE_MINI_V2 - -Active arm arm926ejs kirkwood LaCie netspace_v2 netspace_v2 lacie_kw:NETSPACE_V2 Simon Guinot <simon.guinot@sequanux.org> -Active arm arm926ejs kirkwood LaCie wireless_space wireless_space - - -Active arm arm926ejs kirkwood Marvell dreamplug dreamplug - Jason Cooper <u-boot@lakedaemon.net> -Active arm arm926ejs kirkwood Marvell guruplug guruplug - Siddarth Gore <gores@marvell.com> -Active arm arm926ejs kirkwood Marvell mv88f6281gtw_ge mv88f6281gtw_ge - Prafulla Wadaskar <prafulla@marvell.com> -Active arm arm926ejs kirkwood Marvell openrd openrd_base openrd:BOARD_IS_OPENRD_BASE Prafulla Wadaskar <prafulla@marvell.com> -Active arm arm926ejs kirkwood Marvell openrd openrd_client openrd:BOARD_IS_OPENRD_CLIENT - -Active arm arm926ejs kirkwood Marvell openrd openrd_ultimate openrd:BOARD_IS_OPENRD_ULTIMATE - -Active arm arm926ejs kirkwood Marvell rd6281a rd6281a - Prafulla Wadaskar <prafulla@marvell.com> -Active arm arm926ejs kirkwood Marvell sheevaplug sheevaplug - Prafulla Wadaskar <prafulla@marvell.com> -Active arm arm926ejs kirkwood raidsonic ib62x0 ib62x0 - Luka Perkov <luka@openwrt.org> -Active arm arm926ejs kirkwood Seagate dockstar dockstar - Eric Cooper <ecc@cmu.edu> -Active arm arm926ejs kirkwood Seagate goflexhome goflexhome - Suriyan Ramasami <suriyan.r@gmail.com> -Active arm arm926ejs lpc32xx timll devkit3250 devkit3250 - Vladimir Zapolskiy <vz@mleia.com> -Active arm arm926ejs mb86r0x syteco jadecpu jadecpu - Matthias Weisser <weisserm@arcor.de> -Active arm arm926ejs mx25 freescale mx25pdk mx25pdk mx25pdk:IMX_CONFIG=board/freescale/mx25pdk/imximage.cfg Fabio Estevam <fabio.estevam@freescale.com> -Active arm arm926ejs mx25 karo tx25 tx25 - John Rigby <jcrigby@gmail.com> -Active arm arm926ejs mx25 syteco zmx25 zmx25 - Matthias Weisser <weisserm@arcor.de> -Active arm arm926ejs mx27 armadeus apf27 apf27 - Philippe Reynes <tremyfr@yahoo.fr>:Eric Jarrige <eric.jarrige@armadeus.org> -Active arm arm926ejs mx27 logicpd imx27lite imx27lite - Wolfgang Denk <wd@denx.de> -Active arm arm926ejs mx27 logicpd imx27lite magnesium - Heiko Schocher <hs@denx.de> -Active arm arm926ejs mxs bluegiga apx4devkit apx4devkit - Lauri Hintsala <lauri.hintsala@bluegiga.com> -Active arm arm926ejs mxs creative xfi3 xfi3 - Marek Vasut <marek.vasut@gmail.com> -Active arm arm926ejs mxs denx m28evk m28evk - Marek Vasut <marek.vasut@gmail.com> -Active arm arm926ejs mxs freescale mx23evk mx23evk - Otavio Salvador <otavio@ossystems.com.br> -Active arm arm926ejs mxs freescale mx28evk mx28evk mx28evk:ENV_IS_IN_MMC Fabio Estevam <fabio.estevam@freescale.com> -Active arm arm926ejs mxs freescale mx28evk mx28evk_auart_console mx28evk:MXS_AUART,MXS_AUART_BASE=MXS_UARTAPP3_BASE,ENV_IS_IN_MMC Fabio Estevam <fabio.estevam@freescale.com> -Active arm arm926ejs mxs freescale mx28evk mx28evk_nand mx28evk:ENV_IS_IN_NAND Fabio Estevam <fabio.estevam@freescale.com> -Active arm arm926ejs mxs freescale mx28evk mx28evk_spi mx28evk:ENV_IS_IN_SPI_FLASH Fabio Estevam <fabio.estevam@freescale.com> -Active arm arm926ejs mxs olimex mx23_olinuxino mx23_olinuxino - Marek Vasut <marek.vasut@gmail.com> -Active arm arm926ejs mxs ppcag bg0900 bg0900 - Marek Vasut <marex@denx.de> -Active arm arm926ejs mxs sandisk sansa_fuze_plus sansa_fuze_plus - Marek Vasut <marek.vasut@gmail.com> -Active arm arm926ejs mxs schulercontrol sc_sps_1 sc_sps_1 - Marek Vasut <marek.vasut@gmail.com> -Active arm arm926ejs nomadik st nhk8815 nhk8815 - Nomadik Linux Team <STN_WMM_nomadik_linux@list.st.com>:Alessandro Rubini <rubini@unipv.it> -Active arm arm926ejs nomadik st nhk8815 nhk8815_onenand nhk8815:BOOT_ONENAND Nomadik Linux Team <STN_WMM_nomadik_linux@list.st.com>:Alessandro Rubini <rubini@unipv.it> -Active arm arm926ejs omap ti omap5912osk omap5912osk - Rishi Bhattacharya <rishi@ti.com> -Active arm arm926ejs orion5x LaCie edminiv2 edminiv2 - Albert ARIBAUD <albert.u.boot@aribaud.net> -Active arm arm926ejs pantheon Marvell dkb dkb - Lei Wen <leiwen@marvell.com> -Active arm arm926ejs spear spear spear300 spear300 spear3xx_evb:spear300 Vipin Kumar <vipin.kumar@st.com> -Active arm arm926ejs spear spear spear300 spear300_nand spear3xx_evb:spear300,nand - -Active arm arm926ejs spear spear spear300 spear300_usbtty spear3xx_evb:spear300,usbtty - -Active arm arm926ejs spear spear spear300 spear300_usbtty_nand spear3xx_evb:spear300,usbtty,nand - -Active arm arm926ejs spear spear spear310 spear310 spear3xx_evb:spear310 Vipin Kumar <vipin.kumar@st.com> -Active arm arm926ejs spear spear spear310 spear310_nand spear3xx_evb:spear310,nand - -Active arm arm926ejs spear spear spear310 spear310_pnor spear3xx_evb:spear310,FLASH_PNOR - -Active arm arm926ejs spear spear spear310 spear310_usbtty spear3xx_evb:spear310,usbtty - -Active arm arm926ejs spear spear spear310 spear310_usbtty_nand spear3xx_evb:spear310,usbtty,nand - -Active arm arm926ejs spear spear spear310 spear310_usbtty_pnor spear3xx_evb:spear310,usbtty,FLASH_PNOR - -Active arm arm926ejs spear spear spear320 spear320 spear3xx_evb:spear320 Vipin Kumar <vipin.kumar@st.com> -Active arm arm926ejs spear spear spear320 spear320_nand spear3xx_evb:spear320,nand - -Active arm arm926ejs spear spear spear320 spear320_pnor spear3xx_evb:spear320,FLASH_PNOR - -Active arm arm926ejs spear spear spear320 spear320_usbtty spear3xx_evb:spear320,usbtty - -Active arm arm926ejs spear spear spear320 spear320_usbtty_nand spear3xx_evb:spear320,usbtty,nand - -Active arm arm926ejs spear spear spear320 spear320_usbtty_pnor spear3xx_evb:spear320,usbtty,FLASH_PNOR - -Active arm arm926ejs spear spear spear600 spear600 spear6xx_evb:spear600 Vipin Kumar <vipin.kumar@st.com> -Active arm arm926ejs spear spear spear600 spear600_nand spear6xx_evb:spear600,nand - -Active arm arm926ejs spear spear spear600 spear600_usbtty spear6xx_evb:spear600,usbtty - -Active arm arm926ejs spear spear spear600 spear600_usbtty_nand spear6xx_evb:spear600,usbtty,nand - -Active arm arm926ejs spear spear x600 x600 - Stefan Roese <sr@denx.de> -Active arm arm926ejs versatile armltd versatile versatileab versatile:ARCH_VERSATILE_AB - -Active arm arm926ejs versatile armltd versatile versatilepb versatile:ARCH_VERSATILE_PB - -Active arm arm926ejs versatile armltd versatile versatileqemu versatile:ARCH_VERSATILE_QEMU,ARCH_VERSATILE_PB - -Active arm arm946es - armltd integrator integratorap_cm946es integratorap:CM946ES Linus Walleij <linus.walleij@linaro.org> -Active arm arm946es - armltd integrator integratorcp_cm946es integratorcp:CM946ES Linus Walleij <linus.walleij@linaro.org> -Active arm armv7 - armltd vexpress vexpress_ca15_tc2 - - -Active arm armv7 - armltd vexpress vexpress_ca5x2 - Matt Waddel <matt.waddel@linaro.org> -Active arm armv7 - armltd vexpress vexpress_ca9x4 - Matt Waddel <matt.waddel@linaro.org> -Active arm armv7 am33xx BuR kwb kwb kwb:SERIAL1,CONS_INDEX=1 Hannes Petermaier <hannes.petermaier@br-automation.com> -Active arm armv7 am33xx BuR tseries tseries_mmc tseries:SERIAL1,CONS_INDEX=1,EMMC_BOOT Hannes Petermaier <hannes.petermaier@br-automation.com> -Active arm armv7 am33xx BuR tseries tseries_nand tseries:SERIAL1,CONS_INDEX=1,NAND Hannes Petermaier <hannes.petermaier@br-automation.com> -Active arm armv7 am33xx BuR tseries tseries_spi tseries:SERIAL1,CONS_INDEX=1,SPI_BOOT,EMMC_BOOT Hannes Petermaier <hannes.petermaier@br-automation.com> -Active arm armv7 am33xx compulab cm_t335 cm_t335 - Igor Grinberg <grinberg@compulab.co.il> -Active arm armv7 am33xx gumstix pepper pepper - Ash Charles <ash@gumstix.com> -Active arm armv7 am33xx isee igep0033 am335x_igep0033 - Enric Balletbo i Serra <eballetbo@iseebcn.com> -Active arm armv7 am33xx phytec pcm051 pcm051_rev1 pcm051:REV1 Lars Poeschel <poeschel@lemonage.de> -Active arm armv7 am33xx phytec pcm051 pcm051_rev3 pcm051:REV3 Lars Poeschel <poeschel@lemonage.de> -Active arm armv7 am33xx siemens draco draco - Roger Meier <r.meier@siemens.com> -Active arm armv7 am33xx siemens draco dxr2 - Roger Meier <r.meier@siemens.com> -Active arm armv7 am33xx siemens pxm2 pxm2 - Roger Meier <r.meier@siemens.com> -Active arm armv7 am33xx siemens rut rut - Roger Meier <r.meier@siemens.com> -Active arm armv7 am33xx silica pengwyn pengwyn - Lothar Felten <lothar.felten@gmail.com> -Active arm armv7 am33xx ti am335x am335x_boneblack am335x_evm:SERIAL1,CONS_INDEX=1,EMMC_BOOT Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_boneblack_vboot am335x_evm:SERIAL1,CONS_INDEX=1,EMMC_BOOT,ENABLE_VBOOT Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm am335x_evm:SERIAL1,CONS_INDEX=1,NAND Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_nor am335x_evm:SERIAL1,CONS_INDEX=1,NAND,NOR Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_norboot am335x_evm:SERIAL1,CONS_INDEX=1,NOR,NOR_BOOT Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_spiboot am335x_evm:SERIAL1,CONS_INDEX=1,SPI_BOOT Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_uart1 am335x_evm:SERIAL2,CONS_INDEX=2,NAND Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_uart2 am335x_evm:SERIAL3,CONS_INDEX=3,NAND Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_uart3 am335x_evm:SERIAL4,CONS_INDEX=4,NAND Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_uart4 am335x_evm:SERIAL5,CONS_INDEX=5,NAND Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_uart5 am335x_evm:SERIAL6,CONS_INDEX=6,NAND Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am335x am335x_evm_usbspl am335x_evm:SERIAL1,CONS_INDEX=1,NAND,SPL_USBETH_SUPPORT Tom Rini <trini@ti.com> -Active arm armv7 am33xx ti am43xx am43xx_evm am43xx_evm:SERIAL1,CONS_INDEX=1 Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 am33xx ti am43xx am43xx_evm_qspiboot am43xx_evm:SERIAL1,CONS_INDEX=1,QSPI,QSPI_BOOT Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 am33xx ti ti814x ti814x_evm - Matt Porter <matt.porter@linaro.org> -Active arm armv7 am33xx ti ti816x ti816x_evm - - -Active arm armv7 at91 atmel sama5d3_xplained sama5d3_xplained_mmc sama5d3_xplained:SAMA5D3,SYS_USE_MMC Bo Shen <voice.shen@atmel.com> -Active arm armv7 at91 atmel sama5d3_xplained sama5d3_xplained_nandflash sama5d3_xplained:SAMA5D3,SYS_USE_NANDFLASH Bo Shen <voice.shen@atmel.com> -Active arm armv7 at91 atmel sama5d3xek sama5d3xek_mmc sama5d3xek:SAMA5D3,SYS_USE_MMC Bo Shen <voice.shen@atmel.com> -Active arm armv7 at91 atmel sama5d3xek sama5d3xek_nandflash sama5d3xek:SAMA5D3,SYS_USE_NANDFLASH Bo Shen <voice.shen@atmel.com> -Active arm armv7 at91 atmel sama5d3xek sama5d3xek_spiflash sama5d3xek:SAMA5D3,SYS_USE_SERIALFLASH Bo Shen <voice.shen@atmel.com> -Active arm armv7 bcm281xx broadcom bcm28155_ap bcm28155_ap bcm28155_ap Tim Kryger <tim.kryger@linaro.org> -Active arm armv7 exynos samsung arndale arndale - Inderpal Singh <inderpal.singh@linaro.org> -Active arm armv7 exynos samsung origen origen - Chander Kashyap <k.chander@samsung.com> -Active arm armv7 exynos samsung smdk5250 smdk5250 - Chander Kashyap <k.chander@samsung.com> -Active arm armv7 exynos samsung smdk5250 snow - Rajeshwari Shinde <rajeshwari.s@samsung.com> -Active arm armv7 exynos samsung smdk5420 peach-pit - Akshay Saraswat <akshay.s@samsung.com> -Active arm armv7 exynos samsung smdk5420 smdk5420 - Rajeshwari Shinde <rajeshwari.s@samsung.com> -Active arm armv7 exynos samsung smdkv310 smdkv310 - Chander Kashyap <k.chander@samsung.com> -Active arm armv7 exynos samsung trats trats - Lukasz Majewski <l.majewski@samsung.com> -Active arm armv7 exynos samsung trats2 trats2 - Piotr Wilczek <p.wilczek@samsung.com> -Active arm armv7 exynos samsung universal_c210 s5pc210_universal - Przemyslaw Marczak <p.marczak@samsung.com> -Active arm armv7 highbank - highbank highbank - Rob Herring <robh@kernel.org> -Active arm armv7 keystone ti ks2_evm k2hk_evm - Vitaly Andrianov <vitalya@ti.com> -Active arm armv7 keystone ti ks2_evm k2e_evm - Vitaly Andrianov <vitalya@ti.com> -Active arm armv7 mx5 denx m53evk m53evk m53evk:IMX_CONFIG=board/denx/m53evk/imximage.cfg Marek Vasut <marek.vasut@gmail.com> -Active arm armv7 mx5 esg ima3-mx53 ima3-mx53 ima3-mx53:IMX_CONFIG=board/esg/ima3-mx53/imximage.cfg - -Active arm armv7 mx5 freescale mx51evk mx51evk mx51evk:IMX_CONFIG=board/freescale/mx51evk/imximage.cfg Stefano Babic <sbabic@denx.de> -Active arm armv7 mx5 freescale mx53ard mx53ard mx53ard:IMX_CONFIG=board/freescale/mx53ard/imximage_dd3.cfg Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx5 freescale mx53evk mx53evk mx53evk:IMX_CONFIG=board/freescale/mx53evk/imximage.cfg Jason Liu <r64343@freescale.com> -Active arm armv7 mx5 freescale mx53loco mx53loco mx53loco:IMX_CONFIG=board/freescale/mx53loco/imximage.cfg Jason Liu <r64343@freescale.com> -Active arm armv7 mx5 freescale mx53smd mx53smd mx53smd:IMX_CONFIG=board/freescale/mx53smd/imximage.cfg Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx5 genesi mx51_efikamx mx51_efikamx mx51_efikamx:MACH_TYPE=MACH_TYPE_MX51_EFIKAMX,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_mx.cfg - -Active arm armv7 mx5 genesi mx51_efikamx mx51_efikasb mx51_efikamx:MACH_TYPE=MACH_TYPE_MX51_EFIKASB,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_sb.cfg - -Active arm armv7 mx5 ttcontrol vision2 vision2 vision2:IMX_CONFIG=board/ttcontrol/vision2/imximage_hynix.cfg Stefano Babic <sbabic@denx.de> -Active arm armv7 mx6 - aristainetos aristainetos aristainetos:IMX_CONFIG=board/aristainetos/aristainetos.cfg,MX6DL Heiko Schocher <hs@denx.de> -Active arm armv7 mx6 - udoo udoo_quad udoo:IMX_CONFIG=board/udoo/udoo.cfg,MX6Q,DDR_MB=1024 Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 - wandboard wandboard_dl wandboard:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,MX6DL,DDR_MB=1024 Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 - wandboard wandboard_quad wandboard:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q2g.cfg,MX6Q,DDR_MB=2048 Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 - wandboard wandboard_solo wandboard:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s.cfg,MX6S,DDR_MB=512 Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 barco titanium titanium titanium:IMX_CONFIG=board/barco/titanium/imximage.cfg Stefan Roese <sr@denx.de> -Active arm armv7 mx6 boundary nitrogen6x mx6qsabrelite nitrogen6x:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024,SABRELITE Eric Nelson <eric.nelson@boundarydevices.com> -Active arm armv7 mx6 boundary nitrogen6x nitrogen6dl nitrogen6x:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,MX6DL,DDR_MB=1024 Eric Nelson <eric.nelson@boundarydevices.com> -Active arm armv7 mx6 boundary nitrogen6x nitrogen6dl2g nitrogen6x:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl2g.cfg,MX6DL,DDR_MB=2048 Eric Nelson <eric.nelson@boundarydevices.com> -Active arm armv7 mx6 boundary nitrogen6x nitrogen6q nitrogen6x:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024 Eric Nelson <eric.nelson@boundarydevices.com> -Active arm armv7 mx6 boundary nitrogen6x nitrogen6q2g nitrogen6x:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q2g.cfg,MX6Q,DDR_MB=2048 Eric Nelson <eric.nelson@boundarydevices.com> -Active arm armv7 mx6 boundary nitrogen6x nitrogen6s nitrogen6x:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s.cfg,MX6S,DDR_MB=512 Eric Nelson <eric.nelson@boundarydevices.com> -Active arm armv7 mx6 boundary nitrogen6x nitrogen6s1g nitrogen6x:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s1g.cfg,MX6S,DDR_MB=1024 Eric Nelson <eric.nelson@boundarydevices.com> -Active arm armv7 mx6 embest mx6boards marsboard embestmx6boards:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024,ENV_IS_IN_SPI_FLASH Eric Bénard <eric@eukrea.com> -Active arm armv7 mx6 embest mx6boards riotboard embestmx6boards:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s1g.cfg,MX6S,DDR_MB=1024,ENV_IS_IN_MMC Eric Bénard <eric@eukrea.com> -Active arm armv7 mx6 freescale mx6qarm2 mx6qarm2 mx6qarm2:IMX_CONFIG=board/freescale/mx6qarm2/imximage.cfg Jason Liu <r64343@freescale.com> -Active arm armv7 mx6 freescale mx6qsabreauto mx6dlsabreauto mx6qsabreauto:IMX_CONFIG=board/freescale/mx6qsabreauto/mx6dl.cfg,MX6DL Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 freescale mx6qsabreauto mx6qsabreauto mx6qsabreauto:IMX_CONFIG=board/freescale/mx6qsabreauto/imximage.cfg,MX6Q Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 freescale mx6sabresd mx6dlsabresd mx6sabresd:IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,MX6DL Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 freescale mx6sabresd mx6qsabresd mx6sabresd:IMX_CONFIG=board/freescale/imx/ddr/mx6q_4x_mt41j128.cfg,MX6Q Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 freescale mx6slevk mx6slevk mx6slevk:IMX_CONFIG=board/freescale/mx6slevk/imximage.cfg,MX6SL Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 freescale mx6sxsabresd mx6sxsabresd mx6sxsabresd:IMX_CONFIG=board/freescale/mx6sxsabresd/imximage.cfg,MX6SX Fabio Estevam <fabio.estevam@freescale.com> -Active arm armv7 mx6 gateworks gw_ventana gwventana gw_ventana:IMX_CONFIG=board/gateworks/gw_ventana/gw_ventana.cfg,MX6QDL,SPL Tim Harvey <tharvey@gateworks.com> -Active arm armv7 mx6 solidrun hummingboard hummingboard_solo hummingboard:IMX_CONFIG=board/solidrun/hummingboard/solo.cfg,MX6S,DDR_MB=512 Jon Nettleton <jon.nettleton@gmail.com> -Active arm armv7 mx6 tqc tqma6 tqma6q_mba6_mmc tqma6:IMX_CONFIG=board/tqc/tqma6/tqma6q.cfg,MX6Q,MBA6,TQMA6X_MMC_BOOT Markus Niebel <Markus.Niebel@tq-group.com> -Active arm armv7 mx6 tqc tqma6 tqma6q_mba6_spi tqma6:IMX_CONFIG=board/tqc/tqma6/tqma6q.cfg,MX6Q,MBA6,TQMA6X_SPI_BOOT Markus Niebel <Markus.Niebel@tq-group.com> -Active arm armv7 mx6 tqc tqma6 tqma6s_mba6_mmc tqma6:IMX_CONFIG=board/tqc/tqma6/tqma6s.cfg,MX6S,MBA6,TQMA6X_MMC_BOOT Markus Niebel <Markus.Niebel@tq-group.com> -Active arm armv7 mx6 tqc tqma6 tqma6s_mba6_spi tqma6:IMX_CONFIG=board/tqc/tqma6/tqma6s.cfg,MX6S,MBA6,TQMA6X_SPI_BOOT Markus Niebel <Markus.Niebel@tq-group.com> -Active arm armv7 omap3 - overo omap3_overo - Steve Sakoman <sakoman@gmail.com> -Active arm armv7 omap3 - pandora omap3_pandora - Grazvydas Ignotas <notasas@gmail.com> -Active arm armv7 omap3 8dtech eco5pk eco5pk - Raphael Assenat <raph@8d.com> -Active arm armv7 omap3 comelit dig297 dig297 - Luca Ceresoli <luca.ceresoli@comelit.it> -Active arm armv7 omap3 compulab cm_t35 cm_t35 - Igor Grinberg <grinberg@compulab.co.il> -Active arm armv7 omap3 corscience tricorder tricorder - Thomas Weber <weber@corscience.de> -Active arm armv7 omap3 corscience tricorder tricorder_flash tricorder:FLASHCARD Thomas Weber <weber@corscience.de> -Active arm armv7 omap3 htkw mcx mcx - Ilya Yanok <yanok@emcraft.com> -Active arm armv7 omap3 isee igep00x0 igep0020 omap3_igep00x0:MACH_TYPE=MACH_TYPE_IGEP0020,BOOT_ONENAND Enric Balletbo i Serra <eballetbo@iseebcn.com> -Active arm armv7 omap3 isee igep00x0 igep0020_nand omap3_igep00x0:MACH_TYPE=MACH_TYPE_IGEP0020,BOOT_NAND - -Active arm armv7 omap3 isee igep00x0 igep0030 omap3_igep00x0:MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_ONENAND Enric Balletbo i Serra <eballetbo@iseebcn.com> -Active arm armv7 omap3 isee igep00x0 igep0030_nand omap3_igep00x0:MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_NAND - -Active arm armv7 omap3 isee igep00x0 igep0032 omap3_igep00x0:MACH_TYPE=MACH_TYPE_IGEP0032,BOOT_ONENAND Enric Balletbo i Serra <eballetbo@iseebcn.com> -Active arm armv7 omap3 logicpd am3517evm am3517_evm - Vaibhav Hiremath <hvaibhav@ti.com> -Active arm armv7 omap3 logicpd omap3som omap3_logic - Peter Barada <peter.barada@logicpd.com> -Active arm armv7 omap3 logicpd zoom1 omap3_zoom1 - Nishanth Menon <nm@ti.com> -Active arm armv7 omap3 matrix_vision mvblx omap3_mvblx - Michael Jones <michael.jones@matrix-vision.de> -Active arm armv7 omap3 nokia rx51 nokia_rx51 - Pali Rohár <pali.rohar@gmail.com> -Active arm armv7 omap3 technexion tao3530 omap3_ha tao3530:SYS_BOARD_OMAP3_HA Stefan Roese <sr@denx.de> -Active arm armv7 omap3 technexion tao3530 tao3530 - Tapani Utriainen <linuxfae@technexion.com> -Active arm armv7 omap3 technexion twister twister - Stefano Babic <sbabic@denx.de> -Active arm armv7 omap3 teejet mt_ventoux mt_ventoux - Stefano Babic <sbabic@denx.de> -Active arm armv7 omap3 ti am3517crane am3517_crane - Nagendra T S <nagendra@mistralsolutions.com> -Active arm armv7 omap3 ti beagle omap3_beagle omap3_beagle:NAND Tom Rini <trini@ti.com> -Active arm armv7 omap3 ti evm omap3_evm - Tom Rini <trini@ti.com> -Active arm armv7 omap3 ti evm omap3_evm_quick_mmc - - -Active arm armv7 omap3 ti evm omap3_evm_quick_nand - - -Active arm armv7 omap3 ti sdp3430 omap3_sdp3430 - Nishanth Menon <nm@ti.com> -Active arm armv7 omap3 timll devkit8000 devkit8000 - Thomas Weber <weber@corscience.de> -Active arm armv7 omap4 gumstix duovero duovero - Ash Charles <ash@gumstix.com> -Active arm armv7 omap4 ti panda omap4_panda - Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 omap4 ti sdp4430 omap4_sdp4430 - Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 omap5 compulab cm_t54 cm_t54 - Dmitry Lifshitz <lifshitz@compulab.co.il> -Active arm armv7 omap5 ti dra7xx dra7xx_evm dra7xx_evm:CONS_INDEX=1 Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 omap5 ti dra7xx dra7xx_evm_qspiboot dra7xx_evm:CONS_INDEX=1,QSPI_BOOT Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 omap5 ti dra7xx dra7xx_evm_uart3 dra7xx_evm:CONS_INDEX=3,SPL_YMODEM_SUPPORT Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 omap5 ti omap5_uevm omap5_uevm - Lokesh Vutla <lokeshvutla@ti.com> -Active arm armv7 rmobile atmark-techno armadillo-800eva armadillo-800eva - Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> -Active arm armv7 rmobile kmc kzm9g kzm9g - Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>:Tetsuyuki Kobayashi <koba@kmckk.co.jp> -Active arm armv7 rmobile renesas alt alt - Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> -Active arm armv7 rmobile renesas koelsch koelsch - Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> -Active arm armv7 rmobile renesas lager lager - Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> -Active arm armv7 s5pc1xx samsung goni s5p_goni - Robert Baldyga <r.baldyga@samsung.com> -Active arm armv7 s5pc1xx samsung smdkc100 smdkc100 - Minkyu Kang <mk7.kang@samsung.com> -Active arm armv7 socfpga altera socfpga socfpga_cyclone5 - - -Active arm armv7 sunxi - sunxi A13-OLinuXinoM sun5i:A13_OLINUXINOM,SPL,CONS_INDEX=2 Hans de Goede <hdegoede@redhat.com> -Active arm armv7 sunxi - sunxi Cubieboard sun4i:CUBIEBOARD,SPL,AXP209_POWER,SUNXI_EMAC Hans de Goede <hdegoede@redhat.com> -Active arm armv7 sunxi - sunxi Cubieboard2 sun7i:CUBIEBOARD2,SPL,SUNXI_GMAC Ian Campbell <ijc@hellion.org.uk>:Hans de Goede <hdegoede@redhat.com> -Active arm armv7 sunxi - sunxi Cubieboard2_FEL sun7i:CUBIEBOARD2,SPL_FEL,SUNXI_GMAC Ian Campbell <ijc@hellion.org.uk>:Hans de Goede <hdegoede@redhat.com> -Active arm armv7 sunxi - sunxi Cubietruck sun7i:CUBIETRUCK,SPL,AXP209_POWER,SUNXI_GMAC,RGMII Ian Campbell <ijc@hellion.org.uk>:Hans de Goede <hdegoede@redhat.com> -Active arm armv7 sunxi - sunxi Cubietruck_FEL sun7i:CUBIETRUCK,SPL_FEL,AXP209_POWER,SUNXI_GMAC,RGMII Ian Campbell <ijc@hellion.org.uk>:Hans de Goede <hdegoede@redhat.com> -Active arm armv7 sunxi - sunxi r7-tv-dongle sun5i:R7DONGLE,SPL,AXP152_POWER Hans de Goede <hdegoede@redhat.com> -Active arm armv7 u8500 st-ericsson snowball snowball - Mathieu Poirier <mathieu.poirier@linaro.org> -Active arm armv7 u8500 st-ericsson u8500 u8500_href - - -Active arm armv7 vf610 freescale vf610twr vf610twr vf610twr:IMX_CONFIG=board/freescale/vf610twr/imximage.cfg Alison Wang <b18965@freescale.com> -Active arm armv7 zynq xilinx zynq zynq_microzed - Michal Simek <monstr@monstr.eu>:Jagannadha Sutradharudu Teki <jaganna@xilinx.com> -Active arm armv7 zynq xilinx zynq zynq_zc70x - Michal Simek <monstr@monstr.eu>:Jagannadha Sutradharudu Teki <jaganna@xilinx.com> -Active arm armv7 zynq xilinx zynq zynq_zc770_xm010 zynq_zc770:ZC770_XM010 Michal Simek <monstr@monstr.eu>:Jagannadha Sutradharudu Teki <jaganna@xilinx.com> -Active arm armv7 zynq xilinx zynq zynq_zc770_xm012 zynq_zc770:ZC770_XM012 Michal Simek <monstr@monstr.eu>:Jagannadha Sutradharudu Teki <jaganna@xilinx.com> -Active arm armv7 zynq xilinx zynq zynq_zc770_xm013 zynq_zc770:ZC770_XM013 Michal Simek <monstr@monstr.eu>:Jagannadha Sutradharudu Teki <jaganna@xilinx.com> -Active arm armv7 zynq xilinx zynq zynq_zed - Michal Simek <monstr@monstr.eu>:Jagannadha Sutradharudu Teki <jaganna@xilinx.com> -Active arm armv7:arm720t tegra114 nvidia dalmore dalmore - Tom Warren <twarren@nvidia.com> -Active arm armv7:arm720t tegra124 nvidia jetson-tk1 jetson-tk1 jetson-tk1:BOARD_JETSON_TK1= Stephen Warren <swarren@nvidia.com> -Active arm armv7:arm720t tegra124 nvidia venice2 venice2 - Tom Warren <twarren@nvidia.com> -Active arm armv7:arm720t tegra20 avionic-design medcom-wide medcom-wide - Alban Bedel <alban.bedel@avionic-design.de> -Active arm armv7:arm720t tegra20 avionic-design plutux plutux - Alban Bedel <alban.bedel@avionic-design.de> -Active arm armv7:arm720t tegra20 avionic-design tec tec - Alban Bedel <alban.bedel@avionic-design.de> -Active arm armv7:arm720t tegra20 compal paz00 paz00 - Tom Warren <twarren@nvidia.com>:Stephen Warren <swarren@nvidia.com> -Active arm armv7:arm720t tegra20 compulab trimslice trimslice - Tom Warren <twarren@nvidia.com>:Stephen Warren <swarren@nvidia.com> -Active arm armv7:arm720t tegra20 nvidia harmony harmony - Tom Warren <twarren@nvidia.com> -Active arm armv7:arm720t tegra20 nvidia seaboard seaboard - Tom Warren <twarren@nvidia.com> -Active arm armv7:arm720t tegra20 nvidia ventana ventana - Tom Warren <twarren@nvidia.com>:Stephen Warren <swarren@nvidia.com> -Active arm armv7:arm720t tegra20 nvidia whistler whistler - Tom Warren <twarren@nvidia.com>:Stephen Warren <swarren@nvidia.com> -Active arm armv7:arm720t tegra20 toradex colibri_t20_iris colibri_t20_iris - Lucas Stach <dev@lynxeye.de> -Active arm armv7:arm720t tegra30 avionic-design tec-ng tec-ng - Alban Bedel <alban.bedel@avionic-design.de> -Active arm armv7:arm720t tegra30 nvidia beaver beaver - Tom Warren <twarren@nvidia.com>:Stephen Warren <swarren@nvidia.com> -Active arm armv7:arm720t tegra30 nvidia cardhu cardhu - Tom Warren <twarren@nvidia.com> -Active arm pxa - - balloon3 balloon3 - Marek Vasut <marek.vasut@gmail.com> -Active arm pxa - - h2200 h2200 - Lukasz Dalek <luk0104@gmail.com> -Active arm pxa - - palmld palmld - Marek Vasut <marek.vasut@gmail.com> -Active arm pxa - - palmtc palmtc - Marek Vasut <marek.vasut@gmail.com> -Active arm pxa - - pxa255_idp pxa255_idp - Cliff Brake <cliff.brake@gmail.com> -Active arm pxa - - trizepsiv polaris trizepsiv:POLARIS Stefano Babic <sbabic@denx.de> -Active arm pxa - - trizepsiv trizepsiv - Stefano Babic <sbabic@denx.de> -Active arm pxa - - vpac270 vpac270_nor_128 vpac270:NOR,RAM_128M Marek Vasut <marek.vasut@gmail.com> -Active arm pxa - - vpac270 vpac270_nor_256 vpac270:NOR,RAM_256M Marek Vasut <marek.vasut@gmail.com> -Active arm pxa - - vpac270 vpac270_ond_256 vpac270:ONENAND,RAM_256M Marek Vasut <marek.vasut@gmail.com> -Active arm pxa - - xaeniax xaeniax - - -Active arm pxa - - zipitz2 zipitz2 - Marek Vasut <marek.vasut@gmail.com> -Active arm pxa - icpdas lp8x4x lp8x4x - Sergey Yanovich <ynvich@gmail.com> -Active arm pxa - toradex colibri_pxa270 colibri_pxa270 - Marek Vasut <marek.vasut@gmail.com> -Active arm sa1100 - - jornada jornada - Kristoffer Ericson <kristoffer.ericson@gmail.com> -Active avr32 - at32ap700x atmel atngw100mkii atngw100mkii - Andreas Bießmann <andreas.devel@googlemail.com> -Active avr32 - at32ap700x in-circuit grasshopper grasshopper - Andreas Bießmann <andreas.devel@googlemail.com> -Active avr32 - at32ap700x mimc mimc200 mimc200 - Mark Jackson <mpfj@mimc.co.uk> -Active avr32 - at32ap700x miromico hammerhead hammerhead - Alex Raimondi <alex.raimondi@miromico.ch> -Active blackfin - - - bct-brettl2 bct-brettl2 - Peter Meerwald <devel@bct-electronic.com> -Active blackfin - - - bf506f-ezkit bf506f-ezkit - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf518f-ezbrd bf518f-ezbrd - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf525-ucr2 bf525-ucr2 - Haitao Zhang <hzhang@ucrobotics.com>:Chong Huang <chuang@ucrobotics.com> -Active blackfin - - - bf526-ezbrd bf526-ezbrd - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf527-ad7160-eval bf527-ad7160-eval - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf527-ezkit bf527-ezkit - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf527-ezkit bf527-ezkit-v2 bf527-ezkit:BF527_EZKIT_REV_2_1 Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf527-sdp bf527-sdp - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf533-ezkit bf533-ezkit - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf533-stamp bf533-stamp - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf537-minotaur bf537-minotaur - Martin Strubel <strubel@section5.ch> -Active blackfin - - - bf537-pnav bf537-pnav - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf537-srv1 bf537-srv1 - Martin Strubel <strubel@section5.ch> -Active blackfin - - - bf537-stamp bf537-stamp - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf538f-ezkit bf538f-ezkit - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf548-ezkit bf548-ezkit - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf561-acvilon bf561-acvilon - Valentin Yakovenkov <yakovenkov@niistt.ru> -Active blackfin - - - bf561-ezkit bf561-ezkit - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - bf609-ezkit bf609-ezkit - Sonic Zhang <sonic.adi@gmail.com> -Active blackfin - - - blackstamp blackstamp - Wojtek Skulski <skulski@pas.rochester.edu>:Wojtek Skulski <info@skutek.com>:Benjamin Matthews <mben12@gmail.com> -Active blackfin - - - blackvme blackvme - Wojtek Skulski <skulski@pas.rochester.edu>:Wojtek Skulski <info@skutek.com>:Benjamin Matthews <mben12@gmail.com> -Active blackfin - - - br4 br4 - Dimitar Penev <dpn@switchfin.org> -Active blackfin - - - dnp5370 dnp5370 - M.Hasewinkel (MHA) <info@ssv-embedded.de> -Active blackfin - - - ibf-dsp561 ibf-dsp561 - I-SYST Micromodule <support@i-syst.com> -Active blackfin - - - pr1 pr1 - Dimitar Penev <dpn@switchfin.org> -Active m68k mcf5227x - freescale m52277evb M52277EVB M52277EVB:SYS_SPANSION_BOOT,SYS_TEXT_BASE=0x00000000 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf5227x - freescale m52277evb M52277EVB_stmicro M52277EVB:CF_SBF,SYS_STMICRO_BOOT,SYS_TEXT_BASE=0x43E00000 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf523x - freescale m5235evb M5235EVB M5235EVB:SYS_TEXT_BASE=0xFFE00000 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf523x - freescale m5235evb M5235EVB_Flash32 M5235EVB:NORFLASH_PS32BIT,SYS_TEXT_BASE=0xFFC00000 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf52x2 - - cobra5272 cobra5272 - - -Active m68k mcf52x2 - BuS eb_cpu5282 eb_cpu5282 eb_cpu5282:SYS_TEXT_BASE=0xFF000000,SYS_MONITOR_BASE=0xFF000400 Jens Scharsig <esw@bus-elektronik.de> -Active m68k mcf52x2 - BuS eb_cpu5282 eb_cpu5282_internal eb_cpu5282:SYS_TEXT_BASE=0xF0000000,SYS_MONITOR_BASE=0xF0000418 Jens Scharsig <esw@bus-elektronik.de> -Active m68k mcf52x2 - esd tasreg TASREG - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active m68k mcf52x2 - freescale m5208evbe M5208EVBE - - -Active m68k mcf52x2 - freescale m5249evb M5249EVB - - -Active m68k mcf52x2 - freescale m5253demo M5253DEMO - TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf52x2 - freescale m5272c3 M5272C3 - - -Active m68k mcf52x2 - freescale m5275evb M5275EVB - - -Active m68k mcf52x2 - freescale m5282evb M5282EVB - - -Active m68k mcf532x - astro mcf5373l astro_mcf5373l - Wolfgang Wegner <w.wegner@astro-kom.de> -Active m68k mcf532x - freescale m53017evb M53017EVB - TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf532x - freescale m5329evb M5329AFEE M5329EVB:NANDFLASH_SIZE=0 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf532x - freescale m5329evb M5329BFEE M5329EVB:NANDFLASH_SIZE=16 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf532x - freescale m5373evb M5373EVB M5373EVB:NANDFLASH_SIZE=16 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf5445x - freescale m54418twr M54418TWR M54418TWR:CF_SBF,SYS_SERIAL_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000 - -Active m68k mcf5445x - freescale m54418twr M54418TWR_nand_mii M54418TWR:SYS_NAND_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=25000000 - -Active m68k mcf5445x - freescale m54418twr M54418TWR_nand_rmii M54418TWR:SYS_NAND_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000 - -Active m68k mcf5445x - freescale m54418twr M54418TWR_nand_rmii_lowfreq M54418TWR:SYS_NAND_BOOT,LOW_MCFCLK,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000 - -Active m68k mcf5445x - freescale m54418twr M54418TWR_serial_mii M54418TWR:CF_SBF,SYS_SERIAL_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=25000000 - -Active m68k mcf5445x - freescale m54418twr M54418TWR_serial_rmii M54418TWR:CF_SBF,SYS_SERIAL_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000 - -Active m68k mcf5445x - freescale m54451evb M54451EVB M54451EVB:SYS_TEXT_BASE=0x00000000,SYS_INPUT_CLKSRC=24000000 - -Active m68k mcf5445x - freescale m54451evb M54451EVB_stmicro M54451EVB:CF_SBF,SYS_STMICRO_BOOT,SYS_TEXT_BASE=0x47e00000,SYS_INPUT_CLKSRC=24000000 - -Active m68k mcf5445x - freescale m54455evb M54455EVB M54455EVB:SYS_ATMEL_BOOT,SYS_TEXT_BASE=0x04000000,SYS_INPUT_CLKSRC=33333333 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf5445x - freescale m54455evb M54455EVB_a66 M54455EVB:SYS_ATMEL_BOOT,SYS_TEXT_BASE=0x04000000,SYS_INPUT_CLKSRC=66666666 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf5445x - freescale m54455evb M54455EVB_i66 M54455EVB:SYS_INTEL_BOOT,SYS_TEXT_BASE=0x00000000,SYS_INPUT_CLKSRC=66666666 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf5445x - freescale m54455evb M54455EVB_intel M54455EVB:SYS_INTEL_BOOT,SYS_TEXT_BASE=0x00000000,SYS_INPUT_CLKSRC=33333333 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf5445x - freescale m54455evb M54455EVB_stm33 M54455EVB:SYS_STMICRO_BOOT,CF_SBF,SYS_TEXT_BASE=0x4FE00000,SYS_INPUT_CLKSRC=33333333 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m547xevb M5475AFE M5475EVB:SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m547xevb M5475BFE M5475EVB:SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m547xevb M5475CFE M5475EVB:SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16,SYS_VIDEO,SYS_USBCTRL TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m547xevb M5475DFE M5475EVB:SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_USBCTRL TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m547xevb M5475EFE M5475EVB:SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_VIDEO,SYS_USBCTRL TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m547xevb M5475FFE M5475EVB:SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=32,SYS_VIDEO,SYS_USBCTRL,SYS_DRAMSZ1=64 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m547xevb M5475GFE M5475EVB:SYS_BUSCLK=133333333,SYS_BOOTSZ=4,SYS_DRAMSZ=64 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485AFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485BFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485CFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16,SYS_VIDEO,SYS_USBCTRL TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485DFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_USBCTRL TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485EFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_VIDEO,SYS_USBCTRL TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485FFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=32,SYS_VIDEO,SYS_USBCTRL,SYS_DRAMSZ1=64 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485GFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=4,SYS_DRAMSZ=64 TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active m68k mcf547x_8x - freescale m548xevb M5485HFE M5485EVB:SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16,SYS_VIDEO TsiChung Liew <Tsi-Chung.Liew@freescale.com> -Active microblaze - - xilinx microblaze-generic microblaze-generic - Michal Simek <monstr@monstr.eu> -Active mips mips32 - - qemu-mips qemu_mips qemu-mips:SYS_BIG_ENDIAN Vlad Lungu <vlad.lungu@windriver.com> -Active mips mips32 - - qemu-mips qemu_mipsel qemu-mips:SYS_LITTLE_ENDIAN - -Active mips mips32 - imgtec malta malta malta:SYS_BIG_ENDIAN Paul Burton <paul.burton@imgtec.com> -Active mips mips32 - imgtec malta maltael malta:SYS_LITTLE_ENDIAN Paul Burton <paul.burton@imgtec.com> -Active mips mips32 - micronas vct vct_platinum vct:VCT_PLATINUM - -Active mips mips32 - micronas vct vct_platinum_onenand vct:VCT_PLATINUM,VCT_ONENAND - -Active mips mips32 - micronas vct vct_platinum_onenand_small vct:VCT_PLATINUM,VCT_ONENAND,VCT_SMALL_IMAGE - -Active mips mips32 - micronas vct vct_platinum_small vct:VCT_PLATINUM,VCT_SMALL_IMAGE - -Active mips mips32 - micronas vct vct_platinumavc vct:VCT_PLATINUMAVC - -Active mips mips32 - micronas vct vct_platinumavc_onenand vct:VCT_PLATINUMAVC,VCT_ONENAND - -Active mips mips32 - micronas vct vct_platinumavc_onenand_small vct:VCT_PLATINUMAVC,VCT_ONENAND,VCT_SMALL_IMAGE - -Active mips mips32 - micronas vct vct_platinumavc_small vct:VCT_PLATINUMAVC,VCT_SMALL_IMAGE - -Active mips mips32 - micronas vct vct_premium vct:VCT_PREMIUM - -Active mips mips32 - micronas vct vct_premium_onenand vct:VCT_PREMIUM,VCT_ONENAND - -Active mips mips32 - micronas vct vct_premium_onenand_small vct:VCT_PREMIUM,VCT_ONENAND,VCT_SMALL_IMAGE - -Active mips mips32 - micronas vct vct_premium_small vct:VCT_PREMIUM,VCT_SMALL_IMAGE - -Active mips mips32 au1x00 - dbau1x00 dbau1000 dbau1x00:DBAU1000 Thomas Lange <thomas@corelatus.se> -Active mips mips32 au1x00 - dbau1x00 dbau1100 dbau1x00:DBAU1100 Thomas Lange <thomas@corelatus.se> -Active mips mips32 au1x00 - dbau1x00 dbau1500 dbau1x00:DBAU1500 Thomas Lange <thomas@corelatus.se> -Active mips mips32 au1x00 - dbau1x00 dbau1550 dbau1x00:DBAU1550 Thomas Lange <thomas@corelatus.se> -Active mips mips32 au1x00 - dbau1x00 dbau1550_el dbau1x00:DBAU1550,SYS_LITTLE_ENDIAN Thomas Lange <thomas@corelatus.se> -Active mips mips32 au1x00 - pb1x00 pb1000 pb1x00:PB1000 - -Active mips mips64 - - qemu-mips qemu_mips64 qemu-mips64:SYS_BIG_ENDIAN - -Active mips mips64 - - qemu-mips qemu_mips64el qemu-mips64:SYS_LITTLE_ENDIAN - -Active nds32 n1213 ag101 AndesTech adp-ag101 adp-ag101 - Andes <uboot@andestech.com> -Active nds32 n1213 ag101 AndesTech adp-ag101p adp-ag101p - Andes <uboot@andestech.com> -Active nds32 n1213 ag102 AndesTech adp-ag102 adp-ag102 - Andes <uboot@andestech.com> -Active nios2 - - altera nios2-generic nios2-generic - Scott McNutt <smcnutt@psyent.com> -Active nios2 - - psyent pci5441 PCI5441 - Scott McNutt <smcnutt@psyent.com> -Active nios2 - - psyent pk1c20 PK1C20 - Scott McNutt <smcnutt@psyent.com> -Active openrisc - - openrisc openrisc-generic openrisc-generic - Stefan Kristiansson <stefan.kristiansson@saunalahti.fi> -Active powerpc 74xx_7xx - - evb64260 P3G4 - Wolfgang Denk <wd@denx.de> -Active powerpc 74xx_7xx - - ppmc7xx ppmc7xx - - -Active powerpc 74xx_7xx - eltec elppc ELPPC - - -Active powerpc 74xx_7xx - esd cpci750 CPCI750 - Reinhard Arlt <reinhard.arlt@esd-electronics.com> -Active powerpc 74xx_7xx - freescale mpc7448hpc2 mpc7448hpc2 - Roy Zang <tie-fei.zang@freescale.com> -Active powerpc 74xx_7xx - Marvell db64360 DB64360 - - -Active powerpc 74xx_7xx - Marvell db64460 DB64460 - - -Active powerpc 74xx_7xx - prodrive p3mx p3m7448 p3mx:P3M7448 Stefan Roese <sr@denx.de> -Active powerpc 74xx_7xx - prodrive p3mx p3m750 p3mx:P3M750 Stefan Roese <sr@denx.de> -Active powerpc mpc512x - - pdm360ng pdm360ng - Michael Weiss <michael.weiss@ifm.com> -Active powerpc mpc512x - davedenx aria aria - Wolfgang Denk <wd@denx.de> -Active powerpc mpc512x - esd mecp5123 mecp5123 - Reinhard Arlt <reinhard.arlt@esd-electronics.com> -Active powerpc mpc512x - freescale mpc5121ads mpc5121ads - - -Active powerpc mpc512x - freescale mpc5121ads mpc5121ads_rev2 mpc5121ads:MPC5121ADS_REV2 - -Active powerpc mpc512x - ifm ac14xx ac14xx - Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xx - - cmi cmi_mpc5xx - - -Active powerpc mpc5xx - mpl pati PATI - - -Active powerpc mpc5xxx - - a3m071 a3m071 - Stefan Roese <sr@denx.de> -Active powerpc mpc5xxx - - a3m071 a4m2k a3m071:A4M2K Stefan Roese <sr@denx.de> -Active powerpc mpc5xxx - - a4m072 a4m072 - Sergei Poselenov <sposelenov@emcraft.com> -Active powerpc mpc5xxx - - bc3450 BC3450 - - -Active powerpc mpc5xxx - - canmb canmb - - -Active powerpc mpc5xxx - - cm5200 cm5200 - - -Active powerpc mpc5xxx - - icecube icecube_5200 IceCube Wolfgang Denk <wd@denx.de> -Active powerpc mpc5xxx - - icecube icecube_5200_DDR IceCube:MPC5200_DDR - -Active powerpc mpc5xxx - - icecube icecube_5200_DDR_LOWBOOT IceCube:SYS_TEXT_BASE=0xFF800000,MPC5200_DDR - -Active powerpc mpc5xxx - - icecube icecube_5200_DDR_LOWBOOT08 IceCube:SYS_TEXT_BASE=0xFF800000,MPC5200_DDR - -Active powerpc mpc5xxx - - icecube icecube_5200_LOWBOOT IceCube:SYS_TEXT_BASE=0xFF000000 - -Active powerpc mpc5xxx - - icecube icecube_5200_LOWBOOT08 IceCube:SYS_TEXT_BASE=0xFF800000 - -Active powerpc mpc5xxx - - icecube Lite5200 IceCube - -Active powerpc mpc5xxx - - icecube Lite5200_LOWBOOT IceCube:SYS_TEXT_BASE=0xFF000000 - -Active powerpc mpc5xxx - - icecube Lite5200_LOWBOOT08 IceCube:SYS_TEXT_BASE=0xFF800000 - -Active powerpc mpc5xxx - - icecube lite5200b IceCube:MPC5200_DDR,LITE5200B - -Active powerpc mpc5xxx - - icecube lite5200b_LOWBOOT IceCube:MPC5200_DDR,LITE5200B,SYS_TEXT_BASE=0xFF000000 - -Active powerpc mpc5xxx - - icecube lite5200b_PM IceCube:MPC5200_DDR,LITE5200B,LITE5200B_PM - -Active powerpc mpc5xxx - - inka4x0 inka4x0 - Detlev Zundel <dzu@denx.de> -Active powerpc mpc5xxx - - ipek01 ipek01 - Wolfgang Grandegger <wg@denx.de> -Active powerpc mpc5xxx - - jupiter jupiter - Heiko Schocher <hs@denx.de> -Active powerpc mpc5xxx - - mcc200 mcc200 - - -Active powerpc mpc5xxx - - mcc200 mcc200_COM12 mcc200:CONSOLE_COM12 - -Active powerpc mpc5xxx - - mcc200 mcc200_COM12_highboot mcc200:CONSOLE_COM12,SYS_TEXT_BASE=0xFFF00000 - -Active powerpc mpc5xxx - - mcc200 mcc200_COM12_highboot_SDRAM mcc200:CONSOLE_COM12,SYS_TEXT_BASE=0xFFF00000,MCC200_SDRAM - -Active powerpc mpc5xxx - - mcc200 mcc200_COM12_SDRAM mcc200:CONSOLE_COM12,MCC200_SDRAM - -Active powerpc mpc5xxx - - mcc200 mcc200_highboot mcc200:SYS_TEXT_BASE=0xFFF00000 - -Active powerpc mpc5xxx - - mcc200 mcc200_highboot_SDRAM mcc200:SYS_TEXT_BASE=0xFFF00000,MCC200_SDRAM - -Active powerpc mpc5xxx - - mcc200 mcc200_SDRAM mcc200:MCC200_SDRAM - -Active powerpc mpc5xxx - - mcc200 prs200 mcc200:PRS200,MCC200_SDRAM - -Active powerpc mpc5xxx - - mcc200 prs200_DDR mcc200:PRS200 - -Active powerpc mpc5xxx - - mcc200 prs200_highboot mcc200:PRS200,SYS_TEXT_BASE=0xFFF00000,MCC200_SDRAM - -Active powerpc mpc5xxx - - mcc200 prs200_highboot_DDR mcc200:PRS200,SYS_TEXT_BASE=0xFFF00000 - -Active powerpc mpc5xxx - - motionpro motionpro - - -Active powerpc mpc5xxx - - munices munices - - -Active powerpc mpc5xxx - - pm520 PM520 - Josef Wagner <Wagner@Microsys.de> -Active powerpc mpc5xxx - - pm520 PM520_DDR PM520:MPC5200_DDR Josef Wagner <Wagner@Microsys.de> -Active powerpc mpc5xxx - - pm520 PM520_ROMBOOT PM520:BOOT_ROM Josef Wagner <Wagner@Microsys.de> -Active powerpc mpc5xxx - - pm520 PM520_ROMBOOT_DDR PM520:MPC5200_DDR,BOOT_ROM Josef Wagner <Wagner@Microsys.de> -Active powerpc mpc5xxx - - total5200 Total5200 Total5200:TOTAL5200_REV=1 - -Active powerpc mpc5xxx - - total5200 Total5200_lowboot Total5200:TOTAL5200_REV=1,SYS_TEXT_BASE=0xFE000000 - -Active powerpc mpc5xxx - - total5200 Total5200_Rev2 Total5200:TOTAL5200_REV=2 - -Active powerpc mpc5xxx - - total5200 Total5200_Rev2_lowboot Total5200:TOTAL5200_REV=2,SYS_TEXT_BASE=0xFE000000 - -Active powerpc mpc5xxx - - v38b v38b - - -Active powerpc mpc5xxx - emk top5200 EVAL5200 TOP5200:EVAL5200 Reinhard Meyer <reinhard.meyer@emk-elektronik.de> -Active powerpc mpc5xxx - emk top5200 MINI5200 TOP5200:MINI5200 Reinhard Meyer <reinhard.meyer@emk-elektronik.de> -Active powerpc mpc5xxx - emk top5200 TOP5200 TOP5200:TOP5200 Reinhard Meyer <reinhard.meyer@emk-elektronik.de> -Active powerpc mpc5xxx - esd cpci5200 cpci5200 - Reinhard Arlt <reinhard.arlt@esd-electronics.com> -Active powerpc mpc5xxx - esd mecp5200 mecp5200 - Reinhard Arlt <reinhard.arlt@esd-electronics.com> -Active powerpc mpc5xxx - esd pf5200 pf5200 - Reinhard Arlt <reinhard.arlt@esd-electronics.com> -Active powerpc mpc5xxx - ifm o2dnt2 O2D o2d Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2D300 o2d300 Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2DNT2 o2dnt2 Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2DNT2_RAMBOOT o2dnt2:SYS_TEXT_BASE=0x00100000 Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2I o2i Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2MNT o2mnt Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2MNT_O2M110 o2mnt:IFM_SENSOR_TYPE="O2M110" Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2MNT_O2M112 o2mnt:IFM_SENSOR_TYPE="O2M112" Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O2MNT_O2M113 o2mnt:IFM_SENSOR_TYPE="O2M113" Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - ifm o2dnt2 O3DNT o3dnt Anatolij Gustschin <agust@denx.de> -Active powerpc mpc5xxx - intercontrol digsy_mtc digsy_mtc - Werner Pfister <Pfister_Werner@intercontrol.de> -Active powerpc mpc5xxx - intercontrol digsy_mtc digsy_mtc_RAMBOOT digsy_mtc:SYS_TEXT_BASE=0x00100000 Werner Pfister <Pfister_Werner@intercontrol.de> -Active powerpc mpc5xxx - intercontrol digsy_mtc digsy_mtc_rev5 digsy_mtc:DIGSY_REV5 Werner Pfister <Pfister_Werner@intercontrol.de> -Active powerpc mpc5xxx - intercontrol digsy_mtc digsy_mtc_rev5_RAMBOOT digsy_mtc:SYS_TEXT_BASE=0x00100000,DIGSY_REV5 Werner Pfister <Pfister_Werner@intercontrol.de> -Active powerpc mpc5xxx - manroland hmi1001 hmi1001 - - -Active powerpc mpc5xxx - manroland mucmc52 mucmc52 - Heiko Schocher <hs@denx.de> -Active powerpc mpc5xxx - manroland uc101 uc101 - Heiko Schocher <hs@denx.de> -Active powerpc mpc5xxx - phytec pcm030 pcm030 - Jon Smirl <jonsmirl@gmail.com> -Active powerpc mpc5xxx - phytec pcm030 pcm030_LOWBOOT pcm030:SYS_TEXT_BASE=0xFF000000 Jon Smirl <jonsmirl@gmail.com> -Active powerpc mpc5xxx - tqc tqm5200 aev - - -Active powerpc mpc5xxx - tqc tqm5200 cam5200 TQM5200:CAM5200,TQM5200S,TQM5200_B - -Active powerpc mpc5xxx - tqc tqm5200 cam5200_niosflash TQM5200:CAM5200,TQM5200S,TQM5200_B,CAM5200_NIOSFLASH - -Active powerpc mpc5xxx - tqc tqm5200 charon - Heiko Schocher <hs@denx.de> -Active powerpc mpc5xxx - tqc tqm5200 fo300 TQM5200:FO300 - -Active powerpc mpc5xxx - tqc tqm5200 MiniFAP TQM5200:MINIFAP - -Active powerpc mpc5xxx - tqc tqm5200 TB5200 - - -Active powerpc mpc5xxx - tqc tqm5200 TB5200_B TB5200:TQM5200_B - -Active powerpc mpc5xxx - tqc tqm5200 TQM5200 - - -Active powerpc mpc5xxx - tqc tqm5200 TQM5200_B TQM5200:TQM5200_B - -Active powerpc mpc5xxx - tqc tqm5200 TQM5200_B_HIGHBOOT TQM5200:TQM5200_B,SYS_TEXT_BASE=0xFFF00000 - -Active powerpc mpc5xxx - tqc tqm5200 TQM5200_STK100 TQM5200:STK52XX_REV100 - -Active powerpc mpc5xxx - tqc tqm5200 TQM5200S TQM5200:TQM5200_B,TQM5200S - -Active powerpc mpc5xxx - tqc tqm5200 TQM5200S_HIGHBOOT TQM5200:TQM5200_B,TQM5200S,SYS_TEXT_BASE=0xFFF00000 - -Active powerpc mpc824x - - a3000 A3000 - - -Active powerpc mpc824x - - cpc45 CPC45 - Josef Wagner <Wagner@Microsys.de> -Active powerpc mpc824x - - cpc45 CPC45_ROMBOOT CPC45:BOOT_ROM Josef Wagner <Wagner@Microsys.de> -Active powerpc mpc824x - - cu824 CU824 - Wolfgang Denk <wd@denx.de> -Active powerpc mpc824x - - eXalion eXalion - Torsten Demke <torsten.demke@fci.com> -Active powerpc mpc824x - - mvblue MVBLUE - - -Active powerpc mpc824x - - sandpoint Sandpoint8240 - Wolfgang Denk <wd@denx.de> -Active powerpc mpc824x - - utx8245 utx8245 - Greg Allen <gallen@arlut.utexas.edu> -Active powerpc mpc8260 - - atc atc - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - cogent cogent_mpc8260 - Murray Jensen <Murray.Jensen@csiro.au> -Active powerpc mpc8260 - - cpu86 CPU86 - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - cpu86 CPU86_ROMBOOT CPU86:BOOT_ROM Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - cpu87 CPU87 - - -Active powerpc mpc8260 - - cpu87 CPU87_ROMBOOT CPU87:BOOT_ROM - -Active powerpc mpc8260 - - ep82xxm ep82xxm - - -Active powerpc mpc8260 - - gw8260 gw8260 - Oliver Brown <obrown@adventnetworks.com> -Active powerpc mpc8260 - - hymod hymod - Murray Jensen <Murray.Jensen@csiro.au> -Active powerpc mpc8260 - - iphase4539 IPHASE4539 - Wolfgang Grandegger <wg@denx.de> -Active powerpc mpc8260 - - muas3001 muas3001 - Heiko Schocher <hs@denx.de> -Active powerpc mpc8260 - - muas3001 muas3001_dev muas3001:MUAS_DEV_BOARD Heiko Schocher <hs@denx.de> -Active powerpc mpc8260 - - pm826 PM825 PM826:PCI,SYS_TEXT_BASE=0xFF000000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm826 PM825_BIGFLASH PM826:PCI,FLASH_32MB,SYS_TEXT_BASE=0x40000000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm826 PM825_ROMBOOT PM826:PCI,BOOT_ROM,SYS_TEXT_BASE=0xFF800000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm826 PM825_ROMBOOT_BIGFLASH PM826:PCI,BOOT_ROM,FLASH_32MB,SYS_TEXT_BASE=0xFF800000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm826 PM826 PM826:SYS_TEXT_BASE=0xFF000000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm826 PM826_BIGFLASH PM826:FLASH_32MB,SYS_TEXT_BASE=0x40000000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm826 PM826_ROMBOOT PM826:BOOT_ROM,SYS_TEXT_BASE=0xFF800000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm826 PM826_ROMBOOT_BIGFLASH PM826:BOOT_ROM,FLASH_32MB,SYS_TEXT_BASE=0xFF800000 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - - pm828 PM828 - - -Active powerpc mpc8260 - - pm828 PM828_PCI PM828:PCI - -Active powerpc mpc8260 - - pm828 PM828_ROMBOOT PM828:BOOT_ROM,SYS_TEXT_BASE=0xFF800000 - -Active powerpc mpc8260 - - pm828 PM828_ROMBOOT_PCI PM828:PCI,BOOT_ROM,SYS_TEXT_BASE=0xFF800000 - -Active powerpc mpc8260 - freescale mpc8266ads MPC8266ADS - Rune Torgersen <runet@innovsys.com> -Active powerpc mpc8260 - funkwerk vovpn-gw VoVPN-GW_66MHz VoVPN-GW:CLKIN_66MHz - -Active powerpc mpc8260 - ids ids8247 IDS8247 - Heiko Schocher <hs@denx.de> -Active powerpc mpc8260 - keymile km82xx mgcoge km82xx:MGCOGE Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc8260 - keymile km82xx mgcoge3ne km82xx:MGCOGE3NE Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc8260 - tqc tqm8260 TQM8255_AA TQM8260:MPC8255,300MHz Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AA TQM8260:MPC8260,200MHz Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AB TQM8260:MPC8260,200MHz,L2_CACHE,BUSMODE_60x Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AC TQM8260:MPC8260,200MHz,L2_CACHE,BUSMODE_60x Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AD TQM8260:MPC8260,300MHz,BUSMODE_60x Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AE TQM8260:MPC8260,266MHz Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AF TQM8260:MPC8260,300MHz,BUSMODE_60x Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AG TQM8260:MPC8260,300MHz Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AH TQM8260:MPC8260,300MHz,L2_CACHE,BUSMODE_60x Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8260_AI TQM8260:MPC8260,300MHz,BUSMODE_60x Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8260 TQM8265_AA TQM8260:MPC8265,300MHz,BUSMODE_60x Wolfgang Denk <wd@denx.de> -Active powerpc mpc8260 - tqc tqm8272 TQM8272 - - -Active powerpc mpc83xx - - mpc8308_p1m mpc8308_p1m - Ilya Yanok <yanok@emcraft.com> -Active powerpc mpc83xx - - sbc8349 sbc8349 - Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc83xx - - sbc8349 sbc8349_PCI_33 sbc8349:PCI,PCI_33M Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc83xx - - sbc8349 sbc8349_PCI_66 sbc8349:PCI,PCI_66M Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc83xx - - ve8313 ve8313 - Heiko Schocher <hs@denx.de> -Active powerpc mpc83xx - esd vme8349 caddy2 vme8349:CADDY2 Reinhard Arlt <reinhard.arlt@esd-electronics.com> -Active powerpc mpc83xx - esd vme8349 vme8349 - Reinhard Arlt <reinhard.arlt@esd-electronics.com> -Active powerpc mpc83xx - freescale mpc8308rdb MPC8308RDB - Ilya Yanok <yanok@emcraft.com> -Active powerpc mpc83xx - freescale mpc8313erdb MPC8313ERDB_33 MPC8313ERDB:SYS_33MHZ - -Active powerpc mpc83xx - freescale mpc8313erdb MPC8313ERDB_66 MPC8313ERDB:SYS_66MHZ - -Active powerpc mpc83xx - freescale mpc8313erdb MPC8313ERDB_NAND_33 MPC8313ERDB:SYS_33MHZ,NAND - -Active powerpc mpc83xx - freescale mpc8313erdb MPC8313ERDB_NAND_66 MPC8313ERDB:SYS_66MHZ,NAND - -Active powerpc mpc83xx - freescale mpc8315erdb MPC8315ERDB - Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8323erdb MPC8323ERDB - Michael Barkowski <michael.barkowski@freescale.com> -Active powerpc mpc83xx - freescale mpc832xemds MPC832XEMDS - Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc832xemds MPC832XEMDS_ATM MPC832XEMDS:PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc832xemds MPC832XEMDS_HOST_33 MPC832XEMDS:PCI,PCI_33M,PQ_MDS_PIB=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc832xemds MPC832XEMDS_HOST_66 MPC832XEMDS:PCI,PCI_66M,PQ_MDS_PIB=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc832xemds MPC832XEMDS_SLAVE MPC832XEMDS:PCI,PCISLAVE Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8349emds MPC8349EMDS - Kim Phillips <kim.phillips@freescale.com> -Active powerpc mpc83xx - freescale mpc8349itx MPC8349ITX MPC8349ITX:MPC8349ITX - -Active powerpc mpc83xx - freescale mpc8349itx MPC8349ITX_LOWBOOT MPC8349ITX:MPC8349ITX,SYS_TEXT_BASE=0xFE000000 - -Active powerpc mpc83xx - freescale mpc8349itx MPC8349ITXGP MPC8349ITX:MPC8349ITXGP,SYS_TEXT_BASE=0xFE000000 - -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_33 MPC8360EMDS:CLKIN_33MHZ Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_33_ATM MPC8360EMDS:CLKIN_33MHZ,PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_33_HOST_33 MPC8360EMDS:CLKIN_33MHZ,PCI,PCI_33M,PQ_MDS_PIB=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_33_HOST_66 MPC8360EMDS:CLKIN_33MHZ,PCI,PCI_66M,PQ_MDS_PIB=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_33_SLAVE MPC8360EMDS:CLKIN_33MHZ,PCI,PCISLAVE Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_66 MPC8360EMDS:CLKIN_66MHZ Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_66_ATM MPC8360EMDS:CLKIN_66MHZ,PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_66_HOST_33 MPC8360EMDS:CLKIN_66MHZ,PCI,PCI_33M,PQ_MDS_PIB=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_66_HOST_66 MPC8360EMDS:CLKIN_66MHZ,PCI,PCI_66M,PQ_MDS_PIB=1 Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc8360emds MPC8360EMDS_66_SLAVE MPC8360EMDS:CLKIN_66MHZ,PCI,PCISLAVE Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc837xemds MPC837XEMDS - Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - freescale mpc837xemds MPC837XEMDS_HOST MPC837XEMDS:PCI Dave Liu <daveliu@freescale.com> -Active powerpc mpc83xx - ids ids8313 ids8313 ids8313:SYS_TEXT_BASE=0xFFF00000 Heiko Schocher <hs@denx.de> -Active powerpc mpc83xx - keymile km83xx kmcoge5ne km8360:KMCOGE5NE Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc83xx - keymile km83xx kmeter1 km8360:KMETER1 Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc83xx - keymile km83xx kmopti2 tuxx1:KMOPTI2 Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc83xx - keymile km83xx kmsupx5 tuxx1:KMSUPX5 Heiko Schocher <hs@denx.de> -Active powerpc mpc83xx - keymile km83xx kmvect1 suvd3:KMVECT1 Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc83xx - keymile km83xx suvd3 suvd3:SUVD3 Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc83xx - keymile km83xx tuge1 tuxx1:TUGE1 Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc83xx - keymile km83xx tuxx1 tuxx1:TUXX1 Holger Brunck <holger.brunck@keymile.com> -Active powerpc mpc83xx - tqc tqm834x TQM834x - - -Active powerpc mpc85xx - - sbc8548 sbc8548 - Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc85xx - - sbc8548 sbc8548_PCI_33 sbc8548:PCI,33 Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc85xx - - sbc8548 sbc8548_PCI_33_PCIE sbc8548:PCI,33,PCIE Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc85xx - - sbc8548 sbc8548_PCI_66 sbc8548:PCI,66 Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc85xx - - sbc8548 sbc8548_PCI_66_PCIE sbc8548:PCI,66,PCIE Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc85xx - - socrates socrates - - -Active powerpc mpc85xx - freescale b4860qds B4420QDS B4860QDS:PPC_B4420 - -Active powerpc mpc85xx - freescale b4860qds B4420QDS_NAND B4860QDS:PPC_B4420,RAMBOOT_PBL,SPL_FSL_PBL,NAND - -Active powerpc mpc85xx - freescale b4860qds B4420QDS_SPIFLASH B4860QDS:PPC_B4420,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale b4860qds B4860QDS B4860QDS:PPC_B4860 - -Active powerpc mpc85xx - freescale b4860qds B4860QDS_NAND B4860QDS:PPC_B4860,RAMBOOT_PBL,SPL_FSL_PBL,NAND - -Active powerpc mpc85xx - freescale b4860qds B4860QDS_SECURE_BOOT B4860QDS:PPC_B4860,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale b4860qds B4860QDS_SPIFLASH B4860QDS:PPC_B4860,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale b4860qds B4860QDS_SRIO_PCIE_BOOT B4860QDS:PPC_B4860,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale bsc9131rdb BSC9131RDB_NAND BSC9131RDB:BSC9131RDB,NAND Poonam Aggrwal <poonam.aggrwal@freescale.com> -Active powerpc mpc85xx - freescale bsc9131rdb BSC9131RDB_NAND_SYSCLK100 BSC9131RDB:BSC9131RDB,NAND,SYS_CLK_100 Poonam Aggrwal <poonam.aggrwal@freescale.com> -Active powerpc mpc85xx - freescale bsc9131rdb BSC9131RDB_SPIFLASH BSC9131RDB:BSC9131RDB,SPIFLASH Poonam Aggrwal <poonam.aggrwal@freescale.com> -Active powerpc mpc85xx - freescale bsc9131rdb BSC9131RDB_SPIFLASH_SYSCLK100 BSC9131RDB:BSC9131RDB,SPIFLASH,SYS_CLK_100 Poonam Aggrwal <poonam.aggrwal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NAND_DDRCLK100 BSC9132QDS:BSC9132QDS,NAND,SYS_CLK_100_DDR_100 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NAND_DDRCLK100_SECURE BSC9132QDS:BSC9132QDS,NAND_SECBOOT,SYS_CLK_100_DDR_100,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NAND_DDRCLK133 BSC9132QDS:BSC9132QDS,NAND,SYS_CLK_100_DDR_133 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NAND_DDRCLK133_SECURE BSC9132QDS:BSC9132QDS,NAND_SECBOOT,SYS_CLK_100_DDR_133,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NOR_DDRCLK100 BSC9132QDS:BSC9132QDS,SYS_CLK_100_DDR_100 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NOR_DDRCLK100_SECURE BSC9132QDS:BSC9132QDS,SYS_CLK_100_DDR_100,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NOR_DDRCLK133 BSC9132QDS:BSC9132QDS,SYS_CLK_100_DDR_133 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_NOR_DDRCLK133_SECURE BSC9132QDS:BSC9132QDS,SYS_CLK_100_DDR_133,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SDCARD_DDRCLK100 BSC9132QDS:BSC9132QDS,SDCARD,SYS_CLK_100_DDR_100 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SDCARD_DDRCLK100_SECURE BSC9132QDS:BSC9132QDS,SDCARD,SYS_CLK_100_DDR_100,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SDCARD_DDRCLK133 BSC9132QDS:BSC9132QDS,SDCARD,SYS_CLK_100_DDR_133 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SDCARD_DDRCLK133_SECURE BSC9132QDS:BSC9132QDS,SDCARD,SYS_CLK_100_DDR_133,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SPIFLASH_DDRCLK100 BSC9132QDS:BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_100 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SPIFLASH_DDRCLK100_SECURE BSC9132QDS:BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_100,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SPIFLASH_DDRCLK133 BSC9132QDS:BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_133 Naveen Burmi <NaveenBurmi@freescale.com> -Active powerpc mpc85xx - freescale bsc9132qds BSC9132QDS_SPIFLASH_DDRCLK133_SECURE BSC9132QDS:BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_133,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale c29xpcie C29XPCIE C29XPCIE:C29XPCIE,36BIT Po Liu <po.liu@freescale.com> -Active powerpc mpc85xx - freescale c29xpcie C29XPCIE_NAND C29XPCIE:C29XPCIE,36BIT,NAND Po Liu <po.liu@freescale.com> -Active powerpc mpc85xx - freescale c29xpcie C29XPCIE_SPIFLASH C29XPCIE:C29XPCIE,36BIT,SPIFLASH Po Liu <po.liu@freescale.com> -Active powerpc mpc85xx - freescale corenet_ds P3041DS - - -Active powerpc mpc85xx - freescale corenet_ds P3041DS_NAND P3041DS:RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P3041DS_SDCARD P3041DS:RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P3041DS_SECURE_BOOT P3041DS:SECURE_BOOT - -Active powerpc mpc85xx - freescale corenet_ds P3041DS_SPIFLASH P3041DS:RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P3041DS_SRIO_PCIE_BOOT P3041DS:SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P4080DS - - -Active powerpc mpc85xx - freescale corenet_ds P4080DS_SDCARD P4080DS:RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P4080DS_SECURE_BOOT P4080DS:SECURE_BOOT - -Active powerpc mpc85xx - freescale corenet_ds P4080DS_SPIFLASH P4080DS:RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P4080DS_SRIO_PCIE_BOOT P4080DS:SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P5020DS - - -Active powerpc mpc85xx - freescale corenet_ds P5020DS_NAND P5020DS:RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P5020DS_SDCARD P5020DS:RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P5020DS_SECURE_BOOT P5020DS:SECURE_BOOT - -Active powerpc mpc85xx - freescale corenet_ds P5020DS_SPIFLASH P5020DS:RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P5020DS_SRIO_PCIE_BOOT P5020DS:SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P5040DS - - -Active powerpc mpc85xx - freescale corenet_ds P5040DS_NAND P5040DS:RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P5040DS_SDCARD P5040DS:RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale corenet_ds P5040DS_SPIFLASH P5040DS:RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale mpc8536ds MPC8536DS - - -Active powerpc mpc85xx - freescale mpc8536ds MPC8536DS_36BIT MPC8536DS:36BIT - -Active powerpc mpc85xx - freescale mpc8536ds MPC8536DS_SDCARD MPC8536DS:SDCARD - -Active powerpc mpc85xx - freescale mpc8536ds MPC8536DS_SPIFLASH MPC8536DS:SPIFLASH - -Active powerpc mpc85xx - freescale mpc8544ds MPC8544DS - - -Active powerpc mpc85xx - freescale mpc8548cds MPC8548CDS - - -Active powerpc mpc85xx - freescale mpc8548cds MPC8548CDS_36BIT MPC8548CDS:36BIT - -Active powerpc mpc85xx - freescale mpc8548cds MPC8548CDS_legacy MPC8548CDS:LEGACY - -Active powerpc mpc85xx - freescale mpc8568mds MPC8568MDS - - -Active powerpc mpc85xx - freescale mpc8569mds MPC8569MDS - - -Active powerpc mpc85xx - freescale mpc8569mds MPC8569MDS_ATM MPC8569MDS:ATM - -Active powerpc mpc85xx - freescale mpc8572ds MPC8572DS - York Sun <yorksun@freescale.com> -Active powerpc mpc85xx - freescale mpc8572ds MPC8572DS_36BIT MPC8572DS:36BIT York Sun <yorksun@freescale.com> -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_36BIT_NAND P1010RDB:P1010RDB_PA,36BIT,NAND - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_36BIT_NAND_SECBOOT P1010RDB:P1010RDB_PA,36BIT,NAND_SECBOOT,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_36BIT_NOR P1010RDB:P1010RDB_PA,36BIT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_36BIT_NOR_SECBOOT P1010RDB:P1010RDB_PA,36BIT,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_36BIT_SDCARD P1010RDB:P1010RDB_PA,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_36BIT_SPIFLASH P1010RDB:P1010RDB_PA,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_36BIT_SPIFLASH_SECBOOT P1010RDB:P1010RDB_PA,36BIT,SPIFLASH,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_NAND P1010RDB:P1010RDB_PA,NAND - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_NAND_SECBOOT P1010RDB:P1010RDB_PA,NAND_SECBOOT,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_NOR P1010RDB:P1010RDB_PA - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_NOR_SECBOOT P1010RDB:P1010RDB_PA,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_SDCARD P1010RDB:P1010RDB_PA,SDCARD - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_SPIFLASH P1010RDB:P1010RDB_PA,SPIFLASH - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PA_SPIFLASH_SECBOOT P1010RDB:P1010RDB_PA,SPIFLASH,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_36BIT_NAND P1010RDB:P1010RDB_PB,36BIT,NAND - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_36BIT_NAND_SECBOOT P1010RDB:P1010RDB_PB,36BIT,NAND_SECBOOT,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_36BIT_NOR P1010RDB:P1010RDB_PB,36BIT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_36BIT_NOR_SECBOOT P1010RDB:P1010RDB_PB,36BIT,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_36BIT_SDCARD P1010RDB:P1010RDB_PB,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_36BIT_SPIFLASH P1010RDB:P1010RDB_PB,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_36BIT_SPIFLASH_SECBOOT P1010RDB:P1010RDB_PB,36BIT,SPIFLASH,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_NAND P1010RDB:P1010RDB_PB,NAND - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_NAND_SECBOOT P1010RDB:P1010RDB_PB,NAND_SECBOOT,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_NOR P1010RDB:P1010RDB_PB - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_NOR_SECBOOT P1010RDB:P1010RDB_PB,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_SDCARD P1010RDB:P1010RDB_PB,SDCARD - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_SPIFLASH P1010RDB:P1010RDB_PB,SPIFLASH - -Active powerpc mpc85xx - freescale p1010rdb P1010RDB-PB_SPIFLASH_SECBOOT P1010RDB:P1010RDB_PB,SPIFLASH,SECURE_BOOT - -Active powerpc mpc85xx - freescale p1022ds P1022DS - Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1022ds P1022DS_36BIT P1022DS:36BIT Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1022ds P1022DS_36BIT_NAND P1022DS:36BIT,NAND Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1022ds P1022DS_36BIT_SDCARD P1022DS:36BIT,SDCARD Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1022ds P1022DS_36BIT_SPIFLASH P1022DS:36BIT,SPIFLASH Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1022ds P1022DS_NAND P1022DS:NAND Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1022ds P1022DS_SDCARD P1022DS:SDCARD Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1022ds P1022DS_SPIFLASH P1022DS:SPIFLASH Timur Tabi <timur@freescale.com> -Active powerpc mpc85xx - freescale p1023rdb P1023RDB - - -Active powerpc mpc85xx - freescale p1023rds P1023RDS - Roy Zang <tie-fei.zang@freescale.com> -Active powerpc mpc85xx - freescale p1_p2_rdb P1011RDB P1_P2_RDB:P1011RDB - -Active powerpc mpc85xx - freescale p1_p2_rdb P1011RDB_36BIT P1_P2_RDB:P1011RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb P1011RDB_36BIT_SDCARD P1_P2_RDB:P1011RDB,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P1011RDB_36BIT_SPIFLASH P1_P2_RDB:P1011RDB,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb P1011RDB_NAND P1_P2_RDB:P1011RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb P1011RDB_SDCARD P1_P2_RDB:P1011RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P1011RDB_SPIFLASH P1_P2_RDB:P1011RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb P1020RDB P1_P2_RDB:P1020RDB - -Active powerpc mpc85xx - freescale p1_p2_rdb P1020RDB_36BIT P1_P2_RDB:P1020RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb P1020RDB_36BIT_SDCARD P1_P2_RDB:P1020RDB,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P1020RDB_36BIT_SPIFLASH P1_P2_RDB:P1020RDB,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb P1020RDB_NAND P1_P2_RDB:P1020RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb P1020RDB_SDCARD P1_P2_RDB:P1020RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P1020RDB_SPIFLASH P1_P2_RDB:P1020RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb P2010RDB P1_P2_RDB:P2010RDB - -Active powerpc mpc85xx - freescale p1_p2_rdb P2010RDB_36BIT P1_P2_RDB:P2010RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb P2010RDB_36BIT_SDCARD P1_P2_RDB:P2010RDB,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P2010RDB_36BIT_SPIFLASH P1_P2_RDB:P2010RDB,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb P2010RDB_NAND P1_P2_RDB:P2010RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb P2010RDB_SDCARD P1_P2_RDB:P2010RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P2010RDB_SPIFLASH P1_P2_RDB:P2010RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb P2020RDB P1_P2_RDB:P2020RDB Poonam Aggrwal <poonam.aggrwal@freescale.com> -Active powerpc mpc85xx - freescale p1_p2_rdb P2020RDB_36BIT P1_P2_RDB:P2020RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb P2020RDB_36BIT_SDCARD P1_P2_RDB:P2020RDB,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P2020RDB_36BIT_SPIFLASH P1_P2_RDB:P2020RDB,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb P2020RDB_NAND P1_P2_RDB:P2020RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb P2020RDB_SDCARD P1_P2_RDB:P2020RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb P2020RDB_SPIFLASH P1_P2_RDB:P2020RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020MBG-PC p1_p2_rdb_pc:P1020MBG - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020MBG-PC_36BIT p1_p2_rdb_pc:P1020MBG,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020MBG-PC_36BIT_SDCARD p1_p2_rdb_pc:P1020MBG,SDCARD,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020MBG-PC_SDCARD p1_p2_rdb_pc:P1020MBG,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC p1_p2_rdb_pc:P1020RDB_PC - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC_36BIT p1_p2_rdb_pc:P1020RDB_PC,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC_36BIT_NAND p1_p2_rdb_pc:P1020RDB_PC,36BIT,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC_36BIT_SDCARD p1_p2_rdb_pc:P1020RDB_PC,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC_36BIT_SPIFLASH p1_p2_rdb_pc:P1020RDB_PC,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC_NAND p1_p2_rdb_pc:P1020RDB_PC,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC_SDCARD p1_p2_rdb_pc:P1020RDB_PC,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PC_SPIFLASH p1_p2_rdb_pc:P1020RDB_PC,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PD p1_p2_rdb_pc:P1020RDB_PD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PD_NAND p1_p2_rdb_pc:P1020RDB_PD,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PD_SDCARD p1_p2_rdb_pc:P1020RDB_PD,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020RDB-PD_SPIFLASH p1_p2_rdb_pc:P1020RDB_PD,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020UTM-PC p1_p2_rdb_pc:P1020UTM - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020UTM-PC_36BIT p1_p2_rdb_pc:P1020UTM,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020UTM-PC_36BIT_SDCARD p1_p2_rdb_pc:P1020UTM,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1020UTM-PC_SDCARD p1_p2_rdb_pc:P1020UTM,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC p1_p2_rdb_pc:P1021RDB - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC_36BIT p1_p2_rdb_pc:P1021RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC_36BIT_NAND p1_p2_rdb_pc:P1021RDB,36BIT,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC_36BIT_SDCARD p1_p2_rdb_pc:P1021RDB,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC_36BIT_SPIFLASH p1_p2_rdb_pc:P1021RDB,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC_NAND p1_p2_rdb_pc:P1021RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC_SDCARD p1_p2_rdb_pc:P1021RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1021RDB-PC_SPIFLASH p1_p2_rdb_pc:P1021RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1024RDB p1_p2_rdb_pc:P1024RDB - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1024RDB_36BIT p1_p2_rdb_pc:P1024RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1024RDB_NAND p1_p2_rdb_pc:P1024RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1024RDB_SDCARD p1_p2_rdb_pc:P1024RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1024RDB_SPIFLASH p1_p2_rdb_pc:P1024RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1025RDB p1_p2_rdb_pc:P1025RDB - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1025RDB_36BIT p1_p2_rdb_pc:P1025RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1025RDB_NAND p1_p2_rdb_pc:P1025RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1025RDB_SDCARD p1_p2_rdb_pc:P1025RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P1025RDB_SPIFLASH p1_p2_rdb_pc:P1025RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC p1_p2_rdb_pc:P2020RDB - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC_36BIT p1_p2_rdb_pc:P2020RDB,36BIT - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC_36BIT_NAND p1_p2_rdb_pc:P2020RDB,36BIT,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC_36BIT_SDCARD p1_p2_rdb_pc:P2020RDB,36BIT,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC_36BIT_SPIFLASH p1_p2_rdb_pc:P2020RDB,36BIT,SPIFLASH - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC_NAND p1_p2_rdb_pc:P2020RDB,NAND - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC_SDCARD p1_p2_rdb_pc:P2020RDB,SDCARD - -Active powerpc mpc85xx - freescale p1_p2_rdb_pc P2020RDB-PC_SPIFLASH p1_p2_rdb_pc:P2020RDB,SPIFLASH - -Active powerpc mpc85xx - freescale p1_twr TWR-P1025 p1_twr:TWR_P1025 - -Active powerpc mpc85xx - freescale p2020come P2020COME_SDCARD P2020COME:SDCARD Ira W. Snyder <iws@ovro.caltech.edu> -Active powerpc mpc85xx - freescale p2020come P2020COME_SPIFLASH P2020COME:SPIFLASH Ira W. Snyder <iws@ovro.caltech.edu> -Active powerpc mpc85xx - freescale p2020ds P2020DS - - -Active powerpc mpc85xx - freescale p2020ds P2020DS_36BIT P2020DS:36BIT - -Active powerpc mpc85xx - freescale p2020ds P2020DS_DDR2 P2020DS:DDR2 - -Active powerpc mpc85xx - freescale p2020ds P2020DS_SDCARD P2020DS:SDCARD - -Active powerpc mpc85xx - freescale p2020ds P2020DS_SPIFLASH P2020DS:SPIFLASH - -Active powerpc mpc85xx - freescale p2041rdb P2041RDB - - -Active powerpc mpc85xx - freescale p2041rdb P2041RDB_NAND P2041RDB:RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale p2041rdb P2041RDB_SDCARD P2041RDB:RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale p2041rdb P2041RDB_SECURE_BOOT P2041RDB:SECURE_BOOT - -Active powerpc mpc85xx - freescale p2041rdb P2041RDB_SPIFLASH P2041RDB:RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale p2041rdb P2041RDB_SRIO_PCIE_BOOT P2041RDB:SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale qemu-ppce500 qemu-ppce500 - Alexander Graf <agraf@suse.de> -Active powerpc mpc85xx - freescale t1040qds T1040QDS T1040QDS:PPC_T1040 Poonam Aggrwal <poonam.aggrwal@freescale.com> -Active powerpc mpc85xx - freescale t1040qds T1040QDS_D4 T1040QDS:PPC_T1040,SYS_FSL_DDR4 Poonam Aggrwal <poonam.aggrwal@freescale.com> -Active powerpc mpc85xx - freescale t1040qds T1040QDS_SECURE_BOOT T1040QDS:PPC_T1040,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale t104xrdb T1040RDB T104xRDB:PPC_T1040,T1040RDB Priyanka Jain <Priyanka.Jain@freescale.com> -Active powerpc mpc85xx - freescale t104xrdb T1040RDB_NAND T104xRDB:PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND Priyanka Jain <Priyanka.Jain@freescale.com> -Active powerpc mpc85xx - freescale t104xrdb T1040RDB_SDCARD T104xRDB:PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD - -Active powerpc mpc85xx - freescale t104xrdb T1040RDB_SECURE_BOOT T104xRDB:PPC_T1040,SECURE_BOOT,T1040RDB Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale t104xrdb T1040RDB_SPIFLASH T104xRDB:PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH Priyanka Jain <Priyanka.Jain@freescale.com> -Active powerpc mpc85xx - freescale t104xrdb T1042RDB_PI T104xRDB:PPC_T1042,T1042RDB_PI Priyanka Jain <Priyanka.Jain@freescale.com> -Active powerpc mpc85xx - freescale t104xrdb T1042RDB_PI_NAND T104xRDB:PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,NAND Priyanka Jain <Priyanka.Jain@freescale.com> -Active powerpc mpc85xx - freescale t104xrdb T1042RDB_PI_SDCARD T104xRDB:PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD - -Active powerpc mpc85xx - freescale t104xrdb T1042RDB_PI_SPIFLASH T104xRDB:PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH Priyanka Jain <Priyanka.Jain@freescale.com> -Active powerpc mpc85xx - freescale t208xqds T2080QDS T208xQDS:PPC_T2080 - -Active powerpc mpc85xx - freescale t208xqds T2080QDS_NAND T208xQDS:PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND - -Active powerpc mpc85xx - freescale t208xqds T2080QDS_SDCARD T208xQDS:PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD - -Active powerpc mpc85xx - freescale t208xqds T2080QDS_SECURE_BOOT T208xQDS:PPC_T2080,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale t208xqds T2080QDS_SPIFLASH T208xQDS:PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH - -Active powerpc mpc85xx - freescale t208xqds T2080QDS_SRIO_PCIE_BOOT T208xQDS:PPC_T2080,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale t208xqds T2081QDS T208xQDS:PPC_T2081 - -Active powerpc mpc85xx - freescale t208xqds T2081QDS_NAND T208xQDS:PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,NAND - -Active powerpc mpc85xx - freescale t208xqds T2081QDS_SDCARD T208xQDS:PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD - -Active powerpc mpc85xx - freescale t208xqds T2081QDS_SPIFLASH T208xQDS:PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH - -Active powerpc mpc85xx - freescale t208xqds T2081QDS_SRIO_PCIE_BOOT T208xQDS:PPC_T2081,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale t208xrdb T2080RDB T208xRDB:PPC_T2080 - -Active powerpc mpc85xx - freescale t208xrdb T2080RDB_NAND T208xRDB:PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND - -Active powerpc mpc85xx - freescale t208xrdb T2080RDB_SDCARD T208xRDB:PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD - -Active powerpc mpc85xx - freescale t208xrdb T2080RDB_SECURE_BOOT T208xRDB:PPC_T2080,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale t208xrdb T2080RDB_SPIFLASH T208xRDB:PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH - -Active powerpc mpc85xx - freescale t208xrdb T2080RDB_SRIO_PCIE_BOOT T208xRDB:PPC_T2080,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale t4qds T4160QDS T4240QDS:PPC_T4160 - -Active powerpc mpc85xx - freescale t4qds T4160QDS_NAND T4240QDS:PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,NAND - -Active powerpc mpc85xx - freescale t4qds T4160QDS_SDCARD T4240QDS:PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD - -Active powerpc mpc85xx - freescale t4qds T4160QDS_SECURE_BOOT T4240QDS:PPC_T4160,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale t4qds T4160QDS_SPIFLASH T4240QDS:PPC_T4160,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale t4qds T4240EMU T4240EMU:PPC_T4240 York Sun <yorksun@freescale.com> -Active powerpc mpc85xx - freescale t4qds T4240QDS T4240QDS:PPC_T4240 - -Active powerpc mpc85xx - freescale t4qds T4240QDS_NAND T4240QDS:PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,NAND - -Active powerpc mpc85xx - freescale t4qds T4240QDS_SDCARD T4240QDS:PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD - -Active powerpc mpc85xx - freescale t4qds T4240QDS_SECURE_BOOT T4240QDS:PPC_T4240,SECURE_BOOT Aneesh Bansal <aneesh.bansal@freescale.com> -Active powerpc mpc85xx - freescale t4qds T4240QDS_SPIFLASH T4240QDS:PPC_T4240,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale t4qds T4240QDS_SRIO_PCIE_BOOT T4240QDS:PPC_T4240,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000 - -Active powerpc mpc85xx - freescale t4rdb T4160RDB T4240RDB:PPC_T4160 Chunhe Lan <Chunhe.Lan@freescale.com> -Active powerpc mpc85xx - freescale t4rdb T4240RDB T4240RDB:PPC_T4240 Chunhe Lan <Chunhe.Lan@freescale.com> -Active powerpc mpc85xx - gdsys p1022 controlcenterd_36BIT_SDCARD controlcenterd:36BIT,SDCARD Dirk Eibach <eibach@gdsys.de> -Active powerpc mpc85xx - gdsys p1022 controlcenterd_36BIT_SDCARD_DEVELOP controlcenterd:36BIT,SDCARD,DEVELOP Dirk Eibach <eibach@gdsys.de> -Active powerpc mpc85xx - gdsys p1022 controlcenterd_TRAILBLAZER controlcenterd:TRAILBLAZER,SPIFLASH Dirk Eibach <eibach@gdsys.de> -Active powerpc mpc85xx - gdsys p1022 controlcenterd_TRAILBLAZER_DEVELOP controlcenterd:TRAILBLAZER,SPIFLASH,DEVELOP Dirk Eibach <eibach@gdsys.de> -Active powerpc mpc85xx - keymile kmp204x kmcoge4 kmp204x:KMCOGE4 Valentin Longchamp <valentin.longchamp@keymile.com> -Active powerpc mpc85xx - keymile kmp204x kmlion1 kmp204x:KMLION1 Valentin Longchamp <valentin.longchamp@keymile.com> -Active powerpc mpc85xx - xes xpedite520x xpedite520x - - -Active powerpc mpc85xx - xes xpedite537x xpedite537x - - -Active powerpc mpc85xx - xes xpedite550x xpedite550x - - -Active powerpc mpc86xx - - sbc8641d sbc8641d - Paul Gortmaker <paul.gortmaker@windriver.com> -Active powerpc mpc86xx - freescale mpc8610hpcd MPC8610HPCD - - -Active powerpc mpc86xx - xes xpedite517x xpedite517x - - -Active powerpc mpc8xx - - cogent cogent_mpc8xx - Murray Jensen <Murray.Jensen@csiro.au> -Active powerpc mpc8xx - - esteem192e ESTEEM192E - Conn Clark <clark@esteem.com> -Active powerpc mpc8xx - - hermes hermes - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - icu862 ICU862 - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - icu862 ICU862_100MHz ICU862:100MHz Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - ip860 IP860 - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - ivm IVML24 IVML24:IVML24_16M Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - ivm IVML24_128 IVML24:IVML24_32M Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - ivm IVML24_256 IVML24:IVML24_64M Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - ivm IVMS8 IVMS8:IVMS8_16M Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - ivm IVMS8_128 IVMS8:IVMS8_32M Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - ivm IVMS8_256 IVMS8:IVMS8_64M Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - lwmon lwmon - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - netvia NETVIA NETVIA:NETVIA_VERSION=1 Pantelis Antoniou <panto@intracom.gr> -Active powerpc mpc8xx - - netvia NETVIA_V2 NETVIA:NETVIA_VERSION=2 Pantelis Antoniou <panto@intracom.gr> -Active powerpc mpc8xx - - r360mpi R360MPI - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - RRvision RRvision - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - RRvision RRvision_LCD RRvision:LCD,SHARP_LQ104V7DS01 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - - spd8xx SPD823TS - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - eltec mhpc MHPC - Frank Gottschling <fgottschling@eltec.de> -Active powerpc mpc8xx - emk top860 TOP860 - Reinhard Meyer <reinhard.meyer@emk-elektronik.de> -Active powerpc mpc8xx - kup kup4k KUP4K - Klaus Heydeck <heydeck@kieback-peter.de> -Active powerpc mpc8xx - kup kup4x KUP4X - Klaus Heydeck <heydeck@kieback-peter.de> -Active powerpc mpc8xx - LEOX elpt860 ELPT860 - The LEOX team <team@leox.org> -Active powerpc mpc8xx - manroland uc100 uc100 - Stefan Roese <sr@denx.de> -Active powerpc mpc8xx - tqc tqm8xx FPS850L - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx FPS860L - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx NSCU - - -Active powerpc mpc8xx - tqc tqm8xx SM850 - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TK885D - - -Active powerpc mpc8xx - tqc tqm8xx TQM823L - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM823L_LCD TQM823L:LCD,NEC_NL6448BC20 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM823M - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM850L - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM850M - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM855L - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM855M - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM860L - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM860M - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM862L - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM862M - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM866M - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TQM885D - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx TTTech TQM823L:LCD,SHARP_LQ104V7DS01 Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx virtlab2 - Wolfgang Denk <wd@denx.de> -Active powerpc mpc8xx - tqc tqm8xx wtk TQM823L:LCD,SHARP_LQ065T9DR51U Wolfgang Denk <wd@denx.de> -Active powerpc ppc4xx - - csb272 csb272 - Tolunay Orkun <torkun@nextio.com> -Active powerpc ppc4xx - - csb472 csb472 - Tolunay Orkun <torkun@nextio.com> -Active powerpc ppc4xx - - g2000 G2000 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - - jse JSE - Stephen Williams <steve@icarus.com> -Active powerpc ppc4xx - - korat korat - Larry Johnson <lrj@acm.org> -Active powerpc ppc4xx - - korat korat_perm korat:KORAT_PERMANENT Larry Johnson <lrj@acm.org> -Active powerpc ppc4xx - - lwmon5 lcd4_lwmon5 lwmon5:LCD4_LWMON5 Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - - lwmon5 lwmon5 - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - - pcs440ep pcs440ep - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - - sbc405 sbc405 - - -Active powerpc ppc4xx - - sc3 sc3 - Heiko Schocher <hs@denx.de> -Active powerpc ppc4xx - - t3corp t3corp - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - - w7o W7OLMC - Erik Theisen <etheisen@mindspring.com> -Active powerpc ppc4xx - - w7o W7OLMG - Erik Theisen <etheisen@mindspring.com> -Active powerpc ppc4xx - - zeus zeus - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc acadia acadia - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc bamboo bamboo - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc bubinga bubinga - - -Active powerpc ppc4xx - amcc canyonlands arches canyonlands:ARCHES Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc canyonlands canyonlands canyonlands:CANYONLANDS Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc canyonlands glacier canyonlands:GLACIER Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc ebony ebony - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc katmai katmai - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc kilauea haleakala kilauea:HALEAKALA Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc kilauea kilauea kilauea:KILAUEA Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc luan luan - John Otken <jotken@softadvances.com> -Active powerpc ppc4xx - amcc makalu makalu - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc ocotea ocotea - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc redwood redwood - Feng Kan <fkan@amcc.com> -Active powerpc ppc4xx - amcc sequoia rainier sequoia:RAINIER Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc sequoia rainier_ramboot sequoia:RAINIER,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc sequoia sequoia sequoia:SEQUOIA Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc sequoia sequoia_ramboot sequoia:SEQUOIA,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc taihu taihu - John Otken <jotken@softadvances.com> -Active powerpc ppc4xx - amcc taishan taishan - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc walnut sycamore walnut Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc walnut walnut - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc yosemite yellowstone yosemite:YELLOWSTONE Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc yosemite yosemite yosemite:YOSEMITE Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - amcc yucca yucca - - -Active powerpc ppc4xx - avnet fx12mm fx12mm fx12mm:SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,INIT_TLB=board/xilinx/ppc405-generic/init.o Georg Schardt <schardt@team-ctech.de> -Active powerpc ppc4xx - avnet fx12mm fx12mm_flash fx12mm:SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC,INIT_TLB=board/xilinx/ppc405-generic/init.o Georg Schardt <schardt@team-ctech.de> -Active powerpc ppc4xx - avnet v5fx30teval v5fx30teval v5fx30teval:SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,BOOT_FROM_XMD=1,INIT_TLB=board/xilinx/ppc440-generic/init.o Ricardo Ribalda <ricardo.ribalda@uam.es> -Active powerpc ppc4xx - avnet v5fx30teval v5fx30teval_flash v5fx30teval:SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC,INIT_TLB=board/xilinx/ppc440-generic/init.o Ricardo Ribalda <ricardo.ribalda@uam.es> -Active powerpc ppc4xx - dave PPChameleonEVB CATcenter CATcenter:PPCHAMELEON_MODULE_MODEL=1 - -Active powerpc ppc4xx - dave PPChameleonEVB CATcenter_25 CATcenter:PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_25 - -Active powerpc ppc4xx - dave PPChameleonEVB CATcenter_33 CATcenter:PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_33 - -Active powerpc ppc4xx - dave PPChameleonEVB PPChameleonEVB - Andrea "llandre" Marson <andrea.marson@dave-tech.it> -Active powerpc ppc4xx - dave PPChameleonEVB PPChameleonEVB_BA_25 PPChameleonEVB:PPCHAMELEON_MODULE_MODEL=0,PPCHAMELEON_CLK_25 Andrea "llandre" Marson <andrea.marson@dave-tech.it> -Active powerpc ppc4xx - dave PPChameleonEVB PPChameleonEVB_BA_33 PPChameleonEVB:PPCHAMELEON_MODULE_MODEL=0,PPCHAMELEON_CLK_33 Andrea "llandre" Marson <andrea.marson@dave-tech.it> -Active powerpc ppc4xx - dave PPChameleonEVB PPChameleonEVB_HI_25 PPChameleonEVB:PPCHAMELEON_MODULE_MODEL=2,PPCHAMELEON_CLK_25 Andrea "llandre" Marson <andrea.marson@dave-tech.it> -Active powerpc ppc4xx - dave PPChameleonEVB PPChameleonEVB_HI_33 PPChameleonEVB:PPCHAMELEON_MODULE_MODEL=2,PPCHAMELEON_CLK_33 Andrea "llandre" Marson <andrea.marson@dave-tech.it> -Active powerpc ppc4xx - dave PPChameleonEVB PPChameleonEVB_ME_25 PPChameleonEVB:PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_25 Andrea "llandre" Marson <andrea.marson@dave-tech.it> -Active powerpc ppc4xx - dave PPChameleonEVB PPChameleonEVB_ME_33 PPChameleonEVB:PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_33 Andrea "llandre" Marson <andrea.marson@dave-tech.it> -Active powerpc ppc4xx - esd apc405 APC405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd ar405 AR405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd ash405 ASH405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd cms700 CMS700 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd cpci2dp CPCI2DP - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd cpci405 CPCI405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd cpci405 CPCI4052 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd cpci405 CPCI405AB - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd cpci405 CPCI405DT - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd cpciiser4 CPCIISER4 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd dp405 DP405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd du405 DU405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd du440 DU440 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd hh405 HH405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd hub405 HUB405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd ocrtc OCRTC - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd pci405 PCI405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd plu405 PLU405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd pmc405 PMC405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd pmc405de PMC405DE - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd pmc440 PMC440 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd voh405 VOH405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd vom405 VOM405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - esd wuh405 WUH405 - Matthias Fuchs <matthias.fuchs@esd-electronics.com> -Active powerpc ppc4xx - gdsys 405ep dlvision-10g - Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys 405ep io - Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys 405ep iocon - Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys 405ep neo - Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys 405ex io64 - Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys dlvision dlvision - Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys gdppc440etx gdppc440etx - Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys intip devconcenter intip:DEVCONCENTER Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - gdsys intip intip intip:INTIB Dirk Eibach <eibach@gdsys.de> -Active powerpc ppc4xx - mosaixtech icon icon - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - mpl mip405 MIP405 - Denis Peter <d.peter@mpl.ch> -Active powerpc ppc4xx - mpl mip405 MIP405T MIP405:MIP405T Denis Peter <d.peter@mpl.ch> -Active powerpc ppc4xx - mpl pip405 PIP405 - Denis Peter <d.peter@mpl.ch> -Active powerpc ppc4xx - prodrive alpr alpr - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - prodrive p3p440 p3p440 - Stefan Roese <sr@denx.de> -Active powerpc ppc4xx - xes xpedite1000 xpedite1000 - Peter Tyser <ptyser@xes-inc.com> -Active powerpc ppc4xx - xilinx ml507 ml507 ml507:SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,BOOT_FROM_XMD=1,INIT_TLB=board/xilinx/ppc440-generic/init.o Ricardo Ribalda <ricardo.ribalda@uam.es> -Active powerpc ppc4xx - xilinx ml507 ml507_flash ml507:SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC,INIT_TLB=board/xilinx/ppc440-generic/init.o Ricardo Ribalda <ricardo.ribalda@uam.es> -Active powerpc ppc4xx - xilinx ppc405-generic xilinx-ppc405-generic xilinx-ppc405-generic:SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000 Ricardo Ribalda <ricardo.ribalda@uam.es> -Active powerpc ppc4xx - xilinx ppc405-generic xilinx-ppc405-generic_flash xilinx-ppc405-generic:SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC Ricardo Ribalda <ricardo.ribalda@uam.es> -Active powerpc ppc4xx - xilinx ppc440-generic xilinx-ppc440-generic xilinx-ppc440-generic:SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,BOOT_FROM_XMD=1 Ricardo Ribalda <ricardo.ribalda@uam.es> -Active powerpc ppc4xx - xilinx ppc440-generic xilinx-ppc440-generic_flash xilinx-ppc440-generic:SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC Ricardo Ribalda <ricardo.ribalda@uam.es> -Active sandbox - - - sandbox sandbox - Simon Glass <sjg@chromium.org> -Active sh sh2 - renesas rsk7203 rsk7203 - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh2 - renesas rsk7264 rsk7264 - Phil Edworthy <phil.edworthy@renesas.com> -Active sh sh2 - renesas rsk7269 rsk7269 - - -Active sh sh3 - - mpr2 mpr2 - Mark Jonas <mark.jonas@de.bosch.com> -Active sh sh3 - - ms7720se ms7720se - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> -Active sh sh3 - - shmin shmin - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - - espt espt - - -Active sh sh4 - - ms7722se ms7722se - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - - ms7750se ms7750se - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - alphaproject ap_sh4a_4a ap_sh4a_4a - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - renesas ap325rxa ap325rxa - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - renesas ecovec ecovec - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - renesas MigoR MigoR - - -Active sh sh4 - renesas r0p7734 r0p7734 - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - renesas r2dplus r2dplus - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - renesas r7780mp r7780mp - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - renesas sh7752evb sh7752evb - - -Active sh sh4 - renesas sh7753evb sh7753evb - - -Active sh sh4 - renesas sh7757lcr sh7757lcr - - -Active sh sh4 - renesas sh7763rdp sh7763rdp - Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>:Nobuhiro Iwamatsu <iwamatsu@nigauri.org> -Active sh sh4 - renesas sh7785lcr sh7785lcr - - -Active sh sh4 - renesas sh7785lcr sh7785lcr_32bit sh7785lcr:SH_32BIT=1 - -Active sparc leon2 - gaisler grsim_leon2 grsim_leon2 - - -Active sparc leon3 - gaisler gr_cpci_ax2000 gr_cpci_ax2000 - - -Active sparc leon3 - gaisler gr_ep2s60 gr_ep2s60 - - -Active sparc leon3 - gaisler gr_xc3s_1500 gr_xc3s_1500 - - -Active sparc leon3 - gaisler grsim grsim - - -Active x86 - coreboot chromebook-x86 coreboot coreboot-x86 coreboot:SYS_TEXT_BASE=0x01110000 Simon Glass <sjg@chromium.org> -# The following were moved to "Orphan" in June, 2014 -Orphan arm arm1176 tnetv107x ti tnetv107xevm tnetv107x_evm - Chan-Taek Park <c-park@ti.com> -Orphan arm arm926ejs at91 calao sbc35_a9g20 sbc35_a9g20_eeprom sbc35_a9g20:AT91SAM9G20,SYS_USE_EEPROM Albin Tonnerre <albin.tonnerre@free-electrons.com> -Orphan arm arm926ejs at91 calao sbc35_a9g20 sbc35_a9g20_nandflash sbc35_a9g20:AT91SAM9G20,SYS_USE_NANDFLASH Albin Tonnerre <albin.tonnerre@free-electrons.com> -Orphan arm arm926ejs at91 calao tny_a9260 tny_a9260_eeprom tny_a9260:AT91SAM9260,SYS_USE_EEPROM Albin Tonnerre <albin.tonnerre@free-electrons.com> -Orphan arm arm926ejs at91 calao tny_a9260 tny_a9260_nandflash tny_a9260:AT91SAM9260,SYS_USE_NANDFLASH Albin Tonnerre <albin.tonnerre@free-electrons.com> -Orphan arm arm926ejs at91 calao tny_a9260 tny_a9g20_eeprom tny_a9260:AT91SAM9G20,SYS_USE_EEPROM Albin Tonnerre <albin.tonnerre@free-electrons.com> -Orphan arm arm926ejs at91 calao tny_a9260 tny_a9g20_nandflash tny_a9260:AT91SAM9G20,SYS_USE_NANDFLASH Albin Tonnerre <albin.tonnerre@free-electrons.com> -Orphan arm armv7 mx6 congatec cgtqmx6eval cgtqmx6qeval cgtqmx6eval:IMX_CONFIG=board/freescale/imx/ddr/mx6q_4x_mt41j128.cfg,MX6Q Leo Sartre <lsartre@adeneo-embedded.com> -Orphan arm pxa - - palmtreo680 palmtreo680 - Mike Dunn <mikedunn@newsguy.com> -Orphan avr32 - at32ap700x atmel atngw100 atngw100 - Haavard Skinnemoen <haavard.skinnemoen@atmel.com> -Orphan avr32 - at32ap700x atmel atstk1000 atstk1002 - Haavard Skinnemoen <haavard.skinnemoen@atmel.com> -Orphan avr32 - at32ap700x atmel atstk1000 atstk1003 - Haavard Skinnemoen <haavard.skinnemoen@atmel.com> -Orphan avr32 - at32ap700x atmel atstk1000 atstk1004 - Haavard Skinnemoen <haavard.skinnemoen@atmel.com> -Orphan avr32 - at32ap700x atmel atstk1000 atstk1006 - Haavard Skinnemoen <haavard.skinnemoen@atmel.com> -Orphan avr32 - at32ap700x earthlcd favr-32-ezkit favr-32-ezkit - Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> -Orphan blackfin - - - ip04 ip04 - Brent Kandetzki <brentk@teleco.com> -Orphan m68k mcf52x2 - freescale m5253evbe M5253EVBE - Hayden Fraser <Hayden.Fraser@freescale.com> -Orphan powerpc mpc5xxx - - galaxy5200 galaxy5200 galaxy5200:galaxy5200 Eric Millbrandt <emillbrandt@dekaresearch.com> -Orphan powerpc mpc5xxx - - galaxy5200 galaxy5200_LOWBOOT galaxy5200:galaxy5200_LOWBOOT Eric Millbrandt <emillbrandt@dekaresearch.com> -Orphan powerpc mpc8260 - - ep8260 ep8260 - Frank Panno <fpanno@delphintech.com> -Orphan powerpc mpc8260 - - sacsng sacsng - Jerry Van Baren <gerald.vanbaren@smiths-aerospace.com> -Orphan powerpc mpc83xx - freescale mpc837xerdb MPC837XERDB - Joe D'Abbraccio <ljd015@freescale.com> -Orphan powerpc mpc85xx - exmeritus hww1u1a HWW1U1A - Kyle Moffett <Kyle.D.Moffett@boeing.com> -Orphan powerpc mpc85xx - freescale mpc8540ads MPC8540ADS - Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc85xx - freescale mpc8541cds MPC8541CDS - Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc85xx - freescale mpc8541cds MPC8541CDS_legacy MPC8541CDS:LEGACY Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc85xx - freescale mpc8555cds MPC8555CDS - Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc85xx - freescale mpc8555cds MPC8555CDS_legacy MPC8555CDS:LEGACY Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc85xx - freescale mpc8560ads MPC8560ADS - Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc85xx - stx stxgp3 stxgp3 - Dan Malek <dan@embeddedalley.com> -Orphan powerpc mpc85xx - stx stxssa stxssa - Dan Malek <dan@embeddedalley.com> -Orphan powerpc mpc85xx - stx stxssa stxssa_4M stxssa:STXSSA_4M Dan Malek <dan@embeddedalley.com> -Orphan powerpc mpc86xx - freescale mpc8641hpcn MPC8641HPCN - Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc86xx - freescale mpc8641hpcn MPC8641HPCN_36BIT MPC8641HPCN:PHYS_64BIT Kumar Gala <kumar.gala@freescale.com> -Orphan powerpc mpc8xx - - flagadm FLAGADM - Kári DavÃðsson <kd@flaga.is> -Orphan powerpc mpc8xx - - gen860t GEN860T - Keith Outwater <Keith_Outwater@mvis.com> -Orphan powerpc mpc8xx - - gen860t GEN860T_SC GEN860T:SC Keith Outwater <Keith_Outwater@mvis.com> -Orphan powerpc mpc8xx - - sixnet SXNI855T - Dave Ellis <DGE@sixnetio.com> -Orphan powerpc mpc8xx - - svm_sc8xx svm_sc8xx - John Zhan <zhanz@sinovee.com> -Orphan powerpc mpc8xx - stx stxxtc stxxtc - Dan Malek <dan@embeddedalley.com> -# The following were moved to "Orphan" in April, 2014 -Orphan powerpc 74xx_7xx - - evb64260 ZUMA - Nye Liu <nyet@zumanetworks.com> -Orphan powerpc mpc824x - - musenki MUSENKI - Jim Thompson <jim@musenki.com> -Orphan powerpc mpc824x - - sandpoint Sandpoint8245 - Jim Thompson <jim@musenki.com> -Orphan powerpc mpc8260 - - ppmc8260 ppmc8260 - Brad Kemp <Brad.Kemp@seranoa.com> -# The following were moved to "Orphan" in March, 2014 -Orphan blackfin - - - cm-bf527 cm-bf527 - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan blackfin - - - cm-bf533 cm-bf533 - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan blackfin - - - cm-bf537e cm-bf537e - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan blackfin - - - cm-bf537u cm-bf537u - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan blackfin - - - cm-bf548 cm-bf548 - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan blackfin - - - cm-bf561 cm-bf561 - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan blackfin - - - tcm-bf518 tcm-bf518 - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan blackfin - - - tcm-bf537 tcm-bf537 - Bluetechnix Tinyboards <bluetechnix@blackfin.uclinux.org> -Orphan powerpc mpc5xxx - matrix_vision mvbc_p MVBC_P MVBC_P:MVBC_P Andre Schwarz <andre.schwarz@matrix-vision.de> -Orphan powerpc mpc5xxx - matrix_vision mvsmr MVSMR - Andre Schwarz <andre.schwarz@matrix-vision.de> -Orphan powerpc mpc83xx - freescale mpc8360erdk MPC8360ERDK - Anton Vorontsov <avorontsov@ru.mvista.com> -Orphan powerpc mpc83xx - freescale mpc8360erdk MPC8360ERDK_33 MPC8360ERDK:CLKIN_33MHZ Anton Vorontsov <avorontsov@ru.mvista.com> -Orphan powerpc mpc83xx - matrix_vision mergerbox MERGERBOX - Andre Schwarz <andre.schwarz@matrix-vision.de> -Orphan powerpc mpc83xx - matrix_vision mvblm7 MVBLM7 - Andre Schwarz <andre.schwarz@matrix-vision.de> -Orphan powerpc ppc4xx - amcc bluestone bluestone - Tirumala Marri <tmarri@apm.com> -Orphan powerpc ppc4xx - cray L1 CRAYL1 - David Updegraff <dave@cray.com> -Orphan powerpc ppc4xx - sandburst karef KAREF - Travis Sawyer <travis.sawyer@sandburst.com> -Orphan powerpc ppc4xx - sandburst metrobox METROBOX - Travis Sawyer <travis.sawyer@sandburst.com> -# The following were move to "Orphan" in September, 2013 -Orphan arm arm1136 mx31 - imx31_phycore imx31_phycore_eet imx31_phycore:IMX31_PHYCORE_EET (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> -Orphan arm arm1136 mx31 freescale mx31ads mx31ads - (resigned) Guennadi Liakhovetski <g.liakhovetski@gmx.de> diff --git a/common/env_mmc.c b/common/env_mmc.c index 7da10e6..a7621a8 100644 --- a/common/env_mmc.c +++ b/common/env_mmc.c @@ -62,16 +62,36 @@ int env_init(void) return 0; } -static int init_mmc_for_env(struct mmc *mmc) -{ #ifdef CONFIG_SYS_MMC_ENV_PART +__weak uint mmc_get_env_part(struct mmc *mmc) +{ + return CONFIG_SYS_MMC_ENV_PART; +} + +static int mmc_set_env_part(struct mmc *mmc) +{ + uint part = mmc_get_env_part(mmc); int dev = CONFIG_SYS_MMC_ENV_DEV; + int ret = 0; #ifdef CONFIG_SPL_BUILD dev = 0; #endif + + if (part != mmc->part_num) { + ret = mmc_switch_part(dev, part); + if (ret) + puts("MMC partition switch failed\n"); + } + + return ret; +} +#else +static inline int mmc_set_env_part(struct mmc *mmc) {return 0; }; #endif +static int init_mmc_for_env(struct mmc *mmc) +{ if (!mmc) { puts("No MMC card found\n"); return -1; @@ -82,16 +102,7 @@ static int init_mmc_for_env(struct mmc *mmc) return -1; } -#ifdef CONFIG_SYS_MMC_ENV_PART - if (CONFIG_SYS_MMC_ENV_PART != mmc->part_num) { - if (mmc_switch_part(dev, CONFIG_SYS_MMC_ENV_PART)) { - puts("MMC partition switch failed\n"); - return -1; - } - } -#endif - - return 0; + return mmc_set_env_part(mmc); } static void fini_mmc_for_env(struct mmc *mmc) @@ -20,6 +20,16 @@ LDFLAGS_FINAL := OBJCOPYFLAGS := ######################################################################### +ARCH := $(CONFIG_SYS_ARCH:"%"=%) +CPU := $(CONFIG_SYS_CPU:"%"=%) +BOARD := $(CONFIG_SYS_BOARD:"%"=%) +ifneq ($(CONFIG_SYS_VENDOR),) +VENDOR := $(CONFIG_SYS_VENDOR:"%"=%) +endif +ifneq ($(CONFIG_SYS_SOC),) +SOC := $(CONFIG_SYS_SOC:"%"=%) +endif + # Some architecture config.mk files need to know what CPUDIR is set to, # so calculate CPUDIR before including ARCH/SOC/CPU config.mk files. # Check if arch/$ARCH/cpu/$CPU exists, otherwise assume arch/$ARCH/cpu contains diff --git a/configs/A10-OLinuXino-Lime_defconfig b/configs/A10-OLinuXino-Lime_defconfig new file mode 100644 index 0000000..a414953 --- /dev/null +++ b/configs/A10-OLinuXino-Lime_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="A10_OLINUXINO_L,SPL,AXP209_POWER,SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPC(3),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN4I=y diff --git a/configs/A10s-OLinuXino-M_defconfig b/configs/A10s-OLinuXino-M_defconfig new file mode 100644 index 0000000..1560ab1 --- /dev/null +++ b/configs/A10s-OLinuXino-M_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="A10S_OLINUXINO_M,SPL,AXP152_POWER,SUNXI_EMAC,USB_EHCI,SUNXI_USB_VBUS0_GPIO=SUNXI_GPB(10)" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN5I=y diff --git a/configs/A13-OLinuXinoM_defconfig b/configs/A13-OLinuXinoM_defconfig new file mode 100644 index 0000000..fb510d5 --- /dev/null +++ b/configs/A13-OLinuXinoM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="A13_OLINUXINOM,SPL,CONS_INDEX=2,USB_EHCI,SUNXI_USB_VBUS0_GPIO=SUNXI_GPG(11)" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN5I=y diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig new file mode 100644 index 0000000..ba21136 --- /dev/null +++ b/configs/A13-OLinuXino_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="A13_OLINUXINO,SPL,CONS_INDEX=2,AXP209_POWER,USB_EHCI,SUNXI_USB_VBUS0_GPIO=SUNXI_GPG(11)" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN5I=y diff --git a/configs/A20-OLinuXino_MICRO_defconfig b/configs/A20-OLinuXino_MICRO_defconfig new file mode 100644 index 0000000..52a857a --- /dev/null +++ b/configs/A20-OLinuXino_MICRO_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="A20_OLINUXINO_M,SPL,AXP209_POWER,SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/A3000_defconfig b/configs/A3000_defconfig new file mode 100644 index 0000000..e1923de --- /dev/null +++ b/configs/A3000_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_A3000=y diff --git a/configs/APC405_defconfig b/configs/APC405_defconfig new file mode 100644 index 0000000..d9da49b --- /dev/null +++ b/configs/APC405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_APC405=y diff --git a/configs/AR405_defconfig b/configs/AR405_defconfig new file mode 100644 index 0000000..be65ab7 --- /dev/null +++ b/configs/AR405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_AR405=y diff --git a/configs/ASH405_defconfig b/configs/ASH405_defconfig new file mode 100644 index 0000000..ee094cb --- /dev/null +++ b/configs/ASH405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_ASH405=y diff --git a/configs/Auxtek-T004_defconfig b/configs/Auxtek-T004_defconfig new file mode 100644 index 0000000..643e628 --- /dev/null +++ b/configs/Auxtek-T004_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="AUXTEK_T004,SPL,AXP152_POWER,USB_EHCI,SUNXI_USB_VBUS0_GPIO=SUNXI_GPG(13)" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN5I=y diff --git a/configs/B4420QDS_NAND_defconfig b/configs/B4420QDS_NAND_defconfig new file mode 100644 index 0000000..5367e9b --- /dev/null +++ b/configs/B4420QDS_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4420,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_B4860QDS=y diff --git a/configs/B4420QDS_SPIFLASH_defconfig b/configs/B4420QDS_SPIFLASH_defconfig new file mode 100644 index 0000000..d62a068 --- /dev/null +++ b/configs/B4420QDS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4420,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_B4860QDS=y diff --git a/configs/B4420QDS_defconfig b/configs/B4420QDS_defconfig new file mode 100644 index 0000000..dc77f70 --- /dev/null +++ b/configs/B4420QDS_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4420" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_B4860QDS=y diff --git a/configs/B4860QDS_NAND_defconfig b/configs/B4860QDS_NAND_defconfig new file mode 100644 index 0000000..05cf734 --- /dev/null +++ b/configs/B4860QDS_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_B4860QDS=y diff --git a/configs/B4860QDS_SECURE_BOOT_defconfig b/configs/B4860QDS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..f73a2ae --- /dev/null +++ b/configs/B4860QDS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_B4860QDS=y diff --git a/configs/B4860QDS_SPIFLASH_defconfig b/configs/B4860QDS_SPIFLASH_defconfig new file mode 100644 index 0000000..235d3ea --- /dev/null +++ b/configs/B4860QDS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_B4860QDS=y diff --git a/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..dda1944 --- /dev/null +++ b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_B4860QDS=y diff --git a/configs/B4860QDS_defconfig b/configs/B4860QDS_defconfig new file mode 100644 index 0000000..15b3dfb --- /dev/null +++ b/configs/B4860QDS_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_B4860" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_B4860QDS=y diff --git a/configs/BC3450_defconfig b/configs/BC3450_defconfig new file mode 100644 index 0000000..ecb46e9 --- /dev/null +++ b/configs/BC3450_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_BC3450=y diff --git a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig new file mode 100644 index 0000000..1adc2b8 --- /dev/null +++ b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,NAND,SYS_CLK_100" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_BSC9131RDB=y diff --git a/configs/BSC9131RDB_NAND_defconfig b/configs/BSC9131RDB_NAND_defconfig new file mode 100644 index 0000000..502fa31 --- /dev/null +++ b/configs/BSC9131RDB_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_BSC9131RDB=y diff --git a/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig new file mode 100644 index 0000000..895ae12 --- /dev/null +++ b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,SPIFLASH,SYS_CLK_100" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9131RDB=y diff --git a/configs/BSC9131RDB_SPIFLASH_defconfig b/configs/BSC9131RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..8961976 --- /dev/null +++ b/configs/BSC9131RDB_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9131RDB,SPIFLASH" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9131RDB=y diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig new file mode 100644 index 0000000..8aef0d6 --- /dev/null +++ b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND_SECBOOT,SYS_CLK_100_DDR_100,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig new file mode 100644 index 0000000..3c3b46e --- /dev/null +++ b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND,SYS_CLK_100_DDR_100" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig new file mode 100644 index 0000000..ac31fad --- /dev/null +++ b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND_SECBOOT,SYS_CLK_100_DDR_133,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig new file mode 100644 index 0000000..d2e7391 --- /dev/null +++ b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,NAND,SYS_CLK_100_DDR_133" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig new file mode 100644 index 0000000..b26f6e0 --- /dev/null +++ b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_100,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig new file mode 100644 index 0000000..7eaa32d --- /dev/null +++ b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_100" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig new file mode 100644 index 0000000..13d7794 --- /dev/null +++ b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_133,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig new file mode 100644 index 0000000..7e205c5 --- /dev/null +++ b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SYS_CLK_100_DDR_133" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig new file mode 100644 index 0000000..8e5585a --- /dev/null +++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_100,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig new file mode 100644 index 0000000..6a7920f --- /dev/null +++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_100" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig new file mode 100644 index 0000000..920cf6c --- /dev/null +++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_133,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig new file mode 100644 index 0000000..95a35f2 --- /dev/null +++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SDCARD,SYS_CLK_100_DDR_133" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig new file mode 100644 index 0000000..c55b5a7 --- /dev/null +++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_100,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig new file mode 100644 index 0000000..85e4701 --- /dev/null +++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_100" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig new file mode 100644 index 0000000..7eb3727 --- /dev/null +++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_133,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig new file mode 100644 index 0000000..b8e4e7d --- /dev/null +++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BSC9132QDS,SPIFLASH,SYS_CLK_100_DDR_133" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_BSC9132QDS=y diff --git a/configs/Bananapi_defconfig b/configs/Bananapi_defconfig new file mode 100644 index 0000000..be3d815 --- /dev/null +++ b/configs/Bananapi_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="BANANAPI,SPL,AXP209_POWER,SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI,USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/C29XPCIE_NAND_defconfig b/configs/C29XPCIE_NAND_defconfig new file mode 100644 index 0000000..c932579 --- /dev/null +++ b/configs/C29XPCIE_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_C29XPCIE=y diff --git a/configs/C29XPCIE_SPIFLASH_defconfig b/configs/C29XPCIE_SPIFLASH_defconfig new file mode 100644 index 0000000..2185d9d --- /dev/null +++ b/configs/C29XPCIE_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT,SPIFLASH" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_C29XPCIE=y diff --git a/configs/C29XPCIE_defconfig b/configs/C29XPCIE_defconfig new file mode 100644 index 0000000..2ee3305 --- /dev/null +++ b/configs/C29XPCIE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="C29XPCIE,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_C29XPCIE=y diff --git a/configs/CATcenter_25_defconfig b/configs/CATcenter_25_defconfig new file mode 100644 index 0000000..1a8903c --- /dev/null +++ b/configs/CATcenter_25_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_25" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CATCENTER=y diff --git a/configs/CATcenter_33_defconfig b/configs/CATcenter_33_defconfig new file mode 100644 index 0000000..4b0eb8d --- /dev/null +++ b/configs/CATcenter_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_33" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CATCENTER=y diff --git a/configs/CATcenter_defconfig b/configs/CATcenter_defconfig new file mode 100644 index 0000000..53e00ad --- /dev/null +++ b/configs/CATcenter_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=1" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CATCENTER=y diff --git a/configs/CMS700_defconfig b/configs/CMS700_defconfig new file mode 100644 index 0000000..dd21223 --- /dev/null +++ b/configs/CMS700_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CMS700=y diff --git a/configs/CPC45_ROMBOOT_defconfig b/configs/CPC45_ROMBOOT_defconfig new file mode 100644 index 0000000..4aae7f6 --- /dev/null +++ b/configs/CPC45_ROMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ROM" +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_CPC45=y diff --git a/configs/CPC45_defconfig b/configs/CPC45_defconfig new file mode 100644 index 0000000..77ae66c --- /dev/null +++ b/configs/CPC45_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_CPC45=y diff --git a/configs/CPCI2DP_defconfig b/configs/CPCI2DP_defconfig new file mode 100644 index 0000000..23631e9 --- /dev/null +++ b/configs/CPCI2DP_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CPCI2DP=y diff --git a/configs/CPCI4052_defconfig b/configs/CPCI4052_defconfig new file mode 100644 index 0000000..5d30b79 --- /dev/null +++ b/configs/CPCI4052_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CPCI4052=y diff --git a/configs/CPCI405AB_defconfig b/configs/CPCI405AB_defconfig new file mode 100644 index 0000000..6550fd1 --- /dev/null +++ b/configs/CPCI405AB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CPCI405AB=y diff --git a/configs/CPCI405DT_defconfig b/configs/CPCI405DT_defconfig new file mode 100644 index 0000000..b61f65c --- /dev/null +++ b/configs/CPCI405DT_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CPCI405DT=y diff --git a/configs/CPCI405_defconfig b/configs/CPCI405_defconfig new file mode 100644 index 0000000..1638e2b --- /dev/null +++ b/configs/CPCI405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CPCI405=y diff --git a/configs/CPCI750_defconfig b/configs/CPCI750_defconfig new file mode 100644 index 0000000..abdd4d2 --- /dev/null +++ b/configs/CPCI750_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_CPCI750=y diff --git a/configs/CPCIISER4_defconfig b/configs/CPCIISER4_defconfig new file mode 100644 index 0000000..2a7566d --- /dev/null +++ b/configs/CPCIISER4_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CPCIISER4=y diff --git a/configs/CPU86_ROMBOOT_defconfig b/configs/CPU86_ROMBOOT_defconfig new file mode 100644 index 0000000..41aa7df --- /dev/null +++ b/configs/CPU86_ROMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ROM" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_CPU86=y diff --git a/configs/CPU86_defconfig b/configs/CPU86_defconfig new file mode 100644 index 0000000..f0a4049 --- /dev/null +++ b/configs/CPU86_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_CPU86=y diff --git a/configs/CPU87_ROMBOOT_defconfig b/configs/CPU87_ROMBOOT_defconfig new file mode 100644 index 0000000..ba13b40 --- /dev/null +++ b/configs/CPU87_ROMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ROM" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_CPU87=y diff --git a/configs/CPU87_defconfig b/configs/CPU87_defconfig new file mode 100644 index 0000000..86a5737 --- /dev/null +++ b/configs/CPU87_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_CPU87=y diff --git a/configs/CRAYL1_defconfig b/configs/CRAYL1_defconfig new file mode 100644 index 0000000..ad6cbac --- /dev/null +++ b/configs/CRAYL1_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CRAYL1=y diff --git a/configs/CU824_defconfig b/configs/CU824_defconfig new file mode 100644 index 0000000..0f22188 --- /dev/null +++ b/configs/CU824_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_CU824=y diff --git a/configs/Cubieboard2_FEL_defconfig b/configs/Cubieboard2_FEL_defconfig new file mode 100644 index 0000000..63636b0 --- /dev/null +++ b/configs/Cubieboard2_FEL_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CUBIEBOARD2,SPL_FEL,AXP209_POWER,SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/Cubieboard2_defconfig b/configs/Cubieboard2_defconfig new file mode 100644 index 0000000..fa34c51 --- /dev/null +++ b/configs/Cubieboard2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CUBIEBOARD2,SPL,AXP209_POWER,SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/Cubieboard_defconfig b/configs/Cubieboard_defconfig new file mode 100644 index 0000000..774029c --- /dev/null +++ b/configs/Cubieboard_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CUBIEBOARD,SPL,AXP209_POWER,SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPB(8),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN4I=y diff --git a/configs/Cubietruck_FEL_defconfig b/configs/Cubietruck_FEL_defconfig new file mode 100644 index 0000000..7ebf635 --- /dev/null +++ b/configs/Cubietruck_FEL_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CUBIETRUCK,SPL_FEL,AXP209_POWER,SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPH(12),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig new file mode 100644 index 0000000..fbc9127 --- /dev/null +++ b/configs/Cubietruck_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CUBIETRUCK,SPL,AXP209_POWER,SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPH(12),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/DB64360_defconfig b/configs/DB64360_defconfig new file mode 100644 index 0000000..358b096 --- /dev/null +++ b/configs/DB64360_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_DB64360=y diff --git a/configs/DB64460_defconfig b/configs/DB64460_defconfig new file mode 100644 index 0000000..4ff2fad --- /dev/null +++ b/configs/DB64460_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_DB64460=y diff --git a/configs/DP405_defconfig b/configs/DP405_defconfig new file mode 100644 index 0000000..4d48276 --- /dev/null +++ b/configs/DP405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_DP405=y diff --git a/configs/DU405_defconfig b/configs/DU405_defconfig new file mode 100644 index 0000000..fdfe41b --- /dev/null +++ b/configs/DU405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_DU405=y diff --git a/configs/DU440_defconfig b/configs/DU440_defconfig new file mode 100644 index 0000000..59891fe --- /dev/null +++ b/configs/DU440_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_DU440=y diff --git a/configs/ELPPC_defconfig b/configs/ELPPC_defconfig new file mode 100644 index 0000000..c4694ef --- /dev/null +++ b/configs/ELPPC_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_ELPPC=y diff --git a/configs/ELPT860_defconfig b/configs/ELPT860_defconfig new file mode 100644 index 0000000..d02b313 --- /dev/null +++ b/configs/ELPT860_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_ELPT860=y diff --git a/configs/ESTEEM192E_defconfig b/configs/ESTEEM192E_defconfig new file mode 100644 index 0000000..e6279b8 --- /dev/null +++ b/configs/ESTEEM192E_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_ESTEEM192E=y diff --git a/configs/EVAL5200_defconfig b/configs/EVAL5200_defconfig new file mode 100644 index 0000000..6a272d2 --- /dev/null +++ b/configs/EVAL5200_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="EVAL5200" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TOP5200=y diff --git a/configs/FLAGADM_defconfig b/configs/FLAGADM_defconfig new file mode 100644 index 0000000..6113797 --- /dev/null +++ b/configs/FLAGADM_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_FLAGADM=y diff --git a/configs/FPS850L_defconfig b/configs/FPS850L_defconfig new file mode 100644 index 0000000..e72ccdd --- /dev/null +++ b/configs/FPS850L_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_FPS850L=y diff --git a/configs/FPS860L_defconfig b/configs/FPS860L_defconfig new file mode 100644 index 0000000..643da6a --- /dev/null +++ b/configs/FPS860L_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_FPS860L=y diff --git a/configs/G2000_defconfig b/configs/G2000_defconfig new file mode 100644 index 0000000..a01bc0f --- /dev/null +++ b/configs/G2000_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_G2000=y diff --git a/configs/GEN860T_SC_defconfig b/configs/GEN860T_SC_defconfig new file mode 100644 index 0000000..ff624db --- /dev/null +++ b/configs/GEN860T_SC_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SC" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_GEN860T=y diff --git a/configs/GEN860T_defconfig b/configs/GEN860T_defconfig new file mode 100644 index 0000000..e672623 --- /dev/null +++ b/configs/GEN860T_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_GEN860T=y diff --git a/configs/HH405_defconfig b/configs/HH405_defconfig new file mode 100644 index 0000000..1571f32 --- /dev/null +++ b/configs/HH405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_HH405=y diff --git a/configs/HUB405_defconfig b/configs/HUB405_defconfig new file mode 100644 index 0000000..a39712e --- /dev/null +++ b/configs/HUB405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_HUB405=y diff --git a/configs/HWW1U1A_defconfig b/configs/HWW1U1A_defconfig new file mode 100644 index 0000000..8947be2 --- /dev/null +++ b/configs/HWW1U1A_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_HWW1U1A=y diff --git a/configs/ICU862_100MHz_defconfig b/configs/ICU862_100MHz_defconfig new file mode 100644 index 0000000..72f0dfa --- /dev/null +++ b/configs/ICU862_100MHz_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="100MHz" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_ICU862=y diff --git a/configs/ICU862_defconfig b/configs/ICU862_defconfig new file mode 100644 index 0000000..b58ea05 --- /dev/null +++ b/configs/ICU862_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_ICU862=y diff --git a/configs/IDS8247_defconfig b/configs/IDS8247_defconfig new file mode 100644 index 0000000..b4dd23f --- /dev/null +++ b/configs/IDS8247_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_IDS8247=y diff --git a/configs/IP860_defconfig b/configs/IP860_defconfig new file mode 100644 index 0000000..feb243d --- /dev/null +++ b/configs/IP860_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_IP860=y diff --git a/configs/IPHASE4539_defconfig b/configs/IPHASE4539_defconfig new file mode 100644 index 0000000..d49ea52 --- /dev/null +++ b/configs/IPHASE4539_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_IPHASE4539=y diff --git a/configs/IVML24_128_defconfig b/configs/IVML24_128_defconfig new file mode 100644 index 0000000..f0850f6 --- /dev/null +++ b/configs/IVML24_128_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IVML24_32M" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_IVML24=y diff --git a/configs/IVML24_256_defconfig b/configs/IVML24_256_defconfig new file mode 100644 index 0000000..9c241c2 --- /dev/null +++ b/configs/IVML24_256_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IVML24_64M" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_IVML24=y diff --git a/configs/IVML24_defconfig b/configs/IVML24_defconfig new file mode 100644 index 0000000..0f85d43 --- /dev/null +++ b/configs/IVML24_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IVML24_16M" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_IVML24=y diff --git a/configs/IVMS8_128_defconfig b/configs/IVMS8_128_defconfig new file mode 100644 index 0000000..685d76f --- /dev/null +++ b/configs/IVMS8_128_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IVMS8_32M" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_IVMS8=y diff --git a/configs/IVMS8_256_defconfig b/configs/IVMS8_256_defconfig new file mode 100644 index 0000000..63435d2 --- /dev/null +++ b/configs/IVMS8_256_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IVMS8_64M" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_IVMS8=y diff --git a/configs/IVMS8_defconfig b/configs/IVMS8_defconfig new file mode 100644 index 0000000..3f4087b --- /dev/null +++ b/configs/IVMS8_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IVMS8_16M" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_IVMS8=y diff --git a/configs/JSE_defconfig b/configs/JSE_defconfig new file mode 100644 index 0000000..14c9c2f --- /dev/null +++ b/configs/JSE_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_JSE=y diff --git a/configs/KAREF_defconfig b/configs/KAREF_defconfig new file mode 100644 index 0000000..fcca3c9 --- /dev/null +++ b/configs/KAREF_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_KAREF=y diff --git a/configs/KUP4K_defconfig b/configs/KUP4K_defconfig new file mode 100644 index 0000000..8e9e26d --- /dev/null +++ b/configs/KUP4K_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_KUP4K=y diff --git a/configs/KUP4X_defconfig b/configs/KUP4X_defconfig new file mode 100644 index 0000000..29520c9 --- /dev/null +++ b/configs/KUP4X_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_KUP4X=y diff --git a/configs/Linksprite_pcDuino3_defconfig b/configs/Linksprite_pcDuino3_defconfig new file mode 100644 index 0000000..10ebcef --- /dev/null +++ b/configs/Linksprite_pcDuino3_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PCDUINO3,SPL,AXP209_POWER,SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPH(2),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/Lite5200_LOWBOOT08_defconfig b/configs/Lite5200_LOWBOOT08_defconfig new file mode 100644 index 0000000..9f0cbd8 --- /dev/null +++ b/configs/Lite5200_LOWBOOT08_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/Lite5200_LOWBOOT_defconfig b/configs/Lite5200_LOWBOOT_defconfig new file mode 100644 index 0000000..ff1552f --- /dev/null +++ b/configs/Lite5200_LOWBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/Lite5200_defconfig b/configs/Lite5200_defconfig new file mode 100644 index 0000000..49fdb3b --- /dev/null +++ b/configs/Lite5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/M5208EVBE_defconfig b/configs/M5208EVBE_defconfig new file mode 100644 index 0000000..c727683 --- /dev/null +++ b/configs/M5208EVBE_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M5208EVBE=y diff --git a/configs/M52277EVB_defconfig b/configs/M52277EVB_defconfig new file mode 100644 index 0000000..bcf2359 --- /dev/null +++ b/configs/M52277EVB_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_SPANSION_BOOT,SYS_TEXT_BASE=0x00000000" +CONFIG_M68K=y +CONFIG_TARGET_M52277EVB=y diff --git a/configs/M52277EVB_stmicro_defconfig b/configs/M52277EVB_stmicro_defconfig new file mode 100644 index 0000000..0e49bc3 --- /dev/null +++ b/configs/M52277EVB_stmicro_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CF_SBF,SYS_STMICRO_BOOT,SYS_TEXT_BASE=0x43E00000" +CONFIG_M68K=y +CONFIG_TARGET_M52277EVB=y diff --git a/configs/M5235EVB_Flash32_defconfig b/configs/M5235EVB_Flash32_defconfig new file mode 100644 index 0000000..e6facec --- /dev/null +++ b/configs/M5235EVB_Flash32_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NORFLASH_PS32BIT,SYS_TEXT_BASE=0xFFC00000" +CONFIG_M68K=y +CONFIG_TARGET_M5235EVB=y diff --git a/configs/M5235EVB_defconfig b/configs/M5235EVB_defconfig new file mode 100644 index 0000000..04b11ec --- /dev/null +++ b/configs/M5235EVB_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFFE00000" +CONFIG_M68K=y +CONFIG_TARGET_M5235EVB=y diff --git a/configs/M5249EVB_defconfig b/configs/M5249EVB_defconfig new file mode 100644 index 0000000..fb29274 --- /dev/null +++ b/configs/M5249EVB_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M5249EVB=y diff --git a/configs/M5253DEMO_defconfig b/configs/M5253DEMO_defconfig new file mode 100644 index 0000000..68cad2f --- /dev/null +++ b/configs/M5253DEMO_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M5253DEMO=y diff --git a/configs/M5253EVBE_defconfig b/configs/M5253EVBE_defconfig new file mode 100644 index 0000000..5c562fe --- /dev/null +++ b/configs/M5253EVBE_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M5253EVBE=y diff --git a/configs/M5272C3_defconfig b/configs/M5272C3_defconfig new file mode 100644 index 0000000..fdb872a --- /dev/null +++ b/configs/M5272C3_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M5272C3=y diff --git a/configs/M5275EVB_defconfig b/configs/M5275EVB_defconfig new file mode 100644 index 0000000..1e33649 --- /dev/null +++ b/configs/M5275EVB_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M5275EVB=y diff --git a/configs/M5282EVB_defconfig b/configs/M5282EVB_defconfig new file mode 100644 index 0000000..66d742f --- /dev/null +++ b/configs/M5282EVB_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M5282EVB=y diff --git a/configs/M53017EVB_defconfig b/configs/M53017EVB_defconfig new file mode 100644 index 0000000..d83e638 --- /dev/null +++ b/configs/M53017EVB_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_M53017EVB=y diff --git a/configs/M5329AFEE_defconfig b/configs/M5329AFEE_defconfig new file mode 100644 index 0000000..048d3a9 --- /dev/null +++ b/configs/M5329AFEE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NANDFLASH_SIZE=0" +CONFIG_M68K=y +CONFIG_TARGET_M5329EVB=y diff --git a/configs/M5329BFEE_defconfig b/configs/M5329BFEE_defconfig new file mode 100644 index 0000000..01e3d6a --- /dev/null +++ b/configs/M5329BFEE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NANDFLASH_SIZE=16" +CONFIG_M68K=y +CONFIG_TARGET_M5329EVB=y diff --git a/configs/M5373EVB_defconfig b/configs/M5373EVB_defconfig new file mode 100644 index 0000000..51a7b81 --- /dev/null +++ b/configs/M5373EVB_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NANDFLASH_SIZE=16" +CONFIG_M68K=y +CONFIG_TARGET_M5373EVB=y diff --git a/configs/M54418TWR_defconfig b/configs/M54418TWR_defconfig new file mode 100644 index 0000000..8f18bbe --- /dev/null +++ b/configs/M54418TWR_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CF_SBF,SYS_SERIAL_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000" +CONFIG_M68K=y +CONFIG_TARGET_M54418TWR=y diff --git a/configs/M54418TWR_nand_mii_defconfig b/configs/M54418TWR_nand_mii_defconfig new file mode 100644 index 0000000..4b1c6c9 --- /dev/null +++ b/configs/M54418TWR_nand_mii_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_NAND_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=25000000" +CONFIG_M68K=y +CONFIG_TARGET_M54418TWR=y diff --git a/configs/M54418TWR_nand_rmii_defconfig b/configs/M54418TWR_nand_rmii_defconfig new file mode 100644 index 0000000..72cc83c --- /dev/null +++ b/configs/M54418TWR_nand_rmii_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_NAND_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000" +CONFIG_M68K=y +CONFIG_TARGET_M54418TWR=y diff --git a/configs/M54418TWR_nand_rmii_lowfreq_defconfig b/configs/M54418TWR_nand_rmii_lowfreq_defconfig new file mode 100644 index 0000000..0bc929f --- /dev/null +++ b/configs/M54418TWR_nand_rmii_lowfreq_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_NAND_BOOT,LOW_MCFCLK,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000" +CONFIG_M68K=y +CONFIG_TARGET_M54418TWR=y diff --git a/configs/M54418TWR_serial_mii_defconfig b/configs/M54418TWR_serial_mii_defconfig new file mode 100644 index 0000000..93fe401 --- /dev/null +++ b/configs/M54418TWR_serial_mii_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CF_SBF,SYS_SERIAL_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=25000000" +CONFIG_M68K=y +CONFIG_TARGET_M54418TWR=y diff --git a/configs/M54418TWR_serial_rmii_defconfig b/configs/M54418TWR_serial_rmii_defconfig new file mode 100644 index 0000000..8f18bbe --- /dev/null +++ b/configs/M54418TWR_serial_rmii_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CF_SBF,SYS_SERIAL_BOOT,SYS_TEXT_BASE=0x47E00000,SYS_INPUT_CLKSRC=50000000" +CONFIG_M68K=y +CONFIG_TARGET_M54418TWR=y diff --git a/configs/M54451EVB_defconfig b/configs/M54451EVB_defconfig new file mode 100644 index 0000000..af02731 --- /dev/null +++ b/configs/M54451EVB_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x00000000,SYS_INPUT_CLKSRC=24000000" +CONFIG_M68K=y +CONFIG_TARGET_M54451EVB=y diff --git a/configs/M54451EVB_stmicro_defconfig b/configs/M54451EVB_stmicro_defconfig new file mode 100644 index 0000000..4a3c87f --- /dev/null +++ b/configs/M54451EVB_stmicro_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CF_SBF,SYS_STMICRO_BOOT,SYS_TEXT_BASE=0x47e00000,SYS_INPUT_CLKSRC=24000000" +CONFIG_M68K=y +CONFIG_TARGET_M54451EVB=y diff --git a/configs/M54455EVB_a66_defconfig b/configs/M54455EVB_a66_defconfig new file mode 100644 index 0000000..b05a12e --- /dev/null +++ b/configs/M54455EVB_a66_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_ATMEL_BOOT,SYS_TEXT_BASE=0x04000000,SYS_INPUT_CLKSRC=66666666" +CONFIG_M68K=y +CONFIG_TARGET_M54455EVB=y diff --git a/configs/M54455EVB_defconfig b/configs/M54455EVB_defconfig new file mode 100644 index 0000000..ffd3407 --- /dev/null +++ b/configs/M54455EVB_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_ATMEL_BOOT,SYS_TEXT_BASE=0x04000000,SYS_INPUT_CLKSRC=33333333" +CONFIG_M68K=y +CONFIG_TARGET_M54455EVB=y diff --git a/configs/M54455EVB_i66_defconfig b/configs/M54455EVB_i66_defconfig new file mode 100644 index 0000000..90cf787 --- /dev/null +++ b/configs/M54455EVB_i66_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_INTEL_BOOT,SYS_TEXT_BASE=0x00000000,SYS_INPUT_CLKSRC=66666666" +CONFIG_M68K=y +CONFIG_TARGET_M54455EVB=y diff --git a/configs/M54455EVB_intel_defconfig b/configs/M54455EVB_intel_defconfig new file mode 100644 index 0000000..a3d69db --- /dev/null +++ b/configs/M54455EVB_intel_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_INTEL_BOOT,SYS_TEXT_BASE=0x00000000,SYS_INPUT_CLKSRC=33333333" +CONFIG_M68K=y +CONFIG_TARGET_M54455EVB=y diff --git a/configs/M54455EVB_stm33_defconfig b/configs/M54455EVB_stm33_defconfig new file mode 100644 index 0000000..cf33d0f --- /dev/null +++ b/configs/M54455EVB_stm33_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_STMICRO_BOOT,CF_SBF,SYS_TEXT_BASE=0x4FE00000,SYS_INPUT_CLKSRC=33333333" +CONFIG_M68K=y +CONFIG_TARGET_M54455EVB=y diff --git a/configs/M5475AFE_defconfig b/configs/M5475AFE_defconfig new file mode 100644 index 0000000..28fd0ec --- /dev/null +++ b/configs/M5475AFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64" +CONFIG_M68K=y +CONFIG_TARGET_M5475EVB=y diff --git a/configs/M5475BFE_defconfig b/configs/M5475BFE_defconfig new file mode 100644 index 0000000..329f3e3 --- /dev/null +++ b/configs/M5475BFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16" +CONFIG_M68K=y +CONFIG_TARGET_M5475EVB=y diff --git a/configs/M5475CFE_defconfig b/configs/M5475CFE_defconfig new file mode 100644 index 0000000..8dd75db --- /dev/null +++ b/configs/M5475CFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16,SYS_VIDEO,SYS_USBCTRL" +CONFIG_M68K=y +CONFIG_TARGET_M5475EVB=y diff --git a/configs/M5475DFE_defconfig b/configs/M5475DFE_defconfig new file mode 100644 index 0000000..a6288da --- /dev/null +++ b/configs/M5475DFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_USBCTRL" +CONFIG_M68K=y +CONFIG_TARGET_M5475EVB=y diff --git a/configs/M5475EFE_defconfig b/configs/M5475EFE_defconfig new file mode 100644 index 0000000..19640a2 --- /dev/null +++ b/configs/M5475EFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_VIDEO,SYS_USBCTRL" +CONFIG_M68K=y +CONFIG_TARGET_M5475EVB=y diff --git a/configs/M5475FFE_defconfig b/configs/M5475FFE_defconfig new file mode 100644 index 0000000..0201d38 --- /dev/null +++ b/configs/M5475FFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=133333333,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=32,SYS_VIDEO,SYS_USBCTRL,SYS_DRAMSZ1=64" +CONFIG_M68K=y +CONFIG_TARGET_M5475EVB=y diff --git a/configs/M5475GFE_defconfig b/configs/M5475GFE_defconfig new file mode 100644 index 0000000..b876868 --- /dev/null +++ b/configs/M5475GFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=133333333,SYS_BOOTSZ=4,SYS_DRAMSZ=64" +CONFIG_M68K=y +CONFIG_TARGET_M5475EVB=y diff --git a/configs/M5485AFE_defconfig b/configs/M5485AFE_defconfig new file mode 100644 index 0000000..612218d --- /dev/null +++ b/configs/M5485AFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/M5485BFE_defconfig b/configs/M5485BFE_defconfig new file mode 100644 index 0000000..697feb0 --- /dev/null +++ b/configs/M5485BFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/M5485CFE_defconfig b/configs/M5485CFE_defconfig new file mode 100644 index 0000000..46c0d08 --- /dev/null +++ b/configs/M5485CFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16,SYS_VIDEO,SYS_USBCTRL" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/M5485DFE_defconfig b/configs/M5485DFE_defconfig new file mode 100644 index 0000000..ad6248d --- /dev/null +++ b/configs/M5485DFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_USBCTRL" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/M5485EFE_defconfig b/configs/M5485EFE_defconfig new file mode 100644 index 0000000..5f27496 --- /dev/null +++ b/configs/M5485EFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_VIDEO,SYS_USBCTRL" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/M5485FFE_defconfig b/configs/M5485FFE_defconfig new file mode 100644 index 0000000..b1da743 --- /dev/null +++ b/configs/M5485FFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=32,SYS_VIDEO,SYS_USBCTRL,SYS_DRAMSZ1=64" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/M5485GFE_defconfig b/configs/M5485GFE_defconfig new file mode 100644 index 0000000..578d24a --- /dev/null +++ b/configs/M5485GFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=4,SYS_DRAMSZ=64" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/M5485HFE_defconfig b/configs/M5485HFE_defconfig new file mode 100644 index 0000000..c632055 --- /dev/null +++ b/configs/M5485HFE_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BUSCLK=100000000,SYS_BOOTSZ=2,SYS_DRAMSZ=64,SYS_NOR1SZ=16,SYS_VIDEO" +CONFIG_M68K=y +CONFIG_TARGET_M5485EVB=y diff --git a/configs/MERGERBOX_defconfig b/configs/MERGERBOX_defconfig new file mode 100644 index 0000000..34a527e --- /dev/null +++ b/configs/MERGERBOX_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MERGERBOX=y diff --git a/configs/METROBOX_defconfig b/configs/METROBOX_defconfig new file mode 100644 index 0000000..14b471a --- /dev/null +++ b/configs/METROBOX_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_METROBOX=y diff --git a/configs/MHPC_defconfig b/configs/MHPC_defconfig new file mode 100644 index 0000000..b05d3c4 --- /dev/null +++ b/configs/MHPC_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_MHPC=y diff --git a/configs/MINI5200_defconfig b/configs/MINI5200_defconfig new file mode 100644 index 0000000..dfe853e --- /dev/null +++ b/configs/MINI5200_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MINI5200" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TOP5200=y diff --git a/configs/MIP405T_defconfig b/configs/MIP405T_defconfig new file mode 100644 index 0000000..304d890 --- /dev/null +++ b/configs/MIP405T_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MIP405T" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_MIP405=y diff --git a/configs/MIP405_defconfig b/configs/MIP405_defconfig new file mode 100644 index 0000000..57004e8 --- /dev/null +++ b/configs/MIP405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_MIP405=y diff --git a/configs/MPC8266ADS_defconfig b/configs/MPC8266ADS_defconfig new file mode 100644 index 0000000..485c842 --- /dev/null +++ b/configs/MPC8266ADS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_MPC8266ADS=y diff --git a/configs/MPC8308RDB_defconfig b/configs/MPC8308RDB_defconfig new file mode 100644 index 0000000..64717ec --- /dev/null +++ b/configs/MPC8308RDB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8308RDB=y diff --git a/configs/MPC8313ERDB_33_defconfig b/configs/MPC8313ERDB_33_defconfig new file mode 100644 index 0000000..ca6c304 --- /dev/null +++ b/configs/MPC8313ERDB_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_33MHZ" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8313ERDB=y diff --git a/configs/MPC8313ERDB_66_defconfig b/configs/MPC8313ERDB_66_defconfig new file mode 100644 index 0000000..974bdf9 --- /dev/null +++ b/configs/MPC8313ERDB_66_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_66MHZ" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8313ERDB=y diff --git a/configs/MPC8313ERDB_NAND_33_defconfig b/configs/MPC8313ERDB_NAND_33_defconfig new file mode 100644 index 0000000..3a55931 --- /dev/null +++ b/configs/MPC8313ERDB_NAND_33_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SYS_33MHZ,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC83xx=y ++S:CONFIG_TARGET_MPC8313ERDB=y diff --git a/configs/MPC8313ERDB_NAND_66_defconfig b/configs/MPC8313ERDB_NAND_66_defconfig new file mode 100644 index 0000000..180316b --- /dev/null +++ b/configs/MPC8313ERDB_NAND_66_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SYS_66MHZ,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC83xx=y ++S:CONFIG_TARGET_MPC8313ERDB=y diff --git a/configs/MPC8315ERDB_defconfig b/configs/MPC8315ERDB_defconfig new file mode 100644 index 0000000..ebebbed --- /dev/null +++ b/configs/MPC8315ERDB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8315ERDB=y diff --git a/configs/MPC8323ERDB_defconfig b/configs/MPC8323ERDB_defconfig new file mode 100644 index 0000000..7c03842 --- /dev/null +++ b/configs/MPC8323ERDB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8323ERDB=y diff --git a/configs/MPC832XEMDS_ATM_defconfig b/configs/MPC832XEMDS_ATM_defconfig new file mode 100644 index 0000000..e1ba08d --- /dev/null +++ b/configs/MPC832XEMDS_ATM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC832XEMDS=y diff --git a/configs/MPC832XEMDS_HOST_33_defconfig b/configs/MPC832XEMDS_HOST_33_defconfig new file mode 100644 index 0000000..55df0f6 --- /dev/null +++ b/configs/MPC832XEMDS_HOST_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_33M,PQ_MDS_PIB=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC832XEMDS=y diff --git a/configs/MPC832XEMDS_HOST_66_defconfig b/configs/MPC832XEMDS_HOST_66_defconfig new file mode 100644 index 0000000..1ceee68 --- /dev/null +++ b/configs/MPC832XEMDS_HOST_66_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_66M,PQ_MDS_PIB=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC832XEMDS=y diff --git a/configs/MPC832XEMDS_SLAVE_defconfig b/configs/MPC832XEMDS_SLAVE_defconfig new file mode 100644 index 0000000..ef67be5 --- /dev/null +++ b/configs/MPC832XEMDS_SLAVE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,PCISLAVE" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC832XEMDS=y diff --git a/configs/MPC832XEMDS_defconfig b/configs/MPC832XEMDS_defconfig new file mode 100644 index 0000000..0398472 --- /dev/null +++ b/configs/MPC832XEMDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC832XEMDS=y diff --git a/configs/MPC8349EMDS_defconfig b/configs/MPC8349EMDS_defconfig new file mode 100644 index 0000000..f6af218 --- /dev/null +++ b/configs/MPC8349EMDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8349EMDS=y diff --git a/configs/MPC8349ITXGP_defconfig b/configs/MPC8349ITXGP_defconfig new file mode 100644 index 0000000..f853309 --- /dev/null +++ b/configs/MPC8349ITXGP_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITXGP,SYS_TEXT_BASE=0xFE000000" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8349ITX=y diff --git a/configs/MPC8349ITX_LOWBOOT_defconfig b/configs/MPC8349ITX_LOWBOOT_defconfig new file mode 100644 index 0000000..5321801 --- /dev/null +++ b/configs/MPC8349ITX_LOWBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITX,SYS_TEXT_BASE=0xFE000000" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8349ITX=y diff --git a/configs/MPC8349ITX_defconfig b/configs/MPC8349ITX_defconfig new file mode 100644 index 0000000..83f25ae --- /dev/null +++ b/configs/MPC8349ITX_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8349ITX" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8349ITX=y diff --git a/configs/MPC8360EMDS_33_ATM_defconfig b/configs/MPC8360EMDS_33_ATM_defconfig new file mode 100644 index 0000000..dc325b1 --- /dev/null +++ b/configs/MPC8360EMDS_33_ATM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_33MHZ,PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_33_HOST_33_defconfig b/configs/MPC8360EMDS_33_HOST_33_defconfig new file mode 100644 index 0000000..fba273d --- /dev/null +++ b/configs/MPC8360EMDS_33_HOST_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_33MHZ,PCI,PCI_33M,PQ_MDS_PIB=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_33_HOST_66_defconfig b/configs/MPC8360EMDS_33_HOST_66_defconfig new file mode 100644 index 0000000..e0cf6da --- /dev/null +++ b/configs/MPC8360EMDS_33_HOST_66_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_33MHZ,PCI,PCI_66M,PQ_MDS_PIB=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_33_SLAVE_defconfig b/configs/MPC8360EMDS_33_SLAVE_defconfig new file mode 100644 index 0000000..c3f74fc --- /dev/null +++ b/configs/MPC8360EMDS_33_SLAVE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_33MHZ,PCI,PCISLAVE" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_33_defconfig b/configs/MPC8360EMDS_33_defconfig new file mode 100644 index 0000000..60c6ddb --- /dev/null +++ b/configs/MPC8360EMDS_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_33MHZ" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_66_ATM_defconfig b/configs/MPC8360EMDS_66_ATM_defconfig new file mode 100644 index 0000000..16f12fb --- /dev/null +++ b/configs/MPC8360EMDS_66_ATM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_66MHZ,PQ_MDS_PIB=1,PQ_MDS_PIB_ATM=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_66_HOST_33_defconfig b/configs/MPC8360EMDS_66_HOST_33_defconfig new file mode 100644 index 0000000..797a584 --- /dev/null +++ b/configs/MPC8360EMDS_66_HOST_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_66MHZ,PCI,PCI_33M,PQ_MDS_PIB=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_66_HOST_66_defconfig b/configs/MPC8360EMDS_66_HOST_66_defconfig new file mode 100644 index 0000000..a887c29 --- /dev/null +++ b/configs/MPC8360EMDS_66_HOST_66_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_66MHZ,PCI,PCI_66M,PQ_MDS_PIB=1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_66_SLAVE_defconfig b/configs/MPC8360EMDS_66_SLAVE_defconfig new file mode 100644 index 0000000..4442c61 --- /dev/null +++ b/configs/MPC8360EMDS_66_SLAVE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_66MHZ,PCI,PCISLAVE" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360EMDS_66_defconfig b/configs/MPC8360EMDS_66_defconfig new file mode 100644 index 0000000..fce95dd --- /dev/null +++ b/configs/MPC8360EMDS_66_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_66MHZ" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360EMDS=y diff --git a/configs/MPC8360ERDK_33_defconfig b/configs/MPC8360ERDK_33_defconfig new file mode 100644 index 0000000..91c47b7 --- /dev/null +++ b/configs/MPC8360ERDK_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_33MHZ" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360ERDK=y diff --git a/configs/MPC8360ERDK_defconfig b/configs/MPC8360ERDK_defconfig new file mode 100644 index 0000000..7e9fa59 --- /dev/null +++ b/configs/MPC8360ERDK_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8360ERDK=y diff --git a/configs/MPC837XEMDS_HOST_defconfig b/configs/MPC837XEMDS_HOST_defconfig new file mode 100644 index 0000000..d3be43a --- /dev/null +++ b/configs/MPC837XEMDS_HOST_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC837XEMDS=y diff --git a/configs/MPC837XEMDS_defconfig b/configs/MPC837XEMDS_defconfig new file mode 100644 index 0000000..d3b7c1d --- /dev/null +++ b/configs/MPC837XEMDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC837XEMDS=y diff --git a/configs/MPC837XERDB_defconfig b/configs/MPC837XERDB_defconfig new file mode 100644 index 0000000..bb4411a --- /dev/null +++ b/configs/MPC837XERDB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC837XERDB=y diff --git a/configs/MPC8536DS_36BIT_defconfig b/configs/MPC8536DS_36BIT_defconfig new file mode 100644 index 0000000..45dc91a --- /dev/null +++ b/configs/MPC8536DS_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8536DS=y diff --git a/configs/MPC8536DS_SDCARD_defconfig b/configs/MPC8536DS_SDCARD_defconfig new file mode 100644 index 0000000..4a9f0cd --- /dev/null +++ b/configs/MPC8536DS_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SDCARD" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8536DS=y diff --git a/configs/MPC8536DS_SPIFLASH_defconfig b/configs/MPC8536DS_SPIFLASH_defconfig new file mode 100644 index 0000000..2d357e8 --- /dev/null +++ b/configs/MPC8536DS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8536DS=y diff --git a/configs/MPC8536DS_defconfig b/configs/MPC8536DS_defconfig new file mode 100644 index 0000000..62edc91 --- /dev/null +++ b/configs/MPC8536DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8536DS=y diff --git a/configs/MPC8540ADS_defconfig b/configs/MPC8540ADS_defconfig new file mode 100644 index 0000000..41af349 --- /dev/null +++ b/configs/MPC8540ADS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8540ADS=y diff --git a/configs/MPC8541CDS_defconfig b/configs/MPC8541CDS_defconfig new file mode 100644 index 0000000..bc9c246 --- /dev/null +++ b/configs/MPC8541CDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8541CDS=y diff --git a/configs/MPC8541CDS_legacy_defconfig b/configs/MPC8541CDS_legacy_defconfig new file mode 100644 index 0000000..502fbfc --- /dev/null +++ b/configs/MPC8541CDS_legacy_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="LEGACY" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8541CDS=y diff --git a/configs/MPC8544DS_defconfig b/configs/MPC8544DS_defconfig new file mode 100644 index 0000000..faeaa94 --- /dev/null +++ b/configs/MPC8544DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8544DS=y diff --git a/configs/MPC8548CDS_36BIT_defconfig b/configs/MPC8548CDS_36BIT_defconfig new file mode 100644 index 0000000..438ea85 --- /dev/null +++ b/configs/MPC8548CDS_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8548CDS=y diff --git a/configs/MPC8548CDS_defconfig b/configs/MPC8548CDS_defconfig new file mode 100644 index 0000000..ba52e94 --- /dev/null +++ b/configs/MPC8548CDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8548CDS=y diff --git a/configs/MPC8548CDS_legacy_defconfig b/configs/MPC8548CDS_legacy_defconfig new file mode 100644 index 0000000..e027b2f --- /dev/null +++ b/configs/MPC8548CDS_legacy_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="LEGACY" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8548CDS=y diff --git a/configs/MPC8555CDS_defconfig b/configs/MPC8555CDS_defconfig new file mode 100644 index 0000000..3bdbb0c --- /dev/null +++ b/configs/MPC8555CDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8555CDS=y diff --git a/configs/MPC8555CDS_legacy_defconfig b/configs/MPC8555CDS_legacy_defconfig new file mode 100644 index 0000000..3040905 --- /dev/null +++ b/configs/MPC8555CDS_legacy_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="LEGACY" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8555CDS=y diff --git a/configs/MPC8560ADS_defconfig b/configs/MPC8560ADS_defconfig new file mode 100644 index 0000000..aa84d28 --- /dev/null +++ b/configs/MPC8560ADS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8560ADS=y diff --git a/configs/MPC8568MDS_defconfig b/configs/MPC8568MDS_defconfig new file mode 100644 index 0000000..ac0ec8c --- /dev/null +++ b/configs/MPC8568MDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8568MDS=y diff --git a/configs/MPC8569MDS_ATM_defconfig b/configs/MPC8569MDS_ATM_defconfig new file mode 100644 index 0000000..5730180 --- /dev/null +++ b/configs/MPC8569MDS_ATM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="ATM" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8569MDS=y diff --git a/configs/MPC8569MDS_defconfig b/configs/MPC8569MDS_defconfig new file mode 100644 index 0000000..81fb82a --- /dev/null +++ b/configs/MPC8569MDS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8569MDS=y diff --git a/configs/MPC8572DS_36BIT_defconfig b/configs/MPC8572DS_36BIT_defconfig new file mode 100644 index 0000000..9a26a59 --- /dev/null +++ b/configs/MPC8572DS_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8572DS=y diff --git a/configs/MPC8572DS_defconfig b/configs/MPC8572DS_defconfig new file mode 100644 index 0000000..dde9eb2 --- /dev/null +++ b/configs/MPC8572DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_MPC8572DS=y diff --git a/configs/MPC8610HPCD_defconfig b/configs/MPC8610HPCD_defconfig new file mode 100644 index 0000000..f4e8951 --- /dev/null +++ b/configs/MPC8610HPCD_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC86xx=y +CONFIG_TARGET_MPC8610HPCD=y diff --git a/configs/MPC8641HPCN_36BIT_defconfig b/configs/MPC8641HPCN_36BIT_defconfig new file mode 100644 index 0000000..525fa06 --- /dev/null +++ b/configs/MPC8641HPCN_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PHYS_64BIT" +CONFIG_PPC=y +CONFIG_MPC86xx=y +CONFIG_TARGET_MPC8641HPCN=y diff --git a/configs/MPC8641HPCN_defconfig b/configs/MPC8641HPCN_defconfig new file mode 100644 index 0000000..6c117d5 --- /dev/null +++ b/configs/MPC8641HPCN_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC86xx=y +CONFIG_TARGET_MPC8641HPCN=y diff --git a/configs/MUSENKI_defconfig b/configs/MUSENKI_defconfig new file mode 100644 index 0000000..586364c --- /dev/null +++ b/configs/MUSENKI_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_MUSENKI=y diff --git a/configs/MVBC_P_defconfig b/configs/MVBC_P_defconfig new file mode 100644 index 0000000..b0351fd --- /dev/null +++ b/configs/MVBC_P_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MVBC_P" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MVBC_P=y diff --git a/configs/MVBLM7_defconfig b/configs/MVBLM7_defconfig new file mode 100644 index 0000000..cc81b5c --- /dev/null +++ b/configs/MVBLM7_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MVBLM7=y diff --git a/configs/MVBLUE_defconfig b/configs/MVBLUE_defconfig new file mode 100644 index 0000000..f979983 --- /dev/null +++ b/configs/MVBLUE_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_MVBLUE=y diff --git a/configs/MVSMR_defconfig b/configs/MVSMR_defconfig new file mode 100644 index 0000000..a84c173 --- /dev/null +++ b/configs/MVSMR_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MVSMR=y diff --git a/configs/Mele_A1000G_defconfig b/configs/Mele_A1000G_defconfig new file mode 100644 index 0000000..2079279 --- /dev/null +++ b/configs/Mele_A1000G_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MELE_A1000G,SPL,AXP209_POWER,SUNXI_EMAC,MACPWR=SUNXI_GPH(15),AHCI,USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN4I=y diff --git a/configs/Mele_A1000_defconfig b/configs/Mele_A1000_defconfig new file mode 100644 index 0000000..13528ab --- /dev/null +++ b/configs/Mele_A1000_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MELE_A1000,SPL,AXP209_POWER,SUNXI_EMAC,MACPWR=SUNXI_GPH(15),AHCI,USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN4I=y diff --git a/configs/MigoR_defconfig b/configs/MigoR_defconfig new file mode 100644 index 0000000..dd79ff5 --- /dev/null +++ b/configs/MigoR_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_MIGOR=y diff --git a/configs/Mini-X-1Gb_defconfig b/configs/Mini-X-1Gb_defconfig new file mode 100644 index 0000000..61fa1de --- /dev/null +++ b/configs/Mini-X-1Gb_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MINI_X_1GB,SPL,AXP209_POWER,USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN4I=y diff --git a/configs/Mini-X_defconfig b/configs/Mini-X_defconfig new file mode 100644 index 0000000..ceb02c5 --- /dev/null +++ b/configs/Mini-X_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MINI_X,SPL,AXP209_POWER,USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN4I=y diff --git a/configs/MiniFAP_defconfig b/configs/MiniFAP_defconfig new file mode 100644 index 0000000..8eccf26 --- /dev/null +++ b/configs/MiniFAP_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MINIFAP" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/NETVIA_V2_defconfig b/configs/NETVIA_V2_defconfig new file mode 100644 index 0000000..2715910 --- /dev/null +++ b/configs/NETVIA_V2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="NETVIA_VERSION=2" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_NETVIA=y diff --git a/configs/NETVIA_defconfig b/configs/NETVIA_defconfig new file mode 100644 index 0000000..27c8f2b --- /dev/null +++ b/configs/NETVIA_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="NETVIA_VERSION=1" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_NETVIA=y diff --git a/configs/NSCU_defconfig b/configs/NSCU_defconfig new file mode 100644 index 0000000..be96cbd --- /dev/null +++ b/configs/NSCU_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_NSCU=y diff --git a/configs/O2D300_defconfig b/configs/O2D300_defconfig new file mode 100644 index 0000000..c63b5da --- /dev/null +++ b/configs/O2D300_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2D300=y diff --git a/configs/O2DNT2_RAMBOOT_defconfig b/configs/O2DNT2_RAMBOOT_defconfig new file mode 100644 index 0000000..49e60ab --- /dev/null +++ b/configs/O2DNT2_RAMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x00100000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2DNT2=y diff --git a/configs/O2DNT2_defconfig b/configs/O2DNT2_defconfig new file mode 100644 index 0000000..9df3b88 --- /dev/null +++ b/configs/O2DNT2_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2DNT2=y diff --git a/configs/O2D_defconfig b/configs/O2D_defconfig new file mode 100644 index 0000000..f2d3663 --- /dev/null +++ b/configs/O2D_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2D=y diff --git a/configs/O2I_defconfig b/configs/O2I_defconfig new file mode 100644 index 0000000..84db574 --- /dev/null +++ b/configs/O2I_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2I=y diff --git a/configs/O2MNT_O2M110_defconfig b/configs/O2MNT_O2M110_defconfig new file mode 100644 index 0000000..12428de --- /dev/null +++ b/configs/O2MNT_O2M110_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M110\"" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2MNT=y diff --git a/configs/O2MNT_O2M112_defconfig b/configs/O2MNT_O2M112_defconfig new file mode 100644 index 0000000..a56329a --- /dev/null +++ b/configs/O2MNT_O2M112_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M112\"" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2MNT=y diff --git a/configs/O2MNT_O2M113_defconfig b/configs/O2MNT_O2M113_defconfig new file mode 100644 index 0000000..03f54ca --- /dev/null +++ b/configs/O2MNT_O2M113_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="IFM_SENSOR_TYPE=\"O2M113\"" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2MNT=y diff --git a/configs/O2MNT_defconfig b/configs/O2MNT_defconfig new file mode 100644 index 0000000..23c4dc3 --- /dev/null +++ b/configs/O2MNT_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O2MNT=y diff --git a/configs/O3DNT_defconfig b/configs/O3DNT_defconfig new file mode 100644 index 0000000..1f28a43 --- /dev/null +++ b/configs/O3DNT_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_O3DNT=y diff --git a/configs/OCRTC_defconfig b/configs/OCRTC_defconfig new file mode 100644 index 0000000..f2fd0c5 --- /dev/null +++ b/configs/OCRTC_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_OCRTC=y diff --git a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig new file mode 100644 index 0000000..c441d9f --- /dev/null +++ b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,NAND_SECBOOT,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig new file mode 100644 index 0000000..b13024d --- /dev/null +++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig new file mode 100644 index 0000000..197141a --- /dev/null +++ b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_36BIT_NOR_defconfig b/configs/P1010RDB-PA_36BIT_NOR_defconfig new file mode 100644 index 0000000..8739428 --- /dev/null +++ b/configs/P1010RDB-PA_36BIT_NOR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..944d52f --- /dev/null +++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig new file mode 100644 index 0000000..2dae76c --- /dev/null +++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SPIFLASH,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..7cb82ef --- /dev/null +++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig new file mode 100644 index 0000000..c3c30fa --- /dev/null +++ b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,NAND_SECBOOT,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig new file mode 100644 index 0000000..fdf0777 --- /dev/null +++ b/configs/P1010RDB-PA_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig new file mode 100644 index 0000000..9769a2f --- /dev/null +++ b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_NOR_defconfig b/configs/P1010RDB-PA_NOR_defconfig new file mode 100644 index 0000000..8935503 --- /dev/null +++ b/configs/P1010RDB-PA_NOR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig new file mode 100644 index 0000000..8d6ab18 --- /dev/null +++ b/configs/P1010RDB-PA_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig new file mode 100644 index 0000000..76499d9 --- /dev/null +++ b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SPIFLASH,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig new file mode 100644 index 0000000..869b1a4 --- /dev/null +++ b/configs/P1010RDB-PA_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PA,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig new file mode 100644 index 0000000..be6fe06 --- /dev/null +++ b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,NAND_SECBOOT,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig new file mode 100644 index 0000000..dd5277d --- /dev/null +++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig new file mode 100644 index 0000000..90e278d3 --- /dev/null +++ b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_36BIT_NOR_defconfig b/configs/P1010RDB-PB_36BIT_NOR_defconfig new file mode 100644 index 0000000..ac23218 --- /dev/null +++ b/configs/P1010RDB-PB_36BIT_NOR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..f1900fe --- /dev/null +++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig new file mode 100644 index 0000000..e2a379d --- /dev/null +++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SPIFLASH,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..1b24dba --- /dev/null +++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig new file mode 100644 index 0000000..de34914 --- /dev/null +++ b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,NAND_SECBOOT,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig new file mode 100644 index 0000000..0125164 --- /dev/null +++ b/configs/P1010RDB-PB_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig new file mode 100644 index 0000000..78221af --- /dev/null +++ b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_NOR_defconfig b/configs/P1010RDB-PB_NOR_defconfig new file mode 100644 index 0000000..a2386c7 --- /dev/null +++ b/configs/P1010RDB-PB_NOR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig new file mode 100644 index 0000000..dcb0847 --- /dev/null +++ b/configs/P1010RDB-PB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig new file mode 100644 index 0000000..1cba920 --- /dev/null +++ b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SPIFLASH,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig new file mode 100644 index 0000000..23dc027 --- /dev/null +++ b/configs/P1010RDB-PB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1010RDB_PB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1010RDB=y diff --git a/configs/P1011RDB_36BIT_SDCARD_defconfig b/configs/P1011RDB_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..7205bef --- /dev/null +++ b/configs/P1011RDB_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1011RDB,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1011RDB_36BIT_SPIFLASH_defconfig b/configs/P1011RDB_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..8b3806e --- /dev/null +++ b/configs/P1011RDB_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1011RDB,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1011RDB_36BIT_defconfig b/configs/P1011RDB_36BIT_defconfig new file mode 100644 index 0000000..c47f2e2 --- /dev/null +++ b/configs/P1011RDB_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1011RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1011RDB_NAND_defconfig b/configs/P1011RDB_NAND_defconfig new file mode 100644 index 0000000..aac0190 --- /dev/null +++ b/configs/P1011RDB_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1011RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1011RDB_SDCARD_defconfig b/configs/P1011RDB_SDCARD_defconfig new file mode 100644 index 0000000..16e872f --- /dev/null +++ b/configs/P1011RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1011RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1011RDB_SPIFLASH_defconfig b/configs/P1011RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..d14820f --- /dev/null +++ b/configs/P1011RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1011RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1011RDB_defconfig b/configs/P1011RDB_defconfig new file mode 100644 index 0000000..d14868a --- /dev/null +++ b/configs/P1011RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1011RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..e2b625e --- /dev/null +++ b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,SDCARD,36BIT" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020MBG-PC_36BIT_defconfig b/configs/P1020MBG-PC_36BIT_defconfig new file mode 100644 index 0000000..503ee0c --- /dev/null +++ b/configs/P1020MBG-PC_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020MBG-PC_SDCARD_defconfig b/configs/P1020MBG-PC_SDCARD_defconfig new file mode 100644 index 0000000..d34d3c8 --- /dev/null +++ b/configs/P1020MBG-PC_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020MBG,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020MBG-PC_defconfig b/configs/P1020MBG-PC_defconfig new file mode 100644 index 0000000..cee84ef --- /dev/null +++ b/configs/P1020MBG-PC_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020MBG" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig new file mode 100644 index 0000000..c01de3a --- /dev/null +++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..81593e1 --- /dev/null +++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..93c0c71 --- /dev/null +++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_36BIT_defconfig b/configs/P1020RDB-PC_36BIT_defconfig new file mode 100644 index 0000000..2120a09 --- /dev/null +++ b/configs/P1020RDB-PC_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig new file mode 100644 index 0000000..521398d --- /dev/null +++ b/configs/P1020RDB-PC_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig new file mode 100644 index 0000000..4e3ed60 --- /dev/null +++ b/configs/P1020RDB-PC_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig new file mode 100644 index 0000000..d4642c4 --- /dev/null +++ b/configs/P1020RDB-PC_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PC_defconfig b/configs/P1020RDB-PC_defconfig new file mode 100644 index 0000000..a19a59f --- /dev/null +++ b/configs/P1020RDB-PC_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PC" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig new file mode 100644 index 0000000..199b3f2 --- /dev/null +++ b/configs/P1020RDB-PD_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig new file mode 100644 index 0000000..a5edd3b --- /dev/null +++ b/configs/P1020RDB-PD_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig new file mode 100644 index 0000000..789b1bd --- /dev/null +++ b/configs/P1020RDB-PD_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB-PD_defconfig b/configs/P1020RDB-PD_defconfig new file mode 100644 index 0000000..61f7a02 --- /dev/null +++ b/configs/P1020RDB-PD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB_PD" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020RDB_36BIT_SDCARD_defconfig b/configs/P1020RDB_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..a18563e --- /dev/null +++ b/configs/P1020RDB_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020RDB_36BIT_SPIFLASH_defconfig b/configs/P1020RDB_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..aa145fc --- /dev/null +++ b/configs/P1020RDB_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020RDB_36BIT_defconfig b/configs/P1020RDB_36BIT_defconfig new file mode 100644 index 0000000..844651f --- /dev/null +++ b/configs/P1020RDB_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020RDB_NAND_defconfig b/configs/P1020RDB_NAND_defconfig new file mode 100644 index 0000000..441241b --- /dev/null +++ b/configs/P1020RDB_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020RDB_SDCARD_defconfig b/configs/P1020RDB_SDCARD_defconfig new file mode 100644 index 0000000..1349bea --- /dev/null +++ b/configs/P1020RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020RDB_SPIFLASH_defconfig b/configs/P1020RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..7eb8696 --- /dev/null +++ b/configs/P1020RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020RDB_defconfig b/configs/P1020RDB_defconfig new file mode 100644 index 0000000..fc58ac9 --- /dev/null +++ b/configs/P1020RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..7f393f4 --- /dev/null +++ b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020UTM-PC_36BIT_defconfig b/configs/P1020UTM-PC_36BIT_defconfig new file mode 100644 index 0000000..6892cc2 --- /dev/null +++ b/configs/P1020UTM-PC_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020UTM-PC_SDCARD_defconfig b/configs/P1020UTM-PC_SDCARD_defconfig new file mode 100644 index 0000000..3757de3 --- /dev/null +++ b/configs/P1020UTM-PC_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1020UTM,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1020UTM-PC_defconfig b/configs/P1020UTM-PC_defconfig new file mode 100644 index 0000000..4c28014 --- /dev/null +++ b/configs/P1020UTM-PC_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1020UTM" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_36BIT_NAND_defconfig b/configs/P1021RDB-PC_36BIT_NAND_defconfig new file mode 100644 index 0000000..285a0c4 --- /dev/null +++ b/configs/P1021RDB-PC_36BIT_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..0f9b175 --- /dev/null +++ b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..e2345dd --- /dev/null +++ b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_36BIT_defconfig b/configs/P1021RDB-PC_36BIT_defconfig new file mode 100644 index 0000000..eae7d2d --- /dev/null +++ b/configs/P1021RDB-PC_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_NAND_defconfig b/configs/P1021RDB-PC_NAND_defconfig new file mode 100644 index 0000000..da4b17d --- /dev/null +++ b/configs/P1021RDB-PC_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_SDCARD_defconfig b/configs/P1021RDB-PC_SDCARD_defconfig new file mode 100644 index 0000000..ec729d8 --- /dev/null +++ b/configs/P1021RDB-PC_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_SPIFLASH_defconfig b/configs/P1021RDB-PC_SPIFLASH_defconfig new file mode 100644 index 0000000..98a3e23 --- /dev/null +++ b/configs/P1021RDB-PC_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1021RDB-PC_defconfig b/configs/P1021RDB-PC_defconfig new file mode 100644 index 0000000..7557da2 --- /dev/null +++ b/configs/P1021RDB-PC_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1021RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1022DS_36BIT_NAND_defconfig b/configs/P1022DS_36BIT_NAND_defconfig new file mode 100644 index 0000000..d482617 --- /dev/null +++ b/configs/P1022DS_36BIT_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="36BIT,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1022DS=y diff --git a/configs/P1022DS_36BIT_SDCARD_defconfig b/configs/P1022DS_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..3f2a46c --- /dev/null +++ b/configs/P1022DS_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1022DS=y diff --git a/configs/P1022DS_36BIT_SPIFLASH_defconfig b/configs/P1022DS_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..47a39ee --- /dev/null +++ b/configs/P1022DS_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1022DS=y diff --git a/configs/P1022DS_36BIT_defconfig b/configs/P1022DS_36BIT_defconfig new file mode 100644 index 0000000..f2ff2d0 --- /dev/null +++ b/configs/P1022DS_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1022DS=y diff --git a/configs/P1022DS_NAND_defconfig b/configs/P1022DS_NAND_defconfig new file mode 100644 index 0000000..071280b --- /dev/null +++ b/configs/P1022DS_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1022DS=y diff --git a/configs/P1022DS_SDCARD_defconfig b/configs/P1022DS_SDCARD_defconfig new file mode 100644 index 0000000..47f21ea --- /dev/null +++ b/configs/P1022DS_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1022DS=y diff --git a/configs/P1022DS_SPIFLASH_defconfig b/configs/P1022DS_SPIFLASH_defconfig new file mode 100644 index 0000000..a866f24 --- /dev/null +++ b/configs/P1022DS_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1022DS=y diff --git a/configs/P1022DS_defconfig b/configs/P1022DS_defconfig new file mode 100644 index 0000000..d2953a4 --- /dev/null +++ b/configs/P1022DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1022DS=y diff --git a/configs/P1023RDB_defconfig b/configs/P1023RDB_defconfig new file mode 100644 index 0000000..fc15e4b --- /dev/null +++ b/configs/P1023RDB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1023RDB=y diff --git a/configs/P1024RDB_36BIT_defconfig b/configs/P1024RDB_36BIT_defconfig new file mode 100644 index 0000000..687277f --- /dev/null +++ b/configs/P1024RDB_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1024RDB_NAND_defconfig b/configs/P1024RDB_NAND_defconfig new file mode 100644 index 0000000..be42014 --- /dev/null +++ b/configs/P1024RDB_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1024RDB_SDCARD_defconfig b/configs/P1024RDB_SDCARD_defconfig new file mode 100644 index 0000000..88504bf --- /dev/null +++ b/configs/P1024RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1024RDB_SPIFLASH_defconfig b/configs/P1024RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..5def942 --- /dev/null +++ b/configs/P1024RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1024RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1024RDB_defconfig b/configs/P1024RDB_defconfig new file mode 100644 index 0000000..89e88f2 --- /dev/null +++ b/configs/P1024RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1024RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1025RDB_36BIT_defconfig b/configs/P1025RDB_36BIT_defconfig new file mode 100644 index 0000000..6903fec --- /dev/null +++ b/configs/P1025RDB_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1025RDB_NAND_defconfig b/configs/P1025RDB_NAND_defconfig new file mode 100644 index 0000000..f07388a --- /dev/null +++ b/configs/P1025RDB_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1025RDB_SDCARD_defconfig b/configs/P1025RDB_SDCARD_defconfig new file mode 100644 index 0000000..1791ec4 --- /dev/null +++ b/configs/P1025RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1025RDB_SPIFLASH_defconfig b/configs/P1025RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..774bbfe --- /dev/null +++ b/configs/P1025RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P1025RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P1025RDB_defconfig b/configs/P1025RDB_defconfig new file mode 100644 index 0000000..589e174 --- /dev/null +++ b/configs/P1025RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P1025RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2010RDB_36BIT_SDCARD_defconfig b/configs/P2010RDB_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..1381e8e --- /dev/null +++ b/configs/P2010RDB_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2010RDB,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2010RDB_36BIT_SPIFLASH_defconfig b/configs/P2010RDB_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..53ebca1 --- /dev/null +++ b/configs/P2010RDB_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2010RDB,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2010RDB_36BIT_defconfig b/configs/P2010RDB_36BIT_defconfig new file mode 100644 index 0000000..de29dcb --- /dev/null +++ b/configs/P2010RDB_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P2010RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2010RDB_NAND_defconfig b/configs/P2010RDB_NAND_defconfig new file mode 100644 index 0000000..bc91a67 --- /dev/null +++ b/configs/P2010RDB_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2010RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2010RDB_SDCARD_defconfig b/configs/P2010RDB_SDCARD_defconfig new file mode 100644 index 0000000..fd4ade7 --- /dev/null +++ b/configs/P2010RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2010RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2010RDB_SPIFLASH_defconfig b/configs/P2010RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..9631864 --- /dev/null +++ b/configs/P2010RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2010RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2010RDB_defconfig b/configs/P2010RDB_defconfig new file mode 100644 index 0000000..3b3352a --- /dev/null +++ b/configs/P2010RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P2010RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2020COME_SDCARD_defconfig b/configs/P2020COME_SDCARD_defconfig new file mode 100644 index 0000000..c186fcb --- /dev/null +++ b/configs/P2020COME_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SDCARD" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2020COME=y diff --git a/configs/P2020COME_SPIFLASH_defconfig b/configs/P2020COME_SPIFLASH_defconfig new file mode 100644 index 0000000..17ce136 --- /dev/null +++ b/configs/P2020COME_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2020COME=y diff --git a/configs/P2020DS_36BIT_defconfig b/configs/P2020DS_36BIT_defconfig new file mode 100644 index 0000000..359c446 --- /dev/null +++ b/configs/P2020DS_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2020DS=y diff --git a/configs/P2020DS_DDR2_defconfig b/configs/P2020DS_DDR2_defconfig new file mode 100644 index 0000000..00b6731 --- /dev/null +++ b/configs/P2020DS_DDR2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="DDR2" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2020DS=y diff --git a/configs/P2020DS_SDCARD_defconfig b/configs/P2020DS_SDCARD_defconfig new file mode 100644 index 0000000..89aef3a --- /dev/null +++ b/configs/P2020DS_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SDCARD" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2020DS=y diff --git a/configs/P2020DS_SPIFLASH_defconfig b/configs/P2020DS_SPIFLASH_defconfig new file mode 100644 index 0000000..503328c --- /dev/null +++ b/configs/P2020DS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SPIFLASH" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2020DS=y diff --git a/configs/P2020DS_defconfig b/configs/P2020DS_defconfig new file mode 100644 index 0000000..f2ac6d9 --- /dev/null +++ b/configs/P2020DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2020DS=y diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig new file mode 100644 index 0000000..cdfe13d --- /dev/null +++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..a98ce43 --- /dev/null +++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..14e53ba --- /dev/null +++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB-PC_36BIT_defconfig b/configs/P2020RDB-PC_36BIT_defconfig new file mode 100644 index 0000000..8f0c994 --- /dev/null +++ b/configs/P2020RDB-PC_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig new file mode 100644 index 0000000..10b208a --- /dev/null +++ b/configs/P2020RDB-PC_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig new file mode 100644 index 0000000..6cb0e6e --- /dev/null +++ b/configs/P2020RDB-PC_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig new file mode 100644 index 0000000..769eb37 --- /dev/null +++ b/configs/P2020RDB-PC_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB-PC_defconfig b/configs/P2020RDB-PC_defconfig new file mode 100644 index 0000000..3e46572 --- /dev/null +++ b/configs/P2020RDB-PC_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB_PC=y diff --git a/configs/P2020RDB_36BIT_SDCARD_defconfig b/configs/P2020RDB_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..43cc2e3 --- /dev/null +++ b/configs/P2020RDB_36BIT_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2020RDB_36BIT_SPIFLASH_defconfig b/configs/P2020RDB_36BIT_SPIFLASH_defconfig new file mode 100644 index 0000000..f1199b6 --- /dev/null +++ b/configs/P2020RDB_36BIT_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2020RDB_36BIT_defconfig b/configs/P2020RDB_36BIT_defconfig new file mode 100644 index 0000000..87490fd --- /dev/null +++ b/configs/P2020RDB_36BIT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,36BIT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2020RDB_NAND_defconfig b/configs/P2020RDB_NAND_defconfig new file mode 100644 index 0000000..70ee084 --- /dev/null +++ b/configs/P2020RDB_NAND_defconfig @@ -0,0 +1,6 @@ +CONFIG_SPL=y +CONFIG_TPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,NAND" ++ST:CONFIG_PPC=y ++ST:CONFIG_MPC85xx=y ++ST:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2020RDB_SDCARD_defconfig b/configs/P2020RDB_SDCARD_defconfig new file mode 100644 index 0000000..2bf5773 --- /dev/null +++ b/configs/P2020RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2020RDB_SPIFLASH_defconfig b/configs/P2020RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..290ebd2 --- /dev/null +++ b/configs/P2020RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2020RDB_defconfig b/configs/P2020RDB_defconfig new file mode 100644 index 0000000..cc39735 --- /dev/null +++ b/configs/P2020RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P2020RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_P2_RDB=y diff --git a/configs/P2041RDB_NAND_defconfig b/configs/P2041RDB_NAND_defconfig new file mode 100644 index 0000000..4a4e076 --- /dev/null +++ b/configs/P2041RDB_NAND_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2041RDB=y diff --git a/configs/P2041RDB_SDCARD_defconfig b/configs/P2041RDB_SDCARD_defconfig new file mode 100644 index 0000000..af06581 --- /dev/null +++ b/configs/P2041RDB_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2041RDB=y diff --git a/configs/P2041RDB_SECURE_BOOT_defconfig b/configs/P2041RDB_SECURE_BOOT_defconfig new file mode 100644 index 0000000..c49dcbf --- /dev/null +++ b/configs/P2041RDB_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2041RDB=y diff --git a/configs/P2041RDB_SPIFLASH_defconfig b/configs/P2041RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..ecba89a --- /dev/null +++ b/configs/P2041RDB_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2041RDB=y diff --git a/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..53bd271 --- /dev/null +++ b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2041RDB=y diff --git a/configs/P2041RDB_defconfig b/configs/P2041RDB_defconfig new file mode 100644 index 0000000..802b38d --- /dev/null +++ b/configs/P2041RDB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P2041RDB=y diff --git a/configs/P3041DS_NAND_defconfig b/configs/P3041DS_NAND_defconfig new file mode 100644 index 0000000..5934048 --- /dev/null +++ b/configs/P3041DS_NAND_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P3041DS=y diff --git a/configs/P3041DS_SDCARD_defconfig b/configs/P3041DS_SDCARD_defconfig new file mode 100644 index 0000000..dacadaa --- /dev/null +++ b/configs/P3041DS_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P3041DS=y diff --git a/configs/P3041DS_SECURE_BOOT_defconfig b/configs/P3041DS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..9850956 --- /dev/null +++ b/configs/P3041DS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P3041DS=y diff --git a/configs/P3041DS_SPIFLASH_defconfig b/configs/P3041DS_SPIFLASH_defconfig new file mode 100644 index 0000000..0a71926 --- /dev/null +++ b/configs/P3041DS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P3041DS=y diff --git a/configs/P3041DS_SRIO_PCIE_BOOT_defconfig b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..5c14324 --- /dev/null +++ b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P3041DS=y diff --git a/configs/P3041DS_defconfig b/configs/P3041DS_defconfig new file mode 100644 index 0000000..3277650 --- /dev/null +++ b/configs/P3041DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P3041DS=y diff --git a/configs/P3G4_defconfig b/configs/P3G4_defconfig new file mode 100644 index 0000000..3d219ef --- /dev/null +++ b/configs/P3G4_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_P3G4=y diff --git a/configs/P4080DS_SDCARD_defconfig b/configs/P4080DS_SDCARD_defconfig new file mode 100644 index 0000000..99fbbf2 --- /dev/null +++ b/configs/P4080DS_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P4080DS=y diff --git a/configs/P4080DS_SECURE_BOOT_defconfig b/configs/P4080DS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..bae1da2 --- /dev/null +++ b/configs/P4080DS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P4080DS=y diff --git a/configs/P4080DS_SPIFLASH_defconfig b/configs/P4080DS_SPIFLASH_defconfig new file mode 100644 index 0000000..855319d --- /dev/null +++ b/configs/P4080DS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P4080DS=y diff --git a/configs/P4080DS_SRIO_PCIE_BOOT_defconfig b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..6240d73 --- /dev/null +++ b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P4080DS=y diff --git a/configs/P4080DS_defconfig b/configs/P4080DS_defconfig new file mode 100644 index 0000000..9b5fc89 --- /dev/null +++ b/configs/P4080DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P4080DS=y diff --git a/configs/P5020DS_NAND_defconfig b/configs/P5020DS_NAND_defconfig new file mode 100644 index 0000000..6fe8446 --- /dev/null +++ b/configs/P5020DS_NAND_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5020DS=y diff --git a/configs/P5020DS_SDCARD_defconfig b/configs/P5020DS_SDCARD_defconfig new file mode 100644 index 0000000..e19aa6e --- /dev/null +++ b/configs/P5020DS_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5020DS=y diff --git a/configs/P5020DS_SECURE_BOOT_defconfig b/configs/P5020DS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..30871d9 --- /dev/null +++ b/configs/P5020DS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5020DS=y diff --git a/configs/P5020DS_SPIFLASH_defconfig b/configs/P5020DS_SPIFLASH_defconfig new file mode 100644 index 0000000..dbcc056 --- /dev/null +++ b/configs/P5020DS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5020DS=y diff --git a/configs/P5020DS_SRIO_PCIE_BOOT_defconfig b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..dc191f7 --- /dev/null +++ b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5020DS=y diff --git a/configs/P5020DS_defconfig b/configs/P5020DS_defconfig new file mode 100644 index 0000000..d1c5c72 --- /dev/null +++ b/configs/P5020DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5020DS=y diff --git a/configs/P5040DS_NAND_defconfig b/configs/P5040DS_NAND_defconfig new file mode 100644 index 0000000..de3cd06 --- /dev/null +++ b/configs/P5040DS_NAND_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,NAND,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5040DS=y diff --git a/configs/P5040DS_SDCARD_defconfig b/configs/P5040DS_SDCARD_defconfig new file mode 100644 index 0000000..f0ef285 --- /dev/null +++ b/configs/P5040DS_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SDCARD,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5040DS=y diff --git a/configs/P5040DS_SPIFLASH_defconfig b/configs/P5040DS_SPIFLASH_defconfig new file mode 100644 index 0000000..a2922f5 --- /dev/null +++ b/configs/P5040DS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5040DS=y diff --git a/configs/P5040DS_defconfig b/configs/P5040DS_defconfig new file mode 100644 index 0000000..38f3d58 --- /dev/null +++ b/configs/P5040DS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P5040DS=y diff --git a/configs/PATI_defconfig b/configs/PATI_defconfig new file mode 100644 index 0000000..14ca871 --- /dev/null +++ b/configs/PATI_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_5xx=y +CONFIG_TARGET_PATI=y diff --git a/configs/PCI405_defconfig b/configs/PCI405_defconfig new file mode 100644 index 0000000..48f19fe --- /dev/null +++ b/configs/PCI405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PCI405=y diff --git a/configs/PCI5441_defconfig b/configs/PCI5441_defconfig new file mode 100644 index 0000000..a4bfdb4 --- /dev/null +++ b/configs/PCI5441_defconfig @@ -0,0 +1,2 @@ +CONFIG_NIOS2=y +CONFIG_TARGET_PCI5441=y diff --git a/configs/PIP405_defconfig b/configs/PIP405_defconfig new file mode 100644 index 0000000..38b3acb --- /dev/null +++ b/configs/PIP405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PIP405=y diff --git a/configs/PK1C20_defconfig b/configs/PK1C20_defconfig new file mode 100644 index 0000000..bb2513a --- /dev/null +++ b/configs/PK1C20_defconfig @@ -0,0 +1,2 @@ +CONFIG_NIOS2=y +CONFIG_TARGET_PK1C20=y diff --git a/configs/PLU405_defconfig b/configs/PLU405_defconfig new file mode 100644 index 0000000..15477c4 --- /dev/null +++ b/configs/PLU405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PLU405=y diff --git a/configs/PM520_DDR_defconfig b/configs/PM520_DDR_defconfig new file mode 100644 index 0000000..6d6a59d --- /dev/null +++ b/configs/PM520_DDR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC5200_DDR" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_PM520=y diff --git a/configs/PM520_ROMBOOT_DDR_defconfig b/configs/PM520_ROMBOOT_DDR_defconfig new file mode 100644 index 0000000..f5a40d9 --- /dev/null +++ b/configs/PM520_ROMBOOT_DDR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC5200_DDR,BOOT_ROM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_PM520=y diff --git a/configs/PM520_ROMBOOT_defconfig b/configs/PM520_ROMBOOT_defconfig new file mode 100644 index 0000000..d9f9ea0 --- /dev/null +++ b/configs/PM520_ROMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ROM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_PM520=y diff --git a/configs/PM520_defconfig b/configs/PM520_defconfig new file mode 100644 index 0000000..2737a8c --- /dev/null +++ b/configs/PM520_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_PM520=y diff --git a/configs/PM825_BIGFLASH_defconfig b/configs/PM825_BIGFLASH_defconfig new file mode 100644 index 0000000..75efcdd --- /dev/null +++ b/configs/PM825_BIGFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,FLASH_32MB,SYS_TEXT_BASE=0x40000000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM825_ROMBOOT_BIGFLASH_defconfig b/configs/PM825_ROMBOOT_BIGFLASH_defconfig new file mode 100644 index 0000000..28ff17f --- /dev/null +++ b/configs/PM825_ROMBOOT_BIGFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,BOOT_ROM,FLASH_32MB,SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM825_ROMBOOT_defconfig b/configs/PM825_ROMBOOT_defconfig new file mode 100644 index 0000000..f5233fa --- /dev/null +++ b/configs/PM825_ROMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,BOOT_ROM,SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM825_defconfig b/configs/PM825_defconfig new file mode 100644 index 0000000..459cdba --- /dev/null +++ b/configs/PM825_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,SYS_TEXT_BASE=0xFF000000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM826_BIGFLASH_defconfig b/configs/PM826_BIGFLASH_defconfig new file mode 100644 index 0000000..0acf9d2 --- /dev/null +++ b/configs/PM826_BIGFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="FLASH_32MB,SYS_TEXT_BASE=0x40000000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM826_ROMBOOT_BIGFLASH_defconfig b/configs/PM826_ROMBOOT_BIGFLASH_defconfig new file mode 100644 index 0000000..af8d4c9 --- /dev/null +++ b/configs/PM826_ROMBOOT_BIGFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ROM,FLASH_32MB,SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM826_ROMBOOT_defconfig b/configs/PM826_ROMBOOT_defconfig new file mode 100644 index 0000000..7d3e1c3 --- /dev/null +++ b/configs/PM826_ROMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ROM,SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM826_defconfig b/configs/PM826_defconfig new file mode 100644 index 0000000..b2f9d34 --- /dev/null +++ b/configs/PM826_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM826=y diff --git a/configs/PM828_PCI_defconfig b/configs/PM828_PCI_defconfig new file mode 100644 index 0000000..9b68562 --- /dev/null +++ b/configs/PM828_PCI_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM828=y diff --git a/configs/PM828_ROMBOOT_PCI_defconfig b/configs/PM828_ROMBOOT_PCI_defconfig new file mode 100644 index 0000000..8120058 --- /dev/null +++ b/configs/PM828_ROMBOOT_PCI_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,BOOT_ROM,SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM828=y diff --git a/configs/PM828_ROMBOOT_defconfig b/configs/PM828_ROMBOOT_defconfig new file mode 100644 index 0000000..7c8980e --- /dev/null +++ b/configs/PM828_ROMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ROM,SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM828=y diff --git a/configs/PM828_defconfig b/configs/PM828_defconfig new file mode 100644 index 0000000..15887ca --- /dev/null +++ b/configs/PM828_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PM828=y diff --git a/configs/PMC405DE_defconfig b/configs/PMC405DE_defconfig new file mode 100644 index 0000000..78c5d39 --- /dev/null +++ b/configs/PMC405DE_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PMC405DE=y diff --git a/configs/PMC405_defconfig b/configs/PMC405_defconfig new file mode 100644 index 0000000..d82117c --- /dev/null +++ b/configs/PMC405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PMC405=y diff --git a/configs/PMC440_defconfig b/configs/PMC440_defconfig new file mode 100644 index 0000000..27869ac --- /dev/null +++ b/configs/PMC440_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PMC440=y diff --git a/configs/PPChameleonEVB_BA_25_defconfig b/configs/PPChameleonEVB_BA_25_defconfig new file mode 100644 index 0000000..e367299 --- /dev/null +++ b/configs/PPChameleonEVB_BA_25_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=0,PPCHAMELEON_CLK_25" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PPCHAMELEONEVB=y diff --git a/configs/PPChameleonEVB_BA_33_defconfig b/configs/PPChameleonEVB_BA_33_defconfig new file mode 100644 index 0000000..f4041c9 --- /dev/null +++ b/configs/PPChameleonEVB_BA_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=0,PPCHAMELEON_CLK_33" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PPCHAMELEONEVB=y diff --git a/configs/PPChameleonEVB_HI_25_defconfig b/configs/PPChameleonEVB_HI_25_defconfig new file mode 100644 index 0000000..a9de221 --- /dev/null +++ b/configs/PPChameleonEVB_HI_25_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=2,PPCHAMELEON_CLK_25" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PPCHAMELEONEVB=y diff --git a/configs/PPChameleonEVB_HI_33_defconfig b/configs/PPChameleonEVB_HI_33_defconfig new file mode 100644 index 0000000..882262b --- /dev/null +++ b/configs/PPChameleonEVB_HI_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=2,PPCHAMELEON_CLK_33" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PPCHAMELEONEVB=y diff --git a/configs/PPChameleonEVB_ME_25_defconfig b/configs/PPChameleonEVB_ME_25_defconfig new file mode 100644 index 0000000..f9a0440 --- /dev/null +++ b/configs/PPChameleonEVB_ME_25_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_25" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PPCHAMELEONEVB=y diff --git a/configs/PPChameleonEVB_ME_33_defconfig b/configs/PPChameleonEVB_ME_33_defconfig new file mode 100644 index 0000000..8ee09b8 --- /dev/null +++ b/configs/PPChameleonEVB_ME_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPCHAMELEON_MODULE_MODEL=1,PPCHAMELEON_CLK_33" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PPCHAMELEONEVB=y diff --git a/configs/PPChameleonEVB_defconfig b/configs/PPChameleonEVB_defconfig new file mode 100644 index 0000000..2d83330 --- /dev/null +++ b/configs/PPChameleonEVB_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PPCHAMELEONEVB=y diff --git a/configs/R360MPI_defconfig b/configs/R360MPI_defconfig new file mode 100644 index 0000000..290f694 --- /dev/null +++ b/configs/R360MPI_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_R360MPI=y diff --git a/configs/RRvision_LCD_defconfig b/configs/RRvision_LCD_defconfig new file mode 100644 index 0000000..4d61187 --- /dev/null +++ b/configs/RRvision_LCD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="LCD,SHARP_LQ104V7DS01" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_RRVISION=y diff --git a/configs/RRvision_defconfig b/configs/RRvision_defconfig new file mode 100644 index 0000000..bdb4d7a --- /dev/null +++ b/configs/RRvision_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_RRVISION=y diff --git a/configs/SM850_defconfig b/configs/SM850_defconfig new file mode 100644 index 0000000..6a50316 --- /dev/null +++ b/configs/SM850_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_SM850=y diff --git a/configs/SPD823TS_defconfig b/configs/SPD823TS_defconfig new file mode 100644 index 0000000..1b218c6 --- /dev/null +++ b/configs/SPD823TS_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_SPD823TS=y diff --git a/configs/SXNI855T_defconfig b/configs/SXNI855T_defconfig new file mode 100644 index 0000000..a4c900a --- /dev/null +++ b/configs/SXNI855T_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_SXNI855T=y diff --git a/configs/Sandpoint8240_defconfig b/configs/Sandpoint8240_defconfig new file mode 100644 index 0000000..332e4c0 --- /dev/null +++ b/configs/Sandpoint8240_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_SANDPOINT8240=y diff --git a/configs/Sandpoint8245_defconfig b/configs/Sandpoint8245_defconfig new file mode 100644 index 0000000..b36757c --- /dev/null +++ b/configs/Sandpoint8245_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_SANDPOINT8245=y diff --git a/configs/T1040QDS_D4_defconfig b/configs/T1040QDS_D4_defconfig new file mode 100644 index 0000000..0684cb0 --- /dev/null +++ b/configs/T1040QDS_D4_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,SYS_FSL_DDR4" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T1040QDS=y diff --git a/configs/T1040QDS_SECURE_BOOT_defconfig b/configs/T1040QDS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..f3f61eb --- /dev/null +++ b/configs/T1040QDS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T1040QDS=y diff --git a/configs/T1040QDS_defconfig b/configs/T1040QDS_defconfig new file mode 100644 index 0000000..b8e1a3d --- /dev/null +++ b/configs/T1040QDS_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T1040QDS=y diff --git a/configs/T1040RDB_NAND_defconfig b/configs/T1040RDB_NAND_defconfig new file mode 100644 index 0000000..5fe34d8 --- /dev/null +++ b/configs/T1040RDB_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1040RDB_SDCARD_defconfig b/configs/T1040RDB_SDCARD_defconfig new file mode 100644 index 0000000..08c3730 --- /dev/null +++ b/configs/T1040RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1040RDB_SECURE_BOOT_defconfig b/configs/T1040RDB_SECURE_BOOT_defconfig new file mode 100644 index 0000000..0b5ddaf --- /dev/null +++ b/configs/T1040RDB_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,SECURE_BOOT,T1040RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1040RDB_SPIFLASH_defconfig b/configs/T1040RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..1a61703 --- /dev/null +++ b/configs/T1040RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1040RDB_defconfig b/configs/T1040RDB_defconfig new file mode 100644 index 0000000..072eab0 --- /dev/null +++ b/configs/T1040RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1040,T1040RDB" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1042RDB_PI_NAND_defconfig b/configs/T1042RDB_PI_NAND_defconfig new file mode 100644 index 0000000..d1a1665 --- /dev/null +++ b/configs/T1042RDB_PI_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1042RDB_PI_SDCARD_defconfig b/configs/T1042RDB_PI_SDCARD_defconfig new file mode 100644 index 0000000..2bf123d --- /dev/null +++ b/configs/T1042RDB_PI_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1042RDB_PI_SPIFLASH_defconfig b/configs/T1042RDB_PI_SPIFLASH_defconfig new file mode 100644 index 0000000..30d6d2d --- /dev/null +++ b/configs/T1042RDB_PI_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T104XRDB=y diff --git a/configs/T1042RDB_PI_defconfig b/configs/T1042RDB_PI_defconfig new file mode 100644 index 0000000..f8f6334 --- /dev/null +++ b/configs/T1042RDB_PI_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T1042,T1042RDB_PI" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T104XRDB=y diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig new file mode 100644 index 0000000..b75195a --- /dev/null +++ b/configs/T2080QDS_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig new file mode 100644 index 0000000..6ed65dd --- /dev/null +++ b/configs/T2080QDS_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig b/configs/T2080QDS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..4f7d709 --- /dev/null +++ b/configs/T2080QDS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig new file mode 100644 index 0000000..a3b58d3 --- /dev/null +++ b/configs/T2080QDS_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..1055486 --- /dev/null +++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig new file mode 100644 index 0000000..180d155 --- /dev/null +++ b/configs/T2080QDS_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig new file mode 100644 index 0000000..7c48f8f --- /dev/null +++ b/configs/T2080RDB_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XRDB=y diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig new file mode 100644 index 0000000..31ca9a7 --- /dev/null +++ b/configs/T2080RDB_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XRDB=y diff --git a/configs/T2080RDB_SECURE_BOOT_defconfig b/configs/T2080RDB_SECURE_BOOT_defconfig new file mode 100644 index 0000000..cee5370 --- /dev/null +++ b/configs/T2080RDB_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XRDB=y diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig new file mode 100644 index 0000000..bdddeae --- /dev/null +++ b/configs/T2080RDB_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XRDB=y diff --git a/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..9bdf533 --- /dev/null +++ b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XRDB=y diff --git a/configs/T2080RDB_defconfig b/configs/T2080RDB_defconfig new file mode 100644 index 0000000..f6ade16 --- /dev/null +++ b/configs/T2080RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2080" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XRDB=y diff --git a/configs/T2081QDS_NAND_defconfig b/configs/T2081QDS_NAND_defconfig new file mode 100644 index 0000000..d3558c5 --- /dev/null +++ b/configs/T2081QDS_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2081QDS_SDCARD_defconfig b/configs/T2081QDS_SDCARD_defconfig new file mode 100644 index 0000000..fc13d2c --- /dev/null +++ b/configs/T2081QDS_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2081QDS_SPIFLASH_defconfig b/configs/T2081QDS_SPIFLASH_defconfig new file mode 100644 index 0000000..e5ea3dc --- /dev/null +++ b/configs/T2081QDS_SPIFLASH_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,RAMBOOT_PBL,SPL_FSL_PBL,SPIFLASH" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..407af92 --- /dev/null +++ b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XQDS=y diff --git a/configs/T2081QDS_defconfig b/configs/T2081QDS_defconfig new file mode 100644 index 0000000..93480a6 --- /dev/null +++ b/configs/T2081QDS_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T2081" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T208XQDS=y diff --git a/configs/T4160QDS_NAND_defconfig b/configs/T4160QDS_NAND_defconfig new file mode 100644 index 0000000..0a18424 --- /dev/null +++ b/configs/T4160QDS_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4160QDS_SDCARD_defconfig b/configs/T4160QDS_SDCARD_defconfig new file mode 100644 index 0000000..de1b2c4 --- /dev/null +++ b/configs/T4160QDS_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4160QDS_SECURE_BOOT_defconfig b/configs/T4160QDS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..9fc209f --- /dev/null +++ b/configs/T4160QDS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4160QDS_SPIFLASH_defconfig b/configs/T4160QDS_SPIFLASH_defconfig new file mode 100644 index 0000000..6146b00 --- /dev/null +++ b/configs/T4160QDS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4160QDS_defconfig b/configs/T4160QDS_defconfig new file mode 100644 index 0000000..749f445 --- /dev/null +++ b/configs/T4160QDS_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4160RDB_defconfig b/configs/T4160RDB_defconfig new file mode 100644 index 0000000..34bd914 --- /dev/null +++ b/configs/T4160RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4160" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240RDB=y diff --git a/configs/T4240EMU_defconfig b/configs/T4240EMU_defconfig new file mode 100644 index 0000000..e95151b --- /dev/null +++ b/configs/T4240EMU_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240EMU=y diff --git a/configs/T4240QDS_NAND_defconfig b/configs/T4240QDS_NAND_defconfig new file mode 100644 index 0000000..65978eb --- /dev/null +++ b/configs/T4240QDS_NAND_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,NAND" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4240QDS_SDCARD_defconfig b/configs/T4240QDS_SDCARD_defconfig new file mode 100644 index 0000000..4db1b80 --- /dev/null +++ b/configs/T4240QDS_SDCARD_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPL_FSL_PBL,SDCARD" ++S:CONFIG_PPC=y ++S:CONFIG_MPC85xx=y ++S:CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4240QDS_SECURE_BOOT_defconfig b/configs/T4240QDS_SECURE_BOOT_defconfig new file mode 100644 index 0000000..9cc7775 --- /dev/null +++ b/configs/T4240QDS_SECURE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,SECURE_BOOT" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4240QDS_SPIFLASH_defconfig b/configs/T4240QDS_SPIFLASH_defconfig new file mode 100644 index 0000000..14dc48a --- /dev/null +++ b/configs/T4240QDS_SPIFLASH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,RAMBOOT_PBL,SPIFLASH,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig new file mode 100644 index 0000000..7c10655 --- /dev/null +++ b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240,SRIO_PCIE_BOOT_SLAVE,SYS_TEXT_BASE=0xFFF40000" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4240QDS_defconfig b/configs/T4240QDS_defconfig new file mode 100644 index 0000000..80889e0 --- /dev/null +++ b/configs/T4240QDS_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240QDS=y diff --git a/configs/T4240RDB_defconfig b/configs/T4240RDB_defconfig new file mode 100644 index 0000000..37b1b55 --- /dev/null +++ b/configs/T4240RDB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PPC_T4240" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_T4240RDB=y diff --git a/configs/TASREG_defconfig b/configs/TASREG_defconfig new file mode 100644 index 0000000..2bb0421 --- /dev/null +++ b/configs/TASREG_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_TASREG=y diff --git a/configs/TB5200_B_defconfig b/configs/TB5200_B_defconfig new file mode 100644 index 0000000..00d06c9 --- /dev/null +++ b/configs/TB5200_B_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TB5200=y diff --git a/configs/TB5200_defconfig b/configs/TB5200_defconfig new file mode 100644 index 0000000..13d8e2d --- /dev/null +++ b/configs/TB5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TB5200=y diff --git a/configs/TK885D_defconfig b/configs/TK885D_defconfig new file mode 100644 index 0000000..01bc6dc --- /dev/null +++ b/configs/TK885D_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TK885D=y diff --git a/configs/TOP5200_defconfig b/configs/TOP5200_defconfig new file mode 100644 index 0000000..86eed7f --- /dev/null +++ b/configs/TOP5200_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TOP5200" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TOP5200=y diff --git a/configs/TOP860_defconfig b/configs/TOP860_defconfig new file mode 100644 index 0000000..9fcc6f6 --- /dev/null +++ b/configs/TOP860_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TOP860=y diff --git a/configs/TQM5200S_HIGHBOOT_defconfig b/configs/TQM5200S_HIGHBOOT_defconfig new file mode 100644 index 0000000..f54377e --- /dev/null +++ b/configs/TQM5200S_HIGHBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,TQM5200S,SYS_TEXT_BASE=0xFFF00000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/TQM5200S_defconfig b/configs/TQM5200S_defconfig new file mode 100644 index 0000000..5d976ce --- /dev/null +++ b/configs/TQM5200S_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,TQM5200S" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/TQM5200_B_HIGHBOOT_defconfig b/configs/TQM5200_B_HIGHBOOT_defconfig new file mode 100644 index 0000000..61c120a --- /dev/null +++ b/configs/TQM5200_B_HIGHBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B,SYS_TEXT_BASE=0xFFF00000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/TQM5200_B_defconfig b/configs/TQM5200_B_defconfig new file mode 100644 index 0000000..ddc5d2c --- /dev/null +++ b/configs/TQM5200_B_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TQM5200_B" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/TQM5200_STK100_defconfig b/configs/TQM5200_STK100_defconfig new file mode 100644 index 0000000..9c198c6 --- /dev/null +++ b/configs/TQM5200_STK100_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="STK52XX_REV100" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/TQM5200_defconfig b/configs/TQM5200_defconfig new file mode 100644 index 0000000..1fe9682 --- /dev/null +++ b/configs/TQM5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/TQM823L_LCD_defconfig b/configs/TQM823L_LCD_defconfig new file mode 100644 index 0000000..cacd3e2 --- /dev/null +++ b/configs/TQM823L_LCD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="LCD,NEC_NL6448BC20" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM823L=y diff --git a/configs/TQM823L_defconfig b/configs/TQM823L_defconfig new file mode 100644 index 0000000..5678bf2 --- /dev/null +++ b/configs/TQM823L_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM823L=y diff --git a/configs/TQM823M_defconfig b/configs/TQM823M_defconfig new file mode 100644 index 0000000..974bc91 --- /dev/null +++ b/configs/TQM823M_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM823M=y diff --git a/configs/TQM8255_AA_defconfig b/configs/TQM8255_AA_defconfig new file mode 100644 index 0000000..a9f9f01 --- /dev/null +++ b/configs/TQM8255_AA_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8255,300MHz" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AA_defconfig b/configs/TQM8260_AA_defconfig new file mode 100644 index 0000000..b762fe4 --- /dev/null +++ b/configs/TQM8260_AA_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,200MHz" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AB_defconfig b/configs/TQM8260_AB_defconfig new file mode 100644 index 0000000..6ff8d17 --- /dev/null +++ b/configs/TQM8260_AB_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,200MHz,L2_CACHE,BUSMODE_60x" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AC_defconfig b/configs/TQM8260_AC_defconfig new file mode 100644 index 0000000..6ff8d17 --- /dev/null +++ b/configs/TQM8260_AC_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,200MHz,L2_CACHE,BUSMODE_60x" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AD_defconfig b/configs/TQM8260_AD_defconfig new file mode 100644 index 0000000..3f406a4 --- /dev/null +++ b/configs/TQM8260_AD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,300MHz,BUSMODE_60x" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AE_defconfig b/configs/TQM8260_AE_defconfig new file mode 100644 index 0000000..1077b19 --- /dev/null +++ b/configs/TQM8260_AE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,266MHz" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AF_defconfig b/configs/TQM8260_AF_defconfig new file mode 100644 index 0000000..3f406a4 --- /dev/null +++ b/configs/TQM8260_AF_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,300MHz,BUSMODE_60x" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AG_defconfig b/configs/TQM8260_AG_defconfig new file mode 100644 index 0000000..b0d67fa --- /dev/null +++ b/configs/TQM8260_AG_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,300MHz" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AH_defconfig b/configs/TQM8260_AH_defconfig new file mode 100644 index 0000000..65c73e8 --- /dev/null +++ b/configs/TQM8260_AH_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,300MHz,L2_CACHE,BUSMODE_60x" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8260_AI_defconfig b/configs/TQM8260_AI_defconfig new file mode 100644 index 0000000..3f406a4 --- /dev/null +++ b/configs/TQM8260_AI_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8260,300MHz,BUSMODE_60x" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8265_AA_defconfig b/configs/TQM8265_AA_defconfig new file mode 100644 index 0000000..d8806c4 --- /dev/null +++ b/configs/TQM8265_AA_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC8265,300MHz,BUSMODE_60x" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8260=y diff --git a/configs/TQM8272_defconfig b/configs/TQM8272_defconfig new file mode 100644 index 0000000..0070baf --- /dev/null +++ b/configs/TQM8272_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_TQM8272=y diff --git a/configs/TQM834x_defconfig b/configs/TQM834x_defconfig new file mode 100644 index 0000000..2cf89b4 --- /dev/null +++ b/configs/TQM834x_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_TQM834X=y diff --git a/configs/TQM850L_defconfig b/configs/TQM850L_defconfig new file mode 100644 index 0000000..f3d5f4d --- /dev/null +++ b/configs/TQM850L_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM850L=y diff --git a/configs/TQM850M_defconfig b/configs/TQM850M_defconfig new file mode 100644 index 0000000..6052ada --- /dev/null +++ b/configs/TQM850M_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM850M=y diff --git a/configs/TQM855L_defconfig b/configs/TQM855L_defconfig new file mode 100644 index 0000000..b7d5891 --- /dev/null +++ b/configs/TQM855L_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM855L=y diff --git a/configs/TQM855M_defconfig b/configs/TQM855M_defconfig new file mode 100644 index 0000000..367a709 --- /dev/null +++ b/configs/TQM855M_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM855M=y diff --git a/configs/TQM860L_defconfig b/configs/TQM860L_defconfig new file mode 100644 index 0000000..0a215a7 --- /dev/null +++ b/configs/TQM860L_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM860L=y diff --git a/configs/TQM860M_defconfig b/configs/TQM860M_defconfig new file mode 100644 index 0000000..5c9a4f1 --- /dev/null +++ b/configs/TQM860M_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM860M=y diff --git a/configs/TQM862L_defconfig b/configs/TQM862L_defconfig new file mode 100644 index 0000000..24a290e --- /dev/null +++ b/configs/TQM862L_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM862L=y diff --git a/configs/TQM862M_defconfig b/configs/TQM862M_defconfig new file mode 100644 index 0000000..ca8dba1 --- /dev/null +++ b/configs/TQM862M_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM862M=y diff --git a/configs/TQM866M_defconfig b/configs/TQM866M_defconfig new file mode 100644 index 0000000..bcf039a --- /dev/null +++ b/configs/TQM866M_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM866M=y diff --git a/configs/TQM885D_defconfig b/configs/TQM885D_defconfig new file mode 100644 index 0000000..6a0268a --- /dev/null +++ b/configs/TQM885D_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM885D=y diff --git a/configs/TTTech_defconfig b/configs/TTTech_defconfig new file mode 100644 index 0000000..be99da3 --- /dev/null +++ b/configs/TTTech_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="LCD,SHARP_LQ104V7DS01" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM823L=y diff --git a/configs/TWR-P1025_defconfig b/configs/TWR-P1025_defconfig new file mode 100644 index 0000000..95d758e --- /dev/null +++ b/configs/TWR-P1025_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TWR_P1025" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_P1_TWR=y diff --git a/configs/Total5200_Rev2_defconfig b/configs/Total5200_Rev2_defconfig new file mode 100644 index 0000000..9f27734 --- /dev/null +++ b/configs/Total5200_Rev2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TOTAL5200_REV=2" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TOTAL5200=y diff --git a/configs/Total5200_Rev2_lowboot_defconfig b/configs/Total5200_Rev2_lowboot_defconfig new file mode 100644 index 0000000..15b27b3 --- /dev/null +++ b/configs/Total5200_Rev2_lowboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TOTAL5200_REV=2,SYS_TEXT_BASE=0xFE000000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TOTAL5200=y diff --git a/configs/Total5200_defconfig b/configs/Total5200_defconfig new file mode 100644 index 0000000..5aaae49 --- /dev/null +++ b/configs/Total5200_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TOTAL5200_REV=1" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TOTAL5200=y diff --git a/configs/Total5200_lowboot_defconfig b/configs/Total5200_lowboot_defconfig new file mode 100644 index 0000000..4c9195e --- /dev/null +++ b/configs/Total5200_lowboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TOTAL5200_REV=1,SYS_TEXT_BASE=0xFE000000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TOTAL5200=y diff --git a/configs/VCMA9_defconfig b/configs/VCMA9_defconfig new file mode 100644 index 0000000..6aa8de0 --- /dev/null +++ b/configs/VCMA9_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_VCMA9=y diff --git a/configs/VOH405_defconfig b/configs/VOH405_defconfig new file mode 100644 index 0000000..1fbe91a --- /dev/null +++ b/configs/VOH405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_VOH405=y diff --git a/configs/VOM405_defconfig b/configs/VOM405_defconfig new file mode 100644 index 0000000..b65515f --- /dev/null +++ b/configs/VOM405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_VOM405=y diff --git a/configs/VoVPN-GW_66MHz_defconfig b/configs/VoVPN-GW_66MHz_defconfig new file mode 100644 index 0000000..4eb931e --- /dev/null +++ b/configs/VoVPN-GW_66MHz_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CLKIN_66MHz" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_VOVPN_GW=y diff --git a/configs/W7OLMC_defconfig b/configs/W7OLMC_defconfig new file mode 100644 index 0000000..573427b --- /dev/null +++ b/configs/W7OLMC_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_W7OLMC=y diff --git a/configs/W7OLMG_defconfig b/configs/W7OLMG_defconfig new file mode 100644 index 0000000..7410124 --- /dev/null +++ b/configs/W7OLMG_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_W7OLMG=y diff --git a/configs/WUH405_defconfig b/configs/WUH405_defconfig new file mode 100644 index 0000000..dadea20 --- /dev/null +++ b/configs/WUH405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_WUH405=y diff --git a/configs/ZUMA_defconfig b/configs/ZUMA_defconfig new file mode 100644 index 0000000..536f8bb --- /dev/null +++ b/configs/ZUMA_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_ZUMA=y diff --git a/configs/a320evb_defconfig b/configs/a320evb_defconfig new file mode 100644 index 0000000..5ebf5e6 --- /dev/null +++ b/configs/a320evb_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_A320EVB=y diff --git a/configs/a3m071_defconfig b/configs/a3m071_defconfig new file mode 100644 index 0000000..16218c0 --- /dev/null +++ b/configs/a3m071_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y ++S:CONFIG_PPC=y ++S:CONFIG_MPC5xxx=y ++S:CONFIG_TARGET_A3M071=y diff --git a/configs/a4m072_defconfig b/configs/a4m072_defconfig new file mode 100644 index 0000000..ddc8d3f --- /dev/null +++ b/configs/a4m072_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_A4M072=y diff --git a/configs/a4m2k_defconfig b/configs/a4m2k_defconfig new file mode 100644 index 0000000..15f04f9 --- /dev/null +++ b/configs/a4m2k_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="A4M2K" ++S:CONFIG_PPC=y ++S:CONFIG_MPC5xxx=y ++S:CONFIG_TARGET_A3M071=y diff --git a/configs/ac14xx_defconfig b/configs/ac14xx_defconfig new file mode 100644 index 0000000..3796632 --- /dev/null +++ b/configs/ac14xx_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC512X=y +CONFIG_TARGET_AC14XX=y diff --git a/configs/acadia_defconfig b/configs/acadia_defconfig new file mode 100644 index 0000000..26221ce --- /dev/null +++ b/configs/acadia_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_ACADIA=y diff --git a/configs/adp-ag101_defconfig b/configs/adp-ag101_defconfig new file mode 100644 index 0000000..2891154 --- /dev/null +++ b/configs/adp-ag101_defconfig @@ -0,0 +1,2 @@ +CONFIG_NDS32=y +CONFIG_TARGET_ADP_AG101=y diff --git a/configs/adp-ag101p_defconfig b/configs/adp-ag101p_defconfig new file mode 100644 index 0000000..0a7a64c --- /dev/null +++ b/configs/adp-ag101p_defconfig @@ -0,0 +1,2 @@ +CONFIG_NDS32=y +CONFIG_TARGET_ADP_AG101P=y diff --git a/configs/adp-ag102_defconfig b/configs/adp-ag102_defconfig new file mode 100644 index 0000000..03f2241 --- /dev/null +++ b/configs/adp-ag102_defconfig @@ -0,0 +1,2 @@ +CONFIG_NDS32=y +CONFIG_TARGET_ADP_AG102=y diff --git a/configs/aev_defconfig b/configs/aev_defconfig new file mode 100644 index 0000000..b2a9589 --- /dev/null +++ b/configs/aev_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_AEV=y diff --git a/configs/afeb9260_defconfig b/configs/afeb9260_defconfig new file mode 100644 index 0000000..2616d2d --- /dev/null +++ b/configs/afeb9260_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_AFEB9260=y diff --git a/configs/alpr_defconfig b/configs/alpr_defconfig new file mode 100644 index 0000000..9f613c8 --- /dev/null +++ b/configs/alpr_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_ALPR=y diff --git a/configs/alt_defconfig b/configs/alt_defconfig new file mode 100644 index 0000000..11a1c89 --- /dev/null +++ b/configs/alt_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_ALT=y diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig new file mode 100644 index 0000000..38450c0 --- /dev/null +++ b/configs/am335x_boneblack_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig new file mode 100644 index 0000000..00317c4 --- /dev/null +++ b/configs/am335x_boneblack_vboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT,ENABLE_VBOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig new file mode 100644 index 0000000..7710dc0 --- /dev/null +++ b/configs/am335x_evm_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig new file mode 100644 index 0000000..fecec5e --- /dev/null +++ b/configs/am335x_evm_nor_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,NOR" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_norboot_defconfig b/configs/am335x_evm_norboot_defconfig new file mode 100644 index 0000000..6005c22 --- /dev/null +++ b/configs/am335x_evm_norboot_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NOR,NOR_BOOT" +CONFIG_ARM=y +CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig new file mode 100644 index 0000000..389d1d8 --- /dev/null +++ b/configs/am335x_evm_spiboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,SPI_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_uart1_defconfig b/configs/am335x_evm_uart1_defconfig new file mode 100644 index 0000000..14e8879 --- /dev/null +++ b/configs/am335x_evm_uart1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL2,CONS_INDEX=2,NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_uart2_defconfig b/configs/am335x_evm_uart2_defconfig new file mode 100644 index 0000000..706ced9 --- /dev/null +++ b/configs/am335x_evm_uart2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL3,CONS_INDEX=3,NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_uart3_defconfig b/configs/am335x_evm_uart3_defconfig new file mode 100644 index 0000000..4706868 --- /dev/null +++ b/configs/am335x_evm_uart3_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL4,CONS_INDEX=4,NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_uart4_defconfig b/configs/am335x_evm_uart4_defconfig new file mode 100644 index 0000000..8ab7769 --- /dev/null +++ b/configs/am335x_evm_uart4_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL5,CONS_INDEX=5,NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_uart5_defconfig b/configs/am335x_evm_uart5_defconfig new file mode 100644 index 0000000..ea3b761 --- /dev/null +++ b/configs/am335x_evm_uart5_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL6,CONS_INDEX=6,NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig new file mode 100644 index 0000000..b6b30c6 --- /dev/null +++ b/configs/am335x_evm_usbspl_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,SPL_USBETH_SUPPORT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_EVM=y diff --git a/configs/am335x_igep0033_defconfig b/configs/am335x_igep0033_defconfig new file mode 100644 index 0000000..23f0a32 --- /dev/null +++ b/configs/am335x_igep0033_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM335X_IGEP0033=y diff --git a/configs/am3517_crane_defconfig b/configs/am3517_crane_defconfig new file mode 100644 index 0000000..ec93224 --- /dev/null +++ b/configs/am3517_crane_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM3517_CRANE=y diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig new file mode 100644 index 0000000..1fab6c1 --- /dev/null +++ b/configs/am3517_evm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM3517_EVM=y diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig new file mode 100644 index 0000000..369f2a4 --- /dev/null +++ b/configs/am43xx_evm_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_AM43XX_EVM=y diff --git a/configs/am43xx_evm_qspiboot_defconfig b/configs/am43xx_evm_qspiboot_defconfig new file mode 100644 index 0000000..281a215 --- /dev/null +++ b/configs/am43xx_evm_qspiboot_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,QSPI,QSPI_BOOT" +CONFIG_ARM=y +CONFIG_TARGET_AM43XX_EVM=y diff --git a/configs/ap325rxa_defconfig b/configs/ap325rxa_defconfig new file mode 100644 index 0000000..ae2039c --- /dev/null +++ b/configs/ap325rxa_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_AP325RXA=y diff --git a/configs/ap_sh4a_4a_defconfig b/configs/ap_sh4a_4a_defconfig new file mode 100644 index 0000000..f76329b --- /dev/null +++ b/configs/ap_sh4a_4a_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_AP_SH4A_4A=y diff --git a/configs/apf27_defconfig b/configs/apf27_defconfig new file mode 100644 index 0000000..67effa1 --- /dev/null +++ b/configs/apf27_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_APF27=y diff --git a/configs/apx4devkit_defconfig b/configs/apx4devkit_defconfig new file mode 100644 index 0000000..a47d630 --- /dev/null +++ b/configs/apx4devkit_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_APX4DEVKIT=y diff --git a/configs/arcangel4-be_defconfig b/configs/arcangel4-be_defconfig new file mode 100644 index 0000000..867fb1f --- /dev/null +++ b/configs/arcangel4-be_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARC=y +CONFIG_TARGET_ARCANGEL4_BE=y diff --git a/configs/arcangel4_defconfig b/configs/arcangel4_defconfig new file mode 100644 index 0000000..82b583e --- /dev/null +++ b/configs/arcangel4_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARC=y +CONFIG_TARGET_ARCANGEL4=y diff --git a/configs/arches_defconfig b/configs/arches_defconfig new file mode 100644 index 0000000..18d0a14 --- /dev/null +++ b/configs/arches_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARCHES" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CANYONLANDS=y diff --git a/configs/aria_defconfig b/configs/aria_defconfig new file mode 100644 index 0000000..f7ebfa6 --- /dev/null +++ b/configs/aria_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC512X=y +CONFIG_TARGET_ARIA=y diff --git a/configs/armadillo-800eva_defconfig b/configs/armadillo-800eva_defconfig new file mode 100644 index 0000000..081c88a --- /dev/null +++ b/configs/armadillo-800eva_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_ARMADILLO_800EVA=y diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig new file mode 100644 index 0000000..7cc4307 --- /dev/null +++ b/configs/arndale_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ARNDALE=y diff --git a/configs/aspenite_defconfig b/configs/aspenite_defconfig new file mode 100644 index 0000000..0b341d6 --- /dev/null +++ b/configs/aspenite_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_ASPENITE=y diff --git a/configs/astro_mcf5373l_defconfig b/configs/astro_mcf5373l_defconfig new file mode 100644 index 0000000..6807aee --- /dev/null +++ b/configs/astro_mcf5373l_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_ASTRO_MCF5373L=y diff --git a/configs/at91rm9200ek_defconfig b/configs/at91rm9200ek_defconfig new file mode 100644 index 0000000..95b5c27 --- /dev/null +++ b/configs/at91rm9200ek_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_AT91RM9200EK=y diff --git a/configs/at91rm9200ek_ram_defconfig b/configs/at91rm9200ek_ram_defconfig new file mode 100644 index 0000000..5039ebc --- /dev/null +++ b/configs/at91rm9200ek_ram_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT" +CONFIG_ARM=y +CONFIG_TARGET_AT91RM9200EK=y diff --git a/configs/at91sam9260ek_dataflash_cs0_defconfig b/configs/at91sam9260ek_dataflash_cs0_defconfig new file mode 100644 index 0000000..7f929c8 --- /dev/null +++ b/configs/at91sam9260ek_dataflash_cs0_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260,SYS_USE_DATAFLASH_CS0" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9260ek_dataflash_cs1_defconfig b/configs/at91sam9260ek_dataflash_cs1_defconfig new file mode 100644 index 0000000..e2c32bf --- /dev/null +++ b/configs/at91sam9260ek_dataflash_cs1_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260,SYS_USE_DATAFLASH_CS1" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9260ek_nandflash_defconfig b/configs/at91sam9260ek_nandflash_defconfig new file mode 100644 index 0000000..1168cac --- /dev/null +++ b/configs/at91sam9260ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9261ek_dataflash_cs0_defconfig b/configs/at91sam9261ek_dataflash_cs0_defconfig new file mode 100644 index 0000000..486eeb2 --- /dev/null +++ b/configs/at91sam9261ek_dataflash_cs0_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9261,SYS_USE_DATAFLASH_CS0" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9261EK=y diff --git a/configs/at91sam9261ek_dataflash_cs3_defconfig b/configs/at91sam9261ek_dataflash_cs3_defconfig new file mode 100644 index 0000000..5f42a90 --- /dev/null +++ b/configs/at91sam9261ek_dataflash_cs3_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9261,SYS_USE_DATAFLASH_CS3" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9261EK=y diff --git a/configs/at91sam9261ek_nandflash_defconfig b/configs/at91sam9261ek_nandflash_defconfig new file mode 100644 index 0000000..4d7aa90 --- /dev/null +++ b/configs/at91sam9261ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9261,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9261EK=y diff --git a/configs/at91sam9263ek_dataflash_cs0_defconfig b/configs/at91sam9263ek_dataflash_cs0_defconfig new file mode 100644 index 0000000..4dce54e --- /dev/null +++ b/configs/at91sam9263ek_dataflash_cs0_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_DATAFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9263EK=y diff --git a/configs/at91sam9263ek_dataflash_defconfig b/configs/at91sam9263ek_dataflash_defconfig new file mode 100644 index 0000000..4dce54e --- /dev/null +++ b/configs/at91sam9263ek_dataflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_DATAFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9263EK=y diff --git a/configs/at91sam9263ek_nandflash_defconfig b/configs/at91sam9263ek_nandflash_defconfig new file mode 100644 index 0000000..6f60daa --- /dev/null +++ b/configs/at91sam9263ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9263EK=y diff --git a/configs/at91sam9263ek_norflash_boot_defconfig b/configs/at91sam9263ek_norflash_boot_defconfig new file mode 100644 index 0000000..944c14d --- /dev/null +++ b/configs/at91sam9263ek_norflash_boot_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_BOOT_NORFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9263EK=y diff --git a/configs/at91sam9263ek_norflash_defconfig b/configs/at91sam9263ek_norflash_defconfig new file mode 100644 index 0000000..b54ef7f --- /dev/null +++ b/configs/at91sam9263ek_norflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_NORFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9263EK=y diff --git a/configs/at91sam9g10ek_dataflash_cs0_defconfig b/configs/at91sam9g10ek_dataflash_cs0_defconfig new file mode 100644 index 0000000..132102d --- /dev/null +++ b/configs/at91sam9g10ek_dataflash_cs0_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G10,SYS_USE_DATAFLASH_CS0" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9261EK=y diff --git a/configs/at91sam9g10ek_dataflash_cs3_defconfig b/configs/at91sam9g10ek_dataflash_cs3_defconfig new file mode 100644 index 0000000..3dd3f9a --- /dev/null +++ b/configs/at91sam9g10ek_dataflash_cs3_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G10,SYS_USE_DATAFLASH_CS3" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9261EK=y diff --git a/configs/at91sam9g10ek_nandflash_defconfig b/configs/at91sam9g10ek_nandflash_defconfig new file mode 100644 index 0000000..a2bd6df --- /dev/null +++ b/configs/at91sam9g10ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G10,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9261EK=y diff --git a/configs/at91sam9g20ek_2mmc_nandflash_defconfig b/configs/at91sam9g20ek_2mmc_nandflash_defconfig new file mode 100644 index 0000000..1a4c505 --- /dev/null +++ b/configs/at91sam9g20ek_2mmc_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,AT91SAM9G20EK_2MMC,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9g20ek_dataflash_cs0_defconfig b/configs/at91sam9g20ek_dataflash_cs0_defconfig new file mode 100644 index 0000000..cf35782 --- /dev/null +++ b/configs/at91sam9g20ek_dataflash_cs0_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_DATAFLASH_CS0" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9g20ek_dataflash_cs1_defconfig b/configs/at91sam9g20ek_dataflash_cs1_defconfig new file mode 100644 index 0000000..1377ad9 --- /dev/null +++ b/configs/at91sam9g20ek_dataflash_cs1_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_DATAFLASH_CS1" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9g20ek_mmc_defconfig b/configs/at91sam9g20ek_mmc_defconfig new file mode 100644 index 0000000..8cca2e5 --- /dev/null +++ b/configs/at91sam9g20ek_mmc_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_MMC" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9g20ek_nandflash_defconfig b/configs/at91sam9g20ek_nandflash_defconfig new file mode 100644 index 0000000..cfe9127 --- /dev/null +++ b/configs/at91sam9g20ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9m10g45ek_mmc_defconfig b/configs/at91sam9m10g45ek_mmc_defconfig new file mode 100644 index 0000000..1681bc8 --- /dev/null +++ b/configs/at91sam9m10g45ek_mmc_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9M10G45,SYS_USE_MMC" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9M10G45EK=y diff --git a/configs/at91sam9m10g45ek_nandflash_defconfig b/configs/at91sam9m10g45ek_nandflash_defconfig new file mode 100644 index 0000000..61ae56e --- /dev/null +++ b/configs/at91sam9m10g45ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9M10G45,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9M10G45EK=y diff --git a/configs/at91sam9n12ek_mmc_defconfig b/configs/at91sam9n12ek_mmc_defconfig new file mode 100644 index 0000000..71d1658 --- /dev/null +++ b/configs/at91sam9n12ek_mmc_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9N12,SYS_USE_MMC" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9N12EK=y diff --git a/configs/at91sam9n12ek_nandflash_defconfig b/configs/at91sam9n12ek_nandflash_defconfig new file mode 100644 index 0000000..6f677b1 --- /dev/null +++ b/configs/at91sam9n12ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9N12,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9N12EK=y diff --git a/configs/at91sam9n12ek_spiflash_defconfig b/configs/at91sam9n12ek_spiflash_defconfig new file mode 100644 index 0000000..7e898f0 --- /dev/null +++ b/configs/at91sam9n12ek_spiflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9N12,SYS_USE_SPIFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9N12EK=y diff --git a/configs/at91sam9rlek_dataflash_defconfig b/configs/at91sam9rlek_dataflash_defconfig new file mode 100644 index 0000000..90516e0 --- /dev/null +++ b/configs/at91sam9rlek_dataflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9RL,SYS_USE_DATAFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9RLEK=y diff --git a/configs/at91sam9rlek_nandflash_defconfig b/configs/at91sam9rlek_nandflash_defconfig new file mode 100644 index 0000000..0e2edfd --- /dev/null +++ b/configs/at91sam9rlek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9RL,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9RLEK=y diff --git a/configs/at91sam9x5ek_dataflash_defconfig b/configs/at91sam9x5ek_dataflash_defconfig new file mode 100644 index 0000000..d00eed5 --- /dev/null +++ b/configs/at91sam9x5ek_dataflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9X5,SYS_USE_DATAFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9X5EK=y diff --git a/configs/at91sam9x5ek_mmc_defconfig b/configs/at91sam9x5ek_mmc_defconfig new file mode 100644 index 0000000..64f7af9 --- /dev/null +++ b/configs/at91sam9x5ek_mmc_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9X5,SYS_USE_MMC" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9X5EK=y diff --git a/configs/at91sam9x5ek_nandflash_defconfig b/configs/at91sam9x5ek_nandflash_defconfig new file mode 100644 index 0000000..47cd1e0 --- /dev/null +++ b/configs/at91sam9x5ek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9X5,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9X5EK=y diff --git a/configs/at91sam9x5ek_spiflash_defconfig b/configs/at91sam9x5ek_spiflash_defconfig new file mode 100644 index 0000000..1b7391e --- /dev/null +++ b/configs/at91sam9x5ek_spiflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9X5,SYS_USE_SPIFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9X5EK=y diff --git a/configs/at91sam9xeek_dataflash_cs0_defconfig b/configs/at91sam9xeek_dataflash_cs0_defconfig new file mode 100644 index 0000000..ccbccd4 --- /dev/null +++ b/configs/at91sam9xeek_dataflash_cs0_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9XE,SYS_USE_DATAFLASH_CS0" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9xeek_dataflash_cs1_defconfig b/configs/at91sam9xeek_dataflash_cs1_defconfig new file mode 100644 index 0000000..e8f4cc3 --- /dev/null +++ b/configs/at91sam9xeek_dataflash_cs1_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9XE,SYS_USE_DATAFLASH_CS1" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/at91sam9xeek_nandflash_defconfig b/configs/at91sam9xeek_nandflash_defconfig new file mode 100644 index 0000000..49c5d78 --- /dev/null +++ b/configs/at91sam9xeek_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9XE,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_AT91SAM9260EK=y diff --git a/configs/atc_defconfig b/configs/atc_defconfig new file mode 100644 index 0000000..967be47 --- /dev/null +++ b/configs/atc_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_ATC=y diff --git a/configs/atngw100_defconfig b/configs/atngw100_defconfig new file mode 100644 index 0000000..cd79990 --- /dev/null +++ b/configs/atngw100_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_ATNGW100=y diff --git a/configs/atngw100mkii_defconfig b/configs/atngw100mkii_defconfig new file mode 100644 index 0000000..88b1de2 --- /dev/null +++ b/configs/atngw100mkii_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_ATNGW100MKII=y diff --git a/configs/atstk1002_defconfig b/configs/atstk1002_defconfig new file mode 100644 index 0000000..d6e9a77 --- /dev/null +++ b/configs/atstk1002_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_ATSTK1002=y diff --git a/configs/atstk1003_defconfig b/configs/atstk1003_defconfig new file mode 100644 index 0000000..b704532 --- /dev/null +++ b/configs/atstk1003_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_ATSTK1003=y diff --git a/configs/atstk1004_defconfig b/configs/atstk1004_defconfig new file mode 100644 index 0000000..7650254 --- /dev/null +++ b/configs/atstk1004_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_ATSTK1004=y diff --git a/configs/atstk1006_defconfig b/configs/atstk1006_defconfig new file mode 100644 index 0000000..54beb0b --- /dev/null +++ b/configs/atstk1006_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_ATSTK1006=y diff --git a/configs/axm_defconfig b/configs/axm_defconfig new file mode 100644 index 0000000..c0e8da2 --- /dev/null +++ b/configs/axm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2068,BOARD_AXM" +CONFIG_ARM=y +CONFIG_TARGET_TAURUS=y diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig new file mode 100644 index 0000000..bfa314e --- /dev/null +++ b/configs/axs101_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARC=y +CONFIG_TARGET_AXS101=y diff --git a/configs/ba10_tv_box_defconfig b/configs/ba10_tv_box_defconfig new file mode 100644 index 0000000..02a2538 --- /dev/null +++ b/configs/ba10_tv_box_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="BA10_TV_BOX,SPL,AXP209_POWER,SUNXI_EMAC,USB_EHCI,SUNXI_USB_VBUS1_GPIO=SUNXI_GPH(12)" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN4I=y diff --git a/configs/balloon3_defconfig b/configs/balloon3_defconfig new file mode 100644 index 0000000..a1f4adb --- /dev/null +++ b/configs/balloon3_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_BALLOON3=y diff --git a/configs/bamboo_defconfig b/configs/bamboo_defconfig new file mode 100644 index 0000000..1d66807 --- /dev/null +++ b/configs/bamboo_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_BAMBOO=y diff --git a/configs/bcm28155_ap_defconfig b/configs/bcm28155_ap_defconfig new file mode 100644 index 0000000..0a1c592 --- /dev/null +++ b/configs/bcm28155_ap_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_BCM28155_AP=y diff --git a/configs/bct-brettl2_defconfig b/configs/bct-brettl2_defconfig new file mode 100644 index 0000000..3676306 --- /dev/null +++ b/configs/bct-brettl2_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BCT_BRETTL2=y diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig new file mode 100644 index 0000000..0e70f25 --- /dev/null +++ b/configs/beaver_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_BEAVER=y diff --git a/configs/bf506f-ezkit_defconfig b/configs/bf506f-ezkit_defconfig new file mode 100644 index 0000000..f81f412 --- /dev/null +++ b/configs/bf506f-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF506F_EZKIT=y diff --git a/configs/bf518f-ezbrd_defconfig b/configs/bf518f-ezbrd_defconfig new file mode 100644 index 0000000..a93eed0 --- /dev/null +++ b/configs/bf518f-ezbrd_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF518F_EZBRD=y diff --git a/configs/bf525-ucr2_defconfig b/configs/bf525-ucr2_defconfig new file mode 100644 index 0000000..692e006 --- /dev/null +++ b/configs/bf525-ucr2_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF525_UCR2=y diff --git a/configs/bf526-ezbrd_defconfig b/configs/bf526-ezbrd_defconfig new file mode 100644 index 0000000..4a45223 --- /dev/null +++ b/configs/bf526-ezbrd_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF526_EZBRD=y diff --git a/configs/bf527-ad7160-eval_defconfig b/configs/bf527-ad7160-eval_defconfig new file mode 100644 index 0000000..d9db715 --- /dev/null +++ b/configs/bf527-ad7160-eval_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF527_AD7160_EVAL=y diff --git a/configs/bf527-ezkit-v2_defconfig b/configs/bf527-ezkit-v2_defconfig new file mode 100644 index 0000000..aedbb96 --- /dev/null +++ b/configs/bf527-ezkit-v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="BF527_EZKIT_REV_2_1" +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF527_EZKIT=y diff --git a/configs/bf527-ezkit_defconfig b/configs/bf527-ezkit_defconfig new file mode 100644 index 0000000..3ed77a6 --- /dev/null +++ b/configs/bf527-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF527_EZKIT=y diff --git a/configs/bf527-sdp_defconfig b/configs/bf527-sdp_defconfig new file mode 100644 index 0000000..0f8c28c --- /dev/null +++ b/configs/bf527-sdp_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF527_SDP=y diff --git a/configs/bf533-ezkit_defconfig b/configs/bf533-ezkit_defconfig new file mode 100644 index 0000000..217d4c3 --- /dev/null +++ b/configs/bf533-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF533_EZKIT=y diff --git a/configs/bf533-stamp_defconfig b/configs/bf533-stamp_defconfig new file mode 100644 index 0000000..a99b3c7 --- /dev/null +++ b/configs/bf533-stamp_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF533_STAMP=y diff --git a/configs/bf537-minotaur_defconfig b/configs/bf537-minotaur_defconfig new file mode 100644 index 0000000..e76118f --- /dev/null +++ b/configs/bf537-minotaur_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF537_MINOTAUR=y diff --git a/configs/bf537-pnav_defconfig b/configs/bf537-pnav_defconfig new file mode 100644 index 0000000..ba5eaaa --- /dev/null +++ b/configs/bf537-pnav_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF537_PNAV=y diff --git a/configs/bf537-srv1_defconfig b/configs/bf537-srv1_defconfig new file mode 100644 index 0000000..61ac0e7 --- /dev/null +++ b/configs/bf537-srv1_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF537_SRV1=y diff --git a/configs/bf537-stamp_defconfig b/configs/bf537-stamp_defconfig new file mode 100644 index 0000000..d9daf7e --- /dev/null +++ b/configs/bf537-stamp_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF537_STAMP=y diff --git a/configs/bf538f-ezkit_defconfig b/configs/bf538f-ezkit_defconfig new file mode 100644 index 0000000..0507cb2 --- /dev/null +++ b/configs/bf538f-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF538F_EZKIT=y diff --git a/configs/bf548-ezkit_defconfig b/configs/bf548-ezkit_defconfig new file mode 100644 index 0000000..7bb4064 --- /dev/null +++ b/configs/bf548-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF548_EZKIT=y diff --git a/configs/bf561-acvilon_defconfig b/configs/bf561-acvilon_defconfig new file mode 100644 index 0000000..ba8a418 --- /dev/null +++ b/configs/bf561-acvilon_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF561_ACVILON=y diff --git a/configs/bf561-ezkit_defconfig b/configs/bf561-ezkit_defconfig new file mode 100644 index 0000000..7ceb1d9 --- /dev/null +++ b/configs/bf561-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF561_EZKIT=y diff --git a/configs/bf609-ezkit_defconfig b/configs/bf609-ezkit_defconfig new file mode 100644 index 0000000..2bfb6a5 --- /dev/null +++ b/configs/bf609-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BF609_EZKIT=y diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig new file mode 100644 index 0000000..b8c8352 --- /dev/null +++ b/configs/bg0900_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_BG0900=y diff --git a/configs/blackstamp_defconfig b/configs/blackstamp_defconfig new file mode 100644 index 0000000..d531ffc --- /dev/null +++ b/configs/blackstamp_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BLACKSTAMP=y diff --git a/configs/blackvme_defconfig b/configs/blackvme_defconfig new file mode 100644 index 0000000..1ec2fa9 --- /dev/null +++ b/configs/blackvme_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BLACKVME=y diff --git a/configs/bluestone_defconfig b/configs/bluestone_defconfig new file mode 100644 index 0000000..8f83a43 --- /dev/null +++ b/configs/bluestone_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_BLUESTONE=y diff --git a/configs/br4_defconfig b/configs/br4_defconfig new file mode 100644 index 0000000..9d91933 --- /dev/null +++ b/configs/br4_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_BR4=y diff --git a/configs/bubinga_defconfig b/configs/bubinga_defconfig new file mode 100644 index 0000000..65ea4d1 --- /dev/null +++ b/configs/bubinga_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_BUBINGA=y diff --git a/configs/caddy2_defconfig b/configs/caddy2_defconfig new file mode 100644 index 0000000..6e4a389 --- /dev/null +++ b/configs/caddy2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CADDY2" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_VME8349=y diff --git a/configs/calimain_defconfig b/configs/calimain_defconfig new file mode 100644 index 0000000..a808ddf --- /dev/null +++ b/configs/calimain_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_CALIMAIN=y diff --git a/configs/cam5200_defconfig b/configs/cam5200_defconfig new file mode 100644 index 0000000..d3de17b --- /dev/null +++ b/configs/cam5200_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CAM5200,TQM5200S,TQM5200_B" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/cam5200_niosflash_defconfig b/configs/cam5200_niosflash_defconfig new file mode 100644 index 0000000..a375e13 --- /dev/null +++ b/configs/cam5200_niosflash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CAM5200,TQM5200S,TQM5200_B,CAM5200_NIOSFLASH" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/cam_enc_4xx_defconfig b/configs/cam_enc_4xx_defconfig new file mode 100644 index 0000000..1417d83 --- /dev/null +++ b/configs/cam_enc_4xx_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_CAM_ENC_4XX=y diff --git a/configs/canmb_defconfig b/configs/canmb_defconfig new file mode 100644 index 0000000..86ffbd2 --- /dev/null +++ b/configs/canmb_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_CANMB=y diff --git a/configs/canyonlands_defconfig b/configs/canyonlands_defconfig new file mode 100644 index 0000000..09b9ab9 --- /dev/null +++ b/configs/canyonlands_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CANYONLANDS" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CANYONLANDS=y diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig new file mode 100644 index 0000000..564ad5a --- /dev/null +++ b/configs/cardhu_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_CARDHU=y diff --git a/configs/cgtqmx6qeval_defconfig b/configs/cgtqmx6qeval_defconfig new file mode 100644 index 0000000..6699381 --- /dev/null +++ b/configs/cgtqmx6qeval_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/imx/ddr/mx6q_4x_mt41j128.cfg,MX6Q" +CONFIG_ARM=y +CONFIG_TARGET_CGTQMX6EVAL=y diff --git a/configs/charon_defconfig b/configs/charon_defconfig new file mode 100644 index 0000000..1dd3f5d --- /dev/null +++ b/configs/charon_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_CHARON=y diff --git a/configs/cm-bf527_defconfig b/configs/cm-bf527_defconfig new file mode 100644 index 0000000..cb5110c --- /dev/null +++ b/configs/cm-bf527_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_CM_BF527=y diff --git a/configs/cm-bf533_defconfig b/configs/cm-bf533_defconfig new file mode 100644 index 0000000..aa38d0e --- /dev/null +++ b/configs/cm-bf533_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_CM_BF533=y diff --git a/configs/cm-bf537e_defconfig b/configs/cm-bf537e_defconfig new file mode 100644 index 0000000..b9deaae --- /dev/null +++ b/configs/cm-bf537e_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_CM_BF537E=y diff --git a/configs/cm-bf537u_defconfig b/configs/cm-bf537u_defconfig new file mode 100644 index 0000000..16f7ae1 --- /dev/null +++ b/configs/cm-bf537u_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_CM_BF537U=y diff --git a/configs/cm-bf548_defconfig b/configs/cm-bf548_defconfig new file mode 100644 index 0000000..e60306a --- /dev/null +++ b/configs/cm-bf548_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_CM_BF548=y diff --git a/configs/cm-bf561_defconfig b/configs/cm-bf561_defconfig new file mode 100644 index 0000000..1b9301c --- /dev/null +++ b/configs/cm-bf561_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_CM_BF561=y diff --git a/configs/cm4008_defconfig b/configs/cm4008_defconfig new file mode 100644 index 0000000..487589d --- /dev/null +++ b/configs/cm4008_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_CM4008=y diff --git a/configs/cm41xx_defconfig b/configs/cm41xx_defconfig new file mode 100644 index 0000000..15e9362 --- /dev/null +++ b/configs/cm41xx_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_CM41XX=y diff --git a/configs/cm5200_defconfig b/configs/cm5200_defconfig new file mode 100644 index 0000000..8f5dd3c --- /dev/null +++ b/configs/cm5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_CM5200=y diff --git a/configs/cm_t335_defconfig b/configs/cm_t335_defconfig new file mode 100644 index 0000000..5ff4f9c --- /dev/null +++ b/configs/cm_t335_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_CM_T335=y diff --git a/configs/cm_t35_defconfig b/configs/cm_t35_defconfig new file mode 100644 index 0000000..00b0590 --- /dev/null +++ b/configs/cm_t35_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_CM_T35=y diff --git a/configs/cm_t54_defconfig b/configs/cm_t54_defconfig new file mode 100644 index 0000000..b48a171 --- /dev/null +++ b/configs/cm_t54_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_CM_T54=y diff --git a/configs/cmi_mpc5xx_defconfig b/configs/cmi_mpc5xx_defconfig new file mode 100644 index 0000000..5c855b1 --- /dev/null +++ b/configs/cmi_mpc5xx_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_5xx=y +CONFIG_TARGET_CMI_MPC5XX=y diff --git a/configs/cobra5272_defconfig b/configs/cobra5272_defconfig new file mode 100644 index 0000000..dc1552d --- /dev/null +++ b/configs/cobra5272_defconfig @@ -0,0 +1,2 @@ +CONFIG_M68K=y +CONFIG_TARGET_COBRA5272=y diff --git a/configs/cogent_mpc8260_defconfig b/configs/cogent_mpc8260_defconfig new file mode 100644 index 0000000..dc297f1 --- /dev/null +++ b/configs/cogent_mpc8260_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_COGENT_MPC8260=y diff --git a/configs/cogent_mpc8xx_defconfig b/configs/cogent_mpc8xx_defconfig new file mode 100644 index 0000000..2fe7a5a --- /dev/null +++ b/configs/cogent_mpc8xx_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_COGENT_MPC8XX=y diff --git a/configs/colibri_pxa270_defconfig b/configs/colibri_pxa270_defconfig new file mode 100644 index 0000000..c8faf0b --- /dev/null +++ b/configs/colibri_pxa270_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_COLIBRI_PXA270=y diff --git a/configs/colibri_t20_iris_defconfig b/configs/colibri_t20_iris_defconfig new file mode 100644 index 0000000..8ff2464 --- /dev/null +++ b/configs/colibri_t20_iris_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_COLIBRI_T20_IRIS=y diff --git a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig new file mode 100644 index 0000000..661e85c --- /dev/null +++ b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="36BIT,SDCARD,DEVELOP" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_CONTROLCENTERD=y diff --git a/configs/controlcenterd_36BIT_SDCARD_defconfig b/configs/controlcenterd_36BIT_SDCARD_defconfig new file mode 100644 index 0000000..76ab9d3 --- /dev/null +++ b/configs/controlcenterd_36BIT_SDCARD_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="36BIT,SDCARD" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_CONTROLCENTERD=y diff --git a/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig new file mode 100644 index 0000000..be1a371 --- /dev/null +++ b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TRAILBLAZER,SPIFLASH,DEVELOP" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_CONTROLCENTERD=y diff --git a/configs/controlcenterd_TRAILBLAZER_defconfig b/configs/controlcenterd_TRAILBLAZER_defconfig new file mode 100644 index 0000000..ab548a6 --- /dev/null +++ b/configs/controlcenterd_TRAILBLAZER_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TRAILBLAZER,SPIFLASH" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_CONTROLCENTERD=y diff --git a/configs/coreboot-x86_defconfig b/configs/coreboot-x86_defconfig new file mode 100644 index 0000000..a06c527 --- /dev/null +++ b/configs/coreboot-x86_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x01110000" +CONFIG_X86=y +CONFIG_TARGET_COREBOOT=y diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig new file mode 100644 index 0000000..3fc8edb --- /dev/null +++ b/configs/corvus_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9M10G45,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_CORVUS=y diff --git a/configs/cpci5200_defconfig b/configs/cpci5200_defconfig new file mode 100644 index 0000000..bdbf4fc --- /dev/null +++ b/configs/cpci5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_CPCI5200=y diff --git a/configs/cpu9260_128M_defconfig b/configs/cpu9260_128M_defconfig new file mode 100644 index 0000000..86fc6bd --- /dev/null +++ b/configs/cpu9260_128M_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9260,CPU9260_128M" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpu9260_defconfig b/configs/cpu9260_defconfig new file mode 100644 index 0000000..10299e3 --- /dev/null +++ b/configs/cpu9260_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9260" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpu9260_nand_128M_defconfig b/configs/cpu9260_nand_128M_defconfig new file mode 100644 index 0000000..e582a15 --- /dev/null +++ b/configs/cpu9260_nand_128M_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9260,CPU9260_128M,NANDBOOT" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpu9260_nand_defconfig b/configs/cpu9260_nand_defconfig new file mode 100644 index 0000000..40988cd --- /dev/null +++ b/configs/cpu9260_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9260,NANDBOOT" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpu9G20_128M_defconfig b/configs/cpu9G20_128M_defconfig new file mode 100644 index 0000000..4c28d25 --- /dev/null +++ b/configs/cpu9G20_128M_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9G20,CPU9G20_128M" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpu9G20_defconfig b/configs/cpu9G20_defconfig new file mode 100644 index 0000000..468b2c8 --- /dev/null +++ b/configs/cpu9G20_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9G20" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpu9G20_nand_128M_defconfig b/configs/cpu9G20_nand_128M_defconfig new file mode 100644 index 0000000..a74df9d --- /dev/null +++ b/configs/cpu9G20_nand_128M_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9G20,CPU9G20_128M,NANDBOOT" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpu9G20_nand_defconfig b/configs/cpu9G20_nand_defconfig new file mode 100644 index 0000000..11cc276 --- /dev/null +++ b/configs/cpu9G20_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CPU9G20,NANDBOOT" +CONFIG_ARM=y +CONFIG_TARGET_CPU9260=y diff --git a/configs/cpuat91_defconfig b/configs/cpuat91_defconfig new file mode 100644 index 0000000..d25bd3a --- /dev/null +++ b/configs/cpuat91_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_CPUAT91=y diff --git a/configs/cpuat91_ram_defconfig b/configs/cpuat91_ram_defconfig new file mode 100644 index 0000000..f5b722d --- /dev/null +++ b/configs/cpuat91_ram_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT" +CONFIG_ARM=y +CONFIG_TARGET_CPUAT91=y diff --git a/configs/csb272_defconfig b/configs/csb272_defconfig new file mode 100644 index 0000000..8ccd645 --- /dev/null +++ b/configs/csb272_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CSB272=y diff --git a/configs/csb472_defconfig b/configs/csb472_defconfig new file mode 100644 index 0000000..81a0cf1 --- /dev/null +++ b/configs/csb472_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CSB472=y diff --git a/configs/d2net_v2_defconfig b/configs/d2net_v2_defconfig new file mode 100644 index 0000000..e53aed7 --- /dev/null +++ b/configs/d2net_v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="D2NET_V2" +CONFIG_ARM=y +CONFIG_TARGET_NET2BIG_V2=y diff --git a/configs/da830evm_defconfig b/configs/da830evm_defconfig new file mode 100644 index 0000000..49e74c3 --- /dev/null +++ b/configs/da830evm_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DA830EVM=y diff --git a/configs/da850_am18xxevm_defconfig b/configs/da850_am18xxevm_defconfig new file mode 100644 index 0000000..af419ce --- /dev/null +++ b/configs/da850_am18xxevm_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="DA850_AM18X_EVM,MAC_ADDR_IN_EEPROM,SYS_I2C_EEPROM_ADDR_LEN=2,SYS_I2C_EEPROM_ADDR=0x50" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DA850EVM=y diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig new file mode 100644 index 0000000..7517e92 --- /dev/null +++ b/configs/da850evm_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MAC_ADDR_IN_SPIFLASH" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DA850EVM=y diff --git a/configs/da850evm_direct_nor_defconfig b/configs/da850evm_direct_nor_defconfig new file mode 100644 index 0000000..edc604a --- /dev/null +++ b/configs/da850evm_direct_nor_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="MAC_ADDR_IN_SPIFLASH,USE_NOR,DIRECT_NOR_BOOT" +CONFIG_ARM=y +CONFIG_TARGET_DA850EVM=y diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig new file mode 100644 index 0000000..288b238 --- /dev/null +++ b/configs/dalmore_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DALMORE=y diff --git a/configs/davinci_dm355evm_defconfig b/configs/davinci_dm355evm_defconfig new file mode 100644 index 0000000..ef0b854 --- /dev/null +++ b/configs/davinci_dm355evm_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_DM355EVM=y diff --git a/configs/davinci_dm355leopard_defconfig b/configs/davinci_dm355leopard_defconfig new file mode 100644 index 0000000..22da9f3 --- /dev/null +++ b/configs/davinci_dm355leopard_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_DM355LEOPARD=y diff --git a/configs/davinci_dm365evm_defconfig b/configs/davinci_dm365evm_defconfig new file mode 100644 index 0000000..dfae0b2 --- /dev/null +++ b/configs/davinci_dm365evm_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_DM365EVM=y diff --git a/configs/davinci_dm6467Tevm_defconfig b/configs/davinci_dm6467Tevm_defconfig new file mode 100644 index 0000000..e2c2de4 --- /dev/null +++ b/configs/davinci_dm6467Tevm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="DAVINCI_DM6467TEVM,REFCLK_FREQ=33000000" +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_DM6467EVM=y diff --git a/configs/davinci_dm6467evm_defconfig b/configs/davinci_dm6467evm_defconfig new file mode 100644 index 0000000..abd3491 --- /dev/null +++ b/configs/davinci_dm6467evm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="REFCLK_FREQ=27000000" +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_DM6467EVM=y diff --git a/configs/davinci_dvevm_defconfig b/configs/davinci_dvevm_defconfig new file mode 100644 index 0000000..eb53692 --- /dev/null +++ b/configs/davinci_dvevm_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_DVEVM=y diff --git a/configs/davinci_schmoogie_defconfig b/configs/davinci_schmoogie_defconfig new file mode 100644 index 0000000..bc166ab --- /dev/null +++ b/configs/davinci_schmoogie_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_SCHMOOGIE=y diff --git a/configs/davinci_sffsdr_defconfig b/configs/davinci_sffsdr_defconfig new file mode 100644 index 0000000..ea9cf88 --- /dev/null +++ b/configs/davinci_sffsdr_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_SFFSDR=y diff --git a/configs/davinci_sonata_defconfig b/configs/davinci_sonata_defconfig new file mode 100644 index 0000000..2c9cd4f --- /dev/null +++ b/configs/davinci_sonata_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DAVINCI_SONATA=y diff --git a/configs/dbau1000_defconfig b/configs/dbau1000_defconfig new file mode 100644 index 0000000..7c95629 --- /dev/null +++ b/configs/dbau1000_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="DBAU1000" +CONFIG_MIPS=y +CONFIG_TARGET_DBAU1X00=y diff --git a/configs/dbau1100_defconfig b/configs/dbau1100_defconfig new file mode 100644 index 0000000..506f5da --- /dev/null +++ b/configs/dbau1100_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="DBAU1100" +CONFIG_MIPS=y +CONFIG_TARGET_DBAU1X00=y diff --git a/configs/dbau1500_defconfig b/configs/dbau1500_defconfig new file mode 100644 index 0000000..5a02a78 --- /dev/null +++ b/configs/dbau1500_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="DBAU1500" +CONFIG_MIPS=y +CONFIG_TARGET_DBAU1X00=y diff --git a/configs/dbau1550_defconfig b/configs/dbau1550_defconfig new file mode 100644 index 0000000..9015023 --- /dev/null +++ b/configs/dbau1550_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="DBAU1550" +CONFIG_MIPS=y +CONFIG_TARGET_DBAU1X00=y diff --git a/configs/dbau1550_el_defconfig b/configs/dbau1550_el_defconfig new file mode 100644 index 0000000..53b35ce --- /dev/null +++ b/configs/dbau1550_el_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="DBAU1550,SYS_LITTLE_ENDIAN" +CONFIG_MIPS=y +CONFIG_TARGET_DBAU1X00=y diff --git a/configs/devconcenter_defconfig b/configs/devconcenter_defconfig new file mode 100644 index 0000000..7f82d7d --- /dev/null +++ b/configs/devconcenter_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="DEVCONCENTER" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_INTIP=y diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig new file mode 100644 index 0000000..ba990bc --- /dev/null +++ b/configs/devkit3250_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DEVKIT3250=y diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig new file mode 100644 index 0000000..7c5d222 --- /dev/null +++ b/configs/devkit8000_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DEVKIT8000=y diff --git a/configs/dig297_defconfig b/configs/dig297_defconfig new file mode 100644 index 0000000..9309ac2 --- /dev/null +++ b/configs/dig297_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DIG297=y diff --git a/configs/digsy_mtc_RAMBOOT_defconfig b/configs/digsy_mtc_RAMBOOT_defconfig new file mode 100644 index 0000000..a1e765b --- /dev/null +++ b/configs/digsy_mtc_RAMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x00100000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_DIGSY_MTC=y diff --git a/configs/digsy_mtc_defconfig b/configs/digsy_mtc_defconfig new file mode 100644 index 0000000..666c5c8 --- /dev/null +++ b/configs/digsy_mtc_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_DIGSY_MTC=y diff --git a/configs/digsy_mtc_rev5_RAMBOOT_defconfig b/configs/digsy_mtc_rev5_RAMBOOT_defconfig new file mode 100644 index 0000000..d356174 --- /dev/null +++ b/configs/digsy_mtc_rev5_RAMBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x00100000,DIGSY_REV5" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_DIGSY_MTC=y diff --git a/configs/digsy_mtc_rev5_defconfig b/configs/digsy_mtc_rev5_defconfig new file mode 100644 index 0000000..f66f86f --- /dev/null +++ b/configs/digsy_mtc_rev5_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="DIGSY_REV5" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_DIGSY_MTC=y diff --git a/configs/dkb_defconfig b/configs/dkb_defconfig new file mode 100644 index 0000000..0be9578 --- /dev/null +++ b/configs/dkb_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DKB=y diff --git a/configs/dlvision-10g_defconfig b/configs/dlvision-10g_defconfig new file mode 100644 index 0000000..1d2a571 --- /dev/null +++ b/configs/dlvision-10g_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_DLVISION_10G=y diff --git a/configs/dlvision_defconfig b/configs/dlvision_defconfig new file mode 100644 index 0000000..c0317dc --- /dev/null +++ b/configs/dlvision_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_DLVISION=y diff --git a/configs/dnp5370_defconfig b/configs/dnp5370_defconfig new file mode 100644 index 0000000..0c00087 --- /dev/null +++ b/configs/dnp5370_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_DNP5370=y diff --git a/configs/dns325_defconfig b/configs/dns325_defconfig new file mode 100644 index 0000000..6a18d2a --- /dev/null +++ b/configs/dns325_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DNS325=y diff --git a/configs/dockstar_defconfig b/configs/dockstar_defconfig new file mode 100644 index 0000000..528669e --- /dev/null +++ b/configs/dockstar_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DOCKSTAR=y diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig new file mode 100644 index 0000000..82cffd7 --- /dev/null +++ b/configs/dra7xx_evm_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=1" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DRA7XX_EVM=y diff --git a/configs/dra7xx_evm_qspiboot_defconfig b/configs/dra7xx_evm_qspiboot_defconfig new file mode 100644 index 0000000..be09f40 --- /dev/null +++ b/configs/dra7xx_evm_qspiboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=1,QSPI_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DRA7XX_EVM=y diff --git a/configs/dra7xx_evm_uart3_defconfig b/configs/dra7xx_evm_uart3_defconfig new file mode 100644 index 0000000..e0d1e45 --- /dev/null +++ b/configs/dra7xx_evm_uart3_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=3,SPL_YMODEM_SUPPORT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DRA7XX_EVM=y diff --git a/configs/draco_defconfig b/configs/draco_defconfig new file mode 100644 index 0000000..18def0b --- /dev/null +++ b/configs/draco_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DRACO=y diff --git a/configs/dreamplug_defconfig b/configs/dreamplug_defconfig new file mode 100644 index 0000000..49de210 --- /dev/null +++ b/configs/dreamplug_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_DREAMPLUG=y diff --git a/configs/duovero_defconfig b/configs/duovero_defconfig new file mode 100644 index 0000000..b56092a --- /dev/null +++ b/configs/duovero_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DUOVERO=y diff --git a/configs/dxr2_defconfig b/configs/dxr2_defconfig new file mode 100644 index 0000000..15f1181 --- /dev/null +++ b/configs/dxr2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_DXR2=y diff --git a/configs/eXalion_defconfig b/configs/eXalion_defconfig new file mode 100644 index 0000000..9d7e090 --- /dev/null +++ b/configs/eXalion_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_EXALION=y diff --git a/configs/ea20_defconfig b/configs/ea20_defconfig new file mode 100644 index 0000000..562849d --- /dev/null +++ b/configs/ea20_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_EA20=y diff --git a/configs/eb_cpu5282_defconfig b/configs/eb_cpu5282_defconfig new file mode 100644 index 0000000..f69aa53 --- /dev/null +++ b/configs/eb_cpu5282_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000,SYS_MONITOR_BASE=0xFF000400" +CONFIG_M68K=y +CONFIG_TARGET_EB_CPU5282=y diff --git a/configs/eb_cpu5282_internal_defconfig b/configs/eb_cpu5282_internal_defconfig new file mode 100644 index 0000000..b590f25 --- /dev/null +++ b/configs/eb_cpu5282_internal_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xF0000000,SYS_MONITOR_BASE=0xF0000418" +CONFIG_M68K=y +CONFIG_TARGET_EB_CPU5282=y diff --git a/configs/eb_cpux9k2_defconfig b/configs/eb_cpux9k2_defconfig new file mode 100644 index 0000000..5f0ab44 --- /dev/null +++ b/configs/eb_cpux9k2_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_EB_CPUX9K2=y diff --git a/configs/eb_cpux9k2_ram_defconfig b/configs/eb_cpux9k2_ram_defconfig new file mode 100644 index 0000000..c6e8b71 --- /dev/null +++ b/configs/eb_cpux9k2_ram_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT" +CONFIG_ARM=y +CONFIG_TARGET_EB_CPUX9K2=y diff --git a/configs/ebony_defconfig b/configs/ebony_defconfig new file mode 100644 index 0000000..db93555 --- /dev/null +++ b/configs/ebony_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_EBONY=y diff --git a/configs/eco5pk_defconfig b/configs/eco5pk_defconfig new file mode 100644 index 0000000..79f3d5a --- /dev/null +++ b/configs/eco5pk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ECO5PK=y diff --git a/configs/ecovec_defconfig b/configs/ecovec_defconfig new file mode 100644 index 0000000..57771e4 --- /dev/null +++ b/configs/ecovec_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_ECOVEC=y diff --git a/configs/edb9315a_defconfig b/configs/edb9315a_defconfig new file mode 100644 index 0000000..e92daf6 --- /dev/null +++ b/configs/edb9315a_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="MK_edb9315a" +CONFIG_ARM=y +CONFIG_TARGET_EDB93XX=y diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig new file mode 100644 index 0000000..82aa684 --- /dev/null +++ b/configs/edminiv2_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_EDMINIV2=y diff --git a/configs/enbw_cmc_defconfig b/configs/enbw_cmc_defconfig new file mode 100644 index 0000000..7fe405a --- /dev/null +++ b/configs/enbw_cmc_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_ENBW_CMC=y diff --git a/configs/ep8260_defconfig b/configs/ep8260_defconfig new file mode 100644 index 0000000..1cce900 --- /dev/null +++ b/configs/ep8260_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_EP8260=y diff --git a/configs/ep82xxm_defconfig b/configs/ep82xxm_defconfig new file mode 100644 index 0000000..0842d2d --- /dev/null +++ b/configs/ep82xxm_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_EP82XXM=y diff --git a/configs/espt_defconfig b/configs/espt_defconfig new file mode 100644 index 0000000..a50781d --- /dev/null +++ b/configs/espt_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_ESPT=y diff --git a/configs/ethernut5_defconfig b/configs/ethernut5_defconfig new file mode 100644 index 0000000..5be495c --- /dev/null +++ b/configs/ethernut5_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9XE" +CONFIG_ARM=y +CONFIG_TARGET_ETHERNUT5=y diff --git a/configs/favr-32-ezkit_defconfig b/configs/favr-32-ezkit_defconfig new file mode 100644 index 0000000..941e028 --- /dev/null +++ b/configs/favr-32-ezkit_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_FAVR_32_EZKIT=y diff --git a/configs/flea3_defconfig b/configs/flea3_defconfig new file mode 100644 index 0000000..ac112cd --- /dev/null +++ b/configs/flea3_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_FLEA3=y diff --git a/configs/fo300_defconfig b/configs/fo300_defconfig new file mode 100644 index 0000000..6492b4b --- /dev/null +++ b/configs/fo300_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="FO300" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_TQM5200=y diff --git a/configs/fx12mm_defconfig b/configs/fx12mm_defconfig new file mode 100644 index 0000000..9900a54 --- /dev/null +++ b/configs/fx12mm_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,INIT_TLB=board/xilinx/ppc405-generic/init.o" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_FX12MM=y diff --git a/configs/fx12mm_flash_defconfig b/configs/fx12mm_flash_defconfig new file mode 100644 index 0000000..5a0587f --- /dev/null +++ b/configs/fx12mm_flash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC,INIT_TLB=board/xilinx/ppc405-generic/init.o" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_FX12MM=y diff --git a/configs/galaxy5200_LOWBOOT_defconfig b/configs/galaxy5200_LOWBOOT_defconfig new file mode 100644 index 0000000..4f193f5 --- /dev/null +++ b/configs/galaxy5200_LOWBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="galaxy5200_LOWBOOT" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_GALAXY5200=y diff --git a/configs/galaxy5200_defconfig b/configs/galaxy5200_defconfig new file mode 100644 index 0000000..0fdf643 --- /dev/null +++ b/configs/galaxy5200_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="galaxy5200" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_GALAXY5200=y diff --git a/configs/gdppc440etx_defconfig b/configs/gdppc440etx_defconfig new file mode 100644 index 0000000..1097b9c --- /dev/null +++ b/configs/gdppc440etx_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_GDPPC440ETX=y diff --git a/configs/glacier_defconfig b/configs/glacier_defconfig new file mode 100644 index 0000000..2a66bfb --- /dev/null +++ b/configs/glacier_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="GLACIER" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_CANYONLANDS=y diff --git a/configs/goflexhome_defconfig b/configs/goflexhome_defconfig new file mode 100644 index 0000000..10fde53 --- /dev/null +++ b/configs/goflexhome_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_GOFLEXHOME=y diff --git a/configs/gplugd_defconfig b/configs/gplugd_defconfig new file mode 100644 index 0000000..ec8f45c --- /dev/null +++ b/configs/gplugd_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_GPLUGD=y diff --git a/configs/gr_cpci_ax2000_defconfig b/configs/gr_cpci_ax2000_defconfig new file mode 100644 index 0000000..6eb02ad --- /dev/null +++ b/configs/gr_cpci_ax2000_defconfig @@ -0,0 +1,2 @@ +CONFIG_SPARC=y +CONFIG_TARGET_GR_CPCI_AX2000=y diff --git a/configs/gr_ep2s60_defconfig b/configs/gr_ep2s60_defconfig new file mode 100644 index 0000000..6e1eb83 --- /dev/null +++ b/configs/gr_ep2s60_defconfig @@ -0,0 +1,2 @@ +CONFIG_SPARC=y +CONFIG_TARGET_GR_EP2S60=y diff --git a/configs/gr_xc3s_1500_defconfig b/configs/gr_xc3s_1500_defconfig new file mode 100644 index 0000000..da846db --- /dev/null +++ b/configs/gr_xc3s_1500_defconfig @@ -0,0 +1,2 @@ +CONFIG_SPARC=y +CONFIG_TARGET_GR_XC3S_1500=y diff --git a/configs/grasshopper_defconfig b/configs/grasshopper_defconfig new file mode 100644 index 0000000..72013e7 --- /dev/null +++ b/configs/grasshopper_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_GRASSHOPPER=y diff --git a/configs/grsim_defconfig b/configs/grsim_defconfig new file mode 100644 index 0000000..2a7e8e7 --- /dev/null +++ b/configs/grsim_defconfig @@ -0,0 +1,2 @@ +CONFIG_SPARC=y +CONFIG_TARGET_GRSIM=y diff --git a/configs/grsim_leon2_defconfig b/configs/grsim_leon2_defconfig new file mode 100644 index 0000000..e91eb96 --- /dev/null +++ b/configs/grsim_leon2_defconfig @@ -0,0 +1,2 @@ +CONFIG_SPARC=y +CONFIG_TARGET_GRSIM_LEON2=y diff --git a/configs/guruplug_defconfig b/configs/guruplug_defconfig new file mode 100644 index 0000000..f5be577 --- /dev/null +++ b/configs/guruplug_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_GURUPLUG=y diff --git a/configs/gw8260_defconfig b/configs/gw8260_defconfig new file mode 100644 index 0000000..a59ec3a --- /dev/null +++ b/configs/gw8260_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_GW8260=y diff --git a/configs/gwventana_defconfig b/configs/gwventana_defconfig new file mode 100644 index 0000000..11aaab5 --- /dev/null +++ b/configs/gwventana_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/gateworks/gw_ventana/gw_ventana.cfg,MX6QDL,SPL" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_GW_VENTANA=y diff --git a/configs/h2200_defconfig b/configs/h2200_defconfig new file mode 100644 index 0000000..7040c09 --- /dev/null +++ b/configs/h2200_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_H2200=y diff --git a/configs/haleakala_defconfig b/configs/haleakala_defconfig new file mode 100644 index 0000000..7e63116 --- /dev/null +++ b/configs/haleakala_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="HALEAKALA" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_KILAUEA=y diff --git a/configs/hammerhead_defconfig b/configs/hammerhead_defconfig new file mode 100644 index 0000000..0d69cc6 --- /dev/null +++ b/configs/hammerhead_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_HAMMERHEAD=y diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig new file mode 100644 index 0000000..d25ea5c --- /dev/null +++ b/configs/harmony_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_HARMONY=y diff --git a/configs/hawkboard_defconfig b/configs/hawkboard_defconfig new file mode 100644 index 0000000..9945fe5 --- /dev/null +++ b/configs/hawkboard_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_HAWKBOARD=y diff --git a/configs/hawkboard_uart_defconfig b/configs/hawkboard_uart_defconfig new file mode 100644 index 0000000..b4db291 --- /dev/null +++ b/configs/hawkboard_uart_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="UART_U_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_HAWKBOARD=y diff --git a/configs/hermes_defconfig b/configs/hermes_defconfig new file mode 100644 index 0000000..a923a61 --- /dev/null +++ b/configs/hermes_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_HERMES=y diff --git a/configs/highbank_defconfig b/configs/highbank_defconfig new file mode 100644 index 0000000..23fd52d --- /dev/null +++ b/configs/highbank_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_HIGHBANK=y diff --git a/configs/hmi1001_defconfig b/configs/hmi1001_defconfig new file mode 100644 index 0000000..a351dbe --- /dev/null +++ b/configs/hmi1001_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_HMI1001=y diff --git a/configs/hummingboard_solo_defconfig b/configs/hummingboard_solo_defconfig new file mode 100644 index 0000000..600fa00 --- /dev/null +++ b/configs/hummingboard_solo_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/solidrun/hummingboard/solo.cfg,MX6S,DDR_MB=512" +CONFIG_ARM=y +CONFIG_TARGET_HUMMINGBOARD=y diff --git a/configs/hymod_defconfig b/configs/hymod_defconfig new file mode 100644 index 0000000..a6dc1d8 --- /dev/null +++ b/configs/hymod_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_HYMOD=y diff --git a/configs/i12-tvbox_defconfig b/configs/i12-tvbox_defconfig new file mode 100644 index 0000000..ff86841 --- /dev/null +++ b/configs/i12-tvbox_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="I12_TVBOX,SPL,AXP209_POWER,SUNXI_GMAC,MACPWR=SUNXI_GPH(21),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/ib62x0_defconfig b/configs/ib62x0_defconfig new file mode 100644 index 0000000..d92217e --- /dev/null +++ b/configs/ib62x0_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_IB62X0=y diff --git a/configs/ibf-dsp561_defconfig b/configs/ibf-dsp561_defconfig new file mode 100644 index 0000000..41a5c65 --- /dev/null +++ b/configs/ibf-dsp561_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_IBF_DSP561=y diff --git a/configs/icecube_5200_DDR_LOWBOOT08_defconfig b/configs/icecube_5200_DDR_LOWBOOT08_defconfig new file mode 100644 index 0000000..79f8598 --- /dev/null +++ b/configs/icecube_5200_DDR_LOWBOOT08_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF800000,MPC5200_DDR" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/icecube_5200_DDR_LOWBOOT_defconfig b/configs/icecube_5200_DDR_LOWBOOT_defconfig new file mode 100644 index 0000000..79f8598 --- /dev/null +++ b/configs/icecube_5200_DDR_LOWBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF800000,MPC5200_DDR" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/icecube_5200_DDR_defconfig b/configs/icecube_5200_DDR_defconfig new file mode 100644 index 0000000..19d9637 --- /dev/null +++ b/configs/icecube_5200_DDR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC5200_DDR" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/icecube_5200_LOWBOOT08_defconfig b/configs/icecube_5200_LOWBOOT08_defconfig new file mode 100644 index 0000000..9f0cbd8 --- /dev/null +++ b/configs/icecube_5200_LOWBOOT08_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF800000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/icecube_5200_LOWBOOT_defconfig b/configs/icecube_5200_LOWBOOT_defconfig new file mode 100644 index 0000000..ff1552f --- /dev/null +++ b/configs/icecube_5200_LOWBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/icecube_5200_defconfig b/configs/icecube_5200_defconfig new file mode 100644 index 0000000..49fdb3b --- /dev/null +++ b/configs/icecube_5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/icon_defconfig b/configs/icon_defconfig new file mode 100644 index 0000000..771a093 --- /dev/null +++ b/configs/icon_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_ICON=y diff --git a/configs/iconnect_defconfig b/configs/iconnect_defconfig new file mode 100644 index 0000000..ab83fa6 --- /dev/null +++ b/configs/iconnect_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_ICONNECT=y diff --git a/configs/ids8313_defconfig b/configs/ids8313_defconfig new file mode 100644 index 0000000..1c665aa --- /dev/null +++ b/configs/ids8313_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFFF00000" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_IDS8313=y diff --git a/configs/igep0020_defconfig b/configs/igep0020_defconfig new file mode 100644 index 0000000..e99f773 --- /dev/null +++ b/configs/igep0020_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0020,BOOT_ONENAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_IGEP00X0=y diff --git a/configs/igep0020_nand_defconfig b/configs/igep0020_nand_defconfig new file mode 100644 index 0000000..baa4a0a --- /dev/null +++ b/configs/igep0020_nand_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0020,BOOT_NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_IGEP00X0=y diff --git a/configs/igep0030_defconfig b/configs/igep0030_defconfig new file mode 100644 index 0000000..5f404eb --- /dev/null +++ b/configs/igep0030_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_ONENAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_IGEP00X0=y diff --git a/configs/igep0030_nand_defconfig b/configs/igep0030_nand_defconfig new file mode 100644 index 0000000..a43dfec --- /dev/null +++ b/configs/igep0030_nand_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0030,BOOT_NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_IGEP00X0=y diff --git a/configs/igep0032_defconfig b/configs/igep0032_defconfig new file mode 100644 index 0000000..c0d019c --- /dev/null +++ b/configs/igep0032_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_IGEP0032,BOOT_ONENAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_IGEP00X0=y diff --git a/configs/ima3-mx53_defconfig b/configs/ima3-mx53_defconfig new file mode 100644 index 0000000..c7a9f68 --- /dev/null +++ b/configs/ima3-mx53_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/esg/ima3-mx53/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_IMA3_MX53=y diff --git a/configs/imx27lite_defconfig b/configs/imx27lite_defconfig new file mode 100644 index 0000000..03803c6 --- /dev/null +++ b/configs/imx27lite_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_IMX27LITE=y diff --git a/configs/imx31_litekit_defconfig b/configs/imx31_litekit_defconfig new file mode 100644 index 0000000..cd41c0e --- /dev/null +++ b/configs/imx31_litekit_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_IMX31_LITEKIT=y diff --git a/configs/imx31_phycore_defconfig b/configs/imx31_phycore_defconfig new file mode 100644 index 0000000..563de57 --- /dev/null +++ b/configs/imx31_phycore_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_IMX31_PHYCORE=y diff --git a/configs/imx31_phycore_eet_defconfig b/configs/imx31_phycore_eet_defconfig new file mode 100644 index 0000000..9531952 --- /dev/null +++ b/configs/imx31_phycore_eet_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX31_PHYCORE_EET" +CONFIG_ARM=y +CONFIG_TARGET_IMX31_PHYCORE=y diff --git a/configs/inetspace_v2_defconfig b/configs/inetspace_v2_defconfig new file mode 100644 index 0000000..26d9932 --- /dev/null +++ b/configs/inetspace_v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="INETSPACE_V2" +CONFIG_ARM=y +CONFIG_TARGET_NETSPACE_V2=y diff --git a/configs/inka4x0_defconfig b/configs/inka4x0_defconfig new file mode 100644 index 0000000..6581b0a --- /dev/null +++ b/configs/inka4x0_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_INKA4X0=y diff --git a/configs/integratorap_cm720t_defconfig b/configs/integratorap_cm720t_defconfig new file mode 100644 index 0000000..0bb7b08 --- /dev/null +++ b/configs/integratorap_cm720t_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM720T" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORAP_CM720T=y diff --git a/configs/integratorap_cm920t_defconfig b/configs/integratorap_cm920t_defconfig new file mode 100644 index 0000000..fb925d5 --- /dev/null +++ b/configs/integratorap_cm920t_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM920T" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORAP_CM920T=y diff --git a/configs/integratorap_cm926ejs_defconfig b/configs/integratorap_cm926ejs_defconfig new file mode 100644 index 0000000..308a1e6 --- /dev/null +++ b/configs/integratorap_cm926ejs_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM926EJ_S" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORAP_CM926EJS=y diff --git a/configs/integratorap_cm946es_defconfig b/configs/integratorap_cm946es_defconfig new file mode 100644 index 0000000..d1b9db5 --- /dev/null +++ b/configs/integratorap_cm946es_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM946ES" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORAP_CM946ES=y diff --git a/configs/integratorcp_cm1136_defconfig b/configs/integratorcp_cm1136_defconfig new file mode 100644 index 0000000..3feb656 --- /dev/null +++ b/configs/integratorcp_cm1136_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM1136" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORCP_CM1136=y diff --git a/configs/integratorcp_cm920t_defconfig b/configs/integratorcp_cm920t_defconfig new file mode 100644 index 0000000..f304bbe --- /dev/null +++ b/configs/integratorcp_cm920t_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM920T" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORCP_CM920T=y diff --git a/configs/integratorcp_cm926ejs_defconfig b/configs/integratorcp_cm926ejs_defconfig new file mode 100644 index 0000000..a8d762b --- /dev/null +++ b/configs/integratorcp_cm926ejs_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM924EJ_S" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORCP_CM926EJS=y diff --git a/configs/integratorcp_cm946es_defconfig b/configs/integratorcp_cm946es_defconfig new file mode 100644 index 0000000..2e67dbc --- /dev/null +++ b/configs/integratorcp_cm946es_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="CM946ES" +CONFIG_ARM=y +CONFIG_TARGET_INTEGRATORCP_CM946ES=y diff --git a/configs/intip_defconfig b/configs/intip_defconfig new file mode 100644 index 0000000..d6af774 --- /dev/null +++ b/configs/intip_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="INTIB" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_INTIP=y diff --git a/configs/io64_defconfig b/configs/io64_defconfig new file mode 100644 index 0000000..1111e54 --- /dev/null +++ b/configs/io64_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_IO64=y diff --git a/configs/io_defconfig b/configs/io_defconfig new file mode 100644 index 0000000..959af75 --- /dev/null +++ b/configs/io_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_IO=y diff --git a/configs/iocon_defconfig b/configs/iocon_defconfig new file mode 100644 index 0000000..6dc8887 --- /dev/null +++ b/configs/iocon_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_IOCON=y diff --git a/configs/ip04_defconfig b/configs/ip04_defconfig new file mode 100644 index 0000000..4f9895a --- /dev/null +++ b/configs/ip04_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_IP04=y diff --git a/configs/ipam390_defconfig b/configs/ipam390_defconfig new file mode 100644 index 0000000..6e95951 --- /dev/null +++ b/configs/ipam390_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_IPAM390=y diff --git a/configs/ipek01_defconfig b/configs/ipek01_defconfig new file mode 100644 index 0000000..83cf557 --- /dev/null +++ b/configs/ipek01_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_IPEK01=y diff --git a/configs/jadecpu_defconfig b/configs/jadecpu_defconfig new file mode 100644 index 0000000..4348e0e --- /dev/null +++ b/configs/jadecpu_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_JADECPU=y diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig new file mode 100644 index 0000000..9ce97c9 --- /dev/null +++ b/configs/jetson-tk1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="BOARD_JETSON_TK1=" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_JETSON_TK1=y diff --git a/configs/jornada_defconfig b/configs/jornada_defconfig new file mode 100644 index 0000000..ad1c338 --- /dev/null +++ b/configs/jornada_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_JORNADA=y diff --git a/configs/jupiter_defconfig b/configs/jupiter_defconfig new file mode 100644 index 0000000..dac4f1a --- /dev/null +++ b/configs/jupiter_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_JUPITER=y diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig new file mode 100644 index 0000000..c210ad5 --- /dev/null +++ b/configs/k2e_evm_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_K2E_EVM=y diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig new file mode 100644 index 0000000..caa763a --- /dev/null +++ b/configs/k2hk_evm_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_K2HK_EVM=y diff --git a/configs/katmai_defconfig b/configs/katmai_defconfig new file mode 100644 index 0000000..8492314 --- /dev/null +++ b/configs/katmai_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_KATMAI=y diff --git a/configs/kilauea_defconfig b/configs/kilauea_defconfig new file mode 100644 index 0000000..28021d9 --- /dev/null +++ b/configs/kilauea_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KILAUEA" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_KILAUEA=y diff --git a/configs/km_kirkwood_128m16_defconfig b/configs/km_kirkwood_128m16_defconfig new file mode 100644 index 0000000..c51fbf3 --- /dev/null +++ b/configs/km_kirkwood_128m16_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_128M16" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/km_kirkwood_defconfig b/configs/km_kirkwood_defconfig new file mode 100644 index 0000000..4f554f7 --- /dev/null +++ b/configs/km_kirkwood_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/km_kirkwood_pci_defconfig b/configs/km_kirkwood_pci_defconfig new file mode 100644 index 0000000..abb42c9 --- /dev/null +++ b/configs/km_kirkwood_pci_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_KIRKWOOD_PCI" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/kmcoge4_defconfig b/configs/kmcoge4_defconfig new file mode 100644 index 0000000..22a005c --- /dev/null +++ b/configs/kmcoge4_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMCOGE4" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_KMP204X=y diff --git a/configs/kmcoge5ne_defconfig b/configs/kmcoge5ne_defconfig new file mode 100644 index 0000000..80c1f75 --- /dev/null +++ b/configs/kmcoge5ne_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMCOGE5NE" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_KM8360=y diff --git a/configs/kmcoge5un_defconfig b/configs/kmcoge5un_defconfig new file mode 100644 index 0000000..0378277 --- /dev/null +++ b/configs/kmcoge5un_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_COGE5UN" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/kmeter1_defconfig b/configs/kmeter1_defconfig new file mode 100644 index 0000000..f87e347 --- /dev/null +++ b/configs/kmeter1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMETER1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_KM8360=y diff --git a/configs/kmlion1_defconfig b/configs/kmlion1_defconfig new file mode 100644 index 0000000..82c1924 --- /dev/null +++ b/configs/kmlion1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMLION1" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_KMP204X=y diff --git a/configs/kmnusa_defconfig b/configs/kmnusa_defconfig new file mode 100644 index 0000000..46ddbcd --- /dev/null +++ b/configs/kmnusa_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_NUSA" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/kmopti2_defconfig b/configs/kmopti2_defconfig new file mode 100644 index 0000000..8195184 --- /dev/null +++ b/configs/kmopti2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMOPTI2" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_TUXX1=y diff --git a/configs/kmsugp1_defconfig b/configs/kmsugp1_defconfig new file mode 100644 index 0000000..183b365 --- /dev/null +++ b/configs/kmsugp1_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_SUGP1" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/kmsupx5_defconfig b/configs/kmsupx5_defconfig new file mode 100644 index 0000000..99a9a9b --- /dev/null +++ b/configs/kmsupx5_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMSUPX5" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_TUXX1=y diff --git a/configs/kmsuv31_defconfig b/configs/kmsuv31_defconfig new file mode 100644 index 0000000..9434ef0 --- /dev/null +++ b/configs/kmsuv31_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_SUV31" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/kmvect1_defconfig b/configs/kmvect1_defconfig new file mode 100644 index 0000000..dd9c2f2 --- /dev/null +++ b/configs/kmvect1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KMVECT1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_SUVD3=y diff --git a/configs/koelsch_defconfig b/configs/koelsch_defconfig new file mode 100644 index 0000000..d63a286 --- /dev/null +++ b/configs/koelsch_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_KOELSCH=y diff --git a/configs/korat_defconfig b/configs/korat_defconfig new file mode 100644 index 0000000..d363aab --- /dev/null +++ b/configs/korat_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_KORAT=y diff --git a/configs/korat_perm_defconfig b/configs/korat_perm_defconfig new file mode 100644 index 0000000..8c6b4c4 --- /dev/null +++ b/configs/korat_perm_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="KORAT_PERMANENT" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_KORAT=y diff --git a/configs/kwb_defconfig b/configs/kwb_defconfig new file mode 100644 index 0000000..5082ff7 --- /dev/null +++ b/configs/kwb_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_KWB=y diff --git a/configs/kzm9g_defconfig b/configs/kzm9g_defconfig new file mode 100644 index 0000000..aaddf82 --- /dev/null +++ b/configs/kzm9g_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_KZM9G=y diff --git a/configs/lager_defconfig b/configs/lager_defconfig new file mode 100644 index 0000000..bf1be72 --- /dev/null +++ b/configs/lager_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_LAGER=y diff --git a/configs/lcd4_lwmon5_defconfig b/configs/lcd4_lwmon5_defconfig new file mode 100644 index 0000000..1541733 --- /dev/null +++ b/configs/lcd4_lwmon5_defconfig @@ -0,0 +1,5 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="LCD4_LWMON5" ++S:CONFIG_PPC=y ++S:CONFIG_4xx=y ++S:CONFIG_TARGET_LWMON5=y diff --git a/configs/lite5200b_LOWBOOT_defconfig b/configs/lite5200b_LOWBOOT_defconfig new file mode 100644 index 0000000..9ceb834 --- /dev/null +++ b/configs/lite5200b_LOWBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC5200_DDR,LITE5200B,SYS_TEXT_BASE=0xFF000000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/lite5200b_PM_defconfig b/configs/lite5200b_PM_defconfig new file mode 100644 index 0000000..35b2aa3 --- /dev/null +++ b/configs/lite5200b_PM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC5200_DDR,LITE5200B,LITE5200B_PM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/lite5200b_defconfig b/configs/lite5200b_defconfig new file mode 100644 index 0000000..c7d4030 --- /dev/null +++ b/configs/lite5200b_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC5200_DDR,LITE5200B" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_ICECUBE=y diff --git a/configs/lp8x4x_defconfig b/configs/lp8x4x_defconfig new file mode 100644 index 0000000..2fc2cbc --- /dev/null +++ b/configs/lp8x4x_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_LP8X4X=y diff --git a/configs/ls2085a_emu_D4_defconfig b/configs/ls2085a_emu_D4_defconfig new file mode 100644 index 0000000..f2f6882 --- /dev/null +++ b/configs/ls2085a_emu_D4_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARM64,EMU,SYS_FSL_DDR4" +CONFIG_ARM=y +CONFIG_TARGET_LS2085A_EMU=y diff --git a/configs/ls2085a_emu_defconfig b/configs/ls2085a_emu_defconfig new file mode 100644 index 0000000..51ffa56 --- /dev/null +++ b/configs/ls2085a_emu_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARM64,EMU" +CONFIG_ARM=y +CONFIG_TARGET_LS2085A_EMU=y diff --git a/configs/ls2085a_simu_defconfig b/configs/ls2085a_simu_defconfig new file mode 100644 index 0000000..efa8e74 --- /dev/null +++ b/configs/ls2085a_simu_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARM64,SIMU" +CONFIG_ARM=y +CONFIG_TARGET_LS2085A_SIMU=y diff --git a/configs/lschlv2_defconfig b/configs/lschlv2_defconfig new file mode 100644 index 0000000..330b4d7 --- /dev/null +++ b/configs/lschlv2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="LSCHLV2" +CONFIG_ARM=y +CONFIG_TARGET_LSXL=y diff --git a/configs/lsxhl_defconfig b/configs/lsxhl_defconfig new file mode 100644 index 0000000..e8cdf8a --- /dev/null +++ b/configs/lsxhl_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="LSXHL" +CONFIG_ARM=y +CONFIG_TARGET_LSXL=y diff --git a/configs/luan_defconfig b/configs/luan_defconfig new file mode 100644 index 0000000..d42b4a9 --- /dev/null +++ b/configs/luan_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_LUAN=y diff --git a/configs/lwmon5_defconfig b/configs/lwmon5_defconfig new file mode 100644 index 0000000..1ae2109 --- /dev/null +++ b/configs/lwmon5_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_LWMON5=y diff --git a/configs/lwmon_defconfig b/configs/lwmon_defconfig new file mode 100644 index 0000000..128ff5f --- /dev/null +++ b/configs/lwmon_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_LWMON=y diff --git a/configs/m28evk_defconfig b/configs/m28evk_defconfig new file mode 100644 index 0000000..e7af817 --- /dev/null +++ b/configs/m28evk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_M28EVK=y diff --git a/configs/m53evk_defconfig b/configs/m53evk_defconfig new file mode 100644 index 0000000..65a6470 --- /dev/null +++ b/configs/m53evk_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/denx/m53evk/imximage.cfg" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_M53EVK=y diff --git a/configs/magnesium_defconfig b/configs/magnesium_defconfig new file mode 100644 index 0000000..d45cfd7 --- /dev/null +++ b/configs/magnesium_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_MAGNESIUM=y diff --git a/configs/makalu_defconfig b/configs/makalu_defconfig new file mode 100644 index 0000000..ed9b82d --- /dev/null +++ b/configs/makalu_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_MAKALU=y diff --git a/configs/malta_defconfig b/configs/malta_defconfig new file mode 100644 index 0000000..f3788b6 --- /dev/null +++ b/configs/malta_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN" +CONFIG_MIPS=y +CONFIG_TARGET_MALTA=y diff --git a/configs/maltael_defconfig b/configs/maltael_defconfig new file mode 100644 index 0000000..97d0e89 --- /dev/null +++ b/configs/maltael_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN" +CONFIG_MIPS=y +CONFIG_TARGET_MALTA=y diff --git a/configs/marsboard_defconfig b/configs/marsboard_defconfig new file mode 100644 index 0000000..d5c9f08 --- /dev/null +++ b/configs/marsboard_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024,ENV_IS_IN_SPI_FLASH" +CONFIG_ARM=y +CONFIG_TARGET_EMBESTMX6BOARDS=y diff --git a/configs/mcc200_COM12_SDRAM_defconfig b/configs/mcc200_COM12_SDRAM_defconfig new file mode 100644 index 0000000..be6dbd7 --- /dev/null +++ b/configs/mcc200_COM12_SDRAM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CONSOLE_COM12,MCC200_SDRAM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcc200_COM12_defconfig b/configs/mcc200_COM12_defconfig new file mode 100644 index 0000000..6ed8635 --- /dev/null +++ b/configs/mcc200_COM12_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CONSOLE_COM12" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcc200_COM12_highboot_SDRAM_defconfig b/configs/mcc200_COM12_highboot_SDRAM_defconfig new file mode 100644 index 0000000..5f93702 --- /dev/null +++ b/configs/mcc200_COM12_highboot_SDRAM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CONSOLE_COM12,SYS_TEXT_BASE=0xFFF00000,MCC200_SDRAM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcc200_COM12_highboot_defconfig b/configs/mcc200_COM12_highboot_defconfig new file mode 100644 index 0000000..7abb0a4 --- /dev/null +++ b/configs/mcc200_COM12_highboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="CONSOLE_COM12,SYS_TEXT_BASE=0xFFF00000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcc200_SDRAM_defconfig b/configs/mcc200_SDRAM_defconfig new file mode 100644 index 0000000..37761b5 --- /dev/null +++ b/configs/mcc200_SDRAM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MCC200_SDRAM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcc200_defconfig b/configs/mcc200_defconfig new file mode 100644 index 0000000..b6aafec --- /dev/null +++ b/configs/mcc200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcc200_highboot_SDRAM_defconfig b/configs/mcc200_highboot_SDRAM_defconfig new file mode 100644 index 0000000..94d33e5 --- /dev/null +++ b/configs/mcc200_highboot_SDRAM_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFFF00000,MCC200_SDRAM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcc200_highboot_defconfig b/configs/mcc200_highboot_defconfig new file mode 100644 index 0000000..f863dd9 --- /dev/null +++ b/configs/mcc200_highboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFFF00000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/mcx_defconfig b/configs/mcx_defconfig new file mode 100644 index 0000000..a700c88 --- /dev/null +++ b/configs/mcx_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MCX=y diff --git a/configs/mecp5123_defconfig b/configs/mecp5123_defconfig new file mode 100644 index 0000000..3b0a0a0 --- /dev/null +++ b/configs/mecp5123_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC512X=y +CONFIG_TARGET_MECP5123=y diff --git a/configs/mecp5200_defconfig b/configs/mecp5200_defconfig new file mode 100644 index 0000000..a30e224 --- /dev/null +++ b/configs/mecp5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MECP5200=y diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig new file mode 100644 index 0000000..ddf3437 --- /dev/null +++ b/configs/medcom-wide_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MEDCOM_WIDE=y diff --git a/configs/meesc_dataflash_defconfig b/configs/meesc_dataflash_defconfig new file mode 100644 index 0000000..fa737ef --- /dev/null +++ b/configs/meesc_dataflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_DATAFLASH" +CONFIG_ARM=y +CONFIG_TARGET_MEESC=y diff --git a/configs/meesc_defconfig b/configs/meesc_defconfig new file mode 100644 index 0000000..f58efbb --- /dev/null +++ b/configs/meesc_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_MEESC=y diff --git a/configs/mgcoge3ne_defconfig b/configs/mgcoge3ne_defconfig new file mode 100644 index 0000000..e2eb06f --- /dev/null +++ b/configs/mgcoge3ne_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MGCOGE3NE" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_KM82XX=y diff --git a/configs/mgcoge3un_defconfig b/configs/mgcoge3un_defconfig new file mode 100644 index 0000000..bc1e2ba --- /dev/null +++ b/configs/mgcoge3un_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_MGCOGE3UN" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/mgcoge_defconfig b/configs/mgcoge_defconfig new file mode 100644 index 0000000..d2d4673 --- /dev/null +++ b/configs/mgcoge_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MGCOGE" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_KM82XX=y diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig new file mode 100644 index 0000000..7f23786 --- /dev/null +++ b/configs/microblaze-generic_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_MICROBLAZE=y ++S:CONFIG_TARGET_MICROBLAZE_GENERIC=y diff --git a/configs/mimc200_defconfig b/configs/mimc200_defconfig new file mode 100644 index 0000000..f6edbc7 --- /dev/null +++ b/configs/mimc200_defconfig @@ -0,0 +1,2 @@ +CONFIG_AVR32=y +CONFIG_TARGET_MIMC200=y diff --git a/configs/ml507_defconfig b/configs/ml507_defconfig new file mode 100644 index 0000000..009972a --- /dev/null +++ b/configs/ml507_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,BOOT_FROM_XMD=1,INIT_TLB=board/xilinx/ppc440-generic/init.o" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_ML507=y diff --git a/configs/ml507_flash_defconfig b/configs/ml507_flash_defconfig new file mode 100644 index 0000000..a9658b6 --- /dev/null +++ b/configs/ml507_flash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC,INIT_TLB=board/xilinx/ppc440-generic/init.o" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_ML507=y diff --git a/configs/motionpro_defconfig b/configs/motionpro_defconfig new file mode 100644 index 0000000..535cb84 --- /dev/null +++ b/configs/motionpro_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MOTIONPRO=y diff --git a/configs/mpc5121ads_defconfig b/configs/mpc5121ads_defconfig new file mode 100644 index 0000000..4d76470 --- /dev/null +++ b/configs/mpc5121ads_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC512X=y +CONFIG_TARGET_MPC5121ADS=y diff --git a/configs/mpc5121ads_rev2_defconfig b/configs/mpc5121ads_rev2_defconfig new file mode 100644 index 0000000..9a89611 --- /dev/null +++ b/configs/mpc5121ads_rev2_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MPC5121ADS_REV2" +CONFIG_PPC=y +CONFIG_MPC512X=y +CONFIG_TARGET_MPC5121ADS=y diff --git a/configs/mpc7448hpc2_defconfig b/configs/mpc7448hpc2_defconfig new file mode 100644 index 0000000..f2777dc --- /dev/null +++ b/configs/mpc7448hpc2_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_MPC7448HPC2=y diff --git a/configs/mpc8308_p1m_defconfig b/configs/mpc8308_p1m_defconfig new file mode 100644 index 0000000..2b8fc4e --- /dev/null +++ b/configs/mpc8308_p1m_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_MPC8308_P1M=y diff --git a/configs/mpr2_defconfig b/configs/mpr2_defconfig new file mode 100644 index 0000000..c8be987 --- /dev/null +++ b/configs/mpr2_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_MPR2=y diff --git a/configs/ms7720se_defconfig b/configs/ms7720se_defconfig new file mode 100644 index 0000000..0e3f834 --- /dev/null +++ b/configs/ms7720se_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_MS7720SE=y diff --git a/configs/ms7722se_defconfig b/configs/ms7722se_defconfig new file mode 100644 index 0000000..4acb509 --- /dev/null +++ b/configs/ms7722se_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_MS7722SE=y diff --git a/configs/ms7750se_defconfig b/configs/ms7750se_defconfig new file mode 100644 index 0000000..c23e4c9 --- /dev/null +++ b/configs/ms7750se_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_MS7750SE=y diff --git a/configs/mt_ventoux_defconfig b/configs/mt_ventoux_defconfig new file mode 100644 index 0000000..0fcad87 --- /dev/null +++ b/configs/mt_ventoux_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MT_VENTOUX=y diff --git a/configs/muas3001_defconfig b/configs/muas3001_defconfig new file mode 100644 index 0000000..e1056bd --- /dev/null +++ b/configs/muas3001_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_MUAS3001=y diff --git a/configs/muas3001_dev_defconfig b/configs/muas3001_dev_defconfig new file mode 100644 index 0000000..a62019c --- /dev/null +++ b/configs/muas3001_dev_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="MUAS_DEV_BOARD" +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_MUAS3001=y diff --git a/configs/mucmc52_defconfig b/configs/mucmc52_defconfig new file mode 100644 index 0000000..1e49695 --- /dev/null +++ b/configs/mucmc52_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MUCMC52=y diff --git a/configs/munices_defconfig b/configs/munices_defconfig new file mode 100644 index 0000000..cc9f75e --- /dev/null +++ b/configs/munices_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MUNICES=y diff --git a/configs/mv88f6281gtw_ge_defconfig b/configs/mv88f6281gtw_ge_defconfig new file mode 100644 index 0000000..4e26879 --- /dev/null +++ b/configs/mv88f6281gtw_ge_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_MV88F6281GTW_GE=y diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig new file mode 100644 index 0000000..03d5066 --- /dev/null +++ b/configs/mx23_olinuxino_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MX23_OLINUXINO=y diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig new file mode 100644 index 0000000..963cec3 --- /dev/null +++ b/configs/mx23evk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MX23EVK=y diff --git a/configs/mx25pdk_defconfig b/configs/mx25pdk_defconfig new file mode 100644 index 0000000..f676da6 --- /dev/null +++ b/configs/mx25pdk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx25pdk/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX25PDK=y diff --git a/configs/mx28evk_auart_console_defconfig b/configs/mx28evk_auart_console_defconfig new file mode 100644 index 0000000..7986880 --- /dev/null +++ b/configs/mx28evk_auart_console_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="MXS_AUART,MXS_AUART_BASE=MXS_UARTAPP3_BASE,ENV_IS_IN_MMC" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MX28EVK=y diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig new file mode 100644 index 0000000..e006209 --- /dev/null +++ b/configs/mx28evk_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_MMC" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MX28EVK=y diff --git a/configs/mx28evk_nand_defconfig b/configs/mx28evk_nand_defconfig new file mode 100644 index 0000000..ab42316 --- /dev/null +++ b/configs/mx28evk_nand_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MX28EVK=y diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig new file mode 100644 index 0000000..df992fa --- /dev/null +++ b/configs/mx28evk_spi_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MX28EVK=y diff --git a/configs/mx31ads_defconfig b/configs/mx31ads_defconfig new file mode 100644 index 0000000..5105a9a --- /dev/null +++ b/configs/mx31ads_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_MX31ADS=y diff --git a/configs/mx31pdk_defconfig b/configs/mx31pdk_defconfig new file mode 100644 index 0000000..26cd87e --- /dev/null +++ b/configs/mx31pdk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_MX31PDK=y diff --git a/configs/mx35pdk_defconfig b/configs/mx35pdk_defconfig new file mode 100644 index 0000000..3d79fe1 --- /dev/null +++ b/configs/mx35pdk_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_MX35PDK=y diff --git a/configs/mx51_efikamx_defconfig b/configs/mx51_efikamx_defconfig new file mode 100644 index 0000000..a804b5a --- /dev/null +++ b/configs/mx51_efikamx_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_MX51_EFIKAMX,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_mx.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX51_EFIKAMX=y diff --git a/configs/mx51_efikasb_defconfig b/configs/mx51_efikasb_defconfig new file mode 100644 index 0000000..b07762f --- /dev/null +++ b/configs/mx51_efikasb_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="MACH_TYPE=MACH_TYPE_MX51_EFIKASB,IMX_CONFIG=board/genesi/mx51_efikamx/imximage_sb.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX51_EFIKAMX=y diff --git a/configs/mx51evk_defconfig b/configs/mx51evk_defconfig new file mode 100644 index 0000000..890aa76 --- /dev/null +++ b/configs/mx51evk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx51evk/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX51EVK=y diff --git a/configs/mx53ard_defconfig b/configs/mx53ard_defconfig new file mode 100644 index 0000000..e5cb895 --- /dev/null +++ b/configs/mx53ard_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53ard/imximage_dd3.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX53ARD=y diff --git a/configs/mx53evk_defconfig b/configs/mx53evk_defconfig new file mode 100644 index 0000000..570241f --- /dev/null +++ b/configs/mx53evk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53evk/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX53EVK=y diff --git a/configs/mx53loco_defconfig b/configs/mx53loco_defconfig new file mode 100644 index 0000000..92a67fb --- /dev/null +++ b/configs/mx53loco_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53loco/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX53LOCO=y diff --git a/configs/mx53smd_defconfig b/configs/mx53smd_defconfig new file mode 100644 index 0000000..97cb931 --- /dev/null +++ b/configs/mx53smd_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx53smd/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX53SMD=y diff --git a/configs/mx6dlsabreauto_defconfig b/configs/mx6dlsabreauto_defconfig new file mode 100644 index 0000000..b649935 --- /dev/null +++ b/configs/mx6dlsabreauto_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qsabreauto/mx6dl.cfg,MX6DL" +CONFIG_ARM=y +CONFIG_TARGET_MX6QSABREAUTO=y diff --git a/configs/mx6dlsabresd_defconfig b/configs/mx6dlsabresd_defconfig new file mode 100644 index 0000000..9ce960e --- /dev/null +++ b/configs/mx6dlsabresd_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,MX6DL" +CONFIG_ARM=y +CONFIG_TARGET_MX6SABRESD=y diff --git a/configs/mx6qarm2_defconfig b/configs/mx6qarm2_defconfig new file mode 100644 index 0000000..bdcc672 --- /dev/null +++ b/configs/mx6qarm2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qarm2/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_MX6QARM2=y diff --git a/configs/mx6qsabreauto_defconfig b/configs/mx6qsabreauto_defconfig new file mode 100644 index 0000000..7d86700 --- /dev/null +++ b/configs/mx6qsabreauto_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6qsabreauto/imximage.cfg,MX6Q" +CONFIG_ARM=y +CONFIG_TARGET_MX6QSABREAUTO=y diff --git a/configs/mx6qsabrelite_defconfig b/configs/mx6qsabrelite_defconfig new file mode 100644 index 0000000..dfa9c2e --- /dev/null +++ b/configs/mx6qsabrelite_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024,SABRELITE" +CONFIG_ARM=y +CONFIG_TARGET_NITROGEN6X=y diff --git a/configs/mx6qsabresd_defconfig b/configs/mx6qsabresd_defconfig new file mode 100644 index 0000000..dc8e254 --- /dev/null +++ b/configs/mx6qsabresd_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/imx/ddr/mx6q_4x_mt41j128.cfg,MX6Q" +CONFIG_ARM=y +CONFIG_TARGET_MX6SABRESD=y diff --git a/configs/mx6slevk_defconfig b/configs/mx6slevk_defconfig new file mode 100644 index 0000000..fb8c4de --- /dev/null +++ b/configs/mx6slevk_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6slevk/imximage.cfg,MX6SL" +CONFIG_ARM=y +CONFIG_TARGET_MX6SLEVK=y diff --git a/configs/neo_defconfig b/configs/neo_defconfig new file mode 100644 index 0000000..2a19247 --- /dev/null +++ b/configs/neo_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_NEO=y diff --git a/configs/net2big_v2_defconfig b/configs/net2big_v2_defconfig new file mode 100644 index 0000000..bffea60 --- /dev/null +++ b/configs/net2big_v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NET2BIG_V2" +CONFIG_ARM=y +CONFIG_TARGET_NET2BIG_V2=y diff --git a/configs/netspace_lite_v2_defconfig b/configs/netspace_lite_v2_defconfig new file mode 100644 index 0000000..b262152 --- /dev/null +++ b/configs/netspace_lite_v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_LITE_V2" +CONFIG_ARM=y +CONFIG_TARGET_NETSPACE_V2=y diff --git a/configs/netspace_max_v2_defconfig b/configs/netspace_max_v2_defconfig new file mode 100644 index 0000000..4fc84fc --- /dev/null +++ b/configs/netspace_max_v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_MAX_V2" +CONFIG_ARM=y +CONFIG_TARGET_NETSPACE_V2=y diff --git a/configs/netspace_mini_v2_defconfig b/configs/netspace_mini_v2_defconfig new file mode 100644 index 0000000..631a31b --- /dev/null +++ b/configs/netspace_mini_v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_MINI_V2" +CONFIG_ARM=y +CONFIG_TARGET_NETSPACE_V2=y diff --git a/configs/netspace_v2_defconfig b/configs/netspace_v2_defconfig new file mode 100644 index 0000000..dd77bfe --- /dev/null +++ b/configs/netspace_v2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NETSPACE_V2" +CONFIG_ARM=y +CONFIG_TARGET_NETSPACE_V2=y diff --git a/configs/nhk8815_defconfig b/configs/nhk8815_defconfig new file mode 100644 index 0000000..3d20199 --- /dev/null +++ b/configs/nhk8815_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_NHK8815=y diff --git a/configs/nhk8815_onenand_defconfig b/configs/nhk8815_onenand_defconfig new file mode 100644 index 0000000..860ae92 --- /dev/null +++ b/configs/nhk8815_onenand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOOT_ONENAND" +CONFIG_ARM=y +CONFIG_TARGET_NHK8815=y diff --git a/configs/nios2-generic_defconfig b/configs/nios2-generic_defconfig new file mode 100644 index 0000000..f6da884 --- /dev/null +++ b/configs/nios2-generic_defconfig @@ -0,0 +1,2 @@ +CONFIG_NIOS2=y +CONFIG_TARGET_NIOS2_GENERIC=y diff --git a/configs/nitrogen6dl2g_defconfig b/configs/nitrogen6dl2g_defconfig new file mode 100644 index 0000000..ce9343a --- /dev/null +++ b/configs/nitrogen6dl2g_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl2g.cfg,MX6DL,DDR_MB=2048" +CONFIG_ARM=y +CONFIG_TARGET_NITROGEN6X=y diff --git a/configs/nitrogen6dl_defconfig b/configs/nitrogen6dl_defconfig new file mode 100644 index 0000000..15dd549 --- /dev/null +++ b/configs/nitrogen6dl_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,MX6DL,DDR_MB=1024" +CONFIG_ARM=y +CONFIG_TARGET_NITROGEN6X=y diff --git a/configs/nitrogen6q2g_defconfig b/configs/nitrogen6q2g_defconfig new file mode 100644 index 0000000..12d9516 --- /dev/null +++ b/configs/nitrogen6q2g_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q2g.cfg,MX6Q,DDR_MB=2048" +CONFIG_ARM=y +CONFIG_TARGET_NITROGEN6X=y diff --git a/configs/nitrogen6q_defconfig b/configs/nitrogen6q_defconfig new file mode 100644 index 0000000..b282dc3 --- /dev/null +++ b/configs/nitrogen6q_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024" +CONFIG_ARM=y +CONFIG_TARGET_NITROGEN6X=y diff --git a/configs/nitrogen6s1g_defconfig b/configs/nitrogen6s1g_defconfig new file mode 100644 index 0000000..d1a4f15 --- /dev/null +++ b/configs/nitrogen6s1g_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s1g.cfg,MX6S,DDR_MB=1024" +CONFIG_ARM=y +CONFIG_TARGET_NITROGEN6X=y diff --git a/configs/nitrogen6s_defconfig b/configs/nitrogen6s_defconfig new file mode 100644 index 0000000..73a206f --- /dev/null +++ b/configs/nitrogen6s_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s.cfg,MX6S,DDR_MB=512" +CONFIG_ARM=y +CONFIG_TARGET_NITROGEN6X=y diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig new file mode 100644 index 0000000..055a602 --- /dev/null +++ b/configs/nokia_rx51_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_NOKIA_RX51=y diff --git a/configs/ocotea_defconfig b/configs/ocotea_defconfig new file mode 100644 index 0000000..34518cd --- /dev/null +++ b/configs/ocotea_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_OCOTEA=y diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig new file mode 100644 index 0000000..a37ca60 --- /dev/null +++ b/configs/omap3_beagle_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_BEAGLE=y diff --git a/configs/omap3_evm_defconfig b/configs/omap3_evm_defconfig new file mode 100644 index 0000000..284abe1 --- /dev/null +++ b/configs/omap3_evm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_EVM=y diff --git a/configs/omap3_evm_quick_mmc_defconfig b/configs/omap3_evm_quick_mmc_defconfig new file mode 100644 index 0000000..5bafeac --- /dev/null +++ b/configs/omap3_evm_quick_mmc_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_EVM_QUICK_MMC=y diff --git a/configs/omap3_evm_quick_nand_defconfig b/configs/omap3_evm_quick_nand_defconfig new file mode 100644 index 0000000..501e46f --- /dev/null +++ b/configs/omap3_evm_quick_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_EVM_QUICK_NAND=y diff --git a/configs/omap3_ha_defconfig b/configs/omap3_ha_defconfig new file mode 100644 index 0000000..a183fe7 --- /dev/null +++ b/configs/omap3_ha_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SYS_BOARD_OMAP3_HA" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TAO3530=y diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig new file mode 100644 index 0000000..6278554 --- /dev/null +++ b/configs/omap3_logic_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_OMAP3_LOGIC=y diff --git a/configs/omap3_mvblx_defconfig b/configs/omap3_mvblx_defconfig new file mode 100644 index 0000000..b7ddcc8 --- /dev/null +++ b/configs/omap3_mvblx_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_OMAP3_MVBLX=y diff --git a/configs/omap3_overo_defconfig b/configs/omap3_overo_defconfig new file mode 100644 index 0000000..dca3237 --- /dev/null +++ b/configs/omap3_overo_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP3_OVERO=y diff --git a/configs/omap3_pandora_defconfig b/configs/omap3_pandora_defconfig new file mode 100644 index 0000000..54dab48 --- /dev/null +++ b/configs/omap3_pandora_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_OMAP3_PANDORA=y diff --git a/configs/omap3_sdp3430_defconfig b/configs/omap3_sdp3430_defconfig new file mode 100644 index 0000000..9672956 --- /dev/null +++ b/configs/omap3_sdp3430_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_OMAP3_SDP3430=y diff --git a/configs/omap3_zoom1_defconfig b/configs/omap3_zoom1_defconfig new file mode 100644 index 0000000..f4c8ed9 --- /dev/null +++ b/configs/omap3_zoom1_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_OMAP3_ZOOM1=y diff --git a/configs/omap4_panda_defconfig b/configs/omap4_panda_defconfig new file mode 100644 index 0000000..1498d17 --- /dev/null +++ b/configs/omap4_panda_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP4_PANDA=y diff --git a/configs/omap4_sdp4430_defconfig b/configs/omap4_sdp4430_defconfig new file mode 100644 index 0000000..faac317 --- /dev/null +++ b/configs/omap4_sdp4430_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP4_SDP4430=y diff --git a/configs/omap5912osk_defconfig b/configs/omap5912osk_defconfig new file mode 100644 index 0000000..5aeb097 --- /dev/null +++ b/configs/omap5912osk_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_OMAP5912OSK=y diff --git a/configs/omap5_uevm_defconfig b/configs/omap5_uevm_defconfig new file mode 100644 index 0000000..7a19ce9 --- /dev/null +++ b/configs/omap5_uevm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_OMAP5_UEVM=y diff --git a/configs/openrd_base_defconfig b/configs/openrd_base_defconfig new file mode 100644 index 0000000..25f777e --- /dev/null +++ b/configs/openrd_base_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_BASE" +CONFIG_ARM=y +CONFIG_TARGET_OPENRD=y diff --git a/configs/openrd_client_defconfig b/configs/openrd_client_defconfig new file mode 100644 index 0000000..ba71851 --- /dev/null +++ b/configs/openrd_client_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_CLIENT" +CONFIG_ARM=y +CONFIG_TARGET_OPENRD=y diff --git a/configs/openrd_ultimate_defconfig b/configs/openrd_ultimate_defconfig new file mode 100644 index 0000000..8651f92 --- /dev/null +++ b/configs/openrd_ultimate_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="BOARD_IS_OPENRD_ULTIMATE" +CONFIG_ARM=y +CONFIG_TARGET_OPENRD=y diff --git a/configs/openrisc-generic_defconfig b/configs/openrisc-generic_defconfig new file mode 100644 index 0000000..e422974 --- /dev/null +++ b/configs/openrisc-generic_defconfig @@ -0,0 +1,2 @@ +CONFIG_OPENRISC=y +CONFIG_TARGET_OPENRISC_GENERIC=y diff --git a/configs/origen_defconfig b/configs/origen_defconfig new file mode 100644 index 0000000..e0d10d3 --- /dev/null +++ b/configs/origen_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ORIGEN=y diff --git a/configs/otc570_dataflash_defconfig b/configs/otc570_dataflash_defconfig new file mode 100644 index 0000000..992d6b6 --- /dev/null +++ b/configs/otc570_dataflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_DATAFLASH" +CONFIG_ARM=y +CONFIG_TARGET_OTC570=y diff --git a/configs/otc570_defconfig b/configs/otc570_defconfig new file mode 100644 index 0000000..65295cb --- /dev/null +++ b/configs/otc570_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_OTC570=y diff --git a/configs/p3m7448_defconfig b/configs/p3m7448_defconfig new file mode 100644 index 0000000..9b03689 --- /dev/null +++ b/configs/p3m7448_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P3M7448" +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_P3MX=y diff --git a/configs/p3m750_defconfig b/configs/p3m750_defconfig new file mode 100644 index 0000000..e5377eb --- /dev/null +++ b/configs/p3m750_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="P3M750" +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_P3MX=y diff --git a/configs/p3p440_defconfig b/configs/p3p440_defconfig new file mode 100644 index 0000000..0511b14 --- /dev/null +++ b/configs/p3p440_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_P3P440=y diff --git a/configs/palmld_defconfig b/configs/palmld_defconfig new file mode 100644 index 0000000..599acc3 --- /dev/null +++ b/configs/palmld_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_PALMLD=y diff --git a/configs/palmtc_defconfig b/configs/palmtc_defconfig new file mode 100644 index 0000000..91cb76d --- /dev/null +++ b/configs/palmtc_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_PALMTC=y diff --git a/configs/palmtreo680_defconfig b/configs/palmtreo680_defconfig new file mode 100644 index 0000000..84c4c16 --- /dev/null +++ b/configs/palmtreo680_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PALMTREO680=y diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig new file mode 100644 index 0000000..61a536e --- /dev/null +++ b/configs/paz00_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PAZ00=y diff --git a/configs/pb1000_defconfig b/configs/pb1000_defconfig new file mode 100644 index 0000000..e226358 --- /dev/null +++ b/configs/pb1000_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="PB1000" +CONFIG_MIPS=y +CONFIG_TARGET_PB1X00=y diff --git a/configs/pcm030_LOWBOOT_defconfig b/configs/pcm030_LOWBOOT_defconfig new file mode 100644 index 0000000..72ecf8f --- /dev/null +++ b/configs/pcm030_LOWBOOT_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xFF000000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_PCM030=y diff --git a/configs/pcm030_defconfig b/configs/pcm030_defconfig new file mode 100644 index 0000000..3283517 --- /dev/null +++ b/configs/pcm030_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_PCM030=y diff --git a/configs/pcm051_rev1_defconfig b/configs/pcm051_rev1_defconfig new file mode 100644 index 0000000..8b27682 --- /dev/null +++ b/configs/pcm051_rev1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="REV1" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PCM051=y diff --git a/configs/pcm051_rev3_defconfig b/configs/pcm051_rev3_defconfig new file mode 100644 index 0000000..27ad6ff --- /dev/null +++ b/configs/pcm051_rev3_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="REV3" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PCM051=y diff --git a/configs/pcs440ep_defconfig b/configs/pcs440ep_defconfig new file mode 100644 index 0000000..299bf8a --- /dev/null +++ b/configs/pcs440ep_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_PCS440EP=y diff --git a/configs/pdm360ng_defconfig b/configs/pdm360ng_defconfig new file mode 100644 index 0000000..4e3d704 --- /dev/null +++ b/configs/pdm360ng_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC512X=y +CONFIG_TARGET_PDM360NG=y diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig new file mode 100644 index 0000000..68ba794 --- /dev/null +++ b/configs/peach-pit_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PEACH_PIT=y diff --git a/configs/pengwyn_defconfig b/configs/pengwyn_defconfig new file mode 100644 index 0000000..1b9aa68 --- /dev/null +++ b/configs/pengwyn_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PENGWYN=y diff --git a/configs/pepper_defconfig b/configs/pepper_defconfig new file mode 100644 index 0000000..22c7bb4 --- /dev/null +++ b/configs/pepper_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PEPPER=y diff --git a/configs/pf5200_defconfig b/configs/pf5200_defconfig new file mode 100644 index 0000000..fe926a0 --- /dev/null +++ b/configs/pf5200_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_PF5200=y diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig new file mode 100644 index 0000000..672b66c --- /dev/null +++ b/configs/plutux_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PLUTUX=y diff --git a/configs/pm9261_defconfig b/configs/pm9261_defconfig new file mode 100644 index 0000000..b8a0248 --- /dev/null +++ b/configs/pm9261_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9261" +CONFIG_ARM=y +CONFIG_TARGET_PM9261=y diff --git a/configs/pm9263_defconfig b/configs/pm9263_defconfig new file mode 100644 index 0000000..3a5029a --- /dev/null +++ b/configs/pm9263_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263" +CONFIG_ARM=y +CONFIG_TARGET_PM9263=y diff --git a/configs/pm9g45_defconfig b/configs/pm9g45_defconfig new file mode 100644 index 0000000..89297e0 --- /dev/null +++ b/configs/pm9g45_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G45" +CONFIG_ARM=y +CONFIG_TARGET_PM9G45=y diff --git a/configs/pogo_e02_defconfig b/configs/pogo_e02_defconfig new file mode 100644 index 0000000..41637e0 --- /dev/null +++ b/configs/pogo_e02_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_POGO_E02=y diff --git a/configs/polaris_defconfig b/configs/polaris_defconfig new file mode 100644 index 0000000..f510a53 --- /dev/null +++ b/configs/polaris_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="POLARIS" +CONFIG_ARM=y +CONFIG_TARGET_TRIZEPSIV=y diff --git a/configs/portl2_defconfig b/configs/portl2_defconfig new file mode 100644 index 0000000..6df18e9 --- /dev/null +++ b/configs/portl2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="KM_PORTL2" +CONFIG_ARM=y +CONFIG_TARGET_KM_KIRKWOOD=y diff --git a/configs/portuxg20_defconfig b/configs/portuxg20_defconfig new file mode 100644 index 0000000..b1634e9 --- /dev/null +++ b/configs/portuxg20_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,PORTUXG20" +CONFIG_ARM=y +CONFIG_TARGET_STAMP9G20=y diff --git a/configs/ppmc7xx_defconfig b/configs/ppmc7xx_defconfig new file mode 100644 index 0000000..feefe49 --- /dev/null +++ b/configs/ppmc7xx_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_74xx_7xx=y +CONFIG_TARGET_PPMC7XX=y diff --git a/configs/ppmc8260_defconfig b/configs/ppmc8260_defconfig new file mode 100644 index 0000000..e8eb4f7 --- /dev/null +++ b/configs/ppmc8260_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_PPMC8260=y diff --git a/configs/pr1_defconfig b/configs/pr1_defconfig new file mode 100644 index 0000000..a8784c1 --- /dev/null +++ b/configs/pr1_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_PR1=y diff --git a/configs/prs200_DDR_defconfig b/configs/prs200_DDR_defconfig new file mode 100644 index 0000000..541fb99 --- /dev/null +++ b/configs/prs200_DDR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PRS200" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/prs200_defconfig b/configs/prs200_defconfig new file mode 100644 index 0000000..a094a08 --- /dev/null +++ b/configs/prs200_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PRS200,MCC200_SDRAM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/prs200_highboot_DDR_defconfig b/configs/prs200_highboot_DDR_defconfig new file mode 100644 index 0000000..b8eb8d4 --- /dev/null +++ b/configs/prs200_highboot_DDR_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PRS200,SYS_TEXT_BASE=0xFFF00000" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/prs200_highboot_defconfig b/configs/prs200_highboot_defconfig new file mode 100644 index 0000000..8d68cc0 --- /dev/null +++ b/configs/prs200_highboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PRS200,SYS_TEXT_BASE=0xFFF00000,MCC200_SDRAM" +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_MCC200=y diff --git a/configs/pxa255_idp_defconfig b/configs/pxa255_idp_defconfig new file mode 100644 index 0000000..251d6c4 --- /dev/null +++ b/configs/pxa255_idp_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_PXA255_IDP=y diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig new file mode 100644 index 0000000..e0d9031 --- /dev/null +++ b/configs/pxm2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_PXM2=y diff --git a/configs/qemu-ppce500_defconfig b/configs/qemu-ppce500_defconfig new file mode 100644 index 0000000..2b8f707 --- /dev/null +++ b/configs/qemu-ppce500_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_QEMU_PPCE500=y diff --git a/configs/qemu_mips64_defconfig b/configs/qemu_mips64_defconfig new file mode 100644 index 0000000..2948355 --- /dev/null +++ b/configs/qemu_mips64_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN" +CONFIG_MIPS=y +CONFIG_TARGET_QEMU_MIPS64=y diff --git a/configs/qemu_mips64el_defconfig b/configs/qemu_mips64el_defconfig new file mode 100644 index 0000000..13a039f --- /dev/null +++ b/configs/qemu_mips64el_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN" +CONFIG_MIPS=y +CONFIG_TARGET_QEMU_MIPS64=y diff --git a/configs/qemu_mips_defconfig b/configs/qemu_mips_defconfig new file mode 100644 index 0000000..6b2c029 --- /dev/null +++ b/configs/qemu_mips_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_BIG_ENDIAN" +CONFIG_MIPS=y +CONFIG_TARGET_QEMU_MIPS=y diff --git a/configs/qemu_mipsel_defconfig b/configs/qemu_mipsel_defconfig new file mode 100644 index 0000000..57c8701 --- /dev/null +++ b/configs/qemu_mipsel_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_LITTLE_ENDIAN" +CONFIG_MIPS=y +CONFIG_TARGET_QEMU_MIPS=y diff --git a/configs/qong_defconfig b/configs/qong_defconfig new file mode 100644 index 0000000..fddd836 --- /dev/null +++ b/configs/qong_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_QONG=y diff --git a/configs/qt840a_defconfig b/configs/qt840a_defconfig new file mode 100644 index 0000000..acb100c --- /dev/null +++ b/configs/qt840a_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="QT840A,SPL,AXP209_POWER,SUNXI_GMAC,MACPWR=SUNXI_GPH(21),USB_EHCI" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN7I=y diff --git a/configs/r0p7734_defconfig b/configs/r0p7734_defconfig new file mode 100644 index 0000000..2b2d2cd --- /dev/null +++ b/configs/r0p7734_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_R0P7734=y diff --git a/configs/r2dplus_defconfig b/configs/r2dplus_defconfig new file mode 100644 index 0000000..87de323 --- /dev/null +++ b/configs/r2dplus_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_R2DPLUS=y diff --git a/configs/r7-tv-dongle_defconfig b/configs/r7-tv-dongle_defconfig new file mode 100644 index 0000000..f0f97b0 --- /dev/null +++ b/configs/r7-tv-dongle_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="R7DONGLE,SPL,AXP152_POWER,USB_EHCI,SUNXI_USB_VBUS0_GPIO=SUNXI_GPG(13)" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SUN5I=y diff --git a/configs/r7780mp_defconfig b/configs/r7780mp_defconfig new file mode 100644 index 0000000..7e201f5 --- /dev/null +++ b/configs/r7780mp_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_R7780MP=y diff --git a/configs/rainier_defconfig b/configs/rainier_defconfig new file mode 100644 index 0000000..666cb18 --- /dev/null +++ b/configs/rainier_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAINIER" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_SEQUOIA=y diff --git a/configs/rainier_ramboot_defconfig b/configs/rainier_ramboot_defconfig new file mode 100644 index 0000000..2ecb1cf --- /dev/null +++ b/configs/rainier_ramboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAINIER,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_SEQUOIA=y diff --git a/configs/rd6281a_defconfig b/configs/rd6281a_defconfig new file mode 100644 index 0000000..d9c3e39 --- /dev/null +++ b/configs/rd6281a_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_RD6281A=y diff --git a/configs/redwood_defconfig b/configs/redwood_defconfig new file mode 100644 index 0000000..ad87d0e --- /dev/null +++ b/configs/redwood_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_REDWOOD=y diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig new file mode 100644 index 0000000..5296bde --- /dev/null +++ b/configs/riotboard_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s1g.cfg,MX6S,DDR_MB=1024,ENV_IS_IN_MMC" +CONFIG_ARM=y +CONFIG_TARGET_EMBESTMX6BOARDS=y diff --git a/configs/rpi_b_defconfig b/configs/rpi_b_defconfig new file mode 100644 index 0000000..9a4705e --- /dev/null +++ b/configs/rpi_b_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_RPI_B=y diff --git a/configs/rsk7203_defconfig b/configs/rsk7203_defconfig new file mode 100644 index 0000000..44c0bc8 --- /dev/null +++ b/configs/rsk7203_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_RSK7203=y diff --git a/configs/rsk7264_defconfig b/configs/rsk7264_defconfig new file mode 100644 index 0000000..aedc333 --- /dev/null +++ b/configs/rsk7264_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_RSK7264=y diff --git a/configs/rsk7269_defconfig b/configs/rsk7269_defconfig new file mode 100644 index 0000000..25fdf80 --- /dev/null +++ b/configs/rsk7269_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_RSK7269=y diff --git a/configs/rut_defconfig b/configs/rut_defconfig new file mode 100644 index 0000000..0568655 --- /dev/null +++ b/configs/rut_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_RUT=y diff --git a/configs/s5p_goni_defconfig b/configs/s5p_goni_defconfig new file mode 100644 index 0000000..c0c3509 --- /dev/null +++ b/configs/s5p_goni_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_S5P_GONI=y diff --git a/configs/s5pc210_universal_defconfig b/configs/s5pc210_universal_defconfig new file mode 100644 index 0000000..572df1d --- /dev/null +++ b/configs/s5pc210_universal_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_S5PC210_UNIVERSAL=y diff --git a/configs/sacsng_defconfig b/configs/sacsng_defconfig new file mode 100644 index 0000000..91cca23 --- /dev/null +++ b/configs/sacsng_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC8260=y +CONFIG_TARGET_SACSNG=y diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig new file mode 100644 index 0000000..a7d791f --- /dev/null +++ b/configs/sama5d3_xplained_mmc_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_MMC" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SAMA5D3_XPLAINED=y diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig new file mode 100644 index 0000000..b972860 --- /dev/null +++ b/configs/sama5d3_xplained_nandflash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_NANDFLASH" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SAMA5D3_XPLAINED=y diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig new file mode 100644 index 0000000..3f8d997 --- /dev/null +++ b/configs/sama5d3xek_mmc_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_MMC" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SAMA5D3XEK=y diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig new file mode 100644 index 0000000..7a92417 --- /dev/null +++ b/configs/sama5d3xek_nandflash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_NANDFLASH" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SAMA5D3XEK=y diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig new file mode 100644 index 0000000..c83a7ab --- /dev/null +++ b/configs/sama5d3xek_spiflash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SAMA5D3,SYS_USE_SERIALFLASH" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SAMA5D3XEK=y diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/configs/sandbox_defconfig diff --git a/configs/sansa_fuze_plus_defconfig b/configs/sansa_fuze_plus_defconfig new file mode 100644 index 0000000..b6b0fc7 --- /dev/null +++ b/configs/sansa_fuze_plus_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SANSA_FUZE_PLUS=y diff --git a/configs/sbc35_a9g20_eeprom_defconfig b/configs/sbc35_a9g20_eeprom_defconfig new file mode 100644 index 0000000..aa9cd3e --- /dev/null +++ b/configs/sbc35_a9g20_eeprom_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_EEPROM" +CONFIG_ARM=y +CONFIG_TARGET_SBC35_A9G20=y diff --git a/configs/sbc35_a9g20_nandflash_defconfig b/configs/sbc35_a9g20_nandflash_defconfig new file mode 100644 index 0000000..fba9f31 --- /dev/null +++ b/configs/sbc35_a9g20_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_SBC35_A9G20=y diff --git a/configs/sbc405_defconfig b/configs/sbc405_defconfig new file mode 100644 index 0000000..b34cbb7 --- /dev/null +++ b/configs/sbc405_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_SBC405=y diff --git a/configs/sbc8349_PCI_33_defconfig b/configs/sbc8349_PCI_33_defconfig new file mode 100644 index 0000000..f7aaa7d --- /dev/null +++ b/configs/sbc8349_PCI_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_33M" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_SBC8349=y diff --git a/configs/sbc8349_PCI_66_defconfig b/configs/sbc8349_PCI_66_defconfig new file mode 100644 index 0000000..2e1171f --- /dev/null +++ b/configs/sbc8349_PCI_66_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,PCI_66M" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_SBC8349=y diff --git a/configs/sbc8349_defconfig b/configs/sbc8349_defconfig new file mode 100644 index 0000000..f1808e8 --- /dev/null +++ b/configs/sbc8349_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_SBC8349=y diff --git a/configs/sbc8548_PCI_33_PCIE_defconfig b/configs/sbc8548_PCI_33_PCIE_defconfig new file mode 100644 index 0000000..ae4f63f --- /dev/null +++ b/configs/sbc8548_PCI_33_PCIE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,33,PCIE" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_SBC8548=y diff --git a/configs/sbc8548_PCI_33_defconfig b/configs/sbc8548_PCI_33_defconfig new file mode 100644 index 0000000..b79b993 --- /dev/null +++ b/configs/sbc8548_PCI_33_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,33" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_SBC8548=y diff --git a/configs/sbc8548_PCI_66_PCIE_defconfig b/configs/sbc8548_PCI_66_PCIE_defconfig new file mode 100644 index 0000000..661fd0f --- /dev/null +++ b/configs/sbc8548_PCI_66_PCIE_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,66,PCIE" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_SBC8548=y diff --git a/configs/sbc8548_PCI_66_defconfig b/configs/sbc8548_PCI_66_defconfig new file mode 100644 index 0000000..8cc95e5 --- /dev/null +++ b/configs/sbc8548_PCI_66_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="PCI,66" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_SBC8548=y diff --git a/configs/sbc8548_defconfig b/configs/sbc8548_defconfig new file mode 100644 index 0000000..b74f7bc --- /dev/null +++ b/configs/sbc8548_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_SBC8548=y diff --git a/configs/sbc8641d_defconfig b/configs/sbc8641d_defconfig new file mode 100644 index 0000000..6b89473 --- /dev/null +++ b/configs/sbc8641d_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC86xx=y +CONFIG_TARGET_SBC8641D=y diff --git a/configs/sc3_defconfig b/configs/sc3_defconfig new file mode 100644 index 0000000..e77b04c --- /dev/null +++ b/configs/sc3_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_SC3=y diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig new file mode 100644 index 0000000..75e0fc8 --- /dev/null +++ b/configs/sc_sps_1_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SC_SPS_1=y diff --git a/configs/scb9328_defconfig b/configs/scb9328_defconfig new file mode 100644 index 0000000..048caeb --- /dev/null +++ b/configs/scb9328_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_SCB9328=y diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig new file mode 100644 index 0000000..c0f078b --- /dev/null +++ b/configs/seaboard_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SEABOARD=y diff --git a/configs/sequoia_defconfig b/configs/sequoia_defconfig new file mode 100644 index 0000000..678c2bb --- /dev/null +++ b/configs/sequoia_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SEQUOIA" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_SEQUOIA=y diff --git a/configs/sequoia_ramboot_defconfig b/configs/sequoia_ramboot_defconfig new file mode 100644 index 0000000..0d0c6c1 --- /dev/null +++ b/configs/sequoia_ramboot_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SEQUOIA,SYS_RAMBOOT,SYS_TEXT_BASE=0x01000000,SYS_LDSCRIPT=board/amcc/sequoia/u-boot-ram.lds" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_SEQUOIA=y diff --git a/configs/sh7752evb_defconfig b/configs/sh7752evb_defconfig new file mode 100644 index 0000000..124154c --- /dev/null +++ b/configs/sh7752evb_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_SH7752EVB=y diff --git a/configs/sh7753evb_defconfig b/configs/sh7753evb_defconfig new file mode 100644 index 0000000..9ff4121 --- /dev/null +++ b/configs/sh7753evb_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_SH7753EVB=y diff --git a/configs/sh7757lcr_defconfig b/configs/sh7757lcr_defconfig new file mode 100644 index 0000000..3066d97 --- /dev/null +++ b/configs/sh7757lcr_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_SH7757LCR=y diff --git a/configs/sh7763rdp_defconfig b/configs/sh7763rdp_defconfig new file mode 100644 index 0000000..8857e8a --- /dev/null +++ b/configs/sh7763rdp_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_SH7763RDP=y diff --git a/configs/sh7785lcr_32bit_defconfig b/configs/sh7785lcr_32bit_defconfig new file mode 100644 index 0000000..7cf93b4 --- /dev/null +++ b/configs/sh7785lcr_32bit_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SH_32BIT=1" +CONFIG_SH=y +CONFIG_TARGET_SH7785LCR=y diff --git a/configs/sh7785lcr_defconfig b/configs/sh7785lcr_defconfig new file mode 100644 index 0000000..31d2c38 --- /dev/null +++ b/configs/sh7785lcr_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_SH7785LCR=y diff --git a/configs/sheevaplug_defconfig b/configs/sheevaplug_defconfig new file mode 100644 index 0000000..9e4b9c9 --- /dev/null +++ b/configs/sheevaplug_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_SHEEVAPLUG=y diff --git a/configs/shmin_defconfig b/configs/shmin_defconfig new file mode 100644 index 0000000..74c3550 --- /dev/null +++ b/configs/shmin_defconfig @@ -0,0 +1,2 @@ +CONFIG_SH=y +CONFIG_TARGET_SHMIN=y diff --git a/configs/smdk2410_defconfig b/configs/smdk2410_defconfig new file mode 100644 index 0000000..fec4ba6 --- /dev/null +++ b/configs/smdk2410_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_SMDK2410=y diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig new file mode 100644 index 0000000..a35e4fc --- /dev/null +++ b/configs/smdk5250_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SMDK5250=y diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig new file mode 100644 index 0000000..12933f0 --- /dev/null +++ b/configs/smdk5420_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SMDK5420=y diff --git a/configs/smdkc100_defconfig b/configs/smdkc100_defconfig new file mode 100644 index 0000000..7455235 --- /dev/null +++ b/configs/smdkc100_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_SMDKC100=y diff --git a/configs/smdkv310_defconfig b/configs/smdkv310_defconfig new file mode 100644 index 0000000..d87986a --- /dev/null +++ b/configs/smdkv310_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SMDKV310=y diff --git a/configs/snapper9260_defconfig b/configs/snapper9260_defconfig new file mode 100644 index 0000000..7055e2a --- /dev/null +++ b/configs/snapper9260_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260" +CONFIG_ARM=y +CONFIG_TARGET_SNAPPER9260=y diff --git a/configs/snapper9g20_defconfig b/configs/snapper9g20_defconfig new file mode 100644 index 0000000..2faae15 --- /dev/null +++ b/configs/snapper9g20_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20" +CONFIG_ARM=y +CONFIG_TARGET_SNAPPER9260=y diff --git a/configs/snow_defconfig b/configs/snow_defconfig new file mode 100644 index 0000000..44c4701 --- /dev/null +++ b/configs/snow_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SNOW=y diff --git a/configs/snowball_defconfig b/configs/snowball_defconfig new file mode 100644 index 0000000..19100c2 --- /dev/null +++ b/configs/snowball_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_SNOWBALL=y diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig new file mode 100644 index 0000000..4b2ede4 --- /dev/null +++ b/configs/socfpga_cyclone5_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_SOCFPGA_CYCLONE5=y diff --git a/configs/socrates_defconfig b/configs/socrates_defconfig new file mode 100644 index 0000000..d7ed82b --- /dev/null +++ b/configs/socrates_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_SOCRATES=y diff --git a/configs/spear300_defconfig b/configs/spear300_defconfig new file mode 100644 index 0000000..25a08df --- /dev/null +++ b/configs/spear300_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear300" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR300=y diff --git a/configs/spear300_nand_defconfig b/configs/spear300_nand_defconfig new file mode 100644 index 0000000..a4b70e8 --- /dev/null +++ b/configs/spear300_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear300,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR300=y diff --git a/configs/spear300_usbtty_defconfig b/configs/spear300_usbtty_defconfig new file mode 100644 index 0000000..d750cf4 --- /dev/null +++ b/configs/spear300_usbtty_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear300,usbtty" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR300=y diff --git a/configs/spear300_usbtty_nand_defconfig b/configs/spear300_usbtty_nand_defconfig new file mode 100644 index 0000000..8bafdb5 --- /dev/null +++ b/configs/spear300_usbtty_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear300,usbtty,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR300=y diff --git a/configs/spear310_defconfig b/configs/spear310_defconfig new file mode 100644 index 0000000..8a9ec85 --- /dev/null +++ b/configs/spear310_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear310" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR310=y diff --git a/configs/spear310_nand_defconfig b/configs/spear310_nand_defconfig new file mode 100644 index 0000000..1439ac5 --- /dev/null +++ b/configs/spear310_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear310,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR310=y diff --git a/configs/spear310_pnor_defconfig b/configs/spear310_pnor_defconfig new file mode 100644 index 0000000..19604b3 --- /dev/null +++ b/configs/spear310_pnor_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear310,FLASH_PNOR" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR310=y diff --git a/configs/spear310_usbtty_defconfig b/configs/spear310_usbtty_defconfig new file mode 100644 index 0000000..6342a56 --- /dev/null +++ b/configs/spear310_usbtty_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear310,usbtty" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR310=y diff --git a/configs/spear310_usbtty_nand_defconfig b/configs/spear310_usbtty_nand_defconfig new file mode 100644 index 0000000..5b9f1f6 --- /dev/null +++ b/configs/spear310_usbtty_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear310,usbtty,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR310=y diff --git a/configs/spear310_usbtty_pnor_defconfig b/configs/spear310_usbtty_pnor_defconfig new file mode 100644 index 0000000..0567936 --- /dev/null +++ b/configs/spear310_usbtty_pnor_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear310,usbtty,FLASH_PNOR" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR310=y diff --git a/configs/spear320_defconfig b/configs/spear320_defconfig new file mode 100644 index 0000000..3d91bb1 --- /dev/null +++ b/configs/spear320_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear320" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR320=y diff --git a/configs/spear320_nand_defconfig b/configs/spear320_nand_defconfig new file mode 100644 index 0000000..fd0f908 --- /dev/null +++ b/configs/spear320_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear320,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR320=y diff --git a/configs/spear320_pnor_defconfig b/configs/spear320_pnor_defconfig new file mode 100644 index 0000000..6cce316 --- /dev/null +++ b/configs/spear320_pnor_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear320,FLASH_PNOR" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR320=y diff --git a/configs/spear320_usbtty_defconfig b/configs/spear320_usbtty_defconfig new file mode 100644 index 0000000..7ad3d84 --- /dev/null +++ b/configs/spear320_usbtty_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear320,usbtty" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR320=y diff --git a/configs/spear320_usbtty_nand_defconfig b/configs/spear320_usbtty_nand_defconfig new file mode 100644 index 0000000..a5ad90b --- /dev/null +++ b/configs/spear320_usbtty_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear320,usbtty,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR320=y diff --git a/configs/spear320_usbtty_pnor_defconfig b/configs/spear320_usbtty_pnor_defconfig new file mode 100644 index 0000000..6b110ef --- /dev/null +++ b/configs/spear320_usbtty_pnor_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear320,usbtty,FLASH_PNOR" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR320=y diff --git a/configs/spear600_defconfig b/configs/spear600_defconfig new file mode 100644 index 0000000..f1cb0aa --- /dev/null +++ b/configs/spear600_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear600" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR600=y diff --git a/configs/spear600_nand_defconfig b/configs/spear600_nand_defconfig new file mode 100644 index 0000000..172c187 --- /dev/null +++ b/configs/spear600_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear600,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR600=y diff --git a/configs/spear600_usbtty_defconfig b/configs/spear600_usbtty_defconfig new file mode 100644 index 0000000..cf8b0ec --- /dev/null +++ b/configs/spear600_usbtty_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear600,usbtty" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR600=y diff --git a/configs/spear600_usbtty_nand_defconfig b/configs/spear600_usbtty_nand_defconfig new file mode 100644 index 0000000..8bd2f07 --- /dev/null +++ b/configs/spear600_usbtty_nand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="spear600,usbtty,nand" +CONFIG_ARM=y +CONFIG_TARGET_SPEAR600=y diff --git a/configs/stamp9g20_defconfig b/configs/stamp9g20_defconfig new file mode 100644 index 0000000..8c0f874 --- /dev/null +++ b/configs/stamp9g20_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20" +CONFIG_ARM=y +CONFIG_TARGET_STAMP9G20=y diff --git a/configs/stxgp3_defconfig b/configs/stxgp3_defconfig new file mode 100644 index 0000000..b7537df --- /dev/null +++ b/configs/stxgp3_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_STXGP3=y diff --git a/configs/stxssa_4M_defconfig b/configs/stxssa_4M_defconfig new file mode 100644 index 0000000..1ffe9f9 --- /dev/null +++ b/configs/stxssa_4M_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="STXSSA_4M" +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_STXSSA=y diff --git a/configs/stxssa_defconfig b/configs/stxssa_defconfig new file mode 100644 index 0000000..f1701f2 --- /dev/null +++ b/configs/stxssa_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_STXSSA=y diff --git a/configs/stxxtc_defconfig b/configs/stxxtc_defconfig new file mode 100644 index 0000000..d0642e4 --- /dev/null +++ b/configs/stxxtc_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_STXXTC=y diff --git a/configs/suvd3_defconfig b/configs/suvd3_defconfig new file mode 100644 index 0000000..0407c87 --- /dev/null +++ b/configs/suvd3_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SUVD3" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_SUVD3=y diff --git a/configs/svm_sc8xx_defconfig b/configs/svm_sc8xx_defconfig new file mode 100644 index 0000000..9f0d343 --- /dev/null +++ b/configs/svm_sc8xx_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_SVM_SC8XX=y diff --git a/configs/sycamore_defconfig b/configs/sycamore_defconfig new file mode 100644 index 0000000..844e67f --- /dev/null +++ b/configs/sycamore_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_WALNUT=y diff --git a/configs/t3corp_defconfig b/configs/t3corp_defconfig new file mode 100644 index 0000000..c61508a --- /dev/null +++ b/configs/t3corp_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_T3CORP=y diff --git a/configs/taihu_defconfig b/configs/taihu_defconfig new file mode 100644 index 0000000..ac83725 --- /dev/null +++ b/configs/taihu_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_TAIHU=y diff --git a/configs/taishan_defconfig b/configs/taishan_defconfig new file mode 100644 index 0000000..e956c6f --- /dev/null +++ b/configs/taishan_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_TAISHAN=y diff --git a/configs/tao3530_defconfig b/configs/tao3530_defconfig new file mode 100644 index 0000000..d8b57b1 --- /dev/null +++ b/configs/tao3530_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TAO3530=y diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig new file mode 100644 index 0000000..9870048 --- /dev/null +++ b/configs/taurus_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2067,BOARD_TAURUS" +CONFIG_ARM=y +CONFIG_TARGET_TAURUS=y diff --git a/configs/tb100_defconfig b/configs/tb100_defconfig new file mode 100644 index 0000000..9669dc0 --- /dev/null +++ b/configs/tb100_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARC=y +CONFIG_TARGET_TB100=y diff --git a/configs/tcm-bf518_defconfig b/configs/tcm-bf518_defconfig new file mode 100644 index 0000000..a9d5da0 --- /dev/null +++ b/configs/tcm-bf518_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_TCM_BF518=y diff --git a/configs/tcm-bf537_defconfig b/configs/tcm-bf537_defconfig new file mode 100644 index 0000000..fe9de13 --- /dev/null +++ b/configs/tcm-bf537_defconfig @@ -0,0 +1,2 @@ +CONFIG_BLACKFIN=y +CONFIG_TARGET_TCM_BF537=y diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig new file mode 100644 index 0000000..2360d25 --- /dev/null +++ b/configs/tec-ng_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TEC_NG=y diff --git a/configs/tec_defconfig b/configs/tec_defconfig new file mode 100644 index 0000000..1aaa9d1 --- /dev/null +++ b/configs/tec_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TEC=y diff --git a/configs/ti814x_evm_defconfig b/configs/ti814x_evm_defconfig new file mode 100644 index 0000000..0170655 --- /dev/null +++ b/configs/ti814x_evm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TI814X_EVM=y diff --git a/configs/ti816x_evm_defconfig b/configs/ti816x_evm_defconfig new file mode 100644 index 0000000..abb6c5e --- /dev/null +++ b/configs/ti816x_evm_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TI816X_EVM=y diff --git a/configs/titanium_defconfig b/configs/titanium_defconfig new file mode 100644 index 0000000..96f7f79 --- /dev/null +++ b/configs/titanium_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/barco/titanium/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_TITANIUM=y diff --git a/configs/tk71_defconfig b/configs/tk71_defconfig new file mode 100644 index 0000000..ffff874 --- /dev/null +++ b/configs/tk71_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_TK71=y diff --git a/configs/tnetv107x_evm_defconfig b/configs/tnetv107x_evm_defconfig new file mode 100644 index 0000000..b0915d2 --- /dev/null +++ b/configs/tnetv107x_evm_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_TNETV107X_EVM=y diff --git a/configs/tny_a9260_eeprom_defconfig b/configs/tny_a9260_eeprom_defconfig new file mode 100644 index 0000000..a662669 --- /dev/null +++ b/configs/tny_a9260_eeprom_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260,SYS_USE_EEPROM" +CONFIG_ARM=y +CONFIG_TARGET_TNY_A9260=y diff --git a/configs/tny_a9260_nandflash_defconfig b/configs/tny_a9260_nandflash_defconfig new file mode 100644 index 0000000..41fd9c1 --- /dev/null +++ b/configs/tny_a9260_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9260,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_TNY_A9260=y diff --git a/configs/tny_a9g20_eeprom_defconfig b/configs/tny_a9g20_eeprom_defconfig new file mode 100644 index 0000000..a2eb60e --- /dev/null +++ b/configs/tny_a9g20_eeprom_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_EEPROM" +CONFIG_ARM=y +CONFIG_TARGET_TNY_A9260=y diff --git a/configs/tny_a9g20_nandflash_defconfig b/configs/tny_a9g20_nandflash_defconfig new file mode 100644 index 0000000..60ebfa2 --- /dev/null +++ b/configs/tny_a9g20_nandflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,SYS_USE_NANDFLASH" +CONFIG_ARM=y +CONFIG_TARGET_TNY_A9260=y diff --git a/configs/top9000eval_xe_defconfig b/configs/top9000eval_xe_defconfig new file mode 100644 index 0000000..7ea51f5 --- /dev/null +++ b/configs/top9000eval_xe_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="EVAL9000" +CONFIG_ARM=y +CONFIG_TARGET_TOP9000=y diff --git a/configs/top9000su_xe_defconfig b/configs/top9000su_xe_defconfig new file mode 100644 index 0000000..bf6b6f1 --- /dev/null +++ b/configs/top9000su_xe_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="SU9000" +CONFIG_ARM=y +CONFIG_TARGET_TOP9000=y diff --git a/configs/trats2_defconfig b/configs/trats2_defconfig new file mode 100644 index 0000000..0a53f09 --- /dev/null +++ b/configs/trats2_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_TRATS2=y diff --git a/configs/trats_defconfig b/configs/trats_defconfig new file mode 100644 index 0000000..93b94c0 --- /dev/null +++ b/configs/trats_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_TRATS=y diff --git a/configs/tricorder_defconfig b/configs/tricorder_defconfig new file mode 100644 index 0000000..80c2df4 --- /dev/null +++ b/configs/tricorder_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TRICORDER=y diff --git a/configs/tricorder_flash_defconfig b/configs/tricorder_flash_defconfig new file mode 100644 index 0000000..6715e71 --- /dev/null +++ b/configs/tricorder_flash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="FLASHCARD" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TRICORDER=y diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig new file mode 100644 index 0000000..c096c65 --- /dev/null +++ b/configs/trimslice_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TRIMSLICE=y diff --git a/configs/trizepsiv_defconfig b/configs/trizepsiv_defconfig new file mode 100644 index 0000000..444d3bb --- /dev/null +++ b/configs/trizepsiv_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_TRIZEPSIV=y diff --git a/configs/tseries_mmc_defconfig b/configs/tseries_mmc_defconfig new file mode 100644 index 0000000..ea70705 --- /dev/null +++ b/configs/tseries_mmc_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TSERIES=y diff --git a/configs/tseries_nand_defconfig b/configs/tseries_nand_defconfig new file mode 100644 index 0000000..599d52c --- /dev/null +++ b/configs/tseries_nand_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TSERIES=y diff --git a/configs/tseries_spi_defconfig b/configs/tseries_spi_defconfig new file mode 100644 index 0000000..7e57020 --- /dev/null +++ b/configs/tseries_spi_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,SPI_BOOT,EMMC_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TSERIES=y diff --git a/configs/tt01_defconfig b/configs/tt01_defconfig new file mode 100644 index 0000000..a0e6664 --- /dev/null +++ b/configs/tt01_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_TT01=y diff --git a/configs/tuge1_defconfig b/configs/tuge1_defconfig new file mode 100644 index 0000000..c1c9c43 --- /dev/null +++ b/configs/tuge1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TUGE1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_TUXX1=y diff --git a/configs/tuxx1_defconfig b/configs/tuxx1_defconfig new file mode 100644 index 0000000..ecea63f --- /dev/null +++ b/configs/tuxx1_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="TUXX1" +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_TUXX1=y diff --git a/configs/twister_defconfig b/configs/twister_defconfig new file mode 100644 index 0000000..27e8364 --- /dev/null +++ b/configs/twister_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TWISTER=y diff --git a/configs/tx25_defconfig b/configs/tx25_defconfig new file mode 100644 index 0000000..0cbc4ee --- /dev/null +++ b/configs/tx25_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_TX25=y diff --git a/configs/u8500_href_defconfig b/configs/u8500_href_defconfig new file mode 100644 index 0000000..fef179f --- /dev/null +++ b/configs/u8500_href_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_U8500_HREF=y diff --git a/configs/uc100_defconfig b/configs/uc100_defconfig new file mode 100644 index 0000000..76eeb11 --- /dev/null +++ b/configs/uc100_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_UC100=y diff --git a/configs/uc101_defconfig b/configs/uc101_defconfig new file mode 100644 index 0000000..b365bff --- /dev/null +++ b/configs/uc101_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_UC101=y diff --git a/configs/udoo_quad_defconfig b/configs/udoo_quad_defconfig new file mode 100644 index 0000000..860a310 --- /dev/null +++ b/configs/udoo_quad_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/udoo/udoo.cfg,MX6Q,DDR_MB=1024" +CONFIG_ARM=y +CONFIG_TARGET_UDOO=y diff --git a/configs/usb_a9263_dataflash_defconfig b/configs/usb_a9263_dataflash_defconfig new file mode 100644 index 0000000..8c0ac11 --- /dev/null +++ b/configs/usb_a9263_dataflash_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9263,SYS_USE_DATAFLASH" +CONFIG_ARM=y +CONFIG_TARGET_USB_A9263=y diff --git a/configs/utx8245_defconfig b/configs/utx8245_defconfig new file mode 100644 index 0000000..c2107cc --- /dev/null +++ b/configs/utx8245_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC824X=y +CONFIG_TARGET_UTX8245=y diff --git a/configs/v38b_defconfig b/configs/v38b_defconfig new file mode 100644 index 0000000..811354c --- /dev/null +++ b/configs/v38b_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC5xxx=y +CONFIG_TARGET_V38B=y diff --git a/configs/v5fx30teval_defconfig b/configs/v5fx30teval_defconfig new file mode 100644 index 0000000..bb58153 --- /dev/null +++ b/configs/v5fx30teval_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,BOOT_FROM_XMD=1,INIT_TLB=board/xilinx/ppc440-generic/init.o" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_V5FX30TEVAL=y diff --git a/configs/v5fx30teval_flash_defconfig b/configs/v5fx30teval_flash_defconfig new file mode 100644 index 0000000..1c6ec89 --- /dev/null +++ b/configs/v5fx30teval_flash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC,INIT_TLB=board/xilinx/ppc440-generic/init.o" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_V5FX30TEVAL=y diff --git a/configs/vct_platinum_defconfig b/configs/vct_platinum_defconfig new file mode 100644 index 0000000..9ff8b68 --- /dev/null +++ b/configs/vct_platinum_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_platinum_onenand_defconfig b/configs/vct_platinum_onenand_defconfig new file mode 100644 index 0000000..f33c97d --- /dev/null +++ b/configs/vct_platinum_onenand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_platinum_onenand_small_defconfig b/configs/vct_platinum_onenand_small_defconfig new file mode 100644 index 0000000..f7b3a91 --- /dev/null +++ b/configs/vct_platinum_onenand_small_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_ONENAND,VCT_SMALL_IMAGE" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_platinum_small_defconfig b/configs/vct_platinum_small_defconfig new file mode 100644 index 0000000..15eef48 --- /dev/null +++ b/configs/vct_platinum_small_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUM,VCT_SMALL_IMAGE" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_platinumavc_defconfig b/configs/vct_platinumavc_defconfig new file mode 100644 index 0000000..8aaac56 --- /dev/null +++ b/configs/vct_platinumavc_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_platinumavc_onenand_defconfig b/configs/vct_platinumavc_onenand_defconfig new file mode 100644 index 0000000..926c6e4 --- /dev/null +++ b/configs/vct_platinumavc_onenand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_platinumavc_onenand_small_defconfig b/configs/vct_platinumavc_onenand_small_defconfig new file mode 100644 index 0000000..e0e8e44 --- /dev/null +++ b/configs/vct_platinumavc_onenand_small_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_ONENAND,VCT_SMALL_IMAGE" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_platinumavc_small_defconfig b/configs/vct_platinumavc_small_defconfig new file mode 100644 index 0000000..d8209d1 --- /dev/null +++ b/configs/vct_platinumavc_small_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PLATINUMAVC,VCT_SMALL_IMAGE" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_premium_defconfig b/configs/vct_premium_defconfig new file mode 100644 index 0000000..0e16ff9 --- /dev/null +++ b/configs/vct_premium_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_premium_onenand_defconfig b/configs/vct_premium_onenand_defconfig new file mode 100644 index 0000000..29734b8 --- /dev/null +++ b/configs/vct_premium_onenand_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_premium_onenand_small_defconfig b/configs/vct_premium_onenand_small_defconfig new file mode 100644 index 0000000..220f875 --- /dev/null +++ b/configs/vct_premium_onenand_small_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_ONENAND,VCT_SMALL_IMAGE" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/vct_premium_small_defconfig b/configs/vct_premium_small_defconfig new file mode 100644 index 0000000..5335472 --- /dev/null +++ b/configs/vct_premium_small_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="VCT_PREMIUM,VCT_SMALL_IMAGE" +CONFIG_MIPS=y +CONFIG_TARGET_VCT=y diff --git a/configs/ve8313_defconfig b/configs/ve8313_defconfig new file mode 100644 index 0000000..462c482 --- /dev/null +++ b/configs/ve8313_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_VE8313=y diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig new file mode 100644 index 0000000..2bfa91d --- /dev/null +++ b/configs/venice2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_VENICE2=y diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig new file mode 100644 index 0000000..75fca96 --- /dev/null +++ b/configs/ventana_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_VENTANA=y diff --git a/configs/versatileab_defconfig b/configs/versatileab_defconfig new file mode 100644 index 0000000..9d64dd0 --- /dev/null +++ b/configs/versatileab_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARCH_VERSATILE_AB" +CONFIG_ARM=y +CONFIG_TARGET_VERSATILEAB=y diff --git a/configs/versatilepb_defconfig b/configs/versatilepb_defconfig new file mode 100644 index 0000000..fadaf93 --- /dev/null +++ b/configs/versatilepb_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARCH_VERSATILE_PB" +CONFIG_ARM=y +CONFIG_TARGET_VERSATILEPB=y diff --git a/configs/versatileqemu_defconfig b/configs/versatileqemu_defconfig new file mode 100644 index 0000000..9d24558 --- /dev/null +++ b/configs/versatileqemu_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARCH_VERSATILE_QEMU,ARCH_VERSATILE_PB" +CONFIG_ARM=y +CONFIG_TARGET_VERSATILEQEMU=y diff --git a/configs/vexpress_aemv8a_defconfig b/configs/vexpress_aemv8a_defconfig new file mode 100644 index 0000000..a335abc --- /dev/null +++ b/configs/vexpress_aemv8a_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARM64" +CONFIG_ARM=y +CONFIG_TARGET_VEXPRESS_AEMV8A=y diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig new file mode 100644 index 0000000..e6dd8e7 --- /dev/null +++ b/configs/vexpress_aemv8a_semi_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="ARM64,SEMIHOSTING,BASE_FVP" +CONFIG_ARM=y +CONFIG_TARGET_VEXPRESS_AEMV8A_SEMI=y diff --git a/configs/vexpress_ca15_tc2_defconfig b/configs/vexpress_ca15_tc2_defconfig new file mode 100644 index 0000000..ee5b351 --- /dev/null +++ b/configs/vexpress_ca15_tc2_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_VEXPRESS_CA15_TC2=y diff --git a/configs/vexpress_ca5x2_defconfig b/configs/vexpress_ca5x2_defconfig new file mode 100644 index 0000000..fafed03 --- /dev/null +++ b/configs/vexpress_ca5x2_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_VEXPRESS_CA5X2=y diff --git a/configs/vexpress_ca9x4_defconfig b/configs/vexpress_ca9x4_defconfig new file mode 100644 index 0000000..1ff2ebf --- /dev/null +++ b/configs/vexpress_ca9x4_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_VEXPRESS_CA9X4=y diff --git a/configs/vf610twr_defconfig b/configs/vf610twr_defconfig new file mode 100644 index 0000000..10e6432 --- /dev/null +++ b/configs/vf610twr_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/vf610twr/imximage.cfg" +CONFIG_ARM=y +CONFIG_TARGET_VF610TWR=y diff --git a/configs/virtlab2_defconfig b/configs/virtlab2_defconfig new file mode 100644 index 0000000..3eb3993 --- /dev/null +++ b/configs/virtlab2_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_VIRTLAB2=y diff --git a/configs/vision2_defconfig b/configs/vision2_defconfig new file mode 100644 index 0000000..430dbc0 --- /dev/null +++ b/configs/vision2_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/ttcontrol/vision2/imximage_hynix.cfg" +CONFIG_ARM=y +CONFIG_TARGET_VISION2=y diff --git a/configs/vl_ma2sc_defconfig b/configs/vl_ma2sc_defconfig new file mode 100644 index 0000000..39cd725 --- /dev/null +++ b/configs/vl_ma2sc_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_VL_MA2SC=y diff --git a/configs/vl_ma2sc_ram_defconfig b/configs/vl_ma2sc_ram_defconfig new file mode 100644 index 0000000..70a07ab --- /dev/null +++ b/configs/vl_ma2sc_ram_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="RAMLOAD" +CONFIG_ARM=y +CONFIG_TARGET_VL_MA2SC=y diff --git a/configs/vme8349_defconfig b/configs/vme8349_defconfig new file mode 100644 index 0000000..8df2cfd --- /dev/null +++ b/configs/vme8349_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC83xx=y +CONFIG_TARGET_VME8349=y diff --git a/configs/vpac270_nor_128_defconfig b/configs/vpac270_nor_128_defconfig new file mode 100644 index 0000000..74609ab --- /dev/null +++ b/configs/vpac270_nor_128_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NOR,RAM_128M" +CONFIG_ARM=y +CONFIG_TARGET_VPAC270=y diff --git a/configs/vpac270_nor_256_defconfig b/configs/vpac270_nor_256_defconfig new file mode 100644 index 0000000..d6163ef --- /dev/null +++ b/configs/vpac270_nor_256_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="NOR,RAM_256M" +CONFIG_ARM=y +CONFIG_TARGET_VPAC270=y diff --git a/configs/vpac270_ond_256_defconfig b/configs/vpac270_ond_256_defconfig new file mode 100644 index 0000000..2a536a5 --- /dev/null +++ b/configs/vpac270_ond_256_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="ONENAND,RAM_256M" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_VPAC270=y diff --git a/configs/walnut_defconfig b/configs/walnut_defconfig new file mode 100644 index 0000000..844e67f --- /dev/null +++ b/configs/walnut_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_WALNUT=y diff --git a/configs/wandboard_dl_defconfig b/configs/wandboard_dl_defconfig new file mode 100644 index 0000000..5a1f7f5 --- /dev/null +++ b/configs/wandboard_dl_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6dl.cfg,MX6DL,DDR_MB=1024" +CONFIG_ARM=y +CONFIG_TARGET_WANDBOARD=y diff --git a/configs/wandboard_quad_defconfig b/configs/wandboard_quad_defconfig new file mode 100644 index 0000000..d940848 --- /dev/null +++ b/configs/wandboard_quad_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q2g.cfg,MX6Q,DDR_MB=2048" +CONFIG_ARM=y +CONFIG_TARGET_WANDBOARD=y diff --git a/configs/wandboard_solo_defconfig b/configs/wandboard_solo_defconfig new file mode 100644 index 0000000..66aa5d3 --- /dev/null +++ b/configs/wandboard_solo_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s.cfg,MX6S,DDR_MB=512" +CONFIG_ARM=y +CONFIG_TARGET_WANDBOARD=y diff --git a/configs/whistler_defconfig b/configs/whistler_defconfig new file mode 100644 index 0000000..cdc2c90 --- /dev/null +++ b/configs/whistler_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_WHISTLER=y diff --git a/configs/wireless_space_defconfig b/configs/wireless_space_defconfig new file mode 100644 index 0000000..6c78548 --- /dev/null +++ b/configs/wireless_space_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_WIRELESS_SPACE=y diff --git a/configs/woodburn_defconfig b/configs/woodburn_defconfig new file mode 100644 index 0000000..9f96bd9 --- /dev/null +++ b/configs/woodburn_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_WOODBURN=y diff --git a/configs/woodburn_sd_defconfig b/configs/woodburn_sd_defconfig new file mode 100644 index 0000000..d3dcb3c --- /dev/null +++ b/configs/woodburn_sd_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/woodburn/imximage.cfg" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_WOODBURN_SD=y diff --git a/configs/wtk_defconfig b/configs/wtk_defconfig new file mode 100644 index 0000000..2ccddc1 --- /dev/null +++ b/configs/wtk_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="LCD,SHARP_LQ065T9DR51U" +CONFIG_PPC=y +CONFIG_8xx=y +CONFIG_TARGET_TQM823L=y diff --git a/configs/x600_defconfig b/configs/x600_defconfig new file mode 100644 index 0000000..cb66890 --- /dev/null +++ b/configs/x600_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_X600=y diff --git a/configs/xaeniax_defconfig b/configs/xaeniax_defconfig new file mode 100644 index 0000000..52e301c --- /dev/null +++ b/configs/xaeniax_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_XAENIAX=y diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig new file mode 100644 index 0000000..737db40 --- /dev/null +++ b/configs/xfi3_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_XFI3=y diff --git a/configs/xilinx-ppc405-generic_defconfig b/configs/xilinx-ppc405-generic_defconfig new file mode 100644 index 0000000..691412c --- /dev/null +++ b/configs/xilinx-ppc405-generic_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_XILINX_PPC405_GENERIC=y diff --git a/configs/xilinx-ppc405-generic_flash_defconfig b/configs/xilinx-ppc405-generic_flash_defconfig new file mode 100644 index 0000000..317b63d --- /dev/null +++ b/configs/xilinx-ppc405-generic_flash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_XILINX_PPC405_GENERIC=y diff --git a/configs/xilinx-ppc440-generic_defconfig b/configs/xilinx-ppc440-generic_defconfig new file mode 100644 index 0000000..31ce75b --- /dev/null +++ b/configs/xilinx-ppc440-generic_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x04000000,RESET_VECTOR_ADDRESS=0x04100000,BOOT_FROM_XMD=1" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_XILINX_PPC440_GENERIC=y diff --git a/configs/xilinx-ppc440-generic_flash_defconfig b/configs/xilinx-ppc440-generic_flash_defconfig new file mode 100644 index 0000000..635926f --- /dev/null +++ b/configs/xilinx-ppc440-generic_flash_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0xF7F60000,RESET_VECTOR_ADDRESS=0xF7FFFFFC" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_XILINX_PPC440_GENERIC=y diff --git a/configs/xpedite1000_defconfig b/configs/xpedite1000_defconfig new file mode 100644 index 0000000..635da26 --- /dev/null +++ b/configs/xpedite1000_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_XPEDITE1000=y diff --git a/configs/xpedite517x_defconfig b/configs/xpedite517x_defconfig new file mode 100644 index 0000000..b8513c1 --- /dev/null +++ b/configs/xpedite517x_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC86xx=y +CONFIG_TARGET_XPEDITE517X=y diff --git a/configs/xpedite520x_defconfig b/configs/xpedite520x_defconfig new file mode 100644 index 0000000..d5f526d --- /dev/null +++ b/configs/xpedite520x_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_XPEDITE520X=y diff --git a/configs/xpedite537x_defconfig b/configs/xpedite537x_defconfig new file mode 100644 index 0000000..8001dd1 --- /dev/null +++ b/configs/xpedite537x_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_XPEDITE537X=y diff --git a/configs/xpedite550x_defconfig b/configs/xpedite550x_defconfig new file mode 100644 index 0000000..dc33ca9 --- /dev/null +++ b/configs/xpedite550x_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_MPC85xx=y +CONFIG_TARGET_XPEDITE550X=y diff --git a/configs/yellowstone_defconfig b/configs/yellowstone_defconfig new file mode 100644 index 0000000..843095b --- /dev/null +++ b/configs/yellowstone_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="YELLOWSTONE" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_YOSEMITE=y diff --git a/configs/yosemite_defconfig b/configs/yosemite_defconfig new file mode 100644 index 0000000..d5eea68 --- /dev/null +++ b/configs/yosemite_defconfig @@ -0,0 +1,4 @@ +CONFIG_SYS_EXTRA_OPTIONS="YOSEMITE" +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_YOSEMITE=y diff --git a/configs/yucca_defconfig b/configs/yucca_defconfig new file mode 100644 index 0000000..6c8e20a --- /dev/null +++ b/configs/yucca_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_YUCCA=y diff --git a/configs/zeus_defconfig b/configs/zeus_defconfig new file mode 100644 index 0000000..546f10a --- /dev/null +++ b/configs/zeus_defconfig @@ -0,0 +1,3 @@ +CONFIG_PPC=y +CONFIG_4xx=y +CONFIG_TARGET_ZEUS=y diff --git a/configs/zipitz2_defconfig b/configs/zipitz2_defconfig new file mode 100644 index 0000000..8d921a0 --- /dev/null +++ b/configs/zipitz2_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_ZIPITZ2=y diff --git a/configs/zmx25_defconfig b/configs/zmx25_defconfig new file mode 100644 index 0000000..80a66d0 --- /dev/null +++ b/configs/zmx25_defconfig @@ -0,0 +1,2 @@ +CONFIG_ARM=y +CONFIG_TARGET_ZMX25=y diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig new file mode 100644 index 0000000..14024d0 --- /dev/null +++ b/configs/zynq_microzed_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ZYNQ_MICROZED=y diff --git a/configs/zynq_zc70x_defconfig b/configs/zynq_zc70x_defconfig new file mode 100644 index 0000000..d2e79a5 --- /dev/null +++ b/configs/zynq_zc70x_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ZYNQ_ZC70X=y diff --git a/configs/zynq_zc770_xm010_defconfig b/configs/zynq_zc770_xm010_defconfig new file mode 100644 index 0000000..e9f9c4b --- /dev/null +++ b/configs/zynq_zc770_xm010_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM010" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ZYNQ_ZC770=y diff --git a/configs/zynq_zc770_xm012_defconfig b/configs/zynq_zc770_xm012_defconfig new file mode 100644 index 0000000..78f1fe6 --- /dev/null +++ b/configs/zynq_zc770_xm012_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM012" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ZYNQ_ZC770=y diff --git a/configs/zynq_zc770_xm013_defconfig b/configs/zynq_zc770_xm013_defconfig new file mode 100644 index 0000000..d96e8ff --- /dev/null +++ b/configs/zynq_zc770_xm013_defconfig @@ -0,0 +1,4 @@ +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM013" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ZYNQ_ZC770=y diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig new file mode 100644 index 0000000..abf7e82 --- /dev/null +++ b/configs/zynq_zed_defconfig @@ -0,0 +1,3 @@ +CONFIG_SPL=y ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_ZYNQ_ZED=y diff --git a/doc/README.ARM-SoC b/doc/README.ARM-SoC deleted file mode 100644 index d6bd624..0000000 --- a/doc/README.ARM-SoC +++ /dev/null @@ -1,31 +0,0 @@ -[By Steven Scholz <steven.scholz@imc-berlin.de>, 16 Aug 2004] - -Since the cpu/ directory gets clobbered with peripheral driver code I -started cleaning up arch/arm/cpu/arm920t. - -I introduced the concept of Soc (system on a chip) into the ./cpu -directory. That means that code that is cpu (i.e. core) specific -resides in - - $(CPUDIR)/ - -and code that is specific to some SoC (i.e. vendor specific -peripherals around the core) is moved into - - $(CPUDIR)/$(SOC)/ - -Thus a library/archive "$(CPUDIR)/$(SOC)/lib$(SOC).a" will be build -and linked. Examples will be - - arch/arm/cpu/arm920t/imx/ - arch/arm/cpu/arm920t/s3c24x0 - -One can select an SoC by passing the name of it to ./mkconfig just -like - - @./mkconfig $(@:_config=) arm arm920t vcma9 mpl s3c24x0 - -If there's no VENDOR field (like "mpl" in the above line) one has to -pass NULL instead: - - @./mkconfig $(@:_config=) arm arm920t mx1ads NULL imx diff --git a/doc/README.SPL b/doc/README.SPL index 57a39a4..c283dcf 100644 --- a/doc/README.SPL +++ b/doc/README.SPL @@ -13,34 +13,29 @@ can be reused. No code duplication or symlinking is necessary anymore. How it works ------------ -There is a new directory $(srctree)/spl which contains only a Makefile. -The object files are built separately for SPL and placed in this directory. +The object files for SPL are built separately and placed in the "spl" directory. The final binaries which are generated are u-boot-spl, u-boot-spl.bin and u-boot-spl.map. -During the SPL build a variable named CONFIG_SPL_BUILD is exported -in the make environment and also appended to CPPFLAGS with -DCONFIG_SPL_BUILD. +A config option named CONFIG_SPL_BUILD is enabled by Kconfig for SPL. Source files can therefore be compiled for SPL with different settings. -ARM-based boards have previously used the option CONFIG_PRELOADER for it. For example: ifeq ($(CONFIG_SPL_BUILD),y) -COBJS-y += board_spl.o +obj-y += board_spl.o else -COBJS-y += board.o +obj-y += board.o endif -COBJS-$(CONFIG_SPL_BUILD) += foo.o +obj-$(CONFIG_SPL_BUILD) += foo.o #ifdef CONFIG_SPL_BUILD foo(); #endif -The building of SPL images can be with: - -#define CONFIG_SPL +The building of SPL images can be enabled by CONFIG_SPL option in Kconfig. Because SPL images normally have a different text base, one has to be configured by defining CONFIG_SPL_TEXT_BASE. The linker script has to be @@ -70,17 +65,6 @@ CONFIG_SPL_SPI_LOAD (drivers/mtd/spi/spi_spl_load.o) CONFIG_SPL_RAM_DEVICE (common/spl/spl.c) CONFIG_SPL_WATCHDOG_SUPPORT (drivers/watchdog/libwatchdog.o) -Normally CPU is assumed to be the same between the SPL and normal -u-boot build. However it is possible to specify a different CPU for -the SPL build for cases where the SPL is expected to run on a -different CPU model from the main u-boot. This is done by specifying -an SPL CPU in boards.cfg as follows: - - normal_cpu:spl_cpu - -This case CPU will be set to "normal_cpu" during the main u-boot -build and "spl_cpu" during the SPL build. - Debugging --------- diff --git a/doc/device-tree-bindings/spi/spi-bus.txt b/doc/device-tree-bindings/spi/spi-bus.txt index 800dafe..5c8720a 100644 --- a/doc/device-tree-bindings/spi/spi-bus.txt +++ b/doc/device-tree-bindings/spi/spi-bus.txt @@ -59,6 +59,8 @@ contain the following properties. used for MOSI. Defaults to 1 if not present. - spi-rx-bus-width - (optional) The bus width(number of data wires) that used for MISO. Defaults to 1 if not present. +- spi-half-duplex - (optional) Indicates that the SPI bus should wait for + a header byte before reading data from the slave. Some SPI controllers and devices support Dual and Quad SPI transfer mode. It allows data in SPI system transfered in 2 wires(DUAL) or 4 wires(QUAD). diff --git a/doc/feature-removal-schedule.txt b/doc/feature-removal-schedule.txt index 16819c7..4ed30df 100644 --- a/doc/feature-removal-schedule.txt +++ b/doc/feature-removal-schedule.txt @@ -26,7 +26,7 @@ Why: We now have a PHY library, which allows everyone to share PHY drivers. All new drivers should use this infrastructure, and all old drivers should get converted to use it. -Who: Andy Fleming <afleming@freescale.com> and driver maintainers +Who: Andy Fleming <afleming@gmail.com> and driver maintainers --------------------------- diff --git a/doc/git-mailrc b/doc/git-mailrc index ae7e7bf..0985791 100644 --- a/doc/git-mailrc +++ b/doc/git-mailrc @@ -12,7 +12,7 @@ alias u-boot uboot # things simple and easy to look up/coordinate. alias aaribaud Albert Aribaud <albert.u.boot@aribaud.net> alias abiessmann Andreas Bießmann <andreas.devel@googlemail.com> -alias afleming Andy Fleming <afleming@freescale.com> +alias afleming Andy Fleming <afleming@gmail.com> alias ag Anatolij Gustschin <agust@denx.de> alias galak Kumar Gala <galak@kernel.crashing.org> alias gruss Graeme Russ <graeme.russ@gmail.com> @@ -27,6 +27,7 @@ alias kimphill Kim Phillips <kim.phillips@freescale.com> alias lukma Lukasz Majewski <l.majewski@samsung.com> alias macpaul Macpaul Lin <macpaul@andestech.com> alias marex Marek Vasut <marex@denx.de> +alias masahiro Masahiro Yamada <yamada.m@jp.panasonic.com> alias monstr Michal Simek <monstr@monstr.eu> alias panto Pantelis Antoniou <panto@antoniou-consulting.com> alias prafulla Prafulla Wadaskar <prafulla@marvell.com> @@ -110,6 +111,7 @@ alias dfu uboot, lukma alias kerneldoc uboot, marex alias fdt uboot, Jerry Van Baren <vanbaren@cideas.com> alias i2c uboot, hs +alias kconfig uboot, masahiro alias mmc uboot, panto alias nand uboot, scottwood alias net uboot, jhersh diff --git a/drivers/block/ahci.c b/drivers/block/ahci.c index 4df8046..dce99ad 100644 --- a/drivers/block/ahci.c +++ b/drivers/block/ahci.c @@ -129,6 +129,14 @@ int __weak ahci_link_up(struct ahci_probe_ent *probe_ent, u8 port) return 1; } +#ifdef CONFIG_SUNXI_AHCI +/* The sunxi AHCI controller requires this undocumented setup */ +static void sunxi_dma_init(volatile u8 *port_mmio) +{ + clrsetbits_le32(port_mmio + PORT_P0DMACR, 0x0000ff00, 0x00004400); +} +#endif + static int ahci_host_init(struct ahci_probe_ent *probe_ent) { #ifndef CONFIG_SCSI_AHCI_PLAT @@ -213,6 +221,10 @@ static int ahci_host_init(struct ahci_probe_ent *probe_ent) msleep(500); } +#ifdef CONFIG_SUNXI_AHCI + sunxi_dma_init(port_mmio); +#endif + /* Add the spinup command to whatever mode bits may * already be on in the command register. */ @@ -545,6 +557,10 @@ static int ahci_port_start(u8 port) writel_with_flush(pp->rx_fis, port_mmio + PORT_FIS_ADDR); +#ifdef CONFIG_SUNXI_AHCI + sunxi_dma_init(port_mmio); +#endif + writel_with_flush(PORT_CMD_ICC_ACTIVE | PORT_CMD_FIS_RX | PORT_CMD_POWER_ON | PORT_CMD_SPIN_UP | PORT_CMD_START, port_mmio + PORT_CMD); diff --git a/drivers/bootcount/bootcount.c b/drivers/bootcount/bootcount.c index 3ad4413..e0343f7 100644 --- a/drivers/bootcount/bootcount.c +++ b/drivers/bootcount/bootcount.c @@ -36,7 +36,7 @@ #endif /* defined(CONFIG_MPC8260) */ #if defined(CONFIG_QE) -#include <asm/immap_qe.h> +#include <linux/immap_qe.h> #define CONFIG_SYS_BOOTCOUNT_ADDR (CONFIG_SYS_IMMR + 0x110000 + \ QE_MURAM_SIZE - 2 * sizeof(u32)) diff --git a/drivers/ddr/fsl/ctrl_regs.c b/drivers/ddr/fsl/ctrl_regs.c index dcf6287..04e4178 100644 --- a/drivers/ddr/fsl/ctrl_regs.c +++ b/drivers/ddr/fsl/ctrl_regs.c @@ -1857,6 +1857,9 @@ static void set_timing_cfg_8(fsl_ddr_cfg_regs_t *ddr, acttoact_bg = picos_to_mclk(common_dimm->trrdl_ps); wrtord_bg = max(4, picos_to_mclk(7500)); + if (popts->otf_burst_chop_en) + wrtord_bg += 2; + pre_all_rec = 0; ddr->timing_cfg_8 = (0 diff --git a/drivers/ddr/fsl/fsl_ddr_gen4.c b/drivers/ddr/fsl/fsl_ddr_gen4.c index 7cd878a..bfc76b3 100644 --- a/drivers/ddr/fsl/fsl_ddr_gen4.c +++ b/drivers/ddr/fsl/fsl_ddr_gen4.c @@ -8,6 +8,7 @@ #include <asm/io.h> #include <fsl_ddr_sdram.h> #include <asm/processor.h> +#include <fsl_immap.h> #include <fsl_ddr.h> #if (CONFIG_CHIP_SELECTS_PER_CTRL > 4) @@ -183,12 +184,14 @@ step2: * we choose the max, that is 500 us for all of case. */ udelay(500); - asm volatile("sync;isync"); + mb(); + isb(); /* Let the controller go */ temp_sdram_cfg = ddr_in32(&ddr->sdram_cfg) & ~SDRAM_CFG_BI; ddr_out32(&ddr->sdram_cfg, temp_sdram_cfg | SDRAM_CFG_MEM_EN); - asm volatile("sync;isync"); + mb(); + isb(); total_gb_size_per_controller = 0; for (i = 0; i < CONFIG_CHIP_SELECTS_PER_CTRL; i++) { diff --git a/drivers/misc/cros_ec_spi.c b/drivers/misc/cros_ec_spi.c index 7df709c..015333f 100644 --- a/drivers/misc/cros_ec_spi.c +++ b/drivers/misc/cros_ec_spi.c @@ -98,7 +98,7 @@ int cros_ec_spi_command(struct cros_ec_dev *dev, uint8_t cmd, int cmd_version, } out = dev->dout; - out[0] = cmd_version; + out[0] = EC_CMD_VERSION0 + cmd_version; out[1] = cmd; out[2] = (uint8_t)dout_len; memcpy(out + 3, dout, dout_len); @@ -165,7 +165,7 @@ int cros_ec_spi_decode_fdt(struct cros_ec_dev *dev, const void *blob) */ int cros_ec_spi_init(struct cros_ec_dev *dev, const void *blob) { - dev->spi = spi_setup_slave_fdt(blob, dev->parent_node, dev->node); + dev->spi = spi_setup_slave_fdt(blob, dev->node, dev->parent_node); if (!dev->spi) { debug("%s: Could not setup SPI slave\n", __func__); return -1; diff --git a/drivers/mmc/Makefile b/drivers/mmc/Makefile index 34febf5..464cee1 100644 --- a/drivers/mmc/Makefile +++ b/drivers/mmc/Makefile @@ -22,6 +22,7 @@ obj-$(CONFIG_PXA_MMC_GENERIC) += pxa_mmc_gen.o obj-$(CONFIG_SDHCI) += sdhci.o obj-$(CONFIG_BCM2835_SDHCI) += bcm2835_sdhci.o obj-$(CONFIG_KONA_SDHCI) += kona_sdhci.o +obj-$(CONFIG_S3C_SDI) += s3c_sdi.o obj-$(CONFIG_S5P_SDHCI) += s5p_sdhci.o obj-$(CONFIG_SH_MMCIF) += sh_mmcif.o obj-$(CONFIG_SPEAR_SDHCI) += spear_sdhci.o @@ -37,3 +38,4 @@ obj-$(CONFIG_SPL_MMC_BOOT) += fsl_esdhc_spl.o else obj-$(CONFIG_GENERIC_MMC) += mmc_write.o endif +obj-$(CONFIG_MVEBU_MMC) += mvebu_mmc.o diff --git a/drivers/mmc/bcm2835_sdhci.c b/drivers/mmc/bcm2835_sdhci.c index 54cfabf..82079d6 100644 --- a/drivers/mmc/bcm2835_sdhci.c +++ b/drivers/mmc/bcm2835_sdhci.c @@ -179,7 +179,7 @@ int bcm2835_sdhci_init(u32 regbase, u32 emmc_freq) host->name = "bcm2835_sdhci"; host->ioaddr = (void *)regbase; host->quirks = SDHCI_QUIRK_BROKEN_VOLTAGE | SDHCI_QUIRK_BROKEN_R1B | - SDHCI_QUIRK_WAIT_SEND_CMD; + SDHCI_QUIRK_WAIT_SEND_CMD | SDHCI_QUIRK_NO_HISPD_BIT; host->voltages = MMC_VDD_32_33 | MMC_VDD_33_34 | MMC_VDD_165_195; host->ops = &bcm2835_ops; diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c index 5bf36a0..0df30bc 100644 --- a/drivers/mmc/dw_mmc.c +++ b/drivers/mmc/dw_mmc.c @@ -245,7 +245,10 @@ static int dwmci_setup_bus(struct dwmci_host *host, u32 freq) return -EINVAL; } - div = DIV_ROUND_UP(sclk, 2 * freq); + if (sclk == freq) + div = 0; /* bypass mode */ + else + div = DIV_ROUND_UP(sclk, 2 * freq); dwmci_writel(host, DWMCI_CLKENA, 0); dwmci_writel(host, DWMCI_CLKSRC, 0); diff --git a/drivers/mmc/gen_atmel_mci.c b/drivers/mmc/gen_atmel_mci.c index a57a9b1..45bcffb 100644 --- a/drivers/mmc/gen_atmel_mci.c +++ b/drivers/mmc/gen_atmel_mci.c @@ -58,30 +58,61 @@ static void mci_set_mode(struct mmc *mmc, u32 hz, u32 blklen) atmel_mci_t *mci = mmc->priv; u32 bus_hz = get_mci_clk_rate(); u32 clkdiv = 255; + unsigned int version = atmel_mci_get_version(mci); + u32 clkodd = 0; + u32 mr; debug("mci: bus_hz is %u, setting clock %u Hz, block size %u\n", bus_hz, hz, blklen); if (hz > 0) { - /* find lowest clkdiv yielding a rate <= than requested */ - for (clkdiv=0; clkdiv<255; clkdiv++) { - if ((bus_hz / (clkdiv+1) / 2) <= hz) - break; + if (version >= 0x500) { + clkdiv = DIV_ROUND_UP(bus_hz, hz) - 2; + if (clkdiv > 511) + clkdiv = 511; + + clkodd = clkdiv & 1; + clkdiv >>= 1; + + printf("mci: setting clock %u Hz, block size %u\n", + bus_hz / (clkdiv * 2 + clkodd + 2), blklen); + } else { + /* find clkdiv yielding a rate <= than requested */ + for (clkdiv = 0; clkdiv < 255; clkdiv++) { + if ((bus_hz / (clkdiv + 1) / 2) <= hz) + break; + } + printf("mci: setting clock %u Hz, block size %u\n", + (bus_hz / (clkdiv + 1)) / 2, blklen); + } } - printf("mci: setting clock %u Hz, block size %u\n", - (bus_hz / (clkdiv+1)) / 2, blklen); blklen &= 0xfffc; - /* On some platforms RDPROOF and WRPROOF are ignored */ - writel((MMCI_BF(CLKDIV, clkdiv) - | MMCI_BF(BLKLEN, blklen) - | MMCI_BIT(RDPROOF) - | MMCI_BIT(WRPROOF)), &mci->mr); + + mr = MMCI_BF(CLKDIV, clkdiv); + + /* MCI IP version >= 0x200 has R/WPROOF */ + if (version >= 0x200) + mr |= MMCI_BIT(RDPROOF) | MMCI_BIT(WRPROOF); + /* - * On some new platforms BLKLEN in mci->mr is ignored. - * Should use the BLKLEN in the block register. + * MCI IP version >= 0x500 use bit 16 as clkodd. + * MCI IP version < 0x500 use upper 16 bits for blklen. */ - writel(MMCI_BF(BLKLEN, blklen), &mci->blkr); + if (version >= 0x500) + mr |= MMCI_BF(CLKODD, clkodd); + else + mr |= MMCI_BF(BLKLEN, blklen); + + writel(mr, &mci->mr); + + /* MCI IP version >= 0x200 has blkr */ + if (version >= 0x200) + writel(MMCI_BF(BLKLEN, blklen), &mci->blkr); + + if (mmc->card_caps & mmc->cfg->host_caps & MMC_MODE_HS) + writel(MMCI_BIT(HSMODE), &mci->cfg); + initialized = 1; } @@ -376,8 +407,10 @@ int atmel_mci_init(void *regs) /* need to be able to pass these in on a board by board basis */ cfg->voltages = MMC_VDD_32_33 | MMC_VDD_33_34; version = atmel_mci_get_version(mci); - if ((version & 0xf00) >= 0x300) + if ((version & 0xf00) >= 0x300) { cfg->host_caps = MMC_MODE_8BIT; + cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz; + } cfg->host_caps |= MMC_MODE_4BIT; diff --git a/drivers/mmc/mvebu_mmc.c b/drivers/mmc/mvebu_mmc.c new file mode 100644 index 0000000..9759198 --- /dev/null +++ b/drivers/mmc/mvebu_mmc.c @@ -0,0 +1,361 @@ +/* + * Marvell MMC/SD/SDIO driver + * + * (C) Copyright 2012 + * Marvell Semiconductor <www.marvell.com> + * Written-by: Maen Suleiman, Gerald Kerma + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <malloc.h> +#include <part.h> +#include <mmc.h> +#include <asm/io.h> +#include <asm/arch/cpu.h> +#include <asm/arch/kirkwood.h> +#include <mvebu_mmc.h> + +#define DRIVER_NAME "MVEBU_MMC" + +static void mvebu_mmc_write(u32 offs, u32 val) +{ + writel(val, CONFIG_SYS_MMC_BASE + (offs)); +} + +static u32 mvebu_mmc_read(u32 offs) +{ + return readl(CONFIG_SYS_MMC_BASE + (offs)); +} + +static int mvebu_mmc_setup_data(struct mmc_data *data) +{ + u32 ctrl_reg; + + debug("%s, data %s : blocks=%d blksz=%d\n", DRIVER_NAME, + (data->flags & MMC_DATA_READ) ? "read" : "write", + data->blocks, data->blocksize); + + /* default to maximum timeout */ + ctrl_reg = mvebu_mmc_read(SDIO_HOST_CTRL); + ctrl_reg |= SDIO_HOST_CTRL_TMOUT(SDIO_HOST_CTRL_TMOUT_MAX); + mvebu_mmc_write(SDIO_HOST_CTRL, ctrl_reg); + + if (data->flags & MMC_DATA_READ) { + mvebu_mmc_write(SDIO_SYS_ADDR_LOW, (u32)data->dest & 0xffff); + mvebu_mmc_write(SDIO_SYS_ADDR_HI, (u32)data->dest >> 16); + } else { + mvebu_mmc_write(SDIO_SYS_ADDR_LOW, (u32)data->src & 0xffff); + mvebu_mmc_write(SDIO_SYS_ADDR_HI, (u32)data->src >> 16); + } + + mvebu_mmc_write(SDIO_BLK_COUNT, data->blocks); + mvebu_mmc_write(SDIO_BLK_SIZE, data->blocksize); + + return 0; +} + +static int mvebu_mmc_send_cmd(struct mmc *mmc, struct mmc_cmd *cmd, + struct mmc_data *data) +{ + int timeout = 10; + ushort waittype = 0; + ushort resptype = 0; + ushort xfertype = 0; + ushort resp_indx = 0; + + debug("cmdidx [0x%x] resp_type[0x%x] cmdarg[0x%x]\n", + cmd->cmdidx, cmd->resp_type, cmd->cmdarg); + + udelay(10*1000); + + debug("%s: cmd %d (hw state 0x%04x)\n", DRIVER_NAME, + cmd->cmdidx, mvebu_mmc_read(SDIO_HW_STATE)); + + /* Checking if card is busy */ + while ((mvebu_mmc_read(SDIO_HW_STATE) & CARD_BUSY)) { + if (timeout == 0) { + printf("%s: card busy!\n", DRIVER_NAME); + return -1; + } + timeout--; + udelay(1000); + } + + /* Set up for a data transfer if we have one */ + if (data) { + int err = mvebu_mmc_setup_data(data); + + if (err) + return err; + } + + resptype = SDIO_CMD_INDEX(cmd->cmdidx); + + /* Analyzing resptype/xfertype/waittype for the command */ + if (cmd->resp_type & MMC_RSP_BUSY) + resptype |= SDIO_CMD_RSP_48BUSY; + else if (cmd->resp_type & MMC_RSP_136) + resptype |= SDIO_CMD_RSP_136; + else if (cmd->resp_type & MMC_RSP_PRESENT) + resptype |= SDIO_CMD_RSP_48; + else + resptype |= SDIO_CMD_RSP_NONE; + + if (cmd->resp_type & MMC_RSP_CRC) + resptype |= SDIO_CMD_CHECK_CMDCRC; + + if (cmd->resp_type & MMC_RSP_OPCODE) + resptype |= SDIO_CMD_INDX_CHECK; + + if (cmd->resp_type & MMC_RSP_PRESENT) { + resptype |= SDIO_UNEXPECTED_RESP; + waittype |= SDIO_NOR_UNEXP_RSP; + } + + if (data) { + resptype |= SDIO_CMD_DATA_PRESENT | SDIO_CMD_CHECK_DATACRC16; + xfertype |= SDIO_XFER_MODE_HW_WR_DATA_EN; + if (data->flags & MMC_DATA_READ) { + xfertype |= SDIO_XFER_MODE_TO_HOST; + waittype = SDIO_NOR_DMA_INI; + } else { + waittype |= SDIO_NOR_XFER_DONE; + } + } else { + waittype |= SDIO_NOR_CMD_DONE; + } + + /* Setting cmd arguments */ + mvebu_mmc_write(SDIO_ARG_LOW, cmd->cmdarg & 0xffff); + mvebu_mmc_write(SDIO_ARG_HI, cmd->cmdarg >> 16); + + /* Setting Xfer mode */ + mvebu_mmc_write(SDIO_XFER_MODE, xfertype); + + mvebu_mmc_write(SDIO_NOR_INTR_STATUS, ~SDIO_NOR_CARD_INT); + mvebu_mmc_write(SDIO_ERR_INTR_STATUS, SDIO_POLL_MASK); + + /* Sending command */ + mvebu_mmc_write(SDIO_CMD, resptype); + + mvebu_mmc_write(SDIO_NOR_INTR_EN, SDIO_POLL_MASK); + mvebu_mmc_write(SDIO_ERR_INTR_EN, SDIO_POLL_MASK); + + /* Waiting for completion */ + timeout = 1000000; + + while (!((mvebu_mmc_read(SDIO_NOR_INTR_STATUS)) & waittype)) { + if (mvebu_mmc_read(SDIO_NOR_INTR_STATUS) & SDIO_NOR_ERROR) { + debug("%s: error! cmdidx : %d, err reg: %04x\n", + DRIVER_NAME, cmd->cmdidx, + mvebu_mmc_read(SDIO_ERR_INTR_STATUS)); + if (mvebu_mmc_read(SDIO_ERR_INTR_STATUS) & + (SDIO_ERR_CMD_TIMEOUT | SDIO_ERR_DATA_TIMEOUT)) + return TIMEOUT; + return COMM_ERR; + } + + timeout--; + udelay(1); + if (timeout <= 0) { + printf("%s: command timed out\n", DRIVER_NAME); + return TIMEOUT; + } + } + + /* Handling response */ + if (cmd->resp_type & MMC_RSP_136) { + uint response[8]; + + for (resp_indx = 0; resp_indx < 8; resp_indx++) + response[resp_indx] + = mvebu_mmc_read(SDIO_RSP(resp_indx)); + + cmd->response[0] = ((response[0] & 0x03ff) << 22) | + ((response[1] & 0xffff) << 6) | + ((response[2] & 0xfc00) >> 10); + cmd->response[1] = ((response[2] & 0x03ff) << 22) | + ((response[3] & 0xffff) << 6) | + ((response[4] & 0xfc00) >> 10); + cmd->response[2] = ((response[4] & 0x03ff) << 22) | + ((response[5] & 0xffff) << 6) | + ((response[6] & 0xfc00) >> 10); + cmd->response[3] = ((response[6] & 0x03ff) << 22) | + ((response[7] & 0x3fff) << 8); + } else if (cmd->resp_type & MMC_RSP_PRESENT) { + uint response[3]; + + for (resp_indx = 0; resp_indx < 3; resp_indx++) + response[resp_indx] + = mvebu_mmc_read(SDIO_RSP(resp_indx)); + + cmd->response[0] = ((response[2] & 0x003f) << (8 - 8)) | + ((response[1] & 0xffff) << (14 - 8)) | + ((response[0] & 0x03ff) << (30 - 8)); + cmd->response[1] = ((response[0] & 0xfc00) >> 10); + cmd->response[2] = 0; + cmd->response[3] = 0; + } + + debug("%s: resp[0x%x] ", DRIVER_NAME, cmd->resp_type); + debug("[0x%x] ", cmd->response[0]); + debug("[0x%x] ", cmd->response[1]); + debug("[0x%x] ", cmd->response[2]); + debug("[0x%x] ", cmd->response[3]); + debug("\n"); + + return 0; +} + +static void mvebu_mmc_power_up(void) +{ + debug("%s: power up\n", DRIVER_NAME); + + /* disable interrupts */ + mvebu_mmc_write(SDIO_NOR_INTR_EN, 0); + mvebu_mmc_write(SDIO_ERR_INTR_EN, 0); + + /* SW reset */ + mvebu_mmc_write(SDIO_SW_RESET, SDIO_SW_RESET_NOW); + + mvebu_mmc_write(SDIO_XFER_MODE, 0); + + /* enable status */ + mvebu_mmc_write(SDIO_NOR_STATUS_EN, SDIO_POLL_MASK); + mvebu_mmc_write(SDIO_ERR_STATUS_EN, SDIO_POLL_MASK); + + /* enable interrupts status */ + mvebu_mmc_write(SDIO_NOR_INTR_STATUS, SDIO_POLL_MASK); + mvebu_mmc_write(SDIO_ERR_INTR_STATUS, SDIO_POLL_MASK); +} + +static void mvebu_mmc_set_clk(unsigned int clock) +{ + unsigned int m; + + if (clock == 0) { + debug("%s: clock off\n", DRIVER_NAME); + mvebu_mmc_write(SDIO_XFER_MODE, SDIO_XFER_MODE_STOP_CLK); + mvebu_mmc_write(SDIO_CLK_DIV, MVEBU_MMC_BASE_DIV_MAX); + } else { + m = MVEBU_MMC_BASE_FAST_CLOCK/(2*clock) - 1; + if (m > MVEBU_MMC_BASE_DIV_MAX) + m = MVEBU_MMC_BASE_DIV_MAX; + mvebu_mmc_write(SDIO_CLK_DIV, m & MVEBU_MMC_BASE_DIV_MAX); + } + + udelay(10*1000); +} + +static void mvebu_mmc_set_bus(unsigned int bus) +{ + u32 ctrl_reg = 0; + + ctrl_reg = mvebu_mmc_read(SDIO_HOST_CTRL); + ctrl_reg &= ~SDIO_HOST_CTRL_DATA_WIDTH_4_BITS; + + switch (bus) { + case 4: + ctrl_reg |= SDIO_HOST_CTRL_DATA_WIDTH_4_BITS; + break; + case 1: + default: + ctrl_reg |= SDIO_HOST_CTRL_DATA_WIDTH_1_BIT; + } + + /* default transfer mode */ + ctrl_reg |= SDIO_HOST_CTRL_BIG_ENDIAN; + ctrl_reg &= ~SDIO_HOST_CTRL_LSB_FIRST; + + /* default to maximum timeout */ + ctrl_reg |= SDIO_HOST_CTRL_TMOUT(SDIO_HOST_CTRL_TMOUT_MAX); + + ctrl_reg |= SDIO_HOST_CTRL_PUSH_PULL_EN; + + ctrl_reg |= SDIO_HOST_CTRL_CARD_TYPE_MEM_ONLY; + + debug("%s: ctrl 0x%04x: %s %s %s\n", DRIVER_NAME, ctrl_reg, + (ctrl_reg & SDIO_HOST_CTRL_PUSH_PULL_EN) ? + "push-pull" : "open-drain", + (ctrl_reg & SDIO_HOST_CTRL_DATA_WIDTH_4_BITS) ? + "4bit-width" : "1bit-width", + (ctrl_reg & SDIO_HOST_CTRL_HI_SPEED_EN) ? + "high-speed" : ""); + + mvebu_mmc_write(SDIO_HOST_CTRL, ctrl_reg); + udelay(10*1000); +} + +static void mvebu_mmc_set_ios(struct mmc *mmc) +{ + debug("%s: bus[%d] clock[%d]\n", DRIVER_NAME, + mmc->bus_width, mmc->clock); + mvebu_mmc_set_bus(mmc->bus_width); + mvebu_mmc_set_clk(mmc->clock); +} + +static int mvebu_mmc_initialize(struct mmc *mmc) +{ + debug("%s: mvebu_mmc_initialize", DRIVER_NAME); + + /* + * Setting host parameters + * Initial Host Ctrl : Timeout : max , Normal Speed mode, + * 4-bit data mode, Big Endian, SD memory Card, Push_pull CMD Line + */ + mvebu_mmc_write(SDIO_HOST_CTRL, + SDIO_HOST_CTRL_TMOUT(SDIO_HOST_CTRL_TMOUT_MAX) | + SDIO_HOST_CTRL_DATA_WIDTH_4_BITS | + SDIO_HOST_CTRL_BIG_ENDIAN | + SDIO_HOST_CTRL_PUSH_PULL_EN | + SDIO_HOST_CTRL_CARD_TYPE_MEM_ONLY); + + mvebu_mmc_write(SDIO_CLK_CTRL, 0); + + /* enable status */ + mvebu_mmc_write(SDIO_NOR_STATUS_EN, SDIO_POLL_MASK); + mvebu_mmc_write(SDIO_ERR_STATUS_EN, SDIO_POLL_MASK); + + /* disable interrupts */ + mvebu_mmc_write(SDIO_NOR_INTR_EN, 0); + mvebu_mmc_write(SDIO_ERR_INTR_EN, 0); + + /* SW reset */ + mvebu_mmc_write(SDIO_SW_RESET, SDIO_SW_RESET_NOW); + + udelay(10*1000); + + return 0; +} + +static const struct mmc_ops mvebu_mmc_ops = { + .send_cmd = mvebu_mmc_send_cmd, + .set_ios = mvebu_mmc_set_ios, + .init = mvebu_mmc_initialize, +}; + +static struct mmc_config mvebu_mmc_cfg = { + .name = DRIVER_NAME, + .ops = &mvebu_mmc_ops, + .f_min = MVEBU_MMC_BASE_FAST_CLOCK / MVEBU_MMC_BASE_DIV_MAX, + .f_max = MVEBU_MMC_CLOCKRATE_MAX, + .voltages = MMC_VDD_32_33 | MMC_VDD_33_34, + .host_caps = MMC_MODE_4BIT | MMC_MODE_HS, + .part_type = PART_TYPE_DOS, + .b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT, +}; + +int mvebu_mmc_init(bd_t *bis) +{ + struct mmc *mmc; + + mvebu_mmc_power_up(); + + mmc = mmc_create(&mvebu_mmc_cfg, bis); + if (mmc == NULL) + return -1; + + return 0; +} diff --git a/drivers/mmc/s3c_sdi.c b/drivers/mmc/s3c_sdi.c new file mode 100644 index 0000000..1b5b705 --- /dev/null +++ b/drivers/mmc/s3c_sdi.c @@ -0,0 +1,321 @@ +/* + * S3C24xx SD/MMC driver + * + * Based on OpenMoko S3C24xx driver by Harald Welte <laforge@openmoko.org> + * + * Copyright (C) 2014 Marek Vasut <marex@denx.de> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <malloc.h> +#include <mmc.h> +#include <errno.h> +#include <asm/arch/s3c24x0_cpu.h> +#include <asm/io.h> +#include <asm/unaligned.h> + +#define S3C2440_SDICON_SDRESET (1 << 8) +#define S3C2410_SDICON_FIFORESET (1 << 1) +#define S3C2410_SDICON_CLOCKTYPE (1 << 0) + +#define S3C2410_SDICMDCON_LONGRSP (1 << 10) +#define S3C2410_SDICMDCON_WAITRSP (1 << 9) +#define S3C2410_SDICMDCON_CMDSTART (1 << 8) +#define S3C2410_SDICMDCON_SENDERHOST (1 << 6) +#define S3C2410_SDICMDCON_INDEX 0x3f + +#define S3C2410_SDICMDSTAT_CRCFAIL (1 << 12) +#define S3C2410_SDICMDSTAT_CMDSENT (1 << 11) +#define S3C2410_SDICMDSTAT_CMDTIMEOUT (1 << 10) +#define S3C2410_SDICMDSTAT_RSPFIN (1 << 9) + +#define S3C2440_SDIDCON_DS_WORD (2 << 22) +#define S3C2410_SDIDCON_TXAFTERRESP (1 << 20) +#define S3C2410_SDIDCON_RXAFTERCMD (1 << 19) +#define S3C2410_SDIDCON_BLOCKMODE (1 << 17) +#define S3C2410_SDIDCON_WIDEBUS (1 << 16) +#define S3C2440_SDIDCON_DATSTART (1 << 14) +#define S3C2410_SDIDCON_XFER_RXSTART (2 << 12) +#define S3C2410_SDIDCON_XFER_TXSTART (3 << 12) +#define S3C2410_SDIDCON_BLKNUM 0x7ff + +#define S3C2410_SDIDSTA_FIFOFAIL (1 << 8) +#define S3C2410_SDIDSTA_CRCFAIL (1 << 7) +#define S3C2410_SDIDSTA_RXCRCFAIL (1 << 6) +#define S3C2410_SDIDSTA_DATATIMEOUT (1 << 5) +#define S3C2410_SDIDSTA_XFERFINISH (1 << 4) + +#define S3C2410_SDIFSTA_TFHALF (1 << 11) +#define S3C2410_SDIFSTA_COUNTMASK 0x7f + +/* + * WARNING: We only support one SD IP block. + * NOTE: It's not likely there will ever exist an S3C24xx with two, + * at least not in this universe all right. + */ +static int wide_bus; + +static int +s3cmmc_send_cmd(struct mmc *mmc, struct mmc_cmd *cmd, struct mmc_data *data) +{ + struct s3c24x0_sdi *sdi_regs = s3c24x0_get_base_sdi(); + uint32_t sdiccon, sdicsta, sdidcon, sdidsta, sdidat, sdifsta; + uint32_t sdicsta_wait_bit = S3C2410_SDICMDSTAT_CMDSENT; + unsigned int timeout = 100000; + int ret = 0, xfer_len, data_offset = 0; + const uint32_t sdidsta_err_mask = S3C2410_SDIDSTA_FIFOFAIL | + S3C2410_SDIDSTA_CRCFAIL | S3C2410_SDIDSTA_RXCRCFAIL | + S3C2410_SDIDSTA_DATATIMEOUT; + + + writel(0xffffffff, &sdi_regs->sdicsta); + writel(0xffffffff, &sdi_regs->sdidsta); + writel(0xffffffff, &sdi_regs->sdifsta); + + /* Set up data transfer (if applicable). */ + if (data) { + writel(data->blocksize, &sdi_regs->sdibsize); + + sdidcon = data->blocks & S3C2410_SDIDCON_BLKNUM; + sdidcon |= S3C2410_SDIDCON_BLOCKMODE; +#if defined(CONFIG_S3C2440) + sdidcon |= S3C2440_SDIDCON_DS_WORD | S3C2440_SDIDCON_DATSTART; +#endif + if (wide_bus) + sdidcon |= S3C2410_SDIDCON_WIDEBUS; + + if (data->flags & MMC_DATA_READ) { + sdidcon |= S3C2410_SDIDCON_RXAFTERCMD; + sdidcon |= S3C2410_SDIDCON_XFER_RXSTART; + } else { + sdidcon |= S3C2410_SDIDCON_TXAFTERRESP; + sdidcon |= S3C2410_SDIDCON_XFER_TXSTART; + } + + writel(sdidcon, &sdi_regs->sdidcon); + } + + /* Write CMD arg. */ + writel(cmd->cmdarg, &sdi_regs->sdicarg); + + /* Write CMD index. */ + sdiccon = cmd->cmdidx & S3C2410_SDICMDCON_INDEX; + sdiccon |= S3C2410_SDICMDCON_SENDERHOST; + sdiccon |= S3C2410_SDICMDCON_CMDSTART; + + /* Command with short response. */ + if (cmd->resp_type & MMC_RSP_PRESENT) { + sdiccon |= S3C2410_SDICMDCON_WAITRSP; + sdicsta_wait_bit = S3C2410_SDICMDSTAT_RSPFIN; + } + + /* Command with long response. */ + if (cmd->resp_type & MMC_RSP_136) + sdiccon |= S3C2410_SDICMDCON_LONGRSP; + + /* Start the command. */ + writel(sdiccon, &sdi_regs->sdiccon); + + /* Wait for the command to complete or for response. */ + for (timeout = 100000; timeout; timeout--) { + sdicsta = readl(&sdi_regs->sdicsta); + if (sdicsta & sdicsta_wait_bit) + break; + + if (sdicsta & S3C2410_SDICMDSTAT_CMDTIMEOUT) + timeout = 1; + } + + /* Clean the status bits. */ + setbits_le32(&sdi_regs->sdicsta, 0xf << 9); + + if (!timeout) { + puts("S3C SDI: Command timed out!\n"); + ret = TIMEOUT; + goto error; + } + + /* Read out the response. */ + if (cmd->resp_type & MMC_RSP_136) { + cmd->response[0] = readl(&sdi_regs->sdirsp0); + cmd->response[1] = readl(&sdi_regs->sdirsp1); + cmd->response[2] = readl(&sdi_regs->sdirsp2); + cmd->response[3] = readl(&sdi_regs->sdirsp3); + } else { + cmd->response[0] = readl(&sdi_regs->sdirsp0); + } + + /* If there are no data, we're done. */ + if (!data) + return 0; + + xfer_len = data->blocksize * data->blocks; + + while (xfer_len > 0) { + sdidsta = readl(&sdi_regs->sdidsta); + sdifsta = readl(&sdi_regs->sdifsta); + + if (sdidsta & sdidsta_err_mask) { + printf("S3C SDI: Data error (sdta=0x%08x)\n", sdidsta); + ret = -EIO; + goto error; + } + + if (data->flags & MMC_DATA_READ) { + if ((sdifsta & S3C2410_SDIFSTA_COUNTMASK) < 4) + continue; + sdidat = readl(&sdi_regs->sdidat); + put_unaligned_le32(sdidat, data->dest + data_offset); + } else { /* Write */ + /* TX FIFO half full. */ + if (!(sdifsta & S3C2410_SDIFSTA_TFHALF)) + continue; + + /* TX FIFO is below 32b full, write. */ + sdidat = get_unaligned_le32(data->src + data_offset); + writel(sdidat, &sdi_regs->sdidat); + } + data_offset += 4; + xfer_len -= 4; + } + + /* Wait for the command to complete or for response. */ + for (timeout = 100000; timeout; timeout--) { + sdidsta = readl(&sdi_regs->sdidsta); + if (sdidsta & S3C2410_SDIDSTA_XFERFINISH) + break; + + if (sdidsta & S3C2410_SDIDSTA_DATATIMEOUT) + timeout = 1; + } + + /* Clear status bits. */ + writel(0x6f8, &sdi_regs->sdidsta); + + if (!timeout) { + puts("S3C SDI: Command timed out!\n"); + ret = TIMEOUT; + goto error; + } + + writel(0, &sdi_regs->sdidcon); + + return 0; +error: + return ret; +} + +static void s3cmmc_set_ios(struct mmc *mmc) +{ + struct s3c24x0_sdi *sdi_regs = s3c24x0_get_base_sdi(); + uint32_t divider = 0; + + wide_bus = (mmc->bus_width == 4); + + if (!mmc->clock) + return; + + divider = DIV_ROUND_UP(get_PCLK(), mmc->clock); + if (divider) + divider--; + + writel(divider, &sdi_regs->sdipre); + mdelay(125); +} + +static int s3cmmc_init(struct mmc *mmc) +{ + struct s3c24x0_clock_power *clk_power = s3c24x0_get_base_clock_power(); + struct s3c24x0_sdi *sdi_regs = s3c24x0_get_base_sdi(); + + /* Start the clock. */ + setbits_le32(&clk_power->clkcon, 1 << 9); + +#if defined(CONFIG_S3C2440) + writel(S3C2440_SDICON_SDRESET, &sdi_regs->sdicon); + mdelay(10); + writel(0x7fffff, &sdi_regs->sdidtimer); +#else + writel(0xffff, &sdi_regs->sdidtimer); +#endif + writel(MMC_MAX_BLOCK_LEN, &sdi_regs->sdibsize); + writel(0x0, &sdi_regs->sdiimsk); + + writel(S3C2410_SDICON_FIFORESET | S3C2410_SDICON_CLOCKTYPE, + &sdi_regs->sdicon); + + mdelay(125); + + return 0; +} + +struct s3cmmc_priv { + struct mmc_config cfg; + int (*getcd)(struct mmc *); + int (*getwp)(struct mmc *); +}; + +static int s3cmmc_getcd(struct mmc *mmc) +{ + struct s3cmmc_priv *priv = mmc->priv; + if (priv->getcd) + return priv->getcd(mmc); + else + return 0; +} + +static int s3cmmc_getwp(struct mmc *mmc) +{ + struct s3cmmc_priv *priv = mmc->priv; + if (priv->getwp) + return priv->getwp(mmc); + else + return 0; +} + +static const struct mmc_ops s3cmmc_ops = { + .send_cmd = s3cmmc_send_cmd, + .set_ios = s3cmmc_set_ios, + .init = s3cmmc_init, + .getcd = s3cmmc_getcd, + .getwp = s3cmmc_getwp, +}; + +int s3cmmc_initialize(bd_t *bis, int (*getcd)(struct mmc *), + int (*getwp)(struct mmc *)) +{ + struct s3cmmc_priv *priv; + struct mmc *mmc; + struct mmc_config *cfg; + + priv = calloc(1, sizeof(*priv)); + if (!priv) + return -ENOMEM; + cfg = &priv->cfg; + + cfg->name = "S3C MMC"; + cfg->ops = &s3cmmc_ops; + cfg->voltages = MMC_VDD_32_33 | MMC_VDD_33_34; + cfg->host_caps = MMC_MODE_4BIT | MMC_MODE_HC | MMC_MODE_HS; + cfg->f_min = 400000; + cfg->f_max = get_PCLK() / 2; + cfg->b_max = 0x80; + +#if defined(CONFIG_S3C2410) + /* + * S3C2410 has some bug that prevents reliable + * operation at higher speed + */ + cfg->f_max /= 2; +#endif + + mmc = mmc_create(cfg, priv); + if (!mmc) { + free(priv); + return -ENOMEM; + } + + return 0; +} diff --git a/drivers/mtd/nand/fsl_ifc_nand.c b/drivers/mtd/nand/fsl_ifc_nand.c index be5a16a..8b453cb 100644 --- a/drivers/mtd/nand/fsl_ifc_nand.c +++ b/drivers/mtd/nand/fsl_ifc_nand.c @@ -19,8 +19,11 @@ #include <asm/errno.h> #include <fsl_ifc.h> -#define FSL_IFC_V1_1_0 0x01010000 -#define MAX_BANKS 4 +#ifndef CONFIG_SYS_FSL_IFC_BANK_COUNT +#define CONFIG_SYS_FSL_IFC_BANK_COUNT 4 +#endif + +#define MAX_BANKS CONFIG_SYS_FSL_IFC_BANK_COUNT #define ERR_BYTE 0xFF /* Value returned for read bytes when read failed */ #define IFC_TIMEOUT_MSECS 10 /* Maximum number of mSecs to wait for IFC @@ -802,12 +805,30 @@ static void fsl_ifc_select_chip(struct mtd_info *mtd, int chip) { } -static void fsl_ifc_sram_init(void) +static int fsl_ifc_sram_init(uint32_t ver) { struct fsl_ifc *ifc = ifc_ctrl->regs; uint32_t cs = 0, csor = 0, csor_8k = 0, csor_ext = 0; + uint32_t ncfgr = 0; long long end_tick; + if (ver > FSL_IFC_V1_1_0) { + ncfgr = ifc_in32(&ifc->ifc_nand.ncfgr); + ifc_out32(&ifc->ifc_nand.ncfgr, ncfgr | IFC_NAND_SRAM_INIT_EN); + + /* wait for SRAM_INIT bit to be clear or timeout */ + end_tick = usec2ticks(IFC_TIMEOUT_MSECS * 1000) + get_ticks(); + while (end_tick > get_ticks()) { + ifc_ctrl->status = + ifc_in32(&ifc->ifc_nand.nand_evter_stat); + + if (!(ifc_ctrl->status & IFC_NAND_SRAM_INIT_EN)) + return 0; + } + printf("fsl-ifc: Failed to Initialise SRAM\n"); + return 1; + } + cs = ifc_ctrl->cs_nand >> IFC_NAND_CSEL_SHIFT; /* Save CSOR and CSOR_ext */ @@ -850,11 +871,18 @@ static void fsl_ifc_sram_init(void) break; } + if (ifc_ctrl->status != IFC_NAND_EVTER_STAT_OPC) { + printf("fsl-ifc: Failed to Initialise SRAM\n"); + return 1; + } + ifc_out32(&ifc->ifc_nand.nand_evter_stat, ifc_ctrl->status); /* Restore CSOR and CSOR_ext */ ifc_out32(&ifc_ctrl->regs->csor_cs[cs].csor, csor); ifc_out32(&ifc_ctrl->regs->csor_cs[cs].csor_ext, csor_ext); + + return 0; } static int fsl_ifc_chip_init(int devnum, u8 *addr) @@ -864,7 +892,7 @@ static int fsl_ifc_chip_init(int devnum, u8 *addr) struct fsl_ifc_mtd *priv; struct nand_ecclayout *layout; uint32_t cspr = 0, csor = 0, ver = 0; - int ret; + int ret = 0; if (!ifc_ctrl) { fsl_ifc_ctrl_init(); @@ -1006,8 +1034,13 @@ static int fsl_ifc_chip_init(int devnum, u8 *addr) } ver = ifc_in32(&ifc_ctrl->regs->ifc_rev); - if (ver == FSL_IFC_V1_1_0) - fsl_ifc_sram_init(); + if (ver >= FSL_IFC_V1_1_0) + ret = fsl_ifc_sram_init(ver); + if (ret) + return ret; + + if (ver >= FSL_IFC_V2_0_0) + priv->bufnum_mask = (priv->bufnum_mask * 2) + 1; ret = nand_scan_ident(mtd, 1, NULL); if (ret) diff --git a/drivers/mtd/nand/fsl_ifc_spl.c b/drivers/mtd/nand/fsl_ifc_spl.c index 5100772..e336cb1 100644 --- a/drivers/mtd/nand/fsl_ifc_spl.c +++ b/drivers/mtd/nand/fsl_ifc_spl.c @@ -97,7 +97,7 @@ int nand_spl_load_image(uint32_t offs, unsigned int uboot_size, void *vdst) int pages_per_blk; int blk_size; int bad_marker = 0; - int bufnum_mask, bufnum; + int bufnum_mask, bufnum, ver = 0; int csor, cspr; int pos = 0; @@ -130,6 +130,10 @@ int nand_spl_load_image(uint32_t offs, unsigned int uboot_size, void *vdst) bad_marker = 5; } + ver = ifc_in32(&ifc->ifc_rev); + if (ver >= FSL_IFC_V2_0_0) + bufnum_mask = (bufnum_mask * 2) + 1; + pages_per_blk = 32 << ((csor & CSOR_NAND_PB_MASK) >> CSOR_NAND_PB_SHIFT); diff --git a/drivers/mtd/spi/sf_ops.c b/drivers/mtd/spi/sf_ops.c index ef91b92..85cf22d 100644 --- a/drivers/mtd/spi/sf_ops.c +++ b/drivers/mtd/spi/sf_ops.c @@ -421,6 +421,7 @@ int spi_flash_cmd_read_ops(struct spi_flash *flash, u32 offset, data += read_len; } + free(cmd); return ret; } diff --git a/drivers/net/fm/fm.h b/drivers/net/fm/fm.h index 43de114..316e06e 100644 --- a/drivers/net/fm/fm.h +++ b/drivers/net/fm/fm.h @@ -143,6 +143,7 @@ struct fm_eth { #define MAX_RXBUF_LOG2 11 #define MAX_RXBUF_LEN (1 << MAX_RXBUF_LOG2) -#define PORT_IS_ENABLED(port) fm_info[fm_port_to_index(port)].enabled +#define PORT_IS_ENABLED(port) (fm_port_to_index(port) == -1 ? \ + 0 : fm_info[fm_port_to_index(port)].enabled) #endif /* __FM_H__ */ diff --git a/drivers/net/fm/init.c b/drivers/net/fm/init.c index cd787f4..ff04695 100644 --- a/drivers/net/fm/init.c +++ b/drivers/net/fm/init.c @@ -147,6 +147,9 @@ void fm_disable_port(enum fm_port port) { int i = fm_port_to_index(port); + if (i == -1) + return; + fm_info[i].enabled = 0; fman_disable_port(port); } @@ -155,6 +158,9 @@ void fm_enable_port(enum fm_port port) { int i = fm_port_to_index(port); + if (i == -1) + return; + fm_info[i].enabled = 1; fman_enable_port(port); } diff --git a/drivers/net/fm/memac_phy.c b/drivers/net/fm/memac_phy.c index de9c0e9..5f910c2 100644 --- a/drivers/net/fm/memac_phy.c +++ b/drivers/net/fm/memac_phy.c @@ -1,6 +1,6 @@ /* * Copyright 2012 Freescale Semiconductor, Inc. - * Andy Fleming <afleming@freescale.com> + * Andy Fleming <afleming@gmail.com> * Roy Zang <tie-fei.zang@freescale.com> * * SPDX-License-Identifier: GPL-2.0+ diff --git a/drivers/net/fm/tgec_phy.c b/drivers/net/fm/tgec_phy.c index faec317..095f00c 100644 --- a/drivers/net/fm/tgec_phy.c +++ b/drivers/net/fm/tgec_phy.c @@ -1,6 +1,6 @@ /* * Copyright 2009-2011 Freescale Semiconductor, Inc. - * Andy Fleming <afleming@freescale.com> + * Andy Fleming <afleming@gmail.com> * * SPDX-License-Identifier: GPL-2.0+ * Some part is taken from tsec.c diff --git a/drivers/pci/fsl_pci_init.c b/drivers/pci/fsl_pci_init.c index 3a41b0e..231b075 100644 --- a/drivers/pci/fsl_pci_init.c +++ b/drivers/pci/fsl_pci_init.c @@ -504,8 +504,14 @@ void fsl_pci_init(struct pci_controller *hose, struct fsl_pci_info *pci_info) } #endif if (!enabled) { - /* Let the user know there's no PCIe link */ - printf("no link, regs @ 0x%lx\n", pci_info->regs); + /* Let the user know there's no PCIe link for root + * complex. for endpoint, the link may not setup, so + * print undetermined. + */ + if (fsl_is_pci_agent(hose)) + printf("undetermined, regs @ 0x%lx\n", pci_info->regs); + else + printf("no link, regs @ 0x%lx\n", pci_info->regs); hose->last_busno = hose->first_busno; return; } diff --git a/drivers/qe/qe.c b/drivers/qe/qe.c index 9c5fbd1..be09a17 100644 --- a/drivers/qe/qe.c +++ b/drivers/qe/qe.c @@ -11,7 +11,7 @@ #include <command.h> #include "asm/errno.h" #include "asm/io.h" -#include "asm/immap_qe.h" +#include "linux/immap_qe.h" #include "qe.h" #define MPC85xx_DEVDISR_QE_DISABLE 0x1 diff --git a/drivers/qe/uccf.c b/drivers/qe/uccf.c index 593d96d..85386bf 100644 --- a/drivers/qe/uccf.c +++ b/drivers/qe/uccf.c @@ -11,7 +11,7 @@ #include "malloc.h" #include "asm/errno.h" #include "asm/io.h" -#include "asm/immap_qe.h" +#include "linux/immap_qe.h" #include "qe.h" #include "uccf.h" diff --git a/drivers/qe/uccf.h b/drivers/qe/uccf.h index 0b57e2f..55941e4 100644 --- a/drivers/qe/uccf.h +++ b/drivers/qe/uccf.h @@ -12,7 +12,7 @@ #include "common.h" #include "qe.h" -#include "asm/immap_qe.h" +#include "linux/immap_qe.h" /* Fast or Giga ethernet */ diff --git a/drivers/qe/uec.c b/drivers/qe/uec.c index 6804573..c91f084 100644 --- a/drivers/qe/uec.c +++ b/drivers/qe/uec.c @@ -11,7 +11,7 @@ #include "malloc.h" #include "asm/errno.h" #include "asm/io.h" -#include "asm/immap_qe.h" +#include "linux/immap_qe.h" #include "qe.h" #include "uccf.h" #include "uec.h" diff --git a/drivers/qe/uec_phy.c b/drivers/qe/uec_phy.c index 5dc4641..e701787 100644 --- a/drivers/qe/uec_phy.c +++ b/drivers/qe/uec_phy.c @@ -14,7 +14,7 @@ #include "net.h" #include "malloc.h" #include "asm/errno.h" -#include "asm/immap_qe.h" +#include "linux/immap_qe.h" #include "asm/io.h" #include "qe.h" #include "uccf.h" diff --git a/drivers/spi/exynos_spi.c b/drivers/spi/exynos_spi.c index c92276f..2969184 100644 --- a/drivers/spi/exynos_spi.c +++ b/drivers/spi/exynos_spi.c @@ -428,10 +428,6 @@ void spi_cs_activate(struct spi_slave *slave) clrbits_le32(&spi_slave->regs->cs_reg, SPI_SLAVE_SIG_INACT); debug("Activate CS, bus %d\n", spi_slave->slave.bus); spi_slave->skip_preamble = spi_slave->mode & SPI_PREAMBLE; - - /* Remember time of this transaction so we can honour the bus delay */ - if (spi_slave->bus->deactivate_delay_us) - spi_slave->last_transaction_us = timer_get_us(); } /** @@ -445,6 +441,11 @@ void spi_cs_deactivate(struct spi_slave *slave) struct exynos_spi_slave *spi_slave = to_exynos_spi(slave); setbits_le32(&spi_slave->regs->cs_reg, SPI_SLAVE_SIG_INACT); + + /* Remember time of this transaction so we can honour the bus delay */ + if (spi_slave->bus->deactivate_delay_us) + spi_slave->last_transaction_us = timer_get_us(); + debug("Deactivate CS, bus %d\n", spi_slave->slave.bus); } diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c index f3f029d..2d5f385 100644 --- a/drivers/spi/mxc_spi.c +++ b/drivers/spi/mxc_spi.c @@ -30,6 +30,10 @@ static unsigned long spi_bases[] = { #define reg_read readl #define reg_write(a, v) writel(v, a) +#if !defined(CONFIG_SYS_SPI_MXC_WAIT) +#define CONFIG_SYS_SPI_MXC_WAIT (CONFIG_SYS_HZ/100) /* 10 ms */ +#endif + struct mxc_spi_slave { struct spi_slave slave; unsigned long base; @@ -212,6 +216,8 @@ int spi_xchg_single(struct spi_slave *slave, unsigned int bitlen, int nbytes = DIV_ROUND_UP(bitlen, 8); u32 data, cnt, i; struct cspi_regs *regs = (struct cspi_regs *)mxcs->base; + u32 ts; + int status; debug("%s: bitlen %d dout 0x%x din 0x%x\n", __func__, bitlen, (u32)dout, (u32)din); @@ -272,9 +278,16 @@ int spi_xchg_single(struct spi_slave *slave, unsigned int bitlen, reg_write(®s->ctrl, mxcs->ctrl_reg | MXC_CSPICTRL_EN | MXC_CSPICTRL_XCH); + ts = get_timer(0); + status = reg_read(®s->stat); /* Wait until the TC (Transfer completed) bit is set */ - while ((reg_read(®s->stat) & MXC_CSPICTRL_TC) == 0) - ; + while ((status & MXC_CSPICTRL_TC) == 0) { + if (get_timer(ts) > CONFIG_SYS_SPI_MXC_WAIT) { + printf("spi_xchg_single: Timeout!\n"); + return -1; + } + status = reg_read(®s->stat); + } /* Transfer completed, clear any pending request */ reg_write(®s->stat, MXC_CSPICTRL_TC | MXC_CSPICTRL_RXOVF); diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 7ddea9b..7d81fbd 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -53,6 +53,8 @@ struct spi_slave *spi_base_setup_slave_fdt(const void *blob, int busnum, mode |= SPI_CPHA; if (fdtdec_get_bool(blob, node, "spi-cs-high")) mode |= SPI_CS_HIGH; + if (fdtdec_get_bool(blob, node, "spi-half-duplex")) + mode |= SPI_PREAMBLE; return spi_setup_slave(busnum, cs, max_hz, mode); } #endif diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile index 04c1a64..c4f5157 100644 --- a/drivers/usb/host/Makefile +++ b/drivers/usb/host/Makefile @@ -35,6 +35,7 @@ obj-$(CONFIG_USB_EHCI_PPC4XX) += ehci-ppc4xx.o obj-$(CONFIG_USB_EHCI_MARVELL) += ehci-marvell.o obj-$(CONFIG_USB_EHCI_PCI) += ehci-pci.o obj-$(CONFIG_USB_EHCI_SPEAR) += ehci-spear.o +obj-$(CONFIG_USB_EHCI_SUNXI) += ehci-sunxi.o obj-$(CONFIG_USB_EHCI_TEGRA) += ehci-tegra.o obj-$(CONFIG_USB_EHCI_VCT) += ehci-vct.o obj-$(CONFIG_USB_EHCI_RMOBILE) += ehci-rmobile.o diff --git a/drivers/usb/host/ehci-sunxi.c b/drivers/usb/host/ehci-sunxi.c new file mode 100644 index 0000000..23617b7 --- /dev/null +++ b/drivers/usb/host/ehci-sunxi.c @@ -0,0 +1,201 @@ +/* + * Copyright (C) 2014 Roman Byshko + * + * Roman Byshko <rbyshko@gmail.com> + * + * Based on code from + * Allwinner Technology Co., Ltd. <www.allwinnertech.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <asm/arch/clock.h> +#include <asm/gpio.h> +#include <asm/io.h> +#include <common.h> +#include "ehci.h" + +#define SUNXI_USB1_IO_BASE 0x01c14000 +#define SUNXI_USB2_IO_BASE 0x01c1c000 + +#define SUNXI_USB_PMU_IRQ_ENABLE 0x800 +#define SUNXI_USB_CSR 0x01c13404 +#define SUNXI_USB_PASSBY_EN 1 + +#define SUNXI_EHCI_AHB_ICHR8_EN (1 << 10) +#define SUNXI_EHCI_AHB_INCR4_BURST_EN (1 << 9) +#define SUNXI_EHCI_AHB_INCRX_ALIGN_EN (1 << 8) +#define SUNXI_EHCI_ULPI_BYPASS_EN (1 << 0) + +static struct sunxi_ehci_hcd { + struct usb_hcd *hcd; + int usb_rst_mask; + int ahb_clk_mask; + int gpio_vbus; + void *csr; + int irq; + int id; +} sunxi_echi_hcd[] = { + { + .usb_rst_mask = CCM_USB_CTRL_PHY1_RST, + .ahb_clk_mask = 1 << AHB_GATE_OFFSET_USB_EHCI0, + .gpio_vbus = CONFIG_SUNXI_USB_VBUS0_GPIO, + .csr = (void *)SUNXI_USB_CSR, + .irq = 39, + .id = 1, + }, +#if (CONFIG_USB_MAX_CONTROLLER_COUNT > 1) + { + .usb_rst_mask = CCM_USB_CTRL_PHY2_RST, + .ahb_clk_mask = 1 << AHB_GATE_OFFSET_USB_EHCI1, + .gpio_vbus = CONFIG_SUNXI_USB_VBUS1_GPIO, + .csr = (void *)SUNXI_USB_CSR, + .irq = 40, + .id = 2, + } +#endif +}; + +static int enabled_hcd_count; + +static void *get_io_base(int hcd_id) +{ + if (hcd_id == 1) + return (void *)SUNXI_USB1_IO_BASE; + else if (hcd_id == 2) + return (void *)SUNXI_USB2_IO_BASE; + else + return NULL; +} + +static void usb_phy_write(struct sunxi_ehci_hcd *sunxi_ehci, int addr, + int data, int len) +{ + int j = 0, usbc_bit = 0; + void *dest = sunxi_ehci->csr; + + usbc_bit = 1 << (sunxi_ehci->id * 2); + for (j = 0; j < len; j++) { + /* set the bit address to be written */ + clrbits_le32(dest, 0xff << 8); + setbits_le32(dest, (addr + j) << 8); + + clrbits_le32(dest, usbc_bit); + /* set data bit */ + if (data & 0x1) + setbits_le32(dest, 1 << 7); + else + clrbits_le32(dest, 1 << 7); + + setbits_le32(dest, usbc_bit); + + clrbits_le32(dest, usbc_bit); + + data >>= 1; + } +} + +static void sunxi_usb_phy_init(struct sunxi_ehci_hcd *sunxi_ehci) +{ + /* The following comments are machine + * translated from Chinese, you have been warned! + */ + + /* adjust PHY's magnitude and rate */ + usb_phy_write(sunxi_ehci, 0x20, 0x14, 5); + + /* threshold adjustment disconnect */ +#ifdef CONFIG_SUN4I + usb_phy_write(sunxi_ehci, 0x2a, 3, 2); +#else + usb_phy_write(sunxi_ehci, 0x2a, 2, 2); +#endif + + return; +} + +static void sunxi_usb_passby(struct sunxi_ehci_hcd *sunxi_ehci, int enable) +{ + unsigned long bits = 0; + void *addr = get_io_base(sunxi_ehci->id) + SUNXI_USB_PMU_IRQ_ENABLE; + + bits = SUNXI_EHCI_AHB_ICHR8_EN | + SUNXI_EHCI_AHB_INCR4_BURST_EN | + SUNXI_EHCI_AHB_INCRX_ALIGN_EN | + SUNXI_EHCI_ULPI_BYPASS_EN; + + if (enable) + setbits_le32(addr, bits); + else + clrbits_le32(addr, bits); + + return; +} + +static void sunxi_ehci_enable(struct sunxi_ehci_hcd *sunxi_ehci) +{ + struct sunxi_ccm_reg *ccm = (struct sunxi_ccm_reg *)SUNXI_CCM_BASE; + + setbits_le32(&ccm->usb_clk_cfg, sunxi_ehci->usb_rst_mask); + setbits_le32(&ccm->ahb_gate0, sunxi_ehci->ahb_clk_mask); + + sunxi_usb_phy_init(sunxi_ehci); + + sunxi_usb_passby(sunxi_ehci, SUNXI_USB_PASSBY_EN); + + gpio_direction_output(sunxi_ehci->gpio_vbus, 1); +} + +static void sunxi_ehci_disable(struct sunxi_ehci_hcd *sunxi_ehci) +{ + struct sunxi_ccm_reg *ccm = (struct sunxi_ccm_reg *)SUNXI_CCM_BASE; + + gpio_direction_output(sunxi_ehci->gpio_vbus, 0); + + sunxi_usb_passby(sunxi_ehci, !SUNXI_USB_PASSBY_EN); + + clrbits_le32(&ccm->ahb_gate0, sunxi_ehci->ahb_clk_mask); + clrbits_le32(&ccm->usb_clk_cfg, sunxi_ehci->usb_rst_mask); +} + +int ehci_hcd_init(int index, enum usb_init_type init, struct ehci_hccr **hccr, + struct ehci_hcor **hcor) +{ + struct sunxi_ccm_reg *ccm = (struct sunxi_ccm_reg *)SUNXI_CCM_BASE; + struct sunxi_ehci_hcd *sunxi_ehci = &sunxi_echi_hcd[index]; + + /* enable common PHY only once */ + if (index == 0) + setbits_le32(&ccm->usb_clk_cfg, CCM_USB_CTRL_PHYGATE); + + sunxi_ehci_enable(sunxi_ehci); + + *hccr = get_io_base(sunxi_ehci->id); + + *hcor = (struct ehci_hcor *)((uint32_t) *hccr + + HC_LENGTH(ehci_readl(&(*hccr)->cr_capbase))); + + debug("sunxi-ehci: init hccr %x and hcor %x hc_length %d\n", + (uint32_t)*hccr, (uint32_t)*hcor, + (uint32_t)HC_LENGTH(ehci_readl(&(*hccr)->cr_capbase))); + + enabled_hcd_count++; + + return 0; +} + +int ehci_hcd_stop(int index) +{ + struct sunxi_ccm_reg *ccm = (struct sunxi_ccm_reg *)SUNXI_CCM_BASE; + struct sunxi_ehci_hcd *sunxi_ehci = &sunxi_echi_hcd[index]; + + sunxi_ehci_disable(sunxi_ehci); + + /* disable common PHY only once, for the last enabled hcd */ + if (enabled_hcd_count == 1) + clrbits_le32(&ccm->usb_clk_cfg, CCM_USB_CTRL_PHYGATE); + + enabled_hcd_count--; + + return 0; +} diff --git a/include/.gitignore b/include/.gitignore index bf142fc..8e41a95 100644 --- a/include/.gitignore +++ b/include/.gitignore @@ -2,4 +2,3 @@ /bmp_logo.h /bmp_logo_data.h /config.h -/config.mk diff --git a/include/ahci.h b/include/ahci.h index 90e8509..35b8a8c 100644 --- a/include/ahci.h +++ b/include/ahci.h @@ -58,6 +58,10 @@ #define PORT_SCR_ERR 0x30 /* SATA phy register: SError */ #define PORT_SCR_ACT 0x34 /* SATA phy register: SActive */ +#ifdef CONFIG_SUNXI_AHCI +#define PORT_P0DMACR 0x70 /* SUNXI specific "DMA register" */ +#endif + /* PORT_IRQ_{STAT,MASK} bits */ #define PORT_IRQ_COLD_PRES (1 << 31) /* cold presence detect */ #define PORT_IRQ_TF_ERR (1 << 30) /* task file error */ diff --git a/include/atmel_mci.h b/include/atmel_mci.h index 090574d..de24148 100644 --- a/include/atmel_mci.h +++ b/include/atmel_mci.h @@ -36,7 +36,9 @@ typedef struct atmel_mci { u32 ier; /* 0x44 */ u32 idr; /* 0x48 */ u32 imr; /* 0x4c */ - u32 reserved[43]; + u32 dma; /* 0x50 */ + u32 cfg; /* 0x54 */ + u32 reserved[41]; u32 version; } atmel_mci_t; @@ -67,6 +69,10 @@ typedef struct atmel_mci { #define MMCI_PDCPADV_SIZE 1 #define MMCI_PDCMODE_OFFSET 15 #define MMCI_PDCMODE_SIZE 1 +/* MCI IP version >= 0x500, MR bit 16 used for CLKODD */ +#define MMCI_CLKODD_OFFSET 16 +#define MMCI_CLKODD_SIZE 1 +/* MCI IP version < 0x200, MR higher 16bits for BLKLEN */ #define MMCI_BLKLEN_OFFSET 16 #define MMCI_BLKLEN_SIZE 16 @@ -185,6 +191,16 @@ typedef struct atmel_mci { #define MMCI_TRTYP_MULTI_BLOCK 1 #define MMCI_TRTYP_STREAM 2 +/* Bitfields in CFG */ +#define MMCI_FIFOMODE_OFFSET 0 +#define MMCI_FIFOMODE_SIZE 1 +#define MMCI_FERRCTRL_OFFSET 4 +#define MMCI_FERRCTRL_SIZE 1 +#define MMCI_HSMODE_OFFSET 8 +#define MMCI_HSMODE_SIZE 1 +#define MMCI_LSYNC_OFFSET 12 +#define MMCI_LSYNC_SIZE 1 + /* Bit manipulation macros */ #define MMCI_BIT(name) \ (1 << MMCI_##name##_OFFSET) diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h index 1af9ba6..953d06b 100644 --- a/include/configs/B4860QDS.h +++ b/include/configs/B4860QDS.h @@ -23,7 +23,6 @@ #define CONFIG_RAMBOOT_TEXT_BASE CONFIG_SYS_TEXT_BASE #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc #else -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -340,7 +339,7 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_SYS_CS3_FTIM1 (FTIM1_GPCM_TACO(0x0e) | \ FTIM1_GPCM_TRAD(0x1f)) #define CONFIG_SYS_CS3_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ - FTIM2_GPCM_TCH(0x0) | \ + FTIM2_GPCM_TCH(0x8) | \ FTIM2_GPCM_TWP(0x1f)) #define CONFIG_SYS_CS3_FTIM3 0x0 diff --git a/include/configs/BSC9131RDB.h b/include/configs/BSC9131RDB.h index 5a316c8..56a3e94 100644 --- a/include/configs/BSC9131RDB.h +++ b/include/configs/BSC9131RDB.h @@ -25,7 +25,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL #define CONFIG_SPL_INIT_MINIMAL #define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_NAND_SUPPORT diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h index 7bb5d33..aeded6d 100644 --- a/include/configs/BSC9132QDS.h +++ b/include/configs/BSC9132QDS.h @@ -41,7 +41,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL #define CONFIG_SPL_INIT_MINIMAL #define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_NAND_SUPPORT @@ -354,7 +353,7 @@ combinations. this should be removed later #define CONFIG_SYS_CS2_FTIM1 (FTIM1_GPCM_TACO(0x0e) | \ FTIM1_GPCM_TRAD(0x1f)) #define CONFIG_SYS_CS2_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ - FTIM2_GPCM_TCH(0x0) | \ + FTIM2_GPCM_TCH(0x8) | \ FTIM2_GPCM_TWP(0x1f)) #define CONFIG_SYS_CS2_FTIM3 0x0 #endif diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h index 9e12fac..715616d 100644 --- a/include/configs/C29XPCIE.h +++ b/include/configs/C29XPCIE.h @@ -24,8 +24,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL -#define CONFIG_TPL #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE @@ -319,7 +317,7 @@ #define CONFIG_SYS_CS2_FTIM1 (FTIM1_GPCM_TACO(0x0e) | \ FTIM1_GPCM_TRAD(0x1f)) #define CONFIG_SYS_CS2_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ - FTIM2_GPCM_TCH(0x0) | \ + FTIM2_GPCM_TCH(0x8) | \ FTIM2_GPCM_TWP(0x1f)) #define CONFIG_SYS_CS2_FTIM3 0x0 diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h index 69b2cb1..dd81229 100644 --- a/include/configs/MPC8313ERDB.h +++ b/include/configs/MPC8313ERDB.h @@ -19,7 +19,6 @@ #define CONFIG_MPC8313ERDB 1 #ifdef CONFIG_NAND -#define CONFIG_SPL #define CONFIG_SPL_INIT_MINIMAL #define CONFIG_SPL_SERIAL_SUPPORT #define CONFIG_SPL_NAND_SUPPORT diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h index d612a8b..a373990 100644 --- a/include/configs/P1010RDB.h +++ b/include/configs/P1010RDB.h @@ -21,7 +21,6 @@ #define CONFIG_NAND_FSL_IFC #ifdef CONFIG_SDCARD -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_SPL_ENV_SUPPORT @@ -56,7 +55,6 @@ #define CONFIG_SYS_TEXT_BASE 0x11000000 #define CONFIG_RESET_VECTOR_ADDRESS 0x1107fffc #else -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_DRIVERS_MISC_SUPPORT #define CONFIG_SPL_ENV_SUPPORT @@ -88,7 +86,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL #ifdef CONFIG_SECURE_BOOT #define CONFIG_SPL_INIT_MINIMAL #define CONFIG_SPL_SERIAL_SUPPORT @@ -108,7 +105,6 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS 0 #define CONFIG_SYS_LDSCRIPT "arch/powerpc/cpu/mpc85xx/u-boot-nand.lds" #else -#define CONFIG_TPL #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE @@ -537,7 +533,7 @@ extern unsigned long get_sdram_size(void); #define CONFIG_SYS_CS3_FTIM1 (FTIM1_GPCM_TACO(0x0e) | \ FTIM1_GPCM_TRAD(0x1f)) #define CONFIG_SYS_CS3_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ - FTIM2_GPCM_TCH(0x0) | \ + FTIM2_GPCM_TCH(0x8) | \ FTIM2_GPCM_TWP(0x1f)) #define CONFIG_SYS_CS3_FTIM3 0x0 diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h index 959cdf6..54e2569 100644 --- a/include/configs/P1022DS.h +++ b/include/configs/P1022DS.h @@ -16,7 +16,6 @@ #endif #ifdef CONFIG_SDCARD -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -45,7 +44,6 @@ #endif #ifdef CONFIG_SPIFLASH -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -79,8 +77,6 @@ #define CONFIG_SYS_NAND_MAX_OOBFREE 5 #ifdef CONFIG_NAND -#define CONFIG_SPL -#define CONFIG_TPL #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE diff --git a/include/configs/P1023RDS.h b/include/configs/P1023RDS.h deleted file mode 100644 index ac75b9c..0000000 --- a/include/configs/P1023RDS.h +++ /dev/null @@ -1,479 +0,0 @@ -/* - * Copyright 2010-2012 Freescale Semiconductor, Inc. - * - * Authors: Roy Zang <tie-fei.zang@freescale.com> - * Chunhe Lan <b25806@freescale.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -/* - * p1023rds board configuration file - * - */ -#ifndef __CONFIG_H -#define __CONFIG_H - -#ifndef CONFIG_SYS_TEXT_BASE -#define CONFIG_SYS_TEXT_BASE 0xeff40000 -#endif - -#ifndef CONFIG_SYS_MONITOR_BASE -#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ -#endif - -#ifndef CONFIG_RESET_VECTOR_ADDRESS -#define CONFIG_RESET_VECTOR_ADDRESS 0xeffffffc -#endif - -/* High Level Configuration Options */ -#define CONFIG_BOOKE /* BOOKE */ -#define CONFIG_E500 /* BOOKE e500 family */ -#define CONFIG_P1023 -#define CONFIG_P1023RDS -#define CONFIG_MP /* support multiple processors */ - -#define CONFIG_FSL_ELBC /* Has Enhanced localbus controller */ -#define CONFIG_PCI /* Enable PCI/PCIE */ -#define CONFIG_PCIE1 /* PCIE controler 1 (slot 1) */ -#define CONFIG_PCIE2 /* PCIE controler 2 (slot 2) */ -#define CONFIG_PCIE3 /* PCIE controler 3 (slot 3) */ -#define CONFIG_FSL_PCI_INIT /* Use common FSL init code */ -#define CONFIG_PCI_INDIRECT_BRIDGE /* indirect PCI bridge support */ -#define CONFIG_FSL_PCIE_RESET /* need PCIe reset errata */ -#define CONFIG_SYS_PCI_64BIT /* enable 64-bit PCI resources */ -#define CONFIG_FSL_LAW /* Use common FSL init code */ - -#ifndef __ASSEMBLY__ -extern unsigned long get_clock_freq(void); -#endif - -#define CONFIG_SYS_CLK_FREQ 66666666 -#define CONFIG_DDR_CLK_FREQ CONFIG_SYS_CLK_FREQ - -/* - * These can be toggled for performance analysis, otherwise use default. - */ -#define CONFIG_L2_CACHE /* toggle L2 cache */ -#define CONFIG_BTB /* toggle branch predition */ -#define CONFIG_HWCONFIG - -#define CONFIG_ENABLE_36BIT_PHYS - -#define CONFIG_SYS_MEMTEST_START 0x00000000 /* memtest works on */ -#define CONFIG_SYS_MEMTEST_END 0x1fffffff /* fix me, only 1G */ -#define CONFIG_PANIC_HANG /* do not reset board on panic */ - -#define CONFIG_SYS_LBC_LBCR 0x00000000 /* Implement conversion of - addresses in the LBC */ - -/* DDR Setup */ -#define CONFIG_VERY_BIG_RAM - -#define CONFIG_ECC_INIT_VIA_DDRCONTROLLER -#define CONFIG_MEM_INIT_VALUE 0xDeadBeef - -#define CONFIG_SYS_DDR_SDRAM_BASE 0x00000000 -#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE - -#define CONFIG_DIMM_SLOTS_PER_CTLR 1 -#define CONFIG_CHIP_SELECTS_PER_CTRL 2 - -/* These are used when DDR doesn't use SPD. */ -#define CONFIG_SYS_SDRAM_SIZE 2048u /* DDR is 2GB */ - -/* Default settings for "stable" mode */ -#define CONFIG_SYS_DDR_CS0_BNDS 0x0000003F -#define CONFIG_SYS_DDR_CS1_BNDS 0x0040007F -#define CONFIG_SYS_DDR_CS0_CONFIG 0x80014302 -#define CONFIG_SYS_DDR_CS1_CONFIG 0x80014302 -#define CONFIG_SYS_DDR_TIMING_3 0x00020000 -#define CONFIG_SYS_DDR_TIMING_0 0x40110104 -#define CONFIG_SYS_DDR_TIMING_1 0x5C59E544 -#define CONFIG_SYS_DDR_TIMING_2 0x0fA888CA -#define CONFIG_SYS_DDR_MODE_1 0x00441210 -#define CONFIG_SYS_DDR_MODE_2 0x00000000 -#define CONFIG_SYS_DDR_MODE_CTRL 0x00000000 -#define CONFIG_SYS_DDR_INTERVAL 0x0A280100 -#define CONFIG_SYS_DDR_DATA_INIT 0xdeadbeef -#define CONFIG_SYS_DDR_CLK_CTRL 0x01800000 -#define CONFIG_SYS_DDR_TIMING_4 0x00000001 -#define CONFIG_SYS_DDR_TIMING_5 0x01401400 -#define CONFIG_SYS_DDR_ZQ_CNTL 0x89080600 -#define CONFIG_SYS_DDR_WRLVL_CNTL 0x8675F605 -#define CONFIG_SYS_DDR_CONTROL 0xC70C0008 /* Type = DDR3: No Interleaving */ -#define CONFIG_SYS_DDR_CONTROL2 0x24401010 -#define CONFIG_SYS_DDR_CDR1 0x00000000 -#define CONFIG_SYS_DDR_CDR2 0x00000000 - -#define CONFIG_SYS_DDR_ERR_INT_EN 0x00000000 -#define CONFIG_SYS_DDR_ERR_DIS 0x00000000 -#define CONFIG_SYS_DDR_SBE 0x00000000 - -/* Settings that differ for "performance" mode */ -#define CONFIG_SYS_DDR_CS0_BNDS_PERF 0x0000007F /* Interleaving Enabled */ -#define CONFIG_SYS_DDR_CS1_BNDS_PERF 0x00000000 /* Interleaving Enabled */ -#define CONFIG_SYS_DDR_CS1_CONFIG_PERF 0x80014302 -#define CONFIG_SYS_DDR_TIMING_1_PERF 0x5C58E544 -#define CONFIG_SYS_DDR_TIMING_2_PERF 0x0FA888CA -/* Type = DDR3: cs0-cs1 interleaving */ -#define CONFIG_SYS_DDR_CONTROL_PERF 0xC70C4008 -#define CONFIG_SYS_DDR_CDR_1 0x00000000 -#define CONFIG_SYS_DDR_CDR_2 0x00000000 - - -/* - * Memory map - * - * 0x0000_0000 0x7fff_ffff DDR 2G Cacheable - * 0x8000_0000 0xbfff_ffff PCI Express Mem 1G non-cacheable - * 0xc000_0000 0xdfff_ffff PCI 512M non-cacheable - * 0xe100_0000 0xe3ff_ffff PCI IO range 4M non-cacheable - * - * Localbus non-cacheable - * 0xe000_0000 0xe003_ffff BCSR 256K BCSR - * 0xee00_0000 0xefff_ffff NOR flash 32M NOR flash - * 0xff00_0000 0xff3f_ffff DPAA_QBMAN 4M - * 0xff60_0000 0xff7f_ffff CCSR 2M non-cacheable - * 0xffa0_0000 0xffaf_ffff NAND 1M non-cacheable - * 0xffd0_0000 0xffd0_3fff L1 for stack 16K Cacheable TLB0 - */ - -/* - * Local Bus Definitions - */ -#define CONFIG_SYS_BCSR_BASE 0xe0000000 /* start of on board FPGA */ -#define CONFIG_SYS_BCSR_BASE_PHYS CONFIG_SYS_BCSR_BASE - -#define CONFIG_SYS_FLASH_BASE 0xee000000 /* start of FLASH 32M */ - -#define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE - -#define CONFIG_FLASH_BR_PRELIM (BR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) \ - | BR_PS_16 | BR_V) -#define CONFIG_FLASH_OR_PRELIM 0xfe000ff7 - -#define CONFIG_FLASH_CFI_DRIVER -#define CONFIG_SYS_FLASH_CFI -#define CONFIG_SYS_FLASH_EMPTY_INFO - -#define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ -#define CONFIG_SYS_MAX_FLASH_SECT 512 /* sectors per device */ -#define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ -#define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ - -#if defined(CONFIG_SYS_SPL) -#define CONFIG_SYS_RAMBOOT -#endif - -#define CONFIG_BOARD_EARLY_INIT_F /* call board_early_init_f function */ -#define CONFIG_BOARD_EARLY_INIT_R /* call board_early_init_r function */ - -#define CONFIG_SYS_INIT_RAM_LOCK -#define CONFIG_SYS_INIT_RAM_ADDR 0xffd00000 /* Initial L1 address */ -#define CONFIG_SYS_INIT_RAM_END 0x00004000 /* End of used area in RAM */ - -#define CONFIG_SYS_GBL_DATA_OFFSET \ - (CONFIG_SYS_INIT_RAM_END - GENERATED_GBL_DATA_SIZE) -#define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET - -#define CONFIG_SYS_MONITOR_LEN (768 * 1024) -#define CONFIG_SYS_MALLOC_LEN (6 * 1024 * 1024) /* Reserved for malloc */ - -#ifndef CONFIG_NAND_SPL -#define CONFIG_SYS_NAND_BASE 0xffa00000 -#define CONFIG_SYS_NAND_BASE_PHYS CONFIG_SYS_NAND_BASE -#else -#define CONFIG_SYS_NAND_BASE 0xfff00000 -#define CONFIG_SYS_NAND_BASE_PHYS CONFIG_SYS_NAND_BASE -#endif - -#define CONFIG_SYS_NAND_BASE_LIST {CONFIG_SYS_NAND_BASE} -#define CONFIG_SYS_MAX_NAND_DEVICE 1 -#define CONFIG_MTD_NAND_VERIFY_WRITE -#define CONFIG_CMD_NAND -#define CONFIG_NAND_FSL_ELBC -#define CONFIG_SYS_NAND_BLOCK_SIZE (16 * 1024) - -/* NAND boot: 4K NAND loader config */ -#define CONFIG_SYS_NAND_SPL_SIZE 0x1000 -#define CONFIG_SYS_NAND_U_BOOT_SIZE ((768 << 10) + CONFIG_SYS_NAND_SPL_SIZE) -#define CONFIG_SYS_NAND_U_BOOT_DST (0x11000000 - CONFIG_SYS_NAND_SPL_SIZE) -#define CONFIG_SYS_NAND_U_BOOT_START 0x11000000 -#define CONFIG_SYS_NAND_U_BOOT_OFFS (0) -#define CONFIG_SYS_NAND_U_BOOT_RELOC 0x00010000 -#define CONFIG_SYS_NAND_U_BOOT_RELOC_SP (CONFIG_SYS_NAND_U_BOOT_RELOC + 0x10000) - -/* NAND flash config */ -#define CONFIG_SYS_NAND_BR_PRELIM (BR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \ - | (2<<BR_DECC_SHIFT) /* Use HW ECC */ \ - | BR_PS_8 /* Port Size = 8bit */ \ - | BR_MS_FCM /* MSEL = FCM */ \ - | BR_V) /* valid */ -#define CONFIG_SYS_NAND_OR_PRELIM (0xFFF80000 /* length 32K */ \ - | OR_FCM_CSCT \ - | OR_FCM_CST \ - | OR_FCM_CHT \ - | OR_FCM_SCY_1 \ - | OR_FCM_TRLX \ - | OR_FCM_EHTR) - -#define CONFIG_SYS_BR0_PRELIM CONFIG_FLASH_BR_PRELIM /* NOR Base Address */ -#define CONFIG_SYS_OR0_PRELIM CONFIG_FLASH_OR_PRELIM /* NOR Options */ -/* chip select 1 - BCSR */ -#define CONFIG_SYS_BR1_PRELIM (BR_PHYS_ADDR(CONFIG_SYS_BCSR_BASE_PHYS) \ - | BR_MS_GPCM | BR_PS_8 | BR_V) -#define CONFIG_SYS_OR1_PRELIM (OR_AM_32KB | OR_GPCM_CSNT | OR_GPCM_XACS \ - | OR_GPCM_SCY | OR_GPCM_TRLX | OR_GPCM_EHTR \ - | OR_GPCM_EAD) - -/* Serial Port - * open - index 2 - * shorted - index 1 - */ -#define CONFIG_CONS_INDEX 1 -#undef CONFIG_SERIAL_SOFTWARE_FIFO -#define CONFIG_SYS_NS16550 -#define CONFIG_SYS_NS16550_SERIAL -#define CONFIG_SYS_NS16550_REG_SIZE 1 -#define CONFIG_SYS_NS16550_CLK get_bus_freq(0) -#ifdef CONFIG_NAND_SPL -#define CONFIG_NS16550_MIN_FUNCTIONS -#endif - -#define CONFIG_SYS_BAUDRATE_TABLE \ - {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} - -#define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_CCSRBAR + 0x4500) -#define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_CCSRBAR + 0x4600) - -/* Use the HUSH parser */ -#define CONFIG_SYS_HUSH_PARSER - -/* - * Pass open firmware flat tree - */ -#define CONFIG_OF_LIBFDT -#define CONFIG_OF_BOARD_SETUP -#define CONFIG_OF_STDOUT_VIA_ALIAS - -/* new uImage format support */ -#define CONFIG_FIT -#define CONFIG_FIT_VERBOSE /* enable fit_format_{error,warning}() */ - -/* I2C */ -#define CONFIG_SYS_I2C -#define CONFIG_SYS_I2C_FSL -#define CONFIG_SYS_FSL_I2C_SPEED 400000 -#define CONFIG_SYS_FSL_I2C_SLAVE 0x7F -#define CONFIG_SYS_FSL_I2C_OFFSET 0x3000 -#define CONFIG_SYS_FSL_I2C2_SPEED 400000 -#define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F -#define CONFIG_SYS_FSL_I2C2_OFFSET 0x3100 -#define CONFIG_SYS_I2C_EEPROM_ADDR 0x51 - -/* - * I2C2 EEPROM - */ -#define CONFIG_ID_EEPROM -#ifdef CONFIG_ID_EEPROM -#define CONFIG_SYS_I2C_EEPROM_NXID -#endif -#define CONFIG_SYS_I2C_EEPROM_ADDR 0x51 -#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 -#define CONFIG_SYS_EEPROM_BUS_NUM 0 - -#define CONFIG_CMD_I2C - -/* - * eSPI - Enhanced SPI - */ -#define CONFIG_SPI_FLASH -#define CONFIG_SPI_FLASH_ATMEL - -#define CONFIG_HARD_SPI -#define CONFIG_FSL_ESPI - -#define CONFIG_CMD_SF -#define CONFIG_SF_DEFAULT_SPEED 10000000 -#define CONFIG_SF_DEFAULT_MODE 0 - -/* - * General PCI - * Memory space is mapped 1-1, but I/O space must start from 0. - */ - -/* controller 3, Slot 1, tgtid 3, Base address b000 */ -#define CONFIG_SYS_PCIE3_NAME "Slot 3" -#define CONFIG_SYS_PCIE3_MEM_VIRT 0x80000000 -#define CONFIG_SYS_PCIE3_MEM_BUS 0x80000000 -#define CONFIG_SYS_PCIE3_MEM_PHYS 0x80000000 -#define CONFIG_SYS_PCIE3_MEM_SIZE 0x20000000 /* 512M */ -#define CONFIG_SYS_PCIE3_IO_VIRT 0xffc00000 -#define CONFIG_SYS_PCIE3_IO_BUS 0x00000000 -#define CONFIG_SYS_PCIE3_IO_PHYS 0xffc00000 -#define CONFIG_SYS_PCIE3_IO_SIZE 0x00010000 /* 64k */ - -/* controller 2, direct to uli, tgtid 2, Base address 9000 */ -#define CONFIG_SYS_PCIE2_NAME "Slot 2" -#define CONFIG_SYS_PCIE2_MEM_VIRT 0xa0000000 -#define CONFIG_SYS_PCIE2_MEM_BUS 0xa0000000 -#define CONFIG_SYS_PCIE2_MEM_PHYS 0xa0000000 -#define CONFIG_SYS_PCIE2_MEM_SIZE 0x20000000 /* 512M */ -#define CONFIG_SYS_PCIE2_IO_VIRT 0xffc10000 -#define CONFIG_SYS_PCIE2_IO_BUS 0x00000000 -#define CONFIG_SYS_PCIE2_IO_PHYS 0xffc10000 -#define CONFIG_SYS_PCIE2_IO_SIZE 0x00010000 /* 64k */ - -/* controller 1, Slot 2, tgtid 1, Base address a000 */ -#define CONFIG_SYS_PCIE1_NAME "Slot 1" -#define CONFIG_SYS_PCIE1_MEM_VIRT 0xc0000000 -#define CONFIG_SYS_PCIE1_MEM_BUS 0xc0000000 -#define CONFIG_SYS_PCIE1_MEM_PHYS 0xc0000000 -#define CONFIG_SYS_PCIE1_MEM_SIZE 0x20000000 /* 512M */ -#define CONFIG_SYS_PCIE1_IO_VIRT 0xffc20000 -#define CONFIG_SYS_PCIE1_IO_BUS 0x00000000 -#define CONFIG_SYS_PCIE1_IO_PHYS 0xffc20000 -#define CONFIG_SYS_PCIE1_IO_SIZE 0x00010000 /* 64k */ - -#if defined(CONFIG_PCI) -#define CONFIG_E1000 /* Defind e1000 pci Ethernet card */ -#define CONFIG_PCI_PNP /* do pci plug-and-play */ -#define CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ -#endif /* CONFIG_PCI */ - -/* - * Environment - */ -#define CONFIG_ENV_OVERWRITE - -#if defined(CONFIG_SYS_RAMBOOT) -#define CONFIG_ENV_IS_NOWHERE /* Store ENV in memory only */ -#define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - 0x4000) -#define CONFIG_ENV_SIZE 0x2000 -#else -#define CONFIG_ENV_IS_IN_FLASH -#define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) -#define CONFIG_ENV_SIZE 0x2000 -#define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) */ -#endif - -#define CONFIG_LOADS_ECHO /* echo on for serial download */ -#define CONFIG_SYS_LOADS_BAUD_CHANGE /* allow baudrate change */ - -/* - * Command line configuration. - */ -#include <config_cmd_default.h> - -#define CONFIG_CMD_IRQ -#define CONFIG_CMD_PING -#define CONFIG_CMD_MII -#define CONFIG_CMD_ELF -#define CONFIG_CMD_SETEXPR -#define CONFIG_CMD_REGINFO - -#if defined(CONFIG_PCI) -#define CONFIG_CMD_PCI -#define CONFIG_CMD_NET -#endif - -/* - * USB - */ -#define CONFIG_HAS_FSL_DR_USB -#ifdef CONFIG_HAS_FSL_DR_USB -#define CONFIG_USB_EHCI - -#ifdef CONFIG_USB_EHCI -#define CONFIG_CMD_USB -#define CONFIG_EHCI_HCD_INIT_AFTER_RESET -#define CONFIG_USB_EHCI_FSL -#define CONFIG_USB_STORAGE -#define CONFIG_CMD_FAT -#define CONFIG_CMD_EXT2 -#define CONFIG_CMD_FAT -#define CONFIG_DOS_PARTITION -#endif -#endif - -/* - * Miscellaneous configurable options - */ -#define CONFIG_SYS_LONGHELP /* undef to save memory */ -#define CONFIG_CMDLINE_EDITING /* Command-line editing */ -#define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ -#if defined(CONFIG_CMD_KGDB) -#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ -#else -#define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ -#endif -/* Print Buffer Size */ -#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT)+16) -#define CONFIG_SYS_MAXARGS 16 /* max number of command args */ -/* Boot Argument Buffer Size */ -#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE - -/* - * For booting Linux, the board info and command line data - * have to be in the first 16 MB of memory, since this is - * the maximum mapped by the Linux kernel during initialization. - */ -#define CONFIG_SYS_BOOTMAPSZ (16 << 20) /* Initial Memory map for Linux*/ -#define CONFIG_SYS_BOOTM_LEN (16 << 20) /* Increase max gunzip size */ - -#if defined(CONFIG_CMD_KGDB) -#define CONFIG_KGDB_BAUDRATE 230400 /* speed to run kgdb serial port */ -#endif - -/* - * Environment Configuration - */ -#define CONFIG_BOOTFILE "uImage" -#define CONFIG_UBOOTPATH (u-boot.bin) /* U-Boot image on TFTP server */ - -/* default location for tftp and bootm */ -#define CONFIG_LOADADDR 1000000 - -#define CONFIG_BOOTDELAY 10 /* -1 disables auto-boot */ - -#define CONFIG_BAUDRATE 115200 - -/* Qman/Bman */ -#define CONFIG_SYS_DPAA_QBMAN /* support Q/Bman */ -#define CONFIG_SYS_QMAN_MEM_BASE 0xff000000 -#define CONFIG_SYS_QMAN_MEM_PHYS CONFIG_SYS_QMAN_MEM_BASE -#define CONFIG_SYS_QMAN_MEM_SIZE 0x00200000 -#define CONFIG_SYS_BMAN_MEM_BASE 0xff200000 -#define CONFIG_SYS_BMAN_MEM_PHYS CONFIG_SYS_BMAN_MEM_BASE -#define CONFIG_SYS_BMAN_MEM_SIZE 0x00200000 - -/* For FM */ -#define CONFIG_SYS_DPAA_FMAN -#define CONFIG_PHY_GIGE /* Include GbE speed/duplex detection */ - -#ifdef CONFIG_SYS_DPAA_FMAN -#define CONFIG_FMAN_ENET -#define CONFIG_PHY_MARVELL -#endif - -/* Default address of microcode for the Linux Fman driver */ -/* QE microcode/firmware address */ -#define CONFIG_SYS_QE_FMAN_FW_IN_NOR -#define CONFIG_SYS_FMAN_FW_ADDR 0xEFF00000 -#define CONFIG_SYS_QE_FMAN_FW_LENGTH 0x10000 -#define CONFIG_SYS_FDT_PAD (0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH) - -#ifdef CONFIG_FMAN_ENET -#define CONFIG_SYS_FM1_DTSEC1_PHY_ADDR 0x2 -#define CONFIG_SYS_FM1_DTSEC2_PHY_ADDR 0x7 - -#define CONFIG_SYS_TBIPA_VALUE 8 -#define CONFIG_MII /* MII PHY management */ -#define CONFIG_ETHPRIME "FM1@DTSEC1" -#endif - -#define CONFIG_EXTRA_ENV_SETTINGS \ - "hwconfig=usb1:dr_mode=host,phy_type=ulpi\0" - -#endif /* __CONFIG_H */ diff --git a/include/configs/P1_P2_RDB.h b/include/configs/P1_P2_RDB.h index 110ba5f..c75638a 100644 --- a/include/configs/P1_P2_RDB.h +++ b/include/configs/P1_P2_RDB.h @@ -36,7 +36,6 @@ #endif #ifdef CONFIG_SDCARD -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -64,7 +63,6 @@ #endif #ifdef CONFIG_SPIFLASH -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -93,8 +91,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL -#define CONFIG_TPL #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE diff --git a/include/configs/T1040QDS.h b/include/configs/T1040QDS.h index f2a75ae..ebee89a 100644 --- a/include/configs/T1040QDS.h +++ b/include/configs/T1040QDS.h @@ -445,11 +445,17 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_SYS_I2C #define CONFIG_SYS_I2C_FSL /* Use FSL common I2C driver */ #define CONFIG_SYS_FSL_I2C_SPEED 50000 /* I2C speed in Hz */ +#define CONFIG_SYS_FSL_I2C2_SPEED 50000 +#define CONFIG_SYS_FSL_I2C3_SPEED 50000 +#define CONFIG_SYS_FSL_I2C4_SPEED 50000 #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F -#define CONFIG_SYS_FSL_I2C2_SPEED 50000 /* I2C speed in Hz */ #define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F +#define CONFIG_SYS_FSL_I2C3_SLAVE 0x7F +#define CONFIG_SYS_FSL_I2C4_SLAVE 0x7F #define CONFIG_SYS_FSL_I2C_OFFSET 0x118000 -#define CONFIG_SYS_FSL_I2C2_OFFSET 0x119000 +#define CONFIG_SYS_FSL_I2C2_OFFSET 0x118100 +#define CONFIG_SYS_FSL_I2C3_OFFSET 0x119000 +#define CONFIG_SYS_FSL_I2C4_OFFSET 0x119100 #define I2C_MUX_PCA_ADDR 0x77 #define I2C_MUX_PCA_ADDR_PRI 0x77 /* Primary Mux*/ diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h index 8d6c51b..c4bf0d6 100644 --- a/include/configs/T104xRDB.h +++ b/include/configs/T104xRDB.h @@ -22,7 +22,6 @@ #define CONFIG_SYS_FSL_PBL_RCW $(SRCTREE)/board/freescale/t104xrdb/t1042_rcw.cfg #endif -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -286,7 +285,7 @@ #define CONFIG_SYS_CS2_FTIM1 (FTIM1_GPCM_TACO(0x0e) | \ FTIM1_GPCM_TRAD(0x1f)) #define CONFIG_SYS_CS2_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ - FTIM2_GPCM_TCH(0x0) | \ + FTIM2_GPCM_TCH(0x8) | \ FTIM2_GPCM_TWP(0x1f)) #define CONFIG_SYS_CS2_FTIM3 0x0 @@ -443,11 +442,17 @@ #define CONFIG_SYS_I2C #define CONFIG_SYS_I2C_FSL /* Use FSL common I2C driver */ #define CONFIG_SYS_FSL_I2C_SPEED 400000 /* I2C speed in Hz */ +#define CONFIG_SYS_FSL_I2C2_SPEED 400000 +#define CONFIG_SYS_FSL_I2C3_SPEED 400000 +#define CONFIG_SYS_FSL_I2C4_SPEED 400000 #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F -#define CONFIG_SYS_FSL_I2C2_SPEED 400000 /* I2C speed in Hz */ #define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F +#define CONFIG_SYS_FSL_I2C3_SLAVE 0x7F +#define CONFIG_SYS_FSL_I2C4_SLAVE 0x7F #define CONFIG_SYS_FSL_I2C_OFFSET 0x118000 -#define CONFIG_SYS_FSL_I2C2_OFFSET 0x119000 +#define CONFIG_SYS_FSL_I2C2_OFFSET 0x118100 +#define CONFIG_SYS_FSL_I2C3_OFFSET 0x119000 +#define CONFIG_SYS_FSL_I2C4_OFFSET 0x119100 /* I2C bus multiplexer */ #define I2C_MUX_PCA_ADDR 0x70 diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h index 59d142e..395472b 100644 --- a/include/configs/T208xQDS.h +++ b/include/configs/T208xQDS.h @@ -11,6 +11,8 @@ #ifndef __T208xQDS_H #define __T208xQDS_H +#define CONFIG_SYS_GENERIC_BOARD +#define CONFIG_DISPLAY_BOARDINFO #define CONFIG_ICS307_REFCLK_HZ 25000000 /* ICS307 ref clk freq */ #define CONFIG_MMC #define CONFIG_SPI_FLASH @@ -53,7 +55,6 @@ #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2081_rcw.cfg #endif -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -537,7 +538,7 @@ unsigned long get_board_ddr_clk(void); #ifdef CONFIG_SPI_FLASH #define CONFIG_FSL_ESPI #define CONFIG_SPI_FLASH_STMICRO -#if !defined(CONFIG_SPL_BUILD) && defined(CONFIG_RAMBOOT_PBL) +#ifndef CONFIG_SPL_BUILD #define CONFIG_SPI_FLASH_SST #define CONFIG_SPI_FLASH_EON #endif diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h index 3a1c49c..e5936c7 100644 --- a/include/configs/T208xRDB.h +++ b/include/configs/T208xRDB.h @@ -11,6 +11,8 @@ #ifndef __T2080RDB_H #define __T2080RDB_H +#define CONFIG_SYS_GENERIC_BOARD +#define CONFIG_DISPLAY_BOARDINFO #define CONFIG_T2080RDB #define CONFIG_ICS307_REFCLK_HZ 25000000 /* ICS307 ref clk freq */ #define CONFIG_MMC @@ -42,7 +44,6 @@ #define CONFIG_SYS_FSL_PBL_PBI board/freescale/t208xrdb/t2080_pbi.cfg #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xrdb/t2080_rcw.cfg -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -283,7 +284,7 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_SYS_CS2_FTIM1 (FTIM1_GPCM_TACO(0x0e) | \ FTIM1_GPCM_TRAD(0x1f)) #define CONFIG_SYS_CS2_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ - FTIM2_GPCM_TCH(0x0) | \ + FTIM2_GPCM_TCH(0x8) | \ FTIM2_GPCM_TWP(0x1f)) #define CONFIG_SYS_CS2_FTIM3 0x0 diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h index a770dd0..ca97247 100644 --- a/include/configs/T4240QDS.h +++ b/include/configs/T4240QDS.h @@ -25,7 +25,6 @@ #define CONFIG_RAMBOOT_TEXT_BASE CONFIG_SYS_TEXT_BASE #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc #else -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -237,7 +236,7 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_SYS_CS3_FTIM1 (FTIM1_GPCM_TACO(0xff) | \ FTIM1_GPCM_TRAD(0x3f)) #define CONFIG_SYS_CS3_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ - FTIM2_GPCM_TCH(0x0) | \ + FTIM2_GPCM_TCH(0x8) | \ FTIM2_GPCM_TWP(0x1f)) #define CONFIG_SYS_CS3_FTIM3 0x0 diff --git a/include/configs/a3m071.h b/include/configs/a3m071.h index 205adfd..a4050f3 100644 --- a/include/configs/a3m071.h +++ b/include/configs/a3m071.h @@ -412,7 +412,6 @@ /* * SPL related defines */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NOR_SUPPORT diff --git a/include/configs/am335x_igep0033.h b/include/configs/am335x_igep0033.h index c17327f..dcded0a 100644 --- a/include/configs/am335x_igep0033.h +++ b/include/configs/am335x_igep0033.h @@ -211,7 +211,6 @@ #undef CONFIG_USE_IRQ /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK /* * Place the image at the start of the ROM defined image space. diff --git a/include/configs/am3517_crane.h b/include/configs/am3517_crane.h index d826214..898ed2e 100644 --- a/include/configs/am3517_crane.h +++ b/include/configs/am3517_crane.h @@ -293,7 +293,6 @@ GENERATED_GBL_DATA_SIZE) /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NAND_SIMPLE diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h index a9c5a8f..1e2d55b 100644 --- a/include/configs/am3517_evm.h +++ b/include/configs/am3517_evm.h @@ -302,7 +302,6 @@ GENERATED_GBL_DATA_SIZE) /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NAND_SIMPLE diff --git a/include/configs/apf27.h b/include/configs/apf27.h index b10c48c..4424c30 100644 --- a/include/configs/apf27.h +++ b/include/configs/apf27.h @@ -37,7 +37,6 @@ /* * SPL */ -#define CONFIG_SPL #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" #define CONFIG_SPL_MAX_SIZE 2048 diff --git a/include/configs/arndale.h b/include/configs/arndale.h index 370db82..64b54ab 100644 --- a/include/configs/arndale.h +++ b/include/configs/arndale.h @@ -121,7 +121,6 @@ /* MMC SPL */ #define CONFIG_EXYNOS_SPL -#define CONFIG_SPL #define COPY_BL2_FNPTR_ADDR 0x02020030 #define CONFIG_SPL_LIBCOMMON_SUPPORT diff --git a/include/configs/bur_am335x_common.h b/include/configs/bur_am335x_common.h index 5a37536..3f889f8 100644 --- a/include/configs/bur_am335x_common.h +++ b/include/configs/bur_am335x_common.h @@ -164,7 +164,6 @@ * under common/spl/. Given our generally common memory map, we set a * number of related defaults and sizes here. */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK /* * Place the image at the start of the ROM defined image space. diff --git a/include/configs/cam_enc_4xx.h b/include/configs/cam_enc_4xx.h index d1a8ff2..5f30279 100644 --- a/include/configs/cam_enc_4xx.h +++ b/include/configs/cam_enc_4xx.h @@ -199,7 +199,6 @@ #define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000 /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_LIBGENERIC_SUPPORT diff --git a/include/configs/cm_t35.h b/include/configs/cm_t35.h index d8d71a9..c63608c 100644 --- a/include/configs/cm_t35.h +++ b/include/configs/cm_t35.h @@ -316,7 +316,6 @@ #define CONFIG_OMAP3_SPI /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_NAND_SIMPLE diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h index ec3145f..7eaaf69 100644 --- a/include/configs/controlcenterd.h +++ b/include/configs/controlcenterd.h @@ -45,6 +45,8 @@ #define CONFIG_CONTROLCENTERD #define CONFIG_MP /* support multiple processors */ +#define CONFIG_SYS_GENERIC_BOARD + #define CONFIG_SYS_NO_FLASH #define CONFIG_ENABLE_36BIT_PHYS #define CONFIG_FSL_LAW /* Use common FSL init code */ diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h index b279409..1252d7a 100644 --- a/include/configs/da850evm.h +++ b/include/configs/da850evm.h @@ -368,7 +368,6 @@ #ifndef CONFIG_DIRECT_NOR_BOOT /* defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE - \ diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h index cc53fc9..69c51bc 100644 --- a/include/configs/devkit8000.h +++ b/include/configs/devkit8000.h @@ -281,7 +281,6 @@ #define CONFIG_SYS_SRAM_SIZE 0x10000 /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_NAND_SIMPLE diff --git a/include/configs/dlvision-10g.h b/include/configs/dlvision-10g.h index 6153a40..d9bd564 100644 --- a/include/configs/dlvision-10g.h +++ b/include/configs/dlvision-10g.h @@ -24,6 +24,7 @@ #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_MISC_INIT_R #define CONFIG_LAST_STAGE_INIT +#define CONFIG_SYS_GENERIC_BOARD #define CONFIG_SYS_CLK_FREQ 33333333 /* external frequency to pll */ diff --git a/include/configs/dlvision.h b/include/configs/dlvision.h index 1e86c55..af0d602 100644 --- a/include/configs/dlvision.h +++ b/include/configs/dlvision.h @@ -22,6 +22,7 @@ #define CONFIG_BOARD_EARLY_INIT_F /* call board_early_init_f */ #define CONFIG_MISC_INIT_R /* call misc_init_r */ +#define CONFIG_SYS_GENERIC_BOARD #define CONFIG_SYS_CLK_FREQ 33333333 /* external frequency to pll */ diff --git a/include/configs/exynos5-dt.h b/include/configs/exynos5-dt.h index e36a031..a7c6292 100644 --- a/include/configs/exynos5-dt.h +++ b/include/configs/exynos5-dt.h @@ -136,7 +136,6 @@ #define CONFIG_TPM_TIS_I2C_SLAVE_ADDR 0x20 /* MMC SPL */ -#define CONFIG_SPL #define COPY_BL2_FNPTR_ADDR 0x02020030 #define CONFIG_SPL_LIBCOMMON_SUPPORT diff --git a/include/configs/gdppc440etx.h b/include/configs/gdppc440etx.h index 6810b3b..12fd75d 100644 --- a/include/configs/gdppc440etx.h +++ b/include/configs/gdppc440etx.h @@ -32,6 +32,7 @@ #define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f*/ #define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */ +#define CONFIG_SYS_GENERIC_BOARD #undef CONFIG_ZERO_BOOTDELAY_CHECK /* ignore keypress on bootdelay==0 */ #define CONFIG_AUTOBOOT_KEYED /* use key strings to stop autoboot */ diff --git a/include/configs/hawkboard.h b/include/configs/hawkboard.h index 73e1624..8188c7b 100644 --- a/include/configs/hawkboard.h +++ b/include/configs/hawkboard.h @@ -46,7 +46,6 @@ #endif /* Spl */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NAND_SUPPORT diff --git a/include/configs/intip.h b/include/configs/intip.h index b56b3aa..928eb5b 100644 --- a/include/configs/intip.h +++ b/include/configs/intip.h @@ -45,6 +45,7 @@ #define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */ #define CONFIG_BOARD_EARLY_INIT_R 1 /* Call board_early_init_r */ #define CONFIG_MISC_INIT_R 1 /* Call misc_init_r */ +#define CONFIG_SYS_GENERIC_BOARD #define CONFIG_BOARD_TYPES 1 /* support board types */ #define CONFIG_FIT #define CFG_ALT_MEMTEST diff --git a/include/configs/io.h b/include/configs/io.h index 8e32c25..d4ae0ad 100644 --- a/include/configs/io.h +++ b/include/configs/io.h @@ -24,6 +24,7 @@ #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_MISC_INIT_R #define CONFIG_LAST_STAGE_INIT +#define CONFIG_SYS_GENERIC_BOARD #define CONFIG_SYS_CLK_FREQ 33333333 /* external frequency to pll */ diff --git a/include/configs/io64.h b/include/configs/io64.h index 6915b20..2a9ff37 100644 --- a/include/configs/io64.h +++ b/include/configs/io64.h @@ -43,6 +43,7 @@ #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_MISC_INIT_R #define CONFIG_LAST_STAGE_INIT +#define CONFIG_SYS_GENERIC_BOARD #undef CONFIG_ZERO_BOOTDELAY_CHECK /* ignore keypress on bootdelay==0 */ #define CONFIG_AUTOBOOT_KEYED /* use key strings to stop autoboot */ diff --git a/include/configs/iocon.h b/include/configs/iocon.h index ae05bcb..38d473d 100644 --- a/include/configs/iocon.h +++ b/include/configs/iocon.h @@ -23,6 +23,7 @@ #define CONFIG_BOARD_EARLY_INIT_F #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_LAST_STAGE_INIT +#define CONFIG_SYS_GENERIC_BOARD #define CONFIG_SYS_CLK_FREQ 33333333 /* external frequency to pll */ diff --git a/include/configs/ipam390.h b/include/configs/ipam390.h index fdd5680..98e819b 100644 --- a/include/configs/ipam390.h +++ b/include/configs/ipam390.h @@ -298,7 +298,6 @@ "-(rootfs)" /* defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE - \ diff --git a/include/configs/km/kmp204x-common.h b/include/configs/km/kmp204x-common.h index efd9635..a0f9d29 100644 --- a/include/configs/km/kmp204x-common.h +++ b/include/configs/km/kmp204x-common.h @@ -377,6 +377,14 @@ int get_scl(void); #define CONFIG_SYS_LOADS_BAUD_CHANGE /* allow baudrate change */ /* + * Hardware Watchdog + */ +#define CONFIG_WATCHDOG /* enable CPU watchdog */ +#define CONFIG_WATCHDOG_PRESC 34 /* wdog prescaler 2^(64-34) (~10min) */ +#define CONFIG_WATCHDOG_RC WRC_CHIP /* reset chip on watchdog event */ + + +/* * additionnal command line configuration. */ #define CONFIG_CMD_PCI diff --git a/include/configs/lwmon5.h b/include/configs/lwmon5.h index 07ddfc4..58e7295 100644 --- a/include/configs/lwmon5.h +++ b/include/configs/lwmon5.h @@ -665,7 +665,6 @@ * SPL related defines */ #ifdef CONFIG_LCD4_LWMON5 -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NOR_SUPPORT diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h index e5756d3..df6a226 100644 --- a/include/configs/m53evk.h +++ b/include/configs/m53evk.h @@ -252,7 +252,6 @@ /* * NAND SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_TARGET "u-boot-with-nand-spl.imx" #define CONFIG_SPL_BOARD_INIT diff --git a/include/configs/mcx.h b/include/configs/mcx.h index 75abb60..dff895a 100644 --- a/include/configs/mcx.h +++ b/include/configs/mcx.h @@ -344,7 +344,6 @@ GENERATED_GBL_DATA_SIZE) /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_NAND_SIMPLE diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h index 06b7e94..1a82a57 100644 --- a/include/configs/microblaze-generic.h +++ b/include/configs/microblaze-generic.h @@ -12,7 +12,6 @@ #include "../board/xilinx/microblaze-generic/xparameters.h" /* MicroBlaze CPU */ -#define CONFIG_MICROBLAZE 1 #define MICROBLAZE_V5 1 /* Open Firmware DTS */ @@ -448,7 +447,6 @@ #endif /* SPL part */ -#define CONFIG_SPL #define CONFIG_CMD_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LIBCOMMON_SUPPORT diff --git a/include/configs/mx31pdk.h b/include/configs/mx31pdk.h index d80f5da..bc4583b 100644 --- a/include/configs/mx31pdk.h +++ b/include/configs/mx31pdk.h @@ -31,7 +31,6 @@ #define CONFIG_MACH_TYPE MACH_TYPE_MX31_3DS -#define CONFIG_SPL #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" #define CONFIG_SPL_MAX_SIZE 2048 diff --git a/include/configs/mxs.h b/include/configs/mxs.h index df9eb93..eb96fc1 100644 --- a/include/configs/mxs.h +++ b/include/configs/mxs.h @@ -50,7 +50,6 @@ #define CONFIG_ARCH_MISC_INIT /* SPL */ -#define CONFIG_SPL #define CONFIG_SPL_NO_CPU_SUPPORT_CODE #define CONFIG_SPL_START_S_PATH "arch/arm/cpu/arm926ejs/mxs" #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" diff --git a/include/configs/neo.h b/include/configs/neo.h index 4937730..09300ca 100644 --- a/include/configs/neo.h +++ b/include/configs/neo.h @@ -25,6 +25,7 @@ #define CONFIG_BOARD_EARLY_INIT_R #define CONFIG_MISC_INIT_R #define CONFIG_LAST_STAGE_INIT +#define CONFIG_SYS_GENERIC_BOARD #define CONFIG_SYS_CLK_FREQ 33333333 /* external frequency to pll */ diff --git a/include/configs/omap3_evm_common.h b/include/configs/omap3_evm_common.h index 739d392..eef4230 100644 --- a/include/configs/omap3_evm_common.h +++ b/include/configs/omap3_evm_common.h @@ -257,7 +257,6 @@ #define CONFIG_SYS_CACHELINE_SIZE 64 /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_TEXT_BASE 0x40200800 #define CONFIG_SPL_MAX_SIZE (54 * 1024) /* 8 KB for stack */ diff --git a/include/configs/omap3_zoom1.h b/include/configs/omap3_zoom1.h index 93f4d62..c5d742c 100644 --- a/include/configs/omap3_zoom1.h +++ b/include/configs/omap3_zoom1.h @@ -26,7 +26,6 @@ #include <configs/ti_omap3_common.h> /* Remove SPL boot option - we do not support that on LDP yet */ -#undef CONFIG_SPL #undef CONFIG_SPL_FRAMEWORK #undef CONFIG_SPL_OS_BOOT diff --git a/include/configs/openrd.h b/include/configs/openrd.h index 8fab6e6..3eb408f 100644 --- a/include/configs/openrd.h +++ b/include/configs/openrd.h @@ -49,6 +49,7 @@ #define CONFIG_CMD_DHCP #define CONFIG_CMD_ENV #define CONFIG_CMD_MII +#define CONFIG_CMD_MMC #define CONFIG_CMD_NAND #define CONFIG_CMD_PING #define CONFIG_CMD_USB @@ -123,4 +124,11 @@ #define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET #endif /*CONFIG_MVSATA_IDE*/ +#ifdef CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_MVEBU_MMC +#define CONFIG_SYS_MMC_BASE KW_SDIO_BASE +#endif /* CONFIG_CMD_MMC */ + #endif /* _CONFIG_OPENRD_BASE_H */ diff --git a/include/configs/origen.h b/include/configs/origen.h index 8258338..5d24916 100644 --- a/include/configs/origen.h +++ b/include/configs/origen.h @@ -65,7 +65,6 @@ #undef CONFIG_CMD_NFS /* MMC SPL */ -#define CONFIG_SPL #define COPY_BL2_FNPTR_ADDR 0x02020030 #define CONFIG_SPL_TEXT_BASE 0x02021410 diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h index 185df77..9b58950 100644 --- a/include/configs/p1_p2_rdb_pc.h +++ b/include/configs/p1_p2_rdb_pc.h @@ -148,7 +148,6 @@ #endif #ifdef CONFIG_SDCARD -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -177,7 +176,6 @@ #endif #ifdef CONFIG_SPIFLASH -#define CONFIG_SPL #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT #define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_SERIAL_SUPPORT @@ -207,8 +205,6 @@ #endif #ifdef CONFIG_NAND -#define CONFIG_SPL -#define CONFIG_TPL #ifdef CONFIG_TPL_BUILD #define CONFIG_SPL_NAND_BOOT #define CONFIG_SPL_FLUSH_IMAGE diff --git a/include/configs/palmtreo680.h b/include/configs/palmtreo680.h index 3662663..6490be5 100644 --- a/include/configs/palmtreo680.h +++ b/include/configs/palmtreo680.h @@ -205,7 +205,6 @@ /* * SPL */ -#define CONFIG_SPL #define CONFIG_SPL_TEXT_BASE 0xa1700000 /* IPL loads SPL here */ #define CONFIG_SPL_STACK 0x5c040000 /* end of internal SRAM */ #define CONFIG_SPL_NAND_SUPPORT /* build libnand for spl */ diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h index 9af3efd..dcf5537 100644 --- a/include/configs/pcm051.h +++ b/include/configs/pcm051.h @@ -197,7 +197,6 @@ #define CONFIG_ENV_IS_NOWHERE /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT /* diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h index f72ab0b..0dfb7e7 100644 --- a/include/configs/sama5d3_xplained.h +++ b/include/configs/sama5d3_xplained.h @@ -209,7 +209,6 @@ #define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024) /* SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_TEXT_BASE 0x300000 #define CONFIG_SPL_MAX_SIZE 0x10000 diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h index da27180..56c2454 100644 --- a/include/configs/sama5d3xek.h +++ b/include/configs/sama5d3xek.h @@ -244,7 +244,6 @@ #define CONFIG_SYS_MALLOC_LEN (1024 * 1024) /* SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_TEXT_BASE 0x300000 #define CONFIG_SPL_MAX_SIZE 0x10000 diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h index ecc93bc..3d6ff09 100644 --- a/include/configs/sheevaplug.h +++ b/include/configs/sheevaplug.h @@ -31,6 +31,7 @@ #define CONFIG_CMD_DHCP #define CONFIG_CMD_ENV #define CONFIG_CMD_MII +#define CONFIG_CMD_MMC #define CONFIG_CMD_NAND #define CONFIG_CMD_PING #define CONFIG_CMD_USB @@ -82,6 +83,16 @@ #endif /* CONFIG_CMD_NET */ /* + * SDIO/MMC Card Configuration + */ +#ifdef CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_MVEBU_MMC +#define CONFIG_SYS_MMC_BASE KW_SDIO_BASE +#endif /* CONFIG_CMD_MMC */ + +/* * File system */ #define CONFIG_CMD_EXT2 diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h index 53816a6..b8fb77e 100644 --- a/include/configs/siemens-am33x-common.h +++ b/include/configs/siemens-am33x-common.h @@ -139,7 +139,6 @@ #define CONFIG_SYS_I2C_OMAP24XX /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_TEXT_BASE 0x402F0400 #define CONFIG_SPL_MAX_SIZE (101 * 1024) diff --git a/include/configs/smdkv310.h b/include/configs/smdkv310.h index 34adfaf..048c178 100644 --- a/include/configs/smdkv310.h +++ b/include/configs/smdkv310.h @@ -76,7 +76,6 @@ #define CONFIG_ZERO_BOOTDELAY_CHECK /* MMC SPL */ -#define CONFIG_SPL #define CONFIG_SKIP_LOWLEVEL_INIT #define COPY_BL2_FNPTR_ADDR 0x00002488 diff --git a/include/configs/socfpga_cyclone5.h b/include/configs/socfpga_cyclone5.h index 262e744..27c2be9 100644 --- a/include/configs/socfpga_cyclone5.h +++ b/include/configs/socfpga_cyclone5.h @@ -223,7 +223,6 @@ */ /* Enable building of SPL globally */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK /* TEXT_BASE for linking the SPL binary */ diff --git a/include/configs/sun4i.h b/include/configs/sun4i.h index 037f995..5611ecc 100644 --- a/include/configs/sun4i.h +++ b/include/configs/sun4i.h @@ -16,6 +16,18 @@ #define CONFIG_SYS_PROMPT "sun4i# " +#ifdef CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_SUNXI + +#define CONFIG_USB_MAX_CONTROLLER_COUNT 2 +#ifndef CONFIG_SUNXI_USB_VBUS0_GPIO +#define CONFIG_SUNXI_USB_VBUS0_GPIO SUNXI_GPH(6) +#endif +#ifndef CONFIG_SUNXI_USB_VBUS1_GPIO +#define CONFIG_SUNXI_USB_VBUS1_GPIO SUNXI_GPH(3) +#endif +#endif + /* * Include common sunxi configuration where most the settings are */ diff --git a/include/configs/sun5i.h b/include/configs/sun5i.h index c6138b7..6066371 100644 --- a/include/configs/sun5i.h +++ b/include/configs/sun5i.h @@ -16,6 +16,11 @@ #define CONFIG_SYS_PROMPT "sun5i# " +#ifdef CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_SUNXI +#define CONFIG_USB_MAX_CONTROLLER_COUNT 1 +#endif + /* * Include common sunxi configuration where most the settings are */ diff --git a/include/configs/sun7i.h b/include/configs/sun7i.h index d9be104..a902b84 100644 --- a/include/configs/sun7i.h +++ b/include/configs/sun7i.h @@ -17,6 +17,25 @@ #define CONFIG_SYS_PROMPT "sun7i# " +#ifdef CONFIG_USB_EHCI +#define CONFIG_USB_EHCI_SUNXI + +#define CONFIG_USB_MAX_CONTROLLER_COUNT 2 +#ifndef CONFIG_SUNXI_USB_VBUS0_GPIO +#define CONFIG_SUNXI_USB_VBUS0_GPIO SUNXI_GPH(6) +#endif +#ifndef CONFIG_SUNXI_USB_VBUS1_GPIO +#define CONFIG_SUNXI_USB_VBUS1_GPIO SUNXI_GPH(3) +#endif +#endif + +#define CONFIG_ARMV7_VIRT 1 +#define CONFIG_ARMV7_NONSEC 1 +#define CONFIG_ARMV7_PSCI 1 +#define CONFIG_ARMV7_PSCI_NR_CPUS 2 +#define CONFIG_ARMV7_SECURE_BASE SUNXI_SRAM_B_BASE +#define CONFIG_SYS_CLK_FREQ 24000000 + /* * Include common sunxi configuration where most the settings are */ diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h index 845b004..6a3044f 100644 --- a/include/configs/sunxi-common.h +++ b/include/configs/sunxi-common.h @@ -57,6 +57,18 @@ #define PHYS_SDRAM_0 CONFIG_SYS_SDRAM_BASE #define PHYS_SDRAM_0_SIZE 0x80000000 /* 2 GiB */ +#ifdef CONFIG_AHCI +#define CONFIG_LIBATA +#define CONFIG_SCSI_AHCI +#define CONFIG_SCSI_AHCI_PLAT +#define CONFIG_SUNXI_AHCI +#define CONFIG_SYS_SCSI_MAX_SCSI_ID 1 +#define CONFIG_SYS_SCSI_MAX_LUN 1 +#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \ + CONFIG_SYS_SCSI_MAX_LUN) +#define CONFIG_CMD_SCSI +#endif + #define CONFIG_CMD_MEMORY #define CONFIG_CMD_SETEXPR @@ -127,7 +139,6 @@ #ifdef CONFIG_SPL_FEL -#define CONFIG_SPL #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/armv7/sunxi/u-boot-spl-fel.lds" #define CONFIG_SPL_START_S_PATH "arch/arm/cpu/armv7/sunxi" #define CONFIG_SPL_TEXT_BASE 0x2000 @@ -204,6 +215,12 @@ #define CONFIG_BOOTP_SEND_HOSTNAME #endif +#ifdef CONFIG_USB_EHCI +#define CONFIG_CMD_USB +#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 1 +#define CONFIG_USB_STORAGE +#endif + #if !defined CONFIG_ENV_IS_IN_MMC && \ !defined CONFIG_ENV_IS_IN_NAND && \ !defined CONFIG_ENV_IS_IN_FAT && \ diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h index aa0ea16..e1fc754 100644 --- a/include/configs/tam3517-common.h +++ b/include/configs/tam3517-common.h @@ -215,7 +215,6 @@ #define CONFIG_NET_RETRY_COUNT 10 /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_BOARD_INIT #define CONFIG_SPL_CONSOLE diff --git a/include/configs/tao3530.h b/include/configs/tao3530.h index 9fc31be..174bfe5 100644 --- a/include/configs/tao3530.h +++ b/include/configs/tao3530.h @@ -301,7 +301,6 @@ #define CONGIG_CMD_STORAGE /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_NAND_SIMPLE diff --git a/include/configs/tegra-common.h b/include/configs/tegra-common.h index 3b88a83..717cd61 100644 --- a/include/configs/tegra-common.h +++ b/include/configs/tegra-common.h @@ -131,7 +131,6 @@ #define CONFIG_CMD_ENTERRCM /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_RAM_DEVICE #define CONFIG_SPL_BOARD_INIT diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h index b51400c..a55bde2 100644 --- a/include/configs/ti814x_evm.h +++ b/include/configs/ti814x_evm.h @@ -168,7 +168,6 @@ #define CONFIG_ENV_IS_NOWHERE /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_TEXT_BASE 0x40300000 #define CONFIG_SPL_MAX_SIZE ((128 - 18) * 1024) diff --git a/include/configs/ti816x_evm.h b/include/configs/ti816x_evm.h index b8c0d54..e86c364 100644 --- a/include/configs/ti816x_evm.h +++ b/include/configs/ti816x_evm.h @@ -134,7 +134,6 @@ /* SPL */ /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_TEXT_BASE 0x40400000 #define CONFIG_SPL_MAX_SIZE ((128 - 18) * 1024) diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h index 85c027c..26ac251 100644 --- a/include/configs/ti_armv7_common.h +++ b/include/configs/ti_armv7_common.h @@ -198,7 +198,6 @@ */ #if !defined(CONFIG_NOR_BOOT) && \ !(defined(CONFIG_QSPI_BOOT) && defined(CONFIG_AM43XX)) -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_OS_BOOT diff --git a/include/configs/tricorder.h b/include/configs/tricorder.h index 6c2f653..cc0d172 100644 --- a/include/configs/tricorder.h +++ b/include/configs/tricorder.h @@ -331,7 +331,6 @@ #define CONFIG_SYS_SRAM_SIZE 0x10000 /* Defines for SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_NAND_SIMPLE diff --git a/include/configs/tx25.h b/include/configs/tx25.h index 5ac6e64..118f5ba 100644 --- a/include/configs/tx25.h +++ b/include/configs/tx25.h @@ -21,7 +21,6 @@ #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* 256 kB for U-Boot */ -#define CONFIG_SPL #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" #define CONFIG_SPL_MAX_SIZE 2048 diff --git a/include/configs/vpac270.h b/include/configs/vpac270.h index c6d4763..2fb91a8 100644 --- a/include/configs/vpac270.h +++ b/include/configs/vpac270.h @@ -17,7 +17,6 @@ #define CONFIG_SYS_TEXT_BASE 0xa0000000 #ifdef CONFIG_ONENAND -#define CONFIG_SPL #define CONFIG_SPL_ONENAND_SUPPORT #define CONFIG_SPL_ONENAND_LOAD_ADDR 0x2000 #define CONFIG_SPL_ONENAND_LOAD_SIZE \ diff --git a/include/configs/woodburn_sd.h b/include/configs/woodburn_sd.h index 437472f..25bfeef 100644 --- a/include/configs/woodburn_sd.h +++ b/include/configs/woodburn_sd.h @@ -20,7 +20,6 @@ /* * SPL */ -#define CONFIG_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm1136/u-boot-spl.lds" #define CONFIG_SPL_LIBCOMMON_SUPPORT diff --git a/include/configs/x600.h b/include/configs/x600.h index eae85d6..71373e9 100644 --- a/include/configs/x600.h +++ b/include/configs/x600.h @@ -274,7 +274,6 @@ /* * SPL related defines */ -#define CONFIG_SPL #define CONFIG_SPL_TEXT_BASE 0xd2800b00 #define CONFIG_SPL_START_S_PATH "arch/arm/cpu/arm926ejs/spear" #define CONFIG_SPL_LDSCRIPT "arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds" diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h index 690cacb..d57e9d5 100644 --- a/include/configs/zynq-common.h +++ b/include/configs/zynq-common.h @@ -257,7 +257,6 @@ #define CONFIG_CMD_TFTPPUT /* SPL part */ -#define CONFIG_SPL #define CONFIG_CMD_SPL #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_LIBCOMMON_SUPPORT diff --git a/include/environment.h b/include/environment.h index 08679ae..1fdbdad 100644 --- a/include/environment.h +++ b/include/environment.h @@ -180,6 +180,15 @@ extern unsigned char env_get_char_spec(int); extern void env_reloc(void); #endif +#ifdef CONFIG_ENV_IS_IN_MMC +#include <mmc.h> + +extern int mmc_get_env_addr(struct mmc *mmc, int copy, u32 *env_addr); +# ifdef CONFIG_SYS_MMC_ENV_PART +extern uint mmc_get_env_part(struct mmc *mmc); +# endif +#endif + #ifndef DO_DEPS_ONLY #include <env_attr.h> diff --git a/include/fsl_ifc.h b/include/fsl_ifc.h index 630e4b4..11474b7 100644 --- a/include/fsl_ifc.h +++ b/include/fsl_ifc.h @@ -12,6 +12,8 @@ #include <config.h> #include <common.h> +#define FSL_IFC_V1_1_0 0x01010000 +#define FSL_IFC_V2_0_0 0x02000000 #ifdef CONFIG_SYS_FSL_IFC_LE #define ifc_in32(a) in_le32(a) @@ -367,6 +369,8 @@ */ /* Auto Boot Mode */ #define IFC_NAND_NCFGR_BOOT 0x80000000 +/* SRAM INIT EN */ +#define IFC_NAND_SRAM_INIT_EN 0x20000000 /* Addressing Mode-ROW0+n/COL0 */ #define IFC_NAND_NCFGR_ADDR_MODE_RC0 0x00000000 /* Addressing Mode-ROW0+n/COL0+n */ diff --git a/arch/powerpc/include/asm/immap_qe.h b/include/linux/immap_qe.h index b317dcb..b317dcb 100644 --- a/arch/powerpc/include/asm/immap_qe.h +++ b/include/linux/immap_qe.h diff --git a/include/linux/kconfig.h b/include/linux/kconfig.h new file mode 100644 index 0000000..be342b9 --- /dev/null +++ b/include/linux/kconfig.h @@ -0,0 +1,46 @@ +#ifndef __LINUX_KCONFIG_H +#define __LINUX_KCONFIG_H + +#include <generated/autoconf.h> + +/* + * Helper macros to use CONFIG_ options in C/CPP expressions. Note that + * these only work with boolean and tristate options. + */ + +/* + * Getting something that works in C and CPP for an arg that may or may + * not be defined is tricky. Here, if we have "#define CONFIG_BOOGER 1" + * we match on the placeholder define, insert the "0," for arg1 and generate + * the triplet (0, 1, 0). Then the last step cherry picks the 2nd arg (a one). + * When CONFIG_BOOGER is not defined, we generate a (... 1, 0) pair, and when + * the last step cherry picks the 2nd arg, we get a zero. + */ +#define __ARG_PLACEHOLDER_1 0, +#define config_enabled(cfg) _config_enabled(cfg) +#define _config_enabled(value) __config_enabled(__ARG_PLACEHOLDER_##value) +#define __config_enabled(arg1_or_junk) ___config_enabled(arg1_or_junk 1, 0) +#define ___config_enabled(__ignored, val, ...) val + +/* + * IS_ENABLED(CONFIG_FOO) evaluates to 1 if CONFIG_FOO is set to 'y' or 'm', + * 0 otherwise. + * + */ +#define IS_ENABLED(option) \ + (config_enabled(option) || config_enabled(option##_MODULE)) + +/* + * IS_BUILTIN(CONFIG_FOO) evaluates to 1 if CONFIG_FOO is set to 'y', 0 + * otherwise. For boolean options, this is equivalent to + * IS_ENABLED(CONFIG_FOO). + */ +#define IS_BUILTIN(option) config_enabled(option) + +/* + * IS_MODULE(CONFIG_FOO) evaluates to 1 if CONFIG_FOO is set to 'm', 0 + * otherwise. + */ +#define IS_MODULE(option) config_enabled(option##_MODULE) + +#endif /* __LINUX_KCONFIG_H */ diff --git a/include/mvebu_mmc.h b/include/mvebu_mmc.h new file mode 100644 index 0000000..28d98fe --- /dev/null +++ b/include/mvebu_mmc.h @@ -0,0 +1,278 @@ +/* + * Marvell MMC/SD/SDIO driver + * + * (C) Copyright 2012 + * Marvell Semiconductor <www.marvell.com> + * Written-by: Maen Suleiman, Gerald Kerma + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef __MVEBU_MMC_H__ +#define __MVEBU_MMC_H__ + +/* needed for the mmc_cfg definition */ +#include <mmc.h> + +#define MMC_BLOCK_SIZE 512 + +/* + * Clock rates + */ + +#define MVEBU_MMC_CLOCKRATE_MAX 50000000 +#define MVEBU_MMC_BASE_DIV_MAX 0x7ff +#define MVEBU_MMC_BASE_FAST_CLOCK CONFIG_SYS_TCLK +#define MVEBU_MMC_BASE_FAST_CLK_100 100000000 +#define MVEBU_MMC_BASE_FAST_CLK_200 200000000 + +/* SDIO register */ +#define SDIO_SYS_ADDR_LOW 0x000 +#define SDIO_SYS_ADDR_HI 0x004 +#define SDIO_BLK_SIZE 0x008 +#define SDIO_BLK_COUNT 0x00c +#define SDIO_ARG_LOW 0x010 +#define SDIO_ARG_HI 0x014 +#define SDIO_XFER_MODE 0x018 +#define SDIO_CMD 0x01c +#define SDIO_RSP(i) (0x020 + ((i)<<2)) +#define SDIO_RSP0 0x020 +#define SDIO_RSP1 0x024 +#define SDIO_RSP2 0x028 +#define SDIO_RSP3 0x02c +#define SDIO_RSP4 0x030 +#define SDIO_RSP5 0x034 +#define SDIO_RSP6 0x038 +#define SDIO_RSP7 0x03c +#define SDIO_BUF_DATA_PORT 0x040 +#define SDIO_RSVED 0x044 +#define SDIO_HW_STATE 0x048 +#define SDIO_PRESENT_STATE0 0x048 +#define SDIO_PRESENT_STATE1 0x04c +#define SDIO_HOST_CTRL 0x050 +#define SDIO_BLK_GAP_CTRL 0x054 +#define SDIO_CLK_CTRL 0x058 +#define SDIO_SW_RESET 0x05c +#define SDIO_NOR_INTR_STATUS 0x060 +#define SDIO_ERR_INTR_STATUS 0x064 +#define SDIO_NOR_STATUS_EN 0x068 +#define SDIO_ERR_STATUS_EN 0x06c +#define SDIO_NOR_INTR_EN 0x070 +#define SDIO_ERR_INTR_EN 0x074 +#define SDIO_AUTOCMD12_ERR_STATUS 0x078 +#define SDIO_CURR_BYTE_LEFT 0x07c +#define SDIO_CURR_BLK_LEFT 0x080 +#define SDIO_AUTOCMD12_ARG_LOW 0x084 +#define SDIO_AUTOCMD12_ARG_HI 0x088 +#define SDIO_AUTOCMD12_INDEX 0x08c +#define SDIO_AUTO_RSP(i) (0x090 + ((i)<<2)) +#define SDIO_AUTO_RSP0 0x090 +#define SDIO_AUTO_RSP1 0x094 +#define SDIO_AUTO_RSP2 0x098 +#define SDIO_CLK_DIV 0x128 + +#define WINDOW_CTRL(i) (0x108 + ((i) << 3)) +#define WINDOW_BASE(i) (0x10c + ((i) << 3)) + +/* SDIO_PRESENT_STATE */ +#define CARD_BUSY (1 << 1) +#define CMD_INHIBIT (1 << 0) +#define CMD_TXACTIVE (1 << 8) +#define CMD_RXACTIVE (1 << 9) +#define CMD_AUTOCMD12ACTIVE (1 << 14) +#define CMD_BUS_BUSY (CMD_AUTOCMD12ACTIVE | \ + CMD_RXACTIVE | \ + CMD_TXACTIVE | \ + CMD_INHIBIT | \ + CARD_BUSY) + +/* + * SDIO_CMD + */ + +#define SDIO_CMD_RSP_NONE (0 << 0) +#define SDIO_CMD_RSP_136 (1 << 0) +#define SDIO_CMD_RSP_48 (2 << 0) +#define SDIO_CMD_RSP_48BUSY (3 << 0) + +#define SDIO_CMD_CHECK_DATACRC16 (1 << 2) +#define SDIO_CMD_CHECK_CMDCRC (1 << 3) +#define SDIO_CMD_INDX_CHECK (1 << 4) +#define SDIO_CMD_DATA_PRESENT (1 << 5) +#define SDIO_UNEXPECTED_RESP (1 << 7) + +#define SDIO_CMD_INDEX(x) ((x) << 8) + +/* + * SDIO_XFER_MODE + */ + +#define SDIO_XFER_MODE_STOP_CLK (1 << 5) +#define SDIO_XFER_MODE_HW_WR_DATA_EN (1 << 1) +#define SDIO_XFER_MODE_AUTO_CMD12 (1 << 2) +#define SDIO_XFER_MODE_INT_CHK_EN (1 << 3) +#define SDIO_XFER_MODE_TO_HOST (1 << 4) +#define SDIO_XFER_MODE_DMA (0 << 6) + +/* + * SDIO_HOST_CTRL + */ + +#define SDIO_HOST_CTRL_PUSH_PULL_EN (1 << 0) + +#define SDIO_HOST_CTRL_CARD_TYPE_MEM_ONLY (0 << 1) +#define SDIO_HOST_CTRL_CARD_TYPE_IO_ONLY (1 << 1) +#define SDIO_HOST_CTRL_CARD_TYPE_IO_MEM_COMBO (2 << 1) +#define SDIO_HOST_CTRL_CARD_TYPE_IO_MMC (3 << 1) +#define SDIO_HOST_CTRL_CARD_TYPE_MASK (3 << 1) + +#define SDIO_HOST_CTRL_BIG_ENDIAN (1 << 3) +#define SDIO_HOST_CTRL_LSB_FIRST (1 << 4) +#define SDIO_HOST_CTRL_DATA_WIDTH_1_BIT (0 << 9) +#define SDIO_HOST_CTRL_DATA_WIDTH_4_BITS (1 << 9) +#define SDIO_HOST_CTRL_HI_SPEED_EN (1 << 10) + +#define SDIO_HOST_CTRL_TMOUT_MAX 0xf +#define SDIO_HOST_CTRL_TMOUT_MASK (0xf << 11) +#define SDIO_HOST_CTRL_TMOUT(x) ((x) << 11) +#define SDIO_HOST_CTRL_TMOUT_EN (1 << 15) + +/* + * SDIO_SW_RESET + */ + +#define SDIO_SW_RESET_NOW (1 << 8) + +/* + * Normal interrupt status bits + */ + +#define SDIO_NOR_ERROR (1 << 15) +#define SDIO_NOR_UNEXP_RSP (1 << 14) +#define SDIO_NOR_AUTOCMD12_DONE (1 << 13) +#define SDIO_NOR_SUSPEND_ON (1 << 12) +#define SDIO_NOR_LMB_FF_8W_AVAIL (1 << 11) +#define SDIO_NOR_LMB_FF_8W_FILLED (1 << 10) +#define SDIO_NOR_READ_WAIT_ON (1 << 9) +#define SDIO_NOR_CARD_INT (1 << 8) +#define SDIO_NOR_READ_READY (1 << 5) +#define SDIO_NOR_WRITE_READY (1 << 4) +#define SDIO_NOR_DMA_INI (1 << 3) +#define SDIO_NOR_BLK_GAP_EVT (1 << 2) +#define SDIO_NOR_XFER_DONE (1 << 1) +#define SDIO_NOR_CMD_DONE (1 << 0) + +/* + * Error status bits + */ + +#define SDIO_ERR_CRC_STATUS (1 << 14) +#define SDIO_ERR_CRC_STARTBIT (1 << 13) +#define SDIO_ERR_CRC_ENDBIT (1 << 12) +#define SDIO_ERR_RESP_TBIT (1 << 11) +#define SDIO_ERR_XFER_SIZE (1 << 10) +#define SDIO_ERR_CMD_STARTBIT (1 << 9) +#define SDIO_ERR_AUTOCMD12 (1 << 8) +#define SDIO_ERR_DATA_ENDBIT (1 << 6) +#define SDIO_ERR_DATA_CRC (1 << 5) +#define SDIO_ERR_DATA_TIMEOUT (1 << 4) +#define SDIO_ERR_CMD_INDEX (1 << 3) +#define SDIO_ERR_CMD_ENDBIT (1 << 2) +#define SDIO_ERR_CMD_CRC (1 << 1) +#define SDIO_ERR_CMD_TIMEOUT (1 << 0) +/* enable all for polling */ +#define SDIO_POLL_MASK 0xffff + +/* + * CMD12 error status bits + */ + +#define SDIO_AUTOCMD12_ERR_NOTEXE (1 << 0) +#define SDIO_AUTOCMD12_ERR_TIMEOUT (1 << 1) +#define SDIO_AUTOCMD12_ERR_CRC (1 << 2) +#define SDIO_AUTOCMD12_ERR_ENDBIT (1 << 3) +#define SDIO_AUTOCMD12_ERR_INDEX (1 << 4) +#define SDIO_AUTOCMD12_ERR_RESP_T_BIT (1 << 5) +#define SDIO_AUTOCMD12_ERR_RESP_STARTBIT (1 << 6) + +#define MMC_RSP_PRESENT (1 << 0) +/* 136 bit response */ +#define MMC_RSP_136 (1 << 1) +/* expect valid crc */ +#define MMC_RSP_CRC (1 << 2) +/* card may send busy */ +#define MMC_RSP_BUSY (1 << 3) +/* response contains opcode */ +#define MMC_RSP_OPCODE (1 << 4) + +#define MMC_BUSMODE_OPENDRAIN 1 +#define MMC_BUSMODE_PUSHPULL 2 + +#define MMC_BUS_WIDTH_1 0 +#define MMC_BUS_WIDTH_4 2 +#define MMC_BUS_WIDTH_8 3 + +/* Can the host do 4 bit transfers */ +#define MMC_CAP_4_BIT_DATA (1 << 0) +/* Can do MMC high-speed timing */ +#define MMC_CAP_MMC_HIGHSPEED (1 << 1) +/* Can do SD high-speed timing */ +#define MMC_CAP_SD_HIGHSPEED (1 << 2) +/* Can signal pending SDIO IRQs */ +#define MMC_CAP_SDIO_IRQ (1 << 3) +/* Talks only SPI protocols */ +#define MMC_CAP_SPI (1 << 4) +/* Needs polling for card-detection */ +#define MMC_CAP_NEEDS_POLL (1 << 5) +/* Can the host do 8 bit transfers */ +#define MMC_CAP_8_BIT_DATA (1 << 6) + +/* Nonremovable e.g. eMMC */ +#define MMC_CAP_NONREMOVABLE (1 << 8) +/* Waits while card is busy */ +#define MMC_CAP_WAIT_WHILE_BUSY (1 << 9) +/* Allow erase/trim commands */ +#define MMC_CAP_ERASE (1 << 10) +/* can support DDR mode at 1.8V */ +#define MMC_CAP_1_8V_DDR (1 << 11) +/* can support DDR mode at 1.2V */ +#define MMC_CAP_1_2V_DDR (1 << 12) +/* Can power off after boot */ +#define MMC_CAP_POWER_OFF_CARD (1 << 13) +/* CMD14/CMD19 bus width ok */ +#define MMC_CAP_BUS_WIDTH_TEST (1 << 14) +/* Host supports UHS SDR12 mode */ +#define MMC_CAP_UHS_SDR12 (1 << 15) +/* Host supports UHS SDR25 mode */ +#define MMC_CAP_UHS_SDR25 (1 << 16) +/* Host supports UHS SDR50 mode */ +#define MMC_CAP_UHS_SDR50 (1 << 17) +/* Host supports UHS SDR104 mode */ +#define MMC_CAP_UHS_SDR104 (1 << 18) +/* Host supports UHS DDR50 mode */ +#define MMC_CAP_UHS_DDR50 (1 << 19) +/* Host supports Driver Type A */ +#define MMC_CAP_DRIVER_TYPE_A (1 << 23) +/* Host supports Driver Type C */ +#define MMC_CAP_DRIVER_TYPE_C (1 << 24) +/* Host supports Driver Type D */ +#define MMC_CAP_DRIVER_TYPE_D (1 << 25) +/* CMD23 supported. */ +#define MMC_CAP_CMD23 (1 << 30) +/* Hardware reset */ +#define MMC_CAP_HW_RESET (1 << 31) + +struct mvebu_mmc_cfg { + u32 mvebu_mmc_base; + u32 mvebu_mmc_clk; + u8 max_bus_width; + struct mmc_config cfg; +}; + +/* + * Functions prototypes + */ + +int mvebu_mmc_init(bd_t *bis); + +#endif /* __MVEBU_MMC_H__ */ diff --git a/include/phy.h b/include/phy.h index d3ecd63..2fcc328 100644 --- a/include/phy.h +++ b/include/phy.h @@ -1,6 +1,6 @@ /* * Copyright 2011 Freescale Semiconductor, Inc. - * Andy Fleming <afleming@freescale.com> + * Andy Fleming <afleming@gmail.com> * * SPDX-License-Identifier: GPL-2.0+ * diff --git a/include/post.h b/include/post.h index 24ca728..5ebd535 100644 --- a/include/post.h +++ b/include/post.h @@ -38,7 +38,7 @@ #define _POST_WORD_ADDR (CONFIG_SYS_IMMR + CPM_POST_WORD_ADDR) #elif defined(CONFIG_MPC8360) -#include <asm/immap_qe.h> +#include <linux/immap_qe.h> #define _POST_WORD_ADDR (CONFIG_SYS_IMMR + CPM_POST_WORD_ADDR) #elif defined (CONFIG_MPC85xx) diff --git a/include/watchdog.h b/include/watchdog.h index aacacb9..bd0a8d6 100644 --- a/include/watchdog.h +++ b/include/watchdog.h @@ -95,4 +95,8 @@ int init_func_watchdog_reset(void); #if defined(CONFIG_HW_WATCHDOG) && !defined(__ASSEMBLY__) void hw_watchdog_init(void); #endif + +#if defined(CONFIG_MPC85xx) && !defined(__ASSEMBLY__) + void init_85xx_watchdog(void); +#endif #endif /* _WATCHDOG_H_ */ diff --git a/mkconfig b/mkconfig deleted file mode 100755 index 84f5a77..0000000 --- a/mkconfig +++ /dev/null @@ -1,186 +0,0 @@ -#!/bin/sh -e - -# Script to create header files and links to configure -# U-Boot for a specific board. -# -# Parameters: Target Architecture CPU Board [VENDOR] [SOC] -# -# (C) 2002-2013 DENX Software Engineering, Wolfgang Denk <wd@denx.de> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -APPEND=no # Default: Create new config file -BOARD_NAME="" # Name to print in make output -TARGETS="" - -arch="" -cpu="" -board="" -vendor="" -soc="" -options="" - -if [ \( $# -eq 2 \) -a \( "$1" = "-A" \) ] ; then - # Automatic mode - line=`awk '($0 !~ /^#/ && $7 ~ /^'"$2"'$/) { print $1, $2, $3, $4, $5, $6, $7, $8 }' $srctree/boards.cfg` - if [ -z "$line" ] ; then - echo "make: *** No rule to make target \`$2_config'. Stop." >&2 - exit 1 - fi - - set ${line} - # add default board name if needed - [ $# = 3 ] && set ${line} ${1} -fi - -while [ $# -gt 0 ] ; do - case "$1" in - --) shift ; break ;; - -a) shift ; APPEND=yes ;; - -n) shift ; BOARD_NAME="${7%_config}" ; shift ;; - -t) shift ; TARGETS="`echo $1 | sed 's:_: :g'` ${TARGETS}" ; shift ;; - *) break ;; - esac -done - -[ $# -lt 7 ] && exit 1 -[ $# -gt 8 ] && exit 1 - -# Strip all options and/or _config suffixes -CONFIG_NAME="${7%_config}" - -[ "${BOARD_NAME}" ] || BOARD_NAME="${7%_config}" - -arch="$2" -cpu=`echo $3 | awk 'BEGIN {FS = ":"} ; {print $1}'` -spl_cpu=`echo $3 | awk 'BEGIN {FS = ":"} ; {print $2}'` - -if [ "$cpu" = "-" ] ; then - cpu= -fi - -[ "$6" != "-" ] && board="$6" -[ "$5" != "-" ] && vendor="$5" -[ "$4" != "-" ] && soc="$4" -[ $# -gt 7 ] && [ "$8" != "-" ] && { - # check if we have a board config name in the options field - # the options field mave have a board config name and a list - # of options, both separated by a colon (':'); the options are - # separated by commas (','). - # - # Check for board name - tmp="${8%:*}" - if [ "$tmp" ] ; then - CONFIG_NAME="$tmp" - fi - # Check if we only have a colon... - if [ "${tmp}" != "$8" ] ; then - options=${8#*:} - TARGETS="`echo ${options} | sed 's:,: :g'` ${TARGETS}" - fi -} - -if [ "${ARCH}" -a "${ARCH}" != "${arch}" ]; then - echo "Failed: \$ARCH=${ARCH}, should be '${arch}' for ${BOARD_NAME}" 1>&2 - exit 1 -fi - -# -# Test above needed aarch64, now we need arm -# -if [ "${arch}" = "aarch64" ]; then - arch="arm" -fi - -if [ "$options" ] ; then - echo "Configuring for ${BOARD_NAME} - Board: ${CONFIG_NAME}, Options: ${options}" -else - echo "Configuring for ${BOARD_NAME} board..." -fi - -# -# Create link to architecture specific headers -# -if [ -n "$KBUILD_SRC" ] ; then - mkdir -p ${objtree}/include - LNPREFIX=${srctree}/arch/${arch}/include/asm/ - cd ${objtree}/include - mkdir -p asm -else - cd arch/${arch}/include -fi - -rm -f asm/arch - -if [ "${soc}" ] ; then - ln -s ${LNPREFIX}arch-${soc} asm/arch -elif [ "${cpu}" ] ; then - ln -s ${LNPREFIX}arch-${cpu} asm/arch -fi - -if [ -z "$KBUILD_SRC" ] ; then - cd ${srctree}/include -fi - -# -# Create include file for Make -# -( echo "ARCH = ${arch}" - if [ ! -z "$spl_cpu" ] ; then - echo 'ifeq ($(CONFIG_SPL_BUILD),y)' - echo "CPU = ${spl_cpu}" - echo "else" - echo "CPU = ${cpu}" - echo "endif" - else - echo "CPU = ${cpu}" - fi - echo "BOARD = ${board}" - - [ "${vendor}" ] && echo "VENDOR = ${vendor}" - [ "${soc}" ] && echo "SOC = ${soc}" - exit 0 ) > config.mk - -# Assign board directory to BOARDIR variable -if [ -z "${vendor}" ] ; then - BOARDDIR=${board} -else - BOARDDIR=${vendor}/${board} -fi - -# -# Create board specific header file -# -if [ "$APPEND" = "yes" ] # Append to existing config file -then - echo >> config.h -else - > config.h # Create new config file -fi -echo "/* Automatically generated - do not edit */" >>config.h - -for i in ${TARGETS} ; do - i="`echo ${i} | sed '/=/ {s/=/ /;q; } ; { s/$/ 1/; }'`" - echo "#define CONFIG_${i}" >>config.h ; -done - -echo "#define CONFIG_SYS_ARCH \"${arch}\"" >> config.h -echo "#define CONFIG_SYS_CPU \"${cpu}\"" >> config.h -echo "#define CONFIG_SYS_BOARD \"${board}\"" >> config.h - -[ "${vendor}" ] && echo "#define CONFIG_SYS_VENDOR \"${vendor}\"" >> config.h - -[ "${soc}" ] && echo "#define CONFIG_SYS_SOC \"${soc}\"" >> config.h - -[ "${board}" ] && echo "#define CONFIG_BOARDDIR board/$BOARDDIR" >> config.h -cat << EOF >> config.h -#include <config_cmd_defaults.h> -#include <config_defaults.h> -#include <configs/${CONFIG_NAME}.h> -#include <asm/config.h> -#include <config_fallbacks.h> -#include <config_uncmd_spl.h> -EOF - -exit 0 diff --git a/scripts/Makefile b/scripts/Makefile index 68c998e..efe25bf 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -13,4 +13,4 @@ build_docproc: $(obj)/docproc @: # Let clean descend into subdirs -subdir- += basic +subdir- += basic kconfig diff --git a/scripts/Makefile.autoconf b/scripts/Makefile.autoconf new file mode 100644 index 0000000..44c3997 --- /dev/null +++ b/scripts/Makefile.autoconf @@ -0,0 +1,100 @@ +# This helper makefile is used for creating +# - symbolic links (arch/$ARCH/include/asm/arch +# - include/autoconf.mk, {spl,tpl}/include/autoconf.mk +# - include/config.h +# +# When our migration to Kconfig is done +# (= When we move all CONFIGs from header files to Kconfig) +# this makefile can be deleted. + +# obj is "include" or "spl/include" or "tpl/include" +# for non-SPL, SPL, TPL, respectively +include $(obj)/config/auto.conf + +include scripts/Kbuild.include + +# Need to define CC and CPP again here in case the top Makefile did not +# include config.mk. Some architectures expect CROSS_COMPILE to be defined +# in arch/$(ARCH)/config.mk +CC = $(CROSS_COMPILE)gcc +CPP = $(CC) -E + +include config.mk + +UBOOTINCLUDE := \ + -I$(obj) \ + -Iinclude \ + $(if $(KBUILD_SRC), -I$(srctree)/include) \ + -I$(srctree)/arch/$(ARCH)/include \ + -include $(srctree)/include/linux/kconfig.h + +c_flags := $(KBUILD_CFLAGS) $(KBUILD_CPPFLAGS) $(PLATFORM_CPPFLAGS) \ + $(UBOOTINCLUDE) $(NOSTDINC_FLAGS) + +quiet_cmd_autoconf_dep = GEN $@ + cmd_autoconf_dep = $(CC) -x c -DDO_DEPS_ONLY -M -MP $(c_flags) \ + -MQ include/config/auto.conf $(srctree)/include/common.h > $@ || { \ + rm $@; false; \ + } +include/autoconf.mk.dep: FORCE + $(call cmd,autoconf_dep) + +# We are migrating from board headers to Kconfig little by little. +# In the interim, we use both of +# - include/config/auto.conf (generated by Kconfig) +# - include/autoconf.mk (used in the U-Boot conventional configuration) +# The following rule creates autoconf.mk +# include/config/auto.conf is grepped in order to avoid duplication of the +# same CONFIG macros +quiet_cmd_autoconf = GEN $@ + cmd_autoconf = \ + $(CPP) $(c_flags) -DDO_DEPS_ONLY -dM $(srctree)/include/common.h > $@.tmp && { \ + sed -n -f $(srctree)/tools/scripts/define2mk.sed $@.tmp | \ + while read line; do \ + if ! grep -q "$${line%=*}=" $(obj)/config/auto.conf; then \ + echo "$$line"; \ + fi \ + done > $@; \ + rm $@.tmp; \ + } || { \ + rm $@.tmp; false; \ + } + +$(obj)/autoconf.mk: FORCE + $(call cmd,autoconf) + +include/autoconf.mk include/autoconf.mk.dep: include/config.h + +# include/config.h +# Prior to Kconfig, it was generated by mkconfig. Now it is created here. +define filechk_config_h + (echo "/* Automatically generated - do not edit */"; \ + for i in $$(echo $(CONFIG_SYS_EXTRA_OPTIONS) | sed 's/,/ /g'); do \ + echo \#define CONFIG_$$i \ + | sed '/=/ {s/=/ /;q; } ; { s/$$/ 1/; }'; \ + done; \ + echo \#define CONFIG_BOARDDIR board/$(if $(VENDOR),$(VENDOR)/)$(BOARD);\ + echo \#include \<config_cmd_defaults.h\>; \ + echo \#include \<config_defaults.h\>; \ + echo \#include \<configs/$(CONFIG_SYS_CONFIG_NAME).h\>; \ + echo \#include \<asm/config.h\>; \ + echo \#include \<config_fallbacks.h\>; \ + echo \#include \<config_uncmd_spl.h\>; ) +endef + +include/config.h: scripts/Makefile.autoconf create_symlink FORCE + $(call filechk,config_h) + +# symbolic links +PHONY += create_symlink +create_symlink: +ifneq ($(KBUILD_SRC),) + $(Q)mkdir -p include/asm +endif + $(Q)ln -fsn $(srctree)/arch/$(ARCH)/include/asm/arch-$(if $(SOC),$(SOC),$(CPU)) \ + $(if $(KBUILD_SRC),,arch/$(ARCH)/)include/asm/arch + +PHONY += FORCE +FORCE: + +.PHONY: $(PHONY) diff --git a/scripts/Makefile.build b/scripts/Makefile.build index 04c6f7d..baeaabe 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build @@ -3,14 +3,14 @@ # ========================================================================== # Modified for U-Boot -ifeq ($(CONFIG_TPL_BUILD),y) - src := $(patsubst tpl/%,%,$(obj)) -else - ifeq ($(CONFIG_SPL_BUILD),y) - src := $(patsubst spl/%,%,$(obj)) - else - src := $(obj) - endif +prefix := tpl +src := $(patsubst $(prefix)/%,%,$(obj)) +ifeq ($(obj),$(src)) +prefix := spl +src := $(patsubst $(prefix)/%,%,$(obj)) +ifeq ($(obj),$(src)) +prefix := . +endif endif PHONY := __build @@ -40,18 +40,9 @@ subdir-asflags-y := subdir-ccflags-y := # Read auto.conf if it exists, otherwise ignore --include include/config/auto.conf - -# Added for U-Boot: Load U-Boot configuration -ifeq ($(CONFIG_TPL_BUILD),y) - -include include/tpl-autoconf.mk -else - ifeq ($(CONFIG_SPL_BUILD),y) - -include include/spl-autoconf.mk - else - -include include/autoconf.mk - endif -endif +# Modified for U-Boot +-include $(prefix)/include/config/auto.conf +-include $(prefix)/include/autoconf.mk include scripts/Kbuild.include diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index bf677aa..88c01d1 100644 --- a/scripts/Makefile.spl +++ b/scripts/Makefile.spl @@ -21,13 +21,10 @@ _dummy := $(shell [ -d $(obj) ] || mkdir -p $(obj)) include $(srctree)/scripts/Kbuild.include -CONFIG_SPL_BUILD := y -export CONFIG_SPL_BUILD +UBOOTINCLUDE := -I$(obj)/include $(UBOOTINCLUDE) -KBUILD_CPPFLAGS += -DCONFIG_SPL_BUILD -ifeq ($(CONFIG_TPL_BUILD),y) -KBUILD_CPPFLAGS += -DCONFIG_TPL_BUILD -endif +-include $(obj)/include/config/auto.conf +-include $(obj)/include/autoconf.mk ifeq ($(CONFIG_TPL_BUILD),y) export CONFIG_TPL_BUILD @@ -36,14 +33,6 @@ else SPL_BIN := u-boot-spl endif -include include/config.mk - -ifeq ($(CONFIG_TPL_BUILD),y) - -include include/tpl-autoconf.mk -else - -include include/spl-autoconf.mk -endif - include $(srctree)/config.mk # Enable garbage collection of un-used sections for SPL @@ -53,20 +42,6 @@ LDFLAGS_FINAL += --gc-sections # FIX ME cpp_flags := $(KBUILD_CPPFLAGS) $(PLATFORM_CPPFLAGS) $(UBOOTINCLUDE) \ $(NOSTDINC_FLAGS) -c_flags := $(KBUILD_CFLAGS) $(cpp_flags) - -# Auto-generate the spl-autoconf.mk file (which is included by all makefiles for SPL) -quiet_cmd_autoconf = GEN $@ - cmd_autoconf = \ - $(CPP) $(c_flags) -DDO_DEPS_ONLY -dM $(srctree)/include/common.h > $@.tmp && \ - sed -n -f $(srctree)/tools/scripts/define2mk.sed $@.tmp > $@; \ - rm $@.tmp - -include/tpl-autoconf.mk: include/config.h - $(call cmd,autoconf) - -include/spl-autoconf.mk: include/config.h - $(call cmd,autoconf) HAVE_VENDOR_COMMON_LIB = $(if $(wildcard $(srctree)/board/$(VENDOR)/common/Makefile),y,n) diff --git a/scripts/basic/fixdep.c b/scripts/basic/fixdep.c index b304068..1a41723 100644 --- a/scripts/basic/fixdep.c +++ b/scripts/basic/fixdep.c @@ -221,7 +221,11 @@ static void use_config(const char *m, int slen) define_config(m, slen, hash); - printf(" $(wildcard include/config/"); + /* printf(" $(wildcard include/config/"); */ + /* modified for U-Boot */ + printf(" $(wildcard %sinclude/config/", + strncmp(depfile, "spl/", 4) ? + (strncmp(depfile, "tpl/", 4) ? "" : "tpl/") : "spl/"); for (i = 0; i < slen; i++) { c = m[i]; if (c == '_') diff --git a/scripts/kconfig/.gitignore b/scripts/kconfig/.gitignore new file mode 100644 index 0000000..be603c4 --- /dev/null +++ b/scripts/kconfig/.gitignore @@ -0,0 +1,22 @@ +# +# Generated files +# +config* +*.lex.c +*.tab.c +*.tab.h +zconf.hash.c +*.moc +gconf.glade.h +*.pot +*.mo + +# +# configuration programs +# +conf +mconf +nconf +qconf +gconf +kxgettext diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile new file mode 100644 index 0000000..9c4d241 --- /dev/null +++ b/scripts/kconfig/Makefile @@ -0,0 +1,321 @@ +# =========================================================================== +# Kernel configuration targets +# These targets are used from top-level makefile + +PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config \ + localmodconfig localyesconfig + +ifdef KBUILD_KCONFIG +Kconfig := $(KBUILD_KCONFIG) +else +Kconfig := Kconfig +endif + +# We need this, in case the user has it in its environment +unexport CONFIG_ + +xconfig: $(obj)/qconf + $< $(Kconfig) + +gconfig: $(obj)/gconf + $< $(Kconfig) + +menuconfig: $(obj)/mconf + $< $(Kconfig) + +config: $(obj)/conf + $< --oldaskconfig $(Kconfig) + +nconfig: $(obj)/nconf + $< $(Kconfig) + +oldconfig: $(obj)/conf + $< --$@ $(Kconfig) + +silentoldconfig: $(obj)/conf + $(Q)mkdir -p include/config include/generated + $< --$@ $(Kconfig) + +localyesconfig localmodconfig: $(obj)/streamline_config.pl $(obj)/conf + $(Q)mkdir -p include/config include/generated + $(Q)perl $< --$@ $(srctree) $(Kconfig) > .tmp.config + $(Q)if [ -f .config ]; then \ + cmp -s .tmp.config .config || \ + (mv -f .config .config.old.1; \ + mv -f .tmp.config .config; \ + $(obj)/conf --silentoldconfig $(Kconfig); \ + mv -f .config.old.1 .config.old) \ + else \ + mv -f .tmp.config .config; \ + $(obj)/conf --silentoldconfig $(Kconfig); \ + fi + $(Q)rm -f .tmp.config + +# Create new linux.pot file +# Adjust charset to UTF-8 in .po file to accept UTF-8 in Kconfig files +update-po-config: $(obj)/kxgettext $(obj)/gconf.glade.h + $(Q)echo " GEN config.pot" + $(Q)xgettext --default-domain=linux \ + --add-comments --keyword=_ --keyword=N_ \ + --from-code=UTF-8 \ + --files-from=$(srctree)/scripts/kconfig/POTFILES.in \ + --directory=$(srctree) --directory=$(objtree) \ + --output $(obj)/config.pot + $(Q)sed -i s/CHARSET/UTF-8/ $(obj)/config.pot + $(Q)(for i in `ls $(srctree)/arch/*/Kconfig \ + $(srctree)/arch/*/um/Kconfig`; \ + do \ + echo " GEN $$i"; \ + $(obj)/kxgettext $$i \ + >> $(obj)/config.pot; \ + done ) + $(Q)echo " GEN linux.pot" + $(Q)msguniq --sort-by-file --to-code=UTF-8 $(obj)/config.pot \ + --output $(obj)/linux.pot + $(Q)rm -f $(obj)/config.pot + +PHONY += allnoconfig allyesconfig allmodconfig alldefconfig randconfig + +allnoconfig allyesconfig allmodconfig alldefconfig randconfig: $(obj)/conf + $< --$@ $(Kconfig) + +PHONY += listnewconfig olddefconfig oldnoconfig savedefconfig defconfig + +listnewconfig olddefconfig: $(obj)/conf + $< --$@ $(Kconfig) + +# oldnoconfig is an alias of olddefconfig, because people already are dependent +# on its behavior(sets new symbols to their default value but not 'n') with the +# counter-intuitive name. +oldnoconfig: $(obj)/conf + $< --olddefconfig $(Kconfig) + +savedefconfig: $(obj)/conf + $< --$@=defconfig $(Kconfig) + +defconfig: $(obj)/conf +ifeq ($(KBUILD_DEFCONFIG),) + $< --defconfig $(Kconfig) +else + @echo "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'" + $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig) +endif + +%_defconfig: $(obj)/conf + $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$@ $(Kconfig) + +# Help text used by make help +help: + @echo ' config - Update current config utilising a line-oriented program' + @echo ' nconfig - Update current config utilising a ncurses menu based program' + @echo ' menuconfig - Update current config utilising a menu based program' + @echo ' xconfig - Update current config utilising a QT based front-end' + @echo ' gconfig - Update current config utilising a GTK based front-end' + @echo ' oldconfig - Update current config utilising a provided .config as base' + @echo ' localmodconfig - Update current config disabling modules not loaded' + @echo ' localyesconfig - Update current config converting local mods to core' + @echo ' silentoldconfig - Same as oldconfig, but quietly, additionally update deps' + @echo ' defconfig - New config with default from ARCH supplied defconfig' + @echo ' savedefconfig - Save current config as ./defconfig (minimal config)' + @echo ' allnoconfig - New config where all options are answered with no' + @echo ' allyesconfig - New config where all options are accepted with yes' + @echo ' allmodconfig - New config selecting modules when possible' + @echo ' alldefconfig - New config with all symbols set to default' + @echo ' randconfig - New config with random answer to all options' + @echo ' listnewconfig - List new options' + @echo ' olddefconfig - Same as silentoldconfig but sets new symbols to their default value' + +# lxdialog stuff +check-lxdialog := $(srctree)/$(src)/lxdialog/check-lxdialog.sh + +# Use recursively expanded variables so we do not call gcc unless +# we really need to do so. (Do not call gcc as part of make mrproper) +HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags) \ + -DLOCALE + +# =========================================================================== +# Shared Makefile for the various kconfig executables: +# conf: Used for defconfig, oldconfig and related targets +# nconf: Used for the nconfig target. +# Utilizes ncurses +# mconf: Used for the menuconfig target +# Utilizes the lxdialog package +# qconf: Used for the xconfig target +# Based on QT which needs to be installed to compile it +# gconf: Used for the gconfig target +# Based on GTK which needs to be installed to compile it +# object files used by all kconfig flavours + +lxdialog := lxdialog/checklist.o lxdialog/util.o lxdialog/inputbox.o +lxdialog += lxdialog/textbox.o lxdialog/yesno.o lxdialog/menubox.o + +conf-objs := conf.o zconf.tab.o +mconf-objs := mconf.o zconf.tab.o $(lxdialog) +nconf-objs := nconf.o zconf.tab.o nconf.gui.o +kxgettext-objs := kxgettext.o zconf.tab.o +qconf-cxxobjs := qconf.o +qconf-objs := zconf.tab.o +gconf-objs := gconf.o zconf.tab.o + +hostprogs-y := conf + +ifeq ($(MAKECMDGOALS),nconfig) + hostprogs-y += nconf +endif + +ifeq ($(MAKECMDGOALS),menuconfig) + hostprogs-y += mconf +endif + +ifeq ($(MAKECMDGOALS),update-po-config) + hostprogs-y += kxgettext +endif + +ifeq ($(MAKECMDGOALS),xconfig) + qconf-target := 1 +endif +ifeq ($(MAKECMDGOALS),gconfig) + gconf-target := 1 +endif + + +ifeq ($(qconf-target),1) + hostprogs-y += qconf +endif + +ifeq ($(gconf-target),1) + hostprogs-y += gconf +endif + +clean-files := qconf.moc .tmp_qtcheck .tmp_gtkcheck +clean-files += zconf.tab.c zconf.lex.c zconf.hash.c gconf.glade.h +clean-files += mconf qconf gconf nconf +clean-files += config.pot linux.pot + +# Check that we have the required ncurses stuff installed for lxdialog (menuconfig) +PHONY += $(obj)/dochecklxdialog +$(addprefix $(obj)/,$(lxdialog)): $(obj)/dochecklxdialog +$(obj)/dochecklxdialog: + $(Q)$(CONFIG_SHELL) $(check-lxdialog) -check $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTLOADLIBES_mconf) + +always := dochecklxdialog + +# Add environment specific flags +HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(srctree)/$(src)/check.sh $(HOSTCC) $(HOSTCFLAGS)) + +# generated files seem to need this to find local include files +HOSTCFLAGS_zconf.lex.o := -I$(src) +HOSTCFLAGS_zconf.tab.o := -I$(src) + +LEX_PREFIX_zconf := zconf +YACC_PREFIX_zconf := zconf + +HOSTLOADLIBES_qconf = $(KC_QT_LIBS) +HOSTCXXFLAGS_qconf.o = $(KC_QT_CFLAGS) + +HOSTLOADLIBES_gconf = `pkg-config --libs gtk+-2.0 gmodule-2.0 libglade-2.0` +HOSTCFLAGS_gconf.o = `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \ + -Wno-missing-prototypes + +HOSTLOADLIBES_mconf = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC)) + +HOSTLOADLIBES_nconf = $(shell \ + pkg-config --libs menu panel ncurses 2>/dev/null \ + || echo "-lmenu -lpanel -lncurses" ) +$(obj)/qconf.o: $(obj)/.tmp_qtcheck + +ifeq ($(qconf-target),1) +$(obj)/.tmp_qtcheck: $(src)/Makefile +-include $(obj)/.tmp_qtcheck + +# QT needs some extra effort... +$(obj)/.tmp_qtcheck: + @set -e; echo " CHECK qt"; dir=""; pkg=""; \ + if ! pkg-config --exists QtCore 2> /dev/null; then \ + echo "* Unable to find the QT4 tool qmake. Trying to use QT3"; \ + pkg-config --exists qt 2> /dev/null && pkg=qt; \ + pkg-config --exists qt-mt 2> /dev/null && pkg=qt-mt; \ + if [ -n "$$pkg" ]; then \ + cflags="\$$(shell pkg-config $$pkg --cflags)"; \ + libs="\$$(shell pkg-config $$pkg --libs)"; \ + moc="\$$(shell pkg-config $$pkg --variable=prefix)/bin/moc"; \ + dir="$$(pkg-config $$pkg --variable=prefix)"; \ + else \ + for d in $$QTDIR /usr/share/qt* /usr/lib/qt*; do \ + if [ -f $$d/include/qconfig.h ]; then dir=$$d; break; fi; \ + done; \ + if [ -z "$$dir" ]; then \ + echo >&2 "*"; \ + echo >&2 "* Unable to find any QT installation. Please make sure that"; \ + echo >&2 "* the QT4 or QT3 development package is correctly installed and"; \ + echo >&2 "* either qmake can be found or install pkg-config or set"; \ + echo >&2 "* the QTDIR environment variable to the correct location."; \ + echo >&2 "*"; \ + false; \ + fi; \ + libpath=$$dir/lib; lib=qt; osdir=""; \ + $(HOSTCXX) -print-multi-os-directory > /dev/null 2>&1 && \ + osdir=x$$($(HOSTCXX) -print-multi-os-directory); \ + test -d $$libpath/$$osdir && libpath=$$libpath/$$osdir; \ + test -f $$libpath/libqt-mt.so && lib=qt-mt; \ + cflags="-I$$dir/include"; \ + libs="-L$$libpath -Wl,-rpath,$$libpath -l$$lib"; \ + moc="$$dir/bin/moc"; \ + fi; \ + if [ ! -x $$dir/bin/moc -a -x /usr/bin/moc ]; then \ + echo "*"; \ + echo "* Unable to find $$dir/bin/moc, using /usr/bin/moc instead."; \ + echo "*"; \ + moc="/usr/bin/moc"; \ + fi; \ + else \ + cflags="\$$(shell pkg-config QtCore QtGui Qt3Support --cflags)"; \ + libs="\$$(shell pkg-config QtCore QtGui Qt3Support --libs)"; \ + moc="\$$(shell pkg-config QtCore --variable=moc_location)"; \ + [ -n "$$moc" ] || moc="\$$(shell pkg-config QtCore --variable=prefix)/bin/moc"; \ + fi; \ + echo "KC_QT_CFLAGS=$$cflags" > $@; \ + echo "KC_QT_LIBS=$$libs" >> $@; \ + echo "KC_QT_MOC=$$moc" >> $@ +endif + +$(obj)/gconf.o: $(obj)/.tmp_gtkcheck + +ifeq ($(gconf-target),1) +-include $(obj)/.tmp_gtkcheck + +# GTK needs some extra effort, too... +$(obj)/.tmp_gtkcheck: + @if `pkg-config --exists gtk+-2.0 gmodule-2.0 libglade-2.0`; then \ + if `pkg-config --atleast-version=2.0.0 gtk+-2.0`; then \ + touch $@; \ + else \ + echo >&2 "*"; \ + echo >&2 "* GTK+ is present but version >= 2.0.0 is required."; \ + echo >&2 "*"; \ + false; \ + fi \ + else \ + echo >&2 "*"; \ + echo >&2 "* Unable to find the GTK+ installation. Please make sure that"; \ + echo >&2 "* the GTK+ 2.0 development package is correctly installed..."; \ + echo >&2 "* You need gtk+-2.0, glib-2.0 and libglade-2.0."; \ + echo >&2 "*"; \ + false; \ + fi +endif + +$(obj)/zconf.tab.o: $(obj)/zconf.lex.c $(obj)/zconf.hash.c + +$(obj)/qconf.o: $(obj)/qconf.moc + +quiet_cmd_moc = MOC $@ + cmd_moc = $(KC_QT_MOC) -i $< -o $@ + +$(obj)/%.moc: $(src)/%.h $(obj)/.tmp_qtcheck + $(call cmd,moc) + +# Extract gconf menu items for I18N support +$(obj)/gconf.glade.h: $(obj)/gconf.glade + $(Q)intltool-extract --type=gettext/glade --srcdir=$(srctree) \ + $(obj)/gconf.glade diff --git a/scripts/kconfig/POTFILES.in b/scripts/kconfig/POTFILES.in new file mode 100644 index 0000000..9674573 --- /dev/null +++ b/scripts/kconfig/POTFILES.in @@ -0,0 +1,12 @@ +scripts/kconfig/lxdialog/checklist.c +scripts/kconfig/lxdialog/inputbox.c +scripts/kconfig/lxdialog/menubox.c +scripts/kconfig/lxdialog/textbox.c +scripts/kconfig/lxdialog/util.c +scripts/kconfig/lxdialog/yesno.c +scripts/kconfig/mconf.c +scripts/kconfig/conf.c +scripts/kconfig/confdata.c +scripts/kconfig/gconf.c +scripts/kconfig/gconf.glade.h +scripts/kconfig/qconf.cc diff --git a/scripts/kconfig/check.sh b/scripts/kconfig/check.sh new file mode 100755 index 0000000..55b79ba --- /dev/null +++ b/scripts/kconfig/check.sh @@ -0,0 +1,13 @@ +#!/bin/sh +# Needed for systems without gettext +$* -x c -o /dev/null - > /dev/null 2>&1 << EOF +#include <libintl.h> +int main() +{ + gettext(""); + return 0; +} +EOF +if [ ! "$?" -eq "0" ]; then + echo -DKBUILD_NO_NLS; +fi diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c new file mode 100644 index 0000000..fef75fc --- /dev/null +++ b/scripts/kconfig/conf.c @@ -0,0 +1,718 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <locale.h> +#include <ctype.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <time.h> +#include <unistd.h> +#include <getopt.h> +#include <sys/stat.h> +#include <sys/time.h> +#include <errno.h> + +#include "lkc.h" + +static void conf(struct menu *menu); +static void check_conf(struct menu *menu); +static void xfgets(char *str, int size, FILE *in); + +enum input_mode { + oldaskconfig, + silentoldconfig, + oldconfig, + allnoconfig, + allyesconfig, + allmodconfig, + alldefconfig, + randconfig, + defconfig, + savedefconfig, + listnewconfig, + olddefconfig, +} input_mode = oldaskconfig; + +static int indent = 1; +static int tty_stdio; +static int valid_stdin = 1; +static int sync_kconfig; +static int conf_cnt; +static char line[128]; +static struct menu *rootEntry; + +static void print_help(struct menu *menu) +{ + struct gstr help = str_new(); + + menu_get_ext_help(menu, &help); + + printf("\n%s\n", str_get(&help)); + str_free(&help); +} + +static void strip(char *str) +{ + char *p = str; + int l; + + while ((isspace(*p))) + p++; + l = strlen(p); + if (p != str) + memmove(str, p, l + 1); + if (!l) + return; + p = str + l - 1; + while ((isspace(*p))) + *p-- = 0; +} + +static void check_stdin(void) +{ + if (!valid_stdin) { + printf(_("aborted!\n\n")); + printf(_("Console input/output is redirected. ")); + printf(_("Run 'make oldconfig' to update configuration.\n\n")); + exit(1); + } +} + +static int conf_askvalue(struct symbol *sym, const char *def) +{ + enum symbol_type type = sym_get_type(sym); + + if (!sym_has_value(sym)) + printf(_("(NEW) ")); + + line[0] = '\n'; + line[1] = 0; + + if (!sym_is_changable(sym)) { + printf("%s\n", def); + line[0] = '\n'; + line[1] = 0; + return 0; + } + + switch (input_mode) { + case oldconfig: + case silentoldconfig: + if (sym_has_value(sym)) { + printf("%s\n", def); + return 0; + } + check_stdin(); + /* fall through */ + case oldaskconfig: + fflush(stdout); + xfgets(line, 128, stdin); + if (!tty_stdio) + printf("\n"); + return 1; + default: + break; + } + + switch (type) { + case S_INT: + case S_HEX: + case S_STRING: + printf("%s\n", def); + return 1; + default: + ; + } + printf("%s", line); + return 1; +} + +static int conf_string(struct menu *menu) +{ + struct symbol *sym = menu->sym; + const char *def; + + while (1) { + printf("%*s%s ", indent - 1, "", _(menu->prompt->text)); + printf("(%s) ", sym->name); + def = sym_get_string_value(sym); + if (sym_get_string_value(sym)) + printf("[%s] ", def); + if (!conf_askvalue(sym, def)) + return 0; + switch (line[0]) { + case '\n': + break; + case '?': + /* print help */ + if (line[1] == '\n') { + print_help(menu); + def = NULL; + break; + } + /* fall through */ + default: + line[strlen(line)-1] = 0; + def = line; + } + if (def && sym_set_string_value(sym, def)) + return 0; + } +} + +static int conf_sym(struct menu *menu) +{ + struct symbol *sym = menu->sym; + tristate oldval, newval; + + while (1) { + printf("%*s%s ", indent - 1, "", _(menu->prompt->text)); + if (sym->name) + printf("(%s) ", sym->name); + putchar('['); + oldval = sym_get_tristate_value(sym); + switch (oldval) { + case no: + putchar('N'); + break; + case mod: + putchar('M'); + break; + case yes: + putchar('Y'); + break; + } + if (oldval != no && sym_tristate_within_range(sym, no)) + printf("/n"); + if (oldval != mod && sym_tristate_within_range(sym, mod)) + printf("/m"); + if (oldval != yes && sym_tristate_within_range(sym, yes)) + printf("/y"); + if (menu_has_help(menu)) + printf("/?"); + printf("] "); + if (!conf_askvalue(sym, sym_get_string_value(sym))) + return 0; + strip(line); + + switch (line[0]) { + case 'n': + case 'N': + newval = no; + if (!line[1] || !strcmp(&line[1], "o")) + break; + continue; + case 'm': + case 'M': + newval = mod; + if (!line[1]) + break; + continue; + case 'y': + case 'Y': + newval = yes; + if (!line[1] || !strcmp(&line[1], "es")) + break; + continue; + case 0: + newval = oldval; + break; + case '?': + goto help; + default: + continue; + } + if (sym_set_tristate_value(sym, newval)) + return 0; +help: + print_help(menu); + } +} + +static int conf_choice(struct menu *menu) +{ + struct symbol *sym, *def_sym; + struct menu *child; + bool is_new; + + sym = menu->sym; + is_new = !sym_has_value(sym); + if (sym_is_changable(sym)) { + conf_sym(menu); + sym_calc_value(sym); + switch (sym_get_tristate_value(sym)) { + case no: + return 1; + case mod: + return 0; + case yes: + break; + } + } else { + switch (sym_get_tristate_value(sym)) { + case no: + return 1; + case mod: + printf("%*s%s\n", indent - 1, "", _(menu_get_prompt(menu))); + return 0; + case yes: + break; + } + } + + while (1) { + int cnt, def; + + printf("%*s%s\n", indent - 1, "", _(menu_get_prompt(menu))); + def_sym = sym_get_choice_value(sym); + cnt = def = 0; + line[0] = 0; + for (child = menu->list; child; child = child->next) { + if (!menu_is_visible(child)) + continue; + if (!child->sym) { + printf("%*c %s\n", indent, '*', _(menu_get_prompt(child))); + continue; + } + cnt++; + if (child->sym == def_sym) { + def = cnt; + printf("%*c", indent, '>'); + } else + printf("%*c", indent, ' '); + printf(" %d. %s", cnt, _(menu_get_prompt(child))); + if (child->sym->name) + printf(" (%s)", child->sym->name); + if (!sym_has_value(child->sym)) + printf(_(" (NEW)")); + printf("\n"); + } + printf(_("%*schoice"), indent - 1, ""); + if (cnt == 1) { + printf("[1]: 1\n"); + goto conf_childs; + } + printf("[1-%d", cnt); + if (menu_has_help(menu)) + printf("?"); + printf("]: "); + switch (input_mode) { + case oldconfig: + case silentoldconfig: + if (!is_new) { + cnt = def; + printf("%d\n", cnt); + break; + } + check_stdin(); + /* fall through */ + case oldaskconfig: + fflush(stdout); + xfgets(line, 128, stdin); + strip(line); + if (line[0] == '?') { + print_help(menu); + continue; + } + if (!line[0]) + cnt = def; + else if (isdigit(line[0])) + cnt = atoi(line); + else + continue; + break; + default: + break; + } + + conf_childs: + for (child = menu->list; child; child = child->next) { + if (!child->sym || !menu_is_visible(child)) + continue; + if (!--cnt) + break; + } + if (!child) + continue; + if (line[0] && line[strlen(line) - 1] == '?') { + print_help(child); + continue; + } + sym_set_choice_value(sym, child->sym); + for (child = child->list; child; child = child->next) { + indent += 2; + conf(child); + indent -= 2; + } + return 1; + } +} + +static void conf(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + + if (!menu_is_visible(menu)) + return; + + sym = menu->sym; + prop = menu->prompt; + if (prop) { + const char *prompt; + + switch (prop->type) { + case P_MENU: + if ((input_mode == silentoldconfig || + input_mode == listnewconfig || + input_mode == olddefconfig) && + rootEntry != menu) { + check_conf(menu); + return; + } + /* fall through */ + case P_COMMENT: + prompt = menu_get_prompt(menu); + if (prompt) + printf("%*c\n%*c %s\n%*c\n", + indent, '*', + indent, '*', _(prompt), + indent, '*'); + default: + ; + } + } + + if (!sym) + goto conf_childs; + + if (sym_is_choice(sym)) { + conf_choice(menu); + if (sym->curr.tri != mod) + return; + goto conf_childs; + } + + switch (sym->type) { + case S_INT: + case S_HEX: + case S_STRING: + conf_string(menu); + break; + default: + conf_sym(menu); + break; + } + +conf_childs: + if (sym) + indent += 2; + for (child = menu->list; child; child = child->next) + conf(child); + if (sym) + indent -= 2; +} + +static void check_conf(struct menu *menu) +{ + struct symbol *sym; + struct menu *child; + + if (!menu_is_visible(menu)) + return; + + sym = menu->sym; + if (sym && !sym_has_value(sym)) { + if (sym_is_changable(sym) || + (sym_is_choice(sym) && sym_get_tristate_value(sym) == yes)) { + if (input_mode == listnewconfig) { + if (sym->name && !sym_is_choice_value(sym)) { + printf("%s%s\n", CONFIG_, sym->name); + } + } else if (input_mode != olddefconfig) { + if (!conf_cnt++) + printf(_("*\n* Restart config...\n*\n")); + rootEntry = menu_get_parent_menu(menu); + conf(rootEntry); + } + } + } + + for (child = menu->list; child; child = child->next) + check_conf(child); +} + +static struct option long_opts[] = { + {"oldaskconfig", no_argument, NULL, oldaskconfig}, + {"oldconfig", no_argument, NULL, oldconfig}, + {"silentoldconfig", no_argument, NULL, silentoldconfig}, + {"defconfig", optional_argument, NULL, defconfig}, + {"savedefconfig", required_argument, NULL, savedefconfig}, + {"allnoconfig", no_argument, NULL, allnoconfig}, + {"allyesconfig", no_argument, NULL, allyesconfig}, + {"allmodconfig", no_argument, NULL, allmodconfig}, + {"alldefconfig", no_argument, NULL, alldefconfig}, + {"randconfig", no_argument, NULL, randconfig}, + {"listnewconfig", no_argument, NULL, listnewconfig}, + {"olddefconfig", no_argument, NULL, olddefconfig}, + /* + * oldnoconfig is an alias of olddefconfig, because people already + * are dependent on its behavior(sets new symbols to their default + * value but not 'n') with the counter-intuitive name. + */ + {"oldnoconfig", no_argument, NULL, olddefconfig}, + {NULL, 0, NULL, 0} +}; + +static void conf_usage(const char *progname) +{ + + printf("Usage: %s [option] <kconfig-file>\n", progname); + printf("[option] is _one_ of the following:\n"); + printf(" --listnewconfig List new options\n"); + printf(" --oldaskconfig Start a new configuration using a line-oriented program\n"); + printf(" --oldconfig Update a configuration using a provided .config as base\n"); + printf(" --silentoldconfig Same as oldconfig, but quietly, additionally update deps\n"); + printf(" --olddefconfig Same as silentoldconfig but sets new symbols to their default value\n"); + printf(" --oldnoconfig An alias of olddefconfig\n"); + printf(" --defconfig <file> New config with default defined in <file>\n"); + printf(" --savedefconfig <file> Save the minimal current configuration to <file>\n"); + printf(" --allnoconfig New config where all options are answered with no\n"); + printf(" --allyesconfig New config where all options are answered with yes\n"); + printf(" --allmodconfig New config where all options are answered with mod\n"); + printf(" --alldefconfig New config with all symbols set to default\n"); + printf(" --randconfig New config with random answer to all options\n"); +} + +int main(int ac, char **av) +{ + const char *progname = av[0]; + int opt; + const char *name, *defconfig_file = NULL /* gcc uninit */; + struct stat tmpstat; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + tty_stdio = isatty(0) && isatty(1) && isatty(2); + + while ((opt = getopt_long(ac, av, "", long_opts, NULL)) != -1) { + input_mode = (enum input_mode)opt; + switch (opt) { + case silentoldconfig: + sync_kconfig = 1; + break; + case defconfig: + case savedefconfig: + defconfig_file = optarg; + break; + case randconfig: + { + struct timeval now; + unsigned int seed; + char *seed_env; + + /* + * Use microseconds derived seed, + * compensate for systems where it may be zero + */ + gettimeofday(&now, NULL); + seed = (unsigned int)((now.tv_sec + 1) * (now.tv_usec + 1)); + + seed_env = getenv("KCONFIG_SEED"); + if( seed_env && *seed_env ) { + char *endp; + int tmp = (int)strtol(seed_env, &endp, 0); + if (*endp == '\0') { + seed = tmp; + } + } + fprintf( stderr, "KCONFIG_SEED=0x%X\n", seed ); + srand(seed); + break; + } + case oldaskconfig: + case oldconfig: + case allnoconfig: + case allyesconfig: + case allmodconfig: + case alldefconfig: + case listnewconfig: + case olddefconfig: + break; + case '?': + conf_usage(progname); + exit(1); + break; + } + } + if (ac == optind) { + printf(_("%s: Kconfig file missing\n"), av[0]); + conf_usage(progname); + exit(1); + } + name = av[optind]; + conf_parse(name); + //zconfdump(stdout); + if (sync_kconfig) { + name = conf_get_configname(); + if (stat(name, &tmpstat)) { + fprintf(stderr, _("***\n" + "*** Configuration file \"%s\" not found!\n" + "***\n" + "*** Please run some configurator (e.g. \"make oldconfig\" or\n" + "*** \"make menuconfig\" or \"make xconfig\").\n" + "***\n"), name); + exit(1); + } + } + + switch (input_mode) { + case defconfig: + if (!defconfig_file) + defconfig_file = conf_get_default_confname(); + if (conf_read(defconfig_file)) { + printf(_("***\n" + "*** Can't find default configuration \"%s\"!\n" + "***\n"), defconfig_file); + exit(1); + } + break; + case savedefconfig: + case silentoldconfig: + case oldaskconfig: + case oldconfig: + case listnewconfig: + case olddefconfig: + conf_read(NULL); + break; + case allnoconfig: + case allyesconfig: + case allmodconfig: + case alldefconfig: + case randconfig: + name = getenv("KCONFIG_ALLCONFIG"); + if (!name) + break; + if ((strcmp(name, "") != 0) && (strcmp(name, "1") != 0)) { + if (conf_read_simple(name, S_DEF_USER)) { + fprintf(stderr, + _("*** Can't read seed configuration \"%s\"!\n"), + name); + exit(1); + } + break; + } + switch (input_mode) { + case allnoconfig: name = "allno.config"; break; + case allyesconfig: name = "allyes.config"; break; + case allmodconfig: name = "allmod.config"; break; + case alldefconfig: name = "alldef.config"; break; + case randconfig: name = "allrandom.config"; break; + default: break; + } + if (conf_read_simple(name, S_DEF_USER) && + conf_read_simple("all.config", S_DEF_USER)) { + fprintf(stderr, + _("*** KCONFIG_ALLCONFIG set, but no \"%s\" or \"all.config\" file found\n"), + name); + exit(1); + } + break; + default: + break; + } + + if (sync_kconfig) { + if (conf_get_changed()) { + name = getenv("KCONFIG_NOSILENTUPDATE"); + if (name && *name) { + fprintf(stderr, + _("\n*** The configuration requires explicit update.\n\n")); + return 1; + } + } + valid_stdin = tty_stdio; + } + + switch (input_mode) { + case allnoconfig: + conf_set_all_new_symbols(def_no); + break; + case allyesconfig: + conf_set_all_new_symbols(def_yes); + break; + case allmodconfig: + conf_set_all_new_symbols(def_mod); + break; + case alldefconfig: + conf_set_all_new_symbols(def_default); + break; + case randconfig: + /* Really nothing to do in this loop */ + while (conf_set_all_new_symbols(def_random)) ; + break; + case defconfig: + conf_set_all_new_symbols(def_default); + break; + case savedefconfig: + break; + case oldaskconfig: + rootEntry = &rootmenu; + conf(&rootmenu); + input_mode = silentoldconfig; + /* fall through */ + case oldconfig: + case listnewconfig: + case olddefconfig: + case silentoldconfig: + /* Update until a loop caused no more changes */ + do { + conf_cnt = 0; + check_conf(&rootmenu); + } while (conf_cnt && + (input_mode != listnewconfig && + input_mode != olddefconfig)); + break; + } + + if (sync_kconfig) { + /* silentoldconfig is used during the build so we shall update autoconf. + * All other commands are only used to generate a config. + */ + if (conf_get_changed() && conf_write(NULL)) { + fprintf(stderr, _("\n*** Error during writing of the configuration.\n\n")); + exit(1); + } + if (conf_write_autoconf()) { + fprintf(stderr, _("\n*** Error during update of the configuration.\n\n")); + return 1; + } + } else if (input_mode == savedefconfig) { + if (conf_write_defconfig(defconfig_file)) { + fprintf(stderr, _("n*** Error while saving defconfig to: %s\n\n"), + defconfig_file); + return 1; + } + } else if (input_mode != listnewconfig) { + if (conf_write(NULL)) { + fprintf(stderr, _("\n*** Error during writing of the configuration.\n\n")); + exit(1); + } + } + return 0; +} + +/* + * Helper function to facilitate fgets() by Jean Sacren. + */ +void xfgets(char *str, int size, FILE *in) +{ + if (fgets(str, size, in) == NULL) + fprintf(stderr, "\nError in reading or end of file.\n"); +} diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c new file mode 100644 index 0000000..ae6ce66 --- /dev/null +++ b/scripts/kconfig/confdata.c @@ -0,0 +1,1250 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <sys/stat.h> +#include <ctype.h> +#include <errno.h> +#include <fcntl.h> +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <time.h> +#include <unistd.h> + +#include "lkc.h" + +static void conf_warning(const char *fmt, ...) + __attribute__ ((format (printf, 1, 2))); + +static void conf_message(const char *fmt, ...) + __attribute__ ((format (printf, 1, 2))); + +static const char *conf_filename; +static int conf_lineno, conf_warnings, conf_unsaved; + +const char conf_defname[] = "arch/$ARCH/defconfig"; + +static void conf_warning(const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + fprintf(stderr, "%s:%d:warning: ", conf_filename, conf_lineno); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); + conf_warnings++; +} + +static void conf_default_message_callback(const char *fmt, va_list ap) +{ + printf("#\n# "); + vprintf(fmt, ap); + printf("\n#\n"); +} + +static void (*conf_message_callback) (const char *fmt, va_list ap) = + conf_default_message_callback; +void conf_set_message_callback(void (*fn) (const char *fmt, va_list ap)) +{ + conf_message_callback = fn; +} + +static void conf_message(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + if (conf_message_callback) + conf_message_callback(fmt, ap); +} + +const char *conf_get_configname(void) +{ + char *name = getenv("KCONFIG_CONFIG"); + + return name ? name : ".config"; +} + +const char *conf_get_autoconfig_name(void) +{ + char *name = getenv("KCONFIG_AUTOCONFIG"); + + return name ? name : "include/config/auto.conf"; +} + +static char *conf_expand_value(const char *in) +{ + struct symbol *sym; + const char *src; + static char res_value[SYMBOL_MAXLENGTH]; + char *dst, name[SYMBOL_MAXLENGTH]; + + res_value[0] = 0; + dst = name; + while ((src = strchr(in, '$'))) { + strncat(res_value, in, src - in); + src++; + dst = name; + while (isalnum(*src) || *src == '_') + *dst++ = *src++; + *dst = 0; + sym = sym_lookup(name, 0); + sym_calc_value(sym); + strcat(res_value, sym_get_string_value(sym)); + in = src; + } + strcat(res_value, in); + + return res_value; +} + +char *conf_get_default_confname(void) +{ + struct stat buf; + static char fullname[PATH_MAX+1]; + char *env, *name; + + name = conf_expand_value(conf_defname); + env = getenv(SRCTREE); + if (env) { + sprintf(fullname, "%s/%s", env, name); + if (!stat(fullname, &buf)) + return fullname; + } + return name; +} + +static int conf_set_sym_val(struct symbol *sym, int def, int def_flags, char *p) +{ + char *p2; + + switch (sym->type) { + case S_TRISTATE: + if (p[0] == 'm') { + sym->def[def].tri = mod; + sym->flags |= def_flags; + break; + } + /* fall through */ + case S_BOOLEAN: + if (p[0] == 'y') { + sym->def[def].tri = yes; + sym->flags |= def_flags; + break; + } + if (p[0] == 'n') { + sym->def[def].tri = no; + sym->flags |= def_flags; + break; + } + if (def != S_DEF_AUTO) + conf_warning("symbol value '%s' invalid for %s", + p, sym->name); + return 1; + case S_OTHER: + if (*p != '"') { + for (p2 = p; *p2 && !isspace(*p2); p2++) + ; + sym->type = S_STRING; + goto done; + } + /* fall through */ + case S_STRING: + if (*p++ != '"') + break; + for (p2 = p; (p2 = strpbrk(p2, "\"\\")); p2++) { + if (*p2 == '"') { + *p2 = 0; + break; + } + memmove(p2, p2 + 1, strlen(p2)); + } + if (!p2) { + if (def != S_DEF_AUTO) + conf_warning("invalid string found"); + return 1; + } + /* fall through */ + case S_INT: + case S_HEX: + done: + if (sym_string_valid(sym, p)) { + sym->def[def].val = strdup(p); + sym->flags |= def_flags; + } else { + if (def != S_DEF_AUTO) + conf_warning("symbol value '%s' invalid for %s", + p, sym->name); + return 1; + } + break; + default: + ; + } + return 0; +} + +#define LINE_GROWTH 16 +static int add_byte(int c, char **lineptr, size_t slen, size_t *n) +{ + char *nline; + size_t new_size = slen + 1; + if (new_size > *n) { + new_size += LINE_GROWTH - 1; + new_size *= 2; + nline = realloc(*lineptr, new_size); + if (!nline) + return -1; + + *lineptr = nline; + *n = new_size; + } + + (*lineptr)[slen] = c; + + return 0; +} + +static ssize_t compat_getline(char **lineptr, size_t *n, FILE *stream) +{ + char *line = *lineptr; + size_t slen = 0; + + for (;;) { + int c = getc(stream); + + switch (c) { + case '\n': + if (add_byte(c, &line, slen, n) < 0) + goto e_out; + slen++; + /* fall through */ + case EOF: + if (add_byte('\0', &line, slen, n) < 0) + goto e_out; + *lineptr = line; + if (slen == 0) + return -1; + return slen; + default: + if (add_byte(c, &line, slen, n) < 0) + goto e_out; + slen++; + } + } + +e_out: + line[slen-1] = '\0'; + *lineptr = line; + return -1; +} + +int conf_read_simple(const char *name, int def) +{ + FILE *in = NULL; + char *line = NULL; + size_t line_asize = 0; + char *p, *p2; + struct symbol *sym; + int i, def_flags; + + if (name) { + in = zconf_fopen(name); + } else { + struct property *prop; + + name = conf_get_configname(); + in = zconf_fopen(name); + if (in) + goto load; + sym_add_change_count(1); + if (!sym_defconfig_list) { + if (modules_sym) + sym_calc_value(modules_sym); + return 1; + } + + for_all_defaults(sym_defconfig_list, prop) { + if (expr_calc_value(prop->visible.expr) == no || + prop->expr->type != E_SYMBOL) + continue; + name = conf_expand_value(prop->expr->left.sym->name); + in = zconf_fopen(name); + if (in) { + conf_message(_("using defaults found in %s"), + name); + goto load; + } + } + } + if (!in) + return 1; + +load: + conf_filename = name; + conf_lineno = 0; + conf_warnings = 0; + conf_unsaved = 0; + + def_flags = SYMBOL_DEF << def; + for_all_symbols(i, sym) { + sym->flags |= SYMBOL_CHANGED; + sym->flags &= ~(def_flags|SYMBOL_VALID); + if (sym_is_choice(sym)) + sym->flags |= def_flags; + switch (sym->type) { + case S_INT: + case S_HEX: + case S_STRING: + if (sym->def[def].val) + free(sym->def[def].val); + /* fall through */ + default: + sym->def[def].val = NULL; + sym->def[def].tri = no; + } + } + + while (compat_getline(&line, &line_asize, in) != -1) { + conf_lineno++; + sym = NULL; + if (line[0] == '#') { + if (memcmp(line + 2, CONFIG_, strlen(CONFIG_))) + continue; + p = strchr(line + 2 + strlen(CONFIG_), ' '); + if (!p) + continue; + *p++ = 0; + if (strncmp(p, "is not set", 10)) + continue; + if (def == S_DEF_USER) { + sym = sym_find(line + 2 + strlen(CONFIG_)); + if (!sym) { + sym_add_change_count(1); + goto setsym; + } + } else { + sym = sym_lookup(line + 2 + strlen(CONFIG_), 0); + if (sym->type == S_UNKNOWN) + sym->type = S_BOOLEAN; + } + if (sym->flags & def_flags) { + conf_warning("override: reassigning to symbol %s", sym->name); + } + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + sym->def[def].tri = no; + sym->flags |= def_flags; + break; + default: + ; + } + } else if (memcmp(line, CONFIG_, strlen(CONFIG_)) == 0) { + p = strchr(line + strlen(CONFIG_), '='); + if (!p) + continue; + *p++ = 0; + p2 = strchr(p, '\n'); + if (p2) { + *p2-- = 0; + if (*p2 == '\r') + *p2 = 0; + } + if (def == S_DEF_USER) { + sym = sym_find(line + strlen(CONFIG_)); + if (!sym) { + sym_add_change_count(1); + goto setsym; + } + } else { + sym = sym_lookup(line + strlen(CONFIG_), 0); + if (sym->type == S_UNKNOWN) + sym->type = S_OTHER; + } + if (sym->flags & def_flags) { + conf_warning("override: reassigning to symbol %s", sym->name); + } + if (conf_set_sym_val(sym, def, def_flags, p)) + continue; + } else { + if (line[0] != '\r' && line[0] != '\n') + conf_warning("unexpected data"); + continue; + } +setsym: + if (sym && sym_is_choice_value(sym)) { + struct symbol *cs = prop_get_symbol(sym_get_choice_prop(sym)); + switch (sym->def[def].tri) { + case no: + break; + case mod: + if (cs->def[def].tri == yes) { + conf_warning("%s creates inconsistent choice state", sym->name); + cs->flags &= ~def_flags; + } + break; + case yes: + if (cs->def[def].tri != no) + conf_warning("override: %s changes choice state", sym->name); + cs->def[def].val = sym; + break; + } + cs->def[def].tri = EXPR_OR(cs->def[def].tri, sym->def[def].tri); + } + } + free(line); + fclose(in); + + if (modules_sym) + sym_calc_value(modules_sym); + return 0; +} + +int conf_read(const char *name) +{ + struct symbol *sym; + int i; + + sym_set_change_count(0); + + if (conf_read_simple(name, S_DEF_USER)) + return 1; + + for_all_symbols(i, sym) { + sym_calc_value(sym); + if (sym_is_choice(sym) || (sym->flags & SYMBOL_AUTO)) + continue; + if (sym_has_value(sym) && (sym->flags & SYMBOL_WRITE)) { + /* check that calculated value agrees with saved value */ + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym->def[S_DEF_USER].tri != sym_get_tristate_value(sym)) + break; + if (!sym_is_choice(sym)) + continue; + /* fall through */ + default: + if (!strcmp(sym->curr.val, sym->def[S_DEF_USER].val)) + continue; + break; + } + } else if (!sym_has_value(sym) && !(sym->flags & SYMBOL_WRITE)) + /* no previous value and not saved */ + continue; + conf_unsaved++; + /* maybe print value in verbose mode... */ + } + + for_all_symbols(i, sym) { + if (sym_has_value(sym) && !sym_is_choice_value(sym)) { + /* Reset values of generates values, so they'll appear + * as new, if they should become visible, but that + * doesn't quite work if the Kconfig and the saved + * configuration disagree. + */ + if (sym->visible == no && !conf_unsaved) + sym->flags &= ~SYMBOL_DEF_USER; + switch (sym->type) { + case S_STRING: + case S_INT: + case S_HEX: + /* Reset a string value if it's out of range */ + if (sym_string_within_range(sym, sym->def[S_DEF_USER].val)) + break; + sym->flags &= ~(SYMBOL_VALID|SYMBOL_DEF_USER); + conf_unsaved++; + break; + default: + break; + } + } + } + + sym_add_change_count(conf_warnings || conf_unsaved); + + return 0; +} + +/* + * Kconfig configuration printer + * + * This printer is used when generating the resulting configuration after + * kconfig invocation and `defconfig' files. Unset symbol might be omitted by + * passing a non-NULL argument to the printer. + * + */ +static void +kconfig_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) +{ + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (*value == 'n') { + bool skip_unset = (arg != NULL); + + if (!skip_unset) + fprintf(fp, "# %s%s is not set\n", + CONFIG_, sym->name); + return; + } + break; + default: + break; + } + + fprintf(fp, "%s%s=%s\n", CONFIG_, sym->name, value); +} + +static void +kconfig_print_comment(FILE *fp, const char *value, void *arg) +{ + const char *p = value; + size_t l; + + for (;;) { + l = strcspn(p, "\n"); + fprintf(fp, "#"); + if (l) { + fprintf(fp, " "); + xfwrite(p, l, 1, fp); + p += l; + } + fprintf(fp, "\n"); + if (*p++ == '\0') + break; + } +} + +static struct conf_printer kconfig_printer_cb = +{ + .print_symbol = kconfig_print_symbol, + .print_comment = kconfig_print_comment, +}; + +/* + * Header printer + * + * This printer is used when generating the `include/generated/autoconf.h' file. + */ +static void +header_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) +{ + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: { + const char *suffix = ""; + + switch (*value) { + case 'n': + break; + case 'm': + suffix = "_MODULE"; + /* fall through */ + default: + fprintf(fp, "#define %s%s%s 1\n", + CONFIG_, sym->name, suffix); + } + break; + } + case S_HEX: { + const char *prefix = ""; + + if (value[0] != '0' || (value[1] != 'x' && value[1] != 'X')) + prefix = "0x"; + fprintf(fp, "#define %s%s %s%s\n", + CONFIG_, sym->name, prefix, value); + break; + } + case S_STRING: + case S_INT: + fprintf(fp, "#define %s%s %s\n", + CONFIG_, sym->name, value); + break; + default: + break; + } + +} + +static void +header_print_comment(FILE *fp, const char *value, void *arg) +{ + const char *p = value; + size_t l; + + fprintf(fp, "/*\n"); + for (;;) { + l = strcspn(p, "\n"); + fprintf(fp, " *"); + if (l) { + fprintf(fp, " "); + xfwrite(p, l, 1, fp); + p += l; + } + fprintf(fp, "\n"); + if (*p++ == '\0') + break; + } + fprintf(fp, " */\n"); +} + +static struct conf_printer header_printer_cb = +{ + .print_symbol = header_print_symbol, + .print_comment = header_print_comment, +}; + +/* + * Tristate printer + * + * This printer is used when generating the `include/config/tristate.conf' file. + */ +static void +tristate_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) +{ + + if (sym->type == S_TRISTATE && *value != 'n') + fprintf(fp, "%s%s=%c\n", CONFIG_, sym->name, (char)toupper(*value)); +} + +static struct conf_printer tristate_printer_cb = +{ + .print_symbol = tristate_print_symbol, + .print_comment = kconfig_print_comment, +}; + +static void conf_write_symbol(FILE *fp, struct symbol *sym, + struct conf_printer *printer, void *printer_arg) +{ + const char *str; + + switch (sym->type) { + case S_OTHER: + case S_UNKNOWN: + break; + case S_STRING: + str = sym_get_string_value(sym); + str = sym_escape_string_value(str); + printer->print_symbol(fp, sym, str, printer_arg); + free((void *)str); + break; + default: + str = sym_get_string_value(sym); + printer->print_symbol(fp, sym, str, printer_arg); + } +} + +static void +conf_write_heading(FILE *fp, struct conf_printer *printer, void *printer_arg) +{ + char buf[256]; + + snprintf(buf, sizeof(buf), + "\n" + "Automatically generated file; DO NOT EDIT.\n" + "%s\n", + rootmenu.prompt->text); + + printer->print_comment(fp, buf, printer_arg); +} + +/* + * Write out a minimal config. + * All values that has default values are skipped as this is redundant. + */ +int conf_write_defconfig(const char *filename) +{ + struct symbol *sym; + struct menu *menu; + FILE *out; + + out = fopen(filename, "w"); + if (!out) + return 1; + + sym_clear_all_valid(); + + /* Traverse all menus to find all relevant symbols */ + menu = rootmenu.list; + + while (menu != NULL) + { + sym = menu->sym; + if (sym == NULL) { + if (!menu_is_visible(menu)) + goto next_menu; + } else if (!sym_is_choice(sym)) { + sym_calc_value(sym); + if (!(sym->flags & SYMBOL_WRITE)) + goto next_menu; + sym->flags &= ~SYMBOL_WRITE; + /* If we cannot change the symbol - skip */ + if (!sym_is_changable(sym)) + goto next_menu; + /* If symbol equals to default value - skip */ + if (strcmp(sym_get_string_value(sym), sym_get_string_default(sym)) == 0) + goto next_menu; + + /* + * If symbol is a choice value and equals to the + * default for a choice - skip. + * But only if value is bool and equal to "y" and + * choice is not "optional". + * (If choice is "optional" then all values can be "n") + */ + if (sym_is_choice_value(sym)) { + struct symbol *cs; + struct symbol *ds; + + cs = prop_get_symbol(sym_get_choice_prop(sym)); + ds = sym_choice_default(cs); + if (!sym_is_optional(cs) && sym == ds) { + if ((sym->type == S_BOOLEAN) && + sym_get_tristate_value(sym) == yes) + goto next_menu; + } + } + conf_write_symbol(out, sym, &kconfig_printer_cb, NULL); + } +next_menu: + if (menu->list != NULL) { + menu = menu->list; + } + else if (menu->next != NULL) { + menu = menu->next; + } else { + while ((menu = menu->parent)) { + if (menu->next != NULL) { + menu = menu->next; + break; + } + } + } + } + fclose(out); + return 0; +} + +int conf_write(const char *name) +{ + FILE *out; + struct symbol *sym; + struct menu *menu; + const char *basename; + const char *str; + char dirname[PATH_MAX+1], tmpname[PATH_MAX+1], newname[PATH_MAX+1]; + char *env; + + dirname[0] = 0; + if (name && name[0]) { + struct stat st; + char *slash; + + if (!stat(name, &st) && S_ISDIR(st.st_mode)) { + strcpy(dirname, name); + strcat(dirname, "/"); + basename = conf_get_configname(); + } else if ((slash = strrchr(name, '/'))) { + int size = slash - name + 1; + memcpy(dirname, name, size); + dirname[size] = 0; + if (slash[1]) + basename = slash + 1; + else + basename = conf_get_configname(); + } else + basename = name; + } else + basename = conf_get_configname(); + + sprintf(newname, "%s%s", dirname, basename); + env = getenv("KCONFIG_OVERWRITECONFIG"); + if (!env || !*env) { + sprintf(tmpname, "%s.tmpconfig.%d", dirname, (int)getpid()); + out = fopen(tmpname, "w"); + } else { + *tmpname = 0; + out = fopen(newname, "w"); + } + if (!out) + return 1; + + conf_write_heading(out, &kconfig_printer_cb, NULL); + + if (!conf_get_changed()) + sym_clear_all_valid(); + + menu = rootmenu.list; + while (menu) { + sym = menu->sym; + if (!sym) { + if (!menu_is_visible(menu)) + goto next; + str = menu_get_prompt(menu); + fprintf(out, "\n" + "#\n" + "# %s\n" + "#\n", str); + } else if (!(sym->flags & SYMBOL_CHOICE)) { + sym_calc_value(sym); + if (!(sym->flags & SYMBOL_WRITE)) + goto next; + sym->flags &= ~SYMBOL_WRITE; + + conf_write_symbol(out, sym, &kconfig_printer_cb, NULL); + } + +next: + if (menu->list) { + menu = menu->list; + continue; + } + if (menu->next) + menu = menu->next; + else while ((menu = menu->parent)) { + if (menu->next) { + menu = menu->next; + break; + } + } + } + fclose(out); + + if (*tmpname) { + strcat(dirname, basename); + strcat(dirname, ".old"); + rename(newname, dirname); + if (rename(tmpname, newname)) + return 1; + } + + conf_message(_("configuration written to %s"), newname); + + sym_set_change_count(0); + + return 0; +} + +static int conf_split_config(void) +{ + const char *name; + char path[PATH_MAX+1]; + char *s, *d, c; + struct symbol *sym; + struct stat sb; + int res, i, fd; + + name = conf_get_autoconfig_name(); + conf_read_simple(name, S_DEF_AUTO); + + if (chdir("include/config")) + return 1; + + res = 0; + for_all_symbols(i, sym) { + sym_calc_value(sym); + if ((sym->flags & SYMBOL_AUTO) || !sym->name) + continue; + if (sym->flags & SYMBOL_WRITE) { + if (sym->flags & SYMBOL_DEF_AUTO) { + /* + * symbol has old and new value, + * so compare them... + */ + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym_get_tristate_value(sym) == + sym->def[S_DEF_AUTO].tri) + continue; + break; + case S_STRING: + case S_HEX: + case S_INT: + if (!strcmp(sym_get_string_value(sym), + sym->def[S_DEF_AUTO].val)) + continue; + break; + default: + break; + } + } else { + /* + * If there is no old value, only 'no' (unset) + * is allowed as new value. + */ + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym_get_tristate_value(sym) == no) + continue; + break; + default: + break; + } + } + } else if (!(sym->flags & SYMBOL_DEF_AUTO)) + /* There is neither an old nor a new value. */ + continue; + /* else + * There is an old value, but no new value ('no' (unset) + * isn't saved in auto.conf, so the old value is always + * different from 'no'). + */ + + /* Replace all '_' and append ".h" */ + s = sym->name; + d = path; + while ((c = *s++)) { + c = tolower(c); + *d++ = (c == '_') ? '/' : c; + } + strcpy(d, ".h"); + + /* Assume directory path already exists. */ + fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (fd == -1) { + if (errno != ENOENT) { + res = 1; + break; + } + /* + * Create directory components, + * unless they exist already. + */ + d = path; + while ((d = strchr(d, '/'))) { + *d = 0; + if (stat(path, &sb) && mkdir(path, 0755)) { + res = 1; + goto out; + } + *d++ = '/'; + } + /* Try it again. */ + fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (fd == -1) { + res = 1; + break; + } + } + close(fd); + } +out: + if (chdir("../..")) + return 1; + + return res; +} + +int conf_write_autoconf(void) +{ + struct symbol *sym; + const char *name; + FILE *out, *tristate, *out_h; + int i; + + /* + * Added for U-Boot SPL/TPL + */ + name = getenv("KCONFIG_OBJDIR"); + if (name && name[0]) + if (chdir(name)) + return 1; + + sym_clear_all_valid(); + + file_write_dep("include/config/auto.conf.cmd"); + + if (conf_split_config()) + return 1; + + out = fopen(".tmpconfig", "w"); + if (!out) + return 1; + + tristate = fopen(".tmpconfig_tristate", "w"); + if (!tristate) { + fclose(out); + return 1; + } + + out_h = fopen(".tmpconfig.h", "w"); + if (!out_h) { + fclose(out); + fclose(tristate); + return 1; + } + + conf_write_heading(out, &kconfig_printer_cb, NULL); + + conf_write_heading(tristate, &tristate_printer_cb, NULL); + + conf_write_heading(out_h, &header_printer_cb, NULL); + + for_all_symbols(i, sym) { + sym_calc_value(sym); + if (!(sym->flags & SYMBOL_WRITE) || !sym->name) + continue; + + /* write symbol to auto.conf, tristate and header files */ + conf_write_symbol(out, sym, &kconfig_printer_cb, (void *)1); + + conf_write_symbol(tristate, sym, &tristate_printer_cb, (void *)1); + + conf_write_symbol(out_h, sym, &header_printer_cb, NULL); + } + fclose(out); + fclose(tristate); + fclose(out_h); + + name = getenv("KCONFIG_AUTOHEADER"); + if (!name) + name = "include/generated/autoconf.h"; + if (rename(".tmpconfig.h", name)) + return 1; + name = getenv("KCONFIG_TRISTATE"); + if (!name) + name = "include/config/tristate.conf"; + if (rename(".tmpconfig_tristate", name)) + return 1; + name = conf_get_autoconfig_name(); + /* + * This must be the last step, kbuild has a dependency on auto.conf + * and this marks the successful completion of the previous steps. + */ + if (rename(".tmpconfig", name)) + return 1; + + return 0; +} + +static int sym_change_count; +static void (*conf_changed_callback)(void); + +void sym_set_change_count(int count) +{ + int _sym_change_count = sym_change_count; + sym_change_count = count; + if (conf_changed_callback && + (bool)_sym_change_count != (bool)count) + conf_changed_callback(); +} + +void sym_add_change_count(int count) +{ + sym_set_change_count(count + sym_change_count); +} + +bool conf_get_changed(void) +{ + return sym_change_count; +} + +void conf_set_changed_callback(void (*fn)(void)) +{ + conf_changed_callback = fn; +} + +static bool randomize_choice_values(struct symbol *csym) +{ + struct property *prop; + struct symbol *sym; + struct expr *e; + int cnt, def; + + /* + * If choice is mod then we may have more items selected + * and if no then no-one. + * In both cases stop. + */ + if (csym->curr.tri != yes) + return false; + + prop = sym_get_choice_prop(csym); + + /* count entries in choice block */ + cnt = 0; + expr_list_for_each_sym(prop->expr, e, sym) + cnt++; + + /* + * find a random value and set it to yes, + * set the rest to no so we have only one set + */ + def = (rand() % cnt); + + cnt = 0; + expr_list_for_each_sym(prop->expr, e, sym) { + if (def == cnt++) { + sym->def[S_DEF_USER].tri = yes; + csym->def[S_DEF_USER].val = sym; + } + else { + sym->def[S_DEF_USER].tri = no; + } + sym->flags |= SYMBOL_DEF_USER; + /* clear VALID to get value calculated */ + sym->flags &= ~SYMBOL_VALID; + } + csym->flags |= SYMBOL_DEF_USER; + /* clear VALID to get value calculated */ + csym->flags &= ~(SYMBOL_VALID); + + return true; +} + +void set_all_choice_values(struct symbol *csym) +{ + struct property *prop; + struct symbol *sym; + struct expr *e; + + prop = sym_get_choice_prop(csym); + + /* + * Set all non-assinged choice values to no + */ + expr_list_for_each_sym(prop->expr, e, sym) { + if (!sym_has_value(sym)) + sym->def[S_DEF_USER].tri = no; + } + csym->flags |= SYMBOL_DEF_USER; + /* clear VALID to get value calculated */ + csym->flags &= ~(SYMBOL_VALID | SYMBOL_NEED_SET_CHOICE_VALUES); +} + +bool conf_set_all_new_symbols(enum conf_def_mode mode) +{ + struct symbol *sym, *csym; + int i, cnt, pby, pty, ptm; /* pby: probability of boolean = y + * pty: probability of tristate = y + * ptm: probability of tristate = m + */ + + pby = 50; pty = ptm = 33; /* can't go as the default in switch-case + * below, otherwise gcc whines about + * -Wmaybe-uninitialized */ + if (mode == def_random) { + int n, p[3]; + char *env = getenv("KCONFIG_PROBABILITY"); + n = 0; + while( env && *env ) { + char *endp; + int tmp = strtol( env, &endp, 10 ); + if( tmp >= 0 && tmp <= 100 ) { + p[n++] = tmp; + } else { + errno = ERANGE; + perror( "KCONFIG_PROBABILITY" ); + exit( 1 ); + } + env = (*endp == ':') ? endp+1 : endp; + if( n >=3 ) { + break; + } + } + switch( n ) { + case 1: + pby = p[0]; ptm = pby/2; pty = pby-ptm; + break; + case 2: + pty = p[0]; ptm = p[1]; pby = pty + ptm; + break; + case 3: + pby = p[0]; pty = p[1]; ptm = p[2]; + break; + } + + if( pty+ptm > 100 ) { + errno = ERANGE; + perror( "KCONFIG_PROBABILITY" ); + exit( 1 ); + } + } + bool has_changed = false; + + for_all_symbols(i, sym) { + if (sym_has_value(sym) || (sym->flags & SYMBOL_VALID)) + continue; + switch (sym_get_type(sym)) { + case S_BOOLEAN: + case S_TRISTATE: + has_changed = true; + switch (mode) { + case def_yes: + sym->def[S_DEF_USER].tri = yes; + break; + case def_mod: + sym->def[S_DEF_USER].tri = mod; + break; + case def_no: + if (sym->flags & SYMBOL_ALLNOCONFIG_Y) + sym->def[S_DEF_USER].tri = yes; + else + sym->def[S_DEF_USER].tri = no; + break; + case def_random: + sym->def[S_DEF_USER].tri = no; + cnt = rand() % 100; + if (sym->type == S_TRISTATE) { + if (cnt < pty) + sym->def[S_DEF_USER].tri = yes; + else if (cnt < (pty+ptm)) + sym->def[S_DEF_USER].tri = mod; + } else if (cnt < pby) + sym->def[S_DEF_USER].tri = yes; + break; + default: + continue; + } + if (!(sym_is_choice(sym) && mode == def_random)) + sym->flags |= SYMBOL_DEF_USER; + break; + default: + break; + } + + } + + sym_clear_all_valid(); + + /* + * We have different type of choice blocks. + * If curr.tri equals to mod then we can select several + * choice symbols in one block. + * In this case we do nothing. + * If curr.tri equals yes then only one symbol can be + * selected in a choice block and we set it to yes, + * and the rest to no. + */ + if (mode != def_random) { + for_all_symbols(i, csym) { + if ((sym_is_choice(csym) && !sym_has_value(csym)) || + sym_is_choice_value(csym)) + csym->flags |= SYMBOL_NEED_SET_CHOICE_VALUES; + } + } + + for_all_symbols(i, csym) { + if (sym_has_value(csym) || !sym_is_choice(csym)) + continue; + + sym_calc_value(csym); + if (mode == def_random) + has_changed = randomize_choice_values(csym); + else { + set_all_choice_values(csym); + has_changed = true; + } + } + + return has_changed; +} diff --git a/scripts/kconfig/expr.c b/scripts/kconfig/expr.c new file mode 100644 index 0000000..d662652 --- /dev/null +++ b/scripts/kconfig/expr.c @@ -0,0 +1,1168 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#include "lkc.h" + +#define DEBUG_EXPR 0 + +struct expr *expr_alloc_symbol(struct symbol *sym) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = E_SYMBOL; + e->left.sym = sym; + return e; +} + +struct expr *expr_alloc_one(enum expr_type type, struct expr *ce) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = type; + e->left.expr = ce; + return e; +} + +struct expr *expr_alloc_two(enum expr_type type, struct expr *e1, struct expr *e2) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = type; + e->left.expr = e1; + e->right.expr = e2; + return e; +} + +struct expr *expr_alloc_comp(enum expr_type type, struct symbol *s1, struct symbol *s2) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = type; + e->left.sym = s1; + e->right.sym = s2; + return e; +} + +struct expr *expr_alloc_and(struct expr *e1, struct expr *e2) +{ + if (!e1) + return e2; + return e2 ? expr_alloc_two(E_AND, e1, e2) : e1; +} + +struct expr *expr_alloc_or(struct expr *e1, struct expr *e2) +{ + if (!e1) + return e2; + return e2 ? expr_alloc_two(E_OR, e1, e2) : e1; +} + +struct expr *expr_copy(const struct expr *org) +{ + struct expr *e; + + if (!org) + return NULL; + + e = xmalloc(sizeof(*org)); + memcpy(e, org, sizeof(*org)); + switch (org->type) { + case E_SYMBOL: + e->left = org->left; + break; + case E_NOT: + e->left.expr = expr_copy(org->left.expr); + break; + case E_EQUAL: + case E_UNEQUAL: + e->left.sym = org->left.sym; + e->right.sym = org->right.sym; + break; + case E_AND: + case E_OR: + case E_LIST: + e->left.expr = expr_copy(org->left.expr); + e->right.expr = expr_copy(org->right.expr); + break; + default: + printf("can't copy type %d\n", e->type); + free(e); + e = NULL; + break; + } + + return e; +} + +void expr_free(struct expr *e) +{ + if (!e) + return; + + switch (e->type) { + case E_SYMBOL: + break; + case E_NOT: + expr_free(e->left.expr); + return; + case E_EQUAL: + case E_UNEQUAL: + break; + case E_OR: + case E_AND: + expr_free(e->left.expr); + expr_free(e->right.expr); + break; + default: + printf("how to free type %d?\n", e->type); + break; + } + free(e); +} + +static int trans_count; + +#define e1 (*ep1) +#define e2 (*ep2) + +static void __expr_eliminate_eq(enum expr_type type, struct expr **ep1, struct expr **ep2) +{ + if (e1->type == type) { + __expr_eliminate_eq(type, &e1->left.expr, &e2); + __expr_eliminate_eq(type, &e1->right.expr, &e2); + return; + } + if (e2->type == type) { + __expr_eliminate_eq(type, &e1, &e2->left.expr); + __expr_eliminate_eq(type, &e1, &e2->right.expr); + return; + } + if (e1->type == E_SYMBOL && e2->type == E_SYMBOL && + e1->left.sym == e2->left.sym && + (e1->left.sym == &symbol_yes || e1->left.sym == &symbol_no)) + return; + if (!expr_eq(e1, e2)) + return; + trans_count++; + expr_free(e1); expr_free(e2); + switch (type) { + case E_OR: + e1 = expr_alloc_symbol(&symbol_no); + e2 = expr_alloc_symbol(&symbol_no); + break; + case E_AND: + e1 = expr_alloc_symbol(&symbol_yes); + e2 = expr_alloc_symbol(&symbol_yes); + break; + default: + ; + } +} + +void expr_eliminate_eq(struct expr **ep1, struct expr **ep2) +{ + if (!e1 || !e2) + return; + switch (e1->type) { + case E_OR: + case E_AND: + __expr_eliminate_eq(e1->type, ep1, ep2); + default: + ; + } + if (e1->type != e2->type) switch (e2->type) { + case E_OR: + case E_AND: + __expr_eliminate_eq(e2->type, ep1, ep2); + default: + ; + } + e1 = expr_eliminate_yn(e1); + e2 = expr_eliminate_yn(e2); +} + +#undef e1 +#undef e2 + +int expr_eq(struct expr *e1, struct expr *e2) +{ + int res, old_count; + + if (e1->type != e2->type) + return 0; + switch (e1->type) { + case E_EQUAL: + case E_UNEQUAL: + return e1->left.sym == e2->left.sym && e1->right.sym == e2->right.sym; + case E_SYMBOL: + return e1->left.sym == e2->left.sym; + case E_NOT: + return expr_eq(e1->left.expr, e2->left.expr); + case E_AND: + case E_OR: + e1 = expr_copy(e1); + e2 = expr_copy(e2); + old_count = trans_count; + expr_eliminate_eq(&e1, &e2); + res = (e1->type == E_SYMBOL && e2->type == E_SYMBOL && + e1->left.sym == e2->left.sym); + expr_free(e1); + expr_free(e2); + trans_count = old_count; + return res; + case E_LIST: + case E_RANGE: + case E_NONE: + /* panic */; + } + + if (DEBUG_EXPR) { + expr_fprint(e1, stdout); + printf(" = "); + expr_fprint(e2, stdout); + printf(" ?\n"); + } + + return 0; +} + +struct expr *expr_eliminate_yn(struct expr *e) +{ + struct expr *tmp; + + if (e) switch (e->type) { + case E_AND: + e->left.expr = expr_eliminate_yn(e->left.expr); + e->right.expr = expr_eliminate_yn(e->right.expr); + if (e->left.expr->type == E_SYMBOL) { + if (e->left.expr->left.sym == &symbol_no) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + e->right.expr = NULL; + return e; + } else if (e->left.expr->left.sym == &symbol_yes) { + free(e->left.expr); + tmp = e->right.expr; + *e = *(e->right.expr); + free(tmp); + return e; + } + } + if (e->right.expr->type == E_SYMBOL) { + if (e->right.expr->left.sym == &symbol_no) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + e->right.expr = NULL; + return e; + } else if (e->right.expr->left.sym == &symbol_yes) { + free(e->right.expr); + tmp = e->left.expr; + *e = *(e->left.expr); + free(tmp); + return e; + } + } + break; + case E_OR: + e->left.expr = expr_eliminate_yn(e->left.expr); + e->right.expr = expr_eliminate_yn(e->right.expr); + if (e->left.expr->type == E_SYMBOL) { + if (e->left.expr->left.sym == &symbol_no) { + free(e->left.expr); + tmp = e->right.expr; + *e = *(e->right.expr); + free(tmp); + return e; + } else if (e->left.expr->left.sym == &symbol_yes) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + e->right.expr = NULL; + return e; + } + } + if (e->right.expr->type == E_SYMBOL) { + if (e->right.expr->left.sym == &symbol_no) { + free(e->right.expr); + tmp = e->left.expr; + *e = *(e->left.expr); + free(tmp); + return e; + } else if (e->right.expr->left.sym == &symbol_yes) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + e->right.expr = NULL; + return e; + } + } + break; + default: + ; + } + return e; +} + +/* + * bool FOO!=n => FOO + */ +struct expr *expr_trans_bool(struct expr *e) +{ + if (!e) + return NULL; + switch (e->type) { + case E_AND: + case E_OR: + case E_NOT: + e->left.expr = expr_trans_bool(e->left.expr); + e->right.expr = expr_trans_bool(e->right.expr); + break; + case E_UNEQUAL: + // FOO!=n -> FOO + if (e->left.sym->type == S_TRISTATE) { + if (e->right.sym == &symbol_no) { + e->type = E_SYMBOL; + e->right.sym = NULL; + } + } + break; + default: + ; + } + return e; +} + +/* + * e1 || e2 -> ? + */ +static struct expr *expr_join_or(struct expr *e1, struct expr *e2) +{ + struct expr *tmp; + struct symbol *sym1, *sym2; + + if (expr_eq(e1, e2)) + return expr_copy(e1); + if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT) + return NULL; + if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT) + return NULL; + if (e1->type == E_NOT) { + tmp = e1->left.expr; + if (tmp->type != E_EQUAL && tmp->type != E_UNEQUAL && tmp->type != E_SYMBOL) + return NULL; + sym1 = tmp->left.sym; + } else + sym1 = e1->left.sym; + if (e2->type == E_NOT) { + if (e2->left.expr->type != E_SYMBOL) + return NULL; + sym2 = e2->left.expr->left.sym; + } else + sym2 = e2->left.sym; + if (sym1 != sym2) + return NULL; + if (sym1->type != S_BOOLEAN && sym1->type != S_TRISTATE) + return NULL; + if (sym1->type == S_TRISTATE) { + if (e1->type == E_EQUAL && e2->type == E_EQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_mod) || + (e1->right.sym == &symbol_mod && e2->right.sym == &symbol_yes))) { + // (a='y') || (a='m') -> (a!='n') + return expr_alloc_comp(E_UNEQUAL, sym1, &symbol_no); + } + if (e1->type == E_EQUAL && e2->type == E_EQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_yes))) { + // (a='y') || (a='n') -> (a!='m') + return expr_alloc_comp(E_UNEQUAL, sym1, &symbol_mod); + } + if (e1->type == E_EQUAL && e2->type == E_EQUAL && + ((e1->right.sym == &symbol_mod && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_mod))) { + // (a='m') || (a='n') -> (a!='y') + return expr_alloc_comp(E_UNEQUAL, sym1, &symbol_yes); + } + } + if (sym1->type == S_BOOLEAN && sym1 == sym2) { + if ((e1->type == E_NOT && e1->left.expr->type == E_SYMBOL && e2->type == E_SYMBOL) || + (e2->type == E_NOT && e2->left.expr->type == E_SYMBOL && e1->type == E_SYMBOL)) + return expr_alloc_symbol(&symbol_yes); + } + + if (DEBUG_EXPR) { + printf("optimize ("); + expr_fprint(e1, stdout); + printf(") || ("); + expr_fprint(e2, stdout); + printf(")?\n"); + } + return NULL; +} + +static struct expr *expr_join_and(struct expr *e1, struct expr *e2) +{ + struct expr *tmp; + struct symbol *sym1, *sym2; + + if (expr_eq(e1, e2)) + return expr_copy(e1); + if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT) + return NULL; + if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT) + return NULL; + if (e1->type == E_NOT) { + tmp = e1->left.expr; + if (tmp->type != E_EQUAL && tmp->type != E_UNEQUAL && tmp->type != E_SYMBOL) + return NULL; + sym1 = tmp->left.sym; + } else + sym1 = e1->left.sym; + if (e2->type == E_NOT) { + if (e2->left.expr->type != E_SYMBOL) + return NULL; + sym2 = e2->left.expr->left.sym; + } else + sym2 = e2->left.sym; + if (sym1 != sym2) + return NULL; + if (sym1->type != S_BOOLEAN && sym1->type != S_TRISTATE) + return NULL; + + if ((e1->type == E_SYMBOL && e2->type == E_EQUAL && e2->right.sym == &symbol_yes) || + (e2->type == E_SYMBOL && e1->type == E_EQUAL && e1->right.sym == &symbol_yes)) + // (a) && (a='y') -> (a='y') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_yes); + + if ((e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_no) || + (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_no)) + // (a) && (a!='n') -> (a) + return expr_alloc_symbol(sym1); + + if ((e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_mod) || + (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_mod)) + // (a) && (a!='m') -> (a='y') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_yes); + + if (sym1->type == S_TRISTATE) { + if (e1->type == E_EQUAL && e2->type == E_UNEQUAL) { + // (a='b') && (a!='c') -> 'b'='c' ? 'n' : a='b' + sym2 = e1->right.sym; + if ((e2->right.sym->flags & SYMBOL_CONST) && (sym2->flags & SYMBOL_CONST)) + return sym2 != e2->right.sym ? expr_alloc_comp(E_EQUAL, sym1, sym2) + : expr_alloc_symbol(&symbol_no); + } + if (e1->type == E_UNEQUAL && e2->type == E_EQUAL) { + // (a='b') && (a!='c') -> 'b'='c' ? 'n' : a='b' + sym2 = e2->right.sym; + if ((e1->right.sym->flags & SYMBOL_CONST) && (sym2->flags & SYMBOL_CONST)) + return sym2 != e1->right.sym ? expr_alloc_comp(E_EQUAL, sym1, sym2) + : expr_alloc_symbol(&symbol_no); + } + if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_yes))) + // (a!='y') && (a!='n') -> (a='m') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_mod); + + if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_mod) || + (e1->right.sym == &symbol_mod && e2->right.sym == &symbol_yes))) + // (a!='y') && (a!='m') -> (a='n') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_no); + + if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && + ((e1->right.sym == &symbol_mod && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_mod))) + // (a!='m') && (a!='n') -> (a='m') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_yes); + + if ((e1->type == E_SYMBOL && e2->type == E_EQUAL && e2->right.sym == &symbol_mod) || + (e2->type == E_SYMBOL && e1->type == E_EQUAL && e1->right.sym == &symbol_mod) || + (e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_yes) || + (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_yes)) + return NULL; + } + + if (DEBUG_EXPR) { + printf("optimize ("); + expr_fprint(e1, stdout); + printf(") && ("); + expr_fprint(e2, stdout); + printf(")?\n"); + } + return NULL; +} + +static void expr_eliminate_dups1(enum expr_type type, struct expr **ep1, struct expr **ep2) +{ +#define e1 (*ep1) +#define e2 (*ep2) + struct expr *tmp; + + if (e1->type == type) { + expr_eliminate_dups1(type, &e1->left.expr, &e2); + expr_eliminate_dups1(type, &e1->right.expr, &e2); + return; + } + if (e2->type == type) { + expr_eliminate_dups1(type, &e1, &e2->left.expr); + expr_eliminate_dups1(type, &e1, &e2->right.expr); + return; + } + if (e1 == e2) + return; + + switch (e1->type) { + case E_OR: case E_AND: + expr_eliminate_dups1(e1->type, &e1, &e1); + default: + ; + } + + switch (type) { + case E_OR: + tmp = expr_join_or(e1, e2); + if (tmp) { + expr_free(e1); expr_free(e2); + e1 = expr_alloc_symbol(&symbol_no); + e2 = tmp; + trans_count++; + } + break; + case E_AND: + tmp = expr_join_and(e1, e2); + if (tmp) { + expr_free(e1); expr_free(e2); + e1 = expr_alloc_symbol(&symbol_yes); + e2 = tmp; + trans_count++; + } + break; + default: + ; + } +#undef e1 +#undef e2 +} + +static void expr_eliminate_dups2(enum expr_type type, struct expr **ep1, struct expr **ep2) +{ +#define e1 (*ep1) +#define e2 (*ep2) + struct expr *tmp, *tmp1, *tmp2; + + if (e1->type == type) { + expr_eliminate_dups2(type, &e1->left.expr, &e2); + expr_eliminate_dups2(type, &e1->right.expr, &e2); + return; + } + if (e2->type == type) { + expr_eliminate_dups2(type, &e1, &e2->left.expr); + expr_eliminate_dups2(type, &e1, &e2->right.expr); + } + if (e1 == e2) + return; + + switch (e1->type) { + case E_OR: + expr_eliminate_dups2(e1->type, &e1, &e1); + // (FOO || BAR) && (!FOO && !BAR) -> n + tmp1 = expr_transform(expr_alloc_one(E_NOT, expr_copy(e1))); + tmp2 = expr_copy(e2); + tmp = expr_extract_eq_and(&tmp1, &tmp2); + if (expr_is_yes(tmp1)) { + expr_free(e1); + e1 = expr_alloc_symbol(&symbol_no); + trans_count++; + } + expr_free(tmp2); + expr_free(tmp1); + expr_free(tmp); + break; + case E_AND: + expr_eliminate_dups2(e1->type, &e1, &e1); + // (FOO && BAR) || (!FOO || !BAR) -> y + tmp1 = expr_transform(expr_alloc_one(E_NOT, expr_copy(e1))); + tmp2 = expr_copy(e2); + tmp = expr_extract_eq_or(&tmp1, &tmp2); + if (expr_is_no(tmp1)) { + expr_free(e1); + e1 = expr_alloc_symbol(&symbol_yes); + trans_count++; + } + expr_free(tmp2); + expr_free(tmp1); + expr_free(tmp); + break; + default: + ; + } +#undef e1 +#undef e2 +} + +struct expr *expr_eliminate_dups(struct expr *e) +{ + int oldcount; + if (!e) + return e; + + oldcount = trans_count; + while (1) { + trans_count = 0; + switch (e->type) { + case E_OR: case E_AND: + expr_eliminate_dups1(e->type, &e, &e); + expr_eliminate_dups2(e->type, &e, &e); + default: + ; + } + if (!trans_count) + break; + e = expr_eliminate_yn(e); + } + trans_count = oldcount; + return e; +} + +struct expr *expr_transform(struct expr *e) +{ + struct expr *tmp; + + if (!e) + return NULL; + switch (e->type) { + case E_EQUAL: + case E_UNEQUAL: + case E_SYMBOL: + case E_LIST: + break; + default: + e->left.expr = expr_transform(e->left.expr); + e->right.expr = expr_transform(e->right.expr); + } + + switch (e->type) { + case E_EQUAL: + if (e->left.sym->type != S_BOOLEAN) + break; + if (e->right.sym == &symbol_no) { + e->type = E_NOT; + e->left.expr = expr_alloc_symbol(e->left.sym); + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_mod) { + printf("boolean symbol %s tested for 'm'? test forced to 'n'\n", e->left.sym->name); + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_yes) { + e->type = E_SYMBOL; + e->right.sym = NULL; + break; + } + break; + case E_UNEQUAL: + if (e->left.sym->type != S_BOOLEAN) + break; + if (e->right.sym == &symbol_no) { + e->type = E_SYMBOL; + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_mod) { + printf("boolean symbol %s tested for 'm'? test forced to 'y'\n", e->left.sym->name); + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_yes) { + e->type = E_NOT; + e->left.expr = expr_alloc_symbol(e->left.sym); + e->right.sym = NULL; + break; + } + break; + case E_NOT: + switch (e->left.expr->type) { + case E_NOT: + // !!a -> a + tmp = e->left.expr->left.expr; + free(e->left.expr); + free(e); + e = tmp; + e = expr_transform(e); + break; + case E_EQUAL: + case E_UNEQUAL: + // !a='x' -> a!='x' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = e->type == E_EQUAL ? E_UNEQUAL : E_EQUAL; + break; + case E_OR: + // !(a || b) -> !a && !b + tmp = e->left.expr; + e->type = E_AND; + e->right.expr = expr_alloc_one(E_NOT, tmp->right.expr); + tmp->type = E_NOT; + tmp->right.expr = NULL; + e = expr_transform(e); + break; + case E_AND: + // !(a && b) -> !a || !b + tmp = e->left.expr; + e->type = E_OR; + e->right.expr = expr_alloc_one(E_NOT, tmp->right.expr); + tmp->type = E_NOT; + tmp->right.expr = NULL; + e = expr_transform(e); + break; + case E_SYMBOL: + if (e->left.expr->left.sym == &symbol_yes) { + // !'y' -> 'n' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + break; + } + if (e->left.expr->left.sym == &symbol_mod) { + // !'m' -> 'm' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = E_SYMBOL; + e->left.sym = &symbol_mod; + break; + } + if (e->left.expr->left.sym == &symbol_no) { + // !'n' -> 'y' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + break; + } + break; + default: + ; + } + break; + default: + ; + } + return e; +} + +int expr_contains_symbol(struct expr *dep, struct symbol *sym) +{ + if (!dep) + return 0; + + switch (dep->type) { + case E_AND: + case E_OR: + return expr_contains_symbol(dep->left.expr, sym) || + expr_contains_symbol(dep->right.expr, sym); + case E_SYMBOL: + return dep->left.sym == sym; + case E_EQUAL: + case E_UNEQUAL: + return dep->left.sym == sym || + dep->right.sym == sym; + case E_NOT: + return expr_contains_symbol(dep->left.expr, sym); + default: + ; + } + return 0; +} + +bool expr_depends_symbol(struct expr *dep, struct symbol *sym) +{ + if (!dep) + return false; + + switch (dep->type) { + case E_AND: + return expr_depends_symbol(dep->left.expr, sym) || + expr_depends_symbol(dep->right.expr, sym); + case E_SYMBOL: + return dep->left.sym == sym; + case E_EQUAL: + if (dep->left.sym == sym) { + if (dep->right.sym == &symbol_yes || dep->right.sym == &symbol_mod) + return true; + } + break; + case E_UNEQUAL: + if (dep->left.sym == sym) { + if (dep->right.sym == &symbol_no) + return true; + } + break; + default: + ; + } + return false; +} + +struct expr *expr_extract_eq_and(struct expr **ep1, struct expr **ep2) +{ + struct expr *tmp = NULL; + expr_extract_eq(E_AND, &tmp, ep1, ep2); + if (tmp) { + *ep1 = expr_eliminate_yn(*ep1); + *ep2 = expr_eliminate_yn(*ep2); + } + return tmp; +} + +struct expr *expr_extract_eq_or(struct expr **ep1, struct expr **ep2) +{ + struct expr *tmp = NULL; + expr_extract_eq(E_OR, &tmp, ep1, ep2); + if (tmp) { + *ep1 = expr_eliminate_yn(*ep1); + *ep2 = expr_eliminate_yn(*ep2); + } + return tmp; +} + +void expr_extract_eq(enum expr_type type, struct expr **ep, struct expr **ep1, struct expr **ep2) +{ +#define e1 (*ep1) +#define e2 (*ep2) + if (e1->type == type) { + expr_extract_eq(type, ep, &e1->left.expr, &e2); + expr_extract_eq(type, ep, &e1->right.expr, &e2); + return; + } + if (e2->type == type) { + expr_extract_eq(type, ep, ep1, &e2->left.expr); + expr_extract_eq(type, ep, ep1, &e2->right.expr); + return; + } + if (expr_eq(e1, e2)) { + *ep = *ep ? expr_alloc_two(type, *ep, e1) : e1; + expr_free(e2); + if (type == E_AND) { + e1 = expr_alloc_symbol(&symbol_yes); + e2 = expr_alloc_symbol(&symbol_yes); + } else if (type == E_OR) { + e1 = expr_alloc_symbol(&symbol_no); + e2 = expr_alloc_symbol(&symbol_no); + } + } +#undef e1 +#undef e2 +} + +struct expr *expr_trans_compare(struct expr *e, enum expr_type type, struct symbol *sym) +{ + struct expr *e1, *e2; + + if (!e) { + e = expr_alloc_symbol(sym); + if (type == E_UNEQUAL) + e = expr_alloc_one(E_NOT, e); + return e; + } + switch (e->type) { + case E_AND: + e1 = expr_trans_compare(e->left.expr, E_EQUAL, sym); + e2 = expr_trans_compare(e->right.expr, E_EQUAL, sym); + if (sym == &symbol_yes) + e = expr_alloc_two(E_AND, e1, e2); + if (sym == &symbol_no) + e = expr_alloc_two(E_OR, e1, e2); + if (type == E_UNEQUAL) + e = expr_alloc_one(E_NOT, e); + return e; + case E_OR: + e1 = expr_trans_compare(e->left.expr, E_EQUAL, sym); + e2 = expr_trans_compare(e->right.expr, E_EQUAL, sym); + if (sym == &symbol_yes) + e = expr_alloc_two(E_OR, e1, e2); + if (sym == &symbol_no) + e = expr_alloc_two(E_AND, e1, e2); + if (type == E_UNEQUAL) + e = expr_alloc_one(E_NOT, e); + return e; + case E_NOT: + return expr_trans_compare(e->left.expr, type == E_EQUAL ? E_UNEQUAL : E_EQUAL, sym); + case E_UNEQUAL: + case E_EQUAL: + if (type == E_EQUAL) { + if (sym == &symbol_yes) + return expr_copy(e); + if (sym == &symbol_mod) + return expr_alloc_symbol(&symbol_no); + if (sym == &symbol_no) + return expr_alloc_one(E_NOT, expr_copy(e)); + } else { + if (sym == &symbol_yes) + return expr_alloc_one(E_NOT, expr_copy(e)); + if (sym == &symbol_mod) + return expr_alloc_symbol(&symbol_yes); + if (sym == &symbol_no) + return expr_copy(e); + } + break; + case E_SYMBOL: + return expr_alloc_comp(type, e->left.sym, sym); + case E_LIST: + case E_RANGE: + case E_NONE: + /* panic */; + } + return NULL; +} + +tristate expr_calc_value(struct expr *e) +{ + tristate val1, val2; + const char *str1, *str2; + + if (!e) + return yes; + + switch (e->type) { + case E_SYMBOL: + sym_calc_value(e->left.sym); + return e->left.sym->curr.tri; + case E_AND: + val1 = expr_calc_value(e->left.expr); + val2 = expr_calc_value(e->right.expr); + return EXPR_AND(val1, val2); + case E_OR: + val1 = expr_calc_value(e->left.expr); + val2 = expr_calc_value(e->right.expr); + return EXPR_OR(val1, val2); + case E_NOT: + val1 = expr_calc_value(e->left.expr); + return EXPR_NOT(val1); + case E_EQUAL: + sym_calc_value(e->left.sym); + sym_calc_value(e->right.sym); + str1 = sym_get_string_value(e->left.sym); + str2 = sym_get_string_value(e->right.sym); + return !strcmp(str1, str2) ? yes : no; + case E_UNEQUAL: + sym_calc_value(e->left.sym); + sym_calc_value(e->right.sym); + str1 = sym_get_string_value(e->left.sym); + str2 = sym_get_string_value(e->right.sym); + return !strcmp(str1, str2) ? no : yes; + default: + printf("expr_calc_value: %d?\n", e->type); + return no; + } +} + +int expr_compare_type(enum expr_type t1, enum expr_type t2) +{ +#if 0 + return 1; +#else + if (t1 == t2) + return 0; + switch (t1) { + case E_EQUAL: + case E_UNEQUAL: + if (t2 == E_NOT) + return 1; + case E_NOT: + if (t2 == E_AND) + return 1; + case E_AND: + if (t2 == E_OR) + return 1; + case E_OR: + if (t2 == E_LIST) + return 1; + case E_LIST: + if (t2 == 0) + return 1; + default: + return -1; + } + printf("[%dgt%d?]", t1, t2); + return 0; +#endif +} + +static inline struct expr * +expr_get_leftmost_symbol(const struct expr *e) +{ + + if (e == NULL) + return NULL; + + while (e->type != E_SYMBOL) + e = e->left.expr; + + return expr_copy(e); +} + +/* + * Given expression `e1' and `e2', returns the leaf of the longest + * sub-expression of `e1' not containing 'e2. + */ +struct expr *expr_simplify_unmet_dep(struct expr *e1, struct expr *e2) +{ + struct expr *ret; + + switch (e1->type) { + case E_OR: + return expr_alloc_and( + expr_simplify_unmet_dep(e1->left.expr, e2), + expr_simplify_unmet_dep(e1->right.expr, e2)); + case E_AND: { + struct expr *e; + e = expr_alloc_and(expr_copy(e1), expr_copy(e2)); + e = expr_eliminate_dups(e); + ret = (!expr_eq(e, e1)) ? e1 : NULL; + expr_free(e); + break; + } + default: + ret = e1; + break; + } + + return expr_get_leftmost_symbol(ret); +} + +void expr_print(struct expr *e, void (*fn)(void *, struct symbol *, const char *), void *data, int prevtoken) +{ + if (!e) { + fn(data, NULL, "y"); + return; + } + + if (expr_compare_type(prevtoken, e->type) > 0) + fn(data, NULL, "("); + switch (e->type) { + case E_SYMBOL: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, "<choice>"); + break; + case E_NOT: + fn(data, NULL, "!"); + expr_print(e->left.expr, fn, data, E_NOT); + break; + case E_EQUAL: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, "<choice>"); + fn(data, NULL, "="); + fn(data, e->right.sym, e->right.sym->name); + break; + case E_UNEQUAL: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, "<choice>"); + fn(data, NULL, "!="); + fn(data, e->right.sym, e->right.sym->name); + break; + case E_OR: + expr_print(e->left.expr, fn, data, E_OR); + fn(data, NULL, " || "); + expr_print(e->right.expr, fn, data, E_OR); + break; + case E_AND: + expr_print(e->left.expr, fn, data, E_AND); + fn(data, NULL, " && "); + expr_print(e->right.expr, fn, data, E_AND); + break; + case E_LIST: + fn(data, e->right.sym, e->right.sym->name); + if (e->left.expr) { + fn(data, NULL, " ^ "); + expr_print(e->left.expr, fn, data, E_LIST); + } + break; + case E_RANGE: + fn(data, NULL, "["); + fn(data, e->left.sym, e->left.sym->name); + fn(data, NULL, " "); + fn(data, e->right.sym, e->right.sym->name); + fn(data, NULL, "]"); + break; + default: + { + char buf[32]; + sprintf(buf, "<unknown type %d>", e->type); + fn(data, NULL, buf); + break; + } + } + if (expr_compare_type(prevtoken, e->type) > 0) + fn(data, NULL, ")"); +} + +static void expr_print_file_helper(void *data, struct symbol *sym, const char *str) +{ + xfwrite(str, strlen(str), 1, data); +} + +void expr_fprint(struct expr *e, FILE *out) +{ + expr_print(e, expr_print_file_helper, out, E_NONE); +} + +static void expr_print_gstr_helper(void *data, struct symbol *sym, const char *str) +{ + struct gstr *gs = (struct gstr*)data; + const char *sym_str = NULL; + + if (sym) + sym_str = sym_get_string_value(sym); + + if (gs->max_width) { + unsigned extra_length = strlen(str); + const char *last_cr = strrchr(gs->s, '\n'); + unsigned last_line_length; + + if (sym_str) + extra_length += 4 + strlen(sym_str); + + if (!last_cr) + last_cr = gs->s; + + last_line_length = strlen(gs->s) - (last_cr - gs->s); + + if ((last_line_length + extra_length) > gs->max_width) + str_append(gs, "\\\n"); + } + + str_append(gs, str); + if (sym && sym->type != S_UNKNOWN) + str_printf(gs, " [=%s]", sym_str); +} + +void expr_gstr_print(struct expr *e, struct gstr *gs) +{ + expr_print(e, expr_print_gstr_helper, gs, E_NONE); +} diff --git a/scripts/kconfig/expr.h b/scripts/kconfig/expr.h new file mode 100644 index 0000000..412ea8a --- /dev/null +++ b/scripts/kconfig/expr.h @@ -0,0 +1,241 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#ifndef EXPR_H +#define EXPR_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include <assert.h> +#include <stdio.h> +#include "list.h" +#ifndef __cplusplus +#include <stdbool.h> +#endif + +struct file { + struct file *next; + struct file *parent; + const char *name; + int lineno; +}; + +typedef enum tristate { + no, mod, yes +} tristate; + +enum expr_type { + E_NONE, E_OR, E_AND, E_NOT, E_EQUAL, E_UNEQUAL, E_LIST, E_SYMBOL, E_RANGE +}; + +union expr_data { + struct expr *expr; + struct symbol *sym; +}; + +struct expr { + enum expr_type type; + union expr_data left, right; +}; + +#define EXPR_OR(dep1, dep2) (((dep1)>(dep2))?(dep1):(dep2)) +#define EXPR_AND(dep1, dep2) (((dep1)<(dep2))?(dep1):(dep2)) +#define EXPR_NOT(dep) (2-(dep)) + +#define expr_list_for_each_sym(l, e, s) \ + for (e = (l); e && (s = e->right.sym); e = e->left.expr) + +struct expr_value { + struct expr *expr; + tristate tri; +}; + +struct symbol_value { + void *val; + tristate tri; +}; + +enum symbol_type { + S_UNKNOWN, S_BOOLEAN, S_TRISTATE, S_INT, S_HEX, S_STRING, S_OTHER +}; + +/* enum values are used as index to symbol.def[] */ +enum { + S_DEF_USER, /* main user value */ + S_DEF_AUTO, /* values read from auto.conf */ + S_DEF_DEF3, /* Reserved for UI usage */ + S_DEF_DEF4, /* Reserved for UI usage */ + S_DEF_COUNT +}; + +struct symbol { + struct symbol *next; + char *name; + enum symbol_type type; + struct symbol_value curr; + struct symbol_value def[S_DEF_COUNT]; + tristate visible; + int flags; + struct property *prop; + struct expr_value dir_dep; + struct expr_value rev_dep; +}; + +#define for_all_symbols(i, sym) for (i = 0; i < SYMBOL_HASHSIZE; i++) for (sym = symbol_hash[i]; sym; sym = sym->next) if (sym->type != S_OTHER) + +#define SYMBOL_CONST 0x0001 /* symbol is const */ +#define SYMBOL_CHECK 0x0008 /* used during dependency checking */ +#define SYMBOL_CHOICE 0x0010 /* start of a choice block (null name) */ +#define SYMBOL_CHOICEVAL 0x0020 /* used as a value in a choice block */ +#define SYMBOL_VALID 0x0080 /* set when symbol.curr is calculated */ +#define SYMBOL_OPTIONAL 0x0100 /* choice is optional - values can be 'n' */ +#define SYMBOL_WRITE 0x0200 /* write symbol to file (KCONFIG_CONFIG) */ +#define SYMBOL_CHANGED 0x0400 /* ? */ +#define SYMBOL_AUTO 0x1000 /* value from environment variable */ +#define SYMBOL_CHECKED 0x2000 /* used during dependency checking */ +#define SYMBOL_WARNED 0x8000 /* warning has been issued */ + +/* Set when symbol.def[] is used */ +#define SYMBOL_DEF 0x10000 /* First bit of SYMBOL_DEF */ +#define SYMBOL_DEF_USER 0x10000 /* symbol.def[S_DEF_USER] is valid */ +#define SYMBOL_DEF_AUTO 0x20000 /* symbol.def[S_DEF_AUTO] is valid */ +#define SYMBOL_DEF3 0x40000 /* symbol.def[S_DEF_3] is valid */ +#define SYMBOL_DEF4 0x80000 /* symbol.def[S_DEF_4] is valid */ + +/* choice values need to be set before calculating this symbol value */ +#define SYMBOL_NEED_SET_CHOICE_VALUES 0x100000 + +/* Set symbol to y if allnoconfig; used for symbols that hide others */ +#define SYMBOL_ALLNOCONFIG_Y 0x200000 + +#define SYMBOL_MAXLENGTH 256 +#define SYMBOL_HASHSIZE 9973 + +/* A property represent the config options that can be associated + * with a config "symbol". + * Sample: + * config FOO + * default y + * prompt "foo prompt" + * select BAR + * config BAZ + * int "BAZ Value" + * range 1..255 + */ +enum prop_type { + P_UNKNOWN, + P_PROMPT, /* prompt "foo prompt" or "BAZ Value" */ + P_COMMENT, /* text associated with a comment */ + P_MENU, /* prompt associated with a menuconfig option */ + P_DEFAULT, /* default y */ + P_CHOICE, /* choice value */ + P_SELECT, /* select BAR */ + P_RANGE, /* range 7..100 (for a symbol) */ + P_ENV, /* value from environment variable */ + P_SYMBOL, /* where a symbol is defined */ +}; + +struct property { + struct property *next; /* next property - null if last */ + struct symbol *sym; /* the symbol for which the property is associated */ + enum prop_type type; /* type of property */ + const char *text; /* the prompt value - P_PROMPT, P_MENU, P_COMMENT */ + struct expr_value visible; + struct expr *expr; /* the optional conditional part of the property */ + struct menu *menu; /* the menu the property are associated with + * valid for: P_SELECT, P_RANGE, P_CHOICE, + * P_PROMPT, P_DEFAULT, P_MENU, P_COMMENT */ + struct file *file; /* what file was this property defined */ + int lineno; /* what lineno was this property defined */ +}; + +#define for_all_properties(sym, st, tok) \ + for (st = sym->prop; st; st = st->next) \ + if (st->type == (tok)) +#define for_all_defaults(sym, st) for_all_properties(sym, st, P_DEFAULT) +#define for_all_choices(sym, st) for_all_properties(sym, st, P_CHOICE) +#define for_all_prompts(sym, st) \ + for (st = sym->prop; st; st = st->next) \ + if (st->text) + +struct menu { + struct menu *next; + struct menu *parent; + struct menu *list; + struct symbol *sym; + struct property *prompt; + struct expr *visibility; + struct expr *dep; + unsigned int flags; + char *help; + struct file *file; + int lineno; + void *data; +}; + +#define MENU_CHANGED 0x0001 +#define MENU_ROOT 0x0002 + +struct jump_key { + struct list_head entries; + size_t offset; + struct menu *target; + int index; +}; + +#define JUMP_NB 9 + +extern struct file *file_list; +extern struct file *current_file; +struct file *lookup_file(const char *name); + +extern struct symbol symbol_yes, symbol_no, symbol_mod; +extern struct symbol *modules_sym; +extern struct symbol *sym_defconfig_list; +extern int cdebug; +struct expr *expr_alloc_symbol(struct symbol *sym); +struct expr *expr_alloc_one(enum expr_type type, struct expr *ce); +struct expr *expr_alloc_two(enum expr_type type, struct expr *e1, struct expr *e2); +struct expr *expr_alloc_comp(enum expr_type type, struct symbol *s1, struct symbol *s2); +struct expr *expr_alloc_and(struct expr *e1, struct expr *e2); +struct expr *expr_alloc_or(struct expr *e1, struct expr *e2); +struct expr *expr_copy(const struct expr *org); +void expr_free(struct expr *e); +int expr_eq(struct expr *e1, struct expr *e2); +void expr_eliminate_eq(struct expr **ep1, struct expr **ep2); +tristate expr_calc_value(struct expr *e); +struct expr *expr_eliminate_yn(struct expr *e); +struct expr *expr_trans_bool(struct expr *e); +struct expr *expr_eliminate_dups(struct expr *e); +struct expr *expr_transform(struct expr *e); +int expr_contains_symbol(struct expr *dep, struct symbol *sym); +bool expr_depends_symbol(struct expr *dep, struct symbol *sym); +struct expr *expr_extract_eq_and(struct expr **ep1, struct expr **ep2); +struct expr *expr_extract_eq_or(struct expr **ep1, struct expr **ep2); +void expr_extract_eq(enum expr_type type, struct expr **ep, struct expr **ep1, struct expr **ep2); +struct expr *expr_trans_compare(struct expr *e, enum expr_type type, struct symbol *sym); +struct expr *expr_simplify_unmet_dep(struct expr *e1, struct expr *e2); + +void expr_fprint(struct expr *e, FILE *out); +struct gstr; /* forward */ +void expr_gstr_print(struct expr *e, struct gstr *gs); + +static inline int expr_is_yes(struct expr *e) +{ + return !e || (e->type == E_SYMBOL && e->left.sym == &symbol_yes); +} + +static inline int expr_is_no(struct expr *e) +{ + return e && (e->type == E_SYMBOL && e->left.sym == &symbol_no); +} + +#ifdef __cplusplus +} +#endif + +#endif /* EXPR_H */ diff --git a/scripts/kconfig/gconf.c b/scripts/kconfig/gconf.c new file mode 100644 index 0000000..d0a35b2 --- /dev/null +++ b/scripts/kconfig/gconf.c @@ -0,0 +1,1542 @@ +/* Hey EMACS -*- linux-c -*- */ +/* + * + * Copyright (C) 2002-2003 Romain Lievin <roms@tilp.info> + * Released under the terms of the GNU GPL v2.0. + * + */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <stdlib.h> +#include "lkc.h" +#include "images.c" + +#include <glade/glade.h> +#include <gtk/gtk.h> +#include <glib.h> +#include <gdk/gdkkeysyms.h> + +#include <stdio.h> +#include <string.h> +#include <unistd.h> +#include <time.h> + +//#define DEBUG + +enum { + SINGLE_VIEW, SPLIT_VIEW, FULL_VIEW +}; + +enum { + OPT_NORMAL, OPT_ALL, OPT_PROMPT +}; + +static gint view_mode = FULL_VIEW; +static gboolean show_name = TRUE; +static gboolean show_range = TRUE; +static gboolean show_value = TRUE; +static gboolean resizeable = FALSE; +static int opt_mode = OPT_NORMAL; + +GtkWidget *main_wnd = NULL; +GtkWidget *tree1_w = NULL; // left frame +GtkWidget *tree2_w = NULL; // right frame +GtkWidget *text_w = NULL; +GtkWidget *hpaned = NULL; +GtkWidget *vpaned = NULL; +GtkWidget *back_btn = NULL; +GtkWidget *save_btn = NULL; +GtkWidget *save_menu_item = NULL; + +GtkTextTag *tag1, *tag2; +GdkColor color; + +GtkTreeStore *tree1, *tree2, *tree; +GtkTreeModel *model1, *model2; +static GtkTreeIter *parents[256]; +static gint indent; + +static struct menu *current; // current node for SINGLE view +static struct menu *browsed; // browsed node for SPLIT view + +enum { + COL_OPTION, COL_NAME, COL_NO, COL_MOD, COL_YES, COL_VALUE, + COL_MENU, COL_COLOR, COL_EDIT, COL_PIXBUF, + COL_PIXVIS, COL_BTNVIS, COL_BTNACT, COL_BTNINC, COL_BTNRAD, + COL_NUMBER +}; + +static void display_list(void); +static void display_tree(struct menu *menu); +static void display_tree_part(void); +static void update_tree(struct menu *src, GtkTreeIter * dst); +static void set_node(GtkTreeIter * node, struct menu *menu, gchar ** row); +static gchar **fill_row(struct menu *menu); +static void conf_changed(void); + +/* Helping/Debugging Functions */ + +const char *dbg_sym_flags(int val) +{ + static char buf[256]; + + bzero(buf, 256); + + if (val & SYMBOL_CONST) + strcat(buf, "const/"); + if (val & SYMBOL_CHECK) + strcat(buf, "check/"); + if (val & SYMBOL_CHOICE) + strcat(buf, "choice/"); + if (val & SYMBOL_CHOICEVAL) + strcat(buf, "choiceval/"); + if (val & SYMBOL_VALID) + strcat(buf, "valid/"); + if (val & SYMBOL_OPTIONAL) + strcat(buf, "optional/"); + if (val & SYMBOL_WRITE) + strcat(buf, "write/"); + if (val & SYMBOL_CHANGED) + strcat(buf, "changed/"); + if (val & SYMBOL_AUTO) + strcat(buf, "auto/"); + + buf[strlen(buf) - 1] = '\0'; + + return buf; +} + +void replace_button_icon(GladeXML * xml, GdkDrawable * window, + GtkStyle * style, gchar * btn_name, gchar ** xpm) +{ + GdkPixmap *pixmap; + GdkBitmap *mask; + GtkToolButton *button; + GtkWidget *image; + + pixmap = gdk_pixmap_create_from_xpm_d(window, &mask, + &style->bg[GTK_STATE_NORMAL], + xpm); + + button = GTK_TOOL_BUTTON(glade_xml_get_widget(xml, btn_name)); + image = gtk_image_new_from_pixmap(pixmap, mask); + gtk_widget_show(image); + gtk_tool_button_set_icon_widget(button, image); +} + +/* Main Window Initialization */ +void init_main_window(const gchar * glade_file) +{ + GladeXML *xml; + GtkWidget *widget; + GtkTextBuffer *txtbuf; + GtkStyle *style; + + xml = glade_xml_new(glade_file, "window1", NULL); + if (!xml) + g_error(_("GUI loading failed !\n")); + glade_xml_signal_autoconnect(xml); + + main_wnd = glade_xml_get_widget(xml, "window1"); + hpaned = glade_xml_get_widget(xml, "hpaned1"); + vpaned = glade_xml_get_widget(xml, "vpaned1"); + tree1_w = glade_xml_get_widget(xml, "treeview1"); + tree2_w = glade_xml_get_widget(xml, "treeview2"); + text_w = glade_xml_get_widget(xml, "textview3"); + + back_btn = glade_xml_get_widget(xml, "button1"); + gtk_widget_set_sensitive(back_btn, FALSE); + + widget = glade_xml_get_widget(xml, "show_name1"); + gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, + show_name); + + widget = glade_xml_get_widget(xml, "show_range1"); + gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, + show_range); + + widget = glade_xml_get_widget(xml, "show_data1"); + gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, + show_value); + + save_btn = glade_xml_get_widget(xml, "button3"); + save_menu_item = glade_xml_get_widget(xml, "save1"); + conf_set_changed_callback(conf_changed); + + style = gtk_widget_get_style(main_wnd); + widget = glade_xml_get_widget(xml, "toolbar1"); + +#if 0 /* Use stock Gtk icons instead */ + replace_button_icon(xml, main_wnd->window, style, + "button1", (gchar **) xpm_back); + replace_button_icon(xml, main_wnd->window, style, + "button2", (gchar **) xpm_load); + replace_button_icon(xml, main_wnd->window, style, + "button3", (gchar **) xpm_save); +#endif + replace_button_icon(xml, main_wnd->window, style, + "button4", (gchar **) xpm_single_view); + replace_button_icon(xml, main_wnd->window, style, + "button5", (gchar **) xpm_split_view); + replace_button_icon(xml, main_wnd->window, style, + "button6", (gchar **) xpm_tree_view); + +#if 0 + switch (view_mode) { + case SINGLE_VIEW: + widget = glade_xml_get_widget(xml, "button4"); + g_signal_emit_by_name(widget, "clicked"); + break; + case SPLIT_VIEW: + widget = glade_xml_get_widget(xml, "button5"); + g_signal_emit_by_name(widget, "clicked"); + break; + case FULL_VIEW: + widget = glade_xml_get_widget(xml, "button6"); + g_signal_emit_by_name(widget, "clicked"); + break; + } +#endif + txtbuf = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w)); + tag1 = gtk_text_buffer_create_tag(txtbuf, "mytag1", + "foreground", "red", + "weight", PANGO_WEIGHT_BOLD, + NULL); + tag2 = gtk_text_buffer_create_tag(txtbuf, "mytag2", + /*"style", PANGO_STYLE_OBLIQUE, */ + NULL); + + gtk_window_set_title(GTK_WINDOW(main_wnd), rootmenu.prompt->text); + + gtk_widget_show(main_wnd); +} + +void init_tree_model(void) +{ + gint i; + + tree = tree2 = gtk_tree_store_new(COL_NUMBER, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_POINTER, GDK_TYPE_COLOR, + G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN); + model2 = GTK_TREE_MODEL(tree2); + + for (parents[0] = NULL, i = 1; i < 256; i++) + parents[i] = (GtkTreeIter *) g_malloc(sizeof(GtkTreeIter)); + + tree1 = gtk_tree_store_new(COL_NUMBER, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_POINTER, GDK_TYPE_COLOR, + G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN); + model1 = GTK_TREE_MODEL(tree1); +} + +void init_left_tree(void) +{ + GtkTreeView *view = GTK_TREE_VIEW(tree1_w); + GtkCellRenderer *renderer; + GtkTreeSelection *sel; + GtkTreeViewColumn *column; + + gtk_tree_view_set_model(view, model1); + gtk_tree_view_set_headers_visible(view, TRUE); + gtk_tree_view_set_rules_hint(view, TRUE); + + column = gtk_tree_view_column_new(); + gtk_tree_view_append_column(view, column); + gtk_tree_view_column_set_title(column, _("Options")); + + renderer = gtk_cell_renderer_toggle_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "active", COL_BTNACT, + "inconsistent", COL_BTNINC, + "visible", COL_BTNVIS, + "radio", COL_BTNRAD, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "text", COL_OPTION, + "foreground-gdk", + COL_COLOR, NULL); + + sel = gtk_tree_view_get_selection(view); + gtk_tree_selection_set_mode(sel, GTK_SELECTION_SINGLE); + gtk_widget_realize(tree1_w); +} + +static void renderer_edited(GtkCellRendererText * cell, + const gchar * path_string, + const gchar * new_text, gpointer user_data); + +void init_right_tree(void) +{ + GtkTreeView *view = GTK_TREE_VIEW(tree2_w); + GtkCellRenderer *renderer; + GtkTreeSelection *sel; + GtkTreeViewColumn *column; + gint i; + + gtk_tree_view_set_model(view, model2); + gtk_tree_view_set_headers_visible(view, TRUE); + gtk_tree_view_set_rules_hint(view, TRUE); + + column = gtk_tree_view_column_new(); + gtk_tree_view_append_column(view, column); + gtk_tree_view_column_set_title(column, _("Options")); + + renderer = gtk_cell_renderer_pixbuf_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "pixbuf", COL_PIXBUF, + "visible", COL_PIXVIS, NULL); + renderer = gtk_cell_renderer_toggle_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "active", COL_BTNACT, + "inconsistent", COL_BTNINC, + "visible", COL_BTNVIS, + "radio", COL_BTNRAD, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "text", COL_OPTION, + "foreground-gdk", + COL_COLOR, NULL); + + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + _("Name"), renderer, + "text", COL_NAME, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + "N", renderer, + "text", COL_NO, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + "M", renderer, + "text", COL_MOD, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + "Y", renderer, + "text", COL_YES, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + _("Value"), renderer, + "text", COL_VALUE, + "editable", + COL_EDIT, + "foreground-gdk", + COL_COLOR, NULL); + g_signal_connect(G_OBJECT(renderer), "edited", + G_CALLBACK(renderer_edited), NULL); + + column = gtk_tree_view_get_column(view, COL_NAME); + gtk_tree_view_column_set_visible(column, show_name); + column = gtk_tree_view_get_column(view, COL_NO); + gtk_tree_view_column_set_visible(column, show_range); + column = gtk_tree_view_get_column(view, COL_MOD); + gtk_tree_view_column_set_visible(column, show_range); + column = gtk_tree_view_get_column(view, COL_YES); + gtk_tree_view_column_set_visible(column, show_range); + column = gtk_tree_view_get_column(view, COL_VALUE); + gtk_tree_view_column_set_visible(column, show_value); + + if (resizeable) { + for (i = 0; i < COL_VALUE; i++) { + column = gtk_tree_view_get_column(view, i); + gtk_tree_view_column_set_resizable(column, TRUE); + } + } + + sel = gtk_tree_view_get_selection(view); + gtk_tree_selection_set_mode(sel, GTK_SELECTION_SINGLE); +} + + +/* Utility Functions */ + + +static void text_insert_help(struct menu *menu) +{ + GtkTextBuffer *buffer; + GtkTextIter start, end; + const char *prompt = _(menu_get_prompt(menu)); + struct gstr help = str_new(); + + menu_get_ext_help(menu, &help); + + buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w)); + gtk_text_buffer_get_bounds(buffer, &start, &end); + gtk_text_buffer_delete(buffer, &start, &end); + gtk_text_view_set_left_margin(GTK_TEXT_VIEW(text_w), 15); + + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, prompt, -1, tag1, + NULL); + gtk_text_buffer_insert_at_cursor(buffer, "\n\n", 2); + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, str_get(&help), -1, tag2, + NULL); + str_free(&help); +} + + +static void text_insert_msg(const char *title, const char *message) +{ + GtkTextBuffer *buffer; + GtkTextIter start, end; + const char *msg = message; + + buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w)); + gtk_text_buffer_get_bounds(buffer, &start, &end); + gtk_text_buffer_delete(buffer, &start, &end); + gtk_text_view_set_left_margin(GTK_TEXT_VIEW(text_w), 15); + + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, title, -1, tag1, + NULL); + gtk_text_buffer_insert_at_cursor(buffer, "\n\n", 2); + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, msg, -1, tag2, + NULL); +} + + +/* Main Windows Callbacks */ + +void on_save_activate(GtkMenuItem * menuitem, gpointer user_data); +gboolean on_window1_delete_event(GtkWidget * widget, GdkEvent * event, + gpointer user_data) +{ + GtkWidget *dialog, *label; + gint result; + + if (!conf_get_changed()) + return FALSE; + + dialog = gtk_dialog_new_with_buttons(_("Warning !"), + GTK_WINDOW(main_wnd), + (GtkDialogFlags) + (GTK_DIALOG_MODAL | + GTK_DIALOG_DESTROY_WITH_PARENT), + GTK_STOCK_OK, + GTK_RESPONSE_YES, + GTK_STOCK_NO, + GTK_RESPONSE_NO, + GTK_STOCK_CANCEL, + GTK_RESPONSE_CANCEL, NULL); + gtk_dialog_set_default_response(GTK_DIALOG(dialog), + GTK_RESPONSE_CANCEL); + + label = gtk_label_new(_("\nSave configuration ?\n")); + gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox), label); + gtk_widget_show(label); + + result = gtk_dialog_run(GTK_DIALOG(dialog)); + switch (result) { + case GTK_RESPONSE_YES: + on_save_activate(NULL, NULL); + return FALSE; + case GTK_RESPONSE_NO: + return FALSE; + case GTK_RESPONSE_CANCEL: + case GTK_RESPONSE_DELETE_EVENT: + default: + gtk_widget_destroy(dialog); + return TRUE; + } + + return FALSE; +} + + +void on_window1_destroy(GtkObject * object, gpointer user_data) +{ + gtk_main_quit(); +} + + +void +on_window1_size_request(GtkWidget * widget, + GtkRequisition * requisition, gpointer user_data) +{ + static gint old_h; + gint w, h; + + if (widget->window == NULL) + gtk_window_get_default_size(GTK_WINDOW(main_wnd), &w, &h); + else + gdk_window_get_size(widget->window, &w, &h); + + if (h == old_h) + return; + old_h = h; + + gtk_paned_set_position(GTK_PANED(vpaned), 2 * h / 3); +} + + +/* Menu & Toolbar Callbacks */ + + +static void +load_filename(GtkFileSelection * file_selector, gpointer user_data) +{ + const gchar *fn; + + fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION + (user_data)); + + if (conf_read(fn)) + text_insert_msg(_("Error"), _("Unable to load configuration !")); + else + display_tree(&rootmenu); +} + +void on_load1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *fs; + + fs = gtk_file_selection_new(_("Load file...")); + g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button), + "clicked", + G_CALLBACK(load_filename), (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->ok_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->cancel_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + gtk_widget_show(fs); +} + + +void on_save_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + if (conf_write(NULL)) + text_insert_msg(_("Error"), _("Unable to save configuration !")); +} + + +static void +store_filename(GtkFileSelection * file_selector, gpointer user_data) +{ + const gchar *fn; + + fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION + (user_data)); + + if (conf_write(fn)) + text_insert_msg(_("Error"), _("Unable to save configuration !")); + + gtk_widget_destroy(GTK_WIDGET(user_data)); +} + +void on_save_as1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *fs; + + fs = gtk_file_selection_new(_("Save file as...")); + g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button), + "clicked", + G_CALLBACK(store_filename), (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->ok_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->cancel_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + gtk_widget_show(fs); +} + + +void on_quit1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + if (!on_window1_delete_event(NULL, NULL, NULL)) + gtk_widget_destroy(GTK_WIDGET(main_wnd)); +} + + +void on_show_name1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkTreeViewColumn *col; + + show_name = GTK_CHECK_MENU_ITEM(menuitem)->active; + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_NAME); + if (col) + gtk_tree_view_column_set_visible(col, show_name); +} + + +void on_show_range1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkTreeViewColumn *col; + + show_range = GTK_CHECK_MENU_ITEM(menuitem)->active; + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_NO); + if (col) + gtk_tree_view_column_set_visible(col, show_range); + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_MOD); + if (col) + gtk_tree_view_column_set_visible(col, show_range); + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_YES); + if (col) + gtk_tree_view_column_set_visible(col, show_range); + +} + + +void on_show_data1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkTreeViewColumn *col; + + show_value = GTK_CHECK_MENU_ITEM(menuitem)->active; + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_VALUE); + if (col) + gtk_tree_view_column_set_visible(col, show_value); +} + + +void +on_set_option_mode1_activate(GtkMenuItem *menuitem, gpointer user_data) +{ + opt_mode = OPT_NORMAL; + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); /* instead of update_tree to speed-up */ +} + + +void +on_set_option_mode2_activate(GtkMenuItem *menuitem, gpointer user_data) +{ + opt_mode = OPT_ALL; + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); /* instead of update_tree to speed-up */ +} + + +void +on_set_option_mode3_activate(GtkMenuItem *menuitem, gpointer user_data) +{ + opt_mode = OPT_PROMPT; + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); /* instead of update_tree to speed-up */ +} + + +void on_introduction1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *dialog; + const gchar *intro_text = _( + "Welcome to gkc, the GTK+ graphical configuration tool\n" + "For each option, a blank box indicates the feature is disabled, a\n" + "check indicates it is enabled, and a dot indicates that it is to\n" + "be compiled as a module. Clicking on the box will cycle through the three states.\n" + "\n" + "If you do not see an option (e.g., a device driver) that you\n" + "believe should be present, try turning on Show All Options\n" + "under the Options menu.\n" + "Although there is no cross reference yet to help you figure out\n" + "what other options must be enabled to support the option you\n" + "are interested in, you can still view the help of a grayed-out\n" + "option.\n" + "\n" + "Toggling Show Debug Info under the Options menu will show \n" + "the dependencies, which you can then match by examining other options."); + + dialog = gtk_message_dialog_new(GTK_WINDOW(main_wnd), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_INFO, + GTK_BUTTONS_CLOSE, "%s", intro_text); + g_signal_connect_swapped(GTK_OBJECT(dialog), "response", + G_CALLBACK(gtk_widget_destroy), + GTK_OBJECT(dialog)); + gtk_widget_show_all(dialog); +} + + +void on_about1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *dialog; + const gchar *about_text = + _("gkc is copyright (c) 2002 Romain Lievin <roms@lpg.ticalc.org>.\n" + "Based on the source code from Roman Zippel.\n"); + + dialog = gtk_message_dialog_new(GTK_WINDOW(main_wnd), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_INFO, + GTK_BUTTONS_CLOSE, "%s", about_text); + g_signal_connect_swapped(GTK_OBJECT(dialog), "response", + G_CALLBACK(gtk_widget_destroy), + GTK_OBJECT(dialog)); + gtk_widget_show_all(dialog); +} + + +void on_license1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *dialog; + const gchar *license_text = + _("gkc is released under the terms of the GNU GPL v2.\n" + "For more information, please see the source code or\n" + "visit http://www.fsf.org/licenses/licenses.html\n"); + + dialog = gtk_message_dialog_new(GTK_WINDOW(main_wnd), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_INFO, + GTK_BUTTONS_CLOSE, "%s", license_text); + g_signal_connect_swapped(GTK_OBJECT(dialog), "response", + G_CALLBACK(gtk_widget_destroy), + GTK_OBJECT(dialog)); + gtk_widget_show_all(dialog); +} + + +void on_back_clicked(GtkButton * button, gpointer user_data) +{ + enum prop_type ptype; + + current = current->parent; + ptype = current->prompt ? current->prompt->type : P_UNKNOWN; + if (ptype != P_MENU) + current = current->parent; + display_tree_part(); + + if (current == &rootmenu) + gtk_widget_set_sensitive(back_btn, FALSE); +} + + +void on_load_clicked(GtkButton * button, gpointer user_data) +{ + on_load1_activate(NULL, user_data); +} + + +void on_single_clicked(GtkButton * button, gpointer user_data) +{ + view_mode = SINGLE_VIEW; + gtk_widget_hide(tree1_w); + current = &rootmenu; + display_tree_part(); +} + + +void on_split_clicked(GtkButton * button, gpointer user_data) +{ + gint w, h; + view_mode = SPLIT_VIEW; + gtk_widget_show(tree1_w); + gtk_window_get_default_size(GTK_WINDOW(main_wnd), &w, &h); + gtk_paned_set_position(GTK_PANED(hpaned), w / 2); + if (tree2) + gtk_tree_store_clear(tree2); + display_list(); + + /* Disable back btn, like in full mode. */ + gtk_widget_set_sensitive(back_btn, FALSE); +} + + +void on_full_clicked(GtkButton * button, gpointer user_data) +{ + view_mode = FULL_VIEW; + gtk_widget_hide(tree1_w); + if (tree2) + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); + gtk_widget_set_sensitive(back_btn, FALSE); +} + + +void on_collapse_clicked(GtkButton * button, gpointer user_data) +{ + gtk_tree_view_collapse_all(GTK_TREE_VIEW(tree2_w)); +} + + +void on_expand_clicked(GtkButton * button, gpointer user_data) +{ + gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w)); +} + + +/* CTree Callbacks */ + +/* Change hex/int/string value in the cell */ +static void renderer_edited(GtkCellRendererText * cell, + const gchar * path_string, + const gchar * new_text, gpointer user_data) +{ + GtkTreePath *path = gtk_tree_path_new_from_string(path_string); + GtkTreeIter iter; + const char *old_def, *new_def; + struct menu *menu; + struct symbol *sym; + + if (!gtk_tree_model_get_iter(model2, &iter, path)) + return; + + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + sym = menu->sym; + + gtk_tree_model_get(model2, &iter, COL_VALUE, &old_def, -1); + new_def = new_text; + + sym_set_string_value(sym, new_def); + + update_tree(&rootmenu, NULL); + + gtk_tree_path_free(path); +} + +/* Change the value of a symbol and update the tree */ +static void change_sym_value(struct menu *menu, gint col) +{ + struct symbol *sym = menu->sym; + tristate newval; + + if (!sym) + return; + + if (col == COL_NO) + newval = no; + else if (col == COL_MOD) + newval = mod; + else if (col == COL_YES) + newval = yes; + else + return; + + switch (sym_get_type(sym)) { + case S_BOOLEAN: + case S_TRISTATE: + if (!sym_tristate_within_range(sym, newval)) + newval = yes; + sym_set_tristate_value(sym, newval); + if (view_mode == FULL_VIEW) + update_tree(&rootmenu, NULL); + else if (view_mode == SPLIT_VIEW) { + update_tree(browsed, NULL); + display_list(); + } + else if (view_mode == SINGLE_VIEW) + display_tree_part(); //fixme: keep exp/coll + break; + case S_INT: + case S_HEX: + case S_STRING: + default: + break; + } +} + +static void toggle_sym_value(struct menu *menu) +{ + if (!menu->sym) + return; + + sym_toggle_tristate_value(menu->sym); + if (view_mode == FULL_VIEW) + update_tree(&rootmenu, NULL); + else if (view_mode == SPLIT_VIEW) { + update_tree(browsed, NULL); + display_list(); + } + else if (view_mode == SINGLE_VIEW) + display_tree_part(); //fixme: keep exp/coll +} + +static gint column2index(GtkTreeViewColumn * column) +{ + gint i; + + for (i = 0; i < COL_NUMBER; i++) { + GtkTreeViewColumn *col; + + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), i); + if (col == column) + return i; + } + + return -1; +} + + +/* User click: update choice (full) or goes down (single) */ +gboolean +on_treeview2_button_press_event(GtkWidget * widget, + GdkEventButton * event, gpointer user_data) +{ + GtkTreeView *view = GTK_TREE_VIEW(widget); + GtkTreePath *path; + GtkTreeViewColumn *column; + GtkTreeIter iter; + struct menu *menu; + gint col; + +#if GTK_CHECK_VERSION(2,1,4) // bug in ctree with earlier version of GTK + gint tx = (gint) event->x; + gint ty = (gint) event->y; + gint cx, cy; + + gtk_tree_view_get_path_at_pos(view, tx, ty, &path, &column, &cx, + &cy); +#else + gtk_tree_view_get_cursor(view, &path, &column); +#endif + if (path == NULL) + return FALSE; + + if (!gtk_tree_model_get_iter(model2, &iter, path)) + return FALSE; + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + + col = column2index(column); + if (event->type == GDK_2BUTTON_PRESS) { + enum prop_type ptype; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + + if (ptype == P_MENU && view_mode != FULL_VIEW && col == COL_OPTION) { + // goes down into menu + current = menu; + display_tree_part(); + gtk_widget_set_sensitive(back_btn, TRUE); + } else if ((col == COL_OPTION)) { + toggle_sym_value(menu); + gtk_tree_view_expand_row(view, path, TRUE); + } + } else { + if (col == COL_VALUE) { + toggle_sym_value(menu); + gtk_tree_view_expand_row(view, path, TRUE); + } else if (col == COL_NO || col == COL_MOD + || col == COL_YES) { + change_sym_value(menu, col); + gtk_tree_view_expand_row(view, path, TRUE); + } + } + + return FALSE; +} + +/* Key pressed: update choice */ +gboolean +on_treeview2_key_press_event(GtkWidget * widget, + GdkEventKey * event, gpointer user_data) +{ + GtkTreeView *view = GTK_TREE_VIEW(widget); + GtkTreePath *path; + GtkTreeViewColumn *column; + GtkTreeIter iter; + struct menu *menu; + gint col; + + gtk_tree_view_get_cursor(view, &path, &column); + if (path == NULL) + return FALSE; + + if (event->keyval == GDK_space) { + if (gtk_tree_view_row_expanded(view, path)) + gtk_tree_view_collapse_row(view, path); + else + gtk_tree_view_expand_row(view, path, FALSE); + return TRUE; + } + if (event->keyval == GDK_KP_Enter) { + } + if (widget == tree1_w) + return FALSE; + + gtk_tree_model_get_iter(model2, &iter, path); + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + + if (!strcasecmp(event->string, "n")) + col = COL_NO; + else if (!strcasecmp(event->string, "m")) + col = COL_MOD; + else if (!strcasecmp(event->string, "y")) + col = COL_YES; + else + col = -1; + change_sym_value(menu, col); + + return FALSE; +} + + +/* Row selection changed: update help */ +void +on_treeview2_cursor_changed(GtkTreeView * treeview, gpointer user_data) +{ + GtkTreeSelection *selection; + GtkTreeIter iter; + struct menu *menu; + + selection = gtk_tree_view_get_selection(treeview); + if (gtk_tree_selection_get_selected(selection, &model2, &iter)) { + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + text_insert_help(menu); + } +} + + +/* User click: display sub-tree in the right frame. */ +gboolean +on_treeview1_button_press_event(GtkWidget * widget, + GdkEventButton * event, gpointer user_data) +{ + GtkTreeView *view = GTK_TREE_VIEW(widget); + GtkTreePath *path; + GtkTreeViewColumn *column; + GtkTreeIter iter; + struct menu *menu; + + gint tx = (gint) event->x; + gint ty = (gint) event->y; + gint cx, cy; + + gtk_tree_view_get_path_at_pos(view, tx, ty, &path, &column, &cx, + &cy); + if (path == NULL) + return FALSE; + + gtk_tree_model_get_iter(model1, &iter, path); + gtk_tree_model_get(model1, &iter, COL_MENU, &menu, -1); + + if (event->type == GDK_2BUTTON_PRESS) { + toggle_sym_value(menu); + current = menu; + display_tree_part(); + } else { + browsed = menu; + display_tree_part(); + } + + gtk_widget_realize(tree2_w); + gtk_tree_view_set_cursor(view, path, NULL, FALSE); + gtk_widget_grab_focus(tree2_w); + + return FALSE; +} + + +/* Fill a row of strings */ +static gchar **fill_row(struct menu *menu) +{ + static gchar *row[COL_NUMBER]; + struct symbol *sym = menu->sym; + const char *def; + int stype; + tristate val; + enum prop_type ptype; + int i; + + for (i = COL_OPTION; i <= COL_COLOR; i++) + g_free(row[i]); + bzero(row, sizeof(row)); + + row[COL_OPTION] = + g_strdup_printf("%s %s", _(menu_get_prompt(menu)), + sym && !sym_has_value(sym) ? "(NEW)" : ""); + + if (opt_mode == OPT_ALL && !menu_is_visible(menu)) + row[COL_COLOR] = g_strdup("DarkGray"); + else if (opt_mode == OPT_PROMPT && + menu_has_prompt(menu) && !menu_is_visible(menu)) + row[COL_COLOR] = g_strdup("DarkGray"); + else + row[COL_COLOR] = g_strdup("Black"); + + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + switch (ptype) { + case P_MENU: + row[COL_PIXBUF] = (gchar *) xpm_menu; + if (view_mode == SINGLE_VIEW) + row[COL_PIXVIS] = GINT_TO_POINTER(TRUE); + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + break; + case P_COMMENT: + row[COL_PIXBUF] = (gchar *) xpm_void; + row[COL_PIXVIS] = GINT_TO_POINTER(FALSE); + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + break; + default: + row[COL_PIXBUF] = (gchar *) xpm_void; + row[COL_PIXVIS] = GINT_TO_POINTER(FALSE); + row[COL_BTNVIS] = GINT_TO_POINTER(TRUE); + break; + } + + if (!sym) + return row; + row[COL_NAME] = g_strdup(sym->name); + + sym_calc_value(sym); + sym->flags &= ~SYMBOL_CHANGED; + + if (sym_is_choice(sym)) { // parse childs for getting final value + struct menu *child; + struct symbol *def_sym = sym_get_choice_value(sym); + struct menu *def_menu = NULL; + + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child) + && child->sym == def_sym) + def_menu = child; + } + + if (def_menu) + row[COL_VALUE] = + g_strdup(_(menu_get_prompt(def_menu))); + } + if (sym->flags & SYMBOL_CHOICEVAL) + row[COL_BTNRAD] = GINT_TO_POINTER(TRUE); + + stype = sym_get_type(sym); + switch (stype) { + case S_BOOLEAN: + if (GPOINTER_TO_INT(row[COL_PIXVIS]) == FALSE) + row[COL_BTNVIS] = GINT_TO_POINTER(TRUE); + if (sym_is_choice(sym)) + break; + /* fall through */ + case S_TRISTATE: + val = sym_get_tristate_value(sym); + switch (val) { + case no: + row[COL_NO] = g_strdup("N"); + row[COL_VALUE] = g_strdup("N"); + row[COL_BTNACT] = GINT_TO_POINTER(FALSE); + row[COL_BTNINC] = GINT_TO_POINTER(FALSE); + break; + case mod: + row[COL_MOD] = g_strdup("M"); + row[COL_VALUE] = g_strdup("M"); + row[COL_BTNINC] = GINT_TO_POINTER(TRUE); + break; + case yes: + row[COL_YES] = g_strdup("Y"); + row[COL_VALUE] = g_strdup("Y"); + row[COL_BTNACT] = GINT_TO_POINTER(TRUE); + row[COL_BTNINC] = GINT_TO_POINTER(FALSE); + break; + } + + if (val != no && sym_tristate_within_range(sym, no)) + row[COL_NO] = g_strdup("_"); + if (val != mod && sym_tristate_within_range(sym, mod)) + row[COL_MOD] = g_strdup("_"); + if (val != yes && sym_tristate_within_range(sym, yes)) + row[COL_YES] = g_strdup("_"); + break; + case S_INT: + case S_HEX: + case S_STRING: + def = sym_get_string_value(sym); + row[COL_VALUE] = g_strdup(def); + row[COL_EDIT] = GINT_TO_POINTER(TRUE); + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + break; + } + + return row; +} + + +/* Set the node content with a row of strings */ +static void set_node(GtkTreeIter * node, struct menu *menu, gchar ** row) +{ + GdkColor color; + gboolean success; + GdkPixbuf *pix; + + pix = gdk_pixbuf_new_from_xpm_data((const char **) + row[COL_PIXBUF]); + + gdk_color_parse(row[COL_COLOR], &color); + gdk_colormap_alloc_colors(gdk_colormap_get_system(), &color, 1, + FALSE, FALSE, &success); + + gtk_tree_store_set(tree, node, + COL_OPTION, row[COL_OPTION], + COL_NAME, row[COL_NAME], + COL_NO, row[COL_NO], + COL_MOD, row[COL_MOD], + COL_YES, row[COL_YES], + COL_VALUE, row[COL_VALUE], + COL_MENU, (gpointer) menu, + COL_COLOR, &color, + COL_EDIT, GPOINTER_TO_INT(row[COL_EDIT]), + COL_PIXBUF, pix, + COL_PIXVIS, GPOINTER_TO_INT(row[COL_PIXVIS]), + COL_BTNVIS, GPOINTER_TO_INT(row[COL_BTNVIS]), + COL_BTNACT, GPOINTER_TO_INT(row[COL_BTNACT]), + COL_BTNINC, GPOINTER_TO_INT(row[COL_BTNINC]), + COL_BTNRAD, GPOINTER_TO_INT(row[COL_BTNRAD]), + -1); + + g_object_unref(pix); +} + + +/* Add a node to the tree */ +static void place_node(struct menu *menu, char **row) +{ + GtkTreeIter *parent = parents[indent - 1]; + GtkTreeIter *node = parents[indent]; + + gtk_tree_store_append(tree, node, parent); + set_node(node, menu, row); +} + + +/* Find a node in the GTK+ tree */ +static GtkTreeIter found; + +/* + * Find a menu in the GtkTree starting at parent. + */ +GtkTreeIter *gtktree_iter_find_node(GtkTreeIter * parent, + struct menu *tofind) +{ + GtkTreeIter iter; + GtkTreeIter *child = &iter; + gboolean valid; + GtkTreeIter *ret; + + valid = gtk_tree_model_iter_children(model2, child, parent); + while (valid) { + struct menu *menu; + + gtk_tree_model_get(model2, child, 6, &menu, -1); + + if (menu == tofind) { + memcpy(&found, child, sizeof(GtkTreeIter)); + return &found; + } + + ret = gtktree_iter_find_node(child, tofind); + if (ret) + return ret; + + valid = gtk_tree_model_iter_next(model2, child); + } + + return NULL; +} + + +/* + * Update the tree by adding/removing entries + * Does not change other nodes + */ +static void update_tree(struct menu *src, GtkTreeIter * dst) +{ + struct menu *child1; + GtkTreeIter iter, tmp; + GtkTreeIter *child2 = &iter; + gboolean valid; + GtkTreeIter *sibling; + struct symbol *sym; + struct menu *menu1, *menu2; + + if (src == &rootmenu) + indent = 1; + + valid = gtk_tree_model_iter_children(model2, child2, dst); + for (child1 = src->list; child1; child1 = child1->next) { + + sym = child1->sym; + + reparse: + menu1 = child1; + if (valid) + gtk_tree_model_get(model2, child2, COL_MENU, + &menu2, -1); + else + menu2 = NULL; // force adding of a first child + +#ifdef DEBUG + printf("%*c%s | %s\n", indent, ' ', + menu1 ? menu_get_prompt(menu1) : "nil", + menu2 ? menu_get_prompt(menu2) : "nil"); +#endif + + if ((opt_mode == OPT_NORMAL && !menu_is_visible(child1)) || + (opt_mode == OPT_PROMPT && !menu_has_prompt(child1)) || + (opt_mode == OPT_ALL && !menu_get_prompt(child1))) { + + /* remove node */ + if (gtktree_iter_find_node(dst, menu1) != NULL) { + memcpy(&tmp, child2, sizeof(GtkTreeIter)); + valid = gtk_tree_model_iter_next(model2, + child2); + gtk_tree_store_remove(tree2, &tmp); + if (!valid) + return; /* next parent */ + else + goto reparse; /* next child */ + } else + continue; + } + + if (menu1 != menu2) { + if (gtktree_iter_find_node(dst, menu1) == NULL) { // add node + if (!valid && !menu2) + sibling = NULL; + else + sibling = child2; + gtk_tree_store_insert_before(tree2, + child2, + dst, sibling); + set_node(child2, menu1, fill_row(menu1)); + if (menu2 == NULL) + valid = TRUE; + } else { // remove node + memcpy(&tmp, child2, sizeof(GtkTreeIter)); + valid = gtk_tree_model_iter_next(model2, + child2); + gtk_tree_store_remove(tree2, &tmp); + if (!valid) + return; // next parent + else + goto reparse; // next child + } + } else if (sym && (sym->flags & SYMBOL_CHANGED)) { + set_node(child2, menu1, fill_row(menu1)); + } + + indent++; + update_tree(child1, child2); + indent--; + + valid = gtk_tree_model_iter_next(model2, child2); + } +} + + +/* Display the whole tree (single/split/full view) */ +static void display_tree(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + enum prop_type ptype; + + if (menu == &rootmenu) { + indent = 1; + current = &rootmenu; + } + + for (child = menu->list; child; child = child->next) { + prop = child->prompt; + sym = child->sym; + ptype = prop ? prop->type : P_UNKNOWN; + + if (sym) + sym->flags &= ~SYMBOL_CHANGED; + + if ((view_mode == SPLIT_VIEW) + && !(child->flags & MENU_ROOT) && (tree == tree1)) + continue; + + if ((view_mode == SPLIT_VIEW) && (child->flags & MENU_ROOT) + && (tree == tree2)) + continue; + + if ((opt_mode == OPT_NORMAL && menu_is_visible(child)) || + (opt_mode == OPT_PROMPT && menu_has_prompt(child)) || + (opt_mode == OPT_ALL && menu_get_prompt(child))) + place_node(child, fill_row(child)); +#ifdef DEBUG + printf("%*c%s: ", indent, ' ', menu_get_prompt(child)); + printf("%s", child->flags & MENU_ROOT ? "rootmenu | " : ""); + printf("%s", prop_get_type_name(ptype)); + printf(" | "); + if (sym) { + printf("%s", sym_type_name(sym->type)); + printf(" | "); + printf("%s", dbg_sym_flags(sym->flags)); + printf("\n"); + } else + printf("\n"); +#endif + if ((view_mode != FULL_VIEW) && (ptype == P_MENU) + && (tree == tree2)) + continue; +/* + if (((menu != &rootmenu) && !(menu->flags & MENU_ROOT)) + || (view_mode == FULL_VIEW) + || (view_mode == SPLIT_VIEW))*/ + + /* Change paned position if the view is not in 'split mode' */ + if (view_mode == SINGLE_VIEW || view_mode == FULL_VIEW) { + gtk_paned_set_position(GTK_PANED(hpaned), 0); + } + + if (((view_mode == SINGLE_VIEW) && (menu->flags & MENU_ROOT)) + || (view_mode == FULL_VIEW) + || (view_mode == SPLIT_VIEW)) { + indent++; + display_tree(child); + indent--; + } + } +} + +/* Display a part of the tree starting at current node (single/split view) */ +static void display_tree_part(void) +{ + if (tree2) + gtk_tree_store_clear(tree2); + if (view_mode == SINGLE_VIEW) + display_tree(current); + else if (view_mode == SPLIT_VIEW) + display_tree(browsed); + gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w)); +} + +/* Display the list in the left frame (split view) */ +static void display_list(void) +{ + if (tree1) + gtk_tree_store_clear(tree1); + + tree = tree1; + display_tree(&rootmenu); + gtk_tree_view_expand_all(GTK_TREE_VIEW(tree1_w)); + tree = tree2; +} + +void fixup_rootmenu(struct menu *menu) +{ + struct menu *child; + static int menu_cnt = 0; + + menu->flags |= MENU_ROOT; + for (child = menu->list; child; child = child->next) { + if (child->prompt && child->prompt->type == P_MENU) { + menu_cnt++; + fixup_rootmenu(child); + menu_cnt--; + } else if (!menu_cnt) + fixup_rootmenu(child); + } +} + + +/* Main */ +int main(int ac, char *av[]) +{ + const char *name; + char *env; + gchar *glade_file; + + bindtextdomain(PACKAGE, LOCALEDIR); + bind_textdomain_codeset(PACKAGE, "UTF-8"); + textdomain(PACKAGE); + + /* GTK stuffs */ + gtk_set_locale(); + gtk_init(&ac, &av); + glade_init(); + + //add_pixmap_directory (PACKAGE_DATA_DIR "/" PACKAGE "/pixmaps"); + //add_pixmap_directory (PACKAGE_SOURCE_DIR "/pixmaps"); + + /* Determine GUI path */ + env = getenv(SRCTREE); + if (env) + glade_file = g_strconcat(env, "/scripts/kconfig/gconf.glade", NULL); + else if (av[0][0] == '/') + glade_file = g_strconcat(av[0], ".glade", NULL); + else + glade_file = g_strconcat(g_get_current_dir(), "/", av[0], ".glade", NULL); + + /* Conf stuffs */ + if (ac > 1 && av[1][0] == '-') { + switch (av[1][1]) { + case 'a': + //showAll = 1; + break; + case 'h': + case '?': + printf("%s <config>\n", av[0]); + exit(0); + } + name = av[2]; + } else + name = av[1]; + + conf_parse(name); + fixup_rootmenu(&rootmenu); + conf_read(NULL); + + /* Load the interface and connect signals */ + init_main_window(glade_file); + init_tree_model(); + init_left_tree(); + init_right_tree(); + + switch (view_mode) { + case SINGLE_VIEW: + display_tree_part(); + break; + case SPLIT_VIEW: + display_list(); + break; + case FULL_VIEW: + display_tree(&rootmenu); + break; + } + + gtk_main(); + + return 0; +} + +static void conf_changed(void) +{ + bool changed = conf_get_changed(); + gtk_widget_set_sensitive(save_btn, changed); + gtk_widget_set_sensitive(save_menu_item, changed); +} diff --git a/scripts/kconfig/gconf.glade b/scripts/kconfig/gconf.glade new file mode 100644 index 0000000..aa483cb --- /dev/null +++ b/scripts/kconfig/gconf.glade @@ -0,0 +1,661 @@ +<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> + +<glade-interface> + +<widget class="GtkWindow" id="window1"> + <property name="visible">True</property> + <property name="title" translatable="yes">Gtk Kernel Configurator</property> + <property name="type">GTK_WINDOW_TOPLEVEL</property> + <property name="window_position">GTK_WIN_POS_NONE</property> + <property name="modal">False</property> + <property name="default_width">640</property> + <property name="default_height">480</property> + <property name="resizable">True</property> + <property name="destroy_with_parent">False</property> + <property name="decorated">True</property> + <property name="skip_taskbar_hint">False</property> + <property name="skip_pager_hint">False</property> + <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property> + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> + <signal name="destroy" handler="on_window1_destroy" object="window1"/> + <signal name="size_request" handler="on_window1_size_request" object="vpaned1" last_modification_time="Fri, 11 Jan 2002 16:17:11 GMT"/> + <signal name="delete_event" handler="on_window1_delete_event" object="window1" last_modification_time="Sun, 09 Mar 2003 19:42:46 GMT"/> + + <child> + <widget class="GtkVBox" id="vbox1"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + + <child> + <widget class="GtkMenuBar" id="menubar1"> + <property name="visible">True</property> + + <child> + <widget class="GtkMenuItem" id="file1"> + <property name="visible">True</property> + <property name="label" translatable="yes">_File</property> + <property name="use_underline">True</property> + + <child> + <widget class="GtkMenu" id="file1_menu"> + + <child> + <widget class="GtkImageMenuItem" id="load1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Load a config file</property> + <property name="label" translatable="yes">_Load</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_load1_activate"/> + <accelerator key="L" modifiers="GDK_CONTROL_MASK" signal="activate"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image39"> + <property name="visible">True</property> + <property name="stock">gtk-open</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkImageMenuItem" id="save1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Save the config in .config</property> + <property name="label" translatable="yes">_Save</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_save_activate"/> + <accelerator key="S" modifiers="GDK_CONTROL_MASK" signal="activate"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image40"> + <property name="visible">True</property> + <property name="stock">gtk-save</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkImageMenuItem" id="save_as1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Save the config in a file</property> + <property name="label" translatable="yes">Save _as</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_save_as1_activate"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image41"> + <property name="visible">True</property> + <property name="stock">gtk-save-as</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkSeparatorMenuItem" id="separator1"> + <property name="visible">True</property> + </widget> + </child> + + <child> + <widget class="GtkImageMenuItem" id="quit1"> + <property name="visible">True</property> + <property name="label" translatable="yes">_Quit</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_quit1_activate"/> + <accelerator key="Q" modifiers="GDK_CONTROL_MASK" signal="activate"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image42"> + <property name="visible">True</property> + <property name="stock">gtk-quit</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkMenuItem" id="options1"> + <property name="visible">True</property> + <property name="label" translatable="yes">_Options</property> + <property name="use_underline">True</property> + + <child> + <widget class="GtkMenu" id="options1_menu"> + + <child> + <widget class="GtkCheckMenuItem" id="show_name1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Show name</property> + <property name="label" translatable="yes">Show _name</property> + <property name="use_underline">True</property> + <property name="active">False</property> + <signal name="activate" handler="on_show_name1_activate"/> + </widget> + </child> + + <child> + <widget class="GtkCheckMenuItem" id="show_range1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Show range (Y/M/N)</property> + <property name="label" translatable="yes">Show _range</property> + <property name="use_underline">True</property> + <property name="active">False</property> + <signal name="activate" handler="on_show_range1_activate"/> + </widget> + </child> + + <child> + <widget class="GtkCheckMenuItem" id="show_data1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Show value of the option</property> + <property name="label" translatable="yes">Show _data</property> + <property name="use_underline">True</property> + <property name="active">False</property> + <signal name="activate" handler="on_show_data1_activate"/> + </widget> + </child> + + <child> + <widget class="GtkSeparatorMenuItem" id="separator2"> + <property name="visible">True</property> + </widget> + </child> + + <child> + <widget class="GtkRadioMenuItem" id="set_option_mode1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Show normal options</property> + <property name="label" translatable="yes">Show normal options</property> + <property name="use_underline">True</property> + <property name="active">True</property> + <signal name="activate" handler="on_set_option_mode1_activate"/> + </widget> + </child> + + <child> + <widget class="GtkRadioMenuItem" id="set_option_mode2"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Show all options</property> + <property name="label" translatable="yes">Show all _options</property> + <property name="use_underline">True</property> + <property name="active">False</property> + <property name="group">set_option_mode1</property> + <signal name="activate" handler="on_set_option_mode2_activate"/> + </widget> + </child> + + <child> + <widget class="GtkRadioMenuItem" id="set_option_mode3"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Show all options with prompts</property> + <property name="label" translatable="yes">Show all prompt options</property> + <property name="use_underline">True</property> + <property name="active">False</property> + <property name="group">set_option_mode1</property> + <signal name="activate" handler="on_set_option_mode3_activate"/> + </widget> + </child> + + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkMenuItem" id="help1"> + <property name="visible">True</property> + <property name="label" translatable="yes">_Help</property> + <property name="use_underline">True</property> + + <child> + <widget class="GtkMenu" id="help1_menu"> + + <child> + <widget class="GtkImageMenuItem" id="introduction1"> + <property name="visible">True</property> + <property name="label" translatable="yes">_Introduction</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_introduction1_activate" last_modification_time="Fri, 15 Nov 2002 20:26:30 GMT"/> + <accelerator key="I" modifiers="GDK_CONTROL_MASK" signal="activate"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image43"> + <property name="visible">True</property> + <property name="stock">gtk-dialog-question</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkImageMenuItem" id="about1"> + <property name="visible">True</property> + <property name="label" translatable="yes">_About</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_about1_activate" last_modification_time="Fri, 15 Nov 2002 20:26:30 GMT"/> + <accelerator key="A" modifiers="GDK_CONTROL_MASK" signal="activate"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image44"> + <property name="visible">True</property> + <property name="stock">gtk-properties</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkImageMenuItem" id="license1"> + <property name="visible">True</property> + <property name="label" translatable="yes">_License</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_license1_activate" last_modification_time="Fri, 15 Nov 2002 20:26:30 GMT"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image45"> + <property name="visible">True</property> + <property name="stock">gtk-justify-fill</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + </widget> + </child> + </widget> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> + <widget class="GtkHandleBox" id="handlebox1"> + <property name="visible">True</property> + <property name="shadow_type">GTK_SHADOW_OUT</property> + <property name="handle_position">GTK_POS_LEFT</property> + <property name="snap_edge">GTK_POS_TOP</property> + + <child> + <widget class="GtkToolbar" id="toolbar1"> + <property name="visible">True</property> + <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property> + <property name="toolbar_style">GTK_TOOLBAR_BOTH</property> + <property name="tooltips">True</property> + <property name="show_arrow">True</property> + + <child> + <widget class="GtkToolButton" id="button1"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Goes up of one level (single view)</property> + <property name="label" translatable="yes">Back</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-undo</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_back_clicked"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + + <child> + <widget class="GtkToolItem" id="toolitem1"> + <property name="visible">True</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + + <child> + <widget class="GtkVSeparator" id="vseparator1"> + <property name="visible">True</property> + </widget> + </child> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + + <child> + <widget class="GtkToolButton" id="button2"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Load a config file</property> + <property name="label" translatable="yes">Load</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-open</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_load_clicked"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + + <child> + <widget class="GtkToolButton" id="button3"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Save a config file</property> + <property name="label" translatable="yes">Save</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-save</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_save_activate"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + + <child> + <widget class="GtkToolItem" id="toolitem2"> + <property name="visible">True</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + + <child> + <widget class="GtkVSeparator" id="vseparator2"> + <property name="visible">True</property> + </widget> + </child> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + + <child> + <widget class="GtkToolButton" id="button4"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Single view</property> + <property name="label" translatable="yes">Single</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-missing-image</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_single_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:39 GMT"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + + <child> + <widget class="GtkToolButton" id="button5"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Split view</property> + <property name="label" translatable="yes">Split</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-missing-image</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_split_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:45 GMT"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + + <child> + <widget class="GtkToolButton" id="button6"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Full view</property> + <property name="label" translatable="yes">Full</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-missing-image</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_full_clicked" last_modification_time="Sun, 12 Jan 2003 14:28:50 GMT"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + + <child> + <widget class="GtkToolItem" id="toolitem3"> + <property name="visible">True</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + + <child> + <widget class="GtkVSeparator" id="vseparator3"> + <property name="visible">True</property> + </widget> + </child> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + + <child> + <widget class="GtkToolButton" id="button7"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Collapse the whole tree in the right frame</property> + <property name="label" translatable="yes">Collapse</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-remove</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_collapse_clicked"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + + <child> + <widget class="GtkToolButton" id="button8"> + <property name="visible">True</property> + <property name="tooltip" translatable="yes">Expand the whole tree in the right frame</property> + <property name="label" translatable="yes">Expand</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-add</property> + <property name="visible_horizontal">True</property> + <property name="visible_vertical">True</property> + <property name="is_important">False</property> + <signal name="clicked" handler="on_expand_clicked"/> + </widget> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + </widget> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> + <widget class="GtkHPaned" id="hpaned1"> + <property name="width_request">1</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="position">0</property> + + <child> + <widget class="GtkScrolledWindow" id="scrolledwindow1"> + <property name="visible">True</property> + <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> + <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> + <property name="shadow_type">GTK_SHADOW_IN</property> + <property name="window_placement">GTK_CORNER_TOP_LEFT</property> + + <child> + <widget class="GtkTreeView" id="treeview1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="headers_visible">True</property> + <property name="rules_hint">False</property> + <property name="reorderable">False</property> + <property name="enable_search">False</property> + <signal name="cursor_changed" handler="on_treeview2_cursor_changed" last_modification_time="Sun, 12 Jan 2003 15:58:22 GMT"/> + <signal name="button_press_event" handler="on_treeview1_button_press_event" last_modification_time="Sun, 12 Jan 2003 16:03:52 GMT"/> + <signal name="key_press_event" handler="on_treeview2_key_press_event" last_modification_time="Sun, 12 Jan 2003 16:11:44 GMT"/> + </widget> + </child> + </widget> + <packing> + <property name="shrink">True</property> + <property name="resize">False</property> + </packing> + </child> + + <child> + <widget class="GtkVPaned" id="vpaned1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="position">0</property> + + <child> + <widget class="GtkScrolledWindow" id="scrolledwindow2"> + <property name="visible">True</property> + <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> + <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> + <property name="shadow_type">GTK_SHADOW_IN</property> + <property name="window_placement">GTK_CORNER_TOP_LEFT</property> + + <child> + <widget class="GtkTreeView" id="treeview2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="has_focus">True</property> + <property name="headers_visible">True</property> + <property name="rules_hint">False</property> + <property name="reorderable">False</property> + <property name="enable_search">False</property> + <signal name="cursor_changed" handler="on_treeview2_cursor_changed" last_modification_time="Sun, 12 Jan 2003 15:57:55 GMT"/> + <signal name="button_press_event" handler="on_treeview2_button_press_event" last_modification_time="Sun, 12 Jan 2003 15:57:58 GMT"/> + <signal name="key_press_event" handler="on_treeview2_key_press_event" last_modification_time="Sun, 12 Jan 2003 15:58:01 GMT"/> + </widget> + </child> + </widget> + <packing> + <property name="shrink">True</property> + <property name="resize">False</property> + </packing> + </child> + + <child> + <widget class="GtkScrolledWindow" id="scrolledwindow3"> + <property name="visible">True</property> + <property name="hscrollbar_policy">GTK_POLICY_NEVER</property> + <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> + <property name="shadow_type">GTK_SHADOW_IN</property> + <property name="window_placement">GTK_CORNER_TOP_LEFT</property> + + <child> + <widget class="GtkTextView" id="textview3"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="editable">False</property> + <property name="overwrite">False</property> + <property name="accepts_tab">True</property> + <property name="justification">GTK_JUSTIFY_LEFT</property> + <property name="wrap_mode">GTK_WRAP_WORD</property> + <property name="cursor_visible">True</property> + <property name="pixels_above_lines">0</property> + <property name="pixels_below_lines">0</property> + <property name="pixels_inside_wrap">0</property> + <property name="left_margin">0</property> + <property name="right_margin">0</property> + <property name="indent">0</property> + <property name="text" translatable="yes">Sorry, no help available for this option yet.</property> + </widget> + </child> + </widget> + <packing> + <property name="shrink">True</property> + <property name="resize">True</property> + </packing> + </child> + </widget> + <packing> + <property name="shrink">True</property> + <property name="resize">True</property> + </packing> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + </widget> + </child> +</widget> + +</glade-interface> diff --git a/scripts/kconfig/images.c b/scripts/kconfig/images.c new file mode 100644 index 0000000..d4f84bd --- /dev/null +++ b/scripts/kconfig/images.c @@ -0,0 +1,326 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +static const char *xpm_load[] = { +"22 22 5 1", +". c None", +"# c #000000", +"c c #838100", +"a c #ffff00", +"b c #ffffff", +"......................", +"......................", +"......................", +"............####....#.", +"...........#....##.##.", +"..................###.", +".................####.", +".####...........#####.", +"#abab##########.......", +"#babababababab#.......", +"#ababababababa#.......", +"#babababababab#.......", +"#ababab###############", +"#babab##cccccccccccc##", +"#abab##cccccccccccc##.", +"#bab##cccccccccccc##..", +"#ab##cccccccccccc##...", +"#b##cccccccccccc##....", +"###cccccccccccc##.....", +"##cccccccccccc##......", +"###############.......", +"......................"}; + +static const char *xpm_save[] = { +"22 22 5 1", +". c None", +"# c #000000", +"a c #838100", +"b c #c5c2c5", +"c c #cdb6d5", +"......................", +".####################.", +".#aa#bbbbbbbbbbbb#bb#.", +".#aa#bbbbbbbbbbbb#bb#.", +".#aa#bbbbbbbbbcbb####.", +".#aa#bbbccbbbbbbb#aa#.", +".#aa#bbbccbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aaa############aaa#.", +".#aaaaaaaaaaaaaaaaaa#.", +".#aaaaaaaaaaaaaaaaaa#.", +".#aaa#############aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +"..##################..", +"......................"}; + +static const char *xpm_back[] = { +"22 22 3 1", +". c None", +"# c #000083", +"a c #838183", +"......................", +"......................", +"......................", +"......................", +"......................", +"...........######a....", +"..#......##########...", +"..##...####......##a..", +"..###.###.........##..", +"..######..........##..", +"..#####...........##..", +"..######..........##..", +"..#######.........##..", +"..########.......##a..", +"...............a###...", +"...............###....", +"......................", +"......................", +"......................", +"......................", +"......................", +"......................"}; + +static const char *xpm_tree_view[] = { +"22 22 2 1", +". c None", +"# c #000000", +"......................", +"......................", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......########........", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......########........", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......########........", +"......................", +"......................"}; + +static const char *xpm_single_view[] = { +"22 22 2 1", +". c None", +"# c #000000", +"......................", +"......................", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"......................", +"......................"}; + +static const char *xpm_split_view[] = { +"22 22 2 1", +". c None", +"# c #000000", +"......................", +"......................", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......................", +"......................"}; + +static const char *xpm_symbol_no[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_symbol_mod[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . . ", +" . .. . ", +" . .... . ", +" . .... . ", +" . .. . ", +" . . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_symbol_yes[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . . ", +" . . . ", +" . .. . ", +" . . .. . ", +" . .... . ", +" . .. . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_choice_no[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .... ", +" .. .. ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" .. .. ", +" .... ", +" "}; + +static const char *xpm_choice_yes[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .... ", +" .. .. ", +" . . ", +" . .. . ", +" . .... . ", +" . .... . ", +" . .. . ", +" . . ", +" .. .. ", +" .... ", +" "}; + +static const char *xpm_menu[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . .. . ", +" . .... . ", +" . ...... . ", +" . ...... . ", +" . .... . ", +" . .. . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_menu_inv[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" .......... ", +" .. ...... ", +" .. .... ", +" .. .. ", +" .. .. ", +" .. .... ", +" .. ...... ", +" .......... ", +" .......... ", +" "}; + +static const char *xpm_menuback[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . .. . ", +" . .... . ", +" . ...... . ", +" . ...... . ", +" . .... . ", +" . .. . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_void[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/scripts/kconfig/kxgettext.c b/scripts/kconfig/kxgettext.c new file mode 100644 index 0000000..2858738 --- /dev/null +++ b/scripts/kconfig/kxgettext.c @@ -0,0 +1,235 @@ +/* + * Arnaldo Carvalho de Melo <acme@conectiva.com.br>, 2005 + * + * Released under the terms of the GNU GPL v2.0 + */ + +#include <stdlib.h> +#include <string.h> + +#include "lkc.h" + +static char *escape(const char* text, char *bf, int len) +{ + char *bfp = bf; + int multiline = strchr(text, '\n') != NULL; + int eol = 0; + int textlen = strlen(text); + + if ((textlen > 0) && (text[textlen-1] == '\n')) + eol = 1; + + *bfp++ = '"'; + --len; + + if (multiline) { + *bfp++ = '"'; + *bfp++ = '\n'; + *bfp++ = '"'; + len -= 3; + } + + while (*text != '\0' && len > 1) { + if (*text == '"') + *bfp++ = '\\'; + else if (*text == '\n') { + *bfp++ = '\\'; + *bfp++ = 'n'; + *bfp++ = '"'; + *bfp++ = '\n'; + *bfp++ = '"'; + len -= 5; + ++text; + goto next; + } + else if (*text == '\\') { + *bfp++ = '\\'; + len--; + } + *bfp++ = *text++; +next: + --len; + } + + if (multiline && eol) + bfp -= 3; + + *bfp++ = '"'; + *bfp = '\0'; + + return bf; +} + +struct file_line { + struct file_line *next; + const char *file; + int lineno; +}; + +static struct file_line *file_line__new(const char *file, int lineno) +{ + struct file_line *self = malloc(sizeof(*self)); + + if (self == NULL) + goto out; + + self->file = file; + self->lineno = lineno; + self->next = NULL; +out: + return self; +} + +struct message { + const char *msg; + const char *option; + struct message *next; + struct file_line *files; +}; + +static struct message *message__list; + +static struct message *message__new(const char *msg, char *option, + const char *file, int lineno) +{ + struct message *self = malloc(sizeof(*self)); + + if (self == NULL) + goto out; + + self->files = file_line__new(file, lineno); + if (self->files == NULL) + goto out_fail; + + self->msg = strdup(msg); + if (self->msg == NULL) + goto out_fail_msg; + + self->option = option; + self->next = NULL; +out: + return self; +out_fail_msg: + free(self->files); +out_fail: + free(self); + self = NULL; + goto out; +} + +static struct message *mesage__find(const char *msg) +{ + struct message *m = message__list; + + while (m != NULL) { + if (strcmp(m->msg, msg) == 0) + break; + m = m->next; + } + + return m; +} + +static int message__add_file_line(struct message *self, const char *file, + int lineno) +{ + int rc = -1; + struct file_line *fl = file_line__new(file, lineno); + + if (fl == NULL) + goto out; + + fl->next = self->files; + self->files = fl; + rc = 0; +out: + return rc; +} + +static int message__add(const char *msg, char *option, const char *file, + int lineno) +{ + int rc = 0; + char bf[16384]; + char *escaped = escape(msg, bf, sizeof(bf)); + struct message *m = mesage__find(escaped); + + if (m != NULL) + rc = message__add_file_line(m, file, lineno); + else { + m = message__new(escaped, option, file, lineno); + + if (m != NULL) { + m->next = message__list; + message__list = m; + } else + rc = -1; + } + return rc; +} + +static void menu_build_message_list(struct menu *menu) +{ + struct menu *child; + + message__add(menu_get_prompt(menu), NULL, + menu->file == NULL ? "Root Menu" : menu->file->name, + menu->lineno); + + if (menu->sym != NULL && menu_has_help(menu)) + message__add(menu_get_help(menu), menu->sym->name, + menu->file == NULL ? "Root Menu" : menu->file->name, + menu->lineno); + + for (child = menu->list; child != NULL; child = child->next) + if (child->prompt != NULL) + menu_build_message_list(child); +} + +static void message__print_file_lineno(struct message *self) +{ + struct file_line *fl = self->files; + + putchar('\n'); + if (self->option != NULL) + printf("# %s:00000\n", self->option); + + printf("#: %s:%d", fl->file, fl->lineno); + fl = fl->next; + + while (fl != NULL) { + printf(", %s:%d", fl->file, fl->lineno); + fl = fl->next; + } + + putchar('\n'); +} + +static void message__print_gettext_msgid_msgstr(struct message *self) +{ + message__print_file_lineno(self); + + printf("msgid %s\n" + "msgstr \"\"\n", self->msg); +} + +static void menu__xgettext(void) +{ + struct message *m = message__list; + + while (m != NULL) { + /* skip empty lines ("") */ + if (strlen(m->msg) > sizeof("\"\"")) + message__print_gettext_msgid_msgstr(m); + m = m->next; + } +} + +int main(int ac, char **av) +{ + conf_parse(av[1]); + + menu_build_message_list(menu_get_root_menu(NULL)); + menu__xgettext(); + return 0; +} diff --git a/scripts/kconfig/list.h b/scripts/kconfig/list.h new file mode 100644 index 0000000..685d80e --- /dev/null +++ b/scripts/kconfig/list.h @@ -0,0 +1,131 @@ +#ifndef LIST_H +#define LIST_H + +/* + * Copied from include/linux/... + */ + +#undef offsetof +#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) + +/** + * container_of - cast a member of a structure out to the containing structure + * @ptr: the pointer to the member. + * @type: the type of the container struct this is embedded in. + * @member: the name of the member within the struct. + * + */ +#define container_of(ptr, type, member) ({ \ + const typeof( ((type *)0)->member ) *__mptr = (ptr); \ + (type *)( (char *)__mptr - offsetof(type,member) );}) + + +struct list_head { + struct list_head *next, *prev; +}; + + +#define LIST_HEAD_INIT(name) { &(name), &(name) } + +#define LIST_HEAD(name) \ + struct list_head name = LIST_HEAD_INIT(name) + +/** + * list_entry - get the struct for this entry + * @ptr: the &struct list_head pointer. + * @type: the type of the struct this is embedded in. + * @member: the name of the list_struct within the struct. + */ +#define list_entry(ptr, type, member) \ + container_of(ptr, type, member) + +/** + * list_for_each_entry - iterate over list of given type + * @pos: the type * to use as a loop cursor. + * @head: the head for your list. + * @member: the name of the list_struct within the struct. + */ +#define list_for_each_entry(pos, head, member) \ + for (pos = list_entry((head)->next, typeof(*pos), member); \ + &pos->member != (head); \ + pos = list_entry(pos->member.next, typeof(*pos), member)) + +/** + * list_for_each_entry_safe - iterate over list of given type safe against removal of list entry + * @pos: the type * to use as a loop cursor. + * @n: another type * to use as temporary storage + * @head: the head for your list. + * @member: the name of the list_struct within the struct. + */ +#define list_for_each_entry_safe(pos, n, head, member) \ + for (pos = list_entry((head)->next, typeof(*pos), member), \ + n = list_entry(pos->member.next, typeof(*pos), member); \ + &pos->member != (head); \ + pos = n, n = list_entry(n->member.next, typeof(*n), member)) + +/** + * list_empty - tests whether a list is empty + * @head: the list to test. + */ +static inline int list_empty(const struct list_head *head) +{ + return head->next == head; +} + +/* + * Insert a new entry between two known consecutive entries. + * + * This is only for internal list manipulation where we know + * the prev/next entries already! + */ +static inline void __list_add(struct list_head *_new, + struct list_head *prev, + struct list_head *next) +{ + next->prev = _new; + _new->next = next; + _new->prev = prev; + prev->next = _new; +} + +/** + * list_add_tail - add a new entry + * @new: new entry to be added + * @head: list head to add it before + * + * Insert a new entry before the specified head. + * This is useful for implementing queues. + */ +static inline void list_add_tail(struct list_head *_new, struct list_head *head) +{ + __list_add(_new, head->prev, head); +} + +/* + * Delete a list entry by making the prev/next entries + * point to each other. + * + * This is only for internal list manipulation where we know + * the prev/next entries already! + */ +static inline void __list_del(struct list_head *prev, struct list_head *next) +{ + next->prev = prev; + prev->next = next; +} + +#define LIST_POISON1 ((void *) 0x00100100) +#define LIST_POISON2 ((void *) 0x00200200) +/** + * list_del - deletes entry from list. + * @entry: the element to delete from the list. + * Note: list_empty() on entry does not return true after this, the entry is + * in an undefined state. + */ +static inline void list_del(struct list_head *entry) +{ + __list_del(entry->prev, entry->next); + entry->next = (struct list_head*)LIST_POISON1; + entry->prev = (struct list_head*)LIST_POISON2; +} +#endif diff --git a/scripts/kconfig/lkc.h b/scripts/kconfig/lkc.h new file mode 100644 index 0000000..d5daa7a --- /dev/null +++ b/scripts/kconfig/lkc.h @@ -0,0 +1,200 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#ifndef LKC_H +#define LKC_H + +#include "expr.h" + +#ifndef KBUILD_NO_NLS +# include <libintl.h> +#else +static inline const char *gettext(const char *txt) { return txt; } +static inline void textdomain(const char *domainname) {} +static inline void bindtextdomain(const char *name, const char *dir) {} +static inline char *bind_textdomain_codeset(const char *dn, char *c) { return c; } +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#define P(name,type,arg) extern type name arg +#include "lkc_proto.h" +#undef P + +#define SRCTREE "srctree" + +#ifndef PACKAGE +#define PACKAGE "linux" +#endif + +#define LOCALEDIR "/usr/share/locale" + +#define _(text) gettext(text) +#define N_(text) (text) + +#ifndef CONFIG_ +#define CONFIG_ "CONFIG_" +#endif +static inline const char *CONFIG_prefix(void) +{ + return getenv( "CONFIG_" ) ?: CONFIG_; +} +#undef CONFIG_ +#define CONFIG_ CONFIG_prefix() + +#define TF_COMMAND 0x0001 +#define TF_PARAM 0x0002 +#define TF_OPTION 0x0004 + +enum conf_def_mode { + def_default, + def_yes, + def_mod, + def_no, + def_random +}; + +#define T_OPT_MODULES 1 +#define T_OPT_DEFCONFIG_LIST 2 +#define T_OPT_ENV 3 +#define T_OPT_ALLNOCONFIG_Y 4 + +struct kconf_id { + int name; + int token; + unsigned int flags; + enum symbol_type stype; +}; + +extern int zconfdebug; + +int zconfparse(void); +void zconfdump(FILE *out); +void zconf_starthelp(void); +FILE *zconf_fopen(const char *name); +void zconf_initscan(const char *name); +void zconf_nextfile(const char *name); +int zconf_lineno(void); +const char *zconf_curname(void); + +/* confdata.c */ +const char *conf_get_configname(void); +const char *conf_get_autoconfig_name(void); +char *conf_get_default_confname(void); +void sym_set_change_count(int count); +void sym_add_change_count(int count); +bool conf_set_all_new_symbols(enum conf_def_mode mode); +void set_all_choice_values(struct symbol *csym); + +struct conf_printer { + void (*print_symbol)(FILE *, struct symbol *, const char *, void *); + void (*print_comment)(FILE *, const char *, void *); +}; + +/* confdata.c and expr.c */ +static inline void xfwrite(const void *str, size_t len, size_t count, FILE *out) +{ + assert(len != 0); + + if (fwrite(str, len, count, out) != count) + fprintf(stderr, "Error in writing or end of file.\n"); +} + +/* menu.c */ +void _menu_init(void); +void menu_warn(struct menu *menu, const char *fmt, ...); +struct menu *menu_add_menu(void); +void menu_end_menu(void); +void menu_add_entry(struct symbol *sym); +void menu_end_entry(void); +void menu_add_dep(struct expr *dep); +void menu_add_visibility(struct expr *dep); +struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *expr, struct expr *dep); +struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep); +void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep); +void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep); +void menu_add_option(int token, char *arg); +void menu_finalize(struct menu *parent); +void menu_set_type(int type); + +/* util.c */ +struct file *file_lookup(const char *name); +int file_write_dep(const char *name); +void *xmalloc(size_t size); +void *xcalloc(size_t nmemb, size_t size); + +struct gstr { + size_t len; + char *s; + /* + * when max_width is not zero long lines in string s (if any) get + * wrapped not to exceed the max_width value + */ + int max_width; +}; +struct gstr str_new(void); +struct gstr str_assign(const char *s); +void str_free(struct gstr *gs); +void str_append(struct gstr *gs, const char *s); +void str_printf(struct gstr *gs, const char *fmt, ...); +const char *str_get(struct gstr *gs); + +/* symbol.c */ +extern struct expr *sym_env_list; + +void sym_init(void); +void sym_clear_all_valid(void); +void sym_set_all_changed(void); +void sym_set_changed(struct symbol *sym); +struct symbol *sym_choice_default(struct symbol *sym); +const char *sym_get_string_default(struct symbol *sym); +struct symbol *sym_check_deps(struct symbol *sym); +struct property *prop_alloc(enum prop_type type, struct symbol *sym); +struct symbol *prop_get_symbol(struct property *prop); +struct property *sym_get_env_prop(struct symbol *sym); + +static inline tristate sym_get_tristate_value(struct symbol *sym) +{ + return sym->curr.tri; +} + + +static inline struct symbol *sym_get_choice_value(struct symbol *sym) +{ + return (struct symbol *)sym->curr.val; +} + +static inline bool sym_set_choice_value(struct symbol *ch, struct symbol *chval) +{ + return sym_set_tristate_value(chval, yes); +} + +static inline bool sym_is_choice(struct symbol *sym) +{ + return sym->flags & SYMBOL_CHOICE ? true : false; +} + +static inline bool sym_is_choice_value(struct symbol *sym) +{ + return sym->flags & SYMBOL_CHOICEVAL ? true : false; +} + +static inline bool sym_is_optional(struct symbol *sym) +{ + return sym->flags & SYMBOL_OPTIONAL ? true : false; +} + +static inline bool sym_has_value(struct symbol *sym) +{ + return sym->flags & SYMBOL_DEF_USER ? true : false; +} + +#ifdef __cplusplus +} +#endif + +#endif /* LKC_H */ diff --git a/scripts/kconfig/lkc_proto.h b/scripts/kconfig/lkc_proto.h new file mode 100644 index 0000000..ecdb965 --- /dev/null +++ b/scripts/kconfig/lkc_proto.h @@ -0,0 +1,57 @@ +#include <stdarg.h> + +/* confdata.c */ +P(conf_parse,void,(const char *name)); +P(conf_read,int,(const char *name)); +P(conf_read_simple,int,(const char *name, int)); +P(conf_write_defconfig,int,(const char *name)); +P(conf_write,int,(const char *name)); +P(conf_write_autoconf,int,(void)); +P(conf_get_changed,bool,(void)); +P(conf_set_changed_callback, void,(void (*fn)(void))); +P(conf_set_message_callback, void,(void (*fn)(const char *fmt, va_list ap))); + +/* menu.c */ +P(rootmenu,struct menu,); + +P(menu_is_empty, bool, (struct menu *menu)); +P(menu_is_visible, bool, (struct menu *menu)); +P(menu_has_prompt, bool, (struct menu *menu)); +P(menu_get_prompt,const char *,(struct menu *menu)); +P(menu_get_root_menu,struct menu *,(struct menu *menu)); +P(menu_get_parent_menu,struct menu *,(struct menu *menu)); +P(menu_has_help,bool,(struct menu *menu)); +P(menu_get_help,const char *,(struct menu *menu)); +P(get_symbol_str, void, (struct gstr *r, struct symbol *sym, struct list_head + *head)); +P(get_relations_str, struct gstr, (struct symbol **sym_arr, struct list_head + *head)); +P(menu_get_ext_help,void,(struct menu *menu, struct gstr *help)); + +/* symbol.c */ +P(symbol_hash,struct symbol *,[SYMBOL_HASHSIZE]); + +P(sym_lookup,struct symbol *,(const char *name, int flags)); +P(sym_find,struct symbol *,(const char *name)); +P(sym_expand_string_value,const char *,(const char *in)); +P(sym_escape_string_value, const char *,(const char *in)); +P(sym_re_search,struct symbol **,(const char *pattern)); +P(sym_type_name,const char *,(enum symbol_type type)); +P(sym_calc_value,void,(struct symbol *sym)); +P(sym_get_type,enum symbol_type,(struct symbol *sym)); +P(sym_tristate_within_range,bool,(struct symbol *sym,tristate tri)); +P(sym_set_tristate_value,bool,(struct symbol *sym,tristate tri)); +P(sym_toggle_tristate_value,tristate,(struct symbol *sym)); +P(sym_string_valid,bool,(struct symbol *sym, const char *newval)); +P(sym_string_within_range,bool,(struct symbol *sym, const char *str)); +P(sym_set_string_value,bool,(struct symbol *sym, const char *newval)); +P(sym_is_changable,bool,(struct symbol *sym)); +P(sym_get_choice_prop,struct property *,(struct symbol *sym)); +P(sym_get_default_prop,struct property *,(struct symbol *sym)); +P(sym_get_string_value,const char *,(struct symbol *sym)); + +P(prop_get_type_name,const char *,(enum prop_type type)); + +/* expr.c */ +P(expr_compare_type,int,(enum expr_type t1, enum expr_type t2)); +P(expr_print,void,(struct expr *e, void (*fn)(void *, struct symbol *, const char *), void *data, int prevtoken)); diff --git a/scripts/kconfig/lxdialog/.gitignore b/scripts/kconfig/lxdialog/.gitignore new file mode 100644 index 0000000..90b08ff --- /dev/null +++ b/scripts/kconfig/lxdialog/.gitignore @@ -0,0 +1,4 @@ +# +# Generated files +# +lxdialog diff --git a/scripts/kconfig/lxdialog/BIG.FAT.WARNING b/scripts/kconfig/lxdialog/BIG.FAT.WARNING new file mode 100644 index 0000000..a8999d8 --- /dev/null +++ b/scripts/kconfig/lxdialog/BIG.FAT.WARNING @@ -0,0 +1,4 @@ +This is NOT the official version of dialog. This version has been +significantly modified from the original. It is for use by the Linux +kernel configuration script. Please do not bother Savio Lam with +questions about this program. diff --git a/scripts/kconfig/lxdialog/check-lxdialog.sh b/scripts/kconfig/lxdialog/check-lxdialog.sh new file mode 100644 index 0000000..9d2a4c5 --- /dev/null +++ b/scripts/kconfig/lxdialog/check-lxdialog.sh @@ -0,0 +1,87 @@ +#!/bin/sh +# Check ncurses compatibility + +# What library to link +ldflags() +{ + pkg-config --libs ncursesw 2>/dev/null && exit + pkg-config --libs ncurses 2>/dev/null && exit + for ext in so a dll.a dylib ; do + for lib in ncursesw ncurses curses ; do + $cc -print-file-name=lib${lib}.${ext} | grep -q / + if [ $? -eq 0 ]; then + echo "-l${lib}" + exit + fi + done + done + exit 1 +} + +# Where is ncurses.h? +ccflags() +{ + if [ -f /usr/include/ncursesw/curses.h ]; then + echo '-I/usr/include/ncursesw -DCURSES_LOC="<curses.h>"' + echo ' -DNCURSES_WIDECHAR=1' + elif [ -f /usr/include/ncurses/ncurses.h ]; then + echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses.h>"' + elif [ -f /usr/include/ncurses/curses.h ]; then + echo '-I/usr/include/ncurses -DCURSES_LOC="<curses.h>"' + elif [ -f /usr/include/ncurses.h ]; then + echo '-DCURSES_LOC="<ncurses.h>"' + else + echo '-DCURSES_LOC="<curses.h>"' + fi +} + +# Temp file, try to clean up after us +tmp=.lxdialog.tmp +trap "rm -f $tmp" 0 1 2 3 15 + +# Check if we can link to ncurses +check() { + $cc -x c - -o $tmp 2>/dev/null <<'EOF' +#include CURSES_LOC +main() {} +EOF + if [ $? != 0 ]; then + echo " *** Unable to find the ncurses libraries or the" 1>&2 + echo " *** required header files." 1>&2 + echo " *** 'make menuconfig' requires the ncurses libraries." 1>&2 + echo " *** " 1>&2 + echo " *** Install ncurses (ncurses-devel) and try again." 1>&2 + echo " *** " 1>&2 + exit 1 + fi +} + +usage() { + printf "Usage: $0 [-check compiler options|-ccflags|-ldflags compiler options]\n" +} + +if [ $# -eq 0 ]; then + usage + exit 1 +fi + +cc="" +case "$1" in + "-check") + shift + cc="$@" + check + ;; + "-ccflags") + ccflags + ;; + "-ldflags") + shift + cc="$@" + ldflags + ;; + "*") + usage + exit 1 + ;; +esac diff --git a/scripts/kconfig/lxdialog/checklist.c b/scripts/kconfig/lxdialog/checklist.c new file mode 100644 index 0000000..8d016fa --- /dev/null +++ b/scripts/kconfig/lxdialog/checklist.c @@ -0,0 +1,332 @@ +/* + * checklist.c -- implements the checklist box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * Stuart Herbert - S.Herbert@sheffield.ac.uk: radiolist extension + * Alessandro Rubini - rubini@ipvvis.unipv.it: merged the two + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +static int list_width, check_x, item_x; + +/* + * Print list item + */ +static void print_item(WINDOW * win, int choice, int selected) +{ + int i; + char *list_item = malloc(list_width + 1); + + strncpy(list_item, item_str(), list_width - item_x); + list_item[list_width - item_x] = '\0'; + + /* Clear 'residue' of last item */ + wattrset(win, dlg.menubox.atr); + wmove(win, choice, 0); + for (i = 0; i < list_width; i++) + waddch(win, ' '); + + wmove(win, choice, check_x); + wattrset(win, selected ? dlg.check_selected.atr + : dlg.check.atr); + if (!item_is_tag(':')) + wprintw(win, "(%c)", item_is_tag('X') ? 'X' : ' '); + + wattrset(win, selected ? dlg.tag_selected.atr : dlg.tag.atr); + mvwaddch(win, choice, item_x, list_item[0]); + wattrset(win, selected ? dlg.item_selected.atr : dlg.item.atr); + waddstr(win, list_item + 1); + if (selected) { + wmove(win, choice, check_x + 1); + wrefresh(win); + } + free(list_item); +} + +/* + * Print the scroll indicators. + */ +static void print_arrows(WINDOW * win, int choice, int item_no, int scroll, + int y, int x, int height) +{ + wmove(win, y, x); + + if (scroll > 0) { + wattrset(win, dlg.uarrow.atr); + waddch(win, ACS_UARROW); + waddstr(win, "(-)"); + } else { + wattrset(win, dlg.menubox.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } + + y = y + height + 1; + wmove(win, y, x); + + if ((height < item_no) && (scroll + choice < item_no - 1)) { + wattrset(win, dlg.darrow.atr); + waddch(win, ACS_DARROW); + waddstr(win, "(+)"); + } else { + wattrset(win, dlg.menubox_border.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } +} + +/* + * Display the termination buttons + */ +static void print_buttons(WINDOW * dialog, int height, int width, int selected) +{ + int x = width / 2 - 11; + int y = height - 2; + + print_button(dialog, gettext("Select"), y, x, selected == 0); + print_button(dialog, gettext(" Help "), y, x + 14, selected == 1); + + wmove(dialog, y, x + 1 + 14 * selected); + wrefresh(dialog); +} + +/* + * Display a dialog box with a list of options that can be turned on or off + * in the style of radiolist (only one option turned on at a time). + */ +int dialog_checklist(const char *title, const char *prompt, int height, + int width, int list_height) +{ + int i, x, y, box_x, box_y; + int key = 0, button = 0, choice = 0, scroll = 0, max_choice; + WINDOW *dialog, *list; + + /* which item to highlight */ + item_foreach() { + if (item_is_tag('X')) + choice = item_n(); + if (item_is_selected()) { + choice = item_n(); + break; + } + } + +do_resize: + if (getmaxy(stdscr) < (height + CHECKLIST_HEIGTH_MIN)) + return -ERRDISPLAYTOOSMALL; + if (getmaxx(stdscr) < (width + CHECKLIST_WIDTH_MIN)) + return -ERRDISPLAYTOOSMALL; + + max_choice = MIN(list_height, item_count()); + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + list_width = width - 6; + box_y = height - list_height - 5; + box_x = (width - list_width) / 2 - 1; + + /* create new window for the list */ + list = subwin(dialog, list_height, list_width, y + box_y + 1, + x + box_x + 1); + + keypad(list, TRUE); + + /* draw a box around the list items */ + draw_box(dialog, box_y, box_x, list_height + 2, list_width + 2, + dlg.menubox_border.atr, dlg.menubox.atr); + + /* Find length of longest item in order to center checklist */ + check_x = 0; + item_foreach() + check_x = MAX(check_x, strlen(item_str()) + 4); + check_x = MIN(check_x, list_width); + + check_x = (list_width - check_x) / 2; + item_x = check_x + 4; + + if (choice >= list_height) { + scroll = choice - list_height + 1; + choice -= scroll; + } + + /* Print the list */ + for (i = 0; i < max_choice; i++) { + item_set(scroll + i); + print_item(list, i, i == choice); + } + + print_arrows(dialog, choice, item_count(), scroll, + box_y, box_x + check_x + 5, list_height); + + print_buttons(dialog, height, width, 0); + + wnoutrefresh(dialog); + wnoutrefresh(list); + doupdate(); + + while (key != KEY_ESC) { + key = wgetch(dialog); + + for (i = 0; i < max_choice; i++) { + item_set(i + scroll); + if (toupper(key) == toupper(item_str()[0])) + break; + } + + if (i < max_choice || key == KEY_UP || key == KEY_DOWN || + key == '+' || key == '-') { + if (key == KEY_UP || key == '-') { + if (!choice) { + if (!scroll) + continue; + /* Scroll list down */ + if (list_height > 1) { + /* De-highlight current first item */ + item_set(scroll); + print_item(list, 0, FALSE); + scrollok(list, TRUE); + wscrl(list, -1); + scrollok(list, FALSE); + } + scroll--; + item_set(scroll); + print_item(list, 0, TRUE); + print_arrows(dialog, choice, item_count(), + scroll, box_y, box_x + check_x + 5, list_height); + + wnoutrefresh(dialog); + wrefresh(list); + + continue; /* wait for another key press */ + } else + i = choice - 1; + } else if (key == KEY_DOWN || key == '+') { + if (choice == max_choice - 1) { + if (scroll + choice >= item_count() - 1) + continue; + /* Scroll list up */ + if (list_height > 1) { + /* De-highlight current last item before scrolling up */ + item_set(scroll + max_choice - 1); + print_item(list, + max_choice - 1, + FALSE); + scrollok(list, TRUE); + wscrl(list, 1); + scrollok(list, FALSE); + } + scroll++; + item_set(scroll + max_choice - 1); + print_item(list, max_choice - 1, TRUE); + + print_arrows(dialog, choice, item_count(), + scroll, box_y, box_x + check_x + 5, list_height); + + wnoutrefresh(dialog); + wrefresh(list); + + continue; /* wait for another key press */ + } else + i = choice + 1; + } + if (i != choice) { + /* De-highlight current item */ + item_set(scroll + choice); + print_item(list, choice, FALSE); + /* Highlight new item */ + choice = i; + item_set(scroll + choice); + print_item(list, choice, TRUE); + wnoutrefresh(dialog); + wrefresh(list); + } + continue; /* wait for another key press */ + } + switch (key) { + case 'H': + case 'h': + case '?': + button = 1; + /* fall-through */ + case 'S': + case 's': + case ' ': + case '\n': + item_foreach() + item_set_selected(0); + item_set(scroll + choice); + item_set_selected(1); + delwin(list); + delwin(dialog); + return button; + case TAB: + case KEY_LEFT: + case KEY_RIGHT: + button = ((key == KEY_LEFT ? --button : ++button) < 0) + ? 1 : (button > 1 ? 0 : button); + + print_buttons(dialog, height, width, button); + wrefresh(dialog); + break; + case 'X': + case 'x': + key = KEY_ESC; + break; + case KEY_ESC: + key = on_key_esc(dialog); + break; + case KEY_RESIZE: + delwin(list); + delwin(dialog); + on_key_resize(); + goto do_resize; + } + + /* Now, update everything... */ + doupdate(); + } + delwin(list); + delwin(dialog); + return key; /* ESC pressed */ +} diff --git a/scripts/kconfig/lxdialog/dialog.h b/scripts/kconfig/lxdialog/dialog.h new file mode 100644 index 0000000..b4343d3 --- /dev/null +++ b/scripts/kconfig/lxdialog/dialog.h @@ -0,0 +1,257 @@ +/* + * dialog.h -- common declarations for all dialog modules + * + * AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <sys/types.h> +#include <fcntl.h> +#include <unistd.h> +#include <ctype.h> +#include <stdlib.h> +#include <string.h> +#include <stdbool.h> + +#ifndef KBUILD_NO_NLS +# include <libintl.h> +#else +# define gettext(Msgid) ((const char *) (Msgid)) +#endif + +#ifdef __sun__ +#define CURS_MACROS +#endif +#include CURSES_LOC + +/* + * Colors in ncurses 1.9.9e do not work properly since foreground and + * background colors are OR'd rather than separately masked. This version + * of dialog was hacked to work with ncurses 1.9.9e, making it incompatible + * with standard curses. The simplest fix (to make this work with standard + * curses) uses the wbkgdset() function, not used in the original hack. + * Turn it off if we're building with 1.9.9e, since it just confuses things. + */ +#if defined(NCURSES_VERSION) && defined(_NEED_WRAP) && !defined(GCC_PRINTFLIKE) +#define OLD_NCURSES 1 +#undef wbkgdset +#define wbkgdset(w,p) /*nothing */ +#else +#define OLD_NCURSES 0 +#endif + +#define TR(params) _tracef params + +#define KEY_ESC 27 +#define TAB 9 +#define MAX_LEN 2048 +#define BUF_SIZE (10*1024) +#define MIN(x,y) (x < y ? x : y) +#define MAX(x,y) (x > y ? x : y) + +#ifndef ACS_ULCORNER +#define ACS_ULCORNER '+' +#endif +#ifndef ACS_LLCORNER +#define ACS_LLCORNER '+' +#endif +#ifndef ACS_URCORNER +#define ACS_URCORNER '+' +#endif +#ifndef ACS_LRCORNER +#define ACS_LRCORNER '+' +#endif +#ifndef ACS_HLINE +#define ACS_HLINE '-' +#endif +#ifndef ACS_VLINE +#define ACS_VLINE '|' +#endif +#ifndef ACS_LTEE +#define ACS_LTEE '+' +#endif +#ifndef ACS_RTEE +#define ACS_RTEE '+' +#endif +#ifndef ACS_UARROW +#define ACS_UARROW '^' +#endif +#ifndef ACS_DARROW +#define ACS_DARROW 'v' +#endif + +/* error return codes */ +#define ERRDISPLAYTOOSMALL (KEY_MAX + 1) + +/* + * Color definitions + */ +struct dialog_color { + chtype atr; /* Color attribute */ + int fg; /* foreground */ + int bg; /* background */ + int hl; /* highlight this item */ +}; + +struct subtitle_list { + struct subtitle_list *next; + const char *text; +}; + +struct dialog_info { + const char *backtitle; + struct subtitle_list *subtitles; + struct dialog_color screen; + struct dialog_color shadow; + struct dialog_color dialog; + struct dialog_color title; + struct dialog_color border; + struct dialog_color button_active; + struct dialog_color button_inactive; + struct dialog_color button_key_active; + struct dialog_color button_key_inactive; + struct dialog_color button_label_active; + struct dialog_color button_label_inactive; + struct dialog_color inputbox; + struct dialog_color inputbox_border; + struct dialog_color searchbox; + struct dialog_color searchbox_title; + struct dialog_color searchbox_border; + struct dialog_color position_indicator; + struct dialog_color menubox; + struct dialog_color menubox_border; + struct dialog_color item; + struct dialog_color item_selected; + struct dialog_color tag; + struct dialog_color tag_selected; + struct dialog_color tag_key; + struct dialog_color tag_key_selected; + struct dialog_color check; + struct dialog_color check_selected; + struct dialog_color uarrow; + struct dialog_color darrow; +}; + +/* + * Global variables + */ +extern struct dialog_info dlg; +extern char dialog_input_result[]; +extern int saved_x, saved_y; /* Needed in signal handler in mconf.c */ + +/* + * Function prototypes + */ + +/* item list as used by checklist and menubox */ +void item_reset(void); +void item_make(const char *fmt, ...); +void item_add_str(const char *fmt, ...); +void item_set_tag(char tag); +void item_set_data(void *p); +void item_set_selected(int val); +int item_activate_selected(void); +void *item_data(void); +char item_tag(void); + +/* item list manipulation for lxdialog use */ +#define MAXITEMSTR 200 +struct dialog_item { + char str[MAXITEMSTR]; /* promtp displayed */ + char tag; + void *data; /* pointer to menu item - used by menubox+checklist */ + int selected; /* Set to 1 by dialog_*() function if selected. */ +}; + +/* list of lialog_items */ +struct dialog_list { + struct dialog_item node; + struct dialog_list *next; +}; + +extern struct dialog_list *item_cur; +extern struct dialog_list item_nil; +extern struct dialog_list *item_head; + +int item_count(void); +void item_set(int n); +int item_n(void); +const char *item_str(void); +int item_is_selected(void); +int item_is_tag(char tag); +#define item_foreach() \ + for (item_cur = item_head ? item_head: item_cur; \ + item_cur && (item_cur != &item_nil); item_cur = item_cur->next) + +/* generic key handlers */ +int on_key_esc(WINDOW *win); +int on_key_resize(void); + +/* minimum (re)size values */ +#define CHECKLIST_HEIGTH_MIN 6 /* For dialog_checklist() */ +#define CHECKLIST_WIDTH_MIN 6 +#define INPUTBOX_HEIGTH_MIN 2 /* For dialog_inputbox() */ +#define INPUTBOX_WIDTH_MIN 2 +#define MENUBOX_HEIGTH_MIN 15 /* For dialog_menu() */ +#define MENUBOX_WIDTH_MIN 65 +#define TEXTBOX_HEIGTH_MIN 8 /* For dialog_textbox() */ +#define TEXTBOX_WIDTH_MIN 8 +#define YESNO_HEIGTH_MIN 4 /* For dialog_yesno() */ +#define YESNO_WIDTH_MIN 4 +#define WINDOW_HEIGTH_MIN 19 /* For init_dialog() */ +#define WINDOW_WIDTH_MIN 80 + +int init_dialog(const char *backtitle); +void set_dialog_backtitle(const char *backtitle); +void set_dialog_subtitles(struct subtitle_list *subtitles); +void end_dialog(int x, int y); +void attr_clear(WINDOW * win, int height, int width, chtype attr); +void dialog_clear(void); +void print_autowrap(WINDOW * win, const char *prompt, int width, int y, int x); +void print_button(WINDOW * win, const char *label, int y, int x, int selected); +void print_title(WINDOW *dialog, const char *title, int width); +void draw_box(WINDOW * win, int y, int x, int height, int width, chtype box, + chtype border); +void draw_shadow(WINDOW * win, int y, int x, int height, int width); + +int first_alpha(const char *string, const char *exempt); +int dialog_yesno(const char *title, const char *prompt, int height, int width); +int dialog_msgbox(const char *title, const char *prompt, int height, + int width, int pause); + + +typedef void (*update_text_fn)(char *buf, size_t start, size_t end, void + *_data); +int dialog_textbox(const char *title, char *tbuf, int initial_height, + int initial_width, int *keys, int *_vscroll, int *_hscroll, + update_text_fn update_text, void *data); +int dialog_menu(const char *title, const char *prompt, + const void *selected, int *s_scroll); +int dialog_checklist(const char *title, const char *prompt, int height, + int width, int list_height); +int dialog_inputbox(const char *title, const char *prompt, int height, + int width, const char *init); + +/* + * This is the base for fictitious keys, which activate + * the buttons. + * + * Mouse-generated keys are the following: + * -- the first 32 are used as numbers, in addition to '0'-'9' + * -- the lowercase are used to signal mouse-enter events (M_EVENT + 'o') + * -- uppercase chars are used to invoke the button (M_EVENT + 'O') + */ +#define M_EVENT (KEY_MAX+1) diff --git a/scripts/kconfig/lxdialog/inputbox.c b/scripts/kconfig/lxdialog/inputbox.c new file mode 100644 index 0000000..d58de1d --- /dev/null +++ b/scripts/kconfig/lxdialog/inputbox.c @@ -0,0 +1,301 @@ +/* + * inputbox.c -- implements the input box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +char dialog_input_result[MAX_LEN + 1]; + +/* + * Print the termination buttons + */ +static void print_buttons(WINDOW * dialog, int height, int width, int selected) +{ + int x = width / 2 - 11; + int y = height - 2; + + print_button(dialog, gettext(" Ok "), y, x, selected == 0); + print_button(dialog, gettext(" Help "), y, x + 14, selected == 1); + + wmove(dialog, y, x + 1 + 14 * selected); + wrefresh(dialog); +} + +/* + * Display a dialog box for inputing a string + */ +int dialog_inputbox(const char *title, const char *prompt, int height, int width, + const char *init) +{ + int i, x, y, box_y, box_x, box_width; + int input_x = 0, key = 0, button = -1; + int show_x, len, pos; + char *instr = dialog_input_result; + WINDOW *dialog; + + if (!init) + instr[0] = '\0'; + else + strcpy(instr, init); + +do_resize: + if (getmaxy(stdscr) <= (height - INPUTBOX_HEIGTH_MIN)) + return -ERRDISPLAYTOOSMALL; + if (getmaxx(stdscr) <= (width - INPUTBOX_WIDTH_MIN)) + return -ERRDISPLAYTOOSMALL; + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + /* Draw the input field box */ + box_width = width - 6; + getyx(dialog, y, x); + box_y = y + 2; + box_x = (width - box_width) / 2; + draw_box(dialog, y + 1, box_x - 1, 3, box_width + 2, + dlg.dialog.atr, dlg.border.atr); + + print_buttons(dialog, height, width, 0); + + /* Set up the initial value */ + wmove(dialog, box_y, box_x); + wattrset(dialog, dlg.inputbox.atr); + + len = strlen(instr); + pos = len; + + if (len >= box_width) { + show_x = len - box_width + 1; + input_x = box_width - 1; + for (i = 0; i < box_width - 1; i++) + waddch(dialog, instr[show_x + i]); + } else { + show_x = 0; + input_x = len; + waddstr(dialog, instr); + } + + wmove(dialog, box_y, box_x + input_x); + + wrefresh(dialog); + + while (key != KEY_ESC) { + key = wgetch(dialog); + + if (button == -1) { /* Input box selected */ + switch (key) { + case TAB: + case KEY_UP: + case KEY_DOWN: + break; + case KEY_BACKSPACE: + case 127: + if (pos) { + wattrset(dialog, dlg.inputbox.atr); + if (input_x == 0) { + show_x--; + } else + input_x--; + + if (pos < len) { + for (i = pos - 1; i < len; i++) { + instr[i] = instr[i+1]; + } + } + + pos--; + len--; + instr[len] = '\0'; + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, input_x + box_x); + wrefresh(dialog); + } + continue; + case KEY_LEFT: + if (pos > 0) { + if (input_x > 0) { + wmove(dialog, box_y, --input_x + box_x); + } else if (input_x == 0) { + show_x--; + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, box_x); + } + pos--; + } + continue; + case KEY_RIGHT: + if (pos < len) { + if (input_x < box_width - 1) { + wmove(dialog, box_y, ++input_x + box_x); + } else if (input_x == box_width - 1) { + show_x++; + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, input_x + box_x); + } + pos++; + } + continue; + default: + if (key < 0x100 && isprint(key)) { + if (len < MAX_LEN) { + wattrset(dialog, dlg.inputbox.atr); + if (pos < len) { + for (i = len; i > pos; i--) + instr[i] = instr[i-1]; + instr[pos] = key; + } else { + instr[len] = key; + } + pos++; + len++; + instr[len] = '\0'; + + if (input_x == box_width - 1) { + show_x++; + } else { + input_x++; + } + + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, input_x + box_x); + wrefresh(dialog); + } else + flash(); /* Alarm user about overflow */ + continue; + } + } + } + switch (key) { + case 'O': + case 'o': + delwin(dialog); + return 0; + case 'H': + case 'h': + delwin(dialog); + return 1; + case KEY_UP: + case KEY_LEFT: + switch (button) { + case -1: + button = 1; /* Indicates "Help" button is selected */ + print_buttons(dialog, height, width, 1); + break; + case 0: + button = -1; /* Indicates input box is selected */ + print_buttons(dialog, height, width, 0); + wmove(dialog, box_y, box_x + input_x); + wrefresh(dialog); + break; + case 1: + button = 0; /* Indicates "OK" button is selected */ + print_buttons(dialog, height, width, 0); + break; + } + break; + case TAB: + case KEY_DOWN: + case KEY_RIGHT: + switch (button) { + case -1: + button = 0; /* Indicates "OK" button is selected */ + print_buttons(dialog, height, width, 0); + break; + case 0: + button = 1; /* Indicates "Help" button is selected */ + print_buttons(dialog, height, width, 1); + break; + case 1: + button = -1; /* Indicates input box is selected */ + print_buttons(dialog, height, width, 0); + wmove(dialog, box_y, box_x + input_x); + wrefresh(dialog); + break; + } + break; + case ' ': + case '\n': + delwin(dialog); + return (button == -1 ? 0 : button); + case 'X': + case 'x': + key = KEY_ESC; + break; + case KEY_ESC: + key = on_key_esc(dialog); + break; + case KEY_RESIZE: + delwin(dialog); + on_key_resize(); + goto do_resize; + } + } + + delwin(dialog); + return KEY_ESC; /* ESC pressed */ +} diff --git a/scripts/kconfig/lxdialog/menubox.c b/scripts/kconfig/lxdialog/menubox.c new file mode 100644 index 0000000..11ae9ad --- /dev/null +++ b/scripts/kconfig/lxdialog/menubox.c @@ -0,0 +1,437 @@ +/* + * menubox.c -- implements the menu box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcapw@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +/* + * Changes by Clifford Wolf (god@clifford.at) + * + * [ 1998-06-13 ] + * + * *) A bugfix for the Page-Down problem + * + * *) Formerly when I used Page Down and Page Up, the cursor would be set + * to the first position in the menu box. Now lxdialog is a bit + * smarter and works more like other menu systems (just have a look at + * it). + * + * *) Formerly if I selected something my scrolling would be broken because + * lxdialog is re-invoked by the Menuconfig shell script, can't + * remember the last scrolling position, and just sets it so that the + * cursor is at the bottom of the box. Now it writes the temporary file + * lxdialog.scrltmp which contains this information. The file is + * deleted by lxdialog if the user leaves a submenu or enters a new + * one, but it would be nice if Menuconfig could make another "rm -f" + * just to be sure. Just try it out - you will recognise a difference! + * + * [ 1998-06-14 ] + * + * *) Now lxdialog is crash-safe against broken "lxdialog.scrltmp" files + * and menus change their size on the fly. + * + * *) If for some reason the last scrolling position is not saved by + * lxdialog, it sets the scrolling so that the selected item is in the + * middle of the menu box, not at the bottom. + * + * 02 January 1999, Michael Elizabeth Chastain (mec@shout.net) + * Reset 'scroll' to 0 if the value from lxdialog.scrltmp is bogus. + * This fixes a bug in Menuconfig where using ' ' to descend into menus + * would leave mis-synchronized lxdialog.scrltmp files lying around, + * fscanf would read in 'scroll', and eventually that value would get used. + */ + +#include "dialog.h" + +static int menu_width, item_x; + +/* + * Print menu item + */ +static void do_print_item(WINDOW * win, const char *item, int line_y, + int selected, int hotkey) +{ + int j; + char *menu_item = malloc(menu_width + 1); + + strncpy(menu_item, item, menu_width - item_x); + menu_item[menu_width - item_x] = '\0'; + j = first_alpha(menu_item, "YyNnMmHh"); + + /* Clear 'residue' of last item */ + wattrset(win, dlg.menubox.atr); + wmove(win, line_y, 0); +#if OLD_NCURSES + { + int i; + for (i = 0; i < menu_width; i++) + waddch(win, ' '); + } +#else + wclrtoeol(win); +#endif + wattrset(win, selected ? dlg.item_selected.atr : dlg.item.atr); + mvwaddstr(win, line_y, item_x, menu_item); + if (hotkey) { + wattrset(win, selected ? dlg.tag_key_selected.atr + : dlg.tag_key.atr); + mvwaddch(win, line_y, item_x + j, menu_item[j]); + } + if (selected) { + wmove(win, line_y, item_x + 1); + } + free(menu_item); + wrefresh(win); +} + +#define print_item(index, choice, selected) \ +do { \ + item_set(index); \ + do_print_item(menu, item_str(), choice, selected, !item_is_tag(':')); \ +} while (0) + +/* + * Print the scroll indicators. + */ +static void print_arrows(WINDOW * win, int item_no, int scroll, int y, int x, + int height) +{ + int cur_y, cur_x; + + getyx(win, cur_y, cur_x); + + wmove(win, y, x); + + if (scroll > 0) { + wattrset(win, dlg.uarrow.atr); + waddch(win, ACS_UARROW); + waddstr(win, "(-)"); + } else { + wattrset(win, dlg.menubox.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } + + y = y + height + 1; + wmove(win, y, x); + wrefresh(win); + + if ((height < item_no) && (scroll + height < item_no)) { + wattrset(win, dlg.darrow.atr); + waddch(win, ACS_DARROW); + waddstr(win, "(+)"); + } else { + wattrset(win, dlg.menubox_border.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } + + wmove(win, cur_y, cur_x); + wrefresh(win); +} + +/* + * Display the termination buttons. + */ +static void print_buttons(WINDOW * win, int height, int width, int selected) +{ + int x = width / 2 - 28; + int y = height - 2; + + print_button(win, gettext("Select"), y, x, selected == 0); + print_button(win, gettext(" Exit "), y, x + 12, selected == 1); + print_button(win, gettext(" Help "), y, x + 24, selected == 2); + print_button(win, gettext(" Save "), y, x + 36, selected == 3); + print_button(win, gettext(" Load "), y, x + 48, selected == 4); + + wmove(win, y, x + 1 + 12 * selected); + wrefresh(win); +} + +/* scroll up n lines (n may be negative) */ +static void do_scroll(WINDOW *win, int *scroll, int n) +{ + /* Scroll menu up */ + scrollok(win, TRUE); + wscrl(win, n); + scrollok(win, FALSE); + *scroll = *scroll + n; + wrefresh(win); +} + +/* + * Display a menu for choosing among a number of options + */ +int dialog_menu(const char *title, const char *prompt, + const void *selected, int *s_scroll) +{ + int i, j, x, y, box_x, box_y; + int height, width, menu_height; + int key = 0, button = 0, scroll = 0, choice = 0; + int first_item = 0, max_choice; + WINDOW *dialog, *menu; + +do_resize: + height = getmaxy(stdscr); + width = getmaxx(stdscr); + if (height < MENUBOX_HEIGTH_MIN || width < MENUBOX_WIDTH_MIN) + return -ERRDISPLAYTOOSMALL; + + height -= 4; + width -= 5; + menu_height = height - 10; + + max_choice = MIN(menu_height, item_count()); + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + wbkgdset(dialog, dlg.dialog.atr & A_COLOR); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + menu_width = width - 6; + box_y = height - menu_height - 5; + box_x = (width - menu_width) / 2 - 1; + + /* create new window for the menu */ + menu = subwin(dialog, menu_height, menu_width, + y + box_y + 1, x + box_x + 1); + keypad(menu, TRUE); + + /* draw a box around the menu items */ + draw_box(dialog, box_y, box_x, menu_height + 2, menu_width + 2, + dlg.menubox_border.atr, dlg.menubox.atr); + + if (menu_width >= 80) + item_x = (menu_width - 70) / 2; + else + item_x = 4; + + /* Set choice to default item */ + item_foreach() + if (selected && (selected == item_data())) + choice = item_n(); + /* get the saved scroll info */ + scroll = *s_scroll; + if ((scroll <= choice) && (scroll + max_choice > choice) && + (scroll >= 0) && (scroll + max_choice <= item_count())) { + first_item = scroll; + choice = choice - scroll; + } else { + scroll = 0; + } + if ((choice >= max_choice)) { + if (choice >= item_count() - max_choice / 2) + scroll = first_item = item_count() - max_choice; + else + scroll = first_item = choice - max_choice / 2; + choice = choice - scroll; + } + + /* Print the menu */ + for (i = 0; i < max_choice; i++) { + print_item(first_item + i, i, i == choice); + } + + wnoutrefresh(menu); + + print_arrows(dialog, item_count(), scroll, + box_y, box_x + item_x + 1, menu_height); + + print_buttons(dialog, height, width, 0); + wmove(menu, choice, item_x + 1); + wrefresh(menu); + + while (key != KEY_ESC) { + key = wgetch(menu); + + if (key < 256 && isalpha(key)) + key = tolower(key); + + if (strchr("ynmh", key)) + i = max_choice; + else { + for (i = choice + 1; i < max_choice; i++) { + item_set(scroll + i); + j = first_alpha(item_str(), "YyNnMmHh"); + if (key == tolower(item_str()[j])) + break; + } + if (i == max_choice) + for (i = 0; i < max_choice; i++) { + item_set(scroll + i); + j = first_alpha(item_str(), "YyNnMmHh"); + if (key == tolower(item_str()[j])) + break; + } + } + + if (item_count() != 0 && + (i < max_choice || + key == KEY_UP || key == KEY_DOWN || + key == '-' || key == '+' || + key == KEY_PPAGE || key == KEY_NPAGE)) { + /* Remove highligt of current item */ + print_item(scroll + choice, choice, FALSE); + + if (key == KEY_UP || key == '-') { + if (choice < 2 && scroll) { + /* Scroll menu down */ + do_scroll(menu, &scroll, -1); + + print_item(scroll, 0, FALSE); + } else + choice = MAX(choice - 1, 0); + + } else if (key == KEY_DOWN || key == '+') { + print_item(scroll+choice, choice, FALSE); + + if ((choice > max_choice - 3) && + (scroll + max_choice < item_count())) { + /* Scroll menu up */ + do_scroll(menu, &scroll, 1); + + print_item(scroll+max_choice - 1, + max_choice - 1, FALSE); + } else + choice = MIN(choice + 1, max_choice - 1); + + } else if (key == KEY_PPAGE) { + scrollok(menu, TRUE); + for (i = 0; (i < max_choice); i++) { + if (scroll > 0) { + do_scroll(menu, &scroll, -1); + print_item(scroll, 0, FALSE); + } else { + if (choice > 0) + choice--; + } + } + + } else if (key == KEY_NPAGE) { + for (i = 0; (i < max_choice); i++) { + if (scroll + max_choice < item_count()) { + do_scroll(menu, &scroll, 1); + print_item(scroll+max_choice-1, + max_choice - 1, FALSE); + } else { + if (choice + 1 < max_choice) + choice++; + } + } + } else + choice = i; + + print_item(scroll + choice, choice, TRUE); + + print_arrows(dialog, item_count(), scroll, + box_y, box_x + item_x + 1, menu_height); + + wnoutrefresh(dialog); + wrefresh(menu); + + continue; /* wait for another key press */ + } + + switch (key) { + case KEY_LEFT: + case TAB: + case KEY_RIGHT: + button = ((key == KEY_LEFT ? --button : ++button) < 0) + ? 4 : (button > 4 ? 0 : button); + + print_buttons(dialog, height, width, button); + wrefresh(menu); + break; + case ' ': + case 's': + case 'y': + case 'n': + case 'm': + case '/': + case 'h': + case '?': + case 'z': + case '\n': + /* save scroll info */ + *s_scroll = scroll; + delwin(menu); + delwin(dialog); + item_set(scroll + choice); + item_set_selected(1); + switch (key) { + case 'h': + case '?': + return 2; + case 's': + case 'y': + return 5; + case 'n': + return 6; + case 'm': + return 7; + case ' ': + return 8; + case '/': + return 9; + case 'z': + return 10; + case '\n': + return button; + } + return 0; + case 'e': + case 'x': + key = KEY_ESC; + break; + case KEY_ESC: + key = on_key_esc(menu); + break; + case KEY_RESIZE: + on_key_resize(); + delwin(menu); + delwin(dialog); + goto do_resize; + } + } + delwin(menu); + delwin(dialog); + return key; /* ESC pressed */ +} diff --git a/scripts/kconfig/lxdialog/textbox.c b/scripts/kconfig/lxdialog/textbox.c new file mode 100644 index 0000000..1773319 --- /dev/null +++ b/scripts/kconfig/lxdialog/textbox.c @@ -0,0 +1,408 @@ +/* + * textbox.c -- implements the text box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +static void back_lines(int n); +static void print_page(WINDOW *win, int height, int width, update_text_fn + update_text, void *data); +static void print_line(WINDOW *win, int row, int width); +static char *get_line(void); +static void print_position(WINDOW * win); + +static int hscroll; +static int begin_reached, end_reached, page_length; +static char *buf; +static char *page; + +/* + * refresh window content + */ +static void refresh_text_box(WINDOW *dialog, WINDOW *box, int boxh, int boxw, + int cur_y, int cur_x, update_text_fn update_text, + void *data) +{ + print_page(box, boxh, boxw, update_text, data); + print_position(dialog); + wmove(dialog, cur_y, cur_x); /* Restore cursor position */ + wrefresh(dialog); +} + + +/* + * Display text from a file in a dialog box. + * + * keys is a null-terminated array + * update_text() may not add or remove any '\n' or '\0' in tbuf + */ +int dialog_textbox(const char *title, char *tbuf, int initial_height, + int initial_width, int *keys, int *_vscroll, int *_hscroll, + update_text_fn update_text, void *data) +{ + int i, x, y, cur_x, cur_y, key = 0; + int height, width, boxh, boxw; + WINDOW *dialog, *box; + bool done = false; + + begin_reached = 1; + end_reached = 0; + page_length = 0; + hscroll = 0; + buf = tbuf; + page = buf; /* page is pointer to start of page to be displayed */ + + if (_vscroll && *_vscroll) { + begin_reached = 0; + + for (i = 0; i < *_vscroll; i++) + get_line(); + } + if (_hscroll) + hscroll = *_hscroll; + +do_resize: + getmaxyx(stdscr, height, width); + if (height < TEXTBOX_HEIGTH_MIN || width < TEXTBOX_WIDTH_MIN) + return -ERRDISPLAYTOOSMALL; + if (initial_height != 0) + height = initial_height; + else + if (height > 4) + height -= 4; + else + height = 0; + if (initial_width != 0) + width = initial_width; + else + if (width > 5) + width -= 5; + else + width = 0; + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + /* Create window for box region, used for scrolling text */ + boxh = height - 4; + boxw = width - 2; + box = subwin(dialog, boxh, boxw, y + 1, x + 1); + wattrset(box, dlg.dialog.atr); + wbkgdset(box, dlg.dialog.atr & A_COLOR); + + keypad(box, TRUE); + + /* register the new window, along with its borders */ + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + wbkgdset(dialog, dlg.dialog.atr & A_COLOR); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + print_button(dialog, gettext(" Exit "), height - 2, width / 2 - 4, TRUE); + wnoutrefresh(dialog); + getyx(dialog, cur_y, cur_x); /* Save cursor position */ + + /* Print first page of text */ + attr_clear(box, boxh, boxw, dlg.dialog.atr); + refresh_text_box(dialog, box, boxh, boxw, cur_y, cur_x, update_text, + data); + + while (!done) { + key = wgetch(dialog); + switch (key) { + case 'E': /* Exit */ + case 'e': + case 'X': + case 'x': + case 'q': + case '\n': + done = true; + break; + case 'g': /* First page */ + case KEY_HOME: + if (!begin_reached) { + begin_reached = 1; + page = buf; + refresh_text_box(dialog, box, boxh, boxw, + cur_y, cur_x, update_text, + data); + } + break; + case 'G': /* Last page */ + case KEY_END: + + end_reached = 1; + /* point to last char in buf */ + page = buf + strlen(buf); + back_lines(boxh); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'K': /* Previous line */ + case 'k': + case KEY_UP: + if (begin_reached) + break; + + back_lines(page_length + 1); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'B': /* Previous page */ + case 'b': + case 'u': + case KEY_PPAGE: + if (begin_reached) + break; + back_lines(page_length + boxh); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'J': /* Next line */ + case 'j': + case KEY_DOWN: + if (end_reached) + break; + + back_lines(page_length - 1); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case KEY_NPAGE: /* Next page */ + case ' ': + case 'd': + if (end_reached) + break; + + begin_reached = 0; + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case '0': /* Beginning of line */ + case 'H': /* Scroll left */ + case 'h': + case KEY_LEFT: + if (hscroll <= 0) + break; + + if (key == '0') + hscroll = 0; + else + hscroll--; + /* Reprint current page to scroll horizontally */ + back_lines(page_length); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'L': /* Scroll right */ + case 'l': + case KEY_RIGHT: + if (hscroll >= MAX_LEN) + break; + hscroll++; + /* Reprint current page to scroll horizontally */ + back_lines(page_length); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case KEY_ESC: + if (on_key_esc(dialog) == KEY_ESC) + done = true; + break; + case KEY_RESIZE: + back_lines(height); + delwin(box); + delwin(dialog); + on_key_resize(); + goto do_resize; + default: + for (i = 0; keys[i]; i++) { + if (key == keys[i]) { + done = true; + break; + } + } + } + } + delwin(box); + delwin(dialog); + if (_vscroll) { + const char *s; + + s = buf; + *_vscroll = 0; + back_lines(page_length); + while (s < page && (s = strchr(s, '\n'))) { + (*_vscroll)++; + s++; + } + } + if (_hscroll) + *_hscroll = hscroll; + return key; +} + +/* + * Go back 'n' lines in text. Called by dialog_textbox(). + * 'page' will be updated to point to the desired line in 'buf'. + */ +static void back_lines(int n) +{ + int i; + + begin_reached = 0; + /* Go back 'n' lines */ + for (i = 0; i < n; i++) { + if (*page == '\0') { + if (end_reached) { + end_reached = 0; + continue; + } + } + if (page == buf) { + begin_reached = 1; + return; + } + page--; + do { + if (page == buf) { + begin_reached = 1; + return; + } + page--; + } while (*page != '\n'); + page++; + } +} + +/* + * Print a new page of text. + */ +static void print_page(WINDOW *win, int height, int width, update_text_fn + update_text, void *data) +{ + int i, passed_end = 0; + + if (update_text) { + char *end; + + for (i = 0; i < height; i++) + get_line(); + end = page; + back_lines(height); + update_text(buf, page - buf, end - buf, data); + } + + page_length = 0; + for (i = 0; i < height; i++) { + print_line(win, i, width); + if (!passed_end) + page_length++; + if (end_reached && !passed_end) + passed_end = 1; + } + wnoutrefresh(win); +} + +/* + * Print a new line of text. + */ +static void print_line(WINDOW * win, int row, int width) +{ + char *line; + + line = get_line(); + line += MIN(strlen(line), hscroll); /* Scroll horizontally */ + wmove(win, row, 0); /* move cursor to correct line */ + waddch(win, ' '); + waddnstr(win, line, MIN(strlen(line), width - 2)); + + /* Clear 'residue' of previous line */ +#if OLD_NCURSES + { + int x = getcurx(win); + int i; + for (i = 0; i < width - x; i++) + waddch(win, ' '); + } +#else + wclrtoeol(win); +#endif +} + +/* + * Return current line of text. Called by dialog_textbox() and print_line(). + * 'page' should point to start of current line before calling, and will be + * updated to point to start of next line. + */ +static char *get_line(void) +{ + int i = 0; + static char line[MAX_LEN + 1]; + + end_reached = 0; + while (*page != '\n') { + if (*page == '\0') { + end_reached = 1; + break; + } else if (i < MAX_LEN) + line[i++] = *(page++); + else { + /* Truncate lines longer than MAX_LEN characters */ + if (i == MAX_LEN) + line[i++] = '\0'; + page++; + } + } + if (i <= MAX_LEN) + line[i] = '\0'; + if (!end_reached) + page++; /* move past '\n' */ + + return line; +} + +/* + * Print current position + */ +static void print_position(WINDOW * win) +{ + int percent; + + wattrset(win, dlg.position_indicator.atr); + wbkgdset(win, dlg.position_indicator.atr & A_COLOR); + percent = (page - buf) * 100 / strlen(buf); + wmove(win, getmaxy(win) - 3, getmaxx(win) - 9); + wprintw(win, "(%3d%%)", percent); +} diff --git a/scripts/kconfig/lxdialog/util.c b/scripts/kconfig/lxdialog/util.c new file mode 100644 index 0000000..f7abdeb --- /dev/null +++ b/scripts/kconfig/lxdialog/util.c @@ -0,0 +1,713 @@ +/* + * util.c + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <stdarg.h> + +#include "dialog.h" + +/* Needed in signal handler in mconf.c */ +int saved_x, saved_y; + +struct dialog_info dlg; + +static void set_mono_theme(void) +{ + dlg.screen.atr = A_NORMAL; + dlg.shadow.atr = A_NORMAL; + dlg.dialog.atr = A_NORMAL; + dlg.title.atr = A_BOLD; + dlg.border.atr = A_NORMAL; + dlg.button_active.atr = A_REVERSE; + dlg.button_inactive.atr = A_DIM; + dlg.button_key_active.atr = A_REVERSE; + dlg.button_key_inactive.atr = A_BOLD; + dlg.button_label_active.atr = A_REVERSE; + dlg.button_label_inactive.atr = A_NORMAL; + dlg.inputbox.atr = A_NORMAL; + dlg.inputbox_border.atr = A_NORMAL; + dlg.searchbox.atr = A_NORMAL; + dlg.searchbox_title.atr = A_BOLD; + dlg.searchbox_border.atr = A_NORMAL; + dlg.position_indicator.atr = A_BOLD; + dlg.menubox.atr = A_NORMAL; + dlg.menubox_border.atr = A_NORMAL; + dlg.item.atr = A_NORMAL; + dlg.item_selected.atr = A_REVERSE; + dlg.tag.atr = A_BOLD; + dlg.tag_selected.atr = A_REVERSE; + dlg.tag_key.atr = A_BOLD; + dlg.tag_key_selected.atr = A_REVERSE; + dlg.check.atr = A_BOLD; + dlg.check_selected.atr = A_REVERSE; + dlg.uarrow.atr = A_BOLD; + dlg.darrow.atr = A_BOLD; +} + +#define DLG_COLOR(dialog, f, b, h) \ +do { \ + dlg.dialog.fg = (f); \ + dlg.dialog.bg = (b); \ + dlg.dialog.hl = (h); \ +} while (0) + +static void set_classic_theme(void) +{ + DLG_COLOR(screen, COLOR_CYAN, COLOR_BLUE, true); + DLG_COLOR(shadow, COLOR_BLACK, COLOR_BLACK, true); + DLG_COLOR(dialog, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(title, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(border, COLOR_WHITE, COLOR_WHITE, true); + DLG_COLOR(button_active, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(button_inactive, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(button_key_active, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(button_key_inactive, COLOR_RED, COLOR_WHITE, false); + DLG_COLOR(button_label_active, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(button_label_inactive, COLOR_BLACK, COLOR_WHITE, true); + DLG_COLOR(inputbox, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(inputbox_border, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(searchbox, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(searchbox_title, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(searchbox_border, COLOR_WHITE, COLOR_WHITE, true); + DLG_COLOR(position_indicator, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(menubox, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(menubox_border, COLOR_WHITE, COLOR_WHITE, true); + DLG_COLOR(item, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(item_selected, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(tag, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(tag_selected, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(tag_key, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(tag_key_selected, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(check, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(check_selected, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(uarrow, COLOR_GREEN, COLOR_WHITE, true); + DLG_COLOR(darrow, COLOR_GREEN, COLOR_WHITE, true); +} + +static void set_blackbg_theme(void) +{ + DLG_COLOR(screen, COLOR_RED, COLOR_BLACK, true); + DLG_COLOR(shadow, COLOR_BLACK, COLOR_BLACK, false); + DLG_COLOR(dialog, COLOR_WHITE, COLOR_BLACK, false); + DLG_COLOR(title, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(border, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(button_active, COLOR_YELLOW, COLOR_RED, false); + DLG_COLOR(button_inactive, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(button_key_active, COLOR_YELLOW, COLOR_RED, true); + DLG_COLOR(button_key_inactive, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(button_label_active, COLOR_WHITE, COLOR_RED, false); + DLG_COLOR(button_label_inactive, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(inputbox, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(inputbox_border, COLOR_YELLOW, COLOR_BLACK, false); + + DLG_COLOR(searchbox, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(searchbox_title, COLOR_YELLOW, COLOR_BLACK, true); + DLG_COLOR(searchbox_border, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(position_indicator, COLOR_RED, COLOR_BLACK, false); + + DLG_COLOR(menubox, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(menubox_border, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(item, COLOR_WHITE, COLOR_BLACK, false); + DLG_COLOR(item_selected, COLOR_WHITE, COLOR_RED, false); + + DLG_COLOR(tag, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(tag_selected, COLOR_YELLOW, COLOR_RED, true); + DLG_COLOR(tag_key, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(tag_key_selected, COLOR_YELLOW, COLOR_RED, true); + + DLG_COLOR(check, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(check_selected, COLOR_YELLOW, COLOR_RED, true); + + DLG_COLOR(uarrow, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(darrow, COLOR_RED, COLOR_BLACK, false); +} + +static void set_bluetitle_theme(void) +{ + set_classic_theme(); + DLG_COLOR(title, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(button_key_active, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(button_label_active, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(searchbox_title, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(position_indicator, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(tag, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(tag_key, COLOR_BLUE, COLOR_WHITE, true); + +} + +/* + * Select color theme + */ +static int set_theme(const char *theme) +{ + int use_color = 1; + if (!theme) + set_bluetitle_theme(); + else if (strcmp(theme, "classic") == 0) + set_classic_theme(); + else if (strcmp(theme, "bluetitle") == 0) + set_bluetitle_theme(); + else if (strcmp(theme, "blackbg") == 0) + set_blackbg_theme(); + else if (strcmp(theme, "mono") == 0) + use_color = 0; + + return use_color; +} + +static void init_one_color(struct dialog_color *color) +{ + static int pair = 0; + + pair++; + init_pair(pair, color->fg, color->bg); + if (color->hl) + color->atr = A_BOLD | COLOR_PAIR(pair); + else + color->atr = COLOR_PAIR(pair); +} + +static void init_dialog_colors(void) +{ + init_one_color(&dlg.screen); + init_one_color(&dlg.shadow); + init_one_color(&dlg.dialog); + init_one_color(&dlg.title); + init_one_color(&dlg.border); + init_one_color(&dlg.button_active); + init_one_color(&dlg.button_inactive); + init_one_color(&dlg.button_key_active); + init_one_color(&dlg.button_key_inactive); + init_one_color(&dlg.button_label_active); + init_one_color(&dlg.button_label_inactive); + init_one_color(&dlg.inputbox); + init_one_color(&dlg.inputbox_border); + init_one_color(&dlg.searchbox); + init_one_color(&dlg.searchbox_title); + init_one_color(&dlg.searchbox_border); + init_one_color(&dlg.position_indicator); + init_one_color(&dlg.menubox); + init_one_color(&dlg.menubox_border); + init_one_color(&dlg.item); + init_one_color(&dlg.item_selected); + init_one_color(&dlg.tag); + init_one_color(&dlg.tag_selected); + init_one_color(&dlg.tag_key); + init_one_color(&dlg.tag_key_selected); + init_one_color(&dlg.check); + init_one_color(&dlg.check_selected); + init_one_color(&dlg.uarrow); + init_one_color(&dlg.darrow); +} + +/* + * Setup for color display + */ +static void color_setup(const char *theme) +{ + int use_color; + + use_color = set_theme(theme); + if (use_color && has_colors()) { + start_color(); + init_dialog_colors(); + } else + set_mono_theme(); +} + +/* + * Set window to attribute 'attr' + */ +void attr_clear(WINDOW * win, int height, int width, chtype attr) +{ + int i, j; + + wattrset(win, attr); + for (i = 0; i < height; i++) { + wmove(win, i, 0); + for (j = 0; j < width; j++) + waddch(win, ' '); + } + touchwin(win); +} + +void dialog_clear(void) +{ + int lines, columns; + + lines = getmaxy(stdscr); + columns = getmaxx(stdscr); + + attr_clear(stdscr, lines, columns, dlg.screen.atr); + /* Display background title if it exists ... - SLH */ + if (dlg.backtitle != NULL) { + int i, len = 0, skip = 0; + struct subtitle_list *pos; + + wattrset(stdscr, dlg.screen.atr); + mvwaddstr(stdscr, 0, 1, (char *)dlg.backtitle); + + for (pos = dlg.subtitles; pos != NULL; pos = pos->next) { + /* 3 is for the arrow and spaces */ + len += strlen(pos->text) + 3; + } + + wmove(stdscr, 1, 1); + if (len > columns - 2) { + const char *ellipsis = "[...] "; + waddstr(stdscr, ellipsis); + skip = len - (columns - 2 - strlen(ellipsis)); + } + + for (pos = dlg.subtitles; pos != NULL; pos = pos->next) { + if (skip == 0) + waddch(stdscr, ACS_RARROW); + else + skip--; + + if (skip == 0) + waddch(stdscr, ' '); + else + skip--; + + if (skip < strlen(pos->text)) { + waddstr(stdscr, pos->text + skip); + skip = 0; + } else + skip -= strlen(pos->text); + + if (skip == 0) + waddch(stdscr, ' '); + else + skip--; + } + + for (i = len + 1; i < columns - 1; i++) + waddch(stdscr, ACS_HLINE); + } + wnoutrefresh(stdscr); +} + +/* + * Do some initialization for dialog + */ +int init_dialog(const char *backtitle) +{ + int height, width; + + initscr(); /* Init curses */ + + /* Get current cursor position for signal handler in mconf.c */ + getyx(stdscr, saved_y, saved_x); + + getmaxyx(stdscr, height, width); + if (height < WINDOW_HEIGTH_MIN || width < WINDOW_WIDTH_MIN) { + endwin(); + return -ERRDISPLAYTOOSMALL; + } + + dlg.backtitle = backtitle; + color_setup(getenv("MENUCONFIG_COLOR")); + + keypad(stdscr, TRUE); + cbreak(); + noecho(); + dialog_clear(); + + return 0; +} + +void set_dialog_backtitle(const char *backtitle) +{ + dlg.backtitle = backtitle; +} + +void set_dialog_subtitles(struct subtitle_list *subtitles) +{ + dlg.subtitles = subtitles; +} + +/* + * End using dialog functions. + */ +void end_dialog(int x, int y) +{ + /* move cursor back to original position */ + move(y, x); + refresh(); + endwin(); +} + +/* Print the title of the dialog. Center the title and truncate + * tile if wider than dialog (- 2 chars). + **/ +void print_title(WINDOW *dialog, const char *title, int width) +{ + if (title) { + int tlen = MIN(width - 2, strlen(title)); + wattrset(dialog, dlg.title.atr); + mvwaddch(dialog, 0, (width - tlen) / 2 - 1, ' '); + mvwaddnstr(dialog, 0, (width - tlen)/2, title, tlen); + waddch(dialog, ' '); + } +} + +/* + * Print a string of text in a window, automatically wrap around to the + * next line if the string is too long to fit on one line. Newline + * characters '\n' are propperly processed. We start on a new line + * if there is no room for at least 4 nonblanks following a double-space. + */ +void print_autowrap(WINDOW * win, const char *prompt, int width, int y, int x) +{ + int newl, cur_x, cur_y; + int prompt_len, room, wlen; + char tempstr[MAX_LEN + 1], *word, *sp, *sp2, *newline_separator = 0; + + strcpy(tempstr, prompt); + + prompt_len = strlen(tempstr); + + if (prompt_len <= width - x * 2) { /* If prompt is short */ + wmove(win, y, (width - prompt_len) / 2); + waddstr(win, tempstr); + } else { + cur_x = x; + cur_y = y; + newl = 1; + word = tempstr; + while (word && *word) { + sp = strpbrk(word, "\n "); + if (sp && *sp == '\n') + newline_separator = sp; + + if (sp) + *sp++ = 0; + + /* Wrap to next line if either the word does not fit, + or it is the first word of a new sentence, and it is + short, and the next word does not fit. */ + room = width - cur_x; + wlen = strlen(word); + if (wlen > room || + (newl && wlen < 4 && sp + && wlen + 1 + strlen(sp) > room + && (!(sp2 = strpbrk(sp, "\n ")) + || wlen + 1 + (sp2 - sp) > room))) { + cur_y++; + cur_x = x; + } + wmove(win, cur_y, cur_x); + waddstr(win, word); + getyx(win, cur_y, cur_x); + + /* Move to the next line if the word separator was a newline */ + if (newline_separator) { + cur_y++; + cur_x = x; + newline_separator = 0; + } else + cur_x++; + + if (sp && *sp == ' ') { + cur_x++; /* double space */ + while (*++sp == ' ') ; + newl = 1; + } else + newl = 0; + word = sp; + } + } +} + +/* + * Print a button + */ +void print_button(WINDOW * win, const char *label, int y, int x, int selected) +{ + int i, temp; + + wmove(win, y, x); + wattrset(win, selected ? dlg.button_active.atr + : dlg.button_inactive.atr); + waddstr(win, "<"); + temp = strspn(label, " "); + label += temp; + wattrset(win, selected ? dlg.button_label_active.atr + : dlg.button_label_inactive.atr); + for (i = 0; i < temp; i++) + waddch(win, ' '); + wattrset(win, selected ? dlg.button_key_active.atr + : dlg.button_key_inactive.atr); + waddch(win, label[0]); + wattrset(win, selected ? dlg.button_label_active.atr + : dlg.button_label_inactive.atr); + waddstr(win, (char *)label + 1); + wattrset(win, selected ? dlg.button_active.atr + : dlg.button_inactive.atr); + waddstr(win, ">"); + wmove(win, y, x + temp + 1); +} + +/* + * Draw a rectangular box with line drawing characters + */ +void +draw_box(WINDOW * win, int y, int x, int height, int width, + chtype box, chtype border) +{ + int i, j; + + wattrset(win, 0); + for (i = 0; i < height; i++) { + wmove(win, y + i, x); + for (j = 0; j < width; j++) + if (!i && !j) + waddch(win, border | ACS_ULCORNER); + else if (i == height - 1 && !j) + waddch(win, border | ACS_LLCORNER); + else if (!i && j == width - 1) + waddch(win, box | ACS_URCORNER); + else if (i == height - 1 && j == width - 1) + waddch(win, box | ACS_LRCORNER); + else if (!i) + waddch(win, border | ACS_HLINE); + else if (i == height - 1) + waddch(win, box | ACS_HLINE); + else if (!j) + waddch(win, border | ACS_VLINE); + else if (j == width - 1) + waddch(win, box | ACS_VLINE); + else + waddch(win, box | ' '); + } +} + +/* + * Draw shadows along the right and bottom edge to give a more 3D look + * to the boxes + */ +void draw_shadow(WINDOW * win, int y, int x, int height, int width) +{ + int i; + + if (has_colors()) { /* Whether terminal supports color? */ + wattrset(win, dlg.shadow.atr); + wmove(win, y + height, x + 2); + for (i = 0; i < width; i++) + waddch(win, winch(win) & A_CHARTEXT); + for (i = y + 1; i < y + height + 1; i++) { + wmove(win, i, x + width); + waddch(win, winch(win) & A_CHARTEXT); + waddch(win, winch(win) & A_CHARTEXT); + } + wnoutrefresh(win); + } +} + +/* + * Return the position of the first alphabetic character in a string. + */ +int first_alpha(const char *string, const char *exempt) +{ + int i, in_paren = 0, c; + + for (i = 0; i < strlen(string); i++) { + c = tolower(string[i]); + + if (strchr("<[(", c)) + ++in_paren; + if (strchr(">])", c) && in_paren > 0) + --in_paren; + + if ((!in_paren) && isalpha(c) && strchr(exempt, c) == 0) + return i; + } + + return 0; +} + +/* + * ncurses uses ESC to detect escaped char sequences. This resutl in + * a small timeout before ESC is actually delivered to the application. + * lxdialog suggest <ESC> <ESC> which is correctly translated to two + * times esc. But then we need to ignore the second esc to avoid stepping + * out one menu too much. Filter away all escaped key sequences since + * keypad(FALSE) turn off ncurses support for escape sequences - and thats + * needed to make notimeout() do as expected. + */ +int on_key_esc(WINDOW *win) +{ + int key; + int key2; + int key3; + + nodelay(win, TRUE); + keypad(win, FALSE); + key = wgetch(win); + key2 = wgetch(win); + do { + key3 = wgetch(win); + } while (key3 != ERR); + nodelay(win, FALSE); + keypad(win, TRUE); + if (key == KEY_ESC && key2 == ERR) + return KEY_ESC; + else if (key != ERR && key != KEY_ESC && key2 == ERR) + ungetch(key); + + return -1; +} + +/* redraw screen in new size */ +int on_key_resize(void) +{ + dialog_clear(); + return KEY_RESIZE; +} + +struct dialog_list *item_cur; +struct dialog_list item_nil; +struct dialog_list *item_head; + +void item_reset(void) +{ + struct dialog_list *p, *next; + + for (p = item_head; p; p = next) { + next = p->next; + free(p); + } + item_head = NULL; + item_cur = &item_nil; +} + +void item_make(const char *fmt, ...) +{ + va_list ap; + struct dialog_list *p = malloc(sizeof(*p)); + + if (item_head) + item_cur->next = p; + else + item_head = p; + item_cur = p; + memset(p, 0, sizeof(*p)); + + va_start(ap, fmt); + vsnprintf(item_cur->node.str, sizeof(item_cur->node.str), fmt, ap); + va_end(ap); +} + +void item_add_str(const char *fmt, ...) +{ + va_list ap; + size_t avail; + + avail = sizeof(item_cur->node.str) - strlen(item_cur->node.str); + + va_start(ap, fmt); + vsnprintf(item_cur->node.str + strlen(item_cur->node.str), + avail, fmt, ap); + item_cur->node.str[sizeof(item_cur->node.str) - 1] = '\0'; + va_end(ap); +} + +void item_set_tag(char tag) +{ + item_cur->node.tag = tag; +} +void item_set_data(void *ptr) +{ + item_cur->node.data = ptr; +} + +void item_set_selected(int val) +{ + item_cur->node.selected = val; +} + +int item_activate_selected(void) +{ + item_foreach() + if (item_is_selected()) + return 1; + return 0; +} + +void *item_data(void) +{ + return item_cur->node.data; +} + +char item_tag(void) +{ + return item_cur->node.tag; +} + +int item_count(void) +{ + int n = 0; + struct dialog_list *p; + + for (p = item_head; p; p = p->next) + n++; + return n; +} + +void item_set(int n) +{ + int i = 0; + item_foreach() + if (i++ == n) + return; +} + +int item_n(void) +{ + int n = 0; + struct dialog_list *p; + + for (p = item_head; p; p = p->next) { + if (p == item_cur) + return n; + n++; + } + return 0; +} + +const char *item_str(void) +{ + return item_cur->node.str; +} + +int item_is_selected(void) +{ + return (item_cur->node.selected != 0); +} + +int item_is_tag(char tag) +{ + return (item_cur->node.tag == tag); +} diff --git a/scripts/kconfig/lxdialog/yesno.c b/scripts/kconfig/lxdialog/yesno.c new file mode 100644 index 0000000..676fb2f --- /dev/null +++ b/scripts/kconfig/lxdialog/yesno.c @@ -0,0 +1,114 @@ +/* + * yesno.c -- implements the yes/no box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +/* + * Display termination buttons + */ +static void print_buttons(WINDOW * dialog, int height, int width, int selected) +{ + int x = width / 2 - 10; + int y = height - 2; + + print_button(dialog, gettext(" Yes "), y, x, selected == 0); + print_button(dialog, gettext(" No "), y, x + 13, selected == 1); + + wmove(dialog, y, x + 1 + 13 * selected); + wrefresh(dialog); +} + +/* + * Display a dialog box with two buttons - Yes and No + */ +int dialog_yesno(const char *title, const char *prompt, int height, int width) +{ + int i, x, y, key = 0, button = 0; + WINDOW *dialog; + +do_resize: + if (getmaxy(stdscr) < (height + YESNO_HEIGTH_MIN)) + return -ERRDISPLAYTOOSMALL; + if (getmaxx(stdscr) < (width + YESNO_WIDTH_MIN)) + return -ERRDISPLAYTOOSMALL; + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + print_buttons(dialog, height, width, 0); + + while (key != KEY_ESC) { + key = wgetch(dialog); + switch (key) { + case 'Y': + case 'y': + delwin(dialog); + return 0; + case 'N': + case 'n': + delwin(dialog); + return 1; + + case TAB: + case KEY_LEFT: + case KEY_RIGHT: + button = ((key == KEY_LEFT ? --button : ++button) < 0) ? 1 : (button > 1 ? 0 : button); + + print_buttons(dialog, height, width, button); + wrefresh(dialog); + break; + case ' ': + case '\n': + delwin(dialog); + return button; + case KEY_ESC: + key = on_key_esc(dialog); + break; + case KEY_RESIZE: + delwin(dialog); + on_key_resize(); + goto do_resize; + } + } + + delwin(dialog); + return key; /* ESC pressed */ +} diff --git a/scripts/kconfig/mconf.c b/scripts/kconfig/mconf.c new file mode 100644 index 0000000..14cea74 --- /dev/null +++ b/scripts/kconfig/mconf.c @@ -0,0 +1,1036 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + * + * Introduced single menu mode (show all sub-menus in one large tree). + * 2002-11-06 Petr Baudis <pasky@ucw.cz> + * + * i18n, 2005, Arnaldo Carvalho de Melo <acme@conectiva.com.br> + */ + +#include <ctype.h> +#include <errno.h> +#include <fcntl.h> +#include <limits.h> +#include <stdarg.h> +#include <stdlib.h> +#include <string.h> +#include <signal.h> +#include <unistd.h> +#include <locale.h> + +#include "lkc.h" +#include "lxdialog/dialog.h" + +static const char mconf_readme[] = N_( +"Overview\n" +"--------\n" +"This interface lets you select features and parameters for the build.\n" +"Features can either be built-in, modularized, or ignored. Parameters\n" +"must be entered in as decimal or hexadecimal numbers or text.\n" +"\n" +"Menu items beginning with following braces represent features that\n" +" [ ] can be built in or removed\n" +" < > can be built in, modularized or removed\n" +" { } can be built in or modularized (selected by other feature)\n" +" - - are selected by other feature,\n" +"while *, M or whitespace inside braces means to build in, build as\n" +"a module or to exclude the feature respectively.\n" +"\n" +"To change any of these features, highlight it with the cursor\n" +"keys and press <Y> to build it in, <M> to make it a module or\n" +"<N> to remove it. You may also press the <Space Bar> to cycle\n" +"through the available options (i.e. Y->N->M->Y).\n" +"\n" +"Some additional keyboard hints:\n" +"\n" +"Menus\n" +"----------\n" +"o Use the Up/Down arrow keys (cursor keys) to highlight the item you\n" +" wish to change or the submenu you wish to select and press <Enter>.\n" +" Submenus are designated by \"--->\", empty ones by \"----\".\n" +"\n" +" Shortcut: Press the option's highlighted letter (hotkey).\n" +" Pressing a hotkey more than once will sequence\n" +" through all visible items which use that hotkey.\n" +"\n" +" You may also use the <PAGE UP> and <PAGE DOWN> keys to scroll\n" +" unseen options into view.\n" +"\n" +"o To exit a menu use the cursor keys to highlight the <Exit> button\n" +" and press <ENTER>.\n" +"\n" +" Shortcut: Press <ESC><ESC> or <E> or <X> if there is no hotkey\n" +" using those letters. You may press a single <ESC>, but\n" +" there is a delayed response which you may find annoying.\n" +"\n" +" Also, the <TAB> and cursor keys will cycle between <Select>,\n" +" <Exit>, <Help>, <Save>, and <Load>.\n" +"\n" +"o To get help with an item, use the cursor keys to highlight <Help>\n" +" and press <ENTER>.\n" +"\n" +" Shortcut: Press <H> or <?>.\n" +"\n" +"o To toggle the display of hidden options, press <Z>.\n" +"\n" +"\n" +"Radiolists (Choice lists)\n" +"-----------\n" +"o Use the cursor keys to select the option you wish to set and press\n" +" <S> or the <SPACE BAR>.\n" +"\n" +" Shortcut: Press the first letter of the option you wish to set then\n" +" press <S> or <SPACE BAR>.\n" +"\n" +"o To see available help for the item, use the cursor keys to highlight\n" +" <Help> and Press <ENTER>.\n" +"\n" +" Shortcut: Press <H> or <?>.\n" +"\n" +" Also, the <TAB> and cursor keys will cycle between <Select> and\n" +" <Help>\n" +"\n" +"\n" +"Data Entry\n" +"-----------\n" +"o Enter the requested information and press <ENTER>\n" +" If you are entering hexadecimal values, it is not necessary to\n" +" add the '0x' prefix to the entry.\n" +"\n" +"o For help, use the <TAB> or cursor keys to highlight the help option\n" +" and press <ENTER>. You can try <TAB><H> as well.\n" +"\n" +"\n" +"Text Box (Help Window)\n" +"--------\n" +"o Use the cursor keys to scroll up/down/left/right. The VI editor\n" +" keys h,j,k,l function here as do <u>, <d>, <SPACE BAR> and <B> for\n" +" those who are familiar with less and lynx.\n" +"\n" +"o Press <E>, <X>, <q>, <Enter> or <Esc><Esc> to exit.\n" +"\n" +"\n" +"Alternate Configuration Files\n" +"-----------------------------\n" +"Menuconfig supports the use of alternate configuration files for\n" +"those who, for various reasons, find it necessary to switch\n" +"between different configurations.\n" +"\n" +"The <Save> button will let you save the current configuration to\n" +"a file of your choosing. Use the <Load> button to load a previously\n" +"saved alternate configuration.\n" +"\n" +"Even if you don't use alternate configuration files, but you find\n" +"during a Menuconfig session that you have completely messed up your\n" +"settings, you may use the <Load> button to restore your previously\n" +"saved settings from \".config\" without restarting Menuconfig.\n" +"\n" +"Other information\n" +"-----------------\n" +"If you use Menuconfig in an XTERM window, make sure you have your\n" +"$TERM variable set to point to an xterm definition which supports\n" +"color. Otherwise, Menuconfig will look rather bad. Menuconfig will\n" +"not display correctly in an RXVT window because rxvt displays only one\n" +"intensity of color, bright.\n" +"\n" +"Menuconfig will display larger menus on screens or xterms which are\n" +"set to display more than the standard 25 row by 80 column geometry.\n" +"In order for this to work, the \"stty size\" command must be able to\n" +"display the screen's current row and column geometry. I STRONGLY\n" +"RECOMMEND that you make sure you do NOT have the shell variables\n" +"LINES and COLUMNS exported into your environment. Some distributions\n" +"export those variables via /etc/profile. Some ncurses programs can\n" +"become confused when those variables (LINES & COLUMNS) don't reflect\n" +"the true screen size.\n" +"\n" +"Optional personality available\n" +"------------------------------\n" +"If you prefer to have all of the options listed in a single menu,\n" +"rather than the default multimenu hierarchy, run the menuconfig with\n" +"MENUCONFIG_MODE environment variable set to single_menu. Example:\n" +"\n" +"make MENUCONFIG_MODE=single_menu menuconfig\n" +"\n" +"<Enter> will then unroll the appropriate category, or enfold it if it\n" +"is already unrolled.\n" +"\n" +"Note that this mode can eventually be a little more CPU expensive\n" +"(especially with a larger number of unrolled categories) than the\n" +"default mode.\n" +"\n" +"Different color themes available\n" +"--------------------------------\n" +"It is possible to select different color themes using the variable\n" +"MENUCONFIG_COLOR. To select a theme use:\n" +"\n" +"make MENUCONFIG_COLOR=<theme> menuconfig\n" +"\n" +"Available themes are\n" +" mono => selects colors suitable for monochrome displays\n" +" blackbg => selects a color scheme with black background\n" +" classic => theme with blue background. The classic look\n" +" bluetitle => an LCD friendly version of classic. (default)\n" +"\n"), +menu_instructions[] = N_( + "Arrow keys navigate the menu. " + "<Enter> selects submenus ---> (or empty submenus ----). " + "Highlighted letters are hotkeys. " + "Pressing <Y> includes, <N> excludes, <M> modularizes features. " + "Press <Esc><Esc> to exit, <?> for Help, </> for Search. " + "Legend: [*] built-in [ ] excluded <M> module < > module capable"), +radiolist_instructions[] = N_( + "Use the arrow keys to navigate this window or " + "press the hotkey of the item you wish to select " + "followed by the <SPACE BAR>. " + "Press <?> for additional information about this option."), +inputbox_instructions_int[] = N_( + "Please enter a decimal value. " + "Fractions will not be accepted. " + "Use the <TAB> key to move from the input field to the buttons below it."), +inputbox_instructions_hex[] = N_( + "Please enter a hexadecimal value. " + "Use the <TAB> key to move from the input field to the buttons below it."), +inputbox_instructions_string[] = N_( + "Please enter a string value. " + "Use the <TAB> key to move from the input field to the buttons below it."), +setmod_text[] = N_( + "This feature depends on another which has been configured as a module.\n" + "As a result, this feature will be built as a module."), +load_config_text[] = N_( + "Enter the name of the configuration file you wish to load. " + "Accept the name shown to restore the configuration you " + "last retrieved. Leave blank to abort."), +load_config_help[] = N_( + "\n" + "For various reasons, one may wish to keep several different\n" + "configurations available on a single machine.\n" + "\n" + "If you have saved a previous configuration in a file other than the\n" + "default one, entering its name here will allow you to modify that\n" + "configuration.\n" + "\n" + "If you are uncertain, then you have probably never used alternate\n" + "configuration files. You should therefore leave this blank to abort.\n"), +save_config_text[] = N_( + "Enter a filename to which this configuration should be saved " + "as an alternate. Leave blank to abort."), +save_config_help[] = N_( + "\n" + "For various reasons, one may wish to keep different configurations\n" + "available on a single machine.\n" + "\n" + "Entering a file name here will allow you to later retrieve, modify\n" + "and use the current configuration as an alternate to whatever\n" + "configuration options you have selected at that time.\n" + "\n" + "If you are uncertain what all this means then you should probably\n" + "leave this blank.\n"), +search_help[] = N_( + "\n" + "Search for symbols and display their relations.\n" + "Regular expressions are allowed.\n" + "Example: search for \"^FOO\"\n" + "Result:\n" + "-----------------------------------------------------------------\n" + "Symbol: FOO [=m]\n" + "Type : tristate\n" + "Prompt: Foo bus is used to drive the bar HW\n" + " Location:\n" + " -> Bus options (PCI, PCMCIA, EISA, ISA)\n" + " -> PCI support (PCI [=y])\n" + "(1) -> PCI access mode (<choice> [=y])\n" + " Defined at drivers/pci/Kconfig:47\n" + " Depends on: X86_LOCAL_APIC && X86_IO_APIC || IA64\n" + " Selects: LIBCRC32\n" + " Selected by: BAR [=n]\n" + "-----------------------------------------------------------------\n" + "o The line 'Type:' shows the type of the configuration option for\n" + " this symbol (boolean, tristate, string, ...)\n" + "o The line 'Prompt:' shows the text used in the menu structure for\n" + " this symbol\n" + "o The 'Defined at' line tells at what file / line number the symbol\n" + " is defined\n" + "o The 'Depends on:' line tells what symbols need to be defined for\n" + " this symbol to be visible in the menu (selectable)\n" + "o The 'Location:' lines tells where in the menu structure this symbol\n" + " is located\n" + " A location followed by a [=y] indicates that this is a\n" + " selectable menu item - and the current value is displayed inside\n" + " brackets.\n" + " Press the key in the (#) prefix to jump directly to that\n" + " location. You will be returned to the current search results\n" + " after exiting this new menu.\n" + "o The 'Selects:' line tells what symbols will be automatically\n" + " selected if this symbol is selected (y or m)\n" + "o The 'Selected by' line tells what symbol has selected this symbol\n" + "\n" + "Only relevant lines are shown.\n" + "\n\n" + "Search examples:\n" + "Examples: USB => find all symbols containing USB\n" + " ^USB => find all symbols starting with USB\n" + " USB$ => find all symbols ending with USB\n" + "\n"); + +static int indent; +static struct menu *current_menu; +static int child_count; +static int single_menu_mode; +static int show_all_options; +static int save_and_exit; + +static void conf(struct menu *menu, struct menu *active_menu); +static void conf_choice(struct menu *menu); +static void conf_string(struct menu *menu); +static void conf_load(void); +static void conf_save(void); +static int show_textbox_ext(const char *title, char *text, int r, int c, + int *keys, int *vscroll, int *hscroll, + update_text_fn update_text, void *data); +static void show_textbox(const char *title, const char *text, int r, int c); +static void show_helptext(const char *title, const char *text); +static void show_help(struct menu *menu); + +static char filename[PATH_MAX+1]; +static void set_config_filename(const char *config_filename) +{ + static char menu_backtitle[PATH_MAX+128]; + int size; + + size = snprintf(menu_backtitle, sizeof(menu_backtitle), + "%s - %s", config_filename, rootmenu.prompt->text); + if (size >= sizeof(menu_backtitle)) + menu_backtitle[sizeof(menu_backtitle)-1] = '\0'; + set_dialog_backtitle(menu_backtitle); + + size = snprintf(filename, sizeof(filename), "%s", config_filename); + if (size >= sizeof(filename)) + filename[sizeof(filename)-1] = '\0'; +} + +struct subtitle_part { + struct list_head entries; + const char *text; +}; +static LIST_HEAD(trail); + +static struct subtitle_list *subtitles; +static void set_subtitle(void) +{ + struct subtitle_part *sp; + struct subtitle_list *pos, *tmp; + + for (pos = subtitles; pos != NULL; pos = tmp) { + tmp = pos->next; + free(pos); + } + + subtitles = NULL; + list_for_each_entry(sp, &trail, entries) { + if (sp->text) { + if (pos) { + pos->next = xcalloc(sizeof(*pos), 1); + pos = pos->next; + } else { + subtitles = pos = xcalloc(sizeof(*pos), 1); + } + pos->text = sp->text; + } + } + + set_dialog_subtitles(subtitles); +} + +static void reset_subtitle(void) +{ + struct subtitle_list *pos, *tmp; + + for (pos = subtitles; pos != NULL; pos = tmp) { + tmp = pos->next; + free(pos); + } + subtitles = NULL; + set_dialog_subtitles(subtitles); +} + +struct search_data { + struct list_head *head; + struct menu **targets; + int *keys; +}; + +static void update_text(char *buf, size_t start, size_t end, void *_data) +{ + struct search_data *data = _data; + struct jump_key *pos; + int k = 0; + + list_for_each_entry(pos, data->head, entries) { + if (pos->offset >= start && pos->offset < end) { + char header[4]; + + if (k < JUMP_NB) { + int key = '0' + (pos->index % JUMP_NB) + 1; + + sprintf(header, "(%c)", key); + data->keys[k] = key; + data->targets[k] = pos->target; + k++; + } else { + sprintf(header, " "); + } + + memcpy(buf + pos->offset, header, sizeof(header) - 1); + } + } + data->keys[k] = 0; +} + +static void search_conf(void) +{ + struct symbol **sym_arr; + struct gstr res; + struct gstr title; + char *dialog_input; + int dres, vscroll = 0, hscroll = 0; + bool again; + struct gstr sttext; + struct subtitle_part stpart; + + title = str_new(); + str_printf( &title, _("Enter (sub)string or regexp to search for " + "(with or without \"%s\")"), CONFIG_); + +again: + dialog_clear(); + dres = dialog_inputbox(_("Search Configuration Parameter"), + str_get(&title), + 10, 75, ""); + switch (dres) { + case 0: + break; + case 1: + show_helptext(_("Search Configuration"), search_help); + goto again; + default: + str_free(&title); + return; + } + + /* strip the prefix if necessary */ + dialog_input = dialog_input_result; + if (strncasecmp(dialog_input_result, CONFIG_, strlen(CONFIG_)) == 0) + dialog_input += strlen(CONFIG_); + + sttext = str_new(); + str_printf(&sttext, "Search (%s)", dialog_input_result); + stpart.text = str_get(&sttext); + list_add_tail(&stpart.entries, &trail); + + sym_arr = sym_re_search(dialog_input); + do { + LIST_HEAD(head); + struct menu *targets[JUMP_NB]; + int keys[JUMP_NB + 1], i; + struct search_data data = { + .head = &head, + .targets = targets, + .keys = keys, + }; + struct jump_key *pos, *tmp; + + res = get_relations_str(sym_arr, &head); + set_subtitle(); + dres = show_textbox_ext(_("Search Results"), (char *) + str_get(&res), 0, 0, keys, &vscroll, + &hscroll, &update_text, (void *) + &data); + again = false; + for (i = 0; i < JUMP_NB && keys[i]; i++) + if (dres == keys[i]) { + conf(targets[i]->parent, targets[i]); + again = true; + } + str_free(&res); + list_for_each_entry_safe(pos, tmp, &head, entries) + free(pos); + } while (again); + free(sym_arr); + str_free(&title); + list_del(trail.prev); + str_free(&sttext); +} + +static void build_conf(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + int type, tmp, doint = 2; + tristate val; + char ch; + bool visible; + + /* + * note: menu_is_visible() has side effect that it will + * recalc the value of the symbol. + */ + visible = menu_is_visible(menu); + if (show_all_options && !menu_has_prompt(menu)) + return; + else if (!show_all_options && !visible) + return; + + sym = menu->sym; + prop = menu->prompt; + if (!sym) { + if (prop && menu != current_menu) { + const char *prompt = menu_get_prompt(menu); + switch (prop->type) { + case P_MENU: + child_count++; + prompt = _(prompt); + if (single_menu_mode) { + item_make("%s%*c%s", + menu->data ? "-->" : "++>", + indent + 1, ' ', prompt); + } else + item_make(" %*c%s %s", + indent + 1, ' ', prompt, + menu_is_empty(menu) ? "----" : "--->"); + item_set_tag('m'); + item_set_data(menu); + if (single_menu_mode && menu->data) + goto conf_childs; + return; + case P_COMMENT: + if (prompt) { + child_count++; + item_make(" %*c*** %s ***", indent + 1, ' ', _(prompt)); + item_set_tag(':'); + item_set_data(menu); + } + break; + default: + if (prompt) { + child_count++; + item_make("---%*c%s", indent + 1, ' ', _(prompt)); + item_set_tag(':'); + item_set_data(menu); + } + } + } else + doint = 0; + goto conf_childs; + } + + type = sym_get_type(sym); + if (sym_is_choice(sym)) { + struct symbol *def_sym = sym_get_choice_value(sym); + struct menu *def_menu = NULL; + + child_count++; + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child) && child->sym == def_sym) + def_menu = child; + } + + val = sym_get_tristate_value(sym); + if (sym_is_changable(sym)) { + switch (type) { + case S_BOOLEAN: + item_make("[%c]", val == no ? ' ' : '*'); + break; + case S_TRISTATE: + switch (val) { + case yes: ch = '*'; break; + case mod: ch = 'M'; break; + default: ch = ' '; break; + } + item_make("<%c>", ch); + break; + } + item_set_tag('t'); + item_set_data(menu); + } else { + item_make(" "); + item_set_tag(def_menu ? 't' : ':'); + item_set_data(menu); + } + + item_add_str("%*c%s", indent + 1, ' ', _(menu_get_prompt(menu))); + if (val == yes) { + if (def_menu) { + item_add_str(" (%s)", _(menu_get_prompt(def_menu))); + item_add_str(" --->"); + if (def_menu->list) { + indent += 2; + build_conf(def_menu); + indent -= 2; + } + } + return; + } + } else { + if (menu == current_menu) { + item_make("---%*c%s", indent + 1, ' ', _(menu_get_prompt(menu))); + item_set_tag(':'); + item_set_data(menu); + goto conf_childs; + } + child_count++; + val = sym_get_tristate_value(sym); + if (sym_is_choice_value(sym) && val == yes) { + item_make(" "); + item_set_tag(':'); + item_set_data(menu); + } else { + switch (type) { + case S_BOOLEAN: + if (sym_is_changable(sym)) + item_make("[%c]", val == no ? ' ' : '*'); + else + item_make("-%c-", val == no ? ' ' : '*'); + item_set_tag('t'); + item_set_data(menu); + break; + case S_TRISTATE: + switch (val) { + case yes: ch = '*'; break; + case mod: ch = 'M'; break; + default: ch = ' '; break; + } + if (sym_is_changable(sym)) { + if (sym->rev_dep.tri == mod) + item_make("{%c}", ch); + else + item_make("<%c>", ch); + } else + item_make("-%c-", ch); + item_set_tag('t'); + item_set_data(menu); + break; + default: + tmp = 2 + strlen(sym_get_string_value(sym)); /* () = 2 */ + item_make("(%s)", sym_get_string_value(sym)); + tmp = indent - tmp + 4; + if (tmp < 0) + tmp = 0; + item_add_str("%*c%s%s", tmp, ' ', _(menu_get_prompt(menu)), + (sym_has_value(sym) || !sym_is_changable(sym)) ? + "" : _(" (NEW)")); + item_set_tag('s'); + item_set_data(menu); + goto conf_childs; + } + } + item_add_str("%*c%s%s", indent + 1, ' ', _(menu_get_prompt(menu)), + (sym_has_value(sym) || !sym_is_changable(sym)) ? + "" : _(" (NEW)")); + if (menu->prompt->type == P_MENU) { + item_add_str(" %s", menu_is_empty(menu) ? "----" : "--->"); + return; + } + } + +conf_childs: + indent += doint; + for (child = menu->list; child; child = child->next) + build_conf(child); + indent -= doint; +} + +static void conf(struct menu *menu, struct menu *active_menu) +{ + struct menu *submenu; + const char *prompt = menu_get_prompt(menu); + struct subtitle_part stpart; + struct symbol *sym; + int res; + int s_scroll = 0; + + if (menu != &rootmenu) + stpart.text = menu_get_prompt(menu); + else + stpart.text = NULL; + list_add_tail(&stpart.entries, &trail); + + while (1) { + item_reset(); + current_menu = menu; + build_conf(menu); + if (!child_count) + break; + set_subtitle(); + dialog_clear(); + res = dialog_menu(prompt ? _(prompt) : _("Main Menu"), + _(menu_instructions), + active_menu, &s_scroll); + if (res == 1 || res == KEY_ESC || res == -ERRDISPLAYTOOSMALL) + break; + if (item_count() != 0) { + if (!item_activate_selected()) + continue; + if (!item_tag()) + continue; + } + submenu = item_data(); + active_menu = item_data(); + if (submenu) + sym = submenu->sym; + else + sym = NULL; + + switch (res) { + case 0: + switch (item_tag()) { + case 'm': + if (single_menu_mode) + submenu->data = (void *) (long) !submenu->data; + else + conf(submenu, NULL); + break; + case 't': + if (sym_is_choice(sym) && sym_get_tristate_value(sym) == yes) + conf_choice(submenu); + else if (submenu->prompt->type == P_MENU) + conf(submenu, NULL); + break; + case 's': + conf_string(submenu); + break; + } + break; + case 2: + if (sym) + show_help(submenu); + else { + reset_subtitle(); + show_helptext(_("README"), _(mconf_readme)); + } + break; + case 3: + reset_subtitle(); + conf_save(); + break; + case 4: + reset_subtitle(); + conf_load(); + break; + case 5: + if (item_is_tag('t')) { + if (sym_set_tristate_value(sym, yes)) + break; + if (sym_set_tristate_value(sym, mod)) + show_textbox(NULL, setmod_text, 6, 74); + } + break; + case 6: + if (item_is_tag('t')) + sym_set_tristate_value(sym, no); + break; + case 7: + if (item_is_tag('t')) + sym_set_tristate_value(sym, mod); + break; + case 8: + if (item_is_tag('t')) + sym_toggle_tristate_value(sym); + else if (item_is_tag('m')) + conf(submenu, NULL); + break; + case 9: + search_conf(); + break; + case 10: + show_all_options = !show_all_options; + break; + } + } + + list_del(trail.prev); +} + +static int show_textbox_ext(const char *title, char *text, int r, int c, int + *keys, int *vscroll, int *hscroll, update_text_fn + update_text, void *data) +{ + dialog_clear(); + return dialog_textbox(title, text, r, c, keys, vscroll, hscroll, + update_text, data); +} + +static void show_textbox(const char *title, const char *text, int r, int c) +{ + show_textbox_ext(title, (char *) text, r, c, (int []) {0}, NULL, NULL, + NULL, NULL); +} + +static void show_helptext(const char *title, const char *text) +{ + show_textbox(title, text, 0, 0); +} + +static void conf_message_callback(const char *fmt, va_list ap) +{ + char buf[PATH_MAX+1]; + + vsnprintf(buf, sizeof(buf), fmt, ap); + if (save_and_exit) + printf("%s", buf); + else + show_textbox(NULL, buf, 6, 60); +} + +static void show_help(struct menu *menu) +{ + struct gstr help = str_new(); + + help.max_width = getmaxx(stdscr) - 10; + menu_get_ext_help(menu, &help); + + show_helptext(_(menu_get_prompt(menu)), str_get(&help)); + str_free(&help); +} + +static void conf_choice(struct menu *menu) +{ + const char *prompt = _(menu_get_prompt(menu)); + struct menu *child; + struct symbol *active; + + active = sym_get_choice_value(menu->sym); + while (1) { + int res; + int selected; + item_reset(); + + current_menu = menu; + for (child = menu->list; child; child = child->next) { + if (!menu_is_visible(child)) + continue; + if (child->sym) + item_make("%s", _(menu_get_prompt(child))); + else { + item_make("*** %s ***", _(menu_get_prompt(child))); + item_set_tag(':'); + } + item_set_data(child); + if (child->sym == active) + item_set_selected(1); + if (child->sym == sym_get_choice_value(menu->sym)) + item_set_tag('X'); + } + dialog_clear(); + res = dialog_checklist(prompt ? _(prompt) : _("Main Menu"), + _(radiolist_instructions), + MENUBOX_HEIGTH_MIN, + MENUBOX_WIDTH_MIN, + CHECKLIST_HEIGTH_MIN); + selected = item_activate_selected(); + switch (res) { + case 0: + if (selected) { + child = item_data(); + if (!child->sym) + break; + + sym_set_tristate_value(child->sym, yes); + } + return; + case 1: + if (selected) { + child = item_data(); + show_help(child); + active = child->sym; + } else + show_help(menu); + break; + case KEY_ESC: + return; + case -ERRDISPLAYTOOSMALL: + return; + } + } +} + +static void conf_string(struct menu *menu) +{ + const char *prompt = menu_get_prompt(menu); + + while (1) { + int res; + const char *heading; + + switch (sym_get_type(menu->sym)) { + case S_INT: + heading = _(inputbox_instructions_int); + break; + case S_HEX: + heading = _(inputbox_instructions_hex); + break; + case S_STRING: + heading = _(inputbox_instructions_string); + break; + default: + heading = _("Internal mconf error!"); + } + dialog_clear(); + res = dialog_inputbox(prompt ? _(prompt) : _("Main Menu"), + heading, 10, 75, + sym_get_string_value(menu->sym)); + switch (res) { + case 0: + if (sym_set_string_value(menu->sym, dialog_input_result)) + return; + show_textbox(NULL, _("You have made an invalid entry."), 5, 43); + break; + case 1: + show_help(menu); + break; + case KEY_ESC: + return; + } + } +} + +static void conf_load(void) +{ + + while (1) { + int res; + dialog_clear(); + res = dialog_inputbox(NULL, load_config_text, + 11, 55, filename); + switch(res) { + case 0: + if (!dialog_input_result[0]) + return; + if (!conf_read(dialog_input_result)) { + set_config_filename(dialog_input_result); + sym_set_change_count(1); + return; + } + show_textbox(NULL, _("File does not exist!"), 5, 38); + break; + case 1: + show_helptext(_("Load Alternate Configuration"), load_config_help); + break; + case KEY_ESC: + return; + } + } +} + +static void conf_save(void) +{ + while (1) { + int res; + dialog_clear(); + res = dialog_inputbox(NULL, save_config_text, + 11, 55, filename); + switch(res) { + case 0: + if (!dialog_input_result[0]) + return; + if (!conf_write(dialog_input_result)) { + set_config_filename(dialog_input_result); + return; + } + show_textbox(NULL, _("Can't create file! Probably a nonexistent directory."), 5, 60); + break; + case 1: + show_helptext(_("Save Alternate Configuration"), save_config_help); + break; + case KEY_ESC: + return; + } + } +} + +static int handle_exit(void) +{ + int res; + + save_and_exit = 1; + reset_subtitle(); + dialog_clear(); + if (conf_get_changed()) + res = dialog_yesno(NULL, + _("Do you wish to save your new configuration?\n" + "(Press <ESC><ESC> to continue kernel configuration.)"), + 6, 60); + else + res = -1; + + end_dialog(saved_x, saved_y); + + switch (res) { + case 0: + if (conf_write(filename)) { + fprintf(stderr, _("\n\n" + "Error while writing of the configuration.\n" + "Your configuration changes were NOT saved." + "\n\n")); + return 1; + } + /* fall through */ + case -1: + printf(_("\n\n" + "*** End of the configuration.\n" + "*** Execute 'make' to start the build or try 'make help'." + "\n\n")); + res = 0; + break; + default: + fprintf(stderr, _("\n\n" + "Your configuration changes were NOT saved." + "\n\n")); + if (res != KEY_ESC) + res = 0; + } + + return res; +} + +static void sig_handler(int signo) +{ + exit(handle_exit()); +} + +int main(int ac, char **av) +{ + char *mode; + int res; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + signal(SIGINT, sig_handler); + + conf_parse(av[1]); + conf_read(NULL); + + mode = getenv("MENUCONFIG_MODE"); + if (mode) { + if (!strcasecmp(mode, "single_menu")) + single_menu_mode = 1; + } + + if (init_dialog(NULL)) { + fprintf(stderr, N_("Your display is too small to run Menuconfig!\n")); + fprintf(stderr, N_("It must be at least 19 lines by 80 columns.\n")); + return 1; + } + + set_config_filename(conf_get_configname()); + conf_set_message_callback(conf_message_callback); + do { + conf(&rootmenu, NULL); + res = handle_exit(); + } while (res == KEY_ESC); + + return res; +} diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c new file mode 100644 index 0000000..a26cc5d --- /dev/null +++ b/scripts/kconfig/menu.c @@ -0,0 +1,697 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <ctype.h> +#include <stdarg.h> +#include <stdlib.h> +#include <string.h> + +#include "lkc.h" + +static const char nohelp_text[] = "There is no help available for this option."; + +struct menu rootmenu; +static struct menu **last_entry_ptr; + +struct file *file_list; +struct file *current_file; + +void menu_warn(struct menu *menu, const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + fprintf(stderr, "%s:%d:warning: ", menu->file->name, menu->lineno); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} + +static void prop_warn(struct property *prop, const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + fprintf(stderr, "%s:%d:warning: ", prop->file->name, prop->lineno); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} + +void _menu_init(void) +{ + current_entry = current_menu = &rootmenu; + last_entry_ptr = &rootmenu.list; +} + +void menu_add_entry(struct symbol *sym) +{ + struct menu *menu; + + menu = xmalloc(sizeof(*menu)); + memset(menu, 0, sizeof(*menu)); + menu->sym = sym; + menu->parent = current_menu; + menu->file = current_file; + menu->lineno = zconf_lineno(); + + *last_entry_ptr = menu; + last_entry_ptr = &menu->next; + current_entry = menu; + if (sym) + menu_add_symbol(P_SYMBOL, sym, NULL); +} + +void menu_end_entry(void) +{ +} + +struct menu *menu_add_menu(void) +{ + menu_end_entry(); + last_entry_ptr = ¤t_entry->list; + return current_menu = current_entry; +} + +void menu_end_menu(void) +{ + last_entry_ptr = ¤t_menu->next; + current_menu = current_menu->parent; +} + +static struct expr *menu_check_dep(struct expr *e) +{ + if (!e) + return e; + + switch (e->type) { + case E_NOT: + e->left.expr = menu_check_dep(e->left.expr); + break; + case E_OR: + case E_AND: + e->left.expr = menu_check_dep(e->left.expr); + e->right.expr = menu_check_dep(e->right.expr); + break; + case E_SYMBOL: + /* change 'm' into 'm' && MODULES */ + if (e->left.sym == &symbol_mod) + return expr_alloc_and(e, expr_alloc_symbol(modules_sym)); + break; + default: + break; + } + return e; +} + +void menu_add_dep(struct expr *dep) +{ + current_entry->dep = expr_alloc_and(current_entry->dep, menu_check_dep(dep)); +} + +void menu_set_type(int type) +{ + struct symbol *sym = current_entry->sym; + + if (sym->type == type) + return; + if (sym->type == S_UNKNOWN) { + sym->type = type; + return; + } + menu_warn(current_entry, + "ignoring type redefinition of '%s' from '%s' to '%s'", + sym->name ? sym->name : "<choice>", + sym_type_name(sym->type), sym_type_name(type)); +} + +struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *expr, struct expr *dep) +{ + struct property *prop = prop_alloc(type, current_entry->sym); + + prop->menu = current_entry; + prop->expr = expr; + prop->visible.expr = menu_check_dep(dep); + + if (prompt) { + if (isspace(*prompt)) { + prop_warn(prop, "leading whitespace ignored"); + while (isspace(*prompt)) + prompt++; + } + if (current_entry->prompt && current_entry != &rootmenu) + prop_warn(prop, "prompt redefined"); + + /* Apply all upper menus' visibilities to actual prompts. */ + if(type == P_PROMPT) { + struct menu *menu = current_entry; + + while ((menu = menu->parent) != NULL) { + struct expr *dup_expr; + + if (!menu->visibility) + continue; + /* + * Do not add a reference to the + * menu's visibility expression but + * use a copy of it. Otherwise the + * expression reduction functions + * will modify expressions that have + * multiple references which can + * cause unwanted side effects. + */ + dup_expr = expr_copy(menu->visibility); + + prop->visible.expr + = expr_alloc_and(prop->visible.expr, + dup_expr); + } + } + + current_entry->prompt = prop; + } + prop->text = prompt; + + return prop; +} + +struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep) +{ + return menu_add_prop(type, prompt, NULL, dep); +} + +void menu_add_visibility(struct expr *expr) +{ + current_entry->visibility = expr_alloc_and(current_entry->visibility, + expr); +} + +void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep) +{ + menu_add_prop(type, NULL, expr, dep); +} + +void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep) +{ + menu_add_prop(type, NULL, expr_alloc_symbol(sym), dep); +} + +void menu_add_option(int token, char *arg) +{ + switch (token) { + case T_OPT_MODULES: + if (modules_sym) + zconf_error("symbol '%s' redefines option 'modules'" + " already defined by symbol '%s'", + current_entry->sym->name, + modules_sym->name + ); + modules_sym = current_entry->sym; + break; + case T_OPT_DEFCONFIG_LIST: + if (!sym_defconfig_list) + sym_defconfig_list = current_entry->sym; + else if (sym_defconfig_list != current_entry->sym) + zconf_error("trying to redefine defconfig symbol"); + break; + case T_OPT_ENV: + prop_add_env(arg); + break; + case T_OPT_ALLNOCONFIG_Y: + current_entry->sym->flags |= SYMBOL_ALLNOCONFIG_Y; + break; + } +} + +static int menu_validate_number(struct symbol *sym, struct symbol *sym2) +{ + return sym2->type == S_INT || sym2->type == S_HEX || + (sym2->type == S_UNKNOWN && sym_string_valid(sym, sym2->name)); +} + +static void sym_check_prop(struct symbol *sym) +{ + struct property *prop; + struct symbol *sym2; + for (prop = sym->prop; prop; prop = prop->next) { + switch (prop->type) { + case P_DEFAULT: + if ((sym->type == S_STRING || sym->type == S_INT || sym->type == S_HEX) && + prop->expr->type != E_SYMBOL) + prop_warn(prop, + "default for config symbol '%s'" + " must be a single symbol", sym->name); + if (prop->expr->type != E_SYMBOL) + break; + sym2 = prop_get_symbol(prop); + if (sym->type == S_HEX || sym->type == S_INT) { + if (!menu_validate_number(sym, sym2)) + prop_warn(prop, + "'%s': number is invalid", + sym->name); + } + break; + case P_SELECT: + sym2 = prop_get_symbol(prop); + if (sym->type != S_BOOLEAN && sym->type != S_TRISTATE) + prop_warn(prop, + "config symbol '%s' uses select, but is " + "not boolean or tristate", sym->name); + else if (sym2->type != S_UNKNOWN && + sym2->type != S_BOOLEAN && + sym2->type != S_TRISTATE) + prop_warn(prop, + "'%s' has wrong type. 'select' only " + "accept arguments of boolean and " + "tristate type", sym2->name); + break; + case P_RANGE: + if (sym->type != S_INT && sym->type != S_HEX) + prop_warn(prop, "range is only allowed " + "for int or hex symbols"); + if (!menu_validate_number(sym, prop->expr->left.sym) || + !menu_validate_number(sym, prop->expr->right.sym)) + prop_warn(prop, "range is invalid"); + break; + default: + ; + } + } +} + +void menu_finalize(struct menu *parent) +{ + struct menu *menu, *last_menu; + struct symbol *sym; + struct property *prop; + struct expr *parentdep, *basedep, *dep, *dep2, **ep; + + sym = parent->sym; + if (parent->list) { + if (sym && sym_is_choice(sym)) { + if (sym->type == S_UNKNOWN) { + /* find the first choice value to find out choice type */ + current_entry = parent; + for (menu = parent->list; menu; menu = menu->next) { + if (menu->sym && menu->sym->type != S_UNKNOWN) { + menu_set_type(menu->sym->type); + break; + } + } + } + /* set the type of the remaining choice values */ + for (menu = parent->list; menu; menu = menu->next) { + current_entry = menu; + if (menu->sym && menu->sym->type == S_UNKNOWN) + menu_set_type(sym->type); + } + parentdep = expr_alloc_symbol(sym); + } else if (parent->prompt) + parentdep = parent->prompt->visible.expr; + else + parentdep = parent->dep; + + for (menu = parent->list; menu; menu = menu->next) { + basedep = expr_transform(menu->dep); + basedep = expr_alloc_and(expr_copy(parentdep), basedep); + basedep = expr_eliminate_dups(basedep); + menu->dep = basedep; + if (menu->sym) + prop = menu->sym->prop; + else + prop = menu->prompt; + for (; prop; prop = prop->next) { + if (prop->menu != menu) + continue; + dep = expr_transform(prop->visible.expr); + dep = expr_alloc_and(expr_copy(basedep), dep); + dep = expr_eliminate_dups(dep); + if (menu->sym && menu->sym->type != S_TRISTATE) + dep = expr_trans_bool(dep); + prop->visible.expr = dep; + if (prop->type == P_SELECT) { + struct symbol *es = prop_get_symbol(prop); + es->rev_dep.expr = expr_alloc_or(es->rev_dep.expr, + expr_alloc_and(expr_alloc_symbol(menu->sym), expr_copy(dep))); + } + } + } + for (menu = parent->list; menu; menu = menu->next) + menu_finalize(menu); + } else if (sym) { + basedep = parent->prompt ? parent->prompt->visible.expr : NULL; + basedep = expr_trans_compare(basedep, E_UNEQUAL, &symbol_no); + basedep = expr_eliminate_dups(expr_transform(basedep)); + last_menu = NULL; + for (menu = parent->next; menu; menu = menu->next) { + dep = menu->prompt ? menu->prompt->visible.expr : menu->dep; + if (!expr_contains_symbol(dep, sym)) + break; + if (expr_depends_symbol(dep, sym)) + goto next; + dep = expr_trans_compare(dep, E_UNEQUAL, &symbol_no); + dep = expr_eliminate_dups(expr_transform(dep)); + dep2 = expr_copy(basedep); + expr_eliminate_eq(&dep, &dep2); + expr_free(dep); + if (!expr_is_yes(dep2)) { + expr_free(dep2); + break; + } + expr_free(dep2); + next: + menu_finalize(menu); + menu->parent = parent; + last_menu = menu; + } + if (last_menu) { + parent->list = parent->next; + parent->next = last_menu->next; + last_menu->next = NULL; + } + + sym->dir_dep.expr = expr_alloc_or(sym->dir_dep.expr, parent->dep); + } + for (menu = parent->list; menu; menu = menu->next) { + if (sym && sym_is_choice(sym) && + menu->sym && !sym_is_choice_value(menu->sym)) { + current_entry = menu; + menu->sym->flags |= SYMBOL_CHOICEVAL; + if (!menu->prompt) + menu_warn(menu, "choice value must have a prompt"); + for (prop = menu->sym->prop; prop; prop = prop->next) { + if (prop->type == P_DEFAULT) + prop_warn(prop, "defaults for choice " + "values not supported"); + if (prop->menu == menu) + continue; + if (prop->type == P_PROMPT && + prop->menu->parent->sym != sym) + prop_warn(prop, "choice value used outside its choice group"); + } + /* Non-tristate choice values of tristate choices must + * depend on the choice being set to Y. The choice + * values' dependencies were propagated to their + * properties above, so the change here must be re- + * propagated. + */ + if (sym->type == S_TRISTATE && menu->sym->type != S_TRISTATE) { + basedep = expr_alloc_comp(E_EQUAL, sym, &symbol_yes); + menu->dep = expr_alloc_and(basedep, menu->dep); + for (prop = menu->sym->prop; prop; prop = prop->next) { + if (prop->menu != menu) + continue; + prop->visible.expr = expr_alloc_and(expr_copy(basedep), + prop->visible.expr); + } + } + menu_add_symbol(P_CHOICE, sym, NULL); + prop = sym_get_choice_prop(sym); + for (ep = &prop->expr; *ep; ep = &(*ep)->left.expr) + ; + *ep = expr_alloc_one(E_LIST, NULL); + (*ep)->right.sym = menu->sym; + } + if (menu->list && (!menu->prompt || !menu->prompt->text)) { + for (last_menu = menu->list; ; last_menu = last_menu->next) { + last_menu->parent = parent; + if (!last_menu->next) + break; + } + last_menu->next = menu->next; + menu->next = menu->list; + menu->list = NULL; + } + } + + if (sym && !(sym->flags & SYMBOL_WARNED)) { + if (sym->type == S_UNKNOWN) + menu_warn(parent, "config symbol defined without type"); + + if (sym_is_choice(sym) && !parent->prompt) + menu_warn(parent, "choice must have a prompt"); + + /* Check properties connected to this symbol */ + sym_check_prop(sym); + sym->flags |= SYMBOL_WARNED; + } + + if (sym && !sym_is_optional(sym) && parent->prompt) { + sym->rev_dep.expr = expr_alloc_or(sym->rev_dep.expr, + expr_alloc_and(parent->prompt->visible.expr, + expr_alloc_symbol(&symbol_mod))); + } +} + +bool menu_has_prompt(struct menu *menu) +{ + if (!menu->prompt) + return false; + return true; +} + +/* + * Determine if a menu is empty. + * A menu is considered empty if it contains no or only + * invisible entries. + */ +bool menu_is_empty(struct menu *menu) +{ + struct menu *child; + + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child)) + return(false); + } + return(true); +} + +bool menu_is_visible(struct menu *menu) +{ + struct menu *child; + struct symbol *sym; + tristate visible; + + if (!menu->prompt) + return false; + + if (menu->visibility) { + if (expr_calc_value(menu->visibility) == no) + return no; + } + + sym = menu->sym; + if (sym) { + sym_calc_value(sym); + visible = menu->prompt->visible.tri; + } else + visible = menu->prompt->visible.tri = expr_calc_value(menu->prompt->visible.expr); + + if (visible != no) + return true; + + if (!sym || sym_get_tristate_value(menu->sym) == no) + return false; + + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child)) { + if (sym) + sym->flags |= SYMBOL_DEF_USER; + return true; + } + } + + return false; +} + +const char *menu_get_prompt(struct menu *menu) +{ + if (menu->prompt) + return menu->prompt->text; + else if (menu->sym) + return menu->sym->name; + return NULL; +} + +struct menu *menu_get_root_menu(struct menu *menu) +{ + return &rootmenu; +} + +struct menu *menu_get_parent_menu(struct menu *menu) +{ + enum prop_type type; + + for (; menu != &rootmenu; menu = menu->parent) { + type = menu->prompt ? menu->prompt->type : 0; + if (type == P_MENU) + break; + } + return menu; +} + +bool menu_has_help(struct menu *menu) +{ + return menu->help != NULL; +} + +const char *menu_get_help(struct menu *menu) +{ + if (menu->help) + return menu->help; + else + return ""; +} + +static void get_prompt_str(struct gstr *r, struct property *prop, + struct list_head *head) +{ + int i, j; + struct menu *submenu[8], *menu, *location = NULL; + struct jump_key *jump; + + str_printf(r, _("Prompt: %s\n"), _(prop->text)); + menu = prop->menu->parent; + for (i = 0; menu != &rootmenu && i < 8; menu = menu->parent) { + bool accessible = menu_is_visible(menu); + + submenu[i++] = menu; + if (location == NULL && accessible) + location = menu; + } + if (head && location) { + jump = xmalloc(sizeof(struct jump_key)); + + if (menu_is_visible(prop->menu)) { + /* + * There is not enough room to put the hint at the + * beginning of the "Prompt" line. Put the hint on the + * last "Location" line even when it would belong on + * the former. + */ + jump->target = prop->menu; + } else + jump->target = location; + + if (list_empty(head)) + jump->index = 0; + else + jump->index = list_entry(head->prev, struct jump_key, + entries)->index + 1; + + list_add_tail(&jump->entries, head); + } + + if (i > 0) { + str_printf(r, _(" Location:\n")); + for (j = 4; --i >= 0; j += 2) { + menu = submenu[i]; + if (head && location && menu == location) + jump->offset = strlen(r->s); + str_printf(r, "%*c-> %s", j, ' ', + _(menu_get_prompt(menu))); + if (menu->sym) { + str_printf(r, " (%s [=%s])", menu->sym->name ? + menu->sym->name : _("<choice>"), + sym_get_string_value(menu->sym)); + } + str_append(r, "\n"); + } + } +} + +/* + * get property of type P_SYMBOL + */ +static struct property *get_symbol_prop(struct symbol *sym) +{ + struct property *prop = NULL; + + for_all_properties(sym, prop, P_SYMBOL) + break; + return prop; +} + +/* + * head is optional and may be NULL + */ +void get_symbol_str(struct gstr *r, struct symbol *sym, + struct list_head *head) +{ + bool hit; + struct property *prop; + + if (sym && sym->name) { + str_printf(r, "Symbol: %s [=%s]\n", sym->name, + sym_get_string_value(sym)); + str_printf(r, "Type : %s\n", sym_type_name(sym->type)); + if (sym->type == S_INT || sym->type == S_HEX) { + prop = sym_get_range_prop(sym); + if (prop) { + str_printf(r, "Range : "); + expr_gstr_print(prop->expr, r); + str_append(r, "\n"); + } + } + } + for_all_prompts(sym, prop) + get_prompt_str(r, prop, head); + + prop = get_symbol_prop(sym); + if (prop) { + str_printf(r, _(" Defined at %s:%d\n"), prop->menu->file->name, + prop->menu->lineno); + if (!expr_is_yes(prop->visible.expr)) { + str_append(r, _(" Depends on: ")); + expr_gstr_print(prop->visible.expr, r); + str_append(r, "\n"); + } + } + + hit = false; + for_all_properties(sym, prop, P_SELECT) { + if (!hit) { + str_append(r, " Selects: "); + hit = true; + } else + str_printf(r, " && "); + expr_gstr_print(prop->expr, r); + } + if (hit) + str_append(r, "\n"); + if (sym->rev_dep.expr) { + str_append(r, _(" Selected by: ")); + expr_gstr_print(sym->rev_dep.expr, r); + str_append(r, "\n"); + } + str_append(r, "\n\n"); +} + +struct gstr get_relations_str(struct symbol **sym_arr, struct list_head *head) +{ + struct symbol *sym; + struct gstr res = str_new(); + int i; + + for (i = 0; sym_arr && (sym = sym_arr[i]); i++) + get_symbol_str(&res, sym, head); + if (!i) + str_append(&res, _("No matches found.\n")); + return res; +} + + +void menu_get_ext_help(struct menu *menu, struct gstr *help) +{ + struct symbol *sym = menu->sym; + const char *help_text = nohelp_text; + + if (menu_has_help(menu)) { + if (sym->name) + str_printf(help, "%s%s:\n\n", CONFIG_, sym->name); + help_text = menu_get_help(menu); + } + str_printf(help, "%s\n", _(help_text)); + if (sym) + get_symbol_str(help, sym, NULL); +} diff --git a/scripts/kconfig/merge_config.sh b/scripts/kconfig/merge_config.sh new file mode 100755 index 0000000..81b0c61 --- /dev/null +++ b/scripts/kconfig/merge_config.sh @@ -0,0 +1,150 @@ +#!/bin/sh +# merge_config.sh - Takes a list of config fragment values, and merges +# them one by one. Provides warnings on overridden values, and specified +# values that did not make it to the resulting .config file (due to missed +# dependencies or config symbol removal). +# +# Portions reused from kconf_check and generate_cfg: +# http://git.yoctoproject.org/cgit/cgit.cgi/yocto-kernel-tools/tree/tools/kconf_check +# http://git.yoctoproject.org/cgit/cgit.cgi/yocto-kernel-tools/tree/tools/generate_cfg +# +# Copyright (c) 2009-2010 Wind River Systems, Inc. +# Copyright 2011 Linaro +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the GNU General Public License for more details. + +clean_up() { + rm -f $TMP_FILE + exit +} +trap clean_up HUP INT TERM + +usage() { + echo "Usage: $0 [OPTIONS] [CONFIG [...]]" + echo " -h display this help text" + echo " -m only merge the fragments, do not execute the make command" + echo " -n use allnoconfig instead of alldefconfig" + echo " -r list redundant entries when merging fragments" + echo " -O dir to put generated output files" +} + +MAKE=true +ALLTARGET=alldefconfig +WARNREDUN=false +OUTPUT=. + +while true; do + case $1 in + "-n") + ALLTARGET=allnoconfig + shift + continue + ;; + "-m") + MAKE=false + shift + continue + ;; + "-h") + usage + exit + ;; + "-r") + WARNREDUN=true + shift + continue + ;; + "-O") + if [ -d $2 ];then + OUTPUT=$(echo $2 | sed 's/\/*$//') + else + echo "output directory $2 does not exist" 1>&2 + exit 1 + fi + shift 2 + continue + ;; + *) + break + ;; + esac +done + +INITFILE=$1 +shift; + +MERGE_LIST=$* +SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p" +TMP_FILE=$(mktemp ./.tmp.config.XXXXXXXXXX) + +echo "Using $INITFILE as base" +cat $INITFILE > $TMP_FILE + +# Merge files, printing warnings on overrided values +for MERGE_FILE in $MERGE_LIST ; do + echo "Merging $MERGE_FILE" + CFG_LIST=$(sed -n "$SED_CONFIG_EXP" $MERGE_FILE) + + for CFG in $CFG_LIST ; do + grep -q -w $CFG $TMP_FILE + if [ $? -eq 0 ] ; then + PREV_VAL=$(grep -w $CFG $TMP_FILE) + NEW_VAL=$(grep -w $CFG $MERGE_FILE) + if [ "x$PREV_VAL" != "x$NEW_VAL" ] ; then + echo Value of $CFG is redefined by fragment $MERGE_FILE: + echo Previous value: $PREV_VAL + echo New value: $NEW_VAL + echo + elif [ "$WARNREDUN" = "true" ]; then + echo Value of $CFG is redundant by fragment $MERGE_FILE: + fi + sed -i "/$CFG[ =]/d" $TMP_FILE + fi + done + cat $MERGE_FILE >> $TMP_FILE +done + +if [ "$MAKE" = "false" ]; then + cp $TMP_FILE $OUTPUT/.config + echo "#" + echo "# merged configuration written to $OUTPUT/.config (needs make)" + echo "#" + clean_up + exit +fi + +# If we have an output dir, setup the O= argument, otherwise leave +# it blank, since O=. will create an unnecessary ./source softlink +OUTPUT_ARG="" +if [ "$OUTPUT" != "." ] ; then + OUTPUT_ARG="O=$OUTPUT" +fi + + +# Use the merged file as the starting point for: +# alldefconfig: Fills in any missing symbols with Kconfig default +# allnoconfig: Fills in any missing symbols with # CONFIG_* is not set +make KCONFIG_ALLCONFIG=$TMP_FILE $OUTPUT_ARG $ALLTARGET + + +# Check all specified config values took (might have missed-dependency issues) +for CFG in $(sed -n "$SED_CONFIG_EXP" $TMP_FILE); do + + REQUESTED_VAL=$(grep -w -e "$CFG" $TMP_FILE) + ACTUAL_VAL=$(grep -w -e "$CFG" $OUTPUT/.config) + if [ "x$REQUESTED_VAL" != "x$ACTUAL_VAL" ] ; then + echo "Value requested for $CFG not in final .config" + echo "Requested value: $REQUESTED_VAL" + echo "Actual value: $ACTUAL_VAL" + echo "" + fi +done + +clean_up diff --git a/scripts/kconfig/nconf.c b/scripts/kconfig/nconf.c new file mode 100644 index 0000000..984489e --- /dev/null +++ b/scripts/kconfig/nconf.c @@ -0,0 +1,1556 @@ +/* + * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com? + * Released under the terms of the GNU GPL v2.0. + * + * Derived from menuconfig. + * + */ +#define _GNU_SOURCE +#include <string.h> +#include <stdlib.h> + +#include "lkc.h" +#include "nconf.h" +#include <ctype.h> + +static const char nconf_global_help[] = N_( +"Help windows\n" +"------------\n" +"o Global help: Unless in a data entry window, pressing <F1> will give \n" +" you the global help window, which you are just reading.\n" +"\n" +"o A short version of the global help is available by pressing <F3>.\n" +"\n" +"o Local help: To get help related to the current menu entry, use any\n" +" of <?> <h>, or if in a data entry window then press <F1>.\n" +"\n" +"\n" +"Menu entries\n" +"------------\n" +"This interface lets you select features and parameters for the kernel\n" +"build. Kernel features can either be built-in, modularized, or removed.\n" +"Parameters must be entered as text or decimal or hexadecimal numbers.\n" +"\n" +"Menu entries beginning with following braces represent features that\n" +" [ ] can be built in or removed\n" +" < > can be built in, modularized or removed\n" +" { } can be built in or modularized, are selected by another feature\n" +" - - are selected by another feature\n" +" XXX cannot be selected. Symbol Info <F2> tells you why.\n" +"*, M or whitespace inside braces means to build in, build as a module\n" +"or to exclude the feature respectively.\n" +"\n" +"To change any of these features, highlight it with the movement keys\n" +"listed below and press <y> to build it in, <m> to make it a module or\n" +"<n> to remove it. You may press the <Space> key to cycle through the\n" +"available options.\n" +"\n" +"A trailing \"--->\" designates a submenu, a trailing \"----\" an\n" +"empty submenu.\n" +"\n" +"Menu navigation keys\n" +"----------------------------------------------------------------------\n" +"Linewise up <Up>\n" +"Linewise down <Down>\n" +"Pagewise up <Page Up>\n" +"Pagewise down <Page Down>\n" +"First entry <Home>\n" +"Last entry <End>\n" +"Enter a submenu <Right> <Enter>\n" +"Go back to parent menu <Left> <Esc> <F5>\n" +"Close a help window <Enter> <Esc> <F5>\n" +"Close entry window, apply <Enter>\n" +"Close entry window, forget <Esc> <F5>\n" +"Start incremental, case-insensitive search for STRING in menu entries,\n" +" no regex support, STRING is displayed in upper left corner\n" +" </>STRING\n" +" Remove last character <Backspace>\n" +" Jump to next hit <Down>\n" +" Jump to previous hit <Up>\n" +"Exit menu search mode </> <Esc>\n" +"Search for configuration variables with or without leading CONFIG_\n" +" <F8>RegExpr<Enter>\n" +"Verbose search help <F8><F1>\n" +"----------------------------------------------------------------------\n" +"\n" +"Unless in a data entry window, key <1> may be used instead of <F1>,\n" +"<2> instead of <F2>, etc.\n" +"\n" +"\n" +"Radiolist (Choice list)\n" +"-----------------------\n" +"Use the movement keys listed above to select the option you wish to set\n" +"and press <Space>.\n" +"\n" +"\n" +"Data entry\n" +"----------\n" +"Enter the requested information and press <Enter>. Hexadecimal values\n" +"may be entered without the \"0x\" prefix.\n" +"\n" +"\n" +"Text Box (Help Window)\n" +"----------------------\n" +"Use movement keys as listed in table above.\n" +"\n" +"Press any of <Enter> <Esc> <q> <F5> <F9> to exit.\n" +"\n" +"\n" +"Alternate configuration files\n" +"-----------------------------\n" +"nconfig supports switching between different configurations.\n" +"Press <F6> to save your current configuration. Press <F7> and enter\n" +"a file name to load a previously saved configuration.\n" +"\n" +"\n" +"Terminal configuration\n" +"----------------------\n" +"If you use nconfig in a xterm window, make sure your TERM environment\n" +"variable specifies a terminal configuration which supports at least\n" +"16 colors. Otherwise nconfig will look rather bad.\n" +"\n" +"If the \"stty size\" command reports the current terminalsize correctly,\n" +"nconfig will adapt to sizes larger than the traditional 80x25 \"standard\"\n" +"and display longer menus properly.\n" +"\n" +"\n" +"Single menu mode\n" +"----------------\n" +"If you prefer to have all of the menu entries listed in a single menu,\n" +"rather than the default multimenu hierarchy, run nconfig with\n" +"NCONFIG_MODE environment variable set to single_menu. Example:\n" +"\n" +"make NCONFIG_MODE=single_menu nconfig\n" +"\n" +"<Enter> will then unfold the appropriate category, or fold it if it\n" +"is already unfolded. Folded menu entries will be designated by a\n" +"leading \"++>\" and unfolded entries by a leading \"-->\".\n" +"\n" +"Note that this mode can eventually be a little more CPU expensive than\n" +"the default mode, especially with a larger number of unfolded submenus.\n" +"\n"), +menu_no_f_instructions[] = N_( +"Legend: [*] built-in [ ] excluded <M> module < > module capable.\n" +"Submenus are designated by a trailing \"--->\", empty ones by \"----\".\n" +"\n" +"Use the following keys to navigate the menus:\n" +"Move up or down with <Up> and <Down>.\n" +"Enter a submenu with <Enter> or <Right>.\n" +"Exit a submenu to its parent menu with <Esc> or <Left>.\n" +"Pressing <y> includes, <n> excludes, <m> modularizes features.\n" +"Pressing <Space> cycles through the available options.\n" +"To search for menu entries press </>.\n" +"<Esc> always leaves the current window.\n" +"\n" +"You do not have function keys support.\n" +"Press <1> instead of <F1>, <2> instead of <F2>, etc.\n" +"For verbose global help use key <1>.\n" +"For help related to the current menu entry press <?> or <h>.\n"), +menu_instructions[] = N_( +"Legend: [*] built-in [ ] excluded <M> module < > module capable.\n" +"Submenus are designated by a trailing \"--->\", empty ones by \"----\".\n" +"\n" +"Use the following keys to navigate the menus:\n" +"Move up or down with <Up> or <Down>.\n" +"Enter a submenu with <Enter> or <Right>.\n" +"Exit a submenu to its parent menu with <Esc> or <Left>.\n" +"Pressing <y> includes, <n> excludes, <m> modularizes features.\n" +"Pressing <Space> cycles through the available options.\n" +"To search for menu entries press </>.\n" +"<Esc> always leaves the current window.\n" +"\n" +"Pressing <1> may be used instead of <F1>, <2> instead of <F2>, etc.\n" +"For verbose global help press <F1>.\n" +"For help related to the current menu entry press <?> or <h>.\n"), +radiolist_instructions[] = N_( +"Press <Up>, <Down>, <Home> or <End> to navigate a radiolist, select\n" +"with <Space>.\n" +"For help related to the current entry press <?> or <h>.\n" +"For global help press <F1>.\n"), +inputbox_instructions_int[] = N_( +"Please enter a decimal value.\n" +"Fractions will not be accepted.\n" +"Press <Enter> to apply, <Esc> to cancel."), +inputbox_instructions_hex[] = N_( +"Please enter a hexadecimal value.\n" +"Press <Enter> to apply, <Esc> to cancel."), +inputbox_instructions_string[] = N_( +"Please enter a string value.\n" +"Press <Enter> to apply, <Esc> to cancel."), +setmod_text[] = N_( +"This feature depends on another feature which has been configured as a\n" +"module. As a result, the current feature will be built as a module too."), +load_config_text[] = N_( +"Enter the name of the configuration file you wish to load.\n" +"Accept the name shown to restore the configuration you last\n" +"retrieved. Leave empty to abort."), +load_config_help[] = N_( +"For various reasons, one may wish to keep several different\n" +"configurations available on a single machine.\n" +"\n" +"If you have saved a previous configuration in a file other than the\n" +"default one, entering its name here will allow you to load and modify\n" +"that configuration.\n" +"\n" +"Leave empty to abort.\n"), +save_config_text[] = N_( +"Enter a filename to which this configuration should be saved\n" +"as an alternate. Leave empty to abort."), +save_config_help[] = N_( +"For various reasons, one may wish to keep several different\n" +"configurations available on a single machine.\n" +"\n" +"Entering a file name here will allow you to later retrieve, modify\n" +"and use the current configuration as an alternate to whatever\n" +"configuration options you have selected at that time.\n" +"\n" +"Leave empty to abort.\n"), +search_help[] = N_( +"Search for symbols (configuration variable names CONFIG_*) and display\n" +"their relations. Regular expressions are supported.\n" +"Example: Search for \"^FOO\".\n" +"Result:\n" +"-----------------------------------------------------------------\n" +"Symbol: FOO [ = m]\n" +"Prompt: Foo bus is used to drive the bar HW\n" +"Defined at drivers/pci/Kconfig:47\n" +"Depends on: X86_LOCAL_APIC && X86_IO_APIC || IA64\n" +"Location:\n" +" -> Bus options (PCI, PCMCIA, EISA, ISA)\n" +" -> PCI support (PCI [ = y])\n" +" -> PCI access mode (<choice> [ = y])\n" +"Selects: LIBCRC32\n" +"Selected by: BAR\n" +"-----------------------------------------------------------------\n" +"o The line 'Prompt:' shows the text displayed for this symbol in\n" +" the menu hierarchy.\n" +"o The 'Defined at' line tells at what file / line number the symbol is\n" +" defined.\n" +"o The 'Depends on:' line lists symbols that need to be defined for\n" +" this symbol to be visible and selectable in the menu.\n" +"o The 'Location:' lines tell, where in the menu structure this symbol\n" +" is located. A location followed by a [ = y] indicates that this is\n" +" a selectable menu item, and the current value is displayed inside\n" +" brackets.\n" +"o The 'Selects:' line tells, what symbol will be automatically selected\n" +" if this symbol is selected (y or m).\n" +"o The 'Selected by' line tells what symbol has selected this symbol.\n" +"\n" +"Only relevant lines are shown.\n" +"\n\n" +"Search examples:\n" +"USB => find all symbols containing USB\n" +"^USB => find all symbols starting with USB\n" +"USB$ => find all symbols ending with USB\n" +"\n"); + +struct mitem { + char str[256]; + char tag; + void *usrptr; + int is_visible; +}; + +#define MAX_MENU_ITEMS 4096 +static int show_all_items; +static int indent; +static struct menu *current_menu; +static int child_count; +static int single_menu_mode; +/* the window in which all information appears */ +static WINDOW *main_window; +/* the largest size of the menu window */ +static int mwin_max_lines; +static int mwin_max_cols; +/* the window in which we show option buttons */ +static MENU *curses_menu; +static ITEM *curses_menu_items[MAX_MENU_ITEMS]; +static struct mitem k_menu_items[MAX_MENU_ITEMS]; +static int items_num; +static int global_exit; +/* the currently selected button */ +const char *current_instructions = menu_instructions; + +static char *dialog_input_result; +static int dialog_input_result_len; + +static void conf(struct menu *menu); +static void conf_choice(struct menu *menu); +static void conf_string(struct menu *menu); +static void conf_load(void); +static void conf_save(void); +static void show_help(struct menu *menu); +static int do_exit(void); +static void setup_windows(void); +static void search_conf(void); + +typedef void (*function_key_handler_t)(int *key, struct menu *menu); +static void handle_f1(int *key, struct menu *current_item); +static void handle_f2(int *key, struct menu *current_item); +static void handle_f3(int *key, struct menu *current_item); +static void handle_f4(int *key, struct menu *current_item); +static void handle_f5(int *key, struct menu *current_item); +static void handle_f6(int *key, struct menu *current_item); +static void handle_f7(int *key, struct menu *current_item); +static void handle_f8(int *key, struct menu *current_item); +static void handle_f9(int *key, struct menu *current_item); + +struct function_keys { + const char *key_str; + const char *func; + function_key key; + function_key_handler_t handler; +}; + +static const int function_keys_num = 9; +struct function_keys function_keys[] = { + { + .key_str = "F1", + .func = "Help", + .key = F_HELP, + .handler = handle_f1, + }, + { + .key_str = "F2", + .func = "SymInfo", + .key = F_SYMBOL, + .handler = handle_f2, + }, + { + .key_str = "F3", + .func = "Help 2", + .key = F_INSTS, + .handler = handle_f3, + }, + { + .key_str = "F4", + .func = "ShowAll", + .key = F_CONF, + .handler = handle_f4, + }, + { + .key_str = "F5", + .func = "Back", + .key = F_BACK, + .handler = handle_f5, + }, + { + .key_str = "F6", + .func = "Save", + .key = F_SAVE, + .handler = handle_f6, + }, + { + .key_str = "F7", + .func = "Load", + .key = F_LOAD, + .handler = handle_f7, + }, + { + .key_str = "F8", + .func = "SymSearch", + .key = F_SEARCH, + .handler = handle_f8, + }, + { + .key_str = "F9", + .func = "Exit", + .key = F_EXIT, + .handler = handle_f9, + }, +}; + +static void print_function_line(void) +{ + int i; + int offset = 1; + const int skip = 1; + int lines = getmaxy(stdscr); + + for (i = 0; i < function_keys_num; i++) { + (void) wattrset(main_window, attributes[FUNCTION_HIGHLIGHT]); + mvwprintw(main_window, lines-3, offset, + "%s", + function_keys[i].key_str); + (void) wattrset(main_window, attributes[FUNCTION_TEXT]); + offset += strlen(function_keys[i].key_str); + mvwprintw(main_window, lines-3, + offset, "%s", + function_keys[i].func); + offset += strlen(function_keys[i].func) + skip; + } + (void) wattrset(main_window, attributes[NORMAL]); +} + +/* help */ +static void handle_f1(int *key, struct menu *current_item) +{ + show_scroll_win(main_window, + _("Global help"), _(nconf_global_help)); + return; +} + +/* symbole help */ +static void handle_f2(int *key, struct menu *current_item) +{ + show_help(current_item); + return; +} + +/* instructions */ +static void handle_f3(int *key, struct menu *current_item) +{ + show_scroll_win(main_window, + _("Short help"), + _(current_instructions)); + return; +} + +/* config */ +static void handle_f4(int *key, struct menu *current_item) +{ + int res = btn_dialog(main_window, + _("Show all symbols?"), + 2, + " <Show All> ", + "<Don't show all>"); + if (res == 0) + show_all_items = 1; + else if (res == 1) + show_all_items = 0; + + return; +} + +/* back */ +static void handle_f5(int *key, struct menu *current_item) +{ + *key = KEY_LEFT; + return; +} + +/* save */ +static void handle_f6(int *key, struct menu *current_item) +{ + conf_save(); + return; +} + +/* load */ +static void handle_f7(int *key, struct menu *current_item) +{ + conf_load(); + return; +} + +/* search */ +static void handle_f8(int *key, struct menu *current_item) +{ + search_conf(); + return; +} + +/* exit */ +static void handle_f9(int *key, struct menu *current_item) +{ + do_exit(); + return; +} + +/* return != 0 to indicate the key was handles */ +static int process_special_keys(int *key, struct menu *menu) +{ + int i; + + if (*key == KEY_RESIZE) { + setup_windows(); + return 1; + } + + for (i = 0; i < function_keys_num; i++) { + if (*key == KEY_F(function_keys[i].key) || + *key == '0' + function_keys[i].key){ + function_keys[i].handler(key, menu); + return 1; + } + } + + return 0; +} + +static void clean_items(void) +{ + int i; + for (i = 0; curses_menu_items[i]; i++) + free_item(curses_menu_items[i]); + bzero(curses_menu_items, sizeof(curses_menu_items)); + bzero(k_menu_items, sizeof(k_menu_items)); + items_num = 0; +} + +typedef enum {MATCH_TINKER_PATTERN_UP, MATCH_TINKER_PATTERN_DOWN, + FIND_NEXT_MATCH_DOWN, FIND_NEXT_MATCH_UP} match_f; + +/* return the index of the matched item, or -1 if no such item exists */ +static int get_mext_match(const char *match_str, match_f flag) +{ + int match_start = item_index(current_item(curses_menu)); + int index; + + if (flag == FIND_NEXT_MATCH_DOWN) + ++match_start; + else if (flag == FIND_NEXT_MATCH_UP) + --match_start; + + index = match_start; + index = (index + items_num) % items_num; + while (true) { + char *str = k_menu_items[index].str; + if (strcasestr(str, match_str) != 0) + return index; + if (flag == FIND_NEXT_MATCH_UP || + flag == MATCH_TINKER_PATTERN_UP) + --index; + else + ++index; + index = (index + items_num) % items_num; + if (index == match_start) + return -1; + } +} + +/* Make a new item. */ +static void item_make(struct menu *menu, char tag, const char *fmt, ...) +{ + va_list ap; + + if (items_num > MAX_MENU_ITEMS-1) + return; + + bzero(&k_menu_items[items_num], sizeof(k_menu_items[0])); + k_menu_items[items_num].tag = tag; + k_menu_items[items_num].usrptr = menu; + if (menu != NULL) + k_menu_items[items_num].is_visible = + menu_is_visible(menu); + else + k_menu_items[items_num].is_visible = 1; + + va_start(ap, fmt); + vsnprintf(k_menu_items[items_num].str, + sizeof(k_menu_items[items_num].str), + fmt, ap); + va_end(ap); + + if (!k_menu_items[items_num].is_visible) + memcpy(k_menu_items[items_num].str, "XXX", 3); + + curses_menu_items[items_num] = new_item( + k_menu_items[items_num].str, + k_menu_items[items_num].str); + set_item_userptr(curses_menu_items[items_num], + &k_menu_items[items_num]); + /* + if (!k_menu_items[items_num].is_visible) + item_opts_off(curses_menu_items[items_num], O_SELECTABLE); + */ + + items_num++; + curses_menu_items[items_num] = NULL; +} + +/* very hackish. adds a string to the last item added */ +static void item_add_str(const char *fmt, ...) +{ + va_list ap; + int index = items_num-1; + char new_str[256]; + char tmp_str[256]; + + if (index < 0) + return; + + va_start(ap, fmt); + vsnprintf(new_str, sizeof(new_str), fmt, ap); + va_end(ap); + snprintf(tmp_str, sizeof(tmp_str), "%s%s", + k_menu_items[index].str, new_str); + strncpy(k_menu_items[index].str, + tmp_str, + sizeof(k_menu_items[index].str)); + + free_item(curses_menu_items[index]); + curses_menu_items[index] = new_item( + k_menu_items[index].str, + k_menu_items[index].str); + set_item_userptr(curses_menu_items[index], + &k_menu_items[index]); +} + +/* get the tag of the currently selected item */ +static char item_tag(void) +{ + ITEM *cur; + struct mitem *mcur; + + cur = current_item(curses_menu); + if (cur == NULL) + return 0; + mcur = (struct mitem *) item_userptr(cur); + return mcur->tag; +} + +static int curses_item_index(void) +{ + return item_index(current_item(curses_menu)); +} + +static void *item_data(void) +{ + ITEM *cur; + struct mitem *mcur; + + cur = current_item(curses_menu); + if (!cur) + return NULL; + mcur = (struct mitem *) item_userptr(cur); + return mcur->usrptr; + +} + +static int item_is_tag(char tag) +{ + return item_tag() == tag; +} + +static char filename[PATH_MAX+1]; +static char menu_backtitle[PATH_MAX+128]; +static const char *set_config_filename(const char *config_filename) +{ + int size; + + size = snprintf(menu_backtitle, sizeof(menu_backtitle), + "%s - %s", config_filename, rootmenu.prompt->text); + if (size >= sizeof(menu_backtitle)) + menu_backtitle[sizeof(menu_backtitle)-1] = '\0'; + + size = snprintf(filename, sizeof(filename), "%s", config_filename); + if (size >= sizeof(filename)) + filename[sizeof(filename)-1] = '\0'; + return menu_backtitle; +} + +/* return = 0 means we are successful. + * -1 means go on doing what you were doing + */ +static int do_exit(void) +{ + int res; + if (!conf_get_changed()) { + global_exit = 1; + return 0; + } + res = btn_dialog(main_window, + _("Do you wish to save your new configuration?\n" + "<ESC> to cancel and resume nconfig."), + 2, + " <save> ", + "<don't save>"); + if (res == KEY_EXIT) { + global_exit = 0; + return -1; + } + + /* if we got here, the user really wants to exit */ + switch (res) { + case 0: + res = conf_write(filename); + if (res) + btn_dialog( + main_window, + _("Error during writing of configuration.\n" + "Your configuration changes were NOT saved."), + 1, + "<OK>"); + break; + default: + btn_dialog( + main_window, + _("Your configuration changes were NOT saved."), + 1, + "<OK>"); + break; + } + global_exit = 1; + return 0; +} + + +static void search_conf(void) +{ + struct symbol **sym_arr; + struct gstr res; + struct gstr title; + char *dialog_input; + int dres; + + title = str_new(); + str_printf( &title, _("Enter (sub)string or regexp to search for " + "(with or without \"%s\")"), CONFIG_); + +again: + dres = dialog_inputbox(main_window, + _("Search Configuration Parameter"), + str_get(&title), + "", &dialog_input_result, &dialog_input_result_len); + switch (dres) { + case 0: + break; + case 1: + show_scroll_win(main_window, + _("Search Configuration"), search_help); + goto again; + default: + str_free(&title); + return; + } + + /* strip the prefix if necessary */ + dialog_input = dialog_input_result; + if (strncasecmp(dialog_input_result, CONFIG_, strlen(CONFIG_)) == 0) + dialog_input += strlen(CONFIG_); + + sym_arr = sym_re_search(dialog_input); + res = get_relations_str(sym_arr, NULL); + free(sym_arr); + show_scroll_win(main_window, + _("Search Results"), str_get(&res)); + str_free(&res); + str_free(&title); +} + + +static void build_conf(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + int type, tmp, doint = 2; + tristate val; + char ch; + + if (!menu || (!show_all_items && !menu_is_visible(menu))) + return; + + sym = menu->sym; + prop = menu->prompt; + if (!sym) { + if (prop && menu != current_menu) { + const char *prompt = menu_get_prompt(menu); + enum prop_type ptype; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + switch (ptype) { + case P_MENU: + child_count++; + prompt = _(prompt); + if (single_menu_mode) { + item_make(menu, 'm', + "%s%*c%s", + menu->data ? "-->" : "++>", + indent + 1, ' ', prompt); + } else + item_make(menu, 'm', + " %*c%s %s", + indent + 1, ' ', prompt, + menu_is_empty(menu) ? "----" : "--->"); + + if (single_menu_mode && menu->data) + goto conf_childs; + return; + case P_COMMENT: + if (prompt) { + child_count++; + item_make(menu, ':', + " %*c*** %s ***", + indent + 1, ' ', + _(prompt)); + } + break; + default: + if (prompt) { + child_count++; + item_make(menu, ':', "---%*c%s", + indent + 1, ' ', + _(prompt)); + } + } + } else + doint = 0; + goto conf_childs; + } + + type = sym_get_type(sym); + if (sym_is_choice(sym)) { + struct symbol *def_sym = sym_get_choice_value(sym); + struct menu *def_menu = NULL; + + child_count++; + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child) && child->sym == def_sym) + def_menu = child; + } + + val = sym_get_tristate_value(sym); + if (sym_is_changable(sym)) { + switch (type) { + case S_BOOLEAN: + item_make(menu, 't', "[%c]", + val == no ? ' ' : '*'); + break; + case S_TRISTATE: + switch (val) { + case yes: + ch = '*'; + break; + case mod: + ch = 'M'; + break; + default: + ch = ' '; + break; + } + item_make(menu, 't', "<%c>", ch); + break; + } + } else { + item_make(menu, def_menu ? 't' : ':', " "); + } + + item_add_str("%*c%s", indent + 1, + ' ', _(menu_get_prompt(menu))); + if (val == yes) { + if (def_menu) { + item_add_str(" (%s)", + _(menu_get_prompt(def_menu))); + item_add_str(" --->"); + if (def_menu->list) { + indent += 2; + build_conf(def_menu); + indent -= 2; + } + } + return; + } + } else { + if (menu == current_menu) { + item_make(menu, ':', + "---%*c%s", indent + 1, + ' ', _(menu_get_prompt(menu))); + goto conf_childs; + } + child_count++; + val = sym_get_tristate_value(sym); + if (sym_is_choice_value(sym) && val == yes) { + item_make(menu, ':', " "); + } else { + switch (type) { + case S_BOOLEAN: + if (sym_is_changable(sym)) + item_make(menu, 't', "[%c]", + val == no ? ' ' : '*'); + else + item_make(menu, 't', "-%c-", + val == no ? ' ' : '*'); + break; + case S_TRISTATE: + switch (val) { + case yes: + ch = '*'; + break; + case mod: + ch = 'M'; + break; + default: + ch = ' '; + break; + } + if (sym_is_changable(sym)) { + if (sym->rev_dep.tri == mod) + item_make(menu, + 't', "{%c}", ch); + else + item_make(menu, + 't', "<%c>", ch); + } else + item_make(menu, 't', "-%c-", ch); + break; + default: + tmp = 2 + strlen(sym_get_string_value(sym)); + item_make(menu, 's', " (%s)", + sym_get_string_value(sym)); + tmp = indent - tmp + 4; + if (tmp < 0) + tmp = 0; + item_add_str("%*c%s%s", tmp, ' ', + _(menu_get_prompt(menu)), + (sym_has_value(sym) || + !sym_is_changable(sym)) ? "" : + _(" (NEW)")); + goto conf_childs; + } + } + item_add_str("%*c%s%s", indent + 1, ' ', + _(menu_get_prompt(menu)), + (sym_has_value(sym) || !sym_is_changable(sym)) ? + "" : _(" (NEW)")); + if (menu->prompt && menu->prompt->type == P_MENU) { + item_add_str(" %s", menu_is_empty(menu) ? "----" : "--->"); + return; + } + } + +conf_childs: + indent += doint; + for (child = menu->list; child; child = child->next) + build_conf(child); + indent -= doint; +} + +static void reset_menu(void) +{ + unpost_menu(curses_menu); + clean_items(); +} + +/* adjust the menu to show this item. + * prefer not to scroll the menu if possible*/ +static void center_item(int selected_index, int *last_top_row) +{ + int toprow; + + set_top_row(curses_menu, *last_top_row); + toprow = top_row(curses_menu); + if (selected_index < toprow || + selected_index >= toprow+mwin_max_lines) { + toprow = max(selected_index-mwin_max_lines/2, 0); + if (toprow >= item_count(curses_menu)-mwin_max_lines) + toprow = item_count(curses_menu)-mwin_max_lines; + set_top_row(curses_menu, toprow); + } + set_current_item(curses_menu, + curses_menu_items[selected_index]); + *last_top_row = toprow; + post_menu(curses_menu); + refresh_all_windows(main_window); +} + +/* this function assumes reset_menu has been called before */ +static void show_menu(const char *prompt, const char *instructions, + int selected_index, int *last_top_row) +{ + int maxx, maxy; + WINDOW *menu_window; + + current_instructions = instructions; + + clear(); + (void) wattrset(main_window, attributes[NORMAL]); + print_in_middle(stdscr, 1, 0, getmaxx(stdscr), + menu_backtitle, + attributes[MAIN_HEADING]); + + (void) wattrset(main_window, attributes[MAIN_MENU_BOX]); + box(main_window, 0, 0); + (void) wattrset(main_window, attributes[MAIN_MENU_HEADING]); + mvwprintw(main_window, 0, 3, " %s ", prompt); + (void) wattrset(main_window, attributes[NORMAL]); + + set_menu_items(curses_menu, curses_menu_items); + + /* position the menu at the middle of the screen */ + scale_menu(curses_menu, &maxy, &maxx); + maxx = min(maxx, mwin_max_cols-2); + maxy = mwin_max_lines; + menu_window = derwin(main_window, + maxy, + maxx, + 2, + (mwin_max_cols-maxx)/2); + keypad(menu_window, TRUE); + set_menu_win(curses_menu, menu_window); + set_menu_sub(curses_menu, menu_window); + + /* must reassert this after changing items, otherwise returns to a + * default of 16 + */ + set_menu_format(curses_menu, maxy, 1); + center_item(selected_index, last_top_row); + set_menu_format(curses_menu, maxy, 1); + + print_function_line(); + + /* Post the menu */ + post_menu(curses_menu); + refresh_all_windows(main_window); +} + +static void adj_match_dir(match_f *match_direction) +{ + if (*match_direction == FIND_NEXT_MATCH_DOWN) + *match_direction = + MATCH_TINKER_PATTERN_DOWN; + else if (*match_direction == FIND_NEXT_MATCH_UP) + *match_direction = + MATCH_TINKER_PATTERN_UP; + /* else, do no change.. */ +} + +struct match_state +{ + int in_search; + match_f match_direction; + char pattern[256]; +}; + +/* Return 0 means I have handled the key. In such a case, ans should hold the + * item to center, or -1 otherwise. + * Else return -1 . + */ +static int do_match(int key, struct match_state *state, int *ans) +{ + char c = (char) key; + int terminate_search = 0; + *ans = -1; + if (key == '/' || (state->in_search && key == 27)) { + move(0, 0); + refresh(); + clrtoeol(); + state->in_search = 1-state->in_search; + bzero(state->pattern, sizeof(state->pattern)); + state->match_direction = MATCH_TINKER_PATTERN_DOWN; + return 0; + } else if (!state->in_search) + return 1; + + if (isalnum(c) || isgraph(c) || c == ' ') { + state->pattern[strlen(state->pattern)] = c; + state->pattern[strlen(state->pattern)] = '\0'; + adj_match_dir(&state->match_direction); + *ans = get_mext_match(state->pattern, + state->match_direction); + } else if (key == KEY_DOWN) { + state->match_direction = FIND_NEXT_MATCH_DOWN; + *ans = get_mext_match(state->pattern, + state->match_direction); + } else if (key == KEY_UP) { + state->match_direction = FIND_NEXT_MATCH_UP; + *ans = get_mext_match(state->pattern, + state->match_direction); + } else if (key == KEY_BACKSPACE || key == 127) { + state->pattern[strlen(state->pattern)-1] = '\0'; + adj_match_dir(&state->match_direction); + } else + terminate_search = 1; + + if (terminate_search) { + state->in_search = 0; + bzero(state->pattern, sizeof(state->pattern)); + move(0, 0); + refresh(); + clrtoeol(); + return -1; + } + return 0; +} + +static void conf(struct menu *menu) +{ + struct menu *submenu = 0; + const char *prompt = menu_get_prompt(menu); + struct symbol *sym; + int res; + int current_index = 0; + int last_top_row = 0; + struct match_state match_state = { + .in_search = 0, + .match_direction = MATCH_TINKER_PATTERN_DOWN, + .pattern = "", + }; + + while (!global_exit) { + reset_menu(); + current_menu = menu; + build_conf(menu); + if (!child_count) + break; + + show_menu(prompt ? _(prompt) : _("Main Menu"), + _(menu_instructions), + current_index, &last_top_row); + keypad((menu_win(curses_menu)), TRUE); + while (!global_exit) { + if (match_state.in_search) { + mvprintw(0, 0, + "searching: %s", match_state.pattern); + clrtoeol(); + } + refresh_all_windows(main_window); + res = wgetch(menu_win(curses_menu)); + if (!res) + break; + if (do_match(res, &match_state, ¤t_index) == 0) { + if (current_index != -1) + center_item(current_index, + &last_top_row); + continue; + } + if (process_special_keys(&res, + (struct menu *) item_data())) + break; + switch (res) { + case KEY_DOWN: + menu_driver(curses_menu, REQ_DOWN_ITEM); + break; + case KEY_UP: + menu_driver(curses_menu, REQ_UP_ITEM); + break; + case KEY_NPAGE: + menu_driver(curses_menu, REQ_SCR_DPAGE); + break; + case KEY_PPAGE: + menu_driver(curses_menu, REQ_SCR_UPAGE); + break; + case KEY_HOME: + menu_driver(curses_menu, REQ_FIRST_ITEM); + break; + case KEY_END: + menu_driver(curses_menu, REQ_LAST_ITEM); + break; + case 'h': + case '?': + show_help((struct menu *) item_data()); + break; + } + if (res == 10 || res == 27 || + res == 32 || res == 'n' || res == 'y' || + res == KEY_LEFT || res == KEY_RIGHT || + res == 'm') + break; + refresh_all_windows(main_window); + } + + refresh_all_windows(main_window); + /* if ESC or left*/ + if (res == 27 || (menu != &rootmenu && res == KEY_LEFT)) + break; + + /* remember location in the menu */ + last_top_row = top_row(curses_menu); + current_index = curses_item_index(); + + if (!item_tag()) + continue; + + submenu = (struct menu *) item_data(); + if (!submenu || !menu_is_visible(submenu)) + continue; + sym = submenu->sym; + + switch (res) { + case ' ': + if (item_is_tag('t')) + sym_toggle_tristate_value(sym); + else if (item_is_tag('m')) + conf(submenu); + break; + case KEY_RIGHT: + case 10: /* ENTER WAS PRESSED */ + switch (item_tag()) { + case 'm': + if (single_menu_mode) + submenu->data = + (void *) (long) !submenu->data; + else + conf(submenu); + break; + case 't': + if (sym_is_choice(sym) && + sym_get_tristate_value(sym) == yes) + conf_choice(submenu); + else if (submenu->prompt && + submenu->prompt->type == P_MENU) + conf(submenu); + else if (res == 10) + sym_toggle_tristate_value(sym); + break; + case 's': + conf_string(submenu); + break; + } + break; + case 'y': + if (item_is_tag('t')) { + if (sym_set_tristate_value(sym, yes)) + break; + if (sym_set_tristate_value(sym, mod)) + btn_dialog(main_window, setmod_text, 0); + } + break; + case 'n': + if (item_is_tag('t')) + sym_set_tristate_value(sym, no); + break; + case 'm': + if (item_is_tag('t')) + sym_set_tristate_value(sym, mod); + break; + } + } +} + +static void conf_message_callback(const char *fmt, va_list ap) +{ + char buf[1024]; + + vsnprintf(buf, sizeof(buf), fmt, ap); + btn_dialog(main_window, buf, 1, "<OK>"); +} + +static void show_help(struct menu *menu) +{ + struct gstr help; + + if (!menu) + return; + + help = str_new(); + menu_get_ext_help(menu, &help); + show_scroll_win(main_window, _(menu_get_prompt(menu)), str_get(&help)); + str_free(&help); +} + +static void conf_choice(struct menu *menu) +{ + const char *prompt = _(menu_get_prompt(menu)); + struct menu *child = 0; + struct symbol *active; + int selected_index = 0; + int last_top_row = 0; + int res, i = 0; + struct match_state match_state = { + .in_search = 0, + .match_direction = MATCH_TINKER_PATTERN_DOWN, + .pattern = "", + }; + + active = sym_get_choice_value(menu->sym); + /* this is mostly duplicated from the conf() function. */ + while (!global_exit) { + reset_menu(); + + for (i = 0, child = menu->list; child; child = child->next) { + if (!show_all_items && !menu_is_visible(child)) + continue; + + if (child->sym == sym_get_choice_value(menu->sym)) + item_make(child, ':', "<X> %s", + _(menu_get_prompt(child))); + else if (child->sym) + item_make(child, ':', " %s", + _(menu_get_prompt(child))); + else + item_make(child, ':', "*** %s ***", + _(menu_get_prompt(child))); + + if (child->sym == active){ + last_top_row = top_row(curses_menu); + selected_index = i; + } + i++; + } + show_menu(prompt ? _(prompt) : _("Choice Menu"), + _(radiolist_instructions), + selected_index, + &last_top_row); + while (!global_exit) { + if (match_state.in_search) { + mvprintw(0, 0, "searching: %s", + match_state.pattern); + clrtoeol(); + } + refresh_all_windows(main_window); + res = wgetch(menu_win(curses_menu)); + if (!res) + break; + if (do_match(res, &match_state, &selected_index) == 0) { + if (selected_index != -1) + center_item(selected_index, + &last_top_row); + continue; + } + if (process_special_keys( + &res, + (struct menu *) item_data())) + break; + switch (res) { + case KEY_DOWN: + menu_driver(curses_menu, REQ_DOWN_ITEM); + break; + case KEY_UP: + menu_driver(curses_menu, REQ_UP_ITEM); + break; + case KEY_NPAGE: + menu_driver(curses_menu, REQ_SCR_DPAGE); + break; + case KEY_PPAGE: + menu_driver(curses_menu, REQ_SCR_UPAGE); + break; + case KEY_HOME: + menu_driver(curses_menu, REQ_FIRST_ITEM); + break; + case KEY_END: + menu_driver(curses_menu, REQ_LAST_ITEM); + break; + case 'h': + case '?': + show_help((struct menu *) item_data()); + break; + } + if (res == 10 || res == 27 || res == ' ' || + res == KEY_LEFT){ + break; + } + refresh_all_windows(main_window); + } + /* if ESC or left */ + if (res == 27 || res == KEY_LEFT) + break; + + child = item_data(); + if (!child || !menu_is_visible(child) || !child->sym) + continue; + switch (res) { + case ' ': + case 10: + case KEY_RIGHT: + sym_set_tristate_value(child->sym, yes); + return; + case 'h': + case '?': + show_help(child); + active = child->sym; + break; + case KEY_EXIT: + return; + } + } +} + +static void conf_string(struct menu *menu) +{ + const char *prompt = menu_get_prompt(menu); + + while (1) { + int res; + const char *heading; + + switch (sym_get_type(menu->sym)) { + case S_INT: + heading = _(inputbox_instructions_int); + break; + case S_HEX: + heading = _(inputbox_instructions_hex); + break; + case S_STRING: + heading = _(inputbox_instructions_string); + break; + default: + heading = _("Internal nconf error!"); + } + res = dialog_inputbox(main_window, + prompt ? _(prompt) : _("Main Menu"), + heading, + sym_get_string_value(menu->sym), + &dialog_input_result, + &dialog_input_result_len); + switch (res) { + case 0: + if (sym_set_string_value(menu->sym, + dialog_input_result)) + return; + btn_dialog(main_window, + _("You have made an invalid entry."), 0); + break; + case 1: + show_help(menu); + break; + case KEY_EXIT: + return; + } + } +} + +static void conf_load(void) +{ + while (1) { + int res; + res = dialog_inputbox(main_window, + NULL, load_config_text, + filename, + &dialog_input_result, + &dialog_input_result_len); + switch (res) { + case 0: + if (!dialog_input_result[0]) + return; + if (!conf_read(dialog_input_result)) { + set_config_filename(dialog_input_result); + sym_set_change_count(1); + return; + } + btn_dialog(main_window, _("File does not exist!"), 0); + break; + case 1: + show_scroll_win(main_window, + _("Load Alternate Configuration"), + load_config_help); + break; + case KEY_EXIT: + return; + } + } +} + +static void conf_save(void) +{ + while (1) { + int res; + res = dialog_inputbox(main_window, + NULL, save_config_text, + filename, + &dialog_input_result, + &dialog_input_result_len); + switch (res) { + case 0: + if (!dialog_input_result[0]) + return; + res = conf_write(dialog_input_result); + if (!res) { + set_config_filename(dialog_input_result); + return; + } + btn_dialog(main_window, _("Can't create file! " + "Probably a nonexistent directory."), + 1, "<OK>"); + break; + case 1: + show_scroll_win(main_window, + _("Save Alternate Configuration"), + save_config_help); + break; + case KEY_EXIT: + return; + } + } +} + +void setup_windows(void) +{ + int lines, columns; + + getmaxyx(stdscr, lines, columns); + + if (main_window != NULL) + delwin(main_window); + + /* set up the menu and menu window */ + main_window = newwin(lines-2, columns-2, 2, 1); + keypad(main_window, TRUE); + mwin_max_lines = lines-7; + mwin_max_cols = columns-6; + + /* panels order is from bottom to top */ + new_panel(main_window); +} + +int main(int ac, char **av) +{ + int lines, columns; + char *mode; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + conf_parse(av[1]); + conf_read(NULL); + + mode = getenv("NCONFIG_MODE"); + if (mode) { + if (!strcasecmp(mode, "single_menu")) + single_menu_mode = 1; + } + + /* Initialize curses */ + initscr(); + /* set color theme */ + set_colors(); + + cbreak(); + noecho(); + keypad(stdscr, TRUE); + curs_set(0); + + getmaxyx(stdscr, lines, columns); + if (columns < 75 || lines < 20) { + endwin(); + printf("Your terminal should have at " + "least 20 lines and 75 columns\n"); + return 1; + } + + notimeout(stdscr, FALSE); +#if NCURSES_REENTRANT + set_escdelay(1); +#else + ESCDELAY = 1; +#endif + + /* set btns menu */ + curses_menu = new_menu(curses_menu_items); + menu_opts_off(curses_menu, O_SHOWDESC); + menu_opts_on(curses_menu, O_SHOWMATCH); + menu_opts_on(curses_menu, O_ONEVALUE); + menu_opts_on(curses_menu, O_NONCYCLIC); + menu_opts_on(curses_menu, O_IGNORECASE); + set_menu_mark(curses_menu, " "); + set_menu_fore(curses_menu, attributes[MAIN_MENU_FORE]); + set_menu_back(curses_menu, attributes[MAIN_MENU_BACK]); + set_menu_grey(curses_menu, attributes[MAIN_MENU_GREY]); + + set_config_filename(conf_get_configname()); + setup_windows(); + + /* check for KEY_FUNC(1) */ + if (has_key(KEY_F(1)) == FALSE) { + show_scroll_win(main_window, + _("Instructions"), + _(menu_no_f_instructions)); + } + + conf_set_message_callback(conf_message_callback); + /* do the work */ + while (!global_exit) { + conf(&rootmenu); + if (!global_exit && do_exit() == 0) + break; + } + /* ok, we are done */ + unpost_menu(curses_menu); + free_menu(curses_menu); + delwin(main_window); + clear(); + refresh(); + endwin(); + return 0; +} diff --git a/scripts/kconfig/nconf.gui.c b/scripts/kconfig/nconf.gui.c new file mode 100644 index 0000000..8275f0e --- /dev/null +++ b/scripts/kconfig/nconf.gui.c @@ -0,0 +1,656 @@ +/* + * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com? + * Released under the terms of the GNU GPL v2.0. + * + * Derived from menuconfig. + * + */ +#include "nconf.h" + +/* a list of all the different widgets we use */ +attributes_t attributes[ATTR_MAX+1] = {0}; + +/* available colors: + COLOR_BLACK 0 + COLOR_RED 1 + COLOR_GREEN 2 + COLOR_YELLOW 3 + COLOR_BLUE 4 + COLOR_MAGENTA 5 + COLOR_CYAN 6 + COLOR_WHITE 7 + */ +static void set_normal_colors(void) +{ + init_pair(NORMAL, -1, -1); + init_pair(MAIN_HEADING, COLOR_MAGENTA, -1); + + /* FORE is for the selected item */ + init_pair(MAIN_MENU_FORE, -1, -1); + /* BACK for all the rest */ + init_pair(MAIN_MENU_BACK, -1, -1); + init_pair(MAIN_MENU_GREY, -1, -1); + init_pair(MAIN_MENU_HEADING, COLOR_GREEN, -1); + init_pair(MAIN_MENU_BOX, COLOR_YELLOW, -1); + + init_pair(SCROLLWIN_TEXT, -1, -1); + init_pair(SCROLLWIN_HEADING, COLOR_GREEN, -1); + init_pair(SCROLLWIN_BOX, COLOR_YELLOW, -1); + + init_pair(DIALOG_TEXT, -1, -1); + init_pair(DIALOG_BOX, COLOR_YELLOW, -1); + init_pair(DIALOG_MENU_BACK, COLOR_YELLOW, -1); + init_pair(DIALOG_MENU_FORE, COLOR_RED, -1); + + init_pair(INPUT_BOX, COLOR_YELLOW, -1); + init_pair(INPUT_HEADING, COLOR_GREEN, -1); + init_pair(INPUT_TEXT, -1, -1); + init_pair(INPUT_FIELD, -1, -1); + + init_pair(FUNCTION_HIGHLIGHT, -1, -1); + init_pair(FUNCTION_TEXT, COLOR_YELLOW, -1); +} + +/* available attributes: + A_NORMAL Normal display (no highlight) + A_STANDOUT Best highlighting mode of the terminal. + A_UNDERLINE Underlining + A_REVERSE Reverse video + A_BLINK Blinking + A_DIM Half bright + A_BOLD Extra bright or bold + A_PROTECT Protected mode + A_INVIS Invisible or blank mode + A_ALTCHARSET Alternate character set + A_CHARTEXT Bit-mask to extract a character + COLOR_PAIR(n) Color-pair number n + */ +static void normal_color_theme(void) +{ + /* automatically add color... */ +#define mkattr(name, attr) do { \ +attributes[name] = attr | COLOR_PAIR(name); } while (0) + mkattr(NORMAL, NORMAL); + mkattr(MAIN_HEADING, A_BOLD | A_UNDERLINE); + + mkattr(MAIN_MENU_FORE, A_REVERSE); + mkattr(MAIN_MENU_BACK, A_NORMAL); + mkattr(MAIN_MENU_GREY, A_NORMAL); + mkattr(MAIN_MENU_HEADING, A_BOLD); + mkattr(MAIN_MENU_BOX, A_NORMAL); + + mkattr(SCROLLWIN_TEXT, A_NORMAL); + mkattr(SCROLLWIN_HEADING, A_BOLD); + mkattr(SCROLLWIN_BOX, A_BOLD); + + mkattr(DIALOG_TEXT, A_BOLD); + mkattr(DIALOG_BOX, A_BOLD); + mkattr(DIALOG_MENU_FORE, A_STANDOUT); + mkattr(DIALOG_MENU_BACK, A_NORMAL); + + mkattr(INPUT_BOX, A_NORMAL); + mkattr(INPUT_HEADING, A_BOLD); + mkattr(INPUT_TEXT, A_NORMAL); + mkattr(INPUT_FIELD, A_UNDERLINE); + + mkattr(FUNCTION_HIGHLIGHT, A_BOLD); + mkattr(FUNCTION_TEXT, A_REVERSE); +} + +static void no_colors_theme(void) +{ + /* automatically add highlight, no color */ +#define mkattrn(name, attr) { attributes[name] = attr; } + + mkattrn(NORMAL, NORMAL); + mkattrn(MAIN_HEADING, A_BOLD | A_UNDERLINE); + + mkattrn(MAIN_MENU_FORE, A_STANDOUT); + mkattrn(MAIN_MENU_BACK, A_NORMAL); + mkattrn(MAIN_MENU_GREY, A_NORMAL); + mkattrn(MAIN_MENU_HEADING, A_BOLD); + mkattrn(MAIN_MENU_BOX, A_NORMAL); + + mkattrn(SCROLLWIN_TEXT, A_NORMAL); + mkattrn(SCROLLWIN_HEADING, A_BOLD); + mkattrn(SCROLLWIN_BOX, A_BOLD); + + mkattrn(DIALOG_TEXT, A_NORMAL); + mkattrn(DIALOG_BOX, A_BOLD); + mkattrn(DIALOG_MENU_FORE, A_STANDOUT); + mkattrn(DIALOG_MENU_BACK, A_NORMAL); + + mkattrn(INPUT_BOX, A_BOLD); + mkattrn(INPUT_HEADING, A_BOLD); + mkattrn(INPUT_TEXT, A_NORMAL); + mkattrn(INPUT_FIELD, A_UNDERLINE); + + mkattrn(FUNCTION_HIGHLIGHT, A_BOLD); + mkattrn(FUNCTION_TEXT, A_REVERSE); +} + +void set_colors() +{ + start_color(); + use_default_colors(); + set_normal_colors(); + if (has_colors()) { + normal_color_theme(); + } else { + /* give defaults */ + no_colors_theme(); + } +} + + +/* this changes the windows attributes !!! */ +void print_in_middle(WINDOW *win, + int starty, + int startx, + int width, + const char *string, + chtype color) +{ int length, x, y; + float temp; + + + if (win == NULL) + win = stdscr; + getyx(win, y, x); + if (startx != 0) + x = startx; + if (starty != 0) + y = starty; + if (width == 0) + width = 80; + + length = strlen(string); + temp = (width - length) / 2; + x = startx + (int)temp; + (void) wattrset(win, color); + mvwprintw(win, y, x, "%s", string); + refresh(); +} + +int get_line_no(const char *text) +{ + int i; + int total = 1; + + if (!text) + return 0; + + for (i = 0; text[i] != '\0'; i++) + if (text[i] == '\n') + total++; + return total; +} + +const char *get_line(const char *text, int line_no) +{ + int i; + int lines = 0; + + if (!text) + return 0; + + for (i = 0; text[i] != '\0' && lines < line_no; i++) + if (text[i] == '\n') + lines++; + return text+i; +} + +int get_line_length(const char *line) +{ + int res = 0; + while (*line != '\0' && *line != '\n') { + line++; + res++; + } + return res; +} + +/* print all lines to the window. */ +void fill_window(WINDOW *win, const char *text) +{ + int x, y; + int total_lines = get_line_no(text); + int i; + + getmaxyx(win, y, x); + /* do not go over end of line */ + total_lines = min(total_lines, y); + for (i = 0; i < total_lines; i++) { + char tmp[x+10]; + const char *line = get_line(text, i); + int len = get_line_length(line); + strncpy(tmp, line, min(len, x)); + tmp[len] = '\0'; + mvwprintw(win, i, 0, "%s", tmp); + } +} + +/* get the message, and buttons. + * each button must be a char* + * return the selected button + * + * this dialog is used for 2 different things: + * 1) show a text box, no buttons. + * 2) show a dialog, with horizontal buttons + */ +int btn_dialog(WINDOW *main_window, const char *msg, int btn_num, ...) +{ + va_list ap; + char *btn; + int btns_width = 0; + int msg_lines = 0; + int msg_width = 0; + int total_width; + int win_rows = 0; + WINDOW *win; + WINDOW *msg_win; + WINDOW *menu_win; + MENU *menu; + ITEM *btns[btn_num+1]; + int i, x, y; + int res = -1; + + + va_start(ap, btn_num); + for (i = 0; i < btn_num; i++) { + btn = va_arg(ap, char *); + btns[i] = new_item(btn, ""); + btns_width += strlen(btn)+1; + } + va_end(ap); + btns[btn_num] = NULL; + + /* find the widest line of msg: */ + msg_lines = get_line_no(msg); + for (i = 0; i < msg_lines; i++) { + const char *line = get_line(msg, i); + int len = get_line_length(line); + if (msg_width < len) + msg_width = len; + } + + total_width = max(msg_width, btns_width); + /* place dialog in middle of screen */ + y = (getmaxy(stdscr)-(msg_lines+4))/2; + x = (getmaxx(stdscr)-(total_width+4))/2; + + + /* create the windows */ + if (btn_num > 0) + win_rows = msg_lines+4; + else + win_rows = msg_lines+2; + + win = newwin(win_rows, total_width+4, y, x); + keypad(win, TRUE); + menu_win = derwin(win, 1, btns_width, win_rows-2, + 1+(total_width+2-btns_width)/2); + menu = new_menu(btns); + msg_win = derwin(win, win_rows-2, msg_width, 1, + 1+(total_width+2-msg_width)/2); + + set_menu_fore(menu, attributes[DIALOG_MENU_FORE]); + set_menu_back(menu, attributes[DIALOG_MENU_BACK]); + + (void) wattrset(win, attributes[DIALOG_BOX]); + box(win, 0, 0); + + /* print message */ + (void) wattrset(msg_win, attributes[DIALOG_TEXT]); + fill_window(msg_win, msg); + + set_menu_win(menu, win); + set_menu_sub(menu, menu_win); + set_menu_format(menu, 1, btn_num); + menu_opts_off(menu, O_SHOWDESC); + menu_opts_off(menu, O_SHOWMATCH); + menu_opts_on(menu, O_ONEVALUE); + menu_opts_on(menu, O_NONCYCLIC); + set_menu_mark(menu, ""); + post_menu(menu); + + + touchwin(win); + refresh_all_windows(main_window); + while ((res = wgetch(win))) { + switch (res) { + case KEY_LEFT: + menu_driver(menu, REQ_LEFT_ITEM); + break; + case KEY_RIGHT: + menu_driver(menu, REQ_RIGHT_ITEM); + break; + case 10: /* ENTER */ + case 27: /* ESCAPE */ + case ' ': + case KEY_F(F_BACK): + case KEY_F(F_EXIT): + break; + } + touchwin(win); + refresh_all_windows(main_window); + + if (res == 10 || res == ' ') { + res = item_index(current_item(menu)); + break; + } else if (res == 27 || res == KEY_F(F_BACK) || + res == KEY_F(F_EXIT)) { + res = KEY_EXIT; + break; + } + } + + unpost_menu(menu); + free_menu(menu); + for (i = 0; i < btn_num; i++) + free_item(btns[i]); + + delwin(win); + return res; +} + +int dialog_inputbox(WINDOW *main_window, + const char *title, const char *prompt, + const char *init, char **resultp, int *result_len) +{ + int prompt_lines = 0; + int prompt_width = 0; + WINDOW *win; + WINDOW *prompt_win; + WINDOW *form_win; + PANEL *panel; + int i, x, y; + int res = -1; + int cursor_position = strlen(init); + int cursor_form_win; + char *result = *resultp; + + if (strlen(init)+1 > *result_len) { + *result_len = strlen(init)+1; + *resultp = result = realloc(result, *result_len); + } + + /* find the widest line of msg: */ + prompt_lines = get_line_no(prompt); + for (i = 0; i < prompt_lines; i++) { + const char *line = get_line(prompt, i); + int len = get_line_length(line); + prompt_width = max(prompt_width, len); + } + + if (title) + prompt_width = max(prompt_width, strlen(title)); + + /* place dialog in middle of screen */ + y = (getmaxy(stdscr)-(prompt_lines+4))/2; + x = (getmaxx(stdscr)-(prompt_width+4))/2; + + strncpy(result, init, *result_len); + + /* create the windows */ + win = newwin(prompt_lines+6, prompt_width+7, y, x); + prompt_win = derwin(win, prompt_lines+1, prompt_width, 2, 2); + form_win = derwin(win, 1, prompt_width, prompt_lines+3, 2); + keypad(form_win, TRUE); + + (void) wattrset(form_win, attributes[INPUT_FIELD]); + + (void) wattrset(win, attributes[INPUT_BOX]); + box(win, 0, 0); + (void) wattrset(win, attributes[INPUT_HEADING]); + if (title) + mvwprintw(win, 0, 3, "%s", title); + + /* print message */ + (void) wattrset(prompt_win, attributes[INPUT_TEXT]); + fill_window(prompt_win, prompt); + + mvwprintw(form_win, 0, 0, "%*s", prompt_width, " "); + cursor_form_win = min(cursor_position, prompt_width-1); + mvwprintw(form_win, 0, 0, "%s", + result + cursor_position-cursor_form_win); + + /* create panels */ + panel = new_panel(win); + + /* show the cursor */ + curs_set(1); + + touchwin(win); + refresh_all_windows(main_window); + while ((res = wgetch(form_win))) { + int len = strlen(result); + switch (res) { + case 10: /* ENTER */ + case 27: /* ESCAPE */ + case KEY_F(F_HELP): + case KEY_F(F_EXIT): + case KEY_F(F_BACK): + break; + case 127: + case KEY_BACKSPACE: + if (cursor_position > 0) { + memmove(&result[cursor_position-1], + &result[cursor_position], + len-cursor_position+1); + cursor_position--; + cursor_form_win--; + len--; + } + break; + case KEY_DC: + if (cursor_position >= 0 && cursor_position < len) { + memmove(&result[cursor_position], + &result[cursor_position+1], + len-cursor_position+1); + len--; + } + break; + case KEY_UP: + case KEY_RIGHT: + if (cursor_position < len) { + cursor_position++; + cursor_form_win++; + } + break; + case KEY_DOWN: + case KEY_LEFT: + if (cursor_position > 0) { + cursor_position--; + cursor_form_win--; + } + break; + case KEY_HOME: + cursor_position = 0; + cursor_form_win = 0; + break; + case KEY_END: + cursor_position = len; + cursor_form_win = min(cursor_position, prompt_width-1); + break; + default: + if ((isgraph(res) || isspace(res))) { + /* one for new char, one for '\0' */ + if (len+2 > *result_len) { + *result_len = len+2; + *resultp = result = realloc(result, + *result_len); + } + /* insert the char at the proper position */ + memmove(&result[cursor_position+1], + &result[cursor_position], + len-cursor_position+1); + result[cursor_position] = res; + cursor_position++; + cursor_form_win++; + len++; + } else { + mvprintw(0, 0, "unknown key: %d\n", res); + } + break; + } + if (cursor_form_win < 0) + cursor_form_win = 0; + else if (cursor_form_win > prompt_width-1) + cursor_form_win = prompt_width-1; + + wmove(form_win, 0, 0); + wclrtoeol(form_win); + mvwprintw(form_win, 0, 0, "%*s", prompt_width, " "); + mvwprintw(form_win, 0, 0, "%s", + result + cursor_position-cursor_form_win); + wmove(form_win, 0, cursor_form_win); + touchwin(win); + refresh_all_windows(main_window); + + if (res == 10) { + res = 0; + break; + } else if (res == 27 || res == KEY_F(F_BACK) || + res == KEY_F(F_EXIT)) { + res = KEY_EXIT; + break; + } else if (res == KEY_F(F_HELP)) { + res = 1; + break; + } + } + + /* hide the cursor */ + curs_set(0); + del_panel(panel); + delwin(prompt_win); + delwin(form_win); + delwin(win); + return res; +} + +/* refresh all windows in the correct order */ +void refresh_all_windows(WINDOW *main_window) +{ + update_panels(); + touchwin(main_window); + refresh(); +} + +/* layman's scrollable window... */ +void show_scroll_win(WINDOW *main_window, + const char *title, + const char *text) +{ + int res; + int total_lines = get_line_no(text); + int x, y, lines, columns; + int start_x = 0, start_y = 0; + int text_lines = 0, text_cols = 0; + int total_cols = 0; + int win_cols = 0; + int win_lines = 0; + int i = 0; + WINDOW *win; + WINDOW *pad; + PANEL *panel; + + getmaxyx(stdscr, lines, columns); + + /* find the widest line of msg: */ + total_lines = get_line_no(text); + for (i = 0; i < total_lines; i++) { + const char *line = get_line(text, i); + int len = get_line_length(line); + total_cols = max(total_cols, len+2); + } + + /* create the pad */ + pad = newpad(total_lines+10, total_cols+10); + (void) wattrset(pad, attributes[SCROLLWIN_TEXT]); + fill_window(pad, text); + + win_lines = min(total_lines+4, lines-2); + win_cols = min(total_cols+2, columns-2); + text_lines = max(win_lines-4, 0); + text_cols = max(win_cols-2, 0); + + /* place window in middle of screen */ + y = (lines-win_lines)/2; + x = (columns-win_cols)/2; + + win = newwin(win_lines, win_cols, y, x); + keypad(win, TRUE); + /* show the help in the help window, and show the help panel */ + (void) wattrset(win, attributes[SCROLLWIN_BOX]); + box(win, 0, 0); + (void) wattrset(win, attributes[SCROLLWIN_HEADING]); + mvwprintw(win, 0, 3, " %s ", title); + panel = new_panel(win); + + /* handle scrolling */ + do { + + copywin(pad, win, start_y, start_x, 2, 2, text_lines, + text_cols, 0); + print_in_middle(win, + text_lines+2, + 0, + text_cols, + "<OK>", + attributes[DIALOG_MENU_FORE]); + wrefresh(win); + + res = wgetch(win); + switch (res) { + case KEY_NPAGE: + case ' ': + case 'd': + start_y += text_lines-2; + break; + case KEY_PPAGE: + case 'u': + start_y -= text_lines+2; + break; + case KEY_HOME: + start_y = 0; + break; + case KEY_END: + start_y = total_lines-text_lines; + break; + case KEY_DOWN: + case 'j': + start_y++; + break; + case KEY_UP: + case 'k': + start_y--; + break; + case KEY_LEFT: + case 'h': + start_x--; + break; + case KEY_RIGHT: + case 'l': + start_x++; + break; + } + if (res == 10 || res == 27 || res == 'q' || + res == KEY_F(F_HELP) || res == KEY_F(F_BACK) || + res == KEY_F(F_EXIT)) + break; + if (start_y < 0) + start_y = 0; + if (start_y >= total_lines-text_lines) + start_y = total_lines-text_lines; + if (start_x < 0) + start_x = 0; + if (start_x >= total_cols-text_cols) + start_x = total_cols-text_cols; + } while (res); + + del_panel(panel); + delwin(win); + refresh_all_windows(main_window); +} diff --git a/scripts/kconfig/nconf.h b/scripts/kconfig/nconf.h new file mode 100644 index 0000000..0d52617 --- /dev/null +++ b/scripts/kconfig/nconf.h @@ -0,0 +1,96 @@ +/* + * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com? + * Released under the terms of the GNU GPL v2.0. + * + * Derived from menuconfig. + * + */ + +#include <ctype.h> +#include <errno.h> +#include <fcntl.h> +#include <limits.h> +#include <stdarg.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> +#include <locale.h> +#include <curses.h> +#include <menu.h> +#include <panel.h> +#include <form.h> + +#include <stdio.h> +#include <time.h> +#include <sys/time.h> + +#include "ncurses.h" + +#define max(a, b) ({\ + typeof(a) _a = a;\ + typeof(b) _b = b;\ + _a > _b ? _a : _b; }) + +#define min(a, b) ({\ + typeof(a) _a = a;\ + typeof(b) _b = b;\ + _a < _b ? _a : _b; }) + +typedef enum { + NORMAL = 1, + MAIN_HEADING, + MAIN_MENU_BOX, + MAIN_MENU_FORE, + MAIN_MENU_BACK, + MAIN_MENU_GREY, + MAIN_MENU_HEADING, + SCROLLWIN_TEXT, + SCROLLWIN_HEADING, + SCROLLWIN_BOX, + DIALOG_TEXT, + DIALOG_MENU_FORE, + DIALOG_MENU_BACK, + DIALOG_BOX, + INPUT_BOX, + INPUT_HEADING, + INPUT_TEXT, + INPUT_FIELD, + FUNCTION_TEXT, + FUNCTION_HIGHLIGHT, + ATTR_MAX +} attributes_t; +extern attributes_t attributes[]; + +typedef enum { + F_HELP = 1, + F_SYMBOL = 2, + F_INSTS = 3, + F_CONF = 4, + F_BACK = 5, + F_SAVE = 6, + F_LOAD = 7, + F_SEARCH = 8, + F_EXIT = 9, +} function_key; + +void set_colors(void); + +/* this changes the windows attributes !!! */ +void print_in_middle(WINDOW *win, + int starty, + int startx, + int width, + const char *string, + chtype color); +int get_line_length(const char *line); +int get_line_no(const char *text); +const char *get_line(const char *text, int line_no); +void fill_window(WINDOW *win, const char *text); +int btn_dialog(WINDOW *main_window, const char *msg, int btn_num, ...); +int dialog_inputbox(WINDOW *main_window, + const char *title, const char *prompt, + const char *init, char **resultp, int *result_len); +void refresh_all_windows(WINDOW *main_window); +void show_scroll_win(WINDOW *main_window, + const char *title, + const char *text); diff --git a/scripts/kconfig/qconf.cc b/scripts/kconfig/qconf.cc new file mode 100644 index 0000000..9d3b04b --- /dev/null +++ b/scripts/kconfig/qconf.cc @@ -0,0 +1,1795 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <qglobal.h> + +#if QT_VERSION < 0x040000 +#include <stddef.h> +#include <qmainwindow.h> +#include <qvbox.h> +#include <qvaluelist.h> +#include <qtextbrowser.h> +#include <qaction.h> +#include <qheader.h> +#include <qfiledialog.h> +#include <qdragobject.h> +#include <qpopupmenu.h> +#else +#include <q3mainwindow.h> +#include <q3vbox.h> +#include <q3valuelist.h> +#include <q3textbrowser.h> +#include <q3action.h> +#include <q3header.h> +#include <q3filedialog.h> +#include <q3dragobject.h> +#include <q3popupmenu.h> +#endif + +#include <qapplication.h> +#include <qdesktopwidget.h> +#include <qtoolbar.h> +#include <qlayout.h> +#include <qsplitter.h> +#include <qlineedit.h> +#include <qlabel.h> +#include <qpushbutton.h> +#include <qmenubar.h> +#include <qmessagebox.h> +#include <qregexp.h> +#include <qevent.h> + +#include <stdlib.h> + +#include "lkc.h" +#include "qconf.h" + +#include "qconf.moc" +#include "images.c" + +#ifdef _ +# undef _ +# define _ qgettext +#endif + +static QApplication *configApp; +static ConfigSettings *configSettings; + +Q3Action *ConfigMainWindow::saveAction; + +static inline QString qgettext(const char* str) +{ + return QString::fromLocal8Bit(gettext(str)); +} + +static inline QString qgettext(const QString& str) +{ + return QString::fromLocal8Bit(gettext(str.latin1())); +} + +ConfigSettings::ConfigSettings() + : QSettings("kernel.org", "qconf") +{ +} + +/** + * Reads a list of integer values from the application settings. + */ +Q3ValueList<int> ConfigSettings::readSizes(const QString& key, bool *ok) +{ + Q3ValueList<int> result; + QStringList entryList = readListEntry(key, ok); + QStringList::Iterator it; + + for (it = entryList.begin(); it != entryList.end(); ++it) + result.push_back((*it).toInt()); + + return result; +} + +/** + * Writes a list of integer values to the application settings. + */ +bool ConfigSettings::writeSizes(const QString& key, const Q3ValueList<int>& value) +{ + QStringList stringList; + Q3ValueList<int>::ConstIterator it; + + for (it = value.begin(); it != value.end(); ++it) + stringList.push_back(QString::number(*it)); + return writeEntry(key, stringList); +} + + +/* + * set the new data + * TODO check the value + */ +void ConfigItem::okRename(int col) +{ + Parent::okRename(col); + sym_set_string_value(menu->sym, text(dataColIdx).latin1()); + listView()->updateList(this); +} + +/* + * update the displayed of a menu entry + */ +void ConfigItem::updateMenu(void) +{ + ConfigList* list; + struct symbol* sym; + struct property *prop; + QString prompt; + int type; + tristate expr; + + list = listView(); + if (goParent) { + setPixmap(promptColIdx, list->menuBackPix); + prompt = ".."; + goto set_prompt; + } + + sym = menu->sym; + prop = menu->prompt; + prompt = _(menu_get_prompt(menu)); + + if (prop) switch (prop->type) { + case P_MENU: + if (list->mode == singleMode || list->mode == symbolMode) { + /* a menuconfig entry is displayed differently + * depending whether it's at the view root or a child. + */ + if (sym && list->rootEntry == menu) + break; + setPixmap(promptColIdx, list->menuPix); + } else { + if (sym) + break; + setPixmap(promptColIdx, 0); + } + goto set_prompt; + case P_COMMENT: + setPixmap(promptColIdx, 0); + goto set_prompt; + default: + ; + } + if (!sym) + goto set_prompt; + + setText(nameColIdx, QString::fromLocal8Bit(sym->name)); + + type = sym_get_type(sym); + switch (type) { + case S_BOOLEAN: + case S_TRISTATE: + char ch; + + if (!sym_is_changable(sym) && list->optMode == normalOpt) { + setPixmap(promptColIdx, 0); + setText(noColIdx, QString::null); + setText(modColIdx, QString::null); + setText(yesColIdx, QString::null); + break; + } + expr = sym_get_tristate_value(sym); + switch (expr) { + case yes: + if (sym_is_choice_value(sym) && type == S_BOOLEAN) + setPixmap(promptColIdx, list->choiceYesPix); + else + setPixmap(promptColIdx, list->symbolYesPix); + setText(yesColIdx, "Y"); + ch = 'Y'; + break; + case mod: + setPixmap(promptColIdx, list->symbolModPix); + setText(modColIdx, "M"); + ch = 'M'; + break; + default: + if (sym_is_choice_value(sym) && type == S_BOOLEAN) + setPixmap(promptColIdx, list->choiceNoPix); + else + setPixmap(promptColIdx, list->symbolNoPix); + setText(noColIdx, "N"); + ch = 'N'; + break; + } + if (expr != no) + setText(noColIdx, sym_tristate_within_range(sym, no) ? "_" : 0); + if (expr != mod) + setText(modColIdx, sym_tristate_within_range(sym, mod) ? "_" : 0); + if (expr != yes) + setText(yesColIdx, sym_tristate_within_range(sym, yes) ? "_" : 0); + + setText(dataColIdx, QChar(ch)); + break; + case S_INT: + case S_HEX: + case S_STRING: + const char* data; + + data = sym_get_string_value(sym); + + int i = list->mapIdx(dataColIdx); + if (i >= 0) + setRenameEnabled(i, TRUE); + setText(dataColIdx, data); + if (type == S_STRING) + prompt = QString("%1: %2").arg(prompt).arg(data); + else + prompt = QString("(%2) %1").arg(prompt).arg(data); + break; + } + if (!sym_has_value(sym) && visible) + prompt += _(" (NEW)"); +set_prompt: + setText(promptColIdx, prompt); +} + +void ConfigItem::testUpdateMenu(bool v) +{ + ConfigItem* i; + + visible = v; + if (!menu) + return; + + sym_calc_value(menu->sym); + if (menu->flags & MENU_CHANGED) { + /* the menu entry changed, so update all list items */ + menu->flags &= ~MENU_CHANGED; + for (i = (ConfigItem*)menu->data; i; i = i->nextItem) + i->updateMenu(); + } else if (listView()->updateAll) + updateMenu(); +} + +void ConfigItem::paintCell(QPainter* p, const QColorGroup& cg, int column, int width, int align) +{ + ConfigList* list = listView(); + + if (visible) { + if (isSelected() && !list->hasFocus() && list->mode == menuMode) + Parent::paintCell(p, list->inactivedColorGroup, column, width, align); + else + Parent::paintCell(p, cg, column, width, align); + } else + Parent::paintCell(p, list->disabledColorGroup, column, width, align); +} + +/* + * construct a menu entry + */ +void ConfigItem::init(void) +{ + if (menu) { + ConfigList* list = listView(); + nextItem = (ConfigItem*)menu->data; + menu->data = this; + + if (list->mode != fullMode) + setOpen(TRUE); + sym_calc_value(menu->sym); + } + updateMenu(); +} + +/* + * destruct a menu entry + */ +ConfigItem::~ConfigItem(void) +{ + if (menu) { + ConfigItem** ip = (ConfigItem**)&menu->data; + for (; *ip; ip = &(*ip)->nextItem) { + if (*ip == this) { + *ip = nextItem; + break; + } + } + } +} + +ConfigLineEdit::ConfigLineEdit(ConfigView* parent) + : Parent(parent) +{ + connect(this, SIGNAL(lostFocus()), SLOT(hide())); +} + +void ConfigLineEdit::show(ConfigItem* i) +{ + item = i; + if (sym_get_string_value(item->menu->sym)) + setText(QString::fromLocal8Bit(sym_get_string_value(item->menu->sym))); + else + setText(QString::null); + Parent::show(); + setFocus(); +} + +void ConfigLineEdit::keyPressEvent(QKeyEvent* e) +{ + switch (e->key()) { + case Qt::Key_Escape: + break; + case Qt::Key_Return: + case Qt::Key_Enter: + sym_set_string_value(item->menu->sym, text().latin1()); + parent()->updateList(item); + break; + default: + Parent::keyPressEvent(e); + return; + } + e->accept(); + parent()->list->setFocus(); + hide(); +} + +ConfigList::ConfigList(ConfigView* p, const char *name) + : Parent(p, name), + updateAll(false), + symbolYesPix(xpm_symbol_yes), symbolModPix(xpm_symbol_mod), symbolNoPix(xpm_symbol_no), + choiceYesPix(xpm_choice_yes), choiceNoPix(xpm_choice_no), + menuPix(xpm_menu), menuInvPix(xpm_menu_inv), menuBackPix(xpm_menuback), voidPix(xpm_void), + showName(false), showRange(false), showData(false), optMode(normalOpt), + rootEntry(0), headerPopup(0) +{ + int i; + + setSorting(-1); + setRootIsDecorated(TRUE); + disabledColorGroup = palette().active(); + disabledColorGroup.setColor(QColorGroup::Text, palette().disabled().text()); + inactivedColorGroup = palette().active(); + inactivedColorGroup.setColor(QColorGroup::Highlight, palette().disabled().highlight()); + + connect(this, SIGNAL(selectionChanged(void)), + SLOT(updateSelection(void))); + + if (name) { + configSettings->beginGroup(name); + showName = configSettings->readBoolEntry("/showName", false); + showRange = configSettings->readBoolEntry("/showRange", false); + showData = configSettings->readBoolEntry("/showData", false); + optMode = (enum optionMode)configSettings->readNumEntry("/optionMode", false); + configSettings->endGroup(); + connect(configApp, SIGNAL(aboutToQuit()), SLOT(saveSettings())); + } + + for (i = 0; i < colNr; i++) + colMap[i] = colRevMap[i] = -1; + addColumn(promptColIdx, _("Option")); + + reinit(); +} + +bool ConfigList::menuSkip(struct menu *menu) +{ + if (optMode == normalOpt && menu_is_visible(menu)) + return false; + if (optMode == promptOpt && menu_has_prompt(menu)) + return false; + if (optMode == allOpt) + return false; + return true; +} + +void ConfigList::reinit(void) +{ + removeColumn(dataColIdx); + removeColumn(yesColIdx); + removeColumn(modColIdx); + removeColumn(noColIdx); + removeColumn(nameColIdx); + + if (showName) + addColumn(nameColIdx, _("Name")); + if (showRange) { + addColumn(noColIdx, "N"); + addColumn(modColIdx, "M"); + addColumn(yesColIdx, "Y"); + } + if (showData) + addColumn(dataColIdx, _("Value")); + + updateListAll(); +} + +void ConfigList::saveSettings(void) +{ + if (name()) { + configSettings->beginGroup(name()); + configSettings->writeEntry("/showName", showName); + configSettings->writeEntry("/showRange", showRange); + configSettings->writeEntry("/showData", showData); + configSettings->writeEntry("/optionMode", (int)optMode); + configSettings->endGroup(); + } +} + +ConfigItem* ConfigList::findConfigItem(struct menu *menu) +{ + ConfigItem* item = (ConfigItem*)menu->data; + + for (; item; item = item->nextItem) { + if (this == item->listView()) + break; + } + + return item; +} + +void ConfigList::updateSelection(void) +{ + struct menu *menu; + enum prop_type type; + + ConfigItem* item = (ConfigItem*)selectedItem(); + if (!item) + return; + + menu = item->menu; + emit menuChanged(menu); + if (!menu) + return; + type = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (mode == menuMode && type == P_MENU) + emit menuSelected(menu); +} + +void ConfigList::updateList(ConfigItem* item) +{ + ConfigItem* last = 0; + + if (!rootEntry) { + if (mode != listMode) + goto update; + Q3ListViewItemIterator it(this); + ConfigItem* item; + + for (; it.current(); ++it) { + item = (ConfigItem*)it.current(); + if (!item->menu) + continue; + item->testUpdateMenu(menu_is_visible(item->menu)); + } + return; + } + + if (rootEntry != &rootmenu && (mode == singleMode || + (mode == symbolMode && rootEntry->parent != &rootmenu))) { + item = firstChild(); + if (!item) + item = new ConfigItem(this, 0, true); + last = item; + } + if ((mode == singleMode || (mode == symbolMode && !(rootEntry->flags & MENU_ROOT))) && + rootEntry->sym && rootEntry->prompt) { + item = last ? last->nextSibling() : firstChild(); + if (!item) + item = new ConfigItem(this, last, rootEntry, true); + else + item->testUpdateMenu(true); + + updateMenuList(item, rootEntry); + triggerUpdate(); + return; + } +update: + updateMenuList(this, rootEntry); + triggerUpdate(); +} + +void ConfigList::setValue(ConfigItem* item, tristate val) +{ + struct symbol* sym; + int type; + tristate oldval; + + sym = item->menu ? item->menu->sym : 0; + if (!sym) + return; + + type = sym_get_type(sym); + switch (type) { + case S_BOOLEAN: + case S_TRISTATE: + oldval = sym_get_tristate_value(sym); + + if (!sym_set_tristate_value(sym, val)) + return; + if (oldval == no && item->menu->list) + item->setOpen(TRUE); + parent()->updateList(item); + break; + } +} + +void ConfigList::changeValue(ConfigItem* item) +{ + struct symbol* sym; + struct menu* menu; + int type, oldexpr, newexpr; + + menu = item->menu; + if (!menu) + return; + sym = menu->sym; + if (!sym) { + if (item->menu->list) + item->setOpen(!item->isOpen()); + return; + } + + type = sym_get_type(sym); + switch (type) { + case S_BOOLEAN: + case S_TRISTATE: + oldexpr = sym_get_tristate_value(sym); + newexpr = sym_toggle_tristate_value(sym); + if (item->menu->list) { + if (oldexpr == newexpr) + item->setOpen(!item->isOpen()); + else if (oldexpr == no) + item->setOpen(TRUE); + } + if (oldexpr != newexpr) + parent()->updateList(item); + break; + case S_INT: + case S_HEX: + case S_STRING: + if (colMap[dataColIdx] >= 0) + item->startRename(colMap[dataColIdx]); + else + parent()->lineEdit->show(item); + break; + } +} + +void ConfigList::setRootMenu(struct menu *menu) +{ + enum prop_type type; + + if (rootEntry == menu) + return; + type = menu && menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (type != P_MENU) + return; + updateMenuList(this, 0); + rootEntry = menu; + updateListAll(); + setSelected(currentItem(), hasFocus()); + ensureItemVisible(currentItem()); +} + +void ConfigList::setParentMenu(void) +{ + ConfigItem* item; + struct menu *oldroot; + + oldroot = rootEntry; + if (rootEntry == &rootmenu) + return; + setRootMenu(menu_get_parent_menu(rootEntry->parent)); + + Q3ListViewItemIterator it(this); + for (; (item = (ConfigItem*)it.current()); it++) { + if (item->menu == oldroot) { + setCurrentItem(item); + ensureItemVisible(item); + break; + } + } +} + +/* + * update all the children of a menu entry + * removes/adds the entries from the parent widget as necessary + * + * parent: either the menu list widget or a menu entry widget + * menu: entry to be updated + */ +template <class P> +void ConfigList::updateMenuList(P* parent, struct menu* menu) +{ + struct menu* child; + ConfigItem* item; + ConfigItem* last; + bool visible; + enum prop_type type; + + if (!menu) { + while ((item = parent->firstChild())) + delete item; + return; + } + + last = parent->firstChild(); + if (last && !last->goParent) + last = 0; + for (child = menu->list; child; child = child->next) { + item = last ? last->nextSibling() : parent->firstChild(); + type = child->prompt ? child->prompt->type : P_UNKNOWN; + + switch (mode) { + case menuMode: + if (!(child->flags & MENU_ROOT)) + goto hide; + break; + case symbolMode: + if (child->flags & MENU_ROOT) + goto hide; + break; + default: + break; + } + + visible = menu_is_visible(child); + if (!menuSkip(child)) { + if (!child->sym && !child->list && !child->prompt) + continue; + if (!item || item->menu != child) + item = new ConfigItem(parent, last, child, visible); + else + item->testUpdateMenu(visible); + + if (mode == fullMode || mode == menuMode || type != P_MENU) + updateMenuList(item, child); + else + updateMenuList(item, 0); + last = item; + continue; + } + hide: + if (item && item->menu == child) { + last = parent->firstChild(); + if (last == item) + last = 0; + else while (last->nextSibling() != item) + last = last->nextSibling(); + delete item; + } + } +} + +void ConfigList::keyPressEvent(QKeyEvent* ev) +{ + Q3ListViewItem* i = currentItem(); + ConfigItem* item; + struct menu *menu; + enum prop_type type; + + if (ev->key() == Qt::Key_Escape && mode != fullMode && mode != listMode) { + emit parentSelected(); + ev->accept(); + return; + } + + if (!i) { + Parent::keyPressEvent(ev); + return; + } + item = (ConfigItem*)i; + + switch (ev->key()) { + case Qt::Key_Return: + case Qt::Key_Enter: + if (item->goParent) { + emit parentSelected(); + break; + } + menu = item->menu; + if (!menu) + break; + type = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (type == P_MENU && rootEntry != menu && + mode != fullMode && mode != menuMode) { + emit menuSelected(menu); + break; + } + case Qt::Key_Space: + changeValue(item); + break; + case Qt::Key_N: + setValue(item, no); + break; + case Qt::Key_M: + setValue(item, mod); + break; + case Qt::Key_Y: + setValue(item, yes); + break; + default: + Parent::keyPressEvent(ev); + return; + } + ev->accept(); +} + +void ConfigList::contentsMousePressEvent(QMouseEvent* e) +{ + //QPoint p(contentsToViewport(e->pos())); + //printf("contentsMousePressEvent: %d,%d\n", p.x(), p.y()); + Parent::contentsMousePressEvent(e); +} + +void ConfigList::contentsMouseReleaseEvent(QMouseEvent* e) +{ + QPoint p(contentsToViewport(e->pos())); + ConfigItem* item = (ConfigItem*)itemAt(p); + struct menu *menu; + enum prop_type ptype; + const QPixmap* pm; + int idx, x; + + if (!item) + goto skip; + + menu = item->menu; + x = header()->offset() + p.x(); + idx = colRevMap[header()->sectionAt(x)]; + switch (idx) { + case promptColIdx: + pm = item->pixmap(promptColIdx); + if (pm) { + int off = header()->sectionPos(0) + itemMargin() + + treeStepSize() * (item->depth() + (rootIsDecorated() ? 1 : 0)); + if (x >= off && x < off + pm->width()) { + if (item->goParent) { + emit parentSelected(); + break; + } else if (!menu) + break; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (ptype == P_MENU && rootEntry != menu && + mode != fullMode && mode != menuMode) + emit menuSelected(menu); + else + changeValue(item); + } + } + break; + case noColIdx: + setValue(item, no); + break; + case modColIdx: + setValue(item, mod); + break; + case yesColIdx: + setValue(item, yes); + break; + case dataColIdx: + changeValue(item); + break; + } + +skip: + //printf("contentsMouseReleaseEvent: %d,%d\n", p.x(), p.y()); + Parent::contentsMouseReleaseEvent(e); +} + +void ConfigList::contentsMouseMoveEvent(QMouseEvent* e) +{ + //QPoint p(contentsToViewport(e->pos())); + //printf("contentsMouseMoveEvent: %d,%d\n", p.x(), p.y()); + Parent::contentsMouseMoveEvent(e); +} + +void ConfigList::contentsMouseDoubleClickEvent(QMouseEvent* e) +{ + QPoint p(contentsToViewport(e->pos())); + ConfigItem* item = (ConfigItem*)itemAt(p); + struct menu *menu; + enum prop_type ptype; + + if (!item) + goto skip; + if (item->goParent) { + emit parentSelected(); + goto skip; + } + menu = item->menu; + if (!menu) + goto skip; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (ptype == P_MENU && (mode == singleMode || mode == symbolMode)) + emit menuSelected(menu); + else if (menu->sym) + changeValue(item); + +skip: + //printf("contentsMouseDoubleClickEvent: %d,%d\n", p.x(), p.y()); + Parent::contentsMouseDoubleClickEvent(e); +} + +void ConfigList::focusInEvent(QFocusEvent *e) +{ + struct menu *menu = NULL; + + Parent::focusInEvent(e); + + ConfigItem* item = (ConfigItem *)currentItem(); + if (item) { + setSelected(item, TRUE); + menu = item->menu; + } + emit gotFocus(menu); +} + +void ConfigList::contextMenuEvent(QContextMenuEvent *e) +{ + if (e->y() <= header()->geometry().bottom()) { + if (!headerPopup) { + Q3Action *action; + + headerPopup = new Q3PopupMenu(this); + action = new Q3Action(NULL, _("Show Name"), 0, this); + action->setToggleAction(TRUE); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowName(bool))); + connect(parent(), SIGNAL(showNameChanged(bool)), + action, SLOT(setOn(bool))); + action->setOn(showName); + action->addTo(headerPopup); + action = new Q3Action(NULL, _("Show Range"), 0, this); + action->setToggleAction(TRUE); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowRange(bool))); + connect(parent(), SIGNAL(showRangeChanged(bool)), + action, SLOT(setOn(bool))); + action->setOn(showRange); + action->addTo(headerPopup); + action = new Q3Action(NULL, _("Show Data"), 0, this); + action->setToggleAction(TRUE); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowData(bool))); + connect(parent(), SIGNAL(showDataChanged(bool)), + action, SLOT(setOn(bool))); + action->setOn(showData); + action->addTo(headerPopup); + } + headerPopup->exec(e->globalPos()); + e->accept(); + } else + e->ignore(); +} + +ConfigView*ConfigView::viewList; +QAction *ConfigView::showNormalAction; +QAction *ConfigView::showAllAction; +QAction *ConfigView::showPromptAction; + +ConfigView::ConfigView(QWidget* parent, const char *name) + : Parent(parent, name) +{ + list = new ConfigList(this, name); + lineEdit = new ConfigLineEdit(this); + lineEdit->hide(); + + this->nextView = viewList; + viewList = this; +} + +ConfigView::~ConfigView(void) +{ + ConfigView** vp; + + for (vp = &viewList; *vp; vp = &(*vp)->nextView) { + if (*vp == this) { + *vp = nextView; + break; + } + } +} + +void ConfigView::setOptionMode(QAction *act) +{ + if (act == showNormalAction) + list->optMode = normalOpt; + else if (act == showAllAction) + list->optMode = allOpt; + else + list->optMode = promptOpt; + + list->updateListAll(); +} + +void ConfigView::setShowName(bool b) +{ + if (list->showName != b) { + list->showName = b; + list->reinit(); + emit showNameChanged(b); + } +} + +void ConfigView::setShowRange(bool b) +{ + if (list->showRange != b) { + list->showRange = b; + list->reinit(); + emit showRangeChanged(b); + } +} + +void ConfigView::setShowData(bool b) +{ + if (list->showData != b) { + list->showData = b; + list->reinit(); + emit showDataChanged(b); + } +} + +void ConfigList::setAllOpen(bool open) +{ + Q3ListViewItemIterator it(this); + + for (; it.current(); it++) + it.current()->setOpen(open); +} + +void ConfigView::updateList(ConfigItem* item) +{ + ConfigView* v; + + for (v = viewList; v; v = v->nextView) + v->list->updateList(item); +} + +void ConfigView::updateListAll(void) +{ + ConfigView* v; + + for (v = viewList; v; v = v->nextView) + v->list->updateListAll(); +} + +ConfigInfoView::ConfigInfoView(QWidget* parent, const char *name) + : Parent(parent, name), sym(0), _menu(0) +{ + if (name) { + configSettings->beginGroup(name); + _showDebug = configSettings->readBoolEntry("/showDebug", false); + configSettings->endGroup(); + connect(configApp, SIGNAL(aboutToQuit()), SLOT(saveSettings())); + } +} + +void ConfigInfoView::saveSettings(void) +{ + if (name()) { + configSettings->beginGroup(name()); + configSettings->writeEntry("/showDebug", showDebug()); + configSettings->endGroup(); + } +} + +void ConfigInfoView::setShowDebug(bool b) +{ + if (_showDebug != b) { + _showDebug = b; + if (_menu) + menuInfo(); + else if (sym) + symbolInfo(); + emit showDebugChanged(b); + } +} + +void ConfigInfoView::setInfo(struct menu *m) +{ + if (_menu == m) + return; + _menu = m; + sym = NULL; + if (!_menu) + clear(); + else + menuInfo(); +} + +void ConfigInfoView::symbolInfo(void) +{ + QString str; + + str += "<big>Symbol: <b>"; + str += print_filter(sym->name); + str += "</b></big><br><br>value: "; + str += print_filter(sym_get_string_value(sym)); + str += "<br>visibility: "; + str += sym->visible == yes ? "y" : sym->visible == mod ? "m" : "n"; + str += "<br>"; + str += debug_info(sym); + + setText(str); +} + +void ConfigInfoView::menuInfo(void) +{ + struct symbol* sym; + QString head, debug, help; + + sym = _menu->sym; + if (sym) { + if (_menu->prompt) { + head += "<big><b>"; + head += print_filter(_(_menu->prompt->text)); + head += "</b></big>"; + if (sym->name) { + head += " ("; + if (showDebug()) + head += QString().sprintf("<a href=\"s%p\">", sym); + head += print_filter(sym->name); + if (showDebug()) + head += "</a>"; + head += ")"; + } + } else if (sym->name) { + head += "<big><b>"; + if (showDebug()) + head += QString().sprintf("<a href=\"s%p\">", sym); + head += print_filter(sym->name); + if (showDebug()) + head += "</a>"; + head += "</b></big>"; + } + head += "<br><br>"; + + if (showDebug()) + debug = debug_info(sym); + + struct gstr help_gstr = str_new(); + menu_get_ext_help(_menu, &help_gstr); + help = print_filter(str_get(&help_gstr)); + str_free(&help_gstr); + } else if (_menu->prompt) { + head += "<big><b>"; + head += print_filter(_(_menu->prompt->text)); + head += "</b></big><br><br>"; + if (showDebug()) { + if (_menu->prompt->visible.expr) { + debug += " dep: "; + expr_print(_menu->prompt->visible.expr, expr_print_help, &debug, E_NONE); + debug += "<br><br>"; + } + } + } + if (showDebug()) + debug += QString().sprintf("defined at %s:%d<br><br>", _menu->file->name, _menu->lineno); + + setText(head + debug + help); +} + +QString ConfigInfoView::debug_info(struct symbol *sym) +{ + QString debug; + + debug += "type: "; + debug += print_filter(sym_type_name(sym->type)); + if (sym_is_choice(sym)) + debug += " (choice)"; + debug += "<br>"; + if (sym->rev_dep.expr) { + debug += "reverse dep: "; + expr_print(sym->rev_dep.expr, expr_print_help, &debug, E_NONE); + debug += "<br>"; + } + for (struct property *prop = sym->prop; prop; prop = prop->next) { + switch (prop->type) { + case P_PROMPT: + case P_MENU: + debug += QString().sprintf("prompt: <a href=\"m%p\">", prop->menu); + debug += print_filter(_(prop->text)); + debug += "</a><br>"; + break; + case P_DEFAULT: + case P_SELECT: + case P_RANGE: + case P_ENV: + debug += prop_get_type_name(prop->type); + debug += ": "; + expr_print(prop->expr, expr_print_help, &debug, E_NONE); + debug += "<br>"; + break; + case P_CHOICE: + if (sym_is_choice(sym)) { + debug += "choice: "; + expr_print(prop->expr, expr_print_help, &debug, E_NONE); + debug += "<br>"; + } + break; + default: + debug += "unknown property: "; + debug += prop_get_type_name(prop->type); + debug += "<br>"; + } + if (prop->visible.expr) { + debug += " dep: "; + expr_print(prop->visible.expr, expr_print_help, &debug, E_NONE); + debug += "<br>"; + } + } + debug += "<br>"; + + return debug; +} + +QString ConfigInfoView::print_filter(const QString &str) +{ + QRegExp re("[<>&\"\\n]"); + QString res = str; + for (int i = 0; (i = res.find(re, i)) >= 0;) { + switch (res[i].latin1()) { + case '<': + res.replace(i, 1, "<"); + i += 4; + break; + case '>': + res.replace(i, 1, ">"); + i += 4; + break; + case '&': + res.replace(i, 1, "&"); + i += 5; + break; + case '"': + res.replace(i, 1, """); + i += 6; + break; + case '\n': + res.replace(i, 1, "<br>"); + i += 4; + break; + } + } + return res; +} + +void ConfigInfoView::expr_print_help(void *data, struct symbol *sym, const char *str) +{ + QString* text = reinterpret_cast<QString*>(data); + QString str2 = print_filter(str); + + if (sym && sym->name && !(sym->flags & SYMBOL_CONST)) { + *text += QString().sprintf("<a href=\"s%p\">", sym); + *text += str2; + *text += "</a>"; + } else + *text += str2; +} + +Q3PopupMenu* ConfigInfoView::createPopupMenu(const QPoint& pos) +{ + Q3PopupMenu* popup = Parent::createPopupMenu(pos); + Q3Action* action = new Q3Action(NULL, _("Show Debug Info"), 0, popup); + action->setToggleAction(TRUE); + connect(action, SIGNAL(toggled(bool)), SLOT(setShowDebug(bool))); + connect(this, SIGNAL(showDebugChanged(bool)), action, SLOT(setOn(bool))); + action->setOn(showDebug()); + popup->insertSeparator(); + action->addTo(popup); + return popup; +} + +void ConfigInfoView::contentsContextMenuEvent(QContextMenuEvent *e) +{ + Parent::contentsContextMenuEvent(e); +} + +ConfigSearchWindow::ConfigSearchWindow(ConfigMainWindow* parent, const char *name) + : Parent(parent, name), result(NULL) +{ + setCaption("Search Config"); + + QVBoxLayout* layout1 = new QVBoxLayout(this, 11, 6); + QHBoxLayout* layout2 = new QHBoxLayout(0, 0, 6); + layout2->addWidget(new QLabel(_("Find:"), this)); + editField = new QLineEdit(this); + connect(editField, SIGNAL(returnPressed()), SLOT(search())); + layout2->addWidget(editField); + searchButton = new QPushButton(_("Search"), this); + searchButton->setAutoDefault(FALSE); + connect(searchButton, SIGNAL(clicked()), SLOT(search())); + layout2->addWidget(searchButton); + layout1->addLayout(layout2); + + split = new QSplitter(this); + split->setOrientation(Qt::Vertical); + list = new ConfigView(split, name); + list->list->mode = listMode; + info = new ConfigInfoView(split, name); + connect(list->list, SIGNAL(menuChanged(struct menu *)), + info, SLOT(setInfo(struct menu *))); + connect(list->list, SIGNAL(menuChanged(struct menu *)), + parent, SLOT(setMenuLink(struct menu *))); + + layout1->addWidget(split); + + if (name) { + int x, y, width, height; + bool ok; + + configSettings->beginGroup(name); + width = configSettings->readNumEntry("/window width", parent->width() / 2); + height = configSettings->readNumEntry("/window height", parent->height() / 2); + resize(width, height); + x = configSettings->readNumEntry("/window x", 0, &ok); + if (ok) + y = configSettings->readNumEntry("/window y", 0, &ok); + if (ok) + move(x, y); + Q3ValueList<int> sizes = configSettings->readSizes("/split", &ok); + if (ok) + split->setSizes(sizes); + configSettings->endGroup(); + connect(configApp, SIGNAL(aboutToQuit()), SLOT(saveSettings())); + } +} + +void ConfigSearchWindow::saveSettings(void) +{ + if (name()) { + configSettings->beginGroup(name()); + configSettings->writeEntry("/window x", pos().x()); + configSettings->writeEntry("/window y", pos().y()); + configSettings->writeEntry("/window width", size().width()); + configSettings->writeEntry("/window height", size().height()); + configSettings->writeSizes("/split", split->sizes()); + configSettings->endGroup(); + } +} + +void ConfigSearchWindow::search(void) +{ + struct symbol **p; + struct property *prop; + ConfigItem *lastItem = NULL; + + free(result); + list->list->clear(); + info->clear(); + + result = sym_re_search(editField->text().latin1()); + if (!result) + return; + for (p = result; *p; p++) { + for_all_prompts((*p), prop) + lastItem = new ConfigItem(list->list, lastItem, prop->menu, + menu_is_visible(prop->menu)); + } +} + +/* + * Construct the complete config widget + */ +ConfigMainWindow::ConfigMainWindow(void) + : searchWindow(0) +{ + QMenuBar* menu; + bool ok; + int x, y, width, height; + char title[256]; + + QDesktopWidget *d = configApp->desktop(); + snprintf(title, sizeof(title), "%s%s", + rootmenu.prompt->text, +#if QT_VERSION < 0x040000 + " (Qt3)" +#else + "" +#endif + ); + setCaption(title); + + width = configSettings->readNumEntry("/window width", d->width() - 64); + height = configSettings->readNumEntry("/window height", d->height() - 64); + resize(width, height); + x = configSettings->readNumEntry("/window x", 0, &ok); + if (ok) + y = configSettings->readNumEntry("/window y", 0, &ok); + if (ok) + move(x, y); + + split1 = new QSplitter(this); + split1->setOrientation(Qt::Horizontal); + setCentralWidget(split1); + + menuView = new ConfigView(split1, "menu"); + menuList = menuView->list; + + split2 = new QSplitter(split1); + split2->setOrientation(Qt::Vertical); + + // create config tree + configView = new ConfigView(split2, "config"); + configList = configView->list; + + helpText = new ConfigInfoView(split2, "help"); + helpText->setTextFormat(Qt::RichText); + + setTabOrder(configList, helpText); + configList->setFocus(); + + menu = menuBar(); + toolBar = new Q3ToolBar("Tools", this); + + backAction = new Q3Action("Back", QPixmap(xpm_back), _("Back"), 0, this); + connect(backAction, SIGNAL(activated()), SLOT(goBack())); + backAction->setEnabled(FALSE); + Q3Action *quitAction = new Q3Action("Quit", _("&Quit"), Qt::CTRL + Qt::Key_Q, this); + connect(quitAction, SIGNAL(activated()), SLOT(close())); + Q3Action *loadAction = new Q3Action("Load", QPixmap(xpm_load), _("&Load"), Qt::CTRL + Qt::Key_L, this); + connect(loadAction, SIGNAL(activated()), SLOT(loadConfig())); + saveAction = new Q3Action("Save", QPixmap(xpm_save), _("&Save"), Qt::CTRL + Qt::Key_S, this); + connect(saveAction, SIGNAL(activated()), SLOT(saveConfig())); + conf_set_changed_callback(conf_changed); + // Set saveAction's initial state + conf_changed(); + Q3Action *saveAsAction = new Q3Action("Save As...", _("Save &As..."), 0, this); + connect(saveAsAction, SIGNAL(activated()), SLOT(saveConfigAs())); + Q3Action *searchAction = new Q3Action("Find", _("&Find"), Qt::CTRL + Qt::Key_F, this); + connect(searchAction, SIGNAL(activated()), SLOT(searchConfig())); + Q3Action *singleViewAction = new Q3Action("Single View", QPixmap(xpm_single_view), _("Single View"), 0, this); + connect(singleViewAction, SIGNAL(activated()), SLOT(showSingleView())); + Q3Action *splitViewAction = new Q3Action("Split View", QPixmap(xpm_split_view), _("Split View"), 0, this); + connect(splitViewAction, SIGNAL(activated()), SLOT(showSplitView())); + Q3Action *fullViewAction = new Q3Action("Full View", QPixmap(xpm_tree_view), _("Full View"), 0, this); + connect(fullViewAction, SIGNAL(activated()), SLOT(showFullView())); + + Q3Action *showNameAction = new Q3Action(NULL, _("Show Name"), 0, this); + showNameAction->setToggleAction(TRUE); + connect(showNameAction, SIGNAL(toggled(bool)), configView, SLOT(setShowName(bool))); + connect(configView, SIGNAL(showNameChanged(bool)), showNameAction, SLOT(setOn(bool))); + showNameAction->setOn(configView->showName()); + Q3Action *showRangeAction = new Q3Action(NULL, _("Show Range"), 0, this); + showRangeAction->setToggleAction(TRUE); + connect(showRangeAction, SIGNAL(toggled(bool)), configView, SLOT(setShowRange(bool))); + connect(configView, SIGNAL(showRangeChanged(bool)), showRangeAction, SLOT(setOn(bool))); + showRangeAction->setOn(configList->showRange); + Q3Action *showDataAction = new Q3Action(NULL, _("Show Data"), 0, this); + showDataAction->setToggleAction(TRUE); + connect(showDataAction, SIGNAL(toggled(bool)), configView, SLOT(setShowData(bool))); + connect(configView, SIGNAL(showDataChanged(bool)), showDataAction, SLOT(setOn(bool))); + showDataAction->setOn(configList->showData); + + QActionGroup *optGroup = new QActionGroup(this); + optGroup->setExclusive(TRUE); + connect(optGroup, SIGNAL(selected(QAction *)), configView, + SLOT(setOptionMode(QAction *))); + connect(optGroup, SIGNAL(selected(QAction *)), menuView, + SLOT(setOptionMode(QAction *))); + +#if QT_VERSION >= 0x040000 + configView->showNormalAction = new QAction(_("Show Normal Options"), optGroup); + configView->showAllAction = new QAction(_("Show All Options"), optGroup); + configView->showPromptAction = new QAction(_("Show Prompt Options"), optGroup); +#else + configView->showNormalAction = new QAction(_("Show Normal Options"), 0, optGroup); + configView->showAllAction = new QAction(_("Show All Options"), 0, optGroup); + configView->showPromptAction = new QAction(_("Show Prompt Options"), 0, optGroup); +#endif + configView->showNormalAction->setToggleAction(TRUE); + configView->showNormalAction->setOn(configList->optMode == normalOpt); + configView->showAllAction->setToggleAction(TRUE); + configView->showAllAction->setOn(configList->optMode == allOpt); + configView->showPromptAction->setToggleAction(TRUE); + configView->showPromptAction->setOn(configList->optMode == promptOpt); + + Q3Action *showDebugAction = new Q3Action(NULL, _("Show Debug Info"), 0, this); + showDebugAction->setToggleAction(TRUE); + connect(showDebugAction, SIGNAL(toggled(bool)), helpText, SLOT(setShowDebug(bool))); + connect(helpText, SIGNAL(showDebugChanged(bool)), showDebugAction, SLOT(setOn(bool))); + showDebugAction->setOn(helpText->showDebug()); + + Q3Action *showIntroAction = new Q3Action(NULL, _("Introduction"), 0, this); + connect(showIntroAction, SIGNAL(activated()), SLOT(showIntro())); + Q3Action *showAboutAction = new Q3Action(NULL, _("About"), 0, this); + connect(showAboutAction, SIGNAL(activated()), SLOT(showAbout())); + + // init tool bar + backAction->addTo(toolBar); + toolBar->addSeparator(); + loadAction->addTo(toolBar); + saveAction->addTo(toolBar); + toolBar->addSeparator(); + singleViewAction->addTo(toolBar); + splitViewAction->addTo(toolBar); + fullViewAction->addTo(toolBar); + + // create config menu + Q3PopupMenu* config = new Q3PopupMenu(this); + menu->insertItem(_("&File"), config); + loadAction->addTo(config); + saveAction->addTo(config); + saveAsAction->addTo(config); + config->insertSeparator(); + quitAction->addTo(config); + + // create edit menu + Q3PopupMenu* editMenu = new Q3PopupMenu(this); + menu->insertItem(_("&Edit"), editMenu); + searchAction->addTo(editMenu); + + // create options menu + Q3PopupMenu* optionMenu = new Q3PopupMenu(this); + menu->insertItem(_("&Option"), optionMenu); + showNameAction->addTo(optionMenu); + showRangeAction->addTo(optionMenu); + showDataAction->addTo(optionMenu); + optionMenu->insertSeparator(); + optGroup->addTo(optionMenu); + optionMenu->insertSeparator(); + + // create help menu + Q3PopupMenu* helpMenu = new Q3PopupMenu(this); + menu->insertSeparator(); + menu->insertItem(_("&Help"), helpMenu); + showIntroAction->addTo(helpMenu); + showAboutAction->addTo(helpMenu); + + connect(configList, SIGNAL(menuChanged(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(configList, SIGNAL(menuSelected(struct menu *)), + SLOT(changeMenu(struct menu *))); + connect(configList, SIGNAL(parentSelected()), + SLOT(goBack())); + connect(menuList, SIGNAL(menuChanged(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(menuList, SIGNAL(menuSelected(struct menu *)), + SLOT(changeMenu(struct menu *))); + + connect(configList, SIGNAL(gotFocus(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(menuList, SIGNAL(gotFocus(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(menuList, SIGNAL(gotFocus(struct menu *)), + SLOT(listFocusChanged(void))); + connect(helpText, SIGNAL(menuSelected(struct menu *)), + SLOT(setMenuLink(struct menu *))); + + QString listMode = configSettings->readEntry("/listMode", "symbol"); + if (listMode == "single") + showSingleView(); + else if (listMode == "full") + showFullView(); + else /*if (listMode == "split")*/ + showSplitView(); + + // UI setup done, restore splitter positions + Q3ValueList<int> sizes = configSettings->readSizes("/split1", &ok); + if (ok) + split1->setSizes(sizes); + + sizes = configSettings->readSizes("/split2", &ok); + if (ok) + split2->setSizes(sizes); +} + +void ConfigMainWindow::loadConfig(void) +{ + QString s = Q3FileDialog::getOpenFileName(conf_get_configname(), NULL, this); + if (s.isNull()) + return; + if (conf_read(QFile::encodeName(s))) + QMessageBox::information(this, "qconf", _("Unable to load configuration!")); + ConfigView::updateListAll(); +} + +bool ConfigMainWindow::saveConfig(void) +{ + if (conf_write(NULL)) { + QMessageBox::information(this, "qconf", _("Unable to save configuration!")); + return false; + } + return true; +} + +void ConfigMainWindow::saveConfigAs(void) +{ + QString s = Q3FileDialog::getSaveFileName(conf_get_configname(), NULL, this); + if (s.isNull()) + return; + saveConfig(); +} + +void ConfigMainWindow::searchConfig(void) +{ + if (!searchWindow) + searchWindow = new ConfigSearchWindow(this, "search"); + searchWindow->show(); +} + +void ConfigMainWindow::changeMenu(struct menu *menu) +{ + configList->setRootMenu(menu); + if (configList->rootEntry->parent == &rootmenu) + backAction->setEnabled(FALSE); + else + backAction->setEnabled(TRUE); +} + +void ConfigMainWindow::setMenuLink(struct menu *menu) +{ + struct menu *parent; + ConfigList* list = NULL; + ConfigItem* item; + + if (configList->menuSkip(menu)) + return; + + switch (configList->mode) { + case singleMode: + list = configList; + parent = menu_get_parent_menu(menu); + if (!parent) + return; + list->setRootMenu(parent); + break; + case symbolMode: + if (menu->flags & MENU_ROOT) { + configList->setRootMenu(menu); + configList->clearSelection(); + list = menuList; + } else { + list = configList; + parent = menu_get_parent_menu(menu->parent); + if (!parent) + return; + item = menuList->findConfigItem(parent); + if (item) { + menuList->setSelected(item, TRUE); + menuList->ensureItemVisible(item); + } + list->setRootMenu(parent); + } + break; + case fullMode: + list = configList; + break; + default: + break; + } + + if (list) { + item = list->findConfigItem(menu); + if (item) { + list->setSelected(item, TRUE); + list->ensureItemVisible(item); + list->setFocus(); + } + } +} + +void ConfigMainWindow::listFocusChanged(void) +{ + if (menuList->mode == menuMode) + configList->clearSelection(); +} + +void ConfigMainWindow::goBack(void) +{ + ConfigItem* item; + + configList->setParentMenu(); + if (configList->rootEntry == &rootmenu) + backAction->setEnabled(FALSE); + item = (ConfigItem*)menuList->selectedItem(); + while (item) { + if (item->menu == configList->rootEntry) { + menuList->setSelected(item, TRUE); + break; + } + item = (ConfigItem*)item->parent(); + } +} + +void ConfigMainWindow::showSingleView(void) +{ + menuView->hide(); + menuList->setRootMenu(0); + configList->mode = singleMode; + if (configList->rootEntry == &rootmenu) + configList->updateListAll(); + else + configList->setRootMenu(&rootmenu); + configList->setAllOpen(TRUE); + configList->setFocus(); +} + +void ConfigMainWindow::showSplitView(void) +{ + configList->mode = symbolMode; + if (configList->rootEntry == &rootmenu) + configList->updateListAll(); + else + configList->setRootMenu(&rootmenu); + configList->setAllOpen(TRUE); + configApp->processEvents(); + menuList->mode = menuMode; + menuList->setRootMenu(&rootmenu); + menuList->setAllOpen(TRUE); + menuView->show(); + menuList->setFocus(); +} + +void ConfigMainWindow::showFullView(void) +{ + menuView->hide(); + menuList->setRootMenu(0); + configList->mode = fullMode; + if (configList->rootEntry == &rootmenu) + configList->updateListAll(); + else + configList->setRootMenu(&rootmenu); + configList->setAllOpen(FALSE); + configList->setFocus(); +} + +/* + * ask for saving configuration before quitting + * TODO ask only when something changed + */ +void ConfigMainWindow::closeEvent(QCloseEvent* e) +{ + if (!conf_get_changed()) { + e->accept(); + return; + } + QMessageBox mb("qconf", _("Save configuration?"), QMessageBox::Warning, + QMessageBox::Yes | QMessageBox::Default, QMessageBox::No, QMessageBox::Cancel | QMessageBox::Escape); + mb.setButtonText(QMessageBox::Yes, _("&Save Changes")); + mb.setButtonText(QMessageBox::No, _("&Discard Changes")); + mb.setButtonText(QMessageBox::Cancel, _("Cancel Exit")); + switch (mb.exec()) { + case QMessageBox::Yes: + if (saveConfig()) + e->accept(); + else + e->ignore(); + break; + case QMessageBox::No: + e->accept(); + break; + case QMessageBox::Cancel: + e->ignore(); + break; + } +} + +void ConfigMainWindow::showIntro(void) +{ + static const QString str = _("Welcome to the qconf graphical configuration tool.\n\n" + "For each option, a blank box indicates the feature is disabled, a check\n" + "indicates it is enabled, and a dot indicates that it is to be compiled\n" + "as a module. Clicking on the box will cycle through the three states.\n\n" + "If you do not see an option (e.g., a device driver) that you believe\n" + "should be present, try turning on Show All Options under the Options menu.\n" + "Although there is no cross reference yet to help you figure out what other\n" + "options must be enabled to support the option you are interested in, you can\n" + "still view the help of a grayed-out option.\n\n" + "Toggling Show Debug Info under the Options menu will show the dependencies,\n" + "which you can then match by examining other options.\n\n"); + + QMessageBox::information(this, "qconf", str); +} + +void ConfigMainWindow::showAbout(void) +{ + static const QString str = _("qconf is Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org>.\n\n" + "Bug reports and feature request can also be entered at http://bugzilla.kernel.org/\n"); + + QMessageBox::information(this, "qconf", str); +} + +void ConfigMainWindow::saveSettings(void) +{ + configSettings->writeEntry("/window x", pos().x()); + configSettings->writeEntry("/window y", pos().y()); + configSettings->writeEntry("/window width", size().width()); + configSettings->writeEntry("/window height", size().height()); + + QString entry; + switch(configList->mode) { + case singleMode : + entry = "single"; + break; + + case symbolMode : + entry = "split"; + break; + + case fullMode : + entry = "full"; + break; + + default: + break; + } + configSettings->writeEntry("/listMode", entry); + + configSettings->writeSizes("/split1", split1->sizes()); + configSettings->writeSizes("/split2", split2->sizes()); +} + +void ConfigMainWindow::conf_changed(void) +{ + if (saveAction) + saveAction->setEnabled(conf_get_changed()); +} + +void fixup_rootmenu(struct menu *menu) +{ + struct menu *child; + static int menu_cnt = 0; + + menu->flags |= MENU_ROOT; + for (child = menu->list; child; child = child->next) { + if (child->prompt && child->prompt->type == P_MENU) { + menu_cnt++; + fixup_rootmenu(child); + menu_cnt--; + } else if (!menu_cnt) + fixup_rootmenu(child); + } +} + +static const char *progname; + +static void usage(void) +{ + printf(_("%s <config>\n"), progname); + exit(0); +} + +int main(int ac, char** av) +{ + ConfigMainWindow* v; + const char *name; + + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + progname = av[0]; + configApp = new QApplication(ac, av); + if (ac > 1 && av[1][0] == '-') { + switch (av[1][1]) { + case 'h': + case '?': + usage(); + } + name = av[2]; + } else + name = av[1]; + if (!name) + usage(); + + conf_parse(name); + fixup_rootmenu(&rootmenu); + conf_read(NULL); + //zconfdump(stdout); + + configSettings = new ConfigSettings(); + configSettings->beginGroup("/kconfig/qconf"); + v = new ConfigMainWindow(); + + //zconfdump(stdout); + configApp->setMainWidget(v); + configApp->connect(configApp, SIGNAL(lastWindowClosed()), SLOT(quit())); + configApp->connect(configApp, SIGNAL(aboutToQuit()), v, SLOT(saveSettings())); + v->show(); + configApp->exec(); + + configSettings->endGroup(); + delete configSettings; + + return 0; +} diff --git a/scripts/kconfig/qconf.h b/scripts/kconfig/qconf.h new file mode 100644 index 0000000..bde0c6b --- /dev/null +++ b/scripts/kconfig/qconf.h @@ -0,0 +1,338 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#if QT_VERSION < 0x040000 +#include <qlistview.h> +#else +#include <q3listview.h> +#endif +#include <qsettings.h> + +#if QT_VERSION < 0x040000 +#define Q3ValueList QValueList +#define Q3PopupMenu QPopupMenu +#define Q3ListView QListView +#define Q3ListViewItem QListViewItem +#define Q3VBox QVBox +#define Q3TextBrowser QTextBrowser +#define Q3MainWindow QMainWindow +#define Q3Action QAction +#define Q3ToolBar QToolBar +#define Q3ListViewItemIterator QListViewItemIterator +#define Q3FileDialog QFileDialog +#endif + +class ConfigView; +class ConfigList; +class ConfigItem; +class ConfigLineEdit; +class ConfigMainWindow; + +class ConfigSettings : public QSettings { +public: + ConfigSettings(); + Q3ValueList<int> readSizes(const QString& key, bool *ok); + bool writeSizes(const QString& key, const Q3ValueList<int>& value); +}; + +enum colIdx { + promptColIdx, nameColIdx, noColIdx, modColIdx, yesColIdx, dataColIdx, colNr +}; +enum listMode { + singleMode, menuMode, symbolMode, fullMode, listMode +}; +enum optionMode { + normalOpt = 0, allOpt, promptOpt +}; + +class ConfigList : public Q3ListView { + Q_OBJECT + typedef class Q3ListView Parent; +public: + ConfigList(ConfigView* p, const char *name = 0); + void reinit(void); + ConfigView* parent(void) const + { + return (ConfigView*)Parent::parent(); + } + ConfigItem* findConfigItem(struct menu *); + +protected: + void keyPressEvent(QKeyEvent *e); + void contentsMousePressEvent(QMouseEvent *e); + void contentsMouseReleaseEvent(QMouseEvent *e); + void contentsMouseMoveEvent(QMouseEvent *e); + void contentsMouseDoubleClickEvent(QMouseEvent *e); + void focusInEvent(QFocusEvent *e); + void contextMenuEvent(QContextMenuEvent *e); + +public slots: + void setRootMenu(struct menu *menu); + + void updateList(ConfigItem *item); + void setValue(ConfigItem* item, tristate val); + void changeValue(ConfigItem* item); + void updateSelection(void); + void saveSettings(void); +signals: + void menuChanged(struct menu *menu); + void menuSelected(struct menu *menu); + void parentSelected(void); + void gotFocus(struct menu *); + +public: + void updateListAll(void) + { + updateAll = true; + updateList(NULL); + updateAll = false; + } + ConfigList* listView() + { + return this; + } + ConfigItem* firstChild() const + { + return (ConfigItem *)Parent::firstChild(); + } + int mapIdx(colIdx idx) + { + return colMap[idx]; + } + void addColumn(colIdx idx, const QString& label) + { + colMap[idx] = Parent::addColumn(label); + colRevMap[colMap[idx]] = idx; + } + void removeColumn(colIdx idx) + { + int col = colMap[idx]; + if (col >= 0) { + Parent::removeColumn(col); + colRevMap[col] = colMap[idx] = -1; + } + } + void setAllOpen(bool open); + void setParentMenu(void); + + bool menuSkip(struct menu *); + + template <class P> + void updateMenuList(P*, struct menu*); + + bool updateAll; + + QPixmap symbolYesPix, symbolModPix, symbolNoPix; + QPixmap choiceYesPix, choiceNoPix; + QPixmap menuPix, menuInvPix, menuBackPix, voidPix; + + bool showName, showRange, showData; + enum listMode mode; + enum optionMode optMode; + struct menu *rootEntry; + QColorGroup disabledColorGroup; + QColorGroup inactivedColorGroup; + Q3PopupMenu* headerPopup; + +private: + int colMap[colNr]; + int colRevMap[colNr]; +}; + +class ConfigItem : public Q3ListViewItem { + typedef class Q3ListViewItem Parent; +public: + ConfigItem(Q3ListView *parent, ConfigItem *after, struct menu *m, bool v) + : Parent(parent, after), menu(m), visible(v), goParent(false) + { + init(); + } + ConfigItem(ConfigItem *parent, ConfigItem *after, struct menu *m, bool v) + : Parent(parent, after), menu(m), visible(v), goParent(false) + { + init(); + } + ConfigItem(Q3ListView *parent, ConfigItem *after, bool v) + : Parent(parent, after), menu(0), visible(v), goParent(true) + { + init(); + } + ~ConfigItem(void); + void init(void); + void okRename(int col); + void updateMenu(void); + void testUpdateMenu(bool v); + ConfigList* listView() const + { + return (ConfigList*)Parent::listView(); + } + ConfigItem* firstChild() const + { + return (ConfigItem *)Parent::firstChild(); + } + ConfigItem* nextSibling() const + { + return (ConfigItem *)Parent::nextSibling(); + } + void setText(colIdx idx, const QString& text) + { + Parent::setText(listView()->mapIdx(idx), text); + } + QString text(colIdx idx) const + { + return Parent::text(listView()->mapIdx(idx)); + } + void setPixmap(colIdx idx, const QPixmap& pm) + { + Parent::setPixmap(listView()->mapIdx(idx), pm); + } + const QPixmap* pixmap(colIdx idx) const + { + return Parent::pixmap(listView()->mapIdx(idx)); + } + void paintCell(QPainter* p, const QColorGroup& cg, int column, int width, int align); + + ConfigItem* nextItem; + struct menu *menu; + bool visible; + bool goParent; +}; + +class ConfigLineEdit : public QLineEdit { + Q_OBJECT + typedef class QLineEdit Parent; +public: + ConfigLineEdit(ConfigView* parent); + ConfigView* parent(void) const + { + return (ConfigView*)Parent::parent(); + } + void show(ConfigItem *i); + void keyPressEvent(QKeyEvent *e); + +public: + ConfigItem *item; +}; + +class ConfigView : public Q3VBox { + Q_OBJECT + typedef class Q3VBox Parent; +public: + ConfigView(QWidget* parent, const char *name = 0); + ~ConfigView(void); + static void updateList(ConfigItem* item); + static void updateListAll(void); + + bool showName(void) const { return list->showName; } + bool showRange(void) const { return list->showRange; } + bool showData(void) const { return list->showData; } +public slots: + void setShowName(bool); + void setShowRange(bool); + void setShowData(bool); + void setOptionMode(QAction *); +signals: + void showNameChanged(bool); + void showRangeChanged(bool); + void showDataChanged(bool); +public: + ConfigList* list; + ConfigLineEdit* lineEdit; + + static ConfigView* viewList; + ConfigView* nextView; + + static QAction *showNormalAction; + static QAction *showAllAction; + static QAction *showPromptAction; +}; + +class ConfigInfoView : public Q3TextBrowser { + Q_OBJECT + typedef class Q3TextBrowser Parent; +public: + ConfigInfoView(QWidget* parent, const char *name = 0); + bool showDebug(void) const { return _showDebug; } + +public slots: + void setInfo(struct menu *menu); + void saveSettings(void); + void setShowDebug(bool); + +signals: + void showDebugChanged(bool); + void menuSelected(struct menu *); + +protected: + void symbolInfo(void); + void menuInfo(void); + QString debug_info(struct symbol *sym); + static QString print_filter(const QString &str); + static void expr_print_help(void *data, struct symbol *sym, const char *str); + Q3PopupMenu* createPopupMenu(const QPoint& pos); + void contentsContextMenuEvent(QContextMenuEvent *e); + + struct symbol *sym; + struct menu *_menu; + bool _showDebug; +}; + +class ConfigSearchWindow : public QDialog { + Q_OBJECT + typedef class QDialog Parent; +public: + ConfigSearchWindow(ConfigMainWindow* parent, const char *name = 0); + +public slots: + void saveSettings(void); + void search(void); + +protected: + QLineEdit* editField; + QPushButton* searchButton; + QSplitter* split; + ConfigView* list; + ConfigInfoView* info; + + struct symbol **result; +}; + +class ConfigMainWindow : public Q3MainWindow { + Q_OBJECT + + static Q3Action *saveAction; + static void conf_changed(void); +public: + ConfigMainWindow(void); +public slots: + void changeMenu(struct menu *); + void setMenuLink(struct menu *); + void listFocusChanged(void); + void goBack(void); + void loadConfig(void); + bool saveConfig(void); + void saveConfigAs(void); + void searchConfig(void); + void showSingleView(void); + void showSplitView(void); + void showFullView(void); + void showIntro(void); + void showAbout(void); + void saveSettings(void); + +protected: + void closeEvent(QCloseEvent *e); + + ConfigSearchWindow *searchWindow; + ConfigView *menuView; + ConfigList *menuList; + ConfigView *configView; + ConfigList *configList; + ConfigInfoView *helpText; + Q3ToolBar *toolBar; + Q3Action *backAction; + QSplitter* split1; + QSplitter* split2; +}; diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl new file mode 100644 index 0000000..9cb8522 --- /dev/null +++ b/scripts/kconfig/streamline_config.pl @@ -0,0 +1,647 @@ +#!/usr/bin/perl -w +# +# Copyright 2005-2009 - Steven Rostedt +# Licensed under the terms of the GNU GPL License version 2 +# +# It's simple enough to figure out how this works. +# If not, then you can ask me at stripconfig@goodmis.org +# +# What it does? +# +# If you have installed a Linux kernel from a distribution +# that turns on way too many modules than you need, and +# you only want the modules you use, then this program +# is perfect for you. +# +# It gives you the ability to turn off all the modules that are +# not loaded on your system. +# +# Howto: +# +# 1. Boot up the kernel that you want to stream line the config on. +# 2. Change directory to the directory holding the source of the +# kernel that you just booted. +# 3. Copy the configuraton file to this directory as .config +# 4. Have all your devices that you need modules for connected and +# operational (make sure that their corresponding modules are loaded) +# 5. Run this script redirecting the output to some other file +# like config_strip. +# 6. Back up your old config (if you want too). +# 7. copy the config_strip file to .config +# 8. Run "make oldconfig" +# +# Now your kernel is ready to be built with only the modules that +# are loaded. +# +# Here's what I did with my Debian distribution. +# +# cd /usr/src/linux-2.6.10 +# cp /boot/config-2.6.10-1-686-smp .config +# ~/bin/streamline_config > config_strip +# mv .config config_sav +# mv config_strip .config +# make oldconfig +# +use strict; +use Getopt::Long; + +# set the environment variable LOCALMODCONFIG_DEBUG to get +# debug output. +my $debugprint = 0; +$debugprint = 1 if (defined($ENV{LOCALMODCONFIG_DEBUG})); + +sub dprint { + return if (!$debugprint); + print STDERR @_; +} + +my $config = ".config"; + +my $uname = `uname -r`; +chomp $uname; + +my @searchconfigs = ( + { + "file" => ".config", + "exec" => "cat", + }, + { + "file" => "/proc/config.gz", + "exec" => "zcat", + }, + { + "file" => "/boot/config-$uname", + "exec" => "cat", + }, + { + "file" => "/boot/vmlinuz-$uname", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "vmlinux", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "/lib/modules/$uname/kernel/kernel/configs.ko", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "kernel/configs.ko", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "kernel/configs.o", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, +); + +sub read_config { + foreach my $conf (@searchconfigs) { + my $file = $conf->{"file"}; + + next if ( ! -f "$file"); + + if (defined($conf->{"test"})) { + `$conf->{"test"} $conf->{"file"} 2>/dev/null`; + next if ($?); + } + + my $exec = $conf->{"exec"}; + + print STDERR "using config: '$file'\n"; + + open(my $infile, '-|', "$exec $file") || die "Failed to run $exec $file"; + my @x = <$infile>; + close $infile; + return @x; + } + die "No config file found"; +} + +my @config_file = read_config; + +# Parse options +my $localmodconfig = 0; +my $localyesconfig = 0; + +GetOptions("localmodconfig" => \$localmodconfig, + "localyesconfig" => \$localyesconfig); + +# Get the build source and top level Kconfig file (passed in) +my $ksource = ($ARGV[0] ? $ARGV[0] : '.'); +my $kconfig = $ARGV[1]; +my $lsmod_file = $ENV{'LSMOD'}; + +my @makefiles = `find $ksource -name Makefile 2>/dev/null`; +chomp @makefiles; + +my %depends; +my %selects; +my %prompts; +my %objects; +my $var; +my $iflevel = 0; +my @ifdeps; + +# prevent recursion +my %read_kconfigs; + +sub read_kconfig { + my ($kconfig) = @_; + + my $state = "NONE"; + my $config; + + my $cont = 0; + my $line; + + my $source = "$ksource/$kconfig"; + my $last_source = ""; + + # Check for any environment variables used + while ($source =~ /\$(\w+)/ && $last_source ne $source) { + my $env = $1; + $last_source = $source; + $source =~ s/\$$env/$ENV{$env}/; + } + + open(my $kinfile, '<', $source) || die "Can't open $kconfig"; + while (<$kinfile>) { + chomp; + + # Make sure that lines ending with \ continue + if ($cont) { + $_ = $line . " " . $_; + } + + if (s/\\$//) { + $cont = 1; + $line = $_; + next; + } + + $cont = 0; + + # collect any Kconfig sources + if (/^source\s*"(.*)"/) { + my $kconfig = $1; + # prevent reading twice. + if (!defined($read_kconfigs{$kconfig})) { + $read_kconfigs{$kconfig} = 1; + read_kconfig($kconfig); + } + next; + } + + # configs found + if (/^\s*(menu)?config\s+(\S+)\s*$/) { + $state = "NEW"; + $config = $2; + + # Add depends for 'if' nesting + for (my $i = 0; $i < $iflevel; $i++) { + if ($i) { + $depends{$config} .= " " . $ifdeps[$i]; + } else { + $depends{$config} = $ifdeps[$i]; + } + $state = "DEP"; + } + + # collect the depends for the config + } elsif ($state eq "NEW" && /^\s*depends\s+on\s+(.*)$/) { + $state = "DEP"; + $depends{$config} = $1; + } elsif ($state eq "DEP" && /^\s*depends\s+on\s+(.*)$/) { + $depends{$config} .= " " . $1; + } elsif ($state eq "DEP" && /^\s*def(_(bool|tristate)|ault)\s+(\S.*)$/) { + my $dep = $3; + if ($dep !~ /^\s*(y|m|n)\s*$/) { + $dep =~ s/.*\sif\s+//; + $depends{$config} .= " " . $dep; + dprint "Added default depends $dep to $config\n"; + } + + # Get the configs that select this config + } elsif ($state ne "NONE" && /^\s*select\s+(\S+)/) { + my $conf = $1; + if (defined($selects{$conf})) { + $selects{$conf} .= " " . $config; + } else { + $selects{$conf} = $config; + } + + # configs without prompts must be selected + } elsif ($state ne "NONE" && /^\s*tristate\s\S/) { + # note if the config has a prompt + $prompts{$config} = 1; + + # Check for if statements + } elsif (/^if\s+(.*\S)\s*$/) { + my $deps = $1; + # remove beginning and ending non text + $deps =~ s/^[^a-zA-Z0-9_]*//; + $deps =~ s/[^a-zA-Z0-9_]*$//; + + my @deps = split /[^a-zA-Z0-9_]+/, $deps; + + $ifdeps[$iflevel++] = join ':', @deps; + + } elsif (/^endif/) { + + $iflevel-- if ($iflevel); + + # stop on "help" + } elsif (/^\s*help\s*$/) { + $state = "NONE"; + } + } + close($kinfile); +} + +if ($kconfig) { + read_kconfig($kconfig); +} + +# Makefiles can use variables to define their dependencies +sub convert_vars { + my ($line, %vars) = @_; + + my $process = ""; + + while ($line =~ s/^(.*?)(\$\((.*?)\))//) { + my $start = $1; + my $variable = $2; + my $var = $3; + + if (defined($vars{$var})) { + $process .= $start . $vars{$var}; + } else { + $process .= $start . $variable; + } + } + + $process .= $line; + + return $process; +} + +# Read all Makefiles to map the configs to the objects +foreach my $makefile (@makefiles) { + + my $line = ""; + my %make_vars; + + open(my $infile, '<', $makefile) || die "Can't open $makefile"; + while (<$infile>) { + # if this line ends with a backslash, continue + chomp; + if (/^(.*)\\$/) { + $line .= $1; + next; + } + + $line .= $_; + $_ = $line; + $line = ""; + + my $objs; + + # Convert variables in a line (could define configs) + $_ = convert_vars($_, %make_vars); + + # collect objects after obj-$(CONFIG_FOO_BAR) + if (/obj-\$\((CONFIG_[^\)]*)\)\s*[+:]?=\s*(.*)/) { + $var = $1; + $objs = $2; + + # check if variables are set + } elsif (/^\s*(\S+)\s*[:]?=\s*(.*\S)/) { + $make_vars{$1} = $2; + } + if (defined($objs)) { + foreach my $obj (split /\s+/,$objs) { + $obj =~ s/-/_/g; + if ($obj =~ /(.*)\.o$/) { + # Objects may be enabled by more than one config. + # Store configs in an array. + my @arr; + + if (defined($objects{$1})) { + @arr = @{$objects{$1}}; + } + + $arr[$#arr+1] = $var; + + # The objects have a hash mapping to a reference + # of an array of configs. + $objects{$1} = \@arr; + } + } + } + } + close($infile); +} + +my %modules; +my $linfile; + +if (defined($lsmod_file)) { + if ( ! -f $lsmod_file) { + if ( -f $ENV{'objtree'}."/".$lsmod_file) { + $lsmod_file = $ENV{'objtree'}."/".$lsmod_file; + } else { + die "$lsmod_file not found"; + } + } + + my $otype = ( -x $lsmod_file) ? '-|' : '<'; + open($linfile, $otype, $lsmod_file); + +} else { + + # see what modules are loaded on this system + my $lsmod; + + foreach my $dir ( ("/sbin", "/bin", "/usr/sbin", "/usr/bin") ) { + if ( -x "$dir/lsmod" ) { + $lsmod = "$dir/lsmod"; + last; + } +} + if (!defined($lsmod)) { + # try just the path + $lsmod = "lsmod"; + } + + open($linfile, '-|', $lsmod) || die "Can not call lsmod with $lsmod"; +} + +while (<$linfile>) { + next if (/^Module/); # Skip the first line. + if (/^(\S+)/) { + $modules{$1} = 1; + } +} +close ($linfile); + +# add to the configs hash all configs that are needed to enable +# a loaded module. This is a direct obj-${CONFIG_FOO} += bar.o +# where we know we need bar.o so we add FOO to the list. +my %configs; +foreach my $module (keys(%modules)) { + if (defined($objects{$module})) { + my @arr = @{$objects{$module}}; + foreach my $conf (@arr) { + $configs{$conf} = $module; + dprint "$conf added by direct ($module)\n"; + if ($debugprint) { + my $c=$conf; + $c =~ s/^CONFIG_//; + if (defined($depends{$c})) { + dprint " deps = $depends{$c}\n"; + } else { + dprint " no deps\n"; + } + } + } + } else { + # Most likely, someone has a custom (binary?) module loaded. + print STDERR "$module config not found!!\n"; + } +} + +# Read the current config, and see what is enabled. We want to +# ignore configs that we would not enable anyway. + +my %orig_configs; +my $valid = "A-Za-z_0-9"; + +foreach my $line (@config_file) { + $_ = $line; + + if (/(CONFIG_[$valid]*)=(m|y)/) { + $orig_configs{$1} = $2; + } +} + +my $repeat = 1; + +my $depconfig; + +# +# Note, we do not care about operands (like: &&, ||, !) we want to add any +# config that is in the depend list of another config. This script does +# not enable configs that are not already enabled. If we come across a +# config A that depends on !B, we can still add B to the list of depends +# to keep on. If A was on in the original config, B would not have been +# and B would not be turned on by this script. +# +sub parse_config_depends +{ + my ($p) = @_; + + while ($p =~ /[$valid]/) { + + if ($p =~ /^[^$valid]*([$valid]+)/) { + my $conf = "CONFIG_" . $1; + + $p =~ s/^[^$valid]*[$valid]+//; + + # We only need to process if the depend config is a module + if (!defined($orig_configs{$conf}) || !$orig_configs{conf} eq "m") { + next; + } + + if (!defined($configs{$conf})) { + # We must make sure that this config has its + # dependencies met. + $repeat = 1; # do again + dprint "$conf selected by depend $depconfig\n"; + $configs{$conf} = 1; + } + } else { + die "this should never happen"; + } + } +} + +# Select is treated a bit differently than depends. We call this +# when a config has no prompt and requires another config to be +# selected. We use to just select all configs that selected this +# config, but found that that can balloon into enabling hundreds +# of configs that we do not care about. +# +# The idea is we look at all the configs that select it. If one +# is already in our list of configs to enable, then there's nothing +# else to do. If there isn't, we pick the first config that was +# enabled in the orignal config and use that. +sub parse_config_selects +{ + my ($config, $p) = @_; + + my $next_config; + + while ($p =~ /[$valid]/) { + + if ($p =~ /^[^$valid]*([$valid]+)/) { + my $conf = "CONFIG_" . $1; + + $p =~ s/^[^$valid]*[$valid]+//; + + # Make sure that this config exists in the current .config file + if (!defined($orig_configs{$conf})) { + dprint "$conf not set for $config select\n"; + next; + } + + # Check if something other than a module selects this config + if (defined($orig_configs{$conf}) && $orig_configs{$conf} ne "m") { + dprint "$conf (non module) selects config, we are good\n"; + # we are good with this + return; + } + if (defined($configs{$conf})) { + dprint "$conf selects $config so we are good\n"; + # A set config selects this config, we are good + return; + } + # Set this config to be selected + if (!defined($next_config)) { + $next_config = $conf; + } + } else { + die "this should never happen"; + } + } + + # If no possible config selected this, then something happened. + if (!defined($next_config)) { + print STDERR "WARNING: $config is required, but nothing in the\n"; + print STDERR " current config selects it.\n"; + return; + } + + # If we are here, then we found no config that is set and + # selects this config. Repeat. + $repeat = 1; + # Make this config need to be selected + $configs{$next_config} = 1; + dprint "$next_config selected by select $config\n"; +} + +my %process_selects; + +# loop through all configs, select their dependencies. +sub loop_depend { + $repeat = 1; + + while ($repeat) { + $repeat = 0; + + forloop: + foreach my $config (keys %configs) { + + # If this config is not a module, we do not need to process it + if (defined($orig_configs{$config}) && $orig_configs{$config} ne "m") { + next forloop; + } + + $config =~ s/^CONFIG_//; + $depconfig = $config; + + if (defined($depends{$config})) { + # This config has dependencies. Make sure they are also included + parse_config_depends $depends{$config}; + } + + # If the config has no prompt, then we need to check if a config + # that is enabled selected it. Or if we need to enable one. + if (!defined($prompts{$config}) && defined($selects{$config})) { + $process_selects{$config} = 1; + } + } + } +} + +sub loop_select { + + foreach my $config (keys %process_selects) { + $config =~ s/^CONFIG_//; + + dprint "Process select $config\n"; + + # config has no prompt and must be selected. + parse_config_selects $config, $selects{$config}; + } +} + +while ($repeat) { + # Get the first set of configs and their dependencies. + loop_depend; + + $repeat = 0; + + # Now we need to see if we have to check selects; + loop_select; +} + +my %setconfigs; + +# Finally, read the .config file and turn off any module enabled that +# we could not find a reason to keep enabled. +foreach my $line (@config_file) { + $_ = $line; + + if (/CONFIG_IKCONFIG/) { + if (/# CONFIG_IKCONFIG is not set/) { + # enable IKCONFIG at least as a module + print "CONFIG_IKCONFIG=m\n"; + # don't ask about PROC + print "# CONFIG_IKCONFIG_PROC is not set\n"; + } else { + print; + } + next; + } + + if (/^(CONFIG.*)=(m|y)/) { + if (defined($configs{$1})) { + if ($localyesconfig) { + $setconfigs{$1} = 'y'; + print "$1=y\n"; + next; + } else { + $setconfigs{$1} = $2; + } + } elsif ($2 eq "m") { + print "# $1 is not set\n"; + next; + } + } + print; +} + +# Integrity check, make sure all modules that we want enabled do +# indeed have their configs set. +loop: +foreach my $module (keys(%modules)) { + if (defined($objects{$module})) { + my @arr = @{$objects{$module}}; + foreach my $conf (@arr) { + if (defined($setconfigs{$conf})) { + next loop; + } + } + print STDERR "module $module did not have configs"; + foreach my $conf (@arr) { + print STDERR " " , $conf; + } + print STDERR "\n"; + } +} diff --git a/scripts/kconfig/symbol.c b/scripts/kconfig/symbol.c new file mode 100644 index 0000000..7caabdb --- /dev/null +++ b/scripts/kconfig/symbol.c @@ -0,0 +1,1373 @@ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <ctype.h> +#include <stdlib.h> +#include <string.h> +#include <regex.h> +#include <sys/utsname.h> + +#include "lkc.h" + +struct symbol symbol_yes = { + .name = "y", + .curr = { "y", yes }, + .flags = SYMBOL_CONST|SYMBOL_VALID, +}, symbol_mod = { + .name = "m", + .curr = { "m", mod }, + .flags = SYMBOL_CONST|SYMBOL_VALID, +}, symbol_no = { + .name = "n", + .curr = { "n", no }, + .flags = SYMBOL_CONST|SYMBOL_VALID, +}, symbol_empty = { + .name = "", + .curr = { "", no }, + .flags = SYMBOL_VALID, +}; + +struct symbol *sym_defconfig_list; +struct symbol *modules_sym; +tristate modules_val; + +struct expr *sym_env_list; + +static void sym_add_default(struct symbol *sym, const char *def) +{ + struct property *prop = prop_alloc(P_DEFAULT, sym); + + prop->expr = expr_alloc_symbol(sym_lookup(def, SYMBOL_CONST)); +} + +void sym_init(void) +{ + struct symbol *sym; + struct utsname uts; + static bool inited = false; + + if (inited) + return; + inited = true; + + uname(&uts); + + sym = sym_lookup("UNAME_RELEASE", 0); + sym->type = S_STRING; + sym->flags |= SYMBOL_AUTO; + sym_add_default(sym, uts.release); +} + +enum symbol_type sym_get_type(struct symbol *sym) +{ + enum symbol_type type = sym->type; + + if (type == S_TRISTATE) { + if (sym_is_choice_value(sym) && sym->visible == yes) + type = S_BOOLEAN; + else if (modules_val == no) + type = S_BOOLEAN; + } + return type; +} + +const char *sym_type_name(enum symbol_type type) +{ + switch (type) { + case S_BOOLEAN: + return "boolean"; + case S_TRISTATE: + return "tristate"; + case S_INT: + return "integer"; + case S_HEX: + return "hex"; + case S_STRING: + return "string"; + case S_UNKNOWN: + return "unknown"; + case S_OTHER: + break; + } + return "???"; +} + +struct property *sym_get_choice_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_choices(sym, prop) + return prop; + return NULL; +} + +struct property *sym_get_env_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_properties(sym, prop, P_ENV) + return prop; + return NULL; +} + +struct property *sym_get_default_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_defaults(sym, prop) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + if (prop->visible.tri != no) + return prop; + } + return NULL; +} + +static struct property *sym_get_range_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_properties(sym, prop, P_RANGE) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + if (prop->visible.tri != no) + return prop; + } + return NULL; +} + +static long long sym_get_range_val(struct symbol *sym, int base) +{ + sym_calc_value(sym); + switch (sym->type) { + case S_INT: + base = 10; + break; + case S_HEX: + base = 16; + break; + default: + break; + } + return strtoll(sym->curr.val, NULL, base); +} + +static void sym_validate_range(struct symbol *sym) +{ + struct property *prop; + int base; + long long val, val2; + char str[64]; + + switch (sym->type) { + case S_INT: + base = 10; + break; + case S_HEX: + base = 16; + break; + default: + return; + } + prop = sym_get_range_prop(sym); + if (!prop) + return; + val = strtoll(sym->curr.val, NULL, base); + val2 = sym_get_range_val(prop->expr->left.sym, base); + if (val >= val2) { + val2 = sym_get_range_val(prop->expr->right.sym, base); + if (val <= val2) + return; + } + if (sym->type == S_INT) + sprintf(str, "%lld", val2); + else + sprintf(str, "0x%llx", val2); + sym->curr.val = strdup(str); +} + +static void sym_calc_visibility(struct symbol *sym) +{ + struct property *prop; + tristate tri; + + /* any prompt visible? */ + tri = no; + for_all_prompts(sym, prop) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + tri = EXPR_OR(tri, prop->visible.tri); + } + if (tri == mod && (sym->type != S_TRISTATE || modules_val == no)) + tri = yes; + if (sym->visible != tri) { + sym->visible = tri; + sym_set_changed(sym); + } + if (sym_is_choice_value(sym)) + return; + /* defaulting to "yes" if no explicit "depends on" are given */ + tri = yes; + if (sym->dir_dep.expr) + tri = expr_calc_value(sym->dir_dep.expr); + if (tri == mod) + tri = yes; + if (sym->dir_dep.tri != tri) { + sym->dir_dep.tri = tri; + sym_set_changed(sym); + } + tri = no; + if (sym->rev_dep.expr) + tri = expr_calc_value(sym->rev_dep.expr); + if (tri == mod && sym_get_type(sym) == S_BOOLEAN) + tri = yes; + if (sym->rev_dep.tri != tri) { + sym->rev_dep.tri = tri; + sym_set_changed(sym); + } +} + +/* + * Find the default symbol for a choice. + * First try the default values for the choice symbol + * Next locate the first visible choice value + * Return NULL if none was found + */ +struct symbol *sym_choice_default(struct symbol *sym) +{ + struct symbol *def_sym; + struct property *prop; + struct expr *e; + + /* any of the defaults visible? */ + for_all_defaults(sym, prop) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + if (prop->visible.tri == no) + continue; + def_sym = prop_get_symbol(prop); + if (def_sym->visible != no) + return def_sym; + } + + /* just get the first visible value */ + prop = sym_get_choice_prop(sym); + expr_list_for_each_sym(prop->expr, e, def_sym) + if (def_sym->visible != no) + return def_sym; + + /* failed to locate any defaults */ + return NULL; +} + +static struct symbol *sym_calc_choice(struct symbol *sym) +{ + struct symbol *def_sym; + struct property *prop; + struct expr *e; + int flags; + + /* first calculate all choice values' visibilities */ + flags = sym->flags; + prop = sym_get_choice_prop(sym); + expr_list_for_each_sym(prop->expr, e, def_sym) { + sym_calc_visibility(def_sym); + if (def_sym->visible != no) + flags &= def_sym->flags; + } + + sym->flags &= flags | ~SYMBOL_DEF_USER; + + /* is the user choice visible? */ + def_sym = sym->def[S_DEF_USER].val; + if (def_sym && def_sym->visible != no) + return def_sym; + + def_sym = sym_choice_default(sym); + + if (def_sym == NULL) + /* no choice? reset tristate value */ + sym->curr.tri = no; + + return def_sym; +} + +void sym_calc_value(struct symbol *sym) +{ + struct symbol_value newval, oldval; + struct property *prop; + struct expr *e; + + if (!sym) + return; + + if (sym->flags & SYMBOL_VALID) + return; + + if (sym_is_choice_value(sym) && + sym->flags & SYMBOL_NEED_SET_CHOICE_VALUES) { + sym->flags &= ~SYMBOL_NEED_SET_CHOICE_VALUES; + prop = sym_get_choice_prop(sym); + sym_calc_value(prop_get_symbol(prop)); + } + + sym->flags |= SYMBOL_VALID; + + oldval = sym->curr; + + switch (sym->type) { + case S_INT: + case S_HEX: + case S_STRING: + newval = symbol_empty.curr; + break; + case S_BOOLEAN: + case S_TRISTATE: + newval = symbol_no.curr; + break; + default: + sym->curr.val = sym->name; + sym->curr.tri = no; + return; + } + if (!sym_is_choice_value(sym)) + sym->flags &= ~SYMBOL_WRITE; + + sym_calc_visibility(sym); + + /* set default if recursively called */ + sym->curr = newval; + + switch (sym_get_type(sym)) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym_is_choice_value(sym) && sym->visible == yes) { + prop = sym_get_choice_prop(sym); + newval.tri = (prop_get_symbol(prop)->curr.val == sym) ? yes : no; + } else { + if (sym->visible != no) { + /* if the symbol is visible use the user value + * if available, otherwise try the default value + */ + sym->flags |= SYMBOL_WRITE; + if (sym_has_value(sym)) { + newval.tri = EXPR_AND(sym->def[S_DEF_USER].tri, + sym->visible); + goto calc_newval; + } + } + if (sym->rev_dep.tri != no) + sym->flags |= SYMBOL_WRITE; + if (!sym_is_choice(sym)) { + prop = sym_get_default_prop(sym); + if (prop) { + sym->flags |= SYMBOL_WRITE; + newval.tri = EXPR_AND(expr_calc_value(prop->expr), + prop->visible.tri); + } + } + calc_newval: + if (sym->dir_dep.tri == no && sym->rev_dep.tri != no) { + struct expr *e; + e = expr_simplify_unmet_dep(sym->rev_dep.expr, + sym->dir_dep.expr); + fprintf(stderr, "warning: ("); + expr_fprint(e, stderr); + fprintf(stderr, ") selects %s which has unmet direct dependencies (", + sym->name); + expr_fprint(sym->dir_dep.expr, stderr); + fprintf(stderr, ")\n"); + expr_free(e); + } + newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri); + } + if (newval.tri == mod && sym_get_type(sym) == S_BOOLEAN) + newval.tri = yes; + break; + case S_STRING: + case S_HEX: + case S_INT: + if (sym->visible != no) { + sym->flags |= SYMBOL_WRITE; + if (sym_has_value(sym)) { + newval.val = sym->def[S_DEF_USER].val; + break; + } + } + prop = sym_get_default_prop(sym); + if (prop) { + struct symbol *ds = prop_get_symbol(prop); + if (ds) { + sym->flags |= SYMBOL_WRITE; + sym_calc_value(ds); + newval.val = ds->curr.val; + } + } + break; + default: + ; + } + + sym->curr = newval; + if (sym_is_choice(sym) && newval.tri == yes) + sym->curr.val = sym_calc_choice(sym); + sym_validate_range(sym); + + if (memcmp(&oldval, &sym->curr, sizeof(oldval))) { + sym_set_changed(sym); + if (modules_sym == sym) { + sym_set_all_changed(); + modules_val = modules_sym->curr.tri; + } + } + + if (sym_is_choice(sym)) { + struct symbol *choice_sym; + + prop = sym_get_choice_prop(sym); + expr_list_for_each_sym(prop->expr, e, choice_sym) { + if ((sym->flags & SYMBOL_WRITE) && + choice_sym->visible != no) + choice_sym->flags |= SYMBOL_WRITE; + if (sym->flags & SYMBOL_CHANGED) + sym_set_changed(choice_sym); + } + } + + if (sym->flags & SYMBOL_AUTO) + sym->flags &= ~SYMBOL_WRITE; + + if (sym->flags & SYMBOL_NEED_SET_CHOICE_VALUES) + set_all_choice_values(sym); +} + +void sym_clear_all_valid(void) +{ + struct symbol *sym; + int i; + + for_all_symbols(i, sym) + sym->flags &= ~SYMBOL_VALID; + sym_add_change_count(1); + if (modules_sym) + sym_calc_value(modules_sym); +} + +void sym_set_changed(struct symbol *sym) +{ + struct property *prop; + + sym->flags |= SYMBOL_CHANGED; + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->menu) + prop->menu->flags |= MENU_CHANGED; + } +} + +void sym_set_all_changed(void) +{ + struct symbol *sym; + int i; + + for_all_symbols(i, sym) + sym_set_changed(sym); +} + +bool sym_tristate_within_range(struct symbol *sym, tristate val) +{ + int type = sym_get_type(sym); + + if (sym->visible == no) + return false; + + if (type != S_BOOLEAN && type != S_TRISTATE) + return false; + + if (type == S_BOOLEAN && val == mod) + return false; + if (sym->visible <= sym->rev_dep.tri) + return false; + if (sym_is_choice_value(sym) && sym->visible == yes) + return val == yes; + return val >= sym->rev_dep.tri && val <= sym->visible; +} + +bool sym_set_tristate_value(struct symbol *sym, tristate val) +{ + tristate oldval = sym_get_tristate_value(sym); + + if (oldval != val && !sym_tristate_within_range(sym, val)) + return false; + + if (!(sym->flags & SYMBOL_DEF_USER)) { + sym->flags |= SYMBOL_DEF_USER; + sym_set_changed(sym); + } + /* + * setting a choice value also resets the new flag of the choice + * symbol and all other choice values. + */ + if (sym_is_choice_value(sym) && val == yes) { + struct symbol *cs = prop_get_symbol(sym_get_choice_prop(sym)); + struct property *prop; + struct expr *e; + + cs->def[S_DEF_USER].val = sym; + cs->flags |= SYMBOL_DEF_USER; + prop = sym_get_choice_prop(cs); + for (e = prop->expr; e; e = e->left.expr) { + if (e->right.sym->visible != no) + e->right.sym->flags |= SYMBOL_DEF_USER; + } + } + + sym->def[S_DEF_USER].tri = val; + if (oldval != val) + sym_clear_all_valid(); + + return true; +} + +tristate sym_toggle_tristate_value(struct symbol *sym) +{ + tristate oldval, newval; + + oldval = newval = sym_get_tristate_value(sym); + do { + switch (newval) { + case no: + newval = mod; + break; + case mod: + newval = yes; + break; + case yes: + newval = no; + break; + } + if (sym_set_tristate_value(sym, newval)) + break; + } while (oldval != newval); + return newval; +} + +bool sym_string_valid(struct symbol *sym, const char *str) +{ + signed char ch; + + switch (sym->type) { + case S_STRING: + return true; + case S_INT: + ch = *str++; + if (ch == '-') + ch = *str++; + if (!isdigit(ch)) + return false; + if (ch == '0' && *str != 0) + return false; + while ((ch = *str++)) { + if (!isdigit(ch)) + return false; + } + return true; + case S_HEX: + if (str[0] == '0' && (str[1] == 'x' || str[1] == 'X')) + str += 2; + ch = *str++; + do { + if (!isxdigit(ch)) + return false; + } while ((ch = *str++)); + return true; + case S_BOOLEAN: + case S_TRISTATE: + switch (str[0]) { + case 'y': case 'Y': + case 'm': case 'M': + case 'n': case 'N': + return true; + } + return false; + default: + return false; + } +} + +bool sym_string_within_range(struct symbol *sym, const char *str) +{ + struct property *prop; + long long val; + + switch (sym->type) { + case S_STRING: + return sym_string_valid(sym, str); + case S_INT: + if (!sym_string_valid(sym, str)) + return false; + prop = sym_get_range_prop(sym); + if (!prop) + return true; + val = strtoll(str, NULL, 10); + return val >= sym_get_range_val(prop->expr->left.sym, 10) && + val <= sym_get_range_val(prop->expr->right.sym, 10); + case S_HEX: + if (!sym_string_valid(sym, str)) + return false; + prop = sym_get_range_prop(sym); + if (!prop) + return true; + val = strtoll(str, NULL, 16); + return val >= sym_get_range_val(prop->expr->left.sym, 16) && + val <= sym_get_range_val(prop->expr->right.sym, 16); + case S_BOOLEAN: + case S_TRISTATE: + switch (str[0]) { + case 'y': case 'Y': + return sym_tristate_within_range(sym, yes); + case 'm': case 'M': + return sym_tristate_within_range(sym, mod); + case 'n': case 'N': + return sym_tristate_within_range(sym, no); + } + return false; + default: + return false; + } +} + +bool sym_set_string_value(struct symbol *sym, const char *newval) +{ + const char *oldval; + char *val; + int size; + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + switch (newval[0]) { + case 'y': case 'Y': + return sym_set_tristate_value(sym, yes); + case 'm': case 'M': + return sym_set_tristate_value(sym, mod); + case 'n': case 'N': + return sym_set_tristate_value(sym, no); + } + return false; + default: + ; + } + + if (!sym_string_within_range(sym, newval)) + return false; + + if (!(sym->flags & SYMBOL_DEF_USER)) { + sym->flags |= SYMBOL_DEF_USER; + sym_set_changed(sym); + } + + oldval = sym->def[S_DEF_USER].val; + size = strlen(newval) + 1; + if (sym->type == S_HEX && (newval[0] != '0' || (newval[1] != 'x' && newval[1] != 'X'))) { + size += 2; + sym->def[S_DEF_USER].val = val = xmalloc(size); + *val++ = '0'; + *val++ = 'x'; + } else if (!oldval || strcmp(oldval, newval)) + sym->def[S_DEF_USER].val = val = xmalloc(size); + else + return true; + + strcpy(val, newval); + free((void *)oldval); + sym_clear_all_valid(); + + return true; +} + +/* + * Find the default value associated to a symbol. + * For tristate symbol handle the modules=n case + * in which case "m" becomes "y". + * If the symbol does not have any default then fallback + * to the fixed default values. + */ +const char *sym_get_string_default(struct symbol *sym) +{ + struct property *prop; + struct symbol *ds; + const char *str; + tristate val; + + sym_calc_visibility(sym); + sym_calc_value(modules_sym); + val = symbol_no.curr.tri; + str = symbol_empty.curr.val; + + /* If symbol has a default value look it up */ + prop = sym_get_default_prop(sym); + if (prop != NULL) { + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + /* The visibility may limit the value from yes => mod */ + val = EXPR_AND(expr_calc_value(prop->expr), prop->visible.tri); + break; + default: + /* + * The following fails to handle the situation + * where a default value is further limited by + * the valid range. + */ + ds = prop_get_symbol(prop); + if (ds != NULL) { + sym_calc_value(ds); + str = (const char *)ds->curr.val; + } + } + } + + /* Handle select statements */ + val = EXPR_OR(val, sym->rev_dep.tri); + + /* transpose mod to yes if modules are not enabled */ + if (val == mod) + if (!sym_is_choice_value(sym) && modules_sym->curr.tri == no) + val = yes; + + /* transpose mod to yes if type is bool */ + if (sym->type == S_BOOLEAN && val == mod) + val = yes; + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + switch (val) { + case no: return "n"; + case mod: return "m"; + case yes: return "y"; + } + case S_INT: + case S_HEX: + return str; + case S_STRING: + return str; + case S_OTHER: + case S_UNKNOWN: + break; + } + return ""; +} + +const char *sym_get_string_value(struct symbol *sym) +{ + tristate val; + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + val = sym_get_tristate_value(sym); + switch (val) { + case no: + return "n"; + case mod: + sym_calc_value(modules_sym); + return (modules_sym->curr.tri == no) ? "n" : "m"; + case yes: + return "y"; + } + break; + default: + ; + } + return (const char *)sym->curr.val; +} + +bool sym_is_changable(struct symbol *sym) +{ + return sym->visible > sym->rev_dep.tri; +} + +static unsigned strhash(const char *s) +{ + /* fnv32 hash */ + unsigned hash = 2166136261U; + for (; *s; s++) + hash = (hash ^ *s) * 0x01000193; + return hash; +} + +struct symbol *sym_lookup(const char *name, int flags) +{ + struct symbol *symbol; + char *new_name; + int hash; + + if (name) { + if (name[0] && !name[1]) { + switch (name[0]) { + case 'y': return &symbol_yes; + case 'm': return &symbol_mod; + case 'n': return &symbol_no; + } + } + hash = strhash(name) % SYMBOL_HASHSIZE; + + for (symbol = symbol_hash[hash]; symbol; symbol = symbol->next) { + if (symbol->name && + !strcmp(symbol->name, name) && + (flags ? symbol->flags & flags + : !(symbol->flags & (SYMBOL_CONST|SYMBOL_CHOICE)))) + return symbol; + } + new_name = strdup(name); + } else { + new_name = NULL; + hash = 0; + } + + symbol = xmalloc(sizeof(*symbol)); + memset(symbol, 0, sizeof(*symbol)); + symbol->name = new_name; + symbol->type = S_UNKNOWN; + symbol->flags |= flags; + + symbol->next = symbol_hash[hash]; + symbol_hash[hash] = symbol; + + return symbol; +} + +struct symbol *sym_find(const char *name) +{ + struct symbol *symbol = NULL; + int hash = 0; + + if (!name) + return NULL; + + if (name[0] && !name[1]) { + switch (name[0]) { + case 'y': return &symbol_yes; + case 'm': return &symbol_mod; + case 'n': return &symbol_no; + } + } + hash = strhash(name) % SYMBOL_HASHSIZE; + + for (symbol = symbol_hash[hash]; symbol; symbol = symbol->next) { + if (symbol->name && + !strcmp(symbol->name, name) && + !(symbol->flags & SYMBOL_CONST)) + break; + } + + return symbol; +} + +/* + * Expand symbol's names embedded in the string given in argument. Symbols' + * name to be expanded shall be prefixed by a '$'. Unknown symbol expands to + * the empty string. + */ +const char *sym_expand_string_value(const char *in) +{ + const char *src; + char *res; + size_t reslen; + + reslen = strlen(in) + 1; + res = xmalloc(reslen); + res[0] = '\0'; + + while ((src = strchr(in, '$'))) { + char *p, name[SYMBOL_MAXLENGTH]; + const char *symval = ""; + struct symbol *sym; + size_t newlen; + + strncat(res, in, src - in); + src++; + + p = name; + while (isalnum(*src) || *src == '_') + *p++ = *src++; + *p = '\0'; + + sym = sym_find(name); + if (sym != NULL) { + sym_calc_value(sym); + symval = sym_get_string_value(sym); + } + + newlen = strlen(res) + strlen(symval) + strlen(src) + 1; + if (newlen > reslen) { + reslen = newlen; + res = realloc(res, reslen); + } + + strcat(res, symval); + in = src; + } + strcat(res, in); + + return res; +} + +const char *sym_escape_string_value(const char *in) +{ + const char *p; + size_t reslen; + char *res; + size_t l; + + reslen = strlen(in) + strlen("\"\"") + 1; + + p = in; + for (;;) { + l = strcspn(p, "\"\\"); + p += l; + + if (p[0] == '\0') + break; + + reslen++; + p++; + } + + res = xmalloc(reslen); + res[0] = '\0'; + + strcat(res, "\""); + + p = in; + for (;;) { + l = strcspn(p, "\"\\"); + strncat(res, p, l); + p += l; + + if (p[0] == '\0') + break; + + strcat(res, "\\"); + strncat(res, p++, 1); + } + + strcat(res, "\""); + return res; +} + +struct sym_match { + struct symbol *sym; + off_t so, eo; +}; + +/* Compare matched symbols as thus: + * - first, symbols that match exactly + * - then, alphabetical sort + */ +static int sym_rel_comp(const void *sym1, const void *sym2) +{ + const struct sym_match *s1 = sym1; + const struct sym_match *s2 = sym2; + int exact1, exact2; + + /* Exact match: + * - if matched length on symbol s1 is the length of that symbol, + * then this symbol should come first; + * - if matched length on symbol s2 is the length of that symbol, + * then this symbol should come first. + * Note: since the search can be a regexp, both symbols may match + * exactly; if this is the case, we can't decide which comes first, + * and we fallback to sorting alphabetically. + */ + exact1 = (s1->eo - s1->so) == strlen(s1->sym->name); + exact2 = (s2->eo - s2->so) == strlen(s2->sym->name); + if (exact1 && !exact2) + return -1; + if (!exact1 && exact2) + return 1; + + /* As a fallback, sort symbols alphabetically */ + return strcmp(s1->sym->name, s2->sym->name); +} + +struct symbol **sym_re_search(const char *pattern) +{ + struct symbol *sym, **sym_arr = NULL; + struct sym_match *sym_match_arr = NULL; + int i, cnt, size; + regex_t re; + regmatch_t match[1]; + + cnt = size = 0; + /* Skip if empty */ + if (strlen(pattern) == 0) + return NULL; + if (regcomp(&re, pattern, REG_EXTENDED|REG_ICASE)) + return NULL; + + for_all_symbols(i, sym) { + if (sym->flags & SYMBOL_CONST || !sym->name) + continue; + if (regexec(&re, sym->name, 1, match, 0)) + continue; + if (cnt >= size) { + void *tmp; + size += 16; + tmp = realloc(sym_match_arr, size * sizeof(struct sym_match)); + if (!tmp) + goto sym_re_search_free; + sym_match_arr = tmp; + } + sym_calc_value(sym); + /* As regexec returned 0, we know we have a match, so + * we can use match[0].rm_[se]o without further checks + */ + sym_match_arr[cnt].so = match[0].rm_so; + sym_match_arr[cnt].eo = match[0].rm_eo; + sym_match_arr[cnt++].sym = sym; + } + if (sym_match_arr) { + qsort(sym_match_arr, cnt, sizeof(struct sym_match), sym_rel_comp); + sym_arr = malloc((cnt+1) * sizeof(struct symbol)); + if (!sym_arr) + goto sym_re_search_free; + for (i = 0; i < cnt; i++) + sym_arr[i] = sym_match_arr[i].sym; + sym_arr[cnt] = NULL; + } +sym_re_search_free: + /* sym_match_arr can be NULL if no match, but free(NULL) is OK */ + free(sym_match_arr); + regfree(&re); + + return sym_arr; +} + +/* + * When we check for recursive dependencies we use a stack to save + * current state so we can print out relevant info to user. + * The entries are located on the call stack so no need to free memory. + * Note insert() remove() must always match to properly clear the stack. + */ +static struct dep_stack { + struct dep_stack *prev, *next; + struct symbol *sym; + struct property *prop; + struct expr *expr; +} *check_top; + +static void dep_stack_insert(struct dep_stack *stack, struct symbol *sym) +{ + memset(stack, 0, sizeof(*stack)); + if (check_top) + check_top->next = stack; + stack->prev = check_top; + stack->sym = sym; + check_top = stack; +} + +static void dep_stack_remove(void) +{ + check_top = check_top->prev; + if (check_top) + check_top->next = NULL; +} + +/* + * Called when we have detected a recursive dependency. + * check_top point to the top of the stact so we use + * the ->prev pointer to locate the bottom of the stack. + */ +static void sym_check_print_recursive(struct symbol *last_sym) +{ + struct dep_stack *stack; + struct symbol *sym, *next_sym; + struct menu *menu = NULL; + struct property *prop; + struct dep_stack cv_stack; + + if (sym_is_choice_value(last_sym)) { + dep_stack_insert(&cv_stack, last_sym); + last_sym = prop_get_symbol(sym_get_choice_prop(last_sym)); + } + + for (stack = check_top; stack != NULL; stack = stack->prev) + if (stack->sym == last_sym) + break; + if (!stack) { + fprintf(stderr, "unexpected recursive dependency error\n"); + return; + } + + for (; stack; stack = stack->next) { + sym = stack->sym; + next_sym = stack->next ? stack->next->sym : last_sym; + prop = stack->prop; + if (prop == NULL) + prop = stack->sym->prop; + + /* for choice values find the menu entry (used below) */ + if (sym_is_choice(sym) || sym_is_choice_value(sym)) { + for (prop = sym->prop; prop; prop = prop->next) { + menu = prop->menu; + if (prop->menu) + break; + } + } + if (stack->sym == last_sym) + fprintf(stderr, "%s:%d:error: recursive dependency detected!\n", + prop->file->name, prop->lineno); + if (stack->expr) { + fprintf(stderr, "%s:%d:\tsymbol %s %s value contains %s\n", + prop->file->name, prop->lineno, + sym->name ? sym->name : "<choice>", + prop_get_type_name(prop->type), + next_sym->name ? next_sym->name : "<choice>"); + } else if (stack->prop) { + fprintf(stderr, "%s:%d:\tsymbol %s depends on %s\n", + prop->file->name, prop->lineno, + sym->name ? sym->name : "<choice>", + next_sym->name ? next_sym->name : "<choice>"); + } else if (sym_is_choice(sym)) { + fprintf(stderr, "%s:%d:\tchoice %s contains symbol %s\n", + menu->file->name, menu->lineno, + sym->name ? sym->name : "<choice>", + next_sym->name ? next_sym->name : "<choice>"); + } else if (sym_is_choice_value(sym)) { + fprintf(stderr, "%s:%d:\tsymbol %s is part of choice %s\n", + menu->file->name, menu->lineno, + sym->name ? sym->name : "<choice>", + next_sym->name ? next_sym->name : "<choice>"); + } else { + fprintf(stderr, "%s:%d:\tsymbol %s is selected by %s\n", + prop->file->name, prop->lineno, + sym->name ? sym->name : "<choice>", + next_sym->name ? next_sym->name : "<choice>"); + } + } + + if (check_top == &cv_stack) + dep_stack_remove(); +} + +static struct symbol *sym_check_expr_deps(struct expr *e) +{ + struct symbol *sym; + + if (!e) + return NULL; + switch (e->type) { + case E_OR: + case E_AND: + sym = sym_check_expr_deps(e->left.expr); + if (sym) + return sym; + return sym_check_expr_deps(e->right.expr); + case E_NOT: + return sym_check_expr_deps(e->left.expr); + case E_EQUAL: + case E_UNEQUAL: + sym = sym_check_deps(e->left.sym); + if (sym) + return sym; + return sym_check_deps(e->right.sym); + case E_SYMBOL: + return sym_check_deps(e->left.sym); + default: + break; + } + printf("Oops! How to check %d?\n", e->type); + return NULL; +} + +/* return NULL when dependencies are OK */ +static struct symbol *sym_check_sym_deps(struct symbol *sym) +{ + struct symbol *sym2; + struct property *prop; + struct dep_stack stack; + + dep_stack_insert(&stack, sym); + + sym2 = sym_check_expr_deps(sym->rev_dep.expr); + if (sym2) + goto out; + + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->type == P_CHOICE || prop->type == P_SELECT) + continue; + stack.prop = prop; + sym2 = sym_check_expr_deps(prop->visible.expr); + if (sym2) + break; + if (prop->type != P_DEFAULT || sym_is_choice(sym)) + continue; + stack.expr = prop->expr; + sym2 = sym_check_expr_deps(prop->expr); + if (sym2) + break; + stack.expr = NULL; + } + +out: + dep_stack_remove(); + + return sym2; +} + +static struct symbol *sym_check_choice_deps(struct symbol *choice) +{ + struct symbol *sym, *sym2; + struct property *prop; + struct expr *e; + struct dep_stack stack; + + dep_stack_insert(&stack, choice); + + prop = sym_get_choice_prop(choice); + expr_list_for_each_sym(prop->expr, e, sym) + sym->flags |= (SYMBOL_CHECK | SYMBOL_CHECKED); + + choice->flags |= (SYMBOL_CHECK | SYMBOL_CHECKED); + sym2 = sym_check_sym_deps(choice); + choice->flags &= ~SYMBOL_CHECK; + if (sym2) + goto out; + + expr_list_for_each_sym(prop->expr, e, sym) { + sym2 = sym_check_sym_deps(sym); + if (sym2) + break; + } +out: + expr_list_for_each_sym(prop->expr, e, sym) + sym->flags &= ~SYMBOL_CHECK; + + if (sym2 && sym_is_choice_value(sym2) && + prop_get_symbol(sym_get_choice_prop(sym2)) == choice) + sym2 = choice; + + dep_stack_remove(); + + return sym2; +} + +struct symbol *sym_check_deps(struct symbol *sym) +{ + struct symbol *sym2; + struct property *prop; + + if (sym->flags & SYMBOL_CHECK) { + sym_check_print_recursive(sym); + return sym; + } + if (sym->flags & SYMBOL_CHECKED) + return NULL; + + if (sym_is_choice_value(sym)) { + struct dep_stack stack; + + /* for choice groups start the check with main choice symbol */ + dep_stack_insert(&stack, sym); + prop = sym_get_choice_prop(sym); + sym2 = sym_check_deps(prop_get_symbol(prop)); + dep_stack_remove(); + } else if (sym_is_choice(sym)) { + sym2 = sym_check_choice_deps(sym); + } else { + sym->flags |= (SYMBOL_CHECK | SYMBOL_CHECKED); + sym2 = sym_check_sym_deps(sym); + sym->flags &= ~SYMBOL_CHECK; + } + + if (sym2 && sym2 == sym) + sym2 = NULL; + + return sym2; +} + +struct property *prop_alloc(enum prop_type type, struct symbol *sym) +{ + struct property *prop; + struct property **propp; + + prop = xmalloc(sizeof(*prop)); + memset(prop, 0, sizeof(*prop)); + prop->type = type; + prop->sym = sym; + prop->file = current_file; + prop->lineno = zconf_lineno(); + + /* append property to the prop list of symbol */ + if (sym) { + for (propp = &sym->prop; *propp; propp = &(*propp)->next) + ; + *propp = prop; + } + + return prop; +} + +struct symbol *prop_get_symbol(struct property *prop) +{ + if (prop->expr && (prop->expr->type == E_SYMBOL || + prop->expr->type == E_LIST)) + return prop->expr->left.sym; + return NULL; +} + +const char *prop_get_type_name(enum prop_type type) +{ + switch (type) { + case P_PROMPT: + return "prompt"; + case P_ENV: + return "env"; + case P_COMMENT: + return "comment"; + case P_MENU: + return "menu"; + case P_DEFAULT: + return "default"; + case P_CHOICE: + return "choice"; + case P_SELECT: + return "select"; + case P_RANGE: + return "range"; + case P_SYMBOL: + return "symbol"; + case P_UNKNOWN: + break; + } + return "unknown"; +} + +static void prop_add_env(const char *env) +{ + struct symbol *sym, *sym2; + struct property *prop; + char *p; + + sym = current_entry->sym; + sym->flags |= SYMBOL_AUTO; + for_all_properties(sym, prop, P_ENV) { + sym2 = prop_get_symbol(prop); + if (strcmp(sym2->name, env)) + menu_warn(current_entry, "redefining environment symbol from %s", + sym2->name); + return; + } + + prop = prop_alloc(P_ENV, sym); + prop->expr = expr_alloc_symbol(sym_lookup(env, SYMBOL_CONST)); + + sym_env_list = expr_alloc_one(E_LIST, sym_env_list); + sym_env_list->right.sym = sym; + + p = getenv(env); + if (p) + sym_add_default(sym, p); + else + menu_warn(current_entry, "environment variable %s undefined", env); +} diff --git a/scripts/kconfig/util.c b/scripts/kconfig/util.c new file mode 100644 index 0000000..94f9c83 --- /dev/null +++ b/scripts/kconfig/util.c @@ -0,0 +1,157 @@ +/* + * Copyright (C) 2002-2005 Roman Zippel <zippel@linux-m68k.org> + * Copyright (C) 2002-2005 Sam Ravnborg <sam@ravnborg.org> + * + * Released under the terms of the GNU GPL v2.0. + */ + +#include <stdarg.h> +#include <stdlib.h> +#include <string.h> +#include "lkc.h" + +/* file already present in list? If not add it */ +struct file *file_lookup(const char *name) +{ + struct file *file; + const char *file_name = sym_expand_string_value(name); + + for (file = file_list; file; file = file->next) { + if (!strcmp(name, file->name)) { + free((void *)file_name); + return file; + } + } + + file = xmalloc(sizeof(*file)); + memset(file, 0, sizeof(*file)); + file->name = file_name; + file->next = file_list; + file_list = file; + return file; +} + +/* write a dependency file as used by kbuild to track dependencies */ +int file_write_dep(const char *name) +{ + struct symbol *sym, *env_sym; + struct expr *e; + struct file *file; + FILE *out; + + if (!name) + name = ".kconfig.d"; + out = fopen("..config.tmp", "w"); + if (!out) + return 1; + fprintf(out, "deps_config := \\\n"); + for (file = file_list; file; file = file->next) { + if (file->next) + fprintf(out, "\t%s \\\n", file->name); + else + fprintf(out, "\t%s\n", file->name); + } + fprintf(out, "\n%s: \\\n" + "\t$(deps_config)\n\n", conf_get_autoconfig_name()); + + expr_list_for_each_sym(sym_env_list, e, sym) { + struct property *prop; + const char *value; + + prop = sym_get_env_prop(sym); + env_sym = prop_get_symbol(prop); + if (!env_sym) + continue; + value = getenv(env_sym->name); + if (!value) + value = ""; + fprintf(out, "ifneq \"$(%s)\" \"%s\"\n", env_sym->name, value); + fprintf(out, "%s: FORCE\n", conf_get_autoconfig_name()); + fprintf(out, "endif\n"); + } + + fprintf(out, "\n$(deps_config): ;\n"); + fclose(out); + rename("..config.tmp", name); + return 0; +} + + +/* Allocate initial growable string */ +struct gstr str_new(void) +{ + struct gstr gs; + gs.s = xmalloc(sizeof(char) * 64); + gs.len = 64; + gs.max_width = 0; + strcpy(gs.s, "\0"); + return gs; +} + +/* Allocate and assign growable string */ +struct gstr str_assign(const char *s) +{ + struct gstr gs; + gs.s = strdup(s); + gs.len = strlen(s) + 1; + gs.max_width = 0; + return gs; +} + +/* Free storage for growable string */ +void str_free(struct gstr *gs) +{ + if (gs->s) + free(gs->s); + gs->s = NULL; + gs->len = 0; +} + +/* Append to growable string */ +void str_append(struct gstr *gs, const char *s) +{ + size_t l; + if (s) { + l = strlen(gs->s) + strlen(s) + 1; + if (l > gs->len) { + gs->s = realloc(gs->s, l); + gs->len = l; + } + strcat(gs->s, s); + } +} + +/* Append printf formatted string to growable string */ +void str_printf(struct gstr *gs, const char *fmt, ...) +{ + va_list ap; + char s[10000]; /* big enough... */ + va_start(ap, fmt); + vsnprintf(s, sizeof(s), fmt, ap); + str_append(gs, s); + va_end(ap); +} + +/* Retrieve value of growable string */ +const char *str_get(struct gstr *gs) +{ + return gs->s; +} + +void *xmalloc(size_t size) +{ + void *p = malloc(size); + if (p) + return p; + fprintf(stderr, "Out of memory.\n"); + exit(1); +} + +void *xcalloc(size_t nmemb, size_t size) +{ + void *p = calloc(nmemb, size); + if (p) + return p; + fprintf(stderr, "Out of memory.\n"); + exit(1); +} diff --git a/scripts/kconfig/zconf.gperf b/scripts/kconfig/zconf.gperf new file mode 100644 index 0000000..b6ac02d --- /dev/null +++ b/scripts/kconfig/zconf.gperf @@ -0,0 +1,48 @@ +%language=ANSI-C +%define hash-function-name kconf_id_hash +%define lookup-function-name kconf_id_lookup +%define string-pool-name kconf_id_strings +%compare-strncmp +%enum +%pic +%struct-type + +struct kconf_id; + +static const struct kconf_id *kconf_id_lookup(register const char *str, register unsigned int len); + +%% +mainmenu, T_MAINMENU, TF_COMMAND +menu, T_MENU, TF_COMMAND +endmenu, T_ENDMENU, TF_COMMAND +source, T_SOURCE, TF_COMMAND +choice, T_CHOICE, TF_COMMAND +endchoice, T_ENDCHOICE, TF_COMMAND +comment, T_COMMENT, TF_COMMAND +config, T_CONFIG, TF_COMMAND +menuconfig, T_MENUCONFIG, TF_COMMAND +help, T_HELP, TF_COMMAND +if, T_IF, TF_COMMAND|TF_PARAM +endif, T_ENDIF, TF_COMMAND +depends, T_DEPENDS, TF_COMMAND +optional, T_OPTIONAL, TF_COMMAND +default, T_DEFAULT, TF_COMMAND, S_UNKNOWN +prompt, T_PROMPT, TF_COMMAND +tristate, T_TYPE, TF_COMMAND, S_TRISTATE +def_tristate, T_DEFAULT, TF_COMMAND, S_TRISTATE +bool, T_TYPE, TF_COMMAND, S_BOOLEAN +boolean, T_TYPE, TF_COMMAND, S_BOOLEAN +def_bool, T_DEFAULT, TF_COMMAND, S_BOOLEAN +int, T_TYPE, TF_COMMAND, S_INT +hex, T_TYPE, TF_COMMAND, S_HEX +string, T_TYPE, TF_COMMAND, S_STRING +select, T_SELECT, TF_COMMAND +range, T_RANGE, TF_COMMAND +visible, T_VISIBLE, TF_COMMAND +option, T_OPTION, TF_COMMAND +on, T_ON, TF_PARAM +modules, T_OPT_MODULES, TF_OPTION +defconfig_list, T_OPT_DEFCONFIG_LIST,TF_OPTION +env, T_OPT_ENV, TF_OPTION +allnoconfig_y, T_OPT_ALLNOCONFIG_Y,TF_OPTION +%% diff --git a/scripts/kconfig/zconf.hash.c_shipped b/scripts/kconfig/zconf.hash.c_shipped new file mode 100644 index 0000000..c77a8ef --- /dev/null +++ b/scripts/kconfig/zconf.hash.c_shipped @@ -0,0 +1,289 @@ +/* ANSI-C code produced by gperf version 3.0.4 */ +/* Command-line: gperf -t --output-file scripts/kconfig/zconf.hash.c_shipped -a -C -E -g -k '1,3,$' -p -t scripts/kconfig/zconf.gperf */ + +#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ + && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \ + && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \ + && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \ + && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \ + && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \ + && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \ + && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \ + && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \ + && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \ + && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \ + && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \ + && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \ + && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \ + && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \ + && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \ + && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \ + && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \ + && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \ + && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \ + && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \ + && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \ + && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126)) +/* The character set is not based on ISO-646. */ +#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>." +#endif + +#line 10 "scripts/kconfig/zconf.gperf" +struct kconf_id; + +static const struct kconf_id *kconf_id_lookup(register const char *str, register unsigned int len); +/* maximum key range = 71, duplicates = 0 */ + +#ifdef __GNUC__ +__inline +#else +#ifdef __cplusplus +inline +#endif +#endif +static unsigned int +kconf_id_hash (register const char *str, register unsigned int len) +{ + static const unsigned char asso_values[] = + { + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 5, 25, 25, + 0, 0, 0, 5, 0, 0, 73, 73, 5, 0, + 10, 5, 45, 73, 20, 20, 0, 15, 15, 73, + 20, 5, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, + 73, 73, 73, 73, 73, 73 + }; + register int hval = len; + + switch (hval) + { + default: + hval += asso_values[(unsigned char)str[2]]; + /*FALLTHROUGH*/ + case 2: + case 1: + hval += asso_values[(unsigned char)str[0]]; + break; + } + return hval + asso_values[(unsigned char)str[len - 1]]; +} + +struct kconf_id_strings_t + { + char kconf_id_strings_str2[sizeof("if")]; + char kconf_id_strings_str3[sizeof("int")]; + char kconf_id_strings_str5[sizeof("endif")]; + char kconf_id_strings_str7[sizeof("default")]; + char kconf_id_strings_str8[sizeof("tristate")]; + char kconf_id_strings_str9[sizeof("endchoice")]; + char kconf_id_strings_str12[sizeof("def_tristate")]; + char kconf_id_strings_str13[sizeof("def_bool")]; + char kconf_id_strings_str14[sizeof("defconfig_list")]; + char kconf_id_strings_str17[sizeof("on")]; + char kconf_id_strings_str18[sizeof("optional")]; + char kconf_id_strings_str21[sizeof("option")]; + char kconf_id_strings_str22[sizeof("endmenu")]; + char kconf_id_strings_str23[sizeof("mainmenu")]; + char kconf_id_strings_str25[sizeof("menuconfig")]; + char kconf_id_strings_str27[sizeof("modules")]; + char kconf_id_strings_str28[sizeof("allnoconfig_y")]; + char kconf_id_strings_str29[sizeof("menu")]; + char kconf_id_strings_str31[sizeof("select")]; + char kconf_id_strings_str32[sizeof("comment")]; + char kconf_id_strings_str33[sizeof("env")]; + char kconf_id_strings_str35[sizeof("range")]; + char kconf_id_strings_str36[sizeof("choice")]; + char kconf_id_strings_str39[sizeof("bool")]; + char kconf_id_strings_str41[sizeof("source")]; + char kconf_id_strings_str42[sizeof("visible")]; + char kconf_id_strings_str43[sizeof("hex")]; + char kconf_id_strings_str46[sizeof("config")]; + char kconf_id_strings_str47[sizeof("boolean")]; + char kconf_id_strings_str51[sizeof("string")]; + char kconf_id_strings_str54[sizeof("help")]; + char kconf_id_strings_str56[sizeof("prompt")]; + char kconf_id_strings_str72[sizeof("depends")]; + }; +static const struct kconf_id_strings_t kconf_id_strings_contents = + { + "if", + "int", + "endif", + "default", + "tristate", + "endchoice", + "def_tristate", + "def_bool", + "defconfig_list", + "on", + "optional", + "option", + "endmenu", + "mainmenu", + "menuconfig", + "modules", + "allnoconfig_y", + "menu", + "select", + "comment", + "env", + "range", + "choice", + "bool", + "source", + "visible", + "hex", + "config", + "boolean", + "string", + "help", + "prompt", + "depends" + }; +#define kconf_id_strings ((const char *) &kconf_id_strings_contents) +#ifdef __GNUC__ +__inline +#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__ +__attribute__ ((__gnu_inline__)) +#endif +#endif +const struct kconf_id * +kconf_id_lookup (register const char *str, register unsigned int len) +{ + enum + { + TOTAL_KEYWORDS = 33, + MIN_WORD_LENGTH = 2, + MAX_WORD_LENGTH = 14, + MIN_HASH_VALUE = 2, + MAX_HASH_VALUE = 72 + }; + + static const struct kconf_id wordlist[] = + { + {-1}, {-1}, +#line 25 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str2, T_IF, TF_COMMAND|TF_PARAM}, +#line 36 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str3, T_TYPE, TF_COMMAND, S_INT}, + {-1}, +#line 26 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str5, T_ENDIF, TF_COMMAND}, + {-1}, +#line 29 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str7, T_DEFAULT, TF_COMMAND, S_UNKNOWN}, +#line 31 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str8, T_TYPE, TF_COMMAND, S_TRISTATE}, +#line 20 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str9, T_ENDCHOICE, TF_COMMAND}, + {-1}, {-1}, +#line 32 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str12, T_DEFAULT, TF_COMMAND, S_TRISTATE}, +#line 35 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str13, T_DEFAULT, TF_COMMAND, S_BOOLEAN}, +#line 45 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str14, T_OPT_DEFCONFIG_LIST,TF_OPTION}, + {-1}, {-1}, +#line 43 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str17, T_ON, TF_PARAM}, +#line 28 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18, T_OPTIONAL, TF_COMMAND}, + {-1}, {-1}, +#line 42 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str21, T_OPTION, TF_COMMAND}, +#line 17 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str22, T_ENDMENU, TF_COMMAND}, +#line 15 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str23, T_MAINMENU, TF_COMMAND}, + {-1}, +#line 23 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str25, T_MENUCONFIG, TF_COMMAND}, + {-1}, +#line 44 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str27, T_OPT_MODULES, TF_OPTION}, +#line 47 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str28, T_OPT_ALLNOCONFIG_Y,TF_OPTION}, +#line 16 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str29, T_MENU, TF_COMMAND}, + {-1}, +#line 39 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str31, T_SELECT, TF_COMMAND}, +#line 21 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str32, T_COMMENT, TF_COMMAND}, +#line 46 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str33, T_OPT_ENV, TF_OPTION}, + {-1}, +#line 40 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str35, T_RANGE, TF_COMMAND}, +#line 19 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36, T_CHOICE, TF_COMMAND}, + {-1}, {-1}, +#line 33 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str39, T_TYPE, TF_COMMAND, S_BOOLEAN}, + {-1}, +#line 18 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str41, T_SOURCE, TF_COMMAND}, +#line 41 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str42, T_VISIBLE, TF_COMMAND}, +#line 37 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str43, T_TYPE, TF_COMMAND, S_HEX}, + {-1}, {-1}, +#line 22 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str46, T_CONFIG, TF_COMMAND}, +#line 34 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str47, T_TYPE, TF_COMMAND, S_BOOLEAN}, + {-1}, {-1}, {-1}, +#line 38 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str51, T_TYPE, TF_COMMAND, S_STRING}, + {-1}, {-1}, +#line 24 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str54, T_HELP, TF_COMMAND}, + {-1}, +#line 30 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str56, T_PROMPT, TF_COMMAND}, + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, +#line 27 "scripts/kconfig/zconf.gperf" + {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str72, T_DEPENDS, TF_COMMAND} + }; + + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register int key = kconf_id_hash (str, len); + + if (key <= MAX_HASH_VALUE && key >= 0) + { + register int o = wordlist[key].name; + if (o >= 0) + { + register const char *s = o + kconf_id_strings; + + if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0') + return &wordlist[key]; + } + } + } + return 0; +} +#line 48 "scripts/kconfig/zconf.gperf" + diff --git a/scripts/kconfig/zconf.l b/scripts/kconfig/zconf.l new file mode 100644 index 0000000..6c62d93 --- /dev/null +++ b/scripts/kconfig/zconf.l @@ -0,0 +1,363 @@ +%option nostdinit noyywrap never-interactive full ecs +%option 8bit nodefault perf-report perf-report +%option noinput +%x COMMAND HELP STRING PARAM +%{ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <limits.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include "lkc.h" + +#define START_STRSIZE 16 + +static struct { + struct file *file; + int lineno; +} current_pos; + +static char *text; +static int text_size, text_asize; + +struct buffer { + struct buffer *parent; + YY_BUFFER_STATE state; +}; + +struct buffer *current_buf; + +static int last_ts, first_ts; + +static void zconf_endhelp(void); +static void zconf_endfile(void); + +static void new_string(void) +{ + text = xmalloc(START_STRSIZE); + text_asize = START_STRSIZE; + text_size = 0; + *text = 0; +} + +static void append_string(const char *str, int size) +{ + int new_size = text_size + size + 1; + if (new_size > text_asize) { + new_size += START_STRSIZE - 1; + new_size &= -START_STRSIZE; + text = realloc(text, new_size); + text_asize = new_size; + } + memcpy(text + text_size, str, size); + text_size += size; + text[text_size] = 0; +} + +static void alloc_string(const char *str, int size) +{ + text = xmalloc(size + 1); + memcpy(text, str, size); + text[size] = 0; +} +%} + +n [A-Za-z0-9_] + +%% + int str = 0; + int ts, i; + +[ \t]*#.*\n | +[ \t]*\n { + current_file->lineno++; + return T_EOL; +} +[ \t]*#.* + + +[ \t]+ { + BEGIN(COMMAND); +} + +. { + unput(yytext[0]); + BEGIN(COMMAND); +} + + +<COMMAND>{ + {n}+ { + const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); + BEGIN(PARAM); + current_pos.file = current_file; + current_pos.lineno = current_file->lineno; + if (id && id->flags & TF_COMMAND) { + zconflval.id = id; + return id->token; + } + alloc_string(yytext, yyleng); + zconflval.string = text; + return T_WORD; + } + . + \n { + BEGIN(INITIAL); + current_file->lineno++; + return T_EOL; + } +} + +<PARAM>{ + "&&" return T_AND; + "||" return T_OR; + "(" return T_OPEN_PAREN; + ")" return T_CLOSE_PAREN; + "!" return T_NOT; + "=" return T_EQUAL; + "!=" return T_UNEQUAL; + \"|\' { + str = yytext[0]; + new_string(); + BEGIN(STRING); + } + \n BEGIN(INITIAL); current_file->lineno++; return T_EOL; + --- /* ignore */ + ({n}|[-/.])+ { + const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); + if (id && id->flags & TF_PARAM) { + zconflval.id = id; + return id->token; + } + alloc_string(yytext, yyleng); + zconflval.string = text; + return T_WORD; + } + #.* /* comment */ + \\\n current_file->lineno++; + . + <<EOF>> { + BEGIN(INITIAL); + } +} + +<STRING>{ + [^'"\\\n]+/\n { + append_string(yytext, yyleng); + zconflval.string = text; + return T_WORD_QUOTE; + } + [^'"\\\n]+ { + append_string(yytext, yyleng); + } + \\.?/\n { + append_string(yytext + 1, yyleng - 1); + zconflval.string = text; + return T_WORD_QUOTE; + } + \\.? { + append_string(yytext + 1, yyleng - 1); + } + \'|\" { + if (str == yytext[0]) { + BEGIN(PARAM); + zconflval.string = text; + return T_WORD_QUOTE; + } else + append_string(yytext, 1); + } + \n { + printf("%s:%d:warning: multi-line strings not supported\n", zconf_curname(), zconf_lineno()); + current_file->lineno++; + BEGIN(INITIAL); + return T_EOL; + } + <<EOF>> { + BEGIN(INITIAL); + } +} + +<HELP>{ + [ \t]+ { + ts = 0; + for (i = 0; i < yyleng; i++) { + if (yytext[i] == '\t') + ts = (ts & ~7) + 8; + else + ts++; + } + last_ts = ts; + if (first_ts) { + if (ts < first_ts) { + zconf_endhelp(); + return T_HELPTEXT; + } + ts -= first_ts; + while (ts > 8) { + append_string(" ", 8); + ts -= 8; + } + append_string(" ", ts); + } + } + [ \t]*\n/[^ \t\n] { + current_file->lineno++; + zconf_endhelp(); + return T_HELPTEXT; + } + [ \t]*\n { + current_file->lineno++; + append_string("\n", 1); + } + [^ \t\n].* { + while (yyleng) { + if ((yytext[yyleng-1] != ' ') && (yytext[yyleng-1] != '\t')) + break; + yyleng--; + } + append_string(yytext, yyleng); + if (!first_ts) + first_ts = last_ts; + } + <<EOF>> { + zconf_endhelp(); + return T_HELPTEXT; + } +} + +<<EOF>> { + if (current_file) { + zconf_endfile(); + return T_EOL; + } + fclose(yyin); + yyterminate(); +} + +%% +void zconf_starthelp(void) +{ + new_string(); + last_ts = first_ts = 0; + BEGIN(HELP); +} + +static void zconf_endhelp(void) +{ + zconflval.string = text; + BEGIN(INITIAL); +} + + +/* + * Try to open specified file with following names: + * ./name + * $(srctree)/name + * The latter is used when srctree is separate from objtree + * when compiling the kernel. + * Return NULL if file is not found. + */ +FILE *zconf_fopen(const char *name) +{ + char *env, fullname[PATH_MAX+1]; + FILE *f; + + f = fopen(name, "r"); + if (!f && name != NULL && name[0] != '/') { + env = getenv(SRCTREE); + if (env) { + sprintf(fullname, "%s/%s", env, name); + f = fopen(fullname, "r"); + } + } + return f; +} + +void zconf_initscan(const char *name) +{ + yyin = zconf_fopen(name); + if (!yyin) { + printf("can't find file %s\n", name); + exit(1); + } + + current_buf = xmalloc(sizeof(*current_buf)); + memset(current_buf, 0, sizeof(*current_buf)); + + current_file = file_lookup(name); + current_file->lineno = 1; +} + +void zconf_nextfile(const char *name) +{ + struct file *iter; + struct file *file = file_lookup(name); + struct buffer *buf = xmalloc(sizeof(*buf)); + memset(buf, 0, sizeof(*buf)); + + current_buf->state = YY_CURRENT_BUFFER; + yyin = zconf_fopen(file->name); + if (!yyin) { + printf("%s:%d: can't open file \"%s\"\n", + zconf_curname(), zconf_lineno(), file->name); + exit(1); + } + yy_switch_to_buffer(yy_create_buffer(yyin, YY_BUF_SIZE)); + buf->parent = current_buf; + current_buf = buf; + + for (iter = current_file->parent; iter; iter = iter->parent ) { + if (!strcmp(current_file->name,iter->name) ) { + printf("%s:%d: recursive inclusion detected. " + "Inclusion path:\n current file : '%s'\n", + zconf_curname(), zconf_lineno(), + zconf_curname()); + iter = current_file->parent; + while (iter && \ + strcmp(iter->name,current_file->name)) { + printf(" included from: '%s:%d'\n", + iter->name, iter->lineno-1); + iter = iter->parent; + } + if (iter) + printf(" included from: '%s:%d'\n", + iter->name, iter->lineno+1); + exit(1); + } + } + file->lineno = 1; + file->parent = current_file; + current_file = file; +} + +static void zconf_endfile(void) +{ + struct buffer *parent; + + current_file = current_file->parent; + + parent = current_buf->parent; + if (parent) { + fclose(yyin); + yy_delete_buffer(YY_CURRENT_BUFFER); + yy_switch_to_buffer(parent->state); + } + free(current_buf); + current_buf = parent; +} + +int zconf_lineno(void) +{ + return current_pos.lineno; +} + +const char *zconf_curname(void) +{ + return current_pos.file ? current_pos.file->name : "<none>"; +} diff --git a/scripts/kconfig/zconf.lex.c_shipped b/scripts/kconfig/zconf.lex.c_shipped new file mode 100644 index 0000000..349a7f2 --- /dev/null +++ b/scripts/kconfig/zconf.lex.c_shipped @@ -0,0 +1,2420 @@ + +#line 3 "scripts/kconfig/zconf.lex.c_shipped" + +#define YY_INT_ALIGNED short int + +/* A lexical scanner generated by flex */ + +#define yy_create_buffer zconf_create_buffer +#define yy_delete_buffer zconf_delete_buffer +#define yy_flex_debug zconf_flex_debug +#define yy_init_buffer zconf_init_buffer +#define yy_flush_buffer zconf_flush_buffer +#define yy_load_buffer_state zconf_load_buffer_state +#define yy_switch_to_buffer zconf_switch_to_buffer +#define yyin zconfin +#define yyleng zconfleng +#define yylex zconflex +#define yylineno zconflineno +#define yyout zconfout +#define yyrestart zconfrestart +#define yytext zconftext +#define yywrap zconfwrap +#define yyalloc zconfalloc +#define yyrealloc zconfrealloc +#define yyfree zconffree + +#define FLEX_SCANNER +#define YY_FLEX_MAJOR_VERSION 2 +#define YY_FLEX_MINOR_VERSION 5 +#define YY_FLEX_SUBMINOR_VERSION 35 +#if YY_FLEX_SUBMINOR_VERSION > 0 +#define FLEX_BETA +#endif + +/* First, we deal with platform-specific or compiler-specific issues. */ + +/* begin standard C headers. */ +#include <stdio.h> +#include <string.h> +#include <errno.h> +#include <stdlib.h> + +/* end standard C headers. */ + +/* flex integer type definitions */ + +#ifndef FLEXINT_H +#define FLEXINT_H + +/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ + +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + +/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, + * if you want the limit (max/min) macros for int types. + */ +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS 1 +#endif + +#include <inttypes.h> +typedef int8_t flex_int8_t; +typedef uint8_t flex_uint8_t; +typedef int16_t flex_int16_t; +typedef uint16_t flex_uint16_t; +typedef int32_t flex_int32_t; +typedef uint32_t flex_uint32_t; +#else +typedef signed char flex_int8_t; +typedef short int flex_int16_t; +typedef int flex_int32_t; +typedef unsigned char flex_uint8_t; +typedef unsigned short int flex_uint16_t; +typedef unsigned int flex_uint32_t; +#endif /* ! C99 */ + +/* Limits of integral types. */ +#ifndef INT8_MIN +#define INT8_MIN (-128) +#endif +#ifndef INT16_MIN +#define INT16_MIN (-32767-1) +#endif +#ifndef INT32_MIN +#define INT32_MIN (-2147483647-1) +#endif +#ifndef INT8_MAX +#define INT8_MAX (127) +#endif +#ifndef INT16_MAX +#define INT16_MAX (32767) +#endif +#ifndef INT32_MAX +#define INT32_MAX (2147483647) +#endif +#ifndef UINT8_MAX +#define UINT8_MAX (255U) +#endif +#ifndef UINT16_MAX +#define UINT16_MAX (65535U) +#endif +#ifndef UINT32_MAX +#define UINT32_MAX (4294967295U) +#endif + +#endif /* ! FLEXINT_H */ + +#ifdef __cplusplus + +/* The "const" storage-class-modifier is valid. */ +#define YY_USE_CONST + +#else /* ! __cplusplus */ + +/* C99 requires __STDC__ to be defined as 1. */ +#if defined (__STDC__) + +#define YY_USE_CONST + +#endif /* defined (__STDC__) */ +#endif /* ! __cplusplus */ + +#ifdef YY_USE_CONST +#define yyconst const +#else +#define yyconst +#endif + +/* Returned upon end-of-file. */ +#define YY_NULL 0 + +/* Promotes a possibly negative, possibly signed char to an unsigned + * integer for use as an array index. If the signed char is negative, + * we want to instead treat it as an 8-bit unsigned char, hence the + * double cast. + */ +#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) + +/* Enter a start condition. This macro really ought to take a parameter, + * but we do it the disgusting crufty way forced on us by the ()-less + * definition of BEGIN. + */ +#define BEGIN (yy_start) = 1 + 2 * + +/* Translate the current start state into a value that can be later handed + * to BEGIN to return to the state. The YYSTATE alias is for lex + * compatibility. + */ +#define YY_START (((yy_start) - 1) / 2) +#define YYSTATE YY_START + +/* Action number for EOF rule of a given start state. */ +#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) + +/* Special action meaning "start processing a new file". */ +#define YY_NEW_FILE zconfrestart(zconfin ) + +#define YY_END_OF_BUFFER_CHAR 0 + +/* Size of default input buffer. */ +#ifndef YY_BUF_SIZE +#define YY_BUF_SIZE 16384 +#endif + +/* The state buf must be large enough to hold one state per character in the main buffer. + */ +#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) + +#ifndef YY_TYPEDEF_YY_BUFFER_STATE +#define YY_TYPEDEF_YY_BUFFER_STATE +typedef struct yy_buffer_state *YY_BUFFER_STATE; +#endif + +extern int zconfleng; + +extern FILE *zconfin, *zconfout; + +#define EOB_ACT_CONTINUE_SCAN 0 +#define EOB_ACT_END_OF_FILE 1 +#define EOB_ACT_LAST_MATCH 2 + + #define YY_LESS_LINENO(n) + +/* Return all but the first "n" matched characters back to the input stream. */ +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up zconftext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + *yy_cp = (yy_hold_char); \ + YY_RESTORE_YY_MORE_OFFSET \ + (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ + YY_DO_BEFORE_ACTION; /* set up zconftext again */ \ + } \ + while ( 0 ) + +#define unput(c) yyunput( c, (yytext_ptr) ) + +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; +#endif + +#ifndef YY_STRUCT_YY_BUFFER_STATE +#define YY_STRUCT_YY_BUFFER_STATE +struct yy_buffer_state + { + FILE *yy_input_file; + + char *yy_ch_buf; /* input buffer */ + char *yy_buf_pos; /* current position in input buffer */ + + /* Size of input buffer in bytes, not including room for EOB + * characters. + */ + yy_size_t yy_buf_size; + + /* Number of characters read into yy_ch_buf, not including EOB + * characters. + */ + int yy_n_chars; + + /* Whether we "own" the buffer - i.e., we know we created it, + * and can realloc() it to grow it, and should free() it to + * delete it. + */ + int yy_is_our_buffer; + + /* Whether this is an "interactive" input source; if so, and + * if we're using stdio for input, then we want to use getc() + * instead of fread(), to make sure we stop fetching input after + * each newline. + */ + int yy_is_interactive; + + /* Whether we're considered to be at the beginning of a line. + * If so, '^' rules will be active on the next match, otherwise + * not. + */ + int yy_at_bol; + + int yy_bs_lineno; /**< The line count. */ + int yy_bs_column; /**< The column count. */ + + /* Whether to try to fill the input buffer when we reach the + * end of it. + */ + int yy_fill_buffer; + + int yy_buffer_status; + +#define YY_BUFFER_NEW 0 +#define YY_BUFFER_NORMAL 1 + /* When an EOF's been seen but there's still some text to process + * then we mark the buffer as YY_EOF_PENDING, to indicate that we + * shouldn't try reading from the input source any more. We might + * still have a bunch of tokens to match, though, because of + * possible backing-up. + * + * When we actually see the EOF, we change the status to "new" + * (via zconfrestart()), so that the user can continue scanning by + * just pointing zconfin at a new input file. + */ +#define YY_BUFFER_EOF_PENDING 2 + + }; +#endif /* !YY_STRUCT_YY_BUFFER_STATE */ + +/* Stack of input buffers. */ +static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ +static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ +static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ + +/* We provide macros for accessing buffer states in case in the + * future we want to put the buffer states in a more general + * "scanner state". + * + * Returns the top of the stack, or NULL. + */ +#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ + ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ + : NULL) + +/* Same as previous macro, but useful when we know that the buffer stack is not + * NULL or when we need an lvalue. For internal use only. + */ +#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] + +/* yy_hold_char holds the character lost when zconftext is formed. */ +static char yy_hold_char; +static int yy_n_chars; /* number of characters read into yy_ch_buf */ +int zconfleng; + +/* Points to current character in buffer. */ +static char *yy_c_buf_p = (char *) 0; +static int yy_init = 0; /* whether we need to initialize */ +static int yy_start = 0; /* start state number */ + +/* Flag which is used to allow zconfwrap()'s to do buffer switches + * instead of setting up a fresh zconfin. A bit of a hack ... + */ +static int yy_did_buffer_switch_on_eof; + +void zconfrestart (FILE *input_file ); +void zconf_switch_to_buffer (YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE zconf_create_buffer (FILE *file,int size ); +void zconf_delete_buffer (YY_BUFFER_STATE b ); +void zconf_flush_buffer (YY_BUFFER_STATE b ); +void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer ); +void zconfpop_buffer_state (void ); + +static void zconfensure_buffer_stack (void ); +static void zconf_load_buffer_state (void ); +static void zconf_init_buffer (YY_BUFFER_STATE b,FILE *file ); + +#define YY_FLUSH_BUFFER zconf_flush_buffer(YY_CURRENT_BUFFER ) + +YY_BUFFER_STATE zconf_scan_buffer (char *base,yy_size_t size ); +YY_BUFFER_STATE zconf_scan_string (yyconst char *yy_str ); +YY_BUFFER_STATE zconf_scan_bytes (yyconst char *bytes,int len ); + +void *zconfalloc (yy_size_t ); +void *zconfrealloc (void *,yy_size_t ); +void zconffree (void * ); + +#define yy_new_buffer zconf_create_buffer + +#define yy_set_interactive(is_interactive) \ + { \ + if ( ! YY_CURRENT_BUFFER ){ \ + zconfensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + zconf_create_buffer(zconfin,YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ + } + +#define yy_set_bol(at_bol) \ + { \ + if ( ! YY_CURRENT_BUFFER ){\ + zconfensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + zconf_create_buffer(zconfin,YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ + } + +#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) + +/* Begin user sect3 */ + +#define zconfwrap(n) 1 +#define YY_SKIP_YYWRAP + +typedef unsigned char YY_CHAR; + +FILE *zconfin = (FILE *) 0, *zconfout = (FILE *) 0; + +typedef int yy_state_type; + +extern int zconflineno; + +int zconflineno = 1; + +extern char *zconftext; +#define yytext_ptr zconftext +static yyconst flex_int16_t yy_nxt[][17] = + { + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0 + }, + + { + 11, 12, 13, 14, 12, 12, 15, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12 + }, + + { + 11, 12, 13, 14, 12, 12, 15, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12 + }, + + { + 11, 16, 16, 17, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 18, 16, 16, 16 + }, + + { + 11, 16, 16, 17, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 18, 16, 16, 16 + + }, + + { + 11, 19, 20, 21, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19 + }, + + { + 11, 19, 20, 21, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19 + }, + + { + 11, 22, 22, 23, 22, 24, 22, 22, 24, 22, + 22, 22, 22, 22, 22, 25, 22 + }, + + { + 11, 22, 22, 23, 22, 24, 22, 22, 24, 22, + 22, 22, 22, 22, 22, 25, 22 + }, + + { + 11, 26, 26, 27, 28, 29, 30, 31, 29, 32, + 33, 34, 35, 35, 36, 37, 38 + + }, + + { + 11, 26, 26, 27, 28, 29, 30, 31, 29, 32, + 33, 34, 35, 35, 36, 37, 38 + }, + + { + -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, + -11, -11, -11, -11, -11, -11, -11 + }, + + { + 11, -12, -12, -12, -12, -12, -12, -12, -12, -12, + -12, -12, -12, -12, -12, -12, -12 + }, + + { + 11, -13, 39, 40, -13, -13, 41, -13, -13, -13, + -13, -13, -13, -13, -13, -13, -13 + }, + + { + 11, -14, -14, -14, -14, -14, -14, -14, -14, -14, + -14, -14, -14, -14, -14, -14, -14 + + }, + + { + 11, 42, 42, 43, 42, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 42, 42 + }, + + { + 11, -16, -16, -16, -16, -16, -16, -16, -16, -16, + -16, -16, -16, -16, -16, -16, -16 + }, + + { + 11, -17, -17, -17, -17, -17, -17, -17, -17, -17, + -17, -17, -17, -17, -17, -17, -17 + }, + + { + 11, -18, -18, -18, -18, -18, -18, -18, -18, -18, + -18, -18, -18, 44, -18, -18, -18 + }, + + { + 11, 45, 45, -19, 45, 45, 45, 45, 45, 45, + 45, 45, 45, 45, 45, 45, 45 + + }, + + { + 11, -20, 46, 47, -20, -20, -20, -20, -20, -20, + -20, -20, -20, -20, -20, -20, -20 + }, + + { + 11, 48, -21, -21, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48 + }, + + { + 11, 49, 49, 50, 49, -22, 49, 49, -22, 49, + 49, 49, 49, 49, 49, -22, 49 + }, + + { + 11, -23, -23, -23, -23, -23, -23, -23, -23, -23, + -23, -23, -23, -23, -23, -23, -23 + }, + + { + 11, -24, -24, -24, -24, -24, -24, -24, -24, -24, + -24, -24, -24, -24, -24, -24, -24 + + }, + + { + 11, 51, 51, 52, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51 + }, + + { + 11, -26, -26, -26, -26, -26, -26, -26, -26, -26, + -26, -26, -26, -26, -26, -26, -26 + }, + + { + 11, -27, -27, -27, -27, -27, -27, -27, -27, -27, + -27, -27, -27, -27, -27, -27, -27 + }, + + { + 11, -28, -28, -28, -28, -28, -28, -28, -28, -28, + -28, -28, -28, -28, 53, -28, -28 + }, + + { + 11, -29, -29, -29, -29, -29, -29, -29, -29, -29, + -29, -29, -29, -29, -29, -29, -29 + + }, + + { + 11, 54, 54, -30, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54 + }, + + { + 11, -31, -31, -31, -31, -31, -31, 55, -31, -31, + -31, -31, -31, -31, -31, -31, -31 + }, + + { + 11, -32, -32, -32, -32, -32, -32, -32, -32, -32, + -32, -32, -32, -32, -32, -32, -32 + }, + + { + 11, -33, -33, -33, -33, -33, -33, -33, -33, -33, + -33, -33, -33, -33, -33, -33, -33 + }, + + { + 11, -34, -34, -34, -34, -34, -34, -34, -34, -34, + -34, 56, 57, 57, -34, -34, -34 + + }, + + { + 11, -35, -35, -35, -35, -35, -35, -35, -35, -35, + -35, 57, 57, 57, -35, -35, -35 + }, + + { + 11, -36, -36, -36, -36, -36, -36, -36, -36, -36, + -36, -36, -36, -36, -36, -36, -36 + }, + + { + 11, -37, -37, 58, -37, -37, -37, -37, -37, -37, + -37, -37, -37, -37, -37, -37, -37 + }, + + { + 11, -38, -38, -38, -38, -38, -38, -38, -38, -38, + -38, -38, -38, -38, -38, -38, 59 + }, + + { + 11, -39, 39, 40, -39, -39, 41, -39, -39, -39, + -39, -39, -39, -39, -39, -39, -39 + + }, + + { + 11, -40, -40, -40, -40, -40, -40, -40, -40, -40, + -40, -40, -40, -40, -40, -40, -40 + }, + + { + 11, 42, 42, 43, 42, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 42, 42 + }, + + { + 11, 42, 42, 43, 42, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 42, 42 + }, + + { + 11, -43, -43, -43, -43, -43, -43, -43, -43, -43, + -43, -43, -43, -43, -43, -43, -43 + }, + + { + 11, -44, -44, -44, -44, -44, -44, -44, -44, -44, + -44, -44, -44, 44, -44, -44, -44 + + }, + + { + 11, 45, 45, -45, 45, 45, 45, 45, 45, 45, + 45, 45, 45, 45, 45, 45, 45 + }, + + { + 11, -46, 46, 47, -46, -46, -46, -46, -46, -46, + -46, -46, -46, -46, -46, -46, -46 + }, + + { + 11, 48, -47, -47, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48 + }, + + { + 11, -48, -48, -48, -48, -48, -48, -48, -48, -48, + -48, -48, -48, -48, -48, -48, -48 + }, + + { + 11, 49, 49, 50, 49, -49, 49, 49, -49, 49, + 49, 49, 49, 49, 49, -49, 49 + + }, + + { + 11, -50, -50, -50, -50, -50, -50, -50, -50, -50, + -50, -50, -50, -50, -50, -50, -50 + }, + + { + 11, -51, -51, 52, -51, -51, -51, -51, -51, -51, + -51, -51, -51, -51, -51, -51, -51 + }, + + { + 11, -52, -52, -52, -52, -52, -52, -52, -52, -52, + -52, -52, -52, -52, -52, -52, -52 + }, + + { + 11, -53, -53, -53, -53, -53, -53, -53, -53, -53, + -53, -53, -53, -53, -53, -53, -53 + }, + + { + 11, 54, 54, -54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54 + + }, + + { + 11, -55, -55, -55, -55, -55, -55, -55, -55, -55, + -55, -55, -55, -55, -55, -55, -55 + }, + + { + 11, -56, -56, -56, -56, -56, -56, -56, -56, -56, + -56, 60, 57, 57, -56, -56, -56 + }, + + { + 11, -57, -57, -57, -57, -57, -57, -57, -57, -57, + -57, 57, 57, 57, -57, -57, -57 + }, + + { + 11, -58, -58, -58, -58, -58, -58, -58, -58, -58, + -58, -58, -58, -58, -58, -58, -58 + }, + + { + 11, -59, -59, -59, -59, -59, -59, -59, -59, -59, + -59, -59, -59, -59, -59, -59, -59 + + }, + + { + 11, -60, -60, -60, -60, -60, -60, -60, -60, -60, + -60, 57, 57, 57, -60, -60, -60 + }, + + } ; + +static yy_state_type yy_get_previous_state (void ); +static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); +static int yy_get_next_buffer (void ); +static void yy_fatal_error (yyconst char msg[] ); + +/* Done after the current pattern has been matched and before the + * corresponding action - sets up zconftext. + */ +#define YY_DO_BEFORE_ACTION \ + (yytext_ptr) = yy_bp; \ + zconfleng = (size_t) (yy_cp - yy_bp); \ + (yy_hold_char) = *yy_cp; \ + *yy_cp = '\0'; \ + (yy_c_buf_p) = yy_cp; + +#define YY_NUM_RULES 33 +#define YY_END_OF_BUFFER 34 +/* This struct is not used in this scanner, + but its presence is necessary. */ +struct yy_trans_info + { + flex_int32_t yy_verify; + flex_int32_t yy_nxt; + }; +static yyconst flex_int16_t yy_accept[61] = + { 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 34, 5, 4, 2, 3, 7, 8, 6, 32, 29, + 31, 24, 28, 27, 26, 22, 17, 13, 16, 20, + 22, 11, 12, 19, 19, 14, 22, 22, 4, 2, + 3, 3, 1, 6, 32, 29, 31, 30, 24, 23, + 26, 25, 15, 20, 9, 19, 19, 21, 10, 18 + } ; + +static yyconst flex_int32_t yy_ec[256] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 4, 5, 6, 1, 1, 7, 8, 9, + 10, 1, 1, 1, 11, 12, 12, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 1, 1, 1, + 14, 1, 1, 1, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 1, 15, 1, 1, 13, 1, 13, 13, 13, 13, + + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 1, 16, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1 + } ; + +extern int zconf_flex_debug; +int zconf_flex_debug = 0; + +/* The intent behind this definition is that it'll catch + * any uses of REJECT which flex missed. + */ +#define REJECT reject_used_but_not_detected +#define yymore() yymore_used_but_not_detected +#define YY_MORE_ADJ 0 +#define YY_RESTORE_YY_MORE_OFFSET +char *zconftext; +#define YY_NO_INPUT 1 + +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <limits.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include "lkc.h" + +#define START_STRSIZE 16 + +static struct { + struct file *file; + int lineno; +} current_pos; + +static char *text; +static int text_size, text_asize; + +struct buffer { + struct buffer *parent; + YY_BUFFER_STATE state; +}; + +struct buffer *current_buf; + +static int last_ts, first_ts; + +static void zconf_endhelp(void); +static void zconf_endfile(void); + +static void new_string(void) +{ + text = xmalloc(START_STRSIZE); + text_asize = START_STRSIZE; + text_size = 0; + *text = 0; +} + +static void append_string(const char *str, int size) +{ + int new_size = text_size + size + 1; + if (new_size > text_asize) { + new_size += START_STRSIZE - 1; + new_size &= -START_STRSIZE; + text = realloc(text, new_size); + text_asize = new_size; + } + memcpy(text + text_size, str, size); + text_size += size; + text[text_size] = 0; +} + +static void alloc_string(const char *str, int size) +{ + text = xmalloc(size + 1); + memcpy(text, str, size); + text[size] = 0; +} + +#define INITIAL 0 +#define COMMAND 1 +#define HELP 2 +#define STRING 3 +#define PARAM 4 + +#ifndef YY_NO_UNISTD_H +/* Special case for "unistd.h", since it is non-ANSI. We include it way + * down here because we want the user's section 1 to have been scanned first. + * The user has a chance to override it with an option. + */ +#include <unistd.h> +#endif + +#ifndef YY_EXTRA_TYPE +#define YY_EXTRA_TYPE void * +#endif + +static int yy_init_globals (void ); + +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int zconflex_destroy (void ); + +int zconfget_debug (void ); + +void zconfset_debug (int debug_flag ); + +YY_EXTRA_TYPE zconfget_extra (void ); + +void zconfset_extra (YY_EXTRA_TYPE user_defined ); + +FILE *zconfget_in (void ); + +void zconfset_in (FILE * in_str ); + +FILE *zconfget_out (void ); + +void zconfset_out (FILE * out_str ); + +int zconfget_leng (void ); + +char *zconfget_text (void ); + +int zconfget_lineno (void ); + +void zconfset_lineno (int line_number ); + +/* Macros after this point can all be overridden by user definitions in + * section 1. + */ + +#ifndef YY_SKIP_YYWRAP +#ifdef __cplusplus +extern "C" int zconfwrap (void ); +#else +extern int zconfwrap (void ); +#endif +#endif + + static void yyunput (int c,char *buf_ptr ); + +#ifndef yytext_ptr +static void yy_flex_strncpy (char *,yyconst char *,int ); +#endif + +#ifdef YY_NEED_STRLEN +static int yy_flex_strlen (yyconst char * ); +#endif + +#ifndef YY_NO_INPUT + +#ifdef __cplusplus +static int yyinput (void ); +#else +static int input (void ); +#endif + +#endif + +/* Amount of stuff to slurp up with each read. */ +#ifndef YY_READ_BUF_SIZE +#define YY_READ_BUF_SIZE 8192 +#endif + +/* Copy whatever the last rule matched to the standard output. */ +#ifndef ECHO +/* This used to be an fputs(), but since the string might contain NUL's, + * we now use fwrite(). + */ +#define ECHO do { if (fwrite( zconftext, zconfleng, 1, zconfout )) {} } while (0) +#endif + +/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, + * is returned in "result". + */ +#ifndef YY_INPUT +#define YY_INPUT(buf,result,max_size) \ + errno=0; \ + while ( (result = read( fileno(zconfin), (char *) buf, max_size )) < 0 ) \ + { \ + if( errno != EINTR) \ + { \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + break; \ + } \ + errno=0; \ + clearerr(zconfin); \ + }\ +\ + +#endif + +/* No semi-colon after return; correct usage is to write "yyterminate();" - + * we don't want an extra ';' after the "return" because that will cause + * some compilers to complain about unreachable statements. + */ +#ifndef yyterminate +#define yyterminate() return YY_NULL +#endif + +/* Number of entries by which start-condition stack grows. */ +#ifndef YY_START_STACK_INCR +#define YY_START_STACK_INCR 25 +#endif + +/* Report a fatal error. */ +#ifndef YY_FATAL_ERROR +#define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) +#endif + +/* end tables serialization structures and prototypes */ + +/* Default declaration of generated scanner - a define so the user can + * easily add parameters. + */ +#ifndef YY_DECL +#define YY_DECL_IS_OURS 1 + +extern int zconflex (void); + +#define YY_DECL int zconflex (void) +#endif /* !YY_DECL */ + +/* Code executed at the beginning of each rule, after zconftext and zconfleng + * have been set up. + */ +#ifndef YY_USER_ACTION +#define YY_USER_ACTION +#endif + +/* Code executed at the end of each rule. */ +#ifndef YY_BREAK +#define YY_BREAK break; +#endif + +#define YY_RULE_SETUP \ + YY_USER_ACTION + +/** The main scanner function which does all the work. + */ +YY_DECL +{ + register yy_state_type yy_current_state; + register char *yy_cp, *yy_bp; + register int yy_act; + + int str = 0; + int ts, i; + + if ( !(yy_init) ) + { + (yy_init) = 1; + +#ifdef YY_USER_INIT + YY_USER_INIT; +#endif + + if ( ! (yy_start) ) + (yy_start) = 1; /* first start state */ + + if ( ! zconfin ) + zconfin = stdin; + + if ( ! zconfout ) + zconfout = stdout; + + if ( ! YY_CURRENT_BUFFER ) { + zconfensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + zconf_create_buffer(zconfin,YY_BUF_SIZE ); + } + + zconf_load_buffer_state( ); + } + + while ( 1 ) /* loops until end-of-file is reached */ + { + yy_cp = (yy_c_buf_p); + + /* Support of zconftext. */ + *yy_cp = (yy_hold_char); + + /* yy_bp points to the position in yy_ch_buf of the start of + * the current run. + */ + yy_bp = yy_cp; + + yy_current_state = (yy_start); +yy_match: + while ( (yy_current_state = yy_nxt[yy_current_state][ yy_ec[YY_SC_TO_UI(*yy_cp)] ]) > 0 ) + ++yy_cp; + + yy_current_state = -yy_current_state; + +yy_find_action: + yy_act = yy_accept[yy_current_state]; + + YY_DO_BEFORE_ACTION; + +do_action: /* This label is used only to access EOF actions. */ + + switch ( yy_act ) + { /* beginning of action switch */ +case 1: +/* rule 1 can match eol */ +case 2: +/* rule 2 can match eol */ +YY_RULE_SETUP +{ + current_file->lineno++; + return T_EOL; +} + YY_BREAK +case 3: +YY_RULE_SETUP + + YY_BREAK +case 4: +YY_RULE_SETUP +{ + BEGIN(COMMAND); +} + YY_BREAK +case 5: +YY_RULE_SETUP +{ + unput(zconftext[0]); + BEGIN(COMMAND); +} + YY_BREAK + +case 6: +YY_RULE_SETUP +{ + const struct kconf_id *id = kconf_id_lookup(zconftext, zconfleng); + BEGIN(PARAM); + current_pos.file = current_file; + current_pos.lineno = current_file->lineno; + if (id && id->flags & TF_COMMAND) { + zconflval.id = id; + return id->token; + } + alloc_string(zconftext, zconfleng); + zconflval.string = text; + return T_WORD; + } + YY_BREAK +case 7: +YY_RULE_SETUP + + YY_BREAK +case 8: +/* rule 8 can match eol */ +YY_RULE_SETUP +{ + BEGIN(INITIAL); + current_file->lineno++; + return T_EOL; + } + YY_BREAK + +case 9: +YY_RULE_SETUP +return T_AND; + YY_BREAK +case 10: +YY_RULE_SETUP +return T_OR; + YY_BREAK +case 11: +YY_RULE_SETUP +return T_OPEN_PAREN; + YY_BREAK +case 12: +YY_RULE_SETUP +return T_CLOSE_PAREN; + YY_BREAK +case 13: +YY_RULE_SETUP +return T_NOT; + YY_BREAK +case 14: +YY_RULE_SETUP +return T_EQUAL; + YY_BREAK +case 15: +YY_RULE_SETUP +return T_UNEQUAL; + YY_BREAK +case 16: +YY_RULE_SETUP +{ + str = zconftext[0]; + new_string(); + BEGIN(STRING); + } + YY_BREAK +case 17: +/* rule 17 can match eol */ +YY_RULE_SETUP +BEGIN(INITIAL); current_file->lineno++; return T_EOL; + YY_BREAK +case 18: +YY_RULE_SETUP +/* ignore */ + YY_BREAK +case 19: +YY_RULE_SETUP +{ + const struct kconf_id *id = kconf_id_lookup(zconftext, zconfleng); + if (id && id->flags & TF_PARAM) { + zconflval.id = id; + return id->token; + } + alloc_string(zconftext, zconfleng); + zconflval.string = text; + return T_WORD; + } + YY_BREAK +case 20: +YY_RULE_SETUP +/* comment */ + YY_BREAK +case 21: +/* rule 21 can match eol */ +YY_RULE_SETUP +current_file->lineno++; + YY_BREAK +case 22: +YY_RULE_SETUP + + YY_BREAK +case YY_STATE_EOF(PARAM): +{ + BEGIN(INITIAL); + } + YY_BREAK + +case 23: +/* rule 23 can match eol */ +*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */ +(yy_c_buf_p) = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up zconftext again */ +YY_RULE_SETUP +{ + append_string(zconftext, zconfleng); + zconflval.string = text; + return T_WORD_QUOTE; + } + YY_BREAK +case 24: +YY_RULE_SETUP +{ + append_string(zconftext, zconfleng); + } + YY_BREAK +case 25: +/* rule 25 can match eol */ +*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */ +(yy_c_buf_p) = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up zconftext again */ +YY_RULE_SETUP +{ + append_string(zconftext + 1, zconfleng - 1); + zconflval.string = text; + return T_WORD_QUOTE; + } + YY_BREAK +case 26: +YY_RULE_SETUP +{ + append_string(zconftext + 1, zconfleng - 1); + } + YY_BREAK +case 27: +YY_RULE_SETUP +{ + if (str == zconftext[0]) { + BEGIN(PARAM); + zconflval.string = text; + return T_WORD_QUOTE; + } else + append_string(zconftext, 1); + } + YY_BREAK +case 28: +/* rule 28 can match eol */ +YY_RULE_SETUP +{ + printf("%s:%d:warning: multi-line strings not supported\n", zconf_curname(), zconf_lineno()); + current_file->lineno++; + BEGIN(INITIAL); + return T_EOL; + } + YY_BREAK +case YY_STATE_EOF(STRING): +{ + BEGIN(INITIAL); + } + YY_BREAK + +case 29: +YY_RULE_SETUP +{ + ts = 0; + for (i = 0; i < zconfleng; i++) { + if (zconftext[i] == '\t') + ts = (ts & ~7) + 8; + else + ts++; + } + last_ts = ts; + if (first_ts) { + if (ts < first_ts) { + zconf_endhelp(); + return T_HELPTEXT; + } + ts -= first_ts; + while (ts > 8) { + append_string(" ", 8); + ts -= 8; + } + append_string(" ", ts); + } + } + YY_BREAK +case 30: +/* rule 30 can match eol */ +*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */ +(yy_c_buf_p) = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up zconftext again */ +YY_RULE_SETUP +{ + current_file->lineno++; + zconf_endhelp(); + return T_HELPTEXT; + } + YY_BREAK +case 31: +/* rule 31 can match eol */ +YY_RULE_SETUP +{ + current_file->lineno++; + append_string("\n", 1); + } + YY_BREAK +case 32: +YY_RULE_SETUP +{ + while (zconfleng) { + if ((zconftext[zconfleng-1] != ' ') && (zconftext[zconfleng-1] != '\t')) + break; + zconfleng--; + } + append_string(zconftext, zconfleng); + if (!first_ts) + first_ts = last_ts; + } + YY_BREAK +case YY_STATE_EOF(HELP): +{ + zconf_endhelp(); + return T_HELPTEXT; + } + YY_BREAK + +case YY_STATE_EOF(INITIAL): +case YY_STATE_EOF(COMMAND): +{ + if (current_file) { + zconf_endfile(); + return T_EOL; + } + fclose(zconfin); + yyterminate(); +} + YY_BREAK +case 33: +YY_RULE_SETUP +YY_FATAL_ERROR( "flex scanner jammed" ); + YY_BREAK + + case YY_END_OF_BUFFER: + { + /* Amount of text matched not including the EOB char. */ + int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; + + /* Undo the effects of YY_DO_BEFORE_ACTION. */ + *yy_cp = (yy_hold_char); + YY_RESTORE_YY_MORE_OFFSET + + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) + { + /* We're scanning a new file or input source. It's + * possible that this happened because the user + * just pointed zconfin at a new source and called + * zconflex(). If so, then we have to assure + * consistency between YY_CURRENT_BUFFER and our + * globals. Here is the right place to do so, because + * this is the first action (other than possibly a + * back-up) that will match for the new input source. + */ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_input_file = zconfin; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; + } + + /* Note that here we test for yy_c_buf_p "<=" to the position + * of the first EOB in the buffer, since yy_c_buf_p will + * already have been incremented past the NUL character + * (since all states make transitions on EOB to the + * end-of-buffer state). Contrast this with the test + * in input(). + */ + if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + { /* This was really a NUL. */ + yy_state_type yy_next_state; + + (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + /* Okay, we're now positioned to make the NUL + * transition. We couldn't have + * yy_get_previous_state() go ahead and do it + * for us because it doesn't know how to deal + * with the possibility of jamming (and we don't + * want to build jamming into it because then it + * will run more slowly). + */ + + yy_next_state = yy_try_NUL_trans( yy_current_state ); + + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + + if ( yy_next_state ) + { + /* Consume the NUL. */ + yy_cp = ++(yy_c_buf_p); + yy_current_state = yy_next_state; + goto yy_match; + } + + else + { + yy_cp = (yy_c_buf_p); + goto yy_find_action; + } + } + + else switch ( yy_get_next_buffer( ) ) + { + case EOB_ACT_END_OF_FILE: + { + (yy_did_buffer_switch_on_eof) = 0; + + if ( zconfwrap( ) ) + { + /* Note: because we've taken care in + * yy_get_next_buffer() to have set up + * zconftext, we can now set up + * yy_c_buf_p so that if some total + * hoser (like flex itself) wants to + * call the scanner after we return the + * YY_NULL, it'll still work - another + * YY_NULL will get returned. + */ + (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; + + yy_act = YY_STATE_EOF(YY_START); + goto do_action; + } + + else + { + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; + } + break; + } + + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = + (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_match; + + case EOB_ACT_LAST_MATCH: + (yy_c_buf_p) = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_find_action; + } + break; + } + + default: + YY_FATAL_ERROR( + "fatal flex scanner internal error--no action found" ); + } /* end of action switch */ + } /* end of scanning one token */ +} /* end of zconflex */ + +/* yy_get_next_buffer - try to read in a new buffer + * + * Returns a code representing an action: + * EOB_ACT_LAST_MATCH - + * EOB_ACT_CONTINUE_SCAN - continue scanning from current position + * EOB_ACT_END_OF_FILE - end of file + */ +static int yy_get_next_buffer (void) +{ + register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; + register char *source = (yytext_ptr); + register int number_to_move, i; + int ret_val; + + if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) + YY_FATAL_ERROR( + "fatal flex scanner internal error--end of buffer missed" ); + + if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) + { /* Don't try to fill the buffer, so this is an EOF. */ + if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) + { + /* We matched a single character, the EOB, so + * treat this as a final EOF. + */ + return EOB_ACT_END_OF_FILE; + } + + else + { + /* We matched some text prior to the EOB, first + * process it. + */ + return EOB_ACT_LAST_MATCH; + } + } + + /* Try to read more data. */ + + /* First move last chars to start of buffer. */ + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; + + for ( i = 0; i < number_to_move; ++i ) + *(dest++) = *(source++); + + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) + /* don't do the read, it's not guaranteed to return an EOF, + * just force an EOF + */ + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; + + else + { + int num_to_read = + YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; + + while ( num_to_read <= 0 ) + { /* Not enough room in the buffer - grow it. */ + + /* just a shorter name for the current buffer */ + YY_BUFFER_STATE b = YY_CURRENT_BUFFER; + + int yy_c_buf_p_offset = + (int) ((yy_c_buf_p) - b->yy_ch_buf); + + if ( b->yy_is_our_buffer ) + { + int new_size = b->yy_buf_size * 2; + + if ( new_size <= 0 ) + b->yy_buf_size += b->yy_buf_size / 8; + else + b->yy_buf_size *= 2; + + b->yy_ch_buf = (char *) + /* Include room in for 2 EOB chars. */ + zconfrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); + } + else + /* Can't grow it, we don't own it. */ + b->yy_ch_buf = 0; + + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( + "fatal error - scanner input buffer overflow" ); + + (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; + + num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - + number_to_move - 1; + + } + + if ( num_to_read > YY_READ_BUF_SIZE ) + num_to_read = YY_READ_BUF_SIZE; + + /* Read in more data. */ + YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), + (yy_n_chars), (size_t) num_to_read ); + + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + if ( (yy_n_chars) == 0 ) + { + if ( number_to_move == YY_MORE_ADJ ) + { + ret_val = EOB_ACT_END_OF_FILE; + zconfrestart(zconfin ); + } + + else + { + ret_val = EOB_ACT_LAST_MATCH; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = + YY_BUFFER_EOF_PENDING; + } + } + + else + ret_val = EOB_ACT_CONTINUE_SCAN; + + if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + /* Extend the array by 50%, plus the number we really need. */ + yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) zconfrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); + if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + } + + (yy_n_chars) += number_to_move; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; + + (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; + + return ret_val; +} + +/* yy_get_previous_state - get the state just before the EOB char was reached */ + + static yy_state_type yy_get_previous_state (void) +{ + register yy_state_type yy_current_state; + register char *yy_cp; + + yy_current_state = (yy_start); + + for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) + { + yy_current_state = yy_nxt[yy_current_state][(*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1)]; + } + + return yy_current_state; +} + +/* yy_try_NUL_trans - try to make a transition on the NUL character + * + * synopsis + * next_state = yy_try_NUL_trans( current_state ); + */ + static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) +{ + register int yy_is_jam; + + yy_current_state = yy_nxt[yy_current_state][1]; + yy_is_jam = (yy_current_state <= 0); + + return yy_is_jam ? 0 : yy_current_state; +} + + static void yyunput (int c, register char * yy_bp ) +{ + register char *yy_cp; + + yy_cp = (yy_c_buf_p); + + /* undo effects of setting up zconftext */ + *yy_cp = (yy_hold_char); + + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) + { /* need to shift things up to make room */ + /* +2 for EOB chars. */ + register int number_to_move = (yy_n_chars) + 2; + register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; + register char *source = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; + + while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + *--dest = *--source; + + yy_cp += (int) (dest - source); + yy_bp += (int) (dest - source); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; + + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) + YY_FATAL_ERROR( "flex scanner push-back overflow" ); + } + + *--yy_cp = (char) c; + + (yytext_ptr) = yy_bp; + (yy_hold_char) = *yy_cp; + (yy_c_buf_p) = yy_cp; +} + +#ifndef YY_NO_INPUT +#ifdef __cplusplus + static int yyinput (void) +#else + static int input (void) +#endif + +{ + int c; + + *(yy_c_buf_p) = (yy_hold_char); + + if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) + { + /* yy_c_buf_p now points to the character we want to return. + * If this occurs *before* the EOB characters, then it's a + * valid NUL; if not, then we've hit the end of the buffer. + */ + if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + /* This was really a NUL. */ + *(yy_c_buf_p) = '\0'; + + else + { /* need more input */ + int offset = (yy_c_buf_p) - (yytext_ptr); + ++(yy_c_buf_p); + + switch ( yy_get_next_buffer( ) ) + { + case EOB_ACT_LAST_MATCH: + /* This happens because yy_g_n_b() + * sees that we've accumulated a + * token and flags that we need to + * try matching the token before + * proceeding. But for input(), + * there's no matching to consider. + * So convert the EOB_ACT_LAST_MATCH + * to EOB_ACT_END_OF_FILE. + */ + + /* Reset buffer status. */ + zconfrestart(zconfin ); + + /*FALLTHROUGH*/ + + case EOB_ACT_END_OF_FILE: + { + if ( zconfwrap( ) ) + return EOF; + + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; +#ifdef __cplusplus + return yyinput(); +#else + return input(); +#endif + } + + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = (yytext_ptr) + offset; + break; + } + } + } + + c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ + *(yy_c_buf_p) = '\0'; /* preserve zconftext */ + (yy_hold_char) = *++(yy_c_buf_p); + + return c; +} +#endif /* ifndef YY_NO_INPUT */ + +/** Immediately switch to a different input stream. + * @param input_file A readable stream. + * + * @note This function does not reset the start condition to @c INITIAL . + */ + void zconfrestart (FILE * input_file ) +{ + + if ( ! YY_CURRENT_BUFFER ){ + zconfensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + zconf_create_buffer(zconfin,YY_BUF_SIZE ); + } + + zconf_init_buffer(YY_CURRENT_BUFFER,input_file ); + zconf_load_buffer_state( ); +} + +/** Switch to a different input buffer. + * @param new_buffer The new input buffer. + * + */ + void zconf_switch_to_buffer (YY_BUFFER_STATE new_buffer ) +{ + + /* TODO. We should be able to replace this entire function body + * with + * zconfpop_buffer_state(); + * zconfpush_buffer_state(new_buffer); + */ + zconfensure_buffer_stack (); + if ( YY_CURRENT_BUFFER == new_buffer ) + return; + + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + YY_CURRENT_BUFFER_LVALUE = new_buffer; + zconf_load_buffer_state( ); + + /* We don't actually know whether we did this switch during + * EOF (zconfwrap()) processing, but the only time this flag + * is looked at is after zconfwrap() is called, so it's safe + * to go ahead and always set it. + */ + (yy_did_buffer_switch_on_eof) = 1; +} + +static void zconf_load_buffer_state (void) +{ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; + zconfin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; + (yy_hold_char) = *(yy_c_buf_p); +} + +/** Allocate and initialize an input buffer state. + * @param file A readable stream. + * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. + * + * @return the allocated buffer state. + */ + YY_BUFFER_STATE zconf_create_buffer (FILE * file, int size ) +{ + YY_BUFFER_STATE b; + + b = (YY_BUFFER_STATE) zconfalloc(sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in zconf_create_buffer()" ); + + b->yy_buf_size = size; + + /* yy_ch_buf has to be 2 characters longer than the size given because + * we need to put in 2 end-of-buffer characters. + */ + b->yy_ch_buf = (char *) zconfalloc(b->yy_buf_size + 2 ); + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in zconf_create_buffer()" ); + + b->yy_is_our_buffer = 1; + + zconf_init_buffer(b,file ); + + return b; +} + +/** Destroy the buffer. + * @param b a buffer created with zconf_create_buffer() + * + */ + void zconf_delete_buffer (YY_BUFFER_STATE b ) +{ + + if ( ! b ) + return; + + if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ + YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; + + if ( b->yy_is_our_buffer ) + zconffree((void *) b->yy_ch_buf ); + + zconffree((void *) b ); +} + +/* Initializes or reinitializes a buffer. + * This function is sometimes called more than once on the same buffer, + * such as during a zconfrestart() or at EOF. + */ + static void zconf_init_buffer (YY_BUFFER_STATE b, FILE * file ) + +{ + int oerrno = errno; + + zconf_flush_buffer(b ); + + b->yy_input_file = file; + b->yy_fill_buffer = 1; + + /* If b is the current buffer, then zconf_init_buffer was _probably_ + * called from zconfrestart() or through yy_get_next_buffer. + * In that case, we don't want to reset the lineno or column. + */ + if (b != YY_CURRENT_BUFFER){ + b->yy_bs_lineno = 1; + b->yy_bs_column = 0; + } + + b->yy_is_interactive = 0; + + errno = oerrno; +} + +/** Discard all buffered characters. On the next scan, YY_INPUT will be called. + * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. + * + */ + void zconf_flush_buffer (YY_BUFFER_STATE b ) +{ + if ( ! b ) + return; + + b->yy_n_chars = 0; + + /* We always need two end-of-buffer characters. The first causes + * a transition to the end-of-buffer state. The second causes + * a jam in that state. + */ + b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; + b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; + + b->yy_buf_pos = &b->yy_ch_buf[0]; + + b->yy_at_bol = 1; + b->yy_buffer_status = YY_BUFFER_NEW; + + if ( b == YY_CURRENT_BUFFER ) + zconf_load_buffer_state( ); +} + +/** Pushes the new state onto the stack. The new state becomes + * the current state. This function will allocate the stack + * if necessary. + * @param new_buffer The new state. + * + */ +void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer ) +{ + if (new_buffer == NULL) + return; + + zconfensure_buffer_stack(); + + /* This block is copied from zconf_switch_to_buffer. */ + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + /* Only push if top exists. Otherwise, replace top. */ + if (YY_CURRENT_BUFFER) + (yy_buffer_stack_top)++; + YY_CURRENT_BUFFER_LVALUE = new_buffer; + + /* copied from zconf_switch_to_buffer. */ + zconf_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; +} + +/** Removes and deletes the top of the stack, if present. + * The next element becomes the new top. + * + */ +void zconfpop_buffer_state (void) +{ + if (!YY_CURRENT_BUFFER) + return; + + zconf_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + if ((yy_buffer_stack_top) > 0) + --(yy_buffer_stack_top); + + if (YY_CURRENT_BUFFER) { + zconf_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; + } +} + +/* Allocates the stack if it does not exist. + * Guarantees space for at least one push. + */ +static void zconfensure_buffer_stack (void) +{ + int num_to_alloc; + + if (!(yy_buffer_stack)) { + + /* First allocation is just for 2 elements, since we don't know if this + * scanner will even need a stack. We use 2 instead of 1 to avoid an + * immediate realloc on the next call. + */ + num_to_alloc = 1; + (yy_buffer_stack) = (struct yy_buffer_state**)zconfalloc + (num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in zconfensure_buffer_stack()" ); + + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); + + (yy_buffer_stack_max) = num_to_alloc; + (yy_buffer_stack_top) = 0; + return; + } + + if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ + + /* Increase the buffer to prepare for a possible push. */ + int grow_size = 8 /* arbitrary grow size */; + + num_to_alloc = (yy_buffer_stack_max) + grow_size; + (yy_buffer_stack) = (struct yy_buffer_state**)zconfrealloc + ((yy_buffer_stack), + num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in zconfensure_buffer_stack()" ); + + /* zero only the new slots.*/ + memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); + (yy_buffer_stack_max) = num_to_alloc; + } +} + +/** Setup the input buffer state to scan directly from a user-specified character buffer. + * @param base the character buffer + * @param size the size in bytes of the character buffer + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE zconf_scan_buffer (char * base, yy_size_t size ) +{ + YY_BUFFER_STATE b; + + if ( size < 2 || + base[size-2] != YY_END_OF_BUFFER_CHAR || + base[size-1] != YY_END_OF_BUFFER_CHAR ) + /* They forgot to leave room for the EOB's. */ + return 0; + + b = (YY_BUFFER_STATE) zconfalloc(sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in zconf_scan_buffer()" ); + + b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ + b->yy_buf_pos = b->yy_ch_buf = base; + b->yy_is_our_buffer = 0; + b->yy_input_file = 0; + b->yy_n_chars = b->yy_buf_size; + b->yy_is_interactive = 0; + b->yy_at_bol = 1; + b->yy_fill_buffer = 0; + b->yy_buffer_status = YY_BUFFER_NEW; + + zconf_switch_to_buffer(b ); + + return b; +} + +/** Setup the input buffer state to scan a string. The next call to zconflex() will + * scan from a @e copy of @a str. + * @param yystr a NUL-terminated string to scan + * + * @return the newly allocated buffer state object. + * @note If you want to scan bytes that may contain NUL values, then use + * zconf_scan_bytes() instead. + */ +YY_BUFFER_STATE zconf_scan_string (yyconst char * yystr ) +{ + + return zconf_scan_bytes(yystr,strlen(yystr) ); +} + +/** Setup the input buffer state to scan the given bytes. The next call to zconflex() will + * scan from a @e copy of @a bytes. + * @param bytes the byte buffer to scan + * @param len the number of bytes in the buffer pointed to by @a bytes. + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE zconf_scan_bytes (yyconst char * yybytes, int _yybytes_len ) +{ + YY_BUFFER_STATE b; + char *buf; + yy_size_t n; + int i; + + /* Get memory for full buffer, including space for trailing EOB's. */ + n = _yybytes_len + 2; + buf = (char *) zconfalloc(n ); + if ( ! buf ) + YY_FATAL_ERROR( "out of dynamic memory in zconf_scan_bytes()" ); + + for ( i = 0; i < _yybytes_len; ++i ) + buf[i] = yybytes[i]; + + buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; + + b = zconf_scan_buffer(buf,n ); + if ( ! b ) + YY_FATAL_ERROR( "bad buffer in zconf_scan_bytes()" ); + + /* It's okay to grow etc. this buffer, and we should throw it + * away when we're done. + */ + b->yy_is_our_buffer = 1; + + return b; +} + +#ifndef YY_EXIT_FAILURE +#define YY_EXIT_FAILURE 2 +#endif + +static void yy_fatal_error (yyconst char* msg ) +{ + (void) fprintf( stderr, "%s\n", msg ); + exit( YY_EXIT_FAILURE ); +} + +/* Redefine yyless() so it works in section 3 code. */ + +#undef yyless +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up zconftext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + zconftext[zconfleng] = (yy_hold_char); \ + (yy_c_buf_p) = zconftext + yyless_macro_arg; \ + (yy_hold_char) = *(yy_c_buf_p); \ + *(yy_c_buf_p) = '\0'; \ + zconfleng = yyless_macro_arg; \ + } \ + while ( 0 ) + +/* Accessor methods (get/set functions) to struct members. */ + +/** Get the current line number. + * + */ +int zconfget_lineno (void) +{ + + return zconflineno; +} + +/** Get the input stream. + * + */ +FILE *zconfget_in (void) +{ + return zconfin; +} + +/** Get the output stream. + * + */ +FILE *zconfget_out (void) +{ + return zconfout; +} + +/** Get the length of the current token. + * + */ +int zconfget_leng (void) +{ + return zconfleng; +} + +/** Get the current token. + * + */ + +char *zconfget_text (void) +{ + return zconftext; +} + +/** Set the current line number. + * @param line_number + * + */ +void zconfset_lineno (int line_number ) +{ + + zconflineno = line_number; +} + +/** Set the input stream. This does not discard the current + * input buffer. + * @param in_str A readable stream. + * + * @see zconf_switch_to_buffer + */ +void zconfset_in (FILE * in_str ) +{ + zconfin = in_str ; +} + +void zconfset_out (FILE * out_str ) +{ + zconfout = out_str ; +} + +int zconfget_debug (void) +{ + return zconf_flex_debug; +} + +void zconfset_debug (int bdebug ) +{ + zconf_flex_debug = bdebug ; +} + +static int yy_init_globals (void) +{ + /* Initialization is the same as for the non-reentrant scanner. + * This function is called from zconflex_destroy(), so don't allocate here. + */ + + (yy_buffer_stack) = 0; + (yy_buffer_stack_top) = 0; + (yy_buffer_stack_max) = 0; + (yy_c_buf_p) = (char *) 0; + (yy_init) = 0; + (yy_start) = 0; + +/* Defined in main.c */ +#ifdef YY_STDINIT + zconfin = stdin; + zconfout = stdout; +#else + zconfin = (FILE *) 0; + zconfout = (FILE *) 0; +#endif + + /* For future reference: Set errno on error, since we are called by + * zconflex_init() + */ + return 0; +} + +/* zconflex_destroy is for both reentrant and non-reentrant scanners. */ +int zconflex_destroy (void) +{ + + /* Pop the buffer stack, destroying each element. */ + while(YY_CURRENT_BUFFER){ + zconf_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + zconfpop_buffer_state(); + } + + /* Destroy the stack itself. */ + zconffree((yy_buffer_stack) ); + (yy_buffer_stack) = NULL; + + /* Reset the globals. This is important in a non-reentrant scanner so the next time + * zconflex() is called, initialization will occur. */ + yy_init_globals( ); + + return 0; +} + +/* + * Internal utility routines. + */ + +#ifndef yytext_ptr +static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) +{ + register int i; + for ( i = 0; i < n; ++i ) + s1[i] = s2[i]; +} +#endif + +#ifdef YY_NEED_STRLEN +static int yy_flex_strlen (yyconst char * s ) +{ + register int n; + for ( n = 0; s[n]; ++n ) + ; + + return n; +} +#endif + +void *zconfalloc (yy_size_t size ) +{ + return (void *) malloc( size ); +} + +void *zconfrealloc (void * ptr, yy_size_t size ) +{ + /* The cast to (char *) in the following accommodates both + * implementations that use char* generic pointers, and those + * that use void* generic pointers. It works with the latter + * because both ANSI C and C++ allow castless assignment from + * any pointer type to void*, and deal with argument conversions + * as though doing an assignment. + */ + return (void *) realloc( (char *) ptr, size ); +} + +void zconffree (void * ptr ) +{ + free( (char *) ptr ); /* see zconfrealloc() for (char *) cast */ +} + +#define YYTABLES_NAME "yytables" + +void zconf_starthelp(void) +{ + new_string(); + last_ts = first_ts = 0; + BEGIN(HELP); +} + +static void zconf_endhelp(void) +{ + zconflval.string = text; + BEGIN(INITIAL); +} + +/* + * Try to open specified file with following names: + * ./name + * $(srctree)/name + * The latter is used when srctree is separate from objtree + * when compiling the kernel. + * Return NULL if file is not found. + */ +FILE *zconf_fopen(const char *name) +{ + char *env, fullname[PATH_MAX+1]; + FILE *f; + + f = fopen(name, "r"); + if (!f && name != NULL && name[0] != '/') { + env = getenv(SRCTREE); + if (env) { + sprintf(fullname, "%s/%s", env, name); + f = fopen(fullname, "r"); + } + } + return f; +} + +void zconf_initscan(const char *name) +{ + zconfin = zconf_fopen(name); + if (!zconfin) { + printf("can't find file %s\n", name); + exit(1); + } + + current_buf = xmalloc(sizeof(*current_buf)); + memset(current_buf, 0, sizeof(*current_buf)); + + current_file = file_lookup(name); + current_file->lineno = 1; +} + +void zconf_nextfile(const char *name) +{ + struct file *iter; + struct file *file = file_lookup(name); + struct buffer *buf = xmalloc(sizeof(*buf)); + memset(buf, 0, sizeof(*buf)); + + current_buf->state = YY_CURRENT_BUFFER; + zconfin = zconf_fopen(file->name); + if (!zconfin) { + printf("%s:%d: can't open file \"%s\"\n", + zconf_curname(), zconf_lineno(), file->name); + exit(1); + } + zconf_switch_to_buffer(zconf_create_buffer(zconfin,YY_BUF_SIZE)); + buf->parent = current_buf; + current_buf = buf; + + for (iter = current_file->parent; iter; iter = iter->parent ) { + if (!strcmp(current_file->name,iter->name) ) { + printf("%s:%d: recursive inclusion detected. " + "Inclusion path:\n current file : '%s'\n", + zconf_curname(), zconf_lineno(), + zconf_curname()); + iter = current_file->parent; + while (iter && \ + strcmp(iter->name,current_file->name)) { + printf(" included from: '%s:%d'\n", + iter->name, iter->lineno-1); + iter = iter->parent; + } + if (iter) + printf(" included from: '%s:%d'\n", + iter->name, iter->lineno+1); + exit(1); + } + } + file->lineno = 1; + file->parent = current_file; + current_file = file; +} + +static void zconf_endfile(void) +{ + struct buffer *parent; + + current_file = current_file->parent; + + parent = current_buf->parent; + if (parent) { + fclose(zconfin); + zconf_delete_buffer(YY_CURRENT_BUFFER); + zconf_switch_to_buffer(parent->state); + } + free(current_buf); + current_buf = parent; +} + +int zconf_lineno(void) +{ + return current_pos.lineno; +} + +const char *zconf_curname(void) +{ + return current_pos.file ? current_pos.file->name : "<none>"; +} + diff --git a/scripts/kconfig/zconf.tab.c_shipped b/scripts/kconfig/zconf.tab.c_shipped new file mode 100644 index 0000000..de5e84e --- /dev/null +++ b/scripts/kconfig/zconf.tab.c_shipped @@ -0,0 +1,2538 @@ +/* A Bison parser, made by GNU Bison 2.5. */ + +/* Bison implementation for Yacc-like parsers in C + + Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ + +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ + +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +/* Identify Bison output. */ +#define YYBISON 1 + +/* Bison version. */ +#define YYBISON_VERSION "2.5" + +/* Skeleton name. */ +#define YYSKELETON_NAME "yacc.c" + +/* Pure parsers. */ +#define YYPURE 0 + +/* Push parsers. */ +#define YYPUSH 0 + +/* Pull parsers. */ +#define YYPULL 1 + +/* Using locations. */ +#define YYLSP_NEEDED 0 + +/* Substitute the variable and function names. */ +#define yyparse zconfparse +#define yylex zconflex +#define yyerror zconferror +#define yylval zconflval +#define yychar zconfchar +#define yydebug zconfdebug +#define yynerrs zconfnerrs + + +/* Copy the first part of user declarations. */ + + +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <ctype.h> +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <stdbool.h> + +#include "lkc.h" + +#define printd(mask, fmt...) if (cdebug & (mask)) printf(fmt) + +#define PRINTD 0x0001 +#define DEBUG_PARSE 0x0002 + +int cdebug = PRINTD; + +extern int zconflex(void); +static void zconfprint(const char *err, ...); +static void zconf_error(const char *err, ...); +static void zconferror(const char *err); +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken); + +struct symbol *symbol_hash[SYMBOL_HASHSIZE]; + +static struct menu *current_menu, *current_entry; + + + + +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 1 +#endif + +/* Enabling verbose error messages. */ +#ifdef YYERROR_VERBOSE +# undef YYERROR_VERBOSE +# define YYERROR_VERBOSE 1 +#else +# define YYERROR_VERBOSE 0 +#endif + +/* Enabling the token table. */ +#ifndef YYTOKEN_TABLE +# define YYTOKEN_TABLE 0 +#endif + + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + T_MAINMENU = 258, + T_MENU = 259, + T_ENDMENU = 260, + T_SOURCE = 261, + T_CHOICE = 262, + T_ENDCHOICE = 263, + T_COMMENT = 264, + T_CONFIG = 265, + T_MENUCONFIG = 266, + T_HELP = 267, + T_HELPTEXT = 268, + T_IF = 269, + T_ENDIF = 270, + T_DEPENDS = 271, + T_OPTIONAL = 272, + T_PROMPT = 273, + T_TYPE = 274, + T_DEFAULT = 275, + T_SELECT = 276, + T_RANGE = 277, + T_VISIBLE = 278, + T_OPTION = 279, + T_ON = 280, + T_WORD = 281, + T_WORD_QUOTE = 282, + T_UNEQUAL = 283, + T_CLOSE_PAREN = 284, + T_OPEN_PAREN = 285, + T_EOL = 286, + T_OR = 287, + T_AND = 288, + T_EQUAL = 289, + T_NOT = 290 + }; +#endif + + + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE +{ + + + char *string; + struct file *file; + struct symbol *symbol; + struct expr *expr; + struct menu *menu; + const struct kconf_id *id; + + + +} YYSTYPE; +# define YYSTYPE_IS_TRIVIAL 1 +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 +#endif + + +/* Copy the second part of user declarations. */ + + +/* Include zconf.hash.c here so it can see the token constants. */ +#include "zconf.hash.c" + + + +#ifdef short +# undef short +#endif + +#ifdef YYTYPE_UINT8 +typedef YYTYPE_UINT8 yytype_uint8; +#else +typedef unsigned char yytype_uint8; +#endif + +#ifdef YYTYPE_INT8 +typedef YYTYPE_INT8 yytype_int8; +#elif (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +typedef signed char yytype_int8; +#else +typedef short int yytype_int8; +#endif + +#ifdef YYTYPE_UINT16 +typedef YYTYPE_UINT16 yytype_uint16; +#else +typedef unsigned short int yytype_uint16; +#endif + +#ifdef YYTYPE_INT16 +typedef YYTYPE_INT16 yytype_int16; +#else +typedef short int yytype_int16; +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned int +# endif +#endif + +#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include <libintl.h> /* INFRINGES ON USER NAME SPACE */ +# define YY_(msgid) dgettext ("bison-runtime", msgid) +# endif +# endif +# ifndef YY_ +# define YY_(msgid) msgid +# endif +#endif + +/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YYUSE(e) ((void) (e)) +#else +# define YYUSE(e) /* empty */ +#endif + +/* Identity function, used to suppress warnings about constant conditions. */ +#ifndef lint +# define YYID(n) (n) +#else +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static int +YYID (int yyi) +#else +static int +YYID (yyi) + int yyi; +#endif +{ + return yyi; +} +#endif + +#if ! defined yyoverflow || YYERROR_VERBOSE + +/* The parser invokes alloca or malloc; define the necessary symbols. */ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include <alloca.h> /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include <malloc.h> /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca +# else +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# endif +# endif +# endif + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's `empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif +# else +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# endif +#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ + + +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + yytype_int16 yyss_alloc; + YYSTYPE yyvs_alloc; +}; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +# define YYSTACK_BYTES(N) \ + ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + + YYSTACK_GAP_MAXIMUM) + +# define YYCOPY_NEEDED 1 + +/* Relocate STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ + do \ + { \ + YYSIZE_T yynewbytes; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ + yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / sizeof (*yyptr); \ + } \ + while (YYID (0)) + +#endif + +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from FROM to TO. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(To, From, Count) \ + __builtin_memcpy (To, From, (Count) * sizeof (*(From))) +# else +# define YYCOPY(To, From, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (To)[yyi] = (From)[yyi]; \ + } \ + while (YYID (0)) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL 11 +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST 290 + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS 36 +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS 50 +/* YYNRULES -- Number of rules. */ +#define YYNRULES 118 +/* YYNRULES -- Number of states. */ +#define YYNSTATES 191 + +/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ +#define YYUNDEFTOK 2 +#define YYMAXUTOK 290 + +#define YYTRANSLATE(YYX) \ + ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) + +/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */ +static const yytype_uint8 yytranslate[] = +{ + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35 +}; + +#if YYDEBUG +/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in + YYRHS. */ +static const yytype_uint16 yyprhs[] = +{ + 0, 0, 3, 6, 8, 11, 13, 14, 17, 20, + 23, 26, 31, 36, 40, 42, 44, 46, 48, 50, + 52, 54, 56, 58, 60, 62, 64, 66, 68, 72, + 75, 79, 82, 86, 89, 90, 93, 96, 99, 102, + 105, 108, 112, 117, 122, 127, 133, 137, 138, 142, + 143, 146, 150, 153, 155, 159, 160, 163, 166, 169, + 172, 175, 180, 184, 187, 192, 193, 196, 200, 202, + 206, 207, 210, 213, 216, 220, 224, 228, 230, 234, + 235, 238, 241, 244, 248, 252, 255, 258, 261, 262, + 265, 268, 271, 276, 277, 280, 283, 286, 287, 290, + 292, 294, 297, 300, 303, 305, 308, 309, 312, 314, + 318, 322, 326, 329, 333, 337, 339, 341, 342 +}; + +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ +static const yytype_int8 yyrhs[] = +{ + 37, 0, -1, 81, 38, -1, 38, -1, 63, 39, + -1, 39, -1, -1, 39, 41, -1, 39, 55, -1, + 39, 67, -1, 39, 80, -1, 39, 26, 1, 31, + -1, 39, 40, 1, 31, -1, 39, 1, 31, -1, + 16, -1, 18, -1, 19, -1, 21, -1, 17, -1, + 22, -1, 20, -1, 23, -1, 31, -1, 61, -1, + 71, -1, 44, -1, 46, -1, 69, -1, 26, 1, + 31, -1, 1, 31, -1, 10, 26, 31, -1, 43, + 47, -1, 11, 26, 31, -1, 45, 47, -1, -1, + 47, 48, -1, 47, 49, -1, 47, 75, -1, 47, + 73, -1, 47, 42, -1, 47, 31, -1, 19, 78, + 31, -1, 18, 79, 82, 31, -1, 20, 83, 82, + 31, -1, 21, 26, 82, 31, -1, 22, 84, 84, + 82, 31, -1, 24, 50, 31, -1, -1, 50, 26, + 51, -1, -1, 34, 79, -1, 7, 85, 31, -1, + 52, 56, -1, 80, -1, 53, 58, 54, -1, -1, + 56, 57, -1, 56, 75, -1, 56, 73, -1, 56, + 31, -1, 56, 42, -1, 18, 79, 82, 31, -1, + 19, 78, 31, -1, 17, 31, -1, 20, 26, 82, + 31, -1, -1, 58, 41, -1, 14, 83, 81, -1, + 80, -1, 59, 62, 60, -1, -1, 62, 41, -1, + 62, 67, -1, 62, 55, -1, 3, 79, 81, -1, + 4, 79, 31, -1, 64, 76, 74, -1, 80, -1, + 65, 68, 66, -1, -1, 68, 41, -1, 68, 67, + -1, 68, 55, -1, 6, 79, 31, -1, 9, 79, + 31, -1, 70, 74, -1, 12, 31, -1, 72, 13, + -1, -1, 74, 75, -1, 74, 31, -1, 74, 42, + -1, 16, 25, 83, 31, -1, -1, 76, 77, -1, + 76, 31, -1, 23, 82, -1, -1, 79, 82, -1, + 26, -1, 27, -1, 5, 31, -1, 8, 31, -1, + 15, 31, -1, 31, -1, 81, 31, -1, -1, 14, + 83, -1, 84, -1, 84, 34, 84, -1, 84, 28, + 84, -1, 30, 83, 29, -1, 35, 83, -1, 83, + 32, 83, -1, 83, 33, 83, -1, 26, -1, 27, + -1, -1, 26, -1 +}; + +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const yytype_uint16 yyrline[] = +{ + 0, 103, 103, 103, 105, 105, 107, 109, 110, 111, + 112, 113, 114, 118, 122, 122, 122, 122, 122, 122, + 122, 122, 126, 127, 128, 129, 130, 131, 135, 136, + 142, 150, 156, 164, 174, 176, 177, 178, 179, 180, + 181, 184, 192, 198, 208, 214, 220, 223, 225, 236, + 237, 242, 251, 256, 264, 267, 269, 270, 271, 272, + 273, 276, 282, 293, 299, 309, 311, 316, 324, 332, + 335, 337, 338, 339, 344, 351, 358, 363, 371, 374, + 376, 377, 378, 381, 389, 396, 403, 409, 416, 418, + 419, 420, 423, 431, 433, 434, 437, 444, 446, 451, + 452, 455, 456, 457, 461, 462, 465, 466, 469, 470, + 471, 472, 473, 474, 475, 478, 479, 482, 483 +}; +#endif + +#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + "$end", "error", "$undefined", "T_MAINMENU", "T_MENU", "T_ENDMENU", + "T_SOURCE", "T_CHOICE", "T_ENDCHOICE", "T_COMMENT", "T_CONFIG", + "T_MENUCONFIG", "T_HELP", "T_HELPTEXT", "T_IF", "T_ENDIF", "T_DEPENDS", + "T_OPTIONAL", "T_PROMPT", "T_TYPE", "T_DEFAULT", "T_SELECT", "T_RANGE", + "T_VISIBLE", "T_OPTION", "T_ON", "T_WORD", "T_WORD_QUOTE", "T_UNEQUAL", + "T_CLOSE_PAREN", "T_OPEN_PAREN", "T_EOL", "T_OR", "T_AND", "T_EQUAL", + "T_NOT", "$accept", "input", "start", "stmt_list", "option_name", + "common_stmt", "option_error", "config_entry_start", "config_stmt", + "menuconfig_entry_start", "menuconfig_stmt", "config_option_list", + "config_option", "symbol_option", "symbol_option_list", + "symbol_option_arg", "choice", "choice_entry", "choice_end", + "choice_stmt", "choice_option_list", "choice_option", "choice_block", + "if_entry", "if_end", "if_stmt", "if_block", "mainmenu_stmt", "menu", + "menu_entry", "menu_end", "menu_stmt", "menu_block", "source_stmt", + "comment", "comment_stmt", "help_start", "help", "depends_list", + "depends", "visibility_list", "visible", "prompt_stmt_opt", "prompt", + "end", "nl", "if_expr", "expr", "symbol", "word_opt", 0 +}; +#endif + +# ifdef YYPRINT +/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to + token YYLEX-NUM. */ +static const yytype_uint16 yytoknum[] = +{ + 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290 +}; +# endif + +/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ +static const yytype_uint8 yyr1[] = +{ + 0, 36, 37, 37, 38, 38, 39, 39, 39, 39, + 39, 39, 39, 39, 40, 40, 40, 40, 40, 40, + 40, 40, 41, 41, 41, 41, 41, 41, 42, 42, + 43, 44, 45, 46, 47, 47, 47, 47, 47, 47, + 47, 48, 48, 48, 48, 48, 49, 50, 50, 51, + 51, 52, 53, 54, 55, 56, 56, 56, 56, 56, + 56, 57, 57, 57, 57, 58, 58, 59, 60, 61, + 62, 62, 62, 62, 63, 64, 65, 66, 67, 68, + 68, 68, 68, 69, 70, 71, 72, 73, 74, 74, + 74, 74, 75, 76, 76, 76, 77, 78, 78, 79, + 79, 80, 80, 80, 81, 81, 82, 82, 83, 83, + 83, 83, 83, 83, 83, 84, 84, 85, 85 +}; + +/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ +static const yytype_uint8 yyr2[] = +{ + 0, 2, 2, 1, 2, 1, 0, 2, 2, 2, + 2, 4, 4, 3, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, + 3, 2, 3, 2, 0, 2, 2, 2, 2, 2, + 2, 3, 4, 4, 4, 5, 3, 0, 3, 0, + 2, 3, 2, 1, 3, 0, 2, 2, 2, 2, + 2, 4, 3, 2, 4, 0, 2, 3, 1, 3, + 0, 2, 2, 2, 3, 3, 3, 1, 3, 0, + 2, 2, 2, 3, 3, 2, 2, 2, 0, 2, + 2, 2, 4, 0, 2, 2, 2, 0, 2, 1, + 1, 2, 2, 2, 1, 2, 0, 2, 1, 3, + 3, 3, 2, 3, 3, 1, 1, 0, 1 +}; + +/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE doesn't specify something else to do. Zero + means the default is an error. */ +static const yytype_uint8 yydefact[] = +{ + 6, 0, 104, 0, 3, 0, 6, 6, 99, 100, + 0, 1, 0, 0, 0, 0, 117, 0, 0, 0, + 0, 0, 0, 14, 18, 15, 16, 20, 17, 19, + 21, 0, 22, 0, 7, 34, 25, 34, 26, 55, + 65, 8, 70, 23, 93, 79, 9, 27, 88, 24, + 10, 0, 105, 2, 74, 13, 0, 101, 0, 118, + 0, 102, 0, 0, 0, 115, 116, 0, 0, 0, + 108, 103, 0, 0, 0, 0, 0, 0, 0, 88, + 0, 0, 75, 83, 51, 84, 30, 32, 0, 112, + 0, 0, 67, 0, 0, 11, 12, 0, 0, 0, + 0, 97, 0, 0, 0, 47, 0, 40, 39, 35, + 36, 0, 38, 37, 0, 0, 97, 0, 59, 60, + 56, 58, 57, 66, 54, 53, 71, 73, 69, 72, + 68, 106, 95, 0, 94, 80, 82, 78, 81, 77, + 90, 91, 89, 111, 113, 114, 110, 109, 29, 86, + 0, 106, 0, 106, 106, 106, 0, 0, 0, 87, + 63, 106, 0, 106, 0, 96, 0, 0, 41, 98, + 0, 0, 106, 49, 46, 28, 0, 62, 0, 107, + 92, 42, 43, 44, 0, 0, 48, 61, 64, 45, + 50 +}; + +/* YYDEFGOTO[NTERM-NUM]. */ +static const yytype_int16 yydefgoto[] = +{ + -1, 3, 4, 5, 33, 34, 108, 35, 36, 37, + 38, 74, 109, 110, 157, 186, 39, 40, 124, 41, + 76, 120, 77, 42, 128, 43, 78, 6, 44, 45, + 137, 46, 80, 47, 48, 49, 111, 112, 81, 113, + 79, 134, 152, 153, 50, 7, 165, 69, 70, 60 +}; + +/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ +#define YYPACT_NINF -90 +static const yytype_int16 yypact[] = +{ + 4, 42, -90, 96, -90, 111, -90, 15, -90, -90, + 75, -90, 82, 42, 104, 42, 110, 107, 42, 115, + 125, -4, 121, -90, -90, -90, -90, -90, -90, -90, + -90, 162, -90, 163, -90, -90, -90, -90, -90, -90, + -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, + -90, 139, -90, -90, 138, -90, 142, -90, 143, -90, + 152, -90, 164, 167, 168, -90, -90, -4, -4, 77, + -18, -90, 177, 185, 33, 71, 195, 247, 236, -2, + 236, 171, -90, -90, -90, -90, -90, -90, 41, -90, + -4, -4, 138, 97, 97, -90, -90, 186, 187, 194, + 42, 42, -4, 196, 97, -90, 219, -90, -90, -90, + -90, 210, -90, -90, 204, 42, 42, 199, -90, -90, + -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, + -90, 222, -90, 223, -90, -90, -90, -90, -90, -90, + -90, -90, -90, -90, 215, -90, -90, -90, -90, -90, + -4, 222, 228, 222, -5, 222, 97, 35, 229, -90, + -90, 222, 232, 222, -4, -90, 135, 233, -90, -90, + 234, 235, 222, 240, -90, -90, 237, -90, 239, -13, + -90, -90, -90, -90, 244, 42, -90, -90, -90, -90, + -90 +}; + +/* YYPGOTO[NTERM-NUM]. */ +static const yytype_int16 yypgoto[] = +{ + -90, -90, 269, 271, -90, 23, -70, -90, -90, -90, + -90, 243, -90, -90, -90, -90, -90, -90, -90, -48, + -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, + -90, -20, -90, -90, -90, -90, -90, 206, 205, -68, + -90, -90, 169, -1, 27, -7, 118, -66, -89, -90 +}; + +/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule which + number is the opposite. If YYTABLE_NINF, syntax error. */ +#define YYTABLE_NINF -86 +static const yytype_int16 yytable[] = +{ + 10, 88, 89, 54, 146, 147, 119, 1, 122, 164, + 93, 141, 56, 142, 58, 156, 94, 62, 1, 90, + 91, 131, 65, 66, 144, 145, 67, 90, 91, 132, + 127, 68, 136, -31, 97, 2, 154, -31, -31, -31, + -31, -31, -31, -31, -31, 98, 52, -31, -31, 99, + -31, 100, 101, 102, 103, 104, -31, 105, 129, 106, + 138, 173, 92, 141, 107, 142, 174, 172, 8, 9, + 143, -33, 97, 90, 91, -33, -33, -33, -33, -33, + -33, -33, -33, 98, 166, -33, -33, 99, -33, 100, + 101, 102, 103, 104, -33, 105, 11, 106, 179, 151, + 123, 126, 107, 135, 125, 130, 2, 139, 2, 90, + 91, -5, 12, 55, 161, 13, 14, 15, 16, 17, + 18, 19, 20, 65, 66, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 57, 59, 31, 61, -4, + 12, 63, 32, 13, 14, 15, 16, 17, 18, 19, + 20, 64, 71, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 72, 73, 31, 180, 90, 91, 52, + 32, -85, 97, 82, 83, -85, -85, -85, -85, -85, + -85, -85, -85, 84, 190, -85, -85, 99, -85, -85, + -85, -85, -85, -85, -85, 85, 97, 106, 86, 87, + -52, -52, 140, -52, -52, -52, -52, 98, 95, -52, + -52, 99, 114, 115, 116, 117, 96, 148, 149, 150, + 158, 106, 155, 159, 97, 163, 118, -76, -76, -76, + -76, -76, -76, -76, -76, 160, 164, -76, -76, 99, + 13, 14, 15, 16, 17, 18, 19, 20, 91, 106, + 21, 22, 14, 15, 140, 17, 18, 19, 20, 168, + 175, 21, 22, 177, 181, 182, 183, 32, 187, 167, + 188, 169, 170, 171, 185, 189, 53, 51, 32, 176, + 75, 178, 121, 0, 133, 162, 0, 0, 0, 0, + 184 +}; + +#define yypact_value_is_default(yystate) \ + ((yystate) == (-90)) + +#define yytable_value_is_error(yytable_value) \ + YYID (0) + +static const yytype_int16 yycheck[] = +{ + 1, 67, 68, 10, 93, 94, 76, 3, 76, 14, + 28, 81, 13, 81, 15, 104, 34, 18, 3, 32, + 33, 23, 26, 27, 90, 91, 30, 32, 33, 31, + 78, 35, 80, 0, 1, 31, 102, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 31, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 78, 26, + 80, 26, 69, 133, 31, 133, 31, 156, 26, 27, + 29, 0, 1, 32, 33, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 150, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 0, 26, 164, 100, + 77, 78, 31, 80, 77, 78, 31, 80, 31, 32, + 33, 0, 1, 31, 115, 4, 5, 6, 7, 8, + 9, 10, 11, 26, 27, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 31, 26, 26, 31, 0, + 1, 26, 31, 4, 5, 6, 7, 8, 9, 10, + 11, 26, 31, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 1, 1, 26, 31, 32, 33, 31, + 31, 0, 1, 31, 31, 4, 5, 6, 7, 8, + 9, 10, 11, 31, 185, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 31, 1, 26, 31, 31, + 5, 6, 31, 8, 9, 10, 11, 12, 31, 14, + 15, 16, 17, 18, 19, 20, 31, 31, 31, 25, + 1, 26, 26, 13, 1, 26, 31, 4, 5, 6, + 7, 8, 9, 10, 11, 31, 14, 14, 15, 16, + 4, 5, 6, 7, 8, 9, 10, 11, 33, 26, + 14, 15, 5, 6, 31, 8, 9, 10, 11, 31, + 31, 14, 15, 31, 31, 31, 31, 31, 31, 151, + 31, 153, 154, 155, 34, 31, 7, 6, 31, 161, + 37, 163, 76, -1, 79, 116, -1, -1, -1, -1, + 172 +}; + +/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing + symbol of state STATE-NUM. */ +static const yytype_uint8 yystos[] = +{ + 0, 3, 31, 37, 38, 39, 63, 81, 26, 27, + 79, 0, 1, 4, 5, 6, 7, 8, 9, 10, + 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 26, 31, 40, 41, 43, 44, 45, 46, 52, + 53, 55, 59, 61, 64, 65, 67, 69, 70, 71, + 80, 39, 31, 38, 81, 31, 79, 31, 79, 26, + 85, 31, 79, 26, 26, 26, 27, 30, 35, 83, + 84, 31, 1, 1, 47, 47, 56, 58, 62, 76, + 68, 74, 31, 31, 31, 31, 31, 31, 83, 83, + 32, 33, 81, 28, 34, 31, 31, 1, 12, 16, + 18, 19, 20, 21, 22, 24, 26, 31, 42, 48, + 49, 72, 73, 75, 17, 18, 19, 20, 31, 42, + 57, 73, 75, 41, 54, 80, 41, 55, 60, 67, + 80, 23, 31, 74, 77, 41, 55, 66, 67, 80, + 31, 42, 75, 29, 83, 83, 84, 84, 31, 31, + 25, 79, 78, 79, 83, 26, 84, 50, 1, 13, + 31, 79, 78, 26, 14, 82, 83, 82, 31, 82, + 82, 82, 84, 26, 31, 31, 82, 31, 82, 83, + 31, 31, 31, 31, 82, 34, 51, 31, 31, 31, + 79 +}; + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = YYEMPTY) +#define YYEMPTY (-2) +#define YYEOF 0 + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab + + +/* Like YYERROR except do call yyerror. This remains here temporarily + to ease the transition to the new meaning of YYERROR, for GCC. + Once GCC version 2 has supplanted version 1, this can go. However, + YYFAIL appears to be in use. Nevertheless, it is formally deprecated + in Bison 2.4.2's NEWS entry, where a plan to phase it out is + discussed. */ + +#define YYFAIL goto yyerrlab +#if defined YYFAIL + /* This is here to suppress warnings from the GCC cpp's + -Wunused-macros. Normally we don't worry about that warning, but + some users do, and we want to make it easy for users to remove + YYFAIL uses, which will produce warnings from Bison 2.5. */ +#endif + +#define YYRECOVERING() (!!yyerrstatus) + +#define YYBACKUP(Token, Value) \ +do \ + if (yychar == YYEMPTY && yylen == 1) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (1); \ + goto yybackup; \ + } \ + else \ + { \ + yyerror (YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ +while (YYID (0)) + + +#define YYTERROR 1 +#define YYERRCODE 256 + + +/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +#define YYRHSLOC(Rhs, K) ((Rhs)[K]) +#ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (YYID (N)) \ + { \ + (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ + (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ + (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ + (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ + } \ + else \ + { \ + (Current).first_line = (Current).last_line = \ + YYRHSLOC (Rhs, 0).last_line; \ + (Current).first_column = (Current).last_column = \ + YYRHSLOC (Rhs, 0).last_column; \ + } \ + while (YYID (0)) +#endif + + +/* This macro is provided for backward compatibility. */ + +#ifndef YY_LOCATION_PRINT +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) +#endif + + +/* YYLEX -- calling `yylex' with the right arguments. */ + +#ifdef YYLEX_PARAM +# define YYLEX yylex (YYLEX_PARAM) +#else +# define YYLEX yylex () +#endif + +/* Enable debugging if requested. */ +#if YYDEBUG + +# ifndef YYFPRINTF +# include <stdio.h> /* INFRINGES ON USER NAME SPACE */ +# define YYFPRINTF fprintf +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (YYID (0)) + +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Type, Value); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (YYID (0)) + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +#else +static void +yy_symbol_value_print (yyoutput, yytype, yyvaluep) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; +#endif +{ + if (!yyvaluep) + return; +# ifdef YYPRINT + if (yytype < YYNTOKENS) + YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); +# else + YYUSE (yyoutput); +# endif + switch (yytype) + { + default: + break; + } +} + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +#else +static void +yy_symbol_print (yyoutput, yytype, yyvaluep) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; +#endif +{ + if (yytype < YYNTOKENS) + YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); + else + YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); + + yy_symbol_value_print (yyoutput, yytype, yyvaluep); + YYFPRINTF (yyoutput, ")"); +} + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (included). | +`------------------------------------------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) +#else +static void +yy_stack_print (yybottom, yytop) + yytype_int16 *yybottom; + yytype_int16 *yytop; +#endif +{ + YYFPRINTF (stderr, "Stack now"); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (YYID (0)) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_reduce_print (YYSTYPE *yyvsp, int yyrule) +#else +static void +yy_reduce_print (yyvsp, yyrule) + YYSTYPE *yyvsp; + int yyrule; +#endif +{ + int yynrhs = yyr2[yyrule]; + int yyi; + unsigned long int yylno = yyrline[yyrule]; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], + &(yyvsp[(yyi + 1) - (yynrhs)]) + ); + YYFPRINTF (stderr, "\n"); + } +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (yyvsp, Rule); \ +} while (YYID (0)) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; +#else /* !YYDEBUG */ +# define YYDPRINTF(Args) +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) +#endif /* !YYDEBUG */ + + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH 200 +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH 10000 +#endif + + +#if YYERROR_VERBOSE + +# ifndef yystrlen +# if defined __GLIBC__ && defined _STRING_H +# define yystrlen strlen +# else +/* Return the length of YYSTR. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static YYSIZE_T +yystrlen (const char *yystr) +#else +static YYSIZE_T +yystrlen (yystr) + const char *yystr; +#endif +{ + YYSIZE_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) + continue; + return yylen; +} +# endif +# endif + +# ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static char * +yystpcpy (char *yydest, const char *yysrc) +#else +static char * +yystpcpy (yydest, yysrc) + char *yydest; + const char *yysrc; +#endif +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +# endif + +# ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYSIZE_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYSIZE_T yyn = 0; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + /* Fall through. */ + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (! yyres) + return yystrlen (yystr); + + return yystpcpy (yyres, yystr) - yyres; +} +# endif + +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP. + + Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return 2 if the + required number of bytes is too large to store. */ +static int +yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + yytype_int16 *yyssp, int yytoken) +{ + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]); + YYSIZE_T yysize = yysize0; + YYSIZE_T yysize1; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + /* Internationalized format string. */ + const char *yyformat = 0; + /* Arguments of yyformat. */ + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + /* Number of reported tokens (one for the "unexpected", one per + "expected"). */ + int yycount = 0; + + /* There are many possibilities here to consider: + - Assume YYFAIL is not used. It's too flawed to consider. See + <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html> + for details. YYERROR is fine as it does not invoke this + function. + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != YYEMPTY) + { + int yyn = yypact[*yyssp]; + yyarg[yycount++] = yytname[yytoken]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + break; + } + yyarg[yycount++] = yytname[yyx]; + yysize1 = yysize + yytnamerr (0, yytname[yyx]); + if (! (yysize <= yysize1 + && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } + } + } + + switch (yycount) + { +# define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +# undef YYCASE_ + } + + yysize1 = yysize + yystrlen (yyformat); + if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return 1; + } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyformat += 2; + } + else + { + yyp++; + yyformat++; + } + } + return 0; +} +#endif /* YYERROR_VERBOSE */ + +/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) +#else +static void +yydestruct (yymsg, yytype, yyvaluep) + const char *yymsg; + int yytype; + YYSTYPE *yyvaluep; +#endif +{ + YYUSE (yyvaluep); + + if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); + + switch (yytype) + { + case 53: /* "choice_entry" */ + + { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + (yyvaluep->menu)->file->name, (yyvaluep->menu)->lineno); + if (current_menu == (yyvaluep->menu)) + menu_end_menu(); +}; + + break; + case 59: /* "if_entry" */ + + { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + (yyvaluep->menu)->file->name, (yyvaluep->menu)->lineno); + if (current_menu == (yyvaluep->menu)) + menu_end_menu(); +}; + + break; + case 65: /* "menu_entry" */ + + { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + (yyvaluep->menu)->file->name, (yyvaluep->menu)->lineno); + if (current_menu == (yyvaluep->menu)) + menu_end_menu(); +}; + + break; + + default: + break; + } +} + + +/* Prevent warnings from -Wmissing-prototypes. */ +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ + + +/* The lookahead symbol. */ +int yychar; + +/* The semantic value of the lookahead symbol. */ +YYSTYPE yylval; + +/* Number of syntax errors so far. */ +int yynerrs; + + +/*----------. +| yyparse. | +`----------*/ + +#ifdef YYPARSE_PARAM +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +int +yyparse (void *YYPARSE_PARAM) +#else +int +yyparse (YYPARSE_PARAM) + void *YYPARSE_PARAM; +#endif +#else /* ! YYPARSE_PARAM */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +int +yyparse (void) +#else +int +yyparse () + +#endif +#endif +{ + int yystate; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; + + /* The stacks and their tools: + `yyss': related to states. + `yyvs': related to semantic values. + + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* The state stack. */ + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss; + yytype_int16 *yyssp; + + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs; + YYSTYPE *yyvsp; + + YYSIZE_T yystacksize; + + int yyn; + int yyresult; + /* Lookahead token as an internal (translated) token number. */ + int yytoken; + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval; + +#if YYERROR_VERBOSE + /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYSIZE_T yymsg_alloc = sizeof yymsgbuf; +#endif + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0; + + yytoken = 0; + yyss = yyssa; + yyvs = yyvsa; + yystacksize = YYINITDEPTH; + + YYDPRINTF ((stderr, "Starting parse\n")); + + yystate = 0; + yyerrstatus = 0; + yynerrs = 0; + yychar = YYEMPTY; /* Cause a token to be read. */ + + /* Initialize stack pointers. + Waste one element of value and location stack + so that they stay on the same level as the state stack. + The wasted elements are never initialized. */ + yyssp = yyss; + yyvsp = yyvs; + + goto yysetstate; + +/*------------------------------------------------------------. +| yynewstate -- Push a new state, which is found in yystate. | +`------------------------------------------------------------*/ + yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + + yysetstate: + *yyssp = yystate; + + if (yyss + yystacksize - 1 <= yyssp) + { + /* Get the current used size of the three stacks, in elements. */ + YYSIZE_T yysize = yyssp - yyss + 1; + +#ifdef yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + YYSTYPE *yyvs1 = yyvs; + yytype_int16 *yyss1 = yyss; + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ + yyoverflow (YY_("memory exhausted"), + &yyss1, yysize * sizeof (*yyssp), + &yyvs1, yysize * sizeof (*yyvsp), + &yystacksize); + + yyss = yyss1; + yyvs = yyvs1; + } +#else /* no yyoverflow */ +# ifndef YYSTACK_RELOCATE + goto yyexhaustedlab; +# else + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + goto yyexhaustedlab; + yystacksize *= 2; + if (YYMAXDEPTH < yystacksize) + yystacksize = YYMAXDEPTH; + + { + yytype_int16 *yyss1 = yyss; + union yyalloc *yyptr = + (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); + if (! yyptr) + goto yyexhaustedlab; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs); +# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } +# endif +#endif /* no yyoverflow */ + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1; + + YYDPRINTF ((stderr, "Stack size increased to %lu\n", + (unsigned long int) yystacksize)); + + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } + + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + + if (yystate == YYFINAL) + YYACCEPT; + + goto yybackup; + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: + + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + + /* First try to decide what to do without reference to lookahead token. */ + yyn = yypact[yystate]; + if (yypact_value_is_default (yyn)) + goto yydefault; + + /* Not known => get a lookahead token if don't already have one. */ + + /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ + if (yychar == YYEMPTY) + { + YYDPRINTF ((stderr, "Reading a token: ")); + yychar = YYLEX; + } + + if (yychar <= YYEOF) + { + yychar = yytoken = YYEOF; + YYDPRINTF ((stderr, "Now at end of input.\n")); + } + else + { + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) + goto yydefault; + yyn = yytable[yyn]; + if (yyn <= 0) + { + if (yytable_value_is_error (yyn)) + goto yyerrlab; + yyn = -yyn; + goto yyreduce; + } + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; + + /* Shift the lookahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + + /* Discard the shifted token. */ + yychar = YYEMPTY; + + yystate = yyn; + *++yyvsp = yylval; + + goto yynewstate; + + +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + +/*-----------------------------. +| yyreduce -- Do a reduction. | +`-----------------------------*/ +yyreduce: + /* yyn is the number of a rule to reduce with. */ + yylen = yyr2[yyn]; + + /* If YYLEN is nonzero, implement the default value of the action: + `$$ = $1'. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval = yyvsp[1-yylen]; + + + YY_REDUCE_PRINT (yyn); + switch (yyn) + { + case 10: + + { zconf_error("unexpected end statement"); } + break; + + case 11: + + { zconf_error("unknown statement \"%s\"", (yyvsp[(2) - (4)].string)); } + break; + + case 12: + + { + zconf_error("unexpected option \"%s\"", kconf_id_strings + (yyvsp[(2) - (4)].id)->name); +} + break; + + case 13: + + { zconf_error("invalid statement"); } + break; + + case 28: + + { zconf_error("unknown option \"%s\"", (yyvsp[(1) - (3)].string)); } + break; + + case 29: + + { zconf_error("invalid option"); } + break; + + case 30: + + { + struct symbol *sym = sym_lookup((yyvsp[(2) - (3)].string), 0); + sym->flags |= SYMBOL_OPTIONAL; + menu_add_entry(sym); + printd(DEBUG_PARSE, "%s:%d:config %s\n", zconf_curname(), zconf_lineno(), (yyvsp[(2) - (3)].string)); +} + break; + + case 31: + + { + menu_end_entry(); + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +} + break; + + case 32: + + { + struct symbol *sym = sym_lookup((yyvsp[(2) - (3)].string), 0); + sym->flags |= SYMBOL_OPTIONAL; + menu_add_entry(sym); + printd(DEBUG_PARSE, "%s:%d:menuconfig %s\n", zconf_curname(), zconf_lineno(), (yyvsp[(2) - (3)].string)); +} + break; + + case 33: + + { + if (current_entry->prompt) + current_entry->prompt->type = P_MENU; + else + zconfprint("warning: menuconfig statement without prompt"); + menu_end_entry(); + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +} + break; + + case 41: + + { + menu_set_type((yyvsp[(1) - (3)].id)->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + (yyvsp[(1) - (3)].id)->stype); +} + break; + + case 42: + + { + menu_add_prompt(P_PROMPT, (yyvsp[(2) - (4)].string), (yyvsp[(3) - (4)].expr)); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +} + break; + + case 43: + + { + menu_add_expr(P_DEFAULT, (yyvsp[(2) - (4)].expr), (yyvsp[(3) - (4)].expr)); + if ((yyvsp[(1) - (4)].id)->stype != S_UNKNOWN) + menu_set_type((yyvsp[(1) - (4)].id)->stype); + printd(DEBUG_PARSE, "%s:%d:default(%u)\n", + zconf_curname(), zconf_lineno(), + (yyvsp[(1) - (4)].id)->stype); +} + break; + + case 44: + + { + menu_add_symbol(P_SELECT, sym_lookup((yyvsp[(2) - (4)].string), 0), (yyvsp[(3) - (4)].expr)); + printd(DEBUG_PARSE, "%s:%d:select\n", zconf_curname(), zconf_lineno()); +} + break; + + case 45: + + { + menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,(yyvsp[(2) - (5)].symbol), (yyvsp[(3) - (5)].symbol)), (yyvsp[(4) - (5)].expr)); + printd(DEBUG_PARSE, "%s:%d:range\n", zconf_curname(), zconf_lineno()); +} + break; + + case 48: + + { + const struct kconf_id *id = kconf_id_lookup((yyvsp[(2) - (3)].string), strlen((yyvsp[(2) - (3)].string))); + if (id && id->flags & TF_OPTION) + menu_add_option(id->token, (yyvsp[(3) - (3)].string)); + else + zconfprint("warning: ignoring unknown option %s", (yyvsp[(2) - (3)].string)); + free((yyvsp[(2) - (3)].string)); +} + break; + + case 49: + + { (yyval.string) = NULL; } + break; + + case 50: + + { (yyval.string) = (yyvsp[(2) - (2)].string); } + break; + + case 51: + + { + struct symbol *sym = sym_lookup((yyvsp[(2) - (3)].string), SYMBOL_CHOICE); + sym->flags |= SYMBOL_AUTO; + menu_add_entry(sym); + menu_add_expr(P_CHOICE, NULL, NULL); + printd(DEBUG_PARSE, "%s:%d:choice\n", zconf_curname(), zconf_lineno()); +} + break; + + case 52: + + { + (yyval.menu) = menu_add_menu(); +} + break; + + case 53: + + { + if (zconf_endtoken((yyvsp[(1) - (1)].id), T_CHOICE, T_ENDCHOICE)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endchoice\n", zconf_curname(), zconf_lineno()); + } +} + break; + + case 61: + + { + menu_add_prompt(P_PROMPT, (yyvsp[(2) - (4)].string), (yyvsp[(3) - (4)].expr)); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +} + break; + + case 62: + + { + if ((yyvsp[(1) - (3)].id)->stype == S_BOOLEAN || (yyvsp[(1) - (3)].id)->stype == S_TRISTATE) { + menu_set_type((yyvsp[(1) - (3)].id)->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + (yyvsp[(1) - (3)].id)->stype); + } else + YYERROR; +} + break; + + case 63: + + { + current_entry->sym->flags |= SYMBOL_OPTIONAL; + printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno()); +} + break; + + case 64: + + { + if ((yyvsp[(1) - (4)].id)->stype == S_UNKNOWN) { + menu_add_symbol(P_DEFAULT, sym_lookup((yyvsp[(2) - (4)].string), 0), (yyvsp[(3) - (4)].expr)); + printd(DEBUG_PARSE, "%s:%d:default\n", + zconf_curname(), zconf_lineno()); + } else + YYERROR; +} + break; + + case 67: + + { + printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno()); + menu_add_entry(NULL); + menu_add_dep((yyvsp[(2) - (3)].expr)); + (yyval.menu) = menu_add_menu(); +} + break; + + case 68: + + { + if (zconf_endtoken((yyvsp[(1) - (1)].id), T_IF, T_ENDIF)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endif\n", zconf_curname(), zconf_lineno()); + } +} + break; + + case 74: + + { + menu_add_prompt(P_MENU, (yyvsp[(2) - (3)].string), NULL); +} + break; + + case 75: + + { + menu_add_entry(NULL); + menu_add_prompt(P_MENU, (yyvsp[(2) - (3)].string), NULL); + printd(DEBUG_PARSE, "%s:%d:menu\n", zconf_curname(), zconf_lineno()); +} + break; + + case 76: + + { + (yyval.menu) = menu_add_menu(); +} + break; + + case 77: + + { + if (zconf_endtoken((yyvsp[(1) - (1)].id), T_MENU, T_ENDMENU)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endmenu\n", zconf_curname(), zconf_lineno()); + } +} + break; + + case 83: + + { + printd(DEBUG_PARSE, "%s:%d:source %s\n", zconf_curname(), zconf_lineno(), (yyvsp[(2) - (3)].string)); + zconf_nextfile((yyvsp[(2) - (3)].string)); +} + break; + + case 84: + + { + menu_add_entry(NULL); + menu_add_prompt(P_COMMENT, (yyvsp[(2) - (3)].string), NULL); + printd(DEBUG_PARSE, "%s:%d:comment\n", zconf_curname(), zconf_lineno()); +} + break; + + case 85: + + { + menu_end_entry(); +} + break; + + case 86: + + { + printd(DEBUG_PARSE, "%s:%d:help\n", zconf_curname(), zconf_lineno()); + zconf_starthelp(); +} + break; + + case 87: + + { + current_entry->help = (yyvsp[(2) - (2)].string); +} + break; + + case 92: + + { + menu_add_dep((yyvsp[(3) - (4)].expr)); + printd(DEBUG_PARSE, "%s:%d:depends on\n", zconf_curname(), zconf_lineno()); +} + break; + + case 96: + + { + menu_add_visibility((yyvsp[(2) - (2)].expr)); +} + break; + + case 98: + + { + menu_add_prompt(P_PROMPT, (yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].expr)); +} + break; + + case 101: + + { (yyval.id) = (yyvsp[(1) - (2)].id); } + break; + + case 102: + + { (yyval.id) = (yyvsp[(1) - (2)].id); } + break; + + case 103: + + { (yyval.id) = (yyvsp[(1) - (2)].id); } + break; + + case 106: + + { (yyval.expr) = NULL; } + break; + + case 107: + + { (yyval.expr) = (yyvsp[(2) - (2)].expr); } + break; + + case 108: + + { (yyval.expr) = expr_alloc_symbol((yyvsp[(1) - (1)].symbol)); } + break; + + case 109: + + { (yyval.expr) = expr_alloc_comp(E_EQUAL, (yyvsp[(1) - (3)].symbol), (yyvsp[(3) - (3)].symbol)); } + break; + + case 110: + + { (yyval.expr) = expr_alloc_comp(E_UNEQUAL, (yyvsp[(1) - (3)].symbol), (yyvsp[(3) - (3)].symbol)); } + break; + + case 111: + + { (yyval.expr) = (yyvsp[(2) - (3)].expr); } + break; + + case 112: + + { (yyval.expr) = expr_alloc_one(E_NOT, (yyvsp[(2) - (2)].expr)); } + break; + + case 113: + + { (yyval.expr) = expr_alloc_two(E_OR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); } + break; + + case 114: + + { (yyval.expr) = expr_alloc_two(E_AND, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); } + break; + + case 115: + + { (yyval.symbol) = sym_lookup((yyvsp[(1) - (1)].string), 0); free((yyvsp[(1) - (1)].string)); } + break; + + case 116: + + { (yyval.symbol) = sym_lookup((yyvsp[(1) - (1)].string), SYMBOL_CONST); free((yyvsp[(1) - (1)].string)); } + break; + + case 117: + + { (yyval.string) = NULL; } + break; + + + + default: break; + } + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ + YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + + *++yyvsp = yyval; + + /* Now `shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ + + yyn = yyr1[yyn]; + + yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; + if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) + yystate = yytable[yystate]; + else + yystate = yydefgoto[yyn - YYNTOKENS]; + + goto yynewstate; + + +/*------------------------------------. +| yyerrlab -- here on detecting error | +`------------------------------------*/ +yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); + + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) + { + ++yynerrs; +#if ! YYERROR_VERBOSE + yyerror (YY_("syntax error")); +#else +# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ + yyssp, yytoken) + { + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status; + yysyntax_error_status = YYSYNTAX_ERROR; + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == 1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + if (!yymsg) + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = 2; + } + else + { + yysyntax_error_status = YYSYNTAX_ERROR; + yymsgp = yymsg; + } + } + yyerror (yymsgp); + if (yysyntax_error_status == 2) + goto yyexhaustedlab; + } +# undef YYSYNTAX_ERROR +#endif + } + + + + if (yyerrstatus == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= YYEOF) + { + /* Return failure if at end of input. */ + if (yychar == YYEOF) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval); + yychar = YYEMPTY; + } + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + goto yyerrlab1; + + +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + + /* Pacify compilers like GCC when the user code never invokes + YYERROR and the label yyerrorlab therefore never appears in user + code. */ + if (/*CONSTCOND*/ 0) + goto yyerrorlab; + + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ + + for (;;) + { + yyn = yypact[yystate]; + if (!yypact_value_is_default (yyn)) + { + yyn += YYTERROR; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + + + yydestruct ("Error: popping", + yystos[yystate], yyvsp); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); + } + + *++yyvsp = yylval; + + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); + + yystate = yyn; + goto yynewstate; + + +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult = 0; + goto yyreturn; + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult = 1; + goto yyreturn; + +#if !defined(yyoverflow) || YYERROR_VERBOSE +/*-------------------------------------------------. +| yyexhaustedlab -- memory exhaustion comes here. | +`-------------------------------------------------*/ +yyexhaustedlab: + yyerror (YY_("memory exhausted")); + yyresult = 2; + /* Fall through. */ +#endif + +yyreturn: + if (yychar != YYEMPTY) + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + } + /* Do not reclaim the symbols of the rule which action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + yystos[*yyssp], yyvsp); + YYPOPSTACK (1); + } +#ifndef yyoverflow + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif +#if YYERROR_VERBOSE + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); +#endif + /* Make sure YYID is used. */ + return YYID (yyresult); +} + + + + + +void conf_parse(const char *name) +{ + struct symbol *sym; + int i; + + zconf_initscan(name); + + sym_init(); + _menu_init(); + rootmenu.prompt = menu_add_prompt(P_MENU, "Linux Kernel Configuration", NULL); + + if (getenv("ZCONF_DEBUG")) + zconfdebug = 1; + zconfparse(); + if (zconfnerrs) + exit(1); + if (!modules_sym) + modules_sym = sym_find( "n" ); + + rootmenu.prompt->text = _(rootmenu.prompt->text); + rootmenu.prompt->text = sym_expand_string_value(rootmenu.prompt->text); + + menu_finalize(&rootmenu); + for_all_symbols(i, sym) { + if (sym_check_deps(sym)) + zconfnerrs++; + } + if (zconfnerrs) + exit(1); + sym_set_change_count(1); +} + +static const char *zconf_tokenname(int token) +{ + switch (token) { + case T_MENU: return "menu"; + case T_ENDMENU: return "endmenu"; + case T_CHOICE: return "choice"; + case T_ENDCHOICE: return "endchoice"; + case T_IF: return "if"; + case T_ENDIF: return "endif"; + case T_DEPENDS: return "depends"; + case T_VISIBLE: return "visible"; + } + return "<token>"; +} + +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken) +{ + if (id->token != endtoken) { + zconf_error("unexpected '%s' within %s block", + kconf_id_strings + id->name, zconf_tokenname(starttoken)); + zconfnerrs++; + return false; + } + if (current_menu->file != current_file) { + zconf_error("'%s' in different file than '%s'", + kconf_id_strings + id->name, zconf_tokenname(starttoken)); + fprintf(stderr, "%s:%d: location of the '%s'\n", + current_menu->file->name, current_menu->lineno, + zconf_tokenname(starttoken)); + zconfnerrs++; + return false; + } + return true; +} + +static void zconfprint(const char *err, ...) +{ + va_list ap; + + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void zconf_error(const char *err, ...) +{ + va_list ap; + + zconfnerrs++; + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void zconferror(const char *err) +{ + fprintf(stderr, "%s:%d: %s\n", zconf_curname(), zconf_lineno() + 1, err); +} + +static void print_quoted_string(FILE *out, const char *str) +{ + const char *p; + int len; + + putc('"', out); + while ((p = strchr(str, '"'))) { + len = p - str; + if (len) + fprintf(out, "%.*s", len, str); + fputs("\\\"", out); + str = p + 1; + } + fputs(str, out); + putc('"', out); +} + +static void print_symbol(FILE *out, struct menu *menu) +{ + struct symbol *sym = menu->sym; + struct property *prop; + + if (sym_is_choice(sym)) + fprintf(out, "\nchoice\n"); + else + fprintf(out, "\nconfig %s\n", sym->name); + switch (sym->type) { + case S_BOOLEAN: + fputs(" boolean\n", out); + break; + case S_TRISTATE: + fputs(" tristate\n", out); + break; + case S_STRING: + fputs(" string\n", out); + break; + case S_INT: + fputs(" integer\n", out); + break; + case S_HEX: + fputs(" hex\n", out); + break; + default: + fputs(" ???\n", out); + break; + } + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->menu != menu) + continue; + switch (prop->type) { + case P_PROMPT: + fputs(" prompt ", out); + print_quoted_string(out, prop->text); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_DEFAULT: + fputs( " default ", out); + expr_fprint(prop->expr, out); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_CHOICE: + fputs(" #choice value\n", out); + break; + case P_SELECT: + fputs( " select ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_RANGE: + fputs( " range ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_MENU: + fputs( " menu ", out); + print_quoted_string(out, prop->text); + fputc('\n', out); + break; + default: + fprintf(out, " unknown prop %d!\n", prop->type); + break; + } + } + if (menu->help) { + int len = strlen(menu->help); + while (menu->help[--len] == '\n') + menu->help[len] = 0; + fprintf(out, " help\n%s\n", menu->help); + } +} + +void zconfdump(FILE *out) +{ + struct property *prop; + struct symbol *sym; + struct menu *menu; + + menu = rootmenu.list; + while (menu) { + if ((sym = menu->sym)) + print_symbol(out, menu); + else if ((prop = menu->prompt)) { + switch (prop->type) { + case P_COMMENT: + fputs("\ncomment ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + case P_MENU: + fputs("\nmenu ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + default: + ; + } + if (!expr_is_yes(prop->visible.expr)) { + fputs(" depends ", out); + expr_fprint(prop->visible.expr, out); + fputc('\n', out); + } + } + + if (menu->list) + menu = menu->list; + else if (menu->next) + menu = menu->next; + else while ((menu = menu->parent)) { + if (menu->prompt && menu->prompt->type == P_MENU) + fputs("\nendmenu\n", out); + if (menu->next) { + menu = menu->next; + break; + } + } + } +} + +#include "zconf.lex.c" +#include "util.c" +#include "confdata.c" +#include "expr.c" +#include "symbol.c" +#include "menu.c" + diff --git a/scripts/kconfig/zconf.y b/scripts/kconfig/zconf.y new file mode 100644 index 0000000..0f683cf --- /dev/null +++ b/scripts/kconfig/zconf.y @@ -0,0 +1,733 @@ +%{ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + * Released under the terms of the GNU GPL v2.0. + */ + +#include <ctype.h> +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <stdbool.h> + +#include "lkc.h" + +#define printd(mask, fmt...) if (cdebug & (mask)) printf(fmt) + +#define PRINTD 0x0001 +#define DEBUG_PARSE 0x0002 + +int cdebug = PRINTD; + +extern int zconflex(void); +static void zconfprint(const char *err, ...); +static void zconf_error(const char *err, ...); +static void zconferror(const char *err); +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken); + +struct symbol *symbol_hash[SYMBOL_HASHSIZE]; + +static struct menu *current_menu, *current_entry; + +%} +%expect 30 + +%union +{ + char *string; + struct file *file; + struct symbol *symbol; + struct expr *expr; + struct menu *menu; + const struct kconf_id *id; +} + +%token <id>T_MAINMENU +%token <id>T_MENU +%token <id>T_ENDMENU +%token <id>T_SOURCE +%token <id>T_CHOICE +%token <id>T_ENDCHOICE +%token <id>T_COMMENT +%token <id>T_CONFIG +%token <id>T_MENUCONFIG +%token <id>T_HELP +%token <string> T_HELPTEXT +%token <id>T_IF +%token <id>T_ENDIF +%token <id>T_DEPENDS +%token <id>T_OPTIONAL +%token <id>T_PROMPT +%token <id>T_TYPE +%token <id>T_DEFAULT +%token <id>T_SELECT +%token <id>T_RANGE +%token <id>T_VISIBLE +%token <id>T_OPTION +%token <id>T_ON +%token <string> T_WORD +%token <string> T_WORD_QUOTE +%token T_UNEQUAL +%token T_CLOSE_PAREN +%token T_OPEN_PAREN +%token T_EOL + +%left T_OR +%left T_AND +%left T_EQUAL T_UNEQUAL +%nonassoc T_NOT + +%type <string> prompt +%type <symbol> symbol +%type <expr> expr +%type <expr> if_expr +%type <id> end +%type <id> option_name +%type <menu> if_entry menu_entry choice_entry +%type <string> symbol_option_arg word_opt + +%destructor { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + $$->file->name, $$->lineno); + if (current_menu == $$) + menu_end_menu(); +} if_entry menu_entry choice_entry + +%{ +/* Include zconf.hash.c here so it can see the token constants. */ +#include "zconf.hash.c" +%} + +%% +input: nl start | start; + +start: mainmenu_stmt stmt_list | stmt_list; + +stmt_list: + /* empty */ + | stmt_list common_stmt + | stmt_list choice_stmt + | stmt_list menu_stmt + | stmt_list end { zconf_error("unexpected end statement"); } + | stmt_list T_WORD error T_EOL { zconf_error("unknown statement \"%s\"", $2); } + | stmt_list option_name error T_EOL +{ + zconf_error("unexpected option \"%s\"", kconf_id_strings + $2->name); +} + | stmt_list error T_EOL { zconf_error("invalid statement"); } +; + +option_name: + T_DEPENDS | T_PROMPT | T_TYPE | T_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT | T_VISIBLE +; + +common_stmt: + T_EOL + | if_stmt + | comment_stmt + | config_stmt + | menuconfig_stmt + | source_stmt +; + +option_error: + T_WORD error T_EOL { zconf_error("unknown option \"%s\"", $1); } + | error T_EOL { zconf_error("invalid option"); } +; + + +/* config/menuconfig entry */ + +config_entry_start: T_CONFIG T_WORD T_EOL +{ + struct symbol *sym = sym_lookup($2, 0); + sym->flags |= SYMBOL_OPTIONAL; + menu_add_entry(sym); + printd(DEBUG_PARSE, "%s:%d:config %s\n", zconf_curname(), zconf_lineno(), $2); +}; + +config_stmt: config_entry_start config_option_list +{ + menu_end_entry(); + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +}; + +menuconfig_entry_start: T_MENUCONFIG T_WORD T_EOL +{ + struct symbol *sym = sym_lookup($2, 0); + sym->flags |= SYMBOL_OPTIONAL; + menu_add_entry(sym); + printd(DEBUG_PARSE, "%s:%d:menuconfig %s\n", zconf_curname(), zconf_lineno(), $2); +}; + +menuconfig_stmt: menuconfig_entry_start config_option_list +{ + if (current_entry->prompt) + current_entry->prompt->type = P_MENU; + else + zconfprint("warning: menuconfig statement without prompt"); + menu_end_entry(); + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +}; + +config_option_list: + /* empty */ + | config_option_list config_option + | config_option_list symbol_option + | config_option_list depends + | config_option_list help + | config_option_list option_error + | config_option_list T_EOL +; + +config_option: T_TYPE prompt_stmt_opt T_EOL +{ + menu_set_type($1->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + $1->stype); +}; + +config_option: T_PROMPT prompt if_expr T_EOL +{ + menu_add_prompt(P_PROMPT, $2, $3); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +}; + +config_option: T_DEFAULT expr if_expr T_EOL +{ + menu_add_expr(P_DEFAULT, $2, $3); + if ($1->stype != S_UNKNOWN) + menu_set_type($1->stype); + printd(DEBUG_PARSE, "%s:%d:default(%u)\n", + zconf_curname(), zconf_lineno(), + $1->stype); +}; + +config_option: T_SELECT T_WORD if_expr T_EOL +{ + menu_add_symbol(P_SELECT, sym_lookup($2, 0), $3); + printd(DEBUG_PARSE, "%s:%d:select\n", zconf_curname(), zconf_lineno()); +}; + +config_option: T_RANGE symbol symbol if_expr T_EOL +{ + menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,$2, $3), $4); + printd(DEBUG_PARSE, "%s:%d:range\n", zconf_curname(), zconf_lineno()); +}; + +symbol_option: T_OPTION symbol_option_list T_EOL +; + +symbol_option_list: + /* empty */ + | symbol_option_list T_WORD symbol_option_arg +{ + const struct kconf_id *id = kconf_id_lookup($2, strlen($2)); + if (id && id->flags & TF_OPTION) + menu_add_option(id->token, $3); + else + zconfprint("warning: ignoring unknown option %s", $2); + free($2); +}; + +symbol_option_arg: + /* empty */ { $$ = NULL; } + | T_EQUAL prompt { $$ = $2; } +; + +/* choice entry */ + +choice: T_CHOICE word_opt T_EOL +{ + struct symbol *sym = sym_lookup($2, SYMBOL_CHOICE); + sym->flags |= SYMBOL_AUTO; + menu_add_entry(sym); + menu_add_expr(P_CHOICE, NULL, NULL); + printd(DEBUG_PARSE, "%s:%d:choice\n", zconf_curname(), zconf_lineno()); +}; + +choice_entry: choice choice_option_list +{ + $$ = menu_add_menu(); +}; + +choice_end: end +{ + if (zconf_endtoken($1, T_CHOICE, T_ENDCHOICE)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endchoice\n", zconf_curname(), zconf_lineno()); + } +}; + +choice_stmt: choice_entry choice_block choice_end +; + +choice_option_list: + /* empty */ + | choice_option_list choice_option + | choice_option_list depends + | choice_option_list help + | choice_option_list T_EOL + | choice_option_list option_error +; + +choice_option: T_PROMPT prompt if_expr T_EOL +{ + menu_add_prompt(P_PROMPT, $2, $3); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +}; + +choice_option: T_TYPE prompt_stmt_opt T_EOL +{ + if ($1->stype == S_BOOLEAN || $1->stype == S_TRISTATE) { + menu_set_type($1->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + $1->stype); + } else + YYERROR; +}; + +choice_option: T_OPTIONAL T_EOL +{ + current_entry->sym->flags |= SYMBOL_OPTIONAL; + printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno()); +}; + +choice_option: T_DEFAULT T_WORD if_expr T_EOL +{ + if ($1->stype == S_UNKNOWN) { + menu_add_symbol(P_DEFAULT, sym_lookup($2, 0), $3); + printd(DEBUG_PARSE, "%s:%d:default\n", + zconf_curname(), zconf_lineno()); + } else + YYERROR; +}; + +choice_block: + /* empty */ + | choice_block common_stmt +; + +/* if entry */ + +if_entry: T_IF expr nl +{ + printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno()); + menu_add_entry(NULL); + menu_add_dep($2); + $$ = menu_add_menu(); +}; + +if_end: end +{ + if (zconf_endtoken($1, T_IF, T_ENDIF)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endif\n", zconf_curname(), zconf_lineno()); + } +}; + +if_stmt: if_entry if_block if_end +; + +if_block: + /* empty */ + | if_block common_stmt + | if_block menu_stmt + | if_block choice_stmt +; + +/* mainmenu entry */ + +mainmenu_stmt: T_MAINMENU prompt nl +{ + menu_add_prompt(P_MENU, $2, NULL); +}; + +/* menu entry */ + +menu: T_MENU prompt T_EOL +{ + menu_add_entry(NULL); + menu_add_prompt(P_MENU, $2, NULL); + printd(DEBUG_PARSE, "%s:%d:menu\n", zconf_curname(), zconf_lineno()); +}; + +menu_entry: menu visibility_list depends_list +{ + $$ = menu_add_menu(); +}; + +menu_end: end +{ + if (zconf_endtoken($1, T_MENU, T_ENDMENU)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endmenu\n", zconf_curname(), zconf_lineno()); + } +}; + +menu_stmt: menu_entry menu_block menu_end +; + +menu_block: + /* empty */ + | menu_block common_stmt + | menu_block menu_stmt + | menu_block choice_stmt +; + +source_stmt: T_SOURCE prompt T_EOL +{ + printd(DEBUG_PARSE, "%s:%d:source %s\n", zconf_curname(), zconf_lineno(), $2); + zconf_nextfile($2); +}; + +/* comment entry */ + +comment: T_COMMENT prompt T_EOL +{ + menu_add_entry(NULL); + menu_add_prompt(P_COMMENT, $2, NULL); + printd(DEBUG_PARSE, "%s:%d:comment\n", zconf_curname(), zconf_lineno()); +}; + +comment_stmt: comment depends_list +{ + menu_end_entry(); +}; + +/* help option */ + +help_start: T_HELP T_EOL +{ + printd(DEBUG_PARSE, "%s:%d:help\n", zconf_curname(), zconf_lineno()); + zconf_starthelp(); +}; + +help: help_start T_HELPTEXT +{ + current_entry->help = $2; +}; + +/* depends option */ + +depends_list: + /* empty */ + | depends_list depends + | depends_list T_EOL + | depends_list option_error +; + +depends: T_DEPENDS T_ON expr T_EOL +{ + menu_add_dep($3); + printd(DEBUG_PARSE, "%s:%d:depends on\n", zconf_curname(), zconf_lineno()); +}; + +/* visibility option */ + +visibility_list: + /* empty */ + | visibility_list visible + | visibility_list T_EOL +; + +visible: T_VISIBLE if_expr +{ + menu_add_visibility($2); +}; + +/* prompt statement */ + +prompt_stmt_opt: + /* empty */ + | prompt if_expr +{ + menu_add_prompt(P_PROMPT, $1, $2); +}; + +prompt: T_WORD + | T_WORD_QUOTE +; + +end: T_ENDMENU T_EOL { $$ = $1; } + | T_ENDCHOICE T_EOL { $$ = $1; } + | T_ENDIF T_EOL { $$ = $1; } +; + +nl: + T_EOL + | nl T_EOL +; + +if_expr: /* empty */ { $$ = NULL; } + | T_IF expr { $$ = $2; } +; + +expr: symbol { $$ = expr_alloc_symbol($1); } + | symbol T_EQUAL symbol { $$ = expr_alloc_comp(E_EQUAL, $1, $3); } + | symbol T_UNEQUAL symbol { $$ = expr_alloc_comp(E_UNEQUAL, $1, $3); } + | T_OPEN_PAREN expr T_CLOSE_PAREN { $$ = $2; } + | T_NOT expr { $$ = expr_alloc_one(E_NOT, $2); } + | expr T_OR expr { $$ = expr_alloc_two(E_OR, $1, $3); } + | expr T_AND expr { $$ = expr_alloc_two(E_AND, $1, $3); } +; + +symbol: T_WORD { $$ = sym_lookup($1, 0); free($1); } + | T_WORD_QUOTE { $$ = sym_lookup($1, SYMBOL_CONST); free($1); } +; + +word_opt: /* empty */ { $$ = NULL; } + | T_WORD + +%% + +void conf_parse(const char *name) +{ + struct symbol *sym; + int i; + + zconf_initscan(name); + + sym_init(); + _menu_init(); + rootmenu.prompt = menu_add_prompt(P_MENU, "Linux Kernel Configuration", NULL); + + if (getenv("ZCONF_DEBUG")) + zconfdebug = 1; + zconfparse(); + if (zconfnerrs) + exit(1); + if (!modules_sym) + modules_sym = sym_find( "n" ); + + rootmenu.prompt->text = _(rootmenu.prompt->text); + rootmenu.prompt->text = sym_expand_string_value(rootmenu.prompt->text); + + menu_finalize(&rootmenu); + for_all_symbols(i, sym) { + if (sym_check_deps(sym)) + zconfnerrs++; + } + if (zconfnerrs) + exit(1); + sym_set_change_count(1); +} + +static const char *zconf_tokenname(int token) +{ + switch (token) { + case T_MENU: return "menu"; + case T_ENDMENU: return "endmenu"; + case T_CHOICE: return "choice"; + case T_ENDCHOICE: return "endchoice"; + case T_IF: return "if"; + case T_ENDIF: return "endif"; + case T_DEPENDS: return "depends"; + case T_VISIBLE: return "visible"; + } + return "<token>"; +} + +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken) +{ + if (id->token != endtoken) { + zconf_error("unexpected '%s' within %s block", + kconf_id_strings + id->name, zconf_tokenname(starttoken)); + zconfnerrs++; + return false; + } + if (current_menu->file != current_file) { + zconf_error("'%s' in different file than '%s'", + kconf_id_strings + id->name, zconf_tokenname(starttoken)); + fprintf(stderr, "%s:%d: location of the '%s'\n", + current_menu->file->name, current_menu->lineno, + zconf_tokenname(starttoken)); + zconfnerrs++; + return false; + } + return true; +} + +static void zconfprint(const char *err, ...) +{ + va_list ap; + + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void zconf_error(const char *err, ...) +{ + va_list ap; + + zconfnerrs++; + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void zconferror(const char *err) +{ + fprintf(stderr, "%s:%d: %s\n", zconf_curname(), zconf_lineno() + 1, err); +} + +static void print_quoted_string(FILE *out, const char *str) +{ + const char *p; + int len; + + putc('"', out); + while ((p = strchr(str, '"'))) { + len = p - str; + if (len) + fprintf(out, "%.*s", len, str); + fputs("\\\"", out); + str = p + 1; + } + fputs(str, out); + putc('"', out); +} + +static void print_symbol(FILE *out, struct menu *menu) +{ + struct symbol *sym = menu->sym; + struct property *prop; + + if (sym_is_choice(sym)) + fprintf(out, "\nchoice\n"); + else + fprintf(out, "\nconfig %s\n", sym->name); + switch (sym->type) { + case S_BOOLEAN: + fputs(" boolean\n", out); + break; + case S_TRISTATE: + fputs(" tristate\n", out); + break; + case S_STRING: + fputs(" string\n", out); + break; + case S_INT: + fputs(" integer\n", out); + break; + case S_HEX: + fputs(" hex\n", out); + break; + default: + fputs(" ???\n", out); + break; + } + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->menu != menu) + continue; + switch (prop->type) { + case P_PROMPT: + fputs(" prompt ", out); + print_quoted_string(out, prop->text); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_DEFAULT: + fputs( " default ", out); + expr_fprint(prop->expr, out); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_CHOICE: + fputs(" #choice value\n", out); + break; + case P_SELECT: + fputs( " select ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_RANGE: + fputs( " range ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_MENU: + fputs( " menu ", out); + print_quoted_string(out, prop->text); + fputc('\n', out); + break; + default: + fprintf(out, " unknown prop %d!\n", prop->type); + break; + } + } + if (menu->help) { + int len = strlen(menu->help); + while (menu->help[--len] == '\n') + menu->help[len] = 0; + fprintf(out, " help\n%s\n", menu->help); + } +} + +void zconfdump(FILE *out) +{ + struct property *prop; + struct symbol *sym; + struct menu *menu; + + menu = rootmenu.list; + while (menu) { + if ((sym = menu->sym)) + print_symbol(out, menu); + else if ((prop = menu->prompt)) { + switch (prop->type) { + case P_COMMENT: + fputs("\ncomment ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + case P_MENU: + fputs("\nmenu ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + default: + ; + } + if (!expr_is_yes(prop->visible.expr)) { + fputs(" depends ", out); + expr_fprint(prop->visible.expr, out); + fputc('\n', out); + } + } + + if (menu->list) + menu = menu->list; + else if (menu->next) + menu = menu->next; + else while ((menu = menu->parent)) { + if (menu->prompt && menu->prompt->type == P_MENU) + fputs("\nendmenu\n", out); + if (menu->next) { + menu = menu->next; + break; + } + } + } +} + +#include "zconf.lex.c" +#include "util.c" +#include "confdata.c" +#include "expr.c" +#include "symbol.c" +#include "menu.c" diff --git a/scripts/multiconfig.py b/scripts/multiconfig.py new file mode 100755 index 0000000..749abcb --- /dev/null +++ b/scripts/multiconfig.py @@ -0,0 +1,410 @@ +#!/usr/bin/env python +# +# Copyright (C) 2014, Masahiro Yamada <yamada.m@jp.panasonic.com> +# +# SPDX-License-Identifier: GPL-2.0+ +# + +""" +A wrapper script to adjust Kconfig for U-Boot + +The biggest difference between Linux Kernel and U-Boot in terms of the +board configuration is that U-Boot has to configure multiple boot images +per board: Normal, SPL, TPL. +We need to expand the functions of Kconfig to handle multiple boot +images. + +Instead of touching various parts under the scripts/kconfig/ directory, +pushing necessary adjustments into this single script would be better +for code maintainance. All the make targets related to the configuration +(make %config) should be invoked via this script. + +Let's see what is different from the original Kconfig. + +- config, menuconfig, etc. + +The commands 'make config', 'make menuconfig', etc. are used to create +or modify the .config file, which stores configs for Normal boot image. + +The location of the one for SPL, TPL image is spl/.config, tpl/.config, +respectively. Use 'make spl/config', 'make spl/menuconfig', etc. +to create or modify the spl/.config file, which contains configs +for SPL image. +Do likewise for the tpl/.config file. +The generic syntax for SPL, TPL configuration is +'make <target_image>/<config_command>'. + +- silentoldconfig + +The command 'make silentoldconfig' updates .config, if necessary, and +additionally updates include/generated/autoconf.h and files under +include/configs/ directory. In U-Boot, it should do the same things for +SPL, TPL images for boards supporting them. +Depending on whether CONFIG_SPL, CONFIG_TPL is defined or not, +'make silentoldconfig' iterates three times at most changing the target +directory. + +To sum up, 'make silentoldconfig' possibly updates + - .config, include/generated/autoconf.h, include/config/* + - spl/.config, spl/include/generated/autoconf.h, spl/include/config/* + (in case CONFIG_SPL=y) + - tpl/.config, tpl/include/generated/autoconf.h, tpl/include/config/* + (in case CONFIG_TPL=y) + +- defconfig, <board>_defconfig + +The command 'make <board>_defconfig' creates a new .config based on the +file configs/<board>_defconfig. The command 'make defconfig' is the same +but the difference is it uses the file specified with KBUILD_DEFCONFIG +environment. + +We need to create .config, spl/.config, tpl/.config for boards where SPL +and TPL images are supported. One possible solution for that is to have +multiple defconfig files per board, but it would produce duplication +among the defconfigs. +The approach chosen here is to expand the feature and support +conditional definition in defconfig, that is, each line in defconfig +files has the form of: +<condition>:<macro definition> + +The '<condition>:' prefix specifies which image the line is valid for. +The '<condition>:' is one of: + None - the line is valid only for Normal image + S: - the line is valid only for SPL image + T: - the line is valid only for TPL image + ST: - the line is valid for SPL and TPL images + +S: - the line is valid for Normal and SPL images + +T: - the line is valid for Normal and TPL images + +ST: - the line is valid for Normal, SPL and SPL images + +So, if neither CONFIG_SPL nor CONFIG_TPL is defined, the defconfig file +has no '<condition>:' part and therefore has the same form of that of +Linux Kernel. + +In U-Boot, for example, a defconfig file can be written like this: + + CONFIG_FOO=100 + S:CONFIG_FOO=200 + T:CONFIG_FOO=300 + ST:CONFIG_BAR=y + +S:CONFIG_BAZ=y + +T:CONFIG_QUX=y + +ST:CONFIG_QUUX=y + +The defconfig above is parsed by this script and internally divided into +three temporary defconfig files. + + - Temporary defconfig for Normal image + CONFIG_FOO=100 + CONFIG_BAZ=y + CONFIG_QUX=y + CONFIG_QUUX=y + + - Temporary defconfig for SPL image + CONFIG_FOO=200 + CONFIG_BAR=y + CONFIG_BAZ=y + CONFIG_QUUX=y + + - Temporary defconfig for TPL image + CONFIG_FOO=300 + CONFIG_BAR=y + CONFIG_QUX=y + CONFIG_QUUX=y + +They are passed to scripts/kconfig/conf, each is used for generating +.config, spl/.config, tpl/.config, respectively. + +- savedefconfig + +This is the reverse operation of 'make defconfig'. +If neither CONFIG_SPL nor CONFIG_TPL is defined in the .config file, +it works as 'make savedefconfig' in Linux Kernel: create the minimal set +of config based on the .config and save it into 'defconfig' file. + +If CONFIG_SPL or CONFIG_TPL is defined, the common lines among .config, +spl/.config, tpl/.config are coalesced together and output to the file +'defconfig' in the form like: + + CONFIG_FOO=100 + S:CONFIG_FOO=200 + T:CONFIG_FOO=300 + ST:CONFIG_BAR=y + +S:CONFIG_BAZ=y + +T:CONFIG_QUX=y + +ST:CONFIG_QUUX=y + +This can be used as an input of 'make <board>_defconfig' command. +""" + +import errno +import os +import re +import subprocess +import sys + +# Constant variables +SUB_IMAGES = ('spl', 'tpl') +IMAGES = ('',) + SUB_IMAGES +SYMBOL_MAP = {'': '+', 'spl': 'S', 'tpl': 'T'} +PATTERN_SYMBOL = re.compile(r'(\+?)(S?)(T?):(.*)') + +# Environment variables (should be defined in the top Makefile) +# .get('key', 'default_value') method is useful for standalone testing. +MAKE = os.environ.get('MAKE', 'make') +srctree = os.environ.get('srctree', '.') +KCONFIG_CONFIG = os.environ.get('KCONFIG_CONFIG', '.config') + +# Useful shorthand +build = '%s -f %s/scripts/Makefile.build obj=scripts/kconfig %%s' % (MAKE, srctree) +autoconf = '%s -f %s/scripts/Makefile.autoconf obj=%%s %%s' % (MAKE, srctree) + +### helper functions ### +def mkdirs(*dirs): + """Make directories ignoring 'File exists' error.""" + for d in dirs: + try: + os.makedirs(d) + except OSError as exception: + # Ignore 'File exists' error + if exception.errno != errno.EEXIST: + raise + +def rmfiles(*files): + """Remove files ignoring 'No such file or directory' error.""" + for f in files: + try: + os.remove(f) + except OSError as exception: + # Ignore 'No such file or directory' error + if exception.errno != errno.ENOENT: + raise + +def rmdirs(*dirs): + """Remove directories ignoring 'No such file or directory' + and 'Directory not empty' error. + """ + for d in dirs: + try: + os.rmdir(d) + except OSError as exception: + # Ignore 'No such file or directory' + # and 'Directory not empty' error + if exception.errno != errno.ENOENT and \ + exception.errno != errno.ENOTEMPTY: + raise + +def error(msg): + """Output the given argument to stderr and exit with return code 1.""" + print >> sys.stderr, msg + sys.exit(1) + +def run_command(command, callback_on_error=None): + """Run the given command in a sub-shell (and exit if it fails). + + Arguments: + command: A string of the command + callback_on_error: Callback handler invoked just before exit + when the command fails (Default=None) + """ + retcode = subprocess.call(command, shell=True) + if retcode: + if callback_on_error: + callback_on_error() + error("'%s' Failed" % command) + +def run_make_config(cmd, objdir, callback_on_error=None): + """Run the make command in a sub-shell (and exit if it fails). + + Arguments: + cmd: Make target such as 'config', 'menuconfig', 'defconfig', etc. + objdir: Target directory where the make command is run. + Typically '', 'spl', 'tpl' for Normal, SPL, TPL image, + respectively. + callback_on_error: Callback handler invoked just before exit + when the command fails (Default=None) + """ + # Linux expects defconfig files in arch/$(SRCARCH)/configs/ directory, + # but U-Boot puts them in configs/ directory. + # Give SRCARCH=.. to fake scripts/kconfig/Makefile. + options = 'SRCARCH=.. KCONFIG_OBJDIR=%s' % objdir + if objdir: + options += ' KCONFIG_CONFIG=%s/%s' % (objdir, KCONFIG_CONFIG) + mkdirs(objdir) + run_command(build % cmd + ' ' + options, callback_on_error) + +def get_enabled_subimages(ignore_error=False): + """Parse .config file to detect if CONFIG_SPL, CONFIG_TPL is enabled + and return a tuple of enabled subimages. + + Arguments: + ignore_error: Specify the behavior when '.config' is not found; + Raise an exception if this flag is False. + Return a null tuple if this flag is True. + + Returns: + A tuple of enabled subimages as follows: + () if neither CONFIG_SPL nor CONFIG_TPL is defined + ('spl',) if CONFIG_SPL is defined but CONFIG_TPL is not + ('spl', 'tpl') if both CONFIG_SPL and CONFIG_TPL are defined + """ + enabled = () + match_patterns = [ (img, 'CONFIG_' + img.upper() + '=y\n') + for img in SUB_IMAGES ] + try: + f = open(KCONFIG_CONFIG) + except IOError as exception: + if not ignore_error or exception.errno != errno.ENOENT: + raise + return enabled + with f: + for line in f: + for img, pattern in match_patterns: + if line == pattern: + enabled += (img,) + return enabled + +def do_silentoldconfig(cmd): + """Run 'make silentoldconfig' for all the enabled images. + + Arguments: + cmd: should always be a string 'silentoldconfig' + """ + run_make_config(cmd, '') + subimages = get_enabled_subimages() + for obj in subimages: + mkdirs(os.path.join(obj, 'include', 'config'), + os.path.join(obj, 'include', 'generated')) + run_make_config(cmd, obj) + remove_auto_conf = lambda : rmfiles('include/config/auto.conf') + # If the following part failed, include/config/auto.conf should be deleted + # so 'make silentoldconfig' will be re-run on the next build. + run_command(autoconf % + ('include', 'include/autoconf.mk include/autoconf.mk.dep'), + remove_auto_conf) + # include/config.h has been updated after 'make silentoldconfig'. + # We need to touch include/config/auto.conf so it gets newer + # than include/config.h. + # Otherwise, 'make silentoldconfig' would be invoked twice. + os.utime('include/config/auto.conf', None) + for obj in subimages: + run_command(autoconf % (obj + '/include', + obj + '/include/autoconf.mk'), + remove_auto_conf) + +def do_tmp_defconfig(output_lines, img): + """Helper function for do_board_defconfig(). + + Write the defconfig contents into a file '.tmp_defconfig' and + invoke 'make .tmp_defconfig'. + + Arguments: + output_lines: A sequence of defconfig lines of each image + img: Target image. Typically '', 'spl', 'tpl' for + Normal, SPL, TPL images, respectively. + """ + TMP_DEFCONFIG = '.tmp_defconfig' + TMP_DIRS = ('arch', 'configs') + defconfig_path = os.path.join('configs', TMP_DEFCONFIG) + mkdirs(*TMP_DIRS) + with open(defconfig_path, 'w') as f: + f.write(''.join(output_lines[img])) + cleanup = lambda: (rmfiles(defconfig_path), rmdirs(*TMP_DIRS)) + run_make_config(TMP_DEFCONFIG, img, cleanup) + cleanup() + +def do_board_defconfig(cmd): + """Run 'make <board>_defconfig'. + + Arguments: + cmd: should be a string '<board>_defconfig' + """ + defconfig_path = os.path.join(srctree, 'configs', cmd) + output_lines = dict([ (img, []) for img in IMAGES ]) + with open(defconfig_path) as f: + for line in f: + m = PATTERN_SYMBOL.match(line) + if m: + for idx, img in enumerate(IMAGES): + if m.group(idx + 1): + output_lines[img].append(m.group(4) + '\n') + continue + output_lines[''].append(line) + do_tmp_defconfig(output_lines, '') + for img in get_enabled_subimages(): + do_tmp_defconfig(output_lines, img) + +def do_defconfig(cmd): + """Run 'make defconfig'. + + Arguments: + cmd: should always be a string 'defconfig' + """ + KBUILD_DEFCONFIG = os.environ['KBUILD_DEFCONFIG'] + print "*** Default configuration is based on '%s'" % KBUILD_DEFCONFIG + do_board_defconfig(KBUILD_DEFCONFIG) + +def do_savedefconfig(cmd): + """Run 'make savedefconfig'. + + Arguments: + cmd: should always be a string 'savedefconfig' + """ + DEFCONFIG = 'defconfig' + # Continue even if '.config' does not exist + subimages = get_enabled_subimages(True) + run_make_config(cmd, '') + output_lines = [] + prefix = {} + with open(DEFCONFIG) as f: + for line in f: + output_lines.append(line) + prefix[line] = '+' + for img in subimages: + run_make_config(cmd, img) + unmatched_lines = [] + with open(DEFCONFIG) as f: + for line in f: + if line in output_lines: + index = output_lines.index(line) + output_lines[index:index] = unmatched_lines + unmatched_lines = [] + prefix[line] += SYMBOL_MAP[img] + else: + ummatched_lines.append(line) + prefix[line] = SYMBOL_MAP[img] + with open(DEFCONFIG, 'w') as f: + for line in output_lines: + if prefix[line] == '+': + f.write(line) + else: + f.write(prefix[line] + ':' + line) + +def do_others(cmd): + """Run the make command other than 'silentoldconfig', 'defconfig', + '<board>_defconfig' and 'savedefconfig'. + + Arguments: + cmd: Make target in the form of '<target_image>/<config_command>' + The field '<target_image>/' is typically empty, 'spl/', 'tpl/' + for Normal, SPL, TPL images, respectively. + The field '<config_command>' is make target such as 'config', + 'menuconfig', etc. + """ + objdir, _, cmd = cmd.rpartition('/') + run_make_config(cmd, objdir) + +cmd_list = {'silentoldconfig': do_silentoldconfig, + 'defconfig': do_defconfig, + 'savedefconfig': do_savedefconfig} + +def main(): + cmd = sys.argv[1] + if cmd.endswith('_defconfig'): + do_board_defconfig(cmd) + else: + func = cmd_list.get(cmd, do_others) + func(cmd) + +if __name__ == '__main__': + main() diff --git a/scripts/show-gnu-make b/scripts/show-gnu-make new file mode 100755 index 0000000..26271b5 --- /dev/null +++ b/scripts/show-gnu-make @@ -0,0 +1,25 @@ +#!/bin/sh +# +# Show the command name for GNU Make +# +# U-Boot is supposed to be built on various platforms. +# One problem is that the command 'make' is not always GNU Make. +# (For ex. the command name for GNU Make on FreeBSD is usually 'gmake'.) +# It is not a good idea to hard-code the command name in scripts +# where where GNU Make is expected. +# Call this helper script to get the command name for GNU Make. +# +# SPDX-License-Identifier: GPL-2.0+ +# + +gnu_make= + +for m in make gmake +do + if $m --version 2>/dev/null | grep -q GNU; then + echo $m + exit 0 + fi +done + +exit 1 diff --git a/tools/Makefile b/tools/Makefile index 61b2048..90e966d 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -193,7 +193,7 @@ endif # !LOGO_BMP # Define _GNU_SOURCE to obtain the getline prototype from stdio.h # HOST_EXTRACFLAGS += -include $(srctree)/include/libfdt_env.h \ - $(patsubst -I%,-idirafter%, $(UBOOTINCLUDE)) \ + $(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \ -I$(srctree)/lib/libfdt \ -I$(srctree)/tools \ -DCONFIG_SYS_TEXT_BASE=$(CONFIG_SYS_TEXT_BASE) \ diff --git a/tools/buildman/board.py b/tools/buildman/board.py index 5172a47..7bcc932 100644 --- a/tools/buildman/board.py +++ b/tools/buildman/board.py @@ -17,7 +17,7 @@ class Board: soc: Name of SOC, or '' if none (e.g. mx31) vendor: Name of vendor (e.g. armltd) board_name: Name of board (e.g. integrator) - target: Target name (use make <target>_config to configure) + target: Target name (use make <target>_defconfig to configure) options: board-specific options (e.g. integratorcp:CM1136) """ self.target = target diff --git a/tools/buildman/builder.py b/tools/buildman/builder.py index 39a6e8a..48408ff 100644 --- a/tools/buildman/builder.py +++ b/tools/buildman/builder.py @@ -199,7 +199,7 @@ class BuilderThread(threading.Thread): commit_upto: Commit number to build (0...n-1) brd: Board object to build work_dir: Directory to which the source will be checked out - do_config: True to run a make <board>_config on the source + do_config: True to run a make <board>_defconfig on the source force_build: Force a build even if one was previously done force_build_failures: Force a bulid if the previous result showed failure @@ -213,7 +213,10 @@ class BuilderThread(threading.Thread): # self.Make() below, in the event that we do a build. result = command.CommandResult() result.return_code = 0 - out_dir = os.path.join(work_dir, 'build') + if self.builder.in_tree: + out_dir = work_dir + else: + out_dir = os.path.join(work_dir, 'build') # Check if the job was already completed last time done_file = self.builder.GetDoneFile(commit_upto, brd.target) @@ -257,10 +260,13 @@ class BuilderThread(threading.Thread): # Set up the environment and command line env = self.toolchain.MakeEnvironment() Mkdir(out_dir) - args = ['O=build', '-s'] + args = [] + if not self.builder.in_tree: + args.append('O=build') + args.append('-s') if self.builder.num_jobs is not None: args.extend(['-j', str(self.builder.num_jobs)]) - config_args = ['%s_config' % brd.target] + config_args = ['%s_defconfig' % brd.target] config_out = '' args.extend(self.builder.toolchains.GetMakeArguments(brd)) @@ -413,7 +419,7 @@ class BuilderThread(threading.Thread): work_dir = self.builder.GetThreadDir(self.thread_num) self.toolchain = None if job.commits: - # Run 'make board_config' on the first commit + # Run 'make board_defconfig' on the first commit do_config = True commit_upto = 0 force_build = False @@ -431,7 +437,8 @@ class BuilderThread(threading.Thread): result, request_config = self.RunCommit(commit_upto, brd, work_dir, True, True, False) did_config = True - do_config = request_config + if not self.builder.force_reconfig: + do_config = request_config # If we built that commit, then config is done. But if we got # an warning, reconfig next time to force it to build the same @@ -524,6 +531,15 @@ class Builder: toolchains: Toolchains object to use for building upto: Current commit number we are building (0.count-1) warned: Number of builds that produced at least one warning + force_reconfig: Reconfigure U-Boot on each comiit. This disables + incremental building, where buildman reconfigures on the first + commit for a baord, and then just does an incremental build for + the following commits. In fact buildman will reconfigure and + retry for any failing commits, so generally the only effect of + this option is to slow things down. + in_tree: Build U-Boot in-tree instead of specifying an output + directory separate from the source code. This option is really + only useful for testing in-tree builds. Private members: _base_board_dict: Last-summarised Dict of boards @@ -560,7 +576,7 @@ class Builder: self.func_sizes = func_sizes def __init__(self, toolchains, base_dir, git_dir, num_threads, num_jobs, - checkout=True, show_unknown=True, step=1): + gnu_make='make', checkout=True, show_unknown=True, step=1): """Create a new Builder object Args: @@ -569,6 +585,7 @@ class Builder: git_dir: Git directory containing source repository num_threads: Number of builder threads to run num_jobs: Number of jobs to run at once (passed to make as -j) + gnu_make: the command name of GNU Make. checkout: True to check out source, False to skip that step. This is used for testing. show_unknown: Show unknown boards (those not built) in summary @@ -580,6 +597,7 @@ class Builder: self.threads = [] self.active = True self.do_make = self.Make + self.gnu_make = gnu_make self.checkout = checkout self.num_threads = num_threads self.num_jobs = num_jobs @@ -593,7 +611,9 @@ class Builder: self._next_delay_update = datetime.now() self.force_config_on_failure = True self.force_build_failures = False + self.force_reconfig = False self._step = step + self.in_tree = False self.col = terminal.Color() @@ -682,7 +702,7 @@ class Builder: args: Arguments to pass to make kwargs: Arguments to pass to command.RunPipe() """ - cmd = ['make'] + list(args) + cmd = [self.gnu_make] + list(args) result = command.RunPipe([cmd], capture=True, capture_stderr=True, cwd=cwd, raise_on_error=False, **kwargs) return result diff --git a/tools/buildman/buildman.py b/tools/buildman/buildman.py index 0da6797..42847ac 100755 --- a/tools/buildman/buildman.py +++ b/tools/buildman/buildman.py @@ -67,6 +67,9 @@ parser.add_option('-B', '--bloat', dest='show_bloat', help='Show changes in function code size for each board') parser.add_option('-c', '--count', dest='count', type='int', default=-1, help='Run build on the top n commits') +parser.add_option('-C', '--force-reconfig', dest='force_reconfig', + action='store_true', default=False, + help='Reconfigure for every commit (disable incremental build)') parser.add_option('-e', '--show_errors', action='store_true', default=False, help='Show errors and warnings') parser.add_option('-f', '--force-build', dest='force_build', @@ -82,6 +85,9 @@ parser.add_option('-g', '--git', type='string', help='Git repo containing branch to build', default='.') parser.add_option('-H', '--full-help', action='store_true', dest='full_help', default=False, help='Display the README file') +parser.add_option('-i', '--in-tree', dest='in_tree', + action='store_true', default=False, + help='Build in the source tree instead of a separate directory') parser.add_option('-j', '--jobs', dest='jobs', type='int', default=None, help='Number of jobs to run at once (passed to make)') parser.add_option('-k', '--keep-outputs', action='store_true', diff --git a/tools/buildman/control.py b/tools/buildman/control.py index cfad535..75b6498 100644 --- a/tools/buildman/control.py +++ b/tools/buildman/control.py @@ -14,6 +14,8 @@ import gitutil import patchstream import terminal import toolchain +import command +import subprocess def GetPlural(count): """Returns a plural 's' if count is not 1""" @@ -108,6 +110,15 @@ def DoBuildman(options, args): sys.exit(1) # Work out what subset of the boards we are building + board_file = os.path.join(options.git, 'boards.cfg') + if not os.path.exists(board_file): + print 'Could not find %s' % board_file + status = subprocess.call([os.path.join(options.git, + 'tools/genboardscfg.py')]) + if status != 0: + print >> sys.stderr, "Failed to generate boards.cfg" + sys.exit(1) + boards = board.Boards() boards.ReadBoards(os.path.join(options.git, 'boards.cfg')) why_selected = boards.SelectBoards(args) @@ -144,10 +155,16 @@ def DoBuildman(options, args): if not options.step: options.step = len(series.commits) - 1 + gnu_make = command.Output(os.path.join(options.git, + 'scripts/show-gnu-make')).rstrip() + if not gnu_make: + print >> sys.stderr, 'GNU Make not found' + sys.exit(1) + # Create a new builder with the selected options output_dir = os.path.join(options.output_dir, options.branch) builder = Builder(toolchains, output_dir, options.git_dir, - options.threads, options.jobs, checkout=True, + options.threads, options.jobs, gnu_make=gnu_make, checkout=True, show_unknown=options.show_unknown, step=options.step) builder.force_config_on_failure = not options.quick @@ -157,6 +174,8 @@ def DoBuildman(options, args): else: builder.force_build = options.force_build builder.force_build_failures = options.force_build_failures + builder.force_reconfig = options.force_reconfig + builder.in_tree = options.in_tree # Work out which boards to build board_selected = boards.GetSelectedDict() diff --git a/tools/env/Makefile b/tools/env/Makefile index f5368bc..4927489 100644 --- a/tools/env/Makefile +++ b/tools/env/Makefile @@ -11,7 +11,7 @@ HOSTCC = $(CC) # Compile for a hosted environment on the target -HOST_EXTRACFLAGS = $(patsubst -I%,-idirafter%, $(UBOOTINCLUDE)) \ +HOST_EXTRACFLAGS = $(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \ -idirafter $(srctree)/tools/env \ -DUSE_HOSTCC \ -DTEXT_BASE=$(TEXT_BASE) diff --git a/tools/genboardscfg.py b/tools/genboardscfg.py new file mode 100755 index 0000000..734d90b --- /dev/null +++ b/tools/genboardscfg.py @@ -0,0 +1,504 @@ +#!/usr/bin/env python +# +# Author: Masahiro Yamada <yamada.m@jp.panasonic.com> +# +# SPDX-License-Identifier: GPL-2.0+ +# + +""" +Converter from Kconfig and MAINTAINERS to boards.cfg + +Run 'tools/genboardscfg.py' to create boards.cfg file. + +Run 'tools/genboardscfg.py -h' for available options. +""" + +import errno +import fnmatch +import glob +import optparse +import os +import re +import shutil +import subprocess +import sys +import tempfile +import time + +BOARD_FILE = 'boards.cfg' +CONFIG_DIR = 'configs' +REFORMAT_CMD = [os.path.join('tools', 'reformat.py'), + '-i', '-d', '-', '-s', '8'] +SHOW_GNU_MAKE = 'scripts/show-gnu-make' +SLEEP_TIME=0.03 + +COMMENT_BLOCK = '''# +# List of boards +# Automatically generated by %s: don't edit +# +# Status, Arch, CPU(:SPLCPU), SoC, Vendor, Board, Target, Options, Maintainers + +''' % __file__ + +### helper functions ### +def get_terminal_columns(): + """Get the width of the terminal. + + Returns: + The width of the terminal, or zero if the stdout is not + associated with tty. + """ + try: + return shutil.get_terminal_size().columns # Python 3.3~ + except AttributeError: + import fcntl + import termios + import struct + arg = struct.pack('hhhh', 0, 0, 0, 0) + try: + ret = fcntl.ioctl(sys.stdout.fileno(), termios.TIOCGWINSZ, arg) + except IOError as exception: + if exception.errno != errno.ENOTTY: + raise + # If 'Inappropriate ioctl for device' error occurs, + # stdout is probably redirected. Return 0. + return 0 + return struct.unpack('hhhh', ret)[1] + +def get_devnull(): + """Get the file object of '/dev/null' device.""" + try: + devnull = subprocess.DEVNULL # py3k + except AttributeError: + devnull = open(os.devnull, 'wb') + return devnull + +def check_top_directory(): + """Exit if we are not at the top of source directory.""" + for f in ('README', 'Licenses'): + if not os.path.exists(f): + print >> sys.stderr, 'Please run at the top of source directory.' + sys.exit(1) + +def get_make_cmd(): + """Get the command name of GNU Make.""" + process = subprocess.Popen([SHOW_GNU_MAKE], stdout=subprocess.PIPE) + ret = process.communicate() + if process.returncode: + print >> sys.stderr, 'GNU Make not found' + sys.exit(1) + return ret[0].rstrip() + +### classes ### +class MaintainersDatabase: + + """The database of board status and maintainers.""" + + def __init__(self): + """Create an empty database.""" + self.database = {} + + def get_status(self, target): + """Return the status of the given board. + + Returns: + Either 'Active' or 'Orphan' + """ + tmp = self.database[target][0] + if tmp.startswith('Maintained'): + return 'Active' + elif tmp.startswith('Orphan'): + return 'Orphan' + else: + print >> sys.stderr, 'Error: %s: unknown status' % tmp + + def get_maintainers(self, target): + """Return the maintainers of the given board. + + If the board has two or more maintainers, they are separated + with colons. + """ + return ':'.join(self.database[target][1]) + + def parse_file(self, file): + """Parse the given MAINTAINERS file. + + This method parses MAINTAINERS and add board status and + maintainers information to the database. + + Arguments: + file: MAINTAINERS file to be parsed + """ + targets = [] + maintainers = [] + status = '-' + for line in open(file): + tag, rest = line[:2], line[2:].strip() + if tag == 'M:': + maintainers.append(rest) + elif tag == 'F:': + # expand wildcard and filter by 'configs/*_defconfig' + for f in glob.glob(rest): + front, match, rear = f.partition('configs/') + if not front and match: + front, match, rear = rear.rpartition('_defconfig') + if match and not rear: + targets.append(front) + elif tag == 'S:': + status = rest + elif line == '\n' and targets: + for target in targets: + self.database[target] = (status, maintainers) + targets = [] + maintainers = [] + status = '-' + if targets: + for target in targets: + self.database[target] = (status, maintainers) + +class DotConfigParser: + + """A parser of .config file. + + Each line of the output should have the form of: + Status, Arch, CPU, SoC, Vendor, Board, Target, Options, Maintainers + Most of them are extracted from .config file. + MAINTAINERS files are also consulted for Status and Maintainers fields. + """ + + re_arch = re.compile(r'CONFIG_SYS_ARCH="(.*)"') + re_cpu = re.compile(r'CONFIG_SYS_CPU="(.*)"') + re_soc = re.compile(r'CONFIG_SYS_SOC="(.*)"') + re_vendor = re.compile(r'CONFIG_SYS_VENDOR="(.*)"') + re_board = re.compile(r'CONFIG_SYS_BOARD="(.*)"') + re_config = re.compile(r'CONFIG_SYS_CONFIG_NAME="(.*)"') + re_options = re.compile(r'CONFIG_SYS_EXTRA_OPTIONS="(.*)"') + re_list = (('arch', re_arch), ('cpu', re_cpu), ('soc', re_soc), + ('vendor', re_vendor), ('board', re_board), + ('config', re_config), ('options', re_options)) + must_fields = ('arch', 'config') + + def __init__(self, build_dir, output, maintainers_database): + """Create a new .config perser. + + Arguments: + build_dir: Build directory where .config is located + output: File object which the result is written to + maintainers_database: An instance of class MaintainersDatabase + """ + self.dotconfig = os.path.join(build_dir, '.config') + self.output = output + self.database = maintainers_database + + def parse(self, defconfig): + """Parse .config file and output one-line database for the given board. + + Arguments: + defconfig: Board (defconfig) name + """ + fields = {} + for line in open(self.dotconfig): + if not line.startswith('CONFIG_SYS_'): + continue + for (key, pattern) in self.re_list: + m = pattern.match(line) + if m and m.group(1): + fields[key] = m.group(1) + break + + # sanity check of '.config' file + for field in self.must_fields: + if not field in fields: + print >> sys.stderr, 'Error: %s is not defined in %s' % \ + (field, defconfig) + sys.exit(1) + + # fix-up for aarch64 and tegra + if fields['arch'] == 'arm' and 'cpu' in fields: + if fields['cpu'] == 'armv8': + fields['arch'] = 'aarch64' + if 'soc' in fields and re.match('tegra[0-9]*$', fields['soc']): + fields['cpu'] += ':arm720t' + + target, match, rear = defconfig.partition('_defconfig') + assert match and not rear, \ + '%s : invalid defconfig file name' % defconfig + + fields['status'] = self.database.get_status(target) + fields['maintainers'] = self.database.get_maintainers(target) + + if 'options' in fields: + options = fields['config'] + ':' + \ + fields['options'].replace(r'\"', '"') + elif fields['config'] != target: + options = fields['config'] + else: + options = '-' + + self.output.write((' '.join(['%s'] * 9) + '\n') % + (fields['status'], + fields['arch'], + fields.get('cpu', '-'), + fields.get('soc', '-'), + fields.get('vendor', '-'), + fields.get('board', '-'), + target, + options, + fields['maintainers'])) + +class Slot: + + """A slot to store a subprocess. + + Each instance of this class handles one subprocess. + This class is useful to control multiple processes + for faster processing. + """ + + def __init__(self, output, maintainers_database, devnull, make_cmd): + """Create a new slot. + + Arguments: + output: File object which the result is written to + maintainers_database: An instance of class MaintainersDatabase + """ + self.occupied = False + self.build_dir = tempfile.mkdtemp() + self.devnull = devnull + self.make_cmd = make_cmd + self.parser = DotConfigParser(self.build_dir, output, + maintainers_database) + + def __del__(self): + """Delete the working directory""" + shutil.rmtree(self.build_dir) + + def add(self, defconfig): + """Add a new subprocess to the slot. + + Fails if the slot is occupied, that is, the current subprocess + is still running. + + Arguments: + defconfig: Board (defconfig) name + + Returns: + Return True on success or False on fail + """ + if self.occupied: + return False + o = 'O=' + self.build_dir + self.ps = subprocess.Popen([self.make_cmd, o, defconfig], + stdout=self.devnull) + self.defconfig = defconfig + self.occupied = True + return True + + def poll(self): + """Check if the subprocess is running and invoke the .config + parser if the subprocess is terminated. + + Returns: + Return True if the subprocess is terminated, False otherwise + """ + if not self.occupied: + return True + if self.ps.poll() == None: + return False + self.parser.parse(self.defconfig) + self.occupied = False + return True + +class Slots: + + """Controller of the array of subprocess slots.""" + + def __init__(self, jobs, output, maintainers_database): + """Create a new slots controller. + + Arguments: + jobs: A number of slots to instantiate + output: File object which the result is written to + maintainers_database: An instance of class MaintainersDatabase + """ + self.slots = [] + devnull = get_devnull() + make_cmd = get_make_cmd() + for i in range(jobs): + self.slots.append(Slot(output, maintainers_database, + devnull, make_cmd)) + + def add(self, defconfig): + """Add a new subprocess if a vacant slot is available. + + Arguments: + defconfig: Board (defconfig) name + + Returns: + Return True on success or False on fail + """ + for slot in self.slots: + if slot.add(defconfig): + return True + return False + + def available(self): + """Check if there is a vacant slot. + + Returns: + Return True if a vacant slot is found, False if all slots are full + """ + for slot in self.slots: + if slot.poll(): + return True + return False + + def empty(self): + """Check if all slots are vacant. + + Returns: + Return True if all slots are vacant, False if at least one slot + is running + """ + ret = True + for slot in self.slots: + if not slot.poll(): + ret = False + return ret + +class Indicator: + + """A class to control the progress indicator.""" + + MIN_WIDTH = 15 + MAX_WIDTH = 70 + + def __init__(self, total): + """Create an instance. + + Arguments: + total: A number of boards + """ + self.total = total + self.cur = 0 + width = get_terminal_columns() + width = min(width, self.MAX_WIDTH) + width -= self.MIN_WIDTH + if width > 0: + self.enabled = True + else: + self.enabled = False + self.width = width + + def inc(self): + """Increment the counter and show the progress bar.""" + if not self.enabled: + return + self.cur += 1 + arrow_len = self.width * self.cur // self.total + msg = '%4d/%d [' % (self.cur, self.total) + msg += '=' * arrow_len + '>' + ' ' * (self.width - arrow_len) + ']' + sys.stdout.write('\r' + msg) + sys.stdout.flush() + +def __gen_boards_cfg(jobs): + """Generate boards.cfg file. + + Arguments: + jobs: The number of jobs to run simultaneously + + Note: + The incomplete boards.cfg is left over when an error (including + the termination by the keyboard interrupt) occurs on the halfway. + """ + check_top_directory() + print 'Generating %s ... (jobs: %d)' % (BOARD_FILE, jobs) + + # All the defconfig files to be processed + defconfigs = [] + for (dirpath, dirnames, filenames) in os.walk(CONFIG_DIR): + dirpath = dirpath[len(CONFIG_DIR) + 1:] + for filename in fnmatch.filter(filenames, '*_defconfig'): + defconfigs.append(os.path.join(dirpath, filename)) + + # Parse all the MAINTAINERS files + maintainers_database = MaintainersDatabase() + for (dirpath, dirnames, filenames) in os.walk('.'): + if 'MAINTAINERS' in filenames: + maintainers_database.parse_file(os.path.join(dirpath, + 'MAINTAINERS')) + + # Output lines should be piped into the reformat tool + reformat_process = subprocess.Popen(REFORMAT_CMD, stdin=subprocess.PIPE, + stdout=open(BOARD_FILE, 'w')) + pipe = reformat_process.stdin + pipe.write(COMMENT_BLOCK) + + indicator = Indicator(len(defconfigs)) + slots = Slots(jobs, pipe, maintainers_database) + + # Main loop to process defconfig files: + # Add a new subprocess into a vacant slot. + # Sleep if there is no available slot. + for defconfig in defconfigs: + while not slots.add(defconfig): + while not slots.available(): + # No available slot: sleep for a while + time.sleep(SLEEP_TIME) + indicator.inc() + + # wait until all the subprocesses finish + while not slots.empty(): + time.sleep(SLEEP_TIME) + print '' + + # wait until the reformat tool finishes + reformat_process.communicate() + if reformat_process.returncode != 0: + print >> sys.stderr, '"%s" failed' % REFORMAT_CMD[0] + sys.exit(1) + +def gen_boards_cfg(jobs): + """Generate boards.cfg file. + + The incomplete boards.cfg is deleted if an error (including + the termination by the keyboard interrupt) occurs on the halfway. + + Arguments: + jobs: The number of jobs to run simultaneously + """ + try: + __gen_boards_cfg(jobs) + except: + # We should remove incomplete boards.cfg + try: + os.remove(BOARD_FILE) + except OSError as exception: + # Ignore 'No such file or directory' error + if exception.errno != errno.ENOENT: + raise + raise + +def main(): + parser = optparse.OptionParser() + # Add options here + parser.add_option('-j', '--jobs', + help='the number of jobs to run simultaneously') + (options, args) = parser.parse_args() + if options.jobs: + try: + jobs = int(options.jobs) + except ValueError: + print >> sys.stderr, 'Option -j (--jobs) takes a number' + sys.exit(1) + else: + try: + jobs = int(subprocess.Popen(['getconf', '_NPROCESSORS_ONLN'], + stdout=subprocess.PIPE).communicate()[0]) + except (OSError, ValueError): + print 'info: failed to get the number of CPUs. Set jobs to 1' + jobs = 1 + gen_boards_cfg(jobs) + +if __name__ == '__main__': + main() diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index 7b75c83..65754f5 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -377,9 +377,14 @@ def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname, """ to = BuildEmailList(series.get('to'), '--to', alias, raise_on_error) if not to: - print ("No recipient, please add something like this to a commit\n" - "Series-to: Fred Bloggs <f.blogs@napier.co.nz>") - return + git_config_to = command.Output('git', 'config', 'sendemail.to') + if not git_config_to: + print ("No recipient.\n" + "Please add something like this to a commit\n" + "Series-to: Fred Bloggs <f.blogs@napier.co.nz>\n" + "Or do something like this\n" + "git config sendemail.to u-boot@lists.denx.de") + return cc = BuildEmailList(series.get('cc'), '--cc', alias, raise_on_error) if self_only: to = BuildEmailList([os.getenv('USER')], '--to', alias, raise_on_error) |