Skip to content

Paths to dtb overlays have a maximum of 63 characters #2004

@alfonsosanchezbeato

Description

@alfonsosanchezbeato

Describe the bug
On a Raspberry Pi 5, the full path to a dtbo has a maximum of 63 characters. This is not always enough when used with os_prefix. The dtbo with maximum length is right now (including the default overlay_prefix):

/overlays/allo-piano-dac-plus-pcm512x-audio.dtbo

That leaves only 15 characters for os_prefix, which does not seem really enough. There was a previous issue (#1720) that is related and the solution to that was to extend the maximum lenght of os_prefix to 64 (63 + null byte I guess). However it looks like that max length is shared with the full path to the dtb overlay.

To reproduce
Use a long enough os_prefix and a long enough dtbo and the file won't load (the full length is 64 here):

os_prefix=/piboot/ubuntu/pi-kernel_1047.snap/
dtoverlay=vc4-kms-v3d-pi5

The dtbo will not be loaded.

Expected behaviour
dtbo should be loaded if os_prefix is under 64 characters.

Actual behaviour
dtbo is not loded if the full path is bigger than 63 characters.

System
Copy and paste the results of the raspinfo command in to this section. Alternatively, copy and paste a pastebin link, or add answers to the following questions:

  • Which model of Raspberry Pi? e.g. Pi3B+, PiZeroW
    RasPi 5
  • Which OS and version (cat /etc/rpi-issue)?
    Ubuntu 24.04
  • Which firmware version (vcgencmd version)?
    1.20250915
  • Which kernel version (uname -a)?
    6.8.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions