Re: [PATCH net v1 1/1] net: dsa: microchip: KSZ9893: do not write to not supported Output Clock Control Register
From: Andrew Lunn <andrew@lunn.ch>
Date: 2022-07-28 13:34:47
Also in:
lkml
From: Andrew Lunn <andrew@lunn.ch>
Date: 2022-07-28 13:34:47
Also in:
lkml
On Thu, Jul 28, 2022 at 03:18:52PM +0200, Oleksij Rempel wrote:
KSZ9893 compatible chips do not have "Output Clock Control Register 0x0103". So, avoid writing to it. Fixes: 462d525018f0 ("net: dsa: microchip: move ksz_chip_data to ksz_common") Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> --- drivers/net/dsa/microchip/ksz9477.c | 4 ++++ 1 file changed, 4 insertions(+)diff --git a/drivers/net/dsa/microchip/ksz9477.c b/drivers/net/dsa/microchip/ksz9477.c index 5dff6c3279bb..c73bb6d383ad 100644 --- a/drivers/net/dsa/microchip/ksz9477.c +++ b/drivers/net/dsa/microchip/ksz9477.c@@ -198,6 +198,10 @@ int ksz9477_reset_switch(struct ksz_device *dev) ksz_write32(dev, REG_SW_PORT_INT_MASK__4, 0x7F); ksz_read32(dev, REG_SW_PORT_INT_STATUS__4, &data32); + /* KSZ9893 compatible chips do not support refclk configuration */ + if (dev->chip_id == KSZ9893_CHIP_ID) + return 0; +
Do you actually want to return -EINVAL? I assume this is being driven
by a DT property? And that property is not valid for this chip. So we
want to let the DT writer know. Question is, is there a backwards
compatibility issue? If this has always been silently ignored, and
there are DT with this property, do we want to break them.
Andrew