[PATCH v2 00/48] ARM: PXA multiplatform support
Guenter Roeck
linux at roeck-us.net
Mon May 2 09:26:12 PDT 2022
On 4/30/22 07:23, Arnd Bergmann wrote:
> On Sat, Apr 30, 2022 at 3:32 PM Arnd Bergmann <arnd at arndb.de> wrote:
>>
>> On Sat, Apr 30, 2022 at 2:41 PM Guenter Roeck <linux at roeck-us.net> wrote:
>>> On 4/30/22 01:04, Arnd Bergmann wrote:
>>>> and concluded that it must have done this for a long time. In my own qemu
>>>> instance, I see a crash from iWMMXt, but that works fine on your machine.
>>>> OTOH, your failed instances all look like they either time out or
>>>> failed to find a
>>>> rootfs. I tried passing an MMC device as root, and that works here.
>>>>
>>>
>>> Booting from mmc works for me as well. Booting from pcmcia worked before,
>>> so I assume that there must be some regression.
>>
>> Ok, got it, and managed to reproduce the hang now. My "ARM: pxa/sa1100: move
>> I/O space to PCI_IOBASE" patch managed to get it to the point of detecting
>> the pcmcia device instead of crashing, so I assumed it was enough when it
>> clearly was not. Before that patch, it still works, afterwards it hangs with
>> "pata_pcmcia: probe of 0.0 failed with error -12" as mentioned above. I'll
>> have another look.
>
> Got it: as the PCMCIA bus on this machine is the only thing with an I/O space,
> I assigned it port number range 0-0x1000, with an io_offset of 0, but this
> was apparently unexpected and triggered this sanity check:
>
> static int static_find_io(struct pcmcia_socket *s, unsigned int attr,
> unsigned int *base, unsigned int num,
> unsigned int align, struct resource **parent)
> {
> if (!s->io_offset)
> return -EINVAL;
> ...
> return 0;
> }
>
> I moved the devices around now, giving zeus/viper I/O space an offset of
> zero, and moving PCMCIA to offset 0x10000 and 0x11000 for the two slots,
> which now works because the io_offset is nonzero. I've regenerated the
> branches again, and confirmed the for-next branch still boots from pcmcia.
>
With v5.18-rc1-49-gcb813018b5c1, I still get:
[ 0.797668] RAMDISK: Couldn't find valid RAM disk image starting at 0.
[ 0.805262] /dev/root: Can't open blockdev
[ 0.805487] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[ 0.805674] Please append a correct "root=" boot option; here are the available partitions:
when trying to boot z2 from initrd.
The other problems are gone.
Guenter
More information about the linux-arm-kernel
mailing list