/linux/drivers/gpu/drm/mediatek/ |
H A D | mtk_disp_drv.h | 15 int mtk_aal_clk_enable(struct device *dev); 16 void mtk_aal_clk_disable(struct device *dev); 17 void mtk_aal_config(struct device *dev, unsigned int w, 20 unsigned int mtk_aal_gamma_get_lut_size(struct device *dev); 21 void mtk_aal_gamma_set(struct device *dev, struct drm_crtc_state *state); 22 void mtk_aal_start(struct device *dev); 23 void mtk_aal_stop(struct device *dev); 25 void mtk_ccorr_ctm_set(struct device *dev, struct drm_crtc_state *state); 26 int mtk_ccorr_clk_enable(struct device *dev); 27 void mtk_ccorr_clk_disable(struct device *dev); [all …]
|
/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 30 #include <linux/device/bus.h> 31 #include <linux/device/class.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 56 * @remove_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 int pm_runtime_force_suspend(struct device *dev); 70 extern int pm_runtime_force_resume(struct device *dev); 72 extern int __pm_runtime_idle(struct device *dev, int rpmflags); 73 extern int __pm_runtime_suspend(struct device *dev, int rpmflags); 74 extern int __pm_runtime_resume(struct device *dev, int rpmflags); 75 extern int pm_runtime_get_if_active(struct device *dev); [all …]
|
H A D | pm_opp.h | 22 struct device; 35 * @u_amp: Maximum current drawn by the device in microamperes 36 * @u_watt: Power used by the device in microwatts 49 typedef int (*config_regulators_t)(struct device *dev, 53 typedef int (*config_clks_t)(struct device *dev, struct opp_table *opp_table, 57 * struct dev_pm_opp_config - Device OPP configuration values 71 * This structure contains platform specific OPP configurations for the device. 83 struct device ***virt_devs; 84 struct device **required_devs; 106 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 …]
|
/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 …]
|
/linux/drivers/s390/block/ |
H A D | dasd.c | 49 MODULE_DESCRIPTION("Linux on S/390 DASD device driver," 73 * SECTION: Operations on the device structure. 81 * Allocate memory for a new device structure. 85 struct dasd_device *device; in dasd_alloc_device() local 87 device = kzalloc(sizeof(struct dasd_device), GFP_ATOMIC); in dasd_alloc_device() 88 if (!device) in dasd_alloc_device() 91 /* Get two pages for normal block device operations. */ in dasd_alloc_device() 92 device->ccw_mem = (void *) __get_free_pages(GFP_ATOMIC | GFP_DMA, 1); in dasd_alloc_device() 93 if (!device->ccw_mem) { in dasd_alloc_device() 94 kfree(device); in dasd_alloc_device() [all …]
|
H A D | dasd_devmap.c | 10 * Device mapping and dasd= parameter parsing functions. All devmap 34 * between device number and device index. To find a dasd_devmap_t 35 * that corresponds to a device number of a device index each 37 * the device number and one to search by the device index. As 38 * soon as big minor numbers are available the device index list 39 * can be removed since the device number will then be identical 40 * to the device index. 47 struct dasd_device *device; member 128 * Read a device busid/devno from a string. 138 pr_err("The IPL device is not a CCW device\n"); in dasd_busid() [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/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/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/firewire/ |
H A D | core-device.c | 3 * Device probing and sysfs code. 11 #include <linux/device.h> 191 static const struct ieee1394_device_id *unit_match(struct device *dev, in unit_match() 207 static bool is_fw_unit(const struct device *dev); 209 static int fw_unit_match(struct device *dev, const struct device_driver *drv) in fw_unit_match() 215 static int fw_unit_probe(struct device *dev) in fw_unit_probe() 223 static void fw_unit_remove(struct device *dev) in fw_unit_remove() 242 static int fw_unit_uevent(const struct device *dev, struct kobj_uevent_env *env) in fw_unit_uevent() 263 int fw_device_enable_phys_dma(struct fw_device *device) in fw_device_enable_phys_dma() argument 265 int generation = device->generation; in fw_device_enable_phys_dma() [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/engine/gr/ |
H A D | nv40.c | 36 return nvkm_rd32(gr->engine.subdev.device, 0x1540); in nv40_gr_units() 47 int ret = nvkm_gpuobj_new(object->engine->subdev.device, 20, align, in nv40_gr_object_bind() 79 int ret = nvkm_gpuobj_new(gr->base.engine.subdev.device, gr->size, in nv40_gr_chan_bind() 84 nv40_grctx_fill(gr->base.engine.subdev.device, *pgpuobj); in nv40_gr_chan_bind() 97 struct nvkm_device *device = subdev->device; in nv40_gr_chan_fini() local 101 nvkm_mask(device, 0x400720, 0x00000001, 0x00000000); in nv40_gr_chan_fini() 103 if (nvkm_rd32(device, 0x40032c) == inst) { in nv40_gr_chan_fini() 105 nvkm_wr32(device, 0x400720, 0x00000000); in nv40_gr_chan_fini() 106 nvkm_wr32(device, 0x400784, inst); in nv40_gr_chan_fini() 107 nvkm_mask(device, 0x400310, 0x00000020, 0x00000020); in nv40_gr_chan_fini() [all …]
|
H A D | nv20.c | 34 struct nvkm_device *device = gr->base.engine.subdev.device; in nv20_gr_chan_fini() local 38 nvkm_mask(device, 0x400720, 0x00000001, 0x00000000); in nv20_gr_chan_fini() 39 if (nvkm_rd32(device, 0x400144) & 0x00010000) in nv20_gr_chan_fini() 40 chid = (nvkm_rd32(device, 0x400148) & 0x1f000000) >> 24; in nv20_gr_chan_fini() 42 nvkm_wr32(device, 0x400784, inst >> 4); in nv20_gr_chan_fini() 43 nvkm_wr32(device, 0x400788, 0x00000002); in nv20_gr_chan_fini() 44 nvkm_msec(device, 2000, in nv20_gr_chan_fini() 45 if (!nvkm_rd32(device, 0x400700)) in nv20_gr_chan_fini() 48 nvkm_wr32(device, 0x400144, 0x10000000); in nv20_gr_chan_fini() 49 nvkm_mask(device, 0x400148, 0xff000000, 0x1f000000); in nv20_gr_chan_fini() [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/host1x/ |
H A D | bus.c | 34 * host1x_subdev_add() - add a new subdevice with an associated device node 35 * @device: host1x device to add the subdevice to 37 * @np: device node 39 static int host1x_subdev_add(struct host1x_device *device, in host1x_subdev_add() argument 54 mutex_lock(&device->subdevs_lock); in host1x_subdev_add() 55 list_add_tail(&subdev->list, &device->subdevs); in host1x_subdev_add() 56 mutex_unlock(&device->subdevs_lock); in host1x_subdev_add() 62 err = host1x_subdev_add(device, driver, child); in host1x_subdev_add() 86 * host1x_device_parse_dt() - scan device tree and add matching subdevices 87 * @device: host1x logical device [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
H A D | gv100.c | 40 struct nvkm_device *device = ior->disp->engine.subdev.device; in gv100_sor_hda_device_entry() local 43 nvkm_mask(device, 0x616528 + hoff, 0x00000070, head << 4); in gv100_sor_hda_device_entry() 56 struct nvkm_device *device = sor->disp->engine.subdev.device; in gv100_sor_dp_watermark() local 59 nvkm_mask(device, 0x616550 + hoff, 0x0c00003f, 0x08000000 | watermark); in gv100_sor_dp_watermark() 65 struct nvkm_device *device = sor->disp->engine.subdev.device; in gv100_sor_dp_audio_sym() local 68 nvkm_mask(device, 0x616568 + hoff, 0x0000ffff, h); in gv100_sor_dp_audio_sym() 69 nvkm_mask(device, 0x61656c + hoff, 0x00ffffff, v); in gv100_sor_dp_audio_sym() 75 struct nvkm_device *device = sor->disp->engine.subdev.device; in gv100_sor_dp_audio() local 80 nvkm_mask(device, 0x616560 + hoff, mask, data); in gv100_sor_dp_audio() 81 nvkm_msec(device, 2000, in gv100_sor_dp_audio() [all …]
|
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/acpi/ |
H A D | device_pm.c | 3 * drivers/acpi/device_pm.c - ACPI device power management routines. 27 * acpi_power_state_string - String representation of ACPI device power state. 28 * @state: ACPI device power state to return the string representation of. 48 static int acpi_dev_pm_explicit_get(struct acpi_device *device, int *state) in acpi_dev_pm_explicit_get() argument 53 status = acpi_evaluate_integer(device->handle, "_PSC", NULL, &psc); in acpi_dev_pm_explicit_get() 62 * acpi_device_get_power - Get power state of an ACPI device. 63 * @device: Device to get the power state of. 64 * @state: Place to store the power state of the device. 66 * This function does not update the device's power.state field, but it may 68 * unknown and the device's power state turns out to be D0). [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/gpu/drm/nouveau/nvkm/engine/fifo/ |
H A D | nv04.c | 44 struct nvkm_device *device = fifo->engine.subdev.device; in nv04_chan_stop() local 45 struct nvkm_memory *fctx = device->imem->ramfc; in nv04_chan_stop() 53 nvkm_wr32(device, NV03_PFIFO_CACHES, 0); in nv04_chan_stop() 56 chid = nvkm_rd32(device, NV03_PFIFO_CACHE1_PUSH1) & fifo->chid->mask; in nv04_chan_stop() 58 nvkm_mask(device, NV04_PFIFO_CACHE1_DMA_PUSH, 0x00000001, 0); in nv04_chan_stop() 59 nvkm_wr32(device, NV03_PFIFO_CACHE1_PUSH0, 0); in nv04_chan_stop() 60 nvkm_mask(device, NV04_PFIFO_CACHE1_PULL0, 0x00000001, 0); in nv04_chan_stop() 67 u32 rv = (nvkm_rd32(device, c->regp) & rm) >> c->regs; in nv04_chan_stop() 75 nvkm_wr32(device, c->regp, 0x00000000); in nv04_chan_stop() 78 nvkm_wr32(device, NV03_PFIFO_CACHE1_GET, 0); in nv04_chan_stop() [all …]
|