[ECOS] Re: RedBoot "set MAC address" API?
Gary Thomas
gary@mlbassoc.com
Mon Nov 6 12:16:00 GMT 2006
Grant Edwards wrote:
> On 2006-11-05, Grant Edwards <grante@visi.com> wrote:
>
>> On 2006-11-05, Grant Edwards <grante@visi.com> wrote:
>>
>>> On 2006-11-05, Grant Edwards <grante@visi.com> wrote:
>>>
>>>
>>>> How do I call the ethernet driver's control function to set the
>>>> MAC address?
>>>>
>>> This seems to work:
>>>
>>>
>>> __local_enet_sc->funs->control(__local_enet_sc,ETH_DRV_SET_MAC_ADDRESS,mac_address,sizeof mac_address);
>>>
>> I was wrong, that doesn't work. It changes the MAC address in
>> the MAC, but the networks stack doesn't seem to know it's been
>> changed, so ARP replies have the wrong MAC address in them. :(
>>
>
> Also setting __local_enet_addr fixed that problem.
>
The RedBoot stack wasn't really designed with dynamic changes like this
in mind :-), hence the
obscurity.
>
>>> How is the MAC address supposed to be set initially?
>>>
>
> AFAICT, RedBoot expects the Ethernet MAC driver to know what
> MAC to use without any "application" layer help. How is the
> driver supposed to know what MAC address to use?
>
Most drivers use 'fconfig' data for this which allows for backup
[default] values, as we as user supplied
values stored in FLASH [or EEPROM].
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
More information about the Ecos-discuss
mailing list