summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2013-01-08 17:34:02 +0000
committerChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2013-01-08 17:34:02 +0000
commitec316139c0776ae6e3bbd17d6c47ed3306c28212 (patch)
treee2421ab17ca2c8ed06f4ae93dd396d6e89fbcb38 /x11-drivers
parentDrop some old versions. (diff)
downloadhistorical-ec316139c0776ae6e3bbd17d6c47ed3306c28212.tar.gz
historical-ec316139c0776ae6e3bbd17d6c47ed3306c28212.tar.bz2
historical-ec316139c0776ae6e3bbd17d6c47ed3306c28212.zip
Add patch to fix r300 xv issues, bug #446285.
Package-Manager: portage-2.1.11.31/cvs/Linux x86_64
Diffstat (limited to 'x11-drivers')
-rw-r--r--x11-drivers/xf86-video-ati/ChangeLog20
-rw-r--r--x11-drivers/xf86-video-ati/Manifest22
-rw-r--r--x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.0-xorg-server-1.10.patch33
-rw-r--r--x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-evergreen.patch287
-rw-r--r--x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r100.patch179
-rw-r--r--x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r200.patch176
-rw-r--r--x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r300.patch560
-rw-r--r--x11-drivers/xf86-video-ati/files/xf86-video-ati-7.0.0-r300-ring-count.patch34
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.0.ebuild35
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.1.ebuild25
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.2.ebuild25
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.3.ebuild30
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4-r1.ebuild32
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4.ebuild26
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.5.ebuild25
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-6.14.6.ebuild25
-rw-r--r--x11-drivers/xf86-video-ati/xf86-video-ati-7.0.0-r1.ebuild30
17 files changed, 85 insertions, 1479 deletions
diff --git a/x11-drivers/xf86-video-ati/ChangeLog b/x11-drivers/xf86-video-ati/ChangeLog
index 579f77240367..7d81a0e281db 100644
--- a/x11-drivers/xf86-video-ati/ChangeLog
+++ b/x11-drivers/xf86-video-ati/ChangeLog
@@ -1,6 +1,22 @@
# ChangeLog for x11-drivers/xf86-video-ati
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/ChangeLog,v 1.195 2012/12/30 15:15:46 ago Exp $
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/ChangeLog,v 1.196 2013/01/08 17:33:58 chithanh Exp $
+
+*xf86-video-ati-7.0.0-r1 (08 Jan 2013)
+
+ 08 Jan 2013; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+ +files/xf86-video-ati-7.0.0-r300-ring-count.patch,
+ +xf86-video-ati-7.0.0-r1.ebuild,
+ -files/xf86-video-ati-6.14.0-xorg-server-1.10.patch,
+ -files/xf86-video-ati-6.14.4-exa-solid-accel-evergreen.patch,
+ -files/xf86-video-ati-6.14.4-exa-solid-accel-r100.patch,
+ -files/xf86-video-ati-6.14.4-exa-solid-accel-r200.patch,
+ -files/xf86-video-ati-6.14.4-exa-solid-accel-r300.patch,
+ -xf86-video-ati-6.14.0.ebuild, -xf86-video-ati-6.14.1.ebuild,
+ -xf86-video-ati-6.14.2.ebuild, -xf86-video-ati-6.14.3.ebuild,
+ -xf86-video-ati-6.14.4-r1.ebuild, -xf86-video-ati-6.14.4.ebuild,
+ -xf86-video-ati-6.14.5.ebuild, -xf86-video-ati-6.14.6.ebuild:
+ Add patch to fix r300 xv issues, bug #446285.
30 Dec 2012; Agostino Sarubbo <ago@gentoo.org>
xf86-video-ati-6.14.6-r1.ebuild:
diff --git a/x11-drivers/xf86-video-ati/Manifest b/x11-drivers/xf86-video-ati/Manifest
index c145e1776a4e..853667cabf42 100644
--- a/x11-drivers/xf86-video-ati/Manifest
+++ b/x11-drivers/xf86-video-ati/Manifest
@@ -1,30 +1,14 @@
-AUX xf86-video-ati-6.14.0-xorg-server-1.10.patch 1133 SHA256 609c43ad9e9860d4dabbafd14e9c4b96529375b256bf82c4276c20b5b8ab204b SHA512 8410cafc223c291190f898c3c3687a7f4ca4c55b3fb6bc79eef199c0dad19519864ab46c18680b5163f0e5008afc6b9024f5d198f98e5fc28397b13c4718e51a WHIRLPOOL 76a1312c4975c0122b0f04940b5bf80e54805877ca1b5eaee8c093dfaa6986cb5215e616fb75bfd7e44bf66b47d894e0755c9ea51e91c28e7b56afaac914abb9
AUX xf86-video-ati-6.14.3-pcitag.patch 1450 SHA256 05d7407da399a7cc0cfb98f5a8977384754075f2d03b17b3ef5c9d7aad297b1e SHA512 4d2dc6b6b155b542e06e8273c10542834579cb6dd40fa7aee69d91af1707bd99af20e6cd3ca1370c61d58a6d087ce5bf8d54126ee31e7601e3b707c5875efa01 WHIRLPOOL 485792b9f613c2ca097b911089b61b47ff28846615e82d0a52ea7cde870b0846334e8f2583190b95288ff775893ec3b9ef96e07de5735724b920ec0055563dfe
AUX xf86-video-ati-6.14.3-xorg-server-1.12.patch 3637 SHA256 9829b065815b85a805fc537e5e3cab6a4f0f523f5334493619b791c7622d8102 SHA512 2c72bcdb460dc302a15b9e62f232e8d490846f0f086c195ccf1e05cdd3a036b04b7724ccdead1fdd682f97effd12644129b1d1a5f2d61bf6931c41ee12fcc0ba WHIRLPOOL 98725036e468f356521160d9076514db9c45d35a39088a75c8d1f6149e825879e5486b121196ebbb6e2c013be3b1444eed031b690c1da455a218ec6c7f8ec149
-AUX xf86-video-ati-6.14.4-exa-solid-accel-evergreen.patch 10993 SHA256 2bc497c453c5e87f63cde4f224446347c5d730575ebecccc0aa0feba18ce7fd4 SHA512 0e67b38e043d4587b54dbb05fdd5ca5816ed38cb0b02c54f3e1091585ca0759d3d9cc39b675da3db81fb72d22a26e3733d2cb354a8df720b8e508332aa08ef14 WHIRLPOOL 8b7e43b1e478ad5752128d3a058c2a3a5f3a51a2b8f8c08f801b41d8423aa3ea4c16f47cf44bd47746926ec3cce5a80b509fc52cb276751bc5568b5acd245f62
-AUX xf86-video-ati-6.14.4-exa-solid-accel-r100.patch 6527 SHA256 d1d991d7aaef21132ea892757611fbb660dfe64fb6b5ffb1bd33f8b6f2d98342 SHA512 548dc69900b76f3b9eb4674798cad7736dfe9a75972c27c96f431cd2e15f9ebe7173dca3e59e018bdc392fa879e9b2d0a21f9d54479f5a209889b28198ba22c4 WHIRLPOOL 9eaeaa995f356dc8f7a8dac3683476892465cdfd595a3f48e98d54c425496104db367f137e6aa74c16377307d1199ffcfe8715485c0e50edc0232eae75446ef6
-AUX xf86-video-ati-6.14.4-exa-solid-accel-r200.patch 6548 SHA256 0a49ca2a700e90721390eb77e62086aa0c68201ede9db2f9aea21ddc957eb444 SHA512 1f46f12584263053266e39f59720be2950fbfe057d1fcde584f039098294c8499d07b616c10356fbbe1821f444e8a08116b51b2774d0cf378a5ef3f7162b4dfb WHIRLPOOL a55c5145e821e689633ebdf57e6436e93b79fff52d3c0d0aedab48166840e8504f494c083c37d2bb9aab9268962cbe5d7da06cd6d871a7cbe9cadcdf0c2a4614
-AUX xf86-video-ati-6.14.4-exa-solid-accel-r300.patch 20383 SHA256 1ad91f3d120f06beb9d0d905931aeb4086ff7d7342ebbdf681b2d9ffa66169f7 SHA512 bffec3f83b466605ec8b7a62e4c3a882ca095777b7530518eae0d2a97e6d06a0c7216788f5821dfa5185558fc24325080caa7dbc04fd73049698bf63235af014 WHIRLPOOL a637454d3a0fb9101c32b06229a5a7ef139c68e788bc3557b502f2ea112adfc8f85ce718e3d23fee29c3d0a4f0a529c97e0044a4854be94f5ea6514c56dfb3f3
+AUX xf86-video-ati-7.0.0-r300-ring-count.patch 1254 SHA256 a1b51e8351bf8888377aa6fd57ea53e03c578d7c92cee334da0dd881f6ffea2f SHA512 81ab5cb1ce5e2df7db4ca949254f097f3ee23b3d9de80c58182eec89c27ff2e9ff4697525400824619d54785ce56deb6a76a6dea2be68c91f5c246a3e7c2db46 WHIRLPOOL 01ba23b18961c792acbaa476335e09adbec3f434be9249d4e47dd72cebff81fdbff39c63c5d6c31a055d411121854fa682fa02f768b97490487ba7e8f401d3c8
DIST xf86-video-ati-6.13.2.tar.bz2 985673 SHA256 d85f60081e5b71bf19da4ca48bce95a9e9df3635c8540dd2640785bedfbc36ee SHA512 d97ad3429a5e468eef7f0ed2e48a1ff7b839df23cea3bcac5cd4916e590fefebf4bd5cf79f0482d42380db21e8f607ede9d289d25ed67e5312fca076a6350eb0 WHIRLPOOL a41e072edc99c7a0e113ab155a71d0c0a9152efc7ae53aeec62e029c5cb44096405961ff814d40fd7d75e0da2e02258888a35f001578d3864769a7f3fe7726ba
-DIST xf86-video-ati-6.14.0.tar.bz2 1054336 SHA256 9dcaaf83e883808a49f67fc2af1deec3aa163feaa6ce957c1c028e22b959028b SHA512 6b9b544459b4f2a6891d0d73f77b6cf7bc06e78f31654188dfbb14cd057d26910d5f0066bdef62a652d45ae5c1a15b6ef983bcb107e3138d41cdf03068b2dbb0 WHIRLPOOL c2a727e46b843d4d8d2a3528c0d06e8f07d7640cc097a9b3c8190e245adcf514f700a649fe9d876590734eb77f3d83dc44604ffb1c07f94e15cfb017b9aef89d
-DIST xf86-video-ati-6.14.1.tar.bz2 1058696 SHA256 e457285096e1e40f53ae5b58b948906c69add5160cc38ce510f0d15e82d91c75 SHA512 5cda6be4d6bb23fe9e91284dbf41e2a307fe47942f39e83c04d2de6a4fffa9b35fcbbe3e9f79bb4665465a8d74c499fb466fd3451793686107cb43dea0b576f9 WHIRLPOOL 47306aa7bd4a7d7eabc791c2b6a7f0a99c74875a1e5e97fa8cd965e62248aeee148a58faa556b8bb73b856d448c129652e7903ced435688800b77c2343ca3af8
-DIST xf86-video-ati-6.14.2.tar.bz2 1072263 SHA256 017974b622eea3b4483405368492b0c6f178854a9b9753d50e13c578b8a328dc SHA512 e8035fa14a830ba21b9e8338d682c9b7741170bd23e797a01d4d025a4a87f1200b3987c528a7b673ac17b12ef1256067583d17dc5bc5a76737b65dcc8ba3b721 WHIRLPOOL 2027a9e6cf52b791ec5f879d3206c490f074b8a3269322a3f637bea30f9929bc94dc6d14694391e674527256b03da1093b46ab96e975c57a91905a3826769221
DIST xf86-video-ati-6.14.3.tar.bz2 1113119 SHA256 844a2649eff6a3e92aff3e1837ea864f1561b4822b3e5d5ccb27b3b7fb8137b4 SHA512 aa2bf48a88b83e5267c774c25014dee2dbf81e4e9c8390c4bae644d11c079fe8d12fedec47af369a5ede56326aa94c8d7d100de93e58b2332ff4a8728976e49f WHIRLPOOL 3f60af1e13cfa49d35a34e2eebafb25d20d94d20cfe2ac74711a090ec39647a5007378686e5a6cb59c9cb81b6ae9646b8640bf5726301470220e9328713100f2
-DIST xf86-video-ati-6.14.4.tar.bz2 1108681 SHA256 4ffe435ef8fbe0989f6576f04f789e147a2de7fdefc3644e39d5ef626c37ef85 SHA512 68913954607680e299cb798ff58cfdaf2381823778f85d18adf2701439cc1f954f92867c226b51830b3adf8c3967119a989b2e07ff3af7c7b4c043e784c8e078 WHIRLPOOL a6f50f2ea1233bec17929404243f08eda636af9c7a9ba46e1bf1503f14e8d42df15627a3f41909d8b04896f2ce0f5e70d912f1768089b80b10a1d5b08600debe
-DIST xf86-video-ati-6.14.5.tar.bz2 1112274 SHA256 ef879d2845de50cec1aa98e37185271e1d535c0009efd6713ec88206b7197d53 SHA512 00a6858423d92e369f7fad48fbd99265d1b521b018f3cfe877d890df59f10825fe282166bfd1d0b80e6b1d9c90be46c95a2e37e1064374e55842fc2b614c27d9 WHIRLPOOL b24a5c2ee5dfc420429ef80d589d348fcc199cd7ef33733a2d84b5a4c860a8468a5447081e514be1a18eef50d6cab84bf7b79d3ed27af02ba9c26290b8d10560
DIST xf86-video-ati-6.14.6.tar.bz2 1139495 SHA256 aa5286b3e4f0187d7df14785c06dd800255d9405205dbf061da5d77df86bec36 SHA512 7ed64bb3596703f7c575aec37a6918bac251819fe638acc66a29aab7648d8a81dedd8d416f970faa1f757fa8e9e3ccdc43e4499d06271cc2751288040d1d957e WHIRLPOOL 9b72e873c3108daeb10cfc68523eb9bc2c12f5525096f9a2639a7dbeb58fd2912b474b8820172ffc9351458d2e046b43e0d064bb4f4189bb99b06a995f3204e8
DIST xf86-video-ati-7.0.0.tar.bz2 775854 SHA256 c0acc81386425651aae5dfe02d89f935bb63b2a62104da0d88deac3c773ea10e SHA512 f82da3445684aba7f158961fc9882e777c0661ba161a4b923bdf8d3b70a8a16bca08de87af6c7f3943fa6a4308e2aa0ea42b8749a19b52374c1599d669b9512c WHIRLPOOL 4e27614e451fdf5a479695ffe207eb86ea52e45ddfbe5835a5c9912cd58c70968bc118f0586de2f7629183eed1810a70f9bc079763db065f0dc15ae33cd62347
EBUILD xf86-video-ati-6.13.2.ebuild 761 SHA256 94f2fa9d736c4be35f7a092855838830b64443c20f11e0ab18c58567a7a22dc2 SHA512 ec2a57e96ec31ab0adfe10e6a302607e49fe9156077801ed497747e5916e959d06abaa4c5d9ec06d149b3c4095a4dde900737802dc0e054780f425a8f7248323 WHIRLPOOL 3eece809b66129b7f981a63b3205d9ee3c4e00bf244ca7fb7f6de0ee1569baeb4bc9b9934e2315bd5a82a107442ab9358e539c3fce532cebe5a54c68fb0d5ae8
-EBUILD xf86-video-ati-6.14.0.ebuild 819 SHA256 c2df919c39664b05b29c7dd3afd06d138c01db16ba0c894cc931b0b042978d91 SHA512 7332b13dc3d389db5b860ea1b115e3b1139be3c92346ade01b92838f12368d55d01126e4d8871128fdcf695df51cf3308c11a8e8c6a2ef45da5a0731c106bd53 WHIRLPOOL 633401fa7256c6e4115dd4c7cb3c8ba2ac2db477cd00ed9c70a5b0fbf327bfbdd6b2e6fd32504f09eba32604723d198349ad5dc82eea9467cc1cd7ea03d00649
-EBUILD xf86-video-ati-6.14.1.ebuild 551 SHA256 6b6d1eb253fe402c2ea90de4ec0d621e0508f2b4794539e0b5946f7dd4af81c9 SHA512 0fd24cdf1f74daf411a0ecd75900e8ccc6c1595e9000b4891e0e2f18ec6fd33f1df5b1f699b3d87db2e09dab9961f33b40697bcfc957716b4a4a7a095d680420 WHIRLPOOL 37320982b7aea022323cc94aeb0ccd45eb15ca75be87a8386231861812f71a5e1985ae237fac89c5ebc8e3da0eb231f31d72b9c154ef7fd4137f736bad7a83b3
-EBUILD xf86-video-ati-6.14.2.ebuild 553 SHA256 8fcf669215b4c2a21289e305d3840e37bec49d6259632a76a43255c81bf7cffa SHA512 a023ac1642e21fc98b6a623de8b7fab123f8f790fead50f74565e029685de45913b19d5e293c7d83a61b170ea0b30fdce275d0ed55a05968fc53bcd98f7e1aed WHIRLPOOL b2d848b896de194af3c87c9f12a20df58b5fb08cc19a70a1581dce50d43a0f406411e0da7522333529227fc5e5a435dbcc96458b5c37647a3558264d10f2bdf0
EBUILD xf86-video-ati-6.14.3-r1.ebuild 690 SHA256 eb2f5e17498ea861419554e73dad14fc84d5e65e5514af937395220e8124c7f9 SHA512 7933e9321ce37b2c2294a3f8713f27f54b32987b35408f46d36dc12eb7851f6765d8bee633b5d48db2d98b80d0ba7e72c0b05f650966a246604fde80784d0c51 WHIRLPOOL f6dfa15e4467c54d6f22ef955b0964d7a50751ee97d86e5cfdf177f29aa1d79f311d932d465786d1903e853453dd2cd9459f7ecbf94d58eea7621840c6cbfd3b
-EBUILD xf86-video-ati-6.14.3.ebuild 639 SHA256 0eaa1f11ae09baa57533e9f10ecde270ec394ba65b8cd393323f5b3fcb0fa8ca SHA512 c70ff14936348c646513f5906d1c9e18fb640b3f461c2af5e420a775c97540ba72065973c8f21f4122688c5245fb1b3c3cad4db5aca7d6e57c139fdfb64efa95 WHIRLPOOL f773fe06abd429719dccc821e130d01a1d8591f2bbed95e192522fc432bd5a60b100cbbee971784a48d67a61d2ae624920547be7ea8fb8be07968188c256cc30
-EBUILD xf86-video-ati-6.14.4-r1.ebuild 815 SHA256 e9fe10ef14d0e546fe5f67269dccce1b409943cb8425c9e1a734a5c5e6490e2b SHA512 93cd1d8b1a4c97b8419931db3f9a026264e6ba2ad7a3a328aa6047ee65b001e4dd8fae4eb8ac903763895f24bfd3077a765a5feb9f34aaa36f99eda85db277d0 WHIRLPOOL c1ecdc84c8975f51d72467f48b85666f63025469ca6aeaf1d5b71836ff98ef8077cad38b9048bb7e7b62b7114104a20f96c454f7a1aecf93e1d7af6f3b41ab66
-EBUILD xf86-video-ati-6.14.4.ebuild 591 SHA256 0f51d0589866f46681fcc24599634604d0f5e18291a412da8d8571cd700a8712 SHA512 c8fc97c63dd63f0e82ad8705b47d8ca6b4215882b6358c82fdd2279b97ea6ad10fc824732f44442d145d29150d77e0c1a37bc3c21d84d49a7035188a2e667fd6 WHIRLPOOL 3baf03124be338966905391041a44813e8c410cd6d3ae8574d0b20c5d44314e90d7797b028aad571c94a6c628b6d064bf3e933d358d2038d05fdac1b1244b30a
-EBUILD xf86-video-ati-6.14.5.ebuild 582 SHA256 3fa48f037bbb1c9a495536685e68738a4a797349e0b7b3f8a20043ed4e1376e0 SHA512 2ecb491a6348f48c13150cb4c2d430ff51e01cd0177eac32c3e6eee8e9fbd59128a50ad0bf820698ffcd4a428ee98d8c91c8de68773e384c361cb0ae5fd3d76f WHIRLPOOL ee786358dfc235ab6cedc986334507102d379ea4290d9183b8e3c8080c0e46a5862717c46f10f2f65aa06a449c314fa0ca56992e030e120f90203643147dd65a
EBUILD xf86-video-ati-6.14.6-r1.ebuild 758 SHA256 92b23b4b09846a7be12feb13c0298bb4b6adf53ed1148b14238c0a7c359e9ecd SHA512 77776057a9d7920861a3d342c5d78c888567ea64a40c80dbe28671007f86ca5bd9ad6b5b67bb2c69bd8c1c3a0b48e0bbf1fccd6fb5c4b860b9ef74ce777d340d WHIRLPOOL b521cbe002c7f11ff9248e91bf90fe2bcd592d4c792c4d70db769ea6d4274af7ee986e2749536dcea7b0c32d9949898ed67002b21277dbf49eed858bb57ed77f
-EBUILD xf86-video-ati-6.14.6.ebuild 582 SHA256 984b852e26bfcb7c0a1251d568075d3f7a40756b2a3f0752630f0ff4819ef7f3 SHA512 d2a1570948d3967e272087f45dfd202966b6dc1061df9b8cba3899b595930d889ecd007fc5cb843a1031cc5517d3e9ed1e9254acf3509898db82ad011318ec66 WHIRLPOOL 1778c29ec85fd93f42f0b302220e7306362620c5e8107919e3a4f9d7f9b9a4d0a90ceeb90ce47441b143d2b14b2f8e1d22236c2cce0e13e1c4af75dbadcad892
+EBUILD xf86-video-ati-7.0.0-r1.ebuild 688 SHA256 118481939e504c21dff4cadad4f4e70d628b6b0738d44a71c8d5a3e738dd82f7 SHA512 e1578c7d6b0e843dfbbe7efd7966264fd535c09a5cefa92bf0e6c540b4c5fe1d250f32dbd07fda3efef82bcfb5b6e6c6c2adfb15dfac28a6e1a4a4ce471ae52c WHIRLPOOL be09347c08c6dfbcad3b6497a0fadf15d79417c1a4adca92985d48d2977ef784ae5916229d3b6f87da77b6794b0f3f1be984e4f180c2427c21ba829f5c991ae4
EBUILD xf86-video-ati-7.0.0.ebuild 619 SHA256 2d0a76f6b32b4257a5c526e6abc047e462db4ca24aac70cacff9c68f03de6d01 SHA512 b4769186dce44123d947d77ee8b16ff26822fed95e71c1dbea249eba572abb4e521a6dc2ff9cde4155803e355b93a14f383a4a02df623210528b2cd431b1a002 WHIRLPOOL 7af3eef0cfa154fe906b621e0fc19068a0013e180f2329761dd2bc84f02c9cc8b41312d19d8178959a22a856a0bfc5884a858ed29dbdf18b3f2f113aecfd33e8
-MISC ChangeLog 33831 SHA256 16f672aeb73c879c5075d72a4663c5c35c04237189d1f134638153f0b6a77485 SHA512 acc1f157aeab64517bc71124fc5cb2224ef01180a84f6564f807dacee4bf7400bcb452680c18801e3a392b08b0a79c2d4f86a702f0682620972e019a64d1a374 WHIRLPOOL 1e13b2294191c24f4a5ab3ed33427e1f6086959f0dec73d937c9faeb6e678305b99f2e9db97d030f882004ee0a7198a128ca6305eb6bf0ddb353c36edf1817d4
+MISC ChangeLog 34637 SHA256 4f26e8bdf7c6014e96f76f5399a80d9c12d50231ea78edc60f7518070cba35e4 SHA512 5d4308879005646b72122b77be8d4ee826d9bd78f5fee7144c07d467e07c911d2592deb3b669783ea0ac00ce9262d174294fb9982900422d8a0f1712a2b67ccd WHIRLPOOL ff652291f081dfc2e44c7c6bd345304fff9c3ea67a9bd7ea981334b140e15880bd6098ab0dc1c493f40fd8cfe9bb469c44f1cc797994167a5ab022b9129bd55d
MISC metadata.xml 234 SHA256 c576bf25080db3484d07d654f7154894c03e15ba75c1e0a2461e4b3cee64ea3e SHA512 68aca8ec7b1603cc347d814cacf1415dd0eb3211b28e3325a8218c27a47ebe0e8dcb1d336db6054005da5fd9a85c4c3a7b67fababdb2f0a311e4b6b9e82caec7 WHIRLPOOL a72d888c968b4f22f8b37fe083b70ec18bce0942543fe6d1644ed27080ec882122972c78271689f2096ce6615c9a21ee3e4758da8288be6813da0b1efc07d335
diff --git a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.0-xorg-server-1.10.patch b/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.0-xorg-server-1.10.patch
deleted file mode 100644
index 5b47bc05a3d7..000000000000
--- a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.0-xorg-server-1.10.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From ecfdb209afe2aafc378baab8c511f5df7b000270 Mon Sep 17 00:00:00 2001
-From: Sedat Dilek <sedat.dilek@googlemail.com>
-Date: Fri, 25 Feb 2011 20:48:14 +0000
-Subject: UMS: Fix build against xserver 1.10-rc3
-
-This issue was introduced due to last minute backout of RandR-1.4
-in xserver 1.10-rc3.
-
-Switch to "#ifdef RANDR_14_INTERFACE" as suggested by Keith Packard.
-See also <http://lists.x.org/archives/xorg-devel/2011-February/019643.html>.
-
-Note:
-The ddx needs a rebuild as the X video driver ABI changed to version 10.0.
-
-Reported-by: Alex Deucher <alexdeucher@gmail.com>
-CC: Keith Packard <keithp@keithp.com>
-Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com>
----
-diff --git a/src/radeon_output.c b/src/radeon_output.c
-index 15cef06..ccde346 100644
---- a/src/radeon_output.c
-+++ b/src/radeon_output.c
-@@ -1622,7 +1622,7 @@ radeon_set_mode_for_property(xf86OutputPtr output)
- xf86CrtcPtr crtc = output->crtc;
-
- if (crtc->enabled) {
--#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,9,99,901,0)
-+#ifdef RANDR_14_INTERFACE
- xf86CrtcSetRec crtc_set_rec;
-
- crtc_set_rec.flags = (XF86CrtcSetMode |
---
-cgit v0.8.3-6-g21f6
diff --git a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-evergreen.patch b/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-evergreen.patch
deleted file mode 100644
index 6e97a38363f8..000000000000
--- a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-evergreen.patch
+++ /dev/null
@@ -1,287 +0,0 @@
-From cac2d7ed54918579418fc762558497d3ec547fad Mon Sep 17 00:00:00 2001
-From: Alex Deucher <alexander.deucher@amd.com>
-Date: Sat, 14 Apr 2012 12:53:39 +0000
-Subject: EXA: Support acceleration of solid pictures on Evergreen/NI.
-
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
----
-diff --git a/src/evergreen_exa.c b/src/evergreen_exa.c
-index cee3ec2..61b47a4 100644
---- a/src/evergreen_exa.c
-+++ b/src/evergreen_exa.c
-@@ -748,17 +748,8 @@ static Bool EVERGREENCheckCompositeTexture(PicturePtr pPict,
- int op,
- int unit)
- {
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
- unsigned int i;
-- int max_tex_w, max_tex_h;
--
-- max_tex_w = 16384;
-- max_tex_h = 16384;
--
-- if ((w > max_tex_w) || (h > max_tex_h))
-- RADEON_FALLBACK(("Picture w/h too large (%dx%d)\n", w, h));
-
- for (i = 0; i < sizeof(EVERGREENTexFormats) / sizeof(EVERGREENTexFormats[0]); i++) {
- if (EVERGREENTexFormats[i].fmt == pPict->format)
-@@ -798,9 +789,16 @@ static void EVERGREENXFormSetup(PicturePtr pPict, PixmapPtr pPix,
- ScrnInfoPtr pScrn = xf86Screens[pPix->drawable.pScreen->myNum];
- RADEONInfoPtr info = RADEONPTR(pScrn);
- struct radeon_accel_state *accel_state = info->accel_state;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
- int const_offset = unit * 8;
-+ int w, h;
-+
-+ if (pPict->pDrawable) {
-+ w = pPict->pDrawable->width;
-+ h = pPict->pDrawable->height;
-+ } else {
-+ w = 1;
-+ h = 1;
-+ }
-
- if (pPict->transform != 0) {
- accel_state->is_transform[unit] = TRUE;
-@@ -837,9 +835,7 @@ static Bool EVERGREENTextureSetup(PicturePtr pPict, PixmapPtr pPix,
- ScrnInfoPtr pScrn = xf86Screens[pPix->drawable.pScreen->myNum];
- RADEONInfoPtr info = RADEONPTR(pScrn);
- struct radeon_accel_state *accel_state = info->accel_state;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
-- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ unsigned int repeatType;
- unsigned int i;
- tex_resource_t tex_res;
- tex_sampler_t tex_samp;
-@@ -854,9 +850,17 @@ static Bool EVERGREENTextureSetup(PicturePtr pPict, PixmapPtr pPix,
- }
-
- /* Texture */
-+ if (pPict->pDrawable) {
-+ tex_res.w = pPict->pDrawable->width;
-+ tex_res.h = pPict->pDrawable->height;
-+ repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ } else {
-+ tex_res.w = 1;
-+ tex_res.h = 1;
-+ repeatType = RepeatNormal;
-+ }
-+
- tex_res.id = unit;
-- tex_res.w = w;
-- tex_res.h = h;
- tex_res.pitch = accel_state->src_obj[unit].pitch;
- tex_res.depth = 0;
- tex_res.dim = SQ_TEX_DIM_2D;
-@@ -1054,33 +1058,30 @@ static Bool EVERGREENCheckComposite(int op, PicturePtr pSrcPicture,
- {
- uint32_t tmp1;
- PixmapPtr pSrcPixmap, pDstPixmap;
-- int max_tex_w, max_tex_h, max_dst_w, max_dst_h;
-
- /* Check for unsupported compositing operations. */
- if (op >= (int) (sizeof(EVERGREENBlendOp) / sizeof(EVERGREENBlendOp[0])))
- RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op));
-
-- if (!pSrcPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
-+ if (pSrcPicture->pDrawable) {
-+ pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
-
-- pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
--
-- max_tex_w = 8192;
-- max_tex_h = 8192;
-- max_dst_w = 8192;
-- max_dst_h = 8192;
-+ if (pSrcPixmap->drawable.width >= 16384 ||
-+ pSrcPixmap->drawable.height >= 16384) {
-+ RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-+ pSrcPixmap->drawable.width,
-+ pSrcPixmap->drawable.height));
-+ }
-
-- if (pSrcPixmap->drawable.width >= max_tex_w ||
-- pSrcPixmap->drawable.height >= max_tex_h) {
-- RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-- pSrcPixmap->drawable.width,
-- pSrcPixmap->drawable.height));
-- }
-+ if (!EVERGREENCheckCompositeTexture(pSrcPicture, pDstPicture, op, 0))
-+ return FALSE;
-+ } else if (pSrcPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-
- pDstPixmap = RADEONGetDrawablePixmap(pDstPicture->pDrawable);
-
-- if (pDstPixmap->drawable.width >= max_dst_w ||
-- pDstPixmap->drawable.height >= max_dst_h) {
-+ if (pDstPixmap->drawable.width >= 16384 ||
-+ pDstPixmap->drawable.height >= 16384) {
- RADEON_FALLBACK(("Dest w/h too large (%d,%d).\n",
- pDstPixmap->drawable.width,
- pDstPixmap->drawable.height));
-@@ -1089,38 +1090,35 @@ static Bool EVERGREENCheckComposite(int op, PicturePtr pSrcPicture,
- if (pMaskPicture) {
- PixmapPtr pMaskPixmap;
-
-- if (!pMaskPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
--
-- pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-+ if (pMaskPicture->pDrawable) {
-+ pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-
-- if (pMaskPixmap->drawable.width >= max_tex_w ||
-- pMaskPixmap->drawable.height >= max_tex_h) {
-- RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-- pMaskPixmap->drawable.width,
-- pMaskPixmap->drawable.height));
-- }
-+ if (pMaskPixmap->drawable.width >= 16384 ||
-+ pMaskPixmap->drawable.height >= 16384) {
-+ RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-+ pMaskPixmap->drawable.width,
-+ pMaskPixmap->drawable.height));
-+ }
-
-- if (pMaskPicture->componentAlpha) {
-- /* Check if it's component alpha that relies on a source alpha and
-- * on the source value. We can only get one of those into the
-- * single source value that we get to blend with.
-- */
-- if (EVERGREENBlendOp[op].src_alpha &&
-- (EVERGREENBlendOp[op].blend_cntl & COLOR_SRCBLEND_mask) !=
-- (BLEND_ZERO << COLOR_SRCBLEND_shift)) {
-- RADEON_FALLBACK(("Component alpha not supported with source "
-- "alpha and source value blending.\n"));
-+ if (pMaskPicture->componentAlpha) {
-+ /* Check if it's component alpha that relies on a source alpha and
-+ * on the source value. We can only get one of those into the
-+ * single source value that we get to blend with.
-+ */
-+ if (EVERGREENBlendOp[op].src_alpha &&
-+ (EVERGREENBlendOp[op].blend_cntl & COLOR_SRCBLEND_mask) !=
-+ (BLEND_ZERO << COLOR_SRCBLEND_shift)) {
-+ RADEON_FALLBACK(("Component alpha not supported with source "
-+ "alpha and source value blending.\n"));
-+ }
- }
-- }
-
-- if (!EVERGREENCheckCompositeTexture(pMaskPicture, pDstPicture, op, 1))
-- return FALSE;
-+ if (!EVERGREENCheckCompositeTexture(pMaskPicture, pDstPicture, op, 1))
-+ return FALSE;
-+ } else if (pMaskPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
- }
-
-- if (!EVERGREENCheckCompositeTexture(pSrcPicture, pDstPicture, op, 0))
-- return FALSE;
--
- if (!EVERGREENGetDestFormat(pDstPicture, &tmp1))
- return FALSE;
-
-@@ -1132,7 +1130,8 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture,
- PicturePtr pMaskPicture, PicturePtr pDstPicture,
- PixmapPtr pSrc, PixmapPtr pMask, PixmapPtr pDst)
- {
-- ScrnInfoPtr pScrn = xf86Screens[pSrc->drawable.pScreen->myNum];
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
- RADEONInfoPtr info = RADEONPTR(pScrn);
- struct radeon_accel_state *accel_state = info->accel_state;
- uint32_t dst_format;
-@@ -1142,13 +1141,19 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture,
- struct r600_accel_object src_obj, mask_obj, dst_obj;
- float *cbuf;
-
-- if (pDst->drawable.bitsPerPixel < 8 || pSrc->drawable.bitsPerPixel < 8)
-+ if (pDst->drawable.bitsPerPixel < 8 || (pSrc && pSrc->drawable.bitsPerPixel < 8))
- return FALSE;
-
-+ if (!pSrc) {
-+ pSrc = RADEONSolidPixmap(pScreen, pSrcPicture->pSourcePict->solidFill.color);
-+ if (!pSrc)
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+
- src_obj.offset = 0;
- dst_obj.offset = 0;
-- src_obj.bo = radeon_get_pixmap_bo(pSrc);
- dst_obj.bo = radeon_get_pixmap_bo(pDst);
-+ src_obj.bo = radeon_get_pixmap_bo(pSrc);
- dst_obj.surface = radeon_get_pixmap_surface(pDst);
- src_obj.surface = radeon_get_pixmap_surface(pSrc);
- dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst);
-@@ -1166,7 +1171,15 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture,
- dst_obj.bpp = pDst->drawable.bitsPerPixel;
- dst_obj.domain = RADEON_GEM_DOMAIN_VRAM;
-
-- if (pMask) {
-+ if (pMaskPicture) {
-+ if (!pMask) {
-+ pMask = RADEONSolidPixmap(pScreen, pMaskPicture->pSourcePict->solidFill.color);
-+ if (!pMask) {
-+ if (!pSrcPicture->pDrawable)
-+ pScreen->DestroyPixmap(pSrc);
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+ }
- mask_obj.offset = 0;
- mask_obj.bo = radeon_get_pixmap_bo(pMask);
- mask_obj.tiling_flags = radeon_get_pixmap_tiling(pMask);
-@@ -1363,11 +1376,9 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture,
- return TRUE;
- }
-
--static void EVERGREENDoneComposite(PixmapPtr pDst)
-+static void EVERGREENFinishComposite(ScrnInfoPtr pScrn, PixmapPtr pDst,
-+ struct radeon_accel_state *accel_state)
- {
-- ScrnInfoPtr pScrn = xf86Screens[pDst->drawable.pScreen->myNum];
-- RADEONInfoPtr info = RADEONPTR(pScrn);
-- struct radeon_accel_state *accel_state = info->accel_state;
- int vtx_size;
-
- if (accel_state->vsync)
-@@ -1381,6 +1392,22 @@ static void EVERGREENDoneComposite(PixmapPtr pDst)
- evergreen_finish_op(pScrn, vtx_size);
- }
-
-+static void EVERGREENDoneComposite(PixmapPtr pDst)
-+{
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
-+ RADEONInfoPtr info = RADEONPTR(pScrn);
-+ struct radeon_accel_state *accel_state = info->accel_state;
-+
-+ EVERGREENFinishComposite(pScrn, pDst, accel_state);
-+
-+ if (!accel_state->src_pic->pDrawable)
-+ pScreen->DestroyPixmap(accel_state->src_pix);
-+
-+ if (accel_state->msk_pic && !accel_state->msk_pic->pDrawable)
-+ pScreen->DestroyPixmap(accel_state->msk_pix);
-+}
-+
- static void EVERGREENComposite(PixmapPtr pDst,
- int srcX, int srcY,
- int maskX, int maskY,
-@@ -1393,7 +1420,7 @@ static void EVERGREENComposite(PixmapPtr pDst,
- float *vb;
-
- if (CS_FULL(info->cs)) {
-- EVERGREENDoneComposite(info->accel_state->dst_pix);
-+ EVERGREENFinishComposite(pScrn, pDst, info->accel_state);
- radeon_cs_flush_indirect(pScrn);
- EVERGREENPrepareComposite(info->accel_state->composite_op,
- info->accel_state->src_pic,
---
-cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r100.patch b/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r100.patch
deleted file mode 100644
index 2397d083ef7a..000000000000
--- a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r100.patch
+++ /dev/null
@@ -1,179 +0,0 @@
-From a7754b076e355fef3aea082b6e2d3aefbb8e7a9b Mon Sep 17 00:00:00 2001
-From: Alex Deucher <alexander.deucher@amd.com>
-Date: Fri, 13 Apr 2012 17:24:46 +0000
-Subject: EXA: Support acceleration of solid pictures on R1xx.
-
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
----
-diff --git a/src/radeon_exa_render.c b/src/radeon_exa_render.c
-index b6cc9e4..451a625 100644
---- a/src/radeon_exa_render.c
-+++ b/src/radeon_exa_render.c
-@@ -338,17 +338,8 @@ static Bool R100CheckCompositeTexture(PicturePtr pPict,
- int unit)
- {
- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
- int i;
-
-- /* r100 limit should be 2048, there are issues with 2048
-- * see 197a62704742a4a19736c2637ac92d1dc5ab34ed
-- */
--
-- if ((w > 2047) || (h > 2047))
-- RADEON_FALLBACK(("Picture w/h too large (%dx%d)\n", w, h));
--
- for (i = 0; i < sizeof(R100TexFormats) / sizeof(R100TexFormats[0]); i++) {
- if (R100TexFormats[i].fmt == pPict->format)
- break;
-@@ -357,7 +348,7 @@ static Bool R100CheckCompositeTexture(PicturePtr pPict,
- RADEON_FALLBACK(("Unsupported picture format 0x%x\n",
- (int)pPict->format));
-
-- if (!RADEONCheckTexturePOT(pPict, unit == 0))
-+ if (pPict->pDrawable && !RADEONCheckTexturePOT(pPict, unit == 0))
- return FALSE;
-
- if (pPict->filter != PictFilterNearest &&
-@@ -392,15 +383,24 @@ static Bool FUNC_NAME(R100TextureSetup)(PicturePtr pPict, PixmapPtr pPix,
- {
- RINFO_FROM_SCREEN(pPix->drawable.pScreen);
- uint32_t txfilter, txformat, txoffset, txpitch;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
-- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-- Bool repeat = (repeatType == RepeatNormal || repeatType == RepeatReflect) &&
-- !(unit == 0 && (info->accel_state->need_src_tile_x || info->accel_state->need_src_tile_y));
-- int i;
-+ unsigned int repeatType;
-+ Bool repeat;
-+ int i, w, h;
- struct radeon_exa_pixmap_priv *driver_priv;
- ACCEL_PREAMBLE();
-
-+ if (pPict->pDrawable) {
-+ w = pPict->pDrawable->width;
-+ h = pPict->pDrawable->height;
-+ repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ } else {
-+ w = h = 1;
-+ repeatType = RepeatNormal;
-+ }
-+
-+ repeat = (repeatType == RepeatNormal || repeatType == RepeatReflect) &&
-+ !(unit == 0 && (info->accel_state->need_src_tile_x || info->accel_state->need_src_tile_y));
-+
- txpitch = exaGetPixmapPitch(pPix);
- txoffset = 0;
-
-@@ -510,22 +510,6 @@ static Bool R100CheckComposite(int op, PicturePtr pSrcPicture,
- if (op >= sizeof(RadeonBlendOp) / sizeof(RadeonBlendOp[0]))
- RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op));
-
-- if (!pSrcPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
--
-- /* r100 limit should be 2048, there are issues with 2048
-- * see 197a62704742a4a19736c2637ac92d1dc5ab34ed
-- */
--
-- pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
--
-- if (pSrcPixmap->drawable.width > 2047 ||
-- pSrcPixmap->drawable.height > 2047) {
-- RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-- pSrcPixmap->drawable.width,
-- pSrcPixmap->drawable.height));
-- }
--
- pDstPixmap = RADEONGetDrawablePixmap(pDstPicture->pDrawable);
-
- if (pDstPixmap->drawable.width > 2047 ||
-@@ -535,20 +519,35 @@ static Bool R100CheckComposite(int op, PicturePtr pSrcPicture,
- pDstPixmap->drawable.height));
- }
-
-+ if (pSrcPicture->pDrawable) {
-+ /* r100 limit should be 2048, there are issues with 2048
-+ * see 197a62704742a4a19736c2637ac92d1dc5ab34ed
-+ */
-+ pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
-+
-+ if (pSrcPixmap->drawable.width > 2047 ||
-+ pSrcPixmap->drawable.height > 2047) {
-+ RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-+ pSrcPixmap->drawable.width,
-+ pSrcPixmap->drawable.height));
-+ }
-+ } else if (pSrcPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-+
- if (pMaskPicture) {
- PixmapPtr pMaskPixmap;
-
-- if (!pMaskPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
--
-- pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-+ if (pMaskPicture->pDrawable) {
-+ pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-
-- if (pMaskPixmap->drawable.width > 2047 ||
-- pMaskPixmap->drawable.height > 2047) {
-- RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-- pMaskPixmap->drawable.width,
-- pMaskPixmap->drawable.height));
-- }
-+ if (pMaskPixmap->drawable.width > 2047 ||
-+ pMaskPixmap->drawable.height > 2047) {
-+ RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-+ pMaskPixmap->drawable.width,
-+ pMaskPixmap->drawable.height));
-+ }
-+ } else if (pMaskPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-
- if (pMaskPicture->componentAlpha) {
- /* Check if it's component alpha that relies on a source alpha and
-@@ -624,7 +623,8 @@ static Bool FUNC_NAME(R100PrepareComposite)(int op,
- PixmapPtr pMask,
- PixmapPtr pDst)
- {
-- RINFO_FROM_SCREEN(pDst->drawable.pScreen);
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ RINFO_FROM_SCREEN(pScreen);
- uint32_t dst_format, dst_pitch, colorpitch;
- uint32_t pp_cntl, blendcntl, cblend, ablend;
- int pixel_shift;
-@@ -648,12 +648,27 @@ static Bool FUNC_NAME(R100PrepareComposite)(int op,
-
- CHECK_OFFSET(pDst, 0x0f, "destination");
-
-+ if (!pSrc) {
-+ pSrc = RADEONSolidPixmap(pScreen, cpu_to_le32(pSrcPicture->pSourcePict->solidFill.color));
-+ if (!pSrc)
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+
- if (((dst_pitch >> pixel_shift) & 0x7) != 0)
- RADEON_FALLBACK(("Bad destination pitch 0x%x\n", (int)dst_pitch));
-
- if (!RADEONSetupSourceTile(pSrcPicture, pSrc, FALSE, TRUE))
- return FALSE;
-
-+ if (pMaskPicture && !pMask) {
-+ pMask = RADEONSolidPixmap(pScreen, cpu_to_le32(pMaskPicture->pSourcePict->solidFill.color));
-+ if (!pMask) {
-+ if (!pSrcPicture->pDrawable)
-+ pScreen->DestroyPixmap(pSrc);
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+ }
-+
- RADEONPrepareCompositeCS(op, pSrcPicture, pMaskPicture, pDstPicture,
- pSrc, pMask, pDst);
-
---
-cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r200.patch b/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r200.patch
deleted file mode 100644
index ff744eecfe01..000000000000
--- a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r200.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-From 0bda305f7ab2a4720b3fea3f318ab2a73be151e5 Mon Sep 17 00:00:00 2001
-From: Alex Deucher <alexander.deucher@amd.com>
-Date: Fri, 13 Apr 2012 17:28:10 +0000
-Subject: EXA: Support acceleration of solid pictures on R2xx.
-
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
----
-diff --git a/src/radeon_exa_render.c b/src/radeon_exa_render.c
-index 451a625..7f1a3ff 100644
---- a/src/radeon_exa_render.c
-+++ b/src/radeon_exa_render.c
-@@ -756,17 +756,8 @@ static Bool R200CheckCompositeTexture(PicturePtr pPict,
- int unit)
- {
- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
- int i;
-
-- /* r200 limit should be 2048, there are issues with 2048
-- * see bug 19269
-- */
--
-- if ((w > 2047) || (h > 2047))
-- RADEON_FALLBACK(("Picture w/h too large (%dx%d)\n", w, h));
--
- for (i = 0; i < sizeof(R200TexFormats) / sizeof(R200TexFormats[0]); i++)
- {
- if (R200TexFormats[i].fmt == pPict->format)
-@@ -776,7 +767,7 @@ static Bool R200CheckCompositeTexture(PicturePtr pPict,
- RADEON_FALLBACK(("Unsupported picture format 0x%x\n",
- (int)pPict->format));
-
-- if (!RADEONCheckTexturePOT(pPict, unit == 0))
-+ if (pPict->pDrawable && !RADEONCheckTexturePOT(pPict, unit == 0))
- return FALSE;
-
- if (pPict->filter != PictFilterNearest &&
-@@ -809,15 +800,24 @@ static Bool FUNC_NAME(R200TextureSetup)(PicturePtr pPict, PixmapPtr pPix,
- {
- RINFO_FROM_SCREEN(pPix->drawable.pScreen);
- uint32_t txfilter, txformat, txoffset, txpitch;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
-- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-- Bool repeat = (repeatType == RepeatNormal || repeatType == RepeatReflect) &&
-- !(unit == 0 && (info->accel_state->need_src_tile_x || info->accel_state->need_src_tile_y));
-- int i;
-+ unsigned int repeatType;
-+ Bool repeat;
-+ int i, w, h;
- struct radeon_exa_pixmap_priv *driver_priv;
- ACCEL_PREAMBLE();
-
-+ if (pPict->pDrawable) {
-+ w = pPict->pDrawable->width;
-+ h = pPict->pDrawable->height;
-+ repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ } else {
-+ w = h = 1;
-+ repeatType = RepeatNormal;
-+ }
-+
-+ repeat = (repeatType == RepeatNormal || repeatType == RepeatReflect) &&
-+ !(unit == 0 && (info->accel_state->need_src_tile_x || info->accel_state->need_src_tile_y));
-+
- txpitch = exaGetPixmapPitch(pPix);
-
- txoffset = 0;
-@@ -926,22 +926,6 @@ static Bool R200CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP
- if (op >= sizeof(RadeonBlendOp) / sizeof(RadeonBlendOp[0]))
- RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op));
-
-- if (!pSrcPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
--
-- /* r200 limit should be 2048, there are issues with 2048
-- * see bug 19269
-- */
--
-- pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
--
-- if (pSrcPixmap->drawable.width > 2047 ||
-- pSrcPixmap->drawable.height > 2047) {
-- RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-- pSrcPixmap->drawable.width,
-- pSrcPixmap->drawable.height));
-- }
--
- pDstPixmap = RADEONGetDrawablePixmap(pDstPicture->pDrawable);
-
- if (pDstPixmap->drawable.width > 2047 ||
-@@ -951,20 +935,35 @@ static Bool R200CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP
- pDstPixmap->drawable.height));
- }
-
-+ if (pSrcPicture->pDrawable) {
-+ /* r200 limit should be 2048, there are issues with 2048
-+ * see 197a62704742a4a19736c2637ac92d1dc5ab34ed
-+ */
-+ pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
-+
-+ if (pSrcPixmap->drawable.width > 2047 ||
-+ pSrcPixmap->drawable.height > 2047) {
-+ RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-+ pSrcPixmap->drawable.width,
-+ pSrcPixmap->drawable.height));
-+ }
-+ } else if (pSrcPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-+
- if (pMaskPicture) {
- PixmapPtr pMaskPixmap;
-
-- if (!pMaskPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
--
-- pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-+ if (pMaskPicture->pDrawable) {
-+ pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-
-- if (pMaskPixmap->drawable.width > 2047 ||
-- pMaskPixmap->drawable.height > 2047) {
-- RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-- pMaskPixmap->drawable.width,
-- pMaskPixmap->drawable.height));
-- }
-+ if (pMaskPixmap->drawable.width > 2047 ||
-+ pMaskPixmap->drawable.height > 2047) {
-+ RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-+ pMaskPixmap->drawable.width,
-+ pMaskPixmap->drawable.height));
-+ }
-+ } else if (pMaskPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-
- if (pMaskPicture->componentAlpha) {
- /* Check if it's component alpha that relies on a source alpha and
-@@ -997,7 +996,8 @@ static Bool FUNC_NAME(R200PrepareComposite)(int op, PicturePtr pSrcPicture,
- PicturePtr pMaskPicture, PicturePtr pDstPicture,
- PixmapPtr pSrc, PixmapPtr pMask, PixmapPtr pDst)
- {
-- RINFO_FROM_SCREEN(pDst->drawable.pScreen);
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ RINFO_FROM_SCREEN(pScreen);
- uint32_t dst_format, dst_pitch;
- uint32_t pp_cntl, blendcntl, cblend, ablend, colorpitch;
- int pixel_shift;
-@@ -1024,9 +1024,24 @@ static Bool FUNC_NAME(R200PrepareComposite)(int op, PicturePtr pSrcPicture,
- if (((dst_pitch >> pixel_shift) & 0x7) != 0)
- RADEON_FALLBACK(("Bad destination pitch 0x%x\n", (int)dst_pitch));
-
-+ if (!pSrc) {
-+ pSrc = RADEONSolidPixmap(pScreen, cpu_to_le32(pSrcPicture->pSourcePict->solidFill.color));
-+ if (!pSrc)
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+
- if (!RADEONSetupSourceTile(pSrcPicture, pSrc, FALSE, TRUE))
- return FALSE;
-
-+ if (pMaskPicture && !pMask) {
-+ pMask = RADEONSolidPixmap(pScreen, cpu_to_le32(pMaskPicture->pSourcePict->solidFill.color));
-+ if (!pMask) {
-+ if (!pSrcPicture->pDrawable)
-+ pScreen->DestroyPixmap(pSrc);
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+ }
-+
- RADEONPrepareCompositeCS(op, pSrcPicture, pMaskPicture, pDstPicture,
- pSrc, pMask, pDst);
-
---
-cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r300.patch b/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r300.patch
deleted file mode 100644
index 819173c5ffe8..000000000000
--- a/x11-drivers/xf86-video-ati/files/xf86-video-ati-6.14.4-exa-solid-accel-r300.patch
+++ /dev/null
@@ -1,560 +0,0 @@
-From d88b9700137ee407c483f263bb55c77cd6f92fef Mon Sep 17 00:00:00 2001
-From: Michel Dänzer <michel.daenzer@amd.com>
-Date: Fri, 13 Apr 2012 07:35:38 +0000
-Subject: EXA: Support acceleration of solid pictures on R3xx-R7xx.
-
-Allocate 1x1 scratch pixmaps to hold the solid picture colours.
-
-Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
----
-diff --git a/src/r600_exa.c b/src/r600_exa.c
-index e1eb62f..c3ae553 100644
---- a/src/r600_exa.c
-+++ b/src/r600_exa.c
-@@ -901,17 +901,8 @@ static Bool R600CheckCompositeTexture(PicturePtr pPict,
- int op,
- int unit)
- {
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
- unsigned int i;
-- int max_tex_w, max_tex_h;
--
-- max_tex_w = 8192;
-- max_tex_h = 8192;
--
-- if ((w > max_tex_w) || (h > max_tex_h))
-- RADEON_FALLBACK(("Picture w/h too large (%dx%d)\n", w, h));
-
- for (i = 0; i < sizeof(R600TexFormats) / sizeof(R600TexFormats[0]); i++) {
- if (R600TexFormats[i].fmt == pPict->format)
-@@ -951,9 +942,7 @@ static Bool R600TextureSetup(PicturePtr pPict, PixmapPtr pPix,
- ScrnInfoPtr pScrn = xf86Screens[pPix->drawable.pScreen->myNum];
- RADEONInfoPtr info = RADEONPTR(pScrn);
- struct radeon_accel_state *accel_state = info->accel_state;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
-- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ unsigned int repeatType;
- unsigned int i;
- tex_resource_t tex_res;
- tex_sampler_t tex_samp;
-@@ -969,9 +958,16 @@ static Bool R600TextureSetup(PicturePtr pPict, PixmapPtr pPix,
- }
-
- /* Texture */
-+ if (pPict->pDrawable) {
-+ tex_res.w = pPict->pDrawable->width;
-+ tex_res.h = pPict->pDrawable->height;
-+ repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ } else {
-+ tex_res.w = 1;
-+ tex_res.h = 1;
-+ repeatType = RepeatNormal;
-+ }
- tex_res.id = unit;
-- tex_res.w = w;
-- tex_res.h = h;
- tex_res.pitch = accel_state->src_obj[unit].pitch;
- tex_res.depth = 0;
- tex_res.dim = SQ_TEX_DIM_2D;
-@@ -1170,24 +1166,24 @@ static Bool R600TextureSetup(PicturePtr pPict, PixmapPtr pPix,
- vs_alu_consts[0] = xFixedToFloat(pPict->transform->matrix[0][0]);
- vs_alu_consts[1] = xFixedToFloat(pPict->transform->matrix[0][1]);
- vs_alu_consts[2] = xFixedToFloat(pPict->transform->matrix[0][2]);
-- vs_alu_consts[3] = 1.0 / w;
-+ vs_alu_consts[3] = 1.0 / tex_res.w;
-
- vs_alu_consts[4] = xFixedToFloat(pPict->transform->matrix[1][0]);
- vs_alu_consts[5] = xFixedToFloat(pPict->transform->matrix[1][1]);
- vs_alu_consts[6] = xFixedToFloat(pPict->transform->matrix[1][2]);
-- vs_alu_consts[7] = 1.0 / h;
-+ vs_alu_consts[7] = 1.0 / tex_res.h;
- } else {
- accel_state->is_transform[unit] = FALSE;
-
- vs_alu_consts[0] = 1.0;
- vs_alu_consts[1] = 0.0;
- vs_alu_consts[2] = 0.0;
-- vs_alu_consts[3] = 1.0 / w;
-+ vs_alu_consts[3] = 1.0 / tex_res.w;
-
- vs_alu_consts[4] = 0.0;
- vs_alu_consts[5] = 1.0;
- vs_alu_consts[6] = 0.0;
-- vs_alu_consts[7] = 1.0 / h;
-+ vs_alu_consts[7] = 1.0 / tex_res.h;
- }
-
- /* VS alu constants */
-@@ -1202,33 +1198,30 @@ static Bool R600CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP
- {
- uint32_t tmp1;
- PixmapPtr pSrcPixmap, pDstPixmap;
-- int max_tex_w, max_tex_h, max_dst_w, max_dst_h;
-
- /* Check for unsupported compositing operations. */
- if (op >= (int) (sizeof(R600BlendOp) / sizeof(R600BlendOp[0])))
- RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op));
-
-- if (!pSrcPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
--
-- pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
-+ if (pSrcPicture->pDrawable) {
-+ pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
-
-- max_tex_w = 8192;
-- max_tex_h = 8192;
-- max_dst_w = 8192;
-- max_dst_h = 8192;
-+ if (pSrcPixmap->drawable.width >= 8192 ||
-+ pSrcPixmap->drawable.height >= 8192) {
-+ RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-+ pSrcPixmap->drawable.width,
-+ pSrcPixmap->drawable.height));
-+ }
-
-- if (pSrcPixmap->drawable.width >= max_tex_w ||
-- pSrcPixmap->drawable.height >= max_tex_h) {
-- RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-- pSrcPixmap->drawable.width,
-- pSrcPixmap->drawable.height));
-- }
-+ if (!R600CheckCompositeTexture(pSrcPicture, pDstPicture, op, 0))
-+ return FALSE;
-+ } else if (pSrcPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-
- pDstPixmap = RADEONGetDrawablePixmap(pDstPicture->pDrawable);
-
-- if (pDstPixmap->drawable.width >= max_dst_w ||
-- pDstPixmap->drawable.height >= max_dst_h) {
-+ if (pDstPixmap->drawable.width >= 8192 ||
-+ pDstPixmap->drawable.height >= 8192) {
- RADEON_FALLBACK(("Dest w/h too large (%d,%d).\n",
- pDstPixmap->drawable.width,
- pDstPixmap->drawable.height));
-@@ -1237,38 +1230,35 @@ static Bool R600CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP
- if (pMaskPicture) {
- PixmapPtr pMaskPixmap;
-
-- if (!pMaskPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
-+ if (pMaskPicture->pDrawable) {
-+ pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-
-- pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
--
-- if (pMaskPixmap->drawable.width >= max_tex_w ||
-- pMaskPixmap->drawable.height >= max_tex_h) {
-- RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-- pMaskPixmap->drawable.width,
-- pMaskPixmap->drawable.height));
-- }
-+ if (pMaskPixmap->drawable.width >= 8192 ||
-+ pMaskPixmap->drawable.height >= 8192) {
-+ RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-+ pMaskPixmap->drawable.width,
-+ pMaskPixmap->drawable.height));
-+ }
-
-- if (pMaskPicture->componentAlpha) {
-- /* Check if it's component alpha that relies on a source alpha and
-- * on the source value. We can only get one of those into the
-- * single source value that we get to blend with.
-- */
-- if (R600BlendOp[op].src_alpha &&
-- (R600BlendOp[op].blend_cntl & COLOR_SRCBLEND_mask) !=
-- (BLEND_ZERO << COLOR_SRCBLEND_shift)) {
-- RADEON_FALLBACK(("Component alpha not supported with source "
-- "alpha and source value blending.\n"));
-+ if (pMaskPicture->componentAlpha) {
-+ /* Check if it's component alpha that relies on a source alpha and
-+ * on the source value. We can only get one of those into the
-+ * single source value that we get to blend with.
-+ */
-+ if (R600BlendOp[op].src_alpha &&
-+ (R600BlendOp[op].blend_cntl & COLOR_SRCBLEND_mask) !=
-+ (BLEND_ZERO << COLOR_SRCBLEND_shift)) {
-+ RADEON_FALLBACK(("Component alpha not supported with source "
-+ "alpha and source value blending.\n"));
-+ }
- }
-- }
-
-- if (!R600CheckCompositeTexture(pMaskPicture, pDstPicture, op, 1))
-- return FALSE;
-+ if (!R600CheckCompositeTexture(pMaskPicture, pDstPicture, op, 1))
-+ return FALSE;
-+ } else if (pMaskPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
- }
-
-- if (!R600CheckCompositeTexture(pSrcPicture, pDstPicture, op, 0))
-- return FALSE;
--
- if (!R600GetDestFormat(pDstPicture, &tmp1))
- return FALSE;
-
-@@ -1280,7 +1270,8 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture,
- PicturePtr pMaskPicture, PicturePtr pDstPicture,
- PixmapPtr pSrc, PixmapPtr pMask, PixmapPtr pDst)
- {
-- ScrnInfoPtr pScrn = xf86Screens[pSrc->drawable.pScreen->myNum];
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
- RADEONInfoPtr info = RADEONPTR(pScrn);
- struct radeon_accel_state *accel_state = info->accel_state;
- uint32_t dst_format;
-@@ -1288,15 +1279,21 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture,
- shader_config_t vs_conf, ps_conf;
- struct r600_accel_object src_obj, mask_obj, dst_obj;
-
-- if (pDst->drawable.bitsPerPixel < 8 || pSrc->drawable.bitsPerPixel < 8)
-+ if (pDst->drawable.bitsPerPixel < 8 || (pSrc && pSrc->drawable.bitsPerPixel < 8))
- return FALSE;
-
-+ if (!pSrc) {
-+ pSrc = RADEONSolidPixmap(pScreen, pSrcPicture->pSourcePict->solidFill.color);
-+ if (!pSrc)
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+
- #if defined(XF86DRM_MODE)
- if (info->cs) {
- src_obj.offset = 0;
- dst_obj.offset = 0;
-- src_obj.bo = radeon_get_pixmap_bo(pSrc);
- dst_obj.bo = radeon_get_pixmap_bo(pDst);
-+ src_obj.bo = radeon_get_pixmap_bo(pSrc);
- dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst);
- src_obj.tiling_flags = radeon_get_pixmap_tiling(pSrc);
- dst_obj.surface = radeon_get_pixmap_surface(pDst);
-@@ -1322,7 +1319,16 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture,
- dst_obj.bpp = pDst->drawable.bitsPerPixel;
- dst_obj.domain = RADEON_GEM_DOMAIN_VRAM;
-
-- if (pMask) {
-+ if (pMaskPicture) {
-+ if (!pMask) {
-+ pMask = RADEONSolidPixmap(pScreen, pMaskPicture->pSourcePict->solidFill.color);
-+ if (!pMask) {
-+ if (!pSrcPicture->pDrawable)
-+ pScreen->DestroyPixmap(pSrc);
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+ }
-+
- #if defined(XF86DRM_MODE)
- if (info->cs) {
- mask_obj.offset = 0;
-@@ -1509,11 +1515,9 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture,
- return TRUE;
- }
-
--static void R600DoneComposite(PixmapPtr pDst)
-+static void R600FinishComposite(ScrnInfoPtr pScrn, PixmapPtr pDst,
-+ struct radeon_accel_state *accel_state)
- {
-- ScrnInfoPtr pScrn = xf86Screens[pDst->drawable.pScreen->myNum];
-- RADEONInfoPtr info = RADEONPTR(pScrn);
-- struct radeon_accel_state *accel_state = info->accel_state;
- int vtx_size;
-
- if (accel_state->vsync)
-@@ -1527,6 +1531,22 @@ static void R600DoneComposite(PixmapPtr pDst)
- r600_finish_op(pScrn, vtx_size);
- }
-
-+static void R600DoneComposite(PixmapPtr pDst)
-+{
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
-+ RADEONInfoPtr info = RADEONPTR(pScrn);
-+ struct radeon_accel_state *accel_state = info->accel_state;
-+
-+ R600FinishComposite(pScrn, pDst, accel_state);
-+
-+ if (!accel_state->src_pic->pDrawable)
-+ pScreen->DestroyPixmap(accel_state->src_pix);
-+
-+ if (accel_state->msk_pic && !accel_state->msk_pic->pDrawable)
-+ pScreen->DestroyPixmap(accel_state->msk_pix);
-+}
-+
- static void R600Composite(PixmapPtr pDst,
- int srcX, int srcY,
- int maskX, int maskY,
-@@ -1543,7 +1563,7 @@ static void R600Composite(PixmapPtr pDst,
-
- #ifdef XF86DRM_MODE
- if (info->cs && CS_FULL(info->cs)) {
-- R600DoneComposite(info->accel_state->dst_pix);
-+ R600FinishComposite(pScrn, pDst, info->accel_state);
- radeon_cs_flush_indirect(pScrn);
- R600PrepareComposite(info->accel_state->composite_op,
- info->accel_state->src_pic,
-diff --git a/src/radeon_exa_render.c b/src/radeon_exa_render.c
-index e5c231f..b6cc9e4 100644
---- a/src/radeon_exa_render.c
-+++ b/src/radeon_exa_render.c
-@@ -299,8 +299,8 @@ static Bool RADEONSetupSourceTile(PicturePtr pPict,
- if (repeatType == RepeatNormal || repeatType == RepeatReflect) {
- Bool badPitch = needMatchingPitch && !RADEONPitchMatches(pPix);
-
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
-+ int w = pPict->pDrawable ? pPict->pDrawable->width : 1;
-+ int h = pPict->pDrawable ? pPict->pDrawable->height : 1;
-
- if (pPict->transform) {
- if (badPitch)
-@@ -1112,23 +1112,8 @@ static Bool R300CheckCompositeTexture(PicturePtr pPict,
- ScreenPtr pScreen = pDstPict->pDrawable->pScreen;
- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
- RADEONInfoPtr info = RADEONPTR(pScrn);
--
- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
- int i;
-- int max_tex_w, max_tex_h;
--
-- if (is_r500) {
-- max_tex_w = 4096;
-- max_tex_h = 4096;
-- } else {
-- max_tex_w = 2048;
-- max_tex_h = 2048;
-- }
--
-- if ((w > max_tex_w) || (h > max_tex_h))
-- RADEON_FALLBACK(("Picture w/h too large (%dx%d)\n", w, h));
-
- for (i = 0; i < sizeof(R300TexFormats) / sizeof(R300TexFormats[0]); i++)
- {
-@@ -1139,7 +1124,7 @@ static Bool R300CheckCompositeTexture(PicturePtr pPict,
- RADEON_FALLBACK(("Unsupported picture format 0x%x\n",
- (int)pPict->format));
-
-- if (!RADEONCheckTexturePOT(pPict, unit == 0)) {
-+ if (pPict->pDrawable && !RADEONCheckTexturePOT(pPict, unit == 0)) {
- if (info->cs) {
- struct radeon_exa_pixmap_priv *driver_priv;
- PixmapPtr pPix;
-@@ -1181,15 +1166,23 @@ static Bool FUNC_NAME(R300TextureSetup)(PicturePtr pPict, PixmapPtr pPix,
- {
- RINFO_FROM_SCREEN(pPix->drawable.pScreen);
- uint32_t txfilter, txformat0, txformat1, txoffset, txpitch, us_format = 0;
-- int w = pPict->pDrawable->width;
-- int h = pPict->pDrawable->height;
-+ int w, h;
- int i, pixel_shift, out_size = 6;
-- unsigned int repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ unsigned int repeatType;
- struct radeon_exa_pixmap_priv *driver_priv;
- ACCEL_PREAMBLE();
-
- TRACE;
-
-+ if (pPict->pDrawable) {
-+ w = pPict->pDrawable->width;
-+ h = pPict->pDrawable->height;
-+ repeatType = pPict->repeat ? pPict->repeatType : RepeatNone;
-+ } else {
-+ w = h = 1;
-+ repeatType = RepeatNormal;
-+ }
-+
- txpitch = exaGetPixmapPitch(pPix);
- txoffset = 0;
-
-@@ -1394,11 +1387,6 @@ static Bool R300CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP
- if (op >= sizeof(RadeonBlendOp) / sizeof(RadeonBlendOp[0]))
- RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op));
-
-- if (!pSrcPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
--
-- pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
--
- if (IS_R500_3D) {
- max_tex_w = 4096;
- max_tex_h = 4096;
-@@ -1416,13 +1404,6 @@ static Bool R300CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP
- }
- }
-
-- if (pSrcPixmap->drawable.width > max_tex_w ||
-- pSrcPixmap->drawable.height > max_tex_h) {
-- RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-- pSrcPixmap->drawable.width,
-- pSrcPixmap->drawable.height));
-- }
--
- pDstPixmap = RADEONGetDrawablePixmap(pDstPicture->pDrawable);
-
- if (pDstPixmap->drawable.width > max_dst_w ||
-@@ -1432,20 +1413,32 @@ static Bool R300CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP
- pDstPixmap->drawable.height));
- }
-
-+ if (pSrcPicture->pDrawable) {
-+ pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable);
-+
-+ if (pSrcPixmap->drawable.width > max_tex_w ||
-+ pSrcPixmap->drawable.height > max_tex_h) {
-+ RADEON_FALLBACK(("Source w/h too large (%d,%d).\n",
-+ pSrcPixmap->drawable.width,
-+ pSrcPixmap->drawable.height));
-+ }
-+ } else if (pSrcPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-+
- if (pMaskPicture) {
- PixmapPtr pMaskPixmap;
-
-- if (!pMaskPicture->pDrawable)
-- RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n"));
-+ if (pMaskPicture->pDrawable) {
-+ pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
-
-- pMaskPixmap = RADEONGetDrawablePixmap(pMaskPicture->pDrawable);
--
-- if (pMaskPixmap->drawable.width > max_tex_w ||
-- pMaskPixmap->drawable.height > max_tex_h) {
-- RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-- pMaskPixmap->drawable.width,
-- pMaskPixmap->drawable.height));
-- }
-+ if (pMaskPixmap->drawable.width > max_tex_w ||
-+ pMaskPixmap->drawable.height > max_tex_h) {
-+ RADEON_FALLBACK(("Mask w/h too large (%d,%d).\n",
-+ pMaskPixmap->drawable.width,
-+ pMaskPixmap->drawable.height));
-+ }
-+ } else if (pMaskPicture->pSourcePict->type != SourcePictTypeSolidFill)
-+ RADEON_FALLBACK(("Gradient pictures not supported yet\n"));
-
- if (pMaskPicture->componentAlpha) {
- /* Check if it's component alpha that relies on a source alpha and
-@@ -1479,7 +1472,8 @@ static Bool FUNC_NAME(R300PrepareComposite)(int op, PicturePtr pSrcPicture,
- PicturePtr pMaskPicture, PicturePtr pDstPicture,
- PixmapPtr pSrc, PixmapPtr pMask, PixmapPtr pDst)
- {
-- RINFO_FROM_SCREEN(pDst->drawable.pScreen);
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ RINFO_FROM_SCREEN(pScreen);
- uint32_t dst_format, dst_pitch;
- uint32_t txenable, colorpitch;
- uint32_t blendcntl, output_fmt;
-@@ -1508,9 +1502,24 @@ static Bool FUNC_NAME(R300PrepareComposite)(int op, PicturePtr pSrcPicture,
- if (((dst_pitch >> pixel_shift) & 0x7) != 0)
- RADEON_FALLBACK(("Bad destination pitch 0x%x\n", (int)dst_pitch));
-
-+ if (!pSrc) {
-+ pSrc = RADEONSolidPixmap(pScreen, cpu_to_le32(pSrcPicture->pSourcePict->solidFill.color));
-+ if (!pSrc)
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+
- if (!RADEONSetupSourceTile(pSrcPicture, pSrc, TRUE, FALSE))
- return FALSE;
-
-+ if (pMaskPicture && !pMask) {
-+ pMask = RADEONSolidPixmap(pScreen, cpu_to_le32(pMaskPicture->pSourcePict->solidFill.color));
-+ if (!pMask) {
-+ if (!pSrcPicture->pDrawable)
-+ pScreen->DestroyPixmap(pSrc);
-+ RADEON_FALLBACK("Failed to create solid scratch pixmap\n");
-+ }
-+ }
-+
- RADEONPrepareCompositeCS(op, pSrcPicture, pMaskPicture, pDstPicture,
- pSrc, pMask, pDst);
-
-@@ -2132,7 +2141,7 @@ static Bool FUNC_NAME(R300PrepareComposite)(int op, PicturePtr pSrcPicture,
- return TRUE;
- }
-
--static void FUNC_NAME(RadeonDoneComposite)(PixmapPtr pDst)
-+static void FUNC_NAME(RadeonFinishComposite)(PixmapPtr pDst)
- {
- RINFO_FROM_SCREEN(pDst->drawable.pScreen);
- ACCEL_PREAMBLE();
-@@ -2179,6 +2188,20 @@ static void FUNC_NAME(RadeonDoneComposite)(PixmapPtr pDst)
- LEAVE_DRAW(0);
- }
-
-+static void FUNC_NAME(RadeonDoneComposite)(PixmapPtr pDst)
-+{
-+ ScreenPtr pScreen = pDst->drawable.pScreen;
-+ RINFO_FROM_SCREEN(pScreen);
-+ struct radeon_accel_state *accel_state = info->accel_state;
-+
-+ FUNC_NAME(RadeonFinishComposite)(pDst);
-+
-+ if (!accel_state->src_pic->pDrawable)
-+ pScreen->DestroyPixmap(accel_state->src_pix);
-+
-+ if (accel_state->msk_pic && !accel_state->msk_pic->pDrawable)
-+ pScreen->DestroyPixmap(accel_state->msk_pix);
-+}
-
- #ifdef ACCEL_CP
-
-@@ -2257,7 +2280,7 @@ static void FUNC_NAME(RadeonCompositeTile)(ScrnInfoPtr pScrn,
- if ((info->cs && CS_FULL(info->cs)) ||
- (!info->cs && (info->cp->indirectBuffer->used + 4 * 32) >
- info->cp->indirectBuffer->total)) {
-- FUNC_NAME(RadeonDoneComposite)(info->accel_state->dst_pix);
-+ FUNC_NAME(RadeonFinishComposite)(info->accel_state->dst_pix);
- if (info->cs)
- radeon_cs_flush_indirect(pScrn);
- else
-diff --git a/src/radeon_exa_shared.c b/src/radeon_exa_shared.c
-index be1d2fa..28dc335 100644
---- a/src/radeon_exa_shared.c
-+++ b/src/radeon_exa_shared.c
-@@ -126,6 +126,25 @@ Bool RADEONCheckBPP(int bpp)
- return FALSE;
- }
-
-+PixmapPtr RADEONSolidPixmap(ScreenPtr pScreen, uint32_t solid)
-+{
-+ PixmapPtr pPix = pScreen->CreatePixmap(pScreen, 1, 1, 32, 0);
-+ struct radeon_bo *bo;
-+
-+ exaMoveInPixmap(pPix);
-+ bo = radeon_get_pixmap_bo(pPix);
-+
-+ if (radeon_bo_map(bo, 1)) {
-+ pScreen->DestroyPixmap(pPix);
-+ return NULL;
-+ }
-+
-+ memcpy(bo->ptr, &solid, 4);
-+ radeon_bo_unmap(bo);
-+
-+ return pPix;
-+}
-+
- static Bool radeon_vb_get(ScrnInfoPtr pScrn)
- {
- RADEONInfoPtr info = RADEONPTR(pScrn);
-diff --git a/src/radeon_exa_shared.h b/src/radeon_exa_shared.h
-index 7b8b5ca..60a1045 100644
---- a/src/radeon_exa_shared.h
-+++ b/src/radeon_exa_shared.h
-@@ -40,6 +40,7 @@ extern void RADEONVlineHelperClear(ScrnInfoPtr pScrn);
- extern void RADEONVlineHelperSet(ScrnInfoPtr pScrn, int x1, int y1, int x2, int y2);
- extern Bool RADEONValidPM(uint32_t pm, int bpp);
- extern Bool RADEONCheckBPP(int bpp);
-+extern PixmapPtr RADEONSolidPixmap(ScreenPtr pScreen, uint32_t solid);
-
- #define RADEON_TRACE_FALL 0
- #define RADEON_TRACE_DRAW 0
---
-cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-ati/files/xf86-video-ati-7.0.0-r300-ring-count.patch b/x11-drivers/xf86-video-ati/files/xf86-video-ati-7.0.0-r300-ring-count.patch
new file mode 100644
index 000000000000..22ec0a6d1929
--- /dev/null
+++ b/x11-drivers/xf86-video-ati/files/xf86-video-ati-7.0.0-r300-ring-count.patch
@@ -0,0 +1,34 @@
+From 793e1b0ea579cce7489aee57a95f20384d6ecce8 Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexdeucher@gmail.com>
+Date: Thu, 06 Dec 2012 14:21:19 +0000
+Subject: radeon: fix ring count in R300PrepareTexturedVideo
+
+Fixes:
+https://bugs.freedesktop.org/show_bug.cgi?id=31364
+
+Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
+---
+diff --git a/src/radeon_textured_videofuncs.c b/src/radeon_textured_videofuncs.c
+index d30f734..c1bdc65 100644
+--- a/src/radeon_textured_videofuncs.c
++++ b/src/radeon_textured_videofuncs.c
+@@ -1686,7 +1686,7 @@ R300PrepareTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv)
+ }
+
+ if (pPriv->is_planar) {
+- BEGIN_RING(2*needgamma ? 28 + 33 : 33);
++ BEGIN_RING(2 * (needgamma ? (28 + 33) : 33));
+ /* 2 components: same 2 for tex0/1/2 */
+ OUT_RING_REG(R300_RS_COUNT,
+ ((2 << R300_RS_COUNT_IT_COUNT_SHIFT) |
+@@ -1910,7 +1910,7 @@ R300PrepareTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv)
+ R300_ALU_ALPHA_SEL_C(R300_ALU_ALPHA_0_0)));
+ }
+ } else {
+- BEGIN_RING(2*needgamma ? 28 + 31 : 31);
++ BEGIN_RING(2 * (needgamma ? (28 + 31) : 31));
+ /* 2 components */
+ OUT_RING_REG(R300_RS_COUNT,
+ ((2 << R300_RS_COUNT_IT_COUNT_SHIFT) |
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.0.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.0.ebuild
deleted file mode 100644
index d1f425cf9770..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.0.ebuild,v 1.7 2011/03/05 18:09:51 xarthisius Exp $
-
-EAPI=3
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE=""
-
-RDEPEND=">=x11-base/xorg-server-1.6.3[-minimal]"
-DEPEND="${RDEPEND}
- || ( <x11-libs/libdrm-2.4.22 x11-libs/libdrm[video_cards_radeon] )
- x11-proto/fontsproto
- x11-proto/glproto
- x11-proto/randrproto
- x11-proto/videoproto
- x11-proto/xextproto
- x11-proto/xf86driproto
- x11-proto/xf86miscproto
- x11-proto/xproto"
-
-PATCHES=(
- "${FILESDIR}/${P}-xorg-server-1.10.patch"
-)
-
-pkg_setup() {
- xorg-2_pkg_setup
- CONFIGURE_OPTIONS="
- --enable-dri
- --enable-kms
- "
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.1.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.1.ebuild
deleted file mode 100644
index 83b8e659f24e..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.1.ebuild,v 1.6 2011/07/15 17:07:43 xarthisius Exp $
-
-EAPI=4
-
-XORG_DRI=always
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE=""
-
-RDEPEND="x11-libs/libdrm[video_cards_radeon]"
-DEPEND="${RDEPEND}"
-
-pkg_setup() {
- xorg-2_pkg_setup
- CONFIGURE_OPTIONS="
- --enable-dri
- --enable-kms
- --enable-exa
- "
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.2.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.2.ebuild
deleted file mode 100644
index 0e344514f612..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.2.ebuild,v 1.6 2011/07/30 10:48:00 armin76 Exp $
-
-EAPI=4
-
-XORG_DRI=always
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE=""
-
-RDEPEND="x11-libs/libdrm[video_cards_radeon]"
-DEPEND="${RDEPEND}"
-
-pkg_setup() {
- xorg-2_pkg_setup
- XORG_CONFIGURE_OPTIONS=(
- --enable-dri
- --enable-kms
- --enable-exa
- )
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.3.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.3.ebuild
deleted file mode 100644
index 2d9d4874e17b..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.3.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.3.ebuild,v 1.7 2012/03/08 00:54:03 chithanh Exp $
-
-EAPI=4
-
-XORG_EAUTORECONF=yes
-XORG_DRI=always
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE=""
-
-RDEPEND="x11-libs/libdrm[video_cards_radeon]"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-6.14.3-xorg-server-1.12.patch
-)
-
-pkg_setup() {
- xorg-2_pkg_setup
- XORG_CONFIGURE_OPTIONS=(
- --enable-dri
- --enable-kms
- --enable-exa
- )
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4-r1.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4-r1.ebuild
deleted file mode 100644
index 54369b863b2e..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4-r1.ebuild,v 1.9 2012/08/26 19:40:05 armin76 Exp $
-
-EAPI=4
-
-XORG_DRI=always
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd"
-IUSE=""
-
-RDEPEND=">=x11-libs/libdrm-2.4.33[video_cards_radeon]"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-6.14.4-exa-solid-accel-r300.patch
- "${FILESDIR}"/${PN}-6.14.4-exa-solid-accel-evergreen.patch
- "${FILESDIR}"/${PN}-6.14.4-exa-solid-accel-r100.patch
- "${FILESDIR}"/${PN}-6.14.4-exa-solid-accel-r200.patch
-)
-
-pkg_setup() {
- xorg-2_pkg_setup
- XORG_CONFIGURE_OPTIONS=(
- --enable-dri
- --enable-kms
- --enable-exa
- )
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4.ebuild
deleted file mode 100644
index 08cbccec9363..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.4.ebuild,v 1.1 2012/03/29 15:40:51 chithanh Exp $
-
-EAPI=4
-
-XORG_EAUTORECONF=yes
-XORG_DRI=always
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE=""
-
-RDEPEND=">=x11-libs/libdrm-2.4.31[video_cards_radeon]"
-DEPEND="${RDEPEND}"
-
-pkg_setup() {
- xorg-2_pkg_setup
- XORG_CONFIGURE_OPTIONS=(
- --enable-dri
- --enable-kms
- --enable-exa
- )
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.5.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.5.ebuild
deleted file mode 100644
index 03ff2199238e..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.5.ebuild,v 1.1 2012/06/08 13:13:08 chithanh Exp $
-
-EAPI=4
-
-XORG_DRI=always
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-IUSE=""
-
-RDEPEND=">=x11-libs/libdrm-2.4.35[video_cards_radeon]"
-DEPEND="${RDEPEND}"
-
-pkg_setup() {
- xorg-2_pkg_setup
- XORG_CONFIGURE_OPTIONS=(
- --enable-dri
- --enable-kms
- --enable-exa
- )
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.6.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.6.ebuild
deleted file mode 100644
index 2c86a6740f46..000000000000
--- a/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.6.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-6.14.6.ebuild,v 1.3 2012/11/11 22:50:47 chithanh Exp $
-
-EAPI=4
-
-XORG_DRI=always
-inherit xorg-2
-
-DESCRIPTION="ATI video driver"
-
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-IUSE=""
-
-RDEPEND=">=x11-libs/libdrm-2.4.36[video_cards_radeon]"
-DEPEND="${RDEPEND}"
-
-pkg_setup() {
- xorg-2_pkg_setup
- XORG_CONFIGURE_OPTIONS=(
- --enable-dri
- --enable-kms
- --enable-exa
- )
-}
diff --git a/x11-drivers/xf86-video-ati/xf86-video-ati-7.0.0-r1.ebuild b/x11-drivers/xf86-video-ati/xf86-video-ati-7.0.0-r1.ebuild
new file mode 100644
index 000000000000..ccea7c82ab94
--- /dev/null
+++ b/x11-drivers/xf86-video-ati/xf86-video-ati-7.0.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-ati/xf86-video-ati-7.0.0-r1.ebuild,v 1.1 2013/01/08 17:33:58 chithanh Exp $
+
+EAPI=4
+
+XORG_DRI=always
+inherit xorg-2
+
+DESCRIPTION="ATI video driver"
+
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="glamor udev"
+
+RDEPEND=">=x11-libs/libdrm-2.4.36[video_cards_radeon]
+ glamor? ( x11-libs/glamor )
+ udev? ( virtual/udev )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-r300-ring-count.patch
+)
+
+src_configure() {
+ XORG_CONFIGURE_OPTIONS=(
+ $(use_enable glamor)
+ $(use_enable udev)
+ )
+ xorg-2_src_configure
+}