Re: [PATCH V2 2/2] tty: serial: qcom_geni_serial: Wakeup over UART RX

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 10/16/2019 1:40 AM, Stephen Boyd wrote:
Quoting Akash Asthana (2019-10-11 02:48:42)
On 10/10/2019 7:55 PM, Stephen Boyd wrote:
Quoting Akash Asthana (2019-10-10 02:46:43)
diff --git a/drivers/tty/serial/qcom_geni_serial.c b/drivers/tty/serial/qcom_geni_serial.c
index 5180cd8..ff63728 100644
--- a/drivers/tty/serial/qcom_geni_serial.c
+++ b/drivers/tty/serial/qcom_geni_serial.c
@@ -1306,6 +1317,29 @@ static int qcom_geni_serial_probe(struct platform_device *pdev)
+               if (port->wakeup_irq < 0) {
+                       dev_err(&pdev->dev, "Failed to get wakeup IRQ %d\n",
+                                       port->wakeup_irq);
+               } else {
+                       irq_set_status_flags(port->wakeup_irq, IRQ_NOAUTOEN);
+                       ret = devm_request_irq(uport->dev, port->wakeup_irq,
+                               qcom_geni_serial_wakeup_isr,
+                               IRQF_TRIGGER_FALLING, "uart_wakeup", uport);
+                       if (ret) {
+                               dev_err(uport->dev, "Failed to register wakeup IRQ ret %d\n",
+                                               ret);
+                               return ret;
+                       }
+
+                       device_init_wakeup(&pdev->dev, true);
+                       ret = dev_pm_set_wake_irq(&pdev->dev, port->wakeup_irq);
Why can't we use dev_pm_set_dedicated_wake_irq() here?
If we use this API then handler "handle_threaded_wake_irq" uses device
specific pm_runtime functions to wake the device and currently this

driver don't support runtime PM callbacks. Also, we want to register
"qcom_geni_serial_wakeup_isr" as our IRQ handler for wakeup scenario.

Why can't we make this driver use runtime PM?

Currently there are no plans to use runtime PM as we are interested in
enabling wakeup irq as part of system suspend only.

--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,\na Linux Foundation Collaborative Project




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux