If there are ports that refer the controllers by a device name, and multiple autoconnectable controller devices of that name, the situation gets messy. In particular, the autoconnect logic can start activating a device with a higher autoconnect priority, but then a port can override it by bringing up another controller of possibly lower autoconnect priority.
Let's
1.) prefer controller connections with higher autoconnect priority
and
2.) prefer connections that are already active so that we don't disrupt existing activation.