Message ID | 20200905140325.108846-2-pbarker@konsulko.com |
---|---|
State | Changes Requested |
Delegated to: | David Miller |
Headers | show |
Series | ksz9477 dsa switch driver improvements | expand |
On Sat, Sep 05, 2020 at 03:03:22PM +0100, Paul Barker wrote: > To make switch detection more informative print the result of the > ksz9477/ksz9893 compatibility check. With debug output enabled also > print the contents of the Chip ID registers as a 40-bit hex string. > > As this detection is the first communication with the switch performed > by the driver, making it easy to see any errors here will help identify > issues with SPI data corruption or reset sequencing. > > Signed-off-by: Paul Barker <pbarker@konsulko.com> > --- > 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 3cb22d149813..a48f5edab561 100644 > --- a/drivers/net/dsa/microchip/ksz9477.c > +++ b/drivers/net/dsa/microchip/ksz9477.c > @@ -13,6 +13,7 @@ > #include <linux/if_bridge.h> > #include <net/dsa.h> > #include <net/switchdev.h> > +#include <linux/printk.h> It is not often you see that include. linux/kernel.h includes it anyway, and given how few files include printk.h, i doubt it will ever be removed from kernel.h Andrew
diff --git a/drivers/net/dsa/microchip/ksz9477.c b/drivers/net/dsa/microchip/ksz9477.c index 3cb22d149813..a48f5edab561 100644 --- a/drivers/net/dsa/microchip/ksz9477.c +++ b/drivers/net/dsa/microchip/ksz9477.c @@ -13,6 +13,7 @@ #include <linux/if_bridge.h> #include <net/dsa.h> #include <net/switchdev.h> +#include <linux/printk.h> #include "ksz9477_reg.h" #include "ksz_common.h" @@ -1426,10 +1427,12 @@ static int ksz9477_switch_detect(struct ksz_device *dev) /* Default capability is gigabit capable. */ dev->features = GBIT_SUPPORT; + dev_dbg(dev->dev, "Switch detect: ID=%08x%02x\n", id32, data8); id_hi = (u8)(id32 >> 16); id_lo = (u8)(id32 >> 8); if ((id_lo & 0xf) == 3) { /* Chip is from KSZ9893 design. */ + dev_info(dev->dev, "Found KSZ9893\n"); dev->features |= IS_9893; /* Chip does not support gigabit. */ @@ -1438,6 +1441,7 @@ static int ksz9477_switch_detect(struct ksz_device *dev) dev->mib_port_cnt = 3; dev->phy_port_cnt = 2; } else { + dev_info(dev->dev, "Found KSZ9477 or compatible\n"); /* Chip uses new XMII register definitions. */ dev->features |= NEW_XMII;
To make switch detection more informative print the result of the ksz9477/ksz9893 compatibility check. With debug output enabled also print the contents of the Chip ID registers as a 40-bit hex string. As this detection is the first communication with the switch performed by the driver, making it easy to see any errors here will help identify issues with SPI data corruption or reset sequencing. Signed-off-by: Paul Barker <pbarker@konsulko.com> --- drivers/net/dsa/microchip/ksz9477.c | 4 ++++ 1 file changed, 4 insertions(+)