Skip to contentSkip to conversation

Pull in WILC Wi-Fi updates

PATCH Applied Kris Bahnsen via buildroot 2 participants 11 messages Apr 22, 2022 – Apr 25, 2022 Arm/Microchip (AT91) SoC support

lore
Share & tools
lore
#0 lore raw

v2 cover Pull in WILC Wi-Fi updates

This series bumps WILC1000/3000 firmware to the latest available from Microchip, updates existing defconfig files to include both WILC1000 and WILC3000 blobs, and adds a package to build the wilc driver as an external kernel module.

The previous wilc1000-firmware package was extremely outdated, no longer available on github, and installed the firmware files to the wrong location for the current upstream kernel wilc1000 driver and Microchip's separately maintained driver.

Since the firmware change includes individual WILC1000 and WILC3000 config options, this package is renamed to wilc-firmware.

The defconfigs of all platforms that used WILC1000 firmware were touched to also include WILC3000 firmware. They either natively have WILC3000 or can support either WILC1000/WILC3000 being connected to these platforms.

I've attempted to test the firmware changes against microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig as this is a board I have in my possession. However, the defconfig appears broken (Microchip now maintains the evk in their own BR2_EXTERNAL repo):

...
Kernel command line: console=ttyS0,115200 initrd=0x21100000,25165824 root=/dev/ram0 rw
...
RAMDISK: Couldn't find valid RAM disk image starting at 0.
mmc0: new ultra high speed DDR50 SDHC card at address aaaa
List of all partitions:
...

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
CPU: 0 PID: 1 Comm: swapper Not tainted 5.10.80-linux4microchip-2021.10 #1
Hardware name: Atmel SAMA5

Function entered at [<c010c0fc>] from [<c010974c>] Function entered at [<c010974c>] from [<c087e37c>] Function entered at [<c087e37c>] from [<c0b014bc>] Function entered at [<c0b014bc>] from [<c0b01788>] Function entered at [<c0b01788>] from [<c08872c0>] Function entered at [<c08872c0>] from [<c0100148>]

Exception stack(0xc2c29fb0 to 0xc2c29ff8)
9fa0:                                     00000000 00000000 00000000 00000000
9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
9fe0: 00000000 00000000 00000000 00000000 00000013 00000000
---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0) ]---

The firmware and driver changes have been thoroughly tested, however, on an embeddedTS platform (BR patch for this in the future, waiting on kernel accepting FDT) that includes the WILC3000 device. We have a number of platforms that all use this same device and are starting to push for better upstream support overall. So this patch series is us laying the groundwork for that.

Changes v1 -> v2:
- Add un-prompted BR2_PACKAGE_WILC_FIRMWARE symbol to ensure that wilc-firmware is built as part of make
- Fix check-patch warning in wilc-firmware
- Add wilc-firmware license copied Microchip's buildroot-external repo
- Bump wilc-driver to linux4microchip-2021.10-1, removes kernel version check that doesn't need to be there yet.

Kris Bahnsen (4):
package/wilc1000-firmware: bump to 15.6 package/wilc-firmware: rename from wilc1000-firmware
configs: add WILC3000_FIRMWARE to compatible devices package/wilc-driver: new package

 DEVELOPERS                                         |  6 ++-
 configs/at91sam9x5ek_dev_defconfig                 |  1 +
 configs/at91sam9x5ek_mmc_dev_defconfig             |  1 +
 configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig   |  1 +
 configs/atmel_sama5d2_xplained_mmc_dev_defconfig   |  1 +
 configs/atmel_sama5d3_xplained_dev_defconfig       |  1 +
 configs/atmel_sama5d3_xplained_mmc_dev_defconfig   |  1 +
 configs/atmel_sama5d4_xplained_dev_defconfig       |  1 +
 configs/atmel_sama5d4_xplained_mmc_dev_defconfig   |  1 +
 configs/microchip_sam9x60ek_mmc_dev_defconfig      |  1 +
 .../microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig |  1 +
 configs/microchip_sama5d2_icp_mmc_dev_defconfig    |  1 +
 configs/microchip_sama7g5ek_mmc_dev_defconfig      |  1 +
 package/Config.in                                  |  3 +-
 package/wilc-driver/Config.in                      | 58 ++++++++++++++++++++++
 package/wilc-driver/wilc-driver.hash               |  2 +
 package/wilc-driver/wilc-driver.mk                 | 29 +++++++++++
 package/wilc-firmware/Config.in                    | 34 +++++++++++++
 package/wilc-firmware/wilc-firmware.hash           |  2 +
 package/wilc-firmware/wilc-firmware.mk             | 35 +++++++++++++
 package/wilc1000-firmware/Config.in                |  6 ---
 package/wilc1000-firmware/wilc1000-firmware.hash   |  2 -
 package/wilc1000-firmware/wilc1000-firmware.mk     | 24 ---------
 23 files changed, 179 insertions(+), 34 deletions(-)
 create mode 100644 package/wilc-driver/Config.in
 create mode 100644 package/wilc-driver/wilc-driver.hash
 create mode 100644 package/wilc-driver/wilc-driver.mk
 create mode 100644 package/wilc-firmware/Config.in
 create mode 100644 package/wilc-firmware/wilc-firmware.hash
 create mode 100644 package/wilc-firmware/wilc-firmware.mk
 delete mode 100644 package/wilc1000-firmware/Config.in
 delete mode 100644 package/wilc1000-firmware/wilc1000-firmware.hash
 delete mode 100644 package/wilc1000-firmware/wilc1000-firmware.mk
Signature · 6 lines
2.11.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#1 lore raw

PATCH v2 1/4 package/wilc1000-firmware: bump to 15.6

Supports both WILC1000 (Wi-Fi only) and WILC3000 (Wi-Fi/BLE) hardware.

To support WILC3000 this commit adds a separate config option, the original config option from this package is still valid.

License information copied from Microchip's buildroot-external project.

---
 package/wilc1000-firmware/Config.in              | 27 +++++++++++++++++++--
 package/wilc1000-firmware/wilc1000-firmware.hash |  2 +-
 package/wilc1000-firmware/wilc1000-firmware.mk   | 31 ++++++++++++++++--------
 3 files changed, 47 insertions(+), 13 deletions(-)
package/wilc1000-firmware/Config.in +25 -2
index df8a7a6b60..0734c7ad99 100644
@@ -1,6 +1,29 @@
 config BR2_PACKAGE_WILC1000_FIRMWARE
 	bool "wilc1000-firmware"
 	help
-	  Firmware for Atmel Wilc1000 wireless device
+	  Firmware for Microchip WILC1000 wireless device
 
-	  https://github.com/linux4sc/wireless-firmware.git
+	  These binary blobs are provided directly from Microchip.
+	  Ideally, the firmware version should match driver version.
+	  Generally, the latest firmware would be acceptible regardless
+	  of driver version.
+
+	  These will be installed to /lib/firmware/mchp/
+
+	  https://github.com/linux4wilc/firmware
+
+if BR2_PACKAGE_WILC1000_FIRMWARE
+config BR2_PACKAGE_WILC3000_FIRMWARE
+	bool "wilc3000-firmware"
+	help
+	  Firmware for Microchip WILC3000 wireless device
+
+	  These binary blobs are provided directly from Microchip.
+	  Ideally, the firmware version should match driver version.
+	  Generally, the latest firmware would be acceptible regardless
+	  of driver version.
+
+	  These will be installed to /lib/firmware/mchp/
+
+	  https://github.com/linux4wilc/firmware
+endif
package/wilc1000-firmware/wilc1000-firmware.hash +1 -1
index 5344efe517..9d55be9edc 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 a2e7a327dd545ba2051946f7613005cbde88fdd952afb8eecdd1dacda7e767d2  v14.1_Firmware.zip
+sha256  29bb5739136cdb4088cb52af59badce05cc7e562bca40e9f29fef7f8f7c19cb8  wilc1000-firmware-wilc_linux_15_6.tar.gz
package/wilc1000-firmware/wilc1000-firmware.mk +21 -10
index 6f504d67a0..0af81c7110 100644
@@ -4,21 +4,32 @@
 #
 ################################################################################
 
-WILC1000_FIRMWARE_VERSION = 14.1
-WILC1000_FIRMWARE_SITE = https://github.com/linux4sc/wireless-firmware/archive
-WILC1000_FIRMWARE_SOURCE = v$(WILC1000_FIRMWARE_VERSION)_Firmware.zip
+WILC1000_FIRMWARE_VERSION = wilc_linux_15_6
+WILC1000_FIRMWARE_SITE = $(call github,linux4wilc,firmware,$(WILC1000_FIRMWARE_VERSION))
 
-WILC1000_FIRMWARE_LICENSE = PROPRIETARY
+WILC1000_FIRMWARE_LICENSE = Microchip firmware
+WILC1000_FIRMWARE_LICENSE_FILES = LICENSE.wilc_fw
 
-define WILC1000_FIRMWARE_EXTRACT_CMDS
-	$(UNZIP) -d $(BUILD_DIR) $(WILC1000_FIRMWARE_DL_DIR)/$(WILC1000_FIRMWARE_SOURCE)
-	mv $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware/* $(@D)
-	rmdir $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware
+ifeq ($(BR2_PACKAGE_WILC1000_FIRMWARE),y)
+WILC1000_FIRMWARE_FILES += \
+	wilc1000_wifi_firmware.bin
+endif
+
+ifeq ($(BR2_PACKAGE_WILC3000_FIRMWARE),y)
+WILC1000_FIRMWARE_FILES += \
+	wilc3000_ble_firmware.bin \
+	wilc3000_wifi_firmware.bin
+endif
+
+define WILC1000_FIRMWARE_INSTALL_FILES
+	cd $(@D) && \
+		$(TAR) cf install.tar $(sort $(WILC1000_FIRMWARE_FILES)) && \
+		$(TAR) xf install.tar -C $(TARGET_DIR)/lib/firmware/mchp
 endef
 
 define WILC1000_FIRMWARE_INSTALL_TARGET_CMDS
-	$(INSTALL) -D -m 0644 $(@D)/wilc1003_firmware.bin \
-		$(TARGET_DIR)/lib/firmware/atmel/wilc1003_firmware.bin
+	$(INSTALL) -d -m 0755 $(TARGET_DIR)/lib/firmware/mchp/
+	$(WILC1000_FIRMWARE_INSTALL_FILES)
 endef
 
 $(eval $(generic-package))
Signature · 6 lines
2.11.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#2 lore raw

Re: [Buildroot] [PATCH v2 1/4] package/wilc1000-firmware: bump to 15.6

Quoted 9 lines · Kris Bahnsen via buildroot

Supports both WILC1000 (Wi-Fi only) and WILC3000 (Wi-Fi/BLE) hardware.

To support WILC3000 this commit adds a separate config option, the original config option from this package is still valid.

License information copied from Microchip's buildroot-external project.

Applied to master, thanks, but with a few changes, see below.

[snip]

package/wilc1000-firmware/wilc1000-firmware.hash line 2

Quoted 8 lines
package/wilc1000-firmware/wilc1000-firmware.hash +1 -1
index 5344efe517..9d55be9edc 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 a2e7a327dd545ba2051946f7613005cbde88fdd952afb8eecdd1dacda7e767d2  v14.1_Firmware.zip
+sha256  29bb5739136cdb4088cb52af59badce05cc7e562bca40e9f29fef7f8f7c19cb8  wilc1000-firmware-wilc_linux_15_6.tar.gz

Hash for the license file you added was missing.

Quoted 6 lines
package/wilc1000-firmware/wilc1000-firmware.mk +0 -0
index 6f504d67a0..0af81c7110 100644
@@ -4,21 +4,32 @@
 #

package/wilc1000-firmware/wilc1000-firmware.mk line 10

Quoted 10 lines
package/wilc1000-firmware/wilc1000-firmware.mk +3 -4
 ################################################################################
 
-WILC1000_FIRMWARE_VERSION = 14.1
-WILC1000_FIRMWARE_SITE = https://github.com/linux4sc/wireless-firmware/archive
-WILC1000_FIRMWARE_SOURCE = v$(WILC1000_FIRMWARE_VERSION)_Firmware.zip
+WILC1000_FIRMWARE_VERSION = wilc_linux_15_6
+WILC1000_FIRMWARE_SITE = $(call github,linux4wilc,firmware,$(WILC1000_FIRMWARE_VERSION))
 
-WILC1000_FIRMWARE_LICENSE = PROPRIETARY
+WILC1000_FIRMWARE_LICENSE = Microchip firmware

We actually use proprietary to mark any non-open-source license. The idea is
that SPDX is uses for the LICENSE variable (with an exception: adding + instead of -or-later, and no -only). This is not done consistently, but I don't want to go in the wrong direction :-). And maybe there's something to be said for using a more descriptive license name than proprietary, but this shouldn't be snuck in with a version bump.

Regards,
Arnout

Quoted 21 lines
package/wilc1000-firmware/wilc1000-firmware.mk +16 -4
+WILC1000_FIRMWARE_LICENSE_FILES = LICENSE.wilc_fw
 
-define WILC1000_FIRMWARE_EXTRACT_CMDS
-	$(UNZIP) -d $(BUILD_DIR) $(WILC1000_FIRMWARE_DL_DIR)/$(WILC1000_FIRMWARE_SOURCE)
-	mv $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware/* $(@D)
-	rmdir $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware
+ifeq ($(BR2_PACKAGE_WILC1000_FIRMWARE),y)
+WILC1000_FIRMWARE_FILES += \
+	wilc1000_wifi_firmware.bin
+endif
+
+ifeq ($(BR2_PACKAGE_WILC3000_FIRMWARE),y)
+WILC1000_FIRMWARE_FILES += \
+	wilc3000_ble_firmware.bin \
+	wilc3000_wifi_firmware.bin
+endif
+
+define WILC1000_FIRMWARE_INSTALL_FILES
+	cd $(@D) && \
+		$(TAR) cf install.tar $(sort $(WILC1000_FIRMWARE_FILES)) && \
+		$(TAR) xf install.tar -C $(TARGET_DIR)/lib/firmware/mchp

package/wilc1000-firmware/wilc1000-firmware.mk line 35

Quoted 10 lines
package/wilc1000-firmware/wilc1000-firmware.mk +2 -2
  endef
 
  define WILC1000_FIRMWARE_INSTALL_TARGET_CMDS
-	$(INSTALL) -D -m 0644 $(@D)/wilc1003_firmware.bin \
-		$(TARGET_DIR)/lib/firmware/atmel/wilc1003_firmware.bin
+	$(INSTALL) -d -m 0755 $(TARGET_DIR)/lib/firmware/mchp/
+	$(WILC1000_FIRMWARE_INSTALL_FILES)
  endef
 
  $(eval $(generic-package))

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

#3 lore raw

Re: [Buildroot] [PATCH v2 1/4] package/wilc1000-firmware: bump to 15.6

On Mon, 2022-04-25 at 22:04 +0200, Arnout Vandecappelle wrote:

[snip]

Quoted 1 line

Hash for the license file you added was missing.

[snip]

Quoted 6 lines

We actually use proprietary to mark any non-open-source license. The idea is
that SPDX is uses for the LICENSE variable (with an exception: adding + instead of -or-later, and no -only). This is not done consistently, but I don't want to go in the wrong direction :-). And maybe there's something to be said for using a more descriptive license name than proprietary, but this shouldn't be snuck in with a version bump.

I was not aware of either of these details. Thanks for the clarification, I'll keep them in mind for the future!

-Kris

Quoted 35 lines

Regards,
Arnout

Quoted 30 lines
package/wilc1000-firmware/wilc1000-firmware.mk +18 -6
+WILC1000_FIRMWARE_LICENSE_FILES = LICENSE.wilc_fw
 
-define WILC1000_FIRMWARE_EXTRACT_CMDS
-	$(UNZIP) -d $(BUILD_DIR) $(WILC1000_FIRMWARE_DL_DIR)/$(WILC1000_FIRMWARE_SOURCE)
-	mv $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware/* $(@D)
-	rmdir $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware
+ifeq ($(BR2_PACKAGE_WILC1000_FIRMWARE),y)
+WILC1000_FIRMWARE_FILES += \
+	wilc1000_wifi_firmware.bin
+endif
+
+ifeq ($(BR2_PACKAGE_WILC3000_FIRMWARE),y)
+WILC1000_FIRMWARE_FILES += \
+	wilc3000_ble_firmware.bin \
+	wilc3000_wifi_firmware.bin
+endif
+
+define WILC1000_FIRMWARE_INSTALL_FILES
+	cd $(@D) && \
+		$(TAR) cf install.tar $(sort $(WILC1000_FIRMWARE_FILES)) && \
+		$(TAR) xf install.tar -C $(TARGET_DIR)/lib/firmware/mchp
  endef
 
  define WILC1000_FIRMWARE_INSTALL_TARGET_CMDS
-	$(INSTALL) -D -m 0644 $(@D)/wilc1003_firmware.bin \
-		$(TARGET_DIR)/lib/firmware/atmel/wilc1003_firmware.bin
+	$(INSTALL) -d -m 0755 $(TARGET_DIR)/lib/firmware/mchp/
+	$(WILC1000_FIRMWARE_INSTALL_FILES)
  endef
Quoted 7 lines
Quoted 1 line
  $(eval $(generic-package))

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

#4 lore raw

PATCH v2 2/4 package/wilc-firmware: rename from wilc1000-firmware

In reply to Kris Bahnsen via buildroot

Separates out WILC1000 and WILC3000 in to individual config options since in reality only one or the other set would be needed.

---
 DEVELOPERS                                         |  5 ++++-
 package/Config.in                                  |  2 +-
 .../{wilc1000-firmware => wilc-firmware}/Config.in |  9 +++++++--
 .../wilc-firmware.hash}                            |  2 +-
 .../wilc-firmware.mk}                              | 22 +++++++++++-----------
 5 files changed, 24 insertions(+), 16 deletions(-)
 rename package/{wilc1000-firmware => wilc-firmware}/Config.in (82%)
 rename package/{wilc1000-firmware/wilc1000-firmware.hash => wilc-firmware/wilc-firmware.hash} (62%)
 rename package/{wilc1000-firmware/wilc1000-firmware.mk => wilc-firmware/wilc-firmware.mk} (51%)
DEVELOPERS +4 -1
index ca9decb58f..fc0f52edf5 100644
@@ -1662,6 +1662,9 @@ F:	board/octavo/osd32mp1-red/
 F:	configs/octavo_osd32mp1_brk_defconfig
 F:	configs/octavo_osd32mp1_red_defconfig
 
+N:	Kris Bahnsen <[email protected]>
+F:	package/wilc-firmware/
+
 N:	Kurt Van Dijck <[email protected]>
 F:	package/bcusdk/
 F:	package/libpthsem/
@@ -1759,7 +1762,7 @@ F:	package/python-json-schema-validator/
 F:	package/python-keyring/
 F:	package/python-simplejson/
 F:	package/python-versiontools/
-F:	package/wilc1000-firmware/
+F:	package/wilc-firmware/
 
 N:	Maeva Manuel <[email protected]>
 F:	board/freescale/imx8qmmek/
package/Config.in +1 -1
index 24f7af5ea8..1ff7f4cc66 100644
@@ -432,7 +432,7 @@ menu "Firmware"
 	source "package/sunxi-boards/Config.in"
 	source "package/ts4900-fpga/Config.in"
 	source "package/ux500-firmware/Config.in"
-	source "package/wilc1000-firmware/Config.in"
+	source "package/wilc-firmware/Config.in"
 	source "package/wilink-bt-firmware/Config.in"
 	source "package/zd1211-firmware/Config.in"
 endmenu
package/wilc-firmware/Config.in renamed from package/wilc1000-firmware/Config.in +7 -2
similarity index 82%
rename from package/wilc1000-firmware/Config.in
rename to package/wilc-firmware/Config.in
index 0734c7ad99..72a9c73206 100644
@@ -1,5 +1,11 @@
+config BR2_PACKAGE_WILC_FIRMWARE
+	bool
+	help
+	  Provider package for WILC1000_FIRMWARE & WILC3000_FIRMWARE
+
 config BR2_PACKAGE_WILC1000_FIRMWARE
 	bool "wilc1000-firmware"
+	select BR2_PACKAGE_WILC_FIRMWARE
 	help
 	  Firmware for Microchip WILC1000 wireless device
 
@@ -12,9 +18,9 @@ config BR2_PACKAGE_WILC1000_FIRMWARE
 
 	  https://github.com/linux4wilc/firmware
 
-if BR2_PACKAGE_WILC1000_FIRMWARE
 config BR2_PACKAGE_WILC3000_FIRMWARE
 	bool "wilc3000-firmware"
+	select BR2_PACKAGE_WILC_FIRMWARE
 	help
 	  Firmware for Microchip WILC3000 wireless device
 
@@ -26,4 +32,3 @@ config BR2_PACKAGE_WILC3000_FIRMWARE
 	  These will be installed to /lib/firmware/mchp/
 
 	  https://github.com/linux4wilc/firmware
-endif
package/wilc-firmware/wilc-firmware.hash renamed from package/wilc1000-firmware/wilc1000-firmware.hash +1 -1
similarity index 62%
rename from package/wilc1000-firmware/wilc1000-firmware.hash
rename to package/wilc-firmware/wilc-firmware.hash
index 9d55be9edc..2f1fc9964d 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256  29bb5739136cdb4088cb52af59badce05cc7e562bca40e9f29fef7f8f7c19cb8  wilc1000-firmware-wilc_linux_15_6.tar.gz
+sha256  29bb5739136cdb4088cb52af59badce05cc7e562bca40e9f29fef7f8f7c19cb8  wilc-firmware-wilc_linux_15_6.tar.gz
package/wilc-firmware/wilc-firmware.mk renamed from package/wilc1000-firmware/wilc1000-firmware.mk +11 -11
similarity index 51%
rename from package/wilc1000-firmware/wilc1000-firmware.mk
rename to package/wilc-firmware/wilc-firmware.mk
index 0af81c7110..19185bcb9b 100644
@@ -1,35 +1,35 @@
 ################################################################################
 #
-# wilc1000-firmware
+# wilc-firmware
 #
 ################################################################################
 
-WILC1000_FIRMWARE_VERSION = wilc_linux_15_6
-WILC1000_FIRMWARE_SITE = $(call github,linux4wilc,firmware,$(WILC1000_FIRMWARE_VERSION))
+WILC_FIRMWARE_VERSION = wilc_linux_15_6
+WILC_FIRMWARE_SITE = $(call github,linux4wilc,firmware,$(WILC_FIRMWARE_VERSION))
 
-WILC1000_FIRMWARE_LICENSE = Microchip firmware
-WILC1000_FIRMWARE_LICENSE_FILES = LICENSE.wilc_fw
+WILC_FIRMWARE_LICENSE = Microchip firmware
+WILC_FIRMWARE_LICENSE_FILES = LICENSE.wilc_fw
 
 ifeq ($(BR2_PACKAGE_WILC1000_FIRMWARE),y)
-WILC1000_FIRMWARE_FILES += \
+WILC_FIRMWARE_FILES += \
 	wilc1000_wifi_firmware.bin
 endif
 
 ifeq ($(BR2_PACKAGE_WILC3000_FIRMWARE),y)
-WILC1000_FIRMWARE_FILES += \
+WILC_FIRMWARE_FILES += \
 	wilc3000_ble_firmware.bin \
 	wilc3000_wifi_firmware.bin
 endif
 
-define WILC1000_FIRMWARE_INSTALL_FILES
+define WILC_FIRMWARE_INSTALL_FILES
 	cd $(@D) && \
-		$(TAR) cf install.tar $(sort $(WILC1000_FIRMWARE_FILES)) && \
+		$(TAR) cf install.tar $(sort $(WILC_FIRMWARE_FILES)) && \
 		$(TAR) xf install.tar -C $(TARGET_DIR)/lib/firmware/mchp
 endef
 
-define WILC1000_FIRMWARE_INSTALL_TARGET_CMDS
+define WILC_FIRMWARE_INSTALL_TARGET_CMDS
 	$(INSTALL) -d -m 0755 $(TARGET_DIR)/lib/firmware/mchp/
-	$(WILC1000_FIRMWARE_INSTALL_FILES)
+	$(WILC_FIRMWARE_INSTALL_FILES)
 endef
 
 $(eval $(generic-package))
Signature · 6 lines
2.11.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#5 lore raw

Re: [Buildroot] [PATCH v2 2/4] package/wilc-firmware: rename from wilc1000-firmware

Quoted 59 lines · Kris Bahnsen via buildroot

Separates out WILC1000 and WILC3000 in to individual config options since in reality only one or the other set would be needed.

---
  DEVELOPERS                                         |  5 ++++-
  package/Config.in                                  |  2 +-
  .../{wilc1000-firmware => wilc-firmware}/Config.in |  9 +++++++--
  .../wilc-firmware.hash}                            |  2 +-
  .../wilc-firmware.mk}                              | 22 +++++++++++-----------
  5 files changed, 24 insertions(+), 16 deletions(-)

rename package/{wilc1000-firmware => wilc-firmware}/Config.in (82%)
rename package/{wilc1000-firmware/wilc1000-firmware.hash => wilc-firmware/wilc-firmware.hash} (62%) rename package/{wilc1000-firmware/wilc1000-firmware.mk => wilc-firmware/wilc-firmware.mk} (51%)

DEVELOPERS +4 -1
index ca9decb58f..fc0f52edf5 100644
@@ -1662,6 +1662,9 @@ F:	board/octavo/osd32mp1-red/
  F:	configs/octavo_osd32mp1_brk_defconfig
  F:	configs/octavo_osd32mp1_red_defconfig
 
+N:	Kris Bahnsen <[email protected]>
+F:	package/wilc-firmware/
+
  N:	Kurt Van Dijck <[email protected]>
  F:	package/bcusdk/
  F:	package/libpthsem/
@@ -1759,7 +1762,7 @@ F:	package/python-json-schema-validator/
  F:	package/python-keyring/
  F:	package/python-simplejson/
  F:	package/python-versiontools/
-F:	package/wilc1000-firmware/
+F:	package/wilc-firmware/
 
  N:	Maeva Manuel <[email protected]>
  F:	board/freescale/imx8qmmek/
package/Config.in +1 -1
index 24f7af5ea8..1ff7f4cc66 100644
@@ -432,7 +432,7 @@ menu "Firmware"
  	source "package/sunxi-boards/Config.in"
  	source "package/ts4900-fpga/Config.in"
  	source "package/ux500-firmware/Config.in"
-	source "package/wilc1000-firmware/Config.in"
+	source "package/wilc-firmware/Config.in"
  	source "package/wilink-bt-firmware/Config.in"
  	source "package/zd1211-firmware/Config.in"
  endmenu
package/wilc-firmware/Config.in renamed from package/wilc1000-firmware/Config.in +0 -0
similarity index 82%
rename from package/wilc1000-firmware/Config.in
rename to package/wilc-firmware/Config.in
index 0734c7ad99..72a9c73206 100644

package/wilc-firmware/Config.in line 8

Quoted 8 lines
package/wilc-firmware/Config.in renamed from package/wilc1000-firmware/Config.in +6 -0
@@ -1,5 +1,11 @@
+config BR2_PACKAGE_WILC_FIRMWARE
+	bool
+	help
+	  Provider package for WILC1000_FIRMWARE & WILC3000_FIRMWARE
+
  config BR2_PACKAGE_WILC1000_FIRMWARE
  	bool "wilc1000-firmware"
+	select BR2_PACKAGE_WILC_FIRMWARE

This is not how we normally do thing. We normally have a package with sub-options:

config BR2_PACKAGE_FOO
...

if BR2_PACKAGE_FOO
config BR2_PACKAGE_FOO_WLC1000
config BR2_PACKAGE_FOO_WLC3000
endif

However, the approach you took is pretty elegant, and I don't see anything
wrong with it. So in the end I applied as is.

Regards,
Arnout

Quoted 74 lines
package/wilc-firmware/Config.in renamed from package/wilc1000-firmware/Config.in +1 -2
  	help
  	  Firmware for Microchip WILC1000 wireless device
 
@@ -12,9 +18,9 @@ config BR2_PACKAGE_WILC1000_FIRMWARE
 
  	  https://github.com/linux4wilc/firmware
 
-if BR2_PACKAGE_WILC1000_FIRMWARE
  config BR2_PACKAGE_WILC3000_FIRMWARE
  	bool "wilc3000-firmware"
+	select BR2_PACKAGE_WILC_FIRMWARE
  	help
  	  Firmware for Microchip WILC3000 wireless device
 
@@ -26,4 +32,3 @@ config BR2_PACKAGE_WILC3000_FIRMWARE
  	  These will be installed to /lib/firmware/mchp/
 
  	  https://github.com/linux4wilc/firmware
-endif
package/wilc-firmware/wilc-firmware.hash renamed from package/wilc1000-firmware/wilc1000-firmware.hash +1 -1
similarity index 62%
rename from package/wilc1000-firmware/wilc1000-firmware.hash
rename to package/wilc-firmware/wilc-firmware.hash
index 9d55be9edc..2f1fc9964d 100644
@@ -1,2 +1,2 @@
  # Locally calculated
-sha256  29bb5739136cdb4088cb52af59badce05cc7e562bca40e9f29fef7f8f7c19cb8  wilc1000-firmware-wilc_linux_15_6.tar.gz
+sha256  29bb5739136cdb4088cb52af59badce05cc7e562bca40e9f29fef7f8f7c19cb8  wilc-firmware-wilc_linux_15_6.tar.gz
package/wilc-firmware/wilc-firmware.mk renamed from package/wilc1000-firmware/wilc1000-firmware.mk +9 -9
similarity index 51%
rename from package/wilc1000-firmware/wilc1000-firmware.mk
rename to package/wilc-firmware/wilc-firmware.mk
index 0af81c7110..19185bcb9b 100644
@@ -1,35 +1,35 @@
  ################################################################################
  #
-# wilc1000-firmware
+# wilc-firmware
  #
  ################################################################################
 
-WILC1000_FIRMWARE_VERSION = wilc_linux_15_6
-WILC1000_FIRMWARE_SITE = $(call github,linux4wilc,firmware,$(WILC1000_FIRMWARE_VERSION))
+WILC_FIRMWARE_VERSION = wilc_linux_15_6
+WILC_FIRMWARE_SITE = $(call github,linux4wilc,firmware,$(WILC_FIRMWARE_VERSION))
 
-WILC1000_FIRMWARE_LICENSE = Microchip firmware
-WILC1000_FIRMWARE_LICENSE_FILES = LICENSE.wilc_fw
+WILC_FIRMWARE_LICENSE = Microchip firmware
+WILC_FIRMWARE_LICENSE_FILES = LICENSE.wilc_fw
 
  ifeq ($(BR2_PACKAGE_WILC1000_FIRMWARE),y)
-WILC1000_FIRMWARE_FILES += \
+WILC_FIRMWARE_FILES += \
  	wilc1000_wifi_firmware.bin
  endif
 
  ifeq ($(BR2_PACKAGE_WILC3000_FIRMWARE),y)
-WILC1000_FIRMWARE_FILES += \
+WILC_FIRMWARE_FILES += \
  	wilc3000_ble_firmware.bin \
  	wilc3000_wifi_firmware.bin
  endif
 
-define WILC1000_FIRMWARE_INSTALL_FILES
+define WILC_FIRMWARE_INSTALL_FILES
  	cd $(@D) && \
-		$(TAR) cf install.tar $(sort $(WILC1000_FIRMWARE_FILES)) && \
+		$(TAR) cf install.tar $(sort $(WILC_FIRMWARE_FILES)) && \
  		$(TAR) xf install.tar -C $(TARGET_DIR)/lib/firmware/mchp

package/wilc-firmware/wilc-firmware.mk line 35

Quoted 10 lines
package/wilc-firmware/wilc-firmware.mk renamed from package/wilc1000-firmware/wilc1000-firmware.mk +2 -2
  endef
 
-define WILC1000_FIRMWARE_INSTALL_TARGET_CMDS
+define WILC_FIRMWARE_INSTALL_TARGET_CMDS
  	$(INSTALL) -d -m 0755 $(TARGET_DIR)/lib/firmware/mchp/
-	$(WILC1000_FIRMWARE_INSTALL_FILES)
+	$(WILC_FIRMWARE_INSTALL_FILES)
  endef
 
  $(eval $(generic-package))

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

#6 lore raw

PATCH v2 3/4 configs: add WILC3000_FIRMWARE to compatible devices

In reply to Kris Bahnsen via buildroot

The update to wilc-firmware added firmware files for WILC3000 devices as a separate config option. All Atmel/Microchip defconfigs that previously only had WILC1000_FIRMWARE either have WILC3000 Wi-Fi hardware (WILC3000 is the same silicon but with BLE added) or have the capacity to have either WILC1000 or WILC3000 devices added to the system. Install all firmware blobs to these devices by default.

---
 configs/at91sam9x5ek_dev_defconfig                     | 1 +
 configs/at91sam9x5ek_mmc_dev_defconfig                 | 1 +
 configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig       | 1 +
 configs/atmel_sama5d2_xplained_mmc_dev_defconfig       | 1 +
 configs/atmel_sama5d3_xplained_dev_defconfig           | 1 +
 configs/atmel_sama5d3_xplained_mmc_dev_defconfig       | 1 +
 configs/atmel_sama5d4_xplained_dev_defconfig           | 1 +
 configs/atmel_sama5d4_xplained_mmc_dev_defconfig       | 1 +
 configs/microchip_sam9x60ek_mmc_dev_defconfig          | 1 +
 configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig | 1 +
 configs/microchip_sama5d2_icp_mmc_dev_defconfig        | 1 +
 configs/microchip_sama7g5ek_mmc_dev_defconfig          | 1 +
 12 files changed, 12 insertions(+)
configs/at91sam9x5ek_dev_defconfig +1 -0
index bfa8e95941..8714463d89 100644
@@ -47,6 +47,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/at91sam9x5ek_mmc_dev_defconfig +1 -0
index 2e1a5c7f59..9481594716 100644
@@ -50,6 +50,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig +1 -0
index ba2fa46790..38618a5732 100644
@@ -39,6 +39,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_RNG_TOOLS=y
configs/atmel_sama5d2_xplained_mmc_dev_defconfig +1 -0
index a8b68ca0a2..1654408aa5 100644
@@ -53,6 +53,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d3_xplained_dev_defconfig +1 -0
index cdfd9de17e..64455cb2e0 100644
@@ -49,6 +49,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d3_xplained_mmc_dev_defconfig +1 -0
index a2205aeefa..8f5724d631 100644
@@ -52,6 +52,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d4_xplained_dev_defconfig +1 -0
index f8783f5652..fab91cf0b3 100644
@@ -50,6 +50,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d4_xplained_mmc_dev_defconfig +1 -0
index b4e99f658a..f9074e9862 100644
@@ -53,6 +53,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/microchip_sam9x60ek_mmc_dev_defconfig +1 -0
index 06e03967c4..2b4e234297 100644
@@ -36,6 +36,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig +1 -0
index 3bcd5f0200..f9aa6cdc05 100644
@@ -39,6 +39,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_I2C_TOOLS=y
 BR2_PACKAGE_SETSERIAL=y
configs/microchip_sama5d2_icp_mmc_dev_defconfig +1 -0
index 27d1d3409d..b1b22c1312 100644
@@ -32,6 +32,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_SETSERIAL=y
 BR2_PACKAGE_SPI_TOOLS=y
configs/microchip_sama7g5ek_mmc_dev_defconfig +1 -0
index 6eb6c282e0..d68846e553 100644
@@ -30,6 +30,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
 BR2_PACKAGE_MMC_UTILS=y
 BR2_PACKAGE_MTD=y
 BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
 BR2_PACKAGE_EVTEST=y
 BR2_PACKAGE_RNG_TOOLS=y
 # BR2_PACKAGE_RNG_TOOLS_JITTERENTROPY_LIBRARY is not set
Signature · 6 lines
2.11.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#7 lore raw

Re: [Buildroot] [PATCH v2 3/4] configs: add WILC3000_FIRMWARE to compatible devices

Quoted 4 lines · Kris Bahnsen via buildroot

The update to wilc-firmware added firmware files for WILC3000 devices as a separate config option. All Atmel/Microchip defconfigs that previously only had WILC1000_FIRMWARE either have WILC3000 Wi-Fi hardware (WILC3000 is the same silicon but with BLE added)

For the ones which have a WILC3000, there's no point to include the WILC1000
firmware, right?

Anyway, applied to master as is, thanks. Can be fixed up later.

Regards,
Arnout

Quoted 157 lines

or have the capacity to have either WILC1000 or WILC3000 devices added to the system. Install all firmware blobs to these devices by default.

---
  configs/at91sam9x5ek_dev_defconfig                     | 1 +
  configs/at91sam9x5ek_mmc_dev_defconfig                 | 1 +
  configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig       | 1 +
  configs/atmel_sama5d2_xplained_mmc_dev_defconfig       | 1 +
  configs/atmel_sama5d3_xplained_dev_defconfig           | 1 +
  configs/atmel_sama5d3_xplained_mmc_dev_defconfig       | 1 +
  configs/atmel_sama5d4_xplained_dev_defconfig           | 1 +
  configs/atmel_sama5d4_xplained_mmc_dev_defconfig       | 1 +
  configs/microchip_sam9x60ek_mmc_dev_defconfig          | 1 +
  configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig | 1 +
  configs/microchip_sama5d2_icp_mmc_dev_defconfig        | 1 +
  configs/microchip_sama7g5ek_mmc_dev_defconfig          | 1 +
  12 files changed, 12 insertions(+)
configs/at91sam9x5ek_dev_defconfig +1 -0
index bfa8e95941..8714463d89 100644
@@ -47,6 +47,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/at91sam9x5ek_mmc_dev_defconfig +1 -0
index 2e1a5c7f59..9481594716 100644
@@ -50,6 +50,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig +1 -0
index ba2fa46790..38618a5732 100644
@@ -39,6 +39,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_RNG_TOOLS=y
configs/atmel_sama5d2_xplained_mmc_dev_defconfig +1 -0
index a8b68ca0a2..1654408aa5 100644
@@ -53,6 +53,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d3_xplained_dev_defconfig +1 -0
index cdfd9de17e..64455cb2e0 100644
@@ -49,6 +49,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d3_xplained_mmc_dev_defconfig +1 -0
index a2205aeefa..8f5724d631 100644
@@ -52,6 +52,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d4_xplained_dev_defconfig +1 -0
index f8783f5652..fab91cf0b3 100644
@@ -50,6 +50,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d4_xplained_mmc_dev_defconfig +1 -0
index b4e99f658a..f9074e9862 100644
@@ -53,6 +53,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/microchip_sam9x60ek_mmc_dev_defconfig +1 -0
index 06e03967c4..2b4e234297 100644
@@ -36,6 +36,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig +1 -0
index 3bcd5f0200..f9aa6cdc05 100644
@@ -39,6 +39,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/microchip_sama5d2_icp_mmc_dev_defconfig +1 -0
index 27d1d3409d..b1b22c1312 100644
@@ -32,6 +32,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_SETSERIAL=y
  BR2_PACKAGE_SPI_TOOLS=y
configs/microchip_sama7g5ek_mmc_dev_defconfig +0 -0
index 6eb6c282e0..d68846e553 100644

configs/microchip_sama7g5ek_mmc_dev_defconfig BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y · line 36

Quoted 7 lines
configs/microchip_sama7g5ek_mmc_dev_defconfig +1 -0
@@ -30,6 +30,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_RNG_TOOLS=y
  # BR2_PACKAGE_RNG_TOOLS_JITTERENTROPY_LIBRARY is not set

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

#8 lore raw

Re: [Buildroot] [PATCH v2 3/4] configs: add WILC3000_FIRMWARE to compatible devices

Quoted 9 lines · Arnout Vandecappelle
Quoted 4 lines · Kris Bahnsen via buildroot

The update to wilc-firmware added firmware files for WILC3000 devices as a separate config option. All Atmel/Microchip defconfigs that previously only had WILC1000_FIRMWARE either have WILC3000 Wi-Fi hardware (WILC3000 is the same silicon but with BLE added)

For the ones which have a WILC3000, there's no point to include the WILC1000
firmware, right?

I'm not familiar with the full Microchip lineup. Some have these modules soldered down, others, however, can accept either module via some expansion/interconnect system. I thought it safer to install both.

In Microchip's externally maintained tree, they just install all .bin files together with their wilc-firmware package.

These defconfigs definitely need some maintenance though, as I said in the series cover letter, the defconfig I tried failed to boot when built from master.

-Kris

Quoted 162 lines

Anyway, applied to master as is, thanks. Can be fixed up later.

Regards,
Arnout

Quoted 156 lines

or have the capacity to have either WILC1000 or WILC3000 devices added to the system. Install all firmware blobs to these devices by default.

---
  configs/at91sam9x5ek_dev_defconfig                     | 1 +
  configs/at91sam9x5ek_mmc_dev_defconfig                 | 1 +
  configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig       | 1 +
  configs/atmel_sama5d2_xplained_mmc_dev_defconfig       | 1 +
  configs/atmel_sama5d3_xplained_dev_defconfig           | 1 +
  configs/atmel_sama5d3_xplained_mmc_dev_defconfig       | 1 +
  configs/atmel_sama5d4_xplained_dev_defconfig           | 1 +
  configs/atmel_sama5d4_xplained_mmc_dev_defconfig       | 1 +
  configs/microchip_sam9x60ek_mmc_dev_defconfig          | 1 +
  configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig | 1 +
  configs/microchip_sama5d2_icp_mmc_dev_defconfig        | 1 +
  configs/microchip_sama7g5ek_mmc_dev_defconfig          | 1 +
  12 files changed, 12 insertions(+)
configs/at91sam9x5ek_dev_defconfig +1 -0
index bfa8e95941..8714463d89 100644
@@ -47,6 +47,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/at91sam9x5ek_mmc_dev_defconfig +1 -0
index 2e1a5c7f59..9481594716 100644
@@ -50,6 +50,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig +1 -0
index ba2fa46790..38618a5732 100644
@@ -39,6 +39,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_RNG_TOOLS=y
configs/atmel_sama5d2_xplained_mmc_dev_defconfig +1 -0
index a8b68ca0a2..1654408aa5 100644
@@ -53,6 +53,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d3_xplained_dev_defconfig +1 -0
index cdfd9de17e..64455cb2e0 100644
@@ -49,6 +49,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d3_xplained_mmc_dev_defconfig +1 -0
index a2205aeefa..8f5724d631 100644
@@ -52,6 +52,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d4_xplained_dev_defconfig +1 -0
index f8783f5652..fab91cf0b3 100644
@@ -50,6 +50,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/atmel_sama5d4_xplained_mmc_dev_defconfig +1 -0
index b4e99f658a..f9074e9862 100644
@@ -53,6 +53,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/microchip_sam9x60ek_mmc_dev_defconfig +1 -0
index 06e03967c4..2b4e234297 100644
@@ -36,6 +36,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig +1 -0
index 3bcd5f0200..f9aa6cdc05 100644
@@ -39,6 +39,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_I2C_TOOLS=y
  BR2_PACKAGE_SETSERIAL=y
configs/microchip_sama5d2_icp_mmc_dev_defconfig +1 -0
index 27d1d3409d..b1b22c1312 100644
@@ -32,6 +32,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_SETSERIAL=y
  BR2_PACKAGE_SPI_TOOLS=y
configs/microchip_sama7g5ek_mmc_dev_defconfig +0 -0
index 6eb6c282e0..d68846e553 100644
Quoted 10 lines

configs/microchip_sama7g5ek_mmc_dev_defconfig BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y · line 36

Quoted 8 lines
configs/microchip_sama7g5ek_mmc_dev_defconfig +1 -0
@@ -30,6 +30,7 @@ BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
  BR2_PACKAGE_MMC_UTILS=y
  BR2_PACKAGE_MTD=y
  BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_WILC3000_FIRMWARE=y
  BR2_PACKAGE_EVTEST=y
  BR2_PACKAGE_RNG_TOOLS=y
  # BR2_PACKAGE_RNG_TOOLS_JITTERENTROPY_LIBRARY is not set

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

#9 lore raw

PATCH v2 4/4 package/wilc-driver: new package

In reply to Kris Bahnsen via buildroot

WILC1000/3000 driver pulled from at91-linux tree set-up to be built as an external module. Upstream Linux kernel does not support WILC3000 features at this time. This package is intended to bridge that gap until WILC1000/3000 is fully supported in kernel.

---
 DEVELOPERS                           |  1 +
 package/Config.in                    |  1 +
 package/wilc-driver/Config.in        | 58 ++++++++++++++++++++++++++++++++++++
 package/wilc-driver/wilc-driver.hash |  2 ++
 package/wilc-driver/wilc-driver.mk   | 29 ++++++++++++++++++
 5 files changed, 91 insertions(+)
 create mode 100644 package/wilc-driver/Config.in
 create mode 100644 package/wilc-driver/wilc-driver.hash
 create mode 100644 package/wilc-driver/wilc-driver.mk
DEVELOPERS +1 -0
index fc0f52edf5..1e6b2d0f48 100644
@@ -1664,6 +1664,7 @@ F:	configs/octavo_osd32mp1_red_defconfig
 
 N:	Kris Bahnsen <[email protected]>
 F:	package/wilc-firmware/
+F:	package/wilc-driver/
 
 N:	Kurt Van Dijck <[email protected]>
 F:	package/bcusdk/
package/Config.in +1 -0
index 1ff7f4cc66..8d5ed427c4 100644
@@ -610,6 +610,7 @@ endmenu
 	source "package/usbutils/Config.in"
 	source "package/w_scan/Config.in"
 	source "package/wf111/Config.in"
+	source "package/wilc-driver/Config.in"
 	source "package/wipe/Config.in"
 	source "package/xorriso/Config.in"
 	source "package/xr819-xradio/Config.in"
package/wilc-driver/Config.in new file +58 -0

58 lines not on this page · raw message

package/wilc-driver/wilc-driver.hash new file +2 -0
new file mode 100644
index 0000000000..b51591e8d8
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256  4796b1a53781f8702a335b0146d488a9422b71dab39f6f154f955b0ad1711199  wilc-driver-linux4microchip-2021.10-1.tar.gz
package/wilc-driver/wilc-driver.mk new file +29 -0
new file mode 100644
index 0000000000..a89af30e29
@@ -0,0 +1,29 @@
+################################################################################
+#
+# wilc-driver
+#
+################################################################################
+
+WILC_DRIVER_VERSION = linux4microchip-2021.10-1
+WILC_DRIVER_SITE = $(call github,embeddedTS,wilc3000-external-module,$(WILC_DRIVER_VERSION))
+
+WILC_DRIVER_LICENSE = GPL-2.0
+WILC_DRIVER_LICENSE_FILES = LICENSE
+
+ifeq ($(BR2_PACKAGE_WILC_DRIVER_SPI),y)
+WILC_DRIVER_MODULE_MAKE_OPTS += \
+	CONFIG_WILC_SPI=m
+endif
+
+ifeq ($(BR2_PACKAGE_WILC_DRIVER_SDIO),y)
+WILC_DRIVER_MODULE_MAKE_OPTS += \
+	CONFIG_WILC_SDIO=m
+endif
+
+ifeq ($(BR2_PACKAGE_WILC_DRIVER_SDIO_OOB),y)
+WILC_DRIVER_MODULE_MAKE_OPTS += \
+	CONFIG_WILC_HW_OOB_INTR=y
+endif
+
+$(eval $(kernel-module))
+$(eval $(generic-package))
Signature · 6 lines
2.11.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#10 lore raw

Re: [Buildroot] [PATCH v2 4/4] package/wilc-driver: new package

Quoted 6 lines · Kris Bahnsen via buildroot

WILC1000/3000 driver pulled from at91-linux tree set-up to be built as an external module. Upstream Linux kernel does not support WILC3000 features at this time. This package is intended to bridge that gap until WILC1000/3000 is fully supported in kernel.

[snip]

package/wilc-driver/wilc-driver.hash line 2

Quoted 8 lines
package/wilc-driver/wilc-driver.hash new file +2 -0
new file mode 100644
index 0000000000..b51591e8d8
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256  4796b1a53781f8702a335b0146d488a9422b71dab39f6f154f955b0ad1711199  wilc-driver-linux4microchip-2021.10-1.tar.gz

Hash for license file missing again.
Applied to master with that fixed, thanks.

Regards,
Arnout

Quoted 25 lines
package/wilc-driver/wilc-driver.mk new file +19 -0
new file mode 100644
index 0000000000..a89af30e29
@@ -0,0 +1,29 @@
+################################################################################
+#
+# wilc-driver
+#
+################################################################################
+
+WILC_DRIVER_VERSION = linux4microchip-2021.10-1
+WILC_DRIVER_SITE = $(call github,embeddedTS,wilc3000-external-module,$(WILC_DRIVER_VERSION))
+
+WILC_DRIVER_LICENSE = GPL-2.0
+WILC_DRIVER_LICENSE_FILES = LICENSE
+
+ifeq ($(BR2_PACKAGE_WILC_DRIVER_SPI),y)
+WILC_DRIVER_MODULE_MAKE_OPTS += \
+	CONFIG_WILC_SPI=m
+endif
+
+ifeq ($(BR2_PACKAGE_WILC_DRIVER_SDIO),y)
+WILC_DRIVER_MODULE_MAKE_OPTS += \

package/wilc-driver/wilc-driver.mk line 29

Quoted 10 lines
package/wilc-driver/wilc-driver.mk new file +10 -0
+	CONFIG_WILC_SDIO=m
+endif
+
+ifeq ($(BR2_PACKAGE_WILC_DRIVER_SDIO_OOB),y)
+WILC_DRIVER_MODULE_MAKE_OPTS += \
+	CONFIG_WILC_HW_OOB_INTR=y
+endif
+
+$(eval $(kernel-module))
+$(eval $(generic-package))

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot