diff options
Diffstat (limited to 'libre/uboot4extlinux-ti-soc/PKGBUILD')
-rw-r--r-- | libre/uboot4extlinux-ti-soc/PKGBUILD | 168 |
1 files changed, 168 insertions, 0 deletions
diff --git a/libre/uboot4extlinux-ti-soc/PKGBUILD b/libre/uboot4extlinux-ti-soc/PKGBUILD new file mode 100644 index 000000000..c59c42bdb --- /dev/null +++ b/libre/uboot4extlinux-ti-soc/PKGBUILD @@ -0,0 +1,168 @@ +# U-Boot: BeagleBoard, BeagleBone, BeagleBone Black +# Maintainer: André Silva <emulatorman@hyperbola.info> +# Contributor: Jookia <166291@gmail.com> +# Contributor: Márcio Silva <coadde@hyperbola.info> + +pkgbase=uboot4extlinux-ti-soc +pkgname=('uboot4extlinux-am335x_bone' + 'uboot4extlinux-chiliboard' + 'uboot4extlinux-omap3_beagle' + 'uboot4extlinux-omap4_panda') +pkgver=2020.07 +pkgrel=1 +arch=('armv7h') +url="http://git.denx.de/u-boot.git/" +license=('GPL') +makedepends=('bc' 'bison' 'dtc' 'flex' 'python' 'python2' 'swig') +backup=(boot/extlinux/extlinux.conf) +source=("ftp://ftp.denx.de/pub/u-boot/u-boot-${pkgver}.tar.bz2" + '0001-omap34xx-SPL-enable-MMC-raw-boot-with-u-boot.img.patch' + 'extlinux-am335x.conf' + 'extlinux-omap.conf') +sha256sums=('c1f5bf9ee6bb6e648edbf19ce2ca9452f614b08a9f886f1a566aa42e8cf05f6a' + 'SKIP' + 'SKIP' + 'SKIP') + +boards=('am335x_evm' + 'chiliboard' + 'omap3_beagle' + 'omap4_panda') + +prepare() { + cd u-boot-${pkgver} + + # The default is 0x300 512b blocks which forces u-boot.img to be locarted at + # 384k on the microSD. As u-boot.img is big, it often goes over the 1MB empty + # space that is created by default when partitioning block devices. That + # corrupts the first partition. Using 0x200 leaves more space to u-boot.img + # and is well aligned to 128k. + for i in ${boards[@]}; do + echo 'CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x200' >> \ + configs/${i}_defconfig + done + + # See the 0001-omap34xx-SPL-enable-MMC-raw-boot-with-u-boot.img.patch for + # rationale for this configuration + echo '# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set' >> \ + configs/omap3_beagle_defconfig + + # We want to enable users to use both RAW mode and filesystems to install + # u-boot, but as filesystems are more complicated due to constraints that + # need to be respected for it to work we default to raw block. This patch + # restores the ability of using RAW block mode on OMAP >= 2. RAW partitions + # have not been tested yet and may or may not work but they have constraints + # as well. + patch -Np1 -i ../0001-omap34xx-SPL-enable-MMC-raw-boot-with-u-boot.img.patch +} + +build() { + cd u-boot-${pkgver} + + unset CFLAGS CXXFLAGS LDFLAGS + + for i in ${boards[@]}; do + mkdir -p ../bin_${i} + make distclean + make ${i}_defconfig + echo 'CONFIG_IDENT_STRING=" Parabola GNU/Linux-libre"' >> .config + make EXTRAVERSION=-${pkgrel} + mv -f MLO u-boot.img ../bin_${i} + done +} + +package_uboot4extlinux-am335x_bone() { + pkgdesc="U-Boot with Extlinux support for various BeagleBones, the AM335x GP EVM and the EVM SK" + + install=${pkgbase}.install + provides=('uboot4extlinux-am335x') + conflicts=('uboot-am335x_bone' 'uboot4grub-am335x_bone') + + install -d "${pkgdir}"/boot/extlinux + install -d "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 \ + bin_am335x_evm/MLO \ + bin_am335x_evm/u-boot.img \ + "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 extlinux-am335x.conf "${pkgdir}"/boot/extlinux/extlinux.conf + + # Package documentation as well + install -d "${pkgdir}"/usr/share/doc/u-boot + # The README might move in doc/board/ at some point + install -Dm644 u-boot-${pkgver}/board/ti/am335x/README \ + "${pkgdir}"/usr/share/doc/u-boot/am335x_bone.txt +} + +package_uboot4extlinux-chiliboard() { + pkgdesc="U-Boot with Extlinux support for the ChiliBoard" + + install=${pkgbase}.install + provides=('uboot4extlinux-am335x') + conflicts=('uboot-chiliboard') + + install -d "${pkgdir}"/boot/extlinux + install -d "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 \ + bin_chiliboard/MLO \ + bin_chiliboard/u-boot.img \ + "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 extlinux-am335x.conf "${pkgdir}"/boot/extlinux/extlinux.conf + + # Package documentation as well + install -d "${pkgdir}"/usr/share/doc/u-boot + # The README might move in doc/board/ at some point + install -Dm644 u-boot-${pkgver}/board/grinn/chiliboard/README \ + "${pkgdir}"/usr/share/doc/u-boot/chiliboard.txt +} + +package_uboot4extlinux-omap3_beagle() { + pkgdesc="U-Boot with Extlinux support for various BeagleBoards" + + install=${pkgbase}.install + provides=('uboot4extlinux-omap3') + conflicts=('grub-omap3_beagle' + 'grub-omap3_beagle_xm' + 'grub-omap3_beagle_xm_ab' + 'uboot-omap3_beagle') + + install -d "${pkgdir}"/boot/extlinux + install -d "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 \ + bin_omap3_beagle/MLO \ + bin_omap3_beagle/u-boot.img \ + "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 extlinux-omap.conf "${pkgdir}"/boot/extlinux/extlinux.conf + + # Package documentation as well + install -d "${pkgdir}"/usr/share/doc/u-boot + # The README might be converted to ReStructuredText at some point and be moved because of that + install -Dm644 u-boot-${pkgver}/doc/README.omap3 "${pkgdir}"/usr/share/doc/u-boot/ +} + +package_uboot4extlinux-omap4_panda() { + pkgdesc="U-Boot with Extlinux support for the PandaBoard and PandaBoard ES" + + install=${pkgbase}.install + provides=('uboot4extlinux-omap4_panda') + + conflicts=('uboot4grub-omap4_panda' + 'uboot-omap4_panda' + 'uboot-pandaboard-linux-libre' + 'uboot-pandaboard') + + install -d "${pkgdir}"/boot/extlinux + install -d "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 \ + bin_omap4_panda/MLO \ + bin_omap4_panda/u-boot.img \ + "${pkgdir}"/boot/u-boot/images/ + + install -Dm644 extlinux-omap.conf "${pkgdir}"/boot/extlinux/extlinux.conf +} |