From: Michael Olbrich <m.olbrich@pengutronix.de>
To: Michael Riesch <michael.riesch@wolfvision.net>
Cc: ptxdist@pengutronix.de, m.tretter@pengutronix.de
Subject: Re: [ptxdist] [RFC PATCH v5 5/5] barebox.rockchip: add binary firmware blobs for quartz64 and rk3568-evb1
Date: Fri, 28 Jan 2022 21:08:42 +0100 [thread overview]
Message-ID: <20220128200842.GF11273@pengutronix.de> (raw)
In-Reply-To: <c59c4306-0e08-72a5-6b8e-71d64fed2f89@wolfvision.net>
On Fri, Jan 28, 2022 at 05:48:11PM +0100, Michael Riesch wrote:
> Hello Michael,
>
> On 1/28/22 17:10, Michael Olbrich wrote:
> > On Fri, Jan 28, 2022 at 04:26:23PM +0100, Michael Riesch wrote:
> >> Hello Michael,
> >>
> >> Thanks for your review. I'll prepare a v6!
> >>
> >> On 1/28/22 13:33, Michael Olbrich wrote:
> >>> On Mon, Jan 24, 2022 at 01:09:42PM +0100, Michael Riesch wrote:
> >>>> Currently, the mainline OP-TEE and TF-A sources do not support the
> >>>> RK356x SoCs. Therefore, the only option is to use the binary blobs
> >>>> provided by Rockchip. This patch integrates these blobs (along the SDRAM
> >>>> initialization binary) for the Pine64 Quartz64 board and the RK3568
> >>>> EVB1 into barebox.
> >>>>
> >>>> Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net>
> >>>> ---
> >>>> platforms/barebox.rockchip.in | 13 +++++++++++++
> >>>> rules/barebox.rockchip.make | 18 ++++++++++++++++++
> >>>> 2 files changed, 31 insertions(+)
> >>>> create mode 100644 rules/barebox.rockchip.make
> >>>>
> >>>> diff --git a/platforms/barebox.rockchip.in b/platforms/barebox.rockchip.in
> >>>> index 8ecdb0762..9aad4eaf8 100644
> >>>> --- a/platforms/barebox.rockchip.in
> >>>> +++ b/platforms/barebox.rockchip.in
> >>>> @@ -1 +1,14 @@
> >>>> ## SECTION=barebox_firmware
> >>>> +
> >>>> +config BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>> + prompt "barebox needs firmware-rockchip"
> >>>> + bool
> >>>> + depends on ARCH_ARM64
> >>>> + select FIRMWARE_ROCKCHIP if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>
> >>> This does not work. It must look like this or the build dependency is not
> >>> created:
> >>>
> >>> config BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>> prompt "barebox needs firmware-rockchip"
> >>> bool
> >>> depends on ARCH_ARM64
> >>>
> >>> config BAREBOX
> >>> select FIRMWARE_ROCKCHIP if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>
> >>> Multiple occurrences of the same symbol are merged, so this works just
> >>> fine as long as 'BAREBOX' is fully defined somewhere else.
> >>
> >> I tried this approach but it returns the error
> >>
> >> .../ptxdist/platforms/barebox.in:11:error: recursive dependency detected!
> >> .../ptxdist/platforms/barebox.in:11: symbol BAREBOX depends on BAREBOX
> >>
> >> Any idea what could be wrong here?
> >
> > Ah, if we resolve any 'source' commands etc. then the whole thing looks
> > basically like this:
> >
> > if BAREBOX
> > if BAREBOX_FIRMWARE
> >
> > config BAREBOX
> > select FIRMWARE_ROCKCHIP if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >
> > endif
> > endif
> >
> > and that's the same as
> >
> > config BAREBOX
> > depends on BAREBOX
> > depends on BAREBOX_FIRMWARE
> > select FIRMWARE_ROCKCHIP if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >
> > I think, the only idea is to split that in two files. On with
> > SECTION=barebox_firmware and one with SECTION=bootloader.
>
> Would some kind of dependency symbol do the trick? For example,
>
> in barebox.in:
>
> config BAREBOXDEP
Hmmm, try this:
config BAREBOXDEP
tristate
select VIRTUAL
But I think that will still create a dependency loop because BAREBOX
selects BAREBOXDEP and BAREBOXDEP depends on BAREBOX.
Michael
>
> menuconfig BAREBOX
> select BAREBOXDEP
>
> if BAREBOX
> menuconfig BAREBOX_FIRMWARE
> ...
> endif
>
> and in barebox.rockchip.in:
>
> config BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
>
> config BAREBOXDEP
> select FIRMWARE_ROCKCHIP if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
>
> ?
>
> Thanks and best regards,
> Michael
>
> >
> > It's not very nice, but I don't have a better idea.
> >
> > Michael
> >
> >
> >>>> + select FIRMWARE_ROCKCHIP_RK356x_BL31 if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>> + select FIRMWARE_ROCKCHIP_RK356x_BL32 if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>> + select FIRMWARE_ROCKCHIP_RK3566_SDRAM if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>> + select FIRMWARE_ROCKCHIP_RK3568_SDRAM if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>> + help
> >>>> + Select this if barebox needs the non-free Rockchip firmware
> >>>> + blobs.
> >>>> diff --git a/rules/barebox.rockchip.make b/rules/barebox.rockchip.make
> >>>> new file mode 100644
> >>>> index 000000000..0255b2b4d
> >>>> --- /dev/null
> >>>> +++ b/rules/barebox.rockchip.make
> >>>> @@ -0,0 +1,18 @@
> >>>> +# -*-makefile-*-
> >>>> +#
> >>>> +# Copyright (C) 2021 by Michael Riesch <michael.riesch@wolfvision.net>
> >>>> +#
> >>>> +# For further information about the PTXdist project and license conditions
> >>>> +# see the README file.
> >>>> +#
> >>>> +
> >>>> +ifdef PTXCONF_BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
> >>>> +
> >>>> +BAREBOX_INJECT_FILES += rk3568_bl31_v1.24.elf:firmware/rk3568-bl31.bin
> >>>> +BAREBOX_INJECT_FILES += rk3568_bl32_v1.05.bin:firmware/rk3568-op-tee.bin
> >>>> +
> >>>> +BAREBOX_INJECT_FILES += rk3566_ddr_1056MHz_v1.08.bin:arch/arm/boards/pine64-quartz64/sdram-init.bin
> >>>> +
> >>>> +BAREBOX_INJECT_FILES += rk3568_ddr_1560MHz_v1.08.bin:arch/arm/boards/rockchip-rk3568-evb/sdram-init.bin
> >>>> +
> >>>> +endif
> >>>> --
> >>>> 2.30.2
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> ptxdist mailing list
> >>>> ptxdist@pengutronix.de
> >>>> To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de
> >>>>
> >>>
> >>
> >
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de
prev parent reply other threads:[~2022-01-28 20:09 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-24 12:09 [ptxdist] [PATCH v5 0/5] Add support for Rockchip firmware blobs Michael Riesch
2022-01-24 12:09 ` [ptxdist] [PATCH v5 1/5] platforms: add section for non-free " Michael Riesch
2022-01-24 12:09 ` [ptxdist] [PATCH v5 2/5] add package for rockchip firmware binaries Michael Riesch
2022-01-28 12:31 ` Michael Olbrich
2022-01-28 12:46 ` Michael Riesch
2022-01-28 12:59 ` Michael Olbrich
2022-01-28 13:46 ` Michael Riesch
2022-01-24 12:09 ` [ptxdist] [PATCH v5 3/5] scripts: add helper to inject files into a source directory Michael Riesch
2022-01-28 12:27 ` Michael Olbrich
2022-01-24 12:09 ` [ptxdist] [PATCH v5 4/5] barebox: add integration of firmware blobs Michael Riesch
2022-01-28 12:28 ` Michael Olbrich
2022-01-24 12:09 ` [ptxdist] [RFC PATCH v5 5/5] barebox.rockchip: add binary firmware blobs for quartz64 and rk3568-evb1 Michael Riesch
2022-01-28 12:33 ` Michael Olbrich
2022-01-28 15:26 ` Michael Riesch
2022-01-28 16:10 ` Michael Olbrich
2022-01-28 16:48 ` Michael Riesch
2022-01-28 20:08 ` Michael Olbrich [this message]
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=20220128200842.GF11273@pengutronix.de \
--to=m.olbrich@pengutronix.de \
--cc=m.tretter@pengutronix.de \
--cc=michael.riesch@wolfvision.net \
--cc=ptxdist@pengutronix.de \
/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