歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> IO管理五Usb之resource資源初始化

IO管理五Usb之resource資源初始化

日期:2017/3/3 13:59:44   编辑:Linux技術

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!

Copyright © Linux教程網 All Rights Reserved