mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
xf86-video-intel:
- update to xf86-video-intel-20100213
This commit is contained in:
parent
65997f67c6
commit
b67ff5413b
@ -6,10 +6,11 @@ $SCRIPTS/build toolchain
|
|||||||
$SCRIPTS/build fontsproto
|
$SCRIPTS/build fontsproto
|
||||||
$SCRIPTS/build xorg-server
|
$SCRIPTS/build xorg-server
|
||||||
|
|
||||||
cd $PKG_BUILD
|
|
||||||
|
|
||||||
xorg_drv_configure_prepend
|
xorg_drv_configure_prepend
|
||||||
|
|
||||||
|
cd $PKG_BUILD
|
||||||
|
|
||||||
|
automake
|
||||||
./configure --host=$TARGET_NAME \
|
./configure --host=$TARGET_NAME \
|
||||||
--build=$HOST_NAME \
|
--build=$HOST_NAME \
|
||||||
--prefix=/usr \
|
--prefix=/usr \
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
|
diff -up xf86-video-intel-2.10.0/src/drmmode_display.c.jx xf86-video-intel-2.10.0/src/drmmode_display.c
|
||||||
index a469f6c..8c14b25 100644
|
--- xf86-video-intel-2.10.0/src/drmmode_display.c.jx 2010-02-08 11:23:25.000000000 -0500
|
||||||
--- a/src/drmmode_display.c
|
+++ xf86-video-intel-2.10.0/src/drmmode_display.c 2010-02-08 11:23:46.000000000 -0500
|
||||||
+++ b/src/drmmode_display.c
|
|
||||||
@@ -35,6 +35,8 @@
|
@@ -35,6 +35,8 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
@ -11,30 +10,24 @@ index a469f6c..8c14b25 100644
|
|||||||
#include "xorgVersion.h"
|
#include "xorgVersion.h"
|
||||||
|
|
||||||
#include "i830.h"
|
#include "i830.h"
|
||||||
@@ -911,6 +913,13 @@ drmmode_output_dpms(xf86OutputPtr output, int mode)
|
@@ -1375,6 +1377,8 @@ drmmode_xf86crtc_resize (ScrnInfoPtr scr
|
||||||
drmmode_ptr drmmode = drmmode_output->drmmode;
|
if (old_front)
|
||||||
int i;
|
i830_free_memory(scrn, old_front);
|
||||||
drmModePropertyPtr props;
|
|
||||||
+ intel_screen_private *intel = intel_get_screen_private(output->scrn);
|
|
||||||
+
|
|
||||||
+ /* xf86Crtc.c calls dpms off in set desired modes, so ignore
|
|
||||||
+ * the request if we're starting up. */
|
|
||||||
+
|
|
||||||
+ if (intel->starting)
|
|
||||||
+ return;
|
|
||||||
|
|
||||||
for (i = 0; i < koutput->count_props; i++) {
|
|
||||||
props = drmModeGetProperty(drmmode->fd, koutput->props[i]);
|
|
||||||
@@ -1412,6 +1421,8 @@ Bool drmmode_pre_init(ScrnInfoPtr scrn, int fd, int cpp)
|
|
||||||
|
|
||||||
xf86InitialConfiguration(scrn, TRUE);
|
|
||||||
|
|
||||||
+ scrn->canDoBGNoneRoot = TRUE;
|
+ scrn->canDoBGNoneRoot = TRUE;
|
||||||
+
|
+
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1446,3 +1457,96 @@ void drmmode_closefb(ScrnInfoPtr scrn)
|
fail:
|
||||||
|
@@ -1414,6 +1418,7 @@ Bool drmmode_pre_init(ScrnInfoPtr scrn,
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ scrn->canDoBGNoneRoot = TRUE;
|
||||||
|
xf86CrtcSetSizeRange(scrn, 320, 200, drmmode->mode_res->max_width,
|
||||||
|
drmmode->mode_res->max_height);
|
||||||
|
for (i = 0; i < drmmode->mode_res->count_crtcs; i++)
|
||||||
|
@@ -1458,3 +1463,98 @@ void drmmode_closefb(ScrnInfoPtr scrn)
|
||||||
drmModeRmFB(drmmode->fd, drmmode->fb_id);
|
drmModeRmFB(drmmode->fd, drmmode->fb_id);
|
||||||
drmmode->fb_id = 0;
|
drmmode->fb_id = 0;
|
||||||
}
|
}
|
||||||
@ -47,7 +40,7 @@ index a469f6c..8c14b25 100644
|
|||||||
+ ScreenPtr pScreen = screenInfo.screens[scrn->scrnIndex];
|
+ ScreenPtr pScreen = screenInfo.screens[scrn->scrnIndex];
|
||||||
+ drmmode_ptr drmmode = drmmode_crtc->drmmode;
|
+ drmmode_ptr drmmode = drmmode_crtc->drmmode;
|
||||||
+ intel_screen_private *intel = intel_get_screen_private(scrn);
|
+ intel_screen_private *intel = intel_get_screen_private(scrn);
|
||||||
+ drmModeFBPtr fbcon = NULL;
|
+ drmModeFBPtr fbcon;
|
||||||
+ struct drm_gem_flink flink;
|
+ struct drm_gem_flink flink;
|
||||||
+ drm_intel_bo *bo;
|
+ drm_intel_bo *bo;
|
||||||
+ PixmapPtr pixmap = NULL;
|
+ PixmapPtr pixmap = NULL;
|
||||||
@ -126,53 +119,17 @@ index a469f6c..8c14b25 100644
|
|||||||
+
|
+
|
||||||
+ intel->uxa_driver->done_copy(dst);
|
+ intel->uxa_driver->done_copy(dst);
|
||||||
+
|
+
|
||||||
+ intel_sync(scrn);
|
+ /* I830EmitFlush(scrn); */
|
||||||
|
+ intel_batch_submit(scrn);
|
||||||
+
|
+
|
||||||
+ (*pScreen->DestroyPixmap)(src);
|
+ (*pScreen->DestroyPixmap)(src);
|
||||||
+ (*pScreen->DestroyPixmap)(dst);
|
+ (*pScreen->DestroyPixmap)(dst);
|
||||||
+}
|
+}
|
||||||
diff --git a/src/i830.h b/src/i830.h
|
|
||||||
index a66038a..d0df26e 100644
|
|
||||||
--- a/src/i830.h
|
|
||||||
+++ b/src/i830.h
|
|
||||||
@@ -376,6 +376,7 @@ typedef struct intel_screen_private {
|
|
||||||
OptionInfoPtr Options;
|
|
||||||
|
|
||||||
/* Driver phase/state information */
|
|
||||||
+ Bool starting;
|
|
||||||
Bool suspended;
|
|
||||||
|
|
||||||
enum last_3d last_3d;
|
|
||||||
@@ -432,6 +433,7 @@ extern int drmmode_get_pipe_from_crtc_id(drm_intel_bufmgr * bufmgr,
|
|
||||||
extern int drmmode_output_dpms_status(xf86OutputPtr output);
|
|
||||||
extern int drmmode_crtc_id(xf86CrtcPtr crtc);
|
|
||||||
void drmmode_crtc_set_cursor_bo(xf86CrtcPtr crtc, dri_bo * cursor);
|
|
||||||
+extern void drmmode_copy_fb(ScrnInfoPtr scrn);
|
|
||||||
|
|
||||||
extern Bool i830_crtc_on(xf86CrtcPtr crtc);
|
|
||||||
extern int i830_crtc_to_pipe(xf86CrtcPtr crtc);
|
|
||||||
diff --git a/src/i830_driver.c b/src/i830_driver.c
|
|
||||||
index e94a60c..da3230c 100644
|
|
||||||
--- a/src/i830_driver.c
|
|
||||||
+++ b/src/i830_driver.c
|
|
||||||
@@ -1276,6 +1276,8 @@ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
|
|
||||||
|
|
||||||
i830_fixup_mtrrs(scrn);
|
|
||||||
|
|
||||||
+ intel->starting = TRUE;
|
|
||||||
+
|
+
|
||||||
miClearVisualTypes();
|
diff -up xf86-video-intel-2.10.0/src/i830_driver.c.jx xf86-video-intel-2.10.0/src/i830_driver.c
|
||||||
if (!miSetVisualTypes(scrn->depth,
|
--- xf86-video-intel-2.10.0/src/i830_driver.c.jx 2010-01-04 17:09:52.000000000 -0500
|
||||||
miGetDefaultVisualMask(scrn->depth),
|
+++ xf86-video-intel-2.10.0/src/i830_driver.c 2010-02-08 11:23:46.000000000 -0500
|
||||||
@@ -1423,6 +1425,7 @@ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
|
@@ -1507,6 +1507,8 @@ static Bool I830EnterVT(int scrnIndex, i
|
||||||
if (serverGeneration == 1)
|
|
||||||
xf86ShowUnusedOptions(scrn->scrnIndex, scrn->options);
|
|
||||||
|
|
||||||
+ intel->starting = FALSE;
|
|
||||||
intel->suspended = FALSE;
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
@@ -1507,6 +1510,8 @@ static Bool I830EnterVT(int scrnIndex, int flags)
|
|
||||||
if (IS_I965G(intel))
|
if (IS_I965G(intel))
|
||||||
gen4_render_state_init(scrn);
|
gen4_render_state_init(scrn);
|
||||||
|
|
||||||
@ -181,3 +138,14 @@ index e94a60c..da3230c 100644
|
|||||||
if (!xf86SetDesiredModes(scrn))
|
if (!xf86SetDesiredModes(scrn))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
|
diff -up xf86-video-intel-2.10.0/src/i830.h.jx xf86-video-intel-2.10.0/src/i830.h
|
||||||
|
--- xf86-video-intel-2.10.0/src/i830.h.jx 2010-01-04 17:09:52.000000000 -0500
|
||||||
|
+++ xf86-video-intel-2.10.0/src/i830.h 2010-02-08 11:23:46.000000000 -0500
|
||||||
|
@@ -430,6 +430,7 @@ extern void drmmode_closefb(ScrnInfoPtr
|
||||||
|
extern int drmmode_get_pipe_from_crtc_id(drm_intel_bufmgr * bufmgr,
|
||||||
|
xf86CrtcPtr crtc);
|
||||||
|
extern int drmmode_output_dpms_status(xf86OutputPtr output);
|
||||||
|
+extern void drmmode_copy_fb(ScrnInfoPtr scrn);
|
||||||
|
extern int drmmode_crtc_id(xf86CrtcPtr crtc);
|
||||||
|
void drmmode_crtc_set_cursor_bo(xf86CrtcPtr crtc, dri_bo * cursor);
|
||||||
|
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
diff --git a/src/bios_reader/Makefile.am b/src/bios_reader/Makefile.am
|
|
||||||
index f2f9dc0..4be476e 100644
|
|
||||||
--- a/src/bios_reader/Makefile.am
|
|
||||||
+++ b/src/bios_reader/Makefile.am
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
AM_CFLAGS = @CWARNFLAGS@ @XORG_CFLAGS@ @PCIACCESS_CFLAGS@ \
|
|
||||||
-DREG_DUMPER
|
|
||||||
|
|
||||||
-noinst_PROGRAMS = bios_reader $(BIOS_DUMPER) $(SWF_DUMPER)
|
|
||||||
+bin_PROGRAMS = bios_reader $(BIOS_DUMPER) $(SWF_DUMPER)
|
|
||||||
|
|
||||||
BIOS_DUMPER = bios_dumper
|
|
||||||
|
|
||||||
diff --git a/src/reg_dumper/Makefile.am b/src/reg_dumper/Makefile.am
|
|
||||||
index 8f00abe..1634a4f 100644
|
|
||||||
--- a/src/reg_dumper/Makefile.am
|
|
||||||
+++ b/src/reg_dumper/Makefile.am
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-noinst_PROGRAMS = \
|
|
||||||
+bin_PROGRAMS = \
|
|
||||||
intel_gtt \
|
|
||||||
intel_statuspage \
|
|
||||||
intel_hotplug \
|
|
75
packages/x11/driver/xf86-video-intel/patches/upstream.diff
Normal file
75
packages/x11/driver/xf86-video-intel/patches/upstream.diff
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
From 1c3aaad09d6ef207fba748ad4ef4575a26ab2e5c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Chris Wilson <chris@chris-wilson.co.uk>
|
||||||
|
Date: Wed, 17 Feb 2010 17:48:32 +0000
|
||||||
|
Subject: dri2: Silence the compiler for an unused function with proto < 4
|
||||||
|
|
||||||
|
Move the unused function into the #if DRI2INFOREC_VERSION >= 4 block.
|
||||||
|
|
||||||
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
||||||
|
---
|
||||||
|
diff --git a/src/i830_dri.c b/src/i830_dri.c
|
||||||
|
index e64b25d..8356525 100644
|
||||||
|
--- a/src/i830_dri.c
|
||||||
|
+++ b/src/i830_dri.c
|
||||||
|
@@ -269,29 +269,6 @@ static void I830DRI2DestroyBuffer(DrawablePtr drawable, DRI2Buffer2Ptr buffer)
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-static int
|
||||||
|
-I830DRI2DrawablePipe(DrawablePtr pDraw)
|
||||||
|
-{
|
||||||
|
- ScreenPtr pScreen = pDraw->pScreen;
|
||||||
|
- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
|
||||||
|
- BoxRec box, crtcbox;
|
||||||
|
- xf86CrtcPtr crtc;
|
||||||
|
- int pipe = -1;
|
||||||
|
-
|
||||||
|
- box.x1 = pDraw->x;
|
||||||
|
- box.y1 = pDraw->y;
|
||||||
|
- box.x2 = box.x1 + pDraw->width;
|
||||||
|
- box.y2 = box.y1 + pDraw->height;
|
||||||
|
-
|
||||||
|
- crtc = i830_covering_crtc(pScrn, &box, NULL, &crtcbox);
|
||||||
|
-
|
||||||
|
- /* Make sure the CRTC is valid and this is the real front buffer */
|
||||||
|
- if (crtc != NULL && !crtc->rotatedData)
|
||||||
|
- pipe = i830_crtc_to_pipe(crtc);
|
||||||
|
-
|
||||||
|
- return pipe;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
static void
|
||||||
|
I830DRI2CopyRegion(DrawablePtr drawable, RegionPtr pRegion,
|
||||||
|
DRI2BufferPtr destBuffer, DRI2BufferPtr sourceBuffer)
|
||||||
|
@@ -425,6 +402,29 @@ typedef struct _DRI2FrameEvent {
|
||||||
|
DRI2BufferPtr back;
|
||||||
|
} DRI2FrameEventRec, *DRI2FrameEventPtr;
|
||||||
|
|
||||||
|
+static int
|
||||||
|
+I830DRI2DrawablePipe(DrawablePtr pDraw)
|
||||||
|
+{
|
||||||
|
+ ScreenPtr pScreen = pDraw->pScreen;
|
||||||
|
+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
|
||||||
|
+ BoxRec box, crtcbox;
|
||||||
|
+ xf86CrtcPtr crtc;
|
||||||
|
+ int pipe = -1;
|
||||||
|
+
|
||||||
|
+ box.x1 = pDraw->x;
|
||||||
|
+ box.y1 = pDraw->y;
|
||||||
|
+ box.x2 = box.x1 + pDraw->width;
|
||||||
|
+ box.y2 = box.y1 + pDraw->height;
|
||||||
|
+
|
||||||
|
+ crtc = i830_covering_crtc(pScrn, &box, NULL, &crtcbox);
|
||||||
|
+
|
||||||
|
+ /* Make sure the CRTC is valid and this is the real front buffer */
|
||||||
|
+ if (crtc != NULL && !crtc->rotatedData)
|
||||||
|
+ pipe = i830_crtc_to_pipe(crtc);
|
||||||
|
+
|
||||||
|
+ return pipe;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static void
|
||||||
|
I830DRI2ExchangeBuffers(DrawablePtr draw, DRI2BufferPtr front,
|
||||||
|
DRI2BufferPtr back)
|
||||||
|
--
|
||||||
|
cgit v0.8.3-6-g21f6
|
@ -1 +1 @@
|
|||||||
http://xorg.freedesktop.org/archive/individual/driver/xf86-video-intel-2.10.0.tar.bz2
|
http://sources.openelec.tv/svn/xf86-video-intel-20100213.tar.bz2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user