diff options
author | 4 of 7 (Leah Rowe) <info@minifree.org> | 2016-09-09 22:45:13 +0100 |
---|---|---|
committer | 4 of 7 (Leah Rowe) info@minifree.org <info@minifree.org> | 2017-01-22 00:42:03 +0000 |
commit | 6ceeb3305a00d29e1f64b356e5a0daab23741a6c (patch) | |
tree | 16fd2cff6636069ca9678a4d228c09c7e6a55f6d | |
parent | 9709332ca52040d75afc258dff36fcbb480a9dcf (diff) | |
download | librebootfr-6ceeb3305a00d29e1f64b356e5a0daab23741a6c.tar.gz librebootfr-6ceeb3305a00d29e1f64b356e5a0daab23741a6c.zip |
i945: add fake vbt (needed for external screens) (patch from Arthur Heymans)
3 files changed, 129 insertions, 0 deletions
diff --git a/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/macbook21/0007-i945-gma.c-generate-fake-VBT.patch b/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/macbook21/0007-i945-gma.c-generate-fake-VBT.patch new file mode 100644 index 00000000..6f0272fd --- /dev/null +++ b/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/macbook21/0007-i945-gma.c-generate-fake-VBT.patch @@ -0,0 +1,43 @@ +From 60cc2c4532f63a40486b7c4e891fb87fb6d4ab7f Mon Sep 17 00:00:00 2001 +From: Arthur Heymans <arthur@aheymans.xyz> +Date: Wed, 7 Sep 2016 22:10:57 +0200 +Subject: [PATCH] i945/gma.c: generate fake VBT + +This generates a fake VBT for the Intel i945 graphic device. +i945 supports both the mobile chipset 945gm (calistoga) +and the desktop chipset 945gc (lakeport), +which is why a VBT with a different id string +needs to be created for each target. + +The VBT id string is obtained from the vbios blob in the following way: +"strings vbios.bin | grep VBT". + +Change-Id: I8245b12b16a4426efbe1f584d4163fc257231a98 +Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> +--- + src/northbridge/intel/i945/gma.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/northbridge/intel/i945/gma.c b/src/northbridge/intel/i945/gma.c +index 02caa0a..f0944b9 100644 +--- a/src/northbridge/intel/i945/gma.c ++++ b/src/northbridge/intel/i945/gma.c +@@ -433,6 +433,15 @@ static void gma_func0_init(struct device *dev) + iobase, mmiobase, graphics_base); + if (err == 0) + gfx_set_init_done(1); ++ /* Linux relies on VBT for panel info. */ ++ if (CONFIG_NORTHBRIDGE_INTEL_SUBTYPE_I945GM) { ++ generate_fake_intel_oprom(&conf->gfx, dev, ++ "$VBT CALISTOGA "); ++ } ++ if (CONFIG_NORTHBRIDGE_INTEL_SUBTYPE_I945GC) { ++ generate_fake_intel_oprom(&conf->gfx, dev, ++ "$VBT LAKEPORT-G "); ++ } + #endif + } + +-- +2.9.3 + diff --git a/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/t60/0007-i945-gma.c-generate-fake-VBT.patch b/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/t60/0007-i945-gma.c-generate-fake-VBT.patch new file mode 100644 index 00000000..6f0272fd --- /dev/null +++ b/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/t60/0007-i945-gma.c-generate-fake-VBT.patch @@ -0,0 +1,43 @@ +From 60cc2c4532f63a40486b7c4e891fb87fb6d4ab7f Mon Sep 17 00:00:00 2001 +From: Arthur Heymans <arthur@aheymans.xyz> +Date: Wed, 7 Sep 2016 22:10:57 +0200 +Subject: [PATCH] i945/gma.c: generate fake VBT + +This generates a fake VBT for the Intel i945 graphic device. +i945 supports both the mobile chipset 945gm (calistoga) +and the desktop chipset 945gc (lakeport), +which is why a VBT with a different id string +needs to be created for each target. + +The VBT id string is obtained from the vbios blob in the following way: +"strings vbios.bin | grep VBT". + +Change-Id: I8245b12b16a4426efbe1f584d4163fc257231a98 +Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> +--- + src/northbridge/intel/i945/gma.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/northbridge/intel/i945/gma.c b/src/northbridge/intel/i945/gma.c +index 02caa0a..f0944b9 100644 +--- a/src/northbridge/intel/i945/gma.c ++++ b/src/northbridge/intel/i945/gma.c +@@ -433,6 +433,15 @@ static void gma_func0_init(struct device *dev) + iobase, mmiobase, graphics_base); + if (err == 0) + gfx_set_init_done(1); ++ /* Linux relies on VBT for panel info. */ ++ if (CONFIG_NORTHBRIDGE_INTEL_SUBTYPE_I945GM) { ++ generate_fake_intel_oprom(&conf->gfx, dev, ++ "$VBT CALISTOGA "); ++ } ++ if (CONFIG_NORTHBRIDGE_INTEL_SUBTYPE_I945GC) { ++ generate_fake_intel_oprom(&conf->gfx, dev, ++ "$VBT LAKEPORT-G "); ++ } + #endif + } + +-- +2.9.3 + diff --git a/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/x60/0007-i945-gma.c-generate-fake-VBT.patch b/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/x60/0007-i945-gma.c-generate-fake-VBT.patch new file mode 100644 index 00000000..6f0272fd --- /dev/null +++ b/resources/libreboot/patch/coreboot/2a3434757ef425dbdfedf1fc69e1a033a6e7310d/grub/x60/0007-i945-gma.c-generate-fake-VBT.patch @@ -0,0 +1,43 @@ +From 60cc2c4532f63a40486b7c4e891fb87fb6d4ab7f Mon Sep 17 00:00:00 2001 +From: Arthur Heymans <arthur@aheymans.xyz> +Date: Wed, 7 Sep 2016 22:10:57 +0200 +Subject: [PATCH] i945/gma.c: generate fake VBT + +This generates a fake VBT for the Intel i945 graphic device. +i945 supports both the mobile chipset 945gm (calistoga) +and the desktop chipset 945gc (lakeport), +which is why a VBT with a different id string +needs to be created for each target. + +The VBT id string is obtained from the vbios blob in the following way: +"strings vbios.bin | grep VBT". + +Change-Id: I8245b12b16a4426efbe1f584d4163fc257231a98 +Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> +--- + src/northbridge/intel/i945/gma.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/northbridge/intel/i945/gma.c b/src/northbridge/intel/i945/gma.c +index 02caa0a..f0944b9 100644 +--- a/src/northbridge/intel/i945/gma.c ++++ b/src/northbridge/intel/i945/gma.c +@@ -433,6 +433,15 @@ static void gma_func0_init(struct device *dev) + iobase, mmiobase, graphics_base); + if (err == 0) + gfx_set_init_done(1); ++ /* Linux relies on VBT for panel info. */ ++ if (CONFIG_NORTHBRIDGE_INTEL_SUBTYPE_I945GM) { ++ generate_fake_intel_oprom(&conf->gfx, dev, ++ "$VBT CALISTOGA "); ++ } ++ if (CONFIG_NORTHBRIDGE_INTEL_SUBTYPE_I945GC) { ++ generate_fake_intel_oprom(&conf->gfx, dev, ++ "$VBT LAKEPORT-G "); ++ } + #endif + } + +-- +2.9.3 + |