Commit Graph

258 Commits

Author SHA1 Message Date
Romain Naour
2a7982ee52 configs/qemu_sh4{, eb}-r2d: remove kernel patch "restore the old sh-sci driver behaviour"
This reverts commit f7a887c368 and
23aee3eac4 since the kernel patch
is not needed as soon as qemu >= 3.1.0 is used with a kernel >=
4.11-rc1.

The qemu emulation of sh-sci driver was fixed by adding basic
timeout handling for 9600 bps [1].

[1] https://git.qemu.org/?p=qemu.git;a=commit;h=71bb4ce1b5592cdc03abc48cdf4ecb15b2db81a0

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-04-27 22:26:40 +02:00
Romain Naour
7dcb9e98b5 board/qemu: remove the Qemu version from readme.txt
The Qemu version present in readme.txt files was needed when
the Buildroot's Qemu defconfig was tested manually using the
qemu-system-<arch> binary already present on the host.

This information is now incorrect since we are using host-qemu
package, currently at 4.2.0 version, to do a runtime test since
0c79350638.

For m68k-q800, we can use the upstream qemu since 4.2.0 release
[1].

So, remove this line from the readme.txt.

[1] https://www.qemu.org/2019/12/13/qemu-4-2-0/

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-04-26 13:44:21 +02:00
Romain Naour
80a044703a configs/qemu: update defconfigs to Linux 5.4.35
Linux version are changed to the new LTS kernel 5.4.35 for all qemu
defconfigs, except for riscv and csky. Thoses defconfigs are left
unchanged because they require either a custom Linux repository
or a specific kernel header version causing some difficulties when
upgrading to 5.4.35.

Update the nios2-10m50 linux.fragment to update the .dtb build directory
due to a change in kernel 4.20 [1]:

    nios2: build .dtb files in dts directory

    Align nios2 with other architectures which build the dtb files in the
    same directory as the dts files. This is also in line with most other
    build targets which are located in the same directory as the source.
    This move will help enable the 'dtbs' target which builds all the dtbs
    regardless of kernel config.

    This transition could break some scripts if they expect dtb files in
    the old location.

For x86 and x86_64 kernel, add the CONFIG_PCI symbol due a change in kernel
5.0 [2]. The option was previously enabled by default (default y).

    PCI: consolidate PCI config entry in drivers/pci

    There is no good reason to duplicate the PCI menu in every architecture.
    Instead provide a selectable HAVE_PCI symbol that indicates availability
    of PCI support, and a FORCE_PCI symbol to for PCI on and the handle the
    rest in drivers/pci.

Update the kernel of ppc-mac99 defconfig added in Buildroot 2019.08.

This version bump was tested on gitlab [4] using the newly introduced
boot-qemu-image.py script [5].

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=118864869805123bf82d666062542440a0fda5dd
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=eb01d42a77785ff96b6e66a2a2e7027fc6d78e4a
[3] a8fac3fcfc
[4] https://gitlab.com/kubu93/buildroot/pipelines/139819874
[5] 0c79350638

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-04-25 22:19:29 +02:00
Romain Naour
27029c7313 board/qemu/microblaze: convert kernel patch to git format
Convert the patch for microblaze kernel added for kernel 3.14 by
Waldemar to git format.

Note: the Waldemar Sob line is missing in the original patch:
fa27985483

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-04-25 22:19:20 +02:00
Romain Naour
575493c186 board/qemu: add post-image script for gitlab qemu testing
This commit add a post-image script to be used by each qemu board
defconfig in order to generate start-qemu.sh in BINARIES_DIR. The
start-qemu.sh script can be used by Buildroot user to start Qemu
or by a gitlab CI.

To find the correct qemu command line, we use the second post script
argument which must contain "$(BR2_DEFCONFIG)"

    BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)"

The post-image script expect something like
"/path/to/qemu_aarch64_virt_defconfig" in BR2_DEFCONFIG.

Doing a basename allow to retrieve the name of the defconfig file that
should match on on the "tag" previously introduced in readme.txt files.

For running in the CI, as well as running from a remote machine (e.g. on
a remote build machine), it is better not to start in graphical mode,
but only with the serial line attached to the terminal. The post-build
script prepares two sets of arguments for each case, graphical or
serial, and stores them in the start-qemu.sh script, which then decodes
which to use, based on an argument on the command line (default is still
graphical)

sh4/sh4eb needs a special handling by adding "-serial stdio -display
none"; others only require "-nographics". Some qemu command lines
already contain "-serial stdio", but that does not play nicely with
"-nographics", we remove that when going serial-only (although this
might seem counter-intuitive).

Finally, we ensure the script uses our qemu-system (if it was built).

Signed-off-by: Romain Naour <romain.naour@smile.fr>
[yann.morin.1998@free.fr:
  - drop the knowledge about gitlab-ci, replace with an argument to
    pass to start-qemu.sh
  - adapt the commit log accordingly
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-04-13 21:51:12 +02:00
Romain Naour
011206b2bf board/qemu: add defconfig file name as tag after the qemu command line
This commit add the name of the Qemu defconfig file after each
qemu command line in order to retrieve it easily.

Since a readme.txt can be shared between several Qemu defconfig, we
need at least one qemu command line in readme.txt for each defconfig.

For now, ignore the qemu_arm_vexpress_tz_defconfig since it fail to build
due to python script issue [1]. Anyway the arm vexpress boot is tested
with qemu_arm_vexpress_defconfig.

[1] http://lists.busybox.net/pipermail/buildroot/2020-February/273738.html

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-04-13 21:51:12 +02:00
Romain Naour
278f908d55 configs/qemu{x86, x86_64}: add a serial console
The current Buildroot defconfigs for qemu_x86 and qemu_x86_64
instantiate a console on tty1, which appears on QEMU's
graphical window. Add a console on the serial port (ttyS0) to
be used later for gitlab testing.

This change is need since the script used for gitlab testing
needs to use a serial output with pexpect.

This change is similar to the one made for raspberrypi [1] to
handle HDMI and serial console:

This requires three changes:
 1. have two 'console=' entries in the kernel command line: tty1,
    then ttyS0;
 2. change BR2_TARGET_GENERIC_GETTY_PORT to "console", so it starts
    a getty on the last console= passed to the kernel, ttyS0;
 3. add a new getty on tty1 to the generated inittab.

Step 2 is actually obtained by removing BR2_TARGET_GENERIC_GETTY_PORT
entirely from the defconfigs, since "console" is the default value.

Step 3 requires a post-build script since the Buildroot makefiles can
configure only one console.

Note: instead of simply adding a new getty on ttyS0 (which would
work) this patch actually changes BR2_TARGET_GENERIC_GETTY_PORT to
instantiate a console on UART, then adds back tty1 via
post-build.sh. This is done only to avoid the "GENERIC_SERIAL" comment
where we instantiate a console on QEMU graphical window, then
instantiate a really-serial console on another line.

The result is these two inittab lines:

  console::respawn:/sbin/getty -L  console 0 vt100 # GENERIC_SERIAL
  tty1::respawn:/sbin/getty -L  tty1 0 vt100 # QEMU graphical window

[1] 20878a1017

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-02-16 22:24:56 +01:00
Etienne Carriere
a89a3f662c board/qemu/arm-vexpress-tz: fixup GDB config info
Fixes reference path "../build/optee_os-" to "./output/build/optee-os-"
as package is optee-os and symbol file here is reached from BR top
dir and assuming output in output/.

Updates GDB tool name to arm-linux-gdb.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2019-10-29 22:24:32 +01:00
Etienne Carriere
a0971ec7ec configs/qemu_arm_vexpress_tz: Armv7-A emulation with TrustZone services
This change introduces a Qemu board for an Armv7-A target executing
with OP-TEE secure world services. The target Linux based normal world
embeds the standard minimal filesystem with OP-TEE non-secure components
embedded files from OP-TEE test, examples and benchmark packages.

qemu_arm_vexpress_tz_defconfig differs from qemu_arm_vexpress_defconfig.
Supporting both secure and non-secure worlds on the Arm target mandates
a secure world, here OP-TEE OS, and a bootloader to boot both worlds,
here TF-A (boot/arm-trusted-firmware). Here non-secure Linux kernel is
booted through U-boot

  TF-A bootloader (BL1/BL2) => OP-TEE (BL32) => U-boot (BL33).
  | Executes as secure         | Secure         | Execs as Non-secure
  | Loads BL32/BL33 in RAM     | Jumps to BL33  | Always booted after
  | Jumps to BL32 once done    | as Non-secure  | secure world inits

Vexpress and vexpress-tz defconfigs also differs in that Qemu emulates
a Cortex-A9 in the former and a Cortex-A15 in the later. Cortex-A15
is the Armv7-A CPU used in upstream TF-A and OP-TEE OS packages hence
selected here.

Defconfig adds a fragment to the Linux kernel native configuration to
enable OP-TEE driver support.

Defconfig adds a fragment to the U-Boot native configuration set boot
command, enable semihosting and remove U-Boot persistent environment
storage support.

The defconfig also enables build of the Qemu emulator in case the
system installed Qemu does not yet support CPU TrustZone secure state.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
[Arnout, with the help of Peter: correct spelling mistakes in readme,
 fix U-Boot version to 2019.01, download tarball of TF-A instead of git]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2019-10-27 15:56:16 +01:00
Guo Ren
6e359e26e3 configs/csky_gx6605s: bump kernel to 5.0 and use buildroot toolchain
The most important change is to use the toolchain compiled by
buildroot itself. We also bump kernel to 5.0 with kernel.org.

Gx6605s' PHYS_OFFSET if 0x10000000 and we make qemu and gx6605s the
same to ease maintaince. This PHYS_OFFSET is also OK for 610 qemu.

In this patch we add gx6605s.dts in board/csky, because linux-5.0
doesn't contain gx6605s.dts in its tree.

Signed-off-by: Guo Ren <ren_guo@c-sky.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-08-02 23:42:51 +02:00
Guo Ren
2834df2b4b configs/qemu_cskyXXX_virt: new defconfig
Add C-SKY defconfig for QEMU virt machine.

Signed-off-by: Guo Ren <ren_guo@c-sky.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-08-02 23:42:51 +02:00
Joel Stanley
a8fac3fcfc board: Add PowerPC mac99
PowerPC kernel developers were after a userspace for testing 32-bit
powerpc kernels. This machine both suits that requirement and has
support in qemu. It's also a fairly common piece of 32-bit ppc hardware.

Signed-off-by: Joel Stanley <joel@jms.id.au>
Tested-by: Daniel Axtens <dja@axtens.net>
[Peter: lock kernel/headers to 5.2.4]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-08-01 17:54:47 +02:00
Yann E. MORIN
626c9705d2 board/qemu: ensure root is available before mounting it
On my machine, it happens once in a while that the virtualised machine
boots too fast for the rootfs to be available at the time the kernel
tries to mount it.

For example, board/qemu/arm-vexpress/readme.txt suggested changing
"-smp 1" up to "-smp 4". But doing so here causes a kernel panic:

    VFS: Cannot open root device "mmcblk0" or unknown-block(0,0): error -6
    Please append a correct "root=" boot option; here are the available partitions:
    1f00          131072 mtdblock0
     (driver?)
    1f01           32768 mtdblock1
     (driver?)
    Kernel panic - not syncing: VFS: Unable to mount root fs on
    unknown-block(0,0)

So, add the oh-so-useful 'rootwait' option to all kernel command lines
for qemu defconfigs.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Joel Stanley <joel@jms.id.au>
Cc: Mark Corbin <mark.corbin@embecosm.com>
Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-06-25 22:55:58 +02:00
Alistair Francis
f999379795 configs/qemu_riscv32_virt: update to 5.1 kernel
Update the 32-bit defconfig to use the latest kernel. This requires a
patch to revert a ABI to ensure that the glibc port continues to work.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-06-20 15:56:19 +02:00
Alistair Francis
013d544212 configs/qemu_riscv*_virt: use OpenSBI by default
Use OpenSBI by default instead of riscv-pk (BBL).

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-03-26 14:59:55 +01:00
Alistair Francis
4359e877d3 board/qemu/riscv32-virt: simplify the linux config
Reduce the config fragment to the bare minimum to enable 32-bit
support. This means we are as close as possible to the arch
defconfig.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-03-26 13:26:36 +01:00
Alistair Francis
6939ea5c5d board/qemu/riscv32-virt: convert Linux defconfig into a fragment
Convert the config to the arch defconfig plus a fragment. When this
fragment is applied we will generate the same config as we previously
did.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-03-26 13:26:01 +01:00
Gerome Burlats
fd8a02fd75 configs/qemu: Update defconfigs to Linux 4.19.16
Linux version are changed to 4.19.16 (LTS) for all qemu defconfigs,
except for riscv. riscv defconfigs are left unchanged because they have
a custom Linux repository causing more difficulties when upgrading to
4.19 for riscv32. And for the riscv64, it has been updated recently to
Linux 4.20 by another contributor.

Patch for arm-versatile-nommu is changed into a git format

Add cache attributes for xtensa-lx60-nommu config because the commit
7bb516ca54
added a new config variable for memory cache attribute:
CONFIG_MEMMAP_CACHEATTR

All these updated configs have been built successfully.

Signed-off-by: Gerome Burlats <gerome.burlats@smile.fr>
Cc: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-02-13 08:41:29 +01:00
Gerome Burlats
0203df36ac qemu/aarch64-virt: Emulate cortex-a53 in qemu to match Buildroot config
qemu_aarch64_virt_defconfig (implicitly) specifies cortex-a53, so adjust the
QEMU command line to also emulate a a53 instead of a57.

Also adjust the defconfig to explicitly specify a53 for consistency/clarity.

Signed-off-by: Gerome Burlats <gerome.burlats@smile.fr>
Cc: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-01-27 22:38:45 +01:00
Gwenhael Goavec-Merou
ba9b3399c1 configs/qemu_riscv64_virt_defconfig: bump Linux version
Since riscv64 works with linux default defconfig, this patch drop custom config.

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Tested-by: Mark Corbin <mark.corbin@embecosm.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-01-22 14:46:33 +01:00
Mark Corbin
22322383a7 configs/qemu_riscv32_virt: new defconfig
Add RISC-V 32-bit defconfig for QEMU virt machine.

Tested with QEMU 2.12.1

Signed-off-by: Mark Corbin <mark.corbin@embecosm.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
[Thomas: regenerate .gitlab-ci.yml, update DEVELOPERS file]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-01-06 14:30:11 +01:00
Mark Corbin
52ef63d0bd configs/qemu_riscv64_virt: new defconfig
Add RISC-V 64-bit defconfig for QEMU virt machine.

Tested with QEMU 2.12.1

Signed-off-by: Mark Corbin <mark.corbin@embecosm.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-09-25 21:40:10 +02:00
Romain Naour
23aee3eac4 configs/qemu_sh4eb-r2d: restore the old sh-sci driver behaviour
As for sh4-r2d (little-endian) restore the old sh-sci driver behaviour
for sh4eb-r2d.

Tested with qemu_sh4eb_r2d_defconfig.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-08-05 14:46:29 +02:00
Romain Naour
f7a887c368 configs/qemu_sh4-r2d: restore the old sh-sci driver behaviour
This reverts commit 18e8cf159177100e69d528293f8cf6875c0b1bca (kernel)

The last Qemu kernel update [1] introduced a regresion in sh4 SCIF
serial device. Some keyboard presses are very slow to be taken into
account, perhaps not even taken into account at all. This would
explain why our test infrastructure doesn’t manage to login as root
[2][3][4].

git bisect reported a kernel patch from 4.11, increasing RX FIFO
trigger defaults value for sh-sci (H)SCIF. The kernel patch itself
looks good but the Qemu emulation is not ready to handle this new
setting.

>From Qemu (2.12.0): target/sh4/README.sh4
"Configuration of the second serial port (SCIF) is supported. FIFO
handling infrastructure has been started but is not completed yet."

We can't use the first serial port (ttySC0) because it's the second
SH UART that's emulated by Qemu.

In order to be able to test sh4 architecture with newer kernel,
revert to the old behaviour.

[1] 03fb00f217
[2] https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006425
[3] https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006427
[4] https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006426

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-08-05 14:46:21 +02:00
Waldemar Brodkorb
03fb00f217 qemu: update defconfigs to Linux 4.16.7
All linux configs are renamed to a version neutral filename
to avoid further renaming on kernel bumps.

Defconfig               Kernel  Qemu            Network Status
--------------------------------------------------------------
aarch64_virt            4.16.7   2.12.0           YES     OK
arm_versatile           4.16.7   2.12.0           YES     OK
arm_versatile_nommu     4.16.7   2.12.0           YES     OK (3)
arm_vexpress            4.16.7   2.12.0           YES     OK
m68k_mcf5208            4.16.7   2.12.0           YES     OK
m68k_q800               4.16.7   q800-v2.11.0     NO (2)  OK
microblazebe            4.16.7   2.12.0           YES     OK
microblazeel            4.16.7   2.12.0           YES     OK
mips32r2el_malta        4.16.7   2.12.0           YES     OK
mips32r2_malta          4.16.7   2.12.0           YES     OK
mips32r6el_malta        4.16.7   2.12.0           YES     OK
mips32r6_malta          4.16.7   2.12.0           YES     OK
mips64el_malta          4.16.7   2.12.0           YES     OK
mips64_malta            4.16.7   2.12.0           YES     OK
mips64r6el_malta        4.16.7   2.12.0           YES     OK
mips64r6_malta          4.16.7   2.12.0           YES     OK
nios2-10m50             4.16.7   2.12.0           NO      OK
or1k                    4.16.7   2.12.0           NO      OK
ppc_g3beige             4.16.7   2.12.0           YES     OK
ppc_mpc8544ds           4.16.7   2.12.0           YES     OK
ppc_virtex_ml507        4.16.7   2.12.0           NO      OK
ppc64_pseries           4.16.7   2.12.0           YES     OK
ppc64le_pseries         4.16.7   2.12.0           YES     OK
ppc64_e5500             4.16.7   2.12.0           YES     OK
sh4                     4.16.7   2.12.0           YES     OK
sh4eb                   4.16.7   2.12.0           NO (1)  OK
sparc_ss10              4.16.7   2.12.0           YES     OK
sparc64_sun4u           4.16.7   2.12.0           YES     OK
x86                     4.16.7   2.12.0           YES     OK
x86_64                  4.16.7   2.12.0           YES     OK
xtensa_lx60             4.16.7   2.12.0           YES     OK
xtensa_lx60_nommu       4.16.7   2.12.0           YES     OK

(1) - Probably an endian issue with 8139 emulation/driver
(2) - There's a network interface, but enabling it in qemu fails
(3) - Kernel patch required, switched to devicetree usage

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-06-02 22:23:39 +02:00
Matt Weber
dcf5fafe84 qemu_ppc64_e5500_defconfig: convert quotes in readme.txt emulation example
Resolves an error in the way the bootlin toolchain-builder uses
the board/qemu/ppc64-e5500/readme.txt to generate the qemu test
command.

https://github.com/free-electrons/toolchains-builder/blob/master/build.sh#L186

Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-03 12:51:35 +02:00
Matt Weber
dab038d1ac configs/qemu_ppc64_e5500: new defconfig
Adding basic support modeled after the Freescale/NXP T1040RDBD4 board.

This target is used to support testing of the bootlin e5500 toolchain.

Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
[Thomas: update .gitlab-ci.yml.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-02 00:42:59 +02:00
Thomas Petazzoni
5c5f1b0743 configs/qemu_x86_defconfig: remove kernel options that need openssl
Wireless support ends up enabling CONFIG_SYSTEM_TRUSTED_KEYRING, which
requires openssl to be available on the host, so disable wireless
support, which isn't needed in Qemu.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-06 15:25:35 +01:00
Thomas Petazzoni
248161d6fa configs/qemu_x86_64_defconfig: remove kernel options that need openssl/libelf
The ORC unwinder requires libelf to be available on the host, so use
the frame pointer unwinder instead. Using the frame pointer unwinder
is probably good enough in our default Qemu configurations.

Wireless support ends up enabling CONFIG_SYSTEM_TRUSTED_KEYRING, which
requires openssl to be available on the host, so disable wireless
support, which isn't needed in Qemu.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-06 15:25:15 +01:00
Peter Korsgaard
92b8bd0879 Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-05 21:04:14 +01:00
Thomas Petazzoni
11050d908d board/qemu/ppc64le-pseries: make Qemu command similar to ppc64-pseries
In particular:

 - Explicitly specify the CPU to be used, POWER8, which matches
   qemu_ppc64le_pseries_defconfig

 - Use hard disk emulation to access the root filesystem instead of an
   initrd.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-03 17:20:16 +01:00
Thomas Petazzoni
1b554aa849 board/qemu/ppc64le-pseries: put Qemu command on one line
This allows the toolchain building machinery used by
https://toolchains.bootlin.com to automatically re-use this Qemu
command line.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-03 17:19:25 +01:00
Thomas Petazzoni
62e8305358 board/qemu/ppc64le-pseries: use qemu-system-ppc64
qemu-system-ppc64le doesn't necessarily exist: it isn't installed by
Qemu, and only created as a symlink to qemu-system-ppc64 by some
distributions (Ubuntu). Other distributions (Fedora) just have
qemu-system-ppc64.

But qemu-system-ppc64 is capable of running little-endian PPC64
systems, so use this one instead.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-03 17:19:20 +01:00
Vincent Stehlé
fe563efcb1 configs/qemu_aarch64_virt_defconfig: bump kernel to 4.15.2
Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-10 16:16:33 +01:00
Adam Duskett
60f9c9f98b qemu_x86: use kernel 4.15
Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-03 08:25:25 +01:00
Adam Duskett
a952d24b95 qemu_x86_64: use kernel 4.15
Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-03 08:25:04 +01:00
Thomas Petazzoni
1c8dda3e43 Merge branch 'next'
This merges the next branch accumulated during the 2017.11 release
cycle back into the master branch.

A few conflicts had to be resolved:

 - In the DEVELOPERS file, because Fabrice Fontaine was added as a
   developer for libupnp in master, and for libupnp18 in
   next. Resolution is simple: add him for both.

 - linux/Config.in, because we updated the 4.13.x release used by
   default in master, while we moved to 4.14 in next. Resolution: use
   4.14.

 - package/libupnp/libupnp.hash: a hash for the license file was added
   in master, while the package was bumped into next. Resolution: keep
   the hash for the license file, and keep the hash for the newest
   version of libupnp.

 - package/linux-headers/Config.in.host: default version of the kernel
   headers for 4.13 was bumped to the latest 4.13.x in master, but was
   changed to 4.14 in next. Resolution: use 4.14.

 - package/samba4/: samba was bumped to 4.6.11 in master for security
   reasons, but was bumped to 4.7.3 in next. Resolution: keep 4.7.3.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-01 21:56:44 +01:00
Waldemar Brodkorb
913c822e01 qemu-or1k: update to 4.14.x
Or1k support improved, f.e. musl can be tested inside qemu.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-30 11:37:41 +01:00
Thomas Petazzoni
c191e24c33 board/qemu/x86*: use quotes around -append Qemu option value
This helps the toolchains.free-electrons.com build logic re-use
directly the Qemu command lines from this readme.txt file, by having a
-append option similar to the ones used in other readme.txt files.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-27 22:37:34 +01:00
Thomas Petazzoni
e4648f2888 board/qemu/ppc64-pseries: adjust Qemu command line
This helps the toolchains.free-electrons.com build logic re-use
directly the Qemu command lines from this readme.txt file, by having a
-append option similar to the ones used in other readme.txt files.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-27 22:37:31 +01:00
Peter Korsgaard
c74a484fd1 configs/qemu_aarch64_virt_defconfig: build and use ext4 rootfs
The "virt" machine supports disk emulation, so use a ext4 rootfs instead of
initramfs for consistency with the other qemu defconfigs.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-10-12 22:49:21 +02:00
Peter Korsgaard
8eeb0564f8 configs/qemu_aarch64_virt_defconfig: bump kernel to 4.13.6
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-10-12 22:49:19 +02:00
Joel Stanley
9d5b5b7bfb configs: Add qemu_ppc64le_pseries
This is similar to the ppc64_pseries config, except we build for little
endian instead of big endian.

The default architecture is set to Power8 as this was the first fully
enabled LE machine.

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-09-26 23:50:14 +02:00
Peter Korsgaard
9fcb309472 configs/qemu_arm_versatile: bump kernel to 4.13.3
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-09-22 23:12:31 +02:00
Yann E. MORIN
6e69eabe43 configs/qemu-xtensa: use overlay from the github repository
Rather than bundle the overlay with us, directly fetch it from its
upstream location.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-09 16:58:30 +02:00
Thomas Petazzoni
0f575dd1e3 configs/qemu_sh4*: rename back the linux config file to linux-4.9.config
In commit 28d97609b2 ("configs/qemu:
bump to the latest kernel version") updated most qemu defconfigs to
use Linux 4.11. However, for the SH4 configurations, Linux 4.9 was
kept, because 4.11 apparently has an issue.

Unfortunately, while the defconfigs for SH4 were unchanged, the Linux
kernel configuration file was renamed from linux-4.9.config to
linux-4.11.config.

This commit renames the Linux configuration files back to their
previous name, linux-4.9.config, matching what the Qemu SH4 defconfigs
specify.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-06-19 09:26:12 +02:00
Waldemar Brodkorb
28d97609b2 configs/qemu: bump to the latest kernel version
Xtensa patches no longer required, the make target name changed
to Image. The Qemu binary for OpenRisc was renamed upstream.
I removed the x86->x86_64 symlink, independent files preferred.

Defconfig               Kernel  Qemu            Network Status
--------------------------------------------------------------
aarch64_virt            4.11.3   2.9.0           YES     OK
arm_versatile           4.11.3   2.9.0           YES     OK
arm_versatile_nommu     4.4.70   2.9.0           YES     OK
arm_vexpress            4.11.3   2.9.0           YES     OK
m68k_mcf5208            4.11.3   2.9.0           YES     OK
m68k_q800               4.11.3   q800-v2.4.0     NO (2)  OK
microblazebe            4.11.3   2.9.0           YES     OK
microblazeel            4.11.3   2.9.0           YES     OK
mips32r2el_malta        4.11.3   2.9.0           YES     OK
mips32r2_malta          4.11.3   2.9.0           YES     OK
mips32r6el_malta        4.11.3   2.9.0           YES     OK
mips32r6_malta          4.11.3   2.9.0           YES     OK
mips64el_malta          4.11.3   2.9.0           YES     OK
mips64_malta            4.11.3   2.9.0           YES     OK
mips64r6el_malta        4.11.3   2.9.0           YES     OK
mips64r6_malta          4.11.3   2.9.0           YES     OK
nios2-10m50             4.11.3   2.9.0           NO      OK
or1k                    4.11.3   2.9.0           NO      OK (5)
ppc_g3beige             4.11.3   2.9.0           YES     OK
ppc_mpc8544ds           4.11.3   2.9.0           YES     OK
ppc_virtex_ml507        4.9.6    2.9.0           NO      OK (3)
ppc64_pseries           4.11.3   2.9.0           YES     OK
sh4                     4.9.6    2.9.0           YES     OK (4)
sh4eb                   4.9.6    2.9.0           NO (1)  OK (4)
sparc_ss10              4.11.3   2.9.0           YES     OK
sparc64_sun4u           4.11.3   2.9.0           YES     OK
sparc_sun4u             4.11.3   2.9.0           YES     OK
x86                     4.11.3   2.9.0           YES     OK
x86_64                  4.11.3   2.9.0           YES     OK
xtensa_lx60             4.11.3   2.9.0           YES     OK
xtensa_lx60_nommu       4.11.3   2.9.0           YES     OK

(1) - Probably an endian issue with 8139 emulation/driver
(2) - There's a network interface, but enabling it in qemu fails
(3) - Kernel oops with 4.11.3 on boot
(4) - System is extremely slow with 4.11.3, needs further investigation
(5) - Qemu binary got renamed to qemu-system-or1k

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-06-07 22:49:41 +02:00
Max Filippov
b3bf9fc7ca configs/qemu: update xtensa linux to 4.9
Linux configs are missing memmap= option that is required for xtfpga
boards configured w/o device tree starting with linux-4.9. Add it.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-14 21:55:04 +01:00
Gustavo Zacarias
62e4e13e18 configs/qemu: bump to the latest kernel version
Also bump the pc samples since they're tied to the (base) qemu config.

Results table:

Defconfig               Kernel  Qemu            Network Status
--------------------------------------------------------------
aarch64_virt            4.9.6   2.6.0           YES     OK (3)
arm_versatile           4.9.6   2.5.0           YES     OK
arm_versatile_nommu     4.4.45  2.5.0           YES     OK
arm_vexpress            4.9.6   2.5.0           YES     OK
m68k_mcf5208            4.8.17  2.5.0           YES     OK (6)
m68k_q800               4.9.6   q800-v2.4.0     NO (2)  OK
microblazebe            4.9.6   2.5.0           YES     OK
microblazeel            4.9.6   2.5.0           YES     OK
mips32r2el_malta        4.9.6   2.5.0           YES     OK
mips32r2_malta          4.9.6   2.5.0           YES     OK
mips32r6el_malta        4.9.6   2.6.0           YES     OK (3)
mips32r6_malta          4.9.6   2.6.0           YES     OK (3)
mips64el_malta          4.9.6   2.5.0           YES     OK
mips64_malta            4.8.17  2.5.0           YES     OK (6)
mips64r6el_malta        4.9.6   2.7.0           YES     OK (3)(4)
mips64r6_malta          4.9.6   2.7.0           YES     OK (3)(4)
nios2-10m50             4.9.6   2.9.0           NO      OK
or1k                    4.9.6   2.5.0           NO      OK
ppc_g3beige             4.9.6   2.5.0           YES     OK
ppc_mpc8544ds           4.9.6   2.5.0           YES     OK
ppc_virtex_ml507        4.9.6   2.5.0           NO      OK
ppc64_pseries           4.9.6   2.5.0           YES     OK
sh4                     4.9.6   2.5.0           YES     OK
sh4eb                   4.9.6   2.5.0           NO (1)  OK
sparc_ss10              4.9.6   2.5.0           YES     OK
sparc64_sun4u           4.9.6   2.5.0           YES     OK
sparc_sun4u             4.9.6   2.5.0           YES     OK
x86                     4.9.6   2.5.0           YES     OK
x86_64                  4.9.6   2.5.0           YES     OK
xtensa_lx60             4.8.17  2.6.0           YES     OK (6)
xtensa_lx60_nommu       4.8.17  2.6.0           YES     OK (5)

(1) - Probably an endian issue with 8139 emulation/driver
(2) - There's a network interface, but enabling it in qemu fails
(3) - Known to fail with qemu versions lower than 2.6.0
(4) - Might work with 2.6.0, but the cpu definition changed in 2.7.0
(5) - Kept back on 4.8.x series since 4.9.x fails to build
(6) - Kept back on 4.8.x series since 4.9.x fails to boot

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-01-31 14:25:24 +01:00
Gustavo Zacarias
03b93b6c1c configs/qemu: enable tmpfs for or1k
This is used by buildroot default initscripts and results in some ugly
errors on startup otherwise.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-01-27 14:17:11 +01:00