summaryrefslogtreecommitdiff
path: root/sys/dev/ic/fxp.c
AgeCommit message (Collapse)Author
2004-12-23change FXPF_UCODE to mean "firmware load attempted". if the firstTheo de Raadt
loadfirmware() fails because the file is missing, we do not want to try again when the first softclock -> fxp_stats_update -> fxp_init happens later. calling namei in that context is really bad; tested by mcbride
2004-12-22Use vfs firmware loader for fxp(4) interrupt coalescing microcode.Alexander Yurchenko
Initial work by Dmitry Bogdan <bogdan@eastonline.ru> with a help from me and Theo. ok deraadt@
2004-12-08Defer reinitialisation of the RU until after the interrupt handler has hadChristopher Pascoe
a chance to process all pending packets, otherwise the chip may overwrite their mbuf clusters after we have freed them. Eliminates a race that can cause random pool corruption when reconfiguring an interface under heavy network load. ok brad@ mcbride@ beck@ deraadt@ dlg@
2004-11-07struct ucode.length should be in number of elements (u_int32_t), notDaniel Hartmeier
number of bytes. reported by Pyun YongHyeon, patch from mickey@, ok deraadt@
2004-09-28remove if NVLAN around IFCAP_VLAN_MTUBrad Smith
2004-09-20remove software-based workaround for the resume issue.Brad Smith
ok beck@
2004-09-16whitespace cleanupMarkus Friedl
2004-08-04interrupt coalescing on post 82557 chips; from freebsd via Dmitry Bogdan ↵Michael Shalayeff
<dsb@poi.dvo.ru>
2004-07-12rearrange config-time printfsTheo de Raadt
2004-06-27stop passing an empty enaddr around since we figure out theBrad Smith
MAC address in the common attach code and not the PCI/CardBus specific portions, this was a side effect of the code being split to support CardBus. ok beck@
2004-05-18fix from netbsd to twiddle the fxp eeprom to disable dynamic standby modeBob Beck
on cards that have issues with this creating pci errors in 10 mbps mode tested by many, including me, nick, and pval. ok jason@, markus@
2004-05-18Check for and handle interface CRC errors.Bob Beck
testing by me, pval, nick, others... ok jason@, marco@
2004-05-12network drivers don't need to include bpfdesc.hTed Unangst
ok krw@ canacar@
2004-05-01Fix nasty bug where driver would not correctly catch and handle an rnrBob Beck
condition when it was due to the the recieve buffers being exhausted with no packet transmits during that time. Symptom was that the fxp would simply stop interrupting for the next 15 seconds until the watchdog kicked in and reset the chip due to 15 seconds of inactivity, making the fxp very poorly behaved when hammered on hard. ok deraadt@
2004-04-26Allocate rx buffer mbuf clusters at ifconfig time, release them when theRyan Thomas McBride
interface is configured down. FXP_NRFABUFS_MIN clusters are allocated at all times as they are used by the driver to send commands to the card. ok deraadt@
2004-04-15Fix incorrect error message (rx dma map, not tx).Ryan Thomas McBride
2004-01-20when reading eeprom for the address, DELAY(4) during the operations.Theo de Raadt
added by netbsd to support cats machines, but i ran into it on the alpha cs20's fxp0 when additional bits got set or reset randomly
2004-01-08typo from Pedro Martelletto;Jason McIntyre
2003-12-29no vtophys(), don't need uvm_extern.h anymore.Brad Smith
tested on alpha, i386, macppc and sparc64. ok millert@ mickey@
2003-12-23htole vs letoh (no functional changeMichael Shalayeff
2003-10-21typos from Tom Cosgrove;Jason McIntyre
Tom: I did not commit a couple of your changes. i did not include some punctuation fixes (full stops, etc.) mnemorable -> mnemonic: i decided memorable was probably better instrunctions -> instruction: i kept the plural
2003-05-28The statistics are wrong endian. "netstat -i" now gives sane results.Henric Jungheim
ok pb@
2003-02-19use a nop with I bit set at the end of the tx chain. This avoids a raceJason Wright
between status update and clearing the suspend bit on machines which can't write data smaller than 32bits at a time. Diff is the work of pefo, he just has been slacking too much to commit =)
2002-10-17Bigendian support for fxp, work from pefo with cleanups, ok art@ and others.Dale Rahn
2002-06-14spelling; from Brian Poole <raj@cerias.purdue.edu>Todd T. Fries
2002-06-09a step towards consistancy; in general:Todd T. Fries
'struct arpcom foo' -> 'struct arpcom sc_arpcom' ok itojun@
2002-05-13When collecting the completed tx descriptors, dmasync all of themArtur Grabowski
before reading, not just the first one. jason@ ok.
2002-05-13Don't leak memory when bus_dmamap_load_mbuf fails.Artur Grabowski
2002-05-10Zap an unsued define.Artur Grabowski
2002-05-10What we store on all archs just before the rfa is a pointerArtur Grabowski
to a bus_dmamap_t, not a bus_dmamap_t (just a cosmetic change, bus_dmamap_t is a pointer on all archs, but this was confusing)
2002-03-15Missing splxArtur Grabowski
2002-03-14First round of __P removal in sysTodd C. Miller
2002-02-15Don't cast nonexistent return value from splx to (void). ok art@Thomas Nordin
2001-11-06Replace inclusion of <vm/foo.h> with the correct <uvm/bar.h> when necessary.Miod Vallat
(Look ma, I might have broken the tree)
2001-11-05Switch everything to the new bus_dmamap_sync API.Artur Grabowski
Most work by Wilbern Cobb <vedge@csoft.org> with some fixes from me, mickey@ and drahn@.
2001-09-20occured->occurredMike Pechkin
idea from deraadt@ via NetBSD millert@ ok
2001-09-17Remove all of the last vestiges of vtophys (namely RFA's):Jason Wright
o stash bus_dmamap_t in the mbuf cluster (alignment fudge is now 2+sizeof(bus_dmamap_t) o borrow FXP_RXMAP_{GET|PUT} macros from NetBSD o move a few definitions around to make it all work
2001-08-27get direction of read/write correct in calls to bus_dmamap_sync()Jason Wright
2001-08-25deal with 5 arg form of bus_dmamap_sync() if available.Jason Wright
2001-08-10- make transmit use linked lists not indexed arrays (more like it was when I ↵Jason Wright
started) - also, only bus_dmamap_unload() loaded maps in fxp_stop()
2001-08-09- scb_wait() is now time based (not cpu speed based)Jason Wright
- rearrange multicast setup to be part of init - convert cu operations to bus_dma(9) (still have to do RFA ops).
2001-08-03Fix logic for detecting 82558 and newer chips in pci;Chris Cappuccio
This driver allows large frames for those chips so set IFCAP_VLAN_MTU for 82558+
2001-07-18fix vtophys usage, mainly ppc-required; art@ ok and tried to ↵Michael Shalayeff
bribe^H^H^H^H^Hmotivate me to bussydma 'em too (;
2001-06-27ALTQ'ify network drivers.Kenjiro Cho
- use the new queue macros. - use IFQ_POLL() to peek at the next packet. - use IFQ_IS_EMPTY() for empty check. - drivers should always check if (m == NULL) after IFQ_DEQUEUE(), since it could return NULL even when IFQ_IS_EMPTY() is FALSE under rate-limiting. - drivers are supposed to call if_start from tx complete interrupts (in order to trigger the next dequeue under rate-limiting).
2001-06-23ether_input_mbuf().Federico G. Schwindt
2001-06-13From NetBSD, 82562 requires a nop before a resume (tested by mickey)Jason Wright
2001-05-27Put back the fix for the possible leak and fix another bugArtur Grabowski
that the fix uncovered. The tx descriptors were not initialized when allocated. The initialization was done in fxp_init, but the first thing fxp_init does is to call fxp_stop and fxp_stop expects the tx descriptors to be already initialized. How did this ever work?
2001-05-26remove code which was obviously not tested. begone, sloppy code monkeysTheo de Raadt
2001-05-24When releasing the tx buffers, walk through all of them, don't abort whenArtur Grabowski
we find a descriptor with mb_head == NULL. It happens sometimes that we have NOPs in the tx chains and normal buffers after the NOP.
2001-05-24typoArtur Grabowski