* [PATCH v2 0/2] i.MX6ULL: set engine software for Secure Boot on HABv4
@ 2020-09-11 7:37 Maik Otto
2020-09-11 7:37 ` [PATCH v2 1/2] arch: arm: boards phytec: Split flash header for pcl063 with i.MX6Ul and i.MX6ULL Maik Otto
2020-09-11 7:37 ` [PATCH v2 2/2] arch: arm: mach-imx: Add habv4 config file for i.MX6ULL Maik Otto
0 siblings, 2 replies; 5+ messages in thread
From: Maik Otto @ 2020-09-11 7:37 UTC (permalink / raw)
To: barebox; +Cc: Maik Otto
The i.MX6ULL has no CAAM engine for Secure Boot on HABv4. This patch series
set the engine software for i.MX6ULL and for the PHYTEC boards PCL-063 with
i.MX6ULL.
Changes in v2:
- Rework in Patch 2 the file habv4-imx6-gencsf.h, because cst 3.3.1 fails
for engine software with parameter Feature.
Maik Otto (2):
arch: arm: boards phytec: Split flash header for pcl063 with i.MX6Ul
and i.MX6ULL
arch: arm: mach-imx: Add habv4 config file for i.MX6ULL
...tec-pcl063-512mb.imxcfg => flash-header-phytec-pcl063-512mb.h} | 1 -
.../phytec-som-imx6/flash-header-phytec-pcl063ul-512mb.imxcfg | 3 +++
...63-256mb.imxcfg => flash-header-phytec-pcl063ull-256mb.imxcfg} | 2 +-
.../phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg | 3 +++
arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h | 8 ++++++++
arch/arm/mach-imx/include/mach/habv4-imx6ull-gencsf.h | 4 ++++
images/Makefile.imx | 8 ++++----
7 files changed, 23 insertions(+), 6 deletions(-)
rename arch/arm/boards/phytec-som-imx6/{flash-header-phytec-pcl063-512mb.imxcfg => flash-header-phytec-pcl063-512mb.h} (83%)
create mode 100644 arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ul-512mb.imxcfg
rename arch/arm/boards/phytec-som-imx6/{flash-header-phytec-pcl063-256mb.imxcfg => flash-header-phytec-pcl063ull-256mb.imxcfg} (82%)
create mode 100644 arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
create mode 100644 arch/arm/mach-imx/include/mach/habv4-imx6ull-gencsf.h
--
2.7.4
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v2 1/2] arch: arm: boards phytec: Split flash header for pcl063 with i.MX6Ul and i.MX6ULL
2020-09-11 7:37 [PATCH v2 0/2] i.MX6ULL: set engine software for Secure Boot on HABv4 Maik Otto
@ 2020-09-11 7:37 ` Maik Otto
2020-09-11 7:37 ` [PATCH v2 2/2] arch: arm: mach-imx: Add habv4 config file for i.MX6ULL Maik Otto
1 sibling, 0 replies; 5+ messages in thread
From: Maik Otto @ 2020-09-11 7:37 UTC (permalink / raw)
To: barebox; +Cc: Maik Otto
i.MX6UL and i.MX6ULL have different engines for Secure Boot on HABv4.
For better differentiation rename existing pcl063 flash headers to
pcl063ul and pcl063ull.
Signed-off-by: Maik Otto <m.otto@phytec.de>
---
Changes in v2:
- none
---
| 1 -
| 3 +++
| 0
| 3 +++
images/Makefile.imx | 8 ++++----
5 files changed, 10 insertions(+), 5 deletions(-)
rename arch/arm/boards/phytec-som-imx6/{flash-header-phytec-pcl063-512mb.imxcfg => flash-header-phytec-pcl063-512mb.h} (83%)
create mode 100644 arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ul-512mb.imxcfg
rename arch/arm/boards/phytec-som-imx6/{flash-header-phytec-pcl063-256mb.imxcfg => flash-header-phytec-pcl063ull-256mb.imxcfg} (100%)
create mode 100644 arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
diff --git a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-512mb.h
similarity index 83%
rename from arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg
rename to arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-512mb.h
index 26998c3..c4122d2 100644
--- a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg
+++ b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-512mb.h
@@ -7,4 +7,3 @@
wm 32 0x021B0000 0x84180000
#include "flash-header-phytec-pcl063.h"
-#include <mach/habv4-imx6-gencsf.h>
diff --git a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ul-512mb.imxcfg b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ul-512mb.imxcfg
new file mode 100644
index 0000000..f629a8e
--- /dev/null
+++ b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ul-512mb.imxcfg
@@ -0,0 +1,3 @@
+
+#include "flash-header-phytec-pcl063-512mb.h"
+#include <mach/habv4-imx6-gencsf.h>
diff --git a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-256mb.imxcfg b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-256mb.imxcfg
similarity index 100%
rename from arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063-256mb.imxcfg
rename to arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-256mb.imxcfg
diff --git a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
new file mode 100644
index 0000000..f629a8e
--- /dev/null
+++ b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
@@ -0,0 +1,3 @@
+
+#include "flash-header-phytec-pcl063-512mb.h"
+#include <mach/habv4-imx6-gencsf.h>
diff --git a/images/Makefile.imx b/images/Makefile.imx
index 7b24e5f..3434a10 100644
--- a/images/Makefile.imx
+++ b/images/Makefile.imx
@@ -346,13 +346,13 @@ $(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_5
$(call build_imx_habv4img, CONFIG_MACH_NXP_IMX6ULL_EVK, start_nxp_imx6ull_evk, nxp-imx6ull-evk/flash-header-nxp-imx6ull-evk, nxp-imx6ull-evk)
-$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ul_som_nand_512mb, phytec-som-imx6/flash-header-phytec-pcl063-512mb, phytec-phycore-imx6ul-nand-512mb)
+$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ul_som_nand_512mb, phytec-som-imx6/flash-header-phytec-pcl063ul-512mb, phytec-phycore-imx6ul-nand-512mb)
-$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ull_som_lc_nand_256mb, phytec-som-imx6/flash-header-phytec-pcl063-256mb, phytec-phycore-imx6ull-lc-nand-256mb)
+$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ull_som_lc_nand_256mb, phytec-som-imx6/flash-header-phytec-pcl063ull-256mb, phytec-phycore-imx6ull-lc-nand-256mb)
-$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ull_som_nand_512mb, phytec-som-imx6/flash-header-phytec-pcl063-512mb, phytec-phycore-imx6ull-nand-512mb)
+$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ull_som_nand_512mb, phytec-som-imx6/flash-header-phytec-pcl063ull-512mb, phytec-phycore-imx6ull-nand-512mb)
-$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ull_som_emmc_512mb, phytec-som-imx6/flash-header-phytec-pcl063-512mb, phytec-phycore-imx6ull-emmc-512mb)
+$(call build_imx_habv4img, CONFIG_MACH_PHYTEC_SOM_IMX6, start_phytec_phycore_imx6ull_som_emmc_512mb, phytec-som-imx6/flash-header-phytec-pcl063ull-512mb, phytec-phycore-imx6ull-emmc-512mb)
$(call build_imx_habv4img, CONFIG_MACH_PROTONIC_IMX6, start_imx6ul_prti6g, protonic-imx6/flash-header-prti6g, protonic-prti6g)
--
2.7.4
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v2 2/2] arch: arm: mach-imx: Add habv4 config file for i.MX6ULL
2020-09-11 7:37 [PATCH v2 0/2] i.MX6ULL: set engine software for Secure Boot on HABv4 Maik Otto
2020-09-11 7:37 ` [PATCH v2 1/2] arch: arm: boards phytec: Split flash header for pcl063 with i.MX6Ul and i.MX6ULL Maik Otto
@ 2020-09-11 7:37 ` Maik Otto
2020-09-14 8:44 ` Sascha Hauer
1 sibling, 1 reply; 5+ messages in thread
From: Maik Otto @ 2020-09-11 7:37 UTC (permalink / raw)
To: barebox; +Cc: Maik Otto
The i.MX6ULL has no CAAM engine for Secure Boot on HABv4 (NXP AN4581).
For i.MX6ULL the engine Software (SW) must used for the image
validation.
Signed-off-by: Maik Otto <m.otto@phytec.de>
---
Changes in v2:
- Rework the file habv4-imx6-gencsf.h, because cst 3.3.1 fails for engine
software with parameter Feature.
---
| 2 +-
| 2 +-
arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h | 8 ++++++++
arch/arm/mach-imx/include/mach/habv4-imx6ull-gencsf.h | 4 ++++
4 files changed, 14 insertions(+), 2 deletions(-)
create mode 100644 arch/arm/mach-imx/include/mach/habv4-imx6ull-gencsf.h
--git a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-256mb.imxcfg b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-256mb.imxcfg
index b93e81f..e6871d8 100644
--- a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-256mb.imxcfg
+++ b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-256mb.imxcfg
@@ -7,4 +7,4 @@
wm 32 0x021B0000 0x83180000
#include "flash-header-phytec-pcl063.h"
-#include <mach/habv4-imx6-gencsf.h>
+#include <mach/habv4-imx6ull-gencsf.h>
--git a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
index f629a8e..d2d7183 100644
--- a/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
+++ b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
@@ -1,3 +1,3 @@
#include "flash-header-phytec-pcl063-512mb.h"
-#include <mach/habv4-imx6-gencsf.h>
+#include <mach/habv4-imx6ull-gencsf.h>
diff --git a/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h b/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
index 17c4d79..ee21e0b 100644
--- a/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
+++ b/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
@@ -14,7 +14,11 @@ hab Hash Algorithm = sha256
hab Engine Configuration = 0
hab Certificate Format = X509
hab Signature Format = CMS
+#ifndef SETUP_HABV4_ENGINE
hab Engine = CAAM
+#else
+hab Engine = SETUP_HABV4_ENGINE
+#endif
hab [Install SRK]
hab File = CONFIG_HABV4_TABLE_BIN
@@ -28,8 +32,12 @@ hab File = CONFIG_HABV4_CSF_CRT_PEM
hab [Authenticate CSF]
hab [Unlock]
+#ifndef SETUP_HABV4_ENGINE
hab Engine = CAAM
hab Features = RNG, MID
+#else
+hab Engine = SETUP_HABV4_ENGINE
+#endif
hab [Install Key]
/* verification key index in key store (0, 2...4) */
diff --git a/arch/arm/mach-imx/include/mach/habv4-imx6ull-gencsf.h b/arch/arm/mach-imx/include/mach/habv4-imx6ull-gencsf.h
new file mode 100644
index 0000000..54c4915
--- /dev/null
+++ b/arch/arm/mach-imx/include/mach/habv4-imx6ull-gencsf.h
@@ -0,0 +1,4 @@
+
+#define SETUP_HABV4_ENGINE SW
+
+#include <mach/habv4-imx6-gencsf.h>
--
2.7.4
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 2/2] arch: arm: mach-imx: Add habv4 config file for i.MX6ULL
2020-09-11 7:37 ` [PATCH v2 2/2] arch: arm: mach-imx: Add habv4 config file for i.MX6ULL Maik Otto
@ 2020-09-14 8:44 ` Sascha Hauer
2020-09-17 9:35 ` Maik Otto
0 siblings, 1 reply; 5+ messages in thread
From: Sascha Hauer @ 2020-09-14 8:44 UTC (permalink / raw)
To: Maik Otto; +Cc: barebox
Hi Maik,
On Fri, Sep 11, 2020 at 09:37:37AM +0200, Maik Otto wrote:
> The i.MX6ULL has no CAAM engine for Secure Boot on HABv4 (NXP AN4581).
> For i.MX6ULL the engine Software (SW) must used for the image
> validation.
>
> +++ b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
> @@ -1,3 +1,3 @@
>
> #include "flash-header-phytec-pcl063-512mb.h"
> -#include <mach/habv4-imx6-gencsf.h>
> +#include <mach/habv4-imx6ull-gencsf.h>
> diff --git a/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h b/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
> index 17c4d79..ee21e0b 100644
> --- a/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
> +++ b/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
I would prefer to rename this file to habv4-imx6-gencsf-template.h and
let it start with:
#ifndef SETUP_HABV4_ENGINE
#error "SETUP_HABV4_ENGINE undefined"
#endif
The habv4-imx6-gencsf.h would then only set the defines and include the
template file like you already did for the i.MX6ULL.
This makes it more clear what defines the file expects.
> @@ -14,7 +14,11 @@ hab Hash Algorithm = sha256
> hab Engine Configuration = 0
> hab Certificate Format = X509
> hab Signature Format = CMS
> +#ifndef SETUP_HABV4_ENGINE
> hab Engine = CAAM
> +#else
> +hab Engine = SETUP_HABV4_ENGINE
> +#endif
>
> hab [Install SRK]
> hab File = CONFIG_HABV4_TABLE_BIN
> @@ -28,8 +32,12 @@ hab File = CONFIG_HABV4_CSF_CRT_PEM
> hab [Authenticate CSF]
>
> hab [Unlock]
> +#ifndef SETUP_HABV4_ENGINE
> hab Engine = CAAM
> hab Features = RNG, MID
> +#else
> +hab Engine = SETUP_HABV4_ENGINE
> +#endif
Do we need this #ifdef here? Can't we instead have a
SETUP_HABV4_FEATURES macro and let the SoC specific files define it as
#define SETUP_HABV4_FEATURES RNG,MID
Sascha
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 2/2] arch: arm: mach-imx: Add habv4 config file for i.MX6ULL
2020-09-14 8:44 ` Sascha Hauer
@ 2020-09-17 9:35 ` Maik Otto
0 siblings, 0 replies; 5+ messages in thread
From: Maik Otto @ 2020-09-17 9:35 UTC (permalink / raw)
To: Sascha Hauer; +Cc: barebox
Hi Sascha,
Am 14.09.2020 um 10:44 schrieb Sascha Hauer:
> Hi Maik,
>
> On Fri, Sep 11, 2020 at 09:37:37AM +0200, Maik Otto wrote:
>> The i.MX6ULL has no CAAM engine for Secure Boot on HABv4 (NXP AN4581).
>> For i.MX6ULL the engine Software (SW) must used for the image
>> validation.
>>
>> +++ b/arch/arm/boards/phytec-som-imx6/flash-header-phytec-pcl063ull-512mb.imxcfg
>> @@ -1,3 +1,3 @@
>>
>> #include "flash-header-phytec-pcl063-512mb.h"
>> -#include <mach/habv4-imx6-gencsf.h>
>> +#include <mach/habv4-imx6ull-gencsf.h>
>> diff --git a/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h b/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
>> index 17c4d79..ee21e0b 100644
>> --- a/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
>> +++ b/arch/arm/mach-imx/include/mach/habv4-imx6-gencsf.h
> I would prefer to rename this file to habv4-imx6-gencsf-template.h and
> let it start with:
>
> #ifndef SETUP_HABV4_ENGINE
> #error "SETUP_HABV4_ENGINE undefined"
> #endif
>
> The habv4-imx6-gencsf.h would then only set the defines and include the
> template file like you already did for the i.MX6ULL.
>
> This makes it more clear what defines the file expects.
ok, is fine. I will change it
>> @@ -14,7 +14,11 @@ hab Hash Algorithm = sha256
>> hab Engine Configuration = 0
>> hab Certificate Format = X509
>> hab Signature Format = CMS
>> +#ifndef SETUP_HABV4_ENGINE
>> hab Engine = CAAM
>> +#else
>> +hab Engine = SETUP_HABV4_ENGINE
>> +#endif
>>
>> hab [Install SRK]
>> hab File = CONFIG_HABV4_TABLE_BIN
>> @@ -28,8 +32,12 @@ hab File = CONFIG_HABV4_CSF_CRT_PEM
>> hab [Authenticate CSF]
>>
>> hab [Unlock]
>> +#ifndef SETUP_HABV4_ENGINE
>> hab Engine = CAAM
>> hab Features = RNG, MID
>> +#else
>> +hab Engine = SETUP_HABV4_ENGINE
>> +#endif
> Do we need this #ifdef here? Can't we instead have a
> SETUP_HABV4_FEATURES macro and let the SoC specific files define it as
>
> #define SETUP_HABV4_FEATURES RNG,MID
yes we need it, because the cst tool in version 3.3.1 fails for hab
Engine = SW with hab Features =
The older versions of cst tool had no problem with it.
I rework it to
#ifdef SETUP_HABV4_FEATURES
hab FEATURES = SETUP_HABV4_FEATURES
#endif
>
> Sascha
>
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-09-17 9:35 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-11 7:37 [PATCH v2 0/2] i.MX6ULL: set engine software for Secure Boot on HABv4 Maik Otto
2020-09-11 7:37 ` [PATCH v2 1/2] arch: arm: boards phytec: Split flash header for pcl063 with i.MX6Ul and i.MX6ULL Maik Otto
2020-09-11 7:37 ` [PATCH v2 2/2] arch: arm: mach-imx: Add habv4 config file for i.MX6ULL Maik Otto
2020-09-14 8:44 ` Sascha Hauer
2020-09-17 9:35 ` Maik Otto
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox