On Sun, Aug 27, 2017 at 09:42:31PM +0200, Peter Hessler wrote:
> taken from Icenowy Zheng's repository,
> commit bd656cab0c3e0669e977641c15095f32d7b0731f
> 
> This gives us basic support for the Pine64 Pinebook
> 
> OK?
> 
> $ sysctl hw
> hw.machine=arm64
> hw.model=ARM Cortex-A53 r0p4
> hw.ncpu=1
> hw.byteorder=1234
> hw.pagesize=4096
> hw.disknames=sd0:d76c5b9369f79257
> hw.diskcount=1
> hw.product=Pinebook
> hw.physmem=2021924864
> hw.usermem=2021912576
> hw.ncpufound=1
> hw.allowpowerdown=1

So the only real change over the sopine config is using a dtb that sets
a different model string?

The dts should be closer to sun50i-a64-pine64-plus.dts

The defconfig should be the same as sopine_baseboard_defconfig
with CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-pinebook" but without
CONFIG_SUN8I_EMAC=y.

Ideally the dts would just be another one in the sopine image

CONFIG_OF_LIST="sun50i-a64-pine64-plus sun50i-a64-pinebook"

This will require a way of testing if the spl is running on
the pinebook from

board_fit_config_name_match() in u-boot/board/sunxi/board.c

> 
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/openbsd/ports/sysutils/u-boot/Makefile,v
> retrieving revision 1.25
> diff -u -p -u -p -r1.25 Makefile
> --- Makefile  24 Aug 2017 08:53:02 -0000      1.25
> +++ Makefile  27 Aug 2017 19:38:53 -0000
> @@ -7,7 +7,7 @@ FLAVOR?=      arm
>  
>  COMMENT=     U-Boot firmware
>  VERSION=     2017.09-rc2
> -REVISION=    1
> +REVISION=    2
>  DISTNAME=    u-boot-${VERSION}
>  PKGNAME=     u-boot-${FLAVOR}-${VERSION:S/-//}
>  FULLPKGNAME= ${PKGNAME}
> @@ -56,6 +56,7 @@ SUNXI64=\
>       orangepi_prime \
>       orangepi_win \
>       pine64_plus \
> +     pinebook \
>       sopine_baseboard
>  BOARDS=\
>       mvebu_espressobin-88f3720 \
> Index: patches/patch-arch_arm_dts_Makefile
> ===================================================================
> RCS file: patches/patch-arch_arm_dts_Makefile
> diff -N patches/patch-arch_arm_dts_Makefile
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-arch_arm_dts_Makefile       27 Aug 2017 19:16:11 -0000
> @@ -0,0 +1,15 @@
> +$OpenBSD$
> +
> +Index: arch/arm/dts/Makefile
> +--- arch/arm/dts/Makefile.orig
> ++++ arch/arm/dts/Makefile
> +@@ -338,7 +338,8 @@ dtb-$(CONFIG_MACH_SUN50I) += \
> +     sun50i-a64-bananapi-m64.dtb \
> +     sun50i-a64-orangepi-win.dtb \
> +     sun50i-a64-pine64-plus.dtb \
> +-    sun50i-a64-pine64.dtb
> ++    sun50i-a64-pine64.dtb \
> ++    sun50i-a64-pinebook.dtb
> + dtb-$(CONFIG_MACH_SUN9I) += \
> +     sun9i-a80-optimus.dtb \
> +     sun9i-a80-cubieboard4.dtb \
> Index: patches/patch-arch_arm_dts_sun50i-a64-pinebook_dts
> ===================================================================
> RCS file: patches/patch-arch_arm_dts_sun50i-a64-pinebook_dts
> diff -N patches/patch-arch_arm_dts_sun50i-a64-pinebook_dts
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-arch_arm_dts_sun50i-a64-pinebook_dts        27 Aug 2017 
> 19:17:38 -0000
> @@ -0,0 +1,68 @@
> +$OpenBSD$
> +
> +Index: arch/arm/dts/sun50i-a64-pinebook.dts
> +--- arch/arm/dts/sun50i-a64-pinebook.dts.orig
> ++++ arch/arm/dts/sun50i-a64-pinebook.dts
> +@@ -0,0 +1,62 @@
> ++/*
> ++ * Copyright (c) 2016 ARM Ltd.
> ++ *
> ++ * This file is dual-licensed: you can use it either under the terms
> ++ * of the GPL or the X11 license, at your option. Note that this dual
> ++ * licensing only applies to this file, and not this project as a
> ++ * whole.
> ++ *
> ++ *  a) This library is free software; you can redistribute it and/or
> ++ *     modify it under the terms of the GNU General Public License as
> ++ *     published by the Free Software Foundation; either version 2 of the
> ++ *     License, or (at your option) any later version.
> ++ *
> ++ *     This library is distributed in the hope that it will be useful,
> ++ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
> ++ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> ++ *     GNU General Public License for more details.
> ++ *
> ++ * Or, alternatively,
> ++ *
> ++ *  b) Permission is hereby granted, free of charge, to any person
> ++ *     obtaining a copy of this software and associated documentation
> ++ *     files (the "Software"), to deal in the Software without
> ++ *     restriction, including without limitation the rights to use,
> ++ *     copy, modify, merge, publish, distribute, sublicense, and/or
> ++ *     sell copies of the Software, and to permit persons to whom the
> ++ *     Software is furnished to do so, subject to the following
> ++ *     conditions:
> ++ *
> ++ *     The above copyright notice and this permission notice shall be
> ++ *     included in all copies or substantial portions of the Software.
> ++ *
> ++ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> ++ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
> ++ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
> ++ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
> ++ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
> ++ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> ++ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
> ++ *     OTHER DEALINGS IN THE SOFTWARE.
> ++ */
> ++
> ++/dts-v1/;
> ++
> ++#include "sun50i-a64-pine64.dts"
> ++
> ++/ {
> ++    model = "Pinebook";
> ++    compatible = "pine64,pinebook", "allwinner,sun50i-a64";
> ++
> ++    aliases {
> ++            serial0 = &uart0;
> ++    };
> ++
> ++    chosen {
> ++            stdout-path = "serial0:115200n8";
> ++    };
> ++
> ++    memory {
> ++            reg = <0x40000000 0x40000000>;
> ++    };
> ++};
> Index: patches/patch-configs_pinebook_defconfig
> ===================================================================
> RCS file: patches/patch-configs_pinebook_defconfig
> diff -N patches/patch-configs_pinebook_defconfig
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-configs_pinebook_defconfig  27 Aug 2017 19:17:25 -0000
> @@ -0,0 +1,27 @@
> +$OpenBSD$
> +
> +Index: configs/pinebook_defconfig
> +--- configs/pinebook_defconfig.orig
> ++++ configs/pinebook_defconfig
> +@@ -0,0 +1,21 @@
> ++CONFIG_ARM=y
> ++CONFIG_ARCH_SUNXI=y
> ++CONFIG_MACH_SUN50I=y
> ++CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
> ++CONFIG_SUNXI_DRAM_LPDDR3_STOCK=y
> ++CONFIG_DRAM_CLK=552
> ++CONFIG_DRAM_ZQ=3881949
> ++CONFIG_DRAM_ODT_EN=y
> ++CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-pinebook"
> ++# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> ++CONFIG_SPL=y
> ++CONFIG_SPL_ATF_SUPPORT=y
> ++CONFIG_SPL_ATF_TEXT_BASE=0x44000
> ++# CONFIG_CMD_IMLS is not set
> ++# CONFIG_CMD_FLASH is not set
> ++# CONFIG_CMD_FPGA is not set
> ++# CONFIG_SPL_DOS_PARTITION is not set
> ++# CONFIG_SPL_ISO_PARTITION is not set
> ++# CONFIG_SPL_EFI_PARTITION is not set
> ++CONFIG_SPL_SPI_SUNXI=y
> ++CONFIG_USB_EHCI_HCD=y
> Index: pkg/PFRAG.aarch64
> ===================================================================
> RCS file: /cvs/openbsd/ports/sysutils/u-boot/pkg/PFRAG.aarch64,v
> retrieving revision 1.5
> diff -u -p -u -p -r1.5 PFRAG.aarch64
> --- pkg/PFRAG.aarch64 24 Aug 2017 08:53:02 -0000      1.5
> +++ pkg/PFRAG.aarch64 27 Aug 2017 19:19:43 -0000
> @@ -48,6 +48,13 @@ share/u-boot/pine64_plus/u-boot-sunxi-wi
>  share/u-boot/pine64_plus/u-boot.bin
>  share/u-boot/pine64_plus/u-boot.img
>  share/u-boot/pine64_plus/u-boot.itb
> +share/u-boot/pinebook/
> +share/u-boot/pinebook/sunxi-spl.bin
> +share/u-boot/pinebook/u-boot
> +share/u-boot/pinebook/u-boot-sunxi-with-spl.bin
> +share/u-boot/pinebook/u-boot.bin
> +share/u-boot/pinebook/u-boot.img
> +share/u-boot/pinebook/u-boot.itb
>  share/u-boot/rpi_3/
>  share/u-boot/rpi_3/u-boot
>  share/u-boot/rpi_3/u-boot.bin
> 
> 
> 
> 
> -- 
> In America, any boy may become president and I suppose that's just one
> of the risks he takes.
>               -- Adlai Stevenson
> 

Reply via email to