Hello All,
I am working on AM3715 based design (Android Froyo 2.2). Trying to get dm9000 LAN driver working.
I have done all the necessary HW settings for clocks, gpio's etc and verified with the scope.
My software settings in board-omap3evm.c are:
-------------------------------------------------------------------
#define OMAP3EVM_ETHR_START 0x2C000000
#define OMAP3EVM_ETHR_GPIO_IRQ 56
#define OMAP3EVM_DM9000_CS 3
static struct resource dm9k_resource[] = {
[0] = {
.start = OMAP3EVM_ETHR_START,
.end = (OMAP3EVM_ETHR_START + 3),
.flags = IORESOURCE_MEM,
},
[1] = {
.start = OMAP3EVM_ETHR_START + 0x8,
.end = OMAP3EVM_ETHR_START + 0x8 + 3,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = OMAP_GPIO_IRQ(OMAP3EVM_ETHR_GPIO_IRQ),
.end = OMAP_GPIO_IRQ(OMAP3EVM_ETHR_GPIO_IRQ),
.flags = (IORESOURCE_IRQ | IRQF_TRIGGER_HIGH),
},
};
static struct dm9000_plat_data dm9k_platdata = {
.flags = DM9000_PLATF_16BITONLY,
};
static struct platform_device device_dm9k = {
.name = "dm9000",
.id = 0,
.num_resources = ARRAY_SIZE(dm9k_resource),
.resource = dm9k_resource,
.dev = {
.platform_data = &dm9k_platdata,
}
};
-----------------------------------------------------------------------
* On EVM the SMSC911x module was connected to GPMC_NCS5, but in our design we are using GPMC_NCS3.
With these settings I am getting following error at the time of boot:
dm9000 Ethernet Driver, V1.31
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: read wrong id 0x2b2a2928
dm9000 dm9000.0: wrong id: 0x2b2a2928
dm9000 dm9000.0: not found (-19).
-------------------------------------------------------------------------
* Is it because I am not setting correct ethernet start address (As we are using CS3)? If yes how could I determine the address?
* Am I missing any settings?
Thanks,
-Ninad.