Subject: [agenda-dev] lots of warranty voiding

From: Alexander Oelzant <[email-masked]>
Date: Sun, 10 Jun 2001 01:48:29 +0200

Hi Fellow Agenders,

The good news first: my unit still/again works and has 16
MB of ram available[1]. However, there are a few problems ...
For one thing, my unit caught a massive case of suspend freeze:
when it crashes or suspends, I have to remove power until the
gold cap is sufficiently empty that a hard reset has taken place
...

The RAM upgrade itself was relatively easy: I downloaded the
NEC memory data sheet, compared it to the chips[2] on one of
my older sdram dimms, destroyed the latter and soldered the resulting
chip onto the old ram chip, connecting all of the corresponding
lines to the old chip except the chip select pin (/CS, 19) which
went to VR4181 SDCS1# (34). After a few hours of soldering
(and running pmon mt (memory test command) to see which addresses/
data pins were still not connected) the electronic part worked -
more or less. To be on the safe side, I threw in three ~ 300 n
capacitors to the right and left of the ram sandwich and near the
flash chip.

PMON was happy, reported 16 MB instead of 8192 KB of RAM and -
didn't boot linux any more.

It worked when I booted without boot arguments (/dev/rom is default
anyways), and it even worked when booting via serial console
(console=ttyS0,115200), but the video option (probably the highly
suerfluous ether option, too) confused the kernel sufficiently
to not even boot.

Setting variables of course doesn't work (hello Brad) (rather
reading them back doesn't work, writing them over the flashdisk
works fine enough ... aargh!!) ... more on that later. Suffice
to say the experimental PMON from Agenda's site would make things
worse ...

So, with the CS line disconnected everything worked, while with
16 MB the kernel commandline parser refused booting.

Very well, as a workaround I could still compile vr4181fb as a
module and live without a bootup console; many great unix systems
run headless, so why shouldn't the agenda do so for a while.
Of course the 1.0.3 compiler from agenda (purportedly only
the binutils part) didn't produce usable modules, so I went
with the toolchain from the nino project[3]; the disadvantage
was that it couldn't compile the nfs parts, but it went through
everything else. Some small changes were necessary to hand the
apppropriate parameters to the vr4181fb module, I'll make the
diff file available rsn.

That was almost that; the /hard/ crashes were still a problem,
so (with the proposed solution of trying my own led-patched
kernel not working, since that included the vr4181fb compiled in)
I flashed the 3.1.365 from the ftp. I was to experience a great
disappointment: three led flashes and that was that. No serial
activity was to be seen, X didn't start (despite insmod vr4181fb
in rc.sysinit) and the agenda stayed generally brick-like.

With nothing software-related left to hack (how do you program
a brick that flashes in red?) I decided to go down to hw level
again: I unsoldered the CS line from the top chip - and PMON
3.1.365 grinned at me. Aargh. It was a good thing I had backed up
3.1.274 (since the most recent "stable" version from Agenda seemed
to be 2.1.274)[4]. No, I won't describe the ugly cu/vi/perl
chain involved to get that file ;). While I was at it, I
also decided to binary-patch the linux variables since setting
them on line still isn't possible.

So now I have an Agenda VR3 with 16 MB of RAM that I can
run a few perl scripts, sidplay and games on at the same time -
but that still doesn't suspend (or rather unsuspend) properly,
and the boot-console of which is non-existent.

The Conclusion is, better not try this at home. The instabilities
might stem from the RAM (EliteMT is, as it seems to be, not the
best of suppliers), the power surges exceeding the specs of
the DC/DC converter (not very likely, with the caps around the
chips, but possible ...) or software (most likely areas: PMON,
kernel fb/console interface).

I hope this short report of my past week helps someone ...

Happy hacking!
   Alexander

ps. I don't have a digital camera or scanner, so pictures of the
upgrade might or might not follow ... it's not particularly
exciting anyways: the chips are approximately 1 mm high, so you
could probably stack four of them without having to destroy the
case. Admittedly that would be a good opportunity to update
the webpage to feature this adventure ;). Still I (basically)
intend to go to LinuxTag 2001 (as soon as I remember when and where
- the beginning of July somewhere in the far Germany afaik),
and I intend to take it there.

[1] http://131.130.199.155/~aoe/mystuff/agenda/agenda.boot.16M
[2] EliteMT M12L64164A data sheet:
http://www.esmt.com.tw/datasheet/M12L64164A.exe
  -not- found from
http://www.esmt.com.tw/product1.htm
  (but at least I found hints how it might be called there ;))
[3] local symbol %s with index %ld exceeds local_symtab_size %ld
    04292001-experimental from
ftp://ftp.cotw.com/pub/linux/nino/toolchain/
    However, the rpms from ftp://oss.sgi.com/ might have worked as
    well
[4] http://131.130.199.155/~aoe/mystuff/agenda/pmon-3.1.274.binary.orig

-- 
Alexander Oelzant 		[email-masked]
Durchlaufstr. 7/4/5		[email-masked]
A-1200 Wien			+43-1-3500929
Austria - Europe		internic, ripe, bofh: !ao418	McQ

_______________________________________________
agenda-dev mailing list
[email-masked]
http://lists.agendacomputing.com/mailman/listinfo/agenda-dev