From: Vladimir Oltean <olte...@gmail.com> Date: Wed, 22 Jul 2020 11:08:57 +0300
> From: Vladimir Oltean <vladimir.olt...@nxp.com> > > The VSC7514 is marketed as a 10-port switch, however it has 11 physical > ports (0->10) in the block diagram: > https://www.microsemi.com/product-directory/ethernet-switches/3992-vsc7514 > (also in the device tree at arch/mips/boot/dts/mscc/ocelot.dtsi) > > Additionally, by architecture it has one more entry in the analyzer > block, situated right after the physical ports, for the CPU port module. > This is not a physical port, it only represents a channel for frame > injection and extraction. That entry for the CPU port is at index 11 in > the analyzer. > > When the register groups for QSYS_SWITCH_PORT_MODE, SYS_PORT_MODE and > SYS_PAUSE_CFG are declared to be replicated 11 times, the 11th entry in > the array of regfields is not initialized, so the CPU port module is not > initialized either. > > The documentation of QSYS_SWITCH_PORT_MODE for VSC7514 also says that > this register group is replicated 12 times, so this patch is simply > reflecting that and not introducing any further inconsistency. > > Fixes: 886e1387c73d ("net: mscc: ocelot: convert QSYS_SWITCH_PORT_MODE and > SYS_PORT_MODE to regfields") > Fixes: 541132f0961a ("net: mscc: ocelot: convert SYS_PAUSE_CFG register > access to regfield") > Reported-by: Bryan Whitehead <bryan.whiteh...@microchip.com> > Signed-off-by: Vladimir Oltean <vladimir.olt...@nxp.com> Applied.