页次: 1
设备树修改如下:
dts:
#include "suniv-f1c100s.dtsi"
#include <dt-bindings/gpio/gpio.h>
/ {
model = "Lichee Pi Nano";
compatible = "licheepi,licheepi-nano", "allwinner,suniv-f1c100s",
"allwinner,suniv";
aliases {
serial0 = &uart0;
spi0 = &spi0;
};
chosen {
stdout-path = "serial0:115200n8";
};
/*
panel: panel {
compatible = "qiaodian,qd43003c0-40", "simple-panel";
#address-cells = <1>;
#size-cells = <0>;
enable-gpios = <&pio 4 6 GPIO_ACTIVE_HIGH>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
panel_input: endpoint@0 {
reg = <0>;
remote-endpoint = <&tcon0_out_lcd>;
};
};
};
*/
panel: panel {
compatible = "ampire,am-480272h3tmqw-t01h", "simple-panel";
#address-cells = <1>;
#size-cells = <0>;
enable-gpios = <&pio 4 6 GPIO_ACTIVE_HIGH>;
dclk-frequency = <30000>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
panel_input: endpoint@0 {
reg = <0>;
remote-endpoint = <&tcon0_out_lcd>;
};
};
};
reg_vcc3v3: vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
};
&de {
status = "okay";
};
&mmc0 {
vmmc-supply = <®_vcc3v3>;
bus-width = <4>;
broken-cd;
status = "okay";
};
&otg_sram {
status = "okay";
};
/*
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins_a>;
status = "okay";
flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "winbond,w25q128", "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <40000000>;
};
};
*/
/*
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins_a>;
status = "okay";
flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "winbond,xt25f128b", "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <40000000>;
};
};
*/
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins_a>;
status = "okay";
spi-max-frequency = <50000000>;
flash: xt25f128b@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "winbond,xt25f128b", "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <50000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x000000 0x100000>;
read-only;
};
partition@100000 {
label = "dtb";
reg = <0x100000 0x10000>;
read-only;
};
partition@110000 {
label = "kernel";
reg = <0x110000 0x400000>;
read-only;
};
partition@510000 {
label = "rootfs";
reg = <0x510000 0xAF0000>;
};
};
};
};
&tcon0 {
pinctrl-names = "default";
pinctrl-0 = <&lcd_rgb666_pins>;
status = "okay";
};
&tcon0_out {
tcon0_out_lcd: endpoint@0 {
reg = <0>;
remote-endpoint = <&panel_input>;
};
};
&i2c0 {
pinctrl-0 = <&i2c0_pins>;
pinctrl-names = "default";
status = "okay";
pcf8563: pcf8563@51 {
compatible = "nxp,pcf8563";
reg = <0x51>; // PCF8563 的 I2C 地址
status = "okay";
};
};
&rtp {
pinctrl-names = "default";
pinctrl-0 = <&rtp_pins>;
status = "okay";
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>;
status = "okay";
};
&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&uart2_pins_a>;
status = "okay";
};
&usb_otg {
dr_mode = "host";
status = "okay";
};
&usbphy {
usb0_id_det = <&pio 4 2 GPIO_ACTIVE_HIGH>; /* PE2.我做了修改,在4.15内核中使用的名称是 usb0_id_det */
status = "okay";
};
dtsi:
// SPDX-License-Identifier: (GPL-2.0+ OR X11)
/*
* Copyright 2018 Icenowy Zheng <icenowy@aosc.io>
*/
#include <dt-bindings/clock/suniv-ccu.h>
#include <dt-bindings/reset/suniv-ccu.h>
/ {
#address-cells = <1>;
#size-cells = <1>;
interrupt-parent = <&intc>;
clocks {
#address-cells = <1>;
#size-cells = <1>;
ranges;
osc24M: clk-24M {
#clock-cells = <0>;
compatible = "fixed-clock";
clock-frequency = <24000000>;
clock-output-names = "osc24M";
};
osc32k: clk-32k {
#clock-cells = <0>;
compatible = "fixed-clock";
clock-frequency = <32768>;
clock-output-names = "osc32k";
};
fake100M: clk-100M {
#clock-cells = <0>;
compatible = "fixed-clock";
clock-frequency = <100000000>;
clock-output-names = "fake-100M";
};
};
cpus {
#address-cells = <0>;
#size-cells = <0>;
cpu {
compatible = "arm,arm926ej-s";
device_type = "cpu";
};
};
de: display-engine {
compatible = "allwinner,suniv-display-engine";
allwinner,pipelines = <&fe0>;
status = "disabled";
};
soc {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
ranges;
sram-controller@1c00000 {
compatible = "allwinner,sun4i-a10-sram-controller";
reg = <0x01c00000 0x30>;
#address-cells = <1>;
#size-cells = <1>;
ranges;
sram_d: sram@10000 {
compatible = "mmio-sram";
reg = <0x00010000 0x1000>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 0x00010000 0x1000>;
otg_sram: sram-section@0 {
compatible = "allwinner,sun4i-a10-sram-d";
reg = <0x0000 0x1000>;
status = "disabled";
};
};
};
spi0: spi@1c05000 {
compatible = "allwinner,suniv-spi",
"allwinner,sun8i-h3-spi";
reg = <0x01c05000 0x1000>;
interrupts = <10>;
clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_BUS_SPI0>;
clock-names = "ahb", "mod";
resets = <&ccu RST_BUS_SPI0>;
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
spi1: spi@1c06000 {
compatible = "allwinner,suniv-spi",
"allwinner,sun8i-h3-spi";
reg = <0x01c06000 0x1000>;
interrupts = <11>;
clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_BUS_SPI1>;
clock-names = "ahb", "mod";
resets = <&ccu RST_BUS_SPI1>;
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
tcon0: lcd-controller@1c0c000 {
compatible = "allwinner,suniv-tcon";
reg = <0x01c0c000 0x1000>;
interrupts = <29>;
clocks = <&ccu CLK_BUS_LCD>,
<&ccu CLK_TCON>,
<&osc24M>; /* Still unknown */
clock-names = "ahb",
"tcon-ch0",
"tcon-ch1";
clock-output-names = "tcon-pixel-clock";
resets = <&ccu RST_BUS_LCD>;
reset-names = "lcd";
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
tcon0_in: port@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
tcon0_in_be0: endpoint@0 {
reg = <0>;
remote-endpoint = <&be0_out_tcon0>;
};
};
tcon0_out: port@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
};
};
};
mmc0: mmc@1c0f000 {
compatible = "allwinner,suniv-mmc",
"allwinner,sun7i-a20-mmc";
reg = <0x01c0f000 0x1000>;
clocks = <&ccu CLK_BUS_MMC0>,
<&ccu CLK_MMC0>,
<&ccu CLK_MMC0_OUTPUT>,
<&ccu CLK_MMC0_SAMPLE>;
clock-names = "ahb",
"mmc",
"output",
"sample";
resets = <&ccu RST_BUS_MMC0>;
reset-names = "ahb";
interrupts = <23>;
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>;
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
mmc1: mmc@1c10000 {
compatible = "allwinner,suniv-mmc",
"allwinner,sun7i-a20-mmc";
reg = <0x01c10000 0x1000>;
clocks = <&ccu CLK_BUS_MMC1>,
<&ccu CLK_MMC1>,
<&ccu CLK_MMC1_OUTPUT>,
<&ccu CLK_MMC1_SAMPLE>;
clock-names = "ahb",
"mmc",
"output",
"sample";
resets = <&ccu RST_BUS_MMC1>;
reset-names = "ahb";
interrupts = <24>;
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
ccu: clock@1c20000 {
compatible = "allwinner,suniv-ccu";
reg = <0x01c20000 0x400>;
clocks = <&osc24M>, <&osc32k>;
clock-names = "hosc", "losc";
#clock-cells = <1>;
#reset-cells = <1>;
};
intc: interrupt-controller@1c20400 {
compatible = "allwinner,suniv-ic";
reg = <0x01c20400 0x400>;
interrupt-controller;
#interrupt-cells = <1>;
};
i2c0: i2c@1C27000 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x01C27000 0x400>;
interrupts = <7>;
clocks = <&ccu CLK_BUS_I2C0>;
resets = <&ccu RST_BUS_I2C0>;
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
pio: pinctrl@1c20800 {
compatible = "allwinner,suniv-pinctrl";
reg = <0x01c20800 0x400>;
interrupts = <38>, <39>, <40>;
clocks = <&ccu CLK_BUS_PIO>, <&osc24M>, <&osc32k>;
clock-names = "apb", "hosc", "losc";
gpio-controller;
interrupt-controller;
#interrupt-cells = <3>;
#gpio-cells = <3>;
i2c0_pins: i2c0 {
pins = "PE11", "PE12";
function = "i2c0";
};
spi0_pins_a: spi0-pins-pc {
pins = "PC0", "PC1", "PC2", "PC3";
function = "spi0";
};
lcd_rgb666_pins: lcd-rgb666-pins {
pins = "PD0", "PD1", "PD2", "PD3", "PD4",
"PD5", "PD6", "PD7", "PD8", "PD9",
"PD10", "PD11", "PD12", "PD13", "PD14",
"PD15", "PD16", "PD17", "PD18", "PD19",
"PD20", "PD21";
function = "lcd";
};
rtp_pins: rtp-pins {
pins = "PA0", "PA1", "PA2", "PA3";
function = "rtp";
};
uart0_pins_a: uart-pins-pe {
pins = "PE0", "PE1";
function = "uart0";
};
uart2_pins_a: uart2-pins-pe {
pins = "PE7", "PE8";
function = "uart2";
};
mmc0_pins: mmc0-pins {
pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
function = "mmc0";
};
};
timer@1c20c00 {
compatible = "allwinner,suniv-timer";
reg = <0x01c20c00 0x90>;
interrupts = <13>;
clocks = <&osc24M>;
};
wdt: watchdog@1c20ca0 {
compatible = "allwinner,sun6i-a31-wdt";
reg = <0x01c20ca0 0x20>;
};
rtp: rtp@1c24800 {
compatible = "allwinner,sun4i-a10-ts";
reg = <0x01c24800 0x100>;
interrupts = <20>;
allwinner,ts-attached;
#thermal-sensor-cells = <0>;
};
uart0: serial@1c25000 {
compatible = "snps,dw-apb-uart";
reg = <0x01c25000 0x400>;
interrupts = <1>;
reg-shift = <2>;
reg-io-width = <4>;
clocks = <&ccu CLK_BUS_UART0>;
resets = <&ccu RST_BUS_UART0>;
status = "disabled";
};
uart1: serial@1c25400 {
compatible = "snps,dw-apb-uart";
reg = <0x01c25400 0x400>;
interrupts = <2>;
reg-shift = <2>;
reg-io-width = <4>;
clocks = <&ccu CLK_BUS_UART1>;
resets = <&ccu RST_BUS_UART1>;
status = "disabled";
};
uart2: serial@1c25800 {
compatible = "snps,dw-apb-uart";
reg = <0x01c25800 0x400>;
interrupts = <3>;
reg-shift = <2>;
reg-io-width = <4>;
clocks = <&ccu CLK_BUS_UART2>;
resets = <&ccu RST_BUS_UART2>;
status = "disabled";
};
usb_otg: usb@1c13000 {
compatible = "allwinner,suniv-musb";
reg = <0x01c13000 0x0400>;
clocks = <&ccu CLK_BUS_OTG>;
resets = <&ccu RST_BUS_OTG>;
interrupts = <26>;
interrupt-names = "mc";
phys = <&usbphy 0>;
phy-names = "usb";
extcon = <&usbphy 0>;
allwinner,sram = <&otg_sram 1>;
status = "disabled";
};
usbphy: phy@1c13400 {
compatible = "allwinner,suniv-usb-phy";
reg = <0x01c13400 0x10>;
reg-names = "phy_ctrl";
clocks = <&ccu CLK_USB_PHY0>;
clock-names = "usb0_phy";
resets = <&ccu RST_USB_PHY0>;
reset-names = "usb0_reset";
#phy-cells = <1>;
status = "disabled";
};
fe0: display-frontend@1e00000 {
compatible = "allwinner,suniv-display-frontend";
reg = <0x01e00000 0x20000>;
interrupts = <30>;
clocks = <&ccu CLK_BUS_DE_FE>, <&ccu CLK_DE_FE>,
<&ccu CLK_DRAM_DE_FE>;
clock-names = "ahb", "mod",
"ram";
resets = <&ccu RST_BUS_DE_FE>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
fe0_out: port@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
fe0_out_be0: endpoint@0 {
reg = <0>;
remote-endpoint = <&be0_in_fe0>;
};
};
};
};
be0: display-backend@1e60000 {
compatible = "allwinner,suniv-display-backend";
reg = <0x01e60000 0x10000>;
reg-names = "be";
interrupts = <31>;
clocks = <&ccu CLK_BUS_DE_BE>, <&ccu CLK_DE_BE>,
<&ccu CLK_DRAM_DE_BE>;
clock-names = "ahb", "mod",
"ram";
resets = <&ccu RST_BUS_DE_BE>;
reset-names = "be";
assigned-clocks = <&ccu CLK_DE_BE>;
assigned-clock-rates = <300000000>;
ports {
#address-cells = <1>;
#size-cells = <0>;
be0_in: port@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
be0_in_fe0: endpoint@0 {
reg = <0>;
remote-endpoint = <&fe0_out_be0>;
};
};
be0_out: port@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
be0_out_tcon0: endpoint@0 {
reg = <0>;
remote-endpoint = <&tcon0_in_be0>;
};
};
};
};
};
};
dmesg 输入关于开机过程中打印的log
# dmesg | grep -E 'musb|usb|phy'
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.115649] usbcore: registered new interface driver usbfs
[ 0.115799] usbcore: registered new interface driver hub
[ 0.116041] usbcore: registered new device driver usb
[ 1.005230] usbcore: registered new interface driver usb-storage
[ 1.012313] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[ 1.024307] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 1.030252] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[ 1.156649] usbcore: registered new interface driver usbhid
[ 1.162376] usbhid: USB HID core driver
目前问题是PE2无论是拉高还是拉低都有测试,插入U盘、键盘、无线网卡均没有任何反应,日志也没有打印,但是可以通过USB进行下载固件,线路应是没有任何问题,特来求助,还望有经验的朋友能不吝赐教,指点一二
下面是 SOC烧录时候输出的log
[2844]fes begin commit:88480af-dirty
[2848]set pll start
[2854]periph0 has been enabled
[2857]set pll end
[2859][pmu]: bus read error
[2861]board init ok
[2863]beign to init dram
[2865]ZQ value = 0x30
[2867]get_pmu_exist() = -1
[2870]ddr_efuse_type: 0xa
[2872]trefi:7.8ms
[2875][AUTO DEBUG] single rank and full DQ!
[2879]ddr_efuse_type: 0xa
[2882]trefi:7.8ms
[2884][AUTO DEBUG] rank 0 row = 13
[2887][AUTO DEBUG] rank 0 bank = 8
[2891][AUTO DEBUG] rank 0 page size = 2 KB
[2895]DRAM BOOT DRIVE INFO: V0.33
[2898]DRAM CLK = 924 MHz
[2900]DRAM Type = 3 (2:DDR2,3:DDR3)
[2903]DRAMC read ODT off.
[2906]DRAM ODT value: 0x42.
[2909]ddr_efuse_type: 0xa
[2912]DRAM SIZE =128 M
[2914]dram_tpr4:0x0
[2916]PLL_DDR_CTRL_REG:0xf8004c00
[2919]DRAM_CLK_REG:0xc0000000
[2922][TIMING DEBUG] MR2= 0x20
[2926]DRAM simple test OK.
[2928]rtc standby flag is 0x0, super standby flag is 0x0
[2933]init dram ok
U-Boot 2018.07-ge987def5-dirty (May 25 2023 - 18:38:27 +0800) Allwinner Technoly
[05.257]CPU: Allwinner Family
[05.259]Model: sun8iw20
I2C: FDT ERROR:fdt_set_all_pin:[twi0]-->FDT_ERR_BADPATH
FDT ERROR:fdt_set_all_pin:[twi1]-->FDT_ERR_BADPATH
ready
[05.281]DRAM: 128 MiB
[05.284]Relocation Offset is: 04eba000
[05.310]secure enable bit: 0
[05.313]CPU=1008 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=300Mhz
[05.319]gic: normal mode
sunxi flash map init
[05.323]flash init start
[05.326]workmode = 16,storage type = 0
try card 2
set card number 2
get card number 2
[05.333][mmc]: mmc driver ver uboot2018:2021-12-20 13:35:00
[05.340][mmc]: Is not Boot mode!
[05.343][mmc]: SUNXI SDMMC Controller Version:0x50310
[05.354][mmc]: ************Try SD card 2************
[05.359][mmc]: mmc 2 cmd timeout 100 status 100
[05.363][mmc]: smc 2 err, cmd 8, RTO
[05.367][mmc]: mmc 2 close bus gating and reset
[05.372][mmc]: mmc 2 cmd timeout 100 status 100
[05.376][mmc]: smc 2 err, cmd 55, RTO
[05.379][mmc]: mmc 2 close bus gating and reset
[05.384][mmc]: ************Try MMC card 2************
[05.408][mmc]: mmc 2 cmd timeout 100 status 100
[05.412][mmc]: smc 2 err, cmd 8, RTO
[05.415][mmc]: mmc 2 close bus gating and reset
[05.420][mmc]: mmc 2 cmd timeout 100 status 100
[05.424][mmc]: smc 2 err, cmd 55, RTO
[05.428][mmc]: mmc 2 close bus gating and reset
[05.444][mmc]: gen_tuning_blk_bus8: total blk 10
[05.448][mmc]: gen_tuning_blk_bus4: total blk 6
[05.453][mmc]: Using 4 bit tuning now
[05.457][mmc]: write_tuning_try_freq: write ok
[05.461][mmc]: Pattern compare ok
[05.464][mmc]: Write tuning pattern ok
[05.468][mmc]: ================== HSSDR52_SDR25...
[05.472][mmc]: skip freq 400000
[05.475][mmc]: skip freq 25000000
[05.478][mmc]: freq: 2-50000000-64-4
[05.764][mmc]: [0-63|64]
[05.766][mmc]: ================== HSDDR52_DDR50...
[05.771][mmc]: skip freq 400000
[05.774][mmc]: freq: 1-25000000-64-4
[06.008][mmc]: freq: 2-50000000-64-4
[06.174][mmc]: [0-50|51]
[06.177][mmc]: [0-45|46]
[06.179][mmc]: DS26/SDR12: 0xffffffff 0xffffffff
[06.183][mmc]: HSSDR52/SDR25: 0xff20ffff 0xffffffff
[06.188][mmc]: HSDDR52/DDR50: 0xff1719ff 0xffffffff
[06.192][mmc]: HS200/SDR104: 0xffffffff 0xffffffff
[06.197][mmc]: HS400: 0xffffffff 0xffffffff
[06.201][mmc]: HS400: 0xffffffff 0xffffffff
[06.205][mmc]: Best spd md: 2-HSDDR52/DDR50, freq: 2-50000000, Bus width: 4
[06.211]line:703 init_clocks
[06.214]init_clocks:finish
[06.217]Loading Environment from SUNXI_FLASH... OK
[06.221]try to burn key
[06.223]out of usb burn from boot: not need burn key
Hit any key to stop autoboot: 0
sunxi work mode=0x10
run usb efex
buf queue page size = 65536
delay time 2500
weak:otg_phy_config
usb init ok
set address 0x16
set address 0x16 ok
SUNXI_EFEX_ERASE_TAG
erase_flag = 0x1
origin_erase_flag = 0x1
FEX_CMD_fes_verify_status
FEX_CMD_fes_verify last err=0
the 0 mbr table is ok
the 1 mbr table is ok
the 2 mbr table is ok
the 3 mbr table is ok
*************MBR DUMP***************
total mbr part 8
part[0] name :boot-resource
part[0] classname :DISK
part[0] addrlo :0x8000
part[0] lenlo :0x34e
part[0] user_type :32768
part[0] keydata :0
part[0] ro :0
part[1] name :env
part[1] classname :DISK
part[1] addrlo :0x834e
part[1] lenlo :0x1f8
part[1] user_type :32768
part[1] keydata :0
part[1] ro :0
part[2] name :env-redund
part[2] classname :DISK
part[2] addrlo :0x8546
part[2] lenlo :0x1f8
part[2] user_type :32768
part[2] keydata :0
part[2] ro :0
part[3] name :boot
part[3] classname :DISK
part[3] addrlo :0x873e
part[3] lenlo :0x2000
part[3] user_type :32768
part[3] keydata :0
part[3] ro :0
part[4] name :rootfs
part[4] classname :DISK
part[4] addrlo :0xa73e
part[4] lenlo :0xf000
part[4] user_type :32768
part[4] keydata :0
part[4] ro :0
part[5] name :private
part[5] classname :DISK
part[5] addrlo :0x1973e
part[5] lenlo :0x2800
part[5] user_type :32768
part[5] keydata :0
part[5] ro :0
part[6] name :rootfs_data
part[6] classname :DISK
part[6] addrlo :0x1bf3e
part[6] lenlo :0x200000
part[6] user_type :32768
part[6] keydata :0
part[6] ro :0
part[7] name :UDISK
part[7] classname :DISK
part[7] addrlo :0x21bf3e
part[7] lenlo :0x0
part[7] user_type :32768
part[7] keydata :0
part[7] ro :0
total part: 9
mbr 0, 8000, 8000
boot-resource 1, 34e, 8000
env 2, 1f8, 8000
env-redund 3, 1f8, 8000
boot 4, 2000, 8000
rootfs 5, f000, 8000
private 6, 2800, 8000
rootfs_data 7, 200000, 8000
UDISK 8, 0, 8000
[09.697]erase all part start
need erase flash: 1
[09.702]read item0 copy0
[09.715]Item0 (Map) magic is bad
[09.718]the secure storage item0 copy0 magic is bad
[09.734]Item0 (Map) magic is bad
[09.737]the secure storage item0 copy1 magic is bad
[09.741]Item0 (Map) magic is bad
[09.744]the secure storage map is empty
[09.748]no item name set-active-boot-slot in the map
erase secure storage failed
[09.755]sunxi_secure_storage_exit err: secure storage has not been inited
private part exist
GPT:boot-resource: 12000 1234d
GPT:env : 1234e 12545
GPT:env-redund : 12546 1273d
GPT:boot : 1273e 1473d
GPT:rootfs : 1473e 2373d
GPT:private : 2373e 25f3d
GPT:rootfs_data : 25f3e 225f3d
GPT:UDISK : 225f3e e8ffde
begin to store data
part 0 name boot-resource
keydata = 0x0
part 1 name env
keydata = 0x0
part 2 name env-redund
keydata = 0x0
part 3 name boot
keydata = 0x0
part 4 name rootfs
keydata = 0x0
part 5 name private
keydata = 0x0
find keypart private
keypart read start: 0x1973e, sectors 0x2800
keypart part private read 0x1973e, sectors 0x2800
part 6 name rootfs_data
keydata = 0x0
part 7 name UDISK
keydata = 0x0
begin to erase
[09.958]erase all part start
card2 erase boot0
erase env part
[09.970][mmc]: after adjust nr, no more space need to erase!!
[09.975][mmc]: after align erase group, no space need to erase, erase failed
[09.982][mmc]: mmc_mmc_erase: erase emmc fail!
[09.986][mmc]: mmc_mmc_erase: some sectors in emmc are ignored!
[09.992][mmc]: --0: from74574 nr504
erase env-redund part
[10.005][mmc]: after adjust start addr, no more space need to erase!!
[10.011][mmc]: Erase addr is not erase group alignment!
[10.016][mmc]: erase failed, range 75776 - 76280
[10.021][mmc]: mmc_mmc_erase: erase emmc fail!
[10.025][mmc]: mmc_mmc_erase: some sectors in emmc are ignored!
[10.031][mmc]: --0: from75078 nr504
erase boot part
[10.044][mmc]: erase from: 75776, to: 82943, cnt: 7168, erase_group: 1024
[10.054][mmc]: sunxi_mmc_do_send_cmd_common: cmd 38 wait rsp busy 0x3 ms
[10.061][mmc]: mmc_mmc_erase: some sectors in emmc are ignored!
[10.066][mmc]: --0: from75582 nr194
[10.070][mmc]: --1: from82944 nr830
erase rootfs part
[10.092][mmc]: erase from: 83968, to: 144383, cnt: 60416, erase_group: 1024
[10.102][mmc]: sunxi_mmc_do_send_cmd_common: cmd 38 wait rsp busy 0x3 ms
[10.109][mmc]: mmc_mmc_erase: some sectors in emmc are ignored!
[10.114][mmc]: --0: from83774 nr194
[10.118][mmc]: --1: from144384 nr830
erase private part
[10.141][mmc]: erase from: 145408, to: 154623, cnt: 9216, erase_group: 1024
[10.150][mmc]: sunxi_mmc_do_send_cmd_common: cmd 38 wait rsp busy 0x3 ms
[10.156][mmc]: mmc_mmc_erase: some sectors in emmc are ignored!
[10.162][mmc]: --0: from145214 nr194
[10.165][mmc]: --1: from154624 nr830
erase rootfs_data part
[10.189][mmc]: erase from: 155648, to: 2251775, cnt: 2096128, erase_group: 1024
[10.200][mmc]: sunxi_mmc_do_send_cmd_common: cmd 38 wait rsp busy 0x4 ms
[10.206][mmc]: mmc_mmc_erase: some sectors in emmc are ignored!
[10.212][mmc]: --0: from155454 nr194
[10.215][mmc]: --1: from2251776 nr830
erase UDISK part
sunxi_sprite_mmc_phyerase: @nr is 0, erase from @from to end
[10.243][mmc]: erase from: 2252800, to: 15268863, cnt: 13016064, erase_group: 14
[10.267][mmc]: sunxi_mmc_do_send_cmd_common: cmd 38 wait rsp busy 0x10 ms
[10.274][mmc]: mmc_mmc_erase: some sectors in emmc are ignored!
[10.279][mmc]: --0: from2252606 nr194
[10.283][mmc]: --1: from15268864 nr1023
card erase all
finish erase
rewrite
write primary GPT success
write Backup GPT success
[10.321]update partition map
keypart write start: 0x1973e, sectors 0x2800
flash exit
SUNXI_EFEX_MBR_TAG
mbr size = 0x10000
write primary GPT success
write Backup GPT success
[10.491]update partition map
FEX_CMD_fes_verify_status
FEX_CMD_fes_verify last err=0
******Has init
flash sectors: 0xe90000
FEX_CMD_fes_verify_value, start 0x8000, size high 0x0:low 0x14000
FEX_CMD_fes_verify_value 0xe6f75b5c
FEX_CMD_fes_verify_value, start 0x834e, size high 0x0:low 0x20000
FEX_CMD_fes_verify_value 0xadc89266
FEX_CMD_fes_verify_value, start 0x8546, size high 0x0:low 0x20000
FEX_CMD_fes_verify_value 0xadc89266
FEX_CMD_fes_verify_value, start 0x873e, size high 0x0:low 0x3c2800
FEX_CMD_fes_verify_value 0x3ebdcad9
ubuntu20.04(ubuntu18.04也进行了测试)LiveSuitV3.06版本进行T113的烧录时,闪退。详情如下
使用SOC 为T113
使用存储为 EMMC
windows烧录正常,可以使用
--------------Init Called------------------
workDir /home/ubuntu/桌面/LiveSuit(Ubuntu下的烧写工具)/sunxi-livesuite-master/x86-64/LiveSuit
ImgLenHigh 0
ImgLenLow 14280704
Mode 8
hWnd 0
imgFilePath /home/ubuntu/桌面/tina_t113-nezha_uart1_Qt.img
[TL_MSG]:Mode = 8, ImgLenHigh=0, ImgLenLow = d9e800, imgFilePath = /home/ubuntu/桌面/tina_t113-nezha_uart1_Qt.img
IMAGEWTY
ItemTableSize = 1048576
[TL_MSG]:Tools Open Img
---fun end---
--------------entry-fel2fes Called-----------
felDevName /dev/aw_efex4
[TL_MSG]:Hi, I'm fel, dev=/dev/aw_efex4
[TL_MSG]:To down and Run fes1-1
[TL_MSG]:fes1 down addr = 0x28000, retAddr =0x28340
[TL_MSG]:tlFelDev.FelRun finish
[TL_MSG]:hasRetLog finish
[TL_MSG]:Tools_Buffer finish
[TL_FEX]:fel UP addr=0x28340, len=136
[TL_MSG]:SYS_PARA_LOG read = 0x4d415244
[TL_MSG]:dram paras[0]: 0x39c
[TL_MSG]:dram paras[1]: 0x3
[TL_MSG]:dram paras[2]: 0x7b7bfb
[TL_MSG]:dram paras[3]: 0x0
[TL_MSG]:dram paras[4]: 0x10d2
[TL_MSG]:dram paras[5]: 0x800000
[TL_MSG]:dram paras[6]: 0x1e14
[TL_MSG]:dram paras[7]: 0x42
[TL_MSG]:dram paras[8]: 0x20
[TL_MSG]:dram paras[9]: 0x0
[TL_MSG]:dram paras[10]: 0x4899d7
[TL_MSG]:dram paras[11]: 0x1c239d0
[TL_MSG]:dram paras[12]: 0xa2071
[TL_MSG]:dram paras[13]: 0xb4787896
[TL_MSG]:dram paras[14]: 0x0
[TL_MSG]:dram paras[15]: 0x48484848
[TL_MSG]:dram paras[16]: 0x48
[TL_MSG]:dram paras[17]: 0x1620121e
[TL_MSG]:dram paras[18]: 0x0
[TL_MSG]:dram paras[19]: 0x0
[TL_MSG]:dram paras[20]: 0x0
[TL_MSG]:dram paras[21]: 0x340000
[TL_MSG]:dram paras[22]: 0x46
[TL_MSG]:dram paras[23]: 0x34006103
[TL_MSG]:dram paras[24]: 0x0
[TL_MSG]:dram paras[25]: 0x0
[TL_MSG]:dram paras[26]: 0x0
[TL_MSG]:dram paras[27]: 0x0
[TL_MSG]:dram paras[28]: 0x0
[TL_MSG]:dram paras[29]: 0x0
[TL_MSG]:dram paras[30]: 0x0
[TL_MSG]:dram paras[31]: 0x0
[TL_MSG]:for tlFelDev.FelUpData finish
[TL_MSG]:To down and Run uboot
[TL_MSG]:u-boot down addr = 0x43000000
[TL_MSG]:workmode = 0x10
[TL_MSG]:dtb down addr = 0x43200000
[TL_MSG]:sysconfig down addr = 0x43300000
---fun end---
Fel Thread Finished!
Dev Plugout The Device Path is: /dev/aw_efex4
Dev Plugout The Device Path is: /dev/aw_efex4
Dev Plugin The Device Path is: /dev/aw_efex4
--------------entry fes_thread Called---------
portId 0
fesDevName /dev/aw_efex4
hubId 0
DeviceId 1
[TL_MSG]:enter FES--/dev/aw_efex4
[TL_MSG]:Verify: media crc = 0
[TL_MSG]:save item to mem :(12345678,1234567890___MBR) realLen(65536)
./buffer.cpp, pBuffer = 0x7fd2d4012084, nLen = 16380, crc32 = 4134314412[TL_MSG]:name = boot-resource, keydata = 0
[TL_MSG]:name = env, keydata = 0
[TL_MSG]:name = env-redund, keydata = 0
[TL_MSG]:name = boot, keydata = 0
[TL_MSG]:name = rootfs, keydata = 0
[TL_MSG]:name = private, keydata = 0
[TL_MSG]:name = rootfs_data, keydata = 0
[TL_MSG]:name = UDISK, keydata = 0
[TL_MSG]:name = , keydata = 0
[TL_MSG]:Verify: media crc = 0
[TL_MSG]:down mbr success!!!
[TL_MSG]:storge type is 2 (0:nand 1-2:card 3:spinor)
[TL_MSG]:dl file :save item to mem :(12345678,1234567890DLINFO) realLen(16384)
./buffer.cpp, pBuffer = 0x7fd2d461a9b4, nLen = 16380, crc32 = 2550867671[TL_MSG]:------------dlmap dump--------------
[TL_MSG]:crc32 = 0x980b26d7
[TL_MSG]:version = 0x200
[TL_MSG]:magic = softw411
[TL_MSG]:part_cnt = 5
[TL_MSG]:flash size is : 15269888 Sectors
[TL_MSG]:name = boot-resource addrhi=0x0 addrlo = 0x8000 lenhi = 0x0 lenlo = 0x34e file = BOOT-RESOURCE_FE, en=0,vf=1
[TL_MSG]:sparseFlag:false
[TL_MSG]:need verify:1,VBOOT-RESOURCE_F
[TL_FEX]:8000, 14000
[TL_MSG]:Verify:start = 8000 ,size = 14000 ,pc_crc = e6f75b5c, media crc = e6f75b5c
[TL_MSG]:name = env addrhi=0x0 addrlo = 0x834e lenhi = 0x0 lenlo = 0x1f8 file = ENV_FEX000000000, en=0,vf=1
[TL_MSG]:sparseFlag:false
BBCode: 可用 [url] 插入链接: 可用 [img] 贴图: 可用 表情: 可用 上传
[TL_MSG]:need verify:1,VENV_FEX00000000
[TL_FEX]:834e, 20000
[TL_MSG]:Verify:start = 834e ,size = 20000 ,pc_crc = adc89266, media crc = adc89266
[TL_MSG]:name = env-redund addrhi=0x0 addrlo = 0x8546 lenhi = 0x0 lenlo = 0x1f8 file = ENV_FEX000000000, en=0,vf=1
[TL_MSG]:sparseFlag:false
[TL_MSG]:need verify:1,VENV_FEX00000000
[TL_FEX]:8546, 20000
[TL_MSG]:Verify:start = 8546 ,size = 20000 ,pc_crc = adc89266, media crc = adc89266
[TL_MSG]:name = boot addrhi=0x0 addrlo = 0x873e lenhi = 0x0 lenlo = 0x2000 file = BOOT_FEX00000000, en=0,vf=1
[TL_MSG]:sparseFlag:false
[TL_MSG]:need verify:1,VBOOT_FEX0000000
[TL_FEX]:873e, 3c2800
[TL_MSG]:Verify:start = 873e ,size = 3c2800 ,pc_crc = 3ebdcad9, media crc = 3ebdcad9
[TL_MSG]:name = rootfs addrhi=0x0 addrlo = 0xa73e lenhi = 0x0 lenlo = 0xf000 file = ROOTFS_FEX000000, en=0,vf=1
[TL_MSG]:sparseFlag:false
[TL_MSG]:need verify:1,VROOTFS_FEX00000
free(): invalid pointer
./LiveSuit.sh:行 19: 10350 已放弃 (核心已转储) LD_LIBRARY_PATH=${TOP_DIR}/${BIN_DIR}/ ${BIN_DIR}/${APP}
以上为LiveSuit 打印的错误
上图为闪退的结点截图,
闪退后 T113没有刷如成功,刷机前选择的格式化成功了。
在windows下可以正常刷机,运行也没有问题
现在不如到如何排除问题,还望哪位大佬可以指点一二
页次: 1