📄 ncr53c8xx.txt
字号:
error occurs.Field B : DSTAT io register (DMA STATUS) Bit 0x40 : MDPE Master Data Parity Error Data parity error detected on the PCI BUS. Bit 0x20 : BF Bus Fault PCI bus fault condition detected Bit 0x01 : IID Illegal Instruction Detected Set by the chip when it detects an Illegal Instruction format on some condition that makes an instruction illegal. Bit 0x80 : DFE Dma Fifo Empty Pure status bit that does not indicate an error. If the reported DSTAT value contains a combination of MDPE (0x40), BF (0x20), then the cause may be likely due to a PCI BUS problem.Field C : SIST io register (SCSI Interrupt Status) Bit 0x08 : SGE SCSI GROSS ERROR Indicates that the chip detected a severe error condition on the SCSI BUS that prevents the SCSI protocol from functioning properly. Bit 0x04 : UDC Unexpected Disconnection Indicates that the device released the SCSI BUS when the chip was not expecting this to happen. A device may behave so to indicate the SCSI initiator that an error condition not reportable using the SCSI protocol has occurred. Bit 0x02 : RST SCSI BUS Reset Generally SCSI targets do not reset the SCSI BUS, although any device on the BUS can reset it at any time. Bit 0x01 : PAR Parity SCSI parity error detected. On a faulty SCSI BUS, any error condition among SGE (0x08), UDC (0x04) and PAR (0x01) may be detected by the chip. If your SCSI system sometimes encounters such error conditions, especially SCSI GROSS ERROR, then a SCSI BUS problem is likely the cause of these errors.For fields D,E,F,G and H, you may look into the sym53c8xx_defs.h file that contains some minimal comments on IO register bits.Field D : SOCL Scsi Output Control Latch This register reflects the state of the SCSI control lines the chip want to drive or compare against.Field E : SBCL Scsi Bus Control Lines Actual value of control lines on the SCSI BUS.Field F : SBDL Scsi Bus Data Lines Actual value of data lines on the SCSI BUS.Field G : SXFER SCSI Transfer Contains the setting of the Synchronous Period for output and the current Synchronous offset (offset 0 means asynchronous).Field H : SCNTL3 Scsi Control Register 3 Contains the setting of timing values for both asynchronous and synchronous data transfers. Understanding Fields I, J, K and dumps requires to have good knowledge of SCSI standards, chip cores functionnals and internal driver data structures.You are not required to decode and understand them, unless you want to help maintain the driver code.16. Synchronous transfer negotiation tablesTables below have been created by calling the routine the driver usesfor synchronisation negotiation timing calculation and chip setting.The first table corresponds to Ultra chips 53875 and 53C860 with 80 MHz clock and 5 clock divisors.The second one has been calculated by setting the scsi clock to 40 Mhz and using 4 clock divisors and so applies to all NCR53C8XX chips in fast SCSI-2 mode.Periods are in nano-seconds and speeds are in Mega-transfers per second.1 Mega-transfers/second means 1 MB/s with 8 bits SCSI and 2 MB/s with Wide16 SCSI.16.1 Synchronous timings for 53C895, 53C875 and 53C860 SCSI controllers ---------------------------------------------- Negotiated NCR settings Factor Period Speed Period Speed ------ ------ ------ ------ ------ 10 25 40.000 25 40.000 (53C895 only) 11 30.2 33.112 31.25 32.000 (53C895 only) 12 50 20.000 50 20.000 13 52 19.230 62 16.000 14 56 17.857 62 16.000 15 60 16.666 62 16.000 16 64 15.625 75 13.333 17 68 14.705 75 13.333 18 72 13.888 75 13.333 19 76 13.157 87 11.428 20 80 12.500 87 11.428 21 84 11.904 87 11.428 22 88 11.363 93 10.666 23 92 10.869 93 10.666 24 96 10.416 100 10.000 25 100 10.000 100 10.000 26 104 9.615 112 8.888 27 108 9.259 112 8.888 28 112 8.928 112 8.888 29 116 8.620 125 8.000 30 120 8.333 125 8.000 31 124 8.064 125 8.000 32 128 7.812 131 7.619 33 132 7.575 150 6.666 34 136 7.352 150 6.666 35 140 7.142 150 6.666 36 144 6.944 150 6.666 37 148 6.756 150 6.666 38 152 6.578 175 5.714 39 156 6.410 175 5.714 40 160 6.250 175 5.714 41 164 6.097 175 5.714 42 168 5.952 175 5.714 43 172 5.813 175 5.714 44 176 5.681 187 5.333 45 180 5.555 187 5.333 46 184 5.434 187 5.333 47 188 5.319 200 5.000 48 192 5.208 200 5.000 49 196 5.102 200 5.00016.2 Synchronous timings for fast SCSI-2 53C8XX controllers ---------------------------------------------- Negotiated NCR settings Factor Period Speed Period Speed ------ ------ ------ ------ ------ 25 100 10.000 100 10.000 26 104 9.615 125 8.000 27 108 9.259 125 8.000 28 112 8.928 125 8.000 29 116 8.620 125 8.000 30 120 8.333 125 8.000 31 124 8.064 125 8.000 32 128 7.812 131 7.619 33 132 7.575 150 6.666 34 136 7.352 150 6.666 35 140 7.142 150 6.666 36 144 6.944 150 6.666 37 148 6.756 150 6.666 38 152 6.578 175 5.714 39 156 6.410 175 5.714 40 160 6.250 175 5.714 41 164 6.097 175 5.714 42 168 5.952 175 5.714 43 172 5.813 175 5.714 44 176 5.681 187 5.333 45 180 5.555 187 5.333 46 184 5.434 187 5.333 47 188 5.319 200 5.000 48 192 5.208 200 5.000 49 196 5.102 200 5.00017. Serial NVRAM (added by Richard Waltham: dormouse@farsrobt.demon.co.uk)17.1 FeaturesEnabling serial NVRAM support enables detection of the serial NVRAM includedon Symbios and some Symbios compatible host adaptors, and Tekram boards. The serial NVRAM is used by Symbios and Tekram to hold set up parameters for the host adaptor and it's attached drives.The Symbios NVRAM also holds data on the boot order of host adaptors in asystem with more than one host adaptor. This enables the order of scanningthe cards for drives to be changed from the default used during host adaptordetection.This can be done to a limited extent at the moment using "reverse probe" butthis only changes the order of detection of different types of cards. TheNVRAM boot order settings can do this as well as change the order the sametypes of cards are scanned in, something "reverse probe" cannot do.Tekram boards using Symbios chips, DC390W/F/U, which have NVRAM are detectedand this is used to distinguish between Symbios compatible and Tekram host adaptors. This is used to disable the Symbios compatible "diff" settingincorrectly set on Tekram boards if the CONFIG_SCSI_53C8XX_SYMBIOS_COMPAT configuration parameter is set enabling both Symbios and Tekram boards to be used together with the Symbios cards using all their features, including"diff" support. ("led pin" support for Symbios compatible cards can remainenabled when using Tekram cards. It does nothing useful for Tekram hostadaptors but does not cause problems either.)17.2 Symbios NVRAM layouttypical data at NVRAM address 0x100 (53c810a NVRAM)-----------------------------------------------------------00 0064 018e 0b00 30 00 00 00 00 07 00 00 00 00 00 00 00 07 04 10 04 00 00 04 00 0f 00 00 10 00 50 00 00 01 00 00 62 04 00 03 00 00 10 00 58 00 00 01 00 00 63 04 00 01 00 00 10 00 48 00 00 01 00 00 61 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0f 00 08 08 64 00 0a 000f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fe fe00 0000 00-----------------------------------------------------------NVRAM layout detailsNVRAM Address 0x000-0x0ff not used 0x100-0x26f initialised data 0x270-0x7ff not usedgeneral layout header - 6 bytes, data - 356 bytes (checksum is byte sum of this data) trailer - 6 bytes --- total 368 bytesdata area layout controller set up - 20 bytes boot configuration - 56 bytes (4x14 bytes) device set up - 128 bytes (16x8 bytes) unused (spare?) - 152 bytes (19x8 bytes) --- total 356 bytes-----------------------------------------------------------header00 00 - ?? start marker64 01 - byte count (lsb/msb excludes header/trailer)8e 0b - checksum (lsb/msb excludes header/trailer)-----------------------------------------------------------controller set up00 30 00 00 00 00 07 00 00 00 00 00 00 00 07 04 10 04 00 00 | | | | | | | -- host ID | | | | | --Removable Media Support | | 0x00 = none | | 0x01 = Bootable Device | | 0x02 = All with Media | | | --flag bits 2 | 0x00000001= scan order hi->low | (default 0x00 - scan low->hi) --flag bits 1 0x00000001 scam enable 0x00000010 parity enable 0x00000100 verbose boot msgsremaining bytes unknown - they do not appear to change in mycurrent set up for any of the controllers.default set up is identical for 53c810a and 53c875 NVRAM(Removable Media added Symbios BIOS version 4.09)-----------------------------------------------------------boot configurationboot order set by order of the devices in this table04 00 0f 00 00 10 00 50 00 00 01 00 00 62 -- 1st controller04 00 03 00 00 10 00 58 00 00 01 00 00 63 2nd controller04 00 01 00 00 10 00 48 00 00 01 00 00 61 3rd controller00 00 00 00 00 00 00 00 00 00 00 00 00 00 4th controller | | | | | | | | | | | | | | ---- PCI io port adr | | | | | --0x01 init/scan at boot time | | | | --PCI device/function number (0xdddddfff) | | ----- ?? PCI vendor ID (lsb/msb) ----PCI device ID (lsb/msb)?? use of this data is a guess but seems reasonableremaining bytes unknown - they do not appear to change in mycurrent set updefault set up is identical for 53c810a and 53c875 NVRAM-----------------------------------------------------------device set up (up to 16 devices - includes controller)0f 00 08 08 64 00 0a 00 - id 00f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 00 08 08 64 00 0a 00 0f 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -