I'm wondering about how to approach an eventual refactoring and I'm thinking that for platforms that are known to have DTs out there without the node, we could exceptionally instantiate the SCM device when the module is loaded? And then modify the driver to require the provider to have an actual struct device attached.
I'm happy to help test these changes if you'd like!