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.

Reply via email to