summaryrefslogtreecommitdiffstats
path: root/package/armbian-firmware
diff options
context:
space:
mode:
Diffstat (limited to 'package/armbian-firmware')
-rw-r--r--package/armbian-firmware/Config.in21
-rw-r--r--package/armbian-firmware/armbian-firmware.hash2
-rw-r--r--package/armbian-firmware/armbian-firmware.mk53
3 files changed, 76 insertions, 0 deletions
diff --git a/package/armbian-firmware/Config.in b/package/armbian-firmware/Config.in
new file mode 100644
index 0000000000..761c316612
--- /dev/null
+++ b/package/armbian-firmware/Config.in
@@ -0,0 +1,21 @@
+config BR2_PACKAGE_ARMBIAN_FIRMWARE
+ bool "armbian-firmware"
+ help
+ This package enables access to various firmware
+ blobs from the Armbian firmware repository.
+
+ https://github.com/armbian/firmware
+
+if BR2_PACKAGE_ARMBIAN_FIRMWARE
+
+config BR2_PACKAGE_ARMBIAN_FIRMWARE_XR819
+ bool "XR819 WiFi"
+ help
+ Firmware files for XR819 WiFi SDIO chip.
+
+config BR2_PACKAGE_ARMBIAN_FIRMWARE_AP6212
+ bool "AP6212 WiFi/BT"
+ help
+ Firmware files for AP6212 WiFi/BT combo chip.
+
+endif
diff --git a/package/armbian-firmware/armbian-firmware.hash b/package/armbian-firmware/armbian-firmware.hash
new file mode 100644
index 0000000000..0f3858dedf
--- /dev/null
+++ b/package/armbian-firmware/armbian-firmware.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 876958ce6ba8a4a01a424f2b4455208b7a989eaba96015649c774340553f0c35 armbian-firmware-455d6b6701178dafe7fd0168eb4a4ef78a8d24a3.tar.gz
diff --git a/package/armbian-firmware/armbian-firmware.mk b/package/armbian-firmware/armbian-firmware.mk
new file mode 100644
index 0000000000..e77d516661
--- /dev/null
+++ b/package/armbian-firmware/armbian-firmware.mk
@@ -0,0 +1,53 @@
+################################################################################
+#
+# armbian-firmware
+#
+################################################################################
+
+ARMBIAN_FIRMWARE_VERSION = 455d6b6701178dafe7fd0168eb4a4ef78a8d24a3
+ARMBIAN_FIRMWARE_SITE = https://github.com/armbian/firmware
+ARMBIAN_FIRMWARE_SITE_METHOD = git
+
+# XR819 WiFi firmware
+ifeq ($(BR2_PACKAGE_ARMBIAN_FIRMWARE_XR819),y)
+ARMBIAN_FIRMWARE_FILES += \
+ xr819/boot_xr819.bin \
+ xr819/fw_xr819.bin \
+ xr819/sdd_xr819.bin
+endif
+
+# AP6212 WiFi/BT combo firmware
+ifeq ($(BR2_PACKAGE_ARMBIAN_FIRMWARE_AP6212),y)
+ARMBIAN_FIRMWARE_DIRS += ap6212
+endif
+
+ifneq ($(ARMBIAN_FIRMWARE_FILES),)
+define ARMBIAN_FIRMWARE_INSTALL_FILES
+ cd $(@D) ; \
+ $(TAR) c $(sort $(ARMBIAN_FIRMWARE_FILES)) | \
+ $(TAR) x -C $(TARGET_DIR)/lib/firmware
+endef
+endif
+
+ifneq ($(ARMBIAN_FIRMWARE_DIRS),)
+# We need to rm -rf the destination directory to avoid copying
+# into it in itself, should we re-install the package.
+define ARMBIAN_FIRMWARE_INSTALL_DIRS
+ $(foreach d,$(ARMBIAN_FIRMWARE_DIRS), \
+ rm -rf $(TARGET_DIR)/lib/firmware/$(d); \
+ cp -a $(@D)/$(d) $(TARGET_DIR)/lib/firmware/$(d)$(sep))
+endef
+endif
+
+ifneq ($(ARMBIAN_FIRMWARE_FILES)$(ARMBIAN_FIRMWARE_DIRS),)
+ARMBIAN_FIRMWARE_LICENSE = PROPRIETARY
+ARMBIAN_FIRMWARE_REDISTRIBUTE = NO
+endif
+
+define ARMBIAN_FIRMWARE_INSTALL_TARGET_CMDS
+ mkdir -p $(TARGET_DIR)/lib/firmware
+ $(ARMBIAN_FIRMWARE_INSTALL_FILES)
+ $(ARMBIAN_FIRMWARE_INSTALL_DIRS)
+endef
+
+$(eval $(generic-package))
OpenPOWER on IntegriCloud