smsc911x: add dynamic bus configuration
Convert the driver to select 16-bit or 32-bit bus access at runtime,
at a small performance cost.
Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/include/linux/smsc911x.h b/include/linux/smsc911x.h
index 47c4ffd..1cbf031 100644
--- a/include/linux/smsc911x.h
+++ b/include/linux/smsc911x.h
@@ -28,6 +28,7 @@
struct smsc911x_platform_config {
unsigned int irq_polarity;
unsigned int irq_type;
+ unsigned int flags;
phy_interface_t phy_interface;
};
@@ -39,4 +40,8 @@
#define SMSC911X_IRQ_TYPE_OPEN_DRAIN 0
#define SMSC911X_IRQ_TYPE_PUSH_PULL 1
+/* Constants for flags */
+#define SMSC911X_USE_16BIT (BIT(0))
+#define SMSC911X_USE_32BIT (BIT(1))
+
#endif /* __LINUX_SMSC911X_H__ */