From owner-freebsd-smp Sat Jan 9 11:43:41 1999 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id LAA03859 for freebsd-smp-outgoing; Sat, 9 Jan 1999 11:43:41 -0800 (PST) (envelope-from owner-freebsd-smp@FreeBSD.ORG) Received: from Sisyphos.MI.Uni-Koeln.DE (Sisyphos.MI.Uni-Koeln.DE [134.95.212.10]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id LAA03835; Sat, 9 Jan 1999 11:43:28 -0800 (PST) (envelope-from se@dialup124.zpr.uni-koeln.de) Received: from dialup124.zpr.Uni-Koeln.DE (dialup124.zpr.Uni-Koeln.DE [134.95.219.124]) by Sisyphos.MI.Uni-Koeln.DE (8.8.7/8.8.7) with ESMTP id UAA21276; Sat, 9 Jan 1999 20:42:40 +0100 (MET) Received: (from se@localhost) by dialup124.zpr.Uni-Koeln.DE (8.9.1/8.6.9) id UAA00357; Sat, 9 Jan 1999 20:28:50 +0100 (CET) Date: Sat, 9 Jan 1999 20:28:50 +0100 From: Stefan Esser To: Greg Rowe Cc: Mike Smith , freebsd-scsi@FreeBSD.ORG, freebsd-smp@FreeBSD.ORG, Stefan Esser Subject: Re: Symbios & SC450NX Message-ID: <19990109202850.A320@dialup124.mi.uni-koeln.de> Reply-To: se@FreeBSD.ORG References: <199901041931.LAA14216@dingo.cdrom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95i In-Reply-To: ; from Greg Rowe on Mon, Jan 04, 1999 at 04:40:31PM -0600 Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On 1999-01-04 16:40 -0600, Greg Rowe wrote: > I've also copied the -scsi list on this. Below is the output of the boot (-hv) Since I'm only on the SCSI list, I only now got to hear that there apparently is some problem with the NCR driver and the 53c896 ... > CCB > CCB_H pci/ncr.c Target ID Failed at 5079 This is an assert() for a "can't happen" case, which I never before heard was triggered ... The probable cause is, that Symbios changed the definition of the CTEST0 register (it was a general purpose R/W register, but has been labeled "reserves the right to use these bits for future 53C8XX family enhancements"). The latest data book I have is for the 53c895, and the register is available to the driver, for that controller. I don't know about the 896, but I've got to assume, that Symbios started to assign internal status and(or command bits to CTEST0 ... The solution to this problem is to either only use those bits of CTEST0, that still are available, or to use some other register to hold the current SCSI target information. The problem is, that CTEST0 is the only reasonable choice for early 53c8xx family members. Later chips got 16 more bytes of internal scratch register storage, but the driver had to be modified in a number of places, if CTEST0 was to to be replaced by, say, the low byte of SCRATCHC. This is not really hard to do, but will require some testing and more time than a weekend ;-) Access to a 53c896 card would help, as did having copies of the pages that describe CTEST0 in the "SYM53C896 Data Manual". Symbios has been very responsive when I asked for programming info in the past, but it will probably take many weeks until I receive the data books, if I order them today ... I could send patches that print register info at the place where the assert() fails, but I doubt this is the correct way to deal with this problem. Rather, I'd have the docs, and then will provide a solution that fixes the problem for the 896, without giving up 53c810 support in the driver, which is the real hard problem :) Regards, STefan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message