Chapter 10. Network device support

Table of Contents

Driver Support
Synchronous PPP

Driver Support

dev_add_pack — add packet handler
__dev_remove_pack — remove packet handler
dev_remove_pack — remove packet handler
netdev_boot_setup_check — check boot time settings
__dev_get_by_name — find a device by its name
dev_get_by_name — find a device by its name
__dev_get_by_index — find a device by its ifindex
dev_get_by_index — find a device by its ifindex
dev_getbyhwaddr — find a device by its hardware address
dev_get_by_flags — find any device with given flags
dev_valid_name — check if name is okay for network device
dev_alloc_name — allocate a name for a device
netdev_features_change — device changes features
netdev_state_change — device changes state
dev_load — load a network module
dev_open — prepare an interface for use.
dev_close — shutdown an interface.
register_netdevice_notifier — register a network notifier block
unregister_netdevice_notifier — unregister a network notifier block
skb_gso_segment — Perform segmentation on skb.
dev_queue_xmit — transmit a buffer
netif_rx — post buffer to the network code
register_gifconf — register a SIOCGIF handler
netdev_set_master — set up master/slave pair
dev_set_promiscuity — update promiscuity count on a device
dev_set_allmulti — update allmulti count on a device
dev_unicast_delete — Release secondary unicast address.
dev_unicast_add — add a secondary unicast address
register_netdevice — register a network device
register_netdev — register a network device
alloc_netdev_mq — allocate network device
free_netdev — free network device
unregister_netdevice — remove device from the kernel
unregister_netdev — remove device from the kernel
netdev_compute_features — compute conjunction of two feature sets
eth_type_trans — determine the packet's protocol ID.
ether_setup — setup Ethernet network device
alloc_etherdev_mq — Allocates and sets up an Ethernet device
is_zero_ether_addr — Determine if give Ethernet address is all zeros.
is_multicast_ether_addr — Determine if the Ethernet address is a multicast.
is_local_ether_addr — Determine if the Ethernet address is locally-assigned
is_broadcast_ether_addr — Determine if the Ethernet address is broadcast
is_valid_ether_addr — Determine if the given Ethernet address is valid
random_ether_addr — Generate software assigned random Ethernet address
compare_ether_addr — Compare two Ethernet addresses
phy_print_status — Convenience function to print out the current phy status
phy_read — Convenience function for reading a given PHY register
phy_write — Convenience function for writing a given PHY register
phy_sanitize_settings — make sure the PHY is set to supported speed and duplex
phy_ethtool_sset — generic ethtool sset function, handles all the details
phy_mii_ioctl — generic PHY MII ioctl interface
phy_start_aneg — start auto-negotiation for this PHY device
phy_enable_interrupts — Enable the interrupts from the PHY side
phy_disable_interrupts — Disable the PHY interrupts from the PHY side
phy_start_interrupts — request and enable interrupts for a PHY device
phy_stop_interrupts — disable interrupts from a PHY device
phy_stop — Bring down the PHY link, and stop checking the status
phy_start — start or restart a PHY device
phy_clear_interrupt — Ack the phy device's interrupt
phy_config_interrupt — configure the PHY device for the requested interrupts
phy_aneg_done — return auto-negotiation status
phy_find_setting — find a PHY settings array entry that matches speed & duplex
phy_find_valid — find a PHY setting that matches the requested features mask
phy_start_machine — start PHY state machine tracking
phy_stop_machine — stop the PHY state machine tracking
phy_force_reduction — reduce PHY speed/duplex settings by one step
phy_error — enter HALTED state for this PHY device
phy_interrupt — PHY interrupt handler
phy_change — Scheduled by the phy_interrupt/timer to handle PHY changes
phy_connect — connect an ethernet device to a PHY device
phy_disconnect — disable interrupts, stop state machine, and detach a PHY device
phy_attach — attach a network device to a particular PHY device
phy_detach — detach a PHY device from its network device
genphy_config_advert — sanitize and advertise auto-negotation parameters
genphy_config_aneg — restart auto-negotiation or write BMCR
genphy_update_link — update link status in phydev
genphy_read_status — check the link status and update current link state
phy_driver_register — register a phy_driver with the PHY layer
get_phy_device — reads the specified PHY device and returns its phy_device struct
phy_prepare_link — prepares the PHY layer to monitor link status
genphy_setup_forced — configures/forces speed/duplex from phydev
genphy_restart_aneg — Enable and Restart Autonegotiation
phy_probe — probe and init a PHY device
mdiobus_register — bring up all the PHYs on a given bus and attach them to bus
mdio_bus_match — determine if given PHY driver supports the given PHY device