f1c200s Tina分区烧录报烧写MBR失败,有没有大佬帮忙看看!!
-
烧写时无法选择全盘擦除升级(好像是这个芯片就是这样的),所以只能选择分区擦除。然后烧入失败。
小机端打印log如下:[23]init dram ok U-Boot 2014.07 (Jul 31 2018 - 14:59:19) Allwinner Technology uboot commit : 6604446f7bddb8fe53f2b993100929f92a5f4d6e i2c_init: by cpux [I2C-DEBUG]:i2c_set_clock() 354 [I2C-ERROR]:twi_send_clk_9pulse() 136 SDA is still Stuck Low, failed. i2c_init ok [2.935]pmbus: ready axp: get node[/soc/pmu0] error axp_probe error [2.941]PMU: cpux 408 Mhz,AXI=408 Mhz PLL6=600 Mhz,AHB1=200 Mhz, APB1=100Mhz DRAM: 32 MiB [2.950]fdt addr: 0x809e7920 [2.953]gd->fdt_size: 0xc2a0 Relocation Offset is: 01524000 axp: get node[/soc/pmu0] error int sunxi_dma_init--- irq enable [3.022]flash init start workmode = 16,storage type = 3 try card 1 [3.028][mmc]: mmc driver ver 2018-6-1 17:39:00 SUNXI SD/MMC: 1 [3.046][mmc]: ************Try SD card 1************ [mmc]: mmc 1 cmd 8 timeout, err 100 [mmc]: smc 1 err, cmd 8, RTO [mmc]: mmc 1 close bus gating and reset [mmc]: mmc 1 mmc cmd 8 err 0x00000100 [3.064][mmc]: mmc send if cond failed [mmc]: mmc 1 cmd 55 timeout, err 100 [mmc]: smc 1 err, cmd 55, RTO [mmc]: mmc 1 close bus gating and reset [mmc]: mmc 1 mmc cmd 55 err 0x00000100 [3.081][mmc]: send app cmd failed [3.084][mmc]: ************Try MMC card 1************ [mmc]: mmc 1 cmd 1 timeout, err 100 [mmc]: smc 1 err, cmd 1, RTO [mmc]: mmc 1 close bus gating and reset [mmc]: mmc 1 mmc cmd 1 err 0x00000100 [3.106][mmc]: read op condition failed [3.109][mmc]: mmc send op cond failed Card did not respond to voltage select! [3.116][mmc]: ************SD/MMC 1 init error!!!************ [3.122][mmc]: mmc_init_boot: mmc int fail [3.126][mmc]: mmc_init: mmc init fail, err -17 MMC init failed try emmc fail [3.133]NAND_UbootProbe start... [3.136]NB1 : enter phy init [3.138]nand_physic_init [3.142]nand0: get node offset error [3.145]init nctri NAND PIORequest error! [3.149]nand_physic_init, init nctri error [3.153]nand_physic_init init_parameter error [3.157]nand_physic_init error -1 [3.160]SpiNandHwInit: Start Nand Hardware initializing Jun 9 2018 19:05:34..... [3.167]uboot: nand version: 3 6008 20180610 1300 [3.184]request spi gpio ok! int sunxi_dma_init--- irq enable [3.190]uboot nand_request_tx_dma: reqest genernal dma for nand success, 0x81db8c7c [3.197]request general tx dma channel ok! [3.201]uboot nand_request_tx_dma: reqest genernal dma for nand success, 0x81db8c9c [3.208]request general rx dma channel ok! [3.212]SPI nand ID: 20c21720 1720c217 [3.215]_SearchNandArchi fail [3.218][ERR]SpiNandHwInit: SCN_AnalyzeNandSystem() failed! [3.223]SpiNandHwInit: End Nand Hardware initializing ..... FAIL! [3.229]NB1 : nand phy init fail [3.232]NB1 : enter phy Exit nand release dma:81db8c7c nand release dma:0 sunxi dma exit [3.240]NAND_UbootProbe end: 0xffffffff try nand fail flash size =0x8000 sectors sunxi spinor is initing...int sunxi_dma_init--- irq enable sunxi_dma_install_int ok sunxi_dma_install_int ok OK spinor id:0x1720c2 spi_freq = 40000000 spinor id is 1720c2 try nor successed read mbr copy[0] failed read mbr copy[1] failed read mbr copy[2] failed read mbr copy[3] failed [3.274]flash init end [3.276]try to burn key [3.280]inter uboot shell Hit any key to stop autoboot: 0 work mode=0x10 run usb efex delay time 2500 sunxi_dma_install_int ok usb init ok set address 0xd SUNXI_EFEX_ERASE_TAG erase_flag = 0x1 FEX_CMD_fes_verify_status FEX_CMD_fes_verify last err=0
sys_confog.fex文件配置如下:
#kernel command arguments enforcing=1 #earlyprintk=sunxi-uart,0x01c25000 earlyprintk=sunxi-uart,0x01C25800 initcall_debug=1 #console=ttyS1,115200 console=ttyS3,115200 nor_root=/dev/mtdblock4 nand_root=/dev/nandd mmc_root=/dev/mmcblk0p7 init=/sbin/init rdinit=/rdinit loglevel=8 cma=32M verify=no rootdelay=5 #set kernel cmdline if boot.img or recovery.img has no cmdline we will use this setargs_nor=setenv bootargs enforcing=${enforcing} earlyprintk=${earlyprintk} initcall_debug=${initcall_debug} console=${console} loglevel=${loglevel} root=${nor_root} init=${init} rdinit=${rdinit} partitions=${partitions} cma=${cma} setargs_nand=setenv bootargs enforcing=${enforcing} earlyprintk=${earlyprintk} initcall_debug=${initcall_debug} console=${console} loglevel=${loglevel} root=${nand_root} init=${init} rdinit=${rdinit} partitions=${partitions} cma=${cma} setargs_mmc=setenv bootargs enforcing=${enforcing} earlyprintk=${earlyprintk} initcall_debug=${initcall_debug} console=${console} loglevel=${loglevel} root=${mmc_root} init=${init} rdinit=${rdinit} partitions=${partitions} cma=${cma} rootdelay=${rootdelay} #uImage/fat32 addr:0x80007fc0 = 0x80008000(kernel entry) - 0x40(uImage header Bytes) #boot_normal=fatload sunxi_flash boot 80007fc0 uImage;bootm 80007fc0 #boot_recovery=fatload sunxi_flash recovery 80007fc0 uImage;bootm 80007fc0 #boot.img/fat32 addr:0x80007800 = 0x80008000(kernel entry) - 0x200(boot.img header Bytes) #boot_normal=fatload sunxi_flash boot 80007800 boot.img;boota 80007800 boot #boot_recovery=fatload sunxi_flash recovery 80007800 boot.img;boota 80007800 recovery #uImage/raw boot_normal=sunxi_flash read 80007fc0 boot;bootm 80007fc0 boot_recovery=sunxi_flash read 80007fc0 recovery;bootm 80007fc0 #boot.img/raw same as sunxi-dev #boot_normal=sunxi_flash read 45000000 boot;boota 45000000 boot #boot_recovery=sunxi_flash read 45000000 recovery;boota 45000000 recovery boot_fastboot=fastboot #recovery key recovery_key_value_max=0x13 recovery_key_value_min=0x10 #fastboot key fastboot_key_value_max=0x8 fastboot_key_value_min=0x2 #uboot system env config bootdelay=0 #default bootcmd, will change at runtime according to key press bootcmd=run setargs_nand boot_normal#default nand boot
env-3.10.cfg配置如下:
#kernel command arguments enforcing=1 #earlyprintk=sunxi-uart,0x01c25000 earlyprintk=sunxi-uart,0x01C25800 initcall_debug=1 #console=ttyS1,115200 console=ttyS3,115200 nor_root=/dev/mtdblock4 nand_root=/dev/nandd mmc_root=/dev/mmcblk0p7 init=/sbin/init rdinit=/rdinit loglevel=8 cma=32M verify=no rootdelay=5 #set kernel cmdline if boot.img or recovery.img has no cmdline we will use this setargs_nor=setenv bootargs enforcing=${enforcing} earlyprintk=${earlyprintk} initcall_debug=${initcall_debug} console=${console} loglevel=${loglevel} root=${nor_root} init=${init} rdinit=${rdinit} partitions=${partitions} cma=${cma} setargs_nand=setenv bootargs enforcing=${enforcing} earlyprintk=${earlyprintk} initcall_debug=${initcall_debug} console=${console} loglevel=${loglevel} root=${nand_root} init=${init} rdinit=${rdinit} partitions=${partitions} cma=${cma} setargs_mmc=setenv bootargs enforcing=${enforcing} earlyprintk=${earlyprintk} initcall_debug=${initcall_debug} console=${console} loglevel=${loglevel} root=${mmc_root} init=${init} rdinit=${rdinit} partitions=${partitions} cma=${cma} rootdelay=${rootdelay} #uImage/fat32 addr:0x80007fc0 = 0x80008000(kernel entry) - 0x40(uImage header Bytes) #boot_normal=fatload sunxi_flash boot 80007fc0 uImage;bootm 80007fc0 #boot_recovery=fatload sunxi_flash recovery 80007fc0 uImage;bootm 80007fc0 #boot.img/fat32 addr:0x80007800 = 0x80008000(kernel entry) - 0x200(boot.img header Bytes) #boot_normal=fatload sunxi_flash boot 80007800 boot.img;boota 80007800 boot #boot_recovery=fatload sunxi_flash recovery 80007800 boot.img;boota 80007800 recovery #uImage/raw boot_normal=sunxi_flash read 80007fc0 boot;bootm 80007fc0 boot_recovery=sunxi_flash read 80007fc0 recovery;bootm 80007fc0 #boot.img/raw same as sunxi-dev #boot_normal=sunxi_flash read 45000000 boot;boota 45000000 boot #boot_recovery=sunxi_flash read 45000000 recovery;boota 45000000 recovery boot_fastboot=fastboot #recovery key recovery_key_value_max=0x13 recovery_key_value_min=0x10 #fastboot key fastboot_key_value_max=0x8 fastboot_key_value_min=0x2 #uboot system env config bootdelay=0 #default bootcmd, will change at runtime according to key press bootcmd=run setargs_nand boot_normal#default nand boot
相关分区配置文件如下:
sys_partition.fex
;--------------------------------------------------------------------------------------------------------- ; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串 ;--------------------------------------------------------------------------------------------------------- ;-------------------------------------------------------------------------------------------------- ; 固件下载参数配置 ;-------------------------------------------------------------------------------------------------- ;**************************************************** ; mbr的大小, 以Kbyte为单位 ;**************************************************** [mbr] size = 4096 ;******************************************************************************************************** ; 分区配置 ; ; ; partition 定义范例: ; [partition] ; //表示是一个分区 ; name = USERFS2 ; //分区名称 ; size = 16384 ; //分区大小 单位: 扇区.分区表示个数最多2^31 * 512 = 2T ; downloadfile = "123.fex" ; //下载文件的路径和名称,可以使用相对路径,相对是指相对于image.cfg文件所在分区。也可以使用绝对路径 ; keydata = 1 ; //私有数据分区,重新量产数据将不丢失 ; encrypt = 1 ; //采用加密方式烧录,将提供数据加密,但损失烧录速度 ; user_type = ? ; //私有用法 ; verify = 1 ; //要求量产完成后校验是否正确 ; ; 注:1、name唯一, 不允许同名 ; 2、name最大12个字符 ; 3、size = 0, 将创建一个无大小的空分区 ; 4、为了安全和效率考虑,分区大小最好保证为16M字节的整数倍 ;******************************************************************************************************** [partition_start] [partition] name = bootlogo size = 1024 downloadfile = "bootlogo.fex" user_type = 0x8000 [partition] name = env size = 512 downloadfile = "env.fex" user_type = 0x8000 [partition] name = boot ;size = 4096 size = 12288 downloadfile = "boot.fex" user_type = 0x8000 [partition] name = rootfs size = 51200 downloadfile = "rootfs.fex" user_type = 0x8000 [partition] name = rootfs_data size = 51200 user_type = 0x8000 ;[partition] ; name = extend ; size = 8192 ; downloadfile = "usr.fex" ; user_type = 0x8000 [partition] name = misc size = 512 user_type = 0x8000 [partition] name = private size = 512 user_type = 0x8000 [partition] name = UDISK user_type = 0x8100
sys_partition_nor.fex
;--------------------------------------------------------------------------------------------------------- ; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串 ;--------------------------------------------------------------------------------------------------------- ;-------------------------------------------------------------------------------------------------- ; 固件下载参数配置 ;-------------------------------------------------------------------------------------------------- ;**************************************************** ; mbr的大小, 以Kbyte为单位 ;**************************************************** [mbr] size = 16 ;******************************************************************************************************** ; 分区配置 ; ; ; partition 定义范例: ; [partition] ; //表示是一个分区 ; name = USERFS2 ; //分区名称 ; size = 16384 ; //分区大小 单位: 扇区.分区表示个数最多2^31 * 512 = 2T ; downloadfile = "123.fex" ; //下载文件的路径和名称,可以使用相对路径,相对是指相对于image.cfg文件所在分区。也可以使用绝对路径 ; keydata = 1 ; //私有数据分区,重新量产数据将不丢失 ; encrypt = 1 ; //采用加密方式烧录,将提供数据加密,但损失烧录速度 ; user_type = ? ; //私有用法 ; verify = 1 ; //要求量产完成后校验是否正确 ; ; 注:1、name唯一, 不允许同名 ; 2、name最大12个字符 ; 3、size = 0, 将创建一个无大小的空分区 ; 4、为了安全和效率考虑,分区大小最好保证为16M字节的整数倍 ;******************************************************************************************************** [partition_start] [partition] name = bootlogo size = 1024 downloadfile = "bootlogo.fex" user_type = 0x8000 [partition] name = env size = 256 downloadfile = "env.fex" user_type = 0x8000 [partition] name = boot size = 5120 downloadfile = "boot.fex" user_type = 0x8000 [partition] name = rootfs ;size = 1024 size = 11520 downloadfile = "rootfs.fex" user_type = 0x8000 [partition] name = rootfs_data size = 1024 user_type = 0x8000 ;[partition] ; name = extend ; size = 8192 ; downloadfile = "usr.fex" ; user_type = 0x8000 [partition] name = misc size = 128 user_type = 0x8000 [partition] name = private size = 128 user_type = 0x8000 [partition] name = UDISK user_type = 0x8100
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号