MTK分区之(六)kernel阶段分区相关

(一)添加分区代码调用流程

./drivers/mmc/card/block.c

mmc_blk_probe

       /*Murphy.liu note: 为EMMC分配和设置mmc_blk_data */

    md = mmc_blk_alloc(card);

      

       /*Murphy.liu note:

       *     EMMC上有多个物理分区,这里用于为这些物理分区(例如rpmb分区)分配和设置mmc_blk_data

       */

       mmc_blk_alloc_parts

      

       /*Murphy.liu note:

       *     将mmc_blk构造的gendisk注册到系统中,生成对应的块设备

       */

       mmc_add_disk

              add_disk

                     register_disk

                            blkdev_get

                                   __blkdev_get

                                          //Murphy.liu note:循环把所有分区都add

                                          rescan_partitions

                                                 //Murphy.liu note:获取分区信息(起始扇区,总扇区数)

                                                 check_partition

                                                 /*Murphy.liu note:

                                                 *     add_partition,是添加EMMC分区信息的函数,负责向EMMC数据结构添加一个新的分区

                                                 */

                                                 add_partition

             

所以按照这个调用流程可以知道rescan_partitions这个函数是添加分区的关键性函数

而其中的add_partition更是重中之重

(二)rescan_partitions

int rescan_partitions(struct gendisk *disk, struct block_device *bdev)

{

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值