diff options
author | Emmanuel Vadot <manu@FreeBSD.org> | 2018-11-26 16:38:39 +0000 |
---|---|---|
committer | Emmanuel Vadot <manu@FreeBSD.org> | 2018-11-26 16:38:39 +0000 |
commit | 9848333b6c6da715cb36b3773929ef0bcf1e2b3d (patch) | |
tree | b97f6a1ce3b1cba5f109d32102bfb51bde5544e8 | |
parent | 3b783970088fadbe83a8d1ca0a7732bd63bff6a5 (diff) | |
download | src-9848333b6c6da715cb36b3773929ef0bcf1e2b3d.tar.gz src-9848333b6c6da715cb36b3773929ef0bcf1e2b3d.zip |
release: arm64: Add PINEBOOK config
Add a configuration for PINEBOOK image.
Pinebook is a arm64 laptop based on a Pine64 board.
Since the usb trackpad need a quirk, add a common function for adding
quirk for arm board.
A default one is supplied as most board to not need quirks.
Reviewed by: gjb
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D18337
Notes
Notes:
svn path=/head/; revision=340981
-rw-r--r-- | release/arm64/PINEBOOK.conf | 42 | ||||
-rw-r--r-- | release/tools/arm.subr | 5 |
2 files changed, 47 insertions, 0 deletions
diff --git a/release/arm64/PINEBOOK.conf b/release/arm64/PINEBOOK.conf new file mode 100644 index 000000000000..ced3b7eb4098 --- /dev/null +++ b/release/arm64/PINEBOOK.conf @@ -0,0 +1,42 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +EMBEDDED_TARGET_ARCH="aarch64" +EMBEDDED_TARGET="arm64" +EMBEDDEDBUILD=1 +EMBEDDEDPORTS="sysutils/u-boot-pinebook" +FAT_SIZE="54m -b 1m" +FAT_TYPE="16" +IMAGE_SIZE="2560M" +KERNEL="GENERIC" +MD_ARGS="-x 63 -y 255" +NODOC=1 +PART_SCHEME="MBR" +FDT_OVERLAYS="sun50i-a64-sid,sun50i-a64-ths,sun50i-a64-timer" +export BOARDNAME="PINEBOOK" + +arm_install_uboot() { + UBOOT_DIR="/usr/local/share/u-boot/u-boot-pinebook" + UBOOT_FILES="u-boot-sunxi-with-spl.bin" + chroot ${CHROOTDIR} dd if=${UBOOT_DIR}/${UBOOT_FILES} \ + of=/dev/${mddev} bs=1k seek=8 conv=sync + + return 0 +} + +arm_do_quirk() { + echo '# Enable quirk for trackpad' \ + >> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf + echo 'usb_quirk_load=YES' \ + >> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf + echo 'ums_load=YES' \ + >> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf + echo 'hw.usb.quirk="0x258a 0x000c 0x0000 0xffff UQ_CFG_INDEX=1"' \ + >> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf + # We want EFIFB but there is no node and so we cannot know + # which regulator is used for powering lcd/hdmi + echo 'hw.regulator.disable_unused=0' \ + >> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf +} diff --git a/release/tools/arm.subr b/release/tools/arm.subr index 690adf18e56c..5b024334188e 100644 --- a/release/tools/arm.subr +++ b/release/tools/arm.subr @@ -174,6 +174,7 @@ arm_install_base() { arm64_setup_multicons arm_setup_fdt_overlays arm_setup_minimal_loader + arm_do_quirk echo '# Custom /etc/fstab for FreeBSD embedded images' \ > ${CHROOTDIR}/${DESTDIR}/etc/fstab @@ -238,3 +239,7 @@ arm_install_uboot() { return 0 } + +arm_do_quirk() { + # Override in the arm{,64}/BOARD.conf file. +} |