History log of /haiku-fatelf/src/add-ons/accelerants/radeon_hd/connector.cpp
Revision Date Author Comments
# 29e60392 14-Aug-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: style cleanup; no functional change


# 817c114d 07-Aug-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: rework some pll code

* Force fractional feedback divider on APU's
* Spread Spectrum is now probed more correctly
across multiple encoders and cards
* SS still disabled however.


# 893c33e1 09-Apr-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Fix silly scope bug in connector_read_mode_lvds

* Local malloc isn't guaranteed outside function


# 151b4996 22-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Add spread spectrum control functions

* Store SS information with PLL
* Probe SS information for PLL
* Disable SS more correctly
* May resolve mode setting issues on newer cards


# 41cf61d1 22-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Don't call TV encoder control improperly

* TV encoder was dropped on DCE5+
* (ATOM_DEVICE_TV_SUPPORT | ATOM_DEVICE_CV_SUPPORT)
will improperly match DFP4 (0x2 | 0x8) = 0xA
* Bug reported to linux kernel driver


# f2d6b9af 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Sanitize connector_is_dp function

* there is no guarentee the data in encoderExternal
is valid if we don't check valid == true


# 6728eddf 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Fix bugs in external DP bridge code

* non-external encoder will never be a DP bridge.
* use external encoder in places where needed.
* ensure we look at proper encoder for isDPBridge.


# 72f6869e 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Add support for external encoders

* Some encoders are bridges (DVO) and some encoders
can act like bridges (UNIPHY). Probe for encoders
further out in the display path and set them up
properly.
* Debug output support for external encoders
* Fix cases where we should use external encoder
information vs main encoder info.


# ced3b516 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Remove isHDMI, isTV. Unused.


# 6da8db27 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

Revert "radeon_hd: Convert encoders to pointers"

This reverts commit 5a1f9f0f16b2a4bef89b61b4e3e24bf0b53917da.

* Thinking on this a bit more, this is really a silly change as
I know the upper limit for number of valid encoders.
* Resolves a app_server crash introduced as well due to not
allocating encoder pointer.


# 5a1f9f0f 14-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Convert encoders to pointers

* Preparation for multiple encoders per connector


# 6848bdd5 14-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Reduce complexity in connector setup

* Map connector under consideration to pointer
in connector probing.


# f070c3c3 08-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Decode encoder flags in debug.

* Should assist in troubleshooting.


# 0a92c1ea 08-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: White space / line length cleanup.

* No functional change.


# e766693e 28-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: lvds, dvo, and hdmi encoder improvements

* Begin storing the lcd flags in lvds info call as the
encoder needs them.
* Fill out laptop / lvds todo in encoder code.
* Stub out dvo encoder calls, not sure use cases for dvo.


# 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.


# 65705aca 13-Jan-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Fix DisplayPort connector check, #8282


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

DisplayPort call organization and cleanup

* Add color space to BPP function
* Pass display_mode to DP lane count function
* Get BPP in DP lane count
* Move some DPInfo population out of DP link training
as other things need them sooner.
* Fill out DP code in external encoder setup


# 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


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

Begin to utilize encoder link enumeration

* Check link enumeration for linkb during encoder dig picking
* Show encoder link enumeration in connector debug output


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

Record encoder link enumeration


# 80f3c7fc 12-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Adjust debug output for connectors to save vertical log space


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

Improve debugging

* Provide more information on connectors
* Provide more information on detected attributes
* Remove some no longer needed debug output
* Provide connector ID on display debug output


# dc0d01ab 10-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Cleanup. Move unions into functions that use them.

* Rename unions to match style guide lines
* Group things that make sense together
* Move AtomBIOS argument struct creation closer to what uses it


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

Style cleanup, space after switch as it is not a function


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

Style cleanup of connector detection

* remove xxx_xxx variables
* small bit of code consolidation
* build fix due to missed braces in IGP change


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

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


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

Contextual style cleanup

* Remove un-needed line breaks
* Remove un-needed parentheses


# 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


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

More work towards DP support.

* add DPBridge encoder flag and set during connector detection
* if external bridge found, do external DDC setup
* pass connectorIndex vs displayIndex to encoder_*_setup
* some of the DP AUX channel stuff should go into accelerant
common code some day like i2c.


# 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


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

Remove un-needed posix return


# 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


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

Style fix, return B_ERROR instead of hacking together a neg. return code.


# 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


# 29e603928228980819a8a2b3b9f56ccc064c9f5f 14-Aug-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: style cleanup; no functional change


# 817c114de7e2e71d98adccb66358e94244a1486a 07-Aug-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: rework some pll code

* Force fractional feedback divider on APU's
* Spread Spectrum is now probed more correctly
across multiple encoders and cards
* SS still disabled however.


# 893c33e1be1f216e32362c883615e749164c4f04 09-Apr-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Fix silly scope bug in connector_read_mode_lvds

* Local malloc isn't guaranteed outside function


# 151b4996221d7bc9db571d71efeb2929431bf936 22-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Add spread spectrum control functions

* Store SS information with PLL
* Probe SS information for PLL
* Disable SS more correctly
* May resolve mode setting issues on newer cards


# 41cf61d1c97e9a7cb626ec447df029db00c87690 22-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Don't call TV encoder control improperly

* TV encoder was dropped on DCE5+
* (ATOM_DEVICE_TV_SUPPORT | ATOM_DEVICE_CV_SUPPORT)
will improperly match DFP4 (0x2 | 0x8) = 0xA
* Bug reported to linux kernel driver


# f2d6b9af3ad07af956f9240126826244017da2f1 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Sanitize connector_is_dp function

* there is no guarentee the data in encoderExternal
is valid if we don't check valid == true


# 6728eddfa4faac6725c5f6ed99fddb342c0393ea 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Fix bugs in external DP bridge code

* non-external encoder will never be a DP bridge.
* use external encoder in places where needed.
* ensure we look at proper encoder for isDPBridge.


# 72f6869e9e21913556544612ea275112ad416b5c 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Add support for external encoders

* Some encoders are bridges (DVO) and some encoders
can act like bridges (UNIPHY). Probe for encoders
further out in the display path and set them up
properly.
* Debug output support for external encoders
* Fix cases where we should use external encoder
information vs main encoder info.


# ced3b516ea3052f78134f3c461226e311cc02b89 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Remove isHDMI, isTV. Unused.


# 6da8db278635c0b56a151bc59151a4e9a02bce50 15-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

Revert "radeon_hd: Convert encoders to pointers"

This reverts commit 5a1f9f0f16b2a4bef89b61b4e3e24bf0b53917da.

* Thinking on this a bit more, this is really a silly change as
I know the upper limit for number of valid encoders.
* Resolves a app_server crash introduced as well due to not
allocating encoder pointer.


# 5a1f9f0f16b2a4bef89b61b4e3e24bf0b53917da 14-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Convert encoders to pointers

* Preparation for multiple encoders per connector


# 6848bdd53947957f5962c9625153864def77e7e6 14-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Reduce complexity in connector setup

* Map connector under consideration to pointer
in connector probing.


# f070c3c3114d1fdb52fba2c56c2475391d5fab12 08-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Decode encoder flags in debug.

* Should assist in troubleshooting.


# 0a92c1ea634b866d3f05cc249756687d4102b347 08-Mar-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: White space / line length cleanup.

* No functional change.


# e766693eb0fe789eae0b729c7c5d5400018aa328 28-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: lvds, dvo, and hdmi encoder improvements

* Begin storing the lcd flags in lvds info call as the
encoder needs them.
* Fill out laptop / lvds todo in encoder code.
* Stub out dvo encoder calls, not sure use cases for dvo.


# 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.


# 65705aca9a3b0f9709c080691e13d0c0a487da21 13-Jan-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

radeon_hd: Fix DisplayPort connector check, #8282


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

DisplayPort call organization and cleanup

* Add color space to BPP function
* Pass display_mode to DP lane count function
* Get BPP in DP lane count
* Move some DPInfo population out of DP link training
as other things need them sooner.
* Fill out DP code in external encoder setup


# 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


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

Begin to utilize encoder link enumeration

* Check link enumeration for linkb during encoder dig picking
* Show encoder link enumeration in connector debug output


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

Record encoder link enumeration


# 80f3c7fcf9ec35d7b8f5f269adb8a1770f66ab7b 12-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Adjust debug output for connectors to save vertical log space


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

Improve debugging

* Provide more information on connectors
* Provide more information on detected attributes
* Remove some no longer needed debug output
* Provide connector ID on display debug output


# dc0d01abcdc64458f3d8b4965322b56474370d7f 10-Dec-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

Cleanup. Move unions into functions that use them.

* Rename unions to match style guide lines
* Group things that make sense together
* Move AtomBIOS argument struct creation closer to what uses it


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

Style cleanup, space after switch as it is not a function


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

Style cleanup of connector detection

* remove xxx_xxx variables
* small bit of code consolidation
* build fix due to missed braces in IGP change


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

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


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

Contextual style cleanup

* Remove un-needed line breaks
* Remove un-needed parentheses


# 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


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

More work towards DP support.

* add DPBridge encoder flag and set during connector detection
* if external bridge found, do external DDC setup
* pass connectorIndex vs displayIndex to encoder_*_setup
* some of the DP AUX channel stuff should go into accelerant
common code some day like i2c.


# 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


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

Remove un-needed posix return


# 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


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

Style fix, return B_ERROR instead of hacking together a neg. return code.


# 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