The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/bitsy/Booting101

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 
    2 
    3 The bitsy comes with Wince.  To get to Plan 9, you will need a serial cable,
    4 a Windows machine with a serial interface, the CDROM that comes with the bitsy,
    5 and a Plan 9 machine with a serial interface.  The Windows machine is used to
    6 get the Linux boot loader onto the bitsy (and to save away wince, if you so
    7 desire).  The Plan 9 machine is used to get the plan 9 kernel and a read only
    8 file system onto the bitsy.
    9 
   10 0.  charge up the bitsy.
   11 
   12 1.  go to
   13         ftp://ftp.handhelds.org/pub/linux/compaq/ipaq/stable/install.html
   14 Get the latest version of the Linux "osloader" and "bootldr" programs
   15 (we have tried versions 1.3.0 and 0000-2.14.8, respectively; newest
   16 versions seem not to allow you to suspend your bitsy due to a bug
   17 which is probably ours).  You can find them all at
   18 www.collyer.net/who/geoff/9/bitsy/.
   19 
   20 2.  Use ActiveSync to copy osloader and bootldr to the bitsy.  Copy or
   21 rename the bootldr binary to "bootldr" on Windows, then copy it to the
   22 bitsy; trying to rename it on WinCE won't produce the right result.
   23 
   24 Steps 3 - 7 may work on a Pocket PC bitsy, but see Steps 3a - 7a
   25 if they don't or if you have a Pocket PC 2002 bitsy.
   26 
   27 3.  Run osloader by clicking on it under the WinCE File Explorer
   28 
   29 4.  Use osloader to save your WinCE flash away.  This takes a while,
   30 as it's 16MB over a 115,200 baud line.
   31 
   32 5.  Select "Run" from the osloader menu.  Ignore "Run from RAM"; it's
   33 not needed.
   34 
   35 6.  At this point, the bitsy's screen turns blank, but you can still
   36 talk to the bitsy over its serial port.  The serial port is connected
   37 to the OS loader's terminal program.  On Windows, you have to exit
   38 ActiveSync before the serial port is available for a terminal program.
   39 I moved the bitsy and its cable over to a Plan 9 machine and connected
   40 using "con -b 115200 /dev/eia[01]" to talk to the console.  The
   41 command "help" lists the OS loader's commands.
   42 
   43 7.  Now you need to download the BOOT loader program into flash (right
   44 now, you're only running the OS loader program out of RAM; rebooting
   45 will get you back to WinCE).  In the con window, "load bootldr" to the
   46 bitsy.  It will indicate that it's starting an xmodem download.
   47 Under con, type "Ctrl-\" to get a ">>>" prompt.  At this prompt, you
   48 want to run Plan 9's xms program to pipe the bootldr program to the
   49 bitsy.  For example, to download /tmp/bootldr, type "!xms /tmp/bootldr".
   50 
   51 If this step works successfully, the OS loader will print out some sort
   52 of OK checksum message.
   53 
   54 If you have a Pocket PC 2002 or steps 3 - 7 above didn't work for you,
   55 try 3a - 7a.
   56 
   57 3a.  Copy BootBlaster (also) to the bitsy via ActiveSync.
   58 
   59 4a.  Save your flash by running osloader and selecting "Flash->Save to
   60 File".  As it produces 4MB files, use ActiveSync to copy them off the
   61 bitsy.
   62 
   63 5a.  Move the bitsy and its cable over to a Plan 9 machine and connect
   64 using "con -b 115200 /dev/eia[01]" to talk to the console.
   65 
   66 6a.  Run BootBlaster by clicking on it under the WinCE File Explorer.
   67 
   68 7a.  Select "Program"; it should copy "bootldr" into your flash in
   69 about 15 seconds.
   70 
   71 8.  Reboot your bitsy (either cycle the power or use the reset
   72 switch).  The new boot loader runs out of Flash.  You'll get the linux
   73 penguin splash screen and a bunch of options triggered by buttons.
   74 Pick the one that gets you to the boot loader.
   75 
   76 9.  Make the partitions you need in the bitsy's flash, type, using
   77 the con program:
   78         partition reset
   79         partition define bootldr 0x000000 0x040000 2
   80         partition define params 0x040000 0x040000 0
   81         partition define kernel 0x080000 0x0c0000 0
   82         partition define user 0x140000 0x0c0000 0
   83         partition define ramdisk 0x200000 0x600000 0
   84         partition define fs 0x800000 0x800000 0
   85         params save
   86 
   87 These are the partitions as shown by partition show:
   88         boot> partition show
   89         argv[1]=partition
   90         npartitions=00000006
   91         bootldr
   92           base: 00000000
   93           size: 00040000
   94          flags: 00000002
   95         params
   96           base: 00040000
   97           size: 00040000
   98          flags: 00000000
   99         kernel
  100           base: 00080000
  101           size: 000C0000
  102          flags: 00000000
  103         user
  104           base: 00140000
  105           size: 000C0000
  106          flags: 00000000
  107         ramdisk
  108           base: 00200000
  109           size: 00600000
  110          flags: 00000000
  111         fs
  112           base: 00800000
  113           size: 00800000
  114          flags: 00000000
  115 
  116 After each line you'll get a message like `defining partition: params'.
  117 Different versions of the bootloader predefine different partitions.
  118 The bootldr partition is usually predefined, so you don't have to remake
  119 that.  You may have to delete one or two partitions.  The command is
  120         partition delete <name>
  121 Make sure the partition layout is as given above; some of this knowledge is
  122 built into the kernel.
  123 
  124 10. Before you can fill the new partitions with a kernel and a read-only
  125 file system, you'll have to make them.  In the directory /sys/src/9/bitsy,
  126 type mk and mk paqdisk.  Before mk-ing paqdisk, make sure you have all
  127 the necessary arm binaries installed in /arm and examine the file
  128 paqfiles/mfs to see what you need to change for connecting to your local
  129 file servers.
  130 
  131 11.  Now you can type "load kernel".  The boot loader will prompt for
  132 another xmodem download.  Again escape using "Ctrl-\", then use
  133 "!xms /sys/src/9/bitsy/9bitsy" (or "!xms /arm/9bitsy" if you've already
  134 installed it).
  135 
  136 12.  Download the ramdisk, using "load ramdisk" and
  137 "!xms /sys/src/9/bitsy/paqdisk" (or "!xms /arm/paqdisk" if you've already
  138 installed it), similarly to 10, above.
  139 
  140 13. Type `boot' or `boot flash' depending on your version of the boot loader.
  141 If you need the latter, you may want to
  142 
  143         set boot_type flash
  144         params save
  145 
  146 to make boot flash the default.
  147 
  148 You'll get a Dutch flag (or a French one, if you hold the iPaq the wrong way),
  149 then the boot screen will say, on the serial port, thus in your con window:
  150 
  151         root is from [paq]:
  152 
  153 Just wait a while or hit enter in the con window and it'll continue.
  154 
  155 14.  The bitsy will now want to calibrate the screen.  It'll put up a
  156 series of crosses that you should press the center of.  Hold the pen
  157 down over each cross for a second or so; aim carefully.  Hold the
  158 machine in your hand the way you'ld normally use it or the calibration
  159 could be off since there is depth to the glass in the screen.
  160 
  161 15.  You'll get a new screen with a single line at the top and a
  162 keyboard/scribble area at the bottom.  This is a simple one file
  163 editor.  This file is similar to plan9.ini on PC's.  There may be
  164 garbage on the top line.  If there is, delete the garbage letters.
  165 (Be careful here: the backspace and delete keys are adjacent on the
  166 wee keyboard and it's much too easy to hit delete instead of
  167 backspace, especially if you haven't calibrated the screen dead-on.)
  168 You should be left with a single line containing (with different
  169 numbers):
  170         calibrate='-16374 22919 251 -24'
  171 You need to enter a few more things, including, but not limited to:
  172 
  173         user=<user-name>
  174         wvkey1=<key string>
  175         wvkey2=<key string>
  176         wvkey3=<key string>
  177         wvtxkey=<key string>
  178         wvessid=<wavelan name>
  179         auth=<ip address>
  180         cpu=<ip address>
  181         proxy=<ip address>
  182         fs=<ip address>
  183 
  184 Your best bet is to copy these off a working bitsy.  wv*key* only
  185 matter if your wireless network is encrypted.  When roaming the world,
  186 omit wv*.  When you're done, hit the "ESC" key on the simulated
  187 keyboard, or the side button near the word iPAQ on the bitsy.  The
  188 system will now come up as you.  However, you'll get a message about
  189 the flash file system being corrupted, because we haven't yet
  190 initialized it.
  191 
  192 16. To set up the file systems, sweep a window and give the following
  193 sequence of commands.
  194 
  195         # aux/mkflashfs /dev/flash/fs
  196         # aux/flashfs
  197 
  198 aux/flashfs created a Plan 9 server in /srv/brzr, which we can use to set up
  199 default directories.
  200 
  201         # mount -c /srv/brzr /n/brzr
  202         # cd /n/brzr
  203         # mkdir n usr
  204         # mkdir n/fs n/emelie n/choline n/nslocum
  205         # mkdir usr/yourname usr/yourfriend
  206 
  207 17. For safety, reboot the system:
  208 
  209         # reboot
  210 
  211 18. Now reboot, go through the Linux splash screen, the Plan 9 boot
  212 editor, and sweep yourself a new rio window.
  213 
  214 Before you can connect to other machines, you need a way to enter
  215 passwords and keys into factotum.  The easiest way to do this is to
  216 run
  217 
  218         # auth/fgui &
  219 
  220 in the window you just made.  The window will disappear (fgui spends
  221 most of its time hidden), so sweep a new window and run the command
  222 
  223         # mfs
  224 
  225 to connect to file servers.  You will probably need to modify mfs to
  226 work in your environment (see point 10), though you can supply many
  227 of the variables it needs in step 15, and doing
  228 
  229         # import $cpu /net
  230 
  231 before running mfs can go a long ways.
  232 
  233 19.  When you're all set with a working wavelan, you can download new
  234 kernels more quickly using
  235 
  236         # bitsyload k
  237 
  238 and new paqdisks using
  239 
  240         # bitsyload r
  241 
  242 (r stands for ramdisk, the name of the partition into which paqdisk goes).
  243 Note that overwriting the ramdisk partition will cause the read-only file
  244 system which forms the root of you namespace to fail.  You'll need to
  245 reboot immediately after bytsyload r.

Cache object: 97cfcf486a524fc31cbb3cb595024cf9


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.