ビルドにチャレンジした時のメモ
機種情報
・日本の機種コードは、VNS-L22C365
・最後のファームウェアバージョンは、VNS-L22C635B401
パーティションのバックアップ
パーティション情報
/dev/block/bootdevice/by-name/system -> /dev/block/mmcblk0p44 /dev/block/bootdevice/by-name/boot -> /dev/block/mmcblk0p28 /dev/block/bootdevice/by-name/vendor -> /dev/block/mmcblk0p47
パーティションのバックアップ 、TWRP起動後、コマンドプロンプトのadb shellにて実行する
# dd if=/dev/block/mmcblk0p28 of=/sdcard/boot.img # dd if=/dev/block/mmcblk0p44 of=/sdcard/system.img # dd if=/dev/block/mmcblk0p47 of=/sdcard/vendor.img
※vendorは、プロプライエタリのファイルが入っているパーティション。
fastboot mode でflashできるのはboot,system,recoveryのみ、vendorはできない。
したがって、元に戻す時もTWRPからadb shellで実行する。
> adb push vendor.img /external_sd/ > adb shell # dd if=/external_sd/vendor.img of=/dev/block/mmcblk0p47
デバイス名について
getprop で実行すると以下の内容、GitHubでのソースは device_huawei_venusかdevice_huawei_hi6250になる。
[ro.product.device]: [venus] [ro.board.platform]: [hi6250] [ro.boot.hardware]: [hi6250]
TWRPについて
純正ROMでは/dataは暗号化してマウントしており、lineageなどのカスタムROMでは暗号化された/dataはアクセスできない。インストールしても起動に失敗する。そのため、公開されているTWRPには
・/dataを暗号化されたままアクセスできるTWRP
・lineageなどカスタムROMをいれるため普通の/dataがアクセスできるTWRP
の2種類が存在する。
カスタムROMを入れるためには、純正ROMが入っていた場合、最初にTWRPのメニューの中の「Format Data」を実行する必要がある。(「Format Data」を行うと/sdcardも初期化されるので要注意) すでにカスタムROMを導入している場合は、普通の「wipe factory/reset」で済む。
ちなみに、twrpのfstab.hi6250に以下の記述がある、これが暗号化の箇所
forceencrypt=footer,check
/dev/block/bootdevice/by-name/userdata /data f2fs nosuid,nodev,noatime,discard,inline_data,inline_xattr wait,forceencrypt=footer,check