以前はmountd(現時点ではまだソースも含まれており、まぎらわしい)だったが、voldに変わった為、設定ファイルはmountd.confではなく、vold.confとなるが、ざっと確認したところでは特に変更する必要はないように見受けられた。
あまり必要には思えなかったが、一応エラーになるので、以下の行は追加しておいたほうが無難だろう。
media_path /class/mmc_host/mmc0
また、カーネル2.6.28では、logcatの表示上、以下のようなエラーになる。
---
I/vold ( 832): Android Volume Daemon version 2.0
E/vold ( 832): Unable to chdir to /sys/class/mmc_host/mmc0/slot_name (m)
E/vold ( 832): Error bootstrapping card '/sys/class/mmc_host/mmc0/slot_name' (m)
I/vold ( 832): New MMC card 'SDC ' (serial 651) added @ /class/mmc_host/mmc0/mmc0:b368
D/vold ( 832): Bootstrapping complete
---
slot_nameというのは、ディレクトリではなくファイルなので、chdir()出来なかったようだ。
これは古いカーネルにはなかったので、こういったことで今後も変更する必要が出てくるかもしれない。
以下のようにvoldのソースを変更する必要がある。
diff --git a/vold/mmc.c b/vold/mmc.c
index 0f08964..17b19a0 100644
--- a/vold/mmc.c
+++ b/vold/mmc.c
@@ -85,7 +85,8 @@ static int mmc_bootstrap_controller(char *sysfs_path)
if ((!strcmp(de->d_name, "uevent")) ||
(!strcmp(de->d_name, "subsystem")) ||
(!strcmp(de->d_name, "device")) ||
- (!strcmp(de->d_name, "power"))) {
+ (!strcmp(de->d_name, "power")) ||
+ (!strcmp(de->d_name, "slot_name"))) {
continue;
}
コンソールより以下のようにマウントし、それをシステムに認識させるのは、以前の方法がそのまま利用できた。
マウントしたんだから認識しようよと思うのだが、ざっと調べたところではわからなかった。
# mount -t vfat /dev/block/mmcblk0p1 /sdcard
# setprop EXTERNAL_STORAGE_STATE mounted
これで一度は認識出来たのだが、リブートすると、それ以降は同じ手順でも認識しない?
つづきは次回
あまり必要には思えなかったが、一応エラーになるので、以下の行は追加しておいたほうが無難だろう。
media_path /class/mmc_host/mmc0
また、カーネル2.6.28では、logcatの表示上、以下のようなエラーになる。
---
I/vold ( 832): Android Volume Daemon version 2.0
E/vold ( 832): Unable to chdir to /sys/class/mmc_host/mmc0/slot_name (m)
E/vold ( 832): Error bootstrapping card '/sys/class/mmc_host/mmc0/slot_name' (m)
I/vold ( 832): New MMC card 'SDC ' (serial 651) added @ /class/mmc_host/mmc0/mmc0:b368
D/vold ( 832): Bootstrapping complete
---
slot_nameというのは、ディレクトリではなくファイルなので、chdir()出来なかったようだ。
これは古いカーネルにはなかったので、こういったことで今後も変更する必要が出てくるかもしれない。
以下のようにvoldのソースを変更する必要がある。
diff --git a/vold/mmc.c b/vold/mmc.c
index 0f08964..17b19a0 100644
--- a/vold/mmc.c
+++ b/vold/mmc.c
@@ -85,7 +85,8 @@ static int mmc_bootstrap_controller(char *sysfs_path)
if ((!strcmp(de->d_name, "uevent")) ||
(!strcmp(de->d_name, "subsystem")) ||
(!strcmp(de->d_name, "device")) ||
- (!strcmp(de->d_name, "power"))) {
+ (!strcmp(de->d_name, "power")) ||
+ (!strcmp(de->d_name, "slot_name"))) {
continue;
}
コンソールより以下のようにマウントし、それをシステムに認識させるのは、以前の方法がそのまま利用できた。
マウントしたんだから認識しようよと思うのだが、ざっと調べたところではわからなかった。
# mount -t vfat /dev/block/mmcblk0p1 /sdcard
# setprop EXTERNAL_STORAGE_STATE mounted
これで一度は認識出来たのだが、リブートすると、それ以降は同じ手順でも認識しない?
つづきは次回