Lines Matching refs:mvuart

376 	struct mvebu_uart *mvuart = to_mvuart(port);  in mvebu_uart_startup()  local
395 if (!mvuart->irq[UART_TX_IRQ]) { in mvebu_uart_startup()
397 ret = devm_request_irq(port->dev, mvuart->irq[UART_IRQ_SUM], in mvebu_uart_startup()
402 mvuart->irq[UART_IRQ_SUM]); in mvebu_uart_startup()
407 ret = devm_request_irq(port->dev, mvuart->irq[UART_RX_IRQ], in mvebu_uart_startup()
412 mvuart->irq[UART_RX_IRQ]); in mvebu_uart_startup()
416 ret = devm_request_irq(port->dev, mvuart->irq[UART_TX_IRQ], in mvebu_uart_startup()
422 mvuart->irq[UART_TX_IRQ]); in mvebu_uart_startup()
423 devm_free_irq(port->dev, mvuart->irq[UART_RX_IRQ], in mvebu_uart_startup()
434 struct mvebu_uart *mvuart = to_mvuart(port); in mvebu_uart_shutdown() local
438 if (!mvuart->irq[UART_TX_IRQ]) { in mvebu_uart_shutdown()
439 devm_free_irq(port->dev, mvuart->irq[UART_IRQ_SUM], port); in mvebu_uart_shutdown()
441 devm_free_irq(port->dev, mvuart->irq[UART_RX_IRQ], port); in mvebu_uart_shutdown()
442 devm_free_irq(port->dev, mvuart->irq[UART_TX_IRQ], port); in mvebu_uart_shutdown()
448 struct mvebu_uart *mvuart = to_mvuart(port); in mvebu_uart_baud_rate_set() local
452 if (IS_ERR(mvuart->clk)) in mvebu_uart_baud_rate_set()
453 return -PTR_ERR(mvuart->clk); in mvebu_uart_baud_rate_set()
752 struct mvebu_uart *mvuart = dev_get_drvdata(dev); in mvebu_uart_suspend() local
753 struct uart_port *port = mvuart->port; in mvebu_uart_suspend()
757 mvuart->pm_regs.rbr = readl(port->membase + UART_RBR(port)); in mvebu_uart_suspend()
758 mvuart->pm_regs.tsh = readl(port->membase + UART_TSH(port)); in mvebu_uart_suspend()
759 mvuart->pm_regs.ctrl = readl(port->membase + UART_CTRL(port)); in mvebu_uart_suspend()
760 mvuart->pm_regs.intr = readl(port->membase + UART_INTR(port)); in mvebu_uart_suspend()
761 mvuart->pm_regs.stat = readl(port->membase + UART_STAT); in mvebu_uart_suspend()
762 mvuart->pm_regs.brdv = readl(port->membase + UART_BRDV); in mvebu_uart_suspend()
763 mvuart->pm_regs.osamp = readl(port->membase + UART_OSAMP); in mvebu_uart_suspend()
772 struct mvebu_uart *mvuart = dev_get_drvdata(dev); in mvebu_uart_resume() local
773 struct uart_port *port = mvuart->port; in mvebu_uart_resume()
775 writel(mvuart->pm_regs.rbr, port->membase + UART_RBR(port)); in mvebu_uart_resume()
776 writel(mvuart->pm_regs.tsh, port->membase + UART_TSH(port)); in mvebu_uart_resume()
777 writel(mvuart->pm_regs.ctrl, port->membase + UART_CTRL(port)); in mvebu_uart_resume()
778 writel(mvuart->pm_regs.intr, port->membase + UART_INTR(port)); in mvebu_uart_resume()
779 writel(mvuart->pm_regs.stat, port->membase + UART_STAT); in mvebu_uart_resume()
780 writel(mvuart->pm_regs.brdv, port->membase + UART_BRDV); in mvebu_uart_resume()
781 writel(mvuart->pm_regs.osamp, port->membase + UART_OSAMP); in mvebu_uart_resume()
805 struct mvebu_uart *mvuart; in mvebu_uart_probe() local
856 mvuart = devm_kzalloc(&pdev->dev, sizeof(struct mvebu_uart), in mvebu_uart_probe()
858 if (!mvuart) in mvebu_uart_probe()
862 mvuart->data = (struct mvebu_uart_driver_data *)match->data; in mvebu_uart_probe()
863 mvuart->port = port; in mvebu_uart_probe()
865 port->private_data = mvuart; in mvebu_uart_probe()
866 platform_set_drvdata(pdev, mvuart); in mvebu_uart_probe()
869 mvuart->clk = devm_clk_get(&pdev->dev, NULL); in mvebu_uart_probe()
870 if (IS_ERR(mvuart->clk)) { in mvebu_uart_probe()
871 if (PTR_ERR(mvuart->clk) == -EPROBE_DEFER) in mvebu_uart_probe()
872 return PTR_ERR(mvuart->clk); in mvebu_uart_probe()
876 return PTR_ERR(mvuart->clk); in mvebu_uart_probe()
879 if (!clk_prepare_enable(mvuart->clk)) in mvebu_uart_probe()
880 port->uartclk = clk_get_rate(mvuart->clk); in mvebu_uart_probe()
890 mvuart->irq[UART_IRQ_SUM] = irq; in mvebu_uart_probe()
901 mvuart->irq[UART_RX_IRQ] = irq; in mvebu_uart_probe()
907 mvuart->irq[UART_TX_IRQ] = irq; in mvebu_uart_probe()