9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: nigel@9fs.org
To: 9fans@cse.psu.edu
Subject: Re: [9fans] 53c895 failed to INIT
Date: Fri, 28 Jul 2000 09:36:28 +0100	[thread overview]
Message-ID: <E13I5Z8-000BAe-0K@tele-post-20.mail.demon.net> (raw)

[-- Attachment #1: Type: text/plain, Size: 321 bytes --]

Oh dear. I read the code too early in the morning.

It appears the table entry is missing for 895.

But things are worse. The code is too old for an 895.

We need to transfer /sys/src/9/pc/sd53c8xx.c to
/sys/src/fs/*/scsincr53c8xx.c, and also the microcode.

I run my fileserver on an 875 which is OK (just).


[-- Attachment #2: Type: message/rfc822, Size: 4356 bytes --]

From: arisawa@ar.aichi-u.ac.jp
To: 9fans@cse.psu.edu
Subject: Re: [9fans] 53c895 failed to INIT
Date: Fri, 28 Jul 2000 01:21:51 -0400 (EDT)
Message-ID: <200007280521.BAA08647@cse.psu.edu>

Hello,

nigel@9fs.org said:
>#define KPRINT if(1)print
>#define IPRINT if(1)print
>#define DEBUG(n) ((n) <= 2)

and jmk@plan9.bell-labs.com:
>Which of the fileserver kernels are you using (plan9pc, emelie, etc.)?
>They were all slightly different in the original release but will all
>be the same in the update planned this weekend.
>
>What do you have in plan9.ini?

Thanks.

My 9pcfs is based on emelie and my plan9.ini is as follows.
----- plan9.ini ----
*nomp=1
bootfile=fd0!dos!9pcfs
distname=plan9
scsi0=type=53c8xx
ether0=type=elnk3
monitor=cga
mouseport=ps2
nvr=fd!0!plan9.nvr
sysname=gaea
--------------------

Manual says known scsi type is mylex and 53c8xx.
Not ncr53c8xx.
However you will find in fs/emelie/scsi.c:

static struct {
	char*	type;
	Scsiio	(*reset)(int, ISAConf*);
} scsictlr[] = {
	{ "aha1542", buslogic, },
	{ "buslogic", buslogic, },
	{ "ncr53c8xx", ncr53c8xxreset, },
	{ 0, },
};

So I have add a line this time
	{ "53c8xx", ncr53c8xxreset, },
so that 9pcfs can go farther to the line including (*scsictlr[n].reset)(ctlrno, ctlr))
 in fs/emelie/scsi.c:
		for(n = 0; scsictlr[n].type; n++) {
			if(strcmp(scsictlr[n].type, ctlr->type))
				continue;
			if((ctlr->io = (*scsictlr[n].reset)(ctlrno, ctlr)) == 0)
				break;

However problem has not fixed; 9pcfs shows the same message as before:
scsi#0: 53c895: port 0 Failed to INIT controller
So I investigated farther.

In the function ncr53c8xxreset() in fs/emelie/scsincr53c8xx.c,
9pcfs can proceed to init(ctlr, isa, differential).
So I added the debugging code in init function as follows:
	rid = pcicfgr8(pcidev, PciRID);
	for (var = 0; var < MAXVAR; var++) {
print("scsincr53c8xx.c: init():  did=%d,%d rid=%d, %d\n",
pcidev->did,variant[var].did,rid,variant[var].maxrid);
		if (pcidev->did == variant[var].did && rid <= variant[var].maxrid)
			break;
	}
	if (var >= MAXVAR)
		return 0;
	print("scsi#%d: %s rev. 0x%.2x intr=%d command=%.4x\n",
		ctlr->ctlrno, variant[var].name, rid,
		pcidev->intl, pcicfgr16(pcidev, PciPCR));

The result is:
scsincr53c8xx.c: init():  did=12,1 rid=1,15
scsincr53c8xx.c: init():  did=12,1 rid=1,31
scsincr53c8xx.c: init():  did=12,1 rid=1,255
scsincr53c8xx.c: init():  did=12,5 rid=1,255
scsincr53c8xx.c: init():  did=12,4 rid=1,255
scsincr53c8xx.c: init():  did=12,3 rid=1,15
scsincr53c8xx.c: init():  did=12,3 rid=1,255
scsincr53c8xx.c: init():  did=12,6 rid=1,15
scsincr53c8xx.c: init():  did=12,6 rid=1,255
scsincr53c8xx.c: init():  did=12,15 rid=1,1
scsincr53c8xx.c: init():  did=12,15 rid=1,255
scsincr53c8xx.c: init():  did=12,13 rid=1,255
scsincr53c8xx.c: init():  did=12,11 rid=1,255

Thanks again.

Kenji Arisawa
E-mail: arisawa@aichi-u.ac.jp

             reply	other threads:[~2000-07-28  8:36 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-07-28  8:36 nigel [this message]
  -- strict thread matches above, loose matches on Subject: below --
2000-07-28 10:32 nigel
2000-07-28 10:08 arisawa
2000-07-28  5:21 arisawa
2000-07-27  6:24 nigel
2000-07-27  6:01 arisawa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E13I5Z8-000BAe-0K@tele-post-20.mail.demon.net \
    --to=nigel@9fs.org \
    --cc=9fans@cse.psu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).