This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Some questions on eCos 2.0
On Mon, 2002-06-03 at 12:41, Paul Randall wrote:
> Hi Gary,
>
> Thanks for the flashing instructions, but I'm still having some trouble. Please look at my comments
> below.
>
> Gary Thomas wrote:
>
> >
> > > >
> > >
> > > 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
>
> Since I am running on Windows 98, I have been using the Configuration Tool, not ecosconfig. In the
> documentation it says that ecosconfig is supposed to be used for UNIX hosts, while the Configuration
> Tool is for Windows hosts. Could it be that using ecosconfig builds the tests successfully on unix
> while the Configuration Tool does not on Windows?
>
The two environments are *supposed* to work the same, but sometimes they
just don't :-( In this case, you'll need to manually enable the CDL
variable "CYGSEM_KERNEL_THREADS_DESTRUCTORS_PER_THREAD" and then
possibly re-enable "CYGPKG_NS_DNS_BUILD".
Doing this, I am able to build the tests using the ConfigTool.
> >
> > >
> > > 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.
> >
> > >
> > > 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
> > >
>
> This step goes ok, although the version of RedBoot I have doesn't display the "Entry point:" line.
> For the download, I am using HyperTerminal under Windows 98. The file I download is
> redboot_RAM.srec from the /images/powerpc/viper directory. This file has a build date of May 1,
> 2001. I noticed below that the redboot_RAM version you are running has a build date of Jun 1,
> 2002. Did you just build a new RedBoot, or is this image available somewhere else?
>
> >
> > > * Run the RAM based RedBoot
> > > RedBoot> go 0x40100
> > >
>
> In this step, If I type 'go 0x40100' I get a bunch of jumbled characters. If I just type go,
> however, the RAM version of Redboot starts running ok.
>
I think you need newer images. The latest ones are dated May 20 and
should behave as described.
> >
> > > +Ethernet eth0: MAC address 08:00:3e:28:7a:b8
>
> Do all vipers have the same MAC address? This is the same MAC address as my viper.
>
This is the default. You can change it using the 'fconfig' command in RedBoot.
> >
> > > 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
>
> What is the mf command? I can't find any documentation on this command and when I type it in,
> RedBoot doesn't recognize it.
>
It's new (memory fill). Not having it is OK, I just used it in my example.
> >
> > > RedBoot> lo -m ym -b 0x100000
>
> When I try to download the redboot_ROMRAM.srec to the viper, a couple ymodem packets are sent, then
> the download stops. I am again using HyperTerminal on the host side to do the download. The build
> date in the ROMRAM file is Apr 12, 2002.
>
Use the newer images (see above). Also, be sure and use the "-b" option
as mentioned, or it just won't work (the ROMRAM image will try and load
over the top of the running RAM version).
> >
> > > 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
>
> Ever since I got my viper, the fis list command has the following output:
>
> RedBoot> fis list
> Name FLASH addr Mem addr Length Entry point
> ”! িA 0x3FE0FF00 0x3F60FF00 0x637B3C00 0x3F40FF00
>
> This doesn't look at all like the table when you ran the same command on your viper. Could it be
> because fis init was not run at the A&M factory when the original RedBoot was installed? Should I
> run fis init myself?
>
Yes.
> >
> > >
> > > * 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: .
> > >
> >
> > ** Danger! Be very careful here. Note that the default image size for
> > the RedBoot image is 0x20000, but the image just downloaded is 0x241c8.
> > If you use the command above, you may well "brick" your unit (I just did!)
> >
> > Use this command instead:
> > RedBoot> fis write -f 0xfe000000 -b 0x100000 -l 0x30000
> >
> > Once you reset and RedBoot is running, you can use 'fis init' to fix the
> > FIS directory properly.
> >
> > Sorry if this cause(d) any pain.
> >
> > > * Reset - you are now running the latest ROMRAM version of RedBoot
>
> Thanks for the assistance,
Just be sure and use these last commands ('fis write'...) and you should
be OK.
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss