public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Valentin BOUSSON <ml-ecos@belphegor.eu>
To: Jerzy Dyrda <jerzdy@gmail.com>, ecos-discuss@ecos.sourceware.org
Subject: [ECOS] Re: STM32F4 Discovery + LwIP
Date: Thu, 10 Apr 2014 13:20:00 -0000	[thread overview]
Message-ID: <53469AA0.60808@belphegor.eu> (raw)
In-Reply-To: <CABmKEG-1LBOsLy+44rCQrmFhmEVyKJffxJ3uscF6uSGGkUW7mg@mail.gmail.com>

Thanks for your help, but I have already tried this configuration,
then my problem may come from the way I use lwip stack.

I thought than once the program start, with nothing more than an empty 
main and the init phase of eCos, I would have all the necessary threads 
running for ARP or ping response (at least).

If you confirm me this behaviour, that's I'm missing something in my 
eCos config. Did you add anything in the initialisation phase ?

thanks.

Valentin BOUSSON



On 10/04/2014 13:53, Jerzy Dyrda wrote:
> Hello Valentin,
>
>
> On Thursday 10 of April 2014 11:37:53 you wrote:
>
>
>> I took into account all the modifications you make me do onto my ecos
>> build, and so I did :
>> - in my ecos.db, I added :
>> /
>> /
>> /target stm32f4discovery-bbext {/
>> / alias { "STMicroelectronics STM32F4-Discovery board with
>> DM-STF4BB extension board" }/
>> / packages {/
>> / CYGPKG_HAL_CORTEXM/
>> / CYGPKG_HAL_CORTEXM_STM32/
>> / CYGPKG_HAL_CORTEXM_STM32_STM32F4DISCOVERY/
>> / CYGPKG_IO_FLASH/
>> / CYGPKG_DEVS_FLASH_STM32/
>> / CYGPKG_IO_SERIAL_CORTEXM_STM32/
>> / CYGPKG_IO_ETH_DRIVERS/
>> / CYGPKG_DEVS_ETH_PHY/
>> / CYGPKG_DEVS_ETH_CORTEXM_STM32/
>> / }/
>> / description "The stm32f4discovery--bbext target provides the
>> packages needed/
>> / to run eCos on the STMicroelectronics STM32F4-Discovery board
>> with the DM-STF4BB (STM32F4DIS-EXT)."/
>> /}
>> /
> Genau.
>
>
>> /
>> /- in my current folder, I was able to generate a configuration with
>> this template, and I added the package concerning LWIP. My configuration
>> is linked to the mail.
>>
>> - I addedin
>> packages/hal/cortexm/stm32/stm32f4discovery/current/include/plf_io.h the
>> pins configurationJerzy gave me, and the custom driver.
> Genau.
>
>
>> If I understand
>> well, The type of PHY interface is MII, and we have to check the "MII
>> pins remapped".
> Nope. PHY interface type is RMII. So it has to be set RMII interface
> in ecc file:
>
>
> # Type of interface used to connect with PHY : MII or RMII
> #
> cdl_option CYGSEM_DEVS_ETH_CORTEXM_STM32_INTF {
> # Flavor: data
> user_value RMII
>
> # value_source user
> # Default value: RMII
> # Legal values: "MII" "RMII"
> };
>
> but please use graphical eCos Configuration Tool to fix it.
>
>> - Concerning the system initialization :
>> ""
>> John said :
>>
>> You might also be necessary to modify the the hal_system_init() function
>> in the STM32F4-Discovery platform HAL to setup the ethernet hardware.
>> Compare with the hal_system_init() function from the STM32x0G platform HAL.
>>
>> ""
>> Concerning this modification, I must admit I'm very new to such embedded
>> platform/systems (as you may have already noticed ;) ), and I don't
>> understand how I am supposed to adapt it. All those pin configuration,
>> clocks linking, etc.. are really obscure to me (for now).
>> Jerzy, how did you do ?
>> The only bunch of code that seems to be useful is concerning the PHY
>> should look like :
>>
>> #if defined(CYGHWR_HAL_CORTEXM_STM32_PHY_CLOCK_MCO)
>> // Use HSE clock as the MCO1 clock signals for PHY
>> {
>> cyg_uint32 acr;
>>
>> HAL_READ_UINT32(base + CYGHWR_HAL_STM32_RCC_CFGR, acr);
>> acr |= CYGHWR_HAL_STM32_RCC_CFGR_MCO1_HSE |
>> CYGHWR_HAL_STM32_RCC_CFGR_MCO1PRE_1;
>> HAL_WRITE_UINT32(base + CYGHWR_HAL_STM32_RCC_CFGR, acr);
>> }
>> #endif
>>
>> , right ? (I'm no Idea what I'm doing here :/)
> No, you don't need it. Clock for PHY is provided by on-board oscillator.
>
>> - I am trying to compile a simple program that use it, polling on tcp
>> connection, and I observe nothing. I observe no frame at all on the
>> wireshark interface plugged to the stm32. Do you have some advice to
>> test the low-level protocol, instead of the whole ip stack at once ?
> I use the same stuff i.e Wiresharke + ping ;)
>
>
> Best regards,
> jerzy
>
> 2014-04-10 11:37 GMT+02:00 Valentin BOUSSON <valentin@bousson.com>:
>> Hello John & Jerzy,
>>
>> I took into account all the modifications you make me do onto my ecos build,
>> and so I did :
>>   - in my ecos.db, I added :
>> /
>> /
>> /target stm32f4discovery-bbext {/
>> /        alias { "STMicroelectronics STM32F4-Discovery board with DM-STF4BB
>> extension board" }/
>> /        packages {/
>> /                CYGPKG_HAL_CORTEXM/
>> /                CYGPKG_HAL_CORTEXM_STM32/
>> /                CYGPKG_HAL_CORTEXM_STM32_STM32F4DISCOVERY/
>> /                CYGPKG_IO_FLASH/
>> /                CYGPKG_DEVS_FLASH_STM32/
>> /                CYGPKG_IO_SERIAL_CORTEXM_STM32/
>> /                CYGPKG_IO_ETH_DRIVERS/
>> /                CYGPKG_DEVS_ETH_PHY/
>> /                CYGPKG_DEVS_ETH_CORTEXM_STM32/
>> /        }/
>> /        description "The stm32f4discovery--bbext target provides the
>> packages needed/
>> /        to run eCos on the STMicroelectronics STM32F4-Discovery board with
>> the DM-STF4BB (STM32F4DIS-EXT)."/
>> /}
>> /
>>
>>
>> /
>> /- in my current folder, I was able to generate a configuration with this
>> template, and I added the package concerning LWIP. My configuration is
>> linked to the mail.
>>
>>
>> - I addedin
>> packages/hal/cortexm/stm32/stm32f4discovery/current/include/plf_io.h the
>> pins configurationJerzy gave me, and the custom driver. If I understand
>> well, The type of PHY interface is MII, and we have to check the "MII pins
>> remapped".
>>
>>
>>
>>
>> - Concerning the system initialization :
>> ""
>> John said :
>>
>>
>> You might also be necessary to modify the the hal_system_init() function
>> in the STM32F4-Discovery platform HAL to setup the ethernet hardware.
>> Compare with the hal_system_init() function from the STM32x0G platform HAL.
>>
>> ""
>> Concerning this modification, I must admit I'm very new to such embedded
>> platform/systems (as you may have already noticed ;) ), and I don't
>> understand how I am supposed to adapt it. All those pin configuration,
>> clocks linking, etc.. are really obscure to me (for now).
>> Jerzy, how did you do ?
>> The only bunch of code that seems to be useful is concerning the PHY should
>> look like :
>>
>> #if defined(CYGHWR_HAL_CORTEXM_STM32_PHY_CLOCK_MCO)
>>      // Use HSE clock as the MCO1 clock signals for PHY
>>      {
>>          cyg_uint32 acr;
>>
>>          HAL_READ_UINT32(base + CYGHWR_HAL_STM32_RCC_CFGR, acr);
>>          acr |= CYGHWR_HAL_STM32_RCC_CFGR_MCO1_HSE |
>>              CYGHWR_HAL_STM32_RCC_CFGR_MCO1PRE_1;
>>          HAL_WRITE_UINT32(base + CYGHWR_HAL_STM32_RCC_CFGR, acr);
>>      }
>> #endif
>>
>> , right ? (I'm no Idea what I'm doing here :/)
>>
>>
>> - I am trying to compile a simple program that use it, polling on tcp
>> connection, and I observe nothing. I observe no frame at all on the
>> wireshark interface plugged to the stm32. Do you have some advice to test
>> the low-level protocol, instead of the whole ip stack at once ?
>>
>>
>>
>> Thank you,
>> Valentin
>>
>>
>>
>>
>> On 25/03/2014 16:25, John Dallaway wrote:
>>> Hi Jerzy and Valentin
>>>
>>> On 25/03/14 12:34, Jerzy Dyrda wrote:
>>>
>>>> ... I have already brought up network interface on
>>>>
>>>> STM32F4DISCOVERY + DM-STF4BB (AFAIK this is original name of base
>>>> board from Embest, now as I see it's called STM32F4DIS-BB).
>>> Great! Maybe we can work together to get ethernet support for this
>>> platform added to the eCos repository. I think it would be preferable to
>>> define a new target such as "stm32f4discovery_bb" in ecos.db which
>>> includes the STM32 ethernet package. We can then make the necessary
>>> changes within the platform HAL source code conditional on
>>> CYGPKG_DEVS_ETH_CORTEXM_STM32. We need to bear in mind that some users
>>> of the STM32F4-Discovery board may wish to wire up a different PHY
>>> component rather than using STM32F4DIS-BB.
>>>
>>> John Dallaway
>>> eCos maintainer
>>> http://www.dallaway.org.uk/john
>>>


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

  parent reply	other threads:[~2014-04-10 13:20 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-25  8:28 [ECOS] " Valentin BOUSSON
2014-03-25 10:04 ` [ECOS] " John Dallaway
     [not found]   ` <CABmKEG8rHJqwf_PQp1ZH9e=fgwbK4hFOWJhv1SqaO6nBWQh1tA@mail.gmail.com>
2014-03-25 12:34     ` Jerzy Dyrda
2014-03-25 15:25       ` John Dallaway
2014-03-25 18:32         ` Jerzy Dyrda
2014-04-08 12:37           ` Valentin BOUSSON
     [not found]         ` <53466671.3050304@bousson.com>
     [not found]           ` <CABmKEG-1LBOsLy+44rCQrmFhmEVyKJffxJ3uscF6uSGGkUW7mg@mail.gmail.com>
2014-04-10 13:20             ` Valentin BOUSSON [this message]
     [not found]               ` <CABmKEG_ONPDk26UXzXxPLd==DDKMe7eGdX3FGWABgiffh_wGjQ@mail.gmail.com>
2014-04-11 15:00                 ` Valentin BOUSSON

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53469AA0.60808@belphegor.eu \
    --to=ml-ecos@belphegor.eu \
    --cc=ecos-discuss@ecos.sourceware.org \
    --cc=jerzdy@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).