On 2019-12-11 22:37, Bjorn Andersson wrote: > It's the asymmetry that I don't like. > > Perhaps if you instead make ufshcd platform_device_register_data() the > bsg device you would solve the probe ordering, the remove will be > symmetric and module autoloading will work as well (although then you > need a MODULE_ALIAS of platform:device-name). Hi Bjorn, >From Documentation/driver-api/driver-model/platform.rst: "Platform devices are devices that typically appear as autonomous entities in the system. This includes legacy port-based devices and host bridges to peripheral buses, and most controllers integrated into system-on-chip platforms. What they usually have in common is direct addressing from a CPU bus. Rarely, a platform_device will be connected through a segment of some other kind of bus; but its registers will still be directly addressable." Do you agree that the above description is not a good match for the ufs-bsg kernel module? Thanks, Bart.