mbox series

[0/4] xen/arm: pl011: Use correct accessors

Message ID 20230607092727.19654-1-michal.orzel@amd.com (mailing list archive)
Headers show
Series xen/arm: pl011: Use correct accessors | expand

Message

Michal Orzel June 7, 2023, 9:27 a.m. UTC
At the moment we have a real mix of accessors used for PL011 registers across
early printk and runtime driver resulting in a) not spec compliant behavior
and b) inconsistency. This series:
 - switches to use the 8/16-bit accessors in normal case,
 - adds support to use 32-bit only accessors.

The behavior is now the same as in Linux.

The last patch adding support for SBSA UART in dt boot was added to make
the merge process easier. Also, arm,sbsa-uart property is usually present
next to arm,pl011 which would casue the pl011 driver to believe it is driving
PL011 and not SBSA, therefore resulting in accessing the registers that shall
not be touched (as oppose to just failing).

Discussion:
https://lore.kernel.org/xen-devel/b31a9f06-1ad8-b882-2fb0-84a84a1accb8@xen.org/T/#

Michal Orzel (4):
  xen/arm: debug-pl011: Use correct accessors
  xen/arm: debug-pl011: Add support for 32-bit only MMIO
  xen/arm: pl011: Use correct accessors
  xen/arm: pl011: Add SBSA UART device-tree support

 docs/misc/arm/early-printk.txt        |  3 ++
 xen/arch/arm/Kconfig.debug            |  7 ++++
 xen/arch/arm/arm32/debug-pl011.inc    | 12 +++---
 xen/arch/arm/arm64/debug-pl011.inc    | 12 +++---
 xen/arch/arm/include/asm/pl011-uart.h | 19 +++++++++
 xen/drivers/char/pl011.c              | 57 ++++++++++++++++++++++++---
 6 files changed, 92 insertions(+), 18 deletions(-)