mbox series

[v4,0/3] tty: serial: samsung: Serial fixes for Apple A7-A11 SoCs

Message ID 20240909084222.3209-1-towinchenmi@gmail.com (mailing list archive)
Headers show
Series tty: serial: samsung: Serial fixes for Apple A7-A11 SoCs | expand

Message

Nick Chan Sept. 9, 2024, 8:37 a.m. UTC
Hi,

This series fixes issues with serial on A7-A11 SoCs. The changes do not
seem to affect existing M1 and up users so they can be applied
unconditionally.

Firstly, these SoCs require 32-bit writes on the serial port. This only
manifested in earlycon as reg-io-width in device tree is consulted for
normal serial writes.

Secondly, A7-A9 SoCs seems to use different bits for RXTO and RXTO
enable. Accessing these bits in addition to the original RXTO and RXTO
enable bits will allow serial rx to work correctly on those SoCs.

Changes in v4:
  - Removed fake Reviewed-by tag added by accident... need to stop
    making stupid mistakes that wastes everyone's time. The remaining
    Reviewed-by is real as far as I am aware.

Changes in v3:
  - v2 did not declare itself as v2 in subject line... resend as v3.

Changes in v2:
  - Mention A7-A11 in the comment about changing register accesses to
    MMIO32.

  - Use BIT() macro for new entries, and change the existing APPLE_S5L_*
    entries for consistency.

v1: https://lore.kernel.org/linux-samsung-soc/20240907111431.2970-1-towinchenmi@gmail.com
v2: https://lore.kernel.org/linux-samsung-soc/20240908075904.12133-1-towinchenmi@gmail.com
v3: https://lore.kernel.org/linux-samsung-soc/20240908090939.2745-1-towinchenmi@gmail.com

Nick Chan
---

Nick Chan (3):
  tty: serial: samsung: Use BIT() macro for APPLE_S5L_*
  tty: serial: samsung: Fix A7-A11 serial earlycon SError
  tty: serial: samsung: Fix serial rx on Apple A7-A9

 drivers/tty/serial/samsung_tty.c | 22 ++++++++++++++++------
 include/linux/serial_s3c.h       | 24 ++++++++++++++----------
 2 files changed, 30 insertions(+), 16 deletions(-)


base-commit: 9aaeb87ce1e966169a57f53a02ba05b30880ffb8

Comments

Janne Grunau Sept. 9, 2024, 1:10 p.m. UTC | #1
Hej,

On Mon, Sep 9, 2024, at 10:37, Nick Chan wrote:
> Hi,
>
> This series fixes issues with serial on A7-A11 SoCs. The changes do not
> seem to affect existing M1 and up users so they can be applied
> unconditionally.
>
> Firstly, these SoCs require 32-bit writes on the serial port. This only
> manifested in earlycon as reg-io-width in device tree is consulted for
> normal serial writes.
>
> Secondly, A7-A9 SoCs seems to use different bits for RXTO and RXTO
> enable. Accessing these bits in addition to the original RXTO and RXTO
> enable bits will allow serial rx to work correctly on those SoCs.
>
> Changes in v4:
>   - Removed fake Reviewed-by tag added by accident... need to stop
>     making stupid mistakes that wastes everyone's time. The remaining
>     Reviewed-by is real as far as I am aware.
>
> Changes in v3:
>   - v2 did not declare itself as v2 in subject line... resend as v3.
>
> Changes in v2:
>   - Mention A7-A11 in the comment about changing register accesses to
>     MMIO32.
>
>   - Use BIT() macro for new entries, and change the existing APPLE_S5L_*
>     entries for consistency.
>
> v1: 
> https://lore.kernel.org/linux-samsung-soc/20240907111431.2970-1-towinchenmi@gmail.com
> v2: 
> https://lore.kernel.org/linux-samsung-soc/20240908075904.12133-1-towinchenmi@gmail.com
> v3: 
> https://lore.kernel.org/linux-samsung-soc/20240908090939.2745-1-towinchenmi@gmail.com
>
> Nick Chan
> ---
>
> Nick Chan (3):
>   tty: serial: samsung: Use BIT() macro for APPLE_S5L_*
>   tty: serial: samsung: Fix A7-A11 serial earlycon SError
>   tty: serial: samsung: Fix serial rx on Apple A7-A9
>
>  drivers/tty/serial/samsung_tty.c | 22 ++++++++++++++++------
>  include/linux/serial_s3c.h       | 24 ++++++++++++++----------
>  2 files changed, 30 insertions(+), 16 deletions(-)

whole series tested on M1 Max and M2 Pro

Tested-by: Janne Grunau <j@jannau.net>

best regards
janne
Neal Gompa Sept. 10, 2024, 12:21 p.m. UTC | #2
On Mon, Sep 9, 2024 at 10:42 AM Nick Chan <towinchenmi@gmail.com> wrote:
>
> Hi,
>
> This series fixes issues with serial on A7-A11 SoCs. The changes do not
> seem to affect existing M1 and up users so they can be applied
> unconditionally.
>
> Firstly, these SoCs require 32-bit writes on the serial port. This only
> manifested in earlycon as reg-io-width in device tree is consulted for
> normal serial writes.
>
> Secondly, A7-A9 SoCs seems to use different bits for RXTO and RXTO
> enable. Accessing these bits in addition to the original RXTO and RXTO
> enable bits will allow serial rx to work correctly on those SoCs.
>
> Changes in v4:
>   - Removed fake Reviewed-by tag added by accident... need to stop
>     making stupid mistakes that wastes everyone's time. The remaining
>     Reviewed-by is real as far as I am aware.
>
> Changes in v3:
>   - v2 did not declare itself as v2 in subject line... resend as v3.
>
> Changes in v2:
>   - Mention A7-A11 in the comment about changing register accesses to
>     MMIO32.
>
>   - Use BIT() macro for new entries, and change the existing APPLE_S5L_*
>     entries for consistency.
>
> v1: https://lore.kernel.org/linux-samsung-soc/20240907111431.2970-1-towinchenmi@gmail.com
> v2: https://lore.kernel.org/linux-samsung-soc/20240908075904.12133-1-towinchenmi@gmail.com
> v3: https://lore.kernel.org/linux-samsung-soc/20240908090939.2745-1-towinchenmi@gmail.com
>
> Nick Chan
> ---
>
> Nick Chan (3):
>   tty: serial: samsung: Use BIT() macro for APPLE_S5L_*
>   tty: serial: samsung: Fix A7-A11 serial earlycon SError
>   tty: serial: samsung: Fix serial rx on Apple A7-A9
>
>  drivers/tty/serial/samsung_tty.c | 22 ++++++++++++++++------
>  include/linux/serial_s3c.h       | 24 ++++++++++++++----------
>  2 files changed, 30 insertions(+), 16 deletions(-)
>
>
> base-commit: 9aaeb87ce1e966169a57f53a02ba05b30880ffb8
> --
> 2.46.0
>
>

Whole series LGTM.

Reviewed-by: Neal Gompa <neal@gompa.dev>