|
@@ -28,6 +28,7 @@
|
|
|
#include <linux/clocksource.h>
|
|
|
#include <linux/clockchips.h>
|
|
|
#include <linux/io.h>
|
|
|
+#include <linux/smc911x.h>
|
|
|
|
|
|
#include <asm/system.h>
|
|
|
#include <mach/hardware.h>
|
|
@@ -125,6 +126,12 @@ int realview_flash_register(struct resource *res, u32 num)
|
|
|
return platform_device_register(&realview_flash_device);
|
|
|
}
|
|
|
|
|
|
+static struct smc911x_platdata realview_smc911x_platdata = {
|
|
|
+ .flags = SMC911X_USE_32BIT,
|
|
|
+ .irq_flags = IRQF_SHARED,
|
|
|
+ .irq_polarity = 1,
|
|
|
+};
|
|
|
+
|
|
|
static struct platform_device realview_eth_device = {
|
|
|
.name = "smc911x",
|
|
|
.id = 0,
|
|
@@ -136,6 +143,8 @@ int realview_eth_register(const char *name, struct resource *res)
|
|
|
if (name)
|
|
|
realview_eth_device.name = name;
|
|
|
realview_eth_device.resource = res;
|
|
|
+ if (strcmp(realview_eth_device.name, "smc911x") == 0)
|
|
|
+ realview_eth_device.dev.platform_data = &realview_smc911x_platdata;
|
|
|
|
|
|
return platform_device_register(&realview_eth_device);
|
|
|
}
|