aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/northbridge/intel/i945/gma.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/northbridge/intel/i945/gma.c b/src/northbridge/intel/i945/gma.c
index 4baed80293..aefec8f824 100644
--- a/src/northbridge/intel/i945/gma.c
+++ b/src/northbridge/intel/i945/gma.c
@@ -32,6 +32,7 @@
#include "chip.h"
#define GDRST 0xc0
+#define MSAC 0x62 /* Multi Size Aperture Control */
#define LVDS_CLOCK_A_POWERUP_ALL (3 << 8)
#define LVDS_CLOCK_B_POWERUP_ALL (3 << 4)
@@ -707,12 +708,25 @@ static void gma_ssdt(device_t device)
drivers_intel_gma_displays_ssdt_generate(gfx);
}
+static void gma_func0_read_resources(device_t dev)
+{
+ u8 reg8;
+
+ /* Set Untrusted Aperture Size to 256mb */
+ reg8 = pci_read_config8(dev, MSAC);
+ reg8 &= ~0x3;
+ reg8 |= 0x2;
+ pci_write_config8(dev, MSAC, reg8);
+
+ pci_dev_read_resources(dev);
+}
+
static struct pci_operations gma_pci_ops = {
.set_subsystem = gma_set_subsystem,
};
static struct device_operations gma_func0_ops = {
- .read_resources = pci_dev_read_resources,
+ .read_resources = gma_func0_read_resources,
.set_resources = pci_dev_set_resources,
.enable_resources = pci_dev_enable_resources,
.init = gma_func0_init,