PINE64+ Release APs, APs not started

Emmanuel Vadot manu at bidouilliste.com
Thu Jul 27 14:43:23 UTC 2017


On Thu, 27 Jul 2017 14:31:18 +0200
Henri Hennebert <hlh at restart.be> wrote:

> On 07/27/2017 07:52, Emmanuel Vadot wrote:
> > On Tue, 25 Jul 2017 19:22:19 +0200
> > Henri Hennebert <hlh at restart.be> wrote:
> > 
> >> Hello,
> >>
> >> With FreeBSD 12.0-CURRENT #0 r320599 I can boot normally:
> >>
> >> ...
> >> Release APs
> >> CPU  0: ARM Cortex-A53 r0p4 affinity:  0
> >>    Instruction Set Attributes 0 = <AES+PMULL,SHA1,SHA2,CRC32>
> >>    Instruction Set Attributes 1 = <0>
> >>            Processor Features 0 = <AdvSIMD,Float,EL3 32,EL2 32,EL1 32,EL0 32>
> >>            Processor Features 1 = <0>
> >>         Memory Model Features 0 = <4k Granule,64k
> >> Granule,MixedEndian,S/NS Mem,16bit ASID,1TB PA>
> >>         Memory Model Features 1 = <>
> >>                Debug Features 0 = <2 CTX Breakpoints,4 Watchpoints,6
> >> Breakpoints,PMUv3,Debug v8>
> >>                Debug Features 1 = <0>
> >>            Auxiliary Features 0 = <0>
> >>            Auxiliary Features 1 = <0>
> >> CPU  1: ARM Cortex-A53 r0p4 affinity:  1
> >> CPU  2: ARM Cortex-A53 r0p4 affinity:  2
> >> CPU  3: ARM Cortex-A53 r0p4 affinity:  3
> >> ...
> >>
> >> With r320869, I get
> >>
> >> Release APs
> >> APs not started
> >>     x0: ffff000000977d80
> >>     x1: fffffd000299ba80
> >>     x2:                3
> >>
> >> I succeed one time to boot with r321003 but after that I try multiple
> >> times and get the same error: APs not started
> >>
> >> I try r321371 to no avail.
> >>
> >> Any idea ?
> >>
> >> Henri
> > 
> > 
> >   Hello Henri,
> > 
> >   I'm in the process of updating the u-boot port for pine64 which adds
> > new and better PSCI support. I should be done by the end of the week.
> >   In the meantime you can use the u-boot I built from here :
> >   fetch https://people.freebsd.org/~manu/uboot/u-boot-pine64.bin
> >   dd if=u-boot-pine64.bin of=/dev/da0 bs=1k seek=8 conv=sync
> > 
> >   Cheers,
> > 
> Here is the boot dialog with kernel 12.0 r321371:
> 
> U-Boot SPL 2017.07-00011-g41b31da7ca-dirty (Jul 27 2017 - 07:37:57)
> DRAM: 2048 MiB
> Trying to boot from MMC1
> 
> 
> U-Boot 2017.07-00011-g41b31da7ca-dirty (Jul 27 2017 - 07:37:57 +0200) 
> Allwinner Technology
> 
> 
>  >> FreeBSD EFI boot block
>     Loader path: /boot/loader.efi
> 
>     Initializing modules: ZFS UFS
>     Probing 3 block devices.....* done
>      ZFS found no pools
>      UFS found 1 partition
> Consoles: EFI console
> Command line arguments: loader.efi
> Image base: 0xb6dbd008
> EFI version: 2.05
> EFI Firmware: Das U-boot (rev 0.00)
> 
> FreeBSD/arm64 EFI loader, Revision 1.1
> (Tue Jul 25 03:58:20 CEST 2017 root at norquay.restart.bel)
> EFI boot environment
> Loading /boot/defaults/loader.conf
> /boot/kernel/kernel text=0x71e578 data=0xa2a80+0x39e6a6 
> syms=[0x8+0xf6db0+0x8+0xeaf4a]
> /boot/entropy size=0x1000
> 
> Hit [Enter] to boot immediately, or any other key for command prompt.
> Booting [/boot/kernel/kernel]...
> Using DTB provided by EFI at 0x48000000.

 I'm not sure this is true.

> KDB: debugger backends: ddb
> KDB: current backend: ddb
> Copyright (c) 1992-2017 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>          The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 12.0-CURRENT #0 r321371M: Tue Jul 25 16:02:39 CEST 2017
>      root at norquay.restart.bel:/usr/obj/usr/src/sys/NORQUAY arm64
> FreeBSD clang version 5.0.0 (trunk 308421) (based on LLVM 5.0.0svn)
> VT: init without driver.
> Starting CPU 1 (1)
> Starting CPU 2 (2)
> Starting CPU 3 (3)
> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
> random: unblocking device.
> random: entropy device external interface
> kbd0 at kbdmux0
> ofwbus0: <Open Firmware Device Tree>
> clk_fixed0: <Fixed clock> on ofwbus0
> clk_fixed1: <Fixed clock> on ofwbus0
> clk_fixed2: <Fixed clock> on ofwbus0
> simplebus0: <Flattened device tree simple bus> on ofwbus0
> aw_ccung0: <Allwinner Clock Control Unit NG> mem 0x1c20000-0x1c203ff on 
> simplebus0
> aw_ccung0: Cannot set parent to pll_ddr for dram

 This error is weird.

> regfix0: <Fixed Regulator> on ofwbus0
> psci0: <ARM Power State Co-ordination Interface Driver> on ofwbus0
> awusbphy0: <Allwinner USB PHY> mem 
> 0x1c19400-0x1c19413,0x1c1a800-0x1c1a803,0x1c1b800-0x1c1b803 on simplebus0
> gic0: <ARM Generic Interrupt Controller> mem 
> 0x1c81000-0x1c81fff,0x1c82000-0x1c83fff,0x1c84000-0x1c85fff,0x1c86000-0x1c87fff 
> irq 210
> gic0: pn 0x2, arch 0x2, rev 0x1, implementer 0x43b irqs 224
> gpio0: <Allwinner GPIO/Pinmux controller> mem 0x1c20800-0x1c20bff irq 
> 10,11,12 on simplebus0
> gpiobus0: <OFW GPIO bus> on gpio0
> gpio1: <Allwinner GPIO/Pinmux controller> mem 0x1f02c00-0x1f02fff irq 24 
> on simplebus0
> gpiobus1: <OFW GPIO bus> on gpio1
> generic_timer0: <ARMv8 Generic Timer> irq 0,1,2,3 on ofwbus0
> Timecounter "ARM MPCore Timecounter" frequency 24000000 Hz quality 1000
> Event timer "ARM MPCore Eventtimer" frequency 24000000 Hz quality 1000
> rtc0: <Allwinner RTC> mem 0x1f00000-0x1f00053 irq 22,23 on simplebus0
> rtc0: registered as a time-of-day clock, resolution 1.000000s
> cpulist0: <Open Firmware CPU Group> on ofwbus0
> cpu0: <Open Firmware CPU> on cpulist0
> cpu1: <Open Firmware CPU> on cpulist0
> cpu2: <Open Firmware CPU> on cpulist0
> cpu3: <Open Firmware CPU> on cpulist0
> a10_mmc0: <Allwinner Integrated MMC/SD controller> mem 
> 0x1c0f000-0x1c0ffff irq 4 on simplebus0
> mmc0: <MMC/SD bus> on a10_mmc0
> ohci0: <Generic OHCI Controller> mem 0x1c1b400-0x1c1b4ff irq 9 on simplebus0
> usbus0 on ohci0
> gpioc0: <GPIO controller> on gpio0
> uart0: <16750 or compatible> mem 0x1c28000-0x1c283ff irq 13 on simplebus0
> uart0: console (115384,n,8,1)
> gpioc1: <GPIO controller> on gpio1
> awg0: <Allwinner Gigabit Ethernet> mem 
> 0x1c30000-0x1c31fff,0x1c00030-0x1c00033 irq 25 on simplebus0
> miibus0: <MII bus> on awg0
> rgephy0: <RTL8169S/8110S/8211 1000BASE-T media interface> PHY 0 on miibus0
> rgephy0:  none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX, 
> 100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT, 1000baseT-master, w
> rgephy1: <RTL8169S/8110S/8211 1000BASE-T media interface> PHY 1 on miibus0
> rgephy1:  none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX, 
> 100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT, 1000baseT-master, w
> awg0: Ethernet address: 02:ba:cf:46:d5:39
> cryptosoft0: <software crypto>
> Timecounters tick every 1.000 msec
> usbus0: 12Mbps Full Speed USB v1.0
> ugen0.1: <Generic OHCI root HUB> at usbus0
> uhub0: <Generic OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
> device_attach: uhub0 attach returned 6
> usbus0: Root HUB problem, error=USB_ERR_NO_ROOT_HUB
> mmcsd0: 16GB <SDHC SL16G 8.0 SN A9A41D45 MFG 03/2017 by 3 SD> at mmc0 
> 50.0MHz/4bit/65535-block
> Release APs
> APs not started
>    x0: ffff00000096dd00
>    x1: fffffd000094c540
>    x2:               ü
> 
> And now I try the kernel r320599 which can detect the processors:
> 
> 
> U-Boot SPL 2017.07-00011-g41b31da7ca-dirty (Jul 27 2017 - 07:37:57)
> DRAM: 2048 MiB
> Trying to boot from MMC1
> 
> 
> U-Boot 2017.07-00011-g41b31da7ca-dirty (Jul 27 2017 - 07:37:57 +0200) 
> Allwinner Technology
> 
> 
>  >> FreeBSD EFI boot block
>     Loader path: /boot/loader.efi
> 
>     Initializing modules: ZFS UFS
>     Probing 3 block devices.....* done
>      ZFS found no pools
>      UFS found 1 partition
> Consoles: EFI console
> Command line arguments: loader.efi
> Image base: 0xb6dbd008
> EFI version: 2.05
> EFI Firmware: Das U-boot (rev 0.00)
> 
> FreeBSD/arm64 EFI loader, Revision 1.1
> (Tue Jul 25 03:58:20 CEST 2017 root at norquay.restart.bel)
> EFI boot environment
> Loading /boot/defaults/loader.conf
> /boot/kernel/kernel text=0x71e578 data=0xa2a80+0x39e6a6 
> syms=[0x8+0xf6db0+0x8+0xeaf4a]
> /boot/entropy size=0x1000
> 
> Hit [Enter] to boot immediately, or any other key for command prompt.
> 
> 
> Type '?' for a list of commands, 'help' for more detailed help.
> OK unload
> OK load /boot/kernel.r320599/kernel
> /boot/kernel.r320599/kernel text=0x7240cc data=0x9fcf8+0x39e6ce 
> syms=[0x8+0xf5f88+0x8+0xea601]
> OK set module_path=/boot/kernel.r320599
> OK boot -s
> Booting...
> Using DTB provided by EFI at 0x48000000.
> KDB: debugger backends: ddb
> KDB: current backend: ddb
> Copyright (c) 1992-2017 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>          The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 12.0-CURRENT #0 r320599M: Sat Jul  8 18:24:19 CEST 2017
>      root at norquay.restart.bel:/usr/obj/usr/src/sys/NORQUAY arm64
> FreeBSD clang version 4.0.0 (tags/RELEASE_400/final 297347) (based on 
> LLVM 4.0.0)
> VT: init without driver.
> Starting CPU 1 (1)
> Starting CPU 2 (2)
> Starting CPU 3 (3)
> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
> arc4random: no preloaded entropy cache
> random: entropy device external interface
> kbd0 at kbdmux0
> ofwbus0: <Open Firmware Device Tree>
> clk_fixed0: <Fixed clock> on ofwbus0
> clk_fixed1: <Fixed clock> on ofwbus0
> clk_fixed2: <Fixed clock> on ofwbus0
> simplebus0: <Flattened device tree simple bus> on ofwbus0
> regfix0: <Fixed Regulator> on ofwbus0
> psci0: <ARM Power State Co-ordination Interface Driver> on ofwbus0
> awusbphy0: <Allwinner USB PHY> mem 
> 0x1c19400-0x1c19413,0x1c1a800-0x1c1a803,0x1c1b800-0x1c1b803 on simplebus0
> gic0: <ARM Generic Interrupt Controller> mem 
> 0x1c81000-0x1c81fff,0x1c82000-0x1c83fff,0x1c84000-0x1c85fff,0x1c86000-0x1c87fff 
> irq 210
> gic0: pn 0x2, arch 0x2, rev 0x1, implementer 0x43b irqs 224
> gpio0: <Allwinner GPIO/Pinmux controller> mem 0x1c20800-0x1c20bff irq 
> 10,11,12 on simplebus0
> gpiobus0: <OFW GPIO bus> on gpio0
> gpio1: <Allwinner GPIO/Pinmux controller> mem 0x1f02c00-0x1f02fff irq 24 
> on simplebus0
> gpiobus1: <OFW GPIO bus> on gpio1
> generic_timer0: <ARMv8 Generic Timer> irq 0,1,2,3 on ofwbus0
> Timecounter "ARM MPCore Timecounter" frequency 24000000 Hz quality 1000
> Event timer "ARM MPCore Eventtimer" frequency 24000000 Hz quality 1000
> rtc0: <Allwinner RTC> mem 0x1f00000-0x1f00053 irq 22,23 on simplebus0
> cpulist0: <Open Firmware CPU Group> on ofwbus0
> cpu0: <Open Firmware CPU> on cpulist0
> cpu1: <Open Firmware CPU> on cpulist0
> cpu2: <Open Firmware CPU> on cpulist0
> cpu3: <Open Firmware CPU> on cpulist0
> ohci0: <Generic OHCI Controller> mem 0x1c1b400-0x1c1b4ff irq 9 on simplebus0
> usbus0 on ohci0
> gpioc0: <GPIO controller> on gpio0
> uart0: <Non-standard ns8250 class UART with FIFOs> mem 
> 0x1c28000-0x1c283ff irq 13 on simplebus0
> uart0: console (-1,n,8,1)
> gpioc1: <GPIO controller> on gpio1
> cryptosoft0: <software crypto>
> Timecounters tick every 1.000 msec
> usbus0: 12Mbps Full Speed USB v1.0
> Release APs
> CPU  0: ARM Cortex-A53 r0p4 affinity:  0
>   Instruction Set Attributes 0 = <AES+PMULL,SHA1,SHA2,CRC32>
>   Instruction Set Attributes 1 = <0>
>           Processor Features 0 = <AdvSIMD,Float,EL3 32,EL2 32,EL1 32,EL0 32>
>           Processor Features 1 = <0>
>        Memory Model Features 0 = <4k Granule,64k 
> Granule,MixedEndian,S/NS Mem,16bit ASID,1TB PA>
>        Memory Model Features 1 = <>
>               Debug Features 0 = <2 CTX Breakpoints,4 Watchpoints,6 
> Breakpoints,PMUv3,Debug v8>
>               Debug Features 1 = <0>
>           Auxiliary Features 0 = <0>
>           Auxiliary Features 1 = <0>
> CPU  1: ARM Cortex-A53 r0p4 affinity:  1
> CPU  2: ARM Cortex-A53 r0p4 affinity:  2
> CPU  3: ARM Cortex-A53 r0p4 affinity:  3
> arc4random: no preloaded entropy cache 
> 
> Trying to mount root from ufs:/dev/mmcsd0s2a [rw,noatime]... 
> 
> Root mount waiting for:ugen0.1: <Generic OHCI root HUB> at usbus0 
> 
>   usbus0 
> 
> uhub0: <Generic OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
> device_attach: uhub0 attach returned 6
> usbus0: Root HUB problem, error=USB_ERR_NO_ROOT_HUB
> mountroot: waiting for device /dev/mmcsd0s2a...
> Mounting from ufs:/dev/mmcsd0s2a failed with error 19.
> 
> Loader variables:
>    vfs.root.mountfrom=ufs:/dev/mmcsd0s2a
>    vfs.root.mountfrom.options=rw,noatime
> 
> Manual root filesystem specification:
>    <fstype>:<device> [options]
>        Mount <device> using filesystem <fstype>
>        and with the specified (optional) option list.
> 
>      eg. ufs:/dev/da0s1a
>          zfs:tank
>          cd9660:/dev/cd0 ro
>            (which is equivalent to: mount -t cd9660 -o ro /dev/cd0 /)
> 
>    ?               List valid disk boot devices
>    .               Yield 1 second (for background tasks)
>    <empty line>    Abort manual input
> 
> mountroot>
> 
> To be noted:
> 
> device_attach: uhub0 attach returned 6
> usbus0: Root HUB problem, error=USB_ERR_NO_ROOT_HUB
> 
> and mmcsd0 is not detected.

 There is no aw_ccung in the last dmesg, which is definitively wrong.

> I think that the DTB is wrong.
> 
> Note that my kernel config have:
> 
> options         FDT                     # Flattened Device Tree bus driver
> options         FDT_DTB_STATIC          # Statically embed a DTB file 
> into a kernel image
> makeoptions     FDT_DTS_FILE=pine64_plus.dts

 FDT_DTB_STATIC shouldn't be used unless you *exactly* know what you're
doing. Please use GENERIC kernel on ARM64.

> Henri


-- 
Emmanuel Vadot <manu at bidouilliste.com> <manu at freebsd.org>


More information about the freebsd-arm mailing list