[Bug 1030594] Re: enable flat device tree support
Fathi Boudra
fathi.boudra at linaro.org
Mon Aug 20 14:37:49 UTC 2012
This patch was accepted upstream and has now made its way into qemu-linaro. It's Linaro QEMU 2012.08 release.
We plan to get it before the FF.
** Changed in: qemu-linaro (Ubuntu Quantal)
Assignee: (unassigned) => Fathi Boudra (fboudra)
** Changed in: qemu-linaro (Ubuntu Quantal)
Status: New => Confirmed
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1030594
Title:
enable flat device tree support
Status in “qemu-linaro” package in Ubuntu:
Confirmed
Status in “qemu-linaro” source package in Precise:
New
Status in “qemu-linaro” source package in Quantal:
Confirmed
Bug description:
[Impact]
No known way to use the highbank model at the moment.
[Fix]
Add a build-dep on libfdt-dev.
[Test Case]
On an amd64 system w/ > 4G of RAM:
$ sudo qemu-system-arm -nographic -M highbank -m 4089 -kernel ~/vmlinuz-3.2.0-2000-highbank -append console=ttyAMA0 -dtb ~/highbank.dtb
You can use the vmlinuz and highbank.dtb files from the latest linux-
image-XXX-highbank package.
[Regression Potential]
CONFIG_FDT, in most cases, is compiling in code to execute when -dtb is specified, instead of the current behavior of printing an error. In these cases, the risk of regression is low because if you weren't specifying -dtb before, nothing will be different. There are models, however, that have different behavior if CONFIG_FDT is undefined. These are petalogix_s3adsp1800_mmu, petalogix_ml605_mmu, and virtex_ml507. In these cases, it simply passes the device tree blob directly to the kernel. So, it is a risk on these models that the kernel was able to successfully handle the dtb processing, but the QEMU code we are now enabling does not. Finally, there's simply the risk that comes along with adding a new library dependency - it could introduce a FTBFS on some architectures, for example.
[Original Report]
Please add a build-dep on libfdt-dev, which will add flat device tree support to qemu. This will let users pass the '-dtb' command line option, allowing us to specify a device tree file. Though it is supposedly possible to pass a dtb file to the instance by appending it to the zImage, I've been unable to get this to work (even with CONFIG_ARM_APPENDED_DTB=y). The -dtb method is more straightforward and I've been able to boot a highbank target with it (and the patch referenced in #1030588):
ubuntu at server-1343577662-az-3-region-a-geo-1:~$ sudo qemu-system-arm -nographic -M highbank -m 4089 -kernel ~/vmlinuz-3.2.0-2000-highbank -append console=ttyAMA0 -dtb ~/highbank.dtb
l2x0_priv_write: Bad offset 900
l2x0_priv_write: Bad offset 904
Booting Linux on physical CPU 0
Linux version 3.2.0-2000-highbank (buildd at nikusui) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu3) ) #1-Ubuntu SMP PREEMPT Tue Mar 27 01:49:53 UTC 2012 (Ubuntu 3.2.0-2000.1-highbank 3.2.12)
CPU: ARMv7 Processor [410fc090] revision 0 (ARMv7), cr=10c5387d
[...]
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qemu-linaro/+bug/1030594/+subscriptions
More information about the Ubuntu-sponsors
mailing list