Re: [PATCH 0/2] add regulator driver and mfd cell for Intel Cherry Trail Whiskey Cove PMIC

From: Andrey Zhizhikin
Date: Mon Oct 28 2019 - 10:40:28 EST


On Mon, Oct 28, 2019 at 1:42 PM Adrian Hunter <adrian.hunter@xxxxxxxxx> wrote:
>
> On 25/10/19 10:55 AM, Andy Shevchenko wrote:
> > On Fri, Oct 25, 2019 at 10:53:35AM +0300, Andy Shevchenko wrote:
> >> On Thu, Oct 24, 2019 at 02:29:37PM +0000, Andrey Zhizhikin wrote:
> >>> This patchset introduces additional regulator driver for Intel Cherry
> >>> Trail Whiskey Cove PMIC. It also adds a cell in mfd driver for this
> >>> PMIC, which is used to instantiate this regulator.
> >>>
> >>> Regulator support for this PMIC was present in kernel release from Intel
> >>> targeted Aero platform, but was not entirely ported upstream and has
> >>> been omitted in mainline kernel releases. Consecutively, absence of
> >>> regulator caused the SD Card interface not to be provided with Vqcc
> >>> voltage source needed to operate with UHS-I cards.
> >>>
> >>> Following patches are addessing this issue and making sd card interface
> >>> to be fully operable with UHS-I cards. Regulator driver lists an ACPI id
> >>> of the SD Card interface in consumers and exposes optional "vqmmc"
> >>> voltage source, which mmc driver uses to switch signalling voltages
> >>> between 1.8V and 3.3V.
> >>>
> >>> This set contains of 2 patches: one is implementing the regulator driver
> >>> (based on a non upstreamed version from Intel Aero), and another patch
> >>> registers this driver as mfd cell in exising Whiskey Cove PMIC driver.
> >>
> >> Thank you.
> >> Hans, Cc'ed, has quite interested in these kind of patches.
> >> Am I right, Hans?
> >
> > Since it's about UHS/SD, Cc to Adrian as well.
> >
>
> My only concern is that the driver might conflict with ACPI methods trying
> to do the same thing, e.g. there is one ACPI SDHC instance from GPDWin DSDT
> with code like this:
>
[... cut ...]

That's a good point, and this is what I tried at first when I started
to work on this problem. In my case INTEL_DSM_V18_SWITCH (fn=0x3) got
executed in the mmc sub-system, but without the regulator or DSDT
support the card did not get the proper voltage.

The DSDT on Intel Aero reference platform looks different here.
Currently I don't have it on hands, but would be able to look it up
next week.

--
Regards,
Andrey.