[Bug 1928314] [NEW] Wrong DTB chosen for Raspberry Pi Compute Module 4 (all.db)

Mark Hämmerling 1928314 at bugs.launchpad.net
Thu May 13 09:12:15 UTC 2021


Public bug reported:

When using Ubuntu on a Raspberry Pi Compute Module 4 Rev 1.0, the DTB
for Model 4B is chosen. This is incorrect, as the CM4 has a dedicated
DTB file to be used instead (slightly different hardware).

The incorrect section in 'all.db' is this one:

Machine: Raspberry Pi 4 Model B
Machine: Raspberry Pi 4 Model B Rev 1.1
Machine: Raspberry Pi 4 Model B Rev 1.2
Machine: Raspberry Pi 4 Model B Rev 1.4
Machine: Raspberry Pi Compute Module 4 Rev 1.0
Machine: Raspberry Pi 400 Rev 1.0
Machine: Raspberry Pi *
Kernel-Flavors: raspi
Method: pi
DTB-Id: bcm2711-rpi-4-b.dtb
U-Boot-Script-Name: bootscr.rpi
Required-Packages: u-boot-tools

which assigns the 4B DTB also to the CM4. The correct DTB assignment for
the CM4 would be:

DTB-Id: bcm2711-rpi-cm4.dtb

So, I successfully fixed this issue locally by adding the following
section at the start of the 'all.db' file:

Machine: Raspberry Pi Compute Module 4 Rev 1.0
Kernel-Flavors: raspi
Method: pi
DTB-Id: bcm2711-rpi-cm4.dtb
U-Boot-Script-Name: bootscr.rpi
Required-Packages: u-boot-tools

and removing the line

Machine: Raspberry Pi Compute Module 4 Rev 1.0

from the original section.

This works nicely, but I am not sure about any implications for other
systems. Could someone please have a look into this.

Side note: The catch-all line

Machine: Raspberry Pi *

might make it harder to use strict alphabetic ordering of the Machine
entries, as the CM4 entry must be inserted *before* the catch-all line
in order to be effective.

Thank you for your consideration.

** Affects: flash-kernel (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to flash-kernel in Ubuntu.
https://bugs.launchpad.net/bugs/1928314

Title:
  Wrong DTB chosen for Raspberry Pi Compute Module 4 (all.db)

Status in flash-kernel package in Ubuntu:
  New

Bug description:
  When using Ubuntu on a Raspberry Pi Compute Module 4 Rev 1.0, the DTB
  for Model 4B is chosen. This is incorrect, as the CM4 has a dedicated
  DTB file to be used instead (slightly different hardware).

  The incorrect section in 'all.db' is this one:

  Machine: Raspberry Pi 4 Model B
  Machine: Raspberry Pi 4 Model B Rev 1.1
  Machine: Raspberry Pi 4 Model B Rev 1.2
  Machine: Raspberry Pi 4 Model B Rev 1.4
  Machine: Raspberry Pi Compute Module 4 Rev 1.0
  Machine: Raspberry Pi 400 Rev 1.0
  Machine: Raspberry Pi *
  Kernel-Flavors: raspi
  Method: pi
  DTB-Id: bcm2711-rpi-4-b.dtb
  U-Boot-Script-Name: bootscr.rpi
  Required-Packages: u-boot-tools

  which assigns the 4B DTB also to the CM4. The correct DTB assignment
  for the CM4 would be:

  DTB-Id: bcm2711-rpi-cm4.dtb

  So, I successfully fixed this issue locally by adding the following
  section at the start of the 'all.db' file:

  Machine: Raspberry Pi Compute Module 4 Rev 1.0
  Kernel-Flavors: raspi
  Method: pi
  DTB-Id: bcm2711-rpi-cm4.dtb
  U-Boot-Script-Name: bootscr.rpi
  Required-Packages: u-boot-tools

  and removing the line

  Machine: Raspberry Pi Compute Module 4 Rev 1.0

  from the original section.

  This works nicely, but I am not sure about any implications for other
  systems. Could someone please have a look into this.

  Side note: The catch-all line

  Machine: Raspberry Pi *

  might make it harder to use strict alphabetic ordering of the Machine
  entries, as the CM4 entry must be inserted *before* the catch-all line
  in order to be effective.

  Thank you for your consideration.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/flash-kernel/+bug/1928314/+subscriptions



More information about the foundations-bugs mailing list