<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel">
    <title>gmane.linux.drivers.bcm54xx.devel</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13886"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13860"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13858"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13857"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13856"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13855"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13854"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13853"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13852"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13851"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13850"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13849"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13848"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13847"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13846"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13845"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13844"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13843"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13842"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13841"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13886">
    <title>Re: linux-next: Tree for May 6 (b43/bcma)</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13886</link>
    <description>&lt;pre&gt;
Does any Kconfig wizard know the magic incantation to accomplish the following:

1. Ensure that if SSB and BMCA are both selected, then both are either "m" or "y"

2. Ensure that BRCMSMAC is not "y" if BMCA is "m".

3. Ensure that B43 is not "y" if SSB and/or BCMA is "m".

Thanks,

Larry
&lt;/pre&gt;</description>
    <dc:creator>Larry Finger</dc:creator>
    <dc:date>2013-05-07T03:06:23</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13860">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13860</link>
    <description>&lt;pre&gt;On Mon, 22 Apr 2013 12:00:47 +0200
Michael Büsch &amp;lt;m&amp;lt; at &amp;gt;bues.ch&amp;gt; wrote:


whoops I forgot. Please also add
Cc: stable-u79uwXL29TY76Z2rM5mHXA&amp;lt; at &amp;gt;public.gmane.org
to the signed-off list


&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-23T06:22:35</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13858">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13858</link>
    <description>&lt;pre&gt;On Mon, 22 Apr 2013 10:11:41 +0200 (CEST)
Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


Please remove rxdesc_underruns and send the patch (properly signed-off)
to John Linville. Cc the linux-wireless mailinglist, b43-dev mailinglist
and probably everybody involved in the review discussion.

You can also add a
Reviewed-by: Michael Buesch &amp;lt;m&amp;lt; at &amp;gt;bues.ch&amp;gt;

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-22T10:00:47</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13857">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13857</link>
    <description>&lt;pre&gt;

On Sun, 21 Apr 2013, Michael B?sch wrote:

Sorry, seems like I dont do that of a good joob revewing my own patches. 
It slipped in from one of my debug builts. Should I send in this to John 
or do you think we have to test it further? It has been running during the 
entire night with high load on my device. So that seems to work, but that 
is only on one device of course.
//Thommy


Subject:[PATCH] B43: Handle DMA RX descriptor underrun
From: Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;

Add handling of rx descriptor underflow. This fixes a fault that could
happen on slow machines, where data is received faster than the CPU can
handle. In such a case the device will use up all rx descriptors and
refuse to send any more data before confirming that it is ok. This
patch enables necessary interrupt to discover such a situation and will
handle them by dropping everything in the ring buffer.

Signed-off-by: Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Cc: stable &amp;lt;stabl&lt;/pre&gt;</description>
    <dc:creator>Thommy Jakobsson</dc:creator>
    <dc:date>2013-04-22T08:11:41</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13856">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13856</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 22:13:43 +0200 (CEST)
Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


Why do we add that? It's not incremented and used anywhere.

The rest looks good.

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T21:53:13</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13855">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13855</link>
    <description>&lt;pre&gt;

Check, better?

//Thommy

Subject:[PATCH] B43: Handle DMA RX descriptor underrun
From: Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;

Add handling of rx descriptor underflow. This fixes a fault that could
happen on slow machines, where data is received faster than the CPU can
handle. In such a case the device will use up all rx descriptors and
refuse to send any more data before confirming that it is ok. This
patch enables necessary interrupt to discover such a situation and will
handle them by dropping everything in the ring buffer.

Signed-off-by: Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 drivers/net/wireless/b43/b43.h  |    1 +
 drivers/net/wireless/b43/dma.c  |   19 +++++++++++++++++
 drivers/net/wireless/b43/dma.h  |    4 +++-
 drivers/net/wireless/b43/main.c |   43 ++++++++++++++++-----------------------
 4 files changed, 41 insertions(+), 26 deletions(-)

diff --git a/drivers/net/wireless/b43/b43.h b/drivers/net/wireless/b43/b43.h
index 7f3d461..fdc&lt;/pre&gt;</description>
    <dc:creator>Thommy Jakobsson</dc:creator>
    <dc:date>2013-04-21T20:13:43</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13854">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13854</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 20:39:49 +0200
Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


Hm, ok. Well, sounds plausible. So you may keep it as-is.

But you should probably rename the function to b43_dma_handle_rx_overflow(),
because the discard does not work properly, if the function is called without
an overflow in progress.

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T18:44:39</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13853">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13853</link>
    <description>&lt;pre&gt;New response since my phone answered with html

On Sun, 21 Apr 2013, Michael B?sch wrote:

The reason for the interrupt is because the current index in the device is
the same as the last index. That's why I read the value from the device. But
I fix it, don't have a strong opinion about it.

Crap, missed that.

/thommy
&lt;/pre&gt;</description>
    <dc:creator>Thommy Jakobsson</dc:creator>
    <dc:date>2013-04-21T18:44:24</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13852">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13852</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 20:07:39 +0200 (CEST)
Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


Hmmm. While this does work (because the register and ring-&amp;gt;current_slot contain the same
value at this point), I'd prefer if you write ring-&amp;gt;current_slot - 1
to the stop-index-register.

Also, the comment needs to be updated.

PS: I'll send a patch that renames set_current_rxslot() later, because it's really confusing.

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T18:26:01</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13851">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13851</link>
    <description>&lt;pre&gt;

On Sun, 21 Apr 2013, Michael B?sch wrote:

Hi again,
below you can find the patch that I'm currently trying out. The 
change is according to the discussion above. Instead of setting the rx 
index as the driver does during startup, it decrements it by one.

It has been running at ~1300KB/s in RX and 100KB/s in TX for the last 
couple of hours without problems. Approximately there have been one 
underflow per second. CPU load is constantly over 80%, pretty much just the 
interrupt thread that is using the CPU.

I can see that at the entry of b43_dma_discard all three indexes, 
ring-&amp;gt;current_slot(ring), get_current_rxslot(ring) and
b43_dma_read(ring,B43_DMA32_RXINDEX) are always the same. Of course the rx 
index is in bytes. So this is as expected. 
B
I also has to back my statement that I always see a normal rx interrupt at 
the same time as the underflow interrupt. I have seen a couple of cases 
where that didn't happen. So this seems like a better way of doing 
things than setting rx index to max slots whe&lt;/pre&gt;</description>
    <dc:creator>Thommy Jakobsson</dc:creator>
    <dc:date>2013-04-21T18:07:39</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13850">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13850</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 16:24:18 +0100
Piotras &amp;lt;piotras-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


No way.
Interrupts are properly blocked before leaving the top-half handler and
re-enabled before leaving the bottom-half handler already.
Adding stuff to the top-half handler would only introduce serious locking
and latency issues and it would fix nothing.

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T16:35:14</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13849">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13849</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 17:11:23 +0200 (CEST)
Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


Yes the set_current_rxslot() op should be renamed to set_rx_stop_slot() or something like that.

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T16:31:30</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13848">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13848</link>
    <description>&lt;pre&gt;
Yes.

My code was incorrect as I should ensure that ring-&amp;gt;current_slot is
equal ops-&amp;gt;get_current_rxslot(ring). As we are in the RX underflow,
B43_DMA32_RXSTATUS, B43_DMA32_RXINDEX and ring-&amp;gt;current_slot should
already point to the same descriptor, so only set_current_rxslot is
needed.



Top half interrupt handler (b43_do_interrupt).


&lt;/pre&gt;</description>
    <dc:creator>Piotras</dc:creator>
    <dc:date>2013-04-21T15:24:18</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13847">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13847</link>
    <description>&lt;pre&gt;

Why would I update ring-&amp;gt;current_slot? That should point where we are in 
the ring from the drivers perspective. Since that i always updated 
together with the rx index (set_current_rxslot) it will always be the same 
as the current index in hw (get_current_rxslot) in the b43_rx_discard. 
That is also where it should be.

It is true that I'll introduce a possibility for ownership problem with 
the original patch, but that will only last until the next time b43_dma_rx 
is called. Which is just after the b43_dma_rx_discard has 
exited since you always will get a rx interrupt at the same time as the 
underflow interrupt. This is also the case at each startup since rx index 
is initilised to the same thing as I used.

I have tested the index-1 that me and michael talked about, from the 
initial test is working just fine. Im running with only 8 rxslots to try 
to find any corner cases, so I see a lot of traffic drops though. This 
would also fix the ownership problem.

BTW, it is confusing that set and get curr&lt;/pre&gt;</description>
    <dc:creator>Thommy Jakobsson</dc:creator>
    <dc:date>2013-04-21T15:11:23</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13846">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13846</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 15:46:03 +0100
Piotras &amp;lt;piotras-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


I don't think so.
We don't modify the descriptor pointer, but the stop index.


get_current_rxslot() reads a different register than set_current_rxslot().

get_current_rxslot() returns the descriptor pointer that the device is pointing to.
set_current_rxslot() sets the _stop_ index.
Yes, at least the last one is misnamed.


What is "top half"?

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T14:59:51</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13845">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13845</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 15:27:49 +0100
Piotras &amp;lt;piotras-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


Yes this is why it stalls. But how to fix this without additional counting?
I'd rather prefer wiping the whole ring in that case.

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T14:51:42</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13844">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13844</link>
    <description>&lt;pre&gt;
Thommy,

I had the same thought, but notice that you also need to update
ring-&amp;gt;current_slot in b43_dma_rx_discard.

When ring-&amp;gt;current_slot update is missing (as in your original
patch), you will introduce the same problem I hit by removing
ops-&amp;gt;set_current_rxslot(ring, slot) from b43_dma_rx (disabling
RX underflow detection). Basically we break assumptions about
ownership of descriptors (which descriptors are exclusively used
by host and which can be written by DMA processor). So next time
b43_dma_rx is called it may process descriptors that are updated
by DMA processor at the same time (race condition).

I guess the following could be used to mark all descriptors for DMA
use from RX underflow interrupt or whenever we decide that number of
free descriptors is too low (not tested):

  slot = prev_slot(ring, ops-&amp;gt;get_current_rxslot(ring));
  wmb();
  ops-&amp;gt;set_current_rxslot(ring, slot);
  ring-&amp;gt;current_slot = slot;

The above code simply puts back all the already filled descriptors
back for DMA processor to &lt;/pre&gt;</description>
    <dc:creator>Piotras</dc:creator>
    <dc:date>2013-04-21T14:46:03</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13843">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13843</link>
    <description>&lt;pre&gt;Michael,

Based on BCM440X Programmer's Reference Guide that may or may not
apply to DMA processor used in WLAN chipsets, B43_DMA32_RXSTATUS may
be updated by hardware to point to the same descriptor as
B43_DMA32_RXINDEX.

For DMA processor this means that no more free descriptors are
available. However b43_dma_rx assumes no data needs to be processed
(see how ring-&amp;gt;current_slot is updated and used in loop condition on
next interrupt). This could explain stalls.

I don't expect that changing loop condition is sufficient, as without
dropping some packets we will not prevent FIFO overruns.


Regards,

Piotr

On Sun, Apr 21, 2013 at 7:38 AM, Michael Büsch &amp;lt;m&amp;lt; at &amp;gt;bues.ch&amp;gt; wrote:
&lt;/pre&gt;</description>
    <dc:creator>Piotras</dc:creator>
    <dc:date>2013-04-21T14:27:49</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13842">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13842</link>
    <description>&lt;pre&gt;

On Sun, 21 Apr 2013, Michael Büsch wrote:

Check, I'll give index-1 a go. It should be quite obvious if it works or 
not.

//thommy_______________________________________________
b43-dev mailing list
b43-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r&amp;lt; at &amp;gt;public.gmane.org
http://lists.infradead.org/mailman/listinfo/b43-dev
&lt;/pre&gt;</description>
    <dc:creator>Thommy Jakobsson</dc:creator>
    <dc:date>2013-04-21T12:12:05</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13841">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13841</link>
    <description>&lt;pre&gt;On Sun, 21 Apr 2013 11:01:11 +0200 (CEST)
Thommy Jakobsson &amp;lt;thommyj-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:


That's what broadcom does in their implementation. I guess that's the only reason.

&lt;/pre&gt;</description>
    <dc:creator>Michael Büsch</dc:creator>
    <dc:date>2013-04-21T09:21:18</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13840">
    <title>Re: [PATCH] b43: use rx desc underrun interrupt</title>
    <link>http://permalink.gmane.org/gmane.linux.drivers.bcm54xx.devel/13840</link>
    <description>&lt;pre&gt;

On Sun, 21 Apr 2013, Michael Büsch wrote:

All times that I had extra debugging on I always got a normal rx interrupt 
at the same time as the underflow interrupt. So the b43_dma_rx is called 
just after the b43_rx_discard, and the rx index is updated again to 
something better. Writing the rx index to index-1 was my initial plan, the 
only reason why I chose beyond the ring boundary was because thats how it 
is initialised. I never tried index-1, so I don't know if it works though. 
It did try to write the same value back again, but of course that didn't 
work.

Why is it set to to beyond the ring when it is initilised?

and yet you didn't fix this problem... =) Just kidding, to be honest I 
didn't understand what in my patch your question concerned. So I pretty 
much wrote down all I know about how it works (or how I think it works).

Thanks,
Thommy_______________________________________________
b43-dev mailing list
b43-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r&amp;lt; at &amp;gt;public.gmane.org
http://lists.infradead.org/mai&lt;/pre&gt;</description>
    <dc:creator>Thommy Jakobsson</dc:creator>
    <dc:date>2013-04-21T09:01:11</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.linux.drivers.bcm54xx.devel">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.linux.drivers.bcm54xx.devel</link>
  </textinput>
</rdf:RDF>
