maze4

grep -r 糞芝 ./ での調査で、お!とヒットしたのが

kernel/drivers/mtd/devices/msm_nand.c
 #define APPS_PARTITION_BOUNDNAME    "boot"

これ。

こんな判定して
if (!strcmp(pdata->parts[i].name, APPS_PARTITION_BOUNDNAME))
{
 apps_partition_offset = pdata->parts[i].offset;
 pr_info("APPS OFFSET: 0x%08x \n", apps_partition_offset);
}
こんなことして
unsigned partinfo = (apps_partition_offset > from) ? 1 : 0;

パテの読み書きで

if ( partinfo )
{
 cfg0_back         = chip->CFG0;
   ecc_buf_cfg_back  = chip->ecc_buf_cfg;
   chip->CFG0        = CFG0_M;
   chip->ecc_buf_cfg = 0x1FF;
}

if ( partinfo )
{
 sectordatasize = 512;
}
こんなことしている。

素人目にこれは怪しい。
bootパテで出来ていることがrecoveryパテで出来ていないちゅうことは、逆に考えるとbootだけに施しているとも考えられる訳でして。

そういう訳で、recoveryパテも判定条件に含め、カーネルビルド。
とりあえず起動上問題ないか、bootイメージ作成して焼いてみる。

見事に鰤ってるし。

さて、消そうとして消えなかったsddownloaderちゃんに働いてもらうか。
皮肉なものです。