Age | Commit message (Collapse) | Author |
|
Add new QEMU BSP for a Arm Cortex-A15 system and use this as qemuarm,
moving the old armv5te Versatile PB based machine to qemuarmv5.
The new machine uses the QEMU virt machine type, which should be
faster to emulate and updates the qemuarm support to a modern
architecture.
Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Integrating Richard Purdie's kernel patch to fix systemtap on arm:
[
arm/Makefile: Fix systemtap
Currently systemtap fails to operate correctly on armv7 systems such as beaglebone and
soon, qemuarm.
root@qemuarm:/usr/src/kernel# env -uARCH -uKBUILD_EXTMOD -uCROSS_COMPILE -uKBUILD_IMAGE -uKCONFIG_CONFIG -uINSTALL_PATH -uLD_LIBRARY_PATH PATH=/usr/bin:/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin make -C /lib/modules/4.19.19-yocto-standard/build M=/tmp/staptcNU6M modules CONFIG_DEBUG_INFO= CONFIG_STACK_VALIDATION= ARCH=arm stap_4321_src.i --no-print-directory -j2 V=1
test -e include/generated/autoconf.h -a -e include/config/auto.conf || ( \
echo >&2; \
echo >&2 " ERROR: Kernel configuration is invalid."; \
echo >&2 " include/generated/autoconf.h or include/config/auto.conf are missing.";\
echo >&2 " Run 'make oldconfig && make prepare' on kernel src to fix it."; \
echo >&2 ; \
/bin/false)
mkdir -p /tmp/staptcNU6M/.tmp_versions ; rm -f /tmp/staptcNU6M/.tmp_versions/*
make -f ./scripts/Makefile.build obj=/tmp/staptcNU6M
(cat /dev/null; echo kernel//tmp/staptcNU6M/stap_4321.ko;) > /tmp/staptcNU6M/modules.order
gcc -Wp,-MD,/tmp/staptcNU6M/.stap_4321_src.o.d -nostdinc -isystem /usr/lib/gcc/arm-poky-linux-gnueabi/8.3.0/include -I./arch/arm/include -I./arch/arm/include/generated -I./include -I./arch/arm/include/uapi -I./arch/arm/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -DCC_HAVE_ASM_GOTO -fno-dwarf2-cfi-asm -fno-omit-frame-pointer -mapcs -mno-sched-prolog -fno-ipa-sra -mabi=aapcs-linux -mfpu=vfp -funwind-tables -marm -Wa,-mno-warn-deprecated -D__LINUX_ARM_ARCH__=7 -march=armv5t -Wa,-march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-int-in-bool-context -Os -Wno-maybe-uninitialized --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -Wdeclaration-after-statement -Wno-pointer-sign -Wno-stringop-truncation -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -fmacro-prefix-map=./= -Wno-packed-not-aligned -Iinclude2/asm/mach-default -I/lib/modules/4.19.19-yocto-standard/build -include /tmp/staptcNU6M/stapconf_4321.h -D "STP_NO_VELREL_CHECK" -freorder-blocks -fasynchronous-unwind-tables -Wframe-larger-than=512 -fno-ipa-icf -Wno-unused -Wno-tautological-compare -Werror -I/usr/share/systemtap/runtime -DMODULE -DKBUILD_BASENAME='"stap_4321_src"' -DKBUILD_MODNAME='"stap_4321"' -c -o /tmp/staptcNU6M/stap_4321_src.o /tmp/staptcNU6M/stap_4321_src.c
/tmp/ccaE9CMG.s: Assembler messages:
/tmp/ccaE9CMG.s:49: Error: selected processor does not support `dmb ish' in ARM mode
/tmp/ccaE9CMG.s:52: Error: architectural extension `mp' is not allowed for the current b
(which was from running the stap command with -v -v -v -k and then being able to run the command individually)
Note that it says armv5t above.
That comes from the code this patch changes
root@qemuarm:/usr/src/kernel# gcc -march=armv7-a /tmp/staptcNU6M/stap_4321_aux_0.c
cc1: error: -mfloat-abi=hard: selected processor lacks an FPU
which makes me wonder if cc-option fails unless -mfpu-vfp is on the commandline too.
Since we have a gcc which accepts the armv7-a arch, just remove the cc-option
wrapper unconditionally here.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We need to enable the arm unwinder for systemtap to work out of the
box:
root@qemuarm:~# stap --disable-cache -DSTP_NO_VERREL_CHECK ./hello.stp
[ 1600.955262] stap_2097: loading out-of-tree module taints kernel.
hello world
This option is useful for much more than systemtap, so it is a good
idea to have on in the base configs. It make the image slightly larger,
but has no performance impacts.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Integrating configuration changes from Kevin Hao for the reference
boards on the 5.0 kernel:
be627e4e386 beaglebone: Switch to the 8250 omap driver
957f6060c25 beaglebone: Update the audio options
ab5298a6983 mpc8315e-rdb: Enable the CONFIG_MTD_PHYSMAP
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Introducing the 5.0 linux-yocto reference kernel, which will become
the "latest" kernel as part of the spring yocto release.
qemu* has been built and sanity tested against this kernel, and it
is suitable to become the default build for the emulated references.
Some minor configuration cleanup was performed, but otherwise, things
are very similar to the 4.19 kernel config:
7fdb966db86 (HEAD -> yocto-5.0) aufs4: kbuild patch
c76b027a8b2 iosched: remove configs for removed legacy io schedules
5d1f8102244 netfilter: drop removed config options
8ff16f508f5 kernel-yocto: 5.0 kernel prep
Feature wise, this is a match for 4.19, with yaffs2 and aufs4 being
kept around for another release. Aufs is scheduled for removal in
the fall release.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|