Age | Commit message (Collapse) | Author |
|
(cherry picked from commit 59b0fbb9be880d489374b141f818948a2721a2ef)
|
|
For #19115, the root cause is avi_if.u.avi.PR in
i830_sdvo_set_avi_infoframe() belongs to element for
interlaced mode based on CEA_861B, but currently we
don't support interlaced mode. So it should be set as 0.
(cherry picked from commit e38fd84fcccc18284b649a60b4cfd8e24eaf059d)
|
|
Set the SDVO_AUDIO_ENABLE bit to enable SDVO HDMI audio output of the
Intel G35 chipset.
Signed-off-by: Ma Ling <ling.ma@intel.com>
Signed-off-by: Wu Fengguang <wfg@linux.intel.com>
|
|
SDVO encoder power state must be higher than monitor's state.
This only adds command and doesn't enable monitor power state
setting yet.
|
|
|
|
SDVO on Mac mini trys to get EDID from CRT port, which
failed with recent DVI-I change.
|
|
Check return value of get supported encode command and current
encoding mode, which could be DVI or HDMI.
|
|
Remove wrong set tv resolution command, adding HDMI regs in dump.
|
|
While some cards had enough initialized at startup to work already, others
required that the driver actually initialize the required AVI info frame.
|
|
|
|
Now, SDVO is only probed if the SDVO detected bit is set. If the SDVO probe
fails, but the detect bit is set, assume that it's an HDMI output.
|
|
Fix fd.o bug 15766
|
|
|
|
|
|
|
|
Based on a patch by Will Wiseman.
|
|
|
|
The 2-bit input_mask was actually an input count -- in0 is always there, and
in1 is optional.
The output flags weren't being reported in the log, so I mistakenly took
controlled_output == RGB0 to mean that the device only reported an RGB0,
while it actually reported RGB0|SVID0|YPRPB0|misc|other. Move SVID0 up
in priority and remove the RGB-is-it-really-TV hack I had just come up with.
Finally, set the input/output mapping at mode set time. We're always
supposed to do this, but haven't had to so far as we've never handled
devices with more than one output.
|
|
Still doesn't light anything up.
|
|
Doesn't include properties for selecting TV formats or picture enhancements,
and totally untested.
|
|
o Check for RANDR_GET_CRTC_INTERFACE before defining functions that
are used only if it is defined.
o Declare a variable before code, and rename it from ret to xvmc_status
to better describe it.
o if 0 some static functions not used.
o Don't declare some unused variables.
o Declare as static some functions that are used only in the file defining it.
o Add a default/fallback return True to the Bool function
src/xvmc/intel_batchbuffer.c:intelInitBatchBuffer().
o Ansify src/xvmc/xf86dri.c.
o Add missing prototype to src/xvmc/xf86dri.h and follow pattern of other
headers by adding "extern" before function prototype.
|
|
Using the new interface allows the server to avoid some flicker at startup.
|
|
Several uses are actually left, which are determined by the X Server
interfaces we're implementing.
|
|
This will likely fix SDVO outputs on G35 hardware.
|
|
EDID data for TMDS output got from crt should be applied
to TMDS output on mac mini.
|
|
|
|
|
|
Be sure to check G33 chip type in:
- sdvo output
- Y-major tile
- crt detect
- and xaa composite
Sorry for that I should have fixed them very earlier...
|
|
This lights up my monitor VGA-1 - it doesn't look the best though
|
|
Move clone/crtc config into each output where it's easier to understand (no
need for a switch statement in I830PrepareOutputs. Also, split DVO into
three sub-types (TMDS, LVDS, TVOUT) as those have different cloning
abilities.
|
|
usleep isn't always available, and we have an existing delay mechanism
available to use.
|
|
|
|
and remove it from get attached displays call.
|
|
displays. Ensures the command has completed before continuing.
(probably need to check PENDING in other SDVO calls too)
|
|
|
|
git://proxy.ims.intel.com:9419/git/xorg/driver/xf86-video-intel into crestline
Conflicts:
src/i830_display.c
Change LVDS output and postread like upstream. This might
need to be retested on 965GM LVDS.
|
|
For some reason, certain chips don't correctly enable the SDVO hardware when
this register is written only once. We're following what the BIOS code does
and writing it twice now, but with extra posting reads to boot. Yes, this is
cult-and-paste, but it fixes problems found on deployed hardware.
|
|
Also, add code for setting the encoder power state like the BIOS does, but this
doesn't appear to work. We do much more than the BIOS does in powering things
down, so perhaps that's interfering somehow.
|
|
|
|
|
|
|
|
|
|
New hooks replace explicit invocation of DPMS functions to manage mode
setting sequencing.
|
|
Setting option "Ignore" "Yes" will cause the server to pretend as if the
specified output does not exist at all. It will not be listed by the
RandR1.2 extension, and the server will not attempt to detect monitors at
startup time.
|
|
NULL vs. 0
make some variables static
remove redundant variables
There are only a few sparse warnings left now: some bitfield warnings
and a few 'mixing code and declarations' warnings from the ring macros.
|
|
Add relative and absolute position configuration code, using per-output
monitor sections. Options include:
PreferredMode selects a preferred mode for this output by name
Position absolute position, x and y in a single string.
Below relative positions; argument names other monitor.
RightOf
Above
LeftOf
Enable force the monitor to be disabled by setting
Disable enable to no or disable to yes.
MinClock Set valid clock ranges
MaxClock
Monitor sections can also include sync ranges, physical size and mode lines
as documented in xorg.conf(5).
Monitors are associated with outputs through options in the Device section:
Option "monitor-VGA" "My VGA Monitor"
Output named 'VGA' will use monitor section "My VGA Monitor".
|
|
Move output connection status detection from RandR code up to ProbeModes so
it is done before mode sets are built. Otherwise, the mode building code
will elide all modes the first time through as it ignores outputs that are
disconnected.
Most get_modes functions fetch EDID data; make sure that any
EDID changes are used in the ProbeModes filtering of default modes.
Otherwise, stale EDID data will be used.
Allow outputs to advertise support for interlaced and double scan modes;
prune such modes from the default mode list when outputs do not support them.
|
|
Oops--looks like a typo to me; the code was callint set_target_output
instead of set_active_outputs.
BIOS loops waiting for the SDVO input to sync before enabling outputs, this
makes sense to me.
|
|
Instead of delaying pll/pipe/plane enables to the dpms function, turn them
on right away in the crtc_set_mode function. To avoid rewriting these
registers in the subsequent dpms function, check each register written there
to see if the enable bit is already on and don't rewrite.
|
|
Pull xf86CrtcConfig out of the driver private structure and allocate a
ScrnInfo private index for it. Also, make the arrays of outputs and crtcs
dynamic instead of fixed.
|