Return to BSD News archive
Newsgroups: comp.os.386bsd.questions Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msuinfo!agate!tfs.com!julian From: julian@tfs.com (Julian Elischer) Subject: Re: Support for AHA-2740/T SCSI Message-ID: <CtHDMz.89s@tfs.com> Organization: TRW Financial Systems, Oakland, CA References: <CstyJ0.5AC@on.bell.ca> <2vup9e$787@csugrad.cs.vt.edu> <30vg04$m2j@news.delphi.com> Date: Mon, 25 Jul 1994 05:23:23 GMT Lines: 258 In article <30vg04$m2j@news.delphi.com>, HCUBED@DELPHI.COM <hcubed@news.delphi.com> wrote: >I'd like to added my $.02 worth. > >Against the advice of the newsgroup, I'd thought that I'd like to write a >driver for the 2742. So, I bought the card (with a 30 day return >agreement), [usual adaptec story deleted..] >them). Well, after reading all 3 books, I figured out that yet another >bit of documentation was needed, the description of the chip firmware >that resides on the card (I don't mind writing a Unix device driver, but >I draw the line at writing a firmware download). That's the part that they won't give you without signing things.. (The description of the interface to the firmware) (and of course the firmware itself, but you have a copy of that in the prom already.) good try though.. (I did all that too) I include a summary of a note they sent me about the firmware, the agreement etc. (I assume the note is not copyright :-) ========================= BEGINNING OF PREVIOUS POSTING====================== >Subject: aha2740. why no 386bsd driver. Distribution: world Many people have asked me when (or if) I would write a driver for the adaptec 2740 family of boards. In response to this I have been trying for 4 weeks to get information from the folks at adaptec. today, I got some.. This basically sums up why you will probably not see a driver for this board for any of the free Operating systems.. (unless someone does something pretty fancy) After the excerpt, I discuss a few points ============cut here for excerpts from adaptec information========== Programming directly to AIC-7770 based adaptec products. What developers need to know. Introduction This year Adaptec introduced the AIC-7770 chip. It is a RISC-based EISA-to-Fast-SCSI host adapter on a chip, used on the AHA-2740 series host adapters as wellas the AHA-28xVL host adapters. [....marketting crap deleted....] The AIC-7770 chip on the AHA-2740 series and AHA-284xVL products uses a new firmware architecture. Rather than the firmware residing directly on the board, it has now moved to the "Hardware Interface Module" or "HIM", a new software layer. See Figure 1 for an illustration of the new firmware architecture. Figure 2 illustrates how the old architectural components map to the new ones. Figure 1: [ ] [ ] [ ] [ device driver ] [ device driver ] [ device driver ] [ ] [ ] [ ] =============================================================== ASPI layer [ O/S Specific Module ] [ (OSM) ] ------------------------------------------------------- [ Hardware Interface Module ] [ (HIM) ] =============================================================== Sequencer I/F [ ] [ AIC-7770 ] [ ] =============================================================== SCSI BUS Figure 2: AHA 154x/AHA174x Model AIC-7770 Model [ ] [ ] [ ][ ][ ] [driver ] [driver ] [driver ][driver][driver] [ ] [ ] [ ][ ][ ] ASPI ======================= ASPI ======================== [OS Specific driver] [ OSM ] Board i/f====================== ------------------------ [ Firmware ] [ HIM ] [ ] ======================== [ ] [AIC-7770] SCSI ======================== SCSI ========================= So rather than developing software drivers directly to the board where an understanding of the hardware technical reference manual was required, developers may now program the driver software to the HIM. Thus, you now need a HIM specification to program your software driver or "OSM", and you also need the HIM source code, for compiling purposes only. The sources code is needed becasue the HIM is a library module, rather than a run-time interface. Therefore, you must compile it with your OSM source code to create the final driver object code. The HIM code is written in ANSI C to make porting as easy as possible. "How do I know if I need the HIM source code?" If you can program to the ASPI specificatrion instead - to isolate you from all hardware issues - we strongly recomend that you do so. Also, if the operatinf system you are programming for has an "ASPI-LIKE" interface or protocol, we strongly recommend you use it. Only of you fall into the following categories do you need to proceed with developing to the HIM. [] You are developing a driver for AIC-7770 based host adapters for an Operating system. [] You are developing an application which needs access to a SCSI feature for enhanced functionallity or performance not available through ASPI or a similar interface. "I need HIM information, What next..?" 1/ Complete the HIM request form as completely as possible and fax it to (408)957-7181 Attn HIM relations. (do they have a HER reletions? :-) [julian] 2/ We will provide HIM documentation and Software in a BREAK-THE SEAL envelope with the licence agreement printed on the outside which has the following terms: [] Grants you the right to use the HIM source code for compiling purposes only (no modifications) and restricts you from distributing the sources code. [] grants you the right to distribute the HIM in Object code form only and only in combination with your software [] States that title to the HIM software remains with Adaptec. [] Clarifies that Adaptec won't provide support for the software you write or the combined software which you create in combination with the HIM source code. [] Treats the HIM source code and all related documentation as Adaptec confidentual [] States that the HIM software is provided "AS IS" [] Specifies an initial term of one year with automatic one-year renewal periods. Someone in your company who can bind your company to the terms of the agreement must be the one to open the envelope. While Adaptec cannot obligate itself legally to providing updates to or support on the HIM, returning the request form as complete as possible will help us ensure you get the information and assistance you need to do your development. We realise that it is i adaptec's best interest for you to be successful in you development efforts. 3. We will also send you the following items: [] 2740 series tech reference manual [] 2840 tech reference manual [] Adaptec Compatibility Advantage program brochure and application [] Notice of completion [] AIC-7770 programming considerations. [ Marketting rubbish deleted to save my fingures] "What about future Adaptec products? Will my HIM development now save me time down the road?" The HIM specification and source code are specific to a given host adapter chip. Think of it as analogous to the firmware on the board under the previous hardware design. Hence, just as you needed to program directly to the firmware on the board, so also you are programming directly to the HIM for a given chip. The good news is that if we use a given chip on more than one board, your HIM development for that chip is leveraged across the other boards. So, with the AIC-7770 based HIM, your development efforts can be used to create software for both the AHA-2740 series and the AHA28XVL boards. Future Adaptec integrated I/O products will use this HIM model, although new chips may necessitate new HIMs. [trash deleted] "Is there an upcoming change to the AIC-7770 that I need to consider?" Yes, we are introducing a new version of the AIC-770 shortly called rev.E which results in a new version of the HIM source code and some changes to the HIM specification. In conjunction with support for rev. E, we have also enhanced the HIM to offer better performance in heavily loaded system environments. Performance improvements... (bla bla) (bla bla continued)... Note: any software you develop to the HIM specification we can deliver to you immediatly will be compatible with the AIC-770 rev E chip when it is available. Programming to the new HIM specification is not a necessity. ================end of extract=============== The way I read this.. I cannot publish the drivers in any meaningful way that makes sense in a "source code distribution" OS like 386bsd or linux. It's also doubtful that adaptec would let me, as an individual let me have this information anyhow. So I can't see a driver for this board appearing real soon. Some people may be able to get specs for the chip and board directly, but it seems unlikely to me from my discussions today, as they suggested that this information was all hush hush too. If they do, then maybe a PD driver can be written to bypass the HIM rubish. [apparently some guys in the linux SCSI group are writing their own HIM, and some FreeBSD people at Walnut Creek are in co-operating with them on this so we MIGHT get a driver via this route]. [julian. July 94] Unfortunatly, they will probably feel free to change the hardware interface without warning, as they feel they have protected themselves from this if they can hide this in their HIM code.. So If I bypass the HIM code , we cannot be sure our code will always work. Even using the HIM.. If we change boards in a machine, if we cannot guearantee that the driver we have on the machine was linked with the exact version of the HIM that was meant for that revision of the board, we cannot be sure that our driver will work at all, even if we DO use their HIM. (in the present system, the firmware cannot become separated from the hardware) (easily) In general, I repeat my previous comments about adaptec needing their head read. They say it's because they have patentable ideas.. and That sounds like total BS.. What on EARTH could they have that's so brilliant, that they have to keep it so secret.. It's only a scsi controller dammit. If their AIC7770 is so marvelous (I think it's just a sequencer) that it needs to be kept a secret, then why do they sell it? end of rave +----------------------------------+ ______ _ __ | __--_|\ Julian Elischer | \ U \/ / On assignment | / \ julian@tfs.com +------>x USA \ in a very strange | ( OZ ) 300 lakeside Dr. oakland CA. \___ ___ | country ! +- X_.---._/ USA+(510) 645-3137(wk) \_/ \\ v