C3000 + Marvell 88e6xxx DSA support attempt

I'm trying to get an x86 build going for Atom C3000 platforms with the 88e6xxx switch chip connected to the SoC, but it seems that even after rebuilding with DSA switched on it just doesn't get detected.

I know on non-x86 platforms the switch, MDIO and MII configuration is specified in the DTB, but that's not really how configuration happens on x86. The UEFI ACPI tables (mostly Dell based devices in this case) don't specify anything for this, and it seems the kernel modules for DSA, MDIO, PHY and 88e6xxx DSA driver have no parameters to specify where it should be looking.

The MAC-to-PHY connection is there, I can use most tools to check which of the ixgbe is actually connected, and it does show the device address and ID when you poll the correct interface, but DSA just never triggers.

Do I need to inject/modify the DSDT to get DSA to start discovering switches and load the correct driver?

At least on the velocloud based devices, this mdio backchannel is implanted into the ethernet driver the switch is connected to (igb).

Yep, same applies to the current device I'm working on (a non-VeloCloud device, Dell-branded). But it appears that DSA doesn't go checking loaded interfaces for MDIO. Manually loading it doesn't do anything else, and no parameters are available.

DSA sources also don't seem to show where it expects the switch specification to be put, there is no configuration file either, so no static 'use this interface and this MDIO address' method to try.

I can configure the switch using mdio-tool but that is rather cumbersome.