Hi Philippe, On Tue, Dec 10, 2019 at 9:26 AM Philippe Mathieu-Daudé <phi...@redhat.com> wrote:
> On 12/9/19 10:37 PM, Niek Linnenbank wrote: > > Hi Philippe, > > > > On Tue, Dec 3, 2019 at 9:47 AM Philippe Mathieu-Daudé <phi...@redhat.com > > <mailto:phi...@redhat.com>> wrote: > > > > On 12/2/19 10:09 PM, Niek Linnenbank wrote: > > > Dear QEMU developers, > > > > > > Hereby I would like to contribute the following set of patches to > > QEMU > > > which add support for the Allwinner H3 System on Chip and the > > > Orange Pi PC machine. The following features and devices are > > supported: > > > > > > * SMP (Quad Core Cortex A7) > > > * Generic Interrupt Controller configuration > > > * SRAM mappings > > > * Timer device (re-used from Allwinner A10) > > > * UART > > > * SD/MMC storage controller > > > * EMAC ethernet connectivity > > > * USB 2.0 interfaces > > > * Clock Control Unit > > > * System Control module > > > * Security Identifier device > > > > Awesome! > > > > > Functionality related to graphical output such as HDMI, GPU, > > > Display Engine and audio are not included. Recently released > > > mainline Linux kernels (4.19 up to latest master) and mainline > U-Boot > > > are known to work. The SD/MMC code is tested using bonnie++ and > > > various tools such as fsck, dd and fdisk. The EMAC is verified > > with iperf3 > > > using -netdev socket. > > > > > > To build a Linux mainline kernel that can be booted by the Orange > > Pi PC > > > machine, simply configure the kernel using the sunxi_defconfig > > configuration: > > > $ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make mrproper > > > $ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make sunxi_defconfig > > > > > > To be able to use USB storage, you need to manually enable the > > corresponding > > > configuration item. Start the kconfig configuration tool: > > > $ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make menuconfig > > > > > > Navigate to the following item, enable it and save your > > configuration: > > > Device Drivers > USB support > USB Mass Storage support > > > > > > Build the Linux kernel with: > > > $ ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make -j5 > > > > > > To boot the newly build linux kernel in QEMU with the Orange Pi > > PC machine, use: > > > $ qemu-system-arm -M orangepi -m 512 -nic user -nographic \ > > > -kernel /path/to/linux/arch/arm/boot/zImage \ > > > -append 'console=ttyS0,115200' \ > > > -dtb > /path/to/linux/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dtb > > > > > > Note that this kernel does not have a root filesystem. You may > > provide it > > > with an official Orange Pi PC image [1] either as an SD card or as > > > USB mass storage. To boot using the Orange Pi PC Debian image on > > SD card, > > > simply add the -sd argument and provide the proper root= kernel > > parameter: > > > $ qemu-system-arm -M orangepi -m 512 -nic user -nographic \ > > > -kernel /path/to/linux/arch/arm/boot/zImage \ > > > -append 'console=ttyS0,115200 root=/dev/mmcblk0p2' \ > > > -dtb > > /path/to/linux/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dtb \ > > > -sd OrangePi_pc_debian_stretch_server_linux5.3.5_v1.0.img > > > > > > Alternatively, you can also choose to build and boot a recent > > buildroot [2] > > > using the orangepi_pc_defconfig or Armbian image [3] for Orange > > Pi PC. > > > > Richard, trying the Armbian image from > > https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/ I get: > > > > $ arm-softmmu/qemu-system-arm -M orangepi -m 512 -nic user \ > > -append 'console=ttyS0,115200' \ > > -kernel boot/vmlinuz-4.20.7-sunxi \ > > -dtb usr/lib/linux-image-dev-sunxi/sun8i-h3-orangepi-pc.dtb \ > > -serial stdio -d unimp > > Uncompressing Linux... done, booting the kernel. > > rtc: unimplemented device write (size 4, value 0x16aa0001, offset > 0x0) > > rtc: unimplemented device read (size 4, offset 0x0) > > rtc: unimplemented device read (size 4, offset 0x0) > > rtc: unimplemented device read (size 4, offset 0x8) > > qemu-system-arm: target/arm/helper.c:11359: cpu_get_tb_cpu_state: > > Assertion `flags == rebuild_hflags_internal(env)' failed. > > Aborted (core dumped) > > > > > > I'm trying to reproduce the error you reported here with my patch set on > > latest master, > > but so far without any result. The host OS I'm using is Ubuntu 18.04.3 > > LTS on x86_64. > > I ran several times using the same 4.20.7-sunxi kernel and same command > > line. > > > > Some questions that might help: > > 1) Are there any specific steps you did in order to produce this error? > > I build QEMU with: > > ./configure --enable-trace-backends=log --extra-cflags=-ggdb --enable-debug > > > 2) Could this be a known / existing issue? > > 3) How many times did you see this error? > > Always > > > 4) Are you also using Ubuntu 18.04.3 LTS on x86_64, or a different host > OS? > > Host is Fedora 30. > OK thanks, I will try again using the info above after I finished reworking the other patch comments. Niek > > > > > Regards, > > Niek > > -- Niek Linnenbank