adjust atbm60xx driver for expanded options including USB (#1263)

pull/1266/head
gtxaspec 2024-01-18 02:56:37 -08:00 committed by GitHub
parent ca3d0996a9
commit 1e31d4c145
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 87 additions and 7 deletions

View File

@ -103,6 +103,12 @@ BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC=y
BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_MEDIATEK_MT7601U=y
BR2_PACKAGE_ATBM60XX=y
# BR2_PACKAGE_ATBM60XX_MODEL_601X is not set
# BR2_PACKAGE_ATBM60XX_MODEL_602X is not set
BR2_PACKAGE_ATBM60XX_MODEL_603X=y
# BR2_PACKAGE_ATBM60XX_MODEL_6041 is not set
BR2_PACKAGE_ATBM60XX_INTERFACE_SDIO=y
# BR2_PACKAGE_ATBM60XX_INTERFACE_USB is not set
BR2_PACKAGE_RTL8189FS_OPENIPC=y
# BR2_PACKAGE_RTL8188EU is not set

View File

@ -4,7 +4,47 @@ config BR2_PACKAGE_ATBM60XX
help
Wireless driver atbm60xx.
Allwinner atbm60xx WiFi driver
ALTOBEAM atbm60xx WiFi driver
comment "ATBM60xX needs a Linux kernel to be built"
if BR2_PACKAGE_ATBM60XX
choice
prompt "ATBM60XX Model"
help
Select the ATBM60XX model
config BR2_PACKAGE_ATBM60XX_MODEL_601X
bool "ATBM601x"
config BR2_PACKAGE_ATBM60XX_MODEL_602X
bool "ATBM602x"
config BR2_PACKAGE_ATBM60XX_MODEL_603X
bool "ATBM603x"
config BR2_PACKAGE_ATBM60XX_MODEL_6041
bool "ATBM6041"
endchoice
if BR2_PACKAGE_ATBM60XX_MODEL_601X || BR2_PACKAGE_ATBM60XX_MODEL_602X || BR2_PACKAGE_ATBM60XX_MODEL_603X || BR2_PACKAGE_ATBM60XX_MODEL_6041
choice
prompt "Interface type for selected ATBM60XX model"
help
Select the interface type for the selected ATBM60XX model
config BR2_PACKAGE_ATBM60XX_INTERFACE_USB
bool "USB"
config BR2_PACKAGE_ATBM60XX_INTERFACE_SDIO
bool "SDIO"
endchoice
endif
endif
comment "ATBM60XX needs a Linux kernel to be built"
depends on !BR2_LINUX_KERNEL

View File

@ -18,9 +18,43 @@ define ATBM60XX_INSTALL_TARGET_CMDS
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/share/atbm60xx_conf $(ATBM60XX_PKGDIR)/files/*.txt
endef
ATBM60XX_MODULE_MAKE_OPTS = KSRC=$(LINUX_DIR)
# Set the module name based on the model and interface type
ATBM60XX_MODEL_NAME =
# Disable all models by default
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM601x=n CONFIG_ATBM602x=n CONFIG_ATBM603x=n CONFIG_ATBM6041=n
# Enable the selected model and set the interface type
ifeq ($(BR2_PACKAGE_ATBM60XX_MODEL_601X),y)
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM601x=y
ATBM60XX_MODEL_NAME = atbm601x_wifi
endif
ifeq ($(BR2_PACKAGE_ATBM60XX_MODEL_602X),y)
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM602x=y
ATBM60XX_MODEL_NAME = atbm602x_wifi
endif
ifeq ($(BR2_PACKAGE_ATBM60XX_MODEL_603X),y)
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM603x=y
ATBM60XX_MODEL_NAME = atbm603x_wifi
endif
ifeq ($(BR2_PACKAGE_ATBM60XX_MODEL_6041),y)
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM6041=y
ATBM60XX_MODEL_NAME = atbm6041_wifi
endif
# Set the interface type
ifeq ($(BR2_PACKAGE_ATBM60XX_INTERFACE_USB),y)
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM_USB_BUS=y CONFIG_ATBM_SDIO_BUS=n
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM_MODULE_NAME="$(ATBM60XX_MODEL_NAME)_usb"
endif
ifeq ($(BR2_PACKAGE_ATBM60XX_INTERFACE_SDIO),y)
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM_USB_BUS=n CONFIG_ATBM_SDIO_BUS=y
ATBM60XX_MODULE_MAKE_OPTS += CONFIG_ATBM_MODULE_NAME="$(ATBM60XX_MODEL_NAME)_sdio"
endif
ATBM60XX_LICENSE = GPL-2.0
ATBM60XX_MODULE_MAKE_OPTS = \
KSRC=$(LINUX_DIR)
$(eval $(kernel-module))
$(eval $(generic-package))