Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ac09628e authored by Ganapathi Bhat's avatar Ganapathi Bhat Committed by Greg Kroah-Hartman
Browse files

mwifiex: Fix invalid port issue




[ Upstream commit ecd7eb7c2bcf99f6c23d68ad56ce15949da848a1 ]

We have to use start port, for TX/RX of single packet,
instead of current aggregating port. This will fix SDIO
CMD53(TX/RX) returning -ETIMEDOUT and halting the data path.

Fixes: 0cb52aac ("mwifiex: do not set multiport flag for tx/rx single packet")
Signed-off-by: default avatarGanapathi Bhat <gbhat@marvell.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
Signed-off-by: default avatarSasha Levin <alexander.levin@microsoft.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 46eae02e
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -1458,7 +1458,7 @@ static int mwifiex_sdio_card_to_host_mp_aggr(struct mwifiex_adapter *adapter,
		}
		}


		if (card->mpa_rx.pkt_cnt == 1)
		if (card->mpa_rx.pkt_cnt == 1)
			mport = adapter->ioport + port;
			mport = adapter->ioport + card->mpa_rx.start_port;


		if (mwifiex_read_data_sync(adapter, card->mpa_rx.buf,
		if (mwifiex_read_data_sync(adapter, card->mpa_rx.buf,
					   card->mpa_rx.buf_len, mport, 1))
					   card->mpa_rx.buf_len, mport, 1))
@@ -1891,7 +1891,7 @@ static int mwifiex_host_to_card_mp_aggr(struct mwifiex_adapter *adapter,
		}
		}


		if (card->mpa_tx.pkt_cnt == 1)
		if (card->mpa_tx.pkt_cnt == 1)
			mport = adapter->ioport + port;
			mport = adapter->ioport + card->mpa_tx.start_port;


		ret = mwifiex_write_data_to_card(adapter, card->mpa_tx.buf,
		ret = mwifiex_write_data_to_card(adapter, card->mpa_tx.buf,
						 card->mpa_tx.buf_len, mport);
						 card->mpa_tx.buf_len, mport);