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: Some questions on eCos 2.0


On Thu, 2002-05-30 at 14:26, Paul Randall wrote: 
> Hi all,
> 
> Thanks for the quick response on my last post.
> 
> Today, I downloaded the Configuration Tool Version 2.08.  I think this
> is the most recent Configuration Tool, although the date in the
> changes.txt file is 10/25/01.  I also did a CVS update before trying to
> build eCos.  The eCos library built without any errors and I didn't see
> any warnings, either.  When I tried to build the tests, however, I get
> the following error:
> 
> powerpc-eabi-gcc -c
> -I/ecos-c/cygwin/src/ecos2a/ecos/vipernet_install/include
> -I/ecos-c/cygwin/src/ecos2a/ecos/packages/io/fileio/current
> -I/ecos-c/cygwin/src/ecos2a/ecos/packages/io/fileio/current/src
> -I/ecos-c/cygwin/src/ecos2a/ecos/packages/io/fileio/current/tests -I.
> -I/ecos-c/cygwin/src/ecos2a/ecos/packages/io/fileio/current/tests/
> -msoft-float -mcpu=860 -Wall -Wpointer-arith -Wstrict-prototypes
> -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections
> -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority
> -Wp,-MD,tests/socket.tmp -o tests/socket.o
> /ecos-c/cygwin/src/ecos2a/ecos/packages/io/fileio/current/tests/socket.c
> 
> powerpc-eabi-gcc -msoft-float -mcpu=860 -g -nostdlib -Wl,--gc-sections
> -Wl,-static -L/ecos-c/cygwin/src/ecos2a/ecos/vipernet_install/lib
> -Ttarget.ld -o
> /ecos-c/cygwin/src/ecos2a/ecos/vipernet_install/tests/io/fileio/current/tests/socket
> tests/socket.o
> /ecos-c/cygwin/src/ecos2a/ecos/vipernet_install/lib/libtarget.a(net_common_bootp_support.o):
> In function `init_net':
> make[1]: Leaving directory
> `/ecos-c/cygwin/src/ecos2a/ecos/vipernet_build/io/fileio/current'
> /ecos-c/cygwin/src/ecos2a/ecos/packages/net/common/current/src/bootp_support.c:508:
> undefined reference to `setdomainname'
> make: Leaving directory `/ecos-c/cygwin/src/ecos2a/ecos/vipernet_build'
> /ecos-c/cygwin/src/ecos2a/ecos/packages/net/common/current/src/bootp_support.c:512:
> undefined reference to `cyg_dns_res_init'
> collect2: ld returned 1 exit status
> make[1]: ***
> [/ecos-c/cygwin/src/ecos2a/ecos/vipernet_install/tests/io/fileio/current/tests/socket]
> Error 1
> make: *** [tests] Error 2
> 

How did you configure this?  I just tried this, using these steps, and 
it worked perfectly (from the latest anonymous CVS sources). 

% ecosconfig new viper new_net 
% ecosconfig tree 
% make; make tests 

Note that others have complained of problems with the DNS code and
anonCVS.  I've not been able to reproduce that here, but if you are 
having trouble (i.e. an incomplete .../packages/net/... tree), try 
updating your CVS using a snapshot. 

> I am also confused about the FreeBSD and OpenBSD networking stacks in
> eCos 2.0.  When I select the 'net' template, the OpenBSD package appears
> inside the 'Basic networking support' package.  When I select the
> 'new_net' template, the FreeBSD package appears inside the 'Basic
> networking support' package.  Some of the options in the Basic
> Networking Framework are the same as some options in the Free/OpenBSD
> package.  For example, if I have INET support seleted in both places,
> will this cause problems or do I have to deselect one of these?  Also,
> there is the option to build network tests in both places.  Will this
> build two sets of network tests or build the same set twice?
> 
No, the two stacks are mutually exclusive (the CDL is supposed to keep 
you from including them both).  The reason for the seemingly confused 
handling was to keep old applications from breaking when we introduced 
a totally new [replacement] stack. 

> I noticed that the eCos 2.0 repository has a directory of RedBoot
> images.  Can I use these to update my viper without rebuilding RedBoot
> myself?  I'm a little nervous about updating the flash on my viper
> because I have no method of recovering if things go wrong.  It would
> give me some confidence if I flashed the viper with a RedBoot
> configuration that had been tested already.  Also, are the RedBoot
> images up to date?

We try to keep them up to date and the ones posted have been tested in
our test farm facility.  In the case of the Viper, I'd suggest 
using those images to update your board (*HIGHLY* recommended).  
Since you are running an older version, you'll need to follow these 
steps (outlined in the documentation, but reproduced here for clarity): 

* Boot the Viper, with RedBoot running in ROM

* Load a RAM based version (the latest from the repository).  The safest
  way would be using Y-modem serial download.
    RedBoot> lo -m ym
    Entry point: 0x00040100, address range: 0x00040000-0x00061af8
    xyzModem - CRC mode, 3102(SOH)/0(STX)/0(CAN) packets, 3 retries

* Run the RAM based RedBoot
    RedBoot> go 0x40100
    
    +Ethernet eth0: MAC address 08:00:3e:28:7a:b8
    IP: 192.168.1.30, Default server: 192.168.1.101, DNS server IP: 0.0.0.0
    
    RedBoot(tm) bootstrap and debug environment [RAM]
    Non-certified release, version UNKNOWN - built 06:08:01, Jun  1 2002
    
    Platform: A&M VIPER (PowerPC 860) 
    Copyright (C) 2000, 2001, 2002, Red Hat, Inc.
    
    RAM: 0x00000000-0x00800000, 0x0006fdf8-0x007e1000 available
    FLASH: 0xfe000000 - 0xfe100000, 16 blocks of 0x00010000 bytes each.
    RedBoot> 
    
* Load the new ROMRAM based RedBoot, again using Y-modem.

    RedBoot> mf -b 0x100000 -l 0x30000
    RedBoot> lo -m ym -b 0x100000
    Address offset = 0x00100000
    Entry point: 0x00000100, address range: 0x00000000-0x000241c8
    xyzModem - CRC mode, 3211(SOH)/0(STX)/0(CAN) packets, 4 retries

* Reinitialize the FLASH layout.

    RedBoot> fis init
    About to initialize [format] FLASH image system - continue (y/n)? y
    *** Initialize FLASH Image System
        Warning: device contents not erased, some blocks may not be usable
    ... Erase from 0xfe0f0000-0xfe100000: .
    ... Program from 0x007ef000-0x007ff000 at 0xfe0f0000: .
    RedBoot> fis list
    Name              FLASH addr  Mem addr    Length      Entry point
    RedBoot           0xFE000000  0xFE000000  0x00020000  0x00000000
    RedBoot config    0xFE0E0000  0xFE0E0000  0x00001000  0x00000000
    FIS directory     0xFE0F0000  0xFE0F0000  0x00010000  0x00000000
    
* Reprogram RedBoot in FLASH

    RedBoot> fi cr RedBoot -b 0x100000
    An image named 'RedBoot' exists - continue (y/n)? y
    * CAUTION * about to program 'RedBoot'
                at 0xfe000000..0xfe01ffff from 0x00100000 - continue (y/n)? y
    ... Erase from 0xfe000000-0xfe020000: ..
    ... Program from 0x00100000-0x00120000 at 0xfe000000: ..
    ... Erase from 0xfe0f0000-0xfe100000: .
    ... Program from 0x007ef000-0x007ff000 at 0xfe0f0000: .

* Reset - you are now running the latest ROMRAM version of RedBoot


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