On Wed, Mar 22, 2017 at 10:01:28PM +0100, Sigi Rudzio wrote: > Hello, > > I got a Pine64+ (2GB) to play with the arm64 port, but I think > I'm missing the correct .dtb file for it to recognize e.g. the onboard > USB. > > My dmesg, using the sun50i-a64-pine64-plus.dtb in the dtb-4.10 > package: > > >> OpenBSD/arm64 BOOTAA64 0.2 > boot> bsd.rd > cannot open sd0a:/etc/random.seed: No such file or directory > booting sd0a:bsd.rd: 2141032+351028+8295560+587128 [86+262080+144632]=0xb3d390 > Copyright (c) 1982, 1986, 1989, 1991, 1993 > The Regents of the University of California. All rights reserved. > Copyright (c) 1995-2017 OpenBSD. All rights reserved. https://www.OpenBSD.org > > OpenBSD 6.1-beta (RAMDISK) #0: Mon Mar 20 23:22:52 AEDT 2017 > j...@arm64.jsg.id.au:/usr/src/sys/arch/arm64/compile/RAMDISK > real mem = 2147483648 (2048MB) > avail mem = 2054791168 (1959MB) > mainbus0 at root: Pine64+ > psci0 at mainbus0 > agtimer0 at mainbus0: tick rate 24000 KHz > simplebus0 at mainbus0: "soc" > sxiccmu0 at simplebus0 > sxipio0 at simplebus0: 103 pins > com0 at simplebus0: ns16550, no working fifo > com0: console > ampintc0 at simplebus0 nirq 224: "interrupt-controller" > sxirtc0 at simplebus0 > gpio0 at sxipio0: 32 pins > gpio1 at sxipio0: 32 pins > gpio2 at sxipio0: 32 pins > gpio3 at sxipio0: 32 pins > gpio4 at sxipio0: 32 pins > gpio5 at sxipio0: 32 pins > gpio6 at sxipio0: 32 pins > gpio7 at sxipio0: 32 pins > bootfile: sd0a:/bsd > boot device: lookup sd0a:/bsd failed > WARNING: clock lost 2635 days > WARNING: CHECK AND RESET THE DATE! > erase ^?, werase ^W, kill ^U, intr ^C, status ^T > > Welcome to the OpenBSD/arm64 6.1 installation program. > (I)nstall, (U)pgrade, (A)utoinstall or (S)hell? > > > Compared with the dmesg posted by patrick@ at http://ix.io/1Qst > USB is missing. > If I try a .dtb file from a Linux image the kernel will load, but not > output anything, > with the .dtb from a FreeBSD image the kernel will boot, but still no USB and > instead of "(I)nstall, (U)pgrade, (A)utoinstall or (S)hell?" I get garbage. > > I tried converting the Linux .dtb to .dts with dtc and adding the parts > that make OpenBSD work, and got it to boot, but even if ehci0 is > found, I always get "ehci0: halt timeout" and no devices are recognized. > > So is there a .dtb file that works with OpenBSD/arm64 on the Pine64+ > and enables the kernel to recognize USB so I can install on a USB stick?
I don't have a pine64 to verify but there is also a dtb in the u-boot build directory for pine64 that has the usb nodes. pobj/u-boot-aarch64-2017.03-aarch64/u-boot-2017.03/build/pine64_plus/u-boot.dtb The commits to add USB to device tree finally appeared in Linux 4.11-rc1. But they've broken the pinctrl ABI so that one is unlikely to work yet. commit b8bcf0e1b21273584b6829bafe30f2949a062c34 Author: Andre Przywara <andre.przyw...@arm.com> Date: Tue Jan 10 01:22:33 2017 +0000 arm64: allwinner: add BananaPi-M64 support The Banana Pi M64 board is a typical single board computer based on the Allwinner A64 SoC. Aside from the usual peripherals it features eMMC storage, which is connected to the 8-bit capable SDHC2 controller. Also it has a soldered WiFi/Bluetooth chip, so we enable UART1 and SDHC1 as those two interfaces are connected to it. Signed-off-by: Andre Przywara <andre.przyw...@arm.com> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> Acked-by: Chen-Yu Tsai <w...@csie.org> commit e7ba733d32cc9487b62b07219ad911c77764a681 Author: Andre Przywara <andre.przyw...@arm.com> Date: Tue Jan 10 01:22:32 2017 +0000 arm64: allwinner: a64: add UART1 pin nodes On many boards UART1 connects to a Bluetooth chip, so add the pinctrl nodes for the only pins providing access to that UART. That includes those pins for hardware flow control (RTS/CTS). Signed-off-by: Andre Przywara <andre.przyw...@arm.com> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> Acked-by: Chen-Yu Tsai <w...@csie.org> commit ebe3ae29c6314217edf40d9ee23c36d610ff0fb8 Author: Andre Przywara <andre.przyw...@arm.com> Date: Tue Jan 10 01:22:31 2017 +0000 arm64: allwinner: pine64: add MMC support All Pine64 boards connect an micro-SD card slot to the first MMC controller. Enable the respective DT node and specify the (always-on) regulator and card-detect pin. As a micro-SD slot does not feature a write-protect switch, we disable this feature. Signed-off-by: Andre Przywara <andre.przyw...@arm.com> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> Acked-by: Chen-Yu Tsai <w...@csie.org> commit 22be992faea70b95bcb48e2d5efa41733fcfeab7 Author: Maxime Ripard <maxime.rip...@free-electrons.com> Date: Mon Jan 9 15:53:59 2017 +0100 arm64: allwinner: a64: Increase the MMC max frequency The eMMC controller seem to have a maximum frequency of 200MHz, while the regular MMC controllers are capped at 150MHz. Since older SoCs cannot go that high, we cannot change the default maximum frequency, but fortunately for us we have a property for that in the DT. This also has the side effect of allowing to use the MMC HS200 and SD SDR104 modes for the boards that support it (with either 1.2v or 1.8v IOs). Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> Tested-by: Florian Vaussard <florian.vauss...@heig-vd.ch> Acked-by: Chen-Yu Tsai <w...@csie.org> commit a3e8f4926248b3c12933aacec4432e9b6de004bb Author: Maxime Ripard <maxime.rip...@free-electrons.com> Date: Mon Jan 9 16:39:15 2017 +0100 arm64: allwinner: a64: Add MMC pinctrl nodes The A64 only has a single set of pins for each MMC controller. Since we already have boards that require all of them, let's add them to the DTSI. Reviewed-by: Andre Przywara <andre.przyw...@arm.com> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> Tested-by: Florian Vaussard <florian.vauss...@heig-vd.ch> Acked-by: Chen-Yu Tsai <w...@csie.org> commit f3dff3478a8a7b09f9a92023955a151584658893 Author: Andre Przywara <andre.przyw...@arm.com> Date: Thu Oct 6 02:25:22 2016 +0100 arm64: allwinner: a64: Add MMC nodes The A64 has 3 MMC controllers, one of them being especially targeted to eMMC. Among other things, it has a data strobe signal and a 8 bits data width. The two other are more usual controllers that will have a 4 bits width at most and no data strobe signal, which limits it to more usual SD or MMC peripherals. Signed-off-by: Andre Przywara <andre.przyw...@arm.com> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> Tested-by: Florian Vaussard <florian.vauss...@heig-vd.ch> Acked-by: Chen-Yu Tsai <w...@csie.org> commit 4f9758302ccaf753cd4ba6a5eb740392a4d24773 Author: Chen-Yu Tsai <w...@csie.org> Date: Tue Jan 24 10:32:29 2017 +0800 arm64: dts: allwinner: Remove no longer used pinctrl/sun4i-a10.h header All dts files for the sunxi platform have been switched to the generic pinconf bindings. As a result, the sunxi specific pinctrl macros are no longer used. Remove the #include entry with the following command: sed -i -e '/pinctrl\/sun4i-a10.h/D' \ arch/arm64/boot/dts/allwinner/*.dts? Signed-off-by: Chen-Yu Tsai <w...@csie.org> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> commit f57e8384c5d2417fd8707c577d8e622fc1570b6c Author: Icenowy Zheng <icen...@aosc.xyz> Date: Wed Nov 23 00:59:02 2016 +0800 arm64: dts: enable the MUSB controller of Pine64 in host-only mode A64 has a MUSB controller wired to the USB PHY 0, which is connected to the upper USB Type-A port of Pine64. As the port is a Type-A female port, enable it in host-only mode in the device tree, which makes devices with USB Type-A male port can work on this port (which is originally designed by Pine64 team). Signed-off-by: Icenowy Zheng <icen...@aosc.xyz> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> commit 972a3ecdf27f3ebdd1ce0dccd1b548ef3c04b8ed Author: Icenowy Zheng <icen...@aosc.xyz> Date: Wed Nov 23 00:59:01 2016 +0800 arm64: dts: add MUSB node to Allwinner A64 dtsi Allwinner A64 SoC has a MUSB controller like the one in A33, so add a node for it, just use the compatible of A33 MUSB. Host mode is tested to work properly on Pine64 and will be added into the device tree of Pine64 in next patch. Peripheral mode is also tested on Pine64, by changing dr_mode property of usb_otg node and use a non-standard USB Type-A to Type-A cable. Signed-off-by: Icenowy Zheng <icen...@aosc.xyz> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> commit d49f9dbc8f0c4521fa56477d051a3bd1158f2595 Author: Icenowy Zheng <icen...@aosc.xyz> Date: Tue Nov 22 23:58:31 2016 +0800 arm64: dts: allwinner: enable EHCI1, OHCI1 and USB PHY nodes in Pine64 Pine64 have two USB Type-A ports, which are wired to the two ports of A64 USB PHY, and the lower port is the EHCI/OHCI1 port. Enable the necessary nodes to enable the lower USB port to work. Signed-off-by: Icenowy Zheng <icen...@aosc.xyz> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> commit ac93c09cdbaf1229c21f67a5db1c3c6df7d503e5 Author: Icenowy Zheng <icen...@aosc.xyz> Date: Tue Nov 22 23:58:30 2016 +0800 arm64: dts: allwinner: sort the nodes in sun50i-a64-pine64.dts In this dts file, uart0 node is put before i2c1. Move the uart0 node to the end to satisfy alphebetical order. Signed-off-by: Icenowy Zheng <icen...@aosc.xyz> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> commit a004ee350177ece3c059831ea49293d62aea7ca6 Author: Icenowy Zheng <icen...@aosc.xyz> Date: Tue Nov 22 23:58:29 2016 +0800 arm64: dts: allwinner: add USB1-related nodes of Allwinner A64 Allwinner A64 have two HCI USB controllers, a OTG controller and a USB PHY device which have two ports. One of the port is wired to both a HCI USB controller and the OTG controller, which is currently not supported. The another one is only wired to a HCI controller, and the device node of OHCI/EHCI controller of the port can be added now. Also the A64 USB PHY device node is also added for the HCI controllers to work. Signed-off-by: Icenowy Zheng <icen...@aosc.xyz> Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com>