Re: [PATCH v2] serial: 8250_mtk: Switch to use platform_get_irq()

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

 




On 18/06/2020 14:29, Andy Shevchenko wrote:
> platform_get_irq() provides an established error code and error message.
> Also, it's better to use dedicated API to retrieve Linux IRQ resource.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

Reviewed-by: Matthias Brugger <matthias.bgg@xxxxxxxxx>

> ---
> v2: rebase on clean tree
>  drivers/tty/serial/8250/8250_mtk.c | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/tty/serial/8250/8250_mtk.c b/drivers/tty/serial/8250/8250_mtk.c
> index f839380c2f4c..685ded99fa6d 100644
> --- a/drivers/tty/serial/8250/8250_mtk.c
> +++ b/drivers/tty/serial/8250/8250_mtk.c
> @@ -494,13 +494,17 @@ static int mtk8250_probe_of(struct platform_device *pdev, struct uart_port *p,
>  static int mtk8250_probe(struct platform_device *pdev)
>  {
>  	struct uart_8250_port uart = {};
> -	struct resource *regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> -	struct resource *irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
>  	struct mtk8250_data *data;
> -	int err;
> +	struct resource *regs;
> +	int irq, err;
> +
> +	irq = platform_get_irq(pdev, 0);
> +	if (irq < 0)
> +		return irq;
>  
> -	if (!regs || !irq) {
> -		dev_err(&pdev->dev, "no registers/irq defined\n");
> +	regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> +	if (!regs) {
> +		dev_err(&pdev->dev, "no registers defined\n");
>  		return -EINVAL;
>  	}
>  
> @@ -524,7 +528,7 @@ static int mtk8250_probe(struct platform_device *pdev)
>  
>  	spin_lock_init(&uart.port.lock);
>  	uart.port.mapbase = regs->start;
> -	uart.port.irq = irq->start;
> +	uart.port.irq = irq;
>  	uart.port.pm = mtk8250_do_pm;
>  	uart.port.type = PORT_16550;
>  	uart.port.flags = UPF_BOOT_AUTOCONF | UPF_FIXED_PORT;
> 



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux