diff options
author | Otavio Salvador <otavio@ossystems.com.br> | 2023-04-24 18:06:00 -0300 |
---|---|---|
committer | Otavio Salvador <otavio@ossystems.com.br> | 2023-04-24 19:33:46 -0300 |
commit | 90df14f9af28fd55783a689a00ac9e20f674ca4e (patch) | |
tree | 05985bf81b2fb92ec504d53146c828d0839510f5 | |
parent | e67e62d26da5ec5be31b8341fb98720379766a64 (diff) | |
download | meta-freescale-90df14f9af28fd55783a689a00ac9e20f674ca4e.tar.gz |
imx-boot-firmware-files: consolidate deploy firmware files across SoCsrework-firmware-imx
The firmware-imx-8 and firmware-imx-8m recipes are mostly code
duplication and some parts even used by i.MX93 so consolidating it
allows code reuse and clearness.
Fixes: #1426.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-rw-r--r-- | conf/machine/include/imx-base.inc | 6 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/firmware-imx-8_8.18.bb | 39 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/firmware-imx-8m_8.18.bb | 24 | ||||
-rw-r--r-- | recipes-bsp/firmware-imx/imx-boot-firmware-files_8.18.bb | 62 |
4 files changed, 65 insertions, 66 deletions
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc index 0959dfe3..10c3601a 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc | |||
@@ -380,11 +380,11 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS:append = " \ | |||
380 | 380 | ||
381 | # Firmware used for boot. | 381 | # Firmware used for boot. |
382 | IMX_EXTRA_FIRMWARE ?= "" | 382 | IMX_EXTRA_FIRMWARE ?= "" |
383 | IMX_EXTRA_FIRMWARE:mx8-generic-bsp = "firmware-imx-8 imx-sc-firmware imx-seco" | 383 | IMX_EXTRA_FIRMWARE:mx8-generic-bsp = "imx-boot-firmware-files imx-sc-firmware imx-seco" |
384 | IMX_EXTRA_FIRMWARE:mx8m-generic-bsp = "firmware-imx-8m" | 384 | IMX_EXTRA_FIRMWARE:mx8m-generic-bsp = "imx-boot-firmware-files" |
385 | IMX_EXTRA_FIRMWARE:mx8x-generic-bsp = "imx-sc-firmware imx-seco" | 385 | IMX_EXTRA_FIRMWARE:mx8x-generic-bsp = "imx-sc-firmware imx-seco" |
386 | IMX_EXTRA_FIRMWARE:mx8ulp-generic-bsp = "firmware-upower firmware-sentinel" | 386 | IMX_EXTRA_FIRMWARE:mx8ulp-generic-bsp = "firmware-upower firmware-sentinel" |
387 | IMX_EXTRA_FIRMWARE:mx93-generic-bsp = "firmware-imx-8 firmware-sentinel" | 387 | IMX_EXTRA_FIRMWARE:mx93-generic-bsp = "imx-boot-firmware-files firmware-sentinel" |
388 | 388 | ||
389 | # Firmware | 389 | # Firmware |
390 | MACHINE_FIRMWARE ?= "" | 390 | MACHINE_FIRMWARE ?= "" |
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.18.bb b/recipes-bsp/firmware-imx/firmware-imx-8_8.18.bb deleted file mode 100644 index 588d45ee..00000000 --- a/recipes-bsp/firmware-imx/firmware-imx-8_8.18.bb +++ /dev/null | |||
@@ -1,39 +0,0 @@ | |||
1 | # Copyright (C) 2018-2020 NXP | ||
2 | SUMMARY = "Freescale i.MX firmware for 8 family" | ||
3 | DESCRIPTION = "Freescale i.MX firmware for 8 family" | ||
4 | |||
5 | require firmware-imx-${PV}.inc | ||
6 | |||
7 | inherit deploy nopackages | ||
8 | |||
9 | do_install[noexec] = "1" | ||
10 | |||
11 | SOC_FAMILY = "INVALID" | ||
12 | SOC_FAMILY:mx8-generic-bsp = "mx8" | ||
13 | SOC_FAMILY:mx9-generic-bsp = "mx9" | ||
14 | |||
15 | deploy_mx8() { | ||
16 | # Cadence HDMI | ||
17 | install -m 0644 ${S}/firmware/hdmi/cadence/hdmitxfw.bin ${DEPLOYDIR} | ||
18 | install -m 0644 ${S}/firmware/hdmi/cadence/hdmirxfw.bin ${DEPLOYDIR} | ||
19 | install -m 0644 ${S}/firmware/hdmi/cadence/dpfw.bin ${DEPLOYDIR} | ||
20 | } | ||
21 | |||
22 | deploy_mx9() { | ||
23 | # Synopsys DDR | ||
24 | for ddr_firmware in ${DDR_FIRMWARE_NAME}; do | ||
25 | install -m 0644 ${S}/firmware/ddr/synopsys/${ddr_firmware} ${DEPLOYDIR} | ||
26 | done | ||
27 | } | ||
28 | |||
29 | do_deploy() { | ||
30 | deploy_${SOC_FAMILY} | ||
31 | } | ||
32 | |||
33 | addtask deploy after do_install before do_build | ||
34 | |||
35 | PACKAGE_ARCH = "${MACHINE_SOCARCH}" | ||
36 | |||
37 | COMPATIBLE_MACHINE = "(mx8-generic-bsp|mx9-generic-bsp)" | ||
38 | COMPATIBLE_MACHINE:mx8m-generic-bsp = "(^$)" | ||
39 | COMPATIBLE_MACHINE:mx8x-generic-bsp = "(^$)" | ||
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8m_8.18.bb b/recipes-bsp/firmware-imx/firmware-imx-8m_8.18.bb deleted file mode 100644 index 152ef0b5..00000000 --- a/recipes-bsp/firmware-imx/firmware-imx-8m_8.18.bb +++ /dev/null | |||
@@ -1,24 +0,0 @@ | |||
1 | # Copyright (C) 2018-2020 NXP | ||
2 | SUMMARY = "Freescale i.MX firmware for 8M and 8M Mini family" | ||
3 | DESCRIPTION = "Freescale i.MX firmware for 8M and 8M Mini family" | ||
4 | |||
5 | require firmware-imx-${PV}.inc | ||
6 | |||
7 | inherit deploy | ||
8 | |||
9 | do_install[noexec] = "1" | ||
10 | |||
11 | do_deploy() { | ||
12 | # Synopsys DDR | ||
13 | for ddr_firmware in ${DDR_FIRMWARE_NAME}; do | ||
14 | install -m 0644 ${S}/firmware/ddr/synopsys/${ddr_firmware} ${DEPLOYDIR} | ||
15 | done | ||
16 | # Cadence DP and HDMI | ||
17 | install -m 0644 ${S}/firmware/hdmi/cadence/signed_dp_imx8m.bin ${DEPLOYDIR} | ||
18 | install -m 0644 ${S}/firmware/hdmi/cadence/signed_hdmi_imx8m.bin ${DEPLOYDIR} | ||
19 | } | ||
20 | addtask deploy after do_install before do_build | ||
21 | |||
22 | PACKAGE_ARCH = "${MACHINE_SOCARCH}" | ||
23 | |||
24 | COMPATIBLE_MACHINE = "(mx8m-generic-bsp)" | ||
diff --git a/recipes-bsp/firmware-imx/imx-boot-firmware-files_8.18.bb b/recipes-bsp/firmware-imx/imx-boot-firmware-files_8.18.bb new file mode 100644 index 00000000..d4408cf1 --- /dev/null +++ b/recipes-bsp/firmware-imx/imx-boot-firmware-files_8.18.bb | |||
@@ -0,0 +1,62 @@ | |||
1 | # Copyright (C) 2018-2020 NXP | ||
2 | SUMMARY = "Freescale i.MX firmware for 8 family" | ||
3 | DESCRIPTION = "Freescale i.MX firmware for 8 family" | ||
4 | |||
5 | require firmware-imx-${PV}.inc | ||
6 | |||
7 | inherit deploy nopackages | ||
8 | |||
9 | do_install[noexec] = "1" | ||
10 | |||
11 | DEPLOY_FOR = "" | ||
12 | DEPLOY_FOR:mx8-generic-bsp = "mx8" | ||
13 | DEPLOY_FOR:mx8m-generic-bsp = "mx8 mx8m" | ||
14 | DEPLOY_FOR:mx9-generic-bsp = "mx9" | ||
15 | |||
16 | deploy_for_mx8() { | ||
17 | # Cadence HDMI | ||
18 | install -m 0644 ${S}/firmware/hdmi/cadence/hdmitxfw.bin ${DEPLOYDIR} | ||
19 | install -m 0644 ${S}/firmware/hdmi/cadence/hdmirxfw.bin ${DEPLOYDIR} | ||
20 | install -m 0644 ${S}/firmware/hdmi/cadence/dpfw.bin ${DEPLOYDIR} | ||
21 | } | ||
22 | |||
23 | deploy_for_mx8m() { | ||
24 | # Synopsys DDR | ||
25 | for ddr_firmware in ${DDR_FIRMWARE_NAME}; do | ||
26 | install -m 0644 ${S}/firmware/ddr/synopsys/${ddr_firmware} ${DEPLOYDIR} | ||
27 | done | ||
28 | |||
29 | # Cadence DP and HDMI | ||
30 | install -m 0644 ${S}/firmware/hdmi/cadence/signed_dp_imx8m.bin ${DEPLOYDIR} | ||
31 | install -m 0644 ${S}/firmware/hdmi/cadence/signed_hdmi_imx8m.bin ${DEPLOYDIR} | ||
32 | } | ||
33 | |||
34 | |||
35 | deploy_for_mx9() { | ||
36 | # Synopsys DDR | ||
37 | for ddr_firmware in ${DDR_FIRMWARE_NAME}; do | ||
38 | install -m 0644 ${S}/firmware/ddr/synopsys/${ddr_firmware} ${DEPLOYDIR} | ||
39 | done | ||
40 | } | ||
41 | |||
42 | python () { | ||
43 | # Manually add the required functions as dependencies otherwise they won't be included in the | ||
44 | # final run script. | ||
45 | deploy_for = d.getVar('DEPLOY_FOR', True).split() | ||
46 | for soc in deploy_for: | ||
47 | d.appendVarFlag('do_deploy', 'vardeps', ' deploy_for_%s' % soc) | ||
48 | } | ||
49 | |||
50 | do_deploy () { | ||
51 | for soc in ${DEPLOY_FOR}; do | ||
52 | bbnote "Running deploy for $soc" | ||
53 | deploy_for_$soc | ||
54 | done | ||
55 | } | ||
56 | |||
57 | addtask deploy after do_install before do_build | ||
58 | |||
59 | PACKAGE_ARCH = "${MACHINE_SOCARCH}" | ||
60 | |||
61 | COMPATIBLE_MACHINE = "(mx8-generic-bsp|mx9-generic-bsp)" | ||
62 | COMPATIBLE_MACHINE:mx8x-generic-bsp = "(^$)" | ||