<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/net/wireless/ralink, branch linux-5.3.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.3.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.3.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2019-09-03T13:52:22Z</updated>
<entry>
<title>Revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band"</title>
<updated>2019-09-03T13:52:22Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-08-29T11:29:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=13fa451568ab9e8b3074ef741477c7938c713c42'/>
<id>urn:sha1:13fa451568ab9e8b3074ef741477c7938c713c42</id>
<content type='text'>
This reverts commit 9ad3b55654455258a9463384edb40077439d879f.

As reported by Sergey:

"I got some problem after upgrade kernel to 5.2 version (debian testing
linux-image-5.2.0-2-amd64). 5Ghz client  stopped to see AP.
Some tests with 1metre distance between client-AP: 2.4Ghz  -22dBm, for
5Ghz - 53dBm !, for longer distance (8m + walls) 2.4 - 61dBm, 5Ghz not
visible."

It was identified that rx signal level degradation was caused by
9ad3b5565445 ("rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band").
So revert this commit.

Cc: &lt;stable@vger.kernel.org&gt; # v5.1+
Reported-and-tested-by: Sergey Maranchuk &lt;slav0nic0@gmail.com&gt;
Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2x00: clear up IV's on key removal</title>
<updated>2019-09-03T13:51:30Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-08-23T12:48:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=14d5e14c8a6c257eb322ddeb294ac4c243a7d2e1'/>
<id>urn:sha1:14d5e14c8a6c257eb322ddeb294ac4c243a7d2e1</id>
<content type='text'>
After looking at code I realized that my previous fix
95844124385e ("rt2x00: clear IV's on start to fix AP mode regression")
was incomplete. We can still have wrong IV's after re-keyring.
To fix that, clear up IV's also on key removal.

Fixes: 710e6cc1595e ("rt2800: do not nullify initialization vector data")
Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
tested-by: Emil Karlson &lt;jekarl@iki.fi&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2x00: clear IV's on start to fix AP mode regression</title>
<updated>2019-08-20T13:59:22Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-08-19T11:20:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=95844124385eae4bd9ca5f9514a0fc33d561ac3c'/>
<id>urn:sha1:95844124385eae4bd9ca5f9514a0fc33d561ac3c</id>
<content type='text'>
To do not brake HW restart we should keep initialization vectors data.
I assumed that on start the data is already initialized to zeros, but
that not true on some scenarios and we should clear it. So add
additional flag to check if we are under HW restart and clear IV's
data if we are not.

Patch fixes AP mode regression.

Reported-and-tested-by: Emil Karlson &lt;jekarl@iki.fi&gt;
Fixes: 710e6cc1595e ("rt2800: do not nullify initialization vector data")
Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2x00usb: fix rx queue hang</title>
<updated>2019-07-15T17:52:18Z</updated>
<author>
<name>Soeren Moch</name>
</author>
<published>2019-07-01T10:53:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=41a531ffa4c5aeb062f892227c00fabb3b4a9c91'/>
<id>urn:sha1:41a531ffa4c5aeb062f892227c00fabb3b4a9c91</id>
<content type='text'>
Since commit ed194d136769 ("usb: core: remove local_irq_save() around
 -&gt;complete() handler") the handler rt2x00usb_interrupt_rxdone() is
not running with interrupts disabled anymore. So this completion handler
is not guaranteed to run completely before workqueue processing starts
for the same queue entry.
Be sure to set all other flags in the entry correctly before marking
this entry ready for workqueue processing. This way we cannot miss error
conditions that need to be signalled from the completion handler to the
worker thread.
Note that rt2x00usb_work_rxdone() processes all available entries, not
only such for which queue_work() was called.

This patch is similar to what commit df71c9cfceea ("rt2x00: fix order
of entry flags modification") did for TX processing.

This fixes a regression on a RT5370 based wifi stick in AP mode, which
suddenly stopped data transmission after some period of heavy load. Also
stopping the hanging hostapd resulted in the error message "ieee80211
phy0: rt2x00queue_flush_queue: Warning - Queue 14 failed to flush".
Other operation modes are probably affected as well, this just was
the used testcase.

Fixes: ed194d136769 ("usb: core: remove local_irq_save() around -&gt;complete() handler")
Cc: stable@vger.kernel.org # 4.20+
Signed-off-by: Soeren Moch &lt;smoch@web.de&gt;
Acked-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2800: do not enable watchdog by default</title>
<updated>2019-06-25T05:10:13Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-06-15T10:01:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0f47aeeada2a1fe296258eab9a08ced258009481'/>
<id>urn:sha1:0f47aeeada2a1fe296258eab9a08ced258009481</id>
<content type='text'>
Make watchdog disabled by default and add module parameter to enable it.

User will have to create file in /etc/modprobe.d/ with

options rt2800lib watchdog=1

to enable the watchdog or load "rt2800lib watchdog=1" module manually
before loading rt2800{soc,pci,usb} module.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2x00: add restart hw</title>
<updated>2019-06-25T05:10:12Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-06-15T10:00:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e403fa31ed71e87de8e5991e23406b8377c9c894'/>
<id>urn:sha1:e403fa31ed71e87de8e5991e23406b8377c9c894</id>
<content type='text'>
Add ieee80211_restart_hw() to watchdog and debugfs file for testing
if restart works as expected.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2800: do not nullify initialization vector data</title>
<updated>2019-06-25T05:10:11Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-06-15T10:00:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=710e6cc1595e25378c4b9977f7a8b4ad4a72a109'/>
<id>urn:sha1:710e6cc1595e25378c4b9977f7a8b4ad4a72a109</id>
<content type='text'>
If we restart hw we should keep existing IV (initialization vector)
otherwise HW encryption will be broken after restart.

Also fix some coding style issues on the way.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2800: add pre_reset_hw callback</title>
<updated>2019-06-25T05:10:10Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-06-15T10:00:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=09db3b000619b38d504e1fff66efed33dfacb6c0'/>
<id>urn:sha1:09db3b000619b38d504e1fff66efed33dfacb6c0</id>
<content type='text'>
Add routine to cleanup interfaces data before hw reset as
ieee80211_restart_hw() will do setup interfaces again.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2800: initial watchdog implementation</title>
<updated>2019-06-25T05:10:09Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-06-15T10:00:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=759c5b599cf4ddb3b56e66d459b1bf0fe2724fb8'/>
<id>urn:sha1:759c5b599cf4ddb3b56e66d459b1bf0fe2724fb8</id>
<content type='text'>
Add watchdog for rt2800 devices. For now it only detect hung
and print error.

[Note: I verified that printing messages from process context is
fine on MT7620 (WT3020) platform that have problem when printk
is called from interrupt context].

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>rt2800: add helpers for reading dma done index</title>
<updated>2019-06-25T05:10:08Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2019-06-15T10:00:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2034afe4db4a2a4f22541d7f7b426e38d2093d38'/>
<id>urn:sha1:2034afe4db4a2a4f22541d7f7b426e38d2093d38</id>
<content type='text'>
For mmio we do not properlly trace dma done Q_INDEX_DMA_DONE index
for TX queues. That would require implementing INT_SOURCE_CSR_*_DMA_DONE
interrupts, what is rather not worth to do due to adding extra
CPU load (small but still somewhat not necessary otherwise).

We can just read TX DMA done indexes from registers directly. What
will be used by watchdog.

Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
</entry>
</feed>
