Hmmm, what's about the opposite approach? To me, it sounds simpler and more logical when the kernel always creates one device node per output (or maybe dynamically per connected output), without any need for configuration or device assignment.
It just doesn't fit in with how the drm device nodes work, like it might seem simpler in the kernel but I think it would just complicate userspace.
If a single X server wants to control several outputs, libdrm should open the corresponding number of devices in parallel. We already have both static X configuration and xrandr for configuring that, and if the devices allow only a single open, this would also arbitrate outputs between servers (a server can't open an output which is already taken).
I haven't decided it couldn't work but I'd need a working implementation to even consider merging it, where I've already done a demo of how I think it should work, which means I don't have to revalidate things if someone were to complete it.
Dave.