public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] How do I restore WinCE image?
@ 2001-08-16  2:36 Wong Yee Peng
  2001-08-16  6:30 ` Gary Thomas
  0 siblings, 1 reply; 7+ messages in thread
From: Wong Yee Peng @ 2001-08-16  2:36 UTC (permalink / raw)
  To: ecos-discuss

Hi,
    I managed to permanently install redboot on my ipaq. Then, I
successfully install the embedded linux kernel and root fs onto the ipaq and
got it running once. However, later I think I messed up the fis (most
probably becos of "fis init" twice while testing with the redboot boot
script). Now, I cannot startup the embedded linux.
    So, I wanted to restore my CE and reinstall redboot again. However, the
user guide tells me to refer to the doc in the handhelds.org which does not
apply to the redboot situation. Can anyone tell me how to restore CE from
Redboot or the parrot loader?

Regards
Yee Peng

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [ECOS] How do I restore WinCE image?
  2001-08-16  2:36 [ECOS] How do I restore WinCE image? Wong Yee Peng
@ 2001-08-16  6:30 ` Gary Thomas
  2001-08-16 21:55   ` Wong Yee Peng
  2001-08-17  2:39   ` Wong Yee Peng
  0 siblings, 2 replies; 7+ messages in thread
From: Gary Thomas @ 2001-08-16  6:30 UTC (permalink / raw)
  To: Wong Yee Peng; +Cc: ecos-discuss

On 16-Aug-2001 Wong Yee Peng wrote:
> Hi,
>     I managed to permanently install redboot on my ipaq. Then, I
> successfully install the embedded linux kernel and root fs onto the ipaq and
> got it running once. However, later I think I messed up the fis (most
> probably becos of "fis init" twice while testing with the redboot boot
> script). Now, I cannot startup the embedded linux.

You should be able to restore your Linux environment, without reinstalling
RedBoot.  Exactly what problems are you having?  Note: this is much preferred
to restoring WinCE as there is a chance that the unit may become [temporarily]
unusable if that operation fails.

>     So, I wanted to restore my CE and reinstall redboot again. However, the
> user guide tells me to refer to the doc in the handhelds.org which does not
> apply to the redboot situation. Can anyone tell me how to restore CE from
> Redboot or the parrot loader?

Did you make a CF backup using the Parrot loader, prior to installing RedBoot?
If so, just insert the CF card, press reset (or power cycle) while holding
down the "action" button (the joy pad middle button).  This will bring up
the CF restore menu which is quite automatic.

If not, did you make copies of your FLASH by following the HandHelds instructions?
In this case, you'll have 4 data files.  You can load these using the RedBoot
'load' command, either over the serial using Xmodem or via the Ethernet and TFTP.
The basic flow is:
  1. Load & execute RAM version of RedBoot.
       RedBoot> load RedBoot.RAM
       RedBoot> go
  2. Now load the FLASH contents. 
       RedBoot> load -r -b 0x00100000 flash_00000000.bin
       RedBoot> load -r -b 0x00500000 flash_00400000.bin
       RedBoot> load -r -b 0x00900000 flash_00800000.bin
       RedBoot> load -r -b 0x00D00000 flash_00c00000.bin
  3. Now the scary part - rewriting the FLASH.
       RedBoot> fis unl -f 0x50000000 -l 0x01000000
       RedBoot> fis wr -f 0x50000000 -l 0x01000000 -b 0x00100000
       RedBoot> reset

Notice: as indicated in the "how to install RedBoot" instructions, we really only
support the first method, i.e. using the Parrot loader.  This second method will
work *IF YOU FOLLOW THE DIRECTIONS*, but Red Hat cannot be responsible if there
are any problems.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [ECOS] How do I restore WinCE image?
  2001-08-16  6:30 ` Gary Thomas
@ 2001-08-16 21:55   ` Wong Yee Peng
  2001-08-17  2:39   ` Wong Yee Peng
  1 sibling, 0 replies; 7+ messages in thread
From: Wong Yee Peng @ 2001-08-16 21:55 UTC (permalink / raw)
  To: Gary Thomas; +Cc: ecos-discuss

Hi,
    I did not save a CF backup of the wince image. however, I did backup the
4 4MB images thru the osloader. So, I tried using the 2nd method u told me.
however, I couldn't complete step 1 as redboot complains that it is an
invalid image type. By the way, I think in step 1, you meant "load
redboot_RAM.bin" instead of "load RedBoot.RAM" as there isn't such a bin
file.

    Anyway, here is a dump of the FIS structure to help you understand my
situation.

Name                       flash addr        mem addr         length
entry point
(reserved)                0x50000000    0x50000000    0x00040000
0x00000000
RedBoot                  0x50040000    0x50040000    0x00040000
0x00000000
RedBoot Config       0x50F80000    0x50F80000   0x00040000    0x00000000
FIS dir                     0x50FC0000   0x50FC0000   0x00040000
0x00000000
Linux                       0x50080000    0x00100000    0x00080000
0x00000000
JFFS2                     ....... (still downloading currently.)

As you can see, the table looks very different from the one on
http://sources.redhat.com/redboot/ipaq .
The Linux partition is before JFFS2 partition becos I loaded and flashed the
kernel bef the root image. I believe there should not be any problem with
that. Note that all the entry points are 0x00000000. Also the (reserved)
partition cannot be removed. I think it is the parrot loader. But why
doesn't the web site reflect that? Did they totally removed the parrot
loader?

Are the entry points very important? If so, how do I "repair" or set their
values without deleting the partition and creating a clean one?

I believe that is a mistake in http://sources.redhat.com/redboot/ipaq under
the section about running the embedded linux demo.

It says:
<<<<<<>>>>>>
The Embedded Linux demo can be run using the commands:

RedBoot> fi loa -d Linux
RedBoot> ex -b 0x100000 -l 0x280000 -c "noinitrd root=/dev/mtdblock/3
init=/linuxrc console=ttySA0,38400"


The demo can be set up to run automatically at boot/reset time:

RedBoot> fc
Run script at boot: false t
Enter script, terminate with empty line
>> fi loa -d eCos_demo
>> go -w 5 0x20040
>> fi loa -d Linux
>> ex -b 0x100000 -l 0x280000 -c "noinitrd root=/dev/mtdblock/3
init=/linuxrc console=ttySA0,38400" -w 5

<<<<<<>>>>>>
Shouldn't the length of the kernel image be 0x80000 instead of 0x280000?
Will this post a serious problem since the extra memory at the end might
override some restricted system areas?

Regards
Yee Peng


----- Original Message -----
From: "Gary Thomas" <gthomas@redhat.com>
To: "Wong Yee Peng" <wyeepeng@dso.org.sg>
Cc: <ecos-discuss@sourceware.cygnus.com>
Sent: Thursday, August 16, 2001 9:30 PM
Subject: RE: [ECOS] How do I restore WinCE image?


>
> On 16-Aug-2001 Wong Yee Peng wrote:
> > Hi,
> >     I managed to permanently install redboot on my ipaq. Then, I
> > successfully install the embedded linux kernel and root fs onto the ipaq
and
> > got it running once. However, later I think I messed up the fis (most
> > probably becos of "fis init" twice while testing with the redboot boot
> > script). Now, I cannot startup the embedded linux.
>
> You should be able to restore your Linux environment, without reinstalling
> RedBoot.  Exactly what problems are you having?  Note: this is much
preferred
> to restoring WinCE as there is a chance that the unit may become
[temporarily]
> unusable if that operation fails.
>
> >     So, I wanted to restore my CE and reinstall redboot again. However,
the
> > user guide tells me to refer to the doc in the handhelds.org which does
not
> > apply to the redboot situation. Can anyone tell me how to restore CE
from
> > Redboot or the parrot loader?
>
> Did you make a CF backup using the Parrot loader, prior to installing
RedBoot?
> If so, just insert the CF card, press reset (or power cycle) while holding
> down the "action" button (the joy pad middle button).  This will bring up
> the CF restore menu which is quite automatic.
>
> If not, did you make copies of your FLASH by following the HandHelds
instructions?
> In this case, you'll have 4 data files.  You can load these using the
RedBoot
> 'load' command, either over the serial using Xmodem or via the Ethernet
and TFTP.
> The basic flow is:
>   1. Load & execute RAM version of RedBoot.
>        RedBoot> load RedBoot.RAM
>        RedBoot> go
>   2. Now load the FLASH contents.
>        RedBoot> load -r -b 0x00100000 flash_00000000.bin
>        RedBoot> load -r -b 0x00500000 flash_00400000.bin
>        RedBoot> load -r -b 0x00900000 flash_00800000.bin
>        RedBoot> load -r -b 0x00D00000 flash_00c00000.bin
>   3. Now the scary part - rewriting the FLASH.
>        RedBoot> fis unl -f 0x50000000 -l 0x01000000
>        RedBoot> fis wr -f 0x50000000 -l 0x01000000 -b 0x00100000
>        RedBoot> reset
>
> Notice: as indicated in the "how to install RedBoot" instructions, we
really only
> support the first method, i.e. using the Parrot loader.  This second
method will
> work *IF YOU FOLLOW THE DIRECTIONS*, but Red Hat cannot be responsible if
there
> are any problems.
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [ECOS] How do I restore WinCE image?
  2001-08-16  6:30 ` Gary Thomas
  2001-08-16 21:55   ` Wong Yee Peng
@ 2001-08-17  2:39   ` Wong Yee Peng
  2001-08-17  5:17     ` Gary Thomas
  1 sibling, 1 reply; 7+ messages in thread
From: Wong Yee Peng @ 2001-08-17  2:39 UTC (permalink / raw)
  To: Gary Thomas; +Cc: ecos-discuss

Hi,
    I think the problem of the "corrupted fis" is sort of solved. Although
the fis table looks different from that on the web page, redboot can still
boot. I can create fis partitions for the kernel and jffs2 images. The
reason why I failed to boot to linux is that I set the option "-l 0x80000"
for the exec command instead of "-l 0x280000". I thought the length of the
kernel partition is only 0x80000 long, so I thought there was a typo error.
When I tried with 0x280000, it worked.

    Now I am quite confused. Why must we use 0x280000 instead of 0x80000? Is
it becos we must allocate 2MB more of memory for the kernel to store its
temp stuff during booting?

    Then, I tried another thing. Instead of loading the kernel image from
the flash, in the boot script, I told it to load the kernel image from the
tftp server and exec the image immediately from the ram. This simulates a
normal thin client implementation. However, eventhough I used the same exec
command with the "-l 0x280000" option set, it failed to exec and hanged
there.

    The actual kernel image size downloaded from the tftp server is 0x7e122.
I deduced that it might be that fact that we need exactly 2MB extra like the
previous case. So, I used "-l 0x27e122" instead and exec the kernel on ram.
This time, the lcd flash into a messy screen of colours and hangs there. At
least something happened but I am still unable to boot to linux.

Can anyone help?

Yee Peng

----- Original Message -----
From: "Gary Thomas" <gthomas@redhat.com>
To: "Wong Yee Peng" <wyeepeng@dso.org.sg>
Cc: <ecos-discuss@sourceware.cygnus.com>
Sent: Thursday, August 16, 2001 9:30 PM
Subject: RE: [ECOS] How do I restore WinCE image?


>
> On 16-Aug-2001 Wong Yee Peng wrote:
> > Hi,
> >     I managed to permanently install redboot on my ipaq. Then, I
> > successfully install the embedded linux kernel and root fs onto the ipaq
and
> > got it running once. However, later I think I messed up the fis (most
> > probably becos of "fis init" twice while testing with the redboot boot
> > script). Now, I cannot startup the embedded linux.
>
> You should be able to restore your Linux environment, without reinstalling
> RedBoot.  Exactly what problems are you having?  Note: this is much
preferred
> to restoring WinCE as there is a chance that the unit may become
[temporarily]
> unusable if that operation fails.
>
> >     So, I wanted to restore my CE and reinstall redboot again. However,
the
> > user guide tells me to refer to the doc in the handhelds.org which does
not
> > apply to the redboot situation. Can anyone tell me how to restore CE
from
> > Redboot or the parrot loader?
>
> Did you make a CF backup using the Parrot loader, prior to installing
RedBoot?
> If so, just insert the CF card, press reset (or power cycle) while holding
> down the "action" button (the joy pad middle button).  This will bring up
> the CF restore menu which is quite automatic.
>
> If not, did you make copies of your FLASH by following the HandHelds
instructions?
> In this case, you'll have 4 data files.  You can load these using the
RedBoot
> 'load' command, either over the serial using Xmodem or via the Ethernet
and TFTP.
> The basic flow is:
>   1. Load & execute RAM version of RedBoot.
>        RedBoot> load RedBoot.RAM
>        RedBoot> go
>   2. Now load the FLASH contents.
>        RedBoot> load -r -b 0x00100000 flash_00000000.bin
>        RedBoot> load -r -b 0x00500000 flash_00400000.bin
>        RedBoot> load -r -b 0x00900000 flash_00800000.bin
>        RedBoot> load -r -b 0x00D00000 flash_00c00000.bin
>   3. Now the scary part - rewriting the FLASH.
>        RedBoot> fis unl -f 0x50000000 -l 0x01000000
>        RedBoot> fis wr -f 0x50000000 -l 0x01000000 -b 0x00100000
>        RedBoot> reset
>
> Notice: as indicated in the "how to install RedBoot" instructions, we
really only
> support the first method, i.e. using the Parrot loader.  This second
method will
> work *IF YOU FOLLOW THE DIRECTIONS*, but Red Hat cannot be responsible if
there
> are any problems.
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [ECOS] How do I restore WinCE image?
  2001-08-17  2:39   ` Wong Yee Peng
@ 2001-08-17  5:17     ` Gary Thomas
  2001-08-18  3:18       ` wyeepeng
  2001-08-19 19:17       ` Wong Yee Peng
  0 siblings, 2 replies; 7+ messages in thread
From: Gary Thomas @ 2001-08-17  5:17 UTC (permalink / raw)
  To: Wong Yee Peng; +Cc: ecos-discuss

On 17-Aug-2001 Wong Yee Peng wrote:
> Hi,
>     I think the problem of the "corrupted fis" is sort of solved. Although
> the fis table looks different from that on the web page, redboot can still
> boot. I can create fis partitions for the kernel and jffs2 images. The
> reason why I failed to boot to linux is that I set the option "-l 0x80000"
> for the exec command instead of "-l 0x280000". I thought the length of the
> kernel partition is only 0x80000 long, so I thought there was a typo error.
> When I tried with 0x280000, it worked.
> 
>     Now I am quite confused. Why must we use 0x280000 instead of 0x80000? Is
> it becos we must allocate 2MB more of memory for the kernel to store its
> temp stuff during booting?
> 

No - Look carefully and you'll see that the image in FLASH is compressed.
The 'fis load -d Linux' command actually uncompresses it as it goes into
RAM.  What fits in 0x80000 in FLASH becomes nearly 0x280000 in RAM.  This
is why you need that value.

>     Then, I tried another thing. Instead of loading the kernel image from
> the flash, in the boot script, I told it to load the kernel image from the
> tftp server and exec the image immediately from the ram. This simulates a
> normal thin client implementation. However, eventhough I used the same exec
> command with the "-l 0x280000" option set, it failed to exec and hanged
> there.
> 
>     The actual kernel image size downloaded from the tftp server is 0x7e122.
> I deduced that it might be that fact that we need exactly 2MB extra like the
> previous case. So, I used "-l 0x27e122" instead and exec the kernel on ram.
> This time, the lcd flash into a messy screen of colours and hangs there. At
> least something happened but I am still unable to boot to linux.
> 

Probably because when you downloaded the Linux kernel you didn't uncompress
it so you were actually trying to execute compressed data.

> Can anyone help?
> 
> Yee Peng
> 
> ----- Original Message -----
> From: "Gary Thomas" <gthomas@redhat.com>
> To: "Wong Yee Peng" <wyeepeng@dso.org.sg>
> Cc: <ecos-discuss@sourceware.cygnus.com>
> Sent: Thursday, August 16, 2001 9:30 PM
> Subject: RE: [ECOS] How do I restore WinCE image?
> 
> 
>>
>> On 16-Aug-2001 Wong Yee Peng wrote:
>> > Hi,
>> >     I managed to permanently install redboot on my ipaq. Then, I
>> > successfully install the embedded linux kernel and root fs onto the ipaq
> and
>> > got it running once. However, later I think I messed up the fis (most
>> > probably becos of "fis init" twice while testing with the redboot boot
>> > script). Now, I cannot startup the embedded linux.
>>
>> You should be able to restore your Linux environment, without reinstalling
>> RedBoot.  Exactly what problems are you having?  Note: this is much
> preferred
>> to restoring WinCE as there is a chance that the unit may become
> [temporarily]
>> unusable if that operation fails.
>>
>> >     So, I wanted to restore my CE and reinstall redboot again. However,
> the
>> > user guide tells me to refer to the doc in the handhelds.org which does
> not
>> > apply to the redboot situation. Can anyone tell me how to restore CE
> from
>> > Redboot or the parrot loader?
>>
>> Did you make a CF backup using the Parrot loader, prior to installing
> RedBoot?
>> If so, just insert the CF card, press reset (or power cycle) while holding
>> down the "action" button (the joy pad middle button).  This will bring up
>> the CF restore menu which is quite automatic.
>>
>> If not, did you make copies of your FLASH by following the HandHelds
> instructions?
>> In this case, you'll have 4 data files.  You can load these using the
> RedBoot
>> 'load' command, either over the serial using Xmodem or via the Ethernet
> and TFTP.
>> The basic flow is:
>>   1. Load & execute RAM version of RedBoot.
>>        RedBoot> load RedBoot.RAM
>>        RedBoot> go
>>   2. Now load the FLASH contents.
>>        RedBoot> load -r -b 0x00100000 flash_00000000.bin
>>        RedBoot> load -r -b 0x00500000 flash_00400000.bin
>>        RedBoot> load -r -b 0x00900000 flash_00800000.bin
>>        RedBoot> load -r -b 0x00D00000 flash_00c00000.bin
>>   3. Now the scary part - rewriting the FLASH.
>>        RedBoot> fis unl -f 0x50000000 -l 0x01000000
>>        RedBoot> fis wr -f 0x50000000 -l 0x01000000 -b 0x00100000
>>        RedBoot> reset
>>
>> Notice: as indicated in the "how to install RedBoot" instructions, we
> really only
>> support the first method, i.e. using the Parrot loader.  This second
> method will
>> work *IF YOU FOLLOW THE DIRECTIONS*, but Red Hat cannot be responsible if
> there
>> are any problems.
>>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [ECOS] How do I restore WinCE image?
  2001-08-17  5:17     ` Gary Thomas
@ 2001-08-18  3:18       ` wyeepeng
  2001-08-19 19:17       ` Wong Yee Peng
  1 sibling, 0 replies; 7+ messages in thread
From: wyeepeng @ 2001-08-18  3:18 UTC (permalink / raw)
  To: Gary Thomas; +Cc: Wong Yee Peng, ecos-discuss

Thanks. I will try that out this coming monday.

YP

Quoting Gary Thomas <gthomas@redhat.com>:

> 
> On 17-Aug-2001 Wong Yee Peng wrote:
> > Hi,
> >     I think the problem of the "corrupted fis" is sort of solved.
> Although
> > the fis table looks different from that on the web page, redboot can
> still
> > boot. I can create fis partitions for the kernel and jffs2 images.
> The
> > reason why I failed to boot to linux is that I set the option "-l
> 0x80000"
> > for the exec command instead of "-l 0x280000". I thought the length of
> the
> > kernel partition is only 0x80000 long, so I thought there was a typo
> error.
> > When I tried with 0x280000, it worked.
> > 
> >     Now I am quite confused. Why must we use 0x280000 instead of
> 0x80000? Is
> > it becos we must allocate 2MB more of memory for the kernel to store
> its
> > temp stuff during booting?
> > 
> 
> No - Look carefully and you'll see that the image in FLASH is
> compressed.
> The 'fis load -d Linux' command actually uncompresses it as it goes
> into
> RAM.  What fits in 0x80000 in FLASH becomes nearly 0x280000 in RAM. 
> This
> is why you need that value.
> 
> >     Then, I tried another thing. Instead of loading the kernel image
> from
> > the flash, in the boot script, I told it to load the kernel image from
> the
> > tftp server and exec the image immediately from the ram. This
> simulates a
> > normal thin client implementation. However, eventhough I used the same
> exec
> > command with the "-l 0x280000" option set, it failed to exec and
> hanged
> > there.
> > 
> >     The actual kernel image size downloaded from the tftp server is
> 0x7e122.
> > I deduced that it might be that fact that we need exactly 2MB extra
> like the
> > previous case. So, I used "-l 0x27e122" instead and exec the kernel on
> ram.
> > This time, the lcd flash into a messy screen of colours and hangs
> there. At
> > least something happened but I am still unable to boot to linux.
> > 
> 
> Probably because when you downloaded the Linux kernel you didn't
> uncompress
> it so you were actually trying to execute compressed data.
> 
> > Can anyone help?
> > 
> > Yee Peng
> > 
> > ----- Original Message -----
> > From: "Gary Thomas" <gthomas@redhat.com>
> > To: "Wong Yee Peng" <wyeepeng@dso.org.sg>
> > Cc: <ecos-discuss@sourceware.cygnus.com>
> > Sent: Thursday, August 16, 2001 9:30 PM
> > Subject: RE: [ECOS] How do I restore WinCE image?
> > 
> > 
> >>
> >> On 16-Aug-2001 Wong Yee Peng wrote:
> >> > Hi,
> >> >     I managed to permanently install redboot on my ipaq. Then, I
> >> > successfully install the embedded linux kernel and root fs onto the
> ipaq
> > and
> >> > got it running once. However, later I think I messed up the fis
> (most
> >> > probably becos of "fis init" twice while testing with the redboot
> boot
> >> > script). Now, I cannot startup the embedded linux.
> >>
> >> You should be able to restore your Linux environment, without
> reinstalling
> >> RedBoot.  Exactly what problems are you having?  Note: this is much
> > preferred
> >> to restoring WinCE as there is a chance that the unit may become
> > [temporarily]
> >> unusable if that operation fails.
> >>
> >> >     So, I wanted to restore my CE and reinstall redboot again.
> However,
> > the
> >> > user guide tells me to refer to the doc in the handhelds.org which
> does
> > not
> >> > apply to the redboot situation. Can anyone tell me how to restore
> CE
> > from
> >> > Redboot or the parrot loader?
> >>
> >> Did you make a CF backup using the Parrot loader, prior to
> installing
> > RedBoot?
> >> If so, just insert the CF card, press reset (or power cycle) while
> holding
> >> down the "action" button (the joy pad middle button).  This will
> bring up
> >> the CF restore menu which is quite automatic.
> >>
> >> If not, did you make copies of your FLASH by following the
> HandHelds
> > instructions?
> >> In this case, you'll have 4 data files.  You can load these using
> the
> > RedBoot
> >> 'load' command, either over the serial using Xmodem or via the
> Ethernet
> > and TFTP.
> >> The basic flow is:
> >>   1. Load & execute RAM version of RedBoot.
> >>        RedBoot> load RedBoot.RAM
> >>        RedBoot> go
> >>   2. Now load the FLASH contents.
> >>        RedBoot> load -r -b 0x00100000 flash_00000000.bin
> >>        RedBoot> load -r -b 0x00500000 flash_00400000.bin
> >>        RedBoot> load -r -b 0x00900000 flash_00800000.bin
> >>        RedBoot> load -r -b 0x00D00000 flash_00c00000.bin
> >>   3. Now the scary part - rewriting the FLASH.
> >>        RedBoot> fis unl -f 0x50000000 -l 0x01000000
> >>        RedBoot> fis wr -f 0x50000000 -l 0x01000000 -b 0x00100000
> >>        RedBoot> reset
> >>
> >> Notice: as indicated in the "how to install RedBoot" instructions,
> we
> > really only
> >> support the first method, i.e. using the Parrot loader.  This
> second
> > method will
> >> work *IF YOU FOLLOW THE DIRECTIONS*, but Red Hat cannot be
> responsible if
> > there
> >> are any problems.
> >>
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [ECOS] How do I restore WinCE image?
  2001-08-17  5:17     ` Gary Thomas
  2001-08-18  3:18       ` wyeepeng
@ 2001-08-19 19:17       ` Wong Yee Peng
  1 sibling, 0 replies; 7+ messages in thread
From: Wong Yee Peng @ 2001-08-19 19:17 UTC (permalink / raw)
  To: Gary Thomas; +Cc: ecos-discuss

Hi,
    I have tried loading the kernel image thru tftp with decompression and I
was able to get it running.
Thanks for the help.

    By the way, I tested with using the exact length of kernel image
(0x123b4c) as the value for the -l option and it work too.

Regards
Yee Peng

----- Original Message -----
From: "Gary Thomas" <gthomas@redhat.com>
To: "Wong Yee Peng" <wyeepeng@dso.org.sg>
Cc: <ecos-discuss@sourceware.cygnus.com>
Sent: Friday, August 17, 2001 8:18 PM
Subject: Re: [ECOS] How do I restore WinCE image?


>
> On 17-Aug-2001 Wong Yee Peng wrote:
> > Hi,
> >     I think the problem of the "corrupted fis" is sort of solved.
Although
> > the fis table looks different from that on the web page, redboot can
still
> > boot. I can create fis partitions for the kernel and jffs2 images. The
> > reason why I failed to boot to linux is that I set the option "-l
0x80000"
> > for the exec command instead of "-l 0x280000". I thought the length of
the
> > kernel partition is only 0x80000 long, so I thought there was a typo
error.
> > When I tried with 0x280000, it worked.
> >
> >     Now I am quite confused. Why must we use 0x280000 instead of
0x80000? Is
> > it becos we must allocate 2MB more of memory for the kernel to store its
> > temp stuff during booting?
> >
>
> No - Look carefully and you'll see that the image in FLASH is compressed.
> The 'fis load -d Linux' command actually uncompresses it as it goes into
> RAM.  What fits in 0x80000 in FLASH becomes nearly 0x280000 in RAM.  This
> is why you need that value.
>
> >     Then, I tried another thing. Instead of loading the kernel image
from
> > the flash, in the boot script, I told it to load the kernel image from
the
> > tftp server and exec the image immediately from the ram. This simulates
a
> > normal thin client implementation. However, eventhough I used the same
exec
> > command with the "-l 0x280000" option set, it failed to exec and hanged
> > there.
> >
> >     The actual kernel image size downloaded from the tftp server is
0x7e122.
> > I deduced that it might be that fact that we need exactly 2MB extra like
the
> > previous case. So, I used "-l 0x27e122" instead and exec the kernel on
ram.
> > This time, the lcd flash into a messy screen of colours and hangs there.
At
> > least something happened but I am still unable to boot to linux.
> >
>
> Probably because when you downloaded the Linux kernel you didn't
uncompress
> it so you were actually trying to execute compressed data.
>
> > Can anyone help?
> >
> > Yee Peng
> >
> > ----- Original Message -----
> > From: "Gary Thomas" <gthomas@redhat.com>
> > To: "Wong Yee Peng" <wyeepeng@dso.org.sg>
> > Cc: <ecos-discuss@sourceware.cygnus.com>
> > Sent: Thursday, August 16, 2001 9:30 PM
> > Subject: RE: [ECOS] How do I restore WinCE image?
> >
> >
> >>
> >> On 16-Aug-2001 Wong Yee Peng wrote:
> >> > Hi,
> >> >     I managed to permanently install redboot on my ipaq. Then, I
> >> > successfully install the embedded linux kernel and root fs onto the
ipaq
> > and
> >> > got it running once. However, later I think I messed up the fis (most
> >> > probably becos of "fis init" twice while testing with the redboot
boot
> >> > script). Now, I cannot startup the embedded linux.
> >>
> >> You should be able to restore your Linux environment, without
reinstalling
> >> RedBoot.  Exactly what problems are you having?  Note: this is much
> > preferred
> >> to restoring WinCE as there is a chance that the unit may become
> > [temporarily]
> >> unusable if that operation fails.
> >>
> >> >     So, I wanted to restore my CE and reinstall redboot again.
However,
> > the
> >> > user guide tells me to refer to the doc in the handhelds.org which
does
> > not
> >> > apply to the redboot situation. Can anyone tell me how to restore CE
> > from
> >> > Redboot or the parrot loader?
> >>
> >> Did you make a CF backup using the Parrot loader, prior to installing
> > RedBoot?
> >> If so, just insert the CF card, press reset (or power cycle) while
holding
> >> down the "action" button (the joy pad middle button).  This will bring
up
> >> the CF restore menu which is quite automatic.
> >>
> >> If not, did you make copies of your FLASH by following the HandHelds
> > instructions?
> >> In this case, you'll have 4 data files.  You can load these using the
> > RedBoot
> >> 'load' command, either over the serial using Xmodem or via the Ethernet
> > and TFTP.
> >> The basic flow is:
> >>   1. Load & execute RAM version of RedBoot.
> >>        RedBoot> load RedBoot.RAM
> >>        RedBoot> go
> >>   2. Now load the FLASH contents.
> >>        RedBoot> load -r -b 0x00100000 flash_00000000.bin
> >>        RedBoot> load -r -b 0x00500000 flash_00400000.bin
> >>        RedBoot> load -r -b 0x00900000 flash_00800000.bin
> >>        RedBoot> load -r -b 0x00D00000 flash_00c00000.bin
> >>   3. Now the scary part - rewriting the FLASH.
> >>        RedBoot> fis unl -f 0x50000000 -l 0x01000000
> >>        RedBoot> fis wr -f 0x50000000 -l 0x01000000 -b 0x00100000
> >>        RedBoot> reset
> >>
> >> Notice: as indicated in the "how to install RedBoot" instructions, we
> > really only
> >> support the first method, i.e. using the Parrot loader.  This second
> > method will
> >> work *IF YOU FOLLOW THE DIRECTIONS*, but Red Hat cannot be responsible
if
> > there
> >> are any problems.
> >>
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2001-08-19 19:17 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-08-16  2:36 [ECOS] How do I restore WinCE image? Wong Yee Peng
2001-08-16  6:30 ` Gary Thomas
2001-08-16 21:55   ` Wong Yee Peng
2001-08-17  2:39   ` Wong Yee Peng
2001-08-17  5:17     ` Gary Thomas
2001-08-18  3:18       ` wyeepeng
2001-08-19 19:17       ` Wong Yee Peng

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).