From 69db839f9db9b84bd30803387f784366f8a558e7 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 26 Sep 2013 07:42:51 +0200 Subject: [PATCH] remove package xf86-video-fglrx-legacy Signed-off-by: Stephan Raue --- .../x11/driver/xf86-video-fglrx-legacy/build | 127 --- .../xf86-video-fglrx-legacy/config/amdpcsdb | 23 - .../xf86-video-fglrx-legacy/config/control | Bin 60872 -> 0 bytes .../config/xorg-fglrx-legacy.conf | 27 - .../driver/xf86-video-fglrx-legacy/install | 38 - .../x11/driver/xf86-video-fglrx-legacy/meta | 36 - .../xf86-video-fglrx-legacy/need_unpack | 31 - .../patches.upstream/3.5-do_mmap.patch | 50 -- .../xf86-video-fglrx-12.10-kernel-3.7.patch | 132 --- .../xf86-video-fglrx-12.10-kernel-3.8.patch | 13 - ...gacy-12.6-remove-overlapping-pci-ids.patch | 433 --------- ...o-fglrx-legacy-12.6-rename_to_legacy.patch | 12 - ...glrx-legacy-replace_old_procfs_calls.patch | 294 ------- .../xf86-video-fglrx-legacy/source/amdxvba.h | 831 ------------------ .../x11/driver/xf86-video-fglrx-legacy/unpack | 40 - 15 files changed, 2087 deletions(-) delete mode 100755 packages/x11/driver/xf86-video-fglrx-legacy/build delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/config/amdpcsdb delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/config/control delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/config/xorg-fglrx-legacy.conf delete mode 100755 packages/x11/driver/xf86-video-fglrx-legacy/install delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/meta delete mode 100755 packages/x11/driver/xf86-video-fglrx-legacy/need_unpack delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/3.5-do_mmap.patch delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.7.patch delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.8.patch delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-remove-overlapping-pci-ids.patch delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-rename_to_legacy.patch delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-replace_old_procfs_calls.patch delete mode 100644 packages/x11/driver/xf86-video-fglrx-legacy/source/amdxvba.h delete mode 100755 packages/x11/driver/xf86-video-fglrx-legacy/unpack diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/build b/packages/x11/driver/xf86-video-fglrx-legacy/build deleted file mode 100755 index c11e4ae8e5..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/build +++ /dev/null @@ -1,127 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This Program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with OpenELEC.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -if [ "$TARGET_ARCH" = i386 ]; then - FGLRX_ARCH=x86 - LIBDIR=lib - BASEDIR=xpic -elif [ "$TARGET_ARCH" = x86_64 ]; then - FGLRX_ARCH=x86_64 - LIBDIR=lib64 - BASEDIR=xpic_64a -fi - -INSTALL_DIR=".install/usr/lib/fglrx-legacy/" - -cd $PKG_BUILD/common/lib/modules/fglrx/build_mod - ln -sf $ROOT/$PKG_BUILD/arch/$FGLRX_ARCH/lib/modules/fglrx/build_mod/libfglrx_ip.a . - - cd 2.6.x - sed -i -e 's/ -DPAGE_ATTR_FIX=/-DCOMPAT_ALLOC_USER_SPACE=arch_compat_alloc_user_space -DPAGE_ATTR_FIX=/' Makefile - LDFLAGS="" make CC=${CC} KDIR=$(kernel_path) - -cd $ROOT/$PKG_BUILD - -# config files - mkdir -p $INSTALL_DIR/etc/ati - cp common/etc/ati/amdpcsdb.default $INSTALL_DIR/etc/ati - cp common/etc/ati/control $INSTALL_DIR/etc/ati - cp common/etc/ati/signature $INSTALL_DIR/etc/ati - ln -sf /storage/.config/fglrx-legacy.conf $INSTALL_DIR/etc/ati/amdpcsdb - - # hack around a broken driver - cp $PKG_DIR/config/control $INSTALL_DIR/etc/ati - -( - cd $INSTALL_DIR/ - for etc in `find etc -type f`; do - mkdir -p $ROOT/$PKG_BUILD/.install/`dirname $etc` - ln -sf /var/run/fglrx/$etc $ROOT/$PKG_BUILD/.install/$etc - done - ln -sf /var/run/fglrx/etc/ati/amdpcsdb $ROOT/$PKG_BUILD/.install/etc/ati/amdpcsdb -) - -# ATI config - mkdir -p $INSTALL_DIR/bin - cp -P arch/$FGLRX_ARCH/usr/X11R6/bin/aticonfig $INSTALL_DIR/bin - -( - cd $INSTALL_DIR/ - for bin in `find bin -type f`; do - mkdir -p $ROOT/$PKG_BUILD/.install/usr/`dirname $bin` - ln -sf /var/run/fglrx/$bin $ROOT/$PKG_BUILD/.install/usr/$bin - done -) - -# OpenGL libs - mkdir -p $INSTALL_DIR/lib - # rename to not conflicting with Mesa libGL.so - cp -P arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/fglrx/fglrx-libGL.so* $INSTALL_DIR/lib/libGL_fglrx.so.1 - -# System Libs - mkdir -p $INSTALL_DIR/lib - cp arch/$FGLRX_ARCH/usr/$LIBDIR/libati*.so $INSTALL_DIR/lib - cp arch/$FGLRX_ARCH/usr/$LIBDIR/libatiuki.so* $INSTALL_DIR/lib/libatiuki.so.1 - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libati*.so* $INSTALL_DIR/lib - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libfglrx*.so* $INSTALL_DIR/lib - -# DRI driver - mkdir -p $INSTALL_DIR/lib/dri - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/modules/dri/fglrx_dri.so* $INSTALL_DIR/lib/dri - -# X.Org modules - mkdir -p $INSTALL_DIR/lib/xorg/modules - cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/*.so $INSTALL_DIR/lib/xorg/modules - - mkdir -p $INSTALL_DIR/lib/xorg/modules/drivers - cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/drivers/*_drv.so $INSTALL_DIR/lib/xorg/modules/drivers - - mkdir -p $INSTALL_DIR/lib/xorg/modules/extensions - cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/extensions/fglrx/fglrx-libglx.so $INSTALL_DIR/lib/xorg/modules/extensions/libglx_fglrx.so - - mkdir -p $INSTALL_DIR/lib/xorg/modules/linux - cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/linux/*.so $INSTALL_DIR/lib/xorg/modules/linux - -if [ "$XVBA" = yes ]; then - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.cap $INSTALL_DIR/lib - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.so* $INSTALL_DIR/lib/libAMDXvBA.so.1 - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libXvBAW.so* $INSTALL_DIR/lib/libXvBAW.so.1 - -# install needed files for toolchain - mkdir -p $SYSROOT_PREFIX/usr/include/amd - cp $PKG_DIR/source/amdxvba.h $SYSROOT_PREFIX/usr/include/amd - - mkdir -p $SYSROOT_PREFIX/usr/lib - cp arch/$FGLRX_ARCH/usr/X11R6/*/libXvBAW.so* $SYSROOT_PREFIX/usr/lib - ln -sf libXvBAW.so.1.0 $SYSROOT_PREFIX/usr/lib/libXvBAW.so.1 - ln -sf libXvBAW.so.1 $SYSROOT_PREFIX/usr/lib/libXvBAW.so -fi - -( - cd $INSTALL_DIR/ - for lib in `find lib -type f`; do - mkdir -p $ROOT/$PKG_BUILD/.install/usr/`dirname $lib` - ln -sf /var/run/fglrx/$lib $ROOT/$PKG_BUILD/.install/usr/$lib - done -) diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/config/amdpcsdb b/packages/x11/driver/xf86-video-fglrx-legacy/config/amdpcsdb deleted file mode 100644 index 78f3aa06da..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/config/amdpcsdb +++ /dev/null @@ -1,23 +0,0 @@ -AMDPCSDBV1 -[AMDPCSROOT/SYSTEM/MCIL] -DigitalHDTVDefaultUnderscan=V0 -UvdEnabled=V1 -HWUVD_H264Level51Support=V1 - -[AMDPCSROOT/SYSTEM/DDX] - -DAL2_DATA__2_0\DisplayPath_1\default=R64 -DAL2_DATA__2_0\DisplayPath_1\Adjustment\default=R64 -DAL2_DATA__2_0\DisplayPath_1\Adjustment\All_nodes=R00 -DAL2_DATA__2_0\DisplayPath_1\Adjustment\RangeRgbLimited=R0100000000000000 -DAL2_DATA__2_0\DisplayPath_1\Option\default=R64 -DAL2_DATA__2_0\DisplayPath_1\Option\All_nodes=R42657374566965774F7074696F6E5F48646D6900 -DAL2_DATA__2_0\DisplayPath_1\Option\BestViewOption_Hdmi=R0000000000000000030000000100000008000000 - -DAL2_DATA__2_0\DisplayPath_2\default=R64 -DAL2_DATA__2_0\DisplayPath_2\Adjustment\default=R64 -DAL2_DATA__2_0\DisplayPath_2\Adjustment\All_nodes=R00 -DAL2_DATA__2_0\DisplayPath_2\Adjustment\RangeRgbLimited=R0100000000000000 -DAL2_DATA__2_0\DisplayPath_2\Option\default=R64 -DAL2_DATA__2_0\DisplayPath_2\Option\All_nodes=R42657374566965774F7074696F6E5F48646D6900 -DAL2_DATA__2_0\DisplayPath_2\Option\BestViewOption_Hdmi=R0000000000000000030000000100000008000000 diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/config/control b/packages/x11/driver/xf86-video-fglrx-legacy/config/control deleted file mode 100644 index dfb8025a7357c1436719a253fbb31ce101c15147..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60872 zcmdU&TdZEkRmXSi^oqoBE-p0{!lk7V59o7C75n(o*vEF`IKh}St(zuMoJ$+jP|JX* zKyF0RN+d<8+ywWsU8`5RqFpSuHHckWjsTDQ~P-L1NZx=Y=Y z-6y+?-6QU+J6YTA4t009k5%`e`_5C{C*1#^>9&e~oa#BB`LgGv&)`&A_dxf-5zeFC zb~Db`oS*xgpZlDp;8dFF=h5!4BQ5KoemD5}de8Yz!KpNZ^HA5G^A{qVtYvVnDmoha zDf13LSPx$irHsPnzOwJ?C$|sn9Cc?>D24_7tw>tRwd%d6U7Mw~;a8e7Z zYiQZ8z=<~K2EnN`qy0SGwaYs(9d+&JdtAdL+t0OT__^J;OD*#LqT@X2IPcv(a4OC9 zi63+SR^2(*cb;`o*}SIS4S9dH=al`s($<`39qFB}e*0Y4?9(MXIN{w(5kFbm;5^8q zkJg-LzvS~S{ZyJ!kB)Q)n~g&#$1k|@=>}};dZaXilgdD=aUC&z^wzFB`-_@$t@WHc z?hpBt8(}`?{$1%lJu=dx(NkG+l+SzJxRaRvO0-K#GyFW_+9jge-`A}gBj%9ve54EY(>qqSyo#_CZCx}jwPC(7qfgr7EW{bX%6XBkp(UhC`o4}_me8|6IX+WI4I248oi z3{Gm79*wk1Yi*R1DC6x?87H@R1PM;6+r+f;OnVg53&EN0u{k;6U zgP%$>IEj*Kdka4wcH_FxPo?$c^KM?-eB6yaFLr<6$YSfEe&*!Id49yV{4YS>zu0r` z7WGJJMm>tJe=e^(vV8z2t;vRdDs2X5Nm6irF2bp_S)Aoa!TGP?eD6??lxA>Z-m$zC z%1rARoHQ2-^RBcE&awFs^-21-PX7v=)Nh8IN;5dq{pNB~aMC&$aqd1a$}o2I9ufXKO^m@(h{7l@(w0h-<4)^9_dx zG?UZMJC@g$@pnKy0+aMpX(s13&yU7`%kuAl^B*IAD$V3^8WOfHpg{J8|9?6rP{swuwSgk#Qk|2son4PH$LP3(K(w3+?@0A zjkzX`>g(~sPc;YbIi;4*SttA8r1iSfd-ZyV(nj-ct=E-f1}Ej1IDh-pP~W9C#m{nd zTkDz$PRen}DYa>w={ek<`+h{tVl(_1Un8-3hjfYd;2O=0zc=T(1KsY126` zxDq{&DfUy~q&A)Me*V6pd`c~sljg`ZS|@N)zq#WMFTMB3z^OE2T@mL)&bc=AjLY^V zx03gSYiobA;HgD$(po2RK5=;9RGP_&_0L+ALw`hLBjWt*_Q0t$lhcov>bW^^BFE1P zPNf;`Jo4Ux^VeLv^jYWU{$CpWRGPs_HK#`1k@X(s6HM=naI%)cxhmKWNk)pn`QhHr zcMDFXWpUOc1t;xgQr>^v9R$SwyV6X~`XkVg^WF$2YZ;vN+#K=_@9v9mvX;eJk2Li2 zS48;)J8KEfy1Uw&e!f4#$yx?yJvRr=Z}j!36P!vjIS*AnB`|Q(9E0k+9M>t$$3^*6+9)SZ zUF_$pBylEa<<=NVULy%k%;T<#{Y|M|=R7r!mi%(UrGTdo%tiq^UhbyHP)KSLmYD67U5(qo3oCmA?MQ(PSz%H)*uBZUB5}?Q*tWJI?QQmhER9QgG5Wx>P<-i+ZHA z1gAfrJd~%>5jbhjfH=c*)N9S;Y}da()N?)~{8U;7XRSIU>k*iCBAl#can>V6-XDng zsWg+b_SG^&yYw=~OXr9BuC#uf96vEnt085t*9_|+{QObRd825Tl$PMEeMKxdX)Z){ z`}|{rpGq@1vC|d0Q0{ARe%|fN5a)@X9ypaYIzL*u^DD9YvG`G5shR~&IxEk9?hKqt zGdPd9S$nJXIywtNoO0fwG?UZ5zSujvtPH@<5A~cci20_{7IQ8u0pO%LFz5Z$kawk- zoPNBt%rX0?Lr$4@aI$7{9(EyBT`jXNN&fN9nB{Mwaea$5LBc&DMoa-_;>8ujfBRPLpT7r|t zA#)j!TkCVkDc3{5>DNQX@3V)qe@pUeG1B)!PC0)ECu>=L)*}r$FW)!RBXF{o;B2)% zk2)hcm6pM|s!9nk@&o6(z6(yJWpdVPL&Nq{t}lU;HIvg{dDPO+rJVm?{H*0^nD_Af zJhlC-W#v7*9-*AO;6&de*F%(+;G}lG9M#swh$iH``uNZ;fs-|p(_dfQg7bRc&PzX) zW^&@(#ikFX6!-}yc|JsGS)BD8-QfJhkoPqwX(p#%U#dqr^hfH9xgEXFUYNOMUxRZy!l|?br(d_JH&O;C?Y)J5 zDs8lUruO5Omrcq9IBD;VIM0jqI;9z$*pDki6fYkkXBXUei#;aIKQ)(tBtIqiMe)y6D0Mq+E=gm-&H|E{zI z=jJ}_vi>Ke4moA{1ZTRPKiKTt1+8_4c~_d@=ahZexh}&`#njI?l~#~*PI(0<%`HPe zm6qW2=YHo9ge5Wlb;udsUy;~T_gAF6x9Z>FoxBf^(o8@7K36?Ahj|CB&4qban#t++ zxms}2UQx)YG?UZsAGP2_j%B~8G=meTRQ=pyZp#y|KTuJRu1EY-n#qav&pM363QlS( z|Jv1US&x)vt~0c|-!HAv5a-YCAJ)N?W^&@0P4(A9!1Rs?Cu`Z9b!rpx{(7JHy<)ti zG=o#Ff1)m-{FnL+PLxH-skDilrCkLlUEe|FQ?^S=GdXeJt@`zy)@VXbr5Wwgu%hhO zMZy^f%EFSr0)Eok2XV^rywXfgtlN~%_E5UPNps-PPog`7$= zIaBkvC`9C&u&3owM@}rkf(1tYvf7Ar1Y! zIl{?Wg454C>M)YS;H0s8*e)r}{Zf#E6NcAN3fxLrBw)09$aQgktc7BHIAyj5l>mlT4 ztMUo&ZjH2`teJie=j$l%HFA%W{AX?Wg2an#n2G z8A?0pTLSn=XMm{ANKU1hoH!R$hmlCZN%xF+>pQycZ>|pO3`#TSal^c$c0Ho{PF~X4 zAl!#XX{Mik-3E*`T!o+Xthg84y_4x4-{6#5?)|-Szx4ehS8@B&HvNBal6U9b8S2o_ zwU+P`{ZS1s>93NUS0kKjEy3BKU3%ZHJze*|&QF)`A@1wVUGBc;bpFfV^?v1g$YcF8 z7jIjiZNY2KbSJy_Bu5l^Id}ds%RW~g!NqaF^`LvwBJo}79(DcT?e2Qlx>rJh>s~iM z2N%Z)uG)790M~iJ#c`6WjbC37<%{D4SIuXa^!1a=*Ykpl<0MxbzfQP*4dsjDo=ZPZ zbi2Pp#*Qodm)w(Jo^+r6Jzef_uP=Gt0Ojj3!NqZu>#U=o=jGHr>mu`bQgCrR%5|tI z7v0YgdE_|CqKUImeL4HwrF}6I^s2uk!O#xIXTDWoW-RPH<7LeRr`|L6>>@3Vxjw zTpTC3Xs6~(1Fp-WAL7{Ls(lx;!LN&gi{lKg7VXz5kw=abT+~jqC|{=q7spv#<=Ta? z!PmqowLvB^blQ6BfZ z@u9z0A4SyGmKw#vuRDcb94EM_A8OIAo)ugiC%CBGw`eDh3oecmT$ITcT=$Fm$Z>+J z?reMLhrT7sJ;xbbzTB5A?L$k0a^K&#oyR;Jn_RvQ(sK(REcz6IO|BE7d~uxMYE>UU zD#{nf39eS<>mNk<;@IShm8n(HehKA^o&|vQ365uQl_Ue#2Sgq@p2by;3|z+r7snY~ zEyk;Kjum<2*yM_z4;yOv@(6xy3oedlaFxsA(BA)8# zi*o-KvHr!e!9}OWTCEqpS#WWj;Gz|sChKw{k2@5bTz>wz-_00fcY3G#wDbez>zHU) zIX1ast~n_RK+gnZZKF}U^#E{-R2)$!|3MY-qL z@0Hg`5=$DJryb$)-8_LOU_gQ0wVL7X??xIdpG&$z6* z``4$MmX~b%9l-Ux;Np0M3+r(9yDtAOxVFT36OKo?(84eO&GtKh>n7nB$D>@nt+(HG z`FFwfQ^GHfN4O65J>v4;Y`+7z-YU2_Hn?i9krOevejxJ5alj?drL{b7@*jeW;{?~L zXfM5)Q~34of{Wu(E`RoQ^PS2n;QEQ^w>dVrD37b|HupqQfA(<4wYR0t72>Z0*DHdH z;}Nc->wC!!T>iY{=BRq*M!iq+{qwHyDlC3y&S!A_g{Y4lk8tg{vGXCdC?NJyE_m9_8|5n;2Kg5(ci9 zgkKzwat-@=E%NxH;Np0ci^_ewJbqr}kz<1kv!T$h8hQMP@QdS7E`LvjSozAWYdNn& z`8p-II5xT3?eqj(gzGr(FO1 znEQ97`?PCK^~vNTyb@NvR|3~7qI_|j$>nE~$GFEVNe8a)2`-Ljajo35*dHh|Vg%PS zqTl9tB9~vE%Pl?W*MaMEf{Wu>T;=`xw&3D;64%kbe3jdWhhP6JxHz87MJG_w`N@3+ zxab-&>_2imk!zd#^4#B=ejT{}Sa5MXnTtlT>ED<83UJ*hxHz83<)5sQ`&-km1J@e` z7ss=>s6HMm;u^T#EVwwH%vC3kZxLJ^&*CcY*Uh5e=6Dhp-9fwT4leRY_bx&^!SO^c ze+5JNc9rhY4=#>pagE&}J6-?6SHLfNW-homp2$TbYZ~*HIu8b}rGCY@Rts7Ta6K)? zUmQ>Lt5!c$hHHsKx`e^6=Y(GzPxh-$yZSZ3#qmV0gKqt)M!!w>;6i=mcrq82e4UFW zUm=fQ7hD`q<|?~-4z7<0E{-R2)hS;;67y}2Cvo}KD{NPn)K2*Is^H>yB3J1vcfhsO zuNYSezrHK{;&`H8esyz64b(pizrHTGIG)IbwWrek_SXa##|5}bTDiN|JmgAVEDuXHaD7{FaXf*G_KVLr#-%Ls=fTCf z>+kE6o5ymqMM>miaJ?-2;yBB%Qmf+QT=Xn7jPE%%x%{d)m9M8rPf_lR*0#|GEY z^{QpP(IM*N&4P>LSzN1PZ3ejZ3NDUka+M+j*R6t!W0MQ3y!G=)&y+-a&#}o>|I8fx z`i|h@ID@NH&SJe5xLy%l9A|OWBLmmB1Q*8%uCl92n~s5to?(dc#j(kS@r0c94|n}6 z;Uc)cBDgqCaM6laou1Kq2d*~>E{;vE(yP4Vd3=N5;yA%oc9nOWYp>wqID@N29&Zp_ z94EM1)yF+zUzB5m3%j73?w3E z%CX7i#}i|_v$BPq>nOPB*}CB3*yQqeeDuFR%s`p1!9~xw0T;(6SF9f@!-IDL7d`70 zTpUm4S{1DW;QF%Q;&=vENiuNJvq#|<$0irGs^KmbGEnAoIj)j!4fE~46@GC%*)OV{ zWxS$yfnVPcTpTC3D3c{Q!oLVyeMejo!EJ&Oih9GhH3)u!LRF1R>OaJ8DJ z{k`Dg*yQr#)#2Wgga4%>+ z$m2D^#j(j18&52u*!)>=eN}LAJejMGUoQzRj%RR{B!gcs3NDUKF6^ht_0`Q>EK$Jq e9nn8h{E)kbeY?Lq)a|a{xyOCA= KERNEL_VERSION(3, 5, 0) -+# define NO_DO_MMAP -+# define do_mmap(a,b,c,d,e,f) vm_mmap(a, b, c, d, e, f) -+# define do_munmap(a,b,c) vm_munmap(b, c) -+#endif -+ - unsigned long ATI_API_CALL KCL_MEM_AllocLinearAddrInterval( - KCL_IO_FILE_Handle file, - unsigned long addr, -@@ -2117,10 +2123,13 @@ - - flags = MAP_SHARED; - prot = PROT_READ|PROT_WRITE; -- -+#ifdef NO_DO_MMAP -+ vaddr = (void *) vm_mmap(file, 0, len, prot, flags, pgoff); -+#else - down_write(¤t->mm->mmap_sem); - vaddr = (void *) do_mmap(file, 0, len, prot, flags, pgoff); - up_write(¤t->mm->mmap_sem); -+#endif - if (IS_ERR(vaddr)) - return 0; - else -@@ -2131,7 +2140,9 @@ - { - int retcode = 0; - -+#ifndef NO_DO_MMAP - down_write(¤t->mm->mmap_sem); -+#endif - #ifdef FGL_LINUX_RHEL_MUNMAP_API - retcode = do_munmap(current->mm, - addr, -@@ -2142,7 +2153,9 @@ - addr, - len); - #endif -+#ifndef NO_DO_MMAP - up_write(¤t->mm->mmap_sem); -+#endif - return retcode; - } - diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.7.patch b/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.7.patch deleted file mode 100644 index 47cd425aa5..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.7.patch +++ /dev/null @@ -1,132 +0,0 @@ ---- 12.9/common/lib/modules/fglrx/build_mod/firegl_public.c 2012-09-26 15:04:28.000000000 +0200 -+++ 12.9/common/lib/modules/fglrx/build_mod/firegl_public.c 2012-10-16 20:30:42.146523753 +0200 -@@ -3892,7 +3892,11 @@ - KCL_DEBUG_ERROR(REMAP_PAGE_RANGE_STR " failed\n"); - return -EAGAIN; - } -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ -+#else -+ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - vma->vm_ops = &vm_ops; - break; - -@@ -3922,14 +3926,22 @@ - KCL_DEBUG_ERROR(REMAP_PAGE_RANGE_STR " failed\n"); - return -EAGAIN; - } -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ -+#else -+ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - vma->vm_ops = &vm_ops; - } - break; - #endif - - case __KE_SHM: -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ -+#else -+ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - vma->vm_ops = &vm_shm_ops; - break; - -@@ -3937,7 +3949,11 @@ - - pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_RESERVED; -+#else -+ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - - //vma->vm_flags |= VM_SHM | VM_LOCKED; /* DDDDDDDDDDon't swap */ - //vma->vm_mm->locked_vm += pages; /* Kernel tracks aqmount of locked pages */ -@@ -3946,14 +3962,22 @@ - - case __KE_CTX: - pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_LOCKED | VM_SHM | VM_RESERVED; /* Don't swap */ -+#else -+ vma->vm_flags |= VM_LOCKED | VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - vma->vm_mm->locked_vm += pages; /* Kernel tracks aqmount of locked pages */ - vma->vm_ops = &vm_ctx_ops; - break; - - case __KE_PCI_BQS: - pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_LOCKED | VM_SHM | VM_RESERVED; /* Don't swap */ -+#else -+ vma->vm_flags |= VM_LOCKED | VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - vma->vm_mm->locked_vm += pages; /* Kernel tracks aqmount of locked pages */ - vma->vm_ops = &vm_pci_bq_ops; - break; -@@ -3984,9 +4008,17 @@ - return -EAGAIN; - } - #ifdef __x86_64__ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_RESERVED; - #else -+ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ -+#else -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ -+#else -+ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - #endif - vma->vm_ops = &vm_ops; - } -@@ -4015,9 +4047,17 @@ - return -EAGAIN; - } - #ifdef __x86_64__ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_RESERVED; - #else -+ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ -+#else -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ -+#else -+ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - #endif - vma->vm_ops = &vm_agp_bq_ops; - } -@@ -4025,7 +4065,11 @@ - #endif /* __AGP__BUILTIN__ */ - - case __KE_KMAP: -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_SHM | VM_RESERVED; -+#else -+ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - vma->vm_ops = &vm_kmap_ops; - if (readonly && (vma->vm_flags & VM_WRITE)) - { -@@ -4046,7 +4090,11 @@ - #endif - // fall through - case __KE_GART_CACHEABLE: -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) - vma->vm_flags |= VM_RESERVED; -+#else -+ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; -+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ - vma->vm_ops = &vm_gart_ops; - break; - default: diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.8.patch b/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.8.patch deleted file mode 100644 index ad2f3f18cf..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-12.10-kernel-3.8.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- 12.11/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2012-10-23 22:44:52.000000000 +0200 -+++ 12.11/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2012-12-22 22:11:30.289750331 +0100 -@@ -775,7 +775,9 @@ - unsigned int ATI_API_CALL KCL_ACPI_GetHandles(kcl_match_info_t *pInfo) - { - #if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,12) -- #if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,19) -+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0) -+ pInfo->video_handle = pInfo->pcidev->dev.acpi_node.handle; -+ #elif LINUX_VERSION_CODE > KERNEL_VERSION(2,6,19) - pInfo->video_handle = pInfo->pcidev->dev.archdata.acpi_handle; - #else - pInfo->video_handle = pInfo->pcidev->dev.firmware_data; diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-remove-overlapping-pci-ids.patch b/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-remove-overlapping-pci-ids.patch deleted file mode 100644 index e805e46f07..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-remove-overlapping-pci-ids.patch +++ /dev/null @@ -1,433 +0,0 @@ -diff -Naur xf86-video-fglrx-legacy-12.6/common/lib/modules/fglrx/build_mod/fglrxko_pci_ids.h xf86-video-fglrx-legacy-12.6.patch/common/lib/modules/fglrx/build_mod/fglrxko_pci_ids.h ---- xf86-video-fglrx-legacy-12.6/common/lib/modules/fglrx/build_mod/fglrxko_pci_ids.h 2012-07-18 17:58:01.000000000 +0200 -+++ xf86-video-fglrx-legacy-12.6.patch/common/lib/modules/fglrx/build_mod/fglrxko_pci_ids.h 2013-06-06 23:56:41.440839811 +0200 -@@ -12,325 +12,138 @@ - * year of creation of the work. - */ - -- FGL_ASIC_ID(0x9640), -- FGL_ASIC_ID(0x9641), -- FGL_ASIC_ID(0x9642), -- FGL_ASIC_ID(0x9643), -- FGL_ASIC_ID(0x9644), -- FGL_ASIC_ID(0x9645), -- FGL_ASIC_ID(0x9647), -- FGL_ASIC_ID(0x9648), -- FGL_ASIC_ID(0x9649), -- FGL_ASIC_ID(0x964A), -- FGL_ASIC_ID(0x964B), -- FGL_ASIC_ID(0x964C), -- FGL_ASIC_ID(0x964E), -- FGL_ASIC_ID(0x964F), -- FGL_ASIC_ID(0x9903), -- FGL_ASIC_ID(0x9904), -- FGL_ASIC_ID(0x990F), -- FGL_ASIC_ID(0x9905), -- FGL_ASIC_ID(0x9906), -- FGL_ASIC_ID(0x9907), -- FGL_ASIC_ID(0x9908), -- FGL_ASIC_ID(0x9909), -- FGL_ASIC_ID(0x9992), -- FGL_ASIC_ID(0x9993), -- FGL_ASIC_ID(0x9994), -- FGL_ASIC_ID(0x990A), -- FGL_ASIC_ID(0x9900), -- FGL_ASIC_ID(0x9901), -- FGL_ASIC_ID(0x9990), -- FGL_ASIC_ID(0x9991), -- FGL_ASIC_ID(0x9803), -- FGL_ASIC_ID(0x9804), -- FGL_ASIC_ID(0x9805), -- FGL_ASIC_ID(0x9802), -- FGL_ASIC_ID(0x9808), -- FGL_ASIC_ID(0x9809), -- FGL_ASIC_ID(0x9806), -- FGL_ASIC_ID(0x9807), -- FGL_ASIC_ID(0x9610), -- FGL_ASIC_ID(0x9611), -- FGL_ASIC_ID(0x9612), -- FGL_ASIC_ID(0x9613), -- FGL_ASIC_ID(0x9614), -- FGL_ASIC_ID(0x9615), -- FGL_ASIC_ID(0x9616), -- FGL_ASIC_ID(0x9710), -- FGL_ASIC_ID(0x9711), -- FGL_ASIC_ID(0x9712), -- FGL_ASIC_ID(0x9713), -- FGL_ASIC_ID(0x9714), -- FGL_ASIC_ID(0x9715), -- FGL_ASIC_ID(0x68F8), -- FGL_ASIC_ID(0x68F9), -- FGL_ASIC_ID(0x68FE), -- FGL_ASIC_ID(0x68FA), -- FGL_ASIC_ID(0x689B), -- FGL_ASIC_ID(0x689E), -- FGL_ASIC_ID(0x6898), -- FGL_ASIC_ID(0x6899), -- FGL_ASIC_ID(0x689C), -- FGL_ASIC_ID(0x689D), -- FGL_ASIC_ID(0x68B8), -- FGL_ASIC_ID(0x68B9), -- FGL_ASIC_ID(0x68BE), -- FGL_ASIC_ID(0x68BA), -- FGL_ASIC_ID(0x68BF), -- FGL_ASIC_ID(0x68DA), -- FGL_ASIC_ID(0x68D8), -- FGL_ASIC_ID(0x68D9), -- FGL_ASIC_ID(0x68DE), -- FGL_ASIC_ID(0x6738), -- FGL_ASIC_ID(0x6739), -- FGL_ASIC_ID(0x673E), -- FGL_ASIC_ID(0x6778), -- FGL_ASIC_ID(0x677B), -- FGL_ASIC_ID(0x6772), -- FGL_ASIC_ID(0x6779), -- FGL_ASIC_ID(0x6770), -- FGL_ASIC_ID(0x671F), -- FGL_ASIC_ID(0x6718), -- FGL_ASIC_ID(0x6719), -- FGL_ASIC_ID(0x671C), -- FGL_ASIC_ID(0x671D), -- FGL_ASIC_ID(0x675F), -- FGL_ASIC_ID(0x6751), -- FGL_ASIC_ID(0x675B), -- FGL_ASIC_ID(0x675D), -- FGL_ASIC_ID(0x6758), -- FGL_ASIC_ID(0x6759), -- FGL_ASIC_ID(0x6750), -+ /* Those are all PC IDs that are not existing in the non legacy fglrx */ - FGL_ASIC_ID(0x9400), - FGL_ASIC_ID(0x9401), - FGL_ASIC_ID(0x9402), - FGL_ASIC_ID(0x9403), - FGL_ASIC_ID(0x9405), -- FGL_ASIC_ID(0x950F), -- FGL_ASIC_ID(0x9513), -- FGL_ASIC_ID(0x9451), -+ FGL_ASIC_ID(0x940A), -+ FGL_ASIC_ID(0x940B), -+ FGL_ASIC_ID(0x940F), -+ FGL_ASIC_ID(0x9440), - FGL_ASIC_ID(0x9441), -+ FGL_ASIC_ID(0x9442), - FGL_ASIC_ID(0x9443), -+ FGL_ASIC_ID(0x9444), -+ FGL_ASIC_ID(0x9446), -+ FGL_ASIC_ID(0x9447), -+ FGL_ASIC_ID(0x944A), -+ FGL_ASIC_ID(0x944B), -+ FGL_ASIC_ID(0x944C), -+ FGL_ASIC_ID(0x944E), -+ FGL_ASIC_ID(0x944F), -+ FGL_ASIC_ID(0x9450), -+ FGL_ASIC_ID(0x9451), -+ FGL_ASIC_ID(0x9452), -+ FGL_ASIC_ID(0x9456), -+ FGL_ASIC_ID(0x945A), -+ FGL_ASIC_ID(0x945B), -+ FGL_ASIC_ID(0x945E), -+ FGL_ASIC_ID(0x9460), -+ FGL_ASIC_ID(0x9462), -+ FGL_ASIC_ID(0x946A), -+ FGL_ASIC_ID(0x946B), -+ FGL_ASIC_ID(0x947A), -+ FGL_ASIC_ID(0x947B), -+ FGL_ASIC_ID(0x9480), -+ FGL_ASIC_ID(0x9487), -+ FGL_ASIC_ID(0x9488), -+ FGL_ASIC_ID(0x9489), -+ FGL_ASIC_ID(0x948A), -+ FGL_ASIC_ID(0x948F), -+ FGL_ASIC_ID(0x9490), -+ FGL_ASIC_ID(0x9491), -+ FGL_ASIC_ID(0x9495), -+ FGL_ASIC_ID(0x9498), -+ FGL_ASIC_ID(0x949C), -+ FGL_ASIC_ID(0x949E), -+ FGL_ASIC_ID(0x949F), -+ FGL_ASIC_ID(0x94A0), -+ FGL_ASIC_ID(0x94A1), -+ FGL_ASIC_ID(0x94A3), -+ FGL_ASIC_ID(0x94B1), -+ FGL_ASIC_ID(0x94B3), -+ FGL_ASIC_ID(0x94B4), -+ FGL_ASIC_ID(0x94B5), - FGL_ASIC_ID(0x94C0), -- FGL_ASIC_ID(0x94C7), -- FGL_ASIC_ID(0x94C4), -- FGL_ASIC_ID(0x94C5), - FGL_ASIC_ID(0x94C1), - FGL_ASIC_ID(0x94C3), -- FGL_ASIC_ID(0x94CC), -+ FGL_ASIC_ID(0x94C4), -+ FGL_ASIC_ID(0x94C5), - FGL_ASIC_ID(0x94C6), -- FGL_ASIC_ID(0x95C0), -- FGL_ASIC_ID(0x95C5), -- FGL_ASIC_ID(0x95C7), -- FGL_ASIC_ID(0x95C9), -- FGL_ASIC_ID(0x95C6), -- FGL_ASIC_ID(0x958E), -- FGL_ASIC_ID(0x958A), -- FGL_ASIC_ID(0x9586), -- FGL_ASIC_ID(0x9587), -- FGL_ASIC_ID(0x9580), -- FGL_ASIC_ID(0x9588), -- FGL_ASIC_ID(0x9589), -- FGL_ASIC_ID(0x9590), -- FGL_ASIC_ID(0x9598), -- FGL_ASIC_ID(0x9599), -- FGL_ASIC_ID(0x9596), -- FGL_ASIC_ID(0x9597), -+ FGL_ASIC_ID(0x94C7), -+ FGL_ASIC_ID(0x94C8), -+ FGL_ASIC_ID(0x94C9), -+ FGL_ASIC_ID(0x94CB), -+ FGL_ASIC_ID(0x94CC), - FGL_ASIC_ID(0x9500), -- FGL_ASIC_ID(0x9515), -- FGL_ASIC_ID(0x9505), - FGL_ASIC_ID(0x9501), -+ FGL_ASIC_ID(0x9504), -+ FGL_ASIC_ID(0x9505), -+ FGL_ASIC_ID(0x9506), - FGL_ASIC_ID(0x9507), -- FGL_ASIC_ID(0x9519), -+ FGL_ASIC_ID(0x9508), -+ FGL_ASIC_ID(0x9509), -+ FGL_ASIC_ID(0x950F), -+ FGL_ASIC_ID(0x9511), -+ FGL_ASIC_ID(0x9513), -+ FGL_ASIC_ID(0x9515), - FGL_ASIC_ID(0x9517), -+ FGL_ASIC_ID(0x9519), - FGL_ASIC_ID(0x9540), - FGL_ASIC_ID(0x9541), - FGL_ASIC_ID(0x9542), - FGL_ASIC_ID(0x954E), - FGL_ASIC_ID(0x954F), -- FGL_ASIC_ID(0x9487), -- FGL_ASIC_ID(0x948F), -- FGL_ASIC_ID(0x9498), -- FGL_ASIC_ID(0x9490), -- FGL_ASIC_ID(0x9495), -- FGL_ASIC_ID(0x94B5), -- FGL_ASIC_ID(0x94B3), -- FGL_ASIC_ID(0x94B1), -- FGL_ASIC_ID(0x94B4), -- FGL_ASIC_ID(0x944C), -- FGL_ASIC_ID(0x9450), -- FGL_ASIC_ID(0x9452), -- FGL_ASIC_ID(0x9442), -- FGL_ASIC_ID(0x9440), -- FGL_ASIC_ID(0x944E), -- FGL_ASIC_ID(0x9460), -- FGL_ASIC_ID(0x9462), -- FGL_ASIC_ID(0x6838), -- FGL_ASIC_ID(0x6839), -- FGL_ASIC_ID(0x683B), -- FGL_ASIC_ID(0x683D), -- FGL_ASIC_ID(0x683F), -- FGL_ASIC_ID(0x6858), -- FGL_ASIC_ID(0x6859), -- FGL_ASIC_ID(0x6849), -- FGL_ASIC_ID(0x6850), -- FGL_ASIC_ID(0x6818), -- FGL_ASIC_ID(0x6819), -- FGL_ASIC_ID(0x6798), -- FGL_ASIC_ID(0x679A), -- FGL_ASIC_ID(0x6799), -- FGL_ASIC_ID(0x679E), -- FGL_ASIC_ID(0x68A0), -- FGL_ASIC_ID(0x68B0), -- FGL_ASIC_ID(0x68B1), -- FGL_ASIC_ID(0x68A1), -- FGL_ASIC_ID(0x68A8), -- FGL_ASIC_ID(0x6890), -- FGL_ASIC_ID(0x68C0), -- FGL_ASIC_ID(0x68C1), -- FGL_ASIC_ID(0x68D0), -- FGL_ASIC_ID(0x68D1), -- FGL_ASIC_ID(0x68C7), -- FGL_ASIC_ID(0x68E0), -- FGL_ASIC_ID(0x68E1), -- FGL_ASIC_ID(0x68F0), -- FGL_ASIC_ID(0x68F1), -- FGL_ASIC_ID(0x68E4), -- FGL_ASIC_ID(0x68E5), -- FGL_ASIC_ID(0x94CB), -- FGL_ASIC_ID(0x94C9), -- FGL_ASIC_ID(0x94C8), -+ FGL_ASIC_ID(0x9552), -+ FGL_ASIC_ID(0x9553), -+ FGL_ASIC_ID(0x9555), -+ FGL_ASIC_ID(0x9557), -+ FGL_ASIC_ID(0x955F), -+ FGL_ASIC_ID(0x9580), - FGL_ASIC_ID(0x9581), - FGL_ASIC_ID(0x9583), -+ FGL_ASIC_ID(0x9586), -+ FGL_ASIC_ID(0x9587), -+ FGL_ASIC_ID(0x9588), -+ FGL_ASIC_ID(0x9589), -+ FGL_ASIC_ID(0x958A), - FGL_ASIC_ID(0x958B), -- FGL_ASIC_ID(0x95C4), -- FGL_ASIC_ID(0x95C2), -+ FGL_ASIC_ID(0x958C), -+ FGL_ASIC_ID(0x958D), -+ FGL_ASIC_ID(0x958E), -+ FGL_ASIC_ID(0x958F), -+ FGL_ASIC_ID(0x9590), - FGL_ASIC_ID(0x9591), - FGL_ASIC_ID(0x9593), -- FGL_ASIC_ID(0x9506), -- FGL_ASIC_ID(0x9508), -- FGL_ASIC_ID(0x9504), -- FGL_ASIC_ID(0x9509), -- FGL_ASIC_ID(0x9553), -- FGL_ASIC_ID(0x9552), -- FGL_ASIC_ID(0x955F), -- FGL_ASIC_ID(0x9555), -- FGL_ASIC_ID(0x9491), -- FGL_ASIC_ID(0x9480), -- FGL_ASIC_ID(0x9488), -- FGL_ASIC_ID(0x948A), -- FGL_ASIC_ID(0x94A0), -- FGL_ASIC_ID(0x94A1), -- FGL_ASIC_ID(0x945A), -- FGL_ASIC_ID(0x945B), -- FGL_ASIC_ID(0x945E), -- FGL_ASIC_ID(0x944A), -- FGL_ASIC_ID(0x944B), -- FGL_ASIC_ID(0x6720), -- FGL_ASIC_ID(0x6721), -- FGL_ASIC_ID(0x6724), -- FGL_ASIC_ID(0x6725), -- FGL_ASIC_ID(0x6764), -- FGL_ASIC_ID(0x6765), -- FGL_ASIC_ID(0x6763), -- FGL_ASIC_ID(0x6761), -- FGL_ASIC_ID(0x6760), -- FGL_ASIC_ID(0x6744), -- FGL_ASIC_ID(0x6745), -- FGL_ASIC_ID(0x6742), -- FGL_ASIC_ID(0x6743), -- FGL_ASIC_ID(0x6741), -- FGL_ASIC_ID(0x6740), -- FGL_ASIC_ID(0x6820), -- FGL_ASIC_ID(0x6821), -- FGL_ASIC_ID(0x6824), -- FGL_ASIC_ID(0x6825), -- FGL_ASIC_ID(0x6830), -- FGL_ASIC_ID(0x6827), -- FGL_ASIC_ID(0x682D), -- FGL_ASIC_ID(0x682F), -- FGL_ASIC_ID(0x6831), -- FGL_ASIC_ID(0x6823), -- FGL_ASIC_ID(0x6826), -- FGL_ASIC_ID(0x6843), -- FGL_ASIC_ID(0x6840), -- FGL_ASIC_ID(0x6841), -- FGL_ASIC_ID(0x6842), -- FGL_ASIC_ID(0x6800), -- FGL_ASIC_ID(0x6801), -- FGL_ASIC_ID(0x68F1), -- FGL_ASIC_ID(0x68E8), -- FGL_ASIC_ID(0x68E9), -- FGL_ASIC_ID(0x6888), -- FGL_ASIC_ID(0x6889), -- FGL_ASIC_ID(0x688A), -- FGL_ASIC_ID(0x688D), -- FGL_ASIC_ID(0x688C), -- FGL_ASIC_ID(0x68A9), -- FGL_ASIC_ID(0x6880), -- FGL_ASIC_ID(0x68C8), -- FGL_ASIC_ID(0x68C9), -- FGL_ASIC_ID(0x958F), - FGL_ASIC_ID(0x9595), -+ FGL_ASIC_ID(0x9596), -+ FGL_ASIC_ID(0x9597), -+ FGL_ASIC_ID(0x9598), -+ FGL_ASIC_ID(0x9599), - FGL_ASIC_ID(0x959B), -- FGL_ASIC_ID(0x9557), -- FGL_ASIC_ID(0x9489), -- FGL_ASIC_ID(0x94A3), -- FGL_ASIC_ID(0x947A), -- FGL_ASIC_ID(0x947B), -- FGL_ASIC_ID(0x946A), -- FGL_ASIC_ID(0x946B), -- FGL_ASIC_ID(0x6728), -- FGL_ASIC_ID(0x6729), -- FGL_ASIC_ID(0x6722), -- FGL_ASIC_ID(0x6723), -- FGL_ASIC_ID(0x6726), -- FGL_ASIC_ID(0x6727), -- FGL_ASIC_ID(0x6766), -- FGL_ASIC_ID(0x6767), -- FGL_ASIC_ID(0x6768), -- FGL_ASIC_ID(0x6762), -- FGL_ASIC_ID(0x6700), -- FGL_ASIC_ID(0x6701), -- FGL_ASIC_ID(0x6702), -- FGL_ASIC_ID(0x6703), -- FGL_ASIC_ID(0x6704), -- FGL_ASIC_ID(0x6705), -- FGL_ASIC_ID(0x6706), -- FGL_ASIC_ID(0x6707), -- FGL_ASIC_ID(0x6708), -- FGL_ASIC_ID(0x6709), -- FGL_ASIC_ID(0x674A), -- FGL_ASIC_ID(0x6746), -- FGL_ASIC_ID(0x6747), -- FGL_ASIC_ID(0x6748), -- FGL_ASIC_ID(0x6749), -- FGL_ASIC_ID(0x940F), -- FGL_ASIC_ID(0x940B), -- FGL_ASIC_ID(0x940A), -- FGL_ASIC_ID(0x944F), -- FGL_ASIC_ID(0x9447), -+ FGL_ASIC_ID(0x95C0), -+ FGL_ASIC_ID(0x95C2), -+ FGL_ASIC_ID(0x95C4), -+ FGL_ASIC_ID(0x95C5), -+ FGL_ASIC_ID(0x95C6), -+ FGL_ASIC_ID(0x95C7), -+ FGL_ASIC_ID(0x95C9), - FGL_ASIC_ID(0x95CC), -- FGL_ASIC_ID(0x958C), -- FGL_ASIC_ID(0x958D), -- FGL_ASIC_ID(0x9511), -- FGL_ASIC_ID(0x949C), -- FGL_ASIC_ID(0x949F), -- FGL_ASIC_ID(0x949E), -- FGL_ASIC_ID(0x9444), -- FGL_ASIC_ID(0x9456), -- FGL_ASIC_ID(0x9446), -- FGL_ASIC_ID(0x6828), -- FGL_ASIC_ID(0x6808), -- FGL_ASIC_ID(0x684C), -- FGL_ASIC_ID(0x6809), -- FGL_ASIC_ID(0x6780), -- FGL_ASIC_ID(0x6784), -- FGL_ASIC_ID(0x6788), -- FGL_ASIC_ID(0x678A), -- FGL_ASIC_ID(0x68F2), - FGL_ASIC_ID(0x95CD), - FGL_ASIC_ID(0x95CE), - FGL_ASIC_ID(0x95CF), -- -+ FGL_ASIC_ID(0x9610), -+ FGL_ASIC_ID(0x9611), -+ FGL_ASIC_ID(0x9612), -+ FGL_ASIC_ID(0x9613), -+ FGL_ASIC_ID(0x9614), -+ FGL_ASIC_ID(0x9615), -+ FGL_ASIC_ID(0x9616), -+ FGL_ASIC_ID(0x9710), -+ FGL_ASIC_ID(0x9711), -+ FGL_ASIC_ID(0x9712), -+ FGL_ASIC_ID(0x9713), -+ FGL_ASIC_ID(0x9714), -+ FGL_ASIC_ID(0x9715), diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-rename_to_legacy.patch b/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-rename_to_legacy.patch deleted file mode 100644 index 18d88e2a6d..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-12.6-rename_to_legacy.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur xf86-video-fglrx-legacy-12.6/common/lib/modules/fglrx/build_mod/firegl_public.c xf86-video-fglrx-legacy-12.6.patch/common/lib/modules/fglrx/build_mod/firegl_public.c ---- xf86-video-fglrx-legacy-12.6/common/lib/modules/fglrx/build_mod/firegl_public.c 2012-07-04 21:43:47.000000000 +0200 -+++ xf86-video-fglrx-legacy-12.6.patch/common/lib/modules/fglrx/build_mod/firegl_public.c 2012-07-09 19:33:02.694483911 +0200 -@@ -940,7 +940,7 @@ - - static struct pci_driver fglrx_pci_driver = - { -- .name = "fglrx_pci", -+ .name = "fglrx_legacy_pci", - .id_table = fglrx_pci_table, - .probe = fglrx_pci_probe, - #ifdef CONFIG_PM diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-replace_old_procfs_calls.patch b/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-replace_old_procfs_calls.patch deleted file mode 100644 index ace2461268..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/patches.upstream/xf86-video-fglrx-legacy-replace_old_procfs_calls.patch +++ /dev/null @@ -1,294 +0,0 @@ -diff -Naur xf86-video-fglrx-legacy/common/lib/modules/fglrx/build_mod/drmP.h xf86-video-fglrx-legacy.patch/common/lib/modules/fglrx/build_mod/drmP.h ---- xf86-video-fglrx-legacy/common/lib/modules/fglrx/build_mod/drmP.h 2012-07-18 17:58:01.000000000 +0200 -+++ xf86-video-fglrx-legacy.patch/common/lib/modules/fglrx/build_mod/drmP.h 2013-07-02 23:22:27.700054231 +0200 -@@ -901,10 +901,6 @@ - int DRM(stub_unregister)(int minor); - - /* Proc support (drm_proc.h) */ --extern struct proc_dir_entry *DRM(proc_init)(drm_device_t *dev, -- int minor, -- struct proc_dir_entry *root, -- struct proc_dir_entry **dev_root); - extern int DRM(proc_cleanup)(int minor, - struct proc_dir_entry *root, - struct proc_dir_entry *dev_root); -diff -Naur xf86-video-fglrx-legacy/common/lib/modules/fglrx/build_mod/drm_proc.h xf86-video-fglrx-legacy.patch/common/lib/modules/fglrx/build_mod/drm_proc.h ---- xf86-video-fglrx-legacy/common/lib/modules/fglrx/build_mod/drm_proc.h 2012-07-18 17:58:01.000000000 +0200 -+++ xf86-video-fglrx-legacy.patch/common/lib/modules/fglrx/build_mod/drm_proc.h 2013-07-02 23:22:27.701054202 +0200 -@@ -75,61 +75,6 @@ - #define DRM_PROC_ENTRIES (sizeof(DRM(proc_list))/sizeof(DRM(proc_list)[0])) - - /** -- * Initialize the DRI proc filesystem for a device. -- * -- * \param dev DRM device. -- * \param minor device minor number. -- * \param root DRI proc dir entry. -- * \param dev_root resulting DRI device proc dir entry. -- * \return root entry pointer on success, or NULL on failure. -- * -- * Create the DRI proc root entry "/proc/ati", the device proc root entry -- * "/proc/ati/%minor%/", and each entry in proc_list as -- * "/proc/ati/%minor%/%name%". -- */ --struct proc_dir_entry *DRM(proc_init)(drm_device_t *dev, int minor, -- struct proc_dir_entry *root, -- struct proc_dir_entry **dev_root) --{ -- struct proc_dir_entry *ent; -- int i, j; -- char name[64]; -- -- if (!minor) root = create_proc_entry("dri", S_IFDIR, NULL); -- if (!root) { -- DRM_ERROR("Cannot create /proc/ati\n"); -- return NULL; -- } -- -- sprintf(name, "%d", minor); -- *dev_root = create_proc_entry(name, S_IFDIR, root); -- if (!*dev_root) { -- DRM_ERROR("Cannot create /proc/ati/%s\n", name); -- return NULL; -- } -- -- for (i = 0; i < DRM_PROC_ENTRIES; i++) { -- ent = create_proc_entry(DRM(proc_list)[i].name, -- S_IFREG|S_IRUGO, *dev_root); -- if (!ent) { -- DRM_ERROR("Cannot create /proc/ati/%s/%s\n", -- name, DRM(proc_list)[i].name); -- for (j = 0; j < i; j++) -- remove_proc_entry(DRM(proc_list)[i].name, -- *dev_root); -- remove_proc_entry(name, root); -- if (!minor) remove_proc_entry("dri", NULL); -- return NULL; -- } -- ent->read_proc = DRM(proc_list)[i].f; -- ent->data = dev; -- } -- -- return root; --} -- -- --/** - * Cleanup the proc filesystem resources. - * - * \param minor device minor number. -diff -Naur xf86-video-fglrx-legacy/common/lib/modules/fglrx/build_mod/firegl_public.c xf86-video-fglrx-legacy.patch/common/lib/modules/fglrx/build_mod/firegl_public.c ---- xf86-video-fglrx-legacy/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-07-02 23:33:05.566156261 +0200 -+++ xf86-video-fglrx-legacy.patch/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-07-02 23:22:27.705054121 +0200 -@@ -571,6 +571,202 @@ - { "NULL", NULL, NULL} // Terminate List!!! - }; - -+ -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0) -+typedef int (read_proc_t)(char *page, char **start, off_t off, int count, int *eof, void *data); -+typedef int (write_proc_t)(struct file *file, const char __user *buffer, unsigned long count, void *data); -+#else -+#define PDE_DATA(inode) (PDE((inode))->data) -+#endif -+ -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0) -+typedef struct { -+ read_proc_t *read_func; -+ write_proc_t *write_func; -+ void *data; -+} gentoo_proc_wrapper_t; -+ -+#define GENTOO_PROC_WRAPPER_OVERFLOW_MAGIC 939750305 -+ -+static ssize_t gentoo_proc_wrapper_read (struct file *myfile, char __user *buffer, size_t count, loff_t *offset) { -+ int is_eof=0, retval; -+ char *start, *usebuffer=NULL; -+ gentoo_proc_wrapper_t* wrapper_data=(gentoo_proc_wrapper_t*)(myfile->private_data); -+ if (PAGE_SIZE<*offset) { -+ printk(KERN_ERR "Trying to read beyond 4k on proc\n"); -+ return -EIO; -+ } -+ //printk(KERN_NOTICE " call with: dev %p, func %p\n", wrapper_data->data, wrapper_data->read_func); -+ -+ usebuffer=kmalloc(2*PAGE_SIZE, GFP_KERNEL); -+ if (!usebuffer) -+ return -ENOMEM; -+ ((u32*)usebuffer)[1024]=GENTOO_PROC_WRAPPER_OVERFLOW_MAGIC; -+ -+ retval=wrapper_data->read_func(usebuffer, &start, *offset, count, &is_eof, wrapper_data->data); -+ -+ BUG_ON(GENTOO_PROC_WRAPPER_OVERFLOW_MAGIC != ((u32*)usebuffer)[1024]); -+ -+ if (0 > retval) -+ { -+ printk(KERN_ERR "Proc read failed with %d", retval); -+ goto out; -+ } -+ -+ if (copy_to_user(buffer, start, retval)) { -+ printk(KERN_NOTICE "copy to user failed in amd drivers proc code\n"); -+ retval=-EFAULT; -+ goto out; -+ } -+ *offset+=retval; -+ -+out: -+ if (usebuffer) -+ kfree(usebuffer); -+ return retval; -+} -+static ssize_t gentoo_proc_wrapper_write (struct file *myfile, const char __user *buffer, size_t count, loff_t *offset) { -+ gentoo_proc_wrapper_t* wrapper_data=(gentoo_proc_wrapper_t*)(myfile->private_data); -+ int retval=0; -+ void *usebuffer=NULL; -+ -+ BUG_ON(*offset); -+ if (!wrapper_data->write_func) -+ return -EPERM; -+ -+ usebuffer=kmalloc(count, GFP_KERNEL); -+ if (!usebuffer) -+ return -ENOMEM; -+ if (copy_from_user(usebuffer, buffer, count)) { -+ printk(KERN_NOTICE "copy from user failed in amd drivers proc code\n"); -+ retval=-EFAULT; -+ goto out; -+ } -+ -+ retval=wrapper_data->write_func(myfile, buffer, count, wrapper_data->data); -+ *offset+=retval; -+out: -+ if (usebuffer) -+ kfree(usebuffer); -+ return retval; -+} -+static int gentoo_proc_wrapper_open(struct inode *myinode, struct file *myfile) { -+ myfile->private_data=PDE_DATA(myinode); -+ return generic_file_open(myinode, myfile); -+} -+struct file_operations gentoo_proc_fops = { -+ .read=gentoo_proc_wrapper_read, -+ .write=gentoo_proc_wrapper_write, -+ .open=gentoo_proc_wrapper_open, -+}; -+ -+static void *gentoo_proc_wrapper_data(read_proc_t *reader, write_proc_t *writer, void *mydata) { -+ gentoo_proc_wrapper_t *retval=kmalloc(sizeof(gentoo_proc_wrapper_t), GFP_KERNEL); -+ if (!retval) -+ return retval; -+ retval->read_func=reader; -+ retval->write_func=writer; -+ retval->data=mydata; -+ return retval; -+} -+ -+static struct proc_dir_entry *firegl_proc_init( device_t *dev, -+ int minor, -+ struct proc_dir_entry *root, -+ struct proc_dir_entry **dev_root, -+ kcl_proc_list_t *proc_list ) // proc_list must be terminated! -+{ -+ struct proc_dir_entry *ent; -+ char name[64]; -+ kcl_proc_list_t *list = proc_list; -+ void *tempdata; -+ KCL_DEBUG1(FN_FIREGL_PROC, "minor %d, proc_list 0x%08lx\n", minor, (unsigned long)proc_list); -+ if (!minor) -+ { -+ root = proc_mkdir("ati", NULL); -+ } -+ -+ if (!root) -+ { -+ KCL_DEBUG_ERROR("Cannot create /proc/ati\n"); -+ return NULL; -+ } -+ -+ if (minor == 0) -+ { -+ // Global major debice number entry -+ tempdata=gentoo_proc_wrapper_data((read_proc_t*)firegl_major_proc_read, NULL, NULL); -+ if (!tempdata) -+ return NULL; -+ ent = proc_create_data("major", S_IFREG|S_IRUGO, root, &gentoo_proc_fops, tempdata); -+ if (!ent) -+ { -+ remove_proc_entry("ati", NULL); -+ KCL_DEBUG_ERROR("Cannot create /proc/ati/major\n"); -+ return NULL; -+ } -+ } -+ -+ sprintf(name, "%d", minor); -+ *dev_root = proc_mkdir(name, root); -+ if (!*dev_root) { -+ remove_proc_entry("major", root); -+ remove_proc_entry("ati", NULL); -+ KCL_DEBUG_ERROR("Cannot create /proc/ati/%s\n", name); -+ return NULL; -+ } -+ -+ while (list->f || list->fops) -+ { -+ struct file_operations *my_fops = &gentoo_proc_fops; -+ if (list->fops) -+ { -+ my_fops = (struct file_operations*)list->fops; -+ tempdata=(dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev); -+ } -+ else { -+ BUG_ON(!list->f); -+ tempdata=gentoo_proc_wrapper_data((read_proc_t*)list->f, NULL, (dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev) ); -+ if (!tempdata) -+ return NULL; -+ } -+ //printk(KERN_NOTICE "name %s, dev %p, func %p, data %p\n", list->name, (dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev), list->f, tempdata); -+ ent = proc_create_data(list->name, S_IFREG|S_IRUGO, *dev_root, my_fops, tempdata); -+ -+ if (!ent) -+ { -+ KCL_DEBUG_ERROR("Cannot create /proc/ati/%s/%s\n", name, list->name); -+ while (proc_list != list) -+ { -+ remove_proc_entry(proc_list->name, *dev_root); -+ proc_list++; -+ } -+ remove_proc_entry(name, root); -+ if (!minor) -+ { -+ remove_proc_entry("major", root); -+ remove_proc_entry("ati", NULL); -+ } -+ return NULL; -+ } -+ -+ list++; -+ } -+ -+ if (minor == 0) -+ { -+ // Global debug entry, only create it once -+ tempdata=gentoo_proc_wrapper_data((read_proc_t*)firegl_debug_proc_read_wrap, (write_proc_t*)firegl_debug_proc_write_wrap, dev); -+ if (!tempdata) -+ return NULL; -+ ent=proc_create_data("debug", S_IFREG|S_IRUGO, root, &gentoo_proc_fops, tempdata); -+ if (!ent) -+ return NULL; -+ } -+ -+ return root; -+} -+#else - static struct proc_dir_entry *firegl_proc_init( device_t *dev, - int minor, - struct proc_dir_entry *root, -@@ -665,6 +861,7 @@ - - return root; - } -+#endif - - static int firegl_proc_cleanup( int minor, - struct proc_dir_entry *root, -diff -Naur xf86-video-fglrx-legacy/common/lib/modules/fglrx/build_mod/firegl_public.c.orig xf86-video-fglrx-legacy.patch/common/lib/modules/fglrx/build_mod/firegl_public.c.orig diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/source/amdxvba.h b/packages/x11/driver/xf86-video-fglrx-legacy/source/amdxvba.h deleted file mode 100644 index 472fa2ae70..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/source/amdxvba.h +++ /dev/null @@ -1,831 +0,0 @@ -/******************************************************************************* -* -* Copyright (c) 2011, Advanced Micro Devices, Inc. -* All rights reserved. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following are met: -* -* Neither the name of the copyright holder nor the names of its -* contributors may be used to endorse or promote products derived from -* this software without specific, prior, written permission. -* -* You must reproduce the above copyright notice. -* -* You must include the following terms in your license and/or other -* materials provided with the software. -* -* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -* HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -* Without limiting the foregoing, the software may implement third -* party technologies (e.g. third party libraries) for which you must -* obtain licenses from parties other than AMD. You agree that AMD has -* not obtained or conveyed to you, and that you shall be responsible for -* obtaining the rights to use and/or distribute the applicable underlying -* intellectual property rights related to the third party technologies. -* These third party technologies are not licensed hereunder. -* -* Without limiting the foregoing, for MPEG-2 products, the following -* additional notices are provided: For MPEG-2 Encoding Products (those -* that are "Sold" to end-users, directly or indirectly): -* -* NO LICENSE IS GRANTED HEREIN, BY IMPLICATION OR OTHERWISE, -* TO YOU OR YOUR CUSTOMERS TO USE MPEG-2 ENCODING PRODUCTS, -* MPEG-2 DISTRIBUTION ENCODING PRODUCTS, MPEG-2 ENCODING SOFTWARE, -* AND/OR MPEG-2 BUNDLED ENCODING SOFTWARE FOR ENCODING OR HAVING -* ENCODED ONE OR MORE MPEG-2 VIDEO EVENTS FOR RECORDING ON AN -* MPEG-2 PACKAGED MEDIUM FOR ANY USE OR DISTRIBUTION OTHER THAN -* PERSONAL USE OF LICENSEE'S CUSTOMER. -* -* For MPEG-2 Intermediate Products (those that are NOT "Sold" to -* end-users, directly or indirectly): -* -* NO LICENSE IS GRANTED HEREIN, BY IMPLICATION OR OTHERWISE, -* TO YOU OR YOUR CUSTOMERS TO USE MPEG-2 INTERMEDIATE PRODUCTS -* MANUFACTURED OR SOLD BY YOU. -* -* If you use the software (in whole or in part), you shall adhere to -* all applicable U.S., European, and other export laws, including but -* not limited to the U.S. Export Administration Regulations ("EAR"), -* (15 C.F.R. Sections 730 through 774), and E.U. Council Regulation (EC) -* No 1334/2000 of 22 June 2000. Further, pursuant to Section 740.6 of -* the EAR, you hereby certify that, except pursuant to a license granted -* by the United States Department of Commerce Bureau of Industry and -* Security or as otherwise permitted pursuant to a License Exception -* under the U.S. Export Administration Regulations ("EAR"), you will -* not (1) export, re-export or release to a national of a country in -* Country Groups D:1, E:1 or E:2 any restricted technology, software, -* or source code you receive hereunder, or (2) export to Country Groups -* D:1, E:1 or E:2 the direct product of such technology or software, if -* such foreign produced direct product is subject to national security -* controls as identified on the Commerce Control List (currently found -* in Supplement 1 to Part 774 of EAR). For the most current Country -* Group listings, or for additional information about the EAR or your -* obligations under those regulations, please refer to the U.S. Bureau -* of Industry and Security's website at http://www.bis.doc.gov/. -* -*******************************************************************************/ - -#ifndef _XVBA_H -#define _XVBA_H - -// A minor revision change indicates a backward-compatible change; a major revision change indicates a backward-incompatible -#define XVBA_VERSION_MAJOR 0 -#define XVBA_VERSION_MINOR 74 -#define XVBA_VERSION ((XVBA_VERSION_MAJOR << 16) | XVBA_VERSION_MINOR) - -#define NUM_OF_XVBA_DECODE_CAP 3 -#define NUM_OF_XVBA_GET_SURFACE_TARGET 3 - -#ifdef __cplusplus -extern "C" { -#endif - -typedef enum _XVBA_SURFACE_FLAG -{ - XVBA_FRAME = 0, - XVBA_TOP_FIELD, - XVBA_BOTTOM_FIELD, - -} XVBA_SURFACE_FLAG; - -/* Four-character-code (FOURCC) */ -#define XVBA_FOURCC(a,b,c,d)\ - (((unsigned int)(a)<<0) |\ - ((unsigned int)(b)<<8) |\ - ((unsigned int)(c)<<16)|\ - ((unsigned int)(d)<<24)) - -typedef enum _XVBA_SURFACE_FORMAT -{ - XVBA_NV12 = XVBA_FOURCC('N','V','1','2'), /* 12bit Y/CbCr 4:2:0 planar */ - XVBA_YUY2 = XVBA_FOURCC('Y','U','Y','2'), /* 16bit YUV 4:2:2 */ - XVBA_ARGB = XVBA_FOURCC('A','R','G','B'), /* 32bit ARGB-8-8-8-8 */ - XVBA_AYUV = XVBA_FOURCC('A','Y','U','V'), /* 32bit AYUV-8-8-8-8 */ - XVBA_YV12 = XVBA_FOURCC('Y','V','1','2'), /* 12bit Y/V/U 4:2:0 planar */ -} XVBA_SURFACE_FORMAT; - -typedef struct _XVBA_GetSurface_Target -{ - unsigned int size; ///< structure size - XVBA_SURFACE_FORMAT surfaceType; - XVBA_SURFACE_FLAG flag; -} XVBA_GetSurface_Target; - -/** - * XVBA Query Extension - */ -Bool -XVBAQueryExtension -( - Display *display, - int *version -); - -/******************************************************************/ -/* XVBA Context */ -/******************************************************************/ - -/** - * XVBA Context Create - */ -typedef struct -{ - unsigned int size; ///< structure size - Display *display; - Drawable draw; - -} XVBA_Create_Context_Input; - -typedef struct -{ - unsigned int size; ///< structure size - void *context; - -} XVBA_Create_Context_Output; - -Status -XVBACreateContext -( - XVBA_Create_Context_Input *create_context_input, - XVBA_Create_Context_Output *create_context_output -); - -/** - * XVBA Context Destroy - */ -Status -XVBADestroyContext -( - void *context -); - - -/******************************************************************/ -/* XVBA Sessions */ -/******************************************************************/ - -/** - * XVBA Context Query Session Info - */ -typedef struct -{ - unsigned int size; ///< structure size - void *context; - -} XVBA_GetSessionInfo_Input; - -typedef struct -{ - unsigned int size; ///< structure size - unsigned int getcapdecode_output_size; ///< 0 = Decode not supported, NZ = Decode session is supported and the value is used for XVBAGetCapDecode output struct size - unsigned int xvba_gsio_reserved_0; - unsigned int xvba_gsio_reserved_1; -} XVBA_GetSessionInfo_Output; - -Status -XVBAGetSessionInfo -( - XVBA_GetSessionInfo_Input *get_session_info_input, - XVBA_GetSessionInfo_Output *get_session_info_output -); - -/******************************************************************/ -/* XVBA decode errors */ -/******************************************************************/ - -typedef enum -{ - XVBA_DECODE_NO_ERROR = 0, - XVBA_DECODE_BAD_PICTURE, ///< the entire picture is corrupted . All MBs are invalid - XVBA_DECODE_BAD_SLICE, ///< part of the picture, slice, wasn.t decoded properly . all MBs in this slice are bad - XVBA_DECODE_BAD_MB ///< some MBs are not decoded properly - -} XVBA_DECODE_ERROR; - -typedef struct -{ - unsigned int size; ///< structure size - XVBA_DECODE_ERROR type; - unsigned int num_of_bad_mbs; ///< number of marcoblocks that were not properly decoded - -} XVBADecodeError; - -/******************************************************************/ -/* XVBA Surface */ -/******************************************************************/ - -/** - * XVBA Surface create - */ -typedef struct -{ - unsigned int size; - void *session; - unsigned int width; - unsigned int height; - XVBA_SURFACE_FORMAT surface_type; - -} XVBA_Create_Surface_Input; - -typedef struct -{ - unsigned int size; - void *surface; ///< Pointer to XVBASurface - -} XVBA_Create_Surface_Output; - -Status -XVBACreateSurface( - XVBA_Create_Surface_Input *create_surface_input, - XVBA_Create_Surface_Output *create_surface_output -); - -/** - * XVBA Surface destroy - */ -Status -XVBADestroySurface( - void *surface -); - - -/** - * Synchronization query_status_flags - */ -typedef enum -{ - XVBA_GET_SURFACE_STATUS = 1, ///< get surface status; is surface still used by GPU - XVBA_GET_DECODE_ERRORS ///< get decode errors for target surface - -} XVBA_QUERY_STATUS; - -/** - * Synchronization status flags - */ -#define XVBA_STILL_PENDING 0x00000001 ///< surface is still used by HW -#define XVBA_COMPLETED 0x00000002 ///< HW completed job on this surface -#define XVBA_NO_ERROR_DECODE 0x00000004 ///< no decode errors -#define XVBA_ERROR_DECODE 0x00000008 ///< decode errors for queried surface - - -/** - * XVBA Surface synchronization - */ -typedef struct -{ - unsigned int size; - void *session; - void *surface; - XVBA_QUERY_STATUS query_status; - -} XVBA_Surface_Sync_Input; - -typedef struct -{ - unsigned int size; - unsigned int status_flags; - XVBADecodeError decode_error; - -} XVBA_Surface_Sync_Output; - -Status -XVBASyncSurface ( - XVBA_Surface_Sync_Input *surface_sync_input, - XVBA_Surface_Sync_Output *surface_sync_output -); - - -// Conversion from OGL to XVBA surface - -typedef struct -{ - unsigned int size; - void *session; - void *glcontext; - unsigned int gltexture; - -} XVBA_Create_GLShared_Surface_Input; - -typedef struct -{ - unsigned int size; - void *surface; // Pointer to XVBASurface - -} XVBA_Create_GLShared_Surface_Output; - -Status -XVBACreateGLSharedSurface ( - XVBA_Create_GLShared_Surface_Input *create_glshared_surface_input, - XVBA_Create_GLShared_Surface_Output *create_glshared_surface_output -); - - -/** - * XVBA Get Surface - */ -typedef struct { - unsigned int size; ///< structure size - void *session; // XVBA session - void *src_surface; // source XVBA surface - void *target_buffer; // application supplied system memory buffer - unsigned int target_pitch; // pitch of the destination buffer - unsigned int target_width; // width of the destination buffer - unsigned int target_height; // height of the destination buffer - XVBA_GetSurface_Target target_parameter; // destination buffer format and flag - unsigned int reserved [4]; // reserved -} XVBA_Get_Surface_Input; - -Status -XVBAGetSurface ( - XVBA_Get_Surface_Input *get_surface_input -); - -/** - * XVBA Transfer Surface - */ -typedef struct { - unsigned int size; ///< structure size - void *session; // XVBA session - void *src_surface; // source XVBA surface - void *target_surface; // destination XVBA surface - XVBA_SURFACE_FLAG flag; // top, bottom or frame - unsigned int reserved [4]; // reserved -} XVBA_Transfer_Surface_Input; - -Status -XVBATransferSurface ( - XVBA_Transfer_Surface_Input *transfer_surface_input -); - -/******************************************************************/ -/* XVBA Buffers */ -/******************************************************************/ - -typedef enum -{ - XVBA_NONE = 0, - XVBA_PICTURE_DESCRIPTION_BUFFER, - XVBA_DATA_BUFFER, - XVBA_DATA_CTRL_BUFFER, - XVBA_QM_BUFFER - -} XVBA_BUFFER; - -typedef struct -{ - unsigned int size; ///< structure size - XVBA_BUFFER buffer_type; - unsigned int buffer_size; ///< allocated size of data in bytes - void *bufferXVBA; ///< pointer to XVBA decode data buffer - unsigned int data_size_in_buffer;///< Used in Decode call only - int data_offset; ///< Used in Decode call only - void *appPrivate; ///< used only by application to store pointer to its private data. - -} XVBABufferDescriptor; - -/** - * XVBA Decode buffers create - */ -typedef struct -{ - unsigned int size; ///< structure size - void *session; - XVBA_BUFFER buffer_type; - unsigned int num_of_buffers; - -} XVBA_Create_DecodeBuff_Input; - -typedef struct -{ - unsigned int size; ///< structure size - unsigned int num_of_buffers_in_list; - XVBABufferDescriptor *buffer_list; - -} XVBA_Create_DecodeBuff_Output; - -Status -XVBACreateDecodeBuffers ( - XVBA_Create_DecodeBuff_Input *create_decodebuff_input, - XVBA_Create_DecodeBuff_Output *create_decodebuff_output -); - -/** - * XVBA Decode buffers destroy - */ -typedef struct -{ - unsigned int size; - void *session; - unsigned int num_of_buffers_in_list; - XVBABufferDescriptor *buffer_list; - -} XVBA_Destroy_Decode_Buffers_Input; - -Status -XVBADestroyDecodeBuffers ( - XVBA_Destroy_Decode_Buffers_Input *buffer_list -); - - -/******************************************************************/ -/* XVBA Decode session (XVBADecodeCap) */ -/******************************************************************/ - -/** - * XVBADecodeCap flags - */ -typedef enum -{ - XVBA_NOFLAG = 0, - XVBA_H264_BASELINE, - XVBA_H264_MAIN, - XVBA_H264_HIGH, - - XVBA_VC1_SIMPLE, - XVBA_VC1_MAIN, - XVBA_VC1_ADVANCED, - -} XVBA_DECODE_FLAGS; - -/** - * XVBADecodeCap capability_id - */ -typedef enum -{ - XVBA_H264 = 0x100,///< bitstream level of acceleration - XVBA_VC1, ///< bitstream level of acceleration - XVBA_MPEG2_IDCT, ///< iDCT and motion compensation level of acceleration - XVBA_MPEG2_VLD ///< bitstream level of acceleration - -} XVBA_CAPABILITY_ID; - -typedef struct { - unsigned int size; ///< structure size - XVBA_CAPABILITY_ID capability_id; ///< Unique descriptor for decode capability - XVBA_DECODE_FLAGS flags; ///< defines for additional information about capability - XVBA_SURFACE_FORMAT surface_type; ///< Surface type: fourcc YUV or RGB supported with this capability. - -} XVBADecodeCap; - -/** - * XVBADecodeCap Query Info - */ -typedef struct { - unsigned int size; ///< structure size - void *context; - -} XVBA_GetCapDecode_Input; - -typedef struct { - unsigned int size; ///< structure size - unsigned int num_of_decodecaps; - XVBADecodeCap decode_caps_list[NUM_OF_XVBA_DECODE_CAP]; - unsigned int num_of_getsurface_target; - XVBA_GetSurface_Target getsurface_target_list[NUM_OF_XVBA_GET_SURFACE_TARGET]; -} XVBA_GetCapDecode_Output; - -Status -XVBAGetCapDecode ( - XVBA_GetCapDecode_Input *decodecap_list_input, - XVBA_GetCapDecode_Output *decodecap_list_output -); - -/** - * XVBADecodeCap create - */ -typedef struct { - unsigned int size; ///< structure size - unsigned int width; ///< decoded video width - unsigned int height; ///< decoded video height - void *context; - XVBADecodeCap *decode_cap; ///< capability from the driver reported list - -} XVBA_Create_Decode_Session_Input; - -typedef struct { - unsigned int size; ///< structure size - void *session; ///< Pointer to the created decode session - -} XVBA_Create_Decode_Session_Output; - -Status -XVBACreateDecode ( - XVBA_Create_Decode_Session_Input *create_decode_session_input, - XVBA_Create_Decode_Session_Output *create_decode_session_output -); - -/** - * XVBADecodeCap destroy - */ -Status -XVBADestroyDecode ( - void *session -); - - -/******************************************************************/ -/* XVBA Decode API */ -/******************************************************************/ -#define XVBA_PREDICTION_FIELD 0x01 -#define XVBA_PREDICTION_FRAME 0x02 -#define XVBA_PREDICTION_DUAL_PRIME 0x03 -#define XVBA_PREDICTION_16x8 0x02 - -#define XVBA_SECOND_FIELD 0x00000004 - - -/** - * XVBA inits picture decoding - */ -typedef struct -{ - unsigned int size; ///< structure size - void *session; ///< pointer to decode session - void *target_surface; ///< decode target - -} XVBA_Decode_Picture_Start_Input; - -Status -XVBAStartDecodePicture ( - XVBA_Decode_Picture_Start_Input *decode_picture_start -); - -/** - * XVBA picture decode - */ -typedef struct -{ - unsigned int size; ///< structure size - void *session; ///< pointer to decode session - unsigned int num_of_buffers_in_list; ///< number of decode compressed data buffers - XVBABufferDescriptor **buffer_list; ///< array of XVBABufferDescriptor structures - -} XVBA_Decode_Picture_Input; - -Status -XVBADecodePicture ( - XVBA_Decode_Picture_Input *decode_picture_input -); - -/** - * XVBA end picture decode - */ -typedef struct -{ - unsigned int size; - void *session; - -} XVBA_Decode_Picture_End_Input; - -Status -XVBAEndDecodePicture ( - XVBA_Decode_Picture_End_Input *decode_picture_end_input -); - -/******************************************************************/ -/* XVBA Decode Data buffers */ -/******************************************************************/ - -/* - * XVBA compressed data type: XVBA_PICTURE_DESCRIPTOR_BUFFER - */ -typedef struct -{ - //VC-1, MPEG2 bitstream references - void *past_surface; - void *future_surface; - - unsigned int profile; - unsigned int level; - - unsigned int width_in_mb; - unsigned int height_in_mb; - unsigned int picture_structure; - - union { - struct { - unsigned int residual_colour_transform_flag : 1; - unsigned int delta_pic_always_zero_flag : 1; - unsigned int gaps_in_frame_num_value_allowed_flag: 1; - unsigned int frame_mbs_only_flag : 1; - unsigned int mb_adaptive_frame_field_flag : 1; - unsigned int direct_8x8_inference_flag : 1; - unsigned int xvba_avc_sps_reserved : 26; - } avc; - - struct { - unsigned int postprocflag : 1; - unsigned int pulldown : 1; - unsigned int interlace : 1; - unsigned int tfcntrflag : 1; - unsigned int finterpflag : 1; - unsigned int reserved : 1; - unsigned int psf : 1; - unsigned int second_field : 1; - unsigned int xvba_vc1_sps_reserved : 24; - } vc1; - - unsigned int flags; - } sps_info; - - unsigned char chroma_format; - unsigned char avc_bit_depth_luma_minus8; - unsigned char avc_bit_depth_chroma_minus8; - unsigned char avc_log2_max_frame_num_minus4; - - unsigned char avc_pic_order_cnt_type; - unsigned char avc_log2_max_pic_order_cnt_lsb_minus4; - unsigned char avc_num_ref_frames; - unsigned char avc_reserved_8bit; - - union { - struct { - unsigned int entropy_coding_mode_flag : 1; - unsigned int pic_order_present_flag : 1; - unsigned int weighted_pred_flag : 1; - unsigned int weighted_bipred_idc : 2; - unsigned int deblocking_filter_control_present_flag : 1; - unsigned int constrained_intra_pred_flag : 1; - unsigned int redundant_pic_cnt_present_flag : 1; - unsigned int transform_8x8_mode_flag : 1; - unsigned int xvba_avc_pps_reserved : 23; - } avc; - - struct { - unsigned int panscan_flag : 1; - unsigned int refdist_flag : 1; - unsigned int loopfilter : 1; - unsigned int fastuvmc : 1; - unsigned int extended_mv : 1; - unsigned int dquant : 2; - unsigned int vstransform : 1; - unsigned int overlap : 1; - unsigned int quantizer : 2; - unsigned int extended_dmv : 1; - unsigned int maxbframes : 3; - unsigned int rangered : 1; - unsigned int syncmarker : 1; - unsigned int multires : 1; - unsigned int reserved : 2; - unsigned int range_mapy_flag : 1; - unsigned int range_mapy : 3; - unsigned int range_mapuv_flag : 1; - unsigned int range_mapuv : 3; - unsigned int xvba_vc1_pps_reserved: 4; - } vc1; - - unsigned int flags; - } pps_info; - - unsigned char avc_num_slice_groups_minus1; - unsigned char avc_slice_group_map_type; - unsigned char avc_num_ref_idx_l0_active_minus1; - unsigned char avc_num_ref_idx_l1_active_minus1; - - char avc_pic_init_qp_minus26; - char avc_pic_init_qs_minus26; - char avc_chroma_qp_index_offset; - char avc_second_chroma_qp_index_offset; - - unsigned short avc_slice_group_change_rate_minus1; - unsigned short avc_reserved_16bit; - - unsigned int avc_frame_num; - unsigned int avc_frame_num_list[16]; ///< bit 31 is used to indicate long/short term - int avc_curr_field_order_cnt_list[2]; - int avc_field_order_cnt_list[16][2]; - - unsigned char avc_slice_group_map[810]; - - int avc_intra_flag; - int avc_reference; - - int xvba_reserved[14]; - -} XVBAPictureDescriptor; - -/** - * XVBA Compressed data type: XVBA_DATA_CTRL_BUFFER - * (H264 and VC1 only) - */ -typedef struct -{ - unsigned int SliceBitsInBuffer; - unsigned int SliceDataLocation; - unsigned int SliceBytesInBuffer; - unsigned int reserved[5]; - -} XVBADataCtrl; - -/** - * XVBA Compressed data type: XVBA_DATA_BUFFER - * (MPEG2 iDCT level decode only) - */ -typedef struct -{ - struct - { - unsigned short index: 15; ///< contains rates scan index of the coefficient within the block. - ///< cannot be greater or equal to (block width * block height) - unsigned short endofblock: 1; - } idx; - short coeff; ///< value of the coefficient in the block; mismatch control and - ///< clipping is host.s responsibility - -} XVBAMpeg2Residual; - -typedef struct -{ - short horizontal; - short vertical; -} XVBAMpeg2MV; - -typedef struct -{ - unsigned short mb_address; - struct - { - unsigned short mb_intra : 1; - unsigned short motion_fw : 1; - unsigned short motion_back : 1; - unsigned short reserved2 : 2; - unsigned short field_residual : 1; - unsigned short mb_scan_mode : 2; - unsigned short motion_type : 2; - unsigned short reserved1 : 2; - unsigned short motion_vector_sel0 : 1; - unsigned short motion_vector_sel1 : 1; - unsigned short motion_vector_sel2 : 1; - unsigned short motion_vector_sel3 : 1; - } mpeg2data1; - - struct - { - unsigned int mb_data_resid_location : 24; - unsigned int skipped_mb : 8; - } mpeg2data2; - - unsigned short pattern_code; - unsigned char numcoeff[6]; - -} XVBAMpeg2IntraMB; - -typedef struct -{ - unsigned short mb_address; - struct - { - unsigned short mb_intra : 1; - unsigned short motion_fw : 1; - unsigned short motion_back : 1; - unsigned short reserved2 : 2; - unsigned short field_residual : 1; - unsigned short mb_scan_mode : 2; - unsigned short motion_type : 2; - unsigned short reserved1 : 2; - unsigned short motion_vector_sel0 : 1; - unsigned short motion_vector_sel1 : 1; - unsigned short motion_vector_sel2 : 1; - unsigned short motion_vector_sel3 : 1; - } mpeg2data1; - - struct - { - unsigned int mb_data_resid_location : 24; - unsigned int skipped_mb : 8; - } mpeg2data2; - - unsigned short pattern_code; - unsigned char numcoeff[6]; - - XVBAMpeg2MV motion_vector[4]; - -} XVBAMpeg2NonIntraMB; - -/** - * XVBA compressed data type: XVBA_QM_BUFFER - * (H264 and VC1 only) - */ -typedef struct -{ - unsigned char bScalingLists4x4[6][16]; - unsigned char bScalingLists8x8[2][64]; - -} XVBAQuantMatrixAvc; - -#ifdef __cplusplus -} -#endif - -#endif //_XVBA_H diff --git a/packages/x11/driver/xf86-video-fglrx-legacy/unpack b/packages/x11/driver/xf86-video-fglrx-legacy/unpack deleted file mode 100755 index 505888bc86..0000000000 --- a/packages/x11/driver/xf86-video-fglrx-legacy/unpack +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This Program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with OpenELEC.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -require_eglibc $1 - -ZIP_PKG="`echo $PKG_URL | sed 's%.*/\(.*\)$%\1%'`" -[ -d $PKG_BUILD ] && rm -rf $PKG_BUILD - -mkdir -p $BUILD/${PKG_NAME}-${PKG_VERSION} - unzip $SOURCES/$1/$ZIP_PKG -d $BUILD/${PKG_NAME}-${PKG_VERSION} >/dev/null 2>&1 - ATI_PKG=`ls -d $BUILD/${PKG_NAME}-${PKG_VERSION}/amd-driver-installer-*.run` - sh $ATI_PKG --extract $BUILD/$PKG_NAME-$PKG_VERSION - -echo "### Applying upstream patches ###" - -for patch in `ls $PKG_DIR/patches.upstream/*.patch`; do - cat $patch | patch -d \ - `echo $BUILD/$PKG_NAME-$PKG_VERSION | cut -f1 -d\ ` -p1 -done