Commit Graph

14 Commits

Author SHA1 Message Date
Nico Huber
dcd274b28d gma: Validate maximum scalable width
Change-Id: Iba8199a2451e1976ac8aa0f8632d0846fc0caeb4
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17261
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Martin Roth <martinroth@google.com>
2016-11-17 11:21:45 +01:00
Nico Huber
c7a4fee02f gma: Validate pipe configurations
Validate some properties of the pipe configuration before commit.
Currently checked:

  o No downscaling
  o Only 32bpp RGB
  o Stride must be a multiple of 64

Change-Id: Ibfc8617dbf433da33b1eb4012ecae08445600016
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17260
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Martin Roth <martinroth@google.com>
2016-11-17 11:21:32 +01:00
Nico Huber
6a3566773f gma: Fix loop logic in Scan_Ports()
When deciding if a pipe has been configured, we only checked if reading
the EDID succeeded not if it contained usable data.

TEST=Booted kontron/ktqm77 with a DVI-I to VGA cable and the display
     came up (it didn't before because of a gap in the pipe config, i.e.
     the second pipe was disabled so coreboot didn't bother to look at
     the third).

Change-Id: I10075db8916efcee68be95971145c3f6f1530e5a
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17087
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2016-10-29 01:26:24 +02:00
Nico Huber
d55afebf8b gma i2c: Make I2C port for VGA displays a config option
Boards with a DVI-I connector share the I2C pins for both analog and
digital displays. In that case, the EDID for a VGA display has to be
read over the I2C interface of the coupled digital port.

TEST=Booted kontron/ktqm77 with DVI-I to VGA cable. Display is detected
     and enabled (but doesn't show anything, yet?).

Change-Id: I5c4f77d5ad1927f075877a3719361ed2193f4c39
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17086
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2016-10-29 01:26:13 +02:00
Nico Huber
393aa8a8b6 gma edid: Check expected display type
Check that the EDID's digital-input bit matches the expected display
type (i.e. it should only be set for non-VGA displays).

Change-Id: I099112f190f866525e882d5e24a428092d4d8331
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17085
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2016-10-29 01:24:23 +02:00
Nico Huber
abe3de257c gma dp aux: Program 2x bit clock divider
This setting exists for any platform before Skylake. Some have sane
defaults after reset, some don't. So we always set the correct divisor.

This makes external DP output work with coreboot on Ivy Bridge.

Change-Id: I91d8030a985cc35c7cf826c0276753137b5d6b77
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17072
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2016-10-29 01:23:09 +02:00
Nico Huber
f54d096201 gma: Program PCH_RAWCLK_FREQ register
This seems to be a scratchpad register to tell later drivers which
frequency the platform uses. Linux reads this but never writes the
register.

Change-Id: I55af7c7b675da580c7f52d9997262b232019132c
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17071
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2016-10-29 01:21:38 +02:00
Nico Huber
125a29e842 Relicense libgfxinit under GPL v2+
Change-Id: I5d683dda83d23e89955a4d840b5570bd8642834a
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/17052
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2016-10-20 13:05:15 +02:00
Nico Huber
be4eaddc67 gma pch lvds: Fully initialize port register
This very stale code only ever worked because it left old settings in-
tact (i.e. settings done by the Video BIOS). So initialize everything
needed for known LVDS displays to work.

TEST=none so far

Change-Id: If5dcc186ca1d4a07deb2ca78f018d613f5e029ad
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/17022
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2016-10-19 17:01:42 +02:00
Nico Huber
16f3dec51d edid: Correctly initialize BPC if it's unset in EDID
The initialization with 0 was overlooked by GNAT / GNATprove, resulting
in a division by zero later.

Change-Id: Ibd916d6afaf07e80e48ca5cdeb4a085edf65bfab
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/16959
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Alexander Couzens <lynxis@fe80.eu>
2016-10-15 22:21:39 +02:00
Nico Huber
2600c36839 common/Makefile: Avoid double slashes in generated paths
Change-Id: Id625bfdce07c438d9732d7c2bd5d1010fd1b0112
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/16963
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2016-10-13 23:28:27 +02:00
Nico Huber
3e50827fe8 Strip quotes from config variables to be Kconfig compatible
Change-Id: Ie61d668b359d2b6729896c9ef6c2e15510beb303
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/16961
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2016-10-13 23:26:03 +02:00
Nico Huber
eeb5a3986f gma: Expect zero Audio_VID_DID on Ibex Peak
It turned out that Ibex Peak, the PCH paired with the original Ironlake
graphics in Nehalem processors, doesn't have that id.

Change-Id: I928ca8df18b67a427c587ae768b4980e62b8fe1e
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/16960
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2016-10-13 23:25:33 +02:00
Nico Huber
83693c8d7d Initial upstream commit
The history contained unlicensed code so everything got squashed, sorry.

Change-Id: I9f5775208f9df6fb29074bf3bc498f68cb17b3a0
Signed-off-by: Nico Huber <nico.huber@secunet.com>
2016-10-09 11:34:25 +02:00