History log of /haiku/src/add-ons/accelerants/radeon_hd/connector.h
Revision Date Author Comments
# 518e9cb9 14-Oct-2023 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Add missing USB C connector type

* Solves a few "Unknown connector" errors on newer cards.
* It's just another physical name for DisplayPort

Change-Id: I37a6f1bb1db66279b305bdbce3c200612eac1130
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7042
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 8c460591 04-Aug-2022 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Add new connector id, guard from reading over bounds

Change-Id: Ifbabcf8217c617baffe85f24b985c18760e4da58
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5527
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 1b69f339 15-Jul-2015 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Properly and consistently pick HPD ID


# 539a6caf 03-Feb-2014 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: More gpio rework

* Bump i2c data into it's own struct
* Populate gGPIOInfo with general gpio pins
(for things like HPD, and voltage control)
* Attach HPD gpio pins to connectors
* Dump trace info of HPD pins as well as i2c pins


# 2b032852 02-Feb-2014 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Rework gpio pins

* There are GPIO pins for hotplug interrupts and i2c
communications (for edid). Add two fields to connector
(index for each in gGPIOInfo).
* DP aux communcation seems to want the hotplug GPIO pin
info, which we don't get (I think this is why DP AUX comms
is broken at the moment)
* GPIO LUT seems to know about a wide range of GPIO pins, while
the i2c gpio calls only know about the ones needed for i2c.
* I'm tempted to populate gGPIOInfo with the LUT pins and
then suplement that data with the i2c GPIO pins data.
(however, not sure how many pins there are generally defined
so it could impact performance. More investigation is needed)
This would reverse how it works now with this commit.


# 4bd6c200 21-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Implement preferred mode

* Add preferredMode display mode to each display.
* If LVDS is detected, set preferredMode based on AtomBIOS
* Fixes blocker #8329 ?


# e8790580 17-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: LVDS AtomBIOS mode reading

* This isn't done, but all we need to do now is create
a simulated edid struct for LVDS screens.


# c8677fb1 14-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Working towards DP connector support

* Lots of new DisplayPort functions
* Call DP link training during mode set
* Rename dp_info variables to be less redundant
* Make encoder_pick_dig accept connector ID and
then check parent display
* Encode/Decode DP link speed functions
* Calculate DP lanes
* Rewrite encoder_dig_setup
* Correct bitsPerChannel to bitsPerColor
* My TRAVIS DisplayPort -> LVDS bridge now works


# 18500e1c 14-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

GPIO info struct style cleanup, (hopefully) no functional change


# 96587f13 13-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Introduce new displayport source file

* Move existing displayport functions to new source file
* Move was done due to large amount of DP code
* Style fixes
* Stub out new DP link training function


# 4faf6f22 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Style cleanup. Variable rename, fill out IGP TODO a little better


# 0cd5024d 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Pointer style cleanup; Variable consolidation


# 61cf7133 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Include file style cleanup, no functional change


# 60b7d1de 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Add i2c DP AUX communication calls

* remove posix return
* pass GPIO hwLine through vs connector index
* variable scope cleanup
* make lowest level dp aux AtomBIOS call static, non-public
as it is always called by connector code


# 247a2792 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Add calls to read and write data from AUX connector

* clean up previously changed error returns in 8c01b4. For
some reason I thought B_ERROR was the only non-positive
status.
* add VESA DisplayPort defines. Only a subset so it's local
to radeon_hd for now.
* this completes basic AUX transaction code, still untested


# 36de6233 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Speak aux data via AtomBIOS call

* add function to speak DP AUX data via AtomBIOS call
* clean up connector index variable names


# 104c404c 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Move connector code into new connector source file.

* clean up some comments
* most of this movement is prep for AUX display transactions


# 4540f5e9 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Create connector source file, move connector bus calls into it

* this will help break apart some of the sources
* display bus communications really don't belong with GPU operations
* rename functions to better describe their actions


# 1b69f3394ba2521b952c2e2cbe644eb0929fdbd4 15-Jul-2015 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Properly and consistently pick HPD ID


# 539a6cafc5882376475309b5adf0c207caf94716 03-Feb-2014 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: More gpio rework

* Bump i2c data into it's own struct
* Populate gGPIOInfo with general gpio pins
(for things like HPD, and voltage control)
* Attach HPD gpio pins to connectors
* Dump trace info of HPD pins as well as i2c pins


# 2b032852181b69c2a65316a1fe2df2432a6c9057 02-Feb-2014 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Rework gpio pins

* There are GPIO pins for hotplug interrupts and i2c
communications (for edid). Add two fields to connector
(index for each in gGPIOInfo).
* DP aux communcation seems to want the hotplug GPIO pin
info, which we don't get (I think this is why DP AUX comms
is broken at the moment)
* GPIO LUT seems to know about a wide range of GPIO pins, while
the i2c gpio calls only know about the ones needed for i2c.
* I'm tempted to populate gGPIOInfo with the LUT pins and
then suplement that data with the i2c GPIO pins data.
(however, not sure how many pins there are generally defined
so it could impact performance. More investigation is needed)
This would reverse how it works now with this commit.


# 4bd6c200c1a30b78827a0f2852b8ab0995027d1a 21-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Implement preferred mode

* Add preferredMode display mode to each display.
* If LVDS is detected, set preferredMode based on AtomBIOS
* Fixes blocker #8329 ?


# e8790580ad07b780b573445579a11ded309369b4 17-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: LVDS AtomBIOS mode reading

* This isn't done, but all we need to do now is create
a simulated edid struct for LVDS screens.


# c8677fb1384051cb147d53ff8e5d9f1f41a35201 14-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Working towards DP connector support

* Lots of new DisplayPort functions
* Call DP link training during mode set
* Rename dp_info variables to be less redundant
* Make encoder_pick_dig accept connector ID and
then check parent display
* Encode/Decode DP link speed functions
* Calculate DP lanes
* Rewrite encoder_dig_setup
* Correct bitsPerChannel to bitsPerColor
* My TRAVIS DisplayPort -> LVDS bridge now works


# 18500e1cd61a4573bea20cb33544d8051a236112 14-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

GPIO info struct style cleanup, (hopefully) no functional change


# 96587f13569659fa59abde67e430da426bb0a1ac 13-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Introduce new displayport source file

* Move existing displayport functions to new source file
* Move was done due to large amount of DP code
* Style fixes
* Stub out new DP link training function


# 4faf6f22765f20244a8f0512693e911fc510f21c 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Style cleanup. Variable rename, fill out IGP TODO a little better


# 0cd5024dbb8c0b979798d10528cb8140470f129d 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Pointer style cleanup; Variable consolidation


# 61cf713381b5ef727d0b1d78306dacde4887b8f5 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Include file style cleanup, no functional change


# 60b7d1defbf486d4f77a2edaef21095fac407376 09-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Add i2c DP AUX communication calls

* remove posix return
* pass GPIO hwLine through vs connector index
* variable scope cleanup
* make lowest level dp aux AtomBIOS call static, non-public
as it is always called by connector code


# 247a279283f56743b5ffbb7092baece66eb7a49f 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Add calls to read and write data from AUX connector

* clean up previously changed error returns in 8c01b4. For
some reason I thought B_ERROR was the only non-positive
status.
* add VESA DisplayPort defines. Only a subset so it's local
to radeon_hd for now.
* this completes basic AUX transaction code, still untested


# 36de623307c7a714fd1b6960728c878f5eb78f81 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Speak aux data via AtomBIOS call

* add function to speak DP AUX data via AtomBIOS call
* clean up connector index variable names


# 104c404c7edb585d7d4d6f88ad99d6525e6f1022 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Move connector code into new connector source file.

* clean up some comments
* most of this movement is prep for AUX display transactions


# 4540f5e929448b82266a16ad5c2ea9d5f6ed5ed3 08-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Create connector source file, move connector bus calls into it

* this will help break apart some of the sources
* display bus communications really don't belong with GPU operations
* rename functions to better describe their actions