Parcourir la source

mac80211: add packages libertas-spi module and firmware

This adds option to build kernel module and firmware packages
for a Marvell 8686 SPI Wireless device

Signed-off-by: Joseph Honold <[email protected]>

SVN-Revision: 48750
Felix Fietkau il y a 10 ans
Parent
commit
cd33dd3f7c
2 fichiers modifiés avec 27 ajouts et 1 suppressions
  1. 10 0
      package/firmware/linux-firmware/marvell.mk
  2. 17 1
      package/kernel/mac80211/Makefile

+ 10 - 0
package/firmware/linux-firmware/marvell.mk

@@ -44,3 +44,13 @@ define Package/libertas-sdio-firmware/install
 endef
 $(eval $(call BuildPackage,libertas-sdio-firmware))
 
+Package/libertas-spi-firmware = $(call Package/firmware-default,Marvell 8686 SPI firmware)
+define Package/libertas-spi-firmware/install
+	$(INSTALL_DIR) $(1)/lib/firmware/libertas
+	$(INSTALL_DATA) \
+		$(PKG_BUILD_DIR)/libertas/gspi8686_v9_helper.bin \
+		$(PKG_BUILD_DIR)/libertas/gspi8686_v9.bin \
+		$(1)/lib/firmware/libertas
+endef
+$(eval $(call BuildPackage,libertas-spi-firmware))
+

+ 17 - 1
package/kernel/mac80211/Makefile

@@ -31,7 +31,7 @@ PKG_DRIVERS = \
 	iwl-legacy iwl3945 iwl4965 iwlwifi \
 	lib80211 \
 	libipw ipw2100 ipw2200 \
-	libertas-sdio libertas-usb \
+	libertas-sdio libertas-usb libertas-spi \
 	mac80211-hwsim \
 	mt7601u \
 	mwl8k mwifiex-pcie \
@@ -975,6 +975,20 @@ define KernelPackage/libertas-sdio
   AUTOLOAD:=$(call AutoProbe,libertas libertas_sdio)
 endef
 
+define KernelPackage/libertas-spi
+  $(call KernelPackage/mac80211/Default)
+  SUBMENU:=Wireless Drivers
+  DEPENDS+= +kmod-cfg80211 +kmod-lib80211 +@DRIVER_WEXT_SUPPORT +libertas-spi-firmware
+  KCONFIG := \
+	CONFIG_SPI=y \
+	CONFIG_SPI_MASTER=y
+  TITLE:=Marvell 88W8686 SPI Wireless Driver
+  FILES:= \
+	$(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/libertas.ko \
+	$(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/libertas_spi.ko
+  AUTOLOAD:=$(call AutoProbe,libertas libertas_spi)
+endef
+
 define KernelPackage/mac80211-hwsim
   $(call KernelPackage/mac80211/Default)
   TITLE:=mac80211 HW simulation device
@@ -1573,6 +1587,7 @@ config-y += HERMES_PRISM
 config-$(call config_package,adm8211) += ADM8211
 config-$(call config_package,libertas-sdio) += LIBERTAS LIBERTAS_SDIO
 config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
+config-$(call config_package,libertas-spi) += LIBERTAS LIBERTAS_SPI
 config-$(call config_package,mwl8k) += MWL8K
 config-$(call config_package,mwifiex-pcie) += MWIFIEX MWIFIEX_PCIE
 config-$(call config_package,rtl8180) += RTL8180
@@ -1773,6 +1788,7 @@ $(eval $(call KernelPackage,iwl3945))
 $(eval $(call KernelPackage,lib80211))
 $(eval $(call KernelPackage,libertas-usb))
 $(eval $(call KernelPackage,libertas-sdio))
+$(eval $(call KernelPackage,libertas-spi))
 $(eval $(call KernelPackage,libipw))
 $(eval $(call KernelPackage,ipw2100))
 $(eval $(call KernelPackage,ipw2200))