mbox series

[v3,00/10] serial: uartps: Add run time support for more IPs than hardcoded 2

Message ID cover.1535980253.git.michal.simek@xilinx.com (mailing list archive)
Headers show
Series serial: uartps: Add run time support for more IPs than hardcoded 2 | expand

Message

Michal Simek Sept. 3, 2018, 1:10 p.m. UTC
Hi,

this series is trying to address discussion I had with Alan in past
https://patchwork.kernel.org/patch/9738445/ and also with Rob in v1
https://lkml.org/lkml/2018/4/26/551.

These patches are doing preparation to enable dynamic ID port allocation
which is capable to create devices with higher IDs.

For example this is how it works.
uart0 on higher alias
serial0 = &uart1;
serial30 = &uart0;

~# ls -la /dev/ttyPS*
crw-------    1 root     root      252,   0 Jun  6 12:19 /dev/ttyPS0
crw--w----    1 root     root      253, 100 Jan  1  1970 /dev/ttyPS30

Thanks,
Michal

Changes in v3:
- New patch found by testing
- New patch - can be sent separately but there is dependency that's why
  sent in this series
- Fix uart_unregister_driver() in error path or when driver is removed.
- Change commit message
- s/,/;/ in filling structure
- get cdns_uart_uart_driver out of PS_UART_CONSOLE ifdefs
- New patch in series
- Rebase on the top of previous broken patch
- Change patch subject ("was serial: uartps: Remove CDNS_UART_NR_PORTS
  macro")
- Keep CDNS_UART_NR_PORTS in this patch and remove it in next one and
  align commit message to reflect this
- Allocate struct console dynamically too to be unique for every
  instance
- Cleanup error path
- New patch in series

Changes in v2:
- new patch - it can be sent separately too
- new patch - it can be sent separately too
- new patch - it can be sent separately too
- Remove nr field logic
- new patch - it can be sent separately too
- Register one uart_driver with unique minor at probe time

Michal Simek (9):
  serial: uartps: console_setup() can't be placed to init section
  serial: uartps: Do not initialize field to zero again
  serial: uartps: Do not use static struct uart_driver out of probe()
  serial: uartps: Move alias reading higher in probe()
  serial: uartps: Move register to probe based on run time detection
  serial: uartps: Fill struct uart_driver in probe()
  serial: uartps: Change logic how console_port is setup
  serial: uartps: Register own uart console and driver structures
  serial: uartps: Move Port ID to device data structure

Nava kishore Manne (1):
  serial: uartps: Fix suspend functionality

 drivers/tty/serial/xilinx_uartps.c | 203 +++++++++++++++++++------------------
 1 file changed, 107 insertions(+), 96 deletions(-)

Comments

Michal Simek Sept. 18, 2018, 11:54 a.m. UTC | #1
Hi Greg,

On 3.9.2018 15:10, Michal Simek wrote:
> Hi,
> 
> this series is trying to address discussion I had with Alan in past
> https://patchwork.kernel.org/patch/9738445/ and also with Rob in v1
> https://lkml.org/lkml/2018/4/26/551.
> 
> These patches are doing preparation to enable dynamic ID port allocation
> which is capable to create devices with higher IDs.
> 
> For example this is how it works.
> uart0 on higher alias
> serial0 = &uart1;
> serial30 = &uart0;
> 
> ~# ls -la /dev/ttyPS*
> crw-------    1 root     root      252,   0 Jun  6 12:19 /dev/ttyPS0
> crw--w----    1 root     root      253, 100 Jan  1  1970 /dev/ttyPS30
> 
> Thanks,
> Michal
> 
> Changes in v3:
> - New patch found by testing
> - New patch - can be sent separately but there is dependency that's why
>   sent in this series
> - Fix uart_unregister_driver() in error path or when driver is removed.
> - Change commit message
> - s/,/;/ in filling structure
> - get cdns_uart_uart_driver out of PS_UART_CONSOLE ifdefs
> - New patch in series
> - Rebase on the top of previous broken patch
> - Change patch subject ("was serial: uartps: Remove CDNS_UART_NR_PORTS
>   macro")
> - Keep CDNS_UART_NR_PORTS in this patch and remove it in next one and
>   align commit message to reflect this
> - Allocate struct console dynamically too to be unique for every
>   instance
> - Cleanup error path
> - New patch in series
> 
> Changes in v2:
> - new patch - it can be sent separately too
> - new patch - it can be sent separately too
> - new patch - it can be sent separately too
> - Remove nr field logic
> - new patch - it can be sent separately too
> - Register one uart_driver with unique minor at probe time
> 
> Michal Simek (9):
>   serial: uartps: console_setup() can't be placed to init section
>   serial: uartps: Do not initialize field to zero again
>   serial: uartps: Do not use static struct uart_driver out of probe()
>   serial: uartps: Move alias reading higher in probe()
>   serial: uartps: Move register to probe based on run time detection
>   serial: uartps: Fill struct uart_driver in probe()
>   serial: uartps: Change logic how console_port is setup
>   serial: uartps: Register own uart console and driver structures
>   serial: uartps: Move Port ID to device data structure
> 
> Nava kishore Manne (1):
>   serial: uartps: Fix suspend functionality
> 
>  drivers/tty/serial/xilinx_uartps.c | 203 +++++++++++++++++++------------------
>  1 file changed, 107 insertions(+), 96 deletions(-)
> 

Can you please look at this series?
I have sent 2 more patches on the top of this series where OF patch was
reviewed by Rob already.

Thanks,
Michal
Greg Kroah-Hartman Sept. 18, 2018, 12:01 p.m. UTC | #2
On Tue, Sep 18, 2018 at 01:54:31PM +0200, Michal Simek wrote:
> Hi Greg,
> 
> On 3.9.2018 15:10, Michal Simek wrote:
> > Hi,
> > 
> > this series is trying to address discussion I had with Alan in past
> > https://patchwork.kernel.org/patch/9738445/ and also with Rob in v1
> > https://lkml.org/lkml/2018/4/26/551.
> > 
> > These patches are doing preparation to enable dynamic ID port allocation
> > which is capable to create devices with higher IDs.
> > 
> > For example this is how it works.
> > uart0 on higher alias
> > serial0 = &uart1;
> > serial30 = &uart0;
> > 
> > ~# ls -la /dev/ttyPS*
> > crw-------    1 root     root      252,   0 Jun  6 12:19 /dev/ttyPS0
> > crw--w----    1 root     root      253, 100 Jan  1  1970 /dev/ttyPS30
> > 
> > Thanks,
> > Michal
> > 
> > Changes in v3:
> > - New patch found by testing
> > - New patch - can be sent separately but there is dependency that's why
> >   sent in this series
> > - Fix uart_unregister_driver() in error path or when driver is removed.
> > - Change commit message
> > - s/,/;/ in filling structure
> > - get cdns_uart_uart_driver out of PS_UART_CONSOLE ifdefs
> > - New patch in series
> > - Rebase on the top of previous broken patch
> > - Change patch subject ("was serial: uartps: Remove CDNS_UART_NR_PORTS
> >   macro")
> > - Keep CDNS_UART_NR_PORTS in this patch and remove it in next one and
> >   align commit message to reflect this
> > - Allocate struct console dynamically too to be unique for every
> >   instance
> > - Cleanup error path
> > - New patch in series
> > 
> > Changes in v2:
> > - new patch - it can be sent separately too
> > - new patch - it can be sent separately too
> > - new patch - it can be sent separately too
> > - Remove nr field logic
> > - new patch - it can be sent separately too
> > - Register one uart_driver with unique minor at probe time
> > 
> > Michal Simek (9):
> >   serial: uartps: console_setup() can't be placed to init section
> >   serial: uartps: Do not initialize field to zero again
> >   serial: uartps: Do not use static struct uart_driver out of probe()
> >   serial: uartps: Move alias reading higher in probe()
> >   serial: uartps: Move register to probe based on run time detection
> >   serial: uartps: Fill struct uart_driver in probe()
> >   serial: uartps: Change logic how console_port is setup
> >   serial: uartps: Register own uart console and driver structures
> >   serial: uartps: Move Port ID to device data structure
> > 
> > Nava kishore Manne (1):
> >   serial: uartps: Fix suspend functionality
> > 
> >  drivers/tty/serial/xilinx_uartps.c | 203 +++++++++++++++++++------------------
> >  1 file changed, 107 insertions(+), 96 deletions(-)
> > 
> 
> Can you please look at this series?
> I have sent 2 more patches on the top of this series where OF patch was
> reviewed by Rob already.

My tty queue is a bit lagging right now, sorry, will get to that soon...

greg k-h