From: "Piotr Król" <piotr.krol@3mdeb.com>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v2 0/7] Raspberry Pi 2 support
Date: Thu, 31 Dec 2015 02:13:38 +0100 [thread overview]
Message-ID: <20151231011338.GA1289@haysend> (raw)
In-Reply-To: <1450916731-5968-1-git-send-email-Andrew.Baumann@microsoft.com>
On Wed, Dec 23, 2015 at 04:25:24PM -0800, Andrew Baumann wrote:
> This patch series adds initial support for Raspberry Pi 2
> (bcm2836). It is heavily based on the original (out of tree) work of
> Gregory Estrade, Stefan Weil and others to support Raspberry Pi 1.
>
> At the end of this series, it is possible to boot a recent raspbian
> kernel to a serial console using an invocation such as:
>
> qemu-system-arm -M raspi2 -kernel raspbian-boot/kernel7.img -sd
> 2015-09-24-raspbian-jessie.vhd -append "rw earlyprintk loglevel=8
> console=ttyAMA0 root=/dev/mmcblk0p2" -serial stdio
>
> (where raspbian-boot is the boot partition from the matching image,
> and after commenting-out or removing /etc/ld.so.preload to avoid an
> unimplemented setend instruction).
>
> I plan to add DMA, USB, framebuffer, timers, and other system devices
> (vchiq, power, mphi, aux/uart1) in future patches. In the meantime,
> the complete code is available at: https://github.com/0xabu/qemu
Hi Andrew,
many thanks for this patch series. I'm very interested in this effort from
Linux perspective. And would like to help with testing and maybe some
development.
First, I tried your code from raspi branch (ar7-raspi doesn't compile [1]).
Using recent Raspbian 2015-11-21-raspbian-jessie (same results I saw for
2015-09-24). I'm getting kernel panic:
[ 6.892677] random: systemd urandom read with 7 bits of entropy available
[ 6.908292] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
[ 6.908292]
[ 6.909692] CPU: 0 PID: 1 Comm: systemd Not tainted 4.1.13-v7+ #826
[ 6.910106] Hardware name: BCM2709
[ 6.911818] [<80018444>] (unwind_backtrace) from [<80013e08>] (show_stack+0x20/0x24)
[ 6.912539] [<80013e08>] (show_stack) from [<8055a188>] (dump_stack+0x98/0xe0)
[ 6.913074] [<8055a188>] (dump_stack) from [<80556340>] (panic+0xa4/0x204)
[ 6.913721] [<80556340>] (panic) from [<800293c8>] (do_exit+0xa0c/0xa64)
[ 6.914181] [<800293c8>] (do_exit) from [<800294b8>] (do_group_exit+0x4c/0xcc)
[ 6.914770] [<800294b8>] (do_group_exit) from [<80033f1c>] (get_signal+0x2b0/0x6e0)
[ 6.915311] [<80033f1c>] (get_signal) from [<80013190>] (do_signal+0x98/0x3ac)
[ 6.915825] [<80013190>] (do_signal) from [<8001368c>] (do_work_pending+0xb8/0xc8)
[ 6.916352] [<8001368c>] (do_work_pending) from [<8000f9e4>] (work_pending+0xc/0x20)
[ 6.917774] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
[ 6.917774]
Full log [3].
Third test I tried is to apply patches from this series on top of master
(38a762fec63f), what cause hang on:
[ 15.094558 ] mmc0: Timeout waiting for hardware interrupt
Full log [2].
I do not follow this mailing list, so maybe I missing some pieces.
If I need some other patches to test this series please let me know.
My questions:
Does 2015-09-24-raspbian-jessie.vhd extracted Linux partition from raspbian
image or simply img converted to vhd format ? Is there any problem with using img ?
Would you mind to issue tracking on GitHub and pull requests or you want whole
communication and possible fixes go through QEMU mailing list ? I think that it
maybe useful for code that is not ready for upstreaming. I saw you have issue
tracking disabled.
Any other pointers how to fix those issues are appreciated.
[1] https://gist.github.com/pietrushnic/d2b7714524f0a2db3530
[2] https://gist.github.com/pietrushnic/cfe3d8d70d883a683250
[3] https://gist.github.com/pietrushnic/7daff0f1227de79d1af3
>
> Although this series includes many of the peripherals common to Pi1
> (aka bcm2835 aka Pi0), it's not yet possible to boot a Pi1, because it
> requires additional peripherals, so I'll also add that SoC and machine
> in a later patch.
>
> v2 changes:
> * cleanup based on reviews of mbox and ic devices by Peter Crosthwaite
> (see specific notes on each patch)
> * removed custom SD controller in favour of sdhci
>
> Cheers,
> Andrew
>
> Andrew Baumann (7):
> bcm2835_mbox: add BCM2835 mailboxes
> bcm2835_property: add bcm2835 property channel
> bcm2835_ic: add bcm2835 interrupt controller
> bcm2835_peripherals: add rollup device for bcm2835 peripherals
> bcm2836_control: add bcm2836 ARM control logic
> bcm2836: add bcm2836 soc device
> raspi: add raspberry pi 2 machine
>
> default-configs/arm-softmmu.mak | 1 +
> hw/arm/Makefile.objs | 1 +
> hw/arm/bcm2835_peripherals.c | 198 ++++++++++++++++++++
> hw/arm/bcm2836.c | 135 ++++++++++++++
> hw/arm/raspi.c | 179 +++++++++++++++++++
> hw/intc/Makefile.objs | 1 +
> hw/intc/bcm2835_ic.c | 233 ++++++++++++++++++++++++
> hw/intc/bcm2836_control.c | 338 +++++++++++++++++++++++++++++++++++
> hw/misc/Makefile.objs | 2 +
> hw/misc/bcm2835_mbox.c | 323 +++++++++++++++++++++++++++++++++
> hw/misc/bcm2835_property.c | 277 ++++++++++++++++++++++++++++
> include/hw/arm/bcm2835_peripherals.h | 42 +++++
> include/hw/arm/bcm2836.h | 33 ++++
> include/hw/arm/raspi_platform.h | 161 +++++++++++++++++
> include/hw/intc/bcm2835_ic.h | 33 ++++
> include/hw/intc/bcm2836_control.h | 51 ++++++
> include/hw/misc/bcm2835_mbox.h | 37 ++++
> include/hw/misc/bcm2835_mbox_defs.h | 26 +++
> include/hw/misc/bcm2835_property.h | 29 +++
> 19 files changed, 2100 insertions(+)
> create mode 100644 hw/arm/bcm2835_peripherals.c
> create mode 100644 hw/arm/bcm2836.c
> create mode 100644 hw/arm/raspi.c
> create mode 100644 hw/intc/bcm2835_ic.c
> create mode 100644 hw/intc/bcm2836_control.c
> create mode 100644 hw/misc/bcm2835_mbox.c
> create mode 100644 hw/misc/bcm2835_property.c
> create mode 100644 include/hw/arm/bcm2835_peripherals.h
> create mode 100644 include/hw/arm/bcm2836.h
> create mode 100644 include/hw/arm/raspi_platform.h
> create mode 100644 include/hw/intc/bcm2835_ic.h
> create mode 100644 include/hw/intc/bcm2836_control.h
> create mode 100644 include/hw/misc/bcm2835_mbox.h
> create mode 100644 include/hw/misc/bcm2835_mbox_defs.h
> create mode 100644 include/hw/misc/bcm2835_property.h
>
> --
> 2.5.3
>
>
Best Regards,
--
Piotr Król
Embedded Systems Consultant
http://3mdeb.com | @3mdeb_com
next prev parent reply other threads:[~2015-12-31 1:13 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-24 0:25 [Qemu-devel] [PATCH v2 0/7] Raspberry Pi 2 support Andrew Baumann
2015-12-24 0:25 ` [Qemu-devel] [PATCH v2 1/7] bcm2835_mbox: add BCM2835 mailboxes Andrew Baumann
2015-12-31 0:12 ` Peter Crosthwaite
2015-12-31 18:06 ` Andrew Baumann
2015-12-24 0:25 ` [Qemu-devel] [PATCH v2 2/7] bcm2835_property: add bcm2835 property channel Andrew Baumann
2015-12-24 0:25 ` [Qemu-devel] [PATCH v2 3/7] bcm2835_ic: add bcm2835 interrupt controller Andrew Baumann
2015-12-31 0:33 ` Peter Crosthwaite
2015-12-24 0:25 ` [Qemu-devel] [PATCH v2 4/7] bcm2835_peripherals: add rollup device for bcm2835 peripherals Andrew Baumann
2015-12-31 2:53 ` Peter Crosthwaite
2015-12-31 18:23 ` Andrew Baumann
2015-12-24 0:25 ` [Qemu-devel] [PATCH v2 5/7] bcm2836_control: add bcm2836 ARM control logic Andrew Baumann
2015-12-31 3:20 ` Peter Crosthwaite
2015-12-31 18:43 ` Andrew Baumann
2015-12-24 0:25 ` [Qemu-devel] [PATCH v2 6/7] bcm2836: add bcm2836 soc device Andrew Baumann
2015-12-24 0:25 ` [Qemu-devel] [PATCH v2 7/7] raspi: add raspberry pi 2 machine Andrew Baumann
2015-12-31 1:13 ` Piotr Król [this message]
2016-01-06 18:27 ` [Qemu-devel] [PATCH v2 0/7] Raspberry Pi 2 support Andrew Baumann
2016-01-07 0:09 ` Piotr Król
2016-01-07 0:14 ` Andrew Baumann
2016-01-07 2:46 ` Peter Crosthwaite
2016-01-07 4:47 ` Andrew Baumann
2016-01-07 10:16 ` Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151231011338.GA1289@haysend \
--to=piotr.krol@3mdeb.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).