blob: 786e33996831b222b3ffc67d599b9c5d20c38510 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
# U-Boot: BeagleBoard
# Maintainer: André Silva <emulatorman@hyperbola.info>
# Contributor: Jookia <166291@gmail.com>
# Contributor: Márcio Silva <coadde@hyperbola.info>
pkgbase=uboot4extlinux-omap3
pkgname=('uboot4extlinux-omap3_beagle')
pkgver=2020.04
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.conf')
sha256sums=('fe732aaf037d9cc3c0909bad8362af366ae964bbdac6913a34081ff4ad565372'
'SKIP'
'SKIP')
boards=('omap3_beagle')
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.
echo 'CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x200' >> configs/omap3_beagle_defconfig
# 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. 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-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.conf "${pkgdir}"/boot/extlinux
# 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/
}
|