diff options
author | Daniel BORNAZ <daniel.bornaz@enea.com> | 2019-09-16 14:23:30 +0200 |
---|---|---|
committer | Daniel BORNAZ <daniel.bornaz@enea.com> | 2019-09-16 14:32:09 +0200 |
commit | d34a01191ad16ffff7cfc70a71440c5b1ed6552a (patch) | |
tree | 705d1bbf051204989ead7988c7abe5dce4a805b7 | |
parent | b06d3b4c0bd8ef788db48f840d83035bbee12115 (diff) | |
download | meta-enea-bsp-x86-warrior.tar.gz |
Added PREEMPT_RT 4.19 kernel for intelwarrior
Added the recipe for the PREEMPT_RT intel 4.19 kernel
along with patches for the 10Gbps NIC and machine
configuration. Addresses LXOSCR-437 and LXOSCR-439.
Change-Id: If0fd91858b49c155c479c9ed66cb016f9de1b958
-rw-r--r-- | conf/machine/include/intel-common-pkgarch.inc | 15 | ||||
-rw-r--r-- | conf/machine/include/intel-corei7-64-common.inc | 7 | ||||
-rw-r--r-- | conf/machine/include/maintainers.inc | 21 | ||||
-rw-r--r-- | conf/machine/include/meta-intel.inc | 45 | ||||
-rw-r--r-- | conf/machine/intel-corei7-64-rt.conf | 42 | ||||
-rw-r--r-- | recipes-kernel/linux/linux-intel-rt_4.19.bbappend | 6 |
6 files changed, 136 insertions, 0 deletions
diff --git a/conf/machine/include/intel-common-pkgarch.inc b/conf/machine/include/intel-common-pkgarch.inc new file mode 100644 index 0000000..d0f208b --- /dev/null +++ b/conf/machine/include/intel-common-pkgarch.inc | |||
@@ -0,0 +1,15 @@ | |||
1 | INTEL_COMMON_PACKAGE_ARCH ?= "${TUNE_PKGARCH}-intel-common" | ||
2 | PACKAGE_ARCH_pn-linux-intel = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
3 | PACKAGE_ARCH_pn-linux-intel-rt = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
4 | PACKAGE_ARCH_pn-linux-intel-tiny = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
5 | PACKAGE_ARCH_pn-linux-intel-dev = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
6 | PACKAGE_ARCH_pn-linux-yocto = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
7 | PACKAGE_ARCH_pn-linux-yocto-rt = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
8 | PACKAGE_ARCH_pn-linux-yocto-tiny = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
9 | PACKAGE_ARCH_pn-linux-yocto-dev = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
10 | PACKAGE_ARCH_pn-intel-microcode = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
11 | PACKAGE_ARCH_pn-backport-iwlwifi = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
12 | PACKAGE_ARCH_pn-ixgbe = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
13 | PACKAGE_ARCH_pn-ixgbevf = "${INTEL_COMMON_PACKAGE_ARCH}" | ||
14 | PACKAGE_EXTRA_ARCHS_append += "${INTEL_COMMON_PACKAGE_ARCH}" | ||
15 | MACHINEOVERRIDES =. "${INTEL_COMMON_PACKAGE_ARCH}:" | ||
diff --git a/conf/machine/include/intel-corei7-64-common.inc b/conf/machine/include/intel-corei7-64-common.inc new file mode 100644 index 0000000..0028256 --- /dev/null +++ b/conf/machine/include/intel-corei7-64-common.inc | |||
@@ -0,0 +1,7 @@ | |||
1 | # | ||
2 | # Common configuration for all MACHINES of the intel-corei7-64 type | ||
3 | # | ||
4 | |||
5 | DEFAULTTUNE ?= "corei7-64" | ||
6 | require conf/machine/include/tune-corei7.inc | ||
7 | require conf/machine/include/x86-base.inc | ||
diff --git a/conf/machine/include/maintainers.inc b/conf/machine/include/maintainers.inc new file mode 100644 index 0000000..99ddec2 --- /dev/null +++ b/conf/machine/include/maintainers.inc | |||
@@ -0,0 +1,21 @@ | |||
1 | # This file contains a list of recipe maintainers for meta-intel | ||
2 | |||
3 | RECIPE_MAINTAINER_pn-core-image-rt = "Anuj Mittal <anuj.mittal@intel.com>" | ||
4 | RECIPE_MAINTAINER_pn-core-image-rt-sdk = "Anuj Mittal <anuj.mittal@intel.com>" | ||
5 | RECIPE_MAINTAINER_pn-gma500-gfx-check = "Anuj Mittal <anuj.mittal@intel.com>" | ||
6 | RECIPE_MAINTAINER_pn-gmmlib = "Anuj Mittal <anuj.mittal@intel.com>" | ||
7 | RECIPE_MAINTAINER_pn-intel-gpu-tools = "Anuj Mittal <anuj.mittal@intel.com>" | ||
8 | RECIPE_MAINTAINER_pn-intel-media-driver = "Anuj Mittal <anuj.mittal@intel.com>" | ||
9 | RECIPE_MAINTAINER_pn-intel-mediasdk = "Anuj Mittal <anuj.mittal@intel.com>" | ||
10 | RECIPE_MAINTAINER_pn-intel-microcode = "Anuj Mittal <anuj.mittal@intel.com>" | ||
11 | RECIPE_MAINTAINER_pn-core-image-minimal-initramfs = "Anuj Mittal <anuj.mittal@intel.com>" | ||
12 | RECIPE_MAINTAINER_pn-iucode-tool = "Anuj Mittal <anuj.mittal@intel.com>" | ||
13 | RECIPE_MAINTAINER_pn-intel-vaapi-driver = "Anuj Mittal <anuj.mittal@intel.com>" | ||
14 | RECIPE_MAINTAINER_pn-libyami = "Anuj Mittal <anuj.mittal@intel.com>" | ||
15 | RECIPE_MAINTAINER_pn-libyami-utils = "Anuj Mittal <anuj.mittal@intel.com>" | ||
16 | RECIPE_MAINTAINER_pn-linux-intel = "Anuj Mittal <anuj.mittal@intel.com>" | ||
17 | RECIPE_MAINTAINER_pn-linux-intel-rt = "Anuj Mittal <anuj.mittal@intel.com>" | ||
18 | RECIPE_MAINTAINER_pn-thermald = "Anuj Mittal <anuj.mittal@intel.com>" | ||
19 | RECIPE_MAINTAINER_pn-xf86-video-ast = "Anuj Mittal <anuj.mittal@intel.com>" | ||
20 | RECIPE_MAINTAINER_pn-mkl-dnn = "Ankit Navik <ankit.tarot@gmail.com>" | ||
21 | RECIPE_MAINTAINER_pn-metrics-discovery = "Ankit Navik <ankit.tarot@gmail.com>" | ||
diff --git a/conf/machine/include/meta-intel.inc b/conf/machine/include/meta-intel.inc new file mode 100644 index 0000000..d45f482 --- /dev/null +++ b/conf/machine/include/meta-intel.inc | |||
@@ -0,0 +1,45 @@ | |||
1 | # | ||
2 | # BSP variables and settings specific to the meta-intel layer. | ||
3 | # You must include the meta-intel layer in your bblayers.conf | ||
4 | # to use them. | ||
5 | # | ||
6 | |||
7 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-intel" | ||
8 | PREFERRED_PROVIDER_virtual/kernel_poky-tiny ?= "linux-intel" | ||
9 | |||
10 | # Only use the Intel-tuned zlib for target builds to improve reuse | ||
11 | PREFERRED_PROVIDER_zlib = "zlib-intel" | ||
12 | PREFERRED_PROVIDER_zlib-native = "zlib-native" | ||
13 | PREFERRED_PROVIDER_nativesdk-zlib = "nativesdk-zlib" | ||
14 | |||
15 | PREFERRED_VERSION_linux-intel_linuxstdbase ?= "4.19%" | ||
16 | PREFERRED_VERSION_linux-intel ?= "4.19%" | ||
17 | PREFERRED_VERSION_linux-intel-rt ?= "4.19%" | ||
18 | |||
19 | XSERVER_X86_ASPEED_AST = "xf86-video-ast \ | ||
20 | " | ||
21 | |||
22 | # include the user space intel microcode loading support in the generated images. | ||
23 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS_append = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', ' intel-microcode', '', d)} thermald" | ||
24 | |||
25 | # recommended extra packages common to all intel machines | ||
26 | MACHINE_EXTRA_RRECOMMENDS_append = " kernel-modules linux-firmware" | ||
27 | |||
28 | # for the early boot time kernel microcode loading support, | ||
29 | # merge the microcode data in the final initrd image. | ||
30 | INITRD_LIVE_prepend = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}" | ||
31 | |||
32 | DISK_SIGNATURE_UUID ??= "deadbeef-dead-beef-dead-beefdeadbeef" | ||
33 | |||
34 | EFI_PROVIDER ?= "systemd-boot" | ||
35 | EFI_PROVIDER_x86-x32 = "grub-efi" | ||
36 | |||
37 | # Add general MACHINEOVERRIDE for meta-intel | ||
38 | MACHINEOVERRIDES =. "intel-x86-common:" | ||
39 | |||
40 | # Definition of (more or less) suitable virtual machines. | ||
41 | require conf/machine/include/qemuboot-intel.inc | ||
42 | |||
43 | # Ensure that the extra tools needed by qemu are built when building images | ||
44 | # and tweak machine definition to make the result more usable under qemu. | ||
45 | require conf/machine/include/qemu-intel.inc | ||
diff --git a/conf/machine/intel-corei7-64-rt.conf b/conf/machine/intel-corei7-64-rt.conf new file mode 100644 index 0000000..76457a4 --- /dev/null +++ b/conf/machine/intel-corei7-64-rt.conf | |||
@@ -0,0 +1,42 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: intel-corei7-64 | ||
3 | |||
4 | #@DESCRIPTION: Machine configuration for 64 bit Intel Core i7 CPU (and later) with MMX, SSE, SSE2, SSE3, and SSSE3 instruction set support. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware. | ||
5 | |||
6 | require conf/machine/include/meta-intel.inc | ||
7 | require conf/machine/include/intel-corei7-64-common.inc | ||
8 | require conf/machine/include/intel-common-pkgarch.inc | ||
9 | |||
10 | PREFERRED_PROVIDER_virtual/kernel = "linux-intel-rt" | ||
11 | |||
12 | MACHINE_FEATURES += "pcbios efi" | ||
13 | MACHINE_FEATURES += "wifi 3g nfc" | ||
14 | MACHINE_FEATURES += "intel-ucode" | ||
15 | |||
16 | MACHINE_HWCODECS ?= "intel-vaapi-driver gstreamer1.0-vaapi" | ||
17 | |||
18 | # Enable optional dpdk: | ||
19 | COMPATIBLE_MACHINE_pn-dpdk = "intel-corei7-64" | ||
20 | |||
21 | # Enable optional QAT items: | ||
22 | COMPATIBLE_MACHINE_pn-qat16 = "intel-corei7-64" | ||
23 | COMPATIBLE_MACHINE_pn-qat17 = "intel-corei7-64" | ||
24 | COMPATIBLE_MACHINE_pn-zlib-qat = "intel-corei7-64" | ||
25 | |||
26 | XSERVER ?= "${XSERVER_X86_BASE} \ | ||
27 | ${XSERVER_X86_EXT} \ | ||
28 | ${XSERVER_X86_FBDEV} \ | ||
29 | ${XSERVER_X86_I915} \ | ||
30 | ${XSERVER_X86_I965} \ | ||
31 | ${XSERVER_X86_MODESETTING} \ | ||
32 | ${XSERVER_X86_VESA} \ | ||
33 | ${XSERVER_X86_ASPEED_AST} \ | ||
34 | " | ||
35 | |||
36 | SYSLINUX_OPTS = "serial 0 115200" | ||
37 | SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2" | ||
38 | APPEND += "rootwait console=ttyS0,115200 console=tty0" | ||
39 | |||
40 | IMAGE_FSTYPES += "wic" | ||
41 | WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks.in", "grub-bootdisk-microcode.wks.in", d)}" | ||
42 | WKS_FILE_DEPENDS_append = " intel-microcode" | ||
diff --git a/recipes-kernel/linux/linux-intel-rt_4.19.bbappend b/recipes-kernel/linux/linux-intel-rt_4.19.bbappend new file mode 100644 index 0000000..e864a0f --- /dev/null +++ b/recipes-kernel/linux/linux-intel-rt_4.19.bbappend | |||
@@ -0,0 +1,6 @@ | |||
1 | SRCREV_metaenea = "751b828bafbb3ea036de9135a07ba8dbfa301108" | ||
2 | KENEABRANCH = "intel-4.19" | ||
3 | SRC_URI_append = " git://git@git.enea.com/linux/enea-kernel-cache.git;protocol=ssh;type=kmeta;name=metaenea;branch=${KENEABRANCH};destsuffix=enea-kernel-meta \ | ||
4 | " | ||
5 | KERNEL_FEATURES_append = " features/intel-e1xxxx/e1xxxx_y.scc \ | ||
6 | features/ixgbe/ixgbe_y.scc" | ||