のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

system/vendorフォルダへ足りないドライバの書き込み

adb shellでmountを変更する。

変更前のmount状態

# mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/secure tmpfs rw,relatime,mode=700 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/omap/omap_hsmmc.0/by-name/system /system ext4 ro,relatime,barrier=1,data=ordered 0 0 <=ro
/dev/block/platform/omap/omap_hsmmc.0/by-name/efs /factory ext4 ro,relatime,barrier=1,data=ordered 0 0
/dev/block/platform/omap/omap_hsmmc.0/by-name/cache /cache ext4 rw,nosuid,nodev,noatime,errors=panic,barrier=1,nomblk_io_submit,data=ordered 0 0
/dev/block/platform/omap/omap_hsmmc.0/by-name/userdata /data ext4 rw,nosuid,nodev,noatime,errors=panic,barrier=1,nomblk_io_submit,data=ordered 0 0
/sys/kernel/debug /sys/kernel/debug debugfs rw,relatime 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0

変更するためのコマンド

# mount -o remount,rw /dev/block/platform/omap/omap_hsmmc.0/by-name/system /system

変更後のmount状態

# mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/secure tmpfs rw,relatime,mode=700 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/omap/omap_hsmmc.0/by-name/system /system ext4 rw,relatime,barrier=1,data=ordered 0 0 <=rwになった。
/dev/block/platform/omap/omap_hsmmc.0/by-name/efs /factory ext4 ro,relatime,barrier=1,data=ordered 0 0
/dev/block/platform/omap/omap_hsmmc.0/by-name/cache /cache ext4 rw,nosuid,nodev,noatime,errors=panic,barrier=1,nomblk_io_submit,data=ordered 0 0
/dev/block/platform/omap/omap_hsmmc.0/by-name/userdata /data ext4 rw,nosuid,nodev,noatime,errors=panic,barrier=1,nomblk_io_submit,data=ordered 0 0
/sys/kernel/debug /sys/kernel/debug debugfs rw,relatime 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0

以下のファイルを書き込み

/system/vendor/lib/libwvm.so
/system/vendor/lib/libWVStreamControlAPI_L1.so
/system/vendor/lib/libwvdrm_L1.so

/system/vendor/lib/hw/gps.omap4.so

/system/vendor/firmware/ducati-m3.bin
/system/vendor/firmware/libpn544_fw.so
/system/vendor/firmware/smc_pa_wvdrm.ift

/system/vendor/etc/sirfgps.conf 
/system/vendor/etc/smc_normal_world_and

電源をOFF-ONし再起動したが、ファイルは残っていた。

カメラが動くようになった。
トークのエラーが無くなった。
GPSも動くようになった。

     70   broadcom)
     71     TO_EXTRACT="\
     72             system/vendor/firmware/bcm4330.hcd \
     73             system/vendor/lib/libbt-vendor.so \
     74             "
     75     ;;
     76   csr)
     77     TO_EXTRACT="\
     78             system/vendor/etc/sirfgps.conf \
     79             system/vendor/lib/hw/gps.omap4.so \
     80             "
     81     ;;
     82   imgtec)
     83     TO_EXTRACT="\
     84             system/vendor/bin/pvrsrvctl \
     85             system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so \
     86             system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so \
     87             system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so \
     88             system/vendor/lib/hw/gralloc.omap4.so \
     89             system/vendor/lib/libglslcompiler.so \
     90             system/vendor/lib/libIMGegl.so \
     91             system/vendor/lib/libpvr2d.so \
     92             system/vendor/lib/libpvrANDROID_WSEGL.so \
     93             system/vendor/lib/libPVRScopeServices.so \
     94             system/vendor/lib/libsrv_init.so \
     95             system/vendor/lib/libsrv_um.so \
     96             system/vendor/lib/libusc.so \
     97             "
     98     ;;
     99   invensense)
    100     TO_EXTRACT="\
    101             system/vendor/lib/libinvensense_mpl.so \
    102             "
    103     ;;
    104   nxp)
    105     TO_EXTRACT="\
    106             system/vendor/firmware/libpn544_fw.so \
    107             "
    108     ;;
    109   samsung)
    110     TO_EXTRACT="\
    111             system/bin/fRom \
    112             system/lib/libsecril-client.so \
    113             system/vendor/lib/libsec-ril.so \
    114             "
    115     ;;
    116   ti)
    117     TO_EXTRACT="\
    118             system/vendor/firmware/ducati-m3.bin \
    119             "
    120     ;;
    121   widevine)
    122     TO_EXTRACT="\
    123             system/lib/libdrmdecrypt.so \