From owner-freebsd-toolchain@freebsd.org Sun Sep 10 19:51:15 2017 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 51525E24195 for ; Sun, 10 Sep 2017 19:51:15 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-10.reflexion.net [208.70.210.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 146478425C for ; Sun, 10 Sep 2017 19:51:14 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 12590 invoked from network); 10 Sep 2017 19:53:09 -0000 Received: from unknown (HELO mail-cs-02.app.dca.reflexion.local) (10.81.19.2) by 0 (rfx-qmail) with SMTP; 10 Sep 2017 19:53:09 -0000 Received: by mail-cs-02.app.dca.reflexion.local (Reflexion email security v8.40.2) with SMTP; Sun, 10 Sep 2017 15:51:13 -0400 (EDT) Received: (qmail 7880 invoked from network); 10 Sep 2017 19:51:12 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 10 Sep 2017 19:51:12 -0000 Received: from [192.168.1.109] (c-67-170-167-181.hsd1.or.comcast.net [67.170.167.181]) by iron2.pdx.net (Postfix) with ESMTPSA id E6878EC7888; Sun, 10 Sep 2017 12:51:11 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Re: Missing in action during arm64/aarch64 builds: no pine64_plus.dtb to be found from buildkernel, installkernel, or u-boot-pine64 From: Mark Millard In-Reply-To: <5D56FE2E-DB64-4038-BD5B-8C1AD6B1A69D@kientzle.com> Date: Sun, 10 Sep 2017 12:51:11 -0700 Cc: FreeBSD Toolchain , freebsd-arm , FreeBSD current Content-Transfer-Encoding: quoted-printable Message-Id: References: <5D56FE2E-DB64-4038-BD5B-8C1AD6B1A69D@kientzle.com> To: Tim Kientzle X-Mailer: Apple Mail (2.3273) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Sep 2017 19:51:15 -0000 On 2017-Sep-10, at 10:26 AM, Tim Kientzle wrote: >> On Sep 9, 2017, at 4:35 PM, Mark Millard = wrote: >>=20 >> crochet goes to the trouble to have logic to >> build and install pine64_plus.dtb (based on >> arm64/pine64_plus.dts ). >>=20 >=20 > I'm not sure about Pine64 in particular, but generally > only the DTS file is actually required. [Note: I used crochet source code to figure out a set of manual steps sufficient to produce a pine64_plus.dtb to copy to the boot msdosfs file system.] Some of the #include structure that the existing pine64_plus.dts.dts depends on: # grep "#include" /usr/src/sys = /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts:#include = "sun50i-a64-pine64-plus.dts" /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts:#include "a64.dtsi" /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts:#include = # grep "#include" /usr/src/sys = /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64-pine64-plus.dts /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64-pine64-plus.dts:#include = "sun50i-a64-pine64-common.dtsi" # grep "#include" /usr/src/sys = /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts:#include = "sun50i-a64-pine64-plus.dts" /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts:#include "a64.dtsi" /usr/src/sys/boot/fdt/dts/arm64/pine64_plus.dts:#include = # grep "#include" /usr/src/sys = /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64-pine64-plus.dts /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64-pine64-plus.dts:#include = "sun50i-a64-pine64-common.dtsi" # grep "#include" /usr/src/sys = /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64-pine64-common.dtsi /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64-pine64-common.dtsi:#include = "sun50i-a64.dtsi" # grep "#include" /usr/src/sys = /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64.dtsi=20 /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64.dtsi:#include = /usr/src/sys/boot/fdt/dts/arm64/sun50i-a64.dtsi:#include = # grep "#include" /usr/src/sys /usr/src/sys/boot/fdt/dts/arm64/a64.dtsi=20= (Yep: nothing for that last one.) I would not guess that the full structure is a appropriate as a substitute for the dtb/pine64_plus.dtb part of the msdosfs partition for booting the Pine64+ 2GB : # find /mnt -print /mnt /mnt/startup.nsh /mnt/EFI /mnt/EFI/BOOT /mnt/EFI/BOOT/bootaa64.efi /mnt/dtb /mnt/dtb/pine64_plus.dtb /mnt/System Volume Information /mnt/System Volume Information/WPSettings.dat # ls -lt /usr/local/share/u-boot/u-boot-pine64/u-boot-sunxi-with-spl.bin=20= -rw-r--r-- 1 root wheel 505940 Sep 6 00:49 = /usr/local/share/u-boot/u-boot-pine64/u-boot-sunxi-with-spl.bin (*.bin dd'd appropriately.) So there still seems to be a lack of appropriate .dt* material for direct use/placement on the boot media. Instead manual extra steps are required relative to *.dt* files. > Crochet tries to provide a dtb file (converting the dts if necessary) > partly for documentation and partly to make it easier to edit the > device tree file. >=20 > This is especially convenient in cases where the > original DTB file depends heavily on other include files; > converting DTS to DTB gives you a fully standalone DTB > file that can be edited (for example, to enable additional > serial ports) and recompiled without having the full source > tree available. The above is the kind of context that the Pine64+'s have. It does not appear to me that the existing pine64_plus.dts is set up for more direct use (even with other supporting files). > This is probably less important now that overlay DTBs are > more commonly supported. Whatever this is, it seems to not be in use for much (any?) of the Pine64+ structuring of such things in head -r323246 . =3D=3D=3D Mark Millard markmi at dsl-only.net