mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Michael Riesch <michael.riesch@wolfvision.net>
To: Roland Hieber <rhi@pengutronix.de>
Cc: ptxdist@pengutronix.de, m.tretter@pengutronix.de
Subject: Re: [ptxdist] [PATCH 2/3] add package for rockchip firmware binaries
Date: Mon, 6 Dec 2021 07:27:09 +0100	[thread overview]
Message-ID: <c911b04e-d252-9a21-48af-e84ce823b2c6@wolfvision.net> (raw)
In-Reply-To: <20211205005645.7s3ydb6km36zujzm@pengutronix.de>

Hello Roland,

On 12/5/21 1:56 AM, Roland Hieber wrote:
> On Fri, Dec 03, 2021 at 05:54:39PM +0100, Michael Riesch wrote:
>> Rockchip provides the SDRAM initialization as well as BL31/BL32
>> firmware for their SoCs in binary from. Add a package that downloads
>> those binaries for further use in e.g., barebox.
>>
>> Signed-off-by: Michael Tretter <michael.tretter@pengutronix.de>
>> [revised and extended Kconfig]
>> Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net>
>> ---
>>  platforms/firmware-rockchip.in | 35 ++++++++++++++++
>>  rules/firmware-rockchip.make   | 75 ++++++++++++++++++++++++++++++++++
>>  2 files changed, 110 insertions(+)
>>  create mode 100644 platforms/firmware-rockchip.in
>>  create mode 100644 rules/firmware-rockchip.make
>>
>> diff --git a/platforms/firmware-rockchip.in b/platforms/firmware-rockchip.in
>> new file mode 100644
>> index 000000000..3b7c996bb
>> --- /dev/null
>> +++ b/platforms/firmware-rockchip.in
>> @@ -0,0 +1,35 @@
>> +## SECTION=non_free_firmware
>> +
>> +menuconfig FIRMWARE_ROCKCHIP
>> +	bool
>> +	prompt "Rockchip firmware binaries    "
>> +	help
>> +	  Rockchip prebuilt SDRAM initialization and TF-A binaries.
>> +
>> +if FIRMWARE_ROCKCHIP
>> +
>> +config FIRMWARE_ROCKCHIP_RK3566_SDRAM
>> +       bool
>> +       prompt "RK3566 SDRAM init"
>> +       help
>> +         Rockchip RK3566 SDRAM initialization binary.
>> +
>> +config FIRMWARE_ROCKCHIP_RK3568_SDRAM
>> +       bool
>> +       prompt "RK3568 SDRAM init"
>> +       help
>> +         Rockchip RK3568 SDRAM initialization binary.
>> +
>> +config FIRMWARE_ROCKCHIP_RK356x_BL31
>> +       bool
>> +       prompt "RK356x BL31 binary"
>> +       help
>> +         Rockchip RK3566/RK3568 BL31 binary.
>> +
>> +config FIRMWARE_ROCKCHIP_RK356x_BL32
>> +       bool
>> +       prompt "RK356x BL32 binary"
>> +       help
>> +         Rockchip RK3566/RK3568 BL32 binary.
>> +
>> +endif
>> diff --git a/rules/firmware-rockchip.make b/rules/firmware-rockchip.make
>> new file mode 100644
>> index 000000000..54a0b7493
>> --- /dev/null
>> +++ b/rules/firmware-rockchip.make
>> @@ -0,0 +1,75 @@
>> +# -*-makefile-*-
>> +#
>> +# Copyright (C) 2021 by Michael Tretter <m.tretter@pengutronix.de>
>> +#
>> +# For further information about the PTXdist project and license conditions
>> +# see the README file.
>> +#
>> +
>> +#
>> +# We provide this package
>> +#
>> +PACKAGES-$(PTXCONF_FIRMWARE_ROCKCHIP) += firmware-rockchip
>> +
>> +FIRMWARE_ROCKCHIP_VERSION	:= 2021-06-01-g7d631e0d
>> +FIRMWARE_ROCKCHIP_MD5		:= bfb7b9601b88784e263c2cc6baa5da9f
>> +FIRMWARE_ROCKCHIP		:= firmware-rockchip-$(FIRMWARE_ROCKCHIP_VERSION)
>> +FIRMWARE_ROCKCHIP_SUFFIX	:= tar.xz
>> +FIRMWARE_ROCKCHIP_URL		:= \
>> +	git://github.com/rockchip-linux/rkbin;tag=$(FIRMWARE_ROCKCHIP_VERSION)
> 
> GitHub will stop serving the git:// protocol starting next year [1]. You
> should be able to just use the usual archive URLs instead with the
> git-describe-like version. This way you also don't need to clone the
> whole git repo first:
> 
>   https://github.com/rockchip-linux/rkbin/archive/$(FIRMWARE_ROCKCHIP_VERSION).zip
> 
> (but you only get .zips from it.)
> 
> [1]: https://github.blog/2021-09-01-improving-git-protocol-security-github/

OK, I'll fix that.

> 
>> +FIRMWARE_ROCKCHIP_SOURCE	:= $(SRCDIR)/$(FIRMWARE_ROCKCHIP).$(FIRMWARE_ROCKCHIP_SUFFIX)
>> +FIRMWARE_ROCKCHIP_DIR		:= $(BUILDDIR)/$(FIRMWARE_ROCKCHIP)
>> +FIRMWARE_ROCKCHIP_LICENSE	:= unknown
> 
> My Chinese is not good enough, but we should probably classify this as
> proprietary.

I was not sure, but proprietary makes sense to me.

> 
>> +
>> +# ----------------------------------------------------------------------------
>> +# Prepare
>> +# ----------------------------------------------------------------------------
>> +
>> +FIRMWARE_ROCKCHIP_CONF_TOOL:= NO
> 
> Please add a space before the walrus operator.

Ack.

> 
>> +
>> +# ----------------------------------------------------------------------------
>> +# Compile
>> +# ----------------------------------------------------------------------------
>> +
>> +$(STATEDIR)/firmware-rockchip.compile:
>> +	@$(call targetinfo)
>> +	@$(call touch)
>> +
>> +# ----------------------------------------------------------------------------
>> +# Install
>> +# ----------------------------------------------------------------------------
>> +
>> +$(STATEDIR)/firmware-rockchip.install:
>> +	@$(call targetinfo)
>> +
>> +ifdef PTXCONF_FIRMWARE_ROCKCHIP_RK3566_SDRAM
>> +	install -v -D -m644 $(FIRMWARE_ROCKCHIP_DIR)/bin/rk35/rk3566_ddr_1056MHz_v1.08.bin \
>> +		$(FIRMWARE_ROCKCHIP_PKGDIR)/usr/lib/firmware/rk3566_ddr_1056MHz_v1.08.bin
>> +endif
>> +
>> +ifdef PTXCONF_FIRMWARE_ROCKCHIP_RK3568_SDRAM
>> +	install -v -D -m644 $(FIRMWARE_ROCKCHIP_DIR)/bin/rk35/rk3568_ddr_1560MHz_v1.08.bin \
>> +		$(FIRMWARE_ROCKCHIP_PKGDIR)/usr/lib/firmware/rk3568_ddr_1560MHz_v1.08.bin
>> +endif
>> +
>> +ifdef PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL31
>> +	install -v -D -m644 $(FIRMWARE_ROCKCHIP_DIR)/bin/rk35/rk3568_bl31_v1.24.elf \
>> +		$(FIRMWARE_ROCKCHIP_PKGDIR)/usr/lib/firmware/rk3568_bl31_v1.24.elf
>> +endif
>> +
>> +ifdef PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL32
>> +	install -v -D -m644 $(FIRMWARE_ROCKCHIP_DIR)/bin/rk35/rk3568_bl32_v1.05.bin \
>> +		$(FIRMWARE_ROCKCHIP_PKGDIR)/usr/lib/firmware/rk3568_bl32_v1.05.bin
>> +endif
>> +
>> +	@$(call touch)
>> +
>> +# ----------------------------------------------------------------------------
>> +# Target-Install
>> +# ----------------------------------------------------------------------------
>> +
>> +$(STATEDIR)/firmware-rockchip.targetinstall:
>> +	@$(call targetinfo)
> 
> Nothing installed on the target? Are they for compile-time use only?

Yes, at least at the moment. Currently barebox is the only consumer of
those blobs and on RK356x boards they are compiled into the barebox image.

Best regards,
Michael

> 
>  - Roland
> 
>> +	@$(call touch)
>> +
>> +# vim: syntax=make
>> -- 
>> 2.30.2
> 

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de


  parent reply	other threads:[~2021-12-06  6:27 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-03 16:54 [ptxdist] [PATCH 0/3] Add support for Rockchip firmware blobs Michael Riesch
2021-12-03 16:54 ` [ptxdist] [PATCH 1/3] platforms: add section for non-free " Michael Riesch
2021-12-03 16:54 ` [ptxdist] [PATCH 2/3] add package for rockchip firmware binaries Michael Riesch
2021-12-03 17:55   ` Christian Melki
2021-12-04  7:10     ` Michael Riesch
2021-12-04 15:37       ` Christian Melki
2021-12-06  6:06         ` Michael Riesch
2021-12-05  0:56   ` Roland Hieber
2021-12-05  1:00     ` Roland Hieber
2021-12-05  9:07       ` Michael Riesch
2021-12-06  6:27     ` Michael Riesch [this message]
2021-12-03 16:54 ` [ptxdist] [RFC PATCH 3/3] barebox: add integration of firmware blobs Michael Riesch

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=c911b04e-d252-9a21-48af-e84ce823b2c6@wolfvision.net \
    --to=michael.riesch@wolfvision.net \
    --cc=m.tretter@pengutronix.de \
    --cc=ptxdist@pengutronix.de \
    --cc=rhi@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