From mboxrd@z Thu Jan 1 00:00:00 1970 From: wyeepeng@dso.org.sg To: Gary Thomas Cc: Wong Yee Peng , ecos-discuss@sourceware.cygnus.com Subject: Re: [ECOS] How do I restore WinCE image? Date: Sat, 18 Aug 2001 03:18:00 -0000 Message-id: <998130051.3b7e4183f1b50@webmail.dso.org.sg> References: X-SW-Source: 2001-08/msg00639.html Thanks. I will try that out this coming monday. YP Quoting Gary Thomas : > > 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" > > To: "Wong Yee Peng" > > Cc: > > 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. > >> >