[Android One (First-Generation) Cross-Device Genera] k2wl:
hi friends

Today i got my hands on Spice Dream Uno android one handset.

here is what i found for that device.

May be this info is common to all other android one devices that is why i am posting it in this section.

1. build.prop

#
# PRODUCT_OEM_PROPERTIES
#
import /oem/oem.prop ro.product.device
import /oem/oem.prop ro.product.name
import /oem/oem.prop ro.product.manufacturer
import /oem/oem.prop ro.product.model
import /oem/oem.prop ro.product.locale.language
import /oem/oem.prop ro.product.locale.region
import /oem/oem.prop ro.config.ringtone
import /oem/oem.prop ro.config.notification_sound
import /oem/oem.prop ro.config.alarm_alert
import /oem/oem.prop ro.config.wallpaper
import /oem/oem.prop ro.config.wallpaper_component
import /oem/oem.prop ro.oem.*
import /oem/oem.prop oem.*
# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=KPW53
ro.build.display.id=KPW53
ro.build.version.incremental=1379542
ro.build.version.sdk=19
ro.build.version.codename=REL
ro.build.version.release=4.4.4
ro.build.date=Fri Aug 22 22:49:18 UTC 2014
ro.build.date.utc=1408747758
ro.build.type=user
ro.build.user=android-build
ro.build.host=wpds12.hot.corp.google.com
ro.build.tags=release-keys
ro.product.brand=google
ro.product.board=
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.locale.language=en
ro.product.locale.region=US
ro.wifi.channels=
ro.board.platform=mt6582
# ro.build.product is obsolete; use ro.product.device
ro.build.product=sprout
# Do not try to parse description, fingerprint, or thumbprint
ro.build.description=sprout-user 4.4.4 KPW53 1379542 release-keys
ro.build.thumbprint=4.4.4/KPW53/1379542:user/release-keys
ro.build.characteristics=default
# end build properties
#
# from device/mediatek/sprout/sprout/system.prop
#
#
# system.prop for generic sdk
#

rild.libpath=/system/lib/mtk-ril.so
rild.libargs=-d /dev/ttyC0

# MTK, Infinity, 20090720 {
wifi.interface=wlan0
# MTK, Infinity, 20090720 }

# MTK, mtk03034, 20101210 {
ro.mediatek.wlan.wsc=1
# MTK, mtk03034 20101210}
# MTK, mtk03034, 20110318 {
ro.mediatek.wlan.p2p=1
# MTK, mtk03034 20110318}

# MTK, mtk03034, 20101213 {
mediatek.wlan.ctia=0
# MTK, mtk03034 20101213}

#
wifi.tethering.interface=ap0
#
ro.sf.lcd_density=240
ro.opengles.version=131072

wifi.direct.interface=p2p0
dalvik.vm.heapgrowthlimit=96m
dalvik.vm.heapsize=128m

# USB MTP WHQL
ro.sys.usb.mtp.whql.enable=0

# Power off opt in IPO
sys.ipo.pwrdncap=2

ro.sys.usb.storage.type=mtp,mass_storage

# USB BICR function
ro.sys.usb.bicr=yes

# USB Charge only function
ro.sys.usb.charging.only=yes

# audio
ro.camera.sound.forced=0
ro.audio.silent=0

ro.zygote.preload.enable=0

ro.kernel.zio=38,108,105,16
#ro.kernel.qemu=1
#ro.kernel.qemu.gles=0
ro.boot.selinux=disable

# Disable dirty region for Mali
debug.hwui.render_dirty_regions=false

#
# ADDITIONAL_BUILD_PROPERTIES
#
ro.config.ringtone=Titania.ogg
ro.config.notification_sound=Tethys.ogg
ro.config.alarm_alert=Oxygen.ogg
ro.com.android.dateformat=MM-dd-yyyy
ro.com.android.dataroaming=false
ro.url.legal=http://www.google.com/intl/%s/mobile/android/basic/phone-legal.html
ro.url.legal.android_privacy=http://www.google.com/intl/%s/mobile/android/basic/privacy.html
ro.com.google.clientidbase=android-google
ro.carrier=unknown
ro.com.android.wifi-watchlist=GoogleGuest
ro.error.receiver.system.apps=com.google.android.gms
ro.setupwizard.enterprise_mode=1
dalvik.vm.heapgrowthlimit=96m
dalvik.vm.heapsize=128m
ro.mediatek.chip_ver=S01
ro.mediatek.version.release=ALPS.W10.24.p0
ro.mediatek.platform=MT6582
ro.mediatek.version.sdk=1
ro.telephony.sim.count=2
persist.radio.default.sim=0
persist.radio.multisim.config=dsds
ro.telephony.default_network=0,1
persist.gemini.sim_num=2
ro.gemini.smart_3g_switch=1
ril.specific.sm_cause=0
bgw.current3gband=0
ril.external.md=0
ro.sf.hwrotation=0
ril.current.share_modem=2
curlockscreen=1
ro.mediatek.gemini_support=true
persist.radio.fd.counter=15
persist.radio.fd.off.counter=5
persist.radio.fd.r8.counter=15
persist.radio.fd.off.r8.counter=5
persist.mtk.wcn.combo.chipid=-1
drm.service.enabled=true
fmradio.driver.enable=0
ril.first.md=1
ril.flightmode.poweroffMD=1
ril.telephony.mode=0
dalvik.vm.mtk-stack-trace-file=/data/anr/mtk_traces.txt
ril.radiooff.poweroffMD=0
dalvik.vm.heapstartsize=8m
dalvik.vm.heaptargetutilization=0.75
dalvik.vm.heapminfree=512k
dalvik.vm.heapmaxfree=8m
ro.mediatek.version.branch=KK.AOSP
keyguard.no_require_sim=true
ro.facelock.black_timeout=400
ro.facelock.det_timeout=1500
ro.facelock.rec_timeout=2500
ro.facelock.lively_timeout=2500
ro.facelock.est_max_time=600
ro.facelock.use_intro_anim=false
persist.sys.dalvik.vm.lib=libdvm.so
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt

2.Partition layout

adb shell

127|shell@Mi-498_sprout:/ $ cat proc/partitions
major minor #blocks name

179 0 3817472 mmcblk0
179 1 3072 mmcblk0p1
179 2 5120 mmcblk0p2
179 3 10240 mmcblk0p3
179 4 10240 mmcblk0p4
179 5 256 mmcblk0p5
179 6 384 mmcblk0p6
179 7 10240 mmcblk0p7
179 8 10240 mmcblk0p8
179 9 6144 mmcblk0p9
179 10 512 mmcblk0p10
179 11 8192 mmcblk0p11
179 12 65536 mmcblk0p12
179 13 16768 mmcblk0p13
179 14 1024000 mmcblk0p14
179 15 131072 mmcblk0p15
179 16 2416640 mmcblk0p16
179 17 32768 mmcblk0p17
179 18 65024 mmcblk0p18
179 64 4096 mmcblk0boot1
179 32 4096 mmcblk0boot0
179 96 7782400 mmcblk1
179 97 7781376 mmcblk1p1

and

shell@Mi-498_sprout:/ $ ls -l /dev/block/platform/mtk-msdc.0/by-name
lrwxrwxrwx root root 2010-01-01 05:30 boot -> /dev/block/mmcblk0p7
lrwxrwxrwx root root 2010-01-01 05:30 bootloader -> /dev/block/mmcblk0p6
lrwxrwxrwx root root 2010-01-01 05:30 cache -> /dev/block/mmcblk0p15
lrwxrwxrwx root root 2010-01-01 05:30 expdb -> /dev/block/mmcblk0p13
lrwxrwxrwx root root 2010-01-01 05:30 gen -> /dev/block/mmcblk0p18
lrwxrwxrwx root root 2010-01-01 05:30 logo -> /dev/block/mmcblk0p11
lrwxrwxrwx root root 2010-01-01 05:30 metadata -> /dev/block/mmcblk0p17
lrwxrwxrwx root root 2010-01-01 05:30 nvram -> /dev/block/mmcblk0p2
lrwxrwxrwx root root 2010-01-01 05:30 oem -> /dev/block/mmcblk0p12
lrwxrwxrwx root root 2010-01-01 05:30 para -> /dev/block/mmcblk0p10
lrwxrwxrwx root root 2010-01-01 05:30 proinfo -> /dev/block/mmcblk0p1
lrwxrwxrwx root root 2010-01-01 05:30 protect1 -> /dev/block/mmcblk0p3
lrwxrwxrwx root root 2010-01-01 05:30 protect2 -> /dev/block/mmcblk0p4
lrwxrwxrwx root root 2010-01-01 05:30 recovery -> /dev/block/mmcblk0p8
lrwxrwxrwx root root 2010-01-01 05:30 seccfg -> /dev/block/mmcblk0p5
lrwxrwxrwx root root 2010-01-01 05:30 secro -> /dev/block/mmcblk0p9
lrwxrwxrwx root root 2010-01-01 05:30 system -> /dev/block/mmcblk0p14
lrwxrwxrwx root root 2010-01-01 05:30 userdata -> /dev/block/mmcblk0p16

3.Mount points

adb shell

shell@Mi-498_sprout:/ $ cat proc/mounts
rootfs / rootfs ro,seclabel,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
none /sys/fs/cgroup/memory cgroup rw,relatime,memory 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/mtk-msdc.0/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/platform/mtk-msdc.0/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,discard,noauto_da_alloc,data=ordered 0 0
/dev/block/platform/mtk-msdc.0/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,discard,noauto_da_alloc,data=ordered 0 0
/dev/block/platform/mtk-msdc.0/by-name/protect1 /protect_f ext4 rw,seclabel,nosuid,nodev,noatime,nodelalloc,noauto_da_alloc,commit=1,data=ordered 0 0
/dev/block/platform/mtk-msdc.0/by-name/protect2 /protect_s ext4 rw,seclabel,nosuid,nodev,noatime,nodelalloc,noauto_da_alloc,commit=1,data=ordered 0 0
/dev/block/platform/mtk-msdc.0/by-name/oem /oem ext4 ro,context=u:object_r:oemfs:s0,nosuid,nodev,relatime,data=ordered 0 0
adb /dev/usb-ffs/adb functionfs rw,relatime 0 0
/sys/kernel/debug /sys/kernel/debug debugfs rw,relatime 0 0
/dev/block/vold/179:97 /mnt/media_rw/sdcard0 vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block/vold/179:97 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/fuse /storage/sdcard0 fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0

4.fastboot

yes this device has fastboot.

Unlocking bootloader via fastboot

***reboot into fastboot mode

2ways

a] switch off the phone>>press volume up + power at same time>>boot menu should appear>>go to fastboot menu with volume up and then select by pressing volume down.

OR

b]connect phone to PC(i use linux i dont need to install any drivers or adb or fastboot packages).>>enable usb debugging mode (developer options)>>adb reboot bootloader

this will boot into fastboot directly.

***connect phone to the PC

***open terminal>>fastboot oem unlock>>press volume down to select fastboot again>>fastboot format cache>>fastboot format userdata>>fastboot reboot

now you have unloicked bootloader.

5. Recovery

when

given >>it boot into recovery screen where only some chinese picture of recovery is present.

On chinese recovery screen, if you press volume up and power button you will get apply zip from sideload and sdcard.

6.there is no valid fstab present at the root

7. init rc files are seem to be hidden out or symlinked somewhere else.

if you try to open them they open as only a blank text file.

8. Build version in build.prop is KPW53.

i dont know which version of kitkat is that.

9. baseband version

WR8.W1412.MD.WG.GMP.SP.W14.26.P3,2014/08/15 11.39

10. KERNEL version

3.4.67 android-build@kpdm5.cbf.crop.google.com#1 Wed Aug 20 14:13:29 PDT 2014

11. SELINUX is disabled in build.prop

13. SAR value is 0.641 W/Kg (1g)

14. oem.prop for spice dream uno mi-498

ro.product.device=Mi-498_sprout
ro.product.name=Mi-498
ro.product.manufacturer=Spice
ro.product.model=Spice Mi-498
ro.product.locale.language=en
ro.product.locale.region=IN
ro.config.wallpaper=/oem/media/Default.jpg

15. partition layout proc/dumchar type(this does not exist on our phone but this info may be useful to create scatter file for sp flash tool)

partno: start_sect nr_sects partition_name
emmc_p1: 00000400 00001800 "proinfo"
emmc_p2: 00001c00 00002800 "nvram"
emmc_p3: 00004400 00005000 "protect1"
emmc_p4: 00009400 00005000 "protect2"
emmc_p5: 0000e400 00000200 "seccfg"
emmc_p6: 0000e600 00000300 "bootloader"
emmc_p7: 0000e900 00005000 "boot"
emmc_p8: 00013900 00005000 "recovery"
emmc_p9: 00018900 00003000 "secro"
emmc_p10: 0001b900 00000400 "para"
emmc_p11: 0001bd00 00004000 "logo"
emmc_p12: 0001fd00 00020000 "oem"
emmc_p13: 0003fd00 00008300 "expdb"
emmc_p14: 00048000 001f4000 "system"
emmc_p15: 0023c000 00040000 "cache"
emmc_p16: 0027c000 0049c000 "userdata"
emmc_p17: 00718000 00010000 "metadata"
emmc_p18: 00728000 0001fc00 "gen"

16. more info for the android one partitions and bootloader and preloader methods

(bootloader) max-download-size: 0x8000000
(bootloader) partition-size:gen: 3f80000
(bootloader) partition-type:gen: raw data
(bootloader) partition-size:metadata: 2000000
(bootloader) partition-type:metadata: raw data
(bootloader) partition-size:userdata: 93800000
(bootloader) partition-type:userdata: ext4
(bootloader) partition-size:cache: 8000000
(bootloader) partition-type:cache: ext4
(bootloader) partition-size:system: 3e800000
(bootloader) partition-type:system: ext4
(bootloader) partition-size:expdb: 1060000
(bootloader) partition-type:expdb: raw data
(bootloader) partition-size:oem: 4000000
(bootloader) partition-type:oem: ext4
(bootloader) partition-size:logo: 800000
(bootloader) partition-type:logo: raw data
(bootloader) partition-size:para: 80000
(bootloader) partition-type:para: raw data
(bootloader) partition-size:secro: 600000
(bootloader) partition-type:secro: ext4
(bootloader) partition-size:recovery: a00000
(bootloader) partition-type:recovery: raw data
(bootloader) partition-size:boot: a00000
(bootloader) partition-type:boot: raw data
(bootloader) partition-size:bootloader: 60000
(bootloader) partition-type:bootloader: raw data
(bootloader) partition-size:seccfg: 40000
(bootloader) partition-type:seccfg: raw data
(bootloader) partition-size:protect2: a00000
(bootloader) partition-type:protect2: ext4
(bootloader) partition-size:protect1: a00000
(bootloader) partition-type:protect1: ext4
(bootloader) partition-size:nvram: 500000
(bootloader) partition-type:nvram: raw data
(bootloader) partition-size:proinfo: 300000
(bootloader) partition-type:proinfo: raw data
(bootloader) partition-size:preloader: 40000
(bootloader) partition-type:preloader: raw data
(bootloader) off-mode-charge: 1
(bootloader) warranty: no
(bootloader) unlocked: yes
(bootloader) secure: no
(bootloader) version-baseband: MOLY
(bootloader) kernel: lk
(bootloader) product: sprout
(bootloader) version-preloader: 0.1.02
(bootloader) version-bootloader: 0.5.17

17. how to access preloader

The preloader does exist and can be accessed.

Remove and replace the battery and keep the volume down button with the phone connected to activate it.

thanks to @joshuab227