Loading drivers/mmc/card/block.c +28 −0 Original line number Diff line number Diff line Loading @@ -685,6 +685,15 @@ static int mmc_blk_ioctl_cmd(struct block_device *bdev, } } if (mmc_card_doing_bkops(card)) { err = mmc_stop_bkops(card); if (err) { dev_err(mmc_dev(card->host), "%s: stop_bkops failed %d\n", __func__, err); goto cmd_rel_host; } } err = mmc_blk_part_switch(card, md); if (err) goto cmd_rel_host; Loading Loading @@ -832,6 +841,25 @@ static int mmc_blk_ioctl_rpmb_cmd(struct block_device *bdev, mmc_get_card(card); if (mmc_card_doing_bkops(card)) { if (mmc_card_cmdq(card)) { err = mmc_cmdq_halt(card->host, true); if (err) goto cmd_rel_host; } err = mmc_stop_bkops(card); if (err) { dev_err(mmc_dev(card->host), "%s: stop_bkops failed %d\n", __func__, err); goto cmd_rel_host; } if (mmc_card_cmdq(card)) { err = mmc_cmdq_halt(card->host, false); if (err) goto cmd_rel_host; } } err = mmc_blk_part_switch(card, md); if (err) goto cmd_rel_host; Loading Loading
drivers/mmc/card/block.c +28 −0 Original line number Diff line number Diff line Loading @@ -685,6 +685,15 @@ static int mmc_blk_ioctl_cmd(struct block_device *bdev, } } if (mmc_card_doing_bkops(card)) { err = mmc_stop_bkops(card); if (err) { dev_err(mmc_dev(card->host), "%s: stop_bkops failed %d\n", __func__, err); goto cmd_rel_host; } } err = mmc_blk_part_switch(card, md); if (err) goto cmd_rel_host; Loading Loading @@ -832,6 +841,25 @@ static int mmc_blk_ioctl_rpmb_cmd(struct block_device *bdev, mmc_get_card(card); if (mmc_card_doing_bkops(card)) { if (mmc_card_cmdq(card)) { err = mmc_cmdq_halt(card->host, true); if (err) goto cmd_rel_host; } err = mmc_stop_bkops(card); if (err) { dev_err(mmc_dev(card->host), "%s: stop_bkops failed %d\n", __func__, err); goto cmd_rel_host; } if (mmc_card_cmdq(card)) { err = mmc_cmdq_halt(card->host, false); if (err) goto cmd_rel_host; } } err = mmc_blk_part_switch(card, md); if (err) goto cmd_rel_host; Loading