diff options
author | Joshua Kinard <kumba@gentoo.org> | 2006-07-26 17:27:45 +0000 |
---|---|---|
committer | Joshua Kinard <kumba@gentoo.org> | 2006-07-26 17:27:45 +0000 |
commit | 366367f6417b5bf98d4597539afbf7bc755ff898 (patch) | |
tree | 71f43ce8a35ad8e016ee09f41000db9ac6fd9e58 /sys-kernel | |
parent | Update 2.6.16.22 to 2.6.16.27 and 2.6.17.3 to 2.6.17.7. This includes some n... (diff) | |
download | gentoo-2-366367f6417b5bf98d4597539afbf7bc755ff898.tar.gz gentoo-2-366367f6417b5bf98d4597539afbf7bc755ff898.tar.bz2 gentoo-2-366367f6417b5bf98d4597539afbf7bc755ff898.zip |
Update 2.6.16.22 to 2.6.16.27 and 2.6.17.3 to 2.6.17.7. This includes some newer patches to fix up IP27 support a little, and one or two generic patches.
(Portage version: 2.1.1_pre2-r8)
(Unsigned Manifest commit)
Diffstat (limited to 'sys-kernel')
-rw-r--r-- | sys-kernel/mips-sources/Manifest | 41 | ||||
-rw-r--r-- | sys-kernel/mips-sources/files/digest-mips-sources-2.6.16.22 | 15 | ||||
-rw-r--r-- | sys-kernel/mips-sources/files/digest-mips-sources-2.6.17.3 | 12 | ||||
-rw-r--r-- | sys-kernel/mips-sources/mips-sources-2.6.16.22.ebuild | 548 | ||||
-rw-r--r-- | sys-kernel/mips-sources/mips-sources-2.6.17.3.ebuild | 532 |
5 files changed, 21 insertions, 1127 deletions
diff --git a/sys-kernel/mips-sources/Manifest b/sys-kernel/mips-sources/Manifest index c1e79c9a10b4..fa9cf726e235 100644 --- a/sys-kernel/mips-sources/Manifest +++ b/sys-kernel/mips-sources/Manifest @@ -2,29 +2,30 @@ DIST linux-2.6.15.tar.bz2 39832836 RMD160 e65904bf253b3515f8dd2a480c7e99ec7117cf DIST linux-2.6.16.tar.bz2 40845005 RMD160 af5c2f55733fadd2fdf8b00da55e7b31d516d4e8 SHA1 bef21cd5063a648f33a99a26f4742dd05eb4dca2 SHA256 1200dcc7e60fcdaf68618dba991917a47e41e67099e8b22143976ec972e2cad7 DIST linux-2.6.17.tar.bz2 41272919 RMD160 26aad30c9a6610665c6c7d62401d79bf56a6a699 SHA1 0605c975b9dead2af31a3decf09dd4138fadaf2b SHA256 ab0f647d52f124958439517df9e1ae0efda90cdb851f59f522fa1749f1d87d58 DIST mips-sources-generic_patches-1.23.tar.bz2 405094 RMD160 809679b2bc9f256a410b30832ee728f6781e7b75 SHA1 9763cc3b750db61e7775bf072ef7dfafd30a5536 SHA256 37d0b5f01afa471f1f50621cf53ae36b301e6e7c9ab07f7db140dd43b9b1b106 +DIST mips-sources-generic_patches-1.24.tar.bz2 275532 RMD160 06382130cbcafa332c56d1a7e0f657ae6e08ff08 SHA1 4ac16fb1a5541bdc9050519a523ccd4d0320e5b3 SHA256 59ba15d33a84b47de8f17d7698ff52cd922e008366ff222c256ade8eea2d91e9 DIST mips-sources-security_patches-1.15.tar.bz2 95503 RMD160 b0f8dcf5ae9bc2881c0e96302e5f7ce36b9eef9d SHA1 75cb9d527b67f39aee0052cca488b5413f1f6d7b SHA256 188459e458fd059dedf0a70c766358a64fa3122d4584f8ef01286d5f8ad424ed DIST mipsgit-2.6.15-20060109.diff.bz2 135328 RMD160 092ee406c2aed0fb296f9279b30610f7bf244f21 SHA1 141519d1a996d07c75b18753344ac5875b790ccb SHA256 c47907b1e5d729a57708ce6c641ba1cdad0080c5a863b8e48ee826bc8b714ccc DIST mipsgit-2.6.16-20060320.diff.bz2 133698 RMD160 fa75efb28512d53a60c0481c9646a59453fc4c34 SHA1 a13777ac4300aba53372fcec5e910e342b02eb9e SHA256 01d3833021941de897af7f113236b461264be72af9df2f007fed7cefd9e8ff33 DIST mipsgit-2.6.17-20060618.diff.bz2 101475 RMD160 13b219d683a79ab6a65ae2dade1164eb9a2b861c SHA1 f1fe724f0a1af7585023dfb679e2ca294b3bdf93 SHA256 6fd8cb2e5d9c7190387d60c2bc746bf8df9efd5654b05e19b03953065b50f29a DIST patch-2.6.15.7.bz2 30839 RMD160 941b3782008926c0f4418260eee2d9cc46b348e1 SHA1 d89e15901ab0a02ecb20752cda9a33764fd332ba SHA256 4b4791493edc61fd9ce05e28c24b9ba5526e88e5be3bfa71da6718d5533584cd -DIST patch-2.6.16.22.bz2 59508 RMD160 ad1575b6f5a25c9b98c9491be5bd663feb3000e7 SHA1 273437485eb55c9377481b58f36b02dc9a3743b2 SHA256 ba29fd47567561987d7faf8c9347fdf69f9204a067da918bf99467c3e38cc473 -DIST patch-2.6.17.3.bz2 7773 RMD160 204d8199aa702919c7e7a8a4dd18d0208c3d2a79 SHA1 b4f818fd568a936f92d2882437698bdeed3e6a64 SHA256 611b4c0c209833ef18f59bd19c852a674a15a0c243655179d850c96053de9f65 +DIST patch-2.6.16.27.bz2 61138 RMD160 67c54d708bb242e5e49132282c483058eb9f50d4 SHA1 faa3830cca861c54243d7ca6538b50ea36a2db6c SHA256 f7f905b411a3470378736f0ab2eedd6a159e3e878822c1dca649d20221190f91 +DIST patch-2.6.17.7.bz2 21562 RMD160 9857ed5f259baed0d2c0aae5d59ef2553b0a9864 SHA1 163654504f7a6e8e60913e5bd98661b35dc87ab5 SHA256 27752c795eed81e8e8ce0a1dd7941ecc891e59b8d53e69e6f2673d26bcabd427 EBUILD mips-sources-2.6.15.7-r2.ebuild 18873 RMD160 922220be33c8d741d72b3e764f94f4ee106a5f61 SHA1 6659bf0a277dda03b5b2be28d39a87d7a79aed55 SHA256 f8393941bddb180c20deec5783c7151902724a348ed113ee7a54f7b41e24661e MD5 50800d7d8bcefbf06a83ded5048b81ea mips-sources-2.6.15.7-r2.ebuild 18873 RMD160 922220be33c8d741d72b3e764f94f4ee106a5f61 mips-sources-2.6.15.7-r2.ebuild 18873 SHA256 f8393941bddb180c20deec5783c7151902724a348ed113ee7a54f7b41e24661e mips-sources-2.6.15.7-r2.ebuild 18873 -EBUILD mips-sources-2.6.16.22.ebuild 19211 RMD160 70a60e97e8702e6cbb01a3bd95cc4ae5644e9040 SHA1 70febc0384c9e1a4005cc884157242d07a296d51 SHA256 ed4c82660e63e830d3fac9f121b22485299af0597ff2895e1367f4915fd69feb -MD5 9fd9d521f7acfe3ef8a2adc3170e472a mips-sources-2.6.16.22.ebuild 19211 -RMD160 70a60e97e8702e6cbb01a3bd95cc4ae5644e9040 mips-sources-2.6.16.22.ebuild 19211 -SHA256 ed4c82660e63e830d3fac9f121b22485299af0597ff2895e1367f4915fd69feb mips-sources-2.6.16.22.ebuild 19211 -EBUILD mips-sources-2.6.17.3.ebuild 19127 RMD160 6360f1fc4f5e283498123a1a26146324c2c6b144 SHA1 a05c95efa7893b6c349d750434590aa9590258cf SHA256 c2642e3d48c6d567b4d8584065e167147cfc25742aff5e11c0137c41a5cff543 -MD5 d1159efedf8848a74543317416aafc85 mips-sources-2.6.17.3.ebuild 19127 -RMD160 6360f1fc4f5e283498123a1a26146324c2c6b144 mips-sources-2.6.17.3.ebuild 19127 -SHA256 c2642e3d48c6d567b4d8584065e167147cfc25742aff5e11c0137c41a5cff543 mips-sources-2.6.17.3.ebuild 19127 -MISC ChangeLog 40753 RMD160 1b8f747620e4bd482f3e9a0f49ea86110c7a2c61 SHA1 b0a02919b98f00a7e51cf0fc854fca1a4387cdb7 SHA256 46ed9df466f0f1ac0a0d753db3a4bbe927d9ab8cedf516498ef92d4891ff8327 -MD5 760adeab118a31ac59237e04079b699d ChangeLog 40753 -RMD160 1b8f747620e4bd482f3e9a0f49ea86110c7a2c61 ChangeLog 40753 -SHA256 46ed9df466f0f1ac0a0d753db3a4bbe927d9ab8cedf516498ef92d4891ff8327 ChangeLog 40753 +EBUILD mips-sources-2.6.16.27.ebuild 19399 RMD160 c6151701a4da07f612cd33213cb736da26d6cc5c SHA1 90ccbec21b4fd7d55c9ea112e61e59b5d0f3466c SHA256 3b6354c76268bc885fb0bfe0339ecbd6644df1a121fdd437874cdb90aa5d36b4 +MD5 789772049b5bfb606c0eb442cd8e48af mips-sources-2.6.16.27.ebuild 19399 +RMD160 c6151701a4da07f612cd33213cb736da26d6cc5c mips-sources-2.6.16.27.ebuild 19399 +SHA256 3b6354c76268bc885fb0bfe0339ecbd6644df1a121fdd437874cdb90aa5d36b4 mips-sources-2.6.16.27.ebuild 19399 +EBUILD mips-sources-2.6.17.7.ebuild 19434 RMD160 7f37ce798b375e8ac9f1261aaf4753fd2976fd69 SHA1 19b9e479a4468f412c26b1f42bd70070a2c09bf0 SHA256 6b555493ccef0f135f3d1200b752414cf28993f6cca66383824fd31e8197d810 +MD5 d5739e6fa1a2e2b39c39c500bc4b4497 mips-sources-2.6.17.7.ebuild 19434 +RMD160 7f37ce798b375e8ac9f1261aaf4753fd2976fd69 mips-sources-2.6.17.7.ebuild 19434 +SHA256 6b555493ccef0f135f3d1200b752414cf28993f6cca66383824fd31e8197d810 mips-sources-2.6.17.7.ebuild 19434 +MISC ChangeLog 41169 RMD160 6c3c1047f513c6b68d594f430e31f960eb4f76c8 SHA1 c5d8b4420ac77980ab476c6e0da6ebcb261e49fa SHA256 84f1a0de74fffbf7c1a575646307a91ebba08d29c3e1d53bc30ed3cfa8dbf217 +MD5 10cab712e83d1442392e8b5b37dba0e0 ChangeLog 41169 +RMD160 6c3c1047f513c6b68d594f430e31f960eb4f76c8 ChangeLog 41169 +SHA256 84f1a0de74fffbf7c1a575646307a91ebba08d29c3e1d53bc30ed3cfa8dbf217 ChangeLog 41169 MISC metadata.xml 378 RMD160 16684ccbf54bd2a4580dbf6e11cb0c8b4582e38b SHA1 4362cc5652f1b06dbd03263ece6dac4da2ebaad5 SHA256 25f7c0d45f0238401d2ab5075149519037844bf692c3c60ea355d984e22834fd MD5 ad25a2a0b6ade60c13ad8040f3c319c6 metadata.xml 378 RMD160 16684ccbf54bd2a4580dbf6e11cb0c8b4582e38b metadata.xml 378 @@ -32,9 +33,9 @@ SHA256 25f7c0d45f0238401d2ab5075149519037844bf692c3c60ea355d984e22834fd metadata MD5 2a6e18933640caa8a37c774e1da25823 files/digest-mips-sources-2.6.15.7-r2 1364 RMD160 9122d5a3a698e82342d5afd10478d742298e171c files/digest-mips-sources-2.6.15.7-r2 1364 SHA256 75d849bb4ef38a7fe78c26d8f9d075c456a7450ea277118c2b6673cd6dfcf8b5 files/digest-mips-sources-2.6.15.7-r2 1364 -MD5 c6000e36baf2458c9bd23cbbcfe9ec35 files/digest-mips-sources-2.6.16.22 1367 -RMD160 d0dc24949212fed36ef2d06328ce2aad5b90d6d1 files/digest-mips-sources-2.6.16.22 1367 -SHA256 cece216fdc8825daca7aa8ccbc414eef54f8200ca0bc8027bcbd1cedcbb04b86 files/digest-mips-sources-2.6.16.22 1367 -MD5 153c607cecb1834fd56beba4d225ff32 files/digest-mips-sources-2.6.17.3 1057 -RMD160 3a79d2e408b87439ff1b1d2cb150f67087190fbf files/digest-mips-sources-2.6.17.3 1057 -SHA256 09eba52786384c635d4d6cfd3dca68f8080d8da7a3e0d9e537432da4f7a8b06f files/digest-mips-sources-2.6.17.3 1057 +MD5 21dc5a6e6c0508a27717c25fee562e0f files/digest-mips-sources-2.6.16.27 1367 +RMD160 791670eac0310061da5243749bd1bad447a9856e files/digest-mips-sources-2.6.16.27 1367 +SHA256 2841f64c5415a4cbfa6a678f24db19239624a8d8a70f5449ee3bae3dafe85721 files/digest-mips-sources-2.6.16.27 1367 +MD5 d09945847b04c3aac8b0e329afff08fa files/digest-mips-sources-2.6.17.7 1060 +RMD160 24addf87f7362e01bc3557004b705138512ec027 files/digest-mips-sources-2.6.17.7 1060 +SHA256 0060065b7b2bdeac1849870a31468f233de612f2e56c481f408512bca85a2138 files/digest-mips-sources-2.6.17.7 1060 diff --git a/sys-kernel/mips-sources/files/digest-mips-sources-2.6.16.22 b/sys-kernel/mips-sources/files/digest-mips-sources-2.6.16.22 deleted file mode 100644 index 6dded835ad93..000000000000 --- a/sys-kernel/mips-sources/files/digest-mips-sources-2.6.16.22 +++ /dev/null @@ -1,15 +0,0 @@ -MD5 9a91b2719949ff0856b40bc467fd47be linux-2.6.16.tar.bz2 40845005 -RMD160 af5c2f55733fadd2fdf8b00da55e7b31d516d4e8 linux-2.6.16.tar.bz2 40845005 -SHA256 1200dcc7e60fcdaf68618dba991917a47e41e67099e8b22143976ec972e2cad7 linux-2.6.16.tar.bz2 40845005 -MD5 a9ea731ba8c89de048739f17d1f69267 mips-sources-generic_patches-1.23.tar.bz2 405094 -RMD160 809679b2bc9f256a410b30832ee728f6781e7b75 mips-sources-generic_patches-1.23.tar.bz2 405094 -SHA256 37d0b5f01afa471f1f50621cf53ae36b301e6e7c9ab07f7db140dd43b9b1b106 mips-sources-generic_patches-1.23.tar.bz2 405094 -MD5 e94ee79cc269b78401ffe9b79ad620ff mips-sources-security_patches-1.15.tar.bz2 95503 -RMD160 b0f8dcf5ae9bc2881c0e96302e5f7ce36b9eef9d mips-sources-security_patches-1.15.tar.bz2 95503 -SHA256 188459e458fd059dedf0a70c766358a64fa3122d4584f8ef01286d5f8ad424ed mips-sources-security_patches-1.15.tar.bz2 95503 -MD5 1e6d0c4e9586cf6cc7395e48059066d8 mipsgit-2.6.16-20060320.diff.bz2 133698 -RMD160 fa75efb28512d53a60c0481c9646a59453fc4c34 mipsgit-2.6.16-20060320.diff.bz2 133698 -SHA256 01d3833021941de897af7f113236b461264be72af9df2f007fed7cefd9e8ff33 mipsgit-2.6.16-20060320.diff.bz2 133698 -MD5 826870e367fdcbc16f8b3ad8ca4f27d7 patch-2.6.16.22.bz2 59508 -RMD160 ad1575b6f5a25c9b98c9491be5bd663feb3000e7 patch-2.6.16.22.bz2 59508 -SHA256 ba29fd47567561987d7faf8c9347fdf69f9204a067da918bf99467c3e38cc473 patch-2.6.16.22.bz2 59508 diff --git a/sys-kernel/mips-sources/files/digest-mips-sources-2.6.17.3 b/sys-kernel/mips-sources/files/digest-mips-sources-2.6.17.3 deleted file mode 100644 index 58d328585c50..000000000000 --- a/sys-kernel/mips-sources/files/digest-mips-sources-2.6.17.3 +++ /dev/null @@ -1,12 +0,0 @@ -MD5 37ddefe96625502161f075b9d907f21e linux-2.6.17.tar.bz2 41272919 -RMD160 26aad30c9a6610665c6c7d62401d79bf56a6a699 linux-2.6.17.tar.bz2 41272919 -SHA256 ab0f647d52f124958439517df9e1ae0efda90cdb851f59f522fa1749f1d87d58 linux-2.6.17.tar.bz2 41272919 -MD5 a9ea731ba8c89de048739f17d1f69267 mips-sources-generic_patches-1.23.tar.bz2 405094 -RMD160 809679b2bc9f256a410b30832ee728f6781e7b75 mips-sources-generic_patches-1.23.tar.bz2 405094 -SHA256 37d0b5f01afa471f1f50621cf53ae36b301e6e7c9ab07f7db140dd43b9b1b106 mips-sources-generic_patches-1.23.tar.bz2 405094 -MD5 51d45ba8e2f016813191d2bb06ad277e mipsgit-2.6.17-20060618.diff.bz2 101475 -RMD160 13b219d683a79ab6a65ae2dade1164eb9a2b861c mipsgit-2.6.17-20060618.diff.bz2 101475 -SHA256 6fd8cb2e5d9c7190387d60c2bc746bf8df9efd5654b05e19b03953065b50f29a mipsgit-2.6.17-20060618.diff.bz2 101475 -MD5 2c426ef5e2f02f1a761f150c13a7dac8 patch-2.6.17.3.bz2 7773 -RMD160 204d8199aa702919c7e7a8a4dd18d0208c3d2a79 patch-2.6.17.3.bz2 7773 -SHA256 611b4c0c209833ef18f59bd19c852a674a15a0c243655179d850c96053de9f65 patch-2.6.17.3.bz2 7773 diff --git a/sys-kernel/mips-sources/mips-sources-2.6.16.22.ebuild b/sys-kernel/mips-sources/mips-sources-2.6.16.22.ebuild deleted file mode 100644 index adc9359be486..000000000000 --- a/sys-kernel/mips-sources/mips-sources-2.6.16.22.ebuild +++ /dev/null @@ -1,548 +0,0 @@ -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/mips-sources-2.6.16.22.ebuild,v 1.2 2006/07/06 05:03:45 kumba Exp $ - - -# INCLUDED: -# 1) linux sources from kernel.org -# 2) linux-mips.org GIT snapshot diff from 14 Sep 2005 -# 3) Generic Fixes -# 4) Security fixes -# 5) Patch for IP30 Support (http://www.linux-mips.org/~skylark/) -# 5) Patch for IP28 Support (http://home.alphastar.de/fuerst/download.html) -# 6) Patch for Remaining Cobalt Bits (http://www.colonel-panic.org/cobalt-mips/) -# 7) Experimental patches (IP27 hacks, et al) - - -#//------------------------------------------------------------------------------ - - - -# Version Data -OKV=${PV/_/-} -GITDATE="20060320" # Date of diff between kernel.org and lmo GIT -SECPATCHVER="1.15" # Tarball version for security patches -GENPATCHVER="1.23" # Tarball version for generic patches -EXTRAVERSION="-mipsgit-${GITDATE}" -KV="${OKV}${EXTRAVERSION}" -F_KV="${OKV}" # Fetch KV, used to know what mipsgit diff to grab. -STABLEVER="${F_KV}" # Stable Version (2.6.x) -PATCHVER="" - -# Directories -S="${WORKDIR}/linux-${OKV}-${GITDATE}" -MIPS_PATCHES="${WORKDIR}/mips-patches" -MIPS_SECURITY="${WORKDIR}/security" - -# Inherit Eclasses -ETYPE="sources" -inherit kernel eutils versionator - -# Portage Vars -HOMEPAGE="http://www.linux-mips.org/ http://www.gentoo.org/" -SLOT="${OKV}" -PROVIDE="virtual/linux-sources virtual/alsa" -KEYWORDS="-* mips" -IUSE="cobalt ip27 ip28 ip30 ip32r10k" -DEPEND=">=sys-devel/gcc-3.4.6" - - -# Version Control Variables -USE_RC="no" # If set to "yes", then attempt to use an RC kernel -USE_PNT="yes" # If set to "yes", then attempt to use a point-release (2.6.x.y) - -# Machine Support Control Variables -DO_IP22="no" # If "yes", enable IP22 support (SGI Indy, Indigo2 R4x00) -DO_IP27="yes" # IP27 support (SGI Origin) -DO_IP28="yes" # IP28 support (SGI Indigo2 Impact R10000) -DO_IP30="yes" # IP30 support (SGI Octane) -DO_IP32="yes" # IP32 support (SGI O2, R5000/RM5200 Only) -DO_CBLT="yes" # Cobalt Support (Cobalt Microsystems) - -# Machine Stable Version Variables -SV_IP22="2.6.15.7-r1" # If set && DO_IP22 == "no", indicates last "good" IP22 version -SV_IP27="" # DO_IP27 == "no", IP27 -SV_IP28="" # DO_IP28 == "no", IP28 -SV_IP30="" # DO_IP30 == "no", IP30 -SV_IP32="" # DO_IP32 == "no", IP32 -SV_CBLT="" # DO_CBLT == "no", Cobalt - - -# If USE_RC == "yes", use a release candidate kernel (2.6.X-rcY) -if [ "${USE_RC}" = "yes" ]; then - KVXY="$(get_version_component_range 1-2)" # Kernel Major/Minor - KVZ="$(get_version_component_range 3)" # Kernel Revision Pt. 1 - KVRC="$(get_version_component_range 4)" # Kernel RC - F_KV="$(get_version_component_range 1-3)-${KVRC}" - STABLEVER="${KVXY}.$((${KVZ} - 1))" # Last stable version (Rev - 1) - PATCHVER="mirror://kernel/linux/kernel/v2.6/testing/patch-${OKV}.bz2" - EXTRAVERSION="-${KVRC}-mipsgit-${GITDATE}" - KV="${OKV}-${EXTRAVERSION}" - USE_PNT="no" -fi - -# If USE_PNT == "yes", use a point release kernel (2.6.x.y) -if [ "${USE_PNT}" = "yes" ]; then - F_KV="$(get_version_component_range 1-3)" # Get Maj/Min/Rev (x.y.z) - STABLEVER="${F_KV}" # Last Revision release - PATCHVER="mirror://kernel/linux/kernel/v2.6/patch-${OKV}.bz2" # Patch for new point release - EXTRAVERSION=".$(get_version_component_range 4)-mipsgit-${GITDATE}" - KV="${OKV}${EXTRAVERSION}" - USE_RC="no" -fi - - -DESCRIPTION="Linux-Mips GIT sources for MIPS-based machines, dated ${GITDATE}" -SRC_URI="mirror://kernel/linux/kernel/v2.6/linux-${STABLEVER}.tar.bz2 - mirror://gentoo/mipsgit-${F_KV}-${GITDATE}.diff.bz2 - mirror://gentoo/${PN}-security_patches-${SECPATCHVER}.tar.bz2 - mirror://gentoo/${PN}-generic_patches-${GENPATCHVER}.tar.bz2 - ${PATCHVER}" - - - -#//------------------------------------------------------------------------------ - - - -# Error messages -err_only_one_mach_allowed() { - echo -e "" - eerror "A patchset for a specific machine-type has already been selected." - eerror "No other patches for machines-types are permitted. You will need a" - eerror "separate copy of the kernel sources for each different machine-type" - eerror "you want to build a kernel for." - die "Only one machine-type patchset allowed" -} - -err_disabled_mach() { - # Get args - local mach_name="${1}" - local mach_abbr="${2}" - local mach_use="${3}" - - # Get stable version, if exists - local stable_ver="SV_${mach_abbr}" - stable_ver="${!stable_ver}" - - # See if this machine needs a USE passed or skip dying - local has_use - [ ! -z "${mach_use}" -a "${mach_use}" != "skip" ] && has_use="USE=\"${mach_use}\" " - - # Print error && (maybe) die - echo -e "" - eerror "${mach_name} Support has been disabled in this ebuild" - eerror "revision. If you wish to merge ${mach_name} sources, then" - eerror "run ${has_use}emerge =mips-sources-${stable_ver}" - [ "${mach_use}" != "skip" ] && die "${mach_name} Support disabled." - - return 0 -} - - - -#//------------------------------------------------------------------------------ - - - -# Machine Information Messages -# -# If needing to whitespace for formatting in 'einfo', 'ewarn', or 'eerror', use -# \040 for a space instead of the standard space. These functions strip redundant -# white space for some unknown reason - -show_ip22_info() { - echo -e "" - einfo "IP22 systems should work well with this release, however, R4600" - einfo "setups may still experience bugs. Please report any encountered" - einfo "problems." - einfo "" - einfo "Some Notes:" - einfo "\t- Supported graphics card right now is Newport (XL)." - einfo "\t- A driver for Extreme (XZ) is in the works, but remains" - einfo "\t\040\040unreleased by its author for public consumption." - einfo "\t- 64bit support works, but it is not widely tested, thus" - einfo "\t\040\040it is not supported at the present time." - echo -e "" -} - -show_ip27_info() { - echo -e "" - einfo "IP27 support can be considered a game of Russian Roulette. It'll work" - einfo "great for some but not for others. It also uses some rather horrible" - einfo "hacks to get going -- hopefully these will be repaired in the future." - echo -e "" - ewarn "Please keep all kittens and any other small, cute, and fluffy creatures" - ewarn "away from an IP27 Box running these sources. Failure to do so may cause" - ewarn "the IP27 to consume the hapless creature. Consider this your only" - ewarn "warning regarding the experimental nature of this particular machine." - echo -e "" -} - -show_ip28_info() { - echo -e "" - einfo "Support for the Indigo2 Impact R10000 is very experimental. If you do not" - einfo "have a clue in the world about what an IP28 is, what the mips architecture" - einfo "is about, or are new to Gentoo, then it is highly advised that you steer" - einfo "clear of messing with this machine. Due to the experimental nature of this" - einfo "particular class of system, we have to provide such warnings, as it is only" - einfo "for use by those who know what they are doing." - echo -e "" - einfo "Be advised that attempting to run Gentoo/Linux (or any Linux distro) on this" - einfo "system may cause the sudden, unexplained disappearence of any nearby furry" - einfo "creatures. So please keep any and all small pets away from this system at" - einfo "all times." - echo -e "" - ewarn "That said, support for this system REQUIRES that you use the ip28 cascade" - ewarn "profile (default-linux/mips/mips64/ip28/XXXX.Y), because a very special" - ewarn "patch is used on the system gcc, kernel-gcc (gcc-mips64) and the kernel" - ewarn "itself in order to support this machine. These patches will only be applied" - ewarn "if \"ip28\" is defined in USE, which the profile sets. If you wish to" - ewarn "cross-compile a kernel, you _must_ make sure that the \"ip28\" USE is" - ewarn "defined in your host system's /etc/make.conf file before using crossdev" - ewarn "to build a mips64 kernel compiler for this system." - echo -e "" - ewarn "As a final warning, _nothing_ is guaranteed to work smoothly. However," - ewarn "the Impact console driver and X driver do work somewhat decently." - echo -e "" -} - -show_ip30_info() { - echo -e "" - einfo "Things to keep in mind when building a kernel for an SGI Octane:" - einfo "\t- The scsi driver to use is qla1280; qlogicisp is gone." - einfo "\t- Impact (MGRAS) console and X driver work, please report any bugs." - einfo "\t- VPro (Odyssey) console works, but no X driver exists yet." - einfo "\t- PCI Card Cages should work for many devices, except certain types like" - einfo "\t\040\040PCI-to-PCI bridges (USB hubs, USB flash card readers for example)." - einfo "\t- Do not plug more than two devices into a OHCI-based USB PCI card, as" - einfo "\t\040\040there is a known problem with OHCI USB cards and Octane, which will" - einfo "\t\040\040prevent the machine from booting into userland." - einfo "\t- Other XIO-based devices like MENET and various Impact addons remain" - einfo "\t\040\040untested and are not guaranteed to work. This applies to various" - einfo "\t\040\040digital video conversion boards as well." - echo -e "" -} - -show_ip32_info() { - echo -e "" - einfo "IP32 systems function well, however there are some notes:" - einfo "\t- No driver exists yet for the sound card." - einfo "\t- Framebuffer console is limited to 4MB. Anything greater" - einfo "\t\040\040specified when building the kernel will likely oops or panic" - einfo "\t\040\040the kernel." - einfo "\t- X support is limited to the generic fbdev driver. No X gbefb" - einfo "\t\040\040driver exists for O2 yet." - ewarn "\t- When building an O2 Kernel, do not enable CONFIG_BUILD_ELF64." - ewarn "\t\040\040Pass 'make vmlinux' instead, and you will get a bootable" - ewarn "\t\040\040kernel image. Please note, this behavior WILL change" - ewarn "\t\040\040when gcc-4.x becomes mainstream." - echo -e "" - - if use ip32r10k; then - eerror "R10000/R12000 Support on IP32 is HIGHLY EXPERIMENTAL!" - eerror "This is intended ONLY for people interested in fixing it up. And" - eerror "by that, I mean people willing to SEND IN PATCHES! If you're not" - eerror "interested in debugging this issue seriously or just want to run it" - eerror "as a user, then DO NOT USE THIS. Really, we mean it." - echo -e "" - eerror "All that said, initial testing seems to indicate that this system will" - eerror "stay online for a reasonable amount of time and will compile packages." - eerror "However, the primary console (which is serial, gbefb seems dead for now)" - eerror "will fill with CRIME CPU errors every so often. A majority of these" - eerror "seem harmless, however a few non-fatal oopses have also been triggered." - echo -e "" - eerror "We're interesting in finding anyone with knowledge of the R10000" - eerror "workaround for speculative execution listed in the R10000 Processor" - eerror "manual, or those who are familiar with the IP32 chipset and the feature" - eerror "called \"Juice\"." - echo -e "" - eerror "To build this kernel tree, make sure you re-merge your kernel compiler" - eerror "with the \"ip32r10k\" USE flag enabled via crossdev. This uses a" - eerror "tweaked version of the gcc cache barriers patch that makes gcc emit " - eerror "more barriers, as IP32 needs them to have any hope of staying online." - fi -} - -show_cobalt_info() { - echo -e "" - einfo "Please keep in mind that the 2.6 kernel will NOT boot on Cobalt" - einfo "systems that are still using the old Cobalt bootloader. In" - einfo "order to boot a 2.6 kernel on Cobalt systems, you must be using" - einfo "the CoLo bootloader, which does not have the kernel" - einfo "size limitation that the older bootloader has. If you want" - einfo "to use the newer bootloader, make sure you have sys-boot/colo" - einfo "installed and setup." - echo -e "" -} - - - -#//------------------------------------------------------------------------------ - - - -# Check our USE flags for machine-specific flags and give appropriate warnings/errors. -# Hope the user isn't crazy enough to try using combinations of these flags. -# Only use one machine-specific flag at a time for each type of desired machine-support. -# -# Affected machines: ip27 ip28 ip30 -# Not Affected: cobalt ip22 ip32 -pkg_setup() { - local arch_is_selected="no" - local mach_ip - local mach_enable - local mach_name - local x - - # See if we're on a cobalt system first (must use the cobalt-mips profile) - if use cobalt; then - arch_is_selected="yes" - [ "${DO_CBLT}" = "no" ] && err_disabled_mach "Cobalt Microsystems" "CBLT" "cobalt" - show_cobalt_info - fi - - # Exclusive machine patchsets - # These are not allowed to be mixed together, thus only one of them may be applied - # to a tree per merge. - for x in \ - "ip27 SGI Origin" \ - "ip28 SGI Indigo2 Impact R10000" \ - "ip30 SGI Octane" - do - set -- ${x} # Set positional params - mach_ip="${1}" # Grab the first param (HW IP for SGI) - shift # Shift the positions - mach_name="${*}" # Get the rest (Name) - - if use ${mach_ip}; then - # Fetch the value indiciating if the machine is enabled or not - mach_enable="DO_${mach_ip/ip/IP}" - mach_enable="${!mach_enable}" - - # Make sure only one of these exclusive machine patches is selected - [ "${arch_is_selected}" = "no" ] \ - && arch_is_selected="yes" \ - || err_only_one_mach_allowed - - # Is the machine support enabled or not? - [ "${mach_enable}" = "no" ] \ - && err_disabled_mach "${mach_name}" "${mach_ip/ip/IP}" "${mach_ip}" - - # Show relevant information about the machine - show_${mach_ip}_info - fi - done - - # All other systems that don't have a USE flag go here - # These systems have base-line support included in linux-mips git, so - # instead of failing, if disabled, we simply warn the user - if [ "${arch_is_selected}" = "no" ]; then - [ "${DO_IP22}" = "no" ] \ - && err_disabled_mach "SGI Indy/Indigo2 R4x00" "IP22" "skip" \ - || show_ip22_info - [ "${DO_IP32}" = "no" ] \ - && err_disabled_mach "SGI O2" "IP32" "skip" \ - || show_ip32_info - - fi -} - - - -#//------------------------------------------------------------------------------ - - - -# Generic Patches - Safe to use globally -do_generic_patches() { - echo -e "" - ebegin ">>> Generic Patches" - echo -e "" - - # IP22 Patches - epatch ${MIPS_PATCHES}/misc-2.6.15-ip22-hal2-kconfig-tweaks.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-ip22-vino-64bit-ioctl-fixes.patch - - # IP32 Patches - epatch ${MIPS_PATCHES}/misc-2.6.11-ip32-mace-is-always-eth0.patch - - # Cobalt Patches - epatch ${MIPS_PATCHES}/misc-2.6.16-cobalt-bits.patch - - # Generic - epatch ${MIPS_PATCHES}/misc-2.6.16-ths-mips-tweaks.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-mips-iomap-functions.patch - epatch ${MIPS_PATCHES}/misc-2.6.12-seccomp-no-default.patch - epatch ${MIPS_PATCHES}/misc-2.6.11-add-byteorder-to-proc.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-r14k-cpu-prid.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-add-4k_cache_defines.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-rev-i18n.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-fix-4k-cache-macros.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-vgacon-accesses-unmapped-space.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-fix-futex_atomic_op_inuser.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-fix-fpu_save_double-on-64bit.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-disable-stupid-nls-cruft.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-def-arch_has_irq_per_cpu-for-smp.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-fix-mempolicy.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-tweak-makefiles.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-squashfs-3.0.patch - eend -} - - -# NOT safe for production systems -# Use at own risk, do _not_ file bugs on effects of these patches -do_sekrit_patches() { - # /* EXPERIMENTAL - DO NOT USE IN PRODUCTION KERNELS */ - - if use ip32r10k; then - # Modified version of the IP28 cache barriers patch for the kernel - # that removes all the IP28 specific pieces and leaves behind only - # the generic segments. - epatch ${MIPS_PATCHES}/misc-2.6.16-ip32-r10k-support.patch - fi - -## # No Sekrit Patches! -## sleep 0 - - # /* EXPERIMENTAL - DO NOT USE IN PRODUCTION KERNELS */ -} - - -do_security_patches() { - echo -e "" - ebegin ">>> Applying Security Fixes" - echo -e "" - einfo ">>> None to apply! ..." - echo -e "" -## epatch ${MIPS_SECURITY}/ - eend -} - - - -#//------------------------------------------------------------------------------ - - - -# Exclusive Machine Patchsets - -# SGI Origin (IP27) -do_ip27_support() { - echo -e "" - einfo ">>> Patching kernel for SGI Origin (IP27) support ..." - epatch ${MIPS_PATCHES}/misc-2.6.16-ioc3-metadriver-r26.patch - epatch ${MIPS_PATCHES}/misc-2.6.13-ip27-horrible-hacks_may-eat-kittens.patch - epatch ${MIPS_PATCHES}/misc-2.6.14-ip27-rev-pci-tweak.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-ip27-fix-collision-with-hardcode.patch -} - -# SGI Indigo2 Impact R10000 (IP28) -do_ip28_support() { - echo -e "" - einfo ">>> Patching kernel for SGI Indigo2 Impact R10000 (IP28) support ..." - epatch ${MIPS_PATCHES}/misc-2.6.16-ip28-i2_impact-support.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-ip28-impact-mmapfix.patch -} - - -# SGI Octane 'Speedracer' (IP30) -do_ip30_support() { - echo -e "" - einfo ">>> Patching kernel for SGI Octane (IP30) support ..." - epatch ${MIPS_PATCHES}/misc-2.6.16-ioc3-metadriver-r26.patch - epatch ${MIPS_PATCHES}/misc-2.6.16-ip30-octane-support-r27.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-ip30-impact-vpro-mmapfix.patch -} - - - -#//------------------------------------------------------------------------------ - - - -# Renames source trees for the few machines that we have separate patches for -rename_source_tree() { - if [ ! -z "${1}" ]; then - if use ${1}; then - mv ${S} ${S}.${1} - S="${S}.${1}" - fi - fi -} - - - -#//------------------------------------------------------------------------------ - - - -src_unpack() { - local x - - unpack ${A} - mv ${WORKDIR}/linux-${STABLEVER} ${WORKDIR}/linux-${OKV}-${GITDATE} - cd ${S} - - - # If USE_RC == "yes", use a release candidate kernel (2.6.x-rcy) - # OR - # if USE_PNT == "yes", use a point-release kernel (2.6.x.y) - if [ "${USE_RC}" = "yes" -o "${USE_PNT}" = "yes" ]; then - echo -e "" - einfo ">>> linux-${STABLEVER} --> linux-${OKV} ..." - epatch ${WORKDIR}/patch-${OKV} - fi - - - # Update the vanilla sources with linux-mips GIT changes - echo -e "" - einfo ">>> linux-${OKV} --> linux-${OKV}-${GITDATE} patch ..." - epatch ${WORKDIR}/mipsgit-${F_KV}-${GITDATE}.diff - - # Generic patches we always include - do_generic_patches - - # Machine-specific patches - for x in {ip27,ip28,ip30}; do - use ${x} && do_${x}_support - done - - # Patches for experimental use - do_sekrit_patches - - # Security Fixes - do_security_patches - - - # All done, resume normal portage work - kernel_universal_unpack -} - - -src_install() { - # Rename the source trees for exclusive machines - local x - for x in {ip27,ip28,ip30,cobalt}; do - use ${x} && rename_source_tree ${x} - done - - kernel_src_install -} - -pkg_postinst() { - # Symlink /usr/src/linux as appropriate - local my_ksrc="${S##*/}" - for x in {ip27,ip28,ip30,cobalt}; do - use ${x} && my_ksrc="${my_ksrc}.${x}" - done - - if [ ! -e ${ROOT}usr/src/linux ]; then - rm -f ${ROOT}usr/src/linux - ln -sf ${my_ksrc} ${ROOT}/usr/src/linux - fi -} - - -#//------------------------------------------------------------------------------ diff --git a/sys-kernel/mips-sources/mips-sources-2.6.17.3.ebuild b/sys-kernel/mips-sources/mips-sources-2.6.17.3.ebuild deleted file mode 100644 index b2a6de3efc3f..000000000000 --- a/sys-kernel/mips-sources/mips-sources-2.6.17.3.ebuild +++ /dev/null @@ -1,532 +0,0 @@ -# Copyright 1999-2006 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/mips-sources-2.6.17.3.ebuild,v 1.2 2006/07/06 05:03:45 kumba Exp $ - - -# INCLUDED: -# 1) linux sources from kernel.org -# 2) linux-mips.org GIT snapshot diff from 14 Sep 2005 -# 3) Generic Fixes -# 4) Security fixes -# 5) Patch for IP30 Support (http://www.linux-mips.org/~skylark/) -# 5) Patch for IP28 Support (http://home.alphastar.de/fuerst/download.html) -# 6) Patch for Remaining Cobalt Bits (http://www.colonel-panic.org/cobalt-mips/) -# 7) Experimental patches (IP27 hacks, et al) - - -#//------------------------------------------------------------------------------ - - - -# Version Data -OKV=${PV/_/-} -GITDATE="20060618" # Date of diff between kernel.org and lmo GIT -GENPATCHVER="1.23" # Tarball version for generic patches -EXTRAVERSION="-mipsgit-${GITDATE}" -KV="${OKV}${EXTRAVERSION}" -F_KV="${OKV}" # Fetch KV, used to know what mipsgit diff to grab. -STABLEVER="${F_KV}" # Stable Version (2.6.x) -PATCHVER="" - -# Directories -S="${WORKDIR}/linux-${OKV}-${GITDATE}" -MIPS_PATCHES="${WORKDIR}/mips-patches" -MIPS_SECURITY="${WORKDIR}/security" - -# Inherit Eclasses -ETYPE="sources" -inherit kernel eutils versionator - -# Portage Vars -HOMEPAGE="http://www.linux-mips.org/ http://www.gentoo.org/" -SLOT="${OKV}" -PROVIDE="virtual/linux-sources virtual/alsa" -KEYWORDS="-* ~mips" -IUSE="cobalt ip27 ip28 ip30 ip32r10k" -DEPEND=">=sys-devel/gcc-4.1.1" - - -# Version Control Variables -USE_RC="no" # If set to "yes", then attempt to use an RC kernel -USE_PNT="yes" # If set to "yes", then attempt to use a point-release (2.6.x.y) - -# Machine Support Control Variables -DO_IP22="no" # If "yes", enable IP22 support (SGI Indy, Indigo2 R4x00) -DO_IP27="yes" # IP27 support (SGI Origin) -DO_IP28="yes" # IP28 support (SGI Indigo2 Impact R10000) -DO_IP30="yes" # IP30 support (SGI Octane) -DO_IP32="yes" # IP32 support (SGI O2, R5000/RM5200 Only) -DO_CBLT="yes" # Cobalt Support (Cobalt Microsystems) - -# Machine Stable Version Variables -SV_IP22="2.6.15.7-r1" # If set && DO_IP22 == "no", indicates last "good" IP22 version -SV_IP27="" # DO_IP27 == "no", IP27 -SV_IP28="" # DO_IP28 == "no", IP28 -SV_IP30="" # DO_IP30 == "no", IP30 -SV_IP32="" # DO_IP32 == "no", IP32 -SV_CBLT="" # DO_CBLT == "no", Cobalt - - -# If USE_RC == "yes", use a release candidate kernel (2.6.X-rcY) -if [ "${USE_RC}" = "yes" ]; then - KVXY="$(get_version_component_range 1-2)" # Kernel Major/Minor - KVZ="$(get_version_component_range 3)" # Kernel Revision Pt. 1 - KVRC="$(get_version_component_range 4)" # Kernel RC - F_KV="$(get_version_component_range 1-3)-${KVRC}" - STABLEVER="${KVXY}.$((${KVZ} - 1))" # Last stable version (Rev - 1) - PATCHVER="mirror://kernel/linux/kernel/v2.6/testing/patch-${OKV}.bz2" - EXTRAVERSION="-${KVRC}-mipsgit-${GITDATE}" - KV="${OKV}-${EXTRAVERSION}" - USE_PNT="no" -fi - -# If USE_PNT == "yes", use a point release kernel (2.6.x.y) -if [ "${USE_PNT}" = "yes" ]; then - F_KV="$(get_version_component_range 1-3)" # Get Maj/Min/Rev (x.y.z) - STABLEVER="${F_KV}" # Last Revision release - PATCHVER="mirror://kernel/linux/kernel/v2.6/patch-${OKV}.bz2" # Patch for new point release - EXTRAVERSION=".$(get_version_component_range 4)-mipsgit-${GITDATE}" - KV="${OKV}${EXTRAVERSION}" - USE_RC="no" -fi - - -DESCRIPTION="Linux-Mips GIT sources for MIPS-based machines, dated ${GITDATE}" -SRC_URI="mirror://kernel/linux/kernel/v2.6/linux-${STABLEVER}.tar.bz2 - mirror://gentoo/mipsgit-${F_KV}-${GITDATE}.diff.bz2 - mirror://gentoo/${PN}-generic_patches-${GENPATCHVER}.tar.bz2 - ${PATCHVER}" - - - -#//------------------------------------------------------------------------------ - - - -# Error messages -err_only_one_mach_allowed() { - echo -e "" - eerror "A patchset for a specific machine-type has already been selected." - eerror "No other patches for machines-types are permitted. You will need a" - eerror "separate copy of the kernel sources for each different machine-type" - eerror "you want to build a kernel for." - die "Only one machine-type patchset allowed" -} - -err_disabled_mach() { - # Get args - local mach_name="${1}" - local mach_abbr="${2}" - local mach_use="${3}" - - # Get stable version, if exists - local stable_ver="SV_${mach_abbr}" - stable_ver="${!stable_ver}" - - # See if this machine needs a USE passed or skip dying - local has_use - [ ! -z "${mach_use}" -a "${mach_use}" != "skip" ] && has_use="USE=\"${mach_use}\" " - - # Print error && (maybe) die - echo -e "" - eerror "${mach_name} Support has been disabled in this ebuild" - eerror "revision. If you wish to merge ${mach_name} sources, then" - eerror "run ${has_use}emerge =mips-sources-${stable_ver}" - [ "${mach_use}" != "skip" ] && die "${mach_name} Support disabled." - - return 0 -} - - - -#//------------------------------------------------------------------------------ - - - -# Machine Information Messages -# -# If needing to whitespace for formatting in 'einfo', 'ewarn', or 'eerror', use -# \040 for a space instead of the standard space. These functions strip redundant -# white space for some unknown reason - -show_ip22_info() { - echo -e "" - einfo "IP22 systems should work well with this release, however, R4600" - einfo "setups may still experience bugs. Please report any encountered" - einfo "problems." - einfo "" - einfo "Some Notes:" - einfo "\t- Supported graphics card right now is Newport (XL)." - einfo "\t- A driver for Extreme (XZ) is in the works, but remains" - einfo "\t\040\040unreleased by its author for public consumption." - echo -e "" -} - -show_ip27_info() { - echo -e "" - einfo "IP27 support can be considered a game of Russian Roulette. It'll work" - einfo "great for some but not for others. It also uses some rather horrible" - einfo "hacks to get going -- hopefully these will be repaired in the future." - echo -e "" - ewarn "Please keep all kittens and any other small, cute, and fluffy creatures" - ewarn "away from an IP27 Box running these sources. Failure to do so may cause" - ewarn "the IP27 to consume the hapless creature. Consider this your only" - ewarn "warning regarding the experimental nature of this particular machine." - echo -e "" -} - -show_ip28_info() { - echo -e "" - einfo "Support for the Indigo2 Impact R10000 is very experimental. If you do not" - einfo "have a clue in the world about what an IP28 is, what the mips architecture" - einfo "is about, or are new to Gentoo, then it is highly advised that you steer" - einfo "clear of messing with this machine. Due to the experimental nature of this" - einfo "particular class of system, we have to provide such warnings, as it is only" - einfo "for use by those who know what they are doing." - echo -e "" - einfo "Be advised that attempting to run Gentoo/Linux (or any Linux distro) on this" - einfo "system may cause the sudden, unexplained disappearence of any nearby furry" - einfo "creatures. So please keep any and all small pets away from this system at" - einfo "all times." - echo -e "" - ewarn "That said, support for this system REQUIRES that you use the ip28 cascade" - ewarn "profile (${HILITE}default-linux/mips/2006.1/ip28/o32${NORMAL}), because a very special" - ewarn "patch is used on the kernel-gcc (${GOOD}gcc-mips64${NORMAL}) and the kernel itself" - ewarn "in order to support this machine. These patches will only be applied" - ewarn "if \"ip28\" is defined in USE, which the profile sets. As of gcc-4.1.1," - ewarn "this patch is automatically applied. In time, ${HILITE}kgcc64${NORMAL} will replace ${GOOD}gcc-mips64${NORMAL}" - echo -e "" - ewarn "As a final warning, _nothing_ is guaranteed to work smoothly. However," - ewarn "the Impact console driver and X driver do work somewhat decently." - echo -e "" -} - -show_ip30_info() { - echo -e "" - einfo "Things to keep in mind when building a kernel for an SGI Octane:" - einfo "\t- Impact (MGRAS) console and X driver work, please report any bugs." - einfo "\t- VPro (Odyssey) console works, but no X driver exists yet." - einfo "\t- PCI Card Cages should work for many devices, except certain types like" - einfo "\t\040\040PCI-to-PCI bridges (USB hubs, USB flash card readers for example)." - einfo "\t- Do not use OHCI-based USB cards in Octane. They're broke on this machine." - einfo "\t\040\040Patches are welcome to fix the issue." - einfo "\t- Equally, UHCI Cards are showing issues in this release, but should still" - einfo "\t\040\040function somewhat. This issue manifests itself when using pl2303 USB->Serial" - einfo "\t\404\040adapters." - einfo "\t- Other XIO-based devices like MENET and various Impact addons remain" - einfo "\t\040\040untested and are not guaranteed to work. This applies to various" - einfo "\t\040\040digital video conversion boards as well." - echo -e "" -} - -show_ip32_info() { - echo -e "" - einfo "IP32 systems function well, however there are some notes:" - einfo "\t- No driver exists yet for the sound card." - einfo "\t- Framebuffer console is limited to 4MB. Anything greater" - einfo "\t\040\040specified when building the kernel will likely oops or panic" - einfo "\t\040\040the kernel." - einfo "\t- X support is limited to the generic fbdev driver. No X gbefb" - einfo "\t\040\040driver exists for O2 yet." - echo -e "" - - if use ip32r10k; then - eerror "R10000/R12000 Support on IP32 is HIGHLY EXPERIMENTAL!" - eerror "This is intended ONLY for people interested in fixing it up. And" - eerror "by that, I mean people willing to SEND IN PATCHES! If you're not" - eerror "interested in debugging this issue seriously or just want to run it" - eerror "as a user, then DO NOT USE THIS. Really, we mean it." - echo -e "" - eerror "All that said, initial testing seems to indicate that this system will" - eerror "stay online for a reasonable amount of time and will compile packages." - eerror "However, the primary console (which is serial, gbefb seems dead for now)" - eerror "will fill with CRIME CPU errors every so often. A majority of these" - eerror "seem harmless, however a few non-fatal oopses have also been triggered." - echo -e "" - eerror "We're interesting in finding anyone with knowledge of the R10000" - eerror "workaround for speculative execution listed in the R10000 Processor" - eerror "manual, or those who are familiar with the IP32 chipset and the feature" - eerror "called \"Juice\"." - echo -e "" - eerror "To build this kernel tree, make sure you re-merge your kernel compiler" - eerror "with the \"ip32r10k\" USE flag enabled via crossdev. This uses a" - eerror "tweaked version of the gcc cache barriers patch that makes gcc emit " - eerror "more barriers, as IP32 needs them to have any hope of staying online." - fi - - eerror "!!! BIG FAT WARNING" - eerror "!!! To Build 64bit kernels for SGI O2 (IP32) or SGI Indy/Indigo2 R4x00 (IP22)" - eerror "!!! systems, you _need_ to be using a >=gcc-4.1.1 compiler. In prior times, an" - eerror "!!! ugly hack was used to build an ELF64 binary that resembled an ELF32 binary in" - eerror "!!! order to make the ARCS PROMs on these systems boot the kernel. This hack is no" - eerror "!!! longer in use nor supported in 2.6.17 and beyond. In order to achieve the same" - eerror "!!! effect, a new flag available in >=gcc-4.x is used, and as such, makes" - eerror "!!! >=gcc-4.1.1 the preferred compiler for 2.6.17 and beyond." - eerror "" - eerror "!!! One side effect of this is the need to build 64bit IP32 and IP22 kernels with the" - eerror "!!! following make command: ${GOOD}make vmlinux.32${NORMAL}" - eerror "!!! Once done, copy the ${GOOD}vmlinux.32${NORMAL} file and boot that. Do not use the" - eerror "!!! ${BAD}vmlinux${NORMAL} file -- this will either not boot on IP22 or result in" - eerror "!!! undocumented weirdness on IP32 systems." -} - -show_cobalt_info() { - echo -e "" - einfo "Please keep in mind that the 2.6 kernel will NOT boot on Cobalt" - einfo "systems that are still using the old Cobalt bootloader. In" - einfo "order to boot a 2.6 kernel on Cobalt systems, you must be using" - einfo "the CoLo bootloader, which does not have the kernel" - einfo "size limitation that the older bootloader has. If you want" - einfo "to use the newer bootloader, make sure you have sys-boot/colo" - einfo "installed and setup." - echo -e "" -} - - - -#//------------------------------------------------------------------------------ - - - -# Check our USE flags for machine-specific flags and give appropriate warnings/errors. -# Hope the user isn't crazy enough to try using combinations of these flags. -# Only use one machine-specific flag at a time for each type of desired machine-support. -# -# Affected machines: ip27 ip28 ip30 -# Not Affected: cobalt ip22 ip32 -pkg_setup() { - local arch_is_selected="no" - local mach_ip - local mach_enable - local mach_name - local x - - # See if we're on a cobalt system first (must use the cobalt-mips profile) - if use cobalt; then - arch_is_selected="yes" - [ "${DO_CBLT}" = "no" ] && err_disabled_mach "Cobalt Microsystems" "CBLT" "cobalt" - show_cobalt_info - fi - - # Exclusive machine patchsets - # These are not allowed to be mixed together, thus only one of them may be applied - # to a tree per merge. - for x in \ - "ip27 SGI Origin 200/2000" \ - "ip28 SGI Indigo2 Impact R10000" \ - "ip30 SGI Octane" - do - set -- ${x} # Set positional params - mach_ip="${1}" # Grab the first param (HW IP for SGI) - shift # Shift the positions - mach_name="${*}" # Get the rest (Name) - - if use ${mach_ip}; then - # Fetch the value indiciating if the machine is enabled or not - mach_enable="DO_${mach_ip/ip/IP}" - mach_enable="${!mach_enable}" - - # Make sure only one of these exclusive machine patches is selected - [ "${arch_is_selected}" = "no" ] \ - && arch_is_selected="yes" \ - || err_only_one_mach_allowed - - # Is the machine support enabled or not? - [ "${mach_enable}" = "no" ] \ - && err_disabled_mach "${mach_name}" "${mach_ip/ip/IP}" "${mach_ip}" - - # Show relevant information about the machine - show_${mach_ip}_info - fi - done - - # All other systems that don't have a USE flag go here - # These systems have base-line support included in linux-mips git, so - # instead of failing, if disabled, we simply warn the user - if [ "${arch_is_selected}" = "no" ]; then - [ "${DO_IP22}" = "no" ] \ - && err_disabled_mach "SGI Indy/Indigo2 R4x00" "IP22" "skip" \ - || show_ip22_info - [ "${DO_IP32}" = "no" ] \ - && err_disabled_mach "SGI O2" "IP32" "skip" \ - || show_ip32_info - - fi -} - - - -#//------------------------------------------------------------------------------ - - - -# Generic Patches - Safe to use globally -do_generic_patches() { - echo -e "" - ebegin ">>> Generic Patches" - - # IP22 Patches - epatch ${MIPS_PATCHES}/misc-2.6.15-ip22-hal2-kconfig-tweaks.patch # in git - kill in 2.6.18 - epatch ${MIPS_PATCHES}/misc-2.6.16-ip22-vino-64bit-ioctl-fixes.patch - - # IP32 Patches - epatch ${MIPS_PATCHES}/misc-2.6.11-ip32-mace-is-always-eth0.patch - - # Cobalt Patches - epatch ${MIPS_PATCHES}/misc-2.6.17-cobalt-bits.patch - - # Generic - epatch ${MIPS_PATCHES}/misc-2.6.17-ths-mips-tweaks.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-mips-iomap-functions.patch - epatch ${MIPS_PATCHES}/misc-2.6.12-seccomp-no-default.patch - epatch ${MIPS_PATCHES}/misc-2.6.11-add-byteorder-to-proc.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-add-4k_cache_defines.patch # in git - kill in 2.6.18 - epatch ${MIPS_PATCHES}/misc-2.6.17-rev-i18n.patch - epatch ${MIPS_PATCHES}/misc-2.6.15-fix-4k-cache-macros.patch # in git - kill in 2.6.18 - epatch ${MIPS_PATCHES}/misc-2.6.15-vgacon-accesses-unmapped-space.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-n32-sigset-endian-swap.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-squashfs-3.0.patch - eend -} - - -# NOT safe for production systems -# Use at own risk, do _not_ file bugs on effects of these patches -do_sekrit_patches() { - # /* EXPERIMENTAL - DO NOT USE IN PRODUCTION KERNELS */ - - if use ip32r10k; then - # Modified version of the IP28 cache barriers patch for the kernel - # that removes all the IP28 specific pieces and leaves behind only - # the generic segments. - epatch ${MIPS_PATCHES}/misc-2.6.17-ip32-r10k-support.patch - fi - -## # No Sekrit Patches! -## sleep 0 - - # /* EXPERIMENTAL - DO NOT USE IN PRODUCTION KERNELS */ -} - - - -#//------------------------------------------------------------------------------ - - - -# Exclusive Machine Patchsets - -# SGI Origin (IP27) -do_ip27_support() { - echo -e "" - einfo ">>> Patching kernel for SGI Origin 200/2000 (IP27) support ..." - epatch ${MIPS_PATCHES}/misc-2.6.17-ioc3-metadriver-r26.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-ip27-horrible-hacks_may-eat-kittens.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-ip27-rev-pci-tweak.patch -} - -# SGI Indigo2 Impact R10000 (IP28) -do_ip28_support() { - echo -e "" - einfo ">>> Patching kernel for SGI Indigo2 Impact R10000 (IP28) support ..." - epatch ${MIPS_PATCHES}/misc-2.6.17-ip28-i2_impact-support.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-ip28-impact-mmapfix.patch -} - - -# SGI Octane 'Speedracer' (IP30) -do_ip30_support() { - echo -e "" - einfo ">>> Patching kernel for SGI Octane (IP30) support ..." - epatch ${MIPS_PATCHES}/misc-2.6.17-ioc3-metadriver-r26.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-ip30-octane-support-r27.patch - epatch ${MIPS_PATCHES}/misc-2.6.17-ip30-impact-vpro-mmapfix.patch -} - - - -#//------------------------------------------------------------------------------ - - - -# Renames source trees for the few machines that we have separate patches for -rename_source_tree() { - if [ ! -z "${1}" ]; then - if use ${1}; then - mv ${S} ${S}.${1} - S="${S}.${1}" - fi - fi -} - - - -#//------------------------------------------------------------------------------ - - - -src_unpack() { - local x - - unpack ${A} - mv ${WORKDIR}/linux-${STABLEVER} ${WORKDIR}/linux-${OKV}-${GITDATE} - cd ${S} - - - # If USE_RC == "yes", use a release candidate kernel (2.6.x-rcy) - # OR - # if USE_PNT == "yes", use a point-release kernel (2.6.x.y) - if [ "${USE_RC}" = "yes" -o "${USE_PNT}" = "yes" ]; then - echo -e "" - einfo ">>> linux-${STABLEVER} --> linux-${OKV} ..." - epatch ${WORKDIR}/patch-${OKV} - fi - - - # Update the vanilla sources with linux-mips GIT changes - echo -e "" - einfo ">>> linux-${OKV} --> linux-${OKV}-${GITDATE} patch ..." - epatch ${WORKDIR}/mipsgit-${F_KV}-${GITDATE}.diff - - # Generic patches we always include - do_generic_patches - - # Machine-specific patches - for x in {ip27,ip28,ip30}; do - use ${x} && do_${x}_support - done - - # Patches for experimental use - do_sekrit_patches - - - # All done, resume normal portage work - kernel_universal_unpack -} - - -src_install() { - # Rename the source trees for exclusive machines - local x - for x in {ip27,ip28,ip30,cobalt}; do - use ${x} && rename_source_tree ${x} - done - - kernel_src_install -} - -pkg_postinst() { - # Symlink /usr/src/linux as appropriate - local my_ksrc="${S##*/}" - for x in {ip27,ip28,ip30,cobalt}; do - use ${x} && my_ksrc="${my_ksrc}.${x}" - done - - if [ ! -e ${ROOT}usr/src/linux ]; then - rm -f ${ROOT}usr/src/linux - ln -sf ${my_ksrc} ${ROOT}/usr/src/linux - fi -} - - -#//------------------------------------------------------------------------------ |