• Vladimir Oltean's avatar
    net: dsa: sja1105: use detected device id instead of DT one on mismatch · 0b0e2997
    Vladimir Oltean authored
    Although we can detect the chip revision 100% at runtime, it is useful
    to specify it in the device tree compatible string too, because
    otherwise there would be no way to assess the correctness of device tree
    bindings statically, without booting a board (only some switch versions
    have internal RGMII delays and/or an SGMII port).
    
    But for testing the P/Q/R/S support, what I have is a reworked board
    with the SJA1105T replaced by a pin-compatible SJA1105Q, and I don't
    want to keep a separate device tree blob just for this one-off board.
    Since just the chip has been replaced, its RGMII delay setup is
    inherently the same (meaning: delays added by the PHY on the slave
    ports, and by PCB traces on the fixed-link CPU port).
    
    For this board, I'd rather have the driver shout at me, but go ahead and
    use what it found even if it doesn't match what it's been told is there.
    
    [    2.970826] sja1105 spi0.1: Device tree specifies chip SJA1105T but found SJA1105Q, please fix it!
    [    2.980010] sja1105 spi0.1: Probed switch chip: SJA1105Q
    [    3.005082] sja1105 spi0.1: Enabled switch tagging
    Signed-off-by: default avatarVladimir Oltean <olteanv@gmail.com>
    Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    0b0e2997
sja1105_main.c 99.6 KB