Author: manu
Date: Mon Nov 26 16:38:39 2018
New Revision: 340981
URL: https://svnweb.freebsd.org/changeset/base/340981

Log:
  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

Added:
  head/release/arm64/PINEBOOK.conf   (contents, props changed)
Modified:
  head/release/tools/arm.subr

Added: head/release/arm64/PINEBOOK.conf
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/release/arm64/PINEBOOK.conf    Mon Nov 26 16:38:39 2018        
(r340981)
@@ -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
+}

Modified: head/release/tools/arm.subr
==============================================================================
--- head/release/tools/arm.subr Mon Nov 26 16:36:38 2018        (r340980)
+++ head/release/tools/arm.subr Mon Nov 26 16:38:39 2018        (r340981)
@@ -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
@@ -237,4 +238,8 @@ arm_install_uboot() {
        # Override in the arm/KERNEL.conf file.
 
        return 0
+}
+
+arm_do_quirk() {
+       # Override in the arm{,64}/BOARD.conf file.
 }
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to