dtoverlay=uart4 breaks Raspberry Pi 4B boot

Bug #1875454 reported by Bruce Weyrauch
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
linux-raspi (Ubuntu)
Fix Released
Undecided
Unassigned
Focal
Fix Released
Undecided
Unassigned

Bug Description

[Impact]

A Raspberry Pi 4B won't boot with 'dtoverlay=uart4'.

[Test Case]

Add 'dtoverlay=uart4' to /boot/firmware/usercfg.txt. Reboot. U-boot won't load and the Pi is dead.

[Regression Potential]

Low. This only affects Pi 4Bs and only if uarts 2-5 are used via some
overlays (which is a non-standard configuration).

[Original Description]

1. I installed this image on my R-Pi 4: ubuntu-20.04-preinstalled-server-arm64+raspi.img. It booted with no issues including SSH connection.

2. I then edited the boot/firmware/usercfg.txt and added dtoverlay=uart4 to allow access to an alternate UART. This has been working fine for me with 19.10.1 on the same hardware setup.

3. The RPi would not boot and nothing was sent out the serial console.

4. I placed the SD card back in my PC and removed the added line. Boot of the 20.04 image worked again.

Release info:
ubuntu@ubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04 LTS
Release: 20.04
Codename: focal

Output of serial console with Stock 20.04 image(only password changed at initial boot)

MMC: emmc2@7e340000: 0, mmcnr@7e300000: 1
Loading Environment from FAT... *** Warning - bad CRC, using default environment

In: serial
Out: serial
Err: serial
Net: No ethernet found.
starting USB...
No working controllers found
## Info: input data size = 6 = 0x6
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot.scr
2569 bytes read in 17 ms (147.5 KiB/s)
## Executing script at 02400000
8377273 bytes read in 621 ms (12.9 MiB/s)
Total of 1 halfword(s) were the same
Decompressing kernel...
Uncompressed size: 25905664 = 0x18B4A00
29417535 bytes read in 2117 ms (13.3 MiB/s)
Booting Ubuntu (with booti) from mmc 0:...
## Flattened Device Tree blob at 02600000
   Booting using the fdt blob at 0x2600000
   Using Device Tree in place at 0000000002600000, end 000000000260e415

Starting kernel ...

[ 0.940739] bcm2708_fb soc:fb: Unable to determine number of FB's. Assuming 1
[ 0.941825] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001
[ 0.941850] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22)
[ 0.941898] bcm2708_fb soc:fb: probe failed, err -22
[ 1.343885] spi-bcm2835 fe204000.spi: could not get clk: -517
ln: /tmp/mountroot-fail-hooks.d//scripts/init-premount/lvm2: No such file or directory
ext4
Thu Jan 1 00:00:05 UTC 1970
date: invalid date ' Wed Apr 1 17:23:43 2020'
-.mount
dev-mqueue.mount
sys-kernel-debug.mount
sys-kernel-tracing.mount
kmod-static-nodes.service
systemd-modules-load.service
systemd-remount-fs.service
ufw.service
sys-fs-fuse-connections.mount
sys-kernel-config.mount
systemd-random-seed.service
systemd-sysusers.service
systemd-sysctl.service
systemd-tmpfiles-setup-dev.service
keyboard-setup.service
lvm2-monitor.service
systemd-udevd.service
systemd-journald.service
systemd-udev-trigger.service
systemd-journal-flush.service
[ 7.989412] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[ 8.249348] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[ 8.269839] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Feb 27 2018 03:15:32 version 7.45.154 (r684107 CY) FWID 01-4fbe0b04
systemd-rfkill.service
systemd-udev-settle.service
multipathd.service
systemd-fsckd.service
snap-core18-1708.mount
snap-lxd-14808.mount
snap-snapd-7267.mount
systemd-fsck@dev-disk-by\x2dlabel-system\x2dboot.service
boot-firmware.mount
console-setup.service
finalrd.service
[ OK ] Finished Tell Plymouth To Write Out Runtime Data.
[ OK ] Finished Create Volatile Files and Directories.
systemd-tmpfiles-setup.service
         Starting Network Time Synchronization...
         Starting Update UTMP about System Boot/Shutdown...
[ OK ] Finished Update UTMP about System Boot/Shutdown.
systemd-update-utmp.service
apparmor.service
[ OK ] Finished Load AppArmor profiles.
         Starting Load AppArmor pro…managed internally by snapd...
[ OK ] Finished Load AppArmor pro…s managed internally by snapd.
snapd.apparmor.service
[ OK ] Started Network Time Synchronization.
systemd-timesyncd.service
[ OK ] Reached target System Time Set.
[ OK ] Reached target System Time Synchronized.
[ 11.747964] cloud-init[1151]: Cloud-init v. 20.1-10-g71af48df-0ubuntu5 running 'init-local' at Sun, 26 Apr 2020 21:59:25 +0000. Up 11.30 seconds.
[ OK ] Finished Initial cloud-init job (pre-networking).
cloud-init-local.service
[ OK ] Reached target Network (Pre).
         Starting Network Service...
systemd-networkd.service
[ OK ] Started Network Service.
         Starting Wait for Network to be Configured...
         Starting Network Name Resolution...
[ OK ] Finished Wait for Network to be Configured.
systemd-networkd-wait-online.service
         Starting Initial cloud-ini… (metadata service crawler)...
[ OK ] Started Network Name Resolution.
systemd-resolved.service
[ OK ] Reached target Host and Network Name Lookups.
[ 13.857611] cloud-init[1172]: Cloud-init v. 20.1-10-g71af48df-0ubuntu5 running 'init' at Sun, 26 Apr 2020 21:59:27 +0000. Up 13.44 seconds.
[ 13.857972] cloud-init[1172]: ci-info: +++++++++++++++++++++++++++Net device info++++++++++++++++++++++++++++
[ 13.858180] cloud-init[1172]: ci-info: +--------+-------+-----------+-----------+-------+-------------------+
[ 13.858360] cloud-init[1172]: ci-info: | Device | Up | Address | Mask | Scope | Hw-Address |
[ 13.858532] cloud-init[1172]: ci-info: +--------+-------+-----------+-----------+-------+-------------------+
[ 13.858682] cloud-init[1172]: ci-info: | eth0 | False | . | . | . | dc:a6:32:68:e2:e4 |
[ 13.858852] cloud-init[1172]: ci-info: | lo | True | 127.0.0.1 | 255.0.0.0 | host | . |
[ 13.859005] cloud-init[1172]: ci-info: | lo | True | ::1/128 | . | host | . |
[ 13.859157] cloud-init[1172]: ci-info: | wlan0 | False | . | . | . | dc:a6:32:68:e2:e5 |
[ 13.859308] cloud-init[1172]: ci-info: +--------+-------+-----------+-----------+-------+-------------------+
[ 13.859459] cloud-init[1172]: ci-info: +++++++++++++++++++Route IPv6 info+++++++++++++++++++
[ 13.859613] cloud-init[1172]: ci-info: +-------+-------------+---------+-----------+-------+
[ 13.859770] cloud-init[1172]: ci-info: | Route | Destination | Gateway | Interface | Flags |
[ 13.859933] cloud-init[1172]: ci-info: +-------+-------------+---------+-----------+-------+
[ 13.860132] cloud-init[1172]: ci-info: +-------+-------------+---------+-----------+-------+
[ OK ] Finished Initial cloud-ini…ob (metadata service crawler).
cloud-init.service
[ OK ] Reached target Cloud-config availability.
[ OK ] Reached target System Initialization.
[ OK ] Started Daily apt download activities.
[ OK ] Started Daily apt upgrade and clean activities.
[ OK ] Started Periodic ext4 Onli…ata Check for All Filesystems.
[ OK ] Started Discard unused blocks once a week.
[ OK ] Started Refresh fwupd metadata regularly.
[ OK ] Started Daily rotation of log files.
[ OK ] Started Daily man-db regeneration.
[ OK ] Started Message of the Day.
[ OK ] Started Daily Cleanup of Temporary Directories.
[ OK ] Reached target Paths.
[ OK ] Reached target Timers.
[ OK ] Listening on D-Bus System Message Bus Socket.
[ OK ] Listening on Open-iSCSI iscsid Socket.
[ OK ] Listening on Socket unix for snap application lxd.daemon.
         Starting Socket activation for snappy daemon.
[ OK ] Listening on UUID daemon activation socket.
[ OK ] Listening on Socket activation for snappy daemon.
[ OK ] Reached target Sockets.
[ OK ] Reached target Basic System.
         Starting Accounts Service...
[ OK ] Started D-Bus System Message Bus.
dbus.service
[ OK ] Started Save initial kernel messages after boot.
dmesg.service
         Starting Remove Stale Onli…t4 Metadata Check Snapshots...
[ OK ] Started irqbalance daemon.
irqbalance.service
         Starting Dispatcher daemon for systemd-networkd...
[ OK ] Started Set the CPU Frequency Scaling governor.
ondemand.service
         Starting System Logging Service...
         Starting Snap Daemon...
         Starting Login Service...
         Starting WPA supplicant...
[ OK ] Finished Remove Stale Onli…ext4 Metadata Check Snapshots.
[ OK ] Started System Logging Service.
rsyslog.service
[ OK ] Started WPA supplicant.
wpa_supplicant.service
[ OK ] Reached target Network.
[ OK ] Reached target Network is Online.
[ OK ] Reached target Remote File Systems (Pre).
[ OK ] Reached target Remote File Systems.
         Starting LSB: automatic crash report generation...
         Starting Deferred execution scheduler...
         Starting Availability of block devices...
[ OK ] Started Regular background program processing daemon.
cron.service
         Starting Service for snap application lxd.activate...
         Starting OpenBSD Secure Shell server...
         Starting Permit User Sessions...
[ OK ] Started Deferred execution scheduler.
atd.service
[ OK ] Finished Availability of block devices.
blk-availability.service
[ OK ] Started Login Service.
systemd-logind.service
[ OK ] Started Unattended Upgrades Shutdown.
unattended-upgrades.service
[ OK ] Finished Permit User Sessions.
systemd-user-sessions.service
         Starting Hold until boot process finishes up...
         Starting Terminate Plymouth Boot Screen...

Ubuntu 20.04 LTS ubuntu ttyS0

ubuntu login:

Tags: bot-comment
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. It seems that your bug report is not filed about a specific source package though, rather it is just filed against Ubuntu in general. It is important that bug reports be filed about source packages so that people interested in the package can find the bugs about it. You can find some hints about determining what package your bug might be about at https://wiki.ubuntu.com/Bugs/FindRightPackage. You might also ask for help in the #ubuntu-bugs irc channel on Freenode.

To change the source package that this bug is filed about visit https://bugs.launchpad.net/ubuntu/+bug/1875454/+editstatus and add the package name in the text box next to the word Package.

[This is an automated message. I apologize if it reached you inappropriately; please just reply to this message indicating so.]

tags: added: bot-comment
affects: ubuntu → linux-raspi (Ubuntu)
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in linux-raspi (Ubuntu Focal):
status: New → Confirmed
Changed in linux-raspi (Ubuntu):
status: New → Confirmed
Juerg Haefliger (juergh)
summary: - New ubuntu-20.04-preinstalled-server-arm64+raspi.img installed on R-Pi 4
- does not boot if usercfg.txt is edited
+ dtoverlay=uart4 breaks Raspberry Pi 4B boot
Juerg Haefliger (juergh)
description: updated
Changed in linux-raspi (Ubuntu Focal):
status: Confirmed → In Progress
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (37.2 KiB)

This bug was fixed in the package linux-raspi - 5.4.0-1015.15

---------------
linux-raspi (5.4.0-1015.15) focal; urgency=medium

  * focal/linux-raspi: 5.4.0-1015.15 -proposed tracker (LP: #1887056)

  [ Ubuntu: 5.4.0-42.46 ]

  * focal/linux: 5.4.0-42.46 -proposed tracker (LP: #1887069)
  * linux 4.15.0-109-generic network DoS regression vs -108 (LP: #1886668)
    - SAUCE: Revert "netprio_cgroup: Fix unlimited memory leak of v2 cgroups"

linux-raspi (5.4.0-1014.14) focal; urgency=medium

  * focal/linux-raspi: 5.4.0-1014.14 -proposed tracker (LP: #1885841)

  * Add crda dependency (LP: #1877415)
    - [Packaging] raspi: Depend on crda

  * dtoverlay=uart4 breaks Raspberry Pi 4B boot (LP: #1875454)
    - SAUCE: arm: dts: Add 'brcm, bcm2835-pl011' for compatible for uart2-5

  * aarch64 kernel module for exfat not in raspberry pi 4 build (LP: #1880503)
    - [Config] raspi: Set EXFAT_FS=m

  * Enable ZFS for Raspberry Pi arm64 (LP: #1884110)
    - [Config] raspi: Enable zfs modules for arm64

  * focal/linux-raspi: Upstream raspberrypi patchset 2020-06-10 (LP: #1882930)
    - Revert "net: bcmgenet: Workaround for Pi 4B network issue"
    - Revert "gpiolib: Don't prevent IRQ usage of output GPIOs"
    - gpiolib: Don't prevent IRQ usage of output GPIOs
    - drm/vc4: Fix HDMI mode validation
    - clk-raspberrypi: Allow cpufreq driver to also adjust gpu clocks
    - bcm2835-dma: Add proper 40-bit DMA support
    - overlays: tc358743: Use intra-overlay fragments
    - overlays: Move "fixed-clock" nodes to the root
    - raspberrypi: dts: Switch to discrete ALSA devices
    - dt-bindings: media: i2c: Add IMX477 CMOS sensor binding
    - dtoverlays: Add IMX477 sensor overlay
    - media: i2c: Add driver for Sony IMX477 sensor
    - media: i2c: imx477: Add support for adaptive frame control
    - configs: Add imx477 sensor driver to all Raspberry Pi defconfigs
    - udmabuf: Remove deleted map/unmap handlers.
    - udmabuf: use cache_sgt_mapping option
    - udmabuf: add a pointer to the miscdevice in dma-buf private data
    - udmabuf: separate out creating/destroying scatter-table
    - udmabuf: implement begin_cpu_access/end_cpu_access hooks
    - udmabuf: fix dma-buf cpu access
    - dma-buf: Add dma-buf heaps framework
    - dma-buf: heaps: Add heap helpers
    - dma-buf: heaps: Add system heap to dmabuf heaps
    - dma-buf: heaps: Add CMA heap to dmabuf heaps
    - kselftests: Add dma-heap test
    - dma-buf: heaps: Use _IOCTL_ for userspace IOCTL identifier
    - dma-buf: heaps: Remove redundant heap identifier from system heap name
    - dma-buf: fix resource leak on -ENOTTY error return path
    - dma-heap: Make the symbol 'dma_heap_ioctl_cmds' static
    - defconfig: Add CMA and system dma-heaps to the config
    - ARM: dts: Enable firmware-clocks on all Pis
    - configs: Include the firmware-clocks driver
    - configs: Use the upstream cpufreq driver
    - media: bcm2835-unicam: Always service interrupts
    - sc16is7xx: Fix for hardware flow control
    - drm/vc4: Fix VIC usage with Broadcast RGB
    - staging: vc04_services: mmal-vchiq: Update parameters list
    - staging:vc04_services: bcm2835-codec: Request headers with I-frame
  ...

Changed in linux-raspi (Ubuntu Focal):
status: Fix Committed → Fix Released
Changed in linux-raspi (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.