linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kalle Valo <kvalo@kernel.org>
To: Jeff Johnson <quic_jjohnson@quicinc.com>
Cc: <linux-wireless@vger.kernel.org>, <ath12k@lists.infradead.org>
Subject: Re: [PATCH 31/50] wifi: ath12k: add mac.c
Date: Tue, 08 Nov 2022 15:55:50 +0200	[thread overview]
Message-ID: <87leoleejd.fsf@kernel.org> (raw)
In-Reply-To: <1a043aac-c160-c826-3933-99dbe3bb18fe@quicinc.com> (Jeff Johnson's message of "Tue, 16 Aug 2022 11:09:49 -0700")

Jeff Johnson <quic_jjohnson@quicinc.com> writes:

> On 8/12/2022 9:09 AM, Kalle Valo wrote:
>> From: Kalle Valo <quic_kvalo@quicinc.com>
>>
>> (Patches split into one patch per file for easier review, but the final
>> commit will be one big patch. See the cover letter for more info.)
>>
>> Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
>> ---
>>   drivers/net/wireless/ath/ath12k/mac.c | 7054 +++++++++++++++++++++++++++++++++
>>   1 file changed, 7054 insertions(+)
>>
>> diff --git a/drivers/net/wireless/ath/ath12k/mac.c
>> b/drivers/net/wireless/ath/ath12k/mac.c
>> new file mode 100644
>> index 000000000000..2ccbd83dc9ca
>> --- /dev/null
>> +++ b/drivers/net/wireless/ath/ath12k/mac.c
>
> snip
>
>> +u8 ath12k_mac_bw_to_mac80211_bw(u8 bw)
>
> should the input param be of type enum ath12k_supported_bw to better
> describe it? should the function return type be enum rate_info_bw to
> better describe it?

Fixed.

>
>> +{
>> +	u8 ret = 0;
>
> change to use RATE_INFO_BW_20?

Fixed.

>> +static u8 ath12k_parse_mpdudensity(u8 mpdudensity)
>> +{
>> +/* 802.11n D2.0 defined values for "Minimum MPDU Start Spacing":
>
> nit: use an up-to-date reference?

Fixed.

>> +static int ath12k_recalc_rtscts_prot(struct ath12k_vif *arvif)
>> +{
>> +	struct ath12k *ar = arvif->ar;
>> +	u32 vdev_param, rts_cts = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +static int ath12k_monitor_vdev_up(struct ath12k *ar, int vdev_id)
>> +{
>> +	int ret = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +static int ath12k_mac_monitor_vdev_start(struct ath12k *ar, int vdev_id,
>> +					 struct cfg80211_chan_def *chandef)
>> +{
>> +	struct ieee80211_channel *channel = NULL;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +	struct wmi_vdev_start_req_arg arg = {};
>> +	int ret = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +static int ath12k_mac_monitor_vdev_stop(struct ath12k *ar)
>> +{
>> +	int ret = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +static int ath12k_mac_monitor_vdev_create(struct ath12k *ar)
>> +{
>> +	struct ath12k_pdev *pdev = ar->pdev;
>> +	struct ath12k_wmi_vdev_create_arg arg = {};
>> +	int bit, ret = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +	u8 tmp_addr[6] = {0};
>> +	u16 nss = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed as well.

>> +static int ath12k_mac_monitor_vdev_delete(struct ath12k *ar)
>> +{
>> +	int ret = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +	unsigned long time_left = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +static void ath12k_control_beaconing(struct ath12k_vif *arvif,
>> +				     struct ieee80211_bss_conf *info)
>> +{
>> +	struct ath12k *ar = arvif->ar;
>> +	int ret = 0;
>
> nit: unnecessary initializer that is always overwritten

Fixed.

>> +
>> +	lockdep_assert_held(&arvif->ar->conf_mutex);
>> +
>> +	if (!info->enable_beacon) {
>> +		ret = ath12k_wmi_vdev_down(ar, arvif->vdev_id);
>> +		if (ret)
>> +			ath12k_warn(ar->ab, "failed to down vdev_id %i: %d\n",
>> +				    arvif->vdev_id, ret);
>> +
>> +		arvif->is_up = false;
>> +		return;
>> +	}
>> +
>> +	/* Install the beacon template to the FW */
>> +	ret = ath12k_mac_setup_bcn_tmpl(arvif);
>> +	if (ret) {
>> +		ath12k_warn(ar->ab, "failed to update bcn tmpl during vdev up: %d\n",
>> +			    ret);
>> +		return;
>> +	}
>> +
>> +	arvif->tx_seq_no = 0x1000;
>
> why this magic number?

Ramya removed the initialisation in commit:

640978f9fb1f wifi: ath12k: Fix typo and initializer in mac.c

But the unused field is still in struct ath12k_vif, I added that to todo
list.

>> +static void ath12k_peer_assoc_h_vht(struct ath12k *ar,
>> +				    struct ieee80211_vif *vif,
>> +				    struct ieee80211_sta *sta,
>> +				    struct ath12k_wmi_peer_assoc_arg *arg)
>> +{
>
> snip
>
>> +	/* In IPQ8074 platform, VHT mcs rate 10 and 11 is enabled by default.
>> +	 * VHT mcs rate 10 and 11 is not suppoerted in 11ac standard.
>
> typo: s/suppoerted/supported/

Fixed.

> bigger question: why concern about IPQ8074 when this driver isn't for
> that platform

This was changed to QCN9274.

>> +static void ath12k_peer_assoc_h_he(struct ath12k *ar,
>> +				   struct ieee80211_vif *vif,
>> +				   struct ieee80211_sta *sta,
>> +				   struct ath12k_wmi_peer_assoc_arg *arg)
>> +{
>
> snip
>
>> +	/* As per section 26.6.1 11ax Draft5.0, if the Max AMPDU Exponent Extension
>
> nit: get an up-to-date reference?

Fixed.

>> +static void ath12k_mac_op_bss_info_changed(struct ieee80211_hw *hw,
>> +					   struct ieee80211_vif *vif,
>> +					   struct ieee80211_bss_conf *info,
>> +					   u64 changed)
>> +{
>> +	struct ath12k *ar = hw->priv;
>> +	struct ath12k_vif *arvif = ath12k_vif_to_arvif(vif);
>> +	struct cfg80211_chan_def def;
>> +	u32 param_id, param_value;
>> +	enum nl80211_band band;
>> +	u32 vdev_param;
>> +	int mcast_rate;
>> +	u32 preamble;
>> +	u16 hw_value;
>> +	u16 bitrate;
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static int ath12k_mac_op_hw_scan(struct ieee80211_hw *hw,
>> +				 struct ieee80211_vif *vif,
>> +				 struct ieee80211_scan_request *hw_req)
>> +{
>> +	struct ath12k *ar = hw->priv;
>> +	struct ath12k_vif *arvif = ath12k_vif_to_arvif(vif);
>> +	struct cfg80211_scan_request *req = &hw_req->req;
>> +	struct ath12k_wmi_scan_req_arg arg = {};
>> +	int ret = 0;
>
> nit: unnecessary initializer since this is set in all cases of switch
> (ar->scan.state)

Fixed.

>> +	ret = ath12k_start_scan(ar, &arg);
>> +	if (ret) {
>> +		ath12k_warn(ar->ab, "failed to start hw scan: %d\n", ret);
>> +		spin_lock_bh(&ar->data_lock);
>> +		ar->scan.state = ATH12K_SCAN_IDLE;
>> +		spin_unlock_bh(&ar->data_lock);
>> +	}
>> +
>> +	/* Add a 200ms margin to account for event/command processing */
>
> nit: remove 200ms from the comment. the value of the macro will be the
> actual value, and values in comments like this tend to get out of sync
> with the macros over time

Indeed, fixed.

>> +static int ath12k_station_assoc(struct ath12k *ar,
>> +				struct ieee80211_vif *vif,
>> +				struct ieee80211_sta *sta,
>> +				bool reassoc)
>> +{
>> +	struct ath12k_vif *arvif = ath12k_vif_to_arvif(vif);
>> +	struct ath12k_wmi_peer_assoc_arg peer_arg;
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static int ath12k_station_disassoc(struct ath12k *ar,
>> +				   struct ieee80211_vif *vif,
>> +				   struct ieee80211_sta *sta)
>> +{
>> +	struct ath12k_vif *arvif = (void *)vif->drv_priv;
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static int ath12k_mac_op_sta_set_txpwr(struct ieee80211_hw *hw,
>> +				       struct ieee80211_vif *vif,
>> +				       struct ieee80211_sta *sta)
>> +{
>> +	struct ath12k *ar = hw->priv;
>> +	struct ath12k_vif *arvif = (void *)vif->drv_priv;
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static int ath12k_conf_tx_uapsd(struct ath12k *ar, struct ieee80211_vif *vif,
>> +				u16 ac, bool enable)
>> +{
>> +	struct ath12k_vif *arvif = ath12k_vif_to_arvif(vif);
>> +	u32 value = 0;
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static int ath12k_mac_set_txbf_conf(struct ath12k_vif *arvif)
>> +{
>
> snip
>
>> +	/* TODO: SUBFEE not validated in HK, disable here until validated? */
>
> nit: remove cryptic reference?

Fixed.

>> +static void ath12k_set_vht_txbf_cap(struct ath12k *ar, u32 *vht_cap)
>> +{
>> +	bool subfer, subfee;
>> +	int sound_dim = 0;
>> +
>> +	subfer = !!(*vht_cap & (IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE));
>> +	subfee = !!(*vht_cap & (IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE));
>> +
>> +	if (ar->num_tx_chains < 2) {
>> +		*vht_cap &= ~(IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE);
>> +		subfer = false;
>> +	}
>> +
>> +	/* If SU Beaformer is not set, then disable MU Beamformer Capability */
>> +	if (!subfer)
>> +		*vht_cap &= ~(IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE);
>> +
>> +	/* If SU Beaformee is not set, then disable MU Beamformee Capability */
>> +	if (!subfee)
>> +		*vht_cap &= ~(IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE);
>> +
>> +	sound_dim = (*vht_cap & IEEE80211_VHT_CAP_SOUNDING_DIMENSIONS_MASK);
>> +	sound_dim >>= IEEE80211_VHT_CAP_SOUNDING_DIMENSIONS_SHIFT;
>> +	*vht_cap &= ~IEEE80211_VHT_CAP_SOUNDING_DIMENSIONS_MASK;
>
> use bitops?

Indeed, added to todo.

>> +static int ath12k_mac_vif_txmgmt_idr_remove(int buf_id, void *skb, void *ctx)
>> +{
>> +	struct ieee80211_vif *vif = ctx;
>> +	struct ath12k_skb_cb *skb_cb = ATH12K_SKB_CB((struct sk_buff *)skb);
>
> nit: unnecessary typecast from void *?

Fixed.

>> +static u32
>> +ath12k_mac_prepare_he_mode(struct ath12k_pdev *pdev, u32 viftype)
>> +{
>> +	struct ath12k_pdev_cap *pdev_cap = &pdev->cap;
>> +	struct ath12k_band_cap *cap_band = NULL;
>> +	u32 *hecap_phy_ptr = NULL;
>> +	u32 hemode = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static int ath12k_set_he_mu_sounding_mode(struct ath12k *ar,
>> +					  struct ath12k_vif *arvif)
>> +{
>> +	u32 param_id, param_value;
>> +	struct ath12k_base *ab = ar->ab;
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static void ath12k_mac_op_configure_filter(struct ieee80211_hw *hw,
>> +					   unsigned int changed_flags,
>> +					   unsigned int *total_flags,
>> +					   u64 multicast)
>> +{
>> +	struct ath12k *ar = hw->priv;
>> +	bool reset_flag = false;
>
> nit: unnecessary initializer?

Fixed.

>
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +ath12k_mac_vdev_start_restart(struct ath12k_vif *arvif,
>> +			      const struct cfg80211_chan_def *chandef,
>> +			      bool restart)
>> +{
>> +	struct ath12k *ar = arvif->ar;
>> +	struct ath12k_base *ab = ar->ab;
>> +	struct wmi_vdev_start_req_arg arg = {};
>> +	int he_support = arvif->vif->bss_conf.he_support;
>> +	int ret = 0;
>
> nit: unnecessary initializer?

Fixed.

>> +static int
>> +ath12k_mac_op_assign_vif_chanctx(struct ieee80211_hw *hw,
>> +				 struct ieee80211_vif *vif,
>> +				 struct ieee80211_bss_conf *link_conf,
>> +				 struct ieee80211_chanctx_conf *ctx)
>> +{
>
> snip
>
>> +	ret = ath12k_mac_vdev_start(arvif, &ctx->def);
>> +	if (ret) {
>> +		ath12k_warn(ab, "failed to start vdev %i addr %pM on freq %d: %d\n",
>> +			    arvif->vdev_id, vif->addr,
>> +			    ctx->def.chan->center_freq, ret);
>> +		goto out;
>> +	}
>> +
>> +	if (arvif->vdev_type != WMI_VDEV_TYPE_MONITOR && ar->monitor_vdev_created)
>> +		ath12k_mac_monitor_start(ar);
>> +
>> +	arvif->is_started = true;
>> +
>> +	/* TODO: Setup ps and cts/rts protection */
>> +
>> +	ret = 0;
>
> unnecessary assignment -- already set from ath12k_mac_vdev_start()

Fixed.

> rest snipped. hard to review such a long file :P

Indeed, mac.c is 7000 lines long. We should consider refactoring it to
smaller files at some point.

-- 
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches

  reply	other threads:[~2022-11-08 13:56 UTC|newest]

Thread overview: 133+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-12 16:09 [PATCH 00/50] wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices Kalle Valo
2022-08-12 16:09 ` [PATCH 01/50] wifi: ath12k: add Kconfig Kalle Valo
2022-08-12 16:09 ` [PATCH 02/50] wifi: ath12k: add Makefile Kalle Valo
2022-08-12 16:09 ` [PATCH 03/50] wifi: ath12k: add ce.c Kalle Valo
2022-09-13  4:28   ` Ping-Ke Shih
2022-10-04 11:08     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 04/50] wifi: ath12k: add ce.h Kalle Valo
2022-08-12 16:09 ` [PATCH 05/50] wifi: ath12k: add core.c Kalle Valo
2022-09-13  6:18   ` Ping-Ke Shih
2022-10-12 23:12     ` Sriram R (QUIC)
2022-10-21  8:32     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 06/50] wifi: ath12k: add core.h Kalle Valo
2022-08-13  0:16   ` Jeff Johnson
2022-10-21 10:58     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 07/50] wifi: ath12k: add dbring.c Kalle Valo
2022-08-15 19:55   ` Jeff Johnson
2022-10-21 11:06     ` Kalle Valo
2022-11-09  9:12       ` Kalle Valo
2022-08-12 16:09 ` [PATCH 08/50] wifi: ath12k: add dbring.h Kalle Valo
2022-08-15 19:59   ` Jeff Johnson
2022-10-21 11:07     ` Kalle Valo
2022-10-21 11:12       ` Kalle Valo
2022-08-12 16:09 ` [PATCH 09/50] wifi: ath12k: add debug.c Kalle Valo
2022-08-12 16:09 ` [PATCH 10/50] wifi: ath12k: add debug.h Kalle Valo
2022-08-15 20:11   ` Jeff Johnson
2022-10-21 11:18     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 11/50] wifi: ath12k: add dp.c Kalle Valo
2022-08-16 15:17   ` Jeff Johnson
     [not found]     ` <CH0PR02MB82123C176B0E05156B66C9F1F6229@CH0PR02MB8212.namprd02.prod.outlook.com>
     [not found]       ` <94e894a8-a262-959e-a6ab-869dcba9e0fa@quicinc.com>
2022-10-13 16:37         ` Pradeep Kumar Chitrapu
2022-10-13 20:17         ` Jeff Johnson
2022-10-21 11:43     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 12/50] wifi: ath12k: add dp.h Kalle Valo
2022-08-15  1:56   ` Ping-Ke Shih
2022-09-05 17:27     ` Kalle Valo
2022-10-21 11:45       ` Kalle Valo
2022-08-12 16:09 ` [PATCH 13/50] wifi: ath12k: add dp_mon.c Kalle Valo
2022-08-16 20:13   ` Jeff Johnson
2022-10-21 13:07     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 14/50] wifi: ath12k: add dp_mon.h Kalle Valo
2022-08-12 16:09 ` [PATCH 15/50] wifi: ath12k: add dp_rx.c Kalle Valo
2022-08-17  0:37   ` Jeff Johnson
2022-10-12 23:29     ` Sriram R (QUIC)
2022-10-13  6:48       ` Jeff Johnson
2022-10-14  2:43         ` Sriram R (QUIC)
2022-10-14  3:01     ` Sriram R (QUIC)
2022-10-21 13:13       ` Kalle Valo
2022-08-17 23:19   ` Jeff Johnson
2022-10-12 23:27     ` Sriram R (QUIC)
2022-10-12 23:39     ` Sriram R (QUIC)
2022-10-13  6:50       ` Jeff Johnson
2022-10-14  2:43         ` Sriram R (QUIC)
2022-10-13  5:54     ` Sriram R (QUIC)
2022-10-21 13:30       ` Kalle Valo
2022-10-21 13:52     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 16/50] wifi: ath12k: add dp_rx.h Kalle Valo
2022-08-12 16:09 ` [PATCH 17/50] wifi: ath12k: add dp_tx.c Kalle Valo
2022-08-17 23:35   ` Jeff Johnson
     [not found]     ` <CH0PR02MB821206158809DF78955A0EC8F6249@CH0PR02MB8212.namprd02.prod.outlook.com>
2022-10-14  7:49       ` Pradeep Kumar Chitrapu
2022-11-08 13:14     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 18/50] wifi: ath12k: add dp_tx.h Kalle Valo
2022-08-12 16:09 ` [PATCH 19/50] wifi: ath12k: add hal.c Kalle Valo
2022-08-17 23:52   ` Jeff Johnson
2022-10-04 11:13     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 20/50] wifi: ath12k: add hal.h Kalle Valo
2022-08-12 16:09 ` [PATCH 21/50] wifi: ath12k: add hal_desc.h Kalle Valo
2022-08-12 16:09 ` [PATCH 22/50] wifi: ath12k: add hal_rx.c Kalle Valo
2022-08-12 16:09 ` [PATCH 23/50] wifi: ath12k: add hal_rx.h Kalle Valo
2022-08-18  0:21   ` Jeff Johnson
2022-10-04 11:15     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 24/50] wifi: ath12k: add hal_tx.c Kalle Valo
2022-08-18 17:21   ` Jeff Johnson
2022-10-04 11:20     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 25/50] wifi: ath12k: add hal_tx.h Kalle Valo
2022-08-12 16:09 ` [PATCH 26/50] wifi: ath12k: add hif.h Kalle Valo
2022-08-12 16:09 ` [PATCH 27/50] wifi: ath12k: add htc.c Kalle Valo
2022-08-18 19:33   ` Jeff Johnson
2022-10-04 11:23     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 28/50] wifi: ath12k: add htc.h Kalle Valo
2022-08-18 21:10   ` Jeff Johnson
2022-10-04 11:27     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 29/50] wifi: ath12k: add hw.c Kalle Valo
2022-08-18 21:31   ` Jeff Johnson
2022-10-04 11:28     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 30/50] wifi: ath12k: add hw.h Kalle Valo
2022-08-18 22:30   ` Jeff Johnson
2022-11-08 13:27     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 31/50] wifi: ath12k: add mac.c Kalle Valo
2022-08-15  6:09   ` Ping-Ke Shih
2022-09-05 17:31     ` Kalle Valo
2022-08-16 18:09   ` Jeff Johnson
2022-11-08 13:55     ` Kalle Valo [this message]
2022-08-12 16:09 ` [PATCH 32/50] wifi: ath12k: add mac.h Kalle Valo
2022-08-12 16:09 ` [PATCH 33/50] wifi: ath12k: add mhi.c Kalle Valo
2022-08-18 22:25   ` Jeff Johnson
2022-08-19 18:56     ` Jeff Johnson
2022-11-08 14:00     ` Kalle Valo
2022-11-09 16:49       ` Jeff Johnson
2022-08-12 16:09 ` [PATCH 34/50] wifi: ath12k: add mhi.h Kalle Valo
2022-08-18 22:30   ` Jeff Johnson
2022-11-08 14:01     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 35/50] wifi: ath12k: add pci.c Kalle Valo
2022-08-18 23:02   ` Jeff Johnson
2022-11-08 14:45     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 36/50] wifi: ath12k: add pci.h Kalle Valo
2022-08-18 23:18   ` Jeff Johnson
2022-11-08 14:56     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 37/50] wifi: ath12k: add peer.c Kalle Valo
2022-08-18 23:34   ` Jeff Johnson
2022-10-04 11:30     ` Karthikeyan Periyasamy (QUIC)
2022-08-12 16:09 ` [PATCH 38/50] wifi: ath12k: add peer.h Kalle Valo
2022-08-17 19:25   ` Jeff Johnson
2022-10-12 23:13     ` Sriram R (QUIC)
2022-08-12 16:09 ` [PATCH 39/50] wifi: ath12k: add qmi.c Kalle Valo
2022-08-22 17:14   ` Jeff Johnson
2022-11-08 14:59     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 40/50] wifi: ath12k: add qmi.h Kalle Valo
2022-08-19  0:25   ` Jeff Johnson
2022-11-08 15:06     ` Kalle Valo
2022-08-12 16:09 ` [PATCH 41/50] wifi: ath12k: add reg.c Kalle Valo
2022-08-12 16:09 ` [PATCH 42/50] wifi: ath12k: add reg.h Kalle Valo
2022-08-12 16:09 ` [PATCH 43/50] wifi: ath12k: add rx_desc.h Kalle Valo
2022-08-12 16:09 ` [PATCH 44/50] wifi: ath12k: add trace.c Kalle Valo
2022-08-12 16:09 ` [PATCH 45/50] wifi: ath12k: add trace.h Kalle Valo
2022-08-12 16:09 ` [PATCH 46/50] wifi: ath12k: add wmi.c Kalle Valo
2022-08-19 20:45   ` Jeff Johnson
2022-09-07  7:36   ` Ping-Ke Shih
2022-11-08 15:40     ` Kalle Valo
2022-08-12 16:10 ` [PATCH 47/50] wifi: ath12k: add wmi.h Kalle Valo
2022-08-19  1:11   ` Jeff Johnson
2022-11-08 15:43     ` Kalle Valo
2022-08-12 16:10 ` [PATCH 48/50] wifi: ath: add ath12k to Makefile Kalle Valo
2022-08-12 16:10 ` [PATCH 49/50] wifi: ath: add ath12k to Kconfig Kalle Valo
2022-08-12 16:10 ` [PATCH 50/50] MAINTAINERS: add ath12k Kalle Valo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87leoleejd.fsf@kernel.org \
    --to=kvalo@kernel.org \
    --cc=ath12k@lists.infradead.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=quic_jjohnson@quicinc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).