summaryrefslogtreecommitdiffstats
path: root/sys/dev/hatm/if_hatm_tx.c
Commit message (Collapse)AuthorAgeFilesLines
* Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE andrwatson2005-08-091-1/+1
| | | | | | | | | | | | | | IFF_DRV_RUNNING, as well as the move from ifnet.if_flags to ifnet.if_drv_flags. Device drivers are now responsible for synchronizing access to these flags, as they are in if_drv_flags. This helps prevent races between the network stack and device driver in maintaining the interface flags field. Many __FreeBSD__ and __FreeBSD_version checks maintained and continued; some less so. Reviewed by: pjd, bz MFC after: 7 days
* Fix another fallout from the ifnet change that assumed that a softcharti2005-07-011-1/+1
| | | | | | | starts with an ifatm which in turns has an ifnet. Remove also a couple of unneccessary casts that could hide such things in the future. Approved by: re
* Stop embedding struct ifnet at the top of driver softcs. Instead thebrooks2005-06-101-12/+12
| | | | | | | | | | | | | | | | | | | | struct ifnet or the layer 2 common structure it was embedded in have been replaced with a struct ifnet pointer to be filled by a call to the new function, if_alloc(). The layer 2 common structure is also allocated via if_alloc() based on the interface type. It is hung off the new struct ifnet member, if_l2com. This change removes the size of these structures from the kernel ABI and will allow us to better manage them as interfaces come and go. Other changes of note: - Struct arpcom is no longer referenced in normal interface code. Instead the Ethernet address is accessed via the IFP2ENADDR() macro. To enforce this ac_enaddr has been renamed to _ac_enaddr. - The second argument to ether_ifattach is now always the mac address from driver private storage rather than sometimes being ac_enaddr. Reviewed by: sobomax, sam
* Add a missing comma which prevents compilation with debugging enabled.harti2005-05-251-1/+1
| | | | Spotted by: Donatas <donatas@lrtc.net>
* Start each of the license/copyright comments with /*-, minor shuffle of linesimp2005-01-061-1/+1
|
* When compiled with debugging trace the number of transmit mbufs thatharti2003-11-051-2/+43
| | | | | we own. Warn if something strange happens (number drops below zero or there appears to be a leak).
* Allow sending of more than one raw cell from a single mbuf. Only theharti2003-10-291-8/+11
| | | | | | | | | | | | very first cell in the mbuf should have a cell header word (of which everything except the payload type and the CLP bit is ignored). All other cells should be 48 byte and get the same header as the first cell. This fixes a problem with sending more than 120000 raw cells/sec through an HE155. The card seems to need 2 cell times to DMA the transmit buffer ready queue entry and the transmit buffer descriptor so at 1/3 the link rate the transmit buffer ready queue starts to fill up. Even with this patch it's obviously impossible to send raw cells at link rate.
* Prefer new location of pci include files (which have only been in theimp2003-08-221-2/+2
| | | | | tree for two or more years now), except in a few places where there's code to be compatible with older versions of FreeBSD.
* Make the driver preserve open connections accross ifconfig downharti2003-08-071-3/+8
| | | | | | | and up commands. When configuring the interface down only the connections that are currently closing are deleted from the connection table. When the interface is configured up, all connections that are in the table are re-opened.
* Make the driver honor the ATMIO_FLAG_ASYNC that requestsharti2003-08-061-2/+2
| | | | asynchronuous open/close operations.
* Generate events for carrier state, PVC state changes and flow controlharti2003-07-291-8/+4
| | | | changes. Still have to figure out, how to get at the ABR information.
* Use the default arguments for lockfunc and lockfuncarg inharti2003-07-101-2/+2
| | | | | | | | | | | | | | | bus_dma_tag_create. We need to be sure that our packets are kept in-sequence (that's how ATM is supposed to work) and therefor use BUS_DMA_NOWAIT in all calls to bus_dmamap_load. For memory allocated with bus_dmamem_alloc the use of anything other than NULL arguments for the locking is anyway bogus because this memory never should need bouncing and hence the load should never be defered. Allow the receipt of OAM and RM cells on raw connections. Caveat: it seems that RM cells are still processed by the hardware even when we open the connection as UBR.
* Style: __FBSDID().harti2003-06-181-2/+3
|
* This is a driver for Fore/Marconi HE155 and HE622 ATM cards. It is fullharti2003-06-171-0/+780
busdma and has extensively been tested on i386 and sparc64.
OpenPOWER on IntegriCloud