mbox series

[SRU,jammy:linux-xilinx-zynqmp,00/14] Backport ps uart RS485 driver

Message ID 20240822091117.1760423-1-portia.stephens@canonical.com
Headers show
Series Backport ps uart RS485 driver | expand

Message

Portia Stephens Aug. 22, 2024, 9:11 a.m. UTC
[ Impact ]

* Backports support for rs485 to the uartps driver from the tty staging tree
* One device tree patch is taken from the vendor's tree .

[ Test Plan ]
* Testing is needed to ensure this doesn't break the serial console on current platforms. QA will develop a new automated test to be integrated into cert testing
* Testing of the RS485 port will be integrated into the cert testing for the KD240

[ Where problems could occur ]

* The patches have not landed in mainline and are being pulled from the maintainers tree. There is a risk they will be rejected from mainline.
* Two patch is not in mainline and only exists on the vendor tree , it is a device tree change.

[ Other info ]
* The following 3 patches are required from the tty-dev tree. All other patches were pulled in to support the backport.
1. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=32152467ffac3b79eae7313959c310946b0e6072
2. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=74231ab6cc2d02303ddf1fabd878756c52f788a5
3. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=fccc9d9233f918ee50cf2955ae7134a7f3418351
4. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=cc3236cd758b07c1f36cabd55ea1740f0881faa0
5. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=b4337685010990385901405cc317a5a46b147b5a
6. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=e3896be240780ccade65cc6cc8925c6f12e7f6c6
7. https://github.com/Xilinx/linux-xlnx/commit/6472141dd7401ff43fc0fbb3dbc253454c5be2ee
* BugLink: https://bugs.launchpad.net/bugs/2055237

Geert Uytterhoeven (1):
  serial: 8250: Document termios parameter of serial8250_em485_config()

Ilpo Järvinen (2):
  serial: Store character timing information to uart_port
  serial: take termios_rwsem for ->rs485_config() & pass termios as
    param

Johan Hovold (1):
  serial: fix TIOCSRS485 locking

Krzysztof Kozlowski (1):
  dt-bindings: serial: cdsn,uart: add power-domains

Manikanta Guntupalli (8):
  dt-bindings: Add reference to rs485.yaml
  tty: serial: uartps: Relocate cdns_uart_tx_empty to facilitate rs485
  tty: serial: uartps: Add rs485 support to uartps driver
  dt-bindings: serial: cdns,uart: Add optional reset property
  arm64: zynqmp: Add resets property for UART nodes
  tty: serial: uartps: Add support for uartps controller reset
  arm64: zynqmp: dts: Add required properties for rs485 support for
    KD240
  arm64: zynqmp: dts: Add rts delay property for rs485 mode on KD240

Wen-chien Jesse Sung (1):
  UBUNTU: SAUCE: dts: zynqmp-sck-kd-g-revA: Enable uart0 for KD240

 .../devicetree/bindings/serial/cdns,uart.yaml |  21 +-
 .../boot/dts/xilinx/zynqmp-sck-kd-g-revA.dts  |  34 +++
 arch/arm64/boot/dts/xilinx/zynqmp.dtsi        |   2 +
 .../staging/uartlite-rs485/uartlite-rs485.c   |   1 +
 drivers/tty/serial/8250/8250.h                |   3 +-
 drivers/tty/serial/8250/8250_exar.c           |   9 +-
 drivers/tty/serial/8250/8250_fintek.c         |   2 +-
 drivers/tty/serial/8250/8250_lpc18xx.c        |   2 +-
 drivers/tty/serial/8250/8250_pci.c            |   2 +-
 drivers/tty/serial/8250/8250_port.c           |   4 +-
 drivers/tty/serial/amba-pl011.c               |   2 +-
 drivers/tty/serial/ar933x_uart.c              |   2 +-
 drivers/tty/serial/atmel_serial.c             |   2 +-
 drivers/tty/serial/fsl_lpuart.c               |   4 +-
 drivers/tty/serial/imx.c                      |   2 +-
 drivers/tty/serial/max310x.c                  |   2 +-
 drivers/tty/serial/mcf.c                      |   3 +-
 drivers/tty/serial/omap-serial.c              |   3 +-
 drivers/tty/serial/sc16is7xx.c                |   2 +-
 drivers/tty/serial/serial_core.c              |  30 ++-
 drivers/tty/serial/stm32-usart.c              |   2 +-
 drivers/tty/serial/xilinx_uartps.c            | 251 ++++++++++++++++--
 include/linux/serial_core.h                   |   2 +
 23 files changed, 332 insertions(+), 55 deletions(-)

Comments

Aaron Jauregui Aug. 23, 2024, 3:48 a.m. UTC | #1
On Thu, Aug 22, 2024 at 07:11:03PM +1000, Portia Stephens wrote:
> [ Impact ]
> 
> * Backports support for rs485 to the uartps driver from the tty staging tree
> * One device tree patch is taken from the vendor's tree .
> 
> [ Test Plan ]
> * Testing is needed to ensure this doesn't break the serial console on current platforms. QA will develop a new automated test to be integrated into cert testing
> * Testing of the RS485 port will be integrated into the cert testing for the KD240
> 
> [ Where problems could occur ]
> 
> * The patches have not landed in mainline and are being pulled from the maintainers tree. There is a risk they will be rejected from mainline.
> * Two patch is not in mainline and only exists on the vendor tree , it is a device tree change.
> 
> [ Other info ]
> * The following 3 patches are required from the tty-dev tree. All other patches were pulled in to support the backport.
> 1. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=32152467ffac3b79eae7313959c310946b0e6072
> 2. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=74231ab6cc2d02303ddf1fabd878756c52f788a5
> 3. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=fccc9d9233f918ee50cf2955ae7134a7f3418351
> 4. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=cc3236cd758b07c1f36cabd55ea1740f0881faa0
> 5. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=b4337685010990385901405cc317a5a46b147b5a
> 6. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=e3896be240780ccade65cc6cc8925c6f12e7f6c6
> 7. https://github.com/Xilinx/linux-xlnx/commit/6472141dd7401ff43fc0fbb3dbc253454c5be2ee
> * BugLink: https://bugs.launchpad.net/bugs/2055237
> 
> Geert Uytterhoeven (1):
>   serial: 8250: Document termios parameter of serial8250_em485_config()
> 
> Ilpo Järvinen (2):
>   serial: Store character timing information to uart_port
>   serial: take termios_rwsem for ->rs485_config() & pass termios as
>     param
> 
> Johan Hovold (1):
>   serial: fix TIOCSRS485 locking
> 
> Krzysztof Kozlowski (1):
>   dt-bindings: serial: cdsn,uart: add power-domains
> 
> Manikanta Guntupalli (8):
>   dt-bindings: Add reference to rs485.yaml
>   tty: serial: uartps: Relocate cdns_uart_tx_empty to facilitate rs485
>   tty: serial: uartps: Add rs485 support to uartps driver
>   dt-bindings: serial: cdns,uart: Add optional reset property
>   arm64: zynqmp: Add resets property for UART nodes
>   tty: serial: uartps: Add support for uartps controller reset
>   arm64: zynqmp: dts: Add required properties for rs485 support for
>     KD240
>   arm64: zynqmp: dts: Add rts delay property for rs485 mode on KD240
> 
> Wen-chien Jesse Sung (1):
>   UBUNTU: SAUCE: dts: zynqmp-sck-kd-g-revA: Enable uart0 for KD240
> 
>  .../devicetree/bindings/serial/cdns,uart.yaml |  21 +-
>  .../boot/dts/xilinx/zynqmp-sck-kd-g-revA.dts  |  34 +++
>  arch/arm64/boot/dts/xilinx/zynqmp.dtsi        |   2 +
>  .../staging/uartlite-rs485/uartlite-rs485.c   |   1 +
>  drivers/tty/serial/8250/8250.h                |   3 +-
>  drivers/tty/serial/8250/8250_exar.c           |   9 +-
>  drivers/tty/serial/8250/8250_fintek.c         |   2 +-
>  drivers/tty/serial/8250/8250_lpc18xx.c        |   2 +-
>  drivers/tty/serial/8250/8250_pci.c            |   2 +-
>  drivers/tty/serial/8250/8250_port.c           |   4 +-
>  drivers/tty/serial/amba-pl011.c               |   2 +-
>  drivers/tty/serial/ar933x_uart.c              |   2 +-
>  drivers/tty/serial/atmel_serial.c             |   2 +-
>  drivers/tty/serial/fsl_lpuart.c               |   4 +-
>  drivers/tty/serial/imx.c                      |   2 +-
>  drivers/tty/serial/max310x.c                  |   2 +-
>  drivers/tty/serial/mcf.c                      |   3 +-
>  drivers/tty/serial/omap-serial.c              |   3 +-
>  drivers/tty/serial/sc16is7xx.c                |   2 +-
>  drivers/tty/serial/serial_core.c              |  30 ++-
>  drivers/tty/serial/stm32-usart.c              |   2 +-
>  drivers/tty/serial/xilinx_uartps.c            | 251 ++++++++++++++++--
>  include/linux/serial_core.h                   |   2 +
>  23 files changed, 332 insertions(+), 55 deletions(-)

Acked-by: Aaron Jauregui <aaron.jauregui@canonical.com>
Manuel Diewald Aug. 23, 2024, 9:24 a.m. UTC | #2
On Thu, Aug 22, 2024 at 07:11:03PM +1000, Portia Stephens wrote:
> [ Where problems could occur ]
> 
> * The patches have not landed in mainline and are being pulled from the maintainers tree. There is a risk they will be rejected from mainline.

Patches originally only on the maintainer's tree have all been merged
into upstream, it seems.

> * Two patch is not in mainline and only exists on the vendor tree , it is a device tree change.

That's three patches, no?

> Manikanta Guntupalli (8):
>   arm64: zynqmp: dts: Add required properties for rs485 support for
>     KD240
>   arm64: zynqmp: dts: Add rts delay property for rs485 mode on KD240

It looks like these two patches are currently only on the vendor's tree.
So I think they should be prefixed with UBUNTU: SAUCE:, too? We can
amend the commits while applying if that's the case.

Acked-by: Manuel Diewald <manuel.diewald@canonical.com>
Portia Stephens Aug. 25, 2024, 11:04 p.m. UTC | #3
On Fri, Aug 23, 2024 at 7:24 PM Manuel Diewald
<manuel.diewald@canonical.com> wrote:
>
> On Thu, Aug 22, 2024 at 07:11:03PM +1000, Portia Stephens wrote:
> > [ Where problems could occur ]
> >
> > * The patches have not landed in mainline and are being pulled from the maintainers tree. There is a risk they will be rejected from mainline.
>
> Patches originally only on the maintainer's tree have all been merged
> into upstream, it seems.

Correct, I wrote the buglink months ago and the patches have since
been merged. I've fixed the launchpad bug.

>
> > * Two patch is not in mainline and only exists on the vendor tree , it is a device tree change.
>
> That's three patches, no?

Correct, fixed.

>
> > Manikanta Guntupalli (8):
> >   arm64: zynqmp: dts: Add required properties for rs485 support for
> >     KD240
> >   arm64: zynqmp: dts: Add rts delay property for rs485 mode on KD240
>
> It looks like these two patches are currently only on the vendor's tree.
> So I think they should be prefixed with UBUNTU: SAUCE:, too? We can
> amend the commits while applying if that's the case.

Done.

>
> Acked-by: Manuel Diewald <manuel.diewald@canonical.com>
>
> --
>  Manuel
Portia Stephens Aug. 25, 2024, 11:04 p.m. UTC | #4
On Thu, Aug 22, 2024 at 7:11 PM Portia Stephens
<portia.stephens@canonical.com> wrote:
>
> [ Impact ]
>
> * Backports support for rs485 to the uartps driver from the tty staging tree
> * One device tree patch is taken from the vendor's tree .
>
> [ Test Plan ]
> * Testing is needed to ensure this doesn't break the serial console on current platforms. QA will develop a new automated test to be integrated into cert testing
> * Testing of the RS485 port will be integrated into the cert testing for the KD240
>
> [ Where problems could occur ]
>
> * The patches have not landed in mainline and are being pulled from the maintainers tree. There is a risk they will be rejected from mainline.
> * Two patch is not in mainline and only exists on the vendor tree , it is a device tree change.
>
> [ Other info ]
> * The following 3 patches are required from the tty-dev tree. All other patches were pulled in to support the backport.
> 1. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=32152467ffac3b79eae7313959c310946b0e6072
> 2. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=74231ab6cc2d02303ddf1fabd878756c52f788a5
> 3. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=fccc9d9233f918ee50cf2955ae7134a7f3418351
> 4. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=cc3236cd758b07c1f36cabd55ea1740f0881faa0
> 5. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=b4337685010990385901405cc317a5a46b147b5a
> 6. https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?h=tty-next&id=e3896be240780ccade65cc6cc8925c6f12e7f6c6
> 7. https://github.com/Xilinx/linux-xlnx/commit/6472141dd7401ff43fc0fbb3dbc253454c5be2ee
> * BugLink: https://bugs.launchpad.net/bugs/2055237
>
> Geert Uytterhoeven (1):
>   serial: 8250: Document termios parameter of serial8250_em485_config()
>
> Ilpo Järvinen (2):
>   serial: Store character timing information to uart_port
>   serial: take termios_rwsem for ->rs485_config() & pass termios as
>     param
>
> Johan Hovold (1):
>   serial: fix TIOCSRS485 locking
>
> Krzysztof Kozlowski (1):
>   dt-bindings: serial: cdsn,uart: add power-domains
>
> Manikanta Guntupalli (8):
>   dt-bindings: Add reference to rs485.yaml
>   tty: serial: uartps: Relocate cdns_uart_tx_empty to facilitate rs485
>   tty: serial: uartps: Add rs485 support to uartps driver
>   dt-bindings: serial: cdns,uart: Add optional reset property
>   arm64: zynqmp: Add resets property for UART nodes
>   tty: serial: uartps: Add support for uartps controller reset
>   arm64: zynqmp: dts: Add required properties for rs485 support for
>     KD240
>   arm64: zynqmp: dts: Add rts delay property for rs485 mode on KD240
>
> Wen-chien Jesse Sung (1):
>   UBUNTU: SAUCE: dts: zynqmp-sck-kd-g-revA: Enable uart0 for KD240
>
>  .../devicetree/bindings/serial/cdns,uart.yaml |  21 +-
>  .../boot/dts/xilinx/zynqmp-sck-kd-g-revA.dts  |  34 +++
>  arch/arm64/boot/dts/xilinx/zynqmp.dtsi        |   2 +
>  .../staging/uartlite-rs485/uartlite-rs485.c   |   1 +
>  drivers/tty/serial/8250/8250.h                |   3 +-
>  drivers/tty/serial/8250/8250_exar.c           |   9 +-
>  drivers/tty/serial/8250/8250_fintek.c         |   2 +-
>  drivers/tty/serial/8250/8250_lpc18xx.c        |   2 +-
>  drivers/tty/serial/8250/8250_pci.c            |   2 +-
>  drivers/tty/serial/8250/8250_port.c           |   4 +-
>  drivers/tty/serial/amba-pl011.c               |   2 +-
>  drivers/tty/serial/ar933x_uart.c              |   2 +-
>  drivers/tty/serial/atmel_serial.c             |   2 +-
>  drivers/tty/serial/fsl_lpuart.c               |   4 +-
>  drivers/tty/serial/imx.c                      |   2 +-
>  drivers/tty/serial/max310x.c                  |   2 +-
>  drivers/tty/serial/mcf.c                      |   3 +-
>  drivers/tty/serial/omap-serial.c              |   3 +-
>  drivers/tty/serial/sc16is7xx.c                |   2 +-
>  drivers/tty/serial/serial_core.c              |  30 ++-
>  drivers/tty/serial/stm32-usart.c              |   2 +-
>  drivers/tty/serial/xilinx_uartps.c            | 251 ++++++++++++++++--
>  include/linux/serial_core.h                   |   2 +
>  23 files changed, 332 insertions(+), 55 deletions(-)
>
> --
> 2.34.1
>