Age | Commit message (Collapse) | Author |
|
Seems higher dotclocks prefer a higher FB div.
Someone with a lot of should try and find out where
the div sweet spots are for various dotclock ranges.
fixes bug 17125
|
|
They should only affect 3D and init3d() should take care of that case
noticed by libv on IRC.
|
|
- unify the ddc and i2c code
- add gpio mask support for legacy chips
- remove the magic gpio dance for ancient monitors
(if you have an ancient monitor that ddc stops
working on let me know). This should speed up DDC
on legacy chips.
-- radeon sw gpio i2c --
4 sets of gpio registers for clk and data and corresponding bit masks
mask - locks the gpio for use by sw
get - reads the value off the gpio pad
put - sets the gpio direction to output
a - "other stuff" On legacy chips you clear them if you want
to use a gpio for i2c. In some cases they are used for the
output value when the gpio in the output state.
|
|
Some M6 chips have a faulty MEM_SIZE register that in
some cases reports 0 on 8 MB cards. On EnterVT we check
the MEM_SIZE reg as a check to see if the card is posted or
not. Since this reg returns 0, the driver attempts to post
the card which can lead to a hang. Switch this to check if
either crtc is active as is done in the bios init code.
fixes bug 13994
|
|
- makes crtc1 and crtc2 watermark setup independant.
- fixes the case where only crtc2 is active
|
|
This is a cleaned up (in as much as atombios can be..) of benh's patch.
airlied - removed benh's debugging for now, it might need to be put back later..
|
|
adds pci ids and one register from AMD code
|
|
We never test the other codepath and I don't think I've ever recommended it
for anyone.
|
|
Patch from Jiří Paleček (see debian bug 465864) with some tweaks
by me.
- abort rather than programming bad dividers if no pll dividers can be found
- improve the pll selection algorithm
- in general, prefer lower ref dividers
I've tested this patch on a wide variety of chips (r1xx-r6xx) and clocks.
|
|
This fixes some occasional mode change problems with multiple heads active.
It seems radeons generally like to turn on the whole output/crtc setup
in one shot.
|
|
|
|
On some radeons you can't read the bios without initializing int10.
On ATOM-based secondary cards, intitializing int10 tends to hang the card.
|
|
|
|
|
|
|
|
RS400 (intel based IGP) and RS480 (AMD based IGP) have different
MC setups and need to be handled differently
|
|
The compiler pointed this out...
|
|
As has been done with xf86-video-intel, replace all CARD* datatypes with
uint*_t datatypes available from stdint.h.
|
|
|
|
- get pipe config based on GB_PIPE_SELECT where applicable
(adapted from a similar patch from Dave)
- only flush the dst cache after submitting vertices, freeing
the cache lines stalls the pipe
- no need to wait for 3D idle after submitting vertices
- fix PURGE_CACHE() and PURGE_ZCACHE() for r3xx+
- fix depth 16 with EXA composite
|
|
|
|
This reverts commit be0858a84fbdf74c0b844f462933a221d48c707d.
Conflicts:
src/radeon_driver.c
|
|
Minor changes to avoid declarations mixed with code.
Ansified functions with empty prototype to specify they don't
receive arguments.
Added some prototypes to radeon.h, and major reorder on radeon.h
adding prototypes in alphabetical order and specifying to file that
defines it.
|
|
|
|
this fixes stability issues on digital outputs and certain modes.
|
|
|
|
If you have a washed out image on the tv dac, try this option.
Option "DefaultTVDACAdj" "TRUE"
|
|
DACs are working well, DIG support (DVI, HDMI, LVDS, etc.)
still has some issues.
|
|
info->mc_* were used and the immediately copied into info->ModeReg
ones. Just use the ModeReg copies directly.
|
|
Don't restore memmap regs on every mode switch.
Just do memmap save/restore/setup on server start and VT switch.
|
|
|
|
Based on the kdrive ati video code by Eric Anholt.
R3xx/R4xx still have some clipping issues in certain situations
|
|
Tested on my M10-based laptop.
|
|
|
|
Seems r6xx does something different for its i2c table,
revert to the old behavior for now.
|
|
Split out clk, data, and lock regs and masks. some cards use different
regs and masks for each. For cards with ATOMBIOS, use the i2c bios
table to grab the i2c data.
|
|
|
|
compile-tested only
|
|
|
|
Generally, users that start X with the laptop lid closed
want to use one or more external monitors rather than the
internal panel and do not want the internal panel to be on
by default. Others, it seems, want to always have the
internal panel on, regardless of the lid. I can't win.
Enable this option to force the latter.
|
|
|
|
|
|
move save/restore routines into legacy_crtc/output
|
|
|
|
Conflicts:
src/radeon_display.c
src/radeon_driver.c
|
|
The old code would attempt to limit the maximum pixel size of the screen
by limiting the maximum PLL frequency. This ends up confusing the PLL
computation code since sometimes your maximum freq can be lower than your
minimum freq. More to the point it's just wrong, maximum PLL frequency
isn't the same thing as maximum pixel clock, and even that isn't the same
thing as maximum scanout pixels per second.
The correct thing to do is filter by the mode's effective memory bandwidth.
|
|
|
|
git+ssh://agd5f@git.freedesktop.org/git/xorg/driver/xf86-video-ati into atombios-support
merge master and fix conflicts
|
|
add output enable masks for outputs that drive
more than one connector. Make sure we don't turn off
an output that's driving another connector.
|
|
- reduce the calculation accuracy
- certain LVDS panels seem to only like certain ref_divs
- add pll flags to handle special cases
- adjust the pll limits on legacy cards
|