From 8da0dd2bb53f5f2758dd78ad2544fc943d73459a Mon Sep 17 00:00:00 2001 From: Tim Crawford Date: Mon, 19 Jun 2023 16:00:30 -0600 Subject: [PATCH] mb/system76: Set PrimaryDisplay to hybrid graphics Use the FSP option for (muxless) hybrid graphics. Internally it ends up setting PrimaryDisplay to iGFX, but does some extra configuration for the dGPU. Only galp5 is left as setting PrimaryDisplay to iGFX as the dGPU was optional for the model and I don't know what effect it would have to set it to hybrid for those. Change-Id: I24c5bc154df127fc5c16a388fc7ae4316167ba70 Signed-off-by: Tim Crawford --- src/mainboard/system76/addw1/romstage.c | 4 ++-- src/mainboard/system76/adl/variants/gaze17-3050/romstage.c | 4 ++-- src/mainboard/system76/adl/variants/gaze17-3060-b/romstage.c | 4 ++-- src/mainboard/system76/adl/variants/oryp10/romstage.c | 4 ++-- src/mainboard/system76/adl/variants/oryp9/romstage.c | 4 ++-- src/mainboard/system76/gaze15/romstage.c | 4 ++-- src/mainboard/system76/oryp5/romstage.c | 4 ++-- src/mainboard/system76/oryp6/romstage.c | 4 ++-- src/mainboard/system76/rpl/variants/addw3/romstage.c | 4 ++-- src/mainboard/system76/rpl/variants/bonw15/romstage.c | 4 ++-- src/mainboard/system76/rpl/variants/gaze18/romstage.c | 4 ++-- src/mainboard/system76/rpl/variants/oryp11/romstage.c | 4 ++-- src/mainboard/system76/rpl/variants/serw13/romstage.c | 4 ++-- src/mainboard/system76/tgl-h/romstage.c | 4 ++-- src/mainboard/system76/tgl-u/variants/galp5/romstage.c | 1 + 15 files changed, 29 insertions(+), 28 deletions(-) diff --git a/src/mainboard/system76/addw1/romstage.c b/src/mainboard/system76/addw1/romstage.c index fdb208b88d..8d415c2ec4 100644 --- a/src/mainboard/system76/addw1/romstage.c +++ b/src/mainboard/system76/addw1/romstage.c @@ -31,8 +31,8 @@ void mainboard_memory_init_params(FSPM_UPD *memupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - memupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + memupd->FspmConfig.PrimaryDisplay = 4; cannonlake_memcfg_init(&memupd->FspmConfig, &memcfg); } diff --git a/src/mainboard/system76/adl/variants/gaze17-3050/romstage.c b/src/mainboard/system76/adl/variants/gaze17-3050/romstage.c index cea4ff5155..d1d91b9f3e 100644 --- a/src/mainboard/system76/adl/variants/gaze17-3050/romstage.c +++ b/src/mainboard/system76/adl/variants/gaze17-3050/romstage.c @@ -27,8 +27,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.DmiMaxLinkSpeed = 4; mupd->FspmConfig.GpioOverride = 0; diff --git a/src/mainboard/system76/adl/variants/gaze17-3060-b/romstage.c b/src/mainboard/system76/adl/variants/gaze17-3060-b/romstage.c index cea4ff5155..d1d91b9f3e 100644 --- a/src/mainboard/system76/adl/variants/gaze17-3060-b/romstage.c +++ b/src/mainboard/system76/adl/variants/gaze17-3060-b/romstage.c @@ -27,8 +27,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.DmiMaxLinkSpeed = 4; mupd->FspmConfig.GpioOverride = 0; diff --git a/src/mainboard/system76/adl/variants/oryp10/romstage.c b/src/mainboard/system76/adl/variants/oryp10/romstage.c index 082d0cbd10..060d2ab33c 100644 --- a/src/mainboard/system76/adl/variants/oryp10/romstage.c +++ b/src/mainboard/system76/adl/variants/oryp10/romstage.c @@ -30,8 +30,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.PchHdaAudioLinkHdaEnable = 1; mupd->FspmConfig.DmiMaxLinkSpeed = 4; diff --git a/src/mainboard/system76/adl/variants/oryp9/romstage.c b/src/mainboard/system76/adl/variants/oryp9/romstage.c index 201fc75f37..13c1e8c9a0 100644 --- a/src/mainboard/system76/adl/variants/oryp9/romstage.c +++ b/src/mainboard/system76/adl/variants/oryp9/romstage.c @@ -27,8 +27,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.PchHdaAudioLinkHdaEnable = 1; mupd->FspmConfig.DmiMaxLinkSpeed = 4; diff --git a/src/mainboard/system76/gaze15/romstage.c b/src/mainboard/system76/gaze15/romstage.c index fdb208b88d..8d415c2ec4 100644 --- a/src/mainboard/system76/gaze15/romstage.c +++ b/src/mainboard/system76/gaze15/romstage.c @@ -31,8 +31,8 @@ void mainboard_memory_init_params(FSPM_UPD *memupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - memupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + memupd->FspmConfig.PrimaryDisplay = 4; cannonlake_memcfg_init(&memupd->FspmConfig, &memcfg); } diff --git a/src/mainboard/system76/oryp5/romstage.c b/src/mainboard/system76/oryp5/romstage.c index ec24f532b2..8f615ef08f 100644 --- a/src/mainboard/system76/oryp5/romstage.c +++ b/src/mainboard/system76/oryp5/romstage.c @@ -31,8 +31,8 @@ void mainboard_memory_init_params(FSPM_UPD *memupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - memupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + memupd->FspmConfig.PrimaryDisplay = 4; // Allow memory speeds higher than 2666 MT/s memupd->FspmConfig.SaOcSupport = 1; diff --git a/src/mainboard/system76/oryp6/romstage.c b/src/mainboard/system76/oryp6/romstage.c index 44da3d8c46..22baa6d345 100644 --- a/src/mainboard/system76/oryp6/romstage.c +++ b/src/mainboard/system76/oryp6/romstage.c @@ -32,8 +32,8 @@ void mainboard_memory_init_params(FSPM_UPD *memupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - memupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + memupd->FspmConfig.PrimaryDisplay = 4; variant_configure_fspm(memupd); diff --git a/src/mainboard/system76/rpl/variants/addw3/romstage.c b/src/mainboard/system76/rpl/variants/addw3/romstage.c index 3992095a65..3f9d962b50 100644 --- a/src/mainboard/system76/rpl/variants/addw3/romstage.c +++ b/src/mainboard/system76/rpl/variants/addw3/romstage.c @@ -33,8 +33,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.DmiMaxLinkSpeed = 4; mupd->FspmConfig.GpioOverride = 0; diff --git a/src/mainboard/system76/rpl/variants/bonw15/romstage.c b/src/mainboard/system76/rpl/variants/bonw15/romstage.c index 3992095a65..3f9d962b50 100644 --- a/src/mainboard/system76/rpl/variants/bonw15/romstage.c +++ b/src/mainboard/system76/rpl/variants/bonw15/romstage.c @@ -33,8 +33,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.DmiMaxLinkSpeed = 4; mupd->FspmConfig.GpioOverride = 0; diff --git a/src/mainboard/system76/rpl/variants/gaze18/romstage.c b/src/mainboard/system76/rpl/variants/gaze18/romstage.c index 2c8a6737bb..c6b90ff9f6 100644 --- a/src/mainboard/system76/rpl/variants/gaze18/romstage.c +++ b/src/mainboard/system76/rpl/variants/gaze18/romstage.c @@ -30,8 +30,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.DmiMaxLinkSpeed = 4; mupd->FspmConfig.GpioOverride = 0; diff --git a/src/mainboard/system76/rpl/variants/oryp11/romstage.c b/src/mainboard/system76/rpl/variants/oryp11/romstage.c index 2c8a6737bb..c6b90ff9f6 100644 --- a/src/mainboard/system76/rpl/variants/oryp11/romstage.c +++ b/src/mainboard/system76/rpl/variants/oryp11/romstage.c @@ -30,8 +30,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.DmiMaxLinkSpeed = 4; mupd->FspmConfig.GpioOverride = 0; diff --git a/src/mainboard/system76/rpl/variants/serw13/romstage.c b/src/mainboard/system76/rpl/variants/serw13/romstage.c index f58abadc3d..b67fbdbcc2 100644 --- a/src/mainboard/system76/rpl/variants/serw13/romstage.c +++ b/src/mainboard/system76/rpl/variants/serw13/romstage.c @@ -32,8 +32,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; mupd->FspmConfig.DmiMaxLinkSpeed = 4; mupd->FspmConfig.GpioOverride = 0; diff --git a/src/mainboard/system76/tgl-h/romstage.c b/src/mainboard/system76/tgl-h/romstage.c index 8e30435923..f04af9d495 100644 --- a/src/mainboard/system76/tgl-h/romstage.c +++ b/src/mainboard/system76/tgl-h/romstage.c @@ -34,8 +34,8 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) // Enable dGPU power nvidia_set_power(&config); - // Set primary display to internal graphics - mupd->FspmConfig.PrimaryDisplay = 0; + // Set primary display to hybrid graphics + mupd->FspmConfig.PrimaryDisplay = 4; variant_memory_init_params(mupd); diff --git a/src/mainboard/system76/tgl-u/variants/galp5/romstage.c b/src/mainboard/system76/tgl-u/variants/galp5/romstage.c index e747521789..6557a070f3 100644 --- a/src/mainboard/system76/tgl-u/variants/galp5/romstage.c +++ b/src/mainboard/system76/tgl-u/variants/galp5/romstage.c @@ -29,6 +29,7 @@ void mainboard_memory_init_params(FSPM_UPD *mupd) nvidia_set_power(&config); // Set primary display to internal graphics + // NOTE: Use iGFX as some units don't have a dGPU for hybrid graphics mupd->FspmConfig.PrimaryDisplay = 0; memcfg_init(mupd, &board_cfg, &spd_info, half_populated);