Lines Matching defs:mvuart
385 struct mvebu_uart *mvuart = to_mvuart(port);
404 if (!mvuart->irq[UART_TX_IRQ]) {
406 ret = devm_request_irq(port->dev, mvuart->irq[UART_IRQ_SUM],
411 mvuart->irq[UART_IRQ_SUM]);
416 ret = devm_request_irq(port->dev, mvuart->irq[UART_RX_IRQ],
421 mvuart->irq[UART_RX_IRQ]);
425 ret = devm_request_irq(port->dev, mvuart->irq[UART_TX_IRQ],
431 mvuart->irq[UART_TX_IRQ]);
432 devm_free_irq(port->dev, mvuart->irq[UART_RX_IRQ],
443 struct mvebu_uart *mvuart = to_mvuart(port);
447 if (!mvuart->irq[UART_TX_IRQ]) {
448 devm_free_irq(port->dev, mvuart->irq[UART_IRQ_SUM], port);
450 devm_free_irq(port->dev, mvuart->irq[UART_RX_IRQ], port);
451 devm_free_irq(port->dev, mvuart->irq[UART_TX_IRQ], port);
824 struct mvebu_uart *mvuart = dev_get_drvdata(dev);
825 struct uart_port *port = mvuart->port;
830 mvuart->pm_regs.rbr = readl(port->membase + UART_RBR(port));
831 mvuart->pm_regs.tsh = readl(port->membase + UART_TSH(port));
832 mvuart->pm_regs.ctrl = readl(port->membase + UART_CTRL(port));
833 mvuart->pm_regs.intr = readl(port->membase + UART_INTR(port));
834 mvuart->pm_regs.stat = readl(port->membase + UART_STAT);
836 mvuart->pm_regs.brdv = readl(port->membase + UART_BRDV);
838 mvuart->pm_regs.osamp = readl(port->membase + UART_OSAMP);
847 struct mvebu_uart *mvuart = dev_get_drvdata(dev);
848 struct uart_port *port = mvuart->port;
851 writel(mvuart->pm_regs.rbr, port->membase + UART_RBR(port));
852 writel(mvuart->pm_regs.tsh, port->membase + UART_TSH(port));
853 writel(mvuart->pm_regs.ctrl, port->membase + UART_CTRL(port));
854 writel(mvuart->pm_regs.intr, port->membase + UART_INTR(port));
855 writel(mvuart->pm_regs.stat, port->membase + UART_STAT);
857 writel(mvuart->pm_regs.brdv, port->membase + UART_BRDV);
859 writel(mvuart->pm_regs.osamp, port->membase + UART_OSAMP);
882 struct mvebu_uart *mvuart;
926 mvuart = devm_kzalloc(&pdev->dev, sizeof(struct mvebu_uart),
928 if (!mvuart)
932 mvuart->data = (struct mvebu_uart_driver_data *)match->data;
933 mvuart->port = port;
935 port->private_data = mvuart;
936 platform_set_drvdata(pdev, mvuart);
939 mvuart->clk = devm_clk_get(&pdev->dev, NULL);
940 if (IS_ERR(mvuart->clk)) {
941 if (PTR_ERR(mvuart->clk) == -EPROBE_DEFER)
942 return PTR_ERR(mvuart->clk);
946 return PTR_ERR(mvuart->clk);
949 if (!clk_prepare_enable(mvuart->clk))
950 port->uartclk = clk_get_rate(mvuart->clk);
960 mvuart->irq[UART_IRQ_SUM] = irq;
971 mvuart->irq[UART_RX_IRQ] = irq;
977 mvuart->irq[UART_TX_IRQ] = irq;