mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2 0/2] serial: 8250_ingenic: Set UMR and UACR, add the X1600
@ 2026-10-24 22:07 Olivier Louvignes
  2026-10-24 22:07 ` [PATCH v2 1/2] dt-bindings: serial: ingenic: Add " Olivier Louvignes
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Olivier Louvignes @ 2026-10-24 22:07 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: Jiri Slaby, Paul Cercueil, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, H . Nikolaus Schaller, linux-serial, devicetree,
	linux-mips, linux-kernel, Olivier Louvignes

Ingenic UARTs carry a bit clock count (UMR) and a per-bit adjustment
(UACR) that the driver never sets, so a UART runs with whatever was left
there. On the X1600 of a HiBy R1 neither the vendor's 8 nor the reset
value 0 gives the 16 clocks a bit the 8250 divisor assumes, and the
Bluetooth chip on UART0 fails to set up. Patch 2 sets 16 and 0 at probe.

Changes since v1:
- Set UMR and UACR on every Ingenic UART rather than in an X1600 entry,
  as Nikolaus asked: the JZ4725, JZ4740, JZ4755, JZ4760, X1000, X1830,
  X2000 and X1600 programming manuals all have them at 0x24 and 0x28.
- Write 16 rather than the reset value: with UMR at 0 the R1's Bluetooth
  chip fails just as it does with 8.
- The binding keeps the X1600 compatible with the X1000's as fallback;
  the driver needs no entry of its own.
- Rebased on tty-next.

I could only test the X1600. On the other SoCs this writes the value the
divisor already assumes.

v1: https://lore.kernel.org/all/20261024051515.55639-1-olivier@mgcrea.io/

Olivier Louvignes (2):
  dt-bindings: serial: ingenic: Add the X1600
  serial: 8250_ingenic: Set UMR and UACR at probe

 .../devicetree/bindings/serial/ingenic,uart.yaml     |  3 +++
 drivers/tty/serial/8250/8250_ingenic.c               | 12 ++++++++++++
 2 files changed, 15 insertions(+)


base-commit: 1184f87e2790e8af9be3116f608d2e86b4792d7d
--
2.39.5


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-10-26 12:42 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-24 22:07 [PATCH v2 0/2] serial: 8250_ingenic: Set UMR and UACR, add the X1600 Olivier Louvignes
2026-10-24 22:07 ` [PATCH v2 1/2] dt-bindings: serial: ingenic: Add " Olivier Louvignes
2026-10-26 12:41   ` Krzysztof Kozlowski
2026-10-24 22:07 ` [PATCH v2 2/2] serial: 8250_ingenic: Set UMR and UACR at probe Olivier Louvignes
2026-10-25 22:13   ` Paul Cercueil
2026-10-25 22:05 ` [PATCH v2 0/2] serial: 8250_ingenic: Set UMR and UACR, add the X1600 H. Nikolaus Schaller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®