| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Only the first UBOOT_CONFIG generate a imx-boot and flash.bin symlink.
Every UBOOT_CONFIG creates a flash.bin-${MACHINE}-${type} binary.
Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io>
|
|
|
|
|
|
|
|
|
|
| |
Rework imx-boot and use-imx-security-controller-firmware.bbclass with a
generic SOC revision design implemented in imx-base.inc. This does
replace the machine feature design using `soc-rev*`, but maintains
backwards compatibility by incorporating that design into the default
settings.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
| |
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
| |
V45 now.
Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io>
|
|
|
|
|
|
|
|
|
| |
INITRAMFS_IMAGE_NAME stay as before but it assumes that all
images used as initramfs will set IMAGE_NAME_SUFFIX to empty.
https://git.yoctoproject.org/poky/commit/?id=6f6c79029bc2020907295858449c725952d560a1
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
|
|
|
|
|
|
|
|
|
|
|
| |
CONFIG_LOCALVERSION is a string setting. It needs to go between quotes in
the .config file.
$ grep CONFIG_LOCALVERSION= .config
CONFIG_LOCALVERSION="-dey"
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
|
|
|
|
| |
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Eventually, multiple `uuu` script may install same binaries. We need to
ensure we install them once, otherwise it'll fail as it might try to
override a existing binary.
This commit ensure all dependencies and binaries are mentioned once,
removing duplication.
Fixes: ae7af6f8 ("classes/image_populate_mfgtool: init")
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
|
|
|
| |
The initramfs image doesn't use the U-Boot binaries so there is no
reason for a dependency on it.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The class provides the infrastructure for MFGTOOL generation and is tied
to images. To generate the bundle, the task populate_mfgtool must be
called. For example:
,----[ Running populate_mfgtool for core-image-minimal image ]
| $: bitbake core-image-minimal -c populate_mfgtool
`----
The class behavior is controlled through the MFGTOOLCONFIG (analogous to
PACKAGECONFIG) variable. The MFGTOOLCONFIG variable itself specifies a
space-separated list of the script to enable. Following the script, you
can determine the behavior of each script by providing up to two
order-dependent arguments, which are separated by commas. You can omit
any argument you like but must retain the separating commas. The order
is important and specifies the following:
1. Extra dependencies that should be added to the do_populate_mfgtool
task, if the script is enabled.
2. Extra binaries that should be added to the bundle, if the script is
enabled.
For example:
,----[ Defining foo.uuu.in and bar.uuu script ]
| MFGTOOLCONFIG = "foo.uuu.in bar.uuu"
| MFGTOOLCONFIG[foo.uuu.in] = "dep-foo1:do_deploy dep-foo2:do_deploy,file-foo1"
| MFGTOOLCONFIG[bar.uuu] = "dep-bar1:do_deploy,file-bar1 file-bar2"
`----
The dep-foo1:do_deploy, dep-foo2:do_deploy, and dep-bar1:do_deploy are
added to do_populate_mfgtool dependencies. In addition, file-foo1,
file-bar1, and file-bar2 are copied to the bundle, only if the script is
enabled.
During the mfgtool bundle generation, the uuu.in files are processed and
some variables replaced. The variables are:
- MACHINE
- UBOOT_BINARY
- SPL_BINARY
- IMAGE_BASENAME
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|\
| |
| | |
imx-boot-container: drop from machine overrides
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Moving the override from the <machine>.conf files to the common
imx-base.inc and setting the use of imx-boot-container unconditionally
on the used SoC makes the use of an extra override obsolete.
Simply set UBOOT_PROVIDES_BOOT_CONTAINER depending on the used SoC
is enough. Both the U-Boot recipe and the class implementing the logic
don't need the override but only look at the variable.
This also simplifies overriding the value set in imx-base.inc
in an individual <machine>.conf should that be needed.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|/
|
|
|
|
|
|
| |
SECO/SC FW/HDMI FW and friends should not be restricted to imx-nxp-bsp.
If one wants to build machines for a mainline kernel / user space these
would be required to build the boot container too.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
|
|
|
|
| |
EULA is V42 now.
Signed-off-by: Jun Zhu <junzhu@nxp.com>
|
|
|
|
|
|
|
|
|
| |
variable
With `SECO_FIRMWARE_NAME` weak variable, user can update with new name
when new version is released.
Signed-off-by: Jun Zhu <junzhu@nxp.com>
|
|
|
|
|
|
|
|
| |
It add SECO_FIRMWARE_NAME for mx93-nxp-bsp.
It is based on 5.15.71_2.2.0 NXP BSP release.
Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io>
|
|
|
|
|
|
| |
Add SECO_FIRMWARE_NAME for i.MX 8ULP.
Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io>
|
|
|
|
|
|
|
|
|
| |
- Currently only the DDR firmware files are copied
- i.MX 8MQ SoC also requires either HDMI or DP firmware
- Refactor the copy from deploydir to the U-Boot build folder to be
generic to all firmware files
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
|
| |
|
|
|
|
| |
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, the class doesn't support multilib image/SDK generation for packages
built for MACHINE_SOCARCH with MULTILIB support and this commit fixes this.
To reproduce the error, add to local.conf:
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon-vfpv4"
IMAGE_INSTALL_append = "lib32-libusb1"
Build image with: 'bitbake core-image-minimal'
The build will fail during do_rootfs/do_populate_sdk on lib32-wayland-protocols package.
|
|
|
|
|
|
| |
Expose find_nxp_eula_licenses for others to use.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
| |
Simple order change to simplify the change in the next commit.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
| |
It doesn't make sense to inherit the class but not use it.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make fsl-kernel-localversion devtool-compatible, avoiding to depend on
${WORKDIR}/defconfig to be present. Two approaches are taken:
- for recipes inheriting kernel-yocto, LINUX_VERSION_EXTENSION is set to
LOCALVERSION; in this way, the do_kernel_configme task will use it to
set CONFIG_LOCALVERSION once the .config file is generated;
- for recipes not inheriting kernel-yocto, CONFIG_LOCALVERSION is simply
appended to the .config file contained inside the build directory.
The do_kernel_localversion is being made executed after do_kernel_configme
rather than do_kernel_metadata; in this way, modifications are applied
after the config-by-fragments step has already been performed.
Signed-off-by: Francesco Valla <valla.francesco@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
We shouldn't force `imx-boot` dependency for i.MX8 SoCs as many can use
U-Boot mainline and those use `imx-boot-container` to generate the
binary blob.
We moved the backward-compatibility note, about 'imx-boot' to the
'imx-boot-container' class.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
| |
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The fix to allow the user to override the IMAGE_FSTYPES setting for
mfgtool-initramfs-image [1] does break the default behavior by turning
the setting into a no-op:
```
# $IMAGE_FSTYPES [6 operations]
# set? /.../sources/meta-freescale/conf/machine/include/imx-base.inc:463
# "${SOC_DEFAULT_IMAGE_FSTYPES}"
# set /.../sources/poky/meta/conf/documentation.conf:214
# [doc] "Formats of root filesystem images that you want to have created."
# set? /.../sources/poky/meta/conf/bitbake.conf:832
# "tar.gz"
# set? /.../sources/meta-freescale/classes/mfgtool-initramfs-image.bbclass:16
# "cpio.zst.u-boot"
# override[mxs-generic-bsp]:set? /.../sources/meta-freescale/classes/mfgtool-initramfs-image.bbclass:17
# "cpio.gz.u-boot"
# pre-expansion value:
# "${SOC_DEFAULT_IMAGE_FSTYPES}"
IMAGE_FSTYPES="wic.bmap wic.gz"
```
The layer uses an extra variable SOC_DEFAULT_IMAGE_FSTYPES to override
IMAGE_FSTYPES [2], so use it here.
[1] 0a29050 classes: IMAGE_FSTYPES as weak variable in mfgtool-initramfs-image
[2] 541b8b8 imx-base.inc: Move IMAGE_FSTYPES override to a SoC variable
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Upstream TF-A and downstream TF-A fork uses different deployment
locations for results binaries, which leads to failures during image
build when switching between upstream and downstream versions.
Drop the custom TF-A deployment location, which is only specific to NXP
downstream deployment, allowing the TF-A binaries from upstream and
downstream to be picked up from the same location, namely - image
deployment folder.
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TF-A package can have several providers: upstream TF-A implementation,
or NXP downstream fork. Functionality to switch this provider, and to
select which package shall be included into the target image is missing
in the layer however, defaulting the usage of the layer to NXP
downstream fork only.
Introduce the Default TF-A Provider define, make it overridable, and
default it to NXP downstream fork. This allows user to re-define the
package name later shall they choose to integrate upstream TF-A package
instead.
Current upstream TF-A version (v2.7) does not support HAB feature of
i.MX8M family, see [1]. If the upstream TF-A version is chosen, then
HAB will not be available for all SoCs that are opting-in. This is
indicated in the comment where default TF-A provider variable is set.
This might change with future TF-A release, so later it can be revised
and statement in include file can be potentially removed.
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
Link: [1]: https://lists.trustedfirmware.org/archives/list/tf-a@lists.trustedfirmware.org/message/5UYYI4CNLQ5OWWHU466JBK6I5QIQ2VRS/
|
|\
| |
| | |
classes: mfgtool-initramfs-image use weak variable for IMAGE_FSTYPES
|
| |
| |
| |
| |
| |
| |
| | |
With `IMAGE_FSTYPES` weak variable, we are able to use `cpio.gz` and
generate fsl-image-mfgtool-initramfs as KERNEL_IMAGETYPES = "fitImage".
This weak variable allows use to choose a suitable values for IMAGE_FSTYPES.
(see from poky: image_types.bbclass)
|
|/
|
|
|
|
| |
It is no longer used.
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
|
|
|
|
| |
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
|
| |
Having a symlink named 'imx-boot' allows to have the consumers
of the boot container, e.g. wic to be oblivious on who created
the bootcontainer.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
|
|
|
|
|
|
|
|
| |
Choosing if the boot container FIT image is built with imx-mkimage/
imx-boot or the U-Boot provided binman can be done with the
imx-boot-container MACHINEOVERRIDES.
Change the used overrides from *nxp-bsp to *generic-bsp.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NXP EULA archive-based builds like imx-gpu-viv fail because the unpacked
folder is empty:
```
ERROR: imx-gpu-viv-1_6.4.3.p2.4-aarch64-r0 do_populate_lic: QA Issue: imx-gpu-viv: LIC_FILES_CHKSUM points to an invalid file: /opt/work/upstream/fsl-xwayland/tmp/work/cortexa53-crypto-mx8m-fsl-linux/imx-gpu-viv/1_6.4.3.p2.4-aarch64-r0/imx-gpu-viv-6.4.3.p2.4-aarch64/COPYING [license-checksum]
```
This is traced to a change in bitbake:
```
b074f4a ast: Improve function flags handling for EXPORT_FUNCTIONS
```
That change includes a fix for cleandirs, so now the call to base_unpack,
done after the NXP EULA archive unpack, does now remove the folder(s)
created by the NXP EULA archive unpack.
Fix the problem by simply unpacking the NXP EULA archives last.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The imx8dx-mek machine is similar to imx8qxp-mek and so the mx8qxp override
was included in the MACHINEOVERRIDES hierarchy. This is non-standard, and
the rework of the SOC overrides didn't handle it properly, leading to a
build break:
```
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: 8QX boot binary build
| cp: failed to access '/home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/git/iMX8DX/scfw_tcm.bin': Not a directory
| WARNING: /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636:179 exit 1 from 'cp /home/aquino/src/ossystems/oel-platform/build/tmp/deploy/images/imx8dx-mek/imx-boot$
tools/scfw_tcm.bin /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/git/iMX8DX/scfw_tcm.bin'
| WARNING: Backtrace (BB generated script):
| #1: compile_mx8x, /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636, line 179
| #2: do_compile, /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636, line 151
| #3: main, /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636, line 189
ERROR: Task (/home/aquino/src/ossystems/oel-platform/sources/meta-freescale/recipes-bsp/imx-mkimage/imx-boot_1.0.bb:do_compile) failed with exit code '1'
```
Fix the problem by removing mx8qxp from the mx8dx hierarchy and adapting
existing mx8qxp overrides appropriately.
Fixes: #1027
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
| |
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
| |
The initramfs memory size is limited, so use zstd compression level 10
to cut the cpio archive size by some 30%.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Upstream U-Boot commit d9a6f0eed66a ("tree: imx: remove old fit
generator script") dropped the FIT generator script, which was using
environment variable setting the ATF load address into the FIT ITS file.
This has been replaced by binman node description, where ATF address is
defined, hence the enviroment variable is not required anymore.
Clean-up the layer's class and machine description to remove the
variable, which is not used anymore.
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
|
|
|
|
|
|
|
|
|
| |
To assist existing layers to convert to the new BSP-specific
overrides. Besides failing the parsing of the recipes where it is in
use, we provide a script to automate most of it.
Fixes: #990.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Essentially, we extend the overrides to a generic-bsp, nxp-bsp, and
mainline-bsp.
So, for example, the mx8mq override is split into:
- imx-generic-bsp: compatible with every i.MX SoC and both BSP variants
- imx-nxp-bsp: compatible with every i.MX SoC but specific to NXP BSP
- imx-mainline-bsp: compatible with every i.MX SoC but specific to Mainline BSP
- mx8-generic-bsp: compatible with every i.MX8 SoC and both BSP variants
- mx8-nxp-bsp: compatible with every i.MX8 SoC but specific to NXP BSP
- mx8-mainline-bsp: compatible with every i.MX8 SoC but specific to Mainline BSP
- mx8m-generic-bsp: compatible with every i.MX8M SoC and both BSP variants
- mx8m-nxp-bsp: compatible with every i.MX8M SoC but specific to NXP BSP
- mx8m-mainline-bsp: compatible with every i.MX8M SoC but specific to Mainline BSP
- mx8mq-generic-bsp: compatible with every i.MX8MQ SoC and both BSP variants
- mx8mq-nxp-bsp: compatible with every i.MX8MQ SoC8 but specific to NXP BSP
- mx8mq-mainline-bsp: compatible with every i.MX8MQ SoC but specific to Mainline BSP
The extender mechanism is responsible for extending the override list to
include the generic overrides. We can then use the three different
variants to handle the metadata correctly.
Generically speaking, the conversion mainly was automated (with a lot of
back and forth until getting it right).
To convert an existing layer, the following script can be used:
```sh
git ls-files classes recipes-* \
| xargs sed -i \
-e 's,:\(mx[6-8]\w*\),:\1-nxp-bsp,g' \
-e 's,(\(mx[6-8]\w*\)),(\1-nxp-bsp),g' \
-e 's,\(mx[6-8]\w*\)|,\1-nxp-bsp|,g' \
-e 's,|\(mx[6-8]\w*\)),|\1-nxp-bsp),g' \
\
-e 's,:\(mx[5s]\w*\),:\1-generic-bsp,g' \
-e 's,(\(mx[5s]\w*\)),(\1-generic-bsp),g' \
-e 's,\(mx[5s]\w*\)|,\1-generic-bsp|,g' \
-e 's,|\(mx[5s]\w*\)),|\1-generic-bsp),g' \
\
-e 's,:\(vf\w*\),:\1-generic-bsp,g' \
-e 's,:\(vf[56]0\w*\),:\1-generic-bsp,g' \
-e 's,\(vf\w*\)|,\1-generic-bsp|,g' \
-e 's,|\(vf\w*\)),|\1-generic-bsp),g' \
-e 's,\(vf[56]0\w*\)|,\1-generic-bsp|,g' \
-e 's,|\(vf[56]0\w*\)),|\1-generic-bsp),g' \
\
-e 's,:\(imx\) ,:\1-nxp-bsp ,g' \
-e 's,(\(imx\)),(\1-nxp-bsp),g' \
-e 's,\(imx\)|,\1-nxp-bsp|,g' \
-e 's,|\(imx\)),|\1-nxp-bsp),g'
for d in $(find -type d | egrep '/mx[6-8]w*'); do
git mv $d $d-nxp-bsp
done
for d in $(find -type d | egrep '/imx$'); do
git mv $d $d-nxp-bsp
done
for d in $(find -type d | egrep '/mx[5s]w*'); do
git mv $d $d-generic-bsp
done
```
Fixes: #791.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
|
|
|
| |
The overrides ought to allow the filter out execution even for overrides
included during the extension, for this to work we need to postpone it.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
|
|
|
| |
We should be able to use a single MACHINEOVERRIDES_EXTENDER_FILTER_OUT
definition, without an override, to reduce code duplication.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Building core-image-weston with multilib support and builtin graphics
fails:
```
ERROR: Nothing PROVIDES 'virtual/arm-oelmllib32-linux-gnueabi-binutils'. Close matches:
virtual/lib32-arm-oelmllib32-linux-gnueabi-binutils
virtual/lib32-arm-oelmllib32-linux-gnueabi-go-runtime
virtual/lib32-arm-oelmllib32-linux-gnueabi-rust
ERROR: Nothing PROVIDES 'virtual/arm-oelmllib32-linux-gnueabi-gcc'. Close matches:
virtual/lib32-arm-oelmllib32-linux-gnueabi-g++
virtual/lib32-arm-oelmllib32-linux-gnueabi-gcc
virtual/lib32-arm-oelmllib32-linux-gnueabi-rust
```
This is the configuration added in local.conf:
```
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon"
IMAGE_INSTALL:append = " lib32-glibc lib32-libgcc lib32-libstdc++"
MACHINE_USES_VIVANTE_KERNEL_DRIVER_MODULE = "0"
```
This commit fixes the provides so BitBake can properly handle the
dependencies.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
|\
| |
| | |
u-boot-imx and recipes-bsp for 5.10.72-2.2.0
|
| |
| |
| |
| |
| |
| |
| |
| | |
Append a tag to the bootloader image used in the SD card image. The tag
contains the size of the bootloader image so UUU can easily find the end of
the bootloader in the SD card image.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recent version of U-Boot v2022.01 reverted boot container generation
mechanism to provide single boot container isntead of separate binaries
for SPL+DDR and U-Boot FIT. New approach provides packing of those
separate components inside the U-Boot binman, and is delivered as a
single 'flash.bin' file, which resembles the original behavior before
binman image packing was introduced.
Adapt our boot container class and WIC file to pick up this consolidated
binary instead of two separate pieces.
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
|
|
|
|
| |
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|