Date: Wed, 12 Sep 2001 10:40:27 +0900 From: Kayoko Isshi <isshi@cs.fujitsu.co.jp> To: "Justin T. Gibbs" <gibbs@scsiguy.com>, "'aic7xxx@FreeBSD.ORG'" <aic7xxx@FreeBSD.ORG> Subject: Re: test at Target mode Message-ID: <3B9EBD0B.FAFC6C99@cs.fujitsu.co.jp> References: <200109111718.f8BHIkY30504@aslan.scsiguy.com>
next in thread | previous in thread | raw e-mail | index | archive | help
M. Gibbs: "Justin T. Gibbs" wrote: > >> >1)In rare case, the following sequence occurred. > >> > RSL MI=C020XX MO=0d BF > > > >> Have you been following the example in the FreeBSD aic7xxx driver > >> front end for target mode? Complete setup, including this step, > >> is outlined there. Again, the Linux driver, as shipped, only has > >> the core support for target mode. The setup of the transaction > >> is in the OSM layer. > > > >I'm sorry not to look through FreeBSD source code. > > It may help explain what the sequencer expects in the way of setup > for target mode SCBs. I'll see it. > >>Target fails to transfer odd bytes data. > >>Then sequencer should issue IGN_WIDE_RESIDUE message, > >>but it issues no message now. > >>Would you add it? > > I only started looking at this today. > > >The following sequence has occurred. > >For example, > > > > CMD=030000FF00 > > DI=70000000....(256) > > (MI=2301) -> expected > > I suppose you just check DATA_COUNT_ODD prior to going to target_ITloop > at the tail of the data phase handler? I checked DATA_COUNT_ODD that is always 00h. It's strange. > > STA=FF ->00 is correct!!! > > MI=00 > > > >The reason why status=FF is sent is > >that SCB_RESIDUAL_DATACNT overwrites SCB_TARGET_STATUS. > >SCB_RESIDUAL_DATACNTs are copied from STCNT=FFFFFF(=-1?). > >Target mode should skip setting residual or use another method? > > There is sufficient space for the target state and the residual > data in the SCB as it stands today. The residual might be required > should the initiator raise ATN to issue a message to us (e.g. a disconnect > request). The only problem I see here is finding the space for the > additional 4 bytes required to handle full 64bit addresses when we add that > S/G format (SCB_DATAPTR needs to grow). But this is a concern even > without target mode. I see your efforts. Your advice notified me of retrying for residual. I save SCB_TARGET_STATUS into temporary SCB_SCSI_STATUS, which will be incorrect. Thanks. --------- Kayoko Isshi To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe aic7xxx" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B9EBD0B.FAFC6C99>