Compare commits

...

3 Commits

Author SHA1 Message Date
Leah Rowe
41ccbb2196 haswell: disable igpu when dgpu is used
normally, haswell mrc.bin handles this, if hide-peg-from-mrc
is disabled, broadwell mrc allows use of both gpus - so i had
to disable it in coreboot, using the normal method in gma.c

Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-02-22 17:56:53 +00:00
Leah Rowe
c64950d0b8 dell 9020: use broadwell mrc
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-02-22 16:34:54 +00:00
Leah Rowe
a2fe3bccfa disable hiding peg from mrc on dell 9020
makes graphics cards work

Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-02-22 16:28:56 +00:00
6 changed files with 70 additions and 13 deletions

View File

@@ -0,0 +1,47 @@
From aa04e2b9f63aae953040816306a45bdf86a2195f Mon Sep 17 00:00:00 2001
From: Leah Rowe <info@minifree.org>
Date: Thu, 22 Feb 2024 17:52:03 +0000
Subject: [PATCH 1/1] nb/haswell: disable igpu when dgpu is used
normally, this is done with haswell mrc, which handles
that, but when using broadwell, the igpu is not disabled,
and legacy vga cycles are not routed to the dgpu
add this behaviour in gma.g for broadwell mrc.bin
tested on dell optiplex 9020 sff
Signed-off-by: Leah Rowe <info@minifree.org>
---
src/northbridge/intel/haswell/gma.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/northbridge/intel/haswell/gma.c b/src/northbridge/intel/haswell/gma.c
index 6e6948b70f..ee4d321261 100644
--- a/src/northbridge/intel/haswell/gma.c
+++ b/src/northbridge/intel/haswell/gma.c
@@ -461,12 +461,21 @@ static void gma_generate_ssdt(const struct device *dev)
drivers_intel_gma_displays_ssdt_generate(&chip->gfx);
}
+static void gma_func0_disable(struct device *dev)
+{
+ /* Disable VGA decode */
+ pci_or_config16(pcidev_on_root(0, 0), GGC, 1 << 1);
+
+ dev->enabled = 0;
+}
+
static struct device_operations gma_func0_ops = {
.read_resources = pci_dev_read_resources,
.set_resources = pci_dev_set_resources,
.enable_resources = pci_dev_enable_resources,
.init = gma_func0_init,
.acpi_fill_ssdt = gma_generate_ssdt,
+ .vga_disable = gma_func0_disable,
.ops_pci = &pci_dev_ops_pci,
};
--
2.39.2

View File

@@ -235,7 +235,7 @@ CONFIG_INTEL_GMA_BCLM_WIDTH=16
CONFIG_BOOTBLOCK_IN_CBFS=y
CONFIG_DOMAIN_RESOURCE_32BIT_LIMIT=0xfe000000
CONFIG_HAVE_MRC=y
CONFIG_MRC_FILE="../../../mrc/haswell/mrc.bin"
CONFIG_MRC_FILE="../../../mrc/broadwell/mrc.bin"
CONFIG_DCACHE_RAM_MRC_VAR_SIZE=0x30000
CONFIG_HPET_MIN_TICKS=0x80
CONFIG_FIXED_MCHBAR_MMIO_BASE=0xfed10000
@@ -288,7 +288,7 @@ CONFIG_CPU_MICROCODE_CBFS_DEFAULT_BINS=y
CONFIG_NORTHBRIDGE_INTEL_HASWELL=y
# CONFIG_USE_NATIVE_RAMINIT is not set
# CONFIG_USE_BROADWELL_MRC is not set
CONFIG_HASWELL_HIDE_PEG_FROM_MRC=y
# CONFIG_HASWELL_HIDE_PEG_FROM_MRC is not set
#
# Southbridge

View File

@@ -233,7 +233,7 @@ CONFIG_INTEL_GMA_BCLM_WIDTH=16
CONFIG_BOOTBLOCK_IN_CBFS=y
CONFIG_DOMAIN_RESOURCE_32BIT_LIMIT=0xfe000000
CONFIG_HAVE_MRC=y
CONFIG_MRC_FILE="../../../mrc/haswell/mrc.bin"
CONFIG_MRC_FILE="../../../mrc/broadwell/mrc.bin"
CONFIG_DCACHE_RAM_MRC_VAR_SIZE=0x30000
CONFIG_HPET_MIN_TICKS=0x80
CONFIG_FIXED_MCHBAR_MMIO_BASE=0xfed10000
@@ -286,7 +286,7 @@ CONFIG_CPU_MICROCODE_CBFS_DEFAULT_BINS=y
CONFIG_NORTHBRIDGE_INTEL_HASWELL=y
# CONFIG_USE_NATIVE_RAMINIT is not set
# CONFIG_USE_BROADWELL_MRC is not set
CONFIG_HASWELL_HIDE_PEG_FROM_MRC=y
# CONFIG_HASWELL_HIDE_PEG_FROM_MRC is not set
#
# Southbridge

View File

@@ -224,7 +224,7 @@ CONFIG_SMM_RESERVED_SIZE=0x100000
CONFIG_SMM_MODULE_STACK_SIZE=0x400
CONFIG_SERIRQ_CONTINUOUS_MODE=y
CONFIG_PRERAM_CBFS_CACHE_SIZE=0x4000
CONFIG_EHCI_BAR=0xe8000000
CONFIG_EHCI_BAR=0xd8000000
CONFIG_ACPI_CPU_STRING="CP%02X"
CONFIG_STACK_SIZE=0x2000
CONFIG_IED_REGION_SIZE=0x400000
@@ -235,7 +235,7 @@ CONFIG_INTEL_GMA_BCLM_WIDTH=16
CONFIG_BOOTBLOCK_IN_CBFS=y
CONFIG_DOMAIN_RESOURCE_32BIT_LIMIT=0xfe000000
CONFIG_HAVE_MRC=y
CONFIG_MRC_FILE="../../../mrc/haswell/mrc.bin"
CONFIG_MRC_FILE="../../../mrc/broadwell/mrc.bin"
CONFIG_DCACHE_RAM_MRC_VAR_SIZE=0x30000
CONFIG_HPET_MIN_TICKS=0x80
CONFIG_FIXED_MCHBAR_MMIO_BASE=0xfed10000
@@ -287,8 +287,8 @@ CONFIG_CPU_MICROCODE_CBFS_DEFAULT_BINS=y
#
CONFIG_NORTHBRIDGE_INTEL_HASWELL=y
# CONFIG_USE_NATIVE_RAMINIT is not set
# CONFIG_USE_BROADWELL_MRC is not set
CONFIG_HASWELL_HIDE_PEG_FROM_MRC=y
CONFIG_USE_BROADWELL_MRC=y
# CONFIG_HASWELL_HIDE_PEG_FROM_MRC is not set
#
# Southbridge

View File

@@ -222,7 +222,7 @@ CONFIG_SMM_RESERVED_SIZE=0x100000
CONFIG_SMM_MODULE_STACK_SIZE=0x400
CONFIG_SERIRQ_CONTINUOUS_MODE=y
CONFIG_PRERAM_CBFS_CACHE_SIZE=0x4000
CONFIG_EHCI_BAR=0xe8000000
CONFIG_EHCI_BAR=0xd8000000
CONFIG_ACPI_CPU_STRING="CP%02X"
CONFIG_STACK_SIZE=0x2000
CONFIG_IED_REGION_SIZE=0x400000
@@ -233,7 +233,7 @@ CONFIG_INTEL_GMA_BCLM_WIDTH=16
CONFIG_BOOTBLOCK_IN_CBFS=y
CONFIG_DOMAIN_RESOURCE_32BIT_LIMIT=0xfe000000
CONFIG_HAVE_MRC=y
CONFIG_MRC_FILE="../../../mrc/haswell/mrc.bin"
CONFIG_MRC_FILE="../../../mrc/broadwell/mrc.bin"
CONFIG_DCACHE_RAM_MRC_VAR_SIZE=0x30000
CONFIG_HPET_MIN_TICKS=0x80
CONFIG_FIXED_MCHBAR_MMIO_BASE=0xfed10000
@@ -285,8 +285,8 @@ CONFIG_CPU_MICROCODE_CBFS_DEFAULT_BINS=y
#
CONFIG_NORTHBRIDGE_INTEL_HASWELL=y
# CONFIG_USE_NATIVE_RAMINIT is not set
# CONFIG_USE_BROADWELL_MRC is not set
CONFIG_HASWELL_HIDE_PEG_FROM_MRC=y
CONFIG_USE_BROADWELL_MRC=y
# CONFIG_HASWELL_HIDE_PEG_FROM_MRC is not set
#
# Southbridge

12
config/vendor/sources vendored
View File

@@ -23,7 +23,7 @@
# NOTE: google's manifest for archives containing mrc.bin, used here:
# https://web.archive.org/web/20210211071412/https://dl.google.com/dl/edgedl/chromeos/recovery/recovery.conf
{t440pmrc w541mrc t440plibremrc w541 dell9020mt dell9020sff_12mb}{
{t440pmrc w541mrc t440plibremrc w541}{
DL_hash f3d79aec805c8b0094a4081be76b3a22d329c479ad18210449b7acc3236ccfc4a2103eaa7c5b79a4872bfd699eede047efd46dfb06dc8f47e3216fc254612998
DL_url https://download.lenovo.com/pccbbs/mobiles/glrg22ww.exe
DL_url_bkup https://web.archive.org/web/20211120031520/https://download.lenovo.com/pccbbs/mobiles/glrg22ww.exe
@@ -33,6 +33,16 @@
MRC_board peppy
}
{dell9020mt dell9020sff}{
DL_hash f3d79aec805c8b0094a4081be76b3a22d329c479ad18210449b7acc3236ccfc4a2103eaa7c5b79a4872bfd699eede047efd46dfb06dc8f47e3216fc254612998
DL_url https://download.lenovo.com/pccbbs/mobiles/glrg22ww.exe
DL_url_bkup https://web.archive.org/web/20211120031520/https://download.lenovo.com/pccbbs/mobiles/glrg22ww.exe
MRC_url https://dl.google.com/dl/edgedl/chromeos/recovery/chromeos_13904.77.0_samus_recovery_stable-channel_mp-v3.bin.zip
MRC_url_bkup https://web.archive.org/web/20220310155922/https://dl.google.com/dl/edgedl/chromeos/recovery/chromeos_13904.77.0_samus_recovery_stable-channel_mp-v3.bin.zip
MRC_hash 3ff1599c52539f0707a07a8664a84ce51cd3fed1569df4bb7aa6722fc8dec0af1754250333b6ca1a9794d970a4de7b29a5cf2499f5b61e4c3eab64d1314aaea9
MRC_board samus
}
{hp820g2}{
DL_hash 1ac05a3e4f46426eeb77f89c4aca25ed1ad64479d8fcba6a3ab63a944512bacbc5d148cc7b9c4ff4b8c90a1fb1de4776e46f14aca8021900e0df37246aa0b717
DL_url https://download.lenovo.com/pccbbs/mobiles/n10rg50w.exe