From: Peter Seiderer <ps.report@gmx.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/1] Fix rasberry Pi 64bit firmware overlay inclusion
Date: Sun, 6 Jan 2019 19:31:34 +0100 [thread overview]
Message-ID: <20190106193121.325339ad@gmx.net> (raw)
In-Reply-To: <47fb1e6b-dcbe-72d0-d9f6-2c038c8b4dee@flatmax.org>
Hello Matt,
On Sun, 6 Jan 2019 12:11:44 +1100, Matt Flax <flatmax@flatmax.org> wrote:
> On 6/1/19 2:17 am, Peter Seiderer wrote:
> > Hello Matt,
> >
> > On Sat, 5 Jan 2019 10:08:04 +1100, Matt Flax <flatmax@flatmax.org> wrote:
> >
> >> On 5/1/19 6:50 am, Peter Seiderer wrote:
> >>> Hello Max,
> >>>
> >>> On Thu, 3 Jan 2019 22:00:36 +1100, Matt Flax <flatmax@flatmax.org> wrote:
> >>>
> >>>> This patch enables the inclusion of the Pi's overlays. Previously
> >>>> the overlays were not included in the genimage configuration.
> >>>> This patch ensures overlays are included in the sdcard (when
> >>>> enabled) by defaulting to the inclusion of an empty
> >>>> output/images/rpi-firmware/overlays directory in genimage cfg.
> >>>>
> >>>> The Pi's overlays are built with the following config
> >>>> variables:
> >>>> BR2_PACKAGE_RPI_FIRMWARE=y
> >>>> BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS=y
> >>>> BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS=y
> >>>> BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
> >>>> BR2_LINUX_KERNEL_IMAGE_NAME="Image"
> >>>> BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="Image modules dtbs"
> >>>>
> >>>> After building, the dtbo files are present in the
> >>>> output/images/rpi-firmware/overlays directory but not added
> >>>> to the sdcard because they are missing from the genimage cfg
> >>>> file.
> >>> Thanks for suggested patch, the reasoning for genimage-raspberrypi3-64.cfg not
> >>> containing a overlays entry is it is not needed for the raspberrypi3_64_defconfig
> >>> use case (mind the buildroot minimalistic defconfig approach) in contrast to the
> >>> raspberrypi3_defconfig where the overlay is needed for the pi3-miniuart-bt one...
> >>>
> >>> Adding a (maybe) empty overlays directory to the sdcard image would violate
> >>> the minimalistic approach...
> >>
> >> With or without this patch, I see no viable way to update the device
> >> tree. Is there a method ?
> > See e.g. configs/raspberrypi3_defconfig for a specialized case:
> >
> > BR2_ROOTFS_POST_SCRIPT_ARGS="--add-pi3-miniuart-bt-overlay"
> >
> >> What is a Raspberry Pi without a method to support the addons and hats ?
> > A minimalistic starting point for a minimal system, each add-on/hat
> > would surely need additional packages/software, each customized system
> > needs a customized configuration....
> >
> >> Do you have a method for supporting any of the various addons/hats which
> >> would normally work with an overlay line added to /boot/config.txt ?
> >>
> > Or take a look at '[RFC] raspberrypi: post-image.sh arguments as config.txt properties ' [1]
> > for a more general approach...
> >
> > Regards,
> > Peter
> >
> > [1] https://patchwork.ozlabs.org/patch/1007728/
>
>
> Thanks for the pointer. It is pretty clear that support for the RPi
> requires a lot more work and blocking revisions doesn't really help.
Don`t know what your mean by 'blocking revisions'?
> Despite adding post_script_args, there simply isn't any way to include
> overlays in the current setup.
Your initial suggested patch shows the way to do it:
- enable BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS=y
- use a customized genimage config file with overlay directory enabled
- use a customized genimage config file pointing to a customized config.txt file
>
> For example :
>
> If I add the variable
> BR2_ROOTFS_POST_SCRIPT_ARGS="--add-pi3-miniuart-bt-overlay"
>
> It will put the following into boot/config.txt :
>
> dtoverlay=pi3-miniuart-bt
>
> But - now here is the clincher - THERE IS NO WAY TO GET OVERLAYS INTO
> THE BOOT PARTITION !
>
> Can you please be more helpful ? I see specifically the following problems :
>
> 1] Can you suggest a better method to include overlays in the sdcard?
> during a build process ?
See above...
>
> 2] For a 64 bit system, does overlay loading even work ? I tried to load
> an overlay by putting dtoverlay into config.txt but it seemed to not
> even be aware of its presence !
Should work the same way as 32 bit, but did not test it recently...how
do you determine 'not even be aware of its presence'?
>
> 3] Because of 2] is there a particular place to put overlays rather then
> boot/overlays ?
Not a buildroot specific question, more for a raspberry forum..., but
according to [2] the right place for the overlays is the boot partition
overlays directory...
Regards,
Peter
[2] https://www.raspberrypi.org/documentation/configuration/device-tree.md
>
>
> thanks
>
> Matt
>
>
>
>
> >> Matt
> >>
> >>
> >>> Regards,
> >>> Peter
> >>>
> >>> [Skipped CC to 'Matt Flax <flatmax@flatmax.org>' - mail server answers with 'mailbox unavailable']
> >>>
> >>>> Signed-off-by: Matt Flax <flatmax@flatmax.org>
> >>>> ---
> >>>> board/raspberrypi/genimage-raspberrypi3-64.cfg | 1 +
> >>>> package/rpi-firmware/rpi-firmware.mk | 4 ++++
> >>>> 2 files changed, 5 insertions(+)
> >>>>
> >>>> diff --git a/board/raspberrypi/genimage-raspberrypi3-64.cfg b/board/raspberrypi/genimage-raspberrypi3-64.cfg
> >>>> index 0d0ca750a7..af1d17cde7 100644
> >>>> --- a/board/raspberrypi/genimage-raspberrypi3-64.cfg
> >>>> +++ b/board/raspberrypi/genimage-raspberrypi3-64.cfg
> >>>> @@ -9,6 +9,7 @@ image boot.vfat {
> >>>> "rpi-firmware/config.txt",
> >>>> "rpi-firmware/fixup.dat",
> >>>> "rpi-firmware/start.elf",
> >>>> + "rpi-firmware/overlays",
> >>>> "Image"
> >>>> }
> >>>> }
> >>>> diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk
> >>>> index bb54904ae6..0df7b17cbd 100644
> >>>> --- a/package/rpi-firmware/rpi-firmware.mk
> >>>> +++ b/package/rpi-firmware/rpi-firmware.mk
> >>>> @@ -24,6 +24,10 @@ define RPI_FIRMWARE_INSTALL_DTB_OVERLAYS
> >>>> $(INSTALL) -D -m 0644 $${ovldtb} $(BINARIES_DIR)/rpi-firmware/overlays/$${ovldtb##*/} || exit 1; \
> >>>> done
> >>>> endef
> >>>> +else
> >>>> +define RPI_FIRMWARE_INSTALL_DTB_OVERLAYS
> >>>> + $(INSTALL) -d $(BINARIES_DIR)/rpi-firmware/overlays || exit 1;
> >>>> +endef
> >>>> endif
> >>>>
> >>>> ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_VCDBG),y)
> >>> _______________________________________________
> >>> buildroot mailing list
> >>> buildroot at busybox.net
> >>> http://lists.busybox.net/mailman/listinfo/buildroot
> >> _______________________________________________
> >> buildroot mailing list
> >> buildroot at busybox.net
> >> http://lists.busybox.net/mailman/listinfo/buildroot
> > _______________________________________________
> > buildroot mailing list
> > buildroot at busybox.net
> > http://lists.busybox.net/mailman/listinfo/buildroot
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
next prev parent reply other threads:[~2019-01-06 18:31 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-03 11:00 [Buildroot] [PATCH 1/1] Fix rasberry Pi 64bit firmware overlay inclusion Matt Flax
2019-01-04 19:50 ` Peter Seiderer
2019-01-04 23:08 ` Matt Flax
2019-01-05 15:17 ` Peter Seiderer
2019-01-06 1:11 ` Matt Flax
2019-01-06 18:31 ` Peter Seiderer [this message]
2019-01-06 21:52 ` Matt Flax
2019-04-13 21:06 ` Yann E. MORIN
2019-04-13 22:13 ` Arnout Vandecappelle
2019-04-24 20:15 ` Peter Korsgaard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190106193121.325339ad@gmx.net \
--to=ps.report@gmx.net \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox