after adding a rtc battery

i have added the battery to a C3 board. initially i got some errors
like
select() to /dev/rtc to wait for clock tick timed out.
when i tried to access the clock with hwclock. reflashing the ubuntu
lucid image from http://elinux.org/BeagleBoardUbuntu seems to have
resolved this.

now i can use hwclock to show and set the rtc. but the rtc is ignored
at boot time. seems that having 'fixrtc' on the boot command line,
means that the filesystem unmount time is used to set the system
clock.

so i tried removing 'fixrtc' by creating a new boot.src by following
http://elinux.org/BeagleBoardUbuntu#U-Boot_Boot_Scripts now booting
stops at

Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Done.
[ 22.649810] mmc0: new SDHC card at address aaaa
[ 22.747467] mmcblk0: mmc0:aaaa SD04G 3.69 GiB
[ 22.752685] mmcblk0: p1 p2
Begin: Running /scripts/local-premount ...
Done.
[ 23.523742] EXT3-fs: mounted filesystem with writeback data mode.
[ 23.530242] kjournald starting. Commit interval 5 seconds
Begin: Running /scripts/local-bottom ...
Done.
Done.
Begin: Running /scripts/init-bottom ...
Done.
init: ureadahead main process (149) terminated with status 5
fsck from util-linux-ng 2.17.2
init: procps main process (187) terminated with status 255
rootfs: Superblock last mount time (Mon Aug 9 15:31:55 2010,
        now = Wed Dec 31 17:00:05 1969) is in the future.
rootfs: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
        (i.e., without -a or -p options)
mountall: fsck / [191] terminated with status 4
mountall: Filesystem has errors: /

i dont get a login prompt. the hardware clock is set to 2010 (it is a
few hours wrong because i have not sorted out the time zone).

so how do i get the boot process not to be pedantic/stupid about time
when 'fixrtc' is disabled?

thanks