xf86-video-intel: Branch 'modesetting' - 3 commits - src/i830_lvds.c src/i830_sdvo.c src/i915_exa_render.c
Eric Anholt
anholt at kemper.freedesktop.org
Fri Dec 1 23:31:07 EET 2006
src/i830_lvds.c | 8 ++------
src/i830_sdvo.c | 6 +++---
src/i915_exa_render.c | 2 ++
3 files changed, 7 insertions(+), 9 deletions(-)
New commits:
diff-tree 81dde11d419c8f9198ab3502d9813d66d0bc6d6d (from a504e31f0fefdec802ae403573f52fac3d577b65)
Author: Eric Anholt <eric at anholt.net>
Date: Fri Dec 1 10:37:19 2006 -0800
Fix copy'n'paste-o from restructure-outputs that resulted in crashes.
Our driver private is stored in the bus that we set up, not the DDC device
that xf86 code does.
diff --git a/src/i830_sdvo.c b/src/i830_sdvo.c
index aa06182..c75800d 100644
--- a/src/i830_sdvo.c
+++ b/src/i830_sdvo.c
@@ -823,7 +823,7 @@ i830_sdvo_get_capabilities(xf86OutputPtr
static Bool
i830_sdvo_ddc_i2c_get_byte(I2CDevPtr d, I2CByte *data, Bool last)
{
- xf86OutputPtr output = d->DriverPrivate.ptr;
+ xf86OutputPtr output = d->pI2CBus->DriverPrivate.ptr;
I830OutputPrivatePtr intel_output = output->driver_private;
I2CBusPtr i2cbus = intel_output->pI2CBus, savebus;
Bool ret;
@@ -840,7 +840,7 @@ i830_sdvo_ddc_i2c_get_byte(I2CDevPtr d,
static Bool
i830_sdvo_ddc_i2c_put_byte(I2CDevPtr d, I2CByte c)
{
- xf86OutputPtr output = d->DriverPrivate.ptr;
+ xf86OutputPtr output = d->pI2CBus->DriverPrivate.ptr;
I830OutputPrivatePtr intel_output = output->driver_private;
I2CBusPtr i2cbus = intel_output->pI2CBus, savebus;
Bool ret;
@@ -875,7 +875,7 @@ i830_sdvo_ddc_i2c_start(I2CBusPtr b, int
static void
i830_sdvo_ddc_i2c_stop(I2CDevPtr d)
{
- xf86OutputPtr output = d->DriverPrivate.ptr;
+ xf86OutputPtr output = d->pI2CBus->DriverPrivate.ptr;
I830OutputPrivatePtr intel_output = output->driver_private;
I2CBusPtr i2cbus = intel_output->pI2CBus, savebus;
diff-tree a504e31f0fefdec802ae403573f52fac3d577b65 (from f21230d3e1cc5470e8f88404b5d9f1702bec44bb)
Author: Eric Anholt <eric at anholt.net>
Date: Fri Dec 1 12:49:43 2006 -0800
Don't try to write the read-only PP_STATUS register.
Also, don't bother reading the PP_CONTROL register to try to get LVDS status --
that's what PP_STATUS is for.
diff --git a/src/i830_lvds.c b/src/i830_lvds.c
index bfb4e14..cf70956 100644
--- a/src/i830_lvds.c
+++ b/src/i830_lvds.c
@@ -50,12 +50,10 @@ i830SetLVDSPanelPower(ScrnInfoPtr pScrn,
pI830->backlight_duty_cycle = backlight_duty_cycle;
if (on) {
- OUTREG(PP_STATUS, INREG(PP_STATUS) | PP_ON);
OUTREG(PP_CONTROL, INREG(PP_CONTROL) | POWER_TARGET_ON);
do {
pp_status = INREG(PP_STATUS);
- pp_control = INREG(PP_CONTROL);
- } while (!(pp_status & PP_ON) && !(pp_control & POWER_TARGET_ON));
+ } while ((pp_status & PP_ON) == 0);
OUTREG(BLC_PWM_CTL,
(blc_pwm_ctl & ~BACKLIGHT_DUTY_CYCLE_MASK) |
pI830->backlight_duty_cycle);
@@ -63,12 +61,10 @@ i830SetLVDSPanelPower(ScrnInfoPtr pScrn,
OUTREG(BLC_PWM_CTL,
(blc_pwm_ctl & ~BACKLIGHT_DUTY_CYCLE_MASK));
- OUTREG(PP_STATUS, INREG(PP_STATUS) & ~PP_ON);
OUTREG(PP_CONTROL, INREG(PP_CONTROL) & ~POWER_TARGET_ON);
do {
pp_status = INREG(PP_STATUS);
- pp_control = INREG(PP_CONTROL);
- } while ((pp_status & PP_ON) || (pp_control & POWER_TARGET_ON));
+ } while (pp_status & PP_ON);
}
}
diff-tree f21230d3e1cc5470e8f88404b5d9f1702bec44bb (from e603cd0c73344ef137d3276b5cfcbcf4df340778)
Author: Eric Anholt <eric at anholt.net>
Date: Fri Dec 1 12:48:57 2006 -0800
Add the [ax]4r4g4b4 source picture formats.
diff --git a/src/i915_exa_render.c b/src/i915_exa_render.c
index eae8171..daffa0c 100644
--- a/src/i915_exa_render.c
+++ b/src/i915_exa_render.c
@@ -116,6 +116,8 @@ static struct formatinfo I915TexFormats[
{PICT_r5g6b5, MAPSURF_16BIT | MT_16BIT_RGB565 },
{PICT_a1r5g5b5, MAPSURF_16BIT | MT_16BIT_ARGB1555 },
{PICT_x1r5g5b5, MAPSURF_16BIT | MT_16BIT_ARGB1555 },
+ {PICT_a4r4g4b4, MAPSURF_16BIT | MT_16BIT_ARGB4444 },
+ {PICT_x4r4g4b4, MAPSURF_16BIT | MT_16BIT_ARGB4444 },
{PICT_a8, MAPSURF_8BIT | MT_8BIT_A8 },
};
More information about the xorg-commit
mailing list