Lines Matching refs:qtty
53 static void do_rw_io(struct goldfish_tty *qtty,
59 void __iomem *base = qtty->base;
61 spin_lock_irqsave(&qtty->lock, irq_flags);
73 spin_unlock_irqrestore(&qtty->lock, irq_flags);
76 static void goldfish_tty_rw(struct goldfish_tty *qtty,
85 if (qtty->version > 0) {
102 dma_handle = dma_map_single(qtty->dev, (void *)addr,
105 if (dma_mapping_error(qtty->dev, dma_handle)) {
106 dev_err(qtty->dev, "tty: DMA mapping error.\n");
109 do_rw_io(qtty, dma_handle, avail, is_write);
115 dma_unmap_single(qtty->dev, dma_handle, avail, dma_dir);
124 do_rw_io(qtty, addr, count, is_write);
130 struct goldfish_tty *qtty = &goldfish_ttys[line];
133 goldfish_tty_rw(qtty, address, count, 1);
138 struct goldfish_tty *qtty = dev_id;
139 void __iomem *base = qtty->base;
148 count = tty_prepare_flip_string(&qtty->port, &buf, count);
151 goldfish_tty_rw(qtty, address, count, 0);
153 tty_flip_buffer_push(&qtty->port);
159 struct goldfish_tty *qtty = container_of(port, struct goldfish_tty,
161 gf_iowrite32(GOLDFISH_TTY_CMD_INT_ENABLE, qtty->base + GOLDFISH_TTY_REG_CMD);
167 struct goldfish_tty *qtty = container_of(port, struct goldfish_tty,
169 gf_iowrite32(GOLDFISH_TTY_CMD_INT_DISABLE, qtty->base + GOLDFISH_TTY_REG_CMD);
174 struct goldfish_tty *qtty = &goldfish_ttys[tty->index];
175 return tty_port_open(&qtty->port, tty, filp);
202 struct goldfish_tty *qtty = &goldfish_ttys[tty->index];
203 void __iomem *base = qtty->base;
295 struct goldfish_tty *qtty;
342 qtty = &goldfish_ttys[line];
343 spin_lock_init(&qtty->lock);
344 tty_port_init(&qtty->port);
345 qtty->port.ops = &goldfish_port_ops;
346 qtty->base = base;
347 qtty->irq = irq;
348 qtty->dev = &pdev->dev;
357 qtty->version = gf_ioread32(base + GOLDFISH_TTY_REG_VERSION);
363 if (qtty->version > 0) {
379 "goldfish_tty", qtty);
385 ttydev = tty_port_register_device(&qtty->port, goldfish_tty_driver,
392 strcpy(qtty->console.name, "ttyGF");
393 qtty->console.write = goldfish_tty_console_write;
394 qtty->console.device = goldfish_tty_console_device;
395 qtty->console.setup = goldfish_tty_console_setup;
396 qtty->console.flags = CON_PRINTBUFFER;
397 qtty->console.index = line;
398 register_console(&qtty->console);
399 platform_set_drvdata(pdev, qtty);
405 free_irq(irq, qtty);
407 tty_port_destroy(&qtty->port);
420 struct goldfish_tty *qtty = platform_get_drvdata(pdev);
424 unregister_console(&qtty->console);
425 tty_unregister_device(goldfish_tty_driver, qtty->console.index);
426 iounmap(qtty->base);
427 qtty->base = NULL;
428 free_irq(qtty->irq, qtty);
429 tty_port_destroy(&qtty->port);