Subject: Re: smc911x: how to call the driver?

From: Peter Korsgaard <[email-masked]>
Date: Wed, 14 May 2008 09:07:24 +0200

>>>>> "Jens" == Jens Gehrlein <[email-masked]> 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.

-- 
Bye, Peter Korsgaard