Date: Wed, 29 Apr 1998 16:26:39 +0200 From: Rob Schofield <schofiel@xs4all.nl> To: freebsd-hardware@FreeBSD.ORG Subject: Ooops - sorry Message-ID: <3547389F.121E@xs4all.nl>
next in thread | raw e-mail | index | archive | help
Julian, I suspect I may well have grievously offended you. If this is the case, I apologise, as it was not the intention to do so (late at night, half-busy with work). I hope you can forgive me - certainly cheesed up everything else in that letter! As regards my comments on SCSI: >Rob Schofield wrote: >> NO, sorry, but the adaptors usually *do*, as it's built into the >> chipsets (otherwise how would your SCSI disks work as targets? ;^) > >I did not say 'devices', I said "adapters".. And, if you look carefully, neither did I; Adaptec (before and after they bought the rest of the market) have always been in the background business of selling SCSI controller chip sets to the world, so that 3rd parties can go ahead and manufacture disk controllers, for example. Think of IBM, SEAGATE, etc. plus anyone else wanting a highly integrated SCSI-subsytem on a chip. *In a second line of business*, they also manufacture host adaptors for PCs and other bus-based computers. This is probably far more visible to the buying public. NCR did the opposite, ie. sell chipsets visibly. Under Adaptec, they now sell boards too, which are just re-branded. The chipsets Adaptec sell/use have got the capability to operate either as SCSI Host or SCSI Target, and carry out a lot of the bus bit bashing previously done in software using a hardware state machine. The mode is not hard-coded by a jumper, but determined by the software driving the chip. This you will know from writing a SCSI subsystem; I have a dead Seagate and an HP drive in front of me with ADAPTEC writ large across many of the chips on the PCB of the disk controller. > Host adapters is what I > obviously meant, Yes, I agree, but I equally obviously badly wrote the reply assuming you would catch onto what I meant - that the chipsets can operate as targets as well as hosts, in fact they *have to*. > and the host adpters and their drivers don't > support it, so we'd have to add that support.. Ah, now I can correct you here; I have successfully worked on two PC-based projects where a 1510 and a 1740 were used in target mode, so the *hardware at least* does. Whether, as you rightly say, the PC- based BIOS provided with these cards actually implements this mode or not (and for any other SCSI device class other than Disk, at that) is another question; we didn't use it - simply disabled the BIOS, got a register map and the right data sheet for the chips on the cards, and wrote our own drivers, which were then successfully tested under the operating system we were using (OS-9000). >When I wrote the SCSI subsystem (yes I know how it works) Yeah, I've done that too, a few times ;^). I've done a high-res medical colour printer, a disk driver for multihost co-operative disk sharing (fun, that one) and an electronically steered, medical Ultra-sound scanner for heart arteries that thought it was a disk drive. So yes, I know how they work too. >I tried to leave 'hooks' for target mode, but none of the adapters >supported it so the drivers couldn't do it. the 1542 managed to >HALF support it for a while. I have no idea what implementation method you were using for this, but it would still boil down to getting a register address map for the chipset, an address map for the host card from the manufacturer (Adaptec were quite happy to let us have the developer docs when we asked) and getting down to it. Whether the host adapter circuitry is designed to allow full use of the chipset's capabilities is a different matter, and I can't comment for the 1542; however, the ISA part (the bus interface) of this card had some definite limitations, which you may have hit against. If I hear another anguished story about "ISA Bus Mastering" I will scream - that was why EISA appeared... >>. As >> usual, it's the **host software** that doesn't. Even then, if you are using >> the ASPI generalisation layer provided/sold by Adaptec, a lot of what you >> need for target mode is in there. >we are NOT using it as they won't give source.. No defintiely, they won't *give* you the ASPI sources for their commercially available, main income source. Would you? ;^) However, if you asked them for the developer's packages and ASPI specs, well, they'll let you have that. Maybe I was just lucky when I asked, I got all my stuff for free in '95.... >and 'MOST' is not enough. ... but it could form the solid basis of an good, original piece of work performed by you, based on commercially-accepted standards? What do you want them to do, write it all for you? >They were totally unable to get target >mode working correctly on their 154x series and I have no reason >to believe that they have spent more energy on new series. ... on Windows 3.1 systems without multi-threading capability (for which ASPI was designed), on an otherwise simple card with a bad bus interface. They have done much better, recently... >> >> Don't generalise, please. > >ok the adapter drivers don't usually support it, but in addition >those cards that are "intelligent" usually fail to support it >correctly in their firmware as well. The firmware on most cards is >usually UNTESTED in target mode. And since the cards are usually designed and marketed for a PC market, why should they possibly want Target mode operation *in the drivers and firmware* ??? 99.999999% of people using the interface cards would only care enough to plug it in, connect disks, and use them for that! So why should Adaptec (or others) waste time and development money on generalised, properly tested multi-mode support software if no-one going to ever even use it? It's *no wonder* the stuff's untested, and is only suitable for disks. Tell me, why use the firmware? I thought this was U**X? Why on earth do you need to use the card firmware? >julian Rob Schofield M.Sc. (SCSI software developer) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hardware" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3547389F.121E>