.gear/rules | 2 + .../tags/a52f80c4aea9406cd065352d622ac5afce1c5f8b | 6 + .gear/tags/list | 1 + configure.ac | 2 +- src/bios_reader/bios_reader.c | 15 + src/common.h | 7 +- src/i810_driver.c | 4 + src/i830_bios.c | 13 +- src/i830_driver.c | 13 +- src/i830_memory.c | 29 ++ src/i830_quirks.c | 2 + src/i830_video.c | 16 +- src/xvmc/Makefile.am | 4 +- xinf2fdi | 97 ++++++ xorg-drv-intel.spec | 316 ++++++++++++++++++++ 15 files changed, 507 insertions(+), 20 deletions(-) diff --git a/.gear/rules b/.gear/rules new file mode 100644 index 0000000..58c588c --- /dev/null +++ b/.gear/rules @@ -0,0 +1,2 @@ +tar: xf86-video-intel-@version@:. +diff: xf86-video-intel-@version@:. . diff --git a/.gear/tags/a52f80c4aea9406cd065352d622ac5afce1c5f8b b/.gear/tags/a52f80c4aea9406cd065352d622ac5afce1c5f8b new file mode 100644 index 0000000..1e2a993 --- /dev/null +++ b/.gear/tags/a52f80c4aea9406cd065352d622ac5afce1c5f8b @@ -0,0 +1,6 @@ +object 55e17ecbaddde95cded5cd99ab3fb7e304a05072 +type commit +tag xf86-video-intel-2.4.3 +tagger Valery Inozemtsev 1226609840 +0300 + +xf86-video-intel-2.4.3 diff --git a/.gear/tags/list b/.gear/tags/list new file mode 100644 index 0000000..d4b0692 --- /dev/null +++ b/.gear/tags/list @@ -0,0 +1 @@ +a52f80c4aea9406cd065352d622ac5afce1c5f8b xf86-video-intel-2.4.3 diff --git a/configure.ac b/configure.ac index 3fb8a0b..7883316 100644 --- a/configure.ac +++ b/configure.ac @@ -202,7 +202,7 @@ if test "$DRI" = yes; then PKG_CHECK_MODULES(DRI, [libdrm xf86driproto glproto]) AC_DEFINE(XF86DRI,1,[Enable DRI driver support]) AC_DEFINE(XF86DRI_DEVEL,1,[Enable developmental DRI driver support]) - PKG_CHECK_MODULES(DRI_MM, [libdrm >= 2.4.0],[DRI_MM=yes], [DRI_MM=no]) + DRI_MM=no if test "x$DRI_MM" = xyes; then AC_DEFINE(XF86DRI_MM,1,[Extended DRI memory management]) fi diff --git a/src/bios_reader/bios_reader.c b/src/bios_reader/bios_reader.c index dbcd150..d43d8f9 100644 --- a/src/bios_reader/bios_reader.c +++ b/src/bios_reader/bios_reader.c @@ -180,6 +180,19 @@ static void dump_lvds_options(void *data) printf("\tPFIT mode: %d\n", options->pfit_mode); } +static void dump_lvds_ptr_data(void *data, unsigned char *base) +{ + struct bdb_lvds_lfp_data_ptrs *ptrs = data; + + struct lvds_fp_timing *fp_timing = + (struct lvds_fp_timing *)(base + ptrs->ptr[panel_type].fp_timing_offset); + + printf("LVDS timing pointer data:\n"); + + printf("\tpanel type %02i: %dx%d\n", panel_type, fp_timing->x_res, + fp_timing->y_res); +} + static void dump_lvds_data(void *data, unsigned char *base) { struct bdb_lvds_lfp_data *lvds_data = data; @@ -274,6 +287,8 @@ int main(int argc, char **argv) dump_general_definitions(find_section(bdb, BDB_GENERAL_DEFINITIONS)); dump_lvds_options(find_section(bdb, BDB_LVDS_OPTIONS)); dump_lvds_data(find_section(bdb, BDB_LVDS_LFP_DATA), bdb); + dump_lvds_ptr_data(find_section(bdb, BDB_LVDS_LFP_DATA_PTRS), + (unsigned char *)bdb); return 0; } diff --git a/src/common.h b/src/common.h index f2ae502..98d4c9f 100644 --- a/src/common.h +++ b/src/common.h @@ -323,6 +323,11 @@ extern int I810_DEBUG; #define PCI_CHIP_Q45_G_BRIDGE 0x2E10 #endif +#ifndef PCI_CHIP_G41_G +#define PCI_CHIP_G41_G 0x2E32 +#define PCI_CHIP_G41_G_BRIDGE 0x2E30 +#endif + #if XSERVER_LIBPCIACCESS #define I810_MEMBASE(p,n) (p)->regions[(n)].base_addr #define VENDOR_ID(p) (p)->vendor_id @@ -355,7 +360,7 @@ extern int I810_DEBUG; #define IS_I945G(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I945_G) #define IS_I945GM(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I945_GM || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I945_GME) #define IS_GM45(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_GM45_GM) -#define IS_G4X(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_IGD_E_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G45_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_Q45_G) +#define IS_G4X(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_IGD_E_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G45_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_Q45_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G41_G) #define IS_I965GM(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_GM || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_GME) #define IS_I965G(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G35_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_Q || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I946_GZ || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_GM || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_GME || IS_GM45(pI810) || IS_G4X(pI810)) #define IS_G33CLASS(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G33_G ||\ diff --git a/src/i810_driver.c b/src/i810_driver.c index 8540646..36b6474 100644 --- a/src/i810_driver.c +++ b/src/i810_driver.c @@ -156,6 +156,7 @@ static const struct pci_id_match intel_device_match[] = { INTEL_DEVICE_MATCH (PCI_CHIP_IGD_E_G, 0 ), INTEL_DEVICE_MATCH (PCI_CHIP_G45_G, 0 ), INTEL_DEVICE_MATCH (PCI_CHIP_Q45_G, 0 ), + INTEL_DEVICE_MATCH (PCI_CHIP_G41_G, 0 ), { 0, 0, 0 }, }; @@ -212,6 +213,7 @@ static SymTabRec I810Chipsets[] = { {PCI_CHIP_IGD_E_G, "Intel Integrated Graphics Device"}, {PCI_CHIP_G45_G, "G45/G43"}, {PCI_CHIP_Q45_G, "Q45/Q43"}, + {PCI_CHIP_G41_G, "G41"}, {-1, NULL} }; @@ -245,6 +247,7 @@ static PciChipsets I810PciChipsets[] = { {PCI_CHIP_IGD_E_G, PCI_CHIP_IGD_E_G, RES_SHARED_VGA}, {PCI_CHIP_G45_G, PCI_CHIP_G45_G, RES_SHARED_VGA}, {PCI_CHIP_Q45_G, PCI_CHIP_Q45_G, RES_SHARED_VGA}, + {PCI_CHIP_G41_G, PCI_CHIP_G41_G, RES_SHARED_VGA}, {-1, -1, RES_UNDEFINED } }; @@ -812,6 +815,7 @@ I810Probe(DriverPtr drv, int flags) case PCI_CHIP_IGD_E_G: case PCI_CHIP_G45_G: case PCI_CHIP_Q45_G: + case PCI_CHIP_G41_G: xf86SetEntitySharable(usedChips[i]); /* Allocate an entity private if necessary */ diff --git a/src/i830_bios.c b/src/i830_bios.c index fe55d23..97bf4fa 100644 --- a/src/i830_bios.c +++ b/src/i830_bios.c @@ -88,8 +88,8 @@ static void parse_panel_data(I830Ptr pI830, struct bdb_header *bdb) { struct bdb_lvds_options *lvds_options; - struct bdb_lvds_lfp_data *lvds_lfp_data; - struct bdb_lvds_lfp_data_entry *entry; + struct bdb_lvds_lfp_data_ptrs *lvds_lfp_data_ptrs; + int timing_offset; DisplayModePtr fixed_mode; unsigned char *timing_ptr; @@ -104,12 +104,13 @@ parse_panel_data(I830Ptr pI830, struct bdb_header *bdb) if (lvds_options->panel_type == 0xff) return; - lvds_lfp_data = find_section(bdb, BDB_LVDS_LFP_DATA); - if (!lvds_lfp_data) + lvds_lfp_data_ptrs = find_section(bdb, BDB_LVDS_LFP_DATA_PTRS); + if (!lvds_lfp_data_ptrs) return; - entry = &lvds_lfp_data->data[lvds_options->panel_type]; - timing_ptr = (unsigned char *)&entry->dvo_timing; + timing_offset = + lvds_lfp_data_ptrs->ptr[lvds_options->panel_type].dvo_timing_offset; + timing_ptr = (unsigned char *)bdb + timing_offset; fixed_mode = xnfalloc(sizeof(DisplayModeRec)); memset(fixed_mode, 0, sizeof(*fixed_mode)); diff --git a/src/i830_driver.c b/src/i830_driver.c index 0a747c1..f9f6836 100644 --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -255,6 +255,7 @@ static SymTabRec I830Chipsets[] = { {PCI_CHIP_IGD_E_G, "Intel Integrated Graphics Device"}, {PCI_CHIP_G45_G, "G45/G43"}, {PCI_CHIP_Q45_G, "Q45/Q43"}, + {PCI_CHIP_G41_G, "G41"}, {-1, NULL} }; @@ -282,6 +283,7 @@ static PciChipsets I830PciChipsets[] = { {PCI_CHIP_IGD_E_G, PCI_CHIP_IGD_E_G, RES_SHARED_VGA}, {PCI_CHIP_G45_G, PCI_CHIP_G45_G, RES_SHARED_VGA}, {PCI_CHIP_Q45_G, PCI_CHIP_Q45_G, RES_SHARED_VGA}, + {PCI_CHIP_G41_G, PCI_CHIP_G41_G, RES_SHARED_VGA}, {-1, -1, RES_UNDEFINED} }; @@ -1230,6 +1232,9 @@ i830_detect_chipset(ScrnInfoPtr pScrn) case PCI_CHIP_Q45_G: chipname = "Q45/Q43"; break; + case PCI_CHIP_G41_G: + chipname = "G41"; + break; default: chipname = "unknown chipset"; break; @@ -1571,7 +1576,7 @@ I830PreInit(ScrnInfoPtr pScrn, int flags) * for example. :) */ if (!pI830->noAccel) { -#ifdef I830_USE_EXA +#if defined(I830_USE_EXA) && GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) > 3 pI830->useEXA = TRUE; #else pI830->useEXA = FALSE; @@ -3271,7 +3276,7 @@ I830LeaveVT(int scrnIndex, int flags) pI830->leaving = TRUE; if (pI830->devicesTimer) - TimerCancel(pI830->devicesTimer); + TimerFree(pI830->devicesTimer); pI830->devicesTimer = NULL; i830SetHotkeyControl(pScrn, HOTKEY_BIOS_SWITCH); @@ -3512,7 +3517,7 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen) } if (pI830->devicesTimer) - TimerCancel(pI830->devicesTimer); + TimerFree(pI830->devicesTimer); pI830->devicesTimer = NULL; DPRINTF(PFX, "\nUnmapping memory\n"); @@ -3648,7 +3653,7 @@ I830PMEvent(int scrnIndex, pmEvent event, Bool undo) /* If we had status checking turned on, turn it off now */ if (pI830->checkDevices) { if (pI830->devicesTimer) - TimerCancel(pI830->devicesTimer); + TimerFree(pI830->devicesTimer); pI830->devicesTimer = NULL; pI830->checkDevices = FALSE; } diff --git a/src/i830_memory.c b/src/i830_memory.c index 0a2faeb..3696aac 100644 --- a/src/i830_memory.c +++ b/src/i830_memory.c @@ -154,6 +154,29 @@ i830_get_fence_size(ScrnInfoPtr pScrn, unsigned long size) } static Bool +i830_check_display_stride(ScrnInfoPtr pScrn, int stride, Bool tiling) +{ + I830Ptr pI830 = I830PTR(pScrn); + int limit = KB(32); + + /* 8xx spec has always 8K limit, but tests show larger limit in + non-tiling mode, which makes large monitor work. */ + if ((IS_845G(pI830) || IS_I85X(pI830)) && tiling) + limit = KB(8); + + if (IS_I915(pI830) && tiling) + limit = KB(8); + + if (IS_I965G(pI830) && tiling) + limit = KB(16); + + if (stride <= limit) + return TRUE; + else + return FALSE; +} + +static Bool i830_bind_memory(ScrnInfoPtr pScrn, i830_memory *mem) { I830Ptr pI830 = I830PTR(pScrn); @@ -1189,6 +1212,12 @@ i830_allocate_framebuffer(ScrnInfoPtr pScrn, I830Ptr pI830, BoxPtr FbMemBox, else tiling = pI830->tiling; + if (!i830_check_display_stride(pScrn, pitch, tiling)) { + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Front buffer stride %d kB " + "exceed display limit\n", pitch/1024); + return NULL; + } + /* Attempt to allocate it tiled first if we have page flipping on. */ if (tiling && IsTileable(pScrn, pitch)) { /* XXX: probably not the case on 965 */ diff --git a/src/i830_quirks.c b/src/i830_quirks.c index fe6cdd8..7fbdd31 100644 --- a/src/i830_quirks.c +++ b/src/i830_quirks.c @@ -286,6 +286,8 @@ static i830_quirk i830_quirk_list[] = { { PCI_CHIP_I855_GM, 0x1028, 0x014f, quirk_pipea_force }, /* Dell Inspiron 510m needs pipe A force quirk */ { PCI_CHIP_I855_GM, 0x1028, 0x0164, quirk_pipea_force }, + /* Toshiba Satellite A30 needs pipe A force quirk */ + { PCI_CHIP_I855_GM, 0x1179, 0xff00 , quirk_pipea_force }, /* Toshiba Protege R-205, S-209 needs pipe A force quirk */ { PCI_CHIP_I915_GM, 0x1179, 0x0001, quirk_pipea_force }, /* Intel 855GM hardware (See LP: #216490) */ diff --git a/src/i830_video.c b/src/i830_video.c index 486f670..1f6dfaa 100644 --- a/src/i830_video.c +++ b/src/i830_video.c @@ -2245,12 +2245,16 @@ I830PutImage(ScrnInfoPtr pScrn, pI830->entityPrivate->XvInUse = i830_crtc_pipe (pPriv->current_crtc);; } - /* Clamp dst width & height to 7x of src (overlay limit) */ - if(drw_w > (src_w * 7)) - drw_w = src_w * 7; + if (!pPriv->textured) { + /* If dst width and height are less than 1/8th the src size, the + * src/dst scale factor becomes larger than 8 and doesn't fit in + * the scale register. */ + if(src_w >= (drw_w * 8)) + drw_w = src_w/7; - if(drw_h > (src_h * 7)) - drw_h = src_h * 7; + if(src_h >= (drw_h * 8)) + drw_h = src_h/7; + } /* Clip */ x1 = src_x; diff --git a/src/xvmc/Makefile.am b/src/xvmc/Makefile.am index 345160f..b1b2658 100644 --- a/src/xvmc/Makefile.am +++ b/src/xvmc/Makefile.am @@ -7,7 +7,7 @@ libI810XvMC_la_SOURCES = I810XvMC.c \ libI810XvMC_la_CFLAGS = @WARN_CFLAGS@ @XORG_CFLAGS@ @DRI_CFLAGS@ \ -I$(top_srcdir)/src -DTRUE=1 -DFALSE=0 libI810XvMC_la_LDFLAGS = -version-number 1:0:0 -libI810XvMC_la_LIBADD = @DRI_LIBS@ +libI810XvMC_la_LIBADD = @XORG_LIBS@ @DRI_LIBS@ $(XVMCLIB_LIBS) libIntelXvMC_la_SOURCES = intel_xvmc.c \ intel_xvmc.h \ @@ -24,5 +24,5 @@ libIntelXvMC_la_SOURCES = intel_xvmc.c \ libIntelXvMC_la_CFLAGS = @XORG_CFLAGS@ @DRI_CFLAGS@ @XVMCLIB_CFLAGS@ -I$(top_srcdir)/src -DTRUE=1 -DFALSE=0 libIntelXvMC_la_LDFLAGS = -version-number 1:0:0 -libIntelXvMC_la_LIBADD = @DRI_LIBS@ +libIntelXvMC_la_LIBADD = @XORG_LIBS@ @DRI_LIBS@ $(XVMCLIB_LIBS) -lpthread endif diff --git a/xinf2fdi b/xinf2fdi new file mode 100755 index 0000000..cc651d0 --- /dev/null +++ b/xinf2fdi @@ -0,0 +1,97 @@ +#!/bin/sh + +IN_FILE= +OUT_FILE= +DRIVER= + +add_match() +{ + if echo $p_id | grep -q "\;"; then + key="int_outof" + else + key="int" + fi + cat >> "$OUT_FILE" << EOF + + + $DRIVER + + + +EOF + +} + +add_ids() { + for ids in $IDS; do + if [ -z "$v_id" ]; then + v_id=${ids/-0x????/} + p_id=${ids/0x????-/} + else + if [ "${ids/-0x????/}" = "$v_id" ]; then + if [ -z "$p_id" ]; then + p_id=${ids/0x????-/} + else + p_id="$p_id;${ids/0x????-/}" + fi + else + add_match + v_id=${ids/-0x????/} + p_id=${ids/0x????-/} + fi + fi + done + add_match +} + +add_device() { + if [ -n "$IDS" ]; then + cat > "$OUT_FILE" << EOF + + + + +EOF + add_ids + cat >> "$OUT_FILE" << EOF + + +EOF + fi +} + +PROG="${0##*/}" + +TEMP=`getopt -n "$PROG" -o x:f:d: -l xinf:,fdi:,driver: -- "$@"` || exit 1 +eval set -- "$TEMP" + +while :; do + case "$1" in + -x|--xinf) + shift + IN_FILE="$1" + shift + ;; + -f|--fdi) + shift + OUT_FILE="$1" + shift + ;; + -d|--driver) + shift + DRIVER="$1" + shift + ;; + --) + shift + break + ;; + esac +done + +[ -n "$IN_FILE" ] || exit 1 +[ -n "$OUT_FILE" ] || exit 1 +[ -n "$DRIVER" ] || exit 1 + +IDS=`sed -ne 's|.*v....\(....\)d....\(....\)sv.*|0x\1-0x\2|p' "$IN_FILE" | sort -u` +add_device diff --git a/xorg-drv-intel.spec b/xorg-drv-intel.spec new file mode 100644 index 0000000..71eb66c --- /dev/null +++ b/xorg-drv-intel.spec @@ -0,0 +1,316 @@ +%define _hwdatadir %_datadir/hwdatabase/videoaliases +%define _fdidir %_datadir/hal/fdi/policy/10osvendor + +Name: xorg-drv-intel +Version: 2.4.3 +Release: alt0.M41.1 +Serial: 3 +Summary: Intel integrated graphics chipsets +License: MIT/X11 +Group: System/X11 +Url: http://xorg.freedesktop.org +Packager: Valery Inozemtsev + +Requires: XORG_ABI_VIDEODRV = %get_xorg_abi_videodrv +Requires: xorg-dri-intel +Obsoletes: xorg-x11-drv-i8xx xorg-x11-drv-i810 xorg-x11-drv-intel +Provides: xorg-x11-drv-i8xx = %serial:7.2.0 xorg-x11-drv-i810 = %serial:%version-%release +Provides: xorg-x11-drv-intel = %serial:%version-%release + +Source: %name-%version.tar +Patch: %name-%version-%release.patch + +BuildRequires: libXvMC-devel libGL-devel xorg-proto-devel xorg-sdk xorg-util-macros + +%description +intel is an Xorg driver for Intel integrated graphics +chipsets. The driver supports depths 8, 15, 16 and 24. All visual +types are supported in depth 8. For the i810/i815 other depths support +the TrueColor and DirectColor visuals. For the 830M and later, only +the TrueColor visual is supported for depths greater than 8. The +driver supports hardware accelerated 3D via the Direct Rendering Infra- +structure (DRI), but only in depth 16 for the i810/i815 and depths 16 +and 24 for the 830M and later. + +%prep +%setup -q +%patch -p1 + +%build +%autoreconf +%configure \ + --with-xserver-source=%_includedir/xorg \ + --with-xorg-module-dir=%_x11modulesdir \ + --enable-dri \ + --disable-static + +%make_build + +%install +%make DESTDIR=%buildroot install + +mkdir -p %buildroot%_hwdatadir +sed -ne '/^#def.*_BRIDGE.*/d;s|^#def.*\(PCI_CHIP_.*\)[[:space:]]*0x\([[:xdigit:]]*\)|alias pcivideo:v00008086d0000\U\2\Esv*sd*bc*sc*i* intel\t# \1|p' src/common.h \ + >> %buildroot%_hwdatadir/intel.xinf + +mkdir -p %buildroot%_fdidir +sh xinf2fdi -x %buildroot%_hwdatadir/intel.xinf -f %buildroot%_fdidir/11-x11-video-intel.fdi -d intel + +%triggerin -- xorg-x11-drv-intel <= 3:2.2.1-alt3 +if [ -f %_altdir/%name ]; then + [ -x %_sbindir/alternatives-helper ] && %_sbindir/alternatives-helper --remove %name +fi + +%files +%_libdir/*.so.* +%_x11modulesdir/drivers/*.so +%dir %_hwdatadir +%_hwdatadir/*.xinf +%_fdidir/11-x11-video-intel.fdi +%_man4dir/i*.4* + +%changelog +* Fri Nov 14 2008 Valery Inozemtsev 3:2.4.3-alt0.M41.1 +- build for branch 4.1 + +* Thu Nov 13 2008 Valery Inozemtsev 3:2.4.3-alt1 +- 2.4.3 + +* Fri Nov 07 2008 Valery Inozemtsev 3:2.4.2-alt9.M41.1 +- build for branch 4.1 + +* Fri Nov 07 2008 Valery Inozemtsev 3:2.4.2-alt10 +- use LFP data pointers instead of array (close #17811) + +* Sun Oct 26 2008 Valery Inozemtsev 3:2.4.2-alt9 +- fixed build with libdrm-2.4.0 + +* Sun Sep 21 2008 Valery Inozemtsev 3:2.4.2-alt8 +- disabled TTM + +* Sat Sep 20 2008 Valery Inozemtsev 3:2.4.2-alt7 +- Pipe A force quirk for Toshiba Satellite A30 +- fixed upscaling limit +- fixed timer leak + +* Mon Sep 15 2008 Valery Inozemtsev 3:2.4.2-alt5.M41.1 +- build for branch 4.1 + +* Mon Sep 15 2008 Valery Inozemtsev 3:2.4.2-alt6 +- added new option "TTM", TTM disabled by defaults + +* Sat Sep 13 2008 Valery Inozemtsev 3:2.4.2-alt5 +- enabled TTM + +* Fri Sep 12 2008 Valery Inozemtsev 3:2.4.2-alt4 +- added support for G41 chipset + +* Fri Sep 05 2008 Valery Inozemtsev 3:2.4.2-alt3 +- set EXA by defaults + +* Wed Aug 27 2008 Valery Inozemtsev 3:2.4.2-alt2 +- requires XORG_ABI_VIDEODRV = 4.1 + +* Tue Aug 26 2008 Valery Inozemtsev 3:2.4.2-alt1 +- 2.4.2 + +* Fri Aug 15 2008 Valery Inozemtsev 3:2.4.1-alt1 +- 2.4.1 + +* Fri Aug 01 2008 Valery Inozemtsev 3:2.4.0-alt1 +- 2.4.0 + +* Wed Jun 18 2008 Valery Inozemtsev 3:2.3.2-alt2 +- add support for Intel 4 series chipsets + +* Wed Jun 18 2008 Valery Inozemtsev 3:2.3.2-alt1 +- 2.3.2 + +* Mon Jun 02 2008 Valery Inozemtsev 3:2.3.1-alt3 +- rename xorg-x11-drv-intel to xorg-drv-intel +- add requires XORG_ABI_VIDEODRV = 2.0 + +* Sat May 24 2008 Valery Inozemtsev 3:2.3.1-alt2 +- fix/check vt switch + +* Mon May 12 2008 Valery Inozemtsev 3:2.3.1-alt1 +- 2.3.1 + +* Sat May 10 2008 Valery Inozemtsev 3:2.3.0-alt2 +- xf86-video-intel-2.3-branch 2008-05-10: + + fixed freeze on two X start (close #15479) + +* Wed Apr 23 2008 Valery Inozemtsev 3:2.3.0-alt1 +- 2.3.0 +- XAA by defaults for all chips + +* Fri Apr 04 2008 Valery Inozemtsev 3:2.2.1-alt4 +- obsoletes xorg-x11-drv-i810 +- convert xinf to fdi + +* Thu Mar 27 2008 Valery Inozemtsev 3:2.2.1-alt3 +- XAA by defaults for i8xx only + +* Tue Mar 25 2008 Valery Inozemtsev 3:2.2.1-alt2 +- disable DRI memory manager +- reset XV after mode switch + +* Sat Feb 23 2008 Valery Inozemtsev 3:2.2.1-alt1 +- 2.2.1 + +* Wed Feb 06 2008 Valery Inozemtsev 3:2.2.0.90-alt1 +- 2.2.1 pre-release + +* Fri Jan 25 2008 Valery Inozemtsev 3:2.2.0-alt5 +- fix VT switch + +* Sat Jan 05 2008 Valery Inozemtsev 3:2.2.0-alt4 +- xf86-video-intel-2.2-branch + +* Sat Dec 01 2007 Valery Inozemtsev 3:2.2.0-alt3 +- removed provides/obsoletes i810 +- fixed intel.xinf + +* Sat Nov 17 2007 Valery Inozemtsev 3:2.2.0-alt2 +- fix typo in 1920x1080 resolution entry + +* Fri Nov 16 2007 Valery Inozemtsev 3:2.2.0-alt1 +- 2.2.0 +- drop legacy driver + +* Wed Oct 31 2007 Valery Inozemtsev 3:2.1.1-alt3 +- added backlight control methods patch (close #13211) + +* Mon Sep 10 2007 Valery Inozemtsev 3:2.1.1-alt2 +- rebuild with xorg-server-1.4 + +* Fri Aug 31 2007 Valery Inozemtsev 3:2.1.1-alt1 +- 2.1.1 +- legacy driver version 1.6.5 + +* Thu Aug 09 2007 Valery Inozemtsev 3:2.1.0-alt3 +- added 0x8086:0x2562 845G/GL/GE (close #12515) + +* Tue Jul 31 2007 Valery Inozemtsev 3:2.1.0-alt2 +- generate intel.xinf from common.h +- added 0x8086:0x5641 PCI_CHIP_I845_G (close #12423) + +* Tue Jul 03 2007 Valery Inozemtsev 3:2.1.0-alt1 +- 2.1.0 + +* Tue Jun 19 2007 Valery Inozemtsev 3:2.0.0-alt8 +- fix left G33 issues +- update xinf file + +* Wed Jun 06 2007 Valery Inozemtsev 3:2.0.0-alt7 +- add support for the G33, Q33, and Q35 chipsets + +* Thu May 31 2007 Valery Inozemtsev 3:2.0.0-alt6 +- add support for the i945GME, i965GME and i965GLE chipsets + +* Fri Apr 27 2007 Valery Inozemtsev 3:2.0.0-alt5 +- returned old driver i810 + +* Fri Apr 27 2007 Valery Inozemtsev 3:2.0.0-alt4 +- drop XV patches + +* Wed Apr 25 2007 Valery Inozemtsev 3:2.0.0-alt3 +- fixed XV on i8xx chipsets + +* Tue Apr 24 2007 Valery Inozemtsev 3:2.0.0-alt2 +- removed old driver i810 + +* Fri Apr 20 2007 Valery Inozemtsev 3:2.0.0-alt1 +- 2.0 release + +* Tue Apr 03 2007 Valery Inozemtsev 3:1.9.94-alt1 +- 2.0RC4 + +* Tue Mar 27 2007 Valery Inozemtsev 3:1.9.93-alt1 +- 2.0.RC3 +- update xinf + +* Wed Mar 14 2007 Valery Inozemtsev 3:1.9.92-alt1 +- 2.0RC2 + +* Thu Jan 11 2007 Valery Inozemtsev 3:1.7.4-alt1 +- 1.7.4: + + Fix bug #8536, i915 BIOS fails when restarting Xserver. + +* Wed Dec 13 2006 Valery Inozemtsev 3:1.7.3-alt3 +- removed modesetting driver + +* Sun Dec 10 2006 Valery Inozemtsev 3:1.7.3-alt2 +- added modesetting driver (intel_drv.so) for i9xx + +* Thu Dec 07 2006 Valery Inozemtsev 3:1.7.3-alt1 +- 1.7.3 + +* Thu Nov 30 2006 Valery Inozemtsev 3:1.7.2-alt4 +- added xf86-video-intel-1.7.2-git-DRM-memory-manager, + xf86-video-intel-1.7.2-git-Xv-hang-G965.patch, + xf86-video-i810-setcursorposition.diff, + xf86-video-i810-update-port-attributes.diff, + xf86-video-i810-video-debug.diff +- added RH patches: + xf86-video-intel-1.7.2-rh-i810-match-server-sync-ranges.patch + +* Thu Nov 16 2006 Valery Inozemtsev 3:1.7.2-alt3 +- rollback to 1.7.2 release +- added videoaliases file from RH + +* Thu Nov 09 2006 Valery Inozemtsev 3:1.7.2-alt2 +- GIT snapshot 2006-11-08 + +* Fri Oct 13 2006 Valery Inozemtsev 3:1.7.2-alt1 +- 1.7.2: + + suspend/resume regression from 1.5 driver + +* Mon Oct 02 2006 Valery Inozemtsev 3:1.7.0-alt1 +- 1.7.0 + +* Tue Aug 29 2006 Valery Inozemtsev 3:1.6.5-alt1.git20060829 +- GIT snapshot 2006-08-29 + +* Fri Aug 11 2006 Valery Inozemtsev 3:1.6.5-alt1 +- 1.6.5 + +* Tue Aug 08 2006 Valery Inozemtsev 3:1.6.3-alt1 +- 1.6.3 + +* Wed Jul 26 2006 Valery Inozemtsev 3:1.6.1-alt1 +- 1.6.1 + +* Sun Jun 04 2006 Valery Inozemtsev 3:1.6.0-alt3 +- fix VT switch DRI locking + +* Sat May 13 2006 Valery Inozemtsev 3:1.6.0-alt2 +- requires xorg-x11-server >= 1.0.99.901 + +* Thu Apr 20 2006 Valery Inozemtsev 3:1.6.0-alt1 +- 1.6.0 + +* Sun Mar 19 2006 Valery Inozemtsev 3:1.4.1.3-alt1 +- rollback 1.4.1.3 + +* Sun Mar 05 2006 Valery Inozemtsev 2:1.5.2.0-alt1 +- 1.5.2.0 (requires xorg-x11-server >= 1.0.1-alt14) + +* Fri Feb 03 2006 Valery Inozemtsev 2:1.4.1.3-alt1 +- rollback 1.4.1.3 (1.5.0.0 problematic) + +* Tue Jan 31 2006 Valery Inozemtsev 1:1.5.0.0-alt1 +- 1.5.0.0 + +* Mon Jan 23 2006 Valery Inozemtsev 1:1.4.1.3-alt2 +- removed files spectre (%%ghost %%_libdir/*.so) + +* Wed Dec 28 2005 Valery Inozemtsev 1:1.4.1.3-alt1 +- Xorg-7.0 + +* Sun Dec 04 2005 Valery Inozemtsev 1:1.4.1.1-alt1 +- Xorg-7.0RC3 + +* Sun Nov 27 2005 Valery Inozemtsev 1:1.4.1-alt0.1 +- initial release +