RK3568-B2-ANDROID11-WIFI-RTL8821CU

 原理图

上图为USB-WiFi

\rk3568\kernel\arch\arm64\boot\dts\rockchip\rk3568-evb.dtsi

wireless_wlan: wireless-wlan {
		compatible = "wlan-platdata";
		rockchip,grf = <&grf>;
		wifi_chip_type = "";   //rtl8821cu
		WIFI,vbat_gpio = <&gpio0 RK_PC1 GPIO_ACTIVE_LOW>; //电源引脚
		status = "okay";
	};

第一步,配置WIFI,vbat_gpio = <&gpio0 RK_PC1 GPIO_ACTIVE_LOW>;

可以看到WIFI模块有供电了

第二步,串口输入lsusb

第三步 路径:kernel\arch\arm64\boot\dts\rockchip\rk3568-evb1-ddr4-v10.dtsi

删除sdio-pwrseq,sdmmc1/2和wireless_bluetooth

第四步 移植驱动

1.修改成 “rtl8821cu” 放在路径:\rk3568\kernel\drivers\net\wireless\rockchip_wlan

 2.路径:.kernel\drivers\net\wireless\rockchip_wlan\Makefile

obj-$(CONFIG_RTL8821CS) += rtl8821cs/
+obj-$(CONFIG_RTL8821CU) += rtl8821cu/
obj-$(CONFIG_RTL8822BS) += rtl8822bs/

3.路径:.kernel\drivers\net\wireless\rockchip_wlan\Kconfig

source "drivers/net/wireless/rockchip_wlan/rtl8821cs/Kconfig"
+source "drivers/net/wireless/rockchip_wlan/rtl8821cu/Kconfig"
source "drivers/net/wireless/rockchip_wlan/rtl8822bs/Kconfig"

4.路径:.kernel\arch\arm64\configs\rockchip_defconfig

CONFIG_RTC_DRV_HYM8563=y
+CONFIG_BT_RTKBTUSB=y
+CONFIG_RTL8821CU=m

 5.路径:\kernel\drivers\net\wireless\rockchip_wlan\rtl8821cu\Makefile

 

 

 

 

 

########################## Android ###########################
# CONFIG_RTW_ANDROID - 0: no Android, 4/5/6/7/8/9/10/11 : Android version
CONFIG_RTW_ANDROID = 11

ifeq ($(shell test $(CONFIG_RTW_ANDROID) -gt 0; echo $$?), 0)
EXTRA_CFLAGS += -DCONFIG_RTW_ANDROID=$(CONFIG_RTW_ANDROID)
endif

########################## Debug ###########################
CONFIG_RTW_DEBUG = y
# default log level is _DRV_INFO_ = 4,
# please refer to "How_to_set_driver_debug_log_level.doc" to set the available level.
CONFIG_RTW_LOG_LEVEL = 2

# enable /proc/net/rtlxxxx/ debug interfaces
CONFIG_PROC_DEBUG = y

######################## Wake On Lan ##########################
CONFIG_WOWLAN = y
#bit3: ARP enable, bit2: deauth, bit1: unicast, bit0: magic pkt.
CONFIG_WAKEUP_TYPE = 0xf
CONFIG_WOW_LPS_MODE = default
#bit0: disBBRF off, #bit1: Wireless remote controller (WRC)
CONFIG_SUSPEND_TYPE = 0
CONFIG_WOW_STA_MIX = n
CONFIG_GPIO_WAKEUP = y

##### Platform Related #######################
CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ANDROID_X86 = n
CONFIG_PLATFORM_ANDROID_INTEL_X86 = n
CONFIG_PLATFORM_JB_X86 = n
CONFIG_PLATFORM_ARM_S3C2K4 = n
CONFIG_PLATFORM_ARM_PXA2XX = n
CONFIG_PLATFORM_ARM_S3C6K4 = n
CONFIG_PLATFORM_MIPS_RMI = n
CONFIG_PLATFORM_RTD2880B = n
CONFIG_PLATFORM_MIPS_AR9132 = n
CONFIG_PLATFORM_RTK_DMP = n
CONFIG_PLATFORM_MIPS_PLM = n
CONFIG_PLATFORM_MSTAR389 = n
CONFIG_PLATFORM_MT53XX = n
CONFIG_PLATFORM_ARM_MX51_241H = n
CONFIG_PLATFORM_FS_MX61 = n
CONFIG_PLATFORM_ACTIONS_ATJ227X = n
CONFIG_PLATFORM_TEGRA3_CARDHU = n
CONFIG_PLATFORM_TEGRA4_DALMORE = n
CONFIG_PLATFORM_ARM_TCC8900 = n
CONFIG_PLATFORM_ARM_TCC8920 = n
CONFIG_PLATFORM_ARM_TCC8920_JB42 = n
CONFIG_PLATFORM_ARM_TCC8930_JB42 = n
CONFIG_PLATFORM_ARM_RK2818 = n
CONFIG_PLATFORM_ARM_RK3066 = n
CONFIG_PLATFORM_ARM_RK3188 = y
CONFIG_PLATFORM_ARM_URBETTER = n

#EFUSE_MAP_PATH
USER_EFUSE_MAP_PATH ?=
ifneq ($(USER_EFUSE_MAP_PATH),)
EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"$(USER_EFUSE_MAP_PATH)\"
else ifeq ($(MODULE_NAME), 8189es)
EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_8189e.map\"
else ifeq ($(MODULE_NAME), 8723bs)
EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/system/etc/wifi/wifi_efuse_8723bs.map\"
else
EXTRA_CFLAGS += -DEFUSE_MAP_PATH=\"/vendor/etc/firmware/wifi_efuse_$(MODULE_NAME).map\"
endif

ifeq ($(CONFIG_PLATFORM_ARM_RK3188), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
# default setting for Android 4.1, 4.2, 4.3, 4.4
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
EXTRA_CFLAGS += -DCONFIG_RESUME_IN_WORKQUEUE
# default setting for Power control
#EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
ifeq ($(CONFIG_SDIO_HCI), y)
EXTRA_CFLAGS += -DRTW_SUPPORT_PLATFORM_SHUTDOWN
endif
# default setting for Special function
ARCH := arm
CROSS_COMPILE := /home/android_sdk/Rockchip/Rk3188/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
KSRC := /home/android_sdk/Rockchip/Rk3188/kernel
MODULE_NAME := 8821cu
endif

第五步:添加设备ID

路径:frameworks\opt\net\wifi\libwifi_hal\rk_wifi_ctrl.cpp

static wifi_device supported_wifi_devices[] = {
	{"RTL8812AU",	"0bda:8812"},
	{"RTL8821CS",	"024c:c821"},
+	{"RTL8821CU",	"0bda:c820"},
    {"RTL8822CU",   "0bda:c82c"},
    ......
}

第六步:添加模块加载的宏定义

路径:.frameworks\opt\net\wifi\libwifi_hal\wifi_hal_common.cpp

#define RTL8821CS_DRIVER_MODULE_PATH     WIFI_MODULE_PATH"8821cs.ko"
+#define RTL8821CU_DRIVER_MODULE_PATH     WIFI_MODULE_PATH"8821cu.ko"
#define RTL8822CU_DRIVER_MODULE_PATH     WIFI_MODULE_PATH"8822cu.ko"

#define RTL8821CS_DRIVER_MODULE_NAME	 "8821cs"
+#define RTL8821CU_DRIVER_MODULE_NAME	 "8821cu"
#define RTL8822CU_DRIVER_MODULE_NAME     "8822cu"

wifi_ko_file_name module_list[] =
	{"RTL8821CS", RTL8821CS_DRIVER_MODULE_NAME, RTL8821CS_DRIVER_MODULE_PATH, UNKKOWN_DRIVER_MODULE_ARG},
+	{"RTL8821CU", RTL8821CU_DRIVER_MODULE_NAME, RTL8821CU_DRIVER_MODULE_PATH, UNKKOWN_DRIVER_MODULE_ARG},
	{"RTL8822CU", RTL8822CU_DRIVER_MODULE_NAME, RTL8822CU_DRIVER_MODULE_PATH, UNKKOWN_DRIVER_MODULE_ARG},

第七步:修改加载设备节点

路径:hardware\realtek\rtkbt\vendor\etc\bluetooth\rtkbt.conf

#Indicate USB or UART driver bluetooth
+BtDeviceNode=/dev/rtkbt_dev
+#BtDeviceNode=?/dev/ttyS1:H5

第八步:本机蓝牙设备名称:(默认为rk3566,更改为rk3568:)

路径:device\rockchip\rk356x\bluetooth\bdroid_buildcfg.h

+ //#define BTM_DEF_LOCAL_NAME	"rk3566"
+ #define BTM_DEF_LOCAL_NAME	"rk3568"

  • 6
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: rtl8822cu-cg是一种无线网卡芯片,由Realtek研发和生产。它是一款支持双频(2.4GHz和5GHz)的高性能无线网卡芯片。该芯片采用了先进的802.11ac无线技术,提供了更快的速度和更稳定的连接。 rtl8822cu-cg具有较高的传输速度和更广泛的覆盖范围,可以在较长的距离内保持良好的信号强度和通信质量。它还支持MU-MIMO和Beamforming技术,可以提供更稳定、更快的无线传输速度和更好的信号覆盖。 此外,rtl8822cu-cg还支持WPA3网络安全协议,能够加密和保护无线网络数据的安全性,防止黑客和未授权用户的入侵。 该芯片还具有较低的功耗,能够节省电池电量,延长设备的使用时间。它还采用了小型化的封装,适合被集成在各种无线设备中,如笔记本电脑、台式机、智能手机、平板电脑等。 总的来说,rtl8822cu-cg是一款功能强大、性能优越的无线网卡芯片,适用于各种无线设备,并提供了更快的速度、更稳定的连接和更好的安全性。 ### 回答2: rtl8822cu-cg是一款双频无线网络芯片,由Realtek公司开发。它支持802.11ac和802.11n标准,可提供高速的无线网络连接。该芯片采用USB接口,并且兼容USB 2.0和USB 3.0接口。它的工作频率范围广,支持2.4GHz和5GHz频段。rtl8822cu-cg内置有支持MU-MIMO技术的多天线系统,可以提供更稳定和高速的无线传输速度。它还具有强大的安全性能,支持WPA2-PSK和WPA3-PSK等加密协议,保护用户的隐私和数据安全。此外,rtl8822cu-cg还具有低功耗特性,可以延长设备的电池寿命。它广泛应用于各种无线设备,如笔记本电脑、台式机、智能手机、平板电脑和智能家居设备等,为用户提供稳定、高速的无线网络连接。总的来说,rtl8822cu-cg是一款功能强大、性能稳定的无线网络芯片,使得用户能够方便、快速地使用无线网络,并享受到更好的网络体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旋风旋风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值