我發現這個Linux內核代碼http://gitorious.org/pandroid/kernel-omap/blobs/5ed7607d45b300a37dd13ad1c79adea56f6687ce/arch/arm/mach-omap2/board-omap4panda.c這是Linux內核代碼中的任何一種宏嗎?
MACHINE_START(OMAP4_PANDA, "OMAP4430 Panda Board")
.phys_io = 0x48000000,
.io_pg_offst = ((0xfa000000) >> 18) & 0xfffc,
.boot_params = 0x80000100,
.map_io = omap_panda_map_io,
.init_irq = omap_panda_init_irq,
.init_machine = omap_panda_init,
.timer = &omap_timer,
MACHINE_END
我沒有得到這算什麼..?這是一個宏或結構或什麼..?
定義說
/*
* Set of macros to define architecture features. This is built into
* a table by the linker.
*/
#define MACHINE_START(_type,_name) \
static const struct machine_desc __mach_desc_##_type \
__used \
__attribute__((__section__(".arch.info.init"))) = { \
.nr = MACH_TYPE_##_type, \
.name = _name,
#define MACHINE_END \
};
#endif
,但我不理解最近怎麼工作的?
搜索「#define MACHINE_START」需要多長時間? – 2012-03-09 07:51:12
@Damien_The_Unbeliever「大約19,100個結果(** 0.30秒**)」;-)) – 2012-03-09 07:57:30
您應該學習如何獲取源代碼的預處理形式。在編譯命令中將'gcc'替換爲'gcc -C -E',您將得到* stdout *上的預處理表單。 – 2012-03-09 08:14:40