* [PATCH 0/2] mac80211/ath11k: add FEC type in radiotap header @ 2021-11-30 17:50 ` P Praneesh 0 siblings, 0 replies; 14+ messages in thread From: P Praneesh @ 2021-11-30 17:50 UTC (permalink / raw) To: ath11k, johannes; +Cc: linux-wireless, P Praneesh This patch series adds LDPC FEC type in 802.11 radiotap header in the captured packets. P Praneesh (2): mac80211: fix FEC flag in radio tap header ath11k: add LDPC FEC type in 802.11 radiotap header drivers/net/wireless/ath/ath11k/dp_rx.c | 12 +++++++++++- drivers/net/wireless/ath/ath11k/hw.c | 16 ++++++++++++++++ drivers/net/wireless/ath/ath11k/hw.h | 1 + net/mac80211/rx.c | 7 ++++++- 4 files changed, 34 insertions(+), 2 deletions(-) -- 2.7.4 -- ath11k mailing list ath11k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath11k ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 0/2] mac80211/ath11k: add FEC type in radiotap header @ 2021-11-30 17:50 ` P Praneesh 0 siblings, 0 replies; 14+ messages in thread From: P Praneesh @ 2021-11-30 17:50 UTC (permalink / raw) To: ath11k, johannes; +Cc: linux-wireless, P Praneesh This patch series adds LDPC FEC type in 802.11 radiotap header in the captured packets. P Praneesh (2): mac80211: fix FEC flag in radio tap header ath11k: add LDPC FEC type in 802.11 radiotap header drivers/net/wireless/ath/ath11k/dp_rx.c | 12 +++++++++++- drivers/net/wireless/ath/ath11k/hw.c | 16 ++++++++++++++++ drivers/net/wireless/ath/ath11k/hw.h | 1 + net/mac80211/rx.c | 7 ++++++- 4 files changed, 34 insertions(+), 2 deletions(-) -- 2.7.4 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 1/2] mac80211: fix FEC flag in radio tap header 2021-11-30 17:50 ` P Praneesh @ 2021-11-30 17:50 ` P Praneesh -1 siblings, 0 replies; 14+ messages in thread From: P Praneesh @ 2021-11-30 17:50 UTC (permalink / raw) To: ath11k, johannes; +Cc: linux-wireless, P Praneesh In mac80211, while building radiotap header IEEE80211_RADIOTAP_MCS_HAVE_FEC flag is missing when LDPC enabled from driver, hence LDPC is not updated properly in radiotap header. Fix that by adding HAVE_FEC flag while building radiotap header. Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> --- net/mac80211/rx.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 9541a4c..be12fa8 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -465,7 +465,12 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local, unsigned int stbc; rthdr->it_present |= cpu_to_le32(BIT(IEEE80211_RADIOTAP_MCS)); - *pos++ = local->hw.radiotap_mcs_details; + *pos = local->hw.radiotap_mcs_details; + if (status->enc_flags & RX_ENC_FLAG_HT_GF) + *pos |= IEEE80211_RADIOTAP_MCS_HAVE_FMT; + if (status->enc_flags & RX_ENC_FLAG_LDPC) + *pos |= IEEE80211_RADIOTAP_MCS_HAVE_FEC; + pos++; *pos = 0; if (status->enc_flags & RX_ENC_FLAG_SHORT_GI) *pos |= IEEE80211_RADIOTAP_MCS_SGI; -- 2.7.4 -- ath11k mailing list ath11k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath11k ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 1/2] mac80211: fix FEC flag in radio tap header @ 2021-11-30 17:50 ` P Praneesh 0 siblings, 0 replies; 14+ messages in thread From: P Praneesh @ 2021-11-30 17:50 UTC (permalink / raw) To: ath11k, johannes; +Cc: linux-wireless, P Praneesh In mac80211, while building radiotap header IEEE80211_RADIOTAP_MCS_HAVE_FEC flag is missing when LDPC enabled from driver, hence LDPC is not updated properly in radiotap header. Fix that by adding HAVE_FEC flag while building radiotap header. Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> --- net/mac80211/rx.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 9541a4c..be12fa8 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -465,7 +465,12 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local, unsigned int stbc; rthdr->it_present |= cpu_to_le32(BIT(IEEE80211_RADIOTAP_MCS)); - *pos++ = local->hw.radiotap_mcs_details; + *pos = local->hw.radiotap_mcs_details; + if (status->enc_flags & RX_ENC_FLAG_HT_GF) + *pos |= IEEE80211_RADIOTAP_MCS_HAVE_FMT; + if (status->enc_flags & RX_ENC_FLAG_LDPC) + *pos |= IEEE80211_RADIOTAP_MCS_HAVE_FEC; + pos++; *pos = 0; if (status->enc_flags & RX_ENC_FLAG_SHORT_GI) *pos |= IEEE80211_RADIOTAP_MCS_SGI; -- 2.7.4 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header 2021-11-30 17:50 ` P Praneesh @ 2021-11-30 17:50 ` P Praneesh -1 siblings, 0 replies; 14+ messages in thread From: P Praneesh @ 2021-11-30 17:50 UTC (permalink / raw) To: ath11k, johannes; +Cc: linux-wireless, P Praneesh LDPC is one the FEC type advertised in msdu_start info2 for HT packet type. Hence, add hardware specific callback for fetching LDPC support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing rx status to mac80211. Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> --- drivers/net/wireless/ath/ath11k/dp_rx.c | 12 +++++++++++- drivers/net/wireless/ath/ath11k/hw.c | 16 ++++++++++++++++ drivers/net/wireless/ath/ath11k/hw.h | 1 + 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/ath/ath11k/dp_rx.c b/drivers/net/wireless/ath/ath11k/dp_rx.c index 40f1c86..ed14a90 100644 --- a/drivers/net/wireless/ath/ath11k/dp_rx.c +++ b/drivers/net/wireless/ath/ath11k/dp_rx.c @@ -43,6 +43,13 @@ static inline u8 ath11k_dp_rx_h_msdu_start_decap_type(struct ath11k_base *ab, } static inline +bool ath11k_dp_rx_h_msdu_start_ldpc_support(struct ath11k_base *ab, + struct hal_rx_desc *desc) +{ + return ab->hw_params.hw_ops->rx_desc_get_ldpc_support(desc); +} + +static inline u8 ath11k_dp_rx_h_msdu_start_mesh_ctl_present(struct ath11k_base *ab, struct hal_rx_desc *desc) { @@ -2331,7 +2338,7 @@ static void ath11k_dp_rx_h_rate(struct ath11k *ar, struct hal_rx_desc *rx_desc, u8 bw; u8 rate_mcs, nss; u8 sgi; - bool is_cck; + bool is_cck, is_ldpc; pkt_type = ath11k_dp_rx_h_msdu_start_pkt_type(ar->ab, rx_desc); bw = ath11k_dp_rx_h_msdu_start_rx_bw(ar->ab, rx_desc); @@ -2373,6 +2380,9 @@ static void ath11k_dp_rx_h_rate(struct ath11k *ar, struct hal_rx_desc *rx_desc, if (sgi) rx_status->enc_flags |= RX_ENC_FLAG_SHORT_GI; rx_status->bw = ath11k_mac_bw_to_mac80211_bw(bw); + is_ldpc = ath11k_dp_rx_h_msdu_start_ldpc_support(ar->ab, rx_desc); + if (is_ldpc) + rx_status->enc_flags |= RX_ENC_FLAG_LDPC; break; case RX_MSDU_START_PKT_TYPE_11AX: rx_status->rate_idx = rate_mcs; diff --git a/drivers/net/wireless/ath/ath11k/hw.c b/drivers/net/wireless/ath/ath11k/hw.c index 2f0b526..25e902d 100644 --- a/drivers/net/wireless/ath/ath11k/hw.c +++ b/drivers/net/wireless/ath/ath11k/hw.c @@ -273,6 +273,12 @@ static u8 ath11k_hw_ipq8074_rx_desc_get_mesh_ctl(struct hal_rx_desc *desc) __le32_to_cpu(desc->u.ipq8074.msdu_start.info2)); } +static bool ath11k_hw_ipq8074_rx_desc_get_ldpc_support(struct hal_rx_desc *desc) +{ + return FIELD_GET(RX_MSDU_START_INFO2_LDPC, + __le32_to_cpu(desc->u.ipq8074.msdu_start.info2)); +} + static bool ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld(struct hal_rx_desc *desc) { return !!FIELD_GET(RX_MPDU_START_INFO1_MPDU_SEQ_CTRL_VALID, @@ -444,6 +450,12 @@ static u8 ath11k_hw_qcn9074_rx_desc_get_mesh_ctl(struct hal_rx_desc *desc) __le32_to_cpu(desc->u.qcn9074.msdu_start.info2)); } +static bool ath11k_hw_qcn9074_rx_desc_get_ldpc_support(struct hal_rx_desc *desc) +{ + return FIELD_GET(RX_MSDU_START_INFO2_LDPC, + __le32_to_cpu(desc->u.qcn9074.msdu_start.info2)); +} + static bool ath11k_hw_qcn9074_rx_desc_get_mpdu_seq_ctl_vld(struct hal_rx_desc *desc) { return !!FIELD_GET(RX_MPDU_START_INFO11_MPDU_SEQ_CTRL_VALID, @@ -815,6 +827,7 @@ const struct ath11k_hw_ops ipq8074_ops = { .rx_desc_get_encrypt_type = ath11k_hw_ipq8074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_ipq8074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_ipq8074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_ipq8074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_ipq8074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_ipq8074_rx_desc_get_mpdu_start_seq_no, @@ -853,6 +866,7 @@ const struct ath11k_hw_ops ipq6018_ops = { .rx_desc_get_encrypt_type = ath11k_hw_ipq8074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_ipq8074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_ipq8074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_ipq8074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_ipq8074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_ipq8074_rx_desc_get_mpdu_start_seq_no, @@ -891,6 +905,7 @@ const struct ath11k_hw_ops qca6390_ops = { .rx_desc_get_encrypt_type = ath11k_hw_ipq8074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_ipq8074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_ipq8074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_ipq8074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_ipq8074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_ipq8074_rx_desc_get_mpdu_start_seq_no, @@ -929,6 +944,7 @@ const struct ath11k_hw_ops qcn9074_ops = { .rx_desc_get_encrypt_type = ath11k_hw_qcn9074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_qcn9074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_qcn9074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_qcn9074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_qcn9074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_qcn9074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_qcn9074_rx_desc_get_mpdu_start_seq_no, diff --git a/drivers/net/wireless/ath/ath11k/hw.h b/drivers/net/wireless/ath/ath11k/hw.h index 2c9d232..e025eda 100644 --- a/drivers/net/wireless/ath/ath11k/hw.h +++ b/drivers/net/wireless/ath/ath11k/hw.h @@ -199,6 +199,7 @@ struct ath11k_hw_ops { u32 (*rx_desc_get_encrypt_type)(struct hal_rx_desc *desc); u8 (*rx_desc_get_decap_type)(struct hal_rx_desc *desc); u8 (*rx_desc_get_mesh_ctl)(struct hal_rx_desc *desc); + bool (*rx_desc_get_ldpc_support)(struct hal_rx_desc *desc); bool (*rx_desc_get_mpdu_seq_ctl_vld)(struct hal_rx_desc *desc); bool (*rx_desc_get_mpdu_fc_valid)(struct hal_rx_desc *desc); u16 (*rx_desc_get_mpdu_start_seq_no)(struct hal_rx_desc *desc); -- 2.7.4 -- ath11k mailing list ath11k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath11k ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header @ 2021-11-30 17:50 ` P Praneesh 0 siblings, 0 replies; 14+ messages in thread From: P Praneesh @ 2021-11-30 17:50 UTC (permalink / raw) To: ath11k, johannes; +Cc: linux-wireless, P Praneesh LDPC is one the FEC type advertised in msdu_start info2 for HT packet type. Hence, add hardware specific callback for fetching LDPC support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing rx status to mac80211. Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> --- drivers/net/wireless/ath/ath11k/dp_rx.c | 12 +++++++++++- drivers/net/wireless/ath/ath11k/hw.c | 16 ++++++++++++++++ drivers/net/wireless/ath/ath11k/hw.h | 1 + 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/ath/ath11k/dp_rx.c b/drivers/net/wireless/ath/ath11k/dp_rx.c index 40f1c86..ed14a90 100644 --- a/drivers/net/wireless/ath/ath11k/dp_rx.c +++ b/drivers/net/wireless/ath/ath11k/dp_rx.c @@ -43,6 +43,13 @@ static inline u8 ath11k_dp_rx_h_msdu_start_decap_type(struct ath11k_base *ab, } static inline +bool ath11k_dp_rx_h_msdu_start_ldpc_support(struct ath11k_base *ab, + struct hal_rx_desc *desc) +{ + return ab->hw_params.hw_ops->rx_desc_get_ldpc_support(desc); +} + +static inline u8 ath11k_dp_rx_h_msdu_start_mesh_ctl_present(struct ath11k_base *ab, struct hal_rx_desc *desc) { @@ -2331,7 +2338,7 @@ static void ath11k_dp_rx_h_rate(struct ath11k *ar, struct hal_rx_desc *rx_desc, u8 bw; u8 rate_mcs, nss; u8 sgi; - bool is_cck; + bool is_cck, is_ldpc; pkt_type = ath11k_dp_rx_h_msdu_start_pkt_type(ar->ab, rx_desc); bw = ath11k_dp_rx_h_msdu_start_rx_bw(ar->ab, rx_desc); @@ -2373,6 +2380,9 @@ static void ath11k_dp_rx_h_rate(struct ath11k *ar, struct hal_rx_desc *rx_desc, if (sgi) rx_status->enc_flags |= RX_ENC_FLAG_SHORT_GI; rx_status->bw = ath11k_mac_bw_to_mac80211_bw(bw); + is_ldpc = ath11k_dp_rx_h_msdu_start_ldpc_support(ar->ab, rx_desc); + if (is_ldpc) + rx_status->enc_flags |= RX_ENC_FLAG_LDPC; break; case RX_MSDU_START_PKT_TYPE_11AX: rx_status->rate_idx = rate_mcs; diff --git a/drivers/net/wireless/ath/ath11k/hw.c b/drivers/net/wireless/ath/ath11k/hw.c index 2f0b526..25e902d 100644 --- a/drivers/net/wireless/ath/ath11k/hw.c +++ b/drivers/net/wireless/ath/ath11k/hw.c @@ -273,6 +273,12 @@ static u8 ath11k_hw_ipq8074_rx_desc_get_mesh_ctl(struct hal_rx_desc *desc) __le32_to_cpu(desc->u.ipq8074.msdu_start.info2)); } +static bool ath11k_hw_ipq8074_rx_desc_get_ldpc_support(struct hal_rx_desc *desc) +{ + return FIELD_GET(RX_MSDU_START_INFO2_LDPC, + __le32_to_cpu(desc->u.ipq8074.msdu_start.info2)); +} + static bool ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld(struct hal_rx_desc *desc) { return !!FIELD_GET(RX_MPDU_START_INFO1_MPDU_SEQ_CTRL_VALID, @@ -444,6 +450,12 @@ static u8 ath11k_hw_qcn9074_rx_desc_get_mesh_ctl(struct hal_rx_desc *desc) __le32_to_cpu(desc->u.qcn9074.msdu_start.info2)); } +static bool ath11k_hw_qcn9074_rx_desc_get_ldpc_support(struct hal_rx_desc *desc) +{ + return FIELD_GET(RX_MSDU_START_INFO2_LDPC, + __le32_to_cpu(desc->u.qcn9074.msdu_start.info2)); +} + static bool ath11k_hw_qcn9074_rx_desc_get_mpdu_seq_ctl_vld(struct hal_rx_desc *desc) { return !!FIELD_GET(RX_MPDU_START_INFO11_MPDU_SEQ_CTRL_VALID, @@ -815,6 +827,7 @@ const struct ath11k_hw_ops ipq8074_ops = { .rx_desc_get_encrypt_type = ath11k_hw_ipq8074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_ipq8074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_ipq8074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_ipq8074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_ipq8074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_ipq8074_rx_desc_get_mpdu_start_seq_no, @@ -853,6 +866,7 @@ const struct ath11k_hw_ops ipq6018_ops = { .rx_desc_get_encrypt_type = ath11k_hw_ipq8074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_ipq8074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_ipq8074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_ipq8074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_ipq8074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_ipq8074_rx_desc_get_mpdu_start_seq_no, @@ -891,6 +905,7 @@ const struct ath11k_hw_ops qca6390_ops = { .rx_desc_get_encrypt_type = ath11k_hw_ipq8074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_ipq8074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_ipq8074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_ipq8074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_ipq8074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_ipq8074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_ipq8074_rx_desc_get_mpdu_start_seq_no, @@ -929,6 +944,7 @@ const struct ath11k_hw_ops qcn9074_ops = { .rx_desc_get_encrypt_type = ath11k_hw_qcn9074_rx_desc_get_encrypt_type, .rx_desc_get_decap_type = ath11k_hw_qcn9074_rx_desc_get_decap_type, .rx_desc_get_mesh_ctl = ath11k_hw_qcn9074_rx_desc_get_mesh_ctl, + .rx_desc_get_ldpc_support = ath11k_hw_qcn9074_rx_desc_get_ldpc_support, .rx_desc_get_mpdu_seq_ctl_vld = ath11k_hw_qcn9074_rx_desc_get_mpdu_seq_ctl_vld, .rx_desc_get_mpdu_fc_valid = ath11k_hw_qcn9074_rx_desc_get_mpdu_fc_valid, .rx_desc_get_mpdu_start_seq_no = ath11k_hw_qcn9074_rx_desc_get_mpdu_start_seq_no, diff --git a/drivers/net/wireless/ath/ath11k/hw.h b/drivers/net/wireless/ath/ath11k/hw.h index 2c9d232..e025eda 100644 --- a/drivers/net/wireless/ath/ath11k/hw.h +++ b/drivers/net/wireless/ath/ath11k/hw.h @@ -199,6 +199,7 @@ struct ath11k_hw_ops { u32 (*rx_desc_get_encrypt_type)(struct hal_rx_desc *desc); u8 (*rx_desc_get_decap_type)(struct hal_rx_desc *desc); u8 (*rx_desc_get_mesh_ctl)(struct hal_rx_desc *desc); + bool (*rx_desc_get_ldpc_support)(struct hal_rx_desc *desc); bool (*rx_desc_get_mpdu_seq_ctl_vld)(struct hal_rx_desc *desc); bool (*rx_desc_get_mpdu_fc_valid)(struct hal_rx_desc *desc); u16 (*rx_desc_get_mpdu_start_seq_no)(struct hal_rx_desc *desc); -- 2.7.4 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header 2021-11-30 17:50 ` P Praneesh @ 2021-12-20 19:16 ` Kalle Valo -1 siblings, 0 replies; 14+ messages in thread From: Kalle Valo @ 2021-12-20 19:16 UTC (permalink / raw) To: P Praneesh; +Cc: ath11k, johannes, linux-wireless, P Praneesh P Praneesh <quic_ppranees@quicinc.com> wrote: > LDPC is one the FEC type advertised in msdu_start info2 for HT packet > type. Hence, add hardware specific callback for fetching LDPC > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing > rx status to mac80211. > > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> Depends on: 57553c3a6cfe ("mac80211: fix FEC flag in radio tap header") Currently in mac80211-next. -- https://patchwork.kernel.org/project/linux-wireless/patch/1638294648-844-3-git-send-email-quic_ppranees@quicinc.com/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches -- ath11k mailing list ath11k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath11k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header @ 2021-12-20 19:16 ` Kalle Valo 0 siblings, 0 replies; 14+ messages in thread From: Kalle Valo @ 2021-12-20 19:16 UTC (permalink / raw) To: P Praneesh; +Cc: ath11k, johannes, linux-wireless, P Praneesh P Praneesh <quic_ppranees@quicinc.com> wrote: > LDPC is one the FEC type advertised in msdu_start info2 for HT packet > type. Hence, add hardware specific callback for fetching LDPC > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing > rx status to mac80211. > > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> Depends on: 57553c3a6cfe ("mac80211: fix FEC flag in radio tap header") Currently in mac80211-next. -- https://patchwork.kernel.org/project/linux-wireless/patch/1638294648-844-3-git-send-email-quic_ppranees@quicinc.com/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header 2021-12-20 19:16 ` Kalle Valo @ 2021-12-20 19:59 ` Johannes Berg -1 siblings, 0 replies; 14+ messages in thread From: Johannes Berg @ 2021-12-20 19:59 UTC (permalink / raw) To: Kalle Valo, P Praneesh; +Cc: ath11k, linux-wireless On Mon, 2021-12-20 at 19:16 +0000, Kalle Valo wrote: > P Praneesh <quic_ppranees@quicinc.com> wrote: > > > LDPC is one the FEC type advertised in msdu_start info2 for HT packet > > type. Hence, add hardware specific callback for fetching LDPC > > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing > > rx status to mac80211. > > > > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 > > > > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> > > Depends on: > > 57553c3a6cfe ("mac80211: fix FEC flag in radio tap header") > Technically, you could apply it, it just won't be very useful until you have both together. johannes -- ath11k mailing list ath11k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath11k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header @ 2021-12-20 19:59 ` Johannes Berg 0 siblings, 0 replies; 14+ messages in thread From: Johannes Berg @ 2021-12-20 19:59 UTC (permalink / raw) To: Kalle Valo, P Praneesh; +Cc: ath11k, linux-wireless On Mon, 2021-12-20 at 19:16 +0000, Kalle Valo wrote: > P Praneesh <quic_ppranees@quicinc.com> wrote: > > > LDPC is one the FEC type advertised in msdu_start info2 for HT packet > > type. Hence, add hardware specific callback for fetching LDPC > > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing > > rx status to mac80211. > > > > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 > > > > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> > > Depends on: > > 57553c3a6cfe ("mac80211: fix FEC flag in radio tap header") > Technically, you could apply it, it just won't be very useful until you have both together. johannes ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header 2021-12-20 19:59 ` Johannes Berg @ 2021-12-21 9:57 ` Kalle Valo -1 siblings, 0 replies; 14+ messages in thread From: Kalle Valo @ 2021-12-21 9:57 UTC (permalink / raw) To: Johannes Berg; +Cc: P Praneesh, ath11k, linux-wireless Johannes Berg <johannes@sipsolutions.net> writes: > On Mon, 2021-12-20 at 19:16 +0000, Kalle Valo wrote: >> P Praneesh <quic_ppranees@quicinc.com> wrote: >> >> > LDPC is one the FEC type advertised in msdu_start info2 for HT packet >> > type. Hence, add hardware specific callback for fetching LDPC >> > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing >> > rx status to mac80211. >> > >> > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 >> > >> > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> >> >> Depends on: >> >> 57553c3a6cfe ("mac80211: fix FEC flag in radio tap header") > > Technically, you could apply it, it just won't be very useful until you > have both together. Ok, thanks. But to keep things simple I'll still wait for the mac80211 patch to land ath-next. -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches -- ath11k mailing list ath11k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath11k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header @ 2021-12-21 9:57 ` Kalle Valo 0 siblings, 0 replies; 14+ messages in thread From: Kalle Valo @ 2021-12-21 9:57 UTC (permalink / raw) To: Johannes Berg; +Cc: P Praneesh, ath11k, linux-wireless Johannes Berg <johannes@sipsolutions.net> writes: > On Mon, 2021-12-20 at 19:16 +0000, Kalle Valo wrote: >> P Praneesh <quic_ppranees@quicinc.com> wrote: >> >> > LDPC is one the FEC type advertised in msdu_start info2 for HT packet >> > type. Hence, add hardware specific callback for fetching LDPC >> > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing >> > rx status to mac80211. >> > >> > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 >> > >> > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> >> >> Depends on: >> >> 57553c3a6cfe ("mac80211: fix FEC flag in radio tap header") > > Technically, you could apply it, it just won't be very useful until you > have both together. Ok, thanks. But to keep things simple I'll still wait for the mac80211 patch to land ath-next. -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header 2021-11-30 17:50 ` P Praneesh @ 2022-01-12 8:06 ` Kalle Valo -1 siblings, 0 replies; 14+ messages in thread From: Kalle Valo @ 2022-01-12 8:06 UTC (permalink / raw) To: P Praneesh; +Cc: ath11k, johannes, linux-wireless, P Praneesh P Praneesh <quic_ppranees@quicinc.com> wrote: > LDPC is one the FEC type advertised in msdu_start info2 for HT packet > type. Hence, add hardware specific callback for fetching LDPC > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing > rx status to mac80211. > > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> > Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com> Patch applied to ath-next branch of ath.git, thanks. b3febdccde3e ath11k: add LDPC FEC type in 802.11 radiotap header -- https://patchwork.kernel.org/project/linux-wireless/patch/1638294648-844-3-git-send-email-quic_ppranees@quicinc.com/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches -- ath11k mailing list ath11k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath11k ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header @ 2022-01-12 8:06 ` Kalle Valo 0 siblings, 0 replies; 14+ messages in thread From: Kalle Valo @ 2022-01-12 8:06 UTC (permalink / raw) To: P Praneesh; +Cc: ath11k, johannes, linux-wireless, P Praneesh P Praneesh <quic_ppranees@quicinc.com> wrote: > LDPC is one the FEC type advertised in msdu_start info2 for HT packet > type. Hence, add hardware specific callback for fetching LDPC > support from msdu start and enable RX_ENC_FLAG_LDPC flag while passing > rx status to mac80211. > > Tested-on: IPQ8074 WLAN.HK.2.4.0.1-01467-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: P Praneesh <quic_ppranees@quicinc.com> > Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com> Patch applied to ath-next branch of ath.git, thanks. b3febdccde3e ath11k: add LDPC FEC type in 802.11 radiotap header -- https://patchwork.kernel.org/project/linux-wireless/patch/1638294648-844-3-git-send-email-quic_ppranees@quicinc.com/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2022-01-12 8:07 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-11-30 17:50 [PATCH 0/2] mac80211/ath11k: add FEC type in radiotap header P Praneesh 2021-11-30 17:50 ` P Praneesh 2021-11-30 17:50 ` [PATCH 1/2] mac80211: fix FEC flag in radio tap header P Praneesh 2021-11-30 17:50 ` P Praneesh 2021-11-30 17:50 ` [PATCH 2/2] ath11k: add LDPC FEC type in 802.11 radiotap header P Praneesh 2021-11-30 17:50 ` P Praneesh 2021-12-20 19:16 ` Kalle Valo 2021-12-20 19:16 ` Kalle Valo 2021-12-20 19:59 ` Johannes Berg 2021-12-20 19:59 ` Johannes Berg 2021-12-21 9:57 ` Kalle Valo 2021-12-21 9:57 ` Kalle Valo 2022-01-12 8:06 ` Kalle Valo 2022-01-12 8:06 ` Kalle Valo
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.