Symbol: serio
arch/arm/mach-omap1/ams-delta-fiq.c
204
serio->resource[0].start = gpiod_to_irq(clk);
arch/arm/mach-omap1/ams-delta-fiq.c
205
serio->resource[0].end = serio->resource[0].start;
arch/arm/mach-omap1/ams-delta-fiq.c
206
serio->dev.platform_data = fiq_buffer;
arch/arm/mach-omap1/ams-delta-fiq.c
85
struct platform_device *serio)
arch/mips/include/asm/sn/ioc3.h
143
struct ioc3_serioregs serio;
drivers/char/ipmi/kcs_bmc_serio.c
19
struct serio *port;
drivers/char/ipmi/kcs_bmc_serio.c
53
static int kcs_bmc_serio_open(struct serio *port)
drivers/char/ipmi/kcs_bmc_serio.c
60
static void kcs_bmc_serio_close(struct serio *port)
drivers/char/ipmi/kcs_bmc_serio.c
73
struct serio *port;
drivers/i2c/busses/i2c-taos-evm.c
103
serio_write(serio, read_write == I2C_SMBUS_WRITE ? '>' : '<');
drivers/i2c/busses/i2c-taos-evm.c
149
static irqreturn_t taos_interrupt(struct serio *serio, unsigned char data,
drivers/i2c/busses/i2c-taos-evm.c
152
struct taos_data *taos = serio_get_drvdata(serio);
drivers/i2c/busses/i2c-taos-evm.c
199
static int taos_connect(struct serio *serio, struct serio_driver *drv)
drivers/i2c/busses/i2c-taos-evm.c
212
serio_set_drvdata(serio, taos);
drivers/i2c/busses/i2c-taos-evm.c
214
err = serio_open(serio, drv);
drivers/i2c/busses/i2c-taos-evm.c
221
adapter->algo_data = serio;
drivers/i2c/busses/i2c-taos-evm.c
222
adapter->dev.parent = &serio->dev;
drivers/i2c/busses/i2c-taos-evm.c
225
serio_write(serio, TAOS_CMD_RESET);
drivers/i2c/busses/i2c-taos-evm.c
231
dev_err(&serio->dev, "TAOS EVM reset failed (state=%d, "
drivers/i2c/busses/i2c-taos-evm.c
239
dev_err(&serio->dev, "TAOS EVM identification failed\n");
drivers/i2c/busses/i2c-taos-evm.c
246
serio_write(serio, TAOS_CMD_ECHO_OFF);
drivers/i2c/busses/i2c-taos-evm.c
252
dev_err(&serio->dev, "TAOS EVM echo off failed "
drivers/i2c/busses/i2c-taos-evm.c
260
dev_info(&serio->dev, "Connected to TAOS EVM\n");
drivers/i2c/busses/i2c-taos-evm.c
266
serio_close(serio);
drivers/i2c/busses/i2c-taos-evm.c
273
static void taos_disconnect(struct serio *serio)
drivers/i2c/busses/i2c-taos-evm.c
275
struct taos_data *taos = serio_get_drvdata(serio);
drivers/i2c/busses/i2c-taos-evm.c
279
serio_close(serio);
drivers/i2c/busses/i2c-taos-evm.c
282
dev_info(&serio->dev, "Disconnected from TAOS EVM\n");
drivers/i2c/busses/i2c-taos-evm.c
294
MODULE_DEVICE_TABLE(serio, taos_serio_ids);
drivers/i2c/busses/i2c-taos-evm.c
62
struct serio *serio = adapter->algo_data;
drivers/i2c/busses/i2c-taos-evm.c
63
struct taos_data *taos = serio_get_drvdata(serio);
drivers/i2c/busses/i2c-taos-evm.c
96
serio_write(serio, *p);
drivers/input/joystick/fsia6b.c
127
static int fsia6b_serio_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/fsia6b.c
143
serio_set_drvdata(serio, fsia6b);
drivers/input/joystick/fsia6b.c
152
scnprintf(fsia6b->phys, sizeof(fsia6b->phys), "%s/input0", serio->phys);
drivers/input/joystick/fsia6b.c
158
input_dev->id.product = serio->id.id;
drivers/input/joystick/fsia6b.c
160
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/fsia6b.c
181
err = serio_open(serio, drv);
drivers/input/joystick/fsia6b.c
191
fail3: serio_close(serio);
drivers/input/joystick/fsia6b.c
193
fail1: serio_set_drvdata(serio, NULL);
drivers/input/joystick/fsia6b.c
198
static void fsia6b_serio_disconnect(struct serio *serio)
drivers/input/joystick/fsia6b.c
200
struct fsia6b *fsia6b = serio_get_drvdata(serio);
drivers/input/joystick/fsia6b.c
202
serio_close(serio);
drivers/input/joystick/fsia6b.c
203
serio_set_drvdata(serio, NULL);
drivers/input/joystick/fsia6b.c
218
MODULE_DEVICE_TABLE(serio, fsia6b_serio_ids);
drivers/input/joystick/fsia6b.c
62
static irqreturn_t fsia6b_serio_irq(struct serio *serio,
drivers/input/joystick/fsia6b.c
65
struct fsia6b *fsia6b = serio_get_drvdata(serio);
drivers/input/joystick/iforce/iforce-serio.c
114
static void iforce_serio_write_wakeup(struct serio *serio)
drivers/input/joystick/iforce/iforce-serio.c
116
struct iforce *iforce = serio_get_drvdata(serio);
drivers/input/joystick/iforce/iforce-serio.c
121
static irqreturn_t iforce_serio_irq(struct serio *serio,
drivers/input/joystick/iforce/iforce-serio.c
124
struct iforce_serio *iforce_serio = serio_get_drvdata(serio);
drivers/input/joystick/iforce/iforce-serio.c
15
struct serio *serio;
drivers/input/joystick/iforce/iforce-serio.c
183
static int iforce_serio_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/iforce/iforce-serio.c
194
iforce_serio->serio = serio;
drivers/input/joystick/iforce/iforce-serio.c
195
serio_set_drvdata(serio, iforce_serio);
drivers/input/joystick/iforce/iforce-serio.c
197
err = serio_open(serio, drv);
drivers/input/joystick/iforce/iforce-serio.c
201
err = iforce_init_device(&serio->dev, BUS_RS232, &iforce_serio->iforce);
drivers/input/joystick/iforce/iforce-serio.c
207
fail2: serio_close(serio);
drivers/input/joystick/iforce/iforce-serio.c
208
fail1: serio_set_drvdata(serio, NULL);
drivers/input/joystick/iforce/iforce-serio.c
213
static void iforce_serio_disconnect(struct serio *serio)
drivers/input/joystick/iforce/iforce-serio.c
215
struct iforce_serio *iforce_serio = serio_get_drvdata(serio);
drivers/input/joystick/iforce/iforce-serio.c
218
serio_close(serio);
drivers/input/joystick/iforce/iforce-serio.c
219
serio_set_drvdata(serio, NULL);
drivers/input/joystick/iforce/iforce-serio.c
233
MODULE_DEVICE_TABLE(serio, iforce_serio_ids);
drivers/input/joystick/iforce/iforce-serio.c
45
serio_write(iforce_serio->serio, 0x2b);
drivers/input/joystick/iforce/iforce-serio.c
47
serio_write(iforce_serio->serio,
drivers/input/joystick/iforce/iforce-serio.c
53
serio_write(iforce_serio->serio,
drivers/input/joystick/iforce/iforce-serio.c
59
serio_write(iforce_serio->serio, cs);
drivers/input/joystick/magellan.c
112
static void magellan_disconnect(struct serio *serio)
drivers/input/joystick/magellan.c
114
struct magellan* magellan = serio_get_drvdata(serio);
drivers/input/joystick/magellan.c
116
serio_close(serio);
drivers/input/joystick/magellan.c
117
serio_set_drvdata(serio, NULL);
drivers/input/joystick/magellan.c
128
static int magellan_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/magellan.c
141
snprintf(magellan->phys, sizeof(magellan->phys), "%s/input0", serio->phys);
drivers/input/joystick/magellan.c
149
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/magellan.c
159
serio_set_drvdata(serio, magellan);
drivers/input/joystick/magellan.c
161
err = serio_open(serio, drv);
drivers/input/joystick/magellan.c
171
fail3: serio_close(serio);
drivers/input/joystick/magellan.c
172
fail2: serio_set_drvdata(serio, NULL);
drivers/input/joystick/magellan.c
192
MODULE_DEVICE_TABLE(serio, magellan_serio_ids);
drivers/input/joystick/magellan.c
93
static irqreturn_t magellan_interrupt(struct serio *serio,
drivers/input/joystick/magellan.c
96
struct magellan* magellan = serio_get_drvdata(serio);
drivers/input/joystick/spaceball.c
136
static irqreturn_t spaceball_interrupt(struct serio *serio,
drivers/input/joystick/spaceball.c
139
struct spaceball *spaceball = serio_get_drvdata(serio);
drivers/input/joystick/spaceball.c
176
static void spaceball_disconnect(struct serio *serio)
drivers/input/joystick/spaceball.c
178
struct spaceball* spaceball = serio_get_drvdata(serio);
drivers/input/joystick/spaceball.c
180
serio_close(serio);
drivers/input/joystick/spaceball.c
181
serio_set_drvdata(serio, NULL);
drivers/input/joystick/spaceball.c
192
static int spaceball_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/spaceball.c
199
if ((id = serio->id.id) > SPACEBALL_MAX_ID)
drivers/input/joystick/spaceball.c
208
snprintf(spaceball->phys, sizeof(spaceball->phys), "%s/input0", serio->phys);
drivers/input/joystick/spaceball.c
216
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/spaceball.c
244
serio_set_drvdata(serio, spaceball);
drivers/input/joystick/spaceball.c
246
err = serio_open(serio, drv);
drivers/input/joystick/spaceball.c
256
fail3: serio_close(serio);
drivers/input/joystick/spaceball.c
257
fail2: serio_set_drvdata(serio, NULL);
drivers/input/joystick/spaceball.c
277
MODULE_DEVICE_TABLE(serio, spaceball_serio_ids);
drivers/input/joystick/spaceorb.c
109
static irqreturn_t spaceorb_interrupt(struct serio *serio,
drivers/input/joystick/spaceorb.c
112
struct spaceorb* spaceorb = serio_get_drvdata(serio);
drivers/input/joystick/spaceorb.c
127
static void spaceorb_disconnect(struct serio *serio)
drivers/input/joystick/spaceorb.c
129
struct spaceorb* spaceorb = serio_get_drvdata(serio);
drivers/input/joystick/spaceorb.c
131
serio_close(serio);
drivers/input/joystick/spaceorb.c
132
serio_set_drvdata(serio, NULL);
drivers/input/joystick/spaceorb.c
143
static int spaceorb_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/spaceorb.c
156
snprintf(spaceorb->phys, sizeof(spaceorb->phys), "%s/input0", serio->phys);
drivers/input/joystick/spaceorb.c
164
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/spaceorb.c
174
serio_set_drvdata(serio, spaceorb);
drivers/input/joystick/spaceorb.c
176
err = serio_open(serio, drv);
drivers/input/joystick/spaceorb.c
186
fail3: serio_close(serio);
drivers/input/joystick/spaceorb.c
187
fail2: serio_set_drvdata(serio, NULL);
drivers/input/joystick/spaceorb.c
207
MODULE_DEVICE_TABLE(serio, spaceorb_serio_ids);
drivers/input/joystick/stinger.c
101
struct stinger *stinger = serio_get_drvdata(serio);
drivers/input/joystick/stinger.c
103
serio_close(serio);
drivers/input/joystick/stinger.c
104
serio_set_drvdata(serio, NULL);
drivers/input/joystick/stinger.c
115
static int stinger_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/stinger.c
127
snprintf(stinger->phys, sizeof(stinger->phys), "%s/serio0", serio->phys);
drivers/input/joystick/stinger.c
135
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/stinger.c
145
serio_set_drvdata(serio, stinger);
drivers/input/joystick/stinger.c
147
err = serio_open(serio, drv);
drivers/input/joystick/stinger.c
157
fail3: serio_close(serio);
drivers/input/joystick/stinger.c
158
fail2: serio_set_drvdata(serio, NULL);
drivers/input/joystick/stinger.c
178
MODULE_DEVICE_TABLE(serio, stinger_serio_ids);
drivers/input/joystick/stinger.c
77
static irqreturn_t stinger_interrupt(struct serio *serio,
drivers/input/joystick/stinger.c
80
struct stinger *stinger = serio_get_drvdata(serio);
drivers/input/joystick/stinger.c
99
static void stinger_disconnect(struct serio *serio)
drivers/input/joystick/twidjoy.c
122
static irqreturn_t twidjoy_interrupt(struct serio *serio, unsigned char data, unsigned int flags)
drivers/input/joystick/twidjoy.c
124
struct twidjoy *twidjoy = serio_get_drvdata(serio);
drivers/input/joystick/twidjoy.c
150
static void twidjoy_disconnect(struct serio *serio)
drivers/input/joystick/twidjoy.c
152
struct twidjoy *twidjoy = serio_get_drvdata(serio);
drivers/input/joystick/twidjoy.c
154
serio_close(serio);
drivers/input/joystick/twidjoy.c
155
serio_set_drvdata(serio, NULL);
drivers/input/joystick/twidjoy.c
166
static int twidjoy_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/twidjoy.c
180
snprintf(twidjoy->phys, sizeof(twidjoy->phys), "%s/input0", serio->phys);
drivers/input/joystick/twidjoy.c
188
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/twidjoy.c
198
serio_set_drvdata(serio, twidjoy);
drivers/input/joystick/twidjoy.c
200
err = serio_open(serio, drv);
drivers/input/joystick/twidjoy.c
210
fail3: serio_close(serio);
drivers/input/joystick/twidjoy.c
211
fail2: serio_set_drvdata(serio, NULL);
drivers/input/joystick/twidjoy.c
231
MODULE_DEVICE_TABLE(serio, twidjoy_serio_ids);
drivers/input/joystick/warrior.c
105
static void warrior_disconnect(struct serio *serio)
drivers/input/joystick/warrior.c
107
struct warrior *warrior = serio_get_drvdata(serio);
drivers/input/joystick/warrior.c
109
serio_close(serio);
drivers/input/joystick/warrior.c
110
serio_set_drvdata(serio, NULL);
drivers/input/joystick/warrior.c
121
static int warrior_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/warrior.c
133
snprintf(warrior->phys, sizeof(warrior->phys), "%s/input0", serio->phys);
drivers/input/joystick/warrior.c
141
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/warrior.c
154
serio_set_drvdata(serio, warrior);
drivers/input/joystick/warrior.c
156
err = serio_open(serio, drv);
drivers/input/joystick/warrior.c
166
fail3: serio_close(serio);
drivers/input/joystick/warrior.c
167
fail2: serio_set_drvdata(serio, NULL);
drivers/input/joystick/warrior.c
187
MODULE_DEVICE_TABLE(serio, warrior_serio_ids);
drivers/input/joystick/warrior.c
79
static irqreturn_t warrior_interrupt(struct serio *serio,
drivers/input/joystick/warrior.c
82
struct warrior *warrior = serio_get_drvdata(serio);
drivers/input/joystick/zhenhua.c
112
static void zhenhua_disconnect(struct serio *serio)
drivers/input/joystick/zhenhua.c
114
struct zhenhua *zhenhua = serio_get_drvdata(serio);
drivers/input/joystick/zhenhua.c
116
serio_close(serio);
drivers/input/joystick/zhenhua.c
117
serio_set_drvdata(serio, NULL);
drivers/input/joystick/zhenhua.c
128
static int zhenhua_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/joystick/zhenhua.c
140
snprintf(zhenhua->phys, sizeof(zhenhua->phys), "%s/input0", serio->phys);
drivers/input/joystick/zhenhua.c
148
input_dev->dev.parent = &serio->dev;
drivers/input/joystick/zhenhua.c
156
serio_set_drvdata(serio, zhenhua);
drivers/input/joystick/zhenhua.c
158
err = serio_open(serio, drv);
drivers/input/joystick/zhenhua.c
168
fail3: serio_close(serio);
drivers/input/joystick/zhenhua.c
169
fail2: serio_set_drvdata(serio, NULL);
drivers/input/joystick/zhenhua.c
189
MODULE_DEVICE_TABLE(serio, zhenhua_serio_ids);
drivers/input/joystick/zhenhua.c
84
static irqreturn_t zhenhua_interrupt(struct serio *serio, unsigned char data, unsigned int flags)
drivers/input/joystick/zhenhua.c
86
struct zhenhua *zhenhua = serio_get_drvdata(serio);
drivers/input/keyboard/atkbd.c
1072
struct device *dev = &atkbd->ps2dev.serio->dev;
drivers/input/keyboard/atkbd.c
1112
struct device *dev = &atkbd->ps2dev.serio->dev;
drivers/input/keyboard/atkbd.c
1180
"%s/input0", atkbd->ps2dev.serio->phys);
drivers/input/keyboard/atkbd.c
1189
input_dev->dev.parent = &atkbd->ps2dev.serio->dev;
drivers/input/keyboard/atkbd.c
1235
static void atkbd_parse_fwnode_data(struct serio *serio)
drivers/input/keyboard/atkbd.c
1237
struct atkbd *atkbd = atkbd_from_serio(serio);
drivers/input/keyboard/atkbd.c
1238
struct device *dev = &serio->dev;
drivers/input/keyboard/atkbd.c
1259
static int atkbd_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/keyboard/atkbd.c
1271
ps2_init(&atkbd->ps2dev, serio,
drivers/input/keyboard/atkbd.c
1276
switch (serio->id.type) {
drivers/input/keyboard/atkbd.c
1282
if (serio->write)
drivers/input/keyboard/atkbd.c
1294
serio_set_drvdata(serio, atkbd);
drivers/input/keyboard/atkbd.c
1296
err = serio_open(serio, drv);
drivers/input/keyboard/atkbd.c
1314
atkbd_parse_fwnode_data(serio);
drivers/input/keyboard/atkbd.c
1320
if (serio->write)
drivers/input/keyboard/atkbd.c
1329
fail3: serio_close(serio);
drivers/input/keyboard/atkbd.c
1330
fail2: serio_set_drvdata(serio, NULL);
drivers/input/keyboard/atkbd.c
1340
static int atkbd_reconnect(struct serio *serio)
drivers/input/keyboard/atkbd.c
1342
struct atkbd *atkbd = atkbd_from_serio(serio);
drivers/input/keyboard/atkbd.c
1343
struct serio_driver *drv = serio->drv;
drivers/input/keyboard/atkbd.c
1347
dev_dbg(&serio->dev,
drivers/input/keyboard/atkbd.c
1412
MODULE_DEVICE_TABLE(serio, atkbd_serio_ids);
drivers/input/keyboard/atkbd.c
1431
struct serio *serio = to_serio_port(dev);
drivers/input/keyboard/atkbd.c
1432
struct atkbd *atkbd = atkbd_from_serio(serio);
drivers/input/keyboard/atkbd.c
1440
struct serio *serio = to_serio_port(dev);
drivers/input/keyboard/atkbd.c
1441
struct atkbd *atkbd = atkbd_from_serio(serio);
drivers/input/keyboard/atkbd.c
306
static struct atkbd *atkbd_from_serio(struct serio *serio)
drivers/input/keyboard/atkbd.c
308
struct ps2dev *ps2dev = serio_get_drvdata(serio);
drivers/input/keyboard/atkbd.c
317
struct serio *serio = to_serio_port(dev);
drivers/input/keyboard/atkbd.c
318
struct atkbd *atkbd = atkbd_from_serio(serio);
drivers/input/keyboard/atkbd.c
404
struct serio *serio = ps2dev->serio;
drivers/input/keyboard/atkbd.c
409
dev_warn(&serio->dev, "Frame/parity error: %02x\n", flags);
drivers/input/keyboard/atkbd.c
410
serio_write(serio, ATKBD_CMD_RESEND);
drivers/input/keyboard/atkbd.c
424
struct serio *serio = ps2dev->serio;
drivers/input/keyboard/atkbd.c
426
dev_dbg(&serio->dev, "Received %02x flags %02x\n", data, flags);
drivers/input/keyboard/atkbd.c
438
struct serio *serio = ps2dev->serio;
drivers/input/keyboard/atkbd.c
446
pm_wakeup_event(&serio->dev, 0);
drivers/input/keyboard/atkbd.c
469
serio_reconnect(atkbd->ps2dev.serio);
drivers/input/keyboard/atkbd.c
482
dev_warn_ratelimited(&serio->dev,
drivers/input/keyboard/atkbd.c
484
data == ATKBD_RET_ACK ? "ACK" : "NAK", serio->phys);
drivers/input/keyboard/atkbd.c
488
dev_dbg(&serio->dev, "Keyboard on %s reports too many keys pressed.\n",
drivers/input/keyboard/atkbd.c
489
serio->phys);
drivers/input/keyboard/atkbd.c
508
dev_warn(&serio->dev,
drivers/input/keyboard/atkbd.c
512
atkbd->set, code, serio->phys);
drivers/input/keyboard/atkbd.c
513
dev_warn(&serio->dev,
drivers/input/keyboard/atkbd.c
705
guard(serio_pause_rx)(atkbd->ps2dev.serio);
drivers/input/keyboard/atkbd.c
717
guard(serio_pause_rx)(atkbd->ps2dev.serio);
drivers/input/keyboard/atkbd.c
731
dev_err(&ps2dev->serio->dev,
drivers/input/keyboard/atkbd.c
733
ps2dev->serio->phys);
drivers/input/keyboard/atkbd.c
750
dev_err(&ps2dev->serio->dev,
drivers/input/keyboard/atkbd.c
752
ps2dev->serio->phys);
drivers/input/keyboard/atkbd.c
810
dev_warn(&ps2dev->serio->dev,
drivers/input/keyboard/atkbd.c
812
ps2dev->serio->phys);
drivers/input/keyboard/atkbd.c
846
dev_err(&ps2dev->serio->dev,
drivers/input/keyboard/atkbd.c
957
static void atkbd_cleanup(struct serio *serio)
drivers/input/keyboard/atkbd.c
959
struct atkbd *atkbd = atkbd_from_serio(serio);
drivers/input/keyboard/atkbd.c
968
static void atkbd_disconnect(struct serio *serio)
drivers/input/keyboard/atkbd.c
970
struct atkbd *atkbd = atkbd_from_serio(serio);
drivers/input/keyboard/atkbd.c
984
serio_close(serio);
drivers/input/keyboard/atkbd.c
985
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/hil_kbd.c
274
static irqreturn_t hil_dev_interrupt(struct serio *serio,
drivers/input/keyboard/hil_kbd.c
281
dev = serio_get_drvdata(serio);
drivers/input/keyboard/hil_kbd.c
314
static void hil_dev_disconnect(struct serio *serio)
drivers/input/keyboard/hil_kbd.c
316
struct hil_dev *dev = serio_get_drvdata(serio);
drivers/input/keyboard/hil_kbd.c
320
serio_close(serio);
drivers/input/keyboard/hil_kbd.c
322
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/hil_kbd.c
443
static int hil_dev_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/keyboard/hil_kbd.c
457
dev->serio = serio;
drivers/input/keyboard/hil_kbd.c
460
error = serio_open(serio, drv);
drivers/input/keyboard/hil_kbd.c
464
serio_set_drvdata(serio, dev);
drivers/input/keyboard/hil_kbd.c
468
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
469
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
470
serio_write(serio, HIL_PKT_CMD >> 8);
drivers/input/keyboard/hil_kbd.c
471
serio_write(serio, HIL_CMD_IDD);
drivers/input/keyboard/hil_kbd.c
477
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
478
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
479
serio_write(serio, HIL_PKT_CMD >> 8);
drivers/input/keyboard/hil_kbd.c
480
serio_write(serio, HIL_CMD_RSC);
drivers/input/keyboard/hil_kbd.c
486
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
487
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
488
serio_write(serio, HIL_PKT_CMD >> 8);
drivers/input/keyboard/hil_kbd.c
489
serio_write(serio, HIL_CMD_RNM);
drivers/input/keyboard/hil_kbd.c
495
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
496
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
497
serio_write(serio, HIL_PKT_CMD >> 8);
drivers/input/keyboard/hil_kbd.c
498
serio_write(serio, HIL_CMD_EXD);
drivers/input/keyboard/hil_kbd.c
537
input_dev->dev.parent = &serio->dev;
drivers/input/keyboard/hil_kbd.c
540
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
541
serio_write(serio, 0);
drivers/input/keyboard/hil_kbd.c
542
serio_write(serio, HIL_PKT_CMD >> 8);
drivers/input/keyboard/hil_kbd.c
544
serio_write(serio, HIL_CMD_EK1);
drivers/input/keyboard/hil_kbd.c
555
serio_close(serio);
drivers/input/keyboard/hil_kbd.c
556
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/hil_kbd.c
573
MODULE_DEVICE_TABLE(serio, hil_dev_ids);
drivers/input/keyboard/hil_kbd.c
71
struct serio *serio;
drivers/input/keyboard/lkkbd.c
266
struct serio *serio;
drivers/input/keyboard/lkkbd.c
423
static irqreturn_t lkkbd_interrupt(struct serio *serio,
drivers/input/keyboard/lkkbd.c
426
struct lkkbd *lk = serio_get_drvdata(serio);
drivers/input/keyboard/lkkbd.c
487
struct serio *serio = lk->serio;
drivers/input/keyboard/lkkbd.c
496
serio_write(serio, LK_CMD_LED_ON);
drivers/input/keyboard/lkkbd.c
497
serio_write(serio, leds_on);
drivers/input/keyboard/lkkbd.c
500
serio_write(serio, LK_CMD_LED_OFF);
drivers/input/keyboard/lkkbd.c
501
serio_write(serio, leds_off);
drivers/input/keyboard/lkkbd.c
507
struct serio *serio = lk->serio;
drivers/input/keyboard/lkkbd.c
511
serio_write(serio, LK_CMD_ENABLE_KEYCLICK);
drivers/input/keyboard/lkkbd.c
512
serio_write(serio, volume_to_hw(lk->keyclick_volume));
drivers/input/keyboard/lkkbd.c
513
serio_write(serio, LK_CMD_ENABLE_CTRCLICK);
drivers/input/keyboard/lkkbd.c
514
serio_write(serio, volume_to_hw(lk->ctrlclick_volume));
drivers/input/keyboard/lkkbd.c
517
serio_write(serio, LK_CMD_DISABLE_KEYCLICK);
drivers/input/keyboard/lkkbd.c
518
serio_write(serio, LK_CMD_DISABLE_CTRCLICK);
drivers/input/keyboard/lkkbd.c
544
serio_write(lk->serio, LK_CMD_SOUND_BELL);
drivers/input/keyboard/lkkbd.c
569
serio_write(lk->serio, LK_CMD_REQUEST_ID);
drivers/input/keyboard/lkkbd.c
572
serio_write(lk->serio, LK_CMD_SET_DEFAULTS);
drivers/input/keyboard/lkkbd.c
582
serio_write(lk->serio, LK_CMD_ENABLE_LK401);
drivers/input/keyboard/lkkbd.c
586
serio_write(lk->serio,
drivers/input/keyboard/lkkbd.c
590
serio_write(lk->serio, LK_CMD_ENABLE_BELL);
drivers/input/keyboard/lkkbd.c
591
serio_write(lk->serio, volume_to_hw(lk->bell_volume));
drivers/input/keyboard/lkkbd.c
598
serio_write(lk->serio, LK_CMD_SOUND_BELL);
drivers/input/keyboard/lkkbd.c
604
static int lkkbd_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/keyboard/lkkbd.c
618
lk->serio = serio;
drivers/input/keyboard/lkkbd.c
627
snprintf(lk->phys, sizeof(lk->phys), "%s/input0", serio->phys);
drivers/input/keyboard/lkkbd.c
635
input_dev->dev.parent = &serio->dev;
drivers/input/keyboard/lkkbd.c
659
serio_set_drvdata(serio, lk);
drivers/input/keyboard/lkkbd.c
661
err = serio_open(serio, drv);
drivers/input/keyboard/lkkbd.c
669
serio_write(lk->serio, LK_CMD_POWERCYCLE_RESET);
drivers/input/keyboard/lkkbd.c
674
serio_close(serio);
drivers/input/keyboard/lkkbd.c
675
fail2: serio_set_drvdata(serio, NULL);
drivers/input/keyboard/lkkbd.c
684
static void lkkbd_disconnect(struct serio *serio)
drivers/input/keyboard/lkkbd.c
686
struct lkkbd *lk = serio_get_drvdata(serio);
drivers/input/keyboard/lkkbd.c
692
serio_close(serio);
drivers/input/keyboard/lkkbd.c
693
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/lkkbd.c
708
MODULE_DEVICE_TABLE(serio, lkkbd_serio_ids);
drivers/input/keyboard/newtonkbd.c
109
fail3: serio_close(serio);
drivers/input/keyboard/newtonkbd.c
110
fail2: serio_set_drvdata(serio, NULL);
drivers/input/keyboard/newtonkbd.c
116
static void nkbd_disconnect(struct serio *serio)
drivers/input/keyboard/newtonkbd.c
118
struct nkbd *nkbd = serio_get_drvdata(serio);
drivers/input/keyboard/newtonkbd.c
120
serio_close(serio);
drivers/input/keyboard/newtonkbd.c
121
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/newtonkbd.c
136
MODULE_DEVICE_TABLE(serio, nkbd_serio_ids);
drivers/input/keyboard/newtonkbd.c
43
struct serio *serio;
drivers/input/keyboard/newtonkbd.c
47
static irqreturn_t nkbd_interrupt(struct serio *serio,
drivers/input/keyboard/newtonkbd.c
50
struct nkbd *nkbd = serio_get_drvdata(serio);
drivers/input/keyboard/newtonkbd.c
59
printk(KERN_INFO "input: %s on %s\n", nkbd->dev->name, serio->phys);
drivers/input/keyboard/newtonkbd.c
64
static int nkbd_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/keyboard/newtonkbd.c
76
nkbd->serio = serio;
drivers/input/keyboard/newtonkbd.c
78
snprintf(nkbd->phys, sizeof(nkbd->phys), "%s/input0", serio->phys);
drivers/input/keyboard/newtonkbd.c
87
input_dev->dev.parent = &serio->dev;
drivers/input/keyboard/newtonkbd.c
97
serio_set_drvdata(serio, nkbd);
drivers/input/keyboard/newtonkbd.c
99
err = serio_open(serio, drv);
drivers/input/keyboard/stowaway.c
101
serio_set_drvdata(serio, skbd);
drivers/input/keyboard/stowaway.c
103
err = serio_open(serio, drv);
drivers/input/keyboard/stowaway.c
113
fail3: serio_close(serio);
drivers/input/keyboard/stowaway.c
114
fail2: serio_set_drvdata(serio, NULL);
drivers/input/keyboard/stowaway.c
120
static void skbd_disconnect(struct serio *serio)
drivers/input/keyboard/stowaway.c
122
struct skbd *skbd = serio_get_drvdata(serio);
drivers/input/keyboard/stowaway.c
124
serio_close(serio);
drivers/input/keyboard/stowaway.c
125
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/stowaway.c
140
MODULE_DEVICE_TABLE(serio, skbd_serio_ids);
drivers/input/keyboard/stowaway.c
49
struct serio *serio;
drivers/input/keyboard/stowaway.c
53
static irqreturn_t skbd_interrupt(struct serio *serio, unsigned char data,
drivers/input/keyboard/stowaway.c
56
struct skbd *skbd = serio_get_drvdata(serio);
drivers/input/keyboard/stowaway.c
68
static int skbd_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/keyboard/stowaway.c
80
skbd->serio = serio;
drivers/input/keyboard/stowaway.c
82
snprintf(skbd->phys, sizeof(skbd->phys), "%s/input0", serio->phys);
drivers/input/keyboard/stowaway.c
91
input_dev->dev.parent = &serio->dev;
drivers/input/keyboard/sunkbd.c
144
serio_write(sunkbd->serio, SUNKBD_CMD_SETLED);
drivers/input/keyboard/sunkbd.c
145
serio_write(sunkbd->serio,
drivers/input/keyboard/sunkbd.c
157
serio_write(sunkbd->serio, SUNKBD_CMD_NOCLICK - value);
drivers/input/keyboard/sunkbd.c
161
serio_write(sunkbd->serio, SUNKBD_CMD_BELLOFF - value);
drivers/input/keyboard/sunkbd.c
179
serio_write(sunkbd->serio, SUNKBD_CMD_RESET);
drivers/input/keyboard/sunkbd.c
188
serio_write(sunkbd->serio, SUNKBD_CMD_LAYOUT);
drivers/input/keyboard/sunkbd.c
207
serio_write(sunkbd->serio, SUNKBD_CMD_SETLED);
drivers/input/keyboard/sunkbd.c
208
serio_write(sunkbd->serio,
drivers/input/keyboard/sunkbd.c
213
serio_write(sunkbd->serio,
drivers/input/keyboard/sunkbd.c
215
serio_write(sunkbd->serio,
drivers/input/keyboard/sunkbd.c
244
scoped_guard(serio_pause_rx, sunkbd->serio)
drivers/input/keyboard/sunkbd.c
258
static int sunkbd_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/keyboard/sunkbd.c
270
sunkbd->serio = serio;
drivers/input/keyboard/sunkbd.c
274
snprintf(sunkbd->phys, sizeof(sunkbd->phys), "%s/input0", serio->phys);
drivers/input/keyboard/sunkbd.c
276
serio_set_drvdata(serio, sunkbd);
drivers/input/keyboard/sunkbd.c
278
err = serio_open(serio, drv);
drivers/input/keyboard/sunkbd.c
297
input_dev->dev.parent = &serio->dev;
drivers/input/keyboard/sunkbd.c
325
fail3: serio_close(serio);
drivers/input/keyboard/sunkbd.c
326
fail2: serio_set_drvdata(serio, NULL);
drivers/input/keyboard/sunkbd.c
336
static void sunkbd_disconnect(struct serio *serio)
drivers/input/keyboard/sunkbd.c
338
struct sunkbd *sunkbd = serio_get_drvdata(serio);
drivers/input/keyboard/sunkbd.c
342
serio_close(serio);
drivers/input/keyboard/sunkbd.c
343
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/sunkbd.c
363
MODULE_DEVICE_TABLE(serio, sunkbd_serio_ids);
drivers/input/keyboard/sunkbd.c
59
struct serio *serio;
drivers/input/keyboard/sunkbd.c
75
static irqreturn_t sunkbd_interrupt(struct serio *serio,
drivers/input/keyboard/sunkbd.c
78
struct sunkbd *sunkbd = serio_get_drvdata(serio);
drivers/input/keyboard/xtkbd.c
100
serio_set_drvdata(serio, xtkbd);
drivers/input/keyboard/xtkbd.c
102
err = serio_open(serio, drv);
drivers/input/keyboard/xtkbd.c
112
fail3: serio_close(serio);
drivers/input/keyboard/xtkbd.c
113
fail2: serio_set_drvdata(serio, NULL);
drivers/input/keyboard/xtkbd.c
119
static void xtkbd_disconnect(struct serio *serio)
drivers/input/keyboard/xtkbd.c
121
struct xtkbd *xtkbd = serio_get_drvdata(serio);
drivers/input/keyboard/xtkbd.c
123
serio_close(serio);
drivers/input/keyboard/xtkbd.c
124
serio_set_drvdata(serio, NULL);
drivers/input/keyboard/xtkbd.c
139
MODULE_DEVICE_TABLE(serio, xtkbd_serio_ids);
drivers/input/keyboard/xtkbd.c
40
struct serio *serio;
drivers/input/keyboard/xtkbd.c
44
static irqreturn_t xtkbd_interrupt(struct serio *serio,
drivers/input/keyboard/xtkbd.c
47
struct xtkbd *xtkbd = serio_get_drvdata(serio);
drivers/input/keyboard/xtkbd.c
66
static int xtkbd_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/keyboard/xtkbd.c
78
xtkbd->serio = serio;
drivers/input/keyboard/xtkbd.c
80
snprintf(xtkbd->phys, sizeof(xtkbd->phys), "%s/input0", serio->phys);
drivers/input/keyboard/xtkbd.c
89
input_dev->dev.parent = &serio->dev;
drivers/input/misc/ideapad_slidebar.c
124
struct serio *port, void *context)
drivers/input/mouse/alps.c
1413
psmouse->ps2dev.serio->phys,
drivers/input/mouse/alps.c
1427
dev3->dev.parent = &psmouse->ps2dev.serio->dev;
drivers/input/mouse/alps.c
1588
guard(serio_pause_rx)(psmouse->ps2dev.serio);
drivers/input/mouse/alps.c
3108
psmouse->ps2dev.serio->phys);
drivers/input/mouse/alps.c
3121
dev2->dev.parent = &psmouse->ps2dev.serio->dev;
drivers/input/mouse/byd.c
257
guard(serio_pause_rx)(psmouse->ps2dev.serio);
drivers/input/mouse/elantech.c
1473
sysfs_remove_group(&psmouse->ps2dev.serio->dev.kobj,
drivers/input/mouse/elantech.c
1512
psmouse->ps2dev.serio->phys, err);
drivers/input/mouse/elantech.c
1517
psmouse->ps2dev.serio->phys, err);
drivers/input/mouse/elantech.c
2103
error = sysfs_create_group(&psmouse->ps2dev.serio->dev.kobj,
drivers/input/mouse/elantech.c
2122
psmouse->ps2dev.serio->phys);
drivers/input/mouse/elantech.c
2129
tp_dev->dev.parent = &psmouse->ps2dev.serio->dev;
drivers/input/mouse/elantech.c
2155
sysfs_remove_group(&psmouse->ps2dev.serio->dev.kobj,
drivers/input/mouse/lifebook.c
259
strcmp(psmouse->ps2dev.serio->phys, desired_serio_phys))
drivers/input/mouse/lifebook.c
283
"%s/input1", psmouse->ps2dev.serio->phys);
drivers/input/mouse/lifebook.c
291
dev2->dev.parent = &psmouse->ps2dev.serio->dev;
drivers/input/mouse/logips2pp.c
203
device_remove_file(&psmouse->ps2dev.serio->dev,
drivers/input/mouse/logips2pp.c
338
error = device_create_file(&psmouse->ps2dev.serio->dev,
drivers/input/mouse/psmouse-base.c
116
struct psmouse *psmouse_from_serio(struct serio *serio)
drivers/input/mouse/psmouse-base.c
118
struct ps2dev *ps2dev = serio_get_drvdata(serio);
drivers/input/mouse/psmouse-base.c
1248
ps2dev->serio->phys, error);
drivers/input/mouse/psmouse-base.c
1275
psmouse->ps2dev.serio->phys);
drivers/input/mouse/psmouse-base.c
1294
psmouse->ps2dev.serio->phys, error);
drivers/input/mouse/psmouse-base.c
1309
struct serio *serio = psmouse->ps2dev.serio;
drivers/input/mouse/psmouse-base.c
1319
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
drivers/input/mouse/psmouse-base.c
1320
parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/psmouse-base.c
1381
psmouse->ps2dev.serio->phys);
drivers/input/mouse/psmouse-base.c
1389
serio_reconnect(serio);
drivers/input/mouse/psmouse-base.c
1402
static void psmouse_cleanup(struct serio *serio)
drivers/input/mouse/psmouse-base.c
1404
struct psmouse *psmouse = psmouse_from_serio(serio);
drivers/input/mouse/psmouse-base.c
1409
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
drivers/input/mouse/psmouse-base.c
1410
parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/psmouse-base.c
1421
psmouse->ps2dev.serio->phys);
drivers/input/mouse/psmouse-base.c
1450
static void psmouse_disconnect(struct serio *serio)
drivers/input/mouse/psmouse-base.c
1452
struct psmouse *psmouse = psmouse_from_serio(serio);
drivers/input/mouse/psmouse-base.c
1464
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
drivers/input/mouse/psmouse-base.c
1465
parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/psmouse-base.c
1477
serio_close(serio);
drivers/input/mouse/psmouse-base.c
1478
serio_set_drvdata(serio, NULL);
drivers/input/mouse/psmouse-base.c
1498
input_dev->dev.parent = &psmouse->ps2dev.serio->dev;
drivers/input/mouse/psmouse-base.c
1551
static int psmouse_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/mouse/psmouse-base.c
1563
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
drivers/input/mouse/psmouse-base.c
1564
parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/psmouse-base.c
1573
ps2_init(&psmouse->ps2dev, serio,
drivers/input/mouse/psmouse-base.c
1577
scnprintf(psmouse->phys, sizeof(psmouse->phys), "%s/input0", serio->phys);
drivers/input/mouse/psmouse-base.c
1581
error = serio_open(serio, drv);
drivers/input/mouse/psmouse-base.c
1586
if (serio->id.type == SERIO_PS_PSTHRU)
drivers/input/mouse/psmouse-base.c
1638
serio_close(serio);
drivers/input/mouse/psmouse-base.c
1640
serio_set_drvdata(serio, NULL);
drivers/input/mouse/psmouse-base.c
1649
static int __psmouse_reconnect(struct serio *serio, bool fast_reconnect)
drivers/input/mouse/psmouse-base.c
1651
struct psmouse *psmouse = psmouse_from_serio(serio);
drivers/input/mouse/psmouse-base.c
1669
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
drivers/input/mouse/psmouse-base.c
1670
parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/psmouse-base.c
1721
static int psmouse_reconnect(struct serio *serio)
drivers/input/mouse/psmouse-base.c
1723
return __psmouse_reconnect(serio, false);
drivers/input/mouse/psmouse-base.c
1726
static int psmouse_fast_reconnect(struct serio *serio)
drivers/input/mouse/psmouse-base.c
1728
return __psmouse_reconnect(serio, true);
drivers/input/mouse/psmouse-base.c
1747
MODULE_DEVICE_TABLE(serio, psmouse_serio_ids);
drivers/input/mouse/psmouse-base.c
1767
struct serio *serio = to_serio_port(dev);
drivers/input/mouse/psmouse-base.c
1769
struct psmouse *psmouse = psmouse_from_serio(serio);
drivers/input/mouse/psmouse-base.c
1781
struct serio *serio = to_serio_port(dev);
drivers/input/mouse/psmouse-base.c
1790
psmouse = psmouse_from_serio(serio);
drivers/input/mouse/psmouse-base.c
1804
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
drivers/input/mouse/psmouse-base.c
1805
parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/psmouse-base.c
1858
struct serio *serio = psmouse->ps2dev.serio;
drivers/input/mouse/psmouse-base.c
1876
while (!list_empty(&serio->children)) {
drivers/input/mouse/psmouse-base.c
1885
serio_unregister_child_port(serio);
drivers/input/mouse/psmouse-base.c
1888
if (serio->drv != &psmouse_drv) {
drivers/input/mouse/psmouse-base.c
1899
if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
drivers/input/mouse/psmouse-base.c
1900
parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/psmouse-base.c
259
serio_pause_rx(psmouse->ps2dev.serio);
drivers/input/mouse/psmouse-base.c
261
serio_continue_rx(psmouse->ps2dev.serio);
drivers/input/mouse/psmouse-base.c
283
serio_reconnect(psmouse->ps2dev.serio);
drivers/input/mouse/psmouse-base.c
363
pm_wakeup_event(&ps2dev->serio->dev, 0);
drivers/input/mouse/psmouse-base.c
389
serio_reconnect(ps2dev->serio);
drivers/input/mouse/psmouse-base.c
503
struct serio *serio = psmouse->ps2dev.serio;
drivers/input/mouse/psmouse-base.c
507
if (strncmp(serio->firmware_id, "PNP: ", 5))
drivers/input/mouse/psmouse-base.c
510
fw_id_copy = kstrndup(&serio->firmware_id[5],
drivers/input/mouse/psmouse-base.c
511
sizeof(serio->firmware_id) - 5,
drivers/input/mouse/psmouse-base.c
979
if (psmouse->ps2dev.serio->id.type == SERIO_PS_PSTHRU &&
drivers/input/mouse/psmouse-smbus.c
178
&psmouse->ps2dev.serio->dev);
drivers/input/mouse/psmouse-smbus.c
272
&psmouse->ps2dev.serio->dev,
drivers/input/mouse/psmouse-smbus.c
56
serio_rescan(smbdev->psmouse->ps2dev.serio);
drivers/input/mouse/psmouse-smbus.c
79
&smbdev->psmouse->ps2dev.serio->dev);
drivers/input/mouse/psmouse-smbus.c
80
serio_rescan(smbdev->psmouse->ps2dev.serio);
drivers/input/mouse/psmouse.h
133
struct psmouse *psmouse_from_serio(struct serio *serio);
drivers/input/mouse/psmouse.h
199
dev_dbg(&(psmouse)->ps2dev.serio->dev, \
drivers/input/mouse/psmouse.h
202
dev_info(&(psmouse)->ps2dev.serio->dev, \
drivers/input/mouse/psmouse.h
205
dev_warn(&(psmouse)->ps2dev.serio->dev, \
drivers/input/mouse/psmouse.h
208
dev_err(&(psmouse)->ps2dev.serio->dev, \
drivers/input/mouse/psmouse.h
211
dev_notice(&(psmouse)->ps2dev.serio->dev, \
drivers/input/mouse/psmouse.h
215
&(psmouse)->ps2dev.serio->dev, \
drivers/input/mouse/sentelic.c
1053
error = sysfs_create_group(&psmouse->ps2dev.serio->dev.kobj,
drivers/input/mouse/sentelic.c
989
sysfs_remove_group(&psmouse->ps2dev.serio->dev.kobj,
drivers/input/mouse/sermouse.c
189
static irqreturn_t sermouse_interrupt(struct serio *serio,
drivers/input/mouse/sermouse.c
192
struct sermouse *sermouse = serio_get_drvdata(serio);
drivers/input/mouse/sermouse.c
212
static void sermouse_disconnect(struct serio *serio)
drivers/input/mouse/sermouse.c
214
struct sermouse *sermouse = serio_get_drvdata(serio);
drivers/input/mouse/sermouse.c
216
serio_close(serio);
drivers/input/mouse/sermouse.c
217
serio_set_drvdata(serio, NULL);
drivers/input/mouse/sermouse.c
227
static int sermouse_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/mouse/sermouse.c
231
unsigned char c = serio->id.extra;
drivers/input/mouse/sermouse.c
240
snprintf(sermouse->phys, sizeof(sermouse->phys), "%s/input0", serio->phys);
drivers/input/mouse/sermouse.c
241
sermouse->type = serio->id.proto;
drivers/input/mouse/sermouse.c
249
input_dev->dev.parent = &serio->dev;
drivers/input/mouse/sermouse.c
262
serio_set_drvdata(serio, sermouse);
drivers/input/mouse/sermouse.c
264
err = serio_open(serio, drv);
drivers/input/mouse/sermouse.c
274
fail3: serio_close(serio);
drivers/input/mouse/sermouse.c
275
fail2: serio_set_drvdata(serio, NULL);
drivers/input/mouse/sermouse.c
327
MODULE_DEVICE_TABLE(serio, sermouse_serio_ids);
drivers/input/mouse/synaptics.c
1452
device_remove_file(&psmouse->ps2dev.serio->dev,
drivers/input/mouse/synaptics.c
1683
err = device_create_file(&psmouse->ps2dev.serio->dev,
drivers/input/mouse/synaptics.c
1836
psmouse->ps2dev.serio->firmware_id);
drivers/input/mouse/synaptics.c
639
static int synaptics_pt_write(struct serio *serio, u8 c)
drivers/input/mouse/synaptics.c
641
struct psmouse *parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/synaptics.c
656
static int synaptics_pt_start(struct serio *serio)
drivers/input/mouse/synaptics.c
658
struct psmouse *parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/synaptics.c
661
guard(serio_pause_rx)(parent->ps2dev.serio);
drivers/input/mouse/synaptics.c
662
priv->pt_port = serio;
drivers/input/mouse/synaptics.c
667
static void synaptics_pt_stop(struct serio *serio)
drivers/input/mouse/synaptics.c
669
struct psmouse *parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/synaptics.c
672
guard(serio_pause_rx)(parent->ps2dev.serio);
drivers/input/mouse/synaptics.c
676
static int synaptics_pt_open(struct serio *serio)
drivers/input/mouse/synaptics.c
678
struct psmouse *parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/synaptics.c
681
guard(serio_pause_rx)(parent->ps2dev.serio);
drivers/input/mouse/synaptics.c
687
static void synaptics_pt_close(struct serio *serio)
drivers/input/mouse/synaptics.c
689
struct psmouse *parent = psmouse_from_serio(serio->parent);
drivers/input/mouse/synaptics.c
692
guard(serio_pause_rx)(parent->ps2dev.serio);
drivers/input/mouse/synaptics.c
703
struct serio *ptport;
drivers/input/mouse/synaptics.c
743
struct serio *serio;
drivers/input/mouse/synaptics.c
745
serio = kzalloc_obj(*serio);
drivers/input/mouse/synaptics.c
746
if (!serio) {
drivers/input/mouse/synaptics.c
752
serio->id.type = SERIO_PS_PSTHRU;
drivers/input/mouse/synaptics.c
753
strscpy(serio->name, "Synaptics pass-through", sizeof(serio->name));
drivers/input/mouse/synaptics.c
754
strscpy(serio->phys, "synaptics-pt/serio0", sizeof(serio->phys));
drivers/input/mouse/synaptics.c
755
serio->write = synaptics_pt_write;
drivers/input/mouse/synaptics.c
756
serio->start = synaptics_pt_start;
drivers/input/mouse/synaptics.c
757
serio->stop = synaptics_pt_stop;
drivers/input/mouse/synaptics.c
758
serio->open = synaptics_pt_open;
drivers/input/mouse/synaptics.c
759
serio->close = synaptics_pt_close;
drivers/input/mouse/synaptics.c
760
serio->parent = psmouse->ps2dev.serio;
drivers/input/mouse/synaptics.c
765
serio->name, psmouse->phys);
drivers/input/mouse/synaptics.c
766
serio_register_port(serio);
drivers/input/mouse/synaptics.h
190
struct serio *pt_port; /* Pass-through serio port */
drivers/input/mouse/trackpoint.c
220
struct serio *serio = to_serio_port(dev);
drivers/input/mouse/trackpoint.c
221
struct psmouse *psmouse = psmouse_from_serio(serio);
drivers/input/mouse/trackpoint.c
371
device_remove_group(&psmouse->ps2dev.serio->dev,
drivers/input/mouse/trackpoint.c
498
error = device_add_group(&ps2dev->serio->dev, &trackpoint_attr_group);
drivers/input/mouse/trackpoint.c
513
if (trackpoint_is_dt_capable(ps2dev->serio->firmware_id)) {
drivers/input/mouse/vmmouse.c
424
psmouse->ps2dev.serio->phys);
drivers/input/mouse/vmmouse.c
435
abs_dev->dev.parent = &psmouse->ps2dev.serio->dev;
drivers/input/mouse/vsxxxaa.c
100
struct serio *serio;
drivers/input/mouse/vsxxxaa.c
365
serio_write(mouse->serio, 'S'); /* Standard format */
drivers/input/mouse/vsxxxaa.c
367
serio_write(mouse->serio, 'R'); /* Incremental */
drivers/input/mouse/vsxxxaa.c
369
serio_write(mouse->serio, 'L'); /* 72 samples/sec */
drivers/input/mouse/vsxxxaa.c
432
static irqreturn_t vsxxxaa_interrupt(struct serio *serio,
drivers/input/mouse/vsxxxaa.c
435
struct vsxxxaa *mouse = serio_get_drvdata(serio);
drivers/input/mouse/vsxxxaa.c
443
static void vsxxxaa_disconnect(struct serio *serio)
drivers/input/mouse/vsxxxaa.c
445
struct vsxxxaa *mouse = serio_get_drvdata(serio);
drivers/input/mouse/vsxxxaa.c
447
serio_close(serio);
drivers/input/mouse/vsxxxaa.c
448
serio_set_drvdata(serio, NULL);
drivers/input/mouse/vsxxxaa.c
453
static int vsxxxaa_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/mouse/vsxxxaa.c
465
mouse->serio = serio;
drivers/input/mouse/vsxxxaa.c
468
snprintf(mouse->phys, sizeof(mouse->phys), "%s/input0", serio->phys);
drivers/input/mouse/vsxxxaa.c
473
input_dev->dev.parent = &serio->dev;
drivers/input/mouse/vsxxxaa.c
487
serio_set_drvdata(serio, mouse);
drivers/input/mouse/vsxxxaa.c
489
err = serio_open(serio, drv);
drivers/input/mouse/vsxxxaa.c
497
serio_write(serio, 'T'); /* Test */
drivers/input/mouse/vsxxxaa.c
505
fail3: serio_close(serio);
drivers/input/mouse/vsxxxaa.c
506
fail2: serio_set_drvdata(serio, NULL);
drivers/input/mouse/vsxxxaa.c
522
MODULE_DEVICE_TABLE(serio, vsxxaa_serio_ids);
drivers/input/rmi4/rmi_f03.c
139
static int rmi_f03_pt_open(struct serio *serio)
drivers/input/rmi4/rmi_f03.c
141
struct f03_data *f03 = serio->port_data;
drivers/input/rmi4/rmi_f03.c
162
static void rmi_f03_pt_close(struct serio *serio)
drivers/input/rmi4/rmi_f03.c
164
struct f03_data *f03 = serio->port_data;
drivers/input/rmi4/rmi_f03.c
172
struct serio *serio;
drivers/input/rmi4/rmi_f03.c
174
serio = kzalloc_obj(struct serio);
drivers/input/rmi4/rmi_f03.c
175
if (!serio)
drivers/input/rmi4/rmi_f03.c
178
serio->id.type = SERIO_PS_PSTHRU;
drivers/input/rmi4/rmi_f03.c
179
serio->write = rmi_f03_pt_write;
drivers/input/rmi4/rmi_f03.c
180
serio->open = rmi_f03_pt_open;
drivers/input/rmi4/rmi_f03.c
181
serio->close = rmi_f03_pt_close;
drivers/input/rmi4/rmi_f03.c
182
serio->port_data = f03;
drivers/input/rmi4/rmi_f03.c
184
strscpy(serio->name, "RMI4 PS/2 pass-through", sizeof(serio->name));
drivers/input/rmi4/rmi_f03.c
185
snprintf(serio->phys, sizeof(serio->phys), "%s/serio0",
drivers/input/rmi4/rmi_f03.c
187
serio->dev.parent = &f03->fn->dev;
drivers/input/rmi4/rmi_f03.c
189
f03->serio = serio;
drivers/input/rmi4/rmi_f03.c
192
serio->name, dev_name(&f03->fn->dev));
drivers/input/rmi4/rmi_f03.c
193
serio_register_port(serio);
drivers/input/rmi4/rmi_f03.c
277
serio_interrupt(f03->serio, 0, SERIO_TIMEOUT);
drivers/input/rmi4/rmi_f03.c
301
serio_interrupt(f03->serio, ob_data, serio_flags);
drivers/input/rmi4/rmi_f03.c
31
struct serio *serio;
drivers/input/rmi4/rmi_f03.c
312
serio_unregister_port(f03->serio);
drivers/input/rmi4/rmi_f03.c
62
struct serio *serio = f03->serio;
drivers/input/rmi4/rmi_f03.c
64
guard(serio_pause_rx)(serio);
drivers/input/rmi4/rmi_f03.c
66
if (serio->drv) {
drivers/input/rmi4/rmi_f03.c
67
serio->drv->interrupt(serio, PSMOUSE_OOB_EXTRA_BTNS,
drivers/input/rmi4/rmi_f03.c
69
serio->drv->interrupt(serio, f03->overwrite_buttons,
drivers/input/rmi4/rmi_f03.c
74
static int rmi_f03_pt_write(struct serio *id, unsigned char val)
drivers/input/serio/altera_ps2.c
103
serio = kzalloc_obj(*serio);
drivers/input/serio/altera_ps2.c
104
if (!serio)
drivers/input/serio/altera_ps2.c
107
serio->id.type = SERIO_8042;
drivers/input/serio/altera_ps2.c
108
serio->write = altera_ps2_write;
drivers/input/serio/altera_ps2.c
109
serio->open = altera_ps2_open;
drivers/input/serio/altera_ps2.c
110
serio->close = altera_ps2_close;
drivers/input/serio/altera_ps2.c
111
strscpy(serio->name, dev_name(&pdev->dev), sizeof(serio->name));
drivers/input/serio/altera_ps2.c
112
strscpy(serio->phys, dev_name(&pdev->dev), sizeof(serio->phys));
drivers/input/serio/altera_ps2.c
113
serio->port_data = ps2if;
drivers/input/serio/altera_ps2.c
114
serio->dev.parent = &pdev->dev;
drivers/input/serio/altera_ps2.c
115
ps2if->io = serio;
drivers/input/serio/altera_ps2.c
23
struct serio *io;
drivers/input/serio/altera_ps2.c
48
static int altera_ps2_write(struct serio *io, unsigned char val)
drivers/input/serio/altera_ps2.c
56
static int altera_ps2_open(struct serio *io)
drivers/input/serio/altera_ps2.c
68
static void altera_ps2_close(struct serio *io)
drivers/input/serio/altera_ps2.c
81
struct serio *serio;
drivers/input/serio/ambakmi.c
110
struct serio *io;
drivers/input/serio/ambakmi.c
27
struct serio *io;
drivers/input/serio/ambakmi.c
50
static int amba_kmi_write(struct serio *io, unsigned char val)
drivers/input/serio/ambakmi.c
64
static int amba_kmi_open(struct serio *io)
drivers/input/serio/ambakmi.c
96
static void amba_kmi_close(struct serio *io)
drivers/input/serio/ams_delta_serio.c
100
static void ams_delta_serio_close(struct serio *serio)
drivers/input/serio/ams_delta_serio.c
102
struct ams_delta_serio *priv = serio->port_data;
drivers/input/serio/ams_delta_serio.c
111
struct serio *serio;
drivers/input/serio/ams_delta_serio.c
153
serio = kzalloc_obj(*serio);
drivers/input/serio/ams_delta_serio.c
154
if (!serio)
drivers/input/serio/ams_delta_serio.c
157
priv->serio = serio;
drivers/input/serio/ams_delta_serio.c
159
serio->id.type = SERIO_8042;
drivers/input/serio/ams_delta_serio.c
160
serio->open = ams_delta_serio_open;
drivers/input/serio/ams_delta_serio.c
161
serio->close = ams_delta_serio_close;
drivers/input/serio/ams_delta_serio.c
162
strscpy(serio->name, "AMS DELTA keyboard adapter", sizeof(serio->name));
drivers/input/serio/ams_delta_serio.c
163
strscpy(serio->phys, dev_name(&pdev->dev), sizeof(serio->phys));
drivers/input/serio/ams_delta_serio.c
164
serio->dev.parent = &pdev->dev;
drivers/input/serio/ams_delta_serio.c
165
serio->port_data = priv;
drivers/input/serio/ams_delta_serio.c
167
serio_register_port(serio);
drivers/input/serio/ams_delta_serio.c
171
dev_info(&serio->dev, "%s\n", serio->name);
drivers/input/serio/ams_delta_serio.c
180
serio_unregister_port(priv->serio);
drivers/input/serio/ams_delta_serio.c
35
struct serio *serio;
drivers/input/serio/ams_delta_serio.c
40
static int check_data(struct serio *serio, int data)
drivers/input/serio/ams_delta_serio.c
46
dev_warn(&serio->dev, "invalid stop bit, data=0x%X\n", data);
drivers/input/serio/ams_delta_serio.c
56
dev_warn(&serio->dev,
drivers/input/serio/ams_delta_serio.c
85
dfl = check_data(priv->serio, data);
drivers/input/serio/ams_delta_serio.c
87
serio_interrupt(priv->serio, scancode, dfl);
drivers/input/serio/ams_delta_serio.c
92
static int ams_delta_serio_open(struct serio *serio)
drivers/input/serio/ams_delta_serio.c
94
struct ams_delta_serio *priv = serio->port_data;
drivers/input/serio/apbps2.c
102
static int apbps2_open(struct serio *io)
drivers/input/serio/apbps2.c
121
static void apbps2_close(struct serio *io)
drivers/input/serio/apbps2.c
53
struct serio *io;
drivers/input/serio/apbps2.c
82
static int apbps2_write(struct serio *io, unsigned char val)
drivers/input/serio/arc_ps2.c
108
static int arc_ps2_open(struct serio *io)
drivers/input/serio/arc_ps2.c
117
static void arc_ps2_close(struct serio *io)
drivers/input/serio/arc_ps2.c
156
struct serio *io;
drivers/input/serio/arc_ps2.c
35
struct serio *io;
drivers/input/serio/arc_ps2.c
87
static int arc_ps2_write(struct serio *io, unsigned char val)
drivers/input/serio/gscps2.c
293
static int gscps2_write(struct serio *port, unsigned char data)
drivers/input/serio/gscps2.c
309
static int gscps2_open(struct serio *port)
drivers/input/serio/gscps2.c
327
static void gscps2_close(struct serio *port)
drivers/input/serio/gscps2.c
343
struct serio *serio;
drivers/input/serio/gscps2.c
355
serio = kzalloc_obj(*serio);
drivers/input/serio/gscps2.c
356
if (!ps2port || !serio) {
drivers/input/serio/gscps2.c
363
ps2port->port = serio;
drivers/input/serio/gscps2.c
375
snprintf(serio->name, sizeof(serio->name), "gsc-ps2-%s",
drivers/input/serio/gscps2.c
377
strscpy(serio->phys, dev_name(&dev->dev), sizeof(serio->phys));
drivers/input/serio/gscps2.c
378
serio->id.type = SERIO_8042;
drivers/input/serio/gscps2.c
379
serio->write = gscps2_write;
drivers/input/serio/gscps2.c
380
serio->open = gscps2_open;
drivers/input/serio/gscps2.c
381
serio->close = gscps2_close;
drivers/input/serio/gscps2.c
382
serio->port_data = ps2port;
drivers/input/serio/gscps2.c
383
serio->dev.parent = &dev->dev;
drivers/input/serio/gscps2.c
422
kfree(serio);
drivers/input/serio/gscps2.c
92
struct serio *port;
drivers/input/serio/hil_mlc.c
1000
mlc->serio[i] = NULL;
drivers/input/serio/hil_mlc.c
168
struct serio *serio;
drivers/input/serio/hil_mlc.c
173
serio = did ? mlc->serio[mlc->di_map[did - 1]] : NULL;
drivers/input/serio/hil_mlc.c
174
drv = (serio != NULL) ? serio->drv : NULL;
drivers/input/serio/hil_mlc.c
182
drv->interrupt(serio, 0, 0);
drivers/input/serio/hil_mlc.c
183
drv->interrupt(serio, HIL_ERR_INT >> 16, 0);
drivers/input/serio/hil_mlc.c
184
drv->interrupt(serio, HIL_PKT_CMD >> 8, 0);
drivers/input/serio/hil_mlc.c
185
drv->interrupt(serio, HIL_CMD_POL + cnt, 0);
drivers/input/serio/hil_mlc.c
189
serio = did ? mlc->serio[mlc->di_map[did-1]] : NULL;
drivers/input/serio/hil_mlc.c
190
drv = (serio != NULL) ? serio->drv : NULL;
drivers/input/serio/hil_mlc.c
198
drv->interrupt(serio, (p >> 24), 0);
drivers/input/serio/hil_mlc.c
199
drv->interrupt(serio, (p >> 16) & 0xff, 0);
drivers/input/serio/hil_mlc.c
200
drv->interrupt(serio, (p >> 8) & ~HIL_PKT_ADDR_MASK, 0);
drivers/input/serio/hil_mlc.c
201
drv->interrupt(serio, p & 0xff, 0);
drivers/input/serio/hil_mlc.c
258
serio_rescan(mlc->serio[rc]);
drivers/input/serio/hil_mlc.c
808
static int hil_mlc_serio_write(struct serio *serio, unsigned char c)
drivers/input/serio/hil_mlc.c
815
map = serio->port_data;
drivers/input/serio/hil_mlc.c
851
drv = serio->drv;
drivers/input/serio/hil_mlc.c
859
drv->interrupt(serio, 0, 0);
drivers/input/serio/hil_mlc.c
860
drv->interrupt(serio, HIL_ERR_INT >> 16, 0);
drivers/input/serio/hil_mlc.c
861
drv->interrupt(serio, 0, 0);
drivers/input/serio/hil_mlc.c
862
drv->interrupt(serio, *idx, 0);
drivers/input/serio/hil_mlc.c
865
drv->interrupt(serio, 0, 0);
drivers/input/serio/hil_mlc.c
866
drv->interrupt(serio, HIL_ERR_INT >> 16, 0);
drivers/input/serio/hil_mlc.c
867
drv->interrupt(serio, HIL_PKT_CMD >> 8, 0);
drivers/input/serio/hil_mlc.c
868
drv->interrupt(serio, *idx, 0);
drivers/input/serio/hil_mlc.c
876
static int hil_mlc_serio_open(struct serio *serio)
drivers/input/serio/hil_mlc.c
881
if (serio_get_drvdata(serio) != NULL)
drivers/input/serio/hil_mlc.c
884
map = serio->port_data;
drivers/input/serio/hil_mlc.c
893
static void hil_mlc_serio_close(struct serio *serio)
drivers/input/serio/hil_mlc.c
898
map = serio->port_data;
drivers/input/serio/hil_mlc.c
904
serio_set_drvdata(serio, NULL);
drivers/input/serio/hil_mlc.c
905
serio->drv = NULL;
drivers/input/serio/hil_mlc.c
940
struct serio *mlc_serio;
drivers/input/serio/hil_mlc.c
943
mlc->serio[i] = mlc_serio;
drivers/input/serio/hil_mlc.c
944
if (!mlc->serio[i]) {
drivers/input/serio/hil_mlc.c
946
kfree(mlc->serio[i]);
drivers/input/serio/hil_mlc.c
999
serio_unregister_port(mlc->serio[i]);
drivers/input/serio/hyperv-keyboard.c
292
static int hv_kbd_start(struct serio *serio)
drivers/input/serio/hyperv-keyboard.c
294
struct hv_kbd_dev *kbd_dev = serio->port_data;
drivers/input/serio/hyperv-keyboard.c
303
static void hv_kbd_stop(struct serio *serio)
drivers/input/serio/hyperv-keyboard.c
305
struct hv_kbd_dev *kbd_dev = serio->port_data;
drivers/input/serio/hyperv-keyboard.c
316
struct serio *hv_serio;
drivers/input/serio/hyperv-keyboard.c
91
struct serio *hv_serio;
drivers/input/serio/i8042.c
1209
} else if (i8042_ports[I8042_AUX_PORT_NO].serio) {
drivers/input/serio/i8042.c
1213
if (i8042_ports[I8042_KBD_PORT_NO].serio)
drivers/input/serio/i8042.c
1235
struct serio *serio = i8042_ports[i].serio;
drivers/input/serio/i8042.c
1237
if (serio && device_may_wakeup(&serio->dev))
drivers/input/serio/i8042.c
1258
struct serio *serio = i8042_ports[i].serio;
drivers/input/serio/i8042.c
1260
if (serio && device_may_wakeup(&serio->dev))
drivers/input/serio/i8042.c
1324
struct serio *serio;
drivers/input/serio/i8042.c
1327
serio = kzalloc_obj(*serio);
drivers/input/serio/i8042.c
1328
if (!serio)
drivers/input/serio/i8042.c
1331
serio->id.type = i8042_direct ? SERIO_8042 : SERIO_8042_XL;
drivers/input/serio/i8042.c
1332
serio->write = i8042_dumbkbd ? NULL : i8042_kbd_write;
drivers/input/serio/i8042.c
1333
serio->start = i8042_start;
drivers/input/serio/i8042.c
1334
serio->stop = i8042_stop;
drivers/input/serio/i8042.c
1335
serio->close = i8042_port_close;
drivers/input/serio/i8042.c
1336
serio->ps2_cmd_mutex = &i8042_mutex;
drivers/input/serio/i8042.c
1337
serio->port_data = port;
drivers/input/serio/i8042.c
1338
serio->dev.parent = &i8042_platform_device->dev;
drivers/input/serio/i8042.c
1339
strscpy(serio->name, "i8042 KBD port", sizeof(serio->name));
drivers/input/serio/i8042.c
1340
strscpy(serio->phys, I8042_KBD_PHYS_DESC, sizeof(serio->phys));
drivers/input/serio/i8042.c
1341
strscpy(serio->firmware_id, i8042_kbd_firmware_id,
drivers/input/serio/i8042.c
1342
sizeof(serio->firmware_id));
drivers/input/serio/i8042.c
1343
set_primary_fwnode(&serio->dev, i8042_kbd_fwnode);
drivers/input/serio/i8042.c
1345
port->serio = serio;
drivers/input/serio/i8042.c
1353
struct serio *serio;
drivers/input/serio/i8042.c
1357
serio = kzalloc_obj(*serio);
drivers/input/serio/i8042.c
1358
if (!serio)
drivers/input/serio/i8042.c
1361
serio->id.type = SERIO_8042;
drivers/input/serio/i8042.c
1362
serio->write = i8042_aux_write;
drivers/input/serio/i8042.c
1363
serio->start = i8042_start;
drivers/input/serio/i8042.c
1364
serio->stop = i8042_stop;
drivers/input/serio/i8042.c
1365
serio->ps2_cmd_mutex = &i8042_mutex;
drivers/input/serio/i8042.c
1366
serio->port_data = port;
drivers/input/serio/i8042.c
1367
serio->dev.parent = &i8042_platform_device->dev;
drivers/input/serio/i8042.c
1369
strscpy(serio->name, "i8042 AUX port", sizeof(serio->name));
drivers/input/serio/i8042.c
1370
strscpy(serio->phys, I8042_AUX_PHYS_DESC, sizeof(serio->phys));
drivers/input/serio/i8042.c
1371
strscpy(serio->firmware_id, i8042_aux_firmware_id,
drivers/input/serio/i8042.c
1372
sizeof(serio->firmware_id));
drivers/input/serio/i8042.c
1373
serio->close = i8042_port_close;
drivers/input/serio/i8042.c
1375
snprintf(serio->name, sizeof(serio->name), "i8042 AUX%d port", idx);
drivers/input/serio/i8042.c
1376
snprintf(serio->phys, sizeof(serio->phys), I8042_MUX_PHYS_DESC, idx + 1);
drivers/input/serio/i8042.c
1377
strscpy(serio->firmware_id, i8042_aux_firmware_id,
drivers/input/serio/i8042.c
1378
sizeof(serio->firmware_id));
drivers/input/serio/i8042.c
1381
port->serio = serio;
drivers/input/serio/i8042.c
1390
kfree(i8042_ports[I8042_KBD_PORT_NO].serio);
drivers/input/serio/i8042.c
1391
i8042_ports[I8042_KBD_PORT_NO].serio = NULL;
drivers/input/serio/i8042.c
1399
kfree(i8042_ports[i].serio);
drivers/input/serio/i8042.c
1400
i8042_ports[i].serio = NULL;
drivers/input/serio/i8042.c
1409
struct serio *serio = i8042_ports[i].serio;
drivers/input/serio/i8042.c
1411
if (!serio)
drivers/input/serio/i8042.c
1415
serio->name,
drivers/input/serio/i8042.c
1419
serio_register_port(serio);
drivers/input/serio/i8042.c
1428
if (i8042_ports[i].serio) {
drivers/input/serio/i8042.c
1429
serio_unregister_port(i8042_ports[i].serio);
drivers/input/serio/i8042.c
1430
i8042_ports[i].serio = NULL;
drivers/input/serio/i8042.c
1518
struct serio *serio = to_serio_port(dev);
drivers/input/serio/i8042.c
1519
struct i8042_port *port = serio->port_data;
drivers/input/serio/i8042.c
1521
if (serio != i8042_ports[I8042_KBD_PORT_NO].serio)
drivers/input/serio/i8042.c
159
struct serio *serio;
drivers/input/serio/i8042.c
344
static int i8042_kbd_write(struct serio *port, unsigned char c)
drivers/input/serio/i8042.c
364
static int i8042_aux_write(struct serio *serio, unsigned char c)
drivers/input/serio/i8042.c
366
struct i8042_port *port = serio->port_data;
drivers/input/serio/i8042.c
379
static void i8042_port_close(struct serio *serio)
drivers/input/serio/i8042.c
385
if (serio == i8042_ports[I8042_AUX_PORT_NO].serio) {
drivers/input/serio/i8042.c
418
static int i8042_start(struct serio *serio)
drivers/input/serio/i8042.c
420
struct i8042_port *port = serio->port_data;
drivers/input/serio/i8042.c
422
device_set_wakeup_capable(&serio->dev, true);
drivers/input/serio/i8042.c
432
serio == i8042_ports[I8042_KBD_PORT_NO].serio) {
drivers/input/serio/i8042.c
433
device_set_wakeup_enable(&serio->dev, true);
drivers/input/serio/i8042.c
447
static void i8042_stop(struct serio *serio)
drivers/input/serio/i8042.c
449
struct i8042_port *port = serio->port_data;
drivers/input/serio/i8042.c
453
port->serio = NULL;
drivers/input/serio/i8042.c
473
struct serio *serio)
drivers/input/serio/i8042.c
487
if (i8042_platform_filter(data, str, serio, i8042_platform_filter_context)) {
drivers/input/serio/i8042.c
560
struct serio *serio;
drivers/input/serio/i8042.c
586
serio = port->exists ? port->serio : NULL;
drivers/input/serio/i8042.c
594
filtered = i8042_filter(data, str, serio);
drivers/input/serio/i8042.c
597
if (likely(serio && !filtered))
drivers/input/serio/i8042.c
598
serio_interrupt(serio, data, dfl);
drivers/input/serio/ioc3kbd.c
127
struct serio *sk, *sa;
drivers/input/serio/ioc3kbd.c
22
struct serio *kbd, *aux;
drivers/input/serio/ioc3kbd.c
38
static int ioc3kbd_write(struct serio *dev, u8 val)
drivers/input/serio/ioc3kbd.c
52
static int ioc3kbd_start(struct serio *dev)
drivers/input/serio/ioc3kbd.c
60
static void ioc3kbd_stop(struct serio *dev)
drivers/input/serio/ioc3kbd.c
67
static int ioc3aux_write(struct serio *dev, u8 val)
drivers/input/serio/ioc3kbd.c
81
static int ioc3aux_start(struct serio *dev)
drivers/input/serio/ioc3kbd.c
89
static void ioc3aux_stop(struct serio *dev)
drivers/input/serio/ioc3kbd.c
96
static void ioc3kbd_process_data(struct serio *dev, u32 data)
drivers/input/serio/libps2.c
112
guard(serio_pause_rx)(ps2dev->serio);
drivers/input/serio/libps2.c
115
dev_dbg(&ps2dev->serio->dev, "%02x - %x\n", byte, ps2dev->nak);
drivers/input/serio/libps2.c
130
struct mutex *m = ps2dev->serio->ps2_cmd_mutex ?: &ps2dev->cmd_mutex;
drivers/input/serio/libps2.c
142
struct mutex *m = ps2dev->serio->ps2_cmd_mutex ?: &ps2dev->cmd_mutex;
drivers/input/serio/libps2.c
162
scoped_guard(serio_pause_rx, ps2dev->serio) {
drivers/input/serio/libps2.c
224
scoped_guard(serio_pause_rx, ps2dev->serio)
drivers/input/serio/libps2.c
235
scoped_guard(serio_pause_rx, ps2dev->serio)
drivers/input/serio/libps2.c
283
serio_pause_rx(ps2dev->serio);
drivers/input/serio/libps2.c
333
serio_continue_rx(ps2dev->serio);
drivers/input/serio/libps2.c
350
serio_pause_rx(ps2dev->serio);
drivers/input/serio/libps2.c
368
serio_continue_rx(ps2dev->serio);
drivers/input/serio/libps2.c
370
dev_dbg(&ps2dev->serio->dev,
drivers/input/serio/libps2.c
439
dev_dbg(&ps2dev->serio->dev, "%02x - %d\n", command, retval);
drivers/input/serio/libps2.c
454
void ps2_init(struct ps2dev *ps2dev, struct serio *serio,
drivers/input/serio/libps2.c
46
__releases(&ps2dev->serio->lock) __acquires(&ps2dev->serio->lock)
drivers/input/serio/libps2.c
462
lockdep_set_subclass(&ps2dev->cmd_mutex, serio->depth);
drivers/input/serio/libps2.c
464
ps2dev->serio = serio;
drivers/input/serio/libps2.c
465
serio_set_drvdata(serio, ps2dev);
drivers/input/serio/libps2.c
51
lockdep_assert_held(&ps2dev->serio->lock);
drivers/input/serio/libps2.c
544
dev_dbg(&ps2dev->serio->dev, "unexpected %#02x\n", data);
drivers/input/serio/libps2.c
57
serio_continue_rx(ps2dev->serio);
drivers/input/serio/libps2.c
59
error = serio_write(ps2dev->serio, byte);
drivers/input/serio/libps2.c
591
irqreturn_t ps2_interrupt(struct serio *serio, u8 data, unsigned int flags) {
drivers/input/serio/libps2.c
592
struct ps2dev *ps2dev = serio_get_drvdata(serio);
drivers/input/serio/libps2.c
61
dev_dbg(&ps2dev->serio->dev,
drivers/input/serio/libps2.c
68
serio_pause_rx(ps2dev->serio);
drivers/input/serio/libps2.c
90
dev_dbg(&ps2dev->serio->dev,
drivers/input/serio/maceps2.c
106
static void maceps2_close(struct serio *dev)
drivers/input/serio/maceps2.c
116
static struct serio *maceps2_allocate_port(int idx)
drivers/input/serio/maceps2.c
118
struct serio *serio;
drivers/input/serio/maceps2.c
120
serio = kzalloc_obj(*serio);
drivers/input/serio/maceps2.c
121
if (serio) {
drivers/input/serio/maceps2.c
122
serio->id.type = SERIO_8042;
drivers/input/serio/maceps2.c
123
serio->write = maceps2_write;
drivers/input/serio/maceps2.c
124
serio->open = maceps2_open;
drivers/input/serio/maceps2.c
125
serio->close = maceps2_close;
drivers/input/serio/maceps2.c
126
snprintf(serio->name, sizeof(serio->name), "MACE PS/2 port%d", idx);
drivers/input/serio/maceps2.c
127
snprintf(serio->phys, sizeof(serio->phys), "mace/serio%d", idx);
drivers/input/serio/maceps2.c
128
serio->port_data = &port_data[idx];
drivers/input/serio/maceps2.c
129
serio->dev.parent = &maceps2_device->dev;
drivers/input/serio/maceps2.c
132
return serio;
drivers/input/serio/maceps2.c
52
static struct serio *maceps2_port[2];
drivers/input/serio/maceps2.c
55
static int maceps2_write(struct serio *dev, unsigned char val)
drivers/input/serio/maceps2.c
73
struct serio *dev = dev_id;
drivers/input/serio/maceps2.c
85
static int maceps2_open(struct serio *dev)
drivers/input/serio/olpc_apsp.c
105
struct serio *serio;
drivers/input/serio/olpc_apsp.c
121
serio = priv->kbio;
drivers/input/serio/olpc_apsp.c
123
serio = priv->padio;
drivers/input/serio/olpc_apsp.c
125
serio_interrupt(serio, w & DATA_MASK, 0);
drivers/input/serio/olpc_apsp.c
135
static int olpc_apsp_open(struct serio *port)
drivers/input/serio/olpc_apsp.c
156
static void olpc_apsp_close(struct serio *port)
drivers/input/serio/olpc_apsp.c
170
struct serio *kb_serio, *pad_serio;
drivers/input/serio/olpc_apsp.c
65
struct serio *kbio;
drivers/input/serio/olpc_apsp.c
66
struct serio *padio;
drivers/input/serio/olpc_apsp.c
72
static int olpc_apsp_write(struct serio *port, unsigned char val)
drivers/input/serio/parkbd.c
164
static struct serio *parkbd_allocate_serio(void)
drivers/input/serio/parkbd.c
166
struct serio *serio;
drivers/input/serio/parkbd.c
168
serio = kzalloc_obj(*serio);
drivers/input/serio/parkbd.c
169
if (serio) {
drivers/input/serio/parkbd.c
170
serio->id.type = parkbd_mode;
drivers/input/serio/parkbd.c
171
serio->write = parkbd_write;
drivers/input/serio/parkbd.c
172
strscpy(serio->name, "PARKBD AT/XT keyboard adapter", sizeof(serio->name));
drivers/input/serio/parkbd.c
173
snprintf(serio->phys, sizeof(serio->phys), "%s/serio0", parkbd_dev->port->name);
drivers/input/serio/parkbd.c
176
return serio;
drivers/input/serio/parkbd.c
71
static struct serio *parkbd_port;
drivers/input/serio/parkbd.c
83
static int parkbd_write(struct serio *port, unsigned char c)
drivers/input/serio/pcips2.c
117
static void pcips2_close(struct serio *io)
drivers/input/serio/pcips2.c
129
struct serio *serio;
drivers/input/serio/pcips2.c
141
serio = kzalloc_obj(*serio);
drivers/input/serio/pcips2.c
142
if (!ps2if || !serio) {
drivers/input/serio/pcips2.c
148
serio->id.type = SERIO_8042;
drivers/input/serio/pcips2.c
149
serio->write = pcips2_write;
drivers/input/serio/pcips2.c
150
serio->open = pcips2_open;
drivers/input/serio/pcips2.c
151
serio->close = pcips2_close;
drivers/input/serio/pcips2.c
152
strscpy(serio->name, pci_name(dev), sizeof(serio->name));
drivers/input/serio/pcips2.c
153
strscpy(serio->phys, dev_name(&dev->dev), sizeof(serio->phys));
drivers/input/serio/pcips2.c
154
serio->port_data = ps2if;
drivers/input/serio/pcips2.c
155
serio->dev.parent = &dev->dev;
drivers/input/serio/pcips2.c
156
ps2if->io = serio;
drivers/input/serio/pcips2.c
167
kfree(serio);
drivers/input/serio/pcips2.c
38
struct serio *io;
drivers/input/serio/pcips2.c
43
static int pcips2_write(struct serio *io, unsigned char val)
drivers/input/serio/pcips2.c
99
static int pcips2_open(struct serio *io)
drivers/input/serio/ps2-gpio.c
107
static void ps2_gpio_close(struct serio *serio)
drivers/input/serio/ps2-gpio.c
109
struct ps2_gpio_data *drvdata = serio->port_data;
drivers/input/serio/ps2-gpio.c
115
static int __ps2_gpio_write(struct serio *serio, unsigned char val)
drivers/input/serio/ps2-gpio.c
117
struct ps2_gpio_data *drvdata = serio->port_data;
drivers/input/serio/ps2-gpio.c
130
static int ps2_gpio_write(struct serio *serio, unsigned char val)
drivers/input/serio/ps2-gpio.c
132
struct ps2_gpio_data *drvdata = serio->port_data;
drivers/input/serio/ps2-gpio.c
138
__ps2_gpio_write(serio, val);
drivers/input/serio/ps2-gpio.c
143
__ps2_gpio_write(serio, val);
drivers/input/serio/ps2-gpio.c
247
serio_interrupt(drvdata->serio, byte, rxflags);
drivers/input/serio/ps2-gpio.c
263
__ps2_gpio_write(drvdata->serio, PS2_CMD_RESEND);
drivers/input/serio/ps2-gpio.c
358
__ps2_gpio_write(drvdata->serio, drvdata->tx.byte);
drivers/input/serio/ps2-gpio.c
403
struct serio *serio;
drivers/input/serio/ps2-gpio.c
408
serio = kzalloc_obj(*serio);
drivers/input/serio/ps2-gpio.c
409
if (!drvdata || !serio) {
drivers/input/serio/ps2-gpio.c
440
serio->id.type = SERIO_8042;
drivers/input/serio/ps2-gpio.c
441
serio->open = ps2_gpio_open;
drivers/input/serio/ps2-gpio.c
442
serio->close = ps2_gpio_close;
drivers/input/serio/ps2-gpio.c
447
serio->write = drvdata->write_enable ? ps2_gpio_write : NULL;
drivers/input/serio/ps2-gpio.c
448
serio->port_data = drvdata;
drivers/input/serio/ps2-gpio.c
449
serio->dev.parent = dev;
drivers/input/serio/ps2-gpio.c
450
strscpy(serio->name, dev_name(dev), sizeof(serio->name));
drivers/input/serio/ps2-gpio.c
451
strscpy(serio->phys, dev_name(dev), sizeof(serio->phys));
drivers/input/serio/ps2-gpio.c
453
drvdata->serio = serio;
drivers/input/serio/ps2-gpio.c
467
serio_register_port(serio);
drivers/input/serio/ps2-gpio.c
473
kfree(serio);
drivers/input/serio/ps2-gpio.c
481
serio_unregister_port(drvdata->serio);
drivers/input/serio/ps2-gpio.c
73
struct serio *serio;
drivers/input/serio/ps2-gpio.c
96
static int ps2_gpio_open(struct serio *serio)
drivers/input/serio/ps2-gpio.c
98
struct ps2_gpio_data *drvdata = serio->port_data;
drivers/input/serio/ps2mult.c
100
struct ps2mult *psm = serio_get_drvdata(serio->parent);
drivers/input/serio/ps2mult.c
101
struct ps2mult_port *port = serio->port_data;
drivers/input/serio/ps2mult.c
110
static void ps2mult_serio_stop(struct serio *serio)
drivers/input/serio/ps2mult.c
112
struct ps2mult *psm = serio_get_drvdata(serio->parent);
drivers/input/serio/ps2mult.c
113
struct ps2mult_port *port = serio->port_data;
drivers/input/serio/ps2mult.c
122
struct serio *mx_serio = psm->mx_serio;
drivers/input/serio/ps2mult.c
123
struct serio *serio;
drivers/input/serio/ps2mult.c
125
serio = kzalloc_obj(*serio);
drivers/input/serio/ps2mult.c
126
if (!serio)
drivers/input/serio/ps2mult.c
129
strscpy(serio->name, "TQC PS/2 Multiplexer", sizeof(serio->name));
drivers/input/serio/ps2mult.c
130
snprintf(serio->phys, sizeof(serio->phys),
drivers/input/serio/ps2mult.c
132
serio->id.type = SERIO_8042;
drivers/input/serio/ps2mult.c
133
serio->write = ps2mult_serio_write;
drivers/input/serio/ps2mult.c
134
serio->start = ps2mult_serio_start;
drivers/input/serio/ps2mult.c
135
serio->stop = ps2mult_serio_stop;
drivers/input/serio/ps2mult.c
136
serio->parent = psm->mx_serio;
drivers/input/serio/ps2mult.c
137
serio->port_data = &psm->ports[i];
drivers/input/serio/ps2mult.c
139
psm->ports[i].serio = serio;
drivers/input/serio/ps2mult.c
154
static int ps2mult_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/serio/ps2mult.c
160
if (!serio->write)
drivers/input/serio/ps2mult.c
168
psm->mx_serio = serio;
drivers/input/serio/ps2mult.c
179
serio_set_drvdata(serio, psm);
drivers/input/serio/ps2mult.c
180
error = serio_open(serio, drv);
drivers/input/serio/ps2mult.c
187
struct serio *s = psm->ports[i].serio;
drivers/input/serio/ps2mult.c
189
dev_info(&serio->dev, "%s port at %s\n", s->name, serio->phys);
drivers/input/serio/ps2mult.c
197
kfree(psm->ports[i].serio);
drivers/input/serio/ps2mult.c
202
static void ps2mult_disconnect(struct serio *serio)
drivers/input/serio/ps2mult.c
204
struct ps2mult *psm = serio_get_drvdata(serio);
drivers/input/serio/ps2mult.c
207
serio_write(serio, PS2MULT_SESSION_END);
drivers/input/serio/ps2mult.c
208
serio_close(serio);
drivers/input/serio/ps2mult.c
211
serio_set_drvdata(serio, NULL);
drivers/input/serio/ps2mult.c
214
static int ps2mult_reconnect(struct serio *serio)
drivers/input/serio/ps2mult.c
216
struct ps2mult *psm = serio_get_drvdata(serio);
drivers/input/serio/ps2mult.c
223
static irqreturn_t ps2mult_interrupt(struct serio *serio,
drivers/input/serio/ps2mult.c
226
struct ps2mult *psm = serio_get_drvdata(serio);
drivers/input/serio/ps2mult.c
229
dev_dbg(&serio->dev, "Received %02x flags %02x\n", data, dfl);
drivers/input/serio/ps2mult.c
237
serio_interrupt(in_port->serio, data, dfl);
drivers/input/serio/ps2mult.c
243
dev_dbg(&serio->dev, "ESCAPE\n");
drivers/input/serio/ps2mult.c
248
dev_dbg(&serio->dev, "BSYNC\n");
drivers/input/serio/ps2mult.c
253
dev_dbg(&serio->dev, "SS\n");
drivers/input/serio/ps2mult.c
257
dev_dbg(&serio->dev, "SE\n");
drivers/input/serio/ps2mult.c
26
struct serio *serio;
drivers/input/serio/ps2mult.c
261
dev_dbg(&serio->dev, "KB\n");
drivers/input/serio/ps2mult.c
266
dev_dbg(&serio->dev, "MS\n");
drivers/input/serio/ps2mult.c
273
serio_interrupt(in_port->serio, data, dfl);
drivers/input/serio/ps2mult.c
36
struct serio *mx_serio;
drivers/input/serio/ps2mult.c
62
MODULE_DEVICE_TABLE(serio, ps2mult_serio_ids);
drivers/input/serio/ps2mult.c
66
struct serio *mx_serio = psm->mx_serio;
drivers/input/serio/ps2mult.c
73
static int ps2mult_serio_write(struct serio *serio, unsigned char data)
drivers/input/serio/ps2mult.c
75
struct serio *mx_port = serio->parent;
drivers/input/serio/ps2mult.c
77
struct ps2mult_port *port = serio->port_data;
drivers/input/serio/ps2mult.c
87
dev_dbg(&serio->dev,
drivers/input/serio/ps2mult.c
98
static int ps2mult_serio_start(struct serio *serio)
drivers/input/serio/q40kbd.c
102
struct serio *port;
drivers/input/serio/q40kbd.c
35
struct serio *port;
drivers/input/serio/q40kbd.c
78
static int q40kbd_open(struct serio *port)
drivers/input/serio/q40kbd.c
91
static void q40kbd_close(struct serio *port)
drivers/input/serio/rpckbd.c
100
struct serio *serio;
drivers/input/serio/rpckbd.c
111
serio = kzalloc_obj(*serio);
drivers/input/serio/rpckbd.c
113
if (!serio || !rpckbd) {
drivers/input/serio/rpckbd.c
115
kfree(serio);
drivers/input/serio/rpckbd.c
122
serio->id.type = SERIO_8042;
drivers/input/serio/rpckbd.c
123
serio->write = rpckbd_write;
drivers/input/serio/rpckbd.c
124
serio->open = rpckbd_open;
drivers/input/serio/rpckbd.c
125
serio->close = rpckbd_close;
drivers/input/serio/rpckbd.c
126
serio->dev.parent = &dev->dev;
drivers/input/serio/rpckbd.c
127
serio->port_data = rpckbd;
drivers/input/serio/rpckbd.c
128
strscpy(serio->name, "RiscPC PS/2 kbd port", sizeof(serio->name));
drivers/input/serio/rpckbd.c
129
strscpy(serio->phys, "rpckbd/serio0", sizeof(serio->phys));
drivers/input/serio/rpckbd.c
131
platform_set_drvdata(dev, serio);
drivers/input/serio/rpckbd.c
132
serio_register_port(serio);
drivers/input/serio/rpckbd.c
138
struct serio *serio = platform_get_drvdata(dev);
drivers/input/serio/rpckbd.c
139
struct rpckbd_data *rpckbd = serio->port_data;
drivers/input/serio/rpckbd.c
141
serio_unregister_port(serio);
drivers/input/serio/rpckbd.c
32
static int rpckbd_write(struct serio *port, unsigned char val)
drivers/input/serio/rpckbd.c
44
struct serio *port = dev_id;
drivers/input/serio/rpckbd.c
62
static int rpckbd_open(struct serio *port)
drivers/input/serio/rpckbd.c
85
static void rpckbd_close(struct serio *port)
drivers/input/serio/sa1111ps2.c
113
static int ps2_write(struct serio *io, unsigned char val)
drivers/input/serio/sa1111ps2.c
138
static int ps2_open(struct serio *io)
drivers/input/serio/sa1111ps2.c
174
static void ps2_close(struct serio *io)
drivers/input/serio/sa1111ps2.c
254
struct serio *serio;
drivers/input/serio/sa1111ps2.c
258
serio = kzalloc_obj(*serio);
drivers/input/serio/sa1111ps2.c
259
if (!ps2if || !serio) {
drivers/input/serio/sa1111ps2.c
264
serio->id.type = SERIO_8042;
drivers/input/serio/sa1111ps2.c
265
serio->write = ps2_write;
drivers/input/serio/sa1111ps2.c
266
serio->open = ps2_open;
drivers/input/serio/sa1111ps2.c
267
serio->close = ps2_close;
drivers/input/serio/sa1111ps2.c
268
strscpy(serio->name, dev_name(&dev->dev), sizeof(serio->name));
drivers/input/serio/sa1111ps2.c
269
strscpy(serio->phys, dev_name(&dev->dev), sizeof(serio->phys));
drivers/input/serio/sa1111ps2.c
270
serio->port_data = ps2if;
drivers/input/serio/sa1111ps2.c
271
serio->dev.parent = &dev->dev;
drivers/input/serio/sa1111ps2.c
272
ps2if->io = serio;
drivers/input/serio/sa1111ps2.c
338
kfree(serio);
drivers/input/serio/sa1111ps2.c
44
struct serio *io;
drivers/input/serio/serio.c
100
serio_disconnect_driver(serio);
drivers/input/serio/serio.c
101
serio->dev.driver = NULL;
drivers/input/serio/serio.c
108
static void serio_find_driver(struct serio *serio)
drivers/input/serio/serio.c
112
error = device_attach(&serio->dev);
drivers/input/serio/serio.c
114
dev_warn(&serio->dev,
drivers/input/serio/serio.c
116
serio->phys, serio->name, error);
drivers/input/serio/serio.c
294
static struct serio *serio_get_pending_child(struct serio *parent)
drivers/input/serio/serio.c
297
struct serio *serio;
drivers/input/serio/serio.c
303
serio = event->object;
drivers/input/serio/serio.c
304
if (serio->parent == parent)
drivers/input/serio/serio.c
305
return serio;
drivers/input/serio/serio.c
318
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
319
return sprintf(buf, "%s\n", serio->name);
drivers/input/serio/serio.c
324
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
327
serio->id.type, serio->id.proto, serio->id.id, serio->id.extra);
drivers/input/serio/serio.c
332
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
333
return sprintf(buf, "%02x\n", serio->id.type);
drivers/input/serio/serio.c
338
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
339
return sprintf(buf, "%02x\n", serio->id.proto);
drivers/input/serio/serio.c
34
static void serio_add_port(struct serio *serio);
drivers/input/serio/serio.c
344
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
345
return sprintf(buf, "%02x\n", serio->id.id);
drivers/input/serio/serio.c
35
static int serio_reconnect_port(struct serio *serio);
drivers/input/serio/serio.c
350
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
351
return sprintf(buf, "%02x\n", serio->id.extra);
drivers/input/serio/serio.c
356
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
36
static void serio_disconnect_port(struct serio *serio);
drivers/input/serio/serio.c
362
serio_disconnect_port(serio);
drivers/input/serio/serio.c
364
serio_reconnect_subtree(serio);
drivers/input/serio/serio.c
366
serio_disconnect_port(serio);
drivers/input/serio/serio.c
367
serio_find_driver(serio);
drivers/input/serio/serio.c
368
serio_remove_duplicate_events(serio, SERIO_RESCAN_PORT);
drivers/input/serio/serio.c
37
static void serio_reconnect_subtree(struct serio *serio);
drivers/input/serio/serio.c
370
serio_disconnect_port(serio);
drivers/input/serio/serio.c
371
error = serio_bind_driver(serio, to_serio_driver(drv));
drivers/input/serio/serio.c
372
serio_remove_duplicate_events(serio, SERIO_RESCAN_PORT);
drivers/input/serio/serio.c
385
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
386
return sprintf(buf, "%s\n", serio->manual_bind ? "manual" : "auto");
drivers/input/serio/serio.c
391
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
396
serio->manual_bind = true;
drivers/input/serio/serio.c
398
serio->manual_bind = false;
drivers/input/serio/serio.c
40
static int serio_connect_driver(struct serio *serio, struct serio_driver *drv)
drivers/input/serio/serio.c
408
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
410
return sprintf(buf, "%s\n", serio->firmware_id);
drivers/input/serio/serio.c
42
guard(mutex)(&serio->drv_mutex);
drivers/input/serio/serio.c
44
return drv->connect(serio, drv);
drivers/input/serio/serio.c
458
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
460
kfree(serio);
drivers/input/serio/serio.c
467
static void serio_init_port(struct serio *serio)
drivers/input/serio/serio.c
47
static int serio_reconnect_driver(struct serio *serio)
drivers/input/serio/serio.c
473
INIT_LIST_HEAD(&serio->node);
drivers/input/serio/serio.c
474
INIT_LIST_HEAD(&serio->child_node);
drivers/input/serio/serio.c
475
INIT_LIST_HEAD(&serio->children);
drivers/input/serio/serio.c
476
spin_lock_init(&serio->lock);
drivers/input/serio/serio.c
477
mutex_init(&serio->drv_mutex);
drivers/input/serio/serio.c
478
device_initialize(&serio->dev);
drivers/input/serio/serio.c
479
dev_set_name(&serio->dev, "serio%lu",
drivers/input/serio/serio.c
481
serio->dev.bus = &serio_bus;
drivers/input/serio/serio.c
482
serio->dev.release = serio_release_port;
drivers/input/serio/serio.c
483
serio->dev.groups = serio_device_attr_groups;
drivers/input/serio/serio.c
484
if (serio->parent) {
drivers/input/serio/serio.c
485
serio->dev.parent = &serio->parent->dev;
drivers/input/serio/serio.c
486
serio->depth = serio->parent->depth + 1;
drivers/input/serio/serio.c
488
serio->depth = 0;
drivers/input/serio/serio.c
489
lockdep_set_subclass(&serio->lock, serio->depth);
drivers/input/serio/serio.c
49
guard(mutex)(&serio->drv_mutex);
drivers/input/serio/serio.c
496
static void serio_add_port(struct serio *serio)
drivers/input/serio/serio.c
498
struct serio *parent = serio->parent;
drivers/input/serio/serio.c
504
list_add_tail(&serio->child_node, &parent->children);
drivers/input/serio/serio.c
507
list_add_tail(&serio->node, &serio_list);
drivers/input/serio/serio.c
509
if (serio->start)
drivers/input/serio/serio.c
51
if (serio->drv && serio->drv->reconnect)
drivers/input/serio/serio.c
510
serio->start(serio);
drivers/input/serio/serio.c
512
error = device_add(&serio->dev);
drivers/input/serio/serio.c
514
dev_err(&serio->dev,
drivers/input/serio/serio.c
516
serio->phys, serio->name, error);
drivers/input/serio/serio.c
52
return serio->drv->reconnect(serio);
drivers/input/serio/serio.c
523
static void serio_destroy_port(struct serio *serio)
drivers/input/serio/serio.c
525
struct serio *child;
drivers/input/serio/serio.c
527
while ((child = serio_get_pending_child(serio)) != NULL) {
drivers/input/serio/serio.c
532
if (serio->stop)
drivers/input/serio/serio.c
533
serio->stop(serio);
drivers/input/serio/serio.c
535
if (serio->parent) {
drivers/input/serio/serio.c
536
guard(serio_pause_rx)(serio->parent);
drivers/input/serio/serio.c
538
list_del_init(&serio->child_node);
drivers/input/serio/serio.c
539
serio->parent = NULL;
drivers/input/serio/serio.c
542
if (device_is_registered(&serio->dev))
drivers/input/serio/serio.c
543
device_del(&serio->dev);
drivers/input/serio/serio.c
545
list_del_init(&serio->node);
drivers/input/serio/serio.c
546
serio_remove_pending_events(serio);
drivers/input/serio/serio.c
547
put_device(&serio->dev);
drivers/input/serio/serio.c
556
static int serio_reconnect_port(struct serio *serio)
drivers/input/serio/serio.c
558
int error = serio_reconnect_driver(serio);
drivers/input/serio/serio.c
561
serio_disconnect_port(serio);
drivers/input/serio/serio.c
562
serio_find_driver(serio);
drivers/input/serio/serio.c
57
static void serio_disconnect_driver(struct serio *serio)
drivers/input/serio/serio.c
572
static void serio_reconnect_subtree(struct serio *root)
drivers/input/serio/serio.c
574
struct serio *s = root;
drivers/input/serio/serio.c
586
struct serio, child_node);
drivers/input/serio/serio.c
59
guard(mutex)(&serio->drv_mutex);
drivers/input/serio/serio.c
597
struct serio *parent = s->parent;
drivers/input/serio/serio.c
601
struct serio, child_node);
drivers/input/serio/serio.c
61
if (serio->drv)
drivers/input/serio/serio.c
614
static void serio_disconnect_port(struct serio *serio)
drivers/input/serio/serio.c
616
struct serio *s = serio;
drivers/input/serio/serio.c
62
serio->drv->disconnect(serio);
drivers/input/serio/serio.c
622
while (!list_empty(&serio->children)) {
drivers/input/serio/serio.c
627
struct serio, child_node);
drivers/input/serio/serio.c
633
if (s != serio) {
drivers/input/serio/serio.c
634
struct serio *parent = s->parent;
drivers/input/serio/serio.c
646
device_release_driver(&serio->dev);
drivers/input/serio/serio.c
649
void serio_rescan(struct serio *serio)
drivers/input/serio/serio.c
65
static int serio_match_port(const struct serio_device_id *ids, struct serio *serio)
drivers/input/serio/serio.c
651
serio_queue_event(serio, NULL, SERIO_RESCAN_PORT);
drivers/input/serio/serio.c
655
void serio_reconnect(struct serio *serio)
drivers/input/serio/serio.c
657
serio_queue_event(serio, NULL, SERIO_RECONNECT_SUBTREE);
drivers/input/serio/serio.c
665
void __serio_register_port(struct serio *serio, struct module *owner)
drivers/input/serio/serio.c
667
serio_init_port(serio);
drivers/input/serio/serio.c
668
serio_queue_event(serio, owner, SERIO_REGISTER_PORT);
drivers/input/serio/serio.c
675
void serio_unregister_port(struct serio *serio)
drivers/input/serio/serio.c
679
serio_disconnect_port(serio);
drivers/input/serio/serio.c
68
if ((ids->type == SERIO_ANY || ids->type == serio->id.type) &&
drivers/input/serio/serio.c
680
serio_destroy_port(serio);
drivers/input/serio/serio.c
687
void serio_unregister_child_port(struct serio *serio)
drivers/input/serio/serio.c
689
struct serio *s, *next;
drivers/input/serio/serio.c
69
(ids->proto == SERIO_ANY || ids->proto == serio->id.proto) &&
drivers/input/serio/serio.c
693
list_for_each_entry_safe(s, next, &serio->children, child_node) {
drivers/input/serio/serio.c
70
(ids->extra == SERIO_ANY || ids->extra == serio->id.extra) &&
drivers/input/serio/serio.c
71
(ids->id == SERIO_ANY || ids->id == serio->id.id))
drivers/input/serio/serio.c
745
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
748
return serio_connect_driver(serio, drv);
drivers/input/serio/serio.c
753
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
755
serio_disconnect_driver(serio);
drivers/input/serio/serio.c
758
static void serio_cleanup(struct serio *serio)
drivers/input/serio/serio.c
760
guard(mutex)(&serio->drv_mutex);
drivers/input/serio/serio.c
762
if (serio->drv && serio->drv->cleanup)
drivers/input/serio/serio.c
763
serio->drv->cleanup(serio);
drivers/input/serio/serio.c
768
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
770
serio_cleanup(serio);
drivers/input/serio/serio.c
82
static int serio_bind_driver(struct serio *serio, struct serio_driver *drv)
drivers/input/serio/serio.c
824
struct serio *serio;
drivers/input/serio/serio.c
832
list_for_each_entry(serio, &serio_list, node) {
drivers/input/serio/serio.c
833
if (serio->drv == drv) {
drivers/input/serio/serio.c
834
serio_disconnect_port(serio);
drivers/input/serio/serio.c
835
serio_find_driver(serio);
drivers/input/serio/serio.c
845
static void serio_set_drv(struct serio *serio, struct serio_driver *drv)
drivers/input/serio/serio.c
847
guard(serio_pause_rx)(serio);
drivers/input/serio/serio.c
849
serio->drv = drv;
drivers/input/serio/serio.c
854
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
857
if (serio->manual_bind || serio_drv->manual_bind)
drivers/input/serio/serio.c
86
if (serio_match_port(drv->id_table, serio)) {
drivers/input/serio/serio.c
860
return serio_match_port(serio_drv->id_table, serio);
drivers/input/serio/serio.c
872
const struct serio *serio;
drivers/input/serio/serio.c
877
serio = to_serio_port(dev);
drivers/input/serio/serio.c
879
SERIO_ADD_UEVENT_VAR("SERIO_TYPE=%02x", serio->id.type);
drivers/input/serio/serio.c
88
serio->dev.driver = &drv->driver;
drivers/input/serio/serio.c
880
SERIO_ADD_UEVENT_VAR("SERIO_PROTO=%02x", serio->id.proto);
drivers/input/serio/serio.c
881
SERIO_ADD_UEVENT_VAR("SERIO_ID=%02x", serio->id.id);
drivers/input/serio/serio.c
882
SERIO_ADD_UEVENT_VAR("SERIO_EXTRA=%02x", serio->id.extra);
drivers/input/serio/serio.c
885
serio->id.type, serio->id.proto, serio->id.id, serio->id.extra);
drivers/input/serio/serio.c
887
if (serio->firmware_id[0])
drivers/input/serio/serio.c
889
serio->firmware_id);
drivers/input/serio/serio.c
89
if (serio_connect_driver(serio, drv)) {
drivers/input/serio/serio.c
898
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
90
serio->dev.driver = NULL;
drivers/input/serio/serio.c
900
serio_cleanup(serio);
drivers/input/serio/serio.c
907
struct serio *serio = to_serio_port(dev);
drivers/input/serio/serio.c
910
scoped_guard(mutex, &serio->drv_mutex) {
drivers/input/serio/serio.c
911
if (serio->drv && serio->drv->fast_reconnect) {
drivers/input/serio/serio.c
912
error = serio->drv->fast_reconnect(serio);
drivers/input/serio/serio.c
924
serio_queue_event(serio, NULL, SERIO_RECONNECT_PORT);
drivers/input/serio/serio.c
939
int serio_open(struct serio *serio, struct serio_driver *drv)
drivers/input/serio/serio.c
94
error = device_bind_driver(&serio->dev);
drivers/input/serio/serio.c
941
serio_set_drv(serio, drv);
drivers/input/serio/serio.c
943
if (serio->open && serio->open(serio)) {
drivers/input/serio/serio.c
944
serio_set_drv(serio, NULL);
drivers/input/serio/serio.c
952
void serio_close(struct serio *serio)
drivers/input/serio/serio.c
954
if (serio->close)
drivers/input/serio/serio.c
955
serio->close(serio);
drivers/input/serio/serio.c
957
serio_set_drv(serio, NULL);
drivers/input/serio/serio.c
96
dev_warn(&serio->dev,
drivers/input/serio/serio.c
961
irqreturn_t serio_interrupt(struct serio *serio,
drivers/input/serio/serio.c
964
guard(spinlock_irqsave)(&serio->lock);
drivers/input/serio/serio.c
966
if (likely(serio->drv))
drivers/input/serio/serio.c
967
return serio->drv->interrupt(serio, data, dfl);
drivers/input/serio/serio.c
969
if (!dfl && device_is_registered(&serio->dev)) {
drivers/input/serio/serio.c
970
serio_rescan(serio);
drivers/input/serio/serio.c
98
serio->phys, serio->name,
drivers/input/serio/serio_raw.c
110
put_device(&serio_raw->serio->dev);
drivers/input/serio/serio_raw.c
119
scoped_guard(serio_pause_rx, serio_raw->serio)
drivers/input/serio/serio_raw.c
131
guard(serio_pause_rx)(serio_raw->serio);
drivers/input/serio/serio_raw.c
202
if (serio_write(serio_raw->serio, c)) {
drivers/input/serio/serio_raw.c
247
static irqreturn_t serio_raw_interrupt(struct serio *serio, unsigned char data,
drivers/input/serio/serio_raw.c
250
struct serio_raw *serio_raw = serio_get_drvdata(serio);
drivers/input/serio/serio_raw.c
267
static int serio_raw_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/serio/serio_raw.c
275
dev_dbg(&serio->dev, "can't allocate memory for a device\n");
drivers/input/serio/serio_raw.c
285
serio_raw->serio = serio;
drivers/input/serio/serio_raw.c
286
get_device(&serio->dev);
drivers/input/serio/serio_raw.c
288
serio_set_drvdata(serio, serio_raw);
drivers/input/serio/serio_raw.c
290
err = serio_open(serio, drv);
drivers/input/serio/serio_raw.c
303
serio_raw->dev.parent = &serio->dev;
drivers/input/serio/serio_raw.c
313
dev_err(&serio->dev,
drivers/input/serio/serio_raw.c
315
serio->phys);
drivers/input/serio/serio_raw.c
319
dev_info(&serio->dev, "raw access enabled on %s (%s, minor %d)\n",
drivers/input/serio/serio_raw.c
320
serio->phys, serio_raw->name, serio_raw->dev.minor);
drivers/input/serio/serio_raw.c
326
serio_close(serio);
drivers/input/serio/serio_raw.c
328
serio_set_drvdata(serio, NULL);
drivers/input/serio/serio_raw.c
333
static int serio_raw_reconnect(struct serio *serio)
drivers/input/serio/serio_raw.c
335
struct serio_raw *serio_raw = serio_get_drvdata(serio);
drivers/input/serio/serio_raw.c
336
struct serio_driver *drv = serio->drv;
drivers/input/serio/serio_raw.c
339
dev_dbg(&serio->dev,
drivers/input/serio/serio_raw.c
34
struct serio *serio;
drivers/input/serio/serio_raw.c
359
scoped_guard(serio_pause_rx, serio_raw->serio) {
drivers/input/serio/serio_raw.c
368
static void serio_raw_disconnect(struct serio *serio)
drivers/input/serio/serio_raw.c
370
struct serio_raw *serio_raw = serio_get_drvdata(serio);
drivers/input/serio/serio_raw.c
381
serio_close(serio);
drivers/input/serio/serio_raw.c
384
serio_set_drvdata(serio, NULL);
drivers/input/serio/serio_raw.c
403
MODULE_DEVICE_TABLE(serio, serio_raw_serio_ids);
drivers/input/serio/serio_raw.c
96
scoped_guard(serio_pause_rx, serio_raw->serio)
drivers/input/serio/serport.c
142
serio_interrupt(serport->serio, cp[i], ch_flags);
drivers/input/serio/serport.c
157
struct serio *serio;
drivers/input/serio/serport.c
162
serport->serio = serio = kzalloc_obj(*serio);
drivers/input/serio/serport.c
163
if (!serio)
drivers/input/serio/serport.c
166
strscpy(serio->name, "Serial port", sizeof(serio->name));
drivers/input/serio/serport.c
167
snprintf(serio->phys, sizeof(serio->phys), "%s/serio0", tty_name(tty));
drivers/input/serio/serport.c
168
serio->id = serport->id;
drivers/input/serio/serport.c
169
serio->id.type = SERIO_RS232;
drivers/input/serio/serport.c
170
serio->write = serport_serio_write;
drivers/input/serio/serport.c
171
serio->open = serport_serio_open;
drivers/input/serio/serport.c
172
serio->close = serport_serio_close;
drivers/input/serio/serport.c
173
serio->port_data = serport;
drivers/input/serio/serport.c
174
serio->dev.parent = tty->dev;
drivers/input/serio/serport.c
176
serio_register_port(serport->serio);
drivers/input/serio/serport.c
180
serio_unregister_port(serport->serio);
drivers/input/serio/serport.c
181
serport->serio = NULL;
drivers/input/serio/serport.c
255
serio_drv_write_wakeup(serport->serio);
drivers/input/serio/serport.c
34
struct serio *serio;
drivers/input/serio/serport.c
44
static int serport_serio_write(struct serio *serio, unsigned char data)
drivers/input/serio/serport.c
46
struct serport *serport = serio->port_data;
drivers/input/serio/serport.c
50
static int serport_serio_open(struct serio *serio)
drivers/input/serio/serport.c
52
struct serport *serport = serio->port_data;
drivers/input/serio/serport.c
61
static void serport_serio_close(struct serio *serio)
drivers/input/serio/serport.c
63
struct serport *serport = serio->port_data;
drivers/input/serio/sun4i-ps2.c
130
serio_interrupt(drvdata->serio, byte, rxflags);
drivers/input/serio/sun4i-ps2.c
139
static int sun4i_ps2_open(struct serio *serio)
drivers/input/serio/sun4i-ps2.c
141
struct sun4i_ps2data *drvdata = serio->port_data;
drivers/input/serio/sun4i-ps2.c
176
static void sun4i_ps2_close(struct serio *serio)
drivers/input/serio/sun4i-ps2.c
178
struct sun4i_ps2data *drvdata = serio->port_data;
drivers/input/serio/sun4i-ps2.c
188
static int sun4i_ps2_write(struct serio *serio, unsigned char val)
drivers/input/serio/sun4i-ps2.c
191
struct sun4i_ps2data *drvdata = serio->port_data;
drivers/input/serio/sun4i-ps2.c
207
struct serio *serio;
drivers/input/serio/sun4i-ps2.c
212
serio = kzalloc_obj(*serio);
drivers/input/serio/sun4i-ps2.c
213
if (!drvdata || !serio) {
drivers/input/serio/sun4i-ps2.c
248
serio->id.type = SERIO_8042;
drivers/input/serio/sun4i-ps2.c
249
serio->write = sun4i_ps2_write;
drivers/input/serio/sun4i-ps2.c
250
serio->open = sun4i_ps2_open;
drivers/input/serio/sun4i-ps2.c
251
serio->close = sun4i_ps2_close;
drivers/input/serio/sun4i-ps2.c
252
serio->port_data = drvdata;
drivers/input/serio/sun4i-ps2.c
253
serio->dev.parent = dev;
drivers/input/serio/sun4i-ps2.c
254
strscpy(serio->name, dev_name(dev), sizeof(serio->name));
drivers/input/serio/sun4i-ps2.c
255
strscpy(serio->phys, dev_name(dev), sizeof(serio->phys));
drivers/input/serio/sun4i-ps2.c
267
drvdata->serio = serio;
drivers/input/serio/sun4i-ps2.c
278
serio_register_port(serio);
drivers/input/serio/sun4i-ps2.c
290
kfree(serio);
drivers/input/serio/sun4i-ps2.c
299
serio_unregister_port(drvdata->serio);
drivers/input/serio/sun4i-ps2.c
80
struct serio *serio;
drivers/input/serio/userio.c
105
serio_unregister_port(userio->serio);
drivers/input/serio/userio.c
107
kfree(userio->serio);
drivers/input/serio/userio.c
183
if (!userio->serio->id.type) {
drivers/input/serio/userio.c
196
serio_register_port(userio->serio);
drivers/input/serio/userio.c
206
userio->serio->id.type = cmd->data;
drivers/input/serio/userio.c
216
userio->serio->id.extra = cmd->data;
drivers/input/serio/userio.c
226
userio->serio->id.id = cmd->data;
drivers/input/serio/userio.c
236
userio->serio->id.proto = cmd->data;
drivers/input/serio/userio.c
246
serio_interrupt(userio->serio, cmd->data, 0);
drivers/input/serio/userio.c
36
struct serio *serio;
drivers/input/serio/userio.c
55
static int userio_device_write(struct serio *id, unsigned char val)
drivers/input/serio/userio.c
84
userio->serio = kzalloc_obj(*userio->serio);
drivers/input/serio/userio.c
85
if (!userio->serio)
drivers/input/serio/userio.c
88
userio->serio->write = userio_device_write;
drivers/input/serio/userio.c
89
userio->serio->port_data = userio;
drivers/input/tablet/wacom_serial4.c
372
static irqreturn_t wacom_interrupt(struct serio *serio, unsigned char data,
drivers/input/tablet/wacom_serial4.c
375
struct wacom *wacom = serio_get_drvdata(serio);
drivers/input/tablet/wacom_serial4.c
411
static void wacom_disconnect(struct serio *serio)
drivers/input/tablet/wacom_serial4.c
413
struct wacom *wacom = serio_get_drvdata(serio);
drivers/input/tablet/wacom_serial4.c
415
serio_close(serio);
drivers/input/tablet/wacom_serial4.c
416
serio_set_drvdata(serio, NULL);
drivers/input/tablet/wacom_serial4.c
421
static int wacom_send(struct serio *serio, const u8 *command)
drivers/input/tablet/wacom_serial4.c
426
err = serio_write(serio, *command);
drivers/input/tablet/wacom_serial4.c
431
static int wacom_send_setup_string(struct wacom *wacom, struct serio *serio)
drivers/input/tablet/wacom_serial4.c
461
return wacom_send(serio, cmd);
drivers/input/tablet/wacom_serial4.c
464
static int wacom_send_and_wait(struct wacom *wacom, struct serio *serio,
drivers/input/tablet/wacom_serial4.c
473
err = wacom_send(serio, cmd);
drivers/input/tablet/wacom_serial4.c
487
static int wacom_setup(struct wacom *wacom, struct serio *serio)
drivers/input/tablet/wacom_serial4.c
494
err = wacom_send_and_wait(wacom, serio, REQUEST_MODEL_AND_ROM_VERSION,
drivers/input/tablet/wacom_serial4.c
500
err = wacom_send_and_wait(wacom, serio,
drivers/input/tablet/wacom_serial4.c
508
err = wacom_send_and_wait(wacom, serio,
drivers/input/tablet/wacom_serial4.c
515
return wacom_send_setup_string(wacom, serio);
drivers/input/tablet/wacom_serial4.c
518
static int wacom_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/tablet/wacom_serial4.c
533
snprintf(wacom->phys, sizeof(wacom->phys), "%s/input0", serio->phys);
drivers/input/tablet/wacom_serial4.c
537
input_dev->id.product = serio->id.extra;
drivers/input/tablet/wacom_serial4.c
538
input_dev->dev.parent = &serio->dev;
drivers/input/tablet/wacom_serial4.c
552
serio_set_drvdata(serio, wacom);
drivers/input/tablet/wacom_serial4.c
554
err = serio_open(serio, drv);
drivers/input/tablet/wacom_serial4.c
558
err = wacom_setup(wacom, serio);
drivers/input/tablet/wacom_serial4.c
586
serio_close(serio);
drivers/input/tablet/wacom_serial4.c
588
serio_set_drvdata(serio, NULL);
drivers/input/tablet/wacom_serial4.c
604
MODULE_DEVICE_TABLE(serio, wacom_serio_ids);
drivers/input/touchscreen/dynapro.c
107
static int dynapro_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/dynapro.c
120
pdynapro->serio = serio;
drivers/input/touchscreen/dynapro.c
123
"%s/input0", serio->phys);
drivers/input/touchscreen/dynapro.c
131
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/dynapro.c
139
serio_set_drvdata(serio, pdynapro);
drivers/input/touchscreen/dynapro.c
141
err = serio_open(serio, drv);
drivers/input/touchscreen/dynapro.c
151
fail3: serio_close(serio);
drivers/input/touchscreen/dynapro.c
152
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/dynapro.c
172
MODULE_DEVICE_TABLE(serio, dynapro_serio_ids);
drivers/input/touchscreen/dynapro.c
52
struct serio *serio;
drivers/input/touchscreen/dynapro.c
73
static irqreturn_t dynapro_interrupt(struct serio *serio,
drivers/input/touchscreen/dynapro.c
76
struct dynapro *pdynapro = serio_get_drvdata(serio);
drivers/input/touchscreen/dynapro.c
83
dev_dbg(&serio->dev, "unknown/unsynchronized data: %x\n",
drivers/input/touchscreen/dynapro.c
89
static void dynapro_disconnect(struct serio *serio)
drivers/input/touchscreen/dynapro.c
91
struct dynapro *pdynapro = serio_get_drvdata(serio);
drivers/input/touchscreen/dynapro.c
95
serio_close(serio);
drivers/input/touchscreen/dynapro.c
96
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/egalax_ts_serial.c
109
egalax->serio = serio;
drivers/input/touchscreen/egalax_ts_serial.c
111
scnprintf(egalax->phys, sizeof(egalax->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/egalax_ts_serial.c
119
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/egalax_ts_serial.c
127
serio_set_drvdata(serio, egalax);
drivers/input/touchscreen/egalax_ts_serial.c
129
error = serio_open(serio, drv);
drivers/input/touchscreen/egalax_ts_serial.c
140
serio_close(serio);
drivers/input/touchscreen/egalax_ts_serial.c
142
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/egalax_ts_serial.c
149
static void egalax_disconnect(struct serio *serio)
drivers/input/touchscreen/egalax_ts_serial.c
151
struct egalax *egalax = serio_get_drvdata(serio);
drivers/input/touchscreen/egalax_ts_serial.c
153
serio_close(serio);
drivers/input/touchscreen/egalax_ts_serial.c
154
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/egalax_ts_serial.c
173
MODULE_DEVICE_TABLE(serio, egalax_serio_ids);
drivers/input/touchscreen/egalax_ts_serial.c
42
struct serio *serio;
drivers/input/touchscreen/egalax_ts_serial.c
68
static irqreturn_t egalax_interrupt(struct serio *serio,
drivers/input/touchscreen/egalax_ts_serial.c
71
struct egalax *egalax = serio_get_drvdata(serio);
drivers/input/touchscreen/egalax_ts_serial.c
83
dev_dbg(&serio->dev, "unknown/unsynchronized data: %x\n",
drivers/input/touchscreen/egalax_ts_serial.c
96
static int egalax_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/elo.c
197
static irqreturn_t elo_interrupt(struct serio *serio,
drivers/input/touchscreen/elo.c
200
struct elo *elo = serio_get_drvdata(serio);
drivers/input/touchscreen/elo.c
228
scoped_guard(serio_pause_rx, elo->serio) {
drivers/input/touchscreen/elo.c
233
error = serio_write(elo->serio, ELO10_LEAD_BYTE);
drivers/input/touchscreen/elo.c
239
error = serio_write(elo->serio, packet[i]);
drivers/input/touchscreen/elo.c
244
error = serio_write(elo->serio, csum);
drivers/input/touchscreen/elo.c
274
dev_info(&elo->serio->dev,
drivers/input/touchscreen/elo.c
286
static void elo_disconnect(struct serio *serio)
drivers/input/touchscreen/elo.c
288
struct elo *elo = serio_get_drvdata(serio);
drivers/input/touchscreen/elo.c
292
serio_close(serio);
drivers/input/touchscreen/elo.c
293
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/elo.c
304
static int elo_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/elo.c
317
elo->serio = serio;
drivers/input/touchscreen/elo.c
318
elo->id = serio->id.id;
drivers/input/touchscreen/elo.c
323
scnprintf(elo->phys, sizeof(elo->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/elo.c
331
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/elo.c
336
serio_set_drvdata(serio, elo);
drivers/input/touchscreen/elo.c
337
err = serio_open(serio, drv);
drivers/input/touchscreen/elo.c
372
fail3: serio_close(serio);
drivers/input/touchscreen/elo.c
373
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/elo.c
393
MODULE_DEVICE_TABLE(serio, elo_serio_ids);
drivers/input/touchscreen/elo.c
53
struct serio *serio;
drivers/input/touchscreen/elo.c
75
dev_dbg(&elo->serio->dev,
drivers/input/touchscreen/elo.c
84
dev_dbg(&elo->serio->dev,
drivers/input/touchscreen/elo.c
91
dev_dbg(&elo->serio->dev,
drivers/input/touchscreen/fujitsu_ts.c
109
fujitsu->serio = serio;
drivers/input/touchscreen/fujitsu_ts.c
111
scnprintf(fujitsu->phys, sizeof(fujitsu->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/fujitsu_ts.c
124
serio_set_drvdata(serio, fujitsu);
drivers/input/touchscreen/fujitsu_ts.c
126
err = serio_open(serio, drv);
drivers/input/touchscreen/fujitsu_ts.c
137
serio_close(serio);
drivers/input/touchscreen/fujitsu_ts.c
139
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/fujitsu_ts.c
159
MODULE_DEVICE_TABLE(serio, fujitsu_serio_ids);
drivers/input/touchscreen/fujitsu_ts.c
29
struct serio *serio;
drivers/input/touchscreen/fujitsu_ts.c
43
static irqreturn_t fujitsu_interrupt(struct serio *serio,
drivers/input/touchscreen/fujitsu_ts.c
46
struct fujitsu *fujitsu = serio_get_drvdata(serio);
drivers/input/touchscreen/fujitsu_ts.c
79
static void fujitsu_disconnect(struct serio *serio)
drivers/input/touchscreen/fujitsu_ts.c
81
struct fujitsu *fujitsu = serio_get_drvdata(serio);
drivers/input/touchscreen/fujitsu_ts.c
85
serio_close(serio);
drivers/input/touchscreen/fujitsu_ts.c
86
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/fujitsu_ts.c
96
static int fujitsu_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/gunze.c
107
gunze->serio = serio;
drivers/input/touchscreen/gunze.c
109
scnprintf(gunze->phys, sizeof(serio->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/gunze.c
117
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/gunze.c
123
serio_set_drvdata(serio, gunze);
drivers/input/touchscreen/gunze.c
125
err = serio_open(serio, drv);
drivers/input/touchscreen/gunze.c
135
fail3: serio_close(serio);
drivers/input/touchscreen/gunze.c
136
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/gunze.c
156
MODULE_DEVICE_TABLE(serio, gunze_serio_ids);
drivers/input/touchscreen/gunze.c
35
struct serio *serio;
drivers/input/touchscreen/gunze.c
57
static irqreturn_t gunze_interrupt(struct serio *serio,
drivers/input/touchscreen/gunze.c
60
struct gunze *gunze = serio_get_drvdata(serio);
drivers/input/touchscreen/gunze.c
76
static void gunze_disconnect(struct serio *serio)
drivers/input/touchscreen/gunze.c
78
struct gunze *gunze = serio_get_drvdata(serio);
drivers/input/touchscreen/gunze.c
82
serio_close(serio);
drivers/input/touchscreen/gunze.c
83
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/gunze.c
94
static int gunze_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/hampshire.c
106
static int hampshire_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/hampshire.c
119
phampshire->serio = serio;
drivers/input/touchscreen/hampshire.c
122
"%s/input0", serio->phys);
drivers/input/touchscreen/hampshire.c
130
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/hampshire.c
138
serio_set_drvdata(serio, phampshire);
drivers/input/touchscreen/hampshire.c
140
err = serio_open(serio, drv);
drivers/input/touchscreen/hampshire.c
150
fail3: serio_close(serio);
drivers/input/touchscreen/hampshire.c
151
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/hampshire.c
171
MODULE_DEVICE_TABLE(serio, hampshire_serio_ids);
drivers/input/touchscreen/hampshire.c
51
struct serio *serio;
drivers/input/touchscreen/hampshire.c
72
static irqreturn_t hampshire_interrupt(struct serio *serio,
drivers/input/touchscreen/hampshire.c
75
struct hampshire *phampshire = serio_get_drvdata(serio);
drivers/input/touchscreen/hampshire.c
82
dev_dbg(&serio->dev, "unknown/unsynchronized data: %x\n",
drivers/input/touchscreen/hampshire.c
88
static void hampshire_disconnect(struct serio *serio)
drivers/input/touchscreen/hampshire.c
90
struct hampshire *phampshire = serio_get_drvdata(serio);
drivers/input/touchscreen/hampshire.c
94
serio_close(serio);
drivers/input/touchscreen/hampshire.c
95
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/inexio.c
100
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/inexio.c
111
static int inexio_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/inexio.c
124
pinexio->serio = serio;
drivers/input/touchscreen/inexio.c
126
scnprintf(pinexio->phys, sizeof(pinexio->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/inexio.c
134
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/inexio.c
140
serio_set_drvdata(serio, pinexio);
drivers/input/touchscreen/inexio.c
142
err = serio_open(serio, drv);
drivers/input/touchscreen/inexio.c
152
fail3: serio_close(serio);
drivers/input/touchscreen/inexio.c
153
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/inexio.c
173
MODULE_DEVICE_TABLE(serio, inexio_serio_ids);
drivers/input/touchscreen/inexio.c
54
struct serio *serio;
drivers/input/touchscreen/inexio.c
74
static irqreturn_t inexio_interrupt(struct serio *serio,
drivers/input/touchscreen/inexio.c
77
struct inexio *pinexio = serio_get_drvdata(serio);
drivers/input/touchscreen/inexio.c
93
static void inexio_disconnect(struct serio *serio)
drivers/input/touchscreen/inexio.c
95
struct inexio *pinexio = serio_get_drvdata(serio);
drivers/input/touchscreen/inexio.c
99
serio_close(serio);
drivers/input/touchscreen/mtouch.c
107
static void mtouch_disconnect(struct serio *serio)
drivers/input/touchscreen/mtouch.c
109
struct mtouch *mtouch = serio_get_drvdata(serio);
drivers/input/touchscreen/mtouch.c
113
serio_close(serio);
drivers/input/touchscreen/mtouch.c
114
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/mtouch.c
125
static int mtouch_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/mtouch.c
138
mtouch->serio = serio;
drivers/input/touchscreen/mtouch.c
140
scnprintf(mtouch->phys, sizeof(mtouch->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/mtouch.c
148
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/mtouch.c
154
serio_set_drvdata(serio, mtouch);
drivers/input/touchscreen/mtouch.c
156
err = serio_open(serio, drv);
drivers/input/touchscreen/mtouch.c
166
fail3: serio_close(serio);
drivers/input/touchscreen/mtouch.c
167
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/mtouch.c
187
MODULE_DEVICE_TABLE(serio, mtouch_serio_ids);
drivers/input/touchscreen/mtouch.c
55
struct serio *serio;
drivers/input/touchscreen/mtouch.c
86
static irqreturn_t mtouch_interrupt(struct serio *serio,
drivers/input/touchscreen/mtouch.c
89
struct mtouch *mtouch = serio_get_drvdata(serio);
drivers/input/touchscreen/penmount.c
161
static irqreturn_t pm_interrupt(struct serio *serio,
drivers/input/touchscreen/penmount.c
164
struct pm *pm = serio_get_drvdata(serio);
drivers/input/touchscreen/penmount.c
177
static void pm_disconnect(struct serio *serio)
drivers/input/touchscreen/penmount.c
179
struct pm *pm = serio_get_drvdata(serio);
drivers/input/touchscreen/penmount.c
181
serio_close(serio);
drivers/input/touchscreen/penmount.c
186
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/penmount.c
195
static int pm_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/penmount.c
209
pm->serio = serio;
drivers/input/touchscreen/penmount.c
211
scnprintf(pm->phys, sizeof(pm->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/penmount.c
220
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/penmount.c
225
switch (serio->id.id) {
drivers/input/touchscreen/penmount.c
269
serio_set_drvdata(serio, pm);
drivers/input/touchscreen/penmount.c
271
err = serio_open(serio, drv);
drivers/input/touchscreen/penmount.c
281
fail3: serio_close(serio);
drivers/input/touchscreen/penmount.c
282
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/penmount.c
302
MODULE_DEVICE_TABLE(serio, pm_serio_ids);
drivers/input/touchscreen/penmount.c
52
struct serio *serio;
drivers/input/touchscreen/touchit213.c
118
static void touchit213_disconnect(struct serio *serio)
drivers/input/touchscreen/touchit213.c
120
struct touchit213 *touchit213 = serio_get_drvdata(serio);
drivers/input/touchscreen/touchit213.c
124
serio_close(serio);
drivers/input/touchscreen/touchit213.c
125
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/touchit213.c
136
static int touchit213_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/touchit213.c
149
touchit213->serio = serio;
drivers/input/touchscreen/touchit213.c
152
"%s/input0", serio->phys);
drivers/input/touchscreen/touchit213.c
160
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/touchit213.c
168
serio_set_drvdata(serio, touchit213);
drivers/input/touchscreen/touchit213.c
170
err = serio_open(serio, drv);
drivers/input/touchscreen/touchit213.c
180
fail3: serio_close(serio);
drivers/input/touchscreen/touchit213.c
181
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/touchit213.c
201
MODULE_DEVICE_TABLE(serio, touchit213_serio_ids);
drivers/input/touchscreen/touchit213.c
75
struct serio *serio;
drivers/input/touchscreen/touchit213.c
82
static irqreturn_t touchit213_interrupt(struct serio *serio,
drivers/input/touchscreen/touchit213.c
85
struct touchit213 *touchit213 = serio_get_drvdata(serio);
drivers/input/touchscreen/touchright.c
112
tr->serio = serio;
drivers/input/touchscreen/touchright.c
114
scnprintf(tr->phys, sizeof(tr->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/touchright.c
122
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/touchright.c
128
serio_set_drvdata(serio, tr);
drivers/input/touchscreen/touchright.c
130
err = serio_open(serio, drv);
drivers/input/touchscreen/touchright.c
140
fail3: serio_close(serio);
drivers/input/touchscreen/touchright.c
141
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/touchright.c
161
MODULE_DEVICE_TABLE(serio, tr_serio_ids);
drivers/input/touchscreen/touchright.c
47
struct serio *serio;
drivers/input/touchscreen/touchright.c
53
static irqreturn_t tr_interrupt(struct serio *serio,
drivers/input/touchscreen/touchright.c
56
struct tr *tr = serio_get_drvdata(serio);
drivers/input/touchscreen/touchright.c
81
static void tr_disconnect(struct serio *serio)
drivers/input/touchscreen/touchright.c
83
struct tr *tr = serio_get_drvdata(serio);
drivers/input/touchscreen/touchright.c
87
serio_close(serio);
drivers/input/touchscreen/touchright.c
88
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/touchright.c
99
static int tr_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/touchwin.c
109
static int tw_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/touchwin.c
122
tw->serio = serio;
drivers/input/touchscreen/touchwin.c
124
scnprintf(tw->phys, sizeof(tw->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/touchwin.c
132
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/touchwin.c
138
serio_set_drvdata(serio, tw);
drivers/input/touchscreen/touchwin.c
140
err = serio_open(serio, drv);
drivers/input/touchscreen/touchwin.c
150
fail3: serio_close(serio);
drivers/input/touchscreen/touchwin.c
151
fail2: serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/touchwin.c
171
MODULE_DEVICE_TABLE(serio, tw_serio_ids);
drivers/input/touchscreen/touchwin.c
50
struct serio *serio;
drivers/input/touchscreen/touchwin.c
57
static irqreturn_t tw_interrupt(struct serio *serio,
drivers/input/touchscreen/touchwin.c
60
struct tw *tw = serio_get_drvdata(serio);
drivers/input/touchscreen/touchwin.c
91
static void tw_disconnect(struct serio *serio)
drivers/input/touchscreen/touchwin.c
93
struct tw *tw = serio_get_drvdata(serio);
drivers/input/touchscreen/touchwin.c
97
serio_close(serio);
drivers/input/touchscreen/touchwin.c
98
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/tsc40.c
103
input_dev->dev.parent = &serio->dev;
drivers/input/touchscreen/tsc40.c
110
serio_set_drvdata(serio, ptsc);
drivers/input/touchscreen/tsc40.c
112
error = serio_open(serio, drv);
drivers/input/touchscreen/tsc40.c
123
serio_close(serio);
drivers/input/touchscreen/tsc40.c
125
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/tsc40.c
132
static void tsc_disconnect(struct serio *serio)
drivers/input/touchscreen/tsc40.c
134
struct tsc_ser *ptsc = serio_get_drvdata(serio);
drivers/input/touchscreen/tsc40.c
136
serio_close(serio);
drivers/input/touchscreen/tsc40.c
141
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/tsc40.c
153
MODULE_DEVICE_TABLE(serio, tsc_serio_ids);
drivers/input/touchscreen/tsc40.c
18
struct serio *serio;
drivers/input/touchscreen/tsc40.c
41
static irqreturn_t tsc_interrupt(struct serio *serio,
drivers/input/touchscreen/tsc40.c
44
struct tsc_ser *ptsc = serio_get_drvdata(serio);
drivers/input/touchscreen/tsc40.c
51
dev_dbg(&serio->dev,
drivers/input/touchscreen/tsc40.c
64
dev_dbg(&serio->dev,
drivers/input/touchscreen/tsc40.c
80
static int tsc_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/tsc40.c
93
ptsc->serio = serio;
drivers/input/touchscreen/tsc40.c
95
scnprintf(ptsc->phys, sizeof(ptsc->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/wacom_w8001.c
281
static irqreturn_t w8001_interrupt(struct serio *serio,
drivers/input/touchscreen/wacom_w8001.c
284
struct w8001 *w8001 = serio_get_drvdata(serio);
drivers/input/touchscreen/wacom_w8001.c
367
rc = serio_write(w8001->serio, command);
drivers/input/touchscreen/wacom_w8001.c
523
dev_err(&w8001->serio->dev,
drivers/input/touchscreen/wacom_w8001.c
551
struct serio *serio)
drivers/input/touchscreen/wacom_w8001.c
561
dev->dev.parent = &serio->dev;
drivers/input/touchscreen/wacom_w8001.c
570
static void w8001_disconnect(struct serio *serio)
drivers/input/touchscreen/wacom_w8001.c
572
struct w8001 *w8001 = serio_get_drvdata(serio);
drivers/input/touchscreen/wacom_w8001.c
574
serio_close(serio);
drivers/input/touchscreen/wacom_w8001.c
582
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/wacom_w8001.c
591
static int w8001_connect(struct serio *serio, struct serio_driver *drv)
drivers/input/touchscreen/wacom_w8001.c
607
w8001->serio = serio;
drivers/input/touchscreen/wacom_w8001.c
612
snprintf(w8001->phys, sizeof(w8001->phys), "%s/input0", serio->phys);
drivers/input/touchscreen/wacom_w8001.c
614
serio_set_drvdata(serio, w8001);
drivers/input/touchscreen/wacom_w8001.c
615
err = serio_open(serio, drv);
drivers/input/touchscreen/wacom_w8001.c
638
w8001_set_devdata(input_dev_pen, w8001, serio);
drivers/input/touchscreen/wacom_w8001.c
654
w8001_set_devdata(input_dev_touch, w8001, serio);
drivers/input/touchscreen/wacom_w8001.c
671
serio_close(serio);
drivers/input/touchscreen/wacom_w8001.c
673
serio_set_drvdata(serio, NULL);
drivers/input/touchscreen/wacom_w8001.c
691
MODULE_DEVICE_TABLE(serio, w8001_serio_ids);
drivers/input/touchscreen/wacom_w8001.c
87
struct serio *serio;
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1349
static void extron_disconnect(struct serio *serio)
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1351
struct extron *extron = serio_get_drvdata(serio);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1400
extron->serio = NULL;
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1401
serio_set_drvdata(serio, NULL);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1402
serio_close(serio);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1407
struct serio *serio = extron->serio;
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1511
dev_name(&serio->dev), port->is_input ? "in" : "out",
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
164
static int extron_send_byte(struct serio *serio, char byte)
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
169
err = serio_write(serio, byte);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
175
dev_warn(&serio->dev, "unable to write byte after 100 attempts\n");
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1759
static int extron_connect(struct serio *serio, struct serio_driver *drv)
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1768
dev_warn(&serio->dev, "ignoring invalid manufacturer name\n");
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1777
extron->serio = serio;
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1778
extron->dev = &serio->dev;
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1787
err = serio_open(serio, drv);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
179
static int extron_send_len(struct serio *serio, const char *command,
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1791
serio_set_drvdata(serio, extron);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1795
"extron-da-hd-4k-plus-cec-%s", dev_name(&serio->dev));
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1802
extron->serio = NULL;
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1803
serio_set_drvdata(serio, NULL);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1804
serio_close(serio);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
1824
MODULE_DEVICE_TABLE(serio, extron_serio_ids);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
185
err = extron_send_byte(serio, *command);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
187
err = extron_send_byte(serio, '\r');
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
190
err = extron_send_byte(serio, *bin++);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
219
err = extron_send_len(extron->serio, cmd, bin, len);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
836
static irqreturn_t extron_interrupt(struct serio *serio, unsigned char data,
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
839
struct extron *extron = serio_get_drvdata(serio);
drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.h
83
struct serio *serio;
drivers/media/cec/usb/pulse8/pulse8-cec.c
175
struct serio *serio;
drivers/media/cec/usb/pulse8/pulse8-cec.c
210
static int pulse8_send(struct serio *serio, const u8 *command, u8 cmd_len)
drivers/media/cec/usb/pulse8/pulse8-cec.c
214
err = serio_write(serio, MSGSTART);
drivers/media/cec/usb/pulse8/pulse8-cec.c
219
err = serio_write(serio, MSGESC);
drivers/media/cec/usb/pulse8/pulse8-cec.c
221
err = serio_write(serio, *command - MSGOFFSET);
drivers/media/cec/usb/pulse8/pulse8-cec.c
223
err = serio_write(serio, *command);
drivers/media/cec/usb/pulse8/pulse8-cec.c
227
err = serio_write(serio, MSGEND);
drivers/media/cec/usb/pulse8/pulse8-cec.c
238
if (!pulse8->serio)
drivers/media/cec/usb/pulse8/pulse8-cec.c
246
err = pulse8_send(pulse8->serio, cmd, cmd_len);
drivers/media/cec/usb/pulse8/pulse8-cec.c
365
static irqreturn_t pulse8_interrupt(struct serio *serio, unsigned char data,
drivers/media/cec/usb/pulse8/pulse8-cec.c
368
struct pulse8 *pulse8 = serio_get_drvdata(serio);
drivers/media/cec/usb/pulse8/pulse8-cec.c
657
static void pulse8_disconnect(struct serio *serio)
drivers/media/cec/usb/pulse8/pulse8-cec.c
659
struct pulse8 *pulse8 = serio_get_drvdata(serio);
drivers/media/cec/usb/pulse8/pulse8-cec.c
663
pulse8->serio = NULL;
drivers/media/cec/usb/pulse8/pulse8-cec.c
666
serio_set_drvdata(serio, NULL);
drivers/media/cec/usb/pulse8/pulse8-cec.c
667
serio_close(serio);
drivers/media/cec/usb/pulse8/pulse8-cec.c
670
static int pulse8_setup(struct pulse8 *pulse8, struct serio *serio,
drivers/media/cec/usb/pulse8/pulse8-cec.c
842
static int pulse8_connect(struct serio *serio, struct serio_driver *drv)
drivers/media/cec/usb/pulse8/pulse8-cec.c
855
pulse8->serio = serio;
drivers/media/cec/usb/pulse8/pulse8-cec.c
857
dev_name(&serio->dev), caps, 1);
drivers/media/cec/usb/pulse8/pulse8-cec.c
864
pulse8->dev = &serio->dev;
drivers/media/cec/usb/pulse8/pulse8-cec.c
865
serio_set_drvdata(serio, pulse8);
drivers/media/cec/usb/pulse8/pulse8-cec.c
874
err = serio_open(serio, drv);
drivers/media/cec/usb/pulse8/pulse8-cec.c
878
err = pulse8_setup(pulse8, serio, &log_addrs, &pa);
drivers/media/cec/usb/pulse8/pulse8-cec.c
882
err = cec_register_adapter(pulse8->adap, &serio->dev);
drivers/media/cec/usb/pulse8/pulse8-cec.c
900
pulse8->serio = NULL;
drivers/media/cec/usb/pulse8/pulse8-cec.c
901
serio_set_drvdata(serio, NULL);
drivers/media/cec/usb/pulse8/pulse8-cec.c
902
serio_close(serio);
drivers/media/cec/usb/pulse8/pulse8-cec.c
918
MODULE_DEVICE_TABLE(serio, pulse8_serio_ids);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
170
static irqreturn_t rain_interrupt(struct serio *serio, unsigned char data,
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
173
struct rain *rain = serio_get_drvdata(serio);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
189
static void rain_disconnect(struct serio *serio)
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
191
struct rain *rain = serio_get_drvdata(serio);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
195
dev_info(&serio->dev, "disconnected\n");
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
196
serio_close(serio);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
197
serio_set_drvdata(serio, NULL);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
203
int err = serio_write(rain->serio, '!');
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
207
err = serio_write(rain->serio, *command++);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
209
err = serio_write(rain->serio, '~');
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
241
static int rain_setup(struct rain *rain, struct serio *serio,
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
308
static int rain_connect(struct serio *serio, struct serio_driver *drv)
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
321
rain->serio = serio;
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
323
dev_name(&serio->dev), caps, 1);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
328
rain->dev = &serio->dev;
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
329
serio_set_drvdata(serio, rain);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
334
err = serio_open(serio, drv);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
338
err = rain_setup(rain, serio, &log_addrs, &pa);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
342
err = cec_register_adapter(rain->adap, &serio->dev);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
350
serio_close(serio);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
353
serio_set_drvdata(serio, NULL);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
369
MODULE_DEVICE_TABLE(serio, rain_serio_ids);
drivers/media/cec/usb/rainshadow/rainshadow-cec.c
43
struct serio *serio;
drivers/mfd/ioc3.c
214
DEFINE_RES_MEM(offsetof(struct ioc3, serio),
drivers/mfd/ioc3.c
215
sizeof_field(struct ioc3, serio)),
drivers/platform/x86/asus-nb-wmi.c
53
static bool asus_i8042_filter(unsigned char data, unsigned char str, struct serio *port,
drivers/platform/x86/dell/dell-laptop.c
737
static bool dell_laptop_i8042_filter(unsigned char data, unsigned char str, struct serio *port,
drivers/platform/x86/hp/hp_accel.c
270
struct serio *port, void *context)
drivers/platform/x86/msi-laptop.c
809
static bool msi_laptop_i8042_filter(unsigned char data, unsigned char str, struct serio *port,
drivers/platform/x86/panasonic-laptop.c
261
struct serio *port, void *context)
drivers/platform/x86/samsung-galaxybook.c
1173
static bool galaxybook_i8042_filter(unsigned char data, unsigned char str, struct serio *port,
drivers/platform/x86/toshiba_acpi.c
2760
struct serio *port, void *context)
drivers/staging/nvec/nvec_ps2.c
103
struct serio *ser_dev;
drivers/staging/nvec/nvec_ps2.c
34
struct serio *ser_dev;
drivers/staging/nvec/nvec_ps2.c
41
static int ps2_startstreaming(struct serio *ser_dev)
drivers/staging/nvec/nvec_ps2.c
48
static void ps2_stopstreaming(struct serio *ser_dev)
drivers/staging/nvec/nvec_ps2.c
79
static int ps2_sendcommand(struct serio *ser_dev, unsigned char cmd)
drivers/tty/serial/sunsu.c
1167
struct serio *serio;
drivers/tty/serial/sunsu.c
1190
serio = &up->serio;
drivers/tty/serial/sunsu.c
1191
serio->port_data = up;
drivers/tty/serial/sunsu.c
1193
serio->id.type = SERIO_RS232;
drivers/tty/serial/sunsu.c
1195
serio->id.proto = SERIO_SUNKBD;
drivers/tty/serial/sunsu.c
1196
strscpy(serio->name, "sukbd", sizeof(serio->name));
drivers/tty/serial/sunsu.c
1198
serio->id.proto = SERIO_SUN;
drivers/tty/serial/sunsu.c
1199
serio->id.extra = 1;
drivers/tty/serial/sunsu.c
1200
strscpy(serio->name, "sums", sizeof(serio->name));
drivers/tty/serial/sunsu.c
1202
strscpy(serio->phys,
drivers/tty/serial/sunsu.c
1204
sizeof(serio->phys));
drivers/tty/serial/sunsu.c
1206
serio->write = sunsu_serio_write;
drivers/tty/serial/sunsu.c
1207
serio->open = sunsu_serio_open;
drivers/tty/serial/sunsu.c
1208
serio->close = sunsu_serio_close;
drivers/tty/serial/sunsu.c
1209
serio->dev.parent = up->port.dev;
drivers/tty/serial/sunsu.c
1211
serio_register_port(serio);
drivers/tty/serial/sunsu.c
1491
serio_unregister_port(&up->serio);
drivers/tty/serial/sunsu.c
482
serio_interrupt(&up->serio, ch, 0);
drivers/tty/serial/sunsu.c
496
serio_interrupt(&up->serio, ch, 0);
drivers/tty/serial/sunsu.c
957
static int sunsu_serio_write(struct serio *serio, unsigned char ch)
drivers/tty/serial/sunsu.c
959
struct uart_sunsu_port *up = serio->port_data;
drivers/tty/serial/sunsu.c
977
static int sunsu_serio_open(struct serio *serio)
drivers/tty/serial/sunsu.c
979
struct uart_sunsu_port *up = serio->port_data;
drivers/tty/serial/sunsu.c
99
struct serio serio;
drivers/tty/serial/sunsu.c
994
static void sunsu_serio_close(struct serio *serio)
drivers/tty/serial/sunsu.c
996
struct uart_sunsu_port *up = serio->port_data;
drivers/tty/serial/sunzilog.c
1151
static int sunzilog_serio_write(struct serio *serio, unsigned char ch)
drivers/tty/serial/sunzilog.c
1153
struct uart_sunzilog_port *up = serio->port_data;
drivers/tty/serial/sunzilog.c
1165
static int sunzilog_serio_open(struct serio *serio)
drivers/tty/serial/sunzilog.c
1167
struct uart_sunzilog_port *up = serio->port_data;
drivers/tty/serial/sunzilog.c
1182
static void sunzilog_serio_close(struct serio *serio)
drivers/tty/serial/sunzilog.c
1184
struct uart_sunzilog_port *up = serio->port_data;
drivers/tty/serial/sunzilog.c
1300
struct serio *serio = &up->serio;
drivers/tty/serial/sunzilog.c
1302
serio->port_data = up;
drivers/tty/serial/sunzilog.c
1304
serio->id.type = SERIO_RS232;
drivers/tty/serial/sunzilog.c
1306
serio->id.proto = SERIO_SUNKBD;
drivers/tty/serial/sunzilog.c
1307
strscpy(serio->name, "zskbd", sizeof(serio->name));
drivers/tty/serial/sunzilog.c
1309
serio->id.proto = SERIO_SUN;
drivers/tty/serial/sunzilog.c
1310
serio->id.extra = 1;
drivers/tty/serial/sunzilog.c
1311
strscpy(serio->name, "zsms", sizeof(serio->name));
drivers/tty/serial/sunzilog.c
1313
strscpy(serio->phys,
drivers/tty/serial/sunzilog.c
1316
sizeof(serio->phys));
drivers/tty/serial/sunzilog.c
1318
serio->write = sunzilog_serio_write;
drivers/tty/serial/sunzilog.c
1319
serio->open = sunzilog_serio_open;
drivers/tty/serial/sunzilog.c
1320
serio->close = sunzilog_serio_close;
drivers/tty/serial/sunzilog.c
1321
serio->dev.parent = up->port.dev;
drivers/tty/serial/sunzilog.c
1323
serio_register_port(serio);
drivers/tty/serial/sunzilog.c
1509
serio_unregister_port(&up->serio);
drivers/tty/serial/sunzilog.c
301
serio_interrupt(&up->serio, ch, 0);
drivers/tty/serial/sunzilog.c
316
serio_interrupt(&up->serio, ch, 0);
drivers/tty/serial/sunzilog.c
98
struct serio serio;
include/linux/hil_mlc.h
156
struct serio *serio[HIL_MLC_DEVMEM];
include/linux/i8042.h
55
struct serio;
include/linux/i8042.h
70
typedef bool (*i8042_filter_t)(unsigned char data, unsigned char str, struct serio *serio,
include/linux/libps2.h
49
struct serio *serio;
include/linux/libps2.h
61
void ps2_init(struct ps2dev *ps2dev, struct serio *serio,
include/linux/libps2.h
73
irqreturn_t ps2_interrupt(struct serio *serio, u8 data, unsigned int flags);
include/linux/serio.h
123
static inline int serio_write(struct serio *serio, unsigned char data)
include/linux/serio.h
125
if (serio->write)
include/linux/serio.h
126
return serio->write(serio, data);
include/linux/serio.h
131
static inline void serio_drv_write_wakeup(struct serio *serio)
include/linux/serio.h
133
if (serio->drv && serio->drv->write_wakeup)
include/linux/serio.h
134
serio->drv->write_wakeup(serio);
include/linux/serio.h
141
static inline void *serio_get_drvdata(struct serio *serio)
include/linux/serio.h
143
return dev_get_drvdata(&serio->dev);
include/linux/serio.h
146
static inline void serio_set_drvdata(struct serio *serio, void *data)
include/linux/serio.h
148
dev_set_drvdata(&serio->dev, data);
include/linux/serio.h
155
static inline void serio_pause_rx(struct serio *serio)
include/linux/serio.h
157
spin_lock_irq(&serio->lock);
include/linux/serio.h
160
static inline void serio_continue_rx(struct serio *serio)
include/linux/serio.h
162
spin_unlock_irq(&serio->lock);
include/linux/serio.h
165
DEFINE_GUARD(serio_pause_rx, struct serio *, serio_pause_rx(_T), serio_continue_rx(_T))
include/linux/serio.h
35
int (*write)(struct serio *, unsigned char);
include/linux/serio.h
36
int (*open)(struct serio *);
include/linux/serio.h
37
void (*close)(struct serio *);
include/linux/serio.h
38
int (*start)(struct serio *);
include/linux/serio.h
39
void (*stop)(struct serio *);
include/linux/serio.h
41
struct serio *parent;
include/linux/serio.h
66
#define to_serio_port(d) container_of(d, struct serio, dev)
include/linux/serio.h
74
void (*write_wakeup)(struct serio *);
include/linux/serio.h
75
irqreturn_t (*interrupt)(struct serio *, unsigned char, unsigned int);
include/linux/serio.h
76
int (*connect)(struct serio *, struct serio_driver *drv);
include/linux/serio.h
77
int (*reconnect)(struct serio *);
include/linux/serio.h
78
int (*fast_reconnect)(struct serio *);
include/linux/serio.h
79
void (*disconnect)(struct serio *);
include/linux/serio.h
80
void (*cleanup)(struct serio *);
include/linux/serio.h
86
int serio_open(struct serio *serio, struct serio_driver *drv);
include/linux/serio.h
87
void serio_close(struct serio *serio);
include/linux/serio.h
88
void serio_rescan(struct serio *serio);
include/linux/serio.h
89
void serio_reconnect(struct serio *serio);
include/linux/serio.h
90
irqreturn_t serio_interrupt(struct serio *serio, unsigned char data, unsigned int flags);
include/linux/serio.h
92
void __serio_register_port(struct serio *serio, struct module *owner);
include/linux/serio.h
95
#define serio_register_port(serio) \
include/linux/serio.h
96
__serio_register_port(serio, THIS_MODULE)
include/linux/serio.h
98
void serio_unregister_port(struct serio *serio);
include/linux/serio.h
99
void serio_unregister_child_port(struct serio *serio);