mb/lenovo: dGPU power handling on T430, T530

Enable dGPU power handling on Lenovo ThinkPad T430, T530 via PMH7
register 0x50.

Although there's no Thinker-1 chip on these models according to
schematics, dGPU power control via PMH7 works the same as on T420/T520,
so they can be considered Thinker-1-compatible.

It can be tested from linux userspace using util/pmh7tool.

To turn dGPU power off:
  pmh7tool -c 0x50 7
  pmh7tool -c 0x50 3

To turn it on:
  pmh7tool -s 0x50 3
  pmh7tool -s 0x50 7

To check whether it is on (bash):
  reg=0x$(pmh7tool -r 0x50)
  echo "$(( (( reg & 0x08 )) >> 3 ))"
or just `pmh7tool -b 0x50 3` with
https://review.coreboot.org/#/c/coreboot/+/28388/

Tested on ThinkPad W530.

Change-Id: Ieab1a33b3c680c757cc0999660b5cb7e122474cc
Signed-off-by: Evgeny Zinoviev <me@ch1p.com>
Reviewed-on: https://review.coreboot.org/28392
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Evgeny Zinoviev 2018-08-30 00:23:39 +03:00 committed by Martin Roth
parent b7c0b8c8ee
commit 0186912f9e
3 changed files with 3 additions and 3 deletions

View File

@ -167,7 +167,7 @@ chip northbridge/intel/sandybridge
register "has_backlight_gpio" = "0" register "has_backlight_gpio" = "0"
register "has_dgpu_power_gpio" = "0" register "has_dgpu_power_gpio" = "0"
register "has_thinker1" = "0" register "has_thinker1" = "1"
end end
chip drivers/pc80/tpm chip drivers/pc80/tpm
device pnp 0c31.0 on end device pnp 0c31.0 on end

View File

@ -157,7 +157,7 @@ chip northbridge/intel/sandybridge
register "has_backlight_gpio" = "0" register "has_backlight_gpio" = "0"
register "has_dgpu_power_gpio" = "0" register "has_dgpu_power_gpio" = "0"
register "has_thinker1" = "0" register "has_thinker1" = "1"
end end
end # LPC bridge end # LPC bridge
device pci 1f.2 on end # SATA Controller 1 device pci 1f.2 on end # SATA Controller 1

View File

@ -179,7 +179,7 @@ chip northbridge/intel/sandybridge
register "has_backlight_gpio" = "0" register "has_backlight_gpio" = "0"
register "has_dgpu_power_gpio" = "0" register "has_dgpu_power_gpio" = "0"
register "has_thinker1" = "0" register "has_thinker1" = "1"
end end
end end
device pci 1f.2 on # SATA Controller 1 device pci 1f.2 on # SATA Controller 1