summaryrefslogtreecommitdiff
path: root/include/linux/hdlc.h
AgeCommit message (Collapse)Author
2009-09-01hdlc: convert to netdev_tx_tStephen Hemminger
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-01-21WAN: Convert generic HDLC drivers to netdev_ops.Krzysztof Hałasa
Also remove unneeded last_rx update from Synclink drivers. Synclink part mostly by Stephen Hemminger. Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-08netdevice: Kill netdev->privWang Chen
This is the last shoot of this series. After I removing all directly reference of netdev->priv, I am killing "priv" of "struct net_device" and fixing relative comments/docs. Anyone will not be allowed to reference netdev->priv directly. If you want to reference the memory of private data, use netdev_priv() instead. If the private data is not allocted when alloc_netdev(), use netdev->ml_priv to point that memory after you creating that private data. Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-11-21netdevice hdlc: Convert directly reference of netdev->privWang Chen
For killing directly reference of netdev->priv, use netdev->ml_priv to replace it. Because the private pvc data comes from add_pvc() and can't be allocated in alloc_netdev(). Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Acked-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-07-04WAN: convert drivers to use built-in netdev_statsKrzysztof Halasa
There is no point in using separate net_device_stats structs when the one in struct net_device is present. Compiles. Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2008-02-05Generic HDLC - remove now unneeded hdlc_device_descKrzysztof Halasa
Removes now unneeded struct hdlc_device_desc Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-04-28Generic HDLC sparse annotationsKrzysztof Halasa
Sparse annotations, including two minor bugfixes. Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-04-25[SK_BUFF]: Introduce skb_reset_mac_header(skb)Arnaldo Carvalho de Melo
For the common, open coded 'skb->mac.raw = skb->data' operation, so that we can later turn skb->mac.raw into a offset, reducing the size of struct sk_buff in 64bit land while possibly keeping it as a pointer on 32bit. This one touches just the most simple case, next will handle the slightly more "complex" cases. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2006-09-26[PATCH] Modularize generic HDLCKrzysztof Halasa
This patch enables building of individual WAN protocol support routines (parts of generic HDLC) as separate modules. All protocol-private definitions are moved from hdlc.h file to protocol drivers. User-space interface and interface between generic HDLC and underlying low-level HDLC drivers are unchanged. Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-07-12[WAN]: converting generic HDLC to use netif_dormant*()Krzysztof Halasa
This patch converts generic HDLC (and WAN drivers using it) from hdlc_set_carrier() to netif_dormant*() interface. WAN hardware drivers should now use netif_carrier_on|off() like other network drivers. Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-22[PATCH] WAN: register_hdlc_device() doesn't need dev_alloc_name()Krzysztof Halasa
David Boggs noticed that register_hdlc_device() no longer needs to call dev_alloc_name() as it's called by register_netdev(). register_hdlc_device() is currently equivalent to register_netdev(). hdlc_setup() is now EXPORTed as per David's request. Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2005-07-12[NET]: __be'ify *_type_trans()Alexey Dobriyan
tr_type_trans(), hippi_type_trans() left as-is. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2005-05-15[PATCH] Generic HDLC updateKrzysztof Halasa
The attached patch updates generic HDLC to version 1.18. FR Cisco LMI production-tested. Please apply to Linux 2.6. Thanks. Changes: - doc updates - added Cisco LMI support to Frame-Relay code - cleaned hdlc_fr.c a bit, removed some orphaned #defines etc. - fixed a problem with non-functional LMI in FR DCE mode. - changed diagnostic messages to better conform to FR standards - all protocols: information about carrier changes (DCD line) is now printed to kernel logs. Signed-Off-By: Krzysztof Halasa <khc@pm.waw.pl>
2004-10-07[SKBUFF] move common code to hdlc_type_transArnaldo Carvalho de Melo
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br> Signed-off-by: David S. Miller <davem@redhat.com>
2004-06-02[PATCH] 2.6 Generic HDLC updateKrzysztof Halasa
The attached patch updates generic HDLC: - fixed some carrier-related problems (Cisco HDLC and FR links could report valid link when no carrier was detected at startup). - fixed kbuild problems with wanxl firmware (building kernel in separate tree). $(src)/wanxlfw.inc is now wanxlfw.inc_shipped.
2004-01-10[wan hdlc] kill embedding of struct net_deviceAlexander Viro
Now we can kill the embedding of net_device into hdlc_device. Indeed, all instances of hdlc_device are created by alloc_hdlcdev() and nothing uses hdlc->netdev directly. So we can * remove hdlc->netdev * have alloc_hdlcdev() implemented via alloc_netdev() with the rest of hdlc_device as private part of net_device. * replace free_hdlcdev() with free_netdev(). * have dev_to_hdlc(dev) simply return netdev_priv(dev).
2004-01-10[wan hdlc] removal hdlc_to_dev()Alexander Viro
No more users, we may remove it.
2004-01-10[wan hdlc] new private struct pointer in hdlc_device, and helpers for itAlexander Viro
New field in hdlc_device: void *priv; New helpers: struct net_device *alloc_hdlcdev(priv) allocates hdlc, sets ->priv and returns pointer to hdlc->netdev free_hdlcdev(dev) takes such pointer and frees its hdlc. wanxl switched to use of those; instead of embedding hdlc into card->ports[] we allocate it separately right after card had been allocated and store pointer to hdlc->netdev in card->ports[]->dev. Freeing is done just before freeing card. Pointer back to card->ports[] is stored in hdlc->priv. port_to_dev() and dev_to_port() rewritten in the obvious way; by now the rest of driver doesn't care whether hdlc is embedded or not - everything uses port_to_dev() and dev_to_port(). That killed embedded hdlc replacing it with pointer to net_device. Fairly similar work will be done in the next few patches for other drivers. Additionally, setup-after-register and free_irq()-before-unregister races had been fixed.
2004-01-10[wan hdlc] switch register_hdlc_device() to take net_device argAlexander Viro
register_hdlc_device()/unregister_hdlc_device() switched to net_device. Now all remaining callers of hdlc_to_dev() are isolated and we can start killing them.
2004-01-10[wan hdlc] new hdlc_stats() helperAlexander Viro
New inlined helper - hdlc_stats(). A lot of places had it spelled out; replaced with calls.
2004-01-10[wan hdlc] switch internal ioctl dispatch to net_deviceAlexander Viro
Switched remaining ioctls to net_device, killed a bunch of hdlc_to_dev() and killed hdlc_to_name().
2004-01-10[wan hdlc_x25] eliminated hdlc_to_dev() and hdlc_to_name() uses.Alexander Viro
2004-01-10[wan hdlc] hdlc_fr: eliminated ->netdev, hdlc_to_dev() and hdlc_to_name() uses.Alexander Viro
2004-01-10[wan hdlc] hdlc_cisco: killed ->netdev, hdlc_to_name() and hdlc_to_dev() uses.Alexander Viro
2004-01-10[wan hdlc] hdlc->proto.*() switched to net_device.Alexander Viro
Eliminated a bunch of ->netdev and hdlc_to_dev() uses.
2004-01-10[wan hdlc] hdlc->attach() switched to net_device.Alexander Viro
2004-01-10[wan hdlc] hdlc_set_carrier() switched to net_device.Alexander Viro
2004-01-10[wan hdlc] hdlc_close() switched to net_device.Alexander Viro
2004-01-10[wan hdlc] hdlc_open() switched to net_deviceAlexander Viro
Beginning of hdlc fixes. hdlc_open() switched from hdlc_device to net_device.
2003-07-31[PATCH] generic HDLC updatesAndrew Morton
From: Krzysztof Halasa <khc@pm.waw.pl> The following patch upgrades generic HDLC to support "new" protocol handlers.
2003-07-25[PATCH] HDLC updateKrzysztof Halasa
This updates generic HDLC from 1.14 to 1.15. - fix a kernel panic caused by a recent change to unregister_netdevice() (struct net_device * can't be kfreed before rtnl_unlock()) - adds carrier_* support - hw drivers report DCD status and higher level protocols use that info, and do netif_carrier_{on,off}() according to DCD and (Cisco and FR) link management status. - moves Frame-Relay constants etc. from include/linux/hdlc.h to hdlc_fr.c. They are internal FR things and are not needed in the global header. - protocol hooks are slighty changed to allow zeroing (memset). - removes CONFIG_HDLC_DEBUG_* variables. Users tend to make very wrong use of them. Now setting them requires changing .c #define. Anyway they are development-only things. - misc style corrections etc.
2003-04-06[PATCH] generic HDLC updateKrzysztof Halasa
This version fixes: - missing rtnl_lock()/rtnl_unload() bug on unregister_hdlc_device - N2, C101: interrupt handler now works under high IRQ load from other devices (with previous versions, the IRQ processing for the card could sometimes stop after reaching "work limit") This is production-tested on devices I have access to (N2, C101, PC300, PCI200SYN).
2002-10-27[PATCH] update wan drivers to new saner ioctlsAlan Cox
2002-09-18A bunch of HDLC (WAN driver) bug fixes, plus much improvesKrzysztof Halasa
device and protocol attach/detach support. Overall, this is in preparation for update of HDLC API
2002-03-06WAN drivers update 5/5:François Romieu
New file and directory include/linux/hdlc/ioctl.h, containing only WAN ioctl-related definitions. Update include/linux/if.h to reference these structures, providing us with complete type safety, including through ioctls.
2002-03-06WAN drivers update 2/5:François Romieu
s/SIOCDEVICE/SIOCWANDEV/
2002-03-06WAN drivers update 1/5:François Romieu
Add new HDLC interface, split up huge hdlc.c driver into multiple files based on hardware type. Convert WAN drivers to new interface.
2002-02-04v2.4.7 -> v2.4.7.1Linus Torvalds
- Anton Altaparmakov: NTFS error checking - Johannes Erdfelt: USB updates - OGAWA Hirofumi: FAT update - Alan Cox: driver + s390 update merge - Richard Henderson: fix alpha sigsuspend error return value - Marcelo Tosatti: per-zone VM shortage - Daniel Phillips: generic use-once optimization instead of drop-behind - Bjorn Wesen: Cris architecture update - Anton Altaparmakov: support for Windows Dynamic Disks - James Washer: LDT loading SMP bug fix
2002-02-04v2.4.2.2 -> v2.4.2.3Linus Torvalds
- Alan Cox: continued merging - Urban Widmark: smbfs fix (d_add on already hashed dentry - no-no). - Andrew Morton: 3c59x update - Jeff Garzik: network driver cleanups and fixes - Gérard Roudier: sym-ncr drivers update - Jens Axboe: more loop cleanups and fixes - David Miller: sparc update, some networking fixes