New package: linux-firmware
PATCH v4 1/1 New package: linux-firmware
From: Yegor Yefremov <[email protected]>
add infrastructure for closed binary blobs
---
Changes:
v4:
sort menu options (Gustavo Zacarias)
use LINUX_FIRMWARE_FILES to hold all install targets (Gustavo Zacarias)
v3:
typo fix (Michael S. Zick)
v2:
change package name from firmware to linux-firmware (Gustavo Zacarias) create more granular options (Gustavo Zacarias)
package/Config.in | 1 + package/linux-firmware/Config.in | 46 ++++++++++++++++++++++++ package/linux-firmware/linux-firmware.mk | 56 ++++++++++++++++++++++++++++++ 3 files changed, 103 insertions(+), 0 deletions(-) create mode 100644 package/linux-firmware/Config.in create mode 100644 package/linux-firmware/linux-firmware.mk
package/Config.in +1 -0
@@ -185,6 +185,7 @@ source "package/input-tools/Config.in" source "package/iostat/Config.in" source "package/irda-utils/Config.in" source "package/kbd/Config.in" +source "package/linux-firmware/Config.in" source "package/lm-sensors/Config.in" source "package/lsuio/Config.in" source "package/lvm2/Config.in"
package/linux-firmware/Config.in new file +46 -0
46 lines not on this page · raw message
package/linux-firmware/linux-firmware.mk new file +56 -0
56 lines not on this page · raw message
Signature · 1 line
1.7.1.1
PATCH v4 1/1 New package: linux-firmware
Am 26.01.2012 16:13, schrieb yegorslists at googlemail.com:
Quoted 127 lines
From: Yegor Yefremov <[email protected]>
add infrastructure for closed binary blobs
Signed-off-by Yegor Yefremov <[email protected]>---
Changes:
v4:
sort menu options (Gustavo Zacarias)
useLINUX_FIRMWARE_FILESto hold all install targets (Gustavo Zacarias)
v3:
typo fix (Michael S. Zick)
v2:
change package name from firmware to linux-firmware (Gustavo Zacarias) create more granular options (Gustavo Zacarias)package/Config.in | 1 + package/linux-firmware/Config.in | 46 ++++++++++++++++++++++++ package/linux-firmware/linux-firmware.mk | 56 ++++++++++++++++++++++++++++++ 3 files changed, 103 insertions(+), 0 deletions(-) create mode 100644 package/linux-firmware/Config.in create mode 100644 package/linux-firmware/linux-firmware.mkpackage/Config.in +1
-0@@ -185,6 +185,7 @@ source "package/input-tools/Config.in" source "package/iostat/Config.in" source "package/irda-utils/Config.in" source "package/kbd/Config.in" +source "package/linux-firmware/Config.in" source "package/lm-sensors/Config.in" source "package/lsuio/Config.in" source "package/lvm2/Config.in"package/linux-firmware/Config.in new file +46
-0@@ -0,0 +1,46 @@ +config BR2_PACKAGE_LINUX_FIRMWARE + bool "linux-firmware" + help + This package provides various binary firmware files + (closed binary blobs) for such devices like LAN, WLAN cards etc. + +if BR2_PACKAGE_LINUX_FIRMWARE + +menu "Devices" + +menu "Ralink" + +config BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61 + bool "Ralink rt2501/rt61" + help + Ralink rt2501/rt61 + +config BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73 + bool "Ralink rt73" + help + Ralink rt73 + +config BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX + bool "Ralink rt27xx/rt28xx/rt30xx" + help + Ralink rt27xx/rt28xx/rt30xx + +endmenu + +menu "Texas Instruments" + +config BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X + bool "wl127X" + help + Firmware files for WLAN and Bluetooth modules wl1271 and wl1273 + +config BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X + bool "wl128X" + help + Firmware files for WLAN and Bluetooth modules wl128x + +endmenu + +endmenu + +endifpackage/linux-firmware/linux-firmware.mk new file +35
-0@@ -0,0 +1,56 @@ +############################################################# +# +# linux-firmware +# +############################################################# +LINUX_FIRMWARE_VERSION = a2995d38c234e3d767df7223d84a0f33a1a24997 +LINUX_FIRMWARE_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git +LINUX_FIRMWARE_SITE_METHOD = git + +# rt2501/rt61 +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61) += \ + rt2561.bin rt2561s.bin rt2661.bin LICENCE.ralink-firmware.txt + + +# rt73 +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73) += \ + rt73.bin LICENCE.ralink-firmware.txt + +# rt2xx +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX) += \ + rt2860.bin rt2870.bin rt3070.bin rt3071.bin rt3090.bin \ + LICENCE.ralink-firmware.txt + +# wl127x +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X) += \ + ti-connectivity/wl1271-fw-2.bin \ + ti-connectivity/wl1271-fw-ap.bin \ + ti-connectivity/wl1271-fw.bin \ + ti-connectivity/wl1271-nvs.bin \ + ti-connectivity/wl127x-fw-3.bin \ + ti-connectivity/wl127x-fw-plt-3.bin \ + ti-connectivity/wl127x-nvs.bin \ + ti-connectivity/TIInit_7.2.31.bts \ + LICENCE.ti-connectivity +
package/linux-firmware/linux-firmware.mk line 45
Quoted 10 lines
package/linux-firmware/linux-firmware.mk new file +10
-0+# wl128x +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X) += \ + ti-connectivity/wl128x-fw-3.bin \ + ti-connectivity/wl128x-fw-ap.bin \ + ti-connectivity/wl128x-fw-plt-3.bin \ + ti-connectivity/wl128x-fw.bin \ + ti-connectivity/wl1271-nvs.bin \ + ti-connectivity/wl128x-nvs.bin \ + ti-connectivity/wl12xx-nvs.bin \ + ti-connectivity/TIInit_7.2.31.bts \
So here we have another issue: how can I define if files should be copied to /lib/firmware or /lib/firmware/foo? ti-connectivity firmware files should go direct to /lib/firmware. This is not the case now.
Yegor
PATCH v4 1/1 New package: linux-firmware
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yegor" == Yegor Yefremov <[email protected]> writes:
Yegor> Am 26.01.2012 16:13, schrieb yegorslists at googlemail.com:
Yegor> So here we have another issue: how can I define if files should Yegor> be copied to /lib/firmware or /lib/firmware/foo? ti-connectivity Yegor> firmware files should go direct to /lib/firmware. This is not Yegor> the case now.
Ahh, I thought there would be a 1-to-1 relation between the linux-firmware.git location an /lib/firmware. How do other distributions handle it?
Signature · 1 line
Bye, Peter Korsgaard
PATCH v4 1/1 New package: linux-firmware
Quoted 11 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yegor" == Yegor Yefremov <[email protected]> writes:
Yegor> Am 26.01.2012 16:13, schrieb yegorslists at googlemail.com:
Yegor> So here we have another issue: how can I define if files
should
Yegor> be copied to/lib/firmwareor/lib/firmware/foo?
ti-connectivity
Yegor> firmware files should go direct to/lib/firmware. This is not Yegor> the case now.
Quoted 4 lines
Ahh, I thought there would be a 1-to-1 relation between the linux-firmware.git location an
/lib/firmware. How do other distributions
handle it?
At least for ti-connectivity it seems to be kept in /lib/firmware/ti-connectivity.
Most of the time linux-firmware unpacks directly to /lib/firmware and that's it.
Checking the kernel source...
grep for "request_firmware" in the relevant drivers (for instance linux/drivers/net/wireless/wl12xx) and we get "ret = request_firmware(&fw, WL128X_FW_NAME"... grepping for FW_NAME gets us...
wl12xx.h:#define WL1271_FW_NAME "ti-connectivity/wl1271-fw-2.bin" wl12xx.h:#define WL128X_FW_NAME "ti-connectivity/wl128x-fw.bin" wl12xx.h:#define WL127X_AP_FW_NAME "ti-connectivity/wl1271-fw-ap.bin" wl12xx.h:#define WL128X_AP_FW_NAME "ti-connectivity/wl128x-fw-ap.bin"
So they are used in the directory no less...
Regards.
PATCH v4 1/1 New package: linux-firmware
Am 26.01.2012 16:33, schrieb Gustavo Zacarias:
Quoted 19 lines · Peter Korsgaard
Quoted 5 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
"Yegor" == Yegor Yefremov <[email protected]> writes:
Yegor> Am 26.01.2012 16:13, schrieb yegorslists at googlemail.com:
Quoted 8 lines
Yegor> So here we have another issue: how can I define if files should Yegor> be copied to
/lib/firmwareor/lib/firmware/foo? ti-connectivity Yegor> firmware files should go direct to/lib/firmware. This is not Yegor> the case now.Ahh, I thought there would be a 1-to-1 relation between the linux-firmware.git location an
/lib/firmware. How do other distributions handle it?At least for ti-connectivity it seems to be kept in
/lib/firmware/ti-connectivity. Most of the time linux-firmware unpacks directly to/lib/firmwareand that's it. Checking the kernel source...
Quoted 8 lines
grep for "
request_firmware" in the relevant drivers (for instance linux/drivers/net/wireless/wl12xx) and we get "ret = request_firmware(&fw,WL128X_FW_NAME"... grepping forFW_NAMEgets us...wl12xx.h:#define
WL1271_FW_NAME"ti-connectivity/wl1271-fw-2.bin" wl12xx.h:#defineWL128X_FW_NAME"ti-connectivity/wl128x-fw.bin" wl12xx.h:#defineWL127X_AP_FW_NAME"ti-connectivity/wl1271-fw-ap.bin" wl12xx.h:#defineWL128X_AP_FW_NAME"ti-connectivity/wl128x-fw-ap.bin"So they are used in the directory no less...
You're right. This is a disadvantage of using the old kernel (2.6.37). Here WLAN driver searches for blobs directly without prepending a ti-connectivity. O.K. lets keep directory structure as is.
I replaced install with cp and have a problem, cause cp won't create a directory (ti-connectivity for example), but copies symlinks correctly. Any idea how to fix this?
Yegor
PATCH v4 1/1 New package: linux-firmware
In reply to yegorslists at googlemail.comQuoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"yegorslists" == yegorslists <[email protected]> writes:
yegorslists> +define LINUX_FIRMWARE_INSTALL_TARGET_CMDS
yegorslists> + mkdir -p $(TARGET_DIR)/lib/firmware
yegorslists> + for i in $(LINUX_FIRMWARE_FILES_y); do \
yegorslists> + cp -af $(@D)/$$i $(TARGET_DIR)/lib/firmware/$$i; \
yegorslists> + done
That won't work as cp doesn't create the destination directories - install -D is also not really good as that doesn't handle symlinks, so I think the best approach is to use tar.
I'll fix that up while committing.
Signature · 1 line
Bye, Peter Korsgaard
PATCH v4 1/1 New package: linux-firmware
Le Thu, 26 Jan 2012 17:13:25 +0100,
Peter Korsgaard <[email protected]> a ?crit :
Quoted 10 lines
yegorslists> +define
LINUX_FIRMWARE_INSTALL_TARGET_CMDS
yegorslists> + mkdir -p $(TARGET_DIR)/lib/firmware
yegorslists> + for i in $(LINUX_FIRMWARE_FILES_y); do \
yegorslists> + cp -af $(@D)/$$i
yegorslists> $(TARGET_DIR)/lib/firmware/$$i; \
yegorslists> + doneThat won't work as cp doesn't create the destination directories - install -D is also not really good as that doesn't handle symlinks, so I think the best approach is to use tar.
What about:
mkdir -p $(dirname $(TARGET_DIR)/lib/firmware/$$i)
cp -af $(@D)/$$i $(TARGET_DIR)/lib/firmware/$$i
?
Thomas
Signature · 4 lines
Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
PATCH v4 1/1 New package: linux-firmware
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Hi,
Quoted 3 lines
Quoted 3 lines
That won't work as cp doesn't create the destination directories - install -D is also not really good as that doesn't handle symlinks, so I think the best approach is to use tar.
Thomas> What about:
Thomas> mkdir -p $(dirname $(TARGET_DIR)/lib/firmware/$$i)
Thomas> cp -af $(@D)/$$i $(TARGET_DIR)/lib/firmware/$$i
That would work as well, but
tar c -C srcdir files | tar x -C destdir
Is imho simpler.
Signature · 1 line
Bye, Peter Korsgaard
PATCH v4 1/1 New package: linux-firmware
In reply to yegorslists at googlemail.comQuoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"yegorslists" == yegorslists <[email protected]> writes:
yegorslists> From: Yegor Yefremov <[email protected]> yegorslists> add infrastructure for closed binary blobs
Committed with minor fixes (see below) - Thanks!
yegorslists> new file mode 100644 yegorslists> index 0000000..b4fa645 yegorslists> --- /dev/null
yegorslists> +++ b/package/linux-firmware/Config.in yegorslists> @@ -0,0 +1,46 @@
yegorslists> +config BR2_PACKAGE_LINUX_FIRMWARE
yegorslists> + bool "linux-firmware"
yegorslists> + help
yegorslists> + This package provides various binary firmware files
yegorslists> + (closed binary blobs) for such devices like LAN, WLAN cards etc.
Trailing spaces. We normally add an upstream URL here as well. I've added the link to gitweb for it.
yegorslists> +
yegorslists> +if BR2_PACKAGE_LINUX_FIRMWARE
yegorslists> +
yegorslists> +menu "Devices"
yegorslists> +
yegorslists> +menu "Ralink"
I don't like too many sub menus, so I've dropped the outer "Devices" one.
yegorslists> +
yegorslists> +config BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61
yegorslists> + bool "Ralink rt2501/rt61"
yegorslists> + help
yegorslists> + Ralink rt2501/rt61
yegorslists> +
yegorslists> +config BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73
yegorslists> + bool "Ralink rt73"
yegorslists> + help
yegorslists> + Ralink rt73
yegorslists> +
yegorslists> +config BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX
yegorslists> + bool "Ralink rt27xx/rt28xx/rt30xx"
yegorslists> + help
yegorslists> + Ralink rt27xx/rt28xx/rt30xx
yegorslists> +
yegorslists> +endmenu
yegorslists> +
yegorslists> +menu "Texas Instruments"
yegorslists> +
yegorslists> +config BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X
yegorslists> + bool "wl127X"
yegorslists> + help
yegorslists> + Firmware files for WLAN and Bluetooth modules wl1271 and wl1273
yegorslists> +
yegorslists> +config BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X
yegorslists> + bool "wl128X"
yegorslists> + help
yegorslists> + Firmware files for WLAN and Bluetooth modules wl128x
yegorslists> +
yegorslists> +endmenu
yegorslists> +
yegorslists> +endmenu
yegorslists> +
yegorslists> +endif
yegorslists> diff --git a/package/linux-firmware/linux-firmware.mk b/package/linux-firmware/linux-firmware.mk yegorslists> new file mode 100644
yegorslists> index 0000000..af48d13
yegorslists> --- /dev/null
yegorslists> +++ b/package/linux-firmware/linux-firmware.mk
yegorslists> @@ -0,0 +1,56 @@
yegorslists> +#############################################################
yegorslists> +#
yegorslists> +# linux-firmware
yegorslists> +#
yegorslists> +#############################################################
yegorslists> +LINUX_FIRMWARE_VERSION = a2995d38c234e3d767df7223d84a0f33a1a24997 yegorslists> +LINUX_FIRMWARE_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
yegorslists> +LINUX_FIRMWARE_SITE_METHOD = git
yegorslists> +
yegorslists> +# rt2501/rt61
yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61) += \
yegorslists> + rt2561.bin rt2561s.bin rt2661.bin LICENCE.ralink-firmware.txt
yegorslists> +
yegorslists> +
yegorslists> +# rt73
yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73) += \
yegorslists> + rt73.bin LICENCE.ralink-firmware.txt
yegorslists> +
yegorslists> +# rt2xx
yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX) += \
yegorslists> + rt2860.bin rt2870.bin rt3070.bin rt3071.bin rt3090.bin \
yegorslists> + LICENCE.ralink-firmware.txt
A number of trailing spaces here as well.
Does it make sense to install the license files? We don't otherwise install other license documentation.
yegorslists> +
yegorslists> +# wl127x
yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X) += \
yegorslists> + ti-connectivity/wl1271-fw-2.bin \
yegorslists> + ti-connectivity/wl1271-fw-ap.bin \
yegorslists> + ti-connectivity/wl1271-fw.bin \
yegorslists> + ti-connectivity/wl1271-nvs.bin \
yegorslists> + ti-connectivity/wl127x-fw-3.bin \
yegorslists> + ti-connectivity/wl127x-fw-plt-3.bin \
yegorslists> + ti-connectivity/wl127x-nvs.bin \
yegorslists> + ti-connectivity/TIInit_7.2.31.bts \
yegorslists> + LICENCE.ti-connectivity
yegorslists> +
yegorslists> +# wl128x
yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X) += \
yegorslists> + ti-connectivity/wl128x-fw-3.bin \
yegorslists> + ti-connectivity/wl128x-fw-ap.bin \
yegorslists> + ti-connectivity/wl128x-fw-plt-3.bin \
yegorslists> + ti-connectivity/wl128x-fw.bin \
yegorslists> + ti-connectivity/wl1271-nvs.bin \
yegorslists> + ti-connectivity/wl128x-nvs.bin \
yegorslists> + ti-connectivity/wl12xx-nvs.bin \
yegorslists> + ti-connectivity/TIInit_7.2.31.bts \
yegorslists> + LICENCE.ti-connectivity
yegorslists> +
yegorslists> +
yegorslists> +define LINUX_FIRMWARE_INSTALL_TARGET_CMDS
yegorslists> + mkdir -p $(TARGET_DIR)/lib/firmware
yegorslists> + for i in $(LINUX_FIRMWARE_FILES_y); do \
yegorslists> + cp -af $(@D)/$$i $(TARGET_DIR)/lib/firmware/$$i; \
yegorslists> + done
yegorslists> +endef
I've changed this to use 2x tar instead.
yegorslists> +
yegorslists> +$(eval $(call GENTARGETS))
yegorslists> --
yegorslists> 1.7.1.1
Signature · 1 line
Bye, Peter Korsgaard
PATCH v4 1/1 New package: linux-firmware
Quoted 18 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"yegorslists" == yegorslists ?<[email protected]> writes:
?yegorslists> From: Yegor Yefremov <[email protected]> ?yegorslists> add infrastructure for closed binary blobs
Committed with minor fixes (see below) - Thanks!
?yegorslists> new file mode 100644
?yegorslists> index 0000000..b4fa645
?yegorslists> ---/dev/null
?yegorslists> +++ b/package/linux-firmware/Config.in
?yegorslists> @@ -0,0 +1,46 @@
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE
?yegorslists> + bool "linux-firmware"
?yegorslists> + help
?yegorslists> + ? This package provides various binary firmware files ?yegorslists> + ? (closed binary blobs) for such devices like LAN, WLAN cards etc.
Quoted 2 lines
Trailing spaces. We normally add an upstream URL here as well. I've added the link to gitweb for it.
ACK Totally forgot about this :-(
Quoted 10 lines
?yegorslists> +
?yegorslists> +if
BR2_PACKAGE_LINUX_FIRMWARE
?yegorslists> +
?yegorslists> +menu "Devices"
?yegorslists> +
?yegorslists> +menu "Ralink"I don't like too many sub menus, so I've dropped the outer "Devices" one.
ACK
Quoted 64 lines
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61
?yegorslists> + bool "Ralink rt2501/rt61"
?yegorslists> + help
?yegorslists> + ? Ralink rt2501/rt61
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73
?yegorslists> + bool "Ralink rt73"
?yegorslists> + help
?yegorslists> + ? Ralink rt73
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX
?yegorslists> + bool "Ralink rt27xx/rt28xx/rt30xx"
?yegorslists> + help
?yegorslists> + ? Ralink rt27xx/rt28xx/rt30xx
?yegorslists> +
?yegorslists> +endmenu
?yegorslists> +
?yegorslists> +menu "Texas Instruments"
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X
?yegorslists> + bool "wl127X"
?yegorslists> + help
?yegorslists> + ? Firmware files for WLAN and Bluetooth modules wl1271 and wl1273 ?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X
?yegorslists> + bool "wl128X"
?yegorslists> + help
?yegorslists> + ? Firmware files for WLAN and Bluetooth modules wl128x
?yegorslists> +
?yegorslists> +endmenu
?yegorslists> +
?yegorslists> +endmenu
?yegorslists> +
?yegorslists> +endif
?yegorslists> diff --gita/package/linux-firmware/linux-firmware.mkb/package/linux-firmware/linux-firmware.mk?yegorslists> new file mode 100644
?yegorslists> index 0000000..af48d13
?yegorslists> ---/dev/null
?yegorslists> +++b/package/linux-firmware/linux-firmware.mk
?yegorslists> @@ -0,0 +1,56 @@
?yegorslists> +#############################################################
?yegorslists> +#
?yegorslists> +# linux-firmware
?yegorslists> +#
?yegorslists> +#############################################################
?yegorslists> +LINUX_FIRMWARE_VERSION =a2995d38c234e3d767df7223d84a0f33a1a24997?yegorslists> +LINUX_FIRMWARE_SITE =git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
?yegorslists> +LINUX_FIRMWARE_SITE_METHOD = git
?yegorslists> +
?yegorslists> +# rt2501/rt61
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61) += \
?yegorslists> + rt2561.bin rt2561s.bin rt2661.bin LICENCE.ralink-firmware.txt
?yegorslists> +
?yegorslists> +
?yegorslists> +# rt73
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73) += \
?yegorslists> + rt73.bin LICENCE.ralink-firmware.txt
?yegorslists> +
?yegorslists> +# rt2xx
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX) += \
?yegorslists> + rt2860.bin rt2870.bin rt3070.bin rt3071.bin rt3090.bin ?\
?yegorslists> + LICENCE.ralink-firmware.txt
Quoted 4 lines
A number of trailing spaces here as well.
Does it make sense to install the license files? We don't otherwise install other license documentation.
I think it belong to these blobs, otherwise you're not allowed to distribute them. Ubuntu ships the stuff too, but they store them under /usr/share/..
Quoted 33 lines
?yegorslists> +
?yegorslists> +# wl127x
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X) += \
?yegorslists> + ti-connectivity/wl1271-fw-2.bin ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl1271-fw-ap.bin ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl1271-fw.bin ? ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl1271-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl127x-fw-3.bin ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl127x-fw-plt-3.bin ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl127x-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/TIInit_7.2.31.bts ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + LICENCE.ti-connectivity
?yegorslists> +
?yegorslists> +# wl128x
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X) += \
?yegorslists> + ti-connectivity/wl128x-fw-3.bin ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl128x-fw-ap.bin ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl128x-fw-plt-3.bin ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl128x-fw.bin ? ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl1271-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl128x-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl12xx-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/TIInit_7.2.31.bts ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + LICENCE.ti-connectivity
?yegorslists> +
?yegorslists> +
?yegorslists> +defineLINUX_FIRMWARE_INSTALL_TARGET_CMDS?yegorslists> + mkdir -p $(TARGET_DIR)/lib/firmware
?yegorslists> + for i in $(LINUX_FIRMWARE_FILES_y); do \
?yegorslists> + ? ? ? ? cp -af $(@D)/$$i $(TARGET_DIR)/lib/firmware/$$i; \
?yegorslists> + done
?yegorslists> +endef
Quoted 6 lines
I've changed this to use 2x tar instead.
?yegorslists> +
?yegorslists> +$(eval $(call GENTARGETS))
?yegorslists> --
?yegorslists> 1.7.1.1
Thanks.
Yegor
PATCH v4 1/1 New package: linux-firmware
Quoted 101 lines · Yegor Yefremov
Quoted 18 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"yegorslists" == yegorslists ?<[email protected]> writes:
?yegorslists> From: Yegor Yefremov <[email protected]> ?yegorslists> add infrastructure for closed binary blobs
Committed with minor fixes (see below) - Thanks!
?yegorslists> new file mode 100644
?yegorslists> index 0000000..b4fa645
?yegorslists> ---/dev/null
?yegorslists> +++ b/package/linux-firmware/Config.in
?yegorslists> @@ -0,0 +1,46 @@
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE
?yegorslists> + bool "linux-firmware"
?yegorslists> + help
?yegorslists> + ? This package provides various binary firmware files ?yegorslists> + ? (closed binary blobs) for such devices like LAN, WLAN cards etc.Quoted 2 lines
Trailing spaces. We normally add an upstream URL here as well. I've added the link to gitweb for it.
ACK Totally forgot about this :-(
Quoted 10 lines
?yegorslists> +
?yegorslists> +if
BR2_PACKAGE_LINUX_FIRMWARE
?yegorslists> +
?yegorslists> +menu "Devices"
?yegorslists> +
?yegorslists> +menu "Ralink"I don't like too many sub menus, so I've dropped the outer "Devices" one.
ACK
Quoted 64 lines
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61
?yegorslists> + bool "Ralink rt2501/rt61"
?yegorslists> + help
?yegorslists> + ? Ralink rt2501/rt61
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73
?yegorslists> + bool "Ralink rt73"
?yegorslists> + help
?yegorslists> + ? Ralink rt73
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX
?yegorslists> + bool "Ralink rt27xx/rt28xx/rt30xx"
?yegorslists> + help
?yegorslists> + ? Ralink rt27xx/rt28xx/rt30xx
?yegorslists> +
?yegorslists> +endmenu
?yegorslists> +
?yegorslists> +menu "Texas Instruments"
?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X
?yegorslists> + bool "wl127X"
?yegorslists> + help
?yegorslists> + ? Firmware files for WLAN and Bluetooth modules wl1271 and wl1273 ?yegorslists> +
?yegorslists> +configBR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X
?yegorslists> + bool "wl128X"
?yegorslists> + help
?yegorslists> + ? Firmware files for WLAN and Bluetooth modules wl128x
?yegorslists> +
?yegorslists> +endmenu
?yegorslists> +
?yegorslists> +endmenu
?yegorslists> +
?yegorslists> +endif
?yegorslists> diff --gita/package/linux-firmware/linux-firmware.mkb/package/linux-firmware/linux-firmware.mk?yegorslists> new file mode 100644
?yegorslists> index 0000000..af48d13
?yegorslists> ---/dev/null
?yegorslists> +++b/package/linux-firmware/linux-firmware.mk
?yegorslists> @@ -0,0 +1,56 @@
?yegorslists> +#############################################################
?yegorslists> +#
?yegorslists> +# linux-firmware
?yegorslists> +#
?yegorslists> +#############################################################
?yegorslists> +LINUX_FIRMWARE_VERSION =a2995d38c234e3d767df7223d84a0f33a1a24997?yegorslists> +LINUX_FIRMWARE_SITE =git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
?yegorslists> +LINUX_FIRMWARE_SITE_METHOD = git
?yegorslists> +
?yegorslists> +# rt2501/rt61
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61) += \
?yegorslists> + rt2561.bin rt2561s.bin rt2661.bin LICENCE.ralink-firmware.txt
?yegorslists> +
?yegorslists> +
?yegorslists> +# rt73
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73) += \
?yegorslists> + rt73.bin LICENCE.ralink-firmware.txt
?yegorslists> +
?yegorslists> +# rt2xx
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX) += \
?yegorslists> + rt2860.bin rt2870.bin rt3070.bin rt3071.bin rt3090.bin ?\
?yegorslists> + LICENCE.ralink-firmware.txt
Quoted 9 lines
Quoted 4 lines
A number of trailing spaces here as well.
Does it make sense to install the license files? We don't otherwise install other license documentation.
I think it belong to these blobs, otherwise you're not allowed to distribute them. Ubuntu ships the stuff too, but they store them under
/usr/share/..
I have read a few of them - that is what it is, some wording like:
"... this license must accompany the binary ..."
in the few that I have read.
Mike
Quoted 47 lines
Quoted 33 lines
?yegorslists> +
?yegorslists> +# wl127x
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X) += \
?yegorslists> + ti-connectivity/wl1271-fw-2.bin ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl1271-fw-ap.bin ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl1271-fw.bin ? ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl1271-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl127x-fw-3.bin ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl127x-fw-plt-3.bin ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl127x-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/TIInit_7.2.31.bts ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + LICENCE.ti-connectivity
?yegorslists> +
?yegorslists> +# wl128x
?yegorslists> +LINUX_FIRMWARE_FILES_$(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X) += \
?yegorslists> + ti-connectivity/wl128x-fw-3.bin ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl128x-fw-ap.bin ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl128x-fw-plt-3.bin ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl128x-fw.bin ? ? ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + ti-connectivity/wl1271-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl128x-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/wl12xx-nvs.bin ? ? ? ? ? ? ? ? ? ? ? ? ?\
?yegorslists> + ti-connectivity/TIInit_7.2.31.bts ? ? ? ? ? ? ? ? ? ? ? \
?yegorslists> + LICENCE.ti-connectivity
?yegorslists> +
?yegorslists> +
?yegorslists> +defineLINUX_FIRMWARE_INSTALL_TARGET_CMDS?yegorslists> + mkdir -p $(TARGET_DIR)/lib/firmware
?yegorslists> + for i in $(LINUX_FIRMWARE_FILES_y); do \
?yegorslists> + ? ? ? ? cp -af $(@D)/$$i $(TARGET_DIR)/lib/firmware/$$i; \
?yegorslists> + done
?yegorslists> +endefQuoted 6 lines
I've changed this to use 2x tar instead.
?yegorslists> +
?yegorslists> +$(eval $(call GENTARGETS))
?yegorslists> --
?yegorslists> 1.7.1.1Thanks.
Yegor
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot