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]

Re: Re: How to activate ethernet driver


Hello Dennis,

2015-04-09 15:08 GMT+02:00  <Incubus84@web.de>:

> In my debugger I can see the "stm32_netdev" structure, which seems to
> be filled correctly except for the "status". This is set to zero, for what I
> do not know if it is correct?
I also don't know but the most important issue is that "stm32_eth_init"
have to be called. But to achive it you have to have properly configured system.
Please look below.

> Anyway.. putting a breakpoint in the beginning of "stm32_eth_init" does
> not have any effect. The program does not stop!

> Any other suggestions?
Sorry for such basic question but do you have such packages like:
CYGPKG_IO_ETH_DRIVERS, network driver and so on?

BTW.
Maybe in this way it will be easier. Generally if I like to add
new eth/phy driver I create eCos configuration file with using template
usually "lwIP for Ethernet" and proper hardware target. After that
I didn't have any problem with "calling" eth/phy driver.

Could you provide information about your target?
Is it any known reference board?
Do you have HAL (BSP) for it?


> Gesendet: Donnerstag, 09. April 2015 um 14:15 Uhr
> Von: "Jerzy Dyrda" <jerzdy@gmail.com>
> An: "Dennis S" <Incubus84@web.de>
> Cc: "eCos Discussion" <ecos-discuss@ecos.sourceware.org>
> Betreff: Re: [ECOS] How to activate ethernet driver
> Hello Dennis,
>
> You have to add your PHY driver to the list in
> devs/eth/phy/current/cdl/phy_eth_drivers.cdl like that:
> cdl_option CYGHWR_DEVS_ETH_PHY_LAN8720A {
> display "SMSC LAN8720A"
> flavor bool
> default_value 0
> compile -library=libextras.a LAN8720A.c
> description "
> Include support for SMSC LAN8720A"
> }
>
> and after that of course choose it.
>
> Regarding ETH driver you have to provide such entry in an code of driver :
>
> ETH_DRV_SC(stm32_sc,
> &stm32_priv_data, // Driver specific data
> "eth0", // Name for this interface
> stm32_eth_start,
> stm32_eth_stop,
> stm32_eth_control,
> stm32_eth_can_send,
> stm32_eth_send,
> stm32_eth_recv,
> stm32_eth_deliver,
> stm32_eth_poll,
> stm32_eth_int_vector);
>
> NETDEVTAB_ENTRY(stm32_netdev,
> "stm32",
> stm32_eth_init,
> &stm32_sc);
> after that init() funtion (in my case stm32_eth_init,) will be called.
>
>
> Best regards,
> jerzy
>
> 2015-04-07 23:10 GMT+02:00 Dennis S <Incubus84@web.de>:
>> Good evening,
>> I have a question concerning the programming of the ethernet in eCos.
>>
>> The current state is, that I can use some existent functions for the
>> MAC of my Embedded System located in /devs/eth. They provide the
>> possibility to access the hardware via HAL_WRITE(). The init function
>> is used in the NETDEV_TAB macro.
>>
>> Additionally I wrote some drivers for the seperated PHY with the
>> obligatory "phy_stat" function. When I started debugging I was very
>> suprised, that either the init function of the mac nor some function
>> of the PHY driver was used (I set a brakpoint there and nothing
>> happens).
>>
>> So my question is: do I have to activate some other things to get
>> the ethernet work? What possibilities are there to check the result?
>> By the way: the plan is to use a third party TCP-stack later.
>>
>> Kind regards,
>> Dennis
>>
>> --
>> Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
>> and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
>>

-- 
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]