net: ksz9477: prepare ksz9477 without I2C support
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>
diff --git a/drivers/net/ksz9477.c b/drivers/net/ksz9477.c
index 82db533..1190b59 100644
--- a/drivers/net/ksz9477.c
+++ b/drivers/net/ksz9477.c
@@ -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 @@
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 @@
.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 @@
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 @@
}
break;
}
+#endif
default:
dev_err(dev, "invalid parent bus (%s)\n",
uclass_get_name(parent_id));