*BSD News Article 12212


Return to BSD News archive

Path: sserve!manuel.anu.edu.au!munnari.oz.au!constellation!osuunx.ucc.okstate.edu!moe.ksu.ksu.edu!zaphod.mps.ohio-state.edu!cs.utexas.edu!sun-barr!sh.wide!wnoc-tyo-news!rena!specgw!amurai
From: amurai@spec.co.jp (Atsushi MURAI)
Newsgroups: comp.os.386bsd.development
Subject: Re: bustek 742 driver
Message-ID: <2702@specgw.spec.co.jp>
Date: 4 Mar 93 09:02:30 GMT
References: <1993Feb28.033746.16370@tfs.com>
	<09360.22266.7974@kcbbs.gen.nz>
Sender: amurai@specgw.spec.co.jp
Organization: System Planning and Engineering Corp., Tokyo, Japan
Lines: 85

dgd@kcbbs.gen.nz wrote on <09360.22266.7974@kcbbs.gen.nz>

>> I have used Amurai's new Bustek 742 driver but the sad news is that my
>> Bustek (Buslogic) 742a card still fails to complete the boot up process.
>> It always reaches the same place "Checking for core dump" then proceeds
>> to time out, repeating the time out errors until I reset the computer.
>> 
>> One thing I did notice is that Amurai's code is for the firmware version
>> 3.30. My 742a has version 3.31 (5000007-3.31 it says on the Eprom).
>> I borrowed an older Bustek 742a from a friend's DOS system with 3.30
>> firmware and it booted and worked without any problems. Unfortunately I 
>> had to return this card. Before doing so I copied the firmware eprom and
>> used this on my controller but this time the controller reported an
>> internal error and refused to proceed. It now seems that Buslogic may have
>> changed one or more of their vlsi chips on the 742a and this has made it
>> not compatible with previous versions of the 742a.

Dear David, Julian and Netters.

 I could contact to Buslogic and get the follows Fax message today.

*** Thank ou for your fax that you send me regarding Firmware revisions. 
*** The difference between 3.30 and 3.31 are:
***  The mailbox handling was modified to accomodate those device drivers that
*** do not fetch and dispatch mailboxes in the round-robin scheme. We also
*** fix the SCSI seek command conflict which caused some diagnostic program to
*** hang. We set the default mailbox handling to non-round-robin scheme and
*** added a host adapter command 8FH to enable/disable strict round robin.

 So I just create a patch for Enabling round-robin scheme and test it
with Firmware Version 3.30 (NOT 3.31 !!) without any problem.
(just ignore this new command ? )

 NOTE: 1) Again I don't test this modify with target Firmware version
       2) I miss understanding a value for Enabling/Disabling for
          new command.....Try BT_DISABLE param instead of BT_ENABLE..
       3) If this FAX tells everything(truth), why original driver
          was not booting up ????

I hope it fix your problem.

Atsushi.
----------------------- Snip Snip (Ki ri to ri sen)--------------------------- 
*** bt742a.c.cur	Thu Mar  4 14:13:49 1993
--- bt742a.c	Thu Mar  4 17:30:38 1993
***************
*** 17,22 ****
--- 17,26 ----
  /*
   * HISTORY
   * $Log: bt742a.c,v $
+  * Revision 1.7.2 1993/03/04  17:25:00  amurai
+  * Enable mail box round-robin scheme by new host adapter command appeared
+  *  at FirmWare V3.31 ( This Release is shipped without testing at V3.31 )
+  *
   * Revision 1.7.1 1993/01/01  04:01:02  amurai
   * Basically this modification fixes 'doesn't take command' issue 
   * that occured on FirmWare V3.30
***************
*** 167,172 ****
--- 171,181 ----
  #define BT_MBX_INIT_EXTENDED	0x81	/* Mbx initialization */
  #define BT_INQUIRE_EXTENDED	0x8D	/* Adapter Setup Inquiry */
  
+ /* Follows command appeared at FirmWare 3.31 */
+ #define BT_ROUND_ROBIN	0x8f		/* Enable/Disable(default) round robin */
+ #define   BT_DISABLE		0x00	/* Parameter value for Disable */
+ #define   BT_ENABLE		0x01	/* Parameter value for Enable */
+ 
  struct bt_cmd_buf {
  	 u_char byte[16];	
  };
***************
*** 1203,1208 ****
--- 1212,1220 ----
  	bt_mbx[unit].tmbo = &bt_mbx[unit].mbo[0];
  	bt_mbx[unit].tmbi = &bt_mbx[unit].mbi[0];
  	bt_inquire_setup_information( unit );
+ 
+ 	/*  Enable round-robin scheme - appeared at FirmWare 3.31 */
+ 	bt_cmd(unit, 1, 0, 0, 0, BT_ROUND_ROBIN, BT_ENABLE );
  
  	/***********************************************\
  	* Note that we are going and return (to probe)	*
----------------------- End of Patch ... Snip  ---------------------------