@@ -9,7 +9,6 @@
#include <linux/console.h>
#include <linux/io.h>
#include <linux/iopoll.h>
-#include <linux/irq.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_device.h>
@@ -831,7 +830,7 @@ static void qcom_geni_serial_shutdown(struct uart_port *uport)
if (uart_console(uport))
console_stop(uport->cons);
- disable_irq(uport->irq);
+ free_irq(uport->irq, uport);
spin_lock_irqsave(&uport->lock, flags);
qcom_geni_serial_stop_tx(uport);
qcom_geni_serial_stop_rx(uport);
@@ -891,14 +890,21 @@ static int qcom_geni_serial_startup(struct uart_port *uport)
int ret;
struct qcom_geni_serial_port *port = to_dev_port(uport, uport);
+ scnprintf(port->name, sizeof(port->name),
+ "qcom_serial_%s%d",
+ (uart_console(uport) ? "console" : "uart"), uport->line);
+
if (!port->setup) {
ret = qcom_geni_serial_port_setup(uport);
if (ret)
return ret;
}
- enable_irq(uport->irq);
- return 0;
+ ret = request_irq(uport->irq, qcom_geni_serial_isr, IRQF_TRIGGER_HIGH,
+ port->name, uport);
+ if (ret)
+ dev_err(uport->dev, "Failed to get IRQ ret %d\n", ret);
+ return ret;
}
static unsigned long get_clk_cfg(unsigned long clk_freq)
@@ -1291,21 +1297,11 @@ static int qcom_geni_serial_probe(struct platform_device *pdev)
port->rx_fifo_depth = DEF_FIFO_DEPTH_WORDS;
port->tx_fifo_width = DEF_FIFO_WIDTH_BITS;
- scnprintf(port->name, sizeof(port->name), "qcom_geni_serial_%s%d",
- (uart_console(uport) ? "console" : "uart"), uport->line);
irq = platform_get_irq(pdev, 0);
if (irq < 0)
return irq;
uport->irq = irq;
- irq_set_status_flags(uport->irq, IRQ_NOAUTOEN);
- ret = devm_request_irq(uport->dev, uport->irq, qcom_geni_serial_isr,
- IRQF_TRIGGER_HIGH, port->name, uport);
- if (ret) {
- dev_err(uport->dev, "Failed to get IRQ ret %d\n", ret);
- return ret;
- }
-
uport->private_data = drv;
platform_set_drvdata(pdev, port);
port->handle_rx = console ? handle_rx_console : handle_rx_uart;
This reverts commit 3e4aaea7a0391d47f6ffff1f10594c658a67c881. To apply v6 patches cleanly on tty-next branch, revert v2 patches. Signed-off-by: Akash Asthana <akashast@codeaurora.org> --- drivers/tty/serial/qcom_geni_serial.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-)