对linux内核创建flash上的各分区源码进行分析
1.注意:内核源码版本为4.9
2.首先注意关键字符串"partitions found on MTD device
这句话在drivers/mtd/mtdpart.c的parse_mtd_partitions()中出现
3.mtd_device_parse_register()调用了parse_mtd_partitions()
4.发现mtd_device_parse_register()中的mtd_add_device_partitions()
5.mtd_add_device_partitions
-->add_mtd_partitions
这里面就有一句 printk(KERN_NOTICE "Creating %d MTD partitions on \"%s\":\n", nbparts, master->name);
6.add_mtd_partitions
-->allocate_partition() drivers/mtd/mtdpart.c (对mtd结构体进行初始化)
-->add_mtd_device() drivers/mtd/mtdcore.c
-->mtd_add_partition_attrs() drivers/mtd/mtdpart.c