| /linux/Documentation/driver-api/rapidio/ |
| H A D | rapidio.rst | 5 The RapidIO standard is a packet-based fabric interconnect standard designed for 8 is publicly available for download from the RTA web-site [1]. 16 Because the RapidIO subsystem follows the Linux device model it is integrated 17 into the kernel similarly to other buses by defining RapidIO-specific device and 18 bus types and registering them within the device model. 21 architecture-specific interfaces that provide support for common RapidIO 33 --------------- 38 by a rio_mport data structure. This structure contains master port specific 40 host device ID that is valid when a master port is configured as an enumerating 43 RapidIO master ports are serviced by subsystem specific mport device drivers [all …]
|
| H A D | mport_cdev.rst | 2 RapidIO subsystem mport character device driver (rio_mport_cdev.c) 8 This device driver is the result of collaboration within the RapidIO.org 17 for user-space applications. Most of RapidIO operations are supported through 20 When loaded this device driver creates filesystem nodes named rio_mportX in /dev 21 directory for each registered RapidIO mport device. 'X' in the node name matches 22 to unique port ID assigned to each local mport device. 24 Using available set of ioctl commands user-space applications can perform 27 - Reads and writes from/to configuration registers of mport devices 29 - Reads and writes from/to configuration registers of remote RapidIO devices. 32 - Set RapidIO Destination ID for mport devices (RIO_MPORT_MAINT_HDID_SET) [all …]
|
| /linux/drivers/leds/ |
| H A D | leds-lp55xx-common.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 9 * Derived from leds-lp5521.c, leds-lp5523.c 15 #include <linux/led-class-multicolor.h> 41 static ssize_t show_engine##nr##_mode(struct device *dev, \ 47 static ssize_t store_engine##nr##_mode(struct device *dev, \ 57 static ssize_t show_engine##nr##_leds(struct device *dev, \ 63 static ssize_t store_engine##nr##_leds(struct device *dev, \ 73 static ssize_t store_engine##nr##_load(struct device *dev, \ 82 static ssize_t show_master_fader##nr(struct device *dev, \ 88 static ssize_t store_master_fader##nr(struct device *dev, \ [all …]
|
| /linux/Documentation/driver-api/driver-model/ |
| H A D | driver.rst | 2 Device Drivers 10 Device drivers are statically allocated structures. Though there may 13 device instance). 42 model because the bus they belong to has a bus-specific structure with 43 bus-specific fields that cannot be generalized. 45 The most common example of this are device ID structures. A driver 46 typically defines an array of device IDs that it supports. The format 47 of these structures and the semantics for comparing device IDs are 48 completely bus-specific. Defining them as bus-specific entities would 49 sacrifice type-safety, so we keep bus-specific structures around. [all …]
|
| H A D | porting.rst | 12 Please refer to `Documentation/driver-api/driver-model/*.rst` for definitions of 21 be embedded in larger, bus-specific objects. Fields in these generic 22 objects can replace fields in the bus-specific objects. 28 # mount -t sysfs sysfs /sys 34 Step 0: Read include/linux/device.h for object and function definitions. 39 - Define a struct bus_type for the bus driver:: 46 - Register the bus type. 65 - Export the bus type for others to use. 81 - This will cause the bus to show up in /sys/bus/pci/ with two 84 # tree -d /sys/bus/pci/ [all …]
|
| /linux/Documentation/driver-api/ |
| H A D | vfio-pci-device-specific-driver-acceptance.rst | 1 .. SPDX-License-Identifier: GPL-2.0 3 Acceptance criteria for vfio-pci device specific driver variants 7 -------- 8 The vfio-pci driver exists as a device agnostic driver using the 10 handling to provide isolated device access to userspace. While the 11 vfio-pci driver does include some device specific support, further 12 extensions for yet more advanced device specific features are not 13 sustainable. The vfio-pci driver has therefore split out 14 vfio-pci-core as a library that may be reused to implement features 15 requiring device specific knowledge, ex. saving and loading device [all …]
|
| /linux/drivers/gpio/ |
| H A D | gpio-tangier.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 20 struct device; 24 /* Elkhart Lake specific wake registers */ 29 /* Merrifield specific wake registers */ 35 * struct tng_wake_regs - Platform specific wake registers 47 * struct tng_gpio_pinrange - Map pin numbers to gpio numbers 62 .npins = (gend) - (gstart) + 1, \ 66 * struct tng_gpio_pin_info - Platform specific pinout information 69 * @name: Respective pinctrl device name 78 * struct tng_gpio_info - Platform specific GPIO and IRQ information [all …]
|
| /linux/include/linux/ |
| H A D | msi.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 8 * - Interrupt core code 9 * - PCI/MSI core code 10 * - MSI interrupt domain implementations 11 * - IOMMU, low level VFIO, NTB and other justified exceptions 14 * Regular device drivers have no business with any of these functions and 18 * Device driver relevant functions are available in <linux/msi_api.h> 52 * msi_msg - Representation of a MSI message 54 * @arch_addrlo: Architecture specific shadow of @address_lo 56 * (only used when device supports it) [all …]
|
| H A D | mod_devicetable.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Device tables which are exported to userspace via 25 * struct pci_device_id - PCI device ID structure 27 * @device: Device ID to match (or PCI_ANY_ID) 29 * @subdevice: Subsystem device ID to match (or PCI_ANY_ID) 30 * @class: Device class, subclass, and "interface" to match. 34 * as vendor/device is normally sufficient. 35 * @class_mask: Limit which sub-fields of the class field are compared. 40 * into a static list of equivalent device types, 42 * @override_only: Match only when dev->driver_override is this driver. [all …]
|
| H A D | rio.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 17 #include <linux/device.h> 24 #define RIO_NO_HOPCOUNT -1 39 exists for the device ID) */ 57 * 1-15 RapidIO memory regions 72 * A component tag value (stored in the component tag CSR) is used as device's 74 * identifying switches (which do not have device ID register), it also is used 79 #define RIO_CTAG_UDEVID 0x0001ffff /* Unique device identifier */ 89 * struct rio_switch - RIO switch info 92 * @port_ok: Status of each port (one bit per port) - OK=1 or UNINIT=0 [all …]
|
| H A D | interconnect-provider.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 18 * struct icc_node_data - icc node data 29 * struct icc_onecell_data - driver data for onecell interconnect providers 31 * @num_nodes: number of nodes in this device 32 * @nodes: array of pointers to the nodes in this device 43 * struct icc_provider - interconnect provider (controller) entity that might 48 * @set: pointer to device specific set operation function 49 * @aggregate: pointer to device specific aggregate operation function 50 * @pre_aggregate: pointer to device specific function that is called 52 * @get_bw: pointer to device specific function to get current bandwidth [all …]
|
| /linux/include/net/ |
| H A D | rtnetlink.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 36 * struct rtnl_msg_handler - rtnetlink message type and handlers 38 * @owner: NULL for built-in, THIS_MODULE for module 67 return ((struct rtgenmsg *) nlmsg_data(nlh))->rtgen_family; in rtnl_msg_family() 73 * struct rtnl_newlink_params - parameters of rtnl_link_ops::newlink() 95 return p->link_net ? : p->src_net; in rtnl_newlink_link_net() 103 return p->peer_net ? : rtnl_newlink_link_net(p); in rtnl_newlink_peer_net() 107 * struct rtnl_link_ops - rtnetlink link operations 112 * @netns_refund: Physical device, move to init_net on netns exit 113 * @peer_type: Peer device specific netlink attribute number (e.g. VETH_INFO_PEER) [all …]
|
| /linux/Documentation/arch/powerpc/ |
| H A D | bootwrapper.rst | 17 others. U-Boot is typically found on embedded PowerPC hardware, but there 28 U-Boot (for versions that don't understand the device 29 tree). This image embeds a device tree blob inside 30 the image. The boot wrapper, kernel and device tree 31 are all embedded inside the U-Boot uImage file format 33 bd_info structure and loads the data into the device 37 bd_info structure used in the old U-Boot interfaces, 38 cuImages are platform specific. Each specific 39 U-Boot platform has a different platform init file 40 which populates the embedded device tree with data [all …]
|
| /linux/drivers/gpu/drm/exynos/ |
| H A D | exynos_drm_drv.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 8 * Seung-Woo Kim <sw0312.kim@samsung.com> 60 * specific overlay info. 84 * to hardware specific overlay info. 103 * @zpos: initial z-position of the plane. 121 * @atomic_enable: enable the device 122 * @atomic_disable: disable the device 123 * @enable_vblank: specific driver callback for enabling vblank interrupt. 124 * @disable_vblank: specific driver callback for disabling vblank interrupt. 125 * @mode_valid: specific driver callback for mode validation [all …]
|
| /linux/Documentation/devicetree/bindings/usb/ |
| H A D | omap-usb.txt | 1 OMAP GLUE AND OTHER OMAP SPECIFIC COMPONENTS 4 - compatible : Should be "ti,omap4-musb" or "ti,omap3-musb" 5 - ti,hwmods : must be "usb_otg_hs" 6 - multipoint : Should be "1" indicating the musb controller supports 7 multipoint. This is a MUSB configuration-specific setting. 8 - num-eps : Specifies the number of endpoints. This is also a 9 MUSB configuration-specific setting. Should be set to "16" 10 - ram-bits : Specifies the ram address size. Should be set to "12" 11 - interface-type : This is a board specific setting to describe the type of 14 - mode : Should be "3" to represent OTG. "1" signifies HOST and "2" [all …]
|
| /linux/include/linux/usb/ |
| H A D | typec_altmode.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 8 #include <linux/device.h> 15 * struct typec_altmode - USB Type-C alternate mode device 16 * @dev: Driver model's view of this device 26 struct device dev; 42 dev_set_drvdata(&altmode->dev, data); in typec_altmode_set_drvdata() 47 return dev_get_drvdata(&altmode->dev); in typec_altmode_get_drvdata() 51 * struct typec_altmode_ops - Alternate mode specific operations vector 55 * @vdm: Callback for SVID specific commands 81 * struct typec_cable_ops - Cable alternate mode operations vector [all …]
|
| /linux/drivers/hwspinlock/ |
| H A D | hwspinlock_internal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com 7 * Contact: Ohad Ben-Cohen <ohad@wizery.com> 14 #include <linux/device.h> 19 * struct hwspinlock_ops - platform-specific hwspinlock handlers 24 * @bust: optional, platform-specific bust handler, called by hwspinlock 25 * core to bust a specific lock. 26 * @relax: optional, platform-specific relax handler, called by hwspinlock 38 * struct hwspinlock - this struct represents a single hwspinlock instance 41 * @priv: private data, owned by the underlying platform-specific hwspinlock drv [all …]
|
| /linux/include/uapi/linux/ |
| H A D | vhost.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 4 /* Userspace interface for in-kernel virtio accelerators. */ 11 * device configuration. 18 #define VHOST_FILE_UNBIND -1 25 * vhost specific features. */ 33 /* Give up ownership, and reset the device to default values. 48 /* By default, a device gets one vhost_worker that its virtqueues share. This 49 * command allows the owner of the device to create an additional vhost_worker 50 * for the device. It can later be bound to 1 or more of its virtqueues using 54 * of the device. The new thread will inherit caller's cgroups and namespaces, [all …]
|
| /linux/tools/perf/trace/beauty/include/uapi/linux/ |
| H A D | vhost.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 4 /* Userspace interface for in-kernel virtio accelerators. */ 11 * device configuration. 18 #define VHOST_FILE_UNBIND -1 25 * vhost specific features. */ 33 /* Give up ownership, and reset the device to default values. 48 /* By default, a device gets one vhost_worker that its virtqueues share. This 49 * command allows the owner of the device to create an additional vhost_worker 50 * for the device. It can later be bound to 1 or more of its virtqueues using 54 * of the device. The new thread will inherit caller's cgroups and namespaces, [all …]
|
| /linux/include/linux/platform_data/ |
| H A D | brcmfmac.h | 27 * Platform specific driver functions and data. Through the platform specific 28 * device data functions and data can be provided to help the brcmfmac driver to 29 * operate with the device in combination with the used platform. 34 * Note: the brcmfmac can be loaded as module or be statically built-in into 35 * the kernel. If built-in then do note that it uses module_init (and 37 * create a module with the platform specific data for the brcmfmac and have 38 * it built-in to the kernel then use a higher initcall then device_initcall 48 * enum brcmf_bus_type - Bus type identifier. Currently SDIO, USB and PCIE are 59 * struct brcmfmac_sdio_pd - SDIO Device specific platform data. 67 * device. [all …]
|
| /linux/tools/include/uapi/linux/ |
| H A D | vhost.h | |
| /linux/Documentation/driver-api/pldmfw/ |
| H A D | driver-ops.rst | 1 .. SPDX-License-Identifier: GPL-2.0-only 4 Driver-specific callbacks 7 The ``pldmfw`` module relies on the device driver for implementing device 8 specific behavior using the following operations. 11 ----------------- 14 record matches the device being updated. This requires comparing the record 15 descriptors in the record with information from the device. Many record 20 the device. 23 ---------------------- 25 The ``.send_package_data`` operation is used to send the device-specific [all …]
|
| /linux/Documentation/arch/s390/ |
| H A D | cds.rst | 5 Common Device Support (CDS) 6 Device Driver I/O Support Routines 9 - Ingo Adlung 10 - Cornelia Huck 12 Copyright, IBM Corp. 1999-2002 17 This document describes the common device support routines for Linux/390. 19 I/O access method. This gives relief to the device drivers as they don't 21 processing, shared versus non-shared interrupt processing, DMA versus port 23 either every single device driver needs to implement the hardware I/O 26 every single device driver would have to provide itself. [all …]
|
| /linux/Documentation/firmware-guide/acpi/ |
| H A D | DSD-properties-rules.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 _DSD Device Properties Usage Rules 10 The _DSD (Device Specific Data) configuration object, introduced in ACPI 5.1, 11 allows any type of device configuration data to be provided via the ACPI 16 packages associated with them and makes those data available to device drivers 17 as "device properties". 19 A device property is a data item consisting of a string key and a value (of a 20 specific type) associated with it. 22 In the ACPI _DSD context it is an element of the sub-package following the 23 generic Device Properties UUID in the _DSD return package as specified in the [all …]
|
| /linux/include/linux/mtd/ |
| H A D | platnand.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Copyright © 2000-2010 David Woodhouse <dwmw2@infradead.org> 18 * struct platform_nand_chip - chip level device structure 26 * @part_probe_types: NULL-terminated array of probe types 40 * struct platform_nand_ctrl - controller level device structure 41 * @probe: platform specific function to probe/setup hardware 42 * @remove: platform specific function to remove/teardown hardware 43 * @dev_ready: platform specific function to read ready/busy pin 44 * @select_chip: platform specific chip select function 45 * @cmd_ctrl: platform specific function for controlling [all …]
|