├── include ├── rtw_version.h ├── rtw_mlme.h ├── Hal8821APwrSeq.h ├── gspi_ops_linux.h ├── gspi_osintf.h ├── sdio_osintf.h ├── rtw_ioctl_query.h ├── drv_types_linux.h ├── rtl8710b_rf.h ├── rtl8723d_rf.h ├── rtl8821cs_hal.h ├── rtl8821ce_hal.h ├── circ_buf.h ├── h2clbk.h ├── rtl8188f_rf.h ├── rtl8703b_rf.h ├── rtl8723b_rf.h ├── rtl8821c_dm.h ├── rtl8814a_dm.h ├── rtl8821cu_hal.h ├── rtl8812a_rf.h ├── rtl8192e_rf.h ├── rtl8814a_rf.h ├── rtl8188e_sreset.h ├── rtl8188f_sreset.h ├── rtl8192e_sreset.h ├── rtl8703b_sreset.h ├── rtl8710b_sreset.h ├── rtl8723b_sreset.h ├── rtl8723d_sreset.h ├── rtl8812a_sreset.h ├── rtl8814a_sreset.h ├── usb_osintf.h ├── rtl8188e_rf.h ├── rtl8192f_sreset.h ├── gspi_hal.h ├── rtl8822be_hal.h ├── rtl8822ce_hal.h ├── rtl8812a_dm.h ├── rtl8188e_dm.h ├── rtl8192f_dm.h ├── rtl8192e_dm.h ├── mlme_osdep.h ├── rtw_btcoex_wifionly.h ├── rtw_wifi_regd.h ├── cmd_osdep.h ├── custom_gpio.h ├── rtl8814be_hal.h ├── rtl8822bs_hal.h ├── rtl8822cs_hal.h ├── rtw_sdio.h ├── hal_gspi.h ├── rtw_mem.h ├── nic_spec.h ├── rtl8192e_led.h ├── hal_sdio_coex.h ├── rtl8188e_led.h ├── rtl8723b_dm.h ├── drv_types_gspi.h ├── rtl8188f_dm.h ├── rtl8703b_dm.h ├── rtl8710b_dm.h ├── rtl8723d_dm.h ├── rtl8814a_led.h ├── rtl8192f_led.h ├── drv_types_pci.h ├── rtl8812a_led.h ├── ethernet.h ├── rtl8188f_led.h ├── rtl8723b_led.h ├── rtw_ioctl.h ├── rtl8710b_led.h ├── rtl8723d_led.h ├── sdio_hal.h ├── rtl8703b_led.h ├── pci_hal.h ├── rtw_rm_util.h ├── rtw_ioctl_set.h ├── sdio_ops_xp.h ├── sdio_ops_ce.h ├── rtl8814bu_hal.h ├── rtl8822bu_hal.h ├── rtl8822cu_hal.h ├── rtw_sreset.h ├── usb_vendor_req.h ├── usb_hal.h ├── rtw_br_ext.h ├── rtw_qos.h ├── pci_osintf.h └── rtl8188f_recv.h ├── ifcfg-wlan0 ├── clean ├── Kconfig ├── wlan0dhcp ├── runwpa ├── core ├── rtw_ioctl_query.c ├── rtw_btcoex_wifionly.c └── mesh │ └── rtw_mesh_hwmp.h ├── hal ├── phydm │ ├── rtl8188e │ │ ├── phydm_rtl8188e.h │ │ ├── halhwimg8188e_mac.h │ │ ├── version_rtl8188e.h │ │ ├── phydm_regconfig8188e.h │ │ ├── phydm_rtl8188e.c │ │ ├── halhwimg8188e_bb.h │ │ └── hal8188ereg.h │ ├── mp_precomp.h │ ├── halrf │ │ ├── halrf_txgapcal.h │ │ ├── halrf_psd.h │ │ ├── halrf_features.h │ │ ├── halrf_powertracking.h │ │ └── rtl8188e │ │ │ ├── halrf_8188e_ce.h │ │ │ └── halrf_8188e_ap.h │ ├── phydm_noisemonitor.h │ ├── phydm_direct_bf.h │ ├── phydm_rssi_monitor.h │ ├── txbf │ │ ├── haltxbf8192e.h │ │ ├── haltxbfjaguar.h │ │ └── haltxbf8822b.h │ ├── phydm_psd.h │ ├── phydm_cck_rx_pathdiv.h │ ├── phydm_antdect.h │ └── phydm_features_ce2_kernel.h ├── efuse │ └── rtl8188e │ │ ├── HalEfuseMask8188E_USB.h │ │ ├── HalEfuseMask8188E_PCIE.h │ │ ├── HalEfuseMask8188E_SDIO.h │ │ ├── HalEfuseMask8188E_USB.c │ │ ├── HalEfuseMask8188E_PCIE.c │ │ └── HalEfuseMask8188E_SDIO.c ├── hal_hci │ └── hal_sdio_coex.c └── rtl8188e │ ├── hal8188e_s_fw.h │ └── hal8188e_t_fw.h ├── platform ├── platform_ops.h ├── platform_ops.c ├── platform_RTK_DMP_usb.c ├── platform_zte_zx296716_sdio.h ├── custom_country_chplan.h ├── platform_aml_s905_sdio.h ├── platform_hisilicon_hi3798_sdio.h ├── platform_arm_act_sdio.c ├── platform_zte_zx296716_sdio.c ├── platform_aml_s905_sdio.c ├── platform_ARM_WMT_sdio.c ├── platform_sprd_sdio.c └── platform_ARM_SUN50IW1P1_sdio.c ├── .github └── workflows │ └── build.yml └── os_dep └── linux ├── rtw_rhashtable.c └── rtw_proc.h /include/rtw_version.h: -------------------------------------------------------------------------------- 1 | #define DRIVERVERSION "v5.8.9_35085.20190919" 2 | -------------------------------------------------------------------------------- /ifcfg-wlan0: -------------------------------------------------------------------------------- 1 | #DHCP client 2 | DEVICE=wlan0 3 | BOOTPROTO=dhcp 4 | ONBOOT=yes -------------------------------------------------------------------------------- /clean: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | rmmod 8192cu 3 | rmmod 8192ce 4 | rmmod 8192du 5 | rmmod 8192de 6 | -------------------------------------------------------------------------------- /include/rtw_mlme.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwrdegoede/rtl8189ES_linux/HEAD/include/rtw_mlme.h -------------------------------------------------------------------------------- /include/Hal8821APwrSeq.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jwrdegoede/rtl8189ES_linux/HEAD/include/Hal8821APwrSeq.h -------------------------------------------------------------------------------- /Kconfig: -------------------------------------------------------------------------------- 1 | config RTL8189ES 2 | tristate "Realtek 8189E SDIO WiFi" 3 | depends on USB 4 | ---help--- 5 | Help message of RTL8189ES 6 | -------------------------------------------------------------------------------- /wlan0dhcp: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | var0=`ps aux|awk '/dhclient wlan0/'|awk '$11!="awk"{print $2}'` 4 | 5 | kill $var0 6 | cp ifcfg-wlan0 /etc/sysconfig/network-scripts/ 7 | 8 | dhclient wlan0 9 | 10 | var1=`ifconfig wlan0 |awk '/inet/{print $2}'|awk -F: '{print $2}'` 11 | 12 | 13 | rm -f /etc/sysconfig/network-scripts/ifcfg-wlan0 14 | 15 | echo "get ip: $var1" 16 | 17 | -------------------------------------------------------------------------------- /runwpa: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [ "`which iwconfig`" = "" ] ; then 4 | echo "WARNING:Wireless tool not exist!" 5 | echo " Please install it!" 6 | exit 7 | else 8 | if [ `uname -r | cut -d. -f2` -eq 4 ]; then 9 | wpa_supplicant -D ipw -c wpa1.conf -i wlan0 10 | else 11 | if [ `iwconfig -v |awk '{print $4}' | head -n 1` -lt 18 ] ; then 12 | wpa_supplicant -D ipw -c wpa1.conf -i wlan0 13 | else 14 | wpa_supplicant -D wext -c wpa1.conf -i wlan0 15 | fi 16 | 17 | fi 18 | fi 19 | 20 | 21 | -------------------------------------------------------------------------------- /core/rtw_ioctl_query.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #define _RTW_IOCTL_QUERY_C_ 16 | 17 | #include 18 | 19 | 20 | -------------------------------------------------------------------------------- /include/gspi_ops_linux.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __SDIO_OPS_LINUX_H__ 16 | #define __SDIO_OPS_LINUX_H__ 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /include/gspi_osintf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __SDIO_OSINTF_H__ 16 | #define __SDIO_OSINTF_H__ 17 | 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /include/sdio_osintf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __SDIO_OSINTF_H__ 16 | #define __SDIO_OSINTF_H__ 17 | 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /include/rtw_ioctl_query.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTW_IOCTL_QUERY_H_ 16 | #define _RTW_IOCTL_QUERY_H_ 17 | 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /include/drv_types_linux.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __DRV_TYPES_LINUX_H__ 16 | #define __DRV_TYPES_LINUX_H__ 17 | 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /include/rtl8710b_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8710B_RF_H__ 16 | #define __RTL8710B_RF_H__ 17 | 18 | int PHY_RF6052_Config8710B(PADAPTER pdapter); 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /hal/phydm/rtl8188e/phydm_rtl8188e.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __ODM_RTL8188E_H__ 16 | #define __ODM_RTL8188E_H__ 17 | 18 | #if (RTL8188E_SUPPORT == 1) 19 | s8 phydm_cck_rssi_8188e(struct dm_struct *dm, u16 lna_idx, u8 vga_idx); 20 | #endif 21 | #endif -------------------------------------------------------------------------------- /include/rtl8723d_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8723D_RF_H__ 16 | #define __RTL8723D_RF_H__ 17 | 18 | int PHY_RF6052_Config8723D(PADAPTER pdapter); 19 | 20 | void PHY_RF6052SetBandwidth8723D(PADAPTER Adapter, enum channel_width Bandwidth); 21 | #endif 22 | -------------------------------------------------------------------------------- /include/rtl8821cs_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8821CS_HAL_H_ 16 | #define _RTL8821CS_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | /* rtl8821cs_ops.c */ 21 | u8 rtl8821cs_set_hal_ops(PADAPTER); 22 | 23 | #endif /* _RTL8821CS_HAL_H_ */ 24 | -------------------------------------------------------------------------------- /include/rtl8821ce_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8821CE_HAL_H_ 16 | #define _RTL8821CE_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | /* rtl8821ce_ops.c */ 21 | void rtl8821ce_set_hal_ops(PADAPTER); 22 | 23 | #endif /* _RTL8821CE_HAL_H_ */ 24 | -------------------------------------------------------------------------------- /include/circ_buf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __CIRC_BUF_H_ 16 | #define __CIRC_BUF_H_ 1 17 | 18 | #define CIRC_CNT(head,tail,size) (((head) - (tail)) & ((size)-1)) 19 | 20 | #define CIRC_SPACE(head,tail,size) CIRC_CNT((tail),((head)+1),(size)) 21 | 22 | #endif //_CIRC_BUF_H_ 23 | 24 | -------------------------------------------------------------------------------- /include/h2clbk.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | 17 | #define _H2CLBK_H_ 18 | 19 | 20 | void _lbk_cmd(PADAPTER Adapter); 21 | 22 | void _lbk_rsp(PADAPTER Adapter); 23 | 24 | void _lbk_evt(PADAPTER Adapter); 25 | 26 | void h2c_event_callback(unsigned char *dev, unsigned char *pbuf); 27 | -------------------------------------------------------------------------------- /include/rtl8188f_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8188F_RF_H__ 16 | #define __RTL8188F_RF_H__ 17 | 18 | int PHY_RF6052_Config8188F(PADAPTER Adapter); 19 | 20 | void 21 | PHY_RF6052SetBandwidth8188F( 22 | PADAPTER Adapter, 23 | enum channel_width Bandwidth); 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /include/rtl8703b_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8703B_RF_H__ 16 | #define __RTL8703B_RF_H__ 17 | 18 | int PHY_RF6052_Config8703B(PADAPTER Adapter); 19 | 20 | void 21 | PHY_RF6052SetBandwidth8703B( 22 | PADAPTER Adapter, 23 | enum channel_width Bandwidth); 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /include/rtl8723b_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8723B_RF_H__ 16 | #define __RTL8723B_RF_H__ 17 | 18 | int PHY_RF6052_Config8723B(PADAPTER Adapter); 19 | 20 | void 21 | PHY_RF6052SetBandwidth8723B( 22 | PADAPTER Adapter, 23 | enum channel_width Bandwidth); 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /include/rtl8821c_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8812C_DM_H__ 16 | #define __RTL8812C_DM_H__ 17 | 18 | void rtl8821c_phy_init_dm_priv(PADAPTER); 19 | void rtl8821c_phy_deinit_dm_priv(PADAPTER); 20 | void rtl8821c_phy_init_haldm(PADAPTER); 21 | void rtl8821c_phy_haldm_watchdog(PADAPTER); 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /include/rtl8814a_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8814A_DM_H__ 16 | #define __RTL8814A_DM_H__ 17 | 18 | void rtl8814_init_dm_priv(PADAPTER Adapter); 19 | void rtl8814_deinit_dm_priv(PADAPTER Adapter); 20 | void rtl8814_InitHalDm(PADAPTER Adapter); 21 | void rtl8814_HalDmWatchDog(PADAPTER Adapter); 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /include/rtl8821cu_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8821CU_HAL_H_ 16 | #define _RTL8821CU_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | /* rtl8821cu_ops.c */ 21 | u8 rtl8821cu_set_hal_ops(PADAPTER); 22 | void rtl8821cu_set_hw_type(struct dvobj_priv *pdvobj); 23 | 24 | #endif /* _RTL8821CU_HAL_H_ */ 25 | -------------------------------------------------------------------------------- /include/rtl8812a_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8812A_RF_H__ 16 | #define __RTL8812A_RF_H__ 17 | 18 | void 19 | PHY_RF6052SetBandwidth8812( 20 | PADAPTER Adapter, 21 | enum channel_width Bandwidth); 22 | 23 | 24 | int 25 | PHY_RF6052_Config_8812( 26 | PADAPTER Adapter); 27 | 28 | #endif/* __RTL8188E_RF_H__ */ 29 | -------------------------------------------------------------------------------- /platform/platform_ops.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __PLATFORM_OPS_H__ 16 | #define __PLATFORM_OPS_H__ 17 | 18 | /* 19 | * Return: 20 | * 0: power on successfully 21 | * others: power on failed 22 | */ 23 | int platform_wifi_power_on(void); 24 | void platform_wifi_power_off(void); 25 | 26 | #endif /* __PLATFORM_OPS_H__ */ 27 | -------------------------------------------------------------------------------- /include/rtl8192e_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2012 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8192E_RF_H__ 16 | #define __RTL8192E_RF_H__ 17 | 18 | void 19 | PHY_RF6052SetBandwidth8192E( 20 | PADAPTER Adapter, 21 | enum channel_width Bandwidth); 22 | 23 | 24 | int 25 | PHY_RF6052_Config_8192E( 26 | PADAPTER Adapter); 27 | 28 | #endif/* __RTL8192E_RF_H__ */ 29 | -------------------------------------------------------------------------------- /include/rtl8814a_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8814A_RF_H__ 16 | #define __RTL8814A_RF_H__ 17 | 18 | void 19 | PHY_RF6052SetBandwidth8814A( 20 | PADAPTER Adapter, 21 | enum channel_width Bandwidth); 22 | 23 | 24 | int 25 | PHY_RF6052_Config_8814A( 26 | PADAPTER Adapter); 27 | 28 | #endif/* __RTL8188E_RF_H__ */ 29 | -------------------------------------------------------------------------------- /include/rtl8188e_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8188E_SRESET_H_ 16 | #define _RTL8188E_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8188e_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8188e_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8188f_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8188F_SRESET_H_ 16 | #define _RTL8188F_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8188f_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8188f_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8192e_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2012 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL88812A_SRESET_H_ 16 | #define _RTL8812A_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8192e_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8192e_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8703b_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8703B_SRESET_H_ 16 | #define _RTL8703B_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8703b_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8703b_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8710b_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8710B_SRESET_H_ 16 | #define _RTL8710B_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8710b_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8710b_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8723b_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8723B_SRESET_H_ 16 | #define _RTL8723B_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8723b_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8723b_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8723d_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8723D_SRESET_H_ 16 | #define _RTL8723D_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8723d_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8723d_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8812a_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL88812A_SRESET_H_ 16 | #define _RTL8812A_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8812_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8812_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtl8814a_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL88814A_SRESET_H_ 16 | #define _RTL8814A_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8814_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8814_sreset_linked_status_check(_adapter *padapter); 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /platform/platform_ops.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef CONFIG_PLATFORM_OPS 16 | /* 17 | * Return: 18 | * 0: power on successfully 19 | * others: power on failed 20 | */ 21 | int platform_wifi_power_on(void) 22 | { 23 | int ret = 0; 24 | 25 | 26 | return ret; 27 | } 28 | 29 | void platform_wifi_power_off(void) 30 | { 31 | } 32 | #endif /* !CONFIG_PLATFORM_OPS */ 33 | -------------------------------------------------------------------------------- /include/usb_osintf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __USB_OSINTF_H 16 | #define __USB_OSINTF_H 17 | 18 | #include 19 | 20 | #define USBD_HALTED(Status) ((u32)(Status) >> 30 == 3) 21 | 22 | 23 | u8 usbvendorrequest(struct dvobj_priv *pdvobjpriv, RT_USB_BREQUEST brequest, RT_USB_WVALUE wvalue, u8 windex, void *data, u8 datalen, u8 isdirectionin); 24 | 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /hal/phydm/mp_precomp.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | -------------------------------------------------------------------------------- /include/rtl8188e_rf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8188E_RF_H__ 16 | #define __RTL8188E_RF_H__ 17 | 18 | 19 | 20 | int PHY_RF6052_Config8188E(PADAPTER Adapter); 21 | void rtl8188e_RF_ChangeTxPath(PADAPTER Adapter, 22 | u16 DataRate); 23 | void rtl8188e_PHY_RF6052SetBandwidth( 24 | PADAPTER Adapter, 25 | enum channel_width Bandwidth); 26 | 27 | #endif/* __RTL8188E_RF_H__ */ 28 | -------------------------------------------------------------------------------- /include/rtl8192f_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8192F_SRESET_H_ 16 | #define _RTL8192F_SRESET_H_ 17 | 18 | #include 19 | 20 | #ifdef DBG_CONFIG_ERROR_DETECT 21 | extern void rtl8192f_sreset_xmit_status_check(_adapter *padapter); 22 | extern void rtl8192f_sreset_linked_status_check(_adapter *padapter); 23 | #endif /* DBG_CONFIG_ERROR_DETECT */ 24 | #endif /* _RTL8192F_SRESET_H_ */ -------------------------------------------------------------------------------- /platform/platform_RTK_DMP_usb.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #include 16 | 17 | int platform_wifi_power_on(void) 18 | { 19 | int ret = 0; 20 | u32 tmp; 21 | tmp = readl((volatile unsigned int *)0xb801a608); 22 | tmp &= 0xffffff00; 23 | tmp |= 0x55; 24 | writel(tmp, (volatile unsigned int *)0xb801a608); /* write dummy register for 1055 */ 25 | return ret; 26 | } 27 | 28 | void platform_wifi_power_off(void) 29 | { 30 | } 31 | -------------------------------------------------------------------------------- /include/gspi_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __GSPI_HAL_H__ 16 | #define __GSPI_HAL_H__ 17 | 18 | 19 | void spi_int_dpc(PADAPTER padapter, u32 sdio_hisr); 20 | u8 rtw_set_hal_ops(_adapter *padapter); 21 | 22 | #ifdef CONFIG_RTL8188E 23 | void rtl8188es_set_hal_ops(PADAPTER padapter); 24 | #endif 25 | 26 | #ifdef CONFIG_RTL8723B 27 | void rtl8723bs_set_hal_ops(PADAPTER padapter); 28 | #endif 29 | 30 | #endif /* __GSPI_HAL_H__ */ 31 | -------------------------------------------------------------------------------- /include/rtl8822be_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8822BE_HAL_H_ 16 | #define _RTL8822BE_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | #define RT_BCN_INT_MASKS (BIT20 | BIT25 | BIT26 | BIT16) 21 | 22 | /* rtl8822be_ops.c */ 23 | void UpdateInterruptMask8822BE(PADAPTER, u32 AddMSR, u32 AddMSR1, u32 RemoveMSR, u32 RemoveMSR1); 24 | u16 get_txbd_rw_reg(u16 q_idx); 25 | 26 | 27 | #endif /* _RTL8822BE_HAL_H_ */ 28 | -------------------------------------------------------------------------------- /include/rtl8822ce_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8822CE_HAL_H_ 16 | #define _RTL8822CE_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | #define RT_BCN_INT_MASKS (BIT20 | BIT25 | BIT26 | BIT16) 21 | 22 | /* rtl8822ce_ops.c */ 23 | void UpdateInterruptMask8822CE(PADAPTER, u32 AddMSR, u32 AddMSR1, u32 RemoveMSR, u32 RemoveMSR1); 24 | u16 get_txbd_rw_reg(u16 q_idx); 25 | 26 | 27 | #endif /* _RTL8822CE_HAL_H_ */ 28 | -------------------------------------------------------------------------------- /platform/platform_zte_zx296716_sdio.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2018 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __PLATFORM_ZTE_ZX296716_SDIO_H__ 16 | #define __PLATFORM_ZTE_ZX296716_SDIO_H__ 17 | 18 | extern void sdio_reinit(void); 19 | extern void extern_wifi_set_enable(int val); 20 | #ifdef CONFIG_A16T03_BOARD 21 | extern int sdio_host_is_null(void); 22 | extern void remove_card(void); 23 | #endif /* CONFIG_A16T03_BOARD */ 24 | 25 | #endif /* __PLATFORM_ZTE_ZX296716_SDIO_H__ */ 26 | -------------------------------------------------------------------------------- /platform/custom_country_chplan.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #error "You have defined CONFIG_CUSTOMIZED_COUNTRY_CHPLAN_MAP to use a customized map of your own instead of the default one" 17 | #error "Before removing these error notifications, please make sure regulatory certification requirements of your target markets" 18 | 19 | static const struct country_chplan CUSTOMIZED_country_chplan_map[] = { 20 | COUNTRY_CHPLAN_ENT("TW", 0x76, 1, 0x3FF), /* Taiwan */ 21 | }; 22 | 23 | -------------------------------------------------------------------------------- /include/rtl8812a_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8812A_DM_H__ 16 | #define __RTL8812A_DM_H__ 17 | 18 | void rtl8812_init_dm_priv(PADAPTER Adapter); 19 | void rtl8812_deinit_dm_priv(PADAPTER Adapter); 20 | void rtl8812_InitHalDm(PADAPTER Adapter); 21 | void rtl8812_HalDmWatchDog(PADAPTER Adapter); 22 | 23 | /* void rtl8192c_dm_CheckTXPowerTracking(PADAPTER Adapter); */ 24 | 25 | /* void rtl8192c_dm_RF_Saving(PADAPTER pAdapter, u8 bForceInNormal); */ 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /include/rtl8188e_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8188E_DM_H__ 16 | #define __RTL8188E_DM_H__ 17 | 18 | void rtl8188e_init_dm_priv(PADAPTER Adapter); 19 | void rtl8188e_deinit_dm_priv(PADAPTER Adapter); 20 | void rtl8188e_InitHalDm(PADAPTER Adapter); 21 | void rtl8188e_HalDmWatchDog(PADAPTER Adapter); 22 | 23 | /* void rtl8192c_dm_CheckTXPowerTracking(PADAPTER Adapter); */ 24 | 25 | /* void rtl8192c_dm_RF_Saving(PADAPTER pAdapter, u8 bForceInNormal); */ 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /include/rtl8192f_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2012 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8192F_DM_H__ 16 | #define __RTL8192F_DM_H__ 17 | 18 | void rtl8192f_init_dm_priv(PADAPTER Adapter); 19 | void rtl8192f_deinit_dm_priv(PADAPTER Adapter); 20 | void rtl8192f_InitHalDm(PADAPTER Adapter); 21 | void rtl8192f_HalDmWatchDog(PADAPTER Adapter); 22 | 23 | /* void rtl8192c_dm_CheckTXPowerTracking(PADAPTER Adapter); */ 24 | 25 | /* void rtl8192c_dm_RF_Saving(PADAPTER pAdapter, u8 bForceInNormal); */ 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /include/rtl8192e_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2012 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8192E_DM_H__ 16 | #define __RTL8192E_DM_H__ 17 | 18 | 19 | void rtl8192e_init_dm_priv(PADAPTER Adapter); 20 | void rtl8192e_deinit_dm_priv(PADAPTER Adapter); 21 | void rtl8192e_InitHalDm(PADAPTER Adapter); 22 | void rtl8192e_HalDmWatchDog(PADAPTER Adapter); 23 | 24 | /* void rtl8192c_dm_CheckTXPowerTracking(PADAPTER Adapter); */ 25 | 26 | /* void rtl8192c_dm_RF_Saving(PADAPTER pAdapter, u8 bForceInNormal); */ 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /include/mlme_osdep.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __MLME_OSDEP_H_ 16 | #define __MLME_OSDEP_H_ 17 | 18 | extern void rtw_os_indicate_disconnect(_adapter *adapter, u16 reason, u8 locally_generated); 19 | extern void rtw_os_indicate_connect(_adapter *adapter); 20 | void rtw_os_indicate_scan_done(_adapter *padapter, bool aborted); 21 | extern void rtw_report_sec_ie(_adapter *adapter, u8 authmode, u8 *sec_ie); 22 | 23 | void rtw_reset_securitypriv(_adapter *adapter); 24 | 25 | #endif /* _MLME_OSDEP_H_ */ 26 | -------------------------------------------------------------------------------- /platform/platform_aml_s905_sdio.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2018 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __PLATFORM_AML_S905_SDIO_H__ 16 | #define __PLATFORM_AML_S905_SDIO_H__ 17 | 18 | #include /* Linux vresion */ 19 | 20 | extern void sdio_reinit(void); 21 | extern void extern_wifi_set_enable(int is_on); 22 | 23 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 14, 0)) 24 | extern void wifi_teardown_dt(void); 25 | extern int wifi_setup_dt(void); 26 | #endif /* kernel < 3.14.0 */ 27 | 28 | #endif /* __PLATFORM_AML_S905_SDIO_H__ */ 29 | -------------------------------------------------------------------------------- /platform/platform_hisilicon_hi3798_sdio.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2017 - 2018 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __PLATFORM_HISILICON_HI3798_SDIO_H__ 16 | #define __PLATFORM_HISILICON_HI3798_SDIO_H__ 17 | 18 | typedef unsigned int HI_U32; 19 | 20 | typedef int HI_S32; 21 | 22 | #define HI_SUCCESS 0 23 | #define HI_FAILURE (-1) 24 | 25 | extern HI_S32 HI_DRV_GPIO_SetDirBit(HI_U32 u32GpioNo, HI_U32 u32DirBit); 26 | extern HI_S32 HI_DRV_GPIO_WriteBit(HI_U32 u32GpioNo, HI_U32 u32BitValue); 27 | 28 | #endif /* __PLATFORM_HISILICON_HI3798_SDIO_H__ */ 29 | -------------------------------------------------------------------------------- /include/rtw_btcoex_wifionly.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTW_BTCOEX_WIFIONLY_H__ 16 | #define __RTW_BTCOEX_WIFIONLY_H__ 17 | 18 | void rtw_btcoex_wifionly_switchband_notify(PADAPTER padapter); 19 | void rtw_btcoex_wifionly_scan_notify(PADAPTER padapter); 20 | void rtw_btcoex_wifionly_connect_notify(PADAPTER padapter); 21 | void rtw_btcoex_wifionly_hw_config(PADAPTER padapter); 22 | void rtw_btcoex_wifionly_initialize(PADAPTER padapter); 23 | void rtw_btcoex_wifionly_AntInfoSetting(PADAPTER padapter); 24 | #endif 25 | -------------------------------------------------------------------------------- /include/rtw_wifi_regd.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2009-2010 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifndef __RTW_WIFI_REGD_H__ 17 | #define __RTW_WIFI_REGD_H__ 18 | 19 | struct country_code_to_enum_rd { 20 | u16 countrycode; 21 | const char *iso_name; 22 | }; 23 | 24 | enum country_code_type_t { 25 | COUNTRY_CODE_USER = 0, 26 | 27 | /*add new channel plan above this line */ 28 | COUNTRY_CODE_MAX 29 | }; 30 | 31 | void rtw_regd_apply_flags(struct wiphy *wiphy); 32 | int rtw_regd_init(struct wiphy *wiphy); 33 | 34 | #endif /* __RTW_WIFI_REGD_H__ */ 35 | -------------------------------------------------------------------------------- /include/cmd_osdep.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __CMD_OSDEP_H_ 16 | #define __CMD_OSDEP_H_ 17 | 18 | 19 | extern sint _rtw_init_cmd_priv(struct cmd_priv *pcmdpriv); 20 | extern sint _rtw_init_evt_priv(struct evt_priv *pevtpriv); 21 | extern void _rtw_free_evt_priv(struct evt_priv *pevtpriv); 22 | extern void _rtw_free_cmd_priv(struct cmd_priv *pcmdpriv); 23 | extern sint _rtw_enqueue_cmd(_queue *queue, struct cmd_obj *obj, bool to_head); 24 | extern struct cmd_obj *_rtw_dequeue_cmd(_queue *queue); 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /include/custom_gpio.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __CUSTOM_GPIO_H__ 16 | #define __CUSTOM_GPIO_H___ 17 | 18 | #include 19 | #include 20 | 21 | typedef enum cust_gpio_modes { 22 | WLAN_PWDN_ON, 23 | WLAN_PWDN_OFF, 24 | WLAN_POWER_ON, 25 | WLAN_POWER_OFF, 26 | WLAN_BT_PWDN_ON, 27 | WLAN_BT_PWDN_OFF 28 | } cust_gpio_modes_t; 29 | 30 | extern int rtw_wifi_gpio_init(void); 31 | extern int rtw_wifi_gpio_deinit(void); 32 | extern void rtw_wifi_gpio_wlan_ctrl(int onoff); 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /include/rtl8814be_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8814BE_HAL_H_ 16 | #define _RTL8814BE_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | #define RT_BCN_INT_MASKS (BIT_BCNDMAINT0_MSK_8814B | \ 21 | BIT_TXBCN0OK_MSK_8814B | \ 22 | BIT_TXBCN0ERR_MSK_8814B | \ 23 | BIT_BCNDERR0_MSK_8814B) 24 | 25 | /* rtl8814be_ops.c */ 26 | void UpdateInterruptMask8814BE(PADAPTER, u32 AddMSR, u32 AddMSR1, u32 RemoveMSR, u32 RemoveMSR1); 27 | u16 get_txbd_rw_reg(u16 q_idx); 28 | 29 | 30 | #endif /* _RTL8814BE_HAL_H_ */ 31 | -------------------------------------------------------------------------------- /hal/efuse/rtl8188e/HalEfuseMask8188E_USB.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | 17 | 18 | /****************************************************************************** 19 | * MUSB.TXT 20 | ******************************************************************************/ 21 | 22 | 23 | u16 24 | EFUSE_GetArrayLen_MP_8188E_MUSB(void); 25 | 26 | void 27 | EFUSE_GetMaskArray_MP_8188E_MUSB( 28 | u8 *Array 29 | ); 30 | 31 | BOOLEAN 32 | EFUSE_IsAddressMasked_MP_8188E_MUSB(/* TC: Test Chip, MP: MP Chip */ 33 | u16 Offset 34 | ); 35 | -------------------------------------------------------------------------------- /hal/efuse/rtl8188e/HalEfuseMask8188E_PCIE.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | 17 | 18 | /****************************************************************************** 19 | * MPCIE.TXT 20 | ******************************************************************************/ 21 | 22 | 23 | u16 24 | EFUSE_GetArrayLen_MP_8188E_MPCIE(void); 25 | 26 | void 27 | EFUSE_GetMaskArray_MP_8188E_MPCIE( 28 | u8 *Array 29 | ); 30 | 31 | BOOLEAN 32 | EFUSE_IsAddressMasked_MP_8188E_MPCIE(/* TC: Test Chip, MP: MP Chip */ 33 | u16 Offset 34 | ); 35 | -------------------------------------------------------------------------------- /hal/efuse/rtl8188e/HalEfuseMask8188E_SDIO.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | 17 | 18 | /****************************************************************************** 19 | * MSDIO.TXT 20 | ******************************************************************************/ 21 | 22 | 23 | u16 24 | EFUSE_GetArrayLen_MP_8188E_MSDIO(void); 25 | 26 | void 27 | EFUSE_GetMaskArray_MP_8188E_MSDIO( 28 | u8 *Array 29 | ); 30 | 31 | BOOLEAN 32 | EFUSE_IsAddressMasked_MP_8188E_MSDIO(/* TC: Test Chip, MP: MP Chip */ 33 | u16 Offset 34 | ); 35 | -------------------------------------------------------------------------------- /include/rtl8822bs_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8822BS_HAL_H_ 16 | #define _RTL8822BS_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | /* rtl8822bs_ops.c */ 21 | void rtl8822bs_set_hal_ops(PADAPTER); 22 | 23 | #if defined(CONFIG_WOWLAN) || defined(CONFIG_AP_WOWLAN) 24 | void rtl8822bs_disable_interrupt_but_cpwm2(PADAPTER adapter); 25 | #endif 26 | 27 | /* rtl8822bs_xmit.c */ 28 | s32 rtl8822bs_dequeue_writeport(PADAPTER); 29 | #define _dequeue_writeport(a) rtl8822bs_dequeue_writeport(a) 30 | 31 | #endif /* _RTL8822BS_HAL_H_ */ 32 | -------------------------------------------------------------------------------- /include/rtl8822cs_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8822CS_HAL_H_ 16 | #define _RTL8822CS_HAL_H_ 17 | 18 | #include /* PADAPTER */ 19 | 20 | /* rtl8822cs_ops.c */ 21 | void rtl8822cs_set_hal_ops(PADAPTER); 22 | 23 | #if defined(CONFIG_WOWLAN) || defined(CONFIG_AP_WOWLAN) 24 | void rtl8822cs_disable_interrupt_but_cpwm2(PADAPTER adapter); 25 | #endif 26 | 27 | /* rtl8822cs_xmit.c */ 28 | s32 rtl8822cs_dequeue_writeport(PADAPTER); 29 | #define _dequeue_writeport(a) rtl8822cs_dequeue_writeport(a) 30 | 31 | #endif /* _RTL8822CS_HAL_H_ */ 32 | -------------------------------------------------------------------------------- /hal/phydm/halrf/halrf_txgapcal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __HALRF_TXGAPCAL_H__ 27 | #define __HALRF_TXGAPCAL_H__ 28 | 29 | void odm_tx_gain_gap_calibration(void *dm_void); 30 | 31 | #endif /*__HALRF_TXGAPCAL_H__*/ 32 | -------------------------------------------------------------------------------- /include/rtw_sdio.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTW_SDIO_H_ 16 | #define _RTW_SDIO_H_ 17 | 18 | #include /* struct dvobj_priv and etc. */ 19 | 20 | u8 rtw_sdio_read_cmd52(struct dvobj_priv *, u32 addr, void *buf, size_t len); 21 | u8 rtw_sdio_read_cmd53(struct dvobj_priv *, u32 addr, void *buf, size_t len); 22 | u8 rtw_sdio_write_cmd52(struct dvobj_priv *, u32 addr, void *buf, size_t len); 23 | u8 rtw_sdio_write_cmd53(struct dvobj_priv *, u32 addr, void *buf, size_t len); 24 | u8 rtw_sdio_f0_read(struct dvobj_priv *, u32 addr, void *buf, size_t len); 25 | 26 | #endif /* _RTW_SDIO_H_ */ 27 | -------------------------------------------------------------------------------- /include/hal_gspi.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __HAL_GSPI_H_ 16 | #define __HAL_GSPI_H_ 17 | 18 | #define ffaddr2deviceId(pdvobj, addr) (pdvobj->Queue2Pipe[addr]) 19 | 20 | u8 rtw_hal_gspi_max_txoqt_free_space(_adapter *padapter); 21 | u8 rtw_hal_gspi_query_tx_freepage(_adapter *padapter, u8 PageIdx, u8 RequiredPageNum); 22 | void rtw_hal_gspi_update_tx_freepage(_adapter *padapter, u8 PageIdx, u8 RequiredPageNum); 23 | void rtw_hal_set_gspi_tx_max_length(PADAPTER padapter, u8 numHQ, u8 numNQ, u8 numLQ, u8 numPubQ); 24 | u32 rtw_hal_get_gspi_tx_max_length(PADAPTER padapter, u8 queue_idx); 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /hal/phydm/rtl8188e/halhwimg8188e_mac.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | /*Image2HeaderVersion: 3.5.2*/ 17 | #if (RTL8188E_SUPPORT == 1) 18 | #ifndef __INC_MP_MAC_HW_IMG_8188E_H 19 | #define __INC_MP_MAC_HW_IMG_8188E_H 20 | 21 | 22 | /****************************************************************************** 23 | * mac_reg.TXT 24 | ******************************************************************************/ 25 | 26 | void 27 | odm_read_and_config_mp_8188e_mac_reg( /* tc: Test Chip, mp: mp Chip*/ 28 | struct dm_struct *dm); 29 | u32 odm_get_version_mp_8188e_mac_reg(void); 30 | 31 | #endif 32 | #endif /* end of HWIMG_SUPPORT*/ 33 | 34 | -------------------------------------------------------------------------------- /hal/phydm/halrf/halrf_psd.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifndef __HALRF_PSD_H__ 17 | #define __HALRF_PSD_H__ 18 | 19 | 20 | struct _halrf_psd_data { 21 | u32 point; 22 | u32 start_point; 23 | u32 stop_point; 24 | u32 average; 25 | u32 buf_size; 26 | u32 psd_data[256]; 27 | u32 psd_progress; 28 | }; 29 | 30 | u32 31 | halrf_psd_init( 32 | void *dm_void); 33 | 34 | u32 35 | halrf_psd_query( 36 | void *dm_void, 37 | u32 *outbuf, 38 | u32 buf_size); 39 | 40 | u32 41 | halrf_psd_init_query( 42 | void *dm_void, 43 | u32 *outbuf, 44 | u32 point, 45 | u32 start_point, 46 | u32 stop_point, 47 | u32 average, 48 | u32 buf_size); 49 | 50 | #endif /*#__HALRF_PSD_H__*/ 51 | -------------------------------------------------------------------------------- /include/rtw_mem.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTW_MEM_H__ 16 | #define __RTW_MEM_H__ 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | #ifdef CONFIG_PLATFORM_MSTAR_HIGH 23 | #define MAX_RTKM_RECVBUF_SZ (31744) /* 31k */ 24 | #else 25 | #define MAX_RTKM_RECVBUF_SZ (15360) /* 15k */ 26 | #endif /* CONFIG_PLATFORM_MSTAR_HIGH */ 27 | #define MAX_RTKM_NR_PREALLOC_RECV_SKB 16 28 | 29 | u16 rtw_rtkm_get_buff_size(void); 30 | u8 rtw_rtkm_get_nr_recv_skb(void); 31 | struct u8 *rtw_alloc_revcbuf_premem(void); 32 | struct sk_buff *rtw_alloc_skb_premem(u16 in_size); 33 | int rtw_free_skb_premem(struct sk_buff *pskb); 34 | 35 | 36 | #endif /* __RTW_MEM_H__ */ 37 | -------------------------------------------------------------------------------- /hal/hal_hci/hal_sdio_coex.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 Realtek Corporation. All rights reserved. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * You should have received a copy of the GNU General Public License along with 15 | * this program; if not, write to the Free Software Foundation, Inc., 16 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA 17 | * 18 | * 19 | ******************************************************************************/ 20 | 21 | #include 22 | #include /* HAL_DATA_TYPE */ 23 | 24 | #ifdef CONFIG_SDIO_MULTI_FUNCTION_COEX 25 | 26 | int rtw_sdio_multi_state = SDIO_MULTI_WIFI; 27 | EXPORT_SYMBOL(rtw_sdio_multi_state); 28 | 29 | bool ex_hal_sdio_multi_if_bus_available(PADAPTER adapter) 30 | { 31 | return rtw_sdio_multi_state == SDIO_MULTI_WIFI; 32 | } 33 | 34 | #endif /* CONFIG_SDIO_MULTI_FUNCTION_COEX */ 35 | 36 | -------------------------------------------------------------------------------- /include/nic_spec.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | 17 | #ifndef __NIC_SPEC_H__ 18 | #define __NIC_SPEC_H__ 19 | 20 | #include 21 | 22 | #define RTL8711_MCTRL_ (0x20000) 23 | #define RTL8711_UART_ (0x30000) 24 | #define RTL8711_TIMER_ (0x40000) 25 | #define RTL8711_FINT_ (0x50000) 26 | #define RTL8711_HINT_ (0x50000) 27 | #define RTL8711_GPIO_ (0x60000) 28 | #define RTL8711_WLANCTRL_ (0x200000) 29 | #define RTL8711_WLANFF_ (0xe00000) 30 | #define RTL8711_HCICTRL_ (0x600000) 31 | #define RTL8711_SYSCFG_ (0x620000) 32 | #define RTL8711_SYSCTRL_ (0x620000) 33 | #define RTL8711_MCCTRL_ (0x020000) 34 | 35 | 36 | #include 37 | 38 | #include 39 | 40 | 41 | #endif /* __RTL8711_SPEC_H__ */ 42 | -------------------------------------------------------------------------------- /hal/phydm/rtl8188e/version_rtl8188e.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | /*RTL8188E PHY Parameters*/ 26 | /* 27 | [Caution] 28 | Since 01/Aug/2015, the commit rules will be simplified. 29 | You do not need to fill up the version.h anymore, 30 | only the maintenance supervisor fills it before formal release. 31 | */ 32 | #define RELEASE_DATE_8188E 20171218 33 | #define COMMIT_BY_8188E "RF_Eason" 34 | #define RELEASE_VERSION_8188E 71 35 | -------------------------------------------------------------------------------- /hal/phydm/halrf/halrf_features.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __HALRF_FEATURES_H__ 27 | #define __HALRF_FEATURES_H__ 28 | 29 | #if (DM_ODM_SUPPORT_TYPE == ODM_WIN) 30 | 31 | #define CONFIG_HALRF_POWERTRACKING 1 32 | 33 | #elif (DM_ODM_SUPPORT_TYPE == ODM_AP) 34 | 35 | #define CONFIG_HALRF_POWERTRACKING 1 36 | 37 | #elif (DM_ODM_SUPPORT_TYPE == ODM_CE) 38 | 39 | #define CONFIG_HALRF_POWERTRACKING 1 40 | 41 | #endif 42 | 43 | #endif /*#ifndef __HALRF_FEATURES_H__*/ 44 | -------------------------------------------------------------------------------- /include/rtl8192e_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2012 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8192E_LED_H__ 16 | #define __RTL8192E_LED_H__ 17 | 18 | #ifdef CONFIG_RTW_SW_LED 19 | /* ******************************************************************************** 20 | * Interface to manipulate LED objects. 21 | * ******************************************************************************** */ 22 | #ifdef CONFIG_USB_HCI 23 | void rtl8192eu_InitSwLeds(PADAPTER padapter); 24 | void rtl8192eu_DeInitSwLeds(PADAPTER padapter); 25 | #endif 26 | #ifdef CONFIG_PCI_HCI 27 | void rtl8192ee_InitSwLeds(PADAPTER padapter); 28 | void rtl8192ee_DeInitSwLeds(PADAPTER padapter); 29 | #endif 30 | #ifdef CONFIG_SDIO_HCI 31 | void rtl8192es_InitSwLeds(PADAPTER padapter); 32 | void rtl8192es_DeInitSwLeds(PADAPTER padapter); 33 | #endif 34 | 35 | #endif 36 | #endif/*CONFIG_RTW_SW_LED*/ 37 | -------------------------------------------------------------------------------- /hal/rtl8188e/hal8188e_s_fw.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifndef _FW_HEADER_8188E_S_H 17 | #define _FW_HEADER_8188E_S_H 18 | 19 | #ifdef CONFIG_SFW_SUPPORTED 20 | 21 | #ifdef LOAD_FW_HEADER_FROM_DRIVER 22 | #if (defined(CONFIG_AP_WOWLAN) || (DM_ODM_SUPPORT_TYPE & (ODM_AP))) 23 | extern u8 array_mp_8188e_s_fw_ap[16054]; 24 | extern u32 array_length_mp_8188e_s_fw_ap; 25 | #endif 26 | 27 | #if (DM_ODM_SUPPORT_TYPE & (ODM_WIN)) || (DM_ODM_SUPPORT_TYPE & (ODM_CE)) 28 | extern u8 array_mp_8188e_s_fw_nic[19206]; 29 | extern u32 array_length_mp_8188e_s_fw_nic; 30 | #ifdef CONFIG_WOWLAN 31 | extern u8 array_mp_8188e_s_fw_wowlan[22710]; 32 | extern u32 array_length_mp_8188e_s_fw_wowlan; 33 | #endif /*CONFIG_WOWLAN*/ 34 | #endif 35 | #endif /* end of LOAD_FW_HEADER_FROM_DRIVER */ 36 | 37 | #endif /* end of CONFIG_SFW_SUPPORTED */ 38 | 39 | #endif 40 | 41 | -------------------------------------------------------------------------------- /hal/rtl8188e/hal8188e_t_fw.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifndef _FW_HEADER_8188E_T_H 17 | #define _FW_HEADER_8188E_T_H 18 | 19 | #ifdef LOAD_FW_HEADER_FROM_DRIVER 20 | #if (defined(CONFIG_AP_WOWLAN) || (DM_ODM_SUPPORT_TYPE & (ODM_AP))) 21 | extern u8 array_mp_8188e_t_fw_ap[15502]; 22 | extern u32 array_length_mp_8188e_t_fw_ap; 23 | #endif 24 | 25 | #if (DM_ODM_SUPPORT_TYPE & (ODM_WIN)) || (DM_ODM_SUPPORT_TYPE & (ODM_CE)) 26 | extern u8 array_mp_8188e_t_fw_nic[15262]; 27 | extern u32 array_length_mp_8188e_t_fw_nic; 28 | extern u8 array_mp_8188e_t_fw_nic_89em[14364]; 29 | extern u32 array_length_mp_8188e_t_fw_nic_89em; 30 | #ifdef CONFIG_WOWLAN 31 | extern u8 array_mp_8188e_t_fw_wowlan[16388]; 32 | extern u32 array_length_mp_8188e_t_fw_wowlan; 33 | #endif /*CONFIG_WOWLAN*/ 34 | #endif 35 | #endif /* end of LOAD_FW_HEADER_FROM_DRIVER */ 36 | 37 | #endif 38 | 39 | -------------------------------------------------------------------------------- /include/hal_sdio_coex.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 Realtek Corporation. All rights reserved. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * You should have received a copy of the GNU General Public License along with 15 | * this program; if not, write to the Free Software Foundation, Inc., 16 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA 17 | * 18 | * 19 | ******************************************************************************/ 20 | #ifndef __HAL_SDIO_COEX_H__ 21 | #define __HAL_SDIO_COEX_H__ 22 | 23 | #include 24 | 25 | #ifdef CONFIG_SDIO_MULTI_FUNCTION_COEX 26 | 27 | enum { /* for sdio multi-func. coex */ 28 | SDIO_MULTI_WIFI = 0, 29 | SDIO_MULTI_BT, 30 | SDIO_MULTI_NUM 31 | }; 32 | 33 | bool ex_hal_sdio_multi_if_bus_available(PADAPTER adapter); 34 | 35 | #else 36 | 37 | #define ex_hal_sdio_multi_if_bus_available(adapter) TRUE 38 | 39 | #endif /* CONFIG_SDIO_MULTI_FUNCTION_COEX */ 40 | #endif /* !__HAL_SDIO_COEX_H__ */ 41 | 42 | -------------------------------------------------------------------------------- /include/rtl8188e_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8188E_LED_H__ 16 | #define __RTL8188E_LED_H__ 17 | 18 | #ifdef CONFIG_RTW_SW_LED 19 | 20 | /* ******************************************************************************** 21 | * Interface to manipulate LED objects. 22 | * ******************************************************************************** */ 23 | #ifdef CONFIG_USB_HCI 24 | void rtl8188eu_InitSwLeds(PADAPTER padapter); 25 | void rtl8188eu_DeInitSwLeds(PADAPTER padapter); 26 | #endif 27 | #ifdef CONFIG_PCI_HCI 28 | void rtl8188ee_InitSwLeds(PADAPTER padapter); 29 | void rtl8188ee_DeInitSwLeds(PADAPTER padapter); 30 | #endif 31 | #if defined(CONFIG_SDIO_HCI) || defined(CONFIG_GSPI_HCI) 32 | void rtl8188es_InitSwLeds(PADAPTER padapter); 33 | void rtl8188es_DeInitSwLeds(PADAPTER padapter); 34 | #endif 35 | 36 | #endif 37 | #endif /*CONFIG_RTW_SW_LED*/ 38 | -------------------------------------------------------------------------------- /include/rtl8723b_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8723B_DM_H__ 16 | #define __RTL8723B_DM_H__ 17 | /* ************************************************************ 18 | * Description: 19 | * 20 | * This file is for 8723B dynamic mechanism only 21 | * 22 | * 23 | * ************************************************************ */ 24 | 25 | /* ************************************************************ 26 | * structure and define 27 | * ************************************************************ */ 28 | 29 | /* ************************************************************ 30 | * function prototype 31 | * ************************************************************ */ 32 | 33 | void rtl8723b_init_dm_priv(PADAPTER padapter); 34 | void rtl8723b_deinit_dm_priv(PADAPTER padapter); 35 | 36 | void rtl8723b_InitHalDm(PADAPTER padapter); 37 | void rtl8723b_HalDmWatchDog(PADAPTER padapter); 38 | #endif 39 | -------------------------------------------------------------------------------- /include/drv_types_gspi.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __DRV_TYPES_GSPI_H__ 16 | #define __DRV_TYPES_GSPI_H__ 17 | 18 | /* SPI Header Files */ 19 | #ifdef PLATFORM_LINUX 20 | #include 21 | #include 22 | #include 23 | /* #include */ 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include 31 | #endif 32 | 33 | 34 | typedef struct gspi_data { 35 | u8 func_number; 36 | 37 | u8 tx_block_mode; 38 | u8 rx_block_mode; 39 | u32 block_transfer_len; 40 | 41 | #ifdef PLATFORM_LINUX 42 | struct spi_device *func; 43 | 44 | struct workqueue_struct *priv_wq; 45 | struct delayed_work irq_work; 46 | #endif 47 | } GSPI_DATA, *PGSPI_DATA; 48 | 49 | #endif /* #ifndef __DRV_TYPES_GSPI_H__ */ 50 | -------------------------------------------------------------------------------- /include/rtl8188f_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8188F_DM_H__ 16 | #define __RTL8188F_DM_H__ 17 | /* ************************************************************ 18 | * Description: 19 | * 20 | * This file is for 8188F dynamic mechanism only 21 | * 22 | * 23 | * ************************************************************ */ 24 | 25 | /* ************************************************************ 26 | * structure and define 27 | * ************************************************************ */ 28 | 29 | /* ************************************************************ 30 | * function prototype 31 | * ************************************************************ */ 32 | 33 | void rtl8188f_init_dm_priv(PADAPTER padapter); 34 | void rtl8188f_deinit_dm_priv(PADAPTER padapter); 35 | 36 | void rtl8188f_InitHalDm(PADAPTER padapter); 37 | void rtl8188f_HalDmWatchDog(PADAPTER padapter); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /include/rtl8703b_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8703B_DM_H__ 16 | #define __RTL8703B_DM_H__ 17 | /* ************************************************************ 18 | * Description: 19 | * 20 | * This file is for 8703B dynamic mechanism only 21 | * 22 | * 23 | * ************************************************************ */ 24 | 25 | /* ************************************************************ 26 | * structure and define 27 | * ************************************************************ */ 28 | 29 | /* ************************************************************ 30 | * function prototype 31 | * ************************************************************ */ 32 | 33 | void rtl8703b_init_dm_priv(PADAPTER padapter); 34 | void rtl8703b_deinit_dm_priv(PADAPTER padapter); 35 | 36 | void rtl8703b_InitHalDm(PADAPTER padapter); 37 | void rtl8703b_HalDmWatchDog(PADAPTER padapter); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /include/rtl8710b_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8710B_DM_H__ 16 | #define __RTL8710B_DM_H__ 17 | /* ************************************************************ 18 | * Description: 19 | * 20 | * This file is for 8710B dynamic mechanism only 21 | * 22 | * 23 | * ************************************************************ */ 24 | 25 | /* ************************************************************ 26 | * structure and define 27 | * ************************************************************ */ 28 | 29 | /* ************************************************************ 30 | * function prototype 31 | * ************************************************************ */ 32 | 33 | void rtl8710b_init_dm_priv(PADAPTER padapter); 34 | void rtl8710b_deinit_dm_priv(PADAPTER padapter); 35 | 36 | void rtl8710b_InitHalDm(PADAPTER padapter); 37 | void rtl8710b_HalDmWatchDog(PADAPTER padapter); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /include/rtl8723d_dm.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8723D_DM_H__ 16 | #define __RTL8723D_DM_H__ 17 | /* ************************************************************ 18 | * Description: 19 | * 20 | * This file is for 8723D dynamic mechanism only 21 | * 22 | * 23 | * ************************************************************ */ 24 | 25 | /* ************************************************************ 26 | * structure and define 27 | * ************************************************************ */ 28 | 29 | /* ************************************************************ 30 | * function prototype 31 | * ************************************************************ */ 32 | 33 | void rtl8723d_init_dm_priv(PADAPTER padapter); 34 | void rtl8723d_deinit_dm_priv(PADAPTER padapter); 35 | 36 | void rtl8723d_InitHalDm(PADAPTER padapter); 37 | void rtl8723d_HalDmWatchDog(PADAPTER padapter); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /core/rtw_btcoex_wifionly.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #include 16 | #include 17 | #include 18 | 19 | void rtw_btcoex_wifionly_switchband_notify(PADAPTER padapter) 20 | { 21 | hal_btcoex_wifionly_switchband_notify(padapter); 22 | } 23 | 24 | void rtw_btcoex_wifionly_scan_notify(PADAPTER padapter) 25 | { 26 | hal_btcoex_wifionly_scan_notify(padapter); 27 | } 28 | 29 | void rtw_btcoex_wifionly_connect_notify(PADAPTER padapter) 30 | { 31 | hal_btcoex_wifionly_connect_notify(padapter); 32 | } 33 | 34 | void rtw_btcoex_wifionly_hw_config(PADAPTER padapter) 35 | { 36 | hal_btcoex_wifionly_hw_config(padapter); 37 | } 38 | 39 | void rtw_btcoex_wifionly_initialize(PADAPTER padapter) 40 | { 41 | hal_btcoex_wifionly_initlizevariables(padapter); 42 | } 43 | 44 | void rtw_btcoex_wifionly_AntInfoSetting(PADAPTER padapter) 45 | { 46 | hal_btcoex_wifionly_AntInfoSetting(padapter); 47 | } 48 | -------------------------------------------------------------------------------- /include/rtl8814a_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8814A_LED_H__ 16 | #define __RTL8814A_LED_H__ 17 | 18 | #ifdef CONFIG_RTW_SW_LED 19 | /* ******************************************************************************** 20 | * Interface to manipulate LED objects. 21 | * ******************************************************************************** */ 22 | #ifdef CONFIG_USB_HCI 23 | void rtl8814au_InitSwLeds(PADAPTER padapter); 24 | void rtl8814au_DeInitSwLeds(PADAPTER padapter); 25 | #endif /* CONFIG_USB_HCI */ 26 | #ifdef CONFIG_PCI_HCI 27 | void rtl8814ae_InitSwLeds(PADAPTER padapter); 28 | void rtl8814ae_DeInitSwLeds(PADAPTER padapter); 29 | #endif /* CONFIG_PCI_HCI */ 30 | #ifdef CONFIG_SDIO_HCI 31 | void rtl8814s_InitSwLeds(PADAPTER padapter); 32 | void rtl8814s_DeInitSwLeds(PADAPTER padapter); 33 | #endif /* CONFIG_SDIO_HCI */ 34 | 35 | #endif /* __RTL8814A_LED_H__ */ 36 | #endif /*CONFIG_RTW_SW_LED*/ 37 | -------------------------------------------------------------------------------- /platform/platform_arm_act_sdio.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | /* 16 | * Description: 17 | * This file can be applied to following platforms: 18 | * CONFIG_PLATFORM_ACTIONS_ATM703X 19 | */ 20 | #include 21 | 22 | #ifdef CONFIG_PLATFORM_ACTIONS_ATM705X 23 | extern int acts_wifi_init(void); 24 | extern void acts_wifi_cleanup(void); 25 | #endif 26 | 27 | /* 28 | * Return: 29 | * 0: power on successfully 30 | * others: power on failed 31 | */ 32 | int platform_wifi_power_on(void) 33 | { 34 | int ret = 0; 35 | 36 | #ifdef CONFIG_PLATFORM_ACTIONS_ATM705X 37 | ret = acts_wifi_init(); 38 | if (unlikely(ret < 0)) { 39 | pr_err("%s Failed to register the power control driver.\n", __FUNCTION__); 40 | goto exit; 41 | } 42 | #endif 43 | 44 | exit: 45 | return ret; 46 | } 47 | 48 | void platform_wifi_power_off(void) 49 | { 50 | #ifdef CONFIG_PLATFORM_ACTIONS_ATM705X 51 | acts_wifi_cleanup(); 52 | #endif 53 | } 54 | -------------------------------------------------------------------------------- /hal/phydm/halrf/halrf_powertracking.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __HALRF_POWER_TRACKING_H__ 27 | #define __HALRF_POWER_TRACKING_H__ 28 | 29 | boolean 30 | odm_check_power_status(void *dm_void); 31 | 32 | #if (DM_ODM_SUPPORT_TYPE & (ODM_WIN | ODM_CE)) 33 | void halrf_update_pwr_track(void *dm_void, u8 rate); 34 | #endif 35 | 36 | #if (DM_ODM_SUPPORT_TYPE == ODM_WIN) 37 | void halrf_update_init_rate_work_item_callback( 38 | void *context); 39 | #endif 40 | 41 | void halrf_set_pwr_track(void *dm_void, u8 enable); 42 | 43 | #endif /*#ifndef __HALRF_POWERTRACKING_H__*/ 44 | -------------------------------------------------------------------------------- /include/rtl8192f_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8192F_LED_H__ 16 | #define __RTL8192F_LED_H__ 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | #ifdef CONFIG_RTW_SW_LED 23 | /* ******************************************************************************** 24 | * Interface to manipulate LED objects. 25 | * ******************************************************************************** */ 26 | #ifdef CONFIG_USB_HCI 27 | void rtl8192fu_InitSwLeds(PADAPTER padapter); 28 | void rtl8192fu_DeInitSwLeds(PADAPTER padapter); 29 | #endif 30 | 31 | #ifdef CONFIG_SDIO_HCI 32 | void rtl8192fs_InitSwLeds(PADAPTER padapter); 33 | void rtl8192fs_DeInitSwLeds(PADAPTER padapter); 34 | #endif 35 | 36 | #ifdef CONFIG_PCI_HCI 37 | void rtl8192fe_InitSwLeds(PADAPTER padapter); 38 | void rtl8192fe_DeInitSwLeds(PADAPTER padapter); 39 | #endif 40 | #endif /*#ifdef CONFIG_RTW_SW_LED*/ 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /include/drv_types_pci.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __DRV_TYPES_PCI_H__ 16 | #define __DRV_TYPES_PCI_H__ 17 | 18 | #ifdef PLATFORM_LINUX 19 | #include 20 | #endif 21 | 22 | #define INTEL_VENDOR_ID 0x8086 23 | #define SIS_VENDOR_ID 0x1039 24 | #define ATI_VENDOR_ID 0x1002 25 | #define ATI_DEVICE_ID 0x7914 26 | #define AMD_VENDOR_ID 0x1022 27 | 28 | #define PCI_VENDER_ID_REALTEK 0x10ec 29 | 30 | enum aspm_mode { 31 | ASPM_MODE_UND, 32 | ASPM_MODE_PERF, 33 | ASPM_MODE_PS, 34 | ASPM_MODE_DEF, 35 | }; 36 | 37 | struct pci_priv { 38 | BOOLEAN pci_clk_req; 39 | 40 | u8 pciehdr_offset; 41 | 42 | u8 linkctrl_reg; 43 | u8 pcibridge_linkctrlreg; 44 | 45 | u8 amd_l1_patch; 46 | 47 | #ifdef CONFIG_PCI_DYNAMIC_ASPM 48 | u8 aspm_mode; 49 | #endif 50 | }; 51 | 52 | typedef struct _RT_ISR_CONTENT { 53 | union { 54 | u32 IntArray[2]; 55 | u32 IntReg4Byte; 56 | u16 IntReg2Byte; 57 | }; 58 | } RT_ISR_CONTENT, *PRT_ISR_CONTENT; 59 | 60 | #endif 61 | -------------------------------------------------------------------------------- /hal/phydm/phydm_noisemonitor.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | #ifndef __ODMNOISEMONITOR_H__ 26 | #define __ODMNOISEMONITOR_H__ 27 | 28 | #define VALID_CNT 5 29 | 30 | struct noise_level { 31 | u8 value[PHYDM_MAX_RF_PATH]; 32 | s8 sval[PHYDM_MAX_RF_PATH]; 33 | s32 sum[PHYDM_MAX_RF_PATH]; 34 | u8 valid[PHYDM_MAX_RF_PATH]; 35 | u8 valid_cnt[PHYDM_MAX_RF_PATH]; 36 | }; 37 | 38 | struct odm_noise_monitor { 39 | s8 noise[PHYDM_MAX_RF_PATH]; 40 | s16 noise_all; 41 | }; 42 | 43 | s16 odm_inband_noise_monitor(void *dm_void, u8 is_pause_dig, u8 igi_value, 44 | u32 max_time); 45 | 46 | void phydm_noisy_detection(void *dm_void); 47 | 48 | #endif 49 | -------------------------------------------------------------------------------- /include/rtl8812a_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8812A_LED_H__ 16 | #define __RTL8812A_LED_H__ 17 | #ifdef CONFIG_RTW_LED 18 | #ifdef CONFIG_RTW_SW_LED 19 | /* ******************************************************************************** 20 | * Interface to manipulate LED objects. 21 | * ******************************************************************************** */ 22 | #ifdef CONFIG_USB_HCI 23 | void rtl8812au_InitSwLeds(PADAPTER padapter); 24 | void rtl8812au_DeInitSwLeds(PADAPTER padapter); 25 | #endif 26 | #ifdef CONFIG_PCI_HCI 27 | void rtl8812ae_InitSwLeds(PADAPTER padapter); 28 | void rtl8812ae_DeInitSwLeds(PADAPTER padapter); 29 | #endif 30 | #ifdef CONFIG_SDIO_HCI 31 | void rtl8821as_InitSwLeds(PADAPTER padapter); 32 | void rtl8821as_DeInitSwLeds(PADAPTER padapter); 33 | #endif 34 | #endif/*CONFIG_RTW_SW_LED*/ 35 | #endif/*#ifdef CONFIG_RTW_LED*/ 36 | 37 | #ifdef CONFIG_SDIO_HCI 38 | void rtl8821as_init_led_circuit(PADAPTER adapter); 39 | #endif 40 | 41 | #endif /*__RTL8812A_LED_H__*/ 42 | -------------------------------------------------------------------------------- /include/ethernet.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | /*! \file */ 16 | #ifndef __INC_ETHERNET_H 17 | #define __INC_ETHERNET_H 18 | 19 | #define ETHERNET_ADDRESS_LENGTH 6 /* !< Ethernet Address Length */ 20 | #define ETHERNET_HEADER_SIZE 14 /* !< Ethernet Header Length */ 21 | #define LLC_HEADER_SIZE 6 /* !< LLC Header Length */ 22 | #define TYPE_LENGTH_FIELD_SIZE 2 /* !< Type/Length Size */ 23 | #define MINIMUM_ETHERNET_PACKET_SIZE 60 /* !< Minimum Ethernet Packet Size */ 24 | #define MAXIMUM_ETHERNET_PACKET_SIZE 1514 /* !< Maximum Ethernet Packet Size */ 25 | 26 | #define RT_ETH_IS_MULTICAST(_pAddr) ((((u8 *)(_pAddr))[0]&0x01) != 0) /* !< Is Multicast Address? */ 27 | #define RT_ETH_IS_BROADCAST(_pAddr) (\ 28 | ((u8 *)(_pAddr))[0] == 0xff && \ 29 | ((u8 *)(_pAddr))[1] == 0xff && \ 30 | ((u8 *)(_pAddr))[2] == 0xff && \ 31 | ((u8 *)(_pAddr))[3] == 0xff && \ 32 | ((u8 *)(_pAddr))[4] == 0xff && \ 33 | ((u8 *)(_pAddr))[5] == 0xff) /* !< Is Broadcast Address? */ 34 | 35 | 36 | #endif /* #ifndef __INC_ETHERNET_H */ 37 | -------------------------------------------------------------------------------- /platform/platform_zte_zx296716_sdio.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2018 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #include /* pr_info(() */ 16 | #include /* msleep() */ 17 | #include "platform_zte_zx296716_sdio.h" /* sdio_reinit() and etc */ 18 | 19 | 20 | /* 21 | * Return: 22 | * 0: power on successfully 23 | * others: power on failed 24 | */ 25 | int platform_wifi_power_on(void) 26 | { 27 | int ret = 0; 28 | 29 | pr_info("######%s: disable--1--\n", __func__); 30 | extern_wifi_set_enable(0); 31 | /*msleep(500);*/ /* add in function:extern_wifi_set_enable */ 32 | pr_info("######%s: enable--2---\n", __func__); 33 | extern_wifi_set_enable(1); 34 | /*msleep(500);*/ 35 | sdio_reinit(); 36 | 37 | return ret; 38 | } 39 | 40 | void platform_wifi_power_off(void) 41 | { 42 | int card_val; 43 | 44 | pr_info("######%s:\n", __func__); 45 | #ifdef CONFIG_A16T03_BOARD 46 | card_val = sdio_host_is_null(); 47 | if (card_val) 48 | remove_card(); 49 | #endif /* CONFIG_A16T03_BOARD */ 50 | extern_wifi_set_enable(0); 51 | 52 | /*msleep(500);*/ 53 | } 54 | -------------------------------------------------------------------------------- /platform/platform_aml_s905_sdio.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2016 - 2018 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #include /* pr_info(() */ 16 | #include /* msleep() */ 17 | #include "platform_aml_s905_sdio.h" /* sdio_reinit() and etc */ 18 | 19 | 20 | /* 21 | * Return: 22 | * 0: power on successfully 23 | * others: power on failed 24 | */ 25 | int platform_wifi_power_on(void) 26 | { 27 | int ret = 0; 28 | 29 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 14, 0)) 30 | ret = wifi_setup_dt(); 31 | if (ret) { 32 | pr_err("%s: setup dt failed!!(%d)\n", __func__, ret); 33 | return -1; 34 | } 35 | #endif /* kernel < 3.14.0 */ 36 | 37 | #if 0 /* Seems redundancy? Already done before insert driver */ 38 | pr_info("######%s:\n", __func__); 39 | extern_wifi_set_enable(0); 40 | msleep(500); 41 | extern_wifi_set_enable(1); 42 | msleep(500); 43 | sdio_reinit(); 44 | #endif 45 | 46 | return ret; 47 | } 48 | 49 | void platform_wifi_power_off(void) 50 | { 51 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 14, 0)) 52 | wifi_teardown_dt(); 53 | #endif /* kernel < 3.14.0 */ 54 | } 55 | -------------------------------------------------------------------------------- /platform/platform_ARM_WMT_sdio.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #include 16 | #include 17 | #include 18 | 19 | extern void wmt_detect_sdio2(void); 20 | extern void force_remove_sdio2(void); 21 | 22 | int platform_wifi_power_on(void) 23 | { 24 | int err = 0; 25 | err = gpio_request(WMT_PIN_GP62_SUSGPIO1, "wifi_chip_en"); 26 | if (err < 0) { 27 | printk("request gpio for rtl8188eu failed!\n"); 28 | return err; 29 | } 30 | gpio_direction_output(WMT_PIN_GP62_SUSGPIO1, 0);/* pull sus_gpio1 to 0 to open vcc_wifi. */ 31 | printk("power on rtl8189.\n"); 32 | msleep(500); 33 | wmt_detect_sdio2(); 34 | printk("[rtl8189es] %s: new card, power on.\n", __FUNCTION__); 35 | return err; 36 | } 37 | 38 | void platform_wifi_power_off(void) 39 | { 40 | force_remove_sdio2(); 41 | 42 | gpio_direction_output(WMT_PIN_GP62_SUSGPIO1, 1);/* pull sus_gpio1 to 1 to close vcc_wifi. */ 43 | printk("power off rtl8189.\n"); 44 | gpio_free(WMT_PIN_GP62_SUSGPIO1); 45 | printk("[rtl8189es] %s: remove card, power off.\n", __FUNCTION__); 46 | } 47 | -------------------------------------------------------------------------------- /include/rtl8188f_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8188F_LED_H__ 16 | #define __RTL8188F_LED_H__ 17 | #ifdef CONFIG_RTW_SW_LED 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | 24 | /* ******************************************************************************** 25 | * Interface to manipulate LED objects. 26 | * ******************************************************************************** */ 27 | #ifdef CONFIG_USB_HCI 28 | void rtl8188fu_InitSwLeds(PADAPTER padapter); 29 | void rtl8188fu_DeInitSwLeds(PADAPTER padapter); 30 | #endif 31 | #ifdef CONFIG_SDIO_HCI 32 | void rtl8188fs_InitSwLeds(PADAPTER padapter); 33 | void rtl8188fs_DeInitSwLeds(PADAPTER padapter); 34 | #endif 35 | #ifdef CONFIG_GSPI_HCI 36 | void rtl8188fs_InitSwLeds(PADAPTER padapter); 37 | void rtl8188fs_DeInitSwLeds(PADAPTER padapter); 38 | #endif 39 | #ifdef CONFIG_PCI_HCI 40 | void rtl8188fe_InitSwLeds(PADAPTER padapter); 41 | void rtl8188fe_DeInitSwLeds(PADAPTER padapter); 42 | #endif 43 | 44 | #endif 45 | #endif/*CONFIG_RTW_SW_LED*/ 46 | -------------------------------------------------------------------------------- /include/rtl8723b_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8723B_LED_H__ 16 | #define __RTL8723B_LED_H__ 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | #ifdef CONFIG_RTW_SW_LED 23 | /* ******************************************************************************** 24 | * Interface to manipulate LED objects. 25 | * ******************************************************************************** */ 26 | #ifdef CONFIG_USB_HCI 27 | void rtl8723bu_InitSwLeds(PADAPTER padapter); 28 | void rtl8723bu_DeInitSwLeds(PADAPTER padapter); 29 | #endif 30 | #ifdef CONFIG_SDIO_HCI 31 | void rtl8723bs_InitSwLeds(PADAPTER padapter); 32 | void rtl8723bs_DeInitSwLeds(PADAPTER padapter); 33 | #endif 34 | #ifdef CONFIG_GSPI_HCI 35 | void rtl8723bs_InitSwLeds(PADAPTER padapter); 36 | void rtl8723bs_DeInitSwLeds(PADAPTER padapter); 37 | #endif 38 | #ifdef CONFIG_PCI_HCI 39 | void rtl8723be_InitSwLeds(PADAPTER padapter); 40 | void rtl8723be_DeInitSwLeds(PADAPTER padapter); 41 | #endif 42 | 43 | #endif 44 | #endif/*CONFIG_RTW_SW_LED*/ 45 | -------------------------------------------------------------------------------- /include/rtw_ioctl.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTW_IOCTL_H_ 16 | #define _RTW_IOCTL_H_ 17 | 18 | enum oid_type { 19 | QUERY_OID, 20 | SET_OID 21 | }; 22 | 23 | struct oid_par_priv { 24 | void *adapter_context; 25 | NDIS_OID oid; 26 | void *information_buf; 27 | u32 information_buf_len; 28 | u32 *bytes_rw; 29 | u32 *bytes_needed; 30 | enum oid_type type_of_oid; 31 | u32 dbg; 32 | }; 33 | 34 | #if defined(PLATFORM_LINUX) && defined(CONFIG_WIRELESS_EXT) 35 | extern struct iw_handler_def rtw_handlers_def; 36 | #endif 37 | 38 | extern void rtw_request_wps_pbc_event(_adapter *padapter); 39 | 40 | #ifdef CONFIG_APPEND_VENDOR_IE_ENABLE 41 | extern int rtw_vendor_ie_get_raw_data(struct net_device *, u32, char *, u32); 42 | extern int rtw_vendor_ie_get_data(struct net_device*, int , char*); 43 | extern int rtw_vendor_ie_get(struct net_device *, struct iw_request_info *, union iwreq_data *, char *); 44 | extern int rtw_vendor_ie_set(struct net_device*, struct iw_request_info*, union iwreq_data*, char*); 45 | #endif 46 | 47 | #endif /* #ifndef __INC_CEINFO_ */ 48 | -------------------------------------------------------------------------------- /hal/phydm/phydm_direct_bf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __PHYDM_DIR_BF_H__ 27 | #define __PHYDM_DIR_BF_H__ 28 | 29 | #ifdef CONFIG_DIRECTIONAL_BF 30 | #define ANGLE_NUM 12 31 | 32 | /*@ 33 | * ============================================================ 34 | * function prototype 35 | * ============================================================ 36 | */ 37 | void phydm_iq_gen_en(void *dm_void); 38 | void phydm_dis_cdd(void *dm_void); 39 | void phydm_pathb_q_matrix_rotate_en(void *dm_void); 40 | void phydm_pathb_q_matrix_rotate(void *dm_void, u16 idx); 41 | void phydm_set_direct_bfer(void *dm_void, u16 phs_idx, u8 su_idx); 42 | void phydm_set_direct_bfer_txdesc_en(void *dm_void, u8 enable); 43 | #endif 44 | #endif 45 | -------------------------------------------------------------------------------- /include/rtl8710b_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8710B_LED_H__ 16 | #define __RTL8710B_LED_H__ 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | #ifdef CONFIG_RTW_SW_LED 23 | /* ******************************************************************************** 24 | * Interface to manipulate LED objects. 25 | * ******************************************************************************** */ 26 | #ifdef CONFIG_USB_HCI 27 | void rtl8710bu_InitSwLeds(PADAPTER padapter); 28 | void rtl8710bu_DeInitSwLeds(PADAPTER padapter); 29 | #endif 30 | #ifdef CONFIG_SDIO_HCI 31 | void rtl8710bs_InitSwLeds(PADAPTER padapter); 32 | void rtl8710bs_DeInitSwLeds(PADAPTER padapter); 33 | #endif 34 | #ifdef CONFIG_GSPI_HCI 35 | void rtl8710bs_InitSwLeds(PADAPTER padapter); 36 | void rtl8710bs_DeInitSwLeds(PADAPTER padapter); 37 | #endif 38 | #ifdef CONFIG_PCI_HCI 39 | void rtl8710be_InitSwLeds(PADAPTER padapter); 40 | void rtl8710be_DeInitSwLeds(PADAPTER padapter); 41 | #endif 42 | 43 | #endif /*#ifdef CONFIG_RTW_SW_LED*/ 44 | #endif 45 | -------------------------------------------------------------------------------- /include/rtl8723d_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8723D_LED_H__ 16 | #define __RTL8723D_LED_H__ 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | #ifdef CONFIG_RTW_SW_LED 23 | /* ******************************************************************************** 24 | * Interface to manipulate LED objects. 25 | * ******************************************************************************** */ 26 | #ifdef CONFIG_USB_HCI 27 | void rtl8723du_InitSwLeds(PADAPTER padapter); 28 | void rtl8723du_DeInitSwLeds(PADAPTER padapter); 29 | #endif 30 | #ifdef CONFIG_SDIO_HCI 31 | void rtl8723ds_InitSwLeds(PADAPTER padapter); 32 | void rtl8723ds_DeInitSwLeds(PADAPTER padapter); 33 | #endif 34 | #ifdef CONFIG_GSPI_HCI 35 | void rtl8723ds_InitSwLeds(PADAPTER padapter); 36 | void rtl8723ds_DeInitSwLeds(PADAPTER padapter); 37 | #endif 38 | #ifdef CONFIG_PCI_HCI 39 | void rtl8723de_InitSwLeds(PADAPTER padapter); 40 | void rtl8723de_DeInitSwLeds(PADAPTER padapter); 41 | #endif 42 | 43 | #endif /*#ifdef CONFIG_RTW_SW_LED*/ 44 | #endif 45 | -------------------------------------------------------------------------------- /include/sdio_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __SDIO_HAL_H__ 16 | #define __SDIO_HAL_H__ 17 | 18 | void sd_int_dpc(PADAPTER padapter); 19 | u8 rtw_set_hal_ops(_adapter *padapter); 20 | 21 | #ifdef CONFIG_RTL8188E 22 | void rtl8188es_set_hal_ops(PADAPTER padapter); 23 | #endif 24 | 25 | #ifdef CONFIG_RTL8723B 26 | void rtl8723bs_set_hal_ops(PADAPTER padapter); 27 | #endif 28 | 29 | #ifdef CONFIG_RTL8821A 30 | void rtl8821as_set_hal_ops(PADAPTER padapter); 31 | #endif 32 | 33 | #ifdef CONFIG_RTL8192E 34 | void rtl8192es_set_hal_ops(PADAPTER padapter); 35 | #endif 36 | 37 | #ifdef CONFIG_RTL8703B 38 | void rtl8703bs_set_hal_ops(PADAPTER padapter); 39 | #endif 40 | 41 | #ifdef CONFIG_RTL8723D 42 | void rtl8723ds_set_hal_ops(PADAPTER padapter); 43 | #endif 44 | 45 | #ifdef CONFIG_RTL8188F 46 | void rtl8188fs_set_hal_ops(PADAPTER padapter); 47 | #endif 48 | 49 | #ifdef CONFIG_RTL8188GTV 50 | void rtl8188gtvs_set_hal_ops(PADAPTER padapter); 51 | #endif 52 | 53 | #ifdef CONFIG_RTL8192F 54 | void rtl8192fs_set_hal_ops(PADAPTER padapter); 55 | #endif 56 | 57 | #endif /* __SDIO_HAL_H__ */ 58 | -------------------------------------------------------------------------------- /include/rtl8703b_led.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8703B_LED_H__ 16 | #define __RTL8703B_LED_H__ 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | #ifdef CONFIG_RTW_SW_LED 23 | /* ******************************************************************************** 24 | * Interface to manipulate LED objects. 25 | * ******************************************************************************** */ 26 | #ifdef CONFIG_USB_HCI 27 | void rtl8703bu_InitSwLeds(PADAPTER padapter); 28 | void rtl8703bu_DeInitSwLeds(PADAPTER padapter); 29 | #endif 30 | #ifdef CONFIG_SDIO_HCI 31 | void rtl8703bs_InitSwLeds(PADAPTER padapter); 32 | void rtl8703bs_DeInitSwLeds(PADAPTER padapter); 33 | #endif 34 | #ifdef CONFIG_GSPI_HCI 35 | void rtl8703bs_InitSwLeds(PADAPTER padapter); 36 | void rtl8703bs_DeInitSwLeds(PADAPTER padapter); 37 | #endif 38 | #ifdef CONFIG_PCI_HCI 39 | void rtl8703be_InitSwLeds(PADAPTER padapter); 40 | void rtl8703be_DeInitSwLeds(PADAPTER padapter); 41 | #endif 42 | 43 | #endif/*CONFIG_RTW_SW_LED*/ 44 | #endif /*__RTL8703B_LED_H__*/ 45 | -------------------------------------------------------------------------------- /hal/phydm/rtl8188e/phydm_regconfig8188e.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __INC_ODM_REGCONFIG_H_8188E 16 | #define __INC_ODM_REGCONFIG_H_8188E 17 | 18 | #if (RTL8188E_SUPPORT == 1) 19 | 20 | void odm_config_rf_reg_8188e(struct dm_struct *dm, u32 addr, u32 data, 21 | enum rf_path RF_PATH, u32 reg_addr); 22 | 23 | void odm_config_rf_radio_a_8188e(struct dm_struct *dm, u32 addr, u32 data); 24 | 25 | void odm_config_rf_radio_b_8188e(struct dm_struct *dm, u32 addr, u32 data); 26 | 27 | void odm_config_mac_8188e(struct dm_struct *dm, u32 addr, u8 data); 28 | 29 | void odm_config_bb_agc_8188e(struct dm_struct *dm, u32 addr, u32 bitmask, 30 | u32 data); 31 | 32 | void odm_config_bb_phy_reg_pg_8188e(struct dm_struct *dm, u32 band, u32 rf_path, 33 | u32 tx_num, u32 addr, u32 bitmask, 34 | u32 data); 35 | 36 | void odm_config_bb_phy_8188e(struct dm_struct *dm, u32 addr, u32 bitmask, 37 | u32 data); 38 | 39 | void odm_config_bb_txpwr_lmt_8188e(struct dm_struct *dm, u8 *regulation, 40 | u8 *band, u8 *bandwidth, u8 *rate_section, 41 | u8 *rf_path, u8 *channel, u8 *power_limit); 42 | 43 | #endif 44 | #endif /* end of SUPPORT */ 45 | -------------------------------------------------------------------------------- /include/pci_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __PCI_HAL_H__ 16 | #define __PCI_HAL_H__ 17 | 18 | #ifdef CONFIG_RTL8188E 19 | void rtl8188ee_set_hal_ops(_adapter *padapter); 20 | #endif 21 | 22 | #if defined(CONFIG_RTL8812A) || defined(CONFIG_RTL8821A) 23 | void rtl8812ae_set_hal_ops(_adapter *padapter); 24 | #endif 25 | 26 | #if defined(CONFIG_RTL8192E) 27 | void rtl8192ee_set_hal_ops(_adapter *padapter); 28 | #endif 29 | 30 | #if defined(CONFIG_RTL8192F) 31 | void rtl8192fe_set_hal_ops(_adapter *padapter); 32 | #endif 33 | 34 | #ifdef CONFIG_RTL8723B 35 | void rtl8723be_set_hal_ops(_adapter *padapter); 36 | #endif 37 | 38 | #ifdef CONFIG_RTL8723D 39 | void rtl8723de_set_hal_ops(_adapter *padapter); 40 | #endif 41 | 42 | #ifdef CONFIG_RTL8814A 43 | void rtl8814ae_set_hal_ops(_adapter *padapter); 44 | #endif 45 | 46 | #ifdef CONFIG_RTL8822B 47 | void rtl8822be_set_hal_ops(PADAPTER padapter); 48 | #endif 49 | 50 | #ifdef CONFIG_RTL8822C 51 | void rtl8822ce_set_hal_ops(PADAPTER padapter); 52 | #endif 53 | 54 | #ifdef CONFIG_RTL8814B 55 | void rtl8814be_set_hal_ops(PADAPTER padapter); 56 | #endif 57 | 58 | u8 rtw_set_hal_ops(_adapter *padapter); 59 | 60 | #endif /* __PCIE_HAL_H__ */ 61 | -------------------------------------------------------------------------------- /include/rtw_rm_util.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2019 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifndef _RTW_RM_UTIL_H_ 17 | #define _RTW_RM_UTIL_H_ 18 | /* 19 | * define the following channels as the max channels in each channel plan. 20 | * 2G, total 14 chnls 21 | * {1,2,3,4,5,6,7,8,9,10,11,12,13,14} 22 | * 5G, total 25 chnls 23 | * {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,144,149,153,157,161,165} 24 | */ 25 | #ifndef MAX 26 | #define MAX(x, y) (((x) > (y)) ? (x) : (y)) 27 | #endif 28 | 29 | u8 rm_get_oper_class_via_ch(u8 ch); 30 | u8 rm_get_ch_set( struct rtw_ieee80211_channel *pch_set, u8 op_class, u8 ch_num); 31 | u8 rm_get_bcn_rsni(struct rm_obj *prm, struct wlan_network *pnetwork); 32 | u8 rm_get_bcn_rcpi(struct rm_obj *prm, struct wlan_network *pnetwork); 33 | u8 rm_get_frame_rsni(struct rm_obj *prm, union recv_frame *pframe); 34 | u8 translate_percentage_to_rcpi(u32 SignalStrengthIndex); 35 | u8 translate_dbm_to_rcpi(s8 SignalPower); 36 | int is_wildcard_bssid(u8 *bssid); 37 | 38 | int rm_get_path_a_max_tx_power(_adapter *adapter, s8 *path_a); 39 | int rm_get_tx_power(PADAPTER adapter, enum rf_path path, enum MGN_RATE rate, s8 *pwr); 40 | int rm_get_rx_sensitivity(PADAPTER adapter, enum channel_width bw, enum MGN_RATE rate, s8 *pwr); 41 | 42 | #endif /* _RTW_RM_UTIL_H_ */ 43 | -------------------------------------------------------------------------------- /include/rtw_ioctl_set.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTW_IOCTL_SET_H_ 16 | #define __RTW_IOCTL_SET_H_ 17 | 18 | u8 rtw_set_802_11_authentication_mode(_adapter *pdapter, NDIS_802_11_AUTHENTICATION_MODE authmode); 19 | u8 rtw_set_802_11_bssid(_adapter *padapter, u8 *bssid); 20 | u8 rtw_set_802_11_add_wep(_adapter *padapter, NDIS_802_11_WEP *wep); 21 | u8 rtw_set_802_11_disassociate(_adapter *padapter); 22 | u8 rtw_set_802_11_bssid_list_scan(_adapter *padapter, struct sitesurvey_parm *pparm); 23 | #ifdef CONFIG_RTW_ACS 24 | u8 rtw_set_acs_sitesurvey(_adapter *adapter); 25 | #endif 26 | u8 rtw_set_802_11_infrastructure_mode(_adapter *padapter, NDIS_802_11_NETWORK_INFRASTRUCTURE networktype, u8 flags); 27 | u8 rtw_set_802_11_ssid(_adapter *padapter, NDIS_802_11_SSID *ssid); 28 | u8 rtw_set_802_11_connect(_adapter *padapter, u8 *bssid, NDIS_802_11_SSID *ssid); 29 | 30 | u8 rtw_validate_bssid(u8 *bssid); 31 | u8 rtw_validate_ssid(NDIS_802_11_SSID *ssid); 32 | 33 | u16 rtw_get_cur_max_rate(_adapter *adapter); 34 | int rtw_set_scan_mode(_adapter *adapter, RT_SCAN_TYPE scan_mode); 35 | int rtw_set_channel_plan(_adapter *adapter, u8 channel_plan); 36 | int rtw_set_country(_adapter *adapter, const char *country_code); 37 | int rtw_set_band(_adapter *adapter, u8 band); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: Build 2 | 3 | on: [pull_request] 4 | 5 | jobs: 6 | fetchKernelData: 7 | runs-on: ubuntu-latest 8 | outputs: 9 | matrix: ${{ steps.set-matrix.outputs.matrix }} 10 | steps: 11 | - id: set-matrix 12 | run: | 13 | JSON=$(curl https://www.kernel.org/releases.json) 14 | VERSIONSARRAY=$(echo $JSON | jq -c '[.releases[] | {version: .version, moniker: .moniker} | select(.moniker != "linux-next") | .version]') 15 | echo ::set-output name=matrix::${VERSIONSARRAY} 16 | 17 | build: 18 | needs: fetchKernelData 19 | runs-on: ubuntu-latest 20 | strategy: 21 | fail-fast: false 22 | matrix: 23 | version: ${{fromJson(needs.fetchKernelData.outputs.matrix)}} 24 | #version: [4.9.248, 4.4.248] 25 | steps: 26 | - name: download-Kernel 27 | env: 28 | VERSION: ${{matrix.version }} 29 | run: | 30 | KERNEL_URL=https://kernel.ubuntu.com/~kernel-ppa/mainline/ 31 | KERNEL_URL_DETAILS=$(wget --quiet -O - ${KERNEL_URL}v${VERSION}/ | grep -A8 "Build for amd64\|Test amd64") 32 | ALL_DEB=$(echo "$KERNEL_URL_DETAILS" | grep -m1 'all.deb' | cut -d '"' -f 2) 33 | AMD64_DEB=$(echo "$KERNEL_URL_DETAILS" | grep -m1 "amd64.deb" | cut -d '"' -f 2) 34 | [ -z "$ALL_DEB" ] && exit 1 35 | [ -z "$AMD64_DEB" ] && exit 2 36 | wget -nv ${KERNEL_URL}v${VERSION}/$AMD64_DEB 37 | wget -nv ${KERNEL_URL}v${VERSION}/$ALL_DEB 38 | sudo dpkg --force-all -i *.deb 39 | sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-14 14 40 | sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-14 14 41 | echo "KVER=$(echo $ALL_DEB | cut -d '_' -f 2 | rev | cut -c14- | rev)-generic" >> $GITHUB_ENV 42 | - uses: actions/checkout@v2 43 | - name: build 44 | run: make KVER=$KVER CONFIG_PLATFORM_I386_PC=y CC=cc 45 | -------------------------------------------------------------------------------- /hal/phydm/rtl8188e/phydm_rtl8188e.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | /* ************************************************************ 17 | * include files 18 | * ************************************************************ */ 19 | 20 | #include "mp_precomp.h" 21 | 22 | #include "../phydm_precomp.h" 23 | 24 | #if (RTL8188E_SUPPORT == 1) 25 | 26 | s8 phydm_cck_rssi_8188e(struct dm_struct *dm, u16 lna_idx, u8 vga_idx) 27 | { 28 | s8 rx_pwr_all = 0; 29 | s8 lna_gain = 0; 30 | /*only use lna0/1/2/3/7*/ 31 | s8 lna_gain_table_0[8] = {17, -1, -13, 0, -32, -35, -38, -36}; 32 | /*only use lna3 /7*/ 33 | s8 lna_gain_table_1[8] = {29, 20, 12, 3, -6, -15, -24, -33}; 34 | /*only use lna1/3/5/7*/ 35 | s8 lna_gain_table_2[8] = {17, -1, -13, -17, -32, -43, -38, -47}; 36 | 37 | if (dm->cut_version >= ODM_CUT_I) { /*SMIC*/ 38 | if (dm->ext_lna == 0x1) { 39 | switch (dm->type_glna) { 40 | case 0x2: /*eLNA 14dB*/ 41 | lna_gain = lna_gain_table_2[lna_idx]; 42 | break; 43 | default: 44 | lna_gain = lna_gain_table_0[lna_idx]; 45 | break; 46 | } 47 | } else { 48 | lna_gain = lna_gain_table_0[lna_idx]; 49 | } 50 | } else { /*TSMC*/ 51 | lna_gain = lna_gain_table_1[lna_idx]; 52 | } 53 | 54 | rx_pwr_all = lna_gain - (2 * vga_idx); 55 | 56 | return rx_pwr_all; 57 | } 58 | #endif 59 | -------------------------------------------------------------------------------- /include/sdio_ops_xp.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _SDIO_OPS_XP_H_ 16 | #define _SDIO_OPS_XP_H_ 17 | 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | 24 | #ifdef PLATFORM_OS_XP 25 | 26 | 27 | extern u8 sdbus_cmd52r_xp(struct intf_priv *pintfpriv, u32 addr); 28 | 29 | 30 | extern void sdbus_cmd52w_xp(struct intf_priv *pintfpriv, u32 addr, u8 val8); 31 | 32 | 33 | uint sdbus_read_blocks_to_membuf_xp(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf); 34 | 35 | extern uint sdbus_read_bytes_to_membuf_xp(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf); 36 | 37 | 38 | extern uint sdbus_write_blocks_from_membuf_xp(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf, u8 async); 39 | 40 | extern uint sdbus_write_bytes_from_membuf_xp(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf); 41 | extern u8 sdbus_func1cmd52r_xp(struct intf_priv *pintfpriv, u32 addr); 42 | extern void sdbus_func1cmd52w_xp(struct intf_priv *pintfpriv, u32 addr, u8 val8); 43 | extern uint sdbus_read_reg(struct intf_priv *pintfpriv, u32 addr, u32 cnt, void *pdata); 44 | extern uint sdbus_write_reg(struct intf_priv *pintfpriv, u32 addr, u32 cnt, void *pdata); 45 | extern void sdio_read_int(_adapter *padapter, u32 addr, u8 sz, void *pdata); 46 | 47 | #endif 48 | 49 | #endif 50 | -------------------------------------------------------------------------------- /include/sdio_ops_ce.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _SDIO_OPS_WINCE_H_ 16 | #define _SDIO_OPS_WINCE_H_ 17 | 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | 24 | #ifdef PLATFORM_OS_CE 25 | 26 | 27 | extern u8 sdbus_cmd52r_ce(struct intf_priv *pintfpriv, u32 addr); 28 | 29 | 30 | extern void sdbus_cmd52w_ce(struct intf_priv *pintfpriv, u32 addr, u8 val8); 31 | 32 | 33 | uint sdbus_read_blocks_to_membuf_ce(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf); 34 | 35 | extern uint sdbus_read_bytes_to_membuf_ce(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf); 36 | 37 | 38 | extern uint sdbus_write_blocks_from_membuf_ce(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf, u8 async); 39 | 40 | extern uint sdbus_write_bytes_from_membuf_ce(struct intf_priv *pintfpriv, u32 addr, u32 cnt, u8 *pbuf); 41 | extern u8 sdbus_func1cmd52r_ce(struct intf_priv *pintfpriv, u32 addr); 42 | extern void sdbus_func1cmd52w_ce(struct intf_priv *pintfpriv, u32 addr, u8 val8); 43 | extern uint sdbus_read_reg(struct intf_priv *pintfpriv, u32 addr, u32 cnt, void *pdata); 44 | extern uint sdbus_write_reg(struct intf_priv *pintfpriv, u32 addr, u32 cnt, void *pdata); 45 | extern void sdio_read_int(_adapter *padapter, u32 addr, u8 sz, void *pdata); 46 | 47 | #endif 48 | 49 | #endif 50 | -------------------------------------------------------------------------------- /hal/phydm/phydm_rssi_monitor.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __PHYDM_RSSI_MONITOR_H__ 27 | #define __PHYDM_RSSI_MONITOR_H__ 28 | 29 | #define RSSI_MONITOR_VERSION "2.0" 30 | 31 | /* @1 ============================================================ 32 | * 1 Definition 33 | * 1 ============================================================ 34 | */ 35 | 36 | /* @1 ============================================================ 37 | * 1 structure 38 | * 1 ============================================================ 39 | */ 40 | 41 | /* @1 ============================================================ 42 | * 1 enumeration 43 | * 1 ============================================================ 44 | */ 45 | 46 | /* @1 ============================================================ 47 | * 1 function prototype 48 | * 1 ============================================================ 49 | */ 50 | 51 | void phydm_rssi_monitor_check(void *dm_void); 52 | 53 | void phydm_rssi_monitor_init(void *dm_void); 54 | 55 | #endif 56 | -------------------------------------------------------------------------------- /include/rtl8814bu_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8814BU_HAL_H_ 16 | #define _RTL8814BU_HAL_H_ 17 | 18 | #ifdef CONFIG_USB_HCI 19 | #include /* PADAPTER */ 20 | 21 | #ifdef CONFIG_USB_HCI 22 | #ifdef USB_PACKET_OFFSET_SZ 23 | #define PACKET_OFFSET_SZ (USB_PACKET_OFFSET_SZ) 24 | #else 25 | #define PACKET_OFFSET_SZ (8) 26 | #endif 27 | #define TXDESC_OFFSET (TXDESC_SIZE + PACKET_OFFSET_SZ) 28 | #endif 29 | 30 | /* undefine MAX_RECVBUF_SZ from rtl8822c_hal.h */ 31 | #ifdef MAX_RECVBUF_SZ 32 | #undef MAX_RECVBUF_SZ 33 | #endif 34 | 35 | /* recv_buffer must be large than usb agg size */ 36 | #ifndef MAX_RECVBUF_SZ 37 | #ifndef CONFIG_MINIMAL_MEMORY_USAGE 38 | #ifdef CONFIG_PLATFORM_NOVATEK_NT72668 39 | #define MAX_RECVBUF_SZ (15360) /* 15k */ 40 | #elif defined(CONFIG_PLATFORM_HISILICON) 41 | /* use 16k to workaround for HISILICON platform */ 42 | #define MAX_RECVBUF_SZ (16384) 43 | #else 44 | #define MAX_RECVBUF_SZ (32768) 45 | #endif 46 | #else 47 | #define MAX_RECVBUF_SZ (4000) 48 | #endif 49 | #endif /* !MAX_RECVBUF_SZ */ 50 | 51 | /* rtl8814bu_ops.c */ 52 | void rtl8814bu_set_hal_ops(PADAPTER padapter); 53 | void rtl8814bu_set_hw_type(struct dvobj_priv *pdvobj); 54 | 55 | /* rtl8814bu_io.c */ 56 | void rtl8814bu_set_intf_ops(struct _io_ops *pops); 57 | 58 | #endif /* CONFIG_USB_HCI */ 59 | 60 | 61 | #endif /* _RTL8814BU_HAL_H_ */ 62 | -------------------------------------------------------------------------------- /include/rtl8822bu_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8822BU_HAL_H_ 16 | #define _RTL8822BU_HAL_H_ 17 | 18 | #ifdef CONFIG_USB_HCI 19 | #include /* PADAPTER */ 20 | 21 | #ifdef CONFIG_USB_HCI 22 | #ifdef USB_PACKET_OFFSET_SZ 23 | #define PACKET_OFFSET_SZ (USB_PACKET_OFFSET_SZ) 24 | #else 25 | #define PACKET_OFFSET_SZ (8) 26 | #endif 27 | #define TXDESC_OFFSET (TXDESC_SIZE + PACKET_OFFSET_SZ) 28 | #endif 29 | 30 | /* undefine MAX_RECVBUF_SZ from rtl8822b_hal.h */ 31 | #ifdef MAX_RECVBUF_SZ 32 | #undef MAX_RECVBUF_SZ 33 | #endif 34 | 35 | /* recv_buffer must be large than usb agg size */ 36 | #ifndef MAX_RECVBUF_SZ 37 | #ifndef CONFIG_MINIMAL_MEMORY_USAGE 38 | #ifdef CONFIG_PLATFORM_NOVATEK_NT72668 39 | #define MAX_RECVBUF_SZ (15360) /* 15k */ 40 | #elif defined(CONFIG_PLATFORM_HISILICON) 41 | /* use 16k to workaround for HISILICON platform */ 42 | #define MAX_RECVBUF_SZ (16384) 43 | #else 44 | #define MAX_RECVBUF_SZ (32768) 45 | #endif 46 | #else 47 | #define MAX_RECVBUF_SZ (4000) 48 | #endif 49 | #endif /* !MAX_RECVBUF_SZ */ 50 | 51 | /* rtl8822bu_ops.c */ 52 | void rtl8822bu_set_hal_ops(PADAPTER padapter); 53 | void rtl8822bu_set_hw_type(struct dvobj_priv *pdvobj); 54 | 55 | /* rtl8822bu_io.c */ 56 | void rtl8822bu_set_intf_ops(struct _io_ops *pops); 57 | 58 | #endif /* CONFIG_USB_HCI */ 59 | 60 | 61 | #endif /* _RTL8822BU_HAL_H_ */ 62 | -------------------------------------------------------------------------------- /include/rtl8822cu_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2015 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTL8822CU_HAL_H_ 16 | #define _RTL8822CU_HAL_H_ 17 | 18 | #ifdef CONFIG_USB_HCI 19 | #include /* PADAPTER */ 20 | 21 | #ifdef CONFIG_USB_HCI 22 | #ifdef USB_PACKET_OFFSET_SZ 23 | #define PACKET_OFFSET_SZ (USB_PACKET_OFFSET_SZ) 24 | #else 25 | #define PACKET_OFFSET_SZ (8) 26 | #endif 27 | #define TXDESC_OFFSET (TXDESC_SIZE + PACKET_OFFSET_SZ) 28 | #endif 29 | 30 | /* undefine MAX_RECVBUF_SZ from rtl8822c_hal.h */ 31 | #ifdef MAX_RECVBUF_SZ 32 | #undef MAX_RECVBUF_SZ 33 | #endif 34 | 35 | /* recv_buffer must be large than usb agg size */ 36 | #ifndef MAX_RECVBUF_SZ 37 | #ifndef CONFIG_MINIMAL_MEMORY_USAGE 38 | #ifdef CONFIG_PLATFORM_NOVATEK_NT72668 39 | #define MAX_RECVBUF_SZ (15360) /* 15k */ 40 | #elif defined(CONFIG_PLATFORM_HISILICON) 41 | /* use 16k to workaround for HISILICON platform */ 42 | #define MAX_RECVBUF_SZ (16384) 43 | #else 44 | #define MAX_RECVBUF_SZ (32768) 45 | #endif 46 | #else 47 | #define MAX_RECVBUF_SZ (4000) 48 | #endif 49 | #endif /* !MAX_RECVBUF_SZ */ 50 | 51 | /* rtl8822cu_ops.c */ 52 | void rtl8822cu_set_hal_ops(PADAPTER padapter); 53 | void rtl8822cu_set_hw_type(struct dvobj_priv *pdvobj); 54 | 55 | /* rtl8822cu_io.c */ 56 | void rtl8822cu_set_intf_ops(struct _io_ops *pops); 57 | 58 | #endif /* CONFIG_USB_HCI */ 59 | 60 | 61 | #endif /* _RTL8822CU_HAL_H_ */ 62 | -------------------------------------------------------------------------------- /hal/phydm/rtl8188e/halhwimg8188e_bb.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | /*Image2HeaderVersion: 3.5.2*/ 17 | #if (RTL8188E_SUPPORT == 1) 18 | #ifndef __INC_MP_BB_HW_IMG_8188E_H 19 | #define __INC_MP_BB_HW_IMG_8188E_H 20 | 21 | 22 | /****************************************************************************** 23 | * agc_tab.TXT 24 | ******************************************************************************/ 25 | 26 | void 27 | odm_read_and_config_mp_8188e_agc_tab( /* tc: Test Chip, mp: mp Chip*/ 28 | struct dm_struct *dm); 29 | u32 odm_get_version_mp_8188e_agc_tab(void); 30 | 31 | /****************************************************************************** 32 | * phy_reg.TXT 33 | ******************************************************************************/ 34 | 35 | void 36 | odm_read_and_config_mp_8188e_phy_reg( /* tc: Test Chip, mp: mp Chip*/ 37 | struct dm_struct *dm); 38 | u32 odm_get_version_mp_8188e_phy_reg(void); 39 | 40 | /****************************************************************************** 41 | * phy_reg_pg.TXT 42 | ******************************************************************************/ 43 | 44 | void 45 | odm_read_and_config_mp_8188e_phy_reg_pg( /* tc: Test Chip, mp: mp Chip*/ 46 | struct dm_struct *dm); 47 | u32 odm_get_version_mp_8188e_phy_reg_pg(void); 48 | 49 | #endif 50 | #endif /* end of HWIMG_SUPPORT*/ 51 | 52 | -------------------------------------------------------------------------------- /include/rtw_sreset.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTW_SRESET_H_ 16 | #define _RTW_SRESET_H_ 17 | 18 | /* #include */ 19 | 20 | enum { 21 | SRESET_TGP_NULL = 0, 22 | SRESET_TGP_XMIT_STATUS = 1, 23 | SRESET_TGP_LINK_STATUS = 2, 24 | SRESET_TGP_INFO = 99, 25 | }; 26 | 27 | struct sreset_priv { 28 | _mutex silentreset_mutex; 29 | u8 silent_reset_inprogress; 30 | u8 Wifi_Error_Status; 31 | systime last_tx_time; 32 | systime last_tx_complete_time; 33 | 34 | s32 dbg_trigger_point; 35 | u64 self_dect_tx_cnt; 36 | u64 self_dect_rx_cnt; 37 | u64 self_dect_fw_cnt; 38 | u64 tx_dma_status_cnt; 39 | u64 rx_dma_status_cnt; 40 | u8 rx_cnt; 41 | u8 self_dect_fw; 42 | u8 self_dect_case; 43 | u16 last_mac_rxff_ptr; 44 | u8 dbg_sreset_ctrl; 45 | }; 46 | 47 | 48 | 49 | #define WIFI_STATUS_SUCCESS 0 50 | #define USB_VEN_REQ_CMD_FAIL BIT0 51 | #define USB_READ_PORT_FAIL BIT1 52 | #define USB_WRITE_PORT_FAIL BIT2 53 | #define WIFI_MAC_TXDMA_ERROR BIT3 54 | #define WIFI_TX_HANG BIT4 55 | #define WIFI_RX_HANG BIT5 56 | #define WIFI_IF_NOT_EXIST BIT6 57 | 58 | void sreset_init_value(_adapter *padapter); 59 | void sreset_reset_value(_adapter *padapter); 60 | u8 sreset_get_wifi_status(_adapter *padapter); 61 | void sreset_set_wifi_error_status(_adapter *padapter, u32 status); 62 | void sreset_set_trigger_point(_adapter *padapter, s32 tgp); 63 | bool sreset_inprogress(_adapter *padapter); 64 | void sreset_reset(_adapter *padapter); 65 | 66 | #endif 67 | -------------------------------------------------------------------------------- /hal/phydm/rtl8188e/hal8188ereg.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | /* ************************************************************ 16 | * File Name: hal8188ereg.h 17 | * 18 | * Description: 19 | * 20 | * This file is for RTL8188E register definition. 21 | * 22 | * 23 | * ************************************************************ */ 24 | #ifndef __HAL_8188E_REG_H__ 25 | #define __HAL_8188E_REG_H__ 26 | 27 | /* 28 | * Register Definition 29 | * */ 30 | #define TRX_ANTDIV_PATH 0x860 31 | #define RX_ANTDIV_PATH 0xb2c 32 | #define ODM_R_A_AGC_CORE1_8188E 0xc50 33 | 34 | #define REG_GPIO_EXT_CTRL 0x0060 35 | 36 | #define REG_MCUFWDL_8188E 0x0080 37 | #define REG_FW_DBG_STATUS_8188E 0x0088 38 | #define REG_FW_DBG_CTRL_8188E 0x008F 39 | 40 | #define REG_CR_8188E 0x0100 41 | 42 | /* 43 | * Bitmap Definition 44 | * */ 45 | #define BIT_FA_RESET_8188E BIT(0) 46 | #define REG_ADAPTIVE_DATA_RATE_0 0x2B0 47 | #define REG_DBI_WDATA_8188 0x0348 /* DBI Write data */ 48 | #define REG_DBI_RDATA_8188 0x034C /* DBI Read data */ 49 | #define REG_DBI_ADDR_8188 0x0350 /* DBI Address */ 50 | #define REG_DBI_FLAG_8188 0x0352 /* DBI Read/Write Flag */ 51 | #define REG_MDIO_WDATA_8188E 0x0354 /* MDIO for Write PCIE PHY */ 52 | #define REG_MDIO_RDATA_8188E 0x0356 /* MDIO for Reads PCIE PHY */ 53 | #define REG_MDIO_CTL_8188E 0x0358 /* MDIO for Control */ 54 | 55 | /* [0-63] */ 56 | #define REG_MACID_NO_LINK 0x484 /* No Link register (bit[x] enabled means dropping packets for MACID in HW queue) */ 57 | 58 | #endif 59 | -------------------------------------------------------------------------------- /include/usb_vendor_req.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _USB_VENDOR_REQUEST_H_ 16 | #define _USB_VENDOR_REQUEST_H_ 17 | 18 | /* 4 Set/Get Register related wIndex/Data */ 19 | #define RT_USB_RESET_MASK_OFF 0 20 | #define RT_USB_RESET_MASK_ON 1 21 | #define RT_USB_SLEEP_MASK_OFF 0 22 | #define RT_USB_SLEEP_MASK_ON 1 23 | #define RT_USB_LDO_ON 1 24 | #define RT_USB_LDO_OFF 0 25 | 26 | /* 4 Set/Get SYSCLK related wValue or Data */ 27 | #define RT_USB_SYSCLK_32KHZ 0 28 | #define RT_USB_SYSCLK_40MHZ 1 29 | #define RT_USB_SYSCLK_60MHZ 2 30 | 31 | 32 | typedef enum _RT_USB_BREQUEST { 33 | RT_USB_SET_REGISTER = 1, 34 | RT_USB_SET_SYSCLK = 2, 35 | RT_USB_GET_SYSCLK = 3, 36 | RT_USB_GET_REGISTER = 4 37 | } RT_USB_BREQUEST; 38 | 39 | 40 | typedef enum _RT_USB_WVALUE { 41 | RT_USB_RESET_MASK = 1, 42 | RT_USB_SLEEP_MASK = 2, 43 | RT_USB_USB_HRCPWM = 3, 44 | RT_USB_LDO = 4, 45 | RT_USB_BOOT_TYPE = 5 46 | } RT_USB_WVALUE; 47 | 48 | 49 | #if 0 50 | BOOLEAN usbvendorrequest(PCE_USB_DEVICE CEdevice, RT_USB_BREQUEST bRequest, RT_USB_WVALUE wValue, u8 wIndex, void *Data, u8 DataLength, BOOLEAN isDirectionIn); 51 | BOOLEAN CEusbGetStatusRequest(PCE_USB_DEVICE CEdevice, u16 Op, u16 Index, void *Data); 52 | BOOLEAN CEusbFeatureRequest(PCE_USB_DEVICE CEdevice, u16 Op, u16 FeatureSelector, u16 Index); 53 | BOOLEAN CEusbGetDescriptorRequest(PCE_USB_DEVICE CEdevice, short urbLength, u8 DescriptorType, u8 Index, u16 LanguageId, void *TransferBuffer, u32 TransferBufferLength); 54 | #endif 55 | 56 | #endif 57 | -------------------------------------------------------------------------------- /hal/phydm/txbf/haltxbf8192e.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | #ifndef __HAL_TXBF_8192E_H__ 26 | #define __HAL_TXBF_8192E_H__ 27 | 28 | #if (RTL8192E_SUPPORT == 1) 29 | #ifdef PHYDM_BEAMFORMING_SUPPORT 30 | 31 | void hal_txbf_8192e_set_ndpa_rate( 32 | void *dm_void, 33 | u8 BW, 34 | u8 rate); 35 | 36 | void hal_txbf_8192e_enter( 37 | void *dm_void, 38 | u8 idx); 39 | 40 | void hal_txbf_8192e_leave( 41 | void *dm_void, 42 | u8 idx); 43 | 44 | void hal_txbf_8192e_status( 45 | void *dm_void, 46 | u8 idx); 47 | 48 | void hal_txbf_8192e_fw_tx_bf( 49 | void *dm_void, 50 | u8 idx); 51 | #else 52 | 53 | #define hal_txbf_8192e_set_ndpa_rate(dm_void, BW, rate) 54 | #define hal_txbf_8192e_enter(dm_void, idx) 55 | #define hal_txbf_8192e_leave(dm_void, idx) 56 | #define hal_txbf_8192e_status(dm_void, idx) 57 | #define hal_txbf_8192e_fw_tx_bf(dm_void, idx) 58 | 59 | #endif 60 | 61 | #else 62 | 63 | #define hal_txbf_8192e_set_ndpa_rate(dm_void, BW, rate) 64 | #define hal_txbf_8192e_enter(dm_void, idx) 65 | #define hal_txbf_8192e_leave(dm_void, idx) 66 | #define hal_txbf_8192e_status(dm_void, idx) 67 | #define hal_txbf_8192e_fw_tx_bf(dm_void, idx) 68 | 69 | #endif 70 | 71 | #endif 72 | -------------------------------------------------------------------------------- /include/usb_hal.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __USB_HAL_H__ 16 | #define __USB_HAL_H__ 17 | 18 | int usb_init_recv_priv(_adapter *padapter, u16 ini_in_buf_sz); 19 | void usb_free_recv_priv(_adapter *padapter, u16 ini_in_buf_sz); 20 | #ifdef CONFIG_FW_C2H_REG 21 | void usb_c2h_hisr_hdl(_adapter *adapter, u8 *buf); 22 | #endif 23 | 24 | u8 rtw_set_hal_ops(_adapter *padapter); 25 | 26 | #ifdef CONFIG_RTL8188E 27 | void rtl8188eu_set_hal_ops(_adapter *padapter); 28 | #endif 29 | 30 | #if defined(CONFIG_RTL8812A) || defined(CONFIG_RTL8821A) 31 | void rtl8812au_set_hal_ops(_adapter *padapter); 32 | #endif 33 | 34 | #ifdef CONFIG_RTL8192E 35 | void rtl8192eu_set_hal_ops(_adapter *padapter); 36 | #endif 37 | 38 | 39 | #ifdef CONFIG_RTL8723B 40 | void rtl8723bu_set_hal_ops(_adapter *padapter); 41 | #endif 42 | 43 | #ifdef CONFIG_RTL8814A 44 | void rtl8814au_set_hal_ops(_adapter *padapter); 45 | #endif /* CONFIG_RTL8814A */ 46 | 47 | #ifdef CONFIG_RTL8188F 48 | void rtl8188fu_set_hal_ops(_adapter *padapter); 49 | #endif 50 | 51 | #ifdef CONFIG_RTL8188GTV 52 | void rtl8188gtvu_set_hal_ops(_adapter *padapter); 53 | #endif 54 | 55 | #ifdef CONFIG_RTL8703B 56 | void rtl8703bu_set_hal_ops(_adapter *padapter); 57 | #endif 58 | 59 | #ifdef CONFIG_RTL8723D 60 | void rtl8723du_set_hal_ops(_adapter *padapter); 61 | #endif 62 | 63 | #ifdef CONFIG_RTL8710B 64 | void rtl8710bu_set_hal_ops(_adapter *padapter); 65 | #endif 66 | 67 | #ifdef CONFIG_RTL8192F 68 | void rtl8192fu_set_hal_ops(_adapter *padapter); 69 | #endif /* CONFIG_RTL8192F */ 70 | 71 | #endif /* __USB_HAL_H__ */ 72 | -------------------------------------------------------------------------------- /hal/phydm/phydm_psd.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __PHYDMPSD_H__ 27 | #define __PHYDMPSD_H__ 28 | 29 | /*@#define PSD_VERSION "1.0"*/ /*@2016.09.22 Dino*/ 30 | #define PSD_VERSION "1.1" /*@2016.10.07 Dino, Add Option for PSD Tone index Selection */ 31 | 32 | #ifdef CONFIG_PSD_TOOL 33 | 34 | 35 | struct psd_info { 36 | u8 psd_in_progress; 37 | u32 psd_reg; 38 | u32 psd_report_reg; 39 | u8 psd_pwr_common_offset; 40 | u16 sw_avg_time; 41 | u16 fft_smp_point; 42 | u32 rf_0x18_bkp; 43 | u32 rf_0x18_bkp_b; 44 | u16 psd_fc_channel; 45 | u32 psd_bw_rf_reg; 46 | u8 psd_result[128]; 47 | u8 noise_k_en; 48 | }; 49 | 50 | u32 phydm_get_psd_data(void *dm_void, u32 psd_tone_idx, u32 igi); 51 | 52 | void phydm_psd_debug(void *dm_void, char input[][16], u32 *_used, 53 | char *output, u32 *_out_len); 54 | 55 | u8 phydm_psd(void *dm_void, u32 igi, u16 start_point, u16 stop_point); 56 | 57 | void phydm_psd_para_setting(void *dm_void, u8 sw_avg_time, u8 hw_avg_time, 58 | u8 i_q_setting, u16 fft_smp_point, u8 ant_sel, 59 | u8 psd_input, u8 channel, u8 noise_k_en); 60 | 61 | void phydm_psd_init(void *dm_void); 62 | 63 | u8 phydm_get_psd_result_table(void *dm_void, int index); 64 | 65 | #endif 66 | #endif 67 | -------------------------------------------------------------------------------- /hal/phydm/halrf/rtl8188e/halrf_8188e_ce.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifndef __HALRF_8188E_H__ 17 | #define __HALRF_8188E_H__ 18 | 19 | /*--------------------------Define Parameters-------------------------------*/ 20 | #define IQK_DELAY_TIME_88E 10 /* ms */ 21 | #define index_mapping_NUM_88E 15 22 | #define AVG_THERMAL_NUM_88E 4 23 | 24 | #include "../halphyrf_ce.h" 25 | 26 | void configure_txpower_track_8188e(struct txpwrtrack_cfg *config); 27 | 28 | void get_delta_swing_table_8188e(void *dm_void, u8 **temperature_up_a, 29 | u8 **temperature_down_a, u8 **temperature_up_b, 30 | u8 **temperature_down_b); 31 | 32 | void do_iqk_8188e(void *dm_void, u8 delta_thermal_index, u8 thermal_value, 33 | u8 threshold); 34 | 35 | void odm_tx_pwr_track_set_pwr88_e(void *dm_void, enum pwrtrack_method method, 36 | u8 rf_path, u8 channel_mapped_index); 37 | 38 | /* 1 7. IQK */ 39 | 40 | void phy_iq_calibrate_8188e(void *dm_void, boolean is_recovery); 41 | 42 | /* 43 | * LC calibrate 44 | * */ 45 | void phy_lc_calibrate_8188e(void *dm_void); 46 | 47 | void _phy_save_adda_registers(struct dm_struct *dm, u32 *adda_reg, 48 | u32 *adda_backup, u32 register_num); 49 | 50 | void _phy_path_adda_on(struct dm_struct *dm, u32 *adda_reg, 51 | boolean is_path_a_on, boolean is2T); 52 | 53 | void _phy_mac_setting_calibration(struct dm_struct *dm, u32 *mac_reg, 54 | u32 *mac_backup); 55 | 56 | void _phy_path_a_stand_by(struct dm_struct *dm); 57 | void halrf_rf_lna_setting_8188e(struct dm_struct *dm, enum halrf_lna_set type); 58 | 59 | #endif /*#ifndef __HALRF_8188E_H__*/ 60 | -------------------------------------------------------------------------------- /hal/efuse/rtl8188e/HalEfuseMask8188E_USB.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | /* #include "Mp_Precomp.h" */ 17 | /* #include "../odm_precomp.h" */ 18 | 19 | #include 20 | 21 | #include "HalEfuseMask8188E_USB.h" 22 | 23 | 24 | /****************************************************************************** 25 | * MUSB.TXT 26 | ******************************************************************************/ 27 | 28 | u8 Array_MP_8188E_MUSB[] = { 29 | 0xFF, 30 | 0xF3, 31 | 0x00, 32 | 0x00, 33 | 0x00, 34 | 0x00, 35 | 0x00, 36 | 0x00, 37 | 0x00, 38 | 0x00, 39 | 0x00, 40 | 0x0F, 41 | 0xF3, 42 | 0xFF, 43 | 0xFF, 44 | 0xFF, 45 | 0x00, 46 | 0x00, 47 | 0x00, 48 | 0xF7, 49 | 0x00, 50 | 0x00, 51 | 0x00, 52 | 0x00, 53 | 0x00, 54 | 0x00, 55 | 0x00, 56 | 0x00, 57 | 0x00, 58 | 0x00, 59 | 0x00, 60 | 0x00, 61 | 62 | }; 63 | 64 | u16 65 | EFUSE_GetArrayLen_MP_8188E_MUSB(void) 66 | { 67 | return sizeof(Array_MP_8188E_MUSB) / sizeof(u8); 68 | } 69 | 70 | void 71 | EFUSE_GetMaskArray_MP_8188E_MUSB( 72 | u8 *Array 73 | ) 74 | { 75 | u16 len = EFUSE_GetArrayLen_MP_8188E_MUSB(), i = 0; 76 | 77 | for (i = 0; i < len; ++i) 78 | Array[i] = Array_MP_8188E_MUSB[i]; 79 | } 80 | BOOLEAN 81 | EFUSE_IsAddressMasked_MP_8188E_MUSB( 82 | u16 Offset 83 | ) 84 | { 85 | int r = Offset / 16; 86 | int c = (Offset % 16) / 2; 87 | int result = 0; 88 | 89 | if (c < 4) /* Upper double word */ 90 | result = (Array_MP_8188E_MUSB[r] & (0x10 << c)); 91 | else 92 | result = (Array_MP_8188E_MUSB[r] & (0x01 << (c - 4))); 93 | 94 | return (result > 0) ? 0 : 1; 95 | } 96 | -------------------------------------------------------------------------------- /hal/efuse/rtl8188e/HalEfuseMask8188E_PCIE.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | /* #include "Mp_Precomp.h" */ 17 | /* #include "../odm_precomp.h" */ 18 | 19 | #include 20 | 21 | #include "HalEfuseMask8188E_PCIE.h" 22 | 23 | 24 | 25 | /****************************************************************************** 26 | * MPCIE.TXT 27 | ******************************************************************************/ 28 | 29 | u8 Array_MP_8188E_MPCIE[] = { 30 | 0xFF, 31 | 0xF3, 32 | 0x00, 33 | 0x00, 34 | 0x00, 35 | 0x00, 36 | 0x00, 37 | 0x00, 38 | 0x00, 39 | 0x00, 40 | 0x00, 41 | 0x0F, 42 | 0xF3, 43 | 0xFF, 44 | 0xFF, 45 | 0x70, 46 | 0x00, 47 | 0x00, 48 | 0x00, 49 | 0x00, 50 | 0x00, 51 | 0x00, 52 | 0x00, 53 | 0x00, 54 | 0x00, 55 | 0x00, 56 | 0x00, 57 | 0x00, 58 | 0x00, 59 | 0x00, 60 | 0x00, 61 | 0x00, 62 | 63 | }; 64 | 65 | u16 66 | EFUSE_GetArrayLen_MP_8188E_MPCIE(void) 67 | { 68 | return sizeof(Array_MP_8188E_MPCIE) / sizeof(u8); 69 | } 70 | 71 | void 72 | EFUSE_GetMaskArray_MP_8188E_MPCIE( 73 | u8 *Array 74 | ) 75 | { 76 | u16 len = EFUSE_GetArrayLen_MP_8188E_MPCIE(), i = 0; 77 | 78 | for (i = 0; i < len; ++i) 79 | Array[i] = Array_MP_8188E_MPCIE[i]; 80 | } 81 | BOOLEAN 82 | EFUSE_IsAddressMasked_MP_8188E_MPCIE( 83 | u16 Offset 84 | ) 85 | { 86 | int r = Offset / 16; 87 | int c = (Offset % 16) / 2; 88 | int result = 0; 89 | 90 | if (c < 4) /* Upper double word */ 91 | result = (Array_MP_8188E_MPCIE[r] & (0x10 << c)); 92 | else 93 | result = (Array_MP_8188E_MPCIE[r] & (0x01 << (c - 4))); 94 | 95 | return (result > 0) ? 0 : 1; 96 | } 97 | -------------------------------------------------------------------------------- /hal/efuse/rtl8188e/HalEfuseMask8188E_SDIO.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | /* #include "Mp_Precomp.h" */ 17 | /* #include "../odm_precomp.h" */ 18 | 19 | #include 20 | 21 | #include "HalEfuseMask8188E_SDIO.h" 22 | 23 | 24 | 25 | /****************************************************************************** 26 | * MSDIO.TXT 27 | ******************************************************************************/ 28 | 29 | u8 Array_MP_8188E_MSDIO[] = { 30 | 0xFF, 31 | 0xF3, 32 | 0x00, 33 | 0x00, 34 | 0x00, 35 | 0x00, 36 | 0x00, 37 | 0x00, 38 | 0x00, 39 | 0x00, 40 | 0x00, 41 | 0x0F, 42 | 0xF3, 43 | 0xFF, 44 | 0xFF, 45 | 0xFF, 46 | 0xFF, 47 | 0xFF, 48 | 0x00, 49 | 0x00, 50 | 0x00, 51 | 0x00, 52 | 0x00, 53 | 0x00, 54 | 0x00, 55 | 0x00, 56 | 0x00, 57 | 0x00, 58 | 0x00, 59 | 0x00, 60 | 0x00, 61 | 0x00, 62 | 63 | }; 64 | 65 | u16 66 | EFUSE_GetArrayLen_MP_8188E_MSDIO(void) 67 | { 68 | return sizeof(Array_MP_8188E_MSDIO) / sizeof(u8); 69 | } 70 | 71 | void 72 | EFUSE_GetMaskArray_MP_8188E_MSDIO( 73 | u8 *Array 74 | ) 75 | { 76 | u16 len = EFUSE_GetArrayLen_MP_8188E_MSDIO(), i = 0; 77 | 78 | for (i = 0; i < len; ++i) 79 | Array[i] = Array_MP_8188E_MSDIO[i]; 80 | } 81 | BOOLEAN 82 | EFUSE_IsAddressMasked_MP_8188E_MSDIO( 83 | u16 Offset 84 | ) 85 | { 86 | int r = Offset / 16; 87 | int c = (Offset % 16) / 2; 88 | int result = 0; 89 | 90 | if (c < 4) /* Upper double word */ 91 | result = (Array_MP_8188E_MSDIO[r] & (0x10 << c)); 92 | else 93 | result = (Array_MP_8188E_MSDIO[r] & (0x01 << (c - 4))); 94 | 95 | return (result > 0) ? 0 : 1; 96 | } 97 | -------------------------------------------------------------------------------- /include/rtw_br_ext.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef _RTW_BR_EXT_H_ 16 | #define _RTW_BR_EXT_H_ 17 | 18 | #if 1 /* rtw_wifi_driver */ 19 | #define CL_IPV6_PASS 1 20 | #define MACADDRLEN 6 21 | #define _DEBUG_ERR RTW_INFO 22 | #define _DEBUG_INFO /* RTW_INFO */ 23 | #define DEBUG_WARN RTW_INFO 24 | #define DEBUG_INFO /* RTW_INFO */ 25 | #define DEBUG_ERR RTW_INFO 26 | /* #define GET_MY_HWADDR ((GET_MIB(priv))->dot11OperationEntry.hwaddr) */ 27 | #define GET_MY_HWADDR(padapter) (adapter_mac_addr(padapter)) 28 | #endif /* rtw_wifi_driver */ 29 | 30 | #define NAT25_HASH_BITS 4 31 | #define NAT25_HASH_SIZE (1 << NAT25_HASH_BITS) 32 | #define NAT25_AGEING_TIME 300 33 | 34 | #ifdef CL_IPV6_PASS 35 | #define MAX_NETWORK_ADDR_LEN 17 36 | #else 37 | #define MAX_NETWORK_ADDR_LEN 11 38 | #endif 39 | 40 | struct nat25_network_db_entry { 41 | struct nat25_network_db_entry *next_hash; 42 | struct nat25_network_db_entry **pprev_hash; 43 | atomic_t use_count; 44 | unsigned char macAddr[6]; 45 | unsigned long ageing_timer; 46 | unsigned char networkAddr[MAX_NETWORK_ADDR_LEN]; 47 | }; 48 | 49 | enum NAT25_METHOD { 50 | NAT25_MIN, 51 | NAT25_CHECK, 52 | NAT25_INSERT, 53 | NAT25_LOOKUP, 54 | NAT25_PARSE, 55 | NAT25_MAX 56 | }; 57 | 58 | struct br_ext_info { 59 | unsigned int nat25_disable; 60 | unsigned int macclone_enable; 61 | unsigned int dhcp_bcst_disable; 62 | int addPPPoETag; /* 1: Add PPPoE relay-SID, 0: disable */ 63 | unsigned char nat25_dmzMac[MACADDRLEN]; 64 | unsigned int nat25sc_disable; 65 | }; 66 | 67 | void nat25_db_cleanup(_adapter *priv); 68 | 69 | #endif /* _RTW_BR_EXT_H_ */ 70 | -------------------------------------------------------------------------------- /include/rtw_qos.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | 17 | #ifndef _RTW_QOS_H_ 18 | #define _RTW_QOS_H_ 19 | 20 | #define DRV_CFG_UAPSD_VO BIT0 21 | #define DRV_CFG_UAPSD_VI BIT1 22 | #define DRV_CFG_UAPSD_BK BIT2 23 | #define DRV_CFG_UAPSD_BE BIT3 24 | 25 | #define WMM_IE_UAPSD_VO BIT0 26 | #define WMM_IE_UAPSD_VI BIT1 27 | #define WMM_IE_UAPSD_BK BIT2 28 | #define WMM_IE_UAPSD_BE BIT3 29 | 30 | #define WMM_TID0 BIT0 31 | #define WMM_TID1 BIT1 32 | #define WMM_TID2 BIT2 33 | #define WMM_TID3 BIT3 34 | #define WMM_TID4 BIT4 35 | #define WMM_TID5 BIT5 36 | #define WMM_TID6 BIT6 37 | #define WMM_TID7 BIT7 38 | 39 | #define AP_SUPPORTED_UAPSD BIT7 40 | /* TC = Traffic Category, TID0~7 represents TC */ 41 | #define BIT_MASK_TID_TC 0xff 42 | /* TS = Traffic Stream, TID8~15 represents TS */ 43 | #define BIT_MASK_TID_TS 0xff00 44 | #define ALL_TID_TC_SUPPORTED_UAPSD 0xff 45 | 46 | struct qos_priv { 47 | 48 | unsigned int qos_option; /* bit mask option: u-apsd, s-apsd, ts, block ack... */ 49 | 50 | #ifdef CONFIG_WMMPS_STA 51 | /* uapsd (unscheduled automatic power-save delivery) = a kind of wmmps */ 52 | u8 uapsd_max_sp_len; 53 | /* declare uapsd_tid as a bitmap for the uapsd setting of TID 0~15 */ 54 | u16 uapsd_tid; 55 | /* declare uapsd_tid_delivery_enabled as a bitmap for the delivery-enabled setting of TID 0~7 */ 56 | u8 uapsd_tid_delivery_enabled; 57 | /* declare uapsd_tid_trigger_enabled as a bitmap for the trigger-enabled setting of TID 0~7 */ 58 | u8 uapsd_tid_trigger_enabled; 59 | /* declare uapsd_ap_supported to record whether the connected ap supports uapsd or not */ 60 | u8 uapsd_ap_supported; 61 | #endif /* CONFIG_WMMPS_STA */ 62 | 63 | }; 64 | 65 | 66 | #endif /* _RTL871X_QOS_H_ */ -------------------------------------------------------------------------------- /core/mesh/rtw_mesh_hwmp.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTW_MESH_HWMP_H_ 16 | #define __RTW_MESH_HWMP_H_ 17 | 18 | #ifndef DBG_RTW_HWMP 19 | #define DBG_RTW_HWMP 0 20 | #endif 21 | #if DBG_RTW_HWMP 22 | #define RTW_HWMP_DBG(fmt, arg...) RTW_PRINT(fmt, ##arg) 23 | #else 24 | #define RTW_HWMP_DBG(fmt, arg...) RTW_DBG(fmt, ##arg) 25 | #endif 26 | 27 | #ifndef INFO_RTW_HWMP 28 | #define INFO_RTW_HWMP 0 29 | #endif 30 | #if INFO_RTW_HWMP 31 | #define RTW_HWMP_INFO(fmt, arg...) RTW_PRINT(fmt, ##arg) 32 | #else 33 | #define RTW_HWMP_INFO(fmt, arg...) RTW_INFO(fmt, ##arg) 34 | #endif 35 | 36 | 37 | void rtw_ewma_err_rate_init(struct rtw_ewma_err_rate *e); 38 | unsigned long rtw_ewma_err_rate_read(struct rtw_ewma_err_rate *e); 39 | void rtw_ewma_err_rate_add(struct rtw_ewma_err_rate *e, unsigned long val); 40 | int rtw_mesh_path_error_tx(_adapter *adapter, 41 | u8 ttl, const u8 *target, u32 target_sn, 42 | u16 target_rcode, const u8 *ra); 43 | void rtw_ieee80211s_update_metric(_adapter *adapter, u8 mac_id, 44 | u8 per, u8 rate, 45 | u8 bw, u8 total_pkt); 46 | void rtw_mesh_rx_path_sel_frame(_adapter *adapter, union recv_frame *rframe); 47 | void rtw_mesh_queue_preq(struct rtw_mesh_path *mpath, u8 flags); 48 | void rtw_mesh_path_start_discovery(_adapter *adapter); 49 | void rtw_mesh_path_timer(void *ctx); 50 | void rtw_mesh_path_tx_root_frame(_adapter *adapter); 51 | void rtw_mesh_work_hdl(_workitem *work); 52 | void rtw_ieee80211_mesh_path_timer(void *ctx); 53 | void rtw_ieee80211_mesh_path_root_timer(void *ctx); 54 | BOOLEAN rtw_ieee80211_mesh_root_setup(_adapter *adapter); 55 | void rtw_mesh_work(_workitem *work); 56 | void rtw_mesh_atlm_param_req_timer(void *ctx); 57 | 58 | #endif /* __RTW_MESH_HWMP_H_ */ 59 | 60 | 61 | -------------------------------------------------------------------------------- /platform/platform_sprd_sdio.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #include 16 | 17 | extern void sdhci_bus_scan(void); 18 | #ifndef ANDROID_2X 19 | extern int sdhci_device_attached(void); 20 | #endif 21 | 22 | /* 23 | * Return: 24 | * 0: power on successfully 25 | * others: power on failed 26 | */ 27 | int platform_wifi_power_on(void) 28 | { 29 | int ret = 0; 30 | 31 | 32 | #ifdef CONFIG_RTL8188E 33 | rtw_wifi_gpio_wlan_ctrl(WLAN_POWER_ON); 34 | #endif /* CONFIG_RTL8188E */ 35 | 36 | /* Pull up pwd pin, make wifi leave power down mode. */ 37 | rtw_wifi_gpio_init(); 38 | rtw_wifi_gpio_wlan_ctrl(WLAN_PWDN_ON); 39 | 40 | #if (MP_DRIVER == 1) && (defined(CONFIG_RTL8723A) || defined(CONFIG_RTL8723B)) 41 | /* Pull up BT reset pin. */ 42 | rtw_wifi_gpio_wlan_ctrl(WLAN_BT_PWDN_ON); 43 | #endif 44 | rtw_mdelay_os(5); 45 | 46 | sdhci_bus_scan(); 47 | #ifdef CONFIG_RTL8723B 48 | /* YJ,test,130305 */ 49 | rtw_mdelay_os(1000); 50 | #endif 51 | #ifdef ANDROID_2X 52 | rtw_mdelay_os(200); 53 | #else /* !ANDROID_2X */ 54 | if (1) { 55 | int i = 0; 56 | 57 | for (i = 0; i <= 50; i++) { 58 | msleep(10); 59 | if (sdhci_device_attached()) 60 | break; 61 | printk("%s delay times:%d\n", __func__, i); 62 | } 63 | } 64 | #endif /* !ANDROID_2X */ 65 | 66 | return ret; 67 | } 68 | 69 | void platform_wifi_power_off(void) 70 | { 71 | /* Pull down pwd pin, make wifi enter power down mode. */ 72 | rtw_wifi_gpio_wlan_ctrl(WLAN_PWDN_OFF); 73 | rtw_mdelay_os(5); 74 | rtw_wifi_gpio_deinit(); 75 | 76 | #ifdef CONFIG_RTL8188E 77 | rtw_wifi_gpio_wlan_ctrl(WLAN_POWER_OFF); 78 | #endif /* CONFIG_RTL8188E */ 79 | 80 | #ifdef CONFIG_WOWLAN 81 | if (mmc_host) 82 | mmc_host->pm_flags &= ~MMC_PM_KEEP_POWER; 83 | #endif /* CONFIG_WOWLAN */ 84 | } 85 | -------------------------------------------------------------------------------- /hal/phydm/phydm_cck_rx_pathdiv.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __PHYDM_CCK_RX_PATHDIV_H__ 27 | #define __PHYDM_CCK_RX_PATHDIV_H__ 28 | 29 | #define CCK_RX_PATHDIV_VERSION "1.1" 30 | 31 | /* @1 ============================================================ 32 | * 1 Definition 33 | * 1 ============================================================ 34 | */ 35 | /* @1 ============================================================ 36 | * 1 structure 37 | * 1 ============================================================ 38 | */ 39 | struct phydm_cck_rx_pathdiv { 40 | boolean en_cck_rx_pathdiv; 41 | u32 path_a_sum; 42 | u32 path_b_sum; 43 | u16 path_a_cnt; 44 | u16 path_b_cnt; 45 | u8 rssi_fa_th; 46 | u8 rssi_th; 47 | }; 48 | 49 | /* @1 ============================================================ 50 | * 1 enumeration 51 | * 1 ============================================================ 52 | */ 53 | 54 | /* @1 ============================================================ 55 | * 1 function prototype 56 | * 1 ============================================================ 57 | */ 58 | void phydm_cck_rx_pathdiv_watchdog(void *dm_void); 59 | 60 | void phydm_cck_rx_pathdiv_init(void *dm_void); 61 | 62 | void phydm_process_rssi_for_cck_rx_pathdiv(void *dm_void, void *phy_info_void, 63 | void *pkt_info_void); 64 | 65 | void phydm_cck_rx_pathdiv_dbg(void *dm_void, char input[][16], u32 *_used, 66 | char *output, u32 *_out_len); 67 | #endif 68 | -------------------------------------------------------------------------------- /include/pci_osintf.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __PCI_OSINTF_H 16 | #define __PCI_OSINTF_H 17 | 18 | #ifdef RTK_129X_PLATFORM 19 | #define PCIE_SLOT1_MEM_START 0x9804F000 20 | #define PCIE_SLOT1_MEM_LEN 0x1000 21 | #define PCIE_SLOT1_CTRL_START 0x9804EC00 22 | 23 | #define PCIE_SLOT2_MEM_START 0x9803C000 24 | #define PCIE_SLOT2_MEM_LEN 0x1000 25 | #define PCIE_SLOT2_CTRL_START 0x9803BC00 26 | 27 | #define PCIE_MASK_OFFSET 0x100 /* mask offset from CTRL_START */ 28 | #define PCIE_TRANSLATE_OFFSET 0x104 /* translate offset from CTRL_START */ 29 | #endif 30 | 31 | #define PCI_BC_CLK_REQ BIT0 32 | #define PCI_BC_ASPM_L0s BIT1 33 | #define PCI_BC_ASPM_L1 BIT2 34 | #define PCI_BC_ASPM_L1Off BIT3 35 | //#define PCI_BC_ASPM_LTR BIT4 36 | //#define PCI_BC_ASPM_OBFF BIT5 37 | 38 | void PlatformClearPciPMEStatus(PADAPTER Adapter); 39 | void rtw_pci_aspm_config(_adapter *padapter); 40 | void rtw_pci_aspm_config_l1off_general(_adapter *padapter, u8 eanble); 41 | #ifdef CONFIG_64BIT_DMA 42 | u8 PlatformEnableDMA64(PADAPTER Adapter); 43 | #endif 44 | #ifdef CONFIG_PCI_DYNAMIC_ASPM 45 | void rtw_pci_set_aspm_lnkctl(_adapter *padapter, u8 mode); 46 | void rtw_pci_set_l1_latency(_adapter *padapter, u8 mode); 47 | 48 | static inline void rtw_pci_dynamic_aspm_set_mode(_adapter *padapter, u8 mode) 49 | { 50 | struct dvobj_priv *pdvobjpriv = adapter_to_dvobj(padapter); 51 | struct pci_priv *pcipriv = &(pdvobjpriv->pcipriv); 52 | 53 | if (mode == pcipriv->aspm_mode) 54 | return; 55 | 56 | pcipriv->aspm_mode = mode; 57 | 58 | #ifdef CONFIG_PCI_DYNAMIC_ASPM_LINK_CTRL 59 | rtw_pci_set_aspm_lnkctl(padapter, mode); 60 | #endif 61 | #ifdef CONFIG_PCI_DYNAMIC_ASPM_L1_LATENCY 62 | rtw_pci_set_l1_latency(padapter, mode); 63 | #endif 64 | } 65 | #else 66 | #define rtw_pci_dynamic_aspm_set_mode(adapter, mode) 67 | #endif 68 | 69 | #endif 70 | -------------------------------------------------------------------------------- /hal/phydm/phydm_antdect.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __PHYDMANTDECT_H__ 27 | #define __PHYDMANTDECT_H__ 28 | 29 | #define ANTDECT_VERSION "2.1" 30 | 31 | #if (defined(CONFIG_ANT_DETECTION)) 32 | /* @#if( DM_ODM_SUPPORT_TYPE & (ODM_WIN |ODM_CE)) */ 33 | /* @ANT Test */ 34 | #define ANTTESTALL 0x00 /*@ant A or B will be Testing*/ 35 | #define ANTTESTA 0x01 /*@ant A will be Testing*/ 36 | #define ANTTESTB 0x02 /*@ant B will be testing*/ 37 | 38 | #define MAX_ANTENNA_DETECTION_CNT 10 39 | 40 | struct _ANT_DETECTED_INFO { 41 | boolean is_ant_detected; 42 | u32 db_for_ant_a; 43 | u32 db_for_ant_b; 44 | u32 db_for_ant_o; 45 | }; 46 | 47 | enum dm_swas { 48 | antenna_a = 1, 49 | antenna_b = 2, 50 | antenna_max = 3, 51 | }; 52 | 53 | /* @1 [1. Single Tone method] =================================================== */ 54 | 55 | void odm_single_dual_antenna_default_setting( 56 | void *dm_void); 57 | 58 | boolean 59 | odm_single_dual_antenna_detection( 60 | void *dm_void, 61 | u8 mode); 62 | 63 | /* @1 [2. Scan AP RSSI method] ================================================== */ 64 | 65 | #define sw_ant_div_check_before_link odm_sw_ant_div_check_before_link 66 | 67 | boolean 68 | odm_sw_ant_div_check_before_link( 69 | void *dm_void); 70 | 71 | /* @1 [3. PSD method] ========================================================== */ 72 | 73 | void odm_single_dual_antenna_detection_psd( 74 | void *dm_void); 75 | 76 | void odm_sw_ant_detect_init(void *dm_void); 77 | #endif 78 | #endif 79 | -------------------------------------------------------------------------------- /include/rtl8188f_recv.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTL8188F_RECV_H__ 16 | #define __RTL8188F_RECV_H__ 17 | 18 | #if defined(CONFIG_USB_HCI) 19 | #ifndef MAX_RECVBUF_SZ 20 | 21 | #ifdef CONFIG_MINIMAL_MEMORY_USAGE 22 | #define MAX_RECVBUF_SZ (4000) /* about 4K */ 23 | #else 24 | #ifdef CONFIG_PLATFORM_MSTAR 25 | #define MAX_RECVBUF_SZ (8192) /* 8K */ 26 | #elif defined(CONFIG_PLATFORM_HISILICON) 27 | #define MAX_RECVBUF_SZ (16384) /* 16k */ 28 | #else 29 | #define MAX_RECVBUF_SZ (32768) /* 32k */ 30 | #endif 31 | /* #define MAX_RECVBUF_SZ (20480) */ /* 20K */ 32 | /* #define MAX_RECVBUF_SZ (10240) */ /* 10K */ 33 | /* #define MAX_RECVBUF_SZ (16384) */ /* 16k - 92E RX BUF :16K */ 34 | /* #define MAX_RECVBUF_SZ (8192+1024) */ /* 8K+1k */ 35 | #endif 36 | #endif /* !MAX_RECVBUF_SZ */ 37 | #elif defined(CONFIG_PCI_HCI) 38 | #define MAX_RECVBUF_SZ (4000) /* about 4K */ 39 | #elif defined(CONFIG_SDIO_HCI) 40 | #define MAX_RECVBUF_SZ (RX_DMA_BOUNDARY_8188F + 1) 41 | #endif /* CONFIG_SDIO_HCI */ 42 | 43 | /* Rx smooth factor */ 44 | #define Rx_Smooth_Factor (20) 45 | 46 | #if defined(CONFIG_SDIO_HCI) || defined(CONFIG_GSPI_HCI) 47 | s32 rtl8188fs_init_recv_priv(PADAPTER padapter); 48 | void rtl8188fs_free_recv_priv(PADAPTER padapter); 49 | s32 rtl8188fs_recv_hdl(_adapter *padapter); 50 | #endif 51 | 52 | #ifdef CONFIG_USB_HCI 53 | int rtl8188fu_init_recv_priv(_adapter *padapter); 54 | void rtl8188fu_free_recv_priv(_adapter *padapter); 55 | void rtl8188fu_init_recvbuf(_adapter *padapter, struct recv_buf *precvbuf); 56 | #endif 57 | 58 | #ifdef CONFIG_PCI_HCI 59 | s32 rtl8188fe_init_recv_priv(PADAPTER padapter); 60 | void rtl8188fe_free_recv_priv(PADAPTER padapter); 61 | #endif 62 | 63 | void rtl8188f_query_rx_desc_status(union recv_frame *precvframe, u8 *pdesc); 64 | 65 | #endif /* __RTL8188F_RECV_H__ */ 66 | -------------------------------------------------------------------------------- /os_dep/linux/rtw_rhashtable.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifdef CONFIG_RTW_MESH /* for now, only promised for kernel versions we support mesh */ 17 | 18 | #include 19 | 20 | int rtw_rhashtable_walk_enter(rtw_rhashtable *ht, rtw_rhashtable_iter *iter) 21 | { 22 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)) 23 | rhashtable_walk_enter((ht), (iter)); 24 | return 0; 25 | #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0)) 26 | return rhashtable_walk_init((ht), (iter), GFP_ATOMIC); 27 | #else 28 | /* kernel >= 4.4.0 rhashtable_walk_init use GFP_KERNEL to alloc, spin_lock for assignment */ 29 | iter->ht = ht; 30 | iter->p = NULL; 31 | iter->slot = 0; 32 | iter->skip = 0; 33 | 34 | iter->walker = kmalloc(sizeof(*iter->walker), GFP_ATOMIC); 35 | if (!iter->walker) 36 | return -ENOMEM; 37 | 38 | spin_lock(&ht->lock); 39 | iter->walker->tbl = 40 | rcu_dereference_protected(ht->tbl, lockdep_is_held(&ht->lock)); 41 | list_add(&iter->walker->list, &iter->walker->tbl->walkers); 42 | spin_unlock(&ht->lock); 43 | 44 | return 0; 45 | #endif 46 | } 47 | 48 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 4, 0)) 49 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 15, 0)) 50 | #if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 25)) 51 | static inline int is_vmalloc_addr(const void *x) 52 | { 53 | #ifdef CONFIG_MMU 54 | unsigned long addr = (unsigned long)x; 55 | 56 | return addr >= VMALLOC_START && addr < VMALLOC_END; 57 | #else 58 | return 0; 59 | #endif 60 | } 61 | #endif /* (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 25)) */ 62 | 63 | void kvfree(const void *addr) 64 | { 65 | if (is_vmalloc_addr(addr)) 66 | vfree(addr); 67 | else 68 | kfree(addr); 69 | } 70 | #endif /* (LINUX_VERSION_CODE < KERNEL_VERSION(3, 15, 0)) */ 71 | 72 | #include "rhashtable.c" 73 | 74 | #endif /* (LINUX_VERSION_CODE < KERNEL_VERSION(4, 4, 0)) */ 75 | 76 | #endif /* CONFIG_RTW_MESH */ 77 | 78 | -------------------------------------------------------------------------------- /os_dep/linux/rtw_proc.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | #ifndef __RTW_PROC_H__ 16 | #define __RTW_PROC_H__ 17 | 18 | #include 19 | #include 20 | 21 | #define RTW_PROC_HDL_TYPE_SEQ 0 22 | #define RTW_PROC_HDL_TYPE_SSEQ 1 23 | #define RTW_PROC_HDL_TYPE_SZSEQ 2 24 | 25 | struct rtw_proc_hdl { 26 | char *name; 27 | u8 type; 28 | union { 29 | int (*show)(struct seq_file *, void *); 30 | struct seq_operations *seq_op; 31 | struct { 32 | int (*show)(struct seq_file *, void *); 33 | size_t size; 34 | } sz; 35 | } u; 36 | ssize_t (*write)(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 37 | }; 38 | 39 | #define RTW_PROC_HDL_SEQ(_name, _seq_op, _write) \ 40 | { .name = _name, .type = RTW_PROC_HDL_TYPE_SEQ, .u.seq_op = _seq_op, .write = _write} 41 | 42 | #define RTW_PROC_HDL_SSEQ(_name, _show, _write) \ 43 | { .name = _name, .type = RTW_PROC_HDL_TYPE_SSEQ, .u.show = _show, .write = _write} 44 | 45 | #define RTW_PROC_HDL_SZSEQ(_name, _show, _write, _size) \ 46 | { .name = _name, .type = RTW_PROC_HDL_TYPE_SZSEQ, .u.sz.show = _show, .write = _write, .u.sz.size = _size} 47 | 48 | #ifdef CONFIG_PROC_DEBUG 49 | 50 | int rtw_drv_proc_init(void); 51 | void rtw_drv_proc_deinit(void); 52 | struct proc_dir_entry *rtw_adapter_proc_init(struct net_device *dev); 53 | void rtw_adapter_proc_deinit(struct net_device *dev); 54 | void rtw_adapter_proc_replace(struct net_device *dev); 55 | 56 | #else /* !CONFIG_PROC_DEBUG */ 57 | 58 | static inline int rtw_drv_proc_init(void) {return _FAIL;} 59 | #define rtw_drv_proc_deinit() do {} while (0) 60 | static inline struct proc_dir_entry *rtw_adapter_proc_init(struct net_device *dev) {return NULL;} 61 | #define rtw_adapter_proc_deinit(dev) do {} while (0) 62 | #define rtw_adapter_proc_replace(dev) do {} while (0) 63 | 64 | #endif /* !CONFIG_PROC_DEBUG */ 65 | 66 | #endif /* __RTW_PROC_H__ */ 67 | -------------------------------------------------------------------------------- /hal/phydm/halrf/rtl8188e/halrf_8188e_ap.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | 16 | #ifndef __HALRF_8188E_H__ 17 | #define __HALRF_8188E_H__ 18 | 19 | /*--------------------------Define Parameters-------------------------------*/ 20 | #define IQK_DELAY_TIME_88E 10 /* ms */ 21 | #define index_mapping_NUM_88E 15 22 | #define AVG_THERMAL_NUM_88E 4 23 | 24 | #include "../halphyrf_ap.h" 25 | 26 | void configure_txpower_track_8188e( 27 | struct txpwrtrack_cfg *config 28 | ); 29 | 30 | void do_iqk_8188e( 31 | void *dm_void, 32 | u8 delta_thermal_index, 33 | u8 thermal_value, 34 | u8 threshold 35 | ); 36 | 37 | void 38 | odm_tx_pwr_track_set_pwr88_e( 39 | struct dm_struct *dm, 40 | enum pwrtrack_method method, 41 | u8 rf_path, 42 | u8 channel_mapped_index 43 | ); 44 | 45 | /* 1 7. IQK */ 46 | 47 | void 48 | phy_iq_calibrate_8188e( 49 | struct dm_struct *dm, 50 | boolean is_recovery); 51 | 52 | 53 | /* 54 | * LC calibrate 55 | * */ 56 | void 57 | phy_lc_calibrate_8188e( 58 | struct dm_struct *dm 59 | ); 60 | 61 | /* 62 | * AP calibrate 63 | * */ 64 | void 65 | phy_ap_calibrate_8188e( 66 | struct dm_struct *dm, 67 | s8 delta); 68 | 69 | void 70 | _phy_save_adda_registers( 71 | struct dm_struct *dm, 72 | u32 *adda_reg, 73 | u32 *adda_backup, 74 | u32 register_num 75 | ); 76 | 77 | void 78 | _phy_path_adda_on( 79 | struct dm_struct *dm, 80 | u32 *adda_reg, 81 | boolean is_path_a_on, 82 | boolean is2T 83 | ); 84 | 85 | void 86 | _phy_mac_setting_calibration( 87 | struct dm_struct *dm, 88 | u32 *mac_reg, 89 | u32 *mac_backup 90 | ); 91 | 92 | 93 | void 94 | _phy_path_a_stand_by( 95 | struct dm_struct *dm 96 | ); 97 | 98 | void 99 | halrf_rf_lna_setting_8188e( 100 | struct dm_struct *dm, 101 | enum halrf_lna_set type 102 | ); 103 | 104 | #endif /*#ifndef __HALRF_8188E_H__*/ 105 | -------------------------------------------------------------------------------- /hal/phydm/txbf/haltxbfjaguar.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | #ifndef __HAL_TXBF_JAGUAR_H__ 26 | #define __HAL_TXBF_JAGUAR_H__ 27 | #if ((RTL8812A_SUPPORT == 1) || (RTL8821A_SUPPORT == 1)) 28 | #ifdef PHYDM_BEAMFORMING_SUPPORT 29 | 30 | void hal_txbf_8812a_set_ndpa_rate( 31 | void *dm_void, 32 | u8 BW, 33 | u8 rate); 34 | 35 | void hal_txbf_jaguar_enter( 36 | void *dm_void, 37 | u8 idx); 38 | 39 | void hal_txbf_jaguar_leave( 40 | void *dm_void, 41 | u8 idx); 42 | 43 | void hal_txbf_jaguar_status( 44 | void *dm_void, 45 | u8 idx); 46 | 47 | void hal_txbf_jaguar_fw_txbf( 48 | void *dm_void, 49 | u8 idx); 50 | 51 | void hal_txbf_jaguar_patch( 52 | void *dm_void, 53 | u8 operation); 54 | 55 | void hal_txbf_jaguar_clk_8812a( 56 | void *dm_void); 57 | #else 58 | 59 | #define hal_txbf_8812a_set_ndpa_rate(dm_void, BW, rate) 60 | #define hal_txbf_jaguar_enter(dm_void, idx) 61 | #define hal_txbf_jaguar_leave(dm_void, idx) 62 | #define hal_txbf_jaguar_status(dm_void, idx) 63 | #define hal_txbf_jaguar_fw_txbf(dm_void, idx) 64 | #define hal_txbf_jaguar_patch(dm_void, operation) 65 | #define hal_txbf_jaguar_clk_8812a(dm_void) 66 | #endif 67 | #else 68 | 69 | #define hal_txbf_8812a_set_ndpa_rate(dm_void, BW, rate) 70 | #define hal_txbf_jaguar_enter(dm_void, idx) 71 | #define hal_txbf_jaguar_leave(dm_void, idx) 72 | #define hal_txbf_jaguar_status(dm_void, idx) 73 | #define hal_txbf_jaguar_fw_txbf(dm_void, idx) 74 | #define hal_txbf_jaguar_patch(dm_void, operation) 75 | #define hal_txbf_jaguar_clk_8812a(dm_void) 76 | #endif 77 | 78 | #endif /* @#ifndef __HAL_TXBF_JAGUAR_H__ */ 79 | -------------------------------------------------------------------------------- /platform/platform_ARM_SUN50IW1P1_sdio.c: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2013 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | *****************************************************************************/ 15 | /* 16 | * Description: 17 | * This file can be applied to following platforms: 18 | * CONFIG_PLATFORM_ARM_SUN50IW1P1 19 | */ 20 | #include 21 | #ifdef CONFIG_GPIO_WAKEUP 22 | #include 23 | #endif 24 | 25 | #ifdef CONFIG_MMC 26 | #if defined(CONFIG_PLATFORM_ARM_SUN50IW1P1) 27 | extern void sunxi_mmc_rescan_card(unsigned ids); 28 | extern void sunxi_wlan_set_power(int on); 29 | extern int sunxi_wlan_get_bus_index(void); 30 | extern int sunxi_wlan_get_oob_irq(void); 31 | extern int sunxi_wlan_get_oob_irq_flags(void); 32 | #endif 33 | #ifdef CONFIG_GPIO_WAKEUP 34 | extern unsigned int oob_irq; 35 | #endif 36 | #endif /* CONFIG_MMC */ 37 | 38 | /* 39 | * Return: 40 | * 0: power on successfully 41 | * others: power on failed 42 | */ 43 | int platform_wifi_power_on(void) 44 | { 45 | int ret = 0; 46 | 47 | #ifdef CONFIG_MMC 48 | { 49 | 50 | #if defined(CONFIG_PLATFORM_ARM_SUN50IW1P1) 51 | int wlan_bus_index = sunxi_wlan_get_bus_index(); 52 | if (wlan_bus_index < 0) 53 | return wlan_bus_index; 54 | 55 | sunxi_wlan_set_power(1); 56 | mdelay(100); 57 | sunxi_mmc_rescan_card(wlan_bus_index); 58 | #endif 59 | RTW_INFO("%s: power up, rescan card.\n", __FUNCTION__); 60 | 61 | #ifdef CONFIG_GPIO_WAKEUP 62 | #if defined(CONFIG_PLATFORM_ARM_SUN50IW1P1) 63 | oob_irq = sunxi_wlan_get_oob_irq(); 64 | #endif 65 | #endif /* CONFIG_GPIO_WAKEUP */ 66 | } 67 | #endif /* CONFIG_MMC */ 68 | 69 | return ret; 70 | } 71 | 72 | void platform_wifi_power_off(void) 73 | { 74 | #ifdef CONFIG_MMC 75 | #if defined(CONFIG_PLATFORM_ARM_SUN50IW1P1) 76 | int wlan_bus_index = sunxi_wlan_get_bus_index(); 77 | if (wlan_bus_index < 0) 78 | return; 79 | 80 | sunxi_mmc_rescan_card(wlan_bus_index); 81 | mdelay(100); 82 | sunxi_wlan_set_power(0); 83 | #endif 84 | RTW_INFO("%s: remove card, power off.\n", __FUNCTION__); 85 | #endif /* CONFIG_MMC */ 86 | } 87 | -------------------------------------------------------------------------------- /hal/phydm/txbf/haltxbf8822b.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | #ifndef __HAL_TXBF_8822B_H__ 26 | #define __HAL_TXBF_8822B_H__ 27 | 28 | #if (RTL8822B_SUPPORT == 1) 29 | #ifdef PHYDM_BEAMFORMING_SUPPORT 30 | 31 | void hal_txbf_8822b_enter( 32 | void *dm_void, 33 | u8 idx); 34 | 35 | void hal_txbf_8822b_leave( 36 | void *dm_void, 37 | u8 idx); 38 | 39 | void hal_txbf_8822b_status( 40 | void *dm_void, 41 | u8 beamform_idx); 42 | 43 | void hal_txbf_8822b_config_gtab( 44 | void *dm_void); 45 | 46 | void hal_txbf_8822b_fw_txbf( 47 | void *dm_void, 48 | u8 idx); 49 | #else 50 | #define hal_txbf_8822b_enter(dm_void, idx) 51 | #define hal_txbf_8822b_leave(dm_void, idx) 52 | #define hal_txbf_8822b_status(dm_void, idx) 53 | #define hal_txbf_8822b_fw_txbf(dm_void, idx) 54 | #define hal_txbf_8822b_config_gtab(dm_void) 55 | 56 | #endif 57 | 58 | #if (defined(CONFIG_BB_TXBF_API)) 59 | void phydm_8822btxbf_rfmode(void *dm_void, u8 su_bfee_cnt, u8 mu_bfee_cnt); 60 | 61 | void phydm_8822b_sutxbfer_workaroud(void *dm_void, boolean enable_su_bfer, 62 | u8 nc, u8 nr, u8 ng, u8 CB, u8 BW, 63 | boolean is_vht); 64 | 65 | #else 66 | #define phydm_8822btxbf_rfmode(dm_void, su_bfee_cnt, mu_bfee_cnt) 67 | #define phydm_8822b_sutxbfer_workaroud(dm_void, enable_su_bfer, nc, nr, ng, CB, BW, is_vht) 68 | #endif 69 | 70 | #else 71 | #define hal_txbf_8822b_enter(dm_void, idx) 72 | #define hal_txbf_8822b_leave(dm_void, idx) 73 | #define hal_txbf_8822b_status(dm_void, idx) 74 | #define hal_txbf_8822b_fw_txbf(dm_void, idx) 75 | #define hal_txbf_8822b_config_gtab(dm_void) 76 | 77 | #endif 78 | #endif 79 | -------------------------------------------------------------------------------- /hal/phydm/phydm_features_ce2_kernel.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * 3 | * Copyright(c) 2007 - 2017 Realtek Corporation. 4 | * 5 | * This program is free software; you can redistribute it and/or modify it 6 | * under the terms of version 2 of the GNU General Public License as 7 | * published by the Free Software Foundation. 8 | * 9 | * This program is distributed in the hope that it will be useful, but WITHOUT 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 | * more details. 13 | * 14 | * The full GNU General Public License is included in this distribution in the 15 | * file called LICENSE. 16 | * 17 | * Contact Information: 18 | * wlanfae 19 | * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 | * Hsinchu 300, Taiwan. 21 | * 22 | * Larry Finger 23 | * 24 | *****************************************************************************/ 25 | 26 | #ifndef __PHYDM_FEATURES_CE_H__ 27 | #define __PHYDM_FEATURES_CE_H__ 28 | 29 | #define PHYDM_LA_MODE_SUPPORT 0 30 | 31 | #if (RTL8822B_SUPPORT || RTL8812A_SUPPORT || RTL8197F_SUPPORT ||\ 32 | RTL8192F_SUPPORT) 33 | #define DYN_ANT_WEIGHTING_SUPPORT 34 | #endif 35 | 36 | #if (RTL8822B_SUPPORT || RTL8821C_SUPPORT) 37 | #define FAHM_SUPPORT 38 | #endif 39 | #define NHM_SUPPORT 40 | #define CLM_SUPPORT 41 | 42 | #if (RTL8822B_SUPPORT) 43 | #define PHYDM_TXA_CALIBRATION 44 | #endif 45 | 46 | #if (RTL8188F_SUPPORT || RTL8710B_SUPPORT || RTL8821C_SUPPORT ||\ 47 | RTL8822B_SUPPORT || RTL8192F_SUPPORT) 48 | #define PHYDM_DC_CANCELLATION 49 | #endif 50 | 51 | #if (RTL8192F_SUPPORT == 1) 52 | /*#define CONFIG_8912F_SPUR_CALIBRATION*/ 53 | #endif 54 | 55 | #if (RTL8822B_SUPPORT == 1) 56 | /* #define CONFIG_8822B_SPUR_CALIBRATION */ 57 | #endif 58 | 59 | #define PHYDM_SUPPORT_CCKPD 60 | #define PHYDM_SUPPORT_ADAPTIVITY 61 | 62 | #ifdef CONFIG_DFS_MASTER 63 | #define CONFIG_PHYDM_DFS_MASTER 64 | #endif 65 | 66 | #define CONFIG_BB_TXBF_API 67 | #define CONFIG_PHYDM_DEBUG_FUNCTION 68 | 69 | #ifdef CONFIG_BT_COEXIST 70 | #define ODM_CONFIG_BT_COEXIST 71 | #endif 72 | #define PHYDM_SUPPORT_RSSI_MONITOR 73 | #define CFG_DIG_DAMPING_CHK 74 | 75 | 76 | #ifdef PHYDM_BEAMFORMING_SUPPORT 77 | #if (RTL8192F_SUPPORT || RTL8195B_SUPPORT || RTL8821C_SUPPORT ||\ 78 | RTL8822B_SUPPORT || RTL8197F_SUPPORT || RTL8198F_SUPPORT ||\ 79 | RTL8822C_SUPPORT || RTL8814B_SUPPORT) 80 | #define DRIVER_BEAMFORMING_VERSION2 81 | #endif 82 | #endif 83 | 84 | #endif 85 | --------------------------------------------------------------------------------