[Android Q&A, Help & Troubleshooting] aboshi:
Hi Everyone, I am trying to port CWM to a ZTE Livepro (sprint) spro (ATT) and I am running into a small issue. I have rooted and unlocked the bootloader with relative ease. I have dumped the boot and recovery partition as well as system (just incase) I have pulled down CM 10.1 to work from. The stock rom on the device is jellybean 4.2.2 After unpacking the bootloader and getting the fstab and everything else needed I was able to build a recovery BUT thats only with the default vaules in the boardconfig.mk This is the defaults for this device:

USE_CAMERA_STUB := true # inherit from the proprietary version -include vendor/zte/MF97A/BoardConfigVendor.mk TARGET_ARCH := arm TARGET_NO_BOOTLOADER := true TARGET_BOARD_PLATFORM := unknown TARGET_CPU_ABI := armeabi-v7a TARGET_CPU_ABI2 := armeabi TARGET_ARCH_VARIANT := armv7-a-neon ARCH_ARM_HAVE_TLS_REGISTER := true TARGET_BOOTLOADER_BOARD_NAME := MF97A BOARD_KERNEL_CMDLINE := console=NULL androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x3F ehci-hcd.park=3 maxcpus=2 BOARD_KERNEL_BASE := 0x80200000 BOARD_KERNEL_PAGESIZE := 2048 # fix this up by examining /proc/mtd on a running device BOARD_BOOTIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_FLASH_BLOCK_SIZE := 131072 TARGET_PREBUILT_KERNEL := device/zte/MF97A/kernel BOARD_HAS_NO_SELECT_BUTTON := true

and here is the fstab I use from boot.img

# Copyright (c) 2011, The Linux Foundation. All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are # met: # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above # copyright notice, this list of conditions and the following # disclaimer in the documentation and/or other materials provided # with the distribution. # * Neither the name of The Linux Foundation nor the names of its # contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # mount point	fstype	device	[device2] [length=] /modem	emmc	/dev/block/platform/msm_sdcc.1/by-name/modem /sbl1	emmc	/dev/block/platform/msm_sdcc.1/by-name/sbl1 /sbl2	emmc	/dev/block/platform/msm_sdcc.1/by-name/sbl2 /sbl3	emmc	/dev/block/platform/msm_sdcc.1/by-name/sbl3 /tz	emmc	/dev/block/platform/msm_sdcc.1/by-name/tz /rpm	emmc	/dev/block/platform/msm_sdcc.1/by-name/rpm /emmcboot	emmc	/dev/block/platform/msm_sdcc.1/by-name/aboot /cefs	emmc	/dev/block/platform/msm_sdcc.1/by-name/modemst1 /cefs_tar emmc /dev/block/platform/msm_sdcc.1/by-name/fsg /splash	emmc	/dev/block/platform/msm_sdcc.1/by-name/splash /boot	emmc	/dev/block/platform/msm_sdcc.1/by-name/boot /cache	ext4	/dev/block/platform/msm_sdcc.1/by-name/cache /data	ext4	/dev/block/platform/msm_sdcc.1/by-name/userdata	length=-16384 /misc	emmc	/dev/block/platform/msm_sdcc.1/by-name/misc /recovery	emmc	/dev/block/platform/msm_sdcc.1/by-name/recovery /sdcard	vfat	/dev/block/mmcblk1p1	/dev/block/mmcblk1 /system	ext4	/dev/block/platform/msm_sdcc.1/by-name/system #/sdcarddata	ext4	/dev/block/platform/msm_sdcc.1/by-name/sdcarddata /carrier	ext4	/dev/block/platform/msm_sdcc.1/by-name/carrier

When I build the recovery with that it doesnt have an issue, but when running fastboot boot recovery.img I get 4 distorted pinguins and the device goes black and hanges. This is obviously because the:

BOARD_BOOTIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x105c0000 BOARD_FLASH_BLOCK_SIZE := 131072

is incorrect. There is no /proc/mtd /proc/emmc /proc/dumchar_info Here is the partition map:

lrwxrwxrwx root root 1970-01-11 07:55 aboot -> /dev/block/mmcblk0p5 lrwxrwxrwx root root 1970-01-11 07:55 boot -> /dev/block/mmcblk0p7 lrwxrwxrwx root root 1970-01-11 07:55 cache -> /dev/block/mmcblk0p17 lrwxrwxrwx root root 1970-01-11 07:55 carrier -> /dev/block/mmcblk0p15 lrwxrwxrwx root root 1970-01-11 07:55 fsg -> /dev/block/mmcblk0p20 lrwxrwxrwx root root 1970-01-11 07:55 misc -> /dev/block/mmcblk0p18 lrwxrwxrwx root root 1970-01-11 07:55 modem -> /dev/block/mmcblk0p1 lrwxrwxrwx root root 1970-01-11 07:55 modemst1 -> /dev/block/mmcblk0p11 lrwxrwxrwx root root 1970-01-11 07:55 modemst2 -> /dev/block/mmcblk0p12 lrwxrwxrwx root root 1970-01-11 07:55 persist -> /dev/block/mmcblk0p9 lrwxrwxrwx root root 1970-01-11 07:55 recovery -> /dev/block/mmcblk0p19 lrwxrwxrwx root root 1970-01-11 07:55 rpm -> /dev/block/mmcblk0p6 lrwxrwxrwx root root 1970-01-11 07:55 sbl1 -> /dev/block/mmcblk0p2 lrwxrwxrwx root root 1970-01-11 07:55 sbl2 -> /dev/block/mmcblk0p3 lrwxrwxrwx root root 1970-01-11 07:55 sbl3 -> /dev/block/mmcblk0p4 lrwxrwxrwx root root 1970-01-11 07:55 splash -> /dev/block/mmcblk0p16 lrwxrwxrwx root root 1970-01-11 07:55 ssd -> /dev/block/mmcblk0p21 lrwxrwxrwx root root 1970-01-11 07:55 system -> /dev/block/mmcblk0p13 lrwxrwxrwx root root 1970-01-11 07:55 tz -> /dev/block/mmcblk0p8 lrwxrwxrwx root root 1970-01-11 07:55 userdata -> /dev/block/mmcblk0p14 lrwxrwxrwx root root 1970-01-11 07:55 ztecfg -> /dev/block/mmcblk0p10

Partition sizes:

cat /proc/partitions major minor #blocks name 179 0 3866624 mmcblk0 179 1 73728 mmcblk0p1 179 2 8192 mmcblk0p2 179 3 8192 mmcblk0p3 179 4 8192 mmcblk0p4 179 5 8192 mmcblk0p5 179 6 16384 mmcblk0p6 179 7 16384 mmcblk0p7 179 8 49152 mmcblk0p8 179 9 16384 mmcblk0p9 179 10 8192 mmcblk0p10 179 11 8192 mmcblk0p11 179 12 32768 mmcblk0p12 179 13 1056768 mmcblk0p13 179 14 1892352 mmcblk0p14 179 15 57344 mmcblk0p15 179 16 16384 mmcblk0p16 179 17 311296 mmcblk0p17 179 18 8192 mmcblk0p18 179 19 16384 mmcblk0p19 179 20 8192 mmcblk0p20 179 21 8192 mmcblk0p21

Shows the boot and recovery being 16mb So heres the boardconfig.mk I came up with:

USE_CAMERA_STUB := true # inherit from the proprietary version -include vendor/zte/MF97A/BoardConfigVendor.mk TARGET_ARCH := arm TARGET_NO_BOOTLOADER := true TARGET_BOARD_PLATFORM := unknown TARGET_CPU_ABI := armeabi-v7a TARGET_CPU_ABI2 := armeabi TARGET_ARCH_VARIANT := armv7-a-neon ARCH_ARM_HAVE_TLS_REGISTER := true TARGET_BOOTLOADER_BOARD_NAME := MF97A BOARD_KERNEL_CMDLINE := console=NULL androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x3F ehci-hcd.park=3 maxcpus=2 BOARD_KERNEL_BASE := 0x80200000 BOARD_KERNEL_PAGESIZE := 2048 # fix this up by examining /proc/mtd on a running device BOARD_BOOTIMAGE_PARTITION_SIZE := 16384 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 16384 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1056768 BOARD_USERDATAIMAGE_PARTITION_SIZE := 1892352 BOARD_FLASH_BLOCK_SIZE := 4096 TARGET_PREBUILT_KERNEL := device/zte/MF97A/kernel BOARD_HAS_NO_SELECT_BUTTON := true

After building with the modded boardconfig.mk I get an error at the very end of building CWM saying filesize too big. I have also used different flash block size to no avail. I have been scratching my head about this for about a week already trying to get it to work with lots of reading. I dont know if the boardconfig.mk needs a hex value for the partition sizes? If it does how can I go about getting it? Here is the error I get:

----- Making recovery image ------ /home/android/cm-10.1/out/target/product/MF97A/recovery.img maxsize=8448 blocksize=4224 total=8294400 reserve=8448 error: /home/android/cm-10.1/out/target/product/MF97A/recovery.img too large (8294400 > [16896 - 8448]) build/core/Makefile:769: recipe for target '/home/android/cm-10.1/out/target/product/MF97A/recovery.img' failed make: *** [/home/android/cm-10.1/out/target/product/MF97A/recovery.img] Error 1 make: *** Deleting file '/home/android/cm-10.1/out/target/product/MF97A/recovery.img' build error!

​