net: dsa: sja1105: fix dynamic access to L2 Address Lookup table for SJA1110
authorVladimir Oltean <vladimir.oltean@nxp.com>
Sun, 27 Jun 2021 14:27:08 +0000 (17:27 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Jun 2021 22:49:05 +0000 (15:49 -0700)
commit74e7feff0e22f054839c18b29658d33e7b2d8512
tree17195d7ce1e79453126e2526733b052e707fef30
parentf7458934b0791c39a001e4d902fc3bf697b439b5
net: dsa: sja1105: fix dynamic access to L2 Address Lookup table for SJA1110

The SJA1105P/Q/R/S and SJA1110 may have the same layout for the command
to read/write/search for L2 Address Lookup entries, but as explained in
the comments at the beginning of the sja1105_dynamic_config.c file, the
command portion of the buffer is at the end, and we need to obtain a
pointer to it by adding the length of the entry to the buffer.

Alas, the length of an L2 Address Lookup entry is larger in SJA1110 than
it is for SJA1105P/Q/R/S, so we need to create a common helper to access
the command buffer, and this receives as argument the length of the
entry buffer.

Fixes: 3e77e59bf8cf ("net: dsa: sja1105: add support for the SJA1110 switch family")
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/sja1105/sja1105_dynamic_config.c