Comment 31 for bug 1652270

Andreas Hösl (blafasl) wrote :

The problem is fixed for me. I did some tests with a fresh installation on a rpi3 with the image from https://wiki.ubuntu.com/ARM/RaspberryPi. The image did not boot after a simple apt-get update && apt-get upgrade. The kernel was not updated, still version 1009 from the image.

The uboot error was:

  ## Executing script at 02000000
  libfdt fdt_check_header(): FDT_ERR_BADMAGIC
  No FDT memory address configured. Please configure
  the FDT address via "fdt addr <address>" command.
  Aborting!
  reading vmlinuz
  6594336 bytes read in 952 ms (6.6 MiB/s)
  reading initrd.img
  9744755 bytes read in 1402 ms (6.6 MiB/s)
  Kernel image @ 0x1000000 [ 0x000000 - 0x649f20 ]
  ERROR: Did not find a cmdline Flattened Device Tree
  Could not find a valid device tree
  SCRIPT FAILED: continuing...

To fix the uboot error, you have to change the config.txt lines:
# set extended DT area
#device_tree_address=0x100
#device_tree_end=0x8000
device_tree_address=0x02008000

I changed the device_tree_address and commented out the device_tree_end. The address is the same that was changed in the file /usr/share/flash-kernel/bootscript/bootscr.rpi3 from flash-kernel package from ppa::ubuntu-raspi2/ppa-rpi3

With this changes made to config.txt I did the apt-get dist-upgrade to get the latest kernel (version 1040) and rebooted. The rpi3 started without any problems, running kernel 1040!

maybe Ryan can add some script magic to the flash-kernel package to change the config.txt during the update?