|TuxScreen on SourceForge||TuxScreen CVS||search the Wiki|
|Browsing -> Wiki -> Main -> [UpdatingInferno]|
|edit, info, topics, orphans, hubs and nodes, or recent changes in the Wiki||create a new user or login|
This page was originally http://erire.com/shannon/upgrade.html
updates are on http://www.TuxScreen.net/download/inferno/
ere are instructions to complete a shannon phone flash upgrade. I did this to an old TMS phone on 2000/03/08 and the phone ran much faster after the upgrade, the clock speed is at 133MHz and can be set to 206MHz for demos... The phone comes up with new everything in one shot (no need to copy kern2 and fs etc.) Check Shaggy's shannon page for information about what this upgrade will enable.
A student followed this to perform the upgrade (who knew nothing about Inferno nor IS2630): A bunch of IS2630 were successfully upgraded with no reject. Note however that There is absolutely no explicit or implied Warranty from folowwing this procedure. Use The following steps at your own risk. You could lose a Shannon -- If this happens do not throw it away, it is a piece of history. so give it away to your favorite museum.
[you can use a needle point soldering iron to perform this safely.]
An ascii version of this picture:
o o o o o o o / black red - wires (GND) (+12v) [---------------------] <- bottom of board through memory extension hole
Note: to apply 12v you do not need a car battery ;-)
9. Startup Inferno rdp:
At the Inferno station (e.g. use your favorite Linux laptop or computer), boot a 2.2 kernel until 2.4 changes are integrated... Make sure the serial tty you will need are rw by the login you are using:
[email@example.com]$ ls -l /dev/ttyS? crw-rw-rw- 1 root tty 4, 64 Apr 10 15:13 /dev/ttyS0 crw-rw-rw- 1 root tty 4, 65 May 24 05:56 /dev/ttyS1 crw-rw-rw- 1 root tty 4, 66 May 5 1998 /dev/ttyS2 crw-rw-rw- 1 root tty 4, 67 May 5 1998 /dev/ttyS3 [firstname.lastname@example.org]$
Download Inferno if you do not already have it installed, for example Check the free limited binary and source download from Vitanuova. Run the Inferno emulator (you can use a window environment for convenience wm/logon for example, login as inferno):
# Add the serial drivers (bind after /dev):
$ bind -a '#'t /dev
# run the rdp debugger (speed 57600 - no carriage return):
$ rdp -r -s57600 [[send reset]] [... wait for sync-up]
10. Plug-in the power supply to the phone. (Place the phone power supply under UPS if you are not sure you will have stable power for >20 minutes. Also use a laptop to run Inferno rdp the battery power may become handy.)
11. Hold the escape key on remote keyboard while the phone boots up. If the phone has an older boot monitor, Enter Ctrl-A when prompted to enter debug mode.
[If the phone has a very ancient boot monitor you would need to enter Ctrl-D to disable autoboot. If the ancient sboot does not support c/u as a command you should not try this procedure without first upgrading the sboot to a more recent one.]
12. Check the flash partitions in the Inferno emulator window after rdp eventual sync-up
>>> P/m 00000000-00007fff (00008000) : f 00008000-0000bfff (00004000) : 0 0000c000-0000ffff (00004000) : f 00010000-0001ffff (00010000) : f 00020000-0003ffff (00010000) : f 00040000-0005ffff (00010000) : f 00060000-0007ffff (00010000) : f 00080000-0009ffff (00010000) : f 000a0000-000bffff (00010000) : f 000c0000-000dffff (00010000) : f 000e0000-000fffff (00010000) : f 00100000-0011ffff (00010000) : 0 00120000-0013ffff (00010000) : 0 ... 003e0000-003fffff (00010000) : 0
13. Disable the flash write protection by applying 12v and doing: [12 v APPLIED - red wire connected to battery]
>>> P/u 0 ...
14. Verify the protections are cleared by removing 12v:
[12 v DISCONNECTED - red wire removed] >>> P/m
[verify that ALL the above sectors listed by P/m indicate a value of: 0 if not try the procedure again with 12v applied and the P/u 0 command.]
15. P/m now shows all 0 values for the flash sectors. The phone is now ready for upgrade this may take 1/2 hour or 1 hour based on the serial link speed. MAKE SURE the download does not get interrupted although since the final stage (flash write) is critical.
Mike Skarzynski provided me with a IS2630 at the end of the venture days. This device had two outstanding features: a minitel implementation and the latest versions of sboot, styxmon and partition. I made a backup copy of this software just in case and I keep it under the Inferno tmp directory on my Linux laptop: Fall 1999 French Minitel version (2.3Mb).
>>> c/u D!/tmp/all_1999.gz F!all flash: id=1/49 (AMD Am29LV160BB), ss=20000 fs=400000 w=2 b=0-20000 f=5
[nothing is printed on this screen until ready do uncompress the image and copying it to the flash. On the phone, the blue debug screen displays a progress bar at bottom, reading from 0 to 2402816 by chunks.]
[Actually the installation time is similar to downloading a kernel plus at file system at 57600 speed on the serial port. Thist just took about 15 minutes to complete.]
2402816 -> 4194304 [the monitor has just decompressed the gz file it downloaded] flash: 0-7fff erasing/writing... flash: erasing boot area! (0-7fff)
This is the last message you will get from the old phone. DO NOT PANIC!!! BUT WAIT PATIENTLY 2 MINUTES AT LEAST, the monitor is erasing and writing each sector one by one and unfortunately it's been erasing itself as well - I lost my good old phone by interrupting this process too early the first time...]
16. Exit rdp on the Inferno loading station.
Now its time to type: "Ctrl-]" Enter and then "q" Enter at the rdp prompt to end the rdp session.
You need to remove the power plug from the phone and plug it back in. Hold the escape key down as the Inferno logo screen starts coming up. At the debug prompt enter "-". You have a new phone, so this time you need to enter "-" to put it into the rdp debug mode.
You get the black screen waiting for the remote debugger to contact the phone.
18. Reconnect the rdp debugger
Now on the Inferno station.
$ rdp -r
[you don't need high speed this time -- use the default speed so the message will print readably.]
[you may have to kick rdp a few times before it syncs up and the phone brings up a new blue debugger window. If you do not exit rdp cleanly with the escape sequence "Ctrl-]" and 'q', you may have rdp processes still holding the serial device open, you need to kill them -- you can kill by name: 'kill Rdp']
At the rdp debugger prompt you eventually see. Success!
sboot 2.6-d (shannon) - Inferno BooStrap Loader flash@80000000: id=1/49... >>> P/m [all sectors at value : 0] >>> P
[a new partition with bigkern and bigfs is now available thanks to shaggy's last work...] Reference: Shaggy's shannon page
19. Re-enable flash protection
[-> APPLY 12V to the phone]
>>> P/p styxmon [1 line] >>> P/p demon [1 line] >>> P/p styxmon2 [1 line] >>> P/p sboot [1 line] >>> P/p partition [1 line]
20. Finally check the protection status
[DISCONNECT 12V (just the red wire if you are not sure you are done.)]
>>> P/m 00000000-00007fff (00008000) : f 00008000-0000bfff (00004000) : 0 0000c000-0000ffff (00004000) : f 00010000-0001ffff (00010000) : 0 00020000-0003ffff (00010000) : f 00040000-0005ffff (00010000) : 0 00060000-0007ffff (00010000) : 0 00080000-0009ffff (00010000) : 0 000a0000-000bffff (00010000) : 0 000c0000-000dffff (00010000) : 0 000e0000-000fffff (00010000) : 0 00100000-0011ffff (00010000) : 0 00120000-0013ffff (00010000) : 0 ... 003e0000-003fffff (00010000) : 0
[If the values read anything different that '0' or 'f' start the procedure again.]
[This is my preference I don't think it's worth protecting config, and kern1. If you protect "all" then everything is protected and you can't replace the kernel or the file system without applying 12v first. I think the phone should be safe now. The monitor partition is protected (demon, styxmon, stxymon2) so it should be safe to upgrade the phone with new kernels, fs, etc.]
>>> P dev base size perm flgs name____________ (max=16 boot=20000) F!-2: 3e00 200 644 0 partition F!-1: 0 400000 644 0 all F!0 : 0 3e00 444 0 styxmon F!0 : 4000 3c00 444 0 demon F!1 : 7c00 400 444 0 config F!2 : 8000 1000 644 0 plan9.ini F!3 : 9000 1000 644 0 spare1 F!4 : a000 2000 644 0 spare2 F!5 : c000 4000 644 0 styxmon2 F!6 : 10000 10000 644 0 logo F!7 : 20000 20000 444 0 sboot F!8 : 40000 a0000 644 0 kern1 F!9 : e0000 c0000 644 0 kern2 F!10: 1a0000 260000 666 0 fs F!11: 40000 160000 644 0 bigkern F!13: e0000 320000 666 0 bigfs F!14: 40000 3c0000 666 0 big
[The new phone is ready to boot.]
[The phone boots with new sboot and styxmon, you have a new shannon phone or "ephone".]
|Content of these pages are owned and copyrighted by the poster.|