[U-Boot] [PATCH] crypto/fsl: fix BLOB encapsulation and decapsulation

York Sun york.sun at nxp.com
Thu Jan 4 21:12:23 UTC 2018


On 01/04/2018 09:15 AM, York Sun wrote:
> On 01/04/2018 01:39 AM, Fabio Estevam wrote:
>> Hi York,
>>
>> On Wed, Jan 3, 2018 at 3:26 PM, Tom Rini <trini at konsulko.com> wrote:
>>> On Wed, Jan 03, 2018 at 02:32:44PM -0200, Fabio Estevam wrote:
>>>> Hi Tom,
>>>>
>>>> On Wed, Dec 20, 2017 at 8:08 PM, Clemens Gruber
>>>> <clemens.gruber at pqgruber.com> wrote:
>>>>> The blob_encap and blob_decap functions were not flushing the dcache
>>>>> before passing data to CAAM/DMA and not invalidating the dcache when
>>>>> getting data back.
>>>>> Therefore, blob encapsulation and decapsulation failed with errors like
>>>>> the following due to data cache incoherency:
>>>>> "40000006: DECO: desc idx 0: Invalid KEY command"
>>>>>
>>>>> To ensure coherency, we allocate aligned memory to store the data passed
>>>>> to/from CAAM and flush/invalidate the memory regions.
>>>>> Blobs can now be encapsulated and decapsulated with the blob cmd as well
>>>>> as from board code by calling blob_encap and blob_decap directly.
>>>>>
>>>>> Tested on an i.MX6Q board.
>>>>>
>>>>> Signed-off-by: Clemens Gruber <clemens.gruber at pqgruber.com>
>>>>
>>>> This bug fix patch seems like a good candidate for 2018.01.
>>>>
>>>> Not sure who can pick it and apply it.
>>>>
>>>> Tom, York? What do you guys think?
>>>
>>> I'm fine with it coming in directly or via a PR.
>>
>> Could you please help applying this one?
>>
> 
> Sorry for late reply. Trying to catch up after my vacation. I have
> kicked off compiling tests. Will send a PR if everything is fine.
> 

This patch causes errors in almost all Freescale secure boot targets,
including ls2080aqds_SECURE_BOOT ls1088ardb_qspi_SECURE_BOOT
ls2080ardb_SECURE_BOOT ls1043ardb_sdcard_SECURE_BOOT
ls1043ardb_SECURE_BOOT ls1088aqds_qspi_SECURE_BOOT
ls1012ardb_qspi_SECURE_BOOT ls1046aqds_SECURE_BOOT
ls1043ardb_nand_SECURE_BOOT ls1046ardb_sdcard_SECURE_BOOT
ls1046ardb_qspi_SECURE_BOOT ls2088ardb_qspi_SECURE_BOOT
BSC9132QDS_NAND_DDRCLK133_SECURE P5040DS_NAND_SECURE_BOOT
P1010RDB-PA_36BIT_SPIFLASH_SECBOOT T1040QDS_SECURE_BOOT
P1010RDB-PA_36BIT_NOR_SECBOOT P2041RDB_SECURE_BOOT
P1010RDB-PB_NOR_SECBOOT B4860QDS_SECURE_BOOT P5020DS_NAND_SECURE_BOOT
T2080RDB_SECURE_BOOT P4080DS_SECURE_BOOT T2080QDS_SECURE_BOOT
BSC9132QDS_NOR_DDRCLK100_SECURE P5020DS_SECURE_BOOT P5040DS_SECURE_BOOT
P3041DS_SECURE_BOOT C29XPCIE_NOR_SECBOOT
BSC9132QDS_NAND_DDRCLK100_SECURE C29XPCIE_SPIFLASH_SECBOOT
T1024RDB_SECURE_BOOT P1010RDB-PB_36BIT_NAND_SECBOOT
T1042D4RDB_SECURE_BOOT P1010RDB-PA_NAND_SECBOOT
P1010RDB-PB_SPIFLASH_SECBOOT T1024QDS_DDR4_SECURE_BOOT
T1042RDB_SECURE_BOOT T4240QDS_SECURE_BOOT P1010RDB-PA_36BIT_NAND_SECBOOT
T1042RDB_PI_NAND_SECURE_BOOT T1040RDB_SECURE_BOOT
P1010RDB-PB_36BIT_SPIFLASH_SECBOOT P1010RDB-PB_36BIT_NOR_SECBOOT
BSC9132QDS_SDCARD_DDRCLK133_SECURE BSC9132QDS_SPIFLASH_DDRCLK100_SECURE
BSC9132QDS_SDCARD_DDRCLK100_SECURE P3041DS_NAND_SECURE_BOOT
BSC9132QDS_SPIFLASH_DDRCLK133_SECURE P1010RDB-PA_NOR_SECBOOT
T1024QDS_SECURE_BOOT T1040D4RDB_SECURE_BOOT P1010RDB-PB_NAND_SECBOOT
T4160QDS_SECURE_BOOT P1010RDB-PA_SPIFLASH_SECBOOT
BSC9132QDS_NOR_DDRCLK133_SECURE T1023RDB_SECURE_BOOT

The error is undefined reference to `BLOB_SIZE'. Please fix.

York


More information about the U-Boot mailing list