Go back –> ath6kl
ath6kl todo
Contents
Cleanup items
typedef cleanup
- fix checkpatch reported errors/warnings.
- fix sparse reported errors/warnings.
remove THREAD_X support
dl list cleanup
netbuf cleanup - skbuff should be used
rearchitecture of debug architecture
- cleanup of modparams (mostly removed and around 15 is pending)
- cleanup of kernel config options (see below)
simplify htc/hif – In progress
- remove kernel thread
- cleanup semaphore and wait_event apis
- cleanup of locking
- replace macros,apis with linux specific APIs.
- handle error codes properly
remove test cmd support and add it back later
- too many header files and lot of duplicates... clean it up.
- WLAN node optimization
sysfs cleanup
remove bluetooth driver
remove camel case
- remove hungarian notation - In progress
line length fixes – shall be handled as part of checkpatch fixes.
- remove #if 0 code
remove cplusplus definitions
flatten directory structure
- remove exported symbols
- remove ieee80211.h
- use align macros (grep ~3)
- replace wlan_ieee2freq() and wlan_freq2ieee()
- clean up arEvent usage
- clean up wmitimeout usage
- convert arSem to mutex
- remove unused/unneeded ifdefs
- remove global variables
- remove static variables, eg. sip in ar6000_target_failure()
- remove all wext code and configs
- remove BUG()s
- remove mdelay()
- fix all FIXMEs
- choose common prefix, eg ar6k
- remove all bt code
- remove all suspend and wow code
- remove while(false)/while(0) constructs
- remove casts from ar6k_priv() users
- remove '== true' and '== false'/'false ==' tests
- remove all AP code
- remove all suspend code
Then an item is done, please mark it with strike through.
config cleanup
CONFIG_HOST_TCMD_SUPPORT
This requires some special firmware and will vary depending on the revision of the chipset.
AR6003_REV1_VERSION –> AR6003_REV1_TCMD_FIRMWARE_FILE
AR6003_REV2_VERSION –> AR6003_REV2_TCMD_FIRMWARE_FILE
It seems this does not actually affect the WMI API other firmware so why not just remove the ifdef and keep the code in place. The only use I see for the config option is that it enables a module parameter testmode which if set then it will load the test firmware. This can likely be kept for now, even for proper placement in the Linux kernel.
No autodetection of features
You can only build ath6kl for a static targeted chipset model. So for example you only build ath6kl to support a dual band or single band setup, plugging in a dual band chipset into an box where ath6kl was compiled into for single band support will yield with no dual band support. The same applies to Bluetooth support. ath6kl has some config options which only let you statically select if ath6kl is shipping as a combo with BT support, and you have a few vendor options for the chipsets. None of these options are automatically detected. All this needs to change, work is required with the firmware team to ensure we can automatically detect these features and the type of card we are using.
Random always set macros
This can be remove and the code that makes sense left in place.
ccflags-y += -DTCMD ccflags-y += -DWAPI_ENABLE ccflags-y += -DCHECKSUM_OFFLOAD ... #if WIRELESS_EXT < 18
AP Mode support using cfg80211
No one is working on this yet.
WiFi Direct
No one is working on this yet