Browse Source

add support for wlan and bluetooth on cubox, only wlan verified and working

Waldemar Brodkorb 10 years ago
parent
commit
8711c32216

+ 22 - 2
mk/modules.mk

@@ -70,10 +70,18 @@ $(eval $(call KMOD_template,RFKILL,rfkill,\
 	$(MODULES_DIR)/kernel/net/rfkill/rfkill \
 ,10))
 
-$(eval $(call KMOD_template,MAC80211,mac80211,\
+$(eval $(call KMOD_template,CFG80211,cfg80211,\
 	$(MODULES_DIR)/kernel/net/wireless/cfg80211 \
+,14))
+
+$(eval $(call KMOD_template,MAC80211,mac80211,\
 	$(MODULES_DIR)/kernel/net/mac80211/mac80211 \
-,15, kmod-crypto-arc4 kmod-crypto-ecb))
+,15, kmod-cfg80211 kmod-crypto-arc4 kmod-crypto-ecb))
+
+$(eval $(call KMOD_template,BRCMFMAC,brcmfmac,\
+	$(MODULES_DIR)/kernel/drivers/net/wireless/brcm80211/brcmutil/brcmutil \
+	$(MODULES_DIR)/kernel/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac \
+,20))
 
 $(eval $(call KMOD_template,ATH6KL,ath6kl,\
 	$(MODULES_DIR)/kernel/drivers/net/wireless/ath/ath6kl/ath6kl_core \
@@ -1417,6 +1425,18 @@ $(eval $(call KMOD_template,BT_HCIBTUSB,bt-hcibtusb,\
 	$(MODULES_DIR)/kernel/drivers/bluetooth/btusb \
 ,76))
 
+$(eval $(call KMOD_template,BT_HCIBTSDIO,bt-hcibtsdio,\
+	$(MODULES_DIR)/kernel/drivers/bluetooth/btsdio \
+,76))
+
+$(eval $(call KMOD_template,BT_MRVL,bt-mrvl,\
+	$(MODULES_DIR)/kernel/drivers/bluetooth/btmrvl \
+,77))
+
+$(eval $(call KMOD_template,BT_MRVL_SDIO,bt-mrvl-sdio,\
+	$(MODULES_DIR)/kernel/drivers/bluetooth/btmrvl_sdio \
+,78))
+
 $(eval $(call KMOD_template,BT_HCIUART,bt-hciuart,\
 	$(MODULES_DIR)/kernel/drivers/bluetooth/hci_uart \
 ,75))

+ 2 - 2
package/bluez/Makefile

@@ -6,9 +6,9 @@ include ${TOPDIR}/rules.mk
 PKG_NAME:=		bluez
 PKG_VERSION:=		5.12
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		981b34c2ae7e2ed2e25a167d8a902a25
+PKG_MD5SUM:=		5d37e581107b3d6f91b81194a5006407
 PKG_DESCR:=		bluetooth applications
-PKG_SECTION:=		misc	
+PKG_SECTION:=		wifi
 PKG_DEPENDS:=		kmod-bt glib dbus libreadline
 PKG_BUILDDEP:=		autotool glib dbus readline
 PKG_URL:=		http://www.bluez.org/

+ 5 - 0
package/busybox/Config.in.manual

@@ -191,3 +191,8 @@ config BUSYBOX_DISABLE_FIND
 	depends on ADK_PACKAGE_FINDUTILS
 	default n
 
+config BUSYBOX_DISABLE_RFKILL
+	boolean
+	default y if ADK_PACKAGE_RFKILL
+	depends on ADK_PACKAGE_RFKILL
+	default n

+ 2 - 1
package/busybox/config/miscutils/Config.in

@@ -652,7 +652,8 @@ config BUSYBOX_READAHEAD
 
 config BUSYBOX_RFKILL
 	bool "rfkill"
-	default y  # doesn't build on Ubuntu 9.04
+	depends on !BUSYBOX_DISABLE_RFKILL
+	default n
 	select BUSYBOX_PLATFORM_LINUX
 	help
 	  Enable/disable wireless devices.

+ 4 - 0
package/busybox/config/networking/Config.in

@@ -35,11 +35,13 @@ config BUSYBOX_FEATURE_NAMEIF_EXTENDED
 	    new_interface_name  phy_address=2 00:80:C8:38:91:B5
 	    new_interface_name  mac=00:80:C8:38:91:B5
 	    new_interface_name  00:80:C8:38:91:B5
+
 config BUSYBOX_NBDCLIENT
 	bool "nbd-client"
 	default n
 	help
 	  Network block device client
+
 config BUSYBOX_NC
 	bool "nc"
 	default y
@@ -72,6 +74,7 @@ config BUSYBOX_NC_110_COMPAT
 	  The code is about 2.5k bigger. It enables
 	  -s ADDR, -n, -u, -v, -o FILE, -z options, but loses
 	  busybox-specific extensions: -f FILE and -ll.
+
 config BUSYBOX_PING
 	bool "ping"
 	default y
@@ -94,6 +97,7 @@ config BUSYBOX_FEATURE_FANCY_PING
 	help
 	  Make the output from the ping applet include statistics, and at the
 	  same time provide full support for ICMP packets.
+
 config BUSYBOX_WHOIS
 	bool "whois"
 	default y

+ 59 - 26
target/linux/config/Config.in.bluetooth

@@ -1,8 +1,8 @@
-menu "Bluetooth"
-depends on ADK_TARGET_WITH_USB || ADK_TARGET_WITH_MINIPCI
+menu "Bluetooth support and drivers"
+depends on ADK_TARGET_WITH_USB || ADK_TARGET_WITH_MINIPCI || ADK_TARGET_WITH_SDIO
 
 config ADK_KPACKAGE_KMOD_BT
-	prompt "kmod-bt.................... Bluetooth drivers and network stack"
+	prompt "Bluetooth network stack"
 	tristate
 	default n
 	help
@@ -23,10 +23,10 @@ config ADK_KPACKAGE_KMOD_BT
 	     HIDP Module (Human Interface Device Protocol)
 
 config ADK_KERNEL_BT_L2CAP
-	prompt "........................... L2CAP protocol support"
+	prompt "L2CAP protocol support"
 	boolean
+	select ADK_KPACKAGE_KMOD_BT
 	default n
-	depends on ADK_KPACKAGE_KMOD_BT
 	help
 	  L2CAP (Logical Link Control and Adaptation Protocol) provides
 	  connection oriented and connection-less data transport.  L2CAP
@@ -34,65 +34,77 @@ config ADK_KERNEL_BT_L2CAP
 
 
 config ADK_KERNEL_BT_SCO
-	prompt "........................... SCO links support"
+	prompt "SCO link support"
 	boolean
+	select ADK_KPACKAGE_KMOD_BT
 	default n
-	depends on ADK_KPACKAGE_KMOD_BT
 	help
 	  SCO link provides voice transport over Bluetooth.  SCO support is
 	  required for voice applications like Headset and Audio.
 
 config ADK_KPACKAGE_KMOD_BT_RFCOMM
-	prompt "kmod-bt-rfcomm............. RFCOMM protocol support"
+	prompt "RFCOMM protocol support"
 	tristate
-	default n
-	depends on ADK_KPACKAGE_KMOD_BT
+	select ADK_KPACKAGE_KMOD_BT
 	depends on ADK_KPACKAGE_KMOD_BT_L2CAP
+	default n
 	help
 	  RFCOMM provides connection oriented stream transport.  RFCOMM
 	  support is required for Dialup Networking, OBEX and other Bluetooth
 	  applications.
 
 config ADK_KPACKAGE_KMOD_BT_BNEP
-	prompt "kmod-bt-bnep............... BNEP protocol support"
+	prompt "BNEP protocol support"
 	tristate
-	default n
-	depends on ADK_KPACKAGE_KMOD_BT
+	select ADK_KPACKAGE_KMOD_BT
 	depends on ADK_KPACKAGE_KMOD_BT_L2CAP
+	default n
 	help
 	  BNEP (Bluetooth Network Encapsulation Protocol) is Ethernet
 	  emulation layer on top of Bluetooth.  BNEP is required for
 	  Bluetooth PAN (Personal Area Network).
 
 config ADK_KPACKAGE_KMOD_BT_HIDP
-	prompt "kmod-bt-hidp............... HIDP protocol support"
+	prompt "HIDP protocol support"
 	tristate
-	default n
 	select ADK_KERNEL_INPUT
 	select ADK_KERNEL_HID
-	depends on ADK_KPACKAGE_KMOD_BT
+	select ADK_KPACKAGE_KMOD_BT
 	depends on ADK_KPACKAGE_KMOD_BT_L2CAP
+	default n
 	help
 	  HIDP (Human Interface Device Protocol) is a transport layer
 	  for HID reports.  HIDP is required for the Bluetooth Human
 	  Interface Device Profile.
 
-config ADK_KPACKAGE_KMOD_BT_HCIBTUSB
-	prompt "kmod-bt-hcibtusb.......... HCI USB driver"
+config ADK_KPACKAGE_KMOD_BT_HCIBTSDIO
+	prompt "HCI SDIO driver"
 	tristate
+	select ADK_KPACKAGE_KMOD_BT
+	depends on ADK_TARGET_WITH_SDIO
+	default y if ADK_TARGET_SYSTEM_CUBOX_I
 	default n
-	depends on ADK_KPACKAGE_KMOD_BT
+	help
+	  Bluetooth HCI SDIO driver.
+	  This driver is required if you want to use Bluetooth devices with
+	  SDIO interface.
+
+config ADK_KPACKAGE_KMOD_BT_HCIBTUSB
+	prompt "HCI USB driver"
+	tristate
+	select ADK_KPACKAGE_KMOD_BT
 	depends on ADK_TARGET_WITH_USB
+	default n
 	help
 	  Bluetooth HCI USB driver.
 	  This driver is required if you want to use Bluetooth devices with
 	  USB interface.
 
 config ADK_KPACKAGE_KMOD_BT_HCIUART
-	prompt "kmod-bt-hciuart........... HCI UART driver"
+	prompt "HCI UART driver"
 	tristate
+	select ADK_KPACKAGE_KMOD_BT
 	default n
-	depends on ADK_KPACKAGE_KMOD_BT
 	help
 	  Bluetooth HCI UART driver.
 	  This driver is required if you want to use Bluetooth devices with
@@ -100,24 +112,45 @@ config ADK_KPACKAGE_KMOD_BT_HCIUART
 	  UART based Bluetooth PCMCIA and CF devices like Xircom Credit Card 
 	  adapter and BrainBoxes Bluetooth PC Card.
 
-config ADK_KPACKAGE_KMOD_BT_HCIBCM203X
-	prompt "kmod-bt-hcibcm203x........ HCI BCM203x USB driver"
+config ADK_KPACKAGE_KMOD_BT_MRVL
+	prompt "Marvell driver"
+	tristate
+	select ADK_KPACKAGE_KMOD_BT
+	default y if ADK_TARGET_SYSTEM_CUBOX_I
+	default n
+	help
+	  Bluetooth Marvell driver.
+
+config ADK_KPACKAGE_KMOD_BT_MRVL_SDIO
+	prompt "Marvell SDIO driver"
 	tristate
+	depends on ADK_KPACKAGE_KMOD_BT_MRVL
+	depends on ADK_KPACKAGE_KMOD_BT_HCIBTSDIO
+	depends on ADK_TARGET_WITH_SDIO
+	default y if ADK_TARGET_SYSTEM_CUBOX_I
 	default n
+	help
+	  Bluetooth Marvell driver.
+
+config ADK_KPACKAGE_KMOD_BT_HCIBCM203X
+	prompt "HCI BCM203x USB driver"
+	tristate
 	select ADK_KPACKAGE_KMOD_FW_LOADER
 	select ADK_KPACKAGE_KMOD_BT_HCIBTUSB
-	depends on ADK_KPACKAGE_KMOD_BT
+	select ADK_KPACKAGE_KMOD_BT
 	depends on ADK_TARGET_WITH_USB
+	default n
 	help
 	  Bluetooth HCI BCM203x USB driver.
 	  This driver provides the firmware loading mechanism for the Broadcom
 	  Blutonium based devices.
 
 config ADK_KPACKAGE_KMOD_BT_HCIBPA10X
-	prompt "kmod-bt-hci-bpa10x......... HCI BPA10x USB driver"
+	prompt "HCI BPA10x USB driver"
 	tristate
+	select ADK_KPACKAGE_KMOD_BT
+	select ADK_KPACKAGE_KMOD_BT_HCIBTUSB
 	default n
-	depends on ADK_KPACKAGE_KMOD_BT
 	help
 	  Bluetooth HCI BPA10x USB driver.
 	  This driver provides support for the Digianswer BPA 100/105 Bluetooth

+ 28 - 4
target/linux/config/Config.in.wireless

@@ -39,6 +39,9 @@ config ADK_KERNEL_ATH_CARDS
 config ADK_KERNEL_RTL_CARDS
 	boolean
 
+config ADK_KERNEL_BCMA_POSSIBLE
+	boolean
+
 config ADK_KERNEL_RT2X00
 	boolean
 	select ADK_KPACKAGE_KMOD_RT2X00
@@ -57,9 +60,6 @@ config ADK_KERNEL_RT2800USB_RT55XX
 config ADK_KERNEL_RT2800USB_UNKNOWN
 	boolean
 
-config ADK_KERNEL_MOD_CFG80211
-	tristate
-
 config ADK_KERNEL_MOD_LIB80211
 	select ADK_KPACKAGE_KMOD_CRYPTO_MICHAEL_MIC
 	tristate
@@ -83,12 +83,18 @@ config ADK_KERNEL_MAC80211_VERBOSE_DEBUG
 config ADK_KERNEL_MAC80211_DEBUGFS
 	boolean
 
+config ADK_KPACKAGE_KMOD_CFG80211
+	tristate
+	select ADK_KERNEL_WIRELESS
+	select ADK_KERNEL_WLAN_80211
+	select ADK_KPACKAGE_KMOD_RFKILL
+
 config ADK_KPACKAGE_KMOD_MAC80211
 	tristate
 	select ADK_KERNEL_WIRELESS
 	select ADK_KERNEL_WLAN_80211
-	select ADK_KERNEL_MOD_CFG80211
 	select ADK_KERNEL_MOD_LIB80211
+	select ADK_KPACKAGE_KMOD_CFG80211
 	select ADK_KPACKAGE_KMOD_CRYPTO_AES
 	select ADK_KPACKAGE_KMOD_CRYPTO_ECB
 	select ADK_KPACKAGE_KMOD_CRYPTO_ARC4
@@ -103,6 +109,24 @@ config ADK_DEBUG_MAC80211
 menu "Wireless network card support"
 depends on ADK_TARGET_WITH_CARDBUS || ADK_TARGET_WITH_PCMCIA || ADK_TARGET_WITH_MINIPCI || ADK_TARGET_WITH_PCI || ADK_TARGET_WITH_USB || ADK_TARGET_WITH_SSB || ADK_TARGET_WITH_AHB || ADK_TARGET_WITH_SDIO
 
+config ADK_KERNEL_BRCMFMAC_SDIO
+	boolean
+
+config ADK_KPACKAGE_KMOD_BRCMFMAC
+	prompt "Broadcom brcmfmac wireless driver"
+	tristate
+	select ADK_KERNEL_WIRELESS
+	select ADK_KERNEL_WLAN_80211
+	select ADK_KPACKAGE_KMOD_CFG80211
+	select ADK_PACKAGE_BRCMFMAC_FIRMWARE
+	select ADK_KERNEL_BCMA_POSSIBLE
+	select ADK_KERNEL_BRCMFMAC_SDIO
+	depends on ADK_TARGET_WITH_SDIO
+	default y if ADK_TARGET_SYSTEM_CUBOX_I
+	default n
+	help
+	  Driver for Broadcom wireless.
+
 config ADK_KERNEL_ATH6KL_SDIO
 	boolean