/linux/drivers/block/drbd/ |
H A D | drbd_actlog.c | 57 * sectors-written since device creation, and other data generation tag 73 * allows to cover device sizes of up to 2**54 Byte (16 PiB) */ 82 void *drbd_md_get_buffer(struct drbd_device *device, const char *intent) in drbd_md_get_buffer() argument 86 wait_event(device->misc_wait, in drbd_md_get_buffer() 87 (r = atomic_cmpxchg(&device->md_io.in_use, 0, 1)) == 0 || in drbd_md_get_buffer() 88 device->state.disk <= D_FAILED); in drbd_md_get_buffer() 93 device->md_io.current_use = intent; in drbd_md_get_buffer() 94 device->md_io.start_jif = jiffies; in drbd_md_get_buffer() 95 device->md_io.submit_jif = device->md_io.start_jif - 1; in drbd_md_get_buffer() 96 return page_address(device->md_io.page); in drbd_md_get_buffer() [all …]
|
H A D | drbd_worker.c | 52 struct drbd_device *device; in drbd_md_endio() local 54 device = bio->bi_private; in drbd_md_endio() 55 device->md_io.error = blk_status_to_errno(bio->bi_status); in drbd_md_endio() 58 if (device->ldev) in drbd_md_endio() 59 put_ldev(device); in drbd_md_endio() 63 * to timeout on the lower level device, and eventually detach from it. in drbd_md_endio() 71 * ASSERT(atomic_read(&device->md_io_in_use) == 1) there. in drbd_md_endio() 73 drbd_md_put_buffer(device); in drbd_md_endio() 74 device->md_io.done = 1; in drbd_md_endio() 75 wake_up(&device->misc_wait); in drbd_md_endio() [all …]
|
/linux/include/linux/ |
H A D | device.h | 3 * device.h - generic, centralized driver model 29 #include <linux/device/bus.h> 30 #include <linux/device/class.h> 31 #include <linux/device/devres.h> 32 #include <linux/device/driver.h> 34 #include <asm/device.h> 36 struct device; 51 * struct subsys_interface - interfaces to device functions 52 * @name: name of the device function 55 * @add_dev: device hookup to device function handler [all …]
|
H A D | pm_runtime.h | 3 * pm_runtime.h - Device run-time power management helper functions. 11 #include <linux/device.h> 67 extern int pm_generic_runtime_suspend(struct device *dev); 68 extern int pm_generic_runtime_resume(struct device *dev); 69 extern bool pm_runtime_need_not_resume(struct device *dev); 70 extern int pm_runtime_force_suspend(struct device *dev); 71 extern int pm_runtime_force_resume(struct device *dev); 73 extern int __pm_runtime_idle(struct device *dev, int rpmflags); 74 extern int __pm_runtime_suspend(struct device *dev, int rpmflags); 75 extern int __pm_runtime_resume(struct device *dev, int rpmflags); [all …]
|
H A D | pm_opp.h | 23 struct device; 36 * @u_amp: Maximum current drawn by the device in microamperes 37 * @u_watt: Power used by the device in microwatts 50 typedef int (*config_regulators_t)(struct device *dev, 54 typedef int (*config_clks_t)(struct device *dev, struct opp_table *opp_table, 58 * struct dev_pm_opp_config - Device OPP configuration values 66 * @required_dev: The required OPP device. 69 * This structure contains platform specific OPP configurations for the device. 80 struct device *required_dev; 103 struct opp_table *dev_pm_opp_get_opp_table(struct device *dev); [all …]
|
H A D | vdpa.h | 6 #include <linux/device.h> 49 * @last_avail_counter: last driver ring wrap counter observed by device 50 * @last_avail_idx: device available index 51 * @last_used_counter: device ring wrap counter 71 * struct vdpa_device - representation of a vDPA device 72 * @dev: underlying device 73 * @dma_dev: the actual device that is performing DMA 77 * @config: the configuration ops for this device. 79 * @index: device index 83 * @use_va: indicate whether virtual address must be used by this device [all …]
|
H A D | dma-mapping.h | 5 #include <linux/device.h> 34 * transferred to 'device' domain. 63 * be given to a device to use as a DMA source or target. It is specific to a 64 * given device and there may be a translation between the CPU physical address 92 void debug_dma_mapping_error(struct device *dev, dma_addr_t dma_addr); 93 void debug_dma_map_single(struct device *dev, const void *addr, 96 static inline void debug_dma_mapping_error(struct device *dev, in debug_dma_mapping_error() 100 static inline void debug_dma_map_single(struct device *dev, const void *addr, in debug_dma_map_single() 107 static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr) in dma_mapping_error() 116 dma_addr_t dma_map_page_attrs(struct device *dev, struct page *page, [all …]
|
/linux/drivers/s390/char/ |
H A D | tape_core.c | 3 * basic function of the tape device driver 94 tape_medium_state_show(struct device *dev, struct device_attribute *attr, char *buf) in tape_medium_state_show() 106 tape_first_minor_show(struct device *dev, struct device_attribute *attr, char *buf) in tape_first_minor_show() 118 tape_state_show(struct device *dev, struct device_attribute *attr, char *buf) in tape_state_show() 131 tape_operation_show(struct device *dev, struct device_attribute *attr, char *buf) in tape_operation_show() 158 tape_blocksize_show(struct device *dev, struct device_attribute *attr, char *buf) in tape_blocksize_show() 187 tape_state_set(struct tape_device *device, enum tape_state newstate) in tape_state_set() argument 191 if (device->tape_state == TS_NOT_OPER) { in tape_state_set() 195 DBF_EVENT(4, "ts. dev: %x\n", device->first_minor); in tape_state_set() 197 if (device->tape_state < TS_SIZE && device->tape_state >=0 ) in tape_state_set() [all …]
|
H A D | tape_char.c | 3 * character device frontend for tape device driver 63 tapechar_setup_device(struct tape_device * device) in tapechar_setup_device() argument 67 sprintf(device_name, "ntibm%i", device->first_minor / 2); in tapechar_setup_device() 68 device->nt = register_tape_dev( in tapechar_setup_device() 69 &device->cdev->dev, in tapechar_setup_device() 70 MKDEV(tapechar_major, device->first_minor), in tapechar_setup_device() 76 device->rt = register_tape_dev( in tapechar_setup_device() 77 &device->cdev->dev, in tapechar_setup_device() 78 MKDEV(tapechar_major, device->first_minor + 1), in tapechar_setup_device() 88 tapechar_cleanup_device(struct tape_device *device) in tapechar_cleanup_device() argument [all …]
|
H A D | tape_std.c | 3 * standard tape device functions for ibm tapes. 40 struct tape_device * device = request->device; in tape_std_assign_timeout() local 43 BUG_ON(!device); in tape_std_assign_timeout() 45 DBF_EVENT(3, "%08x: Assignment timeout. Device busy.\n", in tape_std_assign_timeout() 46 device->cdev_id); in tape_std_assign_timeout() 47 rc = tape_cancel_io(device, request); in tape_std_assign_timeout() 50 "%i\n", device->cdev_id, rc); in tape_std_assign_timeout() 54 tape_std_assign(struct tape_device *device) in tape_std_assign() argument 68 * The assign command sometimes blocks if the device is assigned in tape_std_assign() 75 rc = tape_do_io_interruptible(device, request); in tape_std_assign() [all …]
|
/linux/drivers/s390/block/ |
H A D | dasd.c | 50 MODULE_DESCRIPTION("Linux on S/390 DASD device driver," 74 * SECTION: Operations on the device structure. 82 * Allocate memory for a new device structure. 86 struct dasd_device *device; in dasd_alloc_device() local 88 device = kzalloc(sizeof(struct dasd_device), GFP_ATOMIC); in dasd_alloc_device() 89 if (!device) in dasd_alloc_device() 92 /* Get two pages for normal block device operations. */ in dasd_alloc_device() 93 device->ccw_mem = (void *) __get_free_pages(GFP_ATOMIC | GFP_DMA, 1); in dasd_alloc_device() 94 if (!device->ccw_mem) { in dasd_alloc_device() 95 kfree(device); in dasd_alloc_device() [all …]
|
H A D | dasd_alias.c | 18 * - A device is connected to an lcu as long as the device exists. 20 * device is checked by the eckd discipline and 22 * before the device is deleted. 24 * functions mark the point when a device is 'ready for service'. 28 * - dasd_alias_get_start_dev will find an alias device that can be used 29 * instead of the base device and does some (very simple) load balancing. 174 * so this function must be called first for a new device. 179 int dasd_alias_make_device_known_to_lcu(struct dasd_device *device) in dasd_alias_make_device_known_to_lcu() argument 181 struct dasd_eckd_private *private = device->private; in dasd_alias_make_device_known_to_lcu() 187 device->discipline->get_uid(device, &uid); in dasd_alias_make_device_known_to_lcu() [all …]
|
/linux/drivers/hid/ |
H A D | hid-roccat.c | 12 * Module roccat is a char device used to report special events of roccat 15 * not stored in device. The information in these events depends on hid device 45 struct device *dev; 62 struct roccat_device *device; member 77 struct roccat_device *device = reader->device; in roccat_read() local 82 mutex_lock(&device->cbuf_lock); in roccat_read() 85 if (reader->cbuf_start == device->cbuf_end) { in roccat_read() 86 add_wait_queue(&device->wait, &wait); in roccat_read() 90 while (reader->cbuf_start == device->cbuf_end) { in roccat_read() 99 if (!device->exist) { in roccat_read() [all …]
|
/linux/drivers/base/power/ |
H A D | power.h | 4 static inline void device_pm_init_common(struct device *dev) in device_pm_init_common() 15 static inline void pm_runtime_early_init(struct device *dev) in pm_runtime_early_init() 21 extern void pm_runtime_init(struct device *dev); 22 extern void pm_runtime_reinit(struct device *dev); 23 extern void pm_runtime_remove(struct device *dev); 24 extern u64 pm_runtime_active_time(struct device *dev); 35 struct device *dev; 43 extern void dev_pm_enable_wake_irq_check(struct device *dev, 45 extern void dev_pm_disable_wake_irq_check(struct device *dev, bool cond_disable); 46 extern void dev_pm_enable_wake_irq_complete(struct device *dev); [all …]
|
/linux/drivers/vfio/ |
H A D | vfio_main.c | 15 #include <linux/device.h> 61 …U mode. This mode provides no device isolation, no DMA translation, no host kernel protection, ca… 66 int vfio_assign_device_set(struct vfio_device *device, void *set_id) in vfio_assign_device_set() argument 109 device->dev_set = dev_set; in vfio_assign_device_set() 110 list_add_tail(&device->dev_set_list, &dev_set->device_list); in vfio_assign_device_set() 116 static void vfio_release_device_set(struct vfio_device *device) in vfio_release_device_set() argument 118 struct vfio_device_set *dev_set = device->dev_set; in vfio_release_device_set() 124 list_del(&device->dev_set_list); in vfio_release_device_set() 152 struct device *dev) in vfio_find_device_in_devset() 166 * Device objects - create, release, get, put, search [all …]
|
H A D | vfio.h | 10 #include <linux/device.h> 20 struct vfio_device *device; member 30 void vfio_device_put_registration(struct vfio_device *device); 31 bool vfio_device_try_get_registration(struct vfio_device *device); 35 vfio_allocate_device_file(struct vfio_device *device); 47 * Physical device with IOMMU backing. 52 * Virtual device without IOMMU backing. The VFIO core fakes up an 60 * Physical device without IOMMU backing. The VFIO core fakes up an 62 * userspace ABI. Users can trigger unmediated DMA by the device, 71 struct device dev; [all …]
|
/linux/Documentation/power/ |
H A D | runtime_pm.rst | 17 * The power management workqueue pm_wq in which bus types and device drivers can 24 * A number of runtime PM fields in the 'power' member of 'struct device' (which 28 * Three device runtime PM callbacks in 'struct dev_pm_ops' (defined in 34 device drivers are encouraged to use these functions. 36 The runtime PM callbacks present in 'struct dev_pm_ops', the device runtime PM 40 2. Device Runtime PM Callbacks 43 There are three device runtime PM callbacks defined in 'struct dev_pm_ops':: 47 int (*runtime_suspend)(struct device *dev); 48 int (*runtime_resume)(struct device *dev); 49 int (*runtime_idle)(struct device *dev); [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-driver-habanalabs | 1 What: /sys/class/accel/accel<n>/device/armcp_kernel_ver 5 Description: Version of the Linux kernel running on the device's CPU. 9 What: /sys/class/accel/accel<n>/device/armcp_ver 13 Description: Version of the application running on the device's CPU 17 What: /sys/class/accel/accel<n>/device/clk_max_freq_mhz 22 The device clock might be set to lower value than the maximum. 24 frequency value of the device clock. This property is valid 27 What: /sys/class/accel/accel<n>/device/clk_cur_freq_mhz 31 Description: Displays the current frequency, in MHz, of the device clock. 34 What: /sys/class/accel/accel<n>/device/cpld_ver [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
H A D | gf119.c | 39 struct nvkm_device *device = ior->disp->engine.subdev.device; in gf119_sor_hda_device_entry() local 42 nvkm_mask(device, 0x616548 + hoff, 0x00000070, head << 4); in gf119_sor_hda_device_entry() 48 struct nvkm_device *device = ior->disp->engine.subdev.device; in gf119_sor_hda_eld() local 53 nvkm_wr32(device, 0x10ec00 + soff, (i << 8) | data[i]); in gf119_sor_hda_eld() 55 nvkm_wr32(device, 0x10ec00 + soff, (i << 8)); in gf119_sor_hda_eld() 56 nvkm_mask(device, 0x10ec10 + soff, 0x80000002, 0x80000002); in gf119_sor_hda_eld() 62 struct nvkm_device *device = ior->disp->engine.subdev.device; in gf119_sor_hda_hpd() local 74 nvkm_mask(device, 0x10ec10 + soff, mask, data); in gf119_sor_hda_hpd() 87 struct nvkm_device *device = sor->disp->engine.subdev.device; in gf119_sor_dp_watermark() local 90 nvkm_mask(device, 0x616610 + hoff, 0x0800003f, 0x08000000 | watermark); in gf119_sor_dp_watermark() [all …]
|
H A D | vga.c | 27 nvkm_rdport(struct nvkm_device *device, int head, u16 port) in nvkm_rdport() argument 29 if (device->card_type >= NV_50) in nvkm_rdport() 30 return nvkm_rd08(device, 0x601000 + port); in nvkm_rdport() 35 return nvkm_rd08(device, 0x601000 + (head * 0x2000) + port); in nvkm_rdport() 40 if (device->card_type < NV_40) in nvkm_rdport() 42 return nvkm_rd08(device, 0x0c0000 + (head * 0x2000) + port); in nvkm_rdport() 49 nvkm_wrport(struct nvkm_device *device, int head, u16 port, u8 data) in nvkm_wrport() argument 51 if (device->card_type >= NV_50) in nvkm_wrport() 52 nvkm_wr08(device, 0x601000 + port, data); in nvkm_wrport() 57 nvkm_wr08(device, 0x601000 + (head * 0x2000) + port, data); in nvkm_wrport() [all …]
|
/linux/drivers/infiniband/core/ |
H A D | device.c | 81 * The devices_rwsem also protects the device name list, any change or 82 * assignment of device name must also hold the write side to guarantee unique 89 * status need to call ib_device_try_get() on the device to ensure it is 130 "Share device among net namespaces; default=1 (shared)"); 132 * rdma_dev_access_netns() - Return whether an rdma device can be accessed 134 * @dev: Pointer to rdma device which needs to be checked 137 * When the rdma device is in shared mode, it ignores the net namespace. 138 * When the rdma device is exclusive to a net namespace, rdma device net 188 static void __ib_unregister_device(struct ib_device *device); 241 static int rdma_dev_change_netns(struct ib_device *device, struct net *cur_net, [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/ |
H A D | gt215.c | 34 struct nvkm_device *device = subdev->device; in gt215_pmu_send() local 39 addr = nvkm_rd32(device, 0x10a4a0); in gt215_pmu_send() 40 if (nvkm_msec(device, 2000, in gt215_pmu_send() 41 u32 tmp = nvkm_rd32(device, 0x10a4b0); in gt215_pmu_send() 60 nvkm_wr32(device, 0x10a580, 0x00000001); in gt215_pmu_send() 61 } while (nvkm_rd32(device, 0x10a580) != 0x00000001); in gt215_pmu_send() 64 nvkm_wr32(device, 0x10a1c0, 0x01000000 | (((addr & 0x07) << 4) + in gt215_pmu_send() 66 nvkm_wr32(device, 0x10a1c4, process); in gt215_pmu_send() 67 nvkm_wr32(device, 0x10a1c4, message); in gt215_pmu_send() 68 nvkm_wr32(device, 0x10a1c4, data0); in gt215_pmu_send() [all …]
|
/linux/drivers/hid/intel-ish-hid/ishtp/ |
H A D | bus.c | 11 #include <linux/device.h> 29 * @dev: ishtp device 73 * @dev: ishtp device 104 * @dev: ishtp device 121 * @dev: ishtp device 142 * @dev: the ishtp device structure 181 * @dev: the ishtp device structure 207 * @dev: the device structure 213 static int ishtp_cl_device_probe(struct device *dev) in ishtp_cl_device_probe() 215 struct ishtp_cl_device *device = to_ishtp_cl_device(dev); in ishtp_cl_device_probe() local [all …]
|
/linux/include/linux/cdx/ |
H A D | cdx_bus.h | 12 #include <linux/device.h> 57 * CDX_DEVICE - macro used to describe a specific CDX device 59 * @dev: the 16 bit CDX Device ID 62 * specific device. The subvendor and subdevice fields will be set to 66 .vendor = (vend), .device = (dev), \ 70 * CDX_DEVICE_DRIVER_OVERRIDE - macro used to describe a CDX device with 73 * @dev: the 16 bit CDX Device ID 74 * @driver_override: the 32 bit CDX Device override_only 77 * driver_override device. The subvendor and subdevice fields will be set to 81 .vendor = (vend), .device = (dev), .subvendor = CDX_ANY_ID,\ [all …]
|
/linux/include/linux/surface_aggregator/ |
H A D | device.h | 3 * Surface System Aggregator Module (SSAM) bus and client-device subsystem. 16 #include <linux/device.h> 27 * enum ssam_device_domain - SAM device domain. 28 * @SSAM_DOMAIN_VIRTUAL: Virtual device. 29 * @SSAM_DOMAIN_SERIALHUB: Physical device connected via Surface Serial Hub. 38 * @SSAM_VIRTUAL_TC_HUB: Device hub category. 45 * struct ssam_device_uid - Unique identifier for SSAM device. 46 * @domain: Domain of the device. 47 * @category: Target category of the device. 48 * @target: Target ID of the device. [all …]
|