你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32h7-uboot-uclinux 移植完成部分,分享给大家

[复制链接]
stone-363407 发布时间:2018-11-22 15:29
本帖最后由 stone-363407 于 2018-12-7 16:42 编辑
$ D# X+ J! l: f2 |$ r6 o7 Q0 O% U4 {1 u/ P/ k6 ]
代码地址: http://github.com/huayuguo/uboot-stm32h743_eth- J: j# d3 D. x- A; T2 H2 w

, d$ K* f0 {/ x& ]
  f- g3 e( m4 {9 f' C+ l7 j

1 M% m1 }8 e$ X0 }U-Boot 2018.09-rc2-gc16d658 (Dec 06 2018 - 16:00:30 +0800)6 ?! N" P7 ^' n0 E# C( Q- |

4 I: Z  f* H9 O
: S0 E" Q6 I( t/ h8 e4 U% ^# J
Model: STMicroelectronics STM32H743i-EVAL board. k; y6 N7 d( w' K# ]
DRAM:  32 MiB
/ T8 K- V/ y! U8 E+ `! X$ B: Q* |MMC:   STM32 SDMMC2: 0
( }5 X7 [7 l5 G: UIn:    serial@40011000
$ `2 P! t, X% c' n& w! _6 gOut:   serial@400110001 r  ^" ]: Z7 @  T! }! p
Err:   serial@40011000
, W$ _& e5 w5 b5 }7 a7 ?" _Net:   
+ e2 {" H& G8 }/ s: S* ]Warning: ethernet@40028000 (eth0) using random MAC address - fe:f8:94:5f:5e:26
3 ?4 E" ]( \+ p% z9 P3 l( d2 geth0: ethernet@400280000 |. n& w( d& \6 t" B# _
Hit SPACE in 3 seconds to stop autoboot.
  r. N  g. x7 a; Wswitch to partitions #0, OK  u0 U/ Z/ ^$ O* [# F% |8 T
mmc0 is current device
; S! [) G3 H" c, E, y* I% XScanning mmc 0:1...8 V1 Q  O0 |7 e  @8 k
U-Boot > setenv gatewayip 192.168.10.1;setenv ipaddr 192.168.10.22;setenv netmask 255.255.255.0;setenv ethaddr  1a:5a:38:ef:38:d8;
% L- I- a+ j! ^) BU-Boot > env set bootargs "root=/dev/ram console=ttyS0,115200 " . S. z* l5 W' A$ R* E
U-Boot > tftpboot 61000000 192.168.10.25:uImage;tftpboot 61300000 192.168.10.25:stm32h743i-eval.dtb; 4 R+ x* d0 @; n  N
ethernet@40028000 Waiting for PHY auto negotiation to complete. done
) c( n% j: p- u: W' jUsing ethernet@40028000 device
: {% d7 \" Y7 U! y) N) A4 T1 ~, lTFTP from server 192.168.10.25; our IP address is 192.168.10.22* C8 H; h  {' A' k7 v. ~( \
Filename 'uImage'.6 x" @3 b: J: D" b/ q
Load address: 0x61000000. T" L5 g# k1 y: p
Loading: #################################################################' U, F: z, u# a4 \
         #################################################################7 n& r( a$ {! E; R- k
         ##########
. ?. K: B+ P0 `8 ^+ w" T         1.4 MiB/s
  [" X$ \: S+ s8 ~* }done1 G" s, }2 g# W( b
Bytes transferred = 2048568 (1f4238 hex)
6 G: [# J9 U% U! k# |9 n9 H/ Lethernet@40028000 Waiting for PHY auto negotiation to complete. done
7 v5 y; m  I* F( \! LUsing ethernet@40028000 device
! B" v7 |+ m; [- ], e9 H& _TFTP from server 192.168.10.25; our IP address is 192.168.10.22
% A% }: w6 r1 \4 E. xFilename 'stm32h743i-eval.dtb'.
8 B9 H' |; `* s3 n% yLoad address: 0x61300000
. T% I; g% N8 n0 ~Loading: #+ C/ E3 h6 m  M- H& ]5 ?6 ^5 Y* l
         999 KiB/s. [5 ?3 c8 i* m$ i2 |& X
done
! }5 I6 C( U3 e! l# r$ VBytes transferred = 5115 (13fb hex)
) Z- F4 V# q8 d3 s$ j% }U-Boot > bootm 61000000 - 61300000   a6 M2 B& v2 X" |: T3 {
## Booting kernel from Legacy Image at 61000000 ..., }* N4 u, T6 g& a
   Image Name:   linux
) p5 S; ~3 x( R% P+ Y   Image Type:   ARM Linux Kernel Image (uncompressed)- ?* t4 a4 x6 E; u
   Data Size:    2048504 Bytes = 2 MiB; ]3 K# E& L1 [$ w9 X' T
   Load Address: 61000000
" q% h8 ^, U; C6 v   Entry Point:  61000000' ~1 w9 a* X3 `& x  c
   Verifying Checksum ... OK& i8 `4 m9 C# ^" Y9 x0 n
## Flattened Device Tree blob at 61300000
6 E9 W$ Z2 e7 C   Booting using the fdt blob at 0x61300000: ?; G$ X: y0 C* U6 b- j$ M! U
   Loading Kernel Image ... OK
1 O  y' W. a/ ]; n. E' F$ [   Using Device Tree in place at 61300000, end 613043fa
/ z3 q9 C- r. i9 ^2 S" q
; i6 ~$ t4 f0 ]- ]5 _$ i- G
/ G/ C/ F- b4 u% k8 q; A
Starting kernel ...
) ~: o& R1 h% b; u% i* B6 Y6 p, V1 u) i0 b' B. o1 L) J
1 D% O; A3 v& [
[    0.000000] Booting Linux on physical CPU 0x0
8 ]/ W0 i1 r8 S1 Q. z& p" E[    0.000000] Linux version 4.15.2-gb37c1e299-dirty (xiao@xd) (gcc version 6.3.1 20170620 (15:6.3.1+svn253039-1build1)) #134 PREEMPT Fri Dec 7 13:45:02 CST 2018( ]) c- W( ^& P# m% M4 C
[    0.000000] CPU: ARMv7-M [411fc271] revision 1 (ARMv7M), cr=00000000
3 i5 K6 i; u: V8 C' c: a3 ]7 M[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache4 O. ^# W& x% t4 {: M  p$ v
[    0.000000] OF: fdt: Machine model: STMicroelectronics STM32H743i-EVAL board+ O1 m2 y  f5 V$ U
[    0.000000] Reserved memory: created DMA memory pool at 0x61000000, size 2 MiB! L. L% t1 _; q
[    0.000000] OF: reserved mem: initialized node linux,dma, compatible id shared-dma-pool
- |; ~  k, @) A[    0.000000] Ignoring RAM after 0x61000000, memory at 0x61200000 ignored4 w3 I& p3 \- G& u
[    0.000000] Using ARMv7 PMSA Compliant MPU. Region independence: No, Used 2 of 16 regions0 W* F9 A4 W; U' [$ y# Z
[    0.000000] On node 0 totalpages: 4096. D* S( Y+ O8 \. N" U/ C
[    0.000000]   Normal zone: 32 pages used for memmap
5 K' y" @0 A5 z) I: D[    0.000000]   Normal zone: 0 pages reserved- F6 A5 }6 D* y* y6 R7 C
[    0.000000]   Normal zone: 4096 pages, LIFO batch:0
9 g8 G# ~# O/ T9 }[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768! S+ N9 Z3 G) q+ l0 S
[    0.000000] pcpu-alloc: [0] 0 " ?3 S- Z- l2 _) U" I) G
[    0.000000] Built 1 zonelists, mobility grouping off.  Total pages: 4064- q$ Q! ]; h' B) T8 t
[    0.000000] Kernel command line: root=/dev/ram console=ttyS0,115200
! S" g7 B9 }- k% C1 W7 s1 l[    0.000000] Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)" F" \; t2 S7 ?6 `3 P* h4 o4 I
[    0.000000] Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)  z: l) Y2 f( H6 H$ `$ ?: K$ D3 D
[    0.000000] Memory: 13080K/16384K available (1596K kernel code, 154K rwdata, 496K rodata, 632K init, 130K bss, 3304K reserved, 0K cma-reserved)
) w7 S* @& ], z8 t8 o. s, r0 A) G[    0.000000] Virtual kernel memory layout:
9 g" F9 w  Y! |. \[    0.000000]     vector  : 0x00000000 - 0x00001000   (   4 kB)/ a# Y3 V9 l; I2 ~) J1 \5 v& A! N
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)$ z0 t& u+ B% V3 k/ ]$ K
[    0.000000]     vmalloc : 0x00000000 - 0xffffffff   (4095 MB)9 z0 F% d+ I! P' U
[    0.000000]     lowmem  : 0x60000000 - 0x61000000   (  16 MB)) u5 b+ [8 e# p) o9 ~% y
[    0.000000]       .text : 0x(ptrval) - 0x(ptrval)   (1597 kB)
" {( y0 Q0 I& ?$ ^* Q[    0.000000]       .init : 0x(ptrval) - 0x(ptrval)   ( 632 kB)
! c9 c& a6 q2 [) d, h6 d4 W8 T[    0.000000]       .data : 0x(ptrval) - 0x(ptrval)   ( 155 kB)
+ M7 Z/ ^$ S; f; I: o4 P[    0.000000]        .bss : 0x(ptrval) - 0x(ptrval)   ( 131 kB)' u; j0 e/ ^4 M$ X1 k  J9 R
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1: \# M) D$ C+ M9 F
[    0.000000] Preemptible hierarchical RCU implementation.! R7 j8 p/ ]  s
[    0.000000]  Tasks RCU enabled.( Y' l+ V6 k) x" |# L" Q6 R
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16; `' L  _' q, A
[    0.000000] clocksource: arm_system_timer: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 18664651 ns
5 Y" N# }# T0 Y3 e. y1 {1 E[    0.000000] ARM System timer initialized as clocksource4 ~# u6 ^0 b! {; t4 y$ b" J* c
[    0.000000] /soc/timer@40000c00: STM32 clockevent driver initialized (32 bits)# c0 Z! _4 O: w- u
[    0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 21474836475000000ns
/ ^" v1 J& l' f[    0.010000] Calibrating delay loop... 795.44 BogoMIPS (lpj=3977216)) F: U. S" ]3 x) W2 Y: H
[    0.100000] pid_max: default: 4096 minimum: 301
" m0 ~/ f' F" K7 b" }[    0.100000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
/ M# Y/ ?% c% R% {) S2 Q[    0.100000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
. Y; c: B& |- M4 K) w0 U) b[    0.100000] Hierarchical SRCU implementation.
! K9 v' d5 X2 A0 ?' b' ~6 y[    0.100000] devtmpfs: initialized
2 K, x/ n  M  E3 A+ ^. U( m[    0.110000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns8 R0 J. k+ r" G" D  m- M
[    0.110000] pinctrl core: initialized pinctrl subsystem" d. {5 Y( n' ]
[    0.110000] DMA: default coherent area is set
5 }* f$ z, a* U[    0.110000] random: get_random_u32 called from bucket_table_alloc+0xc9/0xf4 with crng_init=0, t" g* ?5 J- \( g
[    0.110000] NET: Registered protocol family 167 L/ ]- y4 |0 M
[    0.120000] cpuidle: using governor ladder
( k/ F% s" Z. E# K( p) Z- U: D[    0.120000] cpuidle: using governor menu, h6 M( u% B0 P
[    0.130000] stm32h743-pinctrl soc:pin-controller: GPIOA bank added0 G. K3 N' U* t. O
[    0.130000] stm32h743-pinctrl soc:pin-controller: GPIOB bank added8 {; V' u$ v) _$ |# ?
[    0.130000] stm32h743-pinctrl soc:pin-controller: GPIOC bank added
  k: t. N" n% z& ?1 S[    0.130000] stm32h743-pinctrl soc:pin-controller: GPIOD bank added
, A2 m  \3 y( k+ H' G  S- \[    0.130000] stm32h743-pinctrl soc:pin-controller: GPIOE bank added
3 i) W3 E% K: |" N" D. i8 P3 i/ @5 ][    0.130000] stm32h743-pinctrl soc:pin-controller: GPIOF bank added
0 c& W. I' b$ w* [5 g3 @5 [" c[    0.140000] stm32h743-pinctrl soc:pin-controller: GPIOG bank added
0 c* M* T5 _7 U" h3 W. n[    0.140000] stm32h743-pinctrl soc:pin-controller: GPIOH bank added
. c0 k" d. w7 ~: Z' n' p/ E[    0.140000] stm32h743-pinctrl soc:pin-controller: GPIOI bank added
5 M. p2 r5 X: J3 b& W6 M+ l[    0.140000] stm32h743-pinctrl soc:pin-controller: GPIOJ bank added
: i1 ^3 k' r5 R; b% a/ X[    0.140000] stm32h743-pinctrl soc:pin-controller: GPIOK bank added! |3 `2 W# C0 o: c
[    0.140000] stm32h743-pinctrl soc:pin-controller: Pinctrl STM32 initialized& ?- e( t5 d9 x% v! i9 q
[    0.160000] pps_core: LinuxPPS API ver. 1 registered; \3 M0 _# i6 ~8 p
[    0.160000] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
' g) p6 f2 s% \" c9 |8 h0 }+ v3 ?[    0.160000] PTP clock support registered2 [( H  v% S/ u
[    0.160000] clocksource: Switched to clocksource arm_system_timer+ e5 Z8 i; u. Y
[    0.170000] NET: Registered protocol family 2
3 q: n; h% U9 E) X8 p3 M- w) U[    0.170000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)) u1 O; W0 W6 E: l
[    0.170000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)- y  Z6 w! g2 i+ a$ v  o8 L
[    0.170000] TCP: Hash tables configured (established 1024 bind 1024)2 w" p" L& N0 z" W% G( T
[    0.170000] UDP hash table entries: 256 (order: 0, 4096 bytes)2 }( n% A: R  i, \
[    0.170000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)5 ?8 f  p3 p: @9 W) F( Z
[    0.170000] NET: Registered protocol family 1
1 a, j0 n. _3 J( ~4 {+ d7 T2 p" U3 j[    0.360000] workingset: timestamp_bits=30 max_order=12 bucket_order=0" t: |3 X. N' n( L
[    0.380000] random: fast init done3 z; N  B  U' x" o. S
[    0.400000] io scheduler noop registered9 G( ?3 d: {) T' N4 b' s4 ]
[    0.400000] io scheduler deadline registered
6 I9 }, U' V) a; X! ^( s( Y[    0.400000] io scheduler cfq registered (default)
+ n" _5 ]  n& K  _8 o[    0.400000] io scheduler mq-deadline registered- j2 f3 K: K$ d6 R/ n1 p/ u% D: d
[    0.400000] io scheduler kyber registered
+ V. D: e% |8 k% P[    0.400000] STM32 USART driver initialized9 f: f" H6 t2 x2 l
[    0.400000] 40011000.serial: ttyS0 at MMIO 0x40011000 (irq = 17, base_baud = 12500000) is a stm32-usart$ P( U! r. o& j; R
[    0.850000] console [ttyS0] enabled
3 n0 Y7 a5 M: L/ C8 q* w[    0.850000] stm32-usart 40011000.serial: rx dma alloc failed
+ g' y: K, F6 ~- {6 b7 {[    0.860000] stm32-usart 40011000.serial: interrupt mode used for rx (no dma)/ k) @2 U  K0 X0 E
[    0.870000] stm32-usart 40011000.serial: tx dma alloc failed
$ f, ]1 z7 a8 @5 R[    0.870000] stm32-usart 40011000.serial: interrupt mode used for tx (no dma)* ~4 V# W  S5 m6 L. D) b
[    0.880000] libphy: Fixed MDIO Bus: probed
6 m  Z( i( x1 W  I[    0.890000] tun: Universal TUN/TAP device driver, 1.64 y( V* y' \, K, f& Z; s3 d0 d
[    0.890000] stm32-dwmac 40028000.ethernet: Found phy-handle subnode
5 @  p1 T+ d+ H( w1 @0 s[    0.900000] stm32-dwmac 40028000.ethernet: Found MDIO subnode9 q) j' H/ g" D. ]
[    0.910000] stm32-dwmac 40028000.ethernet: use snps,dwmac-4.00..: z* Y" t" a  Z1 Q2 [
[    0.910000] stm32-dwmac 40028000.ethernet: PTP uses main clock
9 r  _) Z/ q, Q1 f' T[    0.910000] stm32-dwmac 40028000.ethernet: no reset control found4 [7 I" f+ k* Z' s
[    0.930000] stmmac - user ID: 0x30, Synopsys ID: 0x41! X' |+ w, H; m* T# M5 W
[    0.930000] stm32-dwmac 40028000.ethernet: DMA HW capability register supported" a& B0 R8 s- S- y7 ^7 R% R; e
[    0.930000] stm32-dwmac 40028000.ethernet: RX Checksum Offload Engine supported: ~4 o: T5 J6 E: m
[    0.950000] stm32-dwmac 40028000.ethernet: TX Checksum insertion supported
! a, J7 F% G) a4 f) R; J[    0.950000] stm32-dwmac 40028000.ethernet: Wake-Up On Lan supported
- C8 ^8 T5 e  K& O[    0.950000] stm32-dwmac 40028000.ethernet: TSO supported
1 L6 Q! `1 i# M! q[    0.970000] stm32-dwmac 40028000.ethernet: Enable RX Mitigation via HW Watchdog Timer
" ?0 x' s8 F7 K% v  g9 s[    0.970000] stmmac_mdio_reset : reset gpio direction num=28
9 o6 n- M% u" g6 Y: T5 C[    1.080000] libphy: stmmac: probed
0 T5 m2 J; l7 t8 K; f  M0 s[    1.090000] stm32-dwmac 40028000.ethernet: register the MDIO bus
% ]0 Q6 A# P& V: ?[    1.100000] u32 classifier+ g8 m- f( j( Z# b% n: @
[    1.100000] Initializing XFRM netlink socket
! p5 m6 v+ H5 }( m1 X% `9 ][    1.110000] NET: Registered protocol family 17
7 V5 x* E3 R# c  J[    1.110000] NET: Registered protocol family 15
' Q. x% s+ y0 [# B/ p[    1.110000] 8021q: 802.1Q VLAN Support v1.8% m9 v+ j. {4 A: D# B: L
[    1.120000] Key type dns_resolver registered+ I3 [( M0 [0 E
[    1.130000] Freeing unused kernel memory: 632K+ k. l. H( Z. |2 e* k& d. v" _
[    1.140000] This architecture does not have kernel memory protection.
1 l9 j# g8 i! E% Gcan't run '/sbin/swapon': No such file or directory
) Z3 G( ^1 b5 h- xInitializing random number generator... done.% c# _4 t6 f$ E( H4 e
Jan  1 00:00:01 login[59]: root login on 'console'9 y& c1 n! T( |% ]6 O5 S# Q
~ #
" w# D7 M8 F7 z# o: X
收藏 5 评论16 发布时间:2018-11-22 15:29

举报

16个回答
stone-363407 回答时间:2018-12-7 16:08:07
本帖最后由 stone-363407 于 2018-12-7 16:09 编辑
; u" l# Q8 V. l- I9 t# J7 \/ p* ~4 ?
. y% s- K- A+ t( ~9 @' a  Jcpu 400Mhz  sdram 100mhz  cas=2
) X# _6 n5 O7 ~2 Y7 b2 C测试软件:iperf3
5 O1 j- a0 s* r4 s系统跑了25个线程测试速度如下。。。。没有原子裸奔的那个快............
  X7 L- X; I# Y9 b( p' F65.8 Mbits/sec
2 ?, y& E; r+ ]. K/ B. F" a- p$ \
~ # cat /proc/cpuinfo
$ Z9 L- L# `% {, h) i- qprocessor       : 09 a/ F! M2 V7 O, Q/ w- b5 P3 H! o! T
model name      : ARMv7-M rev 1 (v7ml)5 g/ Q4 }4 w% S) \9 X( H
BogoMIPS        : 795.44
5 T+ ?: n; Q, x4 P- sFeatures        : half thumb fastmult edsp idivt
3 [/ Q! t; P# z3 l  @9 pCPU implementer : 0x41# z( W2 \$ B  S% ~& j. P8 b
CPU architecture: 7M
6 ^: X- R0 }3 Y  GCPU variant     : 0x1  m5 S* T, H( ]
CPU part        : 0xc27
7 ~, q2 e( J+ ], Y, U9 [CPU revision    : 1' r/ U  h9 E; q  T7 {( C
$ y1 I: Y5 ~- i
Hardware        : STM32 (Device Tree Support)
* b% y$ p9 }- s! e5 F9 h; m2 ~Revision        : 00002 n4 b) p2 l! A2 d2 L* J6 N
Serial          : 0000000000000000
4 f, Y/ S7 t7 C. e~ # iperf3 -c 192.168.10.26 3 I8 G; t- d9 p) L* J. ~
Connecting to host 192.168.10.26, port 5201
/ L; U. N+ [/ n3 ]/ b! T[  4] local 192.168.10.22 port 41328 connected to 192.168.10.26 port 5201
# d$ o+ A9 }5 V[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd' q- J& W7 e7 L. H6 H7 }
[  4]   0.00-1.01   sec  7.57 MBytes  63.0 Mbits/sec    0    173 KBytes      
8 x" Z7 A0 R  o* N3 g3 V7 r[  4]   1.01-2.03   sec  8.22 MBytes  67.3 Mbits/sec    0    181 KBytes       * G6 p9 A% A. |2 F
[  4]   2.03-3.15   sec  8.75 MBytes  66.0 Mbits/sec    0    181 KBytes      
4 M% _+ _( i) _$ Y3 O. n' M6 |' I[  4]   3.15-4.04   sec  6.90 MBytes  65.0 Mbits/sec    0    181 KBytes       # N6 i  y9 x/ \/ H- ~' {9 o
[  4]   4.04-5.15   sec  8.70 MBytes  65.4 Mbits/sec    0    181 KBytes       5 E5 S; N, U7 O- f3 e
[  4]   5.15-6.10   sec  7.40 MBytes  65.5 Mbits/sec    0    181 KBytes       # b6 l" k& x4 B1 e9 B
[  4]   6.10-7.01   sec  7.37 MBytes  67.7 Mbits/sec    0    191 KBytes       0 I8 |7 E: q1 \: g
[  4]   7.01-8.16   sec  8.95 MBytes  65.6 Mbits/sec    0    191 KBytes       " J6 n, ?& k2 L0 U$ S
[  4]   8.16-9.02   sec  6.86 MBytes  66.5 Mbits/sec    0    191 KBytes      
. k; q4 N+ }! k* N[  4]   9.02-10.13  sec  8.73 MBytes  65.9 Mbits/sec    0    191 KBytes       * \5 h; j3 `3 E+ G* I- |
- - - - - - - - - - - - - - - - - - - - - - - - -* a9 y7 B" r# k+ W5 T* ]: }
[ ID] Interval           Transfer     Bandwidth       Retr
  Z( o; Y3 M* h# s[  4]   0.00-10.13  sec  79.4 MBytes  65.8 Mbits/sec    0             sender
; B! Z' I. h1 Y9 C* X; e[  4]   0.00-10.13  sec  79.4 MBytes  65.8 Mbits/sec                  receiver- W/ B; L  l% x7 F/ U& \, z

! V9 F, A$ K. N! I1 a( Qiperf Done.
/ o4 ?0 T4 W; [% z% K/ p5 ^" B~ # ps
# c9 ]- p- s* c& M  PID USER       VSZ STAT COMMAND; L3 c# k  P  A9 x0 j
    1 root       400 S    init
  t9 T) ?3 h$ o- _* Q; o9 Z) d6 A    2 root         0 SW   [kthreadd]
3 a0 P% p7 S' M  N5 _& [2 w    4 root         0 IW<  [kworker/0:0H]( z1 _5 O% X# s% e9 A: `) ^6 g
    6 root         0 IW<  [mm_percpu_wq]
/ i, p/ i' w8 X! U; P" Y    7 root         0 SW   [ksoftirqd/0]
  t8 {4 W3 ^# J* I    8 root         0 IW   [rcu_preempt]
) `1 O% O! @; ]1 C6 {    9 root         0 IW   [rcu_sched]$ y' `! g) ?8 B- z8 i' U* W. Q
   10 root         0 IW   [rcu_bh]
8 A9 H8 c- R) c0 w3 O( r   11 root         0 SW   [kdevtmpfs]) U2 U$ t1 s; o# t' I2 O
   12 root         0 SW   [rcu_tasks_kthre]& L0 y3 P  G1 I: w+ M; u  {# b
   14 root         0 IW<  [writeback]3 \; Z+ ^' i" c, O( l) c
   15 root         0 IW<  [crypto]
* N3 d2 h) s4 r  R9 d6 @   16 root         0 IW<  [kblockd]
( a9 k3 U) y. f$ S& H   17 root         0 IW<  [watchdogd]
8 n4 c* ^4 _6 s9 _   18 root         0 SW   [kswapd0]
% A4 _% |  g/ V; F& A! R7 G' v/ o   41 root         0 SW   [irq/17-40011000]% `& F$ M. p' k6 g8 K
   59 root       420 S    -sh
' V( n( F) Y7 t; r   60 root         0 IW   [kworker/u2:1]
1 ~8 [/ \7 k6 M- L% p% P8 K   61 root         0 IW   [kworker/u2:2]
% b+ w: w/ z0 M) U' L   64 root         0 IW   [kworker/0:2]
- I/ ?& |+ {6 [' f; ?. J   65 root         0 IW   [kworker/0:3]$ J0 F' V6 w; A2 k
   71 root         0 IW   [kworker/0:0]6 l4 k8 J% U( Q" c2 {' M( Q
   75 root       396 R    ps
yhangzzz 回答时间:2019-3-7 20:20:51
本帖最后由 yhangzzz 于 2019-3-7 20:26 编辑 & D1 t& d( T$ I( {9 K

4 L6 Y$ c2 w, V& u& K' c3 Q楼主,您好,看了您的贴子,手头正好有一块stm32f746-disco 的板子,按照您的思路,移植了uboot2016.09,移植了uboot eth驱动,因为没有移植MMC驱动,就打算把linux内核加载在SDRAM上,再从SDRAM启动内核;使用的是linux4.19.24默认的stm32配置,但是现在一直卡在“Starting kernel ...”,内核应该是没有起来;不知道您调试过程中是否遇到这个问题。附上打印的信息:1 D8 L; L- d* Z2 L% m* \

' M( ^) p7 W: k/ @3 mU-Boot 2016.09-g83ec55b-dirty (Feb 22 2019 - 18:30:58 +0800)4 H* j5 Z* X' D: E0 ^( G  Q

% H: D# \( A  A$ k1 NDRAM:  8 MiB: V% D$ R! Q! K7 Q! f, N0 I
WARNING: Caches not enabled! ~: u" }9 V  m! J* v5 m3 l( @
Flash: 1 MiB) j' c$ y; Y$ ]# L7 p
Using default environment
& F$ {5 x; A6 o- ^% m4 c3 {8 g9 _. Z6 C+ S+ Y% o; v4 _% ]( B2 S# ]
In:    serial_stm32x7
/ y5 P1 R" b  KOut:   serial_stm32x7
  F& e( w) u# U2 v/ B5 }8 e: bErr:   serial_stm32x7
' D7 a1 G8 F- e6 pNet:   
* m2 G# y1 w/ X' o  M* P3 G5 lstm32 eth probe start' C! u8 l+ f) D9 Q
stm32 eth probe end2 ^: z9 r0 g- \2 q
stm32_read_rom_hwaddr! t+ V7 G+ G$ v6 r
  }8 D0 p% j2 n  [! @
Warning: eth_stm32_eth using MAC address from ROM8 M& Z, {* r( ]4 T( r' @, ?4 `; i& [
eth0: eth_stm32_eth
8 O9 j* a- X# a: s+ {, G4 S. @6 `+ ystm32_write_hwaddr
% f0 |3 N# z6 N+ D+ d' y9 x3 [' V0 k9 F" w8 b
Hit SPACE in 3 seconds to stop autoboot.9 s& U" j( C3 j  |3 P/ L
U-Boot > set ipaddr 10.0.0.2' K! ~& a* ^; m- G% f" B/ O
U-Boot > set serverip 10.0.0.6
( ^: b3 Q( ~$ t2 c: _' yU-Boot > tftp c0400000 uImage.bin
) Q# L$ ~# }) F) X7 @0 E7 _9 Y
stm32_eth_stop start
  {* A/ g; y' g9 C4 \! J  y8 nstm32_eth_stop end
8 Y! J% R- k" c& G% m' n( ^5 K: H: h1 Z! J6 }' Z5 D! @" [
stm32_eth_start start& z7 X$ S' i! l* m( l: L- m
stm32_eth_start end
. L0 ~% U4 m( f2 H( _Using eth_stm32_eth device& U3 M7 d! q/ s2 k
TFTP from server 10.0.0.6; our IP address is 10.0.0.2
/ D$ i* f4 R, C$ c4 _' QFilename 'uImage.bin'., V5 d7 W/ E1 o( s) `5 p
Load address: 0xc0400000
6 d# m3 C8 T$ i- I7 O$ g' ^Loading: #################################################################
6 t- u$ v* |0 I* [$ P; ]         ###########################
1 @1 u4 s( {: J; s         2 MiB/s
" S3 x9 c* K6 s4 F3 w9 J$ M4 rdone+ H- S7 C( i/ P3 |% u# u; ^' e. d6 _
Bytes transferred = 1337888 (146a20 hex)
) u' X/ H6 X# M# P2 P& |$ M8 ^" ?6 V$ u" o
stm32_eth_stop start$ q8 P# H5 k2 B' ]) u. N
stm32_eth_stop end
2 f5 C! \! N* Q4 u2 |9 m" ~; `! VU-Boot > tftp c0600000 discodtb.bin
5 `/ ~% J0 n. B; l9 y& S; q$ p  w; y% R' {4 t
stm32_eth_stop start2 h- h! w9 B- q: d$ q3 o5 b# }
stm32_eth_stop end
! h+ f+ h" u9 ], V! _+ f
! k- v& E: G6 x6 G. ]' n* _- @stm32_eth_start start
9 \8 e, K3 b) K- m0 j. b! O1 Ystm32_eth_start end8 |& f/ p8 D1 T( m7 h
Using eth_stm32_eth device
2 l( |) w1 s; m, }TFTP from server 10.0.0.6; our IP address is 10.0.0.2
/ q6 U. A3 W; u; R- l0 |7 _0 HFilename 'discodtb.bin'.4 G+ P  O9 k$ A: n% F
Load address: 0xc0600000; T( S( G2 H7 U8 M4 ]
Loading: ##
" X6 D7 t/ C, ~: M- f         966.8 KiB/s
( z( E( T2 t3 b6 _done
2 `: {/ }1 B) i9 ?" rBytes transferred = 14858 (3a0a hex)) P( r+ L* l; Z1 J
" y/ {# T3 [2 ^7 t5 b- ]
stm32_eth_stop start
# q* I. e, K9 |0 Kstm32_eth_stop end+ O$ |0 P# i$ p
U-Boot > bootm c0400000 - c06000009 }+ r% b$ ~3 U6 {
## Booting kernel from Legacy Image at c0400000 ...- t. H8 W  ^) {6 c9 a) ]) }+ N
   Image Name:   Linux-4.19.24% y$ e1 v; d% `
   Image Type:   ARM Linux Kernel Image (uncompressed)
  {7 j4 n: U0 @8 ]   Data Size:    1337824 Bytes = 1.3 MiB
1 B4 P, j* W0 D   Load Address: c00080000 j9 H! j- f* A: Q
   Entry Point:  c00080002 A9 T- L& \; T% ?2 P
   Verifying Checksum ... OK* }. T( Z1 N3 W. J; V7 g, f4 E. H
## Flattened Device Tree blob at c0600000
. m& n6 A* }( y- J! b6 z) E* N   Booting using the fdt blob at 0xc0600000
1 l, w9 p: K+ E: L( R+ r   Loading Kernel Image ... OK
! g7 O6 F- o& |* t   Loading Device Tree to c07c7000, end c07cda09 ... OK
* c. G$ V1 V/ J/ T7 a' [7 F. q6 I% y" J. q- z! H; Y3 I. u
Starting kernel ...
" V# z5 t+ w1 l3 @' q% c7 `% z( \' E
# }' ~2 k; U! R8 U6 o2 A( a" |- W+ q1 w* r
stone-363407 回答时间:2018-11-25 11:03:43
eth 刚刚测试完成,只移植了UBOOT下的eth
2 H7 Z& _: O' y. v  J3 a2 V) h
+ l3 d% z. V+ D2 j$ }U-Boot 2018.09-rc2-g36b739b (Nov 25 2018 - 10:45:48 +0800): A2 X) i5 i+ \, p! n8 O* i

" E$ w4 p2 a( JModel: STMicroelectronics STM32H743i-EVAL board$ |' u# v0 G6 A
DRAM:  32 MiB
. |+ ~/ C4 r7 {) m7 sMMC:   STM32 SDMMC2: 0
& C- D& y* C8 ~) eIn:    serial@40011000
: s2 Z9 T; s% rOut:   serial@40011000
  b7 ]* D8 G; m8 bErr:   serial@40011000
" z6 d+ h4 d. V/ M1 O2 O1 UNet:   
4 Q  N( Y/ O  }7 U: c5 O# [7 k8 vWarning: ethernet@40028000 (eth0) using random MAC address - b6:1d:0e:15:99:e3% O1 z& b- J5 V( v! O5 M+ [: k: h
eth0: ethernet@40028000
# E7 {1 T- q" _Hit SPACE in 3 seconds to stop autoboot.
8 Q' V3 Z9 `+ qCard did not respond to voltage select!% P9 \) Z5 Y3 K4 o
U-Boot > tftpboot 0x60001000 192.168.1.103:u-boot.bin . p( L2 O" S$ I6 t2 S
ethernet@40028000 Waiting for PHY auto negotiation to complete... done! @+ S4 |. A' h- [
*** ERROR: `ipaddr' not set
7 v9 J7 r- y/ c2 Z, P9 m+ RU-Boot > set ipaddr 192.168.1.101;set serverip 192.168.1.1;set ethaddr d6:54:97:9f:9a:90;
+ P+ S+ C3 i) F. {) OU-Boot > tftpboot 0x60001000 192.168.1.103:u-boot.bin * A8 Z) K' _# Q7 M
ethernet@40028000 Waiting for PHY auto negotiation to complete... done) @: O1 m* S# @/ ^) F+ H+ X
Using ethernet@40028000 device8 q! _% D( p# h( I3 o% V* m  k; D
TFTP from server 192.168.1.103; our IP address is 192.168.1.101
2 f- E2 w1 b/ u- [& XFilename 'u-boot.bin'.( G# T1 |% b. S5 h
Load address: 0x60001000* J& l) P7 ^* p; \  D
Loading: ##################
: X" p0 _0 o; z$ P' J         1.8 MiB/s3 Y3 b/ T4 J" E' R. x$ S6 w7 X
done0 h( }- T, I$ Y) i3 y. p
Bytes transferred = 257336 (3ed38 hex)
9 C8 X$ \, j" R; JU-Boot > cmp.b 60001000 8000000 3ed38 / B9 Q5 A! F, c) P0 v$ J
Total of 257336 byte(s) were the same
  ?. _( H. W, F, a- E0 u. Z
5 d$ C5 c/ _; p. M0 r) S接下来看看kernel 咋能。
% E+ J7 Z" F$ y; G2 i
! R1 k# T3 T4 s: u说下eth dma 最大的注意事项,就是cache dma  ram  一致性,  卡了好个晚上,对于这个一致性,没有多少经验,希望大家给点经验指导下。
mzy2364 回答时间:2018-11-22 15:43:47
赞,这个厉害
andey 回答时间:2018-11-22 16:45:58
提示: 作者被禁止或删除 内容自动屏蔽
stone-363407 回答时间:2018-12-7 16:12:46
另外附上 uboot 下SD卡的速度
1 T! h+ I$ P. K) q5 ]$ d" |( @- ?/ i- o
switch to partitions #0, OK, x- e8 l/ G# Y9 a
mmc0 is current device# r6 f& ?9 L' V5 a
Scanning mmc 0:1...  I5 _; O0 W' \: f0 X9 ^& {
U-Boot > fatload mmc 0 60008000 uImage;fatload mmc 0 60800000 stm32h743i-eval.dtb
/ D4 |# \' g2 W+ l# q. \1926672 bytes read in 19 ms (96.7 MiB/s)8 N& D9 c& n8 m* C) P. j
9370 bytes read in 2 ms (4.5 MiB/s)/ z" j* l: L7 a2 F5 h
U-Boot >
STMWoodData 回答时间:2018-12-7 16:25:35
提示: 作者被禁止或删除 内容自动屏蔽
stone-363407 回答时间:2018-12-19 14:42:14
6#数据因为timer 不对所以数据不对 抱歉!!!
3111272 回答时间:2019-3-8 08:58:55
厉害厉害
stone-363407 回答时间:2019-3-12 21:14:54
yhangzzz 发表于 2019-3-7 20:20& T% E. g* j2 i# D$ T$ ^! W
楼主,您好,看了您的贴子,手头正好有一块stm32f746-disco 的板子,按照您的思路,移植了uboot2016.09,移 ...
" @1 |1 s5 V2 B5 m
请查看串口定义部分 高版本内核串口的定义不一样 ttys0 具体看下驱动代码
stone-363407 回答时间:2019-3-12 21:53:59
本帖最后由 stone-363407 于 2019-3-12 21:57 编辑
- w4 l9 l/ t* I( k3 D$ W& p5 ?3 i
yhangzzz 发表于 2019-3-7 20:20" c1 g' d/ z1 O) y( w
楼主,您好,看了您的贴子,手头正好有一块stm32f746-disco 的板子,按照您的思路,移植了uboot2016.09,移 ...
" N9 H3 a" l/ r9 {9 \7 }% o0 g
看下这个如果你用的内核版本是这样4 C2 C( o* H. x8 w
git\linux-4.19.9\drivers\tty\serial\stm32-usart.h) a' p: V: G% u6 E: G
9 G  A6 M: u/ v8 x9 Z, M9 h" a
#define _SERIAL_NAME "ttySTM"9 I( m2 I/ q, e; ]& k8 M
把这个    U-Boot > env set bootargs "root=/dev/ram console=ttyS0,115200 "
" ?  e  X% Z2 ?- J' R) j, V. V  i: V( X: a2 v' o: ?+ o

$ {8 D& |' V) P' W. ]+ f改成这个
6 d, y, j5 V# Y
% q4 C& C: _# ]. x1 W0 F4 E% m, Y

" s: |1 |. z; j* z6 p2 v2 Genv set bootargs "root=/dev/ram console=ttySTM,115200 "
$ A. @) m8 Q1 ^  y+ g6 }9 g/ m9 u' l. X0 ~
6 o. ]$ W& m  |: |2 p* B* ^
: q" R$ O$ Y2 m7 s1 K- ]
这个STM工程师比较那个,我也被坑了,各种分析,内存BUFF分析 等等 我就像骂一句 mmp
+ N2 A* i% K+ @; z, h
stary666 回答时间:2019-3-12 22:18:05
太牛了,,,,,,
yhangzzz 回答时间:2019-3-15 09:01:25
stone-363407 发表于 2019-3-12 21:53
4 f, g( Y3 [, F$ M9 q看下这个如果你用的内核版本是这样
9 s5 o/ ^" A$ N/ B* }3 Sgit\linux-4.19.9\drivers\tty\serial\stm32-usart.h

; `- c( k  U0 P* V3 n" A谢楼主啊,我回头试一下
yhangzzz 回答时间:2019-3-15 11:25:50
stone-363407 发表于 2019-3-12 21:53, ]8 Y7 h5 k2 u
看下这个如果你用的内核版本是这样, m# N8 ], X: ?% ]% z7 k
git\linux-4.19.9\drivers\tty\serial\stm32-usart.h

/ j# S. o) C7 v$ R% I楼主您好,linux内核确实是你说的那样,但是改了uboot的bootargs后,仍然不能在启动内核后打印信息。。。stm的工程师看来是只管写不管有没有用啊。。。
12下一页

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版