On Fri, 23 Oct 2020 19:35:19 +0200 Philippe Mathieu-Daudé <f4...@amsat.org> wrote:
> Hi Igor, > > On 10/23/20 5:51 PM, Igor Mammedov wrote: > > On Sun, 18 Oct 2020 22:33:57 +0200 > > Philippe Mathieu-Daudé <f4...@amsat.org> wrote: > > > >> Similarly to the Pi A, the Pi Zero uses a BCM2835 SoC (ARMv6Z core). > >> > >> Example booting the machine using content from [*]: > >> > >> $ qemu-system-arm -M raspi0 -serial stdio \ > >> -kernel raspberrypi/firmware/boot/kernel.img \ > >> -dtb raspberrypi/firmware/boot/bcm2708-rpi-zero.dtb \ > >> -append 'printk.time=0 earlycon=pl011,0x20201000 console=ttyAMA0' > >> [ 0.000000] Booting Linux on physical CPU 0x0 > >> [ 0.000000] Linux version 4.19.118+ (dom@buildbot) (gcc version > >> 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)) #1311 Mon Apr 27 > >> 14:16:15 BST 2020 > >> [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 > >> (ARMv7), cr=00c5387d > >> [ 0.000000] CPU: VIPT aliasing data cache, unknown instruction cache > >> [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero > >> ... > >> > >> [*] > >> http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel_1.20200512-2_armhf.deb > >> > >> Reviewed-by: Luc Michel <luc.mic...@greensocs.com> > >> Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> > >> --- > >> hw/arm/raspi.c | 13 +++++++++++++ > >> 1 file changed, 13 insertions(+) > >> > >> diff --git a/hw/arm/raspi.c b/hw/arm/raspi.c > >> index 91a59d1d489..1510ca01afe 100644 > >> --- a/hw/arm/raspi.c > >> +++ b/hw/arm/raspi.c > >> @@ -319,6 +319,15 @@ static void > >> raspi_machine_class_common_init(MachineClass *mc, > >> mc->default_ram_id = "ram"; > >> }; > >> > >> +static void raspi0_machine_class_init(ObjectClass *oc, void *data) > >> +{ > >> + MachineClass *mc = MACHINE_CLASS(oc); > >> + RaspiMachineClass *rmc = RASPI_MACHINE_CLASS(oc); > >> + > >> + rmc->board_rev = 0x900092; > > > > shouldn't it be > > 920092 Zero 1.2 512MB Embest > > or > > 920093 Zero 1.3 512MB Embest > > I took the value from the "New-style revision codes" > table listed in hw/arm/raspi.c before the REV_CODE > register definitions: > > https://www.raspberrypi.org/documentation/hardware/raspberrypi/revision-codes/README.md > > 90009x's manufacturer is "Sony UK", 92009x is "Embest". > I guess we don't care much the manufacturer :) > > The Revision 1.3 exposed the MIPI camera interface. > As we don't model it, I prefer to use the 1.2 revision > which matches better. > > I'll add this information in the commit description. With that Reviewed-by: Igor Mammedov <imamm...@redhat.com> > > Thanks for reviewing! > > > > >> + raspi_machine_class_common_init(mc, rmc->board_rev); > >> +}; > >> + > >> static void raspi1ap_machine_class_init(ObjectClass *oc, void *data) > >> { > >> MachineClass *mc = MACHINE_CLASS(oc); > >> @@ -352,6 +361,10 @@ static void raspi3b_machine_class_init(ObjectClass > >> *oc, void *data) > >> > >> static const TypeInfo raspi_machine_types[] = { > >> { > >> + .name = MACHINE_TYPE_NAME("raspi0"), > >> + .parent = TYPE_RASPI_MACHINE, > >> + .class_init = raspi0_machine_class_init, > >> + }, { > >> .name = MACHINE_TYPE_NAME("raspi1ap"), > >> .parent = TYPE_RASPI_MACHINE, > >> .class_init = raspi1ap_machine_class_init, > > > > >