From 963c68ee8b8e0669cb91a3c68f5cce04cc222c5d Mon Sep 17 00:00:00 2001
From: Francis Rowe <info@gluglug.org.uk>
Date: Thu, 25 Dec 2014 21:26:09 -0500
Subject: ich9deblob: gbe struct: info about word 0A (pci init control word)

---
(limited to 'resources/utilities/ich9deblob/src/gbe')

diff --git a/resources/utilities/ich9deblob/src/gbe/gbe.h b/resources/utilities/ich9deblob/src/gbe/gbe.h
index ac2a504..513e5d0 100644
--- a/resources/utilities/ich9deblob/src/gbe/gbe.h
+++ b/resources/utilities/ich9deblob/src/gbe/gbe.h
@@ -73,6 +73,20 @@ struct GBE_RESERVED_WORD_03H {
 	unsigned char reserved2 		             : 4;  /* bits should all be set to zero */
 	/* most significant bits */
 };
+
+struct PCI_INITIALIZATION_CONTROL_WORD {
+	/* least significant bits */
+	unsigned char loadVendorDeviceId           : 1;  /* 1 = load from NVM. 0 = load from MAC fuses. It's 1 in my deblobbed_descriptor.bin */
+	unsigned char loadSubsystemId              : 1;  /* 1 = load from NVM. 0 = load from MAC fuses. It's 1 in my deblobbed_descriptor.bin */
+	unsigned char reserved1                    : 1;  /* Reserved. Set to 0 (according to datasheet). 0 in my deblobbed_descriptor.bin */
+	unsigned char reserved2                    : 3;  /* Reserved. Set them to 0 (according to datasheet). 0 in my deblobbed_descriptor.bin */
+	unsigned char pmEnable                     : 1;  /* Power Management Enable. 1=Enable. It's 1 in my deblobbed_descriptor.bin */
+	unsigned char auxPwr                       : 1;  /* Auxiliary Power Indication. See datasheet. it's 1 in my deblobbed_descriptor.bin */
+	unsigned char reserved3                    : 4;  /* Reserved. Set to 0000 (according to datasheet). */
+	unsigned char reserved4                    : 4;  /* Reserved. Set to 0001 (according to datasheet). */
+	/* most significant bits */
+};
+
 struct GBEREGIONRECORD_4K {
 	unsigned char macAddress[6];                             /* Word 00 to 02 */
 	struct GBE_RESERVED_WORD_03H reservedWord03h;            /* Reserved word 03. */
@@ -98,7 +112,9 @@ struct GBEREGIONRECORD_4K {
 	unsigned short pbaLow;												/* Word 08 */
 	unsigned short pbaHigh;												/* Word 09 */
 	
-	unsigned short pciInitializationControlWord;
+	/* Word 0A */
+	struct PCI_INITIALIZATION_CONTROL_WORD pciInitializationControlWord;
+	
 	unsigned short subsystemId;
 	unsigned short subsystemVendorId;
 	unsigned short deviceId;
--
cgit v0.9.1