[Buildroot] [PATCH v4] New package: linux-firmware
Yegor Yefremov
yegor_sub1 at visionsystems.de
Thu Jan 26 15:16:23 UTC 2012
Am 26.01.2012 16:13, schrieb yegorslists at googlemail.com:
> From: Yegor Yefremov <yegorslists at googlemail.com>
>
> add infrastructure for closed binary blobs
>
> Signed-off-by: Yegor Yefremov <yegorslists at googlemail.com>
> ---
> 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
>
> diff --git a/package/Config.in b/package/Config.in
> index f219e37..10f9f79 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -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"
> diff --git a/package/linux-firmware/Config.in b/package/linux-firmware/Config.in
> new file mode 100644
> index 0000000..b4fa645
> --- /dev/null
> +++ b/package/linux-firmware/Config.in
> @@ -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
> +
> +endif
> diff --git a/package/linux-firmware/linux-firmware.mk b/package/linux-firmware/linux-firmware.mk
> new file mode 100644
> index 0000000..af48d13
> --- /dev/null
> +++ b/package/linux-firmware/linux-firmware.mk
> @@ -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
> +
> +# 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
More information about the buildroot
mailing list