Erasing MMC partition from kernel module, what's best way to do that?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,
Please excuse me, I have some noob question regarding MMC.

I'd like to erase(discard) certain MMC partition from kernel space (i.e. kernel module).
I know this is quite ugly design, but I have no choice but to implement the feature (erasing given MMC partition) within kernel space for other reasons.

Assume /dev/mmcblk0p2 needs to be erased.

First, I tried to use BLKDISCARD ioctl. From user space, it works.
In kernel space, I had to use ugly code, like set_fs(), filp_open(), etc in order to access "/dev/mmcblk0p2" device.
I stuck at sys_ioctl(), which is not exported symbol so that I couldn't use the sys_ioctl() from my module for the BLKDISCARD ioctl.

Alternatively, I want to make a new exported API to execute the discard request for "/dev/mmcblk0p2" device (like mmc_test_area_erase() in mmc_test.c).
Here, it seems that I need to get "struct mmc_card *card" instance, which is a first parameter of mmc_erase().

How can I get the "card" instance for current MMC device? Is there any way to do that?

Thanks in advance,
Jongman.
ÿ淸º{.nÇ+돴윯돪†+%듚ÿ깁負¥Šwÿº{.nÇ+돴¥Š{깸i쒩)í끾èw*jgП¨¶‰šŽ듶¢jÿ¾?G«앶ÿ◀◁¦j:+v돣ŠwèjØm¶Ÿÿ?®w?듺þf"·hš뤴얎ÿ녪¥



[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux