SECO_FIRMWARE_NAME is required

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

SECO_FIRMWARE_NAME is required

2,075 Views
ND12345
Contributor I

Hi,

Summary of what I'm trying to do:

I have an evaluation board (i.MX 8M mini LPD4), I'm trying to create an image for it that has openssh instead of dropbear that comes in L5.4.70-2.3.0 distribution. Eventually it would have a UI app running on the i.mx8 with Linux OS.

Changes I have made:

in local.conf (/poky/build/conf/):

1. EXTRA_IMAGE_FEATURE ?= "debug-tweaks ssh-server-openssh"

2. MACHINE ??= "imx8mm-lpddr4-evk"

Issues:

When I'm trying to bitbake the image (bitbake core-image-minimal-dev) I'm getting the following error: 

ERROR:Nothing PROVIDES 'imx-boot' (but /workdir/poky/meta/recipes-core/images/core-image-minimal-dev.bb DEPENDS on or otherwise requires it)

imx-boot was skipped: This Soc requires 'SECO_FIRMWARE_NAME', define it in 'use-imx-security-controller-firmware' bbclas

ERROR: Required build target 'core-image-minimal-dev' has no buildable providers. Missing or unbuildable dependency chain was: ['core-image-minimal-dev', 'imx-boot']

Questions:

1. Are my changes correct to what I need the image to do?

2. Is my bitbake command correct? do I need to add anything else to it? pokyuser:/workdir/poky/build$ bitbake core-image-minimal-dev

3. In the use-imx-security-controller-firmware.bbclass (poky/meta-freescale/classes/), it indicates: [Currently, only 'mx8m' family does not require SECO FW to be provided in the
# target image, therefore as a first step - the machine override is verified
# if it matches, and then derivative is taken].

-In imx8mm-evk-inc, MACHINEOVERRIDES =. "mx8:mx8m:mx8mm:". Is there another place where I need to change this? I'm guessing somewhere I have to fix the file to tell it it's an 8m mini so it does not complain about SECO is needed. I have tried putting AHAB and HAB instead of empty strings for SECO_FIRMWARE_NAME, but I get incompatibility errors instead.

I'm new to this whole NXP/bitbake world, so any help would be appreciated!

ND

 

Labels (1)
0 Kudos
8 Replies

2,050 Views
igorpadykov
NXP Employee
NXP Employee

Hi Noel 

 

-----------------------

 I have successfully built the core-image with openssh in i.mx8mm-lpddr4-evk.  Belows is my change in local.conf file (build/conf). The test yocto is L5.4.70_2.3.0.

MACHINE ??= 'imx8mmevk'

EXTRA_IMAGE_FEATURE ?= "ssh-server-openssh"

IMAGE_INSTALL_append += " packagegroup-core-ssh-openssh openssh-sftp-server"

INHERIT += "extrausers"
EXTRA_USERS_PARAMS = "usermod -P password root"

As you can see,  I can run ssh well in the imx8mm lpddr4 evk with the built core-image.

 

Screenshot 2021-04-27 161147.png

Questions:

1. Are my changes correct to what I need the image to do?

  A: You may check with my change in the local.conf and see the result.

2. Is my bitbake command correct? do I need to add anything else to it? pokyuser:/workdir/poky/build$ bitbake core-image-minimal-dev

    A:Yes. Your bitbake command is right. Y

3.In the use-imx-security-controller-firmware.bbclass (poky/meta-freescale/classes/), it indicates: [Currently, only 'mx8m' family does not require SECO FW to be provided in the
# target image, therefore as a first step - the machine override is verified
# if it matches, and then derivative is taken].

-In imx8mm-evk-inc, MACHINEOVERRIDES =. "mx8:mx8m:mx8mm:". Is there another place where I need to change this? I'm guessing somewhere I have to fix the file to tell it it's an 8m mini so it does not complain about SECO is needed. I have tried putting AHAB and HAB instead of empty strings for SECO_FIRMWARE_NAME, but I get incompatibility errors instead.

    A: I'm not sure how the SECO error occurs, since i.MX8MM system boots without SECO.

-----------------------

Best regards
igor

0 Kudos

2,045 Views
ND12345
Contributor I

Hi Igor,

Thank you for your speedy response. I'm still not able to built the image. When I change the machine to imx8mmevk and the local file to the parameters that you recommended, I get that the machine is invalid.

If I keep your local file parameters and change the machine to imx8-lpddr4-evk, then I original errors. 

The screenshot below shows both error mentioned above. 

ND12345_0-1619533657130.png

(screenshot from Docker terminal showing errors)

 

The screenshot below shows my folder structure within the docker image, am I missing any other meta folder?

ND12345_1-1619533755359.png

(screenshot from VS Code)

Thanks,

ND

0 Kudos

2,037 Views
igorpadykov
NXP Employee
NXP Employee

------------------------------

I can't see the pictures clearly, could you attach the screenshot pictures?  And what did the customer use to build the image? The structures seem to be different with Yocto. I built the image successfully with Yocto L5.4.70_2.3.0, please follow the Yocto user guide to setup the environment and change the local.conf file in your the build path. ( for example, my path : imx-yocto-bsp/build_845/conf/).

i.MX Yocto Project User’s Guide​

------------------------------

Best regards
igor

0 Kudos

2,028 Views
ND12345
Contributor I

Igor,

I have attached the screenshots as requested. I have been through the Yocto Project user guide in order to set up my environment but I will go through the steps again to see if I missed anything. If you notice anything not correct with my screenshots, please let me know.

Thank you,

ND

0 Kudos

2,018 Views
igorpadykov
NXP Employee
NXP Employee

------------------------------

As you can see, my yocto structure is different with the customer's.

 

Screenshot 2021-04-29 095342.png

-------------------------------

Best regards
igor

0 Kudos

1,992 Views
ND12345
Contributor I

Hi Igor,

So I was able to get passed the SECO issue and I'm able to bitbake with core-image-minimal, thanks for you help.

I do have a related question, in the image that you provided of your structure, I see that you have meta-imx layer. I can't find that on github or the yocto project. Where can I clone it from? The reason I'm asking, in the 5.4.70 docs, it shows in order to do imx-image-full I would need the meta-imx/meta-sdk layer. 

Thanks,

ND

0 Kudos

1,974 Views
igorpadykov
NXP Employee
NXP Employee

-----------------------

For meta-imx layer, you may check here.

https://source.codeaurora.org/external/imx/meta-imx

But the layer should be in the structure when you follow the right steps of Yocto User Guide.

-----------------------

Best regards
igor

0 Kudos

1,969 Views
ND12345
Contributor I

Thanks Igor.

Yocto User Guide shows to use repo commands which I don't have access to in Docker Station and it won't let me install it. So I have been using git clone command instead, so I'm doing it one layer at a time. Thanks once again.

ND

0 Kudos