summaryrefslogtreecommitdiff
path: root/sys/net/if_atm.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove the NATM framework including the en(4), fatm(4), hatm(4), andBrooks Davis2017-04-241-337/+0
| | | | | | | | | | | | | | | | | | | | | | | | patm(4) devices. Maintaining an address family and framework has real costs when we make infrastructure improvements. In the case of NATM we support no devices manufactured in the last 20 years and some will not even work in modern motherboards (some newer devices that patm(4) could be updated to support apparently exist, but we do not currently have support). With this change, support remains for some netgraph modules that don't require NATM support code. It is unclear if all these should remain, though ng_atmllc certainly stands alone. Note well: FreeBSD 11 supports NATM and will continue to do so until at least September 30, 2021. Improvements to the code in FreeBSD 11 are certainly welcome. Reviewed by: philip Approved by: harti Notes: svn path=/head/; revision=317383
* sys/net*: minor spelling fixes.Pedro F. Giffuni2016-05-031-1/+1
| | | | | | | No functional change. Notes: svn path=/head/; revision=298995
* Add const qualifier to the dst parameter of the ifnet if_output method.Gleb Smirnoff2013-04-261-1/+1
| | | | Notes: svn path=/head/; revision=249925
* Change if_output to take a struct route as its fourth argument in orderKip Macy2009-04-161-1/+1
| | | | | | | | | to allow passing a cached struct llentry * down to L2 Reviewed by: rwatson Notes: svn path=/head/; revision=191148
* Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE andRobert Watson2005-08-091-2/+2
| | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=148887
* Stop embedding struct ifnet at the top of driver softcs. Instead theBrooks Davis2005-06-101-6/+7
| | | | | | | | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=147256
* /* -> /*- for license, minor formatting changesWarner Losh2005-01-071-1/+1
| | | | Notes: svn path=/head/; revision=139823
* Add a device type for virtual interfaces.Hartmut Brandt2004-01-261-1/+3
| | | | Notes: svn path=/head/; revision=125017
* Remove the ATMIOCENA and ATMIOCDIS ioctl. Everyting has been convertedHartmut Brandt2003-08-061-8/+1
| | | | | | | | to use the new OPENVCC and CLOSEVCC calls that allow the sepcification of traffic parameters for the connections. Notes: svn path=/head/; revision=118548
* Remove the last vestiges of ATM raw mode. This has not been useful for aHartmut Brandt2003-08-061-3/+0
| | | | | | | | long time and has already been removed from the only driver that supported it (en(4)) and from the man page. Notes: svn path=/head/; revision=118547
* Define a flag for asynchronuous VC open/close operations as usedHartmut Brandt2003-08-051-1/+2
| | | | | | | by the NATM stuff. Notes: svn path=/head/; revision=118496
* Implement a mechanism by which ATM drivers can inform interestedHartmut Brandt2003-07-291-0/+70
| | | | | | | | | | parts of the system about certain kinds of events, like changes in the ABR rate, changes in the carrier state, PVC changes. The main consumers of these events are the harp(4) pseudo-driver and the ILMI daemon via ng_atm(4). Notes: svn path=/head/; revision=118157
* Correct the device identifiers for the ProATM cards.Hartmut Brandt2003-07-181-2/+2
| | | | Notes: svn path=/head/; revision=117721
* Implement an utility function that can be used by device drivers toHartmut Brandt2003-07-151-0/+2
| | | | | | | | | | implement the ATMIOCGVCCS ioctls. This routine handles changing VCC tables (which can occure because we cannot hold the driver mutex while allocating memory) with a loop and a re-allocation, should the table not fit in the allocated memory. Notes: svn path=/head/; revision=117630
* Add identifiers for ProSum's and IDT's cards that are based onHartmut Brandt2003-07-151-1/+9
| | | | | | | the IDT77252 chip. The driver will follow soon. Notes: svn path=/head/; revision=117628
* ATM_PH_LLCSNAP and ATMIO_FLAG_LLCSNAP must have the same value, soHartmut Brandt2003-07-151-2/+4
| | | | | | | define one in terms of the other. Notes: svn path=/head/; revision=117627
* Protect a kernel structure by _KERNEL.Hartmut Brandt2003-07-151-0/+2
| | | | Notes: svn path=/head/; revision=117625
* Now that most of this file is new, stylify the rest and correct theHartmut Brandt2003-06-181-59/+57
| | | | | | | style bugs (space/tab) introduced by me. Notes: svn path=/head/; revision=116523
* Add definitions for the ioctls that are used by netgraph and harp to openHartmut Brandt2003-06-171-0/+18
| | | | | | | and close VCCs. Notes: svn path=/head/; revision=116480
* Fix the breakage introduced by rev. 1.43 of sys/dev/midway.c (don't commitHartmut Brandt2003-06-161-17/+92
| | | | | | | | | | | on friday 13th and without making a universe). This adds struct and constant definitions for ATM traffic parameters and re-enables the build of the midway driver. Tested by: make universe Notes: svn path=/head/; revision=116441
* Define a link layer MIB for ATM. Most fields of this MIB are needed byHartmut Brandt2003-05-051-0/+60
| | | | | | | | | ILMI daemons. Factor out common softc fields for all ATM interfaces that need to be externally visible into an ifatm structure and make the midway driver using this structure and fill the MIB. Notes: svn path=/head/; revision=114739
* Add module data and version to the atm_subr and reference this info from theHartmut Brandt2003-04-291-0/+1
| | | | | | | | | | | | | | | | | | | (currently) only consumer (en). Add a sysctl node hw.atm where the atm drivers will hook on their hardware sysctl sub-trees. Make atm_ifattach call if_attach and remove the corresponding call to if_attach from en. Create atm_ifdetach and use that in en. While the last change actually changes the interface this is not a problem in practice because the only other consumer of this API is an older LANAI driver on the net, that is not ready for current anyway. Reviewed by: -atm Notes: svn path=/head/; revision=114201
* This corrects a longstanding endian bug in processing LLC/SNAP encodedHartmut Brandt2003-03-131-2/+2
| | | | | | | | | | | | | | frames. A comment in if_atm.h suggests that both macros, that for extracting the ethertype and that for inserting it, handle their argument in host byte order. In fact, the inserting macro treated its argument as an opposite host order short and the calling code feeds it the result of htons(). This happens to work on i386, but fails on sparc. Make the macro use real host endianess. Reviewed by: kjc, atm@ Notes: svn path=/head/; revision=112193
* Remove __P.Alfred Perlstein2002-03-191-5/+5
| | | | Notes: svn path=/head/; revision=92725
* Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"Peter Wemm1999-12-291-6/+1
| | | | | | | | | is an application space macro and the applications are supposed to be free to use it as they please (but cannot). This is consistant with the other BSD's who made this change quite some time ago. More commits to come. Notes: svn path=/head/; revision=55205
* clean up en atm driverKenjiro Cho1999-05-081-40/+1
| | | | | | | | | | | | | | | | o fix DDB support - include "opt_ddb.h" - fix Debugger() arg pointed out by bde o back out pvc shadow interface support - it is currently not used - to make it easier to merge another implementation o misc minor cleanup Notes: svn path=/head/; revision=46695
* update ATM driver. (base version: midway.c 1.67 --> 1.68)Kenjiro Cho1998-07-291-1/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | several new features are added: - support vc/vp shaping - support pvc shadow interface code cleanup: - remove WMAYBE related code. ENI WMAYBE DMA doen't work. - remove updating if_lastchange for every packet. - BPF related code is moved to midway.c as it should be. (bpfwrite should work if atm_pseudohdr and LLC/SNAP are prepended.) - BPF link type is changed to DLT_ATM_RFC1483. BPF now understands only LLC/SNAP!! (because bpf can't handle variable link header length.) It is recommended to use LLC/SNAP instead of NULL encapsulation for various reasons. (BPF, IPv6, interoperability, etc.) the code has been used for months in ALTQ and KAME IPv6. OKed by phk long time ago. Notes: svn path=/head/; revision=37939
* import Chuck Cranor's ATM driverKenjiro Cho1997-05-091-0/+111
Notes: svn path=/cvs2svn/branches/CRANOR/; revision=25603