[PASEMI] Nemo board doesn't boot anymore because of moving pas_pci_init

Michael Ellerman mpe at ellerman.id.au
Wed Feb 24 11:55:00 AEDT 2021


Olof Johansson <olof at lixom.net> writes:
> Hi,
>
> On Tue, Feb 23, 2021 at 1:43 PM Christian Zigotzky
> <chzigotzky at xenosoft.de> wrote:
>>
>> Hello,
>>
>> The Nemo board [1] with a P.A. Semi PA6T SoC doesn't boot anymore
>> because of moving "pas_pci_init" to the device tree adoption [2] in the
>> latest PowerPC updates 5.12-1 [3].
>>
>> Unfortunately the Nemo board doesn't have it in its device tree. I
>> reverted this commit and after that the Nemo board boots without any
>> problems.
>>
>> What do you think about this ifdef?
>>
>> #ifdef CONFIG_PPC_PASEMI_NEMO
>>          /*
>>           * Check for the Nemo motherboard here, if we are running on one
>>           * then pas_pci_init()
>>           */
>>          if (of_machine_is_compatible("pasemi,nemo")) {
>>                  pas_pci_init();
>>          }
>> #endif
>
> This is not a proper fix for the problem. Someone will need to debug
> what on the pas_pci_init() codepath still needs to happen early in the
> boot, even if the main PCI setup happens later.

I looked but don't see anything 100% obvious.

Possibly it's the call to isa_bridge_find_early()?

static int __init pas_add_bridge(struct device_node *dev)
{
	...
	/*
	 * Scan for an isa bridge. This is needed to find the SB600 on the nemo
	 * and does nothing on machines without one.
	 */
	isa_bridge_find_early(hose);

	return 0;
}


cheers


More information about the Linuxppc-dev mailing list