diff options
Diffstat (limited to 'poky/meta/conf/machine')
21 files changed, 129 insertions, 44 deletions
diff --git a/poky/meta/conf/machine/include/microblaze/arch-microblaze.inc b/poky/meta/conf/machine/include/microblaze/arch-microblaze.inc index eab7171cb..4f58076ac 100644 --- a/poky/meta/conf/machine/include/microblaze/arch-microblaze.inc +++ b/poky/meta/conf/machine/include/microblaze/arch-microblaze.inc @@ -4,35 +4,41 @@ TUNEVALID[microblaze] = "MicroBlaze" MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "microblaze", "microblaze:", "", d)}" +# 64-bit +TUNEVALID[64-bit] = "64-bit MicroBlaze" +TUNECONFLICTS[64-bit] = "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3 v9.4 v9.5 v9.6 v10.0" +MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "64-bit", "microblaze64:", "", d)}" + # Endian TUNEVALID[bigendian] = "Use Microblaze Big Endian" -TUNECONFLICTS[bigendian] += "v10.0" +TUNECONFLICTS[bigendian] = "v10.0" MBPKGARCH_ENDIAN = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", "eb", "el", d)}" -TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "bigendian", "-mbig-endian", "-mlittle-endian", d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}" # General features TUNEVALID[barrel-shift] = "Enable Hardware Barrel Shifter" TUNEVALID[pattern-compare] = "Enable Pattern Compare Instructions" TUNEVALID[reorder] = "Enable Reorder Instructions" -TUNECONFLICTS[reorder] += "v8.00 v8.10 v8.20" +TUNECONFLICTS[reorder] = "v8.00 v8.10 v8.20" # Core configuration tune optimizations TUNEVALID[frequency-optimized] = "Enabling tuning for frequency optimized core (AREA_OPTIMIZED_2)" -TUNECONFLICTS[frequency-optimized] += "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3 v9.4 v9.5 v9.6" +TUNECONFLICTS[frequency-optimized] = "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3 v9.4 v9.5 v9.6" # Feature compiler args -TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "barrel-shift", "-mxl-barrel-shift", "-mno-xl-barrel-shift", d)}" -TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "pattern-compare", "-mxl-pattern-compare", "-mno-xl-pattern-compare", d)}" -TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "frequency-optimized", "-mxl-frequency", "", d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "barrel-shift", " -mxl-barrel-shift", " -mno-xl-barrel-shift", d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "pattern-compare", " -mxl-pattern-compare", " -mno-xl-pattern-compare", d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "frequency-optimized", " -mxl-frequency", "", d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "64-bit", " -m64", "", d)}" # Disable reorder for v8.30 if pattern-compare is not enabled -TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "reorder", \ +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "reorder", \ bb.utils.contains("TUNE_FEATURES", "v8.30", \ bb.utils.contains("TUNE_FEATURES", "pattern-compare", \ - "-mxl-reorder", "-mno-xl-reorder", d), \ - "-mxl-reorder", d), "-mno-xl-reorder", d)}" + " -mxl-reorder", " -mno-xl-reorder", d), \ + " -mxl-reorder", d), " -mno-xl-reorder", d)}" # Feature package architecture formatting MBPKGARCH_TUNE = "" @@ -45,9 +51,12 @@ MBPKGARCH_TUNE .= "${@bb.utils.contains("TUNE_FEATURES", "frequency-optimized", require conf/machine/include/microblaze/feature-microblaze-versions.inc require conf/machine/include/microblaze/feature-microblaze-math.inc -# Architecture name, either 'microblazeeb' or 'microblazeel' depending on endianess -TUNE_ARCH = "microblaze${@bb.utils.contains("TUNE_FEATURES", "bigendian", "eb", "el", d)}" +# Architecture name, either 'microblaze' or 'microblazeel' depending on endianess +TUNE_ARCH = "microblaze${@bb.utils.contains("TUNE_FEATURES", "bigendian", "", "el", d)}" + +# Add 64-bit to the PKGARCH if enabled. +MBPKGARCH_SIZE = "${@bb.utils.contains("TUNE_FEATURES", "64-bit", "64", "", d)}" # Package Architecture formatting -TUNE_PKGARCH = "microblaze${MBPKGARCH_ENDIAN}${MBPKGARCH_VERSION}${MBPKGARCH_TUNE}${MBPKGARCH_MATH}" +TUNE_PKGARCH = "microblaze${MBPKGARCH_SIZE}${MBPKGARCH_ENDIAN}${MBPKGARCH_VERSION}${MBPKGARCH_TUNE}${MBPKGARCH_MATH}" diff --git a/poky/meta/conf/machine/include/microblaze/feature-microblaze-math.inc b/poky/meta/conf/machine/include/microblaze/feature-microblaze-math.inc index a31516659..cba0ae67e 100644 --- a/poky/meta/conf/machine/include/microblaze/feature-microblaze-math.inc +++ b/poky/meta/conf/machine/include/microblaze/feature-microblaze-math.inc @@ -13,14 +13,14 @@ TUNECONFLICTS[fpu-hard] = "fpu-soft" TUNECONFLICTS[fpu-hard-extended] = "fpu-soft" # Compiler args -TUNE_CCARGS += "${@bb.utils.contains_any('TUNE_FEATURES', ['multiply-low', 'multiply-high'], '-mno-xl-soft-mul', '-mxl-soft-mul', d)}" -TUNE_CCARGS += "${@bb.utils.contains('TUNE_FEATURES', 'multiply-high', '-mxl-multiply-high', '', d)}" +TUNE_CCARGS .= "${@bb.utils.contains_any('TUNE_FEATURES', ['multiply-low', 'multiply-high'], ' -mno-xl-soft-mul', ' -mxl-soft-mul', d)}" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'multiply-high', ' -mxl-multiply-high', '', d)}" -TUNE_CCARGS += "${@bb.utils.contains('TUNE_FEATURES', 'divide-hard', '-mno-xl-soft-div', '-mxl-soft-div', d)}" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'divide-hard', ' -mno-xl-soft-div', ' -mxl-soft-div', d)}" -TUNE_CCARGS += "${@bb.utils.contains('TUNE_FEATURES', 'fpu-soft', '', '', d)}" -TUNE_CCARGS += "${@bb.utils.contains_any('TUNE_FEATURES', ['fpu-hard', 'fpu-hard-extended'], '-mhard-float', '', d)}" -TUNE_CCARGS += "${@bb.utils.contains('TUNE_FEATURES', 'fpu-hard-extended', '-mxl-float-convert -mxl-float-sqrt', '', d)}" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'fpu-soft', '', '', d)}" +TUNE_CCARGS .= "${@bb.utils.contains_any('TUNE_FEATURES', ['fpu-hard', 'fpu-hard-extended'], ' -mhard-float', '', d)}" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'fpu-hard-extended', ' -mxl-float-convert -mxl-float-sqrt', '', d)}" # Set target fpu (bitbake known target) to soft or hard (basic or extended) TARGET_FPU = "${@bb.utils.contains_any('TUNE_FEATURES', 'fpu-hard fpu-hard-extended', 'fpu-hard', 'fpu-soft', d)}" diff --git a/poky/meta/conf/machine/include/microblaze/feature-microblaze-versions.inc b/poky/meta/conf/machine/include/microblaze/feature-microblaze-versions.inc index 955674fff..5c37f49ab 100644 --- a/poky/meta/conf/machine/include/microblaze/feature-microblaze-versions.inc +++ b/poky/meta/conf/machine/include/microblaze/feature-microblaze-versions.inc @@ -44,6 +44,7 @@ TUNEVALID[v9.4] = "MicroBlaze version 9.4" TUNEVALID[v9.5] = "MicroBlaze version 9.5" TUNEVALID[v9.6] = "MicroBlaze version 9.6" TUNEVALID[v10.0] = "MicroBlaze version 10.0" +TUNEVALID[v11.0] = "MicroBlaze version 11.0" # Version conflict matrix TUNECONFLICTS[v8.00] = "" @@ -60,8 +61,9 @@ TUNECONFLICTS[v9.4] = "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3" TUNECONFLICTS[v9.5] = "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3 v9.4" TUNECONFLICTS[v9.6] = "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3 v9.4 v9.5" TUNECONFLICTS[v10.0] = "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3 v9.4 v9.5 v9.6" +TUNECONFLICTS[v11.0] = "v8.00 v8.10 v8.20 v8.30 v8.40 v8.50 v9.0 v9.1 v9.2 v9.3 v9.4 v9.5 v9.6 v10.0" # Version flags -TUNE_CCARGS += "-mcpu=${@microblaze_current_version(d, True)}" -MBPKGARCH_VERSION = "-${@microblaze_current_version(d)}" +TUNE_CCARGS += "${@'-mcpu=%s' % (microblaze_current_version(d, True)) if microblaze_current_version(d, True) != '' else ''}" +MBPKGARCH_VERSION = "${@'-%s' % (microblaze_current_version(d, True)) if microblaze_current_version(d, True) != '' else ''}" diff --git a/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc b/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc index 8c0c94304..ef18e9ac8 100644 --- a/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc +++ b/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc @@ -15,7 +15,8 @@ TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endia TUNEVALID[m32] = "Power ELF32 standard ABI" TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'm32', ' -m32', '', d)}" -TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'm32', 'powerpc', '', d)}" +TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'm32', 'powerpc${ENDIAN_SFX}', '', d)}" +ENDIAN_SFX = "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', '', 'le', d)}" TUNEVALID[fpu-hard] = "Use hardware FPU." TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'fpu-hard', ' -mhard-float', '', d)}" diff --git a/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc b/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc index 4bc598308..cf5c3ef8e 100644 --- a/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc +++ b/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc @@ -5,7 +5,7 @@ require conf/machine/include/powerpc/arch-powerpc.inc TUNEVALID[m64] = "Power ELF64 standard ABI" TUNECONFLICTS[m64] = "m32 nf" TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'm64', ' -m64', '', d)}" -TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', [ 'm64' ], 'powerpc64', '', d)}" +TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', [ 'm64' ], 'powerpc64${ENDIAN_SFX}', '', d)}" # musl only supports elfv2 ABI for ppc64 TUNE_CCARGS .= "${@['', ' -mabi=elfv2']['libc-musl' in d.getVar('OVERRIDES').split(':')]}" diff --git a/poky/meta/conf/machine/include/qemu.inc b/poky/meta/conf/machine/include/qemu.inc index 5050e4106..8dedb1a42 100644 --- a/poky/meta/conf/machine/include/qemu.inc +++ b/poky/meta/conf/machine/include/qemu.inc @@ -9,7 +9,7 @@ XSERVER ?= "xserver-xorg \ xf86-video-fbdev \ " -MACHINE_FEATURES = "alsa bluetooth usbgadget screen" +MACHINE_FEATURES = "alsa bluetooth usbgadget screen vfat" MACHINEOVERRIDES =. "qemuall:" diff --git a/poky/meta/conf/machine/include/qemuboot-mips.inc b/poky/meta/conf/machine/include/qemuboot-mips.inc index 978820a2e..f1f7c2ae2 100644 --- a/poky/meta/conf/machine/include/qemuboot-mips.inc +++ b/poky/meta/conf/machine/include/qemuboot-mips.inc @@ -5,3 +5,6 @@ QB_KERNEL_CMDLINE_APPEND = "console=ttyS0 console=tty" QB_OPT_APPEND = "-show-cursor -usb -device usb-tablet" # Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0" + +# For graphics to work we need to define the VGA device as well as the necessary USB devices +QB_OPT_APPEND += "-vga std" diff --git a/poky/meta/conf/machine/include/qemuboot-x86.inc b/poky/meta/conf/machine/include/qemuboot-x86.inc index 495418fa0..5dcc8b6f6 100644 --- a/poky/meta/conf/machine/include/qemuboot-x86.inc +++ b/poky/meta/conf/machine/include/qemuboot-x86.inc @@ -8,9 +8,8 @@ QB_CPU_KVM_x86-64 = "-cpu core2duo" QB_AUDIO_DRV = "alsa" QB_AUDIO_OPT = "-soundhw ac97,es1370" -QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=${UVESA_MODE} oprofile.timer=1 uvesafb.task_timeout=-1" +QB_KERNEL_CMDLINE_APPEND = "oprofile.timer=1" QB_OPT_APPEND = "-show-cursor -usb -device usb-tablet" # Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0" -UVESA_MODE ?= "640x480-32" diff --git a/poky/meta/conf/machine/include/riscv/arch-riscv.inc b/poky/meta/conf/machine/include/riscv/arch-riscv.inc index 19f8f3e21..e3dbef7fe 100644 --- a/poky/meta/conf/machine/include/riscv/arch-riscv.inc +++ b/poky/meta/conf/machine/include/riscv/arch-riscv.inc @@ -4,7 +4,13 @@ DEFAULTTUNE ?= "riscv64" TUNE_ARCH = "${TUNE_ARCH_tune-${DEFAULTTUNE}}" TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}" -TUNE_CCARGS .= "" +TUNE_CCARGS_append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv64nf', ' -mabi=lp64', ' ', d)}" +TUNE_CCARGS_append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv32nf', ' -mabi=ilp32', ' ', d)}" # QEMU usermode fails with invalid instruction error (For riscv32) MACHINE_FEATURES_BACKFILL_CONSIDERED_append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv32', ' qemu-usermode', '', d)}" + +# Fix: ld: unrecognized option '--hash-style=sysv' +LINKER_HASH_STYLE_libc-newlib = "" +# Fix: ld: unrecognized option '--hash-style=gnu' +LINKER_HASH_STYLE_libc-baremetal = "" diff --git a/poky/meta/conf/machine/include/riscv/tune-riscv.inc b/poky/meta/conf/machine/include/riscv/tune-riscv.inc index 25d046349..741eeb34d 100644 --- a/poky/meta/conf/machine/include/riscv/tune-riscv.inc +++ b/poky/meta/conf/machine/include/riscv/tune-riscv.inc @@ -3,10 +3,14 @@ require conf/machine/include/riscv/arch-riscv.inc TUNEVALID[riscv64] = "Enable 64-bit RISC-V optimizations" TUNEVALID[riscv32] = "Enable 32-bit RISC-V optimizations" +TUNEVALID[riscv64nf] = "Enable 64-bit RISC-V optimizations no floating point" +TUNEVALID[riscv32nf] = "Enable 32-bit RISC-V optimizations no floating point" + TUNEVALID[bigendian] = "Big endian mode" -AVAILTUNES += "riscv64 riscv32" +AVAILTUNES += "riscv64 riscv32 riscv64nf riscv32nf" +# Default TUNE_FEATURES_tune-riscv64 = "riscv64" TUNE_ARCH_tune-riscv64 = "riscv64" TUNE_PKGARCH_tune-riscv64 = "riscv64" @@ -17,3 +21,13 @@ TUNE_ARCH_tune-riscv32 = "riscv32" TUNE_PKGARCH_tune-riscv32 = "riscv32" PACKAGE_EXTRA_ARCHS_tune-riscv32 = "riscv32" +# No float +TUNE_FEATURES_tune-riscv64nf = "${TUNE_FEATURES_tune-riscv64} riscv64nf" +TUNE_ARCH_tune-riscv64nf = "riscv64" +TUNE_PKGARCH_tune-riscv64nf = "riscv64" +PACKAGE_EXTRA_ARCHS_tune-riscv64nf = "riscv64nf" + +TUNE_FEATURES_tune-riscv32nf = "${TUNE_FEATURES_tune-riscv32} riscv32nf" +TUNE_ARCH_tune-riscv32nf = "riscv32" +TUNE_PKGARCH_tune-riscv32nf = "riscv32" +PACKAGE_EXTRA_ARCHS_tune-riscv32nf = "riscv32nf" diff --git a/poky/meta/conf/machine/include/tune-arm1136jf-s.inc b/poky/meta/conf/machine/include/tune-arm1136jf-s.inc index b25995d49..173cb468e 100644 --- a/poky/meta/conf/machine/include/tune-arm1136jf-s.inc +++ b/poky/meta/conf/machine/include/tune-arm1136jf-s.inc @@ -10,7 +10,7 @@ AVAILTUNES += "arm1136jfs arm1136jfshf" ARMPKGARCH_tune-arm1136jfs = "arm1136jfs" ARMPKGARCH_tune-arm1136jfshf = "arm1136jfs" # mcpu is used so don't use armv6 as we don't want march -TUNE_FEATURES_tune-arm1136jfs = "arm arm1136jfs" +TUNE_FEATURES_tune-arm1136jfs = "arm vfp arm1136jfs" TUNE_FEATURES_tune-arm1136jfshf = "${TUNE_FEATURES_tune-arm1136jfs} callconvention-hard" PACKAGE_EXTRA_ARCHS_tune-arm1136jfs = "${PACKAGE_EXTRA_ARCHS_tune-armv6} arm1136jfs-vfp" PACKAGE_EXTRA_ARCHS_tune-arm1136jfshf = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf} arm1136jfshf-vfp" diff --git a/poky/meta/conf/machine/include/tune-arm1176jz-s.inc b/poky/meta/conf/machine/include/tune-arm1176jz-s.inc index c741e8052..a63d58569 100644 --- a/poky/meta/conf/machine/include/tune-arm1176jz-s.inc +++ b/poky/meta/conf/machine/include/tune-arm1176jz-s.inc @@ -9,7 +9,7 @@ MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'arm1176jzs', 'armv6: AVAILTUNES += "arm1176jzs" ARMPKGARCH_tune-arm1176jzs = "arm1176jzs" TUNE_FEATURES_tune-arm1176jzs = "arm thumb arm1176jzs" -PACKAGE_EXTRA_ARCHS_tune-arm1176jzs = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb-novfp} arm1176jzs arm1176jzst" +PACKAGE_EXTRA_ARCHS_tune-arm1176jzs = "${PACKAGE_EXTRA_ARCHS_tune-armv6t-novfp} arm1176jzs arm1176jzst" AVAILTUNES += "arm1176jzs-be" ARMPKGARCH_tune-arm1176jzs-be = "${ARMPKGARCH_tune-arm1176jzs}" diff --git a/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc new file mode 100644 index 000000000..f208b98e3 --- /dev/null +++ b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc @@ -0,0 +1,23 @@ +DEFAULTTUNE ?= "cortexa72-cortexa53" + +require conf/machine/include/arm/arch-armv8a.inc + +TUNEVALID[cortexa72-cortexa53] = "Enable big.LITTLE Cortex-A72.Cortex-A53 specific processor optimizations" + +TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" + +MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", "cortexa72-cortexa53:", "" ,d)}" + +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", " -mtune=cortex-a72.cortex-a53", "", d)}" + +# cortexa72.cortexa53 implies crc support +AVAILTUNES += "cortexa72-cortexa53 cortexa72-cortexa53-crypto" +ARMPKGARCH_tune-cortexa72-cortexa53 = "cortexa72-cortexa53" +ARMPKGARCH_tune-cortexa72-cortexa53-crypto = "cortexa72-cortexa53" +TUNE_FEATURES_tune-cortexa72-cortexa53 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa72-cortexa53" +TUNE_FEATURES_tune-cortexa72-cortexa53-crypto = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa72-cortexa53" +PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa72-cortexa53" +PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72-cortexa53 cortexa72-cortexa53-crypto" +BASE_LIB_tune-cortexa72-cortexa53 = "lib64" +BASE_LIB_tune-cortexa72-cortexa53-crypto = "lib64" + diff --git a/poky/meta/conf/machine/include/tune-power9.inc b/poky/meta/conf/machine/include/tune-power9.inc new file mode 100644 index 000000000..81d6e8e9b --- /dev/null +++ b/poky/meta/conf/machine/include/tune-power9.inc @@ -0,0 +1,35 @@ +DEFAULTTUNE ?= "ppc64p9le" + +require conf/machine/include/powerpc/arch-powerpc64.inc + +TUNEVALID[power9] = "Enable IBM Power9 specific processor optimizations" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'power9', ' -mcpu=power9', '', d)}" + +AVAILTUNES += "ppcp9 ppc64p9 ppcp9le ppc64p9le" + +TUNE_FEATURES_tune-ppcp9 = "m32 fpu-hard power9 altivec bigendian" +BASE_LIB_tune-ppcp9 = "lib" +TUNE_PKGARCH_tune-ppcp9 = "ppcp9" +PACKAGE_EXTRA_ARCHS_tune-ppcp9 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppcp9" + +TUNE_FEATURES_tune-ppc64p9 = "m64 fpu-hard power9 altivec bigendian" +BASE_LIB_tune-ppc64p9 = "lib64" +TUNE_PKGARCH_tune-ppc64p9 = "ppc64p9" +PACKAGE_EXTRA_ARCHS_tune-ppc64p9 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64} ppc64p9" + +TUNE_FEATURES_tune-ppcp9le = "m32 fpu-hard power9 altivec" +BASE_LIB_tune-ppcp9le = "lib" +TUNE_PKGARCH_tune-ppcp9le = "ppcp9le" +PACKAGE_EXTRA_ARCHS_tune-ppcp9le = "${PACKAGE_EXTRA_ARCHS_tune-powerpcle} ppcp9le" + +TUNE_FEATURES_tune-ppc64p9le = "m64 fpu-hard power9 altivec" +BASE_LIB_tune-ppc64p9le = "lib64" +TUNE_PKGARCH_tune-ppc64p9le = "ppc64p9le" +PACKAGE_EXTRA_ARCHS_tune-ppc64p9le = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64le} ppc64p9le" + +# glibc configure options to get power9 specific library +GLIBC_EXTRA_OECONF_powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'power9', '--with-cpu=power9', '', d)}" +GLIBC_EXTRA_OECONF_powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'power9', '--with-cpu=power9', '', d)}" + +# QEMU usermode fails with invalid instruction error +MACHINE_FEATURES_BACKFILL_CONSIDERED_append = "${@bb.utils.contains('TUNE_FEATURES', 'power9', ' qemu-usermode', '', d)}" diff --git a/poky/meta/conf/machine/include/x86-base.inc b/poky/meta/conf/machine/include/x86-base.inc index 0227f3c28..a72714711 100644 --- a/poky/meta/conf/machine/include/x86-base.inc +++ b/poky/meta/conf/machine/include/x86-base.inc @@ -8,7 +8,7 @@ MACHINE_FEATURES += "screen keyboard pci usbhost ext2 ext3 x86 \ acpi serial usbgadget alsa" -IMAGE_FSTYPES ?= "hddimg" +IMAGE_FSTYPES ?= "wic" KERNEL_IMAGETYPE ?= "bzImage" @@ -18,7 +18,7 @@ SERIAL_CONSOLES ?= "115200;ttyS0" # kernel-related variables # PREFERRED_PROVIDER_virtual/kernel ??= "linux-yocto" -PREFERRED_VERSION_linux-yocto ??= "5.2%" +PREFERRED_VERSION_linux-yocto ??= "5.4%" # # XSERVER subcomponents, used to build the XSERVER variable diff --git a/poky/meta/conf/machine/qemuarm.conf b/poky/meta/conf/machine/qemuarm.conf index 26f40b141..367fcef01 100644 --- a/poky/meta/conf/machine/qemuarm.conf +++ b/poky/meta/conf/machine/qemuarm.conf @@ -11,7 +11,7 @@ SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0" # For runqemu QB_SYSTEM_NAME = "qemu-system-arm" -QB_MACHINE = "-machine virt" +QB_MACHINE = "-machine virt,highmem=off" QB_CPU = "-cpu cortex-a15" # Standard Serial console QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0" diff --git a/poky/meta/conf/machine/qemuarm64.conf b/poky/meta/conf/machine/qemuarm64.conf index ec2a887bd..1e2d4f018 100644 --- a/poky/meta/conf/machine/qemuarm64.conf +++ b/poky/meta/conf/machine/qemuarm64.conf @@ -13,7 +13,7 @@ SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0" QB_SYSTEM_NAME = "qemu-system-aarch64" QB_MACHINE = "-machine virt" QB_CPU = "-cpu cortex-a57" -QB_CPU_KVM = "-cpu host" +QB_CPU_KVM = "-cpu host -machine gic-version=3" # Standard Serial console QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0" # For graphics to work we need to define the VGA device as well as the necessary USB devices diff --git a/poky/meta/conf/machine/qemuarmv5.conf b/poky/meta/conf/machine/qemuarmv5.conf index fb4789fda..e7f24fe1e 100644 --- a/poky/meta/conf/machine/qemuarmv5.conf +++ b/poky/meta/conf/machine/qemuarmv5.conf @@ -4,7 +4,6 @@ require conf/machine/include/qemu.inc require conf/machine/include/tune-arm926ejs.inc -#require conf/machine/include/tune-arm1136jf-s.inc KERNEL_IMAGETYPE = "zImage" @@ -17,7 +16,7 @@ QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0,115200 console=tty" QB_OPT_APPEND = "-show-cursor -usb -device usb-tablet" # Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0" -PREFERRED_VERSION_linux-yocto ??= "5.2%" +PREFERRED_VERSION_linux-yocto ??= "5.4%" QB_DTB = "${@oe.utils.version_less_or_equal('PREFERRED_VERSION_linux-yocto', '4.7', '', 'zImage-versatile-pb.dtb', d)}" KMACHINE_qemuarmv5 = "qemuarm" diff --git a/poky/meta/conf/machine/qemuriscv64.conf b/poky/meta/conf/machine/qemuriscv64.conf index b45fdd556..a753af057 100644 --- a/poky/meta/conf/machine/qemuriscv64.conf +++ b/poky/meta/conf/machine/qemuriscv64.conf @@ -4,6 +4,8 @@ require conf/machine/include/riscv/qemuriscv.inc +XVISOR_PLAT = "riscv/virt64" + EXTRA_IMAGEDEPENDS += "u-boot" UBOOT_MACHINE = "qemu-riscv64_smode_defconfig" UBOOT_ELF = "u-boot" diff --git a/poky/meta/conf/machine/qemux86-64.conf b/poky/meta/conf/machine/qemux86-64.conf index 648cf2fe8..db9004ee3 100644 --- a/poky/meta/conf/machine/qemux86-64.conf +++ b/poky/meta/conf/machine/qemux86-64.conf @@ -37,10 +37,6 @@ MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d" MACHINE_EXTRA_RRECOMMENDS = "kernel-module-snd-ens1370 kernel-module-snd-rawmidi" -KERNEL_MODULE_AUTOLOAD += "uvesafb" -KERNEL_MODULE_PROBECONF += "uvesafb" -module_conf_uvesafb = "options uvesafb mode_option=${UVESA_MODE}" - WKS_FILE ?= "qemux86-directdisk.wks" do_image_wic[depends] += "syslinux:do_populate_sysroot syslinux-native:do_populate_sysroot mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot" diff --git a/poky/meta/conf/machine/qemux86.conf b/poky/meta/conf/machine/qemux86.conf index 8e0da8207..7e6723b88 100644 --- a/poky/meta/conf/machine/qemux86.conf +++ b/poky/meta/conf/machine/qemux86.conf @@ -34,10 +34,6 @@ MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d" MACHINE_EXTRA_RRECOMMENDS = "kernel-module-snd-ens1370 kernel-module-snd-rawmidi" -KERNEL_MODULE_AUTOLOAD += "uvesafb" -KERNEL_MODULE_PROBECONF += "uvesafb" -module_conf_uvesafb = "options uvesafb mode_option=${UVESA_MODE}" - WKS_FILE ?= "qemux86-directdisk.wks" do_image_wic[depends] += "syslinux:do_populate_sysroot syslinux-native:do_populate_sysroot mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot" |