On Sun, Jul 05, 2020 at 06:14:33PM +0200, Paul de Weerd wrote:
> Hi Mark,
> 
> On Sat, Jul 04, 2020 at 05:39:26PM +0200, Mark Kettenis wrote:
> | > Is there something else I should have or do?
> | 
> | Yes.  You need to actually install the firmware onto the uSD card or
> | USB device that your Pi boots from.  At this point there is no easy
> | way to do that though.
> 
> Well, these bits are on the uSD card that's in the slot on the
> front(?) of the machine.  I simply wrote the latest miniroot67.img to
> another uSD card and swapped it with the previous one.  Now I need to
> specify that I want to boot from the USB stick on the OpenBSD boot
> prompt (as previously I didn't have an sd0 for the uSD), but it boots
> fine and I now have four CPU cores (and it reboots without issue, as
> you mentioned).

You likely had the U-Boot boot order changed on your previous sd card.
To change it again break into U-Boot when booting and do:

Hit any key to stop autoboot:  0
U-Boot> setenv boot_targets usb0 mmc0 pxe dhcp
U-Boot> saveenv
U-Boot> boot

It is also possible to modify config.txt on the sd card to enable
USB boot but that can't be undone.

https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md

> 
> Thanks!
> 
> Paul
> 
> OpenBSD 6.7-current (GENERIC.MP) #700: Sat Jul  4 13:14:53 MDT 2020
>     [email protected]:/usr/src/sys/arch/arm64/compile/GENERIC.MP
> real mem  = 957657088 (913MB)
> avail mem = 895942656 (854MB)
> random: good seed from bootblocks
> mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
> cpu0 at mainbus0 mpidr 0: ARM Cortex-A53 r0p4
> cpu0: 32KB 64b/line 2-way L1 VIPT I-cache, 32KB 64b/line 4-way L1 D-cache
> cpu0: 512KB 64b/line 16-way L2 cache
> cpu1 at mainbus0 mpidr 1: ARM Cortex-A53 r0p4
> cpu1: 32KB 64b/line 2-way L1 VIPT I-cache, 32KB 64b/line 4-way L1 D-cache
> cpu1: 512KB 64b/line 16-way L2 cache
> cpu2 at mainbus0 mpidr 2: ARM Cortex-A53 r0p4
> cpu2: 32KB 64b/line 2-way L1 VIPT I-cache, 32KB 64b/line 4-way L1 D-cache
> cpu2: 512KB 64b/line 16-way L2 cache
> cpu3 at mainbus0 mpidr 3: ARM Cortex-A53 r0p4
> cpu3: 32KB 64b/line 2-way L1 VIPT I-cache, 32KB 64b/line 4-way L1 D-cache
> cpu3: 512KB 64b/line 16-way L2 cache
> efi0 at mainbus0: UEFI 2.8
> efi0: Das U-Boot rev 0x20200400
> apm0 at mainbus0
> simplefb0 at mainbus0: 656x416, 32bpp
> wsdisplay0 at simplefb0 mux 1
> wsdisplay0: screen 0-5 added (std, vt100 emulation)
> "system" at mainbus0 not configured
> "axi" at mainbus0 not configured
> simplebus0 at mainbus0: "soc"
> bcmdmac0 at simplebus0: DMA0 DMA2 DMA4 DMA5 DMA8 DMA9 DMA10
> bcmclock0 at simplebus0
> bcmmbox0 at simplebus0
> bcmgpio0 at simplebus0
> bcmaux0 at simplebus0
> bcmintc0 at simplebus0
> bcmdog0 at simplebus0
> bcmrng0 at simplebus0
> pluart0 at simplebus0: console
> bcmsdhost0 at simplebus0: 250 MHz base clock
> sdmmc0 at bcmsdhost0: 4-bit, sd high-speed, mmc high-speed, dma
> "dsi" at simplebus0 not configured
> dwctwo0 at simplebus0
> bcmtemp0 at simplebus0
> "local_intc" at simplebus0 not configured
> sdhc0 at simplebus0
> sdhc0: SDHC 3.0, 200 MHz base clock
> sdmmc1 at sdhc0: 4-bit, sd high-speed, mmc high-speed
> simplebus1 at simplebus0: "firmware"
> "expgpio" at simplebus1 not configured
> "power" at simplebus0 not configured
> "mailbox" at simplebus0 not configured
> "gpiomem" at simplebus0 not configured
> "fb" at simplebus0 not configured
> "vcsm" at simplebus0 not configured
> "virtgpio" at simplebus0 not configured
> simplebus2 at mainbus0: "clocks"
> "clock" at simplebus2 not configured
> "clock" at simplebus2 not configured
> "phy" at mainbus0 not configured
> "arm-pmu" at mainbus0 not configured
> agtimer0 at mainbus0: tick rate 19200 KHz
> "leds" at mainbus0 not configured
> "fixedregulator_3v3" at mainbus0 not configured
> "fixedregulator_5v0" at mainbus0 not configured
> usb0 at dwctwo0: USB revision 2.0
> scsibus0 at sdmmc0: 2 targets, initiator 0
> sd0 at scsibus0 targ 1 lun 0: <Sandisk, SA04G, 0004> removable
> sd0: 3776MB, 512 bytes/sector, 7733248 sectors
> uhub0 at usb0 configuration 1 interface 0 "Broadcom DWC2 root hub" rev 
> 2.00/1.00 addr 1
> uhub1 at uhub0 port 1 configuration 1 interface 0 "Standard Microsystems 
> product 0x9514" rev 2.00/2.00 addr 2
> bwfm0 at sdmmc1 function 1
> manufacturer 0x02d0, product 0xa9a6 at sdmmc1 function 2 not configured
> smsc0 at uhub1 port 1 configuration 1 interface 0 "Standard Microsystems 
> SMSC9512/14" rev 2.00/2.00 addr 3
> smsc0: address b8:27:eb:93:42:d5
> ukphy0 at smsc0 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 
> 0x0001f0, model 0x000c
> urtwn0 at uhub1 port 2 configuration 1 interface 0 "Realtek 802.11n NIC" rev 
> 2.00/0.00 addr 4
> urtwn0: MAC/BB RTL8188EU, RF 6052 1T1R, address ec:08:6b:07:c2:1c
> umass0 at uhub1 port 4 configuration 1 interface 0 "SanDisk Ultra Fit" rev 
> 2.10/1.00 addr 5
> umass0: using SCSI over Bulk-Only
> scsibus1 at umass0: 2 targets, initiator 0
> sd1 at scsibus1 targ 1 lun 0: <SanDisk, Ultra Fit, 1.00> removable 
> serial.07815583320220107303
> sd1: 29327MB, 512 bytes/sector, 60062500 sectors
> vscsi0 at root
> scsibus2 at vscsi0: 256 targets
> softraid0 at root
> scsibus3 at softraid0: 256 targets
> bootfile: sd1a:/bsd
> boot device: sd1
> root on sd1a (59de83c8e783b811.a) swap on sd1b dump on sd1b
> WARNING: CHECK AND RESET THE DATE!
> gpio0 at bcmgpio0: 54 pins
> bwfm0: address b8:27:eb:c6:17:80
> 
> | > | Anyway, I think the problem is that OF_finddevice() returns -1 if the
> | > | node can't be found.  Does the following diff help?
> | > 
> | > It does allow the system to boot to multiuser (so the data_abort+0x68
> | > is gone).  The 'failed to spin up' lines now show up a lot earlier in
> | > dmesg, after cpu0 attaches.  See below for full dmesg.
> | > 
> | > For completeness, the machine still doesn't shutdown properly (need to
> | > powercycle it to bring it back).
> | 
> | That's a side-effect of the failure to spin up the secondary CPUs.
> | 
> | 
> | > 
> | > Cheers,
> | > 
> | > Paul
> | > 
> | > OpenBSD 6.7-current (GENERIC.MP) #2: Sat Jul  4 17:12:49 CEST 2020
> | >     [email protected]:/usr/src/sys/arch/arm64/compile/GENERIC.MP
> | > real mem  = 953442304 (909MB)
> | > avail mem = 891834368 (850MB)
> | > random: good seed from bootblocks
> | > mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
> | > cpu0 at mainbus0 mpidr 0: ARM Cortex-A53 r0p4
> | > cpu0: 32KB 64b/line 2-way L1 VIPT I-cache, 32KB 64b/line 4-way L1 D-cache
> | > cpu0: 512KB 64b/line 16-way L2 cache
> | > cpu1 at mainbus0 mpidr 1: failed to spin up
> | > cpu2 at mainbus0 mpidr 2: failed to spin up
> | > cpu3 at mainbus0 mpidr 3: failed to spin up
> | > efi0 at mainbus0: UEFI 2.0.5
> | > efi0: Das U-boot rev 0x0
> | > apm0 at mainbus0
> | > simplefb0 at mainbus0: 656x416, 32bpp
> | > wsdisplay0 at simplefb0 mux 1
> | > wsdisplay0: screen 0-5 added (std, vt100 emulation)
> | > "system" at mainbus0 not configured
> | > "axi" at mainbus0 not configured
> | > simplebus0 at mainbus0: "soc"
> | > bcmdmac0 at simplebus0: DMA2 DMA4 DMA5 DMA8 DMA9 DMA10
> | > bcmintc0 at simplebus0
> | > bcmmbox0 at simplebus0
> | > bcmgpio0 at simplebus0
> | > syscon0 at simplebus0: "syscon"
> | > bcmdog0 at simplebus0
> | > bcmrng0 at simplebus0
> | > pluart0 at simplebus0
> | > bcmsdhost0 at simplebus0: 250 MHz base clock
> | > sdmmc0 at bcmsdhost0: 4-bit, sd high-speed, mmc high-speed, dma
> | > com0 at simplebus0: ns16550, no working fifo
> | > com0: console
> | > "mmc" at simplebus0 not configured
> | > dwctwo0 at simplebus0
> | > "firmware" at simplebus0 not configured
> | > "power" at simplebus0 not configured
> | > "leds" at simplebus0 not configured
> | > "fb" at simplebus0 not configured
> | > "vchiq" at simplebus0 not configured
> | > "thermal" at simplebus0 not configured
> | > "local_intc" at simplebus0 not configured
> | > "arm-pmu" at simplebus0 not configured
> | > "gpiomem" at simplebus0 not configured
> | > agtimer0 at simplebus0: tick rate 19200 KHz
> | > "virtgpio" at simplebus0 not configured
> | > simplebus1 at mainbus0: "clocks"
> | > "clock" at simplebus1 not configured
> | > "clock" at simplebus1 not configured
> | > "clock" at simplebus1 not configured
> | > "clock" at simplebus1 not configured
> | > "clock" at simplebus1 not configured
> | > "clock" at simplebus1 not configured
> | > "clock" at simplebus1 not configured
> | > usb0 at dwctwo0: USB revision 2.0
> | > sdmmc0: can't enable card
> | > uhub0 at usb0 configuration 1 interface 0 "Broadcom DWC2 root hub" rev 
> 2.00/1.00 addr 1
> | > uhub1 at uhub0 port 1 configuration 1 interface 0 "Standard Microsystems 
> product 0x9514" rev 2.00/2.00 addr 2
> | > smsc0 at uhub1 port 1 configuration 1 interface 0 "Standard Microsystems 
> SMSC9512/14" rev 2.00/2.00 addr 3
> | > smsc0: address b8:27:eb:93:42:d5
> | > ukphy0 at smsc0 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 
> 0x0001f0, model 0x000c
> | > urtwn0 at uhub1 port 2 configuration 1 interface 0 "Realtek 802.11n NIC" 
> rev 2.00/0.00 addr 4
> | > urtwn0: MAC/BB RTL8188EU, RF 6052 1T1R, address ec:08:6b:07:c2:1c
> | > umass0 at uhub1 port 4 configuration 1 interface 0 "SanDisk Ultra Fit" 
> rev 2.10/1.00 addr 5
> | > umass0: using SCSI over Bulk-Only
> | > scsibus0 at umass0: 2 targets, initiator 0
> | > sd0 at scsibus0 targ 1 lun 0: <SanDisk, Ultra Fit, 1.00> removable 
> serial.07815583320220107303
> | > sd0: 29327MB, 512 bytes/sector, 60062500 sectors
> | > vscsi0 at root
> | > scsibus1 at vscsi0: 256 targets
> | > softraid0 at root
> | > scsibus2 at softraid0: 256 targets
> | > bootfile: sd0a:/bsd
> | > boot device: sd0
> | > root on sd0a (59de83c8e783b811.a) swap on sd0b dump on sd0b
> | > WARNING: CHECK AND RESET THE DATE!
> | > gpio0 at bcmgpio0: 54 pins
> | > 
> | > | 
> | > | Index: arch/arm64/dev/mainbus.c
> | > | ===================================================================
> | > | RCS file: /cvs/src/sys/arch/arm64/dev/mainbus.c,v
> | > | retrieving revision 1.17
> | > | diff -u -p -r1.17 mainbus.c
> | > | --- arch/arm64/dev/mainbus.c    17 Jun 2020 08:00:22 -0000      1.17
> | > | +++ arch/arm64/dev/mainbus.c    3 Jul 2020 22:16:43 -0000
> | > | @@ -316,7 +316,7 @@ mainbus_attach_cpus(struct device *self,
> | > |         int acells, scells;
> | > |         char buf[32];
> | > |  
> | > | -       if (node == 0)
> | > | +       if (node == -1)
> | > |                 return;
> | > |  
> | > |         acells = sc->sc_acells;
> | > | @@ -369,7 +369,7 @@ mainbus_attach_psci(struct device *self)
> | > |         struct mainbus_softc *sc = (struct mainbus_softc *)self;
> | > |         int node = OF_finddevice("/psci");
> | > |  
> | > | -       if (node == 0)
> | > | +       if (node == -1)
> | > |                 return;
> | > |  
> | > |         sc->sc_early = 1;
> | > | @@ -384,7 +384,8 @@ mainbus_attach_efi(struct device *self)
> | > |         struct fdt_attach_args fa;
> | > |         int node = OF_finddevice("/chosen");
> | > |  
> | > | -       if (node == 0 || OF_getproplen(node, 
> "openbsd,uefi-system-table") <= 0)
> | > | +       if (node == -1 ||
> | > | +           OF_getproplen(node, "openbsd,uefi-system-table") <= 0)
> | > |                 return;
> | > |  
> | > |         memset(&fa, 0, sizeof(fa));
> | > | 
> | > 
> | > -- 
> | > >++++++++[<++++++++++>-]<+++++++.>+++[<------>-]<.>+++[<+
> | > +++++++++++>-]<.>++[<------------>-]<+.--------------.[-]
> | >                  http://www.weirdnet.nl/                 
> | > 
> | 
> 
> -- 
> >++++++++[<++++++++++>-]<+++++++.>+++[<------>-]<.>+++[<+
> +++++++++++>-]<.>++[<------------>-]<+.--------------.[-]
>                  http://www.weirdnet.nl/                 
> 
> 

Reply via email to