summaryrefslogtreecommitdiffstats
path: root/sys/dev/hme
Commit message (Collapse)AuthorAgeFilesLines
* Mega busdma API commit.scottl2003-07-011-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg. Lockfunc allows a driver to provide a function for managing its locking semantics while using busdma. At the moment, this is used for the asynchronous busdma_swi and callback mechanism. Two lockfunc implementations are provided: busdma_lock_mutex() performs standard mutex operations on the mutex that is specified from lockfuncarg. dftl_lock() is a panic implementation and is defaulted to when NULL, NULL are passed to bus_dma_tag_create(). The only time that NULL, NULL should ever be used is when the driver ensures that bus_dmamap_load() will not be deferred. Drivers that do not provide their own locking can pass busdma_lock_mutex,&Giant args in order to preserve the former behaviour. sparc64 and powerpc do not provide real busdma_swi functions, so this is largely a noop on those platforms. The busdma_swi on is64 is not properly locked yet, so warnings will be emitted on this platform when busdma callback deferrals happen. If anyone gets panics or warnings from dflt_lock() being called, please let me know right away. Reviewed by: tmm, gibbs
* Some gem and hme hardware bogusly has the intpin register hardwired totmm2003-07-011-4/+6
| | | | | 0; detect this case and correct it. While being there, clean up nearby comments.
* - Don't call pci_enable_io() in drivers (unless needed for resume).mdodd2003-04-161-1/+0
| | | | | - Don't test memory/port status and emit an error message; the PCI bus code will do this now.
* - Express hard dependencies on bus (pci, isa, pccard) andmdodd2003-04-152-2/+5
| | | | | | | | network layer (ether). - Don't abuse module names to facilitate ifconfig module loading; such abuse isn't really needed. (And if we do need type information associated with a module then we should make it explicit and not use hacks.)
* Back out M_* changes, per decision of the TRB.imp2003-02-191-1/+1
| | | | Approved by: trb
* bus_dmamap_sync() overhaul:tmm2003-01-211-21/+24
| | | | | | | | - Remove NetBSD-style or-ed together BUS_DMASYNC operations, in some cases relaxing the (intended) syncing operation a bit. - Add syncs before reading the descriptor rings. - Try to combine syncs where possible to avoid overhead. - Sync all maps before unloading them.
* Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.alfred2003-01-211-1/+1
| | | | Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
* Add detach, shutdown, suspend and resume methods.tmm2003-01-094-12/+142
| | | | Tested by: jake
* Fix module dependancy name.obrien2003-01-081-1/+1
| | | | | PR: 46871 Submitted by: Hartmut Brandt <brandt@fokus.gmd.de>
* Convert to use bus_dmamap_load_mbuf(); decouple software TX descriptorstmm2003-01-063-216/+149
| | | | | | | from the hardware descriptors to avoid the overhead of having a DMA map for each of them. Bump the number of hardware descriptors to 128, and use half as many software descriptors for now. Some minor cleanups.
* network interface driver changes:sam2002-11-141-13/+4
| | | | | | | | | | | | | | o don't strip the Ethernet header from inbound packets; pass packets up the stack intact (required significant changes to some drivers) o reference common definitions in net/ethernet.h (e.g. ETHER_ALIGN) o track ether_ifattach/ether_ifdetach API changes o track bpf changes (use BPF_TAP and BPF_MTAP) o track vlan changes (ifnet capabilities, revised processing scheme, etc.) o use if_input to pass packets "up" o call ether_ioctl for default handling of ioctls Reviewed by: many Approved by: re
* Call bpf_mtap() on output, to catch outgoing packets for e.g. tcpdump .fenner2002-07-301-1/+5
|
* Miscellaneous fixes:tmm2002-07-142-28/+47
| | | | | | | | | | - always reinitialize the rx descriptors, even if the mbuf is kept. This should fix the hangs on ifconfig that were observed - on an rx overflow, reinitialize the descriptor so that the interface will not hang - correct some bus_dmamap_sync() calls - correct some debug messages - some minor nits
* Don't treat statistics counter wrap-overs as errors.tmm2002-06-051-10/+3
|
* Move the new byte order function prototypes from <sys/param.h> tomike2002-04-261-0/+1
| | | | <sys/endian.h>. This puts us in line with NetBSD and OpenBSD.
* Assorted fixes:tmm2002-03-234-11/+3
| | | | | | | | | | | | - remove some useless code from the status change handler that was intended to enable the the MII drivers for external phys; this is already done during interface initialization, and the deleted code made some assumptions about phy addresses that do not seem to hold true on newer cards. This should get at least one of the two hmes of newer Netra t1 machines working. - correct the interrupt resource allocation - bump the number of RX descriptors, lower values cause promblems on some machines
* Use the pci_enable_* functions instead of manually fiddling with thetmm2002-03-111-6/+4
| | | | | | command register. Pointed out by: msmith
* Fix some bugs in the handling of the case of not enough tx descriptorstmm2002-03-091-12/+14
| | | | being free to send a packet.
* Add a driver for the Sun HME PCI/SBus ethernet adaptor, which is onboardtmm2002-02-275-0/+2455
in most machines of the Sun Ultra series. This is a port of the NetBSD driver which I enhanced to make use of the gather functionality and the configurable RX buffer offset to avoid copying all received/sent packet (instead, packets will be directly DMAd from mbuf chains and into mbuf clusters now).
OpenPOWER on IntegriCloud