diff mbox series

[v2,1/1] package/nxp-bt-wifi-firmware: new package

Message ID 20240515100209.24769-1-sebastien.szymanski@armadeus.com
State New
Headers show
Series [v2,1/1] package/nxp-bt-wifi-firmware: new package | expand

Commit Message

Sébastien Szymanski May 15, 2024, 10:02 a.m. UTC
This package provides firmwares for NXP WiFi + Bluetooth chipsets.
It is named "nxp-bt-wifi-firmware" so that it is not confused with the
package firmware-imx.

Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
---

Changes for v2:
 - rename the package nxp-bt-wifi-firwmare

 package/Config.in                             |  1 +
 package/nxp-bt-wifi-firmware/Config.in        | 62 +++++++++++++++++++
 .../nxp-bt-wifi-firmware.hash                 |  3 +
 .../nxp-bt-wifi-firmware.mk                   | 32 ++++++++++
 4 files changed, 98 insertions(+)
 create mode 100644 package/nxp-bt-wifi-firmware/Config.in
 create mode 100644 package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.hash
 create mode 100644 package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.mk

Comments

Fabio Estevam May 15, 2024, 11:08 a.m. UTC | #1
Hi Sébastien,

On Wed, May 15, 2024 at 7:02 AM Sébastien Szymanski
<sebastien.szymanski@armadeus.com> wrote:
>
> This package provides firmwares for NXP WiFi + Bluetooth chipsets.
> It is named "nxp-bt-wifi-firmware" so that it is not confused with the
> package firmware-imx.

Thanks for the path.

Is there support in Buildroot for the
https://github.com/nxp-imx/mwifiex kernel modules too?

I want to test the IW612 Wifi on the imx93-evk board.

Thanks,

Fabio Estevam
Sébastien Szymanski May 17, 2024, 8:32 a.m. UTC | #2
Hi Fabio,

On 5/15/24 13:08, Fabio Estevam wrote:
> Hi Sébastien,
> 
> On Wed, May 15, 2024 at 7:02 AM Sébastien Szymanski
> <sebastien.szymanski@armadeus.com> wrote:
>>
>> This package provides firmwares for NXP WiFi + Bluetooth chipsets.
>> It is named "nxp-bt-wifi-firmware" so that it is not confused with the
>> package firmware-imx.
> 
> Thanks for the path.

:)

> 
> Is there support in Buildroot for the
> https://github.com/nxp-imx/mwifiex kernel modules too?

Nope. I did test it but out of the buildroot tree. I have also tested 
the in-kernel mwifiex driver.

Regards,

> 
> I want to test the IW612 Wifi on the imx93-evk board.
> 
> Thanks,
> 
> Fabio Estevam
diff mbox series

Patch

diff --git a/package/Config.in b/package/Config.in
index 1b6a5b0dabb8..da0853b46c81 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -452,6 +452,7 @@  menu "Firmware"
 	source "package/brcmfmac_sdio-firmware-rpi/Config.in"
 	source "package/linux-firmware/Config.in"
 	source "package/murata-cyw-fw/Config.in"
+	source "package/nxp-bt-wifi-firmware/Config.in"
 	source "package/odroidc2-firmware/Config.in"
 	source "package/qcom-db410c-firmware/Config.in"
 	source "package/qoriq-fm-ucode/Config.in"
diff --git a/package/nxp-bt-wifi-firmware/Config.in b/package/nxp-bt-wifi-firmware/Config.in
new file mode 100644
index 000000000000..21a84289c918
--- /dev/null
+++ b/package/nxp-bt-wifi-firmware/Config.in
@@ -0,0 +1,62 @@ 
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE
+	bool "nxp-bt-wifi-firmware"
+	help
+	  Firmwares for NXP Bluetooth / WiFi chipsets based modules
+
+	  https://github.com/nxp-imx/imx-firmware
+
+if BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8801
+	bool "8801 (SD)"
+	help
+	  NXP 8801 module firmware files.
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8987
+	bool "8987 (SD)"
+	help
+	  NXP 8987 module firmware files.
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8997
+	bool "8997"
+	help
+	  NXP 8997 module firmware files.
+
+choice
+	prompt "8997 WiFi interface" if BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8997
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8997_SD
+	bool "SD"
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8997_PCIE
+	bool "PCIe"
+
+endchoice
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_9098
+	bool "9098"
+	help
+	  NXP 9098 module firmware files.
+
+choice
+	prompt "9098 WiFi interface" if BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_9098
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_9098_SD
+	bool "SD"
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_9098_PCIE
+	bool "PCIe"
+
+endchoice
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_IW416
+	bool "IW416 (SD)"
+	help
+	  NXP IW416 module firmware files.
+
+config BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_IW612
+	bool "IW612 (SD)"
+	help
+	  NXP IW612 module firmware files.
+
+endif
diff --git a/package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.hash b/package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.hash
new file mode 100644
index 000000000000..d45456c895b6
--- /dev/null
+++ b/package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.hash
@@ -0,0 +1,3 @@ 
+# Locally calculated
+sha256  2feba2969db7b6fc86aa0a13a0993ca241e155c23c0024c41316e67924778f5f  nxp-bt-wifi-firmware-lf-6.6.3_1.0.0.tar.gz
+sha256  3827bf3548bfd9de73bf51fbdd7a8c674dcecfb249cfa1a7cf17bd2dc4e08a8c  LICENSE.txt
diff --git a/package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.mk b/package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.mk
new file mode 100644
index 000000000000..afdc060b1b92
--- /dev/null
+++ b/package/nxp-bt-wifi-firmware/nxp-bt-wifi-firmware.mk
@@ -0,0 +1,32 @@ 
+################################################################################
+#
+# nxp-bt-wifi-firmware
+#
+################################################################################
+
+NXP_BT_WIFI_FIRMWARE_VERSION = lf-6.6.3_1.0.0
+NXP_BT_WIFI_FIRMWARE_SITE = $(call github,nxp-imx,imx-firmware,$(NXP_BT_WIFI_FIRMWARE_VERSION))
+NXP_BT_WIFI_FIRMWARE_LICENSE = NXP Software License Agreement
+NXP_BT_WIFI_FIRMWARE_LICENSE_FILES = LICENSE.txt
+NXP_BT_WIFI_FIRMWARE_REDISTRIBUTE = NO
+
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8801) += FwImage_8801_SD
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8987) += FwImage_8987
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8997_SD) += FwImage_8997_SD
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_8997_PCIE) += FwImage_8997
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_9098_SD) += FwImage_9098_SD
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_9098_PCIE) += FwImage_9098_PCIE
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_IW416) += FwImage_IW416_SD
+NXP_BT_WIFI_FIRMWARE_FILES_$(BR2_PACKAGE_NXP_BT_WIFI_FIRMWARE_IW612) += FwImage_IW612_SD
+
+define NXP_BT_WIFI_FIRMWARE_INSTALL_TARGET_CMDS
+	$(INSTALL) -m 0644 -D $(@D)/nxp/wifi_mod_para.conf \
+		$(TARGET_DIR)/lib/firmware/nxp/wifi_mod_para.conf
+	$(INSTALL) -m 0644 -D $(@D)/nxp/mfguart/helper_uart_3000000.bin \
+		$(TARGET_DIR)/lib/firmware/nxp/helper_uart_3000000.bin
+	$(foreach f,$(NXP_BT_WIFI_FIRMWARE_FILES_y), \
+		$(INSTALL) -m 0644 -D $(@D)/nxp/$(f)/* $(TARGET_DIR)/lib/firmware/nxp/
+	)
+endef
+
+$(eval $(generic-package))