Skip to content

meta-rauc-nxp: added support for the FRDM i.MX 93 development board#184

Open
ronpscg wants to merge 3 commits into
rauc:scarthgapfrom
ronpscg:dev/scrarthgap/imx93
Open

meta-rauc-nxp: added support for the FRDM i.MX 93 development board#184
ronpscg wants to merge 3 commits into
rauc:scarthgapfrom
ronpscg:dev/scrarthgap/imx93

Conversation

@ronpscg

@ronpscg ronpscg commented Mar 28, 2026

Copy link
Copy Markdown

Since the board layout is very similar to one of the products, the layer included, the changes here are very minimalistics:

  • Updated the README file
  • Added a recipe for building out of meta-imx which does no build off linux-yocto

@ronpscg ronpscg changed the title meta-rauc-nxp: added suport fot the FRDM i.MX 93 development board meta-rauc-nxp: added suport for the FRDM i.MX 93 development board Mar 28, 2026
@ronpscg ronpscg changed the title meta-rauc-nxp: added suport for the FRDM i.MX 93 development board meta-rauc-nxp: added support for the FRDM i.MX 93 development board Mar 28, 2026
@ronpscg
ronpscg force-pushed the dev/scrarthgap/imx93 branch 3 times, most recently from 0dccaa0 to 0acf228 Compare March 28, 2026 10:29
Since the board layout is very similar to one of the products, the layer included,
the changes here are very minimalistics:
- Updated the README file
- Added a recipe for building out of meta-imx which does no build off linux-yocto

Signed-off-by: Ron Munitz <ron@thepscg.com>
@ronpscg
ronpscg force-pushed the dev/scrarthgap/imx93 branch 3 times, most recently from b187dd0 to cc8872b Compare March 29, 2026 07:39

@leon-anavi leon-anavi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

@leon-anavi

leon-anavi commented Mar 29, 2026

Copy link
Copy Markdown
Collaborator

@ronpscg thank you for your contribution with the new distro feature rauc-ab-bootrootfs. Thank you for taking the time to describe how it works at README.frdm-imx93.rst. Let's wait a few days to gather any additional feedback from the community. If none comes in, I will just proceed with merging it.

@ronpscg

ronpscg commented Mar 29, 2026 via email

Copy link
Copy Markdown
Author

@ronpscg

ronpscg commented Apr 3, 2026

Copy link
Copy Markdown
Author

@leon-anavi , what should we do?

@ejoerns ejoerns left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ronpscg Thank you for your contribution!

I had a quick initial look and added some notes on things that remained unclear to me or where I would propose doing things differently.


# linux-imx from meta-imx/meta-imx-bsp does not inherit linux-yocto and does not implement the fragment mechanisms.
# So we just add it and call merge-config manually, should one choose to use the iMX downstream recipe (rather than the community fsl one)
do_configure:append() {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess there's no need to (re)generate the config right after the default do_configure already ran.
Why not just :prepend the merge_config.sh call?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is not guaranteed that the .config file exists on the very first time it is built.
We could alternatively just use the freescale community layer. The objective was to get things done in NXP's proposed way and minimally touch the current meta-rauc-community/meta-rauc-nxp project.
I don't mind rewriting into another layer basically, but I do want to keep compatible with meta-nxp and meta-imx-frdm as per the NXP bootstrapping instructions.

Comment thread meta-rauc-nxp/README.rst Outdated

**Note** The implementation could be more elegant if we just used another layer or did not bother about the one boot/2rootfs scheme that is in the overall meta-rauc-community repo.
However, to keep things simple for comparison, I made the extra effort to have the previous behavior (one boot, 2 rootfs partitions) the default one.
In the dual boot/rootfs solution (i.e. the ``rauc-ab-bootrootfs`` override), everything is identical except for the partition scheme with the following exceptions:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It really makes sense to elaborate on why you chose such a setup and how it is meant to work.
Typically, the bootloader is left out of the A/B setup because it is the instance that selects between A and B.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK: important: this is over complicated, pathwise, but I did want to keep things in the NXP project.
You are correct - typically the bootloader will NOT be done with script files, as it is in the other examples. They do not allow for an A/B switch.

A typical use case would be separating the boot materials from the rootfs, especially if the latter is to be encrypted in its entirety.

And then - there would not be a script at all in the fat partition, but rather either:

  1. A patch to the relevant include/configs/<...>.h and set the variables there
  2. A default environment file that would be used.

Then, all the RAUC choosing logic would be in the environment that is compiled into U-Boot, and if someone wants to add scripts to be loaded in addition to it - let them do so.

Comment thread meta-rauc-nxp/wic/imx-2boot-res-2rootfs-data.wks.in
@@ -0,0 +1,10 @@
/dev/mmcblk0p1

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the purpose of this mount ignore list? Please add a comment.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK I will after redoing the rest - I guess the main question is if to separate.
The objective of the ignore list (I would generally ignore with a wildcard) is :

  1. To do the same as in the original project /meta-rauc-nxp
  2. To avoid the automatic mounting of the partitions by systemd. mmc1 - sdcard. mmc0 -emmc.

…rtitions via the rauc-ab-bootrootfs distro feature

The code is written in a way that is completely backward compatible with the rootfs only solution. It would be more elegant to have it in another layer. Please read the extensively detailed README.frdm-imx93.rst file for more details.

Signed-off-by: Ron Munitz <ron@thepscg.com>
@ronpscg
ronpscg force-pushed the dev/scrarthgap/imx93 branch from cc8872b to c7bcbe0 Compare April 3, 2026 16:41
Signed-off-by: Ron Munitz <ron@thepscg.com>
@ronpscg
ronpscg force-pushed the dev/scrarthgap/imx93 branch from 6f5f077 to 3fe193e Compare April 3, 2026 16:59
@rauc rauc deleted a comment from ronpscg Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants