aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/skylake/acpi
diff options
context:
space:
mode:
authorZhuo-hao.Lee <zhuo-hao.lee@intel.com>2016-07-27 13:18:22 +0800
committerMartin Roth <martinroth@google.com>2016-07-29 00:12:53 +0200
commitce37e47f46e52090529a91a45d1c914d159643c8 (patch)
treebb68692c1d15f692b315812f2931829943ec3762 /src/soc/intel/skylake/acpi
parentec2947fb075838d1ea78754113aef6cf000cf522 (diff)
skylake: fix VSDIO is at 0.8V when SDCard is not inserted
1. Enable SoC SD_CMD/D* signals pull-down of 20k when SD-card is removed. When SD-card is disconnected, the pull-down is disabled. 2. Provide path for weak leakage from buffers of SD_CMD/D* signal to be grounded. Thus dropping voltage on the SD_CMD/D* signals to ~0V. BUG=chrome-os-partner:54421 TEST=no power leakage when SDCard isn't inserted on skylake platform Change-Id: I567199b172841125f8916a61a76005cfdaa62eb8 Signed-off-by: Zhuo-hao.Lee <zhuo-hao.lee@intel.com> Reviewed-on: https://review.coreboot.org/15910 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Diffstat (limited to 'src/soc/intel/skylake/acpi')
-rw-r--r--src/soc/intel/skylake/acpi/scs.asl16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/soc/intel/skylake/acpi/scs.asl b/src/soc/intel/skylake/acpi/scs.asl
index 56f27a97ea..69bc82a143 100644
--- a/src/soc/intel/skylake/acpi/scs.asl
+++ b/src/soc/intel/skylake/acpi/scs.asl
@@ -88,6 +88,14 @@ Device (SDXC)
Method (_PS0, 0, Serialized)
{
+ /* Disable 20K pull-down on CLK, CMD and DAT lines */
+ ^^PCRA (PID_GPIOCOM3, 0x4c4, 0xFFFFEFFF)
+ ^^PCRA (PID_GPIOCOM3, 0x4cc, 0xFFFFEFFF)
+ ^^PCRA (PID_GPIOCOM3, 0x4d4, 0xFFFFEFFF)
+ ^^PCRA (PID_GPIOCOM3, 0x4dc, 0xFFFFEFFF)
+ ^^PCRA (PID_GPIOCOM3, 0x4e4, 0xFFFFEFFF)
+ ^^PCRA (PID_GPIOCOM3, 0x4f4, 0xFFFFEFFF)
+
/* Disable Power Gate */
Store (0, ^PGEN)
@@ -113,6 +121,14 @@ Device (SDXC)
Store (3, Local0)
Store (Local0, ^D0D3)
Store (^D0D3, Local0)
+
+ /* Enable 20K pull-down on CLK, CMD and DAT lines */
+ ^^PCRO (PID_GPIOCOM3, 0x4c4, 0x00001000)
+ ^^PCRO (PID_GPIOCOM3, 0x4cc, 0x00001000)
+ ^^PCRO (PID_GPIOCOM3, 0x4d4, 0x00001000)
+ ^^PCRO (PID_GPIOCOM3, 0x4dc, 0x00001000)
+ ^^PCRO (PID_GPIOCOM3, 0x4e4, 0x00001000)
+ ^^PCRO (PID_GPIOCOM3, 0x4f4, 0x00001000)
}
Device (CARD)