u-boot/board
Vladimir Oltean 7c2d5d1642 net: freescale: replace usage of phy-mode = "sgmii-2500" with "2500base-x"
After the discussion here:
https://lore.kernel.org/netdev/20210603143453.if7hgifupx5k433b@pali/

which resulted in this patch:
https://patchwork.kernel.org/project/netdevbpf/patch/20210704134325.24842-1-pali@kernel.org/

and many other discussions before it, notably:
https://patchwork.kernel.org/project/linux-arm-kernel/patch/1512016235-15909-1-git-send-email-Bhaskar.Upadhaya@nxp.com/

it became apparent that nobody really knows what "SGMII 2500" is.
Certainly, Freescale/NXP hardware engineers name this protocol
"SGMII 2500" in the reference manuals, but the PCS devices do not
support any "SGMII" specific features when operating at the speed of
2500 Mbps, no in-band autoneg and no speed change via symbol replication
. So that leaves a fixed speed of 2500 Mbps using a coding of 8b/10b
with a SERDES lane frequency of 3.125 GHz. In fact, "SGMII 2500 without
in-band autoneg and at a fixed speed" is indistinguishable from
"2500base-x without in-band autoneg", which is precisely what these NXP
devices support.

So it just appears that "SGMII 2500" is an unclear name with no clear
definition that stuck.

As such, in the Linux kernel, the drivers which use this SERDES protocol
use the 2500base-x phy-mode.

This patch converts U-Boot to use 2500base-x too, or at least, as much
as it can.

Note that I would have really liked to delete PHY_INTERFACE_MODE_SGMII_2500
completely, but the mvpp2 driver seems to even distinguish between SGMII
2500 and 2500base-X. Namely, it enables in-band autoneg for one but not
the other, and forces flow control for one but not the other. This goes
back to the idea that maybe 2500base-X is a fiber protocol and SGMII-2500
is an MII protocol (connects a MAC to a PHY such as Aquantia), but the
two are practically indistinguishable through everything except use case.

NXP devices can support both use cases through an identical configuration,
for example RX flow control can be unconditionally enabled in order to
support rate adaptation performed by an Aquantia PHY. At least I can
find no indication in online documents published by Cisco which would
point towards "SGMII-2500" being an actual standard with an actual
definition, so I cannot say "yes, NXP devices support it".

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2021-09-28 18:50:56 +03:00
..
abilis/tb100 reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
advantech arm: Remove dms-ba16 board 2021-04-10 07:57:29 -04:00
alliedtelesis ddr: marvell: a38x: add support for twin-die combined memory device 2021-02-26 10:22:29 +01:00
altera Merge branch '2021.04-rc' of https://github.com/lftan/u-boot 2021-01-15 07:55:11 -05:00
amarula/vyasa-rk3288 common: Move serial functions out of common.h 2019-12-02 18:23:11 -05:00
amlogic - odroid-n2: fix fdtfile suffix for n2-plus 2021-08-11 08:31:13 -04:00
AndesTech riscv: ae350: Switch to use binman to generate u-boot.itb 2021-05-19 17:01:51 +08:00
aries/mcvevk
aristainetos common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
armadeus/opos6uldev arm: Remove apf27 board 2021-04-10 07:59:35 -04:00
armltd ARM: integrator: Drop PCI support 2021-07-06 14:07:36 -04:00
aspeed configs: aspeed: Add defconfig for AST2600 EVB 2021-01-18 15:23:06 -05:00
astro/mcf5373l common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
atmark-techno/armadillo-800eva reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
atmel global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
avionic-design common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
beacon ARM: rmobile: Add missing rcar-common/common.c to Beacon RZG2M kit 2021-05-12 21:36:27 +02:00
beckhoff/mx53cx9020 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
birdland/bav335x arm: Remove bav335x board 2020-07-09 20:58:05 +05:30
bitmain/antminer_s9 xilinx: Introduce board_late_init_xilinx() 2020-04-27 13:57:17 +02:00
bluewater global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
bosch am335x, guardian: Enable panel driver Himax HX8238D 2021-07-15 17:56:03 +05:30
boundary/nitrogen6x common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
broadcom treewide: Convert macro and uses of __section(foo) to __section("foo") 2021-05-24 14:21:30 -04:00
bticino/mamoj common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
buffalo/lsxl bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
BuR brxre1: disable video after DM_VIDEO conversion deadline 2021-06-05 10:40:47 +02:00
BuS/eb_cpu5282 global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
cadence/xtfpga dm: Rename U_BOOT_DEVICE() to U_BOOT_DRVINFO() 2021-01-05 12:26:35 -07:00
calao/usb_a9263 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
CarMediaLab/flea3 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cavium/thunderx pci: Drop pci_init_board() 2021-08-06 08:26:48 -04:00
cei/cei-tk1-som
chipspark/popmetal_rk3288 common: Move some board functions out of common.h 2019-12-02 18:25:21 -05:00
cloudengines/pogo_e02 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cobra5272 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
compal/paz00 common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
compulab global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
comtrend
congatec arm: use the correct prototype for reset_cpu function 2021-07-28 19:30:22 -04:00
coreboot x86: coreboot: Use vendor in the Kconfig 2021-07-15 19:50:21 +08:00
cortina reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
cssi common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
CZ.NIC arm: mvebu: turris_omnia: fix leaked mtd device 2021-09-28 18:50:55 +03:00
d-link/dns325 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
davinci/da8xxevm MAINTAINERS: Update ARM TI entry 2021-09-09 11:28:54 -04:00
devboards/dbm-soc1
dfi x86: dfi: dfi-bt700: Remove dead code 2020-09-01 13:38:39 +08:00
dhelectronics ARM: imx6: Update dhelectronics/dh_imx6/MAINTAINERS file 2021-07-10 15:57:33 +02:00
ea lpc32xx: ea-lpc3250devkitv2: enable i2c (DM) 2021-07-06 14:12:15 -04:00
ebv/socrates
eets/pdu001 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
efi x86: efi: efi-x86_payload: Remove dead code 2020-09-01 13:38:39 +08:00
egnite/ethernut5 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
elgin/elgin_rv1108 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
embest/mx6boards ARM: embestmx6boards: convert mars/riot boards to DM_ETH 2021-04-08 20:29:54 +02:00
emulation Revert "efi_capsule: Move signature from DTB to .rodata" 2021-09-18 03:47:50 -06:00
engicam Rename SPL_POWER_SUPPORT to SPL_POWER 2021-07-28 14:27:54 -04:00
esd/meesc global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
firefly common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
freescale net: freescale: replace usage of phy-mode = "sgmii-2500" with "2500base-x" 2021-09-28 18:50:56 +03:00
friendlyarm dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
gardena common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
gateworks board: gateworks: venice: add board model to dt 2021-08-09 14:46:50 +02:00
gdsys global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
ge Taking over responsibility for GE boards from Sebastian 2021-09-28 18:50:55 +03:00
geekbuying/geekbox
google x86: coral: Allow booting from coreboot 2021-07-15 19:50:14 +08:00
grinn common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
hardkernel/odroid_go2 rockchip: board: add Hardkernel Odroid Go2 board 2020-07-22 20:21:23 +08:00
highbank arm: highbank: Update maintainership 2021-04-20 07:31:12 -04:00
hisilicon reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
hoperun/hihope-rzg2 arm: use the correct prototype for reset_cpu function 2021-07-28 19:30:22 -04:00
huawei/hg556a
ids/ids8313 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
imgtec ppc: malta: Drop use of DM_PCI 2021-08-05 19:46:35 -04:00
intel Merge branch 'next-socfpga' of https://github.com/tienfong/uboot_mainline 2021-08-25 08:23:42 -04:00
inversepath/usbarmory common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
iomega/iconnect common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
is1
isee common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
k+p bootstage: Eliminate when not enabled 2021-07-07 10:17:54 -04:00
keymile global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
kmc/kzm9g reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
kobol/helios4 arm: mvebu: Load U-Boot proper binary in SPL code based on kwbimage header 2021-07-31 09:59:58 +02:00
kontron/sl28 global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
kosagi/novena common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
l+g/vinco common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
LaCie arm: orion5x: edminiv2: change maintainer 2021-09-28 18:50:55 +03:00
lego/ev3 Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
lg/sniper sniper: Add build guards around MUSB support code 2021-07-07 22:22:42 -04:00
liebherr reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
logicpd common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
Marvell net: replace the "xfi" phy-mode with "10gbase-r" 2021-09-28 18:50:56 +03:00
maxbcm common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mediatek board: Add MT8183 pumpkin board support 2021-03-20 16:24:27 -04:00
menlo/m53menlo global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
microchip common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mikrotik/crs3xx-98dx3236 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mqmaker/miqi_rk3288
mscc common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
myir/mys_6ulx common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
netgear common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
nokia/rx51 Nokia RX-51: Add support for booting kernel in zImage format 2021-07-15 17:56:04 +05:30
novtech/meerkat96 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
nvidia Tegra: remove e2220-1170 board 2021-04-12 17:17:11 -04:00
olimex/mx23_olinuxino mx23_olinuxino: convert MMC to driver model 2021-04-08 23:59:50 +02:00
opalkelly/zynq arm: zynq: Remove low level UART setting 2020-01-14 09:05:53 +01:00
openpiton/riscv64 riscv: dts: add OpenPiton RISC-V board dts support 2021-07-07 20:34:02 +08:00
out4/o4-imx6ull-nano Add EV-iMX280-NANO-X-MB board 2021-06-09 13:32:49 +02:00
phytec Rename SPL_POWER_SUPPORT to SPL_POWER 2021-07-28 14:27:54 -04:00
phytium/durian reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
pine64 rockchip: Add initial support for the Pinebook Pro laptop from Pine64. 2020-05-31 22:22:07 +08:00
ppcag/bg0900 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
qca common: Drop init.h from common header 2020-05-18 17:33:33 -04:00
qualcomm board: dragonboard410c: Fix fastboot 2021-07-23 18:53:46 -04:00
radxa
raidsonic/ib62x0 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
raspberrypi/rpi rpi: Conditionally add simple-framebuffer node 2021-09-15 13:34:06 +02:00
renesas ARM: renesas: Mallocate bootparams on Gen3 2021-08-08 12:27:04 +02:00
rockchip board: rockchip: Add rk3568 evb support 2021-06-18 14:36:24 +08:00
ronetix First set of u-boot-atmel features for the 2021.10 cycle 2021-06-17 11:46:44 -04:00
sagem/f@st1704
samsung Merge https://source.denx.de/u-boot/custodians/u-boot-samsung 2021-08-03 09:07:01 -04:00
sandbox pytest: add sandbox test for "extension" command 2021-05-13 13:09:09 -04:00
Seagate arm: kirkwood: Goflex Home: Update board maintainer 2021-08-11 08:42:26 +02:00
seeed imx: Add SeeedStudio NPI-IMX6ULL Support 2021-06-09 13:34:18 +02:00
sfr/nb4_ser
siemens global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
sifive board: sifive: use ccache driver instead of helper function 2021-09-07 10:34:29 +08:00
silinux/ek874 arm: use the correct prototype for reset_cpu function 2021-07-28 19:30:22 -04:00
sipeed/maix k210: Don't imply CCF 2021-06-17 09:40:58 +08:00
socionext/developerbox pci: Drop DM_PCI 2021-09-13 18:23:13 -04:00
socrates ppc: socrates: Drop use of DM_PCI 2021-08-05 19:46:35 -04:00
softing arm: socfpga: vining: Let DWMAC configure PHY reset GPIO 2021-09-28 18:50:55 +03:00
solidrun arm: mvebu: Load U-Boot proper binary in SPL code based on kwbimage header 2021-07-31 09:59:58 +02:00
somlabs/visionsom-6ull i2c: Rename CONFIG_SYS_I2C to CONFIG_SYS_I2C_LEGACY 2021-07-28 14:29:37 -04:00
sr1500 common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
st arm: stm32mp: add defconfig for trusted boot with FIP 2021-08-16 09:36:31 +02:00
ste/stemmy board: stemmy: Copy atags for booting downstream/vendor kernel 2021-07-14 16:48:12 -04:00
storopack/smegw01 mx7d: Add Storopack's SMEGW01 board 2021-06-09 13:34:38 +02:00
sunxi sunxi: Select environment MMC based on boot device 2021-08-01 00:11:34 +01:00
Synology arm: mvebu: ds414: Auto-populate env if appropriate 2021-04-08 08:50:41 +02:00
synopsys global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
sysam common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
syteco/zmx25 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
tbs/tbs2910 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
tcl/sl50 Rename SPL_ETH_SUPPORT to SPL_ETH 2021-07-28 14:27:54 -04:00
technexion pico-imx6: README: Fix the boot mode settings URL 2021-06-09 13:33:45 +02:00
terasic
theadorable Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
theobroma-systems rockchip: rk3399-puma: Increase environment size to 16 kiB. 2021-03-30 16:53:00 +08:00
ti board: ti: am64x: Add support for fixing dr_mode while booting from USB 2021-09-10 20:10:20 -04:00
timll lpc32xx: Kconfig: switch to CONFIG_CONS_INDEX 2021-07-06 14:11:50 -04:00
topic/zynq board: topic-miami: Set FCLK1 to 150MHz 2020-06-24 13:11:08 +02:00
toradex doc: board: toradex: fix file names 2021-09-11 11:02:02 +02:00
tplink/wdr4300 treewide: Test on CONFIG_USB_HOST (or CONFIG_CMD_USB) not CONFIG_USB 2021-07-18 21:05:31 -04:00
tqc/tqma6 i2c: Rename CONFIG_SYS_I2C to CONFIG_SYS_I2C_LEGACY 2021-07-28 14:29:37 -04:00
udoo ARM: imx: udoo_neo: Convert to ethernet DM 2021-04-20 13:31:35 -04:00
vamrs/rock960_rk3399 rockchip: Remove ARCH= references from documentation 2020-06-02 17:27:04 -04:00
variscite/dart_6ul common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
varisys/common global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
vocore/vocore2 mips: Add support for SoM "VoCore2". 2020-04-27 20:30:14 +02:00
vscom/baltos Rename SPL_ETH_SUPPORT to SPL_ETH 2021-07-28 14:27:54 -04:00
wandboard MAINTAINERS: Use my personal e-mail address 2021-04-08 20:29:53 +02:00
warp warp: Use the correct symbol for CONFIG_IMX_HAB 2021-08-09 14:46:50 +02:00
warp7 MAINTAINERS: Use my personal e-mail address 2021-04-08 20:29:53 +02:00
work-microwave/work_92105 global: Convert simple_strtoul() with decimal to dectoul() 2021-08-02 13:32:14 -04:00
xen/xenguest_arm64 reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
xes/common pci: Drop pci_init_board() 2021-08-06 08:26:48 -04:00
xilinx xilinx: common: Enabling generic function for DT reselection 2021-08-26 08:14:43 +02:00
zyxel/nsa310s arm: kirkwood: NSA310S: Use Ethernet PHY name from device tree 2021-07-19 08:44:15 +02:00