coreboot-kgpe-d16/src/soc
Nico Huber 3b57a7c37b intel/broadwell: Implement proper backlight PWM config
Port the backlight-PWM handling from Skylake instead of the previously
used Haswell version. We use a 200Hz PWM signal for all boards. Which
is higher than the previous devicetree value, 183Hz, but that was over-
ridden by the VBIOS anyway. 200Hz is still very low, considering LED
backlights, but accurate values are unknown at this time.

Lynx Point, the PCH for Haswell and Broadwell, is a transition point
for the backlight-PWM config. On platforms with a PCH, we have:

  o Before Lynx Point:
    The CPU has no PWM pin and sends the PWM duty-cycle setting
    to the PCH. The PCH can choose to ignore that and use its own
    setting (BLM_PCH_OVERRIDE_ENABLE).
    We use the CPU setting on these platforms.
  o Lynx Point + Haswell:
    The CPU has an additional PWM pin but can be set up to send
    its setting to the PCH as before. The PCH can still choose
    to ignore that.
    We use the CPU setting with Haswell.
  o Lynx Point + Broadwell:
    The CPU can't send its setting to the PCH anymore. BLM_PCH_
    OVERRIDE_ENABLE must always be set(!) if the PCH PWM pin is
    used (it virtually always is).
    We have to use the PCH setting in this case.
  o After Lynx Point:
    Same as with Broadwell, only BLM_PCH_OVERRIDE_ENABLE is
    implied and the bit not implemented anymore.

Change-Id: I1d61d9b3f1802ebe18799fc4d06f1f1d3b54c924
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/35897
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2019-10-16 14:06:52 +00:00
..
amd device: Use scan_static_bus() over scan_lpc_bus() 2019-10-08 12:59:56 +00:00
cavium devicetree: Fix improper use of chip_operations 2019-10-04 16:29:31 +00:00
imgtec cpu,mb,soc: Init missing lb_serial struct fields 2019-09-19 09:28:10 +00:00
intel intel/broadwell: Implement proper backlight PWM config 2019-10-16 14:06:52 +00:00
mediatek soc/mediatek/mt8183: Change argument type of mt_set_emi 2019-10-09 22:24:00 +00:00
nvidia cpu,mb,soc: Init missing lb_serial struct fields 2019-09-19 09:28:10 +00:00
qualcomm soc/qualcomm: Remove default ops to generate bootblock.bin 2019-10-09 22:24:56 +00:00
rockchip arm64: Uprev Arm TF and adjust to BL31 parameter changes 2019-09-14 05:01:16 +00:00
samsung cpu,mb,soc: Init missing lb_serial struct fields 2019-09-19 09:28:10 +00:00
sifive soc/sifive/fu540: add code for spi and map flash to memory spaces 2019-08-12 08:35:17 +00:00
ucb lib: Rewrite qemu-armv7 ramdetect 2019-07-28 11:31:42 +00:00