Jump to content

Lenovo YOGA Tablet 10 (lenovo-b8000)

From postmarketOS Wiki
Lenovo YOGA Tablet 10
Manufacturer Lenovo
Name YOGA Tablet 10
Codename lenovo-b8000
Released 2013
Type tablet
Hardware
Chipset MediaTek MT8125
CPU 4x 1.2 GHz Cortex-A7
GPU PowerVR SGX544 @ 256 MHz (MT8389: 286 MHz)
Display 1280 x 800 IPS
Storage 16 GB + microSD
Memory 1 GB
Architecture armv7
Software
Original software
The software and version the device was shipped with.
Android 4.2 / 4.4
Extended version
The most recent supported version from the manufacturer.
Android
FOSS bootloader partial
postmarketOS
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
no
Lenovo YOGA Tablet 8
Manufacturer Lenovo
Name YOGA Tablet 8
Codename lenovo-b6000
Released 2013
Type tablet
Hardware
Chipset MediaTek MT8125
CPU 4x 1.2 GHz Cortex-A7
GPU PowerVR SGX544 @ 256 MHz (MT8389: 286 MHz)
Display 1280 x 800 IPS
Storage 16 GB + microSD
Memory 1 GB
Architecture armv7
Software
Original software
The software and version the device was shipped with.
Android 4.2 / 4.4
Extended version
The most recent supported version from the manufacturer.
Android
postmarketOS
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
no

The codename for the Wi-Fi version is B8000-F, and the 3G version is B8000-H. A similar device is the Lenovo YOGA Tablet 8 (B6000-F, B6000-H). The kernel source code for b8000 and b6000 is the same except for a few lines.

Probably the B8000 and B6000 can be implemented in a single package. ro.product.board contains the same prefix (codename?) blade. Therefore, if the postmarketOS port of the B8000 can work on the B6000, the codename may be changed to lenovo-blade.

B8000-F : blade10_row_wifi, B6000-H : blade8_row_3gdata, A3000-H : a3000_row_call, B8080-H : MSM8226

SoC

MT8125/MT8389 is almost the same as the MT6589. The Wi-Fi version is equipped with the MT8125, while the 3G version is equipped with the MT8389. The kernel source code for MT8125/MT8389 is the same as that of MT6589.

Contributors

  • akku

Users owning this device

  • Akku (Notes: Wi-Fi version (B8000-F), WIP)


How to enter flash mode

Power + Volume Down + Volume Up -> Select Fastboot


Installation

Using pmbootstrap

Work in progress.

Kernel

The official source code ( JellyBean KitKat Raw archive ) is so dirty, broken, and didn't boot after building, so the mainline is the target. You can find out about porting status here.

U-Boot

Boots. But the port is incomplete. You can check the progress of the port here.

Development is stopped until the kernel exceeds the size of the boot partition.

Device Data

Memory Map

(KitKat, b8000 Wi-Fi)

# cat /proc/iomem
11006000-110060ff : mtk-uart.0
11007000-110070ff : mtk-uart.1
11008000-110080ff : mtk-uart.2
11009000-110090ff : mtk-uart.3
1100d000-1100d070 : mt-i2c.0
  1100d000-1100d070 : mt-i2c
1100e000-1100e070 : mt-i2c.1
  1100e000-1100e070 : mt-i2c
1100f000-1100f070 : mt-i2c.2
  1100f000-1100f070 : mt-i2c
11010000-11010070 : mt-i2c.3
  11010000-11010070 : mt-i2c
11011000-11011070 : mt-i2c.4
  11011000-11011070 : mt-i2c
11012000-11012070 : mt-i2c.5
  11012000-11012070 : mt-i2c
11013000-11013070 : mt-i2c.6
  11013000-11013070 : mt-i2c
11016000-11016028 : mt-spi.0
  11016000-11016028 : mt-spi
11230000-11230108 : mtk-msdc.0
  11230000-11230108 : mtk-msdc
11240000-11240108 : mtk-msdc.1
  11240000-11240108 : mtk-msdc
11260000-11260108 : mtk-msdc.3
  11260000-11260108 : mtk-msdc
15000000-1500e000 : camera-isp.0
  15000000-1500e000 : camera-isp
80000000-bf5fffff : System RAM
  80008000-8090bfff : Kernel code
  80942000-80c2b52f : Kernel data
bf600000-bfffffff : mtkfb.0

(b6000 3g [1])

root@B6000:/ # cat /proc/iomem
11006000-110060ff : mtk-uart.0
11007000-110070ff : mtk-uart.1
11008000-110080ff : mtk-uart.2
11009000-110090ff : mtk-uart.3
1100d000-1100d070 : mt-i2c.0
1100d000-1100d070 : mt-i2c
1100e000-1100e070 : mt-i2c.1
1100e000-1100e070 : mt-i2c
1100f000-1100f070 : mt-i2c.2
1100f000-1100f070 : mt-i2c
11010000-11010070 : mt-i2c.3
11010000-11010070 : mt-i2c
11011000-11011070 : mt-i2c.4
11011000-11011070 : mt-i2c
11012000-11012070 : mt-i2c.5
11012000-11012070 : mt-i2c
11013000-11013070 : mt-i2c.6
11013000-11013070 : mt-i2c
11016000-11016028 : mt-spi.0
11016000-11016028 : mt-spi
11230000-11230108 : mtk-msdc.0
11230000-11230108 : mtk-msdc
11240000-11240108 : mtk-msdc.1
11240000-11240108 : mtk-msdc
11260000-11260108 : mtk-msdc.3
11260000-11260108 : mtk-msdc
15000000-1500e000 : camera-isp.0
15000000-1500e000 : camera-isp
80000000-bbffffff : System RAM
80008000-80930fff : Kernel code
8096a000-80c5b12f : Kernel data
bd800000-bf5fffff : System RAM
bf600000-bfffffff : mtkfb.0

mediatek/platform/mt6589/kernel/core/Makefile.boot

   zreladdr-y	:= 0x80008000
params_phys-y	:= 0x80000100
initrd_phys-y	:= 0x82600000

Bootloader data

$ fastboot getvar all
(bootloader) 	partition-size:userdata: 32000000
(bootloader) 	partition-type:userdata: ext4
(bootloader) 	partition-size:cache: 7e00000
(bootloader) 	partition-type:cache: ext4
(bootloader) 	partition-size:system: 40000000
(bootloader) 	partition-type:system: ext4
(bootloader) 	partition-size:fac: c800000
(bootloader) 	partition-type:fac: ext4
(bootloader) 	partition-size:expdb: a00000
(bootloader) 	partition-type:expdb: raw data
(bootloader) 	partition-size:ebr2: 80000
(bootloader) 	partition-type:ebr2: raw data
(bootloader) 	partition-size:logo: 300000
(bootloader) 	partition-type:logo: raw data
(bootloader) 	partition-size:misc: 80000
(bootloader) 	partition-type:misc: raw data
(bootloader) 	partition-size:sec_ro: 600000
(bootloader) 	partition-type:sec_ro: ext4
(bootloader) 	partition-size:recovery: 600000
(bootloader) 	partition-type:recovery: raw data
(bootloader) 	partition-size:boot: 600000
(bootloader) 	partition-type:boot: raw data
(bootloader) 	partition-size:uboot: 60000
(bootloader) 	partition-type:uboot: raw data
(bootloader) 	partition-size:seccfg: 20000
(bootloader) 	partition-type:seccfg: raw data
(bootloader) 	partition-size:protect_s: a00000
(bootloader) 	partition-type:protect_s: ext4
(bootloader) 	partition-size:protect_f: a00000
(bootloader) 	partition-type:protect_f: ext4
(bootloader) 	partition-size:nvram: 500000
(bootloader) 	partition-type:nvram: raw data
(bootloader) 	partition-size:pro_info: 300000
(bootloader) 	partition-type:pro_info: raw data
(bootloader) 	partition-size:pmt: 400000
(bootloader) 	partition-type:pmt: raw data
(bootloader) 	partition-size:ebr1: 80000
(bootloader) 	partition-type:ebr1: raw data
(bootloader) 	partition-size:mbr: 80000
(bootloader) 	partition-type:mbr: raw data
(bootloader) 	partition-size:preloader: 600000
(bootloader) 	partition-type:preloader: raw data
(bootloader) 	kernel: lk
(bootloader) 	product: BLADE10_ROW_WIFI
(bootloader) 	version: 0.5
all: Done!!
Finished. Total time: 0.004s

See also

Official product page: https://pcsupport.lenovo.com/us/en/products/tablets/yoga-series/yoga-tablet-10-b8000/z0al

Official disassembly guide: https://download.lenovo.com/consumer/mobiles_pub/yoga_tablet_8-10_hmm_en_20130916.pdf

Official spec sheet: https://support.lenovo.com/us/en/solutions/pd104151-overview-for-yoga-tablet-10-b8000

GSMArena.com: https://www.gsmarena.com/lenovo_yoga_tablet_10-5836.php

Kernel Mainlining: https://github.com/TeamYogaBlade2/linux/tree/blade10/

Unofficial TWRP: https://archive.org/details/b8000-f_twrp