]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - drivers/net/wireless/ath/ath10k/snoc.h
ath10k: Enable MSA region dump support for WCN3990
[linux.git] / drivers / net / wireless / ath / ath10k / snoc.h
index d62f53501fbbfcb4052ab531418a118672e01a98..c05df45a394574511a990bb385a3ab3f079d1be8 100644 (file)
@@ -42,29 +42,16 @@ struct ath10k_snoc_ce_irq {
        u32 irq_line;
 };
 
-struct ath10k_vreg_info {
-       struct regulator *reg;
-       const char *name;
-       u32 min_v;
-       u32 max_v;
-       u32 load_ua;
-       unsigned long settle_delay;
-       bool required;
-};
-
-struct ath10k_clk_info {
-       struct clk *handle;
-       const char *name;
-       u32 freq;
-       bool required;
-};
-
 enum ath10k_snoc_flags {
        ATH10K_SNOC_FLAG_REGISTERED,
        ATH10K_SNOC_FLAG_UNREGISTERING,
        ATH10K_SNOC_FLAG_RECOVERY,
+       ATH10K_SNOC_FLAG_8BIT_HOST_CAP_QUIRK,
 };
 
+struct clk_bulk_data;
+struct regulator_bulk_data;
+
 struct ath10k_snoc {
        struct platform_device *dev;
        struct ath10k *ar;
@@ -76,10 +63,14 @@ struct ath10k_snoc {
        struct ath10k_snoc_ce_irq ce_irqs[CE_COUNT_MAX];
        struct ath10k_ce ce;
        struct timer_list rx_post_retry;
-       struct ath10k_vreg_info *vreg;
-       struct ath10k_clk_info *clk;
+       struct regulator_bulk_data *vregs;
+       size_t num_vregs;
+       struct clk_bulk_data *clks;
+       size_t num_clks;
        struct ath10k_qmi *qmi;
        unsigned long flags;
+       bool xo_cal_supported;
+       u32 xo_cal_data;
 };
 
 static inline struct ath10k_snoc *ath10k_snoc_priv(struct ath10k *ar)
@@ -88,5 +79,6 @@ static inline struct ath10k_snoc *ath10k_snoc_priv(struct ath10k *ar)
 }
 
 int ath10k_snoc_fw_indication(struct ath10k *ar, u64 type);
+void ath10k_snoc_fw_crashed_dump(struct ath10k *ar);
 
 #endif /* _SNOC_H_ */