[Bug 1030594] Re: [FFE] enable flat device tree support

Stéphane Graber stgraber at stgraber.org
Fri Sep 28 15:28:19 UTC 2012


** Changed in: qemu-linaro (Ubuntu Quantal)
       Status: Triaged => Fix Released

-- 
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:
  [FFE] enable flat device tree support

Status in “qemu-linaro” package in Ubuntu:
  Fix Released
Status in “qemu-linaro” source package in Precise:
  New
Status in “qemu-linaro” source package in Quantal:
  Fix Released

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