我的板上没有焊接EMMC/NOR FLASH/NAND FLASH,只有SD卡,使用PhoenixSuit刷 img文件时从UART0看到如下信息:
[601]fes begin commit:88480af
[604]set pll start
[606]periph0 has been enabled
[609]set pll end
[610][pmu]: bus read error
[613]board init ok
[614]beign to init dram
[617]ZQ value = 0x27
[619]get_pmu_exist() = -1
[621]ddr_efuse_type: 0xa
[623]trefi:7.8ms
[626][AUTO DEBUG] single rank and full DQ!
[629]ddr_efuse_type: 0xa
[632]trefi:7.8ms
[634][AUTO DEBUG] rank 0 row = 13
[637][AUTO DEBUG] rank 0 bank = 4
[640][AUTO DEBUG] rank 0 page size = 2 KB
[644]DRAM BOOT DRIVE INFO: V0.33
[647]DRAM CLK = 528 MHz
[649]DRAM Type = 2 (2:DDR2,3:DDR3)
[652]DRAMC read ODT off.
[655]DRAM ODT off.
[657]ddr_efuse_type: 0xa
[659]DRAM SIZE =64 M
[661]dram_tpr4:0x0
[663]PLL_DDR_CTRL_REG:0xf8002b00
[666]DRAM_CLK_REG:0xc0000000
[668][TIMING DEBUG] MR2= 0x0
[673]DRAM simple test OK.
[675]init dram ok
U-Boot 2018.07-ge987def (Nov 07 2022 - 03:11:27 +0000) Allwinner Technology
[03.147]DRAM: 64 MiB
[03.152]Relocation Offset is: 01ee9000
[03.178]secure enable bit: 0
can't support chip type 24064
[03.187]CPU=720 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=300Mhz
sunxi flash map init
SPI ALL: ready
[03.225]flash init start
[03.227]workmode = 16,storage type = 0
try card 2
set card number 2
get card number 2
[03.235][mmc]: mmc driver ver uboot2018:2021-12-20 13:35:00
[03.245][mmc]: get sdc_type fail and use default host:tm4.
[03.277][mmc]: Is not Boot mode!
[03.280][mmc]: SUNXI SDMMC Controller Version:0x50310
[03.291][mmc]: Try SD card 2
[03.297][mmc]: mmc 2 cmd timeout 100 status 100
[03.301][mmc]: smc 2 err, cmd 8, RTO
[03.304][mmc]: mmc 2 close bus gating and reset
[03.309][mmc]: mmc 2 cmd timeout 100 status 100
[03.313][mmc]: smc 2 err, cmd 55, RTO
[03.317][mmc]: mmc 2 close bus gating and reset
[03.321][mmc]: Try MMC card 2
[03.330][mmc]: mmc 2 cmd timeout 100 status 100
[03.334][mmc]: smc 2 err, cmd 1, RTO
[03.337][mmc]: mmc 2 close bus gating and reset
[03.342][mmc]: Card did not respond to voltage select!
[03.347][mmc]: SD/MMC 2 init error!
[03.352][mmc]: mmc init product failed
MMC init failed
try emmc fail
[03.369]sunxi-spinand: AW SPINand MTD Layer Version: 1.8 20220106
[03.374]sunxi-spinand-phy: AW SPINand Phy Layer Version: 1.11 20211217
[03.440]sunxi-spinand-phy: request spi0 gpio ok
[03.444]sunxi-spinand-phy: request general tx dma channel ok!
[03.449]sunxi-spinand-phy: request general rx dma channel ok!
[03.455]sunxi-spinand-phy: set spic0 clk to 20 Mhz
[03.459]sunxi-spinand-phy: init spic0 clk ok
[04.463]sunxi-spinand-phy: read id failed : -110
try nand fail
[04.539]unrecognized JEDEC id bytes: ff, ff, ff
try spinor fail
initcall sequence 0000000043f91318 failed at call 000000004200df06 (err=-1)
ERROR ### PLEASE RESET THE BOARD
从串口调试信息看,应该是D1向SD卡发送了CMD 8和CMD 55没有得到响应。我检查SD卡插读卡器接电脑可以正常使用,SD座子焊接没有发现问题,怀疑D1在只有SD卡的情况下是否能正常刷机,发贴请教各位,感谢🙏
附上SD卡座子和D1的原理图
离线
用Phoenixcard烧启动卡,再插SD卡启动,到uboot报错
[43]HELLO! BOOT0 is starting!
[45]BOOT0 commit : 88480af
[48]set pll start
[50]periph0 has been enabled
[53]set pll end
[54][pmu]: bus read error
[57]board init ok
[58]ZQ value = 0x27
[60]get_pmu_exist() = -1
[63]ddr_efuse_type: 0xa
[65]trefi:7.8ms
[67][AUTO DEBUG] single rank and full DQ!
[71]ddr_efuse_type: 0xa
[73]trefi:7.8ms
[75][AUTO DEBUG] rank 0 row = 13
[78][AUTO DEBUG] rank 0 bank = 4
[81][AUTO DEBUG] rank 0 page size = 2 KB
[85]DRAM BOOT DRIVE INFO: V0.33
[88]DRAM CLK = 528 MHz
[90]DRAM Type = 2 (2:DDR2,3:DDR3)
[93]DRAMC read ODT off.
[95]DRAM ODT off.
[97]ddr_efuse_type: 0xa
[100]DRAM SIZE =64 M
[102]dram_tpr4:0x0
[104]PLL_DDR_CTRL_REG:0xf8002b00
[107]DRAM_CLK_REG:0xc0000000
[109][TIMING DEBUG] MR2= 0x0
[114]DRAM simple test OK.
[116]dram size =64
[118]card no is 0
[120]sdcard 0 line count 4
[122][mmc]: mmc driver ver 2021-04-2 16:45
[131][mmc]: Wrong media type 0x0
[134][mmc]: ***Try SD card 0***
[152][mmc]: HSSDR52/SDR25 4 bit
[155][mmc]: 50000000 Hz
[157][mmc]: 15193 MB
[159][mmc]: ***SD/MMC 0 init OK!!!***
[213]Loading boot-pkg Succeed(index=0).
[216]Entry_name = opensbi
[220]Entry_name = u-boot
[223]Entry_name = dtb
[226]mmc not para
[228]Jump to second Boot.
OpenSBI auto-t113-linux-V0.8-3-ge39e937
____ _____ ____ _____
/ __ \ / ____| _ \_ _|
| | | |_ __ ___ _ __ | (___ | |_) || |
| | | | '_ \ / _ \ '_ \ \___ \| _ < | |
| |__| | |_) | __/ | | |____) | |_) || |_
\____/| .__/ \___|_| |_|_____/|____/_____|
| |
|_|
Platform Name : T-HEAD Xuantie Platform
Platform HART Features : RV64ACDFIMSUVX
Platform Max HARTs : 1
Current Hart : 0
Firmware Base : 0x41fc0400
Firmware Size : 75 KB
Runtime SBI Version : 0.2
MIDELEG : 0x0000000000000222
MEDELEG : 0x000000000000b1ff
PMP0 : 0x0000000041fc0000-0▒
U-Boot 2018.07-ge987def-dirty (Apr 08 2023 - 13:56:30 +0800) Allwinner Technology
[00.298]DRAM: 64 MiB
[00.300]Relocation Offset is: 01ee9000
[00.304]secure enable bit: 0
can't support chip type 24064
[00.310]CPU=720 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=300Mhz
sunxi flash map init
SPI ALL: ready
[00.321]flash init start
[00.323]workmode = 0,storage type = 1
[00.327][mmc]: mmc driver ver uboot2018:2021-12-20 13:35:00
[00.332][mmc]: get sdc_type fail and use default host:tm1.
FDT ERROR:fdt_get_all_pin:get property handle pinctrl-0 error:FDT_ERR_INTERNAL
[00.344][mmc]: get card0 default pin fail
[00.348][mmc]: can't find node "mmc0",will add new node
[00.353][mmc]: fdt err returned <no error>
[00.357][mmc]: Using default timing para
[00.361][mmc]: sunxi mmc pin set failed!
[00.364]error card no error
[00.367][mmc]: MMC Device -1 not found
fail to find one useful mmc card
initcall sequence 0000000043f91400 failed at call 000000004200df1c (err=-1)
### ERROR ### Please RESET the board ###
请路过的大神指导一下,谢谢
离线
贴一下 uboot-board.dts
从sdk.allwinnertech.com/git_repo/D1_Tina_Open/manifest.git下的代码没有改过
tina-d1-h/device/config/chips/d1s/configs/nezha/uboot-board.dts的内容
/*
* Allwinner Technology CO., Ltd. sun20iw1p1 soc board.
*
* soc board support.
*/
&platform {
eraseflag = <1>;
next_work = <3>;
debug_mode = <1>;
};
&target {
boot_clock = <720>; /*CPU boot frequency, Unit: MHz*/
storage_type = <0xffffffff>; /*boot medium, 0-nand, 1-card0, 2-card2, -1(defualt)auto scan*/
burn_key = <0>; /*1:support burn key; 0:not support burn key*/
dragonboard_test = <0>; /*1:support card boot dragonboard; 0:not support card boot dragonboard*/
};
&charger0 {
pmu_safe_vol = <3500>;
};
&twi6 {
clock-frequency = <200000>;
pinctrl-0 = <&s_twi0_pins_a>;
no_suspend = <1>;
twi_drv_used = <1>;
status = "okay";
};
&pwm2_pin_a {
pins = "PD18";
function = "pwm2";
muxsel = <5>;
drive-strength = <10>;
bias-pull-up;
};
&pwm2_pin_b {
pins = "PD18";
muxsel = <0>;
function = "gpio_out";
};
&pwm2 {
pinctrl-names = "active", "sleep";
pinctrl-0 = <&pwm2_pin_a>;
pinctrl-1 = <&pwm2_pin_b>;
status = "okay";
};
&pwm7_pin_a {
pins = "PD22";
function = "pwm7";
muxsel = <5>;
drive-strength = <10>;
bias-pull-up;
};
&pwm7_pin_b {
pins = "PD22";
muxsel = <0>;
function = "gpio_in";
};
&pwm7 {
pinctrl-names = "active", "sleep";
pinctrl-0 = <&pwm7_pin_a>;
pinctrl-1 = <&pwm7_pin_b>;
status = "okay";
};
&sdc0_pins_a {
allwinner,pins = "PF0", "PF1", "PF2",
"PF3", "PF4", "PF5";
allwinner,function = "sdc0";
allwinner,muxsel = <2>;
allwinner,drive = <3>;
allwinner,pull = <1>;
pins = "PF0", "PF1", "PF2",
"PF3", "PF4", "PF5";
function = "sdc0";
drive-strength = <30>;
bias-pull-up;
power-source = <3300>;
};
&sdc0_pins_b {
pins = "PF0", "PF1", "PF2",
"PF3", "PF4", "PF5";
function = "sdc0";
drive-strength = <30>;
bias-pull-up;
power-source = <1800>;
};
&sdc0_pins_c {
pins = "PF0", "PF1", "PF2",
"PF3", "PF4", "PF5";
function = "gpio_in";
};
&sdc2_pins_a {
allwinner,pins = "PC2", "PC3", "PC4",
"PC5", "PC6", "PC7";
allwinner,function = "sdc2";
allwinner,muxsel = <3>;
allwinner,drive = <3>;
allwinner,pull = <1>;
pins = "PC2", "PC3", "PC4",
"PC5", "PC6", "PC7";
function = "sdc2";
drive-strength = <30>;
bias-pull-up;
};
&sdc2_pins_b {
pins = "PC2", "PC3", "PC4",
"PC5", "PC6", "PC7";
function = "gpio_in";
};
&nand0_pins_a {
allwinner,pins = "PC0", "PC1", "PC2", "PC5",
"PC8", "PC9", "PC10", "PC11",
"PC12", "PC13", "PC14", "PC15",
"PC16";
allwinner,pname= "nand0_we", "nand0_ale","nand0_cle", "nand0_nre",
"nand0_d0", "nand0_d1", "nand0_d2", "nand0_d3",
"nand0_d4", "nand0_d5", "nand0_d6", "nand0_d7",
"nand0_ndqs";
allwinner,function = "nand0";
allwinner,muxsel = <2>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
&nand0_pins_b {
allwinner,pins = "PC4", "PC6", "PC03", "PC07";
allwinner,pname= "nand0_ce0", "nand0_rb0", "nand0_ce1", "nand0_rb1";
allwinner,function = "nand0";
allwinner,muxsel = <2>;
allwinner,drive = <1>;
allwinner,pull = <1>; /* only RB&CE should be pulled up */
};
&nand0_pins_c {
allwinner,pins = "PC0", "PC1", "PC2", "PC3",
"PC4", "PC5", "PC6", "PC7",
"PC8", "PC9", "PC10", "PC11",
"PC12", "PC13", "PC14", "PC15",
"PC16";
allwinner,function = "io_disabled";
allwinner,muxsel = <7>;
allwinner,drive = <1>;
allwinner,pull = <0>;
};
&card0_boot_para { /* Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value */
/* reg = <0x0 0x2 0x0 0x0>; [> Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value <] */
device_type = "card0_boot_para";
card_ctrl = <0x0>;
card_high_speed = <0x1>;
card_line = <0x4>;
/*
pinctrl-0 = <&sdc0_pins_a>;
*/
};
&card2_boot_para { /* Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value */
/* reg = <0x0 0x3 0x0 0x0>; [> Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value <] */
device_type = "card2_boot_para";
card_ctrl = <0x2>;
card_high_speed = <0x1>;
card_line = <0x4>;
pinctrl-0 = <&sdc2_pins_a>;
sdc_ex_dly_used = <0x2>;
sdc_tm4_hs200_max_freq = <150>;
sdc_tm4_hs400_max_freq = <100>;
};
&gpio_bias { /* Avoid dtc compiling warnings. @TODO: Developer should modify this to the actual value */
device_type = "gpio_bias";
};
&nand0 {
compatible = "allwinner,sun20iw1-nand";
device_type = "nand0";
//reg = <0x0 0x04011000 0x0 0x1000>;/* nand0 */
pinctrl-names = "default", "sleep";
pinctrl-0 = <&nand0_pins_a &nand0_pins_b>;
pinctrl-1 = <&nand0_pins_c>;
nand0_regulator1 = "vcc-nand";
nand0_regulator2 = "none";
nand0_cache_level = <0x55aaaa55>;
nand0_flush_cache_num = <0x55aaaa55>;
nand0_capacity_level = <0x55aaaa55>;
nand0_id_number_ctl = <0x55aaaa55>;
nand0_print_level = <0x55aaaa55>;
nand0_p0 = <0x55aaaa55>;
nand0_p1 = <0x55aaaa55>;
nand0_p2 = <0x55aaaa55>;
nand0_p3 = <0x55aaaa55>;
chip_code = "sun20iw1";
status = "disabled";
};
&disp {
disp_init_enable = <1>;
disp_mode = <0>;
screen0_output_type = <1>;
screen0_output_mode = <4>;
screen1_output_type = <1>;
screen1_output_mode = <4>;
screen1_output_format = <0>;
screen1_output_bits = <0>;
screen1_output_eotf = <4>;
screen1_output_cs = <257>;
screen1_output_dvi_hdmi = <2>;
screen1_output_range = <2>;
screen1_output_scan = <0>;
screen1_output_aspect_ratio = <8>;
dev0_output_type = <1>;
dev0_output_mode = <4>;
dev0_screen_id = <0>;
dev0_do_hpd = <0>;
dev1_output_type = <4>;
dev1_output_mode = <10>;
dev1_screen_id = <1>;
dev1_do_hpd = <1>;
def_output_dev = <0>;
hdmi_mode_check = <1>;
fb0_format = <0>;
fb0_width = <0>;
fb0_height = <0>;
/*
fb0_height = <1280>;
*/
fb1_format = <0>;
fb1_width = <0>;
fb1_height = <0>;
chn_cfg_mode = <1>;
disp_para_zone = <1>;
/*VCC-LCD*/
/* dc1sw-supply = <®_dc1sw>;*/
/*VCC-DSI*/
/* eldo3-supply = <®_eldo3>;*/
/*VCC-PD*/
/* dcdc1-supply = <®_dcdc1>;*/
};
&lcd0 {
lcd_used = <1>;
lcd_driver_name = "tft08006";
lcd_backlight = <100>;
lcd_if = <4>;
lcd_x = <800>;
lcd_y = <1280>;
lcd_width = <52>;
lcd_height = <52>;
lcd_dclk_freq = <70>;
lcd_pwm_used = <1>;
lcd_pwm_ch = <7>;
lcd_pwm_freq = <1000>;
lcd_pwm_pol = <0>;
lcd_pwm_max_limit = <255>;
lcd_hbp = <32>;
lcd_ht = <868>;
lcd_hspw = <4>;
lcd_vbp = <12>;
lcd_vt = <1311>;
lcd_vspw = <4>;
lcd_dsi_if = <0>;
lcd_dsi_lane = <4>;
lcd_lvds_if = <0>;
lcd_lvds_colordepth = <0>;
lcd_lvds_mode = <0>;
lcd_frm = <0>;
lcd_hv_clk_phase = <0>;
lcd_hv_sync_polarity= <0>;
lcd_io_phase = <0x0000>;
lcd_gamma_en = <0>;
lcd_bright_curve_en = <0>;
lcd_cmap_en = <0>;
lcd_fsync_en = <0>;
lcd_fsync_act_time = <1000>;
lcd_fsync_dis_time = <1000>;
lcd_fsync_pol = <0>;
deu_mode = <0>;
lcdgamma4iep = <22>;
smart_color = <90>;
lcd_gpio_0 = <&pio PD 20 GPIO_ACTIVE_HIGH>;
pinctrl-0 = <&dsi4lane_pins_a>;
pinctrl-1 = <&dsi4lane_pins_b>;
/*
// 480 * 272 RGB LCD
lcd_driver_name = "default_lcd";
lcd_backlight = <200>;
lcd_if = <0>;
lcd_x = <800>;
lcd_y = <480>;
lcd_width = <108>;
lcd_height = <65>;
lcd_dclk_freq = <16>;
lcd_pwm_used = <1>;
lcd_pwm_ch = <7>;
lcd_pwm_freq = <500>;
lcd_pwm_pol = <0>;
lcd_ht = <816>;
lcd_hbp = <12>;
lcd_hspw = <4>;
lcd_vt = <496>;
lcd_vbp = <12>;
lcd_vspw = <4>;
lcd_lvds_if = <0>;
lcd_lvds_colordepth = <1>;
lcd_lvds_mode = <0>;
lcd_frm = <1>;
lcd_io_phase = <0x0000>;
lcd_gamma_en = <0>;
lcd_bright_curve_en = <0>;
lcd_cmap_en = <0>;
pinctrl-0 = <&rgb18_pins_a>;
pinctrl-1 = <&rgb18_pins_b>;
// 800 * 480 RGB LCD
lcd_driver_name = "default_lcd";
lcd_if = <0>;
lcd_x = <800>;
lcd_y = <480>;
lcd_width = <150>;
lcd_height = <94>;
lcd_dclk_freq = <48>;
lcd_pwm_used = <1>;
lcd_pwm_ch = <7>;
lcd_pwm_freq = <10000>;
lcd_pwm_pol = <1>;
lcd_hbp = <55>;
lcd_ht = <1240>;
lcd_hspw = <20>;
lcd_vbp = <35>;
lcd_vt = <650>;
lcd_vspw = <10>;
lcd_lvds_if = <0>;
lcd_lvds_colordepth = <1>;
lcd_lvds_mode = <0>;
lcd_frm = <0>;
lcd_io_phase = <0x0000>;
lcd_gamma_en = <0>;
lcd_bright_curve_en = <0>;
lcd_cmap_en = <0>;
deu_mode = <0>;
lcdgamma4iep = <22>;
smart_color = <90>;
pinctrl-0 = <&rgb18_pins_a>;
pinctrl-1 = <&rgb18_pins_b>;
// 1280 * 800 RGB LCD
lcd_driver_name = "default_lcd";
lcd_backlight = <150>;
lcd_if = <3>;
lcd_x = <1280>;
lcd_y = <800>;
lcd_width = <150>;
lcd_height = <94>;
lcd_dclk_freq = <71>;
lcd_rb_swap = <0>;
lcd_pwm_used = <1>;
lcd_pwm_ch = <7>;
lcd_pwm_freq = <50000>;
lcd_pwm_pol = <1>;
lcd_pwm_max_limit = <255>;
lcd_hbp = <20>;
lcd_ht = <1418>;
lcd_hspw = <10>;
lcd_vbp = <10>;
lcd_vt = <814>;
lcd_vspw = <5>;
lcd_lvds_if = <0>;
lcd_lvds_colordepth = <1>;
lcd_lvds_mode = <0>;
lcd_frm = <1>;
lcd_io_phase = <0x0000>;
lcd_hv_clk_phase = <0>;
lcd_hv_sync_polarity = <0>;
lcd_gamma_en = <0>;
lcd_bright_curve_en = <0>;
lcd_cmap_en = <0>;
lcd_fsync_act_time = <1000>;
lcd_fsync_dis_time = <1000>;
deu_mode = <0>;
lcdgamma4iep = <22>;
smart_color = <90>;
pinctrl-0 = <&lvds0_pins_a>;
pinctrl-1 = <&lvds0_pins_b>;
lcd_bl_en = <&pio PD 20 GPIO_ACTIVE_HIGH>;
// 800 * 1280 RGB LCD
lcd_driver_name = "he0801a068";
lcd_backlight = <50>;
lcd_if = <4>;
lcd_x = <800>;
lcd_y = <1280>;
lcd_width = <52>;
lcd_height = <52>;
lcd_dclk_freq = <78>;
lcd_pwm_used = <1>;
lcd_pwm_ch = <7>;
lcd_pwm_freq = <50000>;
lcd_pwm_pol = <1>;
lcd_pwm_max_limit = <255>;
lcd_hbp = <149>;
lcd_ht = <978>;
lcd_hspw = <16>;
lcd_vbp = <7>;
lcd_vt = <1329>;
lcd_vspw = <5>;
lcd_dsi_lane = <4>;
lcd_lvds_if = <0>;
lcd_lvds_colordepth = <1>;
lcd_lvds_mode = <0>;
lcd_frm = <0>;
lcd_io_phase = <0x0000>;
lcd_gamma_en = <0>;
lcd_bright_curve_en = <0>;
lcd_cmap_en = <0>;
lcd_fsync_act_time = <1000>;
lcd_fsync_dis_time = <1000>;
deu_mode = <0>;
lcdgamma4iep = <22>;
smart_color = <90>;
pinctrl-0 = <&dsi4lane_pins_a>;
pinctrl-1 = <&dsi4lane_pins_b>;
lcd_gpio_0 = <&pio PD 20 1 0 3 1>;
*/
};
&hdmi {
hdmi_used = <1>;
hdmi_power_cnt = <0>;
hdmi_hdcp_enable = <1>;
hdmi_hdcp22_enable = <0>;
hdmi_cec_support = <1>;
hdmi_cec_super_standby = <0>;
ddc_en_io_ctrl = <0>;
power_io_ctrl = <0>;
};
&aliases {
nand0 = &nand0;
twi6 = &twi6;
pwm = &pwm;
pwm0 = &pwm0;
pwm1 = &pwm1;
pwm2 = &pwm2;
pwm3 = &pwm3;
pwm4 = &pwm4;
pwm5 = &pwm5;
pwm6 = &pwm6;
pwm7 = &pwm7;
disp = &disp;
hdmi = &hdmi;
lcd0 = &lcd0;
lcd1 = &lcd1;
eink = &eink;
spi0 = &spi0;
};
离线