arch/arm/mach-omap1/board-ams-delta.c
598
struct gpio_device *gdev;
arch/arm/mach-omap1/board-ams-delta.c
612
gdev = gpio_device_find_by_label(OMAP_GPIO_LABEL);
arch/arm/mach-omap1/board-ams-delta.c
613
if (!gdev) {
arch/arm/mach-omap1/board-ams-delta.c
618
chip = gpio_device_get_chip(gdev);
arch/s390/include/asm/ccwgroup.h
57
extern int ccwgroup_set_online(struct ccwgroup_device *gdev);
arch/s390/include/asm/ccwgroup.h
58
int ccwgroup_set_offline(struct ccwgroup_device *gdev, bool call_gdrv);
arch/s390/net/pnet.c
46
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
arch/s390/net/pnet.c
49
util_str = ccw_device_get_util_str(gdev->cdev[0], 0);
drivers/ata/libata-sff.c
2145
struct device *gdev = host->dev;
drivers/ata/libata-sff.c
2146
struct pci_dev *pdev = to_pci_dev(gdev);
drivers/ata/libata-sff.c
2169
dev_driver_string(gdev));
drivers/ata/libata-sff.c
2171
dev_warn(gdev,
drivers/ata/libata-sff.c
2195
dev_err(gdev, "no available native port\n");
drivers/ata/libata-sff.c
3070
struct device *gdev = host->dev;
drivers/ata/libata-sff.c
3071
struct pci_dev *pdev = to_pci_dev(gdev);
drivers/ata/libata-sff.c
3091
rc = pcim_iomap_regions(pdev, 1 << 4, dev_driver_string(gdev));
drivers/ata/pata_atp867x.c
405
struct device *gdev = host->dev;
drivers/ata/pata_atp867x.c
406
struct pci_dev *pdev = to_pci_dev(gdev);
drivers/ata/pata_atp867x.c
423
dev_dbg(gdev, "ATP867X: iomap[%d]=0x%p\n", i,
drivers/ata/pata_atp867x.c
455
dev_err(gdev, "no available native port\n");
drivers/bus/brcmstb_gisb.c
154
static u32 gisb_read(struct brcmstb_gisb_arb_device *gdev, int reg)
drivers/bus/brcmstb_gisb.c
156
int offset = gdev->gisb_offsets[reg];
drivers/bus/brcmstb_gisb.c
166
if (gdev->big_endian)
drivers/bus/brcmstb_gisb.c
167
return ioread32be(gdev->base + offset);
drivers/bus/brcmstb_gisb.c
169
return ioread32(gdev->base + offset);
drivers/bus/brcmstb_gisb.c
172
static u64 gisb_read_address(struct brcmstb_gisb_arb_device *gdev)
drivers/bus/brcmstb_gisb.c
176
value = gisb_read(gdev, ARB_ERR_CAP_ADDR);
drivers/bus/brcmstb_gisb.c
177
value |= (u64)gisb_read(gdev, ARB_ERR_CAP_HI_ADDR) << 32;
drivers/bus/brcmstb_gisb.c
182
static u64 gisb_read_bp_address(struct brcmstb_gisb_arb_device *gdev)
drivers/bus/brcmstb_gisb.c
186
value = gisb_read(gdev, ARB_BP_CAP_ADDR);
drivers/bus/brcmstb_gisb.c
187
value |= (u64)gisb_read(gdev, ARB_BP_CAP_HI_ADDR) << 32;
drivers/bus/brcmstb_gisb.c
192
static void gisb_write(struct brcmstb_gisb_arb_device *gdev, u32 val, int reg)
drivers/bus/brcmstb_gisb.c
194
int offset = gdev->gisb_offsets[reg];
drivers/bus/brcmstb_gisb.c
199
if (gdev->big_endian)
drivers/bus/brcmstb_gisb.c
200
iowrite32be(val, gdev->base + offset);
drivers/bus/brcmstb_gisb.c
202
iowrite32(val, gdev->base + offset);
drivers/bus/brcmstb_gisb.c
209
struct brcmstb_gisb_arb_device *gdev = dev_get_drvdata(dev);
drivers/bus/brcmstb_gisb.c
212
mutex_lock(&gdev->lock);
drivers/bus/brcmstb_gisb.c
213
timeout = gisb_read(gdev, ARB_TIMER);
drivers/bus/brcmstb_gisb.c
214
mutex_unlock(&gdev->lock);
drivers/bus/brcmstb_gisb.c
223
struct brcmstb_gisb_arb_device *gdev = dev_get_drvdata(dev);
drivers/bus/brcmstb_gisb.c
233
mutex_lock(&gdev->lock);
drivers/bus/brcmstb_gisb.c
234
gisb_write(gdev, val, ARB_TIMER);
drivers/bus/brcmstb_gisb.c
235
mutex_unlock(&gdev->lock);
drivers/bus/brcmstb_gisb.c
241
brcmstb_gisb_master_to_str(struct brcmstb_gisb_arb_device *gdev,
drivers/bus/brcmstb_gisb.c
244
u32 mask = gdev->valid_mask & masters;
drivers/bus/brcmstb_gisb.c
249
return gdev->master_names[ffs(mask) - 1];
drivers/bus/brcmstb_gisb.c
252
static int brcmstb_gisb_arb_decode_addr(struct brcmstb_gisb_arb_device *gdev,
drivers/bus/brcmstb_gisb.c
261
cap_status = gisb_read(gdev, ARB_ERR_CAP_STATUS);
drivers/bus/brcmstb_gisb.c
268
arb_addr = gisb_read_address(gdev);
drivers/bus/brcmstb_gisb.c
269
master = gisb_read(gdev, ARB_ERR_CAP_MASTER);
drivers/bus/brcmstb_gisb.c
271
m_name = brcmstb_gisb_master_to_str(gdev, master);
drivers/bus/brcmstb_gisb.c
284
gisb_write(gdev, ARB_ERR_CAP_CLEAR, ARB_ERR_CAP_CLR);
drivers/bus/brcmstb_gisb.c
293
struct brcmstb_gisb_arb_device *gdev;
drivers/bus/brcmstb_gisb.c
296
list_for_each_entry(gdev, &brcmstb_gisb_arb_device_list, next) {
drivers/bus/brcmstb_gisb.c
297
cap_status = gisb_read(gdev, ARB_ERR_CAP_STATUS);
drivers/bus/brcmstb_gisb.c
305
ret |= brcmstb_gisb_arb_decode_addr(gdev, "bus error");
drivers/bus/brcmstb_gisb.c
328
struct brcmstb_gisb_arb_device *gdev = dev_id;
drivers/bus/brcmstb_gisb.c
335
bp_status = gisb_read(gdev, ARB_BP_CAP_STATUS);
drivers/bus/brcmstb_gisb.c
342
arb_addr = gisb_read_bp_address(gdev);
drivers/bus/brcmstb_gisb.c
343
master = gisb_read(gdev, ARB_BP_CAP_MASTER);
drivers/bus/brcmstb_gisb.c
345
m_name = brcmstb_gisb_master_to_str(gdev, master);
drivers/bus/brcmstb_gisb.c
356
gisb_write(gdev, ARB_ERR_CAP_CLEAR, ARB_ERR_CAP_CLR);
drivers/bus/brcmstb_gisb.c
378
struct brcmstb_gisb_arb_device *gdev;
drivers/bus/brcmstb_gisb.c
385
list_for_each_entry(gdev, &brcmstb_gisb_arb_device_list, next)
drivers/bus/brcmstb_gisb.c
386
brcmstb_gisb_arb_decode_addr(gdev, reason);
drivers/bus/brcmstb_gisb.c
415
struct brcmstb_gisb_arb_device *gdev;
drivers/bus/brcmstb_gisb.c
425
gdev = devm_kzalloc(&pdev->dev, sizeof(*gdev), GFP_KERNEL);
drivers/bus/brcmstb_gisb.c
426
if (!gdev)
drivers/bus/brcmstb_gisb.c
429
mutex_init(&gdev->lock);
drivers/bus/brcmstb_gisb.c
430
INIT_LIST_HEAD(&gdev->next);
drivers/bus/brcmstb_gisb.c
432
gdev->base = devm_platform_get_and_ioremap_resource(pdev, 0, NULL);
drivers/bus/brcmstb_gisb.c
433
if (IS_ERR(gdev->base))
drivers/bus/brcmstb_gisb.c
434
return PTR_ERR(gdev->base);
drivers/bus/brcmstb_gisb.c
441
gdev->gisb_offsets = of_id->data;
drivers/bus/brcmstb_gisb.c
442
gdev->big_endian = of_device_is_big_endian(dn);
drivers/bus/brcmstb_gisb.c
446
gdev);
drivers/bus/brcmstb_gisb.c
452
gdev);
drivers/bus/brcmstb_gisb.c
460
gdev);
drivers/bus/brcmstb_gisb.c
467
&gdev->valid_mask))
drivers/bus/brcmstb_gisb.c
468
gdev->valid_mask = 0xffffffff;
drivers/bus/brcmstb_gisb.c
475
if (hweight_long(gdev->valid_mask) == num_masters) {
drivers/bus/brcmstb_gisb.c
476
first = ffs(gdev->valid_mask) - 1;
drivers/bus/brcmstb_gisb.c
477
last = fls(gdev->valid_mask) - 1;
drivers/bus/brcmstb_gisb.c
480
if (!(gdev->valid_mask & BIT(i)))
drivers/bus/brcmstb_gisb.c
485
&gdev->master_names[i]);
drivers/bus/brcmstb_gisb.c
490
platform_set_drvdata(pdev, gdev);
drivers/bus/brcmstb_gisb.c
492
list_add_tail(&gdev->next, &brcmstb_gisb_arb_device_list);
drivers/bus/brcmstb_gisb.c
513
struct brcmstb_gisb_arb_device *gdev = dev_get_drvdata(dev);
drivers/bus/brcmstb_gisb.c
515
gdev->saved_timeout = gisb_read(gdev, ARB_TIMER);
drivers/bus/brcmstb_gisb.c
525
struct brcmstb_gisb_arb_device *gdev = dev_get_drvdata(dev);
drivers/bus/brcmstb_gisb.c
527
gisb_write(gdev, gdev->saved_timeout, ARB_TIMER);
drivers/gnss/core.c
105
ret = wait_event_interruptible(gdev->read_queue,
drivers/gnss/core.c
106
gdev->disconnected ||
drivers/gnss/core.c
107
!kfifo_is_empty(&gdev->read_fifo));
drivers/gnss/core.c
111
mutex_lock(&gdev->read_mutex);
drivers/gnss/core.c
114
ret = kfifo_to_user(&gdev->read_fifo, buf, count, &copied);
drivers/gnss/core.c
118
mutex_unlock(&gdev->read_mutex);
drivers/gnss/core.c
126
struct gnss_device *gdev = file->private_data;
drivers/gnss/core.c
130
if (gdev->disconnected)
drivers/gnss/core.c
136
if (!(gdev->flags & GNSS_FLAG_HAS_WRITE_RAW))
drivers/gnss/core.c
141
ret = mutex_lock_interruptible(&gdev->write_mutex);
drivers/gnss/core.c
151
if (copy_from_user(gdev->write_buf, buf, n)) {
drivers/gnss/core.c
162
down_read(&gdev->rwsem);
drivers/gnss/core.c
163
if (!gdev->disconnected)
drivers/gnss/core.c
164
ret = gdev->ops->write_raw(gdev, gdev->write_buf, n);
drivers/gnss/core.c
167
up_read(&gdev->rwsem);
drivers/gnss/core.c
182
mutex_unlock(&gdev->write_mutex);
drivers/gnss/core.c
189
struct gnss_device *gdev = file->private_data;
drivers/gnss/core.c
192
poll_wait(file, &gdev->read_queue, wait);
drivers/gnss/core.c
194
if (!kfifo_is_empty(&gdev->read_fifo))
drivers/gnss/core.c
196
if (gdev->disconnected)
drivers/gnss/core.c
215
struct gnss_device *gdev = to_gnss_device(dev);
drivers/gnss/core.c
217
kfree(gdev->write_buf);
drivers/gnss/core.c
218
kfifo_free(&gdev->read_fifo);
drivers/gnss/core.c
219
ida_free(&gnss_minors, gdev->id);
drivers/gnss/core.c
220
kfree(gdev);
drivers/gnss/core.c
225
struct gnss_device *gdev;
drivers/gnss/core.c
230
gdev = kzalloc_obj(*gdev);
drivers/gnss/core.c
231
if (!gdev)
drivers/gnss/core.c
236
kfree(gdev);
drivers/gnss/core.c
240
gdev->id = id;
drivers/gnss/core.c
242
dev = &gdev->dev;
drivers/gnss/core.c
248
dev_set_drvdata(dev, gdev);
drivers/gnss/core.c
251
init_rwsem(&gdev->rwsem);
drivers/gnss/core.c
252
mutex_init(&gdev->read_mutex);
drivers/gnss/core.c
253
mutex_init(&gdev->write_mutex);
drivers/gnss/core.c
254
init_waitqueue_head(&gdev->read_queue);
drivers/gnss/core.c
256
ret = kfifo_alloc(&gdev->read_fifo, GNSS_READ_FIFO_SIZE, GFP_KERNEL);
drivers/gnss/core.c
260
gdev->write_buf = kzalloc(GNSS_WRITE_BUF_SIZE, GFP_KERNEL);
drivers/gnss/core.c
261
if (!gdev->write_buf)
drivers/gnss/core.c
264
cdev_init(&gdev->cdev, &gnss_fops);
drivers/gnss/core.c
265
gdev->cdev.owner = THIS_MODULE;
drivers/gnss/core.c
267
return gdev;
drivers/gnss/core.c
276
void gnss_put_device(struct gnss_device *gdev)
drivers/gnss/core.c
278
put_device(&gdev->dev);
drivers/gnss/core.c
282
int gnss_register_device(struct gnss_device *gdev)
drivers/gnss/core.c
287
if (gdev->ops->write_raw != NULL)
drivers/gnss/core.c
288
gdev->flags |= GNSS_FLAG_HAS_WRITE_RAW;
drivers/gnss/core.c
290
ret = cdev_device_add(&gdev->cdev, &gdev->dev);
drivers/gnss/core.c
292
dev_err(&gdev->dev, "failed to add device: %d\n", ret);
drivers/gnss/core.c
300
void gnss_deregister_device(struct gnss_device *gdev)
drivers/gnss/core.c
302
down_write(&gdev->rwsem);
drivers/gnss/core.c
303
gdev->disconnected = true;
drivers/gnss/core.c
304
if (gdev->count) {
drivers/gnss/core.c
305
wake_up_interruptible(&gdev->read_queue);
drivers/gnss/core.c
306
gdev->ops->close(gdev);
drivers/gnss/core.c
308
up_write(&gdev->rwsem);
drivers/gnss/core.c
310
cdev_device_del(&gdev->cdev, &gdev->dev);
drivers/gnss/core.c
319
int gnss_insert_raw(struct gnss_device *gdev, const unsigned char *buf,
drivers/gnss/core.c
324
ret = kfifo_in(&gdev->read_fifo, buf, count);
drivers/gnss/core.c
326
wake_up_interruptible(&gdev->read_queue);
drivers/gnss/core.c
339
static const char *gnss_type_name(const struct gnss_device *gdev)
drivers/gnss/core.c
343
if (gdev->type < GNSS_TYPE_COUNT)
drivers/gnss/core.c
344
name = gnss_type_names[gdev->type];
drivers/gnss/core.c
347
dev_WARN(&gdev->dev, "type name not defined\n");
drivers/gnss/core.c
355
struct gnss_device *gdev = to_gnss_device(dev);
drivers/gnss/core.c
357
return sprintf(buf, "%s\n", gnss_type_name(gdev));
drivers/gnss/core.c
369
const struct gnss_device *gdev = to_gnss_device(dev);
drivers/gnss/core.c
372
ret = add_uevent_var(env, "GNSS_TYPE=%s", gnss_type_name(gdev));
drivers/gnss/core.c
38
struct gnss_device *gdev;
drivers/gnss/core.c
41
gdev = container_of(inode->i_cdev, struct gnss_device, cdev);
drivers/gnss/core.c
43
get_device(&gdev->dev);
drivers/gnss/core.c
46
file->private_data = gdev;
drivers/gnss/core.c
48
down_write(&gdev->rwsem);
drivers/gnss/core.c
49
if (gdev->disconnected) {
drivers/gnss/core.c
54
if (gdev->count++ == 0) {
drivers/gnss/core.c
55
ret = gdev->ops->open(gdev);
drivers/gnss/core.c
57
gdev->count--;
drivers/gnss/core.c
60
up_write(&gdev->rwsem);
drivers/gnss/core.c
63
put_device(&gdev->dev);
drivers/gnss/core.c
70
struct gnss_device *gdev = file->private_data;
drivers/gnss/core.c
72
down_write(&gdev->rwsem);
drivers/gnss/core.c
73
if (gdev->disconnected)
drivers/gnss/core.c
76
if (--gdev->count == 0) {
drivers/gnss/core.c
77
gdev->ops->close(gdev);
drivers/gnss/core.c
78
kfifo_reset(&gdev->read_fifo);
drivers/gnss/core.c
81
up_write(&gdev->rwsem);
drivers/gnss/core.c
83
put_device(&gdev->dev);
drivers/gnss/core.c
91
struct gnss_device *gdev = file->private_data;
drivers/gnss/core.c
95
mutex_lock(&gdev->read_mutex);
drivers/gnss/core.c
96
while (kfifo_is_empty(&gdev->read_fifo)) {
drivers/gnss/core.c
97
mutex_unlock(&gdev->read_mutex);
drivers/gnss/core.c
99
if (gdev->disconnected)
drivers/gnss/mtk.c
80
gserial->gdev->type = GNSS_TYPE_MTK;
drivers/gnss/serial.c
127
struct gnss_device *gdev;
drivers/gnss/serial.c
134
gdev = gnss_allocate_device(&serdev->dev);
drivers/gnss/serial.c
135
if (!gdev) {
drivers/gnss/serial.c
140
gdev->ops = &gnss_serial_gnss_ops;
drivers/gnss/serial.c
141
gnss_set_drvdata(gdev, gserial);
drivers/gnss/serial.c
144
gserial->gdev = gdev;
drivers/gnss/serial.c
156
gnss_put_device(gserial->gdev);
drivers/gnss/serial.c
166
gnss_put_device(gserial->gdev);
drivers/gnss/serial.c
184
ret = gnss_register_device(gserial->gdev);
drivers/gnss/serial.c
204
gnss_deregister_device(gserial->gdev);
drivers/gnss/serial.c
22
static int gnss_serial_open(struct gnss_device *gdev)
drivers/gnss/serial.c
24
struct gnss_serial *gserial = gnss_get_drvdata(gdev);
drivers/gnss/serial.c
49
static void gnss_serial_close(struct gnss_device *gdev)
drivers/gnss/serial.c
51
struct gnss_serial *gserial = gnss_get_drvdata(gdev);
drivers/gnss/serial.c
59
static int gnss_serial_write_raw(struct gnss_device *gdev,
drivers/gnss/serial.c
62
struct gnss_serial *gserial = gnss_get_drvdata(gdev);
drivers/gnss/serial.c
87
struct gnss_device *gdev = gserial->gdev;
drivers/gnss/serial.c
89
return gnss_insert_raw(gdev, buf, count);
drivers/gnss/serial.h
16
struct gnss_device *gdev;
drivers/gnss/sirf.c
108
dev_err(&gdev->dev, "failed to runtime resume: %d\n", ret);
drivers/gnss/sirf.c
125
static void sirf_close(struct gnss_device *gdev)
drivers/gnss/sirf.c
127
struct sirf_data *data = gnss_get_drvdata(gdev);
drivers/gnss/sirf.c
139
static int sirf_write_raw(struct gnss_device *gdev, const unsigned char *buf,
drivers/gnss/sirf.c
142
struct sirf_data *data = gnss_get_drvdata(gdev);
drivers/gnss/sirf.c
167
struct gnss_device *gdev = data->gdev;
drivers/gnss/sirf.c
177
ret = gnss_insert_raw(gdev, buf, count);
drivers/gnss/sirf.c
39
struct gnss_device *gdev;
drivers/gnss/sirf.c
398
struct gnss_device *gdev;
drivers/gnss/sirf.c
406
gdev = gnss_allocate_device(dev);
drivers/gnss/sirf.c
407
if (!gdev)
drivers/gnss/sirf.c
410
gdev->type = GNSS_TYPE_SIRF;
drivers/gnss/sirf.c
411
gdev->ops = &sirf_gnss_ops;
drivers/gnss/sirf.c
412
gnss_set_drvdata(gdev, data);
drivers/gnss/sirf.c
415
data->gdev = gdev;
drivers/gnss/sirf.c
513
ret = gnss_register_device(gdev);
drivers/gnss/sirf.c
531
gnss_put_device(data->gdev);
drivers/gnss/sirf.c
540
gnss_deregister_device(data->gdev);
drivers/gnss/sirf.c
553
gnss_put_device(data->gdev);
drivers/gnss/sirf.c
88
static int sirf_open(struct gnss_device *gdev)
drivers/gnss/sirf.c
90
struct sirf_data *data = gnss_get_drvdata(gdev);
drivers/gnss/ubx.c
82
gserial->gdev->type = GNSS_TYPE_UBX;
drivers/gnss/usb.c
122
struct gnss_device *gdev;
drivers/gnss/usb.c
138
gdev = gnss_allocate_device(&intf->dev);
drivers/gnss/usb.c
139
if (!gdev) {
drivers/gnss/usb.c
144
gdev->ops = &gnss_usb_gnss_ops;
drivers/gnss/usb.c
145
gdev->type = GNSS_TYPE_NMEA;
drivers/gnss/usb.c
146
gnss_set_drvdata(gdev, gusb);
drivers/gnss/usb.c
168
gusb->gdev = gdev;
drivers/gnss/usb.c
172
ret = gnss_register_device(gdev);
drivers/gnss/usb.c
185
gnss_put_device(gdev);
drivers/gnss/usb.c
196
gnss_deregister_device(gusb->gdev);
drivers/gnss/usb.c
200
gnss_put_device(gusb->gdev);
drivers/gnss/usb.c
28
struct gnss_device *gdev;
drivers/gnss/usb.c
36
struct gnss_device *gdev = gusb->gdev;
drivers/gnss/usb.c
47
dev_dbg(&gdev->dev, "urb stopped: %d\n", status);
drivers/gnss/usb.c
50
dev_err(&gdev->dev, "urb stopped: %d\n", status);
drivers/gnss/usb.c
53
dev_dbg(&gdev->dev, "nonzero urb status: %d\n", status);
drivers/gnss/usb.c
61
ret = gnss_insert_raw(gdev, urb->transfer_buffer, len);
drivers/gnss/usb.c
63
dev_dbg(&gdev->dev, "dropped %d bytes\n", len - ret);
drivers/gnss/usb.c
67
dev_err(&gdev->dev, "failed to resubmit urb: %d\n", ret);
drivers/gnss/usb.c
70
static int gnss_usb_open(struct gnss_device *gdev)
drivers/gnss/usb.c
72
struct gnss_usb *gusb = gnss_get_drvdata(gdev);
drivers/gnss/usb.c
78
dev_err(&gdev->dev, "failed to submit urb: %d\n", ret);
drivers/gnss/usb.c
85
static void gnss_usb_close(struct gnss_device *gdev)
drivers/gnss/usb.c
87
struct gnss_usb *gusb = gnss_get_drvdata(gdev);
drivers/gnss/usb.c
92
static int gnss_usb_write_raw(struct gnss_device *gdev,
drivers/gnss/usb.c
95
struct gnss_usb *gusb = gnss_get_drvdata(gdev);
drivers/gpio/gpiolib-acpi-core.c
140
struct gpio_device *gdev __free(gpio_device_put) =
drivers/gpio/gpiolib-acpi-core.c
142
if (!gdev)
drivers/gpio/gpiolib-acpi-core.c
149
return gpio_device_get_desc(gdev, pin);
drivers/gpio/gpiolib-cdev.c
1436
guard(srcu)(&lr->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
1438
if (!rcu_access_pointer(lr->gdev->chip))
drivers/gpio/gpiolib-cdev.c
1467
guard(srcu)(&lr->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
1469
if (!rcu_access_pointer(lr->gdev->chip))
drivers/gpio/gpiolib-cdev.c
1489
guard(srcu)(&lr->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
1491
if (!rcu_access_pointer(lr->gdev->chip))
drivers/gpio/gpiolib-cdev.c
1536
blocking_notifier_chain_unregister(&lr->gdev->device_notifier,
drivers/gpio/gpiolib-cdev.c
1547
gpio_device_put(lr->gdev);
drivers/gpio/gpiolib-cdev.c
1563
struct device *dev = &lr->gdev->dev;
drivers/gpio/gpiolib-cdev.c
1589
static int linereq_create(struct gpio_device *gdev, void __user *ip)
drivers/gpio/gpiolib-cdev.c
1618
lr->gdev = gpio_device_get(gdev);
drivers/gpio/gpiolib-cdev.c
1650
struct gpio_desc *desc = gpio_device_get_desc(gdev, offset);
drivers/gpio/gpiolib-cdev.c
1695
dev_dbg(&gdev->dev, "registered chardev handle for line %d\n",
drivers/gpio/gpiolib-cdev.c
1700
ret = blocking_notifier_chain_register(&gdev->device_notifier,
drivers/gpio/gpiolib-cdev.c
1731
dev_dbg(&gdev->dev, "registered chardev handle for %d lines\n",
drivers/gpio/gpiolib-cdev.c
1764
struct gpio_device *gdev;
drivers/gpio/gpiolib-cdev.c
1785
guard(srcu)(&le->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
1787
if (!rcu_access_pointer(le->gdev->chip))
drivers/gpio/gpiolib-cdev.c
1823
guard(srcu)(&le->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
1825
if (!rcu_access_pointer(le->gdev->chip))
drivers/gpio/gpiolib-cdev.c
1881
blocking_notifier_chain_unregister(&le->gdev->device_notifier,
drivers/gpio/gpiolib-cdev.c
1888
gpio_device_put(le->gdev);
drivers/gpio/gpiolib-cdev.c
1905
guard(srcu)(&le->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
1907
if (!rcu_access_pointer(le->gdev->chip))
drivers/gpio/gpiolib-cdev.c
2013
static int lineevent_create(struct gpio_device *gdev, void __user *ip)
drivers/gpio/gpiolib-cdev.c
2034
desc = gpio_device_get_desc(gdev, offset);
drivers/gpio/gpiolib-cdev.c
2060
le->gdev = gpio_device_get(gdev);
drivers/gpio/gpiolib-cdev.c
2105
ret = blocking_notifier_chain_register(&gdev->device_notifier,
drivers/gpio/gpiolib-cdev.c
214
guard(srcu)(&lh->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
216
if (!rcu_access_pointer(lh->gdev->chip))
drivers/gpio/gpiolib-cdev.c
2230
scoped_guard(srcu, &desc->gdev->desc_srcu) {
drivers/gpio/gpiolib-cdev.c
2300
struct gpio_device *gdev;
drivers/gpio/gpiolib-cdev.c
2314
struct gpio_device *gdev = cdev->gdev;
drivers/gpio/gpiolib-cdev.c
2319
strscpy(chipinfo.name, dev_name(&gdev->dev), sizeof(chipinfo.name));
drivers/gpio/gpiolib-cdev.c
2320
strscpy(chipinfo.label, gdev->label, sizeof(chipinfo.label));
drivers/gpio/gpiolib-cdev.c
2321
chipinfo.lines = gdev->ngpio;
drivers/gpio/gpiolib-cdev.c
2353
desc = gpio_device_get_desc(cdev->gdev, lineinfo.line_offset);
drivers/gpio/gpiolib-cdev.c
2390
desc = gpio_device_get_desc(cdev->gdev, lineinfo.offset);
drivers/gpio/gpiolib-cdev.c
2420
if (offset >= cdev->gdev->ngpio)
drivers/gpio/gpiolib-cdev.c
2435
struct gpio_device *gdev = cdev->gdev;
drivers/gpio/gpiolib-cdev.c
2438
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib-cdev.c
2441
if (!rcu_access_pointer(gdev->chip))
drivers/gpio/gpiolib-cdev.c
2450
return linehandle_create(gdev, ip);
drivers/gpio/gpiolib-cdev.c
2452
return lineevent_create(gdev, ip);
drivers/gpio/gpiolib-cdev.c
2463
return linereq_create(gdev, ip);
drivers/gpio/gpiolib-cdev.c
2482
struct gpio_device *gdev;
drivers/gpio/gpiolib-cdev.c
2500
scoped_guard(srcu, &ctx->gdev->srcu) {
drivers/gpio/gpiolib-cdev.c
2501
gc = srcu_dereference(ctx->gdev->chip, &ctx->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
2515
gpio_device_put(ctx->gdev);
drivers/gpio/gpiolib-cdev.c
2560
ctx->gdev = gpio_device_get(desc->gdev);
drivers/gpio/gpiolib-cdev.c
2564
queue_work(ctx->gdev->line_state_wq, &ctx->work);
drivers/gpio/gpiolib-cdev.c
2587
guard(srcu)(&cdev->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
2589
if (!rcu_access_pointer(cdev->gdev->chip))
drivers/gpio/gpiolib-cdev.c
2610
guard(srcu)(&cdev->gdev->srcu);
drivers/gpio/gpiolib-cdev.c
2612
if (!rcu_access_pointer(cdev->gdev->chip))
drivers/gpio/gpiolib-cdev.c
2687
struct gpio_device *gdev = container_of(inode->i_cdev,
drivers/gpio/gpiolib-cdev.c
2692
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib-cdev.c
2695
if (!rcu_access_pointer(gdev->chip))
drivers/gpio/gpiolib-cdev.c
2702
cdev->watched_lines = bitmap_zalloc(gdev->ngpio, GFP_KERNEL);
drivers/gpio/gpiolib-cdev.c
2708
cdev->gdev = gpio_device_get(gdev);
drivers/gpio/gpiolib-cdev.c
2711
scoped_guard(write_lock_irqsave, &gdev->line_state_lock)
drivers/gpio/gpiolib-cdev.c
2712
ret = raw_notifier_chain_register(&gdev->line_state_notifier,
drivers/gpio/gpiolib-cdev.c
2719
ret = blocking_notifier_chain_register(&gdev->device_notifier,
drivers/gpio/gpiolib-cdev.c
2734
blocking_notifier_chain_unregister(&gdev->device_notifier,
drivers/gpio/gpiolib-cdev.c
2737
scoped_guard(write_lock_irqsave, &gdev->line_state_lock)
drivers/gpio/gpiolib-cdev.c
2738
raw_notifier_chain_unregister(&gdev->line_state_notifier,
drivers/gpio/gpiolib-cdev.c
2741
gpio_device_put(gdev);
drivers/gpio/gpiolib-cdev.c
2759
struct gpio_device *gdev = cdev->gdev;
drivers/gpio/gpiolib-cdev.c
2761
blocking_notifier_chain_unregister(&gdev->device_notifier,
drivers/gpio/gpiolib-cdev.c
2763
scoped_guard(write_lock_irqsave, &gdev->line_state_lock)
drivers/gpio/gpiolib-cdev.c
2764
raw_notifier_chain_unregister(&gdev->line_state_notifier,
drivers/gpio/gpiolib-cdev.c
2767
gpio_device_put(gdev);
drivers/gpio/gpiolib-cdev.c
2785
int gpiolib_cdev_register(struct gpio_device *gdev, dev_t devt)
drivers/gpio/gpiolib-cdev.c
2790
cdev_init(&gdev->chrdev, &gpio_fileops);
drivers/gpio/gpiolib-cdev.c
2791
gdev->chrdev.owner = THIS_MODULE;
drivers/gpio/gpiolib-cdev.c
2792
gdev->dev.devt = MKDEV(MAJOR(devt), gdev->id);
drivers/gpio/gpiolib-cdev.c
2794
gdev->line_state_wq = alloc_ordered_workqueue("%s", WQ_HIGHPRI,
drivers/gpio/gpiolib-cdev.c
2795
dev_name(&gdev->dev));
drivers/gpio/gpiolib-cdev.c
2796
if (!gdev->line_state_wq)
drivers/gpio/gpiolib-cdev.c
2799
ret = cdev_device_add(&gdev->chrdev, &gdev->dev);
drivers/gpio/gpiolib-cdev.c
2801
destroy_workqueue(gdev->line_state_wq);
drivers/gpio/gpiolib-cdev.c
2805
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib-cdev.c
2806
gc = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib-cdev.c
2808
cdev_device_del(&gdev->chrdev, &gdev->dev);
drivers/gpio/gpiolib-cdev.c
2809
destroy_workqueue(gdev->line_state_wq);
drivers/gpio/gpiolib-cdev.c
281
gpio_device_put(lh->gdev);
drivers/gpio/gpiolib-cdev.c
2813
gpiochip_dbg(gc, "added GPIO chardev (%d:%d)\n", MAJOR(devt), gdev->id);
drivers/gpio/gpiolib-cdev.c
2818
void gpiolib_cdev_unregister(struct gpio_device *gdev)
drivers/gpio/gpiolib-cdev.c
2820
destroy_workqueue(gdev->line_state_wq);
drivers/gpio/gpiolib-cdev.c
2821
cdev_device_del(&gdev->chrdev, &gdev->dev);
drivers/gpio/gpiolib-cdev.c
2822
blocking_notifier_call_chain(&gdev->device_notifier, 0, NULL);
drivers/gpio/gpiolib-cdev.c
303
static int linehandle_create(struct gpio_device *gdev, void __user *ip)
drivers/gpio/gpiolib-cdev.c
324
lh->gdev = gpio_device_get(gdev);
drivers/gpio/gpiolib-cdev.c
340
struct gpio_desc *desc = gpio_device_get_desc(gdev, offset);
drivers/gpio/gpiolib-cdev.c
373
dev_dbg(&gdev->dev, "registered chardev handle for line %d\n",
drivers/gpio/gpiolib-cdev.c
390
dev_dbg(&gdev->dev, "registered chardev handle for %d lines\n",
drivers/gpio/gpiolib-cdev.c
501
struct gpio_device *gdev;
drivers/gpio/gpiolib-cdev.c
75
struct gpio_device *gdev;
drivers/gpio/gpiolib-cdev.h
10
int gpiolib_cdev_register(struct gpio_device *gdev, dev_t devt);
drivers/gpio/gpiolib-cdev.h
11
void gpiolib_cdev_unregister(struct gpio_device *gdev);
drivers/gpio/gpiolib-of.c
424
struct gpio_device *gdev __free(gpio_device_put) =
drivers/gpio/gpiolib-of.c
426
if (!gdev) {
drivers/gpio/gpiolib-of.c
431
desc = of_xlate_and_get_gpiod_flags(gpio_device_get_chip(gdev),
drivers/gpio/gpiolib-of.c
903
struct gpio_device *gdev __free(gpio_device_put) = NULL;
drivers/gpio/gpiolib-of.c
921
gdev = of_find_gpio_device_by_node(rd->dn->parent);
drivers/gpio/gpiolib-of.c
922
if (!gdev)
drivers/gpio/gpiolib-of.c
925
ret = of_gpiochip_add_hog(gpio_device_get_chip(gdev), rd->dn);
drivers/gpio/gpiolib-of.c
938
gdev = of_find_gpio_device_by_node(rd->dn->parent);
drivers/gpio/gpiolib-of.c
939
if (!gdev)
drivers/gpio/gpiolib-of.c
942
of_gpiochip_remove_hog(gpio_device_get_chip(gdev), rd->dn);
drivers/gpio/gpiolib-shared.c
311
static int gpio_shared_make_adev(struct gpio_device *gdev,
drivers/gpio/gpiolib-shared.c
324
adev->dev.parent = gdev->dev.parent;
drivers/gpio/gpiolib-shared.c
339
dev_name(&adev->dev), gpio_device_get_label(gdev));
drivers/gpio/gpiolib-shared.c
511
struct gpio_device *gdev = gc->gpiodev;
drivers/gpio/gpiolib-shared.c
519
if (gdev->dev.parent == &ref->adev.dev) {
drivers/gpio/gpiolib-shared.c
525
&gdev->descs[0].flags);
drivers/gpio/gpiolib-shared.c
536
if (!device_match_fwnode(&gdev->dev, entry->fwnode))
drivers/gpio/gpiolib-shared.c
563
desc = &gdev->descs[entry->offset];
drivers/gpio/gpiolib-shared.c
576
entry->offset, gpio_device_get_label(gdev));
drivers/gpio/gpiolib-shared.c
584
ret = gpio_shared_make_adev(gdev, entry, ref);
drivers/gpio/gpiolib-shared.c
595
void gpio_device_teardown_shared(struct gpio_device *gdev)
drivers/gpio/gpiolib-shared.c
603
if (!device_match_fwnode(&gdev->dev, entry->fwnode))
drivers/gpio/gpiolib-shared.c
606
gpiod_free_commit(&gdev->descs[entry->offset]);
drivers/gpio/gpiolib-shared.c
632
gpio_device_put(shared_desc->desc->gdev);
drivers/gpio/gpiolib-shared.c
650
struct gpio_device *gdev;
drivers/gpio/gpiolib-shared.c
658
gdev = gpio_device_find_by_fwnode(entry->fwnode);
drivers/gpio/gpiolib-shared.c
659
if (!gdev) {
drivers/gpio/gpiolib-shared.c
664
shared_desc->desc = &gdev->descs[entry->offset];
drivers/gpio/gpiolib-shared.c
700
gpio_device_get_label(shared_desc->desc->gdev));
drivers/gpio/gpiolib-shared.h
19
void gpio_device_teardown_shared(struct gpio_device *gdev);
drivers/gpio/gpiolib-shared.h
31
static inline void gpio_device_teardown_shared(struct gpio_device *gdev) { }
drivers/gpio/gpiolib-swnode.c
103
struct gpio_device *gdev __free(gpio_device_put) =
drivers/gpio/gpiolib-swnode.c
106
if (IS_ERR(gdev))
drivers/gpio/gpiolib-swnode.c
107
return ERR_CAST(gdev);
drivers/gpio/gpiolib-swnode.c
113
desc = gpio_device_get_desc(gdev, args.args[0]);
drivers/gpio/gpiolib-swnode.c
29
struct gpio_device *gdev;
drivers/gpio/gpiolib-swnode.c
44
gdev = gpio_device_find_by_fwnode(fwnode);
drivers/gpio/gpiolib-swnode.c
45
if (!gdev && gdev_node && gdev_node->name)
drivers/gpio/gpiolib-swnode.c
62
gdev = gpio_device_find_by_label(gdev_node->name);
drivers/gpio/gpiolib-swnode.c
64
return gdev ?: ERR_PTR(-EPROBE_DEFER);
drivers/gpio/gpiolib-sysfs.c
1002
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib-sysfs.c
1004
chip = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib-sysfs.c
1015
parent = &gdev->dev;
drivers/gpio/gpiolib-sysfs.c
1021
data->gdev = gdev;
drivers/gpio/gpiolib-sysfs.c
1043
"chip%d", gdev->id);
drivers/gpio/gpiolib-sysfs.c
1056
void gpiochip_sysfs_unregister(struct gpio_device *gdev)
drivers/gpio/gpiolib-sysfs.c
1064
data = gdev_get_data(gdev);
drivers/gpio/gpiolib-sysfs.c
1068
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib-sysfs.c
1069
chip = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib-sysfs.c
1093
struct gpio_device *gdev = gc->gpiodev;
drivers/gpio/gpiolib-sysfs.c
1096
ret = gpiochip_sysfs_register(gdev);
drivers/gpio/gpiolib-sysfs.c
450
return sysfs_emit(buf, "%u\n", data->gdev->base);
drivers/gpio/gpiolib-sysfs.c
460
return sysfs_emit(buf, "%s\n", data->gdev->label);
drivers/gpio/gpiolib-sysfs.c
469
return sysfs_emit(buf, "%u\n", data->gdev->ngpio);
drivers/gpio/gpiolib-sysfs.c
537
struct gpio_device *gdev = data->gdev;
drivers/gpio/gpiolib-sysfs.c
546
desc = gpio_device_get_desc(gdev, gpio);
drivers/gpio/gpiolib-sysfs.c
674
const struct gpio_device *gdev = desc;
drivers/gpio/gpiolib-sysfs.c
676
return data && data->gdev == gdev;
drivers/gpio/gpiolib-sysfs.c
680
gdev_get_data(struct gpio_device *gdev) __must_hold(&sysfs_lock)
drivers/gpio/gpiolib-sysfs.c
688
NULL, gdev,
drivers/gpio/gpiolib-sysfs.c
732
struct gpio_device *gdev;
drivers/gpio/gpiolib-sysfs.c
754
gdev = desc->gdev;
drivers/gpio/gpiolib-sysfs.c
801
desc_data->dev = device_create_with_groups(&gpio_class, &gdev->dev,
drivers/gpio/gpiolib-sysfs.c
819
gdev_data = gdev_get_data(gdev);
drivers/gpio/gpiolib-sysfs.c
90
struct gpio_device *gdev;
drivers/gpio/gpiolib-sysfs.c
926
struct gpio_device *gdev;
drivers/gpio/gpiolib-sysfs.c
931
gdev = gpiod_to_gpio_device(desc);
drivers/gpio/gpiolib-sysfs.c
932
gdev_data = gdev_get_data(gdev);
drivers/gpio/gpiolib-sysfs.c
986
int gpiochip_sysfs_register(struct gpio_device *gdev)
drivers/gpio/gpiolib-sysfs.h
10
int gpiochip_sysfs_register(struct gpio_device *gdev);
drivers/gpio/gpiolib-sysfs.h
11
void gpiochip_sysfs_unregister(struct gpio_device *gdev);
drivers/gpio/gpiolib-sysfs.h
15
static inline int gpiochip_sysfs_register(struct gpio_device *gdev)
drivers/gpio/gpiolib-sysfs.h
20
static inline void gpiochip_sysfs_unregister(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
1049
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
1054
gdev = kzalloc(sizeof(*gdev), GFP_KERNEL);
drivers/gpio/gpiolib.c
1055
if (!gdev)
drivers/gpio/gpiolib.c
1057
gc->gpiodev = gdev;
drivers/gpio/gpiolib.c
1063
gdev->id = ret;
drivers/gpio/gpiolib.c
1065
ret = init_srcu_struct(&gdev->srcu);
drivers/gpio/gpiolib.c
1068
rcu_assign_pointer(gdev->chip, gc);
drivers/gpio/gpiolib.c
1070
ret = init_srcu_struct(&gdev->desc_srcu);
drivers/gpio/gpiolib.c
1074
ret = dev_set_name(&gdev->dev, GPIOCHIP_NAME "%d", gdev->id);
drivers/gpio/gpiolib.c
1078
device_initialize(&gdev->dev);
drivers/gpio/gpiolib.c
1084
gdev->dev.type = &gpio_dev_type;
drivers/gpio/gpiolib.c
1085
gdev->dev.bus = &gpio_bus_type;
drivers/gpio/gpiolib.c
1086
gdev->dev.parent = gc->parent;
drivers/gpio/gpiolib.c
1087
device_set_node(&gdev->dev, gpiochip_choose_fwnode(gc));
drivers/gpio/gpiolib.c
1089
ret = gpiochip_get_ngpios(gc, &gdev->dev);
drivers/gpio/gpiolib.c
1092
gdev->ngpio = gc->ngpio;
drivers/gpio/gpiolib.c
1094
gdev->descs = kcalloc(gc->ngpio, sizeof(*gdev->descs), GFP_KERNEL);
drivers/gpio/gpiolib.c
1095
if (!gdev->descs) {
drivers/gpio/gpiolib.c
1100
gdev->label = kstrdup_const(gc->label ?: "unknown", GFP_KERNEL);
drivers/gpio/gpiolib.c
1101
if (!gdev->label) {
drivers/gpio/gpiolib.c
1106
gdev->can_sleep = gc->can_sleep;
drivers/gpio/gpiolib.c
1107
rwlock_init(&gdev->line_state_lock);
drivers/gpio/gpiolib.c
1108
RAW_INIT_NOTIFIER_HEAD(&gdev->line_state_notifier);
drivers/gpio/gpiolib.c
1109
BLOCKING_INIT_NOTIFIER_HEAD(&gdev->device_notifier);
drivers/gpio/gpiolib.c
1111
INIT_LIST_HEAD(&gdev->pin_ranges);
drivers/gpio/gpiolib.c
1114
gdev->owner = gc->parent->driver->owner;
drivers/gpio/gpiolib.c
1117
gdev->owner = gc->owner;
drivers/gpio/gpiolib.c
1119
gdev->owner = THIS_MODULE;
drivers/gpio/gpiolib.c
1146
dev_warn(&gdev->dev,
drivers/gpio/gpiolib.c
1150
gdev->base = base;
drivers/gpio/gpiolib.c
1152
ret = gpiodev_add_to_list_unlocked(gdev);
drivers/gpio/gpiolib.c
1171
struct gpio_desc *desc = &gdev->descs[desc_index];
drivers/gpio/gpiolib.c
1173
desc->gdev = gdev;
drivers/gpio/gpiolib.c
1227
ret = gpiochip_setup_dev(gdev);
drivers/gpio/gpiolib.c
1235
gpio_device_teardown_shared(gdev);
drivers/gpio/gpiolib.c
1250
list_del_rcu(&gdev->list);
drivers/gpio/gpiolib.c
1253
gpio_device_put(gdev);
drivers/gpio/gpiolib.c
1257
cleanup_srcu_struct(&gdev->desc_srcu);
drivers/gpio/gpiolib.c
1259
cleanup_srcu_struct(&gdev->srcu);
drivers/gpio/gpiolib.c
1261
ida_free(&gpio_ida, gdev->id);
drivers/gpio/gpiolib.c
1263
kfree(gdev);
drivers/gpio/gpiolib.c
128
label = srcu_dereference_check(desc->label, &desc->gdev->desc_srcu,
drivers/gpio/gpiolib.c
1284
struct gpio_device *gdev = gc->gpiodev;
drivers/gpio/gpiolib.c
1287
gpiochip_sysfs_unregister(gdev);
drivers/gpio/gpiolib.c
129
srcu_read_lock_held(&desc->gdev->desc_srcu));
drivers/gpio/gpiolib.c
1292
list_del_rcu(&gdev->list);
drivers/gpio/gpiolib.c
1296
rcu_assign_pointer(gdev->chip, NULL);
drivers/gpio/gpiolib.c
1297
synchronize_srcu(&gdev->srcu);
drivers/gpio/gpiolib.c
1298
gpio_device_teardown_shared(gdev);
drivers/gpio/gpiolib.c
1316
gcdev_unregister(gdev);
drivers/gpio/gpiolib.c
1317
gpio_device_put(gdev);
drivers/gpio/gpiolib.c
1346
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
1353
list_for_each_entry_srcu(gdev, &gpio_devices, list,
drivers/gpio/gpiolib.c
1355
if (!device_is_registered(&gdev->dev))
drivers/gpio/gpiolib.c
1358
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib.c
1360
gc = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib.c
1363
return gpio_device_get(gdev);
drivers/gpio/gpiolib.c
1417
struct gpio_device *gpio_device_get(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
1419
return to_gpio_device(get_device(&gdev->dev));
drivers/gpio/gpiolib.c
1428
void gpio_device_put(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
1430
put_device(&gdev->dev);
drivers/gpio/gpiolib.c
1445
struct device *gpio_device_to_device(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
1447
return &gdev->dev;
drivers/gpio/gpiolib.c
159
call_srcu(&desc->gdev->desc_srcu, &old->rh, desc_free_label);
drivers/gpio/gpiolib.c
174
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
177
list_for_each_entry_srcu(gdev, &gpio_devices, list,
drivers/gpio/gpiolib.c
179
if (gdev->base <= gpio &&
drivers/gpio/gpiolib.c
180
gdev->base + gdev->ngpio > gpio)
drivers/gpio/gpiolib.c
181
return &gdev->descs[gpio - gdev->base];
drivers/gpio/gpiolib.c
213
gpio_device_get_desc(struct gpio_device *gdev, unsigned int hwnum)
drivers/gpio/gpiolib.c
215
if (hwnum >= gdev->ngpio)
drivers/gpio/gpiolib.c
218
return &gdev->descs[array_index_nospec(hwnum, gdev->ngpio)];
drivers/gpio/gpiolib.c
2327
struct gpio_device *gdev = gc->gpiodev;
drivers/gpio/gpiolib.c
2338
pin_range->range.base = gdev->base + gpio_offset;
drivers/gpio/gpiolib.c
234
return desc->gdev->base + (desc - &desc->gdev->descs[0]);
drivers/gpio/gpiolib.c
2355
list_add_tail(&pin_range->node, &gdev->pin_ranges);
drivers/gpio/gpiolib.c
2388
struct gpio_device *gdev = gc->gpiodev;
drivers/gpio/gpiolib.c
2399
pin_range->range.base = gdev->base + gpio_offset;
drivers/gpio/gpiolib.c
2420
list_add_tail(&pin_range->node, &gdev->pin_ranges);
drivers/gpio/gpiolib.c
2433
struct gpio_device *gdev = gc->gpiodev;
drivers/gpio/gpiolib.c
2435
list_for_each_entry_safe(pin_range, tmp, &gdev->pin_ranges, node) {
drivers/gpio/gpiolib.c
248
return desc - &desc->gdev->descs[0];
drivers/gpio/gpiolib.c
2500
if (try_module_get(desc->gdev->owner)) {
drivers/gpio/gpiolib.c
2503
module_put(desc->gdev->owner);
drivers/gpio/gpiolib.c
2505
gpio_device_get(desc->gdev);
drivers/gpio/gpiolib.c
2555
module_put(desc->gdev->owner);
drivers/gpio/gpiolib.c
2556
gpio_device_put(desc->gdev);
drivers/gpio/gpiolib.c
2583
guard(srcu)(&desc->gdev->desc_srcu);
drivers/gpio/gpiolib.c
269
return gpio_device_get_chip(desc->gdev);
drivers/gpio/gpiolib.c
2716
struct device *dev = &desc->gdev->dev;
drivers/gpio/gpiolib.c
290
return desc->gdev;
drivers/gpio/gpiolib.c
301
int gpio_device_get_base(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
303
return gdev->base;
drivers/gpio/gpiolib.c
315
const char *gpio_device_get_label(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
317
return gdev->label;
drivers/gpio/gpiolib.c
3306
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
3311
gdev = desc->gdev;
drivers/gpio/gpiolib.c
3313
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib.c
3315
gc = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib.c
3354
static bool gpio_device_chip_cmp(struct gpio_device *gdev, struct gpio_chip *gc)
drivers/gpio/gpiolib.c
3356
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib.c
3358
return gc == srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib.c
337
struct gpio_chip *gpio_device_get_chip(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
3379
WARN_ON(array_info->gdev->can_sleep);
drivers/gpio/gpiolib.c
3381
guard(srcu)(&array_info->gdev->srcu);
drivers/gpio/gpiolib.c
3382
gc = srcu_dereference(array_info->gdev->chip,
drivers/gpio/gpiolib.c
3383
&array_info->gdev->srcu);
drivers/gpio/gpiolib.c
339
return rcu_dereference_check(gdev->chip, 1);
drivers/gpio/gpiolib.c
3448
gpio_device_chip_cmp(desc_array[i]->gdev, guard.gc));
drivers/gpio/gpiolib.c
347
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
349
list_for_each_entry_srcu(gdev, &gpio_devices, list,
drivers/gpio/gpiolib.c
3498
WARN_ON(desc->gdev->can_sleep);
drivers/gpio/gpiolib.c
352
if (gdev->base >= base + ngpio)
drivers/gpio/gpiolib.c
3520
WARN_ON(desc->gdev->can_sleep);
drivers/gpio/gpiolib.c
355
base = gdev->base + gdev->ngpio;
drivers/gpio/gpiolib.c
3718
WARN_ON(array_info->gdev->can_sleep);
drivers/gpio/gpiolib.c
3726
guard(srcu)(&array_info->gdev->srcu);
drivers/gpio/gpiolib.c
3727
gc = srcu_dereference(array_info->gdev->chip,
drivers/gpio/gpiolib.c
3728
&array_info->gdev->srcu);
drivers/gpio/gpiolib.c
3817
gpio_device_chip_cmp(desc_array[i]->gdev, guard.gc));
drivers/gpio/gpiolib.c
3851
WARN_ON(desc->gdev->can_sleep);
drivers/gpio/gpiolib.c
3899
WARN_ON(desc->gdev->can_sleep);
drivers/gpio/gpiolib.c
3971
return desc->gdev->can_sleep;
drivers/gpio/gpiolib.c
4026
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
4035
gdev = desc->gdev;
drivers/gpio/gpiolib.c
4037
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib.c
4038
gc = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib.c
4441
guard(read_lock_irqsave)(&desc->gdev->line_state_lock);
drivers/gpio/gpiolib.c
4443
raw_notifier_call_chain(&desc->gdev->line_state_notifier, action, desc);
drivers/gpio/gpiolib.c
4489
struct gpio_device *gdev __free(gpio_device_put) =
drivers/gpio/gpiolib.c
4491
if (gdev)
drivers/gpio/gpiolib.c
4492
gpiochip_machine_hog(gpio_device_get_chip(gdev), hog);
drivers/gpio/gpiolib.c
4565
struct gpio_device *gdev __free(gpio_device_put) =
drivers/gpio/gpiolib.c
4567
if (!gdev) {
drivers/gpio/gpiolib.c
4580
gc = gpio_device_get_chip(gdev);
drivers/gpio/gpiolib.c
4590
desc = gpio_device_get_desc(gdev, p->chip_hwnum);
drivers/gpio/gpiolib.c
495
static int gpiodev_add_to_list_unlocked(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
503
list_add_tail_rcu(&gdev->list, &gpio_devices);
drivers/gpio/gpiolib.c
5032
struct gpio_device *gdev = desc->gdev;
drivers/gpio/gpiolib.c
5052
name, gdev->label, hwnum, ret);
drivers/gpio/gpiolib.c
508
if (gdev->base + gdev->ngpio <= next->base) {
drivers/gpio/gpiolib.c
5096
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
510
list_add_rcu(&gdev->list, &gpio_devices);
drivers/gpio/gpiolib.c
5120
gdev = gpiod_to_gpio_device(desc);
drivers/gpio/gpiolib.c
5128
bitmap_size = BITS_TO_LONGS(gdev->ngpio > count ?
drivers/gpio/gpiolib.c
5129
gdev->ngpio : count);
drivers/gpio/gpiolib.c
5149
array_info->gdev = gdev;
drivers/gpio/gpiolib.c
515
if (prev->base + prev->ngpio <= gdev->base) {
drivers/gpio/gpiolib.c
5162
if (array_info->gdev != gdev) {
drivers/gpio/gpiolib.c
517
list_add_tail_rcu(&gdev->list, &gpio_devices);
drivers/gpio/gpiolib.c
5200
array_info->gdev->label, array_info->size,
drivers/gpio/gpiolib.c
527
if (prev->base + prev->ngpio <= gdev->base
drivers/gpio/gpiolib.c
528
&& gdev->base + gdev->ngpio <= next->base) {
drivers/gpio/gpiolib.c
529
list_add_rcu(&gdev->list, &prev->list);
drivers/gpio/gpiolib.c
5320
static void gpiolib_dbg_show(struct seq_file *s, struct gpio_device *gdev)
drivers/gpio/gpiolib.c
5329
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib.c
5331
gc = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib.c
5338
guard(srcu)(&desc->gdev->desc_srcu);
drivers/gpio/gpiolib.c
5368
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
5382
list_for_each_entry_srcu(gdev, &gpio_devices, list,
drivers/gpio/gpiolib.c
5385
return gdev;
drivers/gpio/gpiolib.c
5394
struct gpio_device *gdev = v, *next;
drivers/gpio/gpiolib.c
5396
next = list_entry_rcu(gdev->list.next, struct gpio_device, list);
drivers/gpio/gpiolib.c
5397
gdev = &next->list == &gpio_devices ? NULL : next;
drivers/gpio/gpiolib.c
5401
return gdev;
drivers/gpio/gpiolib.c
5419
struct gpio_device *gdev = v;
drivers/gpio/gpiolib.c
5426
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib.c
5428
gc = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib.c
5430
seq_printf(s, "%s: (dangling chip)\n", dev_name(&gdev->dev));
drivers/gpio/gpiolib.c
5434
seq_printf(s, "%s: %u GPIOs", dev_name(&gdev->dev), gdev->ngpio);
drivers/gpio/gpiolib.c
5449
gpiolib_dbg_show(s, gdev);
drivers/gpio/gpiolib.c
547
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
556
list_for_each_entry_srcu(gdev, &gpio_devices, list,
drivers/gpio/gpiolib.c
558
guard(srcu)(&gdev->srcu);
drivers/gpio/gpiolib.c
560
gc = srcu_dereference(gdev->chip, &gdev->srcu);
drivers/gpio/gpiolib.c
583
struct gpio_device *gdev = gc->gpiodev;
drivers/gpio/gpiolib.c
592
dev_warn(&gdev->dev,
drivers/gpio/gpiolib.c
599
gdev->descs[i].name = gc->names[i];
drivers/gpio/gpiolib.c
613
struct gpio_device *gdev = chip->gpiodev;
drivers/gpio/gpiolib.c
614
struct device *dev = &gdev->dev;
drivers/gpio/gpiolib.c
671
gdev->descs[i].name = names[chip->offset + i];
drivers/gpio/gpiolib.c
865
struct gpio_device *gdev = to_gpio_device(dev);
drivers/gpio/gpiolib.c
868
synchronize_srcu(&gdev->desc_srcu);
drivers/gpio/gpiolib.c
869
cleanup_srcu_struct(&gdev->desc_srcu);
drivers/gpio/gpiolib.c
871
ida_free(&gpio_ida, gdev->id);
drivers/gpio/gpiolib.c
872
kfree_const(gdev->label);
drivers/gpio/gpiolib.c
873
kfree(gdev->descs);
drivers/gpio/gpiolib.c
874
cleanup_srcu_struct(&gdev->srcu);
drivers/gpio/gpiolib.c
875
kfree(gdev);
drivers/gpio/gpiolib.c
884
#define gcdev_register(gdev, devt) gpiolib_cdev_register((gdev), (devt))
drivers/gpio/gpiolib.c
885
#define gcdev_unregister(gdev) gpiolib_cdev_unregister((gdev))
drivers/gpio/gpiolib.c
891
#define gcdev_register(gdev, devt) device_add(&(gdev)->dev)
drivers/gpio/gpiolib.c
892
#define gcdev_unregister(gdev) device_del(&(gdev)->dev)
drivers/gpio/gpiolib.c
899
static int gpiochip_setup_dev(struct gpio_device *gdev)
drivers/gpio/gpiolib.c
901
struct fwnode_handle *fwnode = dev_fwnode(&gdev->dev);
drivers/gpio/gpiolib.c
911
ret = gcdev_register(gdev, gpio_devt);
drivers/gpio/gpiolib.c
915
ret = gpiochip_sysfs_register(gdev);
drivers/gpio/gpiolib.c
919
dev_dbg(&gdev->dev, "registered GPIOs %u to %u on %s\n", gdev->base,
drivers/gpio/gpiolib.c
920
gdev->base + gdev->ngpio - 1, gdev->label);
drivers/gpio/gpiolib.c
925
gcdev_unregister(gdev);
drivers/gpio/gpiolib.c
961
struct gpio_device *gdev;
drivers/gpio/gpiolib.c
966
list_for_each_entry_srcu(gdev, &gpio_devices, list,
drivers/gpio/gpiolib.c
968
ret = gpiochip_setup_dev(gdev);
drivers/gpio/gpiolib.c
970
gpio_device_put(gdev);
drivers/gpio/gpiolib.c
971
dev_err(&gdev->dev,
drivers/gpio/gpiolib.h
132
struct gpio_device *gdev;
drivers/gpio/gpiolib.h
186
struct gpio_device *gdev;
drivers/gpio/gpiolib.h
226
struct gpio_device *gdev;
drivers/gpio/gpiolib.h
233
srcu_read_unlock(&_T.gdev->srcu, _T.idx),
drivers/gpio/gpiolib.h
237
_guard.gdev = desc->gdev;
drivers/gpio/gpiolib.h
238
_guard.idx = srcu_read_lock(&_guard.gdev->srcu);
drivers/gpio/gpiolib.h
239
_guard.gc = srcu_dereference(_guard.gdev->chip,
drivers/gpio/gpiolib.h
240
&_guard.gdev->srcu);
drivers/gpio/gpiolib.h
284
scoped_guard(srcu, &desc->gdev->desc_srcu) { \
drivers/hte/hte-tegra194.c
135
struct gpio_device *gdev;
drivers/hte/hte-tegra194.c
424
line_id = desc->attr.line_id - gpio_device_get_base(gs->gdev);
drivers/hte/hte-tegra194.c
651
return hte_dev->gdev == gpiod_to_gpio_device(hdesc->attr.line_data);
drivers/hte/hte-tegra194.c
681
struct gpio_device *gdev = data;
drivers/hte/hte-tegra194.c
683
gpio_device_put(gdev);
drivers/hte/hte-tegra194.c
761
hte_dev->gdev =
drivers/hte/hte-tegra194.c
773
hte_dev->gdev =
drivers/hte/hte-tegra194.c
778
if (!hte_dev->gdev)
drivers/hte/hte-tegra194.c
783
hte_dev->gdev);
drivers/hte/hte.c
105
static void hte_chip_dbgfs_init(struct hte_device *gdev)
drivers/hte/hte.c
107
const struct hte_chip *chip = gdev->chip;
drivers/hte/hte.c
110
gdev->dbg_root = debugfs_create_dir(name, hte_root);
drivers/hte/hte.c
112
debugfs_create_atomic_t("ts_requested", 0444, gdev->dbg_root,
drivers/hte/hte.c
113
&gdev->ts_req);
drivers/hte/hte.c
114
debugfs_create_u32("total_ts", 0444, gdev->dbg_root,
drivers/hte/hte.c
115
&gdev->nlines);
drivers/hte/hte.c
120
if (!ei->gdev->dbg_root || !name)
drivers/hte/hte.c
123
ei->ts_dbg_root = debugfs_create_dir(name, ei->gdev->dbg_root);
drivers/hte/hte.c
131
static void hte_chip_dbgfs_init(struct hte_device *gdev)
drivers/hte/hte.c
154
struct hte_device *gdev;
drivers/hte/hte.c
162
if (!ei || !ei->gdev)
drivers/hte/hte.c
165
gdev = ei->gdev;
drivers/hte/hte.c
171
dev_info(gdev->sdev, "id:%d is not requested\n",
drivers/hte/hte.c
179
dev_info(gdev->sdev, "id:%d is registered but not requested\n",
drivers/hte/hte.c
193
ret = gdev->chip->ops->release(gdev->chip, desc, ei->xlated_id);
drivers/hte/hte.c
195
dev_err(gdev->sdev, "id: %d free failed\n",
drivers/hte/hte.c
214
atomic_dec(&gdev->ts_req);
drivers/hte/hte.c
228
module_put(gdev->owner);
drivers/hte/hte.c
231
dev_dbg(gdev->sdev, "release id: %d\n", desc->attr.line_id);
drivers/hte/hte.c
240
struct hte_device *gdev;
drivers/hte/hte.c
250
if (!ei || !ei->gdev)
drivers/hte/hte.c
253
gdev = ei->gdev;
drivers/hte/hte.c
259
dev_dbg(gdev->sdev, "id:%d is not registered", ts_id);
drivers/hte/hte.c
273
ret = gdev->chip->ops->enable(gdev->chip, ei->xlated_id);
drivers/hte/hte.c
275
dev_warn(gdev->sdev, "id: %d enable failed\n",
drivers/hte/hte.c
289
ret = gdev->chip->ops->disable(gdev->chip, ei->xlated_id);
drivers/hte/hte.c
291
dev_warn(gdev->sdev, "id: %d disable failed\n",
drivers/hte/hte.c
356
struct hte_device *gdev;
drivers/hte/hte.c
359
gdev = ei->gdev;
drivers/hte/hte.c
368
dev_dbg(gdev->chip->dev, "id:%u req failed\n",
drivers/hte/hte.c
379
ret = gdev->chip->ops->request(gdev->chip, desc, ei->xlated_id);
drivers/hte/hte.c
381
dev_err(gdev->chip->dev, "ts request failed\n");
drivers/hte/hte.c
388
atomic_inc(&gdev->ts_req);
drivers/hte/hte.c
399
dev_dbg(gdev->chip->dev, "id: %u, xlated id:%u",
drivers/hte/hte.c
418
dev_dbg(ei->gdev->chip->dev, "id:%u is already requested\n",
drivers/hte/hte.c
436
struct hte_device *gdev;
drivers/hte/hte.c
440
list_for_each_entry(gdev, &hte_devices, list)
drivers/hte/hte.c
441
if (gdev->chip && gdev->chip->dev &&
drivers/hte/hte.c
442
device_match_of_node(gdev->chip->dev, np)) {
drivers/hte/hte.c
444
return gdev;
drivers/hte/hte.c
454
struct hte_device *gdev;
drivers/hte/hte.c
458
list_for_each_entry(gdev, &hte_devices, list)
drivers/hte/hte.c
459
if (gdev->chip && gdev->chip->match_from_linedata) {
drivers/hte/hte.c
460
if (!gdev->chip->match_from_linedata(gdev->chip, desc))
drivers/hte/hte.c
463
return gdev;
drivers/hte/hte.c
564
struct hte_device *gdev;
drivers/hte/hte.c
578
gdev = hte_of_get_dev(dev, desc, index, &args, &free_name);
drivers/hte/hte.c
580
gdev = hte_get_dev(desc);
drivers/hte/hte.c
582
if (IS_ERR(gdev)) {
drivers/hte/hte.c
584
return PTR_ERR(gdev);
drivers/hte/hte.c
587
if (!try_module_get(gdev->owner))
drivers/hte/hte.c
590
if (!gdev->chip) {
drivers/hte/hte.c
598
if (!gdev->chip->xlate_of)
drivers/hte/hte.c
601
ret = gdev->chip->xlate_of(gdev->chip, &args,
drivers/hte/hte.c
604
if (!gdev->chip->xlate_plat)
drivers/hte/hte.c
607
ret = gdev->chip->xlate_plat(gdev->chip, desc,
drivers/hte/hte.c
614
ei = &gdev->ei[xlated_id];
drivers/hte/hte.c
625
module_put(gdev->owner);
drivers/hte/hte.c
66
struct hte_device *gdev;
drivers/hte/hte.c
661
if (!ei || !ei->gdev)
drivers/hte/hte.c
666
dev_err(ei->gdev->chip->dev,
drivers/hte/hte.c
775
if (!ei->gdev || !ei->gdev->chip)
drivers/hte/hte.c
778
chip = ei->gdev->chip;
drivers/hte/hte.c
806
if (!chip || !data || !chip->gdev)
drivers/hte/hte.c
812
ei = &chip->gdev->ei[xlated_id];
drivers/hte/hte.c
842
struct hte_device *gdev;
drivers/hte/hte.c
853
gdev = kzalloc_flex(*gdev, ei, chip->nlines);
drivers/hte/hte.c
854
if (!gdev)
drivers/hte/hte.c
857
gdev->chip = chip;
drivers/hte/hte.c
858
chip->gdev = gdev;
drivers/hte/hte.c
859
gdev->nlines = chip->nlines;
drivers/hte/hte.c
860
gdev->sdev = chip->dev;
drivers/hte/hte.c
863
gdev->ei[i].gdev = gdev;
drivers/hte/hte.c
864
mutex_init(&gdev->ei[i].req_mlock);
drivers/hte/hte.c
865
spin_lock_init(&gdev->ei[i].slock);
drivers/hte/hte.c
869
gdev->owner = chip->dev->driver->owner;
drivers/hte/hte.c
871
gdev->owner = THIS_MODULE;
drivers/hte/hte.c
875
INIT_LIST_HEAD(&gdev->list);
drivers/hte/hte.c
878
list_add_tail(&gdev->list, &hte_devices);
drivers/hte/hte.c
881
hte_chip_dbgfs_init(gdev);
drivers/hte/hte.c
890
struct hte_device *gdev;
drivers/hte/hte.c
895
gdev = chip->gdev;
drivers/hte/hte.c
898
list_del(&gdev->list);
drivers/hte/hte.c
901
gdev->chip = NULL;
drivers/hte/hte.c
904
debugfs_remove_recursive(gdev->dbg_root);
drivers/hte/hte.c
905
kfree(gdev);
drivers/i2c/muxes/i2c-mux-gpio.c
185
struct gpio_device *gdev;
drivers/i2c/muxes/i2c-mux-gpio.c
205
gdev = gpiod_to_gpio_device(gpiod);
drivers/i2c/muxes/i2c-mux-gpio.c
206
dev = gpio_device_to_device(gdev);
drivers/iommu/iommu.c
1310
struct group_device *gdev;
drivers/iommu/iommu.c
1312
gdev = iommu_group_alloc_device(group, dev);
drivers/iommu/iommu.c
1313
if (IS_ERR(gdev))
drivers/iommu/iommu.c
1314
return PTR_ERR(gdev);
drivers/iommu/iommu.c
1320
list_add_tail(&gdev->list, &group->devices);
drivers/iommu/iommu.c
1862
struct group_device *gdev;
drivers/iommu/iommu.c
1879
for_each_group_device(group, gdev) {
drivers/iommu/iommu.c
1880
driver_type = iommu_get_def_domain_type(group, gdev->dev,
drivers/iommu/iommu.c
1883
if (dev_is_pci(gdev->dev) && to_pci_dev(gdev->dev)->untrusted) {
drivers/iommu/iommu.c
1890
untrusted = gdev->dev;
drivers/iommu/iommu.c
1944
struct group_device *gdev;
drivers/iommu/iommu.c
1961
for_each_group_device(group, gdev)
drivers/iommu/iommu.c
1962
iommu_setup_dma_ops(gdev->dev, group->default_domain);
drivers/iommu/iommu.c
1971
for_each_group_device(group, gdev)
drivers/iommu/iommu.c
1972
iommu_group_do_probe_finalize(gdev->dev);
drivers/iommu/iommu.c
2430
struct group_device *gdev;
drivers/iommu/iommu.c
2456
for_each_group_device(group, gdev) {
drivers/iommu/iommu.c
2457
ret = __iommu_device_set_domain(group, gdev->dev, new_domain,
drivers/iommu/iommu.c
2481
last_gdev = gdev;
drivers/iommu/iommu.c
2482
for_each_group_device(group, gdev) {
drivers/iommu/iommu.c
2484
if (gdev == last_gdev)
drivers/iommu/iommu.c
2493
group, gdev->dev, group->domain, new_domain,
drivers/iommu/iommu.c
3079
struct group_device *gdev;
drivers/iommu/iommu.c
3112
for_each_group_device(group, gdev) {
drivers/iommu/iommu.c
3113
if (iommu_create_device_direct_mappings(dom, gdev->dev)) {
drivers/iommu/iommu.c
3116
gdev->dev->iommu->iommu_dev->dev,
drivers/iommu/iommu.c
3147
for_each_group_device(group, gdev) {
drivers/iommu/iommu.c
3148
ret = iommu_create_device_direct_mappings(dom, gdev->dev);
drivers/iommu/iommu.c
3183
struct group_device *gdev;
drivers/iommu/iommu.c
3227
for_each_group_device(group, gdev)
drivers/iommu/iommu.c
3228
iommu_setup_dma_ops(gdev->dev, group->default_domain);
drivers/iommu/iommu.c
609
struct group_device *gdev;
drivers/iommu/iommu.c
636
gdev = iommu_group_alloc_device(group, dev);
drivers/iommu/iommu.c
638
if (IS_ERR(gdev)) {
drivers/iommu/iommu.c
639
ret = PTR_ERR(gdev);
drivers/iommu/iommu.c
647
list_add_tail(&gdev->list, &group->devices);
drivers/iommu/iommu.c
678
list_del(&gdev->list);
drivers/iommu/iommu.c
679
__iommu_group_free_device(group, gdev);
drivers/net/ethernet/intel/ice/ice_gnss.c
206
static int ice_gnss_open(struct gnss_device *gdev)
drivers/net/ethernet/intel/ice/ice_gnss.c
208
struct ice_pf *pf = gnss_get_drvdata(gdev);
drivers/net/ethernet/intel/ice/ice_gnss.c
232
static void ice_gnss_close(struct gnss_device *gdev)
drivers/net/ethernet/intel/ice/ice_gnss.c
234
struct ice_pf *pf = gnss_get_drvdata(gdev);
drivers/net/ethernet/intel/ice/ice_gnss.c
258
ice_gnss_write(struct gnss_device *gdev, const unsigned char *buf,
drivers/net/ethernet/intel/ice/ice_gnss.c
261
struct ice_pf *pf = gnss_get_drvdata(gdev);
drivers/net/ethernet/intel/ice/ice_gnss.c
299
struct gnss_device *gdev;
drivers/net/ethernet/intel/ice/ice_gnss.c
302
gdev = gnss_allocate_device(ice_pf_to_dev(pf));
drivers/net/ethernet/intel/ice/ice_gnss.c
303
if (!gdev) {
drivers/net/ethernet/intel/ice/ice_gnss.c
309
gdev->ops = &ice_gnss_ops;
drivers/net/ethernet/intel/ice/ice_gnss.c
310
gdev->type = GNSS_TYPE_UBX;
drivers/net/ethernet/intel/ice/ice_gnss.c
311
gnss_set_drvdata(gdev, pf);
drivers/net/ethernet/intel/ice/ice_gnss.c
312
ret = gnss_register_device(gdev);
drivers/net/ethernet/intel/ice/ice_gnss.c
316
gnss_put_device(gdev);
drivers/net/ethernet/intel/ice/ice_gnss.c
318
pf->gnss_dev = gdev;
drivers/net/ethernet/seeq/sgiseeq.c
247
static struct net_device *gdev;
drivers/net/ethernet/seeq/sgiseeq.c
771
gdev = dev;
drivers/net/wwan/wwan_core.c
505
static int wwan_gnss_open(struct gnss_device *gdev)
drivers/net/wwan/wwan_core.c
507
return wwan_port_op_start(gnss_get_drvdata(gdev));
drivers/net/wwan/wwan_core.c
510
static void wwan_gnss_close(struct gnss_device *gdev)
drivers/net/wwan/wwan_core.c
512
wwan_port_op_stop(gnss_get_drvdata(gdev));
drivers/net/wwan/wwan_core.c
515
static int wwan_gnss_write(struct gnss_device *gdev, const unsigned char *buf,
drivers/net/wwan/wwan_core.c
518
struct wwan_port *port = gnss_get_drvdata(gdev);
drivers/net/wwan/wwan_core.c
571
struct gnss_device *gdev;
drivers/net/wwan/wwan_core.c
574
gdev = gnss_allocate_device(&wwandev->dev);
drivers/net/wwan/wwan_core.c
575
if (!gdev)
drivers/net/wwan/wwan_core.c
582
gdev->type = GNSS_TYPE_NMEA;
drivers/net/wwan/wwan_core.c
583
gdev->ops = &wwan_gnss_ops;
drivers/net/wwan/wwan_core.c
584
gnss_set_drvdata(gdev, port);
drivers/net/wwan/wwan_core.c
586
port->gnss = gdev;
drivers/net/wwan/wwan_core.c
588
err = gnss_register_device(gdev);
drivers/net/wwan/wwan_core.c
590
gnss_put_device(gdev);
drivers/net/wwan/wwan_core.c
594
dev_info(&wwandev->dev, "port %s attached\n", dev_name(&gdev->dev));
drivers/net/wwan/wwan_core.c
603
struct gnss_device *gdev = port->gnss;
drivers/net/wwan/wwan_core.c
605
dev_info(&wwandev->dev, "port %s disconnected\n", dev_name(&gdev->dev));
drivers/net/wwan/wwan_core.c
607
gnss_deregister_device(gdev);
drivers/net/wwan/wwan_core.c
608
gnss_put_device(gdev);
drivers/opp/core.c
2450
struct device *gdev;
drivers/opp/core.c
2482
gdev = dev_to_genpd_dev(required_dev);
drivers/opp/core.c
2483
if (IS_ERR(gdev))
drivers/opp/core.c
2484
return PTR_ERR(gdev);
drivers/opp/core.c
2486
pd_table = _find_opp_table(gdev);
drivers/pinctrl/core.c
1696
struct gpio_device *gdev = NULL;
drivers/pinctrl/core.c
1718
gdev = NULL;
drivers/pinctrl/core.c
1742
gdev = gpiod_to_gpio_device(gpio_to_desc(gpio_num));
drivers/pinctrl/core.c
1743
if (gdev)
drivers/pinctrl/core.c
1745
gpio_num - gpio_device_get_base(gdev),
drivers/pinctrl/core.c
1746
gpio_device_get_label(gdev));
drivers/reset/core.c
909
struct gpio_device *gdev __free(gpio_device_put) =
drivers/reset/core.c
911
if (!gdev)
drivers/reset/core.c
924
parent = gpio_device_to_device(gdev);
drivers/s390/cio/ccwgroup.c
102
ret = gdrv->set_offline(gdev);
drivers/s390/cio/ccwgroup.c
107
gdev->state = CCWGROUP_OFFLINE;
drivers/s390/cio/ccwgroup.c
109
atomic_set(&gdev->onoff, 0);
drivers/s390/cio/ccwgroup.c
118
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
drivers/s390/cio/ccwgroup.c
133
ret = ccwgroup_set_online(gdev);
drivers/s390/cio/ccwgroup.c
135
ret = ccwgroup_set_offline(gdev, true);
drivers/s390/cio/ccwgroup.c
147
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
drivers/s390/cio/ccwgroup.c
150
online = (gdev->state == CCWGROUP_ONLINE) ? 1 : 0;
drivers/s390/cio/ccwgroup.c
159
static void ccwgroup_ungroup(struct ccwgroup_device *gdev)
drivers/s390/cio/ccwgroup.c
161
mutex_lock(&gdev->reg_mutex);
drivers/s390/cio/ccwgroup.c
162
if (device_is_registered(&gdev->dev)) {
drivers/s390/cio/ccwgroup.c
163
__ccwgroup_remove_symlinks(gdev);
drivers/s390/cio/ccwgroup.c
164
device_unregister(&gdev->dev);
drivers/s390/cio/ccwgroup.c
166
mutex_unlock(&gdev->reg_mutex);
drivers/s390/cio/ccwgroup.c
173
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
drivers/s390/cio/ccwgroup.c
177
if (atomic_cmpxchg(&gdev->onoff, 0, 1) != 0)
drivers/s390/cio/ccwgroup.c
179
if (gdev->state != CCWGROUP_OFFLINE) {
drivers/s390/cio/ccwgroup.c
185
ccwgroup_ungroup(gdev);
drivers/s390/cio/ccwgroup.c
191
atomic_set(&gdev->onoff, 0);
drivers/s390/cio/ccwgroup.c
208
struct ccwgroup_device *gdev =
drivers/s390/cio/ccwgroup.c
211
ccwgroup_ungroup(gdev);
drivers/s390/cio/ccwgroup.c
212
put_device(&gdev->dev);
drivers/s390/cio/ccwgroup.c
217
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
drivers/s390/cio/ccwgroup.c
220
for (i = 0; i < gdev->count; i++) {
drivers/s390/cio/ccwgroup.c
221
struct ccw_device *cdev = gdev->cdev[i];
drivers/s390/cio/ccwgroup.c
226
if (dev_get_drvdata(&cdev->dev) == gdev)
drivers/s390/cio/ccwgroup.c
233
kfree(gdev);
drivers/s390/cio/ccwgroup.c
236
static int __ccwgroup_create_symlinks(struct ccwgroup_device *gdev)
drivers/s390/cio/ccwgroup.c
241
for (i = 0; i < gdev->count; i++) {
drivers/s390/cio/ccwgroup.c
242
rc = sysfs_create_link(&gdev->cdev[i]->dev.kobj,
drivers/s390/cio/ccwgroup.c
243
&gdev->dev.kobj, "group_device");
drivers/s390/cio/ccwgroup.c
246
sysfs_remove_link(&gdev->cdev[i]->dev.kobj,
drivers/s390/cio/ccwgroup.c
251
for (i = 0; i < gdev->count; i++) {
drivers/s390/cio/ccwgroup.c
253
rc = sysfs_create_link(&gdev->dev.kobj,
drivers/s390/cio/ccwgroup.c
254
&gdev->cdev[i]->dev.kobj, str);
drivers/s390/cio/ccwgroup.c
258
sysfs_remove_link(&gdev->dev.kobj, str);
drivers/s390/cio/ccwgroup.c
260
for (i = 0; i < gdev->count; i++)
drivers/s390/cio/ccwgroup.c
261
sysfs_remove_link(&gdev->cdev[i]->dev.kobj,
drivers/s390/cio/ccwgroup.c
318
struct ccwgroup_device *gdev;
drivers/s390/cio/ccwgroup.c
325
gdev = kzalloc_flex(*gdev, cdev, num_devices);
drivers/s390/cio/ccwgroup.c
326
if (!gdev)
drivers/s390/cio/ccwgroup.c
329
atomic_set(&gdev->onoff, 0);
drivers/s390/cio/ccwgroup.c
330
mutex_init(&gdev->reg_mutex);
drivers/s390/cio/ccwgroup.c
331
mutex_lock(&gdev->reg_mutex);
drivers/s390/cio/ccwgroup.c
332
INIT_WORK(&gdev->ungroup_work, ccwgroup_ungroup_workfn);
drivers/s390/cio/ccwgroup.c
333
gdev->count = num_devices;
drivers/s390/cio/ccwgroup.c
334
gdev->dev.bus = &ccwgroup_bus_type;
drivers/s390/cio/ccwgroup.c
335
gdev->dev.parent = parent;
drivers/s390/cio/ccwgroup.c
336
gdev->dev.release = ccwgroup_release;
drivers/s390/cio/ccwgroup.c
337
device_initialize(&gdev->dev);
drivers/s390/cio/ccwgroup.c
343
gdev->cdev[i] = get_ccwdev_by_dev_id(&dev_id);
drivers/s390/cio/ccwgroup.c
348
if (!gdev->cdev[i] || !gdev->cdev[i]->drv ||
drivers/s390/cio/ccwgroup.c
349
gdev->cdev[i]->drv != gdev->cdev[0]->drv ||
drivers/s390/cio/ccwgroup.c
350
gdev->cdev[i]->id.driver_info !=
drivers/s390/cio/ccwgroup.c
351
gdev->cdev[0]->id.driver_info) {
drivers/s390/cio/ccwgroup.c
356
spin_lock_irq(gdev->cdev[i]->ccwlock);
drivers/s390/cio/ccwgroup.c
357
if (dev_get_drvdata(&gdev->cdev[i]->dev)) {
drivers/s390/cio/ccwgroup.c
358
spin_unlock_irq(gdev->cdev[i]->ccwlock);
drivers/s390/cio/ccwgroup.c
362
dev_set_drvdata(&gdev->cdev[i]->dev, gdev);
drivers/s390/cio/ccwgroup.c
363
spin_unlock_irq(gdev->cdev[i]->ccwlock);
drivers/s390/cio/ccwgroup.c
377
gdev->cdev[0]->drv != gdrv->ccw_driver) {
drivers/s390/cio/ccwgroup.c
38
static void __ccwgroup_remove_symlinks(struct ccwgroup_device *gdev)
drivers/s390/cio/ccwgroup.c
382
dev_set_name(&gdev->dev, "%s", dev_name(&gdev->cdev[0]->dev));
drivers/s390/cio/ccwgroup.c
385
gdev->dev.driver = &gdrv->driver;
drivers/s390/cio/ccwgroup.c
386
rc = gdrv->setup ? gdrv->setup(gdev) : 0;
drivers/s390/cio/ccwgroup.c
390
rc = device_add(&gdev->dev);
drivers/s390/cio/ccwgroup.c
393
rc = __ccwgroup_create_symlinks(gdev);
drivers/s390/cio/ccwgroup.c
395
device_del(&gdev->dev);
drivers/s390/cio/ccwgroup.c
398
mutex_unlock(&gdev->reg_mutex);
drivers/s390/cio/ccwgroup.c
401
mutex_unlock(&gdev->reg_mutex);
drivers/s390/cio/ccwgroup.c
402
put_device(&gdev->dev);
drivers/s390/cio/ccwgroup.c
410
struct ccwgroup_device *gdev = to_ccwgroupdev(data);
drivers/s390/cio/ccwgroup.c
413
get_device(&gdev->dev);
drivers/s390/cio/ccwgroup.c
414
schedule_work(&gdev->ungroup_work);
drivers/s390/cio/ccwgroup.c
43
for (i = 0; i < gdev->count; i++) {
drivers/s390/cio/ccwgroup.c
45
sysfs_remove_link(&gdev->dev.kobj, str);
drivers/s390/cio/ccwgroup.c
452
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
drivers/s390/cio/ccwgroup.c
456
gdrv->remove(gdev);
drivers/s390/cio/ccwgroup.c
46
sysfs_remove_link(&gdev->cdev[i]->dev.kobj, "group_device");
drivers/s390/cio/ccwgroup.c
461
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
drivers/s390/cio/ccwgroup.c
467
gdrv->shutdown(gdev);
drivers/s390/cio/ccwgroup.c
535
struct ccwgroup_device *gdev;
drivers/s390/cio/ccwgroup.c
541
gdev = dev_get_drvdata(&cdev->dev);
drivers/s390/cio/ccwgroup.c
542
if (!gdev) {
drivers/s390/cio/ccwgroup.c
547
get_device(&gdev->dev);
drivers/s390/cio/ccwgroup.c
550
ccwgroup_ungroup(gdev);
drivers/s390/cio/ccwgroup.c
552
put_device(&gdev->dev);
drivers/s390/cio/ccwgroup.c
58
int ccwgroup_set_online(struct ccwgroup_device *gdev)
drivers/s390/cio/ccwgroup.c
60
struct ccwgroup_driver *gdrv = to_ccwgroupdrv(gdev->dev.driver);
drivers/s390/cio/ccwgroup.c
63
if (atomic_cmpxchg(&gdev->onoff, 0, 1) != 0)
drivers/s390/cio/ccwgroup.c
65
if (gdev->state == CCWGROUP_ONLINE)
drivers/s390/cio/ccwgroup.c
68
ret = gdrv->set_online(gdev);
drivers/s390/cio/ccwgroup.c
72
gdev->state = CCWGROUP_ONLINE;
drivers/s390/cio/ccwgroup.c
74
atomic_set(&gdev->onoff, 0);
drivers/s390/cio/ccwgroup.c
88
int ccwgroup_set_offline(struct ccwgroup_device *gdev, bool call_gdrv)
drivers/s390/cio/ccwgroup.c
90
struct ccwgroup_driver *gdrv = to_ccwgroupdrv(gdev->dev.driver);
drivers/s390/cio/ccwgroup.c
93
if (atomic_cmpxchg(&gdev->onoff, 0, 1) != 0)
drivers/s390/cio/ccwgroup.c
95
if (gdev->state == CCWGROUP_OFFLINE)
drivers/s390/net/ctcm_sysfs.c
116
struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
drivers/s390/net/ctcm_sysfs.c
119
if (!priv || gdev->state != CCWGROUP_ONLINE)
drivers/s390/net/qeth_core.h
120
#define CARD_BUS_ID(card) dev_name(&card->gdev->dev)
drivers/s390/net/qeth_core.h
806
struct ccwgroup_device *gdev;
drivers/s390/net/qeth_core_main.c
1204
struct ccwgroup_device *gdev;
drivers/s390/net/qeth_core_main.c
1209
gdev = dev_get_drvdata(&cdev->dev);
drivers/s390/net/qeth_core_main.c
1210
card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_core_main.c
1497
dev_info(&card->gdev->dev, "Priority Queueing not supported\n");
drivers/s390/net/qeth_core_main.c
1624
static struct qeth_card *qeth_alloc_card(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_core_main.c
1634
card->gdev = gdev;
drivers/s390/net/qeth_core_main.c
1635
dev_set_drvdata(&gdev->dev, card);
drivers/s390/net/qeth_core_main.c
1636
CARD_RDEV(card) = gdev->cdev[0];
drivers/s390/net/qeth_core_main.c
1637
CARD_WDEV(card) = gdev->cdev[1];
drivers/s390/net/qeth_core_main.c
1638
CARD_DDEV(card) = gdev->cdev[2];
drivers/s390/net/qeth_core_main.c
1641
dev_name(&gdev->dev));
drivers/s390/net/qeth_core_main.c
1649
card->debugfs = debugfs_create_dir(dev_name(&gdev->dev),
drivers/s390/net/qeth_core_main.c
1661
dev_set_drvdata(&gdev->dev, NULL);
drivers/s390/net/qeth_core_main.c
2394
dev_err(&card->gdev->dev, "Unsupported Token Ring device\n");
drivers/s390/net/qeth_core_main.c
2534
dev_err(&card->gdev->dev, "A connection could not be "
drivers/s390/net/qeth_core_main.c
2868
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
3805
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
381
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
4481
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
4484
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
4496
dev_err(&card->gdev->dev, "Adapter does not "
drivers/s390/net/qeth_core_main.c
4500
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
4505
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
4509
dev_err(&card->gdev->dev, "The adjacent switch port does not "
drivers/s390/net/qeth_core_main.c
4513
dev_err(&card->gdev->dev, "The reflective relay mode cannot be "
drivers/s390/net/qeth_core_main.c
4517
dev_warn(&card->gdev->dev, "Turning off reflective relay mode "
drivers/s390/net/qeth_core_main.c
4537
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
5033
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
5061
dev_info(&card->gdev->dev, "CHID: %x CHPID: %x\n",
drivers/s390/net/qeth_core_main.c
5133
dev_info(&card->gdev->dev, "Completion Queue support enabled");
drivers/s390/net/qeth_core_main.c
5136
dev_info(&card->gdev->dev, "Completion Queue support disabled");
drivers/s390/net/qeth_core_main.c
5155
dev_set_drvdata(&card->gdev->dev, NULL);
drivers/s390/net/qeth_core_main.c
5273
dev_warn(&card->gdev->dev, "The LAN is offline\n");
drivers/s390/net/qeth_core_main.c
5331
dev_warn(&card->gdev->dev, "The qeth device driver failed to recover "
drivers/s390/net/qeth_core_main.c
5365
kobject_uevent(&card->gdev->dev.kobj, KOBJ_CHANGE);
drivers/s390/net/qeth_core_main.c
540
dev_err_ratelimited(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
5427
kobject_uevent(&card->gdev->dev.kobj, KOBJ_CHANGE);
drivers/s390/net/qeth_core_main.c
5447
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
5453
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
5457
ccwgroup_set_offline(card->gdev, false);
drivers/s390/net/qeth_core_main.c
5458
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
564
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
583
dev_err_ratelimited(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
607
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
6178
dev_err(&card->gdev->dev, "There is no kernel module to "
drivers/s390/net/qeth_core_main.c
6183
rc = card->discipline->setup(card->gdev);
drivers/s390/net/qeth_core_main.c
6200
card->discipline->remove(card->gdev);
drivers/s390/net/qeth_core_main.c
626
dev_err_ratelimited(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
6312
SET_NETDEV_DEV(dev, &card->gdev->dev);
drivers/s390/net/qeth_core_main.c
6336
static int qeth_core_probe_device(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_core_main.c
6346
dev = &gdev->dev;
drivers/s390/net/qeth_core_main.c
6350
QETH_DBF_TEXT_(SETUP, 2, "%s", dev_name(&gdev->dev));
drivers/s390/net/qeth_core_main.c
6352
card = qeth_alloc_card(gdev);
drivers/s390/net/qeth_core_main.c
6360
dev_name(&gdev->dev));
drivers/s390/net/qeth_core_main.c
6389
gdev->dev.groups = qeth_dev_groups;
drivers/s390/net/qeth_core_main.c
6394
gdev->dev.type = &qeth_generic_devtype;
drivers/s390/net/qeth_core_main.c
6420
static void qeth_core_remove_device(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_core_main.c
6422
struct qeth_card *card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_core_main.c
6436
put_device(&gdev->dev);
drivers/s390/net/qeth_core_main.c
6439
static int qeth_core_set_online(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_core_main.c
6441
struct qeth_card *card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_core_main.c
6461
static int qeth_core_set_offline(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_core_main.c
6463
struct qeth_card *card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_core_main.c
6473
static void qeth_core_shutdown(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_core_main.c
6475
struct qeth_card *card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_core_main.c
6478
if ((gdev->state == CCWGROUP_ONLINE) && card->info.hwtrap)
drivers/s390/net/qeth_core_main.c
656
dev_err_ratelimited(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
6648
dev_info(&card->gdev->dev, "HW Checksumming (%sbound IPv%d) enabled\n",
drivers/s390/net/qeth_core_main.c
6730
dev_info(&card->gdev->dev, "TSOv%u enabled (MSS: %u)\n", prot,
drivers/s390/net/qeth_core_main.c
6785
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
800
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
826
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
833
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
842
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_core_main.c
902
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_core_sys.c
144
dev_warn_once(&card->gdev->dev,
drivers/s390/net/qeth_core_sys.c
432
dev_err(&card->gdev->dev, "Adapter does not "
drivers/s390/net/qeth_l2_main.c
104
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
108
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1221
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1295
kobject_uevent_env(&card->gdev->dev.kobj, KOBJ_CHANGE, env);
drivers/s390/net/qeth_l2_main.c
1330
kobject_uevent_env(&data->card->gdev->dev.kobj,
drivers/s390/net/qeth_l2_main.c
1471
dev_info(&data->card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1577
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1583
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1591
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1596
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1606
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1612
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1618
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
1624
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
2230
dev_err(&card->gdev->dev, "Configuring the VNIC characteristics failed\n");
drivers/s390/net/qeth_l2_main.c
2270
dev_err(&card->gdev->dev, "Configuring the VNIC characteristics failed\n");
drivers/s390/net/qeth_l2_main.c
2292
static int qeth_l2_probe_device(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_l2_main.c
2294
struct qeth_card *card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_l2_main.c
2300
if (gdev->dev.type) {
drivers/s390/net/qeth_l2_main.c
2301
rc = device_add_groups(&gdev->dev, qeth_l2_attr_groups);
drivers/s390/net/qeth_l2_main.c
2305
gdev->dev.type = &qeth_l2_devtype;
drivers/s390/net/qeth_l2_main.c
2312
static void qeth_l2_remove_device(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_l2_main.c
2314
struct qeth_card *card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_l2_main.c
2317
if (gdev->dev.type != &qeth_l2_devtype)
drivers/s390/net/qeth_l2_main.c
2318
device_remove_groups(&gdev->dev, qeth_l2_attr_groups);
drivers/s390/net/qeth_l2_main.c
2323
if (gdev->state == CCWGROUP_ONLINE)
drivers/s390/net/qeth_l2_main.c
2348
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l2_main.c
99
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
1009
dev_info(&card->gdev->dev, "The HiperSockets network "
drivers/s390/net/qeth_l3_main.c
1013
dev_warn(&card->gdev->dev, "The device is not "
drivers/s390/net/qeth_l3_main.c
1018
dev_warn(&card->gdev->dev, "A HiperSockets "
drivers/s390/net/qeth_l3_main.c
188
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
1926
static int qeth_l3_probe_device(struct ccwgroup_device *gdev)
drivers/s390/net/qeth_l3_main.c
1928
struct qeth_card *card = dev_get_drvdata(&gdev->dev);
drivers/s390/net/qeth_l3_main.c
1934
dev_name(&gdev->dev));
drivers/s390/net/qeth_l3_main.c
1938
if (gdev->dev.type) {
drivers/s390/net/qeth_l3_main.c
1939
rc = device_add_groups(&gdev->dev, qeth_l3_attr_groups);
drivers/s390/net/qeth_l3_main.c
1945
gdev->dev.type = &qeth_l3_devtype;
drivers/s390/net/qeth_l3_main.c
652
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
696
dev_warn(&card->gdev->dev, "Reading the adapter MAC"
drivers/s390/net/qeth_l3_main.c
710
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
718
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
732
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
741
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
754
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
762
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
766
dev_info(&card->gdev->dev, "VLAN enabled\n");
drivers/s390/net/qeth_l3_main.c
778
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
787
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
791
dev_info(&card->gdev->dev, "Multicast enabled\n");
drivers/s390/net/qeth_l3_main.c
810
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
818
dev_err(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
826
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
832
dev_info(&card->gdev->dev, "IPV6 enabled\n");
drivers/s390/net/qeth_l3_main.c
841
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
856
dev_info(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
865
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
874
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
880
dev_info(&card->gdev->dev, "Broadcast enabled\n");
drivers/s390/net/qeth_l3_main.c
884
dev_warn(&card->gdev->dev,
drivers/s390/net/qeth_l3_main.c
952
dev_warn(&card->gdev->dev, "The network adapter failed to generate a unique ID\n");
drivers/s390/net/qeth_l3_main.c
998
dev_info(&card->gdev->dev, "The HiperSockets network "
drivers/soc/qcom/apr.c
142
int gpr_send_pkt(struct apr_device *gdev, struct gpr_pkt *pkt)
drivers/soc/qcom/apr.c
144
return pkt_router_send_svc_pkt(&gdev->svc, pkt);
drivers/soc/qcom/apr.c
90
gpr_port_t *gpr_alloc_port(struct apr_device *gdev, struct device *dev,
drivers/soc/qcom/apr.c
93
struct packet_router *pr = dev_get_drvdata(gdev->dev.parent);
drivers/staging/greybus/gbphy.h
20
static inline void *gb_gbphy_get_data(struct gbphy_device *gdev)
drivers/staging/greybus/gbphy.h
22
return dev_get_drvdata(&gdev->dev);
drivers/staging/greybus/gbphy.h
25
static inline void gb_gbphy_set_data(struct gbphy_device *gdev, void *data)
drivers/staging/greybus/gbphy.h
27
dev_set_drvdata(&gdev->dev, data);
drivers/uio/uio_pci_generic.c
100
gdev->info.handler = irqhandler;
drivers/uio/uio_pci_generic.c
106
uiomem = &gdev->info.mem[0];
drivers/uio/uio_pci_generic.c
113
if (uiomem >= &gdev->info.mem[MAX_UIO_MAPS]) {
drivers/uio/uio_pci_generic.c
131
while (uiomem < &gdev->info.mem[MAX_UIO_MAPS]) {
drivers/uio/uio_pci_generic.c
136
return devm_uio_register_device(&pdev->dev, &gdev->info);
drivers/uio/uio_pci_generic.c
44
struct uio_pci_generic_dev *gdev = to_uio_pci_generic_dev(info);
drivers/uio/uio_pci_generic.c
54
pci_clear_master(gdev->pdev);
drivers/uio/uio_pci_generic.c
62
struct uio_pci_generic_dev *gdev = to_uio_pci_generic_dev(info);
drivers/uio/uio_pci_generic.c
64
if (!pci_check_and_mask_intx(gdev->pdev))
drivers/uio/uio_pci_generic.c
74
struct uio_pci_generic_dev *gdev;
drivers/uio/uio_pci_generic.c
89
gdev = devm_kzalloc(&pdev->dev, sizeof(struct uio_pci_generic_dev), GFP_KERNEL);
drivers/uio/uio_pci_generic.c
90
if (!gdev)
drivers/uio/uio_pci_generic.c
93
gdev->info.name = "uio_pci_generic";
drivers/uio/uio_pci_generic.c
94
gdev->info.version = DRIVER_VERSION;
drivers/uio/uio_pci_generic.c
95
gdev->info.release = release;
drivers/uio/uio_pci_generic.c
96
gdev->pdev = pdev;
drivers/uio/uio_pci_generic.c
98
gdev->info.irq = pdev->irq;
drivers/uio/uio_pci_generic.c
99
gdev->info.irq_flags = IRQF_SHARED;
drivers/video/fbdev/smscufx.c
1608
dev->gdev = &usbdev->dev; /* our generic struct device * */
drivers/video/fbdev/smscufx.c
1611
dev_dbg(dev->gdev, "%s %s - serial #%s\n",
drivers/video/fbdev/smscufx.c
1613
dev_dbg(dev->gdev, "vid_%04x&pid_%04x&rev_%04x driver's ufx_data struct at %p\n",
drivers/video/fbdev/smscufx.c
1617
dev_dbg(dev->gdev, "console enable=%d\n", console);
drivers/video/fbdev/smscufx.c
1618
dev_dbg(dev->gdev, "fb_defio enable=%d\n", fb_defio);
drivers/video/fbdev/smscufx.c
1621
dev_err(dev->gdev, "ufx_alloc_urb_list failed\n");
drivers/video/fbdev/smscufx.c
1630
dev_err(dev->gdev, "framebuffer_alloc failed\n");
drivers/video/fbdev/smscufx.c
1642
dev_err(dev->gdev, "fb_alloc_cmap failed %x\n", retval);
drivers/video/fbdev/smscufx.c
1648
dev_dbg(dev->gdev, "ID_REV register value 0x%08x", id_rev);
drivers/video/fbdev/smscufx.c
1652
dev_dbg(dev->gdev, "FPGA_REV register value 0x%08x", fpga_rev);
drivers/video/fbdev/smscufx.c
1654
dev_dbg(dev->gdev, "resetting device");
drivers/video/fbdev/smscufx.c
1658
dev_dbg(dev->gdev, "configuring system clock");
drivers/video/fbdev/smscufx.c
1662
dev_dbg(dev->gdev, "configuring DDR2 controller");
drivers/video/fbdev/smscufx.c
1666
dev_dbg(dev->gdev, "configuring I2C controller");
drivers/video/fbdev/smscufx.c
1670
dev_dbg(dev->gdev, "selecting display mode");
drivers/video/fbdev/smscufx.c
1676
dev_err(dev->gdev, "error %d enabling graphics engine", retval);
drivers/video/fbdev/smscufx.c
1683
dev_dbg(dev->gdev, "checking var");
drivers/video/fbdev/smscufx.c
1686
dev_err(dev->gdev, "error %d ufx_ops_check_var", retval);
drivers/video/fbdev/smscufx.c
1690
dev_dbg(dev->gdev, "setting par");
drivers/video/fbdev/smscufx.c
1693
dev_err(dev->gdev, "error %d ufx_ops_set_par", retval);
drivers/video/fbdev/smscufx.c
1697
dev_dbg(dev->gdev, "registering framebuffer");
drivers/video/fbdev/smscufx.c
1700
dev_err(dev->gdev, "error %d register_framebuffer", retval);
drivers/video/fbdev/smscufx.c
1704
dev_info(dev->gdev, "SMSC UDX USB device /dev/fb%d attached. %dx%d resolution."
drivers/video/fbdev/smscufx.c
94
struct device *gdev; /* &udev->dev */
drivers/virt/vboxguest/vboxguest_core.c
1002
ret = vbg_reset_host_capabilities(gdev);
drivers/virt/vboxguest/vboxguest_core.c
1009
ret = vbg_core_set_mouse_status(gdev, 0);
drivers/virt/vboxguest/vboxguest_core.c
1016
vbg_guest_mappings_init(gdev);
drivers/virt/vboxguest/vboxguest_core.c
1017
vbg_heartbeat_init(gdev);
drivers/virt/vboxguest/vboxguest_core.c
1020
ret = vbg_report_driver_status(gdev, true);
drivers/virt/vboxguest/vboxguest_core.c
1027
vbg_req_free(gdev->mouse_status_req,
drivers/virt/vboxguest/vboxguest_core.c
1028
sizeof(*gdev->mouse_status_req));
drivers/virt/vboxguest/vboxguest_core.c
1029
vbg_req_free(gdev->ack_events_req,
drivers/virt/vboxguest/vboxguest_core.c
1030
sizeof(*gdev->ack_events_req));
drivers/virt/vboxguest/vboxguest_core.c
1031
vbg_req_free(gdev->cancel_req,
drivers/virt/vboxguest/vboxguest_core.c
1032
sizeof(*gdev->cancel_req));
drivers/virt/vboxguest/vboxguest_core.c
1033
vbg_req_free(gdev->mem_balloon.change_req,
drivers/virt/vboxguest/vboxguest_core.c
1034
sizeof(*gdev->mem_balloon.change_req));
drivers/virt/vboxguest/vboxguest_core.c
1035
vbg_req_free(gdev->mem_balloon.get_req,
drivers/virt/vboxguest/vboxguest_core.c
1036
sizeof(*gdev->mem_balloon.get_req));
drivers/virt/vboxguest/vboxguest_core.c
104
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
1048
void vbg_core_exit(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
1050
vbg_heartbeat_exit(gdev);
drivers/virt/vboxguest/vboxguest_core.c
1051
vbg_guest_mappings_exit(gdev);
drivers/virt/vboxguest/vboxguest_core.c
1054
vbg_reset_host_event_filter(gdev, 0);
drivers/virt/vboxguest/vboxguest_core.c
1055
vbg_reset_host_capabilities(gdev);
drivers/virt/vboxguest/vboxguest_core.c
1056
vbg_core_set_mouse_status(gdev, 0);
drivers/virt/vboxguest/vboxguest_core.c
1058
vbg_req_free(gdev->mouse_status_req,
drivers/virt/vboxguest/vboxguest_core.c
1059
sizeof(*gdev->mouse_status_req));
drivers/virt/vboxguest/vboxguest_core.c
106
gdev->guest_mappings = guest_mappings[i];
drivers/virt/vboxguest/vboxguest_core.c
1060
vbg_req_free(gdev->ack_events_req,
drivers/virt/vboxguest/vboxguest_core.c
1061
sizeof(*gdev->ack_events_req));
drivers/virt/vboxguest/vboxguest_core.c
1062
vbg_req_free(gdev->cancel_req,
drivers/virt/vboxguest/vboxguest_core.c
1063
sizeof(*gdev->cancel_req));
drivers/virt/vboxguest/vboxguest_core.c
1064
vbg_req_free(gdev->mem_balloon.change_req,
drivers/virt/vboxguest/vboxguest_core.c
1065
sizeof(*gdev->mem_balloon.change_req));
drivers/virt/vboxguest/vboxguest_core.c
1066
vbg_req_free(gdev->mem_balloon.get_req,
drivers/virt/vboxguest/vboxguest_core.c
1067
sizeof(*gdev->mem_balloon.get_req));
drivers/virt/vboxguest/vboxguest_core.c
1079
struct vbg_session *vbg_core_open_session(struct vbg_dev *gdev, u32 requestor)
drivers/virt/vboxguest/vboxguest_core.c
1087
session->gdev = gdev;
drivers/virt/vboxguest/vboxguest_core.c
1099
struct vbg_dev *gdev = session->gdev;
drivers/virt/vboxguest/vboxguest_core.c
1102
vbg_acquire_session_capabilities(gdev, session, 0, U32_MAX, 0, true);
drivers/virt/vboxguest/vboxguest_core.c
1103
vbg_set_session_capabilities(gdev, session, 0, U32_MAX, true);
drivers/virt/vboxguest/vboxguest_core.c
1104
vbg_set_session_event_filter(gdev, session, 0, U32_MAX, true);
drivers/virt/vboxguest/vboxguest_core.c
1111
vbg_hgcm_disconnect(gdev, VBG_KERNEL_REQUEST,
drivers/virt/vboxguest/vboxguest_core.c
116
if (!gdev->guest_mappings) {
drivers/virt/vboxguest/vboxguest_core.c
1161
static u32 vbg_get_allowed_event_mask_for_session(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1164
u32 acquire_mode_caps = gdev->acquire_mode_guest_caps;
drivers/virt/vboxguest/vboxguest_core.c
117
__free_page(gdev->guest_mappings_dummy_page);
drivers/virt/vboxguest/vboxguest_core.c
1179
static bool vbg_wait_event_cond(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
118
gdev->guest_mappings_dummy_page = NULL;
drivers/virt/vboxguest/vboxguest_core.c
1187
spin_lock_irqsave(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1189
events = gdev->pending_events & event_mask;
drivers/virt/vboxguest/vboxguest_core.c
1190
events &= vbg_get_allowed_event_mask_for_session(gdev, session);
drivers/virt/vboxguest/vboxguest_core.c
1193
spin_unlock_irqrestore(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1199
static u32 vbg_consume_events_locked(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1203
u32 events = gdev->pending_events & event_mask;
drivers/virt/vboxguest/vboxguest_core.c
1205
events &= vbg_get_allowed_event_mask_for_session(gdev, session);
drivers/virt/vboxguest/vboxguest_core.c
1206
gdev->pending_events &= ~events;
drivers/virt/vboxguest/vboxguest_core.c
1210
static int vbg_ioctl_wait_for_events(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1231
gdev->event_wq,
drivers/virt/vboxguest/vboxguest_core.c
1232
vbg_wait_event_cond(gdev, session, event_mask),
drivers/virt/vboxguest/vboxguest_core.c
1235
spin_lock_irqsave(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1243
vbg_consume_events_locked(gdev, session, event_mask);
drivers/virt/vboxguest/vboxguest_core.c
1246
spin_unlock_irqrestore(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1257
static int vbg_ioctl_interrupt_all_wait_events(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1266
spin_lock_irqsave(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1268
spin_unlock_irqrestore(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1270
wake_up(&gdev->event_wq);
drivers/virt/vboxguest/vboxguest_core.c
1284
static int vbg_req_allowed(struct vbg_dev *gdev, struct vbg_session *session,
drivers/virt/vboxguest/vboxguest_core.c
131
static void vbg_guest_mappings_exit(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
136
if (!gdev->guest_mappings)
drivers/virt/vboxguest/vboxguest_core.c
1375
static int vbg_ioctl_vmmrequest(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1390
ret = vbg_req_allowed(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1394
vbg_req_perform(gdev, data);
drivers/virt/vboxguest/vboxguest_core.c
1400
static int vbg_ioctl_hgcm_connect(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1411
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1418
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1423
ret = vbg_hgcm_connect(gdev, session->requestor, &conn->u.in.loc,
drivers/virt/vboxguest/vboxguest_core.c
1426
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1434
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1439
static int vbg_ioctl_hgcm_disconnect(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1453
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1460
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1465
ret = vbg_hgcm_disconnect(gdev, session->requestor, client_id,
drivers/virt/vboxguest/vboxguest_core.c
1468
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1473
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1492
static int vbg_ioctl_hgcm_call(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
151
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
1547
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1551
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
1559
ret = vbg_hgcm_call32(gdev, session->requestor, client_id,
drivers/virt/vboxguest/vboxguest_core.c
1564
ret = vbg_hgcm_call(gdev, session->requestor, client_id,
drivers/virt/vboxguest/vboxguest_core.c
1592
static int vbg_ioctl_change_filter_mask(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
160
vunmap(gdev->guest_mappings);
drivers/virt/vboxguest/vboxguest_core.c
1607
return vbg_set_session_event_filter(gdev, session, or_mask, not_mask,
drivers/virt/vboxguest/vboxguest_core.c
161
gdev->guest_mappings = NULL;
drivers/virt/vboxguest/vboxguest_core.c
1611
static int vbg_ioctl_acquire_guest_capabilities(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
163
__free_page(gdev->guest_mappings_dummy_page);
drivers/virt/vboxguest/vboxguest_core.c
1630
return vbg_acquire_session_capabilities(gdev, session, or_mask,
drivers/virt/vboxguest/vboxguest_core.c
1634
static int vbg_ioctl_change_guest_capabilities(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
164
gdev->guest_mappings_dummy_page = NULL;
drivers/virt/vboxguest/vboxguest_core.c
1649
ret = vbg_set_session_capabilities(gdev, session, or_mask, not_mask,
drivers/virt/vboxguest/vboxguest_core.c
1655
caps->u.out.global_caps = gdev->guest_caps_host;
drivers/virt/vboxguest/vboxguest_core.c
1660
static int vbg_ioctl_check_balloon(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1666
balloon_info->u.out.balloon_chunks = gdev->mem_balloon.chunks;
drivers/virt/vboxguest/vboxguest_core.c
1676
static int vbg_ioctl_write_core_dump(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
1691
dump->hdr.rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
1708
struct vbg_dev *gdev = session->gdev;
drivers/virt/vboxguest/vboxguest_core.c
1725
return vbg_ioctl_vmmrequest(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
173
static int vbg_report_guest_info(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
1735
return vbg_ioctl_hgcm_connect(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1737
return vbg_ioctl_hgcm_disconnect(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1739
return vbg_ioctl_wait_for_events(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1741
return vbg_ioctl_interrupt_all_wait_events(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1743
return vbg_ioctl_change_filter_mask(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1745
return vbg_ioctl_acquire_guest_capabilities(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1747
return vbg_ioctl_change_guest_capabilities(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1749
return vbg_ioctl_check_balloon(gdev, data);
drivers/virt/vboxguest/vboxguest_core.c
1751
return vbg_ioctl_write_core_dump(gdev, session, data);
drivers/virt/vboxguest/vboxguest_core.c
1762
return vbg_ioctl_hgcm_call(gdev, session, f32bit, data);
drivers/virt/vboxguest/vboxguest_core.c
1780
int vbg_core_set_mouse_status(struct vbg_dev *gdev, u32 features)
drivers/virt/vboxguest/vboxguest_core.c
1794
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
1805
struct vbg_dev *gdev = dev_id;
drivers/virt/vboxguest/vboxguest_core.c
1806
struct vmmdev_events *req = gdev->ack_events_req;
drivers/virt/vboxguest/vboxguest_core.c
1812
if (!gdev->mmio->V.V1_04.have_events)
drivers/virt/vboxguest/vboxguest_core.c
1818
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
1832
wake_up(&gdev->hgcm_wq);
drivers/virt/vboxguest/vboxguest_core.c
1837
schedule_work(&gdev->mem_balloon.work);
drivers/virt/vboxguest/vboxguest_core.c
1842
spin_lock_irqsave(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1843
gdev->pending_events |= events;
drivers/virt/vboxguest/vboxguest_core.c
1844
spin_unlock_irqrestore(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_core.c
1846
wake_up(&gdev->event_wq);
drivers/virt/vboxguest/vboxguest_core.c
1850
vbg_linux_mouse_event(gdev);
drivers/virt/vboxguest/vboxguest_core.c
212
rc = vbg_req_perform(gdev, req2);
drivers/virt/vboxguest/vboxguest_core.c
214
rc = vbg_req_perform(gdev, req1);
drivers/virt/vboxguest/vboxguest_core.c
216
rc = vbg_req_perform(gdev, req1);
drivers/virt/vboxguest/vboxguest_core.c
218
rc = vbg_req_perform(gdev, req2);
drivers/virt/vboxguest/vboxguest_core.c
238
static int vbg_report_driver_status(struct vbg_dev *gdev, bool active)
drivers/virt/vboxguest/vboxguest_core.c
255
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
272
static int vbg_balloon_inflate(struct vbg_dev *gdev, u32 chunk_idx)
drivers/virt/vboxguest/vboxguest_core.c
274
struct vmmdev_memballoon_change *req = gdev->mem_balloon.change_req;
drivers/virt/vboxguest/vboxguest_core.c
297
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
304
gdev->mem_balloon.pages[chunk_idx] = pages;
drivers/virt/vboxguest/vboxguest_core.c
324
static int vbg_balloon_deflate(struct vbg_dev *gdev, u32 chunk_idx)
drivers/virt/vboxguest/vboxguest_core.c
326
struct vmmdev_memballoon_change *req = gdev->mem_balloon.change_req;
drivers/virt/vboxguest/vboxguest_core.c
327
struct page **pages = gdev->mem_balloon.pages[chunk_idx];
drivers/virt/vboxguest/vboxguest_core.c
337
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
346
gdev->mem_balloon.pages[chunk_idx] = NULL;
drivers/virt/vboxguest/vboxguest_core.c
357
struct vbg_dev *gdev =
drivers/virt/vboxguest/vboxguest_core.c
359
struct vmmdev_memballoon_info *req = gdev->mem_balloon.get_req;
drivers/virt/vboxguest/vboxguest_core.c
368
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
378
if (!gdev->mem_balloon.max_chunks) {
drivers/virt/vboxguest/vboxguest_core.c
379
gdev->mem_balloon.pages =
drivers/virt/vboxguest/vboxguest_core.c
380
devm_kcalloc(gdev->dev, req->phys_mem_chunks,
drivers/virt/vboxguest/vboxguest_core.c
382
if (!gdev->mem_balloon.pages)
drivers/virt/vboxguest/vboxguest_core.c
385
gdev->mem_balloon.max_chunks = req->phys_mem_chunks;
drivers/virt/vboxguest/vboxguest_core.c
389
if (chunks > gdev->mem_balloon.max_chunks) {
drivers/virt/vboxguest/vboxguest_core.c
391
__func__, chunks, gdev->mem_balloon.max_chunks);
drivers/virt/vboxguest/vboxguest_core.c
395
if (chunks > gdev->mem_balloon.chunks) {
drivers/virt/vboxguest/vboxguest_core.c
397
for (i = gdev->mem_balloon.chunks; i < chunks; i++) {
drivers/virt/vboxguest/vboxguest_core.c
398
ret = vbg_balloon_inflate(gdev, i);
drivers/virt/vboxguest/vboxguest_core.c
402
gdev->mem_balloon.chunks++;
drivers/virt/vboxguest/vboxguest_core.c
406
for (i = gdev->mem_balloon.chunks; i-- > chunks;) {
drivers/virt/vboxguest/vboxguest_core.c
407
ret = vbg_balloon_deflate(gdev, i);
drivers/virt/vboxguest/vboxguest_core.c
411
gdev->mem_balloon.chunks--;
drivers/virt/vboxguest/vboxguest_core.c
421
struct vbg_dev *gdev = timer_container_of(gdev, t, heartbeat_timer);
drivers/virt/vboxguest/vboxguest_core.c
423
vbg_req_perform(gdev, gdev->guest_heartbeat_req);
drivers/virt/vboxguest/vboxguest_core.c
424
mod_timer(&gdev->heartbeat_timer,
drivers/virt/vboxguest/vboxguest_core.c
425
msecs_to_jiffies(gdev->heartbeat_interval_ms));
drivers/virt/vboxguest/vboxguest_core.c
436
static int vbg_heartbeat_host_config(struct vbg_dev *gdev, bool enabled)
drivers/virt/vboxguest/vboxguest_core.c
448
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
450
gdev->heartbeat_interval_ms = req->interval_ns;
drivers/virt/vboxguest/vboxguest_core.c
46
static void vbg_guest_mappings_init(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
463
static int vbg_heartbeat_init(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
468
ret = vbg_heartbeat_host_config(gdev, false);
drivers/virt/vboxguest/vboxguest_core.c
472
ret = vbg_heartbeat_host_config(gdev, true);
drivers/virt/vboxguest/vboxguest_core.c
476
gdev->guest_heartbeat_req = vbg_req_alloc(
drivers/virt/vboxguest/vboxguest_core.c
477
sizeof(*gdev->guest_heartbeat_req),
drivers/virt/vboxguest/vboxguest_core.c
480
if (!gdev->guest_heartbeat_req)
drivers/virt/vboxguest/vboxguest_core.c
484
__func__, gdev->heartbeat_interval_ms);
drivers/virt/vboxguest/vboxguest_core.c
485
mod_timer(&gdev->heartbeat_timer, 0);
drivers/virt/vboxguest/vboxguest_core.c
495
static void vbg_heartbeat_exit(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
497
timer_delete_sync(&gdev->heartbeat_timer);
drivers/virt/vboxguest/vboxguest_core.c
498
vbg_heartbeat_host_config(gdev, false);
drivers/virt/vboxguest/vboxguest_core.c
499
vbg_req_free(gdev->guest_heartbeat_req,
drivers/virt/vboxguest/vboxguest_core.c
500
sizeof(*gdev->guest_heartbeat_req));
drivers/virt/vboxguest/vboxguest_core.c
548
static int vbg_reset_host_event_filter(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
561
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
586
static int vbg_set_session_event_filter(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
609
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
62
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
621
vbg_track_bit_usage(&gdev->event_filter_tracker, changed, previous);
drivers/virt/vboxguest/vboxguest_core.c
622
or_mask = gdev->fixed_events | gdev->event_filter_tracker.mask;
drivers/virt/vboxguest/vboxguest_core.c
624
if (gdev->event_filter_host == or_mask || !req)
drivers/virt/vboxguest/vboxguest_core.c
627
gdev->event_filter_host = or_mask;
drivers/virt/vboxguest/vboxguest_core.c
630
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
635
gdev->event_filter_host = U32_MAX;
drivers/virt/vboxguest/vboxguest_core.c
639
vbg_track_bit_usage(&gdev->event_filter_tracker, changed,
drivers/virt/vboxguest/vboxguest_core.c
645
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
658
static int vbg_reset_host_capabilities(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
670
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
688
static int vbg_set_host_capabilities(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
696
WARN_ON(!mutex_is_locked(&gdev->session_mutex));
drivers/virt/vboxguest/vboxguest_core.c
698
caps = gdev->acquired_guest_caps | gdev->set_guest_caps_tracker.mask;
drivers/virt/vboxguest/vboxguest_core.c
700
if (gdev->guest_caps_host == caps)
drivers/virt/vboxguest/vboxguest_core.c
708
gdev->guest_caps_host = U32_MAX;
drivers/virt/vboxguest/vboxguest_core.c
714
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
717
gdev->guest_caps_host = (rc >= 0) ? caps : U32_MAX;
drivers/virt/vboxguest/vboxguest_core.c
739
static int vbg_acquire_session_capabilities(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
748
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
750
if (gdev->set_guest_caps_tracker.mask & or_mask) {
drivers/virt/vboxguest/vboxguest_core.c
762
spin_lock_irqsave(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
763
gdev->acquire_mode_guest_caps |= or_mask;
drivers/virt/vboxguest/vboxguest_core.c
764
spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
777
if (gdev->acquired_guest_caps & or_mask) {
drivers/virt/vboxguest/vboxguest_core.c
782
gdev->acquired_guest_caps |= or_mask;
drivers/virt/vboxguest/vboxguest_core.c
783
gdev->acquired_guest_caps &= ~not_mask;
drivers/virt/vboxguest/vboxguest_core.c
785
spin_lock_irqsave(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
788
spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
790
ret = vbg_set_host_capabilities(gdev, session, session_termination);
drivers/virt/vboxguest/vboxguest_core.c
793
gdev->acquired_guest_caps &= ~or_mask;
drivers/virt/vboxguest/vboxguest_core.c
794
gdev->acquired_guest_caps |= not_mask;
drivers/virt/vboxguest/vboxguest_core.c
795
spin_lock_irqsave(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
798
spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
81
gdev->guest_mappings_dummy_page = alloc_page(GFP_HIGHUSER);
drivers/virt/vboxguest/vboxguest_core.c
811
spin_lock_irqsave(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
814
gdev->pending_events |=
drivers/virt/vboxguest/vboxguest_core.c
817
if (gdev->pending_events)
drivers/virt/vboxguest/vboxguest_core.c
82
if (!gdev->guest_mappings_dummy_page)
drivers/virt/vboxguest/vboxguest_core.c
820
spin_unlock_irqrestore(&gdev->event_spinlock, irqflags);
drivers/virt/vboxguest/vboxguest_core.c
823
wake_up(&gdev->event_wq);
drivers/virt/vboxguest/vboxguest_core.c
827
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
846
static int vbg_set_session_capabilities(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_core.c
854
mutex_lock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
856
if (gdev->acquire_mode_guest_caps & or_mask) {
drivers/virt/vboxguest/vboxguest_core.c
86
pages[i] = gdev->guest_mappings_dummy_page;
drivers/virt/vboxguest/vboxguest_core.c
873
vbg_track_bit_usage(&gdev->set_guest_caps_tracker, changed, previous);
drivers/virt/vboxguest/vboxguest_core.c
875
ret = vbg_set_host_capabilities(gdev, session, session_termination);
drivers/virt/vboxguest/vboxguest_core.c
878
vbg_track_bit_usage(&gdev->set_guest_caps_tracker, changed,
drivers/virt/vboxguest/vboxguest_core.c
884
mutex_unlock(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
895
static int vbg_query_host_version(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_core.c
905
rc = vbg_req_perform(gdev, req);
drivers/virt/vboxguest/vboxguest_core.c
912
snprintf(gdev->host_version, sizeof(gdev->host_version), "%u.%u.%ur%u",
drivers/virt/vboxguest/vboxguest_core.c
914
gdev->host_features = req->features;
drivers/virt/vboxguest/vboxguest_core.c
916
vbg_info("vboxguest: host-version: %s %#x\n", gdev->host_version,
drivers/virt/vboxguest/vboxguest_core.c
917
gdev->host_features);
drivers/virt/vboxguest/vboxguest_core.c
943
int vbg_core_init(struct vbg_dev *gdev, u32 fixed_events)
drivers/virt/vboxguest/vboxguest_core.c
947
gdev->fixed_events = fixed_events | VMMDEV_EVENT_HGCM;
drivers/virt/vboxguest/vboxguest_core.c
948
gdev->event_filter_host = U32_MAX; /* forces a report */
drivers/virt/vboxguest/vboxguest_core.c
949
gdev->guest_caps_host = U32_MAX; /* forces a report */
drivers/virt/vboxguest/vboxguest_core.c
951
init_waitqueue_head(&gdev->event_wq);
drivers/virt/vboxguest/vboxguest_core.c
952
init_waitqueue_head(&gdev->hgcm_wq);
drivers/virt/vboxguest/vboxguest_core.c
953
spin_lock_init(&gdev->event_spinlock);
drivers/virt/vboxguest/vboxguest_core.c
954
mutex_init(&gdev->session_mutex);
drivers/virt/vboxguest/vboxguest_core.c
955
mutex_init(&gdev->cancel_req_mutex);
drivers/virt/vboxguest/vboxguest_core.c
956
timer_setup(&gdev->heartbeat_timer, vbg_heartbeat_timer, 0);
drivers/virt/vboxguest/vboxguest_core.c
957
INIT_WORK(&gdev->mem_balloon.work, vbg_balloon_work);
drivers/virt/vboxguest/vboxguest_core.c
959
gdev->mem_balloon.get_req =
drivers/virt/vboxguest/vboxguest_core.c
960
vbg_req_alloc(sizeof(*gdev->mem_balloon.get_req),
drivers/virt/vboxguest/vboxguest_core.c
963
gdev->mem_balloon.change_req =
drivers/virt/vboxguest/vboxguest_core.c
964
vbg_req_alloc(sizeof(*gdev->mem_balloon.change_req),
drivers/virt/vboxguest/vboxguest_core.c
967
gdev->cancel_req =
drivers/virt/vboxguest/vboxguest_core.c
968
vbg_req_alloc(sizeof(*(gdev->cancel_req)),
drivers/virt/vboxguest/vboxguest_core.c
971
gdev->ack_events_req =
drivers/virt/vboxguest/vboxguest_core.c
972
vbg_req_alloc(sizeof(*gdev->ack_events_req),
drivers/virt/vboxguest/vboxguest_core.c
975
gdev->mouse_status_req =
drivers/virt/vboxguest/vboxguest_core.c
976
vbg_req_alloc(sizeof(*gdev->mouse_status_req),
drivers/virt/vboxguest/vboxguest_core.c
980
if (!gdev->mem_balloon.get_req || !gdev->mem_balloon.change_req ||
drivers/virt/vboxguest/vboxguest_core.c
981
!gdev->cancel_req || !gdev->ack_events_req ||
drivers/virt/vboxguest/vboxguest_core.c
982
!gdev->mouse_status_req)
drivers/virt/vboxguest/vboxguest_core.c
985
ret = vbg_query_host_version(gdev);
drivers/virt/vboxguest/vboxguest_core.c
989
ret = vbg_report_guest_info(gdev);
drivers/virt/vboxguest/vboxguest_core.c
995
ret = vbg_reset_host_event_filter(gdev, gdev->fixed_events);
drivers/virt/vboxguest/vboxguest_core.h
162
struct vbg_dev *gdev;
drivers/virt/vboxguest/vboxguest_core.h
193
int vbg_core_init(struct vbg_dev *gdev, u32 fixed_events);
drivers/virt/vboxguest/vboxguest_core.h
194
void vbg_core_exit(struct vbg_dev *gdev);
drivers/virt/vboxguest/vboxguest_core.h
195
struct vbg_session *vbg_core_open_session(struct vbg_dev *gdev, u32 requestor);
drivers/virt/vboxguest/vboxguest_core.h
198
int vbg_core_set_mouse_status(struct vbg_dev *gdev, u32 features);
drivers/virt/vboxguest/vboxguest_core.h
202
void vbg_linux_mouse_event(struct vbg_dev *gdev);
drivers/virt/vboxguest/vboxguest_core.h
208
int vbg_req_perform(struct vbg_dev *gdev, void *req);
drivers/virt/vboxguest/vboxguest_core.h
210
struct vbg_dev *gdev, u32 requestor, u32 client_id, u32 function,
drivers/virt/vboxguest/vboxguest_linux.c
205
struct vbg_dev *gdev = input_get_drvdata(input);
drivers/virt/vboxguest/vboxguest_linux.c
208
return vbg_core_set_mouse_status(gdev, feat);
drivers/virt/vboxguest/vboxguest_linux.c
218
struct vbg_dev *gdev = input_get_drvdata(input);
drivers/virt/vboxguest/vboxguest_linux.c
220
vbg_core_set_mouse_status(gdev, 0);
drivers/virt/vboxguest/vboxguest_linux.c
228
static int vbg_create_input_device(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_linux.c
232
input = devm_input_allocate_device(gdev->dev);
drivers/virt/vboxguest/vboxguest_linux.c
241
input->dev.parent = gdev->dev;
drivers/virt/vboxguest/vboxguest_linux.c
249
input_set_drvdata(input, gdev);
drivers/virt/vboxguest/vboxguest_linux.c
251
gdev->input = input;
drivers/virt/vboxguest/vboxguest_linux.c
253
return input_register_device(gdev->input);
drivers/virt/vboxguest/vboxguest_linux.c
259
struct vbg_dev *gdev = dev_get_drvdata(dev);
drivers/virt/vboxguest/vboxguest_linux.c
261
return sprintf(buf, "%s\n", gdev->host_version);
drivers/virt/vboxguest/vboxguest_linux.c
267
struct vbg_dev *gdev = dev_get_drvdata(dev);
drivers/virt/vboxguest/vboxguest_linux.c
269
return sprintf(buf, "%#x\n", gdev->host_features);
drivers/virt/vboxguest/vboxguest_linux.c
292
struct vbg_dev *gdev;
drivers/virt/vboxguest/vboxguest_linux.c
295
gdev = devm_kzalloc(dev, sizeof(*gdev), GFP_KERNEL);
drivers/virt/vboxguest/vboxguest_linux.c
296
if (!gdev)
drivers/virt/vboxguest/vboxguest_linux.c
348
gdev->io_port = io;
drivers/virt/vboxguest/vboxguest_linux.c
349
gdev->mmio = vmmdev;
drivers/virt/vboxguest/vboxguest_linux.c
350
gdev->dev = dev;
drivers/virt/vboxguest/vboxguest_linux.c
351
gdev->misc_device.minor = MISC_DYNAMIC_MINOR;
drivers/virt/vboxguest/vboxguest_linux.c
352
gdev->misc_device.name = DEVICE_NAME;
drivers/virt/vboxguest/vboxguest_linux.c
353
gdev->misc_device.fops = &vbg_misc_device_fops;
drivers/virt/vboxguest/vboxguest_linux.c
354
gdev->misc_device_user.minor = MISC_DYNAMIC_MINOR;
drivers/virt/vboxguest/vboxguest_linux.c
355
gdev->misc_device_user.name = DEVICE_NAME_USER;
drivers/virt/vboxguest/vboxguest_linux.c
356
gdev->misc_device_user.fops = &vbg_misc_device_user_fops;
drivers/virt/vboxguest/vboxguest_linux.c
358
ret = vbg_core_init(gdev, VMMDEV_EVENT_MOUSE_POSITION_CHANGED);
drivers/virt/vboxguest/vboxguest_linux.c
362
ret = vbg_create_input_device(gdev);
drivers/virt/vboxguest/vboxguest_linux.c
369
gdev);
drivers/virt/vboxguest/vboxguest_linux.c
375
ret = misc_register(&gdev->misc_device);
drivers/virt/vboxguest/vboxguest_linux.c
382
ret = misc_register(&gdev->misc_device_user);
drivers/virt/vboxguest/vboxguest_linux.c
391
vbg_gdev = gdev;
drivers/virt/vboxguest/vboxguest_linux.c
401
pci_set_drvdata(pci, gdev);
drivers/virt/vboxguest/vboxguest_linux.c
406
misc_deregister(&gdev->misc_device_user);
drivers/virt/vboxguest/vboxguest_linux.c
408
misc_deregister(&gdev->misc_device);
drivers/virt/vboxguest/vboxguest_linux.c
410
free_irq(pci->irq, gdev);
drivers/virt/vboxguest/vboxguest_linux.c
412
vbg_core_exit(gdev);
drivers/virt/vboxguest/vboxguest_linux.c
421
struct vbg_dev *gdev = pci_get_drvdata(pci);
drivers/virt/vboxguest/vboxguest_linux.c
427
free_irq(pci->irq, gdev);
drivers/virt/vboxguest/vboxguest_linux.c
428
misc_deregister(&gdev->misc_device_user);
drivers/virt/vboxguest/vboxguest_linux.c
429
misc_deregister(&gdev->misc_device);
drivers/virt/vboxguest/vboxguest_linux.c
430
vbg_core_exit(gdev);
drivers/virt/vboxguest/vboxguest_linux.c
451
void vbg_put_gdev(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_linux.c
453
WARN_ON(gdev != vbg_gdev);
drivers/virt/vboxguest/vboxguest_linux.c
466
void vbg_linux_mouse_event(struct vbg_dev *gdev)
drivers/virt/vboxguest/vboxguest_linux.c
471
gdev->mouse_status_req->mouse_features = 0;
drivers/virt/vboxguest/vboxguest_linux.c
472
gdev->mouse_status_req->pointer_pos_x = 0;
drivers/virt/vboxguest/vboxguest_linux.c
473
gdev->mouse_status_req->pointer_pos_y = 0;
drivers/virt/vboxguest/vboxguest_linux.c
474
rc = vbg_req_perform(gdev, gdev->mouse_status_req);
drivers/virt/vboxguest/vboxguest_linux.c
476
input_report_abs(gdev->input, ABS_X,
drivers/virt/vboxguest/vboxguest_linux.c
477
gdev->mouse_status_req->pointer_pos_x);
drivers/virt/vboxguest/vboxguest_linux.c
478
input_report_abs(gdev->input, ABS_Y,
drivers/virt/vboxguest/vboxguest_linux.c
479
gdev->mouse_status_req->pointer_pos_y);
drivers/virt/vboxguest/vboxguest_linux.c
480
input_sync(gdev->input);
drivers/virt/vboxguest/vboxguest_linux.c
52
struct vbg_dev *gdev;
drivers/virt/vboxguest/vboxguest_linux.c
55
gdev = container_of(filp->private_data, struct vbg_dev, misc_device);
drivers/virt/vboxguest/vboxguest_linux.c
57
session = vbg_core_open_session(gdev, vbg_misc_device_requestor(inode));
drivers/virt/vboxguest/vboxguest_linux.c
68
struct vbg_dev *gdev;
drivers/virt/vboxguest/vboxguest_linux.c
71
gdev = container_of(filp->private_data, struct vbg_dev,
drivers/virt/vboxguest/vboxguest_linux.c
74
session = vbg_core_open_session(gdev, vbg_misc_device_requestor(inode) |
drivers/virt/vboxguest/vboxguest_utils.c
102
outl(phys_req, gdev->io_port + VMMDEV_PORT_OFF_REQUEST);
drivers/virt/vboxguest/vboxguest_utils.c
112
static bool hgcm_req_done(struct vbg_dev *gdev,
drivers/virt/vboxguest/vboxguest_utils.c
118
spin_lock_irqsave(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_utils.c
120
spin_unlock_irqrestore(&gdev->event_spinlock, flags);
drivers/virt/vboxguest/vboxguest_utils.c
125
int vbg_hgcm_connect(struct vbg_dev *gdev, u32 requestor,
drivers/virt/vboxguest/vboxguest_utils.c
141
rc = vbg_req_perform(gdev, hgcm_connect);
drivers/virt/vboxguest/vboxguest_utils.c
144
wait_event(gdev->hgcm_wq,
drivers/virt/vboxguest/vboxguest_utils.c
145
hgcm_req_done(gdev, &hgcm_connect->header));
drivers/virt/vboxguest/vboxguest_utils.c
159
int vbg_hgcm_disconnect(struct vbg_dev *gdev, u32 requestor,
drivers/virt/vboxguest/vboxguest_utils.c
174
rc = vbg_req_perform(gdev, hgcm_disconnect);
drivers/virt/vboxguest/vboxguest_utils.c
177
wait_event(gdev->hgcm_wq,
drivers/virt/vboxguest/vboxguest_utils.c
178
hgcm_req_done(gdev, &hgcm_disconnect->header));
drivers/virt/vboxguest/vboxguest_utils.c
438
static int hgcm_cancel_call(struct vbg_dev *gdev, struct vmmdev_hgcm_call *call)
drivers/virt/vboxguest/vboxguest_utils.c
447
mutex_lock(&gdev->cancel_req_mutex);
drivers/virt/vboxguest/vboxguest_utils.c
448
gdev->cancel_req->phys_req_to_cancel = virt_to_phys(call);
drivers/virt/vboxguest/vboxguest_utils.c
449
rc = vbg_req_perform(gdev, gdev->cancel_req);
drivers/virt/vboxguest/vboxguest_utils.c
450
mutex_unlock(&gdev->cancel_req_mutex);
drivers/virt/vboxguest/vboxguest_utils.c
456
rc = vbg_req_perform(gdev, call);
drivers/virt/vboxguest/vboxguest_utils.c
478
static int vbg_hgcm_do_call(struct vbg_dev *gdev, struct vmmdev_hgcm_call *call,
drivers/virt/vboxguest/vboxguest_utils.c
486
rc = vbg_req_perform(gdev, call);
drivers/virt/vboxguest/vboxguest_utils.c
507
timeout = wait_event_interruptible_timeout(gdev->hgcm_wq,
drivers/virt/vboxguest/vboxguest_utils.c
508
hgcm_req_done(gdev, &call->header),
drivers/virt/vboxguest/vboxguest_utils.c
511
timeout = wait_event_timeout(gdev->hgcm_wq,
drivers/virt/vboxguest/vboxguest_utils.c
512
hgcm_req_done(gdev, &call->header),
drivers/virt/vboxguest/vboxguest_utils.c
526
cancel_rc = hgcm_cancel_call(gdev, call);
drivers/virt/vboxguest/vboxguest_utils.c
539
timeout = wait_event_timeout(gdev->hgcm_wq,
drivers/virt/vboxguest/vboxguest_utils.c
540
hgcm_req_done(gdev, &call->header),
drivers/virt/vboxguest/vboxguest_utils.c
616
int vbg_hgcm_call(struct vbg_dev *gdev, u32 requestor, u32 client_id,
drivers/virt/vboxguest/vboxguest_utils.c
648
ret = vbg_hgcm_do_call(gdev, call, timeout_ms,
drivers/virt/vboxguest/vboxguest_utils.c
672
struct vbg_dev *gdev, u32 requestor, u32 client_id, u32 function,
drivers/virt/vboxguest/vboxguest_utils.c
714
ret = vbg_hgcm_call(gdev, requestor, client_id, function, timeout_ms,
drivers/virt/vboxguest/vboxguest_utils.c
98
int vbg_req_perform(struct vbg_dev *gdev, void *req)
fs/nfsd/nfs4xdr.c
1907
struct nfsd4_getdeviceinfo *gdev = &u->getdeviceinfo;
fs/nfsd/nfs4xdr.c
1910
memset(gdev, 0, sizeof(*gdev));
fs/nfsd/nfs4xdr.c
1911
status = nfsd4_decode_deviceid4(argp->xdr, &gdev->gd_devid);
fs/nfsd/nfs4xdr.c
1914
if (xdr_stream_decode_u32(argp->xdr, &gdev->gd_layout_type) < 0)
fs/nfsd/nfs4xdr.c
1916
if (xdr_stream_decode_u32(argp->xdr, &gdev->gd_maxcount) < 0)
fs/nfsd/nfs4xdr.c
1919
&gdev->gd_notify_types, 1) < 0)
fs/nfsd/nfs4xdr.c
5509
const struct nfsd4_getdeviceinfo *gdev)
fs/nfsd/nfs4xdr.c
5516
if (xdr_stream_encode_u32(xdr, gdev->gd_layout_type) != XDR_UNIT)
fs/nfsd/nfs4xdr.c
5519
ops = nfsd4_layout_ops[gdev->gd_layout_type];
fs/nfsd/nfs4xdr.c
5520
status = ops->encode_getdeviceinfo(xdr, gdev);
fs/nfsd/nfs4xdr.c
5527
if (xdr->buf->len + XDR_UNIT > gdev->gd_maxcount)
fs/nfsd/nfs4xdr.c
5548
struct nfsd4_getdeviceinfo *gdev = &u->getdeviceinfo;
fs/nfsd/nfs4xdr.c
5552
nfserr = nfsd4_encode_device_addr4(xdr, gdev);
fs/nfsd/nfs4xdr.c
5556
return nfsd4_encode_bitmap4(xdr, gdev->gd_notify_types, 0, 0);
fs/vboxsf/vboxsf_wrappers.c
22
struct vbg_dev *gdev;
fs/vboxsf/vboxsf_wrappers.c
29
gdev = vbg_get_gdev();
fs/vboxsf/vboxsf_wrappers.c
30
if (IS_ERR(gdev))
fs/vboxsf/vboxsf_wrappers.c
33
err = vbg_hgcm_connect(gdev, SHFL_REQUEST, &loc,
fs/vboxsf/vboxsf_wrappers.c
35
vbg_put_gdev(gdev);
fs/vboxsf/vboxsf_wrappers.c
42
struct vbg_dev *gdev;
fs/vboxsf/vboxsf_wrappers.c
45
gdev = vbg_get_gdev();
fs/vboxsf/vboxsf_wrappers.c
46
if (IS_ERR(gdev))
fs/vboxsf/vboxsf_wrappers.c
49
vbg_hgcm_disconnect(gdev, SHFL_REQUEST, vboxsf_client_id, &vbox_status);
fs/vboxsf/vboxsf_wrappers.c
50
vbg_put_gdev(gdev);
fs/vboxsf/vboxsf_wrappers.c
55
struct vbg_dev *gdev;
fs/vboxsf/vboxsf_wrappers.c
58
gdev = vbg_get_gdev();
fs/vboxsf/vboxsf_wrappers.c
59
if (IS_ERR(gdev))
fs/vboxsf/vboxsf_wrappers.c
62
err = vbg_hgcm_call(gdev, SHFL_REQUEST, vboxsf_client_id, function,
fs/vboxsf/vboxsf_wrappers.c
64
vbg_put_gdev(gdev);
include/linux/gnss.h
31
int (*open)(struct gnss_device *gdev);
include/linux/gnss.h
32
void (*close)(struct gnss_device *gdev);
include/linux/gnss.h
33
int (*write_raw)(struct gnss_device *gdev, const unsigned char *buf,
include/linux/gnss.h
59
void gnss_put_device(struct gnss_device *gdev);
include/linux/gnss.h
60
int gnss_register_device(struct gnss_device *gdev);
include/linux/gnss.h
61
void gnss_deregister_device(struct gnss_device *gdev);
include/linux/gnss.h
63
int gnss_insert_raw(struct gnss_device *gdev, const unsigned char *buf,
include/linux/gnss.h
66
static inline void gnss_set_drvdata(struct gnss_device *gdev, void *data)
include/linux/gnss.h
68
dev_set_drvdata(&gdev->dev, data);
include/linux/gnss.h
71
static inline void *gnss_get_drvdata(struct gnss_device *gdev)
include/linux/gnss.h
73
return dev_get_drvdata(&gdev->dev);
include/linux/gpio/driver.h
632
struct gpio_device *gpio_device_get(struct gpio_device *gdev);
include/linux/gpio/driver.h
633
void gpio_device_put(struct gpio_device *gdev);
include/linux/gpio/driver.h
638
struct device *gpio_device_to_device(struct gpio_device *gdev);
include/linux/gpio/driver.h
806
gpio_device_get_desc(struct gpio_device *gdev, unsigned int hwnum);
include/linux/gpio/driver.h
808
struct gpio_chip *gpio_device_get_chip(struct gpio_device *gdev);
include/linux/gpio/driver.h
820
int gpio_device_get_base(struct gpio_device *gdev);
include/linux/gpio/driver.h
821
const char *gpio_device_get_label(struct gpio_device *gdev);
include/linux/gpio/driver.h
843
static inline int gpio_device_get_base(struct gpio_device *gdev)
include/linux/gpio/driver.h
849
static inline const char *gpio_device_get_label(struct gpio_device *gdev)
include/linux/soc/qcom/apr.h
191
gpr_port_t *gpr_alloc_port(gpr_device_t *gdev, struct device *dev,
include/linux/soc/qcom/apr.h
195
int gpr_send_pkt(gpr_device_t *gdev, struct gpr_pkt *pkt);
include/linux/vbox_utils.h
28
int vbg_hgcm_connect(struct vbg_dev *gdev, u32 requestor,
include/linux/vbox_utils.h
32
int vbg_hgcm_disconnect(struct vbg_dev *gdev, u32 requestor,
include/linux/vbox_utils.h
35
int vbg_hgcm_call(struct vbg_dev *gdev, u32 requestor, u32 client_id,
include/linux/vbox_utils.h
57
void vbg_put_gdev(struct vbg_dev *gdev);
sound/soc/qcom/qdsp6/audioreach.c
579
int audioreach_send_cmd_sync(struct device *dev, gpr_device_t *gdev,
sound/soc/qcom/qdsp6/audioreach.c
594
else if (gdev)
sound/soc/qcom/qdsp6/audioreach.c
595
rc = gpr_send_pkt(gdev, pkt);
sound/soc/qcom/qdsp6/audioreach.h
845
int audioreach_send_cmd_sync(struct device *dev, gpr_device_t *gdev, struct gpr_ibasic_rsp_result_t *result,
sound/soc/qcom/qdsp6/q6apm.c
34
gpr_device_t *gdev = apm->gdev;
sound/soc/qcom/qdsp6/q6apm.c
36
return audioreach_send_cmd_sync(&gdev->dev, gdev, &apm->result, &apm->lock,
sound/soc/qcom/qdsp6/q6apm.c
635
graph->port = gpr_alloc_port(apm->gdev, dev, graph_callback, graph);
sound/soc/qcom/qdsp6/q6apm.c
721
static int apm_probe(gpr_device_t *gdev)
sound/soc/qcom/qdsp6/q6apm.c
723
struct device *dev = &gdev->dev;
sound/soc/qcom/qdsp6/q6apm.c
735
apm->gdev = gdev;
sound/soc/qcom/qdsp6/q6apm.c
770
gpr_device_t *gdev = priv;
sound/soc/qcom/qdsp6/q6apm.c
771
struct q6apm *apm = dev_get_drvdata(&gdev->dev);
sound/soc/qcom/qdsp6/q6apm.c
772
struct device *dev = &gdev->dev;
sound/soc/qcom/qdsp6/q6apm.h
54
gpr_device_t *gdev;
sound/soc/qcom/qdsp6/q6prm.c
113
gpr_device_t *gdev = prm->gdev;
sound/soc/qcom/qdsp6/q6prm.c
117
gdev->svc.id, GPR_PRM_MODULE_IID);
sound/soc/qcom/qdsp6/q6prm.c
145
gpr_device_t *gdev = prm->gdev;
sound/soc/qcom/qdsp6/q6prm.c
149
gdev->svc.id, GPR_PRM_MODULE_IID);
sound/soc/qcom/qdsp6/q6prm.c
180
gpr_device_t *gdev = priv;
sound/soc/qcom/qdsp6/q6prm.c
181
struct q6prm *prm = dev_get_drvdata(&gdev->dev);
sound/soc/qcom/qdsp6/q6prm.c
200
static int prm_probe(gpr_device_t *gdev)
sound/soc/qcom/qdsp6/q6prm.c
202
struct device *dev = &gdev->dev;
sound/soc/qcom/qdsp6/q6prm.c
21
gpr_device_t *gdev;
sound/soc/qcom/qdsp6/q6prm.c
210
cc->gdev = gdev;
sound/soc/qcom/qdsp6/q6prm.c
54
return audioreach_send_cmd_sync(prm->dev, prm->gdev, &prm->result, &prm->lock,
sound/soc/qcom/qdsp6/q6prm.c
63
gpr_device_t *gdev = prm->gdev;
sound/soc/qcom/qdsp6/q6prm.c
75
audioreach_alloc_cmd_pkt(sizeof(*req), opcode, 0, gdev->svc.id, GPR_PRM_MODULE_IID);