ath10k: implement per-vdev wmm param setup command
[deliverable/linux.git] / drivers / net / wireless / ath / ath10k / wmi-ops.h
index 6e9e38412b54d2f9a15a80b6ad7bace57bf311cb..987414abc4433b77b62935441642e3906b58aef2 100644 (file)
@@ -78,6 +78,8 @@ struct wmi_ops {
                                                  const struct wmi_vdev_spectral_conf_arg *arg);
        struct sk_buff *(*gen_vdev_spectral_enable)(struct ath10k *ar, u32 vdev_id,
                                                    u32 trigger, u32 enable);
+       struct sk_buff *(*gen_vdev_wmm_conf)(struct ath10k *ar, u32 vdev_id,
+                                            const struct wmi_wmm_params_all_arg *arg);
        struct sk_buff *(*gen_peer_create)(struct ath10k *ar, u32 vdev_id,
                                           const u8 peer_addr[ETH_ALEN]);
        struct sk_buff *(*gen_peer_delete)(struct ath10k *ar, u32 vdev_id,
@@ -600,6 +602,21 @@ ath10k_wmi_vdev_sta_uapsd(struct ath10k *ar, u32 vdev_id,
        return ath10k_wmi_cmd_send(ar, skb, cmd_id);
 }
 
+static inline int
+ath10k_wmi_vdev_wmm_conf(struct ath10k *ar, u32 vdev_id,
+                        const struct wmi_wmm_params_all_arg *arg)
+{
+       struct sk_buff *skb;
+       u32 cmd_id;
+
+       skb = ar->wmi.ops->gen_vdev_wmm_conf(ar, vdev_id, arg);
+       if (IS_ERR(skb))
+               return PTR_ERR(skb);
+
+       cmd_id = ar->wmi.cmd->vdev_set_wmm_params_cmdid;
+       return ath10k_wmi_cmd_send(ar, skb, cmd_id);
+}
+
 static inline int
 ath10k_wmi_peer_create(struct ath10k *ar, u32 vdev_id,
                       const u8 peer_addr[ETH_ALEN])
This page took 0.029796 seconds and 5 git commands to generate.