Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: About support for rtVAX300



Roger Ivie wrote:

> On Sun, 13 Jan 2013, Holm Tiffe wrote:
> >So ist should be ok to use that:
> >
> >scb_vecalloc(0x2c0, (void (*)(void *)) scnintr, sc,
> >                       SCB_ISTACK, &sc->sc_intrcnt);
> >
> >for the SCN2681 (if the hardware supports this)?
> 
> I couldn't tell you. As I said, I've never done any NetBSD kernel
> hacking.
> 
> >Since the NIC is doing nothing, is it possible that INTs aren't
> >activated at all in the moment?
> 
> It is possible that the bootstrap has shut the SGEC down so that it
> isn't scribbling all over memory while NetBSD is trying to size the
> system.
> 
> >Since there seems to be no external intmask logic on the rtVAX (at least
> >there is nothing documented), enabling the IPLs with MFPR/MTPR should be
> >enough already? (splx?)
> 
> Bear in mind that there may be some stuff on the device external to the
> rtVAX.
> -- 
> roger ivie
> rivie%ridgenet.net@localhost


Oha, found the problem with the sgec in sys/dev/ic/sgec.c at line 784:

 /*
         * Get the vector that were set at match time, and remember it.
         * WHICH VECTOR TO USE? Take one unused. XXX
         * Funny way to set vector described in the programmers manual.
         */
        reg = ZE_NICSR0_IPL15 | sc->sc_intvec | 0x1fff0003; /* SYNC/ASYNC??? */
        //reg = ZE_NICSR0_IPL14 | sc->sc_intvec | 0x1fff0003; /* SYNC/ASYNC??? 
*/
        i = 10;
        do {
                if (i-- == 0) {
                        aprint_error_dev(sc->sc_dev,
                            "failing SGEC CSR0 init\n");

The IPL for the sgec is hardcoded there to IPL_14, if I change it to the
correct IPL_15 Ig get this:

total memory = 16380 KB
avail memory = 13068 KB
mainbus0 (root)
cpu0 at mainbus0: RTVAX300, CVAX microcode rev 6 Firmware rev 17
ze0 at mainbus0
ze0: hardware address 00:00:f8:50:93:14
lance at mainbus0 not configured
uba at mainbus0 not configured
boot device: ze0
root on ze0
nfs_boot: trying DHCP/BOOTP
nfs_boot: DHCP next-server: 192.168.50.50
nfs_boot: my_name=rtvax
nfs_boot: my_addr=192.168.50.20
nfs_boot: my_mask=255.255.255.0
nfs_boot: gateway=192.168.50.254
root on unicorn:/data/home/exports/rtvax
root file system type: nfs
TODR stoppedWARNING: preposterous TOD clock time
WARNING: using filesystem time
WARNING: CHECK AND RESET THE DATE!
warning: no /dev/console
panic: init died (signal 0, exit 11)

..no clue why init is dying, but I really don't have device entries.
Have to look how I could create them..

But this isn't my question here.
Since values like vax_boardtype aren't known to the sys/dev/ic/sgec.c file
how should I include the needed info to make a decision which IPL is to be
used so that I don't break anything other?

Regards,

Holm
-- 
      Technik Service u. Handel Tiffe, www.tsht.de, Holm Tiffe, 
     Freiberger Straße 42, 09600 Oberschöna, USt-Id: DE253710583
  www.tsht.de, info%tsht.de@localhost, Fax +49 3731 74200, Mobil: 0172 8790 741



Home | Main Index | Thread Index | Old Index