]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
net: ksz9477: prepare ksz9477 without I2C support
authorRomain Naour <romain.naour@smile.fr>
Tue, 8 Oct 2024 07:54:31 +0000 (09:54 +0200)
committerTom Rini <trini@konsulko.com>
Sun, 27 Oct 2024 16:19:44 +0000 (10:19 -0600)
With the upcoming ksz9477 SPI support added, the I2C support
will be optional. Either the I2C or the SPI bus will be used.

For now, DM_I2C is still mandatory.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
drivers/net/ksz9477.c

index 82db533c4ec1c98505ef6eb333c0e0fae1510e84..1190b591fcb803f872fc52a8c0ce4d9ab4d7c0e8 100644 (file)
@@ -11,7 +11,9 @@
 #include <eth_phy.h>
 #include <linux/delay.h>
 #include <miiphy.h>
-#include <i2c.h>
+#if CONFIG_IS_ENABLED(DM_I2C)
+# include <i2c.h>
+#endif
 #include <net/dsa.h>
 
 #include <asm-generic/gpio.h>
@@ -105,6 +107,7 @@ struct ksz_dsa_priv {
        u32 features;                   /* chip specific features */
 };
 
+#if CONFIG_IS_ENABLED(DM_I2C)
 static inline int ksz_i2c_read(struct udevice *dev, u32 reg, u8 *val, int len)
 {
        return dm_i2c_read(dev, reg, val, len);
@@ -119,6 +122,7 @@ static struct ksz_phy_ops phy_i2c_ops = {
        .read = ksz_i2c_read,
        .write = ksz_i2c_write,
 };
+#endif
 
 static inline int ksz_read8(struct udevice *dev, u32 reg, u8 *val)
 {
@@ -587,6 +591,7 @@ static int ksz_probe(struct udevice *dev)
 
        parent_id = device_get_uclass_id(dev_get_parent(dev));
        switch (parent_id) {
+#if CONFIG_IS_ENABLED(DM_I2C)
        case UCLASS_I2C: {
                ksz_ops_register(dev, &phy_i2c_ops);
 
@@ -597,6 +602,7 @@ static int ksz_probe(struct udevice *dev)
                }
                break;
        }
+#endif
        default:
                dev_err(dev, "invalid parent bus (%s)\n",
                        uclass_get_name(parent_id));