@@ -591,16 +591,15 @@ struct ath12k {
u32 ht_cap_info;
u32 vht_cap_info;
struct ath12k_he ar_he;
- bool supports_6ghz;
struct {
struct completion started;
struct completion completed;
struct completion on_channel;
struct delayed_work timeout;
enum ath12k_scan_state state;
- bool is_roc;
+ bool is_roc:1;
+ bool roc_notify:1;
int roc_freq;
- bool roc_notify;
struct wiphy_work vdev_clean_wk;
struct ath12k_link_vif *arvif;
} scan;
@@ -679,7 +678,6 @@ struct ath12k {
* However there are deviations from this rule. This flag is used to
* avoid reporting garbage data.
*/
- bool ch_info_can_report_survey;
struct survey_info survey[ATH12K_NUM_CHANS];
struct completion bss_survey_done;
@@ -690,7 +688,6 @@ struct ath12k {
struct ath12k_wow wow;
struct completion target_suspend;
- bool target_suspend_ack;
struct ath12k_per_peer_tx_stats peer_tx_stats;
struct list_head ppdu_stats_info;
u32 ppdu_stat_list_depth;
@@ -702,16 +699,20 @@ struct ath12k {
struct ath12k_debug debug;
#endif
- bool dfs_block_radar_events;
- bool monitor_conf_enabled;
- bool monitor_vdev_created;
- bool monitor_started;
+ bool supports_6ghz:1;
+ bool ch_info_can_report_survey:1;
+ bool target_suspend_ack:1;
+ bool dfs_block_radar_events:1;
+ bool monitor_conf_enabled:1;
+ bool monitor_vdev_created:1;
+ bool monitor_started:1;
+ bool nlo_enabled:1;
+ /* Add new boolean variable here. */
+
int monitor_vdev_id;
struct wiphy_radio_freq_range freq_range;
- bool nlo_enabled;
-
struct completion mlo_setup_done;
u32 mlo_setup_status;
};
Optimize storage size for struct ath12k by clean up bool variables. Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 Signed-off-by: Kang Yang <quic_kangyang@quicinc.com> --- drivers/net/wireless/ath/ath12k/core.h | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-)