<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/drivers/net/wireless/ath/ath5k/phy.c, branch v3.15.7</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=v3.15.7</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=v3.15.7'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2014-02-13T19:58:12+00:00</updated>
<entry>
<title>ath5k: shifting the wrong variable for AR5K_AR5210</title>
<updated>2014-02-13T19:58:12+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2014-02-07T11:50:38+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=4a0732d1f93ff52b0e74a61302260b9417f6db61'/>
<id>urn:sha1:4a0732d1f93ff52b0e74a61302260b9417f6db61</id>
<content type='text'>
In the original code we shift "AR5K_PHY(256) &gt;&gt; 28" which is zero but
the intent was to shift the return value of ath5k_hw_reg_read() like we
do a couple lines later.

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath5k: cleanup channel to eprom_mode function</title>
<updated>2013-03-06T21:24:27+00:00</updated>
<author>
<name>Jiri Slaby</name>
<email>jslaby@suse.cz</email>
</author>
<published>2013-02-25T14:36:48+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=188741731ce1148c0f8ab63ff41c81ce56ac1e74'/>
<id>urn:sha1:188741731ce1148c0f8ab63ff41c81ce56ac1e74</id>
<content type='text'>
Stop returning negative values from ath5k_eeprom_mode_from_channel.
Yell loudly about that case in that function instead and return the
default/zero/mode A. This cleans up the callers, but needs to pass ah
down to ath5k_eeprom_mode_from_channel for ATH5K_WARN. For that
purpose we also need the declaration to be moved to ath5k.h.

Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
Acked-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>NET: ath5k, check ath5k_eeprom_mode_from_channel retval</title>
<updated>2013-02-08T19:51:35+00:00</updated>
<author>
<name>Jiri Slaby</name>
<email>jslaby@suse.cz</email>
</author>
<published>2013-02-07T13:44:40+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=c5e534e569fd07991d4d09921c73823cd5e4115e'/>
<id>urn:sha1:c5e534e569fd07991d4d09921c73823cd5e4115e</id>
<content type='text'>
It can, if invalid argument given, return a negative value. In that
case we would access arrays out-of-bounds and such. Check the value
and yell loudly if that happened as it would be a bug in the
implementation. (Instead of silently corrupting memory.)

Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
Cc: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Cc: "Luis R. Rodriguez" &lt;mcgrof@qca.qualcomm.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath5k: add missing breaks in ath5k_hw_set_spur_mitigation_filter</title>
<updated>2012-09-25T19:57:44+00:00</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2012-09-24T18:30:19+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=944f8a1a6f5ff8b503f3544811d0aa4ac27dd2aa'/>
<id>urn:sha1:944f8a1a6f5ff8b503f3544811d0aa4ac27dd2aa</id>
<content type='text'>
https://bugzilla.kernel.org/show_bug.cgi?id=47681

Reported-by: David Binderman &lt;dcb314@hotmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath5k: Put power_level where it belongs and rename it</title>
<updated>2012-08-10T19:26:57+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mickflemm@gmail.com</email>
</author>
<published>2012-08-05T19:35:36+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=987af54fa93b1c01eb3a85229bc93dfe77e6d2e1'/>
<id>urn:sha1:987af54fa93b1c01eb3a85229bc93dfe77e6d2e1</id>
<content type='text'>
Put power_level to ah_txpower struct with the rest tx power infos and
also rename it to txp_requested to make more sense.

v2 make sure we don't memset it to zero on reset

Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath5k: Preserve tx power level requested from above on phy_init</title>
<updated>2012-08-10T19:26:56+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mickflemm@gmail.com</email>
</author>
<published>2012-08-05T19:35:35+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=493ca5ef4ec8a7e8396d6ab26f48de66bdf73dca'/>
<id>urn:sha1:493ca5ef4ec8a7e8396d6ab26f48de66bdf73dca</id>
<content type='text'>
By using cur_pwr on phy_init we re-use the power level previously set by the
driver, not the one we got from above.

Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath5k: Fix range scaling when setting rate power table</title>
<updated>2012-08-10T19:26:55+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mickflemm@gmail.com</email>
</author>
<published>2012-08-05T19:35:34+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=755051993bfcdf07acd84a7ffd08d463b85bfd69'/>
<id>urn:sha1:755051993bfcdf07acd84a7ffd08d463b85bfd69</id>
<content type='text'>
rates[i] is unsigned but txp_offset can be negative for newer parts
with PDADC table. We cover the case when rates[i] + txp_offset &gt; 63
but we must also cover the case when its &lt; 0 or else rates[i] will overflow.

Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath5k: Use correct value for min_pwr and cur_pwr</title>
<updated>2012-08-10T19:26:55+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mickflemm@gmail.com</email>
</author>
<published>2012-08-05T19:35:33+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=d12c5c53ce4c8c65c694d1103673182ef5afdc65'/>
<id>urn:sha1:d12c5c53ce4c8c65c694d1103673182ef5afdc65</id>
<content type='text'>
Make sure we don't store the table offsets for min and cur power levels,
store the 0.25dB values instead. This way we don't clamp the tx power level
to max (because now cur_pwr holds the 0.25dB value, not the table offset) after
re-using cur_pwr on reset.

Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath: Add and use pr_fmt, convert printks to pr_&lt;level&gt;</title>
<updated>2012-04-10T18:52:13+00:00</updated>
<author>
<name>Joe Perches</name>
<email>joe@perches.com</email>
</author>
<published>2012-03-19T00:30:52+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=516304b0f45614fb8967dc86ff681499204cdbb1'/>
<id>urn:sha1:516304b0f45614fb8967dc86ff681499204cdbb1</id>
<content type='text'>
Use a more current logging style.
Make sure all output is prefixed appropriately.

Signed-off-by: Joe Perches &lt;joe@perches.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>ath5k: do not re-run AGC calibration periodically</title>
<updated>2012-03-06T20:16:18+00:00</updated>
<author>
<name>Felix Fietkau</name>
<email>nbd@openwrt.org</email>
</author>
<published>2012-03-06T10:06:38+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=5c17ddc4a047c59638c7eb8537aa887a1ddb9b0b'/>
<id>urn:sha1:5c17ddc4a047c59638c7eb8537aa887a1ddb9b0b</id>
<content type='text'>
All other Atheros drivers run the AGC gain calibration and DC offset
calibration only after reset. Running them periodically has caused stability
issues on some (primarily AR2315/2413/5413/5414 based) devices, leading to
messages such as:

ath5k phy0: gain calibration timeout (2462MHz)
ath5k phy0: calibration of channel 11 failed

Related bug reports:
https://dev.openwrt.org/ticket/10574
https://bugzilla.redhat.com/show_bug.cgi?id=795141

Signed-off-by: Felix Fietkau &lt;nbd@openwrt.org&gt;
Acked-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
</feed>
