Re: [PATCH v6 0/8] mfd: introduce a driver for LPSS devices on SPT

Mika Westerberg
2015-07-27T16:07:02Z

On Mon, Jul 27, 2015 at 04:27:33PM +0100, Lee Jones wrote:
> FAO Stephen Boyd,
>
> > Stephen, can you, please, have a look into patch 8 regarding to clock name
> > matching and other stuff Lee asked?
>
> Patch 8:
>
> "Can you review the clock implementation please? It looks
> fragile to me as it relies heavily on device names constructed
> of MFD cell names and IDA numbers cat'ed together!"

Lee, can you suggest an alternative then?

Why we are doing it like this is that number of different LPSS devices
changes from SoC to SoC. In addition to that the device (called "slice")
might have iDMA block or not.

Since the drivers in question (pxa2xx-spi, i2c-designware and 8250_dw)
use standard clk framework to request their clocks the Linux device must
have clock registered which matches the device in advance.

Because we add the host controller device dynamically (from the MFD
driver) based on how many devices are actually present, we need somehow
predict what would be the correct name and instance number for that
device to get the clock for it. That's the reason we use IDA here along
with the cell name (or driver name).