#
65462c8c |
|
08-Jul-2022 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
accelerant/radeon_hd: Allow failure to init card * Previously, any accelerants failing would cause an app_server crash.. so we would do everything in our power to get "something" * After hrev56252, the app_server properly handles accelerant failures and vesa / framebuffer accelerants should will be used. * Thus, if no monitors were detected (due to none being plugged-in, or some other fault), bail and return B_ERROR so vesa fallback can give it a try. Change-Id: Ib9695dd7cf1914e50547ca8661c55b80152a66a4 Reviewed-on: https://review.haiku-os.org/c/haiku/+/5442 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: waddlesplash <waddlesplash@gmail.com> Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
|
#
e87cba34 |
|
06-Nov-2021 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Add handling of connector routing * A first attempt at improving on #17377 * We haven't actually seen any cards using this routing stuff yet pre-navi. * We don't use the router information yet... but this might improve things a bit on new cards. Change-Id: I17962dfd8bb09e619a6084cd9571ccb9832fb19a Reviewed-on: https://review.haiku-os.org/c/haiku/+/4697 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com> Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
3c181db6 |
|
20-Oct-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
vesa & radeon_hd: Remove unneeded and incorrect free(). In 47404f12f27fc45fc0c011b1c5ac6f0c1b52e0e6, a MemoryDeleter was added to manage this memory instead of doing it manually; most of the free()s were removed in that commit, but these were somehow missed.
|
#
47404f12 |
|
09-Dec-2020 |
X512 <danger_mail@list.ru> |
accelerant: replace AreaCloner with AreaDeleter Reduce code duplication. Change-Id: Ice1a14fc7378382e89c3e5a1aea6fa21b903e436 Reviewed-on: https://review.haiku-os.org/c/haiku/+/3482 Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
|
#
38f17b01 |
|
28-Sep-2016 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Polaris10 power distribution fix * Helps prevent mainboard explosions and other bad stuff. * ...maybe not explosions, but bad things. * The RX 480 reference design can pull as much as 90W from its PCIe slot at load. PCIe is rated for 75W. * This change overloads the PCIe power cables vs the PCIe slot. The PCIe power cables can handle going over spec. * Untested since we really can't come close to loading a RX 480 without hardware OpenGL ^_^ * Should be able to test on real hardware within a week.
|
#
6543bf0a |
|
05-Dec-2014 |
Jonathan Hanna <jhanna@pangolin-systems.com> |
radeon_hd: Ensure all PLL's are INVALID to begin with * If something breaks, it is likely because the wrong PLL is chosen later.
|
#
e2c2a5ce |
|
26-Feb-2014 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Fix app_server bt regression introduced at hrev46862 * We adjusted the array of pointers to be larger, but didn't adjust the malloc to be larger. * Should solve #10563 and maybe #10536
|
#
fca8407a |
|
12-Feb-2014 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Fix GPIOInfo pin shortage on some cards * Some cards have a lot of pins! * Should fix #10536 * Add a check to give a friendy warning if we find more GPIO pins than what we are prepared for. * Technically the maximum GPIO pins could be ATOM device max * 2 (16 for i2c and other) however lets leave some room for expansion.
|
#
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
|
#
d96e6876 |
|
07-Aug-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: re-rework some pll code * Grab pseudo pll SS info for early Spread Spectrum access * display_crtc_ss now takes a pll vs a display for easy pll access
|
#
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.
|
#
63624e40 |
|
07-Aug-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: reorganize some pll code * Move DisplayPort external pixel clock out of pll as this frequency is card-wide. * Add new function to pull display clock frequency and other card-wide settings. * Set displayDefault frequency card-wide * My DisplayPort LVDS bridge laptop now kind of works (a clock somewhere seems a little off though)
|
#
325089f1 |
|
14-Apr-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Stub out gfx ring boot. * Tab fix as well
|
#
745450ad |
|
11-Apr-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: More initial ring queue work * Rename RenderQueue to RingQueue to be more generic * We will need two Ring Buffer types, one for host -> gpu (render/cp data) and one gpu -> host (irq) * Add header guard to ringqueue.h * Things still may change as I work up to a bigger picture.
|
#
0de9d6cd |
|
06-Apr-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Move out some DisplayPort common code * General DisplayPort functions in common dp.cpp * DP port information struct in common header * Please don't use this private accelerant common DP code just yet as it is very early.
|
#
7dd18210 |
|
01-Mar-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Fix invalid encoder state * This was a *big* oops on my part. * We were missing initial setup call for Kaleidoscope and DP Bridge encoders. * If you were having radeon HD mode setting issues, try this change. * Potential fix for #5722, #7397, #8059, #8151, #8282, #8289, #8310, #8322, #8331
|
#
4ee41b26 |
|
22-Feb-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Disable spread spectrum * SS requires complex pll adjustments that we don't do atm
|
#
d2a69507 |
|
29-Jan-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: A few style fixes, no functional change
|
#
f2c3cbf7 |
|
13-Dec-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Begin work powering up the DisplayPort connector * Add new struct to store DP connector information * DisplayPort Configuration Data is populated by setup function
|
#
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
|
#
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
|
#
30207c6c |
|
27-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Move thermal query into new driver sensor source file * thermal query still works pre-atombios init
|
#
0cd97231 |
|
21-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Add first hints of thermal monitoring on radeon cards * add a few missing/needed header defines * show GPU temp in millidegrees C on r600/r700 * evergreen+ support soon * function may be moved to driver long term once testing done
|
#
91affb2d |
|
12-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Add legacy card connectior detection using table method * attempt AtomBIOS table probe first, then fallback to legacy method if no connectors found (or table version is too old) * add function to look up object info on older cards * dcc still needs some work on old cards * my X1200 IGP gets video now
|
#
359b926f |
|
08-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* style cleanup of shared storage names * return better data on card * display chipset flags in screen preflet git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43226 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
46af8165 |
|
25-Oct-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* redesign pretty much everything frame buffer related * don't resize the frame buffer after mapping it.. doesn't make sense * add memory controller code and program the memory controller for r600 * remove unneeded frame_buffer_int * don't malloc mc_info, waste of time * fix scaler setting * vramStart in mc should be 0... get vertical colored lines however when this this is set properly (everything in mc_info is the MC view of FB BAR) When vramStart is the FB physical address... i get proper video on some cards ... thoughts? git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42924 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7934da0f |
|
12-Oct-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* add *very* preliminary dpms support we will need to query the card dpms state for each monitor at a later date git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42829 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
dd295058 |
|
27-Sep-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remap GPIO pin storage to global struct as they really aren't tied to a connector. (thus allowing for future non-ddc gpio devices like fan speed) * map all i2c gpio pins on accelerant init * use a smaller sub function to attach gpio info to connector i2c info git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42773 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
54c0390b |
|
14-Sep-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remove un-needed i2c_bus on each connector... we simply set this up each time it's needed using the gpio information * rename gpio information struct to be cleaner and shorter * add function to debug found connectors * set gpio mask to 1 vs the defined mask... this seems to get us closer to working ddc / edid per connector * change gpio_info u16's to u32's to ensure we aren't overflowing anything * fix bug always setting hw_capable true * change TRACE to ERROR to always show debug data when called git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42751 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
77b301cb |
|
21-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* tab fix, no functional change git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42674 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ec89b986 |
|
21-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remove excess NULL check git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42673 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
aee8efc2 |
|
21-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* add gConnector for card connector storage * add detect_connectors to detect card connectors * add infinitely compex detect_connectors_manual (used when detect_connectors fails) * add missing AtomBIOS header git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42670 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d3e8b642 |
|
19-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* introduce mc control calls * malloc storage for mc state info * redo pll range struct * change to ATOM_ENCODER_MODE for connector info * redo pll calculations to match AtomBIOS requirements * some structure changes * no longer init already posted AtomBIOS as it causes an infinite loop of AtomBIOS calls git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42644 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d356bf50 |
|
10-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* consolidate and remove unneeded Xorg headers * move mc code to more generic gpu source/header * add gpu reset functions (with r600 documented) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42616 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f0b0d6cb |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* use create_area correctly * AtomBIOS is now loaded and passed into the radeon_hd accelerant * correct pointer passing in bios_init * AtomBIOS is now read and initialized by AtomBIOS parser * feel free to start testing the driver again :-) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42564 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2168cdbd |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* bug fix, wrong offset git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42561 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3f98c183 |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* create area for AtomBIOS * clone mapped AtomBIOS area into accelerant git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42560 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5cf44dda |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* move obtaining / copying the vga bios into the driver. * add missing r500 header * replace r600 headers with newer one from kernel git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42554 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1d5cfc64 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* move bios functions into bios.cpp * implement various methods to pull AtomBIOS from card * add some missing registers to headers from linux drm driver git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42553 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
81cd6636 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* refactor accelerant debugging * clone VGA rom shared area in accelerant * enable access, and make a copy of the VGA bios * give malloc'ed VGA bios pointer to AtomBIOS parser * Still invalid BIOS magic * TODO : Move atomBIOS pointer and reorganize some stuff git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42550 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ef2909a1 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Move bios_info into shared info * Pull pci_rom base address from pci subsystem * Point AtomBIOS parser to pci rom address to set up and malloc atom_context * This is untested! Don't run on an expensive card until I test it on a cheaper one! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42541 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
51360674 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Initial work on bios_init for setting up AtomBIOS parser * Refactor AtomBIOS parser to use non-linux-kernel calls (normally I would keep it as-is and do wrappers, but the AtomBIOS parser has been rewritten from scratch twice by its creator in the last 5 years.. so eh. * Refactor AtomBIOS parser to be more haiku-like stylewise git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42538 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2df3def5 |
|
01-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Remove old legacy internal AtomBIOS parser * Import "new" AMD AtomBios Parser (aka AMD KGrids) * Add a new global storage struct for BIOS info (ex. location, size, etc) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42534 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0e3075fb |
|
30-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Provide device chipset in accelerant_device_info git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42516 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6ab8261b |
|
30-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Pass device name into shared info * Refactor MCFBsetup to be a little simpler for now * Implement radeon accelerant_device_info for screen preflet * Re-add CRT Power calls to display code. * Disable blanking setting for now... just can't figure out what AMD wants for this. * Remove some un-needed locking in the scaling code * Be sure to disable VGA when set_display_mode is called * Refactor mode setting code to loop over all possible displays and set the provided mode on the attached ones. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42515 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e1b9d6e6 |
|
28-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add LVDS handling for TMDSB * Fix crash situation if no monitors detected * Assume TMDSB if no monitors sensed (temporary) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42508 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a956672a |
|
26-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Fix a few spots where we were checking for NULL unneededly * Fix a few spots where we *should* of been checking for NULL to prevent referencing a null pointer. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42505 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d17bf8d4 |
|
22-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add fancy detected monitors debug function git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42465 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f09dc6d9 |
|
21-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Small bit of comment cleanup * Rename crt_info display_info git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42463 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
95e1d7e8 |
|
21-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Large refactoring of display detection and storage * Create new display.c/h for display management * Rename global gCRT to gDisplay * Add CRT connection type into gDisplay * Add CRT connection index into gDisplay * Refactor registers for each display into gDisplay via regs * We now shouldn't freak out too badly on multi-monitors git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42462 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
84bcfa3d |
|
12-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add mc.cpp for memory controller functions * Remove read32MC as it doesn't apply to radeon cards >= r600 * Add tmds.cpp for tmds connected monitor management (current radeons only have TMDSA for the moment) still needs TDMSPower, etc. * Add some MC calls to mode.cpp, causes KDL so commented out atm. * Add command to idle all DACs (although POWER_RESET doesn't do anything on DACs, we should be consistent) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42416 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3fe78837 |
|
11-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remove superfluous parentheses as per Axel git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42411 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b6c5f468 |
|
04-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add D2 GRPH update lock register to priv headers * Add crtControl global register * Add grphUpdate storage * Do some logical reordering of register writes * Correct crt final power-on checks * Enhance tracing * Disable PLL, it is needed but seems to completely break the modesetting resulting in black-screen-of-doom. (fixing PLL set/calibration is now priority one) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42380 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d1d65a79 |
|
15-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* malloc an array of pointers to hold active crt info, mode, limits, etc. Plan to move gRegister into the crt struct at some point. * Few style fixes * Added function to probe edid of attached monitors and populate CRT info * Disable VGA control modifications temporarly while I hammer out some issues. * Fix radeon card model checks (bitwise & is not |) * Finally fix? blanking start / end calculations using porch * Use mask for setting sync polarity * Add overscan (8 pixels is default?) * Disable PLLSet/Power for the moment as it seems to muck things up. * is_mode_supported now validates if a mode line is with the monitors h/v sync frequencies (how does is_mode_supported know what crt the os wants?) * PLL Write/Read don't actually use the PLL Write/Read functions (thanks AMD!) * Added better PLL legacy (r600-r610) support * Consistantly give no DCCG on legacy cards. * Tracing! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42191 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d9e412b3 |
|
13-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Repair style issue using uintNN_t vs uintNN * Make index numbering consistant (0-n vs 1-n) * Add a little more tracing to PLLCalibrate because we were missing a failure situation git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42158 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
babb12ed |
|
12-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
forgot to remove this, doesn't make sense to power the PLL down on accelerant unload git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42147 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e7e76b29 |
|
12-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Define default PLL ranges * Add crtid to register struct * Disable VGA mode on FrameBuffer set (enables extended mode setting) * Disable blanking calculations and setting more gracefully via if 0 * Add a *large* amount of code to Set/Calculate/Calibrate PLL * Disable PLL on removal of accel. * Remove junk comments on overscan * Enable pixel clock limit pulling * write32AtMask style cleanup * Rename ReadMC to be more consistant (I need to adjust naming for these MMIO calls) * Implement read/write MC. (so many hardcoded oneoffs AMD) * Implement write32PLLAtMask MMIO call git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42146 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1dac4469 |
|
02-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
added scale update locking register; remove leftover intel hack thats not needed on Radeon; fix gcc4 warning on card model comparison git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41872 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
217c0b1d |
|
26-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Add surface address high handling; set primary and secondary surface frame buffer offset git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41769 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5f6744a8 |
|
25-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* move all register calculation into init_registers to keep things simple to troubleshoot * use crt offset only on evergreen, else use AMD provided register locations * init_registers(crtid) is called before making register calls to a monitor. * init_registers supports 1-2 displays on r600-r700 * init_registers supports 1-6 displays on r800+ (AMD eyefinity) * restore CardBlankSet function in a more simple form (still needs init_registers addition) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41757 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
56e6d991 |
|
17-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
make math easier to read; fix chipset int length; additions to CardScale git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41561 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c41d9ce6 |
|
17-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
add viewport registers; correct chipset dependent scale code; rename virtualheight to make it more consistant; spell check git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41557 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bd34b2f7 |
|
17-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* enhance tracing of accelerant * introduce a global struct to hold register locations for Radeon HD chipset model this accelerant was spawned for. * add Radeon 5430 PCIID git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41555 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
47ad511f |
|
19-Mar-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
pre-work style cleanup; no functional change git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41028 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
66f1ecda |
|
21-Apr-2010 |
Clemens Zeidler <clemens.zeidler@googlemail.com> |
Start to cleanup radeon_hd driver. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36393 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a90ebd77 |
|
13-Apr-2010 |
Clemens Zeidler <clemens.zeidler@googlemail.com> |
Work in progress of a Radeon HD 3200 driver to change the display mode (status when I leave the coding spring). At least it shows a picture but with a wrong scaling. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36243 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6543bf0ae1dce2fe76ecc09e048038b55d7313d5 |
|
05-Dec-2014 |
Jonathan Hanna <jhanna@pangolin-systems.com> |
radeon_hd: Ensure all PLL's are INVALID to begin with * If something breaks, it is likely because the wrong PLL is chosen later.
|
#
e2c2a5cefe6e87fcd24f4aea19bbc176e657d4a6 |
|
26-Feb-2014 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Fix app_server bt regression introduced at hrev46862 * We adjusted the array of pointers to be larger, but didn't adjust the malloc to be larger. * Should solve #10563 and maybe #10536
|
#
fca8407a2aee68297fd5f7a357c060ce783c572f |
|
12-Feb-2014 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Fix GPIOInfo pin shortage on some cards * Some cards have a lot of pins! * Should fix #10536 * Add a check to give a friendy warning if we find more GPIO pins than what we are prepared for. * Technically the maximum GPIO pins could be ATOM device max * 2 (16 for i2c and other) however lets leave some room for expansion.
|
#
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
|
#
d96e68765247f837b3787879cfcde72d3311d4d2 |
|
07-Aug-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: re-rework some pll code * Grab pseudo pll SS info for early Spread Spectrum access * display_crtc_ss now takes a pll vs a display for easy pll access
|
#
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.
|
#
63624e404b5eb6fc11a503331e67ce29af074021 |
|
07-Aug-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: reorganize some pll code * Move DisplayPort external pixel clock out of pll as this frequency is card-wide. * Add new function to pull display clock frequency and other card-wide settings. * Set displayDefault frequency card-wide * My DisplayPort LVDS bridge laptop now kind of works (a clock somewhere seems a little off though)
|
#
325089f1fcf20eb45c83e834e23f810f0533aa57 |
|
14-Apr-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Stub out gfx ring boot. * Tab fix as well
|
#
745450ade8a43afb540bae9fd1e17fb3ba0e0842 |
|
11-Apr-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: More initial ring queue work * Rename RenderQueue to RingQueue to be more generic * We will need two Ring Buffer types, one for host -> gpu (render/cp data) and one gpu -> host (irq) * Add header guard to ringqueue.h * Things still may change as I work up to a bigger picture.
|
#
0de9d6cdeffaa5525911a1ecf1bcb3afb1862efb |
|
06-Apr-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Move out some DisplayPort common code * General DisplayPort functions in common dp.cpp * DP port information struct in common header * Please don't use this private accelerant common DP code just yet as it is very early.
|
#
7dd182106a9df09dd5804b47013a9232163881a3 |
|
01-Mar-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Fix invalid encoder state * This was a *big* oops on my part. * We were missing initial setup call for Kaleidoscope and DP Bridge encoders. * If you were having radeon HD mode setting issues, try this change. * Potential fix for #5722, #7397, #8059, #8151, #8282, #8289, #8310, #8322, #8331
|
#
4ee41b26a00408835f410ee25b3241093c7f40d9 |
|
22-Feb-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: Disable spread spectrum * SS requires complex pll adjustments that we don't do atm
|
#
d2a69507d07969763a817447be9259b102e716ce |
|
29-Jan-2012 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
radeon_hd: A few style fixes, no functional change
|
#
f2c3cbf779c2c74d743223bfea37cfaad2efc3a5 |
|
13-Dec-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Begin work powering up the DisplayPort connector * Add new struct to store DP connector information * DisplayPort Configuration Data is populated by setup function
|
#
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
|
#
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
|
#
30207c6c8c18cafcc5451a7d5e4cb9c6b7c2c4e2 |
|
27-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Move thermal query into new driver sensor source file * thermal query still works pre-atombios init
|
#
0cd972316db9c56329f5f4e414826c3a01237f33 |
|
21-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Add first hints of thermal monitoring on radeon cards * add a few missing/needed header defines * show GPU temp in millidegrees C on r600/r700 * evergreen+ support soon * function may be moved to driver long term once testing done
|
#
91affb2da4f93bb3ac3012e59da2bf94520e2a43 |
|
12-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Add legacy card connectior detection using table method * attempt AtomBIOS table probe first, then fallback to legacy method if no connectors found (or table version is too old) * add function to look up object info on older cards * dcc still needs some work on old cards * my X1200 IGP gets video now
|
#
359b926f79d7e7ac697d6aaf28f704b5d5f1283f |
|
08-Nov-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* style cleanup of shared storage names * return better data on card * display chipset flags in screen preflet git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43226 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
46af81655d98616bb2c30a2b76563a3d440ded16 |
|
25-Oct-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* redesign pretty much everything frame buffer related * don't resize the frame buffer after mapping it.. doesn't make sense * add memory controller code and program the memory controller for r600 * remove unneeded frame_buffer_int * don't malloc mc_info, waste of time * fix scaler setting * vramStart in mc should be 0... get vertical colored lines however when this this is set properly (everything in mc_info is the MC view of FB BAR) When vramStart is the FB physical address... i get proper video on some cards ... thoughts? git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42924 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7934da0f090bc6970fc259eff3f171e27966eeee |
|
12-Oct-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* add *very* preliminary dpms support we will need to query the card dpms state for each monitor at a later date git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42829 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
dd295058932cfb721aff7b714256dd9e5c334952 |
|
27-Sep-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remap GPIO pin storage to global struct as they really aren't tied to a connector. (thus allowing for future non-ddc gpio devices like fan speed) * map all i2c gpio pins on accelerant init * use a smaller sub function to attach gpio info to connector i2c info git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42773 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
54c0390b901eb0606bc6c0b46fb0e0c6530f4eda |
|
14-Sep-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remove un-needed i2c_bus on each connector... we simply set this up each time it's needed using the gpio information * rename gpio information struct to be cleaner and shorter * add function to debug found connectors * set gpio mask to 1 vs the defined mask... this seems to get us closer to working ddc / edid per connector * change gpio_info u16's to u32's to ensure we aren't overflowing anything * fix bug always setting hw_capable true * change TRACE to ERROR to always show debug data when called git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42751 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
77b301cb8b0d4beb85e63c9f5b23df46c30a8b0a |
|
21-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* tab fix, no functional change git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42674 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ec89b9861735027eafcafa825b4f344a67ac562d |
|
21-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remove excess NULL check git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42673 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
aee8efc2449441c243e759cd0ca41ee024894481 |
|
21-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* add gConnector for card connector storage * add detect_connectors to detect card connectors * add infinitely compex detect_connectors_manual (used when detect_connectors fails) * add missing AtomBIOS header git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42670 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d3e8b64208159ab71ca24f58ec7e56f1aa4bb5e6 |
|
19-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* introduce mc control calls * malloc storage for mc state info * redo pll range struct * change to ATOM_ENCODER_MODE for connector info * redo pll calculations to match AtomBIOS requirements * some structure changes * no longer init already posted AtomBIOS as it causes an infinite loop of AtomBIOS calls git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42644 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d356bf503359f7581ac6c596588e70eff1f55117 |
|
10-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* consolidate and remove unneeded Xorg headers * move mc code to more generic gpu source/header * add gpu reset functions (with r600 documented) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42616 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f0b0d6cb37165d71817c17d35329adb266420ba2 |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* use create_area correctly * AtomBIOS is now loaded and passed into the radeon_hd accelerant * correct pointer passing in bios_init * AtomBIOS is now read and initialized by AtomBIOS parser * feel free to start testing the driver again :-) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42564 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2168cdbddd20f4986d829cf31e61b92f1a42c242 |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* bug fix, wrong offset git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42561 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3f98c1831c538d84e71cb38ec4e89d19e735d02d |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* create area for AtomBIOS * clone mapped AtomBIOS area into accelerant git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42560 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5cf44dda39962b528f9791e7bfc2f98a9e882478 |
|
03-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* move obtaining / copying the vga bios into the driver. * add missing r500 header * replace r600 headers with newer one from kernel git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42554 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1d5cfc649aeba62066af20336ca69566566500c3 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* move bios functions into bios.cpp * implement various methods to pull AtomBIOS from card * add some missing registers to headers from linux drm driver git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42553 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
81cd6636667750c27d5bad289fa2625926d7c953 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* refactor accelerant debugging * clone VGA rom shared area in accelerant * enable access, and make a copy of the VGA bios * give malloc'ed VGA bios pointer to AtomBIOS parser * Still invalid BIOS magic * TODO : Move atomBIOS pointer and reorganize some stuff git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42550 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ef2909a10ff51b6d543e9208e84055ad1af1a8c5 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Move bios_info into shared info * Pull pci_rom base address from pci subsystem * Point AtomBIOS parser to pci rom address to set up and malloc atom_context * This is untested! Don't run on an expensive card until I test it on a cheaper one! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42541 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5136067474e5350ce28b33e809580dd8118166c1 |
|
02-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Initial work on bios_init for setting up AtomBIOS parser * Refactor AtomBIOS parser to use non-linux-kernel calls (normally I would keep it as-is and do wrappers, but the AtomBIOS parser has been rewritten from scratch twice by its creator in the last 5 years.. so eh. * Refactor AtomBIOS parser to be more haiku-like stylewise git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42538 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2df3def596241bbf68767401c5ae11b11290536b |
|
01-Aug-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Remove old legacy internal AtomBIOS parser * Import "new" AMD AtomBios Parser (aka AMD KGrids) * Add a new global storage struct for BIOS info (ex. location, size, etc) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42534 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0e3075fb4d4a9f769cec675242280be1193ef464 |
|
30-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Provide device chipset in accelerant_device_info git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42516 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6ab8261b98f59b9751c7178a4df66bf1ae0fa66e |
|
30-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Pass device name into shared info * Refactor MCFBsetup to be a little simpler for now * Implement radeon accelerant_device_info for screen preflet * Re-add CRT Power calls to display code. * Disable blanking setting for now... just can't figure out what AMD wants for this. * Remove some un-needed locking in the scaling code * Be sure to disable VGA when set_display_mode is called * Refactor mode setting code to loop over all possible displays and set the provided mode on the attached ones. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42515 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e1b9d6e6743b027ba89a78d381ea398d79ec7822 |
|
28-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add LVDS handling for TMDSB * Fix crash situation if no monitors detected * Assume TMDSB if no monitors sensed (temporary) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42508 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a956672a338292e4e7d9b4f910c82cf9e64466f8 |
|
26-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Fix a few spots where we were checking for NULL unneededly * Fix a few spots where we *should* of been checking for NULL to prevent referencing a null pointer. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42505 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d17bf8d4fb5081fe32f158c8d5241966fdc5f072 |
|
22-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add fancy detected monitors debug function git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42465 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f09dc6d9754acb87367a324f36acd634d58f999a |
|
21-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Small bit of comment cleanup * Rename crt_info display_info git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42463 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
95e1d7e8288c9eb390705b0fa6e735ff091a0e65 |
|
21-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Large refactoring of display detection and storage * Create new display.c/h for display management * Rename global gCRT to gDisplay * Add CRT connection type into gDisplay * Add CRT connection index into gDisplay * Refactor registers for each display into gDisplay via regs * We now shouldn't freak out too badly on multi-monitors git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42462 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
84bcfa3d4bc3f64b82bb80e0b5e88e284f191627 |
|
12-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add mc.cpp for memory controller functions * Remove read32MC as it doesn't apply to radeon cards >= r600 * Add tmds.cpp for tmds connected monitor management (current radeons only have TMDSA for the moment) still needs TDMSPower, etc. * Add some MC calls to mode.cpp, causes KDL so commented out atm. * Add command to idle all DACs (although POWER_RESET doesn't do anything on DACs, we should be consistent) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42416 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3fe788377828eb76c862aa4e58c000086b41d884 |
|
11-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* remove superfluous parentheses as per Axel git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42411 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b6c5f46896776d67f4b48af4584fb989dddda162 |
|
04-Jul-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Add D2 GRPH update lock register to priv headers * Add crtControl global register * Add grphUpdate storage * Do some logical reordering of register writes * Correct crt final power-on checks * Enhance tracing * Disable PLL, it is needed but seems to completely break the modesetting resulting in black-screen-of-doom. (fixing PLL set/calibration is now priority one) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42380 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d1d65a79cbba5eb871c2763824839ee56930a557 |
|
15-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* malloc an array of pointers to hold active crt info, mode, limits, etc. Plan to move gRegister into the crt struct at some point. * Few style fixes * Added function to probe edid of attached monitors and populate CRT info * Disable VGA control modifications temporarly while I hammer out some issues. * Fix radeon card model checks (bitwise & is not |) * Finally fix? blanking start / end calculations using porch * Use mask for setting sync polarity * Add overscan (8 pixels is default?) * Disable PLLSet/Power for the moment as it seems to muck things up. * is_mode_supported now validates if a mode line is with the monitors h/v sync frequencies (how does is_mode_supported know what crt the os wants?) * PLL Write/Read don't actually use the PLL Write/Read functions (thanks AMD!) * Added better PLL legacy (r600-r610) support * Consistantly give no DCCG on legacy cards. * Tracing! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42191 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d9e412b3394847a98fb7bcf85daa3ee59bb765fc |
|
13-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Repair style issue using uintNN_t vs uintNN * Make index numbering consistant (0-n vs 1-n) * Add a little more tracing to PLLCalibrate because we were missing a failure situation git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42158 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
babb12ed0e5c6b46ae29cced3f0b9e4081eeee1a |
|
12-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
forgot to remove this, doesn't make sense to power the PLL down on accelerant unload git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42147 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e7e76b29e839204be635b9f10dd52a41837e20bd |
|
12-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* Define default PLL ranges * Add crtid to register struct * Disable VGA mode on FrameBuffer set (enables extended mode setting) * Disable blanking calculations and setting more gracefully via if 0 * Add a *large* amount of code to Set/Calculate/Calibrate PLL * Disable PLL on removal of accel. * Remove junk comments on overscan * Enable pixel clock limit pulling * write32AtMask style cleanup * Rename ReadMC to be more consistant (I need to adjust naming for these MMIO calls) * Implement read/write MC. (so many hardcoded oneoffs AMD) * Implement write32PLLAtMask MMIO call git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42146 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1dac446909d2021e9b83beaf3e2181a0cbc05e7d |
|
02-Jun-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
added scale update locking register; remove leftover intel hack thats not needed on Radeon; fix gcc4 warning on card model comparison git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41872 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
217c0b1d48b152376e738e2d6355854f4b872fa7 |
|
26-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
Add surface address high handling; set primary and secondary surface frame buffer offset git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41769 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5f6744a8cd01e15c8aa5b35ecd5fe695d970e923 |
|
25-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* move all register calculation into init_registers to keep things simple to troubleshoot * use crt offset only on evergreen, else use AMD provided register locations * init_registers(crtid) is called before making register calls to a monitor. * init_registers supports 1-2 displays on r600-r700 * init_registers supports 1-6 displays on r800+ (AMD eyefinity) * restore CardBlankSet function in a more simple form (still needs init_registers addition) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41757 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
56e6d991bb7d55b7dcf3a8c90a7fa2e563064908 |
|
17-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
make math easier to read; fix chipset int length; additions to CardScale git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41561 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c41d9ce6948f2ca9eecc8956e811a9b493fcd8a6 |
|
17-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
add viewport registers; correct chipset dependent scale code; rename virtualheight to make it more consistant; spell check git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41557 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bd34b2f7561f6392d63beded878e77acdc802e4b |
|
17-May-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
* enhance tracing of accelerant * introduce a global struct to hold register locations for Radeon HD chipset model this accelerant was spawned for. * add Radeon 5430 PCIID git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41555 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
47ad511f59522fc3a7025aaf2cfef073204d8312 |
|
19-Mar-2011 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
pre-work style cleanup; no functional change git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41028 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
66f1ecdae725e487a3180c3f465f79e353bc07e8 |
|
21-Apr-2010 |
Clemens Zeidler <clemens.zeidler@googlemail.com> |
Start to cleanup radeon_hd driver. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36393 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a90ebd77eeae5eca9600d039dc1298898e38278a |
|
13-Apr-2010 |
Clemens Zeidler <clemens.zeidler@googlemail.com> |
Work in progress of a Radeon HD 3200 driver to change the display mode (status when I leave the coding spring). At least it shows a picture but with a wrong scaling. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36243 a95241bf-73f2-0310-859d-f6bbb57e9c96
|