KTC msd6a358m2c1 (ktc-msd6a358m2c1)
| This device is marked as not booting. Status: there are no downstream kernel source for the soc but fortunately there are downstream kernel for newer soc and those kernel contain some code that for supporting the soc,However it seem those code is a leftover from the older downstream kernel hence that part wont compile with other part that is in the kernel.However there are some attempting to make a compilable kernel by gluing different pieces of old downstream kernel and new downstream kernel.There are also some attempting for porting mainline as well.Sadly none of the attempt worked therefore it is stuck with the pre build kernel from android. |
|
pmos booted withe the pre build kernel | |
| Manufacturer | KTC |
|---|---|
| Name | msd6a358m2c1 |
| Codename | ktc-msd6a358m2c1 |
| Released | 201X |
| Type | tv |
| Hardware | |
| Chipset | Mstar msd6a358 |
| CPU | 4x Cortex-A35 1.5GHZ |
| GPU | Mali-400MP2 |
| Display | 1366x768 |
| Memory | 1 GB |
| Architecture | aarch64 |
| Software | |
Original software The software and version the device was shipped with. |
Android 6.0 |
Extended version The most recent supported version from the manufacturer. |
Android |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
no |
Who made it?
It is unknown who made it.However there are a ton of reference to ktc in the os (the name of ktc appeared in many preinstalled app's package name) thus it assumed ktc is the maker the tv.
What is this
This tv is a white-label product tv from china and it has been sold with many different names/variants and they are all share the same board.
Known Variant
This TV is also known as Philips 32PHF5664,TOPCONPro 24SM2,PEL 32P008,PEL 32P008,PEL 32PF008,Kiowa 40S-K1
TOPCONPro 24SM2
It use V236BJ1-P01 panel.
Identify the tv
| WARNING: High Voltage! |
Open it up and you should see the a board look like that.
There are label on the pcb said msd6a358m2c1.
Hidden Menu
There are three hidden app which some contain hidden menu . One of the app is called Factory Menu (Package Name : mstar.factorymenu.ui). The second one is called Factory Menu_MDA6A358_DTMB (Package Name : ktc.factorymenu.ui).The third one is called Softinfo Menu (Package Name : ktc.softmenu.ui).It is possible to open those hidden menu by opening those app's activity by using app like App Manager.
adb
It seem ktc has been locked down the adb so persist.sys.ktc.adb.enable need to be setted to 1 in order to get adb to work.
root
In the case of the firmware that User:exkc had , the su command is pre-installed.It would ask for password if it is run in some android terminal app.Howerver it didnt ask for password if it is running in adb shell user (the user shell).
Uart


Depend on the default behavior on your firmware , u-boot and android would only showed some early booting log of them due to the uart always get turning off once the uboot or android is booted (the uart got turned off twice).
It is possible to make uboot stop turning off the uart by using it's hidden memu thereby the uboot shell become accessible.
However the android would still turn off the uart after it has booted .It is posiable to make android stop turning off uart by setting UARTAndroidDebug uboot environment valuable to on thereby the android's shell become accessible (the shell is running as shell user).
Partition
| It don't use standard dos/gpt partition in the emmc. |
| The boot image that inside boot/recovery partition isnt android boot image it is actually uImage |
shell@topconpro:/ # ls /dev/block/platform/mstar_mci.0/by-name/ -al lrwxrwxrwx root root 2007-01-01 20:00 MBOOT -> /dev/block/mmcblk0p1 lrwxrwxrwx root root 2007-01-01 20:00 MPOOL -> /dev/block/mmcblk0p2 lrwxrwxrwx root root 2007-01-01 20:00 RTPM -> /dev/block/mmcblk0p8 lrwxrwxrwx root root 2007-01-01 20:00 armfw -> /dev/block/mmcblk0p7 lrwxrwxrwx root root 2007-01-01 20:00 boot -> /dev/block/mmcblk0p5 lrwxrwxrwx root root 2007-01-01 20:00 cache -> /dev/block/mmcblk0p12 lrwxrwxrwx root root 2007-01-01 20:00 dtb -> /dev/block/mmcblk0p9 lrwxrwxrwx root root 2007-01-01 20:00 misc -> /dev/block/mmcblk0p3 lrwxrwxrwx root root 2007-01-01 20:00 optee -> /dev/block/mmcblk0p6 lrwxrwxrwx root root 2007-01-01 20:00 recovery -> /dev/block/mmcblk0p4 lrwxrwxrwx root root 2007-01-01 20:00 system -> /dev/block/mmcblk0p10 lrwxrwxrwx root root 2007-01-01 20:00 tvcertificate -> /dev/block/mmcblk0p17 lrwxrwxrwx root root 2007-01-01 20:00 tvconfig -> /dev/block/mmcblk0p14 lrwxrwxrwx root root 2007-01-01 20:00 tvcustomer -> /dev/block/mmcblk0p16 lrwxrwxrwx root root 2007-01-01 20:00 tvdatabase -> /dev/block/mmcblk0p15 lrwxrwxrwx root root 2007-01-01 20:00 tvservice -> /dev/block/mmcblk0p13 lrwxrwxrwx root root 2007-01-01 20:00 userdata -> /dev/block/mmcblk0p11
Booting
The stock uboot wont boot 64bit uImage due to the uboot is likely 32bit.However it can boot 64bit kernel that is packaged in 32bit uImage due to some assembly that for flipping the soc to 64bit is being hardcoded in the bootm command.Unfortunately pmos dont support packing 64bit kernel into 32bit uImage therefore the uImage need to created manually or set arch to armv7 in deviceinfo.
Running these commands in uboot to boot pmOS from usb:
<< MStar >># usb start 2 # start usb on usb port 2 (If you plug the usb in different port then you will need to change it) << MStar >># setenv no_compare_kernel_lx 1 # not sure what it do but u-boot nagged about it when it is not being setted << MStar >># fatload usb 0 0x24D00000 uimage << MStar >># fatload usb 0 0x258D6574 uinitrd << MStar >># mmc read.p 0x23000000 dtb 0x00100000 # load the dtb from emmc (it could be loaded from usb as well but in [[User:exkc]] case it is being loaded from emmc) << MStar >># bootm 0x24D00000 0x258D6574 0x23000000
See Also
- Stock rom for pel rebranded version (pay to download)
- Stock rom for kiowa rebranded version (might be to pay to download)
- Info on the uboot fork command
Contributors
Users owning this device
- Exkc (Notes: TOPCONPro 24SM2 (Android died due to the custom partition tool messed up the fw partition that i didnt touch hence the emmc is just boot fw and swap for pmos))