mfd: intel_soc_pmic: Differentiate between Bay and Cherry Trail CRC variants
authorHans de Goede <hdegoede@redhat.com>
Mon, 4 Sep 2017 13:22:42 +0000 (15:22 +0200)
committerLee Jones <lee.jones@linaro.org>
Tue, 5 Sep 2017 07:46:02 +0000 (08:46 +0100)
commitb01e9348e106544e50691252bf58cde239681f19
treea2403d7f5ec17fe3bac703c881f01db46be34572
parent4d9ed62ab1425d85b25d04096cb4e74117e6dc24
mfd: intel_soc_pmic: Differentiate between Bay and Cherry Trail CRC variants

Both Bay and Cherry Trail devices may be used together with a Crystal Cove
PMIC. Each platform has its own variant of the PMIC, which both use the
same ACPI HID, but they are not 100% compatible.

This commits makes the intel_soc_pmic_core code check the _HRV of the
ACPI-firmware-node and selects intel_soc_pmic_config_byt_crc resp.
intel_soc_pmic_config_cht_crc based on this.

This fixes the Bay Trail specific ACPI OpRegion code causing problems
on Cherry Trail devices. Specifically this was causing the external
microsd slot on a Dell Venue 8 5855 (Cherry Trail version) to not work
and the eMMC to become unreliable and throw lots of errors.

Fixes: 5165238460 ("mfd: intel_soc_pmic: Core driver")
Reported-and-tested-by: russianneuromancer <russianneuromancer@ya.ru>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/Kconfig
drivers/mfd/intel_soc_pmic_core.c