qemu-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: On emulating Raspberry Pi


From: Дилян Палаузов
Subject: Re: On emulating Raspberry Pi
Date: Fri, 19 Feb 2021 13:55:26 +0200
User-agent: Evolution 3.39.3

Hello Alex,

thanks for your answer.  I have qemu 5.2.0, which prints:

$ qemu-system-arm -M help|grep rasp
raspi0               Raspberry Pi Zero (revision 1.2)
raspi1ap             Raspberry Pi A+ (revision 1.1)
raspi2               Raspberry Pi 2B (revision 1.1) (alias of raspi2b)
raspi2b              Raspberry Pi 2B (revision 1.1)

but it contains docs/system/arm/raspi.rst .  That file contains:

https://git.qemu.org/?p=qemu.git;a=blob;f=docs/system/arm/raspi.rst;h=922fe375a672ca970d3b0f71d39061cd58862002;hb=553032db17440f8de011390e5a1cfddd13751b0b





Raspberry Pi boards (``raspi0``, ``raspi1ap``, ``raspi2b``,
``raspi3ap``, ``raspi3b``)
=======================================================================
===============


QEMU provides models of the following Raspberry Pi boards:

``raspi0`` and ``raspi1ap``
  ARM1176JZF-S core, 512 MiB of RAM
``raspi2b``
  Cortex-A7 (4 cores), 1 GiB of RAM
``raspi3ap``
  Cortex-A53 (4 cores), 512 MiB of RAM
``raspi3b``
  Cortex-A53 (4 cores), 1 GiB of RAM



So, while the bundled documentation in qemu 5.2.0 says that the device
raspi3b is supported, qemu-system-arm -M help does not list the device.

https://en.wikipedia.org/wiki/Raspberry_Pi says Raspberry Pi 3B uses
ARMv8-A (64/32-bit)  + BCM2837B0 or  BCM2837 

These inconsistent facts make very difficult to understand what is
supported and what not.

The problem with the documentation at
https://github.com/dhruvvyas90/qemu-rpi-kernel/tree/master/native-emuation
is that I get no Network within the VM, after I follow the
documentation, while I get network, when boot a generic kernel with a
versatile dtb on a verstailepb machine.

* Please align the qemu-system-arm -M help output with the raspi.rst
documentation (on 5.2) to state what boards are supported.

* How can I get network (LAN and WiFi) within the qemu-VM by using -M
raspi2/3 ?

Greetings
  Дилян

On Thu, 2021-02-18 at 11:57 +0000, Alex Bennée wrote:
> 
> Дилян Палаузов <dilyan.palauzov@aegee.org> writes:
> 
> > Hello,
> > 
> > I download the Rapsberry OS
> > image
> > https://downloads.raspberrypi.org/raspios_armhf/images/raspios_armhf-2021-01-12/2021-01-11-raspios-buster-armhf.zip
> > 
> > the kernel kernel-qemu-4.19.50-buster and versatile-pb-buster.dtb
> > from https://github.com/dhruvvyas90/qemu-rpi-kernel and run with
> > version 5.2.0:
> > 
> > 
> > $ qemu-system-arm -dtb ./versatile-pb-buster.dtb -kernel ./kernel-
> > qemu-
> > 4.19.50-buster -cpu arm1176 -m 256 -M versatilepb
> 
> You are attempting to boot a generic kernel with a versatile dtb on a
> verstailepb machine. The site you link to even has pointers towards
> "native-emulation" for using the -M raspi2/3 models.
> 
> The documentation also lists the current status of the emulation:
> 
>   https://qemu.readthedocs.io/en/latest/system/arm/raspi.html
> 
> > -append
> > "root=/dev/sda2 rootfstype=ext4 rw" -drive driver=raw,file=./2021-01-
> > 11-raspios-buster-armhf.img,index=0,media=disk -serial stdio    
> > 
> > 
> > 1. On the running system I type “sudo poweroff”.  Why do I get this
> > error, instead of clean shutdown:
> > 
> > [  OK  ] Removed slice system-systemd\x2dfsck.slice.
> > [  OK  ] Reached target Shutdown.
> > [  OK  ] Reached target Final Step.
> > [  OK  ] Started Power-Off.
> > [  OK  ] Reached target Power-Off.
> > reboot: System halted
> > Kernel panic - not syncing: Attempted to kill init!
> > exitcode=0x00000000
> > 
> > CPU: 0 PID: 1 Comm: systemd-shutdow Not tainted 4.19.50+ #1
> > Hardware name: ARM-Versatile (Device Tree Support)
> > [<c001d230>] (unwind_backtrace) from [<c00190ac>]
> > (show_stack+0x10/0x14)
> > [<c00190ac>] (show_stack) from [<c0025f14>] (panic+0xc8/0x240)
> > [<c0025f14>] (panic) from [<c0028444>] (do_exit+0x950/0x9fc)
> > [<c0028444>] (do_exit) from [<c0042440>] (sys_reboot+0x1a0/0x1f0)
> > [<c0042440>] (sys_reboot) from [<c0009000>]
> > (ret_fast_syscall+0x0/0x54)
> > Exception stack(0xcf823fa8 to 0xcf823ff0)
> > 3fa0:                   00000000 00000000 fee1dead 28121969 4321fedc
> > 26f8ad00
> > 3fc0: 00000000 00000000 00000000 00000058 00000fff be905c08 00000000
> > 00424b80
> > 3fe0: 00436e3c be905b88 004214a8 b6e54a38
> > ---[ end Kernel panic - not syncing: Attempted to kill init!
> > exitcode=0x00000000
> >  ]---
> > 
> > 
> > 2. The raspberry Pi OS image has two partitions, fdisk -l
> > 
> > 2021-01-11-raspios-buster-armhf.img1        8192  532479   524288 
> > 256M  c W95 FAT32 (LBA)
> > 2021-01-11-raspios-buster-armhf.img2      532480 7741439  7208960 
> > 3.4G 83 Linux
> > 
> > 
> > so I can mount the first one it with
> > 
> > sudo mount -o offset=4194304 -t vfat 2021-01-11-raspios-buster-
> > armhf.img disk/
> > 
> > It contains: $ ls
> > 
> > bcm2708-rpi-b.dtb*       bcm2709-rpi-2-b.dtb*       bcm2711-rpi-4-
> > b.dtb*  fixup4cd.dat*  fixup_db.dat*  kernel.img*        start4x.elf*
> > bcm2708-rpi-b-plus.dtb*  bcm2710-rpi-2-b.dtb*       bcm2711-rpi-
> > cm4.dtb*  fixup4.dat*    fixup_x.dat*   LICENCE.broadcom* 
> > start_cd.elf*
> > bcm2708-rpi-b-rev1.dtb*  bcm2710-rpi-3-b.dtb*      
> > bootcode.bin*         fixup4db.dat*  issue.txt*    
> > overlays/          start_db.elf*
> > bcm2708-rpi-cm.dtb*      bcm2710-rpi-3-b-plus.dtb* 
> > cmdline.txt*          fixup4x.dat*   kernel7.img*  
> > start4cd.elf*      start.elf*
> > bcm2708-rpi-zero.dtb*    bcm2710-rpi-cm3.dtb*      
> > config.txt*           fixup_cd.dat*  kernel7l.img* 
> > start4db.elf*      start_x.elf*
> > bcm2708-rpi-zero-w.dtb*  bcm2711-rpi-400.dtb*      
> > COPYING.linux*        fixup.dat*     kernel8.img*   start4.elf*
> > 
> > 
> > Why does the internet say, that the bundled in the raw image kernels
> > cannot be used with Qemu, but the one I have written above must be
> > used?
> > 
> > Can youn give me a suggestion, how to run Qemu 5.2, so that it
> > emulates Rasberry 3A+, Raspberry 3B, and Rapsberry 3B+ with WiFi
> > card?
> > 
> > Thanks
> >   Дилян
> 
> 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]