<feed xmlns='http://www.w3.org/2005/Atom'>
<title>litmus-rt.git/drivers/net/wireless/ath5k/hw.c, branch 2010.2</title>
<subtitle>The LITMUS^RT kernel.</subtitle>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/'/>
<entry>
<title>ath5k: HW code cleanup</title>
<updated>2008-09-05T20:15:24+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mick@madwifi.org</email>
</author>
<published>2008-08-29T19:45:39+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=c6e387a214f4b2c4bd48020409e366c133385d98'/>
<id>c6e387a214f4b2c4bd48020409e366c133385d98</id>
<content type='text'>
 * No code changes...

 * Split hw.c to multiple files for better maintenance and add some documentation on each file
   code is going to grow soon (eeprom.c for example is going to get much stuff currently developed
   on ath_info) so it's better this way.

 * Rename following functions to maintain naming scheme:

     ah_setup_xtx_desc -&gt; ah_setup_mrr_tx_desc
     (Because xtx doesn't say much, it's actually
     a multi-rate-retry tx descriptor)

     ath5k_hw_put_tx/rx_buf - &gt; ath5k_hw_set_tx/rxdp
     ath5k_hw_get_tx/rx_buf -&gt; ath5k_hw_get_tx/rxdp
     (We don't put any "buf" we set descriptor pointers on hw)

     ath5k_hw_tx_start -&gt; ath5k_hw_start_tx_dma
     ath5k_hw_start_rx -&gt; ath5k_hw_start_rx_dma
     ath5k_hw_stop_pcu_recv -&gt; ath5k_hw_stop_rx_pcu
     (It's easier this way to identify them, we also
     have ath5k_hw_start_rx_pcu which completes the
     set)

     ath5k_hw_set_intr -&gt; ath5k_hw_set_imr
     (As in get_isr we set imr here, not "intr")

  * Move ath5k_hw_setup_rx_desc on ah-&gt;ah_setup_rx_desc so we can
    include support for different rx descriptors in the future

  * Further cleanups so that checkpatch doesn't complain
    (only some &gt; 80 col warnings for eeprom.h and reg.h as usual
    due to comments)

  Tested on 5211 and 5213 cards and works ok.

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Acked-by: Luis R. Rodriguez &lt;lrodriguez@atheros.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * No code changes...

 * Split hw.c to multiple files for better maintenance and add some documentation on each file
   code is going to grow soon (eeprom.c for example is going to get much stuff currently developed
   on ath_info) so it's better this way.

 * Rename following functions to maintain naming scheme:

     ah_setup_xtx_desc -&gt; ah_setup_mrr_tx_desc
     (Because xtx doesn't say much, it's actually
     a multi-rate-retry tx descriptor)

     ath5k_hw_put_tx/rx_buf - &gt; ath5k_hw_set_tx/rxdp
     ath5k_hw_get_tx/rx_buf -&gt; ath5k_hw_get_tx/rxdp
     (We don't put any "buf" we set descriptor pointers on hw)

     ath5k_hw_tx_start -&gt; ath5k_hw_start_tx_dma
     ath5k_hw_start_rx -&gt; ath5k_hw_start_rx_dma
     ath5k_hw_stop_pcu_recv -&gt; ath5k_hw_stop_rx_pcu
     (It's easier this way to identify them, we also
     have ath5k_hw_start_rx_pcu which completes the
     set)

     ath5k_hw_set_intr -&gt; ath5k_hw_set_imr
     (As in get_isr we set imr here, not "intr")

  * Move ath5k_hw_setup_rx_desc on ah-&gt;ah_setup_rx_desc so we can
    include support for different rx descriptors in the future

  * Further cleanups so that checkpatch doesn't complain
    (only some &gt; 80 col warnings for eeprom.h and reg.h as usual
    due to comments)

  Tested on 5211 and 5213 cards and works ok.

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Acked-by: Luis R. Rodriguez &lt;lrodriguez@atheros.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: rates cleanup</title>
<updated>2008-08-22T20:29:50+00:00</updated>
<author>
<name>Bruno Randolf</name>
<email>br1@einfach.org</email>
</author>
<published>2008-07-30T15:12:58+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=63266a653589e1a237527479f10212ea77ce7844'/>
<id>63266a653589e1a237527479f10212ea77ce7844</id>
<content type='text'>
cleanup the rates structures used by ath5k. instead of separate driver and
mac80211 rate structures we now setup a static ieee80211_rate array and use it
directly. no conversion between two different rate structures has to be done
any more. a lot of unused and confusing junk was deleted.

renamed ath5k_getchannels into ath5k_setup_bands because this is what it does.
rewrote it to copy the bitrates correctly for each band. this is necessary for
running different hardware with the same driver (e.g. 5211 and 5212 based
cards).

add special handling of rates for AR5211 chipsets: it uses different rate codes
for CCK rates (which are actually like the other chips but with a 0xF mask).

setup a hardware code to rate index reverse mapping table for getting the rate
index of received frames.

the rates for control frames which have to be set in
ath5k_hw_write_rate_duration are now in one single array.

drivers/net/wireless/ath5k/ath5k.h:     Changes-licensed-under: ISC
drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD
drivers/net/wireless/ath5k/base.h:      Changes-licensed-under: 3-Clause-BSD
drivers/net/wireless/ath5k/hw.c:        Changes-licensed-under: ISC

Signed-off-by: Bruno Randolf &lt;br1@einfach.org&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
cleanup the rates structures used by ath5k. instead of separate driver and
mac80211 rate structures we now setup a static ieee80211_rate array and use it
directly. no conversion between two different rate structures has to be done
any more. a lot of unused and confusing junk was deleted.

renamed ath5k_getchannels into ath5k_setup_bands because this is what it does.
rewrote it to copy the bitrates correctly for each band. this is necessary for
running different hardware with the same driver (e.g. 5211 and 5212 based
cards).

add special handling of rates for AR5211 chipsets: it uses different rate codes
for CCK rates (which are actually like the other chips but with a 0xF mask).

setup a hardware code to rate index reverse mapping table for getting the rate
index of received frames.

the rates for control frames which have to be set in
ath5k_hw_write_rate_duration are now in one single array.

drivers/net/wireless/ath5k/ath5k.h:     Changes-licensed-under: ISC
drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD
drivers/net/wireless/ath5k/base.h:      Changes-licensed-under: 3-Clause-BSD
drivers/net/wireless/ath5k/hw.c:        Changes-licensed-under: ISC

Signed-off-by: Bruno Randolf &lt;br1@einfach.org&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: add Mesh Point support</title>
<updated>2008-08-22T20:29:49+00:00</updated>
<author>
<name>Andrey Yurovsky</name>
<email>andrey@cozybit.com</email>
</author>
<published>2008-07-17T20:12:24+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=8e5f3d0aaa3ae5305613553f869727b0361cd472'/>
<id>8e5f3d0aaa3ae5305613553f869727b0361cd472</id>
<content type='text'>
This enables draft-802.11s Mesh Point operation.  For that we need mesh
beaconing.  Tested with AR5212/AR5213 PCI card against Zydas and b43 mesh
nodes.

Signed-off-by: Andrey Yurovsky &lt;andrey@cozybit.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This enables draft-802.11s Mesh Point operation.  For that we need mesh
beaconing.  Tested with AR5212/AR5213 PCI card against Zydas and b43 mesh
nodes.

Signed-off-by: Andrey Yurovsky &lt;andrey@cozybit.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: Reorder calibration calls during reset and update hw_set_power</title>
<updated>2008-08-01T19:31:32+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mick@madwifi.org</email>
</author>
<published>2008-07-20T03:41:26+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=df75dcddf99647d68f3b6b874effe5365c5024d9'/>
<id>df75dcddf99647d68f3b6b874effe5365c5024d9</id>
<content type='text'>
 * Update ath5k_hw_reset and add some more documentation about PHY calibration
 * Fix ath5k_hw_set_power to use AR5K_SLEEP_CTL_SLE_ALLOW for Network sleep
 * Preserve sleep duration field while setting AR5K_SLEEP_CTL
   and reduce delays &amp; checks for register's status (got this from
   decompiling &amp; dumps, it works for me but it needs testing)

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Update ath5k_hw_reset and add some more documentation about PHY calibration
 * Fix ath5k_hw_set_power to use AR5K_SLEEP_CTL_SLE_ALLOW for Network sleep
 * Preserve sleep duration field while setting AR5K_SLEEP_CTL
   and reduce delays &amp; checks for register's status (got this from
   decompiling &amp; dumps, it works for me but it needs testing)

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: Do ADC test during reset</title>
<updated>2008-08-01T19:31:32+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mick@madwifi.org</email>
</author>
<published>2008-07-20T03:38:16+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=e2a0ccebc4ffabc1c7234cfd324299b5a936e0f2'/>
<id>e2a0ccebc4ffabc1c7234cfd324299b5a936e0f2</id>
<content type='text'>
 * Do an ADC test during reset to match recent regdumps

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Do an ADC test during reset to match recent regdumps

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: Misc hw_reset updates</title>
<updated>2008-08-01T19:31:32+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mick@madwifi.org</email>
</author>
<published>2008-07-20T03:36:52+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=2203d6be7ed17af81a1dc35a0af9806086743b02'/>
<id>2203d6be7ed17af81a1dc35a0af9806086743b02</id>
<content type='text'>
 * Update hw_reset to calculate some of the values we were using as static
 * Increase activation to rx delay

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Update hw_reset to calculate some of the values we were using as static
 * Increase activation to rx delay

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: Misc hw_attach fixes</title>
<updated>2008-08-01T19:31:31+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mick@madwifi.org</email>
</author>
<published>2008-07-20T03:34:39+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=e5a4ad0dda8f79a984ba6391af65274b482b6703'/>
<id>e5a4ad0dda8f79a984ba6391af65274b482b6703</id>
<content type='text'>
 * Correctly attach RF2425
 * Update SREV values for Radio chips
 * Update hw_attach to use new SPENDING values
 * Write a bit after POST for some chips

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Correctly attach RF2425
 * Update SREV values for Radio chips
 * Update hw_attach to use new SPENDING values
 * Write a bit after POST for some chips

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: Restore saved initval after POST</title>
<updated>2008-08-01T19:31:31+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mick@madwifi.org</email>
</author>
<published>2008-07-20T03:32:32+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=ba37746e547e14703a5ac86560c6e056620bc4cf'/>
<id>ba37746e547e14703a5ac86560c6e056620bc4cf</id>
<content type='text'>
 * Restore saved initial value after POST

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Restore saved initial value after POST

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ath5k: Update register list</title>
<updated>2008-08-01T19:31:31+00:00</updated>
<author>
<name>Nick Kossifidis</name>
<email>mick@madwifi.org</email>
</author>
<published>2008-07-30T10:18:59+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=0bacdf303f72a3ed34252934114bc04e79222687'/>
<id>0bacdf303f72a3ed34252934114bc04e79222687</id>
<content type='text'>
* Update list of registers
* Use updated register macros inside hw.c, initvals.c and debug.c

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Update list of registers
* Use updated register macros inside hw.c, initvals.c and debug.c

Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Ath5k: flush work</title>
<updated>2008-07-29T20:36:27+00:00</updated>
<author>
<name>Jiri Slaby</name>
<email>jirislaby@gmail.com</email>
</author>
<published>2008-07-15T15:44:20+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=274c7c3638cd027b46f76d0caef96c1bad8b6701'/>
<id>274c7c3638cd027b46f76d0caef96c1bad8b6701</id>
<content type='text'>
Make sure that the irq is not in progress after stop. This means
two things:
- ensure the intr setting register is set by flushing posted values
- call synchronize_irq() after that

Also flush stop tx write, inform callers of the tx stop about still
pending transfers (unsuccessful stop) and finally don't wait another
3ms in ath5k_rx_stop, since ath5k_hw_stop_rx_dma ensures transfer to
be finished.

Make sure all writes will be ordered in respect to locks by mmiowb().

Signed-off-by: Jiri Slaby &lt;jirislaby@gmail.com&gt;
Acked-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Cc: Luis R. Rodriguez &lt;mcgrof@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make sure that the irq is not in progress after stop. This means
two things:
- ensure the intr setting register is set by flushing posted values
- call synchronize_irq() after that

Also flush stop tx write, inform callers of the tx stop about still
pending transfers (unsuccessful stop) and finally don't wait another
3ms in ath5k_rx_stop, since ath5k_hw_stop_rx_dma ensures transfer to
be finished.

Make sure all writes will be ordered in respect to locks by mmiowb().

Signed-off-by: Jiri Slaby &lt;jirislaby@gmail.com&gt;
Acked-by: Nick Kossifidis &lt;mickflemm@gmail.com&gt;
Cc: Luis R. Rodriguez &lt;mcgrof@gmail.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
