Hi all, and thanks you all so much for sharing time, effort and knowledge about this boxes. I'm reading this forum a lot and also learned from advanced users. Me only start to play around, doing some test with trial and mostly errors!
First all, I'm not sure if this goes here, please move it if necessary.
This box come with a S905X2 SoC, and while working fine with an ATV12, I think I brick it and I only partially can boot from SD-Card burned with a full image I take with an Armbian version (SD-Card), doing dding of their eMMC.
So the first I notice is that in UART console first line I see is hex character in a loop, I don't see normal and reading chars while telling You the board are in MaskROM mode, right? I can run Armbian via run recovery_from_udisk, but was not able to see their eMMC at all.
I want to share with You the full UART log I get when turn it on:
<FE>L<A8><FF><FC><FF><F3><FB><FE><FC><FE><FE><FD>
bl2_stage_init 0x01
bl2_stage_init 0x81
hw id: 0x0000 - pwm id 0x01
bl2_stage_init 0xc1
bl2_stage_init 0x02
no sdio debug board detected
L0:0000037f
L1:00000701
L2:00008067
L3:04000000
S1:00000000
B2:00032060
B1:f2f939b2
TE: 2817112
BL2 Built : 14:43:12, Jun 17 2020. g12a g5b1c0d3 - shen.liu@droid11-sz
Board ID = 1
Set cpu clk to 24M
Set clk81 to 24M
CPU clk: 1200 MHz
Set clk81 to 166.6M
OTP_ARB=00000001
DDR driver_vesion: LPDDR4_PHY_V_0_1_21 build time: Jun 17 2020 14:43:08
board id: 1
Load FIP HDR from SD, src: 0x00010200, des: 0xfffd0000, size: 0x00004000, part: 0
Get wrong ddr fw magic! Error!!
fw parse done
Load ddrfw from SD, src: 0x00060200, des: 0xfffd0000, size: 0x0000c000, part: 0
Load ddrfw from SD, src: 0x00038200, des: 0xfffd0000, size: 0x00004000, part: 0
PIEI prepare done
fastboot data verify
result: 255
Cfg max: 12, cur: 1. Board id: 255. Force loop cfg
DDR4 probe
ddr clk to 1176MHz
Load ddrfw from SD, src: 0x00014200, des: 0xfffd0000, size: 0x0000c000, part: 0
dmc_version 0000
Check phy result
INFO : End of initialization
INFO : End of read enable training
INFO : End of fine write leveling
INFO : End of read dq deskew training
INFO : End of MPR read delay center optimization
INFO : End of Write leveling coarse delay
INFO : End of write delay center optimization
INFO : End of read delay center optimization
INFO : End of max read latency training
INFO : Training has run successfully!
1D training succeed
Load ddrfw from SD, src: 0x00020200, des: 0xfffd0000, size: 0x0000c000, part: 0
Check phy result
INFO : End of initialization
INFO : End of 2D read delay Voltage center optimization
INFO : End of 2D write delay Voltage center optimization
INFO : Training has run successfully!
soc_vref_reg_value 0x 00000034 0000002f 00000034 00000033 0000002f 00000033 00000031 00000031 00000037 00000032 00000033 00000034 00000032 00000035 00000030 00000030 0000002c 0000002f 00000031 00000031 00000035 00000030 00000031 00000032 0000002f 0000002d 0000002d 0000002d 0000002f 0000002e 00000030 00000033 dwc_ddrphy_apb_wr((0<<20)|(2<<16)|(0<<12)|(0xb0):0001
dram_vref_reg_value 0x 00000013
2D training succeed
aml_ddr_fw_vesion: LPDDR4_PHY_V_0_1_21 build time: Nov 19 2019 17:21:16
auto size-- 65535DDR cs0 size: 2048MB
DDR cs1 size: 0MB
DMC_DDR_CTRL: 0050002cDDR size: 2048MB
cs0 DataBus test pass
cs0 AddrBus test pass
non-sec scramble use zero key
ddr scramble enabled
100bdlr_step_size ps== 447
result report
boot times 0Enable ddr reg access
Load FIP HDR from SD, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 0
Load BL3X from SD, src: 0x0006c200, des: 0x0175c000, size: 0x00124000, part: 0
bl2z: ptr: 0512a330, size: 00001e40
0.0;0.0;M3 CHK:0;cm4_sp_mode 0
MVN_1=0x00000000
MVN_2=0x00000000
[Image: g12a_v1.1.3382-173caa3 2019-09-26 18:26:21 luan.yuan@droid15-sz]
OPS=0x40
ring efuse init
28 0c 40 00 01 39 16 00 00 08 33 36 42 48 33 50
[0.053419 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE: BL31: v1.3(release):f941450
NOTICE: BL31: Built : 20:39:13, Sep 24 2019
NOTICE: BL31: G12A secure boot!
NOTICE: BL31: BL33 decompress pass
INFO: BL3-2: ATOS-V2.4.2-36-g1b730d08 #1 Wed Feb 5 17:47:09 2020 +0800 arm
INFO: BL3-2: Chip: G12A Rev: C (28:C - 40:2)
INFO: BL3-2: crypto engine DMA
INFO: BL3-2: secure time TEE
INFO: BL3-2: CONFIG_DEVICE_SECURE 0xb200000e
U-Boot 2015.01-g5316a3ec07 (Dec 29 2021 - 10:53:50)
DRAM: 2 GiB
Relocation Offset is: 76e2b000
spi_post_bind(spifc): req_seq = 0
register usb cfg[0][1] = 0000000077f37c68
NAND: get_sys_clk_rate_mtd() 270, clock setting 200!
couldn`t found selected chip: 0 ready
NAND device id: 0 0 0 0 0 0
No NAND device found!!!
nand init failed: -6
get_sys_clk_rate_mtd() 270, clock setting 200!
couldn`t found selected chip: 0 ready
NAND device id: 0 0 0 0 0 0
No NAND device found!!!
nand init failed: -6
MMC: aml_priv->desc_buf = 0x0000000073e1b710
aml_priv->desc_buf = 0x0000000073e1da50
SDIO Port B: 0, SDIO Port C: 1
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
MMC init failed
Using default environment
In: serial
Out: serial
Err: serial
reboot_mode=cold_boot
gpio: pin GPIOH_8 (gpio 39) value is 0
gpio: pin GPIOH_5 (gpio 36) value is 0
gpio: pin GPIOA_14 (gpio 78) value is 0
gpio: pin GPIOA_14 (gpio 78) value is 1
[store]To run cmd[emmc dtb_read 0x1000000 0x40000]
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
_dtb_init()-3517: mmc init failed
[store]decrypt dtb: Sig Check -2
[KM]Error:f[keymanage_dts_parse]L287:not a fdt at 0x0000000001000000
vpu: error: vpu: check dts: FDT_ERR_BADMAGIC, load default parameters
vpu: clk_level = 7
vpu: vpu_power_on
vpu: set clk: 666667000Hz, readback: 666666667Hz(0x100)
vpu: vpu_module_init_config
vpp: vpp_init
vpp: vpp osd2 matrix rgb2yuv..............
hdr_func 4, hdr_process_select 0x1
hdr_func 1, hdr_process_select 0x1
hdr_func 2, hdr_process_select 0x1
cvbs: cpuid:0x28
card in
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 40000000
init_part() 297: PART_TYPE_AML
[mmc_init] mmc init success
Device: SDIO Port B
Manufacturer ID: 2
OEM: 544d
Name: SA16G
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 14.6 GiB
mmc clock: 40000000
Bus Width: 4-bit
** Partition 1 not found on device 0 **
** Invalid partition 1 **
board_late_init boardtype: 0
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
aml_config_dtb 612
aml_config_dtb 642
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
Net: dwmac.ff3f0000[KM]Error:f[keymanage_dts_parse]L287:not a fdt at 0x0000000001000000
Error: eth_get_efuse_mac failed!!!
MACADDR:02:00:00:16:39:01(from chipid)
MACADDR:^B(from env)
CONFIG_AVB2: avb2
Start read misc partition datas!
Cannot find dev.
amlmmc cmd <NULL> failed
store - STORE sub-system
Usage:
store init flag
store read name addr off|partition size
read 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store write name addr off|partition size
write 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store rom_write add off size.
write uboot to the boot device
store erase boot/data:
erase the area which is uboot or data
store erase partition <partition_name>:
erase the area which partition in u-boot
store erase dtb
store erase key
store disprotect key
store rom_protect on/off
store scrub off|partition size
scrub the area from offset and size
store dtb iread/read/write addr <size>
read/write dtb, size is optional
store key read/write addr <size>
read/write key, size is optional
store ddr_parameter read/write addr <size>
read/write ddr parameter, size is optional
store mbr addr
update mbr/partition table by dtb
[burnup]Err:store_read_ops,L63:cmd failed, ret=1, [store read misc 0x73e1a090 0x0 0x820]
failed to store read misc.
info->magic =
info->version_major = 0
info->version_minor = 0
info->slots[0].priority = 0
info->slots[0].tries_remaining = 0
info->slots[0].successful_boot = 0
info->slots[1].priority = 0
info->slots[1].tries_remaining = 0
info->slots[1].successful_boot = 0
info->crc32 = 0
Magic is incorrect.
boot-info is invalid. Resetting.
save boot-info
info->magic =
info->version_major = 1
info->version_minor = 0
info->slots[0].priority = 15
info->slots[0].tries_remaining = 7
info->slots[0].successful_boot = 0
info->slots[1].priority = 14
info->slots[1].tries_remaining = 7
info->slots[1].successful_boot = 0
info->crc32 = -1075449479
Cannot find dev.
amlmmc cmd <NULL> failed
store - STORE sub-system
Usage:
store init flag
store read name addr off|partition size
read 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store write name addr off|partition size
write 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store rom_write add off size.
write uboot to the boot device
store erase boot/data:
erase the area which is uboot or data
store erase partition <partition_name>:
erase the area which partition in u-boot
store erase dtb
store erase key
store disprotect key
store rom_protect on/off
store scrub off|partition size
scrub the area from offset and size
store dtb iread/read/write addr <size>
read/write dtb, size is optional
store key read/write addr <size>
read/write key, size is optional
store ddr_parameter read/write addr <size>
read/write ddr parameter, size is optional
store mbr addr
update mbr/partition table by dtb
[burnup]Err:store_write_ops,L110:cmd [store write misc 0x73e1a090 0x0 0x820] failed active slot = 0
wipe_data=successful
wipe_cache=successful
upgrade_step=0
reboot_mode:::: cold_boot
[KM]Error:f[keymanage_dts_parse]L287:not a fdt at 0x0000000001000000
upgrade_step0=0
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
get_part_info_by_name()-1497: Got conf in virtual table
conf-mmc partition offset(0x739143159a4294f5)
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
addr notalign 9a4294f5 or byte count notalign 800
Init conf partition flash failed: -6
conf_fs_init return -6
do_sync_vout read conf item null
ztebsp init display outputmode=1080p60hz hdmimode=1080p60hz cvbsmode=576cvbs
hpd_state=0
do_hpd_detect: hdmimode=1080p60hz
do_hpd_detect: colorattribute=444,8bit
Saving Environment to aml-storage...
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
MMC init failed
no sink, fallback to 720p60hz[4]
hdr mode is 0
dv mode is ver:0 len: 0
hdr10+ mode is 0
read hdmichecksum 0x00000000, colorattribute 444,8bit
read hdmimode 1080p60hz, colorspace <NULL>, colordepth <NULL>
do_get_parse_edid: autoMode = false, manualMode=16
isYuv4kSink: false, maxTMDSRate=150
do_get_parse_edid: non-yuv4k sink: inColorSpace: HDMI_COLOR_FORMAT_RGB
do_get_parse_edid: default inColorDepth: HDMI_COLOR_DEPTH_24B
TV is same, initial mode is: 576cvbs attr: 444,8bit
[OSD]check dts: FDT_ERR_BADMAGIC, load default fb_addr parameters
[OSD]set initrd_high: 0x3d800000
[OSD]fb_addr for logo: 0x3d800000
[OSD]check dts: FDT_ERR_BADMAGIC, load default fb_addr parameters
[OSD]fb_addr for logo: 0x3d800000
[OSD]VPP_OFIFO_SIZE:0xfff01fff
[CANVAS]canvas init
[CANVAS]addr=0x3d800000 width=5760, height=2160
Cannot find dev.
amlmmc cmd <NULL> failed
store - STORE sub-system
Usage:
store init flag
store read name addr off|partition size
read 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store write name addr off|partition size
write 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store rom_write add off size.
write uboot to the boot device
store erase boot/data:
erase the area which is uboot or data
store erase partition <partition_name>:
erase the area which partition in u-boot
store erase dtb
store erase key
store disprotect key
store rom_protect on/off
store scrub off|partition size
scrub the area from offset and size
store dtb iread/read/write addr <size>
read/write dtb, size is optional
store key read/write addr <size>
read/write key, size is optional
store ddr_parameter read/write addr <size>
read/write ddr parameter, size is optional
store mbr addr
update mbr/partition table by dtb
[burnup]Err:store_read_ops,L63:cmd failed, ret=1, [store read logo 0x1080000 0x0 0x2000]
Err imgread(L523):Fail to read 0x2000B from part[logo] at offset 0
There is no valid bmp file at the given address
[OSD]osd_hw.free_dst_data: 0,719,0,575
[OSD]osd1_update_disp_freescale_enable
vpp: vpp_matrix_update: 2
no performance table
cvbs_config_hdmipll_g12a
cvbs_set_vid2_clk
vdac_enable: 1, module_sel:0x8
Unknown command 'dovi' - try 'help'
Unknown command 'dovi' - try 'help'
hdr_packet
vpp: hdr_policy = 0
vpp: Rx hdr_info.hdr_sup_eotf_smpte_st_2084 = 0
[KM]Error:f[keymanage_dts_parse]L287:not a fdt at 0x0000000001000000
gpio: pin GPIOAO_3 (gpio 3) value is 1
Command: bcb uboot-command
Start read misc partition datas!
Cannot find dev.
amlmmc cmd <NULL> failed
store - STORE sub-system
Usage:
store init flag
store read name addr off|partition size
read 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store write name addr off|partition size
write 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
store rom_write add off size.
write uboot to the boot device
store erase boot/data:
erase the area which is uboot or data
store erase partition <partition_name>:
erase the area which partition in u-boot
store erase dtb
store erase key
store disprotect key
store rom_protect on/off
store scrub off|partition size
scrub the area from offset and size
store dtb iread/read/write addr <size>
read/write dtb, size is optional
store key read/write addr <size>
read/write key, size is optional
store ddr_parameter read/write addr <size>
read/write ddr parameter, size is optional
store mbr addr
update mbr/partition table by dtb
[burnup]Err:store_read_ops,L63:cmd failed, ret=1, [store read misc 0x73e1a080 0x0 0x440]
failed to store read misc.
bcb - bcb
Usage:
bcb
This command will run some commands which saved in misc
partition by mark to decide whether execute command!
Command format:
bcb bcb_mark
Example:
/dev/block/misc partiton is saved some contents:
uboot-command
N/A
setenv aa 11;setenv bb 22;setenv cc 33;saveenv;
So you can execute command: bcb uboot-command
[KM]Error:f[keymanage_dts_parse]L287:not a fdt at 0x0000000001000000
ztebsp: bootcmd=bootsys
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
get_part_info_by_name()-1497: Got conf in virtual table
conf-mmc partition offset(0x739143159a4294f5)
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
addr notalign 9a4294f5 or byte count notalign 800
Init conf partition flash failed: -6
conf_fs_init return -6
can not read item from config fs
not found mac in efuse
ztebsp: ethaddr=00:15:18
Hit any key to stop autoboot: 0
ztebsp:boot_revision = V0001,10:53:51
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
get_part_info_by_name()-1497: Got conf in virtual table
conf-mmc partition offset(0x739143159a4294f5)
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
addr notalign 9a4294f5 or byte count notalign 800
Init conf partition flash failed: -6
conf_fs_init return -6
can not read item from config fs
env_mac: 00:15:18:01:81:31
ran_mac: 66:d8:95:01:65:d8
env_zte_dispmode: 720p
env_ethaddr: 66:d8:95:01:65:d8
boardtype: 0
vout: 576cvbs,enable
logo: osd0,loaded,0x3d800000,576cvbs
env_chipidenable: 1
chipid: 0000000000000000, ret=8
Saving Environment to aml-storage...
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
MMC init failed
bootmode:NORM
Cannot find dev.
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
get_part_info_by_name()-1497: Got conf in virtual table
conf-mmc partition offset(0x739143159a4294f5)
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
addr notalign 9a4294f5 or byte count notalign 800
Init conf partition flash failed: -6
conf_fs_init return -6
can not read item from config fs
not found mac in efuse
ztebsp: ethaddr=00:15:18
Hit any key to stop autoboot: 0
ztebsp:boot_revision = V0001,10:53:51
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
get_part_info_by_name()-1497: Got conf in virtual table
conf-mmc partition offset(0x739143159a4294f5)
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
addr notalign 9a4294f5 or byte count notalign 800
Init conf partition flash failed: -6
conf_fs_init return -6
can not read item from config fs
env_mac: 00:15:18:01:81:31
ran_mac: 66:d8:95:01:65:d8
env_zte_dispmode: 720p
env_ethaddr: 66:d8:95:01:65:d8
boardtype: 0
vout: 576cvbs,enable
logo: osd0,loaded,0x3d800000,576cvbs
env_chipidenable: 1
chipid: 0000000000000000, ret=8
Saving Environment to aml-storage...
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
co-phase 0x2, tx-dly 0, clock 400000
MMC init failed
bootmode:NORM
Cannot find dev.
boot system norm failed, try boot safe!
Cannot find dev.
g12a_u212_v1#
Let's see first line of hex char, then boot from SD. At last I get prompt as can be see it.
If not SD card when turn it on, the hex char get loop over and over, and connect to my linux box with a male-to-male USB A, I see this when reset:
g12a_u212_v1#reset
resetting ...
<FE>.<AA>
Only 2 hex chars and stop if I get USB cable connected while doing lsusb I see this:
Bus 001 Device 010: ID 1b8e:c003 Amlogic, Inc. GX-CHIP
If I'm not wrong it's MaskROM mode and it's detected by Amlogic Burning Tool (in Windows) also. But try to burn any, gets fails after erase flash.
Once again thanks you so much and my apology !
Take care!
Z80