of_bus 结构

来源:互联网 发布:virtualbox安装centos 编辑:程序博客网 时间:2024/05/21 10:09

内核版本2.6.34.6

/* Callbacks for bus specific translators */  50struct of_bus {  51        const char      *name;  52        const char      *addresses;  53        int             (*match)(struct device_node *parent);  54        void            (*count_cells)(struct device_node *child,  55                                       int *addrc, int *sizec);  56        u64             (*map)(u32 *addr, const u32 *range,  57                                int na, int ns, int pna);  58        int             (*translate)(u32 *addr, u64 offset, int na);  59        unsigned int    (*get_flags)(const u32 *addr);  60};

一直奇怪addresses是啥,网上也没有对这个机构的介绍,今天递归查找别的函数的时候,偶然看到内核有


 373 * Array of bus specific translators 374 */ 375 376static struct of_bus of_busses[] = { 377#ifdef CONFIG_PCI 
 378        /* PCI */ 379        { 380                .name = "pci", 381                .addresses = "assigned-addresses", 382                .match = of_bus_pci_match, 383                .count_cells = of_bus_pci_count_cells, 384                .map = of_bus_pci_map, 385                .translate = of_bus_pci_translate, 386                .get_flags = of_bus_pci_get_flags, 387        }, 388#endif /* CONFIG_PCI */ 389        /* ISA */ 390        { 391                .name = "isa", 392                .addresses = "reg", 393                .match = of_bus_isa_match, 394                .count_cells = of_bus_isa_count_cells, 395                .map = of_bus_isa_map, 396                .translate = of_bus_isa_translate, 397                .get_flags = of_bus_isa_get_flags, 398        }, 399        /* Default */ 400        { 401                .name = "default", 402                .addresses = "reg", 403                .match = NULL, 404                .count_cells = of_bus_default_count_cells, 405                .map = of_bus_default_map, 406                .translate = of_bus_default_translate, 407                .get_flags = of_bus_default_get_flags, 408        }, 409};

懂了...


正在整理函数of_address_to_resource的原理。等整理清楚了会贴上了,希望能整理清楚

原创粉丝点击