This is the mail archive of the ecos-discuss@sources.redhat.com 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: ecosynth using real eth


>>>>> "Philippe" == Philippe Moutarlier <Philippe.Moutarlier@attbi.com> writes:

    Philippe> Ok, I am almost there with my synthetic target. I got
    Philippe> the ping_test to compile and run using real eth1.

    Philippe> The problem is : it thinks that its MAC address is all
    Philippe> "0s" and the ping consistently fails ... of course .

    Philippe> The exact same code runs on a i386 PC-Redboot with the
    Philippe> right ethernet card. Do I need to have a specific
    Philippe> hardware under Linux too (I thought the point was to use
    Philippe> Linux's hardware abstraction layer though ..)

    Philippe> still missing a little piece ... but getting closer :-)

You should not need specific hardware. When synthetic target eCos
tries to use an ethernet device that should cause a rawether process
to be spawned. The rawether program uses standard Linux ioctl() calls
to determine the MAC address, and passes that information back to
eCos.

Unfortunately I am not sure why you are seeing a MAC address of all
0's, I have not seen that before. The code to look at is in the
rawether program, devs/eth/synth/ecosynth/current/host/rawether.c, and
in particular the real_init() function which will be invoked with the
name of the selected Linux ethernet device (presumably eth1). It is
the SIOCGIFHWADDR ioctl() that should give the MAC address.

Bart

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


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