Subject: On cg4 problems...
To: None <port-sun3@NetBSD.ORG>
From: Scott Ellis <sellis@rohan.sdsu.edu>
List: port-sun3
Date: 05/16/1996 17:46:38
Here's my situation...I have a 3/110 which has an onboard cg4.  NetBSD-1.1
kernel's config cg4 in the wrong location (obmem0 0xff200000 instead of
0xff000000), but in general, it appears that 1.1 works.  1.1B (-current)
works with bw2 configured (cg4 looks like a bw2 and a cg4), but if I 
configure cg4, then I get a kernel panic after the cg4 is found (the config
prints "cgfour0 at obmem0 addr 0xff000000", and then panics).  From the 
dump that follows the panic, and thanks to people much more into 68k
assembly language than I am, it looks like config_search() is causing
the problem.  Specifically,subr_autoconf.c, the next-to-last for()...

for (p = cf->cf_parents; *p >= 0; p++)
    if (parent->dv_cfdata == &cfdata[*p])
        mapply(&m, cf);

It seems that p is becoming zero somehow, and that's causing the panic.

trap type=0x8, code=0x165, v=0x0                                                                    
kernel: MMU fault trap                                                                              
pid=0, pc=0E0140D8, ps=2019, sfc=001, dfc=001

So, my question is...where do I go from here?  cfdata and pv[] look "okay"
to me...being that they are identical to the bwtwo0 entry, and bwtwo0 seems
to work fine.

I did a diff of many of the involved files, from 1.1 to -current, and there
didn't seem to be anything drastic that changed.

Ideas?

I'd really like to see color on this machine. ;-) ;-)


-- 
   //////////////////////////////////////////////////////////////////////
  //  Scott Ellis   //   sellis@gi.com   //   sellis@rohan.sdsu.edu   //
 //////////////////////////////////////////////////////////////////////
// WARNING: This signature warps  time and space in its vicinity    //