Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Dec 2019 18:13:55 -0600
From:      Kyle Evans <kevans@freebsd.org>
To:        bob prohaska <fbsd@www.zefox.net>
Cc:        "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Re: No suitable SOC memory configuration found.
Message-ID:  <CACNAnaEfiV1fsDyfqHY%2BPp7c5iftF-Asp-AHuOydRTcEG=8H4A@mail.gmail.com>
In-Reply-To: <20191217233301.GB18825@www.zefox.net>
References:  <20191217221157.GA18825@www.zefox.net> <CACNAnaGC2WtBARnsTghCp4XL07c0B4wAMR-tc%2BeRhYROu9=1Yg@mail.gmail.com> <20191217233301.GB18825@www.zefox.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Dec 17, 2019 at 5:33 PM bob prohaska <fbsd@www.zefox.net> wrote:
>
> On Tue, Dec 17, 2019 at 04:31:24PM -0600, Kyle Evans wrote:
> > On Tue, Dec 17, 2019 at 4:12 PM bob prohaska <fbsd@www.zefox.net> wrote:
> > >
> > >
> > > After updating 12-stable on a Pi2B with a GENERIC kernel the machine
> > > started to fall into an endless boot cycle, reporting in part:
> > > .....
> > > iichb1: <BCM2708/2835 BSC controller> mem 0x804000-0x80401f irq 10 on simplebus0
> > > spi0: <BCM2708/2835 SPI controller> mem 0x204000-0x20401f irq 11 on simplebus0
> > > spibus0: <OFW SPI bus> on spi0
> > > bcm_dma0: <BCM2835 DMA Controller> mem 0x7000-0x7fff,0xe05000-0xe05fff irq 12,13,14,15,16,17,18,19,20,21,22,23,24 on simplebus0
> > > Checking root against brcm,bcm2836
> > > panic: No suitable SOC memory configuration found.
> > > cpuid = 0
> > > time = 1
> > > Uptime: 1s
> > > Automatic reboot in 15 seconds - press a key on the console to abort
> > > .....
> > >
> >
> > Hi,
> >
> > Unfortunately, that error is quite fatal as it needs to be able to
> > deduce what the mappings look like for vcbus <-> armc, otherwise
> > there's an absolutely awesome chance that your board will turn into a
> > raspberry anyways as it can't do DMA. I think you can possibly recover
> > for the time being by dropping to loader prompt and changing
> > /compatible to "brcm,bcm2836"  with `fdt prop /compatible
> > brcm,bcm2836`
> >
>
> This is actually an old Pi2 v 1.1, not the later version. In any case,
> I'm doing something wrong:
>
> Type '?' for a list of commands, 'help' for more detailed help.
> loader> fdt prop /compatible brcm,bcm2836 [also tried fdt prop /compatible "brcm,bcm2836"]
> Using DTB provided by U-Boot at address 0x100.
> loader> boot -s
> Booting...
> Using DTB provided by U-Boot at address 0x100.
> Kernel entry at 0x2200180...
> Kernel args: -s
>
> and it fails with
> iichb0: <BCM2708/2835 BSC controller> mem 0x205000-0x20501f irq 9 on simplebus0
> iichb1: <BCM2708/2835 BSC controller> mem 0x804000-0x80401f irq 10 on simplebus0
> spi0: <BCM2708/2835 SPI controller> mem 0x204000-0x20401f irq 11 on simplebus0
> spibus0: <OFW SPI bus> on spi0
> bcm_dma0: <BCM2835 DMA Controller> mem 0x7000-0x7fff,0xe05000-0xe05fff irq 12,13,14,15,16,17,18,19,20,21,22,23,24 on simplebus0
> Checking root against brcm,bcm2836
> panic: No suitable SOC memory configuration found.
> cpuid = 0
> time = 1
> Uptime: 1s
> Automatic reboot in 15 seconds - press a key on the console to abort
>
> Am I commiting a mortal typo somewhere?

No- I don't recall the correct incantations and don't have a board
near me to boot atm, unfortunately. =-(

> The odd thing is that the problem appears with older kernels, not just
> the latest one, both of which worked reasonably well. That's what made
> me suspect recent changes to /boot/loader.conf might be the culprit.
>
> > The proper fix is something like the following patch, because the RPi
> > 2B v1.2 (which must be the one you're running here) is actually a
> No, this is definitely not the 64 bit RPi2, it's the old 32bit one.
> It did successfully make the transition to armv7 using the RPI2 kernel
> config, but when that config came up missing "device pass" I decided
> to try GENERIC, thinking RPI2 was deprecated. The first iteration worked.

Oh- then I think I can only conclude that you're actually
inadvertently using the wrong DTB, but they're similar enough that
things still generally function. How did these boards get provisioned
in the first place? It looks like the RPI2 config will use the
bcm2709* DTS, which is correct for the earlier RPI2 but not the later.

This is a tad bit of a mess. =-(

> I know this Pi2 had a short production run, but I've got three more
> running 11-stable and I don't want to break them on upgrade if I can
> avoid it.
>

11-stable is safe -- the code that's blocking you now hasn't been
MFC'd, and will not be MFC'd, to stable/11.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACNAnaEfiV1fsDyfqHY%2BPp7c5iftF-Asp-AHuOydRTcEG=8H4A>