History log of /haiku/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme_private.h
Revision Date Author Comments
# 3b91d73b 16-Dec-2022 X512 <danger_mail@list.ru>

bus & drivers: drop PCI_x86

Change-Id: I494deaf24a4793a5e0fe9fa46ecdce32f65e616a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6226
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>


# 46bbf334 01-May-2022 Jérôme Duval <jerome.duval@gmail.com>

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>


# 890aa411 28-Mar-2022 PulkoMandy <pulkomandy@pulkomandy.tk>

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>


# 4492fde7 27-Oct-2021 Adrien Destugues <pulkomandy@pulkomandy.tk>

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>


# 92e254d0 10-Jul-2016 Alexander von Gluck IV <kallisti5@unixzen.com>

intel_extreme: Improve PCH detection

* Detect PCH model based on ISA bridge and save
into shared info for later use.
* On CougarPoint PCH systems, assign pipes via
special CPT registers
* Drop HasPlatformControlHub as PCH should be
based on more than just generation.


# 3d1bd895 11-Mar-2016 Alexander von Gluck IV <kallisti5@unixzen.com>

intel_extreme: Properly use VBIOS panel mode

* Move current_mode into the accelerant as the
driver doesn't care.
* Record panel_mode in driver and present to accelerant
* eDP, if no EDID and mobile, leave edid incomplete.
Mode set should notice that and fall back to panel_mode


# bb03a92e 17-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Some style fixes.

More work is needed for this new file to completely follow the style
guidelines. Also added several FIXMEs and TODOs.

This doesn't seem to break anything on my machine however, and was
confirmed to help by several users, so we may as well use it.


# c2cfbd70 09-Aug-2013 Jerome Duval <jerome.duval@gmail.com>

intel_extreme: add MSI support


# c162f52e 04-May-2013 Jérôme Duval <jerome.duval@gmail.com>

intel_extreme and radeon_hd: some 64 bit fixes


# f736d30c 26-Dec-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

intel_extreme: Drop odd semicolon causing gcc warnings


# 1f75663c 16-Oct-2011 Michael Lotz <mmlr@mlotz.ch>

Remove the interrupt register block. These aren't actually identitiy mapped
(they are actually reversed), so introduce a find_reg() inline function to map
such regs individually instead. Should fix interrupt storms on SandyBridge.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42870 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f0468be3 15-Oct-2011 Michael Lotz <mmlr@mlotz.ch>

* Rework how registers are accessed. Most registers are now grouped into
register blocks and we encode their block into the register definition. On
register access these blocks are then translated into the final address.
* Set up the register blocks for (G)MCH and PCH variants.
* Remove most SandyBridge code that was actually PCH specific and is now taken
care of automatically.
* This will temporarily break SandyBridge support again until the right
transcoders are actually programmed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42857 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cdfd124b 06-Jun-2010 Axel Dörfler <axeld@pinc-software.de>

* Now phys_addr_t should be used where needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37028 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 23843356 14-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Changed the way the device type is tested/set. There shouldn't be any functional
changes.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32353 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c34b9b1 29-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

Work in progress (might not work for you yet):
* Now uses the AGP GART module for memory management. This greatly simplifies
the memory handling, and memory is now actually allocated on demand,
instead of a fixed size (stolen memory is not freed, though).
* The Intel GART module should now also work with older chipsets.
* No longer remove the GTT size from the stolen memory; this appears to have
been a mistake in the X driver. Not sure about the BIOS popup yet.
* The AGP module (in combination with the Intel GART module) is now mandatory
to use the Intel driver.
* Removed now superfluous settings (like memory size). Only enabling/disabling
the hardware cursor is still supported.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23781 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c88e5e41 02-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

* Added support for the G33 line of chips: mode setting and acceleration is working fine AFAICT.
* Implemented mapping the GTT area for i9xx chips other than the i965. This should also fix the
driver working with these chips at all.
* The memory used by the driver now take the GTT area into account - before the GTT could be
overwritten theoretically...
* Added fix for some i965 quirks from the X driver.
* Added some overlay definitions for the i965.
* Started support for G33 overlay (not complete yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23220 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e7e32550 16-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Allocating additional memory should now work on the i965 as well (but bad things
will happen on earlier i9xx chips for now...). Not yet tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22589 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7aced0c7 04-Jun-2007 Axel Dörfler <axeld@pinc-software.de>

* The second open will now fail, too, in case the hardware could not be initialized
correctly.
* Got rid of this superfluous cookie stuff - either the VFS behaves correctly, or
we're screwed anyway.
* Made adding debugger commands optional depending on if DEBUG_COMMANDS is defined
or not.
* Minor other cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21322 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4955c11b 14-May-2006 Axel Dörfler <axeld@pinc-software.de>

* Moved the intel_info structure and prototypes from intel_extreme.cpp from the shared
headers into intel_extreme_private.h.
* Removed non-memory-mapped definitions from driver.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17452 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bb03a92ef61baf91eb9fc8c5d92fdbdfec4ccf45 17-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Some style fixes.

More work is needed for this new file to completely follow the style
guidelines. Also added several FIXMEs and TODOs.

This doesn't seem to break anything on my machine however, and was
confirmed to help by several users, so we may as well use it.


# c2cfbd70fea3737090397be943b8b876541e9f34 09-Aug-2013 Jerome Duval <jerome.duval@gmail.com>

intel_extreme: add MSI support


# c162f52eaa83ca2cf01f61c4fb6353d76e10caa1 04-May-2013 Jérôme Duval <jerome.duval@gmail.com>

intel_extreme and radeon_hd: some 64 bit fixes


# f736d30c9c2c5efa1d1ab54e34fc4dedbf85859f 26-Dec-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

intel_extreme: Drop odd semicolon causing gcc warnings


# 1f75663ca6601b1960c4e91b7e586e7d7bc27dd6 16-Oct-2011 Michael Lotz <mmlr@mlotz.ch>

Remove the interrupt register block. These aren't actually identitiy mapped
(they are actually reversed), so introduce a find_reg() inline function to map
such regs individually instead. Should fix interrupt storms on SandyBridge.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42870 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f0468be3845a6f7318a5a4f4dadcd62f7ed4ee22 15-Oct-2011 Michael Lotz <mmlr@mlotz.ch>

* Rework how registers are accessed. Most registers are now grouped into
register blocks and we encode their block into the register definition. On
register access these blocks are then translated into the final address.
* Set up the register blocks for (G)MCH and PCH variants.
* Remove most SandyBridge code that was actually PCH specific and is now taken
care of automatically.
* This will temporarily break SandyBridge support again until the right
transcoders are actually programmed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42857 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cdfd124b11d10b55a284bdc2a94f499c74a832cc 06-Jun-2010 Axel Dörfler <axeld@pinc-software.de>

* Now phys_addr_t should be used where needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37028 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 238433564972d525584b2dfbe1a2c0eb52ef49c1 14-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Changed the way the device type is tested/set. There shouldn't be any functional
changes.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32353 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c34b9b1f5e168501f89a270233457e04aa1b16b 29-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

Work in progress (might not work for you yet):
* Now uses the AGP GART module for memory management. This greatly simplifies
the memory handling, and memory is now actually allocated on demand,
instead of a fixed size (stolen memory is not freed, though).
* The Intel GART module should now also work with older chipsets.
* No longer remove the GTT size from the stolen memory; this appears to have
been a mistake in the X driver. Not sure about the BIOS popup yet.
* The AGP module (in combination with the Intel GART module) is now mandatory
to use the Intel driver.
* Removed now superfluous settings (like memory size). Only enabling/disabling
the hardware cursor is still supported.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23781 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c88e5e410ca5c9ee95c0c72bf0093203db1906cb 02-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

* Added support for the G33 line of chips: mode setting and acceleration is working fine AFAICT.
* Implemented mapping the GTT area for i9xx chips other than the i965. This should also fix the
driver working with these chips at all.
* The memory used by the driver now take the GTT area into account - before the GTT could be
overwritten theoretically...
* Added fix for some i965 quirks from the X driver.
* Added some overlay definitions for the i965.
* Started support for G33 overlay (not complete yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23220 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e7e325508bae1c80e024c942e09cc1d186821d40 16-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

Allocating additional memory should now work on the i965 as well (but bad things
will happen on earlier i9xx chips for now...). Not yet tested.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22589 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7aced0c77631160829cd5aadae5f8942f1b16596 04-Jun-2007 Axel Dörfler <axeld@pinc-software.de>

* The second open will now fail, too, in case the hardware could not be initialized
correctly.
* Got rid of this superfluous cookie stuff - either the VFS behaves correctly, or
we're screwed anyway.
* Made adding debugger commands optional depending on if DEBUG_COMMANDS is defined
or not.
* Minor other cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21322 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4955c11be9aeaff376e59315955d002c840ef4c8 14-May-2006 Axel Dörfler <axeld@pinc-software.de>

* Moved the intel_info structure and prototypes from intel_extreme.cpp from the shared
headers into intel_extreme_private.h.
* Removed non-memory-mapped definitions from driver.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17452 a95241bf-73f2-0310-859d-f6bbb57e9c96