diff options
Diffstat (limited to 'conf/machine')
-rw-r--r-- | conf/machine/include/ixp4xx.conf | 42 | ||||
-rw-r--r-- | conf/machine/ixp4xx.conf | 5 | ||||
-rw-r--r-- | conf/machine/nas100d.conf | 7 | ||||
-rw-r--r-- | conf/machine/nslu2.conf | 7 |
4 files changed, 42 insertions, 19 deletions
diff --git a/conf/machine/include/ixp4xx.conf b/conf/machine/include/ixp4xx.conf index 3c5077056e..19a2ee0141 100644 --- a/conf/machine/include/ixp4xx.conf +++ b/conf/machine/include/ixp4xx.conf @@ -46,7 +46,7 @@ DISTRO_BASE = "" IXP4XX_SUFFIX = "${MACHINE_ARCH}" # <string> -# Kernel suffix - 'ixp4xxb' or 'ixp4xxl' for a truely generic image, controls +# Kernel suffix - 'ixp4xxbe' or 'ixp4xxle' for a truely generic image, controls # the suffix on the name of the generated zImage, override in the DISTRO # configuration if patches or defconfig are changed for the DISTRO. @@ -97,19 +97,19 @@ FULL_OPTIMIZATION = "-Os -fomit-frame-pointer -frename-registers \ # setting because of the large number of ways it is used within OpenEmbedded. TARGET_ARCH = "${@['armeb', 'arm'][bb.data.getVar('ARCH_BYTE_SEX', d, 1) == 'le']}" -# PACKAGE_ARCH +# TARGET_PACKAGE_ARCH [not used] # The correct setting for the generated packages. This corresponds to the # -march flag passed to the compiler because that limits the architectures # on which the generated code will run. BYTE_SEX_CHAR = "${@['b', 'l'][bb.data.getVar('ARCH_BYTE_SEX', d, 1) == 'le']}" -PACKAGE_ARCH_BASE = "${@['armv5te', 'thumbv5t'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" -PACKAGE_ARCH = "${PACKAGE_ARCH_BASE}${BYTE_SEX_CHAR}" +TARGET_PACKAGE_ARCH_BASE = "${@['armv5te', 'thumbv5t'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}" +TARGET_PACKAGE_ARCH = "${TARGET_PACKAGE_ARCH_BASE}${BYTE_SEX_CHAR}" # MACHINE_ARCH # The correct setting for packages which are specific to the machine, this # defaults to ${MACHINE} in bitbake.conf, however it is set to ixp4xx here # because everything built here is no more specific than that. -MACHINE_ARCH = "ixp4xx${BYTE_SEX_CHAR}" +MACHINE_ARCH = "ixp4xx${ARCH_BYTE_SEX}" # IPKG_ARCHS # The full list of package architectures which should run on the system. @@ -117,7 +117,10 @@ MACHINE_ARCH = "ixp4xx${BYTE_SEX_CHAR}" # by the distro. The arm list is derived from the architecture settings # known to gcc, the thumb list is then derived from that (only the 't' # architectures of course). -ARM_ARCHITECTURES = "${TARGET_ARCH} armv2${BYTE_SEX_CHAR} armv2a${BYTE_SEX_CHAR} armv3${BYTE_SEX_CHAR} armv3m${BYTE_SEX_CHAR} armv4${BYTE_SEX_CHAR} armv4t${BYTE_SEX_CHAR} armv5${BYTE_SEX_CHAR} armv5t${BYTE_SEX_CHAR} armv5e${BYTE_SEX_CHAR} armv5te${BYTE_SEX_CHAR} xscale${BYTE_SEX_CHAR}" +#[not used]: TARGET_ARCH is handled below because it is also currently +# used for thumb packages. +#ARM_ARCHITECTURES = "${TARGET_ARCH} armv2${BYTE_SEX_CHAR} armv2a${BYTE_SEX_CHAR} armv3${BYTE_SEX_CHAR} armv3m${BYTE_SEX_CHAR} armv4${BYTE_SEX_CHAR} armv4t${BYTE_SEX_CHAR} armv5${BYTE_SEX_CHAR} armv5t${BYTE_SEX_CHAR} armv5e${BYTE_SEX_CHAR} armv5te${BYTE_SEX_CHAR} xscale${BYTE_SEX_CHAR}" +ARM_ARCHITECTURES = "armv2${BYTE_SEX_CHAR} armv2a${BYTE_SEX_CHAR} armv3${BYTE_SEX_CHAR} armv3m${BYTE_SEX_CHAR} armv4${BYTE_SEX_CHAR} armv4t${BYTE_SEX_CHAR} armv5${BYTE_SEX_CHAR} armv5t${BYTE_SEX_CHAR} armv5e${BYTE_SEX_CHAR} armv5te${BYTE_SEX_CHAR} xscale${BYTE_SEX_CHAR}" THUMB_ARCHITECTURES = "thumbe${BYTE_SEX_CHAR} thumbv4t${BYTE_SEX_CHAR} thumbv5t${BYTE_SEX_CHAR}" # NOTE: this list contains just the things which rootfs_ipk.bbclass does @@ -128,14 +131,22 @@ THUMB_ARCHITECTURES = "thumbe${BYTE_SEX_CHAR} thumbv4t${BYTE_SEX_CHAR} thumbv5t$ # This is a priority ordered list - most desireable architecture at the end, # so put <ARM_INSTRUCTION_SET>_ARCHITECTURES at the end and, if # THUMB_INTERWORK precede this with the other architectures. -IPKG_ARCHS = "${@(lambda arch_thumb, arch_arm, is_arm, interwork: \ +IPKG_ARCHS = "ixp4xx ${MACHINE} \ + ${@(lambda arch_thumb, arch_arm, is_arm, interwork: \ (interwork and (is_arm and arch_thumb or arch_arm) + ' ' or '') \ - + (is_arm and arch_arm or arch_thumb)) \ + + '${TARGET_ARCH} ' + (is_arm and arch_arm or arch_thumb)) \ (bb.data.getVar('THUMB_ARCHITECTURES', d, 1), \ bb.data.getVar('ARM_ARCHITECTURES', d, 1), \ bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) != 'thumb', \ bb.data.getVar('THUMB_INTERWORK', d, 1) == 'yes')} \ - ${MACHINE_ARCH} ${MACHINE}${BYTE_SEX_CHAR}" + ${MACHINE_ARCH} ${MACHINE}${ARCH_BYTE_SEX}" + +# IPKG_ARCH_LIST [not used] +# This is used to override the ipkgarchs settings in rootfs_ipk.bbclass, allowing +# the removal of the raw "${MACHINE}" from the end of the list. ${MACHINE} and +# ixp4xx are included at the start (lower priority) as the non-byte-sex specific +# versions. +IPKG_ARCH_LIST = "all any noarch ixp4xx ${MACHINE} ${IPKG_ARCHS}" #------------------------------------------------------------------------------- # Package versions @@ -152,3 +163,16 @@ INHERIT += "nslu2-mirrors" PREFERRED_VERSION_ipkg ?= "0.99.155" PREFERRED_VERSION_ipkg-native ?= "0.99.154" + +#------------------------------------------------------------------------------- +# Board defaults +#------------------------------------------------------------------------------- +# These values are board specific but they seem to be common to a large number +# of boards so are reasonable defaults. +SERIAL_CONSOLE = "115200 ttyS0" +KERNEL_CONSOLE = "ttyS0,115200n8" +USE_VT = "0" + +# Always add the LEFIXUP - if desired this can be removed for a specific board +# if that board has an LE boot loader and therefore does not require it. +IXP4XX_LEFIXUP = "1" diff --git a/conf/machine/ixp4xx.conf b/conf/machine/ixp4xx.conf new file mode 100644 index 0000000000..c088485fcc --- /dev/null +++ b/conf/machine/ixp4xx.conf @@ -0,0 +1,5 @@ +#@TYPE: Machine +#@NAME: Generic IXP4XX kernel +#@DESCRIPTION: Machine configuration for a generic ixp4xx board + +include conf/machine/include/ixp4xx.conf diff --git a/conf/machine/nas100d.conf b/conf/machine/nas100d.conf index f99b601628..a628841878 100644 --- a/conf/machine/nas100d.conf +++ b/conf/machine/nas100d.conf @@ -5,10 +5,7 @@ include conf/machine/include/ixp4xx.conf # The correct settings for the NAS100D board: -SERIAL_CONSOLE = "115200 ttyS0" -KERNEL_CONSOLE = "ttyS0,115200n8" -USE_VT = "0" CMDLINE_ROOT = "root=/dev/mtdblock2 rw rootfstype=jffs2 mem=64M@0x00000000 init=/linuxrc" -IXP4XX_SUFFIX = "${MACHINE}${BYTE_SEX_CHAR}" +# This following means the kernel will only run on a NAS100D board: +IXP4XX_SUFFIX = "${MACHINE}${ARCH_BYTE_SEX}" IXP4XX_MACHID = "865" -IXP4XX_LEFIXUP = "1" diff --git a/conf/machine/nslu2.conf b/conf/machine/nslu2.conf index a20e8b73a9..96b9e37ce0 100644 --- a/conf/machine/nslu2.conf +++ b/conf/machine/nslu2.conf @@ -5,10 +5,7 @@ include conf/machine/include/ixp4xx.conf # The correct settings for the NSLU2 board: -SERIAL_CONSOLE = "115200 ttyS0" -KERNEL_CONSOLE = "ttyS0,115200n8" -USE_VT = "0" CMDLINE_ROOT = "root=/dev/mtdblock4 rw rootfstype=jffs2 mem=32M@0x00000000 init=/linuxrc" -IXP4XX_SUFFIX = "${MACHINE}${BYTE_SEX_CHAR}" +IXP4XX_SUFFIX = "${MACHINE}${ARCH_BYTE_SEX}" +# This following means the kernel will only run on a NSLU2: IXP4XX_MACHID = "597" -IXP4XX_LEFIXUP = "1" |