Hi everyone!
I am interested in using the CAAM blob mechanism in my i.MX6 device to create general purpose BLOBs (not related to encrypted boot images).
I have been studying these documents:
1. AN12554: https://www.nxp.com/docs/en/application-note/AN12554.pdf
This references (in the source code kb_test.c) the /dev/kb device.
2. AN12838: https://www.nxp.com/docs/en/application-note/AN12838.pdf
This references /dev/caam_blob.
I got some demo files and openembedded layers from: https://source.codeaurora.org/external/imxsupport/imx_sec_apps/
I have a few questions:
1. What is the difference between /dev/kb and /dev/caam_blob? don't they both provide an interface to generate BLOBs using CAAM?
2. In the files that I got (imx_sec_apps), I can see that there is a patch to add CAAM BLOBs to the kernel. However this patch seems to be for the 4.19.35 kernel. I am building 5.4.39. My kernel does not seem to have the needed caam_blob driver files (no /drivers/crypto/caam/caam_keyblob.c, for example). what would be the best way to add caam blob support to my version of the kernel? do i need to manually do it and generate my own patch?
3. In the repo mentioned above, what is the difference between the two layers: meta-caam-pkc-sec and meta-imx-ecdsa-sec?
Any information that will help me explore caam blobs further would be appreciated!
Thank you!