From: CameronNemo <CameronNemo@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] Pinebook Pro U-Boot: update to 2020.10, TF-A 2.3
Date: Sun, 22 Nov 2020 00:43:47 +0100 [thread overview]
Message-ID: <20201121234347.xzA_EU1l5r-WFT_eBrEebaIsyS9v3JMBaBTmYbB_4Zs@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-21199@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 393 bytes --]
There is an updated pull request by CameronNemo against master on the void-packages repository
https://github.com/CameronNemo/void-packages atf-rk3399-bl31
https://github.com/void-linux/void-packages/pull/21199
Pinebook Pro U-Boot: update to 2020.10, TF-A 2.3
@renatoaguiar care to give this a spin?
A patch file from https://github.com/void-linux/void-packages/pull/21199.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-atf-rk3399-bl31-21199.patch --]
[-- Type: text/x-diff, Size: 9431 bytes --]
From 94340233a68f475a2d89e608a666b1d0befe9008 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Tue, 21 Apr 2020 02:55:39 -0700
Subject: [PATCH 1/2] New Package: atf-rk3399-bl31-2.4.
---
srcpkgs/atf-rk3399-bl31/template | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 srcpkgs/atf-rk3399-bl31/template
diff --git a/srcpkgs/atf-rk3399-bl31/template b/srcpkgs/atf-rk3399-bl31/template
new file mode 100644
index 00000000000..9eb9330fbae
--- /dev/null
+++ b/srcpkgs/atf-rk3399-bl31/template
@@ -0,0 +1,27 @@
+# Template file for 'atf-rk3399-bl31'
+pkgname=atf-rk3399-bl31
+version=2.4
+revision=1
+archs="aarch64*"
+wrksrc="trusted-firmware-a-${version}"
+hostmakedepends="cross-arm-none-eabi"
+short_desc="ARM Trusted Firmware for Rockchip rk3399 boards (ARMv8, bl31 option)"
+maintainer="Cameron Nemo <cnemo@tutanota.com>"
+license="BSD-3-Clause"
+homepage="https://developer.trustedfirmware.org/dashboard/view/6/"
+distfiles="https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/snapshot/trusted-firmware-a-${version}.tar.gz"
+checksum=bf3eb3617a74cddd7fb0e0eacbfe38c3258ee07d4c8ed730deef7a175cc3d55b
+nostrip=yes
+
+do_build() {
+ unset CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
+ if [ "$CROSS_BUILD" ]; then
+ export CROSS_COMPILE=${XBPS_CROSS_TRIPLET}-
+ fi
+ make ${makejobs} PLAT=rk3399 bl31
+}
+
+do_install() {
+ vinstall build/rk3399/release/bl31/bl31.elf 0755 usr/lib/trusted-firmware-a/rk3399
+ vlicense docs/license.rst
+}
From 5ac5bdee42763d8e87c833e8cff860b4e56d7edf Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Tue, 21 Apr 2020 02:55:45 -0700
Subject: [PATCH 2/2] pinebookpro-uboot: update to 2010.10.
Switch from forked repo to upstream repo.
Also use the atf-rk3399-bl31 package for ARM trusted firmware blob.
---
.../files/fcommon-Makefile.patch | 20 -------
.../patches/no-delay-autoboot.patch | 32 +++++++++++
.../patches/sdcard-boot.patch | 39 ++++++++++++++
srcpkgs/pinebookpro-uboot/template | 54 ++++++-------------
4 files changed, 88 insertions(+), 57 deletions(-)
delete mode 100644 srcpkgs/pinebookpro-uboot/files/fcommon-Makefile.patch
create mode 100644 srcpkgs/pinebookpro-uboot/patches/no-delay-autoboot.patch
create mode 100644 srcpkgs/pinebookpro-uboot/patches/sdcard-boot.patch
diff --git a/srcpkgs/pinebookpro-uboot/files/fcommon-Makefile.patch b/srcpkgs/pinebookpro-uboot/files/fcommon-Makefile.patch
deleted file mode 100644
index d303e90352a..00000000000
--- a/srcpkgs/pinebookpro-uboot/files/fcommon-Makefile.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- pbp-uboot/Makefileg 2020-09-12 15:05:30.139856893 +0200
-+++ pbp-uboot/Makefile 2020-09-12 15:06:45.963853869 +0200
-@@ -273,7 +273,7 @@
-
- HOSTCC = cc
- HOSTCXX = c++
--HOSTCFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer \
-+HOSTCFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fcommon \
- $(if $(CONFIG_TOOLS_DEBUG),-g)
- HOSTCXXFLAGS = -O2
-
-@@ -413,7 +413,7 @@
- KBUILD_CPPFLAGS := -D__KERNEL__ -D__UBOOT__
-
- KBUILD_CFLAGS := -Wall -Wstrict-prototypes \
-- -Wno-format-security \
-+ -Wno-format-security -fcommon \
- -fno-builtin -ffreestanding $(CSTD_FLAG)
- KBUILD_CFLAGS += -fshort-wchar -fno-strict-aliasing
- KBUILD_AFLAGS := -D__ASSEMBLY__
diff --git a/srcpkgs/pinebookpro-uboot/patches/no-delay-autoboot.patch b/srcpkgs/pinebookpro-uboot/patches/no-delay-autoboot.patch
new file mode 100644
index 00000000000..8b7d262e3e6
--- /dev/null
+++ b/srcpkgs/pinebookpro-uboot/patches/no-delay-autoboot.patch
@@ -0,0 +1,32 @@
+commit e061f5477ee8e8d14267c4ab98dd451d7ce137be
+Author: Cameron Nemo <cnemo@tutanota.com>
+Date: Mon Sep 7 09:14:07 2020 -0700
+
+ rockchip: Pinebook Pro: do not delay autoboot
+
+ Use a key combo for preventing autoboot rather than delaying boot speed.
+ Delaying boot speed on an end user portable device can lead to bad UX.
+
+ Signed-off-by: Cameron Nemo <cnemo@tutanota.com>
+
+diff --git configs/pinebook-pro-rk3399_defconfig configs/pinebook-pro-rk3399_defconfig
+index 9a7487b04f..e9605a0ffd 100644
+--- configs/pinebook-pro-rk3399_defconfig
++++ configs/pinebook-pro-rk3399_defconfig
+@@ -11,7 +11,7 @@ CONFIG_SPL_SPI_FLASH_SUPPORT=y
+ CONFIG_SPL_SPI_SUPPORT=y
+ CONFIG_DEFAULT_DEVICE_TREE="rk3399-pinebook-pro"
+ CONFIG_DEBUG_UART=y
+-CONFIG_BOOTDELAY=3
++CONFIG_BOOTDELAY=0
+ CONFIG_USE_PREBOOT=y
+ CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-pinebook-pro.dtb"
+ CONFIG_MISC_INIT_R=y
+@@ -87,3 +87,7 @@ CONFIG_VIDEO_ROCKCHIP=y
+ CONFIG_DISPLAY_ROCKCHIP_EDP=y
+ CONFIG_SPL_TINY_MEMSET=y
+ CONFIG_ERRNO_STR=y
++CONFIG_AUTOBOOT_PROMPT="Autobooting in %d seconds... press q or Ctrl-C to interrupt\n"
++CONFIG_AUTOBOOT_KEYED=y
++CONFIG_AUTOBOOT_STOP_STR="q"
++CONFIG_AUTOBOOT_KEYED_CTRLC=y
diff --git a/srcpkgs/pinebookpro-uboot/patches/sdcard-boot.patch b/srcpkgs/pinebookpro-uboot/patches/sdcard-boot.patch
new file mode 100644
index 00000000000..ea4a85eb248
--- /dev/null
+++ b/srcpkgs/pinebookpro-uboot/patches/sdcard-boot.patch
@@ -0,0 +1,39 @@
+commit 265376282a58c71f1ec9215653e98c602524b91c
+Author: Cameron Nemo <cnemo@tutanota.com>
+Date: Mon Sep 7 08:37:24 2020 -0700
+
+ rockchip: Pinebook Pro: fix mmc boot ordering
+
+ On the Pinebook Pro, and perhaps some other boards, the mmc indices are
+ opposite from what is implied by the comment in
+ include/configs/rockchip-common.h.
+
+ This commit fixes the boot ordering to prioritize the SD card over eMMC.
+
+ Most distributions of U-Boot that actually target rk3399 boards apply a
+ similar patch, such as Manjaro (shipped by default on PBP) and armbian.
+
+ https://gitlab.manjaro.org/manjaro-arm/packages/core/uboot-pinebookpro/-/blob/60ed56b9bf8809309ec6252bfc45bca38c2b858a/0002-Correct-boot-order-to-be-USB-SD-eMMC.patch
+ https://github.com/armbian/build/blob/5a2b2c360b9c26ca4bd0d309af7cd3994fd08b7d/patch/u-boot/u-boot-rockchip64-mainline/general-prioritize-sd.patch
+
+ Signed-off-by: Cameron Nemo <cnemo@tutanota.com>
+
+diff --git include/configs/pinebook-pro-rk3399.h include/configs/pinebook-pro-rk3399.h
+index d478b19917..59780bfb0b 100644
+--- include/configs/pinebook-pro-rk3399.h
++++ include/configs/pinebook-pro-rk3399.h
+@@ -14,6 +14,14 @@
+
+ #include <configs/rk3399_common.h>
+
++/* On Pinebook Pro, mmc1 is SD and mmc0 is eMMC */
++#if CONFIG_IS_ENABLED(CMD_MMC)
++ #undef BOOT_TARGET_MMC
++ #define BOOT_TARGET_MMC(func) \
++ func(MMC, mmc, 1) \
++ func(MMC, mmc, 0)
++#endif
++
+ #define SDRAM_BANK_SIZE (2UL << 30)
+
+ #define CONFIG_USB_OHCI_NEW
diff --git a/srcpkgs/pinebookpro-uboot/template b/srcpkgs/pinebookpro-uboot/template
index 4aff7de9e65..f0cfc075006 100644
--- a/srcpkgs/pinebookpro-uboot/template
+++ b/srcpkgs/pinebookpro-uboot/template
@@ -1,39 +1,22 @@
# Template file for 'pinebookpro-uboot'
pkgname=pinebookpro-uboot
reverts="20200212_1 20200212_2"
-version=0.0.20200212
-revision=3
-_commit_uboot=365495a329c8e92ca4c134562d091df71b75845e
-_commit_atf=22d12c4148c373932a7a81e5d1c59a767e143ac2
+version=2020.10
+revision=1
archs="aarch64*"
-hostmakedepends="git flex cross-arm-none-eabi dtc python3 bc"
-depends="u-boot-tools"
+wrksrc="u-boot-${version}"
+hostmakedepends="flex bc dtc python3"
+makedepends="atf-rk3399-bl31"
short_desc="U-Boot for Pinebook Pro"
maintainer="Renato Aguiar <renato@renatoaguiar.net>"
license="GPL-2.0-only, BSD-3-Clause"
-homepage="https://git.eno.space/pbp-uboot"
-
-do_fetch() {
- mkdir -p "${wrksrc}"
-
- cd "${wrksrc}"
- git clone https://git.eno.space/pbp-uboot.git
- cd pbp-uboot
- git reset --hard ${_commit_uboot}
-
- cd "${wrksrc}"
- git clone https://github.com/ARM-software/arm-trusted-firmware.git
- cd arm-trusted-firmware
- git reset --hard ${_commit_atf}
-}
+homepage="https://www.denx.de/wiki/U-Boot/"
+distfiles="https://ftp.denx.de/pub/u-boot/u-boot-${version}.tar.bz2"
+checksum=0d481bbdc05c0ee74908ec2f56a6daa53166cc6a78a0e4fac2ac5d025770a622
do_configure() {
unset CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
-
- cd pbp-uboot
- patch -Np1 -i ${FILESDIR}/fcommon-Makefile.patch
- make ${makejobs} pinebook_pro-rk3399_defconfig
- echo 'CONFIG_IDENT_STRING=" Voidlinux"' >> .config
+ make ${makejobs} pinebook-pro-rk3399_defconfig
}
do_build() {
@@ -41,22 +24,19 @@ do_build() {
if [ "$CROSS_BUILD" ]; then
export CROSS_COMPILE=${XBPS_CROSS_TRIPLET}-
fi
-
- cd arm-trusted-firmware
- make ${makejobs} PLAT=rk3399
-
- cd ../pbp-uboot
make ${makejobs} EXTRAVERSION=-${revision} \
- BL31=../arm-trusted-firmware/build/rk3399/release/bl31/bl31.elf
+ BL31="${XBPS_CROSS_BASE}/usr/lib/trusted-firmware-a/rk3399/bl31.elf"
}
do_install() {
- cd pbp-uboot
- vmkdir boot
- vinstall idbloader.img 0644 boot
- vinstall u-boot.itb 0644 boot
+ vinstall idbloader.img 0644 usr/lib/pinebookpro-uboot
+ vinstall u-boot.itb 0644 usr/lib/pinebookpro-uboot
+ # FWIW this file is not at all specific to the PBP and will overwrite any custom
+ # u-boot boot.scr files that a user installs into /boot.
+ # I would like to remove it, but it could cause breakage for existing setups.
+ # It would also require some changes to void-mklive to configure u-boot suitably.
vinstall "${FILESDIR}/kernel.d/uboot" 750 \
- etc/kernel.d/post-install 60-uboot
+ etc/kernel.d/post-install 60-uboot
vlicense Licenses/Exceptions
vlicense Licenses/OFL.txt
next prev parent reply other threads:[~2020-11-21 23:43 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-21 9:57 [PR PATCH] Pinebook Pro U-Boot: use newer ARM Trusted Firmware CameronNemo
2020-09-07 6:10 ` [PR PATCH] [Updated] " CameronNemo
2020-09-11 15:55 ` [PR REVIEW] " sgn
2020-09-11 19:36 ` CameronNemo
2020-09-11 19:37 ` CameronNemo
2020-10-06 3:43 ` [PR PATCH] [Updated] " CameronNemo
2020-10-06 3:58 ` [PR REVIEW] " CameronNemo
2020-10-06 4:00 ` CameronNemo
2020-10-06 10:30 ` [PR REVIEW] Pinebook Pro U-Boot: update to 2020.10, TF-A 2.3 pullmoll
2020-10-27 3:05 ` [PR PATCH] [Updated] " CameronNemo
2020-11-21 23:43 ` CameronNemo [this message]
2020-11-22 19:42 ` CameronNemo
2021-02-16 5:46 ` ericonr
2021-02-16 7:15 ` CameronNemo
2021-02-16 7:16 ` CameronNemo
2021-03-14 20:04 ` Johnnynator
2021-03-15 18:41 ` [PR PATCH] [Closed]: " Johnnynator
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201121234347.xzA_EU1l5r-WFT_eBrEebaIsyS9v3JMBaBTmYbB_4Zs@z \
--to=cameronnemo@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).