LATEST STABLE BOOTLDR IS 2.17.18

USE AT YOUR OWN RISK!!!!
2.18.00: bavery 1/22/02
	-- transposed the 3600 display so its orientation
		matches everyone elses.
2.18.00: bavery 1/17/02
	--Feature version change to indicate gzip support
	--help system fixed
	--debug style menu commands hidden behind a DEBUG_BOOTLDR_CMDS flag
	--new splash command including the action button hint
******************************************************************
2.17.23: bavery 1/10/02
	-- added the ability to download gzipped images to flash.
		This only works with load <partition> currently.
2.17.22: Jamey Hicks 1/10/02
	 -- added pcmcia memory and io mapping routines
	 -- added power control for single CF and PCMCIA sleeves
	 -- implemented struct list_head according to usage in sleeve driver 
2.17.21: Jamey Hicks 1/10/02
	 -- added code to configure sdram bank1 (for 256MB ipaqs) (off by default)
	 -- added constraints to bootldr.ld.in per George Davis -- to
	 reduce size of bootldr when built with other (montavista?) toolchain
2.17.20: Brian Avery 1/8/02
	-- latch 1 button nicely during the jffs2 scan
2.17.19: Jamey Hicks 1/7/02
        - split array of bootldr params into separate declarations
        - bootldr ld script collects them (they can be in separate files)
        - PARAM() macro can be used to define them
        - get_param("name") -> &param_name
        - get_param_value("name", &var) -> var = param_name.value
2.17.18: Brian Avery 1/7/02
	-- buttons now checked during jffs2 scan
	-- graphical feedback added for buttons and scan progress
2.17.17: Jamey Hicks 1/3/02
         -- added pcmcia driver framework
2.17.16: Jamey Hicks 1/3/02
         -- added msleep() uses OSCR
         -- added sleeve driver framework
         -- added sleeve init, sleeve insert, sleeve eject commands
2.17.15: Brian Avery 1/3/02
	-- fixed the 3100 (mono) lcd display code so that the linux
		framebuffer appears correctly
2.17.14: Jamey Hicks 1/3/02
	 -- added code to pass mtd partition info on kernel cmdline
	 -- will remove the ATAG_PTABLE code once kernel supports mtdpart= on cmdline
2.17.13: Jamey Hicks 12/28/01
	 -- added beginning of hardware abstraction layer for H3100/H3600/H3800
2.17.12: Brian Avery 12/18/01
	-- ok, we are back to using the action button to force us into the
		bootldr.  The action button works for all models.
2.17.11: Brian Avery 12/18/01
	-- lcd screen now works for the 3800's.
	-- can turn off lcd for 3100's now too
2.17.10: Brian Avery 12/18/01
	-- lcd screen now works for the 3100's.
	-- made splash screen true 16 bit colour in prep for the 3800
2.17.9: Jamey Hicks 12/18/01
        -- changed xmodem, ymodem, and autoboot timeouts to be measured in seconds
        -- ymodem works with minicom but not hyperterminal
2.17.8: Jamey Hicks 12/17/01
        -- integrated most of John Dorsey's patches, including Assabet,
        md5sum, ymodem, and his jffs/jffs2 support
2.17.7: Jamey Hicks 12/14/01
        -- applied Sean Godsell's patch to reduce RTC runahead during reset
        or resume.
2.17.6: Brian Avery 12/13/01
	-- fixed bug in loading/recognizing German and French
		parrots/wince partitions
2.17.5: Brian Avery 12/12/01
	-- partition table now ordered by base address
	-- 3800 gets an asset partition tacked on the last
		flash sector
2.17.4: Brian Avery 12/12/01
	-- Bootloader now recognizes german wince partitions and has a 
		more liberal is this a parrot bl check.		
2.17.3: Brian Avery 12/12/01
	-- tweaked  RTTR initialization in boot-sa1100.s
	-- added a capabilities bit for 3800 support so BootBlaster and 
		and the Bootloader checks it.
	-- ALSO, NOW YOU NEED TO HOLD THE POWER KEY DOWN TO ACCESS THE BL
		 **NOT** THE ACTION KEY
2.17.2: Jamey Hicks 12/11/01
	-- moved RTTR initialization very early in boot-sa1100.s
	-- probably needs to be tweaked for wince
2.17.1: Brian Avery 12/5/01
	-- added support for the Ipaq 3800
2.17.0: Jamey Hicks 12/5/01
	-- changed version number because 2.16.25 changes boot behavior in
	an incompatible way -- 2.4.7-rmk3-np1-devfs up to hh13 will no
	longer boot on H3100

2.16.25: Brian Avery 12/4/01
         -- added a discovery function to dertermine 31/36/38xx models and 
		use that to set mach_type
2.16.24: Jamey Hicks 11/27/01
         -- use ATAG_PTABLE_COMPAT for now
2.16.23: Jamey Hicks 11/27/01
         -- moved bootldr tag_ptable partition table defs to linux kernel
            source include/linux/mtd/bootldr.h 
2.16.22: Jamey Hicks 11/27/01
         -- make mach_type not conditionalized by CONFIG_SKIFF'
2.16.21: Jamey Hicks 11/27/01
         -- added mach_type parameter: as of 2.4.15-rmk1, H3100, H3600, and
         H3800 distinguished by mach_type
            mach_type  22 for H3600 and H3700
            mach_type 136 for H3100
            mach_type 137 for H3800

STABLE BOOTLDR:
2.16.19: Brian Avery 11/2/01
	-- Behaviour change-> if wince is installed we jump to it 
		directly after a reset. This maintains parrot's 
		pseudo soft-reboot fxnality.  If you hold down the 
		action button you jump to our bootloader.  From here
		if you boot wince, you WILL clear dram.  If wince is not
		detected, the bootloader behaves as before.
	--  if the action button is held down (wince or linux), we will not
		autoboot.
2.16.17: Brian Avery 11/2/01
	-- load bootloader will now upload an OHH bootloader OR a parrot bootloader.
2.16.16: Brian Avery 11/1/01
	-- shortened default timeout to jump to os param
	-- put in smarts to rescan the flash if things have changed.
		--e.g. ls, reflash root, ls will result in another scan now.
2.16.12: Jamey Hicks 10/18/01
	 -- merged 2.16.11 onto cvs head branch
2.16.10: Brian Avery 10/16/01

2.16.10: Brian Avery 10/16/01
	-- prevets flash operations other than load bootldr when 
		running from DRAM
2.16.8: Brian Avery 10/15/01
	-- can load splash screen from a file 
		-- supports binary ppm (P6) and binary pgm (P5) file formats
	--re-enabled splash screen during jffs2 partition scan, overhead now 5%
2.16.0-2.16.6: Brian Avery 10/12/01
 - boots wince and linux.  suspends and resumes wince and linux and the bootldr.
 - autoboots wince if it is there.

============================================================
2.15.19 -- Jamey Hicks 10/10/01
- turn on the LCD after scanning the root partition for params
- look for wince at 0x40000, do not attempt to scan jffs2 if found

2.15.18 -- David Neuer 10/1/01
- make root partition not overlap bootldr on monochrom configuration

2.15.17 -- Jamey Hicks 9/28/01
- increase bootldr partition to 0x40000 on monochrome configuration 

2.15.16 -- Brian Avery 9/27/01
- added icache on by default
- made the bootldr,root partition the default one.

2.15.15 -- Brian Avery 9/26/01
- corrected params file reading bugs
- added cat command

2.15.14 -- Brian Avery 9/21/01
- converted boot_linux to pass params in a tags list
- enables bootldr to read params and partition table from root partition
  /boot/params rather than a sector

2.15.13 -- Brian Avery 9/19/01
- removed problematic enabling of cache at init time
- sped up jffs2 scan for empty fs

2.15.12 -- Jamey Hicks 9/18/2001
- initialize RTTR in bootldr.c so RTC will continue to count at 1Hz

============================================================

2.14.15  -- Jamey Hicks 8/19/01
- made minor change to params_save so that saving parameters formatted
PF_DECIMAL would not truncate the parameter list.  There is an probably 
still an issue with strlen, as pointed out by Dave Panariti.

2.14.14 -- Dave Panariti 6/22/2001
- Added kpart=xxx parsing to boot flash to allow specifying a kernel
  partition on the command line.

2.14.13 -- Dave Panariti 6/22/2001
- Added ability to run multiple commands separated by ';'
- Added param which names the partition in which to find the kernel.

2.14.12 -- Dave Panariti 6/14/2001
- Fixed to to say 8b/color rather than to imple 8bpp.
- Removed debug code in lcdzimg which prevented it from converting the
  image to the lcd's color format.
- Added back the CONFIG_GIMP_SPLASH_PNM vars to os xxx.mk which someone had
  nuked.
- Added target to make a raw compressed splash image for use with lcdzimg
- Added some doc to makefile about splash image format, etc.
- Added os_freebsd.mk so I can build at home again.

2.14.11 -- Dave Panariti 6/13/2001
- Made parameter execution overridden if booting verbosely (becoming
  debug boot)
- Added cvs_ver variable and tagver target to allow easy tagging w/
  make
- Made params save smarter about strings: now does strcmp.
- Found bug in wince-bootldr w.r.t params save.  In this case, the default
  params, which should point into flash at the original version of the
  params, ends up pointing somewhere else distinctly non-default-paramish.
  This needs to be fixed.  For the c000 (wince) bootldr, there is no flash
  copy of the params for reference.  Perhaps we can make a copy of the
  initialized params and use that as the reference in wince-bootldr.
  A function to get the "defaults" will need to be conditionalized to
  return the proper thing.  And it should be const.
- Added -n option to params save to have it just show what it would
  do. It also dumps the vars used to find the default params.

2.14.10  -- Brian Avery 6/7/2001
- partition save command now calls command_params_save as it ought to.
- renamed the save [kernel World bootldr...] command to upload[ ...] 
- if you try to load in a kernel larger than your kernel partition size 
	there are now enough copies of the error message to overcome 
	minicoms desire to eat them.  

2.14.8 -- Jamey
- dram_size was being probed but not saved in the dram_param

2.14.7 -- Jamey
- moved set_vppen and clr_vppen to btflash.c

2.14.6  -- Chris McKillop 5/11/2001
- Added new parameter values: domainname, dns1, dns2 and netcfg.  The first three 
  are pretty obvious and the last can be used to flag for manual or dhcp network
  configuration.
- Updated the build process to use OS specific makefiles (os_<name>.mk).  


2.14.5  -- Jamey 5/11/2001
- added "jffs2" as valid flags argument for define partition
- call params_eval() after load_params

2.14.4  -- Jamey 5/11/2001
- eflash <partitionname> now erases the whole named partition
- partition define <partitionname> <base> <size> 16 
  defines a JFFS2 partition.
- load <partitionname> erases the whole partition if it is JFFS2, and marks
  the unwritten sectors with jffs2_sector_marker0, jffs2_sector_marker1, jffs2_sector_marker2,
  saving and erase cycle on the sectors.

2.14.3
- merged in mitsy mods

2.14.2
- fixed btflash_reset_partitions so it initializes default partitions even
if no partition table is loaded into params partition.
- reduced xmodem_timeout and xmodem_initial_timeout to 100000.  We might
need to increase xmodem_initial_timeout to 100000 or 300000 for minicom.
3,000,000 causes hyperterminal to fail to transfer.

2.14.1
- fixed dwordtodecimal so it prints '0' for 0 and not '' for 0.  (Tested
before updating version number.)

2.14.0 Jamey 5/3/2001
- renumber to 2.14.0 because removal of headers and addition of partition
tables is actually a relatively signicant change

2.13.8 Jamey 5/3/2001
- the load and store commands now use the partition table to upload and
download regions by name
- the kernel no longer has a 12 byte header

2.13.7: Jamey 5/2/2001
- implemented flash partition table

2.13.6: Jamey 5/2/2001
- removed the special partitions other than bootldr, params, and kernel
- others will be supported by the currently unimplemented define_partition command

