AF:
NF:0
PS:10
SRH:1
SFN:
DSR:
MID:<20070306152253.2d608925@ripper.onstor.net>
CFG:
PT:0
S:andy.sharp@onstor.com
RQ:
SSV:onstor-exch02.onstor.net
NSV:
SSH:
R:<warren.gale@onstor.com>,<brian.stark@onstor.com>,<jay.michlin@onstor.com>,<larry.scheer@onstor.com>,<tim.gardner@onstor.com>
MAID:1
X-Sylpheed-Privacy-System:
X-Sylpheed-Sign:0
SCF:#mh/Mailbox/sent
X-Sylpheed-End-Special-Headers: 1
Date: Tue, 6 Mar 2007 15:23:19 -0800
From: Andrew Sharp <andy.sharp@onstor.com>
To: Warren Gale <warren.gale@onstor.com>
Cc: Brian Stark <brian.stark@onstor.com>, Jay Michlin
 <jay.michlin@onstor.com>, Larry Scheer <larry.scheer@onstor.com>, Tim
 Gardner <tim.gardner@onstor.com>
Subject: bobcat & linux: exception vector questions
Message-ID: <20070306152319.703b196c@ripper.onstor.net>
Organization: Onstor
X-Mailer: Sylpheed-Claws 2.6.0 (GTK+ 2.8.20; x86_64-pc-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Hi Warren,

The #1 problem I'm having getting Linux to boot is a problem with the
exception vectors not being hooked up properly.  Based on a
conversation I had with Brian Stark, it sounds like we have modified
the PROM from the way it originally handled the exception vectors.  And
I'm guessing therein lies the problem: Linux is expecting that to be
done in the standard PMON way.

Can you shed any light on this?  I've been running around disassembling
the code that is installed by the PROM and I have a decent idea of how
that works, but I've yet to get that far into how the Linux kernel is
doing things and what it expects, other than it isn't doing anything
that it doesn't normally do on a dozen other PMON based MIPS platforms.

Put another way, I haven't seen any code that copies exception vectors
to 0x80000180 or any other address below the load address of
0x83000000.  So the only thing I can figure is that the PMON sets them
up to point to a secondary jump table, and that the kernel is supposed
to fill those in, or, that the boot loader and the kernel are supposed
to agree on a symbol for the start of the kernel's exception vector
table, and the PROM fixes up it's secondary jump table accordingly.

Can I get a version of the PROM without those changes or restored
back to the original way that exception vectors were handled?

Thanks,

a

PS I wish the load address was a lot lower than 0x83000000.  Something
like 0x80100000 or 0x80400000, etc.  Does the PROM really need 48MB?
