Jérôme Duval
459f1bcd8d
intel_extreme: irq hotplug support for IceLake and newer PCH.
...
we enable every port interrupt instead of relying on the ports found in the VBT.
ATM only log the plug state when it changes.
Change-Id: I5175fb137d11f0114beb2915a4f363341cfe8e36
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5287
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2022-05-03 18:15:48 +00:00
Jérôme Duval
46bbf334f6
intel_extreme: parse VBT device configs, use this to skip unused ports
...
* BDB version from 111
* for DDI from Gen9
* for HDMI and DisplayPort from Gen6
* use the first port to create the mode list
* also probe DDI Port A
* the aux channel helps to select the correct dp aux registers.
Change-Id: I80549a6ec0477bed768cc5f388959b606d50c1b7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5286
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2022-05-03 08:48:34 +00:00
Jérôme Duval
67077e0ca0
intel_extreme: adjust PCH definitions for ADP and ICP
...
Change-Id: I2c2682e7e99e61a48b00155b4e60a457a8862117
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5215
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-21 18:30:40 +00:00
Jérôme Duval
6c02429697
intel_extreme: set/get brightness in legacy mode for gen2,i915GM,i945GM
...
untested, see #15448
Change-Id: Iaf0cdacd39ebadfc143b072bdd6f5435a1394f45
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5222
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-21 18:29:23 +00:00
Jérôme Duval
aa8239a5ad
intel_extreme: add IDs for Comet Lake
...
untested, similar to Kaby Lake.
pending bug report from scott_puopolo18
Change-Id: I9dad02a5f39683687de943f950dc3c1a493622a1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5216
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-21 18:27:49 +00:00
Jérôme Duval
d271377590
intel_extreme: brightness setting support for Kaby Lake
...
Change-Id: Ie78a034077f3be8faaaf83ab80a0ae6c1c001bc0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5187
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2022-04-12 11:29:27 +00:00
Jérôme Duval
f0a1b22183
intel_extreme: hook dp_aux channel to the i2c common ddc for DigitalDisplayInterface ports
...
This assumes a Gen9 or Gen11 configuration, and aux channel 0. As a result, the same EDID will
be found for every DDI port. The mapping should be found in the VBT.
Tested on KabyLake and JasperLake
Change-Id: I27f5ac8ec8e6ba519fbe9aaf745e78a7361175b9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5175
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-05 14:47:59 +00:00
Jérôme Duval
3c263adf2c
intel_extreme: rework interrupt handler for gen8 til gen11
...
minimize register reads/writes.
makes more interrupt handling easier to add, for instance iir interrupts.
Change-Id: I97a7e9fcc9273ada6c0f12d5343bf7804f8bdd20
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5174
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-05 14:47:59 +00:00
PulkoMandy
890aa41134
intel_extreme: improve brightness setting support
...
- Newer devices use a different layout for the backlight PWM registers
- Get the min brightness level from the BDB
Change-Id: I99745a022dd38733a4c2386f91c4c57016dd2acd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5162
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2022-04-03 08:39:47 +00:00
Augustin Cavalier
ffb1567fda
intel_extreme: Commit missing definition of INTEL_MODEL_BDWS.
2022-03-30 18:55:50 -04:00
PulkoMandy
38a9416057
intel_extreme: use proper generation for Tiger Lake devices
...
The CPU in these is generation 11, but the graphics unit is actually
generation 12. Thanks to KapiX for pointing this out!
2022-03-30 21:16:17 +02:00
PulkoMandy
d039f12b31
intel_extreme: add PCI ID for Tiger Lake
...
Internal display on my laptop isn't detected yet so modesetting doesn't
work, but at least I get vblank interrupts and backlight control.
Fixes #17569
Change-Id: I86dd56bc3fc2c288688242e34d9220028036ab74
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5156
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-03-29 07:08:01 +00:00
Jérôme Duval
467b19de28
intel_extreme: setup Gen11 interrupts
...
added register names from i915 as that's what the register dump tool uses.
Change-Id: I4c4db881f55ffa820c0a6a058a533328a0b5d68f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5161
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2022-03-29 07:08:01 +00:00
Jérôme Duval
f37f79066c
intel_extreme: add IDs for Jasper Lake
...
tested with Acer Swift SF114-34
2022-03-15 16:51:13 +01:00
Rudolf Cornelissen
456e6f33dd
intel_extreme: added more pipeC support, fixes for eDP on DDI systems
2022-02-27 22:25:04 +01:00
Rudolf Cornelissen
cfd3bb41aa
intel_extreme: log srcclk info, Sandy/Ivy eDP detect BIOS pipe setup and use that.
2022-02-12 23:29:42 +01:00
Rudolf Cornelissen
4b5e0c3bcd
intel_extreme: Sandy/IvyBridge fix 4 lanes DP detect, fully pgm eDP link
2022-02-04 19:56:27 +01:00
Rudolf Cornelissen
ed9bb4dc76
intel_extreme: decoupled PIPE/eDP link programming from FDI train, fixed eDP pgm error.
2022-02-01 23:48:48 +00:00
Rudolf Cornelissen
ba0c9427cd
intel_extreme: for Ivy/SandyBridge added eDP programming for laptops.
2022-01-30 00:21:32 +00:00
Rudolf Cornelissen
022986d510
intel_extreme: sandy/ivybridge DP links to screens are now programmed to the actual mode if possible
2022-01-26 23:42:14 +00:00
Kacper Kasper
fd876ad749
intel_extreme: vblank interrupt support for Gen8+
...
Change-Id: I8e7e68786cc4a626cb386929600715a6a6b1917d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4760
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-01-01 11:36:02 +00:00
Jérôme Duval
09a8f74d70
intel_extreme: add PCH definitions for some platforms
...
Change-Id: Id91f8fb526825cc62cd4288bee4a6d08dfd6654a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4764
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2021-12-07 08:32:49 +00:00
Rudolf Cornelissen
9ef22aa9d7
intel_extreme:DP links on sky- upto/incl coffeelake are now done (refclk detection added)
2021-12-07 00:42:42 +00:00
Rudolf Cornelissen
c80ea54975
intel_extreme: PLLs post skylake work differently again. Refclk update.
2021-12-05 16:56:15 +00:00
Rudolf Cornelissen
d60c7e010c
intel_extreme: for gen9.5 added new portF to DDI scan. add ID dump in kerneldriver.
2021-12-05 12:47:05 +00:00
Rudolf Cornelissen
77b2dd17df
intel_extreme: added DDI link colordepth detection, may fix ticket #17439
2021-12-04 23:24:50 +00:00
Jérôme Duval
3fedf64872
intel_extreme: enable KabyLake
...
Change-Id: I81d04fdf8305efcc9250cfb975dd3466ebcb4058
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4740
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2021-11-30 08:06:56 +00:00
Kacper Kasper
66aae93087
intel_extreme: enable CoffeeLake
...
Change-Id: Id73c88d0815259fa7a8027f757ac430818492b1e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4739
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2021-11-30 08:06:56 +00:00
Kacper Kasper
fe9ab0f353
intel_gart: add support for Gen8+ GPUs
...
Change-Id: I8b84e278f33542c359fc0d783f571e06ebc89b2a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4737
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Rudolf Cornelissen <rudhaiku@gmail.com>
2021-11-29 18:14:21 +00:00
Rudolf Cornelissen
03ed104900
intel_extreme: enabled all known skylake gfx cards since they are pgm'd now
2021-11-26 23:52:15 +00:00
Rudolf Cornelissen
39e05c7d01
intel_extreme: skylake PLL works, all outputs fully functional.
2021-11-25 22:41:48 +00:00
Rudolf Cornelissen
efde34c2fc
intel_extreme: add haswell/skylake PLL calcs, no functional change yet.
2021-11-22 11:14:36 +00:00
Rudolf Cornelissen
ae7d733d42
intel_extreme: skylake/DDI. all displays can set resolution now, no refresh on digital panels yet (DPLL still missing)
2021-11-16 00:39:49 +00:00
Rudolf Cornelissen
0eb2bf0e66
intel_extreme: skylake/DDI improvements. no resolution changing possible yet (missing DPLL code yet)
2021-11-14 23:16:44 +00:00
Rudolf Cornelissen
661732341f
intel_extreme: haswell and skylake DDI EDID support added, modesetting not finished yet.
2021-11-02 20:04:37 +00:00
Adrien Destugues
4492fde7bf
intel_extreme: reduce use of display_mode where display_timing is enough
...
In most cases we don't need to use the complete display_mode struct and
we just need the timings. This will avoid future confusion between the
virtual width/height and the actual display timings, if we implement
scrolling someday.
Change-Id: I6c4430b84130b956a47ea0a01afb0843f5a34fd2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4665
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-27 14:33:46 +00:00
Rudolf Cornelissen
994794f2d4
intel extreme: skylake sets color, base and address, no resolution and refresh yet
2021-10-23 17:13:43 +00:00
Rudolf Cornelissen
fe8f9e2326
intel_extreme: set B_SCROLL, share current mode. Cloning and BWindowScreen now work OK.
2021-09-27 10:19:43 +00:00
Rudolf Cornelissen
96c8657d24
intel_extreme: fix haswell virt display scroll/pan, ticket #17261
2021-09-17 23:46:00 +00:00
Rudolf Cornelissen
3334d6fba1
intel_extreme: gen4 displayport now sets modes, dualhead clone works.
2021-07-02 14:19:58 +00:00
Rudolf Cornelissen
b3bafaf695
intel_extreme: displayport now scales to BIOS set mode.
2021-06-30 00:47:10 +00:00
Rudolf Cornelissen
13a4e5a056
intel_extreme: haswell+ has DDI, no DP, so block scanning that for screens.
2021-06-27 17:47:04 +00:00
Rudolf Cornelissen
def51fb910
intel_extreme: don't pgm pipes, follow BIOS for now. Two screens on now i.e.
2021-06-25 10:40:08 +00:00
Rudolf Cornelissen
16ea5aac34
intel driver: added panelfitter pgmming.
2021-06-14 22:49:31 +00:00
Rudolf Cornelissen
aca9888e37
Intel_extreme: fixed hrev55115 regression and added FDI data/link M/N programming.
2021-06-08 09:30:38 +00:00
Rudolf Cornelissen
c7d83a174c
Intel_extreme: fixed DPLL pgming (Sandy+), prevent black display by not killing PIPE (Ivy+). Chkd GMA(Q33G/Q45) OK. Added defines.
2021-05-29 08:41:32 +00:00
Adrien Destugues
22ec64553f
intel_extreme: some minor fixes
...
- Cleanup HEAD_MODE constants. These should be completely removed, now
that we have a proper notion of pipes and displays. But the DPMS code
still uses them, for now.
- Fix the ie_pipe command where width and height were swapped and
missing a +1 to show the actual videomode values
2020-03-13 15:42:03 +01:00
Adrien Destugues
168aff90a7
intel_extreme: program the DPLL_SEL register on SandyBridge
...
We need to assign PLLs to pipes and transcoders. The assignments on
previous generations were fixed, but now it's up to us to set it up.
Do the simplest thing for now: assign PLL1 to pipe A and PLL2 to pipe B.
2020-03-08 16:01:43 +01:00
Adrien Destugues
ec4e9ea8bc
intel_extreme: remove unhandled generation defines
...
- 7xx (1st gen) has no driver in Haiku or is handled by the intel_810 driver
- PowerVR has no driver in Haiku
So there is no point in having those in the intel_extreme driver.
While I'm at it, fix the video timing/resolution constraints for
sanitize_video_mode.
2020-01-27 13:58:52 +01:00
Adrien Destugues
1808b553a2
intel_extreme: do not reprogram transcoded/output mapping on ibex point
...
Another try to fix #15628
2020-01-19 11:04:31 +01:00