Re: [PATCH v2 0/3] HISI LPC ACPI UART support

From: John Garry
Date: Wed May 09 2018 - 10:49:05 EST


On 08/05/2018 12:17, Andy Shevchenko wrote:
On Tue, 2018-05-08 at 18:27 +0800, John Garry wrote:
This patchset adds ACPI FW support for the UART on
the LPC bus on the Huawei D03 development board.

It also drops MFD API usage. It's not right to use MFD
APIs outside drivers/mfd. As the alternate solution, we
use platform device APIs directly.

The UART is 8250-compatible, and has the following
profile:
- IO space iotype
- no interrupt, so polling mode required
- 16550 type

Currently no platform driver exists for the UART. Indeed,
for PNP-compatible devices - like this UART - it would be
better to create a PNP device so that we may use the
existing PNP driver. Thus, we should use the 8250 PNP
driver.

However this host driver does not support PNP devices.
An RFC was sent for PNP support in [1]. However it was
deemed impractical to follow this path.

So to provide this UART support we use the 8250 generic
isa driver. For this, we need to set the UART platform
device name to match the 8250 isa driver. This means
passing the 8250 serial config in the child pdev platform
data.

1. https://lkml.org/lkml/2018/4/20/278


I'm fine with this least invasive approach. It seems it has minimum
duplication of code, which is anyway unavoidable when we are speaking of
instantiating platform devices.

FWIW,
Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

Thanks Andy!

Hi xuwei,

Unless there are any more comments, can you please pick up this series (with Andy's review tags) for merging through the arm soc tree?

All the best,
John


Differences:
v1 -> v2:
- drop MFD API usage and use platform device APIs
directly for ACPI support

RFC -> v1:
- drop PNP support
- use static MFD cells
- add 8250 setup

John Garry (3):
HISI LPC: Stop using MFD APIs
HISI LPC: Re-Add ACPI child enumeration support
HISI LPC: Add ACPI UART support

drivers/bus/Kconfig | 1 -
drivers/bus/hisi_lpc.c | 159 ++++++++++++++++++++++++++++++--------
-----------
2 files changed, 97 insertions(+), 63 deletions(-)