Timothy Pearson (tpearson@raptorengineeringinc.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/9330
-gerrit
commit d70c2b6ba9405fab44e73a04f7ad8ac9edd84904 Author: Timothy Pearson tpearson@raptorengineeringinc.com Date: Mon Apr 6 22:01:23 2015 -0500
northbridge/intel/gm45/gma: Add backlight control register field
This allows the backlight control register to be set via devicetree.cb
Change-Id: I32b42dfc1cc609fb6f8995c6158c85be67633770 Signed-off-by: Timothy Pearson tpearson@raptorengineeringinc.com --- src/drivers/intel/gma/i915.h | 1 + src/northbridge/intel/gm45/gma.c | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/drivers/intel/gma/i915.h b/src/drivers/intel/gma/i915.h index 0d5b8af..36ac5fc 100644 --- a/src/drivers/intel/gma/i915.h +++ b/src/drivers/intel/gma/i915.h @@ -291,6 +291,7 @@ struct i915_gpu_controller_info int lvds_dual_channel; int link_frequency_270_mhz; int lvds_num_lanes; + u32 backlight; };
int i915lightup(unsigned int physbase, unsigned int mmio, diff --git a/src/northbridge/intel/gm45/gma.c b/src/northbridge/intel/gm45/gma.c index 3bc3cbf..c71b8b2 100644 --- a/src/northbridge/intel/gm45/gma.c +++ b/src/northbridge/intel/gm45/gma.c @@ -443,12 +443,13 @@ static void gma_func0_init(struct device *dev) /* Init graphics power management */ gtt_res = find_resource(dev, PCI_BASE_ADDRESS_0);
+ struct northbridge_intel_gm45_config *conf = dev->chip_info; + #if !CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT /* PCI Init, will run VBIOS */ pci_dev_init(dev); #else u32 physbase; - struct northbridge_intel_gm45_config *conf = dev->chip_info; struct resource *lfb_res; struct resource *pio_res;
@@ -472,7 +473,10 @@ static void gma_func0_init(struct device *dev) /* Post VBIOS init */ /* Enable Backlight */ gtt_write(BLC_PWM_CTL2, (1 << 31)); - gtt_write(BLC_PWM_CTL, 0x06100610); + if (conf->gfx.backlight == 0) + gtt_write(BLC_PWM_CTL, 0x06100610); + else + gtt_write(BLC_PWM_CTL, conf->gfx.backlight); }
static void gma_set_subsystem(device_t dev, unsigned vendor, unsigned device)