Chapter 18. Device drivers infrastructure
Prev
Next
Chapter 18. Device drivers infrastructure
Table of Contents
Device Drivers Base
driver_for_each_device
— Iterator for devices bound to a driver.
driver_find_device
— device iterator for locating a particular device.
driver_create_file
— create sysfs file for driver.
driver_remove_file
— remove sysfs file for driver.
get_driver
— increment driver reference count.
put_driver
— decrement driver's refcount.
driver_register
— register driver with bus
driver_unregister
— remove driver from system.
driver_find
— locate driver on a bus by its name.
dev_driver_string
— Return a device's driver name, if at all possible
device_create_file
— create sysfs attribute file for device.
device_remove_file
— remove sysfs attribute file.
device_create_bin_file
— create sysfs binary attribute file for device.
device_remove_bin_file
— remove sysfs binary attribute file
device_initialize
— init device structure.
device_add
— add device to device hierarchy.
device_register
— register a device with the system.
get_device
— increment reference count for device.
put_device
— decrement reference count.
device_del
— delete device from system.
device_unregister
— unregister device from system.
device_for_each_child
— device child iterator.
device_find_child
— device iterator for locating a particular device.
device_create
— creates a device and registers it with sysfs
device_destroy
— removes a device that was created with
device_create
device_move
— moves a device to a new parent
class_create
— create a struct class structure
class_destroy
— destroys a struct class structure
class_device_create
— creates a class device and registers it with sysfs
class_device_destroy
— removes a class device that was created with
class_device_create
request_firmware
— send firmware request and wait for it
release_firmware
— release the resource associated with a firmware image
request_firmware_nowait
—
transport_class_register
— register an initial transport class
transport_class_unregister
— unregister a previously registered class
anon_transport_class_register
— register an anonymous class
anon_transport_class_unregister
— unregister an anon class
transport_setup_device
— declare a new dev for transport class association
transport_add_device
— declare a new dev for transport class association
transport_configure_device
— configure an already set up device
transport_remove_device
— remove the visibility of a device
transport_destroy_device
— destroy a removed device
dma_pool_create
— Creates a pool of consistent memory blocks, for dma.
dma_pool_destroy
— destroys a pool of dma memory blocks.
dma_pool_alloc
— get a block of consistent memory
dma_pool_free
— put block back into dma pool
sysdev_driver_register
— Register auxillary driver
sysdev_driver_unregister
— Remove an auxillary driver.
sysdev_register
— add a system device to the tree
platform_get_resource
— get a resource for a device
platform_get_irq
— get an IRQ for a device
platform_get_resource_byname
— get a resource for a device by name
platform_get_irq_byname
— get an IRQ for a device
platform_add_devices
— add a numbers of platform devices
platform_device_put
—
platform_device_alloc
—
platform_device_add_resources
—
platform_device_add_data
—
platform_device_add
— add a platform device to device hierarchy
platform_device_del
— remove a platform-level device
platform_device_register
— add a platform-level device
platform_device_unregister
— unregister a platform-level device
platform_device_register_simple
—
platform_driver_register
—
platform_driver_unregister
—
platform_driver_probe
— register driver for non-hotpluggable device
bus_for_each_dev
— device iterator.
bus_find_device
— device iterator for locating a particular device.
bus_for_each_drv
— driver iterator
bus_rescan_devices
— rescan devices on the bus for possible drivers
device_reprobe
— remove driver for a device and probe for a new driver
bus_register
— register a bus with the system.
bus_unregister
— remove a bus from the system
Device Drivers Power Management
device_pm_set_parent
— Specify power dependency.
device_resume
— Restore state of each device in system.
device_power_up
— Turn on all devices that need special attention.
device_suspend
— Save state and stop all devices in system.
device_power_down
— Shut down special devices.
Device Drivers ACPI Support
acpi_bus_register_driver
— register a driver with the ACPI bus
acpi_bus_unregister_driver
— unregisters a driver with the APIC bus
setup_sys_fs_device_files
— sets up the device files under device namespace
acpi_bus_match
— match device IDs to driver's supported IDs
acpi_bus_driver_init
— add a device to a driver
acpi_bus_find_driver
— check if there is a driver installed for the device
Device drivers PnP support
pnp_register_protocol
— adds a pnp protocol to the pnp layer
pnp_unregister_protocol
— removes a pnp protocol from the pnp layer
pnp_remove_device
— removes a pnp device from the pnp layer
pnp_add_card_id
— adds an EISA id to the specified card
pnp_add_card
— adds a PnP card to the PnP Layer
pnp_remove_card
— removes a PnP card from the PnP Layer
pnp_add_card_device
— adds a device to the specified card
pnp_remove_card_device
— removes a device from the specified card
pnp_request_card_device
— Searches for a PnP device under the specified card
pnp_release_card_device
— call this when the driver no longer needs the device
pnp_register_card_driver
— registers a PnP card driver with the PnP Layer
pnp_unregister_card_driver
— unregisters a PnP card driver from the PnP Layer
pnp_add_id
— adds an EISA id to the specified device
pnp_init_resource_table
— Resets a resource table to default values.
pnp_manual_config_dev
— Disables Auto Config and Manually sets the resource table
pnp_auto_config_dev
— automatically assigns resources to a device
pnp_start_dev
— low-level start of the PnP device
pnp_stop_dev
— low-level disable of the PnP device
pnp_activate_dev
— activates a PnP device for use
pnp_disable_dev
— disables device
pnp_resource_change
— change one resource
pnp_is_active
— Determines if a device is active based on its current resources