From 4c27e1d4aa721a1f8cfda854293299b63d555418 Mon Sep 17 00:00:00 2001 From: gwl Date: Thu, 25 Apr 2013 10:21:51 +0800 Subject: [PATCH] add rtl8723a usb wifi support --- arch/arm/mach-rk30/board-rk30-sdk-sdmmc.c | 9 +++++---- arch/arm/mach-rk3188/board-rk3188-ds1006h-sdmmc-config.c | 2 +- arch/arm/plat-rk/rk-sdmmc-wifi.c | 3 ++- drivers/net/wireless/Kconfig | 1 + drivers/net/wireless/Makefile | 1 + drivers/net/wireless/rkusbwifi/Makefile | 1 + drivers/net/wireless/rkusbwifi/rtl8723au/Kconfig | 9 +++++++++ drivers/net/wireless/wifi_sys/rkwifi_sys_iface.c | 5 +++++ 8 files changed, 25 insertions(+), 6 deletions(-) create mode 100755 drivers/net/wireless/rkusbwifi/rtl8723au/Kconfig diff --git a/arch/arm/mach-rk30/board-rk30-sdk-sdmmc.c b/arch/arm/mach-rk30/board-rk30-sdk-sdmmc.c index 1d1b3146ffcc..7a68fc61e579 100755 --- a/arch/arm/mach-rk30/board-rk30-sdk-sdmmc.c +++ b/arch/arm/mach-rk30/board-rk30-sdk-sdmmc.c @@ -132,7 +132,7 @@ #if defined(CONFIG_ARCH_RK3066B) || defined(CONFIG_ARCH_RK3188)//refer to file /arch/arm/mach-rk30/include/mach/iomux-rk3066b.h #define WIFI_HOST_WAKE RK30_PIN3_PD2 - #if defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) + #if defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) || defined(CONFIG_RTL8723AU) #define RK30SDK_WIFI_GPIO_POWER_N RK30_PIN3_PD0 #define RK30SDK_WIFI_GPIO_POWER_ENABLE_VALUE GPIO_LOW//GPIO_HIGH #define RK30SDK_WIFI_GPIO_POWER_PIN_NAME "wifi_power" @@ -202,7 +202,7 @@ //#define RK30SDK_WIFI_GPIO_RESET_IOMUX_FGPIO GPIO3C_GPIO3C2 - #elif defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) + #elif defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) || defined(CONFIG_RTL8723AU) #define RK30SDK_WIFI_GPIO_POWER_N RK2928_PIN0_PD6 #define RK30SDK_WIFI_GPIO_POWER_ENABLE_VALUE GPIO_LOW #define RK30SDK_WIFI_GPIO_POWER_PIN_NAME GPIO0D6_MMC1_PWREN_NAME @@ -214,7 +214,7 @@ // refer to file /arch/arm/mach-rk30/include/mach/Iomux.h #define WIFI_HOST_WAKE RK30_PIN3_PD2 - #if defined(CONFIG_RKWIFI) || defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) + #if defined(CONFIG_RKWIFI) || defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) || defined(CONFIG_RTL8723AU) //power #define RK30SDK_WIFI_GPIO_POWER_N RK30_PIN3_PD0 #define RK30SDK_WIFI_GPIO_POWER_ENABLE_VALUE GPIO_HIGH @@ -1699,7 +1699,8 @@ static int __init rk29sdk_wifi_bt_gpio_control_init(void) return 0; } -#if (defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) )&& defined(CONFIG_ARCH_RK2928) +#if (defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) || defined(CONFIG_RTL8723AU)) \ + && defined(CONFIG_ARCH_RK2928) static int usbwifi_power_status = 1; int rk29sdk_wifi_power(int on) { diff --git a/arch/arm/mach-rk3188/board-rk3188-ds1006h-sdmmc-config.c b/arch/arm/mach-rk3188/board-rk3188-ds1006h-sdmmc-config.c index 8d4508b2bdbb..ddb94090de73 100644 --- a/arch/arm/mach-rk3188/board-rk3188-ds1006h-sdmmc-config.c +++ b/arch/arm/mach-rk3188/board-rk3188-ds1006h-sdmmc-config.c @@ -70,7 +70,7 @@ int rk31sdk_get_sdmmc0_pin_io_voltage(void) * Otherwise, you do not define this macro, eliminate it. * */ -#if defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) +#if defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) || defined(CONFIG_RTL8723AU) #define RK30SDK_WIFI_GPIO_POWER_N RK30_PIN3_PD0 #define RK30SDK_WIFI_GPIO_POWER_ENABLE_VALUE GPIO_LOW//GPIO_HIGH diff --git a/arch/arm/plat-rk/rk-sdmmc-wifi.c b/arch/arm/plat-rk/rk-sdmmc-wifi.c index 67eaa20001fc..78eab446092c 100644 --- a/arch/arm/plat-rk/rk-sdmmc-wifi.c +++ b/arch/arm/plat-rk/rk-sdmmc-wifi.c @@ -395,7 +395,8 @@ static int __init rk29sdk_wifi_bt_gpio_control_init(void) return 0; } -#if (defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) )&& defined(CONFIG_ARCH_RK2928) +#if (defined(CONFIG_RTL8192CU) || defined(CONFIG_RTL8188EU) || defined(CONFIG_RTL8723AU)) \ + && defined(CONFIG_ARCH_RK2928) static int usbwifi_power_status = 1; int rk29sdk_wifi_power(int on) { diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig index f8cb0c31fb59..703c3b7bd3d6 100755 --- a/drivers/net/wireless/Kconfig +++ b/drivers/net/wireless/Kconfig @@ -90,6 +90,7 @@ choice source "drivers/net/wireless/mt5931/Kconfig" source "drivers/net/wireless/rkusbwifi/rtl8192cu/Kconfig" source "drivers/net/wireless/rkusbwifi/rtl8188eu/Kconfig" +source "drivers/net/wireless/rkusbwifi/rtl8723au/Kconfig" source "drivers/net/wireless/rkusbwifi/rt5370/Kconfig" source "drivers/net/wireless/ar6003/Kconfig" source "drivers/net/wireless/rkwifi/Kconfig" diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile index c428ce7ed39e..9c826e954592 100755 --- a/drivers/net/wireless/Makefile +++ b/drivers/net/wireless/Makefile @@ -7,6 +7,7 @@ obj-$(CONFIG_MV8686) += mv8686/ obj-$(CONFIG_BCM4319) += bcm4319/ obj-$(CONFIG_RTL8192CU) += rkusbwifi/ obj-$(CONFIG_RTL8188EU) += rkusbwifi/ +obj-$(CONFIG_RTL8723AU) += rkusbwifi/ obj-$(CONFIG_RT5370) += rkusbwifi/ obj-$(CONFIG_AR6003) += ar6003/ obj-$(CONFIG_RKWIFI) += rkwifi/ diff --git a/drivers/net/wireless/rkusbwifi/Makefile b/drivers/net/wireless/rkusbwifi/Makefile index 4f2dd5163ddb..c00980b17bf6 100755 --- a/drivers/net/wireless/rkusbwifi/Makefile +++ b/drivers/net/wireless/rkusbwifi/Makefile @@ -7,6 +7,7 @@ rkcfg-y += $(rk_cfg) obj-$(CONFIG_RTL8188EU) += rkcfg.o obj-$(CONFIG_RTL8192CU) += rkcfg.o +obj-$(CONFIG_RTL8723AU) += rkcfg.o obj-$(CONFIG_RT5370) += rkcfg.o .PHONY: clean diff --git a/drivers/net/wireless/rkusbwifi/rtl8723au/Kconfig b/drivers/net/wireless/rkusbwifi/rtl8723au/Kconfig new file mode 100755 index 000000000000..969e76e0d5c5 --- /dev/null +++ b/drivers/net/wireless/rkusbwifi/rtl8723au/Kconfig @@ -0,0 +1,9 @@ +config RTL8723AU + tristate "Realtek 8723AU USB WiFi Support" + depends on USB + select WIRELESS_EXT + select WEXT_PRIV + select IEEE80211 + ---help--- + Help message of RTL8723AU + diff --git a/drivers/net/wireless/wifi_sys/rkwifi_sys_iface.c b/drivers/net/wireless/wifi_sys/rkwifi_sys_iface.c index 33642a807671..52df660620d2 100755 --- a/drivers/net/wireless/wifi_sys/rkwifi_sys_iface.c +++ b/drivers/net/wireless/wifi_sys/rkwifi_sys_iface.c @@ -30,6 +30,11 @@ static ssize_t wifi_chip_read(struct class *cls, char *_buf) printk("Current WiFi chip is RTL8188EU.\n"); #endif +#ifdef CONFIG_RTL8723AU + count = sprintf(_buf, "%s", "RTL8723AU"); + printk("Current WiFi chip is RTL8723AU.\n"); +#endif + #ifdef CONFIG_BCM4330 count = sprintf(_buf, "%s", "BCM4330"); printk("Current WiFi chip is BCM4330.\n"); -- 2.34.1