summaryrefslogtreecommitdiffstats
path: root/package/freescale-imx
diff options
context:
space:
mode:
Diffstat (limited to 'package/freescale-imx')
-rw-r--r--package/freescale-imx/Config.in1
-rw-r--r--package/freescale-imx/firmware-imx/Config.in13
-rw-r--r--package/freescale-imx/firmware-imx/firmware-imx.mk38
3 files changed, 52 insertions, 0 deletions
diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in
index edc9ab53f..840b83b19 100644
--- a/package/freescale-imx/Config.in
+++ b/package/freescale-imx/Config.in
@@ -2,5 +2,6 @@ menu "Freescale i.MX libraries"
depends on BR2_arm
source "package/freescale-imx/imx-lib/Config.in"
+source "package/freescale-imx/firmware-imx/Config.in"
endmenu
diff --git a/package/freescale-imx/firmware-imx/Config.in b/package/freescale-imx/firmware-imx/Config.in
new file mode 100644
index 000000000..dd96d8889
--- /dev/null
+++ b/package/freescale-imx/firmware-imx/Config.in
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_FIRMWARE_IMX
+ bool "firmware-imx"
+ depends on BR2_arm # Only relevant for i.MX
+ help
+ Firmware blobs for the Freescale i.MX SoCs.
+
+ It contains blobs for Atheros AR6003, SDMA and VPU.
+
+ Note: it also contains a blob for ar3k/30101 but upstream
+ linux-firmware has that as well.
+
+ This library is provided by Freescale as-is and doesn't have
+ an upstream.
diff --git a/package/freescale-imx/firmware-imx/firmware-imx.mk b/package/freescale-imx/firmware-imx/firmware-imx.mk
new file mode 100644
index 000000000..85f8dc29d
--- /dev/null
+++ b/package/freescale-imx/firmware-imx/firmware-imx.mk
@@ -0,0 +1,38 @@
+#############################################################
+#
+# firmware-imx
+#
+#############################################################
+
+FIRMWARE_IMX_VERSION = $(FREESCALE_IMX_VERSION)
+FIRMWARE_IMX_SITE = $(FREESCALE_IMX_MIRROR_SITE)
+FIRMWARE_IMX_SOURCE = firmware-imx-$(FIRMWARE_IMX_VERSION).bin
+FIRMWARE_IMX_LICENSE = Freescale Semiconductor Software License Agreement, \
+ Atheros license (ath6k)
+FIRMWARE_IMX_LICENSE_FILES = licenses/vpu/EULA licenses/ath6k/AR6102/License.txt
+# This is a legal minefield: the EULA specifies that
+# the Board Support Package includes software and hardware (sic!)
+# for which a separate license is needed...
+FIRMWARE_IMX_REDISTRIBUTE = NO
+
+FIRMWARE_IMX_BLOBS = ath6k sdma vpu
+
+# The archive is a shell-self-extractor of a bzipped tar. It happens
+# to extract in the correct directory (firmware-imx-x.y.z)
+# The --force makes sure it doesn't fail if the source dir already exists.
+# The --auto-accept skips the license check - not needed for us
+# because we have legal-info.
+define FIRMWARE_IMX_EXTRACT_CMDS
+ cd $(BUILD_DIR); \
+ sh $(DL_DIR)/$(FIRMWARE_IMX_SOURCE) --force --auto-accept
+endef
+
+
+define FIRMWARE_IMX_INSTALL_TARGET_CMDS
+ mkdir -p $(TARGET_DIR)/lib/firmware
+ for blobdir in $(FIRMWARE_IMX_BLOBS); do \
+ cp -r $(@D)/firmware/$${blobdir} $(TARGET_DIR)/lib/firmware; \
+ done
+endef
+
+$(eval $(generic-package))