设备树替换
: o/ Y$ }) S% p/ iSeeed在出厂烧录的固件中挂载的设备树为stm32mp1-seeed-npi-base.dtb,默认情况下此设备树是不支持Wi-Fi的,如需使用Wifi功能就需要挂载stm32mp1-seeed-npi-full.dtb这个设备树。8 Y: R/ s# L1 Z1 C: C* ]
0 Y; x8 ~+ T8 Y) u0 M
直接修改uEnv.txt文件,此文件会在uboot引导Linux内核的时候主动去加载/boot/dtbs/4.19.9-stm32-r1目录下指定的设备树文件。+ G1 ?# k7 J7 \# U5 _
4 y4 [/ m1 A0 O
1.打开uEnv.txt9 A% U% q+ U0 A$ m' i
vim /boot/uEnv.txt" {% b% m( @5 t! a6 ]" D
7 k r% |7 A+ P; a6 J
2.编辑uEnv.txt文件将dtb修改为stm32mp1-seeed-npi-full.dtb) o9 v2 Q0 n R7 Z2 t( ?, i# V
* \) w" c0 v) `2 Z8 Q9 H9 _- uname_r=4.19.9-stm32-r11 ^, g! y- h; {9 l
- #uuid=
. I6 ]- K* @3 r z, o- [1 L - dtb=stm32mp1-seeed-npi-full.dtb ##修改此处
8 ]# |. r8 Y% T3 }& U
) G$ H0 y; U" \* w( a. t; M- ###U-Boot Overlays###
- K' X* ]7 x; i4 h0 O% g - , ^7 n- T4 d" z* K' I5 k
- ###Master Enable
1 K$ n Q. y/ C; ?; y( k - enable_uboot_overlays=1( k. b9 n- g& y1 j" T- _
- ###
g0 o( y0 m6 ? z R. s; i - ###custom overlays: m$ f& Z# O# @: o; L+ n( V# J
- uboot_overlay_addr0=/lib/firmware/stm32mp1-seeed-pwm-overlay.dtbo3 F( N! ]1 b7 d! I& g7 P
" W* U( E% H8 G& r
, P4 y% q3 ?3 k' s" M: Q- #uboot_overlay_addr0=/lib/firmware/<file0>.dtbo# O5 `9 G* ]- _: B& o0 E" X
- #uboot_overlay_addr1=/lib/firmware/<file1>.dtbo* |5 v9 q4 R$ Z- l) E$ t, }
- #uboot_overlay_addr2=/lib/firmware/<file2>.dtbo& n+ Z& [- Z4 j) [' o9 k; {) U
- #uboot_overlay_addr3=/lib/firmware/<file3>.dtbo
9 e B; e# ? K7 u0 j - #uboot_overlay_addr4=/lib/firmware/<file4>.dtbo& g( }1 ]* T1 U1 _8 l0 s+ G
- #uboot_overlay_addr5=/lib/firmware/<file5>.dtbo
' [) F" n5 c; F- Y - #uboot_overlay_addr6=/lib/firmware/<file6>.dtbo
. Z8 n9 s6 r v6 n! i! R - #uboot_overlay_addr7=/lib/firmware/<file7>.dtbo
+ n0 L2 }; D6 D3 r1 Q8 ] - ###
/ w4 m* q; V! X7 M: H. l - ###U-Boot fdt tweaks... (60000 = 384KB)! q9 P" x8 X/ M ?- m' k
- #uboot_fdt_buffer=0x60000- D# I! h7 @0 c$ ?
- ###U-Boot Overlays###
$ s1 D3 Z% f) f. l. [, `4 X; c: X4 [ - , S; w% |+ ^0 m/ t% k6 o( l6 q7 M
- cmdline=coherent_pool=1M net.ifnames=0 quiet# U) `3 j% _+ q3 Q0 W$ O) U) u
* d. u. G, L5 O7 A/ |7 U! h- #In the event of edid real failures, uncomment this next line:* M8 q( |: a, h/ o9 Y6 ~; f; m2 X9 ^
- #cmdline=coherent_pool=1M net.ifnames=0 quiet video=HDMI-A-1:1024x768@60e
9 l. v( X: \0 b* @4 N
' f) C t, H5 l2 v p- K! U$ k- #Use an overlayfs on top of a read-only root filesystem:
! c' c' }2 W4 Y8 P9 x. E7 Y: z: t - #cmdline=coherent_pool=1M net.ifnames=0 quiet overlayroot=tmpfs t; x" C4 j- b5 z- y- D; G% {
- . y; {9 J+ ]8 b% _* ^6 W6 x
- ##enable Generic eMMC Flasher:& x- k" V7 a% }9 X+ Y! N J
- ##make sure, these tools are installed: dosfstools rsync
s6 a9 b/ G2 n$ R: m - #cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3-stm32mp1.sh
7 R( ?; W/ D' _9 U0 U3 a# V1 r. V, o4 v - ; W' l* J6 Y6 F; M
- + D8 d1 V) l% i `) d& T: W
- # specify kernel eth0 mac address+ H6 l+ `) _ q# J. w+ [4 X: K
- ethaddr=42:9a:42:e1:f7:23
复制代码
* s$ G0 r/ G" @$ \1 S- e* u) Q3 uWi-Fi连接2 n, ]% z0 u4 a0 ] w5 ?
- robot@ev3dev:~$ sudo connmanctl
$ W9 p+ E" C3 u) X - Error getting VPN connections: The name net.connman.vpn was not provided by any- q& m- w) V9 U3 l& f w/ n
- connmanctl> enable wifi
7 ]8 Y2 }" [8 q+ k1 o - Enabled wifi
' n3 J9 F8 Q0 S s# ?5 @ - connmanctl> scan wifi
* V; v, c1 x! [) L B5 q5 C - Scan completed for wifi" |" l) p8 o+ o8 \; P- q) j
- connmanctl> services
2 u5 ]5 }3 j) w D. A - *AO Wired ethernet_b827ebbde13c_cable/ J- ^# [9 V) A# n5 d( H8 |- ]
- wifi_e8de27077de3_hidden_managed_none
# P' ?5 E' j; H* Q( w - AH04044914 wifi_e8de27077de3_41483034303434393134_managed_psk4 V) h1 \6 C& m
- Frissie wifi_e8de27077de3_46726973736965_managed_psk' @9 |; e! m: X
- ruijgt gast wifi_e8de27077de3_7275696a67742067617374_managed_psk7 n% i6 ~* _* D0 {1 F/ x2 E, r; e8 I
- schuur wifi_e8de27077de3_736368757572_managed_psk: f# U, ]- b/ p3 g
- connmanctl> agent on
# Y T( k1 A7 s! ~4 L - Agent registered
3 O- @4 x3 b1 ^( y; N2 d - connmanctl> connect wifi_e8de27077de3_41483034303434393134_managed_psk ##对应的wifi名称的实际编码0 Q* t; S( _- a8 v: D0 J, d
- Agent RequestInput wifi_e8de27077de3_41483034303434393134_managed_psk: W7 ?; w! }/ v3 ?5 z
- Passphrase = [ Type=psk, Requirement=mandatory ]; K/ N$ l% k6 d0 G$ r6 m. z/ h
- Passphrase? ************* ##wifi密码& y- q; ?, A& F- Q( `8 H5 O* Q* V( c1 q
- Connected wifi_e8de27077de3_41483034303434393134_managed_psk0 E/ G6 v! `7 P. f- ^3 h
- connmanctl> quit
复制代码
4 d @+ v( |; E- H `! n我们可以使用下面的指令来找到ODYSSEY – STM32MP157C的IP地址:% b' `- t6 S4 y7 t3 V
% C: f3 [6 R: n0 j2 U, K* J1 W1 c9 Q/ c
————————————————
$ f1 _4 q$ P) A( {5 P! Q6 _2 {版权声明:Argon_Ghost
' ?2 }" d# W: M( _# d
+ B% j4 \/ i8 i" _9 c4 x" P |