Date: Mon, 22 Jan 2001 21:54:42 +0800 From: <derrenl@synology.com> To: iain@research.canon.com.au;, gibbs@scsiguy.com;, cheen@synology.com;; Cc: freebsd-scsi@FreeBSD.ORG Subject: RE: More target mode observations Message-ID: <200101221354.VAA12927@synology.com>
next in thread | raw e-mail | index | archive | help
>Following up to myself with a bit more info, > >I played around a little bit more, and discovered that yes, we do have >some atio's waiting, and if we get a bus reset one of these gets sent >back. > >I also discovered that ahc_intr() never gets called during the rescan of >the bus whilst in target mode. To me at least this would suggest that >the controller is never being selected, or failing that the controller >is never telling the device driver that it has been selected. > >Unfortunately we do not have any hardware here for examining SCSI >busses, otherwise I could find out whether the controller was responding >to the select with BSY (well, we have the logic analyser, but nothing to >plug it in with). > >The other thing is that I only get bus reset intermittantly, which >worries me. By this I mean that I can do a camcontrol reset <bus> on one >machine, and the other machine doesn't always pick it up (I don't get >he "Somebody reset bus %d" message). > Hi: I am experiencing exactly what you described in your mail. And I am also looking for the answers. I have two AHA-2940U2W card on two different machine respectively. I named them brain-test and idb-test respectively. They are connected by an external scsi cable. The chip on the scsi card is aic-7890 (it should work well according to Justin.) And the FreeBSD version is 4.1-20000812-STABLE. Unfortunately, when I triggered the target mode operation on the idb-test machine and rescanned the bus from the brain-test machine, it found nothing. On the one way, the brain-test did select the target mode controller, but it got no response and returned with time out message. On the other way, the target controller didn't capture any select request. It looks like that chip on idb-test is not properly triggered. I mean it doesn't know it should act as a target mode controller. But the interesting thins is it can catch the channel reset signal. I had also tested the aic-7899, and put in on the idb-test machine. But it still didn't work. I'm including a copy of the /var/log/messages with diagnostic output. I wish it helps for verifying the situations. If anyone has any ideas or suggestions, I would like to hear from you Derren L. derrenl@synology.com Here is the /var/log/messages output: # # the log on brain-test machine # brain-test /kernel: ahc1: <Adaptec 2940 Ultra2 SCSI adapter> port 0x1c00-0x1cff mem 0xfb400000-0xfb400fff irq 10 at device 14.0 on pci1 brain-test /kernel: ahc1: Reading SEEPROM...done. brain-test /kernel: ahc1: BIOS eeprom is present brain-test /kernel: ahc1: Secondary High byte termination Enabled brain-test /kernel: ahc1: Secondary Low byte termination Enabled brain-test /kernel: ahc1: Primary Low Byte termination Enabled brain-test /kernel: ahc1: Primary High Byte termination Enabled brain-test /kernel: ahc1: aic7890/91 Wide Channel A, SCSI Id=7, 16/255 SCBs brain-test /kernel: ahc1: hardware scb 64 bytes; kernel scb 32 bytes; ahc_dma 8 bytes brain-test /kernel: ahc1: Downloading Sequencer Program... 403 instructions downloaded # Enable the debug information brain-test /kernel: (xpt0:xpt0:0:-1:-1): debugging flags now 7 # Reset the bus. And the idb-test did get the reset request. brain-test /kernel: (noperiph:ahc1:0:-1:-1): SCSI bus reset delivered. 0 SCBs aborted. # Rescan the target mode controller # It got a select time out status brain-test /kernel: (probe0:ahc1:0:9:0): probestart brain-test /kernel: (probe0:ahc1:0:9:0): xpt_action brain-test /kernel: (probe0:ahc1:0:9:0): ahc_action brain-test /kernel: (probe0:ahc1:0:9:0): start scb(0xc0a41000) brain-test /kernel: ahc_handle_scsiint: SELTO brain-test /kernel: (probe0:ahc1:0:9:0): ahc_done - scb 0 brain-test /kernel: (probe0:ahc1:0:9:0): xpt_done brain-test /kernel: (probe0:ahc1:0:9:0): camisr(probe0:ahc1:0:9:0): probedone # # the log on idb-test machine # idb-test /kernel: ahc1: <Adaptec 2940 Ultra2 SCSI adapter> port 0x1c00-0x1cff mem 0xfb400000-0xfb idb-test /kernel: ahc1: Reading SEEPROM...done. idb-test /kernel: ahc1: BIOS eeprom is present idb-test /kernel: ahc1: Secondary High byte termination Enabled idb-test /kernel: ahc1: Secondary Low byte termination Enabled idb-test /kernel: ahc1: Primary Low Byte termination Enabled idb-test /kernel: ahc1: Primary High Byte termination Enabled idb-test /kernel: ahc1: aic7890/91 Wide Channel A, SCSI Id=9, 16/255 SCBs idb-test /kernel: ahc1: hardware scb 64 bytes; kernel scb 32 bytes; ahc_dma 8 bytes idb-test /kernel: ahc1: Downloading Sequencer Program... 392 instructions downloaded # Enable the debug information idb-test /kernel: (xpt0:xpt0:0:-1:-1): debugging flags now 7 # The target mode was enabled here idb-test /kernel: (targ0:ahc1:0:9:0): Lun now enabled for target mode # idb-test can capture the channel reset signal idb-test /kernel: ahc1: Someone reset channel A idb-test /kernel: (targ0:ahc1:0:9:0): camisrSaw event 4e:0 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101221354.VAA12927>