On Wed, Nov 18, 2020 at 10:28:47AM +0000, Alice Guo wrote: > > > If it is properly explained and there is no other way then yes, you could. Here, for > > old DTBs, I would prefer to use > > of_platform_device_create() and bind to "soc" node (child of root). > > This way you would always have device and exactly one entry point for the > > probe. > > > > static struct platform_driver imx8_soc_init_driver = { > .probe = imx8_soc_init_probe, > .driver = { > .name = "soc@0", > }, > }; > Can I use "soc@0" to match this driver? It will not use of_platform_device_create(). It will use of_find_property() to determine whether > and nvmem-cells can be used. If there is no nvmem-cells, it will use the old way, which supports old DTBS. There is no need to add new > compatible. No, the soc@0 is not a proper name for the driver. Best regards, Krzysztof