T113-S3 SD卡启动问题
-
程序烧录到SPI-NAND中,不插SD卡时可以正常从nand启动,但是一插上SD卡就会重启,并从SD卡启动,现在想让他插着SD卡时也从SPI-NAND启动,应该修改哪里,有大佬知道么
-
@wjp2547532 什么板子?自制的还是开发板?
-
@whycanservice2 自制的。为什么插上SD卡就会重启呢?还有就是为什么我插上一张全新的SD卡然后上电,可以正常从spi-nand启动,SD卡也可以正常挂载;但是我插上另一张曾制作成量产卡或启动卡,但是又通过DiskGenius.exe这个工具格式化后的SD卡后上电,好像还是要从SD卡启动。难道是格式化的不完全么?下面是启动信息:
[141]HELLO! BOOT0 is starting! [143]BOOT0 commit : 88480af-dirty [147]set pll start [153]periph0 has been enabled [156]set pll end [157][pmu]: bus read error [160]board init ok [162]ZQ value = 0x2e [164]get_pmu_exist() = -1 [166]ddr_efuse_type: 0xa [169]trefi:7.8ms [171][AUTO DEBUG] single rank and full DQ! [175]ddr_efuse_type: 0xa [178]trefi:7.8ms [180][AUTO DEBUG] rank 0 row = 13 [183][AUTO DEBUG] rank 0 bank = 8 [186][AUTO DEBUG] rank 0 page size = 2 KB [190]DRAM BOOT DRIVE INFO: V0.33 [194]DRAM CLK = 936 MHz [196]DRAM Type = 3 (2:DDR2,3:DDR3) [199]DRAMC read ODT off. [202]DRAM ODT value: 0x42. [204]ddr_efuse_type: 0xa [207]DRAM SIZE =128 M [209]dram_tpr4:0x0 [211]PLL_DDR_CTRL_REG:0xf8004d00 [214]DRAM_CLK_REG:0xc0000000 [217][TIMING DEBUG] MR2= 0x20 [225]DRAM simple test OK. [227]rtc standby flag is 0x0, super standby flag is 0x0 [232]dram size =128 [235]card no is 0 [237]sdcard 0 line count 4 [239][mmc]: mmc driver ver 2021-05-21 14:47 [248][mmc]: Wrong media type 0x0 [251][mmc]: ***Try SD card 0*** [276][mmc]: HSSDR52/SDR25 4 bit [279][mmc]: 50000000 Hz [281][mmc]: 3781 MB [283][mmc]: ***SD/MMC 0 init OK!!!*** [369]Loading boot-pkg Succeed(index=0). [373]Entry_name = u-boot [379]Entry_name = optee [383]Entry_name = dtb [386]mmc not para [388]Jump to second Boot. M/TC: OP-TEE version: 6aef7bb2-dirty (gcc version 5.3.1 20160412 (Linaro GCC 5.3-2016.05)) #1 Fri Jul 23 09:25:11 UTC 2021 arm U-Boot 2018.07-ge987def-dirty (Jul 21 2023 - 11:08:46 +0800) Allwinner Technology [00.440]CPU: Allwinner Family [00.443]Model: sun8iw20 I2C: FDT ERROR:fdt_set_all_pin:[twi0]-->FDT_ERR_BADPATH FDT ERROR:fdt_set_all_pin:[twi1]-->FDT_ERR_BADPATH ready [00.464]optee version: major:3 minor:7 [00.468]DRAM: 128 MiB [00.471]Relocation Offset is: 04ecb000 [00.495]secure enable bit: 0 [00.498]smc_tee_inform_fdt failed with: ffff000a [00.503]CPU=1008 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=300Mhz [00.509]gic: sec monitor mode sunxi flash map init [00.514]flash init start [00.516]workmode = 17,storage type = 1 try card 2 set card number 2 get card number 2 [00.524][mmc]: mmc driver ver uboot2018:2021-12-20 13:35:00 [00.531][mmc]: Is not Boot mode! [00.533][mmc]: SUNXI SDMMC Controller Version:0x50310 [00.545][mmc]: ************Try SD card 2************ [00.550][mmc]: mmc 2 cmd timeout 100 status 100 [00.554][mmc]: smc 2 err, cmd 8, RTO [00.557][mmc]: mmc 2 close bus gating and reset [00.562][mmc]: mmc 2 cmd timeout 100 status 100 [00.566][mmc]: smc 2 err, cmd 55, RTO [00.570][mmc]: mmc 2 close bus gating and reset [00.574][mmc]: ************Try MMC card 2************ [00.583][mmc]: mmc 2 cmd timeout 100 status 100 [00.587][mmc]: smc 2 err, cmd 1, RTO [00.591][mmc]: mmc 2 close bus gating and reset [00.595][mmc]: Card did not respond to voltage select! [00.600][mmc]: ************SD/MMC 2 init error!************ [00.605][mmc]: mmc init product failed MMC init failed try emmc fail [00.612]sunxi-spinand: AW SPINand MTD Layer Version: 1.8 20220106 [00.617]sunxi-spinand-phy: AW SPINand Phy Layer Version: 1.11 20211217 [00.625]sunxi-spinand-phy: request spi0 gpio ok [00.629]sunxi-spinand-phy: request general tx dma channel ok! [00.635]sunxi-spinand-phy: request general rx dma channel ok! [00.640]sunxi-spinand-phy: set spic0 clk to 20 Mhz [00.645]sunxi-spinand-phy: init spic0 clk ok [00.649]sunxi-spinand-phy: detect munufacture from id table: Winbond [00.655]sunxi-spinand-phy: detect spinand id: ff21aaef ffffffff [00.660]sunxi-spinand-phy: ========== arch info ========== [00.666]sunxi-spinand-phy: Model: W25N01GVZEIG [00.671]sunxi-spinand-phy: Munufacture: Winbond [00.676]sunxi-spinand-phy: DieCntPerChip: 1 [00.680]sunxi-spinand-phy: BlkCntPerDie: 1024 [00.685]sunxi-spinand-phy: PageCntPerBlk: 64 [00.690]sunxi-spinand-phy: SectCntPerPage: 4 [00.694]sunxi-spinand-phy: OobSizePerPage: 64 [00.698]sunxi-spinand-phy: BadBlockFlag: 0x0 [00.703]sunxi-spinand-phy: OperationOpt: 0x7 [00.708]sunxi-spinand-phy: MaxEraseTimes: 65000 [00.712]sunxi-spinand-phy: EccFlag: 0x0 [00.717]sunxi-spinand-phy: EccType: 2 [00.721]sunxi-spinand-phy: EccProtectedType: 3 [00.726]sunxi-spinand-phy: ======================================== [00.732]sunxi-spinand-phy: [00.734]sunxi-spinand-phy: ========== physical info ========== [00.740]sunxi-spinand-phy: TotalSize: 128 M [00.744]sunxi-spinand-phy: SectorSize: 512 B [00.748]sunxi-spinand-phy: PageSize: 2 K [00.752]sunxi-spinand-phy: BlockSize: 128 K [00.756]sunxi-spinand-phy: OOBSize: 64 B [00.760]sunxi-spinand-phy: ======================================== [00.766]sunxi-spinand-phy: [00.769]sunxi-spinand-phy: ========== logical info ========== [00.774]sunxi-spinand-phy: TotalSize: 128 M [00.779]sunxi-spinand-phy: SectorSize: 512 B [00.783]sunxi-spinand-phy: PageSize: 4 K [00.787]sunxi-spinand-phy: BlockSize: 256 K [00.791]sunxi-spinand-phy: OOBSize: 128 B [00.795]sunxi-spinand-phy: ======================================== [00.801]sunxi-spinand-phy: set spic0 clk to 100 Mhz [00.806]sunxi-spinand-phy: block lock register: 0x00 [00.810]sunxi-spinand-phy: feature register: 0x19 [00.815]sunxi-spinand-phy: sunxi physic nand init end [00.820][mmc]: mmc driver ver uboot2018:2021-12-20 13:35:00 [00.825][mmc]: get sdc_type fail and use default host:tm1. [00.831][mmc]: can't find node "mmc0",will add new node [00.836][mmc]: fdt err returned <no error> [00.840][mmc]: Using default timing para [00.843][mmc]: SUNXI SDMMC Controller Version:0x50310 [00.875][mmc]: card_caps:0x3000000a [00.879][mmc]: host_caps:0x3000003f [00.884]line:703 init_clocks [00.887]init_clocks:finish [00.889]drv_disp_init [00.896]get flash lcd idx 0 fdt get node offset faill: hdmi ****************** drv_disp_init ***************** lcd_init [00.908]drv_disp_init finish [00.911]boot_gui_init:start [00.914]set disp.dev2_output_type fail. using defval=0 [00.919]disp 0, clk: pll(372000000),clk(372000000),dclk(31000000) dsi_rate(150000000) clk real:pll(372000000),clk(372000000),dclk(93000000) dsi_rate(150000000) [00.954]switch device: sel=0, type=1, mode=4, format=0, bits=0, eotf=4, cs=260 [00.961]set disp.fb0_rot_used fail. using defval=0 [01.128]set disp.fb0_rot_degree fail. using defval=0 [01.134]boot_gui_init:finish [01.136]Loading Environment from SUNXI_FLASH... OK [01.141]try to burn key [01.143]out of usb burn from boot: not need burn key Hit any key to stop autoboot: 0 sunxi work mode=0x11 run card sprite [01.155]try sprite_led_gpio config [01.158]sprite_led_gpio start [01.161]sunxi sprite begin firmware name <NULL> img start = 0x93b0 try to read mmc start 37808 read mmc ok sunxi sprite error: iamge magic is bad sunxi sprite firmware probe fail sprite_test - do a sprite test Usage: sprite_test N[01.187]pwm device hdl is NULL [01.190]LCD open finish ULL =>
-
@wjp2547532 这个问题有硬件部分的问题,也有软件部分的问题。
先说硬件,硬件这部分涉及较多,总的来说简单解决办法是在卡供电与3.3V电源之间串一个2.2R的电阻来解决插入重启的问题。
软件部分是因为这个芯片启动的bios逻辑是优先卡启动,如果在卡中没有找到系统引导则转为检查其他存储设备,这里注意是检查系统引导。这也是后面你格式化了但还是被引导启动了的原因,因为普通格式化仅仅是擦除了卡内的分区信息及文件信息,实际内容并没有擦除。所以依旧可以引导启动,但是又由于分区信息擦除,导致被引导的系统拿不到正确的分区信息,所以又启动失败了。 -
@whycanservice2 好的大佬,感谢解惑,多谢
Copyright © 2023 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号