kernel_init //-----------------------kernel\init\main.c
-->kernel_init_freeable
---->do_basic_setup
------->do_initcalls
---------->do_initcall_level
-------------->do_one_initcall
----------------->arch_initcall(arm64_device_init) //--------------------------kernel\arch\arm64\kernel\setup.c
--------------------->arm64_device_init
----------------------->of_platform_populate(NULL, of_default_bus_match_table, NULL,NULL) //----------------------------kernel\drivers\of\platform.c
--------------------------->of_platform_bus_create
--------------------- --------->of_platform_bus_create(child, matches, lookup, &dev->dev,strict);
----------------------------------->of_platform_device_create_pdata(bus, bus_id,platform_data, parent);
--------------------------------------->of_device_alloc(np, bus_id, parent);
-------------------------------------------->of_address_to_resource //----------------------------------kernel\drivers\of\address.c
------------------------------------------------>__of_address_to_resource//---------------為dev初始化resource結構體
----------------------------------------------------->r->start
= taddr;
----------------------------------------------------->r->end
= taddr + size - 1;
----------------------------------------------------->r->flags
= flags;
----------------------------------------------------->r->name
= name ? name :dev->full_name;
kernel\drivers\of\address.c
of_address_to_resource(){
...
+if(strcmp(dev->name,"usb")== 0)
+{
+ pr_err(" zll----0-dev->name=%s!\n",name);
+}
return __of_address_to_resource(dev, addrp, size, flags, name, r);
…}
Line295: [ 0.380215]@4 zll----0-dev->name=core !
Line296: [ 0.380237]@4 zll----00----r->start=126726144 name=core!
Line297: [ 0.380247]@4 zll----0-dev->name=phy_csr !
Line298: [ 0.380259]@4 zll----00----r->start=442368 name=phy_csr!
Line299: [ 0.380374]@4 zll----0-dev->name=core !
Line300: [ 0.380387]@4 zll----00----r->start=126726144 name=core!
Line301: [ 0.380397]@4 zll----0-dev->name=phy_csr !
Line302: [ 0.380408]@4 zll----00----r->start=442368 name=phy_csr!