This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Fw: How to correctly run SMSC LAN91C111 Driver by interrupt


Hi Laurie,

Thank you very much for prompt reply.

Sorry I abridged what-I-done.

I entered next packages in ecos.db file.
target mytarget {
       packages    { CYGPKG_HAL_SH
                     CYGPKG_HAL_SH_SH3
                     CYGPKG_HAL_SH_SH77X9_inserter
                     CYGPKG_DEVS_FLASH_SH_SE77X9
                     CYGPKG_DEVS_FLASH_AMD_AM29XXXXX
                     CYGPKG_DEVS_ETH_SMSC_LAN91CXX
                     CYGPKG_DEVS_ETH_SH_INSERTER
                     CYGPKG_IO_SERIAL_SH_inserter
                     CYGPKG_IO_SERIAL_SH_SCIF
                     CYGPKG_IO_ETH_DRIVERS
       }


I think CYGPKG_DEVS_ETH_SMSC_LAN91CXX, CYGPKG_DEVS_ETH_SH_INSERTER are necessary packages.

I think the names below (_eth_drv...) are missing the leading name i.e.
MyBoard_eth_drv and that's why you're having trouble.
This is new to me.Could you expound a little bit more.How I do it?

Thank you again.

Masahiro Ariga

----- Original Message -----
From: "Laurie.Gellatly" <laurie.gellatly@netic.com>
To: "ariga masahiro" <ariga@link-lab.co.jp>
Sent: Tuesday, May 29, 2007 2:08 PM
Subject: Re: [ECOS] How to correctly run SMSC LAN91C111 Driver by interrupt



Hi,
Its been a little while since I did this but I think what you are missing is
the CDL that included the SMSC9111 into your board as a target.
In the packagers directory there is a db file that has all the types of
boards eCos knows about. Compare a current target that uses the 9111 to the
definition for your board. They should be similar.
I'm not in front of my eCos to check but I think there was some addition CDL
that was specific to each target to add in the 9111 as well.
I think the names below (_eth_drv...) are missing the leading name i.e.
MyBoard_eth_drv and that's why you're having trouble.


If you start by copying the definitions (and directories) of a dev board
that is similar to yours and then modify it to suit you will probably find
that easier.


...Laurie:{)

--------- Original Message --------
From: ariga masahiro <ariga@link-lab.co.jp>
To: ecos-discuss@ecos.sourceware.org <ecos-discuss@ecos.sourceware.org>
Subject: [ECOS] How to correctly run SMSC LAN91C111 Driver by interrupt
Date: 28/05/07 05:50

Hi everyone,

Someone please help me.

I am trying to run SMSC LAN91C111 Ethernet Driver by interrupt
on own board.

I studied source if_lan91cxx.c and found next switching context

#ifndef CYGPKG_IO_ETH_DRIVERS_STAND_ALONE,

and concluded I must make CYGPKG_IO_ETH_DRIVERS_STAND_ALONE  '0'
in order to regisiter ISR etc.

I registered ISR into Vector Table.

When I Built,I confronted next errors.

/ecos-c/cygwin/home/LINK/inserter20070529-1_interrupt/untitled_install/lib/extras.o:

In function `do_exec':
/opt/ecos/ecos-2.0/packages/hal/sh/arch/v2_0/src/redboot_linux_exec.c:114:

undefined reference to `_eth_drv_dsr'
/opt/ecos/ecos-2.0/packages/hal/sh/arch/v2_0/src/redboot_linux_exec.c:83:
undefined reference to `_eth_drv_funs'

I infered they are concerned with eth_drv.c,and found eth_drv.c was
included
in next three directotries in eCos source tree.
C:/cygwin/opt/ecos/ecos-2.0/packages/ioeth/v2_0/src/lwip/eth_drv.c
C:/cygwin/optecos/ecos-2.0/packages/ioeth/v2_0/src/net/eth_drv.c
C:/cygwin/opt/ecos/ecos-2.0/packages/ioeth/v2_0/src/stand_alone/eth_drv.c

I am convinced that because I did not compile stand_alone,I confronted the

errors.

So,first I tried to include /net/eth_drv.c.
I found in order to include /net/eth_drv.c I must make CYGPKG_NET
available.
Then I was stuck in the mud.
I confronted Conflicting Errors continuously and couldn't even build
redboot.
I abandoned.

Then, I next tried to include /lwip/eth_drv.c.
In order to do that,I changed option parameter a bit.
I commented &quot;active_if&quot; line.

cdl_component CYGPKG_IO_ETH_DRIVERS_LWIP
##        active_if     CYGPKG_NET_LWIP

Then I could include /lwip/eth_drv.c,
but confronted next errors.
src/lwip/io_eth_eth_drv.o
/opt/ecos/ecos-2.0/packages/io/eth/v2_0/src/lwip/eth_drv.c
/opt/ecos/ecos-2.0/packages/io/eth/v2_0/src/lwip/eth_drv.c:70:29:
cyg/kernel/kapi.h: No such file or directory
/opt/ecos/ecos-2.0/packages/io/eth/v2_0/src/lwip/eth_drv.c:89: parse error

before &quot;delivery&quot;
/opt/ecos/ecos-2.0/packages/io/eth/v2_0/src/lwip/eth_drv.c:89: warning:
type
defaults to `int' in declaration of `delivery'

I am in predicament.

Please enlighten me what is correct way to run SMSC LAN91C111 Ethernet
Driver by interrupt.

Masahiro Ariga


-- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss



________________________________________________ Message sent using UebiMiau 2.7.9






--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]