diff options
Diffstat (limited to 'meta-amd-bsp/conf/machine/include')
-rw-r--r-- | meta-amd-bsp/conf/machine/include/amd-common-configurations.inc | 40 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/amd-features.inc | 77 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/amdx86.inc | 23 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/ethanolx.inc | 9 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/fox.inc | 9 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/quartz.inc | 7 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/tune-amd64.inc | 15 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/tune-zen1.inc | 18 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/tune-zen2.inc | 19 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/tune-zen3.inc | 19 | ||||
-rw-r--r-- | meta-amd-bsp/conf/machine/include/wallaby.inc | 7 |
11 files changed, 243 insertions, 0 deletions
diff --git a/meta-amd-bsp/conf/machine/include/amd-common-configurations.inc b/meta-amd-bsp/conf/machine/include/amd-common-configurations.inc new file mode 100644 index 00000000..0d216749 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/amd-common-configurations.inc @@ -0,0 +1,40 @@ +require conf/machine/include/amd-features.inc + +POKY_DEFAULT_DISTRO_FEATURES:remove = "wayland" + +PREFERRED_PROVIDER_jpeg ?= "jpeg" +PREFERRED_PROVIDER_jpeg-native ?= "jpeg-native" + +MULTILIBS ?= "" +require conf/multilib.conf + +MACHINE_FEATURES += "wifi efi alsa" + +# QEMU does not support some of the enhanced instructions available +# on the AMD chips which causes some build time failures. +MACHINE_FEATURES:remove = "qemu-usermode" + +MACHINE_EXTRA_RRECOMMENDS += "kernel-modules alsa-utils" +MACHINE_EXTRA_RRECOMMENDS += "grub parted util-linux-blkid" +MACHINE_EXTRA_RRECOMMENDS += "rtc-test watchdog-test smbus-test gpio-test" + +# Add serial consoles to kernel commandline, these should occur before the tty0 +KERNEL_SERIAL_CONSOLE ??= "" +APPEND += "${KERNEL_SERIAL_CONSOLE}" + +# Make sure the kernel messages go to the VGA console +APPEND += "console=tty0" + +# Set a generic video mode, use gfxpayload=wxh for grub2 +GRUB_OPTS:append = ";set gfxpayload=1024x768" + +# We use ext4 rootfs normally so give it priority rather than trying other FS first +APPEND += "rootfstype=ext4,ext3,ext2" + +APPEND_ADDITIONAL ??= "" +APPEND += "${APPEND_ADDITIONAL}" + +EXTRA_OECONF:append:pn-matchbox-panel-2 = " --with-battery=acpi" + +# Add common feartures to be supported for all machines here +EXTRA_IMAGE_FEATURES += "amd-misc-pkgs" diff --git a/meta-amd-bsp/conf/machine/include/amd-features.inc b/meta-amd-bsp/conf/machine/include/amd-features.inc new file mode 100644 index 00000000..61ad06a4 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/amd-features.inc @@ -0,0 +1,77 @@ +# This file defines AMD Features that can be added as EXTRA_IMAGE_FEATURES to +# different machines based on what is supported on a machine (MACHINE_FEATURES) +# and which additional features a user is requesting through EXTRA_IMAGE_FEATURES. +# This gives a broad flexibility and control over packages being installed on a +# machine for any image without needing to create bbappends for all the images +# that are to be supported. +# +# > Each feature can contain packages and packagegroups as its components. +# > Feature components can be dependent on DISTRO, EXTRA_IMAGE_FEATURES, or any +# variable in general other than a particular image's related variable so most +# things should be based on global configs rather than image configs. +# e.g.: Components of "amd-feature-graphics" may be dependent on "x11-base" as +# an IMAGE_FEATURE. Some packages may only be included for a specific +# DISTRO. Some packages may only be installed if user allows them in local.conf etc. +# > Each machine must add the requested features to EXTRA_IMAGE_FEATURES in its +# own machine config file regardless of the image being built, if that particular +# feature is not handled in the common fragments. +# > Each machine can also override feature components in its own machine config +# when adding the feature to EXTRA_IMAGE_FEATURES. e.g.: A feature may be added +# to a specific machine with minimal (or extended) packages based on requirement. +# +# Features are classified as: +# +# * amd-misc-pkgs : Intended for Platform Specific Packages, Common Packages to be added to all machines, etc. +# * amd-feature-multimedia : Multimedia packages (it does not depend on graphics because a machine may not have a GUI but could play videos and sounds from console) +# * amd-feature-graphics : Graphics packages +# * amd-feature-networking : Networking packages +# * amd-feature-debug-profile : Debugging and Profiling tools +# * <add more features here> : <feature summary> + +GSTREAMER_PKGS ?= " \ + ${@bb.utils.contains("IMAGE_FEATURES", "x11-base", "gstreamer1.0-meta-x11-base", "", d)} \ + ${@bb.utils.contains("COMBINED_FEATURES", "alsa", "gstreamer1.0-meta-audio", "", d)} \ + gstreamer1.0-meta-debug \ + gstreamer1.0-meta-video \ + ${@bb.utils.contains("IMAGE_FEATURES", "x11-base", "gstreamer1.0-omx", "", d)} \ + ${@bb.utils.contains("IMAGE_FEATURES", "x11-base", "gstreamer1.0-vaapi", "", d)} \ +" +VULKAN_PKGS ?= "" +CODEXL_PKGS ?= "" +DPDK_PKGS ?= "" + +# Additional packages can be added to the following feature specific +# variables from each machine's config file +AMD_PLATFORM_SPECIFIC_PKGS ?= "" +AMD_FEATURE_MULTIMEDIA_PKGS ?= "" +AMD_FEATURE_GRAPHICS_PKGS ?= "" +AMD_FEATURE_NETWORKING_PKGS ?= "" +AMD_FEATURE_DEBUG_PROFILE_PKGS ?= "" + +FEATURE_PACKAGES_amd-misc-pkgs = "\ + bc \ + ${AMD_PLATFORM_SPECIFIC_PKGS} \ +" + +FEATURE_PACKAGES_amd-feature-multimedia = "\ + ${GSTREAMER_PKGS} \ + ${@bb.utils.contains("IMAGE_FEATURES", "x11-base", "vdpauinfo", "", d)} \ + ${AMD_FEATURE_MULTIMEDIA_PKGS} \ +" + +FEATURE_PACKAGES_amd-feature-graphics = "\ + ${@bb.utils.contains("INCLUDE_VULKAN", "yes", "${VULKAN_PKGS}", "", d)} \ + ${AMD_FEATURE_GRAPHICS_PKGS} \ +" +FEATURE_PACKAGES_amd-feature-graphics:append:radeon = " ${@bb.utils.contains("IMAGE_FEATURES", "x11-base", "mesa-demos", "", d)}" + +FEATURE_PACKAGES_amd-feature-networking = "\ + ${DPDK_PKGS} \ + strongswan \ + ${AMD_FEATURE_NETWORKING_PKGS} \ +" + +FEATURE_PACKAGES_amd-feature-debug-profile = "\ + ${@bb.utils.contains("INCLUDE_CODEXL", "yes", "${CODEXL_PKGS}", "", d)} \ + ${AMD_FEATURE_DEBUG_PROFILE_PKGS} \ +" diff --git a/meta-amd-bsp/conf/machine/include/amdx86.inc b/meta-amd-bsp/conf/machine/include/amdx86.inc new file mode 100644 index 00000000..db824e36 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/amdx86.inc @@ -0,0 +1,23 @@ +PREFERRED_PROVIDER_virtual/kernel ?= "${@bb.utils.contains('RT_KERNEL_AMD', 'yes', "linux-yocto-rt", "linux-yocto", d)}" + +require conf/machine/include/amd-common-configurations.inc +include conf/machine/include/amd-customer-configurations.inc + +# Add machine specific AMD features and feature pkgs here +DPDK_PKGS = "${@bb.utils.contains("BBFILE_COLLECTIONS", "dpdk", "dpdk dpdk-examples dpdk-tools dpdk-module", "", d)}" + +MACHINE_FEATURES:remove = "screen alsa" +MACHINE_EXTRA_RRECOMMENDS:remove = " rtc-test alsa-utils" + +# Disable the graphical console when machine does not have a screen. +# This allows the serial console to be used for installation. +APPEND:remove="${@bb.utils.contains('MACHINE_FEATURES', 'screen-console', '', 'console=tty0', d)}" + +MACHINEOVERRIDES =. "amd:amdx86:" + +# Mask out recipes for packages we do not support for +# amdx86 but may be required by others. Use '|' sign +# between the patterns. +BBMASK = "\ +.*/meta-amd/common/recipes-support/libtinyxml\ +" diff --git a/meta-amd-bsp/conf/machine/include/ethanolx.inc b/meta-amd-bsp/conf/machine/include/ethanolx.inc new file mode 100644 index 00000000..1e174c72 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/ethanolx.inc @@ -0,0 +1,9 @@ +require conf/machine/include/x86/x86-base.inc + +# Setup a getty on all serial ports +SERIAL_CONSOLES = "115200;ttyS0" + +# Enable the kernel console on ttyS0 +APPEND += "console=tty0 console=ttyS0,115200n8" + +MACHINE_FEATURES += "efi" diff --git a/meta-amd-bsp/conf/machine/include/fox.inc b/meta-amd-bsp/conf/machine/include/fox.inc new file mode 100644 index 00000000..a108c399 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/fox.inc @@ -0,0 +1,9 @@ +require conf/machine/include/x86/x86-base.inc + +# ttyS4 is J39 on the board +SERIAL_CONSOLES = "115200;ttyS4" + +# Enable the kernel console on ttyS4 +APPEND += "console=tty0 console=ttyS4,115200n8" + +MACHINE_FEATURES += "efi" diff --git a/meta-amd-bsp/conf/machine/include/quartz.inc b/meta-amd-bsp/conf/machine/include/quartz.inc new file mode 100644 index 00000000..231aeb2f --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/quartz.inc @@ -0,0 +1,7 @@ +require conf/machine/include/x86/x86-base.inc + +SERIAL_CONSOLES = "115200;ttyS0" + +APPEND += "console=tty0 console=ttyS0,115200n8" + +MACHINE_FEATURES += "efi" diff --git a/meta-amd-bsp/conf/machine/include/tune-amd64.inc b/meta-amd-bsp/conf/machine/include/tune-amd64.inc new file mode 100644 index 00000000..4debbf2a --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/tune-amd64.inc @@ -0,0 +1,15 @@ +DEFAULTTUNE ?= "amd64" + +require conf/machine/include/x86/arch-x86.inc +require conf/machine/include/x86/x86-base.inc + +# AMD x86 64-bit +TUNEVALID[amd64] = "Enable AMD x86 (64 bit) specific processor optimizations" +TUNECONFLICTS[amd64] = "m32 mx32" + +# Extra tune selections +AVAILTUNES += "amd64" +TUNE_FEATURES:tune-amd64 = "m64" +BASE_LIB:tune-amd64 = "lib64" +TUNE_PKGARCH:tune-amd64 = "amd64" +PACKAGE_EXTRA_ARCHS:tune-amd64 = "${TUNE_PKGARCH:tune-amd64}" diff --git a/meta-amd-bsp/conf/machine/include/tune-zen1.inc b/meta-amd-bsp/conf/machine/include/tune-zen1.inc new file mode 100644 index 00000000..3dd48f7b --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/tune-zen1.inc @@ -0,0 +1,18 @@ +DEFAULTTUNE ?= "zen1" + +require conf/machine/include/x86/arch-x86.inc + +TUNEVALID[zen1] = "Enable AMD x86 (64 bit) Zen 1 Core Architecture specific optimizations" +TUNECONFLICTS[zen1] = "m32 mx32" + +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'zen1', ' -march=znver1', '', d)}" +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'zen1', 'zen1:', '', d)}" + +AVAILTUNES += "zen1" +TUNE_FEATURES:tune-zen1 = "${TUNE_FEATURES:tune-x86-64} zen1" +TUNE_PKGARCH:tune-zen1 = "zen1" +PACKAGE_EXTRA_ARCHS:tune-zen1 = "${PACKAGE_EXTRA_ARCHS:tune-x86-64} zen1" +BASE_LIB:tune-zen1 = "lib64" + +# user mode qemu doesn't support zen1 +MACHINE_FEATURES_BACKFILL_CONSIDERED:append = " ${@bb.utils.contains('TUNE_FEATURES', 'zen1', 'qemu-usermode', '', d)}" diff --git a/meta-amd-bsp/conf/machine/include/tune-zen2.inc b/meta-amd-bsp/conf/machine/include/tune-zen2.inc new file mode 100644 index 00000000..64666204 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/tune-zen2.inc @@ -0,0 +1,19 @@ +DEFAULTTUNE ?= "zen2" + +require conf/machine/include/tune-zen1.inc + +TUNEVALID[zen2] = "Enable AMD x86 (64 bit) Zen 2 Core Architecture specific optimizations" +TUNECONFLICTS[zen2] = "m32 mx32" + +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'zen2', ' -march=znver2', '', d)}" +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'zen2', 'zen2:', '', d)}" + +AVAILTUNES += "zen2" +TUNE_FEATURES:tune-zen2 = "${TUNE_FEATURES:tune-x86-64} zen2" +TUNE_PKGARCH:tune-zen2 = "zen2" +PACKAGE_EXTRA_ARCHS:tune-zen2 = "${PACKAGE_EXTRA_ARCHS:tune-zen1} zen2" +BASE_LIB:tune-zen2 = "lib64" + +# user mode qemu doesn't support zen2 +MACHINE_FEATURES_BACKFILL_CONSIDERED:append = " ${@bb.utils.contains('TUNE_FEATURES', 'zen2', 'qemu-usermode', '', d)}" + diff --git a/meta-amd-bsp/conf/machine/include/tune-zen3.inc b/meta-amd-bsp/conf/machine/include/tune-zen3.inc new file mode 100644 index 00000000..81f6b507 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/tune-zen3.inc @@ -0,0 +1,19 @@ +DEFAULTTUNE ?= "zen3" + +require conf/machine/include/tune-zen2.inc + +TUNEVALID[zen3] = "Enable AMD x86 (64 bit) Zen 3 Core Architecture specific optimizations" +TUNECONFLICTS[zen3] = "m32 mx32" + +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'zen3', ' -march=znver3', '', d)}" +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'zen3', 'zen3:', '', d)}" + +AVAILTUNES += "zen3" +TUNE_FEATURES:tune-zen3 = "${TUNE_FEATURES:tune-x86-64} zen3" +TUNE_PKGARCH:tune-zen3 = "zen3" +PACKAGE_EXTRA_ARCHS:tune-zen3 = "${PACKAGE_EXTRA_ARCHS:tune-zen2} zen3" +BASE_LIB:tune-zen3 = "lib64" + +# user mode qemu doesn't support zen3 +MACHINE_FEATURES_BACKFILL_CONSIDERED:append = " ${@bb.utils.contains('TUNE_FEATURES', 'zen3', 'qemu-usermode', '', d)}" + diff --git a/meta-amd-bsp/conf/machine/include/wallaby.inc b/meta-amd-bsp/conf/machine/include/wallaby.inc new file mode 100644 index 00000000..8f8da791 --- /dev/null +++ b/meta-amd-bsp/conf/machine/include/wallaby.inc @@ -0,0 +1,7 @@ +require conf/machine/include/x86/x86-base.inc + +SERIAL_CONSOLES = "115200;ttyS4 115200;ttyS5" + +APPEND += "console=tty0 console=ttyS4,115200n8" + +MACHINE_FEATURES += "efi" |