Go back –> ath6kl
ath6kl todo
Cleanup items
High priority:
- cleanup locking
- review all locking
- document what each lock is supposed to protect
- try to reduce the number of locks, semaphores and mutexes
- convert semaphores to mutexes
- the DMA bounce buffer should probably be protected by a lock so dueling threads don't corrupt it
- use ath6kl prefix everywhere
- high coupling between main.c and init.c
- confusion with header files
- function prototypes not in corresponding .h files
- no core.h
- no init.h
- no main.h
- no txrx.h
- merge structs
- merge struct htc_target to struct ath6kl
- merge struct ath6kl_device to struct ath6kl
- merge struct aggr_info to struct ath6kl
- merge struct wmi to struct ath6kl
- replace all void pointers with proper types
- for example, use property or unions
- if not possible for some reason, then document properly what types void pointer might contain
- (There are about three void pointers in htc.h, this would result in significant amount of cleanup)
- remove nl80211_tx_power_setting comment
- ath6kl_cfg80211_change_iface() needs to change mode before function returns
useless memset(ar->ssid, 0, sizeof(ar->ssid))
- ath6kl_cfg80211_get_key() should not call the callback in the -ENOENT case
- remove ieee80211com from a comment
- ath6kl_priv() should return a proper type
- scat_list should be scat_list[ ATH6KL_SCATTER_ENTRIES_PER_REQ] rather than scat_list[1]
- memcpy mess in htc_setup_tx_complete()
- ath6kl_cleanup_amsdu_rxbufs is racy
- can't drop lock with list_for_each macros
- list_empty() in ath6kl_alloc_amsdu_rxbuf() is useless
- you can iterate an empty list
- use ieee80211_data_to_8023()
- instead of ath6kl_wmi_dot11_hdr_remove()
Low priority:
- use align macro in aggr_slice_amsdu()
- clean up arEvent usage
- clean up wmitimeout usage
- remove mdelay()
- remove casts from ar6k_priv() users
- cleanup wait_event apis
- bmi: use struct for commands, not memcpy()
- fix 0x%lX debug format
- use %p
- remove (unsigned long) casts
- use decimals when printing lengths
- change all read/write functions' buf to a void pointer
- move WARN_ON() inside if test
cleanup ath6kl_init_netdev() & co
- replace ntohs() with be16_to_cpu()
- rename wmip to wmi
- ath6kl firmware fetch fails if it's linked to kernel (Y choise)
- ATH_COMMON kconfig enables some code which is not needed by ath6kl
- fix all FIXMEs
- remove ath6kl_cookie (vasanth)
- needs significant code change
- inspect structs for alignment and packing appropiateness
- switch from cfg80211_inform_bss_frame() to cfg80211_inform_bss()
- was there a reason why we actually need _frame() variant?
- logic in htc_tx_from_ep_txq() is convoluted
Then an item is done, please mark it with strike through. If you plan to work on something, please mark the item with "(nick)".
config cleanup
AP Mode support using cfg80211
Initial support for AP mode has been commited, but the support is not enabled yet.
WiFi Direct
No one is working on this yet