diff --git a/.gitignore b/.gitignore index 183499e0a8500..f96c1d1863a02 100644 --- a/.gitignore +++ b/.gitignore @@ -38,6 +38,7 @@ modules.builtin Module.symvers *.dwo *.su +.config_done # # Top-level generic files @@ -120,3 +121,4 @@ all.config # fetched Android config fragments android/configs/android-*.cfg +nohup.out diff --git a/.scmversion b/.scmversion deleted file mode 100644 index e69de29bb2d1d..0000000000000 diff --git a/00-Boot-Log.md b/00-Boot-Log.md new file mode 100644 index 0000000000000..1e2106fac286e --- /dev/null +++ b/00-Boot-Log.md @@ -0,0 +1,663 @@ +## System boot log with modified kernel with +## rkwifi/BCMDHD_WIFI6 overall bug fixes + +``` + _____ _____ ____ ___ ___ ____ +| ____|___ | ___| / ___|__ _ _ _|_ _/ _ \/ ___| +| _| / _ \| |_ | | / _` | '__| | | | \___ \ +| |__| (_) | _| | |__| (_| | | | | |_| |___) | +|_____\___/|_| \____\__,_|_| |___\___/|____/ + + +Welcome to Ubuntu 18.04.6 LTS 4.4.179-eof + +System load: 0.37 Up time: 18 sec +Memory usage: 5 % of 1961Mb IP: 192.168.181.211,192.168.200.1 +CPU temp: 38°C +Usage of /: 68% of 15G + +Linux SOM-RK3399 4.4.179-eof #3 SMP Fri Jan 19 10:02:39 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux + +Last login: Tue Jan 23 15:22:42 2024 from 192.168.181.4 + +******************************************************************************* +* NOTES TO THIS LOG: +* +* Here the WiFi client devices in the logs +* +* Android Car Radio MAC: VV:VV:VV:VV:VV:VV mcu-px6 +* iPhone 6 IOS 12.x MAC: ZZ:ZZ:ZZ:ZZ:ZZ:ZZ iPhone +* iPhone 6 SE IOS 17.x MAC: YY:YY:YY:YY:YY:YY iPhone +* SOM-RK3399v2 Board MAC: XX:XX:XX:XX:XX:XX (same Linux kernel as WiFi AP) +* +* Firmware BIN: cypress-BCM4356A2_V1.2.20230117 +* Firmware CLM: Cypress.CYW4356 (2021-04-09 00:38:31) +* +* fw_bcm4356a2_ag.bin -> cypress/cyfmac4356-sdio.bin +* clm_bcm4356a2_ag.blob -> cypress/cyfmac4356-sdio.clm_blob +* +* Kernel changes: +* https://github.com/britus/kernel-rk3399.git +* +******************************************************************************* + +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.187288] [WLAN_RFKILL]: Enter rfkill_wlan_init +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.188052] [WLAN_RFKILL]: Enter rfkill_wlan_probe +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.188528] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6354 +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.189136] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control. +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.189774] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio. +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.190432] of_get_named_gpiod_flags: can't parse 'WIFI,poweren_gpio' property of node '/wireless-wlan[0]' +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.190442] of_get_named_gpiod_flags: can't parse 'WIFI,vbat_gpio' property of node '/wireless-wlan[0]' +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.190450] of_get_named_gpiod_flags: can't parse 'WIFI,reset_gpio' property of node '/wireless-wlan[0]' +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.190490] of_get_named_gpiod_flags: parsed 'WIFI,host_wake_irq' property of node '/wireless-wlan[0]' - status (0) +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.190498] [WLAN_RFKILL]: wlan_platdata_parse_dt: get property: WIFI,host_wake_irq = 3, flags = 0. +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.191304] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found ! +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.191955] [WLAN_RFKILL]: rfkill_wlan_probe: init gpio +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.192424] [WLAN_RFKILL]: Exit rfkill_wlan_probe +Jan 25 10:21:07 SOM-RK3399 kernel: [ 1.220386] Key type dns_resolver registered +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.009910] [dhd] dhd_module_init: in Dongle Host Driver, version 100.10.545.19 (r826445-20210310-3) +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.009925] [dhd] ======== dhd_wlan_init_plat_data ======== +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.010438] [dhd] dhd_wlan_init_gpio: WL_HOST_WAKE=-1, oob_irq=74, oob_irq_flags=0x414 +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.010442] [dhd] dhd_wlan_init_gpio: WL_REG_ON=-1 +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.010447] [dhd] dhd_wifi_platform_load: Enter +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.010452] [dhd] Power-up adapter 'DHD generic adapter' +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.010457] [dhd] - irq 74 [flags 4], firmware: (null), nvram: (null) +Jan 25 10:21:07 SOM-RK3399 kernel: [ 6.010461] [dhd] - bus type -1, bus num -1, slot num -1 +Jan 25 10:21:08 SOM-RK3399 kernel: [ 7.960498] [dhd] wifi_platform_set_power = 1, delay: 200 msec +Jan 25 10:21:08 SOM-RK3399 kernel: [ 7.960568] [dhd] ======== PULL WL_REG_ON(-1) HIGH! ======== +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.261991] [dhd] wifi_platform_bus_enumerate device present 1 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.262035] [dhd] ======== Card detection to detect SDIO card! ======== +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.278999] [dhd] bcmsdh_register: register client driver +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.279485] [dhd] bus num (host idx)=2, slot num (rca)=1 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.279747] [dhd] found adapter info 'DHD generic adapter' +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.279829] [dhd] sdioh_attach: set sd_f2_blocksize 256 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.282886] [dhd] sdioh_attach: sd clock rate = 0 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.283228] [dhd] dhdsdio_probe : no mutex held. set lock +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.283375] [dhd] F1 signature read @0x18000000=0x17224356 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.288507] [dhd] F1 signature OK, socitype:0x1 chip:0x4354 rev:0x2 pkg:0x2 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.289237] [dhd] DHD: dongle ram size is set to 786432(orig 786432) at 0x180000 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.289386] [dhd] dhd_conf_set_chiprev : devid=0x4356, chip=0x4354, chiprev=2 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.290435] [dhd] CFG80211[I]: wl_setup_wiphy : Registering Vendor80211 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.291108] [dhd] CFG80211[I]: wl_cfgvendor_attach : Vendor: Register BRCM cfg80211 vendor cmd(0x67) interface +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.295098] [dhd] dhd_log_dump_init: kernel log buf size = 256KB; logdump_prsrv_tailsize = 80KB; limit prsrv tail size to = 38KB +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.297407] [dhd] dhd_attach(): thread:dhd_watchdog_thread:29f started +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.297999] [dhd] dhd_attach(): thread:dhd_dpc:2a0 started +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.298407] [dhd] dhd_attach(): thread:dhd_rxf:2a1 started +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.298444] [dhd] dhd_deferred_work_init: work queue initialized +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.298477] [dhd] dhd_tcpack_suppress_set: TCP ACK Suppress mode 0 -> mode 2 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.300824] [dhd] dhd_get_memdump_info: MEMDUMP ENABLED = 0 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.300881] [dhd] sdioh_cis_read: func_cis_ptr[0]=0x10ac +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.308143] [dhd] dhdsdio_probe_init: making DHD_BUS_DOWN +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.308257] [dhd] Dongle Host Driver, version 100.10.545.19 (r826445-20210310-3) +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.310566] [dhd] Register interface [wlan0] MAC: UU:UU:UU:UU:UU:UU +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.310876] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=3 DOWN buf=NULL +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.310889] [dhd] dhd_dbg_detach_pkt_monitor, 2099 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.310905] [dhd] dhd_bus_devreset: == Power OFF == +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311108] [dhd] dhd_bus_stop: making DHD_BUS_DOWN +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311140] [dhd] bcmsdh_oob_intr_unregister: Enter +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311146] [dhd] bcmsdh_oob_intr_unregister: irq is not registered +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311162] [dhd] dhd_bus_devreset: making dhdpub up FALSE +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311172] [dhd] dhd_txglom_enable: enable 0 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311179] [dhd] dhd_bus_devreset: making DHD_BUS_DOWN +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311188] [dhd] dhd_bus_devreset: WLAN OFF DONE +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311217] [dhd] wifi_platform_set_power = 0, delay: 0 msec +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.311228] [dhd] ======== PULL WL_REG_ON(-1) LOW! ======== +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.313914] [dhd] dhdsdio_probe : the lock is released. +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.316565] [dhd] nl_to socket created successfully... +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.316591] [dhd] dhd_module_init: Exit err=0 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486121] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486162] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486188] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486211] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486232] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486250] [dhd] WL_IW: wl_iw_get_essid : Error getting the SSID -22 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486948] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.486981] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.487005] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.487024] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.487042] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.487562] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.487590] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.487612] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.491236] [dhd] dhd_ioctl_entry: Interface is down +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.496412] [dhd] dhd_open: Enter wlan0 +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.496433] [dhd] dhd_open : no mutex held. set lock +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.496449] [dhd] +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.496477] [dhd] wifi_platform_set_power = 1, delay: 200 msec +Jan 25 10:21:09 SOM-RK3399 kernel: [ 8.496493] [dhd] ======== PULL WL_REG_ON(-1) HIGH! ======== +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.285282] [dhd] sdioh_start: set sd_f2_blocksize 256 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.286083] [dhd] dhd_bus_devreset: == Power ON == +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.286231] [dhd] F1 signature read @0x18000000=0x17224356 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.291493] [dhd] F1 signature OK, socitype:0x1 chip:0x4354 rev:0x2 pkg:0x2 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.292292] [dhd] DHD: dongle ram size is set to 786432(orig 786432) at 0x180000 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.292402] [dhd] dhd_bus_devreset: making DHD_BUS_DOWN +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.292475] [dhd] dhdsdio_probe_init: making DHD_BUS_DOWN +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.295495] [dhd] dhd_os_open_image1: /system/etc/firmware/config.txt (199 bytes) open success +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.296011] [dhd] dhd_conf_read_country : ccode = DE +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.296473] [dhd] dhd_conf_read_country : regrev = 1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.297066] [dhd] dhd_conf_read_sdio_params : dhd_doflow = 1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.297633] [dhd] dhd_conf_read_others : srl = 15 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.298079] [dhd] dhd_conf_read_others : lrl = 15 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.298575] [dhd] dhd_conf_set_path_params : Final fw_path=/system/etc/firmware/fw_bcm4356a2_ag.bin +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.299384] [dhd] dhd_conf_set_path_params : Final nv_path=/system/etc/firmware/nvram_ap6356.txt +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.300243] [dhd] dhd_conf_set_path_params : Final clm_path=/system/etc/firmware/clm_bcm4356a2_ag.blob +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.301141] [dhd] dhd_conf_set_path_params : Final conf_path=/system/etc/firmware/config.txt +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.307792] [dhd] dhd_os_open_image1: /system/etc/firmware/fw_bcm4356a2_ag.bin (580258 bytes) open success +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.345255] [dhd] dhd_os_open_image1: /system/etc/firmware/nvram_ap6356.txt (4264 bytes) open success +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.345842] [dhd] NVRAM version: AP6356_NVRAM_V1.1_20141015 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.346409] [dhd] dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded. +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.413418] [dhd] dhd_bus_init: enable 0x06, ready 0x06 (waited 0us) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.413765] [dhd] bcmsdh_oob_intr_register: HW_OOB irq=74 flags=0x4 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.414004] [dhd] dhd_get_memdump_info: MEMDUMP ENABLED = 0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.415313] [dhd] dhd_tcpack_suppress_set: TCP ACK Suppress mode 2 -> mode 1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.415883] [dhd] dhd_preinit_ioctls : Set IOCTL response time. +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.416744] [dhd] dhd_os_open_image1: /system/etc/firmware/clm_bcm4356a2_ag.blob (5750 bytes) open success +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.417851] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=clmload +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.417872] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x58000021002 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.418705] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=clmload +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.418720] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x58000021000 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.419375] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=clmload +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.419391] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x58000021000 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.420168] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=clmload +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.420186] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x58000021000 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.420958] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=clmload +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.420977] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x7600021004 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.422546] [dhd] dhd_apply_default_clm: CLM download succeeded +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.424103] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=apsta +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.424125] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.424693] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=p2p_da_override +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.424709] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x954312d6 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.425202] [dhd] dhd_preinit_ioctls: p2p_da_override succeeded +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.425218] [dhd] Firmware up: op_mode=0x0005, MAC=UU:UU:UU:UU:UU:UU +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.425240] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=assoc_listen +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.425247] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0xa +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.426049] [dhd] Disable tdls_auto_op failed. -1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.426077] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=86 WLC_SET_PM value=0x2 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.426375] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=bus:txglomalign +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.426384] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x20 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.426981] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=bcn_timeout +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.426999] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.427320] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=assoc_retry_max +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.427331] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x3 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.427739] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mkeep_alive +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.427754] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x7530000b0001 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.428052] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=scancache +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.428063] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.428345] [dhd] dhd_preinit_ioctls Set scancache failed -23 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.428360] [dhd] dhd_iovar: GET 'event_log_max_sets' -> res_len(4) < input_len(19) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.428927] [dhd] dhd_preinit_ioctls: event_log_max_sets: 26 ret: -23 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.428953] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=219 WLC_SET_FAKEFRAG value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.429174] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=buf_key_b4_m4 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.429184] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.429942] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=event_msgs +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.429956] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x2c06012008b1fff +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.430488] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=event_msgs_ext +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.430496] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8b1fff18180301 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.430842] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=185 WLC_SET_SCAN_CHANNEL_TIME value=0x28 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.431114] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=187 WLC_SET_SCAN_UNASSOC_TIME value=0x50 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.431386] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=258 WLC_SET_SCAN_PASSIVE_TIME value=0x82 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.431657] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=arpoe +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.431668] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.432343] [dhd] dhd_arp_offload_enable: ARP Version= 20120910 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.432357] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=arp_ol +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.432364] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x19 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.432765] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pkt_filter_add +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.432779] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x65 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.433095] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pkt_filter_add +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.433105] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x66 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.433405] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pkt_filter_add +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.433414] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x67 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.433747] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pkt_filter_add +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.433759] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x6e +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.434079] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pkt_filter_add +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.434090] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x6f +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.434393] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pkt_filter_add +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.434402] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x70 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.434763] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pkt_filter_add +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.434777] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x79 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.435422] [dhd] CLM version = Cypress.CYW4356 (2021-04-09 00:38:31) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.435432] [dhd] CLM version = Cypress.CYW4356 (2021-04-09 00:38:31) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.435442] [dhd] Driver: 100.10.545.19 (r826445-20210310-3) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.435864] [dhd] dhd_preinit_ioctls wlc_ver failed -23 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.435892] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=bus:rxglom +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.435900] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.436129] [dhd] dhd_txglom_enable: enable 1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.436140] [dhd] dhd_conf_set_txglom_params : txglom_mode=multi-desc +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.436788] [dhd] dhd_conf_set_txglom_params : txglomsize=36, deferred_tx_len=0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.437435] [dhd] dhd_conf_set_txglom_params : txinrx_thres=128, dhd_txminmax=-1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.438134] [dhd] dhd_conf_set_txglom_params : tx_max_offset=0, txctl_tmo_fix=300 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.438850] [dhd] dhd_conf_get_disable_proptx : fw_proptx=1, disable_proptx=-1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.439491] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=3 DOWN value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.439858] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=ampdu_hostreorder +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.439876] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.440132] [dhd] dhd_preinit_ioctls wl ampdu_hostreorder failed -23 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.440151] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=ap_isolate +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.440158] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.440740] [dhd] dhd_pno_init: Support Android Location Service +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.440764] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=2 UP value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.454280] [dhd] rtt_do_get_ioctl: failed to send getbuf proxd iovar (CMD ID : 1), status=-23 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.454304] [dhd] dhd_rtt_init : FTM is not supported +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.454324] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=proxd +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.454332] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x4000400140300 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.454749] [dhd] dhd_rtt_ftm_config : failed to set config +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.455151] [dhd] dhd_ndo_get_version: failed, retcode = -23 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.455659] [dhd] dhd_wl_ioctl_get_intiovar: get int iovar wnm_bsstrans_resp failed, ERR -23 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.455675] [dhd] failed to get wnm_bsstrans_resp +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.455694] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wnm +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.455702] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.456059] [dhd] failed to set WNM capabilities +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.456084] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.456463] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.456956] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.457356] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.457998] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.458394] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.458895] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.459296] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.459756] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.460151] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.460584] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.461000] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.461392] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.461946] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.462336] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.462853] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.463248] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.463771] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.464239] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.464787] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.465239] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.465970] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.466427] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.466922] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.467364] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.467893] [dhd] dhd_iovar: GET 'event_log_set_type' -> res_len(8) < input_len(27) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.468340] [dhd] dhd_preinit_ioctls: Failed to get preserve log # ! +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.468365] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=2 UP value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.468815] [dhd] dhd_conf_map_country_list : DE/7 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.469259] [dhd] dhd_conf_set_country : set country DE, revision 7 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.469918] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=country +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.469931] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x700004544 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.470504] [dhd] CONFIG: dhd_conf_set_bufiovar : country setting failed -2, len=12 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.471792] [dhd] dhd_conf_set_country : Country code: DE (DE/0) +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.473381] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=bcn_timeout +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.473399] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x10 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.473850] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=32 WLC_SET_SRL value=0xf +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.474116] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=34 WLC_SET_LRL value=0xf +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.474367] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=roam_off +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.474380] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.474848] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=219 WLC_SET_FAKEFRAG value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.475132] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=3 DOWN buf=NULL +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.475981] [dhd] dhd_wl_ioctl: cmd: 3, buf is NULL +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.476012] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=assoc_retry_max +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.476023] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x14 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.476382] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=3 DOWN buf=NULL +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.476697] [dhd] dhd_wl_ioctl: cmd: 3, buf is NULL +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.476719] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=ampdu_mpdu +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.476730] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x10 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.477166] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=txbf +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.477181] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.478493] [dhd] WL-CFGP2P: wl_cfgp2p_supported : p2p is supported +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.479690] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=2 UP value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.492296] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=20 SET_INFRA value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.509709] [dhd] CFG80211[I]: __wl_cfg80211_up: scan_ver, UNSUPPORTED +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.511666] [dhd] dhd_open : the lock is released. +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.511691] [dhd] dhd_open: Exit wlan0 ret=0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.511701] [dhd] [wlan0] tx queue started +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.511793] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mcast_list +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.511806] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x333300000002 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.512376] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=allmulti +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.512392] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.513041] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=10 SET_PROMISC value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.513048] [dhd] CFG80211[I]: wl_cfg80211_add_if : if name: wlan1, wl_iftype:0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.514154] [dhd] dhd_set_mcast_list_handler: set multicast list for if 0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.514167] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=50 SCAN value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.514487] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mcast_list +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.514501] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x333300000004 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.515279] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=tlv +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.515301] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x4f +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.515854] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=allmulti +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.515873] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.516732] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=10 SET_PROMISC value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.517012] [dhd] dhd_set_mcast_list_handler: set multicast list for if 0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.517023] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wlfc_mode +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.517029] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1c +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.517357] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mcast_list +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.517369] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x333300000004 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.518741] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=2 UP value=0xa9bd7bfd +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.519186] [dhd] dhd_wlfc_enable: ret=0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.519360] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=allmulti +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.519371] [dhd] CFG80211[I]: wl_get_vif_macaddr : Get virtual I/F mac addr: d6:12:43:95:28:32 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.520188] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.522076] [dhd] CFG80211[I]: wl_cfg80211_notify_ifadd : IF_ADD ifidx:1 bssidx:1 role:0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.522884] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=10 SET_PROMISC value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.523247] [dhd] dhd_set_mcast_list_handler: set multicast list for if 0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.523256] [dhd] dhd_wl_ioctl:iovar: ifidx=1 cmd=263 WLC_SET_VAR name=cur_etheraddr +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.523264] [dhd] dhd_wl_ioctl:iovar: ifidx=1 cmd=263 WLC_SET_VAR value=0x954312d6 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.523800] [dhd] dhd_register_if: MACID is overwritten +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.524913] [dhd] Register interface [wlan1] MAC: d6:12:43:95:28:32 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.524961] [dhd] dhd_wl_ioctl:iovar: ifidx=1 cmd=20 SET_INFRA value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.525638] [dhd] CFG80211[I]: wl_cfg80211_post_ifcreate : Network Interface (wlan1) registered with host. cfg_iftype:2 wl_role:0 d6:12:43:95:28:32 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.526894] [dhd] dhd_wl_ioctl:iovar: ifidx=1 cmd=263 WLC_SET_VAR name=buf_key_b4_m4 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.526909] [dhd] dhd_wl_ioctl:iovar: ifidx=1 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.527377] [dhd] CFG80211[I]: wl_cfg80211_add_if : Vif created. dev->ifindex:5 cfg_iftype:2, vif_count:1 +Jan 25 10:21:10 SOM-RK3399 avahi-daemon[586]: Joining mDNS multicast group on interface wlan0.IPv4 with address 192.168.200.1. +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.563858] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=arp_hostip_clear +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.563892] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x726165 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.564401] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=arp_hostip +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.564422] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1c8a8c0 +Jan 25 10:21:10 SOM-RK3399 avahi-daemon[586]: New relevant interface wlan0.IPv4 for mDNS. +Jan 25 10:21:10 SOM-RK3399 avahi-daemon[586]: Registering new address record for 192.168.200.1 on wlan0.IPv4. +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.565555] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mcast_list +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.565581] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x333300000005 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.566191] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=allmulti +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.566212] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.566850] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=10 SET_PROMISC value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.567134] [dhd] dhd_set_mcast_list_handler: set multicast list for if 0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.574577] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mcast_list +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.574610] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x333300000005 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.575153] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=allmulti +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.575175] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.575698] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=10 SET_PROMISC value=0x0 +Jan 25 10:21:10 SOM-RK3399 kernel: [ 9.576107] [dhd] dhd_set_mcast_list_handler: set multicast list for if 0 +Jan 25 10:21:10 SOM-RK3399 sh[700]: ifup: interface wlan0 already configured +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.532456] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mcast_list +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.532500] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x333300000006 +Jan 25 10:21:11 SOM-RK3399 avahi-daemon[586]: Joining mDNS multicast group on interface wlan0.IPv6 with address fe80::d612:43ff:fe95:6832. +Jan 25 10:21:11 SOM-RK3399 avahi-daemon[586]: New relevant interface wlan0.IPv6 for mDNS. +Jan 25 10:21:11 SOM-RK3399 avahi-daemon[586]: Registering new address record for fe80::d612:43ff:fe95:6832 on wlan0.*. +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.538495] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=allmulti +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.538565] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.539294] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=10 SET_PROMISC value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.539985] [dhd] dhd_set_mcast_list_handler: set multicast list for if 0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.540041] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=mcast_list +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.540063] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x333300000007 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.540740] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=allmulti +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.540776] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.541334] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=10 SET_PROMISC value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 10.541874] [dhd] dhd_set_mcast_list_handler: set multicast list for if 0 +Jan 25 10:21:12 SOM-RK3399 hostapd[875]: 1706178072.564749: Configuration file: /etc/hostapd/hostapd.conf +Jan 25 10:21:12 SOM-RK3399 dnsmasq[874]: dnsmasq: syntax check OK. +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.758468] [dhd] CFG80211[I]: wl_cfg80211_change_virtual_iface : [wlan0] Enter. current cfg_iftype:2 new cfg_iftype:3 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.759574] [dhd] CFG80211[I]: wl_cfg80211_set_ap_role : [wlan0] Bringup SoftAP on bssidx:0 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.763083] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=3 DOWN value=0x1 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.764121] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=apsta +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.764146] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.765076] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=118 WLC_SET_AP value=0x1 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.765557] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=86 WLC_SET_PM value=0x0 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.765951] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=20 SET_INFRA value=0x1 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.766222] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=20 SET_INFRA value=0x1 +Jan 25 10:21:12 SOM-RK3399 hostapd[875]: 1706178072.600042: wlan0: interface state UNINITIALIZED->COUNTRY_UPDATE +Jan 25 10:21:12 SOM-RK3399 rc.local[879]: Try Bluetooth hciattach... +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.814209] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Reconnect not waiting for STA status=7, ap_recon_sta=NO => 0 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.816243] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=201 WLC_SCB_DEAUTHENTICATE_FOR_REASON value=0xffffffff00000003 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.817047] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.817073] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.817709] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.817732] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.818271] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.818303] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x2 +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.818968] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:12 SOM-RK3399 kernel: [ 11.818997] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x3 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.846595] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=ndoe +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.846627] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.847634] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=arp_ol +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.847655] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.848065] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=arpoe +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.848081] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.848730] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=chanspec +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.848743] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1006 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.849375] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=76 WLC_SET_BCNPRD value=0x64 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.850236] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=78 WLC_SET_DTIMPRD value=0x2 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.850476] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wme_bss_disable +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.850486] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.851139] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=auth +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.851159] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.851467] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.851479] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.851803] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wpa_auth +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.851818] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x80 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.852257] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=20 SET_INFRA value=0x1 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.852468] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=50 SCAN value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.853929] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=3 DOWN value=0x1 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.854135] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=apsta +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.854144] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.854458] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=118 WLC_SET_AP value=0x1 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.854750] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=86 WLC_SET_PM value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.854971] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=20 SET_INFRA value=0x1 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.856471] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=2 UP value=0x1 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.869479] [dhd] _dhd_wlfc_mac_entry_update():1867, entry(32) +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.872363] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=26 SET_SSID value=0x2d4d4f530000000c +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.944769] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=scb_probe +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.944807] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x500000014 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.945938] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pspretend_retry_limit +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.945970] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.947103] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=pspretend_threshold +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.947134] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x2 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.948452] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=event_msgs +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.948481] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x2c06013008b1fff +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.949107] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=86 WLC_SET_PM value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.949980] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=ap_isolate +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.950008] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.953827] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.953863] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1000000001 +Jan 25 10:21:11 SOM-RK3399 dnsmasq[904]: started, version 2.79 cachesize 150 +Jan 25 10:21:11 SOM-RK3399 dnsmasq[904]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth nettlehash DNSSEC loop-detect inotify +Jan 25 10:21:11 SOM-RK3399 dnsmasq-dhcp[904]: DHCP, IP range 192.168.200.50 -- 192.168.200.150, lease time infinite +Jan 25 10:21:11 SOM-RK3399 dnsmasq-dhcp[904]: DHCP, sockets bound exclusively to interface wlan0 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.959587] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.959601] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.960280] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_info +Jan 25 10:21:11 SOM-RK3399 kernel: [ 11.960291] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8010601000001 +Jan 25 10:21:11 SOM-RK3399 dnsmasq[904]: using nameserver 1.1.1.1#53 +Jan 25 10:21:11 SOM-RK3399 dnsmasq[904]: using local addresses only for domain localnet +Jan 25 10:21:11 SOM-RK3399 dnsmasq[904]: read /etc/hosts - 3 addresses +Jan 25 10:21:12 SOM-RK3399 hciattach[910]: bcm43xx_init +Jan 25 10:21:12 SOM-RK3399 hciattach[910]: Found firmware: /etc/firmware/BCM4354A2.hcd +Jan 25 10:21:12 SOM-RK3399 hciattach[910]: Set Controller UART speed to 1500000 bit/s +Jan 25 10:21:12 SOM-RK3399 hciattach[910]: Flash firmware: /etc/firmware/BCM4354A2.hcd +Jan 25 10:21:12 SOM-RK3399 hciattach[910]: Set Controller UART speed to 1500000 bit/s +Jan 25 10:21:12 SOM-RK3399 hciattach[910]: Device setup complete +Jan 25 10:21:12 SOM-RK3399 hostapd[924]: Selected interface 'wlan0' +Jan 25 10:21:12 SOM-RK3399 hostapd[924]: bssid=UU:UU:UU:UU:UU:UU +Jan 25 10:21:12 SOM-RK3399 hostapd[924]: ssid=SOM-RK3399v1 +Jan 25 10:21:12 SOM-RK3399 hostapd[924]: wpa=2 +Jan 25 10:21:12 SOM-RK3399 hostapd[924]: key_mgmt=WPA-PSK +Jan 25 10:21:12 SOM-RK3399 hostapd[924]: group_cipher=CCMP +Jan 25 10:21:12 SOM-RK3399 hostapd[924]: rsn_pairwise_cipher=CCMP +Jan 25 10:21:12 SOM-RK3399 hostapd[926]: Selected interface 'wlan0' +Jan 25 10:21:18 SOM-RK3399 dnsmasq[904]: read /etc/hosts - 3 addresses +Jan 25 10:21:18 SOM-RK3399 dnsmasq[904]: time 1706178078 +Jan 25 10:21:18 SOM-RK3399 dnsmasq[904]: cache size 150, 0/0 cache insertions re-used unexpired cache entries. +Jan 25 10:21:18 SOM-RK3399 dnsmasq[904]: queries forwarded 0, queries answered locally 0 +Jan 25 10:21:18 SOM-RK3399 dnsmasq[904]: queries for authoritative zones 0 +Jan 25 10:21:18 SOM-RK3399 dnsmasq[904]: server 1.1.1.1#53: queries sent 0, retried or failed 0 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.895085] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA VV:VV:VV:VV:VV:VV status=9, ap_recon_sta=NO +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.897885] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] VV:VV:VV:VV:VV:VV flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.899165] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.899174] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.900318] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.900334] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.900708] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] VV:VV:VV:VV:VV:VV flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.904888] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.904911] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1000000001 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.906542] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.906561] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.906958] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_info +Jan 25 10:21:20 SOM-RK3399 kernel: [ 20.906966] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8010601000001 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.299379] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.299404] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1000000000 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.300133] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.300143] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.301633] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_info +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.301650] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8010601000001 +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.302487] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] VV:VV:VV:VV:VV:VV flags_set=0x2 flags_mask=0x2 flags_sta=0xc +Jan 25 10:21:20 SOM-RK3399 kernel: [ 21.303518] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=121 WLC_SCB_AUTHORIZE value=0x98bfef44 +Jan 25 10:21:20 SOM-RK3399 dnsmasq-dhcp[904]: DHCPDISCOVER(wlan0) VV:VV:VV:VV:VV:VV +Jan 25 10:21:20 SOM-RK3399 dnsmasq-dhcp[904]: DHCPOFFER(wlan0) 192.168.200.11 VV:VV:VV:VV:VV:VV +Jan 25 10:21:21 SOM-RK3399 dnsmasq-dhcp[904]: DHCPREQUEST(wlan0) 192.168.200.11 VV:VV:VV:VV:VV:VV +Jan 25 10:21:21 SOM-RK3399 dnsmasq-dhcp[904]: DHCPACK(wlan0) 192.168.200.11 VV:VV:VV:VV:VV:VV mcu-px6 +Jan 25 10:21:55 SOM-RK3399 kernel: [ 55.897363] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA ZZ:ZZ:ZZ:ZZ:ZZ:ZZ status=9, ap_recon_sta=NO +Jan 25 10:21:55 SOM-RK3399 kernel: [ 55.899979] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] ZZ:ZZ:ZZ:ZZ:ZZ:ZZ flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:21:55 SOM-RK3399 kernel: [ 55.901207] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:55 SOM-RK3399 kernel: [ 55.901217] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:55 SOM-RK3399 kernel: [ 55.902274] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:55 SOM-RK3399 kernel: [ 55.902297] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:21:55 SOM-RK3399 kernel: [ 55.903284] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] ZZ:ZZ:ZZ:ZZ:ZZ:ZZ flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.362446] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.362471] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1000000000 +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.364044] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.364070] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.364370] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_info +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.364379] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8010601000001 +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.365915] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] ZZ:ZZ:ZZ:ZZ:ZZ:ZZ flags_set=0x2 flags_mask=0x2 flags_sta=0xc +Jan 25 10:21:55 SOM-RK3399 kernel: [ 56.366980] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=121 WLC_SCB_AUTHORIZE value=0x4701fc9c +Jan 25 10:22:07 SOM-RK3399 CarIOS[1160]: [I] NETIPT: LAP-IFC -> wlan0 +Jan 25 10:22:15 SOM-RK3399 dnsmasq[904]: time 1706178135 +Jan 25 10:22:15 SOM-RK3399 dnsmasq[904]: cache size 150, 0/38 cache insertions re-used unexpired cache entries. +Jan 25 10:22:15 SOM-RK3399 dnsmasq[904]: queries forwarded 5, queries answered locally 0 +Jan 25 10:22:15 SOM-RK3399 dnsmasq[904]: queries for authoritative zones 0 +Jan 25 10:22:15 SOM-RK3399 dnsmasq[904]: server 1.1.1.1#53: queries sent 5, retried or failed 0 +Jan 25 10:22:15 SOM-RK3399 dnsmasq[904]: read /etc/hosts - 3 addresses +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.630624] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA YY:YY:YY:YY:YY:YY status=9, ap_recon_sta=NO +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.632599] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.633833] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.633843] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.635947] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.635973] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.636359] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.655449] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Latest disconnect STA 00:00:00:00:00:00 ap_recon_sta=0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.657990] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.658015] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.658763] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.658777] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.660470] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.930433] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA YY:YY:YY:YY:YY:YY status=9, ap_recon_sta=YES +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.932525] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.933792] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.933802] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.935637] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.935717] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.936150] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.945812] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Latest disconnect STA YY:YY:YY:YY:YY:YY ap_recon_sta=1 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.947533] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.947553] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.949979] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.950002] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.950313] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.967216] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA YY:YY:YY:YY:YY:YY status=9, ap_recon_sta=YES +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.969265] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.970531] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.970542] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.971166] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.971182] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:37 SOM-RK3399 kernel: [ 97.971499] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:37 SOM-RK3399 kernel: [ 98.198483] [dhd] _dhd_wlfc_deque_afq: can't find matching seq(0) +Jan 25 10:22:43 SOM-RK3399 kernel: [ 104.244292] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:43 SOM-RK3399 kernel: [ 104.244318] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:43 SOM-RK3399 kernel: [ 104.244895] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:43 SOM-RK3399 kernel: [ 104.244906] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:43 SOM-RK3399 kernel: [ 104.245196] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:43 SOM-RK3399 kernel: [ 104.246601] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:43 SOM-RK3399 kernel: [ 104.246616] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.802324] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Latest disconnect STA YY:YY:YY:YY:YY:YY ap_recon_sta=1 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.803526] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.803532] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.804865] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.804881] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.805181] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.867346] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA YY:YY:YY:YY:YY:YY status=9, ap_recon_sta=YES +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.868818] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.869911] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.869916] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.870572] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.870588] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 107.870912] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:47 SOM-RK3399 kernel: [ 108.191321] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Latest disconnect STA YY:YY:YY:YY:YY:YY ap_recon_sta=1 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 108.192746] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:47 SOM-RK3399 kernel: [ 108.192764] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 108.193443] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:47 SOM-RK3399 kernel: [ 108.193463] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:47 SOM-RK3399 kernel: [ 108.194260] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:48 SOM-RK3399 kernel: [ 108.467222] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA YY:YY:YY:YY:YY:YY status=9, ap_recon_sta=YES +Jan 25 10:22:48 SOM-RK3399 kernel: [ 108.469243] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:22:48 SOM-RK3399 kernel: [ 108.470519] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:48 SOM-RK3399 kernel: [ 108.470529] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:48 SOM-RK3399 kernel: [ 108.471465] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:48 SOM-RK3399 kernel: [ 108.471486] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:48 SOM-RK3399 kernel: [ 108.472327] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.480505] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.480531] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.484585] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.484609] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.484957] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.486341] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.486356] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:52 SOM-RK3399 kernel: [ 112.617279] [dhd] _dhd_wlfc_deque_afq: can't find matching seq(10) +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.745283] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Latest disconnect STA YY:YY:YY:YY:YY:YY ap_recon_sta=1 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.746742] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.746762] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.747662] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.747684] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.748197] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] ZZ:ZZ:ZZ:ZZ:ZZ:ZZ flags_set=0x0 flags_mask=0x2 flags_sta=0x0 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.749273] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=122 SCB_DEAUTHORIZE value=0x4701fc9c +Jan 25 10:22:56 SOM-RK3399 kernel: [ 116.749845] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Reconnect wait STA status=7, ap_recon_sta=NO, waiting 300ms ... +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.051246] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Reconnect wait STA status=7, ap_recon_sta=NO, timeout=0 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.057375] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=201 WLC_SCB_DEAUTHENTICATE_FOR_REASON value=0x4701fc9c00000003 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.325643] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA ZZ:ZZ:ZZ:ZZ:ZZ:ZZ status=9, ap_recon_sta=NO +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.327669] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] ZZ:ZZ:ZZ:ZZ:ZZ:ZZ flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.328935] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.328946] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.329654] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.329674] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.330176] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] ZZ:ZZ:ZZ:ZZ:ZZ:ZZ flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.362460] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.362485] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1000000000 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.363016] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.363026] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.363329] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_info +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.363337] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8010601000001 +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.364115] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] ZZ:ZZ:ZZ:ZZ:ZZ:ZZ flags_set=0x2 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:56 SOM-RK3399 kernel: [ 117.365182] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=121 WLC_SCB_AUTHORIZE value=0x4701fc9c +Jan 25 10:22:56 SOM-RK3399 dnsmasq-dhcp[904]: DHCPREQUEST(wlan0) 192.168.200.13 ZZ:ZZ:ZZ:ZZ:ZZ:ZZ +Jan 25 10:22:56 SOM-RK3399 dnsmasq-dhcp[904]: DHCPACK(wlan0) 192.168.200.13 ZZ:ZZ:ZZ:ZZ:ZZ:ZZ PattPhone +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.485102] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Reconnect not waiting for STA status=7, ap_recon_sta=NO => 0 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.486494] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=201 WLC_SCB_DEAUTHENTICATE_FOR_REASON value=0x48c0e24600000003 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.499284] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Latest disconnect STA ZZ:ZZ:ZZ:ZZ:ZZ:ZZ ap_recon_sta=0 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.932987] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA YY:YY:YY:YY:YY:YY status=9, ap_recon_sta=NO +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.934866] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.936208] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.936220] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.936980] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.937000] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.937469] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.949777] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.949804] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1000000000 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.950382] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.950397] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.950810] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_info +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.950822] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8010601000001 +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.951471] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] YY:YY:YY:YY:YY:YY flags_set=0x2 flags_mask=0x2 flags_sta=0xc +Jan 25 10:22:57 SOM-RK3399 kernel: [ 117.952534] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=121 WLC_SCB_AUTHORIZE value=0x48c0e246 +Jan 25 10:22:57 SOM-RK3399 dnsmasq-dhcp[904]: DHCPREQUEST(wlan0) 192.168.200.66 YY:YY:YY:YY:YY:YY +Jan 25 10:22:57 SOM-RK3399 dnsmasq-dhcp[904]: DHCPACK(wlan0) 192.168.200.66 YY:YY:YY:YY:YY:YY +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.397269] [dhd][wlan0]AEXT[I] wl_ext_in4way_sync_ap: Connected STA XX:XX:XX:XX:XX:XX status=9, ap_recon_sta=NO +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.399527] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] XX:XX:XX:XX:XX:XX flags_set=0x0 flags_mask=0x1c flags_sta=0xc +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.400746] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.400756] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.403047] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.403071] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x0 +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.403436] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] XX:XX:XX:XX:XX:XX flags_set=0x0 flags_mask=0x2 flags_sta=0xc +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.420543] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_key +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.420586] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x1000000000 +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.421117] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.421126] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x44 +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.421402] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR name=wsec_info +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.421409] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=263 WLC_SET_VAR value=0x8010601000001 +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.421941] [dhd] CFG80211[I]: wl_cfg80211_change_station: [wlan0] XX:XX:XX:XX:XX:XX flags_set=0x2 flags_mask=0x2 flags_sta=0xc +Jan 25 10:24:00 SOM-RK3399 kernel: [ 181.423000] [dhd] dhd_wl_ioctl:iovar: ifidx=0 cmd=121 WLC_SCB_AUTHORIZE value=0x9f4312d4 +Jan 25 10:24:01 SOM-RK3399 dnsmasq-dhcp[904]: DHCPDISCOVER(wlan0) 192.168.200.142 XX:XX:XX:XX:XX:XX +Jan 25 10:24:01 SOM-RK3399 dnsmasq-dhcp[904]: DHCPOFFER(wlan0) 192.168.200.142 XX:XX:XX:XX:XX:XX +Jan 25 10:24:01 SOM-RK3399 dnsmasq-dhcp[904]: DHCPREQUEST(wlan0) 192.168.200.142 XX:XX:XX:XX:XX:XX +Jan 25 10:24:01 SOM-RK3399 dnsmasq-dhcp[904]: DHCPACK(wlan0) 192.168.200.142 XX:XX:XX:XX:XX:XX SOM-RK3399v2 +``` diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-cifisp.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-cifisp.dtsi index 9d6956354caa9..03671f73b3d12 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-cifisp.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-cifisp.dtsi @@ -21,7 +21,7 @@ &cif_isp0 { rockchip,camera-modules-attached = <&ov13850p0 &ov4689p0>; - status = "okay"; + status = "disabled"; //EOF:FIXED:unused }; &isp0_mmu { @@ -30,7 +30,7 @@ &cif_isp1 { rockchip,camera-modules-attached = <&ov13850p1 &ov4689p1>; - status = "okay"; + status = "disabled"; //EOF:FIXED:unused }; &isp1_mmu { @@ -39,7 +39,7 @@ &i2c1 { ov13850p0: ov13850@10 { - status = "okay"; + status = "disabled"; //EOF:FIXED:unused compatible = "omnivision,ov13850-v4l2-i2c-subdev"; reg = <0x10>; device_type = "v4l2-i2c-subdev"; @@ -73,7 +73,7 @@ }; ov4689p0: ov4689@36 { - status = "okay"; + status = "disabled"; //EOF:FIXED:unused compatible = "omnivision,ov4689-v4l2-i2c-subdev"; reg = <0x36>; device_type = "v4l2-i2c-subdev"; @@ -107,7 +107,7 @@ &i2c2 { ov13850p1: ov13850@10 { - status = "okay"; + status = "disabled"; //EOF:FIXED:unused compatible = "omnivision,ov13850-v4l2-i2c-subdev"; reg = <0x10>; device_type = "v4l2-i2c-subdev"; @@ -141,7 +141,7 @@ }; ov4689p1: ov4689@36 { - status = "okay"; + status = "disabled"; //EOF:FIXED:unused compatible = "omnivision,ov4689-v4l2-i2c-subdev"; reg = <0x36>; device_type = "v4l2-i2c-subdev"; diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-common.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-common.dtsi index 7fb4b3a1ad3a0..4c97941f31617 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-common.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-common.dtsi @@ -58,7 +58,7 @@ "rockchip,rk3399"; chosen { - bootargs = "earlycon=uart8250,mmio32,0xff1a0000 swiotlb=1 console=ttyFIQ0 rootwait coherent_pool=1m"; + bootargs = "earlycon=uart8250,mmio32,0xff1a0000 swiotlb=1 console=ttyFIQ0 rootwait coherent_pool=1m systemd.gpt_auto=0 rd.systemd.gpt_auto=0"; }; cpuinfo { @@ -313,14 +313,14 @@ }; }; - gpio-keys { + gpio_keys: gpio-keys { compatible = "gpio-keys"; #address-cells = <1>; #size-cells = <0>; autorepeat; pinctrl-names = "default"; - pinctrl-0 = <&power_key>; + pinctrl-0 = <&pcb_buttons>; button@0 { gpios = <&gpio0 5 GPIO_ACTIVE_LOW>; @@ -330,14 +330,44 @@ gpio-key,wakeup = <1>; debounce-interval = <100>; }; + + /* --------------------------------------------------- */ + button@1 { + gpios = <&gpio1 1 GPIO_ACTIVE_LOW>; // GPIO1_A1 + linux,code = ; + label = "GPIO Button 1"; + linux,input-type = <1>; + gpio-key,wakeup = <1>; + debounce-interval = <100>; + }; + + button@2 { + gpios = <&gpio1 3 GPIO_ACTIVE_LOW>; // GPIO1_A3 + linux,code = ; + label = "GPIO Button 2"; + linux,input-type = <1>; + gpio-key,wakeup = <1>; + debounce-interval = <100>; + }; + + button@3 { + gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; // GPIO1_A4 + linux,code = ; + label = "GPIO Button 3"; + linux,input-type = <1>; + gpio-key,wakeup = <1>; + debounce-interval = <100>; + }; + /* ---------------------------------------------------- */ }; - adc-keys { + adc_keys: adc-keys { compatible = "adc-keys"; io-channels = <&saradc 1>; io-channel-names = "buttons"; poll-interval = <100>; keyup-threshold-microvolt = <1800000>; + autorepeat = <1>; button-up { label = "Volume Up"; @@ -954,6 +984,19 @@ enable-gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>; }; +&saradc { + status = "okay"; + vref-supply = <&vccadc_ref>; /* TBD */ +}; + +&adc_keys { + status = "okay"; +}; + +&gpio_keys { + status = "okay"; +}; + &pwm0 { status = "okay"; }; @@ -997,11 +1040,6 @@ <&gpio1 14 GPIO_ACTIVE_HIGH>; }; -&saradc { - status = "okay"; - vref-supply = <&vccadc_ref>; /* TBD */ -}; - &sdhci { bus-width = <8>; mmc-hs400-1_8v; @@ -1176,8 +1214,11 @@ }; rockchip-key { - power_key: power-key { - rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>; + pcb_buttons: pcb-buttons { + rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>, + <1 1 RK_FUNC_GPIO &pcfg_pull_up>, + <1 3 RK_FUNC_GPIO &pcfg_pull_up>, + <1 4 RK_FUNC_GPIO &pcfg_pull_up>; }; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev06.dts b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev06.dts index f263fb4b501c1..7f7fa1dd20cae 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev06.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev06.dts @@ -21,7 +21,7 @@ #include / { - model = "FriendlyElec SOM-RK3399"; + model = "FriendlyElec SOM-RK3399 Rev. 6"; compatible = "friendlyelec,som-rk3399", "rockchip,rk3399"; }; @@ -37,7 +37,7 @@ clock-frequency = <400000>; sensor@18 { - status = "okay"; + status = "disabled"; //EOF:FIXED:Does not work in kernel compatible = "gs_lis3dh"; reg = <0x18>; type = ; diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev07.dts b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev07.dts index 5f8570598116d..94bbf6bf850fd 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev07.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rev07.dts @@ -21,7 +21,7 @@ #include / { - model = "FriendlyElec SOM-RK3399"; + model = "FriendlyElec SOM-RK3399 Rev. 7"; compatible = "friendlyelec,som-rk3399", "rockchip,rk3399"; }; @@ -37,7 +37,7 @@ clock-frequency = <400000>; sensor@18 { - status = "okay"; + status = "disabled"; //EOF:FIXED: does not work in kernel compatible = "gs_lis3dh"; reg = <0x18>; type = ; @@ -84,7 +84,7 @@ }; &dmc { - status = "disabled"; + status = "okay"; system-status-freq = < /*system status freq(KHz)*/ SYS_STATUS_NORMAL 856000 diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rkisp1.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rkisp1.dtsi index 8e23a8d779f4d..8496f223b49d1 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rkisp1.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4-rkisp1.dtsi @@ -100,6 +100,7 @@ status = "okay"; resets = <&cru SRST_H_ISP0>, <&cru SRST_ISP0>; reset-names = "h_isp0", "isp0"; + rockchip,grf = <&grf>; port { #address-cells = <1>; @@ -209,7 +210,8 @@ status = "okay"; resets = <&cru SRST_H_ISP1>, <&cru SRST_ISP1>; reset-names = "h_isp1", "isp1"; - + rockchip,grf = <&grf>; + port { #address-cells = <1>; #size-cells = <0>; diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi index 5cb4a89d42940..27ff2c1c0a52e 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi @@ -1833,6 +1833,7 @@ resets = <&cru SRST_A_VOP1>, <&cru SRST_H_VOP1>, <&cru SRST_D_VOP1>; reset-names = "axi", "ahb", "dclk"; status = "disabled"; + rockchip,grf = <&grf>; vopl_out: port { #address-cells = <1>; @@ -1902,7 +1903,8 @@ power-domains = <&power RK3399_PD_VOPB>; iommus = <&vopb_mmu>; status = "disabled"; - + rockchip,grf = <&grf>; + vopb_out: port { #address-cells = <1>; #size-cells = <0>; diff --git a/arch/arm64/configs/eof_defconfig b/arch/arm64/configs/eof_defconfig new file mode 100644 index 0000000000000..907ce6ae7cf06 --- /dev/null +++ b/arch/arm64/configs/eof_defconfig @@ -0,0 +1,6076 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/arm64 4.4.179 Kernel Configuration +# +CONFIG_ARM64=y +CONFIG_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_BITS_MAX=24 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_ARM64_PAGE_SHIFT=12 +CONFIG_ARM64_CONT_SHIFT=4 +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ZONE_DMA=y +CONFIG_HAVE_GENERIC_RCU_GUP=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_SMP=y +CONFIG_SWIOTLB=y +CONFIG_IOMMU_HELPER=y +CONFIG_KERNEL_MODE_NEON=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=3 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y +CONFIG_THREAD_INFO_IN_TASK=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="-eof" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_DEFAULT_HOSTNAME="som-rk3399v2" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_FHANDLE=y +# CONFIG_USELIB is not set +CONFIG_AUDIT=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +# CONFIG_AUDITSYSCALL is not set + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_GENERIC_IRQ_CHIP=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_GENERIC_MSI_IRQ_DOMAIN=y +CONFIG_HANDLE_DOMAIN_IRQ=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +# CONFIG_NO_HZ_FULL is not set +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +# CONFIG_IRQ_TIME_ACCOUNTING is not set +# CONFIG_SCHED_WALT is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y + +# +# RCU Subsystem +# +CONFIG_TREE_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_SRCU=y +# CONFIG_TASKS_RCU is not set +CONFIG_RCU_STALL_COMMON=y +# CONFIG_TREE_RCU_TRACE is not set +# CONFIG_RCU_EXPEDITE_BOOT is not set +CONFIG_BUILD_BIN2C=y +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_GENERIC_SCHED_CLOCK=y +CONFIG_CGROUPS=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_PAGE_COUNTER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +CONFIG_MEMCG_SWAP_ENABLED=y +CONFIG_MEMCG_KMEM=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_RT_GROUP_SCHED=y +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_CGROUP_WRITEBACK=y +# CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +CONFIG_SCHED_AUTOGROUP=y +# CONFIG_SCHED_TUNE is not set +CONFIG_DEFAULT_USE_ENERGY_AWARE=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +# CONFIG_RD_BZIP2 is not set +# CONFIG_RD_LZMA is not set +# CONFIG_RD_XZ is not set +# CONFIG_RD_LZO is not set +CONFIG_RD_LZ4=y +# CONFIG_INITRD_ASYNC is not set +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_BPF=y +CONFIG_EXPERT=y +CONFIG_UID16=y +CONFIG_MULTIUSER=y +# CONFIG_SGETMASK_SYSCALL is not set +CONFIG_SYSFS_SYSCALL=y +# CONFIG_SYSCTL_SYSCALL is not set +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_ALL is not set +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +# CONFIG_BPF_SYSCALL is not set +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y +# CONFIG_USERFAULTFD is not set +CONFIG_PCI_QUIRKS=y +CONFIG_MEMBARRIER=y +CONFIG_EMBEDDED=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_PERF_USE_VMALLOC=y + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +# CONFIG_SLOB is not set +CONFIG_SLUB_CPU_PARTIAL=y +# CONFIG_SYSTEM_DATA_VERIFICATION is not set +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +# CONFIG_KPROBES is not set +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_UPROBES is not set +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_ATTRS=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_CC_STACKPROTECTOR=y +CONFIG_CC_STACKPROTECTOR=y +# CONFIG_CC_STACKPROTECTOR_NONE is not set +CONFIG_CC_STACKPROTECTOR_REGULAR=y +# CONFIG_CC_STACKPROTECTOR_STRONG is not set +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_ARCH_MMAP_RND_BITS=18 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_SLABINFO=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +# CONFIG_MODULE_FORCE_LOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODVERSIONS=y +CONFIG_MODULE_SRCVERSION_ALL=y +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +# CONFIG_BLK_DEV_INTEGRITY is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_CMDLINE_PARSER is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +CONFIG_RK_PARTITION=y +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_FREEZER=y + +# +# Platform selection +# +# CONFIG_ARCH_BCM_IPROC is not set +# CONFIG_ARCH_BERLIN is not set +# CONFIG_ARCH_EXYNOS7 is not set +# CONFIG_ARCH_LAYERSCAPE is not set +# CONFIG_ARCH_HISI is not set +# CONFIG_ARCH_MEDIATEK is not set +# CONFIG_ARCH_QCOM is not set +CONFIG_ARCH_ROCKCHIP=y +# CONFIG_ARCH_SEATTLE is not set +# CONFIG_ARCH_STRATIX10 is not set +# CONFIG_ARCH_TEGRA is not set +# CONFIG_ARCH_SPRD is not set +# CONFIG_ARCH_THUNDER is not set +# CONFIG_ARCH_VEXPRESS is not set +# CONFIG_ARCH_XGENE is not set +# CONFIG_ARCH_ZYNQMP is not set + +# +# Bus support +# +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_DOMAINS_GENERIC=y +CONFIG_PCI_SYSCALL=y +CONFIG_PCI_BUS_ADDR_T_64BIT=y +CONFIG_PCI_MSI=y +CONFIG_PCI_MSI_IRQ_DOMAIN=y +# CONFIG_PCI_DEBUG is not set +# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set +# CONFIG_PCI_STUB is not set +# CONFIG_PCI_IOV is not set +# CONFIG_PCI_PRI is not set +# CONFIG_PCI_PASID is not set + +# +# PCI host controller drivers +# +# CONFIG_PCIE_DW_ROCKCHIP is not set +# CONFIG_ROCKCHIP_PCIE_DMA_OBJ is not set +# CONFIG_PCI_HOST_GENERIC is not set +# CONFIG_PCIE_IPROC is not set +# CONFIG_PCI_HISI is not set +CONFIG_PCIE_ROCKCHIP=y +CONFIG_PCIEPORTBUS=y +CONFIG_PCIEAER=y +# CONFIG_PCIE_ECRC is not set +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +# CONFIG_PCIEASPM_DEBUG is not set +# CONFIG_PCIEASPM_DEFAULT is not set +CONFIG_PCIEASPM_POWERSAVE=y +# CONFIG_PCIEASPM_PERFORMANCE is not set +CONFIG_PCIE_PME=y +# CONFIG_HOTPLUG_PCI is not set + +# +# Kernel Features +# + +# +# ARM errata workarounds via the alternatives framework +# +# CONFIG_ARM64_ERRATUM_826319 is not set +# CONFIG_ARM64_ERRATUM_827319 is not set +# CONFIG_ARM64_ERRATUM_824069 is not set +# CONFIG_ARM64_ERRATUM_819472 is not set +# CONFIG_ARM64_ERRATUM_832075 is not set +CONFIG_ARM64_ERRATUM_845719=y +CONFIG_ARM64_ERRATUM_843419=y +# CONFIG_ARM64_ERRATUM_1024718 is not set +# CONFIG_CAVIUM_ERRATUM_22375 is not set +# CONFIG_CAVIUM_ERRATUM_23154 is not set +CONFIG_CAVIUM_ERRATUM_27456=y +CONFIG_ARM64_4K_PAGES=y +# CONFIG_ARM64_16K_PAGES is not set +# CONFIG_ARM64_64K_PAGES is not set +CONFIG_ARM64_VA_BITS_39=y +# CONFIG_ARM64_VA_BITS_48 is not set +CONFIG_ARM64_VA_BITS=39 +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_SCHED_MC=y +# CONFIG_SCHED_SMT is not set +CONFIG_NR_CPUS=8 +CONFIG_HOTPLUG_CPU=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set +# CONFIG_HZ_100 is not set +# CONFIG_HZ_250 is not set +# CONFIG_HZ_300 is not set +CONFIG_HZ_1000=y +CONFIG_HZ=1000 +CONFIG_SCHED_HRTICK=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_HAVE_ARCH_PFN_VALID=y +CONFIG_HW_PERF_EVENTS=y +CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_NO_BOOTMEM=y +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_ZONE_DMA_FLAG=1 +CONFIG_BOUNCE=y +# CONFIG_KSM is not set +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_CLEANCACHE=y +# CONFIG_FRONTSWAP is not set +# CONFIG_CMA is not set +# CONFIG_ZPOOL is not set +# CONFIG_ZBUD is not set +CONFIG_ZSMALLOC=y +# CONFIG_PGTABLE_MAPPING is not set +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_IDLE_PAGE_TRACKING is not set +CONFIG_FRAME_VECTOR=y +CONFIG_SECCOMP=y +# CONFIG_KEXEC is not set +# CONFIG_CRASH_DUMP is not set +# CONFIG_XEN is not set +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_UNMAP_KERNEL_AT_EL0=y +CONFIG_ARMV8_DEPRECATED=y +CONFIG_SWP_EMULATION=y +CONFIG_CP15_BARRIER_EMULATION=y +CONFIG_SETEND_EMULATION=y +# CONFIG_ARM64_SW_TTBR0_PAN is not set + +# +# ARMv8.1 architectural features +# +CONFIG_ARM64_HW_AFDBM=y +CONFIG_ARM64_PAN=y +# CONFIG_ARM64_LSE_ATOMICS is not set +CONFIG_ARM64_UAO=y +CONFIG_ARM64_MODULE_CMODEL_LARGE=y +# CONFIG_RANDOMIZE_BASE is not set + +# +# Boot options +# +CONFIG_CMDLINE="" +# CONFIG_EFI is not set +# CONFIG_BUILD_ARM64_APPENDED_DTB_IMAGE is not set + +# +# Userspace binary formats +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +# CONFIG_HAVE_AOUT is not set +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y +CONFIG_COMPAT=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_KEYS_COMPAT=y + +# +# Power management options +# +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +# CONFIG_SUSPEND_SKIP_SYNC is not set +CONFIG_HAS_WAKELOCK=y +CONFIG_WAKELOCK=y +# CONFIG_HIBERNATION is not set +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +# CONFIG_PM_AUTOSLEEP is not set +# CONFIG_PM_WAKELOCKS is not set +CONFIG_PM=y +CONFIG_PM_DEBUG=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_SLEEP_DEBUG=y +# CONFIG_DPM_WATCHDOG is not set +CONFIG_PM_OPP=y +CONFIG_PM_CLK=y +CONFIG_PM_GENERIC_DOMAINS=y +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_PM_GENERIC_DOMAINS_SLEEP=y +CONFIG_PM_GENERIC_DOMAINS_OF=y +CONFIG_CPU_PM=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y + +# +# CPU Power Management +# + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_DT_IDLE_STATES=y + +# +# ARM CPU Idle Drivers +# +CONFIG_ARM_CPUIDLE=y +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=y +# CONFIG_CPU_FREQ_STAT_DETAILS is not set +CONFIG_CPU_FREQ_TIMES=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_INTERACTIVE=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y + +# +# CPU frequency scaling drivers +# +CONFIG_CPUFREQ_DT=y +# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set +# CONFIG_ARM_KIRKWOOD_CPUFREQ is not set +CONFIG_ARM_ROCKCHIP_CPUFREQ=y +CONFIG_NET=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_NET_INGRESS=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=m +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_USER=m +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +CONFIG_XFRM_STATISTICS=y +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +# CONFIG_IP_PNP_BOOTP is not set +CONFIG_IP_PNP_RARP=y +CONFIG_NET_IPIP=m +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +CONFIG_NET_FOU=m +CONFIG_NET_FOU_IP_TUNNELS=y +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +CONFIG_INET_LRO=y +CONFIG_INET_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_UDP_DIAG=m +CONFIG_INET_DIAG_DESTROY=y +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_DCTCP=m +CONFIG_TCP_CONG_CDG=m +CONFIG_DEFAULT_CUBIC=y +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_IPCOMP=m +CONFIG_IPV6_MIP6=m +CONFIG_IPV6_ILA=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m +CONFIG_IPV6_VTI=m +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_PIMSM_V2=y +CONFIG_NETLABEL=y +# CONFIG_ANDROID_PARANOID_NETWORK is not set +CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=m + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_COMMON=m +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_ZONES=y +# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_EVENTS=y +# CONFIG_NF_CONNTRACK_TIMEOUT is not set +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CT_PROTO_DCCP=m +CONFIG_NF_CT_PROTO_GRE=m +CONFIG_NF_CT_PROTO_SCTP=m +CONFIG_NF_CT_PROTO_UDPLITE=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_PPTP=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +# CONFIG_NF_CT_NETLINK_TIMEOUT is not set +# CONFIG_NETFILTER_NETLINK_GLUE_CT is not set +CONFIG_NF_NAT=m +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PROTO_DCCP=m +CONFIG_NF_NAT_PROTO_UDPLITE=m +CONFIG_NF_NAT_PROTO_SCTP=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_NAT_REDIRECT=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_INET=m +CONFIG_NF_TABLES_NETDEV=m +# CONFIG_NFT_EXTHDR is not set +# CONFIG_NFT_META is not set +CONFIG_NFT_CT=m +# CONFIG_NFT_RBTREE is not set +CONFIG_NFT_HASH=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_LOG=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_NAT=m +CONFIG_NFT_QUEUE=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_REJECT_INET=m +CONFIG_NFT_COMPAT=m +CONFIG_NETFILTER_XTABLES=m + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_SET=m + +# +# Xtables targets +# +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +# CONFIG_NETFILTER_XT_MATCH_QUOTA2 is not set +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_IP_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +CONFIG_IP_VS_IPV6=y +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS application helper +# +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_PE_SIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_CONNTRACK_IPV4=m +CONFIG_NF_TABLES_IPV4=m +CONFIG_NFT_CHAIN_ROUTE_IPV4=m +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NFT_DUP_IPV4=m +CONFIG_NF_TABLES_ARP=m +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NFT_CHAIN_NAT_IPV4=m +CONFIG_NF_NAT_MASQUERADE_IPV4=m +CONFIG_NFT_MASQ_IPV4=m +CONFIG_NFT_REDIR_IPV4=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_NF_TABLES_IPV6=m +CONFIG_NFT_CHAIN_ROUTE_IPV6=m +CONFIG_NFT_REJECT_IPV6=m +CONFIG_NFT_DUP_IPV6=m +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NFT_CHAIN_NAT_IPV6=m +CONFIG_NF_NAT_MASQUERADE_IPV6=m +CONFIG_NFT_MASQ_IPV6=m +CONFIG_NFT_REDIR_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +# CONFIG_IP6_NF_SECURITY is not set +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m + +# +# DECnet: Netfilter Configuration +# +CONFIG_DECNET_NF_GRABULATOR=m +CONFIG_NF_TABLES_BRIDGE=m +CONFIG_NFT_BRIDGE_REJECT=m +CONFIG_NF_LOG_BRIDGE=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_IP_DCCP=m +CONFIG_INET_DCCP_DIAG=m + +# +# DCCP CCIDs Configuration +# +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +# CONFIG_IP_DCCP_CCID3 is not set + +# +# DCCP Kernel Hacking +# +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_IP_SCTP=m +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +CONFIG_RDS=m +CONFIG_RDS_TCP=m +# CONFIG_RDS_DEBUG is not set +CONFIG_TIPC=m +CONFIG_TIPC_MEDIA_UDP=y +CONFIG_ATM=m +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=m +CONFIG_L2TP_ETH=m +CONFIG_STP=m +CONFIG_GARP=m +CONFIG_MRP=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_HAVE_NET_DSA=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_HWMON=y +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_DECNET=m +# CONFIG_DECNET_ROUTER is not set +CONFIG_LLC=m +CONFIG_LLC2=m +# CONFIG_IPX is not set +CONFIG_ATALK=m +CONFIG_DEV_APPLETALK=m +# CONFIG_IPDDP is not set +CONFIG_X25=m +CONFIG_LAPB=m +CONFIG_PHONET=m +CONFIG_6LOWPAN=m +CONFIG_6LOWPAN_NHC=m +CONFIG_6LOWPAN_NHC_DEST=m +CONFIG_6LOWPAN_NHC_FRAGMENT=m +CONFIG_6LOWPAN_NHC_HOP=m +CONFIG_6LOWPAN_NHC_IPV6=m +CONFIG_6LOWPAN_NHC_MOBILITY=m +CONFIG_6LOWPAN_NHC_ROUTING=m +CONFIG_6LOWPAN_NHC_UDP=m +CONFIG_IEEE802154=m +# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set +CONFIG_IEEE802154_SOCKET=m +CONFIG_IEEE802154_6LOWPAN=m +CONFIG_MAC802154=m +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_PIE=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_PLUG=m + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_U32=m +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLS_U32_MARK=y +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_TEXT=m +# CONFIG_NET_EMATCH_CANID is not set +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_GACT=m +CONFIG_GACT_PROB=y +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_ACT_BPF=m +CONFIG_NET_ACT_CONNMARK=m +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_SCH_FIFO=y +CONFIG_DCB=y +CONFIG_DNS_RESOLVER=y +CONFIG_BATMAN_ADV=m +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +CONFIG_BATMAN_ADV_NC=y +CONFIG_BATMAN_ADV_MCAST=y +# CONFIG_BATMAN_ADV_DEBUG is not set +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_VSOCKETS=m +CONFIG_NETLINK_DIAG=m +CONFIG_MPLS=y +CONFIG_NET_MPLS_GSO=m +CONFIG_MPLS_ROUTING=m +CONFIG_MPLS_IPTUNNEL=m +CONFIG_HSR=m +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_L3_MASTER_DEV=y +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_XPS=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_BPF_JIT=y +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +CONFIG_NET_PKTGEN=m +CONFIG_NET_DROP_MONITOR=m +CONFIG_HAMRADIO=y + +# +# Packet Radio protocols +# +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_NETROM=m +CONFIG_ROSE=m + +# +# AX.25 network device drivers +# +CONFIG_MKISS=m +CONFIG_6PACK=m +CONFIG_BPQETHER=m +CONFIG_BAYCOM_SER_FDX=m +CONFIG_BAYCOM_SER_HDX=m +CONFIG_YAM=m +CONFIG_CAN=m +CONFIG_CAN_RAW=m +CONFIG_CAN_BCM=m +CONFIG_CAN_GW=m + +# +# CAN Device Drivers +# +CONFIG_CAN_VCAN=m +CONFIG_CAN_SLCAN=m +CONFIG_CAN_DEV=m +CONFIG_CAN_CALC_BITTIMING=y +# CONFIG_CAN_LEDS is not set +# CONFIG_CAN_GRCAN is not set +# CONFIG_CAN_XILINXCAN is not set +# CONFIG_CAN_SJA1000 is not set +# CONFIG_CAN_C_CAN is not set +# CONFIG_CAN_M_CAN is not set +# CONFIG_CAN_CC770 is not set + +# +# CAN SPI interfaces +# +CONFIG_CAN_MCP251X=m + +# +# CAN USB interfaces +# +CONFIG_CAN_EMS_USB=m +CONFIG_CAN_ESD_USB2=m +CONFIG_CAN_GS_USB=m +CONFIG_CAN_KVASER_USB=m +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_8DEV_USB=m +# CONFIG_CAN_SOFTING is not set +# CONFIG_CAN_DEBUG_DEVICES is not set +# CONFIG_IRDA is not set +CONFIG_BT=y +CONFIG_BT_BREDR=y +CONFIG_BT_RFCOMM=m +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_HIDP=m +CONFIG_BT_HS=y +CONFIG_BT_LE=y +CONFIG_BT_6LOWPAN=m +CONFIG_BT_SELFTEST=y +CONFIG_BT_SELFTEST_ECDH=y +CONFIG_BT_SELFTEST_SMP=y +CONFIG_BT_DEBUGFS=y + +# +# Bluetooth device drivers +# +CONFIG_BT_INTEL=m +CONFIG_BT_BCM=m +CONFIG_BT_RTL=m +CONFIG_BT_QCA=m +CONFIG_BT_RTKBTUSB=m +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBTUSB_BCM=y +CONFIG_BT_HCIBTUSB_RTL=y +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIUART_INTEL=y +CONFIG_BT_HCIUART_BCM=y +CONFIG_BT_HCIUART_QCA=y +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIVHCI=m +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_BT_ATH3K=m +CONFIG_BT_WILINK=m +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +CONFIG_RXKAD=m +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WEXT_PRIV=y +CONFIG_CFG80211=y +# CONFIG_NL80211_TESTMODE is not set +CONFIG_CFG80211_DEVELOPER_WARNINGS=y +# CONFIG_CFG80211_REG_DEBUG is not set +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +# CONFIG_CFG80211_DEFAULT_PS is not set +CONFIG_CFG80211_DEBUGFS=y +# CONFIG_CFG80211_INTERNAL_REGDB is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_WEXT=y +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_WEP=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +CONFIG_LIB80211_DEBUG=y +CONFIG_MAC80211=y +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_MINSTREL_VHT=y +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_LEDS=y +CONFIG_MAC80211_DEBUGFS=y +# CONFIG_MAC80211_MESSAGE_TRACING is not set +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +CONFIG_WIMAX=m +CONFIG_WIMAX_DEBUG_LEVEL=8 +CONFIG_RFKILL=y +CONFIG_RFKILL_PM=y +CONFIG_RFKILL_LEDS=y +CONFIG_RFKILL_INPUT=y +# CONFIG_RFKILL_REGULATOR is not set +# CONFIG_RFKILL_GPIO is not set +CONFIG_NET_9P=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_CAIF=m +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_NETDEV=m +CONFIG_CAIF_USB=m +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +CONFIG_NFC=m +CONFIG_NFC_DIGITAL=m +CONFIG_NFC_NCI=m +CONFIG_NFC_NCI_SPI=m +CONFIG_NFC_NCI_UART=m +CONFIG_NFC_HCI=m +CONFIG_NFC_SHDLC=y + +# +# Near Field Communication (NFC) devices +# +CONFIG_NFC_PN533=m +# CONFIG_NFC_WILINK is not set +CONFIG_NFC_TRF7970A=m +CONFIG_NFC_SIM=m +CONFIG_NFC_PORT100=m +CONFIG_NFC_FDP=m +CONFIG_NFC_FDP_I2C=m +CONFIG_NFC_PN544=m +CONFIG_NFC_PN544_I2C=m +CONFIG_NFC_MICROREAD=m +CONFIG_NFC_MICROREAD_I2C=m +CONFIG_NFC_MRVL=m +CONFIG_NFC_MRVL_USB=m +CONFIG_NFC_MRVL_UART=m +CONFIG_NFC_MRVL_I2C=m +CONFIG_NFC_MRVL_SPI=m +CONFIG_NFC_ST21NFCA=m +CONFIG_NFC_ST21NFCA_I2C=m +CONFIG_NFC_ST_NCI=m +CONFIG_NFC_ST_NCI_I2C=m +CONFIG_NFC_ST_NCI_SPI=m +CONFIG_NFC_NXP_NCI=m +CONFIG_NFC_NXP_NCI_I2C=m +CONFIG_NFC_S3FWRN5=m +CONFIG_NFC_S3FWRN5_I2C=m +CONFIG_LWTUNNEL=y +CONFIG_DST_CACHE=y +CONFIG_HAVE_BPF_JIT=y +CONFIG_HAVE_EBPF_JIT=y + +# +# Device Drivers +# +CONFIG_ARM_AMBA=y +# CONFIG_TEGRA_AHB is not set + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +CONFIG_FIRMWARE_IN_KERNEL=y +CONFIG_EXTRA_FIRMWARE="rockchip/dptx.bin" +CONFIG_EXTRA_FIRMWARE_DIR="firmware" +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y +CONFIG_WANT_DEV_COREDUMP=y +CONFIG_ALLOW_DEV_COREDUMP=y +CONFIG_DEV_COREDUMP=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_SYS_HYPERVISOR is not set +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=y +CONFIG_REGMAP_SPI=y +CONFIG_REGMAP_MMIO=y +CONFIG_REGMAP_IRQ=y +CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_FENCE_TRACE is not set + +# +# Bus devices +# +# CONFIG_ARM_CCI400_PMU is not set +# CONFIG_ARM_CCI500_PMU is not set +# CONFIG_ARM_CCN is not set +# CONFIG_VEXPRESS_CONFIG is not set +CONFIG_CONNECTOR=m +# CONFIG_MTD is not set +CONFIG_DTC=y +CONFIG_OF=y +# CONFIG_OF_UNITTEST is not set +CONFIG_OF_FLATTREE=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_ADDRESS_PCI=y +CONFIG_OF_IRQ=y +CONFIG_OF_NET=y +CONFIG_OF_MDIO=y +CONFIG_OF_PCI=y +CONFIG_OF_PCI_IRQ=y +CONFIG_OF_RESERVED_MEM=y +# CONFIG_OF_OVERLAY is not set +# CONFIG_PARPORT is not set +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_NULL_BLK is not set +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +CONFIG_ZRAM=y +# CONFIG_ZRAM_WRITEBACK is not set +# CONFIG_ZRAM_MEMORY_TRACKING is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_DRBD=m +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_SKD is not set +# CONFIG_BLK_DEV_SX8 is not set +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_COUNT=8 +CONFIG_BLK_DEV_RAM_SIZE=4096 +# CONFIG_CDROM_PKTCDVD is not set +CONFIG_ATA_OVER_ETH=m +# CONFIG_BLK_DEV_RBD is not set +# CONFIG_BLK_DEV_RSXX is not set +CONFIG_BLK_DEV_NVME=y + +# +# Misc devices +# +CONFIG_ROCKCHIP_SCR=y +# CONFIG_SENSORS_LIS3LV02D is not set +# CONFIG_AD525X_DPOT is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_PHANTOM is not set +# CONFIG_SGI_IOC4 is not set +# CONFIG_TIFM_CORE is not set +# CONFIG_ICS932S401 is not set +# CONFIG_ENCLOSURE_SERVICES is not set +# CONFIG_HP_ILO is not set +# CONFIG_APDS9802ALS is not set +# CONFIG_ISL29003 is not set +# CONFIG_ISL29020 is not set +# CONFIG_SENSORS_TSL2550 is not set +# CONFIG_SENSORS_BH1780 is not set +# CONFIG_SENSORS_BH1770 is not set +# CONFIG_SENSORS_APDS990X is not set +# CONFIG_HMC6352 is not set +# CONFIG_DS1682 is not set +# CONFIG_TI_DAC7512 is not set +# CONFIG_BMP085_I2C is not set +# CONFIG_BMP085_SPI is not set +# CONFIG_USB_SWITCH_FSA9480 is not set +# CONFIG_LATTICE_ECP3_CONFIG is not set +CONFIG_SRAM=y +CONFIG_UID_SYS_STATS=y +# CONFIG_UID_SYS_STATS_DEBUG is not set +CONFIG_MEMORY_STATE_TIME=y +# CONFIG_USB_CAM_GPIO is not set +# CONFIG_GPIO_DET is not set +# CONFIG_C2PORT is not set + +# +# EEPROM support +# +CONFIG_EEPROM_AT24=m +# CONFIG_EEPROM_AT25 is not set +# CONFIG_EEPROM_LEGACY is not set +# CONFIG_EEPROM_MAX6875 is not set +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +# CONFIG_CB710_CORE is not set + +# +# Texas Instruments shared transport line discipline +# +CONFIG_TI_ST=m +# CONFIG_SENSORS_LIS3_SPI is not set +# CONFIG_SENSORS_LIS3_I2C is not set + +# +# Altera FPGA firmware download module +# +# CONFIG_ALTERA_STAPL is not set + +# +# Intel MIC Bus Driver +# + +# +# SCIF Bus Driver +# + +# +# Intel MIC Host Driver +# + +# +# Intel MIC Card Driver +# + +# +# SCIF Driver +# + +# +# Intel MIC Coprocessor State Management (COSM) Drivers +# +# CONFIG_GENWQE is not set +# CONFIG_ECHO is not set +# CONFIG_CXL_BASE is not set +# CONFIG_CXL_KERNEL_API is not set +# CONFIG_CXL_EEH is not set + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +# CONFIG_RAID_ATTRS is not set +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +# CONFIG_SCSI_NETLINK is not set +# CONFIG_SCSI_MQ_DEFAULT is not set +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=y +CONFIG_CHR_DEV_ST=m +CONFIG_CHR_DEV_OSST=m +CONFIG_BLK_DEV_SR=m +# CONFIG_BLK_DEV_SR_VENDOR is not set +CONFIG_CHR_DEV_SG=m +# CONFIG_CHR_DEV_SCH is not set +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +CONFIG_SCSI_SPI_ATTRS=y +# CONFIG_SCSI_FC_ATTRS is not set +CONFIG_SCSI_ISCSI_ATTRS=m +# CONFIG_SCSI_SAS_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set +# CONFIG_SCSI_SRP_ATTRS is not set +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_BE2ISCSI is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_HPSA is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_MVSAS is not set +# CONFIG_SCSI_MVUMI is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_ESAS2R is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_SAS is not set +# CONFIG_SCSI_MPT3SAS is not set +# CONFIG_SCSI_MPT2SAS is not set +CONFIG_SCSI_UFSHCD=m +# CONFIG_SCSI_UFSHCD_PCI is not set +CONFIG_SCSI_UFSHCD_PLATFORM=m +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_SNIC is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_IPR is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_WD719X is not set +# CONFIG_SCSI_DEBUG is not set +# CONFIG_SCSI_PMCRAID is not set +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set +# CONFIG_SCSI_DH is not set +# CONFIG_SCSI_OSD_INITIATOR is not set +CONFIG_HAVE_PATA_PLATFORM=y +CONFIG_ATA=y +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_SATA_PMP=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=y +# CONFIG_SATA_AHCI_PLATFORM is not set +# CONFIG_AHCI_CEVA is not set +# CONFIG_AHCI_QORIQ is not set +# CONFIG_SATA_INIC162X is not set +# CONFIG_SATA_ACARD_AHCI is not set +# CONFIG_SATA_SIL24 is not set +CONFIG_ATA_SFF=y + +# +# SFF controllers with custom DMA interface +# +# CONFIG_PDC_ADMA is not set +# CONFIG_SATA_QSTOR is not set +# CONFIG_SATA_SX4 is not set +CONFIG_ATA_BMDMA=y + +# +# SATA SFF controllers with BMDMA +# +# CONFIG_ATA_PIIX is not set +# CONFIG_SATA_MV is not set +# CONFIG_SATA_NV is not set +# CONFIG_SATA_PROMISE is not set +# CONFIG_SATA_SIL is not set +# CONFIG_SATA_SIS is not set +# CONFIG_SATA_SVW is not set +# CONFIG_SATA_ULI is not set +# CONFIG_SATA_VIA is not set +# CONFIG_SATA_VITESSE is not set + +# +# PATA SFF controllers with BMDMA +# +# CONFIG_PATA_ALI is not set +# CONFIG_PATA_AMD is not set +# CONFIG_PATA_ARTOP is not set +# CONFIG_PATA_ATIIXP is not set +# CONFIG_PATA_ATP867X is not set +# CONFIG_PATA_CMD64X is not set +# CONFIG_PATA_CYPRESS is not set +# CONFIG_PATA_EFAR is not set +# CONFIG_PATA_HPT366 is not set +# CONFIG_PATA_HPT37X is not set +# CONFIG_PATA_HPT3X2N is not set +# CONFIG_PATA_HPT3X3 is not set +# CONFIG_PATA_IT8213 is not set +# CONFIG_PATA_IT821X is not set +# CONFIG_PATA_JMICRON is not set +# CONFIG_PATA_MARVELL is not set +# CONFIG_PATA_NETCELL is not set +# CONFIG_PATA_NINJA32 is not set +# CONFIG_PATA_NS87415 is not set +# CONFIG_PATA_OLDPIIX is not set +# CONFIG_PATA_OPTIDMA is not set +# CONFIG_PATA_PDC2027X is not set +# CONFIG_PATA_PDC_OLD is not set +# CONFIG_PATA_RADISYS is not set +# CONFIG_PATA_RDC is not set +# CONFIG_PATA_SCH is not set +# CONFIG_PATA_SERVERWORKS is not set +# CONFIG_PATA_SIL680 is not set +# CONFIG_PATA_SIS is not set +# CONFIG_PATA_TOSHIBA is not set +# CONFIG_PATA_TRIFLEX is not set +# CONFIG_PATA_VIA is not set +# CONFIG_PATA_WINBOND is not set + +# +# PIO-only SFF controllers +# +# CONFIG_PATA_CMD640_PCI is not set +# CONFIG_PATA_MPIIX is not set +# CONFIG_PATA_NS87410 is not set +# CONFIG_PATA_OPTI is not set +# CONFIG_PATA_PLATFORM is not set +# CONFIG_PATA_RZ1000 is not set + +# +# Generic fallback / legacy drivers +# +# CONFIG_ATA_GENERIC is not set +# CONFIG_PATA_LEGACY is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +# CONFIG_MD_MULTIPATH is not set +CONFIG_MD_FAULTY=m +# CONFIG_MD_CLUSTER is not set +CONFIG_BCACHE=m +# CONFIG_BCACHE_DEBUG is not set +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DM=y +# CONFIG_DM_MQ_DEFAULT is not set +# CONFIG_DM_DEBUG is not set +CONFIG_DM_BUFIO=y +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_PERSISTENT_DATA=m +# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set +CONFIG_DM_CRYPT=y +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_MQ=m +CONFIG_DM_CACHE_SMQ=m +CONFIG_DM_CACHE_CLEANER=m +CONFIG_DM_ERA=m +CONFIG_DM_MIRROR=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_RAID=m +CONFIG_DM_ZERO=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_DELAY=m +CONFIG_DM_UEVENT=y +CONFIG_DM_FLAKEY=m +CONFIG_DM_VERITY=y +CONFIG_DM_VERITY_FEC=y +CONFIG_DM_SWITCH=m +CONFIG_DM_LOG_WRITES=m +# CONFIG_DM_VERITY_AVB is not set +# CONFIG_DM_ANDROID_VERITY_AT_MOST_ONCE_DEFAULT_ENABLED is not set +# CONFIG_TARGET_CORE is not set +# CONFIG_FUSION is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_FIREWIRE_NOSY is not set +CONFIG_NETDEVICES=y +CONFIG_MII=y +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +CONFIG_EQUALIZER=m +CONFIG_NET_FC=y +CONFIG_IFB=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_IPVLAN=m +CONFIG_VXLAN=m +CONFIG_GENEVE=m +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETPOLL=y +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_TUN=m +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_VETH=m +CONFIG_NLMON=m +CONFIG_NET_VRF=m +# CONFIG_ARCNET is not set +CONFIG_ATM_DRIVERS=y +# CONFIG_ATM_DUMMY is not set +# CONFIG_ATM_TCP is not set +# CONFIG_ATM_LANAI is not set +# CONFIG_ATM_ENI is not set +# CONFIG_ATM_NICSTAR is not set +# CONFIG_ATM_IDT77252 is not set +# CONFIG_ATM_IA is not set +# CONFIG_ATM_FORE200E is not set +# CONFIG_ATM_HE is not set +# CONFIG_ATM_SOLOS is not set + +# +# CAIF transport drivers +# +# CONFIG_CAIF_TTY is not set +# CONFIG_CAIF_SPI_SLAVE is not set +# CONFIG_CAIF_HSI is not set +# CONFIG_CAIF_VIRTIO is not set + +# +# Distributed Switch Architecture drivers +# +# CONFIG_NET_DSA_MV88E6XXX is not set +# CONFIG_NET_DSA_MV88E6060 is not set +# CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set +# CONFIG_NET_DSA_MV88E6131 is not set +# CONFIG_NET_DSA_MV88E6123_61_65 is not set +# CONFIG_NET_DSA_MV88E6171 is not set +# CONFIG_NET_DSA_MV88E6352 is not set +# CONFIG_NET_DSA_BCM_SF2 is not set +CONFIG_ETHERNET=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_ALTERA_TSE is not set +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +# CONFIG_NET_VENDOR_AURORA is not set +# CONFIG_NET_CADENCE is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_BROCADE is not set +# CONFIG_NET_VENDOR_CAVIUM is not set +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_DNET is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +# CONFIG_NET_VENDOR_EXAR is not set +# CONFIG_NET_VENDOR_HISILICON is not set +# CONFIG_NET_VENDOR_HP is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_JME is not set +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MELLANOX is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_FEALNX is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_ETHOC is not set +# CONFIG_NET_PACKET_ENGINE is not set +# CONFIG_NET_VENDOR_QLOGIC is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +CONFIG_NET_VENDOR_REALTEK=y +# CONFIG_8139CP is not set +# CONFIG_8139TOO is not set +CONFIG_R8169=m +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_SFC is not set +# CONFIG_NET_VENDOR_SMSC is not set +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_STMMAC_ETH=y +CONFIG_STMMAC_PLATFORM=y +CONFIG_DWMAC_GENERIC=y +# CONFIG_DWMAC_IPQ806X is not set +# CONFIG_DWMAC_LPC18XX is not set +# CONFIG_DWMAC_MESON is not set +CONFIG_DWMAC_ROCKCHIP=y +# CONFIG_DWMAC_SOCFPGA is not set +# CONFIG_DWMAC_STI is not set +# CONFIG_DWMAC_SUNXI is not set +# CONFIG_STMMAC_PCI is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_SYNOPSYS is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_PHYLIB=y + +# +# MII PHY device drivers +# +# CONFIG_AQUANTIA_PHY is not set +# CONFIG_AT803X_PHY is not set +# CONFIG_AMD_PHY is not set +# CONFIG_MARVELL_PHY is not set +# CONFIG_DAVICOM_PHY is not set +# CONFIG_QSEMI_PHY is not set +# CONFIG_LXT_PHY is not set +# CONFIG_CICADA_PHY is not set +# CONFIG_VITESSE_PHY is not set +# CONFIG_TERANETICS_PHY is not set +CONFIG_ROCKCHIP_PHY=y +# CONFIG_SMSC_PHY is not set +# CONFIG_BROADCOM_PHY is not set +# CONFIG_BCM7XXX_PHY is not set +# CONFIG_BCM87XX_PHY is not set +# CONFIG_ICPLUS_PHY is not set +CONFIG_REALTEK_PHY=y +# CONFIG_NATIONAL_PHY is not set +# CONFIG_STE10XP is not set +# CONFIG_LSI_ET1011C_PHY is not set +# CONFIG_MICREL_PHY is not set +# CONFIG_DP83848_PHY is not set +# CONFIG_DP83867_PHY is not set +CONFIG_MICROCHIP_PHY=m +# CONFIG_FIXED_PHY is not set +# CONFIG_MDIO_BITBANG is not set +# CONFIG_MDIO_OCTEON is not set +# CONFIG_MDIO_BUS_MUX_GPIO is not set +# CONFIG_MDIO_BUS_MUX_MMIOREG is not set +# CONFIG_MDIO_BCM_UNIMAC is not set +# CONFIG_MICREL_KS8995MA is not set +CONFIG_PPP=y +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +# CONFIG_PPPOATM is not set +CONFIG_PPPOE=m +CONFIG_PPTP=m +CONFIG_PPPOL2TP=m +CONFIG_PPPOLAC=m +CONFIG_PPPOPNS=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_SYNC_TTY=m +CONFIG_SLIP=m +CONFIG_SLHC=y +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_SMART=y +# CONFIG_SLIP_MODE_SLIP6 is not set +CONFIG_USB_NET_DRIVERS=y +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_LAN78XX=m +CONFIG_USB_USBNET=y +CONFIG_USB_NET_AX8817X=y +CONFIG_USB_NET_AX88179_178A=y +CONFIG_USB_NET_CDCETHER=y +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_HUAWEI_CDC_NCM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_SR9800=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_CDC_SUBSET_ENABLE=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AN2720=y +CONFIG_USB_BELKIN=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_EPSON2888=y +CONFIG_USB_KC2190=y +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_QMI_WWAN=y +CONFIG_USB_HSO=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_CDC_PHONET=m +CONFIG_USB_IPHETH=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_VL600=m +CONFIG_USB_NET_CH9200=m +CONFIG_WLAN=y +CONFIG_LIBERTAS_THINFIRM=m +# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set +CONFIG_LIBERTAS_THINFIRM_USB=m +# CONFIG_ATMEL is not set +CONFIG_AT76C50X_USB=m +# CONFIG_PRISM54 is not set +CONFIG_USB_ZD1201=m +CONFIG_USB_NET_RNDIS_WLAN=m +# CONFIG_ADM8211 is not set +# CONFIG_RTL8180 is not set +# CONFIG_RTL8187 is not set +CONFIG_MAC80211_HWSIM=m +# CONFIG_VIRT_WIFI is not set +# CONFIG_MWL8K is not set +CONFIG_ATH_COMMON=m +CONFIG_ATH_CARDS=m +# CONFIG_ATH_DEBUG is not set +# CONFIG_ATH5K is not set +# CONFIG_ATH5K_PCI is not set +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=m +CONFIG_ATH9K_PCI=y +# CONFIG_ATH9K_AHB is not set +# CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_DYNACK is not set +# CONFIG_ATH9K_WOW is not set +CONFIG_ATH9K_RFKILL=y +# CONFIG_ATH9K_CHANNEL_CONTEXT is not set +CONFIG_ATH9K_PCOEM=y +CONFIG_ATH9K_HTC=m +# CONFIG_ATH9K_HTC_DEBUGFS is not set +CONFIG_CARL9170=m +CONFIG_CARL9170_LEDS=y +# CONFIG_CARL9170_DEBUGFS is not set +CONFIG_CARL9170_WPC=y +# CONFIG_CARL9170_HWRNG is not set +CONFIG_ATH6KL=m +# CONFIG_ATH6KL_SDIO is not set +CONFIG_ATH6KL_USB=m +# CONFIG_ATH6KL_DEBUG is not set +# CONFIG_ATH6KL_TRACING is not set +CONFIG_AR5523=m +# CONFIG_WIL6210 is not set +# CONFIG_ATH10K is not set +# CONFIG_WCN36XX is not set +# CONFIG_B43 is not set +# CONFIG_B43LEGACY is not set +CONFIG_BRCMUTIL=m +# CONFIG_BRCMSMAC is not set +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PROTO_BCDC=y +CONFIG_BRCMFMAC_PROTO_MSGBUF=y +# CONFIG_BRCMFMAC_SDIO is not set +CONFIG_BRCMFMAC_USB=y +CONFIG_BRCMFMAC_PCIE=y +# CONFIG_BRCM_TRACING is not set +# CONFIG_BRCMDBG is not set +CONFIG_HOSTAP=m +# CONFIG_HOSTAP_FIRMWARE is not set +# CONFIG_HOSTAP_PLX is not set +# CONFIG_HOSTAP_PCI is not set +# CONFIG_IPW2100 is not set +# CONFIG_IPW2200 is not set +# CONFIG_IWLWIFI is not set +# CONFIG_IWL4965 is not set +# CONFIG_IWL3945 is not set +CONFIG_LIBERTAS=m +CONFIG_LIBERTAS_USB=m +CONFIG_LIBERTAS_SDIO=m +# CONFIG_LIBERTAS_SPI is not set +# CONFIG_LIBERTAS_DEBUG is not set +# CONFIG_LIBERTAS_MESH is not set +# CONFIG_HERMES is not set +CONFIG_P54_COMMON=m +CONFIG_P54_USB=m +# CONFIG_P54_PCI is not set +# CONFIG_P54_SPI is not set +CONFIG_P54_LEDS=y +CONFIG_RT2X00=m +# CONFIG_RT2400PCI is not set +# CONFIG_RT2500PCI is not set +# CONFIG_RT61PCI is not set +# CONFIG_RT2800PCI is not set +CONFIG_RT2500USB=m +CONFIG_RT73USB=m +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +CONFIG_RT2800USB_UNKNOWN=y +CONFIG_RT2800_LIB=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_LEDS=y +# CONFIG_RT2X00_LIB_DEBUGFS is not set +# CONFIG_RT2X00_DEBUG is not set +CONFIG_WL_MEDIATEK=y +CONFIG_MT7601U=m +CONFIG_RTL_CARDS=y +# CONFIG_RTL8192CE is not set +# CONFIG_RTL8192SE is not set +# CONFIG_RTL8192DE is not set +# CONFIG_RTL8723AE is not set +# CONFIG_RTL8723BE is not set +# CONFIG_RTL8188EE is not set +# CONFIG_RTL8192EE is not set +# CONFIG_RTL8821AE is not set +# CONFIG_RTL8192CU is not set +CONFIG_RTL8XXXU=m +CONFIG_RTL8XXXU_UNTESTED=y +CONFIG_WL_ROCKCHIP=y +CONFIG_WIFI_BUILD_MODULE=y +CONFIG_WIFI_LOAD_DRIVER_WHEN_KERNEL_BOOTUP=y +# CONFIG_WIFI_GENERATE_RANDOM_MAC_ADDR is not set +CONFIG_BCMDHD=y +# CONFIG_AP6XXX is not set +CONFIG_AP6XXX_WIFI6=m +CONFIG_BCMDHD_FW_PATH="/system/etc/firmware/fw_bcmdhd.bin" +CONFIG_BCMDHD_NVRAM_PATH="/system/etc/firmware/nvram.txt" +CONFIG_BCMDHD_SDIO=y +# CONFIG_BCMDHD_PCIE is not set +# CONFIG_BCMDHD_USB is not set +CONFIG_BCMDHD_OOB=y +# CONFIG_BCMDHD_SDIO_IRQ is not set +# CONFIG_CYW_BCMDHD is not set +CONFIG_RTL_WIRELESS_SOLUTION=y +CONFIG_RTL8188EU=m +CONFIG_RTL8188FU=m +CONFIG_RTL8189ES=m +# CONFIG_RTL8189FS is not set +# CONFIG_RTL8723BS is not set +CONFIG_RTL8723BU=m +# CONFIG_RTL8723CS is not set +# CONFIG_RTL8723DS is not set +# CONFIG_RTL8822BE is not set +# CONFIG_MVL88W8977 is not set + +# +# SouthSV 6XXX WLAN support +# +# CONFIG_SSV6051 is not set +# CONFIG_WL_TI is not set +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_SDIO=m +# CONFIG_MWIFIEX_PCIE is not set +# CONFIG_MWIFIEX_USB is not set +# CONFIG_CW1200 is not set +# CONFIG_RSI_91X is not set + +# +# WiMAX Wireless Broadband devices +# +# CONFIG_WIMAX_I2400M_USB is not set +# CONFIG_WAN is not set +CONFIG_IEEE802154_DRIVERS=m +# CONFIG_IEEE802154_FAKELB is not set +CONFIG_IEEE802154_AT86RF230=m +# CONFIG_IEEE802154_AT86RF230_DEBUGFS is not set +CONFIG_IEEE802154_MRF24J40=m +CONFIG_IEEE802154_CC2520=m +CONFIG_IEEE802154_ATUSB=m +# CONFIG_VMXNET3 is not set +# CONFIG_ISDN is not set +# CONFIG_NVM is not set + +# +# Input device support +# +CONFIG_INPUT=y +CONFIG_INPUT_LEDS=y +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_POLLDEV=y +# CONFIG_INPUT_SPARSEKMAP is not set +CONFIG_INPUT_MATRIXKMAP=y + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=m +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=y +# CONFIG_INPUT_EVBUG is not set +# CONFIG_INPUT_KEYRESET is not set +# CONFIG_INPUT_KEYCOMBO is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +CONFIG_KEYBOARD_ADC=y +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ADP5589 is not set +# CONFIG_KEYBOARD_ATKBD is not set +# CONFIG_KEYBOARD_QT1070 is not set +# CONFIG_KEYBOARD_QT2160 is not set +# CONFIG_KEYBOARD_LKKBD is not set +CONFIG_KEYBOARD_GPIO=y +CONFIG_KEYBOARD_GPIO_POLLED=y +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_MATRIX=m +# CONFIG_KEYBOARD_LM8323 is not set +# CONFIG_KEYBOARD_LM8333 is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_SAMSUNG is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_OMAP4 is not set +CONFIG_KEYBOARD_ROCKCHIP=y +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_KEYBOARD_CROS_EC=m +# CONFIG_KEYBOARD_CAP11XX is not set +# CONFIG_KEYBOARD_BCM is not set +CONFIG_INPUT_MOUSE=y +# CONFIG_MOUSE_PS2 is not set +# CONFIG_MOUSE_SERIAL is not set +# CONFIG_MOUSE_APPLETOUCH is not set +# CONFIG_MOUSE_BCM5974 is not set +CONFIG_MOUSE_CYAPA=m +CONFIG_MOUSE_ELAN_I2C=m +CONFIG_MOUSE_ELAN_I2C_I2C=y +# CONFIG_MOUSE_ELAN_I2C_SMBUS is not set +# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_MOUSE_GPIO is not set +# CONFIG_MOUSE_SYNAPTICS_I2C is not set +# CONFIG_MOUSE_SYNAPTICS_USB is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TABLET is not set +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_PROPERTIES=y +CONFIG_TOUCHSCREEN_ADS7846=m +# CONFIG_TOUCHSCREEN_AD7877 is not set +# CONFIG_TOUCHSCREEN_AD7879 is not set +# CONFIG_TOUCHSCREEN_AR1021_I2C is not set +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set +# CONFIG_TOUCHSCREEN_BU21013 is not set +# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set +# CONFIG_TOUCHSCREEN_CY8C40XX is not set +# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set +# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set +# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set +# CONFIG_TOUCHSCREEN_DYNAPRO is not set +# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set +# CONFIG_TOUCHSCREEN_EETI is not set +CONFIG_TOUCHSCREEN_EGALAX=m +# CONFIG_TOUCHSCREEN_FT6236 is not set +# CONFIG_TOUCHSCREEN_FUJITSU is not set +# CONFIG_TOUCHSCREEN_GOODIX is not set +# CONFIG_TOUCHSCREEN_GSLX680A is not set +# CONFIG_TOUCHSCREEN_GSLX680_D708 is not set +# CONFIG_TOUCHSCREEN_GSLX680_PAD is not set +# CONFIG_TOUCHSCREEN_GSLX680_VR is not set +# CONFIG_TOUCHSCREEN_GSLX680_FIREFLY is not set +# CONFIG_TOUCHSCREEN_GSL3673 is not set +# CONFIG_TOUCHSCREEN_GSL3673_800X1280 is not set +CONFIG_TOUCHSCREEN_GT9XX=y +# CONFIG_TOUCHSCREEN_ILI210X is not set +# CONFIG_TOUCHSCREEN_GUNZE is not set +CONFIG_TOUCHSCREEN_ELAN=m +# CONFIG_TOUCHSCREEN_ELO is not set +# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set +# CONFIG_TOUCHSCREEN_WACOM_I2C is not set +# CONFIG_TOUCHSCREEN_MAX11801 is not set +# CONFIG_TOUCHSCREEN_MCS5000 is not set +# CONFIG_TOUCHSCREEN_MMS114 is not set +# CONFIG_TOUCHSCREEN_MTOUCH is not set +# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set +# CONFIG_TOUCHSCREEN_INEXIO is not set +# CONFIG_TOUCHSCREEN_MK712 is not set +# CONFIG_TOUCHSCREEN_PENMOUNT is not set +CONFIG_TOUCHSCREEN_EDT_FT5X06=y +# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set +# CONFIG_TOUCHSCREEN_TOUCHWIN is not set +# CONFIG_TOUCHSCREEN_PIXCIR is not set +# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set +CONFIG_TOUCHSCREEN_USB_COMPOSITE=m +CONFIG_TOUCHSCREEN_USB_EGALAX=y +CONFIG_TOUCHSCREEN_USB_PANJIT=y +CONFIG_TOUCHSCREEN_USB_3M=y +CONFIG_TOUCHSCREEN_USB_ITM=y +CONFIG_TOUCHSCREEN_USB_ETURBO=y +CONFIG_TOUCHSCREEN_USB_GUNZE=y +CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y +CONFIG_TOUCHSCREEN_USB_IRTOUCH=y +CONFIG_TOUCHSCREEN_USB_IDEALTEK=y +CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y +CONFIG_TOUCHSCREEN_USB_GOTOP=y +CONFIG_TOUCHSCREEN_USB_JASTEC=y +CONFIG_TOUCHSCREEN_USB_ELO=y +CONFIG_TOUCHSCREEN_USB_E2I=y +CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y +CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y +CONFIG_TOUCHSCREEN_USB_NEXIO=y +CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y +# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set +# CONFIG_TOUCHSCREEN_TSC_SERIO is not set +# CONFIG_TOUCHSCREEN_TSC2004 is not set +# CONFIG_TOUCHSCREEN_TSC2005 is not set +# CONFIG_TOUCHSCREEN_TSC2007 is not set +# CONFIG_TOUCHSCREEN_ST1232 is not set +# CONFIG_TOUCHSCREEN_SUR40 is not set +# CONFIG_TOUCHSCREEN_SX8654 is not set +# CONFIG_TOUCHSCREEN_TPS6507X is not set +# CONFIG_TOUCHSCREEN_ZFORCE is not set +# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set +# CONFIG_TOUCHSCREEN_VTL_CT36X is not set +# CONFIG_TOUCHSCREEN_GT1X is not set +CONFIG_TOUCHSCREEN_FE_PANELS=y +# CONFIG_TOUCHSCREEN_1WIRE is not set +# CONFIG_TOUCHSCREEN_IT7260 is not set +# CONFIG_TOUCHSCREEN_HIMAX is not set +# CONFIG_TOUCHSCREEN_PROT_MT_SYNC is not set +CONFIG_TOUCHSCREEN_PROT_MT_SLOT=y +# CONFIG_TOUCHSCREEN_PROT_SINGLE is not set +CONFIG_ROCKCHIP_REMOTECTL=y +CONFIG_ROCKCHIP_REMOTECTL_PWM=y + +# +# handle all sensors +# +CONFIG_SENSOR_DEVICE=m +CONFIG_ANGLE_DEVICE=y +# CONFIG_ANGLE_KXTIK is not set +# CONFIG_ANGLE_LIS3DH is not set +CONFIG_GSENSOR_DEVICE=m +# CONFIG_GS_MMA8452 is not set +# CONFIG_STK8BAXX_ACC is not set +# CONFIG_MPU6880_ACC is not set +# CONFIG_MPU6500_ACC is not set +# CONFIG_GS_KXTIK is not set +# CONFIG_GS_KXTJ9 is not set +# CONFIG_GS_LIS3DH is not set +# CONFIG_GS_MMA7660 is not set +# CONFIG_GS_MC3230 is not set +# CONFIG_GS_MXC6225 is not set +# CONFIG_GS_DMT10 is not set +# CONFIG_GS_LSM303D is not set +# CONFIG_GS_BMA023 is not set +# CONFIG_LSM330_ACC is not set +# CONFIG_BMA2XX_ACC is not set +CONFIG_COMPASS_DEVICE=m +# CONFIG_COMPASS_AK8975 is not set +# CONFIG_COMPASS_AK8963 is not set +# CONFIG_COMPASS_AK09911 is not set +# CONFIG_COMPASS_MMC328X is not set +CONFIG_GYROSCOPE_DEVICE=y +# CONFIG_GYRO_L3G4200D is not set +# CONFIG_GYRO_K3G is not set +# CONFIG_GYRO_L3G20D is not set +# CONFIG_GYRO_EWTSA is not set +# CONFIG_GYRO_MPU6500 is not set +# CONFIG_GYRO_MPU6880 is not set +# CONFIG_GYRO_LSM330 is not set +CONFIG_LIGHT_DEVICE=y +# CONFIG_LS_CM3217 is not set +# CONFIG_LS_CM3218 is not set +# CONFIG_LS_CM3232 is not set +# CONFIG_LS_AL3006 is not set +# CONFIG_LS_STK3171 is not set +# CONFIG_LS_ISL29023 is not set +# CONFIG_LS_AP321XX is not set +# CONFIG_LS_US5152 is not set +# CONFIG_LS_STK3410 is not set +# CONFIG_PROXIMITY_DEVICE is not set +CONFIG_TEMPERATURE_DEVICE=y +# CONFIG_TMP_MS5607 is not set +# CONFIG_PRESSURE_DEVICE is not set +# CONFIG_HALL_DEVICE is not set +CONFIG_INPUT_MISC=y +CONFIG_INPUT_AD714X=m +CONFIG_INPUT_AD714X_I2C=m +CONFIG_INPUT_AD714X_SPI=m +# CONFIG_INPUT_BMA150 is not set +# CONFIG_INPUT_E3X0_BUTTON is not set +# CONFIG_INPUT_MMA8450 is not set +# CONFIG_INPUT_MPU3050 is not set +# CONFIG_INPUT_GP2A is not set +# CONFIG_INPUT_GPIO_BEEPER is not set +# CONFIG_INPUT_GPIO_TILT_POLLED is not set +CONFIG_INPUT_ATI_REMOTE2=m +CONFIG_INPUT_KEYCHORD=m +# CONFIG_INPUT_KEYSPAN_REMOTE is not set +# CONFIG_INPUT_KXTJ9 is not set +CONFIG_INPUT_POWERMATE=m +CONFIG_INPUT_YEALINK=m +CONFIG_INPUT_CM109=m +# CONFIG_INPUT_REGULATOR_HAPTIC is not set +CONFIG_INPUT_RK8XX_PWRKEY=y +CONFIG_INPUT_UINPUT=y +CONFIG_INPUT_GPIO=y +# CONFIG_INPUT_PCF8574 is not set +# CONFIG_INPUT_PWM_BEEPER is not set +CONFIG_INPUT_GPIO_ROTARY_ENCODER=m +CONFIG_INPUT_ADXL34X=m +CONFIG_INPUT_ADXL34X_I2C=m +CONFIG_INPUT_ADXL34X_SPI=m +# CONFIG_INPUT_IMS_PCU is not set +CONFIG_INPUT_CMA3000=m +# CONFIG_INPUT_CMA3000_I2C is not set +# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2665_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=m +CONFIG_SERIO_SERPORT=m +# CONFIG_SERIO_AMBAKMI is not set +# CONFIG_SERIO_PCIPS2 is not set +# CONFIG_SERIO_LIBPS2 is not set +CONFIG_SERIO_RAW=m +# CONFIG_SERIO_ALTERA_PS2 is not set +# CONFIG_SERIO_PS2MULT is not set +# CONFIG_SERIO_ARC_PS2 is not set +# CONFIG_SERIO_APBPS2 is not set +# CONFIG_USERIO is not set +CONFIG_GAMEPORT=m +CONFIG_GAMEPORT_NS558=m +CONFIG_GAMEPORT_L4=m +# CONFIG_GAMEPORT_EMU10K1 is not set +# CONFIG_GAMEPORT_FM801 is not set + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +CONFIG_DEVPTS_MULTIPLE_INSTANCES=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_NOZOMI is not set +# CONFIG_N_GSM is not set +# CONFIG_TRACE_SINK is not set +CONFIG_LDISC_AUTOLOAD=y +CONFIG_DEVMEM=y +# CONFIG_DEVKMEM is not set + +# +# Serial drivers +# +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_DMA=y +# CONFIG_SERIAL_8250_PCI is not set +CONFIG_SERIAL_8250_NR_UARTS=5 +CONFIG_SERIAL_8250_RUNTIME_UARTS=5 +# CONFIG_SERIAL_8250_EXTENDED is not set +CONFIG_SERIAL_8250_FSL=y +CONFIG_SERIAL_8250_DW=y +# CONFIG_SERIAL_8250_RT288X is not set +# CONFIG_SERIAL_8250_INGENIC is not set +# CONFIG_SERIAL_8250_MID is not set + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_AMBA_PL010 is not set +# CONFIG_SERIAL_AMBA_PL011 is not set +# CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +# CONFIG_SERIAL_UARTLITE is not set +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +CONFIG_SERIAL_OF_PLATFORM=y +# CONFIG_SERIAL_SCCNXP is not set +CONFIG_SERIAL_SC16IS7XX_CORE=m +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SC16IS7XX_I2C=y +CONFIG_SERIAL_SC16IS7XX_SPI=y +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_IFX6X60 is not set +# CONFIG_SERIAL_XILINX_PS_UART is not set +# CONFIG_SERIAL_ARC is not set +# CONFIG_SERIAL_RP2 is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set +# CONFIG_TTY_PRINTK is not set +# CONFIG_HVC_DCC is not set +# CONFIG_IPMI_HANDLER is not set +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_ROCKCHIP=m +# CONFIG_APPLICOM is not set + +# +# PCMCIA character devices +# +CONFIG_RAW_DRIVER=m +CONFIG_MAX_RAW_DEVS=256 +CONFIG_TCG_TPM=m +# CONFIG_TCG_TIS_I2C_ATMEL is not set +CONFIG_TCG_TIS_I2C_INFINEON=m +# CONFIG_TCG_TIS_I2C_NUVOTON is not set +# CONFIG_TCG_ATMEL is not set +# CONFIG_TCG_TIS_ST33ZP24 is not set +CONFIG_DEVPORT=y +# CONFIG_XILLYBUS is not set + +# +# I2C support +# +CONFIG_I2C=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX=y + +# +# Multiplexer I2C Chip support +# +# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set +# CONFIG_I2C_MUX_GPIO is not set +# CONFIG_I2C_MUX_PCA9541 is not set +CONFIG_I2C_MUX_PCA954x=m +# CONFIG_I2C_MUX_PINCTRL is not set +# CONFIG_I2C_MUX_REG is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_ALGOBIT=y + +# +# I2C Hardware Bus support +# + +# +# PC SMBus host controller drivers +# +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_I801 is not set +# CONFIG_I2C_ISCH is not set +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_NFORCE2 is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_CADENCE is not set +# CONFIG_I2C_CBUS_GPIO is not set +# CONFIG_I2C_DESIGNWARE_PLATFORM is not set +# CONFIG_I2C_DESIGNWARE_PCI is not set +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +# CONFIG_I2C_NOMADIK is not set +# CONFIG_I2C_OCORES is not set +# CONFIG_I2C_PCA_PLATFORM is not set +# CONFIG_I2C_PXA_PCI is not set +CONFIG_I2C_RK3X=y +# CONFIG_I2C_SIMTEC is not set +# CONFIG_I2C_XILINX is not set + +# +# External I2C/SMBus adapter drivers +# +# CONFIG_I2C_DIOLAN_U2C is not set +# CONFIG_I2C_PARPORT_LIGHT is not set +# CONFIG_I2C_ROBOTFUZZ_OSIF is not set +# CONFIG_I2C_TAOS_EVM is not set +# CONFIG_I2C_TINY_USB is not set + +# +# Other I2C/SMBus bus drivers +# +CONFIG_I2C_CROS_EC_TUNNEL=m +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_SLAVE is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +CONFIG_SPI_BITBANG=y +# CONFIG_SPI_CADENCE is not set +# CONFIG_SPI_GPIO is not set +# CONFIG_SPI_FSL_SPI is not set +# CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_PL022 is not set +# CONFIG_SPI_PXA2XX is not set +# CONFIG_SPI_PXA2XX_PCI is not set +CONFIG_SPI_ROCKCHIP=y +# CONFIG_SPI_SC18IS602 is not set +# CONFIG_SPI_XCOMM is not set +# CONFIG_SPI_XILINX is not set +# CONFIG_SPI_ZYNQMP_GQSPI is not set +# CONFIG_SPI_DESIGNWARE is not set + +# +# SPI Protocol Masters +# +CONFIG_SPI_SPIDEV=y +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_SPMI is not set +# CONFIG_HSI is not set + +# +# PPS support +# +CONFIG_PPS=y +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +# CONFIG_PPS_CLIENT_KTIMER is not set +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_GPIO=m + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=y + +# +# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. +# +CONFIG_PINCTRL=y + +# +# Pin controllers +# +CONFIG_PINMUX=y +CONFIG_PINCONF=y +CONFIG_GENERIC_PINCONF=y +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_PINCTRL_AMD is not set +CONFIG_PINCTRL_ROCKCHIP=y +# CONFIG_PINCTRL_SINGLE is not set +# CONFIG_PINCTRL_RK805 is not set +CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y +CONFIG_ARCH_REQUIRE_GPIOLIB=y +CONFIG_GPIOLIB=y +CONFIG_GPIO_DEVRES=y +CONFIG_OF_GPIO=y +CONFIG_DEBUG_GPIO=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC=y + +# +# Memory mapped GPIO drivers +# +# CONFIG_GPIO_74XX_MMIO is not set +# CONFIG_GPIO_ALTERA is not set +# CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_GENERIC_PLATFORM=y +# CONFIG_GPIO_GRGPIO is not set +# CONFIG_GPIO_PL061 is not set +# CONFIG_GPIO_SYSCON is not set +# CONFIG_GPIO_VX855 is not set +# CONFIG_GPIO_XGENE is not set +# CONFIG_GPIO_XILINX is not set +# CONFIG_GPIO_ZX is not set + +# +# I2C GPIO expanders +# +# CONFIG_GPIO_ADP5588 is not set +# CONFIG_GPIO_ADNP is not set +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_SX150X is not set + +# +# MFD GPIO expanders +# +CONFIG_GPIO_RK8XX=y + +# +# PCI GPIO expanders +# +# CONFIG_GPIO_AMD8111 is not set +# CONFIG_GPIO_BT8XX is not set +# CONFIG_GPIO_ML_IOH is not set +# CONFIG_GPIO_RDC321X is not set + +# +# SPI GPIO expanders +# +# CONFIG_GPIO_74X164 is not set +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MC33880 is not set + +# +# SPI or I2C GPIO expanders +# +# CONFIG_GPIO_MCP23S08 is not set + +# +# USB GPIO expanders +# +CONFIG_W1=m +CONFIG_W1_CON=y + +# +# 1-wire Bus Masters +# +CONFIG_W1_MASTER_MATROX=m +CONFIG_W1_MASTER_DS2490=m +CONFIG_W1_MASTER_DS2482=m +CONFIG_W1_MASTER_DS1WM=m +CONFIG_W1_MASTER_GPIO=m + +# +# 1-wire Slaves +# +CONFIG_W1_SLAVE_THERM=m +CONFIG_W1_SLAVE_SMEM=m +CONFIG_W1_SLAVE_DS2408=m +CONFIG_W1_SLAVE_DS2408_READBACK=y +CONFIG_W1_SLAVE_DS2413=m +CONFIG_W1_SLAVE_DS2406=m +CONFIG_W1_SLAVE_DS2423=m +CONFIG_W1_SLAVE_DS2431=m +CONFIG_W1_SLAVE_DS2433=m +# CONFIG_W1_SLAVE_DS2433_CRC is not set +CONFIG_W1_SLAVE_DS2760=m +CONFIG_W1_SLAVE_DS2780=m +CONFIG_W1_SLAVE_DS2781=m +CONFIG_W1_SLAVE_DS28E04=m +# CONFIG_W1_SLAVE_BQ27000 is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +# CONFIG_PDA_POWER is not set +# CONFIG_GENERIC_ADC_BATTERY is not set +# CONFIG_TEST_POWER is not set +CONFIG_BATTERY_DS2760=m +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +CONFIG_BATTERY_SBS=y +# CONFIG_BATTERY_BQ27XXX is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_CHARGER_ISP1704 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +CONFIG_CHARGER_GPIO=y +# CONFIG_CHARGER_MANAGER is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24190 is not set +# CONFIG_CHARGER_BQ24257 is not set +# CONFIG_CHARGER_BQ24735 is not set +# CONFIG_CHARGER_BQ25700 is not set +# CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_SMB347 is not set +# CONFIG_CHARGER_SY6982C is not set +# CONFIG_CHARGER_UNIVERSAL is not set +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +# CONFIG_BATTERY_EC is not set +# CONFIG_BATTERY_CW2015 is not set +# CONFIG_BATTERY_RK816 is not set +CONFIG_BATTERY_RK817=y +CONFIG_CHARGER_RK817=y +# CONFIG_BATTERY_RK818 is not set +# CONFIG_CHARGER_RK818 is not set +# CONFIG_CHARGER_RT9455 is not set +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_GPIO=y +CONFIG_POWER_RESET_GPIO_RESTART=y +# CONFIG_POWER_RESET_LTC2952 is not set +# CONFIG_POWER_RESET_RESTART is not set +# CONFIG_POWER_RESET_XGENE is not set +# CONFIG_POWER_RESET_SYSCON is not set +# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set +CONFIG_REBOOT_MODE=y +CONFIG_SYSCON_REBOOT_MODE=y +CONFIG_POWER_AVS=y +CONFIG_ROCKCHIP_IODOMAIN=y +CONFIG_HWMON=y +# CONFIG_HWMON_VID is not set +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +# CONFIG_SENSORS_AD7314 is not set +# CONFIG_SENSORS_AD7414 is not set +# CONFIG_SENSORS_AD7418 is not set +# CONFIG_SENSORS_ADM1021 is not set +# CONFIG_SENSORS_ADM1025 is not set +# CONFIG_SENSORS_ADM1026 is not set +# CONFIG_SENSORS_ADM1029 is not set +# CONFIG_SENSORS_ADM1031 is not set +# CONFIG_SENSORS_ADM9240 is not set +# CONFIG_SENSORS_ADT7310 is not set +# CONFIG_SENSORS_ADT7410 is not set +# CONFIG_SENSORS_ADT7411 is not set +# CONFIG_SENSORS_ADT7462 is not set +# CONFIG_SENSORS_ADT7470 is not set +# CONFIG_SENSORS_ADT7475 is not set +# CONFIG_SENSORS_ASC7621 is not set +# CONFIG_SENSORS_ATXP1 is not set +# CONFIG_SENSORS_DS620 is not set +# CONFIG_SENSORS_DS1621 is not set +# CONFIG_SENSORS_I5K_AMB is not set +# CONFIG_SENSORS_F71805F is not set +# CONFIG_SENSORS_F71882FG is not set +# CONFIG_SENSORS_F75375S is not set +# CONFIG_SENSORS_GL518SM is not set +# CONFIG_SENSORS_GL520SM is not set +# CONFIG_SENSORS_G760A is not set +# CONFIG_SENSORS_G762 is not set +# CONFIG_SENSORS_GPIO_FAN is not set +# CONFIG_SENSORS_HIH6130 is not set +# CONFIG_SENSORS_IIO_HWMON is not set +# CONFIG_SENSORS_IT87 is not set +# CONFIG_SENSORS_JC42 is not set +# CONFIG_SENSORS_POWR1220 is not set +# CONFIG_SENSORS_LINEAGE is not set +# CONFIG_SENSORS_LTC2945 is not set +# CONFIG_SENSORS_LTC4151 is not set +# CONFIG_SENSORS_LTC4215 is not set +# CONFIG_SENSORS_LTC4222 is not set +# CONFIG_SENSORS_LTC4245 is not set +# CONFIG_SENSORS_LTC4260 is not set +# CONFIG_SENSORS_LTC4261 is not set +# CONFIG_SENSORS_MAX1111 is not set +# CONFIG_SENSORS_MAX16065 is not set +# CONFIG_SENSORS_MAX1619 is not set +# CONFIG_SENSORS_MAX1668 is not set +# CONFIG_SENSORS_MAX197 is not set +# CONFIG_SENSORS_MAX6639 is not set +# CONFIG_SENSORS_MAX6642 is not set +# CONFIG_SENSORS_MAX6650 is not set +# CONFIG_SENSORS_MAX6697 is not set +# CONFIG_SENSORS_MAX31790 is not set +# CONFIG_SENSORS_HTU21 is not set +# CONFIG_SENSORS_MCP3021 is not set +# CONFIG_SENSORS_ADCXX is not set +# CONFIG_SENSORS_LM63 is not set +# CONFIG_SENSORS_LM70 is not set +# CONFIG_SENSORS_LM73 is not set +CONFIG_SENSORS_LM75=m +# CONFIG_SENSORS_LM77 is not set +# CONFIG_SENSORS_LM78 is not set +# CONFIG_SENSORS_LM80 is not set +# CONFIG_SENSORS_LM83 is not set +# CONFIG_SENSORS_LM85 is not set +# CONFIG_SENSORS_LM87 is not set +# CONFIG_SENSORS_LM90 is not set +# CONFIG_SENSORS_LM92 is not set +# CONFIG_SENSORS_LM93 is not set +# CONFIG_SENSORS_LM95234 is not set +# CONFIG_SENSORS_LM95241 is not set +# CONFIG_SENSORS_LM95245 is not set +# CONFIG_SENSORS_PC87360 is not set +# CONFIG_SENSORS_PC87427 is not set +# CONFIG_SENSORS_NTC_THERMISTOR is not set +# CONFIG_SENSORS_NCT6683 is not set +# CONFIG_SENSORS_NCT6775 is not set +# CONFIG_SENSORS_NCT7802 is not set +# CONFIG_SENSORS_NCT7904 is not set +# CONFIG_SENSORS_PCF8591 is not set +# CONFIG_PMBUS is not set +CONFIG_SENSORS_PWM_FAN=y +# CONFIG_SENSORS_SHT15 is not set +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SHTC1=m +# CONFIG_SENSORS_SIS5595 is not set +# CONFIG_SENSORS_DME1737 is not set +# CONFIG_SENSORS_EMC1403 is not set +# CONFIG_SENSORS_EMC2103 is not set +# CONFIG_SENSORS_EMC6W201 is not set +# CONFIG_SENSORS_SMSC47M1 is not set +# CONFIG_SENSORS_SMSC47M192 is not set +# CONFIG_SENSORS_SMSC47B397 is not set +# CONFIG_SENSORS_SCH56XX_COMMON is not set +# CONFIG_SENSORS_SCH5627 is not set +# CONFIG_SENSORS_SCH5636 is not set +# CONFIG_SENSORS_SMM665 is not set +# CONFIG_SENSORS_ADC128D818 is not set +# CONFIG_SENSORS_ADS1015 is not set +# CONFIG_SENSORS_ADS7828 is not set +# CONFIG_SENSORS_ADS7871 is not set +# CONFIG_SENSORS_AMC6821 is not set +# CONFIG_SENSORS_INA209 is not set +CONFIG_SENSORS_INA2XX=m +# CONFIG_SENSORS_TC74 is not set +# CONFIG_SENSORS_THMC50 is not set +# CONFIG_SENSORS_TMP102 is not set +# CONFIG_SENSORS_TMP103 is not set +# CONFIG_SENSORS_TMP401 is not set +# CONFIG_SENSORS_TMP421 is not set +# CONFIG_SENSORS_VIA686A is not set +# CONFIG_SENSORS_VT1211 is not set +# CONFIG_SENSORS_VT8231 is not set +# CONFIG_SENSORS_W83781D is not set +# CONFIG_SENSORS_W83791D is not set +# CONFIG_SENSORS_W83792D is not set +# CONFIG_SENSORS_W83793 is not set +# CONFIG_SENSORS_W83795 is not set +# CONFIG_SENSORS_W83L785TS is not set +# CONFIG_SENSORS_W83L786NG is not set +# CONFIG_SENSORS_W83627HF is not set +# CONFIG_SENSORS_W83627EHF is not set +CONFIG_THERMAL=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_OF=y +CONFIG_THERMAL_WRITABLE_TRIPS=y +# CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE is not set +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR=y +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set +# CONFIG_THERMAL_GOV_USER_SPACE is not set +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_CPU_THERMAL=y +# CONFIG_CLOCK_THERMAL is not set +CONFIG_DEVFREQ_THERMAL=y +# CONFIG_THERMAL_EMULATION is not set +# CONFIG_IMX_THERMAL is not set +CONFIG_ROCKCHIP_THERMAL=y +# CONFIG_RK_VIRTUAL_THERMAL is not set +# CONFIG_RK3368_THERMAL is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set + +# +# Watchdog Device Drivers +# +# CONFIG_SOFT_WATCHDOG is not set +# CONFIG_GPIO_WATCHDOG is not set +# CONFIG_XILINX_WATCHDOG is not set +# CONFIG_ARM_SP805_WATCHDOG is not set +# CONFIG_CADENCE_WATCHDOG is not set +CONFIG_DW_WATCHDOG=y +# CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_ALIM7101_WDT is not set +# CONFIG_I6300ESB_WDT is not set +# CONFIG_BCM7038_WDT is not set +# CONFIG_MEN_A21_WDT is not set + +# +# PCI-based Watchdog Cards +# +# CONFIG_PCIPCWATCHDOG is not set +# CONFIG_WDTPCI is not set + +# +# USB-based Watchdog Cards +# +# CONFIG_USBPCWATCHDOG is not set +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +CONFIG_SSB=m +CONFIG_SSB_PCIHOST_POSSIBLE=y +# CONFIG_SSB_PCIHOST is not set +CONFIG_SSB_SDIOHOST_POSSIBLE=y +# CONFIG_SSB_SDIOHOST is not set +# CONFIG_SSB_HOST_SOC is not set +# CONFIG_SSB_SILENT is not set +# CONFIG_SSB_DEBUG is not set +# CONFIG_SSB_DRIVER_GPIO is not set +CONFIG_BCMA_POSSIBLE=y + +# +# Broadcom specific AMBA +# +# CONFIG_BCMA is not set + +# +# Multifunction device drivers +# +CONFIG_MFD_CORE=y +# CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_AS3722 is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_MFD_AAT2870_CORE is not set +# CONFIG_MFD_ATMEL_FLEXCOM is not set +# CONFIG_MFD_ATMEL_HLCDC is not set +# CONFIG_MFD_BCM590XX is not set +# CONFIG_MFD_AXP20X is not set +CONFIG_MFD_CROS_EC=m +# CONFIG_MFD_CROS_EC_I2C is not set +CONFIG_MFD_CROS_EC_SPI=m +# CONFIG_PMIC_DA903X is not set +# CONFIG_MFD_DA9052_SPI is not set +# CONFIG_MFD_DA9052_I2C is not set +# CONFIG_MFD_DA9055 is not set +# CONFIG_MFD_DA9062 is not set +# CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_DLN2 is not set +# CONFIG_MFD_MC13XXX_SPI is not set +# CONFIG_MFD_MC13XXX_I2C is not set +# CONFIG_MFD_HI6421_PMIC is not set +# CONFIG_HTC_PASIC3 is not set +# CONFIG_HTC_I2CPLD is not set +# CONFIG_LPC_ICH is not set +# CONFIG_LPC_SCH is not set +# CONFIG_INTEL_SOC_PMIC is not set +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_88PM800 is not set +# CONFIG_MFD_88PM805 is not set +# CONFIG_MFD_88PM860X is not set +# CONFIG_MFD_MAX14577 is not set +# CONFIG_MFD_MAX77686 is not set +# CONFIG_MFD_MAX77693 is not set +# CONFIG_MFD_MAX77843 is not set +# CONFIG_MFD_MAX8907 is not set +# CONFIG_MFD_MAX8925 is not set +# CONFIG_MFD_MAX8997 is not set +# CONFIG_MFD_MAX8998 is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_MFD_MENF21BMC is not set +# CONFIG_EZX_PCAP is not set +# CONFIG_MFD_VIPERBOARD is not set +# CONFIG_MFD_RETU is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_MFD_RDC321X is not set +# CONFIG_MFD_RTSX_PCI is not set +# CONFIG_MFD_RT5033 is not set +# CONFIG_MFD_RTSX_USB is not set +# CONFIG_MFD_RC5T583 is not set +# CONFIG_MFD_RK618 is not set +CONFIG_MFD_RK808=y +# CONFIG_MFD_RN5T618 is not set +# CONFIG_MFD_SEC_CORE is not set +# CONFIG_MFD_SI476X_CORE is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_MFD_SKY81452 is not set +# CONFIG_MFD_SMSC is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_MFD_STMPE is not set +CONFIG_MFD_SYSCON=y +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_LP3943 is not set +# CONFIG_MFD_LP8788 is not set +# CONFIG_MFD_PALMAS is not set +# CONFIG_TPS6105X is not set +# CONFIG_TPS65010 is not set +# CONFIG_TPS6507X is not set +# CONFIG_MFD_TPS65090 is not set +# CONFIG_MFD_TPS65217 is not set +# CONFIG_MFD_TPS65218 is not set +# CONFIG_MFD_TPS6586X is not set +# CONFIG_MFD_TPS65910 is not set +# CONFIG_MFD_TPS65912 is not set +# CONFIG_MFD_TPS65912_I2C is not set +# CONFIG_MFD_TPS65912_SPI is not set +# CONFIG_MFD_TPS80031 is not set +# CONFIG_TWL4030_CORE is not set +# CONFIG_TWL6040_CORE is not set +# CONFIG_MFD_WL1273_CORE is not set +# CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_TC3589X is not set +# CONFIG_MFD_TMIO is not set +# CONFIG_MFD_VX855 is not set +# CONFIG_MFD_ARIZONA_I2C is not set +# CONFIG_MFD_ARIZONA_SPI is not set +# CONFIG_MFD_WM8400 is not set +# CONFIG_MFD_WM831X_I2C is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_RK1000 is not set +# CONFIG_MFD_WM8350_I2C is not set +# CONFIG_MFD_WM8994 is not set +CONFIG_FUSB_30X=y +CONFIG_REGULATOR=y +# CONFIG_REGULATOR_DEBUG is not set +CONFIG_REGULATOR_FIXED_VOLTAGE=y +# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set +# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +CONFIG_REGULATOR_ACT8865=y +# CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_ANATOP is not set +# CONFIG_REGULATOR_DA9210 is not set +# CONFIG_REGULATOR_DA9211 is not set +CONFIG_REGULATOR_FAN53555=y +CONFIG_REGULATOR_GPIO=y +# CONFIG_REGULATOR_ISL9305 is not set +# CONFIG_REGULATOR_ISL6271A is not set +# CONFIG_REGULATOR_LP3971 is not set +# CONFIG_REGULATOR_LP3972 is not set +# CONFIG_REGULATOR_LP872X is not set +CONFIG_REGULATOR_LP8752=y +# CONFIG_REGULATOR_LP8755 is not set +# CONFIG_REGULATOR_LTC3589 is not set +# CONFIG_REGULATOR_MAX1586 is not set +# CONFIG_REGULATOR_MAX8649 is not set +# CONFIG_REGULATOR_MAX8660 is not set +# CONFIG_REGULATOR_MAX8952 is not set +# CONFIG_REGULATOR_MAX8973 is not set +CONFIG_REGULATOR_MP8865=y +# CONFIG_REGULATOR_MT6311 is not set +# CONFIG_REGULATOR_PFUZE100 is not set +CONFIG_REGULATOR_PWM=y +CONFIG_REGULATOR_RK808=y +CONFIG_REGULATOR_RK818=y +# CONFIG_REGULATOR_SYR82X is not set +# CONFIG_REGULATOR_TPS51632 is not set +# CONFIG_REGULATOR_TPS549B22 is not set +# CONFIG_REGULATOR_TPS62360 is not set +# CONFIG_REGULATOR_TPS65023 is not set +# CONFIG_REGULATOR_TPS6507X is not set +# CONFIG_REGULATOR_TPS65132 is not set +# CONFIG_REGULATOR_TPS6524X is not set +CONFIG_REGULATOR_XZ3216=y +CONFIG_MEDIA_SUPPORT=y + +# +# Multimedia core support +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set +# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set +# CONFIG_MEDIA_RADIO_SUPPORT is not set +# CONFIG_MEDIA_SDR_SUPPORT is not set +CONFIG_MEDIA_RC_SUPPORT=y +# CONFIG_MEDIA_CEC_SUPPORT is not set +CONFIG_MEDIA_CONTROLLER=y +CONFIG_VIDEO_DEV=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2=y +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_V4L2_MEM2MEM_DEV=y +CONFIG_V4L2_FWNODE=y +CONFIG_VIDEOBUF_GEN=y +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOBUF2_CORE=y +CONFIG_VIDEOBUF2_MEMOPS=y +CONFIG_VIDEOBUF2_DMA_CONTIG=y +CONFIG_VIDEOBUF2_VMALLOC=y +CONFIG_VIDEOBUF2_DMA_SG=y +# CONFIG_TTPCI_EEPROM is not set + +# +# Media drivers +# +CONFIG_RC_CORE=y +CONFIG_RC_MAP=m +CONFIG_LIRC=y +CONFIG_RC_DECODERS=y +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_JVC_DECODER=m +CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SHARP_DECODER=m +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_XMP_DECODER=m +CONFIG_IR_IMON_DECODER=m +CONFIG_RC_DEVICES=y +CONFIG_RC_ATI_REMOTE=m +# CONFIG_IR_HIX5HD2 is not set +# CONFIG_IR_IMON is not set +# CONFIG_IR_MCEUSB is not set +# CONFIG_IR_REDRAT3 is not set +# CONFIG_IR_STREAMZAP is not set +# CONFIG_IR_IGORPLUGUSB is not set +CONFIG_IR_IGUANA=m +CONFIG_IR_TTUSBIR=m +CONFIG_RC_LOOPBACK=m +# CONFIG_IR_GPIO_CIR is not set +# CONFIG_IR_GPIO_TX is not set +# CONFIG_IR_PWM_TX is not set +# CONFIG_IR_SERIAL is not set +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_DTCS033=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +# CONFIG_USB_GSPCA_TOUPTEK is not set +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_VIDEO_CPIA2=m +CONFIG_USB_ZR364XX=m +CONFIG_USB_STKWEBCAM=m +CONFIG_USB_S2255=m +CONFIG_VIDEO_USBTV=m + +# +# Webcam, TV (analog/digital) USB devices +# +# CONFIG_VIDEO_EM28XX is not set +# CONFIG_MEDIA_PCI_SUPPORT is not set +CONFIG_V4L_PLATFORM_DRIVERS=y +# CONFIG_VIDEO_CAFE_CCIC is not set +CONFIG_SOC_CAMERA=y +# CONFIG_SOC_CAMERA_PLATFORM is not set +# CONFIG_VIDEO_XILINX is not set +CONFIG_VIDEO_RK_CIF_ISP10=y +# CONFIG_VIDEO_ROCKCHIP_CIF is not set +CONFIG_VIDEO_ROCKCHIP_ISP1=y +CONFIG_V4L_MEM2MEM_DRIVERS=y +# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set +# CONFIG_VIDEO_SH_VEU is not set +CONFIG_VIDEO_ROCKCHIP_RGA=y +# CONFIG_VIDEO_ROCKCHIP_VPU is not set +# CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_ROCKCHIP_TSP is not set + +# +# Supported MMC/SDIO adapters +# +# CONFIG_CYPRESS_FIRMWARE is not set + +# +# Media ancillary drivers (tuners, sensors, i2c, spi, frontends) +# +# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set +# CONFIG_VIDEO_IR_I2C is not set + +# +# I2C Encoders, decoders, sensors and other helper chips +# + +# +# Audio decoders, processors and mixers +# +# CONFIG_VIDEO_TVAUDIO is not set +# CONFIG_VIDEO_TDA7432 is not set +# CONFIG_VIDEO_TDA9840 is not set +# CONFIG_VIDEO_TEA6415C is not set +# CONFIG_VIDEO_TEA6420 is not set +# CONFIG_VIDEO_MSP3400 is not set +# CONFIG_VIDEO_CS5345 is not set +# CONFIG_VIDEO_CS53L32A is not set +# CONFIG_VIDEO_TLV320AIC23B is not set +# CONFIG_VIDEO_UDA1342 is not set +# CONFIG_VIDEO_WM8775 is not set +# CONFIG_VIDEO_WM8739 is not set +# CONFIG_VIDEO_VP27SMPX is not set +# CONFIG_VIDEO_SONY_BTF_MPX is not set + +# +# RDS decoders +# +# CONFIG_VIDEO_SAA6588 is not set + +# +# Video decoders +# +# CONFIG_VIDEO_ADV7180 is not set +# CONFIG_VIDEO_ADV7181D is not set +# CONFIG_VIDEO_ADV7183 is not set +# CONFIG_VIDEO_ADV7604 is not set +# CONFIG_VIDEO_ADV7842 is not set +# CONFIG_VIDEO_BT819 is not set +# CONFIG_VIDEO_BT856 is not set +# CONFIG_VIDEO_BT866 is not set +# CONFIG_VIDEO_KS0127 is not set +# CONFIG_VIDEO_ML86V7667 is not set +# CONFIG_VIDEO_SAA7110 is not set +# CONFIG_VIDEO_SAA711X is not set +CONFIG_VIDEO_TC35874X=y +# CONFIG_VIDEO_TVP514X is not set +# CONFIG_VIDEO_TVP5150 is not set +# CONFIG_VIDEO_TVP7002 is not set +# CONFIG_VIDEO_TW2804 is not set +# CONFIG_VIDEO_TW9903 is not set +# CONFIG_VIDEO_TW9906 is not set +# CONFIG_VIDEO_VPX3220 is not set + +# +# Video and audio decoders +# +# CONFIG_VIDEO_SAA717X is not set +# CONFIG_VIDEO_CX25840 is not set + +# +# Video encoders +# +# CONFIG_VIDEO_SAA7127 is not set +# CONFIG_VIDEO_SAA7185 is not set +# CONFIG_VIDEO_ADV7170 is not set +# CONFIG_VIDEO_ADV7175 is not set +# CONFIG_VIDEO_ADV7343 is not set +# CONFIG_VIDEO_ADV7393 is not set +# CONFIG_VIDEO_ADV7511 is not set +# CONFIG_VIDEO_AD9389B is not set +# CONFIG_VIDEO_AK881X is not set +# CONFIG_VIDEO_THS8200 is not set + +# +# Camera sensor devices +# +# CONFIG_VIDEO_IMX219 is not set +# CONFIG_VIDEO_IMX258 is not set +# CONFIG_VIDEO_IMX317 is not set +# CONFIG_VIDEO_IMX323 is not set +# CONFIG_VIDEO_IMX327 is not set +# CONFIG_VIDEO_VIRT_CAMERA is not set +# CONFIG_VIDEO_OV2659 is not set +# CONFIG_VIDEO_OV2680 is not set +# CONFIG_VIDEO_OV2685 is not set +# CONFIG_VIDEO_OV2718 is not set +# CONFIG_VIDEO_OV2735 is not set +# CONFIG_VIDEO_OV4689 is not set +# CONFIG_VIDEO_OV5647 is not set +# CONFIG_VIDEO_OV5648 is not set +# CONFIG_VIDEO_OV5695 is not set +# CONFIG_VIDEO_OV7251 is not set +# CONFIG_VIDEO_OV7640 is not set +# CONFIG_VIDEO_OV7670 is not set +# CONFIG_VIDEO_OV7725 is not set +# CONFIG_VIDEO_OV7750 is not set +# CONFIG_VIDEO_OV8858 is not set +# CONFIG_VIDEO_OV9281 is not set +# CONFIG_VIDEO_OV9650 is not set +# CONFIG_VIDEO_OV13850 is not set +# CONFIG_VIDEO_VS6624 is not set +# CONFIG_VIDEO_MT9M032 is not set +# CONFIG_VIDEO_MT9P031 is not set +# CONFIG_VIDEO_MT9T001 is not set +# CONFIG_VIDEO_MT9V011 is not set +# CONFIG_VIDEO_MT9V032 is not set +# CONFIG_VIDEO_SR030PC30 is not set +# CONFIG_VIDEO_NOON010PC30 is not set +# CONFIG_VIDEO_M5MOLS is not set +# CONFIG_VIDEO_S5K6AA is not set +# CONFIG_VIDEO_S5K6A3 is not set +# CONFIG_VIDEO_S5K4ECGX is not set +# CONFIG_VIDEO_S5K5BAF is not set +# CONFIG_VIDEO_SMIAPP is not set +# CONFIG_VIDEO_S5C73M3 is not set +# CONFIG_VIDEO_GC2155 is not set +# CONFIG_VIDEO_GC0312 is not set +# CONFIG_VIDEO_GC2145 is not set +# CONFIG_VIDEO_GC2355 is not set +# CONFIG_VIDEO_GC2385 is not set +# CONFIG_VIDEO_GC5025 is not set +# CONFIG_VIDEO_GC8034 is not set +# CONFIG_VIDEO_SC031GS is not set +# CONFIG_VIDEO_GC0329 is not set +# CONFIG_VIDEO_GC2035 is not set +# CONFIG_VIDEO_BF3925 is not set +# CONFIG_VIDEO_JX_H65 is not set +# CONFIG_VIDEO_PREISP_DUMMY_SENSOR is not set + +# +# Flash devices +# +# CONFIG_VIDEO_ADP1653 is not set +# CONFIG_VIDEO_AS3645A is not set +# CONFIG_VIDEO_LM3560 is not set +# CONFIG_VIDEO_LM3646 is not set +# CONFIG_VIDEO_SGM3784 is not set + +# +# Video improvement chips +# +# CONFIG_VIDEO_UPD64031A is not set +# CONFIG_VIDEO_UPD64083 is not set + +# +# Camera lens devices +# +# CONFIG_VIDEO_VM149C is not set +# CONFIG_VIDEO_DW9714 is not set +# CONFIG_VIDEO_FP5510 is not set + +# +# Audio/Video compression chips +# +# CONFIG_VIDEO_SAA6752HS is not set + +# +# Miscellaneous helper chips +# +# CONFIG_VIDEO_THS7303 is not set +# CONFIG_VIDEO_M52790 is not set +# CONFIG_VIDEO_NVP6324 is not set + +# +# Sensors used on soc_camera driver +# + +# +# soc_camera sensor drivers +# +# CONFIG_SOC_CAMERA_IMX074 is not set +# CONFIG_SOC_CAMERA_MT9M001 is not set +# CONFIG_SOC_CAMERA_MT9M111 is not set +# CONFIG_SOC_CAMERA_MT9T031 is not set +# CONFIG_SOC_CAMERA_MT9T112 is not set +# CONFIG_SOC_CAMERA_MT9V022 is not set +# CONFIG_SOC_CAMERA_OV2640 is not set +# CONFIG_SOC_CAMERA_OV5642 is not set +# CONFIG_SOC_CAMERA_OV6650 is not set +# CONFIG_SOC_CAMERA_OV772X is not set +# CONFIG_SOC_CAMERA_OV9640 is not set +# CONFIG_SOC_CAMERA_OV9740 is not set +# CONFIG_SOC_CAMERA_RJ54N1 is not set +# CONFIG_SOC_CAMERA_TW9910 is not set +# CONFIG_VIDEO_OV2710 is not set +# CONFIG_VIDEO_TC358749XBG is not set +# CONFIG_VIDEO_ADV7181 is not set +# CONFIG_VIDEO_OV7675 is not set +# CONFIG_VIDEO_NT99230 is not set +# CONFIG_VIDEO_OV9750 is not set +# CONFIG_VIDEO_ov5640 is not set +# CONFIG_VIDEO_SC2232 is not set +# CONFIG_VIDEO_ISL79987 is not set + +# +# SPI helper chips +# +# CONFIG_VIDEO_GS1662 is not set +# CONFIG_VIDEO_ROCKCHIP_PREISP is not set + +# +# Customise DVB Frontends +# +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m + +# +# Tools to develop new frontends +# +CONFIG_DVB_DUMMY_FE=m +# CONFIG_CAMSYS_DRV is not set +# CONFIG_ROCK_CHIP_SOC_CAMERA is not set + +# +# Graphics support +# +# CONFIG_VGA_ARB is not set +CONFIG_DRM=y +CONFIG_DRM_IGNORE_IOTCL_PERMIT=y +CONFIG_DRM_MIPI_DSI=y +CONFIG_DRM_KMS_HELPER=y +CONFIG_DRM_KMS_FB_HELPER=y +CONFIG_DRM_FBDEV_EMULATION=y +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_DP_CEC is not set +# CONFIG_DRM_SCDC_HELPER is not set +CONFIG_DRM_DMA_SYNC=y + +# +# I2C encoder or helper chips +# +# CONFIG_DRM_I2C_ADV7511 is not set +# CONFIG_DRM_I2C_CH7006 is not set +# CONFIG_DRM_I2C_SIL164 is not set +# CONFIG_DRM_I2C_NXP_TDA998X is not set +# CONFIG_DRM_TDFX is not set +# CONFIG_DRM_R128 is not set +# CONFIG_DRM_RADEON is not set +# CONFIG_DRM_AMDGPU is not set +# CONFIG_DRM_NOUVEAU is not set +# CONFIG_DRM_MGA is not set +# CONFIG_DRM_VIA is not set +# CONFIG_DRM_SAVAGE is not set +# CONFIG_DRM_VGEM is not set +CONFIG_DRM_ROCKCHIP=y +CONFIG_ROCKCHIP_DRM_DEBUG=y +CONFIG_ROCKCHIP_CDN_DP=y +CONFIG_ROCKCHIP_DW_HDMI=y +CONFIG_ROCKCHIP_DW_MIPI_DSI=y +# CONFIG_ROCKCHIP_MIPI_CSI_TX is not set +CONFIG_ROCKCHIP_ANALOGIX_DP=y +CONFIG_ROCKCHIP_INNO_HDMI=y +CONFIG_ROCKCHIP_LVDS=y +CONFIG_ROCKCHIP_DRM_TVE=y +# CONFIG_ROCKCHIP_RGB is not set +# CONFIG_ROCKCHIP_DRM_BACKLIGHT is not set +# CONFIG_ROCKCHIP_RK3066_HDMI is not set +CONFIG_DRM_UDL=m +# CONFIG_DRM_AST is not set +# CONFIG_DRM_MGAG200 is not set +# CONFIG_DRM_CIRRUS_QEMU is not set +# CONFIG_DRM_QXL is not set +# CONFIG_DRM_BOCHS is not set +CONFIG_DRM_PANEL=y + +# +# Display Panels +# +CONFIG_DRM_PANEL_SIMPLE=y +# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set +# CONFIG_DRM_PANEL_LG_LG4573 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set +# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set +CONFIG_DRM_PANEL_FRIENDLYELEC=y +CONFIG_DRM_BRIDGE=y + +# +# Display Interface Bridges +# +# CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PARADE_PS8622 is not set +# CONFIG_DRM_RK1000 is not set +# CONFIG_DRM_DUMB_VGA_DAC is not set +# CONFIG_DRM_LONTIUM_LT8912 is not set +# CONFIG_DRM_CHIPONE_ICN6211 is not set +CONFIG_DRM_ANALOGIX_DP=y +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +# CONFIG_DRM_ANALOGIX_ANX6345 is not set +CONFIG_DRM_DW_HDMI=y +# CONFIG_DRM_DW_HDMI_AHB_AUDIO is not set +CONFIG_DRM_DW_HDMI_I2S_AUDIO=y +# CONFIG_DRM_DW_HDMI_CEC is not set +# CONFIG_POWERVR_ROGUE_M is not set +CONFIG_MALI400=m +CONFIG_MALI450=y +# CONFIG_MALI470 is not set +# CONFIG_MALI400_DEBUG is not set +# CONFIG_MALI400_PROFILING is not set +# CONFIG_MALI400_UMP is not set +CONFIG_MALI_DMA_BUF_MAP_ON_ATTACH=y +CONFIG_MALI_SHARED_INTERRUPTS=y +# CONFIG_MALI_PMU_PARALLEL_POWER_UP is not set +CONFIG_MALI_DT=y +CONFIG_MALI_DEVFREQ=y +# CONFIG_MALI_QUIET is not set +CONFIG_MALI_MIDGARD_FOR_ANDROID=y +# CONFIG_MALI_MIDGARD_FOR_LINUX is not set +CONFIG_MALI_MIDGARD=y +# CONFIG_MALI_GATOR_SUPPORT is not set +# CONFIG_MALI_MIDGARD_ENABLE_TRACE is not set +# CONFIG_MALI_DMA_FENCE is not set +CONFIG_MALI_EXPERT=y +# CONFIG_MALI_CORESTACK is not set +# CONFIG_MALI_PRFCNT_SET_SECONDARY is not set +# CONFIG_MALI_PLATFORM_FAKE is not set +# CONFIG_MALI_PLATFORM_DEVICETREE is not set +CONFIG_MALI_PLATFORM_THIRDPARTY=y +CONFIG_MALI_PLATFORM_THIRDPARTY_NAME="rk" +CONFIG_MALI_DEBUG=y +# CONFIG_MALI_NO_MALI is not set +# CONFIG_MALI_TRACE_TIMELINE is not set +# CONFIG_MALI_SYSTEM_TRACE is not set +# CONFIG_MALI_GPU_MMU_AARCH64 is not set +# CONFIG_MALI_PWRSOFT_765 is not set +# CONFIG_MALI_KUTF is not set +CONFIG_MALI_BIFROST_FOR_ANDROID=y +# CONFIG_MALI_BIFROST_FOR_LINUX is not set +# CONFIG_MALI_BIFROST is not set + +# +# Frame buffer Devices +# +CONFIG_FB=y +# CONFIG_FIRMWARE_EDID is not set +CONFIG_FB_CMDLINE=y +# CONFIG_FB_DDC is not set +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_IMAGEBLIT=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_SVGALIB is not set +# CONFIG_FB_MACMODES is not set +CONFIG_FB_BACKLIGHT=y +# CONFIG_FB_MODE_HELPERS is not set +# CONFIG_FB_TILEBLITTING is not set + +# +# Frame buffer hardware drivers +# +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_ARMCLCD is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_UVESA is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_VT8623 is not set +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_CARMINE is not set +# CONFIG_FB_SMSCUFX is not set +# CONFIG_FB_UDL is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_FB_SSD1307 is not set +# CONFIG_FB_SM712 is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_GENERIC=y +CONFIG_BACKLIGHT_PWM=y +# CONFIG_BACKLIGHT_PM8941_WLED is not set +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +# CONFIG_BACKLIGHT_LM3630A is not set +# CONFIG_BACKLIGHT_LM3639 is not set +# CONFIG_BACKLIGHT_LP855X is not set +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_BD6107 is not set + +# +# Rockchip Misc Video driver +# +# CONFIG_FB_ROCKCHIP is not set +# CONFIG_LCDC_RK3368 is not set +CONFIG_LCD_GENERAL=y +# CONFIG_LCD_MIPI is not set +# CONFIG_RK_TRSM is not set +# CONFIG_RK_HDMI is not set + +# +# RGA +# +# CONFIG_ROCKCHIP_RGA is not set + +# +# RGA2 +# +CONFIG_ROCKCHIP_RGA2=y + +# +# VCODEC +# +CONFIG_RK_VCODEC=y + +# +# IEP +# +# CONFIG_IEP is not set +# CONFIG_IEP_MMU is not set + +# +# DP +# + +# +# ROCKCHIP_MPP +# +CONFIG_ROCKCHIP_MPP_SERVICE=y +CONFIG_ROCKCHIP_MPP_DEVICE=y +# CONFIG_VGASTATE is not set +CONFIG_VIDEOMODE_HELPERS=y +CONFIG_HDMI=y +CONFIG_HDMI_NOTIFIERS=y + +# +# Console display driver support +# +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set +# CONFIG_LOGO is not set +CONFIG_SOUND=y +# CONFIG_SOUND_OSS_CORE is not set +CONFIG_SND=y +CONFIG_SND_TIMER=y +CONFIG_SND_PCM=y +CONFIG_SND_PCM_ELD=y +CONFIG_SND_PCM_IEC958=y +CONFIG_SND_DMAENGINE_PCM=y +CONFIG_SND_HWDEP=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_JACK=y +CONFIG_SND_SEQUENCER=y +CONFIG_SND_SEQ_DUMMY=y +# CONFIG_SND_MIXER_OSS is not set +# CONFIG_SND_PCM_OSS is not set +CONFIG_SND_PCM_TIMER=y +# CONFIG_SND_SEQUENCER_OSS is not set +CONFIG_SND_HRTIMER=y +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_MAX_CARDS=32 +# CONFIG_SND_SUPPORT_OLD_API is not set +CONFIG_SND_PROC_FS=y +# CONFIG_SND_VERBOSE_PROCFS is not set +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set +CONFIG_SND_VMASTER=y +CONFIG_SND_RAWMIDI_SEQ=m +# CONFIG_SND_OPL3_LIB_SEQ is not set +# CONFIG_SND_OPL4_LIB_SEQ is not set +# CONFIG_SND_SBAWE_SEQ is not set +# CONFIG_SND_EMU10K1_SEQ is not set +CONFIG_SND_DRIVERS=y +CONFIG_SND_DUMMY=m +CONFIG_SND_ALOOP=m +# CONFIG_SND_VIRMIDI is not set +# CONFIG_SND_MTPAV is not set +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set +# CONFIG_SND_PCI is not set + +# +# HD-Audio +# +CONFIG_SND_HDA_PREALLOC_SIZE=64 +# CONFIG_SND_SPI is not set +CONFIG_SND_USB=y +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_USB_UA101=m +CONFIG_SND_USB_CAIAQ=m +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_6FIRE=m +CONFIG_SND_USB_HIFACE=m +# CONFIG_SND_BCD2000 is not set +# CONFIG_SND_USB_POD is not set +# CONFIG_SND_USB_PODHD is not set +# CONFIG_SND_USB_TONEPORT is not set +# CONFIG_SND_USB_VARIAX is not set +CONFIG_SND_SOC=y +CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y +# CONFIG_SND_ATMEL_SOC is not set +# CONFIG_SND_DESIGNWARE_I2S is not set + +# +# SoC Audio for Freescale CPUs +# + +# +# Common SoC Audio options for Freescale CPUs: +# +# CONFIG_SND_SOC_FSL_ASRC is not set +# CONFIG_SND_SOC_FSL_SAI is not set +# CONFIG_SND_SOC_FSL_SSI is not set +# CONFIG_SND_SOC_FSL_SPDIF is not set +# CONFIG_SND_SOC_FSL_ESAI is not set +# CONFIG_SND_SOC_IMX_AUDMUX is not set +CONFIG_SND_SOC_ROCKCHIP=y +# CONFIG_SND_SOC_ROCKCHIP_FORCE_SRAM is not set +CONFIG_SND_SOC_ROCKCHIP_I2S=y +# CONFIG_SND_SOC_ROCKCHIP_I2S_TDM is not set +# CONFIG_SND_SOC_ROCKCHIP_MULTI_DAIS is not set +# CONFIG_SND_SOC_ROCKCHIP_PDM is not set +CONFIG_SND_SOC_ROCKCHIP_SPDIF=y +# CONFIG_SND_SOC_ROCKCHIP_SPDIFRX is not set +# CONFIG_SND_SOC_ROCKCHIP_VAD is not set +# CONFIG_SND_SOC_ROCKCHIP_DA7219 is not set +# CONFIG_SND_SOC_ROCKCHIP_HDMI_ANALOG is not set +# CONFIG_SND_SOC_ROCKCHIP_HDMI_DP is not set +CONFIG_SND_SOC_ROCKCHIP_MAX98090=m +CONFIG_SND_SOC_ROCKCHIP_MULTICODECS=y +CONFIG_SND_SOC_ROCKCHIP_RT5645=y +# CONFIG_SND_SOC_ROCKCHIP_RT5651_TC358749 is not set +# CONFIG_SND_SOC_ROCKCHIP_CDNDP is not set + +# +# Allwinner SoC Audio support +# +# CONFIG_SND_SUN4I_CODEC is not set +# CONFIG_SND_SOC_XTFPGA_I2S is not set +CONFIG_SND_SOC_I2C_AND_SPI=y + +# +# CODEC drivers +# +# CONFIG_SND_SOC_AC97_CODEC is not set +# CONFIG_SND_SOC_ADAU1701 is not set +# CONFIG_SND_SOC_AK4104 is not set +# CONFIG_SND_SOC_AK4554 is not set +# CONFIG_SND_SOC_AK4613 is not set +# CONFIG_SND_SOC_AK4642 is not set +# CONFIG_SND_SOC_AK5386 is not set +# CONFIG_SND_SOC_ALC5623 is not set +# CONFIG_SND_SOC_CS35L32 is not set +# CONFIG_SND_SOC_CS42L51_I2C is not set +# CONFIG_SND_SOC_CS42L52 is not set +# CONFIG_SND_SOC_CS42L56 is not set +# CONFIG_SND_SOC_CS42L73 is not set +# CONFIG_SND_SOC_CS4265 is not set +# CONFIG_SND_SOC_CS4270 is not set +# CONFIG_SND_SOC_CS4271_I2C is not set +# CONFIG_SND_SOC_CS4271_SPI is not set +# CONFIG_SND_SOC_CS42XX8_I2C is not set +# CONFIG_SND_SOC_CS4349 is not set +# CONFIG_SND_SOC_CX2072X is not set +# CONFIG_SND_SOC_CX20810 is not set +# CONFIG_SND_SOC_DUMMY_CODEC is not set +# CONFIG_SND_SOC_BT_SCO is not set +CONFIG_SND_SOC_ES8316=m +# CONFIG_SND_SOC_ES8323 is not set +CONFIG_SND_SOC_HDMI_CODEC=y +# CONFIG_SND_SOC_ES8328 is not set +# CONFIG_SND_SOC_ES8328_I2C is not set +# CONFIG_SND_SOC_ES8396 is not set +# CONFIG_SND_SOC_GTM601 is not set +# CONFIG_SND_SOC_GVA_CODEC is not set +# CONFIG_SND_SOC_FM1288 is not set +CONFIG_SND_SOC_MAX98090=m +# CONFIG_SND_SOC_PCM1681 is not set +# CONFIG_SND_SOC_PCM1792A is not set +# CONFIG_SND_SOC_PCM512x_I2C is not set +# CONFIG_SND_SOC_PCM512x_SPI is not set +# CONFIG_SND_SOC_RK312X is not set +# CONFIG_SND_SOC_RK3228 is not set +CONFIG_SND_SOC_RK3308=m +CONFIG_SND_SOC_RK3328=m +CONFIG_SND_SOC_RK817=m +CONFIG_SND_SOC_RL6231=y +CONFIG_SND_SOC_RT5616=m +# CONFIG_SND_SOC_RT5631 is not set +CONFIG_SND_SOC_RT5640=m +CONFIG_SND_SOC_RT5645=y +CONFIG_SND_SOC_RT5651=y +# CONFIG_SND_SOC_RT5677_SPI is not set +# CONFIG_SND_SOC_SGTL5000 is not set +# CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set +CONFIG_SND_SOC_SPDIF=y +# CONFIG_SND_SOC_SSM2602_SPI is not set +# CONFIG_SND_SOC_SSM2602_I2C is not set +# CONFIG_SND_SOC_SSM4567 is not set +# CONFIG_SND_SOC_STA32X is not set +# CONFIG_SND_SOC_STA350 is not set +# CONFIG_SND_SOC_STI_SAS is not set +# CONFIG_SND_SOC_TAS2552 is not set +# CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set +# CONFIG_SND_SOC_TC358749X is not set +# CONFIG_SND_SOC_TFA9879 is not set +# CONFIG_SND_SOC_TLV320AIC23_I2C is not set +# CONFIG_SND_SOC_TLV320AIC23_SPI is not set +# CONFIG_SND_SOC_TLV320AIC31XX is not set +# CONFIG_SND_SOC_TLV320AIC3X is not set +CONFIG_SND_SOC_TS3A227E=m +# CONFIG_SND_SOC_WM8510 is not set +# CONFIG_SND_SOC_WM8523 is not set +# CONFIG_SND_SOC_WM8580 is not set +# CONFIG_SND_SOC_WM8711 is not set +# CONFIG_SND_SOC_WM8728 is not set +# CONFIG_SND_SOC_WM8731 is not set +# CONFIG_SND_SOC_WM8737 is not set +# CONFIG_SND_SOC_WM8741 is not set +# CONFIG_SND_SOC_WM8750 is not set +# CONFIG_SND_SOC_WM8753 is not set +# CONFIG_SND_SOC_WM8770 is not set +# CONFIG_SND_SOC_WM8776 is not set +# CONFIG_SND_SOC_WM8804_I2C is not set +# CONFIG_SND_SOC_WM8804_SPI is not set +# CONFIG_SND_SOC_WM8903 is not set +# CONFIG_SND_SOC_WM8962 is not set +# CONFIG_SND_SOC_WM8978 is not set +# CONFIG_SND_SOC_TPA6130A2 is not set +CONFIG_SND_SIMPLE_CARD=y +# CONFIG_SOUND_PRIME is not set + +# +# HID support +# +CONFIG_HID=y +CONFIG_HID_BATTERY_STRENGTH=y +CONFIG_HIDRAW=y +CONFIG_UHID=y +CONFIG_HID_GENERIC=y + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=m +CONFIG_HID_ACRUX=m +# CONFIG_HID_ACRUX_FF is not set +CONFIG_HID_APPLE=m +CONFIG_HID_APPLEIR=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BELKIN=m +CONFIG_HID_BETOP_FF=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +CONFIG_HID_CORSAIR=m +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_CP2112=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_DRAGONRISE_FF=y +CONFIG_HID_EMS_FF=m +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EZKEY=m +CONFIG_HID_GEMBIRD=m +# CONFIG_HID_GFRM is not set +CONFIG_HID_HOLTEK=m +# CONFIG_HOLTEK_FF is not set +CONFIG_HID_GT683R=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WALTOP=m +CONFIG_HID_GYRATION=m +CONFIG_HID_ICADE=m +CONFIG_HID_TWINHAN=m +CONFIG_HID_KENSINGTON=y +CONFIG_HID_LCPOWER=m +# CONFIG_HID_LENOVO is not set +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_HID_LOGITECH_HIDPP=m +CONFIG_LOGITECH_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGIG940_FF=y +CONFIG_LOGIWHEELS_FF=y +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +# CONFIG_PANTHERLORD_FF is not set +# CONFIG_HID_PENMOUNT is not set +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +# CONFIG_HID_PICOLCD_FB is not set +# CONFIG_HID_PICOLCD_BACKLIGHT is not set +# CONFIG_HID_PICOLCD_LEDS is not set +# CONFIG_HID_PICOLCD_CIR is not set +CONFIG_HID_PLANTRONICS=m +# CONFIG_HID_PRIMAX is not set +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SONY=m +CONFIG_SONY_FF=y +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +# CONFIG_HID_RMI is not set +CONFIG_HID_GREENASIA=m +# CONFIG_GREENASIA_FF is not set +CONFIG_HID_SMARTJOYPLUS=m +# CONFIG_SMARTJOYPLUS_FF is not set +# CONFIG_HID_TIVO is not set +CONFIG_HID_TOPSEED=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_THRUSTMASTER_FF=y +CONFIG_HID_WACOM=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +# CONFIG_ZEROPLUS_FF is not set +CONFIG_HID_ZYDACRON=m +CONFIG_HID_SENSOR_HUB=m +CONFIG_HID_SENSOR_CUSTOM_SENSOR=m +# CONFIG_HID_RKVR is not set +# CONFIG_HID_ALPS is not set + +# +# USB HID support +# +CONFIG_USB_HID=y +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y + +# +# I2C HID support +# +CONFIG_I2C_HID=m +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + +# +# Miscellaneous USB options +# +# CONFIG_USB_DEFAULT_PERSIST is not set +# CONFIG_USB_DYNAMIC_MINORS is not set +CONFIG_USB_OTG=y +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +# CONFIG_USB_OTG_FSM is not set +# CONFIG_USB_ULPI_BUS is not set +CONFIG_USB_MON=m +# CONFIG_USB_WUSB_CBAF is not set + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_PCI=y +CONFIG_USB_XHCI_PLATFORM=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_PCI=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_ISP1362_HCD is not set +# CONFIG_USB_FOTG210_HCD is not set +# CONFIG_USB_MAX3421_HCD is not set +CONFIG_USB_OHCI_HCD=y +# CONFIG_USB_OHCI_HCD_PCI is not set +CONFIG_USB_OHCI_HCD_PLATFORM=y +# CONFIG_USB_UHCI_HCD is not set +# CONFIG_USB_U132_HCD is not set +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=y +CONFIG_USB_PRINTER=m +CONFIG_USB_WDM=y +CONFIG_USB_TMC=m + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=y +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_REALTEK_AUTOPM=y +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_UAS=y + +# +# USB Imaging devices +# +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set +# CONFIG_USB_MUSB_HDRC is not set +CONFIG_USB_DWC3=y +# CONFIG_USB_DWC3_HOST is not set +# CONFIG_USB_DWC3_GADGET is not set +CONFIG_USB_DWC3_DUAL_ROLE=y + +# +# Platform Glue Driver Support +# +# CONFIG_USB_DWC3_PCI is not set +CONFIG_USB_DWC3_OF_SIMPLE=y +CONFIG_USB_DWC3_ROCKCHIP=y +CONFIG_USB_DWC3_ROCKCHIP_INNO=y +CONFIG_USB_DWC2=y +# CONFIG_USB_DWC2_HOST is not set + +# +# Gadget/Dual-role mode requires USB Gadget support to be enabled +# +# CONFIG_USB_DWC2_PERIPHERAL is not set +CONFIG_USB_DWC2_DUAL_ROLE=y +# CONFIG_USB_DWC2_PCI is not set +# CONFIG_USB_DWC2_DEBUG is not set +# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set +# CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_ISP1760 is not set + +# +# USB port drivers +# +CONFIG_USB_SERIAL=y +# CONFIG_USB_SERIAL_CONSOLE is not set +CONFIG_USB_SERIAL_GENERIC=y +# CONFIG_USB_SERIAL_SIMPLE is not set +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=y +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_CP210X=y +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_FTDI_SIO=y +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +CONFIG_USB_SERIAL_F81232=m +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN=m +# CONFIG_USB_SERIAL_KEYSPAN_MPR is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19QW is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +CONFIG_USB_SERIAL_METRO=m +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7840=m +CONFIG_USB_SERIAL_MXUPORT=m +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_PL2303=y +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QUALCOMM=y +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SAFE=m +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_WWAN=y +CONFIG_USB_SERIAL_OPTION=y +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_XSENS_MT=m +CONFIG_USB_SERIAL_WISHBONE=m +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_QT2=m +CONFIG_USB_SERIAL_DEBUG=m + +# +# USB Miscellaneous drivers +# +CONFIG_USB_EMI62=m +CONFIG_USB_EMI26=m +CONFIG_USB_ADUTUX=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_RIO500=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_LCD=m +CONFIG_USB_LED=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_APPLEDISPLAY=m +# CONFIG_USB_SISUSBVGA is not set +CONFIG_USB_LD=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_TEST=m +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_YUREX=m +CONFIG_USB_EZUSB_FX2=m +# CONFIG_USB_HSIC_USB3503 is not set +# CONFIG_USB_LINK_LAYER_TEST is not set +# CONFIG_USB_CHAOSKEY is not set +CONFIG_USB_ATM=m +CONFIG_USB_SPEEDTOUCH=m +CONFIG_USB_CXACRU=m +CONFIG_USB_UEAGLEATM=m +CONFIG_USB_XUSBATM=m + +# +# USB Physical Layer drivers +# +CONFIG_USB_PHY=y +# CONFIG_USB_OTG_WAKELOCK is not set +# CONFIG_NOP_USB_XCEIV is not set +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_USB_ISP1301 is not set +# CONFIG_USB_ULPI is not set +# CONFIG_DUAL_ROLE_USB_INTF is not set +CONFIG_USB_GADGET=y +# CONFIG_USB_GADGET_DEBUG is not set +CONFIG_USB_GADGET_DEBUG_FILES=y +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_VBUS_DRAW=500 +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 + +# +# USB Peripheral Controller +# +# CONFIG_USB_FOTG210_UDC is not set +# CONFIG_USB_GR_UDC is not set +# CONFIG_USB_R8A66597 is not set +# CONFIG_USB_PXA27X is not set +# CONFIG_USB_MV_UDC is not set +# CONFIG_USB_MV_U3D is not set +# CONFIG_USB_M66592 is not set +# CONFIG_USB_BDC_UDC is not set +# CONFIG_USB_AMD5536UDC is not set +# CONFIG_USB_NET2272 is not set +# CONFIG_USB_NET2280 is not set +# CONFIG_USB_GOKU is not set +# CONFIG_USB_EG20T is not set +# CONFIG_USB_GADGET_XILINX is not set +# CONFIG_USB_DUMMY_HCD is not set +CONFIG_USB_LIBCOMPOSITE=y +CONFIG_USB_F_ACM=y +CONFIG_USB_U_SERIAL=y +CONFIG_USB_F_MASS_STORAGE=y +CONFIG_USB_F_FS=y +CONFIG_USB_CONFIGFS=y +# CONFIG_USB_CONFIGFS_SERIAL is not set +CONFIG_USB_CONFIGFS_ACM=y +# CONFIG_USB_CONFIGFS_OBEX is not set +# CONFIG_USB_CONFIGFS_NCM is not set +# CONFIG_USB_CONFIGFS_ECM is not set +# CONFIG_USB_CONFIGFS_ECM_SUBSET is not set +# CONFIG_USB_CONFIGFS_RNDIS is not set +# CONFIG_USB_CONFIGFS_EEM is not set +# CONFIG_USB_CONFIGFS_PHONET is not set +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +# CONFIG_USB_CONFIGFS_F_LB_SS is not set +CONFIG_USB_CONFIGFS_F_FS=y +# CONFIG_USB_CONFIGFS_F_MTP is not set +# CONFIG_USB_CONFIGFS_F_ACC is not set +CONFIG_USB_CONFIGFS_UEVENT=y +# CONFIG_USB_CONFIGFS_F_UAC1 is not set +# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set +# CONFIG_USB_CONFIGFS_F_UAC2 is not set +# CONFIG_USB_CONFIGFS_F_MIDI is not set +# CONFIG_USB_CONFIGFS_F_HID is not set +# CONFIG_USB_CONFIGFS_F_UVC is not set +# CONFIG_USB_CONFIGFS_F_PRINTER is not set +# CONFIG_USB_ZERO is not set +# CONFIG_USB_AUDIO is not set +# CONFIG_USB_ETH is not set +# CONFIG_USB_G_NCM is not set +# CONFIG_USB_GADGETFS is not set +# CONFIG_USB_FUNCTIONFS is not set +# CONFIG_USB_MASS_STORAGE is not set +# CONFIG_USB_G_SERIAL is not set +# CONFIG_USB_MIDI_GADGET is not set +# CONFIG_USB_G_PRINTER is not set +# CONFIG_USB_CDC_COMPOSITE is not set +# CONFIG_USB_G_NOKIA is not set +# CONFIG_USB_G_ACM_MS is not set +# CONFIG_USB_G_MULTI is not set +# CONFIG_USB_G_HID is not set +# CONFIG_USB_G_DBGP is not set +# CONFIG_USB_G_WEBCAM is not set + +# +# ROCKCHIP USB Support +# +# CONFIG_USB20_HOST is not set +# CONFIG_USB20_OTG is not set +# CONFIG_USB_LED_TRIG is not set +# CONFIG_UWB is not set +CONFIG_MMC=y +# CONFIG_MMC_DEBUG is not set +# CONFIG_MMC_EMBEDDED_SDIO is not set +# CONFIG_MMC_PARANOID_SD_INIT is not set + +# +# MMC/SD/SDIO Card Drivers +# +CONFIG_MMC_BLOCK=y +CONFIG_MMC_BLOCK_MINORS=32 +CONFIG_MMC_BLOCK_BOUNCE=y +# CONFIG_SDIO_UART is not set +CONFIG_MMC_TEST=y +# CONFIG_MMC_SIMULATE_MAX_SPEED is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +# CONFIG_MMC_ARMMMCI is not set +CONFIG_MMC_SDHCI=y +# CONFIG_MMC_SDHCI_PCI is not set +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MMC_SDHCI_OF_ARASAN=y +# CONFIG_MMC_SDHCI_OF_AT91 is not set +# CONFIG_MMC_SDHCI_F_SDH30 is not set +# CONFIG_MMC_TIFM_SD is not set +# CONFIG_MMC_SPI is not set +# CONFIG_MMC_CB710 is not set +# CONFIG_MMC_VIA_SDMMC is not set +CONFIG_MMC_DW=y +CONFIG_MMC_DW_PLTFM=y +# CONFIG_MMC_DW_EXYNOS is not set +# CONFIG_MMC_DW_K3 is not set +# CONFIG_MMC_DW_PCI is not set +CONFIG_MMC_DW_ROCKCHIP=y +# CONFIG_MMC_VUB300 is not set +# CONFIG_MMC_USHC is not set +# CONFIG_MMC_USDHI6ROL0 is not set +# CONFIG_MMC_TOSHIBA_PCI is not set +# CONFIG_MMC_MTK is not set +# CONFIG_MEMSTICK is not set +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +# CONFIG_LEDS_CLASS_FLASH is not set + +# +# LED drivers +# +# CONFIG_LEDS_BCM6328 is not set +# CONFIG_LEDS_BCM6358 is not set +# CONFIG_LEDS_LM3530 is not set +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_PCA9532 is not set +CONFIG_LEDS_GPIO=y +# CONFIG_LEDS_LP3944 is not set +# CONFIG_LEDS_LP5521 is not set +# CONFIG_LEDS_LP5523 is not set +# CONFIG_LEDS_LP5562 is not set +# CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_LP8860 is not set +# CONFIG_LEDS_PCA955X is not set +CONFIG_LEDS_PCA963X=m +# CONFIG_LEDS_DAC124S085 is not set +# CONFIG_LEDS_PWM is not set +# CONFIG_LEDS_REGULATOR is not set +# CONFIG_LEDS_BD2802 is not set +# CONFIG_LEDS_LT3593 is not set +# CONFIG_LEDS_TCA6507 is not set +# CONFIG_LEDS_TLC591XX is not set +# CONFIG_LEDS_LM355x is not set +# CONFIG_LEDS_IS31FL32XX is not set + +# +# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) +# +# CONFIG_LEDS_BLINKM is not set +# CONFIG_LEDS_SYSCON is not set + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_ONESHOT=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_GPIO=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + +# +# iptables trigger is under Netfilter config (LED target) +# +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +# CONFIG_LEDS_TRIGGER_MULTI_CTRL is not set +CONFIG_SWITCH=y +# CONFIG_SWITCH_GPIO is not set +# CONFIG_ACCESSIBILITY is not set +# CONFIG_INFINIBAND is not set +CONFIG_EDAC_SUPPORT=y +# CONFIG_EDAC is not set +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +# CONFIG_RTC_DEBUG is not set + +# +# RTC interfaces +# +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +# CONFIG_RTC_DRV_TEST is not set + +# +# I2C RTC drivers +# +# CONFIG_RTC_DRV_ABB5ZES3 is not set +CONFIG_RTC_DRV_ABX80X=m +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_DS1374=m +# CONFIG_RTC_DRV_DS1374_WDT is not set +CONFIG_RTC_DRV_DS1672=m +CONFIG_RTC_DRV_DS3232=m +# CONFIG_RTC_DRV_FAKE is not set +CONFIG_RTC_DRV_HYM8563=m +CONFIG_RTC_DRV_MAX6900=m +CONFIG_RTC_DRV_RK808=y +# CONFIG_RTC_DRV_RK_TIMER is not set +CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_ISL1208=m +CONFIG_RTC_DRV_ISL12022=m +CONFIG_RTC_DRV_ISL12057=m +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_PCF8563=m +CONFIG_RTC_DRV_PCF85063=m +CONFIG_RTC_DRV_PCF8583=m +CONFIG_RTC_DRV_M41T80=m +# CONFIG_RTC_DRV_M41T80_WDT is not set +CONFIG_RTC_DRV_BQ32K=m +CONFIG_RTC_DRV_S35390A=m +CONFIG_RTC_DRV_FM3130=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_RX8025=m +CONFIG_RTC_DRV_EM3027=m +# CONFIG_RTC_DRV_RV3029C2 is not set +# CONFIG_RTC_DRV_RV8803 is not set + +# +# SPI RTC drivers +# +CONFIG_RTC_DRV_M41T93=m +CONFIG_RTC_DRV_M41T94=m +CONFIG_RTC_DRV_DS1305=m +CONFIG_RTC_DRV_DS1343=m +# CONFIG_RTC_DRV_DS1347 is not set +CONFIG_RTC_DRV_DS1390=m +# CONFIG_RTC_DRV_MAX6902 is not set +CONFIG_RTC_DRV_R9701=m +CONFIG_RTC_DRV_RS5C348=m +CONFIG_RTC_DRV_DS3234=m +CONFIG_RTC_DRV_PCF2123=m +# CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_MCP795 is not set + +# +# Platform RTC drivers +# +# CONFIG_RTC_DRV_DS1286 is not set +# CONFIG_RTC_DRV_DS1511 is not set +# CONFIG_RTC_DRV_DS1553 is not set +# CONFIG_RTC_DRV_DS1685_FAMILY is not set +# CONFIG_RTC_DRV_DS1742 is not set +# CONFIG_RTC_DRV_DS2404 is not set +# CONFIG_RTC_DRV_STK17TA8 is not set +# CONFIG_RTC_DRV_M48T86 is not set +# CONFIG_RTC_DRV_M48T35 is not set +# CONFIG_RTC_DRV_M48T59 is not set +# CONFIG_RTC_DRV_MSM6242 is not set +# CONFIG_RTC_DRV_BQ4802 is not set +# CONFIG_RTC_DRV_RP5C01 is not set +# CONFIG_RTC_DRV_V3020 is not set +# CONFIG_RTC_DRV_ZYNQMP is not set + +# +# on-CPU RTC drivers +# +# CONFIG_RTC_DRV_PL030 is not set +# CONFIG_RTC_DRV_PL031 is not set +# CONFIG_RTC_DRV_SNVS is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set + +# +# DMA Devices +# +CONFIG_DMA_ENGINE=y +CONFIG_DMA_OF=y +# CONFIG_AMBA_PL08X is not set +# CONFIG_FSL_EDMA is not set +# CONFIG_INTEL_IDMA64 is not set +CONFIG_PL330_DMA=y +# CONFIG_DW_DMAC is not set +# CONFIG_DW_DMAC_PCI is not set + +# +# DMA Clients +# +# CONFIG_ASYNC_TX_DMA is not set +# CONFIG_DMATEST is not set +# CONFIG_AUXDISPLAY is not set +CONFIG_UIO=m +# CONFIG_UIO_CIF is not set +CONFIG_UIO_PDRV_GENIRQ=m +# CONFIG_UIO_DMEM_GENIRQ is not set +# CONFIG_UIO_AEC is not set +# CONFIG_UIO_SERCOS3 is not set +# CONFIG_UIO_PCI_GENERIC is not set +# CONFIG_UIO_NETX is not set +# CONFIG_UIO_PRUSS is not set +# CONFIG_UIO_MF624 is not set +# CONFIG_VFIO is not set +# CONFIG_VIRT_DRIVERS is not set + +# +# Virtio drivers +# +# CONFIG_VIRTIO_PCI is not set +# CONFIG_VIRTIO_MMIO is not set + +# +# Microsoft Hyper-V guest support +# +CONFIG_STAGING=y +CONFIG_PRISM2_USB=m +# CONFIG_COMEDI is not set +# CONFIG_RTL8192U is not set +# CONFIG_RTLLIB is not set +# CONFIG_R8712U is not set +# CONFIG_R8188EU is not set +# CONFIG_R8723AU is not set +# CONFIG_RTS5208 is not set +# CONFIG_VT6655 is not set +CONFIG_VT6656=m + +# +# IIO staging drivers +# + +# +# Accelerometers +# +# CONFIG_ADIS16201 is not set +# CONFIG_ADIS16203 is not set +# CONFIG_ADIS16204 is not set +# CONFIG_ADIS16209 is not set +# CONFIG_ADIS16220 is not set +# CONFIG_ADIS16240 is not set +# CONFIG_LIS3L02DQ is not set +# CONFIG_SCA3000 is not set + +# +# Analog to digital converters +# +# CONFIG_AD7606 is not set +# CONFIG_AD7780 is not set +# CONFIG_AD7816 is not set +# CONFIG_AD7192 is not set +# CONFIG_AD7280 is not set + +# +# Analog digital bi-direction converters +# +# CONFIG_ADT7316 is not set + +# +# Capacitance to digital converters +# +# CONFIG_AD7150 is not set +# CONFIG_AD7152 is not set +# CONFIG_AD7746 is not set + +# +# Direct Digital Synthesis +# +# CONFIG_AD9832 is not set +# CONFIG_AD9834 is not set + +# +# Digital gyroscope sensors +# +# CONFIG_ADIS16060 is not set + +# +# Network Analyzer, Impedance Converters +# +# CONFIG_AD5933 is not set +# CONFIG_INV_MPU_IIO is not set + +# +# Light sensors +# +CONFIG_SENSORS_ISL29018=m +# CONFIG_SENSORS_ISL29028 is not set +CONFIG_TSL2583=m +# CONFIG_TSL2x7x is not set + +# +# Magnetometer sensors +# +# CONFIG_SENSORS_HMC5843_I2C is not set +# CONFIG_SENSORS_HMC5843_SPI is not set + +# +# Active energy metering IC +# +# CONFIG_ADE7753 is not set +# CONFIG_ADE7754 is not set +# CONFIG_ADE7758 is not set +# CONFIG_ADE7759 is not set +# CONFIG_ADE7854 is not set + +# +# Resolver to digital converters +# +# CONFIG_AD2S90 is not set +# CONFIG_AD2S1200 is not set +# CONFIG_AD2S1210 is not set + +# +# Triggers - standalone +# +# CONFIG_IIO_PERIODIC_RTC_TRIGGER is not set +# CONFIG_IIO_SIMPLE_DUMMY is not set +# CONFIG_FB_SM750 is not set +# CONFIG_FB_XGI is not set + +# +# Speakup console speech +# +CONFIG_SPEAKUP=m +# CONFIG_SPEAKUP_SYNTH_ACNTSA is not set +# CONFIG_SPEAKUP_SYNTH_APOLLO is not set +# CONFIG_SPEAKUP_SYNTH_AUDPTR is not set +# CONFIG_SPEAKUP_SYNTH_BNS is not set +# CONFIG_SPEAKUP_SYNTH_DECTLK is not set +# CONFIG_SPEAKUP_SYNTH_DECEXT is not set +# CONFIG_SPEAKUP_SYNTH_LTLK is not set +CONFIG_SPEAKUP_SYNTH_SOFT=m +# CONFIG_SPEAKUP_SYNTH_SPKOUT is not set +# CONFIG_SPEAKUP_SYNTH_TXPRT is not set +# CONFIG_SPEAKUP_SYNTH_DUMMY is not set +# CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set +# CONFIG_STAGING_MEDIA is not set + +# +# Android +# +# CONFIG_ASHMEM is not set +# CONFIG_ANDROID_TIMED_OUTPUT is not set +# CONFIG_ANDROID_LOW_MEMORY_KILLER is not set +# CONFIG_SYNC is not set +# CONFIG_ANDROID_VSOC is not set +# CONFIG_ION is not set +CONFIG_FIQ_DEBUGGER=y +CONFIG_FIQ_DEBUGGER_NO_SLEEP=y +# CONFIG_FIQ_DEBUGGER_WAKEUP_IRQ_ALWAYS_ON is not set +CONFIG_FIQ_DEBUGGER_CONSOLE=y +CONFIG_FIQ_DEBUGGER_CONSOLE_DEFAULT_ENABLE=y +# CONFIG_FIQ_DEBUGGER_TRUST_ZONE is not set +# CONFIG_FIQ_DEBUGGER_UART_OVERLAY is not set +# CONFIG_FIQ_WATCHDOG is not set +# CONFIG_RK_CONSOLE_THREAD is not set +# CONFIG_STAGING_BOARD is not set +# CONFIG_WIMAX_GDM72XX is not set +# CONFIG_LTE_GDM724X is not set +# CONFIG_LUSTRE_FS is not set +# CONFIG_DGNC is not set +# CONFIG_DGAP is not set +# CONFIG_GS_FPGABOOT is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +CONFIG_FB_TFT=m +CONFIG_FB_TFT_AGM1264K_FL=m +CONFIG_FB_TFT_BD663474=m +CONFIG_FB_TFT_HX8340BN=m +CONFIG_FB_TFT_HX8347D=m +CONFIG_FB_TFT_HX8353D=m +CONFIG_FB_TFT_HX8357D=m +CONFIG_FB_TFT_ILI9163=m +CONFIG_FB_TFT_ILI9320=m +CONFIG_FB_TFT_ILI9325=m +CONFIG_FB_TFT_ILI9340=m +CONFIG_FB_TFT_ILI9341=m +CONFIG_FB_TFT_ILI9481=m +CONFIG_FB_TFT_ILI9486=m +CONFIG_FB_TFT_PCD8544=m +CONFIG_FB_TFT_RA8875=m +CONFIG_FB_TFT_S6D02A1=m +CONFIG_FB_TFT_S6D1121=m +CONFIG_FB_TFT_SSD1289=m +CONFIG_FB_TFT_SSD1306=m +CONFIG_FB_TFT_SSD1331=m +CONFIG_FB_TFT_SSD1351=m +CONFIG_FB_TFT_ST7735R=m +CONFIG_FB_TFT_ST7789V=m +CONFIG_FB_TFT_TINYLCD=m +CONFIG_FB_TFT_TLS8204=m +# CONFIG_FB_TFT_UC1611 is not set +CONFIG_FB_TFT_UC1701=m +CONFIG_FB_TFT_UPD161704=m +CONFIG_FB_TFT_WATTEROTT=m +CONFIG_FB_FLEX=m +CONFIG_FB_TFT_FBTFT_DEVICE=m +# CONFIG_FSL_MC_BUS is not set +# CONFIG_WILC1000_DRIVER is not set +# CONFIG_MOST is not set +# CONFIG_POWERVR_ROGUE_N is not set +# CONFIG_GOLDFISH is not set +CONFIG_CHROME_PLATFORMS=y +# CONFIG_CROS_EC_CHARDEV is not set +CONFIG_CROS_EC_PROTO=y +CONFIG_CLKDEV_LOOKUP=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y + +# +# Common Clock Framework +# +# CONFIG_COMMON_CLK_VERSATILE is not set +CONFIG_COMMON_CLK_RK808=y +# CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_SI514 is not set +# CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_CDCE925 is not set +# CONFIG_CLK_QORIQ is not set +CONFIG_COMMON_CLK_XGENE=y +# CONFIG_COMMON_CLK_PWM is not set +# CONFIG_COMMON_CLK_PXA is not set +# CONFIG_COMMON_CLK_CDCE706 is not set + +# +# Hardware Spinlock drivers +# +# CONFIG_HWSPINLOCK_ROCKCHIP is not set + +# +# Clock Source drivers +# +CONFIG_CLKSRC_OF=y +CONFIG_CLKSRC_PROBE=y +CONFIG_ROCKCHIP_TIMER=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y +# CONFIG_ARM_ARCH_TIMER_VCT_ACCESS is not set +# CONFIG_ARM_TIMER_SP804 is not set +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set +CONFIG_MAILBOX=y +# CONFIG_ARM_MHU is not set +# CONFIG_PL320_MBOX is not set +# CONFIG_ALTERA_MBOX is not set +# CONFIG_MAILBOX_TEST is not set +# CONFIG_RK3368_MBOX is not set +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y + +# +# Generic IOMMU Pagetable Support +# +# CONFIG_IOMMU_IO_PGTABLE_LPAE is not set +CONFIG_IOMMU_IOVA=y +CONFIG_OF_IOMMU=y +CONFIG_IOMMU_DMA=y +CONFIG_ROCKCHIP_IOMMU=y +# CONFIG_RK_IOMMU is not set +# CONFIG_ARM_SMMU is not set +# CONFIG_ARM_SMMU_V3 is not set + +# +# Remoteproc drivers +# +# CONFIG_STE_MODEM_RPROC is not set + +# +# Rpmsg drivers +# + +# +# SOC (System On Chip) specific Drivers +# + +# +# Rockchip CPU selection +# +CONFIG_CPU_PX30=y +# CONFIG_CPU_RK1808 is not set +# CONFIG_CPU_RK3308 is not set +CONFIG_CPU_RK3328=y +# CONFIG_CPU_RK3366 is not set +CONFIG_CPU_RK3368=y +CONFIG_CPU_RK3399=y +CONFIG_ANDROID_VERSION=0x07010000 +CONFIG_ROCKCHIP_CPUINFO=y +# CONFIG_ROCKCHIP_DEVICEINFO is not set +CONFIG_ROCKCHIP_IPA=y +CONFIG_ROCKCHIP_OPP=y +# CONFIG_ROCKCHIP_PM_TEST is not set +CONFIG_ROCKCHIP_GRF=y +CONFIG_ROCKCHIP_PM_DOMAINS=y +# CONFIG_ROCKCHIP_PVTM is not set +CONFIG_ROCKCHIP_SUSPEND_MODE=y +CONFIG_ROCKCHIP_SYSTEM_MONITOR=y +# CONFIG_ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER is not set +# CONFIG_SUNXI_SRAM is not set +# CONFIG_SOC_TI is not set +CONFIG_VENDOR_FRIENDLYELEC=y +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_USERSPACE=y + +# +# DEVFREQ Drivers +# +# CONFIG_ARM_ROCKCHIP_BUS_DEVFREQ is not set +CONFIG_ARM_ROCKCHIP_DMC_DEVFREQ=y +CONFIG_PM_DEVFREQ_EVENT=y +CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI=y +# CONFIG_DEVFREQ_EVENT_ROCKCHIP_NOCP is not set +CONFIG_EXTCON=y + +# +# Extcon Device Drivers +# +# CONFIG_EXTCON_ADC_JACK is not set +# CONFIG_EXTCON_GPIO is not set +# CONFIG_EXTCON_RT8973A is not set +# CONFIG_EXTCON_SM5502 is not set +# CONFIG_EXTCON_USB_GPIO is not set +CONFIG_MEMORY=y +# CONFIG_ARM_PL172_MPMC is not set +CONFIG_IIO=y +CONFIG_IIO_BUFFER=y +# CONFIG_IIO_BUFFER_CB is not set +CONFIG_IIO_KFIFO_BUF=y +CONFIG_IIO_TRIGGER=y +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 + +# +# Accelerometers +# +# CONFIG_BMA180 is not set +# CONFIG_BMC150_ACCEL is not set +# CONFIG_HID_SENSOR_ACCEL_3D is not set +# CONFIG_IIO_ST_ACCEL_3AXIS is not set +# CONFIG_KXSD9 is not set +# CONFIG_KXCJK1013 is not set +# CONFIG_MMA8452 is not set +# CONFIG_MMA9551 is not set +# CONFIG_MMA9553 is not set +# CONFIG_MXC4005 is not set +# CONFIG_STK8312 is not set +# CONFIG_STK8BA50 is not set + +# +# Analog to digital converters +# +# CONFIG_AD7266 is not set +# CONFIG_AD7291 is not set +# CONFIG_AD7298 is not set +# CONFIG_AD7476 is not set +# CONFIG_AD7791 is not set +# CONFIG_AD7793 is not set +# CONFIG_AD7887 is not set +# CONFIG_AD7923 is not set +# CONFIG_AD799X is not set +# CONFIG_CC10001_ADC is not set +# CONFIG_GPIO_MUXADC is not set +# CONFIG_HI8435 is not set +# CONFIG_MAX1027 is not set +# CONFIG_MAX1363 is not set +CONFIG_MCP320X=m +CONFIG_MCP3422=m +# CONFIG_NAU7802 is not set +CONFIG_ROCKCHIP_SARADC=y +# CONFIG_TI_ADC081C is not set +# CONFIG_TI_ADC128S052 is not set +# CONFIG_VF610_ADC is not set + +# +# Amplifiers +# +# CONFIG_AD8366 is not set + +# +# Chemical Sensors +# +# CONFIG_VZ89X is not set + +# +# Hid Sensor IIO Common +# +# CONFIG_HID_SENSOR_IIO_COMMON is not set +CONFIG_IIO_MS_SENSORS_I2C=m + +# +# SSP Sensor Common +# +# CONFIG_IIO_SSP_SENSORHUB is not set + +# +# Digital to analog converters +# +# CONFIG_AD5064 is not set +# CONFIG_AD5360 is not set +# CONFIG_AD5380 is not set +# CONFIG_AD5421 is not set +# CONFIG_AD5446 is not set +# CONFIG_AD5449 is not set +# CONFIG_AD5504 is not set +# CONFIG_AD5624R_SPI is not set +# CONFIG_AD5686 is not set +# CONFIG_AD5755 is not set +# CONFIG_AD5764 is not set +# CONFIG_AD5791 is not set +# CONFIG_AD7303 is not set +# CONFIG_M62332 is not set +# CONFIG_MAX517 is not set +# CONFIG_MAX5821 is not set +# CONFIG_MCP4725 is not set +# CONFIG_MCP4922 is not set + +# +# Frequency Synthesizers DDS/PLL +# + +# +# Clock Generator/Distribution +# +# CONFIG_AD9523 is not set + +# +# Phase-Locked Loop (PLL) frequency synthesizers +# +# CONFIG_ADF4350 is not set + +# +# Digital gyroscope sensors +# +# CONFIG_ADIS16080 is not set +# CONFIG_ADIS16130 is not set +# CONFIG_ADIS16136 is not set +# CONFIG_ADIS16260 is not set +# CONFIG_ADXRS450 is not set +# CONFIG_BMG160 is not set +# CONFIG_HID_SENSOR_GYRO_3D is not set +# CONFIG_IIO_ST_GYRO_3AXIS is not set +# CONFIG_ITG3200 is not set + +# +# Humidity sensors +# +CONFIG_DHT11=m +# CONFIG_HDC100X is not set +CONFIG_HTU21=m +# CONFIG_SI7005 is not set +# CONFIG_SI7020 is not set + +# +# Inertial measurement units +# +# CONFIG_ADIS16400 is not set +# CONFIG_ADIS16480 is not set +# CONFIG_KMX61 is not set +# CONFIG_INV_MPU6050_IIO is not set + +# +# Light sensors +# +# CONFIG_ADJD_S311 is not set +# CONFIG_AL3320A is not set +# CONFIG_APDS9300 is not set +# CONFIG_APDS9960 is not set +# CONFIG_BH1750 is not set +# CONFIG_CM32181 is not set +# CONFIG_CM3232 is not set +# CONFIG_CM3323 is not set +# CONFIG_CM36651 is not set +# CONFIG_GP2AP020A00F is not set +# CONFIG_ISL29125 is not set +# CONFIG_HID_SENSOR_ALS is not set +# CONFIG_HID_SENSOR_PROX is not set +# CONFIG_JSA1212 is not set +# CONFIG_RPR0521 is not set +# CONFIG_LTR501 is not set +# CONFIG_OPT3001 is not set +# CONFIG_PA12203001 is not set +# CONFIG_STK3310 is not set +# CONFIG_TCS3414 is not set +# CONFIG_TCS3472 is not set +CONFIG_SENSORS_TSL2563=m +# CONFIG_TSL4531 is not set +# CONFIG_US5182D is not set +# CONFIG_VCNL4000 is not set +# CONFIG_VL6180 is not set + +# +# Magnetometer sensors +# +# CONFIG_AK8975 is not set +# CONFIG_AK09911 is not set +# CONFIG_BMC150_MAGN is not set +# CONFIG_MAG3110 is not set +# CONFIG_HID_SENSOR_MAGNETOMETER_3D is not set +# CONFIG_MMC35240 is not set +# CONFIG_IIO_ST_MAGN_3AXIS is not set + +# +# Inclinometer sensors +# +# CONFIG_HID_SENSOR_INCLINOMETER_3D is not set +# CONFIG_HID_SENSOR_DEVICE_ROTATION is not set + +# +# Triggers - standalone +# +# CONFIG_IIO_INTERRUPT_TRIGGER is not set +CONFIG_IIO_SYSFS_TRIGGER=y + +# +# Digital potentiometers +# +# CONFIG_MCP4531 is not set + +# +# Pressure sensors +# +# CONFIG_BMP280 is not set +# CONFIG_HID_SENSOR_PRESS is not set +# CONFIG_MPL115 is not set +# CONFIG_MPL3115 is not set +# CONFIG_MS5611 is not set +# CONFIG_MS5637 is not set +# CONFIG_IIO_ST_PRESS is not set +# CONFIG_T5403 is not set + +# +# Lightning sensors +# +# CONFIG_AS3935 is not set + +# +# Proximity sensors +# +# CONFIG_LIDAR_LITE_V2 is not set +# CONFIG_SRF04 is not set +# CONFIG_SX9500 is not set + +# +# Temperature sensors +# +# CONFIG_MLX90614 is not set +# CONFIG_TMP006 is not set +# CONFIG_TSYS01 is not set +# CONFIG_TSYS02D is not set +# CONFIG_NTB is not set +# CONFIG_VME_BUS is not set +CONFIG_PWM=y +CONFIG_PWM_SYSFS=y +# CONFIG_PWM_CROS_EC is not set +# CONFIG_PWM_FSL_FTM is not set +# CONFIG_PWM_GPIO is not set +CONFIG_PWM_PCA9685=m +CONFIG_PWM_ROCKCHIP=y +# CONFIG_PWM_ROCKCHIP_I2S is not set +CONFIG_IRQCHIP=y +CONFIG_ARM_GIC=y +CONFIG_ARM_GIC_V2M=y +CONFIG_ARM_GIC_V3=y +CONFIG_ARM_GIC_V3_ITS=y +CONFIG_PARTITION_PERCPU=y +# CONFIG_IPACK_BUS is not set +CONFIG_ARCH_HAS_RESET_CONTROLLER=y +CONFIG_RESET_CONTROLLER=y +# CONFIG_FMC is not set + +# +# PHY Subsystem +# +CONFIG_GENERIC_PHY=y +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_BCM_KONA_USB2_PHY is not set +# CONFIG_PHY_SAMSUNG_USB2 is not set +# CONFIG_PHY_XGENE is not set +CONFIG_PHY_ROCKCHIP_USB=y +# CONFIG_PHY_ROCKCHIP_INNO_COMBPHY is not set +CONFIG_PHY_ROCKCHIP_INNO_USB2=y +CONFIG_PHY_ROCKCHIP_INNO_USB3=y +CONFIG_PHY_ROCKCHIP_EMMC=y +CONFIG_PHY_ROCKCHIP_DP=y +CONFIG_PHY_ROCKCHIP_MIPI_RX=y +CONFIG_PHY_ROCKCHIP_INNO_MIPI_DPHY=y +CONFIG_PHY_ROCKCHIP_INNO_HDMI_PHY=y +# CONFIG_PHY_ROCKCHIP_INNO_VIDEO_PHY is not set +# CONFIG_PHY_ROCKCHIP_INNO_VIDEO_COMBO_PHY is not set +CONFIG_PHY_ROCKCHIP_TYPEC=y +CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +CONFIG_ARM_PMU=y +CONFIG_RAS=y +# CONFIG_THUNDERBOLT is not set + +# +# Android +# +CONFIG_ANDROID=y +# CONFIG_ANDROID_BINDER_IPC is not set +# CONFIG_LIBNVDIMM is not set +CONFIG_NVMEM=y +CONFIG_ROCKCHIP_EFUSE=y +# CONFIG_ROCKCHIP_OTP is not set +# CONFIG_STM is not set +# CONFIG_INTEL_TH is not set + +# +# FPGA Configuration Support +# +# CONFIG_FPGA is not set +# CONFIG_TEE is not set +# CONFIG_RK_FLASH is not set +# CONFIG_RK_NAND is not set + +# +# Headset device support +# +# CONFIG_RK_HEADSET is not set + +# +# Firmware Drivers +# +CONFIG_ARM_PSCI_FW=y +# CONFIG_FIRMWARE_MEMMAP is not set +CONFIG_HAVE_ARM_SMCCC=y +CONFIG_ROCKCHIP_SIP=y +# CONFIG_ACPI is not set + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_USE_FOR_EXT2=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_EXT4_ENCRYPTION is not set +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=y +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +# CONFIG_JFS_FS is not set +CONFIG_XFS_FS=m +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +CONFIG_GFS2_FS=m +# CONFIG_GFS2_FS_LOCKING_DLM is not set +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_DEBUG_MASKLOG=y +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +CONFIG_NILFS2_FS=m +CONFIG_F2FS_FS=m +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +# CONFIG_F2FS_CHECK_FS is not set +CONFIG_F2FS_FS_ENCRYPTION=y +# CONFIG_F2FS_IO_TRACE is not set +# CONFIG_F2FS_FAULT_INJECTION is not set +# CONFIG_FS_DAX is not set +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_FILE_LOCKING=y +CONFIG_FS_ENCRYPTION=m +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set +CONFIG_QUOTA=y +CONFIG_QUOTA_NETLINK_INTERFACE=y +# CONFIG_PRINT_QUOTA_WARNING is not set +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=m +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QUOTACTL=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=y +CONFIG_CUSE=m +CONFIG_OVERLAY_FS=y + +# +# Caches +# +CONFIG_FSCACHE=m +CONFIG_FSCACHE_STATS=y +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=y +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=y +# CONFIG_MSDOS_FS is not set +CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=936 +CONFIG_FAT_DEFAULT_IOCHARSET="utf8" +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_RW=y + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +# CONFIG_PROC_KCORE is not set +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +# CONFIG_PROC_CHILDREN is not set +CONFIG_PROC_UID=y +CONFIG_KERNFS=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_CONFIGFS_FS=y +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +CONFIG_ECRYPT_FS=m +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_SDCARD_FS=m +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_HFSPLUS_FS_POSIX_ACL is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_LOGFS is not set +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +CONFIG_SQUASHFS_ZSTD=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_OMFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_PSTORE=y +CONFIG_PSTORE_CONSOLE=y +# CONFIG_PSTORE_PMSG is not set +# CONFIG_PSTORE_FTRACE is not set +CONFIG_PSTORE_RAM=y +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V2=y +CONFIG_NFS_V3=y +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=y +CONFIG_NFS_SWAP=y +# CONFIG_NFS_V4_1 is not set +CONFIG_ROOT_NFS=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_DEBUG=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +# CONFIG_NFSD_PNFS is not set +# CONFIG_NFSD_V4_SECURITY_LABEL is not set +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_GRACE_PERIOD=y +CONFIG_LOCKD=y +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=y +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=y +CONFIG_SUNRPC_GSS=y +CONFIG_SUNRPC_SWAP=y +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_SUNRPC_DEBUG=y +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_FS_POSIX_ACL=y +CONFIG_CIFS=m +CONFIG_CIFS_STATS=y +# CONFIG_CIFS_STATS2 is not set +# CONFIG_CIFS_WEAK_PW_HASH is not set +# CONFIG_CIFS_UPCALL is not set +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_ACL=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_SMB2=y +# CONFIG_CIFS_SMB311 is not set +CONFIG_CIFS_FSCACHE=y +# CONFIG_NCP_FS is not set +CONFIG_CODA_FS=m +# CONFIG_AFS_FS is not set +CONFIG_9P_FS=m +# CONFIG_9P_FSCACHE is not set +CONFIG_9P_FS_POSIX_ACL=y +# CONFIG_9P_FS_SECURITY is not set +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=y +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +CONFIG_NLS_CODEPAGE_936=y +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +CONFIG_NLS_ASCII=y +CONFIG_NLS_ISO8859_1=y +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_MAC_ROMAN is not set +# CONFIG_NLS_MAC_CELTIC is not set +# CONFIG_NLS_MAC_CENTEURO is not set +# CONFIG_NLS_MAC_CROATIAN is not set +# CONFIG_NLS_MAC_CYRILLIC is not set +# CONFIG_NLS_MAC_GAELIC is not set +# CONFIG_NLS_MAC_GREEK is not set +# CONFIG_NLS_MAC_ICELAND is not set +# CONFIG_NLS_MAC_INUIT is not set +# CONFIG_NLS_MAC_ROMANIAN is not set +# CONFIG_NLS_MAC_TURKISH is not set +CONFIG_NLS_UTF8=y +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set +# CONFIG_VIRTUALIZATION is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +# CONFIG_PRINTK_PROCESS is not set +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=7 +# CONFIG_BOOT_PRINTK_DELAY is not set +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +# CONFIG_DEBUG_INFO_DWARF4 is not set +# CONFIG_GDB_SCRIPTS is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=2048 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0 +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_ARCH_KASAN=y +# CONFIG_KASAN is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR_OTHER_CPU=y +CONFIG_HARDLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=10 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +# CONFIG_PANIC_ON_RT_THROTTLING is not set +CONFIG_SCHEDSTATS=y +# CONFIG_SCHED_STACK_END_CHECK is not set +# CONFIG_DEBUG_TIMEKEEPING is not set +CONFIG_TIMER_STATS=y + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +CONFIG_DEBUG_SPINLOCK=y +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +CONFIG_STACKTRACE=y +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_HAVE_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU is not set +# CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_TORTURE_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_GPU_TRACEPOINTS=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_PREEMPTIRQ_EVENTS is not set +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_SCHED_TRACER is not set +# CONFIG_FTRACE_SYSCALLS is not set +# CONFIG_TRACER_SNAPSHOT is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +# CONFIG_STACK_TRACER is not set +CONFIG_BLK_DEV_IO_TRACE=y +# CONFIG_PROBE_EVENTS is not set +CONFIG_DYNAMIC_FTRACE=y +# CONFIG_FUNCTION_PROFILER is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_TRACE_ENUM_MAP_FILE is not set +CONFIG_TRACING_EVENTS_GPIO=y + +# +# Runtime Testing +# +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_PERCPU_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_ASYNC_RAID6_TEST is not set +# CONFIG_TEST_HEXDUMP is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_DMA_API_DEBUG is not set +# CONFIG_TEST_LKM is not set +# CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_BPF is not set +# CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_UDELAY is not set +# CONFIG_MEMTEST is not set +# CONFIG_TEST_STATIC_KEYS is not set +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +# CONFIG_ARM64_PTDUMP is not set +CONFIG_STRICT_DEVMEM=y +# CONFIG_PID_IN_CONTEXTIDR is not set +# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set +CONFIG_DEBUG_SET_MODULE_RONX=y +CONFIG_DEBUG_RODATA=y +# CONFIG_DEBUG_ALIGN_RODATA is not set +# CONFIG_CORESIGHT is not set + +# +# Security options +# +CONFIG_KEYS=y +# CONFIG_PERSISTENT_KEYRINGS is not set +# CONFIG_BIG_KEYS is not set +# CONFIG_TRUSTED_KEYS is not set +CONFIG_ENCRYPTED_KEYS=m +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +# CONFIG_SECURITY_NETWORK_XFRM is not set +CONFIG_SECURITY_PATH=y +CONFIG_LSM_MMAP_MIN_ADDR=4096 +CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y +CONFIG_HAVE_ARCH_HARDENED_USERCOPY=y +CONFIG_HARDENED_USERCOPY=y +# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set +CONFIG_SECURITY_SELINUX=y +# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_DEVELOP=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=0 +# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set +CONFIG_SECURITY_SMACK=y +# CONFIG_SECURITY_SMACK_BRINGUP is not set +# CONFIG_SECURITY_SMACK_NETFILTER is not set +# CONFIG_SECURITY_TOMOYO is not set +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 +CONFIG_SECURITY_APPARMOR_HASH=y +# CONFIG_SECURITY_YAMA is not set +# CONFIG_TEE_SUPPORT is not set +CONFIG_INTEGRITY=y +# CONFIG_INTEGRITY_SIGNATURE is not set +CONFIG_INTEGRITY_AUDIT=y +# CONFIG_IMA is not set +# CONFIG_EVM is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +# CONFIG_DEFAULT_SECURITY_APPARMOR is not set +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_DEFAULT_SECURITY="" +CONFIG_XOR_BLOCKS=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=y +CONFIG_CRYPTO_PCOMP2=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_AKCIPHER=y +# CONFIG_CRYPTO_RSA is not set +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_GF128MUL=y +CONFIG_CRYPTO_NULL=y +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_CRYPTD=y +CONFIG_CRYPTO_MCRYPTD=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_ABLK_HELPER=y + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=y +CONFIG_CRYPTO_GCM=y +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_SEQIV=y +CONFIG_CRYPTO_ECHAINIV=m + +# +# Block modes +# +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_HEH is not set +CONFIG_CRYPTO_CTR=y +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m +CONFIG_CRYPTO_KEYWRAP=m + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_VMAC=m + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_GHASH=y +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_MD4=y +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=y +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=y +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_ZLIB is not set +CONFIG_CRYPTO_LZO=y +# CONFIG_CRYPTO_842 is not set +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m +# CONFIG_CRYPTO_ZSTD is not set + +# +# Random Number Generation +# +CONFIG_CRYPTO_ANSI_CPRNG=y +CONFIG_CRYPTO_DRBG_MENU=y +CONFIG_CRYPTO_DRBG_HMAC=y +CONFIG_CRYPTO_DRBG_HASH=y +CONFIG_CRYPTO_DRBG_CTR=y +CONFIG_CRYPTO_DRBG=y +CONFIG_CRYPTO_JITTERENTROPY=y +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HW=y +# CONFIG_CRYPTO_DEV_CCP is not set +# CONFIG_CRYPTO_DEV_ROCKCHIP_V1 is not set +# CONFIG_CRYPTO_DEV_ROCKCHIP_V2 is not set +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_PUBLIC_KEY_ALGO_RSA=y +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_PKCS7_MESSAGE_PARSER=y +# CONFIG_PKCS7_TEST_KEY is not set +# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set + +# +# Certificates for signature checking +# +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="" +CONFIG_ARM64_CRYPTO=y +CONFIG_CRYPTO_SHA1_ARM64_CE=y +CONFIG_CRYPTO_SHA2_ARM64_CE=y +CONFIG_CRYPTO_GHASH_ARM64_CE=y +# CONFIG_CRYPTO_POLY_HASH_ARM64_CE is not set +CONFIG_CRYPTO_AES_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64_CE_CCM=y +CONFIG_CRYPTO_AES_ARM64_CE_BLK=y +# CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set +# CONFIG_CRYPTO_CRC32_ARM64 is not set +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_BITREVERSE=y +CONFIG_HAVE_ARCH_BITREVERSE=y +CONFIG_RATIONAL=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IO=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_CRC_CCITT=y +CONFIG_CRC16=y +CONFIG_CRC_T10DIF=y +CONFIG_CRC_ITU_T=y +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC7=y +CONFIG_LIBCRC32C=y +# CONFIG_CRC8 is not set +CONFIG_XXHASH=y +CONFIG_AUDIT_GENERIC=y +CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y +CONFIG_AUDIT_COMPAT_GENERIC=y +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y +CONFIG_XZ_DEC=y +# CONFIG_XZ_DEC_X86 is not set +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +# CONFIG_XZ_DEC_SPARC is not set +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_REED_SOLOMON=y +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=m +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAS_DMA=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_NLATTR=y +CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y +CONFIG_LRU_CACHE=m +CONFIG_CLZ_TAB=y +# CONFIG_CORDIC is not set +# CONFIG_DDR is not set +CONFIG_MPILIB=y +CONFIG_LIBFDT=y +CONFIG_OID_REGISTRY=y +CONFIG_FONT_SUPPORT=y +# CONFIG_FONTS is not set +CONFIG_FONT_8x8=y +CONFIG_FONT_8x16=y +# CONFIG_SG_SPLIT is not set +CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/arch/arm64/configs/eof_defconfig_2 b/arch/arm64/configs/eof_defconfig_2 new file mode 100644 index 0000000000000..8ed447cdc8d68 --- /dev/null +++ b/arch/arm64/configs/eof_defconfig_2 @@ -0,0 +1,6137 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/arm64 4.4.179 Kernel Configuration +# +CONFIG_ARM64=y +CONFIG_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_BITS_MAX=24 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_ARM64_PAGE_SHIFT=12 +CONFIG_ARM64_CONT_SHIFT=4 +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ZONE_DMA=y +CONFIG_HAVE_GENERIC_RCU_GUP=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_SMP=y +CONFIG_SWIOTLB=y +CONFIG_IOMMU_HELPER=y +CONFIG_KERNEL_MODE_NEON=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=3 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y +CONFIG_THREAD_INFO_IN_TASK=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="" +CONFIG_LOCALVERSION_AUTO=y +CONFIG_DEFAULT_HOSTNAME="som-rk3399v2" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_FHANDLE=y +# CONFIG_USELIB is not set +CONFIG_AUDIT=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +# CONFIG_AUDITSYSCALL is not set + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_GENERIC_IRQ_CHIP=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_GENERIC_MSI_IRQ_DOMAIN=y +CONFIG_HANDLE_DOMAIN_IRQ=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +# CONFIG_NO_HZ_FULL is not set +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +# CONFIG_IRQ_TIME_ACCOUNTING is not set +# CONFIG_SCHED_WALT is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y + +# +# RCU Subsystem +# +CONFIG_TREE_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_SRCU=y +# CONFIG_TASKS_RCU is not set +CONFIG_RCU_STALL_COMMON=y +# CONFIG_TREE_RCU_TRACE is not set +# CONFIG_RCU_EXPEDITE_BOOT is not set +CONFIG_BUILD_BIN2C=y +CONFIG_IKCONFIG=m +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_GENERIC_SCHED_CLOCK=y +CONFIG_CGROUPS=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_PAGE_COUNTER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +CONFIG_MEMCG_SWAP_ENABLED=y +CONFIG_MEMCG_KMEM=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_RT_GROUP_SCHED=y +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_CGROUP_WRITEBACK=y +# CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +CONFIG_SCHED_AUTOGROUP=y +# CONFIG_SCHED_TUNE is not set +CONFIG_DEFAULT_USE_ENERGY_AWARE=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +# CONFIG_RD_BZIP2 is not set +# CONFIG_RD_LZMA is not set +# CONFIG_RD_XZ is not set +# CONFIG_RD_LZO is not set +CONFIG_RD_LZ4=y +# CONFIG_INITRD_ASYNC is not set +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_BPF=y +CONFIG_EXPERT=y +CONFIG_UID16=y +CONFIG_MULTIUSER=y +# CONFIG_SGETMASK_SYSCALL is not set +CONFIG_SYSFS_SYSCALL=y +# CONFIG_SYSCTL_SYSCALL is not set +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_ALL is not set +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +# CONFIG_BPF_SYSCALL is not set +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y +# CONFIG_USERFAULTFD is not set +CONFIG_PCI_QUIRKS=y +CONFIG_MEMBARRIER=y +CONFIG_EMBEDDED=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_PERF_USE_VMALLOC=y + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +# CONFIG_SLOB is not set +CONFIG_SLUB_CPU_PARTIAL=y +# CONFIG_SYSTEM_DATA_VERIFICATION is not set +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +# CONFIG_KPROBES is not set +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_UPROBES is not set +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_ATTRS=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_CC_STACKPROTECTOR=y +CONFIG_CC_STACKPROTECTOR=y +# CONFIG_CC_STACKPROTECTOR_NONE is not set +CONFIG_CC_STACKPROTECTOR_REGULAR=y +# CONFIG_CC_STACKPROTECTOR_STRONG is not set +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_ARCH_MMAP_RND_BITS=18 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_SLABINFO=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +# CONFIG_MODULE_FORCE_LOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODVERSIONS=y +CONFIG_MODULE_SRCVERSION_ALL=y +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +# CONFIG_BLK_DEV_INTEGRITY is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_CMDLINE_PARSER is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +CONFIG_RK_PARTITION=y +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_FREEZER=y + +# +# Platform selection +# +# CONFIG_ARCH_BCM_IPROC is not set +# CONFIG_ARCH_BERLIN is not set +# CONFIG_ARCH_EXYNOS7 is not set +# CONFIG_ARCH_LAYERSCAPE is not set +# CONFIG_ARCH_HISI is not set +# CONFIG_ARCH_MEDIATEK is not set +# CONFIG_ARCH_QCOM is not set +CONFIG_ARCH_ROCKCHIP=y +# CONFIG_ARCH_SEATTLE is not set +# CONFIG_ARCH_STRATIX10 is not set +# CONFIG_ARCH_TEGRA is not set +# CONFIG_ARCH_SPRD is not set +# CONFIG_ARCH_THUNDER is not set +# CONFIG_ARCH_VEXPRESS is not set +# CONFIG_ARCH_XGENE is not set +# CONFIG_ARCH_ZYNQMP is not set + +# +# Bus support +# +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_DOMAINS_GENERIC=y +CONFIG_PCI_SYSCALL=y +CONFIG_PCI_BUS_ADDR_T_64BIT=y +CONFIG_PCI_MSI=y +CONFIG_PCI_MSI_IRQ_DOMAIN=y +# CONFIG_PCI_DEBUG is not set +# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set +# CONFIG_PCI_STUB is not set +# CONFIG_PCI_IOV is not set +# CONFIG_PCI_PRI is not set +# CONFIG_PCI_PASID is not set +CONFIG_PCI_LABEL=y + +# +# PCI host controller drivers +# +# CONFIG_PCIE_DW_ROCKCHIP is not set +# CONFIG_ROCKCHIP_PCIE_DMA_OBJ is not set +# CONFIG_PCI_HOST_GENERIC is not set +# CONFIG_PCIE_IPROC is not set +# CONFIG_PCI_HISI is not set +CONFIG_PCIE_ROCKCHIP=y +CONFIG_PCIEPORTBUS=y +CONFIG_PCIEAER=y +# CONFIG_PCIE_ECRC is not set +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +# CONFIG_PCIEASPM_DEBUG is not set +# CONFIG_PCIEASPM_DEFAULT is not set +CONFIG_PCIEASPM_POWERSAVE=y +# CONFIG_PCIEASPM_PERFORMANCE is not set +CONFIG_PCIE_PME=y +# CONFIG_HOTPLUG_PCI is not set + +# +# Kernel Features +# + +# +# ARM errata workarounds via the alternatives framework +# +# CONFIG_ARM64_ERRATUM_826319 is not set +# CONFIG_ARM64_ERRATUM_827319 is not set +# CONFIG_ARM64_ERRATUM_824069 is not set +# CONFIG_ARM64_ERRATUM_819472 is not set +# CONFIG_ARM64_ERRATUM_832075 is not set +CONFIG_ARM64_ERRATUM_845719=y +CONFIG_ARM64_ERRATUM_843419=y +# CONFIG_ARM64_ERRATUM_1024718 is not set +# CONFIG_CAVIUM_ERRATUM_22375 is not set +# CONFIG_CAVIUM_ERRATUM_23154 is not set +CONFIG_CAVIUM_ERRATUM_27456=y +CONFIG_ARM64_4K_PAGES=y +# CONFIG_ARM64_16K_PAGES is not set +# CONFIG_ARM64_64K_PAGES is not set +CONFIG_ARM64_VA_BITS_39=y +# CONFIG_ARM64_VA_BITS_48 is not set +CONFIG_ARM64_VA_BITS=39 +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_SCHED_MC=y +# CONFIG_SCHED_SMT is not set +CONFIG_NR_CPUS=8 +CONFIG_HOTPLUG_CPU=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set +# CONFIG_HZ_100 is not set +# CONFIG_HZ_250 is not set +# CONFIG_HZ_300 is not set +CONFIG_HZ_1000=y +CONFIG_HZ=1000 +CONFIG_SCHED_HRTICK=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_HAVE_ARCH_PFN_VALID=y +CONFIG_HW_PERF_EVENTS=y +CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_NO_BOOTMEM=y +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_ZONE_DMA_FLAG=1 +CONFIG_BOUNCE=y +# CONFIG_KSM is not set +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_CLEANCACHE=y +# CONFIG_FRONTSWAP is not set +# CONFIG_CMA is not set +# CONFIG_ZPOOL is not set +# CONFIG_ZBUD is not set +CONFIG_ZSMALLOC=y +# CONFIG_PGTABLE_MAPPING is not set +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_IDLE_PAGE_TRACKING is not set +CONFIG_FRAME_VECTOR=y +CONFIG_SECCOMP=y +# CONFIG_KEXEC is not set +# CONFIG_CRASH_DUMP is not set +# CONFIG_XEN is not set +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_UNMAP_KERNEL_AT_EL0=y +CONFIG_ARMV8_DEPRECATED=y +CONFIG_SWP_EMULATION=y +CONFIG_CP15_BARRIER_EMULATION=y +CONFIG_SETEND_EMULATION=y +# CONFIG_ARM64_SW_TTBR0_PAN is not set + +# +# ARMv8.1 architectural features +# +CONFIG_ARM64_HW_AFDBM=y +CONFIG_ARM64_PAN=y +# CONFIG_ARM64_LSE_ATOMICS is not set +CONFIG_ARM64_UAO=y +CONFIG_ARM64_MODULE_CMODEL_LARGE=y +# CONFIG_RANDOMIZE_BASE is not set + +# +# Boot options +# +CONFIG_CMDLINE="" +CONFIG_EFI_STUB=y +CONFIG_EFI=y +CONFIG_DMI=y +# CONFIG_BUILD_ARM64_APPENDED_DTB_IMAGE is not set + +# +# Userspace binary formats +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +# CONFIG_HAVE_AOUT is not set +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y +CONFIG_COMPAT=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_KEYS_COMPAT=y + +# +# Power management options +# +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +# CONFIG_SUSPEND_SKIP_SYNC is not set +CONFIG_HAS_WAKELOCK=y +CONFIG_WAKELOCK=y +# CONFIG_HIBERNATION is not set +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +# CONFIG_PM_AUTOSLEEP is not set +# CONFIG_PM_WAKELOCKS is not set +CONFIG_PM=y +CONFIG_PM_DEBUG=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_SLEEP_DEBUG=y +# CONFIG_DPM_WATCHDOG is not set +CONFIG_PM_OPP=y +CONFIG_PM_CLK=y +CONFIG_PM_GENERIC_DOMAINS=y +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_PM_GENERIC_DOMAINS_SLEEP=y +CONFIG_PM_GENERIC_DOMAINS_OF=y +CONFIG_CPU_PM=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y + +# +# CPU Power Management +# + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_DT_IDLE_STATES=y + +# +# ARM CPU Idle Drivers +# +CONFIG_ARM_CPUIDLE=y +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=y +# CONFIG_CPU_FREQ_STAT_DETAILS is not set +CONFIG_CPU_FREQ_TIMES=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_INTERACTIVE=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y + +# +# CPU frequency scaling drivers +# +CONFIG_CPUFREQ_DT=y +# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set +# CONFIG_ARM_KIRKWOOD_CPUFREQ is not set +CONFIG_ARM_ROCKCHIP_CPUFREQ=y +CONFIG_NET=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_NET_INGRESS=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=m +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_USER=m +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +CONFIG_XFRM_STATISTICS=y +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +# CONFIG_IP_PNP_BOOTP is not set +CONFIG_IP_PNP_RARP=y +CONFIG_NET_IPIP=m +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +CONFIG_NET_FOU=m +CONFIG_NET_FOU_IP_TUNNELS=y +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +CONFIG_INET_LRO=y +CONFIG_INET_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_UDP_DIAG=m +CONFIG_INET_DIAG_DESTROY=y +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_DCTCP=m +CONFIG_TCP_CONG_CDG=m +CONFIG_DEFAULT_CUBIC=y +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_IPCOMP=m +CONFIG_IPV6_MIP6=m +CONFIG_IPV6_ILA=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m +CONFIG_IPV6_VTI=m +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_PIMSM_V2=y +CONFIG_NETLABEL=y +# CONFIG_ANDROID_PARANOID_NETWORK is not set +CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=m + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_COMMON=m +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_ZONES=y +# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_EVENTS=y +# CONFIG_NF_CONNTRACK_TIMEOUT is not set +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CT_PROTO_DCCP=m +CONFIG_NF_CT_PROTO_GRE=m +CONFIG_NF_CT_PROTO_SCTP=m +CONFIG_NF_CT_PROTO_UDPLITE=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_PPTP=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +# CONFIG_NF_CT_NETLINK_TIMEOUT is not set +# CONFIG_NETFILTER_NETLINK_GLUE_CT is not set +CONFIG_NF_NAT=m +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PROTO_DCCP=m +CONFIG_NF_NAT_PROTO_UDPLITE=m +CONFIG_NF_NAT_PROTO_SCTP=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_NAT_REDIRECT=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_INET=m +CONFIG_NF_TABLES_NETDEV=m +# CONFIG_NFT_EXTHDR is not set +# CONFIG_NFT_META is not set +CONFIG_NFT_CT=m +# CONFIG_NFT_RBTREE is not set +CONFIG_NFT_HASH=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_LOG=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_NAT=m +CONFIG_NFT_QUEUE=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_REJECT_INET=m +CONFIG_NFT_COMPAT=m +CONFIG_NETFILTER_XTABLES=m + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_SET=m + +# +# Xtables targets +# +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +# CONFIG_NETFILTER_XT_MATCH_QUOTA2 is not set +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_IP_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +CONFIG_IP_VS_IPV6=y +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS application helper +# +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_PE_SIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_CONNTRACK_IPV4=m +CONFIG_NF_TABLES_IPV4=m +CONFIG_NFT_CHAIN_ROUTE_IPV4=m +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NFT_DUP_IPV4=m +CONFIG_NF_TABLES_ARP=m +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NFT_CHAIN_NAT_IPV4=m +CONFIG_NF_NAT_MASQUERADE_IPV4=m +CONFIG_NFT_MASQ_IPV4=m +CONFIG_NFT_REDIR_IPV4=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_NF_TABLES_IPV6=m +CONFIG_NFT_CHAIN_ROUTE_IPV6=m +CONFIG_NFT_REJECT_IPV6=m +CONFIG_NFT_DUP_IPV6=m +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NFT_CHAIN_NAT_IPV6=m +CONFIG_NF_NAT_MASQUERADE_IPV6=m +CONFIG_NFT_MASQ_IPV6=m +CONFIG_NFT_REDIR_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +# CONFIG_IP6_NF_SECURITY is not set +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m + +# +# DECnet: Netfilter Configuration +# +CONFIG_DECNET_NF_GRABULATOR=m +CONFIG_NF_TABLES_BRIDGE=m +CONFIG_NFT_BRIDGE_REJECT=m +CONFIG_NF_LOG_BRIDGE=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_IP_DCCP=m +CONFIG_INET_DCCP_DIAG=m + +# +# DCCP CCIDs Configuration +# +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +# CONFIG_IP_DCCP_CCID3 is not set + +# +# DCCP Kernel Hacking +# +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_IP_SCTP=m +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +CONFIG_RDS=m +CONFIG_RDS_TCP=m +# CONFIG_RDS_DEBUG is not set +CONFIG_TIPC=m +CONFIG_TIPC_MEDIA_UDP=y +CONFIG_ATM=m +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=m +CONFIG_L2TP_ETH=m +CONFIG_STP=m +CONFIG_GARP=m +CONFIG_MRP=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_HAVE_NET_DSA=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_HWMON=y +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_DECNET=m +# CONFIG_DECNET_ROUTER is not set +CONFIG_LLC=m +CONFIG_LLC2=m +# CONFIG_IPX is not set +CONFIG_ATALK=m +CONFIG_DEV_APPLETALK=m +# CONFIG_IPDDP is not set +CONFIG_X25=m +CONFIG_LAPB=m +CONFIG_PHONET=m +CONFIG_6LOWPAN=m +CONFIG_6LOWPAN_NHC=m +CONFIG_6LOWPAN_NHC_DEST=m +CONFIG_6LOWPAN_NHC_FRAGMENT=m +CONFIG_6LOWPAN_NHC_HOP=m +CONFIG_6LOWPAN_NHC_IPV6=m +CONFIG_6LOWPAN_NHC_MOBILITY=m +CONFIG_6LOWPAN_NHC_ROUTING=m +CONFIG_6LOWPAN_NHC_UDP=m +CONFIG_IEEE802154=m +# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set +CONFIG_IEEE802154_SOCKET=m +CONFIG_IEEE802154_6LOWPAN=m +CONFIG_MAC802154=m +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_PIE=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_PLUG=m + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_U32=m +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLS_U32_MARK=y +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_TEXT=m +# CONFIG_NET_EMATCH_CANID is not set +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_GACT=m +CONFIG_GACT_PROB=y +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_ACT_BPF=m +CONFIG_NET_ACT_CONNMARK=m +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_SCH_FIFO=y +CONFIG_DCB=y +CONFIG_DNS_RESOLVER=y +CONFIG_BATMAN_ADV=m +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +CONFIG_BATMAN_ADV_NC=y +CONFIG_BATMAN_ADV_MCAST=y +# CONFIG_BATMAN_ADV_DEBUG is not set +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_VSOCKETS=m +CONFIG_NETLINK_DIAG=m +CONFIG_MPLS=y +CONFIG_NET_MPLS_GSO=m +CONFIG_MPLS_ROUTING=m +CONFIG_MPLS_IPTUNNEL=m +CONFIG_HSR=m +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_L3_MASTER_DEV=y +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_XPS=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_BPF_JIT=y +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +CONFIG_NET_PKTGEN=m +CONFIG_NET_DROP_MONITOR=m +CONFIG_HAMRADIO=y + +# +# Packet Radio protocols +# +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_NETROM=m +CONFIG_ROSE=m + +# +# AX.25 network device drivers +# +CONFIG_MKISS=m +CONFIG_6PACK=m +CONFIG_BPQETHER=m +CONFIG_BAYCOM_SER_FDX=m +CONFIG_BAYCOM_SER_HDX=m +CONFIG_YAM=m +CONFIG_CAN=m +CONFIG_CAN_RAW=m +CONFIG_CAN_BCM=m +CONFIG_CAN_GW=m + +# +# CAN Device Drivers +# +CONFIG_CAN_VCAN=m +CONFIG_CAN_SLCAN=m +CONFIG_CAN_DEV=m +CONFIG_CAN_CALC_BITTIMING=y +# CONFIG_CAN_LEDS is not set +# CONFIG_CAN_GRCAN is not set +# CONFIG_CAN_XILINXCAN is not set +# CONFIG_CAN_SJA1000 is not set +# CONFIG_CAN_C_CAN is not set +# CONFIG_CAN_M_CAN is not set +# CONFIG_CAN_CC770 is not set + +# +# CAN SPI interfaces +# +CONFIG_CAN_MCP251X=m + +# +# CAN USB interfaces +# +CONFIG_CAN_EMS_USB=m +CONFIG_CAN_ESD_USB2=m +CONFIG_CAN_GS_USB=m +CONFIG_CAN_KVASER_USB=m +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_8DEV_USB=m +# CONFIG_CAN_SOFTING is not set +# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_IRDA=m + +# +# IrDA protocols +# +CONFIG_IRLAN=m +CONFIG_IRNET=m +CONFIG_IRCOMM=m +CONFIG_IRDA_ULTRA=y + +# +# IrDA options +# +CONFIG_IRDA_CACHE_LAST_LSAP=y +CONFIG_IRDA_FAST_RR=y +CONFIG_IRDA_DEBUG=y + +# +# Infrared-port device drivers +# + +# +# SIR device drivers +# +CONFIG_IRTTY_SIR=m + +# +# Dongle support +# +# CONFIG_DONGLE is not set +# CONFIG_KINGSUN_DONGLE is not set +# CONFIG_KSDAZZLE_DONGLE is not set +# CONFIG_KS959_DONGLE is not set + +# +# FIR device drivers +# +CONFIG_USB_IRDA=m +# CONFIG_SIGMATEL_FIR is not set +# CONFIG_VLSI_FIR is not set +CONFIG_MCS_FIR=m +CONFIG_BT=y +CONFIG_BT_BREDR=y +CONFIG_BT_RFCOMM=y +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_HIDP=y +CONFIG_BT_HS=y +CONFIG_BT_LE=y +CONFIG_BT_6LOWPAN=m +# CONFIG_BT_SELFTEST is not set +CONFIG_BT_DEBUGFS=y + +# +# Bluetooth device drivers +# +CONFIG_BT_INTEL=y +CONFIG_BT_BCM=y +CONFIG_BT_RTL=y +CONFIG_BT_RTKBTUSB=m +CONFIG_BT_HCIBTUSB=y +CONFIG_BT_HCIBTUSB_BCM=y +CONFIG_BT_HCIBTUSB_RTL=y +# CONFIG_BT_HCIBTSDIO is not set +CONFIG_BT_HCIUART=y +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_3WIRE=y +# CONFIG_BT_HCIUART_INTEL is not set +CONFIG_BT_HCIUART_BCM=y +# CONFIG_BT_HCIUART_QCA is not set +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBFUSB=y +CONFIG_BT_HCIVHCI=y +CONFIG_BT_MRVL=y +CONFIG_BT_MRVL_SDIO=y +CONFIG_BT_ATH3K=m +# CONFIG_BT_WILINK is not set +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +CONFIG_RXKAD=m +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WEXT_PRIV=y +CONFIG_CFG80211=y +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_REG_DEBUG is not set +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +# CONFIG_CFG80211_DEFAULT_PS is not set +CONFIG_CFG80211_DEBUGFS=y +# CONFIG_CFG80211_INTERNAL_REGDB is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_WEXT=y +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_WEP=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +# CONFIG_LIB80211_DEBUG is not set +CONFIG_MAC80211=y +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_MINSTREL_VHT=y +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_LEDS=y +# CONFIG_MAC80211_DEBUGFS is not set +# CONFIG_MAC80211_MESSAGE_TRACING is not set +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +CONFIG_WIMAX=m +CONFIG_WIMAX_DEBUG_LEVEL=8 +CONFIG_RFKILL=y +CONFIG_RFKILL_PM=y +CONFIG_RFKILL_LEDS=y +CONFIG_RFKILL_INPUT=y +# CONFIG_RFKILL_REGULATOR is not set +# CONFIG_RFKILL_GPIO is not set +CONFIG_NET_9P=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_CAIF=m +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_NETDEV=m +CONFIG_CAIF_USB=m +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +CONFIG_NFC=m +CONFIG_NFC_DIGITAL=m +CONFIG_NFC_NCI=m +CONFIG_NFC_NCI_SPI=m +CONFIG_NFC_NCI_UART=m +CONFIG_NFC_HCI=m +CONFIG_NFC_SHDLC=y + +# +# Near Field Communication (NFC) devices +# +CONFIG_NFC_PN533=m +# CONFIG_NFC_WILINK is not set +CONFIG_NFC_TRF7970A=m +CONFIG_NFC_SIM=m +CONFIG_NFC_PORT100=m +CONFIG_NFC_FDP=m +CONFIG_NFC_FDP_I2C=m +CONFIG_NFC_PN544=m +CONFIG_NFC_PN544_I2C=m +CONFIG_NFC_MICROREAD=m +CONFIG_NFC_MICROREAD_I2C=m +CONFIG_NFC_MRVL=m +CONFIG_NFC_MRVL_USB=m +CONFIG_NFC_MRVL_UART=m +CONFIG_NFC_MRVL_I2C=m +CONFIG_NFC_MRVL_SPI=m +CONFIG_NFC_ST21NFCA=m +CONFIG_NFC_ST21NFCA_I2C=m +CONFIG_NFC_ST_NCI=m +CONFIG_NFC_ST_NCI_I2C=m +CONFIG_NFC_ST_NCI_SPI=m +CONFIG_NFC_NXP_NCI=m +CONFIG_NFC_NXP_NCI_I2C=m +CONFIG_NFC_S3FWRN5=m +CONFIG_NFC_S3FWRN5_I2C=m +CONFIG_LWTUNNEL=y +CONFIG_DST_CACHE=y +CONFIG_HAVE_BPF_JIT=y +CONFIG_HAVE_EBPF_JIT=y + +# +# Device Drivers +# +CONFIG_ARM_AMBA=y +# CONFIG_TEGRA_AHB is not set + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +CONFIG_FIRMWARE_IN_KERNEL=y +CONFIG_EXTRA_FIRMWARE="" +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y +CONFIG_WANT_DEV_COREDUMP=y +CONFIG_ALLOW_DEV_COREDUMP=y +CONFIG_DEV_COREDUMP=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_SYS_HYPERVISOR is not set +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=y +CONFIG_REGMAP_SPI=y +CONFIG_REGMAP_MMIO=y +CONFIG_REGMAP_IRQ=y +CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_FENCE_TRACE is not set + +# +# Bus devices +# +# CONFIG_ARM_CCI400_PMU is not set +# CONFIG_ARM_CCI500_PMU is not set +# CONFIG_ARM_CCN is not set +# CONFIG_VEXPRESS_CONFIG is not set +CONFIG_CONNECTOR=m +# CONFIG_MTD is not set +CONFIG_DTC=y +CONFIG_OF=y +# CONFIG_OF_UNITTEST is not set +CONFIG_OF_FLATTREE=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_ADDRESS_PCI=y +CONFIG_OF_IRQ=y +CONFIG_OF_NET=y +CONFIG_OF_MDIO=y +CONFIG_OF_PCI=y +CONFIG_OF_PCI_IRQ=y +CONFIG_OF_RESERVED_MEM=y +# CONFIG_OF_OVERLAY is not set +# CONFIG_PARPORT is not set +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_NULL_BLK is not set +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +CONFIG_ZRAM=y +# CONFIG_ZRAM_WRITEBACK is not set +# CONFIG_ZRAM_MEMORY_TRACKING is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_CRYPTOLOOP=m +CONFIG_BLK_DEV_DRBD=m +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_SKD is not set +# CONFIG_BLK_DEV_SX8 is not set +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_COUNT=8 +CONFIG_BLK_DEV_RAM_SIZE=4096 +# CONFIG_CDROM_PKTCDVD is not set +CONFIG_ATA_OVER_ETH=m +# CONFIG_BLK_DEV_RBD is not set +# CONFIG_BLK_DEV_RSXX is not set +CONFIG_BLK_DEV_NVME=y + +# +# Misc devices +# +CONFIG_ROCKCHIP_SCR=y +# CONFIG_SENSORS_LIS3LV02D is not set +# CONFIG_AD525X_DPOT is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_PHANTOM is not set +# CONFIG_SGI_IOC4 is not set +# CONFIG_TIFM_CORE is not set +# CONFIG_ICS932S401 is not set +# CONFIG_ENCLOSURE_SERVICES is not set +# CONFIG_HP_ILO is not set +# CONFIG_APDS9802ALS is not set +# CONFIG_ISL29003 is not set +# CONFIG_ISL29020 is not set +# CONFIG_SENSORS_TSL2550 is not set +# CONFIG_SENSORS_BH1780 is not set +# CONFIG_SENSORS_BH1770 is not set +# CONFIG_SENSORS_APDS990X is not set +# CONFIG_HMC6352 is not set +# CONFIG_DS1682 is not set +# CONFIG_TI_DAC7512 is not set +# CONFIG_BMP085_I2C is not set +# CONFIG_BMP085_SPI is not set +# CONFIG_USB_SWITCH_FSA9480 is not set +# CONFIG_LATTICE_ECP3_CONFIG is not set +CONFIG_SRAM=y +CONFIG_UID_SYS_STATS=y +# CONFIG_UID_SYS_STATS_DEBUG is not set +CONFIG_MEMORY_STATE_TIME=y +# CONFIG_USB_CAM_GPIO is not set +# CONFIG_GPIO_DET is not set +# CONFIG_C2PORT is not set + +# +# EEPROM support +# +CONFIG_EEPROM_AT24=m +# CONFIG_EEPROM_AT25 is not set +# CONFIG_EEPROM_LEGACY is not set +# CONFIG_EEPROM_MAX6875 is not set +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +# CONFIG_CB710_CORE is not set + +# +# Texas Instruments shared transport line discipline +# +CONFIG_TI_ST=m +# CONFIG_SENSORS_LIS3_SPI is not set +# CONFIG_SENSORS_LIS3_I2C is not set + +# +# Altera FPGA firmware download module +# +# CONFIG_ALTERA_STAPL is not set + +# +# Intel MIC Bus Driver +# + +# +# SCIF Bus Driver +# + +# +# Intel MIC Host Driver +# + +# +# Intel MIC Card Driver +# + +# +# SCIF Driver +# + +# +# Intel MIC Coprocessor State Management (COSM) Drivers +# +# CONFIG_GENWQE is not set +# CONFIG_ECHO is not set +# CONFIG_CXL_BASE is not set +# CONFIG_CXL_KERNEL_API is not set +# CONFIG_CXL_EEH is not set + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +# CONFIG_RAID_ATTRS is not set +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +# CONFIG_SCSI_NETLINK is not set +# CONFIG_SCSI_MQ_DEFAULT is not set +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=y +CONFIG_CHR_DEV_ST=m +CONFIG_CHR_DEV_OSST=m +CONFIG_BLK_DEV_SR=m +# CONFIG_BLK_DEV_SR_VENDOR is not set +CONFIG_CHR_DEV_SG=m +# CONFIG_CHR_DEV_SCH is not set +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +CONFIG_SCSI_SPI_ATTRS=y +# CONFIG_SCSI_FC_ATTRS is not set +CONFIG_SCSI_ISCSI_ATTRS=m +# CONFIG_SCSI_SAS_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set +# CONFIG_SCSI_SRP_ATTRS is not set +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_BE2ISCSI is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_HPSA is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_MVSAS is not set +# CONFIG_SCSI_MVUMI is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_ESAS2R is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_SAS is not set +# CONFIG_SCSI_MPT3SAS is not set +# CONFIG_SCSI_MPT2SAS is not set +CONFIG_SCSI_UFSHCD=m +# CONFIG_SCSI_UFSHCD_PCI is not set +CONFIG_SCSI_UFSHCD_PLATFORM=m +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_SNIC is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_IPR is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_WD719X is not set +# CONFIG_SCSI_DEBUG is not set +# CONFIG_SCSI_PMCRAID is not set +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set +# CONFIG_SCSI_DH is not set +# CONFIG_SCSI_OSD_INITIATOR is not set +CONFIG_HAVE_PATA_PLATFORM=y +CONFIG_ATA=y +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_SATA_PMP=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=y +# CONFIG_SATA_AHCI_PLATFORM is not set +# CONFIG_AHCI_CEVA is not set +# CONFIG_AHCI_QORIQ is not set +# CONFIG_SATA_INIC162X is not set +# CONFIG_SATA_ACARD_AHCI is not set +# CONFIG_SATA_SIL24 is not set +CONFIG_ATA_SFF=y + +# +# SFF controllers with custom DMA interface +# +# CONFIG_PDC_ADMA is not set +# CONFIG_SATA_QSTOR is not set +# CONFIG_SATA_SX4 is not set +CONFIG_ATA_BMDMA=y + +# +# SATA SFF controllers with BMDMA +# +# CONFIG_ATA_PIIX is not set +# CONFIG_SATA_MV is not set +# CONFIG_SATA_NV is not set +# CONFIG_SATA_PROMISE is not set +# CONFIG_SATA_SIL is not set +# CONFIG_SATA_SIS is not set +# CONFIG_SATA_SVW is not set +# CONFIG_SATA_ULI is not set +# CONFIG_SATA_VIA is not set +# CONFIG_SATA_VITESSE is not set + +# +# PATA SFF controllers with BMDMA +# +# CONFIG_PATA_ALI is not set +# CONFIG_PATA_AMD is not set +# CONFIG_PATA_ARTOP is not set +# CONFIG_PATA_ATIIXP is not set +# CONFIG_PATA_ATP867X is not set +# CONFIG_PATA_CMD64X is not set +# CONFIG_PATA_CYPRESS is not set +# CONFIG_PATA_EFAR is not set +# CONFIG_PATA_HPT366 is not set +# CONFIG_PATA_HPT37X is not set +# CONFIG_PATA_HPT3X2N is not set +# CONFIG_PATA_HPT3X3 is not set +# CONFIG_PATA_IT8213 is not set +# CONFIG_PATA_IT821X is not set +# CONFIG_PATA_JMICRON is not set +# CONFIG_PATA_MARVELL is not set +# CONFIG_PATA_NETCELL is not set +# CONFIG_PATA_NINJA32 is not set +# CONFIG_PATA_NS87415 is not set +# CONFIG_PATA_OLDPIIX is not set +# CONFIG_PATA_OPTIDMA is not set +# CONFIG_PATA_PDC2027X is not set +# CONFIG_PATA_PDC_OLD is not set +# CONFIG_PATA_RADISYS is not set +# CONFIG_PATA_RDC is not set +# CONFIG_PATA_SCH is not set +# CONFIG_PATA_SERVERWORKS is not set +# CONFIG_PATA_SIL680 is not set +# CONFIG_PATA_SIS is not set +# CONFIG_PATA_TOSHIBA is not set +# CONFIG_PATA_TRIFLEX is not set +# CONFIG_PATA_VIA is not set +# CONFIG_PATA_WINBOND is not set + +# +# PIO-only SFF controllers +# +# CONFIG_PATA_CMD640_PCI is not set +# CONFIG_PATA_MPIIX is not set +# CONFIG_PATA_NS87410 is not set +# CONFIG_PATA_OPTI is not set +# CONFIG_PATA_PLATFORM is not set +# CONFIG_PATA_RZ1000 is not set + +# +# Generic fallback / legacy drivers +# +# CONFIG_ATA_GENERIC is not set +# CONFIG_PATA_LEGACY is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +# CONFIG_MD_MULTIPATH is not set +CONFIG_MD_FAULTY=m +# CONFIG_MD_CLUSTER is not set +CONFIG_BCACHE=m +# CONFIG_BCACHE_DEBUG is not set +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DM=y +# CONFIG_DM_MQ_DEFAULT is not set +# CONFIG_DM_DEBUG is not set +CONFIG_DM_BUFIO=y +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_PERSISTENT_DATA=m +# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set +CONFIG_DM_CRYPT=y +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_MQ=m +CONFIG_DM_CACHE_SMQ=m +CONFIG_DM_CACHE_CLEANER=m +CONFIG_DM_ERA=m +CONFIG_DM_MIRROR=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_RAID=m +CONFIG_DM_ZERO=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_DELAY=m +CONFIG_DM_UEVENT=y +CONFIG_DM_FLAKEY=m +CONFIG_DM_VERITY=y +CONFIG_DM_VERITY_FEC=y +CONFIG_DM_SWITCH=m +CONFIG_DM_LOG_WRITES=m +# CONFIG_DM_VERITY_AVB is not set +# CONFIG_DM_ANDROID_VERITY_AT_MOST_ONCE_DEFAULT_ENABLED is not set +# CONFIG_TARGET_CORE is not set +# CONFIG_FUSION is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_FIREWIRE_NOSY is not set +CONFIG_NETDEVICES=y +CONFIG_MII=y +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +CONFIG_EQUALIZER=m +CONFIG_NET_FC=y +CONFIG_IFB=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_IPVLAN=m +CONFIG_VXLAN=m +CONFIG_GENEVE=m +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETPOLL=y +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_TUN=m +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_VETH=m +CONFIG_NLMON=m +CONFIG_NET_VRF=m +# CONFIG_ARCNET is not set +CONFIG_ATM_DRIVERS=y +# CONFIG_ATM_DUMMY is not set +# CONFIG_ATM_TCP is not set +# CONFIG_ATM_LANAI is not set +# CONFIG_ATM_ENI is not set +# CONFIG_ATM_NICSTAR is not set +# CONFIG_ATM_IDT77252 is not set +# CONFIG_ATM_IA is not set +# CONFIG_ATM_FORE200E is not set +# CONFIG_ATM_HE is not set +# CONFIG_ATM_SOLOS is not set + +# +# CAIF transport drivers +# +# CONFIG_CAIF_TTY is not set +# CONFIG_CAIF_SPI_SLAVE is not set +# CONFIG_CAIF_HSI is not set +# CONFIG_CAIF_VIRTIO is not set + +# +# Distributed Switch Architecture drivers +# +# CONFIG_NET_DSA_MV88E6XXX is not set +# CONFIG_NET_DSA_MV88E6060 is not set +# CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set +# CONFIG_NET_DSA_MV88E6131 is not set +# CONFIG_NET_DSA_MV88E6123_61_65 is not set +# CONFIG_NET_DSA_MV88E6171 is not set +# CONFIG_NET_DSA_MV88E6352 is not set +# CONFIG_NET_DSA_BCM_SF2 is not set +CONFIG_ETHERNET=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_ALTERA_TSE is not set +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +# CONFIG_NET_VENDOR_AURORA is not set +# CONFIG_NET_CADENCE is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_BROCADE is not set +# CONFIG_NET_VENDOR_CAVIUM is not set +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_DNET is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +# CONFIG_NET_VENDOR_EXAR is not set +# CONFIG_NET_VENDOR_HISILICON is not set +# CONFIG_NET_VENDOR_HP is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_JME is not set +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MELLANOX is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_FEALNX is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_ETHOC is not set +# CONFIG_NET_PACKET_ENGINE is not set +# CONFIG_NET_VENDOR_QLOGIC is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +CONFIG_NET_VENDOR_REALTEK=y +# CONFIG_8139CP is not set +# CONFIG_8139TOO is not set +CONFIG_R8169=m +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_SFC is not set +# CONFIG_NET_VENDOR_SMSC is not set +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_STMMAC_ETH=y +CONFIG_STMMAC_PLATFORM=y +CONFIG_DWMAC_GENERIC=y +# CONFIG_DWMAC_IPQ806X is not set +# CONFIG_DWMAC_LPC18XX is not set +# CONFIG_DWMAC_MESON is not set +CONFIG_DWMAC_ROCKCHIP=y +# CONFIG_DWMAC_SOCFPGA is not set +# CONFIG_DWMAC_STI is not set +# CONFIG_DWMAC_SUNXI is not set +# CONFIG_STMMAC_PCI is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_SYNOPSYS is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_PHYLIB=y + +# +# MII PHY device drivers +# +# CONFIG_AQUANTIA_PHY is not set +# CONFIG_AT803X_PHY is not set +# CONFIG_AMD_PHY is not set +# CONFIG_MARVELL_PHY is not set +# CONFIG_DAVICOM_PHY is not set +# CONFIG_QSEMI_PHY is not set +# CONFIG_LXT_PHY is not set +# CONFIG_CICADA_PHY is not set +# CONFIG_VITESSE_PHY is not set +# CONFIG_TERANETICS_PHY is not set +CONFIG_ROCKCHIP_PHY=y +# CONFIG_SMSC_PHY is not set +# CONFIG_BROADCOM_PHY is not set +# CONFIG_BCM7XXX_PHY is not set +# CONFIG_BCM87XX_PHY is not set +# CONFIG_ICPLUS_PHY is not set +CONFIG_REALTEK_PHY=y +# CONFIG_NATIONAL_PHY is not set +# CONFIG_STE10XP is not set +# CONFIG_LSI_ET1011C_PHY is not set +# CONFIG_MICREL_PHY is not set +# CONFIG_DP83848_PHY is not set +# CONFIG_DP83867_PHY is not set +CONFIG_MICROCHIP_PHY=m +# CONFIG_FIXED_PHY is not set +# CONFIG_MDIO_BITBANG is not set +# CONFIG_MDIO_OCTEON is not set +# CONFIG_MDIO_BUS_MUX_GPIO is not set +# CONFIG_MDIO_BUS_MUX_MMIOREG is not set +# CONFIG_MDIO_BCM_UNIMAC is not set +# CONFIG_MICREL_KS8995MA is not set +CONFIG_PPP=y +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +# CONFIG_PPPOATM is not set +CONFIG_PPPOE=m +CONFIG_PPTP=m +CONFIG_PPPOL2TP=m +CONFIG_PPPOLAC=m +CONFIG_PPPOPNS=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_SYNC_TTY=m +CONFIG_SLIP=m +CONFIG_SLHC=y +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_SMART=y +# CONFIG_SLIP_MODE_SLIP6 is not set +CONFIG_USB_NET_DRIVERS=y +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_LAN78XX=m +CONFIG_USB_USBNET=y +CONFIG_USB_NET_AX8817X=y +CONFIG_USB_NET_AX88179_178A=y +CONFIG_USB_NET_CDCETHER=y +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_HUAWEI_CDC_NCM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_SR9800=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_CDC_SUBSET_ENABLE=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AN2720=y +CONFIG_USB_BELKIN=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_EPSON2888=y +CONFIG_USB_KC2190=y +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_QMI_WWAN=y +CONFIG_USB_HSO=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_CDC_PHONET=m +CONFIG_USB_IPHETH=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_VL600=m +CONFIG_USB_NET_CH9200=m +CONFIG_WLAN=y +CONFIG_LIBERTAS_THINFIRM=m +# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set +CONFIG_LIBERTAS_THINFIRM_USB=m +# CONFIG_ATMEL is not set +CONFIG_AT76C50X_USB=m +# CONFIG_PRISM54 is not set +CONFIG_USB_ZD1201=m +CONFIG_USB_NET_RNDIS_WLAN=m +# CONFIG_ADM8211 is not set +# CONFIG_RTL8180 is not set +# CONFIG_RTL8187 is not set +CONFIG_MAC80211_HWSIM=m +# CONFIG_VIRT_WIFI is not set +# CONFIG_MWL8K is not set +CONFIG_ATH_COMMON=m +CONFIG_ATH_CARDS=m +# CONFIG_ATH_DEBUG is not set +# CONFIG_ATH5K is not set +# CONFIG_ATH5K_PCI is not set +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=m +CONFIG_ATH9K_PCI=y +# CONFIG_ATH9K_AHB is not set +# CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_DYNACK is not set +# CONFIG_ATH9K_WOW is not set +CONFIG_ATH9K_RFKILL=y +# CONFIG_ATH9K_CHANNEL_CONTEXT is not set +CONFIG_ATH9K_PCOEM=y +CONFIG_ATH9K_HTC=m +# CONFIG_ATH9K_HTC_DEBUGFS is not set +CONFIG_CARL9170=m +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +# CONFIG_CARL9170_HWRNG is not set +CONFIG_ATH6KL=m +# CONFIG_ATH6KL_SDIO is not set +CONFIG_ATH6KL_USB=m +# CONFIG_ATH6KL_DEBUG is not set +# CONFIG_ATH6KL_TRACING is not set +CONFIG_AR5523=m +# CONFIG_WIL6210 is not set +# CONFIG_ATH10K is not set +# CONFIG_WCN36XX is not set +# CONFIG_B43 is not set +# CONFIG_B43LEGACY is not set +CONFIG_BRCMUTIL=m +# CONFIG_BRCMSMAC is not set +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PROTO_BCDC=y +CONFIG_BRCMFMAC_PROTO_MSGBUF=y +# CONFIG_BRCMFMAC_SDIO is not set +CONFIG_BRCMFMAC_USB=y +CONFIG_BRCMFMAC_PCIE=y +# CONFIG_BRCM_TRACING is not set +# CONFIG_BRCMDBG is not set +CONFIG_HOSTAP=m +# CONFIG_HOSTAP_FIRMWARE is not set +# CONFIG_HOSTAP_PLX is not set +# CONFIG_HOSTAP_PCI is not set +# CONFIG_IPW2100 is not set +# CONFIG_IPW2200 is not set +# CONFIG_IWLWIFI is not set +# CONFIG_IWL4965 is not set +# CONFIG_IWL3945 is not set +CONFIG_LIBERTAS=m +CONFIG_LIBERTAS_USB=m +CONFIG_LIBERTAS_SDIO=m +# CONFIG_LIBERTAS_SPI is not set +# CONFIG_LIBERTAS_DEBUG is not set +# CONFIG_LIBERTAS_MESH is not set +# CONFIG_HERMES is not set +CONFIG_P54_COMMON=m +CONFIG_P54_USB=m +# CONFIG_P54_PCI is not set +# CONFIG_P54_SPI is not set +CONFIG_P54_LEDS=y +CONFIG_RT2X00=m +# CONFIG_RT2400PCI is not set +# CONFIG_RT2500PCI is not set +# CONFIG_RT61PCI is not set +# CONFIG_RT2800PCI is not set +CONFIG_RT2500USB=m +CONFIG_RT73USB=m +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +CONFIG_RT2800USB_UNKNOWN=y +CONFIG_RT2800_LIB=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_LEDS=y +# CONFIG_RT2X00_DEBUG is not set +CONFIG_WL_MEDIATEK=y +CONFIG_MT7601U=m +CONFIG_RTL_CARDS=y +# CONFIG_RTL8192CE is not set +# CONFIG_RTL8192SE is not set +# CONFIG_RTL8192DE is not set +# CONFIG_RTL8723AE is not set +# CONFIG_RTL8723BE is not set +# CONFIG_RTL8188EE is not set +# CONFIG_RTL8192EE is not set +# CONFIG_RTL8821AE is not set +# CONFIG_RTL8192CU is not set +CONFIG_RTL8XXXU=m +CONFIG_RTL8XXXU_UNTESTED=y +CONFIG_WL_ROCKCHIP=y +CONFIG_WIFI_BUILD_MODULE=y +CONFIG_WIFI_LOAD_DRIVER_WHEN_KERNEL_BOOTUP=y +# CONFIG_WIFI_GENERATE_RANDOM_MAC_ADDR is not set +CONFIG_BCMDHD=y +# CONFIG_AP6XXX is not set +CONFIG_AP6XXX_WIFI6=m +CONFIG_BCMDHD_FW_PATH="/system/etc/firmware/fw_bcmdhd.bin" +CONFIG_BCMDHD_NVRAM_PATH="/system/etc/firmware/nvram.txt" +CONFIG_BCMDHD_SDIO=y +# CONFIG_BCMDHD_PCIE is not set +# CONFIG_BCMDHD_USB is not set +CONFIG_BCMDHD_OOB=y +# CONFIG_BCMDHD_SDIO_IRQ is not set +# CONFIG_CYW_BCMDHD is not set +CONFIG_RTL_WIRELESS_SOLUTION=y +CONFIG_RTL8188EU=m +CONFIG_RTL8188FU=m +CONFIG_RTL8189ES=m +# CONFIG_RTL8189FS is not set +# CONFIG_RTL8723BS is not set +CONFIG_RTL8723BU=m +# CONFIG_RTL8723CS is not set +# CONFIG_RTL8723DS is not set +# CONFIG_RTL8822BE is not set +# CONFIG_MVL88W8977 is not set + +# +# SouthSV 6XXX WLAN support +# +# CONFIG_SSV6051 is not set +# CONFIG_WL_TI is not set +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_SDIO=m +# CONFIG_MWIFIEX_PCIE is not set +# CONFIG_MWIFIEX_USB is not set +# CONFIG_CW1200 is not set +# CONFIG_RSI_91X is not set + +# +# WiMAX Wireless Broadband devices +# +# CONFIG_WIMAX_I2400M_USB is not set +# CONFIG_WAN is not set +CONFIG_IEEE802154_DRIVERS=m +# CONFIG_IEEE802154_FAKELB is not set +CONFIG_IEEE802154_AT86RF230=m +# CONFIG_IEEE802154_AT86RF230_DEBUGFS is not set +CONFIG_IEEE802154_MRF24J40=m +CONFIG_IEEE802154_CC2520=m +CONFIG_IEEE802154_ATUSB=m +# CONFIG_VMXNET3 is not set +# CONFIG_ISDN is not set +# CONFIG_NVM is not set + +# +# Input device support +# +CONFIG_INPUT=y +CONFIG_INPUT_LEDS=y +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_POLLDEV=y +# CONFIG_INPUT_SPARSEKMAP is not set +CONFIG_INPUT_MATRIXKMAP=y + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=y +# CONFIG_INPUT_EVBUG is not set +# CONFIG_INPUT_KEYRESET is not set +# CONFIG_INPUT_KEYCOMBO is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +CONFIG_KEYBOARD_ADC=y +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ADP5589 is not set +# CONFIG_KEYBOARD_ATKBD is not set +# CONFIG_KEYBOARD_QT1070 is not set +# CONFIG_KEYBOARD_QT2160 is not set +# CONFIG_KEYBOARD_LKKBD is not set +CONFIG_KEYBOARD_GPIO=y +CONFIG_KEYBOARD_GPIO_POLLED=y +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_MATRIX=m +# CONFIG_KEYBOARD_LM8323 is not set +# CONFIG_KEYBOARD_LM8333 is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_SAMSUNG is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_OMAP4 is not set +CONFIG_KEYBOARD_ROCKCHIP=y +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_KEYBOARD_CROS_EC=m +# CONFIG_KEYBOARD_CAP11XX is not set +# CONFIG_KEYBOARD_BCM is not set +CONFIG_INPUT_MOUSE=y +# CONFIG_MOUSE_PS2 is not set +# CONFIG_MOUSE_SERIAL is not set +# CONFIG_MOUSE_APPLETOUCH is not set +# CONFIG_MOUSE_BCM5974 is not set +CONFIG_MOUSE_CYAPA=m +CONFIG_MOUSE_ELAN_I2C=m +CONFIG_MOUSE_ELAN_I2C_I2C=y +# CONFIG_MOUSE_ELAN_I2C_SMBUS is not set +# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_MOUSE_GPIO is not set +# CONFIG_MOUSE_SYNAPTICS_I2C is not set +# CONFIG_MOUSE_SYNAPTICS_USB is not set +CONFIG_INPUT_JOYSTICK=y +# CONFIG_JOYSTICK_ANALOG is not set +# CONFIG_JOYSTICK_A3D is not set +# CONFIG_JOYSTICK_ADI is not set +# CONFIG_JOYSTICK_COBRA is not set +# CONFIG_JOYSTICK_GF2K is not set +# CONFIG_JOYSTICK_GRIP is not set +# CONFIG_JOYSTICK_GRIP_MP is not set +# CONFIG_JOYSTICK_GUILLEMOT is not set +# CONFIG_JOYSTICK_INTERACT is not set +# CONFIG_JOYSTICK_SIDEWINDER is not set +# CONFIG_JOYSTICK_TMDC is not set +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_USB=y +# CONFIG_JOYSTICK_IFORCE_232 is not set +# CONFIG_JOYSTICK_WARRIOR is not set +# CONFIG_JOYSTICK_MAGELLAN is not set +# CONFIG_JOYSTICK_SPACEORB is not set +# CONFIG_JOYSTICK_SPACEBALL is not set +# CONFIG_JOYSTICK_STINGER is not set +# CONFIG_JOYSTICK_TWIDJOY is not set +# CONFIG_JOYSTICK_ZHENHUA is not set +# CONFIG_JOYSTICK_AS5011 is not set +# CONFIG_JOYSTICK_JOYDUMP is not set +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +# CONFIG_INPUT_TABLET is not set +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_PROPERTIES=y +CONFIG_TOUCHSCREEN_ADS7846=m +# CONFIG_TOUCHSCREEN_AD7877 is not set +# CONFIG_TOUCHSCREEN_AD7879 is not set +# CONFIG_TOUCHSCREEN_AR1021_I2C is not set +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set +# CONFIG_TOUCHSCREEN_BU21013 is not set +# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set +# CONFIG_TOUCHSCREEN_CY8C40XX is not set +# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set +# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set +# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set +# CONFIG_TOUCHSCREEN_DYNAPRO is not set +# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set +# CONFIG_TOUCHSCREEN_EETI is not set +CONFIG_TOUCHSCREEN_EGALAX=m +# CONFIG_TOUCHSCREEN_FT6236 is not set +# CONFIG_TOUCHSCREEN_FUJITSU is not set +# CONFIG_TOUCHSCREEN_GOODIX is not set +# CONFIG_TOUCHSCREEN_GSLX680A is not set +# CONFIG_TOUCHSCREEN_GSLX680_D708 is not set +# CONFIG_TOUCHSCREEN_GSLX680_PAD is not set +# CONFIG_TOUCHSCREEN_GSLX680_VR is not set +# CONFIG_TOUCHSCREEN_GSLX680_FIREFLY is not set +# CONFIG_TOUCHSCREEN_GSL3673 is not set +# CONFIG_TOUCHSCREEN_GSL3673_800X1280 is not set +CONFIG_TOUCHSCREEN_GT9XX=y +# CONFIG_TOUCHSCREEN_ILI210X is not set +# CONFIG_TOUCHSCREEN_GUNZE is not set +CONFIG_TOUCHSCREEN_ELAN=m +# CONFIG_TOUCHSCREEN_ELO is not set +# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set +# CONFIG_TOUCHSCREEN_WACOM_I2C is not set +# CONFIG_TOUCHSCREEN_MAX11801 is not set +# CONFIG_TOUCHSCREEN_MCS5000 is not set +# CONFIG_TOUCHSCREEN_MMS114 is not set +# CONFIG_TOUCHSCREEN_MTOUCH is not set +# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set +# CONFIG_TOUCHSCREEN_INEXIO is not set +# CONFIG_TOUCHSCREEN_MK712 is not set +# CONFIG_TOUCHSCREEN_PENMOUNT is not set +CONFIG_TOUCHSCREEN_EDT_FT5X06=y +# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set +# CONFIG_TOUCHSCREEN_TOUCHWIN is not set +# CONFIG_TOUCHSCREEN_PIXCIR is not set +# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set +CONFIG_TOUCHSCREEN_USB_COMPOSITE=m +CONFIG_TOUCHSCREEN_USB_EGALAX=y +CONFIG_TOUCHSCREEN_USB_PANJIT=y +CONFIG_TOUCHSCREEN_USB_3M=y +CONFIG_TOUCHSCREEN_USB_ITM=y +CONFIG_TOUCHSCREEN_USB_ETURBO=y +CONFIG_TOUCHSCREEN_USB_GUNZE=y +CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y +CONFIG_TOUCHSCREEN_USB_IRTOUCH=y +CONFIG_TOUCHSCREEN_USB_IDEALTEK=y +CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y +CONFIG_TOUCHSCREEN_USB_GOTOP=y +CONFIG_TOUCHSCREEN_USB_JASTEC=y +CONFIG_TOUCHSCREEN_USB_ELO=y +CONFIG_TOUCHSCREEN_USB_E2I=y +CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y +CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y +CONFIG_TOUCHSCREEN_USB_NEXIO=y +CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y +# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set +# CONFIG_TOUCHSCREEN_TSC_SERIO is not set +# CONFIG_TOUCHSCREEN_TSC2004 is not set +# CONFIG_TOUCHSCREEN_TSC2005 is not set +# CONFIG_TOUCHSCREEN_TSC2007 is not set +# CONFIG_TOUCHSCREEN_ST1232 is not set +# CONFIG_TOUCHSCREEN_SUR40 is not set +# CONFIG_TOUCHSCREEN_SX8654 is not set +# CONFIG_TOUCHSCREEN_TPS6507X is not set +# CONFIG_TOUCHSCREEN_ZFORCE is not set +# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set +# CONFIG_TOUCHSCREEN_VTL_CT36X is not set +# CONFIG_TOUCHSCREEN_GT1X is not set +CONFIG_TOUCHSCREEN_FE_PANELS=y +# CONFIG_TOUCHSCREEN_1WIRE is not set +# CONFIG_TOUCHSCREEN_IT7260 is not set +# CONFIG_TOUCHSCREEN_HIMAX is not set +# CONFIG_TOUCHSCREEN_PROT_MT_SYNC is not set +CONFIG_TOUCHSCREEN_PROT_MT_SLOT=y +# CONFIG_TOUCHSCREEN_PROT_SINGLE is not set +CONFIG_ROCKCHIP_REMOTECTL=y +CONFIG_ROCKCHIP_REMOTECTL_PWM=y + +# +# handle all sensors +# +CONFIG_SENSOR_DEVICE=y +# CONFIG_ANGLE_DEVICE is not set +CONFIG_GSENSOR_DEVICE=y +CONFIG_GS_MMA8452=y +# CONFIG_STK8BAXX_ACC is not set +CONFIG_MPU6880_ACC=y +CONFIG_MPU6500_ACC=y +# CONFIG_GS_KXTIK is not set +# CONFIG_GS_KXTJ9 is not set +CONFIG_GS_LIS3DH=y +CONFIG_GS_MMA7660=y +# CONFIG_GS_MC3230 is not set +# CONFIG_GS_MXC6225 is not set +# CONFIG_GS_DMT10 is not set +CONFIG_GS_LSM303D=y +# CONFIG_GS_BMA023 is not set +CONFIG_LSM330_ACC=y +# CONFIG_BMA2XX_ACC is not set +CONFIG_COMPASS_DEVICE=y +CONFIG_COMPASS_AK8975=y +CONFIG_COMPASS_AK8963=y +# CONFIG_COMPASS_AK09911 is not set +# CONFIG_COMPASS_MMC328X is not set +CONFIG_GYROSCOPE_DEVICE=y +CONFIG_GYRO_L3G4200D=y +# CONFIG_GYRO_K3G is not set +CONFIG_GYRO_L3G20D=y +CONFIG_GYRO_EWTSA=y +# CONFIG_GYRO_MPU6500 is not set +CONFIG_GYRO_MPU6880=y +CONFIG_GYRO_LSM330=y +CONFIG_LIGHT_DEVICE=y +CONFIG_LS_CM3217=y +CONFIG_LS_CM3218=y +# CONFIG_LS_CM3232 is not set +# CONFIG_LS_AL3006 is not set +# CONFIG_LS_STK3171 is not set +# CONFIG_LS_ISL29023 is not set +# CONFIG_LS_AP321XX is not set +# CONFIG_LS_US5152 is not set +# CONFIG_LS_STK3410 is not set +# CONFIG_PROXIMITY_DEVICE is not set +# CONFIG_TEMPERATURE_DEVICE is not set +# CONFIG_PRESSURE_DEVICE is not set +# CONFIG_HALL_DEVICE is not set +CONFIG_INPUT_MISC=y +CONFIG_INPUT_AD714X=m +CONFIG_INPUT_AD714X_I2C=m +CONFIG_INPUT_AD714X_SPI=m +# CONFIG_INPUT_BMA150 is not set +# CONFIG_INPUT_E3X0_BUTTON is not set +# CONFIG_INPUT_MMA8450 is not set +# CONFIG_INPUT_MPU3050 is not set +# CONFIG_INPUT_GP2A is not set +# CONFIG_INPUT_GPIO_BEEPER is not set +# CONFIG_INPUT_GPIO_TILT_POLLED is not set +CONFIG_INPUT_ATI_REMOTE2=m +CONFIG_INPUT_KEYCHORD=m +# CONFIG_INPUT_KEYSPAN_REMOTE is not set +# CONFIG_INPUT_KXTJ9 is not set +CONFIG_INPUT_POWERMATE=m +CONFIG_INPUT_YEALINK=m +CONFIG_INPUT_CM109=m +# CONFIG_INPUT_REGULATOR_HAPTIC is not set +CONFIG_INPUT_RK8XX_PWRKEY=y +CONFIG_INPUT_UINPUT=y +CONFIG_INPUT_GPIO=y +# CONFIG_INPUT_PCF8574 is not set +# CONFIG_INPUT_PWM_BEEPER is not set +CONFIG_INPUT_GPIO_ROTARY_ENCODER=m +CONFIG_INPUT_ADXL34X=m +CONFIG_INPUT_ADXL34X_I2C=m +CONFIG_INPUT_ADXL34X_SPI=m +# CONFIG_INPUT_IMS_PCU is not set +CONFIG_INPUT_CMA3000=m +# CONFIG_INPUT_CMA3000_I2C is not set +# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2665_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=m +CONFIG_SERIO_SERPORT=m +# CONFIG_SERIO_AMBAKMI is not set +# CONFIG_SERIO_PCIPS2 is not set +# CONFIG_SERIO_LIBPS2 is not set +CONFIG_SERIO_RAW=m +# CONFIG_SERIO_ALTERA_PS2 is not set +# CONFIG_SERIO_PS2MULT is not set +# CONFIG_SERIO_ARC_PS2 is not set +# CONFIG_SERIO_APBPS2 is not set +# CONFIG_USERIO is not set +CONFIG_GAMEPORT=m +CONFIG_GAMEPORT_NS558=m +CONFIG_GAMEPORT_L4=m +# CONFIG_GAMEPORT_EMU10K1 is not set +# CONFIG_GAMEPORT_FM801 is not set + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +CONFIG_DEVPTS_MULTIPLE_INSTANCES=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_NOZOMI is not set +# CONFIG_N_GSM is not set +# CONFIG_TRACE_SINK is not set +CONFIG_LDISC_AUTOLOAD=y +CONFIG_DEVMEM=y +# CONFIG_DEVKMEM is not set + +# +# Serial drivers +# +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_DMA=y +# CONFIG_SERIAL_8250_PCI is not set +CONFIG_SERIAL_8250_NR_UARTS=5 +CONFIG_SERIAL_8250_RUNTIME_UARTS=5 +# CONFIG_SERIAL_8250_EXTENDED is not set +CONFIG_SERIAL_8250_FSL=y +CONFIG_SERIAL_8250_DW=y +# CONFIG_SERIAL_8250_RT288X is not set +# CONFIG_SERIAL_8250_INGENIC is not set +# CONFIG_SERIAL_8250_MID is not set + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_AMBA_PL010 is not set +# CONFIG_SERIAL_AMBA_PL011 is not set +# CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +# CONFIG_SERIAL_UARTLITE is not set +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +CONFIG_SERIAL_OF_PLATFORM=y +# CONFIG_SERIAL_SCCNXP is not set +CONFIG_SERIAL_SC16IS7XX_CORE=m +CONFIG_SERIAL_SC16IS7XX=m +CONFIG_SERIAL_SC16IS7XX_I2C=y +CONFIG_SERIAL_SC16IS7XX_SPI=y +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_IFX6X60 is not set +# CONFIG_SERIAL_XILINX_PS_UART is not set +# CONFIG_SERIAL_ARC is not set +# CONFIG_SERIAL_RP2 is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set +# CONFIG_TTY_PRINTK is not set +# CONFIG_HVC_DCC is not set +# CONFIG_IPMI_HANDLER is not set +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_ROCKCHIP=m +# CONFIG_APPLICOM is not set + +# +# PCMCIA character devices +# +CONFIG_RAW_DRIVER=m +CONFIG_MAX_RAW_DEVS=256 +CONFIG_TCG_TPM=m +# CONFIG_TCG_TIS_I2C_ATMEL is not set +CONFIG_TCG_TIS_I2C_INFINEON=m +# CONFIG_TCG_TIS_I2C_NUVOTON is not set +# CONFIG_TCG_ATMEL is not set +# CONFIG_TCG_TIS_ST33ZP24 is not set +CONFIG_DEVPORT=y +# CONFIG_XILLYBUS is not set + +# +# I2C support +# +CONFIG_I2C=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX=y + +# +# Multiplexer I2C Chip support +# +# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set +# CONFIG_I2C_MUX_GPIO is not set +# CONFIG_I2C_MUX_PCA9541 is not set +CONFIG_I2C_MUX_PCA954x=m +# CONFIG_I2C_MUX_PINCTRL is not set +# CONFIG_I2C_MUX_REG is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_ALGOBIT=y + +# +# I2C Hardware Bus support +# + +# +# PC SMBus host controller drivers +# +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_I801 is not set +# CONFIG_I2C_ISCH is not set +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_NFORCE2 is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_CADENCE is not set +# CONFIG_I2C_CBUS_GPIO is not set +# CONFIG_I2C_DESIGNWARE_PLATFORM is not set +# CONFIG_I2C_DESIGNWARE_PCI is not set +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +# CONFIG_I2C_NOMADIK is not set +# CONFIG_I2C_OCORES is not set +# CONFIG_I2C_PCA_PLATFORM is not set +# CONFIG_I2C_PXA_PCI is not set +CONFIG_I2C_RK3X=y +# CONFIG_I2C_SIMTEC is not set +# CONFIG_I2C_XILINX is not set + +# +# External I2C/SMBus adapter drivers +# +# CONFIG_I2C_DIOLAN_U2C is not set +# CONFIG_I2C_PARPORT_LIGHT is not set +# CONFIG_I2C_ROBOTFUZZ_OSIF is not set +# CONFIG_I2C_TAOS_EVM is not set +# CONFIG_I2C_TINY_USB is not set + +# +# Other I2C/SMBus bus drivers +# +CONFIG_I2C_CROS_EC_TUNNEL=m +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_SLAVE is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +CONFIG_SPI_BITBANG=y +# CONFIG_SPI_CADENCE is not set +# CONFIG_SPI_GPIO is not set +# CONFIG_SPI_FSL_SPI is not set +# CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_PL022 is not set +# CONFIG_SPI_PXA2XX is not set +# CONFIG_SPI_PXA2XX_PCI is not set +CONFIG_SPI_ROCKCHIP=y +# CONFIG_SPI_SC18IS602 is not set +# CONFIG_SPI_XCOMM is not set +# CONFIG_SPI_XILINX is not set +# CONFIG_SPI_ZYNQMP_GQSPI is not set +# CONFIG_SPI_DESIGNWARE is not set + +# +# SPI Protocol Masters +# +CONFIG_SPI_SPIDEV=y +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_SPMI is not set +# CONFIG_HSI is not set + +# +# PPS support +# +CONFIG_PPS=y +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +# CONFIG_PPS_CLIENT_KTIMER is not set +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_GPIO=m + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=y + +# +# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. +# +CONFIG_PINCTRL=y + +# +# Pin controllers +# +CONFIG_PINMUX=y +CONFIG_PINCONF=y +CONFIG_GENERIC_PINCONF=y +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_PINCTRL_AMD is not set +CONFIG_PINCTRL_ROCKCHIP=y +# CONFIG_PINCTRL_SINGLE is not set +# CONFIG_PINCTRL_RK805 is not set +CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y +CONFIG_ARCH_REQUIRE_GPIOLIB=y +CONFIG_GPIOLIB=y +CONFIG_GPIO_DEVRES=y +CONFIG_OF_GPIO=y +CONFIG_DEBUG_GPIO=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC=y + +# +# Memory mapped GPIO drivers +# +# CONFIG_GPIO_74XX_MMIO is not set +# CONFIG_GPIO_ALTERA is not set +# CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_GENERIC_PLATFORM=y +# CONFIG_GPIO_GRGPIO is not set +# CONFIG_GPIO_PL061 is not set +# CONFIG_GPIO_SYSCON is not set +# CONFIG_GPIO_VX855 is not set +# CONFIG_GPIO_XGENE is not set +# CONFIG_GPIO_XILINX is not set +# CONFIG_GPIO_ZX is not set + +# +# I2C GPIO expanders +# +# CONFIG_GPIO_ADP5588 is not set +# CONFIG_GPIO_ADNP is not set +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_SX150X is not set + +# +# MFD GPIO expanders +# +CONFIG_GPIO_RK8XX=y + +# +# PCI GPIO expanders +# +# CONFIG_GPIO_AMD8111 is not set +# CONFIG_GPIO_BT8XX is not set +# CONFIG_GPIO_ML_IOH is not set +# CONFIG_GPIO_RDC321X is not set + +# +# SPI GPIO expanders +# +# CONFIG_GPIO_74X164 is not set +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MC33880 is not set + +# +# SPI or I2C GPIO expanders +# +# CONFIG_GPIO_MCP23S08 is not set + +# +# USB GPIO expanders +# +CONFIG_W1=m +CONFIG_W1_CON=y + +# +# 1-wire Bus Masters +# +CONFIG_W1_MASTER_MATROX=m +CONFIG_W1_MASTER_DS2490=m +CONFIG_W1_MASTER_DS2482=m +CONFIG_W1_MASTER_DS1WM=m +CONFIG_W1_MASTER_GPIO=m + +# +# 1-wire Slaves +# +CONFIG_W1_SLAVE_THERM=m +CONFIG_W1_SLAVE_SMEM=m +CONFIG_W1_SLAVE_DS2408=m +CONFIG_W1_SLAVE_DS2408_READBACK=y +CONFIG_W1_SLAVE_DS2413=m +CONFIG_W1_SLAVE_DS2406=m +CONFIG_W1_SLAVE_DS2423=m +CONFIG_W1_SLAVE_DS2431=m +CONFIG_W1_SLAVE_DS2433=m +# CONFIG_W1_SLAVE_DS2433_CRC is not set +CONFIG_W1_SLAVE_DS2760=m +CONFIG_W1_SLAVE_DS2780=m +CONFIG_W1_SLAVE_DS2781=m +CONFIG_W1_SLAVE_DS28E04=m +# CONFIG_W1_SLAVE_BQ27000 is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +# CONFIG_PDA_POWER is not set +# CONFIG_GENERIC_ADC_BATTERY is not set +# CONFIG_TEST_POWER is not set +CONFIG_BATTERY_DS2760=m +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +CONFIG_BATTERY_SBS=y +# CONFIG_BATTERY_BQ27XXX is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_CHARGER_ISP1704 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +CONFIG_CHARGER_GPIO=y +# CONFIG_CHARGER_MANAGER is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24190 is not set +# CONFIG_CHARGER_BQ24257 is not set +# CONFIG_CHARGER_BQ24735 is not set +# CONFIG_CHARGER_BQ25700 is not set +# CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_SMB347 is not set +# CONFIG_CHARGER_SY6982C is not set +# CONFIG_CHARGER_UNIVERSAL is not set +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +# CONFIG_BATTERY_EC is not set +# CONFIG_BATTERY_CW2015 is not set +# CONFIG_BATTERY_RK816 is not set +CONFIG_BATTERY_RK817=y +CONFIG_CHARGER_RK817=y +# CONFIG_BATTERY_RK818 is not set +# CONFIG_CHARGER_RK818 is not set +# CONFIG_CHARGER_RT9455 is not set +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_GPIO=y +CONFIG_POWER_RESET_GPIO_RESTART=y +# CONFIG_POWER_RESET_LTC2952 is not set +# CONFIG_POWER_RESET_RESTART is not set +# CONFIG_POWER_RESET_XGENE is not set +# CONFIG_POWER_RESET_SYSCON is not set +# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set +CONFIG_REBOOT_MODE=y +CONFIG_SYSCON_REBOOT_MODE=y +CONFIG_POWER_AVS=y +CONFIG_ROCKCHIP_IODOMAIN=y +CONFIG_HWMON=y +# CONFIG_HWMON_VID is not set +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +# CONFIG_SENSORS_AD7314 is not set +# CONFIG_SENSORS_AD7414 is not set +# CONFIG_SENSORS_AD7418 is not set +# CONFIG_SENSORS_ADM1021 is not set +# CONFIG_SENSORS_ADM1025 is not set +# CONFIG_SENSORS_ADM1026 is not set +# CONFIG_SENSORS_ADM1029 is not set +# CONFIG_SENSORS_ADM1031 is not set +# CONFIG_SENSORS_ADM9240 is not set +# CONFIG_SENSORS_ADT7310 is not set +# CONFIG_SENSORS_ADT7410 is not set +# CONFIG_SENSORS_ADT7411 is not set +# CONFIG_SENSORS_ADT7462 is not set +# CONFIG_SENSORS_ADT7470 is not set +# CONFIG_SENSORS_ADT7475 is not set +# CONFIG_SENSORS_ASC7621 is not set +# CONFIG_SENSORS_ATXP1 is not set +# CONFIG_SENSORS_DS620 is not set +# CONFIG_SENSORS_DS1621 is not set +# CONFIG_SENSORS_I5K_AMB is not set +# CONFIG_SENSORS_F71805F is not set +# CONFIG_SENSORS_F71882FG is not set +# CONFIG_SENSORS_F75375S is not set +# CONFIG_SENSORS_GL518SM is not set +# CONFIG_SENSORS_GL520SM is not set +# CONFIG_SENSORS_G760A is not set +# CONFIG_SENSORS_G762 is not set +# CONFIG_SENSORS_GPIO_FAN is not set +# CONFIG_SENSORS_HIH6130 is not set +# CONFIG_SENSORS_IIO_HWMON is not set +# CONFIG_SENSORS_IT87 is not set +# CONFIG_SENSORS_JC42 is not set +# CONFIG_SENSORS_POWR1220 is not set +# CONFIG_SENSORS_LINEAGE is not set +# CONFIG_SENSORS_LTC2945 is not set +# CONFIG_SENSORS_LTC4151 is not set +# CONFIG_SENSORS_LTC4215 is not set +# CONFIG_SENSORS_LTC4222 is not set +# CONFIG_SENSORS_LTC4245 is not set +# CONFIG_SENSORS_LTC4260 is not set +# CONFIG_SENSORS_LTC4261 is not set +# CONFIG_SENSORS_MAX1111 is not set +# CONFIG_SENSORS_MAX16065 is not set +# CONFIG_SENSORS_MAX1619 is not set +# CONFIG_SENSORS_MAX1668 is not set +# CONFIG_SENSORS_MAX197 is not set +# CONFIG_SENSORS_MAX6639 is not set +# CONFIG_SENSORS_MAX6642 is not set +# CONFIG_SENSORS_MAX6650 is not set +# CONFIG_SENSORS_MAX6697 is not set +# CONFIG_SENSORS_MAX31790 is not set +# CONFIG_SENSORS_HTU21 is not set +# CONFIG_SENSORS_MCP3021 is not set +# CONFIG_SENSORS_ADCXX is not set +# CONFIG_SENSORS_LM63 is not set +# CONFIG_SENSORS_LM70 is not set +# CONFIG_SENSORS_LM73 is not set +CONFIG_SENSORS_LM75=m +# CONFIG_SENSORS_LM77 is not set +# CONFIG_SENSORS_LM78 is not set +# CONFIG_SENSORS_LM80 is not set +# CONFIG_SENSORS_LM83 is not set +# CONFIG_SENSORS_LM85 is not set +# CONFIG_SENSORS_LM87 is not set +# CONFIG_SENSORS_LM90 is not set +# CONFIG_SENSORS_LM92 is not set +# CONFIG_SENSORS_LM93 is not set +# CONFIG_SENSORS_LM95234 is not set +# CONFIG_SENSORS_LM95241 is not set +# CONFIG_SENSORS_LM95245 is not set +# CONFIG_SENSORS_PC87360 is not set +# CONFIG_SENSORS_PC87427 is not set +# CONFIG_SENSORS_NTC_THERMISTOR is not set +# CONFIG_SENSORS_NCT6683 is not set +# CONFIG_SENSORS_NCT6775 is not set +# CONFIG_SENSORS_NCT7802 is not set +# CONFIG_SENSORS_NCT7904 is not set +# CONFIG_SENSORS_PCF8591 is not set +# CONFIG_PMBUS is not set +CONFIG_SENSORS_PWM_FAN=y +# CONFIG_SENSORS_SHT15 is not set +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SHTC1=m +# CONFIG_SENSORS_SIS5595 is not set +# CONFIG_SENSORS_DME1737 is not set +# CONFIG_SENSORS_EMC1403 is not set +# CONFIG_SENSORS_EMC2103 is not set +# CONFIG_SENSORS_EMC6W201 is not set +# CONFIG_SENSORS_SMSC47M1 is not set +# CONFIG_SENSORS_SMSC47M192 is not set +# CONFIG_SENSORS_SMSC47B397 is not set +# CONFIG_SENSORS_SCH56XX_COMMON is not set +# CONFIG_SENSORS_SCH5627 is not set +# CONFIG_SENSORS_SCH5636 is not set +# CONFIG_SENSORS_SMM665 is not set +# CONFIG_SENSORS_ADC128D818 is not set +# CONFIG_SENSORS_ADS1015 is not set +# CONFIG_SENSORS_ADS7828 is not set +# CONFIG_SENSORS_ADS7871 is not set +# CONFIG_SENSORS_AMC6821 is not set +# CONFIG_SENSORS_INA209 is not set +CONFIG_SENSORS_INA2XX=m +# CONFIG_SENSORS_TC74 is not set +# CONFIG_SENSORS_THMC50 is not set +# CONFIG_SENSORS_TMP102 is not set +# CONFIG_SENSORS_TMP103 is not set +# CONFIG_SENSORS_TMP401 is not set +# CONFIG_SENSORS_TMP421 is not set +# CONFIG_SENSORS_VIA686A is not set +# CONFIG_SENSORS_VT1211 is not set +# CONFIG_SENSORS_VT8231 is not set +# CONFIG_SENSORS_W83781D is not set +# CONFIG_SENSORS_W83791D is not set +# CONFIG_SENSORS_W83792D is not set +# CONFIG_SENSORS_W83793 is not set +# CONFIG_SENSORS_W83795 is not set +# CONFIG_SENSORS_W83L785TS is not set +# CONFIG_SENSORS_W83L786NG is not set +# CONFIG_SENSORS_W83627HF is not set +# CONFIG_SENSORS_W83627EHF is not set +CONFIG_THERMAL=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_OF=y +CONFIG_THERMAL_WRITABLE_TRIPS=y +# CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE is not set +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR=y +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set +# CONFIG_THERMAL_GOV_USER_SPACE is not set +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_CPU_THERMAL=y +# CONFIG_CLOCK_THERMAL is not set +CONFIG_DEVFREQ_THERMAL=y +# CONFIG_THERMAL_EMULATION is not set +# CONFIG_IMX_THERMAL is not set +CONFIG_ROCKCHIP_THERMAL=y +# CONFIG_RK_VIRTUAL_THERMAL is not set +# CONFIG_RK3368_THERMAL is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set + +# +# Watchdog Device Drivers +# +# CONFIG_SOFT_WATCHDOG is not set +# CONFIG_GPIO_WATCHDOG is not set +# CONFIG_XILINX_WATCHDOG is not set +# CONFIG_ARM_SP805_WATCHDOG is not set +# CONFIG_CADENCE_WATCHDOG is not set +CONFIG_DW_WATCHDOG=y +# CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_ALIM7101_WDT is not set +# CONFIG_I6300ESB_WDT is not set +# CONFIG_BCM7038_WDT is not set +# CONFIG_MEN_A21_WDT is not set + +# +# PCI-based Watchdog Cards +# +# CONFIG_PCIPCWATCHDOG is not set +# CONFIG_WDTPCI is not set + +# +# USB-based Watchdog Cards +# +# CONFIG_USBPCWATCHDOG is not set +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +CONFIG_SSB=m +CONFIG_SSB_PCIHOST_POSSIBLE=y +# CONFIG_SSB_PCIHOST is not set +CONFIG_SSB_SDIOHOST_POSSIBLE=y +# CONFIG_SSB_SDIOHOST is not set +# CONFIG_SSB_HOST_SOC is not set +# CONFIG_SSB_SILENT is not set +# CONFIG_SSB_DEBUG is not set +# CONFIG_SSB_DRIVER_GPIO is not set +CONFIG_BCMA_POSSIBLE=y + +# +# Broadcom specific AMBA +# +# CONFIG_BCMA is not set + +# +# Multifunction device drivers +# +CONFIG_MFD_CORE=y +# CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_AS3722 is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_MFD_AAT2870_CORE is not set +# CONFIG_MFD_ATMEL_FLEXCOM is not set +# CONFIG_MFD_ATMEL_HLCDC is not set +# CONFIG_MFD_BCM590XX is not set +# CONFIG_MFD_AXP20X is not set +CONFIG_MFD_CROS_EC=m +# CONFIG_MFD_CROS_EC_I2C is not set +CONFIG_MFD_CROS_EC_SPI=m +# CONFIG_PMIC_DA903X is not set +# CONFIG_MFD_DA9052_SPI is not set +# CONFIG_MFD_DA9052_I2C is not set +# CONFIG_MFD_DA9055 is not set +# CONFIG_MFD_DA9062 is not set +# CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_DLN2 is not set +# CONFIG_MFD_MC13XXX_SPI is not set +# CONFIG_MFD_MC13XXX_I2C is not set +# CONFIG_MFD_HI6421_PMIC is not set +# CONFIG_HTC_PASIC3 is not set +# CONFIG_HTC_I2CPLD is not set +# CONFIG_LPC_ICH is not set +# CONFIG_LPC_SCH is not set +# CONFIG_INTEL_SOC_PMIC is not set +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_88PM800 is not set +# CONFIG_MFD_88PM805 is not set +# CONFIG_MFD_88PM860X is not set +# CONFIG_MFD_MAX14577 is not set +# CONFIG_MFD_MAX77686 is not set +# CONFIG_MFD_MAX77693 is not set +# CONFIG_MFD_MAX77843 is not set +# CONFIG_MFD_MAX8907 is not set +# CONFIG_MFD_MAX8925 is not set +# CONFIG_MFD_MAX8997 is not set +# CONFIG_MFD_MAX8998 is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_MFD_MENF21BMC is not set +# CONFIG_EZX_PCAP is not set +# CONFIG_MFD_VIPERBOARD is not set +# CONFIG_MFD_RETU is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_MFD_RDC321X is not set +# CONFIG_MFD_RTSX_PCI is not set +# CONFIG_MFD_RT5033 is not set +# CONFIG_MFD_RTSX_USB is not set +# CONFIG_MFD_RC5T583 is not set +# CONFIG_MFD_RK618 is not set +CONFIG_MFD_RK808=y +# CONFIG_MFD_RN5T618 is not set +# CONFIG_MFD_SEC_CORE is not set +# CONFIG_MFD_SI476X_CORE is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_MFD_SKY81452 is not set +# CONFIG_MFD_SMSC is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_MFD_STMPE is not set +CONFIG_MFD_SYSCON=y +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_LP3943 is not set +# CONFIG_MFD_LP8788 is not set +# CONFIG_MFD_PALMAS is not set +# CONFIG_TPS6105X is not set +# CONFIG_TPS65010 is not set +# CONFIG_TPS6507X is not set +# CONFIG_MFD_TPS65090 is not set +# CONFIG_MFD_TPS65217 is not set +# CONFIG_MFD_TPS65218 is not set +# CONFIG_MFD_TPS6586X is not set +# CONFIG_MFD_TPS65910 is not set +# CONFIG_MFD_TPS65912 is not set +# CONFIG_MFD_TPS65912_I2C is not set +# CONFIG_MFD_TPS65912_SPI is not set +# CONFIG_MFD_TPS80031 is not set +# CONFIG_TWL4030_CORE is not set +# CONFIG_TWL6040_CORE is not set +# CONFIG_MFD_WL1273_CORE is not set +# CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_TC3589X is not set +# CONFIG_MFD_TMIO is not set +# CONFIG_MFD_VX855 is not set +# CONFIG_MFD_ARIZONA_I2C is not set +# CONFIG_MFD_ARIZONA_SPI is not set +# CONFIG_MFD_WM8400 is not set +# CONFIG_MFD_WM831X_I2C is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_RK1000 is not set +# CONFIG_MFD_WM8350_I2C is not set +# CONFIG_MFD_WM8994 is not set +CONFIG_FUSB_30X=y +CONFIG_REGULATOR=y +# CONFIG_REGULATOR_DEBUG is not set +CONFIG_REGULATOR_FIXED_VOLTAGE=y +# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set +# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +CONFIG_REGULATOR_ACT8865=y +# CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_ANATOP is not set +# CONFIG_REGULATOR_DA9210 is not set +# CONFIG_REGULATOR_DA9211 is not set +CONFIG_REGULATOR_FAN53555=y +CONFIG_REGULATOR_GPIO=y +# CONFIG_REGULATOR_ISL9305 is not set +# CONFIG_REGULATOR_ISL6271A is not set +# CONFIG_REGULATOR_LP3971 is not set +# CONFIG_REGULATOR_LP3972 is not set +# CONFIG_REGULATOR_LP872X is not set +CONFIG_REGULATOR_LP8752=y +# CONFIG_REGULATOR_LP8755 is not set +# CONFIG_REGULATOR_LTC3589 is not set +# CONFIG_REGULATOR_MAX1586 is not set +# CONFIG_REGULATOR_MAX8649 is not set +# CONFIG_REGULATOR_MAX8660 is not set +# CONFIG_REGULATOR_MAX8952 is not set +# CONFIG_REGULATOR_MAX8973 is not set +CONFIG_REGULATOR_MP8865=y +# CONFIG_REGULATOR_MT6311 is not set +# CONFIG_REGULATOR_PFUZE100 is not set +CONFIG_REGULATOR_PWM=y +CONFIG_REGULATOR_RK808=y +CONFIG_REGULATOR_RK818=y +# CONFIG_REGULATOR_SYR82X is not set +# CONFIG_REGULATOR_TPS51632 is not set +# CONFIG_REGULATOR_TPS549B22 is not set +# CONFIG_REGULATOR_TPS62360 is not set +# CONFIG_REGULATOR_TPS65023 is not set +# CONFIG_REGULATOR_TPS6507X is not set +# CONFIG_REGULATOR_TPS65132 is not set +# CONFIG_REGULATOR_TPS6524X is not set +CONFIG_REGULATOR_XZ3216=y +CONFIG_MEDIA_SUPPORT=y + +# +# Multimedia core support +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set +# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set +# CONFIG_MEDIA_RADIO_SUPPORT is not set +# CONFIG_MEDIA_SDR_SUPPORT is not set +CONFIG_MEDIA_RC_SUPPORT=y +# CONFIG_MEDIA_CEC_SUPPORT is not set +CONFIG_MEDIA_CONTROLLER=y +CONFIG_VIDEO_DEV=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2=y +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_V4L2_MEM2MEM_DEV=y +CONFIG_V4L2_FWNODE=y +CONFIG_VIDEOBUF_GEN=y +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOBUF2_CORE=y +CONFIG_VIDEOBUF2_MEMOPS=y +CONFIG_VIDEOBUF2_DMA_CONTIG=y +CONFIG_VIDEOBUF2_VMALLOC=y +CONFIG_VIDEOBUF2_DMA_SG=y +# CONFIG_TTPCI_EEPROM is not set + +# +# Media drivers +# +CONFIG_RC_CORE=y +CONFIG_RC_MAP=y +# CONFIG_LIRC is not set +CONFIG_RC_DECODERS=y +CONFIG_IR_NEC_DECODER=y +# CONFIG_IR_RC5_DECODER is not set +# CONFIG_IR_RC6_DECODER is not set +# CONFIG_IR_JVC_DECODER is not set +# CONFIG_IR_SONY_DECODER is not set +# CONFIG_IR_SANYO_DECODER is not set +# CONFIG_IR_SHARP_DECODER is not set +# CONFIG_IR_MCE_KBD_DECODER is not set +# CONFIG_IR_XMP_DECODER is not set +# CONFIG_IR_IMON_DECODER is not set +# CONFIG_RC_DEVICES is not set +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_DTCS033=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +# CONFIG_USB_GSPCA_TOUPTEK is not set +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_VIDEO_CPIA2=m +CONFIG_USB_ZR364XX=m +CONFIG_USB_STKWEBCAM=m +CONFIG_USB_S2255=m +CONFIG_VIDEO_USBTV=m + +# +# Webcam, TV (analog/digital) USB devices +# +# CONFIG_VIDEO_EM28XX is not set +# CONFIG_MEDIA_PCI_SUPPORT is not set +CONFIG_V4L_PLATFORM_DRIVERS=y +# CONFIG_VIDEO_CAFE_CCIC is not set +CONFIG_SOC_CAMERA=y +# CONFIG_SOC_CAMERA_PLATFORM is not set +# CONFIG_VIDEO_XILINX is not set +CONFIG_VIDEO_RK_CIF_ISP10=y +# CONFIG_VIDEO_ROCKCHIP_CIF is not set +CONFIG_VIDEO_ROCKCHIP_ISP1=y +CONFIG_V4L_MEM2MEM_DRIVERS=y +# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set +# CONFIG_VIDEO_SH_VEU is not set +CONFIG_VIDEO_ROCKCHIP_RGA=y +# CONFIG_VIDEO_ROCKCHIP_VPU is not set +# CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_ROCKCHIP_TSP is not set + +# +# Supported MMC/SDIO adapters +# +# CONFIG_CYPRESS_FIRMWARE is not set + +# +# Media ancillary drivers (tuners, sensors, i2c, spi, frontends) +# +# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set +# CONFIG_VIDEO_IR_I2C is not set + +# +# I2C Encoders, decoders, sensors and other helper chips +# + +# +# Audio decoders, processors and mixers +# +# CONFIG_VIDEO_TVAUDIO is not set +# CONFIG_VIDEO_TDA7432 is not set +# CONFIG_VIDEO_TDA9840 is not set +# CONFIG_VIDEO_TEA6415C is not set +# CONFIG_VIDEO_TEA6420 is not set +# CONFIG_VIDEO_MSP3400 is not set +# CONFIG_VIDEO_CS5345 is not set +# CONFIG_VIDEO_CS53L32A is not set +# CONFIG_VIDEO_TLV320AIC23B is not set +# CONFIG_VIDEO_UDA1342 is not set +# CONFIG_VIDEO_WM8775 is not set +# CONFIG_VIDEO_WM8739 is not set +# CONFIG_VIDEO_VP27SMPX is not set +# CONFIG_VIDEO_SONY_BTF_MPX is not set + +# +# RDS decoders +# +# CONFIG_VIDEO_SAA6588 is not set + +# +# Video decoders +# +# CONFIG_VIDEO_ADV7180 is not set +# CONFIG_VIDEO_ADV7181D is not set +# CONFIG_VIDEO_ADV7183 is not set +# CONFIG_VIDEO_ADV7604 is not set +# CONFIG_VIDEO_ADV7842 is not set +# CONFIG_VIDEO_BT819 is not set +# CONFIG_VIDEO_BT856 is not set +# CONFIG_VIDEO_BT866 is not set +# CONFIG_VIDEO_KS0127 is not set +# CONFIG_VIDEO_ML86V7667 is not set +# CONFIG_VIDEO_SAA7110 is not set +# CONFIG_VIDEO_SAA711X is not set +CONFIG_VIDEO_TC35874X=y +# CONFIG_VIDEO_TVP514X is not set +# CONFIG_VIDEO_TVP5150 is not set +# CONFIG_VIDEO_TVP7002 is not set +# CONFIG_VIDEO_TW2804 is not set +# CONFIG_VIDEO_TW9903 is not set +# CONFIG_VIDEO_TW9906 is not set +# CONFIG_VIDEO_VPX3220 is not set + +# +# Video and audio decoders +# +# CONFIG_VIDEO_SAA717X is not set +# CONFIG_VIDEO_CX25840 is not set + +# +# Video encoders +# +# CONFIG_VIDEO_SAA7127 is not set +# CONFIG_VIDEO_SAA7185 is not set +# CONFIG_VIDEO_ADV7170 is not set +# CONFIG_VIDEO_ADV7175 is not set +# CONFIG_VIDEO_ADV7343 is not set +# CONFIG_VIDEO_ADV7393 is not set +# CONFIG_VIDEO_ADV7511 is not set +# CONFIG_VIDEO_AD9389B is not set +# CONFIG_VIDEO_AK881X is not set +# CONFIG_VIDEO_THS8200 is not set + +# +# Camera sensor devices +# +# CONFIG_VIDEO_IMX219 is not set +# CONFIG_VIDEO_IMX258 is not set +# CONFIG_VIDEO_IMX317 is not set +# CONFIG_VIDEO_IMX323 is not set +# CONFIG_VIDEO_IMX327 is not set +# CONFIG_VIDEO_VIRT_CAMERA is not set +# CONFIG_VIDEO_OV2659 is not set +# CONFIG_VIDEO_OV2680 is not set +# CONFIG_VIDEO_OV2685 is not set +# CONFIG_VIDEO_OV2718 is not set +# CONFIG_VIDEO_OV2735 is not set +CONFIG_VIDEO_OV4689=y +# CONFIG_VIDEO_OV5647 is not set +# CONFIG_VIDEO_OV5648 is not set +# CONFIG_VIDEO_OV5695 is not set +# CONFIG_VIDEO_OV7251 is not set +# CONFIG_VIDEO_OV7640 is not set +# CONFIG_VIDEO_OV7670 is not set +# CONFIG_VIDEO_OV7725 is not set +# CONFIG_VIDEO_OV7750 is not set +# CONFIG_VIDEO_OV8858 is not set +# CONFIG_VIDEO_OV9281 is not set +# CONFIG_VIDEO_OV9650 is not set +CONFIG_VIDEO_OV13850=y +# CONFIG_VIDEO_VS6624 is not set +# CONFIG_VIDEO_MT9M032 is not set +# CONFIG_VIDEO_MT9P031 is not set +# CONFIG_VIDEO_MT9T001 is not set +# CONFIG_VIDEO_MT9V011 is not set +# CONFIG_VIDEO_MT9V032 is not set +# CONFIG_VIDEO_SR030PC30 is not set +# CONFIG_VIDEO_NOON010PC30 is not set +# CONFIG_VIDEO_M5MOLS is not set +# CONFIG_VIDEO_S5K6AA is not set +# CONFIG_VIDEO_S5K6A3 is not set +# CONFIG_VIDEO_S5K4ECGX is not set +# CONFIG_VIDEO_S5K5BAF is not set +# CONFIG_VIDEO_SMIAPP is not set +# CONFIG_VIDEO_S5C73M3 is not set +# CONFIG_VIDEO_GC2155 is not set +# CONFIG_VIDEO_GC0312 is not set +# CONFIG_VIDEO_GC2145 is not set +CONFIG_VIDEO_GC2355=y +# CONFIG_VIDEO_GC2385 is not set +# CONFIG_VIDEO_GC5025 is not set +# CONFIG_VIDEO_GC8034 is not set +CONFIG_VIDEO_SC031GS=y +# CONFIG_VIDEO_GC0329 is not set +# CONFIG_VIDEO_GC2035 is not set +# CONFIG_VIDEO_BF3925 is not set +# CONFIG_VIDEO_JX_H65 is not set +# CONFIG_VIDEO_PREISP_DUMMY_SENSOR is not set + +# +# Flash devices +# +# CONFIG_VIDEO_ADP1653 is not set +# CONFIG_VIDEO_AS3645A is not set +# CONFIG_VIDEO_LM3560 is not set +# CONFIG_VIDEO_LM3646 is not set +# CONFIG_VIDEO_SGM3784 is not set + +# +# Video improvement chips +# +# CONFIG_VIDEO_UPD64031A is not set +# CONFIG_VIDEO_UPD64083 is not set + +# +# Camera lens devices +# +CONFIG_VIDEO_VM149C=y +# CONFIG_VIDEO_DW9714 is not set +# CONFIG_VIDEO_FP5510 is not set + +# +# Audio/Video compression chips +# +# CONFIG_VIDEO_SAA6752HS is not set + +# +# Miscellaneous helper chips +# +# CONFIG_VIDEO_THS7303 is not set +# CONFIG_VIDEO_M52790 is not set +# CONFIG_VIDEO_NVP6324 is not set + +# +# Sensors used on soc_camera driver +# + +# +# soc_camera sensor drivers +# +# CONFIG_SOC_CAMERA_IMX074 is not set +# CONFIG_SOC_CAMERA_MT9M001 is not set +# CONFIG_SOC_CAMERA_MT9M111 is not set +# CONFIG_SOC_CAMERA_MT9T031 is not set +# CONFIG_SOC_CAMERA_MT9T112 is not set +# CONFIG_SOC_CAMERA_MT9V022 is not set +# CONFIG_SOC_CAMERA_OV2640 is not set +# CONFIG_SOC_CAMERA_OV5642 is not set +# CONFIG_SOC_CAMERA_OV6650 is not set +# CONFIG_SOC_CAMERA_OV772X is not set +# CONFIG_SOC_CAMERA_OV9640 is not set +# CONFIG_SOC_CAMERA_OV9740 is not set +# CONFIG_SOC_CAMERA_RJ54N1 is not set +# CONFIG_SOC_CAMERA_TW9910 is not set +# CONFIG_VIDEO_OV2710 is not set +# CONFIG_VIDEO_TC358749XBG is not set +# CONFIG_VIDEO_ADV7181 is not set +# CONFIG_VIDEO_OV7675 is not set +# CONFIG_VIDEO_NT99230 is not set +# CONFIG_VIDEO_OV9750 is not set +# CONFIG_VIDEO_ov5640 is not set +# CONFIG_VIDEO_SC2232 is not set +# CONFIG_VIDEO_ISL79987 is not set + +# +# SPI helper chips +# +# CONFIG_VIDEO_GS1662 is not set +# CONFIG_VIDEO_ROCKCHIP_PREISP is not set + +# +# Customise DVB Frontends +# +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m + +# +# Tools to develop new frontends +# +# CONFIG_DVB_DUMMY_FE is not set +# CONFIG_CAMSYS_DRV is not set +# CONFIG_ROCK_CHIP_SOC_CAMERA is not set + +# +# Graphics support +# +# CONFIG_VGA_ARB is not set +CONFIG_DRM=y +CONFIG_DRM_IGNORE_IOTCL_PERMIT=y +CONFIG_DRM_MIPI_DSI=y +CONFIG_DRM_KMS_HELPER=y +CONFIG_DRM_KMS_FB_HELPER=y +CONFIG_DRM_FBDEV_EMULATION=y +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_DP_CEC is not set +# CONFIG_DRM_SCDC_HELPER is not set +CONFIG_DRM_DMA_SYNC=y + +# +# I2C encoder or helper chips +# +# CONFIG_DRM_I2C_ADV7511 is not set +# CONFIG_DRM_I2C_CH7006 is not set +# CONFIG_DRM_I2C_SIL164 is not set +# CONFIG_DRM_I2C_NXP_TDA998X is not set +# CONFIG_DRM_TDFX is not set +# CONFIG_DRM_R128 is not set +# CONFIG_DRM_RADEON is not set +# CONFIG_DRM_AMDGPU is not set +# CONFIG_DRM_NOUVEAU is not set +# CONFIG_DRM_MGA is not set +# CONFIG_DRM_VIA is not set +# CONFIG_DRM_SAVAGE is not set +# CONFIG_DRM_VGEM is not set +CONFIG_DRM_ROCKCHIP=y +# CONFIG_ROCKCHIP_DRM_DEBUG is not set +CONFIG_ROCKCHIP_CDN_DP=y +CONFIG_ROCKCHIP_DW_HDMI=y +CONFIG_ROCKCHIP_DW_MIPI_DSI=y +# CONFIG_ROCKCHIP_MIPI_CSI_TX is not set +CONFIG_ROCKCHIP_ANALOGIX_DP=y +CONFIG_ROCKCHIP_INNO_HDMI=y +CONFIG_ROCKCHIP_LVDS=y +CONFIG_ROCKCHIP_DRM_TVE=y +# CONFIG_ROCKCHIP_RGB is not set +# CONFIG_ROCKCHIP_DRM_BACKLIGHT is not set +# CONFIG_ROCKCHIP_RK3066_HDMI is not set +CONFIG_DRM_UDL=m +# CONFIG_DRM_AST is not set +# CONFIG_DRM_MGAG200 is not set +# CONFIG_DRM_CIRRUS_QEMU is not set +# CONFIG_DRM_QXL is not set +# CONFIG_DRM_BOCHS is not set +CONFIG_DRM_PANEL=y + +# +# Display Panels +# +CONFIG_DRM_PANEL_SIMPLE=y +# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set +# CONFIG_DRM_PANEL_LG_LG4573 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set +# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set +CONFIG_DRM_PANEL_FRIENDLYELEC=y +CONFIG_DRM_BRIDGE=y + +# +# Display Interface Bridges +# +# CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PARADE_PS8622 is not set +# CONFIG_DRM_RK1000 is not set +# CONFIG_DRM_DUMB_VGA_DAC is not set +# CONFIG_DRM_LONTIUM_LT8912 is not set +# CONFIG_DRM_CHIPONE_ICN6211 is not set +CONFIG_DRM_ANALOGIX_DP=y +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +# CONFIG_DRM_ANALOGIX_ANX6345 is not set +CONFIG_DRM_DW_HDMI=y +# CONFIG_DRM_DW_HDMI_AHB_AUDIO is not set +CONFIG_DRM_DW_HDMI_I2S_AUDIO=y +# CONFIG_DRM_DW_HDMI_CEC is not set +# CONFIG_POWERVR_ROGUE_M is not set +CONFIG_MALI400=m +CONFIG_MALI450=y +# CONFIG_MALI470 is not set +# CONFIG_MALI400_DEBUG is not set +# CONFIG_MALI400_PROFILING is not set +# CONFIG_MALI400_UMP is not set +CONFIG_MALI_DMA_BUF_MAP_ON_ATTACH=y +CONFIG_MALI_SHARED_INTERRUPTS=y +# CONFIG_MALI_PMU_PARALLEL_POWER_UP is not set +CONFIG_MALI_DT=y +CONFIG_MALI_DEVFREQ=y +# CONFIG_MALI_QUIET is not set +CONFIG_MALI_MIDGARD_FOR_ANDROID=y +# CONFIG_MALI_MIDGARD_FOR_LINUX is not set +CONFIG_MALI_MIDGARD=y +# CONFIG_MALI_GATOR_SUPPORT is not set +# CONFIG_MALI_MIDGARD_ENABLE_TRACE is not set +# CONFIG_MALI_DMA_FENCE is not set +CONFIG_MALI_EXPERT=y +# CONFIG_MALI_CORESTACK is not set +# CONFIG_MALI_PRFCNT_SET_SECONDARY is not set +# CONFIG_MALI_PLATFORM_FAKE is not set +# CONFIG_MALI_PLATFORM_DEVICETREE is not set +CONFIG_MALI_PLATFORM_THIRDPARTY=y +CONFIG_MALI_PLATFORM_THIRDPARTY_NAME="rk" +CONFIG_MALI_DEBUG=y +# CONFIG_MALI_NO_MALI is not set +# CONFIG_MALI_TRACE_TIMELINE is not set +# CONFIG_MALI_SYSTEM_TRACE is not set +# CONFIG_MALI_GPU_MMU_AARCH64 is not set +# CONFIG_MALI_PWRSOFT_765 is not set +# CONFIG_MALI_KUTF is not set +CONFIG_MALI_BIFROST_FOR_ANDROID=y +# CONFIG_MALI_BIFROST_FOR_LINUX is not set +# CONFIG_MALI_BIFROST is not set + +# +# Frame buffer Devices +# +CONFIG_FB=y +# CONFIG_FIRMWARE_EDID is not set +CONFIG_FB_CMDLINE=y +# CONFIG_FB_DDC is not set +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_IMAGEBLIT=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_SVGALIB is not set +# CONFIG_FB_MACMODES is not set +CONFIG_FB_BACKLIGHT=y +# CONFIG_FB_MODE_HELPERS is not set +# CONFIG_FB_TILEBLITTING is not set + +# +# Frame buffer hardware drivers +# +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_ARMCLCD is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_UVESA is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_VT8623 is not set +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_CARMINE is not set +# CONFIG_FB_SMSCUFX is not set +# CONFIG_FB_UDL is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_MB862XX is not set +# CONFIG_FB_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_FB_SSD1307 is not set +# CONFIG_FB_SM712 is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_GENERIC=y +CONFIG_BACKLIGHT_PWM=y +# CONFIG_BACKLIGHT_PM8941_WLED is not set +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +# CONFIG_BACKLIGHT_LM3630A is not set +# CONFIG_BACKLIGHT_LM3639 is not set +# CONFIG_BACKLIGHT_LP855X is not set +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_BD6107 is not set + +# +# Rockchip Misc Video driver +# +# CONFIG_FB_ROCKCHIP is not set +# CONFIG_LCDC_RK3368 is not set +CONFIG_LCD_GENERAL=y +# CONFIG_LCD_MIPI is not set +# CONFIG_RK_TRSM is not set +# CONFIG_RK_HDMI is not set + +# +# RGA +# +# CONFIG_ROCKCHIP_RGA is not set + +# +# RGA2 +# +CONFIG_ROCKCHIP_RGA2=y + +# +# VCODEC +# +CONFIG_RK_VCODEC=y + +# +# IEP +# +# CONFIG_IEP is not set +# CONFIG_IEP_MMU is not set + +# +# DP +# + +# +# ROCKCHIP_MPP +# +CONFIG_ROCKCHIP_MPP_SERVICE=y +CONFIG_ROCKCHIP_MPP_DEVICE=y +# CONFIG_VGASTATE is not set +CONFIG_VIDEOMODE_HELPERS=y +CONFIG_HDMI=y +CONFIG_HDMI_NOTIFIERS=y + +# +# Console display driver support +# +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set +# CONFIG_LOGO is not set +CONFIG_SOUND=y +# CONFIG_SOUND_OSS_CORE is not set +CONFIG_SND=y +CONFIG_SND_TIMER=y +CONFIG_SND_PCM=y +CONFIG_SND_PCM_ELD=y +CONFIG_SND_PCM_IEC958=y +CONFIG_SND_DMAENGINE_PCM=y +CONFIG_SND_HWDEP=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_JACK=y +CONFIG_SND_SEQUENCER=y +CONFIG_SND_SEQ_DUMMY=y +# CONFIG_SND_MIXER_OSS is not set +# CONFIG_SND_PCM_OSS is not set +CONFIG_SND_PCM_TIMER=y +# CONFIG_SND_SEQUENCER_OSS is not set +CONFIG_SND_HRTIMER=y +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_MAX_CARDS=32 +# CONFIG_SND_SUPPORT_OLD_API is not set +CONFIG_SND_PROC_FS=y +# CONFIG_SND_VERBOSE_PROCFS is not set +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set +CONFIG_SND_VMASTER=y +CONFIG_SND_RAWMIDI_SEQ=m +# CONFIG_SND_OPL3_LIB_SEQ is not set +# CONFIG_SND_OPL4_LIB_SEQ is not set +# CONFIG_SND_SBAWE_SEQ is not set +# CONFIG_SND_EMU10K1_SEQ is not set +CONFIG_SND_DRIVERS=y +CONFIG_SND_DUMMY=m +CONFIG_SND_ALOOP=m +# CONFIG_SND_VIRMIDI is not set +# CONFIG_SND_MTPAV is not set +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set +# CONFIG_SND_PCI is not set + +# +# HD-Audio +# +CONFIG_SND_HDA_PREALLOC_SIZE=64 +# CONFIG_SND_SPI is not set +CONFIG_SND_USB=y +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_USB_UA101=m +CONFIG_SND_USB_CAIAQ=m +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_6FIRE=m +CONFIG_SND_USB_HIFACE=m +# CONFIG_SND_BCD2000 is not set +# CONFIG_SND_USB_POD is not set +# CONFIG_SND_USB_PODHD is not set +# CONFIG_SND_USB_TONEPORT is not set +# CONFIG_SND_USB_VARIAX is not set +CONFIG_SND_SOC=y +CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y +# CONFIG_SND_ATMEL_SOC is not set +# CONFIG_SND_DESIGNWARE_I2S is not set + +# +# SoC Audio for Freescale CPUs +# + +# +# Common SoC Audio options for Freescale CPUs: +# +# CONFIG_SND_SOC_FSL_ASRC is not set +# CONFIG_SND_SOC_FSL_SAI is not set +# CONFIG_SND_SOC_FSL_SSI is not set +# CONFIG_SND_SOC_FSL_SPDIF is not set +# CONFIG_SND_SOC_FSL_ESAI is not set +# CONFIG_SND_SOC_IMX_AUDMUX is not set +CONFIG_SND_SOC_ROCKCHIP=y +# CONFIG_SND_SOC_ROCKCHIP_FORCE_SRAM is not set +CONFIG_SND_SOC_ROCKCHIP_I2S=y +# CONFIG_SND_SOC_ROCKCHIP_I2S_TDM is not set +# CONFIG_SND_SOC_ROCKCHIP_MULTI_DAIS is not set +# CONFIG_SND_SOC_ROCKCHIP_PDM is not set +CONFIG_SND_SOC_ROCKCHIP_SPDIF=y +# CONFIG_SND_SOC_ROCKCHIP_SPDIFRX is not set +# CONFIG_SND_SOC_ROCKCHIP_VAD is not set +# CONFIG_SND_SOC_ROCKCHIP_DA7219 is not set +# CONFIG_SND_SOC_ROCKCHIP_HDMI_ANALOG is not set +# CONFIG_SND_SOC_ROCKCHIP_HDMI_DP is not set +CONFIG_SND_SOC_ROCKCHIP_MAX98090=m +CONFIG_SND_SOC_ROCKCHIP_MULTICODECS=y +CONFIG_SND_SOC_ROCKCHIP_RT5645=y +# CONFIG_SND_SOC_ROCKCHIP_RT5651_TC358749 is not set +# CONFIG_SND_SOC_ROCKCHIP_CDNDP is not set + +# +# Allwinner SoC Audio support +# +# CONFIG_SND_SUN4I_CODEC is not set +# CONFIG_SND_SOC_XTFPGA_I2S is not set +CONFIG_SND_SOC_I2C_AND_SPI=y + +# +# CODEC drivers +# +# CONFIG_SND_SOC_AC97_CODEC is not set +# CONFIG_SND_SOC_ADAU1701 is not set +# CONFIG_SND_SOC_AK4104 is not set +# CONFIG_SND_SOC_AK4554 is not set +# CONFIG_SND_SOC_AK4613 is not set +# CONFIG_SND_SOC_AK4642 is not set +# CONFIG_SND_SOC_AK5386 is not set +# CONFIG_SND_SOC_ALC5623 is not set +# CONFIG_SND_SOC_CS35L32 is not set +# CONFIG_SND_SOC_CS42L51_I2C is not set +# CONFIG_SND_SOC_CS42L52 is not set +# CONFIG_SND_SOC_CS42L56 is not set +# CONFIG_SND_SOC_CS42L73 is not set +# CONFIG_SND_SOC_CS4265 is not set +# CONFIG_SND_SOC_CS4270 is not set +# CONFIG_SND_SOC_CS4271_I2C is not set +# CONFIG_SND_SOC_CS4271_SPI is not set +# CONFIG_SND_SOC_CS42XX8_I2C is not set +# CONFIG_SND_SOC_CS4349 is not set +# CONFIG_SND_SOC_CX2072X is not set +# CONFIG_SND_SOC_CX20810 is not set +# CONFIG_SND_SOC_DUMMY_CODEC is not set +# CONFIG_SND_SOC_BT_SCO is not set +CONFIG_SND_SOC_ES8316=m +# CONFIG_SND_SOC_ES8323 is not set +CONFIG_SND_SOC_HDMI_CODEC=y +# CONFIG_SND_SOC_ES8328 is not set +# CONFIG_SND_SOC_ES8328_I2C is not set +# CONFIG_SND_SOC_ES8396 is not set +# CONFIG_SND_SOC_GTM601 is not set +# CONFIG_SND_SOC_GVA_CODEC is not set +# CONFIG_SND_SOC_FM1288 is not set +CONFIG_SND_SOC_MAX98090=m +# CONFIG_SND_SOC_PCM1681 is not set +# CONFIG_SND_SOC_PCM1792A is not set +# CONFIG_SND_SOC_PCM512x_I2C is not set +# CONFIG_SND_SOC_PCM512x_SPI is not set +# CONFIG_SND_SOC_RK312X is not set +# CONFIG_SND_SOC_RK3228 is not set +CONFIG_SND_SOC_RK3308=m +CONFIG_SND_SOC_RK3328=m +CONFIG_SND_SOC_RK817=m +CONFIG_SND_SOC_RL6231=y +CONFIG_SND_SOC_RT5616=m +# CONFIG_SND_SOC_RT5631 is not set +CONFIG_SND_SOC_RT5640=m +CONFIG_SND_SOC_RT5645=y +CONFIG_SND_SOC_RT5651=y +# CONFIG_SND_SOC_RT5677_SPI is not set +# CONFIG_SND_SOC_SGTL5000 is not set +# CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set +CONFIG_SND_SOC_SPDIF=y +# CONFIG_SND_SOC_SSM2602_SPI is not set +# CONFIG_SND_SOC_SSM2602_I2C is not set +# CONFIG_SND_SOC_SSM4567 is not set +# CONFIG_SND_SOC_STA32X is not set +# CONFIG_SND_SOC_STA350 is not set +# CONFIG_SND_SOC_STI_SAS is not set +# CONFIG_SND_SOC_TAS2552 is not set +# CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set +# CONFIG_SND_SOC_TC358749X is not set +# CONFIG_SND_SOC_TFA9879 is not set +# CONFIG_SND_SOC_TLV320AIC23_I2C is not set +# CONFIG_SND_SOC_TLV320AIC23_SPI is not set +# CONFIG_SND_SOC_TLV320AIC31XX is not set +# CONFIG_SND_SOC_TLV320AIC3X is not set +CONFIG_SND_SOC_TS3A227E=m +# CONFIG_SND_SOC_WM8510 is not set +# CONFIG_SND_SOC_WM8523 is not set +# CONFIG_SND_SOC_WM8580 is not set +# CONFIG_SND_SOC_WM8711 is not set +# CONFIG_SND_SOC_WM8728 is not set +# CONFIG_SND_SOC_WM8731 is not set +# CONFIG_SND_SOC_WM8737 is not set +# CONFIG_SND_SOC_WM8741 is not set +# CONFIG_SND_SOC_WM8750 is not set +# CONFIG_SND_SOC_WM8753 is not set +# CONFIG_SND_SOC_WM8770 is not set +# CONFIG_SND_SOC_WM8776 is not set +# CONFIG_SND_SOC_WM8804_I2C is not set +# CONFIG_SND_SOC_WM8804_SPI is not set +# CONFIG_SND_SOC_WM8903 is not set +# CONFIG_SND_SOC_WM8962 is not set +# CONFIG_SND_SOC_WM8978 is not set +# CONFIG_SND_SOC_TPA6130A2 is not set +CONFIG_SND_SIMPLE_CARD=y +# CONFIG_SOUND_PRIME is not set + +# +# HID support +# +CONFIG_HID=y +CONFIG_HID_BATTERY_STRENGTH=y +CONFIG_HIDRAW=y +CONFIG_UHID=y +CONFIG_HID_GENERIC=y + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=m +CONFIG_HID_ACRUX=m +# CONFIG_HID_ACRUX_FF is not set +CONFIG_HID_APPLE=m +CONFIG_HID_APPLEIR=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BELKIN=m +CONFIG_HID_BETOP_FF=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +CONFIG_HID_CORSAIR=m +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_CP2112=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_DRAGONRISE_FF=y +CONFIG_HID_EMS_FF=m +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EZKEY=m +CONFIG_HID_GEMBIRD=m +# CONFIG_HID_GFRM is not set +CONFIG_HID_HOLTEK=m +# CONFIG_HOLTEK_FF is not set +CONFIG_HID_GT683R=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WALTOP=m +CONFIG_HID_GYRATION=m +CONFIG_HID_ICADE=m +CONFIG_HID_TWINHAN=m +CONFIG_HID_KENSINGTON=y +CONFIG_HID_LCPOWER=m +# CONFIG_HID_LENOVO is not set +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_HID_LOGITECH_HIDPP=m +CONFIG_LOGITECH_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGIG940_FF=y +CONFIG_LOGIWHEELS_FF=y +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +# CONFIG_PANTHERLORD_FF is not set +# CONFIG_HID_PENMOUNT is not set +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +# CONFIG_HID_PICOLCD_FB is not set +# CONFIG_HID_PICOLCD_BACKLIGHT is not set +# CONFIG_HID_PICOLCD_LEDS is not set +# CONFIG_HID_PICOLCD_CIR is not set +CONFIG_HID_PLANTRONICS=m +# CONFIG_HID_PRIMAX is not set +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SONY=m +CONFIG_SONY_FF=y +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +# CONFIG_HID_RMI is not set +CONFIG_HID_GREENASIA=m +# CONFIG_GREENASIA_FF is not set +CONFIG_HID_SMARTJOYPLUS=m +# CONFIG_SMARTJOYPLUS_FF is not set +# CONFIG_HID_TIVO is not set +CONFIG_HID_TOPSEED=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_THRUSTMASTER_FF=y +CONFIG_HID_WACOM=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +# CONFIG_ZEROPLUS_FF is not set +CONFIG_HID_ZYDACRON=m +CONFIG_HID_SENSOR_HUB=m +CONFIG_HID_SENSOR_CUSTOM_SENSOR=m +# CONFIG_HID_RKVR is not set +# CONFIG_HID_ALPS is not set + +# +# USB HID support +# +CONFIG_USB_HID=y +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y + +# +# I2C HID support +# +CONFIG_I2C_HID=m +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + +# +# Miscellaneous USB options +# +# CONFIG_USB_DEFAULT_PERSIST is not set +# CONFIG_USB_DYNAMIC_MINORS is not set +CONFIG_USB_OTG=y +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +# CONFIG_USB_OTG_FSM is not set +# CONFIG_USB_ULPI_BUS is not set +CONFIG_USB_MON=m +# CONFIG_USB_WUSB_CBAF is not set + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_PCI=y +CONFIG_USB_XHCI_PLATFORM=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_PCI=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_ISP1362_HCD is not set +# CONFIG_USB_FOTG210_HCD is not set +# CONFIG_USB_MAX3421_HCD is not set +CONFIG_USB_OHCI_HCD=y +# CONFIG_USB_OHCI_HCD_PCI is not set +CONFIG_USB_OHCI_HCD_PLATFORM=y +# CONFIG_USB_UHCI_HCD is not set +# CONFIG_USB_U132_HCD is not set +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=y +CONFIG_USB_PRINTER=m +CONFIG_USB_WDM=y +CONFIG_USB_TMC=m + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=y +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_REALTEK_AUTOPM=y +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_UAS=y + +# +# USB Imaging devices +# +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set +# CONFIG_USB_MUSB_HDRC is not set +CONFIG_USB_DWC3=y +# CONFIG_USB_DWC3_HOST is not set +# CONFIG_USB_DWC3_GADGET is not set +CONFIG_USB_DWC3_DUAL_ROLE=y + +# +# Platform Glue Driver Support +# +# CONFIG_USB_DWC3_PCI is not set +CONFIG_USB_DWC3_OF_SIMPLE=y +CONFIG_USB_DWC3_ROCKCHIP=y +CONFIG_USB_DWC3_ROCKCHIP_INNO=y +CONFIG_USB_DWC2=y +# CONFIG_USB_DWC2_HOST is not set + +# +# Gadget/Dual-role mode requires USB Gadget support to be enabled +# +# CONFIG_USB_DWC2_PERIPHERAL is not set +CONFIG_USB_DWC2_DUAL_ROLE=y +# CONFIG_USB_DWC2_PCI is not set +# CONFIG_USB_DWC2_DEBUG is not set +# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set +# CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_ISP1760 is not set + +# +# USB port drivers +# +CONFIG_USB_SERIAL=y +# CONFIG_USB_SERIAL_CONSOLE is not set +CONFIG_USB_SERIAL_GENERIC=y +# CONFIG_USB_SERIAL_SIMPLE is not set +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=y +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_CP210X=y +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_FTDI_SIO=y +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +CONFIG_USB_SERIAL_F81232=m +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN=m +# CONFIG_USB_SERIAL_KEYSPAN_MPR is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19QW is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +CONFIG_USB_SERIAL_METRO=m +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7840=m +CONFIG_USB_SERIAL_MXUPORT=m +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_PL2303=y +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QUALCOMM=y +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SAFE=m +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_WWAN=y +CONFIG_USB_SERIAL_OPTION=y +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_XSENS_MT=m +CONFIG_USB_SERIAL_WISHBONE=m +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_QT2=m +CONFIG_USB_SERIAL_DEBUG=m + +# +# USB Miscellaneous drivers +# +CONFIG_USB_EMI62=m +CONFIG_USB_EMI26=m +CONFIG_USB_ADUTUX=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_RIO500=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_LCD=m +CONFIG_USB_LED=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_APPLEDISPLAY=m +# CONFIG_USB_SISUSBVGA is not set +CONFIG_USB_LD=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_TEST=m +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_YUREX=m +CONFIG_USB_EZUSB_FX2=m +# CONFIG_USB_HSIC_USB3503 is not set +# CONFIG_USB_LINK_LAYER_TEST is not set +# CONFIG_USB_CHAOSKEY is not set +CONFIG_USB_ATM=m +CONFIG_USB_SPEEDTOUCH=m +CONFIG_USB_CXACRU=m +CONFIG_USB_UEAGLEATM=m +CONFIG_USB_XUSBATM=m + +# +# USB Physical Layer drivers +# +CONFIG_USB_PHY=y +# CONFIG_USB_OTG_WAKELOCK is not set +# CONFIG_NOP_USB_XCEIV is not set +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_USB_ISP1301 is not set +# CONFIG_USB_ULPI is not set +# CONFIG_DUAL_ROLE_USB_INTF is not set +CONFIG_USB_GADGET=y +# CONFIG_USB_GADGET_DEBUG is not set +CONFIG_USB_GADGET_DEBUG_FILES=y +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_VBUS_DRAW=500 +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 + +# +# USB Peripheral Controller +# +# CONFIG_USB_FOTG210_UDC is not set +# CONFIG_USB_GR_UDC is not set +# CONFIG_USB_R8A66597 is not set +# CONFIG_USB_PXA27X is not set +# CONFIG_USB_MV_UDC is not set +# CONFIG_USB_MV_U3D is not set +# CONFIG_USB_M66592 is not set +# CONFIG_USB_BDC_UDC is not set +# CONFIG_USB_AMD5536UDC is not set +# CONFIG_USB_NET2272 is not set +# CONFIG_USB_NET2280 is not set +# CONFIG_USB_GOKU is not set +# CONFIG_USB_EG20T is not set +# CONFIG_USB_GADGET_XILINX is not set +# CONFIG_USB_DUMMY_HCD is not set +CONFIG_USB_LIBCOMPOSITE=y +CONFIG_USB_F_ACM=y +CONFIG_USB_U_SERIAL=y +CONFIG_USB_F_MASS_STORAGE=y +CONFIG_USB_F_FS=y +CONFIG_USB_CONFIGFS=y +# CONFIG_USB_CONFIGFS_SERIAL is not set +CONFIG_USB_CONFIGFS_ACM=y +# CONFIG_USB_CONFIGFS_OBEX is not set +# CONFIG_USB_CONFIGFS_NCM is not set +# CONFIG_USB_CONFIGFS_ECM is not set +# CONFIG_USB_CONFIGFS_ECM_SUBSET is not set +# CONFIG_USB_CONFIGFS_RNDIS is not set +# CONFIG_USB_CONFIGFS_EEM is not set +# CONFIG_USB_CONFIGFS_PHONET is not set +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +# CONFIG_USB_CONFIGFS_F_LB_SS is not set +CONFIG_USB_CONFIGFS_F_FS=y +# CONFIG_USB_CONFIGFS_F_MTP is not set +# CONFIG_USB_CONFIGFS_F_ACC is not set +CONFIG_USB_CONFIGFS_UEVENT=y +# CONFIG_USB_CONFIGFS_F_UAC1 is not set +# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set +# CONFIG_USB_CONFIGFS_F_UAC2 is not set +# CONFIG_USB_CONFIGFS_F_MIDI is not set +# CONFIG_USB_CONFIGFS_F_HID is not set +# CONFIG_USB_CONFIGFS_F_UVC is not set +# CONFIG_USB_CONFIGFS_F_PRINTER is not set +# CONFIG_USB_ZERO is not set +# CONFIG_USB_AUDIO is not set +# CONFIG_USB_ETH is not set +# CONFIG_USB_G_NCM is not set +# CONFIG_USB_GADGETFS is not set +# CONFIG_USB_FUNCTIONFS is not set +# CONFIG_USB_MASS_STORAGE is not set +# CONFIG_USB_G_SERIAL is not set +# CONFIG_USB_MIDI_GADGET is not set +# CONFIG_USB_G_PRINTER is not set +# CONFIG_USB_CDC_COMPOSITE is not set +# CONFIG_USB_G_NOKIA is not set +# CONFIG_USB_G_ACM_MS is not set +# CONFIG_USB_G_MULTI is not set +# CONFIG_USB_G_HID is not set +# CONFIG_USB_G_DBGP is not set +# CONFIG_USB_G_WEBCAM is not set + +# +# ROCKCHIP USB Support +# +# CONFIG_USB20_HOST is not set +# CONFIG_USB20_OTG is not set +# CONFIG_USB_LED_TRIG is not set +# CONFIG_UWB is not set +CONFIG_MMC=y +# CONFIG_MMC_DEBUG is not set +# CONFIG_MMC_EMBEDDED_SDIO is not set +# CONFIG_MMC_PARANOID_SD_INIT is not set + +# +# MMC/SD/SDIO Card Drivers +# +CONFIG_MMC_BLOCK=y +CONFIG_MMC_BLOCK_MINORS=32 +CONFIG_MMC_BLOCK_BOUNCE=y +# CONFIG_SDIO_UART is not set +CONFIG_MMC_TEST=y +# CONFIG_MMC_SIMULATE_MAX_SPEED is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +# CONFIG_MMC_ARMMMCI is not set +CONFIG_MMC_SDHCI=y +# CONFIG_MMC_SDHCI_PCI is not set +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MMC_SDHCI_OF_ARASAN=y +# CONFIG_MMC_SDHCI_OF_AT91 is not set +# CONFIG_MMC_SDHCI_F_SDH30 is not set +# CONFIG_MMC_TIFM_SD is not set +# CONFIG_MMC_SPI is not set +# CONFIG_MMC_CB710 is not set +# CONFIG_MMC_VIA_SDMMC is not set +CONFIG_MMC_DW=y +CONFIG_MMC_DW_PLTFM=y +# CONFIG_MMC_DW_EXYNOS is not set +# CONFIG_MMC_DW_K3 is not set +# CONFIG_MMC_DW_PCI is not set +CONFIG_MMC_DW_ROCKCHIP=y +# CONFIG_MMC_VUB300 is not set +# CONFIG_MMC_USHC is not set +# CONFIG_MMC_USDHI6ROL0 is not set +# CONFIG_MMC_TOSHIBA_PCI is not set +# CONFIG_MMC_MTK is not set +# CONFIG_MEMSTICK is not set +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +# CONFIG_LEDS_CLASS_FLASH is not set + +# +# LED drivers +# +# CONFIG_LEDS_BCM6328 is not set +# CONFIG_LEDS_BCM6358 is not set +# CONFIG_LEDS_LM3530 is not set +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_PCA9532 is not set +CONFIG_LEDS_GPIO=y +# CONFIG_LEDS_LP3944 is not set +# CONFIG_LEDS_LP5521 is not set +# CONFIG_LEDS_LP5523 is not set +# CONFIG_LEDS_LP5562 is not set +# CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_LP8860 is not set +# CONFIG_LEDS_PCA955X is not set +CONFIG_LEDS_PCA963X=m +# CONFIG_LEDS_DAC124S085 is not set +# CONFIG_LEDS_PWM is not set +# CONFIG_LEDS_REGULATOR is not set +# CONFIG_LEDS_BD2802 is not set +# CONFIG_LEDS_INTEL_SS4200 is not set +# CONFIG_LEDS_LT3593 is not set +# CONFIG_LEDS_TCA6507 is not set +# CONFIG_LEDS_TLC591XX is not set +# CONFIG_LEDS_LM355x is not set +# CONFIG_LEDS_IS31FL32XX is not set + +# +# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) +# +# CONFIG_LEDS_BLINKM is not set +# CONFIG_LEDS_SYSCON is not set + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_ONESHOT=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_GPIO=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + +# +# iptables trigger is under Netfilter config (LED target) +# +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +# CONFIG_LEDS_TRIGGER_MULTI_CTRL is not set +CONFIG_SWITCH=y +# CONFIG_SWITCH_GPIO is not set +# CONFIG_ACCESSIBILITY is not set +# CONFIG_INFINIBAND is not set +CONFIG_EDAC_SUPPORT=y +# CONFIG_EDAC is not set +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +# CONFIG_RTC_DEBUG is not set + +# +# RTC interfaces +# +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +# CONFIG_RTC_DRV_TEST is not set + +# +# I2C RTC drivers +# +# CONFIG_RTC_DRV_ABB5ZES3 is not set +CONFIG_RTC_DRV_ABX80X=m +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_DS1374=m +# CONFIG_RTC_DRV_DS1374_WDT is not set +CONFIG_RTC_DRV_DS1672=m +CONFIG_RTC_DRV_DS3232=m +# CONFIG_RTC_DRV_FAKE is not set +CONFIG_RTC_DRV_HYM8563=m +CONFIG_RTC_DRV_MAX6900=m +CONFIG_RTC_DRV_RK808=y +# CONFIG_RTC_DRV_RK_TIMER is not set +CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_ISL1208=m +CONFIG_RTC_DRV_ISL12022=m +CONFIG_RTC_DRV_ISL12057=m +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_PCF8563=m +CONFIG_RTC_DRV_PCF85063=m +CONFIG_RTC_DRV_PCF8583=m +CONFIG_RTC_DRV_M41T80=m +# CONFIG_RTC_DRV_M41T80_WDT is not set +CONFIG_RTC_DRV_BQ32K=m +CONFIG_RTC_DRV_S35390A=m +CONFIG_RTC_DRV_FM3130=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_RX8025=m +CONFIG_RTC_DRV_EM3027=m +# CONFIG_RTC_DRV_RV3029C2 is not set +# CONFIG_RTC_DRV_RV8803 is not set + +# +# SPI RTC drivers +# +CONFIG_RTC_DRV_M41T93=m +CONFIG_RTC_DRV_M41T94=m +CONFIG_RTC_DRV_DS1305=m +CONFIG_RTC_DRV_DS1343=m +# CONFIG_RTC_DRV_DS1347 is not set +CONFIG_RTC_DRV_DS1390=m +# CONFIG_RTC_DRV_MAX6902 is not set +CONFIG_RTC_DRV_R9701=m +CONFIG_RTC_DRV_RS5C348=m +CONFIG_RTC_DRV_DS3234=m +CONFIG_RTC_DRV_PCF2123=m +# CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_MCP795 is not set + +# +# Platform RTC drivers +# +# CONFIG_RTC_DRV_DS1286 is not set +# CONFIG_RTC_DRV_DS1511 is not set +# CONFIG_RTC_DRV_DS1553 is not set +# CONFIG_RTC_DRV_DS1685_FAMILY is not set +# CONFIG_RTC_DRV_DS1742 is not set +# CONFIG_RTC_DRV_DS2404 is not set +# CONFIG_RTC_DRV_EFI is not set +# CONFIG_RTC_DRV_STK17TA8 is not set +# CONFIG_RTC_DRV_M48T86 is not set +# CONFIG_RTC_DRV_M48T35 is not set +# CONFIG_RTC_DRV_M48T59 is not set +# CONFIG_RTC_DRV_MSM6242 is not set +# CONFIG_RTC_DRV_BQ4802 is not set +# CONFIG_RTC_DRV_RP5C01 is not set +# CONFIG_RTC_DRV_V3020 is not set +# CONFIG_RTC_DRV_ZYNQMP is not set + +# +# on-CPU RTC drivers +# +# CONFIG_RTC_DRV_PL030 is not set +# CONFIG_RTC_DRV_PL031 is not set +# CONFIG_RTC_DRV_SNVS is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set + +# +# DMA Devices +# +CONFIG_DMA_ENGINE=y +CONFIG_DMA_OF=y +# CONFIG_AMBA_PL08X is not set +# CONFIG_FSL_EDMA is not set +# CONFIG_INTEL_IDMA64 is not set +CONFIG_PL330_DMA=y +# CONFIG_DW_DMAC is not set +# CONFIG_DW_DMAC_PCI is not set + +# +# DMA Clients +# +# CONFIG_ASYNC_TX_DMA is not set +# CONFIG_DMATEST is not set +# CONFIG_AUXDISPLAY is not set +CONFIG_UIO=m +# CONFIG_UIO_CIF is not set +CONFIG_UIO_PDRV_GENIRQ=m +# CONFIG_UIO_DMEM_GENIRQ is not set +# CONFIG_UIO_AEC is not set +# CONFIG_UIO_SERCOS3 is not set +# CONFIG_UIO_PCI_GENERIC is not set +# CONFIG_UIO_NETX is not set +# CONFIG_UIO_PRUSS is not set +# CONFIG_UIO_MF624 is not set +# CONFIG_VFIO is not set +# CONFIG_VIRT_DRIVERS is not set + +# +# Virtio drivers +# +# CONFIG_VIRTIO_PCI is not set +# CONFIG_VIRTIO_MMIO is not set + +# +# Microsoft Hyper-V guest support +# +CONFIG_STAGING=y +CONFIG_PRISM2_USB=m +# CONFIG_COMEDI is not set +# CONFIG_RTL8192U is not set +# CONFIG_RTLLIB is not set +# CONFIG_R8712U is not set +# CONFIG_R8188EU is not set +# CONFIG_R8723AU is not set +# CONFIG_RTS5208 is not set +# CONFIG_VT6655 is not set +CONFIG_VT6656=m + +# +# IIO staging drivers +# + +# +# Accelerometers +# +# CONFIG_ADIS16201 is not set +# CONFIG_ADIS16203 is not set +# CONFIG_ADIS16204 is not set +# CONFIG_ADIS16209 is not set +# CONFIG_ADIS16220 is not set +# CONFIG_ADIS16240 is not set +# CONFIG_LIS3L02DQ is not set +# CONFIG_SCA3000 is not set + +# +# Analog to digital converters +# +# CONFIG_AD7606 is not set +# CONFIG_AD7780 is not set +# CONFIG_AD7816 is not set +# CONFIG_AD7192 is not set +# CONFIG_AD7280 is not set + +# +# Analog digital bi-direction converters +# +# CONFIG_ADT7316 is not set + +# +# Capacitance to digital converters +# +# CONFIG_AD7150 is not set +# CONFIG_AD7152 is not set +# CONFIG_AD7746 is not set + +# +# Direct Digital Synthesis +# +# CONFIG_AD9832 is not set +# CONFIG_AD9834 is not set + +# +# Digital gyroscope sensors +# +# CONFIG_ADIS16060 is not set + +# +# Network Analyzer, Impedance Converters +# +# CONFIG_AD5933 is not set +# CONFIG_INV_MPU_IIO is not set + +# +# Light sensors +# +CONFIG_SENSORS_ISL29018=m +# CONFIG_SENSORS_ISL29028 is not set +CONFIG_TSL2583=m +# CONFIG_TSL2x7x is not set + +# +# Magnetometer sensors +# +# CONFIG_SENSORS_HMC5843_I2C is not set +# CONFIG_SENSORS_HMC5843_SPI is not set + +# +# Active energy metering IC +# +# CONFIG_ADE7753 is not set +# CONFIG_ADE7754 is not set +# CONFIG_ADE7758 is not set +# CONFIG_ADE7759 is not set +# CONFIG_ADE7854 is not set + +# +# Resolver to digital converters +# +# CONFIG_AD2S90 is not set +# CONFIG_AD2S1200 is not set +# CONFIG_AD2S1210 is not set + +# +# Triggers - standalone +# +# CONFIG_IIO_PERIODIC_RTC_TRIGGER is not set +# CONFIG_IIO_SIMPLE_DUMMY is not set +# CONFIG_FB_SM750 is not set +# CONFIG_FB_XGI is not set + +# +# Speakup console speech +# +CONFIG_SPEAKUP=m +# CONFIG_SPEAKUP_SYNTH_ACNTSA is not set +# CONFIG_SPEAKUP_SYNTH_APOLLO is not set +# CONFIG_SPEAKUP_SYNTH_AUDPTR is not set +# CONFIG_SPEAKUP_SYNTH_BNS is not set +# CONFIG_SPEAKUP_SYNTH_DECTLK is not set +# CONFIG_SPEAKUP_SYNTH_DECEXT is not set +# CONFIG_SPEAKUP_SYNTH_LTLK is not set +CONFIG_SPEAKUP_SYNTH_SOFT=m +# CONFIG_SPEAKUP_SYNTH_SPKOUT is not set +# CONFIG_SPEAKUP_SYNTH_TXPRT is not set +# CONFIG_SPEAKUP_SYNTH_DUMMY is not set +# CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set +# CONFIG_STAGING_MEDIA is not set + +# +# Android +# +# CONFIG_ASHMEM is not set +# CONFIG_ANDROID_TIMED_OUTPUT is not set +# CONFIG_ANDROID_LOW_MEMORY_KILLER is not set +# CONFIG_SYNC is not set +# CONFIG_ANDROID_VSOC is not set +# CONFIG_ION is not set +CONFIG_FIQ_DEBUGGER=y +CONFIG_FIQ_DEBUGGER_NO_SLEEP=y +# CONFIG_FIQ_DEBUGGER_WAKEUP_IRQ_ALWAYS_ON is not set +CONFIG_FIQ_DEBUGGER_CONSOLE=y +CONFIG_FIQ_DEBUGGER_CONSOLE_DEFAULT_ENABLE=y +# CONFIG_FIQ_DEBUGGER_TRUST_ZONE is not set +# CONFIG_FIQ_DEBUGGER_UART_OVERLAY is not set +# CONFIG_FIQ_WATCHDOG is not set +# CONFIG_RK_CONSOLE_THREAD is not set +# CONFIG_STAGING_BOARD is not set +# CONFIG_WIMAX_GDM72XX is not set +# CONFIG_LTE_GDM724X is not set +# CONFIG_LUSTRE_FS is not set +# CONFIG_DGNC is not set +# CONFIG_DGAP is not set +# CONFIG_GS_FPGABOOT is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +CONFIG_FB_TFT=m +CONFIG_FB_TFT_AGM1264K_FL=m +CONFIG_FB_TFT_BD663474=m +CONFIG_FB_TFT_HX8340BN=m +CONFIG_FB_TFT_HX8347D=m +CONFIG_FB_TFT_HX8353D=m +CONFIG_FB_TFT_HX8357D=m +CONFIG_FB_TFT_ILI9163=m +CONFIG_FB_TFT_ILI9320=m +CONFIG_FB_TFT_ILI9325=m +CONFIG_FB_TFT_ILI9340=m +CONFIG_FB_TFT_ILI9341=m +CONFIG_FB_TFT_ILI9481=m +CONFIG_FB_TFT_ILI9486=m +CONFIG_FB_TFT_PCD8544=m +CONFIG_FB_TFT_RA8875=m +CONFIG_FB_TFT_S6D02A1=m +CONFIG_FB_TFT_S6D1121=m +CONFIG_FB_TFT_SSD1289=m +CONFIG_FB_TFT_SSD1306=m +CONFIG_FB_TFT_SSD1331=m +CONFIG_FB_TFT_SSD1351=m +CONFIG_FB_TFT_ST7735R=m +CONFIG_FB_TFT_ST7789V=m +CONFIG_FB_TFT_TINYLCD=m +CONFIG_FB_TFT_TLS8204=m +# CONFIG_FB_TFT_UC1611 is not set +CONFIG_FB_TFT_UC1701=m +CONFIG_FB_TFT_UPD161704=m +CONFIG_FB_TFT_WATTEROTT=m +CONFIG_FB_FLEX=m +CONFIG_FB_TFT_FBTFT_DEVICE=m +# CONFIG_FSL_MC_BUS is not set +# CONFIG_WILC1000_DRIVER is not set +# CONFIG_MOST is not set +# CONFIG_POWERVR_ROGUE_N is not set +# CONFIG_GOLDFISH is not set +CONFIG_CHROME_PLATFORMS=y +# CONFIG_CROS_EC_CHARDEV is not set +CONFIG_CROS_EC_PROTO=y +CONFIG_CLKDEV_LOOKUP=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y + +# +# Common Clock Framework +# +# CONFIG_COMMON_CLK_VERSATILE is not set +CONFIG_COMMON_CLK_RK808=y +# CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_SI514 is not set +# CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_CDCE925 is not set +# CONFIG_CLK_QORIQ is not set +CONFIG_COMMON_CLK_XGENE=y +# CONFIG_COMMON_CLK_PWM is not set +# CONFIG_COMMON_CLK_PXA is not set +# CONFIG_COMMON_CLK_CDCE706 is not set + +# +# Hardware Spinlock drivers +# +# CONFIG_HWSPINLOCK_ROCKCHIP is not set + +# +# Clock Source drivers +# +CONFIG_CLKSRC_OF=y +CONFIG_CLKSRC_PROBE=y +CONFIG_ROCKCHIP_TIMER=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y +# CONFIG_ARM_ARCH_TIMER_VCT_ACCESS is not set +# CONFIG_ARM_TIMER_SP804 is not set +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set +CONFIG_MAILBOX=y +# CONFIG_ARM_MHU is not set +# CONFIG_PL320_MBOX is not set +# CONFIG_ALTERA_MBOX is not set +# CONFIG_MAILBOX_TEST is not set +# CONFIG_RK3368_MBOX is not set +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y + +# +# Generic IOMMU Pagetable Support +# +# CONFIG_IOMMU_IO_PGTABLE_LPAE is not set +CONFIG_IOMMU_IOVA=y +CONFIG_OF_IOMMU=y +CONFIG_IOMMU_DMA=y +CONFIG_ROCKCHIP_IOMMU=y +# CONFIG_RK_IOMMU is not set +# CONFIG_ARM_SMMU is not set +# CONFIG_ARM_SMMU_V3 is not set + +# +# Remoteproc drivers +# +# CONFIG_STE_MODEM_RPROC is not set + +# +# Rpmsg drivers +# + +# +# SOC (System On Chip) specific Drivers +# + +# +# Rockchip CPU selection +# +CONFIG_CPU_PX30=y +# CONFIG_CPU_RK1808 is not set +# CONFIG_CPU_RK3308 is not set +CONFIG_CPU_RK3328=y +# CONFIG_CPU_RK3366 is not set +CONFIG_CPU_RK3368=y +CONFIG_CPU_RK3399=y +CONFIG_ANDROID_VERSION=0x07010000 +CONFIG_ROCKCHIP_CPUINFO=y +# CONFIG_ROCKCHIP_DEVICEINFO is not set +CONFIG_ROCKCHIP_IPA=y +CONFIG_ROCKCHIP_OPP=y +# CONFIG_ROCKCHIP_PM_TEST is not set +CONFIG_ROCKCHIP_GRF=y +CONFIG_ROCKCHIP_PM_DOMAINS=y +# CONFIG_ROCKCHIP_PVTM is not set +CONFIG_ROCKCHIP_SUSPEND_MODE=y +CONFIG_ROCKCHIP_SYSTEM_MONITOR=y +# CONFIG_ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER is not set +# CONFIG_SUNXI_SRAM is not set +# CONFIG_SOC_TI is not set +CONFIG_VENDOR_FRIENDLYELEC=y +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_USERSPACE=y + +# +# DEVFREQ Drivers +# +# CONFIG_ARM_ROCKCHIP_BUS_DEVFREQ is not set +CONFIG_ARM_ROCKCHIP_DMC_DEVFREQ=y +CONFIG_PM_DEVFREQ_EVENT=y +CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI=y +# CONFIG_DEVFREQ_EVENT_ROCKCHIP_NOCP is not set +CONFIG_EXTCON=y + +# +# Extcon Device Drivers +# +# CONFIG_EXTCON_ADC_JACK is not set +# CONFIG_EXTCON_GPIO is not set +# CONFIG_EXTCON_RT8973A is not set +# CONFIG_EXTCON_SM5502 is not set +# CONFIG_EXTCON_USB_GPIO is not set +CONFIG_MEMORY=y +# CONFIG_ARM_PL172_MPMC is not set +CONFIG_IIO=y +CONFIG_IIO_BUFFER=y +# CONFIG_IIO_BUFFER_CB is not set +CONFIG_IIO_KFIFO_BUF=y +CONFIG_IIO_TRIGGER=y +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 + +# +# Accelerometers +# +# CONFIG_BMA180 is not set +# CONFIG_BMC150_ACCEL is not set +# CONFIG_HID_SENSOR_ACCEL_3D is not set +# CONFIG_IIO_ST_ACCEL_3AXIS is not set +# CONFIG_KXSD9 is not set +# CONFIG_KXCJK1013 is not set +# CONFIG_MMA8452 is not set +# CONFIG_MMA9551 is not set +# CONFIG_MMA9553 is not set +# CONFIG_MXC4005 is not set +# CONFIG_STK8312 is not set +# CONFIG_STK8BA50 is not set + +# +# Analog to digital converters +# +# CONFIG_AD7266 is not set +# CONFIG_AD7291 is not set +# CONFIG_AD7298 is not set +# CONFIG_AD7476 is not set +# CONFIG_AD7791 is not set +# CONFIG_AD7793 is not set +# CONFIG_AD7887 is not set +# CONFIG_AD7923 is not set +# CONFIG_AD799X is not set +# CONFIG_CC10001_ADC is not set +# CONFIG_GPIO_MUXADC is not set +# CONFIG_HI8435 is not set +# CONFIG_MAX1027 is not set +# CONFIG_MAX1363 is not set +CONFIG_MCP320X=m +CONFIG_MCP3422=m +# CONFIG_NAU7802 is not set +CONFIG_ROCKCHIP_SARADC=y +# CONFIG_TI_ADC081C is not set +# CONFIG_TI_ADC128S052 is not set +# CONFIG_VF610_ADC is not set + +# +# Amplifiers +# +# CONFIG_AD8366 is not set + +# +# Chemical Sensors +# +# CONFIG_VZ89X is not set + +# +# Hid Sensor IIO Common +# +# CONFIG_HID_SENSOR_IIO_COMMON is not set +CONFIG_IIO_MS_SENSORS_I2C=m + +# +# SSP Sensor Common +# +# CONFIG_IIO_SSP_SENSORHUB is not set + +# +# Digital to analog converters +# +# CONFIG_AD5064 is not set +# CONFIG_AD5360 is not set +# CONFIG_AD5380 is not set +# CONFIG_AD5421 is not set +# CONFIG_AD5446 is not set +# CONFIG_AD5449 is not set +# CONFIG_AD5504 is not set +# CONFIG_AD5624R_SPI is not set +# CONFIG_AD5686 is not set +# CONFIG_AD5755 is not set +# CONFIG_AD5764 is not set +# CONFIG_AD5791 is not set +# CONFIG_AD7303 is not set +# CONFIG_M62332 is not set +# CONFIG_MAX517 is not set +# CONFIG_MAX5821 is not set +# CONFIG_MCP4725 is not set +# CONFIG_MCP4922 is not set + +# +# Frequency Synthesizers DDS/PLL +# + +# +# Clock Generator/Distribution +# +# CONFIG_AD9523 is not set + +# +# Phase-Locked Loop (PLL) frequency synthesizers +# +# CONFIG_ADF4350 is not set + +# +# Digital gyroscope sensors +# +# CONFIG_ADIS16080 is not set +# CONFIG_ADIS16130 is not set +# CONFIG_ADIS16136 is not set +# CONFIG_ADIS16260 is not set +# CONFIG_ADXRS450 is not set +# CONFIG_BMG160 is not set +# CONFIG_HID_SENSOR_GYRO_3D is not set +# CONFIG_IIO_ST_GYRO_3AXIS is not set +# CONFIG_ITG3200 is not set + +# +# Humidity sensors +# +CONFIG_DHT11=m +# CONFIG_HDC100X is not set +CONFIG_HTU21=m +# CONFIG_SI7005 is not set +# CONFIG_SI7020 is not set + +# +# Inertial measurement units +# +# CONFIG_ADIS16400 is not set +# CONFIG_ADIS16480 is not set +# CONFIG_KMX61 is not set +# CONFIG_INV_MPU6050_IIO is not set + +# +# Light sensors +# +# CONFIG_ADJD_S311 is not set +# CONFIG_AL3320A is not set +# CONFIG_APDS9300 is not set +# CONFIG_APDS9960 is not set +# CONFIG_BH1750 is not set +# CONFIG_CM32181 is not set +# CONFIG_CM3232 is not set +# CONFIG_CM3323 is not set +# CONFIG_CM36651 is not set +# CONFIG_GP2AP020A00F is not set +# CONFIG_ISL29125 is not set +# CONFIG_HID_SENSOR_ALS is not set +# CONFIG_HID_SENSOR_PROX is not set +# CONFIG_JSA1212 is not set +# CONFIG_RPR0521 is not set +# CONFIG_LTR501 is not set +# CONFIG_OPT3001 is not set +# CONFIG_PA12203001 is not set +# CONFIG_STK3310 is not set +# CONFIG_TCS3414 is not set +# CONFIG_TCS3472 is not set +CONFIG_SENSORS_TSL2563=m +# CONFIG_TSL4531 is not set +# CONFIG_US5182D is not set +# CONFIG_VCNL4000 is not set +# CONFIG_VL6180 is not set + +# +# Magnetometer sensors +# +# CONFIG_AK8975 is not set +# CONFIG_AK09911 is not set +# CONFIG_BMC150_MAGN is not set +# CONFIG_MAG3110 is not set +# CONFIG_HID_SENSOR_MAGNETOMETER_3D is not set +# CONFIG_MMC35240 is not set +# CONFIG_IIO_ST_MAGN_3AXIS is not set + +# +# Inclinometer sensors +# +# CONFIG_HID_SENSOR_INCLINOMETER_3D is not set +# CONFIG_HID_SENSOR_DEVICE_ROTATION is not set + +# +# Triggers - standalone +# +# CONFIG_IIO_INTERRUPT_TRIGGER is not set +CONFIG_IIO_SYSFS_TRIGGER=y + +# +# Digital potentiometers +# +# CONFIG_MCP4531 is not set + +# +# Pressure sensors +# +# CONFIG_BMP280 is not set +# CONFIG_HID_SENSOR_PRESS is not set +# CONFIG_MPL115 is not set +# CONFIG_MPL3115 is not set +# CONFIG_MS5611 is not set +# CONFIG_MS5637 is not set +# CONFIG_IIO_ST_PRESS is not set +# CONFIG_T5403 is not set + +# +# Lightning sensors +# +# CONFIG_AS3935 is not set + +# +# Proximity sensors +# +# CONFIG_LIDAR_LITE_V2 is not set +# CONFIG_SRF04 is not set +# CONFIG_SX9500 is not set + +# +# Temperature sensors +# +# CONFIG_MLX90614 is not set +# CONFIG_TMP006 is not set +# CONFIG_TSYS01 is not set +# CONFIG_TSYS02D is not set +# CONFIG_NTB is not set +# CONFIG_VME_BUS is not set +CONFIG_PWM=y +CONFIG_PWM_SYSFS=y +# CONFIG_PWM_CROS_EC is not set +# CONFIG_PWM_FSL_FTM is not set +# CONFIG_PWM_GPIO is not set +CONFIG_PWM_PCA9685=m +CONFIG_PWM_ROCKCHIP=y +# CONFIG_PWM_ROCKCHIP_I2S is not set +CONFIG_IRQCHIP=y +CONFIG_ARM_GIC=y +CONFIG_ARM_GIC_V2M=y +CONFIG_ARM_GIC_V3=y +CONFIG_ARM_GIC_V3_ITS=y +CONFIG_PARTITION_PERCPU=y +# CONFIG_IPACK_BUS is not set +CONFIG_ARCH_HAS_RESET_CONTROLLER=y +CONFIG_RESET_CONTROLLER=y +# CONFIG_FMC is not set + +# +# PHY Subsystem +# +CONFIG_GENERIC_PHY=y +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_BCM_KONA_USB2_PHY is not set +# CONFIG_PHY_SAMSUNG_USB2 is not set +# CONFIG_PHY_XGENE is not set +CONFIG_PHY_ROCKCHIP_USB=y +# CONFIG_PHY_ROCKCHIP_INNO_COMBPHY is not set +CONFIG_PHY_ROCKCHIP_INNO_USB2=y +CONFIG_PHY_ROCKCHIP_INNO_USB3=y +CONFIG_PHY_ROCKCHIP_EMMC=y +CONFIG_PHY_ROCKCHIP_DP=y +CONFIG_PHY_ROCKCHIP_MIPI_RX=y +CONFIG_PHY_ROCKCHIP_INNO_MIPI_DPHY=y +CONFIG_PHY_ROCKCHIP_INNO_HDMI_PHY=y +# CONFIG_PHY_ROCKCHIP_INNO_VIDEO_PHY is not set +# CONFIG_PHY_ROCKCHIP_INNO_VIDEO_COMBO_PHY is not set +CONFIG_PHY_ROCKCHIP_TYPEC=y +CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +CONFIG_ARM_PMU=y +CONFIG_RAS=y +# CONFIG_THUNDERBOLT is not set + +# +# Android +# +CONFIG_ANDROID=y +# CONFIG_ANDROID_BINDER_IPC is not set +# CONFIG_LIBNVDIMM is not set +CONFIG_NVMEM=y +CONFIG_ROCKCHIP_EFUSE=y +# CONFIG_ROCKCHIP_OTP is not set +# CONFIG_STM is not set +# CONFIG_INTEL_TH is not set + +# +# FPGA Configuration Support +# +# CONFIG_FPGA is not set +# CONFIG_TEE is not set +# CONFIG_RK_FLASH is not set +# CONFIG_RK_NAND is not set + +# +# Headset device support +# +# CONFIG_RK_HEADSET is not set + +# +# Firmware Drivers +# +CONFIG_ARM_PSCI_FW=y +# CONFIG_FIRMWARE_MEMMAP is not set +CONFIG_DMIID=y +# CONFIG_DMI_SYSFS is not set +CONFIG_HAVE_ARM_SMCCC=y +CONFIG_ROCKCHIP_SIP=y + +# +# EFI (Extensible Firmware Interface) Support +# +# CONFIG_EFI_VARS is not set +CONFIG_EFI_ESRT=y +CONFIG_EFI_PARAMS_FROM_FDT=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_ARMSTUB=y +# CONFIG_ACPI is not set + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_USE_FOR_EXT2=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_EXT4_ENCRYPTION is not set +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=y +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +# CONFIG_JFS_FS is not set +CONFIG_XFS_FS=m +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +CONFIG_GFS2_FS=m +# CONFIG_GFS2_FS_LOCKING_DLM is not set +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_DEBUG_MASKLOG=y +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +CONFIG_NILFS2_FS=m +CONFIG_F2FS_FS=m +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +# CONFIG_F2FS_CHECK_FS is not set +CONFIG_F2FS_FS_ENCRYPTION=y +# CONFIG_F2FS_IO_TRACE is not set +# CONFIG_F2FS_FAULT_INJECTION is not set +# CONFIG_FS_DAX is not set +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_FILE_LOCKING=y +CONFIG_FS_ENCRYPTION=m +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set +CONFIG_QUOTA=y +CONFIG_QUOTA_NETLINK_INTERFACE=y +# CONFIG_PRINT_QUOTA_WARNING is not set +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=m +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QUOTACTL=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=y +CONFIG_CUSE=m +CONFIG_OVERLAY_FS=y + +# +# Caches +# +CONFIG_FSCACHE=m +CONFIG_FSCACHE_STATS=y +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=y +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=y +# CONFIG_MSDOS_FS is not set +CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=936 +CONFIG_FAT_DEFAULT_IOCHARSET="utf8" +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_RW=y + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +# CONFIG_PROC_KCORE is not set +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +# CONFIG_PROC_CHILDREN is not set +CONFIG_PROC_UID=y +CONFIG_KERNFS=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_CONFIGFS_FS=y +CONFIG_EFIVAR_FS=m +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +CONFIG_ECRYPT_FS=m +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_SDCARD_FS=m +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_HFSPLUS_FS_POSIX_ACL is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_LOGFS is not set +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +CONFIG_SQUASHFS_ZSTD=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_OMFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_PSTORE=y +CONFIG_PSTORE_CONSOLE=y +# CONFIG_PSTORE_PMSG is not set +# CONFIG_PSTORE_FTRACE is not set +CONFIG_PSTORE_RAM=y +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V2=y +CONFIG_NFS_V3=y +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=y +CONFIG_NFS_SWAP=y +# CONFIG_NFS_V4_1 is not set +CONFIG_ROOT_NFS=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_DEBUG=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +# CONFIG_NFSD_PNFS is not set +# CONFIG_NFSD_V4_SECURITY_LABEL is not set +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_GRACE_PERIOD=y +CONFIG_LOCKD=y +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=y +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=y +CONFIG_SUNRPC_GSS=y +CONFIG_SUNRPC_SWAP=y +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_SUNRPC_DEBUG=y +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_FS_POSIX_ACL=y +CONFIG_CIFS=m +CONFIG_CIFS_STATS=y +# CONFIG_CIFS_STATS2 is not set +# CONFIG_CIFS_WEAK_PW_HASH is not set +# CONFIG_CIFS_UPCALL is not set +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_ACL=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_SMB2=y +# CONFIG_CIFS_SMB311 is not set +CONFIG_CIFS_FSCACHE=y +# CONFIG_NCP_FS is not set +CONFIG_CODA_FS=m +# CONFIG_AFS_FS is not set +CONFIG_9P_FS=m +# CONFIG_9P_FSCACHE is not set +CONFIG_9P_FS_POSIX_ACL=y +# CONFIG_9P_FS_SECURITY is not set +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=y +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +CONFIG_NLS_CODEPAGE_936=y +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +CONFIG_NLS_ASCII=y +CONFIG_NLS_ISO8859_1=y +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_MAC_ROMAN is not set +# CONFIG_NLS_MAC_CELTIC is not set +# CONFIG_NLS_MAC_CENTEURO is not set +# CONFIG_NLS_MAC_CROATIAN is not set +# CONFIG_NLS_MAC_CYRILLIC is not set +# CONFIG_NLS_MAC_GAELIC is not set +# CONFIG_NLS_MAC_GREEK is not set +# CONFIG_NLS_MAC_ICELAND is not set +# CONFIG_NLS_MAC_INUIT is not set +# CONFIG_NLS_MAC_ROMANIAN is not set +# CONFIG_NLS_MAC_TURKISH is not set +CONFIG_NLS_UTF8=y +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set +# CONFIG_VIRTUALIZATION is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +# CONFIG_PRINTK_PROCESS is not set +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +# CONFIG_BOOT_PRINTK_DELAY is not set +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +# CONFIG_DEBUG_INFO_DWARF4 is not set +# CONFIG_GDB_SCRIPTS is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=2048 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0 +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_ARCH_KASAN=y +# CONFIG_KASAN is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR_OTHER_CPU=y +CONFIG_HARDLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +# CONFIG_PANIC_ON_RT_THROTTLING is not set +CONFIG_SCHEDSTATS=y +# CONFIG_SCHED_STACK_END_CHECK is not set +# CONFIG_DEBUG_TIMEKEEPING is not set +CONFIG_TIMER_STATS=y + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +CONFIG_DEBUG_SPINLOCK=y +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +CONFIG_STACKTRACE=y +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_HAVE_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU is not set +# CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_TORTURE_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_GPU_TRACEPOINTS=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_PREEMPTIRQ_EVENTS is not set +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_SCHED_TRACER is not set +# CONFIG_FTRACE_SYSCALLS is not set +# CONFIG_TRACER_SNAPSHOT is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +# CONFIG_STACK_TRACER is not set +CONFIG_BLK_DEV_IO_TRACE=y +# CONFIG_PROBE_EVENTS is not set +CONFIG_DYNAMIC_FTRACE=y +# CONFIG_FUNCTION_PROFILER is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_TRACE_ENUM_MAP_FILE is not set +CONFIG_TRACING_EVENTS_GPIO=y + +# +# Runtime Testing +# +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_PERCPU_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_ASYNC_RAID6_TEST is not set +# CONFIG_TEST_HEXDUMP is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_DMA_API_DEBUG is not set +# CONFIG_TEST_LKM is not set +# CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_BPF is not set +# CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_UDELAY is not set +# CONFIG_MEMTEST is not set +# CONFIG_TEST_STATIC_KEYS is not set +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +# CONFIG_ARM64_PTDUMP is not set +CONFIG_STRICT_DEVMEM=y +# CONFIG_PID_IN_CONTEXTIDR is not set +# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set +CONFIG_DEBUG_SET_MODULE_RONX=y +CONFIG_DEBUG_RODATA=y +# CONFIG_DEBUG_ALIGN_RODATA is not set +# CONFIG_CORESIGHT is not set + +# +# Security options +# +CONFIG_KEYS=y +# CONFIG_PERSISTENT_KEYRINGS is not set +# CONFIG_BIG_KEYS is not set +# CONFIG_TRUSTED_KEYS is not set +CONFIG_ENCRYPTED_KEYS=m +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +# CONFIG_SECURITY_NETWORK_XFRM is not set +CONFIG_SECURITY_PATH=y +CONFIG_LSM_MMAP_MIN_ADDR=4096 +CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y +CONFIG_HAVE_ARCH_HARDENED_USERCOPY=y +CONFIG_HARDENED_USERCOPY=y +# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set +CONFIG_SECURITY_SELINUX=y +# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_DEVELOP=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=0 +# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set +CONFIG_SECURITY_SMACK=y +# CONFIG_SECURITY_SMACK_BRINGUP is not set +# CONFIG_SECURITY_SMACK_NETFILTER is not set +# CONFIG_SECURITY_TOMOYO is not set +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 +CONFIG_SECURITY_APPARMOR_HASH=y +# CONFIG_SECURITY_YAMA is not set +# CONFIG_TEE_SUPPORT is not set +CONFIG_INTEGRITY=y +# CONFIG_INTEGRITY_SIGNATURE is not set +CONFIG_INTEGRITY_AUDIT=y +# CONFIG_IMA is not set +# CONFIG_EVM is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +# CONFIG_DEFAULT_SECURITY_APPARMOR is not set +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_DEFAULT_SECURITY="" +CONFIG_XOR_BLOCKS=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=y +CONFIG_CRYPTO_PCOMP2=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_AKCIPHER=y +# CONFIG_CRYPTO_RSA is not set +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_GF128MUL=y +CONFIG_CRYPTO_NULL=y +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_CRYPTD=y +CONFIG_CRYPTO_MCRYPTD=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_ABLK_HELPER=y + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=y +CONFIG_CRYPTO_GCM=y +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_SEQIV=y +CONFIG_CRYPTO_ECHAINIV=m + +# +# Block modes +# +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_HEH is not set +CONFIG_CRYPTO_CTR=y +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m +CONFIG_CRYPTO_KEYWRAP=m + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_VMAC=m + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_GHASH=y +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_MD4=y +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=y +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=y +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_ZLIB is not set +CONFIG_CRYPTO_LZO=y +# CONFIG_CRYPTO_842 is not set +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m +# CONFIG_CRYPTO_ZSTD is not set + +# +# Random Number Generation +# +CONFIG_CRYPTO_ANSI_CPRNG=y +CONFIG_CRYPTO_DRBG_MENU=y +CONFIG_CRYPTO_DRBG_HMAC=y +CONFIG_CRYPTO_DRBG_HASH=y +CONFIG_CRYPTO_DRBG_CTR=y +CONFIG_CRYPTO_DRBG=y +CONFIG_CRYPTO_JITTERENTROPY=y +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HW=y +# CONFIG_CRYPTO_DEV_CCP is not set +# CONFIG_CRYPTO_DEV_ROCKCHIP_V1 is not set +# CONFIG_CRYPTO_DEV_ROCKCHIP_V2 is not set +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_PUBLIC_KEY_ALGO_RSA=y +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_PKCS7_MESSAGE_PARSER=y +# CONFIG_PKCS7_TEST_KEY is not set +# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set + +# +# Certificates for signature checking +# +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="" +CONFIG_ARM64_CRYPTO=y +CONFIG_CRYPTO_SHA1_ARM64_CE=y +CONFIG_CRYPTO_SHA2_ARM64_CE=y +CONFIG_CRYPTO_GHASH_ARM64_CE=y +# CONFIG_CRYPTO_POLY_HASH_ARM64_CE is not set +CONFIG_CRYPTO_AES_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64_CE_CCM=y +CONFIG_CRYPTO_AES_ARM64_CE_BLK=y +# CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set +# CONFIG_CRYPTO_CRC32_ARM64 is not set +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_BITREVERSE=y +CONFIG_HAVE_ARCH_BITREVERSE=y +CONFIG_RATIONAL=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IO=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_CRC_CCITT=y +CONFIG_CRC16=y +CONFIG_CRC_T10DIF=y +CONFIG_CRC_ITU_T=y +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC7=y +CONFIG_LIBCRC32C=y +# CONFIG_CRC8 is not set +CONFIG_XXHASH=y +CONFIG_AUDIT_GENERIC=y +CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y +CONFIG_AUDIT_COMPAT_GENERIC=y +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y +CONFIG_XZ_DEC=y +# CONFIG_XZ_DEC_X86 is not set +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +# CONFIG_XZ_DEC_SPARC is not set +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_REED_SOLOMON=y +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=m +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAS_DMA=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_NLATTR=y +CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y +CONFIG_LRU_CACHE=m +CONFIG_CLZ_TAB=y +# CONFIG_CORDIC is not set +# CONFIG_DDR is not set +CONFIG_MPILIB=y +CONFIG_LIBFDT=y +CONFIG_OID_REGISTRY=y +CONFIG_UCS2_STRING=y +CONFIG_FONT_SUPPORT=y +# CONFIG_FONTS is not set +CONFIG_FONT_8x8=y +CONFIG_FONT_8x16=y +# CONFIG_SG_SPLIT is not set +CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/build.sh b/build.sh new file mode 100755 index 0000000000000..23027e202be27 --- /dev/null +++ b/build.sh @@ -0,0 +1,101 @@ +#!/bin/bash + +# --------------------------------------------------------- +# Simple kernel build script (c) by EoF Software Labs +# --------------------------------------------------------- + +# if not in kernel directory +if [ -d kernel -a ! -f Kbuild ] ; then + cd kernel +fi + +SRC_DIR=`pwd` +OS_HOST=`uname -m` + +if [ ${OS_HOST} == "x86_64" ] ; then + #using Ubuntu gcc-10-aarch64 + #TOOL_CHAIN="/opt/FriendlyARM/toolchain/6.4-aarch64" + CC="aarch64-linux-gnu-gcc-10" + KRNL_ARCH="arm64" + REMOTE_SSHKEY="${HOME}/.ssh/id_rsa_tux_deploy" + REMOTE_HOST="192.168.181.210" + REMOTE_TARGET="root@${REMOTE_HOST}:/mnt/ssd/emmc-update/" + if [ -e ${TOOL_CHAIN} ] ; then + if [[ ! ${PATH} =~ "${TOOL_CHAIN}" ]]; then + export PATH=${TOOL_CHAIN}/bin/:$PATH + fi + fi + # Output directory + UPDATE_DIR="${SRC_DIR}/../live-update" +else + UPDATE_DIR="/mnt/ssd/emmc-update" + KRNL_ARCH="arm64" + CC="gcc" +fi + +# Used kernel branch +#KRNL_BRANCH="nanopi4-linux-v4.4.y" +KRNL_BRANCH=`git branch` + +# Get kernel version +KRNL_VER="`make -j4 CC=${CC} ARCH=${KRNL_ARCH} kernelrelease`" + +echo "----------------------------------------------------" +echo "SRC_DIR......: ${SRC_DIR}" +echo "OS_HOST......: ${OS_HOST}" +echo "UPDATE_DIR...: ${UPDATE_DIR}" +echo "KERNEL_VER...: ${KRNL_VER}" +echo "KERNEL_ARCH..: ${KRNL_ARCH}" +echo "KERNEL_BRANCH: ${KRNL_BRANCH}" +echo "CROSS_COMPILE: ${CROSS}" +echo "TOOL_CHAIN...: ${TOOL_CHAIN}" +echo "REMOTE_TARGET: ${REMOTE_TARGET}" +echo "----------------------------------------------------" +#echo | ${CC} -dM -E - +#echo "----------------------------------------------------" + +mkdir -p ${UPDATE_DIR} + +if [ ! -f .config ] ; then + echo "----------------------------------------------------" + echo "++ Configure kernel from eof_defconfig" + make -j4 CC=${CC} ARCH=${KRNL_ARCH} eof_defconfig + make -j4 CC=${CC} ARCH=${KRNL_ARCH} kernelrelease || exit 1 +fi + +# Bit Power Build Host +echo "----------------------------------------------------" +echo "++ Build kernel targets: Image modules dtbs" +make -j4 CC=${CC} ARCH=${KRNL_ARCH} Image modules dtbs || exit 1 + +echo "----------------------------------------------------" +echo "++ Install modules to: ${UPDATE_DIR}" +make -j4 CC=${CC} ARCH=${KRNL_ARCH} \ + INSTALL_MOD_PATH=${UPDATE_DIR} modules_install || exit 1 + +echo "----------------------------------------------------" +echo "++ Install kernel headers to: ${UPDATE_DIR}" +make -j4 CC=${CC} ARCH=${KRNL_ARCH} \ + INSTALL_HDR_PATH=${UPDATE_DIR}/usr/src headers_install || exit 1 + +echo "----------------------------------------------------" +echo "++ Generate nanopi4 kernel images..." +make -j4 CC=${CC} ARCH=${KRNL_ARCH} nanopi4-images || exit 1 + +rm -vf ${UPDATE_DIR}/lib/modules/$KRNL_VER/source +rm -vf ${UPDATE_DIR}/lib/modules/$KRNL_VER/build + +if [ ! -e ${REMOTE_TARGET} ] ; then + eval $(ssh-agent) # Create agent and environment variables + ssh-add ${REMOTE_SSHKEY} + OPTS="-arluvt" + SOURCE="${UPDATE_DIR}/lib" + echo "Enter manual following commands:" + echo rsync ${OPTS} ${SOURCE} ${REMOTE_TARGET} + echo "scp -r -i ${REMOTE_SSHKEY} resource.img kernel.img ${REMOTE_TARGET}" +else + cp -Rpvu resource.img kernel.img /mnt/ssd/emmc-update/ +fi + +exit $? + diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c index ccfd268148a8f..50e869b2cd9df 100644 --- a/drivers/base/firmware_class.c +++ b/drivers/base/firmware_class.c @@ -6,6 +6,7 @@ * Please see Documentation/firmware_class/ for more information. * */ +#include #include #include @@ -25,6 +26,7 @@ #include #include #include +#include #include #include #include @@ -281,6 +283,16 @@ static const char * const fw_path[] = { "/lib/firmware/updates", "/lib/firmware/" UTS_RELEASE, "/lib/firmware" +#ifdef CONFIG_FW_PATH_ANDROID + , + /* Android layout specific */ + "/etc/firmware/" UTS_RELEASE, + "/etc/firmware", + "/system/etc/firmware/" UTS_RELEASE, + "/system/etc/firmware", + "/system/vendor/firmware/" UTS_RELEASE, + "/system/vendor/firmware" +#endif }; /* @@ -333,6 +345,7 @@ static int fw_get_filesystem_firmware(struct device *device, if (!path) return -ENOMEM; + /* iterate predefined firmware path locations */ for (i = 0; i < ARRAY_SIZE(fw_path); i++) { struct file *file; @@ -341,19 +354,25 @@ static int fw_get_filesystem_firmware(struct device *device, continue; len = snprintf(path, PATH_MAX, "%s/%s", - fw_path[i], buf->fw_id); + fw_path[i], buf->fw_id); + if (len >= PATH_MAX) { rc = -ENAMETOOLONG; break; } + dev_info(device, "[base:firmware] Try to open firmware file: %s\n", path); + file = filp_open(path, O_RDONLY, 0); - if (IS_ERR(file)) + if (IS_ERR(file)) { + //dev_warn(device, "[base:firmware] Can't open firmware file: %s\n", path); continue; + } + rc = fw_read_file_contents(file, buf); fput(file); if (rc) - dev_warn(device, "firmware, attempted to load %s, but failed with error %d\n", + dev_warn(device, "[base:firmware] Attempted to load '%s', but failed with error %d\n", path, rc); else break; @@ -361,7 +380,7 @@ static int fw_get_filesystem_firmware(struct device *device, __putname(path); if (!rc) { - dev_dbg(device, "firmware: direct-loading firmware %s\n", + dev_dbg(device, "[base:firmware] Direct loading firmware: %s\n", buf->fw_id); mutex_lock(&fw_lock); set_bit(FW_STATUS_DONE, &buf->status); @@ -936,7 +955,7 @@ static int _request_firmware_load(struct firmware_priv *fw_priv, if (opt_flags & FW_OPT_UEVENT) { buf->need_uevent = true; dev_set_uevent_suppress(f_dev, false); - dev_dbg(f_dev, "firmware: requesting %s\n", buf->fw_id); + dev_dbg(f_dev, "[base:firmware] requesting %s\n", buf->fw_id); kobject_uevent(&fw_priv->dev.kobj, KOBJ_ADD); } else { timeout = MAX_JIFFY_OFFSET; @@ -1052,7 +1071,7 @@ _request_firmware_prepare(struct firmware **firmware_p, const char *name, } if (fw_get_builtin_firmware(firmware, name)) { - dev_dbg(device, "firmware: using built-in firmware %s\n", name); + dev_info(device, "[base:firmware] Using kernel built-in firmware %s\n", name); return 0; /* assigned */ } @@ -1129,6 +1148,9 @@ _request_firmware(const struct firmware **firmware_p, const char *name, if (!name || name[0] == '\0') return -EINVAL; + dev_info(device, "[base:firmware] Request to load firmware: %s\n", + name); + ret = _request_firmware_prepare(&fw, name, device); if (ret <= 0) /* error or already assigned */ goto out; @@ -1138,7 +1160,7 @@ _request_firmware(const struct firmware **firmware_p, const char *name, if (opt_flags & FW_OPT_NOWAIT) { timeout = usermodehelper_read_lock_wait(timeout); if (!timeout) { - dev_dbg(device, "firmware: %s loading timed out\n", + dev_dbg(device, "[base:firmware] %s loading timed out\n", name); ret = -EBUSY; goto out; @@ -1146,7 +1168,7 @@ _request_firmware(const struct firmware **firmware_p, const char *name, } else { ret = usermodehelper_read_trylock(); if (WARN_ON(ret)) { - dev_err(device, "firmware: %s will not be loaded\n", + dev_err(device, "[base:firmware] %s will not be loaded\n", name); goto out; } @@ -1156,10 +1178,10 @@ _request_firmware(const struct firmware **firmware_p, const char *name, if (ret) { if (!(opt_flags & FW_OPT_NO_WARN)) dev_warn(device, - "Direct firmware load for %s failed with error %d\n", + "[base:firmware] Direct firmware load for %s failed with error %d\n", name, ret); if (opt_flags & FW_OPT_USERHELPER) { - dev_warn(device, "Falling back to user helper\n"); + dev_warn(device, "[base:firmware] Falling back to user helper\n"); ret = fw_load_from_user_helper(fw, name, device, opt_flags, timeout); } diff --git a/drivers/clk/rockchip/clk-muxgrf.c b/drivers/clk/rockchip/clk-muxgrf.c index 4f291180a26b4..aa8de606f471c 100644 --- a/drivers/clk/rockchip/clk-muxgrf.c +++ b/drivers/clk/rockchip/clk-muxgrf.c @@ -9,6 +9,8 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ +//EOF:FIXED +//#define DEBUG 1 #include #include @@ -77,6 +79,9 @@ struct clk *rockchip_clk_register_muxgrf(const char *name, return ERR_PTR(-ENOTSUPP); } + pr_debug("%s: register muxgrf for: %s num_parents: %d\n", + __func__, name, num_parents); + muxgrf_clock = kmalloc(sizeof(*muxgrf_clock), GFP_KERNEL); if (!muxgrf_clock) return ERR_PTR(-ENOMEM); diff --git a/drivers/clk/rockchip/clk-rk3399.c b/drivers/clk/rockchip/clk-rk3399.c index 5f6b9c1ffc791..de4d542dcc5f3 100644 --- a/drivers/clk/rockchip/clk-rk3399.c +++ b/drivers/clk/rockchip/clk-rk3399.c @@ -265,10 +265,8 @@ PNAME(mux_aclk_gmac_p) = { "cpll_aclk_gmac_src", "gpll_aclk_gmac_src" }; #endif -PNAME(mux_dclk_vop0_p) = { "dclk_vop0_div", - "dummy_dclk_vop0_frac" }; -PNAME(mux_dclk_vop1_p) = { "dclk_vop1_div", - "dummy_dclk_vop1_frac" }; +PNAME(mux_dclk_vop0_p) = { "dclk_vop0_div", "disabled.dclk_vop0_frac" }; //EOF:FIXED:renamed don't work with mali drm +PNAME(mux_dclk_vop1_p) = { "dclk_vop1_div", "disabled.dclk_vop1_frac" }; //EOF:FIXED:renamed don't work with mali drm PNAME(mux_clk_cif_p) = { "clk_cifout_src", "xin24m" }; diff --git a/drivers/clk/rockchip/clk.c b/drivers/clk/rockchip/clk.c index 3a6994ff96550..ad53b6b30c8bf 100644 --- a/drivers/clk/rockchip/clk.c +++ b/drivers/clk/rockchip/clk.c @@ -23,6 +23,9 @@ * GNU General Public License for more details. */ +//EOF:DEBUG +//#define DEBUG 1 + #include #include #include @@ -102,6 +105,9 @@ static struct clk *rockchip_clk_register_branch(const char *name, : &clk_divider_ops; } + pr_debug("%s: register composite '%s' with num_parents=%d\n", + __func__, name, num_parents); + clk = clk_register_composite(NULL, name, parent_names, num_parents, mux ? &mux->hw : NULL, mux_ops, div ? &div->hw : NULL, div_ops, @@ -208,7 +214,7 @@ static void rockchip_fractional_approximation(struct clk_hw *hw, } if (*parent_rate < rate * 20) { - pr_warn("%s p_rate(%ld) is low than rate(%ld)*20, use integer or half-div\n", + pr_debug("%s p_rate(%ld) is low than rate(%ld)*20, use integer or half-div\n", clk_hw_get_name(hw), *parent_rate, rate); *m = 0; *n = 1; @@ -255,6 +261,9 @@ static struct clk *rockchip_clk_register_frac_branch( return ERR_PTR(-EINVAL); } + pr_debug("%s: register frac_branch for: %s num_parents: %d\n", + __func__, name, num_parents); + frac = kzalloc(sizeof(*frac), GFP_KERNEL); if (!frac) return ERR_PTR(-ENOMEM); @@ -282,6 +291,9 @@ static struct clk *rockchip_clk_register_frac_branch( div->max_prate = max_prate; div_ops = &clk_fractional_divider_ops; + pr_debug("%s: register composite '%s' with num_parents=%d\n", + __func__, name, num_parents); + clk = clk_register_composite(NULL, name, parent_names, num_parents, NULL, NULL, &div->hw, div_ops, diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c index 63ba9c1e0f23c..ae8a9703c2ea6 100644 --- a/drivers/gpu/drm/drm_atomic.c +++ b/drivers/gpu/drm/drm_atomic.c @@ -25,7 +25,10 @@ * Daniel Vetter */ +//EOF:DEBUG +#define DEBUG 1 +#include #include #include #include @@ -589,7 +592,7 @@ static int drm_atomic_crtc_check(struct drm_crtc *crtc, */ if (state->active && !state->enable) { - DRM_DEBUG_ATOMIC("[CRTC:%d] active without enabled\n", + DRM_ERROR("[CRTC:%d] active without enabled\n", crtc->base.id); return -EINVAL; } @@ -599,14 +602,14 @@ static int drm_atomic_crtc_check(struct drm_crtc *crtc, * be able to trigger. */ if (drm_core_check_feature(crtc->dev, DRIVER_ATOMIC) && WARN_ON(state->enable && !state->mode_blob)) { - DRM_DEBUG_ATOMIC("[CRTC:%d] enabled without mode blob\n", + DRM_ERROR("[CRTC:%d] enabled without mode blob\n", crtc->base.id); return -EINVAL; } if (drm_core_check_feature(crtc->dev, DRIVER_ATOMIC) && WARN_ON(!state->enable && state->mode_blob)) { - DRM_DEBUG_ATOMIC("[CRTC:%d] disabled with mode blob\n", + DRM_ERROR("[CRTC:%d] disabled with mode blob\n", crtc->base.id); return -EINVAL; } @@ -810,10 +813,10 @@ static int drm_atomic_plane_check(struct drm_plane *plane, /* either *both* CRTC and FB must be set, or neither */ if (WARN_ON(state->crtc && !state->fb)) { - DRM_DEBUG_ATOMIC("CRTC set but no FB\n"); + DRM_ERROR("CRTC set but no FB\n"); return -EINVAL; } else if (WARN_ON(state->fb && !state->crtc)) { - DRM_DEBUG_ATOMIC("FB set but no CRTC\n"); + DRM_ERROR("FB set but no CRTC\n"); return -EINVAL; } @@ -823,14 +826,14 @@ static int drm_atomic_plane_check(struct drm_plane *plane, /* Check whether this plane is usable on this CRTC */ if (!(plane->possible_crtcs & drm_crtc_mask(state->crtc))) { - DRM_DEBUG_ATOMIC("Invalid crtc for plane\n"); + DRM_ERROR("Invalid crtc for plane\n"); return -EINVAL; } /* Check whether this plane supports the fb pixel format. */ ret = drm_plane_check_pixel_format(plane, state->fb->pixel_format); if (ret) { - DRM_DEBUG_ATOMIC("Invalid pixel format %s\n", + DRM_ERROR("Invalid pixel format %s\n", drm_get_format_name(state->fb->pixel_format)); return ret; } @@ -840,7 +843,7 @@ static int drm_atomic_plane_check(struct drm_plane *plane, state->crtc_x > INT_MAX - (int32_t) state->crtc_w || state->crtc_h > INT_MAX || state->crtc_y > INT_MAX - (int32_t) state->crtc_h) { - DRM_DEBUG_ATOMIC("Invalid CRTC coordinates %ux%u+%d+%d\n", + DRM_ERROR("Invalid CRTC coordinates %ux%u+%d+%d\n", state->crtc_w, state->crtc_h, state->crtc_x, state->crtc_y); return -ERANGE; @@ -854,19 +857,19 @@ static int drm_atomic_plane_check(struct drm_plane *plane, state->src_x > fb_width - state->src_w || state->src_h > fb_height || state->src_y > fb_height - state->src_h) { - DRM_DEBUG_ATOMIC("Invalid source coordinates " + DRM_ERROR("Invalid source coordinates " "%u.%06ux%u.%06u+%u.%06u+%u.%06u\n", state->src_w >> 16, ((state->src_w & 0xffff) * 15625) >> 10, state->src_h >> 16, ((state->src_h & 0xffff) * 15625) >> 10, state->src_x >> 16, ((state->src_x & 0xffff) * 15625) >> 10, state->src_y >> 16, ((state->src_y & 0xffff) * 15625) >> 10); - DRM_DEBUG_ATOMIC("framebuffer size[%dx%d]\n", + DRM_ERROR("framebuffer size[%dx%d]\n", fb_width >> 16, fb_height >> 16); return -ENOSPC; } if (plane_switching_crtc(state->state, plane, state)) { - DRM_DEBUG_ATOMIC("[PLANE:%d] switching CRTC directly\n", + DRM_ERROR("[PLANE:%d] switching CRTC directly\n", plane->base.id); return -EINVAL; } @@ -1406,7 +1409,7 @@ int drm_atomic_check_only(struct drm_atomic_state *state) for_each_plane_in_state(state, plane, plane_state, i) { ret = drm_atomic_plane_check(plane, plane_state); if (ret) { - DRM_DEBUG_ATOMIC("[PLANE:%d] atomic core check failed\n", + DRM_ERROR("[PLANE:%d] atomic core plane check failed\n", plane->base.id); return ret; } @@ -1415,22 +1418,25 @@ int drm_atomic_check_only(struct drm_atomic_state *state) for_each_crtc_in_state(state, crtc, crtc_state, i) { ret = drm_atomic_crtc_check(crtc, crtc_state); if (ret) { - DRM_DEBUG_ATOMIC("[CRTC:%d] atomic core check failed\n", + DRM_ERROR("[CRTC:%d] atomic core crtc check failed\n", crtc->base.id); return ret; } } - if (config->funcs->atomic_check) + if (config->funcs->atomic_check) { ret = config->funcs->atomic_check(state->dev, state); - - if (ret) - return ret; + if (ret) { + DRM_ERROR("atomic check callback function @%p failed\n", + config->funcs->atomic_check); + return ret; + } + } if (!state->allow_modeset) { for_each_crtc_in_state(state, crtc, crtc_state, i) { if (drm_atomic_crtc_needs_modeset(crtc_state)) { - DRM_DEBUG_ATOMIC("[CRTC:%d] requires full modeset\n", + DRM_ERROR("[CRTC:%d] requires full modeset\n", crtc->base.id); return -EINVAL; } @@ -1463,8 +1469,10 @@ int drm_atomic_commit(struct drm_atomic_state *state) int ret; ret = drm_atomic_check_only(state); - if (ret) + if (ret) { + DRM_ERROR("drm atomic check only failed for state %p\n", state); return ret; + } DRM_DEBUG_ATOMIC("commiting %p\n", state); diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c index a30621abfee15..bbe662ce0e2fd 100644 --- a/drivers/gpu/drm/drm_atomic_helper.c +++ b/drivers/gpu/drm/drm_atomic_helper.c @@ -24,6 +24,8 @@ * Rob Clark * Daniel Vetter */ +//EOF:DEBUG +#define DEBUG 1 #include #include @@ -233,7 +235,7 @@ update_connector_routing(struct drm_atomic_state *state, int conn_idx) if (encoder_crtc) { ret = steal_encoder(state, new_encoder, encoder_crtc); if (ret) { - DRM_DEBUG_ATOMIC("Encoder stealing failed for [CONNECTOR:%d:%s]\n", + DRM_ERROR("Encoder stealing failed for [CONNECTOR:%d:%s]\n", connector->base.id, connector->name); return ret; @@ -301,7 +303,7 @@ mode_fixup(struct drm_atomic_state *state) ret = drm_bridge_mode_fixup(encoder->bridge, &crtc_state->mode, &crtc_state->adjusted_mode); if (!ret) { - DRM_DEBUG_ATOMIC("Bridge fixup failed\n"); + DRM_ERROR("Bridge fixup failed\n"); return -EINVAL; } @@ -309,7 +311,7 @@ mode_fixup(struct drm_atomic_state *state) ret = funcs->atomic_check(encoder, crtc_state, conn_state); if (ret) { - DRM_DEBUG_ATOMIC("[ENCODER:%d:%s] check failed\n", + DRM_ERROR("[ENCODER:%d:%s] check failed\n", encoder->base.id, encoder->name); return ret; } @@ -317,7 +319,7 @@ mode_fixup(struct drm_atomic_state *state) ret = funcs->mode_fixup(encoder, &crtc_state->mode, &crtc_state->adjusted_mode); if (!ret) { - DRM_DEBUG_ATOMIC("[ENCODER:%d:%s] fixup failed\n", + DRM_ERROR("[ENCODER:%d:%s] fixup failed\n", encoder->base.id, encoder->name); return -EINVAL; } @@ -338,7 +340,7 @@ mode_fixup(struct drm_atomic_state *state) ret = funcs->mode_fixup(crtc, &crtc_state->mode, &crtc_state->adjusted_mode); if (!ret) { - DRM_DEBUG_ATOMIC("[CRTC:%d] fixup failed\n", + DRM_ERROR("[CRTC:%d] fixup failed\n", crtc->base.id); return -EINVAL; } @@ -459,7 +461,7 @@ drm_atomic_helper_check_modeset(struct drm_device *dev, crtc); if (crtc_state->enable != !!num_connectors) { - DRM_DEBUG_ATOMIC("[CRTC:%d] enabled/connectors mismatch\n", + DRM_ERROR("[CRTC:%d] enabled/connectors mismatch\n", crtc->base.id); return -EINVAL; @@ -507,7 +509,7 @@ drm_atomic_helper_check_planes(struct drm_device *dev, ret = funcs->atomic_check(plane, plane_state); if (ret) { - DRM_DEBUG_ATOMIC("[PLANE:%d] atomic driver check failed\n", + DRM_ERROR("[PLANE:%d] atomic driver check failed\n", plane->base.id); return ret; } @@ -523,7 +525,7 @@ drm_atomic_helper_check_planes(struct drm_device *dev, ret = funcs->atomic_check(crtc, crtc_state); if (ret) { - DRM_DEBUG_ATOMIC("[CRTC:%d] atomic driver check failed\n", + DRM_ERROR("[CRTC:%d] atomic driver check failed\n", crtc->base.id); return ret; } diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index a159683106a0a..e4f2d3b54956b 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c @@ -5688,8 +5688,10 @@ int drm_mode_page_flip_ioctl(struct drm_device *dev, goto out; } - if (crtc->funcs->page_flip == NULL) + if (crtc->funcs->page_flip == NULL) { + ret = -ENOENT; goto out; + } fb = drm_framebuffer_lookup(dev, page_flip->fb_id); if (!fb) { diff --git a/drivers/gpu/drm/rockchip/cdn-dp-core.c b/drivers/gpu/drm/rockchip/cdn-dp-core.c index a321b2896435a..6e2eea0b9b4d1 100644 --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c @@ -1235,6 +1235,8 @@ static int cdn_dp_request_firmware(struct cdn_dp_device *dp) /* Drop the lock before getting the firmware to avoid blocking boot */ mutex_unlock(&dp->lock); + DRM_DEV_INFO(dp->dev, "Loading firmware: %s\n", CDN_DP_FIRMWARE); + while (time_before(jiffies, timeout)) { ret = request_firmware(&dp->fw, CDN_DP_FIRMWARE, dp->dev); if (ret == -ENOENT) { diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c index e10110cb74536..bd6d7b98d1e4b 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c @@ -469,8 +469,11 @@ static int setup_initial_state(struct drm_device *drm_dev, is_crtc_enabled = false; conn_state = drm_atomic_get_connector_state(state, connector); - if (IS_ERR(conn_state)) + if (IS_ERR(conn_state)) { + dev_err(drm_dev->dev, "%s: connector[%s] failed to get state\n", + __func__, connector->name); return PTR_ERR(conn_state); + } funcs = connector->helper_private; conn_state->best_encoder = funcs->best_encoder(connector); @@ -483,8 +486,8 @@ static int setup_initial_state(struct drm_device *drm_dev, conn_state->best_encoder->loader_protect = true; num_modes = connector->funcs->fill_modes(connector, 4096, 4096); if (!num_modes) { - dev_err(drm_dev->dev, "connector[%s] can't found any modes\n", - connector->name); + dev_err(drm_dev->dev, "%s: connector[%s] can't find any modes\n", + __func__, connector->name); ret = -EINVAL; goto error_conn; } @@ -510,6 +513,8 @@ static int setup_initial_state(struct drm_device *drm_dev, set->mode = mode; crtc_state = drm_atomic_get_crtc_state(state, crtc); if (IS_ERR(crtc_state)) { + dev_err(drm_dev->dev, "%s: connector[%s] failed to get crtc state.\n", + __func__, connector->name); ret = PTR_ERR(crtc_state); goto error_conn; } @@ -519,12 +524,18 @@ static int setup_initial_state(struct drm_device *drm_dev, set->mode_changed = true; } else { ret = drm_atomic_set_crtc_for_connector(conn_state, crtc); - if (ret) + if (ret) { + dev_err(drm_dev->dev, "%s: connector[%s] failed to set crtc.\n", + __func__, connector->name); goto error_conn; + } ret = drm_atomic_set_mode_for_crtc(crtc_state, mode); - if (ret) + if (ret) { + dev_err(drm_dev->dev, "%s: connector[%s] failed to set mode for crtc.\n", + __func__, connector->name); goto error_conn; + } crtc_state->active = true; @@ -535,10 +546,14 @@ static int setup_initial_state(struct drm_device *drm_dev, if (!set->fb) { ret = 0; + dev_warn(drm_dev->dev, "%s: connector[%s] FB device not available.\n", + __func__, connector->name); goto error_crtc; } primary_state = drm_atomic_get_plane_state(state, crtc->primary); if (IS_ERR(primary_state)) { + dev_err(drm_dev->dev, "%s: connector[%s] failed to get plane state.\n", + __func__, connector->name); ret = PTR_ERR(primary_state); goto error_crtc; } @@ -706,12 +721,12 @@ static void show_loader_logo(struct drm_device *drm_dev) root = of_get_child_by_name(np, "route"); if (!root) { - dev_warn(drm_dev->dev, "failed to parse display resources\n"); + dev_warn(drm_dev->dev, "%s: failed to parse display resources\n", __func__); return; } if (init_loader_memory(drm_dev)) { - dev_warn(drm_dev->dev, "failed to parse loader memory\n"); + dev_warn(drm_dev->dev, "%s: failed to parse loader memory\n", __func__); return; } @@ -720,35 +735,50 @@ static void show_loader_logo(struct drm_device *drm_dev) drm_modeset_lock_all(drm_dev); state = drm_atomic_state_alloc(drm_dev); if (!state) { - dev_err(drm_dev->dev, "failed to alloc atomic state\n"); + dev_err(drm_dev->dev, "%s: failed to alloc atomic state\n", __func__); ret = -ENOMEM; goto err_unlock; } state->acquire_ctx = mode_config->acquire_ctx; + ret = 0; for_each_child_of_node(root, route) { if (!of_device_is_available(route)) continue; + dev_dbg(drm_dev->dev, "%s: check display resource: %s\n", + __func__, route->name); + + if (!strstr(route->name, "route-edp")) + continue; + set = of_parse_display_resource(drm_dev, route); if (!set) continue; + dev_dbg(drm_dev->dev, "%s: try to init connector: %s\n", + __func__, set->connector->name); + if (setup_initial_state(drm_dev, state, set)) { drm_framebuffer_unreference(set->fb); INIT_LIST_HEAD(&set->head); list_add_tail(&set->head, &mode_unset_list); continue; } + INIT_LIST_HEAD(&set->head); list_add_tail(&set->head, &mode_set_list); + + dev_dbg(drm_dev->dev, "%s: connector[%s] added to mode set list.\n", + __func__, set->connector->name); } /* * the mode_unset_list store the unconnected route, if route's crtc * isn't used, we should close it. */ + ret = 0; list_for_each_entry_safe(unset, tmp, &mode_unset_list, head) { struct rockchip_drm_mode_set *tmp_set; int found_used_crtc = 0; @@ -773,7 +803,7 @@ static void show_loader_logo(struct drm_device *drm_dev) } if (list_empty(&mode_set_list)) { - dev_warn(drm_dev->dev, "can't not find any loader display\n"); + dev_warn(drm_dev->dev, "%s: can't find any loader display\n", __func__); ret = -ENXIO; goto err_free_state; } @@ -788,15 +818,16 @@ static void show_loader_logo(struct drm_device *drm_dev) old_state = drm_atomic_helper_duplicate_state(drm_dev, mode_config->acquire_ctx); if (IS_ERR(old_state)) { - dev_err(drm_dev->dev, "failed to duplicate atomic state\n"); + dev_err(drm_dev->dev, "%s: failed to duplicate atomic state\n", __func__); ret = PTR_ERR_OR_ZERO(old_state); goto err_free_state; } + ret = 0; state = drm_atomic_helper_duplicate_state(drm_dev, mode_config->acquire_ctx); if (IS_ERR(state)) { - dev_err(drm_dev->dev, "failed to duplicate atomic state\n"); + dev_err(drm_dev->dev, "%s: failed to duplicate atomic state\n", __func__); ret = PTR_ERR_OR_ZERO(state); goto err_free_old_state; } @@ -807,6 +838,9 @@ static void show_loader_logo(struct drm_device *drm_dev) */ WARN_ON(update_state(drm_dev, state, set, &plane_mask)); + dev_dbg(drm_dev->dev, "%s: try to drm atomic commit.\n", + __func__); + ret = drm_atomic_commit(state); drm_atomic_clean_old_fb(drm_dev, plane_mask, ret); @@ -825,6 +859,8 @@ static void show_loader_logo(struct drm_device *drm_dev) * restore display status if atomic commit failed. */ drm_atomic_helper_swap_state(drm_dev, old_state); + dev_err(drm_dev->dev, "%s: failed to drm atomic commit. ret=%d\n", + __func__, ret); goto err_free_old_state; } @@ -841,7 +877,7 @@ static void show_loader_logo(struct drm_device *drm_dev) err_unlock: drm_modeset_unlock_all(drm_dev); if (ret) - dev_err(drm_dev->dev, "failed to show loader logo\n"); + dev_err(drm_dev->dev, "%s: failed to show loader logo\n", __func__); rockchip_free_loader_memory(drm_dev); } @@ -1488,9 +1524,11 @@ static int rockchip_drm_bind(struct device *dev) drm_dev->vblank_disable_allowed = true; rockchip_gem_pool_init(drm_dev); -#ifndef MODULE - show_loader_logo(drm_dev); -#endif + +//#ifndef MODULE +// show_loader_logo(drm_dev); +//#endif + ret = of_reserved_mem_device_init(drm_dev->dev); if (ret) DRM_DEBUG_KMS("No reserved memory region assign to drm\n"); @@ -1519,6 +1557,10 @@ static int rockchip_drm_bind(struct device *dev) if (ret) goto err_fbdev_fini; +#ifndef MODULE + show_loader_logo(drm_dev); +#endif + return 0; err_fbdev_fini: rockchip_drm_fbdev_fini(drm_dev); diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index c7bf027607bdc..fb45c80291840 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c @@ -80,9 +80,9 @@ if (VOP_REG_SUPPORT(vop, reg)) \ __REG_SET(vop, off + reg.offset, mask, reg.shift, \ v, reg.write_mask, relaxed); \ - else \ - dev_dbg(vop->dev, "Warning: not support "#name"\n"); \ } while(0) +/*else \*/ + /*dev_dbg(vop->dev, "Warning: not support "#name"\n");*/ \ #define REG_SET(x, name, off, reg, v, relaxed) \ _REG_SET(x, name, off, reg, reg.mask, v, relaxed) @@ -1495,16 +1495,23 @@ static int vop_plane_atomic_check(struct drm_plane *plane, u16 vdisplay; crtc = crtc ? crtc : plane->state->crtc; + fb = fb ? fb : plane->state->fb; + /* * Both crtc or plane->state->crtc can be null. */ - if (!crtc || !fb) + if (!crtc || !fb) { + if (vop_plane_state->enable) + DRM_ERROR("crtc and/or fb is null, disable plane.\n"); goto out_disable; + } adjusted_mode = &crtc->state->adjusted_mode; crtc_state = drm_atomic_get_crtc_state(state->state, crtc); - if (IS_ERR(crtc_state)) + if (IS_ERR(crtc_state)) { + DRM_ERROR("drm_atomic_get_crtc_state() failed.\n"); return PTR_ERR(crtc_state); + } src->x1 = state->src_x; src->y1 = state->src_y; @@ -1529,15 +1536,21 @@ static int vop_plane_atomic_check(struct drm_plane *plane, min_scale, max_scale, true, true, &visible); - if (ret) + if (ret) { + DRM_ERROR("drm_plane_helper_check_update() failed.\n"); return ret; + } - if (!visible) + if (!visible) { + DRM_ERROR("drm_plane_helper_check_update() returned not visible.\n"); goto out_disable; + } vop_plane_state->format = vop_convert_format(fb->pixel_format); - if (vop_plane_state->format < 0) + if (vop_plane_state->format < 0) { + DRM_ERROR("vop_convert_format() failed.\n"); return vop_plane_state->format; + } vop = to_vop(crtc); vop_data = vop->data; @@ -1592,6 +1605,7 @@ static int vop_plane_atomic_check(struct drm_plane *plane, return 0; out_disable: + //DRM_INFO("%s: vop plane state disabled.\n", __func__); vop_plane_state->enable = false; return 0; } @@ -3041,19 +3055,25 @@ static int vop_crtc_atomic_check(struct drm_crtc *crtc, #endif ret = vop_afbdc_atomic_check(crtc, crtc_state); - if (ret) + if (ret) { + DRM_ERROR("vop_afbdc_atomic_check() failed."); return ret; + } s->yuv_overlay = 0; if (VOP_CTRL_SUPPORT(vop, overlay_mode)) s->yuv_overlay = is_yuv_output(s->bus_format); ret = vop_hdr_atomic_check(crtc, crtc_state); - if (ret) + if (ret) { + DRM_ERROR("vop_hdr_atomic_check() failed."); return ret; - ret = vop_csc_atomic_check(crtc, crtc_state); - if (ret) + } + ret = vop_csc_atomic_check(crtc, crtc_state); + if (ret) { + DRM_ERROR("vop_csc_atomic_check() failed."); return ret; + } pzpos = kmalloc_array(vop_data->win_size, sizeof(*pzpos), GFP_KERNEL); if (!pzpos) @@ -3950,8 +3970,10 @@ static irqreturn_t vop_isr(int irq, void *data) * we config this register at frame start. */ spin_lock_irqsave(&vop->irq_lock, flags); + VOP_CTRL_SET(vop, level2_overlay_en, vop->pre_overlay); VOP_CTRL_SET(vop, alpha_hard_calc, vop->pre_overlay); + spin_unlock_irqrestore(&vop->irq_lock, flags); drm_crtc_handle_vblank(crtc); vop_handle_vblank(vop); diff --git a/drivers/input/keyboard/adc-keys.c b/drivers/input/keyboard/adc-keys.c index f8cf2ccacefd3..e96a9ec5fc2da 100644 --- a/drivers/input/keyboard/adc-keys.c +++ b/drivers/input/keyboard/adc-keys.c @@ -122,24 +122,30 @@ static int adc_keys_probe(struct platform_device *pdev) return -ENOMEM; st->channel = devm_iio_channel_get(dev, "buttons"); - if (IS_ERR(st->channel)) + if (IS_ERR(st->channel)) { + dev_err(dev, "%s: Can't find adc channel 'buttons'.\n", __func__); return PTR_ERR(st->channel); + } - if (!st->channel->indio_dev) + if (!st->channel->indio_dev) { + dev_err(dev, "%s: channels 'indio_dev' not set.\n", __func__); return -ENXIO; + } error = iio_get_channel_type(st->channel, &type); - if (error < 0) + if (error < 0) { + dev_err(dev, "%s: failed to get channel type.\n", __func__); return error; + } if (type != IIO_VOLTAGE) { - dev_err(dev, "Incompatible channel type %d\n", type); + dev_err(dev, "%s: Incompatible channel type %d\n", __func__, type); return -EINVAL; } if (device_property_read_u32(dev, "keyup-threshold-microvolt", &st->keyup_voltage)) { - dev_err(dev, "Invalid or missing keyup voltage\n"); + dev_err(dev, "%s: Invalid or missing keyup voltage\n", __func__); return -EINVAL; } st->keyup_voltage /= 1000; @@ -152,7 +158,7 @@ static int adc_keys_probe(struct platform_device *pdev) poll_dev = devm_input_allocate_polled_device(dev); if (!poll_dev) { - dev_err(dev, "failed to allocate input device\n"); + dev_err(dev, "%s: failed to allocate input device\n", __func__); return -ENOMEM; } @@ -181,7 +187,7 @@ static int adc_keys_probe(struct platform_device *pdev) error = input_register_polled_device(poll_dev); if (error) { - dev_err(dev, "Unable to register input device: %d\n", error); + dev_err(dev, "%s: Unable to register input device: %d\n", __func__, error); return error; } diff --git a/drivers/input/sensors/accel/lis3dh.c b/drivers/input/sensors/accel/lis3dh.c index d0cc99e3effab..72fa3543e2bb3 100644 --- a/drivers/input/sensors/accel/lis3dh.c +++ b/drivers/input/sensors/accel/lis3dh.c @@ -126,10 +126,12 @@ static int sensor_active(struct i2c_client *client, int enable, int rate/*ms*/) int odr_rate = 0; if (rate == 0) { - dev_err(&client->dev, "%s: rate == 0!!!\n", __func__); + dev_err(&client->dev, "%s:lis3dh: rate == 0!!!\n", __func__); return -1; } + dev_info(&client->dev, "%s:lis3dh: activate sensor.", __func__); + sensor->ops->ctrl_data = sensor_read_reg(client, sensor->ops->ctrl_reg); result = lis3dh_select_odr(odr_rate); sensor->ops->ctrl_data |= result; @@ -145,7 +147,7 @@ static int sensor_active(struct i2c_client *client, int enable, int rate/*ms*/) result = sensor_write_reg(client, sensor->ops->ctrl_reg, sensor->ops->ctrl_data); if (result) - dev_err(&client->dev, "%s:fail to active sensor\n", __func__); + dev_err(&client->dev, "%s:lis3dh: fail to active sensor\n", __func__); return result; } @@ -174,10 +176,13 @@ static int sensor_init(struct i2c_client *client) {LIS3DH_CTRL_REG6, 0x40}, }; + dev_info(&client->dev, "%s:lis3dh: initialize sensor.", __func__); + for (i = 0; i < (sizeof(reg_data) / sizeof(struct sensor_reg_data)); i++) { result = sensor_write_reg(client, reg_data[i].reg, reg_data[i].data); if (result) { - dev_err(&client->dev, "%s:line=%d,i=%d,error\n", __func__, __LINE__, i); + dev_err(&client->dev, "%s:lis3dh: failed to write register[%d]=0x%x data=0x%x\n", + __func__, i, reg_data[i].reg, reg_data[i].data); return result; } } @@ -196,6 +201,8 @@ static int gsensor_report_value(struct i2c_client *client, struct sensor_axis *a input_report_abs(sensor->input_dev, ABS_Y, axis->y); input_report_abs(sensor->input_dev, ABS_Z, axis->z); input_sync(sensor->input_dev); + } else { + dev_err(&client->dev, "%s:lis3dh: sensor is offline\n", __func__); } return 0; @@ -212,7 +219,8 @@ static int sensor_report_value(struct i2c_client *client) char buffer[6] = {0}; if (sensor->ops->read_len < 6) { - dev_err(&client->dev, "%s:lenth is error,len=%d\n", __func__, sensor->ops->read_len); + dev_err(&client->dev, "%s:lis3dh: lenth is error,len=%d\n", + __func__, sensor->ops->read_len); return -1; } @@ -223,7 +231,8 @@ static int sensor_report_value(struct i2c_client *client) *buffer = sensor->ops->read_reg | 0x80; ret = sensor_rx_data(client, buffer, sensor->ops->read_len); if (ret < 0) { - dev_err(&client->dev, "lis3dh read data failed, ret = %d\n", ret); + dev_err(&client->dev, "%s:lis3dh: read data failed, ret = %d\n", + __func__, ret); return ret; } } while (0); @@ -236,6 +245,9 @@ static int sensor_report_value(struct i2c_client *client) axis.y = (pdata->orientation[3]) * x + (pdata->orientation[4]) * y + (pdata->orientation[5]) * z; axis.z = (pdata->orientation[6]) * x + (pdata->orientation[7]) * y + (pdata->orientation[8]) * z; + dev_info(&client->dev, "%s:lis3dh: report x=%d y=%d z=%d", + __func__, axis.x, axis.y, axis.z); + gsensor_report_value(client, &axis); mutex_lock(&(sensor->data_mutex)); @@ -252,17 +264,17 @@ struct sensor_operate gsensor_lis3dh_ops = { .name = "lis3dh", .type = SENSOR_TYPE_ACCEL, .id_i2c = ACCEL_ID_LIS3DH, - .read_reg = LIS3DH_OUT_X_L, - .read_len = 6, + .read_reg = LIS3DH_OUT_X_L, + .read_len = 6, .id_reg = LIS3DH_WHO_AM_I, - .id_data = LIS3DH_DEVID, - .precision = LIS3DH_PRECISION, - .ctrl_reg = LIS3DH_CTRL_REG1, - .int_status_reg = LIS3DH_INT1_SRC, + .id_data = LIS3DH_DEVID, + .precision = LIS3DH_PRECISION, + .ctrl_reg = LIS3DH_CTRL_REG1, + .int_status_reg = LIS3DH_INT1_SRC, .range = {-32768, +32768}, - .trig = (IRQF_TRIGGER_LOW | IRQF_ONESHOT), + .trig = (IRQF_TRIGGER_LOW | IRQF_ONESHOT), .active = sensor_active, - .init = sensor_init, + .init = sensor_init, .report = sensor_report_value, }; @@ -276,7 +288,6 @@ static int __init gsensor_lis3dh_init(void) { struct sensor_operate *ops = gsensor_get_ops(); int type = ops->type; - return sensor_register_slave(type, NULL, NULL, gsensor_get_ops); } @@ -284,7 +295,6 @@ static void __exit gsensor_lis3dh_exit(void) { struct sensor_operate *ops = gsensor_get_ops(); int type = ops->type; - sensor_unregister_slave(type, NULL, NULL, gsensor_get_ops); } diff --git a/drivers/net/wireless/rockchip_wlan/cywdhd/bcmdhd/dhd_linux_platdev.c b/drivers/net/wireless/rockchip_wlan/cywdhd/bcmdhd/dhd_linux_platdev.c index c92185bd225a8..4fdbbc3025010 100644 --- a/drivers/net/wireless/rockchip_wlan/cywdhd/bcmdhd/dhd_linux_platdev.c +++ b/drivers/net/wireless/rockchip_wlan/cywdhd/bcmdhd/dhd_linux_platdev.c @@ -750,7 +750,7 @@ static int dhd_wifi_platform_load_sdio(void) adapter = &dhd_wifi_platdata->adapters[i]; - DHD_ERROR(("Power-up adapter '%s'\n", adapter->name)); + DHD_INFO(("Power-up adapter '%s'\n", adapter->name)); DHD_INFO((" - irq %d [flags %d], firmware: %s, nvram: %s\n", adapter->irq_num, adapter->intr_flags, adapter->fw_path, adapter->nv_path)); DHD_INFO((" - bus type %d, bus num %d, slot num %d\n\n", diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd.h index 3f8ca8adce447..cabc337cb249f 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd.h @@ -109,7 +109,7 @@ enum dhd_bus_state { DHD_BUS_DATA, /* Ready for frame transfers */ DHD_BUS_SUSPEND, /* Bus has been suspended */ DHD_BUS_DOWN_IN_PROGRESS, /* Bus going Down */ - DHD_BUS_REMOVE, /* Bus has been removed */ + DHD_BUS_REMOVE, /* Bus has been removed */ }; /* diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_dbg.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_dbg.h index 3f90c522936f2..b67a7cb5925fd 100755 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_dbg.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_dbg.h @@ -30,7 +30,6 @@ #ifndef _dhd_dbg_ #define _dhd_dbg_ - #if defined(DHD_EFI) && defined(DHD_LOG_DUMP) extern void dhd_log_dump_print(const char *fmt, ...); extern void dhd_log_dump_print_drv(const char *fmt, ...); diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.c index 6df687c16bde5..a91efd0d84fa6 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.c @@ -4542,7 +4542,7 @@ dhd_set_mcast_list_handler(void *handle, void *event_info, u8 event) _dhd_set_multicast_list(dhd, ifidx); - DHD_INFO(("%s: set multicast list for if %d\n", __FUNCTION__, ifidx)); + DHD_TRACE(("%s: set multicast list for if %d\n", __FUNCTION__, ifidx)); done: DHD_PERIM_UNLOCK(&dhd->pub); diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.c index 24802f9ff9eae..4f3fd3e93ed1f 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.c @@ -9886,13 +9886,18 @@ wl_cfg80211_change_station( "sta_flags_set:0x%x iface:%s \n", MAC2STRDBG(mac), params->sta_flags_mask, params->sta_flags_set, ndev->name)); - /* Processing only authorize/de-authorize flag for now */ + /* Processing only authorize/de-authorize flag for now + * Flag is set only if authentication server (radius server) + * authorize the station + */ if (!(params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHORIZED))) { - WL_ERR(("WLC_SCB_AUTHORIZE sta_flags_mask not set \n")); - return -ENOTSUPP; + WL_DBG(("WLC_SCB_AUTHORIZE Not authorised by IEEE 802.1X authenticator (radius server)\n")); + /*return -ENOTSUPP; DO NOT STOP, CANNOT KNOW IF SUCH AUTHENTICATOR IS REQUIRED HERE*/ + /*go ahead*/ } if (!(params->sta_flags_set & BIT(NL80211_STA_FLAG_AUTHORIZED))) { + WL_DBG(("WLC_SCB_AUTHORIZE Station is authorized, try to deauthorize station first.\n")); #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)) err = wldev_ioctl_set(ndev, WLC_SCB_DEAUTHORIZE, (u8 *)mac, ETH_ALEN); #else diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.h index 979bf22ae0044..6c63345adb448 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/wl_cfg80211.h @@ -86,18 +86,15 @@ extern char *dhd_log_dump_get_timestamp(void); /* 0 invalidates all debug messages. default is 1 */ #define WL_DBG_LEVEL 0xFF -#ifdef CUSTOMER_HW4_DEBUG -#define CFG80211_ERROR_TEXT "[dhd] CFG80211-INFO2) " -#else -#define CFG80211_ERROR_TEXT "[dhd] CFG80211-ERROR) " -#endif /* CUSTOMER_HW4_DEBUG */ +#define CFG80211_DEBUG_TEXT "[dhd]" +#define CFG80211_ERROR_TEXT "[dhd]" #if defined(DHD_DEBUG) #ifdef DHD_LOG_DUMP #define WL_ERR_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ + printk(KERN_ERR "%s : " x, __func__, ## args); \ DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ DHD_LOG_DUMP_WRITE(x, ## args); \ } \ @@ -112,7 +109,7 @@ do { \ #define WL_ERR_EX_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ + printk(KERN_ERR "%s : " x, __func__, ## args); \ DHD_LOG_DUMP_WRITE_EX("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ DHD_LOG_DUMP_WRITE_EX(x, ## args); \ } \ @@ -123,7 +120,7 @@ do { \ #define WL_ERR_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ + printk(KERN_ERR "%s : " x, __func__, ## args); \ } \ } while (0) #define WL_ERR(x) WL_ERR_MSG x @@ -134,7 +131,7 @@ do { \ #define WL_ERR_MSG(x, args...) \ do { \ if ((wl_dbg_level & WL_DBG_ERR) && net_ratelimit()) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ + printk(KERN_ERR CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ } \ } while (0) #define WL_ERR(x) WL_ERR_MSG x @@ -169,7 +166,7 @@ do { \ #define WL_INFORM_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_INFO) { \ - printk(KERN_INFO "[dhd] CFG80211-INFO) %s : " x, __func__, ## args); \ + printk(KERN_INFO "[dhd] %s: " x, __func__, ## args); \ } \ } while (0) #define WL_INFORM(x) WL_INFORM_MSG x @@ -180,7 +177,7 @@ do { \ #define WL_SCAN_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_SCAN) { \ - printk(KERN_INFO "[dhd] CFG80211-SCAN) %s :" x, __func__, ## args); \ + printk(KERN_INFO "[dhd] %s:" x, __func__, ## args); \ } \ } while (0) #define WL_SCAN(x) WL_SCAN_MSG x @@ -190,7 +187,7 @@ do { \ #define WL_TRACE_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_TRACE) { \ - printk(KERN_INFO "[dhd] CFG80211-TRACE) %s :" x, __func__, ## args); \ + printk(KERN_DEBUG "[dhd] %s:" x, __func__, ## args); \ } \ } while (0) #define WL_TRACE(x) WL_TRACE_MSG x @@ -201,7 +198,7 @@ do { \ #define WL_TRACE_HW4_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO "[dhd] CFG80211-TRACE) %s : " x, __func__, ## args); \ + printk(KERN_DEBUG "[dhd] %s: " x, __func__, ## args); \ } \ } while (0) #define WL_TRACE_HW4(x) WL_TRACE_HW4_MSG x @@ -212,7 +209,7 @@ do { \ #define WL_DBG_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_DBG) { \ - printk(KERN_INFO "[dhd] CFG80211-DEBUG) %s :" x, __func__, ## args); \ + printk(KERN_DEBUG "[dhd] %s:" x, __func__, ## args); \ } \ } while (0) #define WL_DBG(x) WL_DBG_MSG x diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh.c index 24a2a0929f766..c230714e8417f 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh.c @@ -81,7 +81,7 @@ void bcmsdh_btsdio_process_hang_state(dhd_hang_state_t new_state) bool state_change = false; BCMSDH_ERROR(("%s: DHD hang state changed - [%d] -> [%d]\n", - __FUNCTION__, g_dhd_hang_state, new_state)); + __func__, g_dhd_hang_state, new_state)); if (g_dhd_hang_state == new_state) return; @@ -105,12 +105,12 @@ void bcmsdh_btsdio_process_hang_state(dhd_hang_state_t new_state) break; default: - BCMSDH_ERROR(("%s: Unhandled Hang state\n", __FUNCTION__)); + BCMSDH_ERROR(("%s: Unhandled Hang state\n", __func__)); break; } if (!state_change) { - BCMSDH_ERROR(("%s: Hang state cannot be changed\n", __FUNCTION__)); + BCMSDH_ERROR(("%s: Hang state cannot be changed\n", __func__)); return; } @@ -142,7 +142,7 @@ void bcmsdh_btsdio_interface_init(struct sdio_func *func, f3intr_handler f3intr_fun, dhd_hang_notification hang_notification) { bcmsdh_info_t *bcmsdh = (bcmsdh_info_t *)l_bcmsdh; - BCMSDH_INFO(("%s: func %p \n", __FUNCTION__, func)); + BCMSDH_INFO(("%s: func %p \n", __func__, func)); func_f3 = func; processf3intr = f3intr_fun; sdioh_sdmmc_card_enable_func_f3(bcmsdh->sdioh, func); @@ -346,7 +346,7 @@ bcmsdh_cfg_read(void *sdh, uint fnc_num, uint32 addr, int *err) if (err) *err = (SDIOH_API_SUCCESS(status) ? 0 : BCME_SDIO_ERROR); - BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint8data = 0x%x\n", __FUNCTION__, + BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint8data = 0x%x\n", __func__, fnc_num, addr, data)); return data; @@ -378,7 +378,7 @@ bcmsdh_cfg_write(void *sdh, uint fnc_num, uint32 addr, uint8 data, int *err) if (err) *err = SDIOH_API_SUCCESS(status) ? 0 : BCME_SDIO_ERROR; - BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint8data = 0x%x\n", __FUNCTION__, + BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint8data = 0x%x\n", __func__, fnc_num, addr, data)); } EXPORT_SYMBOL(bcmsdh_cfg_write); @@ -400,7 +400,7 @@ bcmsdh_cfg_read_word(void *sdh, uint fnc_num, uint32 addr, int *err) if (err) *err = (SDIOH_API_SUCCESS(status) ? 0 : BCME_SDIO_ERROR); - BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint32data = 0x%x\n", __FUNCTION__, + BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint32data = 0x%x\n", __func__, fnc_num, addr, data)); return data; @@ -423,7 +423,7 @@ bcmsdh_cfg_write_word(void *sdh, uint fnc_num, uint32 addr, uint32 data, int *er if (err) *err = (SDIOH_API_SUCCESS(status) ? 0 : BCME_SDIO_ERROR); - BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint32data = 0x%x\n", __FUNCTION__, fnc_num, + BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, uint32data = 0x%x\n", __func__, fnc_num, addr, data)); } @@ -450,7 +450,7 @@ bcmsdh_cis_read(void *sdh, uint func, uint8 *cis, uint length) if (ascii) { /* Move binary bits to tmp and format them into the provided buffer. */ if ((tmp_buf = (uint8 *)MALLOC(bcmsdh->osh, length)) == NULL) { - BCMSDH_ERROR(("%s: out of memory\n", __FUNCTION__)); + BCMSDH_ERROR(("%s: out of memory\n", __func__)); return BCME_NOMEM; } bcopy(cis, tmp_buf, length); @@ -521,7 +521,7 @@ bcmsdh_reg_read(void *sdh, uintptr addr, uint size) SDIOH_API_RC status; uint32 word = 0; - BCMSDH_INFO(("%s:fun = 1, addr = 0x%x\n", __FUNCTION__, (unsigned int)addr)); + BCMSDH_INFO(("%s:fun = 1, addr = 0x%x\n", __func__, (unsigned int)addr)); if (!bcmsdh) bcmsdh = l_bcmsdh; @@ -561,7 +561,7 @@ bcmsdh_reg_read(void *sdh, uintptr addr, uint size) /* otherwise, bad sdio access or invalid size */ BCMSDH_ERROR(("%s: error reading addr 0x%x size %d\n", - __FUNCTION__, (unsigned int)addr, size)); + __func__, (unsigned int)addr, size)); return 0xFFFFFFFF; } @@ -573,7 +573,7 @@ bcmsdh_reg_write(void *sdh, uintptr addr, uint size, uint32 data) int err = 0; BCMSDH_INFO(("%s:fun = 1, addr = 0x%x, uint%ddata = 0x%x\n", - __FUNCTION__, (unsigned int)addr, size*8, data)); + __func__, (unsigned int)addr, size*8, data)); if (!bcmsdh) bcmsdh = l_bcmsdh; @@ -596,7 +596,7 @@ bcmsdh_reg_write(void *sdh, uintptr addr, uint size, uint32 data) return 0; BCMSDH_ERROR(("%s: error writing 0x%08x to addr 0x%04x size %d\n", - __FUNCTION__, data, (unsigned int)addr, size)); + __func__, data, (unsigned int)addr, size)); return 0xFFFFFFFF; } @@ -621,7 +621,7 @@ bcmsdh_recv_buf(void *sdh, uint32 addr, uint fn, uint flags, ASSERT(bcmsdh->init_success); BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, size = %d\n", - __FUNCTION__, fn, addr, nbytes)); + __func__, fn, addr, nbytes)); /* Async not implemented yet */ ASSERT(!(flags & SDIO_REQ_ASYNC)); @@ -659,7 +659,7 @@ bcmsdh_send_buf(void *sdh, uint32 addr, uint fn, uint flags, ASSERT(bcmsdh->init_success); BCMSDH_INFO(("%s:fun = %d, addr = 0x%x, size = %d\n", - __FUNCTION__, fn, addr, nbytes)); + __func__, fn, addr, nbytes)); /* Async not implemented yet */ ASSERT(!(flags & SDIO_REQ_ASYNC)); diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc.c index 924cff2569d14..e27cae9ab68b2 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc.c @@ -189,7 +189,7 @@ sdioh_sdmmc_card_enablefuncs(sdioh_info_t *sd) } /* - * Public entry points & extern's + * Public entry points & extern's */ extern sdioh_info_t * sdioh_attach(osl_t *osh, struct sdio_func *func) diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc_linux.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc_linux.c index 38d127c15d1c3..6977da8d2364e 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc_linux.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/bcmsdh_sdmmc_linux.c @@ -154,7 +154,7 @@ static int bcmsdh_sdmmc_probe(struct sdio_func *func, if (func == NULL) return -EINVAL; - sd_err(("%s: Enter num=%d\n", __FUNCTION__, func->num)); + sd_trace(("%s: Enter num=%d\n", __FUNCTION__, func->num)); sd_info(("sdio_bcmsdh: func->class=%x\n", func->class)); sd_info(("sdio_vendor: 0x%04x\n", func->vendor)); sd_info(("sdio_device: 0x%04x\n", func->device)); diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.c index 9d664f1f3985e..b82dda87f797e 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.c @@ -97,7 +97,7 @@ s32 dhd_cfg80211_set_p2p_info(struct bcm_cfg80211 *cfg, int val) { dhd_pub_t *dhd = (dhd_pub_t *)(cfg->pub); dhd->op_mode |= val; - WL_ERR(("Set : op_mode=0x%04x\n", dhd->op_mode)); + WL_TRACE(("Set : op_mode=0x%04x\n", dhd->op_mode)); #ifdef ARP_OFFLOAD_SUPPORT if (dhd->arp_version == 1) { /* IF P2P is enabled, disable arpoe */ @@ -113,7 +113,7 @@ s32 dhd_cfg80211_clean_p2p_info(struct bcm_cfg80211 *cfg) { dhd_pub_t *dhd = (dhd_pub_t *)(cfg->pub); dhd->op_mode &= ~(DHD_FLAG_P2P_GC_MODE | DHD_FLAG_P2P_GO_MODE); - WL_ERR(("Clean : op_mode=0x%04x\n", dhd->op_mode)); + WL_TRACE(("Clean : op_mode=0x%04x\n", dhd->op_mode)); #ifdef ARP_OFFLOAD_SUPPORT if (dhd->arp_version == 1) { @@ -293,7 +293,7 @@ int dhd_cfgvendor_priv_string_handler(struct bcm_cfg80211 *cfg, struct wireless_ ioc.buf = buf; ret = dhd_ioctl_process(dhd, index, &ioc, buf); if (ret) { - WL_TRACE(("dhd_ioctl_process return err %d\n", ret)); + WL_ERR(("dhd_ioctl_process return err %d\n", ret)); ret = OSL_ERROR(ret); goto done; } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.h index dd0766a2987cb..f967072d5b19a 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_cfg80211.h @@ -30,17 +30,11 @@ #ifndef __DHD_CFG80211__ #define __DHD_CFG80211__ +#include #include #include #include -#ifndef WL_ERR -#define WL_ERR CFG80211_ERR -#endif // endif -#ifndef WL_TRACE -#define WL_TRACE CFG80211_TRACE -#endif // endif - s32 dhd_cfg80211_init(struct bcm_cfg80211 *cfg); s32 dhd_cfg80211_deinit(struct bcm_cfg80211 *cfg); s32 dhd_cfg80211_down(struct bcm_cfg80211 *cfg); diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_common.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_common.c index 904e2c6792834..7daf94613fd1e 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_common.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_common.c @@ -113,9 +113,21 @@ #ifdef DHD_LOG_PRINT_RATE_LIMIT int log_print_threshold = 0; #endif /* DHD_LOG_PRINT_RATE_LIMIT */ -int dhd_msg_level = DHD_ERROR_VAL | DHD_FWLOG_VAL;// | DHD_EVENT_VAL - /* For CUSTOMER_HW4 do not enable DHD_IOVAR_MEM_VAL by default */ -// | DHD_PKT_MON_VAL; + +/* For CUSTOMER_HW4 do not enable DHD_IOVAR_MEM_VAL by default */ +#if defined(DHD_DEBUG_TRACE_2) +int dhd_msg_level = DHD_ERROR_VAL | DHD_PKT_MON_VAL // + | DHD_FWLOG_VAL | DHD_TRACE_VAL | DHD_INFO_VAL // + | DHD_DATA_VAL | DHD_EVENT_VAL | DHD_PNO_VAL // + | DHD_MSGTRACE_VAL | DHD_DNGL_IOVAR_SET_VAL // + | DHD_IOVAR_MEM_VAL | DHD_CFG_VAL | DHD_CONFIG_VAL; +#elif defined(DHD_DEBUG) +int dhd_msg_level = DHD_ERROR_VAL| DHD_FWLOG_VAL | DHD_INFO_VAL // + | DHD_DNGL_IOVAR_SET_VAL | DHD_IOVAR_MEM_VAL; +#else +int dhd_msg_level = DHD_ERROR_VAL | DHD_FWLOG_VAL // + | DHD_INFO_VAL | DHD_DNGL_IOVAR_SET_VAL; +#endif #if defined(WL_WIRELESS_EXT) #include @@ -325,27 +337,28 @@ enum { }; const bcm_iovar_t dhd_iovars[] = { - /* name varid flags flags2 type minlen */ - {"version", IOV_VERSION, 0, 0, IOVT_BUFFER, sizeof(dhd_version)}, - {"wlmsglevel", IOV_WLMSGLEVEL, 0, 0, IOVT_UINT32, 0 }, + /* flags/ + *name varid flags2 type minlen */ + {"version", IOV_VERSION, 0, 0, IOVT_BUFFER, sizeof(dhd_version)}, + {"wlmsglevel", IOV_WLMSGLEVEL, 0, 0, IOVT_UINT32, 0 }, #ifdef DHD_DEBUG - {"msglevel", IOV_MSGLEVEL, 0, 0, IOVT_UINT32, 0}, - {"mem_debug", IOV_MEM_DEBUG, 0, 0, IOVT_BUFFER, 0 }, + {"msglevel", IOV_MSGLEVEL, 0, 0, IOVT_UINT32, 0}, + {"mem_debug", IOV_MEM_DEBUG, 0, 0, IOVT_BUFFER, 0 }, #ifdef BCMPCIE - {"flow_ring_debug", IOV_FLOW_RING_DEBUG, 0, 0, IOVT_BUFFER, 0 }, + {"flow_ring_debug", IOV_FLOW_RING_DEBUG, 0, 0, IOVT_BUFFER, 0 }, #endif /* BCMPCIE */ #endif /* DHD_DEBUG */ - {"bcmerrorstr", IOV_BCMERRORSTR, 0, 0, IOVT_BUFFER, BCME_STRLEN}, - {"bcmerror", IOV_BCMERROR, 0, 0, IOVT_INT8, 0}, - {"wdtick", IOV_WDTICK, 0, 0, IOVT_UINT32, 0}, - {"dump", IOV_DUMP, 0, 0, IOVT_BUFFER, DHD_IOCTL_MAXLEN}, - {"cons", IOV_CONS, 0, 0, IOVT_BUFFER, 0}, - {"dconpoll", IOV_DCONSOLE_POLL, 0, 0, IOVT_UINT32, 0}, - {"clearcounts", IOV_CLEARCOUNTS, 0, 0, IOVT_VOID, 0}, - {"gpioob", IOV_GPIOOB, 0, 0, IOVT_UINT32, 0}, - {"ioctl_timeout", IOV_IOCTLTIMEOUT, 0, 0, IOVT_UINT32, 0}, + {"bcmerrorstr", IOV_BCMERRORSTR, 0, 0, IOVT_BUFFER, BCME_STRLEN}, + {"bcmerror", IOV_BCMERROR, 0, 0, IOVT_INT8, 0}, + {"wdtick", IOV_WDTICK, 0, 0, IOVT_UINT32, 0}, + {"dump", IOV_DUMP, 0, 0, IOVT_BUFFER, DHD_IOCTL_MAXLEN}, + {"cons", IOV_CONS, 0, 0, IOVT_BUFFER, 0}, + {"dconpoll", IOV_DCONSOLE_POLL, 0, 0, IOVT_UINT32, 0}, + {"clearcounts", IOV_CLEARCOUNTS, 0, 0, IOVT_VOID, 0}, + {"gpioob", IOV_GPIOOB, 0, 0, IOVT_UINT32, 0}, + {"ioctl_timeout", IOV_IOCTLTIMEOUT, 0, 0, IOVT_UINT32, 0}, #ifdef PROP_TXSTATUS - {"proptx", IOV_PROPTXSTATUS_ENABLE, 0, 0, IOVT_BOOL, 0 }, + {"proptx", IOV_PROPTXSTATUS_ENABLE, 0, 0, IOVT_BOOL, 0 }, /* set the proptxtstatus operation mode: 0 - Do not do any proptxtstatus flow control @@ -437,13 +450,13 @@ dhd_query_bus_erros(dhd_pub_t *dhdp) if (dhdp->dongle_reset) { DHD_ERROR_RLMT(("%s: Dongle Reset occurred, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } if (dhdp->dongle_trap_occured) { DHD_ERROR_RLMT(("%s: FW TRAP has occurred, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; dhdp->hang_reason = HANG_REASON_DONGLE_TRAP; dhd_os_send_hang_message(dhdp); @@ -451,64 +464,64 @@ dhd_query_bus_erros(dhd_pub_t *dhdp) if (dhdp->iovar_timeout_occured) { DHD_ERROR_RLMT(("%s: Resumed on timeout for previous IOVAR, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } #ifdef PCIE_FULL_DONGLE if (dhdp->d3ack_timeout_occured) { DHD_ERROR_RLMT(("%s: Resumed on timeout for previous D3ACK, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } if (dhdp->livelock_occured) { DHD_ERROR_RLMT(("%s: LIVELOCK occurred for previous msg, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } if (dhdp->pktid_audit_failed) { DHD_ERROR_RLMT(("%s: pktid_audit_failed, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } #endif /* PCIE_FULL_DONGLE */ if (dhdp->iface_op_failed) { DHD_ERROR_RLMT(("%s: iface_op_failed, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } if (dhdp->scan_timeout_occurred) { DHD_ERROR_RLMT(("%s: scan_timeout_occurred, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } if (dhdp->scan_busy_occurred) { DHD_ERROR_RLMT(("%s: scan_busy_occurred, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } #ifdef DNGL_AXI_ERROR_LOGGING if (dhdp->axi_error) { DHD_ERROR_RLMT(("%s: AXI error occurred, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } #endif /* DNGL_AXI_ERROR_LOGGING */ if (dhd_bus_get_linkdown(dhdp)) { DHD_ERROR_RLMT(("%s : PCIE Link down occurred, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } if (dhd_bus_get_cto(dhdp)) { DHD_ERROR_RLMT(("%s : CTO Recovery reported, cannot proceed\n", - __FUNCTION__)); + __func__)); ret = TRUE; } @@ -545,7 +558,7 @@ dhd_sssr_mempool_init(dhd_pub_t *dhd) dhd->sssr_mempool = (uint8 *) MALLOCZ(dhd->osh, DHD_SSSR_MEMPOOL_SIZE); if (dhd->sssr_mempool == NULL) { DHD_ERROR(("%s: MALLOC of sssr_mempool failed\n", - __FUNCTION__)); + __func__)); return BCME_ERROR; } return BCME_OK; @@ -575,7 +588,7 @@ dhd_get_sssr_reg_info(dhd_pub_t *dhd) sizeof(dhd->sssr_reg_info), FALSE); if (ret < 0) { DHD_ERROR(("%s: sssr_reg_info failed (error=%d)\n", - __FUNCTION__, ret)); + __func__, ret)); return BCME_ERROR; } @@ -610,34 +623,34 @@ dhd_sssr_dump_init(dhd_pub_t *dhd) dhd->sssr_inited = FALSE; if (!support_sssr_dump) { - DHD_ERROR(("%s: sssr dump not inited as instructed by mod param\n", __FUNCTION__)); + DHD_ERROR(("%s: sssr dump not inited as instructed by mod param\n", __func__)); return BCME_OK; } /* check if sssr mempool is allocated */ if (dhd->sssr_mempool == NULL) { DHD_ERROR(("%s: sssr_mempool is not allocated\n", - __FUNCTION__)); + __func__)); return BCME_ERROR; } /* Get SSSR reg info */ if (dhd_get_sssr_reg_info(dhd) != BCME_OK) { - DHD_ERROR(("%s: dhd_get_sssr_reg_info failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd_get_sssr_reg_info failed\n", __func__)); return BCME_ERROR; } /* Validate structure version */ if (dhd->sssr_reg_info.version > SSSR_REG_INFO_VER_1) { DHD_ERROR(("%s: dhd->sssr_reg_info.version (%d : %d) mismatch\n", - __FUNCTION__, (int)dhd->sssr_reg_info.version, SSSR_REG_INFO_VER)); + __func__, (int)dhd->sssr_reg_info.version, SSSR_REG_INFO_VER)); return BCME_ERROR; } /* Validate structure length */ if (dhd->sssr_reg_info.length < sizeof(sssr_reg_info_v0_t)) { DHD_ERROR(("%s: dhd->sssr_reg_info.length (%d : %d) mismatch\n", - __FUNCTION__, (int)dhd->sssr_reg_info.length, + __func__, (int)dhd->sssr_reg_info.length, (int)sizeof(dhd->sssr_reg_info))); return BCME_ERROR; } @@ -646,7 +659,7 @@ dhd_sssr_dump_init(dhd_pub_t *dhd) sssr_bufsize = dhd_get_sssr_bufsize(dhd); if (sssr_bufsize > DHD_SSSR_MEMPOOL_SIZE) { DHD_ERROR(("%s: sssr_bufsize(%d) is greater than sssr_mempool(%d)\n", - __FUNCTION__, (int)sssr_bufsize, DHD_SSSR_MEMPOOL_SIZE)); + __func__, (int)sssr_bufsize, DHD_SSSR_MEMPOOL_SIZE)); return BCME_ERROR; } @@ -715,7 +728,7 @@ dhd_sssr_print_filepath(dhd_pub_t *dhd, char *path) if (!dhd || !path) { DHD_ERROR(("%s: dhd or memdump_path is NULL\n", - __FUNCTION__)); + __func__)); return; } @@ -749,7 +762,7 @@ dhd_sssr_print_filepath(dhd_pub_t *dhd, char *path) } if (print_info) { - DHD_ERROR(("%s: file_path = %s%s\n", __FUNCTION__, + DHD_ERROR(("%s: file_path = %s%s\n", __func__, path, FILE_NAME_HAL_TAG)); } } @@ -769,7 +782,7 @@ void* dhd_get_fwdump_buf(dhd_pub_t *dhd_pub, uint32 length) if (dhd_pub->soc_ram == NULL) { DHD_ERROR(("%s: Failed to allocate memory for fw crash snap shot.\n", - __FUNCTION__)); + __func__)); dhd_pub->soc_ram_length = 0; } else { memset(dhd_pub->soc_ram, 0, length); @@ -923,11 +936,10 @@ dhd_wl_ioctl_get_intiovar(dhd_pub_t *dhd_pub, char *name, uint *pval, *pval = ltoh32(*((uint*)iovbuf)); } else { DHD_ERROR(("%s: get int iovar %s failed, ERR %d\n", - __FUNCTION__, name, ret)); + __func__, name, ret)); } } else { - DHD_ERROR(("%s: mkiovar %s failed\n", - __FUNCTION__, name)); + DHD_ERROR(("%s: mkiovar %s failed\n", __func__, name)); } return ret; @@ -948,11 +960,10 @@ dhd_wl_ioctl_set_intiovar(dhd_pub_t *dhd_pub, char *name, uint val, ret = dhd_wl_ioctl_cmd(dhd_pub, cmd, iovbuf, len, set, ifidx); if (ret) { DHD_ERROR(("%s: set int iovar %s failed, ERR %d\n", - __FUNCTION__, name, ret)); + __func__, name, ret)); } } else { - DHD_ERROR(("%s: mkiovar %s failed\n", - __FUNCTION__, name)); + DHD_ERROR(("%s: mkiovar %s failed\n", __func__, name)); } return ret; @@ -982,6 +993,22 @@ static struct ioctl2str_s { {WLC_SET_WSEC, "SET_WSEC"}, {WLC_SET_INTERFERENCE_MODE, "SET_INTERFERENCE_MODE"}, {WLC_SET_RADAR, "SET_RADAR"}, + {WLC_SET_VAR, "WLC_SET_VAR"}, + {WLC_GET_VAR, "WLC_GET_VAR"}, + {WLC_SCB_DEAUTHENTICATE_FOR_REASON, "WLC_SCB_DEAUTHENTICATE_FOR_REASON"}, + {WLC_SET_BCNPRD, "WLC_SET_BCNPRD"}, + {WLC_SET_DTIMPRD, "WLC_SET_DTIMPRD"}, + {WLC_SET_INFRA, "WLC_SET_INFRA"}, + {WLC_SCAN, "WLC_SCAN"}, + {WLC_SET_AP, "WLC_SET_AP"}, + {WLC_SET_PM, "WLC_SET_PM"}, + {WLC_SET_SCAN_CHANNEL_TIME, "WLC_SET_SCAN_CHANNEL_TIME"}, + {WLC_SET_SCAN_UNASSOC_TIME, "WLC_SET_SCAN_UNASSOC_TIME"}, + {WLC_SET_SCAN_PASSIVE_TIME, "WLC_SET_SCAN_PASSIVE_TIME"}, + {WLC_SET_FAKEFRAG, "WLC_SET_FAKEFRAG"}, + {WLC_SET_SRL, "WLC_SET_SRL"}, + {WLC_SET_LRL, "WLC_SET_LRL"}, + {WLC_SCB_AUTHORIZE, "WLC_SCB_AUTHORIZE"}, {0, NULL} }; @@ -1019,31 +1046,31 @@ dhd_wl_ioctl(dhd_pub_t *dhd_pub, int ifidx, wl_ioctl_t *ioc, void *buf, int len) #ifdef DHD_PCIE_NATIVE_RUNTIMEPM DHD_OS_WAKE_LOCK(dhd_pub); if (pm_runtime_get_sync(dhd_bus_to_dev(dhd_pub->bus)) < 0) { - DHD_RPM(("%s: pm_runtime_get_sync error. \n", __FUNCTION__)); + DHD_RPM(("%s: pm_runtime_get_sync error. \n", __func__)); DHD_OS_WAKE_UNLOCK(dhd_pub); return BCME_ERROR; } #endif /* DHD_PCIE_NATIVE_RUNTIMEPM */ #ifdef KEEPIF_ON_DEVICE_RESET - if (ioc->cmd == WLC_GET_VAR) { - dbus_config_t config; - config.general_param = 0; - if (buf) { - if (!strcmp(buf, "wowl_activate")) { - /* 1 (TRUE) after decreased by 1 */ - config.general_param = 2; - } else if (!strcmp(buf, "wowl_clear")) { - /* 0 (FALSE) after decreased by 1 */ - config.general_param = 1; - } - } - if (config.general_param) { - config.config_id = DBUS_CONFIG_ID_KEEPIF_ON_DEVRESET; - config.general_param--; - dbus_set_config(dhd_pub->dbus, &config); + if (ioc->cmd == WLC_GET_VAR) { + dbus_config_t config; + config.general_param = 0; + if (buf) { + if (!strcmp(buf, "wowl_activate")) { + /* 1 (TRUE) after decreased by 1 */ + config.general_param = 2; + } else if (!strcmp(buf, "wowl_clear")) { + /* 0 (FALSE) after decreased by 1 */ + config.general_param = 1; } } + if (config.general_param) { + config.config_id = DBUS_CONFIG_ID_KEEPIF_ON_DEVRESET; + config.general_param--; + dbus_set_config(dhd_pub->dbus, &config); + } + } #endif /* KEEPIF_ON_DEVICE_RESET */ if (dhd_os_proto_block(dhd_pub)) @@ -1064,35 +1091,57 @@ dhd_wl_ioctl(dhd_pub_t *dhd_pub, int ifidx, wl_ioctl_t *ioc, void *buf, int len) #ifdef DHD_DISCONNECT_TRACE if ((WLC_DISASSOC == ioc->cmd) || (WLC_DOWN == ioc->cmd) || (WLC_DISASSOC_MYAP == ioc->cmd)) { - DHD_ERROR(("IOCTL Disconnect WiFi: %d\n", ioc->cmd)); + DHD_TRACE(("IOCTL Disconnect WiFi: %d\n", ioc->cmd)); } #endif /* HW_DISCONNECT_TRACE */ /* logging of iovars that are send to the dongle, ./dhd msglevel +iovar */ if (ioc->set == TRUE) { char *pars = (char *)buf; // points at user buffer - if (ioc->cmd == WLC_SET_VAR && buf) { - DHD_DNGL_IOVAR_SET(("iovar:%d: set %s", ifidx, pars)); - if (ioc->len > 1 + sizeof(uint32)) { - // skip iovar name: - pars += strnlen(pars, ioc->len - 1 - sizeof(uint32)); - pars++; // skip NULL character + int name_len = 0; + if (pars && ioc->cmd == WLC_SET_VAR && ioc->len > 1 + sizeof(uint32)) { + DHD_DNGL_IOVAR_SET(("%s:iovar: ifidx=%d cmd=%d %s name=%s\n", + __func__, ifidx, ioc->cmd, ioctl2str(ioc->cmd), pars)); + // skip iovar name (seek to value part) + name_len = strnlen(pars, ioc->len - 1 - sizeof(uint32)); + pars += name_len; + pars++; // skip NULL character + } + if (pars != NULL && ioc->len > name_len) { + if ((ioc->len - name_len) >= sizeof(uint64)) { + DHD_DNGL_IOVAR_SET(("%s:iovar: ifidx=%d cmd=%d %s value=0x%llx\n", + __func__, ifidx, ioc->cmd, ioctl2str(ioc->cmd), *((uint64*)pars))); + } else { + DHD_DNGL_IOVAR_SET(("%s:iovar: ifidx=%d cmd=%d %s value=0x%x\n", + __func__, ifidx, ioc->cmd, ioctl2str(ioc->cmd), *((uint32*)pars))); } - } else { - DHD_DNGL_IOVAR_SET(("ioctl:%d: set %d %s", - ifidx, ioc->cmd, ioctl2str(ioc->cmd))); } - if (pars != NULL) { - DHD_DNGL_IOVAR_SET((" 0x%x\n", *(uint32*)pars)); - } else { - DHD_DNGL_IOVAR_SET((" NULL\n")); + else if (pars && ioc->len > 0) { + char hexstr[ioc->len * 3 + 1]; + char hexval[4]; /* AA_ + \0 */ + int i; + for(i = 0; i < ioc->len; i++) { + snprintf(hexval, sizeof(hexval)-1, "%02x ", ((uint8)(*pars)) & 0x00ff); + strncat(hexstr, hexval, sizeof(hexstr)-1); + pars++; + } + DHD_DNGL_IOVAR_SET(("%s:iovar: ifidx=%d cmd=%d %s value=%s\n", + __func__, ifidx, ioc->cmd, ioctl2str(ioc->cmd), hexstr)); + } + else if (buf) { + DHD_DNGL_IOVAR_SET(("%s:iovar: ifidx=%d cmd=%d %s buf=%p\n", + __func__, ifidx, ioc->cmd, ioctl2str(ioc->cmd), buf)); + } + else { + DHD_DNGL_IOVAR_SET(("%s:iovar: ifidx=%d cmd=%d %s buf=NULL\n", + __func__, ifidx, ioc->cmd, ioctl2str(ioc->cmd))); } } DHD_LINUX_GENERAL_LOCK(dhd_pub, flags); if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(dhd_pub)) { - DHD_INFO(("%s: returning as busstate=%d\n", - __FUNCTION__, dhd_pub->busstate)); + DHD_TRACE(("%s: returning as busstate=%d\n", + __func__, dhd_pub->busstate)); DHD_LINUX_GENERAL_UNLOCK(dhd_pub, flags); dhd_os_proto_unblock(dhd_pub); return -ENODEV; @@ -1103,7 +1152,7 @@ dhd_wl_ioctl(dhd_pub_t *dhd_pub, int ifidx, wl_ioctl_t *ioc, void *buf, int len) DHD_LINUX_GENERAL_LOCK(dhd_pub, flags); if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(dhd_pub)) { DHD_ERROR(("%s: bus is in suspend(%d) or suspending(0x%x) state!!\n", - __FUNCTION__, dhd_pub->busstate, dhd_pub->dhd_bus_busy_state)); + __func__, dhd_pub->busstate, dhd_pub->dhd_bus_busy_state)); DHD_BUS_BUSY_CLEAR_IN_IOVAR(dhd_pub); dhd_os_busbusy_wake(dhd_pub); DHD_LINUX_GENERAL_UNLOCK(dhd_pub, flags); @@ -1139,10 +1188,10 @@ dhd_wl_ioctl(dhd_pub_t *dhd_pub, int ifidx, wl_ioctl_t *ioc, void *buf, int len) dhd_iov_li_print(&dhd_pub->dump_iovlist_head); } #endif /* DUMP_IOCTL_IOV_LIST */ + #ifdef DHD_LOG_DUMP - if ((ioc->cmd == WLC_GET_VAR || ioc->cmd == WLC_SET_VAR) && - buf != NULL) { - if (buf) { + if ((ioc->cmd == WLC_GET_VAR || ioc->cmd == WLC_SET_VAR)) { + if (buf != NULL) { lval = 0; slen = strlen(buf) + 1; msg = (char*)buf; @@ -1160,15 +1209,15 @@ dhd_wl_ioctl(dhd_pub_t *dhd_pub, int ifidx, wl_ioctl_t *ioc, void *buf, int len) } } DHD_IOVAR_MEM(( - "%s: cmd: %d, msg: %s val: 0x%x," + "%s: [%s] cmd: %d, msg: %s val: 0x%x," " len: %d, set: %d, txn-id: %d\n", - ioc->cmd == WLC_GET_VAR ? + __func__, ioc->cmd == WLC_GET_VAR ? "WLC_GET_VAR" : "WLC_SET_VAR", ioc->cmd, msg, lval, ioc->len, ioc->set, dhd_prot_get_ioctl_trans_id(dhd_pub))); } else { - DHD_IOVAR_MEM(("%s: cmd: %d, len: %d, set: %d, txn-id: %d\n", - ioc->cmd == WLC_GET_VAR ? "WLC_GET_VAR" : "WLC_SET_VAR", + DHD_IOVAR_MEM(("%s: [%s] cmd: %d, len: %d, set: %d, txn-id: %d\n", + __func__, ioc->cmd == WLC_GET_VAR ? "WLC_GET_VAR" : "WLC_SET_VAR", ioc->cmd, ioc->len, ioc->set, dhd_prot_get_ioctl_trans_id(dhd_pub))); } @@ -1184,13 +1233,14 @@ dhd_wl_ioctl(dhd_pub_t *dhd_pub, int ifidx, wl_ioctl_t *ioc, void *buf, int len) } /* Do not dump for WLC_GET_MAGIC and WLC_GET_VERSION */ if (ioc->cmd != WLC_GET_MAGIC && ioc->cmd != WLC_GET_VERSION) - DHD_IOVAR_MEM(("WLC_IOCTL: cmd: %d, val: %d, len: %d, " - "set: %d\n", ioc->cmd, val, ioc->len, ioc->set)); + DHD_IOVAR_MEM(("%s: cmd: %d, val: %d, len: %d, " + "set: %d\n", __func__, ioc->cmd, val, ioc->len, ioc->set)); } else { - DHD_IOVAR_MEM(("WLC_IOCTL: cmd: %d, buf is NULL\n", ioc->cmd)); + DHD_ERROR(("%s: cmd: %d, buf is NULL\n", __func__, ioc->cmd)); } } #endif /* DHD_LOG_DUMP */ + if (ret && dhd_pub->up) { /* Send hang event only if dhd_open() was success */ dhd_os_check_hang(dhd_pub, ifidx, ret); @@ -1199,7 +1249,7 @@ dhd_wl_ioctl(dhd_pub_t *dhd_pub, int ifidx, wl_ioctl_t *ioc, void *buf, int len) if (ret == -ETIMEDOUT && !dhd_pub->up) { DHD_ERROR(("%s: 'resumed on timeout' error is " "occurred before the interface does not" - " bring up\n", __FUNCTION__)); + " bring up\n", __func__)); } exit: @@ -1270,7 +1320,7 @@ dhd_iovar_parse_bssidx(dhd_pub_t *dhd_pub, const char *params, uint32 *idx, cons bssidx = dhd_bssidx2idx(dhd_pub, htod32(bssidx)); if (bssidx >= DHD_MAX_IFS) { - DHD_ERROR(("%s Wrong bssidx provided\n", __FUNCTION__)); + DHD_ERROR(("%s Wrong bssidx provided\n", __func__)); return BCME_ERROR; } @@ -1279,7 +1329,7 @@ dhd_iovar_parse_bssidx(dhd_pub_t *dhd_pub, const char *params, uint32 *idx, cons *val = p; *idx = bssidx; } else { - DHD_ERROR(("%s: bad parameter for per bss iovar\n", __FUNCTION__)); + DHD_ERROR(("%s: bad parameter for per bss iovar\n", __func__)); return BCME_ERROR; } @@ -1290,7 +1340,7 @@ dhd_iovar_parse_bssidx(dhd_pub_t *dhd_pub, const char *params, uint32 *idx, cons /* USB Device console input function */ int dhd_bus_console_in(dhd_pub_t *dhd, uchar *msg, uint msglen) { - DHD_TRACE(("%s \n", __FUNCTION__)); + DHD_TRACE(("%s \n", __func__)); return dhd_iovar(dhd, 0, "cons", msg, msglen, NULL, 0, TRUE); @@ -1477,7 +1527,7 @@ dhd_flow_ring_debug(dhd_pub_t *dhd, char *msg, uint msglen) prio = (uint8)bcm_strtoul(msg, &end_ptr, 10); if (prio > MAXPRIO) { DHD_ERROR(("%s: invalid priority. Must be between 0-7 inclusive\n", - __FUNCTION__)); + __func__)); return BCME_ERROR; } @@ -1487,7 +1537,7 @@ dhd_flow_ring_debug(dhd_pub_t *dhd, char *msg, uint msglen) } ret = dhd_flowid_debug_create(dhd, 0, prio, (char *)sa, (char *)da, &flowid); if (ret != BCME_OK) { - DHD_ERROR(("%s: flowring creation failed ret: %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: flowring creation failed ret: %d\n", __func__, ret)); return BCME_ERROR; } return BCME_OK; @@ -1504,19 +1554,19 @@ dhd_flow_ring_debug(dhd_pub_t *dhd, char *msg, uint msglen) /* Find flowid from ifidx 0 since this IOVAR creating flowring with ifidx 0 */ if (dhd_flowid_find_by_ifidx(dhd, 0, flowid) != BCME_OK) { - DHD_ERROR(("%s : Deleting not created flowid: %u\n", __FUNCTION__, flowid)); + DHD_ERROR(("%s : Deleting not created flowid: %u\n", __func__, flowid)); return BCME_ERROR; } flow_ring_table = (flow_ring_table_t *)dhd->flow_ring_table; ret = dhd_bus_flow_ring_delete_request(dhd->bus, (void *)&flow_ring_table[flowid]); if (ret != BCME_OK) { - DHD_ERROR(("%s: flowring deletion failed ret: %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: flowring deletion failed ret: %d\n", __func__, ret)); return BCME_ERROR; } return BCME_OK; } - DHD_ERROR(("%s: neither create nor delete\n", __FUNCTION__)); + DHD_ERROR(("%s: neither create nor delete\n", __func__)); return BCME_ERROR; } #endif /* BCMPCIE */ @@ -1530,8 +1580,8 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch int32 int_val = 0; uint32 dhd_ver_len, bus_api_rev_len; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); - DHD_TRACE(("%s: actionid = %d; name %s\n", __FUNCTION__, actionid, name)); + DHD_TRACE(("%s: Enter\n", __func__)); + DHD_TRACE(("%s: actionid = %d; name %s\n", __func__, actionid, name)); if ((bcmerror = bcm_iovar_lencheck(vi, arg, len, IOV_ISSET(actionid))) != 0) goto exit; @@ -1838,7 +1888,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { DHD_ERROR(("%s: IOV_DHCP_UNICAST: bad parameterand name = %s\n", - __FUNCTION__, name)); + __func__, name)); bcmerror = BCME_BADARG; break; } @@ -1851,7 +1901,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { DHD_ERROR(("%s: IOV_DHCP_UNICAST: bad parameterand name = %s\n", - __FUNCTION__, name)); + __func__, name)); bcmerror = BCME_BADARG; break; } @@ -1864,7 +1914,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_BLOCK_PING: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_BLOCK_PING: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1877,7 +1927,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_BLOCK_PING: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_BLOCK_PING: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1890,7 +1940,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_PROXY_ARP: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_PROXY_ARP: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1903,7 +1953,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_PROXY_ARP: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_PROXY_ARP: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1924,7 +1974,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_GRAT_ARP: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_GRAT_ARP: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1937,7 +1987,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_GRAT_ARP: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_GRAT_ARP: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1950,7 +2000,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_BLOCK_TDLS: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_BLOCK_TDLS: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1963,7 +2013,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: IOV_BLOCK_TDLS: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: IOV_BLOCK_TDLS: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1977,7 +2027,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: dhd ie: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd ie: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -1989,7 +2039,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: ap isoalate: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: ap isoalate: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -2003,7 +2053,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: ap isolate: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: ap isolate: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -2058,7 +2108,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, (char *)name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: mcast_regen_bss_enable: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: mcast_regen_bss_enable: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -2073,7 +2123,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch const char *val; if (dhd_iovar_parse_bssidx(dhd_pub, (char *)name, &bssidx, &val) != BCME_OK) { - DHD_ERROR(("%s: mcast_regen_bss_enable: bad parameter\n", __FUNCTION__)); + DHD_ERROR(("%s: mcast_regen_bss_enable: bad parameter\n", __func__)); bcmerror = BCME_BADARG; break; } @@ -2120,7 +2170,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch else { lmtest = (uint)val; DHD_ERROR(("%s: lmtest %s\n", - __FUNCTION__, (lmtest == FALSE)? "OFF" : "ON")); + __func__, (lmtest == FALSE)? "OFF" : "ON")); } break; } @@ -2142,7 +2192,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch bzero(trace_buf_info, sizeof(trace_buf_info_t)); dhd_dbg_read_ring_into_trace_buf(dbg_verbose_ring, trace_buf_info); } else { - DHD_ERROR(("%s: arg is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: arg is NULL\n", __func__)); bcmerror = BCME_NOMEM; } break; @@ -2242,7 +2292,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch #ifdef DHD_DEBUG case IOV_SVAL(IOV_INDUCE_ERROR): { if (int_val >= DHD_INDUCE_ERROR_MAX) { - DHD_ERROR(("%s: Invalid command : %u\n", __FUNCTION__, (uint16)int_val)); + DHD_ERROR(("%s: Invalid command : %u\n", __func__, (uint16)int_val)); } else { dhd_pub->dhd_induce_error = (uint16)int_val; } @@ -2303,7 +2353,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch } exit: - DHD_TRACE(("%s: actionid %d, bcmerror %d\n", __FUNCTION__, actionid, bcmerror)); + DHD_TRACE(("%s: actionid %d, bcmerror %d\n", __func__, actionid, bcmerror)); return bcmerror; } @@ -2361,7 +2411,7 @@ dhd_prec_enq(dhd_pub_t *dhdp, struct pktq *q, void *pkt, int prec) #ifdef DHDTCPACK_SUPPRESS if (dhd_tcpack_check_xmit(dhdp, p) == BCME_ERROR) { DHD_ERROR(("%s %d: tcpack_suppress ERROR!!! Stop using it\n", - __FUNCTION__, __LINE__)); + __func__, __LINE__)); dhd_tcpack_suppress_set(dhdp, TCPACK_SUP_OFF); } #endif /* DHDTCPACK_SUPPRESS */ @@ -2475,7 +2525,7 @@ dhd_iovar_op(dhd_pub_t *dhd_pub, const char *name, const bcm_iovar_t *vi = NULL; uint32 actionid; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); ASSERT(name); ASSERT(len >= 0); @@ -2491,7 +2541,7 @@ dhd_iovar_op(dhd_pub_t *dhd_pub, const char *name, goto exit; } - DHD_CTL(("%s: %s %s, len %d plen %d\n", __FUNCTION__, + DHD_CTL(("%s: %s %s, len %d plen %d\n", __func__, name, (set ? "set" : "get"), len, plen)); /* set up 'params' pointer in case this is a set command so that @@ -2524,7 +2574,7 @@ dhd_ioctl(dhd_pub_t * dhd_pub, dhd_ioctl_t *ioc, void *buf, uint buflen) int bcmerror = 0; unsigned long flags; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (!buf) { return BCME_BADARG; @@ -2561,7 +2611,7 @@ dhd_ioctl(dhd_pub_t * dhd_pub, dhd_ioctl_t *ioc, void *buf, uint buflen) */ if (dhd_fw_download_status(dhd_pub) == FW_DOWNLOAD_DONE) { DHD_ERROR(("%s: returning as busstate=%d\n", - __FUNCTION__, dhd_pub->busstate)); + __func__, dhd_pub->busstate)); DHD_LINUX_GENERAL_UNLOCK(dhd_pub, flags); dhd_os_dhdiovar_unlock(dhd_pub); return -ENODEV; @@ -2583,7 +2633,7 @@ dhd_ioctl(dhd_pub_t * dhd_pub, dhd_ioctl_t *ioc, void *buf, uint buflen) bcmstricmp((char *)buf, "sdio_suspend")) { DHD_ERROR(("%s: bus is in suspend(%d)" "or suspending(0x%x) state\n", - __FUNCTION__, dhd_pub->busstate, + __func__, dhd_pub->busstate, dhd_pub->dhd_bus_busy_state)); DHD_BUS_BUSY_CLEAR_IN_DHD_IOVAR(dhd_pub); dhd_os_busbusy_wake(dhd_pub); @@ -3014,7 +3064,7 @@ wl_show_host_event(dhd_pub_t *dhd_pub, wl_event_msg_t *event, void *event_data, wl_event_msg_t * sub_event = (wl_event_msg_t *)data; if (len > aggrbuf->len) { DHD_ERROR(("%s: Aggr events corrupted!", - __FUNCTION__)); + __func__)); break; } DHD_EVENT(("\n Event type: %d ", ntoh32(sub_event->event_type))); @@ -3225,7 +3275,7 @@ dngl_host_event_process(dhd_pub_t *dhdp, bcm_dngl_event_t *event, return; } if (version != BCM_DNGL_EVENT_MSG_VERSION) { - DHD_ERROR(("%s:version mismatch:%d:%d\n", __FUNCTION__, + DHD_ERROR(("%s:version mismatch:%d:%d\n", __func__, version, BCM_DNGL_EVENT_MSG_VERSION)); return; } @@ -3332,7 +3382,7 @@ dngl_host_event_process(dhd_pub_t *dhdp, bcm_dngl_event_t *event, default: { DHD_ERROR(("%s:Unknown module TAG:%d\n", - __FUNCTION__, + __func__, ltoh32(dngl_hc->top_module_tag))); break; } @@ -3340,7 +3390,7 @@ dngl_host_event_process(dhd_pub_t *dhdp, bcm_dngl_event_t *event, break; } default: - DHD_ERROR(("%s:Unknown TAG\n", __FUNCTION__)); + DHD_ERROR(("%s:Unknown TAG\n", __func__)); if (p && DHD_EVENT_ON()) { prhex("SOCRAMIND", p, taglen); } @@ -3349,7 +3399,7 @@ dngl_host_event_process(dhd_pub_t *dhdp, bcm_dngl_event_t *event, break; } default: - DHD_ERROR(("%s:Unknown DNGL Event Type:%d\n", __FUNCTION__, type)); + DHD_ERROR(("%s:Unknown DNGL Event Type:%d\n", __func__, type)); if (p && DHD_EVENT_ON()) { prhex("SOCRAMIND", p, datalen); } @@ -3360,7 +3410,7 @@ dngl_host_event_process(dhd_pub_t *dhdp, bcm_dngl_event_t *event, if (dhdp->memdump_enabled) { dhdp->memdump_type = DUMP_TYPE_DONGLE_HOST_EVENT; if (dhd_socram_dump(dhdp->bus)) { - DHD_ERROR(("%s: socram dump failed\n", __FUNCTION__)); + DHD_ERROR(("%s: socram dump failed\n", __func__)); } } #else @@ -3422,7 +3472,7 @@ wl_host_event_get_data(void *pktdata, uint pktlen, bcm_event_msg_u_t *evu) ret = is_wlc_event_frame(pktdata, pktlen, 0, evu); if (ret != BCME_OK) { DHD_ERROR(("%s: Invalid event frame, err = %d\n", - __FUNCTION__, ret)); + __func__, ret)); } return ret; @@ -3571,7 +3621,7 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen event->addr.octet)) { DHD_ERROR(("%s: dhd_event_ifadd failed ifidx: %d %s\n", - __FUNCTION__, ifevent->ifidx, event->ifname)); + __func__, ifevent->ifidx, event->ifname)); return (BCME_ERROR); } } else if (ifevent->opcode == WLC_E_IF_DEL) { @@ -3591,7 +3641,7 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen } else { #if !defined(PROP_TXSTATUS) && !defined(PCIE_FULL_DONGLE) && defined(WL_CFG80211) DHD_INFO(("%s: Invalid ifidx %d for %s\n", - __FUNCTION__, ifevent->ifidx, event->ifname)); + __func__, ifevent->ifidx, event->ifname)); #endif /* !PROP_TXSTATUS && !PCIE_FULL_DONGLE && WL_CFG80211 */ } /* send up the if event: btamp user needs it */ @@ -3631,16 +3681,16 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen #ifndef BCMDBUS #if defined(DHD_FW_COREDUMP) case WLC_E_PSM_WATCHDOG: - DHD_ERROR(("%s: WLC_E_PSM_WATCHDOG event received : \n", __FUNCTION__)); + DHD_ERROR(("%s: WLC_E_PSM_WATCHDOG event received : \n", __func__)); if (dhd_socram_dump(dhd_pub->bus) != BCME_OK) { - DHD_ERROR(("%s: socram dump ERROR : \n", __FUNCTION__)); + DHD_ERROR(("%s: socram dump ERROR : \n", __func__)); } break; #endif // endif #endif /* !BCMDBUS */ case WLC_E_NATOE_NFCT: #ifdef WL_NATOE - DHD_EVENT(("%s: WLC_E_NATOE_NFCT event received \n", __FUNCTION__)); + DHD_EVENT(("%s: WLC_E_NATOE_NFCT event received \n", __func__)); dhd_natoe_ct_event(dhd_pub, event_data); #endif /* WL_NATOE */ break; @@ -3648,7 +3698,7 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen case WLC_E_SLOTTED_BSS_PEER_OP: DHD_EVENT(("%s: WLC_E_SLOTTED_BSS_PEER_OP event received for peer: " "" MACDBG ", status = %d\n", - __FUNCTION__, MAC2STRDBG(event->addr.octet), status)); + __func__, MAC2STRDBG(event->addr.octet), status)); if (status == WLC_E_STATUS_SLOTTED_PEER_ADD) { dhd_findadd_sta(dhd_pub, dhd_ifname2idx(dhd_pub->info, event->ifname), &event->addr.octet); @@ -3663,7 +3713,7 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen #endif // endif } else { DHD_ERROR(("%s: WLC_E_SLOTTED_BSS_PEER_OP: Status is not expected = %d\n", - __FUNCTION__, status)); + __func__, status)); } break; #endif /* WL_NAN */ @@ -3694,12 +3744,12 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen if (dhd_update_interface_link_status(dhd_pub, (uint8)dhd_ifname2idx(dhd_pub->info, event->ifname), (uint8)flags) != BCME_OK) { DHD_ERROR(("%s: dhd_update_interface_link_status Failed.\n", - __FUNCTION__)); + __func__)); break; } if (!flags) { DHD_ERROR(("%s: Deleting all STA from assoc list and flowrings.\n", - __FUNCTION__)); + __func__)); /* Delete all sta and flowrings */ dhd_del_all_sta(dhd_pub, dhd_ifname2idx(dhd_pub->info, event->ifname)); dhd_flow_rings_delete(dhd_pub, (uint8)dhd_ifname2idx(dhd_pub->info, @@ -3725,11 +3775,11 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen } #endif /* WL_CFG80211 */ DHD_EVENT(("%s: Link event %d, flags %x, status %x, role %d, del_sta %d\n", - __FUNCTION__, type, flags, status, role, del_sta)); + __func__, type, flags, status, role, del_sta)); if (del_sta) { DHD_EVENT(("%s: Deleting STA " MACDBG "\n", - __FUNCTION__, MAC2STRDBG(event->addr.octet))); + __func__, MAC2STRDBG(event->addr.octet))); dhd_del_sta(dhd_pub, dhd_ifname2idx(dhd_pub->info, event->ifname), &event->addr.octet); @@ -3765,7 +3815,7 @@ wl_process_host_event(dhd_pub_t *dhd_pub, int *ifidx, void *pktdata, uint pktlen /* push up to external supp/auth */ dhd_event(dhd_pub->info, (char *)pvt_data, evlen, *ifidx); DHD_TRACE(("%s: MAC event %d, flags %x, status %x\n", - __FUNCTION__, type, flags, status)); + __func__, type, flags, status)); BCM_REFERENCE(flags); BCM_REFERENCE(status); BCM_REFERENCE(reason); @@ -3908,7 +3958,7 @@ dhd_pktfilter_offload_enable(dhd_pub_t * dhd, char *arg, int enable, int master_ return; if (!(arg_save = MALLOC(dhd->osh, strlen(arg) + 1))) { - DHD_ERROR(("%s: malloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: malloc failed\n", __func__)); goto fail; } arg_org = arg_save; @@ -3948,29 +3998,29 @@ dhd_pktfilter_offload_enable(dhd_pub_t * dhd, char *arg, int enable, int master_ rc = rc >= 0 ? 0 : rc; if (rc) { DHD_ERROR(("%s: failed to %s pktfilter %s, retcode = %d\n", - __FUNCTION__, enable?"enable":"disable", arg, rc)); + __func__, enable?"enable":"disable", arg, rc)); dhd_set_packet_filter(dhd); rc = dhd_wl_ioctl_cmd(dhd, WLC_SET_VAR, buf, buf_len, TRUE, 0); rc = rc >= 0 ? 0 : rc; if (rc) { DHD_TRACE_HW4(("%s: 2nd retry failed to add pktfilter %s, retcode = %d\n", - __FUNCTION__, arg, rc)); + __func__, arg, rc)); } else { DHD_TRACE_HW4(("%s: 2nd retry successfully added pktfilter %s\n", - __FUNCTION__, arg)); + __func__, arg)); } } else DHD_TRACE(("%s: successfully %s pktfilter %s\n", - __FUNCTION__, enable?"enable":"disable", arg)); + __func__, enable?"enable":"disable", arg)); /* Contorl the master mode */ rc = dhd_wl_ioctl_set_intiovar(dhd, "pkt_filter_mode", master_mode, WLC_SET_VAR, TRUE, 0); rc = rc >= 0 ? 0 : rc; if (rc) - DHD_TRACE(("%s: failed to set pkt_filter_mode %d, retcode = %d\n", - __FUNCTION__, master_mode, rc)); + DHD_ERROR(("%s: failed to set pkt_filter_mode %d, retcode = %d\n", + __func__, master_mode, rc)); fail: if (arg_org) @@ -4029,14 +4079,14 @@ dhd_pktfilter_offload_set(dhd_pub_t * dhd, char *arg) return; if (!(arg_save = MALLOC(dhd->osh, strlen(arg) + 1))) { - DHD_ERROR(("%s: malloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: malloc failed\n", __func__)); goto fail; } arg_org = arg_save; if (!(buf = MALLOC(dhd->osh, MAX_PKTFLT_BUF_SIZE))) { - DHD_ERROR(("%s: malloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: malloc failed\n", __func__)); goto fail; } @@ -4275,10 +4325,10 @@ dhd_pktfilter_offload_set(dhd_pub_t * dhd, char *arg) if (rc) DHD_ERROR(("%s: failed to add pktfilter %s, retcode = %d\n", - __FUNCTION__, arg, rc)); + __func__, arg, rc)); else DHD_TRACE(("%s: successfully added pktfilter %s\n", - __FUNCTION__, arg)); + __func__, arg)); fail: if (arg_org) @@ -4297,11 +4347,11 @@ dhd_pktfilter_offload_delete(dhd_pub_t *dhd, int id) id, WLC_SET_VAR, TRUE, 0); if (ret < 0) { DHD_ERROR(("%s: Failed to delete filter ID:%d, ret=%d\n", - __FUNCTION__, id, ret)); + __func__, id, ret)); } else DHD_TRACE(("%s: successfully deleted pktfilter %d\n", - __FUNCTION__, id)); + __func__, id)); } #endif /* PKT_FILTER_SUPPORT */ @@ -4320,10 +4370,10 @@ dhd_arp_offload_set(dhd_pub_t * dhd, int arp_mode) retcode = retcode >= 0 ? 0 : retcode; if (retcode) DHD_ERROR(("%s: failed to set ARP offload mode to 0x%x, retcode = %d\n", - __FUNCTION__, arp_mode, retcode)); + __func__, arp_mode, retcode)); else DHD_ARPOE(("%s: successfully set ARP offload mode to 0x%x\n", - __FUNCTION__, arp_mode)); + __func__, arp_mode)); } void @@ -4335,7 +4385,7 @@ dhd_arp_offload_enable(dhd_pub_t * dhd, int arp_enable) if (arp_enable && (wl_cfg80211_check_vif_in_use(dhd_linux_get_primary_netdev(dhd)))) { DHD_TRACE(("%s: Virtual interfaces active, ignore arp offload request \n", - __FUNCTION__)); + __func__)); return; } #endif /* WL_CFG80211 */ @@ -4345,14 +4395,14 @@ dhd_arp_offload_enable(dhd_pub_t * dhd, int arp_enable) retcode = retcode >= 0 ? 0 : retcode; if (retcode) DHD_ERROR(("%s: failed to enabe ARP offload to %d, retcode = %d\n", - __FUNCTION__, arp_enable, retcode)); + __func__, arp_enable, retcode)); else #ifdef DHD_LOG_DUMP DHD_LOG_MEM(("%s: successfully enabed ARP offload to %d\n", - __FUNCTION__, arp_enable)); + __func__, arp_enable)); #else DHD_ARPOE(("%s: successfully enabed ARP offload to %d\n", - __FUNCTION__, arp_enable)); + __func__, arp_enable)); #endif /* DHD_LOG_DUMP */ if (arp_enable) { uint32 version; @@ -4360,11 +4410,11 @@ dhd_arp_offload_enable(dhd_pub_t * dhd, int arp_enable) &version, WLC_GET_VAR, FALSE, 0); if (retcode) { DHD_INFO(("%s: fail to get version (maybe version 1:retcode = %d\n", - __FUNCTION__, retcode)); + __func__, retcode)); dhd->arp_version = 1; } else { - DHD_INFO(("%s: ARP Version= %x\n", __FUNCTION__, version)); + DHD_INFO(("%s: ARP Version= %x\n", __func__, version)); dhd->arp_version = version; } } @@ -4381,12 +4431,12 @@ dhd_aoe_arp_clr(dhd_pub_t *dhd, int idx) ret = dhd_iovar(dhd, idx, "arp_table_clear", NULL, 0, NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s failed code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s failed code %d\n", __func__, ret)); else { #ifdef DHD_LOG_DUMP - DHD_LOG_MEM(("%s: ARP table clear\n", __FUNCTION__)); + DHD_LOG_MEM(("%s: ARP table clear\n", __func__)); #else - DHD_TRACE(("%s: ARP table clear\n", __FUNCTION__)); + DHD_TRACE(("%s: ARP table clear\n", __func__)); #endif /* DHD_LOG_DUMP */ } /* mac address isn't cleared here but it will be cleared after dongle off */ @@ -4404,12 +4454,12 @@ dhd_aoe_hostip_clr(dhd_pub_t *dhd, int idx) ret = dhd_iovar(dhd, idx, "arp_hostip_clear", NULL, 0, NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s failed code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s failed code %d\n", __func__, ret)); else { #ifdef DHD_LOG_DUMP - DHD_LOG_MEM(("%s: ARP host ip clear\n", __FUNCTION__)); + DHD_LOG_MEM(("%s: ARP host ip clear\n", __func__)); #else - DHD_TRACE(("%s: ARP host ip clear\n", __FUNCTION__)); + DHD_TRACE(("%s: ARP host ip clear\n", __func__)); #endif /* DHD_LOG_DUMP */ } } @@ -4426,14 +4476,14 @@ dhd_arp_offload_add_ip(dhd_pub_t *dhd, uint32 ipaddr, int idx) ret = dhd_iovar(dhd, idx, "arp_hostip", (char *)&ipaddr, sizeof(ipaddr), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s: ARP ip addr add failed, ret = %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: ARP ip addr add failed, ret = %d\n", __func__, ret)); else { /* mac address is updated in the dongle */ dhd->hmac_updated = 1; #ifdef DHD_LOG_DUMP - DHD_LOG_MEM(("%s: ARP ip addr entry added \n", __FUNCTION__)); + DHD_LOG_MEM(("%s: ARP ip addr entry added \n", __func__)); #else - DHD_ARPOE(("%s: ARP ip addr entry added \n", __FUNCTION__)); + DHD_ARPOE(("%s: ARP ip addr entry added \n", __func__)); #endif /* DHD_LOG_DUMP */ } } @@ -4455,7 +4505,7 @@ dhd_arp_get_arp_hostip_table(dhd_pub_t *dhd, void *buf, int buflen, int idx) FALSE); if (ret) { DHD_ERROR(("%s: ioctl WLC_GET_VAR error %d\n", - __FUNCTION__, ret)); + __func__, ret)); return -1; } @@ -4504,10 +4554,10 @@ dhd_ndo_enable(dhd_pub_t * dhd, int ndo_enable) ndo_enable, WLC_SET_VAR, TRUE, 0); if (retcode) DHD_ERROR(("%s: failed to enabe ndo to %d, retcode = %d\n", - __FUNCTION__, ndo_enable, retcode)); + __func__, ndo_enable, retcode)); else DHD_TRACE(("%s: successfully enabed ndo offload to %d\n", - __FUNCTION__, ndo_enable)); + __func__, ndo_enable)); return retcode; } @@ -4530,17 +4580,17 @@ dhd_ndo_add_ip(dhd_pub_t *dhd, char* ipv6addr, int idx) IPV6_ADDR_LEN, iovbuf, sizeof(iovbuf)); if (!iov_len) { DHD_ERROR(("%s: Insufficient iovar buffer size %zu \n", - __FUNCTION__, sizeof(iovbuf))); + __func__, sizeof(iovbuf))); return -1; } retcode = dhd_wl_ioctl_cmd(dhd, WLC_SET_VAR, iovbuf, iov_len, TRUE, idx); if (retcode) DHD_ERROR(("%s: ndo ip addr add failed, retcode = %d\n", - __FUNCTION__, retcode)); + __func__, retcode)); else DHD_TRACE(("%s: ndo ipaddr entry added \n", - __FUNCTION__)); + __func__)); return retcode; } @@ -4563,17 +4613,17 @@ dhd_ndo_remove_ip(dhd_pub_t *dhd, int idx) 0, iovbuf, sizeof(iovbuf)); if (!iov_len) { DHD_ERROR(("%s: Insufficient iovar buffer size %zu \n", - __FUNCTION__, sizeof(iovbuf))); + __func__, sizeof(iovbuf))); return -1; } retcode = dhd_wl_ioctl_cmd(dhd, WLC_SET_VAR, iovbuf, iov_len, TRUE, idx); if (retcode) DHD_ERROR(("%s: ndo ip addr remove failed, retcode = %d\n", - __FUNCTION__, retcode)); + __func__, retcode)); else DHD_TRACE(("%s: ndo ipaddr entry removed \n", - __FUNCTION__)); + __func__)); return retcode; } @@ -4601,14 +4651,14 @@ dhd_ndo_get_version(dhd_pub_t *dhdp) if (!iov_len) { DHD_ERROR(("%s: Insufficient iovar buffer size %zu \n", - __FUNCTION__, sizeof(iovbuf))); + __func__, sizeof(iovbuf))); return BCME_ERROR; } retcode = dhd_wl_ioctl_cmd(dhdp, WLC_GET_VAR, iovbuf, iov_len, FALSE, 0); if (retcode) { - DHD_ERROR(("%s: failed, retcode = %d\n", __FUNCTION__, retcode)); + DHD_ERROR(("%s: failed, retcode = %d\n", __func__, retcode)); /* ver iovar not supported. NDO version is 0 */ ver = 0; } else { @@ -4622,7 +4672,7 @@ dhd_ndo_get_version(dhd_pub_t *dhdp) ver = dtoh16(ndo_ver_ret->u.version); } - DHD_TRACE(("%s: successfully get version: %d\n", __FUNCTION__, ver)); + DHD_TRACE(("%s: successfully get version: %d\n", __func__, ver)); } return ver; @@ -4652,24 +4702,24 @@ dhd_ndo_add_ip_with_type(dhd_pub_t *dhdp, char *ipv6addr, uint8 type, int idx) WL_ND_HOSTIP_WITH_ADDR_LEN, iovbuf, sizeof(iovbuf)); if (!iov_len) { DHD_ERROR(("%s: Insufficient iovar buffer size %zu \n", - __FUNCTION__, sizeof(iovbuf))); + __func__, sizeof(iovbuf))); return BCME_ERROR; } retcode = dhd_wl_ioctl_cmd(dhdp, WLC_SET_VAR, iovbuf, iov_len, TRUE, idx); if (retcode) { - DHD_ERROR(("%s: failed, retcode = %d\n", __FUNCTION__, retcode)); + DHD_ERROR(("%s: failed, retcode = %d\n", __func__, retcode)); #ifdef NDO_CONFIG_SUPPORT if (retcode == BCME_NORESOURCE) { /* number of host ip addr exceeds FW capacity, Deactivate ND offload */ DHD_INFO(("%s: Host IP count exceed device capacity," - "ND offload deactivated\n", __FUNCTION__)); + "ND offload deactivated\n", __func__)); dhdp->ndo_host_ip_overflow = TRUE; dhd_ndo_enable(dhdp, FALSE); } #endif /* NDO_CONFIG_SUPPORT */ } else { - DHD_TRACE(("%s: successfully added: %d\n", __FUNCTION__, retcode)); + DHD_TRACE(("%s: successfully added: %d\n", __func__, retcode)); } return retcode; @@ -4700,15 +4750,15 @@ dhd_ndo_remove_ip_by_addr(dhd_pub_t *dhdp, char *ipv6addr, int idx) if (!iov_len) { DHD_ERROR(("%s: Insufficient iovar buffer size %zu \n", - __FUNCTION__, sizeof(iovbuf))); + __func__, sizeof(iovbuf))); return BCME_ERROR; } retcode = dhd_wl_ioctl_cmd(dhdp, WLC_SET_VAR, iovbuf, iov_len, TRUE, idx); if (retcode) { - DHD_ERROR(("%s: failed, retcode = %d\n", __FUNCTION__, retcode)); + DHD_ERROR(("%s: failed, retcode = %d\n", __func__, retcode)); } else { - DHD_TRACE(("%s: successfully removed: %d\n", __FUNCTION__, retcode)); + DHD_TRACE(("%s: successfully removed: %d\n", __func__, retcode)); } return retcode; @@ -4742,15 +4792,15 @@ dhd_ndo_remove_ip_by_type(dhd_pub_t *dhdp, uint8 type, int idx) if (!iov_len) { DHD_ERROR(("%s: Insufficient iovar buffer size %zu \n", - __FUNCTION__, sizeof(iovbuf))); + __func__, sizeof(iovbuf))); return BCME_ERROR; } retcode = dhd_wl_ioctl_cmd(dhdp, WLC_SET_VAR, iovbuf, iov_len, TRUE, idx); if (retcode) { - DHD_ERROR(("%s: failed, retcode = %d\n", __FUNCTION__, retcode)); + DHD_ERROR(("%s: failed, retcode = %d\n", __func__, retcode)); } else { - DHD_TRACE(("%s: successfully removed: %d\n", __FUNCTION__, retcode)); + DHD_TRACE(("%s: successfully removed: %d\n", __func__, retcode)); } return retcode; @@ -4772,17 +4822,17 @@ dhd_ndo_unsolicited_na_filter_enable(dhd_pub_t *dhdp, int enable) if (!iov_len) { DHD_ERROR(("%s: Insufficient iovar buffer size %zu \n", - __FUNCTION__, sizeof(iovbuf))); + __func__, sizeof(iovbuf))); return BCME_ERROR; } retcode = dhd_wl_ioctl_cmd(dhdp, WLC_SET_VAR, iovbuf, iov_len, TRUE, 0); if (retcode) DHD_ERROR(("%s: failed to enable Unsolicited NA filter to %d, retcode = %d\n", - __FUNCTION__, enable, retcode)); + __func__, enable, retcode)); else { DHD_TRACE(("%s: successfully enabled Unsolicited NA filter to %d\n", - __FUNCTION__, enable)); + __func__, enable)); } return retcode; @@ -4798,7 +4848,7 @@ dhd_iscan_allocate_buf(dhd_pub_t *dhd, iscan_buf_t **iscanbuf) iscan_buf_t *iscanbuf_alloc = 0; iscan_buf_t *iscanbuf_head; - DHD_ISCAN(("%s: Entered\n", __FUNCTION__)); + DHD_ISCAN(("%s: Entered\n", __func__)); dhd_iscan_lock(); iscanbuf_alloc = (iscan_buf_t*)MALLOC(dhd->osh, sizeof(iscan_buf_t)); @@ -4810,11 +4860,11 @@ dhd_iscan_allocate_buf(dhd_pub_t *dhd, iscan_buf_t **iscanbuf) DHD_ISCAN(("%s: addr of allocated node = 0x%X" "addr of iscanbuf_head = 0x%X dhd = 0x%X\n", - __FUNCTION__, iscanbuf_alloc, iscanbuf_head, dhd)); + __func__, iscanbuf_alloc, iscanbuf_head, dhd)); if (iscanbuf_head == NULL) { *iscanbuf = iscanbuf_alloc; - DHD_ISCAN(("%s: Head is allocated\n", __FUNCTION__)); + DHD_ISCAN(("%s: Head is allocated\n", __func__)); goto fail; } @@ -4835,7 +4885,7 @@ dhd_iscan_free_buf(void *dhdp, iscan_buf_t *iscan_delete) iscan_buf_t *iscanbuf_prv = 0; iscan_buf_t *iscanbuf_cur; dhd_pub_t *dhd = dhd_bus_pub(dhdp); - DHD_ISCAN(("%s: Entered\n", __FUNCTION__)); + DHD_ISCAN(("%s: Entered\n", __func__)); dhd_iscan_lock(); @@ -4893,14 +4943,14 @@ dhd_iscan_issue_request(void * dhdp, wl_iscan_params_t *pParams, uint32 size) if ((allocSize < size) || (allocSize < strlen(iovar))) { DHD_ERROR(("%s: overflow - allocation size too large %d < %d + %d!\n", - __FUNCTION__, allocSize, size, strlen(iovar))); + __func__, allocSize, size, strlen(iovar))); goto cleanUp; } buf = MALLOC(dhd->osh, allocSize); if (buf == NULL) { - DHD_ERROR(("%s: malloc of size %d failed!\n", __FUNCTION__, allocSize)); + DHD_ERROR(("%s: malloc of size %d failed!\n", __func__, allocSize)); goto cleanUp; } ioctl.cmd = WLC_SET_VAR; @@ -4933,11 +4983,11 @@ dhd_iscan_get_partial_result(void *dhdp, uint *scan_count) wl_ioctl_t ioctl; int len; - DHD_ISCAN(("%s: Enter\n", __FUNCTION__)); + DHD_ISCAN(("%s: Enter\n", __func__)); iscan_cur = dhd_iscan_allocate_buf(dhd, &iscan_chain); if (!iscan_cur) { - DHD_ERROR(("%s: Failed to allocate node\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to allocate node\n", __func__)); dhd_iscan_free_buf(dhdp, 0); dhd_iscan_request(dhdp, WL_SCAN_ACTION_ABORT); dhd_ind_scan_confirm(dhdp, FALSE); @@ -4972,7 +5022,7 @@ dhd_iscan_get_partial_result(void *dhdp, uint *scan_count) results->version = dtoh32(results->version); *scan_count = results->count = dtoh32(results->count); status = dtoh32(list_buf->status); - DHD_ISCAN(("%s: Got %d resuls status = (%x)\n", __FUNCTION__, results->count, status)); + DHD_ISCAN(("%s: Got %d resuls status = (%x)\n", __func__, results->count, status)); dhd_iscan_unlock(); @@ -4999,10 +5049,10 @@ bool dhd_is_associated(dhd_pub_t *dhd, uint8 ifidx, int *retval) ret = dhd_wl_ioctl_cmd(dhd, WLC_GET_BSSID, (char *)&bssid, ETHER_ADDR_LEN, FALSE, ifidx); - DHD_TRACE((" %s WLC_GET_BSSID ioctl res = %d\n", __FUNCTION__, ret)); + DHD_TRACE((" %s WLC_GET_BSSID ioctl res = %d\n", __func__, ret)); if (ret == BCME_NOTASSOCIATED) { - DHD_TRACE(("%s: not associated! res:%d\n", __FUNCTION__, ret)); + DHD_TRACE(("%s: not associated! res:%d\n", __func__, ret)); } if (retval) @@ -5012,7 +5062,7 @@ bool dhd_is_associated(dhd_pub_t *dhd, uint8 ifidx, int *retval) return FALSE; if ((memcmp(bssid, zbuf, ETHER_ADDR_LEN) == 0)) { - DHD_TRACE(("%s: WLC_GET_BSSID ioctl returned zero bssid\n", __FUNCTION__)); + DHD_TRACE(("%s: WLC_GET_BSSID ioctl returned zero bssid\n", __func__)); return FALSE; } return TRUE; @@ -5028,14 +5078,14 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd, int *dtim_period, int *bcn_interval) int allowed_skip_dtim_cnt = 0; if (dhd->disable_dtim_in_suspend) { - DHD_ERROR(("%s Disable bcn_li_dtim in suspend\n", __FUNCTION__)); + DHD_ERROR(("%s Disable bcn_li_dtim in suspend\n", __func__)); bcn_li_dtim = 0; return bcn_li_dtim; } /* Check if associated */ if (dhd_is_associated(dhd, 0, NULL) == FALSE) { - DHD_TRACE(("%s NOT assoc ret %d\n", __FUNCTION__, ret)); + DHD_TRACE(("%s NOT assoc ret %d\n", __func__, ret)); return bcn_li_dtim; } @@ -5045,14 +5095,14 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd, int *dtim_period, int *bcn_interval) /* read associated AP beacon interval */ if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_GET_BCNPRD, bcn_interval, sizeof(*bcn_interval), FALSE, 0)) < 0) { - DHD_ERROR(("%s get beacon failed code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s get beacon failed code %d\n", __func__, ret)); return bcn_li_dtim; } /* read associated AP dtim setup */ if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_GET_DTIMPRD, dtim_period, sizeof(*dtim_period), FALSE, 0)) < 0) { - DHD_ERROR(("%s failed code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s failed code %d\n", __func__, ret)); return bcn_li_dtim; } @@ -5076,7 +5126,7 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd, int *dtim_period, int *bcn_interval) /* AP DTIM to big for our Listen Interval : no dtim skiping */ bcn_li_dtim = NO_DTIM_SKIP; DHD_ERROR(("%s DTIM=%d > Listen=%d : too big ...\n", - __FUNCTION__, *dtim_period, CUSTOM_LISTEN_INTERVAL)); + __func__, *dtim_period, CUSTOM_LISTEN_INTERVAL)); return bcn_li_dtim; } @@ -5090,14 +5140,14 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd, int *dtim_period, int *bcn_interval) if ((bcn_li_dtim * (*dtim_period)) > CUSTOM_LISTEN_INTERVAL) { /* Round up dtim_skip to fit into STAs Listen Interval */ bcn_li_dtim = (int)(CUSTOM_LISTEN_INTERVAL / *dtim_period); - DHD_TRACE(("%s agjust dtim_skip as %d\n", __FUNCTION__, bcn_li_dtim)); + DHD_TRACE(("%s agjust dtim_skip as %d\n", __func__, bcn_li_dtim)); } } if (dhd->conf->suspend_bcn_li_dtim >= 0) bcn_li_dtim = dhd->conf->suspend_bcn_li_dtim; DHD_ERROR(("%s beacon=%d bcn_li_dtim=%d DTIM=%d Listen=%d\n", - __FUNCTION__, *bcn_interval, bcn_li_dtim, *dtim_period, CUSTOM_LISTEN_INTERVAL)); + __func__, *bcn_interval, bcn_li_dtim, *dtim_period, CUSTOM_LISTEN_INTERVAL)); return bcn_li_dtim; } @@ -5112,28 +5162,28 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd) int allowed_skip_dtim_cnt = 0; if (dhd->disable_dtim_in_suspend) { - DHD_ERROR(("%s Disable bcn_li_dtim in suspend\n", __FUNCTION__)); + DHD_ERROR(("%s Disable bcn_li_dtim in suspend\n", __func__)); bcn_li_dtim = 0; goto exit; } /* Check if associated */ if (dhd_is_associated(dhd, 0, NULL) == FALSE) { - DHD_TRACE(("%s NOT assoc ret %d\n", __FUNCTION__, ret)); + DHD_TRACE(("%s NOT assoc ret %d\n", __func__, ret)); goto exit; } /* read associated AP beacon interval */ if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_GET_BCNPRD, &ap_beacon, sizeof(ap_beacon), FALSE, 0)) < 0) { - DHD_ERROR(("%s get beacon failed code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s get beacon failed code %d\n", __func__, ret)); goto exit; } /* read associated ap's dtim setup */ if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_GET_DTIMPRD, &dtim_period, sizeof(dtim_period), FALSE, 0)) < 0) { - DHD_ERROR(("%s failed code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s failed code %d\n", __func__, ret)); goto exit; } @@ -5157,7 +5207,7 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd) /* AP DTIM to big for our Listen Interval : no dtim skiping */ bcn_li_dtim = NO_DTIM_SKIP; DHD_ERROR(("%s DTIM=%d > Listen=%d : too big ...\n", - __FUNCTION__, dtim_period, CUSTOM_LISTEN_INTERVAL)); + __func__, dtim_period, CUSTOM_LISTEN_INTERVAL)); goto exit; } @@ -5171,14 +5221,14 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd) if ((bcn_li_dtim * dtim_period) > CUSTOM_LISTEN_INTERVAL) { /* Round up dtim_skip to fit into STAs Listen Interval */ bcn_li_dtim = (int)(CUSTOM_LISTEN_INTERVAL / dtim_period); - DHD_TRACE(("%s agjust dtim_skip as %d\n", __FUNCTION__, bcn_li_dtim)); + DHD_TRACE(("%s agjust dtim_skip as %d\n", __func__, bcn_li_dtim)); } } if (dhd->conf->suspend_bcn_li_dtim >= 0) bcn_li_dtim = dhd->conf->suspend_bcn_li_dtim; DHD_ERROR(("%s beacon=%d bcn_li_dtim=%d DTIM=%d Listen=%d\n", - __FUNCTION__, ap_beacon, bcn_li_dtim, dtim_period, CUSTOM_LISTEN_INTERVAL)); + __func__, ap_beacon, bcn_li_dtim, dtim_period, CUSTOM_LISTEN_INTERVAL)); exit: return bcn_li_dtim; @@ -5196,7 +5246,7 @@ dhd_sroam_set_mon(dhd_pub_t *dhd, bool set) /* Check if associated */ if (dhd_is_associated(dhd, 0, NULL) == FALSE) { - DHD_TRACE(("%s NOT assoc\n", __FUNCTION__)); + DHD_TRACE(("%s NOT assoc\n", __func__)); return ret; } @@ -5212,13 +5262,13 @@ dhd_sroam_set_mon(dhd_pub_t *dhd, bool set) } psroam = (wlc_sroam_t *)MALLOCZ(dhd->osh, sroamlen); if (!psroam) { - DHD_ERROR(("%s Fail to malloc buffer\n", __FUNCTION__)); + DHD_ERROR(("%s Fail to malloc buffer\n", __func__)); return BCME_NOMEM; } ret = dhd_iovar(dhd, 0, "sroam", NULL, 0, (char *)psroam, sroamlen, FALSE); if (ret < 0) { - DHD_ERROR(("%s Failed to Get sroam %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Failed to Get sroam %d\n", __func__, ret)); goto done; } @@ -5233,7 +5283,7 @@ dhd_sroam_set_mon(dhd_pub_t *dhd, bool set) ret = dhd_iovar(dhd, 0, "sroam", (char *)psroam, sroamlen, NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Failed to Set sroam %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Failed to Set sroam %d\n", __func__, ret)); } done: @@ -5271,7 +5321,7 @@ int dhd_keep_alive_onoff(dhd_pub_t *dhd) if (!dhd_support_sta_mode(dhd)) return res; - DHD_TRACE(("%s execution\n", __FUNCTION__)); + DHD_TRACE(("%s execution\n", __func__)); str = "mkeep_alive"; str_len = strlen(str); @@ -5310,7 +5360,7 @@ wl_parse_ssid_list_tlv(char** list_str, wlc_ssid_ext_t* ssid, int max, int *byte uint8 len; if ((list_str == NULL) || (*list_str == NULL) || (*bytes_left < 0)) { - DHD_ERROR(("%s error paramters\n", __FUNCTION__)); + DHD_ERROR(("%s error paramters\n", __func__)); return BCME_BADARG; } str = *list_str; @@ -5322,14 +5372,14 @@ wl_parse_ssid_list_tlv(char** list_str, wlc_ssid_ext_t* ssid, int max, int *byte } if (idx >= max) { - DHD_ERROR(("%s number of SSIDs more than %d\n", __FUNCTION__, idx)); + DHD_ERROR(("%s number of SSIDs more than %d\n", __func__, idx)); return BCME_BADARG; } /* Get proper CSCAN_TLV_TYPE_SSID_IE */ *bytes_left -= 1; if (*bytes_left == 0) { - DHD_ERROR(("%s no length field.\n", __FUNCTION__)); + DHD_ERROR(("%s no length field.\n", __func__)); return BCME_BADARG; } str += 1; @@ -5351,7 +5401,7 @@ wl_parse_ssid_list_tlv(char** list_str, wlc_ssid_ext_t* ssid, int max, int *byte /* Get SSID */ if (ssid[idx].SSID_len > *bytes_left) { DHD_ERROR(("%s out of memory range len=%d but left=%d\n", - __FUNCTION__, ssid[idx].SSID_len, *bytes_left)); + __func__, ssid[idx].SSID_len, *bytes_left)); return BCME_BADARG; } str += 1; @@ -5389,7 +5439,7 @@ wl_iw_parse_data_tlv(char** list_str, void *dst, int dst_size, const char token, uint32 int_temp; if ((list_str == NULL) || (*list_str == NULL) ||(bytes_left == NULL) || (*bytes_left < 0)) { - DHD_ERROR(("%s error paramters\n", __FUNCTION__)); + DHD_ERROR(("%s error paramters\n", __func__)); return -1; } str = *list_str; @@ -5400,7 +5450,7 @@ wl_iw_parse_data_tlv(char** list_str, void *dst, int dst_size, const char token, if (str[0] != token) { DHD_TRACE(("%s NOT Type=%d get=%d left_parse=%d \n", - __FUNCTION__, token, str[0], *bytes_left)); + __func__, token, str[0], *bytes_left)); return -1; } @@ -5438,7 +5488,7 @@ wl_iw_parse_channel_list_tlv(char** list_str, uint16* channel_list, int idx = 0; if ((list_str == NULL) || (*list_str == NULL) ||(bytes_left == NULL) || (*bytes_left < 0)) { - DHD_ERROR(("%s error paramters\n", __FUNCTION__)); + DHD_ERROR(("%s error paramters\n", __func__)); return -1; } str = *list_str; @@ -5460,13 +5510,13 @@ wl_iw_parse_channel_list_tlv(char** list_str, uint16* channel_list, } else { channel_list[idx] = (uint16)str[0]; - DHD_TRACE(("%s channel=%d \n", __FUNCTION__, channel_list[idx])); + DHD_TRACE(("%s channel=%d \n", __func__, channel_list[idx])); } *bytes_left -= 1; str += 1; if (idx++ > 255) { - DHD_ERROR(("%s Too many channels \n", __FUNCTION__)); + DHD_ERROR(("%s Too many channels \n", __func__)); return -1; } } @@ -5580,7 +5630,7 @@ int dhd_get_download_buffer(dhd_pub_t *dhd, char *file_path, download_type_t com if (file_path) { image = dhd_os_open_image1(dhd, file_path); if (image == NULL) { - printf("%s: Open image file failed %s\n", __FUNCTION__, file_path); + DHD_ERROR(("%s: Open image file failed %s\n", __func__, file_path)); goto err; } } @@ -5588,7 +5638,7 @@ int dhd_get_download_buffer(dhd_pub_t *dhd, char *file_path, download_type_t com buf = MALLOCZ(dhd->osh, file_len); if (buf == NULL) { DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", - __FUNCTION__, file_len)); + __func__, file_len)); goto err; } @@ -5636,7 +5686,7 @@ dhd_download_2_dongle(dhd_pub_t *dhd, char *iovar, uint16 flag, uint16 dload_typ (uint)len, iovar_buf, sizeof(iovar_buf)); if (iovar_len == 0) { DHD_ERROR(("%s: insufficient buffer space passed to bcm_mkiovar for '%s' \n", - __FUNCTION__, iovar)); + __func__, iovar)); return BCME_BUFTOOSHORT; } @@ -5667,7 +5717,7 @@ dhd_download_blob(dhd_pub_t *dhd, unsigned char *buf, MAX_CHUNK_LEN, buf); if (chunk_len < 0) { DHD_ERROR(("%s: dhd_os_get_image_block failed (%d)\n", - __FUNCTION__, chunk_len)); + __func__, chunk_len)); err = BCME_ERROR; goto exit; } @@ -5708,22 +5758,20 @@ dhd_check_current_clm_data(dhd_pub_t *dhd) err = bcm_mkiovar("country", NULL, 0, iovbuf, sizeof(iovbuf)); if (err == 0) { err = BCME_BUFTOOSHORT; - DHD_ERROR(("%s: bcm_mkiovar failed.", __FUNCTION__)); + DHD_ERROR(("%s: bcm_mkiovar failed.", __func__)); return err; } err = dhd_wl_ioctl_cmd(dhd, WLC_GET_VAR, iovbuf, sizeof(iovbuf), FALSE, 0); if (err) { - DHD_ERROR(("%s: country code get failed\n", __FUNCTION__)); + DHD_ERROR(("%s: country code get failed\n", __func__)); return err; } cspec = (wl_country_t *)iovbuf; if ((strncmp(cspec->ccode, WL_CCODE_NULL_COUNTRY, WLC_CNTRY_BUF_SZ)) == 0) { - DHD_ERROR(("%s: ----- This FW is not included CLM data -----\n", - __FUNCTION__)); + DHD_TRACE(("%s: Firmware does not contain CLM data.\n", __func__)); return FALSE; } - DHD_ERROR(("%s: ----- This FW is included CLM data -----\n", - __FUNCTION__)); + DHD_TRACE(("%s: CLM is included in firmware\n", __func__)); return TRUE; } @@ -5755,7 +5803,7 @@ dhd_apply_default_clm(dhd_pub_t *dhd, char *clm_path) */ memblock = dhd_os_open_image1(dhd, (char *)clm_blob_path); if (memblock == NULL) { - printf("%s: Ignore clm file %s\n", __FUNCTION__, clm_path); + printf("%s: Ignore clm file %s\n", __func__, clm_path); #if defined(DHD_BLOB_EXISTENCE_CHECK) if (dhd->is_blob) { err = BCME_ERROR; @@ -5786,7 +5834,7 @@ dhd_apply_default_clm(dhd_pub_t *dhd, char *clm_path) #else DHD_ERROR(("%s: CLM already exist in F/W, " "new CLM data will be added to the end of existing CLM data!\n", - __FUNCTION__)); + __func__)); #endif /* DHD_BLOB_EXISTENCE_CHECK */ } else if (status != FALSE) { err = status; @@ -5797,7 +5845,7 @@ dhd_apply_default_clm(dhd_pub_t *dhd, char *clm_path) DHD_TRACE(("clm file download from %s \n", clm_blob_path)); err = dhd_download_blob(dhd, (unsigned char*)memblock, len, "clmload"); if (err) { - DHD_ERROR(("%s: CLM download failed err=%d\n", __FUNCTION__, err)); + DHD_ERROR(("%s: CLM download failed err=%d\n", __func__, err)); /* Retrieve clmload_status and print */ memset(iovbuf, 0, sizeof(iovbuf)); len = bcm_mkiovar("clmload_status", NULL, 0, iovbuf, sizeof(iovbuf)); @@ -5808,10 +5856,10 @@ dhd_apply_default_clm(dhd_pub_t *dhd, char *clm_path) err = dhd_wl_ioctl_cmd(dhd, WLC_GET_VAR, iovbuf, sizeof(iovbuf), FALSE, 0); if (err) { DHD_ERROR(("%s: clmload_status get failed err=%d \n", - __FUNCTION__, err)); + __func__, err)); } else { - DHD_ERROR(("%s: clmload_status: %d \n", - __FUNCTION__, *((int *)iovbuf))); + DHD_TRACE(("%s: clmload_status: %d \n", + __func__, *((int *)iovbuf))); if (*((int *)iovbuf) == CHIPID_MISMATCH) { DHD_ERROR(("Chip ID mismatch error \n")); } @@ -5819,10 +5867,10 @@ dhd_apply_default_clm(dhd_pub_t *dhd, char *clm_path) err = BCME_ERROR; goto exit; } else { - DHD_INFO(("%s: CLM download succeeded \n", __FUNCTION__)); + DHD_INFO(("%s: CLM download succeeded \n", __func__)); } } else { - DHD_INFO(("Skipping the clm download. len:%d memblk:%p \n", len, memblock)); + DHD_TRACE(("Skipping the clm download. len:%d memblk:%p \n", len, memblock)); } /* Verify country code */ @@ -5879,7 +5927,7 @@ dhd_parse_logstrs_file(osl_t *osh, char *raw_fmts, int logstrs_size, logstr_header_v1_t *hdr_v1 = (logstr_header_v1_t *) (raw_fmts + logstrs_size - sizeof(logstr_header_v1_t)); DHD_INFO(("%s: logstr header version = %u\n", - __FUNCTION__, hdr_v1->version)); + __func__, hdr_v1->version)); num_fmts = hdr_v1->rom_logstrs_offset / sizeof(uint32); ram_index = (hdr_v1->ram_lognums_offset - hdr_v1->rom_lognums_offset) / sizeof(uint32); @@ -5890,7 +5938,7 @@ dhd_parse_logstrs_file(osl_t *osh, char *raw_fmts, int logstrs_size, logstr_header_t *hdr = (logstr_header_t *) (raw_fmts + logstrs_size - sizeof(logstr_header_t)); DHD_INFO(("%s: logstr header version = %u; flags = %x\n", - __FUNCTION__, hdr->trailer.version, hdr->trailer.flags)); + __func__, hdr->trailer.version, hdr->trailer.flags)); /* For ver. 2 of the header, need to match fwid of * both logstrs.bin and fw bin @@ -5899,23 +5947,23 @@ dhd_parse_logstrs_file(osl_t *osh, char *raw_fmts, int logstrs_size, /* read the FWID from fw bin */ file = dhd_os_open_image1(NULL, st_str_file_path); if (!file) { - DHD_ERROR(("%s: cannot open fw file !\n", __FUNCTION__)); + DHD_ERROR(("%s: cannot open fw file !\n", __func__)); goto error; } file_len = dhd_os_get_image_size(file); if (file_len <= 0) { - DHD_ERROR(("%s: bad fw file length !\n", __FUNCTION__)); + DHD_ERROR(("%s: bad fw file length !\n", __func__)); goto error; } /* fwid is at the end of fw bin in string format */ if (dhd_os_seek_file(file, file_len - (sizeof(fwid_str) - 1)) < 0) { - DHD_ERROR(("%s: can't seek file \n", __FUNCTION__)); + DHD_ERROR(("%s: can't seek file \n", __func__)); goto error; } memset(fwid_str, 0, sizeof(fwid_str)); if (dhd_os_get_image_block(fwid_str, sizeof(fwid_str) - 1, file) <= 0) { - DHD_ERROR(("%s: read fw file failed !\n", __FUNCTION__)); + DHD_ERROR(("%s: read fw file failed !\n", __func__)); goto error; } pfw_id = (uint8 *)bcmstrnstr(fwid_str, sizeof(fwid_str) - 1, @@ -5925,7 +5973,7 @@ dhd_parse_logstrs_file(osl_t *osh, char *raw_fmts, int logstrs_size, FWID_STR_2, strlen(FWID_STR_2)); if (!pfw_id) { DHD_ERROR(("%s: could not find id in FW bin!\n", - __FUNCTION__)); + __func__)); goto error; } } @@ -5942,7 +5990,7 @@ dhd_parse_logstrs_file(osl_t *osh, char *raw_fmts, int logstrs_size, if (hdr->trailer.fw_id != fwid) { DHD_ERROR(("%s: logstr id does not match FW!" "logstrs_fwid:0x%x, rtecdc_fwid:0x%x\n", - __FUNCTION__, hdr->trailer.fw_id, fwid)); + __func__, hdr->trailer.fw_id, fwid)); goto error; } @@ -5962,12 +6010,12 @@ dhd_parse_logstrs_file(osl_t *osh, char *raw_fmts, int logstrs_size, return BCME_DECERR; } } else { - DHD_ERROR(("%s: Invalid logstr version %u\n", __FUNCTION__, + DHD_ERROR(("%s: Invalid logstr version %u\n", __func__, trailer->version)); return BCME_ERROR; } if (logstrs_size != hdr_logstrs_size) { - DHD_ERROR(("%s: bad logstrs_size %d\n", __FUNCTION__, hdr_logstrs_size)); + DHD_ERROR(("%s: bad logstrs_size %d\n", __func__, hdr_logstrs_size)); return BCME_ERROR; } } else { @@ -5993,7 +6041,7 @@ dhd_parse_logstrs_file(osl_t *osh, char *raw_fmts, int logstrs_size, if (num_fmts) fmts = MALLOC(osh, num_fmts * sizeof(char *)); if (fmts == NULL) { - DHD_ERROR(("%s: Failed to allocate fmts memory\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to allocate fmts memory\n", __func__)); return BCME_ERROR; } event_log->fmts_size = num_fmts * sizeof(char *); @@ -6034,7 +6082,7 @@ int dhd_parse_map_file(osl_t *osh, void *file, uint32 *ramstart, uint32 *rodata_ /* Allocate 1 byte more than read_size to terminate it with NULL */ raw_fmts = MALLOCZ(osh, read_size + 1); if (raw_fmts == NULL) { - DHD_ERROR(("%s: Failed to allocate raw_fmts memory \n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to allocate raw_fmts memory \n", __func__)); goto fail; } @@ -6043,7 +6091,7 @@ int dhd_parse_map_file(osl_t *osh, void *file, uint32 *ramstart, uint32 *rodata_ { error = dhd_os_read_file(file, raw_fmts, read_size); if (error < 0) { - DHD_ERROR(("%s: map file read failed err:%d \n", __FUNCTION__, + DHD_ERROR(("%s: map file read failed err:%d \n", __func__, error)); goto fail; } @@ -6108,7 +6156,7 @@ int dhd_parse_map_file(osl_t *osh, void *file, uint32 *ramstart, uint32 *rodata_ return BCME_OK; } else { - DHD_ERROR(("%s: readmap error 0X%x \n", __FUNCTION__, + DHD_ERROR(("%s: readmap error 0X%x \n", __func__, count)); return BCME_ERROR; } @@ -6125,25 +6173,25 @@ dhd_event_logtrace_infobuf_pkt_process(dhd_pub_t *dhdp, void *pktbuf, uint16 payload_hdr_type; uint16 payload_hdr_length; - DHD_TRACE(("%s:Enter\n", __FUNCTION__)); + DHD_TRACE(("%s:Enter\n", __func__)); if (PKTLEN(dhdp->osh, pktbuf) < sizeof(uint32)) { DHD_ERROR(("%s: infobuf too small for version field\n", - __FUNCTION__)); + __func__)); goto exit; } infobuf_version = *((uint32 *)PKTDATA(dhdp->osh, pktbuf)); PKTPULL(dhdp->osh, pktbuf, sizeof(uint32)); if (infobuf_version != PCIE_INFOBUF_V1) { DHD_ERROR(("%s: infobuf version %d is not PCIE_INFOBUF_V1\n", - __FUNCTION__, infobuf_version)); + __func__, infobuf_version)); goto exit; } /* Version 1 infobuf has a single type/length (and then value) field */ if (PKTLEN(dhdp->osh, pktbuf) < sizeof(info_buf_payload_hdr_t)) { DHD_ERROR(("%s: infobuf too small for v1 type/length fields\n", - __FUNCTION__)); + __func__)); goto exit; } /* Process/parse the common info payload header (type/length) */ @@ -6152,7 +6200,7 @@ dhd_event_logtrace_infobuf_pkt_process(dhd_pub_t *dhdp, void *pktbuf, payload_hdr_length = ltoh16(payload_hdr_ptr->length); if (payload_hdr_type != PCIE_INFOBUF_V1_TYPE_LOGTRACE) { DHD_ERROR(("%s: payload_hdr_type %d is not V1_TYPE_LOGTRACE\n", - __FUNCTION__, payload_hdr_type)); + __func__, payload_hdr_type)); goto exit; } PKTPULL(dhdp->osh, pktbuf, sizeof(info_buf_payload_hdr_t)); @@ -6162,7 +6210,7 @@ dhd_event_logtrace_infobuf_pkt_process(dhd_pub_t *dhdp, void *pktbuf, */ if (payload_hdr_length > PKTLEN(dhdp->osh, pktbuf)) { DHD_ERROR(("%s: infobuf logtrace length is bigger" - " than actual buffer data\n", __FUNCTION__)); + " than actual buffer data\n", __func__)); goto exit; } dhd_dbg_trace_evnt_handler(dhdp, PKTDATA(dhdp->osh, pktbuf), @@ -6459,9 +6507,9 @@ dhd_ecounter_autoconfig(dhd_pub_t *dhd) if (rc != BCME_UNSUPPORTED) { rc = BCME_OK; - DHD_ERROR(("%s Ecounter autoconfig in fw failed : %d\n", __FUNCTION__, rc)); + DHD_ERROR(("%s Ecounter autoconfig in fw failed : %d\n", __func__, rc)); } else { - DHD_ERROR(("%s Ecounter autoconfig in FW not supported\n", __FUNCTION__)); + DHD_ERROR(("%s Ecounter autoconfig in FW not supported\n", __func__)); } } @@ -6475,16 +6523,16 @@ dhd_ecounter_configure(dhd_pub_t *dhd, bool enable) if (enable) { if (dhd_ecounter_autoconfig(dhd) != BCME_OK) { if ((rc = dhd_start_ecounters(dhd)) != BCME_OK) { - DHD_ERROR(("%s Ecounters start failed\n", __FUNCTION__)); + DHD_ERROR(("%s Ecounters start failed\n", __func__)); } else if ((rc = dhd_start_event_ecounters(dhd)) != BCME_OK) { - DHD_ERROR(("%s Event_Ecounters start failed\n", __FUNCTION__)); + DHD_ERROR(("%s Event_Ecounters start failed\n", __func__)); } } } else { if ((rc = dhd_stop_ecounters(dhd)) != BCME_OK) { - DHD_ERROR(("%s Ecounters stop failed\n", __FUNCTION__)); + DHD_ERROR(("%s Ecounters stop failed\n", __func__)); } else if ((rc = dhd_stop_event_ecounters(dhd)) != BCME_OK) { - DHD_ERROR(("%s Event_Ecounters stop failed\n", __FUNCTION__)); + DHD_ERROR(("%s Event_Ecounters stop failed\n", __func__)); } } return rc; @@ -6710,7 +6758,7 @@ dhd_start_event_ecounters(dhd_pub_t *dhd) if (rc) { DHD_ERROR(("%s: Could not process: stat: %d return code: %d\n", - __FUNCTION__, event_ecounter_stat->stats_rep, rc)); + __func__, event_ecounter_stat->stats_rep, rc)); goto fail; } @@ -6725,7 +6773,7 @@ dhd_start_event_ecounters(dhd_pub_t *dhd) if (processed_containers_len > max_xtlv_len) { DHD_ERROR(("%s XTLV NUM IS OVERFLOWED THAN ALLOWED!!\n", - __FUNCTION__)); + __func__)); rc = BCME_BADLEN; goto fail; } @@ -6734,8 +6782,8 @@ dhd_start_event_ecounters(dhd_pub_t *dhd) req->len = processed_containers_len + OFFSETOF(event_ecounters_config_request_v2_t, ecounters_xtlvs); - DHD_INFO(("%s req version %d logset %d event_id %d flags %d len %d\n", - __FUNCTION__, req->version, req->logset, req->event_id, + DHD_TRACE(("%s req version %d logset %d event_id %d flags %d len %d\n", + __func__, req->version, req->logset, req->event_id, req->flags, req->len)); rc = dhd_iovar(dhd, 0, "event_ecounters", (char *)req, req->len, NULL, 0, TRUE); @@ -6837,7 +6885,7 @@ dhd_dump_debug_ring(dhd_pub_t *dhdp, void *ring_ptr, const void *user_buf, /* write the log */ ret = dhd_export_debug_data(data, NULL, user_buf, rlen, &pos); } - DHD_DBGIF(("%s: rlen : %d\n", __FUNCTION__, rlen)); + DHD_DBGIF(("%s: rlen : %d\n", __func__, rlen)); } while ((rlen > 0)); /* now update the section header length in the file */ /* Complete ring size is dumped by HAL, hence updating length to ring size */ @@ -6845,7 +6893,7 @@ dhd_dump_debug_ring(dhd_pub_t *dhdp, void *ring_ptr, const void *user_buf, ret = dhd_export_debug_data((char *)sec_hdr, NULL, user_buf, sizeof(*sec_hdr), &fpos_sechdr); } else { - DHD_ERROR(("%s: No concise buffer available !\n", __FUNCTION__)); + DHD_ERROR(("%s: No concise buffer available !\n", __func__)); } DHD_DBG_RING_LOCK(ring->lock, flags); ring->state = RING_ACTIVE; @@ -6907,7 +6955,7 @@ dhd_log_dump_ring_to_file(dhd_pub_t *dhdp, void *ring_ptr, void *file, /* write the log */ ret = dhd_os_write_file_posn(file, file_posn, data, rlen); if (ret < 0) { - DHD_ERROR(("%s: write file error !\n", __FUNCTION__)); + DHD_ERROR(("%s: write file error !\n", __func__)); DHD_DBG_RING_LOCK(ring->lock, flags); ring->state = RING_ACTIVE; DHD_DBG_RING_UNLOCK(ring->lock, flags); @@ -6920,7 +6968,7 @@ dhd_log_dump_ring_to_file(dhd_pub_t *dhdp, void *ring_ptr, void *file, sec_hdr->length = total_len; dhd_os_write_file_posn(file, &fpos_sechdr, (char *)sec_hdr, sizeof(*sec_hdr)); } else { - DHD_ERROR(("%s: No concise buffer available !\n", __FUNCTION__)); + DHD_ERROR(("%s: No concise buffer available !\n", __func__)); } DHD_DBG_RING_LOCK(ring->lock, flags); @@ -6984,13 +7032,13 @@ dhd_logdump_cookie_save(dhd_pub_t *dhdp, char *cookie, char *type) if (!dhdp || !cookie || !type || !dhdp->logdump_cookie) { DHD_ERROR(("%s: At least one buffer ptr is NULL dhdp=%p cookie=%p" - " type = %p, cookie_cfg:%p\n", __FUNCTION__, + " type = %p, cookie_cfg:%p\n", __func__, dhdp, cookie, type, dhdp?dhdp->logdump_cookie: NULL)); return; } ptr = (char *)dhd_ring_get_empty(dhdp->logdump_cookie); if (ptr == NULL) { - DHD_ERROR(("%s : Skip to save due to locking\n", __FUNCTION__)); + DHD_ERROR(("%s : Skip to save due to locking\n", __func__)); return; } scnprintf(ptr, LOGDUMP_COOKIE_STR_LEN, "%s: %s\n", type, cookie); @@ -7004,13 +7052,13 @@ dhd_logdump_cookie_get(dhd_pub_t *dhdp, char *ret_cookie, uint32 buf_size) if (!dhdp || !ret_cookie || !dhdp->logdump_cookie) { DHD_ERROR(("%s: At least one buffer ptr is NULL dhdp=%p" - "cookie=%p cookie_cfg:%p\n", __FUNCTION__, + "cookie=%p cookie_cfg:%p\n", __func__, dhdp, ret_cookie, dhdp?dhdp->logdump_cookie: NULL)); return BCME_ERROR; } ptr = (char *)dhd_ring_get_first(dhdp->logdump_cookie); if (ptr == NULL) { - DHD_ERROR(("%s : Skip to save due to locking\n", __FUNCTION__)); + DHD_ERROR(("%s : Skip to save due to locking\n", __func__)); return BCME_ERROR; } memcpy(ret_cookie, ptr, MIN(buf_size, strlen(ptr))); @@ -7023,7 +7071,7 @@ dhd_logdump_cookie_count(dhd_pub_t *dhdp) { if (!dhdp || !dhdp->logdump_cookie) { DHD_ERROR(("%s: At least one buffer ptr is NULL dhdp=%p cookie=%p\n", - __FUNCTION__, dhdp, dhdp?dhdp->logdump_cookie: NULL)); + __func__, dhdp, dhdp?dhdp->logdump_cookie: NULL)); return 0; } return dhd_ring_get_cur_size(dhdp->logdump_cookie); @@ -7057,7 +7105,7 @@ __dhd_log_dump_cookie_to_file( ret = dhd_export_debug_data(COOKIE_LOG_HDR, fp, user_buf, strlen(COOKIE_LOG_HDR), f_pos); if (ret < 0) { - DHD_ERROR(("%s : Write file Error for cookie hdr\n", __FUNCTION__)); + DHD_ERROR(("%s : Write file Error for cookie hdr\n", __func__)); return ret; } sec_hdr.magic = LOG_DUMP_MAGIC; @@ -7067,13 +7115,13 @@ __dhd_log_dump_cookie_to_file( ret = dhd_export_debug_data((char *)&sec_hdr, fp, user_buf, sizeof(sec_hdr), f_pos); if (ret < 0) { - DHD_ERROR(("%s : Write file Error for section hdr\n", __FUNCTION__)); + DHD_ERROR(("%s : Write file Error for section hdr\n", __func__)); return ret; } ret = dhd_export_debug_data(buf, fp, user_buf, sec_hdr.length, f_pos); if (ret < 0) { - DHD_ERROR(("%s : Write file Error for cookie data\n", __FUNCTION__)); + DHD_ERROR(("%s : Write file Error for cookie data\n", __func__)); } return ret; @@ -7097,13 +7145,13 @@ dhd_log_dump_cookie_len(dhd_pub_t *dhdp) if (!dhdp || !dhdp->logdump_cookie) { DHD_ERROR(("%s At least one ptr is NULL " "dhdp = %p cookie %p\n", - __FUNCTION__, dhdp, dhdp?dhdp->logdump_cookie:NULL)); + __func__, dhdp, dhdp?dhdp->logdump_cookie:NULL)); goto exit; } buf = (char *)MALLOCZ(dhdp->osh, buf_size); if (!buf) { - DHD_ERROR(("%s Fail to malloc buffer\n", __FUNCTION__)); + DHD_ERROR(("%s Fail to malloc buffer\n", __func__)); goto exit; } @@ -7146,13 +7194,13 @@ dhd_log_dump_cookie(dhd_pub_t *dhdp, const void *user_buf) if (!dhdp || !dhdp->logdump_cookie) { DHD_ERROR(("%s At least one ptr is NULL " "dhdp = %p cookie %p\n", - __FUNCTION__, dhdp, dhdp?dhdp->logdump_cookie:NULL)); + __func__, dhdp, dhdp?dhdp->logdump_cookie:NULL)); goto exit; } buf = (char *)MALLOCZ(dhdp->osh, buf_size); if (!buf) { - DHD_ERROR(("%s Fail to malloc buffer\n", __FUNCTION__)); + DHD_ERROR(("%s Fail to malloc buffer\n", __func__)); goto exit; } @@ -7191,13 +7239,13 @@ dhd_log_dump_cookie_to_file(dhd_pub_t *dhdp, void *fp, const void *user_buf, uns if (!dhdp || !dhdp->logdump_cookie || (!fp && !user_buf) || !f_pos) { DHD_ERROR(("%s At least one ptr is NULL " "dhdp = %p cookie %p fp = %p f_pos = %p\n", - __FUNCTION__, dhdp, dhdp?dhdp->logdump_cookie:NULL, fp, f_pos)); + __func__, dhdp, dhdp?dhdp->logdump_cookie:NULL, fp, f_pos)); return ret; } buf = (char *)MALLOCZ(dhdp->osh, buf_size); if (!buf) { - DHD_ERROR(("%s Fail to malloc buffer\n", __FUNCTION__)); + DHD_ERROR(("%s Fail to malloc buffer\n", __func__)); return ret; } ret = __dhd_log_dump_cookie_to_file(dhdp, fp, user_buf, f_pos, buf, buf_size); @@ -7224,19 +7272,19 @@ dhd_log_dump_trigger(dhd_pub_t *dhdp, int subcmd) } if (subcmd >= CMD_MAX || subcmd < CMD_DEFAULT) { - DHD_ERROR(("%s : Invalid subcmd \n", __FUNCTION__)); + DHD_ERROR(("%s : Invalid subcmd \n", __func__)); return; } current_time_sec = DIV_U64_BY_U32(OSL_LOCALTIME_NS(), NSEC_PER_SEC); DHD_ERROR(("%s: current_time_sec=%lld debug_dump_time_sec=%lld interval=%d\n", - __FUNCTION__, current_time_sec, dhdp->debug_dump_time_sec, + __func__, current_time_sec, dhdp->debug_dump_time_sec, DEBUG_DUMP_TRIGGER_INTERVAL_SEC)); if ((current_time_sec - dhdp->debug_dump_time_sec) < DEBUG_DUMP_TRIGGER_INTERVAL_SEC) { DHD_ERROR(("%s : Last debug dump triggered(%lld) within %d seconds, so SKIP\n", - __FUNCTION__, dhdp->debug_dump_time_sec, DEBUG_DUMP_TRIGGER_INTERVAL_SEC)); + __func__, dhdp->debug_dump_time_sec, DEBUG_DUMP_TRIGGER_INTERVAL_SEC)); return; } @@ -7253,7 +7301,7 @@ dhd_log_dump_trigger(dhd_pub_t *dhdp, int subcmd) *flush_type = DLD_BUF_TYPE_ALL; dhd_schedule_log_dump(dhdp, flush_type); } else { - DHD_ERROR(("%s Fail to malloc flush_type\n", __FUNCTION__)); + DHD_ERROR(("%s Fail to malloc flush_type\n", __func__)); return; } #endif /* DHD_DUMP_FILE_WRITE_FROM_KERNEL */ @@ -7284,7 +7332,7 @@ dhd_edl_mem_init(dhd_pub_t *dhd) ret = dhd_dma_buf_alloc(dhd, &dhd->edl_ring_mem, DHD_EDL_RING_SIZE); if (ret != BCME_OK) { DHD_ERROR(("%s: alloc of edl_ring_mem failed\n", - __FUNCTION__)); + __func__)); return BCME_ERROR; } return BCME_OK; @@ -7309,7 +7357,7 @@ dhd_event_logtrace_process_edl(dhd_pub_t *dhdp, uint8 *data, uint8 *buf = NULL; if (!data || !dhdp || !evt_decode_data) { - DHD_ERROR(("%s: invalid args ! \n", __FUNCTION__)); + DHD_ERROR(("%s: invalid args ! \n", __func__)); return BCME_ERROR; } @@ -7323,7 +7371,7 @@ dhd_event_logtrace_process_edl(dhd_pub_t *dhdp, uint8 *data, /* validate the fields */ if (ltoh32(msg->infobuf_ver) != PCIE_INFOBUF_V1) { DHD_ERROR(("%s: Skipping msg with invalid infobuf ver (0x%x)" - " expected (0x%x)\n", __FUNCTION__, + " expected (0x%x)\n", __func__, msg->infobuf_ver, PCIE_INFOBUF_V1)); return BCME_VERSION; } @@ -7331,19 +7379,19 @@ dhd_event_logtrace_process_edl(dhd_pub_t *dhdp, uint8 *data, /* in EDL, the request_id field of cmn_msg_hdr is overloaded to carry payload length */ if (sizeof(info_buf_payload_hdr_t) > cmn_msg_hdr->request_id) { DHD_ERROR(("%s: infobuf too small for v1 type/length fields\n", - __FUNCTION__)); + __func__)); return BCME_BUFTOOLONG; } if (ltoh16(msg->pyld_hdr.type) != PCIE_INFOBUF_V1_TYPE_LOGTRACE) { DHD_ERROR(("%s: payload_hdr_type %d is not V1_TYPE_LOGTRACE\n", - __FUNCTION__, ltoh16(msg->pyld_hdr.type))); + __func__, ltoh16(msg->pyld_hdr.type))); return BCME_BADOPTION; } if (ltoh16(msg->pyld_hdr.length) > cmn_msg_hdr->request_id) { DHD_ERROR(("%s: infobuf logtrace length %u is bigger" - " than available buffer size %u\n", __FUNCTION__, + " than available buffer size %u\n", __func__, ltoh16(msg->pyld_hdr.length), cmn_msg_hdr->request_id)); return BCME_BADLEN; } @@ -7357,7 +7405,7 @@ dhd_event_logtrace_process_edl(dhd_pub_t *dhdp, uint8 *data, * copy the event data to the skb and send it up the stack */ if (dhdp->logtrace_pkt_sendup) { - DHD_INFO(("%s: send up event log, len %u bytes\n", __FUNCTION__, + DHD_INFO(("%s: send up event log, len %u bytes\n", __func__, (uint32)(ltoh16(msg->pyld_hdr.length) + sizeof(info_buf_payload_hdr_t) + 4))); dhd_sendup_info_buf(dhdp, (uint8 *)msg); @@ -7456,7 +7504,7 @@ void dhd_h2d_log_time_sync(dhd_pub_t *dhd) /* Nano seconds to milli seconds */ do_div(ts, 1000000); if (dhd_wl_ioctl_set_intiovar(dhd, "rte_timesync", ts, WLC_SET_VAR, TRUE, 0)) { - DHD_ERROR(("%s rte_timesync **** FAILED ****\n", __FUNCTION__)); + DHD_ERROR(("%s rte_timesync **** FAILED ****\n", __func__)); /* Stopping HOST Dongle console time syncing */ dhd->dhd_rte_time_sync_ms = 0; } @@ -7478,16 +7526,16 @@ dhd_control_he_enab(dhd_pub_t * dhd, uint8 he_enab) if (ret != BCME_OK) { ret = -EINVAL; - DHD_ERROR(("%s failed to pack he enab, err: %s\n", __FUNCTION__, bcmerrorstr(ret))); + DHD_ERROR(("%s failed to pack he enab, err: %s\n", __func__, bcmerrorstr(ret))); return ret; } ret = dhd_iovar(dhd, 0, "he", (char *)&mybuf, sizeof(mybuf), NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s he_enab (%d) set failed, err: %s\n", - __FUNCTION__, he_enab, bcmerrorstr(ret))); + __func__, he_enab, bcmerrorstr(ret))); } else { - DHD_ERROR(("%s he_enab (%d) set successed\n", __FUNCTION__, he_enab)); + DHD_ERROR(("%s he_enab (%d) set successed\n", __func__, he_enab)); } return ret; diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_config.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_config.c index d90a238d521d1..a3fd5f6e3d4fc 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_config.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_config.c @@ -48,19 +48,19 @@ uint dump_msg_level = 0; #define CONFIG_MSG(x, args...) \ do { \ if (config_msg_level & CONFIG_MSG_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIXS "%s : " x, __func__, ## args); \ + printk(KERN_INFO DHD_LOG_PREFIXS "%s : " x, __func__, ## args); \ } \ } while (0) #define CONFIG_ERROR(x, args...) \ do { \ if (config_msg_level & CONFIG_ERROR_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIXS "CONFIG-ERROR) %s : " x, __func__, ## args); \ + printk(KERN_ERR DHD_LOG_PREFIXS "CONFIG: %s : " x, __func__, ## args); \ } \ } while (0) #define CONFIG_TRACE(x, args...) \ do { \ if (config_msg_level & CONFIG_TRACE_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CONFIG-TRACE) %s : " x, __func__, ## args); \ + printk(KERN_DEBUG DHD_LOG_PREFIXS "CONFIG: %s : " x, __func__, ## args); \ } \ } while (0) @@ -355,10 +355,12 @@ dhd_conf_free_mac_list(wl_mac_list_ctrl_t *mac_list) if (mac_list->m_mac_list_head[i].mac) { CONFIG_TRACE("Free mac %p\n", mac_list->m_mac_list_head[i].mac); kfree(mac_list->m_mac_list_head[i].mac); + mac_list->m_mac_list_head[i].mac = NULL; } } CONFIG_TRACE("Free m_mac_list_head %p\n", mac_list->m_mac_list_head); kfree(mac_list->m_mac_list_head); + mac_list->m_mac_list_head = NULL; } mac_list->count = 0; } @@ -649,6 +651,7 @@ dhd_conf_free_country_list(struct dhd_conf *conf) country = conf->country_head; count++; } + CONFIG_TRACE("%d country released\n", count); } @@ -666,6 +669,7 @@ dhd_conf_free_mchan_list(struct dhd_conf *conf) mchan = conf->mchan; count++; } + CONFIG_TRACE("%d mchan released\n", count); } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_dbg.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_dbg.h index 5c84497387092..c75810bc80de5 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_dbg.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_dbg.h @@ -99,7 +99,7 @@ do { \ } while (0) #define DHD_IOVAR_MEM(args) \ do { \ - if (dhd_msg_level & DHD_ERROR_VAL) { \ + if (dhd_msg_level & DHD_TRACE_VAL) { \ if (dhd_msg_level & DHD_IOVAR_MEM_VAL) { \ printf args; \ } \ @@ -109,7 +109,7 @@ do { \ } while (0) #define DHD_LOG_MEM(args) \ do { \ - if (dhd_msg_level & DHD_ERROR_VAL) { \ + if (dhd_msg_level & DHD_TRACE_VAL) { \ DHD_LOG_DUMP_WRITE("[%s]: ", dhd_log_dump_get_timestamp()); \ DHD_LOG_DUMP_WRITE args; \ } \ @@ -170,8 +170,8 @@ do { \ /* !DHD_LOG_DUMP */ #define DHD_MSGTRACE_LOG(args) do {if (dhd_msg_level & DHD_MSGTRACE_VAL) printf args;} while (0) #define DHD_ERROR_MEM(args) DHD_ERROR(args) -#define DHD_IOVAR_MEM(args) DHD_ERROR(args) -#define DHD_LOG_MEM(args) DHD_ERROR(args) +#define DHD_IOVAR_MEM(args) DHD_TRACE(args) +#define DHD_LOG_MEM(args) DHD_TRACE(args) #define DHD_EVENT(args) do {if (dhd_msg_level & DHD_EVENT_VAL) printf args;} while (0) #define DHD_ECNTR_LOG(args) DHD_EVENT(args) #define DHD_PRSRV_MEM(args) DHD_EVENT(args) @@ -257,9 +257,10 @@ do { \ #define DHD_ERROR(args) do {if (dhd_msg_level & DHD_ERROR_VAL) \ printf args;} while (0) +#define DHD_INFO(args) do {if (dhd_msg_level & DHD_INFO_VAL) \ + printf args;} while (0) +/* -- hard core -- */ #define DHD_TRACE(args) -#define DHD_INFO(args) - #define DHD_DATA(args) #define DHD_CTL(args) #define DHD_TIMER(args) @@ -287,12 +288,12 @@ do { \ #define DHD_DBGIF(args) #define DHD_ERROR_MEM(args) DHD_ERROR(args) -#define DHD_IOVAR_MEM(args) DHD_ERROR(args) -#define DHD_LOG_MEM(args) DHD_ERROR(args) +#define DHD_IOVAR_MEM(args) DHD_TRACE(args) +#define DHD_LOG_MEM(args) DHD_TRACE(args) #define DHD_ERROR_EX(args) DHD_ERROR(args) -#define DHD_TRACE_HW4 DHD_TRACE -#define DHD_INFO_HW4 DHD_INFO +#define DHD_TRACE_HW4 DHD_TRACE +#define DHD_INFO_HW4 DHD_INFO #define DHD_ERROR_NO_HW4 DHD_ERROR #define DHD_ERROR_ON() 0 diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_linux.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_linux.c index 90616c2294ead..1bfd5b7c903dd 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_linux.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_linux.c @@ -876,7 +876,7 @@ static int dhd_pm_callback(struct notifier_block *nfb, unsigned long action, voi } printf("%s: action=%ld, suspend=%d, suspend_mode=%d\n", - __FUNCTION__, action, suspend, dhdinfo->pub.conf->suspend_mode); + __func__, action, suspend, dhdinfo->pub.conf->suspend_mode); if (suspend) { DHD_OS_WAKE_LOCK_WAIVE(&dhdinfo->pub); if (dhdinfo->pub.conf->suspend_mode == PM_NOTIFIER) @@ -1107,7 +1107,7 @@ dhd_sta_alloc(dhd_pub_t * dhdp) idx = id16_map_alloc(dhdp->staid_allocator); if (idx == ID16_INVALID) { - DHD_ERROR(("%s: cannot get free staid\n", __FUNCTION__)); + DHD_ERROR(("%s: cannot get free staid\n", __func__)); return DHD_STA_NULL; } @@ -1169,7 +1169,7 @@ dhd_sta_pool_init(dhd_pub_t *dhdp, int max_sta) /* dhd_sta objects per radio are managed in a table. id#0 reserved. */ staid_allocator = id16_map_init(dhdp->osh, max_sta, 1); if (staid_allocator == NULL) { - DHD_ERROR(("%s: sta id allocator init failure\n", __FUNCTION__)); + DHD_ERROR(("%s: sta id allocator init failure\n", __func__)); return BCME_ERROR; } @@ -1177,7 +1177,7 @@ dhd_sta_pool_init(dhd_pub_t *dhdp, int max_sta) sta_pool_memsz = ((max_sta + 1) * sizeof(dhd_sta_t)); /* skip idx 0 */ sta_pool = (dhd_sta_pool_t *)MALLOC(dhdp->osh, sta_pool_memsz); if (sta_pool == NULL) { - DHD_ERROR(("%s: sta table alloc failure\n", __FUNCTION__)); + DHD_ERROR(("%s: sta table alloc failure\n", __func__)); id16_map_fini(dhdp->osh, staid_allocator); return BCME_ERROR; } @@ -1238,7 +1238,7 @@ dhd_sta_pool_clear(dhd_pub_t *dhdp, int max_sta) void *staid_allocator; if (!dhdp) { - DHD_ERROR(("%s: dhdp is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdp is NULL\n", __func__)); return; } @@ -1246,12 +1246,12 @@ dhd_sta_pool_clear(dhd_pub_t *dhdp, int max_sta) staid_allocator = dhdp->staid_allocator; if (!sta_pool) { - DHD_ERROR(("%s: sta_pool is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: sta_pool is NULL\n", __func__)); return; } if (!staid_allocator) { - DHD_ERROR(("%s: staid_allocator is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: staid_allocator is NULL\n", __func__)); return; } @@ -1299,7 +1299,7 @@ dhd_find_sta(void *pub, int ifidx, void *ea) list_for_each_entry(sta, &ifp->sta_list, list) { if (!memcmp(sta->ea.octet, ea, ETHER_ADDR_LEN)) { DHD_INFO(("%s: Found STA " MACDBG "\n", - __FUNCTION__, MAC2STRDBG((char *)ea))); + __func__, MAC2STRDBG((char *)ea))); DHD_IF_STA_LIST_UNLOCK(ifp, flags); return sta; } @@ -1326,13 +1326,13 @@ dhd_add_sta(void *pub, int ifidx, void *ea) return DHD_STA_NULL; if (!memcmp(ifp->net->dev_addr, ea, ETHER_ADDR_LEN)) { - DHD_ERROR(("%s: Serious FAILURE, receive own MAC %pM !!\n", __FUNCTION__, ea)); + DHD_ERROR(("%s: Serious FAILURE, receive own MAC %pM !!\n", __func__, ea)); return DHD_STA_NULL; } sta = dhd_sta_alloc((dhd_pub_t *)pub); if (sta == DHD_STA_NULL) { - DHD_ERROR(("%s: Alloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: Alloc failed\n", __func__)); return DHD_STA_NULL; } @@ -1348,7 +1348,7 @@ dhd_add_sta(void *pub, int ifidx, void *ea) list_add_tail(&sta->list, &ifp->sta_list); DHD_ERROR(("%s: Adding STA " MACDBG "\n", - __FUNCTION__, MAC2STRDBG((char *)ea))); + __func__, MAC2STRDBG((char *)ea))); DHD_IF_STA_LIST_UNLOCK(ifp, flags); @@ -1414,7 +1414,7 @@ dhd_del_sta(void *pub, int ifidx, void *ea) list_for_each_entry_safe(sta, next, &ifp->sta_list, list) { if (!memcmp(sta->ea.octet, ea, ETHER_ADDR_LEN)) { DHD_ERROR(("%s: Deleting STA " MACDBG "\n", - __FUNCTION__, MAC2STRDBG(sta->ea.octet))); + __func__, MAC2STRDBG(sta->ea.octet))); list_del(&sta->list); dhd_sta_free(&ifp->info->pub, sta); } @@ -1464,7 +1464,7 @@ dhd_sta_list_snapshot(dhd_info_t *dhd, dhd_if_t *ifp, struct list_head *snapshot /* allocate one and add to snapshot */ snapshot = (dhd_sta_t *)MALLOC(dhd->pub.osh, sizeof(dhd_sta_t)); if (snapshot == NULL) { - DHD_ERROR(("%s: Cannot allocate memory\n", __FUNCTION__)); + DHD_ERROR(("%s: Cannot allocate memory\n", __func__)); continue; } @@ -1628,13 +1628,13 @@ static int dhd_wait_for_file_dump(dhd_pub_t *dhdp) primary_ndev = dhd_linux_get_primary_netdev(dhdp); if (!primary_ndev) { - DHD_ERROR(("%s: Cannot find primary netdev\n", __FUNCTION__)); + DHD_ERROR(("%s: Cannot find primary netdev\n", __func__)); return BCME_ERROR; } cfg = wl_get_cfg(primary_ndev); if (!cfg) { - DHD_ERROR(("%s: Cannot find cfg\n", __FUNCTION__)); + DHD_ERROR(("%s: Cannot find cfg\n", __func__)); return BCME_ERROR; } @@ -1643,7 +1643,7 @@ static int dhd_wait_for_file_dump(dhd_pub_t *dhdp) DHD_BUS_BUSY_CLEAR_IN_HALDUMP(dhdp); dhd_os_busbusy_wake(dhdp); DHD_GENERAL_UNLOCK(dhdp, flags); - DHD_ERROR(("%s: bus is down! can't collect log dump. \n", __FUNCTION__)); + DHD_ERROR(("%s: bus is down! can't collect log dump. \n", __func__)); return BCME_ERROR; } DHD_BUS_BUSY_SET_IN_HALDUMP(dhdp); @@ -1654,19 +1654,19 @@ static int dhd_wait_for_file_dump(dhd_pub_t *dhdp) if (wl_cfg80211_is_hal_started(cfg)) { int timeleft = 0; - DHD_ERROR(("[DUMP] %s: HAL started. send urgent event\n", __FUNCTION__)); + DHD_ERROR(("[DUMP] %s: HAL started. send urgent event\n", __func__)); dhd_dbg_send_urgent_evt(dhdp, NULL, 0); DHD_ERROR(("%s: wait to clear dhd_bus_busy_state: 0x%x\n", - __FUNCTION__, dhdp->dhd_bus_busy_state)); + __func__, dhdp->dhd_bus_busy_state)); timeleft = dhd_os_busbusy_wait_bitmask(dhdp, &dhdp->dhd_bus_busy_state, DHD_BUS_BUSY_IN_HALDUMP, 0); if ((dhdp->dhd_bus_busy_state & DHD_BUS_BUSY_IN_HALDUMP) != 0) { DHD_ERROR(("%s: Timed out dhd_bus_busy_state=0x%x\n", - __FUNCTION__, dhdp->dhd_bus_busy_state)); + __func__, dhdp->dhd_bus_busy_state)); } } else { - DHD_ERROR(("[DUMP] %s: HAL Not started. skip urgent event\n", __FUNCTION__)); + DHD_ERROR(("[DUMP] %s: HAL Not started. skip urgent event\n", __func__)); } DHD_OS_WAKE_UNLOCK(dhdp); /* In case of dhd_os_busbusy_wait_bitmask() timeout, @@ -1709,7 +1709,7 @@ dhd_set_packet_filter(dhd_pub_t *dhd) { int i; - DHD_TRACE(("%s: enter\n", __FUNCTION__)); + DHD_TRACE(("%s: enter\n", __func__)); if (dhd_pkt_filter_enable) { for (i = 0; i < dhd->pktfilter_count; i++) { dhd_pktfilter_offload_set(dhd, dhd->pktfilter[i]); @@ -1722,10 +1722,10 @@ dhd_enable_packet_filter(int value, dhd_pub_t *dhd) { int i; - DHD_ERROR(("%s: enter, value = %d\n", __FUNCTION__, value)); + DHD_ERROR(("%s: enter, value = %d\n", __func__, value)); if ((dhd->op_mode & DHD_FLAG_HOSTAP_MODE) && value && !dhd_conf_get_insuspend(dhd, AP_FILTER_IN_SUSPEND)) { - DHD_ERROR(("%s: DHD_FLAG_HOSTAP_MODE\n", __FUNCTION__)); + DHD_ERROR(("%s: DHD_FLAG_HOSTAP_MODE\n", __func__)); return; } /* 1 - Enable packet filter, only allow unicast packet to send up */ @@ -1885,12 +1885,12 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) #endif /* PASS_ALL_MCAST_PKTS */ DHD_TRACE(("%s: enter, value = %d in_suspend=%d\n", - __FUNCTION__, value, dhd->in_suspend)); + __func__, value, dhd->in_suspend)); dhd_suspend_lock(dhd); #ifdef CUSTOM_SET_CPUCORE - DHD_TRACE(("%s set cpucore(suspend%d)\n", __FUNCTION__, value)); + DHD_TRACE(("%s set cpucore(suspend%d)\n", __func__, value)); /* set specific cpucore */ dhd_set_cpucore(dhd, TRUE); #endif /* CUSTOM_SET_CPUCORE */ @@ -1900,7 +1900,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) dhd->early_suspended = 1; #endif // endif /* Kernel suspended */ - DHD_ERROR(("%s: force extra Suspend setting\n", __FUNCTION__)); + DHD_ERROR(("%s: force extra Suspend setting\n", __func__)); #ifndef SUPPORT_PM2_ONLY dhd_wl_ioctl_cmd(dhd, WLC_SET_PM, (char *)&power_mode, @@ -1927,7 +1927,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, i, "allmulti", (char *)&allmulti, sizeof(allmulti), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s allmulti failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s allmulti failed %d\n", __func__, ret)); } } #endif /* PASS_ALL_MCAST_PKTS */ @@ -1948,7 +1948,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "bcn_li_dtim", (char *)&bcn_li_dtim, sizeof(bcn_li_dtim), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s bcn_li_dtim failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s bcn_li_dtim failed %d\n", __func__, ret)); } if ((bcn_li_dtim * dtim_period * bcn_interval) >= MIN_DTIM_FOR_ROAM_THRES_EXTEND) { @@ -1961,7 +1961,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "lpas", (char *)&lpas, sizeof(lpas), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s lpas failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s lpas failed %d\n", __func__, ret)); } bcn_to_dly = 1; /* @@ -1973,21 +1973,21 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "bcn_to_dly", (char *)&bcn_to_dly, sizeof(bcn_to_dly), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s bcn_to_dly failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s bcn_to_dly failed %d\n", __func__, ret)); } /* Increase beacon timeout to 6 secs or use bigger one */ bcn_timeout = max(bcn_timeout, BCN_TIMEOUT_IN_SUSPEND); ret = dhd_iovar(dhd, 0, "bcn_timeout", (char *)&bcn_timeout, sizeof(bcn_timeout), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s bcn_timeout failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s bcn_timeout failed %d\n", __func__, ret)); } } #else bcn_li_dtim = dhd_get_suspend_bcn_li_dtim(dhd); if (dhd_iovar(dhd, 0, "bcn_li_dtim", (char *)&bcn_li_dtim, sizeof(bcn_li_dtim), NULL, 0, TRUE) < 0) - DHD_ERROR(("%s: set dtim failed\n", __FUNCTION__)); + DHD_ERROR(("%s: set dtim failed\n", __func__)); #endif /* OEM_ANDROID && BCMPCIE */ #ifdef WL_CFG80211 /* Disable cfg80211 feature events during suspend */ @@ -2003,7 +2003,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "bcn_timeout", (char *)&bcn_timeout, sizeof(bcn_timeout), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s bcn_timeout failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s bcn_timeout failed %d\n", __func__, ret)); } #endif /* CUSTOM_BCN_TIMEOUT_IN_SUSPEND */ #ifdef CUSTOM_ROAM_TIME_THRESH_IN_SUSPEND @@ -2011,7 +2011,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "roam_time_thresh", (char *)&roam_time_thresh, sizeof(roam_time_thresh), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s roam_time_thresh failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s roam_time_thresh failed %d\n", __func__, ret)); } #endif /* CUSTOM_ROAM_TIME_THRESH_IN_SUSPEND */ #ifndef ENABLE_FW_ROAM_SUSPEND @@ -2019,7 +2019,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "roam_off", (char *)&roamvar, sizeof(roamvar), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s roam_off failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s roam_off failed %d\n", __func__, ret)); } #endif /* ENABLE_FW_ROAM_SUSPEND */ #ifdef ENABLE_BCN_LI_BCN_WAKEUP @@ -2029,7 +2029,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "bcn_li_bcn", (char *)&bcn_li_bcn, sizeof(bcn_li_bcn), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s bcn_li_bcn failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s bcn_li_bcn failed %d\n", __func__, ret)); } #endif /* ENABLE_BCN_LI_BCN_WAKEUP */ #if defined(WL_CFG80211) && defined(WL_BCNRECV) @@ -2046,11 +2046,11 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_ndo_enable(dhd, TRUE); if (ret < 0) { DHD_ERROR(("%s: failed to enable NDO\n", - __FUNCTION__)); + __func__)); } } else { DHD_INFO(("%s: NDO disabled on suspend due to" - "HW capacity\n", __FUNCTION__)); + "HW capacity\n", __func__)); } } #endif /* NDO_CONFIG_SUPPORT */ @@ -2094,7 +2094,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) sizeof(pm_awake_thresh), NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s set const_awake_thresh failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); } #endif /* CUSTOM_EVENT_PM_WAKE */ #ifdef CONFIG_SILENT_ROAM @@ -2102,7 +2102,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_sroam_set_mon(dhd, TRUE); if (ret < 0) { DHD_ERROR(("%s set sroam failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); } } dhd->sroamed = FALSE; @@ -2113,7 +2113,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) dhd->early_suspended = 0; #endif // endif /* Kernel resumed */ - DHD_ERROR(("%s: Remove extra suspend setting \n", __FUNCTION__)); + DHD_ERROR(("%s: Remove extra suspend setting \n", __func__)); #ifdef DYNAMIC_SWOOB_DURATION intr_width = 0; ret = dhd_iovar(dhd, 0, "bus:intr_width", (char *)&intr_width, @@ -2151,7 +2151,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, i, "allmulti", (char *)&allmulti, sizeof(allmulti), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: allmulti failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: allmulti failed:%d\n", __func__, ret)); } } #endif /* PASS_ALL_MCAST_PKTS */ @@ -2160,29 +2160,29 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "bcn_li_dtim", (char *)&bcn_li_dtim, sizeof(bcn_li_dtim), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s:bcn_li_ditm failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s:bcn_li_ditm failed:%d\n", __func__, ret)); } ret = dhd_iovar(dhd, 0, "lpas", (char *)&lpas, sizeof(lpas), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s:lpas failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s:lpas failed:%d\n", __func__, ret)); } ret = dhd_iovar(dhd, 0, "bcn_to_dly", (char *)&bcn_to_dly, sizeof(bcn_to_dly), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s:bcn_to_dly failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s:bcn_to_dly failed:%d\n", __func__, ret)); } ret = dhd_iovar(dhd, 0, "bcn_timeout", (char *)&bcn_timeout, sizeof(bcn_timeout), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s:bcn_timeout failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s:bcn_timeout failed:%d\n", __func__, ret)); } #else /* restore pre-suspend setting for dtim_skip */ ret = dhd_iovar(dhd, 0, "bcn_li_dtim", (char *)&bcn_li_dtim, sizeof(bcn_li_dtim), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s:bcn_li_ditm fail:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s:bcn_li_ditm fail:%d\n", __func__, ret)); } #endif /* OEM_ANDROID && BCMPCIE */ #ifdef DHD_USE_EARLYSUSPEND @@ -2191,7 +2191,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "bcn_timeout", (char *)&bcn_timeout, sizeof(bcn_timeout), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s:bcn_timeout failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s:bcn_timeout failed:%d\n", __func__, ret)); } #endif /* CUSTOM_BCN_TIMEOUT_IN_SUSPEND */ #ifdef CUSTOM_ROAM_TIME_THRESH_IN_SUSPEND @@ -2199,7 +2199,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "roam_time_thresh", (char *)&roam_time_thresh, sizeof(roam_time_thresh), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s:roam_time_thresh failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s:roam_time_thresh failed:%d\n", __func__, ret)); } #endif /* CUSTOM_ROAM_TIME_THRESH_IN_SUSPEND */ @@ -2208,14 +2208,14 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "roam_off", (char *)&roamvar, sizeof(roamvar), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: roam_off fail:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: roam_off fail:%d\n", __func__, ret)); } #endif /* ENABLE_FW_ROAM_SUSPEND */ #ifdef ENABLE_BCN_LI_BCN_WAKEUP ret = dhd_iovar(dhd, 0, "bcn_li_bcn", (char *)&bcn_li_bcn, sizeof(bcn_li_bcn), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: bcn_li_bcn failed:%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: bcn_li_bcn failed:%d\n", __func__, ret)); } #endif /* ENABLE_BCN_LI_BCN_WAKEUP */ #ifdef NDO_CONFIG_SUPPORT @@ -2224,7 +2224,7 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) ret = dhd_ndo_enable(dhd, FALSE); if (ret < 0) { DHD_ERROR(("%s: failed to disable NDO\n", - __FUNCTION__)); + __func__)); } } #endif /* NDO_CONFIG_SUPPORT */ @@ -2260,13 +2260,13 @@ static int dhd_set_suspend(int value, dhd_pub_t *dhd) sizeof(pm_awake_thresh), NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s set const_awake_thresh failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); } #endif /* CUSTOM_EVENT_PM_WAKE */ #ifdef CONFIG_SILENT_ROAM ret = dhd_sroam_set_mon(dhd, FALSE); if (ret < 0) { - DHD_ERROR(("%s set sroam failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s set sroam failed %d\n", __func__, ret)); } #endif /* CONFIG_SILENT_ROAM */ #endif /* DHD_USE_EARLYSUSPEND */ @@ -2313,7 +2313,7 @@ static int dhd_suspend_resume_helper(struct dhd_info *dhd, int val, int force) static void dhd_early_suspend(struct early_suspend *h) { struct dhd_info *dhd = container_of(h, struct dhd_info, early_suspend); - DHD_TRACE_HW4(("%s: enter\n", __FUNCTION__)); + DHD_TRACE_HW4(("%s: enter\n", __func__)); if (dhd && dhd->pub.conf->suspend_mode == EARLY_SUSPEND) { dhd_suspend_resume_helper(dhd, 1, 0); @@ -2324,7 +2324,7 @@ static void dhd_early_suspend(struct early_suspend *h) static void dhd_late_resume(struct early_suspend *h) { struct dhd_info *dhd = container_of(h, struct dhd_info, early_suspend); - DHD_TRACE_HW4(("%s: enter\n", __FUNCTION__)); + DHD_TRACE_HW4(("%s: enter\n", __func__)); if (dhd && dhd->pub.conf->suspend_mode == EARLY_SUSPEND) { dhd_conf_set_suspend_resume(&dhd->pub, 0); @@ -2393,7 +2393,7 @@ dhd_net2idx(dhd_info_t *dhd, struct net_device *net) int i = 0; if (!dhd) { - DHD_ERROR(("%s : DHD_BAD_IF return\n", __FUNCTION__)); + DHD_ERROR(("%s : DHD_BAD_IF return\n", __func__)); return DHD_BAD_IF; } @@ -2433,7 +2433,7 @@ dhd_ifname2idx(dhd_info_t *dhd, char *name) if (dhd->iflist[i] && !strncmp(dhd->iflist[i]->dngl_name, name, IFNAMSIZ)) break; - DHD_TRACE(("%s: return idx %d for \"%s\"\n", __FUNCTION__, i, name)); + DHD_TRACE(("%s: return idx %d for \"%s\"\n", __func__, i, name)); return i; /* default - the primary interface */ } @@ -2446,12 +2446,12 @@ dhd_ifname(dhd_pub_t *dhdp, int ifidx) ASSERT(dhd); if (ifidx < 0 || ifidx >= DHD_MAX_IFS) { - DHD_ERROR(("%s: ifidx %d out of range\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s: ifidx %d out of range\n", __func__, ifidx)); return ""; } if (dhd->iflist[ifidx] == NULL) { - DHD_ERROR(("%s: null i/f %d\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s: null i/f %d\n", __func__, ifidx)); return ""; } @@ -2509,7 +2509,7 @@ _dhd_set_multicast_list(dhd_info_t *dhd, int ifidx) } #else /* !MCAST_LIST_ACCUMULATION */ if (!dhd->iflist[ifidx]) { - DHD_ERROR(("%s : dhd->iflist[%d] was NULL\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s : dhd->iflist[%d] was NULL\n", __func__, ifidx)); return; } dev = dhd->iflist[ifidx]->net; @@ -2794,17 +2794,17 @@ dhd_ifadd_event_handler(void *handle, void *event_info, u8 event) BCM_REFERENCE(ret); if (event != DHD_WQ_WORK_IF_ADD) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); return; } if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } if (!if_event) { - DHD_ERROR(("%s: event data is null \n", __FUNCTION__)); + DHD_ERROR(("%s: event data is null \n", __func__)); return; } @@ -2814,7 +2814,7 @@ dhd_ifadd_event_handler(void *handle, void *event_info, u8 event) ifidx = if_event->event.ifidx; bssidx = if_event->event.bssidx; - DHD_TRACE(("%s: registering if with ifidx %d\n", __FUNCTION__, ifidx)); + DHD_TRACE(("%s: registering if with ifidx %d\n", __func__, ifidx)); #if defined(WL_CFG80211) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 0, 0)) if (if_event->event.ifidx > 0) { @@ -2850,7 +2850,7 @@ dhd_ifadd_event_handler(void *handle, void *event_info, u8 event) ndev = dhd_allocate_if(&dhd->pub, ifidx, if_event->name, if_event->mac, bssidx, TRUE, if_event->name); if (!ndev) { - DHD_ERROR(("%s: net device alloc failed \n", __FUNCTION__)); + DHD_ERROR(("%s: net device alloc failed \n", __func__)); goto done; } @@ -2858,7 +2858,7 @@ dhd_ifadd_event_handler(void *handle, void *event_info, u8 event) ret = dhd_register_if(&dhd->pub, ifidx, TRUE); DHD_PERIM_LOCK(&dhd->pub); if (ret != BCME_OK) { - DHD_ERROR(("%s: dhd_register_if failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd_register_if failed\n", __func__)); dhd_remove_if(&dhd->pub, ifidx, TRUE); goto done; } @@ -2871,7 +2871,7 @@ dhd_ifadd_event_handler(void *handle, void *event_info, u8 event) ret = dhd_iovar(&dhd->pub, ifidx, "ap_isolate", (char *)&var_int, sizeof(var_int), NULL, 0, TRUE); if (ret != BCME_OK) { - DHD_ERROR(("%s: Failed to set ap_isolate to dongle\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to set ap_isolate to dongle\n", __func__)); dhd_remove_if(&dhd->pub, ifidx, TRUE); } } @@ -2896,17 +2896,17 @@ dhd_ifdel_event_handler(void *handle, void *event_info, u8 event) dhd_if_event_t *if_event = event_info; if (event != DHD_WQ_WORK_IF_DEL) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); return; } if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } if (!if_event) { - DHD_ERROR(("%s: event data is null \n", __FUNCTION__)); + DHD_ERROR(("%s: event data is null \n", __func__)); return; } @@ -2957,17 +2957,17 @@ dhd_ifupdate_event_handler(void *handle, void *event_info, u8 event) dhd_if_event_t *if_event = event_info; if (event != DHD_WQ_WORK_IF_UPDATE) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); return; } if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } if (!if_event) { - DHD_ERROR(("%s: event data is null \n", __FUNCTION__)); + DHD_ERROR(("%s: event data is null \n", __func__)); return; } @@ -2975,7 +2975,7 @@ dhd_ifupdate_event_handler(void *handle, void *event_info, u8 event) DHD_OS_WAKE_LOCK(&dhd->pub); ifidx = if_event->event.ifidx; - DHD_TRACE(("%s: Update interface with idx %d\n", __FUNCTION__, ifidx)); + DHD_TRACE(("%s: Update interface with idx %d\n", __func__, ifidx)); dhd_op_if_update(&dhd->pub, ifidx); @@ -2993,18 +2993,18 @@ int dhd_op_if_update(dhd_pub_t *dhdpub, int ifidx) char buf[128]; if ((NULL==dhdpub)||(NULL==dhdpub->info)) { - DHD_ERROR(("%s: *** DHD handler is NULL!\n", __FUNCTION__)); + DHD_ERROR(("%s: *** DHD handler is NULL!\n", __func__)); return -1; } else { dhdinfo = (dhd_info_t *)dhdpub->info; ifp = dhdinfo->iflist[ifidx]; if (NULL==ifp) { - DHD_ERROR(("%s: *** ifp handler is NULL!\n", __FUNCTION__)); + DHD_ERROR(("%s: *** ifp handler is NULL!\n", __func__)); return -2; } } - DHD_TRACE(("%s: idx %d\n", __FUNCTION__, ifidx)); + DHD_TRACE(("%s: idx %d\n", __func__, ifidx)); // Get MAC address strcpy(buf, "cur_etheraddr"); ret = dhd_wl_ioctl_cmd(&dhdinfo->pub, WLC_GET_VAR, buf, sizeof(buf), FALSE, ifp->idx); @@ -3036,11 +3036,11 @@ dhd_set_mac_addr_handler(void *handle, void *event_info, u8 event) dhd_if_t *ifp = event_info; if (event != DHD_WQ_WORK_SET_MAC) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); } if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } @@ -3053,7 +3053,7 @@ dhd_set_mac_addr_handler(void *handle, void *event_info, u8 event) goto done; } if (ifp == NULL || !dhd->pub.up) { - DHD_ERROR(("%s: interface info not available/down \n", __FUNCTION__)); + DHD_ERROR(("%s: interface info not available/down \n", __func__)); goto done; } @@ -3064,9 +3064,9 @@ dhd_set_mac_addr_handler(void *handle, void *event_info, u8 event) #endif /* DHD_NOTIFY_MAC_CHANGED */ if (_dhd_set_mac_address(dhd, ifp->idx, ifp->mac_addr, TRUE) == 0) - DHD_INFO(("%s: MACID is overwritten\n", __FUNCTION__)); + DHD_INFO(("%s: MACID is overwritten\n", __func__)); else - DHD_ERROR(("%s: _dhd_set_mac_address() failed\n", __FUNCTION__)); + DHD_ERROR(("%s: _dhd_set_mac_address() failed\n", __func__)); #ifdef DHD_NOTIFY_MAC_CHANGED rtnl_unlock(); @@ -3086,12 +3086,12 @@ dhd_set_mcast_list_handler(void *handle, void *event_info, u8 event) dhd_if_t *ifp = NULL; if (event != DHD_WQ_WORK_SET_MCAST_LIST) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); return; } if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } @@ -3102,12 +3102,12 @@ dhd_set_mcast_list_handler(void *handle, void *event_info, u8 event) ifp = dhd->iflist[ifidx]; if (ifp == NULL || !dhd->pub.up) { - DHD_ERROR(("%s: interface info not available/down \n", __FUNCTION__)); + DHD_ERROR(("%s: interface info not available/down \n", __func__)); goto done; } if (ifp == NULL || !dhd->pub.up) { - DHD_ERROR(("%s: interface info not available/down \n", __FUNCTION__)); + DHD_ERROR(("%s: interface info not available/down \n", __func__)); goto done; } @@ -3118,7 +3118,7 @@ dhd_set_mcast_list_handler(void *handle, void *event_info, u8 event) #endif /* MCAST_LIST_ACCUMULATION */ _dhd_set_multicast_list(dhd, ifidx); - DHD_INFO(("%s: set multicast list for if %d\n", __FUNCTION__, ifidx)); + DHD_TRACE(("%s: set multicast list for if %d\n", __func__, ifidx)); done: DHD_PERIM_UNLOCK(&dhd->pub); @@ -3244,7 +3244,7 @@ int dhd_sendup(dhd_pub_t *dhdp, int ifidx, void *p) if (in_interrupt()) { bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); netif_rx(skb); } else { if (dhdp->info->rxthread_enabled) { @@ -3262,7 +3262,7 @@ int dhd_sendup(dhd_pub_t *dhdp, int ifidx, void *p) * to do it manually. */ bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); #if defined(WL_MONITOR) && defined(BCMSDIO) if (dhd_monitor_enabled(dhdp, ifidx)) dhd_rx_mon_pkt_sdio(dhdp, skb, ifidx); @@ -3300,7 +3300,7 @@ __dhd_sendpkt(dhd_pub_t *dhdp, int ifidx, void *pktbuf) #ifdef PCIE_FULL_DONGLE if (dhdp->busstate == DHD_BUS_SUSPEND) { - DHD_ERROR(("%s : pcie is still in suspend state!!\n", __FUNCTION__)); + DHD_ERROR(("%s : pcie is still in suspend state!!\n", __func__)); PKTCFREE(dhdp->osh, pktbuf, TRUE); return NETDEV_TX_BUSY; } @@ -3499,14 +3499,14 @@ dhd_sendpkt(dhd_pub_t *dhdp, int ifidx, void *pktbuf) ifp = dhd_get_ifp(dhdp, ifidx); if (!ifp || ifp->del_in_progress) { DHD_ERROR(("%s: ifp:%p del_in_progress:%d\n", - __FUNCTION__, ifp, ifp ? ifp->del_in_progress : 0)); + __func__, ifp, ifp ? ifp->del_in_progress : 0)); DHD_GENERAL_UNLOCK(dhdp, flags); PKTCFREE(dhdp->osh, pktbuf, TRUE); return -ENODEV; } if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(dhdp)) { DHD_ERROR(("%s: returning as busstate=%d\n", - __FUNCTION__, dhdp->busstate)); + __func__, dhdp->busstate)); DHD_GENERAL_UNLOCK(dhdp, flags); PKTCFREE(dhdp->osh, pktbuf, TRUE); return -ENODEV; @@ -3518,7 +3518,7 @@ dhd_sendpkt(dhd_pub_t *dhdp, int ifidx, void *pktbuf) DHD_GENERAL_LOCK(dhdp, flags); if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(dhdp)) { DHD_ERROR(("%s: bus is in suspend(%d) or suspending(0x%x) state!!\n", - __FUNCTION__, dhdp->busstate, dhdp->dhd_bus_busy_state)); + __func__, dhdp->busstate, dhdp->dhd_bus_busy_state)); DHD_BUS_BUSY_CLEAR_IN_SEND_PKT(dhdp); DHD_IF_CLR_TX_ACTIVE(ifp, DHD_TX_SEND_PKT); dhd_os_tx_completion_wake(dhdp); @@ -3552,7 +3552,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) unsigned long flags; uint8 htsfdlystat_sz = 0; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (dhd_query_bus_erros(&dhd->pub)) { return -ENODEV; @@ -3566,7 +3566,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) #ifdef BCMPCIE if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(&dhd->pub)) { DHD_ERROR(("%s: bus is in suspend(%d) or suspending(0x%x) state!!\n", - __FUNCTION__, dhd->pub.busstate, dhd->pub.dhd_bus_busy_state)); + __func__, dhd->pub.busstate, dhd->pub.dhd_bus_busy_state)); DHD_BUS_BUSY_CLEAR_IN_TX(&dhd->pub); #ifdef PCIE_FULL_DONGLE /* Stop tx queues if suspend is in progress */ @@ -3581,7 +3581,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) #else if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(&dhd->pub)) { DHD_ERROR(("%s: bus is in suspend(%d) or suspending(0x%x) state!!\n", - __FUNCTION__, dhd->pub.busstate, dhd->pub.dhd_bus_busy_state)); + __func__, dhd->pub.busstate, dhd->pub.dhd_bus_busy_state)); } #endif @@ -3591,11 +3591,11 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) /* Reject if down */ if (dhd->pub.hang_was_sent || DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(&dhd->pub)) { DHD_ERROR(("%s: xmit rejected pub.up=%d busstate=%d \n", - __FUNCTION__, dhd->pub.up, dhd->pub.busstate)); + __func__, dhd->pub.up, dhd->pub.busstate)); netif_stop_queue(net); /* Send Event when bus down detected during data session */ if (dhd->pub.up && !dhd->pub.hang_was_sent && !DHD_BUS_CHECK_REMOVE(&dhd->pub)) { - DHD_ERROR(("%s: Event HANG sent up\n", __FUNCTION__)); + DHD_ERROR(("%s: Event HANG sent up\n", __func__)); dhd->pub.hang_reason = HANG_REASON_BUS_DOWN; net_os_send_hang_message(net); } @@ -3612,7 +3612,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) if (!ifp || (ifidx == DHD_BAD_IF) || ifp->del_in_progress) { DHD_ERROR(("%s: ifidx %d ifp:%p del_in_progress:%d\n", - __FUNCTION__, ifidx, ifp, (ifp ? ifp->del_in_progress : 0))); + __func__, ifidx, ifp, (ifp ? ifp->del_in_progress : 0))); netif_stop_queue(net); DHD_BUS_BUSY_CLEAR_IN_TX(&dhd->pub); dhd_os_busbusy_wake(&dhd->pub); @@ -3628,7 +3628,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) ASSERT(ifidx == dhd_net2idx(dhd, net)); ASSERT((ifp != NULL) && ((ifidx < DHD_MAX_IFS) && (ifp == dhd->iflist[ifidx]))); - bcm_object_trace_opr(skb, BCM_OBJDBG_ADD_PKT, __FUNCTION__, __LINE__); + bcm_object_trace_opr(skb, BCM_OBJDBG_ADD_PKT, __func__, __LINE__); /* re-align socket buffer if "skb->data" is odd address */ if (((unsigned long)(skb->data)) & 0x1) { @@ -3655,11 +3655,11 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) if (skb_headroom(skb) < dhd->pub.hdrlen + htsfdlystat_sz) { struct sk_buff *skb2; - DHD_INFO(("%s: insufficient headroom\n", + DHD_INFO(("%s: Small skb head room, reallocate more for skb\n", dhd_ifname(&dhd->pub, ifidx))); dhd->pub.tx_realloc++; - bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, __FUNCTION__, __LINE__); + bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, __func__, __LINE__); skb2 = skb_realloc_headroom(skb, dhd->pub.hdrlen + htsfdlystat_sz); dev_kfree_skb(skb); @@ -3669,7 +3669,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) ret = -ENOMEM; goto done; } - bcm_object_trace_opr(skb, BCM_OBJDBG_ADD_PKT, __FUNCTION__, __LINE__); + bcm_object_trace_opr(skb, BCM_OBJDBG_ADD_PKT, __func__, __LINE__); } /* move from dhdsdio_sendfromq(), try to orphan skb early */ @@ -3682,7 +3682,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) if (!(pktbuf = PKTFRMNATIVE(dhd->pub.osh, skb))) { DHD_ERROR(("%s: PKTFRMNATIVE failed\n", dhd_ifname(&dhd->pub, ifidx))); - bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, __FUNCTION__, __LINE__); + bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, __func__, __LINE__); dev_kfree_skb_any(skb); ret = -ENOMEM; goto done; @@ -3695,7 +3695,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) if (WET_ENABLED(&dhd->pub) && (dhd_wet_send_proc(dhd->pub.wet_info, pktbuf, &pktbuf) < 0)) { DHD_INFO(("%s:%s: wet send proc failed\n", - __FUNCTION__, dhd_ifname(&dhd->pub, ifidx))); + __func__, dhd_ifname(&dhd->pub, ifidx))); PKTFREE(dhd->pub.osh, pktbuf, FALSE); ret = -EFAULT; goto done; @@ -3709,7 +3709,7 @@ dhd_start_xmit(struct sk_buff *skb, struct net_device *net) if (PSR_ENABLED(&dhd->pub) && (dhd_psta_proc(&dhd->pub, ifidx, &pktbuf, TRUE) < 0)) { - DHD_ERROR(("%s:%s: psta send proc failed\n", __FUNCTION__, + DHD_ERROR(("%s:%s: psta send proc failed\n", __func__, dhd_ifname(&dhd->pub, ifidx))); } #endif /* DHD_PSTA */ @@ -3784,7 +3784,7 @@ void dhd_rx_wq_wakeup(struct work_struct *ptr) pub = work->pub; - DHD_RPM(("%s: ENTER. \n", __FUNCTION__)); + DHD_RPM(("%s: ENTER. \n", __func__)); if (atomic_read(&pub->block_bus) || pub->busstate == DHD_BUS_DOWN) { return; @@ -3842,7 +3842,7 @@ dhd_start_xmit_wrapper(struct sk_buff *skb, struct net_device *net) dhd_info_t *dhd = DHD_DEV_INFO(net); if (dhd->pub.busstate == DHD_BUS_SUSPEND) { - DHD_RPM(("%s: wakeup the bus using workqueue.\n", __FUNCTION__)); + DHD_RPM(("%s: wakeup the bus using workqueue.\n", __func__)); dhd_netif_stop_queue(dhd->pub.bus); @@ -3880,7 +3880,7 @@ dhd_bus_wakeup_work(dhd_pub_t *dhdp) rx_work = kmalloc(sizeof(*rx_work), GFP_ATOMIC); if (!rx_work) { - DHD_ERROR(("%s: start_rx_work alloc error. \n", __FUNCTION__)); + DHD_ERROR(("%s: start_rx_work alloc error. \n", __func__)); return; } @@ -3899,13 +3899,13 @@ __dhd_txflowcontrol(dhd_pub_t *dhdp, struct net_device *net, bool state) netif_stop_queue(net); dhd_prot_update_pktid_txq_stop_cnt(dhdp); } else if (state == ON) { - DHD_INFO(("%s: Netif Queue has already stopped\n", __FUNCTION__)); + DHD_INFO(("%s: Netif Queue has already stopped\n", __func__)); } if ((state == OFF) && (dhdp->txoff == TRUE)) { netif_wake_queue(net); dhd_prot_update_pktid_txq_start_cnt(dhdp); } else if (state == OFF) { - DHD_INFO(("%s: Netif Queue has already started\n", __FUNCTION__)); + DHD_INFO(("%s: Netif Queue has already started\n", __func__)); } } @@ -3916,7 +3916,7 @@ dhd_txflowcontrol(dhd_pub_t *dhdp, int ifidx, bool state) dhd_info_t *dhd = dhdp->info; int i; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); ASSERT(dhd); @@ -4004,7 +4004,7 @@ dhd_event_logtrace_pkt_process(dhd_pub_t *dhdp, struct sk_buff * skb) bcm_event_t *pvt_data; uint pktlen; - DHD_TRACE(("%s:Enter\n", __FUNCTION__)); + DHD_TRACE(("%s:Enter\n", __func__)); /* In dhd_rx_frame, header is stripped using skb_pull * of size ETH_HLEN, so adjust pktlen accordingly @@ -4016,7 +4016,7 @@ dhd_event_logtrace_pkt_process(dhd_pub_t *dhdp, struct sk_buff * skb) if (ret != BCME_OK) { DHD_ERROR(("%s: wl_host_event_get_data err = %d\n", - __FUNCTION__, ret)); + __func__, ret)); goto exit; } @@ -4047,14 +4047,14 @@ dhd_event_logtrace_process_items(dhd_info_t *dhd) uint32 process_len; if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return 0; } dhdp = &dhd->pub; if (!dhdp) { - DHD_ERROR(("%s: dhd pub is null \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd pub is null \n", __func__)); return 0; } @@ -4067,7 +4067,7 @@ dhd_event_logtrace_process_items(dhd_info_t *dhd) skb = skb_dequeue(&dhd->evt_trace_queue); if (skb == NULL) { DHD_ERROR(("%s: skb is NULL, which is not valid case\n", - __FUNCTION__)); + __func__)); break; } BCM_REFERENCE(ifid); @@ -4149,7 +4149,7 @@ dhd_logtrace_thread(void *data) do { /* Check terminated before processing the items */ if (tsk->terminated) { - DHD_ERROR(("%s: task terminated\n", __FUNCTION__)); + DHD_ERROR(("%s: task terminated\n", __func__)); goto exit; } #ifdef EWP_EDL @@ -4177,18 +4177,18 @@ dhd_logtrace_thread(void *data) OSL_SLEEP(DHD_EVENT_LOGTRACE_RESCHEDULE_DELAY_MS); } else if (ret < 0) { DHD_ERROR(("%s: ERROR should not reach here\n", - __FUNCTION__)); + __func__)); } } while (ret > 0); } if (tsk->flush_ind) { - DHD_ERROR(("%s: flushed\n", __FUNCTION__)); + DHD_ERROR(("%s: flushed\n", __func__)); dhdp->logtrace_thr_ts.flush_time = OSL_LOCALTIME_NS(); tsk->flush_ind = 0; complete(&tsk->flushed); } } else { - DHD_ERROR(("%s: unexpted break\n", __FUNCTION__)); + DHD_ERROR(("%s: unexpted break\n", __func__)); dhdp->logtrace_thr_ts.unexpected_break_time = OSL_LOCALTIME_NS(); break; } @@ -4241,7 +4241,7 @@ dhd_schedule_logtrace(void *dhd_info) if (dhd->thr_logtrace_ctl.thr_pid >= 0) { binary_sema_up(&dhd->thr_logtrace_ctl); } else { - DHD_ERROR(("%s: thr_logtrace_ctl(%ld) not inited\n", __FUNCTION__, + DHD_ERROR(("%s: thr_logtrace_ctl(%ld) not inited\n", __func__, dhd->thr_logtrace_ctl.thr_pid)); } #else @@ -4257,7 +4257,7 @@ dhd_cancel_logtrace_process_sync(dhd_info_t *dhd) if (dhd->thr_logtrace_ctl.thr_pid >= 0) { PROC_STOP_USING_BINARY_SEMA(&dhd->thr_logtrace_ctl); } else { - DHD_ERROR(("%s: thr_logtrace_ctl(%ld) not inited\n", __FUNCTION__, + DHD_ERROR(("%s: thr_logtrace_ctl(%ld) not inited\n", __func__, dhd->thr_logtrace_ctl.thr_pid)); } #else @@ -4272,7 +4272,7 @@ dhd_flush_logtrace_process(dhd_info_t *dhd) if (dhd->thr_logtrace_ctl.thr_pid >= 0) { PROC_FLUSH_USING_BINARY_SEMA(&dhd->thr_logtrace_ctl); } else { - DHD_ERROR(("%s: thr_logtrace_ctl(%ld) not inited\n", __FUNCTION__, + DHD_ERROR(("%s: thr_logtrace_ctl(%ld) not inited\n", __func__, dhd->thr_logtrace_ctl.thr_pid)); } #else @@ -4287,10 +4287,10 @@ dhd_init_logtrace_process(dhd_info_t *dhd) dhd->thr_logtrace_ctl.thr_pid = DHD_PID_KT_INVALID; PROC_START(dhd_logtrace_thread, dhd, &dhd->thr_logtrace_ctl, 0, "dhd_logtrace_thread"); if (dhd->thr_logtrace_ctl.thr_pid < 0) { - DHD_ERROR(("%s: init logtrace process failed\n", __FUNCTION__)); + DHD_ERROR(("%s: init logtrace process failed\n", __func__)); return BCME_ERROR; } else { - DHD_ERROR(("%s: thr_logtrace_ctl(%ld) succedded\n", __FUNCTION__, + DHD_ERROR(("%s: thr_logtrace_ctl(%ld) succedded\n", __func__, dhd->thr_logtrace_ctl.thr_pid)); } #else @@ -4310,10 +4310,10 @@ dhd_reinit_logtrace_process(dhd_info_t *dhd) PROC_START(dhd_logtrace_thread, dhd, &dhd->thr_logtrace_ctl, 0, "dhd_logtrace_thread"); if (dhd->thr_logtrace_ctl.thr_pid < 0) { - DHD_ERROR(("%s: reinit logtrace process failed\n", __FUNCTION__)); + DHD_ERROR(("%s: reinit logtrace process failed\n", __func__)); return BCME_ERROR; } else { - DHD_ERROR(("%s: thr_logtrace_ctl(%ld) succedded\n", __FUNCTION__, + DHD_ERROR(("%s: thr_logtrace_ctl(%ld) succedded\n", __func__, dhd->thr_logtrace_ctl.thr_pid)); } } @@ -4373,7 +4373,7 @@ dhd_sendup_info_buf(dhd_pub_t *dhdp, uint8 *msg) sizeof(uint32)); pkt = PKTGET(dhdp->osh, pktsize, FALSE); if (!pkt) { - DHD_ERROR(("%s: skb alloc failed ! not sending event log up.\n", __FUNCTION__)); + DHD_ERROR(("%s: skb alloc failed ! not sending event log up.\n", __func__)); } else { PKTSETLEN(dhdp->osh, pkt, pktsize); pktdata = PKTDATA(dhdp->osh, pkt); @@ -4417,7 +4417,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) wake_counts_t *wcp = NULL; #endif /* DHD_WAKE_STATUS */ - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); BCM_REFERENCE(dump_data); #ifdef DHD_TPUT_PATCH @@ -4477,7 +4477,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) if (ifidx >= DHD_MAX_IFS) { DHD_ERROR(("%s: ifidx(%d) Out of bound. drop packet\n", - __FUNCTION__, ifidx)); + __func__, ifidx)); if (ntoh16(eh->ether_type) == ETHER_TYPE_BRCM) { #ifdef DHD_USE_STATIC_CTRLBUF PKTFREE_STATIC(dhdp->osh, pktbuf, FALSE); @@ -4493,7 +4493,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) ifp = dhd->iflist[ifidx]; if (ifp == NULL) { DHD_ERROR(("%s: ifp is NULL. drop packet\n", - __FUNCTION__)); + __func__)); if (ntoh16(eh->ether_type) == ETHER_TYPE_BRCM) { #ifdef DHD_USE_STATIC_CTRLBUF PKTFREE_STATIC(dhdp->osh, pktbuf, FALSE); @@ -4516,7 +4516,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) #endif /* PROP_TXSTATUS_VSDB */ { DHD_ERROR(("%s: net device is NOT registered yet. drop packet\n", - __FUNCTION__)); + __func__)); PKTCFREE(dhdp->osh, pktbuf, FALSE); continue; } @@ -4630,14 +4630,14 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) if (WET_ENABLED(&dhd->pub) && (dhd_wet_recv_proc(dhd->pub.wet_info, pktbuf) < 0)) { DHD_INFO(("%s:%s: wet recv proc failed\n", - __FUNCTION__, dhd_ifname(dhdp, ifidx))); + __func__, dhd_ifname(dhdp, ifidx))); } #endif /* DHD_WET */ #ifdef DHD_PSTA if (PSR_ENABLED(dhdp) && (dhd_psta_proc(dhdp, ifidx, &pktbuf, FALSE) < 0)) { - DHD_ERROR(("%s:%s: psta recv proc failed\n", __FUNCTION__, + DHD_ERROR(("%s:%s: psta recv proc failed\n", __func__, dhd_ifname(dhdp, ifidx))); } #endif /* DHD_PSTA */ @@ -4665,7 +4665,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) (ifp->recv_reassoc_evt == TRUE) && (ifp->post_roam_evt == FALSE) && (dhd_is_4way_msg((char *)(skb->data)) == EAPOL_4WAY_M1)) { DHD_ERROR(("%s: Reassoc is in progress. " - "Drop EAPOL M1 frame\n", __FUNCTION__)); + "Drop EAPOL M1 frame\n", __func__)); PKTFREE(dhdp->osh, pktbuf, FALSE); continue; } @@ -4723,7 +4723,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) if (ret_event != BCME_OK) { DHD_ERROR(("%s: wl_host_event_get_data err = %d\n", - __FUNCTION__, ret_event)); + __func__, ret_event)); #ifdef DHD_USE_STATIC_CTRLBUF PKTFREE_STATIC(dhdp->osh, pktbuf, FALSE); #else @@ -4746,7 +4746,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) * logtrace_pkt_sendup is true */ if (event_type == WLC_E_TRACE) { - DHD_EVENT(("%s: WLC_E_TRACE\n", __FUNCTION__)); + DHD_EVENT(("%s: WLC_E_TRACE\n", __func__)); dhd_event_logtrace_enqueue(dhdp, ifidx, pktbuf); continue; } @@ -4766,7 +4766,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) #endif /* PNO_SUPPORT */ if (numpkt != 1) { DHD_TRACE(("%s: Got BRCM event packet in a chained packet.\n", - __FUNCTION__)); + __func__)); } #ifdef DHD_WAKE_STATUS @@ -4786,7 +4786,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) */ if ((event_type == WLC_E_IF) && (ret_event > 0)) { DHD_ERROR(("%s: interface is deleted. Free event packet\n", - __FUNCTION__)); + __func__)); #ifdef DHD_USE_STATIC_CTRLBUF PKTFREE_STATIC(dhdp->osh, pktbuf, FALSE); #else @@ -4810,7 +4810,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) #endif /* PROP_TXSTATUS_VSDB */ { DHD_ERROR(("%s: net device is NOT registered. drop event packet\n", - __FUNCTION__)); + __func__)); #ifdef DHD_USE_STATIC_CTRLBUF PKTFREE_STATIC(dhdp->osh, pktbuf, FALSE); #else @@ -4922,7 +4922,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) if (in_interrupt()) { bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); DHD_PERIM_UNLOCK_ALL((dhd->fwder_unit % FWDER_MAX_UNIT)); #if defined(WL_MONITOR) && defined(BCMSDIO) if (dhd_monitor_enabled(dhdp, ifidx)) @@ -4951,7 +4951,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) * to do it manually. */ bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); #if defined(ARGOS_NOTIFY_CB) argos_register_notifier_deinit(); @@ -5023,17 +5023,17 @@ dhd_get_stats(struct net_device *net) dhd_info_t *dhd = DHD_DEV_INFO(net); dhd_if_t *ifp; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (!dhd) { - DHD_ERROR(("%s : dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s : dhd is NULL\n", __func__)); goto error; } ifp = dhd_get_ifp_by_ndev(&dhd->pub, net); if (!ifp) { /* return empty stats */ - DHD_ERROR(("%s: BAD_IF\n", __FUNCTION__)); + DHD_ERROR(("%s: BAD_IF\n", __func__)); goto error; } @@ -5082,7 +5082,7 @@ dhd_watchdog_thread(void *data) } if (dhd->pub.dongle_reset == FALSE) { - DHD_TIMER(("%s:\n", __FUNCTION__)); + DHD_TIMER(("%s:\n", __func__)); dhd_bus_watchdog(&dhd->pub); DHD_GENERAL_LOCK(&dhd->pub, flags); @@ -5209,13 +5209,13 @@ dhd_dpc_thread(void *data) /* Run until signal received */ while (1) { if (dhd->pub.conf->dpc_cpucore >= 0) { - printf("%s: set dpc_cpucore %d\n", __FUNCTION__, dhd->pub.conf->dpc_cpucore); + printf("%s: set dpc_cpucore %d\n", __func__, dhd->pub.conf->dpc_cpucore); set_cpus_allowed_ptr(current, cpumask_of(dhd->pub.conf->dpc_cpucore)); dhd->pub.conf->dpc_cpucore = -1; } if (dhd->pub.conf->dhd_dpc_prio >= 0) { struct sched_param param; - printf("%s: set dhd_dpc_prio %d\n", __FUNCTION__, dhd->pub.conf->dhd_dpc_prio); + printf("%s: set dhd_dpc_prio %d\n", __func__, dhd->pub.conf->dhd_dpc_prio); param.sched_priority = (dhd->pub.conf->dhd_dpc_prio < MAX_RT_PRIO)? dhd->pub.conf->dhd_dpc_prio:(MAX_RT_PRIO-1); setScheduler(current, SCHED_FIFO, ¶m); @@ -5243,7 +5243,7 @@ dhd_dpc_thread(void *data) if (resched_cnt > MAX_RESCHED_CNT) { DHD_INFO(("%s Calling msleep to" "let other processes run. \n", - __FUNCTION__)); + __func__)); dhd->pub.dhd_bug_on = true; resched_cnt = 0; OSL_SLEEP(1); @@ -5291,7 +5291,7 @@ dhd_rxf_thread(void *data) /* Run until signal received */ while (1) { if (dhd->pub.conf->rxf_cpucore >= 0) { - printf("%s: set rxf_cpucore %d\n", __FUNCTION__, dhd->pub.conf->rxf_cpucore); + printf("%s: set rxf_cpucore %d\n", __func__, dhd->pub.conf->rxf_cpucore); set_cpus_allowed_ptr(current, cpumask_of(dhd->pub.conf->rxf_cpucore)); dhd->pub.conf->rxf_cpucore = -1; } @@ -5315,7 +5315,7 @@ dhd_rxf_thread(void *data) void *skbnext = PKTNEXT(pub->osh, skb); PKTSETNEXT(pub->osh, skb, NULL); bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); #if defined(WL_MONITOR) && defined(BCMSDIO) if (dhd_monitor_enabled(pub, 0)) dhd_rx_mon_pkt_sdio(pub, skb, 0); @@ -5378,7 +5378,7 @@ dhd_dpc_kill(dhd_pub_t *dhdp) if (dhd->thr_dpc_ctl.thr_pid < 0) { tasklet_kill(&dhd->tasklet); - DHD_ERROR(("%s: tasklet disabled\n", __FUNCTION__)); + DHD_ERROR(("%s: tasklet disabled\n", __func__)); } #ifdef DHD_LB @@ -5555,7 +5555,7 @@ void dhd_set_scb_probe(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "scb_probe", NULL, 0, iovbuf, sizeof(iovbuf), FALSE); if (ret < 0) { - DHD_ERROR(("%s: GET max_scb_probe failed\n", __FUNCTION__)); + DHD_ERROR(("%s: GET max_scb_probe failed\n", __func__)); } memcpy(&scb_probe, iovbuf, sizeof(wl_scb_probe_t)); @@ -5565,7 +5565,7 @@ void dhd_set_scb_probe(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "scb_probe", (char *)&scb_probe, sizeof(wl_scb_probe_t), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: max_scb_probe setting failed\n", __FUNCTION__)); + DHD_ERROR(("%s: max_scb_probe setting failed\n", __func__)); return; } } @@ -5596,7 +5596,7 @@ dhd_ethtool(dhd_info_t *dhd, void *uaddr) int ret; #endif // endif - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); /* all ethtool calls start with a cmd word */ if (copy_from_user(&cmd, uaddr, sizeof (uint32))) @@ -5623,7 +5623,7 @@ dhd_ethtool(dhd_info_t *dhd, void *uaddr) /* otherwise, require dongle to be up */ else if (!dhd->pub.up) { - DHD_ERROR(("%s: dongle is not up\n", __FUNCTION__)); + DHD_ERROR(("%s: dongle is not up\n", __func__)); return -ENODEV; } @@ -5636,7 +5636,7 @@ dhd_ethtool(dhd_info_t *dhd, void *uaddr) snprintf(info.version, sizeof(info.version), "%lu", dhd->pub.drv_version); if (copy_to_user(uaddr, &info, sizeof(info))) return -EFAULT; - DHD_CTL(("%s: given %*s, returning %s\n", __FUNCTION__, + DHD_CTL(("%s: given %*s, returning %s\n", __func__, (int)sizeof(drvname), drvname, info.driver)); break; @@ -5697,7 +5697,7 @@ dhd_ethtool(dhd_info_t *dhd, void *uaddr) static bool dhd_check_hang(struct net_device *net, dhd_pub_t *dhdp, int error) { if (!dhdp) { - DHD_ERROR(("%s: dhdp is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdp is NULL\n", __func__)); return FALSE; } @@ -5706,7 +5706,7 @@ static bool dhd_check_hang(struct net_device *net, dhd_pub_t *dhdp, int error) #if !defined(BCMPCIE) && !defined(BCMDBUS) if (dhdp->info->thr_dpc_ctl.thr_pid < 0) { - DHD_ERROR(("%s : skipped due to negative pid - unloading?\n", __FUNCTION__)); + DHD_ERROR(("%s : skipped due to negative pid - unloading?\n", __func__)); return FALSE; } #endif /* !BCMPCIE && !BCMDBUS */ @@ -5715,10 +5715,10 @@ static bool dhd_check_hang(struct net_device *net, dhd_pub_t *dhdp, int error) ((dhdp->busstate == DHD_BUS_DOWN) && (!dhdp->dongle_reset))) { #ifdef BCMPCIE DHD_ERROR(("%s: Event HANG send up due to re=%d te=%d d3acke=%d e=%d s=%d\n", - __FUNCTION__, dhdp->rxcnt_timeout, dhdp->txcnt_timeout, + __func__, dhdp->rxcnt_timeout, dhdp->txcnt_timeout, dhdp->d3ackcnt_timeout, error, dhdp->busstate)); #else - DHD_ERROR(("%s: Event HANG send up due to re=%d te=%d e=%d s=%d\n", __FUNCTION__, + DHD_ERROR(("%s: Event HANG send up due to re=%d te=%d e=%d s=%d\n", __func__, dhdp->rxcnt_timeout, dhdp->txcnt_timeout, error, dhdp->busstate)); #endif /* BCMPCIE */ if (dhdp->hang_reason == 0) { @@ -5848,7 +5848,7 @@ dhd_rx_mon_pkt(dhd_pub_t *dhdp, host_rxbuf_cmpl_t* msg, void *pkt, int ifidx) if (in_interrupt()) { bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); DHD_PERIM_UNLOCK_ALL((dhd->fwder_unit % FWDER_MAX_UNIT)); netif_rx(dhd->monitor_skb); DHD_PERIM_LOCK_ALL((dhd->fwder_unit % FWDER_MAX_UNIT)); @@ -5860,7 +5860,7 @@ dhd_rx_mon_pkt(dhd_pub_t *dhdp, host_rxbuf_cmpl_t* msg, void *pkt, int ifidx) * to do it manually. */ bcm_object_trace_opr(dhd->monitor_skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); DHD_PERIM_UNLOCK_ALL((dhd->fwder_unit % FWDER_MAX_UNIT)); netif_rx_ni(dhd->monitor_skb); @@ -5914,7 +5914,7 @@ dhd_bus_get(wlan_bt_handle_t handle, bus_owner_t owner) mutex_lock(&dhd->bus_user_lock); ++dhd->bus_user_count; if (dhd->bus_user_count < 0) { - DHD_ERROR(("%s(): bus_user_count is negative, which is invalid\n", __FUNCTION__)); + DHD_ERROR(("%s(): bus_user_count is negative, which is invalid\n", __func__)); ret = -1; goto exit; } @@ -5924,14 +5924,14 @@ dhd_bus_get(wlan_bt_handle_t handle, bus_owner_t owner) dhd->pub.hang_was_sent = 0; /* First user, turn on WL_REG, start the bus */ - DHD_ERROR(("%s(): First user Turn On WL_REG & start the bus", __FUNCTION__)); + DHD_ERROR(("%s(): First user Turn On WL_REG & start the bus", __func__)); if (!wifi_platform_set_power(dhd->adapter, TRUE, WIFI_TURNON_DELAY)) { /* Enable F1 */ ret = dhd_bus_resume(dhdp, 0); if (ret) { DHD_ERROR(("%s(): Failed to enable F1, err=%d\n", - __FUNCTION__, ret)); + __func__, ret)); goto exit; } } @@ -5946,15 +5946,15 @@ dhd_bus_get(wlan_bt_handle_t handle, bus_owner_t owner) dhd_bus_resume(dhdp, 1); if (!ret) { if (dhd_sync_with_dongle(&dhd->pub) < 0) { - DHD_ERROR(("%s(): Sync with dongle failed!!\n", __FUNCTION__)); + DHD_ERROR(("%s(): Sync with dongle failed!!\n", __func__)); ret = -EFAULT; } } else { - DHD_ERROR(("%s(): Failed to download, err=%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s(): Failed to download, err=%d\n", __func__, ret)); } } else { DHD_ERROR(("%s(): BUS is already acquired, just increase the count %d \r\n", - __FUNCTION__, dhd->bus_user_count)); + __func__, dhd->bus_user_count)); } exit: mutex_unlock(&dhd->bus_user_lock); @@ -5977,7 +5977,7 @@ dhd_bus_put(wlan_bt_handle_t handle, bus_owner_t owner) mutex_lock(&dhd->bus_user_lock); --dhd->bus_user_count; if (dhd->bus_user_count < 0) { - DHD_ERROR(("%s(): bus_user_count is negative, which is invalid\n", __FUNCTION__)); + DHD_ERROR(("%s(): bus_user_count is negative, which is invalid\n", __func__)); dhd->bus_user_count = 0; ret = -1; goto exit; @@ -5986,7 +5986,7 @@ dhd_bus_put(wlan_bt_handle_t handle, bus_owner_t owner) if (dhd->bus_user_count == 0) { /* Last user, stop the bus and turn Off WL_REG */ DHD_ERROR(("%s(): There are no owners left Trunf Off WL_REG & stop the bus \r\n", - __FUNCTION__)); + __func__)); #ifdef PROP_TXSTATUS if (dhd->pub.wlfc_enabled) { dhd_wlfc_deinit(&dhd->pub); @@ -6009,7 +6009,7 @@ dhd_bus_put(wlan_bt_handle_t handle, bus_owner_t owner) } } else { DHD_ERROR(("%s(): Other owners using bus, decrease the count %d \r\n", - __FUNCTION__, dhd->bus_user_count)); + __func__, dhd->bus_user_count)); } exit: mutex_unlock(&dhd->bus_user_lock); @@ -6138,18 +6138,18 @@ dhd_add_monitor_if(dhd_info_t *dhd) int ret = BCME_OK; if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } if (dhd->monitor_dev) { - DHD_ERROR(("%s: monitor i/f already exists", __FUNCTION__)); + DHD_ERROR(("%s: monitor i/f already exists", __func__)); return; } dev = alloc_etherdev(DHD_MON_DEV_PRIV_SIZE); if (!dev) { - DHD_ERROR(("%s: alloc wlif failed\n", __FUNCTION__)); + DHD_ERROR(("%s: alloc wlif failed\n", __func__)); return; } @@ -6171,7 +6171,7 @@ dhd_add_monitor_if(dhd_info_t *dhd) if (register_netdevice(dev)) { DHD_ERROR(("%s, register_netdev failed for %s\n", - __FUNCTION__, dev->name)); + __func__, dev->name)); free_netdev(dev); return; } @@ -6182,7 +6182,7 @@ dhd_add_monitor_if(dhd_info_t *dhd) ret = dhd_iovar(&dhd->pub, 0, "scansuppress", (char *)&scan_suppress, sizeof(scan_suppress), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: scansuppress set failed, ret=%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: scansuppress set failed, ret=%d\n", __func__, ret)); } } @@ -6196,12 +6196,12 @@ dhd_del_monitor_if(dhd_info_t *dhd) uint32 scan_suppress = FALSE; if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } if (!dhd->monitor_dev) { - DHD_ERROR(("%s: monitor i/f doesn't exist", __FUNCTION__)); + DHD_ERROR(("%s: monitor i/f doesn't exist", __func__)); return; } @@ -6211,7 +6211,7 @@ dhd_del_monitor_if(dhd_info_t *dhd) ret = dhd_iovar(&dhd->pub, 0, "scansuppress", (char *)&scan_suppress, sizeof(scan_suppress), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: scansuppress set failed, ret=%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: scansuppress set failed, ret=%d\n", __func__, ret)); } } @@ -6230,7 +6230,7 @@ dhd_set_monitor(dhd_pub_t *pub, int ifidx, int val) { dhd_info_t *dhd = pub->info; - DHD_TRACE(("%s: val %d\n", __FUNCTION__, val)); + DHD_TRACE(("%s: val %d\n", __func__, val)); dhd_net_if_lock_local(dhd); if (!val) { @@ -6268,12 +6268,12 @@ dhd_deferred_work_rte_log_time_sync(void *handle, void *event_info, u8 event) dhd_pub_t *dhd; if (event != DHD_WQ_WORK_H2D_CONSOLE_TIME_STAMP_MATCH) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); return; } if (!dhd_info) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } @@ -6333,7 +6333,7 @@ int dhd_ioctl_process(dhd_pub_t *pub, int ifidx, dhd_ioctl_t *ioc, void *data_bu } ret = dhd_bus_start(pub); if (ret != 0) { - DHD_ERROR(("%s: failed with code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: failed with code %d\n", __func__, ret)); bcmerror = BCME_DONGLE_DOWN; goto done; } @@ -6407,14 +6407,14 @@ dhd_ioctl_entry(struct net_device *net, struct ifreq *ifr, int cmd) /* Interface up check for built-in type */ if (!dhd_download_fw_on_driverload && dhd->pub.up == FALSE) { - DHD_ERROR(("%s: Interface is down \n", __FUNCTION__)); + DHD_ERROR(("%s: Interface is down \n", __func__)); DHD_PERIM_UNLOCK(&dhd->pub); DHD_OS_WAKE_UNLOCK(&dhd->pub); return OSL_ERROR(BCME_NOTUP); } ifidx = dhd_net2idx(dhd, net); - DHD_TRACE(("%s: ifidx %d, cmd 0x%04x\n", __FUNCTION__, ifidx, cmd)); + DHD_TRACE(("%s: ifidx %d, cmd 0x%04x\n", __func__, ifidx, cmd)); #if defined(WL_STATIC_IF) /* skip for static ndev when it is down */ @@ -6426,7 +6426,7 @@ dhd_ioctl_entry(struct net_device *net, struct ifreq *ifr, int cmd) #endif /* WL_STATIC_iF */ if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s: BAD IF\n", __FUNCTION__)); + DHD_ERROR(("%s: BAD IF\n", __func__)); DHD_PERIM_UNLOCK(&dhd->pub); DHD_OS_WAKE_UNLOCK(&dhd->pub); return -1; @@ -6564,7 +6564,7 @@ dhd_ioctl_entry(struct net_device *net, struct ifreq *ifr, int cmd) /* Skip all the non DHD iovars (wl iovars) after f/w hang */ if (ioc.driver != DHD_IOCTL_MAGIC && dhd->pub.hang_was_sent) { - DHD_TRACE(("%s: HANG was sent up earlier\n", __FUNCTION__)); + DHD_TRACE(("%s: HANG was sent up earlier\n", __func__)); DHD_OS_WAKE_LOCK_CTRL_TIMEOUT_ENABLE(&dhd->pub, DHD_EVENT_TIMEOUT_MS); bcmerror = BCME_DONGLE_DOWN; goto done; @@ -6679,7 +6679,7 @@ dhd_stop(struct net_device *net) dhd_info_t *dhd = DHD_DEV_INFO(net); DHD_OS_WAKE_LOCK(&dhd->pub); DHD_PERIM_LOCK(&dhd->pub); - printf("%s: Enter %s\n", __FUNCTION__, net->name); + printf("%s: Enter %s\n", __func__, net->name); dhd->pub.rxcnt_timeout = 0; dhd->pub.txcnt_timeout = 0; @@ -6703,7 +6703,7 @@ dhd_stop(struct net_device *net) ifidx = dhd_net2idx(dhd, net); BCM_REFERENCE(ifidx); - DHD_ERROR(("%s: ######### dhd_stop called for ifidx=%d #########\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s: ######### dhd_stop called for ifidx=%d #########\n", __func__, ifidx)); #if defined(WL_STATIC_IF) && defined(WL_CFG80211) /* If static if is operational, don't reset the chip */ @@ -6725,7 +6725,7 @@ dhd_stop(struct net_device *net) } #endif /* DHD_NOTIFY_MAC_CHANGED */ - DHD_ERROR(("%s: making dhdpub up FALSE\n", __FUNCTION__)); + DHD_ERROR(("%s: making dhdpub up FALSE\n", __func__)); #ifdef WL_CFG80211 /* Disable Runtime PM before interface down */ @@ -6812,7 +6812,7 @@ dhd_stop(struct net_device *net) #if defined(DHD_LB_RXP) if (ifp && ifp->net == dhd->rx_napi_netdev) { DHD_INFO(("%s napi<%p> disabled ifp->net<%p,%s>\n", - __FUNCTION__, &dhd->rx_napi_struct, net, net->name)); + __func__, &dhd->rx_napi_struct, net, net->name)); skb_queue_purge(&dhd->rx_napi_queue); napi_disable(&dhd->rx_napi_struct); netif_napi_del(&dhd->rx_napi_struct); @@ -6930,7 +6930,7 @@ dhd_stop(struct net_device *net) DHD_OS_WAKE_LOCK_DESTROY(dhd); dhd->dhd_state &= ~DHD_ATTACH_STATE_WAKELOCKS_INIT; } - printf("%s: Exit %s\n", __FUNCTION__, net->name); + printf("%s: Exit %s\n", __func__, net->name); mutex_unlock(&dhd->pub.ndev_op_sync); return 0; @@ -6949,7 +6949,7 @@ static int dhd_interworking_enable(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "interworking", (char *)&enable, sizeof(enable), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: enableing interworking failed, ret=%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: enableing interworking failed, ret=%d\n", __func__, ret)); } return ret; @@ -6986,13 +6986,13 @@ dhd_open(struct net_device *net) if (!dhd_download_fw_on_driverload) { if (!dhd_driver_init_done) { - DHD_ERROR(("%s: WLAN driver is not initialized\n", __FUNCTION__)); + DHD_ERROR(("%s: WLAN driver is not initialized\n", __func__)); mutex_unlock(&dhd->pub.ndev_op_sync); return -1; } } - printf("%s: Enter %s\n", __FUNCTION__, net->name); + printf("%s: Enter %s\n", __func__, net->name); DHD_MUTEX_LOCK(); /* Init wakelock */ if (!dhd_download_fw_on_driverload) { @@ -7046,7 +7046,7 @@ dhd_open(struct net_device *net) */ ret = wl_control_wl_start(net); if (ret != 0) { - DHD_ERROR(("%s: failed with code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: failed with code %d\n", __func__, ret)); ret = -1; goto exit; } @@ -7054,16 +7054,16 @@ dhd_open(struct net_device *net) #endif // endif ifidx = dhd_net2idx(dhd, net); - DHD_TRACE(("%s: ifidx %d\n", __FUNCTION__, ifidx)); + DHD_TRACE(("%s: ifidx %d\n", __func__, ifidx)); if (ifidx < 0) { - DHD_ERROR(("%s: Error: called with invalid IF\n", __FUNCTION__)); + DHD_ERROR(("%s: Error: called with invalid IF\n", __func__)); ret = -1; goto exit; } if (!dhd->iflist[ifidx]) { - DHD_ERROR(("%s: Error: called when IF already deleted\n", __FUNCTION__)); + DHD_ERROR(("%s: Error: called when IF already deleted\n", __func__)); ret = -1; goto exit; } @@ -7104,7 +7104,7 @@ dhd_open(struct net_device *net) #endif /* BT_OVER_SDIO */ if (ret != 0) { DHD_ERROR(("%s : wl_android_wifi_on failed (%d)\n", - __FUNCTION__, ret)); + __func__, ret)); ret = -1; goto exit; } @@ -7135,7 +7135,7 @@ dhd_open(struct net_device *net) dhd_bus_get_ids(dhd->pub.bus, &bus_type, &bus_num, &slot_num); adapter = dhd_wifi_platform_get_adapter(bus_type, bus_num, slot_num); if (adapter) { - printf("%s: set irq affinity hit %d\n", __FUNCTION__, dhd->pub.conf->dpc_cpucore); + printf("%s: set irq affinity hit %d\n", __func__, dhd->pub.conf->dpc_cpucore); irq_set_affinity_hint(adapter->irq_num, cpumask_of(dhd->pub.conf->dpc_cpucore)); } } @@ -7150,13 +7150,13 @@ dhd_open(struct net_device *net) msecs_to_jiffies(DHD_FW_READY_TIMEOUT)); DHD_MUTEX_LOCK(); if ((ret = dbus_up(dhd->pub.bus)) != 0) { - DHD_ERROR(("%s: failed to dbus_up with code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: failed to dbus_up with code %d\n", __func__, ret)); goto exit; } else { dhd->pub.busstate = DHD_BUS_DATA; } if ((ret = dhd_sync_with_dongle(&dhd->pub)) < 0) { - DHD_ERROR(("%s: failed with code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: failed with code %d\n", __func__, ret)); goto exit; } #else @@ -7175,7 +7175,7 @@ dhd_open(struct net_device *net) DHD_PERIM_LOCK(&dhd->pub); if (ret) { - DHD_ERROR(("%s: failed with code %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: failed with code %d\n", __func__, ret)); ret = -1; goto exit; } @@ -7188,7 +7188,7 @@ dhd_open(struct net_device *net) #ifdef BT_OVER_SDIO if (dhd->pub.is_bt_recovery_required) { - DHD_ERROR(("%s: Send Hang Notification 2 to BT\n", __FUNCTION__)); + DHD_ERROR(("%s: Send Hang Notification 2 to BT\n", __func__)); bcmsdh_btsdio_process_dhd_hang_notification(TRUE); } dhd->pub.is_bt_recovery_required = FALSE; @@ -7214,9 +7214,9 @@ dhd_open(struct net_device *net) netif_napi_add(dhd->rx_napi_netdev, &dhd->rx_napi_struct, dhd_napi_poll, dhd_napi_weight); DHD_INFO(("%s napi<%p> enabled ifp->net<%p,%s>\n", - __FUNCTION__, &dhd->rx_napi_struct, net, net->name)); + __func__, &dhd->rx_napi_struct, net, net->name)); napi_enable(&dhd->rx_napi_struct); - DHD_INFO(("%s load balance init rx_napi_struct\n", __FUNCTION__)); + DHD_INFO(("%s load balance init rx_napi_struct\n", __func__)); skb_queue_head_init(&dhd->rx_napi_queue); } /* rx_napi_netdev == NULL */ #endif /* DHD_LB_RXP */ @@ -7228,7 +7228,7 @@ dhd_open(struct net_device *net) #if defined(WL_CFG80211) if (unlikely(wl_cfg80211_up(net))) { - DHD_ERROR(("%s: failed to bring up cfg80211\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to bring up cfg80211\n", __func__)); ret = -1; goto exit; } @@ -7266,14 +7266,14 @@ dhd_open(struct net_device *net) #endif /* WL_CFG80211 */ #if defined(WL_WIRELESS_EXT) if (unlikely(wl_iw_up(net, &dhd->pub))) { - DHD_ERROR(("%s: failed to bring up wext\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to bring up wext\n", __func__)); ret = -1; goto exit; } #endif #ifdef WL_ESCAN if (unlikely(wl_escan_up(net, &dhd->pub))) { - DHD_ERROR(("%s: failed to bring up escan\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to bring up escan\n", __func__)); ret = -1; goto exit; } @@ -7321,7 +7321,7 @@ dhd_open(struct net_device *net) DHD_OS_WAKE_UNLOCK(&dhd->pub); DHD_MUTEX_UNLOCK(); - printf("%s: Exit %s ret=%d\n", __FUNCTION__, net->name, ret); + printf("%s: Exit %s ret=%d\n", __func__, net->name, ret); return ret; } @@ -7396,7 +7396,7 @@ dhd_static_if_open(struct net_device *net) goto done; } - printf("%s: Enter %s\n", __FUNCTION__, net->name); + printf("%s: Enter %s\n", __func__, net->name); /* Ensure fw is initialized. If it is already initialized, * dhd_open will return success. */ @@ -7412,7 +7412,7 @@ dhd_static_if_open(struct net_device *net) netif_start_queue(net); } done: - printf("%s: Exit %s ret=%d\n", __FUNCTION__, net->name, ret); + printf("%s: Exit %s ret=%d\n", __func__, net->name, ret); return ret; } @@ -7424,7 +7424,7 @@ dhd_static_if_stop(struct net_device *net) int ret = BCME_OK; dhd_info_t *dhd = DHD_DEV_INFO(net); - printf("%s: Enter %s\n", __FUNCTION__, net->name); + printf("%s: Enter %s\n", __func__, net->name); cfg = wl_get_cfg(net); if (!IS_CFG80211_STATIC_IF(cfg, net)) { @@ -7457,7 +7457,7 @@ dhd_static_if_stop(struct net_device *net) } else { DHD_ERROR(("Skipped dhd_stop, as sta is operational\n")); } - printf("%s: Exit %s ret=%d\n", __FUNCTION__, net->name, ret); + printf("%s: Exit %s ret=%d\n", __func__, net->name, ret); return ret; } @@ -7602,12 +7602,12 @@ dhd_natoe_ct_event_hanlder(void *handle, void *event_info, u8 event) dhd_nfct_info_t *nfct = dhd->pub.nfct; if (event != DHD_WQ_WORK_NATOE_EVENT) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); return; } if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } if (natoe->natoe_active && natoe->sta_ip && natoe->start_port && natoe->end_port && @@ -7648,7 +7648,7 @@ dhd_natoe_ct_event(dhd_pub_t *dhd, char *data) } return BCME_OK; } - DHD_ERROR(("%s ERROR NFCT is not enabled \n", __FUNCTION__)); + DHD_ERROR(("%s ERROR NFCT is not enabled \n", __func__)); return BCME_ERROR; } @@ -7660,17 +7660,17 @@ dhd_natoe_ct_ioctl_handler(void *handle, void *event_info, uint8 event) dhd_ct_ioc_t *ct_ioc = event_info; if (event != DHD_WQ_WORK_NATOE_IOCTL) { - DHD_ERROR(("%s: unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event \n", __func__)); return; } if (!dhd) { - DHD_ERROR(("%s: dhd info not available \n", __FUNCTION__)); + DHD_ERROR(("%s: dhd info not available \n", __func__)); return; } if (dhd_natoe_prep_send_exception_port_ioctl(&dhd->pub, ct_ioc) < 0) { - DHD_ERROR(("%s: Error in sending NATOE IOCTL \n", __FUNCTION__)); + DHD_ERROR(("%s: Error in sending NATOE IOCTL \n", __func__)); } } @@ -7838,7 +7838,7 @@ dhd_allocate_if(dhd_pub_t *dhdpub, int ifidx, const char *name, if (ifp != NULL) { if (ifp->net != NULL) { DHD_ERROR(("%s: free existing IF %s ifidx:%d \n", - __FUNCTION__, ifp->net->name, ifidx)); + __func__, ifp->net->name, ifidx)); if (ifidx == 0) { /* For primary ifidx (0), there shouldn't be @@ -7868,7 +7868,7 @@ dhd_allocate_if(dhd_pub_t *dhdpub, int ifidx, const char *name, } else { ifp = MALLOC(dhdinfo->pub.osh, sizeof(dhd_if_t)); if (ifp == NULL) { - DHD_ERROR(("%s: OOM - dhd_if_t(%zu)\n", __FUNCTION__, sizeof(dhd_if_t))); + DHD_ERROR(("%s: OOM - dhd_if_t(%zu)\n", __func__, sizeof(dhd_if_t))); return NULL; } } @@ -7889,7 +7889,7 @@ dhd_allocate_if(dhd_pub_t *dhdpub, int ifidx, const char *name, /* Allocate etherdev, including space for private structure */ ifp->net = alloc_etherdev(DHD_DEV_PRIV_SIZE); if (ifp->net == NULL) { - DHD_ERROR(("%s: OOM - alloc_etherdev(%zu)\n", __FUNCTION__, sizeof(dhdinfo))); + DHD_ERROR(("%s: OOM - alloc_etherdev(%zu)\n", __func__, sizeof(dhdinfo))); goto fail; } @@ -8226,29 +8226,29 @@ dhd_init_logstrs_array(osl_t *osh, dhd_event_log_t *temp) filep = filp_open(logstrs_path, O_RDONLY, 0); if (IS_ERR(filep)) { - DHD_ERROR_NO_HW4(("%s: Failed to open the file %s \n", __FUNCTION__, logstrs_path)); + DHD_ERROR_NO_HW4(("%s: Failed to open the file %s \n", __func__, logstrs_path)); goto fail; } error = vfs_stat(logstrs_path, &stat); if (error) { - DHD_ERROR_NO_HW4(("%s: Failed to stat file %s \n", __FUNCTION__, logstrs_path)); + DHD_ERROR_NO_HW4(("%s: Failed to stat file %s \n", __func__, logstrs_path)); goto fail; } logstrs_size = (int) stat.size; if (logstrs_size == 0) { - DHD_ERROR(("%s: return as logstrs_size is 0\n", __FUNCTION__)); + DHD_ERROR(("%s: return as logstrs_size is 0\n", __func__)); goto fail1; } raw_fmts = MALLOC(osh, logstrs_size); if (raw_fmts == NULL) { - DHD_ERROR(("%s: Failed to allocate memory \n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to allocate memory \n", __func__)); goto fail; } if (vfs_read(filep, raw_fmts, logstrs_size, &filep->f_pos) != logstrs_size) { - DHD_ERROR_NO_HW4(("%s: Failed to read file %s\n", __FUNCTION__, logstrs_path)); + DHD_ERROR_NO_HW4(("%s: Failed to read file %s\n", __func__, logstrs_path)); goto fail; } @@ -8289,7 +8289,7 @@ dhd_read_map(osl_t *osh, char *fname, uint32 *ramstart, uint32 *rodata_start, int err = BCME_ERROR; if (fname == NULL) { - DHD_ERROR(("%s: ERROR fname is NULL \n", __FUNCTION__)); + DHD_ERROR(("%s: ERROR fname is NULL \n", __func__)); return BCME_ERROR; } @@ -8300,7 +8300,7 @@ dhd_read_map(osl_t *osh, char *fname, uint32 *ramstart, uint32 *rodata_start, filep = filp_open(fname, O_RDONLY, 0); if (IS_ERR(filep)) { - DHD_ERROR_NO_HW4(("%s: Failed to open %s \n", __FUNCTION__, fname)); + DHD_ERROR_NO_HW4(("%s: Failed to open %s \n", __func__, fname)); goto fail; } @@ -8355,7 +8355,7 @@ dhd_init_static_strs_array(osl_t *osh, dhd_event_log_t *temp, char *str_file, ch filep = filp_open(str_file, O_RDONLY, 0); if (IS_ERR(filep)) { - DHD_ERROR(("%s: Failed to open the file %s \n", __FUNCTION__, str_file)); + DHD_ERROR(("%s: Failed to open the file %s \n", __func__, str_file)); goto fail; } @@ -8366,27 +8366,27 @@ dhd_init_static_strs_array(osl_t *osh, dhd_event_log_t *temp, char *str_file, ch } if (logstrs_size == 0) { - DHD_ERROR(("%s: return as logstrs_size is 0\n", __FUNCTION__)); + DHD_ERROR(("%s: return as logstrs_size is 0\n", __func__)); goto fail1; } raw_fmts = MALLOC(osh, logstrs_size); if (raw_fmts == NULL) { - DHD_ERROR(("%s: Failed to allocate raw_fmts memory \n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to allocate raw_fmts memory \n", __func__)); goto fail; } if (TRUE) { error = generic_file_llseek(filep, logfilebase, SEEK_SET); if (error < 0) { - DHD_ERROR(("%s: %s llseek failed %d \n", __FUNCTION__, str_file, error)); + DHD_ERROR(("%s: %s llseek failed %d \n", __func__, str_file, error)); goto fail; } } error = vfs_read(filep, raw_fmts, logstrs_size, (&filep->f_pos)); if (error != logstrs_size) { - DHD_ERROR(("%s: %s read failed %d \n", __FUNCTION__, str_file, error)); + DHD_ERROR(("%s: %s read failed %d \n", __func__, str_file, error)); goto fail; } @@ -8444,7 +8444,7 @@ dhd_wlan_power_off_handler(void *handler, unsigned char reason) dhd_pub_t *dhdp = (dhd_pub_t *)handler; bool dongle_isolation = dhdp->dongle_isolation; - DHD_ERROR(("%s: WLAN DHD cleanup reason: %d\n", __FUNCTION__, reason)); + DHD_ERROR(("%s: WLAN DHD cleanup reason: %d\n", __func__, reason)); if ((reason == BY_BT_DUE_TO_BT) || (reason == BY_BT_DUE_TO_WLAN)) { #if defined(DHD_FW_COREDUMP) @@ -8475,7 +8475,7 @@ dhd_wlan_power_on_handler(void *handler, unsigned char reason) dhd_pub_t *dhdp = (dhd_pub_t *)handler; bool dongle_isolation = dhdp->dongle_isolation; - DHD_ERROR(("%s: WLAN DHD re-init reason: %d\n", __FUNCTION__, reason)); + DHD_ERROR(("%s: WLAN DHD re-init reason: %d\n", __func__, reason)); /* Devreset function will perform FLR again, to avoid it set dongle_isolation */ dhdp->dongle_isolation = TRUE; dhd_bus_devreset(dhdp, 0); /* DHD structure re-init */ @@ -8515,7 +8515,7 @@ dhd_set_path(dhd_pub_t *pub) /* try to download image and nvram to the dongle */ if (dhd_update_fw_nv_path(dhd) && dhd->pub.bus) { DHD_INFO(("%s: fw %s, nv %s, conf %s\n", - __FUNCTION__, dhd->fw_path, dhd->nv_path, dhd->conf_path)); + __func__, dhd->fw_path, dhd->nv_path, dhd->conf_path)); dhd_bus_update_fw_nv_path(dhd->pub.bus, dhd->fw_path, dhd->nv_path, dhd->clm_path, dhd->conf_path); } @@ -8549,7 +8549,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen #endif dhd_attach_states_t dhd_state = DHD_ATTACH_STATE_INIT; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); #ifdef PCIE_FULL_DONGLE ASSERT(sizeof(dhd_pkttag_fd_t) <= OSL_PKTTAG_SZ); @@ -8567,7 +8567,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen if (dhd == NULL) { dhd = MALLOC(osh, sizeof(dhd_info_t)); if (dhd == NULL) { - DHD_ERROR(("%s: OOM - alloc dhd_info\n", __FUNCTION__)); + DHD_ERROR(("%s: OOM - alloc dhd_info\n", __func__)); goto dhd_null_flag; } } @@ -8800,7 +8800,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen /* attach debug if support */ if (dhd_os_dbg_attach(&dhd->pub)) { - DHD_ERROR(("%s debug module attach failed\n", __FUNCTION__)); + DHD_ERROR(("%s debug module attach failed\n", __func__)); goto fail; } #ifdef DEBUGABILITY @@ -8821,7 +8821,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen dhd->pub.statlog = dhd_attach_statlog(&dhd->pub, MAX_STATLOG_ITEM, MAX_STATLOG_REQ_ITEM, STATLOG_LOGBUF_LEN); if (dhd->pub.statlog == NULL) { - DHD_ERROR(("%s: alloc statlog failed\n", __FUNCTION__)); + DHD_ERROR(("%s: alloc statlog failed\n", __func__)); } #endif /* DHD_STATUS_LOGGING */ @@ -8833,19 +8833,19 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen #endif /* DHD_PKTDUMP_ROAM */ if (dhd_sta_pool_init(&dhd->pub, DHD_MAX_STA) != BCME_OK) { - DHD_ERROR(("%s: Initializing %u sta\n", __FUNCTION__, DHD_MAX_STA)); + DHD_ERROR(("%s: Initializing %u sta\n", __func__, DHD_MAX_STA)); goto fail; } #ifdef DHD_PCIE_NATIVE_RUNTIMEPM dhd->tx_wq = alloc_workqueue("bcmdhd-tx-wq", WQ_HIGHPRI | WQ_UNBOUND | WQ_MEM_RECLAIM, 1); if (!dhd->tx_wq) { - DHD_ERROR(("%s: alloc_workqueue(bcmdhd-tx-wq) failed\n", __FUNCTION__)); + DHD_ERROR(("%s: alloc_workqueue(bcmdhd-tx-wq) failed\n", __func__)); goto fail; } dhd->rx_wq = alloc_workqueue("bcmdhd-rx-wq", WQ_HIGHPRI | WQ_UNBOUND | WQ_MEM_RECLAIM, 1); if (!dhd->rx_wq) { - DHD_ERROR(("%s: alloc_workqueue(bcmdhd-rx-wq) failed\n", __FUNCTION__)); + DHD_ERROR(("%s: alloc_workqueue(bcmdhd-rx-wq) failed\n", __func__)); destroy_workqueue(dhd->tx_wq); dhd->tx_wq = NULL; goto fail; @@ -8977,7 +8977,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen */ dhd->cpu_notifier.notifier_call = NULL; DHD_ERROR(("%s():dhd_cpumasks_init failed CPUs for JOB would be static\n", - __FUNCTION__)); + __func__)); } #ifdef DHD_LB_TXP @@ -9000,13 +9000,13 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen tasklet_init(&dhd->tx_compl_tasklet, dhd_lb_tx_compl_handler, (ulong)(&dhd->pub)); INIT_WORK(&dhd->tx_compl_dispatcher_work, dhd_tx_compl_dispatcher_fn); - DHD_INFO(("%s load balance init tx_compl_tasklet\n", __FUNCTION__)); + DHD_INFO(("%s load balance init tx_compl_tasklet\n", __func__)); #endif /* DHD_LB_TXC */ #if defined(DHD_LB_RXC) tasklet_init(&dhd->rx_compl_tasklet, dhd_lb_rx_compl_handler, (ulong)(&dhd->pub)); INIT_WORK(&dhd->rx_compl_dispatcher_work, dhd_rx_compl_dispatcher_fn); - DHD_INFO(("%s load balance init rx_compl_tasklet\n", __FUNCTION__)); + DHD_INFO(("%s load balance init rx_compl_tasklet\n", __func__)); #endif /* DHD_LB_RXC */ #if defined(DHD_LB_RXP) @@ -9014,7 +9014,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen skb_queue_head_init(&dhd->rx_napi_queue); /* Initialize the work that dispatches NAPI job to a given core */ INIT_WORK(&dhd->rx_napi_dispatcher_work, dhd_rx_napi_dispatcher_fn); - DHD_INFO(("%s load balance init rx_napi_queue\n", __FUNCTION__)); + DHD_INFO(("%s load balance init rx_napi_queue\n", __func__)); #endif /* DHD_LB_RXP */ #if defined(DHD_LB_TXP) @@ -9023,7 +9023,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen /* Initialize the work that dispatches TX job to a given core */ tasklet_init(&dhd->tx_tasklet, dhd_lb_tx_handler, (ulong)(dhd)); - DHD_INFO(("%s load balance init tx_pend_queue\n", __FUNCTION__)); + DHD_INFO(("%s load balance init tx_pend_queue\n", __func__)); #endif /* DHD_LB_TXP */ dhd_state |= DHD_ATTACH_STATE_LB_ATTACH_DONE; @@ -9036,12 +9036,12 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen #if defined(BCMPCIE) dhd->pub.extended_trap_data = MALLOCZ(osh, BCMPCIE_EXT_TRAP_DATA_MAXLEN); if (dhd->pub.extended_trap_data == NULL) { - DHD_ERROR(("%s: Failed to alloc extended_trap_data\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to alloc extended_trap_data\n", __func__)); } #ifdef DNGL_AXI_ERROR_LOGGING dhd->pub.axi_err_dump = MALLOCZ(osh, sizeof(dhd_axi_error_dump_t)); if (dhd->pub.axi_err_dump == NULL) { - DHD_ERROR(("%s: Failed to alloc axi_err_dump\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to alloc axi_err_dump\n", __func__)); } #endif /* DNGL_AXI_ERROR_LOGGING */ #endif /* BCMPCIE && ETD */ @@ -9084,7 +9084,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen (dhd_dump_file_manage_t *)MALLOCZ(dhd->pub.osh, sizeof(dhd_dump_file_manage_t)); if (unlikely(!dhd->pub.dump_file_manage)) { DHD_ERROR(("%s(): could not allocate memory for - " - "dhd_dump_file_manage_t\n", __FUNCTION__)); + "dhd_dump_file_manage_t\n", __func__)); } #endif /* DHD_DUMP_MNGR */ #ifdef DHD_FW_COREDUMP @@ -9118,7 +9118,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen !dhd->pub.pom_func_deregister || !dhd->pub.pom_toggle_reg_on) { DHD_ERROR(("%s, enable_erpom enabled through module parameter but " - "POM is not loaded\n", __FUNCTION__)); + "POM is not loaded\n", __func__)); ASSERT(0); goto fail; } @@ -9132,7 +9132,7 @@ dhd_attach(osl_t *osh, struct dhd_bus *bus, uint bus_hdrlen fail: if (dhd_state >= DHD_ATTACH_STATE_DHD_ALLOC) { DHD_TRACE(("%s: Calling dhd_detach dhd_state 0x%x &dhd->pub %p\n", - __FUNCTION__, dhd_state, &dhd->pub)); + __func__, dhd_state, &dhd->pub)); dhd->dhd_state = dhd_state; dhd_detach(&dhd->pub); dhd_free(&dhd->pub); @@ -9272,14 +9272,14 @@ bool dhd_update_fw_nv_path(dhd_info_t *dhdinfo) strncat(dhdinfo->nv_path, ext_tag, strlen(ext_tag)); nv_len = strlen(dhdinfo->nv_path); DHD_INFO(("%s: new nvram path = %s\n", - __FUNCTION__, dhdinfo->nv_path)); + __func__, dhdinfo->nv_path)); } else if (sp_nvram) { DHD_ERROR(("%s: buffer space for nvram path is not enough\n", - __FUNCTION__)); + __func__)); return FALSE; } else { DHD_ERROR(("%s: Couldn't find the nvram tag. current" - " nvram path = %s\n", __FUNCTION__, dhdinfo->nv_path)); + " nvram path = %s\n", __func__, dhdinfo->nv_path)); } } #endif /* DHD_USE_SINGLE_NVRAM_FILE */ @@ -9407,7 +9407,7 @@ extern bool dhd_update_btfw_path(dhd_info_t *dhdinfo, char* btfw_path) #if defined(BT_OVER_SDIO) wlan_bt_handle_t dhd_bt_get_pub_hndl(void) { - DHD_ERROR(("%s: g_dhd_pub %p\n", __FUNCTION__, g_dhd_pub)); + DHD_ERROR(("%s: g_dhd_pub %p\n", __func__, g_dhd_pub)); /* assuming that dhd_pub_t type pointer is available from a global variable */ return (wlan_bt_handle_t) g_dhd_pub; } EXPORT_SYMBOL(dhd_bt_get_pub_hndl); @@ -9420,11 +9420,11 @@ int dhd_download_btfw(wlan_bt_handle_t handle, char* btfw_path) /* Download BT firmware image to the dongle */ if (dhd->pub.busstate == DHD_BUS_DATA && dhd_update_btfw_path(dhd, btfw_path)) { - DHD_INFO(("%s: download btfw from: %s\n", __FUNCTION__, dhd->btfw_path)); + DHD_INFO(("%s: download btfw from: %s\n", __func__, dhd->btfw_path)); ret = dhd_bus_download_btfw(dhd->pub.bus, dhd->pub.osh, dhd->btfw_path); if (ret < 0) { DHD_ERROR(("%s: failed to download btfw from: %s\n", - __FUNCTION__, dhd->btfw_path)); + __func__, dhd->btfw_path)); return ret; } } @@ -9445,7 +9445,7 @@ dhd_bus_start(dhd_pub_t *dhdp) #endif /* DHD_DEBUG && BCMSDIO */ ASSERT(dhd); - DHD_TRACE(("Enter %s:\n", __FUNCTION__)); + DHD_TRACE(("Enter %s:\n", __func__)); dhdp->dongle_trap_occured = 0; #ifdef DHD_SSSR_DUMP /* Flag to indicate sssr dump is collected */ @@ -9479,7 +9479,7 @@ dhd_bus_start(dhd_pub_t *dhdp) /* Indicate FW Download has not yet done */ dhd->pub.fw_download_status = FW_DOWNLOAD_IN_PROGRESS; DHD_INFO(("%s download fw %s, nv %s, conf %s\n", - __FUNCTION__, dhd->fw_path, dhd->nv_path, dhd->conf_path)); + __func__, dhd->fw_path, dhd->nv_path, dhd->conf_path)); #if defined(DHD_DEBUG) && defined(BCMSDIO) fw_download_start = OSL_SYSUPTIME(); #endif /* DHD_DEBUG && BCMSDIO */ @@ -9490,7 +9490,7 @@ dhd_bus_start(dhd_pub_t *dhdp) #endif /* DHD_DEBUG && BCMSDIO */ if (ret < 0) { DHD_ERROR(("%s: failed to download firmware %s\n", - __FUNCTION__, dhd->fw_path)); + __func__, dhd->fw_path)); DHD_PERIM_UNLOCK(dhdp); return ret; } @@ -9513,7 +9513,7 @@ dhd_bus_start(dhd_pub_t *dhdp) /* Bring up the bus */ if ((ret = dhd_bus_init(&dhd->pub, FALSE)) != 0) { - DHD_ERROR(("%s, dhd_bus_init failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s, dhd_bus_init failed %d\n", __func__, ret)); #ifdef BCMSDIO dhd_os_sdunlock(dhdp); #endif /* BCMSDIO */ @@ -9539,7 +9539,7 @@ dhd_bus_start(dhd_pub_t *dhdp) #endif /* !BCMPCIE_OOB_HOST_WAKE */ DHD_DISABLE_RUNTIME_PM(&dhd->pub); DHD_PERIM_UNLOCK(dhdp); - DHD_ERROR(("%s Host failed to register for OOB\n", __FUNCTION__)); + DHD_ERROR(("%s Host failed to register for OOB\n", __func__)); DHD_OS_WD_WAKE_UNLOCK(&dhd->pub); return -ENODEV; } @@ -9559,7 +9559,7 @@ dhd_bus_start(dhd_pub_t *dhdp) /* max_h2d_rings includes H2D common rings */ uint32 max_h2d_rings = dhd_bus_max_h2d_queues(dhd->pub.bus); - DHD_ERROR(("%s: Initializing %u h2drings\n", __FUNCTION__, + DHD_ERROR(("%s: Initializing %u h2drings\n", __func__, max_h2d_rings)); if ((ret = dhd_flow_rings_init(&dhd->pub, max_h2d_rings)) != BCME_OK) { #ifdef BCMSDIO @@ -9585,7 +9585,7 @@ dhd_bus_start(dhd_pub_t *dhdp) dhd->wd_timer_valid = FALSE; DHD_GENERAL_UNLOCK(&dhd->pub, flags); del_timer_sync(&dhd->timer); - DHD_ERROR(("%s failed bus is not ready\n", __FUNCTION__)); + DHD_ERROR(("%s failed bus is not ready\n", __func__)); DHD_DISABLE_RUNTIME_PM(&dhd->pub); #ifdef BCMSDIO dhd_os_sdunlock(dhdp); @@ -9608,7 +9608,7 @@ dhd_bus_start(dhd_pub_t *dhdp) dhd->wd_timer_valid = FALSE; DHD_GENERAL_UNLOCK(&dhd->pub, flags); del_timer_sync(&dhd->timer); - DHD_ERROR(("%s failed to sync with dongle\n", __FUNCTION__)); + DHD_ERROR(("%s failed to sync with dongle\n", __func__)); DHD_OS_WD_WAKE_UNLOCK(&dhd->pub); DHD_PERIM_UNLOCK(dhdp); return ret; @@ -9616,7 +9616,7 @@ dhd_bus_start(dhd_pub_t *dhdp) #if defined(CONFIG_SOC_EXYNOS8895) || defined(CONFIG_SOC_EXYNOS9810) || \ defined(CONFIG_SOC_EXYNOS9820) - DHD_ERROR(("%s: Enable L1ss EP side\n", __FUNCTION__)); + DHD_ERROR(("%s: Enable L1ss EP side\n", __func__)); exynos_pcie_l1ss_ctrl(1, PCIE_L1SS_CTRL_WIFI); #endif /* CONFIG_SOC_EXYNOS8895 || CONFIG_SOC_EXYNOS9810 || CONFIG_SOC_EXYNOS9820 */ @@ -9661,7 +9661,7 @@ int _dhd_tdls_enable(dhd_pub_t *dhd, bool tdls_on, bool auto_on, struct ether_ad goto auto_mode; ret = dhd_iovar(dhd, 0, "tdls_enable", (char *)&tdls, sizeof(tdls), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: tdls %d failed %d\n", __FUNCTION__, tdls, ret)); + DHD_ERROR(("%s: tdls %d failed %d\n", __func__, tdls, ret)); goto exit; } dhd->tdls_enable = tdls_on; @@ -9671,7 +9671,7 @@ int _dhd_tdls_enable(dhd_pub_t *dhd, bool tdls_on, bool auto_on, struct ether_ad ret = dhd_iovar(dhd, 0, "tdls_auto_op", (char *)&tdls_auto_op, sizeof(tdls_auto_op), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: tdls_auto_op failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: tdls_auto_op failed %d\n", __func__, ret)); goto exit; } @@ -9679,31 +9679,31 @@ int _dhd_tdls_enable(dhd_pub_t *dhd, bool tdls_on, bool auto_on, struct ether_ad ret = dhd_iovar(dhd, 0, "tdls_idle_time", (char *)&tdls_idle_time, sizeof(tdls_idle_time), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: tdls_idle_time failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: tdls_idle_time failed %d\n", __func__, ret)); goto exit; } ret = dhd_iovar(dhd, 0, "tdls_rssi_high", (char *)&tdls_rssi_high, sizeof(tdls_rssi_high), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: tdls_rssi_high failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: tdls_rssi_high failed %d\n", __func__, ret)); goto exit; } ret = dhd_iovar(dhd, 0, "tdls_rssi_low", (char *)&tdls_rssi_low, sizeof(tdls_rssi_low), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: tdls_rssi_low failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: tdls_rssi_low failed %d\n", __func__, ret)); goto exit; } ret = dhd_iovar(dhd, 0, "tdls_trigger_pktcnt_high", (char *)&tdls_pktcnt_high, sizeof(tdls_pktcnt_high), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: tdls_trigger_pktcnt_high failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: tdls_trigger_pktcnt_high failed %d\n", __func__, ret)); goto exit; } ret = dhd_iovar(dhd, 0, "tdls_trigger_pktcnt_low", (char *)&tdls_pktcnt_low, sizeof(tdls_pktcnt_low), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: tdls_trigger_pktcnt_low failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: tdls_trigger_pktcnt_low failed %d\n", __func__, ret)); goto exit; } } @@ -9747,7 +9747,7 @@ dhd_tdls_set_mode(dhd_pub_t *dhd, bool wfd_mode) ret = dhd_iovar(dhd, 0, "tdls_wfd_mode", (char *)&mode, sizeof(mode), NULL, 0, TRUE); if ((ret < 0) && (ret != BCME_UNSUPPORTED)) { - DHD_ERROR(("%s: tdls_wfd_mode faile_wfd_mode %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: tdls_wfd_mode faile_wfd_mode %d\n", __func__, ret)); return ret; } @@ -9782,7 +9782,7 @@ int dhd_tdls_update_peer_info(dhd_pub_t *dhdp, wl_event_msg_t *event) connect = FALSE; else { - DHD_ERROR(("%s: TDLS Event reason is unknown\n", __FUNCTION__)); + DHD_ERROR(("%s: TDLS Event reason is unknown\n", __func__)); return BCME_ERROR; } if (ifindex == DHD_BAD_IF) @@ -9792,7 +9792,7 @@ int dhd_tdls_update_peer_info(dhd_pub_t *dhdp, wl_event_msg_t *event) while (cur != NULL) { if (!memcmp(da, cur->addr, ETHER_ADDR_LEN)) { DHD_ERROR(("%s: TDLS Peer exist already %d\n", - __FUNCTION__, __LINE__)); + __func__, __LINE__)); return BCME_ERROR; } cur = cur->next; @@ -9800,7 +9800,7 @@ int dhd_tdls_update_peer_info(dhd_pub_t *dhdp, wl_event_msg_t *event) new = MALLOC(dhd_pub->osh, sizeof(tdls_peer_node_t)); if (new == NULL) { - DHD_ERROR(("%s: Failed to allocate memory\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to allocate memory\n", __func__)); return BCME_ERROR; } memcpy(new->addr, da, ETHER_ADDR_LEN); @@ -9827,7 +9827,7 @@ int dhd_tdls_update_peer_info(dhd_pub_t *dhdp, wl_event_msg_t *event) prev = cur; cur = cur->next; } - DHD_ERROR(("%s: TDLS Peer Entry Not found\n", __FUNCTION__)); + DHD_ERROR(("%s: TDLS Peer Entry Not found\n", __func__)); } return BCME_OK; } @@ -9876,7 +9876,7 @@ dhd_get_concurrent_capabilites(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "p2p", NULL, 0, (char *)&buf, sizeof(buf), FALSE); if (ret < 0) { - DHD_ERROR(("%s: Get P2P failed (error=%d)\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: Get P2P failed (error=%d)\n", __func__, ret)); return 0; } else { if (buf[0] == 1) { @@ -9921,7 +9921,7 @@ dhd_enable_adps(dhd_pub_t *dhd, uint8 on) len = OFFSETOF(bcm_iov_buf_t, data) + sizeof(*data); iov_buf = MALLOC(dhd->osh, len); if (iov_buf == NULL) { - DHD_ERROR(("%s - failed to allocate %d bytes for iov_buf\n", __FUNCTION__, len)); + DHD_ERROR(("%s - failed to allocate %d bytes for iov_buf\n", __func__, len)); ret = BCME_NOMEM; goto exit; } @@ -9940,13 +9940,13 @@ dhd_enable_adps(dhd_pub_t *dhd, uint8 on) ret = dhd_iovar(dhd, 0, "adps", (char *)iov_buf, len, NULL, 0, TRUE); if (ret < 0) { if (ret == BCME_UNSUPPORTED) { - DHD_ERROR(("%s adps is not supported\n", __FUNCTION__)); + DHD_ERROR(("%s adps is not supported\n", __func__)); ret = BCME_OK; goto exit; } else { DHD_ERROR(("%s fail to set adps %s for band %d (%d)\n", - __FUNCTION__, on ? "On" : "Off", i, ret)); + __func__, on ? "On" : "Off", i, ret)); goto exit; } } @@ -10150,7 +10150,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) dhd->target_uid = 0; dhd->target_tid = 0; #endif /* SUPPORT_SET_TID */ - DHD_TRACE(("Enter %s\n", __FUNCTION__)); + DHD_TRACE(("Enter %s\n", __func__)); #ifdef DHDTCPACK_SUPPRESS dhd_tcpack_suppress_set(dhd, dhd->conf->tcpack_sup_mode); @@ -10167,7 +10167,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ptr = buf; ret = dhd_iovar(dhd, 0, "ver", NULL, 0, (char *)&buf, sizeof(buf), FALSE); if (ret < 0) - DHD_ERROR(("%s failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s failed %d\n", __func__, ret)); else { bcmstrtok(&ptr, "\n", 0); /* Print fw version info */ @@ -10178,7 +10178,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) /* Set op_mode as MFG_MODE if WLTEST is present in "wl ver" */ if (strstr(fw_version, "WLTEST") != NULL) { DHD_ERROR(("%s: wl ver has WLTEST, setting op_mode as DHD_FLAG_MFG_MODE\n", - __FUNCTION__)); + __func__)); op_mode = DHD_FLAG_MFG_MODE; } @@ -10192,24 +10192,24 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) /* Check and adjust IOCTL response timeout for Manufactring firmware */ dhd_os_set_ioctl_resp_timeout(MFG_IOCTL_RESP_TIMEOUT); DHD_ERROR(("%s : Set IOCTL response time for Manufactring Firmware\n", - __FUNCTION__)); + __func__)); } else { dhd_os_set_ioctl_resp_timeout(IOCTL_RESP_TIMEOUT); - DHD_INFO(("%s : Set IOCTL response time.\n", __FUNCTION__)); + DHD_INFO(("%s : Set IOCTL response time.\n", __func__)); } #ifdef BCMPCIE_OOB_HOST_WAKE ret = dhd_iovar(dhd, 0, "bus:hostwake_oob", NULL, 0, (char *)&hostwake_oob, sizeof(hostwake_oob), FALSE); if (ret < 0) { - DHD_ERROR(("%s: hostwake_oob IOVAR not present, proceed\n", __FUNCTION__)); + DHD_ERROR(("%s: hostwake_oob IOVAR not present, proceed\n", __func__)); } else { if (hostwake_oob == 0) { DHD_ERROR(("%s: hostwake_oob is not enabled in the NVRAM, STOP\n", - __FUNCTION__)); + __func__)); ret = BCME_UNSUPPORTED; goto done; } else { - DHD_ERROR(("%s: hostwake_oob enabled\n", __FUNCTION__)); + DHD_ERROR(("%s: hostwake_oob enabled\n", __func__)); } } #endif /* BCMPCIE_OOB_HOST_WAKE */ @@ -10218,10 +10218,10 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "axierror_logbuf_addr", NULL, 0, (char *)&dhd->axierror_logbuf_addr, sizeof(dhd->axierror_logbuf_addr), FALSE); if (ret < 0) { - DHD_ERROR(("%s: axierror_logbuf_addr IOVAR not present, proceed\n", __FUNCTION__)); + DHD_ERROR(("%s: axierror_logbuf_addr IOVAR not present, proceed\n", __func__)); dhd->axierror_logbuf_addr = 0; } else { - DHD_ERROR(("%s: axierror_logbuf_addr : 0x%x\n", __FUNCTION__, + DHD_ERROR(("%s: axierror_logbuf_addr : 0x%x\n", __func__, dhd->axierror_logbuf_addr)); } #endif /* DNGL_AXI_ERROR_LOGGING */ @@ -10230,9 +10230,9 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "event_log_rate_hc", (char *)&event_log_rate_hc, sizeof(event_log_rate_hc), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s event_log_rate_hc set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s event_log_rate_hc set failed %d\n", __func__, ret)); } else { - DHD_ERROR(("%s event_log_rate_hc set with threshold:%d\n", __FUNCTION__, + DHD_ERROR(("%s event_log_rate_hc set with threshold:%d\n", __func__, event_log_rate_hc)); } #endif /* EVENT_LOG_RATE_HC */ @@ -10259,14 +10259,14 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_wl_ioctl_cmd(dhd, WLC_SET_VAR, buf, sizeof(buf), TRUE, 0); if (ret) { DHD_ERROR(("%s: can't set MAC address MAC="MACDBG", error=%d\n", - __FUNCTION__, MAC2STRDBG(hw_ether), ret)); + __func__, MAC2STRDBG(hw_ether), ret)); prhex("MACPAD", &hw_ether[ETHER_ADDR_LEN], sizeof(hw_ether)-ETHER_ADDR_LEN); ret = BCME_NOTUP; goto done; } } } else { - DHD_ERROR(("%s: can't get custom MAC address, ret=%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: can't get custom MAC address, ret=%d\n", __func__, ret)); ret = BCME_NOTUP; goto done; } @@ -10276,7 +10276,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) bcm_mkiovar("cur_etheraddr", 0, 0, buf, sizeof(buf)); if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_GET_VAR, buf, sizeof(buf), FALSE, 0)) < 0) { - DHD_ERROR(("%s: can't get MAC address , error=%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: can't get MAC address , error=%d\n", __func__, ret)); ret = BCME_NOTUP; goto done; } @@ -10284,7 +10284,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) memcpy(dhd->mac.octet, buf, ETHER_ADDR_LEN); if ((ret = dhd_apply_default_clm(dhd, dhd->clm_path)) < 0) { - DHD_ERROR(("%s: CLM set failed. Abort initialization.\n", __FUNCTION__)); + DHD_ERROR(("%s: CLM set failed. Abort initialization.\n", __func__)); goto done; } @@ -10296,7 +10296,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) FALSE); if (ret < 0) { DHD_ERROR(("%s: Get Capability failed (error=%d)\n", - __FUNCTION__, ret)); + __func__, ret)); return 0; } @@ -10334,7 +10334,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "cur_etheraddr", (char *)&iovbuf, ETHER_ADDR_LEN, NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s: can't set MAC address , error=%d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: can't set MAC address , error=%d\n", __func__, ret)); } else memcpy(dhd->mac.octet, iovbuf, ETHER_ADDR_LEN); #endif /* SET_RANDOM_MAC_SOFTAP */ @@ -10346,7 +10346,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) TRUE); if (ret < 0) { DHD_ERROR(("%s: set wme_apsd 0 fail (error=%d)\n", - __FUNCTION__, ret)); + __func__, ret)); } #endif /* SOFTAP_UAPSD_OFF */ #if defined(CUSTOM_COUNTRY_CODE) @@ -10373,7 +10373,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s Disable rsdb_mode is failed ret= %d\n", - __FUNCTION__, ret)); + __func__, ret)); } } #endif /* !CUSTOM_SET_ANTNPM */ @@ -10407,12 +10407,12 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "apsta", (char *)&apsta, sizeof(apsta), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s APSTA for P2P failed ret= %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s APSTA for P2P failed ret= %d\n", __func__, ret)); #if defined(SOFTAP_AND_GC) if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_SET_AP, (char *)&ap_mode, sizeof(ap_mode), TRUE, 0)) < 0) { - DHD_ERROR(("%s WLC_SET_AP failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s WLC_SET_AP failed %d\n", __func__, ret)); } #endif // endif memcpy(&p2p_ea, &dhd->mac, ETHER_ADDR_LEN); @@ -10420,7 +10420,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "p2p_da_override", (char *)&p2p_ea, sizeof(p2p_ea), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s p2p_da_override ret= %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s p2p_da_override ret= %d\n", __func__, ret)); else DHD_INFO(("dhd_preinit_ioctls: p2p_da_override succeeded\n")); } @@ -10435,7 +10435,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) sizeof(scan_features), iovbuf, sizeof(iovbuf), FALSE); if (ret < 0) { DHD_ERROR(("%s get scan_features is failed ret=%d\n", - __FUNCTION__, ret)); + __func__, ret)); } else { memcpy(&scan_features, iovbuf, 4); scan_features &= ~RSDB_SCAN_DOWNGRADED_CH_PRUNE_ROAM; @@ -10443,7 +10443,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) sizeof(scan_features), NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s set scan_features is failed ret=%d\n", - __FUNCTION__, ret)); + __func__, ret)); } } } @@ -10476,19 +10476,19 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "country", (char *)&dhd->dhd_cspec, sizeof(wl_country_t), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s: country code setting failed\n", __FUNCTION__)); + DHD_ERROR(("%s: country code setting failed\n", __func__)); } /* Set Listen Interval */ ret = dhd_iovar(dhd, 0, "assoc_listen", (char *)&listen_interval, sizeof(listen_interval), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s assoc_listen failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s assoc_listen failed %d\n", __func__, ret)); #if defined(ROAM_ENABLE) || defined(DISABLE_BUILTIN_ROAM) #ifdef USE_WFA_CERT_CONF if (sec_get_param_wfa_cert(dhd, SET_PARAM_ROAMOFF, &roamvar) == BCME_OK) { - DHD_ERROR(("%s: read roam_off param =%d\n", __FUNCTION__, roamvar)); + DHD_ERROR(("%s: read roam_off param =%d\n", __func__, roamvar)); } #endif /* USE_WFA_CERT_CONF */ /* Disable built-in roaming to allowed ext supplicant to take care of roaming */ @@ -10501,17 +10501,17 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) #endif /* DISABLE_BCNLOSS_ROAM */ if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_SET_ROAM_TRIGGER, roam_trigger, sizeof(roam_trigger), TRUE, 0)) < 0) - DHD_ERROR(("%s: roam trigger set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: roam trigger set failed %d\n", __func__, ret)); if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_SET_ROAM_SCAN_PERIOD, roam_scan_period, sizeof(roam_scan_period), TRUE, 0)) < 0) - DHD_ERROR(("%s: roam scan period set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: roam scan period set failed %d\n", __func__, ret)); if ((dhd_wl_ioctl_cmd(dhd, WLC_SET_ROAM_DELTA, roam_delta, sizeof(roam_delta), TRUE, 0)) < 0) - DHD_ERROR(("%s: roam delta set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: roam delta set failed %d\n", __func__, ret)); ret = dhd_iovar(dhd, 0, "fullroamperiod", (char *)&roam_fullscan_period, sizeof(roam_fullscan_period), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s: roam fullscan period set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: roam fullscan period set failed %d\n", __func__, ret)); #ifdef ROAM_AP_ENV_DETECTION if (roam_trigger[0] == WL_AUTO_ROAM_TRIGGER) { if (dhd_iovar(dhd, 0, "roam_env_detection", (char *)&roam_env_mode, @@ -10527,7 +10527,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "const_awake_thresh", (char *)&pm_awake_thresh, sizeof(pm_awake_thresh), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s set const_awake_thresh failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s set const_awake_thresh failed %d\n", __func__, ret)); } #endif /* CUSTOM_EVENT_PM_WAKE */ #ifdef OKC_SUPPORT @@ -10546,16 +10546,16 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) /* Set lpc 1 */ ret = dhd_iovar(dhd, 0, "lpc", (char *)&lpc, sizeof(lpc), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Set lpc failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Set lpc failed %d\n", __func__, ret)); if (ret == BCME_NOTDOWN) { uint wl_down = 1; ret = dhd_wl_ioctl_cmd(dhd, WLC_DOWN, (char *)&wl_down, sizeof(wl_down), TRUE, 0); - DHD_ERROR(("%s lpc fail WL_DOWN : %d, lpc = %d\n", __FUNCTION__, ret, lpc)); + DHD_ERROR(("%s lpc fail WL_DOWN : %d, lpc = %d\n", __func__, ret, lpc)); ret = dhd_iovar(dhd, 0, "lpc", (char *)&lpc, sizeof(lpc), NULL, 0, TRUE); - DHD_ERROR(("%s Set lpc ret --> %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Set lpc ret --> %d\n", __func__, ret)); } } #endif /* DHD_ENABLE_LPC */ @@ -10564,7 +10564,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) if (dhd->op_mode & DHD_FLAG_STA_MODE) { if ((ret = dhd_enable_adps(dhd, ADPS_ENABLE)) != BCME_OK) { DHD_ERROR(("%s dhd_enable_adps failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); } } #endif /* WLADPS */ @@ -10588,11 +10588,11 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) #ifdef USE_WFA_CERT_CONF if (sec_get_param_wfa_cert(dhd, SET_PARAM_BUS_TXGLOM_MODE, &glom) == BCME_OK) { - DHD_ERROR(("%s, read txglom param =%d\n", __FUNCTION__, glom)); + DHD_ERROR(("%s, read txglom param =%d\n", __func__, glom)); } #endif /* USE_WFA_CERT_CONF */ if (glom != DEFAULT_GLOM_VALUE) { - DHD_INFO(("%s set glom=0x%X\n", __FUNCTION__, glom)); + DHD_INFO(("%s set glom=0x%X\n", __func__, glom)); ret = dhd_iovar(dhd, 0, "bus:txglom", (char *)&glom, sizeof(glom), NULL, 0, TRUE); } #endif /* defined(BCMSDIO) */ @@ -10632,7 +10632,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) (DHD_FLAG_HOSTAP_MODE | DHD_FLAG_MFG_MODE))) { if ((res = dhd_keep_alive_onoff(dhd)) < 0) DHD_ERROR(("%s set keeplive failed %d\n", - __FUNCTION__, res)); + __func__, res)); } } #endif /* defined(KEEP_ALIVE) */ @@ -10640,14 +10640,14 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) #ifdef USE_WL_TXBF ret = dhd_iovar(dhd, 0, "txbf", (char *)&txbf, sizeof(txbf), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s Set txbf failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Set txbf failed %d\n", __func__, ret)); #endif /* USE_WL_TXBF */ ret = dhd_iovar(dhd, 0, "scancache", (char *)&scancache_enab, sizeof(scancache_enab), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Set scancache failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Set scancache failed %d\n", __func__, ret)); } ret = dhd_iovar(dhd, 0, "event_log_max_sets", NULL, 0, (char *)&event_log_max_sets, @@ -10663,20 +10663,20 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) OSL_SMP_WMB(); dhd->event_log_max_sets_queried = TRUE; DHD_ERROR(("%s: event_log_max_sets: %d ret: %d\n", - __FUNCTION__, dhd->event_log_max_sets, ret)); + __func__, dhd->event_log_max_sets, ret)); #ifdef DISABLE_TXBFR ret = dhd_iovar(dhd, 0, "txbf_bfr_cap", (char *)&txbf_bfr_cap, sizeof(txbf_bfr_cap), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Clear txbf_bfr_cap failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Clear txbf_bfr_cap failed %d\n", __func__, ret)); } #endif /* DISABLE_TXBFR */ #ifdef USE_WFA_CERT_CONF #ifdef USE_WL_FRAMEBURST if (sec_get_param_wfa_cert(dhd, SET_PARAM_FRAMEBURST, &frameburst) == BCME_OK) { - DHD_ERROR(("%s, read frameburst param=%d\n", __FUNCTION__, frameburst)); + DHD_ERROR(("%s, read frameburst param=%d\n", __func__, frameburst)); } #endif /* USE_WL_FRAMEBURST */ g_frameburst = frameburst; @@ -10690,20 +10690,20 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) /* Set frameburst to value */ if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_SET_FAKEFRAG, (char *)&frameburst, sizeof(frameburst), TRUE, 0)) < 0) { - DHD_INFO(("%s frameburst not supported %d\n", __FUNCTION__, ret)); + DHD_INFO(("%s frameburst not supported %d\n", __func__, ret)); } #ifdef DHD_SET_FW_HIGHSPEED /* Set ack_ratio */ ret = dhd_iovar(dhd, 0, "ack_ratio", (char *)&ack_ratio, sizeof(ack_ratio), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Set ack_ratio failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Set ack_ratio failed %d\n", __func__, ret)); } /* Set ack_ratio_depth */ ret = dhd_iovar(dhd, 0, "ack_ratio_depth", (char *)&ack_ratio_depth, sizeof(ack_ratio_depth), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Set ack_ratio_depth failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Set ack_ratio_depth failed %d\n", __func__, ret)); } #endif /* DHD_SET_FW_HIGHSPEED */ @@ -10724,7 +10724,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) sizeof(ampdu_ba_wsize), NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s Set ampdu_ba_wsize to %d failed %d\n", - __FUNCTION__, ampdu_ba_wsize, ret)); + __func__, ampdu_ba_wsize, ret)); } } #endif // endif @@ -10736,7 +10736,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s Set ampdu_mpdu to %d failed %d\n", - __FUNCTION__, CUSTOM_AMPDU_MPDU, ret)); + __func__, CUSTOM_AMPDU_MPDU, ret)); } } #endif /* CUSTOM_AMPDU_MPDU */ @@ -10748,7 +10748,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) sizeof(ampdu_release), NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s Set ampdu_release to %d failed %d\n", - __FUNCTION__, CUSTOM_AMPDU_RELEASE, ret)); + __func__, CUSTOM_AMPDU_RELEASE, ret)); } } #endif /* CUSTOM_AMPDU_RELEASE */ @@ -10760,7 +10760,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s Set amsdu_aggsf to %d failed %d\n", - __FUNCTION__, CUSTOM_AMSDU_AGGSF, ret)); + __func__, CUSTOM_AMSDU_AGGSF, ret)); } } #endif /* CUSTOM_AMSDU_AGGSF */ @@ -10782,7 +10782,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "vht_features", (char *)&vht_features, sizeof(vht_features), NULL, 0, FALSE); if (ret < 0) { - DHD_ERROR(("%s vht_features get failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s vht_features get failed %d\n", __func__, ret)); vht_features = 0; } else { #ifdef SUPPORT_2G_VHT @@ -10796,7 +10796,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "vht_features", (char *)&vht_features, sizeof(vht_features), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s vht_features set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s vht_features set failed %d\n", __func__, ret)); if (ret == BCME_NOTDOWN) { uint wl_down = 1; @@ -10804,12 +10804,12 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) (char *)&wl_down, sizeof(wl_down), TRUE, 0); DHD_ERROR(("%s vht_features fail WL_DOWN : %d," " vht_features = 0x%x\n", - __FUNCTION__, ret, vht_features)); + __func__, ret, vht_features)); ret = dhd_iovar(dhd, 0, "vht_features", (char *)&vht_features, sizeof(vht_features), NULL, 0, TRUE); - DHD_ERROR(("%s vht_features set. ret --> %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s vht_features set. ret --> %d\n", __func__, ret)); } } } @@ -10818,7 +10818,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "ht_features", (char *)&ht_features, sizeof(ht_features), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s ht_features set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s ht_features set failed %d\n", __func__, ret)); } #endif /* DISABLE_11N_PROPRIETARY_RATES */ #if defined(DISABLE_HE_ENAB) || defined(CUSTOM_CONTROL_HE_ENAB) @@ -10834,19 +10834,19 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) sizeof(pspretend_thr), NULL, 0, TRUE); if (ret < 0) { DHD_ERROR(("%s pspretend_threshold for HostAPD failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); } #endif // endif ret = dhd_iovar(dhd, 0, "buf_key_b4_m4", (char *)&buf_key_b4_m4, sizeof(buf_key_b4_m4), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s buf_key_b4_m4 set failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s buf_key_b4_m4 set failed %d\n", __func__, ret)); } #ifdef SUPPORT_SET_CAC ret = dhd_iovar(dhd, 0, "cac", (char *)&cac, sizeof(cac), NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Failed to set cac to %d, %d\n", __FUNCTION__, cac, ret)); + DHD_ERROR(("%s Failed to set cac to %d, %d\n", __func__, cac, ret)); } #endif /* SUPPORT_SET_CAC */ #ifdef DHD_ULP @@ -10858,7 +10858,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "event_msgs", eventmask, WL_EVENTING_MASK_LEN, iovbuf, sizeof(iovbuf), FALSE); if (ret < 0) { - DHD_ERROR(("%s read Event mask failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s read Event mask failed %d\n", __func__, ret)); goto done; } bcopy(iovbuf, eventmask, WL_EVENTING_MASK_LEN); @@ -10966,7 +10966,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) /* Write updated Event mask */ ret = dhd_iovar(dhd, 0, "event_msgs", eventmask, WL_EVENTING_MASK_LEN, NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s Set Event mask failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s Set Event mask failed %d\n", __func__, ret)); goto done; } @@ -11037,15 +11037,15 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "event_msgs_ext", (char *)eventmask_msg, msglen, NULL, 0, TRUE); if (ret < 0) { - DHD_ERROR(("%s write event mask ext failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s write event mask ext failed %d\n", __func__, ret)); goto done; } } else if (ret2 == BCME_UNSUPPORTED || ret2 == BCME_VERSION) { /* Skip for BCME_UNSUPPORTED or BCME_VERSION */ DHD_ERROR(("%s event_msgs_ext not support or version mismatch %d\n", - __FUNCTION__, ret2)); + __func__, ret2)); } else { - DHD_ERROR(("%s read event mask ext failed %d\n", __FUNCTION__, ret2)); + DHD_ERROR(("%s read event mask ext failed %d\n", __func__, ret2)); ret = ret2; goto done; } @@ -11158,7 +11158,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) #ifdef DISABLE_11N ret = dhd_iovar(dhd, 0, "nmode", (char *)&nmode, sizeof(nmode), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s wl nmode 0 failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s wl nmode 0 failed %d\n", __func__, ret)); #endif /* DISABLE_11N */ #ifdef ENABLE_BCN_LI_BCN_WAKEUP @@ -11178,7 +11178,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) memset(buf, 0, sizeof(buf)); ret = dhd_iovar(dhd, 0, "clmver", NULL, 0, buf, sizeof(buf), FALSE); if (ret < 0) - DHD_ERROR(("%s clmver failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s clmver failed %d\n", __func__, ret)); else { char *ver_temp_buf = NULL, *ver_date_buf = NULL; int len; @@ -11221,7 +11221,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret2 = dhd_iovar(dhd, 0, "wlc_ver", NULL, 0, (char *)&wlc_ver, sizeof(wl_wlc_version_t), FALSE); if (ret2 < 0) { - DHD_ERROR(("%s wlc_ver failed %d\n", __FUNCTION__, ret2)); + DHD_ERROR(("%s wlc_ver failed %d\n", __func__, ret2)); if (ret2 != BCME_UNSUPPORTED) ret = ret2; } else { @@ -11261,7 +11261,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) #if defined(PROP_TXSTATUS) #ifdef USE_WFA_CERT_CONF if (sec_get_param_wfa_cert(dhd, SET_PARAM_PROPTX, &proptx) == BCME_OK) { - DHD_ERROR(("%s , read proptx param=%d\n", __FUNCTION__, proptx)); + DHD_ERROR(("%s , read proptx param=%d\n", __func__, proptx)); wlfc_enable = proptx; } #endif /* USE_WFA_CERT_CONF */ @@ -11272,7 +11272,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret2 = dhd_iovar(dhd, 0, "ampdu_hostreorder", (char *)&hostreorder, sizeof(hostreorder), NULL, 0, TRUE); if (ret2 < 0) { - DHD_ERROR(("%s wl ampdu_hostreorder failed %d\n", __FUNCTION__, ret2)); + DHD_ERROR(("%s wl ampdu_hostreorder failed %d\n", __func__, ret2)); if (ret2 != BCME_UNSUPPORTED) ret = ret2; @@ -11281,11 +11281,11 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret2 = dhd_wl_ioctl_cmd(dhd, WLC_DOWN, (char *)&wl_down, sizeof(wl_down), TRUE, 0); DHD_ERROR(("%s ampdu_hostreorder fail WL_DOWN : %d, hostreorder :%d\n", - __FUNCTION__, ret2, hostreorder)); + __func__, ret2, hostreorder)); ret2 = dhd_iovar(dhd, 0, "ampdu_hostreorder", (char *)&hostreorder, sizeof(hostreorder), NULL, 0, TRUE); - DHD_ERROR(("%s wl ampdu_hostreorder. ret --> %d\n", __FUNCTION__, ret2)); + DHD_ERROR(("%s wl ampdu_hostreorder. ret --> %d\n", __func__, ret2)); if (ret2 != BCME_UNSUPPORTED) ret = ret2; } @@ -11305,7 +11305,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) #endif /* DISABLE_11N */ #else /* terence 20161229: disable ampdu_hostreorder if PROP_TXSTATUS not defined */ - printf("%s: not define PROP_TXSTATUS\n", __FUNCTION__); + printf("%s: not define PROP_TXSTATUS\n", __func__); dhd_conf_set_intiovar(dhd, WLC_SET_VAR, "ampdu_hostreorder", 0, 0, TRUE); #endif /* PROP_TXSTATUS */ #endif /* BCMSDIO || BCMDBUS */ @@ -11316,7 +11316,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) ret = dhd_iovar(dhd, 0, "ap_isolate", (char *)&wl_ap_isolate, sizeof(wl_ap_isolate), NULL, 0, TRUE); if (ret < 0) - DHD_ERROR(("%s failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s failed %d\n", __func__, ret)); } #endif /* PCIE_FULL_DONGLE */ #ifdef PNO_SUPPORT @@ -11328,7 +11328,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) if (!dhd->rtt_state) { ret = dhd_rtt_init(dhd); if (ret < 0) { - DHD_ERROR(("%s failed to initialize RTT\n", __FUNCTION__)); + DHD_ERROR(("%s failed to initialize RTT\n", __func__)); } } #endif // endif @@ -11350,13 +11350,13 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) /* ND offload version supported */ dhd->ndo_version = dhd_ndo_get_version(dhd); if (dhd->ndo_version > 0) { - DHD_INFO(("%s: ndo version %d\n", __FUNCTION__, dhd->ndo_version)); + DHD_INFO(("%s: ndo version %d\n", __func__, dhd->ndo_version)); #ifdef NDO_CONFIG_SUPPORT /* enable Unsolicited NA filter */ ret = dhd_ndo_unsolicited_na_filter_enable(dhd, 1); if (ret < 0) { - DHD_ERROR(("%s failed to enable Unsolicited NA filter\n", __FUNCTION__)); + DHD_ERROR(("%s failed to enable Unsolicited NA filter\n", __func__)); } #endif /* NDO_CONFIG_SUPPORT */ } @@ -11399,6 +11399,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) wnm_cap |= WL_WNM_ESTM; } #endif /* WL_MBO && WL_OCE */ + if (dhd_iovar(dhd, 0, "wnm", (char *)&wnm_cap, sizeof(wnm_cap), NULL, 0, TRUE) < 0) { DHD_ERROR(("failed to set WNM capabilities\n")); } @@ -11410,16 +11411,16 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) /* store the preserve log set numbers */ if (dhd_get_preserve_log_numbers(dhd, &dhd->logset_prsrv_mask) != BCME_OK) { - DHD_ERROR(("%s: Failed to get preserve log # !\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to get preserve log # !\n", __func__)); } #ifdef WL_MONITOR if (FW_SUPPORTED(dhd, monitor)) { dhd->monitor_enable = TRUE; - DHD_ERROR(("%s: Monitor mode is enabled in FW cap\n", __FUNCTION__)); + DHD_ERROR(("%s: Monitor mode is enabled in FW cap\n", __func__)); } else { dhd->monitor_enable = FALSE; - DHD_ERROR(("%s: Monitor mode is not enabled in FW cap\n", __FUNCTION__)); + DHD_ERROR(("%s: Monitor mode is not enabled in FW cap\n", __func__)); } #endif /* WL_MONITOR */ @@ -11457,8 +11458,10 @@ dhd_iovar(dhd_pub_t *pub, int ifidx, char *name, char *param_buf, uint param_len wl_ioctl_t ioc; int ret; - if (res_len > WLC_IOCTL_MAXLEN || param_len > WLC_IOCTL_MAXLEN) + if (res_len > WLC_IOCTL_MAXLEN || param_len > WLC_IOCTL_MAXLEN || name == NULL) { + DHD_ERROR(("%s: OOPS! wrong arguemnets\n", __func__)); return BCME_BADARG; + } input_len = strlen(name) + 1 + param_len; if (input_len > WLC_IOCTL_MAXLEN) @@ -11467,13 +11470,13 @@ dhd_iovar(dhd_pub_t *pub, int ifidx, char *name, char *param_buf, uint param_len buf = NULL; if (set) { if (res_buf || res_len != 0) { - DHD_ERROR(("%s: SET wrong arguemnet\n", __FUNCTION__)); + DHD_ERROR(("%s: SET '%s' wrong arguemnet\n", __func__, name)); ret = BCME_BADARG; goto exit; } buf = MALLOCZ(pub->osh, input_len); if (!buf) { - DHD_ERROR(("%s: mem alloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: SET '%s' mem alloc failed\n", __func__, name)); ret = BCME_NOMEM; goto exit; } @@ -11491,17 +11494,22 @@ dhd_iovar(dhd_pub_t *pub, int ifidx, char *name, char *param_buf, uint param_len ret = dhd_wl_ioctl(pub, ifidx, &ioc, ioc.buf, ioc.len); } else { if (!res_buf || !res_len) { - DHD_ERROR(("%s: GET failed. resp_buf NULL or length 0.\n", __FUNCTION__)); + DHD_ERROR(("%s: GET '%s' failed. resp_buf NULL or length 0.\n", + __func__, name)); ret = BCME_BADARG; goto exit; } + /* EOF:FIXME */ + /* HERE TYPICAL CHINESE BULLSHIT - EVEN IF RES_LEN NOT ENOUGH + * THEN HARD ERROR. THE CALLING CODE IS WRONG! */ if (res_len < input_len) { - DHD_INFO(("%s: res_len(%d) < input_len(%d)\n", __FUNCTION__, - res_len, input_len)); + + DHD_INFO(("%s: GET '%s' -> res_len(%d) < input_len(%d)\n", __func__, + name, res_len, input_len)); buf = MALLOCZ(pub->osh, input_len); if (!buf) { - DHD_ERROR(("%s: mem alloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: GET '%s' mem alloc failed\n", __func__, name)); ret = BCME_NOMEM; goto exit; } @@ -11521,6 +11529,7 @@ dhd_iovar(dhd_pub_t *pub, int ifidx, char *name, char *param_buf, uint param_len if (ret == BCME_OK) { memcpy(res_buf, buf, res_len); } + } else { memset(res_buf, 0, res_len); ret = bcm_mkiovar(name, param_buf, param_len, res_buf, res_len); @@ -11595,7 +11604,7 @@ int dhd_change_mtu(dhd_pub_t *dhdp, int new_mtu, int ifidx) #define DHD_MAX_MTU 1752 if ((new_mtu < DHD_MIN_MTU) || (new_mtu > DHD_MAX_MTU)) { - DHD_ERROR(("%s: MTU size %d is invalid.\n", __FUNCTION__, new_mtu)); + DHD_ERROR(("%s: MTU size %d is invalid.\n", __func__, new_mtu)); return BCME_BADARG; } @@ -11616,7 +11625,7 @@ aoe_update_host_ipv4_table(dhd_pub_t *dhd_pub, u32 ipa, bool add, int idx) /* display what we've got */ ret = dhd_arp_get_arp_hostip_table(dhd_pub, ipv4_buf, sizeof(ipv4_buf), idx); - DHD_ARPOE(("%s: hostip table read from Dongle:\n", __FUNCTION__)); + DHD_ARPOE(("%s: hostip table read from Dongle:\n", __func__)); #ifdef AOE_DBG dhd_print_buf(ipv4_buf, 32, 4); /* max 8 IPs 4b each */ #endif // endif @@ -11624,7 +11633,7 @@ aoe_update_host_ipv4_table(dhd_pub_t *dhd_pub, u32 ipa, bool add, int idx) dhd_aoe_hostip_clr(dhd_pub, idx); if (ret) { - DHD_ERROR(("%s failed\n", __FUNCTION__)); + DHD_ERROR(("%s failed\n", __func__)); return; } @@ -11633,24 +11642,24 @@ aoe_update_host_ipv4_table(dhd_pub_t *dhd_pub, u32 ipa, bool add, int idx) ipv4_buf[i] = ipa; add = FALSE; /* added ipa to local table */ DHD_ARPOE(("%s: Saved new IP in temp arp_hostip[%d]\n", - __FUNCTION__, i)); + __func__, i)); } else if (ipv4_buf[i] == ipa) { ipv4_buf[i] = 0; DHD_ARPOE(("%s: removed IP:%x from temp table %d\n", - __FUNCTION__, ipa, i)); + __func__, ipa, i)); } if (ipv4_buf[i] != 0) { /* add back host_ip entries from our local cache */ dhd_arp_offload_add_ip(dhd_pub, ipv4_buf[i], idx); DHD_ARPOE(("%s: added IP:%x to dongle arp_hostip[%d]\n\n", - __FUNCTION__, ipv4_buf[i], i)); + __func__, ipv4_buf[i], i)); } } #ifdef AOE_DBG /* see the resulting hostip table */ dhd_arp_get_arp_hostip_table(dhd_pub, ipv4_buf, sizeof(ipv4_buf), idx); - DHD_ARPOE(("%s: read back arp_hostip table:\n", __FUNCTION__)); + DHD_ARPOE(("%s: read back arp_hostip table:\n", __func__)); dhd_print_buf(ipv4_buf, 32, 4); /* max 8 IPs 4b each */ #endif // endif } @@ -11709,7 +11718,7 @@ static int dhd_inetaddr_notifier_call(struct notifier_block *this, switch (event) { case NETDEV_UP: DHD_ARPOE(("%s: [%s] Up IP: 0x%x\n", - __FUNCTION__, ifa->ifa_label, ifa->ifa_address)); + __func__, ifa->ifa_label, ifa->ifa_address)); /* * Skip if Bus is not in a state to transport the IOVAR @@ -11718,10 +11727,10 @@ static int dhd_inetaddr_notifier_call(struct notifier_block *this, if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(&dhd->pub) || dhd->pub.busstate == DHD_BUS_LOAD) { DHD_ERROR(("%s: bus not ready, exit NETDEV_UP : %d\n", - __FUNCTION__, dhd->pub.busstate)); + __func__, dhd->pub.busstate)); if (dhd->pend_ipaddr) { DHD_ERROR(("%s: overwrite pending ipaddr: 0x%x\n", - __FUNCTION__, dhd->pend_ipaddr)); + __func__, dhd->pend_ipaddr)); } dhd->pend_ipaddr = ifa->ifa_address; break; @@ -11729,7 +11738,7 @@ static int dhd_inetaddr_notifier_call(struct notifier_block *this, #ifdef AOE_IP_ALIAS_SUPPORT DHD_ARPOE(("%s:add aliased IP to AOE hostip cache\n", - __FUNCTION__)); + __func__)); aoe_update_host_ipv4_table(dhd_pub, ifa->ifa_address, TRUE, idx); #endif /* AOE_IP_ALIAS_SUPPORT */ dhd_conf_set_garp(dhd_pub, idx, ifa->ifa_address, TRUE); @@ -11737,11 +11746,11 @@ static int dhd_inetaddr_notifier_call(struct notifier_block *this, case NETDEV_DOWN: DHD_ARPOE(("%s: [%s] Down IP: 0x%x\n", - __FUNCTION__, ifa->ifa_label, ifa->ifa_address)); + __func__, ifa->ifa_label, ifa->ifa_address)); dhd->pend_ipaddr = 0; #ifdef AOE_IP_ALIAS_SUPPORT DHD_ARPOE(("%s:interface is down, AOE clr all for this if\n", - __FUNCTION__)); + __func__)); if ((dhd_pub->op_mode & DHD_FLAG_HOSTAP_MODE) || (ifa->ifa_dev->dev != dhd_linux_get_primary_netdev(dhd_pub))) { aoe_update_host_ipv4_table(dhd_pub, ifa->ifa_address, FALSE, idx); @@ -11774,31 +11783,31 @@ dhd_inet6_work_handler(void *dhd_info, void *event_data, u8 event) int ret; if (!dhd) { - DHD_ERROR(("%s: invalid dhd_info\n", __FUNCTION__)); + DHD_ERROR(("%s: invalid dhd_info\n", __func__)); goto done; } dhdp = &dhd->pub; if (event != DHD_WQ_WORK_IPV6_NDO) { - DHD_ERROR(("%s: unexpected event\n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected event\n", __func__)); goto done; } if (!ndo_work) { - DHD_ERROR(("%s: ipv6 work info is not initialized\n", __FUNCTION__)); + DHD_ERROR(("%s: ipv6 work info is not initialized\n", __func__)); return; } switch (ndo_work->event) { case NETDEV_UP: #ifndef NDO_CONFIG_SUPPORT - DHD_TRACE(("%s: Enable NDO \n ", __FUNCTION__)); + DHD_TRACE(("%s: Enable NDO \n ", __func__)); ret = dhd_ndo_enable(dhdp, TRUE); if (ret < 0) { - DHD_ERROR(("%s: Enabling NDO Failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: Enabling NDO Failed %d\n", __func__, ret)); } #endif /* !NDO_CONFIG_SUPPORT */ - DHD_TRACE(("%s: Add a host ip for NDO\n", __FUNCTION__)); + DHD_TRACE(("%s: Add a host ip for NDO\n", __func__)); if (dhdp->ndo_version > 0) { /* inet6 addr notifier called only for unicast address */ ret = dhd_ndo_add_ip_with_type(dhdp, &ndo_work->ipv6_addr[0], @@ -11809,21 +11818,21 @@ dhd_inet6_work_handler(void *dhd_info, void *event_data, u8 event) } if (ret < 0) { DHD_ERROR(("%s: Adding a host ip for NDO failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); } break; case NETDEV_DOWN: if (dhdp->ndo_version > 0) { - DHD_TRACE(("%s: Remove a host ip for NDO\n", __FUNCTION__)); + DHD_TRACE(("%s: Remove a host ip for NDO\n", __func__)); ret = dhd_ndo_remove_ip_by_addr(dhdp, &ndo_work->ipv6_addr[0], ndo_work->if_idx); } else { - DHD_TRACE(("%s: Clear host ip table for NDO \n", __FUNCTION__)); + DHD_TRACE(("%s: Clear host ip table for NDO \n", __func__)); ret = dhd_ndo_remove_ip(dhdp, ndo_work->if_idx); } if (ret < 0) { DHD_ERROR(("%s: Removing host ip for NDO failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); goto done; } #ifdef NDO_CONFIG_SUPPORT @@ -11832,22 +11841,22 @@ dhd_inet6_work_handler(void *dhd_info, void *event_data, u8 event) dhd_idx2net(dhdp, ndo_work->if_idx)); if ((ret < 0) && (ret != BCME_NORESOURCE)) { DHD_ERROR(("%s: Updating host ip for NDO failed %d\n", - __FUNCTION__, ret)); + __func__, ret)); goto done; } } #else /* !NDO_CONFIG_SUPPORT */ - DHD_TRACE(("%s: Disable NDO\n ", __FUNCTION__)); + DHD_TRACE(("%s: Disable NDO\n ", __func__)); ret = dhd_ndo_enable(dhdp, FALSE); if (ret < 0) { - DHD_ERROR(("%s: disabling NDO Failed %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: disabling NDO Failed %d\n", __func__, ret)); goto done; } #endif /* NDO_CONFIG_SUPPORT */ break; default: - DHD_ERROR(("%s: unknown notifier event \n", __FUNCTION__)); + DHD_ERROR(("%s: unknown notifier event \n", __func__)); break; } done: @@ -11897,7 +11906,7 @@ int dhd_inet6addr_notifier_call(struct notifier_block *this, unsigned long event ndo_info = (struct ipv6_work_info_t *)kzalloc(sizeof(struct ipv6_work_info_t), GFP_ATOMIC); if (!ndo_info) { - DHD_ERROR(("%s: ipv6 work alloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: ipv6 work alloc failed\n", __func__)); return NOTIFY_DONE; } @@ -11963,10 +11972,10 @@ dhd_register_if(dhd_pub_t *dhdp, int ifidx, bool need_rtnl_lock) int err = 0; uint8 temp_addr[ETHER_ADDR_LEN] = { 0x00, 0x90, 0x4c, 0x11, 0x22, 0x33 }; - DHD_TRACE(("%s: ifidx %d\n", __FUNCTION__, ifidx)); + DHD_TRACE(("%s: ifidx %d\n", __func__, ifidx)); if (dhd == NULL || dhd->iflist[ifidx] == NULL) { - DHD_ERROR(("%s: Invalid Interface\n", __FUNCTION__)); + DHD_ERROR(("%s: Invalid Interface\n", __func__)); return BCME_ERROR; } @@ -12028,16 +12037,16 @@ dhd_register_if(dhd_pub_t *dhdp, int ifidx, bool need_rtnl_lock) memcpy(net->dev_addr, temp_addr, ETHER_ADDR_LEN); if (ifidx == 0) - printf("%s\n", dhd_version); + DHD_INFO(("%s: %s\n", __func__, dhd_version)); else { #ifdef WL_EXT_IAPSTA wl_ext_iapsta_update_net_device(net, ifidx); #endif /* WL_EXT_IAPSTA */ if (dhd->pub.up == 1) { if (_dhd_set_mac_address(dhd, ifidx, net->dev_addr, FALSE) == 0) - DHD_INFO(("%s: MACID is overwritten\n", __FUNCTION__)); + DHD_INFO(("%s: MACID is overwritten\n", __func__)); else - DHD_ERROR(("%s: _dhd_set_mac_address() failed\n", __FUNCTION__)); + DHD_ERROR(("%s: _dhd_set_mac_address() failed\n", __func__)); } } @@ -12061,8 +12070,8 @@ dhd_register_if(dhd_pub_t *dhdp, int ifidx, bool need_rtnl_lock) #endif /* WL_EXT_IAPSTA */ #endif /* WL_EXT_IAPSTA || USE_IW || WL_ESCAN */ - printf("Register interface [%s] MAC: "MACDBG"\n\n", net->name, - MAC2STRDBG(net->dev_addr)); + DHD_INFO(("%s: Register interface [%s] MAC: %pM\n", + __func__, net->name, net->dev_addr)); #if defined(SOFTAP) && defined(WL_WIRELESS_EXT) && !defined(WL_CFG80211) // wl_iw_iscan_set_scan_broadcast_prep(net, 1); @@ -12119,7 +12128,7 @@ dhd_bus_detach(dhd_pub_t *dhdp) { dhd_info_t *dhd; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (dhdp) { dhd = (dhd_info_t *)dhdp->info; @@ -12138,7 +12147,7 @@ dhd_bus_detach(dhd_pub_t *dhdp) /* Force Dongle terminated */ if (dhd_wl_ioctl_cmd(dhdp, WLC_TERMINATED, NULL, 0, TRUE, 0) < 0) DHD_ERROR(("%s Setting WLC_TERMINATED failed\n", - __FUNCTION__)); + __func__)); dbus_stop(dhd->pub.bus); dhd->pub.busstate = DHD_BUS_DOWN; #else @@ -12193,9 +12202,9 @@ void dhd_detach(dhd_pub_t *dhdp) rtnl_unlock(); } - DHD_TRACE(("%s: Enter state 0x%x\n", __FUNCTION__, dhd->dhd_state)); + DHD_TRACE(("%s: Enter state 0x%x\n", __func__, dhd->dhd_state)); - DHD_ERROR(("%s: making dhdpub up FALSE\n", __FUNCTION__)); + DHD_ERROR(("%s: making dhdpub up FALSE\n", __func__)); dhd->pub.up = 0; if (!(dhd->dhd_state & DHD_ATTACH_STATE_DONE)) { /* Give sufficient time for threads to start running in case @@ -12604,7 +12613,7 @@ void dhd_free(dhd_pub_t *dhdp) { dhd_info_t *dhd; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (dhdp) { int i; @@ -12649,7 +12658,7 @@ dhd_free(dhd_pub_t *dhdp) void dhd_clear(dhd_pub_t *dhdp) { - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (dhdp) { int i; @@ -12689,14 +12698,14 @@ dhd_clear(dhd_pub_t *dhdp) static void dhd_module_cleanup(void) { - printf("%s: Enter\n", __FUNCTION__); + printf("%s: Enter\n", __func__); dhd_bus_unregister(); wl_android_exit(); dhd_wifi_platform_unregister_drv(); - printf("%s: Exit\n", __FUNCTION__); + printf("%s: Exit\n", __func__); } static void __exit @@ -12714,7 +12723,7 @@ dhd_module_init(void) int err; int retry = POWERUP_MAX_RETRY; - printf("%s: in %s\n", __FUNCTION__, dhd_version); + printf("%s: in %s\n", __func__, dhd_version); DHD_PERIM_RADIO_INIT(); @@ -12735,7 +12744,7 @@ dhd_module_init(void) break; } else { DHD_ERROR(("%s: Failed to load the driver, try cnt %d\n", - __FUNCTION__, retry)); + __func__, retry)); strncpy(firmware_path, fw_bak_path, MOD_PARAM_PATHLEN); firmware_path[MOD_PARAM_PATHLEN-1] = '\0'; strncpy(nvram_path, nv_bak_path, MOD_PARAM_PATHLEN); @@ -12746,21 +12755,21 @@ dhd_module_init(void) dhd_create_to_notifier_skt(); if (err) { - DHD_ERROR(("%s: Failed to load driver max retry reached**\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to load driver max retry reached**\n", __func__)); } else { if (!dhd_download_fw_on_driverload) { dhd_driver_init_done = TRUE; } } - printf("%s: Exit err=%d\n", __FUNCTION__, err); + printf("%s: Exit err=%d\n", __func__, err); return err; } static int dhd_reboot_callback(struct notifier_block *this, unsigned long code, void *unused) { - DHD_TRACE(("%s: code = %ld\n", __FUNCTION__, code)); + DHD_TRACE(("%s: code = %ld\n", __func__, code)); if (code == SYS_RESTART) { #ifdef BCMPCIE is_reboot = code; @@ -13087,10 +13096,10 @@ dhd_os_wd_timer(void *bus, uint wdtick) dhd_info_t *dhd = (dhd_info_t *)pub->info; unsigned long flags; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (!dhd) { - DHD_ERROR(("%s: dhd NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd NULL\n", __func__)); return; } @@ -13150,19 +13159,19 @@ dhd_os_open_image1(dhd_pub_t *pub, char *filename) } if (!S_ISREG(file_inode(fp)->i_mode)) { - DHD_ERROR(("%s: %s is not regular file\n", __FUNCTION__, filename)); + DHD_ERROR(("%s: %s is not regular file\n", __func__, filename)); fp = NULL; goto err; } size = i_size_read(file_inode(fp)); if (size <= 0) { - DHD_ERROR(("%s: %s file size invalid %d\n", __FUNCTION__, filename, size)); + DHD_ERROR(("%s: %s file size invalid %d\n", __func__, filename, size)); fp = NULL; goto err; } - DHD_ERROR(("%s: %s (%d bytes) open success\n", __FUNCTION__, filename, size)); + DHD_ERROR(("%s: %s (%d bytes) open success\n", __func__, filename, size)); err: return fp; @@ -13515,7 +13524,7 @@ dhd_sendup_log(dhd_pub_t *dhdp, void *data, int data_len) skb_pull(skb, ETH_HLEN); bcm_object_trace_opr(skb, BCM_OBJDBG_REMOVE, - __FUNCTION__, __LINE__); + __func__, __LINE__); /* Send the packet */ if (in_interrupt()) { netif_rx(skb); @@ -13524,7 +13533,7 @@ dhd_sendup_log(dhd_pub_t *dhdp, void *data, int data_len) } } else { /* Could not allocate a sk_buf */ - DHD_ERROR(("%s: unable to alloc sk_buf\n", __FUNCTION__)); + DHD_ERROR(("%s: unable to alloc sk_buf\n", __func__)); } } #endif /* LOG_INTO_TCPDUMP */ @@ -13569,7 +13578,7 @@ dhd_net_bus_devreset(struct net_device *dev, uint8 flag) if (flag == TRUE) { /* Issue wl down command before resetting the chip */ if (dhd_wl_ioctl_cmd(&dhd->pub, WLC_DOWN, NULL, 0, TRUE, 0) < 0) { - DHD_TRACE(("%s: wl down failed\n", __FUNCTION__)); + DHD_TRACE(("%s: wl down failed\n", __func__)); } #ifdef PROP_TXSTATUS if (dhd->pub.wlfc_enabled) { @@ -13624,7 +13633,7 @@ dhd_net_bus_devreset(struct net_device *dev, uint8 flag) } if (ret) { - DHD_ERROR(("%s: dhd_bus_devreset: %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: dhd_bus_devreset: %d\n", __func__, ret)); } return ret; @@ -13690,7 +13699,7 @@ int net_os_set_suspend_bcn_li_dtim(struct net_device *dev, int val) if (dhd) { DHD_ERROR(("%s: Set bcn_li_dtim in suspend %d\n", - __FUNCTION__, val)); + __func__, val)); dhd->pub.suspend_bcn_li_dtim = val; } @@ -13703,7 +13712,7 @@ int net_os_set_max_dtim_enable(struct net_device *dev, int val) if (dhd) { DHD_ERROR(("%s: use MAX bcn_li_dtim in suspend %s\n", - __FUNCTION__, (val ? "Enable" : "Disable"))); + __func__, (val ? "Enable" : "Disable"))); if (val) { dhd->pub.max_dtim_enable = TRUE; } else { @@ -13723,7 +13732,7 @@ int net_os_set_disable_dtim_in_suspend(struct net_device *dev, int val) if (dhd) { DHD_ERROR(("%s: Disable bcn_li_dtim in suspend %s\n", - __FUNCTION__, (val ? "Enable" : "Disable"))); + __func__, (val ? "Enable" : "Disable"))); if (val) { dhd->pub.disable_dtim_in_suspend = TRUE; } else { @@ -13747,7 +13756,7 @@ int net_os_rxfilter_add_remove(struct net_device *dev, int add_remove, int num) if (!dhd_master_mode) add_remove = !add_remove; - DHD_ERROR(("%s: add_remove = %d, num = %d\n", __FUNCTION__, add_remove, num)); + DHD_ERROR(("%s: add_remove = %d, num = %d\n", __func__, add_remove, num)); if (!dhd || (num == DHD_UNICAST_FILTER_NUM)) { return 0; } @@ -13793,7 +13802,7 @@ int net_os_enable_packet_filter(struct net_device *dev, int val) { dhd_info_t *dhd = DHD_DEV_INFO(dev); - DHD_ERROR(("%s: val = %d\n", __FUNCTION__, val)); + DHD_ERROR(("%s: val = %d\n", __func__, val)); return dhd_os_enable_packet_filter(&dhd->pub, val); } #endif /* PKT_FILTER_SUPPORT */ @@ -13931,7 +13940,7 @@ dhd_dev_get_feature_set_matrix(struct net_device *dev, int num) default: ret = WIFI_FEATURE_INVALID; - DHD_ERROR(("%s: Out of index(%d) for get feature set\n", __FUNCTION__, num)); + DHD_ERROR(("%s: Out of index(%d) for get feature set\n", __func__, num)); break; } @@ -13968,7 +13977,7 @@ dhd_dev_ndo_cfg(struct net_device *dev, u8 enable) /* Update changes of anycast address & DAD failed address */ ret = dhd_dev_ndo_update_inet6addr(dev); if ((ret < 0) && (ret != BCME_NORESOURCE)) { - DHD_ERROR(("%s: failed to update host ip addr: %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: failed to update host ip addr: %d\n", __func__, ret)); return ret; } } else { @@ -13978,7 +13987,7 @@ dhd_dev_ndo_cfg(struct net_device *dev, u8 enable) /* disable ND offload in FW */ ret = dhd_ndo_enable(dhdp, FALSE); if (ret < 0) { - DHD_ERROR(("%s: failed to disable NDO: %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: failed to disable NDO: %d\n", __func__, ret)); } } return ret; @@ -14044,23 +14053,23 @@ dhd_dev_ndo_update_inet6addr(struct net_device *dev) if (dev) { inet6 = dev->ip6_ptr; if (!inet6) { - DHD_ERROR(("%s: Invalid inet6_dev\n", __FUNCTION__)); + DHD_ERROR(("%s: Invalid inet6_dev\n", __func__)); return BCME_ERROR; } dhd = DHD_DEV_INFO(dev); if (!dhd) { - DHD_ERROR(("%s: Invalid dhd_info\n", __FUNCTION__)); + DHD_ERROR(("%s: Invalid dhd_info\n", __func__)); return BCME_ERROR; } dhdp = &dhd->pub; if (dhd_net2idx(dhd, dev) != 0) { - DHD_ERROR(("%s: Not primary interface\n", __FUNCTION__)); + DHD_ERROR(("%s: Not primary interface\n", __func__)); return BCME_ERROR; } } else { - DHD_ERROR(("%s: Invalid net_device\n", __FUNCTION__)); + DHD_ERROR(("%s: Invalid net_device\n", __func__)); return BCME_ERROR; } @@ -14070,7 +14079,7 @@ dhd_dev_ndo_update_inet6addr(struct net_device *dev) if (!dhdp->ndo_host_ip_overflow) { dhdp->ndo_host_ip_overflow = TRUE; /* Disable ND offload in FW */ - DHD_INFO(("%s: Host IP overflow, disable NDO\n", __FUNCTION__)); + DHD_INFO(("%s: Host IP overflow, disable NDO\n", __func__)); ret = dhd_ndo_enable(dhdp, FALSE); } @@ -14086,7 +14095,7 @@ dhd_dev_ndo_update_inet6addr(struct net_device *dev) ipv6_addr = (struct in6_addr *)MALLOC(dhdp->osh, sizeof(struct in6_addr) * dhdp->ndo_max_host_ip); if (!ipv6_addr) { - DHD_ERROR(("%s: failed to alloc ipv6 addr buffer\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to alloc ipv6 addr buffer\n", __func__)); return BCME_NOMEM; } @@ -14105,7 +14114,7 @@ dhd_dev_ndo_update_inet6addr(struct net_device *dev) /* Remove DAD failed unicast address */ for (i = 0; i < cnt; i++) { - DHD_INFO(("%s: Remove DAD failed addr\n", __FUNCTION__)); + DHD_INFO(("%s: Remove DAD failed addr\n", __func__)); ret = dhd_ndo_remove_ip_by_addr(dhdp, (char *)&ipv6_addr[i], 0); if (ret < 0) { goto done; @@ -14174,7 +14183,7 @@ dhd_dev_ndo_update_inet6addr(struct net_device *dev) dhdp->ndo_host_ip_overflow = FALSE; if (dhdp->in_suspend) { /* drvier is in (early) suspend state, need to enable ND offload in FW */ - DHD_INFO(("%s: enable NDO\n", __FUNCTION__)); + DHD_INFO(("%s: enable NDO\n", __func__)); ret = dhd_ndo_enable(dhdp, TRUE); } } @@ -14422,7 +14431,7 @@ dhd_dev_set_lazy_roam_cfg(struct net_device *dev, (char *)&roam_exp_cfg, sizeof(roam_exp_cfg), NULL, 0, TRUE); if (err < 0) { - DHD_ERROR(("%s : Failed to execute roam_exp_params %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : Failed to execute roam_exp_params %d\n", __func__, err)); } return err; } @@ -14444,7 +14453,7 @@ dhd_dev_lazy_roam_enable(struct net_device *dev, uint32 enable) (char *)&roam_exp_cfg, sizeof(roam_exp_cfg), NULL, 0, TRUE); if (err < 0) { - DHD_ERROR(("%s : Failed to execute roam_exp_params %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : Failed to execute roam_exp_params %d\n", __func__, err)); } else { dhd->pub.lazy_roam_enable = (enable != 0); } @@ -14469,7 +14478,7 @@ dhd_dev_set_lazy_roam_bssid_pref(struct net_device *dev, err = dhd_iovar(&dhd->pub, 0, "roam_exp_bssid_pref", (char *)bssid_pref, len, NULL, 0, TRUE); if (err != BCME_OK) { - DHD_ERROR(("%s : Failed to execute roam_exp_bssid_pref %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : Failed to execute roam_exp_bssid_pref %d\n", __func__, err)); } return err; } @@ -14488,7 +14497,7 @@ dhd_dev_set_blacklist_bssid(struct net_device *dev, maclist_t *blacklist, err = dhd_wl_ioctl_cmd(&(dhd->pub), WLC_SET_MACLIST, (char *)blacklist, len, TRUE, 0); if (err != BCME_OK) { - DHD_ERROR(("%s : WLC_SET_MACLIST failed %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : WLC_SET_MACLIST failed %d\n", __func__, err)); return err; } } @@ -14497,7 +14506,7 @@ dhd_dev_set_blacklist_bssid(struct net_device *dev, maclist_t *blacklist, err = dhd_wl_ioctl_cmd(&(dhd->pub), WLC_SET_MACMODE, (char *)&macmode, sizeof(macmode), TRUE, 0); if (err != BCME_OK) { - DHD_ERROR(("%s : WLC_SET_MACMODE failed %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : WLC_SET_MACMODE failed %d\n", __func__, err)); } return err; } @@ -14515,7 +14524,7 @@ dhd_dev_set_whitelist_ssid(struct net_device *dev, wl_ssid_whitelist_t *ssid_whi ssid_whitelist = &whitelist_ssid_flush; ssid_whitelist->ssid_count = 0; } else { - DHD_ERROR(("%s : Nothing to do here\n", __FUNCTION__)); + DHD_ERROR(("%s : Nothing to do here\n", __func__)); return BCME_BADARG; } } @@ -14524,7 +14533,7 @@ dhd_dev_set_whitelist_ssid(struct net_device *dev, wl_ssid_whitelist_t *ssid_whi err = dhd_iovar(&dhd->pub, 0, "roam_exp_ssid_whitelist", (char *)ssid_whitelist, len, NULL, 0, TRUE); if (err != BCME_OK) { - DHD_ERROR(("%s : Failed to execute roam_exp_bssid_pref %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : Failed to execute roam_exp_bssid_pref %d\n", __func__, err)); } return err; } @@ -14559,7 +14568,7 @@ dhd_dev_set_rssi_monitor_cfg(struct net_device *dev, int start, err = dhd_iovar(&dhd->pub, 0, "rssi_monitor", (char *)&rssi_monitor, sizeof(rssi_monitor), NULL, 0, TRUE); if (err < 0 && err != BCME_UNSUPPORTED) { - DHD_ERROR(("%s : Failed to execute rssi_monitor %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : Failed to execute rssi_monitor %d\n", __func__, err)); } return err; } @@ -14574,7 +14583,7 @@ dhd_dev_set_tcpack_sup_mode_cfg(struct net_device *dev, uint8 enable) err = dhd_tcpack_suppress_set(&dhd->pub, enable); if (err != BCME_OK) { - DHD_ERROR(("%s : Failed to set tcpack_suppress mode: %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : Failed to set tcpack_suppress mode: %d\n", __func__, err)); } return err; } @@ -14588,7 +14597,7 @@ dhd_dev_cfg_rand_mac_oui(struct net_device *dev, uint8 *oui) if (!dhdp || !oui) { DHD_ERROR(("NULL POINTER : %s\n", - __FUNCTION__)); + __func__)); return BCME_ERROR; } if (ETHER_ISMULTI(oui)) { @@ -14624,7 +14633,7 @@ dhd_set_rand_mac_oui(dhd_pub_t *dhd) err = dhd_iovar(dhd, 0, "pfn_macaddr", (char *)&wl_cfg, sizeof(wl_cfg), NULL, 0, TRUE); if (err < 0) { - DHD_ERROR(("%s : failed to execute pfn_macaddr %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s : failed to execute pfn_macaddr %d\n", __func__, err)); } return err; } @@ -14723,7 +14732,7 @@ dhd_dev_start_mkeep_alive(dhd_pub_t *dhd_pub, uint8 mkeep_alive_id, uint8 *ip_pk if (!dhd_support_sta_mode(dhd_pub)) return res; - DHD_TRACE(("%s execution\n", __FUNCTION__)); + DHD_TRACE(("%s execution\n", __func__)); if ((pbuf = MALLOCZ(dhd_pub->osh, KA_TEMP_BUF_SIZE)) == NULL) { DHD_ERROR(("failed to allocate buf with size %d\n", KA_TEMP_BUF_SIZE)); @@ -14744,17 +14753,17 @@ dhd_dev_start_mkeep_alive(dhd_pub_t *dhd_pub, uint8 mkeep_alive_id, uint8 *ip_pk res = dhd_iovar(dhd_pub, 0, "mkeep_alive", &mkeep_alive_id, sizeof(mkeep_alive_id), pbuf, KA_TEMP_BUF_SIZE, FALSE); if (res < 0) { - DHD_ERROR(("%s: Get mkeep_alive failed (error=%d)\n", __FUNCTION__, res)); + DHD_ERROR(("%s: Get mkeep_alive failed (error=%d)\n", __func__, res)); goto exit; } else { /* Check available ID whether it is occupied */ mkeep_alive_pktp = (wl_mkeep_alive_pkt_t *) pbuf; if (dtoh32(mkeep_alive_pktp->period_msec != 0)) { DHD_ERROR(("%s: Get mkeep_alive failed, ID %u is in use.\n", - __FUNCTION__, mkeep_alive_id)); + __func__, mkeep_alive_id)); /* Current occupied ID info */ - DHD_ERROR(("%s: mkeep_alive\n", __FUNCTION__)); + DHD_ERROR(("%s: mkeep_alive\n", __func__)); DHD_ERROR((" Id : %d\n" " Period: %d msec\n" " Length: %d\n" @@ -14857,7 +14866,7 @@ dhd_dev_stop_mkeep_alive(dhd_pub_t *dhd_pub, uint8 mkeep_alive_id) if (!dhd_support_sta_mode(dhd_pub)) return res; - DHD_TRACE(("%s execution\n", __FUNCTION__)); + DHD_TRACE(("%s execution\n", __func__)); /* * Get current mkeep-alive status. Skip ID 0 which is being used for NULL pkt. @@ -14870,12 +14879,12 @@ dhd_dev_stop_mkeep_alive(dhd_pub_t *dhd_pub, uint8 mkeep_alive_id) res = dhd_iovar(dhd_pub, 0, "mkeep_alive", &mkeep_alive_id, sizeof(mkeep_alive_id), pbuf, KA_TEMP_BUF_SIZE, FALSE); if (res < 0) { - DHD_ERROR(("%s: Get mkeep_alive failed (error=%d)\n", __FUNCTION__, res)); + DHD_ERROR(("%s: Get mkeep_alive failed (error=%d)\n", __func__, res)); goto exit; } else { /* Check occupied ID */ mkeep_alive_pktp = (wl_mkeep_alive_pkt_t *) pbuf; - DHD_INFO(("%s: mkeep_alive\n", __FUNCTION__)); + DHD_INFO(("%s: mkeep_alive\n", __func__)); DHD_INFO((" Id : %d\n" " Period: %d msec\n" " Length: %d\n" @@ -14904,7 +14913,7 @@ dhd_dev_stop_mkeep_alive(dhd_pub_t *dhd_pub, uint8 mkeep_alive_id) (char *)&mkeep_alive_pkt, WL_MKEEP_ALIVE_FIXED_LEN, NULL, 0, TRUE); } else { - DHD_ERROR(("%s: ID %u does not exist.\n", __FUNCTION__, mkeep_alive_id)); + DHD_ERROR(("%s: ID %u does not exist.\n", __func__, mkeep_alive_id)); res = BCME_NOTFOUND; } exit: @@ -14946,7 +14955,7 @@ __dhd_apf_add_filter(struct net_device *ndev, uint32 filter_id, ifidx = dhd_net2idx(dhd, ndev); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s: bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s: bad ifidx\n", __func__)); return -ENODEV; } @@ -14957,7 +14966,7 @@ __dhd_apf_add_filter(struct net_device *ndev, uint32 filter_id, */ if ((program_len > WL_APF_PROGRAM_MAX_SIZE) || (program == NULL)) { DHD_ERROR(("%s Invalid program_len: %d, program: %pK\n", - __FUNCTION__, program_len, program)); + __func__, program_len, program)); return -EINVAL; } buf_len = cmd_len + WL_PKT_FILTER_FIXED_LEN + @@ -14965,7 +14974,7 @@ __dhd_apf_add_filter(struct net_device *ndev, uint32 filter_id, buf = MALLOCZ(dhdp->osh, buf_len); if (unlikely(!buf)) { - DHD_ERROR(("%s: MALLOC failure, %d bytes\n", __FUNCTION__, buf_len)); + DHD_ERROR(("%s: MALLOC failure, %d bytes\n", __func__, buf_len)); return -ENOMEM; } @@ -14984,7 +14993,7 @@ __dhd_apf_add_filter(struct net_device *ndev, uint32 filter_id, ret = dhd_wl_ioctl_cmd(dhdp, WLC_SET_VAR, buf, buf_len, TRUE, ifidx); if (unlikely(ret)) { DHD_ERROR(("%s: failed to add APF filter, id=%d, ret=%d\n", - __FUNCTION__, filter_id, ret)); + __func__, filter_id, ret)); } if (buf) { @@ -15007,7 +15016,7 @@ __dhd_apf_config_filter(struct net_device *ndev, uint32 filter_id, ifidx = dhd_net2idx(dhd, ndev); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s: bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s: bad ifidx\n", __func__)); return -ENODEV; } @@ -15016,7 +15025,7 @@ __dhd_apf_config_filter(struct net_device *ndev, uint32 filter_id, buf = MALLOCZ(dhdp->osh, buf_len); if (unlikely(!buf)) { - DHD_ERROR(("%s: MALLOC failure, %d bytes\n", __FUNCTION__, buf_len)); + DHD_ERROR(("%s: MALLOC failure, %d bytes\n", __func__, buf_len)); return -ENOMEM; } @@ -15029,7 +15038,7 @@ __dhd_apf_config_filter(struct net_device *ndev, uint32 filter_id, ret = dhd_wl_ioctl_cmd(dhdp, WLC_SET_VAR, buf, buf_len, TRUE, ifidx); if (unlikely(ret)) { DHD_ERROR(("%s: failed to enable APF filter, id=%d, ret=%d\n", - __FUNCTION__, filter_id, ret)); + __func__, filter_id, ret)); goto exit; } @@ -15037,7 +15046,7 @@ __dhd_apf_config_filter(struct net_device *ndev, uint32 filter_id, WLC_SET_VAR, TRUE, ifidx); if (unlikely(ret)) { DHD_ERROR(("%s: failed to set APF filter mode, id=%d, ret=%d\n", - __FUNCTION__, filter_id, ret)); + __func__, filter_id, ret)); } exit: @@ -15056,7 +15065,7 @@ __dhd_apf_delete_filter(struct net_device *ndev, uint32 filter_id) ifidx = dhd_net2idx(dhd, ndev); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s: bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s: bad ifidx\n", __func__)); return -ENODEV; } @@ -15064,7 +15073,7 @@ __dhd_apf_delete_filter(struct net_device *ndev, uint32 filter_id) htod32(filter_id), WLC_SET_VAR, TRUE, ifidx); if (unlikely(ret)) { DHD_ERROR(("%s: failed to delete APF filter, id=%d, ret=%d\n", - __FUNCTION__, filter_id, ret)); + __func__, filter_id, ret)); } return ret; @@ -15090,7 +15099,7 @@ dhd_dev_apf_get_version(struct net_device *ndev, uint32 *version) int ifidx, ret; if (!FW_SUPPORTED(dhdp, apf)) { - DHD_ERROR(("%s: firmware doesn't support APF\n", __FUNCTION__)); + DHD_ERROR(("%s: firmware doesn't support APF\n", __func__)); /* * Notify Android framework that APF is not supported by setting @@ -15102,7 +15111,7 @@ dhd_dev_apf_get_version(struct net_device *ndev, uint32 *version) ifidx = dhd_net2idx(dhd, ndev); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s: bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s: bad ifidx\n", __func__)); return -ENODEV; } @@ -15110,7 +15119,7 @@ dhd_dev_apf_get_version(struct net_device *ndev, uint32 *version) WLC_GET_VAR, FALSE, ifidx); if (unlikely(ret)) { DHD_ERROR(("%s: failed to get APF version, ret=%d\n", - __FUNCTION__, ret)); + __func__, ret)); } return ret; @@ -15124,14 +15133,14 @@ dhd_dev_apf_get_max_len(struct net_device *ndev, uint32 *max_len) int ifidx, ret; if (!FW_SUPPORTED(dhdp, apf)) { - DHD_ERROR(("%s: firmware doesn't support APF\n", __FUNCTION__)); + DHD_ERROR(("%s: firmware doesn't support APF\n", __func__)); *max_len = 0; return BCME_OK; } ifidx = dhd_net2idx(dhd, ndev); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s bad ifidx\n", __func__)); return -ENODEV; } @@ -15139,7 +15148,7 @@ dhd_dev_apf_get_max_len(struct net_device *ndev, uint32 *max_len) WLC_GET_VAR, FALSE, ifidx); if (unlikely(ret)) { DHD_ERROR(("%s: failed to get APF size limit, ret=%d\n", - __FUNCTION__, ret)); + __func__, ret)); } return ret; @@ -15301,7 +15310,7 @@ static void dhd_hang_process(struct work_struct *work_data) extern dhd_pub_t *link_recovery; void dhd_host_recover_link(void) { - DHD_ERROR(("****** %s ******\n", __FUNCTION__)); + DHD_ERROR(("****** %s ******\n", __func__)); link_recovery->hang_reason = HANG_REASON_PCIE_LINK_DOWN_RC_DETECT; dhd_bus_set_linkdown(link_recovery, TRUE); dhd_os_send_hang_message(link_recovery); @@ -15321,7 +15330,7 @@ int dhd_os_send_hang_message(dhd_pub_t *dhdp) #endif /* WL_CFG80211 */ if (!dhdp) { - DHD_ERROR(("%s: dhdp is null\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdp is null\n", __func__)); return -EINVAL; } @@ -15329,7 +15338,7 @@ int dhd_os_send_hang_message(dhd_pub_t *dhdp) dhd_info = (dhd_info_t *)dhdp->info; if (dhd_info->scheduled_memdump) { - DHD_ERROR_RLMT(("[DUMP]:%s, memdump in progress. return\n", __FUNCTION__)); + DHD_ERROR_RLMT(("[DUMP]:%s, memdump in progress. return\n", __func__)); dhdp->hang_was_pending = 1; return BCME_OK; } @@ -15338,18 +15347,18 @@ int dhd_os_send_hang_message(dhd_pub_t *dhdp) #ifdef WL_CFG80211 primary_ndev = dhd_linux_get_primary_netdev(dhdp); if (!primary_ndev) { - DHD_ERROR(("%s: Cannot find primary netdev\n", __FUNCTION__)); + DHD_ERROR(("%s: Cannot find primary netdev\n", __func__)); return -ENODEV; } cfg = wl_get_cfg(primary_ndev); if (!cfg) { - DHD_ERROR(("%s: Cannot find cfg\n", __FUNCTION__)); + DHD_ERROR(("%s: Cannot find cfg\n", __func__)); return -EINVAL; } /* Skip sending HANG event to framework if driver is not ready */ if (!wl_get_drv_status(cfg, READY, primary_ndev)) { - DHD_ERROR(("%s: device is not ready\n", __FUNCTION__)); + DHD_ERROR(("%s: device is not ready\n", __func__)); return -ENODEV; } #endif /* WL_CFG80211 */ @@ -15378,7 +15387,7 @@ int dhd_os_send_hang_message(dhd_pub_t *dhdp) dhdp->is_bt_recovery_required = TRUE; #endif // endif schedule_work(&dhdp->info->dhd_hang_process_work); - DHD_ERROR(("%s: Event HANG send up due to re=%d te=%d s=%d\n", __FUNCTION__, + DHD_ERROR(("%s: Event HANG send up due to re=%d te=%d s=%d\n", __func__, dhdp->rxcnt_timeout, dhdp->txcnt_timeout, dhdp->busstate)); printf("%s\n", info_string); printf("MAC %pM\n", &dhdp->mac); @@ -15400,12 +15409,12 @@ int net_os_send_hang_message(struct net_device *dev) ret = dhd_os_send_hang_message(&dhd->pub); #ifdef BT_OVER_SDIO } - DHD_ERROR(("%s: HANG -> Reset BT\n", __FUNCTION__)); + DHD_ERROR(("%s: HANG -> Reset BT\n", __func__)); bcmsdh_btsdio_process_dhd_hang_notification(!netif_running(dev)); #endif /* BT_OVER_SDIO */ } else { DHD_ERROR(("%s: FW HANG ignored (for testing purpose) and not sent up\n", - __FUNCTION__)); + __func__)); } } return ret; @@ -15427,7 +15436,7 @@ int net_os_send_hang_message_reason(struct net_device *dev, const char *string_n } reason = bcm_strtoul(string_num, NULL, 0); - DHD_INFO(("%s: Enter, reason=0x%x\n", __FUNCTION__, reason)); + DHD_INFO(("%s: Enter, reason=0x%x\n", __func__, reason)); if ((reason <= HANG_REASON_MASK) || (reason >= HANG_REASON_MAX)) { reason = 0; @@ -15475,7 +15484,7 @@ void dhd_get_customized_country_code(struct net_device *dev, char *country_iso_c strlcpy(country_iso_code, "XZ", WLC_CNTRY_BUF_SZ); strlcpy(cspec->country_abbrev, country_iso_code, WLC_CNTRY_BUF_SZ); strlcpy(cspec->ccode, country_iso_code, WLC_CNTRY_BUF_SZ); - DHD_ERROR(("%s: ccode change to %s\n", __FUNCTION__, country_iso_code)); + DHD_ERROR(("%s: ccode change to %s\n", __func__, country_iso_code)); } } #endif /* DHD_BLOB_EXISTENCE_CHECK && !CUSTOM_COUNTRY_CODE */ @@ -15860,7 +15869,7 @@ dhd_get_memdump_filename(struct net_device *ndev, char *memdump_path, int len, c if (strstr(fname, "sssr_dump")) { DHD_SSSR_PRINT_FILEPATH(dhdp, memdump_path); } else { - DHD_ERROR(("%s: file_path = %s%s\n", __FUNCTION__, + DHD_ERROR(("%s: file_path = %s%s\n", __func__, memdump_path, FILE_NAME_HAL_TAG)); } } @@ -15884,7 +15893,7 @@ write_dump_to_file(dhd_pub_t *dhd, uint8 *buf, int size, char *fname) file_mode = O_CREAT | O_WRONLY | O_SYNC; /* print SOCRAM dump file path */ - DHD_ERROR(("%s: file_path = %s\n", __FUNCTION__, memdump_path)); + DHD_ERROR(("%s: file_path = %s\n", __func__, memdump_path)); #ifdef DHD_LOG_DUMP dhd_print_buf_addr(dhd, "write_dump_to_file", buf, size); @@ -16401,7 +16410,7 @@ dhd_os_check_wakelock_all(dhd_pub_t *pub) if (lock_active) { DHD_ERROR(("%s wakelock c-%d wl-%d wd-%d rx-%d " "ctl-%d intr-%d scan-%d evt-%d, pm-%d, txfl-%d\n", - __FUNCTION__, c, l1, l2, l3, l4, l5, l6, l7, l8, l9)); + __func__, c, l1, l2, l3, l4, l5, l6, l7, l8, l9)); return 1; } #elif defined(BCMSDIO) @@ -16601,7 +16610,7 @@ int dhd_os_wake_lock_restore(dhd_pub_t *pub) void dhd_os_wake_lock_init(struct dhd_info *dhd) { - DHD_TRACE(("%s: initialize wake_lock_counters\n", __FUNCTION__)); + DHD_TRACE(("%s: initialize wake_lock_counters\n", __func__)); dhd->wakelock_counter = 0; dhd->wakelock_rx_timeout_enable = 0; dhd->wakelock_ctrl_timeout_enable = 0; @@ -16627,7 +16636,7 @@ void dhd_os_wake_lock_init(struct dhd_info *dhd) void dhd_os_wake_lock_destroy(struct dhd_info *dhd) { - DHD_TRACE(("%s: deinit wake_lock_counters\n", __FUNCTION__)); + DHD_TRACE(("%s: deinit wake_lock_counters\n", __func__)); #ifdef CONFIG_HAS_WAKELOCK dhd->wakelock_counter = 0; dhd->wakelock_rx_timeout_enable = 0; @@ -16682,7 +16691,7 @@ int dhd_ioctl_entry_local(struct net_device *net, wl_ioctl_t *ioc, int cmd) if (!net || !DEV_PRIV(net)) { DHD_ERROR(("%s invalid parameter net %p dev_priv %p\n", - __FUNCTION__, net, DEV_PRIV(net))); + __func__, net, DEV_PRIV(net))); return -EINVAL; } @@ -16692,7 +16701,7 @@ int dhd_ioctl_entry_local(struct net_device *net, wl_ioctl_t *ioc, int cmd) ifidx = dhd_net2idx(dhd, net); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s bad ifidx\n", __func__)); return -ENODEV; } @@ -16714,7 +16723,7 @@ bool dhd_os_check_hang(dhd_pub_t *dhdp, int ifidx, int ret) net = dhd_idx2net(dhdp, ifidx); if (!net) { - DHD_ERROR(("%s : Invalid index : %d\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s : Invalid index : %d\n", __func__, ifidx)); return -EINVAL; } @@ -16973,7 +16982,7 @@ void dhd_set_cpucore(dhd_pub_t *dhd, int set) int e_dpc = 0, e_rxf = 0, retry_set = 0; if (!(dhd->chan_isvht80)) { - DHD_ERROR(("%s: chan_status(%d) cpucore!!!\n", __FUNCTION__, dhd->chan_isvht80)); + DHD_ERROR(("%s: chan_status(%d) cpucore!!!\n", __func__, dhd->chan_isvht80)); return; } @@ -16987,7 +16996,7 @@ void dhd_set_cpucore(dhd_pub_t *dhd, int set) cpumask_of(PRIMARY_CPUCORE)); } if (retry_set++ > MAX_RETRY_SET_CPUCORE) { - DHD_ERROR(("%s: dpc(%d) invalid cpu!\n", __FUNCTION__, e_dpc)); + DHD_ERROR(("%s: dpc(%d) invalid cpu!\n", __func__, e_dpc)); return; } if (e_dpc < 0) @@ -17004,14 +17013,14 @@ void dhd_set_cpucore(dhd_pub_t *dhd, int set) cpumask_of(PRIMARY_CPUCORE)); } if (retry_set++ > MAX_RETRY_SET_CPUCORE) { - DHD_ERROR(("%s: rxf(%d) invalid cpu!\n", __FUNCTION__, e_rxf)); + DHD_ERROR(("%s: rxf(%d) invalid cpu!\n", __func__, e_rxf)); return; } if (e_rxf < 0) OSL_SLEEP(1); } while (e_rxf < 0); } - DHD_TRACE(("%s: set(%d) cpucore success!\n", __FUNCTION__, set)); + DHD_TRACE(("%s: set(%d) cpucore success!\n", __func__, set)); return; } @@ -17093,7 +17102,7 @@ void dhd_schedule_memdump(dhd_pub_t *dhdp, uint8 *buf, uint32 size) dhd_info = (dhd_info_t *)dhdp->info; dump = (dhd_dump_t *)MALLOC(dhdp->osh, sizeof(dhd_dump_t)); if (dump == NULL) { - DHD_ERROR(("%s: dhd dump memory allocation failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd dump memory allocation failed\n", __func__)); return; } dump->buf = buf; @@ -17144,7 +17153,7 @@ void dhd_schedule_memdump(dhd_pub_t *dhdp, uint8 *buf, uint32 size) sizeof(log_dump_type_t)); if (flush_type) { *flush_type = DLD_BUF_TYPE_ALL; - DHD_ERROR(("%s: calling log dump.. \n", __FUNCTION__)); + DHD_ERROR(("%s: calling log dump.. \n", __func__)); dhd_log_dump(dhdp->info, flush_type, 0); } #endif /* DHD_DUMP_FILE_WRITE_FROM_KERNEL && DHD_LOG_DUMP */ @@ -17159,7 +17168,7 @@ void dhd_schedule_memdump(dhd_pub_t *dhdp, uint8 *buf, uint32 size) DHD_GENERAL_LOCK(dhdp, flags); DHD_BUS_BUSY_SET_IN_MEMDUMP(dhdp); DHD_GENERAL_UNLOCK(dhdp, flags); - DHD_ERROR(("%s: scheduling mem dump.. \n", __FUNCTION__)); + DHD_ERROR(("%s: scheduling mem dump.. \n", __func__)); dhd_deferred_schedule_work(dhdp->info->dhd_deferred_wq, (void *)dump, DHD_WQ_WORK_SOC_RAM_DUMP, (void *)dhd_mem_dump, DHD_WQ_WORK_PRIORITY_HIGH); } @@ -17173,23 +17182,23 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) int ret = 0; dhd_dump_t *dump = NULL; - DHD_ERROR(("%s: ENTER, memdump type %u\n", __FUNCTION__, dhd->pub.memdump_type)); + DHD_ERROR(("%s: ENTER, memdump type %u\n", __func__, dhd->pub.memdump_type)); if (!dhd) { - DHD_ERROR(("%s: dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd is NULL\n", __func__)); return -ENODEV; } dhdp = &dhd->pub; if (!dhdp) { - DHD_ERROR(("%s: dhdp is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdp is NULL\n", __func__)); return -ENODEV; } DHD_GENERAL_LOCK(dhdp, flags); if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(dhdp)) { DHD_GENERAL_UNLOCK(dhdp, flags); - DHD_ERROR(("%s: bus is down! can't collect mem dump. \n", __FUNCTION__)); + DHD_ERROR(("%s: bus is down! can't collect mem dump. \n", __func__)); ret = -ENODEV; goto exit; } @@ -17207,7 +17216,7 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) dump = (dhd_dump_t *)event_info; if (!dump) { - DHD_ERROR(("%s: dump is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dump is NULL\n", __func__)); ret = -EINVAL; goto exit; } @@ -17221,7 +17230,7 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) #ifdef DHD_DUMP_FILE_WRITE_FROM_KERNEL if (write_dump_to_file(&dhd->pub, dump->buf, dump->bufsize, "mem_dump")) { - DHD_ERROR(("%s: writing SoC_RAM dump to the file failed\n", __FUNCTION__)); + DHD_ERROR(("%s: writing SoC_RAM dump to the file failed\n", __func__)); #ifdef DHD_DEBUG_UART dhd->pub.memdump_success = FALSE; #endif /* DHD_DEBUG_UART */ @@ -17241,7 +17250,7 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) sizeof(log_dump_type_t)); if (flush_type) { *flush_type = DLD_BUF_TYPE_ALL; - DHD_ERROR(("%s: calling log dump.. \n", __FUNCTION__)); + DHD_ERROR(("%s: calling log dump.. \n", __func__)); dhd_log_dump(dhd, flush_type, 0); } } @@ -17261,21 +17270,21 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) #endif // endif if (bitmask != 0) { DHD_ERROR(("%s: wait to clear dhd_bus_busy_state: 0x%x\n", - __FUNCTION__, dhdp->dhd_bus_busy_state)); + __func__, dhdp->dhd_bus_busy_state)); timeleft = dhd_os_busbusy_wait_bitmask(dhdp, &dhdp->dhd_bus_busy_state, bitmask, 0); if ((timeleft == 0) || (timeleft == 1)) { DHD_ERROR(("%s: Timed out dhd_bus_busy_state=0x%x\n", - __FUNCTION__, dhdp->dhd_bus_busy_state)); + __func__, dhdp->dhd_bus_busy_state)); } } } if (dump->hscb_buf && dump->hscb_bufsize) { - DHD_ERROR(("%s: write HSCB dump... \n", __FUNCTION__)); + DHD_ERROR(("%s: write HSCB dump... \n", __func__)); if (write_dump_to_file(&dhd->pub, dump->hscb_buf, dump->hscb_bufsize, "mem_dump_hscb")) { - DHD_ERROR(("%s: writing HSCB dump to the file failed\n", __FUNCTION__)); + DHD_ERROR(("%s: writing HSCB dump to the file failed\n", __func__)); #ifdef DHD_DEBUG_UART dhd->pub.memdump_success = FALSE; #endif /* DHD_DEBUG_UART */ @@ -17283,7 +17292,7 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) } #endif /* DHD_DUMP_FILE_WRITE_FROM_KERNEL */ - DHD_ERROR(("%s: memdump type %u\n", __FUNCTION__, dhd->pub.memdump_type)); + DHD_ERROR(("%s: memdump type %u\n", __func__, dhd->pub.memdump_type)); if (dhd->pub.memdump_enabled == DUMP_MEMFILE_BUGON && #ifdef DHD_LOG_DUMP dhd->pub.memdump_type != DUMP_TYPE_BY_SYSDUMP && @@ -17304,10 +17313,10 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) printf("%s\n", info_string); printf("MAC %pM\n", &dhdp->mac); - DHD_ERROR(("%s: call BUG_ON \n", __FUNCTION__)); + DHD_ERROR(("%s: call BUG_ON \n", __func__)); // BUG_ON(1); } - DHD_ERROR(("%s: No BUG ON, memdump type %u \n", __FUNCTION__, dhd->pub.memdump_type)); + DHD_ERROR(("%s: No BUG ON, memdump type %u \n", __func__, dhd->pub.memdump_type)); exit: if (dump) { @@ -17319,11 +17328,11 @@ dhd_mem_dump(void *handle, void *event_info, u8 event) DHD_GENERAL_UNLOCK(dhdp, flags); dhd->scheduled_memdump = FALSE; if (dhdp->hang_was_pending) { - DHD_ERROR(("%s: Send pending HANG event...\n", __FUNCTION__)); + DHD_ERROR(("%s: Send pending HANG event...\n", __func__)); dhd_os_send_hang_message(dhdp); dhdp->hang_was_pending = 0; } - DHD_ERROR(("%s: EXIT \n", __FUNCTION__)); + DHD_ERROR(("%s: EXIT \n", __func__)); return ret; } #endif /* DHD_FW_COREDUMP */ @@ -17415,10 +17424,10 @@ dhd_sssr_dump_to_file(dhd_info_t* dhdinfo) unsigned long flags = 0; uint dig_buf_size = 0; - DHD_ERROR(("%s: ENTER \n", __FUNCTION__)); + DHD_ERROR(("%s: ENTER \n", __func__)); if (!dhd) { - DHD_ERROR(("%s: dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd is NULL\n", __func__)); return; } @@ -17428,7 +17437,7 @@ dhd_sssr_dump_to_file(dhd_info_t* dhdinfo) DHD_BUS_BUSY_SET_IN_SSSRDUMP(dhdp); if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(dhdp)) { DHD_GENERAL_UNLOCK(dhdp, flags); - DHD_ERROR(("%s: bus is down! can't collect sssr dump. \n", __FUNCTION__)); + DHD_ERROR(("%s: bus is down! can't collect sssr dump. \n", __func__)); goto exit; } DHD_GENERAL_UNLOCK(dhdp, flags); @@ -17448,14 +17457,14 @@ dhd_sssr_dump_to_file(dhd_info_t* dhdinfo) if (write_dump_to_file(dhdp, (uint8 *)dhdp->sssr_d11_before[i], dhdp->sssr_reg_info.mac_regs[i].sr_size, before_sr_dump)) { DHD_ERROR(("%s: writing SSSR MAIN dump before to the file failed\n", - __FUNCTION__)); + __func__)); } } if (dhdp->sssr_d11_after[i] && dhdp->sssr_d11_outofreset[i]) { if (write_dump_to_file(dhdp, (uint8 *)dhdp->sssr_d11_after[i], dhdp->sssr_reg_info.mac_regs[i].sr_size, after_sr_dump)) { DHD_ERROR(("%s: writing SSSR AUX dump after to the file failed\n", - __FUNCTION__)); + __func__)); } } } @@ -17471,7 +17480,7 @@ dhd_sssr_dump_to_file(dhd_info_t* dhdinfo) if (write_dump_to_file(dhdp, (uint8 *)dhdp->sssr_dig_buf_before, dig_buf_size, "sssr_dump_dig_before_SR")) { DHD_ERROR(("%s: writing SSSR Dig dump before to the file failed\n", - __FUNCTION__)); + __func__)); } } @@ -17479,7 +17488,7 @@ dhd_sssr_dump_to_file(dhd_info_t* dhdinfo) if (write_dump_to_file(dhdp, (uint8 *)dhdp->sssr_dig_buf_after, dig_buf_size, "sssr_dump_dig_after_SR")) { DHD_ERROR(("%s: writing SSSR Dig VASIP dump after to the file failed\n", - __FUNCTION__)); + __func__)); } } @@ -17513,7 +17522,7 @@ dhd_write_sssr_dump(dhd_pub_t *dhdp, uint32 dump_mode) * With workqueue - all other DUMP_TYPEs : dhd_mem_dump is called in workqueue * Thus, it doesn't neeed to dump SSSR in workqueue */ - DHD_ERROR(("%s: writing sssr dump to file... \n", __FUNCTION__)); + DHD_ERROR(("%s: writing sssr dump to file... \n", __func__)); dhd_sssr_dump_to_file(dhdp->info); } @@ -17527,7 +17536,7 @@ dhd_log_dump(void *handle, void *event_info, u8 event) log_dump_type_t *type = (log_dump_type_t *)event_info; if (!dhd || !type) { - DHD_ERROR(("%s: dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd is NULL\n", __func__)); return; } @@ -17546,11 +17555,11 @@ dhd_log_dump(void *handle, void *event_info, u8 event) * essential for debugging. Hence a mutex lock is acquired * before calling do_dhd_log_dump(). */ - DHD_ERROR(("%s: calling log dump.. \n", __FUNCTION__)); + DHD_ERROR(("%s: calling log dump.. \n", __func__)); dhd_os_logdump_lock(&dhd->pub); DHD_OS_WAKE_LOCK(&dhd->pub); if (do_dhd_log_dump(&dhd->pub, type) != BCME_OK) { - DHD_ERROR(("%s: writing debug dump to the file failed\n", __FUNCTION__)); + DHD_ERROR(("%s: writing debug dump to the file failed\n", __func__)); } DHD_OS_WAKE_UNLOCK(&dhd->pub); dhd_os_logdump_unlock(&dhd->pub); @@ -17558,7 +17567,7 @@ dhd_log_dump(void *handle, void *event_info, u8 event) void dhd_schedule_log_dump(dhd_pub_t *dhdp, void *type) { - DHD_ERROR(("%s: scheduling log dump.. \n", __FUNCTION__)); + DHD_ERROR(("%s: scheduling log dump.. \n", __func__)); dhd_deferred_schedule_work(dhdp->info->dhd_deferred_wq, type, DHD_WQ_WORK_DHD_LOG_DUMP, dhd_log_dump, DHD_WQ_WORK_PRIORITY_HIGH); @@ -17678,14 +17687,14 @@ dhdpcie_sssr_dump_get_before_after_len(dhd_pub_t *dhd, uint32 *arr_len) { int i = 0; - DHD_ERROR(("%s\n", __FUNCTION__)); + DHD_ERROR(("%s\n", __func__)); /* core 0 */ i = 0; if (dhd->sssr_d11_before[i] && dhd->sssr_d11_outofreset[i] && (dhd->sssr_dump_mode == SSSR_DUMP_MODE_SSSR)) { arr_len[SSSR_C0_D11_BEFORE] = (dhd->sssr_reg_info.mac_regs[i].sr_size); - DHD_ERROR(("%s: arr_len[SSSR_C0_D11_BEFORE] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_C0_D11_BEFORE] : %d\n", __func__, arr_len[SSSR_C0_D11_BEFORE])); #ifdef DHD_LOG_DUMP dhd_print_buf_addr(dhd, "SSSR_C0_D11_BEFORE", @@ -17694,7 +17703,7 @@ dhdpcie_sssr_dump_get_before_after_len(dhd_pub_t *dhd, uint32 *arr_len) } if (dhd->sssr_d11_after[i] && dhd->sssr_d11_outofreset[i]) { arr_len[SSSR_C0_D11_AFTER] = (dhd->sssr_reg_info.mac_regs[i].sr_size); - DHD_ERROR(("%s: arr_len[SSSR_C0_D11_AFTER] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_C0_D11_AFTER] : %d\n", __func__, arr_len[SSSR_C0_D11_AFTER])); #ifdef DHD_LOG_DUMP dhd_print_buf_addr(dhd, "SSSR_C0_D11_AFTER", @@ -17707,7 +17716,7 @@ dhdpcie_sssr_dump_get_before_after_len(dhd_pub_t *dhd, uint32 *arr_len) if (dhd->sssr_d11_before[i] && dhd->sssr_d11_outofreset[i] && (dhd->sssr_dump_mode == SSSR_DUMP_MODE_SSSR)) { arr_len[SSSR_C1_D11_BEFORE] = (dhd->sssr_reg_info.mac_regs[i].sr_size); - DHD_ERROR(("%s: arr_len[SSSR_C1_D11_BEFORE] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_C1_D11_BEFORE] : %d\n", __func__, arr_len[SSSR_C1_D11_BEFORE])); #ifdef DHD_LOG_DUMP dhd_print_buf_addr(dhd, "SSSR_C1_D11_BEFORE", @@ -17716,7 +17725,7 @@ dhdpcie_sssr_dump_get_before_after_len(dhd_pub_t *dhd, uint32 *arr_len) } if (dhd->sssr_d11_after[i] && dhd->sssr_d11_outofreset[i]) { arr_len[SSSR_C1_D11_AFTER] = (dhd->sssr_reg_info.mac_regs[i].sr_size); - DHD_ERROR(("%s: arr_len[SSSR_C1_D11_AFTER] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_C1_D11_AFTER] : %d\n", __func__, arr_len[SSSR_C1_D11_AFTER])); #ifdef DHD_LOG_DUMP dhd_print_buf_addr(dhd, "SSSR_C1_D11_AFTER", @@ -17727,9 +17736,9 @@ dhdpcie_sssr_dump_get_before_after_len(dhd_pub_t *dhd, uint32 *arr_len) if (dhd->sssr_reg_info.vasip_regs.vasip_sr_size) { arr_len[SSSR_DIG_BEFORE] = (dhd->sssr_reg_info.vasip_regs.vasip_sr_size); arr_len[SSSR_DIG_AFTER] = (dhd->sssr_reg_info.vasip_regs.vasip_sr_size); - DHD_ERROR(("%s: arr_len[SSSR_DIG_BEFORE] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_DIG_BEFORE] : %d\n", __func__, arr_len[SSSR_DIG_BEFORE])); - DHD_ERROR(("%s: arr_len[SSSR_DIG_AFTER] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_DIG_AFTER] : %d\n", __func__, arr_len[SSSR_DIG_AFTER])); #ifdef DHD_LOG_DUMP if (dhd->sssr_dig_buf_before) { @@ -17745,9 +17754,9 @@ dhdpcie_sssr_dump_get_before_after_len(dhd_pub_t *dhd, uint32 *arr_len) dhd->sssr_reg_info.dig_mem_info.dig_sr_addr) { arr_len[SSSR_DIG_BEFORE] = (dhd->sssr_reg_info.dig_mem_info.dig_sr_size); arr_len[SSSR_DIG_AFTER] = (dhd->sssr_reg_info.dig_mem_info.dig_sr_size); - DHD_ERROR(("%s: arr_len[SSSR_DIG_BEFORE] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_DIG_BEFORE] : %d\n", __func__, arr_len[SSSR_DIG_BEFORE])); - DHD_ERROR(("%s: arr_len[SSSR_DIG_AFTER] : %d\n", __FUNCTION__, + DHD_ERROR(("%s: arr_len[SSSR_DIG_AFTER] : %d\n", __func__, arr_len[SSSR_DIG_AFTER])); #ifdef DHD_LOG_DUMP if (dhd->sssr_dig_buf_before) { @@ -17854,7 +17863,7 @@ dhd_get_dhd_dump_len(void *ndev, dhd_pub_t *dhdp) remain_len = dhd_dump(dhdp, (char *)dhdp->concise_dbg_buf, CONCISE_DUMP_BUFLEN); if (remain_len <= 0) { DHD_ERROR(("%s: error getting concise debug info !\n", - __FUNCTION__)); + __func__)); return length; } length = (strlen(DHD_DUMP_LOG_HDR) + sizeof(sec_hdr) + @@ -17906,7 +17915,7 @@ dhd_get_flowring_len(void *ndev, dhd_pub_t *dhdp) remain_len = dhd_dump(dhdp, (char *)dhdp->concise_dbg_buf, CONCISE_DUMP_BUFLEN); if (remain_len <= 0) { DHD_ERROR(("%s: error getting concise debug info !\n", - __FUNCTION__)); + __func__)); return length; } } @@ -18000,7 +18009,7 @@ dhd_get_dld_log_dump(void *dev, dhd_pub_t *dhdp, const void *user_buf, return BCME_ERROR; } - DHD_ERROR(("%s: ENTER \n", __FUNCTION__)); + DHD_ERROR(("%s: ENTER \n", __func__)); dhd_init_sec_hdr(&sec_hdr); @@ -18515,12 +18524,12 @@ do_dhd_log_dump(dhd_pub_t *dhdp, log_dump_type_t *type) unsigned int len = 0; log_dump_section_hdr_t sec_hdr; - DHD_ERROR(("%s: ENTER \n", __FUNCTION__)); + DHD_ERROR(("%s: ENTER \n", __func__)); DHD_GENERAL_LOCK(dhdp, flags); if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(dhdp)) { DHD_GENERAL_UNLOCK(dhdp, flags); - DHD_ERROR(("%s: bus is down! can't collect log dump. \n", __FUNCTION__)); + DHD_ERROR(("%s: bus is down! can't collect log dump. \n", __func__)); goto exit1; } DHD_BUS_BUSY_SET_IN_LOGDUMP(dhdp); @@ -18558,7 +18567,7 @@ do_dhd_log_dump(dhd_pub_t *dhdp, log_dump_type_t *type) /* If android installed image, try '/data' directory */ #if defined(CONFIG_X86) DHD_ERROR(("%s: File open error on Installed android image, trying /data...\n", - __FUNCTION__)); + __func__)); snprintf(dump_path, sizeof(dump_path), "/data/" DHD_DEBUG_DUMP_TYPE); if (!dhdp->logdump_periodic_flush) { snprintf(dump_path + strlen(dump_path), @@ -18723,7 +18732,7 @@ do_dhd_log_dump(dhd_pub_t *dhdp, log_dump_type_t *type) if (!IS_ERR(fp) && fp != NULL) { filp_close(fp, NULL); DHD_ERROR(("%s: Finished writing log dump to file - '%s' \n", - __FUNCTION__, dump_path)); + __func__, dump_path)); } #if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0)) set_fs(old_fs); @@ -18805,13 +18814,13 @@ dhd_os_socram_dump(struct net_device *dev, uint32 *dump_size) dhd_pub_t *dhdp = &dhd->pub; if (dhdp->busstate == DHD_BUS_DOWN) { - DHD_ERROR(("%s: bus is down\n", __FUNCTION__)); + DHD_ERROR(("%s: bus is down\n", __func__)); return BCME_ERROR; } if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(dhdp)) { DHD_ERROR(("%s: bus is in suspend(%d) or suspending(0x%x) state, so skip\n", - __FUNCTION__, dhdp->busstate, dhdp->dhd_bus_busy_state)); + __func__, dhdp->busstate, dhdp->dhd_bus_busy_state)); return BCME_ERROR; } ret = dhd_common_socram_dump(dhdp); @@ -18881,7 +18890,7 @@ dhd_os_get_axi_error_dump(void *dev, const void *user_buf, uint32 len) dhd_pub_t *dhdp = &dhd->pub; loff_t pos = 0; if (user_buf == NULL) { - DHD_ERROR(("%s(): user buffer is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s(): user buffer is NULL\n", __func__)); return BCME_ERROR; } @@ -18889,7 +18898,7 @@ dhd_os_get_axi_error_dump(void *dev, const void *user_buf, uint32 len) NULL, user_buf, sizeof(dhd_axi_error_dump_t), &pos); if (ret < 0) { - DHD_ERROR(("%s(): fail to dump pktlog, err = %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s(): fail to dump pktlog, err = %d\n", __func__, ret)); return ret; } return ret; @@ -18902,7 +18911,7 @@ dhd_os_get_axi_error_dump_size(struct net_device *dev) size = sizeof(dhd_axi_error_dump_t); if (size < 0) { - DHD_ERROR(("%s(): fail to get axi error size, err = %d\n", __FUNCTION__, size)); + DHD_ERROR(("%s(): fail to get axi error size, err = %d\n", __func__, size)); } return size; } @@ -19127,7 +19136,7 @@ int dhd_xps_cpus_enable(struct net_device *net, int enable) ifidx = dhd_net2idx(dhd, net); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s bad ifidx\n", __func__)); return -ENODEV; } @@ -19136,30 +19145,30 @@ int dhd_xps_cpus_enable(struct net_device *net, int enable) if (ifidx == PRIMARY_INF) { if (dhd->pub.op_mode == DHD_FLAG_IBSS_MODE) { - DHD_INFO(("%s : set for IBSS.\n", __FUNCTION__)); + DHD_INFO(("%s : set for IBSS.\n", __func__)); XPS_CPU_SETBUF = RPS_CPUS_MASK_IBSS; } else { - DHD_INFO(("%s : set for BSS.\n", __FUNCTION__)); + DHD_INFO(("%s : set for BSS.\n", __func__)); XPS_CPU_SETBUF = RPS_CPUS_MASK; } } else if (ifidx == VIRTUAL_INF) { - DHD_INFO(("%s : set for P2P.\n", __FUNCTION__)); + DHD_INFO(("%s : set for P2P.\n", __func__)); XPS_CPU_SETBUF = RPS_CPUS_MASK_P2P; } else { - DHD_ERROR(("%s : Invalid index : %d.\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s : Invalid index : %d.\n", __func__, ifidx)); return -EINVAL; } ifp = dhd->iflist[ifidx]; if (ifp) { if (enable) { - DHD_INFO(("%s : set xps_cpus as [%s]\n", __FUNCTION__, XPS_CPU_SETBUF)); + DHD_INFO(("%s : set xps_cpus as [%s]\n", __func__, XPS_CPU_SETBUF)); custom_xps_map_set(ifp->net, XPS_CPU_SETBUF, strlen(XPS_CPU_SETBUF)); } else { custom_xps_map_clear(ifp->net); } } else { - DHD_ERROR(("%s : ifp is NULL!!\n", __FUNCTION__)); + DHD_ERROR(("%s : ifp is NULL!!\n", __func__)); return -ENODEV; } return BCME_OK; @@ -19170,17 +19179,17 @@ int custom_xps_map_set(struct net_device *net, char *buf, size_t len) cpumask_var_t mask; int err; - DHD_INFO(("%s : Entered.\n", __FUNCTION__)); + DHD_INFO(("%s : Entered.\n", __func__)); if (!alloc_cpumask_var(&mask, GFP_KERNEL)) { - DHD_ERROR(("%s : alloc_cpumask_var fail.\n", __FUNCTION__)); + DHD_ERROR(("%s : alloc_cpumask_var fail.\n", __func__)); return -ENOMEM; } err = bitmap_parse(buf, len, cpumask_bits(mask), nr_cpumask_bits); if (err) { free_cpumask_var(mask); - DHD_ERROR(("%s : bitmap_parse fail.\n", __FUNCTION__)); + DHD_ERROR(("%s : bitmap_parse fail.\n", __func__)); return err; } @@ -19198,7 +19207,7 @@ void custom_xps_map_clear(struct net_device *net) { struct xps_dev_maps *dev_maps; - DHD_INFO(("%s : Entered.\n", __FUNCTION__)); + DHD_INFO(("%s : Entered.\n", __func__)); rcu_read_lock(); dev_maps = rcu_dereference(net->xps_maps); @@ -19207,7 +19216,7 @@ void custom_xps_map_clear(struct net_device *net) if (dev_maps) { RCU_INIT_POINTER(net->xps_maps, NULL); kfree_rcu(dev_maps, rcu); - DHD_INFO(("%s : xps_cpus map clear.\n", __FUNCTION__)); + DHD_INFO(("%s : xps_cpus map clear.\n", __func__)); } } #endif // endif @@ -19222,7 +19231,7 @@ int dhd_rps_cpus_enable(struct net_device *net, int enable) ifidx = dhd_net2idx(dhd, net); if (ifidx == DHD_BAD_IF) { - DHD_ERROR(("%s bad ifidx\n", __FUNCTION__)); + DHD_ERROR(("%s bad ifidx\n", __func__)); return -ENODEV; } @@ -19231,30 +19240,30 @@ int dhd_rps_cpus_enable(struct net_device *net, int enable) if (ifidx == PRIMARY_INF) { if (dhd->pub.op_mode == DHD_FLAG_IBSS_MODE) { - DHD_INFO(("%s : set for IBSS.\n", __FUNCTION__)); + DHD_INFO(("%s : set for IBSS.\n", __func__)); RPS_CPU_SETBUF = RPS_CPUS_MASK_IBSS; } else { - DHD_INFO(("%s : set for BSS.\n", __FUNCTION__)); + DHD_INFO(("%s : set for BSS.\n", __func__)); RPS_CPU_SETBUF = RPS_CPUS_MASK; } } else if (ifidx == VIRTUAL_INF) { - DHD_INFO(("%s : set for P2P.\n", __FUNCTION__)); + DHD_INFO(("%s : set for P2P.\n", __func__)); RPS_CPU_SETBUF = RPS_CPUS_MASK_P2P; } else { - DHD_ERROR(("%s : Invalid index : %d.\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s : Invalid index : %d.\n", __func__, ifidx)); return -EINVAL; } ifp = dhd->iflist[ifidx]; if (ifp) { if (enable) { - DHD_INFO(("%s : set rps_cpus as [%s]\n", __FUNCTION__, RPS_CPU_SETBUF)); + DHD_INFO(("%s : set rps_cpus as [%s]\n", __func__, RPS_CPU_SETBUF)); custom_rps_map_set(ifp->net->_rx, RPS_CPU_SETBUF, strlen(RPS_CPU_SETBUF)); } else { custom_rps_map_clear(ifp->net->_rx); } } else { - DHD_ERROR(("%s : ifp is NULL!!\n", __FUNCTION__)); + DHD_ERROR(("%s : ifp is NULL!!\n", __func__)); return -ENODEV; } return BCME_OK; @@ -19267,17 +19276,17 @@ int custom_rps_map_set(struct netdev_rx_queue *queue, char *buf, size_t len) int err, cpu, i; static DEFINE_SPINLOCK(rps_map_lock); - DHD_INFO(("%s : Entered.\n", __FUNCTION__)); + DHD_INFO(("%s : Entered.\n", __func__)); if (!alloc_cpumask_var(&mask, GFP_KERNEL)) { - DHD_ERROR(("%s : alloc_cpumask_var fail.\n", __FUNCTION__)); + DHD_ERROR(("%s : alloc_cpumask_var fail.\n", __func__)); return -ENOMEM; } err = bitmap_parse(buf, len, cpumask_bits(mask), nr_cpumask_bits); if (err) { free_cpumask_var(mask); - DHD_ERROR(("%s : bitmap_parse fail.\n", __FUNCTION__)); + DHD_ERROR(("%s : bitmap_parse fail.\n", __func__)); return err; } @@ -19286,7 +19295,7 @@ int custom_rps_map_set(struct netdev_rx_queue *queue, char *buf, size_t len) GFP_KERNEL); if (!map) { free_cpumask_var(mask); - DHD_ERROR(("%s : map malloc fail.\n", __FUNCTION__)); + DHD_ERROR(("%s : map malloc fail.\n", __func__)); return -ENOMEM; } @@ -19301,7 +19310,7 @@ int custom_rps_map_set(struct netdev_rx_queue *queue, char *buf, size_t len) kfree(map); map = NULL; free_cpumask_var(mask); - DHD_ERROR(("%s : mapping cpu fail.\n", __FUNCTION__)); + DHD_ERROR(("%s : mapping cpu fail.\n", __func__)); return -1; } @@ -19320,7 +19329,7 @@ int custom_rps_map_set(struct netdev_rx_queue *queue, char *buf, size_t len) } free_cpumask_var(mask); - DHD_INFO(("%s : Done. mapping cpu nummber : %d\n", __FUNCTION__, map->len)); + DHD_INFO(("%s : Done. mapping cpu nummber : %d\n", __func__, map->len)); return map->len; } @@ -19328,13 +19337,13 @@ void custom_rps_map_clear(struct netdev_rx_queue *queue) { struct rps_map *map; - DHD_INFO(("%s : Entered.\n", __FUNCTION__)); + DHD_INFO(("%s : Entered.\n", __func__)); map = rcu_dereference_protected(queue->rps_map, 1); if (map) { RCU_INIT_POINTER(queue->rps_map, NULL); kfree_rcu(map, rcu); - DHD_INFO(("%s : rps_cpus map clear.\n", __FUNCTION__)); + DHD_INFO(("%s : rps_cpus map clear.\n", __func__)); } } #endif // endif @@ -19351,7 +19360,7 @@ argos_register_notifier_init(struct net_device *net) { int ret = 0; - DHD_INFO(("DHD: %s: \n", __FUNCTION__)); + DHD_INFO(("DHD: %s: \n", __func__)); argos_rps_ctrl_data.wlan_primary_netdev = net; argos_rps_ctrl_data.argos_rps_cpus_enabled = 0; @@ -19391,10 +19400,10 @@ argos_register_notifier_init(struct net_device *net) int argos_register_notifier_deinit(void) { - DHD_INFO(("DHD: %s: \n", __FUNCTION__)); + DHD_INFO(("DHD: %s: \n", __func__)); if (argos_rps_ctrl_data.wlan_primary_netdev == NULL) { - DHD_ERROR(("DHD: primary_net_dev is null %s: \n", __FUNCTION__)); + DHD_ERROR(("DHD: primary_net_dev is null %s: \n", __func__)); return -1; } #ifndef DHD_LB @@ -19426,7 +19435,7 @@ argos_status_notifier_wifi_cb(struct notifier_block *notifier, #if defined(ARGOS_NOTIFY_CB) unsigned int pcie_irq = 0; #endif /* ARGOS_NOTIFY_CB */ - DHD_INFO(("DHD: %s: speed=%ld\n", __FUNCTION__, speed)); + DHD_INFO(("DHD: %s: speed=%ld\n", __func__, speed)); if (argos_rps_ctrl_data.wlan_primary_netdev == NULL) { goto exit; @@ -19456,7 +19465,7 @@ argos_status_notifier_wifi_cb(struct notifier_block *notifier, RPS_CPUS_MASK, strlen(RPS_CPUS_MASK)); } else { DHD_ERROR(("DHD: %s: RPS_Set fail," - " Core=%d Offline\n", __FUNCTION__, + " Core=%d Offline\n", __func__, RPS_CPUS_WLAN_CORE_ID)); err = -1; } @@ -19464,20 +19473,20 @@ argos_status_notifier_wifi_cb(struct notifier_block *notifier, if (err < 0) { DHD_ERROR(("DHD: %s: Failed to RPS_CPUs. " "speed=%ld, error=%d\n", - __FUNCTION__, speed, err)); + __func__, speed, err)); } else { #endif /* !DHD_LB */ #if (defined(DHDTCPACK_SUPPRESS) && defined(BCMPCIE)) if (dhdp->tcpack_sup_mode != TCPACK_SUP_HOLD) { DHD_ERROR(("%s : set ack suppress. TCPACK_SUP_ON(%d)\n", - __FUNCTION__, TCPACK_SUP_HOLD)); + __func__, TCPACK_SUP_HOLD)); dhd_tcpack_suppress_set(dhdp, TCPACK_SUP_HOLD); } #endif /* DHDTCPACK_SUPPRESS && BCMPCIE */ argos_rps_ctrl_data.argos_rps_cpus_enabled = 1; #ifndef DHD_LB DHD_ERROR(("DHD: %s: Set RPS_CPUs, speed=%ld\n", - __FUNCTION__, speed)); + __func__, speed)); } #endif /* !DHD_LB */ } @@ -19486,7 +19495,7 @@ argos_status_notifier_wifi_cb(struct notifier_block *notifier, #if (defined(DHDTCPACK_SUPPRESS) && defined(BCMPCIE)) if (dhdp->tcpack_sup_mode != TCPACK_SUP_OFF) { DHD_ERROR(("%s : set ack suppress. TCPACK_SUP_OFF\n", - __FUNCTION__)); + __func__)); dhd_tcpack_suppress_set(dhdp, TCPACK_SUP_OFF); } #endif /* DHDTCPACK_SUPPRESS && BCMPCIE */ @@ -19495,7 +19504,7 @@ argos_status_notifier_wifi_cb(struct notifier_block *notifier, * if Load Balance is enabled */ custom_rps_map_clear(argos_rps_ctrl_data.wlan_primary_netdev->_rx); - DHD_ERROR(("DHD: %s: Clear RPS_CPUs, speed=%ld\n", __FUNCTION__, speed)); + DHD_ERROR(("DHD: %s: Clear RPS_CPUs, speed=%ld\n", __func__, speed)); OSL_SLEEP(DELAY_TO_CLEAR_RPS_CPUS); #endif /* !DHD_LB */ argos_rps_ctrl_data.argos_rps_cpus_enabled = 0; @@ -19510,7 +19519,7 @@ int argos_status_notifier_p2p_cb(struct notifier_block *notifier, unsigned long speed, void *v) { - DHD_INFO(("DHD: %s: speed=%ld\n", __FUNCTION__, speed)); + DHD_INFO(("DHD: %s: speed=%ld\n", __func__, speed)); return argos_status_notifier_wifi_cb(notifier, speed, v); } #endif // endif @@ -19523,7 +19532,7 @@ dhd_page_corrupt_cb(void *handle, void *addr_corrupt, size_t len) dhd_pub_t *dhdp = (dhd_pub_t *)handle; DHD_ERROR(("%s: Got dhd_page_corrupt_cb 0x%p %d\n", - __FUNCTION__, addr_corrupt, (uint32)len)); + __func__, addr_corrupt, (uint32)len)); DHD_OS_WAKE_LOCK(dhdp); prhex("Page Corruption:", addr_corrupt, len); @@ -19543,7 +19552,7 @@ EXPORT_SYMBOL(dhd_page_corrupt_cb); void dhd_pktid_error_handler(dhd_pub_t *dhdp) { - DHD_ERROR(("%s: Got Pkt Id Audit failure \n", __FUNCTION__)); + DHD_ERROR(("%s: Got Pkt Id Audit failure \n", __func__)); DHD_OS_WAKE_LOCK(dhdp); dhd_dump_to_kernelog(dhdp); #ifdef DHD_FW_COREDUMP @@ -19637,13 +19646,13 @@ dhd_send_msg_to_daemon(struct sk_buff *skb, void *data, int size) } if ((skb_out = nlmsg_new(size, 0)) == NULL) { - DHD_ERROR(("%s: skb alloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: skb alloc failed\n", __func__)); ret = BCME_NOMEM; goto err; } nlh = nlmsg_put(skb_out, 0, 0, NLMSG_DONE, size, 0); if (nlh == NULL) { - DHD_ERROR(("%s: nlmsg_put failed\n", __FUNCTION__)); + DHD_ERROR(("%s: nlmsg_put failed\n", __func__)); goto err; } NETLINK_CB(skb_out).dst_group = 0; /* Unicast */ @@ -19720,7 +19729,7 @@ dhd_log_dump_init(dhd_pub_t *dhd) #ifdef CONFIG_LOG_BUF_SHIFT DHD_ERROR(("%s: kernel log buf size = %uKB; logdump_prsrv_tailsize = %uKB;" " limit prsrv tail size to = %uKB\n", - __FUNCTION__, (1 << CONFIG_LOG_BUF_SHIFT)/1024, + __func__, (1 << CONFIG_LOG_BUF_SHIFT)/1024, logdump_prsrv_tailsize/1024, LOG_DUMP_KERNEL_TAIL_FLUSH_SIZE/1024)); if (logdump_prsrv_tailsize > LOG_DUMP_KERNEL_TAIL_FLUSH_SIZE) { @@ -19728,7 +19737,7 @@ dhd_log_dump_init(dhd_pub_t *dhd) } #else DHD_ERROR(("%s: logdump_prsrv_tailsize = %uKB \n", - __FUNCTION__, logdump_prsrv_tailsize/1024); + __func__, logdump_prsrv_tailsize/1024); #endif /* CONFIG_LOG_BUF_SHIFT */ mutex_init(&dhd_info->logdump_lock); @@ -19747,7 +19756,7 @@ dhd_log_dump_init(dhd_pub_t *dhd) dld_buf_special = &g_dld_buf[DLD_BUF_TYPE_SPECIAL]; #if defined(CONFIG_DHD_USE_STATIC_BUF) && defined(DHD_USE_STATIC_MEMDUMP) DHD_ERROR(("%s : Try to allocate memory total(%d) special(%d)\n", - __FUNCTION__, LOG_DUMP_TOTAL_BUFSIZE, LOG_DUMP_SPECIAL_MAX_BUFSIZE)); + __func__, LOG_DUMP_TOTAL_BUFSIZE, LOG_DUMP_SPECIAL_MAX_BUFSIZE)); prealloc_buf = DHD_OS_PREALLOC(dhd, prealloc_idx++, LOG_DUMP_TOTAL_BUFSIZE); dld_buf_special->buffer = DHD_OS_PREALLOC(dhd, prealloc_idx++, dld_buf_size[DLD_BUF_TYPE_SPECIAL]); @@ -19794,7 +19803,7 @@ dhd_log_dump_init(dhd_pub_t *dhd) bufptr, TRUE); if (ret != BCME_OK) { DHD_ERROR(("%s: unable to init ecntr ring !\n", - __FUNCTION__)); + __func__)); goto fail; } DHD_DBG_RING_LOCK(ring->lock, flags); @@ -19817,7 +19826,7 @@ dhd_log_dump_init(dhd_pub_t *dhd) bufptr, TRUE); if (ret != BCME_OK) { DHD_ERROR(("%s: unable to init ecntr ring !\n", - __FUNCTION__)); + __func__)); goto fail; } DHD_DBG_RING_LOCK(ring->lock, flags); @@ -19838,14 +19847,14 @@ dhd_log_dump_init(dhd_pub_t *dhd) dhd->concise_dbg_buf = MALLOC(dhd->osh, CONCISE_DUMP_BUFLEN); if (!dhd->concise_dbg_buf) { DHD_ERROR(("%s: unable to alloc mem for concise debug info !\n", - __FUNCTION__)); + __func__)); goto fail; } cookie_buf = MALLOC(dhd->osh, LOG_DUMP_COOKIE_BUFSIZE); if (!cookie_buf) { DHD_ERROR(("%s: unable to alloc mem for logdump cookie buffer\n", - __FUNCTION__)); + __func__)); goto fail; } ret = dhd_logdump_cookie_init(dhd, cookie_buf, LOG_DUMP_COOKIE_BUFSIZE); @@ -20000,7 +20009,7 @@ dhd_log_dump_write(int type, char *binary_data, if (type < 0 || type >= DLD_BUFFER_NUM) { DHD_INFO(("%s: Unknown DHD_LOG_DUMP_BUF_TYPE(%d).\n", - __FUNCTION__, type)); + __func__, type)); return; } @@ -20132,10 +20141,10 @@ dhd_debug_uart_exec(dhd_pub_t *dhdp, char *cmd) FALSE) { dhdp->info->duart_execute = TRUE; DHD_ERROR(("DHD: %s - execute %s %s\n", - __FUNCTION__, DHD_DEBUG_UART_EXEC_PATH, cmd)); + __func__, DHD_DEBUG_UART_EXEC_PATH, cmd)); ret = call_usermodehelper(argv[0], argv, envp, UMH_WAIT_PROC); DHD_ERROR(("DHD: %s - %s %s ret = %d\n", - __FUNCTION__, DHD_DEBUG_UART_EXEC_PATH, cmd, ret)); + __func__, DHD_DEBUG_UART_EXEC_PATH, cmd, ret)); dhdp->info->duart_execute = FALSE; #ifdef DHD_LOG_DUMP @@ -20157,11 +20166,11 @@ dhd_set_blob_support(dhd_pub_t *dhdp, char *fw_path) char *filepath = VENDOR_PATH CONFIG_BCMDHD_CLM_PATH; fp = filp_open(filepath, O_RDONLY, 0); if (IS_ERR(fp)) { - DHD_ERROR(("%s: ----- blob file doesn't exist (%s) -----\n", __FUNCTION__, + DHD_ERROR(("%s: ----- blob file doesn't exist (%s) -----\n", __func__, filepath)); dhdp->is_blob = FALSE; } else { - DHD_ERROR(("%s: ----- blob file exists (%s)-----\n", __FUNCTION__, filepath)); + DHD_ERROR(("%s: ----- blob file exists (%s)-----\n", __func__, filepath)); dhdp->is_blob = TRUE; #if defined(CONCATE_BLOB) strncat(fw_path, "_blob", strlen("_blob")); @@ -20182,15 +20191,15 @@ dmaxfer_free_dmaaddr_handler(void *handle, void *event_info, u8 event) dhd_info_t *dhd_info = (dhd_info_t *)handle; if (event != DHD_WQ_WORK_DMA_LB_MEM_REL) { - DHD_ERROR(("%s: Unexpected event \n", __FUNCTION__)); + DHD_ERROR(("%s: Unexpected event \n", __func__)); return; } if (dhd_info == NULL) { - DHD_ERROR(("%s: Invalid dhd_info\n", __FUNCTION__)); + DHD_ERROR(("%s: Invalid dhd_info\n", __func__)); return; } if (dmmap == NULL) { - DHD_ERROR(("%s: dmmap is null\n", __FUNCTION__)); + DHD_ERROR(("%s: dmmap is null\n", __func__)); return; } dmaxfer_free_prev_dmaaddr(&dhd_info->pub, dmmap); @@ -20214,19 +20223,19 @@ dhd_set_irq_cpucore(dhd_pub_t *dhdp, int affinity_cmd) unsigned int pcie_irq = 0; if (!dhdp) { - DHD_ERROR(("%s : dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s : dhd is NULL\n", __func__)); return; } if (!dhdp->bus) { - DHD_ERROR(("%s : dhd->bus is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s : dhd->bus is NULL\n", __func__)); return; } - DHD_ERROR(("Enter %s, PCIe affinity cmd=0x%x\n", __FUNCTION__, affinity_cmd)); + DHD_ERROR(("Enter %s, PCIe affinity cmd=0x%x\n", __func__, affinity_cmd)); if (dhdpcie_get_pcieirq(dhdp->bus, &pcie_irq)) { - DHD_ERROR(("%s : Can't get interrupt number\n", __FUNCTION__)); + DHD_ERROR(("%s : Can't get interrupt number\n", __func__)); return; } @@ -20249,13 +20258,13 @@ dhd_set_irq_cpucore(dhd_pub_t *dhdp, int affinity_cmd) #if defined(CONFIG_SOC_EXYNOS9810) || defined(CONFIG_SOC_EXYNOS9820) case PCIE_IRQ_AFFINITY_BIG_CORE_EXYNOS: DHD_ERROR(("%s, PCIe IRQ:%u set Core %d\n", - __FUNCTION__, pcie_irq, PCIE_IRQ_CPU_CORE)); + __func__, pcie_irq, PCIE_IRQ_CPU_CORE)); irq_set_affinity(pcie_irq, cpumask_of(PCIE_IRQ_CPU_CORE)); break; #endif /* CONFIG_SOC_EXYNOS9810 || CONFIG_SOC_EXYNOS9820 */ default: DHD_ERROR(("%s, Unknown PCIe affinity cmd=0x%x\n", - __FUNCTION__, affinity_cmd)); + __func__, affinity_cmd)); } } #endif /* SET_PCIE_IRQ_CPU_CORE */ @@ -20279,14 +20288,14 @@ dhd_write_file(const char *filepath, char *buf, int buf_len) fp = filp_open(filepath, O_RDWR | O_CREAT, 0664); if (IS_ERR(fp)) { DHD_ERROR(("%s: Couldn't open file '%s' err %ld\n", - __FUNCTION__, filepath, PTR_ERR(fp))); + __func__, filepath, PTR_ERR(fp))); ret = BCME_ERROR; } else { if (fp->f_mode & FMODE_WRITE) { ret = compat_vfs_write(fp, buf, buf_len, &fp->f_pos); if (ret < 0) { DHD_ERROR(("%s: Couldn't write file '%s'\n", - __FUNCTION__, filepath)); + __func__, filepath)); ret = BCME_ERROR; } else { ret = BCME_OK; @@ -20323,7 +20332,7 @@ dhd_read_file(const char *filepath, char *buf, int buf_len) #if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0)) set_fs(old_fs); #endif - DHD_ERROR(("%s: File %s doesn't exist\n", __FUNCTION__, filepath)); + DHD_ERROR(("%s: File %s doesn't exist\n", __func__, filepath)); return BCME_ERROR; } @@ -20341,7 +20350,7 @@ dhd_read_file(const char *filepath, char *buf, int buf_len) ret = 0; } else { DHD_ERROR(("%s: Couldn't read the file %s, ret=%d\n", - __FUNCTION__, filepath, ret)); + __func__, filepath, ret)); ret = BCME_ERROR; } @@ -20593,7 +20602,7 @@ int dhd_parse_filter_ie(dhd_pub_t *dhd, uint8 *buf) &buf_space_left, id, len, data, BCM_XTLV_OPTION_ALIGN32); if (ret != BCME_OK) { DHD_ERROR(("%s : bcm_pack_xtlv_entry() failed ," - "status=%d\n", __FUNCTION__, ret)); + "status=%d\n", __func__, ret)); goto exit; } i++; @@ -20659,7 +20668,7 @@ dhd_error_recovery(void *handle, void *event_info, u8 event) int ret = 0; if (!dhd) { - DHD_ERROR(("%s: dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd is NULL\n", __func__)); return; } @@ -20667,14 +20676,14 @@ dhd_error_recovery(void *handle, void *event_info, u8 event) if (!(dhd->dhd_state & DHD_ATTACH_STATE_DONE)) { DHD_ERROR(("%s: init not completed, cannot initiate recovery\n", - __FUNCTION__)); + __func__)); return; } ret = dhd_bus_perform_flr_with_quiesce(dhdp, dhdp->bus, FALSE); if (ret != BCME_DNGL_DEVRESET) { DHD_ERROR(("%s: dhd_bus_perform_flr_with_quiesce failed with ret: %d," - "toggle REG_ON\n", __FUNCTION__, ret)); + "toggle REG_ON\n", __func__, ret)); /* toggle REG_ON */ dhdp->pom_toggle_reg_on(WLAN_FUNC_ID, BY_WLAN_DUE_TO_WLAN); return; @@ -20722,14 +20731,14 @@ dhd_print_tasklet_status(dhd_pub_t *dhd) dhd_info_t *dhdinfo; if (!dhd) { - DHD_ERROR(("%s : DHD is null\n", __FUNCTION__)); + DHD_ERROR(("%s : DHD is null\n", __func__)); return; } dhdinfo = dhd->info; if (!dhdinfo) { - DHD_ERROR(("%s : DHD INFO is null \n", __FUNCTION__)); + DHD_ERROR(("%s : DHD INFO is null \n", __func__)); return; } @@ -21324,7 +21333,7 @@ dhd_ring_get_first(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return NULL; } @@ -21347,7 +21356,7 @@ dhd_ring_free_first(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21365,7 +21374,7 @@ dhd_ring_set_read_idx(void *_ring, uint32 read_idx) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21383,7 +21392,7 @@ dhd_ring_set_write_idx(void *_ring, uint32 write_idx) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21402,7 +21411,7 @@ dhd_ring_get_read_idx(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return read_idx; } @@ -21423,7 +21432,7 @@ dhd_ring_get_write_idx(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return write_idx; } @@ -21445,7 +21454,7 @@ dhd_ring_get_last(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return NULL; } @@ -21472,7 +21481,7 @@ dhd_ring_get_empty(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return NULL; } @@ -21495,7 +21504,7 @@ dhd_ring_get_next(void *_ring, void *cur) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return NULL; } @@ -21518,7 +21527,7 @@ dhd_ring_get_prev(void *_ring, void *cur) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return NULL; } @@ -21541,7 +21550,7 @@ dhd_ring_get_cur_size(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return cnt; } @@ -21561,7 +21570,7 @@ dhd_ring_lock(void *_ring, void *first_ptr, void *last_ptr) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21580,7 +21589,7 @@ dhd_ring_lock_free(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21599,7 +21608,7 @@ dhd_ring_lock_get_first(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return NULL; } @@ -21619,7 +21628,7 @@ dhd_ring_lock_get_last(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return NULL; } @@ -21639,7 +21648,7 @@ dhd_ring_lock_get_count(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return ret; } @@ -21659,7 +21668,7 @@ dhd_ring_lock_free_first(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21677,7 +21686,7 @@ dhd_ring_whole_lock(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21695,7 +21704,7 @@ dhd_ring_whole_unlock(void *_ring) unsigned long flags; if (!ring || ring->magic != DHD_RING_MAGIC) { - DHD_RING_ERR(("%s :INVALID RING INFO\n", __FUNCTION__)); + DHD_RING_ERR(("%s :INVALID RING INFO\n", __func__)); return; } @@ -21804,33 +21813,33 @@ dhd_dump_file_manage_enqueue(dhd_pub_t *dhd, char *dump_path, char *fname) if (!dhd || !dhd->dump_file_manage) { DHD_ERROR(("%s(): dhdp=%p dump_file_manage=%p\n", - __FUNCTION__, dhd, (dhd ? dhd->dump_file_manage : NULL))); + __func__, dhd, (dhd ? dhd->dump_file_manage : NULL))); return; } fm_ptr = dhd->dump_file_manage; /* find file_manage idx */ - DHD_INFO(("%s(): fname: %s dump_path: %s\n", __FUNCTION__, fname, dump_path)); + DHD_INFO(("%s(): fname: %s dump_path: %s\n", __func__, fname, dump_path)); if ((fm_idx = dhd_dump_file_manage_idx(fm_ptr, fname)) < 0) { DHD_ERROR(("%s(): Out of file manager entries, fname: %s\n", - __FUNCTION__, fname)); + __func__, fname)); return; } elem = &fm_ptr->elems[fm_idx]; fp_idx = elem->file_idx; DHD_INFO(("%s(): fm_idx: %d fp_idx: %d path: %s\n", - __FUNCTION__, fm_idx, fp_idx, elem->file_path[fp_idx])); + __func__, fm_idx, fp_idx, elem->file_path[fp_idx])); /* delete oldest file */ if (strlen(elem->file_path[fp_idx]) != 0) { if (dhd_file_delete(elem->file_path[fp_idx]) < 0) { DHD_ERROR(("%s(): Failed to delete file: %s\n", - __FUNCTION__, elem->file_path[fp_idx])); + __func__, elem->file_path[fp_idx])); } else { DHD_ERROR(("%s(): Successed to delete file: %s\n", - __FUNCTION__, elem->file_path[fp_idx])); + __func__, elem->file_path[fp_idx])); } } @@ -21851,8 +21860,8 @@ dhd_smmu_fault_handler(uint32 axid, ulong fault_addr) dhd_pub_t *dhdp = (dhd_pub_t *)g_dhd_pub; uint32 irq = (uint32)-1; - DHD_ERROR(("%s: Trigger SMMU Fault\n", __FUNCTION__)); - DHD_ERROR(("%s: axid:0x%x, fault_addr:0x%lx", __FUNCTION__, axid, fault_addr)); + DHD_ERROR(("%s: Trigger SMMU Fault\n", __func__)); + DHD_ERROR(("%s: axid:0x%x, fault_addr:0x%lx", __func__, axid, fault_addr)); dhdp->smmu_fault_occurred = TRUE; #ifdef DNGL_AXI_ERROR_LOGGING dhdp->axi_error = TRUE; @@ -21890,7 +21899,7 @@ void wifi_plat_dev_drv_shutdown(struct platform_device *pdev) dhd_info_t *dhd_info = NULL; dhd_if_t *dhd_if = NULL; - DHD_ERROR(("%s enter\n", __FUNCTION__)); + DHD_ERROR(("%s enter\n", __func__)); dhd_pub = g_dhd_pub; if (dhd_os_check_if_up(dhd_pub)) { @@ -22022,7 +22031,7 @@ dhd_eap_txcomplete(dhd_pub_t *dhdp, void *txp, bool success, int ifidx) } DHD_INFO(("%s: M4 TX failed on %d.\n", - __FUNCTION__, ifidx)); + __func__, ifidx)); OSL_ATOMIC_SET(dhdp->osh, &ifp->m4state, M4_TXFAILED); schedule_delayed_work(&ifp->m4state_work, @@ -22039,13 +22048,13 @@ dhd_cleanup_m4_state_work(dhd_pub_t *dhdp, int ifidx) dhd_if_t *ifp; if ((ifidx < 0) || (ifidx >= DHD_MAX_IFS)) { - DHD_ERROR(("%s: invalid ifidx %d\n", __FUNCTION__, ifidx)); + DHD_ERROR(("%s: invalid ifidx %d\n", __func__, ifidx)); return; } dhdinfo = (dhd_info_t *)(dhdp->info); if (!dhdinfo) { - DHD_ERROR(("%s: dhdinfo is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdinfo is NULL\n", __func__)); return; } @@ -22092,13 +22101,13 @@ dhd_axi_error_dump(void *handle, void *event_info, u8 event) dhd_pub_t *dhdp = NULL; if (!dhd) { - DHD_ERROR(("%s: dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd is NULL\n", __func__)); goto exit; } dhdp = &dhd->pub; if (!dhdp) { - DHD_ERROR(("%s: dhdp is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdp is NULL\n", __func__)); goto exit; } @@ -22110,7 +22119,7 @@ dhd_axi_error_dump(void *handle, void *event_info, u8 event) */ if (dhdp->axi_err_dump->etd_axi_error_v1.version != HND_EXT_TRAP_AXIERROR_VERSION_1) { DHD_ERROR(("%s: Invalid AXI version: 0x%x\n", - __FUNCTION__, dhdp->axi_err_dump->etd_axi_error_v1.version)); + __func__, dhdp->axi_err_dump->etd_axi_error_v1.version)); } DHD_OS_WAKE_LOCK(dhdp); @@ -22118,7 +22127,7 @@ dhd_axi_error_dump(void *handle, void *event_info, u8 event) #ifdef DHD_SSSR_DUMP dhdp->collect_sssr = TRUE; #endif /* DHD_SSSR_DUMP */ - DHD_ERROR(("%s: scheduling mem dump.. \n", __FUNCTION__)); + DHD_ERROR(("%s: scheduling mem dump.. \n", __func__)); dhd_schedule_memdump(dhdp, dhdp->soc_ram, dhdp->soc_ram_length); #endif /* DHD_FW_COREDUMP */ DHD_OS_WAKE_UNLOCK(dhdp); @@ -22130,7 +22139,7 @@ dhd_axi_error_dump(void *handle, void *event_info, u8 event) void dhd_schedule_axi_error_dump(dhd_pub_t *dhdp, void *type) { - DHD_ERROR(("%s: scheduling axi_error_dump.. \n", __FUNCTION__)); + DHD_ERROR(("%s: scheduling axi_error_dump.. \n", __func__)); dhd_deferred_schedule_work(dhdp->info->dhd_deferred_wq, type, DHD_WQ_WORK_AXI_ERROR_DUMP, dhd_axi_error_dump, DHD_WQ_WORK_PRIORITY_HIGH); @@ -22145,7 +22154,7 @@ dhd_cto_recovery_handler(void *handle, void *event_info, u8 event) dhd_pub_t *dhdp = NULL; if (!dhd) { - DHD_ERROR(("%s: dhd is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd is NULL\n", __func__)); BUG_ON(1); return; } @@ -22157,7 +22166,7 @@ dhd_cto_recovery_handler(void *handle, void *event_info, u8 event) void dhd_schedule_cto_recovery(dhd_pub_t *dhdp) { - DHD_ERROR(("%s: scheduling cto recovery.. \n", __FUNCTION__)); + DHD_ERROR(("%s: scheduling cto recovery.. \n", __func__)); dhd_deferred_schedule_work(dhdp->info->dhd_deferred_wq, NULL, DHD_WQ_WORK_CTO_RECOVERY, dhd_cto_recovery_handler, DHD_WQ_WORK_PRIORITY_HIGH); @@ -22220,7 +22229,7 @@ void *dhd_get_pub(struct net_device *dev) if (dhdinfo) return (void *)&dhdinfo->pub; else { - printf("%s: null dhdinfo\n", __FUNCTION__); + printf("%s: null dhdinfo\n", __func__); return NULL; } } @@ -22231,7 +22240,7 @@ void *dhd_get_conf(struct net_device *dev) if (dhdinfo) return (void *)dhdinfo->pub.conf; else { - printf("%s: null dhdinfo\n", __FUNCTION__); + printf("%s: null dhdinfo\n", __func__); return NULL; } } @@ -22241,9 +22250,9 @@ bool dhd_os_wd_timer_enabled(void *bus) dhd_pub_t *pub = bus; dhd_info_t *dhd = (dhd_info_t *)pub->info; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (!dhd) { - DHD_ERROR(("%s: dhd NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd NULL\n", __func__)); return FALSE; } return dhd->wd_timer_valid; diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_pcie_linux.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_pcie_linux.c index f5348ff03eb41..7c7f7a406f490 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_pcie_linux.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_pcie_linux.c @@ -1917,7 +1917,7 @@ int dhdpcie_init(struct pci_dev *pdev) /* Attach to the OS network interface */ DHD_TRACE(("%s(): Calling dhd_register_if() \n", __FUNCTION__)); if (dhd_attach_net(bus->dhd, TRUE)) { - DHD_ERROR(("%s(): ERROR.. dhd_register_if() failed\n", __FUNCTION__)); + DHD_ERROR(("%s(): dhd_register_if() failed\n", __FUNCTION__)); break; } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_sdio.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_sdio.c index 37ee41bb6d0de..37efb03b13919 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_sdio.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_sdio.c @@ -640,7 +640,7 @@ do { \ bus->regfails += (retryvar-1); \ if (retryvar > retry_limit) { \ DHD_ERROR(("%s: FAILED" #regvar "READ, LINE %d\n", \ - __FUNCTION__, __LINE__)); \ + __func__, __LINE__)); \ regvar = 0; \ } \ } \ @@ -656,7 +656,7 @@ do { \ bus->regfails += (retryvar-1); \ if (retryvar > retry_limit) \ DHD_ERROR(("%s: FAILED REGISTER WRITE, LINE %d\n", \ - __FUNCTION__, __LINE__)); \ + __func__, __LINE__)); \ } \ } while (0) @@ -829,7 +829,7 @@ dhdsdio_tune_fifoparam(struct dhd_bus *bus) watermark = wm; mesbusyctrl = mes; } else { - DHD_INFO(("skip fifotune: SdioRev(%d) is lower than minimal requested ver\n", + DHD_TRACE(("skip fifotune: SdioRev(%d) is lower than minimal requested ver\n", bus->sih->buscorerev)); return; } @@ -849,7 +849,7 @@ dhdsdio_tune_fifoparam(struct dhd_bus *bus) (mes | SBSDIO_MESBUSYCTRL_ENAB), &err); } - DHD_INFO(("Apply overflow WAR: 0x%02x 0x%02x 0x%02x\n", + DHD_TRACE(("Apply overflow WAR: 0x%02x 0x%02x 0x%02x\n", bcmsdh_cfg_read(bus->sdh, SDIO_FUNC_1, SBSDIO_DEVICE_CTL, &err), bcmsdh_cfg_read(bus->sdh, SDIO_FUNC_1, SBSDIO_WATERMARK, &err), bcmsdh_cfg_read(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_MESBUSYCTRL, &err))); @@ -893,7 +893,7 @@ dhdsdio_wkwlan(dhd_bus_t *bus, bool on) if (bus->sih->buscoretype == SDIOD_CORE_ID) { /* wake up wlan function :WAKE_UP goes as ht_avail_request and alp_avail_request */ regdata = bcmsdh_cfg_read_word(sdh, SDIO_FUNC_0, SPID_CONFIG, NULL); - DHD_INFO(("F0 REG0 rd = 0x%x\n", regdata)); + DHD_TRACE(("F0 REG0 rd = 0x%x\n", regdata)); if (on == TRUE) regdata |= WAKE_UP; @@ -1086,7 +1086,7 @@ dhdsdio_clk_kso_init(dhd_bus_t *bus) val |= (SBSDIO_FUNC1_SLEEPCSR_KSO_EN << SBSDIO_FUNC1_SLEEPCSR_KSO_SHIFT); bcmsdh_cfg_write(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_SLEEPCSR, val, &err); if (err) - DHD_ERROR(("%s: SBSDIO_FUNC1_SLEEPCSR err: 0x%x\n", __FUNCTION__, err)); + DHD_ERROR(("%s: SBSDIO_FUNC1_SLEEPCSR err: 0x%x\n", __func__, err)); } return 0; @@ -1111,7 +1111,7 @@ dhdsdio_clk_kso_enab(dhd_bus_t *bus, bool on) int err = 0; int try_cnt = 0; - KSO_DBG(("%s> op:%s\n", __FUNCTION__, (on ? "KSO_SET" : "KSO_CLR"))); + KSO_DBG(("%s> op:%s\n", __func__, (on ? "KSO_SET" : "KSO_CLR"))); wr_val |= (on << SBSDIO_FUNC1_SLEEPCSR_KSO_SHIFT); @@ -1142,7 +1142,7 @@ dhdsdio_clk_kso_enab(dhd_bus_t *bus, bool on) if (((rd_val & bmask) == cmp_val) && !err) break; - KSO_DBG(("%s> KSO wr/rd retry:%d, ERR:%x \n", __FUNCTION__, try_cnt, err)); + KSO_DBG(("%s> KSO wr/rd retry:%d, ERR:%x \n", __func__, try_cnt, err)); if (((try_cnt + 1) % KSO_SLEEP_RETRY_COUNT) == 0) { OSL_SLEEP(KSO_WAIT_MS); @@ -1154,11 +1154,11 @@ dhdsdio_clk_kso_enab(dhd_bus_t *bus, bool on) if (try_cnt > 2) KSO_DBG(("%s> op:%s, try_cnt:%d, rd_val:%x, ERR:%x \n", - __FUNCTION__, (on ? "KSO_SET" : "KSO_CLR"), try_cnt, rd_val, err)); + __func__, (on ? "KSO_SET" : "KSO_CLR"), try_cnt, rd_val, err)); if (try_cnt > CUSTOM_MAX_KSO_ATTEMPTS) { DHD_ERROR(("%s> op:%s, ERROR: try_cnt:%d, rd_val:%x, ERR:%x \n", - __FUNCTION__, (on ? "KSO_SET" : "KSO_CLR"), try_cnt, rd_val, err)); + __func__, (on ? "KSO_SET" : "KSO_CLR"), try_cnt, rd_val, err)); } return err; @@ -1174,22 +1174,22 @@ dhdsdio_clk_kso_iovar(dhd_bus_t *bus, bool on) BUS_WAKE(bus); dhdsdio_clkctl(bus, CLK_AVAIL, FALSE); - DHD_ERROR(("%s: KSO disable clk: 0x%x\n", __FUNCTION__, + DHD_ERROR(("%s: KSO disable clk: 0x%x\n", __func__, bcmsdh_cfg_read(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, &err))); dhdsdio_clk_kso_enab(bus, FALSE); } else { - DHD_ERROR(("%s: KSO enable\n", __FUNCTION__)); + DHD_ERROR(("%s: KSO enable\n", __func__)); /* Make sure we have SD bus access */ if (bus->clkstate == CLK_NONE) { - DHD_ERROR(("%s: Request SD clk\n", __FUNCTION__)); + DHD_ERROR(("%s: Request SD clk\n", __func__)); dhdsdio_clkctl(bus, CLK_SDONLY, FALSE); } dhdsdio_clk_kso_enab(bus, TRUE); - DHD_ERROR(("%s: sleepcsr: 0x%x\n", __FUNCTION__, + DHD_ERROR(("%s: sleepcsr: 0x%x\n", __func__, dhdsdio_sleepcsr_get(bus))); } @@ -1225,7 +1225,7 @@ dhdsdio_devcap_set(dhd_bus_t *bus, uint8 cap) bcmsdh_cfg_write(bus->sdh, SDIO_FUNC_0, SDIOD_CCCR_BRCM_CARDCAP, cap, &err); if (err) - DHD_ERROR(("%s: devcap set err: 0x%x\n", __FUNCTION__, err)); + DHD_ERROR(("%s: devcap set err: 0x%x\n", __func__, err)); return 0; } @@ -1250,18 +1250,18 @@ dhdsdio_clk_devsleep_iovar(dhd_bus_t *bus, bool on) val = bcmsdh_cfg_read(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, &err); if ((val & SBSDIO_CSR_MASK) == 0) { DHD_ERROR(("%s: No clock before enter sleep:0x%x\n", - __FUNCTION__, val)); + __func__, val)); /* Reset clock request */ bcmsdh_cfg_write(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, SBSDIO_ALP_AVAIL_REQ, &err); - DHD_ERROR(("%s: clock before sleep:0x%x\n", __FUNCTION__, + DHD_ERROR(("%s: clock before sleep:0x%x\n", __func__, bcmsdh_cfg_read(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, &err))); } } - DHD_TRACE(("%s: clk before sleep: 0x%x\n", __FUNCTION__, + DHD_TRACE(("%s: clk before sleep: 0x%x\n", __func__, bcmsdh_cfg_read(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, &err))); #ifdef USE_CMD14 @@ -1282,7 +1282,7 @@ dhdsdio_clk_devsleep_iovar(dhd_bus_t *bus, bool on) #endif /* USE_CMD14 */ if ((SLPAUTO_ENAB(bus)) && (bus->idleclock != DHD_IDLE_ACTIVE)) { - DHD_TRACE(("%s: Turnoff SD clk\n", __FUNCTION__)); + DHD_TRACE(("%s: Turnoff SD clk\n", __func__)); /* Now remove the SD clock */ err = dhdsdio_sdclk(bus, FALSE); } @@ -1290,14 +1290,14 @@ dhdsdio_clk_devsleep_iovar(dhd_bus_t *bus, bool on) /* Exit Sleep */ /* Make sure we have SD bus access */ if (bus->clkstate == CLK_NONE) { - DHD_TRACE(("%s: Request SD clk\n", __FUNCTION__)); + DHD_TRACE(("%s: Request SD clk\n", __func__)); dhdsdio_clkctl(bus, CLK_SDONLY, FALSE); } #ifdef USE_CMD14 err = bcmsdh_sleep(bus->sdh, FALSE); if (SLPAUTO_ENAB(bus) && (err != 0)) { OSL_DELAY(10000); - DHD_TRACE(("%s: Resync device sleep\n", __FUNCTION__)); + DHD_TRACE(("%s: Resync device sleep\n", __func__)); /* Toggle sleep to resync with host and device */ err = bcmsdh_sleep(bus->sdh, TRUE); @@ -1306,16 +1306,16 @@ dhdsdio_clk_devsleep_iovar(dhd_bus_t *bus, bool on) if (err) { OSL_DELAY(10000); - DHD_ERROR(("%s: CMD14 exit failed again!\n", __FUNCTION__)); + DHD_ERROR(("%s: CMD14 exit failed again!\n", __func__)); /* Toggle sleep to resync with host and device */ err = bcmsdh_sleep(bus->sdh, TRUE); OSL_DELAY(10000); err = bcmsdh_sleep(bus->sdh, FALSE); if (err) { - DHD_ERROR(("%s: CMD14 exit failed twice!\n", __FUNCTION__)); + DHD_ERROR(("%s: CMD14 exit failed twice!\n", __func__)); DHD_ERROR(("%s: FATAL: Device non-response!\n", - __FUNCTION__)); + __func__)); err = 0; } } @@ -1352,11 +1352,11 @@ dhdsdio_clk_devsleep_iovar(dhd_bus_t *bus, bool on) SBSDIO_FUNC1_SLEEPCSR_DEVON_MASK) != (SBSDIO_FUNC1_SLEEPCSR_DEVON_MASK)), (20000)); - DHD_TRACE(("%s: ExitSleep sleepcsr: 0x%x\n", __FUNCTION__, csr)); + DHD_TRACE(("%s: ExitSleep sleepcsr: 0x%x\n", __func__, csr)); if (!(csr & SBSDIO_FUNC1_SLEEPCSR_DEVON_MASK)) { DHD_ERROR(("%s:ERROR: ExitSleep device NOT Ready! 0x%x\n", - __FUNCTION__, csr)); + __func__, csr)); err = BCME_NODEVICE; } @@ -1365,10 +1365,10 @@ dhdsdio_clk_devsleep_iovar(dhd_bus_t *bus, bool on) SBSDIO_FUNC1_CHIPCLKCSR, &err)) & SBSDIO_HT_AVAIL) != (SBSDIO_HT_AVAIL)), (DHD_WAIT_HTAVAIL)); - DHD_TRACE(("%s: SBSDIO_FUNC1_CHIPCLKCSR : 0x%x\n", __FUNCTION__, csr)); + DHD_TRACE(("%s: SBSDIO_FUNC1_CHIPCLKCSR : 0x%x\n", __func__, csr)); if (!err && ((csr & SBSDIO_HT_AVAIL) != SBSDIO_HT_AVAIL)) { DHD_ERROR(("%s:ERROR: device NOT Ready! 0x%x\n", - __FUNCTION__, csr)); + __func__, csr)); err = BCME_NODEVICE; } } @@ -1379,7 +1379,7 @@ dhdsdio_clk_devsleep_iovar(dhd_bus_t *bus, bool on) bus->kso = on ? FALSE : TRUE; else { DHD_ERROR(("%s: Sleep request failed: kso:%d on:%d err:%d\n", - __FUNCTION__, bus->kso, on, err)); + __func__, bus->kso, on, err)); if (!on && retry > 2) bus->kso = FALSE; } @@ -1397,7 +1397,7 @@ dhdsdio_htclk(dhd_bus_t *bus, bool on, bool pendok) uint8 clkctl, clkreq, devctl; bcmsdh_info_t *sdh; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); clkctl = 0; sdh = bus->sdh; @@ -1422,7 +1422,7 @@ dhdsdio_htclk(dhd_bus_t *bus, bool on, bool pendok) if (err) { ht_avail_error++; if (ht_avail_error < HT_AVAIL_ERROR_MAX) { - DHD_ERROR(("%s: HT Avail request error: %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s: HT Avail request error: %d\n", __func__, err)); } else if (ht_avail_error == HT_AVAIL_ERROR_MAX) { @@ -1437,7 +1437,7 @@ dhdsdio_htclk(dhd_bus_t *bus, bool on, bool pendok) /* Check current status */ clkctl = bcmsdh_cfg_read(sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, &err); if (err) { - DHD_ERROR(("%s: HT Avail read error: %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s: HT Avail read error: %d\n", __func__, err)); return BCME_ERROR; } @@ -1448,13 +1448,13 @@ dhdsdio_htclk(dhd_bus_t *bus, bool on, bool pendok) devctl = bcmsdh_cfg_read(sdh, SDIO_FUNC_1, SBSDIO_DEVICE_CTL, &err); if (err) { DHD_ERROR(("%s: Devctl access error setting CA: %d\n", - __FUNCTION__, err)); + __func__, err)); return BCME_ERROR; } devctl |= SBSDIO_DEVCTL_CA_INT_ONLY; bcmsdh_cfg_write(sdh, SDIO_FUNC_1, SBSDIO_DEVICE_CTL, devctl, &err); - DHD_INFO(("CLKCTL: set PENDING\n")); + DHD_TRACE(("CLKCTL: set PENDING\n")); bus->clkstate = CLK_PENDING; return BCME_OK; } else @@ -1476,29 +1476,29 @@ dhdsdio_htclk(dhd_bus_t *bus, bool on, bool pendok) !SBSDIO_CLKAV(clkctl, bus->alp_only)), PMU_MAX_TRANSITION_DLY); } if (err) { - DHD_ERROR(("%s: HT Avail request error: %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s: HT Avail request error: %d\n", __func__, err)); return BCME_ERROR; } if (!SBSDIO_CLKAV(clkctl, bus->alp_only)) { DHD_ERROR(("%s: HT Avail timeout (%d): clkctl 0x%02x\n", - __FUNCTION__, PMU_MAX_TRANSITION_DLY, clkctl)); + __func__, PMU_MAX_TRANSITION_DLY, clkctl)); return BCME_ERROR; } #endif /* BCMSDIOLITE */ /* Mark clock available */ bus->clkstate = CLK_AVAIL; - DHD_INFO(("CLKCTL: turned ON\n")); + DHD_TRACE(("CLKCTL: turned ON\n")); #if defined(DHD_DEBUG) if (bus->alp_only == TRUE) { #if !defined(BCMLXSDMMC) if (!SBSDIO_ALPONLY(clkctl)) { - DHD_ERROR(("%s: HT Clock, when ALP Only\n", __FUNCTION__)); + DHD_ERROR(("%s: HT Clock, when ALP Only\n", __func__)); } #endif /* !defined(BCMLXSDMMC) */ } else { if (SBSDIO_ALPONLY(clkctl)) { - DHD_ERROR(("%s: HT Clock should be on.\n", __FUNCTION__)); + DHD_ERROR(("%s: HT Clock should be on.\n", __func__)); } } #endif /* defined (DHD_DEBUG) */ @@ -1520,10 +1520,10 @@ dhdsdio_htclk(dhd_bus_t *bus, bool on, bool pendok) bus->clkstate = CLK_SDONLY; if (!SR_ENAB(bus)) { bcmsdh_cfg_write(sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, clkreq, &err); - DHD_INFO(("CLKCTL: turned OFF\n")); + DHD_TRACE(("CLKCTL: turned OFF\n")); if (err) { DHD_ERROR(("%s: Failed access turning clock off: %d\n", - __FUNCTION__, err)); + __func__, err)); return BCME_ERROR; } } @@ -1544,7 +1544,7 @@ dhdsdio_set_sdmode(dhd_bus_t *bus, int32 sd_mode) &sd_mode, sizeof(sd_mode), TRUE); if (err) { DHD_ERROR(("%s: error changing sd_mode: %d\n", - __FUNCTION__, err)); + __func__, err)); return BCME_ERROR; } return BCME_OK; @@ -1558,7 +1558,7 @@ dhdsdio_sdclk(dhd_bus_t *bus, bool on) int err; int32 iovalue; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (on) { if (bus->idleclock == DHD_IDLE_STOP) { @@ -1568,7 +1568,7 @@ dhdsdio_sdclk(dhd_bus_t *bus, bool on) &iovalue, sizeof(iovalue), TRUE); if (err) { DHD_ERROR(("%s: error enabling sd_clock: %d\n", - __FUNCTION__, err)); + __func__, err)); return BCME_ERROR; } @@ -1579,7 +1579,7 @@ dhdsdio_sdclk(dhd_bus_t *bus, bool on) &iovalue, sizeof(iovalue), TRUE); if (err) { DHD_ERROR(("%s: error restoring sd_divisor: %d\n", - __FUNCTION__, err)); + __func__, err)); return BCME_ERROR; } } @@ -1588,7 +1588,7 @@ dhdsdio_sdclk(dhd_bus_t *bus, bool on) /* Stop or slow the SD clock itself */ if ((bus->sd_divisor == -1) || (bus->sd_mode == -1)) { DHD_TRACE(("%s: can't idle clock, divisor %d mode %d\n", - __FUNCTION__, bus->sd_divisor, bus->sd_mode)); + __func__, bus->sd_divisor, bus->sd_mode)); return BCME_ERROR; } if (bus->idleclock == DHD_IDLE_STOP) { @@ -1597,7 +1597,7 @@ dhdsdio_sdclk(dhd_bus_t *bus, bool on) &iovalue, sizeof(iovalue), TRUE); if (err) { DHD_ERROR(("%s: error disabling sd_clock: %d\n", - __FUNCTION__, err)); + __func__, err)); return BCME_ERROR; } } else if (bus->idleclock != DHD_IDLE_ACTIVE) { @@ -1607,7 +1607,7 @@ dhdsdio_sdclk(dhd_bus_t *bus, bool on) &iovalue, sizeof(iovalue), TRUE); if (err) { DHD_ERROR(("%s: error changing sd_divisor: %d\n", - __FUNCTION__, err)); + __func__, err)); return BCME_ERROR; } } @@ -1627,7 +1627,7 @@ dhdsdio_clkctl(dhd_bus_t *bus, uint target, bool pendok) uint oldstate = bus->clkstate; #endif /* DHD_DEBUG */ - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); /* Early exit if we're already there */ if (bus->clkstate == target) { @@ -1668,15 +1668,15 @@ dhdsdio_clkctl(dhd_bus_t *bus, uint target, bool pendok) * nothing is to be done & Bt has finished using the bus. */ if (bus->bt_use_count != 0) { - DHD_INFO(("%s(): Req CLK_SDONLY, BT is active %d not switching off \r\n", - __FUNCTION__, bus->bt_use_count)); + DHD_TRACE(("%s(): Req CLK_SDONLY, BT is active %d not switching off \r\n", + __func__, bus->bt_use_count)); ret = BCME_OK; dhd_os_wd_timer(bus->dhd, dhd_watchdog_ms); break; } - DHD_INFO(("%s(): Request CLK_NONE BT is NOT active switching off \r\n", - __FUNCTION__)); + DHD_TRACE(("%s(): Request CLK_NONE BT is NOT active switching off \r\n", + __func__)); #endif /* BT_OVER_SDIO */ /* Remove HT request, or bring up SD clock */ @@ -1703,14 +1703,14 @@ dhdsdio_clkctl(dhd_bus_t *bus, uint target, bool pendok) * nothing is to be done & Bt has finished using the bus. */ if (bus->bt_use_count != 0) { - DHD_INFO(("%s(): Request CLK_NONE BT is active %d not switching off \r\n", - __FUNCTION__, bus->bt_use_count)); + DHD_TRACE(("%s(): Request CLK_NONE BT is active %d not switching off \r\n", + __func__, bus->bt_use_count)); ret = BCME_OK; break; } - DHD_INFO(("%s(): Request CLK_NONE BT is NOT active switching off \r\n", - __FUNCTION__)); + DHD_TRACE(("%s(): Request CLK_NONE BT is NOT active switching off \r\n", + __func__)); #endif /* BT_OVER_SDIO */ /* Make sure to remove HT request */ @@ -1726,7 +1726,7 @@ dhdsdio_clkctl(dhd_bus_t *bus, uint target, bool pendok) break; } #ifdef DHD_DEBUG - DHD_INFO(("dhdsdio_clkctl: %d -> %d\n", oldstate, bus->clkstate)); + DHD_TRACE(("dhdsdio_clkctl: %d -> %d\n", oldstate, bus->clkstate)); #endif /* DHD_DEBUG */ return ret; @@ -1743,7 +1743,7 @@ dhdsdio_bussleep(dhd_bus_t *bus, bool sleep) uint32 sd3_tuning_disable = FALSE; #endif /* BCMSDIOH_STD */ - DHD_INFO(("dhdsdio_bussleep: request %s (currently %s)\n", + DHD_TRACE(("dhdsdio_bussleep: request %s (currently %s)\n", (sleep ? "SLEEP" : "WAKE"), (bus->sleeping ? "SLEEP" : "WAKE"))); @@ -1780,7 +1780,7 @@ dhdsdio_bussleep(dhd_bus_t *bus, bool sleep) * another WLAN context is active they are any way serialized with sdlock. */ if (bus->bt_use_count != 0) { - DHD_INFO(("%s(): Cannot sleep BT is active \r\n", __FUNCTION__)); + DHD_TRACE(("%s(): Cannot sleep BT is active \r\n", __func__)); return BCME_BUSY; } #endif /* !BT_OVER_SDIO */ @@ -1926,7 +1926,7 @@ int __dhdsdio_clk_enable(struct dhd_bus *bus, bus_owner_t owner, int can_wait) */ ret = dhdsdio_clkctl(bus, CLK_AVAIL, can_wait); - DHD_INFO(("%s():bt_use_count %d \r\n", __FUNCTION__, + DHD_TRACE(("%s():bt_use_count %d \r\n", __func__, bus->bt_use_count)); return ret; } @@ -1947,7 +1947,7 @@ int __dhdsdio_clk_disable(struct dhd_bus *bus, bus_owner_t owner, int can_wait) if (bus->bt_use_count == 0) { DHD_ERROR(("%s(): Clocks are already turned off \r\n", - __FUNCTION__)); + __func__)); return ret; } @@ -1963,7 +1963,7 @@ int __dhdsdio_clk_disable(struct dhd_bus *bus, bus_owner_t owner, int can_wait) */ ret = BCME_OK; - DHD_INFO(("%s():bt_use_count %d \r\n", __FUNCTION__, + DHD_TRACE(("%s():bt_use_count %d \r\n", __func__, bus->bt_use_count)); return ret; } @@ -1986,18 +1986,18 @@ int dhdsdio_func_blocksize(dhd_pub_t *dhd, int function_num, int block_size) sizeof(int), &result, sizeof(int), IOV_GET); if (bcmerr != BCME_OK) { - DHD_ERROR(("%s: Get F%d Block size error\n", __FUNCTION__, function_num)); + DHD_ERROR(("%s: Get F%d Block size error\n", __func__, function_num)); return BCME_ERROR; } if (result != block_size) { DHD_ERROR(("%s: F%d Block size set from %d to %d\n", - __FUNCTION__, function_num, result, block_size)); + __func__, function_num, result, block_size)); func_blk_size = function_num << 16 | block_size; bcmerr = dhd_bus_iovar_op(dhd, "sd_blocksize", NULL, 0, &func_blk_size, sizeof(int32), IOV_SET); if (bcmerr != BCME_OK) { - DHD_ERROR(("%s: Set F%d Block size error\n", __FUNCTION__, function_num)); + DHD_ERROR(("%s: Set F%d Block size error\n", __func__, function_num)); return BCME_ERROR; } } @@ -2046,7 +2046,7 @@ dhd_bus_txdata(struct dhd_bus *bus, void *pkt) osl_t *osh; uint datalen, prec; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); osh = bus->dhd->osh; datalen = PKTLEN(osh, pkt); @@ -2084,7 +2084,7 @@ dhd_bus_txdata(struct dhd_bus *bus, void *pkt) bool deq_ret; int pkq_len = 0; - DHD_TRACE(("%s: deferring pktq len %d\n", __FUNCTION__, + DHD_TRACE(("%s: deferring pktq len %d\n", __func__, pktq_n_pkts_tot(&bus->txq))); bus->fcqueued++; @@ -2101,7 +2101,7 @@ dhd_bus_txdata(struct dhd_bus *bus, void *pkt) #ifdef DHDTCPACK_SUPPRESS if (dhd_tcpack_check_xmit(bus->dhd, pkt) == BCME_ERROR) { DHD_ERROR(("%s %d: tcpack_suppress ERROR!!! Stop using\n", - __FUNCTION__, __LINE__)); + __func__, __LINE__)); dhd_tcpack_suppress_set(bus->dhd, TCPACK_SUP_OFF); } #endif /* DHDTCPACK_SUPPRESS */ @@ -2228,7 +2228,7 @@ static int dhdsdio_txpkt_preprocess(dhd_bus_t *bus, void *pkt, int chan, int txs #ifdef DHDTCPACK_SUPPRESS if (dhd_tcpack_check_xmit(bus->dhd, pkt) == BCME_ERROR) { DHD_ERROR(("%s %d: tcpack_suppress ERROR!!! Stop using it\n", - __FUNCTION__, __LINE__)); + __func__, __LINE__)); dhd_tcpack_suppress_set(bus->dhd, TCPACK_SUP_OFF); } #endif /* DHDTCPACK_SUPPRESS */ @@ -2331,8 +2331,8 @@ static int dhdsdio_txpkt_preprocess(dhd_bus_t *bus, void *pkt, int chan, int txs tail_padding += chain_tail_padding; } - DHD_INFO(("%s sdhdr len + orig_pkt_len %d h_pad %d t_pad %d pad_pkt_len %d\n", - __FUNCTION__, pkt_len, head_padding, tail_padding, *pad_pkt_len)); + DHD_TRACE(("%s sdhdr len + orig_pkt_len %d h_pad %d t_pad %d pad_pkt_len %d\n", + __func__, pkt_len, head_padding, tail_padding, *pad_pkt_len)); if (alloc_new_pkt) { void *tmp_pkt; @@ -2341,7 +2341,7 @@ static int dhdsdio_txpkt_preprocess(dhd_bus_t *bus, void *pkt, int chan, int txs ASSERT(*pad_pkt_len == 0); - DHD_INFO(("%s allocating new packet for padding\n", __FUNCTION__)); + DHD_TRACE(("%s allocating new packet for padding\n", __func__)); /* head pointer is aligned now, no padding needed */ head_padding = 0; @@ -2439,7 +2439,7 @@ static int dhdsdio_txpkt_preprocess(dhd_bus_t *bus, void *pkt, int chan, int txs real_pad = pkt_len - act_len; if (PKTTAILROOM(osh, pkt) < real_pad) { - DHD_INFO(("%s : insufficient tailroom %d for %d real_pad\n", + DHD_TRACE(("%s : insufficient tailroom %d for %d real_pad\n", __func__, (int)PKTTAILROOM(osh, pkt), real_pad)); if (PKTPADTAILROOM(osh, pkt, real_pad)) { DHD_ERROR(("CHK1: padding error size %d\n", real_pad)); @@ -2483,8 +2483,8 @@ static int dhdsdio_txpkt_postprocess(dhd_bus_t *bus, void *pkt) /* restore pkt buffer pointer, but keeps the header pushed by dhd_prot_hdrpush */ frame = (uint8*)PKTDATA(osh, pkt); - DHD_INFO(("%s PKTLEN before postprocess %d", - __FUNCTION__, PKTLEN(osh, pkt))); + DHD_TRACE(("%s PKTLEN before postprocess %d", + __func__, PKTLEN(osh, pkt))); /* PKTLEN still includes tail_padding, so exclude it. * We shall have head_padding + original pkt_len for PKTLEN afterwards. @@ -2493,7 +2493,7 @@ static int dhdsdio_txpkt_postprocess(dhd_bus_t *bus, void *pkt) /* txglom pkts have tail_padding length in HW ext header */ tail_padding = ltoh32_ua(frame + SDPCM_FRAMETAG_LEN + 4) >> 16; PKTSETLEN(osh, pkt, PKTLEN(osh, pkt) - tail_padding); - DHD_INFO((" txglom pkt: tail_padding %d PKTLEN %d\n", + DHD_TRACE((" txglom pkt: tail_padding %d PKTLEN %d\n", tail_padding, PKTLEN(osh, pkt))); } else { /* non-txglom pkts have head_padding + original pkt length in HW frame tag. @@ -2501,7 +2501,7 @@ static int dhdsdio_txpkt_postprocess(dhd_bus_t *bus, void *pkt) * have the field for the total length of the chain. */ PKTSETLEN(osh, pkt, *(uint16*)frame); - DHD_INFO((" non-txglom pkt: HW frame tag len %d after PKTLEN %d\n", + DHD_TRACE((" non-txglom pkt: HW frame tag len %d after PKTLEN %d\n", *(uint16*)frame, PKTLEN(osh, pkt))); } @@ -2510,8 +2510,8 @@ static int dhdsdio_txpkt_postprocess(dhd_bus_t *bus, void *pkt) /* Get rid of sdpcm header + head_padding */ PKTPULL(osh, pkt, data_offset); - DHD_INFO(("%s data_offset %d, PKTLEN %d\n", - __FUNCTION__, data_offset, PKTLEN(osh, pkt))); + DHD_TRACE(("%s data_offset %d, PKTLEN %d\n", + __func__, data_offset, PKTLEN(osh, pkt))); return BCME_OK; } @@ -2671,10 +2671,10 @@ dhdsdio_sendfromq(dhd_bus_t *bus, uint maxframes) #endif // endif #endif /* DHD_LOSSLESS_ROAMING */ - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (!KSO_ENAB(bus)) { - DHD_ERROR(("%s: Device asleep\n", __FUNCTION__)); + DHD_ERROR(("%s: Device asleep\n", __func__)); return BCME_NODEVICE; } @@ -2706,7 +2706,7 @@ dhdsdio_sendfromq(dhd_bus_t *bus, uint maxframes) pkts[i] = pktq_mdeq(&bus->txq, tx_prec_map, &prec_out); if (!pkts[i]) { DHD_ERROR(("%s: pktq_mlen non-zero when no pkt\n", - __FUNCTION__)); + __func__)); ASSERT(0); break; } @@ -2807,9 +2807,9 @@ dhdsdio_sendpendctl(dhd_bus_t *bus) frame_seq += SDPCM_HWEXT_LEN; if (*frame_seq != bus->tx_seq) { - DHD_INFO(("%s IOCTL frame seq lag detected!" + DHD_TRACE(("%s IOCTL frame seq lag detected!" " frm_seq:%d != bus->tx_seq:%d, corrected\n", - __FUNCTION__, *frame_seq, bus->tx_seq)); + __func__, *frame_seq, bus->tx_seq)); *frame_seq = bus->tx_seq; } @@ -2834,7 +2834,7 @@ dhd_bus_txctl(struct dhd_bus *bus, uchar *msg, uint msglen) int ret = -1; uint8 sdpcm_hdrlen = bus->txglom_enable ? SDPCM_HDRLEN_TXGLOM : SDPCM_HDRLEN; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (bus->dhd->dongle_reset) return -EIO; @@ -2925,8 +2925,8 @@ dhd_bus_txctl(struct dhd_bus *bus, uchar *msg, uint msglen) if (!TXCTLOK(bus)) #endif // endif { - DHD_INFO(("%s: No bus credit bus->tx_max %d, bus->tx_seq %d\n", - __FUNCTION__, bus->tx_max, bus->tx_seq)); + DHD_TRACE(("%s: No bus credit bus->tx_max %d, bus->tx_seq %d\n", + __func__, bus->tx_max, bus->tx_seq)); bus->ctrl_frame_stat = TRUE; /* Send from dpc */ bus->ctrl_frame_buf = frame; @@ -2941,16 +2941,16 @@ dhd_bus_txctl(struct dhd_bus *bus, uchar *msg, uint msglen) } if (bus->ctrl_frame_stat == FALSE) { - DHD_INFO(("%s: ctrl_frame_stat == FALSE\n", __FUNCTION__)); + DHD_TRACE(("%s: ctrl_frame_stat == FALSE\n", __func__)); ret = 0; } else { bus->dhd->txcnt_timeout++; if (!bus->dhd->hang_was_sent) { DHD_ERROR(("%s: ctrl_frame_stat == TRUE txcnt_timeout=%d\n", - __FUNCTION__, bus->dhd->txcnt_timeout)); + __func__, bus->dhd->txcnt_timeout)); #ifdef BCMSDIO_RXLIM_POST DHD_ERROR(("%s: rxlim_en=%d, rxlim enable=%d, rxlim_addr=%d\n", - __FUNCTION__, + __func__, bus->dhd->conf->rxlim_en, bus->rxlim_en, bus->rxlim_addr)); #endif /* BCMSDIO_RXLIM_POST */ } @@ -3034,7 +3034,7 @@ dhd_bus_rxctl(struct dhd_bus *bus, uchar *msg, uint msglen) uint rxlen = 0; static uint cnt = 0; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (bus->dhd->dongle_reset) return -EIO; @@ -3055,7 +3055,7 @@ dhd_bus_rxctl(struct dhd_bus *bus, uchar *msg, uint msglen) R_SDREG(status, &bus->regs->intstatus, retry); if ((status & I_HMB_HOST_INT) || PKT_AVAILABLE(bus, status)) { DHD_ERROR(("%s: reschedule dhd_dpc, cnt=%d, status=0x%x\n", - __FUNCTION__, cnt, status)); + __func__, cnt, status)); bus->ipend = TRUE; bus->dpc_sched = TRUE; dhd_sched_dpc(bus->dhd); @@ -3076,16 +3076,16 @@ dhd_bus_rxctl(struct dhd_bus *bus, uchar *msg, uint msglen) if (rxlen) { DHD_CTL(("%s: resumed on rxctl frame, got %d expected %d\n", - __FUNCTION__, rxlen, msglen)); + __func__, rxlen, msglen)); } else { if (timeleft == 0) { #ifdef DHD_DEBUG uint32 status, retry = 0; R_SDREG(status, &bus->regs->intstatus, retry); DHD_ERROR(("%s: resumed on timeout, INT status=0x%08X\n", - __FUNCTION__, status)); + __func__, status)); #else - DHD_ERROR(("%s: resumed on timeout\n", __FUNCTION__)); + DHD_ERROR(("%s: resumed on timeout\n", __func__)); #endif /* DHD_DEBUG */ if (!bus->dhd->dongle_trap_occured) { #ifdef DHD_FW_COREDUMP @@ -3096,7 +3096,7 @@ dhd_bus_rxctl(struct dhd_bus *bus, uchar *msg, uint msglen) dhd_os_sdunlock(bus->dhd); } } else { - DHD_CTL(("%s: resumed for unknown reason?\n", __FUNCTION__)); + DHD_CTL(("%s: resumed for unknown reason?\n", __func__)); if (!bus->dhd->dongle_trap_occured) { #ifdef DHD_FW_COREDUMP bus->dhd->memdump_type = DUMP_TYPE_RESUMED_UNKNOWN; @@ -3115,7 +3115,7 @@ dhd_bus_rxctl(struct dhd_bus *bus, uchar *msg, uint msglen) if (timeleft == 0) { if (rxlen == 0) bus->dhd->rxcnt_timeout++; - DHD_ERROR(("%s: rxcnt_timeout=%d, rxlen=%d\n", __FUNCTION__, + DHD_ERROR(("%s: rxcnt_timeout=%d, rxlen=%d\n", __func__, bus->dhd->rxcnt_timeout, rxlen)); #ifdef DHD_FW_COREDUMP /* collect socram dump */ @@ -3511,14 +3511,14 @@ dhdsdio_membytes(dhd_bus_t *bus, bool write, uint32 address, uint8 *data, uint s /* Set the backplane window to include the start address */ if ((bcmerror = dhdsdio_set_siaddr_window(bus, address))) { - DHD_ERROR(("%s: window change failed\n", __FUNCTION__)); + DHD_ERROR(("%s: window change failed\n", __func__)); goto xfer_done; } /* Do the transfer(s) */ while (size) { - DHD_INFO(("%s: %s %d bytes at offset 0x%08x in window 0x%08x\n", - __FUNCTION__, (write ? "write" : "read"), dsize, sdaddr, + DHD_TRACE(("%s: %s %d bytes at offset 0x%08x in window 0x%08x\n", + __func__, (write ? "write" : "read"), dsize, sdaddr, (address & SBSDIO_SBWINDOW_MASK))); if (dsize <= MAX_MEM_BUF) { pdata = bus->membuf; @@ -3528,7 +3528,7 @@ dhdsdio_membytes(dhd_bus_t *bus, bool write, uint32 address, uint8 *data, uint s pdata = data; } if ((bcmerror = bcmsdh_rwdata(bus->sdh, write, sdaddr, pdata, dsize))) { - DHD_ERROR(("%s: membytes transfer failed\n", __FUNCTION__)); + DHD_ERROR(("%s: membytes transfer failed\n", __func__)); break; } if (dsize <= MAX_MEM_BUF && !write) @@ -3539,7 +3539,7 @@ dhdsdio_membytes(dhd_bus_t *bus, bool write, uint32 address, uint8 *data, uint s data += dsize; address += dsize; if ((bcmerror = dhdsdio_set_siaddr_window(bus, address))) { - DHD_ERROR(("%s: window change failed\n", __FUNCTION__)); + DHD_ERROR(("%s: window change failed\n", __func__)); break; } sdaddr = 0; @@ -3551,7 +3551,7 @@ dhdsdio_membytes(dhd_bus_t *bus, bool write, uint32 address, uint8 *data, uint s xfer_done: /* Return the window to backplane enumeration space for core access */ if (dhdsdio_set_siaddr_window(bus, bcmsdh_cur_sbwad(bus->sdh))) { - DHD_ERROR(("%s: FAILED to set window back to 0x%x\n", __FUNCTION__, + DHD_ERROR(("%s: FAILED to set window back to 0x%x\n", __func__, bcmsdh_cur_sbwad(bus->sdh))); } @@ -3567,12 +3567,12 @@ dhdsdio_readshared(dhd_bus_t *bus, sdpcm_shared_t *sh) if (bus->sih == NULL) { if (bus->dhd && bus->dhd->dongle_reset) { - DHD_ERROR(("%s: Dongle is in reset state\n", __FUNCTION__)); + DHD_ERROR(("%s: Dongle is in reset state\n", __func__)); return BCME_NOTREADY; } else { ASSERT(bus->dhd); ASSERT(bus->sih); - DHD_ERROR(("%s: The address of sih is invalid\n", __FUNCTION__)); + DHD_ERROR(("%s: The address of sih is invalid\n", __func__)); return BCME_ERROR; } } @@ -3589,7 +3589,7 @@ dhdsdio_readshared(dhd_bus_t *bus, sdpcm_shared_t *sh) addr = ltoh32(addr); - DHD_INFO(("sdpcm_shared address 0x%08X\n", addr)); + DHD_TRACE(("sdpcm_shared address 0x%08X\n", addr)); /* * Check if addr is valid. @@ -3600,7 +3600,7 @@ dhdsdio_readshared(dhd_bus_t *bus, sdpcm_shared_t *sh) shaddr -= bus->srmemsize; } else { DHD_ERROR(("%s: address (0x%08x) of sdpcm_shared invalid\n", - __FUNCTION__, addr)); + __func__, addr)); return BCME_ERROR; } } else @@ -3625,13 +3625,13 @@ dhdsdio_readshared(dhd_bus_t *bus, sdpcm_shared_t *sh) if (bus->dhd->conf->rxlim_en) bus->rxlim_en = !!sh->msgtrace_addr; bus->rxlim_addr = sh->msgtrace_addr; - DHD_INFO(("%s: rxlim_en=%d, rxlim enable=%d, rxlim_addr=%d\n", - __FUNCTION__, + DHD_TRACE(("%s: rxlim_en=%d, rxlim enable=%d, rxlim_addr=%d\n", + __func__, bus->dhd->conf->rxlim_en, bus->rxlim_en, bus->rxlim_addr)); sh->flags &= ~SDPCM_SHARED_RXLIM_POST; } else { bus->rxlim_en = 0; - DHD_INFO(("%s: FW has no rx limit post support\n", __FUNCTION__)); + DHD_TRACE(("%s: FW has no rx limit post support\n", __func__)); } #endif /* BCMSDIO_RXLIM_POST */ @@ -3640,11 +3640,11 @@ dhdsdio_readshared(dhd_bus_t *bus, sdpcm_shared_t *sh) sh->txseq_sync_addr = ltoh32(sh->txseq_sync_addr); if (sh->flags & SDPCM_SHARED_TXSEQ_SYNC) { uint8 val = 0; - DHD_INFO(("%s: TXSEQ_SYNC enabled in fw\n", __FUNCTION__)); + DHD_TRACE(("%s: TXSEQ_SYNC enabled in fw\n", __func__)); if (0 == dhdsdio_membytes(bus, FALSE, sh->txseq_sync_addr, (uint8 *)&val, 1)) { if (bus->tx_seq != val) { - DHD_INFO(("%s: Sync tx_seq from %d to %d\n", - __FUNCTION__, bus->tx_seq, val)); + DHD_TRACE(("%s: Sync tx_seq from %d to %d\n", + __func__, bus->tx_seq, val)); bus->tx_seq = val; bus->tx_max = bus->tx_seq + 4; } @@ -3662,7 +3662,7 @@ dhdsdio_readshared(dhd_bus_t *bus, sdpcm_shared_t *sh) if ((sh->flags & SDPCM_SHARED_VERSION_MASK) != SDPCM_SHARED_VERSION) { DHD_ERROR(("%s: sdpcm_shared version %d in dhd " "is different than sdpcm_shared version %d in dongle\n", - __FUNCTION__, SDPCM_SHARED_VERSION, + __func__, SDPCM_SHARED_VERSION, sh->flags & SDPCM_SHARED_VERSION_MASK)); return BCME_ERROR; } @@ -3766,7 +3766,7 @@ dhdsdio_checkdied(dhd_bus_t *bus, char *data, uint size) uint32 n, i, addr; int rv; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (DHD_NOCHECKDIED_ON()) return 0; @@ -3779,14 +3779,14 @@ dhdsdio_checkdied(dhd_bus_t *bus, char *data, uint size) size = msize; mbuffer = data = MALLOC(bus->dhd->osh, msize); if (mbuffer == NULL) { - DHD_ERROR(("%s: MALLOC(%d) failed \n", __FUNCTION__, msize)); + DHD_ERROR(("%s: MALLOC(%d) failed \n", __func__, msize)); bcmerror = BCME_NOMEM; goto done; } } if ((str = MALLOC(bus->dhd->osh, maxstrlen)) == NULL) { - DHD_ERROR(("%s: MALLOC(%d) failed \n", __FUNCTION__, maxstrlen)); + DHD_ERROR(("%s: MALLOC(%d) failed \n", __func__, maxstrlen)); bcmerror = BCME_NOMEM; goto done; } @@ -3907,7 +3907,7 @@ dhdsdio_checkdied(dhd_bus_t *bus, char *data, uint size) printbuf: if (l_sdpcm_shared.flags & (SDPCM_SHARED_ASSERT | SDPCM_SHARED_TRAP)) { - DHD_ERROR(("%s: %s\n", __FUNCTION__, strbuf.origbuf)); + DHD_ERROR(("%s: %s\n", __func__, strbuf.origbuf)); } #if defined(DHD_FW_COREDUMP) @@ -3937,7 +3937,7 @@ dhd_bus_mem_dump(dhd_pub_t *dhdp) { dhd_bus_t *bus = dhdp->bus; if (dhdp->busstate == DHD_BUS_SUSPEND) { - DHD_ERROR(("%s: Bus is suspend so skip\n", __FUNCTION__)); + DHD_ERROR(("%s: Bus is suspend so skip\n", __func__)); return 0; } return dhdsdio_mem_dump(bus); @@ -3947,7 +3947,7 @@ int dhd_bus_get_mem_dump(dhd_pub_t *dhdp) { if (!dhdp) { - DHD_ERROR(("%s: dhdp is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdp is NULL\n", __func__)); return BCME_ERROR; } @@ -3967,7 +3967,7 @@ dhdsdio_get_mem_dump(dhd_bus_t *bus) p_buf = dhd_get_fwdump_buf(bus->dhd, size); if (!p_buf) { DHD_ERROR(("%s: Out of memory (%d bytes)\n", - __FUNCTION__, size)); + __func__, size)); return BCME_ERROR; } @@ -3982,7 +3982,7 @@ dhdsdio_get_mem_dump(dhd_bus_t *bus) read_size = MIN(MEMBLOCK, size); ret = dhdsdio_membytes(bus, FALSE, start, databuf, read_size); if (ret) { - DHD_ERROR(("%s: Error membytes %d\n", __FUNCTION__, ret)); + DHD_ERROR(("%s: Error membytes %d\n", __func__, ret)); ret = BCME_ERROR; break; } @@ -4011,14 +4011,14 @@ dhdsdio_mem_dump(dhd_bus_t *bus) dhdp = bus->dhd; if (!dhdp) { - DHD_ERROR(("%s: dhdp is NULL\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdp is NULL\n", __func__)); return ret; } ret = dhdsdio_get_mem_dump(bus); if (ret) { DHD_ERROR(("%s: failed to get mem dump, err=%d\n", - __FUNCTION__, ret)); + __func__, ret)); } else { /* schedule a work queue to perform actual memdump. * dhd_mem_dump() performs the job @@ -4046,7 +4046,7 @@ dhdsdio_downloadvars(dhd_bus_t *bus, void *arg, int len) { int bcmerror = BCME_OK; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (bus->dhd->up && #ifdef DHD_ULP @@ -4125,7 +4125,7 @@ dhdsdio_doiovar(dhd_bus_t *bus, const bcm_iovar_t *vi, uint32 actionid, const ch bool bool_val = 0; DHD_TRACE(("%s: Enter, action %d name %s params %p plen %d arg %p len %d val_size %d\n", - __FUNCTION__, actionid, name, params, plen, arg, len, val_size)); + __func__, actionid, name, params, plen, arg, len, val_size)); if ((bcmerror = bcm_iovar_lencheck(vi, arg, len, IOV_ISSET(actionid))) != 0) goto exit; @@ -4194,12 +4194,12 @@ dhdsdio_doiovar(dhd_bus_t *bus, const bcm_iovar_t *vi, uint32 actionid, const ch bus->intdis = FALSE; if (bus->dhd->up) { if (bus->intr) { - DHD_INTR(("%s: enable SDIO device interrupts\n", __FUNCTION__)); + DHD_INTR(("%s: enable SDIO device interrupts\n", __func__)); // terence 20141207: enbale intdis bus->intdis = TRUE; bcmsdh_intr_enable(bus->sdh); } else { - DHD_INTR(("%s: disable SDIO interrupts\n", __FUNCTION__)); + DHD_INTR(("%s: disable SDIO interrupts\n", __func__)); bcmsdh_intr_disable(bus->sdh); } } @@ -4520,7 +4520,7 @@ dhdsdio_doiovar(dhd_bus_t *bus, const bcm_iovar_t *vi, uint32 actionid, const ch case IOV_SVAL(IOV_DEVRESET): DHD_TRACE(("%s: Called set IOV_DEVRESET=%d dongle_reset=%d busstate=%d\n", - __FUNCTION__, bool_val, bus->dhd->dongle_reset, + __func__, bool_val, bus->dhd->dongle_reset, bus->dhd->busstate)); ASSERT(bus->dhd->osh); @@ -4536,7 +4536,7 @@ dhdsdio_doiovar(dhd_bus_t *bus, const bcm_iovar_t *vi, uint32 actionid, const ch */ case IOV_GVAL(IOV_DEVRESET): - DHD_TRACE(("%s: Called get IOV_DEVRESET\n", __FUNCTION__)); + DHD_TRACE(("%s: Called get IOV_DEVRESET\n", __func__)); /* Get its status */ int_val = (bool) bus->dhd->dongle_reset; @@ -4571,7 +4571,7 @@ dhdsdio_doiovar(dhd_bus_t *bus, const bcm_iovar_t *vi, uint32 actionid, const ch break; case IOV_SVAL(IOV_HANGREPORT): bus->dhd->hang_report = bool_val; - DHD_ERROR(("%s: Set hang_report as %d\n", __FUNCTION__, bus->dhd->hang_report)); + DHD_ERROR(("%s: Set hang_report as %d\n", __func__, bus->dhd->hang_report)); break; case IOV_GVAL(IOV_HANGREPORT): @@ -4678,13 +4678,13 @@ dhdsdio_write_vars(dhd_bus_t *bus) bcmerror = dhdsdio_membytes(bus, TRUE, varaddr, vbuffer, varsize); if (bcmerror) { DHD_ERROR(("%s: error %d on writing %d membytes at 0x%08x\n", - __FUNCTION__, bcmerror, varsize, varaddr)); + __func__, bcmerror, varsize, varaddr)); return bcmerror; } #ifdef DHD_DEBUG /* Verify NVRAM bytes */ - DHD_INFO(("Compare NVRAM dl & ul; varsize=%d\n", varsize)); + DHD_TRACE(("Compare NVRAM dl & ul; varsize=%d\n", varsize)); nvram_ularray = (uint8*)MALLOC(bus->dhd->osh, varsize); if (!nvram_ularray) { MFREE(bus->dhd->osh, vbuffer, varsize); @@ -4698,14 +4698,14 @@ dhdsdio_write_vars(dhd_bus_t *bus) bcmerror = dhdsdio_membytes(bus, FALSE, varaddr, nvram_ularray, varsize); if (bcmerror) { DHD_ERROR(("%s: error %d on reading %d nvram bytes at 0x%08x\n", - __FUNCTION__, bcmerror, varsize, varaddr)); + __func__, bcmerror, varsize, varaddr)); } /* Compare the org NVRAM with the one read from RAM */ if (memcmp(vbuffer, nvram_ularray, varsize)) { - DHD_ERROR(("%s: Downloaded NVRAM image is corrupted.\n", __FUNCTION__)); + DHD_ERROR(("%s: Downloaded NVRAM image is corrupted.\n", __func__)); } else DHD_ERROR(("%s: Download, Upload and compare of NVRAM succeeded.\n", - __FUNCTION__)); + __func__)); MFREE(bus->dhd->osh, nvram_ularray, varsize); #endif /* DHD_DEBUG */ @@ -4722,9 +4722,9 @@ dhdsdio_write_vars(dhd_bus_t *bus) phys_size += bus->dongle_ram_base; /* adjust to the user specified RAM */ - DHD_INFO(("Physical memory size: %d, usable memory size: %d\n", + DHD_TRACE(("Physical memory size: %d, usable memory size: %d\n", phys_size, bus->ramsize)); - DHD_INFO(("Vars are at %d, orig varsize is %d\n", + DHD_TRACE(("Vars are at %d, orig varsize is %d\n", varaddr, varsize)); varsize = ((phys_size - 4) - varaddr); @@ -4743,7 +4743,7 @@ dhdsdio_write_vars(dhd_bus_t *bus) varsizew = htol32(varsizew); } - DHD_INFO(("New varsize is %d, length token=0x%08x\n", varsize, varsizew)); + DHD_TRACE(("New varsize is %d, length token=0x%08x\n", varsize, varsizew)); /* Write the length token to the last word */ bcmerror = dhdsdio_membytes(bus, TRUE, (phys_size - 4), @@ -4778,7 +4778,7 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) if (si_setcore(bus->sih, ARMCR4_CORE_ID, 0)) { foundcr4 = 1; } else { - DHD_ERROR(("%s: Failed to find ARM core!\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to find ARM core!\n", __func__)); bcmerror = BCME_ERROR; goto fail; } @@ -4792,7 +4792,7 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) } if (!(si_setcore(bus->sih, SOCRAM_CORE_ID, 0))) { - DHD_ERROR(("%s: Failed to find SOCRAM core!\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to find SOCRAM core!\n", __func__)); bcmerror = BCME_ERROR; goto fail; } @@ -4800,7 +4800,7 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) si_core_reset(bus->sih, 0, 0); if (bcmsdh_regfail(bus->sdh)) { DHD_ERROR(("%s: Failure trying reset SOCRAM core?\n", - __FUNCTION__)); + __func__)); bcmerror = BCME_SDIO_ERROR; goto fail; } @@ -4839,19 +4839,19 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) } else { if (!si_setcore(bus->sih, ARMCR4_CORE_ID, 0)) { if (!(si_setcore(bus->sih, SOCRAM_CORE_ID, 0))) { - DHD_ERROR(("%s: Failed to find SOCRAM core!\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to find SOCRAM core!\n", __func__)); bcmerror = BCME_ERROR; goto fail; } if (!si_iscoreup(bus->sih)) { - DHD_ERROR(("%s: SOCRAM core is down after reset?\n", __FUNCTION__)); + DHD_ERROR(("%s: SOCRAM core is down after reset?\n", __func__)); bcmerror = BCME_ERROR; goto fail; } if ((bcmerror = dhdsdio_write_vars(bus))) { - DHD_ERROR(("%s: could not write vars to RAM\n", __FUNCTION__)); + DHD_ERROR(("%s: could not write vars to RAM\n", __func__)); goto fail; } @@ -4862,14 +4862,14 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) dhdsdio_devram_remap(bus, TRUE); #ifdef BCMSDIOLITE if (!si_setcore(bus->sih, CC_CORE_ID, 0)) { - DHD_ERROR(("%s: Can't set to Chip Common core?\n", __FUNCTION__)); + DHD_ERROR(("%s: Can't set to Chip Common core?\n", __func__)); bcmerror = BCME_ERROR; goto fail; } #else if (!si_setcore(bus->sih, PCMCIA_CORE_ID, 0) && !si_setcore(bus->sih, SDIOD_CORE_ID, 0)) { - DHD_ERROR(("%s: Can't change back to SDIO core?\n", __FUNCTION__)); + DHD_ERROR(("%s: Can't change back to SDIO core?\n", __func__)); bcmerror = BCME_ERROR; goto fail; } @@ -4878,7 +4878,7 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) if (!(si_setcore(bus->sih, ARM7S_CORE_ID, 0)) && !(si_setcore(bus->sih, ARMCM3_CORE_ID, 0))) { - DHD_ERROR(("%s: Failed to find ARM core!\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to find ARM core!\n", __func__)); bcmerror = BCME_ERROR; goto fail; } @@ -4886,19 +4886,19 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) /* cr4 has no socram, but tcm's */ /* write vars */ if ((bcmerror = dhdsdio_write_vars(bus))) { - DHD_ERROR(("%s: could not write vars to RAM\n", __FUNCTION__)); + DHD_ERROR(("%s: could not write vars to RAM\n", __func__)); goto fail; } #ifdef BCMSDIOLITE if (!si_setcore(bus->sih, CC_CORE_ID, 0)) { - DHD_ERROR(("%s: Can't set to Chip Common core?\n", __FUNCTION__)); + DHD_ERROR(("%s: Can't set to Chip Common core?\n", __func__)); bcmerror = BCME_ERROR; goto fail; } #else if (!si_setcore(bus->sih, PCMCIA_CORE_ID, 0) && !si_setcore(bus->sih, SDIOD_CORE_ID, 0)) { - DHD_ERROR(("%s: Can't change back to SDIO core?\n", __FUNCTION__)); + DHD_ERROR(("%s: Can't change back to SDIO core?\n", __func__)); bcmerror = BCME_ERROR; goto fail; } @@ -4907,7 +4907,7 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) /* switch back to arm core again */ if (!(si_setcore(bus->sih, ARMCR4_CORE_ID, 0))) { - DHD_ERROR(("%s: Failed to find ARM CR4 core!\n", __FUNCTION__)); + DHD_ERROR(("%s: Failed to find ARM CR4 core!\n", __func__)); bcmerror = BCME_ERROR; goto fail; } @@ -4924,9 +4924,9 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) if (bcmerror == BCME_OK && tmp != bus->resetinstr) { DHD_ERROR(("%s: Failed to write 0x%08x to addr 0\n", - __FUNCTION__, bus->resetinstr)); + __func__, bus->resetinstr)); DHD_ERROR(("%s: contents of addr 0 is 0x%08x\n", - __FUNCTION__, tmp)); + __func__, tmp)); bcmerror = BCME_SDIO_ERROR; goto fail; } @@ -4937,7 +4937,7 @@ dhdsdio_download_state(dhd_bus_t *bus, bool enter) si_core_reset(bus->sih, 0, 0); if (bcmsdh_regfail(bus->sdh)) { - DHD_ERROR(("%s: Failure trying to reset ARM core?\n", __FUNCTION__)); + DHD_ERROR(("%s: Failure trying to reset ARM core?\n", __func__)); bcmerror = BCME_SDIO_ERROR; goto fail; } @@ -4966,7 +4966,7 @@ dhd_bus_iovar_op(dhd_pub_t *dhdp, const char *name, int val_size; uint32 actionid; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); ASSERT(name); ASSERT(len >= 0); @@ -4995,10 +4995,10 @@ dhd_bus_iovar_op(dhd_pub_t *dhdp, const char *name, if (bcmsdh_iovar_op(bus->sdh, "sd_divisor", NULL, 0, &bus->sd_divisor, sizeof(int32), FALSE) != BCME_OK) { bus->sd_divisor = -1; - DHD_ERROR(("%s: fail on %s get\n", __FUNCTION__, name)); + DHD_ERROR(("%s: fail on %s get\n", __func__, name)); } else { - DHD_INFO(("%s: noted %s update, value now %d\n", - __FUNCTION__, name, bus->sd_divisor)); + DHD_TRACE(("%s: noted %s update, value now %d\n", + __func__, name, bus->sd_divisor)); } } /* If it was a mode change, read the new one */ @@ -5006,10 +5006,10 @@ dhd_bus_iovar_op(dhd_pub_t *dhdp, const char *name, if (bcmsdh_iovar_op(bus->sdh, "sd_mode", NULL, 0, &bus->sd_mode, sizeof(int32), FALSE) != BCME_OK) { bus->sd_mode = -1; - DHD_ERROR(("%s: fail on %s get\n", __FUNCTION__, name)); + DHD_ERROR(("%s: fail on %s get\n", __func__, name)); } else { - DHD_INFO(("%s: noted %s update, value now %d\n", - __FUNCTION__, name, bus->sd_mode)); + DHD_TRACE(("%s: noted %s update, value now %d\n", + __func__, name, bus->sd_mode)); } } /* Similar check for blocksize change */ @@ -5019,10 +5019,10 @@ dhd_bus_iovar_op(dhd_pub_t *dhdp, const char *name, &bus->blocksize, sizeof(int32), FALSE) != BCME_OK) { bus->blocksize = 0; DHD_ERROR(("%s: fail on fn %d %s get\n", - __FUNCTION__, fnum, "sd_blocksize")); + __func__, fnum, "sd_blocksize")); } else { - DHD_INFO(("%s: noted fn %d %s update, value now %d\n", - __FUNCTION__, fnum, "sd_blocksize", bus->blocksize)); + DHD_TRACE(("%s: noted fn %d %s update, value now %d\n", + __func__, fnum, "sd_blocksize", bus->blocksize)); dhdsdio_tune_fifoparam(bus); } @@ -5040,7 +5040,7 @@ dhd_bus_iovar_op(dhd_pub_t *dhdp, const char *name, goto exit; } - DHD_CTL(("%s: %s %s, len %d plen %d\n", __FUNCTION__, + DHD_CTL(("%s: %s %s, len %d plen %d\n", __func__, name, (set ? "set" : "get"), len, plen)); /* set up 'params' pointer in case this is a set command so that @@ -5081,7 +5081,7 @@ dhd_bus_stop(struct dhd_bus *bus, bool enforce_mutex) return; osh = bus->dhd->osh; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); bcmsdh_waitlockfree(bus->sdh); @@ -5090,7 +5090,7 @@ dhd_bus_stop(struct dhd_bus *bus, bool enforce_mutex) if ((bus->dhd->busstate == DHD_BUS_DOWN) || bus->dhd->hang_was_sent) { /* if Firmware already hangs disbale any interrupt */ - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; bus->hostintmask = 0; bcmsdh_intr_disable(bus->sdh); @@ -5116,11 +5116,11 @@ dhd_bus_stop(struct dhd_bus *bus, bool enforce_mutex) } if (err) { DHD_ERROR(("%s: Failed to force clock for F2: err %d\n", - __FUNCTION__, err)); + __func__, err)); } /* Turn off the bus (F2), free any pending packets */ - DHD_INTR(("%s: disable SDIO interrupts\n", __FUNCTION__)); + DHD_INTR(("%s: disable SDIO interrupts\n", __func__)); bcmsdh_intr_disable(bus->sdh); #ifndef BCMSPI bcmsdh_cfg_write(bus->sdh, SDIO_FUNC_0, SDIOD_CCCR_IOEN, SDIO_FUNC_ENABLE_1, NULL); @@ -5135,7 +5135,7 @@ dhd_bus_stop(struct dhd_bus *bus, bool enforce_mutex) /* Change our idea of bus state */ DHD_LINUX_GENERAL_LOCK(bus->dhd, flags); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; DHD_LINUX_GENERAL_UNLOCK(bus->dhd, flags); } @@ -5194,7 +5194,7 @@ dhd_txglom_enable(dhd_pub_t *dhdp, bool enable) uint32 rxglom; int32 ret; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); #ifdef BCMSDIOH_STD if (enable) @@ -5216,7 +5216,7 @@ dhd_txglom_enable(dhd_pub_t *dhdp, bool enable) } else #endif /* BCMSDIOH_TXGLOM */ bus->txglom_enable = FALSE; - printf("%s: enable %d\n", __FUNCTION__, bus->txglom_enable); + printf("%s: enable %d\n", __func__, bus->txglom_enable); dhd_conf_set_txglom_params(bus->dhd, bus->txglom_enable); bcmsdh_set_mode(bus->sdh, bus->dhd->conf->txglom_mode); } @@ -5238,7 +5238,7 @@ dhd_bus_init(dhd_pub_t *dhdp, bool enforce_mutex) int intr_extn; #endif - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); ASSERT(bus->dhd); if (!bus->dhd) @@ -5248,14 +5248,14 @@ dhd_bus_init(dhd_pub_t *dhdp, bool enforce_mutex) dhd_os_sdlock(bus->dhd); if (bus->sih->chip == BCM43362_CHIP_ID) { - printf("%s: delay 100ms for BCM43362\n", __FUNCTION__); + printf("%s: delay 100ms for BCM43362\n", __func__); OSL_DELAY(100000); // terence 20131209: delay for 43362 } /* Make sure backplane clock is on, needed to generate F2 interrupt */ dhdsdio_clkctl(bus, CLK_AVAIL, FALSE); if (bus->clkstate != CLK_AVAIL) { - DHD_ERROR(("%s: clock state is wrong. state = %d\n", __FUNCTION__, bus->clkstate)); + DHD_ERROR(("%s: clock state is wrong. state = %d\n", __func__, bus->clkstate)); ret = -1; goto exit; } @@ -5298,7 +5298,7 @@ dhd_bus_init(dhd_pub_t *dhdp, bool enforce_mutex) } if (err) { - DHD_ERROR(("%s: Failed to force clock for F2: err %d\n", __FUNCTION__, err)); + DHD_ERROR(("%s: Failed to force clock for F2: err %d\n", __func__, err)); ret = -1; goto exit; } @@ -5320,7 +5320,7 @@ dhd_bus_init(dhd_pub_t *dhdp, bool enforce_mutex) #endif /* !BCMSPI */ DHD_ERROR(("%s: enable 0x%02x, ready 0x%02x (waited %uus)\n", - __FUNCTION__, enable, ready, tmo.elapsed)); + __func__, enable, ready, tmo.elapsed)); #if defined(SDIO_ISR_THREAD) if (dhdp->conf->intr_extn) { @@ -5374,12 +5374,12 @@ dhd_bus_init(dhd_pub_t *dhdp, bool enforce_mutex) bus->intdis = FALSE; if (bus->intr) { - DHD_INTR(("%s: enable SDIO device interrupts\n", __FUNCTION__)); + DHD_INTR(("%s: enable SDIO device interrupts\n", __func__)); #ifndef BCMSPI_ANDROID bcmsdh_intr_enable(bus->sdh); #endif /* !BCMSPI_ANDROID */ } else { - DHD_INTR(("%s: disable SDIO interrupts\n", __FUNCTION__)); + DHD_INTR(("%s: disable SDIO interrupts\n", __func__)); bcmsdh_intr_disable(bus->sdh); } @@ -5398,8 +5398,8 @@ dhd_bus_init(dhd_pub_t *dhdp, bool enforce_mutex) /* Masking the chip active interrupt permanantly */ bus->hostintmask &= ~I_CHIPACTIVE; W_SDREG(bus->hostintmask, &bus->regs->hostintmask, retries); - DHD_INFO(("%s: disable I_CHIPACTIVE in hostintmask[0x%08x]\n", - __FUNCTION__, bus->hostintmask)); + DHD_TRACE(("%s: disable I_CHIPACTIVE in hostintmask[0x%08x]\n", + __func__, bus->hostintmask)); } else { bcmsdh_cfg_write(bus->sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, saveclk, &err); @@ -5427,11 +5427,11 @@ dhdsdio_rxfail(dhd_bus_t *bus, bool abort, bool rtx) uint8 hi, lo; int err; - DHD_ERROR(("%s: %sterminate frame%s\n", __FUNCTION__, + DHD_ERROR(("%s: %sterminate frame%s\n", __func__, (abort ? "abort command, " : ""), (rtx ? ", send NAK" : ""))); if (!KSO_ENAB(bus)) { - DHD_ERROR(("%s: Device asleep\n", __FUNCTION__)); + DHD_ERROR(("%s: Device asleep\n", __func__)); return; } @@ -5441,7 +5441,7 @@ dhdsdio_rxfail(dhd_bus_t *bus, bool abort, bool rtx) bcmsdh_cfg_write(sdh, SDIO_FUNC_1, SBSDIO_FUNC1_FRAMECTRL, SFC_RF_TERM, &err); if (err) { - DHD_ERROR(("%s: SBSDIO_FUNC1_FRAMECTRL cmd err\n", __FUNCTION__)); + DHD_ERROR(("%s: SBSDIO_FUNC1_FRAMECTRL cmd err\n", __func__)); goto fail; } bus->f1regdata++; @@ -5451,7 +5451,7 @@ dhdsdio_rxfail(dhd_bus_t *bus, bool abort, bool rtx) hi = bcmsdh_cfg_read(sdh, SDIO_FUNC_1, SBSDIO_FUNC1_RFRAMEBCHI, NULL); lo = bcmsdh_cfg_read(sdh, SDIO_FUNC_1, SBSDIO_FUNC1_RFRAMEBCLO, &err); if (err) { - DHD_ERROR(("%s: SBSDIO_FUNC1_RFAMEBCLO cmd err\n", __FUNCTION__)); + DHD_ERROR(("%s: SBSDIO_FUNC1_RFAMEBCLO cmd err\n", __func__)); goto fail; } @@ -5462,15 +5462,15 @@ dhdsdio_rxfail(dhd_bus_t *bus, bool abort, bool rtx) if ((hi > (lastrbc >> 8)) && (lo > (lastrbc & 0x00ff))) { DHD_ERROR(("%s: count growing: last 0x%04x now 0x%04x\n", - __FUNCTION__, lastrbc, ((hi << 8) + lo))); + __func__, lastrbc, ((hi << 8) + lo))); } lastrbc = (hi << 8) + lo; } if (!retries) { - DHD_ERROR(("%s: count never zeroed: last 0x%04x\n", __FUNCTION__, lastrbc)); + DHD_ERROR(("%s: count never zeroed: last 0x%04x\n", __func__, lastrbc)); } else { - DHD_INFO(("%s: flush took %d iterations\n", __FUNCTION__, (0xffff - retries))); + DHD_TRACE(("%s: flush took %d iterations\n", __func__, (0xffff - retries))); } if (rtx) { @@ -5488,7 +5488,7 @@ dhdsdio_rxfail(dhd_bus_t *bus, bool abort, bool rtx) fail: /* If we can't reach the device, signal failure */ if (err || bcmsdh_regfail(sdh)) { - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; } } @@ -5501,7 +5501,7 @@ dhdsdio_read_control(dhd_bus_t *bus, uint8 *hdr, uint len, uint doff) int sdret; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); /* Control data already received in aligned rxctl */ if ((bus->bus == SPI_BUS) && (!bus->usebufpool)) @@ -5547,7 +5547,7 @@ dhdsdio_read_control(dhd_bus_t *bus, uint8 *hdr, uint len, uint doff) /* Drop if the read is too big or it exceeds our maximum */ if ((rdlen + firstread) > bus->dhd->maxctl) { DHD_ERROR(("%s: %d-byte control read exceeds %d-byte buffer\n", - __FUNCTION__, rdlen, bus->dhd->maxctl)); + __func__, rdlen, bus->dhd->maxctl)); bus->dhd->rx_errors++; dhdsdio_rxfail(bus, FALSE, FALSE); goto done; @@ -5555,7 +5555,7 @@ dhdsdio_read_control(dhd_bus_t *bus, uint8 *hdr, uint len, uint doff) if ((len - doff) > bus->dhd->maxctl) { DHD_ERROR(("%s: %d-byte ctl frame (%d-byte ctl data) exceeds %d-byte limit\n", - __FUNCTION__, len, (len - doff), bus->dhd->maxctl)); + __func__, len, (len - doff), bus->dhd->maxctl)); bus->dhd->rx_errors++; bus->rx_toolong++; dhdsdio_rxfail(bus, FALSE, FALSE); goto done; @@ -5569,7 +5569,7 @@ dhdsdio_read_control(dhd_bus_t *bus, uint8 *hdr, uint len, uint doff) /* Control frame failures need retransmission */ if (sdret < 0) { - DHD_ERROR(("%s: read %d control bytes failed: %d\n", __FUNCTION__, rdlen, sdret)); + DHD_ERROR(("%s: read %d control bytes failed: %d\n", __func__, rdlen, sdret)); bus->rxc_errors++; /* dhd.rx_ctlerrs is higher level */ dhdsdio_rxfail(bus, TRUE, TRUE); goto done; @@ -5631,7 +5631,7 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) dptr = PKTDATA(osh, bus->glomd); if (!dlen || (dlen & 1)) { DHD_ERROR(("%s: bad glomd len (%d), ignore descriptor\n", - __FUNCTION__, dlen)); + __func__, dlen)); dlen = 0; } @@ -5643,13 +5643,13 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) if ((sublen < SDPCM_HDRLEN) || ((num == 0) && (sublen < (2 * SDPCM_HDRLEN)))) { DHD_ERROR(("%s: descriptor len %d bad: %d\n", - __FUNCTION__, num, sublen)); + __func__, num, sublen)); pnext = NULL; break; } if (sublen % DHD_SDALIGN) { DHD_ERROR(("%s: sublen %d not a multiple of %d\n", - __FUNCTION__, sublen, DHD_SDALIGN)); + __func__, sublen, DHD_SDALIGN)); usechain = FALSE; } totlen += sublen; @@ -5663,7 +5663,7 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) /* Allocate/chain packet for next subframe */ if ((pnext = PKTGET(osh, sublen + DHD_SDALIGN, FALSE)) == NULL) { DHD_ERROR(("%s: PKTGET failed, num %d len %d\n", - __FUNCTION__, num, sublen)); + __func__, num, sublen)); break; } ASSERT(!PKTLINK(pnext)); @@ -5683,11 +5683,11 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) /* If all allocations succeeded, save packet chain in bus structure */ if (pnext) { DHD_GLOM(("%s: allocated %d-byte packet chain for %d subframes\n", - __FUNCTION__, totlen, num)); + __func__, totlen, num)); if (DHD_GLOM_ON() && bus->nextlen) { if (totlen != bus->nextlen) { DHD_GLOM(("%s: glomdesc mismatch: nextlen %d glomdesc %d " - "rxseq %d\n", __FUNCTION__, bus->nextlen, + "rxseq %d\n", __func__, bus->nextlen, totlen, rxseq)); } } @@ -5711,7 +5711,7 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) /* Ok -- either we just generated a packet chain, or had one from before */ if (bus->glom) { if (DHD_GLOM_ON()) { - DHD_GLOM(("%s: attempt superframe read, packet chain:\n", __FUNCTION__)); + DHD_GLOM(("%s: attempt superframe read, packet chain:\n", __func__)); for (pnext = bus->glom; pnext; pnext = PKTNEXT(osh, pnext)) { DHD_GLOM((" %p: %p len 0x%04x (%d)\n", pnext, (uint8*)PKTDATA(osh, pnext), @@ -5739,7 +5739,7 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) sublen = (uint16)pktfrombuf(osh, pfirst, 0, dlen, bus->dataptr); if (sublen != dlen) { DHD_ERROR(("%s: FAILED TO COPY, dlen %d sublen %d\n", - __FUNCTION__, dlen, sublen)); + __func__, dlen, sublen)); errcode = -1; } pnext = NULL; @@ -5754,7 +5754,7 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) /* On failure, kill the superframe, allow a couple retries */ if (errcode < 0) { DHD_ERROR(("%s: glom read of %d bytes failed: %d\n", - __FUNCTION__, dlen, errcode)); + __func__, dlen, errcode)); bus->dhd->rx_errors++; if (bus->glomerr++ < 3) { @@ -5787,8 +5787,8 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) seq = SDPCM_PACKET_SEQUENCE(&dptr[SDPCM_FRAMETAG_LEN]); bus->nextlen = dptr[SDPCM_FRAMETAG_LEN + SDPCM_NEXTLEN_OFFSET]; if ((bus->nextlen << 4) > MAX_RX_DATASZ) { - DHD_INFO(("%s: got frame w/nextlen too large (%d) seq %d\n", - __FUNCTION__, bus->nextlen, seq)); + DHD_TRACE(("%s: got frame w/nextlen too large (%d) seq %d\n", + __func__, bus->nextlen, seq)); bus->nextlen = 0; } doff = SDPCM_DOFFSET_VALUE(&dptr[SDPCM_FRAMETAG_LEN]); @@ -5797,39 +5797,39 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) errcode = 0; if ((uint16)~(sublen^check)) { DHD_ERROR(("%s (superframe): HW hdr error: len/check 0x%04x/0x%04x\n", - __FUNCTION__, sublen, check)); + __func__, sublen, check)); errcode = -1; } else if (ROUNDUP(sublen, bus->blocksize) != dlen) { DHD_ERROR(("%s (superframe): len 0x%04x, rounded 0x%04x, expect 0x%04x\n", - __FUNCTION__, sublen, ROUNDUP(sublen, bus->blocksize), dlen)); + __func__, sublen, ROUNDUP(sublen, bus->blocksize), dlen)); errcode = -1; } else if (SDPCM_PACKET_CHANNEL(&dptr[SDPCM_FRAMETAG_LEN]) != SDPCM_GLOM_CHANNEL) { - DHD_ERROR(("%s (superframe): bad channel %d\n", __FUNCTION__, + DHD_ERROR(("%s (superframe): bad channel %d\n", __func__, SDPCM_PACKET_CHANNEL(&dptr[SDPCM_FRAMETAG_LEN]))); errcode = -1; } else if (SDPCM_GLOMDESC(&dptr[SDPCM_FRAMETAG_LEN])) { - DHD_ERROR(("%s (superframe): got second descriptor?\n", __FUNCTION__)); + DHD_ERROR(("%s (superframe): got second descriptor?\n", __func__)); errcode = -1; } else if ((doff < SDPCM_HDRLEN) || (doff > (PKTLEN(osh, pfirst) - SDPCM_HDRLEN))) { DHD_ERROR(("%s (superframe): Bad data offset %d: HW %d pkt %d min %d\n", - __FUNCTION__, doff, sublen, PKTLEN(osh, pfirst), + __func__, doff, sublen, PKTLEN(osh, pfirst), SDPCM_HDRLEN)); errcode = -1; } /* Check sequence number of superframe SW header */ if (rxseq != seq) { - DHD_INFO(("%s: (superframe) rx_seq %d, expected %d\n", - __FUNCTION__, seq, rxseq)); + DHD_TRACE(("%s: (superframe) rx_seq %d, expected %d\n", + __func__, seq, rxseq)); bus->rx_badseq++; rxseq = seq; } /* Check window for sanity */ if ((uint8)(txmax - bus->tx_seq) > 0x70) { - DHD_INFO(("%s: got unlikely tx max %d with tx_seq %d\n", - __FUNCTION__, txmax, bus->tx_seq)); + DHD_TRACE(("%s: got unlikely tx max %d with tx_seq %d\n", + __func__, txmax, bus->tx_seq)); txmax = bus->tx_max; } bus->tx_max = txmax; @@ -5856,21 +5856,21 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) if ((uint16)~(sublen^check)) { DHD_ERROR(("%s (subframe %d): HW hdr error: " "len/check 0x%04x/0x%04x\n", - __FUNCTION__, num, sublen, check)); + __func__, num, sublen, check)); errcode = -1; } else if ((sublen > dlen) || (sublen < SDPCM_HDRLEN)) { DHD_ERROR(("%s (subframe %d): length mismatch: " "len 0x%04x, expect 0x%04x\n", - __FUNCTION__, num, sublen, dlen)); + __func__, num, sublen, dlen)); errcode = -1; } else if ((chan != SDPCM_DATA_CHANNEL) && (chan != SDPCM_EVENT_CHANNEL)) { DHD_ERROR(("%s (subframe %d): bad channel %d\n", - __FUNCTION__, num, chan)); + __func__, num, chan)); errcode = -1; } else if ((doff < SDPCM_HDRLEN) || (doff > sublen)) { DHD_ERROR(("%s (subframe %d): Bad data offset %d: HW %d min %d\n", - __FUNCTION__, num, doff, sublen, SDPCM_HDRLEN)); + __func__, num, doff, sublen, SDPCM_HDRLEN)); errcode = -1; } } @@ -5910,14 +5910,14 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) doff = SDPCM_DOFFSET_VALUE(&dptr[SDPCM_FRAMETAG_LEN]); DHD_GLOM(("%s: Get subframe %d, %p(%p/%d), sublen %d chan %d seq %d\n", - __FUNCTION__, num, pfirst, PKTDATA(osh, pfirst), + __func__, num, pfirst, PKTDATA(osh, pfirst), PKTLEN(osh, pfirst), sublen, chan, seq)); ASSERT((chan == SDPCM_DATA_CHANNEL) || (chan == SDPCM_EVENT_CHANNEL)); if (rxseq != seq) { DHD_GLOM(("%s: rx_seq %d, expected %d\n", - __FUNCTION__, seq, rxseq)); + __func__, seq, rxseq)); bus->rx_badseq++; rxseq = seq; } @@ -5938,7 +5938,7 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) continue; } else if (dhd_prot_hdrpull(bus->dhd, &ifidx, pfirst, reorder_info_buf, &reorder_info_len) != 0) { - DHD_ERROR(("%s: rx protocol error\n", __FUNCTION__)); + DHD_ERROR(("%s: rx protocol error\n", __func__)); bus->dhd->rx_errors++; PKTFREE(osh, pfirst, FALSE); continue; @@ -5985,7 +5985,7 @@ dhdsdio_rxglom(dhd_bus_t *bus, uint8 rxseq) #ifdef DHD_DEBUG if (DHD_GLOM_ON()) { DHD_GLOM(("%s subframe %d to stack, %p(%p/%d) nxt/lnk %p/%p\n", - __FUNCTION__, num, pfirst, + __func__, num, pfirst, PKTDATA(osh, pfirst), PKTLEN(osh, pfirst), PKTNEXT(osh, pfirst), PKTLINK(pfirst))); prhex("", (uint8 *)PKTDATA(osh, pfirst), @@ -6060,11 +6060,11 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) bool sdtest = FALSE; /* To limit message spew from test mode */ #endif // endif - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); bus->readframes = TRUE; if (!KSO_ENAB(bus)) { - DHD_ERROR(("%s: KSO off\n", __FUNCTION__)); + DHD_ERROR(("%s: KSO off\n", __func__)); bus->readframes = FALSE; return 0; } @@ -6089,7 +6089,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) dstatus = bcmsdh_get_dstatus(bus->sdh); if (dstatus == 0) DHD_ERROR(("%s:ZERO spi dstatus, a case observed in PR61352 hit !!!\n", - __FUNCTION__)); + __func__)); DHD_TRACE(("Device status from regread = 0x%x\n", dstatus)); DHD_TRACE(("Device status from bit-reconstruction = 0x%x\n", @@ -6103,10 +6103,10 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if (bus->dwordmode) bus->nextlen = bus->nextlen << 2; DHD_TRACE(("Entering %s: length to be read from gSPI = %d\n", - __FUNCTION__, bus->nextlen)); + __func__, bus->nextlen)); } else { if (dstatus & STATUS_F2_PKT_AVAILABLE) - DHD_ERROR(("Underflow during %s.\n", __FUNCTION__)); + DHD_ERROR(("Underflow during %s.\n", __func__)); else DHD_ERROR(("False pkt-available intr.\n")); *finished = TRUE; @@ -6122,7 +6122,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if (bus->dhd->tcpack_sup_mode != TCPACK_SUP_DELAYTX) { if (bus->dotxinrx == FALSE) DHD_ERROR(("%s %d: dotxinrx FALSE with tcpack_sub_mode %d\n", - __FUNCTION__, __LINE__, bus->dhd->tcpack_sup_mode)); + __func__, __LINE__, bus->dhd->tcpack_sup_mode)); } #ifdef DEBUG_COUNTER else if (pktq_mlen(&bus->txq, ~bus->flowcontrol) > 0) { @@ -6152,9 +6152,9 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if (bus->glom || bus->glomd) { uint8 cnt; DHD_GLOM(("%s: calling rxglom: glomd %p, glom %p\n", - __FUNCTION__, bus->glomd, bus->glom)); + __func__, bus->glomd, bus->glom)); cnt = dhdsdio_rxglom(bus, rxseq); - DHD_GLOM(("%s: rxglom returned %d\n", __FUNCTION__, cnt)); + DHD_GLOM(("%s: rxglom returned %d\n", __func__, cnt)); rxseq += cnt - 1; rxleft = (rxleft > cnt) ? (rxleft - cnt) : 1; continue; @@ -6217,7 +6217,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) *finished = TRUE; DHD_ERROR(("%s: read %d control bytes failed " "due to spi underflow\n", - __FUNCTION__, rdlen)); + __func__, rdlen)); /* dhd.rx_ctlerrs is higher level */ bus->rxc_errors++; dhd_os_sdunlock_rxq(bus->dhd); @@ -6228,7 +6228,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Control frame failures need retransmission */ if (sdret < 0) { DHD_ERROR(("%s: read %d control bytes failed: %d\n", - __FUNCTION__, rdlen, sdret)); + __func__, rdlen, sdret)); /* dhd.rx_ctlerrs is higher level */ bus->rxc_errors++; dhd_os_sdunlock_rxq(bus->dhd); @@ -6240,7 +6240,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Give up on data, request rtx of events */ DHD_ERROR(("%s (nextlen): PKTGET failed: len %d rdlen %d " "expected rxseq %d\n", - __FUNCTION__, len, rdlen, rxseq)); + __func__, len, rdlen, rxseq)); /* Just go try again w/normal header read */ dhd_os_sdunlock_rxq(bus->dhd); continue; @@ -6265,7 +6265,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) *finished = TRUE; DHD_ERROR(("%s (nextlen): read %d bytes failed due " "to spi underflow\n", - __FUNCTION__, rdlen)); + __func__, rdlen)); PKTFREE(bus->dhd->osh, pkt, FALSE); bus->dhd->rx_errors++; dhd_os_sdunlock_rxq(bus->dhd); @@ -6275,7 +6275,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if (sdret < 0) { DHD_ERROR(("%s (nextlen): read %d bytes failed: %d\n", - __FUNCTION__, rdlen, sdret)); + __func__, rdlen, sdret)); PKTFREE(bus->dhd->osh, pkt, FALSE); bus->dhd->rx_errors++; dhd_os_sdunlock_rxq(bus->dhd); @@ -6298,8 +6298,8 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* All zeros means readahead info was bad */ if (!(len|check)) { - DHD_INFO(("%s (nextlen): read zeros in HW header???\n", - __FUNCTION__)); + DHD_TRACE(("%s (nextlen): read zeros in HW header???\n", + __func__)); dhd_os_sdlock_rxq(bus->dhd); PKTFREE2(); dhd_os_sdunlock_rxq(bus->dhd); @@ -6310,7 +6310,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Validate check bytes */ if ((uint16)~(len^check)) { DHD_ERROR(("%s (nextlen): HW hdr error: nextlen/len/check" - " 0x%04x/0x%04x/0x%04x\n", __FUNCTION__, nextlen, + " 0x%04x/0x%04x/0x%04x\n", __func__, nextlen, len, check)); dhd_os_sdlock_rxq(bus->dhd); PKTFREE2(); @@ -6324,7 +6324,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Validate frame length */ if (len < SDPCM_HDRLEN) { DHD_ERROR(("%s (nextlen): HW hdr length invalid: %d\n", - __FUNCTION__, len)); + __func__, len)); dhd_os_sdlock_rxq(bus->dhd); PKTFREE2(); dhd_os_sdunlock_rxq(bus->dhd); @@ -6348,7 +6348,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Mismatch, force retry w/normal header (may be >4K) */ DHD_ERROR(("%s (nextlen): mismatch, nextlen %d len %d rnd %d; " "expected rxseq %d\n", - __FUNCTION__, nextlen, len, ROUNDUP(len, 16), rxseq)); + __func__, nextlen, len, ROUNDUP(len, 16), rxseq)); dhd_os_sdlock_rxq(bus->dhd); PKTFREE2(); dhd_os_sdunlock_rxq(bus->dhd); @@ -6368,7 +6368,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if (bus->bus == SPI_BUS) { /* Use reconstructed dstatus bits and find out readahead size */ dstatus = bcmsdh_get_dstatus((void *)bus->sdh); - DHD_INFO(("Device status from bit-reconstruction = 0x%x\n", + DHD_TRACE(("Device status from bit-reconstruction = 0x%x\n", bcmsdh_get_dstatus((void *)bus->sdh))); if (dstatus & STATUS_F2_PKT_AVAILABLE) { bus->nextlen = ((dstatus & STATUS_F2_PKT_LEN_MASK) >> @@ -6377,7 +6377,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) SPI_MAX_PKT_LEN : bus->nextlen; if (bus->dwordmode) bus->nextlen = bus->nextlen << 2; - DHD_INFO(("readahead len from gSPI = %d \n", + DHD_TRACE(("readahead len from gSPI = %d \n", bus->nextlen)); bus->dhd->rx_readahead_cnt ++; } else { @@ -6389,8 +6389,8 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) bus->nextlen = bus->rxhdr[SDPCM_FRAMETAG_LEN + SDPCM_NEXTLEN_OFFSET]; if ((bus->nextlen << 4) > MAX_RX_DATASZ) { - DHD_INFO(("%s (nextlen): got frame w/nextlen too large" - " (%d), seq %d\n", __FUNCTION__, bus->nextlen, + DHD_TRACE(("%s (nextlen): got frame w/nextlen too large" + " (%d), seq %d\n", __func__, bus->nextlen, seq)); bus->nextlen = 0; } @@ -6419,8 +6419,8 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Check and update sequence number */ if (rxseq != seq) { - DHD_INFO(("%s (nextlen): rx_seq %d, expected %d\n", - __FUNCTION__, seq, rxseq)); + DHD_TRACE(("%s (nextlen): rx_seq %d, expected %d\n", + __func__, seq, rxseq)); bus->rx_badseq++; rxseq = seq; } @@ -6429,13 +6429,13 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if ((uint8)(txmax - bus->tx_seq) > 0x70) { #ifdef BCMSPI if ((bus->bus == SPI_BUS) && !(dstatus & STATUS_F2_RX_READY)) { - DHD_INFO(("%s: got unlikely tx max %d with tx_seq %d\n", - __FUNCTION__, txmax, bus->tx_seq)); + DHD_TRACE(("%s: got unlikely tx max %d with tx_seq %d\n", + __func__, txmax, bus->tx_seq)); txmax = bus->tx_seq + 2; } else { #endif /* BCMSPI */ - DHD_INFO(("%s: got unlikely tx max %d with tx_seq %d\n", - __FUNCTION__, txmax, bus->tx_seq)); + DHD_TRACE(("%s: got unlikely tx max %d with tx_seq %d\n", + __func__, txmax, bus->tx_seq)); txmax = bus->tx_max; #ifdef BCMSPI } @@ -6462,7 +6462,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) continue; } else { DHD_ERROR(("%s (nextlen): readahead on control" - " packet %d?\n", __FUNCTION__, seq)); + " packet %d?\n", __func__, seq)); /* Force retry w/normal header read */ bus->nextlen = 0; dhdsdio_rxfail(bus, FALSE, TRUE); @@ -6482,7 +6482,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Validate data offset */ if ((doff < SDPCM_HDRLEN) || (doff > len)) { DHD_ERROR(("%s (nextlen): bad data offset %d: HW len %d min %d\n", - __FUNCTION__, doff, len, SDPCM_HDRLEN)); + __func__, doff, len, SDPCM_HDRLEN)); dhd_os_sdlock_rxq(bus->dhd); PKTFREE2(); dhd_os_sdunlock_rxq(bus->dhd); @@ -6506,7 +6506,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) ASSERT(sdret != BCME_PENDING); if (sdret < 0) { - DHD_ERROR(("%s: RXHEADER FAILED: %d\n", __FUNCTION__, sdret)); + DHD_ERROR(("%s: RXHEADER FAILED: %d\n", __func__, sdret)); bus->rx_hdrfail++; dhdsdio_rxfail(bus, TRUE, TRUE); continue; @@ -6531,7 +6531,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Validate check bytes */ if ((uint16)~(len^check)) { DHD_ERROR(("%s: HW hdr error: len/check 0x%04x/0x%04x\n", - __FUNCTION__, len, check)); + __func__, len, check)); bus->rx_badhdr++; dhdsdio_rxfail(bus, FALSE, FALSE); continue; @@ -6539,7 +6539,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Validate frame length */ if (len < SDPCM_HDRLEN) { - DHD_ERROR(("%s: HW hdr length invalid: %d\n", __FUNCTION__, len)); + DHD_ERROR(("%s: HW hdr length invalid: %d\n", __func__, len)); continue; } @@ -6552,7 +6552,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Validate data offset */ if ((doff < SDPCM_HDRLEN) || (doff > len)) { DHD_ERROR(("%s: Bad data offset %d: HW len %d, min %d seq %d\n", - __FUNCTION__, doff, len, SDPCM_HDRLEN, seq)); + __func__, doff, len, SDPCM_HDRLEN, seq)); bus->rx_badhdr++; ASSERT(0); dhdsdio_rxfail(bus, FALSE, FALSE); @@ -6562,8 +6562,8 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Save the readahead length if there is one */ bus->nextlen = bus->rxhdr[SDPCM_FRAMETAG_LEN + SDPCM_NEXTLEN_OFFSET]; if ((bus->nextlen << 4) > MAX_RX_DATASZ) { - DHD_INFO(("%s (nextlen): got frame w/nextlen too large (%d), seq %d\n", - __FUNCTION__, bus->nextlen, seq)); + DHD_TRACE(("%s (nextlen): got frame w/nextlen too large (%d), seq %d\n", + __func__, bus->nextlen, seq)); bus->nextlen = 0; } @@ -6587,15 +6587,15 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) /* Check and update sequence number */ if (rxseq != seq) { - DHD_INFO(("%s: rx_seq %d, expected %d\n", __FUNCTION__, seq, rxseq)); + DHD_TRACE(("%s: rx_seq %d, expected %d\n", __func__, seq, rxseq)); bus->rx_badseq++; rxseq = seq; } /* Check window for sanity */ if ((uint8)(txmax - bus->tx_seq) > 0x70) { - DHD_INFO(("%s: got unlikely tx max %d with tx_seq %d\n", - __FUNCTION__, txmax, bus->tx_seq)); + DHD_TRACE(("%s: got unlikely tx max %d with tx_seq %d\n", + __func__, txmax, bus->tx_seq)); txmax = bus->tx_max; } bus->tx_max = txmax; @@ -6628,7 +6628,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if ((rdlen + firstread) > MAX_RX_DATASZ) { /* Too long -- skip this frame */ - DHD_ERROR(("%s: too long: len %d rdlen %d\n", __FUNCTION__, len, rdlen)); + DHD_ERROR(("%s: too long: len %d rdlen %d\n", __func__, len, rdlen)); bus->dhd->rx_errors++; bus->rx_toolong++; dhdsdio_rxfail(bus, FALSE, FALSE); continue; @@ -6638,7 +6638,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if (!(pkt = PKTGET(osh, (rdlen + firstread + DHD_SDALIGN), FALSE))) { /* Give up on data, request rtx of events */ DHD_ERROR(("%s: PKTGET failed: rdlen %d chan %d\n", - __FUNCTION__, rdlen, chan)); + __func__, rdlen, chan)); bus->dhd->rx_dropped++; dhd_os_sdunlock_rxq(bus->dhd); dhdsdio_rxfail(bus, FALSE, RETRYCHAN(chan)); @@ -6660,7 +6660,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) ASSERT(sdret != BCME_PENDING); if (sdret < 0) { - DHD_ERROR(("%s: read %d %s bytes failed: %d\n", __FUNCTION__, rdlen, + DHD_ERROR(("%s: read %d %s bytes failed: %d\n", __func__, rdlen, ((chan == SDPCM_EVENT_CHANNEL) ? "event" : ((chan == SDPCM_DATA_CHANNEL) ? "data" : "test")), sdret)); dhd_os_sdlock_rxq(bus->dhd); @@ -6686,7 +6686,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) if (chan == SDPCM_GLOM_CHANNEL) { if (SDPCM_GLOMDESC(&bus->rxhdr[SDPCM_FRAMETAG_LEN])) { DHD_GLOM(("%s: got glom descriptor, %d bytes:\n", - __FUNCTION__, len)); + __func__, len)); #ifdef DHD_DEBUG if (DHD_GLOM_ON()) { prhex("Glom Data", PKTDATA(osh, pkt), len); @@ -6697,7 +6697,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) PKTPULL(osh, pkt, SDPCM_HDRLEN); bus->glomd = pkt; } else { - DHD_ERROR(("%s: glom superframe w/o descriptor!\n", __FUNCTION__)); + DHD_ERROR(("%s: glom superframe w/o descriptor!\n", __func__)); dhdsdio_rxfail(bus, FALSE, FALSE); } continue; @@ -6722,7 +6722,7 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) continue; } else if (dhd_prot_hdrpull(bus->dhd, &ifidx, pkt, reorder_info_buf, &reorder_info_len) != 0) { - DHD_ERROR(("%s: rx protocol error\n", __FUNCTION__)); + DHD_ERROR(("%s: rx protocol error\n", __func__)); dhd_os_sdlock_rxq(bus->dhd); PKTFREE(bus->dhd->osh, pkt, FALSE); dhd_os_sdunlock_rxq(bus->dhd); @@ -6758,10 +6758,10 @@ dhdsdio_readframes(dhd_bus_t *bus, uint maxframes, bool *finished) #ifdef DHD_DEBUG /* Message if we hit the limit */ if (!rxleft && !sdtest) - DHD_DATA(("%s: hit rx limit of %d frames\n", __FUNCTION__, maxframes)); + DHD_DATA(("%s: hit rx limit of %d frames\n", __func__, maxframes)); else #endif /* DHD_DEBUG */ - DHD_DATA(("%s: processed %d frames\n", __FUNCTION__, rxcount)); + DHD_DATA(("%s: processed %d frames\n", __func__, rxcount)); /* Back off rxseq if awaiting rtx, update rx_seq */ if (bus->rxskip) rxseq--; @@ -6786,7 +6786,7 @@ dhdsdio_hostmail(dhd_bus_t *bus, uint32 *hmbd) uint8 fcbits; uint retries = 0; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); /* Read mailbox data and ack that we did so */ R_SDREG(hmb_data, ®s->tohostmailboxdata, retries); @@ -6796,9 +6796,9 @@ dhdsdio_hostmail(dhd_bus_t *bus, uint32 *hmbd) /* Dongle recomposed rx frames, accept them again */ if (hmb_data & HMB_DATA_NAKHANDLED) { - DHD_INFO(("Dongle reports NAK handled, expect rtx of %d\n", bus->rx_seq)); + DHD_TRACE(("Dongle reports NAK handled, expect rtx of %d\n", bus->rx_seq)); if (!bus->rxskip) { - DHD_ERROR(("%s: unexpected NAKHANDLED!\n", __FUNCTION__)); + DHD_ERROR(("%s: unexpected NAKHANDLED!\n", __func__)); } bus->rxskip = FALSE; intstatus |= FRAME_AVAIL_MASK(bus); @@ -6813,7 +6813,7 @@ dhdsdio_hostmail(dhd_bus_t *bus, uint32 *hmbd) DHD_ERROR(("Version mismatch, dongle reports %d, expecting %d\n", bus->sdpcm_ver, SDPCM_PROT_VERSION)); else - DHD_INFO(("Dongle ready, protocol version %d\n", bus->sdpcm_ver)); + DHD_TRACE(("Dongle ready, protocol version %d\n", bus->sdpcm_ver)); #ifndef BCMSPI /* make sure for the SDIO_DEVICE_RXDATAINT_MODE_1 corecontrol is proper */ if ((bus->sih->buscoretype == SDIOD_CORE_ID) && (bus->sdpcmrev >= 4) && @@ -6897,12 +6897,12 @@ dhdsdio_dpc(dhd_bus_t *bus) #ifdef DEBUG_DPC_THREAD_WATCHDOG bool is_resched_by_readframe = FALSE; #endif /* DEBUG_DPC_THREAD_WATCHDOG */ - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); dhd_os_sdlock(bus->dhd); DHD_LINUX_GENERAL_LOCK(bus->dhd, flags); if (bus->dhd->busstate == DHD_BUS_DOWN) { - DHD_ERROR(("%s: Bus down, ret\n", __FUNCTION__)); + DHD_ERROR(("%s: Bus down, ret\n", __func__)); bus->intstatus = 0; DHD_LINUX_GENERAL_UNLOCK(bus->dhd, flags); dhd_os_sdunlock(bus->dhd); @@ -6916,7 +6916,7 @@ dhdsdio_dpc(dhd_bus_t *bus) intstatus = bus->intstatus; if (!SLPAUTO_ENAB(bus) && !KSO_ENAB(bus)) { - DHD_ERROR(("%s: Device asleep\n", __FUNCTION__)); + DHD_ERROR(("%s: Device asleep\n", __func__)); goto exit; } @@ -6929,8 +6929,8 @@ dhdsdio_dpc(dhd_bus_t *bus) /* Check for inconsistent device control */ devctl = bcmsdh_cfg_read(sdh, SDIO_FUNC_1, SBSDIO_DEVICE_CTL, &err); if (err) { - DHD_ERROR(("%s: error reading DEVCTL: %d\n", __FUNCTION__, err)); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: error reading DEVCTL: %d\n", __func__, err)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; } else { ASSERT(devctl & SBSDIO_DEVCTL_CA_INT_ONLY); @@ -6940,27 +6940,27 @@ dhdsdio_dpc(dhd_bus_t *bus) /* Read CSR, if clock on switch to AVAIL, else ignore */ clkctl = bcmsdh_cfg_read(sdh, SDIO_FUNC_1, SBSDIO_FUNC1_CHIPCLKCSR, &err); if (err) { - DHD_ERROR(("%s: error reading CSR: %d\n", __FUNCTION__, err)); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: error reading CSR: %d\n", __func__, err)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; } - DHD_INFO(("DPC: PENDING, devctl 0x%02x clkctl 0x%02x\n", devctl, clkctl)); + DHD_TRACE(("DPC: PENDING, devctl 0x%02x clkctl 0x%02x\n", devctl, clkctl)); if (SBSDIO_HTAV(clkctl)) { devctl = bcmsdh_cfg_read(sdh, SDIO_FUNC_1, SBSDIO_DEVICE_CTL, &err); if (err) { DHD_ERROR(("%s: error reading DEVCTL: %d\n", - __FUNCTION__, err)); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + __func__, err)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; } devctl &= ~SBSDIO_DEVCTL_CA_INT_ONLY; bcmsdh_cfg_write(sdh, SDIO_FUNC_1, SBSDIO_DEVICE_CTL, devctl, &err); if (err) { DHD_ERROR(("%s: error writing DEVCTL: %d\n", - __FUNCTION__, err)); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + __func__, err)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; } bus->clkstate = CLK_AVAIL; @@ -7033,7 +7033,7 @@ dhdsdio_dpc(dhd_bus_t *bus) if (dhd_ulp_pre_redownload_check(bus->dhd, bus->sdh, hmbdata)) { if (dhd_bus_ulp_reinit_fw(bus) < 0) { DHD_ERROR(("%s:%d FW redownload failed\n", - __FUNCTION__, __LINE__)); + __func__, __LINE__)); goto exit; } } @@ -7075,12 +7075,12 @@ dhdsdio_dpc(dhd_bus_t *bus) /* Would be active due to wake-wlan in gSPI */ if (intstatus & I_CHIPACTIVE) { - DHD_INFO(("Dongle reports CHIPACTIVE\n")); + DHD_TRACE(("Dongle reports CHIPACTIVE\n")); intstatus &= ~I_CHIPACTIVE; } if (intstatus & I_HMB_FC_STATE) { - DHD_INFO(("Dongle reports HMB_FC_STATE\n")); + DHD_TRACE(("Dongle reports HMB_FC_STATE\n")); intstatus &= ~I_HMB_FC_STATE; } @@ -7109,7 +7109,7 @@ dhdsdio_dpc(dhd_bus_t *bus) if (bus->intr && bus->intdis && !bcmsdh_regfail(sdh) && !(bus->dhd->conf->oob_enabled_later && !bus->ctrl_frame_stat)) { DHD_INTR(("%s: enable SDIO interrupts, rxdone %d framecnt %d\n", - __FUNCTION__, rxdone, framecnt)); + __func__, rxdone, framecnt)); bus->intdis = FALSE; #if defined(OOB_INTR_ONLY) bcmsdh_oob_intr_set(bus->sdh, TRUE); @@ -7142,7 +7142,7 @@ dhdsdio_dpc(dhd_bus_t *bus) uint8 rxlim = 0; if (0 == dhdsdio_membytes(bus, FALSE, bus->rxlim_addr, (uint8 *)&rxlim, 1)) { if (bus->tx_max != rxlim) { - DHD_INFO(("%s: bus->tx_max/rxlim=%d/%d\n", __FUNCTION__, + DHD_TRACE(("%s: bus->tx_max/rxlim=%d/%d\n", __func__, bus->tx_max, rxlim)); bus->tx_max = rxlim; } @@ -7203,12 +7203,12 @@ dhdsdio_dpc(dhd_bus_t *bus) if ((bus->sih && bus->sih->buscorerev >= 12) && !(dhdsdio_sleepcsr_get(bus) & SBSDIO_FUNC1_SLEEPCSR_KSO_MASK)) { /* Bus failed because of KSO */ - DHD_ERROR(("%s: Bus failed due to KSO\n", __FUNCTION__)); + DHD_ERROR(("%s: Bus failed due to KSO\n", __func__)); bus->kso = FALSE; } else { DHD_ERROR(("%s: failed backplane access over SDIO, halting operation\n", - __FUNCTION__)); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + __func__)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; bus->intstatus = 0; } @@ -7240,7 +7240,7 @@ dhdsdio_dpc(dhd_bus_t *bus) if (bus->intr && bus->intdis && !bcmsdh_regfail(sdh) && (bus->dhd->conf->oob_enabled_later && !bus->ctrl_frame_stat)) { DHD_INTR(("%s: enable SDIO interrupts, rxdone %d framecnt %d\n", - __FUNCTION__, rxdone, framecnt)); + __func__, rxdone, framecnt)); bus->intdis = FALSE; #if defined(OOB_INTR_ONLY) bcmsdh_oob_intr_set(bus->sdh, TRUE); @@ -7266,9 +7266,9 @@ dhdsdio_dpc(dhd_bus_t *bus) dhd_os_sdunlock(bus->dhd); #ifdef DEBUG_DPC_THREAD_WATCHDOG if (bus->dhd->dhd_bug_on) { - DHD_INFO(("%s: resched = %d ctrl_frame_stat = %d intstatus 0x%08x" + DHD_TRACE(("%s: resched = %d ctrl_frame_stat = %d intstatus 0x%08x" " ipend = %d pktq_mlen = %d is_resched_by_readframe = %d \n", - __FUNCTION__, resched, bus->ctrl_frame_stat, + __func__, resched, bus->ctrl_frame_stat, bus->intstatus, bus->ipend, pktq_mlen(&bus->txq, ~bus->flowcontrol), is_resched_by_readframe)); @@ -7290,7 +7290,7 @@ dhd_bus_dpc(struct dhd_bus *bus) bool resched; /* Call the DPC directly. */ - DHD_TRACE(("Calling dhdsdio_dpc() from %s\n", __FUNCTION__)); + DHD_TRACE(("Calling dhdsdio_dpc() from %s\n", __func__)); resched = dhdsdio_dpc(bus); return resched; @@ -7303,17 +7303,17 @@ dhdsdio_isr(void *arg) bcmsdh_info_t *sdh; if (!bus) { - DHD_ERROR(("%s : bus is null pointer , exit \n", __FUNCTION__)); + DHD_ERROR(("%s : bus is null pointer , exit \n", __func__)); return; } sdh = bus->sdh; if (bus->dhd->busstate == DHD_BUS_DOWN) { - DHD_ERROR(("%s : bus is down. we have nothing to do\n", __FUNCTION__)); + DHD_ERROR(("%s : bus is down. we have nothing to do\n", __func__)); return; } - DHD_INTR(("%s: Enter\n", __FUNCTION__)); + DHD_INTR(("%s: Enter\n", __func__)); /* Count the interrupt call */ bus->intrcount++; @@ -7331,7 +7331,7 @@ dhdsdio_isr(void *arg) /* Disable additional interrupts (is this needed now)? */ if (bus->intr) { - DHD_INTR(("%s: disable SDIO interrupts\n", __FUNCTION__)); + DHD_INTR(("%s: disable SDIO interrupts\n", __func__)); } else { DHD_ERROR(("dhdsdio_isr() w/o interrupt configured!\n")); } @@ -7343,7 +7343,7 @@ dhdsdio_isr(void *arg) bus->intdis = TRUE; #if defined(SDIO_ISR_THREAD) - DHD_TRACE(("Calling dhdsdio_dpc() from %s\n", __FUNCTION__)); + DHD_TRACE(("Calling dhdsdio_dpc() from %s\n", __func__)); DHD_OS_WAKE_LOCK(bus->dhd); /* terence 20150209: dpc should be scheded again if dpc_sched is TRUE or dhd_bus_txdata can not schedule anymore because dpc_sched is TRUE now. @@ -7367,12 +7367,12 @@ void dhd_bus_dump_txpktstatics(struct dhd_bus *bus) uint32 total = 0; printf("%s: TYPE EVENT: %d pkts (size=%d) transfered\n", - __FUNCTION__, bus->tx_statics.event_count, bus->tx_statics.event_size); + __func__, bus->tx_statics.event_count, bus->tx_statics.event_size); printf("%s: TYPE CTRL: %d pkts (size=%d) transfered\n", - __FUNCTION__, bus->tx_statics.ctrl_count, bus->tx_statics.ctrl_size); + __func__, bus->tx_statics.ctrl_count, bus->tx_statics.ctrl_size); printf("%s: TYPE DATA: %d pkts (size=%d) transfered\n", - __FUNCTION__, bus->tx_statics.data_count, bus->tx_statics.data_size); - printf("%s: Glom size distribution:\n", __FUNCTION__); + __func__, bus->tx_statics.data_count, bus->tx_statics.data_size); + printf("%s: Glom size distribution:\n", __func__); for (i=0;itx_statics.glom_max;i++) { total += bus->tx_statics.glom_cnt[i]; } @@ -7398,7 +7398,7 @@ void dhd_bus_dump_txpktstatics(struct dhd_bus *bus) } } printk("\n"); - printf("%s: Glom spend time distribution(us):\n", __FUNCTION__); + printf("%s: Glom spend time distribution(us):\n", __func__); printk(KERN_CONT DHD_LOG_PREFIXS); for (i=0;itx_statics.glom_max;i++) { printk(KERN_CONT "%02d: %5u", i+1, bus->tx_statics.glom_cnt_us[i]); @@ -7412,13 +7412,13 @@ void dhd_bus_dump_txpktstatics(struct dhd_bus *bus) printk("\n"); if (total) { printf("%s: data(%d)/glom(%d)=%d, glom_max=%d\n", - __FUNCTION__, bus->tx_statics.data_count, total, + __func__, bus->tx_statics.data_count, total, bus->tx_statics.data_count/total, bus->tx_statics.glom_max); } printf("%s: TYPE RX GLOM: %d pkts (size=%d) transfered\n", - __FUNCTION__, bus->tx_statics.glom_count, bus->tx_statics.glom_size); + __func__, bus->tx_statics.glom_count, bus->tx_statics.glom_size); printf("%s: TYPE TEST: %d pkts (size=%d) transfered\n", - __FUNCTION__, bus->tx_statics.test_count, bus->tx_statics.test_size); + __func__, bus->tx_statics.test_count, bus->tx_statics.test_size); } void dhd_bus_clear_txpktstatics(struct dhd_bus *bus) @@ -7468,7 +7468,7 @@ dhdsdio_pktgen(dhd_bus_t *bus) if (bus->pktgen_print && (++bus->pktgen_ptick >= bus->pktgen_print)) { bus->pktgen_ptick = 0; printf("%s: send attempts %d, rcvd %d, errors %d\n", - __FUNCTION__, bus->pktgen_sent, bus->pktgen_rcvd, bus->pktgen_fail); + __func__, bus->pktgen_sent, bus->pktgen_rcvd, bus->pktgen_fail); /* Print throughput stats only for constant length packet runs */ if (bus->pktgen_minlen == bus->pktgen_maxlen) { @@ -7480,7 +7480,7 @@ dhdsdio_pktgen(dhd_bus_t *bus) bus->pktgen_prev_rcvd = bus->pktgen_rcvd; printf("%s: Tx Throughput %d kbps, Rx Throughput %d kbps\n", - __FUNCTION__, + __func__, (sent_pkts * bus->pktgen_len / jiffies_to_msecs(time_lapse)) * 8, (rcvd_pkts * bus->pktgen_len / jiffies_to_msecs(time_lapse)) * 8); } @@ -7511,7 +7511,7 @@ dhdsdio_pktgen(dhd_bus_t *bus) } if (!(pkt = PKTGET(osh, (len + SDPCM_HDRLEN + SDPCM_TEST_HDRLEN + DHD_SDALIGN), TRUE))) {; - DHD_ERROR(("%s: PKTGET failed!\n", __FUNCTION__)); + DHD_ERROR(("%s: PKTGET failed!\n", __func__)); break; } PKTALIGN(osh, pkt, (len + SDPCM_HDRLEN + SDPCM_TEST_HDRLEN), DHD_SDALIGN); @@ -7595,7 +7595,7 @@ dhdsdio_sdtest_set(dhd_bus_t *bus, uint count) /* Allocate the packet */ if (!(pkt = PKTGET(osh, SDPCM_HDRLEN + SDPCM_TEST_HDRLEN + SDPCM_TEST_PKT_CNT_FLD_LEN + DHD_SDALIGN, TRUE))) { - DHD_ERROR(("%s: PKTGET failed!\n", __FUNCTION__)); + DHD_ERROR(("%s: PKTGET failed!\n", __func__)); return; } PKTALIGN(osh, pkt, (SDPCM_HDRLEN + SDPCM_TEST_HDRLEN + @@ -7641,7 +7641,7 @@ dhdsdio_testrcv(dhd_bus_t *bus, void *pkt, uint seq) cmd = *data++; extra = *data++; len = *data++; len += *data++ << 8; - DHD_TRACE(("%s:cmd:%d, xtra:%d,len:%d\n", __FUNCTION__, cmd, extra, len)); + DHD_TRACE(("%s:cmd:%d, xtra:%d,len:%d\n", __func__, cmd, extra, len)); /* Check length for relevant commands */ if (cmd == SDPCM_TEST_DISCARD || cmd == SDPCM_TEST_ECHOREQ || cmd == SDPCM_TEST_ECHORSP) { if (pktlen != len + SDPCM_TEST_HDRLEN) { @@ -7705,7 +7705,7 @@ dhdsdio_testrcv(dhd_bus_t *bus, void *pkt, uint seq) case SDPCM_TEST_BURST: case SDPCM_TEST_SEND: default: - DHD_INFO(("dhdsdio_testrcv: unsupported or unknown command, pktlen %d seq %d" + DHD_TRACE(("dhdsdio_testrcv: unsupported or unknown command, pktlen %d seq %d" " cmd %d extra %d len %d\n", pktlen, seq, cmd, extra, len)); PKTFREE(osh, pkt, FALSE); break; @@ -7777,7 +7777,7 @@ dhd_bus_watchdog(dhd_pub_t *dhdp) dhd_bus_t *bus; unsigned long flags; - DHD_TIMER(("%s: Enter\n", __FUNCTION__)); + DHD_TIMER(("%s: Enter\n", __func__)); bus = dhdp->bus; @@ -7906,7 +7906,7 @@ dhd_bus_watchdog(dhd_pub_t *dhdp) */ if ((bus->idletime != 0) && (bus->idlecount >= bus->idletime) && NO_OTHER_ACTIVE_BUS_USER(bus)) { - DHD_TIMER(("%s: DHD Idle state!!\n", __FUNCTION__)); + DHD_TIMER(("%s: DHD Idle state!!\n", __func__)); if (!bus->poll && SLPAUTO_ENAB(bus)) { if (dhdsdio_bussleep(bus, TRUE) != BCME_BUSY) dhd_os_wd_timer(bus->dhd, 0); @@ -7974,7 +7974,7 @@ dhd_bus_console_in(dhd_pub_t *dhdp, uchar *msg, uint msglen) #ifndef CONSOLE_DPC if (!DATAOK(bus)) { DHD_CTL(("%s: No bus credit bus->tx_max %d, bus->tx_seq %d, pktq_len %d\n", - __FUNCTION__, bus->tx_max, bus->tx_seq, pktq_n_pkts_tot(&bus->txq))); + __func__, bus->tx_max, bus->tx_seq, pktq_n_pkts_tot(&bus->txq))); rv = BCME_NOTREADY; goto exit; } @@ -8049,7 +8049,7 @@ dhd_bus_txcons(dhd_pub_t *dhdp, uchar *msg, uint msglen) } if (msglen >= sizeof(bus->cons_cmd)) { - DHD_ERROR(("%s: \"%s\"(%d) too long\n", __FUNCTION__, msg, msglen)); + DHD_ERROR(("%s: \"%s\"(%d) too long\n", __func__, msg, msglen)); ret = BCME_BADARG; goto exit; } @@ -8057,14 +8057,14 @@ dhd_bus_txcons(dhd_pub_t *dhdp, uchar *msg, uint msglen) if (!strlen(bus->cons_cmd)) { strncpy(bus->cons_cmd, msg, sizeof(bus->cons_cmd)); DHD_CTL(("%s: \"%s\" delay send, tx_max %d, tx_seq %d, pktq_len %d\n", - __FUNCTION__, bus->cons_cmd, bus->tx_max, bus->tx_seq, pktq_n_pkts_tot(&bus->txq))); + __func__, bus->cons_cmd, bus->tx_max, bus->tx_seq, pktq_n_pkts_tot(&bus->txq))); if (!bus->dpc_sched) { bus->dpc_sched = TRUE; dhd_sched_dpc(bus->dhd); } } else { DHD_CTL(("%s: \"%s\" is pending, tx_max %d, tx_seq %d, pktq_len %d\n", - __FUNCTION__, bus->cons_cmd, bus->tx_max, bus->tx_seq, pktq_n_pkts_tot(&bus->txq))); + __func__, bus->cons_cmd, bus->tx_max, bus->tx_seq, pktq_n_pkts_tot(&bus->txq))); ret = BCME_NOTREADY; } @@ -8080,14 +8080,14 @@ static void dhd_dump_cis(uint fn, uint8 *cis) { uint byte, tag, tdata; - DHD_INFO(("Function %d CIS:\n", fn)); + DHD_TRACE(("Function %d CIS:\n", fn)); for (tdata = byte = 0; byte < SBSDIO_CIS_SIZE_LIMIT; byte++) { if ((byte % 16) == 0) - DHD_INFO((" ")); - DHD_INFO(("%02x ", cis[byte])); + DHD_TRACE((" ")); + DHD_TRACE(("%02x ", cis[byte])); if ((byte % 16) == 15) - DHD_INFO(("\n")); + DHD_TRACE(("\n")); if (!tdata--) { tag = cis[byte]; if (tag == 0xff) @@ -8097,11 +8097,11 @@ dhd_dump_cis(uint fn, uint8 *cis) else if ((byte + 1) < SBSDIO_CIS_SIZE_LIMIT) tdata = cis[byte + 1] + 1; else - DHD_INFO(("]")); + DHD_TRACE(("]")); } } if ((byte % 16) != 15) - DHD_INFO(("\n")); + DHD_TRACE(("\n")); } #endif /* DHD_DEBUG */ @@ -8201,8 +8201,8 @@ dhdsdio_probe(uint16 venid, uint16 devid, uint16 bus_no, uint16 slot, forcealign = TRUE; #endif /* !BCMSPI */ - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); - DHD_INFO(("%s: venid 0x%04x devid 0x%04x\n", __FUNCTION__, venid, devid)); + DHD_TRACE(("%s: Enter\n", __func__)); + DHD_TRACE(("%s: venid 0x%04x devid 0x%04x\n", __func__, venid, devid)); /* We make assumptions about address window mappings */ ASSERT((uintptr)regsva == si_enum_base(devid)); @@ -8218,31 +8218,31 @@ dhdsdio_probe(uint16 venid, uint16 devid, uint16 bus_no, uint16 slot, break; default: DHD_ERROR(("%s: unknown vendor: 0x%04x\n", - __FUNCTION__, venid)); + __func__, venid)); goto forcereturn; } /* Check the Device ID and make sure it's one that we support */ switch (devid) { case 0: - DHD_INFO(("%s: allow device id 0, will check chip internals\n", - __FUNCTION__)); + DHD_TRACE(("%s: allow device id 0, will check chip internals\n", + __func__)); break; default: DHD_ERROR(("%s: skipping 0x%04x/0x%04x, not a dongle\n", - __FUNCTION__, venid, devid)); + __func__, venid, devid)); goto forcereturn; } if (osh == NULL) { - DHD_ERROR(("%s: osh is NULL!\n", __FUNCTION__)); + DHD_ERROR(("%s: osh is NULL!\n", __func__)); goto forcereturn; } /* Allocate private bus interface state */ if (!(bus = MALLOC(osh, sizeof(dhd_bus_t)))) { - DHD_ERROR(("%s: MALLOC of dhd_bus_t failed\n", __FUNCTION__)); + DHD_ERROR(("%s: MALLOC of dhd_bus_t failed\n", __func__)); goto fail; } bzero(bus, sizeof(dhd_bus_t)); @@ -8264,13 +8264,13 @@ dhdsdio_probe(uint16 venid, uint16 devid, uint16 bus_no, uint16 slot, /* attempt to attach to the dongle */ if (!(dhdsdio_probe_attach(bus, osh, sdh, regsva, devid))) { - DHD_ERROR(("%s: dhdsdio_probe_attach failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdsdio_probe_attach failed\n", __func__)); goto fail; } /* Attach to the dhd/OS/network interface */ if (!(bus->dhd = dhd_attach(osh, bus, SDPCM_RESERVE))) { - DHD_ERROR(("%s: dhd_attach failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd_attach failed\n", __func__)); goto fail; } @@ -8280,38 +8280,38 @@ dhdsdio_probe(uint16 venid, uint16 devid, uint16 bus_no, uint16 slot, /* Allocate buffers */ if (!(dhdsdio_probe_malloc(bus, osh, sdh))) { - DHD_ERROR(("%s: dhdsdio_probe_malloc failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdsdio_probe_malloc failed\n", __func__)); goto fail; } if (!(dhdsdio_probe_init(bus, osh, sdh))) { - DHD_ERROR(("%s: dhdsdio_probe_init failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhdsdio_probe_init failed\n", __func__)); goto fail; } if (bus->intr) { /* Register interrupt callback, but mask it (not operational yet). */ - DHD_INTR(("%s: disable SDIO interrupts (not interested yet)\n", __FUNCTION__)); + DHD_INTR(("%s: disable SDIO interrupts (not interested yet)\n", __func__)); bcmsdh_intr_disable(sdh); if ((ret = bcmsdh_intr_reg(sdh, dhdsdio_isr, bus)) != 0) { DHD_ERROR(("%s: FAILED: bcmsdh_intr_reg returned %d\n", - __FUNCTION__, ret)); + __func__, ret)); goto fail; } - DHD_INTR(("%s: registered SDIO interrupt function ok\n", __FUNCTION__)); + DHD_INTR(("%s: registered SDIO interrupt function ok\n", __func__)); } else { - DHD_INFO(("%s: SDIO interrupt function is NOT registered due to polling mode\n", - __FUNCTION__)); + DHD_TRACE(("%s: SDIO interrupt function is NOT registered due to polling mode\n", + __func__)); } - DHD_INFO(("%s: completed!!\n", __FUNCTION__)); + DHD_TRACE(("%s: completed!!\n", __func__)); /* if firmware path present try to download and bring up bus */ bus->dhd->hang_report = TRUE; #if 0 // terence 20150325: fix for WPA/WPA2 4-way handshake fail in hostapd if (dhd_download_fw_on_driverload) { if ((ret = dhd_bus_start(bus->dhd)) != 0) { - DHD_ERROR(("%s: dhd_bus_start failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dhd_bus_start failed\n", __func__)); goto fail; } } @@ -8338,7 +8338,7 @@ dhdsdio_probe(uint16 venid, uint16 devid, uint16 bus_no, uint16 slot, /* Ok, have the per-port tell the stack we're open for business */ if (dhd_attach_net(bus->dhd, TRUE) != 0) { - DHD_ERROR(("%s: Net attach failed!!\n", __FUNCTION__)); + DHD_ERROR(("%s: Net attach failed!!\n", __func__)); goto fail; } @@ -8381,7 +8381,7 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, /* Return the window to backplane enumeration space for core access */ if (dhdsdio_set_siaddr_window(bus, si_enum_base(devid))) { - DHD_ERROR(("%s: FAILED to return to SI_ENUM_BASE\n", __FUNCTION__)); + DHD_ERROR(("%s: FAILED to return to SI_ENUM_BASE\n", __func__)); } #if defined(DHD_DEBUG) @@ -8421,17 +8421,17 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, numfn = 0; /* internally func is hardcoded to 1 as gSPI has cis on F1 only */ #endif /* !BCMSPI */ #ifndef BCMSDIOLITE - if (DHD_INFO_ON()) { + if (DHD_TRACE_ON()) { for (fn = 0; fn <= numfn; fn++) { if (!(cis[fn] = MALLOC(osh, SBSDIO_CIS_SIZE_LIMIT))) { - DHD_INFO(("dhdsdio_probe: fn %d cis malloc failed\n", fn)); + DHD_TRACE(("dhdsdio_probe: fn %d cis malloc failed\n", fn)); break; } bzero(cis[fn], SBSDIO_CIS_SIZE_LIMIT); if ((err = bcmsdh_cis_read(sdh, fn, cis[fn], SBSDIO_CIS_SIZE_LIMIT))) { - DHD_INFO(("dhdsdio_probe: fn %d cis read err %d\n", fn, err)); + DHD_TRACE(("dhdsdio_probe: fn %d cis read err %d\n", fn, err)); MFREE(osh, cis[fn], SBSDIO_CIS_SIZE_LIMIT); break; } @@ -8452,10 +8452,10 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, &size, sizeof(int32), FALSE) != BCME_OK) { size = 0; DHD_ERROR(("%s: fail on fn %d %s get\n", - __FUNCTION__, fn, "sd_blocksize")); + __func__, fn, "sd_blocksize")); } else { - DHD_INFO(("%s: Initial value for fn %d %s is %d\n", - __FUNCTION__, fn, "sd_blocksize", size)); + DHD_TRACE(("%s: Initial value for fn %d %s is %d\n", + __func__, fn, "sd_blocksize", size)); } if (size != 0 && size < value) { value = size; @@ -8464,12 +8464,12 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, if (bcmsdh_iovar_op(sdh, "sd_blocksize", NULL, 0, &value, sizeof(value), TRUE) != BCME_OK) { bus->blocksize = 0; - DHD_ERROR(("%s: fail on fn %d %s set\n", __FUNCTION__, + DHD_ERROR(("%s: fail on fn %d %s set\n", __func__, fn, "sd_blocksize")); } #endif #ifdef DHD_DEBUG - if (DHD_INFO_ON()) { + if (DHD_TRACE_ON()) { dhd_dump_cis(fn, cis[fn]); } #endif /* DHD_DEBUG */ @@ -8491,7 +8491,7 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, /* si_attach() will provide an SI handle and scan the backplane */ if (!(bus->sih = si_attach((uint)devid, osh, regsva, DHD_BUS, sdh, &bus->vars, &bus->varsz))) { - DHD_ERROR(("%s: si_attach failed!\n", __FUNCTION__)); + DHD_ERROR(("%s: si_attach failed!\n", __func__)); goto fail; } @@ -8504,7 +8504,7 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, if (!dhdsdio_chipmatch((uint16)bus->sih->chip)) { DHD_ERROR(("%s: unsupported chip: 0x%04x\n", - __FUNCTION__, bus->sih->chip)); + __func__, bus->sih->chip)); goto fail; } @@ -8522,19 +8522,19 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, (si_setcore(bus->sih, ARMCR4_CORE_ID, 0))) { bus->armrev = si_corerev(bus->sih); } else { - DHD_ERROR(("%s: failed to find ARM core!\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to find ARM core!\n", __func__)); goto fail; } if (!si_setcore(bus->sih, ARMCR4_CORE_ID, 0)) { if (!(bus->orig_ramsize = si_socram_size(bus->sih))) { - DHD_ERROR(("%s: failed to find SOCRAM memory!\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to find SOCRAM memory!\n", __func__)); goto fail; } } else { /* cr4 has a different way to find the RAM size from TCM's */ if (!(bus->orig_ramsize = si_tcm_size(bus->sih))) { - DHD_ERROR(("%s: failed to find CR4-TCM memory!\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to find CR4-TCM memory!\n", __func__)); goto fail; } /* also populate base address */ @@ -8580,7 +8580,7 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, default: bus->dongle_ram_base = 0; DHD_ERROR(("%s: WARNING: Using default ram base at 0x%x\n", - __FUNCTION__, bus->dongle_ram_base)); + __func__, bus->dongle_ram_base)); } } bus->ramsize = bus->orig_ramsize; @@ -8596,13 +8596,13 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, /* ...but normally deal with the SDPCMDEV core */ #ifdef BCMSDIOLITE if (!(bus->regs = si_setcore(bus->sih, CC_CORE_ID, 0))) { - DHD_ERROR(("%s: failed to find Chip Common core!\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to find Chip Common core!\n", __func__)); goto fail; } #else if (!(bus->regs = si_setcore(bus->sih, PCMCIA_CORE_ID, 0)) && !(bus->regs = si_setcore(bus->sih, SDIOD_CORE_ID, 0))) { - DHD_ERROR(("%s: failed to find SDIODEV core!\n", __FUNCTION__)); + DHD_ERROR(("%s: failed to find SDIODEV core!\n", __func__)); goto fail; } #endif // endif @@ -8653,20 +8653,20 @@ dhdsdio_probe_attach(struct dhd_bus *bus, osl_t *osh, void *sdh, void *regsva, static bool dhdsdio_probe_malloc(dhd_bus_t *bus, osl_t *osh, void *sdh) { - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (bus->dhd->maxctl) { bus->rxblen = ROUNDUP((bus->dhd->maxctl+SDPCM_HDRLEN), ALIGNMENT) + DHD_SDALIGN; if (!(bus->rxbuf = DHD_OS_PREALLOC(bus->dhd, DHD_PREALLOC_RXBUF, bus->rxblen))) { DHD_ERROR(("%s: MALLOC of %d-byte rxbuf failed\n", - __FUNCTION__, bus->rxblen)); + __func__, bus->rxblen)); goto fail; } } /* Allocate buffer to receive glomed packet */ if (!(bus->databuf = DHD_OS_PREALLOC(bus->dhd, DHD_PREALLOC_DATABUF, MAX_DATA_BUF))) { DHD_ERROR(("%s: MALLOC of %d-byte databuf failed\n", - __FUNCTION__, MAX_DATA_BUF)); + __func__, MAX_DATA_BUF)); /* release rxbuf which was already located as above */ if (!bus->rxblen) DHD_OS_PREFREE(bus->dhd, bus->rxbuf, bus->rxblen); @@ -8676,7 +8676,7 @@ dhdsdio_probe_malloc(dhd_bus_t *bus, osl_t *osh, void *sdh) bus->membuf = MALLOC(osh, MAX_MEM_BUF); if (bus->membuf == NULL) { DHD_ERROR(("%s: MALLOC of %d-byte membuf failed\n", - __FUNCTION__, MAX_MEM_BUF)); + __func__, MAX_MEM_BUF)); if (bus->databuf) { #ifndef CONFIG_DHD_USE_STATIC_BUF MFREE(osh, bus->databuf, MAX_DATA_BUF); @@ -8707,7 +8707,7 @@ dhdsdio_probe_init(dhd_bus_t *bus, osl_t *osh, void *sdh) { int32 fnum; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); bus->_srenab = FALSE; @@ -8720,7 +8720,7 @@ dhdsdio_probe_init(dhd_bus_t *bus, osl_t *osh, void *sdh) bcmsdh_cfg_write(sdh, SDIO_FUNC_0, SDIOD_CCCR_IOEN, SDIO_FUNC_ENABLE_1, NULL); #endif /* !BCMSPI */ - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; bus->sleeping = FALSE; bus->rxflow = FALSE; @@ -8739,21 +8739,21 @@ dhdsdio_probe_init(dhd_bus_t *bus, osl_t *osh, void *sdh) /* Query the SD clock speed */ if (bcmsdh_iovar_op(sdh, "sd_divisor", NULL, 0, &bus->sd_divisor, sizeof(int32), FALSE) != BCME_OK) { - DHD_ERROR(("%s: fail on %s get\n", __FUNCTION__, "sd_divisor")); + DHD_ERROR(("%s: fail on %s get\n", __func__, "sd_divisor")); bus->sd_divisor = -1; } else { - DHD_INFO(("%s: Initial value for %s is %d\n", - __FUNCTION__, "sd_divisor", bus->sd_divisor)); + DHD_TRACE(("%s: Initial value for %s is %d\n", + __func__, "sd_divisor", bus->sd_divisor)); } /* Query the SD bus mode */ if (bcmsdh_iovar_op(sdh, "sd_mode", NULL, 0, &bus->sd_mode, sizeof(int32), FALSE) != BCME_OK) { - DHD_ERROR(("%s: fail on %s get\n", __FUNCTION__, "sd_mode")); + DHD_ERROR(("%s: fail on %s get\n", __func__, "sd_mode")); bus->sd_mode = -1; } else { - DHD_INFO(("%s: Initial value for %s is %d\n", - __FUNCTION__, "sd_mode", bus->sd_mode)); + DHD_TRACE(("%s: Initial value for %s is %d\n", + __func__, "sd_mode", bus->sd_mode)); } /* Query the F2 block size, set roundup accordingly */ @@ -8761,10 +8761,10 @@ dhdsdio_probe_init(dhd_bus_t *bus, osl_t *osh, void *sdh) if (bcmsdh_iovar_op(sdh, "sd_blocksize", &fnum, sizeof(int32), &bus->blocksize, sizeof(int32), FALSE) != BCME_OK) { bus->blocksize = 0; - DHD_ERROR(("%s: fail on fn %d %s get\n", __FUNCTION__, fnum, "sd_blocksize")); + DHD_ERROR(("%s: fail on fn %d %s get\n", __func__, fnum, "sd_blocksize")); } else { - DHD_INFO(("%s: Initial value for fn %d %s is %d\n", - __FUNCTION__, fnum, "sd_blocksize", bus->blocksize)); + DHD_TRACE(("%s: Initial value for fn %d %s is %d\n", + __func__, fnum, "sd_blocksize", bus->blocksize)); dhdsdio_tune_fifoparam(bus); } @@ -8790,8 +8790,8 @@ dhdsdio_probe_init(dhd_bus_t *bus, osl_t *osh, void *sdh) &bus->sd_rxchain, sizeof(int32), FALSE) != BCME_OK) { bus->sd_rxchain = FALSE; } else { - DHD_INFO(("%s: bus module (through bcmsdh API) %s chaining\n", - __FUNCTION__, (bus->sd_rxchain ? "supports" : "does not support"))); + DHD_TRACE(("%s: bus module (through bcmsdh API) %s chaining\n", + __func__, (bus->sd_rxchain ? "supports" : "does not support"))); } bus->use_rxchain = (bool)bus->sd_rxchain; bus->txinrx_thres = CUSTOM_TXINRX_THRES; @@ -8831,7 +8831,7 @@ dhd_set_bus_params(struct dhd_bus *bus) bus->poll = bus->dhd->conf->dhd_poll; if (!bus->pollrate) bus->pollrate = 1; - printf("%s: set polling mode %d\n", __FUNCTION__, bus->dhd->conf->dhd_poll); + printf("%s: set polling mode %d\n", __func__, bus->dhd->conf->dhd_poll); } if (bus->dhd->conf->use_rxchain >= 0) { bus->use_rxchain = (bool)bus->dhd->conf->use_rxchain; @@ -8845,7 +8845,7 @@ dhd_set_bus_params(struct dhd_bus *bus) #ifdef MINIME if (bus->dhd->conf->fw_type == FW_TYPE_MINIME) { bus->ramsize = bus->dhd->conf->ramsize; - printf("%s: set ramsize 0x%x\n", __FUNCTION__, bus->ramsize); + printf("%s: set ramsize 0x%x\n", __func__, bus->ramsize); } #endif #ifdef DYNAMIC_MAX_HDR_READ @@ -8858,7 +8858,7 @@ dhd_set_bus_params(struct dhd_bus *bus) bus->hdrbufp = MALLOC(bus->dhd->osh, bus->dhd->conf->max_hdr_read + DHD_SDALIGN); if (bus->hdrbufp == NULL) { DHD_ERROR(("%s: MALLOC of %d-byte hdrbufp failed\n", - __FUNCTION__, bus->dhd->conf->max_hdr_read + DHD_SDALIGN)); + __func__, bus->dhd->conf->max_hdr_read + DHD_SDALIGN)); ret = -1; goto exit; } @@ -8877,7 +8877,7 @@ dhdsdio_download_firmware(struct dhd_bus *bus, osl_t *osh, void *sdh) #if defined(SUPPORT_MULTIPLE_REVISION) if (concate_revision(bus, bus->fw_path, bus->nv_path) != 0) { DHD_ERROR(("%s: fail to concatnate revison \n", - __FUNCTION__)); + __func__)); return BCME_BADARG; } #endif /* SUPPORT_MULTIPLE_REVISION */ @@ -8887,7 +8887,7 @@ dhdsdio_download_firmware(struct dhd_bus *bus, osl_t *osh, void *sdh) #endif /* DHD_BLOB_EXISTENCE_CHECK */ DHD_TRACE_HW4(("%s: firmware path=%s, nvram path=%s\n", - __FUNCTION__, bus->fw_path, bus->nv_path)); + __func__, bus->fw_path, bus->nv_path)); DHD_OS_WAKE_LOCK(bus->dhd); dhd_conf_set_path_params(bus->dhd, bus->fw_path, bus->nv_path); @@ -8913,7 +8913,7 @@ static void dhdsdio_release(dhd_bus_t *bus, osl_t *osh) { bool dongle_isolation = FALSE; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (bus) { ASSERT(osh); @@ -8956,13 +8956,13 @@ dhdsdio_release(dhd_bus_t *bus, osl_t *osh) MFREE(osh, bus, sizeof(dhd_bus_t)); } - DHD_TRACE(("%s: Disconnected\n", __FUNCTION__)); + DHD_TRACE(("%s: Disconnected\n", __func__)); } static void dhdsdio_release_malloc(dhd_bus_t *bus, osl_t *osh) { - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); if (bus->dhd && bus->dhd->dongle_reset) return; @@ -8997,7 +8997,7 @@ dhdsdio_release_malloc(dhd_bus_t *bus, osl_t *osh) static void dhdsdio_release_dongle(dhd_bus_t *bus, osl_t *osh, bool dongle_isolation, bool reset_flag) { - DHD_TRACE(("%s: Enter bus->dhd %p bus->dhd->dongle_reset %d \n", __FUNCTION__, + DHD_TRACE(("%s: Enter bus->dhd %p bus->dhd->dongle_reset %d \n", __func__, bus->dhd, bus->dhd->dongle_reset)); if ((bus->dhd && bus->dhd->dongle_reset) && reset_flag) @@ -9023,7 +9023,7 @@ dhdsdio_release_dongle(dhd_bus_t *bus, osl_t *osh, bool dongle_isolation, bool r bus->vars = NULL; } - DHD_TRACE(("%s: Disconnected\n", __FUNCTION__)); + DHD_TRACE(("%s: Disconnected\n", __func__)); } static void @@ -9031,7 +9031,7 @@ dhdsdio_disconnect(void *ptr) { dhd_bus_t *bus = (dhd_bus_t *)ptr; - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); DHD_MUTEX_LOCK(); if (bus) { @@ -9042,7 +9042,7 @@ dhdsdio_disconnect(void *ptr) } DHD_MUTEX_UNLOCK(); - DHD_TRACE(("%s: Disconnected\n", __FUNCTION__)); + DHD_TRACE(("%s: Disconnected\n", __func__)); } static int @@ -9056,7 +9056,7 @@ dhdsdio_suspend(void *context) dhd_bus_t *bus = (dhd_bus_t*)context; unsigned long flags; - DHD_ERROR(("%s Enter\n", __FUNCTION__)); + DHD_ERROR(("%s Enter\n", __func__)); if (bus->dhd == NULL) { DHD_ERROR(("bus not inited\n")); return BCME_ERROR; @@ -9132,7 +9132,7 @@ dhdsdio_resume(void *context) dhd_bus_t *bus = (dhd_bus_t*)context; ulong flags; - DHD_ERROR(("%s Enter\n", __FUNCTION__)); + DHD_ERROR(("%s Enter\n", __func__)); if (bus->dhd->up == FALSE) { return BCME_OK; @@ -9173,7 +9173,7 @@ static bcmsdh_driver_t dhd_sdio = { int dhd_bus_register(void) { - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); return bcmsdh_register(&dhd_sdio); } @@ -9181,7 +9181,7 @@ dhd_bus_register(void) void dhd_bus_unregister(void) { - DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + DHD_TRACE(("%s: Enter\n", __func__)); bcmsdh_unregister(); } @@ -9214,11 +9214,11 @@ dhdsdio_download_code_file(struct dhd_bus *bus, char *pfw_path) uint firmware_sz = 0; #endif // endif - DHD_INFO(("%s: download firmware %s\n", __FUNCTION__, pfw_path)); + DHD_TRACE(("%s: download firmware %s\n", __func__, pfw_path)); image = dhd_os_open_image1(bus->dhd, pfw_path); if (image == NULL) { - printf("%s: Open firmware file failed %s\n", __FUNCTION__, pfw_path); + printf("%s: Open firmware file failed %s\n", __func__, pfw_path); goto err; } @@ -9227,14 +9227,14 @@ dhdsdio_download_code_file(struct dhd_bus *bus, char *pfw_path) memblock_size = MAX_MEMBLOCK; memptr = memblock = MALLOC(bus->dhd->osh, memblock_size + DHD_SDALIGN); if (memblock == NULL) { - DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __FUNCTION__, + DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __func__, memblock_size)); goto err; } if (dhd_msg_level & DHD_TRACE_VAL) { memptr_tmp = MALLOC(bus->dhd->osh, MEMBLOCK + DHD_SDALIGN); if (memptr_tmp == NULL) { - DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __FUNCTION__, MEMBLOCK)); + DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __func__, MEMBLOCK)); goto err; } } @@ -9256,7 +9256,7 @@ dhdsdio_download_code_file(struct dhd_bus *bus, char *pfw_path) } } if (len < 0) { - DHD_ERROR(("%s: dhd_os_get_image_block failed (%d)\n", __FUNCTION__, len)); + DHD_ERROR(("%s: dhd_os_get_image_block failed (%d)\n", __func__, len)); bcmerror = BCME_ERROR; goto err; } @@ -9274,7 +9274,7 @@ dhdsdio_download_code_file(struct dhd_bus *bus, char *pfw_path) bcmerror = dhdsdio_membytes(bus, TRUE, offset, memptr, len); if (bcmerror) { DHD_ERROR(("%s: error %d on writing %d membytes at 0x%08x\n", - __FUNCTION__, bcmerror, memblock_size, offset)); + __func__, bcmerror, memblock_size, offset)); goto err; } @@ -9282,14 +9282,14 @@ dhdsdio_download_code_file(struct dhd_bus *bus, char *pfw_path) bcmerror = dhdsdio_membytes(bus, FALSE, offset, memptr_tmp, len); if (bcmerror) { DHD_ERROR(("%s: error %d on reading %d membytes at 0x%08x\n", - __FUNCTION__, bcmerror, MEMBLOCK, offset)); + __func__, bcmerror, MEMBLOCK, offset)); goto err; } if (memcmp(memptr_tmp, memptr, len)) { - DHD_ERROR(("%s: Downloaded image is corrupted.\n", __FUNCTION__)); + DHD_ERROR(("%s: Downloaded image is corrupted.\n", __func__)); goto err; } else - DHD_INFO(("%s: Download, Upload and compare succeeded.\n", __FUNCTION__)); + DHD_TRACE(("%s: Download, Upload and compare succeeded.\n", __func__)); } offset += memblock_size; @@ -9351,7 +9351,7 @@ dhdsdio_download_ucode_file(struct dhd_bus *bus, char *ucode_path) uint firmware_sz = 0; #endif // endif - DHD_INFO(("%s: download firmware %s\n", __FUNCTION__, ucode_path)); + DHD_TRACE(("%s: download firmware %s\n", __func__, ucode_path)); ucode_base = dhdsdio_ucode_base(bus); @@ -9365,7 +9365,7 @@ dhdsdio_download_ucode_file(struct dhd_bus *bus, char *ucode_path) memptr = memblock = MALLOC(bus->dhd->osh, memblock_size + DHD_SDALIGN); if (memblock == NULL) { - DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __FUNCTION__, + DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __func__, memblock_size)); goto err; } @@ -9379,7 +9379,7 @@ dhdsdio_download_ucode_file(struct dhd_bus *bus, char *ucode_path) /* Download image */ while ((len = dhd_os_get_image_block((char*)memptr, memblock_size, image))) { if (len < 0) { - DHD_ERROR(("%s: dhd_os_get_image_block failed (%d)\n", __FUNCTION__, len)); + DHD_ERROR(("%s: dhd_os_get_image_block failed (%d)\n", __func__, len)); bcmerror = BCME_ERROR; goto err; } @@ -9387,7 +9387,7 @@ dhdsdio_download_ucode_file(struct dhd_bus *bus, char *ucode_path) bcmerror = dhdsdio_membytes(bus, TRUE, (ucode_base + offset), memptr, len); if (bcmerror) { DHD_ERROR(("%s: error %d on writing %d membytes at 0x%08x\n", - __FUNCTION__, bcmerror, memblock_size, offset)); + __func__, bcmerror, memblock_size, offset)); goto err; } @@ -9461,7 +9461,7 @@ dhdsdio_download_nvram(struct dhd_bus *bus) if (nvram_file_exists) { image = dhd_os_open_image1(bus->dhd, pnv_path); if (image == NULL) { - printf("%s: Open nvram file failed %s\n", __FUNCTION__, pnv_path); + printf("%s: Open nvram file failed %s\n", __func__, pnv_path); goto err; } } @@ -9469,7 +9469,7 @@ dhdsdio_download_nvram(struct dhd_bus *bus) memblock = MALLOC(bus->dhd->osh, MAX_NVRAMBUF_SIZE); if (memblock == NULL) { DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", - __FUNCTION__, MAX_NVRAMBUF_SIZE)); + __func__, MAX_NVRAMBUF_SIZE)); goto err; } @@ -9489,11 +9489,11 @@ dhdsdio_download_nvram(struct dhd_bus *bus) bcmerror = dhdsdio_downloadvars(bus, memblock, len + 1); if (bcmerror) { DHD_ERROR(("%s: error downloading vars: %d\n", - __FUNCTION__, bcmerror)); + __func__, bcmerror)); } } else { DHD_ERROR(("%s: error reading nvram file: %d\n", - __FUNCTION__, len)); + __func__, len)); bcmerror = BCME_SDIO_ERROR; } @@ -9522,14 +9522,14 @@ _dhdsdio_download_firmware(struct dhd_bus *bus) /* Keep arm in reset */ if (dhdsdio_download_state(bus, TRUE)) { - DHD_ERROR(("%s: error placing ARM core in reset\n", __FUNCTION__)); + DHD_ERROR(("%s: error placing ARM core in reset\n", __func__)); goto err; } /* External image takes precedence if specified */ if ((bus->fw_path != NULL) && (bus->fw_path[0] != '\0')) { if (dhdsdio_download_code_file(bus, bus->fw_path)) { - DHD_ERROR(("%s: dongle image file download failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dongle image file download failed\n", __func__)); goto err; } else { embed = FALSE; @@ -9539,19 +9539,19 @@ _dhdsdio_download_firmware(struct dhd_bus *bus) BCM_REFERENCE(embed); if (!dlok) { - DHD_ERROR(("%s: dongle image download failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dongle image download failed\n", __func__)); goto err; } /* External nvram takes precedence if specified */ if (dhdsdio_download_nvram(bus)) { - DHD_ERROR(("%s: dongle nvram file download failed\n", __FUNCTION__)); + DHD_ERROR(("%s: dongle nvram file download failed\n", __func__)); goto err; } /* Take arm out of reset */ if (dhdsdio_download_state(bus, FALSE)) { - DHD_ERROR(("%s: error getting out of ARM core reset\n", __FUNCTION__)); + DHD_ERROR(("%s: error getting out of ARM core reset\n", __func__)); goto err; } @@ -9568,7 +9568,7 @@ dhd_bcmsdh_recv_buf(dhd_bus_t *bus, uint32 addr, uint fn, uint flags, uint8 *buf int status; if (!KSO_ENAB(bus)) { - DHD_ERROR(("%s: Device asleep\n", __FUNCTION__)); + DHD_ERROR(("%s: Device asleep\n", __func__)); return BCME_NODEVICE; } @@ -9587,7 +9587,7 @@ dhd_bcmsdh_send_buf(dhd_bus_t *bus, uint32 addr, uint fn, uint flags, uint8 *buf bcmsdh_info_t *sdh; if (!KSO_ENAB(bus)) { - DHD_ERROR(("%s: Device asleep\n", __FUNCTION__)); + DHD_ERROR(("%s: Device asleep\n", __func__)); return BCME_NODEVICE; } @@ -9600,11 +9600,11 @@ dhd_bcmsdh_send_buf(dhd_bus_t *bus, uint32 addr, uint fn, uint flags, uint8 *buf ASSERT(ret != BCME_PENDING); if (ret == BCME_NODEVICE) { - DHD_ERROR(("%s: Device asleep already\n", __FUNCTION__)); + DHD_ERROR(("%s: Device asleep already\n", __func__)); } else if (ret < 0) { /* On failure, abort the command and terminate the frame */ DHD_ERROR(("%s: sdio error %d, abort command and terminate frame.\n", - __FUNCTION__, ret)); + __func__, ret)); bus->tx_sderrs++; bus->f1regdata++; bus->dhd->tx_errors++; @@ -9704,7 +9704,7 @@ dhdsdio_advertise_bus_cleanup(dhd_pub_t *dhdp) timeleft = dhd_os_busbusy_wait_negation(dhdp, &dhdp->dhd_bus_busy_state); if ((timeleft == 0) || (timeleft == 1)) { DHD_ERROR(("%s : Timeout due to dhd_bus_busy_state=0x%x\n", - __FUNCTION__, dhdp->dhd_bus_busy_state)); + __func__, dhdp->dhd_bus_busy_state)); ASSERT(0); } @@ -9724,7 +9724,7 @@ dhdsdio_advertise_bus_remove(dhd_pub_t *dhdp) timeleft = dhd_os_busbusy_wait_negation(dhdp, &dhdp->dhd_bus_busy_state); if ((timeleft == 0) || (timeleft == 1)) { DHD_ERROR(("%s : Timeout due to dhd_bus_busy_state=0x%x\n", - __FUNCTION__, dhdp->dhd_bus_busy_state)); + __func__, dhdp->dhd_bus_busy_state)); ASSERT(0); } @@ -9742,7 +9742,7 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) if (flag == TRUE) { if (!bus->dhd->dongle_reset) { - DHD_ERROR(("%s: == Power OFF ==\n", __FUNCTION__)); + DHD_ERROR(("%s: == Power OFF ==\n", __func__)); dhdsdio_advertise_bus_cleanup(bus->dhd); dhd_os_sdlock(dhdp); dhd_os_wd_timer(dhdp, 0); @@ -9764,24 +9764,24 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) dhdsdio_release_dongle(bus, bus->dhd->osh, TRUE, TRUE); bus->dhd->dongle_reset = TRUE; - DHD_ERROR(("%s: making dhdpub up FALSE\n", __FUNCTION__)); + DHD_ERROR(("%s: making dhdpub up FALSE\n", __func__)); bus->dhd->up = FALSE; dhd_txglom_enable(dhdp, FALSE); dhd_os_sdunlock(dhdp); DHD_LINUX_GENERAL_LOCK(bus->dhd, flags); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; DHD_LINUX_GENERAL_UNLOCK(bus->dhd, flags); - printf("%s: WLAN OFF DONE\n", __FUNCTION__); + printf("%s: WLAN OFF DONE\n", __func__); /* App can now remove power from device */ } else bcmerror = BCME_SDIO_ERROR; } else { /* App must have restored power to device before calling */ - printf("%s: == Power ON ==\n", __FUNCTION__); + printf("%s: == Power ON ==\n", __func__); if (bus->dhd->dongle_reset) { /* Turn on WLAN */ @@ -9796,7 +9796,7 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) bus->cl_devid)) { DHD_LINUX_GENERAL_LOCK(bus->dhd, flags); - DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __FUNCTION__)); + DHD_ERROR(("%s: making DHD_BUS_DOWN\n", __func__)); bus->dhd->busstate = DHD_BUS_DOWN; DHD_LINUX_GENERAL_UNLOCK(bus->dhd, flags); @@ -9825,7 +9825,7 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) #endif // endif dhd_os_wd_timer(dhdp, dhd_watchdog_ms); - DHD_TRACE(("%s: WLAN ON DONE\n", __FUNCTION__)); + DHD_TRACE(("%s: WLAN ON DONE\n", __func__)); } else { dhd_bus_stop(bus, FALSE); dhdsdio_release_dongle(bus, bus->dhd->osh, @@ -9833,7 +9833,7 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) } } else { DHD_ERROR(("%s Failed to download binary to the dongle\n", - __FUNCTION__)); + __func__)); if (bus->sih != NULL) { si_detach(bus->sih); bus->sih = NULL; @@ -9846,7 +9846,7 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) dhd_os_sdunlock(dhdp); } else { printf("%s called when dongle is not in reset\n", - __FUNCTION__); + __func__); printf("Will call dhd_bus_start instead\n"); dhd_bus_resume(dhdp, 1); #if defined(HW_OOB) || defined(FORCE_WOWLAN) @@ -9854,7 +9854,7 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) #endif if ((bcmerror = dhd_bus_start(dhdp)) != 0) DHD_ERROR(("%s: dhd_bus_start fail with %d\n", - __FUNCTION__, bcmerror)); + __func__, bcmerror)); } } @@ -9933,9 +9933,9 @@ concate_revision_bcm4335(dhd_bus_t *bus, char *fw_path, char *nv_path) char chipver_tag[4] = {0, }; #endif /* defined(SUPPORT_MULTIPLE_CHIPS) */ - DHD_TRACE(("%s: BCM4335 Multiple Revision Check\n", __FUNCTION__)); + DHD_TRACE(("%s: BCM4335 Multiple Revision Check\n", __func__)); if (bus->sih->chip != BCM4335_CHIP_ID) { - DHD_ERROR(("%s:Chip is not BCM4335\n", __FUNCTION__)); + DHD_ERROR(("%s:Chip is not BCM4335\n", __func__)); return -1; } chipver = bus->sih->chiprev; @@ -9966,9 +9966,9 @@ concate_revision_bcm4339(dhd_bus_t *bus, char *fw_path, char *nv_path) char chipver_tag[4] = {0, }; #endif /* defined(SUPPORT_MULTIPLE_CHIPS) */ - DHD_TRACE(("%s: BCM4339 Multiple Revision Check\n", __FUNCTION__)); + DHD_TRACE(("%s: BCM4339 Multiple Revision Check\n", __func__)); if (bus->sih->chip != BCM4339_CHIP_ID) { - DHD_ERROR(("%s:Chip is not BCM4339\n", __FUNCTION__)); + DHD_ERROR(("%s:Chip is not BCM4339\n", __func__)); return -1; } chipver = bus->sih->chiprev; @@ -10046,9 +10046,9 @@ concate_revision_bcm43454(dhd_bus_t *bus, char *fw_path, char *nv_path) int base_system_rev_for_nv = 0; #endif /* SUPPORT_MULTIPLE_BOARD_REV_FROM_DT */ - DHD_TRACE(("%s: BCM43454 Multiple Revision Check\n", __FUNCTION__)); + DHD_TRACE(("%s: BCM43454 Multiple Revision Check\n", __func__)); if (bus->sih->chip != BCM43454_CHIP_ID) { - DHD_ERROR(("%s:Chip is not BCM43454!\n", __FUNCTION__)); + DHD_ERROR(("%s:Chip is not BCM43454!\n", __func__)); return -1; } #ifdef SUPPORT_MULTIPLE_BOARD_REV_FROM_DT @@ -10076,7 +10076,7 @@ concate_revision(dhd_bus_t *bus, char *fw_path, char *nv_path) int res = 0; if (!bus || !bus->sih) { - DHD_ERROR(("%s:Bus is Invalid\n", __FUNCTION__)); + DHD_ERROR(("%s:Bus is Invalid\n", __func__)); return -1; } @@ -10287,7 +10287,7 @@ read_more_btbytes(struct dhd_bus *bus, void * file, char *line, int * addr_mode, { str_len = dhd_os_gets_image(bus->dhd, line, BTFW_MAX_STR_LEN, file); - DHD_TRACE(("%s: Len :0x%x %s\n", __FUNCTION__, str_len, line)); + DHD_TRACE(("%s: Len :0x%x %s\n", __func__, str_len, line)); if (str_len == 0) { break; @@ -10356,7 +10356,7 @@ _dhdsdio_download_btfw(struct dhd_bus *bus) mem_ptr = mem_blk = MALLOC(bus->dhd->osh, BTFW_DOWNLOAD_BLK_SIZE + DHD_SDALIGN); if (mem_blk == NULL) { - DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __FUNCTION__, + DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __func__, BTFW_DOWNLOAD_BLK_SIZE + DHD_SDALIGN)); goto err; } @@ -10365,7 +10365,7 @@ _dhdsdio_download_btfw(struct dhd_bus *bus) data_ptr = MALLOC(bus->dhd->osh, BTFW_DOWNLOAD_BLK_SIZE - 8); if (data_ptr == NULL) { - DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __FUNCTION__, + DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", __func__, BTFW_DOWNLOAD_BLK_SIZE - 8)); goto err; } @@ -10380,7 +10380,7 @@ _dhdsdio_download_btfw(struct dhd_bus *bus) line = MALLOC(bus->dhd->osh, BTFW_MAX_STR_LEN); if (line == NULL) { DHD_ERROR(("%s: Failed to allocate memory %d bytes\n", - __FUNCTION__, BTFW_MAX_STR_LEN)); + __func__, BTFW_MAX_STR_LEN)); goto err; } memset(line, 0, BTFW_MAX_STR_LEN); @@ -10425,7 +10425,7 @@ _dhdsdio_download_btfw(struct dhd_bus *bus) bcm_error = dhdsdio_membytes(bus, TRUE, start_addr, mem_ptr, index); if (bcm_error) { DHD_ERROR(("%s: error %d on writing %d membytes at 0x%08x\n", - __FUNCTION__, bcm_error, num_bytes, start_addr)); + __func__, bcm_error, num_bytes, start_addr)); goto err; } } @@ -10435,7 +10435,7 @@ _dhdsdio_download_btfw(struct dhd_bus *bus) bytes_to_write); if (bcm_error) { DHD_ERROR(("%s: error %d on writing %d membytes at 0x%08x\n", - __FUNCTION__, bcm_error, num_bytes, start_addr)); + __func__, bcm_error, num_bytes, start_addr)); goto err; } @@ -10445,7 +10445,7 @@ _dhdsdio_download_btfw(struct dhd_bus *bus) (mem_ptr + bytes_to_write), (index - bytes_to_write)); if (bcm_error) { DHD_ERROR(("%s: error %d on writing %d membytes at 0x%08x\n", - __FUNCTION__, bcm_error, num_bytes, start_addr)); + __func__, bcm_error, num_bytes, start_addr)); goto err; } } @@ -10475,7 +10475,7 @@ dhdsdio_download_btfw(struct dhd_bus *bus, osl_t *osh, void *sdh) int ret; DHD_TRACE(("%s: btfw path=%s\n", - __FUNCTION__, bus->btfw_path)); + __func__, bus->btfw_path)); DHD_OS_WAKE_LOCK(bus->dhd); dhd_os_sdlock(bus->dhd); @@ -10539,7 +10539,7 @@ bool dhd_bus_set_default_min_res_mask(struct dhd_bus *bus) { if ((bus == NULL) || (bus->sih == NULL)) { - DHD_ERROR(("%s(): Invalid Arguments \r\n", __FUNCTION__)); + DHD_ERROR(("%s(): Invalid Arguments \r\n", __func__)); return FALSE; } @@ -10547,7 +10547,7 @@ dhd_bus_set_default_min_res_mask(struct dhd_bus *bus) case BCM4339_CHIP_ID: bcmsdh_reg_write(bus->sdh, SI_ENUM_BASE(bus->sih) + 0x618, 4, 0x3fcaf377); if (bcmsdh_regfail(bus->sdh)) { - DHD_ERROR(("%s:%d Setting min_res_mask failed\n", __FUNCTION__, __LINE__)); + DHD_ERROR(("%s:%d Setting min_res_mask failed\n", __func__, __LINE__)); return FALSE; } break; @@ -10557,13 +10557,13 @@ dhd_bus_set_default_min_res_mask(struct dhd_bus *bus) si_get_pmu_reg_addr(bus->sih, OFFSETOF(pmuregs_t, min_res_mask)), 4, DEFAULT_43012_MIN_RES_MASK); if (bcmsdh_regfail(bus->sdh)) { - DHD_ERROR(("%s:%d Setting min_res_mask failed\n", __FUNCTION__, __LINE__)); + DHD_ERROR(("%s:%d Setting min_res_mask failed\n", __func__, __LINE__)); return FALSE; } break; default: - DHD_ERROR(("%s: Unhandled chip id\n", __FUNCTION__)); + DHD_ERROR(("%s: Unhandled chip id\n", __func__)); return FALSE; } @@ -10578,7 +10578,7 @@ dhd_bus_pmu_reg_reset(dhd_pub_t *dhdp) bcmsdh_reg_write(bus->sdh, si_get_pmu_reg_addr(bus->sih, OFFSETOF(pmuregs_t, swscratch)), 4, 0x0); if (bcmsdh_regfail(bus->sdh)) { - DHD_ERROR(("%s:%d Setting min_res_mask failed\n", __FUNCTION__, __LINE__)); + DHD_ERROR(("%s:%d Setting min_res_mask failed\n", __func__, __LINE__)); } } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_wlfc.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_wlfc.c index a54ed81243c73..eb2cdf0170768 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_wlfc.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/dhd_wlfc.c @@ -482,7 +482,7 @@ _dhd_wlfc_deque_afq(athost_wl_status_info_t* ctx, uint16 hslot, uint8 hcnt, uint } } else { /* middle packet is matched */ - DHD_INFO(("%s: out of order, seq(%d), head_seq(%d)\n", __FUNCTION__, hcnt, + DHD_TRACE(("%s: out of order, seq(%d), head_seq(%d)\n", __FUNCTION__, hcnt, WL_TXSTATUS_GET_FREERUNCTR(DHD_PKTTAG_H2DTAG(PKTTAG(q->head))))); ctx->stats.ooo_pkts[prec]++; PKTSETLINK(b, PKTLINK(p)); @@ -1863,7 +1863,7 @@ _dhd_wlfc_mac_entry_update(athost_wl_status_info_t* ctx, wlfc_mac_descriptor_t* } ctx->active_entry_count++; } else { - DHD_ERROR(("%s():%d, entry(%d)\n", __FUNCTION__, __LINE__, + DHD_TRACE(("%s():%d, entry(%d)\n", __FUNCTION__, __LINE__, (int)(entry - &ctx->destination_entries.nodes[0]))); } } @@ -2576,7 +2576,7 @@ _dhd_wlfc_dbg_senum_check(dhd_pub_t *dhd, uint8 *value) bcopy(&value[2], ×tamp, sizeof(uint32)); timestamp = ltoh32(timestamp); - DHD_INFO(("RXPKT: SEQ: %d, timestamp %d\n", value[1], timestamp)); + DHD_TRACE(("RXPKT: SEQ: %d, timestamp %d\n", value[1], timestamp)); return BCME_OK; } @@ -3044,7 +3044,7 @@ dhd_wlfc_parse_header_info(dhd_pub_t *dhd, void* pktbuf, int tlv_hdr_len, uchar processed += 2 + len; entry = NULL; - DHD_INFO(("%s():%d type %d remainder %d processed %d\n", + DHD_TRACE(("%s():%d type %d remainder %d processed %d\n", __FUNCTION__, __LINE__, type, remainder, processed)); if (type == WLFC_CTL_TYPE_HOST_REORDER_RXPKTS) @@ -3056,7 +3056,7 @@ dhd_wlfc_parse_header_info(dhd_pub_t *dhd, void* pktbuf, int tlv_hdr_len, uchar if (type != WLFC_CTL_TYPE_HOST_REORDER_RXPKTS && type != WLFC_CTL_TYPE_TRANS_ID) - DHD_INFO(("%s():%d dhd->wlfc_state is NULL yet!" + DHD_TRACE(("%s():%d dhd->wlfc_state is NULL yet!" " type %d remainder %d processed %d\n", __FUNCTION__, __LINE__, type, remainder, processed)); continue; @@ -3611,7 +3611,7 @@ dhd_wlfc_init(dhd_pub_t *dhd) Leaving the message for now, it should be removed after a while; once the tlv situation is stable. */ - DHD_INFO(("dhd_wlfc_init(): successfully %s bdcv2 tlv signaling, %d\n", + DHD_TRACE(("dhd_wlfc_init(): successfully %s bdcv2 tlv signaling, %d\n", dhd->wlfc_enabled?"enabled":"disabled", tlv)); } @@ -3621,7 +3621,7 @@ dhd_wlfc_init(dhd_pub_t *dhd) ret = dhd_wl_ioctl_get_intiovar(dhd, "wlfc_mode", &fw_caps, WLC_GET_VAR, FALSE, 0); if (!ret) { - DHD_INFO(("%s: query wlfc_mode succeed, fw_caps=0x%x\n", __FUNCTION__, fw_caps)); + DHD_TRACE(("%s: query wlfc_mode succeed, fw_caps=0x%x\n", __FUNCTION__, fw_caps)); if (WLFC_IS_OLD_DEF(fw_caps)) { #ifdef BCMDBUS @@ -3652,7 +3652,7 @@ dhd_wlfc_init(dhd_pub_t *dhd) } } - DHD_INFO(("dhd_wlfc_init(): wlfc_mode=0x%x, ret=%d\n", dhd->wlfc_mode, ret)); + DHD_TRACE(("dhd_wlfc_init(): wlfc_mode=0x%x, ret=%d\n", dhd->wlfc_mode, ret)); #ifdef LIMIT_BORROW dhd->wlfc_borrow_allowed = TRUE; #endif // endif diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/include/bcmsdh.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/include/bcmsdh.h index a3c0d1c1e0c21..5240bc9fc8423 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/include/bcmsdh.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/include/bcmsdh.h @@ -41,7 +41,13 @@ extern const uint bcmsdh_msglevel; #define BCMSDH_ERROR(x) printf x + +/* hard core trace - kmsg buff must be high */ +#if defined(BCMSDH_DEBUG_TRACE) +#define BCMSDH_INFO(x) printf x +#else #define BCMSDH_INFO(x) +#endif #if defined(BCMSDIO) && (defined(BCMSDIOH_STD) || defined(BCMSDIOH_BCM) || \ defined(BCMSDIOH_SPI)) diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.c index ca51268decb41..8dde10c7106a3 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.c @@ -83,29 +83,7 @@ #define WL_BSSIDX_MAX 16 #endif /* WL_STATIC_IF */ -uint android_msg_level = ANDROID_ERROR_LEVEL | ANDROID_MSG_LEVEL; - -#define ANDROID_ERROR_MSG(x, args...) \ - do { \ - if (android_msg_level & ANDROID_ERROR_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIXS "ANDROID-ERROR) " x, ## args); \ - } \ - } while (0) -#define ANDROID_TRACE_MSG(x, args...) \ - do { \ - if (android_msg_level & ANDROID_TRACE_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "ANDROID-TRACE) " x, ## args); \ - } \ - } while (0) -#define ANDROID_INFO_MSG(x, args...) \ - do { \ - if (android_msg_level & ANDROID_INFO_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "ANDROID-INFO) " x, ## args); \ - } \ - } while (0) -#define ANDROID_ERROR(x) ANDROID_ERROR_MSG x -#define ANDROID_TRACE(x) ANDROID_TRACE_MSG x -#define ANDROID_INFO(x) ANDROID_INFO_MSG x +uint android_msg_level = ANDROID_ERROR_LEVEL | ANDROID_INFO_LEVEL; /* * Android private command strings, PLEASE define new private commands here @@ -735,7 +713,7 @@ static int wl_android_get_link_speed(struct net_device *net, char *command, int /* Convert Kbps to Android Mbps */ link_speed = link_speed / 1000; bytes_written = snprintf(command, total_len, "LinkSpeed %d", link_speed); - ANDROID_INFO(("wl_android_get_link_speed: command result is %s\n", command)); + ANDROID_TRACE(("wl_android_get_link_speed: command result is %s\n", command)); return bytes_written; } @@ -841,7 +819,7 @@ static int wl_android_set_suspendopt(struct net_device *dev, char *command) if (ret_now != suspend_flag) { if (!(ret = net_os_set_suspend(dev, ret_now, 1))) { - ANDROID_INFO(("wl_android_set_suspendopt: Suspend Flag %d -> %d\n", + ANDROID_TRACE(("wl_android_set_suspendopt: Suspend Flag %d -> %d\n", ret_now, suspend_flag)); } else { ANDROID_ERROR(("wl_android_set_suspendopt: failed %d\n", ret)); @@ -863,7 +841,7 @@ static int wl_android_set_suspendmode(struct net_device *dev, char *command) suspend_flag = 1; if (!(ret = net_os_set_suspend(dev, suspend_flag, 0))) - ANDROID_INFO(("wl_android_set_suspendmode: Suspend Mode %d\n", suspend_flag)); + ANDROID_TRACE(("wl_android_set_suspendmode: Suspend Mode %d\n", suspend_flag)); else ANDROID_ERROR(("wl_android_set_suspendmode: failed %d\n", ret)); #endif // endif @@ -882,9 +860,9 @@ int wl_android_get_80211_mode(struct net_device *dev, char *command, int total_l if (error) return -1; - ANDROID_INFO(("wl_android_get_80211_mode: mode:%s\n", mode)); + ANDROID_TRACE(("wl_android_get_80211_mode: mode:%s\n", mode)); bytes_written = snprintf(command, total_len, "%s %s", CMD_80211_MODE, mode); - ANDROID_INFO(("wl_android_get_80211_mode: command:%s EXIT\n", command)); + ANDROID_TRACE(("wl_android_get_80211_mode: command:%s EXIT\n", command)); return bytes_written; } @@ -910,13 +888,13 @@ int wl_android_get_chanspec(struct net_device *dev, char *command, int total_len return -1; chanspec = wl_chspec_driver_to_host(chsp); - ANDROID_INFO(("wl_android_get_80211_mode: return value of chanspec:%x\n", chanspec)); + ANDROID_TRACE(("wl_android_get_80211_mode: return value of chanspec:%x\n", chanspec)); channel = chanspec & WL_CHANSPEC_CHAN_MASK; band = chanspec & WL_CHANSPEC_BAND_MASK; bw = chanspec & WL_CHANSPEC_BW_MASK; - ANDROID_INFO(("wl_android_get_80211_mode: channel:%d band:%d bandwidth:%d\n", + ANDROID_TRACE(("wl_android_get_80211_mode: channel:%d band:%d bandwidth:%d\n", channel, band, bw)); if (bw == WL_CHANSPEC_BW_80) @@ -951,7 +929,7 @@ int wl_android_get_chanspec(struct net_device *dev, char *command, int total_len bytes_written = snprintf(command, total_len, "%s channel %d band %s bw %d", CMD_CHANSPEC, channel, band == WL_CHANSPEC_BAND_5G ? "5G":"2G", bw); - ANDROID_INFO(("wl_android_get_chanspec: command:%s EXIT\n", command)); + ANDROID_TRACE(("command:%s EXIT\n", command)); return bytes_written; } @@ -968,7 +946,7 @@ int wl_android_get_datarate(struct net_device *dev, char *command, int total_len if (error) return -1; - ANDROID_INFO(("wl_android_get_datarate: datarate:%d\n", datarate)); + ANDROID_TRACE(("datarate:%d\n", datarate)); bytes_written = snprintf(command, total_len, "%s %d", CMD_DATARATE, (datarate/2)); return bytes_written; @@ -983,7 +961,7 @@ int wl_android_get_assoclist(struct net_device *dev, char *command, int total_le sizeof(struct ether_addr) + sizeof(uint)] = {0}; struct maclist *assoc_maclist = (struct maclist *)mac_buf; - ANDROID_TRACE(("wl_android_get_assoclist: ENTER\n")); + ANDROID_TRACE(("ENTER\n")); assoc_maclist->count = htod32(MAX_NUM_OF_ASSOCLIST); @@ -1004,7 +982,7 @@ int wl_android_get_assoclist(struct net_device *dev, char *command, int total_le if ((len > 0) && (len < (total_len - bytes_written))) { bytes_written += len; } else { - ANDROID_ERROR(("wl_android_get_assoclist: Insufficient buffer %d," + ANDROID_ERROR(("Insufficient buffer %d," " bytes_written %d\n", total_len, bytes_written)); bytes_written = -1; @@ -1025,12 +1003,12 @@ static int wl_android_set_csa(struct net_device *dev, char *command) u32 chnsp = 0; int err = 0; - ANDROID_INFO(("wl_android_set_csa: command:%s\n", command)); + ANDROID_TRACE(("command:%s\n", command)); command = (command + strlen(CMD_SET_CSA)); /* Order is mode, count channel */ if (!*++command) { - ANDROID_ERROR(("wl_android_set_csa:error missing arguments\n")); + ANDROID_ERROR(("error missing arguments\n")); return -1; } csa_arg.mode = bcm_atoi(command); @@ -1041,7 +1019,7 @@ static int wl_android_set_csa(struct net_device *dev, char *command) } if (!*++command) { - ANDROID_ERROR(("wl_android_set_csa: error missing count\n")); + ANDROID_ERROR(("error missing count\n")); return -1; } command++; @@ -1051,13 +1029,13 @@ static int wl_android_set_csa(struct net_device *dev, char *command) csa_arg.chspec = 0; command += 2; if (!*command) { - ANDROID_ERROR(("wl_android_set_csa: error missing channel\n")); + ANDROID_ERROR(("error missing channel\n")); return -1; } chnsp = wf_chspec_aton(command); if (chnsp == 0) { - ANDROID_ERROR(("wl_android_set_csa:chsp is not correct\n")); + ANDROID_ERROR(("chsp is not correct\n")); return -1; } chnsp = wl_chspec_host_to_driver(chnsp); @@ -1079,12 +1057,12 @@ static int wl_android_set_csa(struct net_device *dev, char *command) ANDROID_ERROR(("does not support per_chan_info\n")); return -1; } - ANDROID_INFO(("non radar sensitivity\n")); + ANDROID_TRACE(("non radar sensitivity\n")); } error = wldev_iovar_setbuf(dev, "csa", &csa_arg, sizeof(csa_arg), smbuf, sizeof(smbuf), NULL); if (error) { - ANDROID_ERROR(("wl_android_set_csa:set csa failed:%d\n", error)); + ANDROID_ERROR(("set csa failed:%d\n", error)); return -1; } return 0; @@ -1100,16 +1078,14 @@ wl_android_set_bcn_li_dtim(struct net_device *dev, char *command) dtim = *(command + strlen(CMD_SETDTIM_IN_SUSPEND) + 1) - '0'; if (dtim > (MAX_DTIM_ALLOWED_INTERVAL / MAX_DTIM_SKIP_BEACON_INTERVAL)) { - ANDROID_ERROR(("%s: failed, invalid dtim %d\n", - __FUNCTION__, dtim)); + ANDROID_ERROR(("failed, invalid dtim %d\n", dtim)); return BCME_ERROR; } if (!(ret = net_os_set_suspend_bcn_li_dtim(dev, dtim))) { - ANDROID_TRACE(("%s: SET bcn_li_dtim in suspend %d\n", - __FUNCTION__, dtim)); + ANDROID_TRACE(("SET bcn_li_dtim in suspend %d\n", dtim)); } else { - ANDROID_ERROR(("%s: failed %d\n", __FUNCTION__, ret)); + ANDROID_ERROR(("failed %d\n", ret)); } return ret; @@ -1124,10 +1100,10 @@ wl_android_set_max_dtim(struct net_device *dev, char *command) dtim_flag = *(command + strlen(CMD_MAXDTIM_IN_SUSPEND) + 1) - '0'; if (!(ret = net_os_set_max_dtim_enable(dev, dtim_flag))) { - ANDROID_TRACE(("wl_android_set_max_dtim: use Max bcn_li_dtim in suspend %s\n", + ANDROID_TRACE(("use Max bcn_li_dtim in suspend %s\n", (dtim_flag ? "Enable" : "Disable"))); } else { - ANDROID_ERROR(("wl_android_set_max_dtim: failed %d\n", ret)); + ANDROID_ERROR(("failed %d\n", ret)); } return ret; @@ -1212,13 +1188,13 @@ wls_parse_batching_cmd(struct net_device *dev, char *command, int total_len) char param[PNO_PARAM_SIZE+1], value[VALUE_SIZE+1]; struct dhd_pno_batch_params batch_params; - ANDROID_INFO(("wls_parse_batching_cmd: command=%s, len=%d\n", command, total_len)); + ANDROID_TRACE(("command=%s, len=%d\n", command, total_len)); len_remain = total_len; if (len_remain > (strlen(CMD_WLS_BATCHING) + 1)) { pos = command + strlen(CMD_WLS_BATCHING) + 1; len_remain -= strlen(CMD_WLS_BATCHING) + 1; } else { - ANDROID_ERROR(("wls_parse_batching_cmd: No arguments, total_len %d\n", total_len)); + ANDROID_ERROR(("No arguments, total_len %d\n", total_len)); err = BCME_ERROR; goto exit; } @@ -1227,7 +1203,7 @@ wls_parse_batching_cmd(struct net_device *dev, char *command, int total_len) if (len_remain > (strlen(PNO_BATCHING_SET) + 1)) { pos += strlen(PNO_BATCHING_SET) + 1; } else { - ANDROID_ERROR(("wls_parse_batching_cmd: %s missing arguments, total_len %d\n", + ANDROID_ERROR(("%s missing arguments, total_len %d\n", PNO_BATCHING_SET, total_len)); err = BCME_ERROR; goto exit; @@ -1246,20 +1222,20 @@ wls_parse_batching_cmd(struct net_device *dev, char *command, int total_len) tokens = sscanf(token, LIMIT_STR_FMT, param, value); if (!strncmp(param, PNO_PARAM_SCANFREQ, strlen(PNO_PARAM_SCANFREQ))) { batch_params.scan_fr = simple_strtol(value, NULL, 0); - ANDROID_INFO(("scan_freq : %d\n", batch_params.scan_fr)); + ANDROID_TRACE(("scan_freq : %d\n", batch_params.scan_fr)); } else if (!strncmp(param, PNO_PARAM_BESTN, strlen(PNO_PARAM_BESTN))) { batch_params.bestn = simple_strtol(value, NULL, 0); - ANDROID_INFO(("bestn : %d\n", batch_params.bestn)); + ANDROID_TRACE(("bestn : %d\n", batch_params.bestn)); } else if (!strncmp(param, PNO_PARAM_MSCAN, strlen(PNO_PARAM_MSCAN))) { batch_params.mscan = simple_strtol(value, NULL, 0); - ANDROID_INFO(("mscan : %d\n", batch_params.mscan)); + ANDROID_TRACE(("mscan : %d\n", batch_params.mscan)); } else if (!strncmp(param, PNO_PARAM_CHANNEL, strlen(PNO_PARAM_CHANNEL))) { i = 0; pos2 = value; tokens = sscanf(value, "<%s>", value); if (tokens != 1) { err = BCME_ERROR; - ANDROID_ERROR(("wls_parse_batching_cmd: invalid format" + ANDROID_ERROR(("invalid format" " for channel" " <> params\n")); goto exit; @@ -1273,7 +1249,7 @@ wls_parse_batching_cmd(struct net_device *dev, char *command, int total_len) if (*token2 == 'A' || *token2 == 'B') { batch_params.band = (*token2 == 'A')? WLC_BAND_5G : WLC_BAND_2G; - ANDROID_INFO(("band : %s\n", + ANDROID_TRACE(("band : %s\n", (*token2 == 'A')? "A" : "B")); } else { if ((batch_params.nchan >= WL_NUMCHANNELS) || @@ -1286,15 +1262,15 @@ wls_parse_batching_cmd(struct net_device *dev, char *command, int total_len) batch_params.chan_list[i++] = simple_strtol(token2, NULL, 0); batch_params.nchan++; - ANDROID_INFO(("channel :%d\n", + ANDROID_TRACE(("channel :%d\n", batch_params.chan_list[i-1])); } } } else if (!strncmp(param, PNO_PARAM_RTT, strlen(PNO_PARAM_RTT))) { batch_params.rtt = simple_strtol(value, NULL, 0); - ANDROID_INFO(("rtt : %d\n", batch_params.rtt)); + ANDROID_TRACE(("rtt : %d\n", batch_params.rtt)); } else { - ANDROID_ERROR(("wls_parse_batching_cmd : unknown param: %s\n", param)); + ANDROID_ERROR(("unknown param: %s\n", param)); err = BCME_ERROR; goto exit; } @@ -1322,7 +1298,7 @@ wls_parse_batching_cmd(struct net_device *dev, char *command, int total_len) err = snprintf(command, total_len, "OK"); } } else { - ANDROID_ERROR(("wls_parse_batching_cmd : unknown command\n")); + ANDROID_ERROR(("unknown command\n")); err = BCME_ERROR; goto exit; } @@ -1363,10 +1339,10 @@ static int wl_android_set_pno_setup(struct net_device *dev, char *command, int t 0x00 }; #endif /* PNO_SET_DEBUG */ - ANDROID_INFO(("wl_android_set_pno_setup: command=%s, len=%d\n", command, total_len)); + ANDROID_TRACE(("command=%s, len=%d\n", command, total_len)); if (total_len < (strlen(CMD_PNOSETUP_SET) + sizeof(cmd_tlv_t))) { - ANDROID_ERROR(("wl_android_set_pno_setup: argument=%d less min size\n", total_len)); + ANDROID_ERROR(("argument=%d less min size\n", total_len)); goto exit_proc; } #ifdef PNO_SET_DEBUG @@ -1392,38 +1368,38 @@ static int wl_android_set_pno_setup(struct net_device *dev, char *command, int t goto exit_proc; } else { if ((str_ptr[0] != PNO_TLV_TYPE_TIME) || (tlv_size_left <= 1)) { - ANDROID_ERROR(("wl_android_set_pno_setup: scan duration corrupted" + ANDROID_ERROR(("scan duration corrupted" " field size %d\n", tlv_size_left)); goto exit_proc; } str_ptr++; pno_time = simple_strtoul(str_ptr, &str_ptr, 16); - ANDROID_INFO(("wl_android_set_pno_setup: pno_time=%d\n", pno_time)); + ANDROID_TRACE(("pno_time=%d\n", pno_time)); if (str_ptr[0] != 0) { if ((str_ptr[0] != PNO_TLV_FREQ_REPEAT)) { - ANDROID_ERROR(("wl_android_set_pno_setup: pno repeat:" + ANDROID_ERROR(("pno repeat:" " corrupted field\n")); goto exit_proc; } str_ptr++; pno_repeat = simple_strtoul(str_ptr, &str_ptr, 16); - ANDROID_INFO(("wl_android_set_pno_setup: got pno_repeat=%d\n", + ANDROID_TRACE(("got pno_repeat=%d\n", pno_repeat)); if (str_ptr[0] != PNO_TLV_FREQ_EXPO_MAX) { - ANDROID_ERROR(("wl_android_set_pno_setup: FREQ_EXPO_MAX" + ANDROID_ERROR(("FREQ_EXPO_MAX" " corrupted field size\n")); goto exit_proc; } str_ptr++; pno_freq_expo_max = simple_strtoul(str_ptr, &str_ptr, 16); - ANDROID_INFO(("wl_android_set_pno_setup: pno_freq_expo_max=%d\n", + ANDROID_TRACE(("pno_freq_expo_max=%d\n", pno_freq_expo_max)); } } } else { - ANDROID_ERROR(("wl_android_set_pno_setup: get wrong TLV command\n")); + ANDROID_ERROR(("get wrong TLV command\n")); goto exit_proc; } @@ -1442,14 +1418,14 @@ static int wl_android_get_p2p_dev_addr(struct net_device *ndev, char *command, i #define MAC_ADDR_STR_LEN 18 if (total_len < MAC_ADDR_STR_LEN) { - ANDROID_ERROR(("wl_android_get_p2p_dev_addr: buflen %d is less than p2p dev addr\n", + ANDROID_ERROR(("buflen %d is less than p2p dev addr\n", total_len)); return -1; } ret = wl_cfg80211_get_p2p_dev_addr(ndev, &p2pdev_addr); if (ret) { - ANDROID_ERROR(("wl_android_get_p2p_dev_addr: Failed to get p2p dev addr\n")); + ANDROID_ERROR(("Failed to get p2p dev addr\n")); return -1; } return (snprintf(command, total_len, MACF, ETHERP_TO_MACF(&p2pdev_addr))); @@ -1466,21 +1442,21 @@ wl_android_set_ap_mac_list(struct net_device *dev, int macmode, struct maclist * /* set filtering mode */ if ((ret = wldev_ioctl_set(dev, WLC_SET_MACMODE, &macmode, sizeof(macmode)) != 0)) { - ANDROID_ERROR(("wl_android_set_ap_mac_list : WLC_SET_MACMODE error=%d\n", ret)); + ANDROID_ERROR(("WLC_SET_MACMODE error=%d\n", ret)); return ret; } if (macmode != MACLIST_MODE_DISABLED) { /* set the MAC filter list */ if ((ret = wldev_ioctl_set(dev, WLC_SET_MACLIST, maclist, sizeof(int) + sizeof(struct ether_addr) * maclist->count)) != 0) { - ANDROID_ERROR(("wl_android_set_ap_mac_list : WLC_SET_MACLIST error=%d\n", ret)); + ANDROID_ERROR(("WLC_SET_MACLIST error=%d\n", ret)); return ret; } /* get the current list of associated STAs */ assoc_maclist->count = MAX_NUM_OF_ASSOCLIST; if ((ret = wldev_ioctl_get(dev, WLC_GET_ASSOCLIST, assoc_maclist, sizeof(mac_buf))) != 0) { - ANDROID_ERROR(("wl_android_set_ap_mac_list: WLC_GET_ASSOCLIST error=%d\n", + ANDROID_ERROR(("WLC_GET_ASSOCLIST error=%d\n", ret)); return ret; } @@ -1491,7 +1467,7 @@ wl_android_set_ap_mac_list(struct net_device *dev, int macmode, struct maclist * match = 0; /* compare with each entry */ for (j = 0; j < maclist->count; j++) { - ANDROID_INFO(("wl_android_set_ap_mac_list: associated="MACDBG + ANDROID_TRACE(("associated="MACDBG "list = "MACDBG "\n", MAC2STRDBG(assoc_maclist->ea[i].octet), MAC2STRDBG(maclist->ea[j].octet))); @@ -1513,8 +1489,7 @@ wl_android_set_ap_mac_list(struct net_device *dev, int macmode, struct maclist * if ((ret = wldev_ioctl_set(dev, WLC_SCB_DEAUTHENTICATE_FOR_REASON, &scbval, sizeof(scb_val_t))) != 0) - ANDROID_ERROR(("wl_android_set_ap_mac_list:" - " WLC_SCB_DEAUTHENTICATE" + ANDROID_ERROR((" WLC_SCB_DEAUTHENTICATE" " error=%d\n", ret)); } @@ -1551,7 +1526,7 @@ wl_android_set_mac_address_filter(struct net_device *dev, char* str) macmode = bcm_atoi(token); if (macmode < MACLIST_MODE_DISABLED || macmode > MACLIST_MODE_ALLOW) { - ANDROID_ERROR(("wl_android_set_mac_address_filter: invalid macmode %d\n", macmode)); + ANDROID_ERROR(("invalid macmode %d\n", macmode)); return -1; } @@ -1561,7 +1536,7 @@ wl_android_set_mac_address_filter(struct net_device *dev, char* str) } macnum = bcm_atoi(token); if (macnum < 0 || macnum > MAX_NUM_MAC_FILT) { - ANDROID_ERROR(("wl_android_set_mac_address_filter: invalid number of MAC" + ANDROID_ERROR(("invalid number of MAC" " address entries %d\n", macnum)); return -1; @@ -1570,7 +1545,7 @@ wl_android_set_mac_address_filter(struct net_device *dev, char* str) list = (struct maclist*) MALLOCZ(dhd->osh, sizeof(int) + sizeof(struct ether_addr) * macnum); if (!list) { - ANDROID_ERROR(("wl_android_set_mac_address_filter : failed to allocate memory\n")); + ANDROID_ERROR(("failed to allocate memory\n")); return -1; } /* prepare the MAC list */ @@ -1579,19 +1554,19 @@ wl_android_set_mac_address_filter(struct net_device *dev, char* str) for (i = 0; i < list->count; i++) { token = strsep((char**)&str, " "); if (token == NULL) { - ANDROID_ERROR(("wl_android_set_mac_address_filter : No mac address present\n")); + ANDROID_ERROR(("No mac address present\n")); ret = -EINVAL; goto exit; } strlcpy(eabuf, token, sizeof(eabuf)); if (!(ret = bcm_ether_atoe(eabuf, &list->ea[i]))) { - ANDROID_ERROR(("wl_android_set_mac_address_filter : mac parsing err index=%d," + ANDROID_ERROR(("mac parsing err index=%d," " addr=%s\n", i, eabuf)); list->count = i; break; } - ANDROID_INFO(("wl_android_set_mac_address_filter : %d/%d MACADDR=%s", + ANDROID_TRACE(("%d/%d MACADDR=%s", i, list->count, eabuf)); } if (i == 0) @@ -1599,7 +1574,7 @@ wl_android_set_mac_address_filter(struct net_device *dev, char* str) /* set the list */ if ((ret = wl_android_set_ap_mac_list(dev, macmode, list)) != 0) - ANDROID_ERROR(("wl_android_set_mac_address_filter: Setting MAC list failed error=%d\n", + ANDROID_ERROR(("Setting MAC list failed error=%d\n", ret)); exit: @@ -1618,7 +1593,7 @@ int wl_android_wifi_on(struct net_device *dev) int retry = POWERUP_MAX_RETRY; if (!dev) { - ANDROID_ERROR(("wl_android_wifi_on: dev is null\n")); + ANDROID_ERROR(("dev is null\n")); return -EINVAL; } @@ -1692,14 +1667,14 @@ int wl_android_wifi_off(struct net_device *dev, bool on_failure) int ret = 0; if (!dev) { - ANDROID_ERROR(("%s: dev is null\n", __FUNCTION__)); + ANDROID_ERROR(("dev is null\n")); return -EINVAL; } #if defined(BCMPCIE) && defined(DHD_DEBUG_UART) ret = dhd_debug_uart_is_running(dev); if (ret) { - ANDROID_ERROR(("wl_android_wifi_off: - Debug UART App is running\n")); + ANDROID_ERROR(("Debug UART App is running\n")); return -EBUSY; } #endif /* BCMPCIE && DHD_DEBUG_UART */ @@ -1774,7 +1749,7 @@ wl_chanim_stats(struct net_device *dev, u8 *chan_idle) stats->timestamp = dtoh32(stats->timestamp); stats->chan_idle = dtoh32(stats->chan_idle); - ANDROID_INFO(("chanspec: 0x%4x glitch: %d badplcp: %d idle: %d timestamp: %d\n", + ANDROID_TRACE(("chanspec: 0x%4x glitch: %d badplcp: %d idle: %d timestamp: %d\n", stats->chanspec, stats->glitchcnt, stats->badplcp, stats->chan_idle, stats->timestamp)); @@ -1800,16 +1775,16 @@ wl_android_get_connection_stats(struct net_device *dev, char *command, int total int bytes_written = -1; int ret = 0; - ANDROID_INFO(("wl_android_get_connection_stats: enter Get Connection Stats\n")); + ANDROID_TRACE(("enter Get Connection Stats\n")); if (total_len <= 0) { - ANDROID_ERROR(("wl_android_get_connection_stats: invalid buffer size %d\n", total_len)); + ANDROID_ERROR(("invalid buffer size %d\n", total_len)); goto error; } bufsize = total_len; if (bufsize < sizeof(struct connection_stats)) { - ANDROID_ERROR(("wl_android_get_connection_stats: not enough buffer size, provided=%u," + ANDROID_ERROR(("not enough buffer size, provided=%u," " requires=%zu\n", bufsize, sizeof(struct connection_stats))); @@ -1821,7 +1796,7 @@ wl_android_get_connection_stats(struct net_device *dev, char *command, int total #ifndef DISABLE_IF_COUNTERS if_stats = (wl_if_stats_t *)MALLOCZ(cfg->osh, sizeof(*if_stats)); if (if_stats == NULL) { - ANDROID_ERROR(("wl_android_get_connection_stats: MALLOCZ failed\n")); + ANDROID_ERROR(("MALLOCZ failed\n")); goto error; } bzero(if_stats, sizeof(*if_stats)); @@ -1837,7 +1812,7 @@ wl_android_get_connection_stats(struct net_device *dev, char *command, int total ret = wldev_iovar_getbuf(dev, "if_counters", NULL, 0, (char *)if_stats, sizeof(*if_stats), NULL); if (ret) { - ANDROID_ERROR(("wl_android_get_connection_stats: if_counters not supported ret=%d\n", + ANDROID_ERROR(("if_counters not supported ret=%d\n", ret)); /* In case if_stats IOVAR is not supported, get information from counters. */ @@ -1850,14 +1825,13 @@ wl_android_get_connection_stats(struct net_device *dev, char *command, int total } ret = wl_cntbuf_to_xtlv_format(NULL, iovar_buf, WL_CNTBUF_MAX_SIZE, 0); if (ret != BCME_OK) { - ANDROID_ERROR(("wl_android_get_connection_stats:" - " wl_cntbuf_to_xtlv_format ERR %d\n", + ANDROID_ERROR((" wl_cntbuf_to_xtlv_format ERR %d\n", ret)); goto error; } if (!(wlc_cnt = GET_WLCCNT_FROM_CNTBUF(iovar_buf))) { - ANDROID_ERROR(("wl_android_get_connection_stats: wlc_cnt NULL!\n")); + ANDROID_ERROR(("wlc_cnt NULL!\n")); goto error; } @@ -1876,7 +1850,7 @@ wl_android_get_connection_stats(struct net_device *dev, char *command, int total } else { /* Populate from if_stats. */ if (dtoh16(if_stats->version) > WL_IF_STATS_T_VERSION) { - ANDROID_ERROR(("wl_android_get_connection_stats: incorrect version of" + ANDROID_ERROR(("incorrect version of" " wl_if_stats_t," " expected=%u got=%u\n", WL_IF_STATS_T_VERSION, if_stats->version)); @@ -1906,7 +1880,7 @@ wl_android_get_connection_stats(struct net_device *dev, char *command, int total /* link_speed is in kbps */ ret = wldev_get_link_speed(dev, &link_speed); if (ret || link_speed < 0) { - ANDROID_ERROR(("wl_android_get_connection_stats: wldev_get_link_speed()" + ANDROID_ERROR(("wldev_get_link_speed()" " failed, ret=%d, speed=%d\n", ret, link_speed)); goto error; @@ -2557,7 +2531,7 @@ wl_android_process_mbo_cmd(struct net_device *dev, char *command, int total_len) /* If mbo subcmd name is not provided, return error */ if (*pcmd == '\0') { - ANDROID_ERROR(("mbo subcmd not provided %s\n", __FUNCTION__)); + ANDROID_ERROR(("mbo subcmd not provided\n")); ret = -EINVAL; return ret; } @@ -2620,7 +2594,7 @@ wl_android_mbo_resp_parse_cbfn(void *ctx, const uint8 *data, uint16 type, uint16 UNUSED_PARAMETER(len); /* TODO: validate data value */ if (data == NULL) { - ANDROID_ERROR(("%s: Bad argument !!\n", __FUNCTION__)); + ANDROID_ERROR(("Bad argument !!\n")); return -EINVAL; } switch (type) { @@ -2631,7 +2605,7 @@ wl_android_mbo_resp_parse_cbfn(void *ctx, const uint8 *data, uint16 type, uint16 } break; default: - ANDROID_ERROR(("%s: Unknown tlv %u\n", __FUNCTION__, type)); + ANDROID_ERROR(("Unknown tlv %u\n", type)); } return BCME_OK; } @@ -2737,7 +2711,7 @@ wl_android_mbo_subcmd_cell_data_cap(struct net_device *dev, const wl_drv_sub_cmd */ /* send a WNM notification request to associated AP */ if (wl_get_drv_status(cfg, CONNECTED, dev)) { - ANDROID_INFO(("Sending WNM Notif\n")); + ANDROID_TRACE(("Sending WNM Notif\n")); ret = wl_android_send_wnm_notif(dev, iov_buf, WLC_IOCTL_MEDLEN, iov_resp, WLC_IOCTL_MAXLEN, MBO_ATTR_CELL_DATA_CAP); if (ret != BCME_OK) { @@ -2764,10 +2738,10 @@ wl_android_mbo_non_pref_chan_parse_cbfn(void *ctx, const uint8 *data, uint16 typ uint16 total_len = cmd_info->tot_len; uint16 bytes_written = 0; - ANDROID_INFO(("Total bytes written at begining %u\n", cmd_info->bytes_written)); + ANDROID_TRACE(("Total bytes written at begining %u\n", cmd_info->bytes_written)); UNUSED_PARAMETER(len); if (data == NULL) { - ANDROID_ERROR(("%s: Bad argument !!\n", __FUNCTION__)); + ANDROID_ERROR(("Bad argument !!\n")); return -EINVAL; } switch (type) { @@ -2804,9 +2778,9 @@ wl_android_mbo_non_pref_chan_parse_cbfn(void *ctx, const uint8 *data, uint16 typ } break; default: - ANDROID_ERROR(("%s: Unknown tlv %u\n", __FUNCTION__, type)); + ANDROID_ERROR(("Unknown tlv %u\n", type)); } - ANDROID_INFO(("Total bytes written %u\n", cmd_info->bytes_written)); + ANDROID_TRACE(("Total bytes written %u\n", cmd_info->bytes_written)); return BCME_OK; } @@ -2826,7 +2800,6 @@ wl_android_mbo_subcmd_non_pref_chan(struct net_device *dev, struct bcm_cfg80211 *cfg = wl_get_cfg(dev); uint16 version; - ANDROID_ERROR(("%s:%d\n", __FUNCTION__, __LINE__)); iov_buf = (bcm_iov_buf_t *)MALLOCZ(cfg->osh, WLC_IOCTL_MEDLEN); if (iov_buf == NULL) { ret = -ENOMEM; @@ -2955,7 +2928,7 @@ wl_android_mbo_subcmd_non_pref_chan(struct net_device *dev, } /* send a WNM notification request to associated AP */ if (wl_get_drv_status(cfg, CONNECTED, dev)) { - ANDROID_INFO(("Sending WNM Notif\n")); + ANDROID_TRACE(("Sending WNM Notif\n")); ret = wl_android_send_wnm_notif(dev, iov_buf, WLC_IOCTL_MEDLEN, iov_resp, WLC_IOCTL_MAXLEN, MBO_ATTR_NON_PREF_CHAN_REPORT); if (ret != BCME_OK) { @@ -3009,7 +2982,7 @@ wl_android_set_auto_channel(struct net_device *dev, const char* cmd_str, struct bcm_cfg80211 *cfg = wl_get_cfg(dev); if (cmd_str) { - ANDROID_INFO(("Command: %s len:%d \n", cmd_str, (int)strlen(cmd_str))); + ANDROID_TRACE(("Command: %s len:%d \n", cmd_str, (int)strlen(cmd_str))); if (strnicmp(cmd_str, APCS_BAND_AUTO, strlen(APCS_BAND_AUTO)) == 0) { band = WLC_BAND_AUTO; } else if (strnicmp(cmd_str, APCS_BAND_5G, strlen(APCS_BAND_5G)) == 0) { @@ -3035,7 +3008,7 @@ wl_android_set_auto_channel(struct net_device *dev, const char* cmd_str, ANDROID_ERROR(("No argument given default to 2.4G scan\n")); band = WLC_BAND_2G; } - ANDROID_INFO(("HAPD_AUTO_CHANNEL = %d, band=%d \n", channel, band)); + ANDROID_TRACE(("HAPD_AUTO_CHANNEL = %d, band=%d \n", channel, band)); #if defined(CONFIG_WLAN_BEYONDX) || defined(CONFIG_SEC_5GMODEL) wl_cfg80211_register_dev_ril_bridge_event_notifier(); @@ -3105,10 +3078,10 @@ wl_android_set_auto_channel(struct net_device *dev, const char* cmd_str, } if (band == WLC_BAND_AUTO) { - ANDROID_INFO(("ACS full channel scan \n")); + ANDROID_TRACE(("ACS full channel scan \n")); reqbuf[0] = htod32(0); } else if (band == WLC_BAND_5G) { - ANDROID_INFO(("ACS 5G band scan \n")); + ANDROID_TRACE(("ACS 5G band scan \n")); if ((ret = wl_cfg80211_get_chanspecs_5g(dev, reqbuf, CHANSPEC_BUF_SIZE)) < 0) { ANDROID_ERROR(("ACS 5g chanspec retreival failed! \n")); goto done; @@ -3118,7 +3091,7 @@ wl_android_set_auto_channel(struct net_device *dev, const char* cmd_str, * If channel argument is not provided/ argument 20 is provided, * Restrict channel to 2GHz, 20MHz BW, No SB */ - ANDROID_INFO(("ACS 2G band scan \n")); + ANDROID_TRACE(("ACS 2G band scan \n")); if ((ret = wl_cfg80211_get_chanspecs_2g(dev, reqbuf, CHANSPEC_BUF_SIZE)) < 0) { ANDROID_ERROR(("ACS 2g chanspec retreival failed! \n")); goto done; @@ -3177,7 +3150,7 @@ wl_android_set_auto_channel(struct net_device *dev, const char* cmd_str, break; } } - ANDROID_INFO(("%d tried, ret = %d, chosen = 0x%x\n", + ANDROID_TRACE(("%d tried, ret = %d, chosen = 0x%x\n", (APCS_MAX_RETRY - retry), ret, chosen)); OSL_SLEEP(250); } @@ -3205,7 +3178,7 @@ wl_android_set_auto_channel(struct net_device *dev, const char* cmd_str, if (channel) { ret = snprintf(command, total_len, "%d", channel); - ANDROID_INFO(("command result is %s \n", command)); + ANDROID_TRACE(("command result is %s \n", command)); } return ret; @@ -3218,19 +3191,19 @@ int wl_android_set_roam_mode(struct net_device *dev, char *command) int mode = 0; if (sscanf(command, "%*s %d", &mode) != 1) { - ANDROID_ERROR(("%s: Failed to get Parameter\n", __FUNCTION__)); + ANDROID_ERROR(("Failed to get Parameter\n")); return -1; } error = wldev_iovar_setint(dev, "roam_off", mode); if (error) { - ANDROID_ERROR(("%s: Failed to set roaming Mode %d, error = %d\n", - __FUNCTION__, mode, error)); + ANDROID_ERROR(("Failed to set roaming Mode %d, error = %d\n", + mode, error)); return -1; } else - ANDROID_ERROR(("%s: succeeded to set roaming Mode %d, error = %d\n", - __FUNCTION__, mode, error)); + ANDROID_ERROR(("succeeded to set roaming Mode %d, error = %d\n", + mode, error)); return 0; } @@ -3451,7 +3424,7 @@ wl_android_set_roampref(struct net_device *dev, char *command, int total_len) total_bytes = JOIN_PREF_RSSI_SIZE + JOIN_PREF_WPA_HDR_SIZE + (JOIN_PREF_WPA_TUPLE_SIZE * num_tuples); } else { - ANDROID_ERROR(("%s: Too many wpa configs for join_pref \n", __FUNCTION__)); + ANDROID_ERROR(("Too many wpa configs for join_pref \n")); return -1; } } else { @@ -3496,14 +3469,14 @@ wl_android_iolist_add(struct net_device *dev, struct list_head *head, struct io_ if (config->iovar) { ret = wldev_iovar_getint(dev, config->iovar, &resume_cfg->param); if (ret) { - ANDROID_ERROR(("%s: Failed to get current %s value\n", - __FUNCTION__, config->iovar)); + ANDROID_ERROR(("Failed to get current %s value\n", + config->iovar)); goto error; } ret = wldev_iovar_setint(dev, config->iovar, config->param); if (ret) { - ANDROID_ERROR(("%s: Failed to set %s to %d\n", __FUNCTION__, + ANDROID_ERROR(("Failed to set %s to %d\n", config->iovar, config->param)); goto error; } @@ -3517,13 +3490,13 @@ wl_android_iolist_add(struct net_device *dev, struct list_head *head, struct io_ } ret = wldev_ioctl_get(dev, config->ioctl, resume_cfg->arg, config->len); if (ret) { - ANDROID_ERROR(("%s: Failed to get ioctl %d\n", __FUNCTION__, + ANDROID_ERROR(("Failed to get ioctl %d\n", config->ioctl)); goto error; } ret = wldev_ioctl_set(dev, config->ioctl + 1, config->arg, config->len); if (ret) { - ANDROID_ERROR(("%s: Failed to set %s to %d\n", __FUNCTION__, + ANDROID_ERROR(("Failed to set %s to %d\n", config->iovar, config->param)); goto error; } @@ -3578,11 +3551,11 @@ wl_android_set_miracast(struct net_device *dev, char *command) struct io_cfg config; if (sscanf(command, "%*s %d", &mode) != 1) { - ANDROID_ERROR(("%s: Failed to get Parameter\n", __FUNCTION__)); + ANDROID_ERROR(("Failed to get Parameter\n")); return -1; } - ANDROID_INFO(("%s: enter miracast mode %d\n", __FUNCTION__, mode)); + ANDROID_TRACE(("enter miracast mode %d\n", mode)); if (miracast_cur_mode == mode) { return 0; @@ -3601,9 +3574,9 @@ wl_android_set_miracast(struct net_device *dev, char *command) ret = wldev_ioctl_get(dev, WLC_GET_BCNPRD, &val, sizeof(int)); if (!ret && val > 100) { config.param = 0; - ANDROID_ERROR(("%s: Connected station's beacon interval: " + ANDROID_ERROR(("Connected station's beacon interval: " "%d and set mchan_algo to %d \n", - __FUNCTION__, val, config.param)); + val, config.param)); } else { config.param = MIRACAST_MCHAN_ALGO; } @@ -3674,7 +3647,7 @@ wl_android_set_miracast(struct net_device *dev, char *command) return 0; resume: - ANDROID_ERROR(("%s: turnoff miracast mode because of err%d\n", __FUNCTION__, ret)); + ANDROID_ERROR(("turnoff miracast mode because of err%d\n", ret)); wl_android_iolist_resume(dev, &miracast_resume_list); return ret; } @@ -3761,7 +3734,7 @@ wl_netlink_send_msg(int pid, int type, int seq, const void *data, size_t size) /* netlink_unicast() takes ownership of the skb and frees it itself. */ ret = netlink_unicast(nl_sk, skb, pid, 0); - ANDROID_INFO(("netlink_unicast() pid=%d, ret=%d\n", pid, ret)); + ANDROID_TRACE(("netlink_unicast() pid=%d, ret=%d\n", pid, ret)); nlmsg_failure: return ret; @@ -3777,14 +3750,14 @@ int wl_keep_alive_set(struct net_device *dev, char* extra) dhd_pub_t *dhd = dhd_get_pub(dev); if (extra == NULL) { - ANDROID_ERROR(("%s: extra is NULL\n", __FUNCTION__)); + ANDROID_ERROR(("extra is NULL\n")); return -1; } if (sscanf(extra, "%d", &period_msec) != 1) { - ANDROID_ERROR(("%s: sscanf error. check period_msec value\n", __FUNCTION__)); + ANDROID_ERROR(("sscanf error. check period_msec value\n")); return -EINVAL; } - ANDROID_ERROR(("%s: period_msec is %d\n", __FUNCTION__, period_msec)); + ANDROID_ERROR(("period_msec is %d\n", period_msec)); bzero(&mkeep_alive_pkt, sizeof(wl_mkeep_alive_pkt_t)); @@ -3798,15 +3771,15 @@ int wl_keep_alive_set(struct net_device *dev, char* extra) buf = (char *)MALLOC(dhd->osh, WLC_IOCTL_SMLEN); if (!buf) { - ANDROID_ERROR(("%s: buffer alloc failed\n", __FUNCTION__)); + ANDROID_ERROR(("buffer alloc failed\n")); return BCME_NOMEM; } ret = wldev_iovar_setbuf(dev, "mkeep_alive", (char *)&mkeep_alive_pkt, WL_MKEEP_ALIVE_FIXED_LEN, buf, WLC_IOCTL_SMLEN, NULL); if (ret < 0) - ANDROID_ERROR(("%s:keep_alive set failed:%d\n", __FUNCTION__, ret)); + ANDROID_ERROR(("keep_alive set failed:%d\n", ret)); else - ANDROID_TRACE(("%s:keep_alive set ok\n", __FUNCTION__)); + ANDROID_TRACE(("keep_alive set ok\n")); MFREE(dhd->osh, buf, WLC_IOCTL_SMLEN); return ret; } @@ -3820,8 +3793,8 @@ static int wl_android_get_wfdie_resp(struct net_device *dev, char *command, int error = wldev_iovar_getint(dev, "p2p_only_resp_wfdsrc", &only_resp_wfdsrc); if (error) { - ANDROID_ERROR(("%s: Failed to get the mode for only_resp_wfdsrc, error = %d\n", - __FUNCTION__, error)); + ANDROID_ERROR(("Failed to get the mode for only_resp_wfdsrc, error = %d\n", + error)); return -1; } @@ -3837,8 +3810,8 @@ static int wl_android_set_wfdie_resp(struct net_device *dev, int only_resp_wfdsr error = wldev_iovar_setint(dev, "p2p_only_resp_wfdsrc", only_resp_wfdsrc); if (error) { - ANDROID_ERROR(("%s: Failed to set only_resp_wfdsrc %d, error = %d\n", - __FUNCTION__, only_resp_wfdsrc, error)); + ANDROID_ERROR(("Failed to set only_resp_wfdsrc %d, error = %d\n", + only_resp_wfdsrc, error)); return -1; } @@ -3879,10 +3852,10 @@ wl_android_set_rps_cpus(struct net_device *dev, char *command) if (!error) { void *dhdp = wl_cfg80211_get_dhdp(net); if (enable) { - ANDROID_TRACE(("%s : set ack suppress. TCPACK_SUP_HOLD.\n", __FUNCTION__)); + ANDROID_TRACE(("%s : set ack suppress. TCPACK_SUP_HOLD.\n")); dhd_tcpack_suppress_set(dhdp, TCPACK_SUP_HOLD); } else { - ANDROID_TRACE(("%s : clear ack suppress.\n", __FUNCTION__)); + ANDROID_TRACE(("%s : clear ack suppress.\n")); dhd_tcpack_suppress_set(dhdp, TCPACK_SUP_OFF); } } @@ -3925,7 +3898,7 @@ static int wl_android_get_link_status(struct net_device *dev, char *command, } if (i == ETHER_ADDR_LEN) { - ANDROID_INFO(("No BSSID\n")); + ANDROID_TRACE(("No BSSID\n")); return -1; } @@ -4014,8 +3987,8 @@ static int wl_android_get_link_status(struct net_device *dev, char *command, } } - ANDROID_INFO(("%s:result=%d, stf=%d, single_stream=%d, mcs map=%d\n", - __FUNCTION__, result, stf, single_stream, nss)); + ANDROID_TRACE(("result=%d, stf=%d, single_stream=%d, mcs map=%d\n", + result, stf, single_stream, nss)); bytes_written = snprintf(command, total_len, "%s %d", CMD_GET_LINK_STATUS, result); @@ -4233,7 +4206,7 @@ wl_android_murx_bfe_cap(struct net_device *dev, int val) sizeof(wl_reassoc_params_t))) < 0) { ANDROID_ERROR(("reassoc failed err:%d \n", err)); } else { - ANDROID_INFO(("reassoc issued successfully\n")); + ANDROID_TRACE(("reassoc issued successfully\n")); } return err; @@ -4295,17 +4268,17 @@ wl_android_get_rssi_per_ant(struct net_device *dev, char *command, int total_len } /* Parse the results */ - ANDROID_INFO(("ifname %s, version %d, count %d, mimo rssi %d\n", + ANDROID_TRACE(("ifname %s, version %d, count %d, mimo rssi %d\n", ifname, rssi_ant_mimo.version, rssi_ant_mimo.count, mimo_rssi)); if (mimo_rssi) { - ANDROID_INFO(("MIMO RSSI: %d\n", rssi_ant_mimo.rssi_sum)); + ANDROID_TRACE(("MIMO RSSI: %d\n", rssi_ant_mimo.rssi_sum)); bytes_written = snprintf(command, total_len, "%s MIMO %d", CMD_GET_RSSI_PER_ANT, rssi_ant_mimo.rssi_sum); } else { int cnt; bytes_written = snprintf(command, total_len, "%s PER_ANT ", CMD_GET_RSSI_PER_ANT); for (cnt = 0; cnt < rssi_ant_mimo.count; cnt++) { - ANDROID_INFO(("RSSI[%d]: %d\n", cnt, rssi_ant_mimo.rssi_ant[cnt])); + ANDROID_TRACE(("RSSI[%d]: %d\n", cnt, rssi_ant_mimo.rssi_ant[cnt])); bytes_written = snprintf(command, total_len, "%d ", rssi_ant_mimo.rssi_ant[cnt]); } @@ -4354,7 +4327,7 @@ wl_android_set_rssi_logging(struct net_device *dev, char *command, int total_len } set_param.time_threshold = bcm_atoi(token); - ANDROID_INFO(("enable %d, RSSI threshold %d, Time threshold %d\n", set_param.enable, + ANDROID_TRACE(("enable %d, RSSI threshold %d, Time threshold %d\n", set_param.enable, set_param.rssi_threshold, set_param.time_threshold)); err = wl_set_rssi_logging(dev, (void *)&set_param); @@ -4380,29 +4353,29 @@ wl_android_get_rssi_logging(struct net_device *dev, char *command, int total_len return BCME_ERROR; } - ANDROID_INFO(("report_count %d, enable %d, rssi_threshold %d, time_threshold %d\n", + ANDROID_TRACE(("report_count %d, enable %d, rssi_threshold %d, time_threshold %d\n", get_param.report_count, get_param.enable, get_param.rssi_threshold, get_param.time_threshold)); /* Parse the parameter */ if (!get_param.enable) { - ANDROID_INFO(("RSSI LOGGING: Feature is disables\n")); + ANDROID_TRACE(("RSSI LOGGING: Feature is disables\n")); bytes_written = snprintf(command, total_len, "%s FEATURE DISABLED\n", CMD_GET_RSSI_LOGGING); } else if (get_param.enable & (RSSILOG_FLAG_FEATURE_SW | RSSILOG_FLAG_REPORT_READY)) { if (!get_param.report_count) { - ANDROID_INFO(("[PASS] RSSI difference across antennas is within" + ANDROID_TRACE(("[PASS] RSSI difference across antennas is within" " threshold limits\n")); bytes_written = snprintf(command, total_len, "%s PASS\n", CMD_GET_RSSI_LOGGING); } else { - ANDROID_INFO(("[FAIL] RSSI difference across antennas found " + ANDROID_TRACE(("[FAIL] RSSI difference across antennas found " "to be greater than %3d dB\n", get_param.rssi_threshold)); - ANDROID_INFO(("[FAIL] RSSI difference check have failed for " + ANDROID_TRACE(("[FAIL] RSSI difference check have failed for " "%d out of %d times\n", get_param.report_count, get_param.time_threshold)); - ANDROID_INFO(("[FAIL] RSSI difference is being monitored once " + ANDROID_TRACE(("[FAIL] RSSI difference is being monitored once " "per second, for a %d secs window\n", get_param.time_threshold)); bytes_written = snprintf(command, total_len, "%s FAIL - RSSI Threshold " "%d dBm for %d out of %d times\n", CMD_GET_RSSI_LOGGING, @@ -4410,7 +4383,7 @@ wl_android_get_rssi_logging(struct net_device *dev, char *command, int total_len get_param.time_threshold); } } else { - ANDROID_INFO(("[BUSY] Reprot is not ready\n")); + ANDROID_TRACE(("[BUSY] Reprot is not ready\n")); bytes_written = snprintf(command, total_len, "%s BUSY - NOT READY\n", CMD_GET_RSSI_LOGGING); } @@ -4430,7 +4403,7 @@ wl_android_set_irq_cpucore(struct net_device *net, int affinity_cmd) } if (affinity_cmd < PCIE_IRQ_AFFINITY_OFF || affinity_cmd > PCIE_IRQ_AFFINITY_LAST) { - ANDROID_ERROR(("Wrong Affinity cmds:%d, %s\n", affinity_cmd, __FUNCTION__)); + ANDROID_ERROR(("Wrong Affinity cmds:%d\n", affinity_cmd)); return; } @@ -4468,7 +4441,7 @@ wl_android_get_lqcm_report(struct net_device *dev, char *command, int total_len) tx_lqcm_idx = (lqcm_report & LQCM_TX_INDEX_MASK) >> LQCM_TX_INDEX_SHIFT; rx_lqcm_idx = (lqcm_report & LQCM_RX_INDEX_MASK) >> LQCM_RX_INDEX_SHIFT; - ANDROID_INFO(("lqcm report EN:%d, TX:%d, RX:%d\n", lqcm_enable, tx_lqcm_idx, rx_lqcm_idx)); + ANDROID_TRACE(("lqcm report EN:%d, TX:%d, RX:%d\n", lqcm_enable, tx_lqcm_idx, rx_lqcm_idx)); bytes_written = snprintf(command, total_len, "%s %d", CMD_GET_LQCM_REPORT, lqcm_report); @@ -4485,13 +4458,13 @@ wl_android_get_snr(struct net_device *dev, char *command, int total_len) error = wldev_iovar_getint(dev, "snr", &snr); if (error) { - ANDROID_ERROR(("%s: Failed to get SNR %d, error = %d\n", - __FUNCTION__, snr, error)); + ANDROID_ERROR(("Failed to get SNR %d, error = %d\n", + snr, error)); return -EIO; } bytes_written = snprintf(command, total_len, "snr %d", snr); - ANDROID_INFO(("%s: command result is %s\n", __FUNCTION__, command)); + ANDROID_TRACE(("command result is %s\n", command)); return bytes_written; } @@ -4524,7 +4497,7 @@ wl_android_set_ap_beaconrate(struct net_device *dev, char *command) return -EINVAL; ifname = token; - ANDROID_INFO(("rate %d, ifacename %s\n", rate, ifname)); + ANDROID_TRACE(("rate %d, ifacename %s\n", rate, ifname)); err = wl_set_ap_beacon_rate(dev, rate, ifname); if (unlikely(err)) { @@ -4553,7 +4526,7 @@ int wl_android_get_ap_basicrate(struct net_device *dev, char *command, int total return -EINVAL; ifname = token; - ANDROID_INFO(("ifacename %s\n", ifname)); + ANDROID_TRACE(("ifacename %s\n", ifname)); bytes_written = wl_get_ap_basic_rate(dev, command, ifname, total_len); if (bytes_written < 1) { @@ -4588,7 +4561,7 @@ wl_android_get_ap_rps(struct net_device *dev, char *command, int total_len) ifname = token; strlcpy(name, ifname, sizeof(name)); - ANDROID_INFO(("ifacename %s\n", name)); + ANDROID_TRACE(("ifacename %s\n", name)); bytes_written = wl_get_ap_rps(dev, command, name, total_len); if (bytes_written < 1) { @@ -4630,7 +4603,7 @@ wl_android_set_ap_rps(struct net_device *dev, char *command, int total_len) ifname = token; strlcpy(name, ifname, sizeof(name)); - ANDROID_INFO(("enable %d, ifacename %s\n", enable, name)); + ANDROID_TRACE(("enable %d, ifacename %s\n", enable, name)); err = wl_set_ap_rps(dev, enable? TRUE: FALSE, name); if (unlikely(err)) { @@ -4689,7 +4662,7 @@ wl_android_set_ap_rps_params(struct net_device *dev, char *command, int total_le ifname = token; strlcpy(name, ifname, sizeof(name)); - ANDROID_INFO(("pps %d, level %d, quiettime %d, sta_assoc_check %d, " + ANDROID_TRACE(("pps %d, level %d, quiettime %d, sta_assoc_check %d, " "ifacename %s\n", rps.pps, rps.level, rps.quiet_time, rps.sta_assoc_check, name)); @@ -4787,7 +4760,7 @@ wl_android_set_ap_suspend(struct net_device *dev, char *command, int total_len) ifname = token; strlcpy(name, ifname, sizeof(name)); - ANDROID_INFO(("suspend %d, ifacename %s\n", suspend, name)); + ANDROID_TRACE(("suspend %d, ifacename %s\n", suspend, name)); err = wl_set_ap_suspend(dev, suspend? TRUE: FALSE, name); if (unlikely(err)) { @@ -4834,7 +4807,7 @@ wl_android_set_ap_bw(struct net_device *dev, char *command, int total_len) ifname = token; strlcpy(name, ifname, sizeof(name)); - ANDROID_INFO(("bw %d, ifacename %s\n", bw, name)); + ANDROID_TRACE(("bw %d, ifacename %s\n", bw, name)); err = wl_set_ap_bw(dev, bw, name); if (unlikely(err)) { @@ -4871,7 +4844,7 @@ wl_android_get_ap_bw(struct net_device *dev, char *command, int total_len) ifname = token; strlcpy(name, ifname, sizeof(name)); - ANDROID_INFO(("ifacename %s\n", name)); + ANDROID_TRACE(("ifacename %s\n", name)); bytes_written = wl_get_ap_bw(dev, command, name, total_len); if (bytes_written < 1) { @@ -4933,7 +4906,7 @@ int wl_android_priv_cmd(struct net_device *net, struct ifreq *ifr) } } if ((priv_cmd.total_len > PRIVATE_COMMAND_MAX_LEN) || (priv_cmd.total_len < 0)) { - ANDROID_ERROR(("%s: buf length invalid:%d\n", __FUNCTION__, + ANDROID_ERROR(("buf length invalid:%d\n", priv_cmd.total_len)); ret = -EINVAL; goto exit; @@ -4942,7 +4915,7 @@ int wl_android_priv_cmd(struct net_device *net, struct ifreq *ifr) buf_size = max(priv_cmd.total_len, PRIVATE_COMMAND_DEF_LEN); command = (char *)MALLOC(dhd->osh, (buf_size + 1)); if (!command) { - ANDROID_ERROR(("%s: failed to allocate memory\n", __FUNCTION__)); + ANDROID_ERROR(("failed to allocate memory\n")); ret = -ENOMEM; goto exit; } @@ -4952,7 +4925,7 @@ int wl_android_priv_cmd(struct net_device *net, struct ifreq *ifr) } command[priv_cmd.total_len] = '\0'; - ANDROID_INFO(("%s: Android private cmd \"%s\" on %s\n", __FUNCTION__, command, ifr->ifr_name)); + ANDROID_TRACE(("Android private cmd \"%s\" on %s\n", command, ifr->ifr_name)); bytes_written = wl_handle_private_cmd(net, command, priv_cmd.total_len); if (bytes_written >= 0) { @@ -4960,8 +4933,8 @@ int wl_android_priv_cmd(struct net_device *net, struct ifreq *ifr) command[0] = '\0'; } if (bytes_written >= priv_cmd.total_len) { - ANDROID_ERROR(("%s: err. bytes_written:%d >= total_len:%d, buf_size:%d\n", - __FUNCTION__, bytes_written, priv_cmd.total_len, buf_size)); + ANDROID_ERROR(("err. bytes_written:%d >= total_len:%d, buf_size:%d\n", + bytes_written, priv_cmd.total_len, buf_size)); ret = BCME_BUFTOOSHORT; goto exit; @@ -4969,7 +4942,7 @@ int wl_android_priv_cmd(struct net_device *net, struct ifreq *ifr) bytes_written++; priv_cmd.used_len = bytes_written; if (copy_to_user(priv_cmd.buf, command, bytes_written)) { - ANDROID_ERROR(("%s: failed to copy data to user buffer\n", __FUNCTION__)); + ANDROID_ERROR(("failed to copy data to user buffer\n")); ret = -EFAULT; } } @@ -5228,14 +5201,14 @@ wl_android_bcnrecv_config(struct net_device *ndev, char *cmd_argv, int total_len /* sync commands from user space */ mutex_lock(&cfg->usr_sync); if (strncmp(cmd_argv, "start", strlen("start")) == 0) { - ANDROID_INFO(("BCNRECV start\n")); + ANDROID_TRACE(("BCNRECV start\n")); err = wl_android_bcnrecv_start(cfg, ndev); if (err != BCME_OK) { ANDROID_ERROR(("Failed to process the start command, error:%d\n", err)); goto exit; } } else if (strncmp(cmd_argv, "stop", strlen("stop")) == 0) { - ANDROID_INFO(("BCNRECV stop\n")); + ANDROID_TRACE(("BCNRECV stop\n")); err = wl_android_bcnrecv_stop(ndev, WL_BCNRECV_USER_TRIGGER); if (err != BCME_OK) { ANDROID_ERROR(("Failed to stop the bcn recv, error:%d\n", err)); @@ -5389,7 +5362,7 @@ wl_android_get_channel_util(struct net_device *ndev, char *command, int total_le bytes_written = snprintf(command, total_len, "CU %hhu", chan_use_percentage); - ANDROID_INFO(("Channel Utilization %u %u\n", bssload.chan_util, chan_use_percentage)); + ANDROID_TRACE(("Channel Utilization %u %u\n", bssload.chan_util, chan_use_percentage)); return bytes_written; } @@ -5433,7 +5406,7 @@ wl_android_set_softap_elna_bypass(struct net_device *dev, char *command, int tot /* get the interface name */ token = bcmstrtok(&pos, " ", NULL); if (!token) { - ANDROID_ERROR(("%s: Invalid arguments about interface name\n", __FUNCTION__)); + ANDROID_ERROR(("Invalid arguments about interface name\n")); return -EINVAL; } ifname = token; @@ -5441,7 +5414,7 @@ wl_android_set_softap_elna_bypass(struct net_device *dev, char *command, int tot /* get enable/disable flag */ token = bcmstrtok(&pos, " ", NULL); if (!token) { - ANDROID_ERROR(("%s: Invalid arguments about Enable/Disable\n", __FUNCTION__)); + ANDROID_ERROR(("Invalid arguments about Enable/Disable\n")); return -EINVAL; } enable = bcm_atoi(token); @@ -5449,8 +5422,8 @@ wl_android_set_softap_elna_bypass(struct net_device *dev, char *command, int tot CUSTOMER_HW4_EN_CONVERT(enable); err = wl_set_softap_elna_bypass(dev, ifname, enable); if (unlikely(err)) { - ANDROID_ERROR(("%s: Failed to set ELNA Bypass of SoftAP mode, err=%d\n", - __FUNCTION__, err)); + ANDROID_ERROR(("Failed to set ELNA Bypass of SoftAP mode, err=%d\n", + err)); return err; } @@ -5477,20 +5450,20 @@ wl_android_get_softap_elna_bypass(struct net_device *dev, char *command, int tot /* get the interface name */ token = bcmstrtok(&pos, " ", NULL); if (!token) { - ANDROID_ERROR(("%s: Invalid arguments about interface name\n", __FUNCTION__)); + ANDROID_ERROR(("Invalid arguments about interface name\n")); return -EINVAL; } ifname = token; err = wl_get_softap_elna_bypass(dev, ifname, &softap_elnabypass); if (unlikely(err)) { - ANDROID_ERROR(("%s: Failed to get ELNA Bypass of SoftAP mode, err=%d\n", - __FUNCTION__, err)); + ANDROID_ERROR(("Failed to get ELNA Bypass of SoftAP mode, err=%d\n", + err)); return err; } else { softap_elnabypass--; //Convert format to Customer HW4 - ANDROID_INFO(("%s: eLNA Bypass feature enable status is %d\n", - __FUNCTION__, softap_elnabypass)); + ANDROID_TRACE(("eLNA Bypass feature enable status is %d\n", + softap_elnabypass)); bytes_written = snprintf(command, total_len, "%s %d", CMD_GET_SOFTAP_ELNA_BYPASS, softap_elnabypass); } @@ -5554,7 +5527,7 @@ wl_nan_ranging_bw(struct net_device *net, int bw, char *command) } param = {0, 0}; if (bw < NAN_RANGING_5G_BW20 || bw > NAN_RANGING_5G_BW80) { - ANDROID_ERROR(("Wrong BW cmd:%d, %s\n", bw, __FUNCTION__)); + ANDROID_ERROR(("Wrong BW cmd:%d\n", bw)); bytes_written = scnprintf(command, sizeof("FAIL"), "FAIL"); return bytes_written; } @@ -5613,7 +5586,7 @@ wl_handle_private_cmd(struct net_device *net, char *command, u32 cmd_len) priv_cmd.total_len = cmd_len; if (strnicmp(command, CMD_START, strlen(CMD_START)) == 0) { - ANDROID_INFO(("%s, Received regular START command\n", __FUNCTION__)); + ANDROID_TRACE(("Received regular START command\n")); #ifdef SUPPORT_DEEP_SLEEP trigger_deep_sleep = 1; #else @@ -5629,8 +5602,8 @@ wl_handle_private_cmd(struct net_device *net, char *command, u32 cmd_len) } if (!g_wifi_on) { - ANDROID_ERROR(("%s: Ignore private cmd \"%s\" - iface is down\n", - __FUNCTION__, command)); + ANDROID_ERROR(("Ignore private cmd \"%s\" - iface is down\n", + command)); return 0; } @@ -5877,7 +5850,7 @@ wl_handle_private_cmd(struct net_device *net, char *command, u32 cmd_len) } else if (strnicmp(command, CMD_INTERFACE_CREATE, strlen(CMD_INTERFACE_CREATE)) == 0) { char *name = (command + strlen(CMD_INTERFACE_CREATE) +1); - ANDROID_INFO(("Creating %s interface\n", name)); + ANDROID_TRACE(("Creating %s interface\n", name)); if (wl_cfg80211_add_if(wl_get_cfg(net), net, WL_IF_TYPE_STA, name, NULL) == NULL) { bytes_written = -ENODEV; @@ -5888,7 +5861,7 @@ wl_handle_private_cmd(struct net_device *net, char *command, u32 cmd_len) } else if (strnicmp(command, CMD_INTERFACE_DELETE, strlen(CMD_INTERFACE_DELETE)) == 0) { char *name = (command + strlen(CMD_INTERFACE_DELETE) +1); - ANDROID_INFO(("Deleteing %s interface\n", name)); + ANDROID_TRACE(("Deleteing %s interface\n", name)); bytes_written = wl_cfg80211_del_if(wl_get_cfg(net), net, NULL, name); } #endif /* WL_CFG80211 */ @@ -6171,7 +6144,7 @@ void wl_android_post_init(void) #ifdef ENABLE_4335BT_WAR bcm_bt_unlock(lock_cookie_wifi); - printk("%s: btlock released\n", __FUNCTION__); + ANDROID_TRACE(("btlock released\n")); #endif /* ENABLE_4335BT_WAR */ if (!dhd_download_fw_on_driverload) @@ -6184,7 +6157,7 @@ static int wl_genl_init(void) { int ret; - ANDROID_INFO(("GEN Netlink Init\n\n")); + ANDROID_TRACE(("GEN Netlink Init\n")); #if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)) /* register new family */ @@ -6283,7 +6256,7 @@ wl_genl_send_msg( u16 kflags = in_atomic() ? GFP_ATOMIC : GFP_KERNEL; struct bcm_cfg80211 *cfg = wl_get_cfg(ndev); - ANDROID_INFO(("Enter \n")); + ANDROID_TRACE(("Enter \n")); /* Decide between STRING event and Data event */ if (event_type == 0) @@ -6367,7 +6340,7 @@ wl_genl_send_msg( ANDROID_ERROR(("genlmsg_multicast for attr(%d) failed. Error:%d \n", attr_type, err)); else - ANDROID_INFO(("Multicast msg sent successfully. attr_type:%d len:%d \n", + ANDROID_TRACE(("Multicast msg sent successfully. attr_type:%d len:%d \n", attr_type, tot_len)); } else { NETLINK_CB(skb).dst_group = 0; /* Not in multicast group */ @@ -6398,7 +6371,7 @@ wl_genl_handle_msg( struct nlattr *na; u8 *data = NULL; - ANDROID_INFO(("Enter \n")); + ANDROID_TRACE(("Enter \n")); if (info == NULL) { return -EINVAL; @@ -6417,10 +6390,10 @@ wl_genl_handle_msg( } else { /* Handle the data */ #if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 7, 0)) || defined(WL_COMPAT_WIRELESS) - ANDROID_INFO(("%s: Data received from pid (%d) \n", __func__, + ANDROID_TRACE(("Data received from pid (%d) \n", info->snd_pid)); #else - ANDROID_INFO(("%s: Data received from pid (%d) \n", __func__, + ANDROID_TRACE(("Data received from pid (%d) \n", info->snd_portid)); #endif /* (LINUX_VERSION < VERSION(3, 7, 0) || WL_COMPAT_WIRELESS */ } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.h index 9b9c79c17f581..a3d249cf7d97c 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android.h @@ -47,17 +47,19 @@ #include #endif // endif -typedef struct _android_wifi_priv_cmd { - char *buf; - int used_len; - int total_len; +typedef struct _android_wifi_priv_cmd +{ + char *buf; + int used_len; + int total_len; } android_wifi_priv_cmd; #ifdef CONFIG_COMPAT -typedef struct _compat_android_wifi_priv_cmd { - compat_caddr_t buf; - int used_len; - int total_len; +typedef struct _compat_android_wifi_priv_cmd +{ + compat_caddr_t buf; + int used_len; + int total_len; } compat_android_wifi_priv_cmd; #endif /* CONFIG_COMPAT */ @@ -68,42 +70,71 @@ typedef struct _compat_android_wifi_priv_cmd { */ /* message levels */ -#define ANDROID_ERROR_LEVEL (1 << 0) -#define ANDROID_TRACE_LEVEL (1 << 1) -#define ANDROID_INFO_LEVEL (1 << 2) -#define ANDROID_SCAN_LEVEL (1 << 3) -#define ANDROID_DBG_LEVEL (1 << 4) -#define ANDROID_MSG_LEVEL (1 << 0) - -#define WL_MSG(name, arg1, args...) \ +#define ANDROID_ERROR_LEVEL (1 << 0) +#define ANDROID_TRACE_LEVEL (1 << 1) +#define ANDROID_INFO_LEVEL (1 << 2) +#define ANDROID_SCAN_LEVEL (1 << 3) +#define ANDROID_DBG_LEVEL (1 << 4) +#define ANDROID_MSG_LEVEL ANDROID_ERROR_LEVEL + +#define ANDROID_EVENT_ERROR_LEVEL (1 << 10) +#define ANDROID_EVENT_INFO_LEVEL (1 << 11) +#define ANDROID_EVENT_DBG_LEVEL (1 << 12) +#define ANDROID_EVENT_TRACE_LEVEL (1 << 13) + +#define ANDROID_ERROR_MSG(x, args...) \ do { \ - if (android_msg_level & ANDROID_MSG_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIX "[%s] %s : " arg1, name, __func__, ## args); \ + if ((android_msg_level & ANDROID_ERROR_LEVEL)) { \ + printk(KERN_ERR DHD_LOG_PREFIXS "ADNROID[E] %s:" x, __func__, ## args); \ } \ } while (0) +#define ANDROID_TRACE_MSG(x, args...) \ + do { \ + if ((android_msg_level & ANDROID_TRACE_LEVEL)) { \ + printk(KERN_DEBUG DHD_LOG_PREFIXS "ADNROID[T] %s:" x, __func__, ## args); \ + } \ + } while (0) +#define ANDROID_INFO_MSG(x, args...) \ + do { \ + if ((android_msg_level & ANDROID_INFO_LEVEL)) { \ + printk(KERN_NOTICE DHD_LOG_PREFIXS "ADNROID[I] %s:" x, __func__, ## args); \ + } \ + } while (0) +#define ANDROID_ERROR(x) ANDROID_ERROR_MSG x +#define ANDROID_TRACE(x) ANDROID_TRACE_MSG x +#define ANDROID_INFO(x) ANDROID_INFO_MSG x -#define WL_MSG_PRINT_RATE_LIMIT_PERIOD 1000000000u /* 1s in units of ns */ -#define WL_MSG_RLMT(name, cmp, size, arg1, args...) \ -do { \ - if (android_msg_level & ANDROID_MSG_LEVEL) { \ - static uint64 __err_ts = 0; \ - static uint32 __err_cnt = 0; \ - uint64 __cur_ts = 0; \ - static uint8 static_tmp[size]; \ - __cur_ts = local_clock(); \ - if (__err_ts == 0 || (__cur_ts > __err_ts && \ - (__cur_ts - __err_ts > WL_MSG_PRINT_RATE_LIMIT_PERIOD)) || \ - memcmp(&static_tmp, cmp, size)) { \ - __err_ts = __cur_ts; \ - memcpy(static_tmp, cmp, size); \ - printk(KERN_ERR DHD_LOG_PREFIX "[%s] %s : [%u times] " arg1, \ - name, __func__, __err_cnt, ## args); \ - __err_cnt = 0; \ - } else { \ - ++__err_cnt; \ +#define AEXT_ERROR(name, arg1, args...) \ + do { \ + if ((android_msg_level & ANDROID_ERROR_LEVEL)) { \ + printk(KERN_ERR DHD_LOG_PREFIX "[%s]AEXT[E] %s: " arg1, name, __func__, ## args); \ + } \ + } while (0) + +#define AEXT_INFO(name, arg1, args...) \ + do { \ + if ((android_msg_level & ANDROID_INFO_LEVEL)) { \ + printk(KERN_NOTICE DHD_LOG_PREFIX "[%s]AEXT[I] %s: " arg1, name, __func__, ## args); \ } \ - } \ -} while (0) + } while (0) + +#ifdef DHD_DEBUG +#define AEXT_TRACE(name, arg1, args...) \ + do { \ + if ((android_msg_level & ANDROID_TRACE_LEVEL)) { \ + printk(KERN_DEBUG DHD_LOG_PREFIX "[%s]AEXT[T] %s: " arg1, name, __func__, ## args); \ + } \ + } while (0) +#define AEXT_DBG(name, arg1, args...) \ + do { \ + if ((android_msg_level & ANDROID_DBG_LEVEL)) { \ + printk(KERN_INFO DHD_LOG_PREFIX "[%s]AEXT[D] %s: " arg1, name, __func__, ## args); \ + } \ + } while (0) +#else +#define AEXT_TRACE(name, arg1, args...) +#define AEXT_DBG(name, arg1, args...) +#endif /** * wl_android_init will be called from module init function (dhd_module_init now), similarly @@ -148,33 +179,35 @@ bool wl_ext_iapsta_mesh_creating(struct net_device *net); #endif extern int op_mode; #endif -typedef struct bcol_gtk_para { +typedef struct bcol_gtk_para +{ int enable; int ptk_len; char ptk[64]; char replay[8]; } bcol_gtk_para_t; -#define ACS_FW_BIT (1<<0) -#define ACS_DRV_BIT (1<<1) +#define ACS_FW_BIT (1 << 0) +#define ACS_DRV_BIT (1 << 1) #if defined(WL_EXT_IAPSTA) || defined(USE_IW) -typedef enum WL_EVENT_PRIO { +typedef enum WL_EVENT_PRIO +{ PRIO_EVENT_IAPSTA, PRIO_EVENT_ESCAN, PRIO_EVENT_WEXT -}wl_event_prio_t; +} wl_event_prio_t; s32 wl_ext_event_attach(struct net_device *dev, dhd_pub_t *dhdp); void wl_ext_event_dettach(dhd_pub_t *dhdp); int wl_ext_event_attach_netdev(struct net_device *net, int ifidx, uint8 bssidx); int wl_ext_event_dettach_netdev(struct net_device *net, int ifidx); int wl_ext_event_register(struct net_device *dev, dhd_pub_t *dhd, - uint32 event, void *cb_func, void *data, wl_event_prio_t prio); + uint32 event, void *cb_func, void *data, wl_event_prio_t prio); void wl_ext_event_deregister(struct net_device *dev, dhd_pub_t *dhd, - uint32 event, void *cb_func); -void wl_ext_event_send(void *params, const wl_event_msg_t * e, void *data); + uint32 event, void *cb_func); +void wl_ext_event_send(void *params, const wl_event_msg_t *e, void *data); #endif int wl_ext_autochannel(struct net_device *dev, uint acs, uint32 band); int wl_android_ext_priv_cmd(struct net_device *net, char *command, int total_len, - int *bytes_written); + int *bytes_written); void wl_ext_get_sec(struct net_device *dev, int ifmode, char *sec, int total_len); bool wl_ext_check_scan(struct net_device *dev, dhd_pub_t *dhdp); #if defined(WL_CFG80211) || defined(WL_ESCAN) @@ -184,7 +217,8 @@ bool wl_ext_event_complete(struct dhd_pub *dhd, int ifidx); #if defined(WL_CFG80211) void wl_ext_bss_iovar_war(struct net_device *dev, s32 *val); #endif -enum wl_ext_status { +enum wl_ext_status +{ WL_EXT_STATUS_DISCONNECTING = 0, WL_EXT_STATUS_DISCONNECTED, WL_EXT_STATUS_SCAN, @@ -199,21 +233,22 @@ enum wl_ext_status { }; #if defined(WL_EXT_IAPSTA) && defined(WL_CFG80211) int wl_ext_in4way_sync(struct net_device *dev, uint action, - enum wl_ext_status status, void *context); + enum wl_ext_status status, void *context); #endif /* WL_EXT_IAPSTA && WL_CFG80211 */ #if defined(WL_EXT_IAPSTA) && defined(WL_WIRELESS_EXT) int wl_ext_in4way_sync_wext(struct net_device *dev, uint action, - enum wl_ext_status status, void *context); + enum wl_ext_status status, void *context); #endif /* WL_EXT_IAPSTA && WL_WIRELESS_EXT */ #if defined(WL_EXT_IAPSTA) void wl_ext_update_eapol_status(dhd_pub_t *dhd, int ifidx, - uint eapol_status); + uint eapol_status); #else static INLINE void wl_ext_update_eapol_status(dhd_pub_t *dhd, int ifidx, - uint eapol_status) { } + uint eapol_status) {} #endif /* WL_EXT_IAPSTA */ -typedef struct wl_conn_info { +typedef struct wl_conn_info +{ uint8 bssidx; wlc_ssid_t ssid; struct ether_addr bssid; @@ -227,7 +262,8 @@ s32 wl_ext_connect(struct net_device *dev, wl_conn_info_t *conn_info); #endif #ifdef WL_GENL -typedef struct bcm_event_hdr { +typedef struct bcm_event_hdr +{ u16 event_type; u16 len; } bcm_event_hdr_t; @@ -236,7 +272,8 @@ typedef struct bcm_event_hdr { * userspace application has to indicate the corresponding type * the policy is used for security considerations */ -enum { +enum +{ BCM_GENL_ATTR_UNSPEC, BCM_GENL_ATTR_STRING, BCM_GENL_ATTR_MSG, @@ -247,7 +284,8 @@ enum { /* commands: enumeration of all commands (functions), * used by userspace application to identify command to be ececuted */ -enum { +enum +{ BCM_GENL_CMD_UNSPEC, BCM_GENL_CMD_MSG, __BCM_GENL_CMD_MAX @@ -255,7 +293,8 @@ enum { #define BCM_GENL_CMD_MAX (__BCM_GENL_CMD_MAX - 1) /* Enum values used by the BCM supplicant to identify the events */ -enum { +enum +{ BCM_E_UNSPEC, BCM_E_SVC_FOUND, BCM_E_DEV_FOUND, @@ -267,17 +306,17 @@ enum { }; s32 wl_genl_send_msg(struct net_device *ndev, u32 event_type, - const u8 *string, u16 len, u8 *hdr, u16 hdrlen); + const u8 *string, u16 len, u8 *hdr, u16 hdrlen); #endif /* WL_GENL */ s32 wl_netlink_send_msg(int pid, int type, int seq, const void *data, size_t size); /* hostap mac mode */ -#define MACLIST_MODE_DISABLED 0 -#define MACLIST_MODE_DENY 1 -#define MACLIST_MODE_ALLOW 2 +#define MACLIST_MODE_DISABLED 0 +#define MACLIST_MODE_DENY 1 +#define MACLIST_MODE_ALLOW 2 /* max number of assoc list */ -#define MAX_NUM_OF_ASSOCLIST 64 +#define MAX_NUM_OF_ASSOCLIST 64 /* Bandwidth */ #define WL_CH_BANDWIDTH_20MHZ 20 @@ -286,31 +325,30 @@ s32 wl_netlink_send_msg(int pid, int type, int seq, const void *data, size_t siz /* max number of mac filter list * restrict max number to 10 as maximum cmd string size is 255 */ -#define MAX_NUM_MAC_FILT 10 -#define WL_GET_BAND(ch) (((uint)(ch) <= CH_MAX_2G_CHANNEL) ? \ - WLC_BAND_2G : WLC_BAND_5G) +#define MAX_NUM_MAC_FILT 10 +#define WL_GET_BAND(ch) (((uint)(ch) <= CH_MAX_2G_CHANNEL) ? WLC_BAND_2G : WLC_BAND_5G) int wl_android_set_ap_mac_list(struct net_device *dev, int macmode, struct maclist *maclist); #ifdef WL_BCNRECV extern int wl_android_bcnrecv_config(struct net_device *ndev, char *data, - int total_len); + int total_len); extern int wl_android_bcnrecv_stop(struct net_device *ndev, uint reason); extern int wl_android_bcnrecv_resume(struct net_device *ndev); extern int wl_android_bcnrecv_suspend(struct net_device *ndev); extern int wl_android_bcnrecv_event(struct net_device *ndev, - uint attr_type, uint status, uint reason, uint8 *data, uint data_len); + uint attr_type, uint status, uint reason, uint8 *data, uint data_len); #endif /* WL_BCNRECV */ #ifdef WL_CAC_TS -#define TSPEC_UPLINK_DIRECTION (0 << 5) /* uplink direction traffic stream */ -#define TSPEC_DOWNLINK_DIRECTION (1 << 5) /* downlink direction traffic stream */ -#define TSPEC_BI_DIRECTION (3 << 5) /* bi direction traffic stream */ -#define TSPEC_EDCA_ACCESS (1 << 7) /* EDCA access policy */ -#define TSPEC_UAPSD_PSB (1 << 2) /* U-APSD power saving behavior */ -#define TSPEC_TSINFO_TID_SHIFT 1 /* TID Shift */ -#define TSPEC_TSINFO_PRIO_SHIFT 3 /* PRIO Shift */ +#define TSPEC_UPLINK_DIRECTION (0 << 5) /* uplink direction traffic stream */ +#define TSPEC_DOWNLINK_DIRECTION (1 << 5) /* downlink direction traffic stream */ +#define TSPEC_BI_DIRECTION (3 << 5) /* bi direction traffic stream */ +#define TSPEC_EDCA_ACCESS (1 << 7) /* EDCA access policy */ +#define TSPEC_UAPSD_PSB (1 << 2) /* U-APSD power saving behavior */ +#define TSPEC_TSINFO_TID_SHIFT 1 /* TID Shift */ +#define TSPEC_TSINFO_PRIO_SHIFT 3 /* PRIO Shift */ #define TSPEC_MAX_ACCESS_CATEGORY 3 -#define TSPEC_MAX_USER_PRIO 7 -#define TSPEC_MAX_DIALOG_TOKEN 255 +#define TSPEC_MAX_USER_PRIO 7 +#define TSPEC_MAX_DIALOG_TOKEN 255 #define TSPEC_MAX_SURPLUS_BW 12410 #define TSPEC_MIN_SURPLUS_BW 11210 #define TSPEC_MAX_MSDU_SIZE 1520 @@ -325,19 +363,19 @@ extern int wl_android_bcnrecv_event(struct net_device *ndev, * RSSIOFFSET: RSSI offset * SORT_BSS_BY_RSSI: Sort BSS by RSSI */ -//#define BSSCACHE -//#define RSSIAVG -//#define RSSIOFFSET -//#define RSSIOFFSET_NEW -//#define SORT_BSS_BY_RSSI +// #define BSSCACHE +// #define RSSIAVG +// #define RSSIOFFSET +// #define RSSIOFFSET_NEW +// #define SORT_BSS_BY_RSSI #define RSSI_MAXVAL -2 #define RSSI_MINVAL -200 #if defined(ESCAN_RESULT_PATCH) -#define REPEATED_SCAN_RESULT_CNT 2 +#define REPEATED_SCAN_RESULT_CNT 2 #else -#define REPEATED_SCAN_RESULT_CNT 1 +#define REPEATED_SCAN_RESULT_CNT 1 #endif #if defined(RSSIAVG) || defined(RSSIOFFSET) @@ -345,10 +383,11 @@ extern int g_wifi_on; #endif #if defined(RSSIAVG) -#define RSSIAVG_LEN (4*REPEATED_SCAN_RESULT_CNT) +#define RSSIAVG_LEN (4 * REPEATED_SCAN_RESULT_CNT) #define RSSICACHE_TIMEOUT 15 -typedef struct wl_rssi_cache { +typedef struct wl_rssi_cache +{ struct wl_rssi_cache *next; int dirty; struct osl_timespec tv; @@ -356,7 +395,8 @@ typedef struct wl_rssi_cache { int16 RSSI[RSSIAVG_LEN]; } wl_rssi_cache_t; -typedef struct wl_rssi_cache_ctrl { +typedef struct wl_rssi_cache_ctrl +{ wl_rssi_cache_t *m_cache_head; } wl_rssi_cache_ctrl_t; @@ -370,28 +410,30 @@ int16 wl_get_avg_rssi(wl_rssi_cache_ctrl_t *rssi_cache_ctrl, void *addr); #endif #if defined(RSSIOFFSET) -#define RSSI_OFFSET 5 +#define RSSI_OFFSET 5 #if defined(RSSIOFFSET_NEW) #define RSSI_OFFSET_MAXVAL -80 #define RSSI_OFFSET_MINVAL -94 -#define RSSI_OFFSET_INTVAL ((RSSI_OFFSET_MAXVAL-RSSI_OFFSET_MINVAL)/RSSI_OFFSET) +#define RSSI_OFFSET_INTVAL ((RSSI_OFFSET_MAXVAL - RSSI_OFFSET_MINVAL) / RSSI_OFFSET) #endif -#define BCM4330_CHIP_ID 0x4330 -#define BCM4330B2_CHIP_REV 4 +#define BCM4330_CHIP_ID 0x4330 +#define BCM4330B2_CHIP_REV 4 int wl_update_rssi_offset(struct net_device *net, int rssi); #endif #if defined(BSSCACHE) -#define BSSCACHE_TIMEOUT 15 +#define BSSCACHE_TIMEOUT 15 -typedef struct wl_bss_cache { +typedef struct wl_bss_cache +{ struct wl_bss_cache *next; int dirty; struct osl_timespec tv; wl_scan_results_t results; } wl_bss_cache_t; -typedef struct wl_bss_cache_ctrl { +typedef struct wl_bss_cache_ctrl +{ wl_bss_cache_t *m_cache_head; } wl_bss_cache_ctrl_t; @@ -401,17 +443,16 @@ void wl_delete_disconnected_bss_cache(wl_bss_cache_ctrl_t *bss_cache_ctrl, u8 *b void wl_reset_bss_cache(wl_bss_cache_ctrl_t *bss_cache_ctrl); void wl_update_bss_cache(wl_bss_cache_ctrl_t *bss_cache_ctrl, #if defined(RSSIAVG) - wl_rssi_cache_ctrl_t *rssi_cache_ctrl, + wl_rssi_cache_ctrl_t *rssi_cache_ctrl, #endif - wl_scan_results_t *ss_list); + wl_scan_results_t *ss_list); void wl_release_bss_cache_ctrl(wl_bss_cache_ctrl_t *bss_cache_ctrl); #endif int wl_ext_get_best_channel(struct net_device *net, #if defined(BSSCACHE) - wl_bss_cache_ctrl_t *bss_cache_ctrl, + wl_bss_cache_ctrl_t *bss_cache_ctrl, #else - wl_scan_results_t *bss_list, + wl_scan_results_t *bss_list, #endif - int ioctl_ver, int *best_2g_ch, int *best_5g_ch -); + int ioctl_ver, int *best_2g_ch, int *best_5g_ch); #endif /* _wl_android_ */ diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android_ext.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android_ext.c index 5707d02293ba5..b262e1c1b3be9 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android_ext.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_android_ext.c @@ -32,31 +32,6 @@ #include #endif /* WL_ESCAN */ -#define AEXT_ERROR(name, arg1, args...) \ - do { \ - if (android_msg_level & ANDROID_ERROR_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIX "[%s] AEXT-ERROR) %s : " arg1, name, __func__, ## args); \ - } \ - } while (0) -#define AEXT_TRACE(name, arg1, args...) \ - do { \ - if (android_msg_level & ANDROID_TRACE_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] AEXT-TRACE) %s : " arg1, name, __func__, ## args); \ - } \ - } while (0) -#define AEXT_INFO(name, arg1, args...) \ - do { \ - if (android_msg_level & ANDROID_INFO_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] AEXT-INFO) %s : " arg1, name, __func__, ## args); \ - } \ - } while (0) -#define AEXT_DBG(name, arg1, args...) \ - do { \ - if (android_msg_level & ANDROID_DBG_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] AEXT-DBG) %s : " arg1, name, __func__, ## args); \ - } \ - } while (0) - #ifndef WL_CFG80211 #define htod32(i) i #define htod16(i) i @@ -1916,11 +1891,11 @@ wl_ext_add_del_bss(struct net_device *ndev, s32 bsscfg_idx, val = WLC_AP_IOV_OP_DELETE; } else if (iftype == WL_INTERFACE_TYPE_AP) { /* Add/role change to AP Interface */ - AEXT_TRACE(ndev->name, "Adding AP Interface\n"); + AEXT_INFO(ndev->name, "Adding AP Interface\n"); val = WLC_AP_IOV_OP_MANUAL_AP_BSSCFG_CREATE; } else if (iftype == WL_INTERFACE_TYPE_STA) { /* Add/role change to STA Interface */ - AEXT_TRACE(ndev->name, "Adding STA Interface\n"); + AEXT_INFO(ndev->name, "Adding STA Interface\n"); val = WLC_AP_IOV_OP_MANUAL_STA_BSSCFG_CREATE; } else { AEXT_ERROR(ndev->name, "add_del_bss NOT supported for IFACE type:0x%x", iftype); @@ -1938,7 +1913,7 @@ wl_ext_add_del_bss(struct net_device *ndev, s32 bsscfg_idx, memcpy(&bss_setbuf.ea.octet, addr, ETH_ALEN); } - AEXT_INFO(ndev->name, "wl bss %d bssidx:%d\n", val, bsscfg_idx); + AEXT_TRACE(ndev->name, "wl bss %d bssidx:%d\n", val, bsscfg_idx); ret = wl_ext_iovar_setbuf(ndev, "bss", &bss_setbuf, sizeof(bss_setbuf), ioctl_buf, WLC_IOCTL_SMLEN, NULL); if (ret != 0) @@ -2014,7 +1989,7 @@ wl_ext_interface_ops(struct net_device *dev, } } - AEXT_INFO(dev->name, "wl interface create success!! bssidx:%d \n", ret); + AEXT_TRACE(dev->name, "wl interface create success!! bssidx:%d \n", ret); return ret; } @@ -2178,7 +2153,7 @@ wl_ext_iapsta_preinit(struct net_device *dev, struct wl_apsta_params *apsta_para apstamode == IMESHAPAP_MODE) { wl_config_t rsdb_mode_cfg = {0, 0}; rsdb_mode_cfg.config = apsta_params->rsdb; - AEXT_INFO(dev->name, "set rsdb_mode %d\n", rsdb_mode_cfg.config); + AEXT_TRACE(dev->name, "set rsdb_mode %d\n", rsdb_mode_cfg.config); wl_ext_ioctl(dev, WLC_DOWN, NULL, 0, 1); wl_ext_iovar_setbuf(dev, "rsdb_mode", &rsdb_mode_cfg, sizeof(rsdb_mode_cfg), iovar_buf, sizeof(iovar_buf), NULL); @@ -2998,7 +2973,7 @@ wl_mesh_update_vndr_ie(struct wl_apsta_params *apsta_params, ret = wl_ext_add_del_ie(mesh_if->dev, VNDR_IE_BEACON_FLAG|VNDR_IE_PRBRSP_FLAG, vndr_ie, "add"); if (!ret) { - AEXT_INFO(mesh_if->dev->name, "mbssid=%pM, mchannel=%d, hop=%d, pbssid=%pM\n", + AEXT_TRACE(mesh_if->dev->name, "mbssid=%pM, mchannel=%d, hop=%d, pbssid=%pM\n", &mesh_info->master_bssid, mesh_info->master_channel, mesh_info->hop_cnt, mesh_info->peer_bssid); } @@ -3294,7 +3269,7 @@ wl_ext_isam_peer_path(struct net_device *dev, char *command, int total_len) } } } - AEXT_INFO(dev->name, "%s\n", dump_buf); + AEXT_TRACE(dev->name, "%s\n", dump_buf); } if (!command && dump_buf) @@ -3321,7 +3296,7 @@ wl_ext_isam_status(struct net_device *dev, char *command, int total_len) int dump_len = WLC_IOCTL_MEDLEN; int dump_written = 0; - if (command || android_msg_level & ANDROID_INFO_LEVEL) { + if (command || android_msg_level & ANDROID_TRACE_LEVEL) { if (command) { dump_buf = command; dump_len = total_len; @@ -3375,7 +3350,7 @@ wl_ext_isam_status(struct net_device *dev, char *command, int total_len) } } } - AEXT_INFO(dev->name, "%s\n", dump_buf); + AEXT_TRACE(dev->name, "%s\n", dump_buf); } if (!command && dump_buf) @@ -3669,7 +3644,7 @@ wl_ext_get_vsdb_chan(struct wl_apsta_params *apsta_params, target_chan = wl_ext_get_chan(apsta_params, target_if->dev); if (target_chan) { - AEXT_INFO(cur_if->ifname, "cur_chan=%d, target_chan=%d\n", + AEXT_TRACE(cur_if->ifname, "cur_chan=%d, target_chan=%d\n", cur_chan, target_chan); if (wl_ext_diff_band(cur_chan, target_chan)) { if (!apsta_params->rsdb) @@ -3758,7 +3733,10 @@ static void wl_ext_move_cur_dfs_channel(struct wl_apsta_params *apsta_params, struct wl_if_info *cur_if) { - uint16 other_chan = 0, cur_chan = cur_if->channel; + uint16 other_chan = 0; +#ifdef DHD_DEBUG + uint16 cur_chan = cur_if->channel; +#endif uint16 chan_2g = 0, chan_5g = 0; uint32 auto_band = WLC_BAND_2G; @@ -3831,7 +3809,10 @@ static void wl_ext_move_other_dfs_channel(struct wl_apsta_params *apsta_params, struct wl_if_info *cur_if) { - uint16 other_chan = 0, cur_chan = cur_if->channel; + uint16 other_chan = 0; +#ifdef DHD_DEBUG + uint16 cur_chan = cur_if->channel; +#endif uint16 chan_2g = 0, chan_5g = 0; uint32 auto_band = WLC_BAND_2G; @@ -4322,9 +4303,9 @@ wl_ext_get_wlfc_maxcount(struct dhd_pub *dhd, int ifidx) } if (cur_if) - AEXT_INFO(cur_if->ifname, "update maxcount %d\n", maxcount); + AEXT_TRACE(cur_if->ifname, "update maxcount %d\n", maxcount); else - AEXT_INFO("wlan", "update maxcount %d for ifidx %d\n", maxcount, ifidx); + AEXT_TRACE("wlan?", "update maxcount %d for ifidx %d\n", maxcount, ifidx); return maxcount; } @@ -4349,7 +4330,7 @@ wl_ext_update_wlfc_maxcount(struct dhd_pub *dhd) ret = dhd_wlfc_update_maxcount(dhd, tmp_if->ifidx, tmp_if->transit_maxcount); if (ret == 0) - AEXT_INFO(tmp_if->ifname, "updated maxcount %d\n", + AEXT_TRACE(tmp_if->ifname, "updated maxcount %d\n", tmp_if->transit_maxcount); band_5g = TRUE; } @@ -4371,7 +4352,7 @@ wl_ext_update_wlfc_maxcount(struct dhd_pub *dhd) ret = dhd_wlfc_update_maxcount(dhd, tmp_if->ifidx, tmp_if->transit_maxcount); if (ret == 0) - AEXT_INFO(tmp_if->ifname, "updated maxcount %d\n", + AEXT_TRACE(tmp_if->ifname, "updated maxcount %d\n", tmp_if->transit_maxcount); } } @@ -4842,7 +4823,8 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, action = action & dhd->conf->in4way; cur_eapol_status = cur_if->eapol_status; - AEXT_TRACE(dev->name, "status=%d, action=0x%x, in4way=0x%x\n", + + AEXT_DBG(dev->name, "status=%d, action=0x%x, in4way=0x%x\n", status, action, dhd->conf->in4way); switch (status) { @@ -4876,7 +4858,7 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, if (action & (STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY)) { if (apsta_params->sta_handshaking) { if ((action & STA_NO_BTC_IN4WAY) && apsta_params->sta_btc_mode) { - AEXT_INFO(dev->name, "status=%d, restore sta_btc_mode %d\n", + AEXT_DBG(dev->name, "status=%d, restore sta_btc_mode %d\n", status, apsta_params->sta_btc_mode); wldev_iovar_setint(dev, "sta_btc_mode", apsta_params->sta_btc_mode); } @@ -4891,7 +4873,7 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, osl_do_gettimeofday(&cur_ts); diff_ms = osl_do_gettimediff(&cur_ts, sta_disc_ts)/1000; while (diff_ms < max_wait_time && max_wait_cnt) { - AEXT_INFO(dev->name, "status=%d, max_wait_cnt=%d waiting...\n", + AEXT_DBG(dev->name, "status=%d, max_wait_cnt=%d waiting...\n", status, max_wait_cnt); mutex_unlock(&apsta_params->in4way_sync); OSL_SLEEP(50); @@ -4915,7 +4897,7 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, if (action & STA_NO_BTC_IN4WAY) { err = wldev_iovar_getint(dev, "sta_btc_mode", &apsta_params->sta_btc_mode); if (!err && apsta_params->sta_btc_mode) { - AEXT_INFO(dev->name, "status=%d, disable current sta_btc_mode %d\n", + AEXT_DBG(dev->name, "status=%d, disable current sta_btc_mode %d\n", status, apsta_params->sta_btc_mode); wldev_iovar_setint(dev, "sta_btc_mode", 0); } @@ -4929,7 +4911,7 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, osl_do_gettimeofday(&cur_ts); diff_ms = osl_do_gettimediff(&cur_ts, sta_disc_ts)/1000; while (diff_ms < max_wait_time && max_wait_cnt) { - AEXT_INFO(dev->name, "status=%d, max_wait_cnt=%d waiting...\n", + AEXT_DBG(dev->name, "status=%d, max_wait_cnt=%d waiting...\n", status, max_wait_cnt); mutex_unlock(&apsta_params->in4way_sync); OSL_SLEEP(50); @@ -4963,7 +4945,7 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, if (action & (STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY)) { if (apsta_params->sta_handshaking) { if ((action & STA_NO_BTC_IN4WAY) && apsta_params->sta_btc_mode) { - AEXT_INFO(dev->name, "status=%d, restore sta_btc_mode %d\n", + AEXT_DBG(dev->name, "status=%d, restore sta_btc_mode %d\n", status, apsta_params->sta_btc_mode); wldev_iovar_setint(dev, "sta_btc_mode", apsta_params->sta_btc_mode); } @@ -4980,7 +4962,7 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, if (action & (STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY)) { if (apsta_params->sta_handshaking) { if ((action & STA_NO_BTC_IN4WAY) && apsta_params->sta_btc_mode) { - AEXT_INFO(dev->name, "status=%d, restore sta_btc_mode %d\n", + AEXT_DBG(dev->name, "status=%d, restore sta_btc_mode %d\n", status, apsta_params->sta_btc_mode); wldev_iovar_setint(dev, "sta_btc_mode", apsta_params->sta_btc_mode); } @@ -4990,7 +4972,7 @@ wl_ext_in4way_sync_sta(dhd_pub_t *dhd, struct wl_if_info *cur_if, wake_up_interruptible(&dhd->conf->event_complete); break; default: - AEXT_INFO(dev->name, "Unknown action=0x%x, status=%d\n", action, status); + AEXT_ERROR(dev->name, "Unknown status=%d for action=0x%x\n", status, action); } return ret; @@ -5003,15 +4985,25 @@ wl_ext_in4way_sync_ap(dhd_pub_t *dhd, struct wl_if_info *cur_if, struct wl_apsta_params *apsta_params = dhd->iapsta_params; struct net_device *dev = cur_if->dev; struct osl_timespec cur_ts, *ap_disc_sta_ts = &apsta_params->ap_disc_sta_ts; - u8 *ap_disc_sta_bssid = (u8*)&apsta_params->ap_disc_sta_bssid; + u8 *ap_sta_bssid = (u8*)&apsta_params->ap_disc_sta_bssid; uint32 diff_ms, timeout, max_wait_time = 300; int ret = 0, suppressed = 0; - u8* mac_addr = context; + struct ether_addr null_addr; + u8* mac_addr = context; /* can be NULL !! */ bool wait = FALSE; action = action & dhd->conf->in4way; - AEXT_TRACE(dev->name, "status=%d, action=0x%x, in4way=0x%x\n", - status, action, dhd->conf->in4way); + + /* EOF:FIX should never be, but is possible due bcmdhd crude code. + * The question is to copy the sta_bssis to mac_addr or leave + * it invalid by empty zero mac */ + if (mac_addr == NULL) { + bzero(&null_addr, sizeof(null_addr)); + mac_addr = (u8*) &null_addr; + } + + AEXT_DBG(dev->name, "STA bssid=%pM mac=%pM status=%d, action=0x%x, in4way=0x%x\n", + ap_sta_bssid, mac_addr, status, action, dhd->conf->in4way); switch (status) { case WL_EXT_STATUS_SCAN: @@ -5034,7 +5026,7 @@ wl_ext_in4way_sync_ap(dhd_pub_t *dhd, struct wl_if_info *cur_if, diff_ms = osl_do_gettimediff(&cur_ts, ap_disc_sta_ts)/1000; if (mac_addr && diff_ms < max_wait_time) { if (cur_if->ifmode == IAP_MODE && - !memcmp(ap_disc_sta_bssid, mac_addr, ETHER_ADDR_LEN)) { + !memcmp(ap_sta_bssid, mac_addr, ETHER_ADDR_LEN)) { wait = TRUE; } else if (cur_if->ifmode == IGO_MODE && cur_if->eapol_status == EAPOL_STATUS_WSC_DONE && @@ -5043,54 +5035,76 @@ wl_ext_in4way_sync_ap(dhd_pub_t *dhd, struct wl_if_info *cur_if, } } if (wait) { - AEXT_INFO(dev->name, "status=%d, ap_recon_sta=%d, waiting %dms ...\n", - status, apsta_params->ap_recon_sta, max_wait_time); + AEXT_INFO(dev->name, + "Reconnect wait STA status=%d, ap_recon_sta=%s, waiting %dms ...\n", + status, (apsta_params->ap_recon_sta ? "YES" : "NO"), max_wait_time); mutex_unlock(&apsta_params->in4way_sync); timeout = wait_event_interruptible_timeout(apsta_params->ap_recon_sta_event, apsta_params->ap_recon_sta, msecs_to_jiffies(max_wait_time)); mutex_lock(&apsta_params->in4way_sync); - AEXT_INFO(dev->name, "status=%d, ap_recon_sta=%d, timeout=%d\n", - status, apsta_params->ap_recon_sta, timeout); + AEXT_INFO(dev->name, + "Reconnect wait STA status=%d, ap_recon_sta=%s, timeout=%d\n", + status, (apsta_params->ap_recon_sta ? "YES" : "NO"), timeout); if (timeout > 0) { - AEXT_INFO(dev->name, "skip delete STA %pM\n", mac_addr); + AEXT_INFO(dev->name, "Skip delete STA %pM\n", mac_addr); ret = -1; break; } } else { - AEXT_INFO(dev->name, "status=%d, ap_recon_sta=%d => 0\n", - status, apsta_params->ap_recon_sta); + AEXT_INFO(dev->name, + "Reconnect not waiting for STA status=%d, ap_recon_sta=%s => 0\n", + status, (apsta_params->ap_recon_sta ? "YES" : "NO")); apsta_params->ap_recon_sta = FALSE; if (cur_if->ifmode == IGO_MODE) cur_if->eapol_status = EAPOL_STATUS_NONE; } } break; + case WL_EXT_STATUS_DISCONNECTED: case WL_EXT_STATUS_STA_DISCONNECTED: if (action & AP_WAIT_STA_RECONNECT) { - AEXT_INFO(dev->name, "latest disc STA %pM ap_recon_sta=%d\n", - ap_disc_sta_bssid, apsta_params->ap_recon_sta); - osl_do_gettimeofday(ap_disc_sta_ts); - memcpy(ap_disc_sta_bssid, mac_addr, ETHER_ADDR_LEN); + AEXT_INFO(dev->name, + "Latest disconnect STA %pM ap_recon_sta=%d\n", + ap_sta_bssid, apsta_params->ap_recon_sta); apsta_params->ap_recon_sta = FALSE; + osl_do_gettimeofday(ap_disc_sta_ts); + if (mac_addr && memcmp( + ap_sta_bssid, mac_addr, ETHER_ADDR_LEN) != 0) { + memcpy(ap_sta_bssid, mac_addr, ETHER_ADDR_LEN); + } } break; + case WL_EXT_STATUS_CONNECTED: case WL_EXT_STATUS_STA_CONNECTED: if (action & AP_WAIT_STA_RECONNECT) { osl_do_gettimeofday(&cur_ts); diff_ms = osl_do_gettimediff(&cur_ts, ap_disc_sta_ts)/1000; + /* reconnect when context (mac_addr) same as bssid */ if (diff_ms < max_wait_time && - !memcmp(ap_disc_sta_bssid, mac_addr, ETHER_ADDR_LEN)) { - AEXT_INFO(dev->name, "status=%d, ap_recon_sta=%d => 1\n", - status, apsta_params->ap_recon_sta); + !memcmp(ap_sta_bssid, mac_addr, ETHER_ADDR_LEN)) { apsta_params->ap_recon_sta = TRUE; - wake_up_interruptible(&apsta_params->ap_recon_sta_event); } else { apsta_params->ap_recon_sta = FALSE; } + + AEXT_INFO(dev->name, + "Connected STA %pM status=%d, ap_recon_sta=%s\n", + mac_addr, status, (apsta_params->ap_recon_sta ? "YES" : "NO")); + + if (apsta_params->ap_recon_sta) { + wake_up_interruptible(&apsta_params->ap_recon_sta_event); + } + } + break; + case WL_EXT_STATUS_ADD_KEY: + if (action & STA_NO_SCAN_IN4WAY) { + AEXT_DBG(dev->name, + "Status 'add key' for %pM (do nothing here! Just info.)\n", + ap_sta_bssid); } break; default: - AEXT_INFO(dev->name, "Unknown action=0x%x, status=%d\n", action, status); + AEXT_ERROR(dev->name, "Unknown status=%d for action=0x%x\n", status, action); } return ret; @@ -5114,7 +5128,7 @@ wl_ext_in4way_sync(struct net_device *dev, uint action, else if (cur_if->ifmode == IAP_MODE || cur_if->ifmode == IGO_MODE) ret = wl_ext_in4way_sync_ap(dhd, cur_if, action, status, context); else - AEXT_INFO(dev->name, "Unknown mode %d\n", cur_if->ifmode); + AEXT_ERROR(dev->name, "Unknown mode %d\n", cur_if->ifmode); } mutex_unlock(&apsta_params->in4way_sync); @@ -5150,6 +5164,10 @@ wl_ext_in4way_sync_wext(struct net_device *dev, uint action, ret = wl_ext_in4way_sync_sta(dhd, cur_if, 0, status, NULL); } mutex_unlock(&apsta_params->in4way_sync); +#else + WL_ERR(( + "++ THIS MAKES NO SENSE due defined WL_CFG80211 " + "-> use wl_ext_in4way_sync() instead ++\n")); #endif return ret; } @@ -5266,13 +5284,13 @@ wl_ext_iapsta_get_rsdb(struct net_device *net, struct dhd_pub *dhd) rsdb = rsdb_p->status; else rsdb = rsdb_p->config; - AEXT_INFO(net->name, "config=%d, status=%d\n", + AEXT_TRACE(net->name, "config=%d, status=%d\n", rsdb_p->config, rsdb_p->status); } } } - AEXT_INFO(net->name, "rsdb_mode=%d\n", rsdb); + AEXT_TRACE(net->name, "rsdb_mode=%d\n", rsdb); return rsdb; } @@ -5727,7 +5745,7 @@ wl_ext_tcpka_conn_add(struct net_device *dev, char *data, char *command, } tcpka->ka_payload_len = ka_payload_len; - AEXT_INFO(dev->name, + AEXT_TRACE(dev->name, "tcpka_conn_add %d %pM %pM %pM %d %d %d %u %u %d %u %u %u %u \"%s\"\n", tcpka->sess_id, &tcpka->dst_mac, &tcpka->src_ip, &tcpka->dst_ip, tcpka->ipid, tcpka->srcport, tcpka->dstport, tcpka->seq, @@ -5769,7 +5787,7 @@ wl_ext_tcpka_conn_enable(struct net_device *dev, char *data, char *command, tcpka_conn.tcpka_timers.retry_count = 0; } - AEXT_INFO(dev->name, "tcpka_conn_enable %d %d %d %d %d\n", + AEXT_TRACE(dev->name, "tcpka_conn_enable %d %d %d %d %d\n", tcpka_conn.sess_id, tcpka_conn.flag, tcpka_conn.tcpka_timers.interval, tcpka_conn.tcpka_timers.retry_interval, @@ -5793,7 +5811,7 @@ wl_ext_tcpka_conn_info(struct net_device *dev, char *data, char *command, if (data) { sscanf(data, "%d", &sess_id); - AEXT_INFO(dev->name, "tcpka_conn_sess_info %d\n", sess_id); + AEXT_TRACE(dev->name, "tcpka_conn_sess_info %d\n", sess_id); ret = wl_ext_iovar_getbuf(dev, "tcpka_conn_sess_info", (char *)&sess_id, sizeof(uint32), iovar_buf, sizeof(iovar_buf), NULL); if (!ret) { @@ -5804,7 +5822,7 @@ wl_ext_tcpka_conn_info(struct net_device *dev, char *data, char *command, "seq :%u\n" "ack :%u", sess_id, info->ipid, info->seq, info->ack); - AEXT_INFO(dev->name, "%s\n", command); + AEXT_TRACE(dev->name, "%s\n", command); ret = bytes_written; } } @@ -5825,7 +5843,7 @@ wl_ext_rsdb_mode(struct net_device *dev, char *data, char *command, rsdb_mode_cfg.config = (int)simple_strtol(data, NULL, 0); ret = wl_ext_iovar_setbuf(dev, "rsdb_mode", (char *)&rsdb_mode_cfg, sizeof(rsdb_mode_cfg), iovar_buf, WLC_IOCTL_SMLEN, NULL); - AEXT_INFO(dev->name, "rsdb_mode %d\n", rsdb_mode_cfg.config); + AEXT_TRACE(dev->name, "rsdb_mode %d\n", rsdb_mode_cfg.config); } else { ret = wl_ext_iovar_getbuf(dev, "rsdb_mode", NULL, 0, iovar_buf, WLC_IOCTL_SMLEN, NULL); @@ -5891,7 +5909,7 @@ wl_ext_recal(struct net_device *dev, char *data, char *command, (nchan & WL_SCAN_PARAMS_COUNT_MASK)); params_size = p - (char*)params + nssid * sizeof(wlc_ssid_t); - AEXT_INFO(dev->name, "recal\n"); + AEXT_TRACE(dev->name, "recal\n"); ret = wl_ext_ioctl(dev, WLC_SCAN, params, params_size, 1); } @@ -5963,7 +5981,7 @@ wl_ext_event_msg(struct net_device *dev, char *data, bytes_written += snprintf(command+bytes_written, total_len, "1"); else bytes_written += snprintf(command+bytes_written, total_len, "0"); - AEXT_INFO(dev->name, "%s\n", command); + AEXT_TRACE(dev->name, "%s\n", command); goto eventmsg_out; } bytes_written = wl_ext_add_remove_eventmsg(dev, event, add); @@ -5986,7 +6004,7 @@ wl_ext_event_msg(struct net_device *dev, char *data, bytes_written += snprintf(command+bytes_written, total_len, "%02x", vbuf[i] & 0xff); } - AEXT_INFO(dev->name, "%s\n", command); + AEXT_TRACE(dev->name, "%s\n", command); } eventmsg_out: @@ -6046,7 +6064,7 @@ wl_ext_pkt_filter_add(struct net_device *dev, char *data, char *command, dhd->pktfilter_count++; dhd_pktfilter_offload_set(dhd, data); - AEXT_INFO(dev->name, "filter id %d added\n", new_id); + AEXT_TRACE(dev->name, "filter id %d added\n", new_id); } return err; @@ -6096,7 +6114,7 @@ wl_ext_pkt_filter_delete(struct net_device *dev, char *data, char *command, if (in_filter) { dhd_pktfilter_offload_delete(dhd, id); - AEXT_INFO(dev->name, "filter id %d deleted\n", id); + AEXT_TRACE(dev->name, "filter id %d deleted\n", id); } else { AEXT_ERROR(dev->name, "filter id %d not in list\n", id); err = -1; @@ -6135,7 +6153,7 @@ wl_ext_pkt_filter_enable(struct net_device *dev, char *data, char *command, if (in_filter) { dhd_pktfilter_offload_enable(dhd, dhd->pktfilter[i], enable, dhd_master_mode); - AEXT_INFO(dev->name, "filter id %d %s\n", id, enable?"enabled":"disabled"); + AEXT_TRACE(dev->name, "filter id %d %s\n", id, enable?"enabled":"disabled"); } else { AEXT_ERROR(dev->name, "filter id %d not in list\n", id); err = -1; @@ -6383,7 +6401,7 @@ wl_ext_wowl_pattern(struct net_device *dev, char *data, char *command, goto exit; } if (!strcmp(add, "clr")) { - AEXT_INFO(dev->name, "wowl_pattern clr\n"); + AEXT_TRACE(dev->name, "wowl_pattern clr\n"); ret = wl_ext_iovar_setbuf(dev, "wowl_pattern", add, sizeof(add), iovar_buf, sizeof(iovar_buf), NULL); goto exit; @@ -6476,7 +6494,7 @@ wl_ext_wowl_pattern(struct net_device *dev, char *data, char *command, goto exit; } - AEXT_INFO(dev->name, "%s %d %s %s\n", add, offset, mask, pattern); + AEXT_TRACE(dev->name, "%s %d %s %s\n", add, offset, mask, pattern); ret = wl_ext_iovar_setbuf(dev, "wowl_pattern", (char *)wowl_pattern2, buf_len, iovar_buf, sizeof(iovar_buf), NULL); @@ -6517,7 +6535,7 @@ wl_ext_wowl_pattern(struct net_device *dev, char *data, char *command, sizeof(wl_wowl_pattern_t)); } - AEXT_INFO(dev->name, "%s\n", command); + AEXT_TRACE(dev->name, "%s\n", command); } } @@ -6539,7 +6557,7 @@ wl_ext_wowl_wakeind(struct net_device *dev, char *data, char *command, if (data) { sscanf(data, "%s", clr); if (!strcmp(clr, "clear")) { - AEXT_INFO(dev->name, "wowl_wakeind clear\n"); + AEXT_TRACE(dev->name, "wowl_wakeind clear\n"); ret = wl_ext_iovar_setbuf(dev, "wowl_wakeind", clr, sizeof(clr), iovar_buf, sizeof(iovar_buf), NULL); } else { @@ -6603,13 +6621,13 @@ wl_ext_gpio_notify(struct net_device *dev, char *data, char *command, AEXT_ERROR(dev->name, "rejecting pattern=%s\n", frame_str); goto exit; } - AEXT_INFO(dev->name, "index=%d, len=%d\n", notify.index, notify.len); + AEXT_TRACE(dev->name, "index=%d, len=%d\n", notify.index, notify.len); if (android_msg_level & ANDROID_INFO_LEVEL) prhex("payload", (uchar *)notify.payload, notify.len); ret = wl_ext_iovar_setbuf(dev, "bcol_gpio_noti", (char *)¬ify, sizeof(notify), iovar_buf, WLC_IOCTL_SMLEN, NULL); } else { - AEXT_INFO(dev->name, "index=%d\n", notify.index); + AEXT_TRACE(dev->name, "index=%d\n", notify.index); ret = wl_ext_iovar_getbuf(dev, "bcol_gpio_noti", ¬ify.index, sizeof(notify.index), iovar_buf, sizeof(iovar_buf), NULL); if (!ret) { @@ -6848,26 +6866,26 @@ wl_ext_wl_iovar(struct net_device *dev, char *command, int total_len) } else { if (cmd == WLC_SET_VAR) { val = (int)simple_strtol(data, NULL, 0); - AEXT_INFO(dev->name, "set %s %d\n", name, val); + AEXT_DBG(dev->name, "set %s %d\n", name, val); ret = wl_ext_iovar_setint(dev, name, val); } else if (cmd == WLC_GET_VAR) { - AEXT_INFO(dev->name, "get %s\n", name); + AEXT_DBG(dev->name, "get %s\n", name); ret = wl_ext_iovar_getint(dev, name, &val); if (!ret) { bytes_written = snprintf(command, total_len, "%d", val); - AEXT_INFO(dev->name, "command result is %s\n", command); + AEXT_DBG(dev->name, "command result is %s\n", command); ret = bytes_written; } } else if (data) { val = (int)simple_strtol(data, NULL, 0); - AEXT_INFO(dev->name, "set %d %d\n", cmd, val); + AEXT_DBG(dev->name, "set %d %d\n", cmd, val); ret = wl_ext_ioctl(dev, cmd, &val, sizeof(val), TRUE); } else { - AEXT_INFO(dev->name, "get %d\n", cmd); + AEXT_DBG(dev->name, "get %d\n", cmd); ret = wl_ext_ioctl(dev, cmd, &val, sizeof(val), FALSE); if (!ret) { bytes_written = snprintf(command, total_len, "%d", val); - AEXT_INFO(dev->name, "command result is %s\n", command); + AEXT_DBG(dev->name, "command result is %s\n", command); ret = bytes_written; } } @@ -7002,7 +7020,7 @@ wl_ext_get_distance(struct net_device *net, u32 band) distance = 8; else distance = 16; - AEXT_INFO(net->name, "bw=0x%x, distance=%d\n", bw, distance); + AEXT_TRACE(net->name, "bw=0x%x, distance=%d\n", bw, distance); return distance; } @@ -7131,7 +7149,7 @@ wl_ext_get_best_channel(struct net_device *net, } } - if (android_msg_level & ANDROID_INFO_LEVEL) { + if (android_msg_level & ANDROID_TRACE_LEVEL) { struct bcmstrbuf strbuf; char *tmp_buf = NULL; tmp_buf = kmalloc(WLC_IOCTL_SMLEN, GFP_KERNEL); @@ -7151,7 +7169,7 @@ wl_ext_get_best_channel(struct net_device *net, bcm_bprintf(&strbuf, "\n"); bcm_bprintf(&strbuf, "best_2g_ch=%d, best_5g_ch=%d\n", *best_2g_ch, *best_5g_ch); - AEXT_INFO(net->name, "\n%s", strbuf.origbuf); + AEXT_TRACE(net->name, "\n%s", strbuf.origbuf); if (tmp_buf) { kfree(tmp_buf); } @@ -7265,7 +7283,7 @@ wl_ext_fw_apcs(struct net_device *dev, uint32 band) break; } } - AEXT_INFO(dev->name, "%d tried, ret = %d, chosen = 0x%x\n", + AEXT_TRACE(dev->name, "%d tried, ret = %d, chosen = 0x%x\n", (APCS_MAX_RETRY - retry), ret, chosen); OSL_SLEEP(250); } @@ -7334,7 +7352,7 @@ wl_ext_drv_apcs(struct net_device *dev, uint32 band) WL_MSG(dev->name, "selected channel = %d\n", channel); goto done; } - AEXT_INFO(dev->name, "escan_state=%d, %d tried, ret = %d\n", + AEXT_TRACE(dev->name, "escan_state=%d, %d tried, ret = %d\n", escan->escan_state, (retry_max - retry), ret); OSL_SLEEP(retry_interval); } @@ -7356,7 +7374,7 @@ wl_ext_autochannel(struct net_device *dev, uint acs, uint32 band) int channel = 0; uint16 chan_2g, chan_5g; - AEXT_INFO(dev->name, "acs=0x%x, band=%d \n", acs, band); + AEXT_TRACE(dev->name, "acs=0x%x, band=%d \n", acs, band); #ifdef WL_CFG80211 if (acs & ACS_FW_BIT) { @@ -7430,7 +7448,7 @@ wl_delete_dirty_rssi_cache(wl_rssi_cache_ctrl_t *rssi_cache_ctrl) tmp = 0; prev->next = node->next; } - AEXT_INFO("wlan", "Del %d with BSSID %pM\n", i, &node->BSSID); + AEXT_INFO("wlan?", "Delete %d with BSSID %pM\n", i, &node->BSSID); kfree(node); if (tmp == 1) { node = *rssi_head; @@ -7465,7 +7483,7 @@ wl_delete_disconnected_rssi_cache(wl_rssi_cache_ctrl_t *rssi_cache_ctrl, tmp = 0; prev->next = node->next; } - AEXT_INFO("wlan", "Del %d with BSSID %pM\n", i, &node->BSSID); + AEXT_INFO("wlan?", "Delete %d with BSSID %pM\n", i, &node->BSSID); kfree(node); if (tmp == 1) { node = *rssi_head; @@ -7511,7 +7529,7 @@ wl_update_connected_rssi_cache(struct net_device *net, error = wldev_ioctl(net, WLC_GET_BSSID, &bssid, sizeof(bssid), 0); if (error == BCME_NOTASSOCIATED) { - AEXT_INFO("wlan", "Not Associated! res:%d\n", error); + AEXT_ERROR("wlan", "Not Associated! res:%d\n", error); return 0; } if (error) { diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.c index 0ec15448297dd..27f8ab8ff2876 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.c @@ -156,7 +156,9 @@ module_param(fw_ap_select, uint, 0660); static struct device *cfg80211_parent_dev = NULL; static struct bcm_cfg80211 *g_bcmcfg = NULL; -u32 wl_dbg_level = WL_DBG_ERR; // | WL_DBG_P2P_ACTION | WL_DBG_INFO; + +u32 wl_dbg_level = WL_DBG_ERR | WL_DBG_INFO; +/* | WL_DBG_P2P_ACTION; */ #define MAX_VIF_OFFSET 15 #define MAX_WAIT_TIME 1500 @@ -291,6 +293,7 @@ common_iface_combinations[] = { }; #endif /* LINUX_VER >= 3.0 && (WL_IFACE_COMB_NUM_CHANNELS || WL_CFG80211_P2P_DEV_IF) */ +#ifdef DHD_DEBUG static const char *wl_if_state_strs[WL_IF_STATE_MAX + 1] = { "WL_IF_CREATE_REQ", "WL_IF_CREATE_DONE", @@ -300,6 +303,7 @@ static const char *wl_if_state_strs[WL_IF_STATE_MAX + 1] = { "WL_IF_CHANGE_DONE", "WL_IF_STATE_MAX" }; +#endif #ifdef BCMWAPI_WPI #if defined(ANDROID_PLATFORM_VERSION) && (ANDROID_PLATFORM_VERSION >= 8) @@ -692,6 +696,9 @@ static s32 wl_cfg80211_external_auth(struct wiphy *wiphy, struct net_device *dev, struct cfg80211_external_auth_params *ext_auth); #endif /* WL_CLIENT_SAE */ +static s32 wl_cfg80211_authorize(struct net_device *ndev, struct wl_connect_info *conn_info, const u8 *mac); +static s32 wl_cfg80211_deauthorize(struct net_device *ndev, struct wl_connect_info *conn_info, const u8 *mac); + /* * register/deregister parent device */ @@ -6014,19 +6021,19 @@ wl_set_set_sharedkey(struct net_device *dev, return BCME_ERROR; } - WL_DBG(("key len (%d)\n", sme->key_len)); if (sme->key_len) { sec = wl_read_prof(cfg, dev, WL_PROF_SEC); - WL_DBG(("wpa_versions 0x%x cipher_pairwise 0x%x\n", - sec->wpa_versions, sec->cipher_pairwise)); if (!(sec->wpa_versions & (NL80211_WPA_VERSION_1 | - NL80211_WPA_VERSION_2)) && + NL80211_WPA_VERSION_2)) && #ifdef BCMWAPI_WPI !is_wapi(sec->cipher_pairwise) && #endif // endif (sec->cipher_pairwise & (WLAN_CIPHER_SUITE_WEP40 | WLAN_CIPHER_SUITE_WEP104))) { + WL_MSG(dev->name, + "Update wsec with wpa_versions=0x%x cipher_pairwise=0x%x\n", + sec->wpa_versions, sec->cipher_pairwise); bzero(&key, sizeof(key)); key.len = (u32) sme->key_len; key.index = (u32) sme->key_idx; @@ -6045,9 +6052,9 @@ wl_set_set_sharedkey(struct net_device *dev, return -EINVAL; } /* Set the new key/index */ - WL_DBG(("key length (%d) key index (%d) algo (%d)\n", - key.len, key.index, key.algo)); - WL_DBG(("key \"%s\"\n", key.data)); + WL_MSG(dev->name, + "Set new key -> length=%d index=%d algo=%d key=\"%s\"\n", + key.len, key.index, key.algo, key.data); swap_key_from_BE(&key); err = wldev_iovar_setbuf_bsscfg(dev, "wsec_key", &key, sizeof(key), cfg->ioctl_buf, WLC_IOCTL_MAXLEN, bssidx, &cfg->ioctl_buf_sync); @@ -6067,6 +6074,9 @@ wl_set_set_sharedkey(struct net_device *dev, } } } + else { + WL_ERR_MSG("OOPS!! Invalid sme->key_len == %d\n", sme->key_len); + } return err; } @@ -6306,7 +6316,7 @@ wl_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev, } if (sme->bssid_hint) { sme->bssid = sme->bssid_hint; - WL_INFORM_MEM(("bssid_hint "MACDBG" \n", MAC2STRDBG(sme->bssid_hint))); + WL_INFORM_MEM(("bssid_hint %pM \n", sme->bssid_hint)); } } #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0) */ @@ -6388,11 +6398,12 @@ wl_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev, err = wl_cfg80211_cleanup_mismatch_status(dev, cfg, true); } } - wl_ext_in4way_sync(dev, STA_WAIT_DISCONNECTED, WL_EXT_STATUS_CONNECTING, NULL); if (sme->bssid) { + wl_ext_in4way_sync(dev, STA_WAIT_DISCONNECTED, WL_EXT_STATUS_CONNECTING, (void*) sme->bssid); wl_update_prof(cfg, dev, NULL, sme->bssid, WL_PROF_LATEST_BSSID); } else { + wl_ext_in4way_sync(dev, STA_WAIT_DISCONNECTED, WL_EXT_STATUS_CONNECTING, (void*) ðer_bcast); wl_update_prof(cfg, dev, NULL, ðer_bcast, WL_PROF_LATEST_BSSID); } #ifdef SUPPORT_AP_BWCTRL @@ -6668,20 +6679,20 @@ wl_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev, wl_ext_get_sec(dev, 0, sec, sizeof(sec)); if (cfg->rcc_enabled) { - WL_MSG(dev->name, "Connecting with " MACDBG " ssid \"%s\", len (%d), " + WL_MSG(dev->name, "Connecting with %pM ssid \"%s\", len (%d), " "sec=%s, with rcc channels. chan_cnt:%d \n\n", - MAC2STRDBG((u8*)(&ext_join_params->assoc.bssid)), + &ext_join_params->assoc.bssid, ext_join_params->ssid.SSID, ext_join_params->ssid.SSID_len, sec, chan_cnt); } else { - WL_MSG(dev->name, "Connecting with " MACDBG " ssid \"%s\", len (%d), " + WL_MSG(dev->name, "Connecting with %pM ssid \"%s\", len (%d), " "sec=%s, channel=%d\n\n", - MAC2STRDBG((u8*)(&ext_join_params->assoc.bssid)), + &ext_join_params->assoc.bssid, ext_join_params->ssid.SSID, ext_join_params->ssid.SSID_len, sec, cfg->channel); } - SUPP_LOG(("[%s] Connecting with " MACDBG " ssid \"%s\"," + SUPP_LOG(("[%s] Connecting with %pM ssid \"%s\"," "channel:%d rcc:%d\n", - dev->name, MAC2STRDBG((u8*)(&ext_join_params->assoc.bssid)), + dev->name, &ext_join_params->assoc.bssid, ext_join_params->ssid.SSID, cfg->channel, cfg->rcc_enabled)); err = wldev_iovar_setbuf_bsscfg(dev, "join", ext_join_params, join_params_size, cfg->ioctl_buf, WLC_IOCTL_MAXLEN, bssidx, &cfg->ioctl_buf_sync); @@ -6745,7 +6756,7 @@ wl_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev, } if (!err) wl_ext_in4way_sync(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY, - WL_EXT_STATUS_CONNECTING, NULL); + WL_EXT_STATUS_CONNECTING, &ext_join_params->assoc.bssid); #ifdef DBG_PKT_MON if ((dev == bcmcfg_to_prmry_ndev(cfg)) && !err) { DHD_DBG_PKT_MON_START(dhdp); @@ -6872,7 +6883,8 @@ wl_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev, scbval.val = reason_code; memcpy(&scbval.ea, curbssid, ETHER_ADDR_LEN); scbval.val = htod32(scbval.val); - WL_INFORM_MEM(("[%s] wl disassoc\n", dev->name)); + WL_INFORM_MEM(("[%s] wl disassoc STA %pM\n", + dev->name, curbssid)); err = wldev_ioctl_set(dev, WLC_DISASSOC, &scbval, sizeof(scb_val_t)); if (unlikely(err)) { @@ -6881,7 +6893,7 @@ wl_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev, goto exit; } wl_ext_in4way_sync(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, - WL_EXT_STATUS_DISCONNECTING, NULL); + WL_EXT_STATUS_DISCONNECTING, curbssid); } #ifdef WL_WPS_SYNC /* If are in WPS reauth state, then we would be @@ -7042,11 +7054,17 @@ wl_add_keyext(struct wiphy *wiphy, struct net_device *dev, s32 bssidx; s32 mode = wl_get_mode_by_netdev(cfg, dev); - WL_MSG(dev->name, "key index (%d)\n", key_idx); + if (mac_addr) { + WL_MSG(dev->name, "Add sec key for %pM index=%d\n", mac_addr, key_idx); + } else { + WL_MSG(dev->name, "Add sec key index=%d\n", key_idx); + } + if ((bssidx = wl_get_bssidx_by_wdev(cfg, dev->ieee80211_ptr)) < 0) { WL_ERR(("Find p2p index from wdev(%p) failed\n", dev->ieee80211_ptr)); return BCME_ERROR; } + bzero(&key, sizeof(key)); key.index = (u32) key_idx; @@ -7056,22 +7074,25 @@ wl_add_keyext(struct wiphy *wiphy, struct net_device *dev, /* check for key index change */ if (key.len == 0) { + WL_MSG(dev->name, "Delete sec key -> key.len == 0"); + /* key delete */ swap_key_from_BE(&key); err = wldev_iovar_setbuf_bsscfg(dev, "wsec_key", &key, sizeof(key), cfg->ioctl_buf, WLC_IOCTL_MAXLEN, bssidx, &cfg->ioctl_buf_sync); if (unlikely(err)) { - WL_ERR(("key delete error (%d)\n", err)); + WL_ERR(("ioctl(WLC_SET_KEY) error (%d)\n", err)); return err; } } else { + WL_MSG(dev->name, "Setting the sec key index %d\n", key.index); + if (key.len > sizeof(key.data)) { WL_ERR(("Invalid key length (%d)\n", key.len)); return -EINVAL; } - WL_DBG(("Setting the key index %d\n", key.index)); - memcpy(key.data, params->key, key.len); + memcpy(key.data, params->key, key.len); if ((mode == WL_MODE_BSS) && (params->cipher == WLAN_CIPHER_SUITE_TKIP)) { u8 keybuf[8]; @@ -7101,10 +7122,9 @@ wl_add_keyext(struct wiphy *wiphy, struct net_device *dev, err = wldev_iovar_setbuf_bsscfg(dev, "wsec_key", &key, sizeof(key), cfg->ioctl_buf, WLC_IOCTL_MAXLEN, bssidx, &cfg->ioctl_buf_sync); if (unlikely(err)) { - WL_ERR(("WLC_SET_KEY error (%d)\n", err)); + WL_ERR(("ioctl(WLC_SET_KEY) error (%d)\n", err)); return err; } - WL_INFORM_MEM(("[%s] wsec key set\n", dev->name)); } return err; } @@ -7233,9 +7253,16 @@ wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev, #endif /* defined(WLAN_CIPHER_SUITE_PMK) */ dhd_pub_t *dhdp = (dhd_pub_t *)(cfg->pub); - WL_INFORM_MEM(("key index (%d) (0x%x)\n", key_idx, params->cipher)); RETURN_EIO_IF_NOT_UP(cfg); + if (mac_addr) { + WL_MSG(dev->name, "Add key for %pM index=%d cipher=0x%x\n", + mac_addr, key_idx, params->cipher); + } else { + WL_MSG(dev->name, "Add key index=%d cipher=0x%x\n", + key_idx, params->cipher); + } + if ((bssidx = wl_get_bssidx_by_wdev(cfg, dev->ieee80211_ptr)) < 0) { WL_ERR(("Find p2p index from dev(%p) failed\n", dev->ieee80211_ptr)); return BCME_ERROR; @@ -7384,7 +7411,7 @@ wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev, wl_set_wsec_info_algos(dev, algos, mask); #endif /* WL_GCMP */ wl_ext_in4way_sync(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY, - WL_EXT_STATUS_ADD_KEY, NULL); + WL_EXT_STATUS_ADD_KEY, (void*) mac_addr); return err; } @@ -7418,7 +7445,8 @@ wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev, key.algo = CRYPTO_ALGO_OFF; key.index = (u32) key_idx; - WL_DBG(("key index (%d)\n", key_idx)); + WL_MSG(dev->name, "Delete key index=%d\n", key_idx); + /* Set the new key/index */ swap_key_from_BE(&key); err = wldev_iovar_setbuf_bsscfg(dev, "wsec_key", &key, sizeof(key), cfg->ioctl_buf, @@ -7810,7 +7838,6 @@ wl_cfg80211_get_station(struct wiphy *wiphy, struct net_device *dev, wl_if_stats_t *if_stats = NULL; sta_info_v4_t *sta = NULL; u8 *curmacp = NULL; - s8 eabuf[ETHER_ADDR_STR_LEN]; dhd_pub_t *dhd = (dhd_pub_t *)(cfg->pub); bool fw_assoc_state = FALSE; u32 dhd_assoc_state = 0; @@ -8035,9 +8062,10 @@ wl_cfg80211_get_station(struct wiphy *wiphy, struct net_device *dev, sinfo->connected_time = sta->in; } #endif // endif - WL_INFORM_MEM(("STA %s, flags 0x%x, idle time %ds, connected time %ds\n", - bcm_ether_ntoa((const struct ether_addr *)mac, eabuf), - sta->flags, sta->idle, sta->in)); + + WL_MSG(dev->name, "STA %pM, flags=0x%x, idle time %ds, connected time %ds\n", + mac, sta->flags, sta->idle, sta->in); + break; default : WL_ERR(("Invalid device mode %d\n", wl_get_mode_by_netdev(cfg, dev))); @@ -8404,17 +8432,17 @@ wl_cfg80211_set_pmksa(struct wiphy *wiphy, struct net_device *dev, err = -EINVAL; } -#if (WL_DBG_LEVEL > 0) - if (pmksa->bssid != NULL) { - WL_DBG(("set_pmksa,IW_PMKSA_ADD - PMKID: %pM =\n", - &cfg->pmk_list->pmkids.pmkid[npmkids - 1].bssid)); - } - for (i = 0; i < WPA2_PMKID_LEN; i++) { - WL_DBG(("%02x\n", - cfg->pmk_list->pmkids.pmkid[npmkids - 1]. - pmkid[i])); + if (wl_dbg_level & WL_DBG_DBG) { + if (pmksa->bssid != NULL) { + WL_DBG(("set_pmksa,IW_PMKSA_ADD - PMKID: %pM =\n", + &cfg->pmk_list->pmkids.pmkid[npmkids - 1].bssid)); + } + for (i = 0; i < WPA2_PMKID_LEN; i++) { + WL_DBG(("%02x\n", + cfg->pmk_list->pmkids.pmkid[npmkids - 1]. + pmkid[i])); + } } -#endif /* (WL_DBG_LEVEL > 0) */ err = wl_update_pmklist(dev, cfg->pmk_list, err); @@ -8530,26 +8558,26 @@ wl_cfg80211_del_pmksa(struct wiphy *wiphy, struct net_device *dev, return BCME_OK; } -#if (WL_DBG_LEVEL > 0) - if (pmksa->bssid) { - WL_DBG(("del_pmksa,IW_PMKSA_REMOVE - PMKID: %pM =\n", - pmksa->bssid)); - } + if (wl_dbg_level & WL_DBG_DBG) { + if (pmksa->bssid) { + WL_DBG(("del_pmksa,IW_PMKSA_REMOVE - PMKID: %pM =\n", + pmksa->bssid)); + } #ifdef WL_FILS - else if (pmksa->ssid) { - WL_DBG(("FILS: del_pmksa for ssid: ")); - for (i = 0; i < pmksa->ssid_len; i++) { - WL_DBG(("%c", pmksa->ssid[i])); + else if (pmksa->ssid) { + WL_DBG(("FILS: del_pmksa for ssid: ")); + for (i = 0; i < pmksa->ssid_len; i++) { + WL_DBG(("%c", pmksa->ssid[i])); + } + WL_DBG(("\n")); } - WL_DBG(("\n")); - } #endif /* WL_FILS */ - if (pmksa->pmkid) { - for (i = 0; i < WPA2_PMKID_LEN; i++) { - WL_DBG(("%02x\n", pmksa->pmkid[i])); + if (pmksa->pmkid) { + for (i = 0; i < WPA2_PMKID_LEN; i++) { + WL_DBG(("%02x\n", pmksa->pmkid[i])); + } } } -#endif /* (WL_DBG_LEVEL > 0) */ for (i = 0; i < npmkids; i++) { if (pmksa->bssid) { @@ -9513,7 +9541,6 @@ wl_cfg80211_mgmt_tx(struct wiphy *wiphy, bcm_struct_cfgdev *cfgdev, s32 bssidx = 0; u32 id; bool ack = false; - s8 eabuf[ETHER_ADDR_STR_LEN]; WL_DBG(("Enter \n")); @@ -9600,13 +9627,14 @@ wl_cfg80211_mgmt_tx(struct wiphy *wiphy, bcm_struct_cfgdev *cfgdev, } memcpy(scb_val.ea.octet, mgmt->da, ETH_ALEN); scb_val.val = mgmt->u.disassoc.reason_code; + + WL_MSG(dev->name, "Disconnect STA %pM scb_val.val %d\n", + mgmt->da, scb_val.val); + err = wldev_ioctl_set(dev, WLC_SCB_DEAUTHENTICATE_FOR_REASON, &scb_val, sizeof(scb_val_t)); if (err < 0) WL_ERR(("WLC_SCB_DEAUTHENTICATE_FOR_REASON error %d\n", err)); - WL_ERR(("Disconnect STA : " MACDBG " scb_val.val %d\n", - MAC2STRDBG(bcm_ether_ntoa((const struct ether_addr *)mgmt->da, - eabuf)), scb_val.val)); if (num_associated > 0 && ETHER_ISBCAST(mgmt->da)) wl_delay(400); @@ -9858,6 +9886,7 @@ wl_cfg80211_set_channel(struct wiphy *wiphy, struct net_device *dev, _chan = wl_ext_iapsta_update_channel(dhd, dev, _chan); } #endif + WL_MSG(dev->name, "netdev_ifidx(%d), chan_type(%d) target channel(%d) \n", dev->ifindex, channel_type, _chan); @@ -11173,7 +11202,7 @@ wl_cfg80211_bcn_bringup_ap( } } if ((wsec == WEP_ENABLED) && cfg->wep_key.len) { - WL_DBG(("Applying buffered WEP KEY \n")); + WL_MSG(dev->name, "Applying buffered WEP KEY\n"); err = wldev_iovar_setbuf_bsscfg(dev, "wsec_key", &cfg->wep_key, sizeof(struct wl_wsec_key), cfg->ioctl_buf, WLC_IOCTL_MAXLEN, bssidx, &cfg->ioctl_buf_sync); @@ -11592,6 +11621,8 @@ wl_cfg80211_del_station( sizeof(struct ether_addr) + sizeof(uint)] = {0}; struct maclist *assoc_maclist = (struct maclist *)mac_buf; int num_associated = 0; + /* EOF:FIX */ + struct wl_connect_info *conn_info = wl_to_conn(cfg); #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0)) const u8 *mac_addr = params->mac; @@ -11617,9 +11648,15 @@ wl_cfg80211_del_station( return -EFAULT; } } + + /* EOF:FIX STA arrived just right now, do not delete station! */ + if (conn_info->flags_sta & BIT(WLC_STA_FLAG_PENDING_AUTH)) { + return 0; + } + err = wl_ext_in4way_sync(ndev, AP_WAIT_STA_RECONNECT, WL_EXT_STATUS_DELETE_STA, (void *)mac_addr); - if (err) { + if (err) { /* do nothing */ return 0; } @@ -11650,8 +11687,10 @@ wl_cfg80211_del_station( #endif /* WL_WPS_SYNC */ { scb_val.val = DOT11_RC_DEAUTH_LEAVING; + WL_MSG(dev->name, "Disconnect STA : %pM scb_val.val %d\n", mac_addr, scb_val.val); + /* need to guarantee EAP-Failure send out before deauth */ dhd_wait_pend8021x(dev); err = wldev_ioctl_set(dev, WLC_SCB_DEAUTHENTICATE_FOR_REASON, &scb_val, @@ -11672,6 +11711,103 @@ wl_cfg80211_del_station( return 0; } +/* EOF:DEBUG for wl_cfg80211_change_station() */ +static void wl_cfg80211_dbg_flags_mask( + struct net_device *ndev, + struct station_parameters *params, + const u8 *mac) +{ + if (params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHORIZED)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_AUTHORIZED\n", mac); + } + if (params->sta_flags_mask & BIT(NL80211_STA_FLAG_SHORT_PREAMBLE)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_SHORT_PREAMBLE\n", mac); + } + if (params->sta_flags_mask & BIT(NL80211_STA_FLAG_WME)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_WME\n", mac); + } + if (params->sta_flags_mask & BIT(NL80211_STA_FLAG_MFP)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_MFP\n", mac); + } + if (params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHENTICATED)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_AUTHENTICATED\n", mac); + } + if (params->sta_flags_mask & BIT(NL80211_STA_FLAG_TDLS_PEER)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_TDLS_PEER\n", mac); + } + if (params->sta_flags_mask & BIT(NL80211_STA_FLAG_ASSOCIATED)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_ASSOCIATED\n", mac); + } +} + +/* EOF:DEBUG for wl_cfg80211_change_station() */ +static void wl_cfg80211_dbg_flags_set( + struct net_device *ndev, + struct station_parameters *params, + const u8 *mac) +{ + if (params->sta_flags_set & BIT(NL80211_STA_FLAG_AUTHORIZED)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_AUTHORIZED\n", mac); + } + if (params->sta_flags_set & BIT(NL80211_STA_FLAG_SHORT_PREAMBLE)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_SHORT_PREAMBLE\n", mac); + } + if (params->sta_flags_set & BIT(NL80211_STA_FLAG_WME)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_WME\n", mac); + } + if (params->sta_flags_set & BIT(NL80211_STA_FLAG_MFP)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_MFP\n", mac); + } + if (params->sta_flags_set & BIT(NL80211_STA_FLAG_AUTHENTICATED)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_AUTHENTICATED\n", mac); + } + if (params->sta_flags_set & BIT(NL80211_STA_FLAG_TDLS_PEER)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_TDLS_PEER\n", mac); + } + if (params->sta_flags_set & BIT(NL80211_STA_FLAG_ASSOCIATED)) { + WL_MSG(ndev->name, "%pM NL80211_STA_FLAG_ASSOCIATED\n", mac); + } +} + +/* EOF:FIX */ +static s32 +wl_cfg80211_authorize(struct net_device *ndev, + struct wl_connect_info *conn_info, + const u8 *mac) +{ + int err = BCME_OK; + WL_MSG(ndev->name, "WLC_SCB_AUTHORIZE %pM\n", mac); + err = wldev_ioctl_set(ndev, WLC_SCB_AUTHORIZE, mac, ETHER_ADDR_LEN); + if (unlikely(err)) { + WL_ERR_MSG("WLC_SCB_AUTHORIZE error (%d)\n", err); + return err; + } + conn_info->flags_sta |= BIT(WLC_STA_FLAG_AUTHORIZED); + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_DEAUTHORIZED); + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_PENDING_AUTH); + return BCME_OK; +} + +/* EOF:FIX */ +static s32 +wl_cfg80211_deauthorize(struct net_device *ndev, + struct wl_connect_info *conn_info, + const u8 *mac) +{ + int err = BCME_OK; + WL_MSG(ndev->name, "WLC_SCB_DEAUTHORIZE %pM\n", mac); + err = wldev_ioctl_set(ndev, WLC_SCB_DEAUTHORIZE, mac, ETHER_ADDR_LEN); + if (unlikely(err)) { + WL_ERR_MSG("WLC_SCB_DEAUTHORIZE error (%d)\n", err); + return err; + } + conn_info->flags_sta |= BIT(WLC_STA_FLAG_DEAUTHORIZED); + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_AUTHORIZED); + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_PENDING_AUTH); + return BCME_OK; +} + +/* EOF:FIX */ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)) static s32 wl_cfg80211_change_station( @@ -11691,50 +11827,110 @@ wl_cfg80211_change_station( int err = BCME_OK; struct bcm_cfg80211 *cfg = wiphy_priv(wiphy); struct net_device *ndev = ndev_to_wlc_ndev(dev, cfg); - - WL_DBG(("SCB_AUTHORIZE mac_addr:"MACDBG" sta_flags_mask:0x%x " - "sta_flags_set:0x%x iface:%s \n", MAC2STRDBG(mac), - params->sta_flags_mask, params->sta_flags_set, ndev->name)); + struct wl_connect_info *conn_info = wl_to_conn(cfg); if ((wl_get_mode_by_netdev(cfg, dev) == WL_MODE_BSS) && !(wl_get_drv_status(cfg, CONNECTED, dev))) { /* Return error indicating not in connected state */ - WL_ERR(("Ignore SCB_AUTHORIZE/DEAUTHORIZE in non connected state\n")); + WL_ERR(("OOPS! WL device not connected yet, What's wrong!\n")); return -ENOTSUPP; } - /* Processing only authorize/de-authorize flag for now */ - if (!(params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHORIZED))) { - WL_ERR(("WLC_SCB_AUTHORIZE sta_flags_mask not set \n")); + /* this should never be, however don't trust the devs */ + if (!conn_info) { + WL_ERR(("OOPS! WL connect info is NULL, What's wrong!\n")); return -ENOTSUPP; } - if (!(params->sta_flags_set & BIT(NL80211_STA_FLAG_AUTHORIZED))) { - err = wldev_ioctl_set(ndev, WLC_SCB_DEAUTHORIZE, mac, ETH_ALEN); - if (unlikely(err)) { - WL_ERR(("WLC_SCB_DEAUTHORIZE error (%d)\n", err)); - } else { - WL_INFORM_MEM(("[%s] WLC_SCB_DEAUTHORIZE " MACDBG "\n", - ndev->name, MAC2STRDBG(mac))); + WL_INFO_MSG("[%s] %pM flags_set=0x%x flags_mask=0x%x flags_sta=0x%x\n", + ndev->name, mac, params->sta_flags_set, + params->sta_flags_mask, conn_info->flags_sta); + + /* Income sta_flags_XXX in following stage order (AP/GO): + 1: set = 0 && mask = NL80211_STA_FLAG_SHORT_PREAMBLE + + 1: set = 0 && mask = NL80211_STA_FLAG_WME +> once + 1: set = 0 && mask = NL80211_STA_FLAG_MFP + + 2: set = 0 -- mask = NL80211_STA_FLAG_AUTHORIZED (N times) + 3: set = same mask = NL80211_STA_FLAG_AUTHORIZED (once) + */ + if (wl_dbg_level & WL_DBG_TRACE) { + if (params->sta_flags_mask != 0) { + wl_cfg80211_dbg_flags_mask(ndev, params, mac); } + if (params->sta_flags_set != 0) { + wl_cfg80211_dbg_flags_set(ndev, params, mac); + } + } + + /* Sane check current context for valid AP client */ + err = cfg80211_check_station_change(wiphy, params, CFG80211_STA_AP_CLIENT); + if (err) { + WL_ERR_MSG("[%s] OOPS! Not a STA_AP_CLIENT: %pM error #%d\n", + ndev->name, mac, err); return err; + } + + /* Tag in this first stage as 'authorization is pending' to prevent + * unmotivated disconnects in connecting/auth phase by crude BCMDHD + * code. i.e. status 'better AP' or 'leaved' -- so, what!? + * The first stage here is just right now fresh arrived STA client. + * The bit will be tested in function wl_cfg80211_del_station() to + * prevent a disconnect. */ + if ((params->sta_flags_mask & BIT(NL80211_STA_FLAG_SHORT_PREAMBLE)) || + (params->sta_flags_mask & BIT(NL80211_STA_FLAG_TDLS_PEER)) || + (params->sta_flags_mask & BIT(NL80211_STA_FLAG_ASSOCIATED))) + { + conn_info->flags_sta |= BIT(WLC_STA_FLAG_PENDING_AUTH); + goto finish; /* further actions not needed */ } - err = wldev_ioctl_set(ndev, WLC_SCB_AUTHORIZE, mac, ETH_ALEN); - if (unlikely(err)) { - WL_ERR(("WLC_SCB_AUTHORIZE error (%d)\n", err)); - } else { - WL_INFORM_MEM(("[%s] WLC_SCB_AUTHORIZE " MACDBG "\n", - ndev->name, MAC2STRDBG(mac))); + /* Waiting for flags_mask NL80211_STA_FLAG_AUTHORIZED */ + err = cfg80211_check_station_change(wiphy, params, CFG80211_STA_AP_STA); + if (err) { + return err; + } + + /* Update my state to deauthorized. This stage can be reach multiple + * times which contains the flag NL80211_STA_FLAG_AUTHORIZED in the + * sta_flags_mask field, but without valid value in the field + * sta_flags_set. + * Expected is sta_flags_mask=0x00 and sta_flags_set contains bit 0x02. + * The conn_info->flags_sta will be set to 0 on WLC_E_DISASSOC(_IND) + * event in the function wl_notify_connect_status_XX() for AP/GO and + * MESH mode to unlock this stage once. */ + if ((params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHORIZED)) && + !(params->sta_flags_set & BIT(NL80211_STA_FLAG_AUTHORIZED)) && + !(conn_info->flags_sta & BIT(WLC_STA_FLAG_DEAUTHORIZED))) + { + err = wl_cfg80211_deauthorize(ndev, conn_info, mac); + if (unlikely(err)) { + return err; + } + goto finish; + } + + /* Update my state to authorized. This is the last stage + * which contains the flag NL80211_STA_FLAG_AUTHORIZED in + * the sta_flags_mask and sta_flags_set fields. The debug + * output should show IOVAR wsec_key etc. setup before. */ + if ((params->sta_flags_mask & BIT(NL80211_STA_FLAG_AUTHORIZED)) && + (params->sta_flags_set & BIT(NL80211_STA_FLAG_AUTHORIZED))) { + err = wl_cfg80211_authorize(ndev, conn_info, mac); + if (unlikely(err)) { + return err; + } #ifdef WL_WPS_SYNC wl_wps_session_update(ndev, WPS_STATE_AUTHORIZE, mac); #endif /* WL_WPS_SYNC */ } + +finish: #ifdef DHD_LOSSLESS_ROAMING + /* always reset roam timeout */ wl_del_roam_timeout(cfg); #endif // endif - return err; + return BCME_OK; } #endif /* WL_SUPPORT_BACKPORTED_KPATCHES || KERNEL_VER >= KERNEL_VERSION(3, 2, 0)) */ @@ -13542,9 +13738,9 @@ static bool wl_is_linkdown(struct bcm_cfg80211 *cfg, const wl_event_msg_t *e) u16 flags = ntoh16(e->flags); if (event == WLC_E_DEAUTH_IND || - event == WLC_E_DISASSOC_IND || - event == WLC_E_DISASSOC || - event == WLC_E_DEAUTH) { + event == WLC_E_DISASSOC_IND || + event == WLC_E_DISASSOC || + event == WLC_E_DEAUTH) { WL_ERR(("Link down Reason : %s\n", bcmevent_get_name(event))); return true; } else if (event == WLC_E_LINK) { @@ -13663,15 +13859,21 @@ static s32 wl_get_auth_assoc_status(struct bcm_cfg80211 *cfg, struct net_device *ndev, const wl_event_msg_t *e, void *data) { + s32 err = BCME_OK; u32 reason = ntoh32(e->reason); u32 event = ntoh32(e->event_type); #ifdef WL_SAE uint auth_type = ntoh32(e->auth_type); #endif /* WL_SAE */ - struct wl_security *sec = wl_read_prof(cfg, ndev, WL_PROF_SEC); - WL_DBG(("event type : %d, reason : %d\n", event, reason)); + struct wl_security *sec; + + if ((sec = wl_read_prof(cfg, ndev, WL_PROF_SEC))) { + + WL_MSG_RLMT(ndev->name, &e->addr, ETHER_ADDR_LEN, + "event %s(%d) auth_type=%d wpa_ver=%d wpa_auth=%d auth_assoc_res_status=%d\n", + bcmevent_get_name(event), event, sec->auth_type, sec->wpa_versions, + sec->wpa_auth, sec->auth_assoc_res_status); - if (sec) { switch (event) { case WLC_E_ASSOC: case WLC_E_AUTH: @@ -13680,7 +13882,13 @@ wl_get_auth_assoc_status(struct bcm_cfg80211 *cfg, struct net_device *ndev, #ifdef WL_SAE if ((event == WLC_E_AUTH || event == WLC_E_AUTH_IND) && auth_type == DOT11_SAE) { - wl_bss_handle_sae_auth(cfg, ndev, e, data); + if ((err = wl_bss_handle_sae_auth(cfg, ndev, e, data))) { + WL_ERR(("(BSS) SAE authenticator failed.\n")); + sec->auth_assoc_res_status = WLC_E_STATUS_FAIL; + return err; + } else { + sec->auth_assoc_res_status = WLC_E_STATUS_SUCCESS; + } } #endif /* WL_SAE */ break; @@ -13688,9 +13896,9 @@ wl_get_auth_assoc_status(struct bcm_cfg80211 *cfg, struct net_device *ndev, break; } } else { - WL_ERR(("sec is NULL\n")); + WL_ERR(("sec object is NULL\n")); } - return 0; + return err; } #ifdef WL_CLIENT_SAE @@ -13807,6 +14015,8 @@ wl_notify_connect_status_ap(struct bcm_cfg80211 *cfg, struct net_device *ndev, u32 reason = ntoh32(e->reason); u32 len = ntoh32(e->datalen); u32 status = ntoh32(e->status); + /* EOF:FIX */ + struct wl_connect_info *conn_info = wl_to_conn(cfg); #if !defined(WL_CFG80211_STA_EVENT) && !defined(WL_COMPAT_WIRELESS) && \ (LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)) @@ -13818,7 +14028,7 @@ wl_notify_connect_status_ap(struct bcm_cfg80211 *cfg, struct net_device *ndev, u8 *body = NULL; u16 fc = 0; u32 body_len = 0; - + struct ieee80211_supported_band *band; struct ether_addr da; struct ether_addr bssid; @@ -13829,13 +14039,6 @@ wl_notify_connect_status_ap(struct bcm_cfg80211 *cfg, struct net_device *ndev, struct station_info sinfo; #endif /* (LINUX_VERSION < VERSION(3,2,0)) && !WL_CFG80211_STA_EVENT && !WL_COMPAT_WIRELESS */ - WL_INFORM_MEM(("[%s] Mode AP/GO. Event:%d status:%d reason:%d\n", - ndev->name, event, ntoh32(e->status), reason)); - - if (event == WLC_E_AUTH_IND) { - wl_get_auth_assoc_status(cfg, ndev, e, data); - return 0; - } /* if link down, bsscfg is disabled. */ if (event == WLC_E_LINK && reason == WLC_E_LINK_BSSCFG_DIS && wl_get_p2p_status(cfg, IF_DELETING) && (ndev != bcmcfg_to_prmry_ndev(cfg))) { @@ -13863,10 +14066,33 @@ wl_notify_connect_status_ap(struct bcm_cfg80211 *cfg, struct net_device *ndev, } } - if (event == WLC_E_DISASSOC_IND || event == WLC_E_DEAUTH_IND || event == WLC_E_DEAUTH) { + if (event == WLC_E_DISASSOC_IND || event == WLC_E_DEAUTH_IND || + event == WLC_E_DEAUTH) { + WL_MSG_RLMT(ndev->name, &e->addr, ETHER_ADDR_LEN, + "Mode AP/GO. event %s(%d) %pM status=%d reason=%d\n", + bcmevent_get_name(event), event, &e->addr, + ntoh32(e->status), reason); + } + else if (event == WLC_E_ASSOC_IND || event == WLC_E_REASSOC_IND || + event == WLC_E_AUTH_IND) { WL_MSG_RLMT(ndev->name, &e->addr, ETHER_ADDR_LEN, - "event %s(%d) status %d reason %d\n", - bcmevent_get_name(event), event, ntoh32(e->status), reason); + "Mode AP/GO. event %s(%d) %pM status=%d reason=%d\n", + bcmevent_get_name(event), event, &e->addr, + ntoh32(e->status), reason); + } + + if (event == WLC_E_AUTH_IND) { + if (conn_info) { /* EOF:FIX */ + /* prevent deauthorized before authorized in station_change + * callback op function */ + conn_info->flags_sta |= BIT(WLC_STA_FLAG_DEAUTHORIZED); + /* Assume the station isn't authorized */ + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_AUTHORIZED); + conn_info->flags_sta |= BIT(WLC_STA_FLAG_PENDING_AUTH); + } + if (wl_get_auth_assoc_status(cfg, ndev, e, data)) { + return -EINVAL; + } } #if !defined(WL_CFG80211_STA_EVENT) && !defined(WL_COMPAT_WIRELESS) && \ @@ -13974,7 +14200,7 @@ wl_notify_connect_status_ap(struct bcm_cfg80211 *cfg, struct net_device *ndev, memset(&sinfo, 0, sizeof(struct station_info)); sinfo.filled = 0; if (((event == WLC_E_ASSOC_IND) || (event == WLC_E_REASSOC_IND)) && - reason == DOT11_SC_SUCCESS) { + (reason == DOT11_SC_SUCCESS)) { /* Linux ver >= 4.0 assoc_req_ies_len is used instead of * STATION_INFO_ASSOC_REQ_IES flag */ @@ -13987,19 +14213,42 @@ wl_notify_connect_status_ap(struct bcm_cfg80211 *cfg, struct net_device *ndev, } sinfo.assoc_req_ies = data; sinfo.assoc_req_ies_len = len; - WL_MSG(ndev->name, "new sta event for "MACDBG "\n", - MAC2STRDBG(e->addr.octet)); + + WL_MSG_RLMT(ndev->name, &e->addr, ETHER_ADDR_LEN, + "Mode AP/GO. New STA event %s(%d) %pM status=%d reason=%d\n", + bcmevent_get_name(event), event, &e->addr, ntoh32(e->status), reason); + + if (conn_info) { /* EOF:FIX */ + /* prevent deauthorized before authorized in station_change + * callback op function */ + conn_info->flags_sta |= BIT(WLC_STA_FLAG_DEAUTHORIZED); + /* Assume the station isn't authorized */ + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_AUTHORIZED); + conn_info->flags_sta |= BIT(WLC_STA_FLAG_PENDING_AUTH); + } + wl_ext_in4way_sync(ndev, AP_WAIT_STA_RECONNECT, WL_EXT_STATUS_STA_CONNECTED, (void *)&e->addr); cfg80211_new_sta(ndev, e->addr.octet, &sinfo, GFP_ATOMIC); #ifdef WL_WPS_SYNC wl_wps_session_update(ndev, WPS_STATE_LINKUP, e->addr.octet); #endif /* WL_WPS_SYNC */ - } else if ((event == WLC_E_DEAUTH_IND) || - ((event == WLC_E_DEAUTH) && (reason != DOT11_RC_RESERVED)) || - (event == WLC_E_DISASSOC_IND)) { + } + else if ((event == WLC_E_DEAUTH_IND) || + ((event == WLC_E_DEAUTH) && (reason != DOT11_RC_RESERVED)) || + (event == WLC_E_DISASSOC_IND)) { + WL_MSG_RLMT(ndev->name, &e->addr, ETHER_ADDR_LEN, - "del sta event for "MACDBG "\n", MAC2STRDBG(e->addr.octet)); + "Mode AP/GO. Delete STA event %s(%d) %pM status=%d reason=%d\n", + bcmevent_get_name(event), event, &e->addr, ntoh32(e->status), reason); + + if (conn_info) { /* EOF:FIX */ + /* trigger deauthorization in station_change callback op function */ + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_DEAUTHORIZED); + /* station is gone, remove pending flag */ + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_PENDING_AUTH); + } + wl_ext_in4way_sync(ndev, AP_WAIT_STA_RECONNECT, WL_EXT_STATUS_STA_DISCONNECTED, (void *)&e->addr); cfg80211_del_sta(ndev, e->addr.octet, GFP_ATOMIC); @@ -14010,7 +14259,16 @@ wl_notify_connect_status_ap(struct bcm_cfg80211 *cfg, struct net_device *ndev, #ifdef WL_CLIENT_SAE else if (event == WLC_E_AUTH) { WL_MSG_RLMT(ndev->name, &e->addr, ETHER_ADDR_LEN, - "add sta auth event for "MACDBG "\n", MAC2STRDBG(e->addr.octet)); + "SAE add sta auth event for %pM\n", &e->addr); + + if (conn_info) { /* EOF:FIX */ + /* prevent deauthorized before authorized in station_change + * callback op function */ + conn_info->flags_sta |= BIT(WLC_STA_FLAG_DEAUTHORIZED); + /* Assume the station isn't authorized */ + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_AUTHORIZED); + } + if (wl_get_mode_by_netdev(cfg, ndev) == WL_INVALID) { WL_ERR(("invalid mode\n")); return WL_INVALID; @@ -14317,7 +14575,7 @@ wl_notify_connect_status_ibss(struct bcm_cfg80211 *cfg, struct net_device *ndev, wl_update_prof(cfg, ndev, NULL, (const void *)&active, WL_PROF_ACT); } } else if ((event == WLC_E_LINK && !(flags & WLC_EVENT_MSG_LINK)) || - event == WLC_E_DEAUTH_IND || event == WLC_E_DISASSOC_IND) { + event == WLC_E_DEAUTH_IND || event == WLC_E_DISASSOC_IND) { wl_clr_drv_status(cfg, CONNECTED, ndev); wl_link_down(cfg); wl_init_prof(cfg, ndev); @@ -14350,6 +14608,7 @@ void wl_cfg80211_disassoc(struct net_device *ndev, uint32 reason) WL_ERR(("WLC_DISASSOC error %d\n", err)); } } + void wl_cfg80211_del_all_sta(struct net_device *ndev, uint32 reason) { struct net_device *dev; @@ -14419,8 +14678,7 @@ wl_cfg80211_handle_deauth_ind(struct bcm_cfg80211 *cfg, struct net_device *ndev, (const uint8*)&e->addr, ETHER_ADDR_LEN); memset_s(&pmksa, sizeof(pmksa), 0, sizeof(pmksa)); pmksa.bssid = bssid; - WL_INFORM_MEM(("Deleting the PMKSA for SAE AP "MACDBG, - MAC2STRDBG(e->addr.octet))); + WL_INFORM_MEM(("Deleting the PMKSA for SAE AP %pM", &e->addr)); wl_cfg80211_del_pmksa(cfg->wdev->wiphy, ndev, &pmksa); } done: @@ -14434,7 +14692,9 @@ wl_cache_assoc_resp_ies(struct bcm_cfg80211 *cfg, struct net_device *ndev, { struct wl_connect_info *conn_info = wl_to_conn(cfg); u32 datalen = ntoh32(e->datalen); +#ifdef DHD_DEBUG u32 event_type = ntoh32(e->event_type); +#endif if (datalen > VNDR_IE_MIN_LEN && datalen < VNDR_IE_MAX_LEN && @@ -14462,6 +14722,8 @@ wl_notify_connect_status_mesh(struct bcm_cfg80211 *cfg, struct net_device *ndev, u32 reason = ntoh32(e->reason); u32 len = ntoh32(e->datalen); u32 status = ntoh32(e->status); + /* EOF:FIX */ + struct wl_connect_info *conn_info = wl_to_conn(cfg); #if !defined(WL_CFG80211_STA_EVENT) && !defined(WL_COMPAT_WIRELESS) && \ (LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)) @@ -14624,14 +14886,35 @@ wl_notify_connect_status_mesh(struct bcm_cfg80211 *cfg, struct net_device *ndev, } sinfo.assoc_req_ies = data; sinfo.assoc_req_ies_len = len; - WL_MSG(ndev->name, "new sta event for "MACDBG "\n", - MAC2STRDBG(e->addr.octet)); + + WL_MSG(ndev->name, "Mode MESH new STA event %s(%d) for %pM " + "status=%d reason=%d\n", + bcmevent_get_name(event), event, &e->addr), + ntoh32(e->status), reason); + + if (conn_info) { /* EOF:FIX */ + /* prevent deauthorized before authorized in station_change + * callback op function */ + conn_info->flags_sta |= BIT(WLC_STA_FLAG_DEAUTHORIZED); + /* Assume the station isn't authorized */ + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_AUTHORIZED); + } + cfg80211_new_sta(ndev, e->addr.octet, &sinfo, GFP_ATOMIC); } else if ((event == WLC_E_DEAUTH_IND) || ((event == WLC_E_DEAUTH) && (reason != DOT11_RC_RESERVED)) || (event == WLC_E_DISASSOC_IND)) { - WL_MSG(ndev->name, "del sta event for "MACDBG "\n", - MAC2STRDBG(e->addr.octet)); + + WL_MSG(ndev->name, "Mode MESH delete STA event %s(%d) for " + "%pM status=%d reason=%d\n", + bcmevent_get_name(event), event, &e->addr), + ntoh32(e->status), reason); + + if (conn_info) { /* EOF:FIX */ + /* trigger deauthorization in station_change callback op function */ + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_DEAUTHORIZED); + } + cfg80211_del_sta(ndev, e->addr.octet, GFP_ATOMIC); } #endif /* LINUX_VERSION < VERSION(3,2,0) && !WL_CFG80211_STA_EVENT && !WL_COMPAT_WIRELESS */ @@ -15879,9 +16162,9 @@ wl_bss_roaming_done(struct bcm_cfg80211 *cfg, struct net_device *ndev, #endif /* CUSTOM_LONG_RETRY_LIMIT */ DHD_STATLOG_CTRL(dhdp, ST(REASSOC_INFORM), dhd_net2idx(dhdp->info, ndev), 0); - WL_ERR(("Report roam event to upper layer. " MACDBG " (ch:%d)\n", - MAC2STRDBG((const u8*)(&e->addr)), *channel)); - wl_ext_in4way_sync(ndev, 0, WL_EXT_STATUS_CONNECTED, NULL); + WL_TRACE(("Report roam event to upper layer. %pM (ch:%d)\n", + &e->addr, *channel)); + wl_ext_in4way_sync(ndev, 0, WL_EXT_STATUS_CONNECTED, (void*) &e->addr); #if (defined(CONFIG_ARCH_MSM) && defined(CFG80211_ROAMED_API_UNIFIED)) || \ (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)) || defined(WL_FILS_ROAM_OFFLD) || \ @@ -16075,7 +16358,9 @@ wl_bss_connect_done(struct bcm_cfg80211 *cfg, struct net_device *ndev, #endif /* WL_FILS */ u8 *curbssid = wl_read_prof(cfg, ndev, WL_PROF_BSSID); +#ifdef DHD_DEBUG u32 event_type = ntoh32(e->event_type); +#endif struct cfg80211_bss *bss = NULL; dhd_pub_t *dhdp; dhdp = (dhd_pub_t *)(cfg->pub); @@ -16157,17 +16442,19 @@ wl_bss_connect_done(struct bcm_cfg80211 *cfg, struct net_device *ndev, * wdev->current_bss ptr */ WL_ERR(("BSS entry not found. Indicate assoc event failure\n")); - completed = false; sec->auth_assoc_res_status = WLAN_STATUS_UNSPECIFIED_FAILURE; + completed = false; } if (completed) { WL_MSG(ndev->name, "Report connect result - connection succeeded\n"); - wl_ext_in4way_sync(ndev, 0, WL_EXT_STATUS_CONNECTED, NULL); + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_DEAUTHORIZED); + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_AUTHORIZED); + wl_ext_in4way_sync(ndev, 0, WL_EXT_STATUS_CONNECTED, &bss); wl_ext_iapsta_enable_master_if(ndev, TRUE); } else { WL_MSG(ndev->name, "Report connect result - connection failed\n"); wl_ext_in4way_sync(ndev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, - WL_EXT_STATUS_DISCONNECTED, NULL); + WL_EXT_STATUS_DISCONNECTED, &bss); } #ifdef WL_FILS if ((sec->auth_type == DOT11_FILS_SKEY_PFS)||(sec->auth_type == DOT11_FILS_SKEY)) { @@ -16247,8 +16534,8 @@ wl_notify_mic_status(struct bcm_cfg80211 *cfg, bcm_struct_cfgdev *cfgdev, ndev = cfgdev_to_wlc_ndev(cfgdev, cfg); - WL_INFORM_MEM(("[%s] mic fail event - " MACDBG " \n", - ndev->name, MAC2STRDBG(e->addr.octet))); + WL_INFORM_MEM(("[%s] mic fail event - %pM \n", ndev->name, &e->addr)); + mutex_lock(&cfg->usr_sync); if (flags & WLC_EVENT_MSG_GROUP) key_type = NL80211_KEYTYPE_GROUP; @@ -17275,7 +17562,7 @@ wl_cfg80211_netdev_notifier_call(struct notifier_block * nb, wdev = ndev_to_wdev(dev); if (!wdev) { - WL_ERR(("wdev null. Do nothing\n")); + WL_DBG(("wdev null. Do nothing\n")); return NOTIFY_DONE; } @@ -17785,8 +18072,8 @@ static s32 wl_cfg80211_attach_post(struct net_device *ndev) /* Update MAC addr for p2p0 interface here. */ memcpy(cfg->p2p_net->dev_addr, ndev->dev_addr, ETH_ALEN); cfg->p2p_net->dev_addr[0] |= 0x02; - WL_MSG(cfg->p2p_net->name, "p2p_dev_addr="MACDBG "\n", - MAC2STRDBG(cfg->p2p_net->dev_addr)); + WL_MSG(cfg->p2p_net->name, "p2p_dev_addr=%pM\n", + cfg->p2p_net->dev_addr); } else { WL_ERR(("p2p_net not yet populated." " Couldn't update the MAC Address for p2p0 \n")); @@ -18043,15 +18330,17 @@ static void wl_print_event_data(struct bcm_cfg80211 *cfg, uint32 event_type, const wl_event_msg_t *e) { s32 status = ntoh32(e->status); +#ifdef DHD_DEBUG s32 reason = ntoh32(e->reason); s32 ifidx = ntoh32(e->ifidx); s32 bssidx = ntoh32(e->bsscfgidx); +#endif switch (event_type) { case WLC_E_ESCAN_RESULT: if ((status == WLC_E_STATUS_SUCCESS) || (status == WLC_E_STATUS_ABORT)) { - WL_INFORM_MEM(("event_type (%d), ifidx: %d" + WL_DBG(("event_type (%d), ifidx: %d" " bssidx: %d scan_type:%d\n", event_type, ifidx, bssidx, status)); } @@ -18061,7 +18350,7 @@ static void wl_print_event_data(struct bcm_cfg80211 *cfg, case WLC_E_DISASSOC_IND: case WLC_E_DEAUTH: case WLC_E_DEAUTH_IND: - WL_INFORM_MEM(("event_type (%d), ifidx: %d bssidx: %d" + WL_DBG(("event_type (%d), ifidx: %d bssidx: %d" " status:%d reason:%d\n", event_type, ifidx, bssidx, status, reason)); break; @@ -18872,11 +19161,12 @@ static s32 __wl_cfg80211_up(struct bcm_cfg80211 *cfg) if (!dhd_download_fw_on_driverload) { err = wl_create_event_handler(cfg); if (err) { - WL_ERR(("wl_create_event_handler failed\n")); + WL_ERR(("wl_create_event_handler (!dhd_download_fw_on_driverload) failed\n")); return err; } wl_init_event_handler(cfg); } + /* Reserve 0x8000 toggle bit for P2P GO/GC */ cfg->vif_macaddr_mask = 0x8000; @@ -19220,6 +19510,7 @@ s32 wl_cfg80211_up(struct net_device *net) } ioctl_version = val; WL_TRACE(("WLC_GET_VERSION=%d\n", ioctl_version)); + wl_ext_in4way_sync(net, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, WL_EXT_STATUS_DISCONNECTED, NULL); @@ -19615,6 +19906,8 @@ static void wl_link_down(struct bcm_cfg80211 *cfg) if (conn_info) { conn_info->req_ie_len = 0; conn_info->resp_ie_len = 0; + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_DEAUTHORIZED); + conn_info->flags_sta &= ~BIT(WLC_STA_FLAG_AUTHORIZED); } } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.h index 1a568cd880f64..dc4c812656726 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfg80211.h @@ -44,6 +44,7 @@ #include #include #include +#include #define WL_CFG_DRV_LOCK(lock, flags) (flags) = osl_spin_lock(lock) #define WL_CFG_DRV_UNLOCK(lock, flags) osl_spin_unlock((lock), (flags)) @@ -120,14 +121,6 @@ struct wl_ibss; #define htodchanspec(i) (i) #define dtohchanspec(i) (i) -#define WL_DBG_NONE 0 -#define WL_DBG_P2P_ACTION (1 << 5) -#define WL_DBG_TRACE (1 << 4) -#define WL_DBG_SCAN (1 << 3) -#define WL_DBG_DBG (1 << 2) -#define WL_DBG_INFO (1 << 1) -#define WL_DBG_ERR (1 << 0) - #ifndef WAIT_FOR_DISCONNECT_MAX #define WAIT_FOR_DISCONNECT_MAX 10 #endif /* WAIT_FOR_DISCONNECT_MAX */ @@ -163,159 +156,6 @@ extern char *dhd_log_dump_get_timestamp(void); cfg80211_disconnected(dev, reason, ie, len, gfp); #endif /* (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0)) */ -/* 0 invalidates all debug messages. default is 1 */ -#define WL_DBG_LEVEL 0xFF - -#define CFG80211_INFO_TEXT DHD_LOG_PREFIXS "CFG80211-INFO) " -#define CFG80211_ERROR_TEXT DHD_LOG_PREFIXS "CFG80211-ERROR) " - -#if defined(DHD_DEBUG) -#ifdef DHD_LOG_DUMP -#define WL_ERR_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ - DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ - DHD_LOG_DUMP_WRITE(x, ## args); \ - } \ -} while (0) -#define WL_ERR(x) WL_ERR_MSG x -#define WL_ERR_KERN_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ - } \ -} while (0) -#define WL_ERR_KERN(x) WL_ERR_KERN_MSG x -#define WL_ERR_MEM_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_ERR) { \ - DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ - DHD_LOG_DUMP_WRITE(x, ## args); \ - } \ -} while (0) -#define WL_ERR_MEM(x) WL_ERR_MEM_MSG x -#define WL_INFORM_MEM_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_INFO) { \ - printk(KERN_INFO CFG80211_INFO_TEXT "%s : " x, __func__, ## args); \ - DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ - DHD_LOG_DUMP_WRITE(x, ## args); \ - } \ -} while (0) -#define WL_INFORM_MEM(x) WL_INFORM_MEM_MSG x -#define WL_ERR_EX(args) \ -do { \ - if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ - DHD_LOG_DUMP_WRITE_EX("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ - DHD_LOG_DUMP_WRITE_EX args; \ - } \ -} while (0) -#define WL_MEM(args) \ -do { \ - DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ - DHD_LOG_DUMP_WRITE args; \ -} while (0) -#else -#define WL_ERR_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ - } \ -} while (0) -#define WL_ERR(x) WL_ERR_MSG x -#define WL_ERR_KERN(args) WL_ERR(args) -#define WL_ERR_MEM(args) WL_ERR(args) -#define WL_INFORM_MEM(args) WL_INFORM(args) -#define WL_ERR_EX(args) WL_ERR(args) -#define WL_MEM(args) WL_DBG(args) -#endif /* DHD_LOG_DUMP */ -#else /* defined(DHD_DEBUG) */ -#define WL_ERR_MSG(x, args...) \ -do { \ - if ((wl_dbg_level & WL_DBG_ERR) && net_ratelimit()) { \ - printk(KERN_INFO CFG80211_ERROR_TEXT "%s : " x, __func__, ## args); \ - } \ -} while (0) -#define WL_ERR(x) WL_ERR_MSG x -#define WL_ERR_KERN(args) WL_ERR(args) -#define WL_ERR_MEM(args) WL_ERR(args) -#define WL_INFORM_MEM(args) WL_INFORM(args) -#define WL_ERR_EX(args) WL_ERR(args) -#define WL_MEM(args) WL_DBG(args) -#endif /* defined(DHD_DEBUG) */ - -#define WL_PRINT_RATE_LIMIT_PERIOD 4000000000u /* 4s in units of ns */ -#define WL_ERR_RLMT(args) \ -do { \ - if (wl_dbg_level & WL_DBG_ERR) { \ - static uint64 __err_ts = 0; \ - static uint32 __err_cnt = 0; \ - uint64 __cur_ts = 0; \ - __cur_ts = local_clock(); \ - if (__err_ts == 0 || (__cur_ts > __err_ts && \ - (__cur_ts - __err_ts > WL_PRINT_RATE_LIMIT_PERIOD))) { \ - __err_ts = __cur_ts; \ - WL_ERR(args); \ - WL_ERR(("[Repeats %u times]\n", __err_cnt)); \ - __err_cnt = 0; \ - } else { \ - ++__err_cnt; \ - } \ - } \ -} while (0) - -#ifdef WL_INFORM -#undef WL_INFORM -#endif // endif - -#define WL_INFORM_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_INFO) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFG80211-INFO) %s : " x, __func__, ## args); \ - } \ -} while (0) -#define WL_INFORM(x) WL_INFORM_MSG x - -#ifdef WL_SCAN -#undef WL_SCAN -#endif // endif -#define WL_SCAN_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_SCAN) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFG80211-SCAN) %s :" x, __func__, ## args); \ - } \ -} while (0) -#define WL_SCAN(x) WL_SCAN_MSG x -#ifdef WL_TRACE -#undef WL_TRACE -#endif // endif -#define WL_TRACE_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_TRACE) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFG80211-TRACE) %s :" x, __func__, ## args); \ - } \ -} while (0) -#define WL_TRACE(x) WL_TRACE_MSG x -#ifdef WL_TRACE_HW4 -#undef WL_TRACE_HW4 -#endif // endif -#define WL_TRACE_HW4 WL_TRACE -#if (WL_DBG_LEVEL > 0) -#define WL_DBG_MSG(x, args...) \ -do { \ - if (wl_dbg_level & WL_DBG_DBG) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFG80211-DEBUG) %s :" x, __func__, ## args); \ - } \ -} while (0) -#define WL_DBG(x) WL_DBG_MSG x -#else /* !(WL_DBG_LEVEL > 0) */ -#define WL_DBG(args) -#endif /* (WL_DBG_LEVEL > 0) */ -#define WL_PNO(x) -#define WL_SD(x) - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0)) #define ieee80211_band nl80211_band #define IEEE80211_BAND_2GHZ NL80211_BAND_2GHZ @@ -813,6 +653,17 @@ typedef enum wl_bcnrecv_attr_type { #define CU_ATTR_HDR_LEN 30 #endif /* WL_CHAN_UTIL */ +/* EOF:FIX */ +/* Flags will be used in field 'struct wl_connect_info.flags_sta' + * to manage WLC_E_DEAUTH / WLC_E_DEAUTH_IND events in station + * change op function in file wl_cfg80211.c */ +typedef enum station_auth_flags { + __WLC_STA_FLAG_INVALID__ = 0, + WLC_STA_FLAG_AUTHORIZED = 1, /* STA has been authorized */ + WLC_STA_FLAG_DEAUTHORIZED = 2, /* STA has been deauthorized */ + WLC_STA_FLAG_PENDING_AUTH = 3, /* STA has been connected */ +} station_auth_flags_t; + /* association inform */ #define MAX_REQ_LINE 1024u struct wl_connect_info { @@ -820,9 +671,13 @@ struct wl_connect_info { u32 req_ie_len; u8 resp_ie[MAX_REQ_LINE]; u32 resp_ie_len; + /* EOF:FIX */ + /* used to manage auth/deauth state + * during station_change op event */ + u32 flags_sta; }; -#define WL_MAX_FILS_KEY_LEN 64 +#define WL_MAX_FILS_KEY_LEN 64 struct wl_fils_info { u8 fils_kek[WL_MAX_FILS_KEY_LEN]; u32 fils_kek_len; @@ -1387,6 +1242,7 @@ struct bcm_cfg80211 { int best_2g_ch; int best_5g_ch; }; + #define WL_STATIC_IFIDX (DHD_MAX_IFS + DHD_MAX_STATIC_IFS - 1) enum static_ndev_states { NDEV_STATE_NONE, @@ -1446,14 +1302,18 @@ wl_probe_wdev_all(struct bcm_cfg80211 *cfg) { struct net_info *_net_info, *next; unsigned long int flags; +#ifdef DHD_DEBUG /* stupid honks remove this ifdef ;)*/ int idx = 0; +#endif WL_CFG_NET_LIST_SYNC_LOCK(&cfg->net_list_sync, flags); GCC_DIAGNOSTIC_PUSH_SUPPRESS_CAST(); BCM_LIST_FOR_EACH_ENTRY_SAFE(_net_info, next, &cfg->net_list, list) { GCC_DIAGNOSTIC_POP(); +#ifdef DHD_DEBUG /* stupid honks remove this ifdef ;)*/ WL_INFORM_MEM(("wl_probe_wdev_all: net_list[%d] bssidx: %d\n", idx++, _net_info->bssidx)); +#endif } WL_CFG_NET_LIST_SYNC_UNLOCK(&cfg->net_list_sync, flags); return; diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.c index 7df937185afef..06db3e27d937b 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.c @@ -1857,17 +1857,17 @@ wl_cfgp2p_supported(struct bcm_cfg80211 *cfg, struct net_device *ndev) &p2p_supported); if (ret < 0) { if (ret == BCME_UNSUPPORTED) { - CFGP2P_INFO(("p2p is unsupported\n")); + CFGP2P_INFO(("P2P is unsupported\n")); return 0; } else { - CFGP2P_ERR(("cfg p2p error %d\n", ret)); + CFGP2P_ERR(("P2P error %d\n", ret)); return ret; } } if (cfg->pub->conf->fw_type == FW_TYPE_MESH) p2p_supported = 0; if (p2p_supported == 1) { - CFGP2P_INFO(("p2p is supported\n")); + CFGP2P_INFO(("P2P is supported\n")); } else { CFGP2P_INFO(("p2p is unsupported\n")); p2p_supported = 0; diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.h index 58cc642a1a395..ec07cb32c56dc 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgp2p.h @@ -134,13 +134,13 @@ enum wl_cfgp2p_status { /* dword align allocation */ #define WLC_IOCTL_MAXLEN 8192 -#define CFGP2P_ERROR_TEXT DHD_LOG_PREFIXS "CFGP2P-ERROR) " +#define CFGP2P_ERROR_TEXT DHD_LOG_PREFIXS "WL-CFGP2P: " #ifdef DHD_LOG_DUMP #define CFGP2P_ERR_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFGP2P_ERROR_TEXT "%s : " x, __func__, ## args); \ + printk(KERN_ERR CFGP2P_ERROR_TEXT "%s: " x, __func__, ## args); \ DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ DHD_LOG_DUMP_WRITE(x, ## args); \ } \ @@ -149,7 +149,7 @@ enum wl_cfgp2p_status { #define CFGP2P_INFO_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_INFO) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFGP2P-INFO) %s : " x, __func__, ## args); \ + printk(KERN_INFO DHD_LOG_PREFIXS "%s: " x, __func__, ## args); \ DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ DHD_LOG_DUMP_WRITE(x, ## args); \ } \ @@ -158,7 +158,7 @@ enum wl_cfgp2p_status { #define CFGP2P_ACTION_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_P2P_ACTION) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFGP2P-ACTION) %s :" x, __func__, ## args); \ + printk(KERN_INFO DHD_LOG_PREFIXS "%s:" x, __func__, ## args); \ DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ DHD_LOG_DUMP_WRITE(x, ## args); \ } \ @@ -168,21 +168,21 @@ enum wl_cfgp2p_status { #define CFGP2P_ERR_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_ERR) { \ - printk(KERN_INFO CFGP2P_ERROR_TEXT "%s : " x, __func__, ## args); \ + printk(KERN_ERR CFGP2P_ERROR_TEXT "%s : " x, __func__, ## args); \ } \ } while (0) #define CFGP2P_ERR(x) CFGP2P_ERR_MSG x #define CFGP2P_INFO_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_INFO) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFGP2P-INFO) %s : " x, __func__, ## args); \ + printk(KERN_INFO DHD_LOG_PREFIXS "%s: " x, __func__, ## args); \ } \ } while (0) #define CFGP2P_INFO(x) CFGP2P_INFO_MSG x #define CFGP2P_ACTION_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_P2P_ACTION) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFGP2P-ACTION) %s :" x, __func__, ## args); \ + printk(KERN_INFO DHD_LOG_PREFIXS "%s:" x, __func__, ## args); \ } \ } while (0) #define CFGP2P_ACTION(x) CFGP2P_ACTION_MSG x @@ -191,7 +191,7 @@ enum wl_cfgp2p_status { #define CFGP2P_DBG_MSG(x, args...) \ do { \ if (wl_dbg_level & WL_DBG_DBG) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "CFGP2P-DEBUG) %s :" x, __func__, ## args); \ + printk(KERN_DEBUG DHD_LOG_PREFIXS "%s:" x, __func__, ## args); \ } \ } while (0) #define CFGP2P_DBG(x) CFGP2P_DBG_MSG x diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgvendor.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgvendor.c index 5c5fb37278fd4..1c76be8f49979 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgvendor.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_cfgvendor.c @@ -86,6 +86,10 @@ #endif // endif #include +#ifndef DHD_DEBUG +#undef DHD_LOG_DUMP +#endif + char* wl_get_kernel_timestamp(void) { @@ -1655,10 +1659,11 @@ wl_cfgvendor_rtt_set_config(struct wiphy *wiphy, struct wireless_dev *wdev, rtt_config_params_t rtt_param; rtt_target_info_t* rtt_target = NULL; const struct nlattr *iter, *iter1, *iter2; - int8 eabuf[ETHER_ADDR_STR_LEN]; - int8 chanbuf[CHANSPEC_STR_LEN]; struct bcm_cfg80211 *cfg = wiphy_priv(wiphy); rtt_capabilities_t capability; +#ifdef DHD_DEBUG + int8 chanbuf[CHANSPEC_STR_LEN]; +#endif bzero(&rtt_param, sizeof(rtt_param)); @@ -1831,16 +1836,18 @@ wl_cfgvendor_rtt_set_config(struct wiphy *wiphy, struct wireless_dev *wdev, err = -EINVAL; goto exit; } - WL_INFORM_MEM(("Target addr %s, Channel : %s for RTT \n", - bcm_ether_ntoa((const struct ether_addr *)&rtt_target->addr, - eabuf), - wf_chspec_ntoa(rtt_target->chanspec, chanbuf))); +#ifdef DHD_DEBUG + WL_INFORM_MEM(("Target addr %pM, Channel : %s for RTT \n", + &rtt_target->addr, wf_chspec_ntoa(rtt_target->chanspec, chanbuf))); +#endif rtt_target++; } break; } } + WL_DBG(("leave :target_cnt : %d\n", rtt_param.rtt_target_cnt)); + if (dhd_dev_rtt_set_cfg(bcmcfg_to_prmry_ndev(cfg), &rtt_param) < 0) { WL_ERR(("Could not set RTT configuration\n")); err = -EINVAL; diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_dbg.h b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_dbg.h index 5414aa9d6f6ae..3d7319269ab46 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_dbg.h +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_dbg.h @@ -31,37 +31,221 @@ #ifndef _wl_dbg_h_ #define _wl_dbg_h_ +#include + #if defined(EVENT_LOG_COMPILE) #include #endif // endif +/* conditional debug flags */ +#define WL_DBG_NONE 0 +#define WL_DBG_P2P_ACTION (1 << 5) +#define WL_DBG_TRACE (1 << 4) +#define WL_DBG_SCAN (1 << 3) +#define WL_DBG_DBG (1 << 2) +#define WL_DBG_INFO (1 << 1) +#define WL_DBG_ERR (1 << 0) + /* wl_msg_level is a bit vector with defs in wlioctl.h */ extern uint32 wl_msg_level; extern uint32 wl_msg_level2; #define WL_TIMESTAMP() +#define WIFICC_CAPTURE(_reason) +#define WIFICC_LOGDEBUGIF(_flags, _args) +#define WIFICC_LOGDEBUG(_args) + +/* Logger prefix -> [dhd] CFG80211: */ +#define CFG80211_ERROR_TEXT DHD_LOG_PREFIXS "CFG80211[E]: " + +/* Default error logging macros -> KERN_ERR */ +#define WL_DEBUG_RATE_LIMIT_PERIOD 4000000000u /* 4s in units of ns */ +#define WL_ERR_RLMT(args) \ + do \ + { \ + if ((wl_dbg_level & WL_DBG_ERR) || (wl_msg_level & WL_ERROR_VAL)) \ + { \ + static uint64 __err_ts = 0; \ + static uint32 __err_cnt = 0; \ + uint64 __cur_ts = 0; \ + __cur_ts = local_clock(); \ + if (__err_ts == 0 || (__cur_ts > __err_ts && \ + (__cur_ts - __err_ts > WL_DEBUG_RATE_LIMIT_PERIOD))) \ + { \ + __err_ts = __cur_ts; \ + WL_ERR(args); \ + WL_ERR(("[Repeats %u times]\n", __err_cnt)); \ + __err_cnt = 0; \ + } \ + else \ + { \ + ++__err_cnt; \ + } \ + } \ + } while (0) + +#define WL_ERR_MSG(x, args...) \ + do \ + { \ + if (((wl_dbg_level & WL_DBG_ERR) || \ + (wl_msg_level & WL_ERROR_VAL))) \ + { \ + printk(KERN_ERR CFG80211_ERROR_TEXT "%s: " \ + x, __func__, ##args); \ + } \ + } while (0) +#define WL_ERR_KERN(x) WL_ERR_MSG x +#define WL_ERR_MEM(x) WL_ERR_MSG x +#define WL_ERR_EX(x) WL_ERR_MSG x +#define WL_ERR(x) WL_ERR_MSG x +#define WL_ERROR(x) WL_ERR_MSG x + +/* ------------------------------------------ */ +/* Default debug logging macros -> KERN_DEBUG */ +#if defined(DHD_DEBUG) + +/* Logger prefix -> [dhd] CFG80211: */ +#define CFG80211_INFO_TEXT DHD_LOG_PREFIXS "CFG80211[I]: " +#define CFG80211_DEBUG_TEXT DHD_LOG_PREFIXS "CFG80211[D]: " + +/* Info logging macros <5> */ +#define WL_INFO_MSG(x, args...) \ + do \ + { \ + if (((wl_dbg_level & WL_DBG_INFO) || \ + (wl_msg_level & WL_DBG_INFO))) \ + { \ + printk(KERN_NOTICE CFG80211_INFO_TEXT "%s: " x, \ + __func__, ##args); \ + } \ + } while (0) +#define WL_INFORM_MEM(x) WL_INFO_MSG x +#define WL_INFORM(x) WL_INFO_MSG x +#define WL_INFO(x) WL_INFO_MSG x +#define WL_MEM(x) WL_INFO_MSG x + +/* Scanner logging macros <6> */ +#define WL_SCAN_MSG(x, args...) \ + do \ + { \ + if (((wl_dbg_level & WL_DBG_SCAN) || \ + (wl_msg_level & WL_DBG_SCAN)) && \ + net_ratelimit()) \ + { \ + printk(KERN_INFO CFG80211_INFO_TEXT "%s:" x, \ + __func__, ##args); \ + } \ + } while (0) +#define WL_SCAN(x) WL_SCAN_MSG x + +/* Simple debugging macros <6> */ +#define WL_DEBUG_MSG(x, args...) \ + do \ + { \ + if (((wl_dbg_level & WL_DBG_DBG) || \ + (wl_msg_level & WL_DBG_DBG))) \ + { \ + printk(KERN_INFO CFG80211_DEBUG_TEXT "%s: " x, \ + __func__, ##args); \ + } \ + } while (0) +#define WL_DEBUG(x) WL_DEBUG_MSG x +#define WL_DBG(x) WL_DEBUG_MSG x + +/* Tracing macros <7> */ +#define WL_TRACE_MSG(x, args...) \ + do \ + { \ + if (((wl_dbg_level & WL_DBG_TRACE) || \ + (wl_msg_level & WL_DBG_TRACE))) \ + { \ + printk(KERN_DEBUG CFG80211_DEBUG_TEXT "%s:" x, \ + __func__, ##args); \ + } \ + } while (0) +#define WL_TRACE_HW4(x) WL_TRACE_MSG x +#define WL_TRACE(x) WL_TRACE_MSG x + +#define WL_MSG(name, arg1, args...) \ + do \ + { \ + if ((wl_dbg_level & WL_DBG_TRACE)) \ + { \ + printk(KERN_DEBUG DHD_LOG_PREFIX "[%s] %s: " arg1, \ + name, __func__, ##args); \ + } \ + } while (0) + +#define WL_MSG_PRINT_RATE_LIMIT_PERIOD 1000000000u /* 1s in units of ns */ +#define WL_MSG_RLMT(name, cmp, size, arg1, args...) \ + do \ + { \ + if (wl_dbg_level & WL_DBG_TRACE) \ + { \ + static uint64 __err_ts = 0; \ + static uint32 __err_cnt = 0; \ + uint64 __cur_ts = 0; \ + static uint8 static_tmp[size]; \ + __cur_ts = local_clock(); \ + if (__err_ts == 0 || (__cur_ts > __err_ts && (__cur_ts - __err_ts > WL_MSG_PRINT_RATE_LIMIT_PERIOD)) || \ + memcmp(&static_tmp, cmp, size)) \ + { \ + __err_ts = __cur_ts; \ + memcpy(static_tmp, cmp, size); \ + printk(KERN_DEBUG DHD_LOG_PREFIX "[%s] %s: " arg1, \ + name, __func__, ##args); \ + __err_cnt = 0; \ + } \ + else \ + { \ + ++__err_cnt; \ + } \ + } \ + } while (0) + +#else /* defined(DHD_DEBUG) */ +#define WL_INFO_MSG(x, args...) +#define WL_INFORM_MEM(x) +#define WL_INFORM(x) +#define WL_INFO(x) +#define WL_MEM(x) + +#define WL_SCAN_MSG(x, args...) +#define WL_SCAN(x) + +#define WL_DEBUG_MSG(x, args...) +#define WL_DEBUG(x) +#define WL_DBG(x) +#define WL_DEBUG(x) + +#define WL_TRACE_MSG(x, args...) +#define WL_TRACE_HW4(x) +#define WL_TRACE(x) + +#define WL_MSG_RLMT(name, cmp, size, arg1, args...) +#define WL_MSG(name, arg1, args...) + +#endif /* defined(DHD_DEBUG) */ + +/* I don't know - free for use */ +#define WL_PNO(x) +#define WL_SD(x) #ifdef ENABLE_CORECAPTURE #define MAX_BACKTRACE_DEPTH 32 -extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_backtrace_depth); +extern int WL_DEBUG_backtrace(const char *prefix, void *i_backtrace, int i_backtrace_depth); #else -#define wl_print_backtrace(a, b, c) +#define WL_DEBUG_backtrace(a, b, c) #endif /* ENABLE_CORECAPTURE */ -#define WIFICC_CAPTURE(_reason) -#define WIFICC_LOGDEBUGIF(_flags, _args) -#define WIFICC_LOGDEBUG(_args) - -#define WL_PRINT(args) do { WL_TIMESTAMP(); printf args; } while (0) - #if defined(EVENT_LOG_COMPILE) && defined(WLMSG_SRSCAN) -#define _WL_SRSCAN(fmt, ...) EVENT_LOG(EVENT_LOG_TAG_SRSCAN, fmt, ##__VA_ARGS__) -#define WL_SRSCAN(args) _WL_SRSCAN args +#define _WL_SRSCAN(fmt, ...) EVENT_LOG(EVENT_LOG_TAG_SRSCAN, fmt, ##__VA_ARGS__) +#define WL_SRSCAN(args) _WL_SRSCAN args #else #define WL_SRSCAN(args) #endif // endif -#if defined(BCMCONDITIONAL_LOGGING) +#if defined(BCMCONDITIONAL_LOGGING) && defined(BCMDBG) && defined(DHD_DEBUG) /* Ideally this should be some include file that vendors can include to conditionalize logging */ @@ -72,31 +256,48 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac /* To disable a message completely ... until you need it again */ #define WL_NONE(args) -#define WL_ERROR(args) do {if (wl_msg_level & WL_ERROR_VAL) WL_PRINT(args); \ - else WIFICC_LOGDEBUG(args); } while (0) -#define WL_SCAN_ERROR(args) -#define WL_IE_ERROR(args) -#define WL_AMSDU_ERROR(args) -#define WL_ASSOC_ERROR(args) -#define KM_ERR(args) - -#define WL_TRACE(args) +#define WL_SCAN_ERROR(args) +#define WL_IE_ERROR(args) +#define WL_AMSDU_ERROR(args) +#define WL_ASSOC_ERROR(args) +#define KM_ERR(args) #define WL_PRHDRS_MSG(args) #define WL_PRHDRS(i, p, f, t, r, l) #define WL_PRPKT(m, b, n) -#define WL_INFORM(args) #define WL_TMP(args) #define WL_OID(args) -#define WL_RATE(args) do {if (wl_msg_level & WL_RATE_VAL) WL_PRINT(args);} while (0) -#define WL_ASSOC(args) do {if (wl_msg_level & WL_ASSOC_VAL) WL_PRINT(args); \ - else WIFICC_LOGDEBUG(args);} while (0) +#define WL_RATE(args) \ + do \ + { \ + if ((wl_msg_level & WL_RATE_VAL) && net_ratelimit()) \ + WL_DEBUG(args); \ + } while (0) +#define WL_ASSOC(args) \ + do \ + { \ + if ((wl_msg_level & WL_ASSOC_VAL) && net_ratelimit()) \ + WL_DEBUG(args); \ + else \ + WIFICC_LOGDEBUG(args); \ + } while (0) #define WL_PRUSR(m, b, n) -#define WL_PS(args) do {if (wl_msg_level & WL_PS_VAL) WL_PRINT(args);} while (0) +#define WL_PS(args) \ + do \ + { \ + if ((wl_msg_level & WL_PS_VAL) && net_ratelimit()) \ + WL_DEBUG(args); \ + } while (0) #define WL_PORT(args) #define WL_DUAL(args) -#define WL_REGULATORY(args) do {if (wl_msg_level & WL_REGULATORY_VAL) WL_PRINT(args); \ - else WIFICC_LOGDEBUG(args);} while (0) +#define WL_REGULATORY(args) \ + do \ + { \ + if ((wl_msg_level & WL_REGULATORY_VAL) && net_ratelimit()) \ + WL_DEBUG(args); \ + else \ + WIFICC_LOGDEBUG(args); \ + } while (0) #define WL_MPC(args) #define WL_APSTA(args) @@ -109,7 +310,12 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac #define WL_MODE_SWITCH(args) #define WL_PROTO(args) -#define WL_CAC(args) do {if (wl_msg_level & WL_CAC_VAL) WL_PRINT(args);} while (0) +#define WL_CAC(args) \ + do \ + { \ + if ((wl_msg_level & WL_CAC_VAL) && net_ratelimit()) \ + WL_DEBUG(args); \ + } while (0) #define WL_AMSDU(args) #define WL_AMPDU(args) #define WL_FFPLD(args) @@ -119,7 +325,12 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac #define WL_WOWL(args) #define WL_DPT(args) #define WL_ASSOC_OR_DPT(args) -#define WL_SCAN(args) do {if (wl_msg_level2 & WL_SCAN_VAL) WL_PRINT(args);} while (0) +#define WL_SCAN(args) \ + do \ + { \ + if ((wl_msg_level2 & WL_SCAN_VAL) && net_ratelimit()) \ + WL_DEBUG(args); \ + } while (0) #define WL_COEX(args) #define WL_RTDC(w, s, i, j) #define WL_RTDC2(w, s, i, j) @@ -143,9 +354,9 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac #define WL_NAT(args) #ifdef WLMSG_MESH -#define WL_MESH(args) WL_PRINT(args) -#define WL_MESH_AMPE(args) WL_PRINT(args) -#define WL_MESH_ROUTE(args) WL_PRINT(args) +#define WL_MESH(args) WL_DEBUG(args) +#define WL_MESH_AMPE(args) WL_DEBUG(args) +#define WL_MESH_ROUTE(args) WL_DEBUG(args) #define WL_MESH_BCN(args) #else #define WL_MESH(args) @@ -154,7 +365,13 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac #define WL_MESH_BCN(args) #endif // endif #ifdef WLMSG_NATOE -#define WL_NAT(args) do {if (wl_msg_level2 & WL_NATOE_VAL) WL_PRINT(args);} while (0) +#define WL_NAT(args) \ + do \ + { \ + if ((wl_msg_level2 & WL_NATOE_VAL) + && net_ratelimit()) \ + WL_DEBUG(args); \ + } while (0) #else #define WL_NAT(args) #endif // endif @@ -170,9 +387,9 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac #define WL_AMPDU_HWTXS(args) #define WL_AMPDU_HWDBG(args) #define WL_AMPDU_STAT(args) -#define WL_AMPDU_ERR_ON() 0 -#define WL_AMPDU_HW_ON() 0 -#define WL_AMPDU_HWTXS_ON() 0 +#define WL_AMPDU_ERR_ON() 0 +#define WL_AMPDU_HW_ON() 0 +#define WL_AMPDU_HWTXS_ON() 0 #define WL_APSTA_UPDN(args) #define WL_APSTA_RX(args) @@ -187,52 +404,52 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac #define WL_ADPS(args) #define WL_OCE_DBG(args) -#define WL_ERROR_ON() (wl_msg_level & WL_ERROR_VAL) -#define WL_TRACE_ON() 0 -#define WL_PRHDRS_ON() 0 -#define WL_PRPKT_ON() 0 -#define WL_INFORM_ON() 0 -#define WL_TMP_ON() 0 -#define WL_OID_ON() 0 -#define WL_RATE_ON() (wl_msg_level & WL_RATE_VAL) -#define WL_ASSOC_ON() (wl_msg_level & WL_ASSOC_VAL) -#define WL_PRUSR_ON() 0 -#define WL_PS_ON() (wl_msg_level & WL_PS_VAL) -#define WL_PORT_ON() 0 -#define WL_WSEC_ON() 0 -#define WL_WSEC_DUMP_ON() 0 -#define WL_MPC_ON() 0 -#define WL_REGULATORY_ON() (wl_msg_level & WL_REGULATORY_VAL) -#define WL_APSTA_ON() 0 -#define WL_DFS_ON() 0 -#define WL_MBSS_ON() 0 -#define WL_CAC_ON() (wl_msg_level & WL_CAC_VAL) -#define WL_AMPDU_ON() 0 -#define WL_DPT_ON() 0 -#define WL_WOWL_ON() 0 -#define WL_SCAN_ON() (wl_msg_level2 & WL_SCAN_VAL) -#define WL_BTA_ON() 0 -#define WL_P2P_ON() 0 -#define WL_ITFR_ON() 0 -#define WL_MCHAN_ON() 0 -#define WL_TDLS_ON() 0 -#define WL_MCNX_ON() 0 -#define WL_PROT_ON() 0 -#define WL_PSTA_ON() 0 -#define WL_TRF_MGMT_ON() 0 -#define WL_LPC_ON() 0 -#define WL_L2FILTER_ON() 0 -#define WL_TXBF_ON() 0 -#define WL_P2PO_ON() 0 -#define WL_TSLOG_ON() 0 -#define WL_WNM_ON() 0 -#define WL_PCIE_ON() 0 -#define WL_MUMIMO_ON() 0 -#define WL_MESH_ON() 0 -#define WL_MBO_DBG_ON() 0 -#define WL_RANDMAC_DBG_ON() 0 -#define WL_ADPS_ON() 0 -#define WL_OCE_DBG_ON() 0 +#define WL_ERROR_ON() (wl_msg_level & WL_ERROR_VAL) +#define WL_TRACE_ON() 0 +#define WL_PRHDRS_ON() 0 +#define WL_PRPKT_ON() 0 +#define WL_INFORM_ON() 0 +#define WL_TMP_ON() 0 +#define WL_OID_ON() 0 +#define WL_RATE_ON() (wl_msg_level & WL_RATE_VAL) +#define WL_ASSOC_ON() (wl_msg_level & WL_ASSOC_VAL) +#define WL_PRUSR_ON() 0 +#define WL_PS_ON() (wl_msg_level & WL_PS_VAL) +#define WL_PORT_ON() 0 +#define WL_WSEC_ON() 0 +#define WL_WSEC_DUMP_ON() 0 +#define WL_MPC_ON() 0 +#define WL_REGULATORY_ON() (wl_msg_level & WL_REGULATORY_VAL) +#define WL_APSTA_ON() 0 +#define WL_DFS_ON() 0 +#define WL_MBSS_ON() 0 +#define WL_CAC_ON() (wl_msg_level & WL_CAC_VAL) +#define WL_AMPDU_ON() 0 +#define WL_DPT_ON() 0 +#define WL_WOWL_ON() 0 +#define WL_SCAN_ON() (wl_msg_level2 & WL_SCAN_VAL) +#define WL_BTA_ON() 0 +#define WL_P2P_ON() 0 +#define WL_ITFR_ON() 0 +#define WL_MCHAN_ON() 0 +#define WL_TDLS_ON() 0 +#define WL_MCNX_ON() 0 +#define WL_PROT_ON() 0 +#define WL_PSTA_ON() 0 +#define WL_TRF_MGMT_ON() 0 +#define WL_LPC_ON() 0 +#define WL_L2FILTER_ON() 0 +#define WL_TXBF_ON() 0 +#define WL_P2PO_ON() 0 +#define WL_TSLOG_ON() 0 +#define WL_WNM_ON() 0 +#define WL_PCIE_ON() 0 +#define WL_MUMIMO_ON() 0 +#define WL_MESH_ON() 0 +#define WL_MBO_DBG_ON() 0 +#define WL_RANDMAC_DBG_ON() 0 +#define WL_ADPS_ON() 0 +#define WL_OCE_DBG_ON() 0 #else /* !BCMDBG */ @@ -243,29 +460,23 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac /* To disable a message completely ... until you need it again */ #define WL_NONE(args) - -#define WL_ERROR(args) - -#define KM_ERR(args) - -#define WL_AMPDU_ERR(args) - -#define WL_TRACE(args) +#define WL_AMPDU_ERR(args) #define WL_APSTA_UPDN(args) #define WL_APSTA_RX(args) +#define KM_ERR(args) #ifdef WLMSG_WSEC #if defined(EVENT_LOG_COMPILE) && defined(EVENT_LOG_COMPILE) #if defined(USE_EVENT_LOG_RA) -#define WL_WSEC(args) EVENT_LOG_RA(EVENT_LOG_TAG_WL_WSEC_LOG, args) -#define WL_WSEC_DUMP(args) EVENT_LOG_RA(EVENT_LOG_TAG_WL_WSEC_DUMP, args) +#define WL_WSEC(args) EVENT_LOG_RA(EVENT_LOG_TAG_WL_WSEC_LOG, args) +#define WL_WSEC_DUMP(args) EVENT_LOG_RA(EVENT_LOG_TAG_WL_WSEC_DUMP, args) #else -#define WL_WSEC(args) EVENT_LOG_FAST_CAST_PAREN_ARGS(EVENT_LOG_TAG_WL_WSEC_LOG, args) -#define WL_WSEC_DUMP(args) EVENT_LOG_FAST_CAST_PAREN_ARGS(EVENT_LOG_TAG_WL_WSEC_DUMP, args) +#define WL_WSEC(args) EVENT_LOG_FAST_CAST_PAREN_ARGS(EVENT_LOG_TAG_WL_WSEC_LOG, args) +#define WL_WSEC_DUMP(args) EVENT_LOG_FAST_CAST_PAREN_ARGS(EVENT_LOG_TAG_WL_WSEC_DUMP, args) #endif /* USE_EVENT_LOG_RA */ #else -#define WL_WSEC(args) WL_PRINT(args) -#define WL_WSEC_DUMP(args) WL_PRINT(args) +#define WL_WSEC(args) WL_DEBUG(args) +#define WL_WSEC_DUMP(args) WL_DEBUG(args) #endif /* EVENT_LOG_COMPILE */ #else #define WL_WSEC(args) @@ -275,106 +486,222 @@ extern int wl_print_backtrace(const char * prefix, void * i_backtrace, int i_bac #ifdef WLMSG_MBO #if defined(EVENT_LOG_COMPILE) && defined(EVENT_LOG_COMPILE) #if defined(USE_EVENT_LOG_RA) -#define WL_MBO_DBG(args) EVENT_LOG_RA(EVENT_LOG_TAG_MBO_DBG, args) -#define WL_MBO_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_MBO_INFO, args) +#define WL_MBO_DBG(args) EVENT_LOG_RA(EVENT_LOG_TAG_MBO_DBG, args) +#define WL_MBO_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_MBO_INFO, args) #else -#define WL_MBO_DBG(args) \ - EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_MBO_DBG, args) -#define WL_MBO_INFO(args) \ - EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_MBO_INFO, args) +#define WL_MBO_DBG(args) \ + EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_MBO_DBG, args) +#define WL_MBO_INFO(args) \ + EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_MBO_INFO, args) #endif /* USE_EVENT_LOG_RA */ #else -#define WL_MBO_DBG(args) WL_PRINT(args) -#define WL_MBO_INFO(args) WL_PRINT(args) +#define WL_MBO_DBG(args) WL_DEBUG(args) +#define WL_MBO_INFO(args) WL_DEBUG(args) #endif /* EVENT_LOG_COMPILE */ #else -#define WL_MBO_DBG(args) -#define WL_MBO_INFO(args) +#define WL_MBO_DBG(args) +#define WL_MBO_INFO(args) #endif /* WLMSG_MBO */ -#define WL_MBO_ERR(args) WL_PRINT(args) +#define WL_MBO_ERR(args) WL_DEBUG(args) #ifdef WLMSG_RANDMAC #if defined(EVENT_LOG_COMPILE) && defined(EVENT_LOG_COMPILE) #if defined(USE_EVENT_LOG_RA) -#define WL_RANDMAC_DBG(args) EVENT_LOG_RA(EVENT_LOG_TAG_RANDMAC_DBG, args) -#define WL_RANDMAC_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_RANDMAC_INFO, args) +#define WL_RANDMAC_DBG(args) EVENT_LOG_RA(EVENT_LOG_TAG_RANDMAC_DBG, args) +#define WL_RANDMAC_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_RANDMAC_INFO, args) #else -#define WL_RANDMAC_DBG(args) \ - EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_RANDMAC_DBG, args) -#define WL_RANDMAC_INFO(args) \ - EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_RANDMAC_INFO, args) +#define WL_RANDMAC_DBG(args) \ + EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_RANDMAC_DBG, args) +#define WL_RANDMAC_INFO(args) \ + EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_RANDMAC_INFO, args) #endif /* USE_EVENT_LOG_RA */ #else -#define WL_RANDMAC_DBG(args) WL_PRINT(args) -#define WL_RANDMAC_INFO(args) WL_PRINT(args) +#define WL_RANDMAC_DBG(args) WL_DEBUG(args) +#define WL_RANDMAC_INFO(args) WL_DEBUG(args) #endif /* EVENT_LOG_COMPILE */ #else -#define WL_RANDMAC_DBG(args) -#define WL_RANDMAC_INFO(args) +#define WL_RANDMAC_DBG(args) +#define WL_RANDMAC_INFO(args) #endif /* WLMSG_RANDMAC */ -#define WL_RANDMAC_ERR(args) WL_PRINT(args) +#define WL_RANDMAC_ERR(args) WL_DEBUG(args) #ifdef WLMSG_OCE #if defined(EVENT_LOG_COMPILE) #if defined(USE_EVENT_LOG_RA) -#define WL_OCE_DBG(args) EVENT_LOG_RA(EVENT_LOG_TAG_OCE_DBG, args) -#define WL_OCE_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_OCE_INFO, args) +#define WL_OCE_DBG(args) EVENT_LOG_RA(EVENT_LOG_TAG_OCE_DBG, args) +#define WL_OCE_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_OCE_INFO, args) #else -#define WL_OCE_DBG(args) \ - EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_OCE_DBG, args) -#define WL_OCE_INFO(args) \ - EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_OCE_INFO, args) +#define WL_OCE_DBG(args) \ + EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_OCE_DBG, args) +#define WL_OCE_INFO(args) \ + EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_OCE_INFO, args) #endif /* USE_EVENT_LOG_RA */ #else -#define WL_OCE_DBG(args) WL_PRINT(args) -#define WL_OCE_INFO(args) WL_PRINT(args) +#define WL_OCE_DBG(args) WL_DEBUG(args) +#define WL_OCE_INFO(args) WL_DEBUG(args) #endif /* EVENT_LOG_COMPILE */ #else -#define WL_OCE_DBG(args) -#define WL_OCE_INFO(args) +#define WL_OCE_DBG(args) +#define WL_OCE_INFO(args) #endif /* WLMSG_OCE */ -#define WL_OCE_ERR(args) WL_PRINT(args) - -#define WL_PCIE(args) do {if (wl_msg_level2 & WL_PCIE_VAL) WL_PRINT(args);} while (0) -#define WL_PCIE_ON() (wl_msg_level2 & WL_PCIE_VAL) -#define WL_PFN(args) do {if (wl_msg_level & WL_PFN_VAL) WL_PRINT(args);} while (0) -#define WL_PFN_ON() (wl_msg_level & WL_PFN_VAL) +#define WL_OCE_ERR(args) WL_DEBUG(args) + +#define WL_PCIE(args) \ + do \ + { \ + if (wl_msg_level2 & WL_PCIE_VAL) \ + WL_DEBUG(args); \ + } while (0) +#define WL_PCIE_ON() (wl_msg_level2 & WL_PCIE_VAL) +#define WL_PFN(args) \ + do \ + { \ + if (wl_msg_level & WL_PFN_VAL) \ + WL_DEBUG(args); \ + } while (0) +#define WL_PFN_ON() (wl_msg_level & WL_PFN_VAL) #endif // endif #ifdef WLMSG_BAM #if defined(EVENT_LOG_COMPILE) #ifdef USE_EVENT_LOG_RA -#define WL_BAM_ERR(args) EVENT_LOG_RA(EVENT_LOG_TAG_BAM, args) +#define WL_BAM_ERR(args) EVENT_LOG_RA(EVENT_LOG_TAG_BAM, args) #else -#define WL_BAM_ERR(args) EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_BAM, args) +#define WL_BAM_ERR(args) EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_BAM, args) #endif /* USE_EVENT_LOG_RA */ #else -#define WL_BAM_ERR(args) WL_PRINT(args) +#define WL_BAM_ERR(args) WL_DEBUG(args) #endif /* EVENT_LOG_COMPILE */ #endif /* WLMSG_BAM */ #ifdef WLMSG_WNM_BSSTRANS #if defined(EVENT_LOG_COMPILE) #if defined(USE_EVENT_LOG_RA) -#define WL_BSSTRANS_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_WNM_BSSTRANS_INFO, args) +#define WL_BSSTRANS_INFO(args) EVENT_LOG_RA(EVENT_LOG_TAG_WNM_BSSTRANS_INFO, args) #else -#define WL_BSSTRANS_INFO(args) \ - EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_WNM_BSSTRANS_INFO, args) +#define WL_BSSTRANS_INFO(args) \ + EVENT_LOG_COMPACT_CAST_PAREN_ARGS(EVENT_LOG_TAG_WNM_BSSTRANS_INFO, args) #endif /* USE_EVENT_LOG_RA */ #else -#define WL_BSSTRANS_INFO(args) WL_PRINT(args) +#define WL_BSSTRANS_INFO(args) WL_DEBUG(args) #endif /* EVENT_LOG_COMPILE */ #else -#define WL_BSSTRANS_INFO(args) +#define WL_BSSTRANS_INFO(args) #endif /* WLMSG_WNM_BSSTRANS */ -#define WL_BSSTRANS_ERR(args) WL_PRINT(args) +#define WL_BSSTRANS_ERR(args) WL_DEBUG(args) #define DBGERRONLY(x) -extern uint32 wl_msg_level; -extern uint32 wl_msg_level2; +/* --------------------------------------------- */ +/* Redefine some output macros with dump feature */ +#if defined(DHD_DEBUG) && defined(DHD_LOG_DUMP) + +#ifdef WL_ERR_MSG +#undef WL_ERR_MSG +#endif +#ifdef WL_ERR +#undef WL_ERR +#endif + +#define WL_ERR_MSG(x, args...) \ + do \ + { \ + if ((wl_dbg_level & WL_DBG_ERR) && net_ratelimit()) \ + { \ + printk(KERN_ERR CFG80211_ERROR_TEXT "%s : " x, __func__, ##args); \ + DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ + DHD_LOG_DUMP_WRITE(x, ##args); \ + } \ + } while (0) +#define WL_ERR(x) WL_ERR_MSG x + +#ifdef WL_ERR_KERN_MSG +#undef WL_ERR_KERN_MSG +#endif +#ifdef WL_ERR_KERN +#undef WL_ERR_KERN +#endif + +#define WL_ERR_KERN_MSG(x, args...) \ + do \ + { \ + if ((wl_dbg_level & WL_DBG_ERR) && net_ratelimit()) \ + { \ + printk(KERN_ERR CFG80211_ERROR_TEXT "%s : " x, __func__, ##args); \ + } \ + } while (0) +#define WL_ERR_KERN(x) WL_ERR_KERN_MSG x + +#ifdef WL_ERR_MEM_MSG +#undef WL_ERR_MEM_MSG +#endif +#ifdef WL_ERR_MEM +#undef WL_ERR_MEM +#endif + +#define WL_ERR_MEM_MSG(x, args...) \ + do \ + { \ + if ((wl_dbg_level & WL_DBG_ERR) && net_ratelimit()) \ + { \ + DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ + DHD_LOG_DUMP_WRITE(x, ##args); \ + } \ + } while (0) +#define WL_ERR_MEM(x) WL_ERR_MEM_MSG x + +#ifdef WL_ERR_EX +#undef WL_ERR_EX +#endif + +#define WL_ERR_EX(args) \ + do \ + { \ + if ((wl_dbg_level & WL_DBG_ERR) && net_ratelimit()) \ + { \ + printk(KERN_ERR CFG80211_ERROR_TEXT "%s : " x, __func__, ##args); \ + DHD_LOG_DUMP_WRITE_EX("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ + DHD_LOG_DUMP_WRITE_EX args; \ + } \ + } while (0) + +#ifdef WL_INFORM_MEM_MSG +#undef WL_INFORM_MEM_MSG +#endif +#ifdef WL_INFORM_MEM +#undef WL_INFORM_MEM +#endif + +#define WL_INFORM_MEM_MSG(x, args...) \ + do \ + { \ + if ((wl_dbg_level & WL_DBG_INFO) && net_ratelimit()) \ + { \ + printk(KERN_INFO CFG80211_INFO_TEXT "%s : " x, __func__, ##args); \ + DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ + DHD_LOG_DUMP_WRITE(x, ##args); \ + } \ + } while (0) +#define WL_INFORM_MEM(x) WL_INFORM_MEM_MSG x + +#ifdef WL_MEM +#undef WL_MEM +#endif + +#define WL_MEM(args) \ + do \ + { \ + if (net_ratelimit()) \ + { \ + DHD_LOG_DUMP_WRITE("[%s] %s: ", dhd_log_dump_get_timestamp(), __func__); \ + DHD_LOG_DUMP_WRITE args; \ + } \ + } while (0) + +#endif /* defined(DHD_DEBUG) && defined(DHD_LOG_DUMP) */ + #endif /* _wl_dbg_h_ */ diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_escan.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_escan.c index 73bd3b6740b47..7fa621bae9570 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_escan.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_escan.c @@ -3,32 +3,34 @@ #include #include #include +#include +#include #include #include #include #define ESCAN_ERROR(name, arg1, args...) \ do { \ - if (android_msg_level & ANDROID_ERROR_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIX "[%s] ESCAN-ERROR) %s : " arg1, name, __func__, ## args); \ + if ((wl_dbg_level & WL_DBG_ERR)) { \ + printk(KERN_ERR DHD_LOG_PREFIX "[%s] WL-ESCAN[E]: %s : " arg1, name, __func__, ## args); \ } \ } while (0) #define ESCAN_TRACE(name, arg1, args...) \ do { \ - if (android_msg_level & ANDROID_TRACE_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] ESCAN-TRACE) %s : " arg1, name, __func__, ## args); \ + if ((wl_dbg_level & WL_DBG_TRACE) && (wl_dbg_level & WL_DBG_SCAN)) { \ + printk(KERN_DEBUG DHD_LOG_PREFIX "[%s] WL-ESCAN[T]: %s : " arg1, name, __func__, ## args); \ } \ } while (0) #define ESCAN_SCAN(name, arg1, args...) \ do { \ - if (android_msg_level & ANDROID_SCAN_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] ESCAN-SCAN) %s : " arg1, name, __func__, ## args); \ + if ((wl_dbg_level & WL_DBG_TRACE) && (wl_dbg_level & WL_DBG_SCAN)) { \ + printk(KERN_INFO DHD_LOG_PREFIX "[%s] WL-ESCAN[T]: %s : " arg1, name, __func__, ## args); \ } \ } while (0) #define ESCAN_DBG(name, arg1, args...) \ do { \ - if (android_msg_level & ANDROID_DBG_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] ESCAN-DBG) %s : " arg1, name, __func__, ## args); \ + if ((wl_dbg_level & WL_DBG_DBG) && (wl_dbg_level & WL_DBG_SCAN)) { \ + printk(KERN_DEBUG DHD_LOG_PREFIX "[%s] WL-ESCAN[D]: %s : " arg1, name, __func__, ## args); \ } \ } while (0) diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_event.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_event.c index d8c66e26a621e..98aaa3f71d723 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_event.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_event.c @@ -6,20 +6,20 @@ #define EVENT_ERROR(name, arg1, args...) \ do { \ - if (android_msg_level & ANDROID_ERROR_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIX "[%s] EVENT-ERROR) %s : " arg1, name, __func__, ## args); \ + if (android_msg_level & ANDROID_EVENT_ERROR_LEVEL) { \ + printk(KERN_ERR DHD_LOG_PREFIX "[%s] ANDROID-WL-EVENT[E]: %s : " arg1, name, __func__, ## args); \ } \ } while (0) #define EVENT_TRACE(name, arg1, args...) \ do { \ - if (android_msg_level & ANDROID_TRACE_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] EVENT-TRACE) %s : " arg1, name, __func__, ## args); \ + if (android_msg_level & ANDROID_EVENT_INFO_LEVEL) { \ + printk(KERN_DEBUG DHD_LOG_PREFIX "[%s] ANDROID-WL-EVENT[T]: %s : " arg1, name, __func__, ## args); \ } \ } while (0) #define EVENT_DBG(name, arg1, args...) \ do { \ - if (android_msg_level & ANDROID_DBG_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] EVENT-DBG) %s : " arg1, name, __func__, ## args); \ + if (android_msg_level & ANDROID_EVENT_DBG_LEVEL) { \ + printk(KERN_INFO DHD_LOG_PREFIX "[%s] ANDROID-WL-EVENT[D]: %s : " arg1, name, __func__, ## args); \ } \ } while (0) @@ -216,7 +216,7 @@ wl_ext_event_handler(struct work_struct *work_data) } dhd = dhd_get_pub(dev); if (e->etype > WLC_E_LAST) { - EVENT_TRACE(dev->name, "Unknown Event (%d): ignoring\n", e->etype); + EVENT_ERROR(dev->name, "Unknown Event (%d): ignoring\n", e->etype); goto fail; } DHD_GENERAL_LOCK(dhd, flags); @@ -226,7 +226,7 @@ wl_ext_event_handler(struct work_struct *work_data) goto fail; } DHD_GENERAL_UNLOCK(dhd, flags); - EVENT_DBG(dev->name, "event type (%d)\n", e->etype); + EVENT_TRACE(dev->name, "event type (%d)\n", e->etype); mutex_lock(&event_params->event_sync); evt_node = event_params->evt_head.evt_head; for (;evt_node;) { diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_ext_genl.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_ext_genl.c index d1ff33ae4065d..634601e455050 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_ext_genl.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_ext_genl.c @@ -7,19 +7,19 @@ #define AGENL_ERROR(name, arg1, args...) \ do { \ if (android_msg_level & ANDROID_ERROR_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIX "[%s] AGENL-ERROR) %s : " arg1, name, __func__, ## args); \ + printk(KERN_ERR DHD_LOG_PREFIX "[%s] WL-AGENL: %s : " arg1, name, __func__, ## args); \ } \ } while (0) #define AGENL_TRACE(name, arg1, args...) \ do { \ if (android_msg_level & ANDROID_TRACE_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] AGENL-TRACE) %s : " arg1, name, __func__, ## args); \ + printk(KERN_DEBUG DHD_LOG_PREFIX "[%s] WL-AGENL: %s : " arg1, name, __func__, ## args); \ } \ } while (0) #define AGENL_INFO(name, arg1, args...) \ do { \ if (android_msg_level & ANDROID_INFO_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIX "[%s] AGENL-INFO) %s : " arg1, name, __func__, ## args); \ + printk(KERN_INFO DHD_LOG_PREFIX "[%s] WL-AGENL: %s : " arg1, name, __func__, ## args); \ } \ } while (0) diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_iw.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_iw.c index e0022d87b1322..f74ca8979510f 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_iw.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_iw.c @@ -40,10 +40,14 @@ #include #include +#include +#include + #include #ifdef WL_NAN #include #endif +#include #include #include #ifdef WL_ESCAN @@ -53,34 +57,34 @@ uint iw_msg_level = WL_ERROR_LEVEL; -#define WL_ERROR_MSG(x, args...) \ +#define WL_IW_ERROR_MSG(x, args...) \ do { \ - if (iw_msg_level & WL_ERROR_LEVEL) { \ - printk(KERN_ERR DHD_LOG_PREFIXS "WEXT-ERROR) %s : " x, __func__, ## args); \ + if ((iw_msg_level & WL_ERROR_LEVEL) && net_ratelimit()) { \ + printk(KERN_ERR DHD_LOG_PREFIXS "WL_IW: %s : " x, __func__, ## args); \ } \ } while (0) -#define WL_TRACE_MSG(x, args...) \ +#define WL_IW_TRACE_MSG(x, args...) \ do { \ - if (iw_msg_level & WL_TRACE_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "WEXT-TRACE) %s : " x, __func__, ## args); \ + if ((iw_msg_level & WL_TRACE_LEVEL) && net_ratelimit()) { \ + printk(KERN_DEBUG DHD_LOG_PREFIXS "WL_IW: %s : " x, __func__, ## args); \ } \ } while (0) -#define WL_SCAN_MSG(x, args...) \ +#define WL_IW_SCAN_MSG(x, args...) \ do { \ - if (iw_msg_level & WL_SCAN_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "WEXT-SCAN) %s : " x, __func__, ## args); \ + if ((iw_msg_level & WL_SCAN_LEVEL) && net_ratelimit()) { \ + printk(KERN_NOTICE DHD_LOG_PREFIXS "WL_IW: %s : " x, __func__, ## args); \ } \ } while (0) -#define WL_WSEC_MSG(x, args...) \ +#define WL_IW_WSEC_MSG(x, args...) \ do { \ - if (iw_msg_level & WL_WSEC_LEVEL) { \ - printk(KERN_INFO DHD_LOG_PREFIXS "WEXT-WSEC) %s : " x, __func__, ## args); \ + if ((iw_msg_level & WL_WSEC_LEVEL) && net_ratelimit()) { \ + printk(KERN_NOTICE DHD_LOG_PREFIXS "WL_IW: %s : " x, __func__, ## args); \ } \ } while (0) -#define WL_ERROR(x) WL_ERROR_MSG x -#define WL_TRACE(x) WL_TRACE_MSG x -#define WL_SCAN(x) WL_SCAN_MSG x -#define WL_WSEC(x) WL_WSEC_MSG x +#define WL_IW_ERROR(x) WL_IW_ERROR_MSG x +#define WL_IW_TRACE(x) WL_IW_TRACE_MSG x +#define WL_IW_SCAN(x) WL_IW_SCAN_MSG x +#define WL_IW_WSEC(x) WL_IW_WSEC_MSG x #ifdef BCMWAPI_WPI /* these items should evetually go into wireless.h of the linux system headfile dir */ @@ -317,7 +321,7 @@ dev_wlc_ioctl( #else index = dhd_net2idx(dhd->info, dev); if (index == DHD_BAD_IF) { - WL_ERROR(("Bad ifidx from dev:%p\n", dev)); + WL_IW_ERROR(("Bad ifidx from dev:%p\n", dev)); return -ENODEV; } ret = dhd_ioctl_process(dhd, index, &ioc, arg); @@ -548,7 +552,7 @@ wl_iw_send_priv_event( extra[sizeof(extra) - 1] = '\0'; wrqu.data.length = strlen(extra); wireless_send_event(dev, cmd, &wrqu, extra); - WL_TRACE(("Send IWEVCUSTOM Event as %s\n", extra)); + WL_IW_TRACE(("Send IWEVCUSTOM Event as %s\n", extra)); return 0; } @@ -565,7 +569,7 @@ wl_iw_config_commit( int error; struct sockaddr bssid; - WL_TRACE(("%s: SIOCSIWCOMMIT\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWCOMMIT\n", dev->name)); if ((error = dev_wlc_ioctl(dev, WLC_GET_SSID, &ssid, sizeof(ssid)))) return error; @@ -577,7 +581,7 @@ wl_iw_config_commit( bzero(&bssid, sizeof(struct sockaddr)); if ((error = dev_wlc_ioctl(dev, WLC_REASSOC, &bssid, ETHER_ADDR_LEN))) { - WL_ERROR(("WLC_REASSOC failed (%d)\n", error)); + WL_IW_ERROR(("WLC_REASSOC failed (%d)\n", error)); return error; } @@ -596,7 +600,7 @@ wl_iw_get_name( uint band[3]; char cap[5]; - WL_TRACE(("%s: SIOCGIWNAME\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWNAME\n", dev->name)); cap[0] = 0; if ((err = dev_wlc_ioctl(dev, WLC_GET_PHYTYPE, &phytype, sizeof(phytype))) < 0) @@ -633,7 +637,7 @@ wl_iw_get_name( #define DHD_CHECK(dhd, dev) \ if (!dhd) { \ - WL_ERROR (("[%s] dhd is NULL\n", dev->name)); \ + WL_IW_ERROR (("[%s] dhd is NULL\n", dev->name)); \ return -ENODEV; \ } \ @@ -650,7 +654,7 @@ wl_iw_set_freq( struct dhd_pub *dhd = dhd_get_pub(dev); wl_wext_info_t *wext_info = NULL; - WL_TRACE(("%s: SIOCSIWFREQ\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWFREQ\n", dev->name)); DHD_CHECK(dhd, dev); wext_info = dhd->wext_info; @@ -681,7 +685,7 @@ wl_iw_set_freq( WL_MSG(dev->name, "chan=%d\n", chan); chan = htod32(chan); if ((error = dev_wlc_ioctl(dev, WLC_SET_CHANNEL, &chan, sizeof(chan)))) { - WL_ERROR(("WLC_SET_CHANNEL failed (%d).\n", error)); + WL_IW_ERROR(("WLC_SET_CHANNEL failed (%d).\n", error)); return error; } @@ -701,7 +705,7 @@ wl_iw_get_freq( u32 chanspec = 0; int ctl_chan; - WL_TRACE(("%s: SIOCGIWFREQ\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWFREQ\n", dev->name)); if ((error = dev_wlc_intvar_get(dev, "chanspec", &chanspec))) return error; @@ -725,7 +729,7 @@ wl_iw_set_mode( struct dhd_pub *dhd = dhd_get_pub(dev); wl_wext_info_t *wext_info = NULL; - WL_TRACE(("%s: SIOCSIWMODE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWMODE\n", dev->name)); DHD_CHECK(dhd, dev); wext_info = dhd->wext_info; if (wext_info) { @@ -768,7 +772,7 @@ wl_iw_get_mode( { int error, infra = 0, ap = 0; - WL_TRACE(("%s: SIOCGIWMODE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWMODE\n", dev->name)); if ((error = dev_wlc_ioctl(dev, WLC_GET_INFRA, &infra, sizeof(infra))) || (error = dev_wlc_ioctl(dev, WLC_GET_AP, &ap, sizeof(ap)))) @@ -806,7 +810,7 @@ wl_iw_get_range( {30, 60, 90, 120, 180, 240, 270, 300}}; int fbt_cap = 0; - WL_TRACE(("%s: SIOCGIWRANGE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWRANGE\n", dev->name)); if (!extra) return -EINVAL; @@ -1025,7 +1029,7 @@ wl_iw_set_spy( struct sockaddr *addr = (struct sockaddr *) extra; int i; - WL_TRACE(("%s: SIOCSIWSPY\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWSPY\n", dev->name)); if (!extra) return -EINVAL; @@ -1051,7 +1055,7 @@ wl_iw_get_spy( struct iw_quality *qual = (struct iw_quality *) &addr[iw->spy_num]; int i; - WL_TRACE(("%s: SIOCGIWSPY\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWSPY\n", dev->name)); if (!extra) return -EINVAL; @@ -1079,11 +1083,11 @@ wl_iw_set_wap( struct dhd_pub *dhd = dhd_get_pub(dev); wl_wext_info_t *wext_info = NULL; - WL_TRACE(("%s: SIOCSIWAP\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWAP\n", dev->name)); DHD_CHECK(dhd, dev); wext_info = dhd->wext_info; if (awrq->sa_family != ARPHRD_ETHER) { - WL_ERROR(("Invalid Header...sa_family\n")); + WL_IW_ERROR(("Invalid Header...sa_family\n")); return -EINVAL; } @@ -1093,11 +1097,17 @@ wl_iw_set_wap( bzero(&scbval, sizeof(scb_val_t)); WL_MSG(dev->name, "WLC_DISASSOC\n"); if ((error = dev_wlc_ioctl(dev, WLC_DISASSOC, &scbval, sizeof(scb_val_t)))) { - WL_ERROR(("WLC_DISASSOC failed (%d).\n", error)); + WL_IW_ERROR(("WLC_DISASSOC failed (%d).\n", error)); } +#ifndef WL_CFG80211 wl_ext_in4way_sync_wext(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, WL_EXT_STATUS_DISCONNECTING, NULL); +#else + wl_ext_in4way_sync(dev, + STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, + WL_EXT_STATUS_DISCONNECTING, awrq->sa_data); +#endif return 0; } /* WL_ASSOC(("Assoc to %s\n", bcm_ether_ntoa((struct ether_addr *)&(awrq->sa_data), @@ -1111,13 +1121,18 @@ wl_iw_set_wap( return error; } else { if ((error = dev_wlc_ioctl(dev, WLC_REASSOC, awrq->sa_data, ETHER_ADDR_LEN))) { - WL_ERROR(("WLC_REASSOC failed (%d).\n", error)); + WL_IW_ERROR(("WLC_REASSOC failed (%d).\n", error)); return error; } WL_MSG(dev->name, "join BSSID="MACSTR"\n", MAC2STR((u8 *)awrq->sa_data)); } +#ifndef WL_CFG80211 wl_ext_in4way_sync_wext(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY, WL_EXT_STATUS_CONNECTING, NULL); +#else + wl_ext_in4way_sync(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY, + WL_EXT_STATUS_CONNECTING, awrq->sa_data); +#endif return 0; } @@ -1130,7 +1145,7 @@ wl_iw_get_wap( char *extra ) { - WL_TRACE(("%s: SIOCGIWAP\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWAP\n", dev->name)); awrq->sa_family = ARPHRD_ETHER; memset(awrq->sa_data, 0, ETHER_ADDR_LEN); @@ -1154,11 +1169,11 @@ wl_iw_mlme( scb_val_t scbval; int error = -EINVAL; - WL_TRACE(("%s: SIOCSIWMLME\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWMLME\n", dev->name)); mlme = (struct iw_mlme *)extra; if (mlme == NULL) { - WL_ERROR(("Invalid ioctl data.\n")); + WL_IW_ERROR(("Invalid ioctl data.\n")); return error; } @@ -1177,13 +1192,18 @@ wl_iw_mlme( sizeof(scb_val_t)); } else { - WL_ERROR(("Invalid ioctl data.\n")); + WL_IW_ERROR(("Invalid ioctl data.\n")); return error; } +#ifndef WL_CFG80211 wl_ext_in4way_sync_wext(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, WL_EXT_STATUS_DISCONNECTING, NULL); - +#else + wl_ext_in4way_sync(dev, + STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, + WL_EXT_STATUS_DISCONNECTING, mlme->addr.sa_data); +#endif return error; } #endif /* WIRELESS_EXT > 17 */ @@ -1205,7 +1225,7 @@ wl_iw_get_aplist( uint buflen = dwrq->length; int16 rssi; - WL_TRACE(("%s: SIOCGIWAPLIST\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWAPLIST\n", dev->name)); if (!extra) return -EINVAL; @@ -1217,7 +1237,7 @@ wl_iw_get_aplist( memset(list, 0, buflen); list->buflen = htod32(buflen); if ((error = dev_wlc_ioctl(dev, WLC_SCAN_RESULTS, list, buflen))) { - WL_ERROR(("%d: Scan results error %d\n", __LINE__, error)); + WL_IW_ERROR(("%d: Scan results error %d\n", __LINE__, error)); kfree(list); return error; } @@ -1285,7 +1305,7 @@ wl_iw_iscan_get_aplist( struct dhd_pub *dhd = dhd_get_pub(dev); wl_wext_info_t *wext_info = NULL; - WL_TRACE(("%s: SIOCGIWAPLIST\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWAPLIST\n", dev->name)); DHD_CHECK(dhd, dev); wext_info = dhd->wext_info; iscan = &wext_info->iscan; @@ -1355,7 +1375,7 @@ wl_iw_set_scan( { wlc_ssid_t ssid; - WL_TRACE(("%s: SIOCSIWSCAN\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWSCAN\n", dev->name)); /* default Broadcast scan */ memset(&ssid, 0, sizeof(ssid)); @@ -1416,7 +1436,7 @@ wl_iw_iscan_set_scan( return wl_escan_set_scan(dev, dhd, &ssid, 0, TRUE); #else iscan = &wext_info->iscan; - WL_TRACE(("%s: SIOCSIWSCAN iscan=%p\n", dev->name, iscan)); + WL_IW_TRACE(("%s: SIOCSIWSCAN iscan=%p\n", dev->name, iscan)); /* use backup if our thread is not successful */ if ((!iscan) || (iscan->sysioc_pid < 0)) { @@ -1612,7 +1632,7 @@ wl_iw_handle_scanresults_ies(char **event_p, char *end, ptr_len = bi->ie_length; while ((ie = bcm_parse_tlvs(ptr, ptr_len, DOT11_MNG_WAPI_ID))) { - WL_TRACE(("found a WAPI IE...\n")); + WL_IW_TRACE(("found a WAPI IE...\n")); #ifdef WAPI_IE_USE_GENIE iwe.cmd = IWEVGENIE; iwe.u.data.length = ie->len + 2; @@ -1625,7 +1645,7 @@ wl_iw_handle_scanresults_ies(char **event_p, char *end, buf = kmalloc(custom_event_len+1, GFP_KERNEL); if (buf == NULL) { - WL_ERROR(("malloc(%d) returned NULL...\n", custom_event_len)); + WL_IW_ERROR(("malloc(%d) returned NULL...\n", custom_event_len)); break; } @@ -1665,7 +1685,7 @@ wl_iw_get_scan( int16 rssi; int channel; - WL_TRACE(("%s SIOCGIWSCAN\n", dev->name)); + WL_IW_TRACE(("%s SIOCGIWSCAN\n", dev->name)); if (!extra) return -EINVAL; @@ -1701,7 +1721,7 @@ wl_iw_get_scan( // terence 20150419: limit the max. rssi to -2 or the bss will be filtered out in android OS rssi = MIN(dtoh16(bi->RSSI), RSSI_MAXVAL); channel = (bi->ctl_ch == 0) ? CHSPEC_CHANNEL(bi->chanspec) : bi->ctl_ch; - WL_SCAN(("BSSID="MACSTR", channel=%d, RSSI=%d, SSID=\"%s\"\n", + WL_IW_SCAN(("BSSID="MACSTR", channel=%d, RSSI=%d, SSID=\"%s\"\n", MAC2STR(bi->BSSID.octet), channel, rssi, bi->SSID)); /* First entry must be the BSSID */ @@ -1805,7 +1825,7 @@ wl_iw_iscan_get_scan( #ifdef WL_ESCAN return wl_escan_get_scan(dev, dhd, info, dwrq, extra); #else - WL_TRACE(("%s SIOCGIWSCAN\n", dev->name)); + WL_IW_TRACE(("%s SIOCGIWSCAN\n", dev->name)); if (!extra) return -EINVAL; @@ -1818,7 +1838,7 @@ wl_iw_iscan_get_scan( /* Check for scan in progress */ if (iscan->iscan_state == ISCAN_STATE_SCANING) { - WL_TRACE(("%s: SIOCGIWSCAN GET still scanning\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWSCAN GET still scanning\n", dev->name)); return -EAGAIN; } @@ -1829,7 +1849,7 @@ wl_iw_iscan_get_scan( list = &((wl_iscan_results_t*)p_buf->iscan_buf)->results; if (list->version != WL_BSS_INFO_VERSION) { - WL_ERROR(("list->version %d != WL_BSS_INFO_VERSION\n", list->version)); + WL_IW_ERROR(("list->version %d != WL_BSS_INFO_VERSION\n", list->version)); } bi = NULL; @@ -1846,7 +1866,7 @@ wl_iw_iscan_get_scan( // terence 20150419: limit the max. rssi to -2 or the bss will be filtered out in android OS rssi = MIN(dtoh16(bi->RSSI), RSSI_MAXVAL); channel = (bi->ctl_ch == 0) ? CHSPEC_CHANNEL(bi->chanspec) : bi->ctl_ch; - WL_SCAN(("BSSID="MACSTR", channel=%d, RSSI=%d, SSID=\"%s\"\n", + WL_IW_SCAN(("BSSID="MACSTR", channel=%d, RSSI=%d, SSID=\"%s\"\n", MAC2STR(bi->BSSID.octet), channel, rssi, bi->SSID)); /* First entry must be the BSSID */ @@ -1919,7 +1939,7 @@ wl_iw_iscan_get_scan( dwrq->length = event - extra; dwrq->flags = 0; /* todo */ - WL_SCAN(("apcnt=%d\n", apcnt)); + WL_IW_SCAN(("apcnt=%d\n", apcnt)); return 0; #endif @@ -1940,7 +1960,7 @@ wl_iw_set_essid( struct dhd_pub *dhd = dhd_get_pub(dev); wl_wext_info_t *wext_info = NULL; - WL_TRACE(("%s: SIOCSIWESSID\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWESSID\n", dev->name)); DHD_CHECK(dhd, dev); wext_info = dhd->wext_info; @@ -1964,7 +1984,7 @@ wl_iw_set_essid( return error; } else { if ((error = dev_wlc_ioctl(dev, WLC_SET_SSID, &ssid, sizeof(ssid)))) { - WL_ERROR(("WLC_SET_SSID failed (%d).\n", error)); + WL_IW_ERROR(("WLC_SET_SSID failed (%d).\n", error)); return error; } WL_MSG(dev->name, "join SSID=\"%s\"\n", ssid.SSID); @@ -1978,7 +1998,7 @@ wl_iw_set_essid( bzero(&scbval, sizeof(scb_val_t)); WL_MSG(dev->name, "WLC_DISASSOC\n"); if ((error = dev_wlc_ioctl(dev, WLC_DISASSOC, &scbval, sizeof(scb_val_t)))) { - WL_ERROR(("WLC_DISASSOC failed (%d).\n", error)); + WL_IW_ERROR(("WLC_DISASSOC failed (%d).\n", error)); return error; } wl_ext_in4way_sync_wext(dev, @@ -1999,18 +2019,22 @@ wl_iw_get_essid( wlc_ssid_t ssid; int error; - WL_TRACE(("%s: SIOCGIWESSID\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWESSID\n", dev->name)); if (!extra) return -EINVAL; if ((error = dev_wlc_ioctl(dev, WLC_GET_SSID, &ssid, sizeof(ssid)))) { - WL_ERROR(("Error getting the SSID %d\n", error)); - return error; + WL_IW_ERROR(("Error getting the SSID %d\n", error)); + /*EOF:FIX return an error here then kernel turns in BUG(), + *the driver cannot handle this case */ + strncpy(ssid.SSID, "$SSID-DHD-BUG$", DOT11_MAX_SSID_LEN); + ssid.SSID_len = strlen(ssid.SSID); + //return error; + } else { + ssid.SSID_len = dtoh32(ssid.SSID_len); } - ssid.SSID_len = dtoh32(ssid.SSID_len); - /* Max SSID length check */ if (ssid.SSID_len > IW_ESSID_MAX_SIZE) { ssid.SSID_len = IW_ESSID_MAX_SIZE; @@ -2038,7 +2062,7 @@ wl_iw_set_nick( ) { wl_iw_t *iw = IW_DEV_IF(dev); - WL_TRACE(("%s: SIOCSIWNICKN\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWNICKN\n", dev->name)); if (!extra) return -EINVAL; @@ -2062,7 +2086,7 @@ wl_iw_get_nick( ) { wl_iw_t *iw = IW_DEV_IF(dev); - WL_TRACE(("%s: SIOCGIWNICKN\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWNICKN\n", dev->name)); if (!extra) return -EINVAL; @@ -2083,7 +2107,7 @@ static int wl_iw_set_rate( wl_rateset_t rateset; int error, rate, i, error_bg, error_a; - WL_TRACE(("%s: SIOCSIWRATE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWRATE\n", dev->name)); /* Get current rateset */ if ((error = dev_wlc_ioctl(dev, WLC_GET_CURR_RATESET, &rateset, sizeof(rateset)))) @@ -2148,7 +2172,7 @@ static int wl_iw_get_rate( { int error, rate; - WL_TRACE(("%s: SIOCGIWRATE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWRATE\n", dev->name)); /* Report the current tx rate */ if ((error = dev_wlc_ioctl(dev, WLC_GET_RATE, &rate, sizeof(rate)))) @@ -2169,7 +2193,7 @@ wl_iw_set_rts( { int error, rts; - WL_TRACE(("%s: SIOCSIWRTS\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWRTS\n", dev->name)); if (vwrq->disabled) rts = DOT11_DEFAULT_RTS_LEN; @@ -2194,7 +2218,7 @@ wl_iw_get_rts( { int error, rts; - WL_TRACE(("%s: SIOCGIWRTS\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWRTS\n", dev->name)); if ((error = dev_wlc_intvar_get(dev, "rtsthresh", &rts))) return error; @@ -2216,7 +2240,7 @@ wl_iw_set_frag( { int error, frag; - WL_TRACE(("%s: SIOCSIWFRAG\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWFRAG\n", dev->name)); if (vwrq->disabled) frag = DOT11_DEFAULT_FRAG_LEN; @@ -2241,7 +2265,7 @@ wl_iw_get_frag( { int error, fragthreshold; - WL_TRACE(("%s: SIOCGIWFRAG\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWFRAG\n", dev->name)); if ((error = dev_wlc_intvar_get(dev, "fragthresh", &fragthreshold))) return error; @@ -2263,7 +2287,7 @@ wl_iw_set_txpow( { int error, disable; uint16 txpwrmw; - WL_TRACE(("%s: SIOCSIWTXPOW\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWTXPOW\n", dev->name)); /* Make sure radio is off or on as far as software is concerned */ disable = vwrq->disabled ? WL_RADIO_SW_DISABLE : 0; @@ -2304,7 +2328,7 @@ wl_iw_get_txpow( int error, disable, txpwrdbm; uint8 result; - WL_TRACE(("%s: SIOCGIWTXPOW\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWTXPOW\n", dev->name)); if ((error = dev_wlc_ioctl(dev, WLC_GET_RADIO, &disable, sizeof(disable))) || (error = dev_wlc_intvar_get(dev, "qtxpower", &txpwrdbm))) @@ -2331,7 +2355,7 @@ wl_iw_set_retry( { int error, lrl, srl; - WL_TRACE(("%s: SIOCSIWRETRY\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWRETRY\n", dev->name)); /* Do not handle "off" or "lifetime" */ if (vwrq->disabled || (vwrq->flags & IW_RETRY_LIFETIME)) @@ -2378,7 +2402,7 @@ wl_iw_get_retry( { int error, lrl, srl; - WL_TRACE(("%s: SIOCGIWRETRY\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWRETRY\n", dev->name)); vwrq->disabled = 0; /* Can't be disabled */ @@ -2420,7 +2444,7 @@ wl_iw_set_encode( wl_wsec_key_t key; int error, val, wsec; - WL_TRACE(("%s: SIOCSIWENCODE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWENCODE\n", dev->name)); memset(&key, 0, sizeof(key)); @@ -2509,7 +2533,7 @@ wl_iw_get_encode( wl_wsec_key_t key; int error, val, wsec, auth; - WL_TRACE(("%s: SIOCGIWENCODE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWENCODE\n", dev->name)); /* assure default values of zero for things we don't touch */ bzero(&key, sizeof(wl_wsec_key_t)); @@ -2571,7 +2595,7 @@ wl_iw_set_power( { int error, pm; - WL_TRACE(("%s: SIOCSIWPOWER\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWPOWER\n", dev->name)); pm = vwrq->disabled ? PM_OFF : PM_MAX; @@ -2592,7 +2616,7 @@ wl_iw_get_power( { int error, pm; - WL_TRACE(("%s: SIOCGIWPOWER\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWPOWER\n", dev->name)); if ((error = dev_wlc_ioctl(dev, WLC_GET_PM, &pm, sizeof(pm)))) return error; @@ -2618,7 +2642,7 @@ wl_iw_set_wpaie( uchar *p = buf; int wapi_ie_size; - WL_TRACE(("%s: SIOCSIWGENIE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWGENIE\n", dev->name)); if (extra[0] == DOT11_MNG_WAPI_ID) { @@ -2641,7 +2665,7 @@ wl_iw_get_wpaie( char *extra ) { - WL_TRACE(("%s: SIOCGIWGENIE\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWGENIE\n", dev->name)); iwp->length = 64; dev_wlc_bufvar_get(dev, "wpaie", extra, iwp->length); return 0; @@ -2659,7 +2683,7 @@ wl_iw_set_encodeext( int error; struct iw_encode_ext *iwe; - WL_TRACE(("%s: SIOCSIWENCODEEXT\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWENCODEEXT\n", dev->name)); memset(&key, 0, sizeof(key)); iwe = (struct iw_encode_ext *)extra; @@ -2683,7 +2707,7 @@ wl_iw_set_encodeext( /* check for key index change */ if (key.len == 0) { if (iwe->ext_flags & IW_ENCODE_EXT_SET_TX_KEY) { - WL_WSEC(("Changing the the primary Key to %d\n", key.index)); + WL_IW_WSEC(("Changing the the primary Key to %d\n", key.index)); /* change the key index .... */ key.index = htod32(key.index); error = dev_wlc_ioctl(dev, WLC_SET_KEY_PRIMARY, @@ -2720,10 +2744,10 @@ wl_iw_set_encodeext( bcopy(keystring, pmk.key, len); pmk.flags = htod16(WSEC_PASSPHRASE); - WL_WSEC(("set key %s\n", keystring)); + WL_IW_WSEC(("set key %s\n", keystring)); error = dev_wlc_ioctl(dev, WLC_SET_WSEC_PMK, &pmk, sizeof(pmk)); if (error) { - WL_ERROR(("WLC_SET_WSEC_PMK error %d\n", error)); + WL_IW_ERROR(("WLC_SET_WSEC_PMK error %d\n", error)); return error; } } @@ -2732,9 +2756,9 @@ wl_iw_set_encodeext( if (iwe->key_len > sizeof(key.data)) return -EINVAL; - WL_WSEC(("Setting the key index %d\n", key.index)); + WL_IW_WSEC(("Setting the key index %d\n", key.index)); if (iwe->ext_flags & IW_ENCODE_EXT_SET_TX_KEY) { - WL_WSEC(("key is a Primary Key\n")); + WL_IW_WSEC(("key is a Primary Key\n")); key.flags = WL_PRIMARY_KEY; } @@ -2814,7 +2838,7 @@ wl_iw_set_pmksa( struct dhd_pub *dhd = dhd_get_pub(dev); wl_wext_info_t *wext_info = NULL; - WL_TRACE(("%s: SIOCSIWPMKSA\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWPMKSA\n", dev->name)); DHD_CHECK(dhd, dev); wext_info = dhd->wext_info; pmk_list = &wext_info->pmk_list; @@ -2823,7 +2847,7 @@ wl_iw_set_pmksa( iwpmksa = (struct iw_pmksa *)extra; bzero((char *)eabuf, ETHER_ADDR_STR_LEN); if (iwpmksa->cmd == IW_PMKSA_FLUSH) { - WL_TRACE(("wl_iw_set_pmksa - IW_PMKSA_FLUSH\n")); + WL_IW_TRACE(("wl_iw_set_pmksa - IW_PMKSA_FLUSH\n")); bzero((char *)pmk_list, sizeof(struct pmk_list)); } if (iwpmksa->cmd == IW_PMKSA_REMOVE) { @@ -2833,12 +2857,12 @@ wl_iw_set_pmksa( bcopy(&iwpmksa->pmkid[0], &pmkidptr->pmkid[0].PMKID, WPA2_PMKID_LEN); { uint j; - WL_TRACE(("wl_iw_set_pmksa,IW_PMKSA_REMOVE - PMKID: %s = ", + WL_IW_TRACE(("wl_iw_set_pmksa,IW_PMKSA_REMOVE - PMKID: %s = ", bcm_ether_ntoa(&pmkidptr->pmkid[0].BSSID, eabuf))); for (j = 0; j < WPA2_PMKID_LEN; j++) - WL_TRACE(("%02x ", pmkidptr->pmkid[0].PMKID[j])); - WL_TRACE(("\n")); + WL_IW_TRACE(("%02x ", pmkidptr->pmkid[0].PMKID[j])); + WL_IW_TRACE(("\n")); } for (i = 0; i < pmk_list->pmkids.npmkid; i++) if (!bcmp(&iwpmksa->bssid.sa_data[0], &pmkid_array[i].BSSID, @@ -2865,23 +2889,23 @@ wl_iw_set_pmksa( uint k; k = pmk_list->pmkids.npmkid; BCM_REFERENCE(k); - WL_TRACE(("wl_iw_set_pmksa,IW_PMKSA_ADD - PMKID: %s = ", + WL_IW_TRACE(("wl_iw_set_pmksa,IW_PMKSA_ADD - PMKID: %s = ", bcm_ether_ntoa(&pmkid_array[k].BSSID, eabuf))); for (j = 0; j < WPA2_PMKID_LEN; j++) - WL_TRACE(("%02x ", pmkid_array[k].PMKID[j])); - WL_TRACE(("\n")); + WL_IW_TRACE(("%02x ", pmkid_array[k].PMKID[j])); + WL_IW_TRACE(("\n")); } pmk_list->pmkids.npmkid++; } - WL_TRACE(("PRINTING pmkid LIST - No of elements %d\n", pmk_list->pmkids.npmkid)); + WL_IW_TRACE(("PRINTING pmkid LIST - No of elements %d\n", pmk_list->pmkids.npmkid)); for (i = 0; i < pmk_list->pmkids.npmkid; i++) { uint j; - WL_TRACE(("PMKID[%d]: %s = ", i, + WL_IW_TRACE(("PMKID[%d]: %s = ", i, bcm_ether_ntoa(&pmkid_array[i].BSSID, eabuf))); for (j = 0; j < WPA2_PMKID_LEN; j++) - WL_TRACE(("%02x ", pmkid_array[i].PMKID[j])); + WL_IW_TRACE(("%02x ", pmkid_array[i].PMKID[j])); printf("\n"); } dev_wlc_bufvar_set(dev, "pmkid_info", (char *)pmk_list, sizeof(struct pmk_list)); @@ -2896,7 +2920,7 @@ wl_iw_get_encodeext( char *extra ) { - WL_TRACE(("%s: SIOCGIWENCODEEXT\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWENCODEEXT\n", dev->name)); return 0; } @@ -2915,12 +2939,12 @@ wl_iw_set_wpaauth( int val = 0; wl_iw_t *iw = IW_DEV_IF(dev); - WL_TRACE(("%s: SIOCSIWAUTH\n", dev->name)); + WL_IW_TRACE(("%s: SIOCSIWAUTH\n", dev->name)); paramid = vwrq->flags & IW_AUTH_INDEX; paramval = vwrq->value; - WL_TRACE(("%s: SIOCSIWAUTH, paramid = 0x%0x, paramval = 0x%0x\n", + WL_IW_TRACE(("%s: SIOCSIWAUTH, paramid = 0x%0x, paramval = 0x%0x\n", dev->name, paramid, paramval)); switch (paramid) { @@ -2937,7 +2961,7 @@ wl_iw_set_wpaauth( else if (paramval & IW_AUTH_WAPI_VERSION_1) val = WAPI_AUTH_UNSPECIFIED; #endif - WL_TRACE(("%d: setting wpa_auth to 0x%0x\n", __LINE__, val)); + WL_IW_TRACE(("%d: setting wpa_auth to 0x%0x\n", __LINE__, val)); if ((error = dev_wlc_intvar_set(dev, "wpa_auth", val))) return error; break; @@ -2954,10 +2978,10 @@ wl_iw_set_wpaauth( } if ((error = dev_wlc_intvar_get(dev, "wsec", &val))) { - WL_ERROR(("wsec error %d\n", error)); + WL_IW_ERROR(("wsec error %d\n", error)); return error; } - WL_WSEC(("get wsec=0x%x\n", val)); + WL_IW_WSEC(("get wsec=0x%x\n", val)); cipher_combined = iw->gwsec | iw->pwsec; val &= ~(WEP_ENABLED | TKIP_ENABLED | AES_ENABLED); @@ -2974,22 +2998,22 @@ wl_iw_set_wpaauth( #endif if (iw->privacy_invoked && !val) { - WL_WSEC(("%s: 'Privacy invoked' TRUE but clearing wsec, assuming " + WL_IW_WSEC(("%s: 'Privacy invoked' TRUE but clearing wsec, assuming " "we're a WPS enrollee\n", dev->name)); if ((error = dev_wlc_intvar_set(dev, "is_WPS_enrollee", TRUE))) { - WL_WSEC(("Failed to set iovar is_WPS_enrollee\n")); + WL_IW_WSEC(("Failed to set iovar is_WPS_enrollee\n")); return error; } } else if (val) { if ((error = dev_wlc_intvar_set(dev, "is_WPS_enrollee", FALSE))) { - WL_WSEC(("Failed to clear iovar is_WPS_enrollee\n")); + WL_IW_WSEC(("Failed to clear iovar is_WPS_enrollee\n")); return error; } } - WL_WSEC(("set wsec=0x%x\n", val)); + WL_IW_WSEC(("set wsec=0x%x\n", val)); if ((error = dev_wlc_intvar_set(dev, "wsec", val))) { - WL_ERROR(("wsec error %d\n", error)); + WL_IW_ERROR(("wsec error %d\n", error)); return error; } @@ -2997,17 +3021,17 @@ wl_iw_set_wpaauth( * handshake. */ if (dev_wlc_intvar_get(dev, "fbt_cap", &fbt_cap) == 0) { - WL_WSEC(("get fbt_cap=0x%x\n", fbt_cap)); + WL_IW_WSEC(("get fbt_cap=0x%x\n", fbt_cap)); if (fbt_cap == WLC_FBT_CAP_DRV_4WAY_AND_REASSOC) { if ((paramid == IW_AUTH_CIPHER_PAIRWISE) && (val & AES_ENABLED)) { if ((error = dev_wlc_intvar_set(dev, "sup_wpa", 1))) { - WL_ERROR(("sup_wpa 1 error %d\n", error)); + WL_IW_ERROR(("sup_wpa 1 error %d\n", error)); return error; } } else if (val == 0) { if ((error = dev_wlc_intvar_set(dev, "sup_wpa", 0))) { - WL_ERROR(("sup_wpa 0 error %d\n", error)); + WL_IW_ERROR(("sup_wpa 0 error %d\n", error)); return error; } } @@ -3018,10 +3042,10 @@ wl_iw_set_wpaauth( case IW_AUTH_KEY_MGMT: if ((error = dev_wlc_intvar_get(dev, "wpa_auth", &val))) { - WL_ERROR(("wpa_auth error %d\n", error)); + WL_IW_ERROR(("wpa_auth error %d\n", error)); return error; } - WL_WSEC(("get wpa_auth to %d\n", val)); + WL_IW_WSEC(("get wpa_auth to %d\n", val)); if (val & (WPA_AUTH_PSK | WPA_AUTH_UNSPECIFIED)) { if (paramval & (IW_AUTH_KEY_MGMT_FT_PSK | IW_AUTH_KEY_MGMT_PSK)) @@ -3043,7 +3067,7 @@ wl_iw_set_wpaauth( if (paramval & (IW_AUTH_KEY_MGMT_WAPI_PSK | IW_AUTH_KEY_MGMT_WAPI_CERT)) val = WAPI_AUTH_UNSPECIFIED; #endif - WL_TRACE(("%d: setting wpa_auth to %d\n", __LINE__, val)); + WL_IW_TRACE(("%d: setting wpa_auth to %d\n", __LINE__, val)); if ((error = dev_wlc_intvar_set(dev, "wpa_auth", val))) return error; break; @@ -3068,7 +3092,7 @@ wl_iw_set_wpaauth( case IW_AUTH_WPA_ENABLED: if (paramval == 0) { val = 0; - WL_TRACE(("%d: setting wpa_auth to %d\n", __LINE__, val)); + WL_IW_TRACE(("%d: setting wpa_auth to %d\n", __LINE__, val)); error = dev_wlc_intvar_set(dev, "wpa_auth", val); return error; } @@ -3088,7 +3112,7 @@ wl_iw_set_wpaauth( #if WIRELESS_EXT > 17 case IW_AUTH_ROAMING_CONTROL: - WL_TRACE(("IW_AUTH_ROAMING_CONTROL\n")); + WL_IW_TRACE(("IW_AUTH_ROAMING_CONTROL\n")); /* driver control or user space app control */ break; @@ -3098,7 +3122,7 @@ wl_iw_set_wpaauth( if (paramval == 0) { iw->privacy_invoked = FALSE; if ((error = dev_wlc_intvar_set(dev, "is_WPS_enrollee", FALSE))) { - WL_WSEC(("Failed to clear iovar is_WPS_enrollee\n")); + WL_IW_WSEC(("Failed to clear iovar is_WPS_enrollee\n")); return error; } } else { @@ -3109,12 +3133,12 @@ wl_iw_set_wpaauth( if (!WSEC_ENABLED(wsec)) { /* if privacy is true, but wsec is false, we are a WPS enrollee */ if ((error = dev_wlc_intvar_set(dev, "is_WPS_enrollee", TRUE))) { - WL_WSEC(("Failed to set iovar is_WPS_enrollee\n")); + WL_IW_WSEC(("Failed to set iovar is_WPS_enrollee\n")); return error; } } else { if ((error = dev_wlc_intvar_set(dev, "is_WPS_enrollee", FALSE))) { - WL_WSEC(("Failed to clear iovar is_WPS_enrollee\n")); + WL_IW_WSEC(("Failed to clear iovar is_WPS_enrollee\n")); return error; } } @@ -3133,12 +3157,12 @@ wl_iw_set_wpaauth( if (paramval) { val |= SMS4_ENABLED; if ((error = dev_wlc_intvar_set(dev, "wsec", val))) { - WL_ERROR(("setting wsec to 0x%0x returned error %d\n", + WL_IW_ERROR(("setting wsec to 0x%0x returned error %d\n", val, error)); return error; } if ((error = dev_wlc_intvar_set(dev, "wpa_auth", WAPI_AUTH_UNSPECIFIED))) { - WL_ERROR(("setting wpa_auth(%d) returned %d\n", + WL_IW_ERROR(("setting wpa_auth(%d) returned %d\n", WAPI_AUTH_UNSPECIFIED, error)); return error; @@ -3170,7 +3194,7 @@ wl_iw_get_wpaauth( int val; wl_iw_t *iw = IW_DEV_IF(dev); - WL_TRACE(("%s: SIOCGIWAUTH\n", dev->name)); + WL_IW_TRACE(("%s: SIOCGIWAUTH\n", dev->name)); paramid = vwrq->flags & IW_AUTH_INDEX; @@ -3238,7 +3262,7 @@ wl_iw_get_wpaauth( #if WIRELESS_EXT > 17 case IW_AUTH_ROAMING_CONTROL: - WL_ERROR(("IW_AUTH_ROAMING_CONTROL\n")); + WL_IW_ERROR(("IW_AUTH_ROAMING_CONTROL\n")); /* driver control or user space app control */ break; @@ -3563,7 +3587,7 @@ wl_iw_conn_status_str(uint32 event_type, uint32 status, uint32 reason, if (cause) { memset(stringBuf, 0, buflen); (void)snprintf(stringBuf, buflen, "%s %s %02d %02d", name, cause, status, reason); - WL_TRACE(("Connection status: %s\n", stringBuf)); + WL_IW_TRACE(("Connection status: %s\n", stringBuf)); return TRUE; } else { return FALSE; @@ -3607,7 +3631,9 @@ wl_iw_event(struct net_device *dev, struct wl_wext_info *wext_info, uint16 flags = ntoh16(e->flags); uint32 datalen = ntoh32(e->datalen); uint32 status = ntoh32(e->status); +#ifdef DHD_DEBUG uint32 reason = ntoh32(e->reason); +#endif #ifndef WL_ESCAN iscan_info_t *iscan = &wext_info->iscan; #endif @@ -3626,27 +3652,43 @@ wl_iw_event(struct net_device *dev, struct wl_wext_info *wext_info, case WLC_E_JOIN: case WLC_E_ASSOC_IND: case WLC_E_REASSOC_IND: + WL_MSG_RLMT(dev->name, &e->addr, ETHER_ADDR_LEN, + "Join/Assoc/Reassoc IND with "MACSTR", event %d, reason %d\n", + MAC2STR((u8 *)wrqu.addr.sa_data), event_type, reason); cmd = IWEVREGISTERED; break; case WLC_E_DEAUTH: case WLC_E_DISASSOC: + WL_MSG_RLMT(dev->name, &e->addr, ETHER_ADDR_LEN, + "Deauth/Disassoc with "MACSTR", event %d, reason %d\n", + MAC2STR((u8 *)wrqu.addr.sa_data), event_type, reason); +#ifndef WL_CFG80211 wl_ext_in4way_sync_wext(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, WL_EXT_STATUS_DISCONNECTED, NULL); - WL_MSG_RLMT(dev->name, &e->addr, ETHER_ADDR_LEN, - "disconnected with "MACSTR", event %d, reason %d\n", - MAC2STR((u8 *)wrqu.addr.sa_data), event_type, reason); +#else + wl_ext_in4way_sync(dev, + STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, + WL_EXT_STATUS_DISCONNECTED, wrqu.addr.sa_data); +#endif break; case WLC_E_DEAUTH_IND: case WLC_E_DISASSOC_IND: - cmd = SIOCGIWAP; - WL_MSG(dev->name, "disconnected with "MACSTR", event %d, reason %d\n", + WL_MSG_RLMT(dev->name, &e->addr, ETHER_ADDR_LEN, + "Deauth/Disassoc IND with "MACSTR", event %d, reason %d\n", MAC2STR((u8 *)wrqu.addr.sa_data), event_type, reason); + cmd = SIOCGIWAP; bzero(wrqu.addr.sa_data, ETHER_ADDR_LEN); bzero(&extra, ETHER_ADDR_LEN); +#ifndef WL_CFG80211 wl_ext_in4way_sync_wext(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, WL_EXT_STATUS_DISCONNECTED, NULL); +#else + wl_ext_in4way_sync(dev, + STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, + WL_EXT_STATUS_DISCONNECTED, wrqu.addr.sa_data); +#endif break; case WLC_E_LINK: @@ -3656,9 +3698,15 @@ wl_iw_event(struct net_device *dev, struct wl_wext_info *wext_info, MAC2STR((u8 *)wrqu.addr.sa_data), reason); bzero(wrqu.addr.sa_data, ETHER_ADDR_LEN); bzero(&extra, ETHER_ADDR_LEN); +#ifndef WL_CFG80211 wl_ext_in4way_sync_wext(dev, STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, WL_EXT_STATUS_DISCONNECTED, NULL); +#else + wl_ext_in4way_sync(dev, + STA_NO_SCAN_IN4WAY|STA_NO_BTC_IN4WAY|STA_WAIT_DISCONNECTED, + WL_EXT_STATUS_DISCONNECTED, wrqu.addr.sa_data); +#endif } else { WL_MSG(dev->name, "Link UP with "MACSTR"\n", MAC2STR((u8 *)wrqu.addr.sa_data)); @@ -3670,7 +3718,7 @@ wl_iw_event(struct net_device *dev, struct wl_wext_info *wext_info, wrqu.data.length = datalen + 1; extra[0] = WLC_E_ACTION_FRAME; memcpy(&extra[1], data, datalen); - WL_TRACE(("WLC_E_ACTION_FRAME len %d \n", wrqu.data.length)); + WL_IW_TRACE(("WLC_E_ACTION_FRAME len %d \n", wrqu.data.length)); } break; @@ -3680,7 +3728,7 @@ wl_iw_event(struct net_device *dev, struct wl_wext_info *wext_info, wrqu.data.length = sizeof(status) + 1; extra[0] = WLC_E_ACTION_FRAME_COMPLETE; memcpy(&extra[1], &status, sizeof(status)); - WL_TRACE(("wl_iw_event status %d \n", status)); + WL_IW_TRACE(("wl_iw_event status %d \n", status)); } break; #endif /* WIRELESS_EXT > 14 */ @@ -3746,7 +3794,7 @@ wl_iw_event(struct net_device *dev, struct wl_wext_info *wext_info, #if WIRELESS_EXT > 14 cmd = SIOCGIWSCAN; #endif - WL_TRACE(("event WLC_E_SCAN_COMPLETE\n")); + WL_IW_TRACE(("event WLC_E_SCAN_COMPLETE\n")); // terence 20150224: fix "wlan0: (WE) : Wireless Event too big (65306)" memset(&wrqu, 0, sizeof(wrqu)); if ((iscan) && (iscan->sysioc_pid >= 0) && @@ -3805,17 +3853,17 @@ static int wl_iw_get_wireless_stats_cbfn(void *ctx, uint8 *data, uint16 type, ui wstats->discard.retries = dtoh32(cnt->txfail); wstats->discard.misc = dtoh32(cnt->rxrunt) + dtoh32(cnt->rxgiant); wstats->miss.beacon = 0; - WL_TRACE(("wl_iw_get_wireless_stats counters txframe=%d txbyte=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters txframe=%d txbyte=%d\n", dtoh32(cnt->txframe), dtoh32(cnt->txbyte))); - WL_TRACE(("wl_iw_get_wireless_stats counters rxundec=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters rxundec=%d\n", dtoh32(cnt->rxundec))); - WL_TRACE(("wl_iw_get_wireless_stats counters txfail=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters txfail=%d\n", dtoh32(cnt->txfail))); - WL_TRACE(("wl_iw_get_wireless_stats counters rxfragerr=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters rxfragerr=%d\n", dtoh32(cnt->rxfragerr))); - WL_TRACE(("wl_iw_get_wireless_stats counters rxrunt=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters rxrunt=%d\n", dtoh32(cnt->rxrunt))); - WL_TRACE(("wl_iw_get_wireless_stats counters rxgiant=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters rxgiant=%d\n", dtoh32(cnt->rxgiant))); break; } @@ -3832,15 +3880,15 @@ static int wl_iw_get_wireless_stats_cbfn(void *ctx, uint8 *data, uint16 type, ui printf("counter structure length mismatch! %d != %d\n", len, WL_CNT_MCST_STRUCT_SZ); } - WL_TRACE(("wl_iw_get_wireless_stats counters rxfrmtoolong=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters rxfrmtoolong=%d\n", dtoh32(cnt->rxfrmtoolong))); - WL_TRACE(("wl_iw_get_wireless_stats counters rxbadplcp=%d\n", + WL_IW_TRACE(("wl_iw_get_wireless_stats counters rxbadplcp=%d\n", dtoh32(cnt->rxbadplcp))); BCM_REFERENCE(cnt); break; } default: - WL_ERROR(("%d: Unsupported type %d\n", __LINE__, type)); + WL_IW_ERROR(("%d: Unsupported type %d\n", __LINE__, type)); break; } return res; @@ -3862,22 +3910,22 @@ int wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstat phy_noise = 0; if ((res = dev_wlc_ioctl(dev, WLC_GET_PHY_NOISE, &phy_noise, sizeof(phy_noise)))) { - WL_TRACE(("WLC_GET_PHY_NOISE error=%d\n", res)); + WL_IW_TRACE(("WLC_GET_PHY_NOISE error=%d\n", res)); goto done; } phy_noise = dtoh32(phy_noise); - WL_TRACE(("wl_iw_get_wireless_stats phy noise=%d\n *****", phy_noise)); + WL_IW_TRACE(("wl_iw_get_wireless_stats phy noise=%d\n *****", phy_noise)); memset(&scb_val, 0, sizeof(scb_val)); if ((res = dev_wlc_ioctl(dev, WLC_GET_RSSI, &scb_val, sizeof(scb_val_t)))) { - WL_TRACE(("WLC_GET_RSSI error=%d\n", res)); + WL_IW_TRACE(("WLC_GET_RSSI error=%d\n", res)); goto done; } rssi = dtoh32(scb_val.val); rssi = MIN(rssi, RSSI_MAXVAL); - WL_TRACE(("wl_iw_get_wireless_stats rssi=%d ****** \n", rssi)); + WL_IW_TRACE(("wl_iw_get_wireless_stats rssi=%d ****** \n", rssi)); if (rssi <= WL_IW_RSSI_NO_SIGNAL) wstats->qual.qual = 0; else if (rssi <= WL_IW_RSSI_VERY_LOW) @@ -3901,7 +3949,7 @@ int wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstat #endif /* WIRELESS_EXT > 18 */ #if WIRELESS_EXT > 11 - WL_TRACE(("wl_iw_get_wireless_stats counters\n *****")); + WL_IW_TRACE(("wl_iw_get_wireless_stats counters\n *****")); cntbuf = kmalloc(MAX_WLIW_IOCTL_LEN, GFP_KERNEL); if (!cntbuf) { @@ -3913,7 +3961,7 @@ int wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstat res = dev_wlc_bufvar_get(dev, "counters", cntbuf, MAX_WLIW_IOCTL_LEN); if (res) { - WL_ERROR(("wl_iw_get_wireless_stats counters failed error=%d ****** \n", res)); + WL_IW_ERROR(("wl_iw_get_wireless_stats counters failed error=%d ****** \n", res)); goto done; } @@ -3925,7 +3973,7 @@ int wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstat CHK_CNTBUF_DATALEN(cntbuf, MAX_WLIW_IOCTL_LEN); #endif if (ver > WL_CNT_T_VERSION) { - WL_TRACE(("\tIncorrect version of counters struct: expected %d; got %d\n", + WL_IW_TRACE(("\tIncorrect version of counters struct: expected %d; got %d\n", WL_CNT_T_VERSION, ver)); res = BCME_VERSION; goto done; @@ -3936,7 +3984,7 @@ int wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstat memset(&revinfo, 0, sizeof(revinfo)); res = dev_wlc_ioctl(dev, WLC_GET_REVINFO, &revinfo, sizeof(revinfo)); if (res) { - WL_ERROR(("WLC_GET_REVINFO failed %d\n", res)); + WL_IW_ERROR(("WLC_GET_REVINFO failed %d\n", res)); goto done; } corerev = dtoh32(revinfo.corerev); @@ -3945,7 +3993,7 @@ int wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstat #ifdef WL_NAN res = wl_cntbuf_to_xtlv_format(NULL, cntinfo, MAX_WLIW_IOCTL_LEN, corerev); if (res) { - WL_ERROR(("wl_cntbuf_to_xtlv_format failed %d\n", res)); + WL_IW_ERROR(("wl_cntbuf_to_xtlv_format failed %d\n", res)); goto done; } @@ -3972,7 +4020,7 @@ wl_iw_timerfunc(ulong data) iscan_info_t *iscan = (iscan_info_t *)data; iscan->timer_on = 0; if (iscan->iscan_state != ISCAN_STATE_IDLE) { - WL_TRACE(("timer trigger\n")); + WL_IW_TRACE(("timer trigger\n")); up(&iscan->sysioc_sem); } } @@ -4097,9 +4145,9 @@ wl_iw_iscan_get(iscan_info_t *iscan) results->buflen = dtoh32(results->buflen); results->version = dtoh32(results->version); results->count = dtoh32(results->count); - WL_TRACE(("results->count = %d\n", results->count)); + WL_IW_TRACE(("results->count = %d\n", results->count)); - WL_TRACE(("results->buflen = %d\n", results->buflen)); + WL_IW_TRACE(("results->buflen = %d\n", results->buflen)); status = dtoh32(list_buf->status); return status; } @@ -4140,7 +4188,7 @@ _iscan_sysioc_thread(void *data) switch (status) { case WL_SCAN_RESULTS_PARTIAL: - WL_TRACE(("iscanresults incomplete\n")); + WL_IW_TRACE(("iscanresults incomplete\n")); #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)) rtnl_lock(); #endif @@ -4155,24 +4203,24 @@ _iscan_sysioc_thread(void *data) iscan->timer_on = 1; break; case WL_SCAN_RESULTS_SUCCESS: - WL_TRACE(("iscanresults complete\n")); + WL_IW_TRACE(("iscanresults complete\n")); iscan->iscan_state = ISCAN_STATE_IDLE; wl_iw_send_scan_complete(iscan); break; case WL_SCAN_RESULTS_PENDING: - WL_TRACE(("iscanresults pending\n")); + WL_IW_TRACE(("iscanresults pending\n")); /* Reschedule the timer */ iscan->timer.expires = jiffies + msecs_to_jiffies(iscan->timer_ms); add_timer(&iscan->timer); iscan->timer_on = 1; break; case WL_SCAN_RESULTS_ABORTED: - WL_TRACE(("iscanresults aborted\n")); + WL_IW_TRACE(("iscanresults aborted\n")); iscan->iscan_state = ISCAN_STATE_IDLE; wl_iw_send_scan_complete(iscan); break; default: - WL_TRACE(("iscanresults returned unknown status %d\n", status)); + WL_IW_TRACE(("iscanresults returned unknown status %d\n", status)); break; } } @@ -4223,7 +4271,7 @@ wl_iw_attach(struct net_device *dev, dhd_pub_t *dhdp) if (!dev) return 0; - WL_TRACE(("Enter\n")); + WL_IW_TRACE(("Enter\n")); wext_info = (void *)kzalloc(sizeof(struct wl_wext_info), GFP_KERNEL); if (!wext_info) @@ -4264,7 +4312,7 @@ wl_iw_attach(struct net_device *dev, dhd_pub_t *dhdp) ret = wl_ext_event_register(dev, dhdp, WLC_E_LAST, wl_iw_event, dhdp->wext_info, PRIO_EVENT_WEXT); if (ret) { - WL_ERROR(("wl_ext_event_register err %d\n", ret)); + WL_IW_ERROR(("wl_ext_event_register err %d\n", ret)); goto exit; } @@ -4282,7 +4330,7 @@ wl_iw_down(struct net_device *dev, dhd_pub_t *dhdp) if (dhdp) { wext_info = dhdp->wext_info; } else { - WL_ERROR (("dhd is NULL\n")); + WL_IW_ERROR (("dhd is NULL\n")); return; } } @@ -4296,7 +4344,7 @@ wl_iw_up(struct net_device *dev, dhd_pub_t *dhdp) if (dhdp) { wext_info = dhdp->wext_info; } else { - WL_ERROR (("dhd is NULL\n")); + WL_IW_ERROR (("dhd is NULL\n")); return -ENODEV; } @@ -4323,7 +4371,7 @@ wl_iw_autochannel(struct net_device *dev, char* command, int total_len) } else if (dhd->escan->autochannel == 2) { bytes_written = snprintf(command, total_len, "2g=%d 5g=%d", dhd->escan->best_2g_ch, dhd->escan->best_5g_ch); - WL_TRACE(("command result is %s\n", command)); + WL_IW_TRACE(("command result is %s\n", command)); ret = bytes_written; } #endif diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_linux_mon.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_linux_mon.c index 4ab4f7edde5ac..f2d4df7802cef 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_linux_mon.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_linux_mon.c @@ -62,8 +62,24 @@ int dhd_monitor_uninit(void); #ifndef DHD_MAX_IFS #define DHD_MAX_IFS 16 #endif // endif -#define MON_PRINT(format, ...) printk("DHD-MON: %s " format, __func__, ##__VA_ARGS__) -#define MON_TRACE MON_PRINT + +#define WLDEV_ERROR_MSG(x, args...) \ + do { \ + printk(KERN_ERR DHD_LOG_PREFIXS "WL-MON: " x, ## args); \ + } while (0) +#define WLDEV_ERROR(x) WLDEV_ERROR_MSG x + +#define WLDEV_INFO_MSG(x, args...) \ + do { \ + printk(KERN_INFO DHD_LOG_PREFIXS "WL-MON: " x, ## args); \ + } while (0) +#define WLDEV_INFO(x) WLDEV_INFO_MSG x + +#define WLDEV_DBG_MSG(x, args...) \ + do { \ + printk(KERN_DEBUG DHD_LOG_PREFIXS "WL-MON: " x, ## args); \ + } while (0) +#define WLDEV_DBG(x) WLDEV_DBG_MSG x typedef struct monitor_interface { int radiotap_enabled; @@ -161,7 +177,7 @@ static int dhd_mon_if_open(struct net_device *ndev) { int ret = 0; - MON_PRINT("enter\n"); + WLDEV_DBG(("enter\n")); return ret; } @@ -169,7 +185,7 @@ static int dhd_mon_if_stop(struct net_device *ndev) { int ret = 0; - MON_PRINT("enter\n"); + WLDEV_DBG(("enter\n")); return ret; } @@ -188,11 +204,11 @@ static int dhd_mon_if_subif_start_xmit(struct sk_buff *skb, struct net_device *n struct ieee80211_radiotap_header *rtap_hdr; monitor_interface* mon_if; - MON_PRINT("enter\n"); + WLDEV_DBG(("enter\n")); mon_if = ndev_to_monif(ndev); if (mon_if == NULL || mon_if->real_ndev == NULL) { - MON_PRINT(" cannot find matched net dev, skip the packet\n"); + WLDEV_ERROR((" cannot find matched net dev, skip the packet\n")); goto fail; } @@ -207,7 +223,7 @@ static int dhd_mon_if_subif_start_xmit(struct sk_buff *skb, struct net_device *n if (unlikely(skb->len < rtap_len)) goto fail; - MON_PRINT("radiotap len (should be 14): %d\n", rtap_len); + WLDEV_DBG(("radiotap len (should be 14): %d\n", rtap_len)); /* Skip the ratio tap header */ skb_pull(skb, rtap_len); @@ -236,7 +252,7 @@ static int dhd_mon_if_subif_start_xmit(struct sk_buff *skb, struct net_device *n memcpy(pdata + sizeof(dst_mac_addr), src_mac_addr, sizeof(src_mac_addr)); PKTSETPRIO(skb, 0); - MON_PRINT("if name: %s, matched if name %s\n", ndev->name, mon_if->real_ndev->name); + WLDEV_DBG(("if name: %s, matched if name %s\n", ndev->name, mon_if->real_ndev->name)); /* Use the real net device to transmit the packet */ ret = dhd_start_xmit(skb, mon_if->real_ndev); @@ -254,10 +270,10 @@ static void dhd_mon_if_set_multicast_list(struct net_device *ndev) mon_if = ndev_to_monif(ndev); if (mon_if == NULL || mon_if->real_ndev == NULL) { - MON_PRINT(" cannot find matched net dev, skip the packet\n"); + WLDEV_ERROR((" cannot find matched net dev, skip the packet\n")); } else { - MON_PRINT("enter, if name: %s, matched if name %s\n", - ndev->name, mon_if->real_ndev->name); + WLDEV_DBG(("enter, if name: %s, matched if name %s\n", + ndev->name, mon_if->real_ndev->name)); } } @@ -268,10 +284,10 @@ static int dhd_mon_if_change_mac(struct net_device *ndev, void *addr) mon_if = ndev_to_monif(ndev); if (mon_if == NULL || mon_if->real_ndev == NULL) { - MON_PRINT(" cannot find matched net dev, skip the packet\n"); + WLDEV_ERROR((" cannot find matched net dev, skip the packet\n")); } else { - MON_PRINT("enter, if name: %s, matched if name %s\n", - ndev->name, mon_if->real_ndev->name); + WLDEV_DBG(("enter, if name: %s, matched if name %s\n", + ndev->name, mon_if->real_ndev->name)); } return ret; } @@ -290,9 +306,10 @@ int dhd_add_monitor(const char *name, struct net_device **new_ndev) mutex_lock(&g_monitor.lock); - MON_TRACE("enter, if name: %s\n", name); + WLDEV_DBG(("enter, if name: %s\n", name)); + if (!name || !new_ndev) { - MON_PRINT("invalid parameters\n"); + WLDEV_ERROR(("invalid parameters\n")); ret = -EINVAL; goto out; } @@ -306,14 +323,14 @@ int dhd_add_monitor(const char *name, struct net_device **new_ndev) break; } if (idx == -1) { - MON_PRINT("exceeds maximum interfaces\n"); + WLDEV_ERROR(("exceeds maximum interfaces\n")); ret = -EFAULT; goto out; } ndev = alloc_etherdev(sizeof(dhd_linux_monitor_t*)); if (!ndev) { - MON_PRINT("failed to allocate memory\n"); + WLDEV_ERROR(("failed to allocate memory\n")); ret = -ENOMEM; goto out; } @@ -325,7 +342,7 @@ int dhd_add_monitor(const char *name, struct net_device **new_ndev) ret = register_netdevice(ndev); if (ret) { - MON_PRINT(" register_netdevice failed (%d)\n", ret); + WLDEV_ERROR((" register_netdevice failed (%d)\n", ret)); goto out; } @@ -336,8 +353,9 @@ int dhd_add_monitor(const char *name, struct net_device **new_ndev) dhd_mon = (dhd_linux_monitor_t **)netdev_priv(ndev); *dhd_mon = &g_monitor; g_monitor.monitor_state = MONITOR_STATE_INTERFACE_ADDED; - MON_PRINT("net device returned: 0x%p\n", ndev); - MON_PRINT("found a matched net device, name %s\n", g_monitor.mon_if[idx].real_ndev->name); + + WLDEV_DBG(("net device returned: 0x%p\n", ndev)); + WLDEV_DBG(("found a matched net device, name %s\n", g_monitor.mon_if[idx].real_ndev->name)); out: if (ret && ndev) @@ -368,7 +386,8 @@ int dhd_del_monitor(struct net_device *ndev) } if (g_monitor.monitor_state != MONITOR_STATE_INTERFACE_DELETED) - MON_PRINT("IF not found in monitor array, is this a monitor IF? 0x%p\n", ndev); + WLDEV_DBG(("IF not found in monitor array, is this a monitor IF? 0x%p\n", ndev)); + mutex_unlock(&g_monitor.lock); return 0; diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_roam.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_roam.c index 1b3aea2638e81..cacd3d48fbc54 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_roam.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wl_roam.c @@ -56,6 +56,24 @@ static int roam_band = WLC_BAND_AUTO; static roam_channel_cache roam_cache[MAX_ROAM_CACHE]; static uint band2G, band5G, band_bw; +#define WLDEV_ERROR_MSG(x, args...) \ + do { \ + printk(KERN_ERR DHD_LOG_PREFIXS "WL-ROAM: " x, ## args); \ + } while (0) +#define WLDEV_ERROR(x) WLDEV_ERROR_MSG x + +#define WLDEV_INFO_MSG(x, args...) \ + do { \ + printk(KERN_INFO DHD_LOG_PREFIXS "WL-ROAM: " x, ## args); \ + } while (0) +#define WLDEV_INFO(x) WLDEV_INFO_MSG x + +#define WLDEV_DBG_MSG(x, args...) \ + do { \ + printk(KERN_DEBUG DHD_LOG_PREFIXS "WL-ROAM: " x, ## args); \ + } while (0) +#define WLDEV_DBG(x) WLDEV_DBG_MSG x + #ifdef ROAM_CHANNEL_CACHE int init_roam_cache(struct bcm_cfg80211 *cfg, int ioctl_ver) { @@ -67,7 +85,7 @@ int init_roam_cache(struct bcm_cfg80211 *cfg, int ioctl_ver) err = wldev_iovar_getint(dev, "roamscan_mode", &mode); if (err && (err == BCME_UNSUPPORTED)) { /* If firmware doesn't support, return error. Else proceed */ - WL_ERR(("roamscan_mode iovar failed. %d\n", err)); + WLDEV_ERROR(("roamscan_mode iovar failed. %d\n", err)); return err; } @@ -134,7 +152,7 @@ void add_roam_cache(struct bcm_cfg80211 *cfg, wl_bss_info_t *bi) roam_cache[n_roam_cache].ssid_len = bi->SSID_len; channel = wf_chspec_ctlchan(bi->chanspec); - WL_DBG(("CHSPEC = %s, CTL %d\n", wf_chspec_ntoa_ex(bi->chanspec, chanbuf), channel)); + WLDEV_DBG(("CHSPEC = %s, CTL %d\n", wf_chspec_ntoa_ex(bi->chanspec, chanbuf), channel)); roam_cache[n_roam_cache].chanspec = (channel <= CH_MAX_2G_CHANNEL ? band2G : band5G) | band_bw | channel; (void)memcpy_s(roam_cache[n_roam_cache].ssid, bi->SSID_len, bi->SSID, bi->SSID_len); @@ -169,7 +187,7 @@ int get_roam_channel_list(int target_chan, n = 0; } - WL_DBG((" %s: %03d 0x%04X\n", __FUNCTION__, target_chan, channels[0])); + WLDEV_DBG((" %s: %03d 0x%04X\n", __func__, target_chan, channels[0])); for (i = 0; i < n_roam_cache; i++) { chanspec_t ch = roam_cache[i].chanspec; @@ -184,11 +202,11 @@ int get_roam_channel_list(int target_chan, band_match && !is_duplicated_channel(channels, n, ch) && (memcmp(roam_cache[i].ssid, ssid->SSID, ssid->SSID_len) == 0)) { /* match found, add it */ - WL_DBG(("%s: Chanspec = %s\n", __FUNCTION__, + WLDEV_DBG(("%s: Chanspec = %s\n", __func__, wf_chspec_ntoa_ex(ch, chanbuf))); channels[n++] = ch; if (n >= n_channels) { - WL_ERR(("Too many roam scan channels\n")); + WLDEV_ERROR(("Too many roam scan channels\n")); return n; } } @@ -207,11 +225,11 @@ void print_roam_cache(struct bcm_cfg80211 *cfg) return; } - WL_DBG((" %d cache\n", n_roam_cache)); + WLDEV_DBG((" %d cache\n", n_roam_cache)); for (i = 0; i < n_roam_cache; i++) { roam_cache[i].ssid[roam_cache[i].ssid_len] = 0; - WL_DBG(("0x%02X %02d %s\n", roam_cache[i].chanspec, + WLDEV_DBG(("0x%02X %02d %s\n", roam_cache[i].chanspec, roam_cache[i].ssid_len, roam_cache[i].ssid)); } } @@ -231,7 +249,7 @@ static void add_roamcache_channel(wl_roam_channel_list_t *channels, chanspec_t c channels->channels[i] = ch; channels->n++; - WL_DBG((" RCC: %02d 0x%04X\n", + WLDEV_DBG((" RCC: %02d 0x%04X\n", ch & WL_CHANSPEC_CHAN_MASK, ch)); } @@ -248,7 +266,7 @@ void update_roam_cache(struct bcm_cfg80211 *cfg, int ioctl_ver) } if (!wl_get_drv_status(cfg, CONNECTED, dev)) { - WL_DBG(("Not associated\n")); + WLDEV_DBG(("Not associated\n")); return; } @@ -258,13 +276,13 @@ void update_roam_cache(struct bcm_cfg80211 *cfg, int ioctl_ver) error = wldev_iovar_getbuf(dev, "roamscan_channels", 0, 0, (void *)&channel_list, sizeof(channel_list), NULL); if (error) { - WL_ERR(("Failed to get roamscan channels, error = %d\n", error)); + WLDEV_ERROR(("Failed to get roamscan channels, error = %d\n", error)); return; } error = wldev_get_ssid(dev, &ssid); if (error) { - WL_ERR(("Failed to get SSID, err=%d\n", error)); + WLDEV_ERROR(("Failed to get SSID, err=%d\n", error)); return; } @@ -289,11 +307,11 @@ void update_roam_cache(struct bcm_cfg80211 *cfg, int ioctl_ver) error = wldev_iovar_setbuf(dev, "roamscan_channels", &channel_list, sizeof(channel_list), iobuf, sizeof(iobuf), NULL); if (error) { - WL_ERR(("Failed to update roamscan channels, error = %d\n", error)); + WLDEV_ERROR(("Failed to update roamscan channels, error = %d\n", error)); } } - WL_DBG(("%d AP, %d cache item(s), err=%d\n", n_roam_cache, channel_list.n, error)); + WLDEV_DBG(("%d AP, %d cache item(s), err=%d\n", n_roam_cache, channel_list.n, error)); } void wl_update_roamscan_cache_by_band(struct net_device *dev, int band) @@ -306,7 +324,7 @@ void wl_update_roamscan_cache_by_band(struct net_device *dev, int band) error = wldev_iovar_getint(dev, "roamscan_mode", &wes_mode); if (error) { - WL_ERR(("Failed to get roamscan mode, error = %d\n", error)); + WLDEV_ERROR(("Failed to get roamscan mode, error = %d\n", error)); return; } @@ -329,7 +347,7 @@ void wl_update_roamscan_cache_by_band(struct net_device *dev, int band) error = wldev_iovar_getbuf(dev, "roamscan_channels", 0, 0, (void *)&chanlist_before, sizeof(wl_roam_channel_list_t), NULL); if (error) { - WL_ERR(("Failed to get roamscan channels, error = %d\n", error)); + WLDEV_ERROR(("Failed to get roamscan channels, error = %d\n", error)); return; } } @@ -356,7 +374,7 @@ void wl_update_roamscan_cache_by_band(struct net_device *dev, int band) error = wldev_iovar_setbuf(dev, "roamscan_channels", &chanlist_after, sizeof(wl_roam_channel_list_t), iobuf, sizeof(iobuf), NULL); if (error) { - WL_ERR(("Failed to update roamscan channels, error = %d\n", error)); + WLDEV_ERROR(("Failed to update roamscan channels, error = %d\n", error)); } wldev_iovar_setint(dev, "roamscan_mode", ROAMSCAN_MODE_WES); } else { @@ -366,7 +384,7 @@ void wl_update_roamscan_cache_by_band(struct net_device *dev, int band) error = wldev_iovar_setbuf(dev, "roamscan_channels", &chanlist_after, sizeof(wl_roam_channel_list_t), iobuf, sizeof(iobuf), NULL); if (error) { - WL_ERR(("Failed to update roamscan channels, error = %d\n", error)); + WLDEV_ERROR(("Failed to update roamscan channels, error = %d\n", error)); } } } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wldev_common.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wldev_common.c index 969830200f016..bf777366b51ec 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wldev_common.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6/wldev_common.c @@ -49,16 +49,22 @@ #define WLDEV_ERROR_MSG(x, args...) \ do { \ - printk(KERN_INFO DHD_LOG_PREFIXS "WLDEV-ERROR) " x, ## args); \ + printk(KERN_ERR DHD_LOG_PREFIXS "WL-CMN: " x, ## args); \ } while (0) #define WLDEV_ERROR(x) WLDEV_ERROR_MSG x #define WLDEV_INFO_MSG(x, args...) \ do { \ - printk(KERN_INFO DHD_LOG_PREFIXS "WLDEV-INFO) " x, ## args); \ + printk(KERN_INFO DHD_LOG_PREFIXS "WL-CMN: " x, ## args); \ } while (0) #define WLDEV_INFO(x) WLDEV_INFO_MSG x +#define WLDEV_DBG_MSG(x, args...) \ + do { \ + printk(KERN_DEBUG DHD_LOG_PREFIXS "WL-CMN: " x, ## args); \ + } while (0) +#define WLDEV_DBG(x) WLDEV_DBG_MSG x + extern int dhd_ioctl_entry_local(struct net_device *net, wl_ioctl_t *ioc, int cmd); s32 wldev_ioctl( @@ -224,7 +230,7 @@ s32 wldev_mkiovar_bsscfg( iolen = prefixlen + namelen + sizeof(u32) + paramlen; if (iolen > (u32)buflen) { - WLDEV_ERROR(("%s: buffer is too short\n", __FUNCTION__)); + WLDEV_ERROR(("%s: buffer is too short\n", __func__)); return BCME_BUFTOOSHORT; } @@ -419,14 +425,14 @@ int wldev_get_mode( buf = kzalloc(WL_EXTRA_BUF_MAX, GFP_KERNEL); if (!buf) { - WLDEV_ERROR(("%s:ENOMEM\n", __FUNCTION__)); + WLDEV_ERROR(("%s:ENOMEM\n", __func__)); return -ENOMEM; } *(u32*) buf = htod32(WL_EXTRA_BUF_MAX); error = wldev_ioctl_get(dev, WLC_GET_BSS_INFO, (void*)buf, WL_EXTRA_BUF_MAX); if (error) { - WLDEV_ERROR(("%s:failed:%d\n", __FUNCTION__, error)); + WLDEV_ERROR(("%s:failed:%d\n", __func__, error)); kfree(buf); buf = NULL; return error; @@ -455,7 +461,7 @@ int wldev_get_mode( else strncpy(cap, "a", caplen); } else { - WLDEV_ERROR(("%s:Mode get failed\n", __FUNCTION__)); + WLDEV_ERROR(("%s:Mode get failed\n", __func__)); error = BCME_ERROR; } @@ -484,7 +490,7 @@ int wldev_set_country( bzero(&scbval, sizeof(scb_val_t)); error = wldev_iovar_getbuf(dev, "country", NULL, 0, &cspec, sizeof(cspec), NULL); if (error < 0) { - WLDEV_ERROR(("%s: get country failed = %d\n", __FUNCTION__, error)); + WLDEV_ERROR(("%s: get country failed = %d\n", __func__, error)); return error; } @@ -503,7 +509,7 @@ int wldev_set_country( &scbval, sizeof(scb_val_t)); if (error < 0) { WLDEV_ERROR(("%s: set country failed due to Disassoc error %d\n", - __FUNCTION__, error)); + __func__, error)); return error; } } @@ -521,14 +527,15 @@ int wldev_set_country( error = dhd_conf_set_country(dhd_get_pub(dev), &cspec); if (error < 0) { WLDEV_ERROR(("%s: set country for %s as %s rev %d failed\n", - __FUNCTION__, country_code, cspec.ccode, cspec.rev)); + __func__, country_code, cspec.ccode, cspec.rev)); return error; } dhd_conf_fix_country(dhd_get_pub(dev)); dhd_conf_get_country(dhd_get_pub(dev), &cspec); dhd_bus_country_set(dev, &cspec, notify); - printf("%s: set country for %s as %s rev %d\n", - __FUNCTION__, country_code, cspec.ccode, cspec.rev); + + WLDEV_INFO(("%s: set country for %s as %s rev %d\n", + __func__, country_code, cspec.ccode, cspec.rev)); } return 0; } diff --git a/drivers/usb/serial/bus.c b/drivers/usb/serial/bus.c index 8936a83c96cd6..cc01515b2094b 100644 --- a/drivers/usb/serial/bus.c +++ b/drivers/usb/serial/bus.c @@ -38,11 +38,23 @@ static int usb_serial_device_match(struct device *dev, return 0; } +/*EOF:HACK:*/ +static int is_digit(const char c) { + const char* digits = "0123456789"; + int i; + for (i=0; i < 10; i++) { + if (digits[i] == c) + return 1; + } + return 0; +} + static int usb_serial_device_probe(struct device *dev) { struct usb_serial_driver *driver; struct usb_serial_port *port; struct device *tty_dev; + const char *name; int retval = 0; int minor; @@ -63,6 +75,17 @@ static int usb_serial_device_probe(struct device *dev) } minor = port->minor; + + /*EOF:HACK: Set allocated device name ttyUSBn ttyQCTn ttyHUAn etc. */ + name = dev_name(&port->dev); + if (is_digit(name[strlen(name)-1])) { + usb_serial_tty_driver->flags |= TTY_DRIVER_UNNUMBERED_NODE; + usb_serial_tty_driver->name = name; + } + else { + usb_serial_tty_driver->flags &= TTY_DRIVER_UNNUMBERED_NODE; + } + tty_dev = tty_register_device(usb_serial_tty_driver, minor, dev); if (IS_ERR(tty_dev)) { retval = PTR_ERR(tty_dev); @@ -72,8 +95,8 @@ static int usb_serial_device_probe(struct device *dev) usb_autopm_put_interface(port->serial->interface); dev_info(&port->serial->dev->dev, - "%s converter now attached to ttyUSB%d\n", - driver->description, minor); + "%s converter now attached to %s (minor: %d)\n", + driver->description, dev_name(&port->dev), minor); return 0; @@ -93,6 +116,7 @@ static int usb_serial_device_remove(struct device *dev) int retval = 0; int minor; int autopm_err; + const char* name; port = to_usb_serial_port(dev); if (!port) @@ -107,14 +131,25 @@ static int usb_serial_device_remove(struct device *dev) autopm_err = usb_autopm_get_interface(port->serial->interface); minor = port->minor; + + /*EOF:HACK: Set allocated device name ttyUSBn ttyQCTn ttyHUAn etc. */ + name = dev_name(&port->dev); + if (is_digit(name[strlen(name)-1])) { + usb_serial_tty_driver->flags |= TTY_DRIVER_UNNUMBERED_NODE; + usb_serial_tty_driver->name = name; + } + else { + usb_serial_tty_driver->flags &= TTY_DRIVER_UNNUMBERED_NODE; + } + tty_unregister_device(usb_serial_tty_driver, minor); driver = port->serial->type; if (driver->port_remove) retval = driver->port_remove(port); - dev_info(dev, "%s converter now disconnected from ttyUSB%d\n", - driver->description, minor); + dev_info(dev, "%s converter now disconnected from %s (minor: %d)\n", + driver->description, dev_name(&port->dev), minor); if (!autopm_err) usb_autopm_put_interface(port->serial->interface); diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c index e7e29c797824f..b5c401208bb36 100644 --- a/drivers/usb/serial/usb-serial.c +++ b/drivers/usb/serial/usb-serial.c @@ -709,6 +709,11 @@ static const struct tty_port_operations serial_port_ops = { .shutdown = serial_port_shutdown, }; + +/*EOF:HACK*/ +/* 0=Quectel | 1=Huawei */ +static int gsm_module_minors[2] = {0, 0}; + static int usb_serial_probe(struct usb_interface *interface, const struct usb_device_id *id) { @@ -733,6 +738,7 @@ static int usb_serial_probe(struct usb_interface *interface, int num_bulk_out = 0; int num_ports = 0; int max_endpoints; + int module_minor; mutex_lock(&table_lock); type = search_serial_device(interface); @@ -833,7 +839,7 @@ static int usb_serial_probe(struct usb_interface *interface, endpoint = &iface_desc->endpoint[i].desc; if (usb_endpoint_is_int_in(endpoint)) { /* we found a interrupt in endpoint */ - dev_dbg(ddev, "found interrupt in for Prolific device on separate interface\n"); + dev_info(ddev, "found interrupt in for Prolific device on separate interface\n"); if (num_interrupt_in < MAX_NUM_PORTS) { interrupt_in_endpoint[num_interrupt_in] = endpoint; ++num_interrupt_in; @@ -1005,7 +1011,7 @@ static int usb_serial_probe(struct usb_interface *interface, endpoint->bInterval); } } else if (num_interrupt_in) { - dev_dbg(ddev, "The device claims to support interrupt in transfers, but read_int_callback is not defined\n"); + dev_err(ddev, "The device claims to support interrupt in transfers, but read_int_callback is not defined\n"); } if (serial->type->write_int_callback) { @@ -1031,7 +1037,7 @@ static int usb_serial_probe(struct usb_interface *interface, endpoint->bInterval); } } else if (num_interrupt_out) { - dev_dbg(ddev, "The device claims to support interrupt out transfers, but write_int_callback is not defined\n"); + dev_err(ddev, "The device claims to support interrupt out transfers, but write_int_callback is not defined\n"); } usb_set_intfdata(interface, serial); @@ -1066,8 +1072,34 @@ static int usb_serial_probe(struct usb_interface *interface, /* register all of the individual ports with the driver core */ for (i = 0; i < num_ports; ++i) { port = serial->port[i]; - dev_set_name(&port->dev, "ttyUSB%d", port->minor); - dev_dbg(ddev, "registering %s\n", dev_name(&port->dev)); + + /* EOF:HACK: Huawei/Quectel LTE Modules become its own name + * to be sure it does not change during cold/warm boot time */ + + /* QUECTEL QUECTEL_VENDOR_ID */ + if (dev->descriptor.idVendor == cpu_to_le16(0x2c7c)) + { + module_minor = gsm_module_minors[0]; + dev_set_name(&port->dev, "ttyQCT%d", module_minor); + + module_minor++; + gsm_module_minors[0] = module_minor; + } + /* HUAWEI HUAWEI_VENDOR_ID */ + else if (dev->descriptor.idVendor == cpu_to_le16(0x12d1)) + { + module_minor = gsm_module_minors[1]; + dev_set_name(&port->dev, "ttyHUA%d", module_minor); + + module_minor++; + gsm_module_minors[1] = module_minor; + } + /* DEFAULT */ + else { + dev_set_name(&port->dev, "ttyUSB%d", port->minor); + } + + dev_info(ddev, "registering %s\n", dev_name(&port->dev)); device_enable_async_suspend(&port->dev); retval = device_add(&port->dev); @@ -1079,6 +1111,7 @@ static int usb_serial_probe(struct usb_interface *interface, if (num_ports > 0) usb_serial_console_init(serial->port[0]->minor); + exit: module_put(type->driver.owner); return 0; @@ -1091,8 +1124,9 @@ static int usb_serial_probe(struct usb_interface *interface, static void usb_serial_disconnect(struct usb_interface *interface) { - int i; + int i, module_minor; struct usb_serial *serial = usb_get_intfdata(interface); + struct usb_device *usbdev = interface_to_usbdev(interface); struct device *dev = &interface->dev; struct usb_serial_port *port; struct tty_struct *tty; @@ -1111,6 +1145,29 @@ static void usb_serial_disconnect(struct usb_interface *interface) tty_vhangup(tty); tty_kref_put(tty); } + + /* EOF:HACK: Huawei/Quectel LTE Modules become its own name + * to be sure it does not change during cold/warm boot time. + * On deregister, revert minor id's here. */ + + /* QUECTEL QUECTEL_VENDOR_ID */ + if (usbdev->descriptor.idVendor == cpu_to_le16(0x2c7c)) + { + module_minor = gsm_module_minors[0]; + if (module_minor > 0) { + module_minor--; + gsm_module_minors[0] = module_minor; + } + } + /* HUAWEI HUAWEI_VENDOR_ID */ + else if (usbdev->descriptor.idVendor == cpu_to_le16(0x12d1)) + { + module_minor = gsm_module_minors[1]; + if (module_minor > 0) { + module_minor--; + gsm_module_minors[1] = module_minor; + } + } usb_serial_port_poison_urbs(port); wake_up_interruptible(&port->port.delta_msr_wait); cancel_work_sync(&port->work); diff --git a/firmware/rockchip/dptx.bin b/firmware/rockchip/dptx.bin new file mode 100644 index 0000000000000..c22653a49cc42 Binary files /dev/null and b/firmware/rockchip/dptx.bin differ