4418 GPIO口初始化过程
1,先从E:\iTOP4418\linux\kernel\kernel-3.4.39\init\mian.c文件找到start_kernel函数。
里面的init_IRQ();函数
2,找到E:\iTOP4418\linux\kernel\kernel-3.4.39\arch\arm\kernel\irq.c文件里的void __init init_IRQ(void)
3,在E:\iTOP4418\linux\kernel\kernel-3.4.39\arch\arm\mach-s5p4418\cpu.c文件中找到MACHINE_START(S5P4418, CFG_SYS_CPU_NAME)结构体初始化
看到init_irq指向的是nxp_cpu_init_irq这个函数。
4,在E:\iTOP4418\linux\kernel\kernel-3.4.39\arch\arm\mach-s5p4418\irq.c里找到nxp_cpu_init_irq函数。
调用了gpio_init函数对IO口进行初始化,下面是指定的宏定义
5,在E:\iTOP4418\linux\kernel\kernel-3.4.39\arch\arm\mach-s5p4418\irq.c里找到static void __init gpio_init(void __iomem *base, unsigned intirq_start,u32 irq_sources, u32 resume_sources);
在此函数中对IO口初始化并进申请虚拟地址