public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Christian Marangi <ansuelsmth@gmail.com>
To: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>,
	Quentin Schulz <quentin.schulz@cherry.de>,
	Peng Fan <peng.fan@nxp.com>,
	Casey Connolly <casey.connolly@linaro.org>,
	Jonas Karlman <jonas@kwiboo.se>,
	Jamie Gibbons <jamie.gibbons@microchip.com>,
	Neha Malcom Francis <n-francis@ti.com>,
	Justin Klaassen <justin@tidylabs.net>,
	Harsha Vardhan V M <h-vm@ti.com>,
	Leo Yu-Chi Liang <ycliang@andestech.com>,
	Weijie Gao <weijie.gao@mediatek.com>,
	Marek Vasut <marek.vasut+renesas@mailbox.org>,
	Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>,
	"Lucien.Jheng" <lucienzx159@gmail.com>,
	u-boot@lists.denx.de
Subject: Re: [PATCH v3 0/5] misc: fs_loader: reorg and split to FS and FW loader + FIP loader
Date: Tue, 31 Mar 2026 09:54:55 +0200	[thread overview]
Message-ID: <69cb7dd2.050a0220.2aae7.7d3f@mx.google.com> (raw)
In-Reply-To: <20260330230757.GA1030901@bill-the-cat>

On Mon, Mar 30, 2026 at 05:07:57PM -0600, Tom Rini wrote:
> On Tue, Mar 17, 2026 at 04:36:04PM +0100, Christian Marangi wrote:
> 
> > This series mainly rework the FS loader to permit reading firmware from
> > container that are not exactly a readable filesystem.
> > 
> > One scenario is when a firmware is shipped in a FIP container as
> > a generic blob with an UUID.
> > 
> > FIP are mostly used on ARM in the context of ATF.
> > In such context U-Boot is loaded as BL31 and the PHY firmware
> > can't be stored in the FIT image for the kernel as U-Boot should
> > not depend on the presence of the kernel to correctly enable PHY
> > for Ethernet port.
> > 
> > To handle such case the PHY firmware is stored in FIP with a
> > predictable UUID.
> > 
> > One example is with Airoha 8811H firmware where the FIP can
> > have a blob with UUID "d39d2cf2-9bd0-3ca7-93e9-e71b4f9250b2".
> > (generated from command "uuidgen -n @dns --md5 --name en8811h.bin")
> > 
> > With these example DTS entry:
> > 
> > fs_loader0: fip-loader {
> > 	bootph-all;
> > 	compatible = "u-boot,fip-loader";
> > 	phandlepart = <&mmc0 0>;
> > 	partoffset = <0x100>;
> > };
> > 
> > mdio {
> >   en8811: ethernet-phy@f {
> >     reg = <0xf>;
> >     firmware-name = "d39d2cf2-9bd0-3ca7-93e9-e71b4f9250b2";
> >     firmware-loader = <&fs_loader0>;
> >   };
> > };
> > 
> > And PHY driver using the get_fw_loader_from_node() and the
> > common request_firmware_into_buf() it's possible to
> > load the PHY firmware transparently by just declaring
> > the required entry in the DTS.
> > 
> > get_fw_loader_from_node() is implemented to actual get the
> > loader from DT. This was something that was already in mind
> > from when the FS loader was implemented but then it was
> > never implemented in favor of a single loader per device.
> > 
> > The first patch is a minor fixup for something that probably
> > won't ever happen.
> > 
> > The second one is a good reworking of the FS and FW loader
> > moving the internal struct to a dedicated header. (this is
> > really to enforce what drivers should use and what
> > driver should not mess with)
> > 
> > Then there is the request_firmware_size() new OP to get only
> > the size of the firmware. Useful for case where the firmware
> > size is not always the same and change across different version.
> > (the patter might be get size -> alloc buffer -> get firmware).
> > 
> > Then the FIP loader as a basic parser of FIP. This only
> > read the FIP header, loop all the entry and search for a
> > matching UUID. If nothing is found then no firmware blob.
> > Very simple implementation.
> > 
> > This is being CI tested on [0]
> 
> Both "git am" and "b4 shazam" fail to apply the second patch here, can
> you please rebase on top of current next and repost? Thanks.
> 

Sorry I was targetting master instead of next. Just sent v4 with the
conflict fixed (it was the global declare dropped commit).

-- 
	Ansuel

      reply	other threads:[~2026-03-31  7:55 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-17 15:36 [PATCH v3 0/5] misc: fs_loader: reorg and split to FS and FW loader + FIP loader Christian Marangi
2026-03-17 15:36 ` [PATCH v3 1/5] misc: fs_loader: fix ubifs not unmounted on dev_get_priv error Christian Marangi
2026-03-17 15:36 ` [PATCH v3 2/5] misc: fs_loader: reorganize and split to FS and FW loader Christian Marangi
2026-03-17 15:36 ` [PATCH v3 3/5] misc: fw_loader: implement generic get_fw_loader_from_node() Christian Marangi
2026-03-17 15:36 ` [PATCH v3 4/5] misc: fw_loader: introduce FIP loader driver Christian Marangi
2026-03-17 15:36 ` [PATCH v3 5/5] misc: fw_loader: implement request_firmware_size() OP Christian Marangi
2026-03-30 23:07 ` [PATCH v3 0/5] misc: fs_loader: reorg and split to FS and FW loader + FIP loader Tom Rini
2026-03-31  7:54   ` Christian Marangi [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=69cb7dd2.050a0220.2aae7.7d3f@mx.google.com \
    --to=ansuelsmth@gmail.com \
    --cc=alif.zakuan.yuslaimi@altera.com \
    --cc=casey.connolly@linaro.org \
    --cc=h-vm@ti.com \
    --cc=jamie.gibbons@microchip.com \
    --cc=jonas@kwiboo.se \
    --cc=justin@tidylabs.net \
    --cc=lucienzx159@gmail.com \
    --cc=marek.vasut+renesas@mailbox.org \
    --cc=n-francis@ti.com \
    --cc=peng.fan@nxp.com \
    --cc=quentin.schulz@cherry.de \
    --cc=sjg@chromium.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=weijie.gao@mediatek.com \
    --cc=ycliang@andestech.com \
    /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