Re: [PATCH 2/2] serial: 8250: Add support for 8250/16550 as MFD function

From: Esben Haabendal
Date: Tue May 07 2019 - 08:05:29 EST


Lee Jones <lee.jones@xxxxxxxxxx> writes:

> On Fri, 26 Apr 2019, Esben Haabendal wrote:
>
>> The serial8250-mfd driver is for adding 8250/16550 UART ports as functions
>> to an MFD driver.
>>
>> When calling mfd_add_device(), platform_data should be a pointer to a
>> struct plat_serial8250_port, with proper settings like .flags, .type,
>> .iotype, .regshift and .uartclk. Memory (or ioport) and IRQ should be
>> passed as cell resources.
>
> What? No, please!
>
> If you *must* create a whole driver just to be able to use
> platform_*() helpers (which I don't think you should), then please
> call it something else. This doesn't have anything to do with MFD.

True.

I really don't think it is a good idea to create a whole driver just to
be able to use platform_get_*() helpers. And if I am forced to do this,
because I am unable to convince Andy to improve the standard serial8250
driver to support that, it should be called MFD. The driver would be
generally usable for all usecases where platform_get_*() works.

I don't have any idea what to call such a driver. It really would just
be a fork of the current serial8250 driver, just allowing use of
platform_get_*(), supporting exactly the same hardware.

I am still hoping that we can find a way to improve serial8250 to be
usable in these cases.

/Esben