15 Mar 08:27
Re: PATCH dm9ks interrupt handling
Terry Qiu <zongchiqiu <at> gmail.com>
2007-03-15 07:27:02 GMT
2007-03-15 07:27:02 GMT
I just got the new driver for the dm9ks from vendor. I quick look through it, it seems fix this problem. But they don't clean out the code about the CONT_RX_PKT_CNT and the timer. They now set the CONT_RX_PKT_CNT=0xFFFF and set the db->cont_rx_pkt_cnt=0 first in dmfe_packet_receive() I will merge it into OSD, if any of you want to see the original code from vendor, The attachment is. regards /tqiu On Thu, 2007-03-08 at 14:14 +0800, Terry Qiu wrote: > I have sent a mail to DAVICOM about this, will let you know what we got. > > regards > > /tqiu > > On Wed, 2007-03-07 at 15:57 +0100, Anders Gustafsson wrote: > > Michael Gao wrote: > > > 5 second timer seems crazy to me too. However if we remove it > > > completely, this may bring us a situation where the interrupt is held > > > too long? > > > > I checked the original davicom driver > > (http://www.davicom.com.tw/eng/download/Driver/driver_9000a.htm) it also > > has this disable interrupts after X consecutive rx packets without tx > > thing. > > > > It smells quite a bit like a workaround for some hardware bug to me. But > > it could be something different it tries to solve; or just a clueless > > engineer implementing the driver :) > > > > I'd really like to know why that code is there, and what purpose it has. > > > > (as a side note the changes from the original davicom driver "06/17/2006 > > Butchered for NTR3 OSD" are quite big and messy) > > > > Are there documentation for this NIC available btw? > > > > >> I have removed this mechanism and also removed the bogus ioctl handler > > >> that just returned success to all calls, which makes things like the > > >> mii interface look like they work, but always return junk! > > >> > > > MG: Not sure about this, do we need this stub for driver compatibility > > > purpose? thus not getting NULL pointer if somewhere upper layer will > > > ever call the ioctl? > > > > It is not needed, upper layer takes care of that > > (http://lxr.linux.no/source/net/core/dev.c#L2612) > > > > anders > > > > > > > > > > >
RSS Feed