[coreboot-gerrit] Change in coreboot[master]: drv/intel/gma/opregion: Fill in default values

Patrick Rudolph (Code Review) gerrit at coreboot.org
Sat Apr 15 12:55:26 CEST 2017


Patrick Rudolph has uploaded a new change for review. ( https://review.coreboot.org/19315 )

Change subject: drv/intel/gma/opregion: Fill in default values
......................................................................

drv/intel/gma/opregion: Fill in default values

Add default values used on all platforms.

Change-Id: I159e5511c909da2a7e82b4bc72df226c88da5710
Signed-off-by: Patrick Rudolph <siro at das-labor.org>
---
M src/drivers/intel/gma/opregion.c
1 file changed, 31 insertions(+), 1 deletion(-)


  git pull ssh://review.coreboot.org:29418/coreboot refs/changes/15/19315/1

diff --git a/src/drivers/intel/gma/opregion.c b/src/drivers/intel/gma/opregion.c
index 207f187..8954cd3 100644
--- a/src/drivers/intel/gma/opregion.c
+++ b/src/drivers/intel/gma/opregion.c
@@ -109,11 +109,41 @@
 
 	/* 8KiB */
 	opregion->header.size = sizeof(igd_opregion_t) / KiB;
-	opregion->header.version = IGD_OPREGION_VERSION;
+
+	/*
+	 * Note: Coreboot and early Intel VBIOS doesn't shift by 24.
+	 * This violates Intel's own SPEC and seems to be fixed on
+	 * recent Intel OpRegions. The only driver that relies on
+	 * the new behaviour seems to be Intel's Windows driver.
+	 */
+	opregion->header.version = IGD_OPREGION_VERSION << 24;
 
 	/* FIXME We just assume we're mobile for now */
 	opregion->header.mailboxes = MAILBOXES_MOBILE;
 
+	//FIXME: Value copied
+	opregion->header.pcon = 259;
+
+	// TODO Initialize Mailbox 1
+	opregion->mailbox1.clid = 1;
+
+	// TODO Initialize Mailbox 3
+	opregion->mailbox3.bclp = IGD_BACKLIGHT_BRIGHTNESS;
+	opregion->mailbox3.pfit = IGD_FIELD_VALID | IGD_PFIT_STRETCH;
+	opregion->mailbox3.pcft = 0; // should be (IMON << 1) & 0x3e
+	opregion->mailbox3.cblv = IGD_FIELD_VALID | IGD_INITIAL_BRIGHTNESS;
+	opregion->mailbox3.bclm[0] = IGD_WORD_FIELD_VALID + 0x0000;
+	opregion->mailbox3.bclm[1] = IGD_WORD_FIELD_VALID + 0x0a19;
+	opregion->mailbox3.bclm[2] = IGD_WORD_FIELD_VALID + 0x1433;
+	opregion->mailbox3.bclm[3] = IGD_WORD_FIELD_VALID + 0x1e4c;
+	opregion->mailbox3.bclm[4] = IGD_WORD_FIELD_VALID + 0x2866;
+	opregion->mailbox3.bclm[5] = IGD_WORD_FIELD_VALID + 0x327f;
+	opregion->mailbox3.bclm[6] = IGD_WORD_FIELD_VALID + 0x3c99;
+	opregion->mailbox3.bclm[7] = IGD_WORD_FIELD_VALID + 0x46b2;
+	opregion->mailbox3.bclm[8] = IGD_WORD_FIELD_VALID + 0x50cc;
+	opregion->mailbox3.bclm[9] = IGD_WORD_FIELD_VALID + 0x5ae5;
+	opregion->mailbox3.bclm[10] = IGD_WORD_FIELD_VALID + 0x64ff;
+
 	unmap_vbt(vbt);
 
 	return 1;

-- 
To view, visit https://review.coreboot.org/19315
To unsubscribe, visit https://review.coreboot.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I159e5511c909da2a7e82b4bc72df226c88da5710
Gerrit-PatchSet: 1
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Owner: Patrick Rudolph <siro at das-labor.org>



More information about the coreboot-gerrit mailing list