This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: Fw: How to correctly run SMSC LAN91C111 Driver by interrupt
- From: Sergei Gavrikov <w3sg at SoftHome dot net>
- To: ariga masahiro <ariga at link-lab dot co dot jp>
- Cc: ecos-discuss at ecos dot sourceware dot org
- Date: Tue, 29 May 2007 10:44:41 +0300
- Subject: Re: [ECOS] Fw: [ECOS] How to correctly run SMSC LAN91C111 Driver by interrupt
- References: <004e01c7a1bf$113b6880$1c0110ac@ariga>
Ð ÐÑÑ, 29/05/2007 Ð 16:00 +0900, ariga masahiro ÐÐÑÐÑ:
> 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.
Laurie did talk you what you need to implemet own LAN91CXX wrapper, i.e.
you have to implement the same thing (for example) for your own board:
$ECOS_REPOSITORY/devs/eth/arm/flexanet
grep LAN91 $ECOS_REPOSITORY/ecos.db for more examples. AFAIK, all needed
things to implement such a wrapper will be placed here
$ECOS_REPOSITORY/devs/eth
-- Sergei
>
> 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 "active_if" 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 "delivery"
> >>> /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