Re: [PATCH] ACPI / PMIC: CrystalCove: Extend PMOP support to support all possible fields

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 2018-08-12 at 18:33 +0200, Hans de Goede wrote:
> Prior to this commit the CRC PMOP handler only supported the X285 and
> V18X
> PMOP fields. Leading to errors like these on device using the VBUS
> field:
> 
> [  765.766489] ACPI Error: AE_BAD_PARAMETER, Returned by Handler for
> [UserDefinedRegion] (20180531/evregion-266)
> [  765.766526] ACPI Error: Method parse/execution failed
> \_SB.I2C1.BATC._BST, AE_BAD_PARAMETER (20180531/psparse-516)
> [  765.766586] ACPI Error: AE_BAD_PARAMETER, Evaluating _BST
> (20180531/battery-577)
> 
> This commit adds support for all known fields to the CRC PMOP OpRegion
> handler, the name and register info in this commit comes from:
> 
> 
https://github.com/01org/ProductionKernelQuilts/blob/master/uefi/cht-m1stable/patches/0002-ACPI-Adding-support-for-WC-and-CRC-opregion.patch

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

> 
> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> ---
>  drivers/acpi/pmic/intel_pmic_crc.c | 109
> ++++++++++++++++++++++++++++-
>  1 file changed, 107 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/acpi/pmic/intel_pmic_crc.c
> b/drivers/acpi/pmic/intel_pmic_crc.c
> index 7ffa74048107..22c9e374c923 100644
> --- a/drivers/acpi/pmic/intel_pmic_crc.c
> +++ b/drivers/acpi/pmic/intel_pmic_crc.c
> @@ -25,16 +25,121 @@
>  #define PMIC_A0LOCK_REG		0xc5
>  
>  static struct pmic_table power_table[] = {
> +/*	{
> +		.address = 0x00,
> +		.reg = ??,
> +		.bit = ??,
> +	}, ** VSYS */
> +	{
> +		.address = 0x04,
> +		.reg = 0x63,
> +		.bit = 0x00,
> +	}, /* SYSX -> VSYS_SX */
> +	{
> +		.address = 0x08,
> +		.reg = 0x62,
> +		.bit = 0x00,
> +	}, /* SYSU -> VSYS_U */
> +	{
> +		.address = 0x0c,
> +		.reg = 0x64,
> +		.bit = 0x00,
> +	}, /* SYSS -> VSYS_S */
> +	{
> +		.address = 0x10,
> +		.reg = 0x6a,
> +		.bit = 0x00,
> +	}, /* V50S -> V5P0S */
> +	{
> +		.address = 0x14,
> +		.reg = 0x6b,
> +		.bit = 0x00,
> +	}, /* HOST -> VHOST, USB2/3 host */
> +	{
> +		.address = 0x18,
> +		.reg = 0x6c,
> +		.bit = 0x00,
> +	}, /* VBUS -> VBUS, USB2/3 OTG */
> +	{
> +		.address = 0x1c,
> +		.reg = 0x6d,
> +		.bit = 0x00,
> +	}, /* HDMI -> VHDMI */
> +/*	{
> +		.address = 0x20,
> +		.reg = ??,
> +		.bit = ??,
> +	}, ** S285 */
>  	{
>  		.address = 0x24,
>  		.reg = 0x66,
>  		.bit = 0x00,
> -	},
> +	}, /* X285 -> V2P85SX, camera */
> +/*	{
> +		.address = 0x28,
> +		.reg = ??,
> +		.bit = ??,
> +	}, ** V33A */
> +	{
> +		.address = 0x2c,
> +		.reg = 0x69,
> +		.bit = 0x00,
> +	}, /* V33S -> V3P3S, display/ssd/audio */
> +	{
> +		.address = 0x30,
> +		.reg = 0x68,
> +		.bit = 0x00,
> +	}, /* V33U -> V3P3U, SDIO wifi&bt */
> +/*	{
> +		.address = 0x34 .. 0x40,
> +		.reg = ??,
> +		.bit = ??,
> +	}, ** V33I, V18A, REFQ, V12A */
> +	{
> +		.address = 0x44,
> +		.reg = 0x5c,
> +		.bit = 0x00,
> +	}, /* V18S -> V1P8S, SOC/USB PHY/SIM */
>  	{
>  		.address = 0x48,
>  		.reg = 0x5d,
>  		.bit = 0x00,
> -	},
> +	}, /* V18X -> V1P8SX, eMMC/camara/audio */
> +	{
> +		.address = 0x4c,
> +		.reg = 0x5b,
> +		.bit = 0x00,
> +	}, /* V18U -> V1P8U, LPDDR */
> +	{
> +		.address = 0x50,
> +		.reg = 0x61,
> +		.bit = 0x00,
> +	}, /* V12X -> V1P2SX, SOC SFR */
> +	{
> +		.address = 0x54,
> +		.reg = 0x60,
> +		.bit = 0x00,
> +	}, /* V12S -> V1P2S, MIPI */
> +/*	{
> +		.address = 0x58,
> +		.reg = ??,
> +		.bit = ??,
> +	}, ** V10A */
> +	{
> +		.address = 0x5c,
> +		.reg = 0x56,
> +		.bit = 0x00,
> +	}, /* V10S -> V1P0S, SOC GFX */
> +	{
> +		.address = 0x60,
> +		.reg = 0x57,
> +		.bit = 0x00,
> +	}, /* V10X -> V1P0SX, SOC display/DDR IO/PCIe */
> +	{
> +		.address = 0x64,
> +		.reg = 0x59,
> +		.bit = 0x00,
> +	}, /* V105 -> V1P05S, L2 SRAM */
>  };
>  
>  static struct pmic_table thermal_table[] = {

-- 
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux