smc911x: how to call the driver?
Hi,
on our board a SMSC LAN9215i is connected to an i.MX31 ARM processor. My hope is to get the smc911x driver run on this chip. The LAN921x data sheets say that existing 911x drivers should work.
The first I had to patch was the Kconfig file, in which the smc911x driver is only available on PXA architecture:
- depends on NET_ETHERNET && ARCH_PXA
+ depends on NET_ETHERNET && (ARCH_PXA || ARCH_MXC)
So the driver got at least compiled.
My next problem is:
Where and when get the functions smc911x_drv_probe() and smc911x_init() called? Any hints?
Thank you in advance.
Best Regards,
Jens
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Jens" == Jens Gehrlein <[email protected]> writes:
Jens> Hi,
Jens> on our board a SMSC LAN9215i is connected to an i.MX31 ARM Jens> processor. My hope is to get the smc911x driver run on this chip. The Jens> LAN921x data sheets say that existing 911x drivers should work.
Why are you asking this in a powerpc list?
Jens> My next problem is:
Jens> Where and when get the functions smc911x_drv_probe() and Jens> smc911x_init() called? Any hints?
You need to register a struct platform_device in your platform code, E.G. something like:
static struct resource smc911x_resources[] = {
[0] = {
.start = 0x8e000000,
.end = 0x8e0000ff,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = 4,
.end = 4,
.flags = IORESOURCE_IRQ,
},
};static struct platform_device thinlite_eth = {
.name = "smc911x",
.id = 0,
.num_resources = ARRAY_SIZE(smc911x_resources),
.resource = smc911x_resources,};
And then do a platform_add_devices with it.
Signature · 1 line
Bye, Peter Korsgaard
Hi Peter,
thank you for responding.
Quoted 8 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Jens" == Jens Gehrlein <[email protected]> writes:
Jens> Hi,
Jens> on our board a SMSC LAN9215i is connected to an i.MX31 ARM Jens> processor. My hope is to get the smc911x driver run on this chip. The Jens> LAN921x data sheets say that existing 911x drivers should work.Why are you asking this in a powerpc list?
Uuh, sorry. In the haste I just read "embedded". Actually, my question isn't processor related. Rather it's (network) device driver related. Could you recommend a mailing list for this?
Quoted 20 lines
Jens> My next problem is:
Jens> Where and when get the functionssmc911x_drv_probe()and Jens>smc911x_init()called? Any hints?You need to register a struct
platform_devicein your platform code, E.G. something like:static struct resource smc911x_resources[] = { [0] = { .start = 0x8e000000, .end = 0x8e0000ff, .flags = IORESOURCE_MEM, }, [1] = { .start = 4, .end = 4, .flags = IORESOURCE_IRQ, }, };
Quoted 8 lines
static struct
platform_devicethinlite_eth= {.name = "smc911x", .id = 0, .num_resources = ARRAY_SIZE(smc911x_resources), .resource = smc911x_resources,};
And then do a
platform_add_deviceswith it.
Mmmh, this is all new to me. I'll try to get through it and perhaps we'll meet on the other mailinglist again.
Thank you very much so far.
Best Regards,
Jens
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Jens" == Jens Gehrlein <[email protected]> writes:
Hi,
Jens> on our board a SMSC LAN9215i is connected to an i.MX31 ARM Jens> processor. My hope is to get the smc911x driver run on this chip. The Jens> LAN921x data sheets say that existing 911x drivers should work.
Quoted 2 lines
Quoted 2 lines
Why are you asking this in a powerpc list?
Jens> Uuh, sorry. In the haste I just read "embedded". Actually, my question Jens> isn't processor related. Rather it's (network) device driver related. Jens> Could you recommend a mailing list for this?
[email protected] (see http://vger.kernel.org/vger-lists.html).
Signature · 1 line
Bye, Peter Korsgaard