Thread (24 messages) 24 messages, 7 authors, 2016-02-03

Re: [PATCH 01/10] serial: mvebu-uart: initial support for Armada-3700 serial port

From: Marcin Wojtas <hidden>
Date: 2016-02-03 08:05:59
Also in: linux-arm-kernel, linux-devicetree, linux-ide, lkml

Hi Gregory
+
+static int mvebu_uart_startup(struct uart_port *port)
+{
+       int ret;
+
+       writel(CTRL_TXFIFO_RST | CTRL_RXFIFO_RST,
+              port->membase + UART_CTRL);
+       udelay(1);
+       writel(CTRL_RX_INT, port->membase + UART_CTRL);
+
+       ret = request_irq(port->irq, mvebu_uart_isr, port->irqflags, "serial",
+                         port);
+       if (ret) {
+               dev_err(port->dev, "failed to request irq\n");
+               return ret;
+       }
+
+       return 0;
+}
+
+static int mvebu_uart_probe(struct platform_device *pdev)
+{
+       struct resource *reg = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+       struct resource *irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
+       struct uart_port *port;
+       struct mvebu_uart_data *data;
+       int ret;
+
+       if (!reg || !irq) {
+               dev_err(&pdev->dev, "no registers/irq defined\n");
+               return -EINVAL;
+       }
+
+       port = &mvebu_uart_ports[0];
+
+       spin_lock_init(&port->lock);
+
+       port->dev        = &pdev->dev;
+       port->type       = PORT_MVEBU;
+       port->ops        = &mvebu_uart_ops;
+       port->regshift   = 0;
+
+       port->fifosize   = 32;
+       port->iotype     = UPIO_MEM32;
+       port->flags      = UPF_FIXED_PORT;
+       port->line       = 0; /* single port: force line number to  0 */
+
+       port->irq        = irq->start;
+       port->irqflags   = 0;
Please use port->irqflags = IRQF_SHARED;
As ubuntu opens multiple consoles A3700 can't boot to it (only to
buildroot with single console).

Best regards,
Marcin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help