FreeBSD on Layerscape/QorIQ LX2160X

Dan Kotowski dan.kotowski at a9development.com
Wed Jun 17 20:32:43 UTC 2020


> > > By the way, did you get any different firmware builds in the meantime? That don't have everything suspiciously routed to the SMMU in IORT..
> >
> > s/suspiciously/by design/
> > BEGIN QUOTE
> > the PCIe root nodes are hidden from the rich OS with this configuration. To access the root nodes you need a quirk implemented.
> > eventually it will be an option for those that want to run custom kernels, but for now this is the solution for the most SBSA like configuration
> > END QUOTE
>
> And how are we supposed to get any MSI-X interrupts in this configuration?
>
> Our fallback code for when nothing was matched in IORT (i.e. directly using PCIe RID with no offset) did not result in working interrupts.
>
> IIRC legacy interrupts didn't work either, but maybe you should retest them (disabling MSI, MSI-X).

NSTR, but here you go anyways: https://gist.github.com/agrajag9/d4d75d7dca41b3cb64c0a4243eed4eb7

Forgive my n00bishness and feel free to correct me below, I'm still learning my way around down here... What are we doing with all the GSIVs in the IORT SMMU node?

Based on reading the table and dmesg.boot, I'm seeing the following:

* ITS node for gics
* 2 root complex nodes for pci0 and 1,
* Named component nodes for MCE, ugens, mmcs (if we still had that in), and ahcis

But then the SMMU node has:

* 64 context interrupts,
* 10 PMU interrupts, and
* 5 ID mappings

Where do these go? Are we perhaps not walking this section properly and that's the quirk to which Jon is referring?


More information about the freebsd-arm mailing list