diff options
Diffstat (limited to 'sys-boot')
-rw-r--r-- | sys-boot/u-boot/Manifest | 3 | ||||
-rw-r--r-- | sys-boot/u-boot/u-boot-2021.10.ebuild | 89 |
2 files changed, 92 insertions, 0 deletions
diff --git a/sys-boot/u-boot/Manifest b/sys-boot/u-boot/Manifest index d6bf081..48ebc4f 100644 --- a/sys-boot/u-boot/Manifest +++ b/sys-boot/u-boot/Manifest @@ -2,8 +2,11 @@ AUX efi-priority.patch 1008 BLAKE2B f054f8f6a06f81bfbb79ef87e5ade7f6df8d7fe11bff AUX sifive-unmached-fdt-initrd-env.patch 600 BLAKE2B 456f264d9c0ab45ce50573bb49bfa437782916b567d1e619e901eb7693fa439d9ed4238ee9678c7e532f6ff90dd8a7f64ff36fcdfa4c34907ea7e94e5af319fd SHA512 d2e740b47c3c2c08cf87eb6a2bd43cf42ed6d530ae9c15f51bc777f30c614b871c4aac0eed6f36636238355eb13889054bad2c2fadf85c496b7ce0265518e6ae DIST meta-sifive-2021.05.zip 664346 BLAKE2B ca98d75c4fc255f3ec99c3e9667e1a5e43fc1db88b83010db3766ff8e70acfaf2741dde96da65265aeef5ca82e1cc93a96ea771dd48cc2c9ff4af24d3feb4b82 SHA512 e60052fc183ddd89a4b0a2a443aedfe22c20ce1134925d6c0d52946ce9a5ca04750408fcb7b191ecc30b4d4b21c9e2f262d0d2b89527923a7cd82dc01a7f2345 DIST meta-sifive-2021.07.zip 797851 BLAKE2B 074b54a4e461d5098ea54a0171ebd394f2af9126dc1480681528a2c0f46f7cd85647a03d19129a0028622b2b4f2f48de49912c9bd591ecccd16145f8cd2d454c SHA512 e083400e4bf32ebf625d6807a96d3b3baf20ccdf1eb55d5d71eef9c1af5640dc499c7a82e6452dd28f57d339a601af29c8bc1e0e7bc58b670e11ce98d733582d +DIST meta-sifive-2021.11.zip 455636 BLAKE2B b2abf1e707f0dd7a12c28ec54a53754006827cda5a7d428bbd121d0df1b11c1eb776ef88c6bd30943092a2c6324e1a9961186d0f0a35aaee90446a0e1e1fea8f SHA512 4bd1c3dc11e7b9415ddc8c15d139925e29ce22532911fd426a66d753d4a9e29ee0948224b5ab40dd0c354583ca579084429021e95e32ede3f71c33ddf9625a04 DIST u-boot-2021.01_rc5.tar.gz 20920395 BLAKE2B ba28811074191d97cdfa2e1e70083a113531a69285ad5e1f662f9d9715007b5441a043adf2592ab406295b1f85089aab7193068bf6f5a92af224bdde4aae21c7 SHA512 1c215c1b71e24d24838249e72ca2d97e3b857176d761a99a6a94597a3ab65940dc3f302c451559411691c716a4c73267f280a46a52d1f4ad97fec7eb13951444 DIST u-boot-2021.07.tar.gz 22092291 BLAKE2B 411ddeacbc3fd1d6125c07b206d804323fb269ecc8f5b0781a6bd215609662f7e4e4203eddf6fd611c756ee9670ecbdbfce17944f78bfa524067d17e7e0e6484 SHA512 900bf89971e1fd52d207aab2f1e3f76f9834b47ab2b82e37c09e11ceba6404c40a9d2fe04b82814034f199685dae10fbb68a26539ff36cb8ea0503f047fa5a91 +DIST u-boot-2021.10.tar.gz 22244295 BLAKE2B 509fa0b1fedd359b987dec597c38b63ab7276cbea49ee1bf86cbacd0f3c3bcde66496164cbc161faf1b972a0358e7a1e4379ba39fe0b01c2aabda5911d5830fa SHA512 0d57f4c580a184ac1aded9089b1acbddef2258b833ad5b1b1aa78085a88f5a3a37d76256c456db726eca0592fb14af2fbd359ce7514084698fd80439fd905885 EBUILD u-boot-2021.01_rc5.ebuild 2659 BLAKE2B 0db14b146e2b876ccfe602fa2b3a6a1693717b8d7e4669b0b02c1b4787466ae7e136798ca85767c3c9613684fc541de1e3ec8eae17de26abe859e95b525c04da SHA512 edf949380cf957797e6e41790f440ad8351edba0037970767eafc28a1ed77b82b63f23900994c3746a4c7ebe28f77a426e8a3fd6a243ecde797f8294b5d80bda EBUILD u-boot-2021.07.ebuild 2719 BLAKE2B dec3f05954aaa90bc31eaaa4a481c4974fbd9f1144ce3577eb04759bef28883bd83692bb9bb14969d5410c735df8b5373df08a7b0c5a0eaf6780e576e7b95b8d SHA512 ccfc2787055595c0f29d820bc5ecec17ed83cec1dc2561aea8f99639674186fbaa00098ef23982047bb5a73978ad111efb1722a59873e4b3661f2dbb83dbabf5 +EBUILD u-boot-2021.10.ebuild 2657 BLAKE2B 7ba9e0d2513f0f7b1a29aa6e603a9c5a19223b1c5d2d3e25a57e2809cde18e9d2af5326bd32ce427a5f17b178052ed732788af031e2f0ab345ed252d11135b3f SHA512 b0a30dc78b736368e1697e67ccc1ae4b4bce7a70952ac9761d0c7b22b65c1be5b0727132ed63fd1da3ae4bd4fc7639c07832c66aa5969c23658480cc5766a25d MISC metadata.xml 785 BLAKE2B fcfc4e1be03d1b5d8c03200e016576c99b31a415ec1a7177993ca9629bd4c979c68bafe2dbfe57cae5eefae4140349e2984f43ed0e1a183606b3e3235ea93062 SHA512 f5d6160b664ec093929760ed4c83ad9505dc2f0c285d05e2a63b403f7e9674af6a96f9eedbf6b692fb4a56336365f822f96e6608d0aaea50400d9615c995297d diff --git a/sys-boot/u-boot/u-boot-2021.10.ebuild b/sys-boot/u-boot/u-boot-2021.10.ebuild new file mode 100644 index 0000000..a34b23c --- /dev/null +++ b/sys-boot/u-boot/u-boot-2021.10.ebuild @@ -0,0 +1,89 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +META_SIFIVE="2021.11" +UBOOT_COMMIT="d80bb749fab53da72c4a0e09b8c2d2aaa3103c91" + +DESCRIPTION="U-Boot with meta-sifive-${META_SIFIVE} patches" +HOMEPAGE="https://source.denx.de/u-boot/u-boot" +SRC_URI="https://source.denx.de/u-boot/u-boot/-/archive/${UBOOT_COMMIT}/u-boot-${UBOOT_COMMIT}.tar.gz -> ${P}.tar.gz + https://github.com/sifive/meta-sifive/archive/refs/heads/${META_SIFIVE}.zip -> meta-sifive-${META_SIFIVE}.zip" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~riscv" + +DEPEND="sys-boot/opensbi sys-apps/dtc dev-lang/swig" +RDEPEND="${DEPEND}" +BDEPEND="" + +IUSE="-1000 -1100 +1200 -1300 -1400 -1500 -1600 -1700 efi-priority" +REQUIRED_USE="^^ ( 1000 1100 1200 1300 1400 1500 1600 1700 )" + +src_unpack() { + unpack ${P}.tar.gz + unpack meta-sifive-${META_SIFIVE}.zip + mv "${WORKDIR}/u-boot-${UBOOT_COMMIT}" "${WORKDIR}/${P}" +} + +src_prepare() { + eapply "${WORKDIR}/meta-sifive-${META_SIFIVE}/recipes-bsp/u-boot/files/riscv64" + + # A default, just to be sure + CONFIG_SPEED=1200000000 + + # Check use flags + use 1000 && CONFIG_SPEED=1000000000 + use 1100 && CONFIG_SPEED=1100000000 + use 1200 && CONFIG_SPEED=1200000000 + use 1300 && CONFIG_SPEED=1300000000 + use 1400 && CONFIG_SPEED=1400000000 + use 1500 && CONFIG_SPEED=1500000000 + use 1600 && CONFIG_SPEED=1600000000 + use 1700 && CONFIG_SPEED=1700000000 + + # Actually modify the dtsi file + sed -i -E -e "/cpus/,/cpu0/ s/assigned-clock-rates = <[0-9]+>/assigned-clock-rates = <${CONFIG_SPEED}>/" "${WORKDIR}/${P}/arch/riscv/dts/fu740-c000-u-boot.dtsi" + elog "Set CPU frquency to $((CONFIG_SPEED/1000000)) Mhz" + + if use efi-priority; then + eapply "${FILESDIR}/efi-priority.patch" + fi + + eapply_user +} + +src_configure() +{ + # Apply Unmatched defconfig + emake sifive_unmatched_defconfig +} + +src_compile() { + # Find opensbi + export OPENSBI=`find /usr/share/opensbi-* -name fw_dynamic.bin | sort | tail -n 1` + if [ -z "$OPENSBI" ]; then + die "Can't find OpenSBI, is sys-boot/opensbi installed?" + fi + elog "Using OpenSBI at ${OPENSBI}" + + # Start the build + emake +} + +src_install() { + mkdir -p "${D}/usr/share/${P}" + cp "${WORKDIR}/${P}/u-boot.itb" "${D}/usr/share/${P}" + cp "${WORKDIR}/${P}/spl/u-boot-spl.bin" "${D}/usr/share/${P}" +} + +pkg_postinst() +{ + einfo "U-Boot files have been installed in /usr/share/${P}. In order" + einfo "to boot with this U-Boot you need to install it to the correct partitions" + einfo "with dd. For example:" + einfo "dd if=/usr/share/${P}/u-boot-spl.bin of=<partition with type \"HiFive Unleashed FSBL\">" + einfo "dd if=/usr/share/${P}/u-boot.itb of=<partition with type \"HiFive Unleashed BBL\">" +} |