Message ID | 20250730180302.7507-1-b-padhi@ti.com |
---|---|
State | Superseded |
Delegated to: | Ryan Eatmon |
Headers | show |
Series | [master/scarthgap,v2] ti-pka-fw: Add a recipe to package prebuilt PKA firmware | expand |
On 7/30/25 1:03 PM, Beleswar Padhi wrote: > Add a recipe to install the PKA firmware in root filesystem needed by > sa2_ul driver for PKA operations across all K3 platforms. > > Signed-off-by: Beleswar Padhi <b-padhi@ti.com> > --- > v2: Changelog: > 1. Use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to package PKA firmware from > within meta-ti itself. > 2. Update LICENCE name and LIC_FILES_CHKSUM to appropriate licence from > ti-linux-firmware. > > Link to v1: > https://lore.kernel.org/all/20250730074831.2640806-1-b-padhi@ti.com/ > > meta-ti-bsp/conf/machine/include/k3.inc | 1 + > .../recipes-bsp/ti-linux-fw/ti-linux-fw.inc | 1 + > .../recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb | 38 +++++++++++++++++++ > 3 files changed, 40 insertions(+) > create mode 100644 meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb > > diff --git a/meta-ti-bsp/conf/machine/include/k3.inc b/meta-ti-bsp/conf/machine/include/k3.inc > index 7ec6b51e..fdcf193d 100644 > --- a/meta-ti-bsp/conf/machine/include/k3.inc > +++ b/meta-ti-bsp/conf/machine/include/k3.inc > @@ -40,6 +40,7 @@ UBI_VOLNAME = "rootfs" > > # List common SoC features, may need to add touchscreen for specific machines > MACHINE_FEATURES = "apm usbgadget usbhost vfat ext2 alsa pci optee-ftpm" > +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "ti-pka-fw" > > IMAGE_FSTYPES += "tar.xz wic.xz wic.bmap" > > diff --git a/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc b/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc > index 863d1a7e..7fe2c592 100644 > --- a/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc > +++ b/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc > @@ -18,6 +18,7 @@ TI_DM_FW_VERSION = "11.01.09" > TI_SYSFW_VERSION = "11.01.05" > TI_HSM_DEMO_FW_VERSION = "11.00.09" > TAD5212_FW_VERSION = "1.0.0.0" > +TI_PKA_FW_VERSION = "2.1.0" > > TI_LINUX_FW_SRCREV ?= "f59a711599249ecac75fea38b7a15ef9137d650d" > SRCREV = "${TI_LINUX_FW_SRCREV}" > diff --git a/meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb b/meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb > new file mode 100644 > index 00000000..588bbb5e > --- /dev/null > +++ b/meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb > @@ -0,0 +1,38 @@ > +SUMMARY = "PKA prebuilt binary firmware image" > + > +LICENSE = "TI-TFL | INSIDE Secure" > +LIC_FILES_CHKSUM = "file://LICENCE.pka_fw;md5=dc20391b287874f0dce069cf87917206" > + > +COMPATIBLE_MACHINE = "k3" > + > +PACKAGE_ARCH = "${MACHINE_ARCH}" You don't need this line above, this package is not customized based on the specific machine, works the same for all. > + > +inherit update-alternatives No need for update-alternatives, this is the only firmware that can be selected to run on the PKA IP. Drop this line and all the "ALTERNATIVE*" lines below. Andrew > + > +require recipes-bsp/ti-linux-fw/ti-linux-fw.inc > + > +PV = "${TI_PKA_FW_VERSION}" > +PR = "${INC_PR}.0" > + > +PKA_FW_DIR = "ti-pka" > + > +INSTALL_PKA_FW_DIR = "${nonarch_base_libdir}/firmware/${PKA_FW_DIR}" > + > +PKA_FW_NAME = "eip29t2_2.1.0.bin" > + > +do_install() { > + # Install Firmware > + install -d ${D}${INSTALL_PKA_FW_DIR} > + install -m 0644 ${S}/${PKA_FW_DIR}/${PKA_FW_NAME} ${D}${INSTALL_PKA_FW_DIR} > +} > + > +# Set up names for the firmwares > +ALTERNATIVE:${PN} = "eip29t2_2.1.0.bin" > + > +# Set up link names for the firmware > +ALTERNATIVE_LINK_NAME[eip29t2_2.1.0.bin] = "${nonarch_base_libdir}/firmware/${PKA_FW_NAME}" > + > +# Create the firmware alternative > +ALTERNATIVE_TARGET[eip29t2_2.1.0.bin] = "${INSTALL_PKA_FW_DIR}/${PKA_FW_NAME}" > + > +ALTERNATIVE_PRIORITY = "10"
diff --git a/meta-ti-bsp/conf/machine/include/k3.inc b/meta-ti-bsp/conf/machine/include/k3.inc index 7ec6b51e..fdcf193d 100644 --- a/meta-ti-bsp/conf/machine/include/k3.inc +++ b/meta-ti-bsp/conf/machine/include/k3.inc @@ -40,6 +40,7 @@ UBI_VOLNAME = "rootfs" # List common SoC features, may need to add touchscreen for specific machines MACHINE_FEATURES = "apm usbgadget usbhost vfat ext2 alsa pci optee-ftpm" +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "ti-pka-fw" IMAGE_FSTYPES += "tar.xz wic.xz wic.bmap" diff --git a/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc b/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc index 863d1a7e..7fe2c592 100644 --- a/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc +++ b/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc @@ -18,6 +18,7 @@ TI_DM_FW_VERSION = "11.01.09" TI_SYSFW_VERSION = "11.01.05" TI_HSM_DEMO_FW_VERSION = "11.00.09" TAD5212_FW_VERSION = "1.0.0.0" +TI_PKA_FW_VERSION = "2.1.0" TI_LINUX_FW_SRCREV ?= "f59a711599249ecac75fea38b7a15ef9137d650d" SRCREV = "${TI_LINUX_FW_SRCREV}" diff --git a/meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb b/meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb new file mode 100644 index 00000000..588bbb5e --- /dev/null +++ b/meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb @@ -0,0 +1,38 @@ +SUMMARY = "PKA prebuilt binary firmware image" + +LICENSE = "TI-TFL | INSIDE Secure" +LIC_FILES_CHKSUM = "file://LICENCE.pka_fw;md5=dc20391b287874f0dce069cf87917206" + +COMPATIBLE_MACHINE = "k3" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +inherit update-alternatives + +require recipes-bsp/ti-linux-fw/ti-linux-fw.inc + +PV = "${TI_PKA_FW_VERSION}" +PR = "${INC_PR}.0" + +PKA_FW_DIR = "ti-pka" + +INSTALL_PKA_FW_DIR = "${nonarch_base_libdir}/firmware/${PKA_FW_DIR}" + +PKA_FW_NAME = "eip29t2_2.1.0.bin" + +do_install() { + # Install Firmware + install -d ${D}${INSTALL_PKA_FW_DIR} + install -m 0644 ${S}/${PKA_FW_DIR}/${PKA_FW_NAME} ${D}${INSTALL_PKA_FW_DIR} +} + +# Set up names for the firmwares +ALTERNATIVE:${PN} = "eip29t2_2.1.0.bin" + +# Set up link names for the firmware +ALTERNATIVE_LINK_NAME[eip29t2_2.1.0.bin] = "${nonarch_base_libdir}/firmware/${PKA_FW_NAME}" + +# Create the firmware alternative +ALTERNATIVE_TARGET[eip29t2_2.1.0.bin] = "${INSTALL_PKA_FW_DIR}/${PKA_FW_NAME}" + +ALTERNATIVE_PRIORITY = "10"
Add a recipe to install the PKA firmware in root filesystem needed by sa2_ul driver for PKA operations across all K3 platforms. Signed-off-by: Beleswar Padhi <b-padhi@ti.com> --- v2: Changelog: 1. Use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to package PKA firmware from within meta-ti itself. 2. Update LICENCE name and LIC_FILES_CHKSUM to appropriate licence from ti-linux-firmware. Link to v1: https://lore.kernel.org/all/20250730074831.2640806-1-b-padhi@ti.com/ meta-ti-bsp/conf/machine/include/k3.inc | 1 + .../recipes-bsp/ti-linux-fw/ti-linux-fw.inc | 1 + .../recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb | 38 +++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 meta-ti-bsp/recipes-bsp/ti-pka-fw/ti-pka-fw_git.bb