summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/layer.conf4
-rw-r--r--meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/machine/include/ast2400.inc1
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/layer.conf4
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/machine/palmetto.conf2
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-kernel/linux/linux-obmc_%.bbappend1
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes.txt (renamed from meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes.txt)0
-rw-r--r--meta-phosphor/classes/kernel-cuimage.bbclass45
-rw-r--r--meta-phosphor/common/recipes-extended/shadow/shadow-securetty/securetty.patch10
-rw-r--r--meta-phosphor/common/recipes-extended/shadow/shadow-securetty_%.bbappend (renamed from meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes-kernel/linux/linux-obmc.bbappend)3
-rw-r--r--meta-phosphor/common/recipes-kernel/linux/linux-obmc/initrd-source.patch (renamed from meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes-kernel/linux/linux-obmc/0000-config.patch)10
-rw-r--r--meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-config.cfg8
-rw-r--r--meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-patches.scc8
-rw-r--r--meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.cfg3
-rw-r--r--meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.scc17
-rw-r--r--meta-phosphor/common/recipes-kernel/linux/linux-obmc/systemd-reqs.patch8
-rw-r--r--meta-phosphor/common/recipes-kernel/linux/linux-obmc_4.2.bb29
-rw-r--r--meta-phosphor/common/recipes.txt6
-rw-r--r--meta-phosphor/conf/machine/include/obmc-bsp-common.inc15
18 files changed, 159 insertions, 15 deletions
diff --git a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/layer.conf b/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/layer.conf
index ce5a49bfd..a12e3f4bb 100644
--- a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/layer.conf
+++ b/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/layer.conf
@@ -1,9 +1,5 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
-# We have a recipes-* directories, add to BBFILES
-BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
- ${LAYERDIR}/recipes-*/*/*.bbappend"
-
BBFILE_COLLECTIONS += "ast2400"
BBFILE_PATTERN_ast2400 = ""
diff --git a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/machine/include/ast2400.inc b/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/machine/include/ast2400.inc
index 492b47350..58af4bb2f 100644
--- a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/machine/include/ast2400.inc
+++ b/meta-openbmc-bsp/meta-aspeed/meta-ast2400/conf/machine/include/ast2400.inc
@@ -3,7 +3,6 @@
#@DESCRIPTION: Common machine configuration for the Aspeed AST2400 Chip
PREFERRED_PROVIDER_virtual/kernel ?= "linux-obmc"
-KERNEL_CONFIG_COMMAND ?= "oe_runmake aspeed_defconfig"
UBOOT_MACHINE ?= "versatileab_config"
UBOOT_ENTRYPOINT ?= "0x40001000"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/layer.conf b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/layer.conf
index ac8a2a203..b34e7805d 100644
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/layer.conf
+++ b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/layer.conf
@@ -1,5 +1,9 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
+# We have a recipes-* directories, add to BBFILES
+BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
+ ${LAYERDIR}/recipes-*/*/*.bbappend"
+
BBFILE_COLLECTIONS += "palmetto"
BBFILE_PATTERN_palmetto = ""
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/machine/palmetto.conf b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/machine/palmetto.conf
index f846787ab..82a9b1c83 100644
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/machine/palmetto.conf
+++ b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/conf/machine/palmetto.conf
@@ -19,6 +19,8 @@ VIRTUAL-RUNTIME_obmc-phosphor-flash-ctl = " \
"
# UBOOT_MACHINE_${MACHINE} = "${MACHINE}_config
+KMACHINE = "aspeed"
+KERNEL_DEVICETREE = "${KMACHINE}-bmc-opp-${MACHINE}.dtb"
require conf/machine/include/ast2400.inc
require conf/machine/include/obmc-bsp-common.inc
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-kernel/linux/linux-obmc_%.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-kernel/linux/linux-obmc_%.bbappend
new file mode 100644
index 000000000..de6d3d6cd
--- /dev/null
+++ b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-kernel/linux/linux-obmc_%.bbappend
@@ -0,0 +1 @@
+KERNEL_CONFIG_COMMAND = "oe_runmake_call -C ${S} O=${B} ${KMACHINE}_defconfig"
diff --git a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes.txt b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes.txt
index db84c6f88..db84c6f88 100644
--- a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes.txt
+++ b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes.txt
diff --git a/meta-phosphor/classes/kernel-cuimage.bbclass b/meta-phosphor/classes/kernel-cuimage.bbclass
new file mode 100644
index 000000000..25d8f24c3
--- /dev/null
+++ b/meta-phosphor/classes/kernel-cuimage.bbclass
@@ -0,0 +1,45 @@
+# Essentially kernel-uimage, but for cuImage.
+
+inherit kernel-uboot
+
+KBUILD_HAS_CUIMAGE ?= "no"
+
+python __anonymous () {
+ kerneltype = d.getVar('KERNEL_IMAGETYPE', True)
+ if kerneltype == 'cuImage':
+ depends = d.getVar("DEPENDS", True)
+ depends = "%s u-boot-mkimage-native" % depends
+ d.setVar("DEPENDS", depends)
+
+ # Override KERNEL_IMAGETYPE_FOR_MAKE variable, which is internal
+ # to kernel.bbclass . We override the variable here, since we need
+ # to build cuImage using the kernel build system if and only if
+ # KBUILD_HAS_CUIMAGE == yes. Otherwise, we pack compressed vmlinux into
+ # the cuImage .
+ if d.getVar("KBUILD_HAS_CUIMAGE", True) != 'yes':
+ d.setVar("KERNEL_IMAGETYPE_FOR_MAKE", "zImage")
+}
+
+do_uboot_mkcimage() {
+ dt="arch/${ARCH}/boot/dts/${KERNEL_DEVICETREE}"
+ if ! test -r $dt; then
+ dt=""
+ fi
+
+ if test "x${KERNEL_IMAGETYPE}" = "xcuImage" ; then
+ if test "x${KBUILD_HAS_CUIMAGE}" != "xyes" ; then
+ uboot_prep_kimage
+ cat linux.bin $dt > linux-dts.bin
+ ENTRYPOINT=${UBOOT_ENTRYPOINT}
+ if test -n "${UBOOT_ENTRYSYMBOL}"; then
+ ENTRYPOINT=`${HOST_PREFIX}nm ${S}/vmlinux | \
+ awk '$3=="${UBOOT_ENTRYSYMBOL}" {print $1}'`
+ fi
+
+ uboot-mkimage -A ${UBOOT_ARCH} -O linux -T kernel -C "${linux_comp}" -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux-dts.bin arch/${ARCH}/boot/cuImage
+ rm -f linux.bin linux-dts.bin
+ fi
+ fi
+}
+
+addtask uboot_mkcimage before do_bundle_initramfs after do_compile
diff --git a/meta-phosphor/common/recipes-extended/shadow/shadow-securetty/securetty.patch b/meta-phosphor/common/recipes-extended/shadow/shadow-securetty/securetty.patch
new file mode 100644
index 000000000..6533e4a25
--- /dev/null
+++ b/meta-phosphor/common/recipes-extended/shadow/shadow-securetty/securetty.patch
@@ -0,0 +1,10 @@
+--- a/securetty
++++ b/securetty
+@@ -7,6 +7,7 @@ ttyS0
+ ttyS1
+ ttyS2
+ ttyS3
++ttyS4
+
+ # ARM AMBA SoCs
+ ttyAM0
diff --git a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes-kernel/linux/linux-obmc.bbappend b/meta-phosphor/common/recipes-extended/shadow/shadow-securetty_%.bbappend
index 065b1c420..70ab435c2 100644
--- a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes-kernel/linux/linux-obmc.bbappend
+++ b/meta-phosphor/common/recipes-extended/shadow/shadow-securetty_%.bbappend
@@ -1,3 +1,4 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-SRC_URI += "file://0000-config.patch"
+SRC_URI += "file://securetty.patch"
+
diff --git a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes-kernel/linux/linux-obmc/0000-config.patch b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/initrd-source.patch
index 04611eec8..a685df5b2 100644
--- a/meta-openbmc-bsp/meta-aspeed/meta-ast2400/recipes-kernel/linux/linux-obmc/0000-config.patch
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/initrd-source.patch
@@ -1,17 +1,11 @@
--- a/arch/arm/configs/aspeed_defconfig
+++ b/arch/arm/configs/aspeed_defconfig
-@@ -1,12 +1,12 @@
- CONFIG_CROSS_COMPILE="arm-linux-"
--CONFIG_LOCALVERSION="-joel"
-+# CONFIG_LOCALVERSION is not set
- CONFIG_KERNEL_XZ=y
- # CONFIG_SWAP is not set
- CONFIG_SYSVIPC=y
+@@ -6,7 +6,7 @@ CONFIG_SYSVIPC=y
CONFIG_IRQ_DOMAIN_DEBUG=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_BLK_DEV_INITRD=y
-CONFIG_INITRAMFS_SOURCE="~/ibm/openbmc/buildroot-arm-rootfs.cpio.gz"
-+# CONFIG_INITRAMFS_SOURCE is not set
++CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_KALLSYMS_ALL=y
CONFIG_EMBEDDED=y
diff --git a/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-config.cfg b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-config.cfg
new file mode 100644
index 000000000..17c8b503d
--- /dev/null
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-config.cfg
@@ -0,0 +1,8 @@
+#
+# Used by yocto-kernel to manage config options.
+#
+# yocto-kernel may change the contents of this file in any
+# way it sees fit, including removing comments like this,
+# so don't manually make any modifications you don't want
+# to lose.
+#
diff --git a/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-patches.scc b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-patches.scc
new file mode 100644
index 000000000..7a598d911
--- /dev/null
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp-user-patches.scc
@@ -0,0 +1,8 @@
+#
+# Used by yocto-kernel to manage patches.
+#
+# yocto-kernel may change the contents of this file in any
+# way it sees fit, including removing comments like this,
+# so don't manually make any modifications you don't want
+# to lose.
+#
diff --git a/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.cfg b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.cfg
new file mode 100644
index 000000000..95170b12e
--- /dev/null
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.cfg
@@ -0,0 +1,3 @@
+#
+# A convenient place to add config options, nothing more.
+#
diff --git a/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.scc b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.scc
new file mode 100644
index 000000000..88e76e649
--- /dev/null
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/obmc-bsp.scc
@@ -0,0 +1,17 @@
+#
+# The top-level 'feature' for the meta-obmc-bsp custom kernel.
+#
+# Essentially this is a convenient top-level container or starting
+# point for adding lower-level config fragements and features.
+#
+
+# meta-obmc-bsp.cfg in the linux-yocto-custom subdir is just a
+# convenient place for adding random config fragments.
+
+kconf hardware obmc-bsp.cfg
+
+# These are used by yocto-kernel to add config fragments and features.
+# Don't remove if you plan on using yocto-kernel with this BSP.
+
+kconf hardware obmc-bsp-user-config.cfg
+include obmc-bsp-user-patches.scc
diff --git a/meta-phosphor/common/recipes-kernel/linux/linux-obmc/systemd-reqs.patch b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/systemd-reqs.patch
new file mode 100644
index 000000000..f6530d749
--- /dev/null
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc/systemd-reqs.patch
@@ -0,0 +1,8 @@
+--- a/arch/arm/configs/aspeed_defconfig
++++ b/arch/arm/configs/aspeed_defconfig
+@@ -192,3 +192,5 @@ CONFIG_CRYPTO_GHASH=y
+ # CONFIG_CRYPTO_HW is not set
+ CONFIG_CRC_CCITT=y
+ CONFIG_AVERAGE=y
++CONFIG_CGROUPS=y
++CONFIG_FHANDLE=y
diff --git a/meta-phosphor/common/recipes-kernel/linux/linux-obmc_4.2.bb b/meta-phosphor/common/recipes-kernel/linux/linux-obmc_4.2.bb
new file mode 100644
index 000000000..b38d1a8d4
--- /dev/null
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc_4.2.bb
@@ -0,0 +1,29 @@
+DESCRIPTION = "Linux kernel for OpenBMC"
+SECTION = "kernel"
+LICENSE = "GPLv2"
+
+KBRANCH ?= "dev"
+
+SRC_URI = "git://github.com/openbmc/linux;protocol=git;branch=${KBRANCH}"
+SRC_URI += "file://systemd-reqs.patch file://initrd-source.patch"
+SRC_URI += "file://obmc-bsp.scc \
+ file://obmc-bsp.cfg \
+ file://obmc-bsp-user-config.cfg \
+ file://obmc-bsp-user-patches.scc \
+ "
+
+LINUX_VERSION ?= "4.2"
+LINUX_VERSION_EXTENSION ?= "-openbmc-${SRCPV}"
+
+SRCREV="${AUTOREV}"
+
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+COMPATIBLE_MACHINE_${MACHINE} = "openbmc"
+
+inherit kernel
+require recipes-kernel/linux/linux-yocto.inc
+
+do_configure_prepend() {
+ sed -i 's/CONFIG_LOCALVERSION=.\+/CONFIG_LOCALVERSION=${LINUX_VERSION_EXTENSION}/' ${S}/arch/${ARCH}/configs/${KMACHINE}_defconfig
+}
diff --git a/meta-phosphor/common/recipes.txt b/meta-phosphor/common/recipes.txt
index c2c88b7b1..d38d789dd 100644
--- a/meta-phosphor/common/recipes.txt
+++ b/meta-phosphor/common/recipes.txt
@@ -1 +1,5 @@
-recipes-phosphor - Phosphor OpenBMC applications and configuration
+recipes-connectivity - Libraries and applications related to communication with other devices
+recipes-extended - Applications which whilst not essential add features compared to the alternatives in
+ core. May be needed for full tool functionality or LSB compliance.
+recipes-kernel - The kernel and generic applications/libraries with strong kernel dependencies
+recipes-phosphor - Phosphor OpenBMC applications and configuration
diff --git a/meta-phosphor/conf/machine/include/obmc-bsp-common.inc b/meta-phosphor/conf/machine/include/obmc-bsp-common.inc
new file mode 100644
index 000000000..ca652854b
--- /dev/null
+++ b/meta-phosphor/conf/machine/include/obmc-bsp-common.inc
@@ -0,0 +1,15 @@
+#@TYPE: Machine
+#@NAME: OpenBMC
+#@DESCRIPTION: Common machine configuration for OpenBMC chips
+
+MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
+EXTRA_IMAGEDEPENDS += "u-boot"
+
+KERNEL_CLASSES ?= "kernel-uimage kernel-cuimage"
+KERNEL_IMAGETYPE ?= "cuImage"
+KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
+
+UBOOT_SUFFIX ?= "bin"
+IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX}"
+
+MACHINEOVERRIDES =. "openbmc:"