Message ID | 20200810030021.45348-1-m.shams@samsung.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | [RFT,v5] serial: samsung: Removes the IRQ not found warning | expand |
On Mon, Aug 10, 2020 at 08:30:21AM +0530, Tamseel Shams wrote: > In few older Samsung SoCs like s3c2410, s3c2412 > and s3c2440, UART IP is having 2 interrupt lines. > However, in other SoCs like s3c6400, s5pv210, > exynos5433, and exynos4210 UART is having only 1 > interrupt line. Due to this, "platform_get_irq(platdev, 1)" > call in the driver gives the following false-positive error: > "IRQ index 1 not found" on newer SoC's. > > This patch adds the condition to check for Tx interrupt > only for the those SoC's which have 2 interrupt lines. > > Signed-off-by: Tamseel Shams <m.shams@samsung.com> > --- > Commit message is changed. > > Added RFT, for older platform. > > Addressed Krzysztof's review comments [1] > [1] -> https://lkml.org/lkml/2020/7/21/150 > > drivers/tty/serial/samsung_tty.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org> Best regards, Krzysztof
Hi Tamseel, > -----Original Message----- > From: Tamseel Shams <m.shams@samsung.com> > Sent: 10 August 2020 08:30 > To: kgene@kernel.org; krzk@kernel.org; gregkh@linuxfoundation.org; > jslaby@suse.com > Cc: linux-arm-kernel@lists.infradead.org; linux-samsung-soc@vger.kernel.org; > linux-serial@vger.kernel.org; linux-kernel@vger.kernel.org; > alim.akhtar@samsung.com; Tamseel Shams <m.shams@samsung.com> > Subject: [RFT PATCH v5] serial: samsung: Removes the IRQ not found warning > > In few older Samsung SoCs like s3c2410, s3c2412 and s3c2440, UART IP is having > 2 interrupt lines. > However, in other SoCs like s3c6400, s5pv210, exynos5433, and exynos4210 > UART is having only 1 interrupt line. Due to this, "platform_get_irq(platdev, 1)" > call in the driver gives the following false-positive error: > "IRQ index 1 not found" on newer SoC's. > > This patch adds the condition to check for Tx interrupt only for the those SoC's > which have 2 interrupt lines. > > Signed-off-by: Tamseel Shams <m.shams@samsung.com> > --- Tested on exynos7 platform, don’t see " IRQ index 1 not found" with this patch applied Fill free to added Tested-by: Alim Akhtar <alim.akhtar@samsung.com> Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com> > Commit message is changed. > > Added RFT, for older platform. > > Addressed Krzysztof's review comments [1] [1] -> > https://lkml.org/lkml/2020/7/21/150 > > drivers/tty/serial/samsung_tty.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c > index 6ef614d8648c..b923683e6a25 100644 > --- a/drivers/tty/serial/samsung_tty.c > +++ b/drivers/tty/serial/samsung_tty.c > @@ -1911,9 +1911,11 @@ static int s3c24xx_serial_init_port(struct > s3c24xx_uart_port *ourport, > ourport->tx_irq = ret + 1; > } > > - ret = platform_get_irq(platdev, 1); > - if (ret > 0) > - ourport->tx_irq = ret; > + if (!s3c24xx_serial_has_interrupt_mask(port)) { > + ret = platform_get_irq(platdev, 1); > + if (ret > 0) > + ourport->tx_irq = ret; > + } > /* > * DMA is currently supported only on DT platforms, if DMA properties > * are specified. > -- > 2.17.1
Hi On 10.08.2020 05:00, Tamseel Shams wrote: > In few older Samsung SoCs like s3c2410, s3c2412 > and s3c2440, UART IP is having 2 interrupt lines. > However, in other SoCs like s3c6400, s5pv210, > exynos5433, and exynos4210 UART is having only 1 > interrupt line. Due to this, "platform_get_irq(platdev, 1)" > call in the driver gives the following false-positive error: > "IRQ index 1 not found" on newer SoC's. > > This patch adds the condition to check for Tx interrupt > only for the those SoC's which have 2 interrupt lines. > > Signed-off-by: Tamseel Shams <m.shams@samsung.com> Indeed, it removes the warning on various Exynos{3,4,5} based boards. Tested-by: Marek Szyprowski <m.szyprowski@samsung.com> > > ... Best regards
diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c index 6ef614d8648c..b923683e6a25 100644 --- a/drivers/tty/serial/samsung_tty.c +++ b/drivers/tty/serial/samsung_tty.c @@ -1911,9 +1911,11 @@ static int s3c24xx_serial_init_port(struct s3c24xx_uart_port *ourport, ourport->tx_irq = ret + 1; } - ret = platform_get_irq(platdev, 1); - if (ret > 0) - ourport->tx_irq = ret; + if (!s3c24xx_serial_has_interrupt_mask(port)) { + ret = platform_get_irq(platdev, 1); + if (ret > 0) + ourport->tx_irq = ret; + } /* * DMA is currently supported only on DT platforms, if DMA properties * are specified.
In few older Samsung SoCs like s3c2410, s3c2412 and s3c2440, UART IP is having 2 interrupt lines. However, in other SoCs like s3c6400, s5pv210, exynos5433, and exynos4210 UART is having only 1 interrupt line. Due to this, "platform_get_irq(platdev, 1)" call in the driver gives the following false-positive error: "IRQ index 1 not found" on newer SoC's. This patch adds the condition to check for Tx interrupt only for the those SoC's which have 2 interrupt lines. Signed-off-by: Tamseel Shams <m.shams@samsung.com> --- Commit message is changed. Added RFT, for older platform. Addressed Krzysztof's review comments [1] [1] -> https://lkml.org/lkml/2020/7/21/150 drivers/tty/serial/samsung_tty.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)