firmware-imx: new package
authorArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Wed, 19 Dec 2012 13:37:33 +0000 (13:37 +0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Mon, 14 Jan 2013 14:04:05 +0000 (15:04 +0100)
[Peter: ensure lib/firmware exists, move under 'Misc devices firmware']
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
package/Config.in
package/firmware-imx/Config.in [new file with mode: 0644]
package/firmware-imx/firmware-imx.mk [new file with mode: 0644]

index f891b49b4e14f2a7aea3fad02dc85b55d470013d..f87e14302ff9bbeee44b9b6dc9ec0600524f922b 100644 (file)
@@ -203,6 +203,7 @@ endmenu
 menu "Hardware handling"
 menu "Misc devices firmwares"
 source "package/b43-firmware/Config.in"
+source "package/firmware-imx/Config.in"
 source "package/linux-firmware/Config.in"
 source "package/rpi-firmware/Config.in"
 source "package/ux500-firmware/Config.in"
diff --git a/package/firmware-imx/Config.in b/package/firmware-imx/Config.in
new file mode 100644 (file)
index 0000000..dd96d88
--- /dev/null
@@ -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/firmware-imx/firmware-imx.mk b/package/firmware-imx/firmware-imx.mk
new file mode 100644 (file)
index 0000000..3b43bef
--- /dev/null
@@ -0,0 +1,39 @@
+#############################################################
+#
+# buildroot makefile for firmware-imx
+#
+#############################################################
+
+FIRMWARE_IMX_VERSION = 12.09.01
+# No official download site from freescale, just this mirror
+FIRMWARE_IMX_SITE = http://download.ossystems.com.br/bsp/freescale/source
+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))