mirror of
https://github.com/hanwckf/immortalwrt-mt798x.git
synced 2025-01-07 01:53:34 +08:00
mvebu: Turris Omnia: use SFP module, if present
Follow the recommendations stated in the Turris Omnia DTS for eth2: "In case SFP module is present, U-Boot has to enable the sfp node above, remove phy-handle property, and add managed = "in-band-status" property." The boot script is written in a way, that it works for all U-Boot versions deployed by the vendor so far (2015.10-rc2, 2019.07). Reviewed-by: Noci <noci@noci.work> Reviewed-by: Justin van Steijn <jvs@fsfe.org> Reviewed-by: Nico Rikken <nico@nicorikken.eu> Reviewed-by: Julius Schwartzenberg <julius.schwartzenberg@gmail.com> Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com> (cherry picked from commit 23d2690e5a5410576b587bc96e2c2cf5fc693927)
This commit is contained in:
parent
24e564d327
commit
5e2a2b086c
@ -11,7 +11,22 @@ else
|
||||
fi
|
||||
setenv bootargs earlyprintk console=ttyS0,115200 root=${rootdev} rootfstype=auto rootwait
|
||||
|
||||
# Load and boot
|
||||
# Load device tree and prepare for modification
|
||||
load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} @DTB@.dtb
|
||||
fdt addr ${fdt_addr_r}
|
||||
fdt resize
|
||||
|
||||
# Enable SFP cage, if module is present
|
||||
i2c dev 0
|
||||
i2c mw 0x70 0.0 0xf
|
||||
i2c read 0x71 0 1 0x00fffff1
|
||||
setexpr.b mod_def0 *0x00fffff1 \& 0x10
|
||||
if test ${mod_def0} -eq 0; then
|
||||
fdt set /sfp status okay
|
||||
fdt rm /soc/internal-regs/ethernet@34000 phy-handle
|
||||
fdt set /soc/internal-regs/ethernet@34000 managed in-band-status
|
||||
fi
|
||||
|
||||
# Load kernel and boot
|
||||
load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} zImage
|
||||
bootz ${kernel_addr_r} - ${fdt_addr_r}
|
||||
|
Loading…
x
Reference in New Issue
Block a user