mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
added alarm/uboot-macchiatobin
This commit is contained in:
parent
7fb7c8a80c
commit
393d3e8578
7 changed files with 280 additions and 0 deletions
25
alarm/uboot-macchiatobin/0001-ATF-toolchain-fixes.patch
Normal file
25
alarm/uboot-macchiatobin/0001-ATF-toolchain-fixes.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
From cf823a1df66cc258afe1f2c870b4cbd182489f97 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
Date: Sun, 25 Feb 2018 12:28:01 -0700
|
||||
Subject: [PATCH] ATF toolchain fixes
|
||||
|
||||
---
|
||||
Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 5b67763e..5571a9c0 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -246,7 +246,7 @@ TF_CFLAGS += -nostdinc -ffreestanding -Wall \
|
||||
-std=c99 -c -Os \
|
||||
$(TF_CFLAGS_$(ARCH)) \
|
||||
${DEFINES} ${INCLUDES}
|
||||
-TF_CFLAGS += -ffunction-sections -fdata-sections
|
||||
+TF_CFLAGS += -ffunction-sections -fdata-sections -fno-stack-protector -fno-pie
|
||||
|
||||
LDFLAGS += --fatal-warnings -O1
|
||||
LDFLAGS += --gc-sections
|
||||
--
|
||||
2.14.1
|
||||
|
25
alarm/uboot-macchiatobin/0001-DDR-toolchain-fixes.patch
Normal file
25
alarm/uboot-macchiatobin/0001-DDR-toolchain-fixes.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
From bacc2b70d8b7258bb4c07c8ac1c490c604d6efb4 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
Date: Sun, 25 Feb 2018 12:28:30 -0700
|
||||
Subject: [PATCH] DDR toolchain fixes
|
||||
|
||||
---
|
||||
Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 7c70d75..83bdb5e 100755
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -253,7 +253,7 @@ INCLUDE += $(PLAT_INCLUDES)
|
||||
MV_DDR_LIBNAME = mv_ddr_lib.a
|
||||
MV_DDR_LIB = $(OBJ_DIR)/$(MV_DDR_LIBNAME)
|
||||
|
||||
-CFLAGS = -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc
|
||||
+CFLAGS = -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc -fno-stack-protector -fno-pie
|
||||
# PLATFORM is set in ble/ble.mk
|
||||
CFLAGS += -march=armv8-a -fpie $(INCLUDE)
|
||||
CFLAGS += -DMV_DDR_ATF -DCONFIG_APN806
|
||||
--
|
||||
2.14.1
|
||||
|
122
alarm/uboot-macchiatobin/0001-arch-linux-arm-modifications.patch
Normal file
122
alarm/uboot-macchiatobin/0001-arch-linux-arm-modifications.patch
Normal file
|
@ -0,0 +1,122 @@
|
|||
From e3d5a4003a0d24aba8600300fbbe6b6b75d21464 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
Date: Sun, 25 Feb 2018 12:20:18 -0700
|
||||
Subject: [PATCH] arch linux arm modifications
|
||||
|
||||
---
|
||||
configs/mvebu_mcbin-88f8040_defconfig | 1 +
|
||||
drivers/usb/eth/r8152.c | 4 +--
|
||||
include/configs/mvebu_armada-common.h | 61 ++++++++++++++---------------------
|
||||
3 files changed, 27 insertions(+), 39 deletions(-)
|
||||
|
||||
diff --git a/configs/mvebu_mcbin-88f8040_defconfig b/configs/mvebu_mcbin-88f8040_defconfig
|
||||
index 8932ceac3c..b85e318e37 100644
|
||||
--- a/configs/mvebu_mcbin-88f8040_defconfig
|
||||
+++ b/configs/mvebu_mcbin-88f8040_defconfig
|
||||
@@ -84,3 +84,4 @@ CONFIG_USB_XHCI_HCD=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_SMBIOS_MANUFACTURER=""
|
||||
+CONFIG_MVEBU_MMC_BOOT
|
||||
diff --git a/drivers/usb/eth/r8152.c b/drivers/usb/eth/r8152.c
|
||||
index ed441f3243..e09351b0d2 100644
|
||||
--- a/drivers/usb/eth/r8152.c
|
||||
+++ b/drivers/usb/eth/r8152.c
|
||||
@@ -26,7 +26,7 @@ struct r8152_dongle {
|
||||
unsigned short product;
|
||||
};
|
||||
|
||||
-static const struct r8152_dongle const r8152_dongles[] = {
|
||||
+static const struct r8152_dongle r8152_dongles[] = {
|
||||
/* Realtek */
|
||||
{ 0x0bda, 0x8050 },
|
||||
{ 0x0bda, 0x8152 },
|
||||
@@ -59,7 +59,7 @@ struct r8152_version {
|
||||
bool gmii;
|
||||
};
|
||||
|
||||
-static const struct r8152_version const r8152_versions[] = {
|
||||
+static const struct r8152_version r8152_versions[] = {
|
||||
{ 0x4c00, RTL_VER_01, 0 },
|
||||
{ 0x4c10, RTL_VER_02, 0 },
|
||||
{ 0x5c00, RTL_VER_03, 1 },
|
||||
diff --git a/include/configs/mvebu_armada-common.h b/include/configs/mvebu_armada-common.h
|
||||
index c406a7aa1b..de084959bc 100644
|
||||
--- a/include/configs/mvebu_armada-common.h
|
||||
+++ b/include/configs/mvebu_armada-common.h
|
||||
@@ -34,43 +34,7 @@
|
||||
#define CONFIG_HAS_ETH1
|
||||
#define CONFIG_HAS_ETH2
|
||||
#define CONFIG_ETHPRIME "eth0"
|
||||
-#define CONFIG_ROOTPATH "/srv/nfs/" /* Default Dir for NFS */
|
||||
-#define CONFIG_EXTRA_ENV_SETTINGS "kernel_addr=0x5000000\0" \
|
||||
- "initrd_addr=0xa00000\0" \
|
||||
- "initrd_size=0x2000000\0" \
|
||||
- "fdt_addr=0x4f00000\0" \
|
||||
- "loadaddr=0x5000000\0" \
|
||||
- "fdt_high=0xffffffffffffffff\0" \
|
||||
- "hostname=marvell\0" \
|
||||
- "ramfs_addr=0x8000000\0" \
|
||||
- "ramfs_name=-\0" \
|
||||
- "fdt_name=fdt.dtb\0" \
|
||||
- "netdev=eth0\0" \
|
||||
- "ethaddr=00:51:82:11:22:00\0" \
|
||||
- "eth1addr=00:51:82:11:22:01\0" \
|
||||
- "eth2addr=00:51:82:11:22:02\0" \
|
||||
- "eth3addr=00:51:82:11:22:03\0" \
|
||||
- "image_name=Image\0" \
|
||||
- "get_ramfs=if test \"${ramfs_name}\"" \
|
||||
- " != \"-\"; then setenv " \
|
||||
- "ramfs_addr 0x8000000; " \
|
||||
- "tftpboot $ramfs_addr " \
|
||||
- "$ramfs_name; else setenv " \
|
||||
- "ramfs_addr -;fi\0" \
|
||||
- "get_images=tftpboot $kernel_addr " \
|
||||
- "$image_name; tftpboot " \
|
||||
- "$fdt_addr $fdt_name; " \
|
||||
- "run get_ramfs\0" \
|
||||
- "console=" CONFIG_DEFAULT_CONSOLE "\0"\
|
||||
- "root=root=/dev/nfs rw\0" \
|
||||
- "set_bootargs=setenv bootargs $console"\
|
||||
- " $root ip=$ipaddr:$serverip:" \
|
||||
- "$gatewayip:$netmask:$hostname"\
|
||||
- ":$netdev:none nfsroot="\
|
||||
- "$serverip:$rootpath " \
|
||||
- "$extra_params"
|
||||
-#define CONFIG_BOOTCOMMAND "run get_images; run set_bootargs; " \
|
||||
- "booti $kernel_addr $ramfs_addr $fdt_addr"
|
||||
+
|
||||
#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
|
||||
/*
|
||||
* For booting Linux, the board info and command line data
|
||||
@@ -175,4 +139,27 @@
|
||||
*/
|
||||
#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
|
||||
|
||||
+#include <config_distro_defaults.h>
|
||||
+
|
||||
+#define BOOT_TARGET_DEVICES(func) \
|
||||
+ func(MMC, mmc, 1) \
|
||||
+ func(MMC, mmc, 0) \
|
||||
+ func(USB, usb, 0) \
|
||||
+ func(SCSI, scsi, 0)
|
||||
+
|
||||
+#include <config_distro_bootcmd.h>
|
||||
+
|
||||
+#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
+ "scriptaddr=0x4d00000\0" \
|
||||
+ "pxefile_addr_r=0x4e00000\0" \
|
||||
+ "fdt_addr_r=0x4f00000\0" \
|
||||
+ "kernel_addr_r=0x5000000\0" \
|
||||
+ "ramdisk_addr_r=0x8000000\0" \
|
||||
+ "fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
|
||||
+ "eth1addr=00:51:82:11:22:01\0" \
|
||||
+ "eth2addr=00:51:82:11:22:02\0" \
|
||||
+ "eth3addr=00:51:82:11:22:03\0" \
|
||||
+ "ethaddr=00:51:82:11:22:00\0" \
|
||||
+ BOOTENV
|
||||
+
|
||||
#endif /* _CONFIG_MVEBU_ARMADA_H */
|
||||
--
|
||||
2.14.1
|
||||
|
64
alarm/uboot-macchiatobin/PKGBUILD
Normal file
64
alarm/uboot-macchiatobin/PKGBUILD
Normal file
|
@ -0,0 +1,64 @@
|
|||
# U-Boot: MACCHIATObin
|
||||
# Maintainer: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
|
||||
buildarch=8
|
||||
|
||||
pkgname=uboot-macchiatobin
|
||||
pkgver=2017.03
|
||||
pkgrel=1
|
||||
pkgdesc="U-Boot for MACCHIATObin"
|
||||
arch=('aarch64')
|
||||
url='http://www.denx.de/wiki/U-Boot/WebHome'
|
||||
license=('GPL' 'custom')
|
||||
install=$pkgname.install
|
||||
backup=('boot/boot.txt' 'boot/boot.scr')
|
||||
makedepends=('bc' 'dtc145' 'git')
|
||||
options=('!strip')
|
||||
source=('git+https://github.com/MarvellEmbeddedProcessors/u-boot-marvell#branch=u-boot-2017.03-armada-17.10'
|
||||
'git+https://github.com/MarvellEmbeddedProcessors/binaries-marvell#branch=binaries-marvell-armada-17.10'
|
||||
'git+https://github.com/MarvellEmbeddedProcessors/atf-marvell#branch=atf-v1.3-armada-17.10'
|
||||
'git+https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell#branch=mv_ddr-armada-17.10'
|
||||
'0001-arch-linux-arm-modifications.patch'
|
||||
'0001-ATF-toolchain-fixes.patch'
|
||||
'0001-DDR-toolchain-fixes.patch'
|
||||
'boot.txt'
|
||||
'mkscr')
|
||||
md5sums=('SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'77079375821a6af000ab0ab9c5007539'
|
||||
'd00628523a4fc02898d0115dd9f11d29'
|
||||
'9fd32c9b80e6773f4188c8b95539a281'
|
||||
'7eabc1489d5248f4a7809eb2c0d189be'
|
||||
'021623a04afd29ac3f368977140cfbfd')
|
||||
|
||||
prepare() {
|
||||
unset CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
|
||||
cd u-boot-marvell
|
||||
patch -p1 -i ../0001-arch-linux-arm-modifications.patch
|
||||
cd ../atf-marvell
|
||||
patch -p1 -i ../0001-ATF-toolchain-fixes.patch
|
||||
cd ../mv-ddr-marvell
|
||||
patch -p1 -i ../0001-DDR-toolchain-fixes.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
cd u-boot-marvell
|
||||
make mvebu_mcbin-88f8040_defconfig
|
||||
echo 'CONFIG_IDENT_STRING=" Arch Linux ARM"' >> .config
|
||||
make
|
||||
|
||||
cd ..
|
||||
export BL33=$(pwd)/u-boot-marvell/u-boot.bin
|
||||
export SCP_BL2=$(pwd)/binaries-marvell/mrvl_scp_bl2_8040.img
|
||||
export DDR_PATH=$(pwd)/mv-ddr-marvell
|
||||
|
||||
cd atf-marvell
|
||||
make USE_COHERENT_MEM=0 LOG_LEVEL=20 MV_DDR_PATH=${DDR_PATH} PLAT=a80x0_mcbin all fip
|
||||
}
|
||||
|
||||
package() {
|
||||
install -Dpt "${pkgdir}"/boot atf-marvell/build/a80x0_mcbin/release/flash-image.bin mkscr boot.txt
|
||||
u-boot-marvell/tools/mkimage -A arm -O linux -T script -C none -n "U-Boot boot script" -d boot.txt "${pkgdir}"/boot/boot.scr
|
||||
}
|
15
alarm/uboot-macchiatobin/boot.txt
Normal file
15
alarm/uboot-macchiatobin/boot.txt
Normal file
|
@ -0,0 +1,15 @@
|
|||
# After modifying, run ./mkscr
|
||||
|
||||
test -n "${distro_bootpart}" || setenv distro_bootpart 1
|
||||
part uuid ${devtype} ${devnum}:${distro_bootpart} uuid
|
||||
setenv bootargs "console=ttyS0,115200 root=PARTUUID=${uuid} rw rootwait earlycon"
|
||||
|
||||
if load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} /boot/Image; then
|
||||
if load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} /boot/dtbs/marvell/${fdtfile}; then
|
||||
if load ${devtype} ${devnum}:${distro_bootpart} ${ramdisk_addr_r} /boot/initramfs-linux.img; then
|
||||
booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r};
|
||||
else
|
||||
booti ${kernel_addr_r} - ${fdt_addr_r};
|
||||
fi;
|
||||
fi;
|
||||
fi
|
9
alarm/uboot-macchiatobin/mkscr
Executable file
9
alarm/uboot-macchiatobin/mkscr
Executable file
|
@ -0,0 +1,9 @@
|
|||
#!/bin/bash
|
||||
|
||||
if [[ ! -x /usr/bin/mkimage ]]; then
|
||||
echo "mkimage not found. Please install uboot-tools:"
|
||||
echo " pacman -S uboot-tools"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkimage -A arm -O linux -T script -C none -n "U-Boot boot script" -d boot.txt boot.scr
|
20
alarm/uboot-macchiatobin/uboot-macchiatobin.install
Normal file
20
alarm/uboot-macchiatobin/uboot-macchiatobin.install
Normal file
|
@ -0,0 +1,20 @@
|
|||
flash_uboot() {
|
||||
dev="/dev/mmcblk1"
|
||||
|
||||
echo "A new U-Boot version needs to be flashed onto ${dev}."
|
||||
echo "Do you want to do this now? [y|N]"
|
||||
read -r shouldwe
|
||||
if [[ $shouldwe =~ ^([yY][eE][sS]|[yY])$ ]]; then
|
||||
dd if=/boot/flash-image.bin of=${dev} seek=4096 conv=fdatasync,notrunc
|
||||
else
|
||||
echo "You can do this later by reinstalling the package."
|
||||
fi
|
||||
}
|
||||
|
||||
post_install() {
|
||||
flash_uboot
|
||||
}
|
||||
|
||||
post_upgrade() {
|
||||
flash_uboot
|
||||
}
|
Loading…
Reference in a new issue