Re: [PATCH v2] serial: 8250_pnp: Support configurable reg shift property

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

 



On Wed, Mar 06, 2024 at 07:42:27PM +0800, Guanbing Huang wrote:
> From: Guanbing Huang <albanhuang@xxxxxxxxxxx>

Thanks for your contribution!
My comments below.

...


First of all, always start a new email thread when sending a new version of the
patch (i.o.w. no In-Reply-to email header).

> The 16550a serial port based on the ACPI table requires obtaining the
> reg-shift attribute. In the ACPI scenario, If the reg-shift property
> is not configured like in DTS, the 16550a serial driver cannot read or
> write controller registers properly during initialization.
> 
> Signed-off-by: Guanbing Huang <albanhuang@xxxxxxxxxxx>


> Signed-off-by: Bing Fan <tombinfan@xxxxxxxxxxx>
> Signed-off-by: Linheng Du <dylanlhdu@xxxxxxxxxxx>

This chain, as described in Submitting Patches documentation [1], should go
accordingly.

...

> @@ -473,6 +473,7 @@ serial_pnp_probe(struct pnp_dev *dev, const struct pnp_device_id *dev_id)
>  		uart.port.flags |= UPF_SHARE_IRQ;
>  	uart.port.uartclk = 1843200;
>  	device_property_read_u32(&dev->dev, "clock-frequency", &uart.port.uartclk);
> +	device_property_read_u8(&dev->dev, "reg-shift", &uart.port.regshift);
>  	uart.port.dev = &dev->dev;

Instead, it may make sense to switch to use uart_read_port_properties() which
has been recently introduced and dozen of drivers converted.

Ex. e6a46d073e11 ("serial: 8250_dw: Switch to use uart_read_port_properties()")

Yes, it assumes that you always need to base your changes on the latest
available changes in the certain subsystem (here it is tty-next branch
in Greg's tty tree, see git.kernel.org for the details).

>  	line = serial8250_register_8250_port(&uart);

[1]: https://www.kernel.org/doc/html/latest/process/submitting-patches.html

-- 
With Best Regards,
Andy Shevchenko






[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