Lines Matching refs:gdm

24 static inline bool gdm_tty_ready(struct gdm *gdm)
26 return gdm && gdm->tty_dev && gdm->port.count;
30 static struct gdm *gdm_table[TTY_MAX_COUNT][GDM_TTY_MINOR];
38 struct gdm *gdm = container_of(port, struct gdm, port);
41 gdm_table[gdm->index][gdm->minor] = NULL;
44 kfree(gdm);
53 struct gdm *gdm = NULL;
62 gdm = gdm_table[ret][tty->index];
63 if (!gdm) {
68 tty_port_get(&gdm->port);
72 tty_port_put(&gdm->port);
77 tty->driver_data = gdm;
85 struct gdm *gdm = tty->driver_data;
87 return tty_port_open(&gdm->port, tty, filp);
92 struct gdm *gdm = tty->driver_data;
94 tty_port_put(&gdm->port);
99 struct gdm *gdm = tty->driver_data;
101 tty_port_hangup(&gdm->port);
106 struct gdm *gdm = tty->driver_data;
108 tty_port_close(&gdm->port, tty, filp);
117 struct gdm *gdm = tty_dev->gdm[index];
119 if (!gdm_tty_ready(gdm)) {
121 gdm->tty_dev->recv_func(gdm->tty_dev->priv_dev,
127 if (tty_buffer_request_room(&gdm->port, len) == len) {
128 tty_insert_flip_string(&gdm->port, data, len);
129 tty_flip_buffer_push(&gdm->port);
136 gdm->tty_dev->recv_func(gdm->tty_dev->priv_dev,
144 struct gdm *gdm = arg;
146 if (!gdm_tty_ready(gdm))
149 tty_port_tty_wakeup(&gdm->port);
154 struct gdm *gdm = tty->driver_data;
158 if (!gdm_tty_ready(gdm))
164 gdm->tty_dev->send_func(gdm->tty_dev->priv_dev,
167 gdm->index,
169 gdm);
179 struct gdm *gdm = tty->driver_data;
181 if (!gdm_tty_ready(gdm))
189 struct gdm *gdm;
194 gdm = kmalloc(sizeof(*gdm), GFP_KERNEL);
195 if (!gdm)
205 kfree(gdm);
210 gdm_table[i][j] = gdm;
213 tty_dev->gdm[i] = gdm;
214 tty_port_init(&gdm->port);
216 gdm->port.ops = &gdm_port_ops;
217 gdm->index = i;
218 gdm->minor = j;
219 gdm->tty_dev = tty_dev;
221 tty_port_register_device(&gdm->port, gdm_driver[i],
222 gdm->minor, device);
226 gdm->tty_dev->recv_func(gdm->tty_dev->priv_dev,
234 struct gdm *gdm;
239 gdm = tty_dev->gdm[i];
240 if (!gdm)
244 gdm_table[gdm->index][gdm->minor] = NULL;
247 tty = tty_port_tty_get(&gdm->port);
253 tty_unregister_device(gdm_driver[i], gdm->minor);
254 tty_port_put(&gdm->port);