home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / os / linux / 6285 < prev    next >
Encoding:
Text File  |  1992-07-20  |  3.0 KB  |  96 lines

  1. Path: sparky!uunet!spool.mu.edu!yale.edu!ira.uka.de!chx400!sicsun!slhp1.epfl.ch!lecom
  2. From: lecom@slhp1.epfl.ch (Claude Lecommandeur)
  3. Newsgroups: comp.os.linux
  4. Subject: Re: Help -- SCSI, Future Domain TMC-950
  5. Message-ID: <3345@sicsun.epfl.ch>
  6. Date: 21 Jul 92 07:34:14 GMT
  7. Article-I.D.: sicsun.3345
  8. References: <1992Jul20.183355.34976@uservx.plk.af.mil>
  9. Sender: news@sicsun.epfl.ch
  10. Organization: Ecole Polytechnique Federale de Lausanne
  11. Lines: 83
  12.  
  13. In article <1992Jul20.183355.34976@uservx.plk.af.mil>, simonich@uservx.plk.af.mil writes:
  14. |> I saw a message go by reciently about a patch to 
  15. |> support the Future Domain SCSI card with the TMC-950
  16. |> chip.  Does anyone know where I can find the patch?
  17. |> 
  18. |> Also, since I can't compile without a hard drive,
  19. |> how about a boot.z file?
  20. |> 
  21. |> All help is appreciated.
  22.  
  23.   I'm not sure it's good or not, but i did just a few patch in scsi.c and seagate.c
  24. and it works for me. (i have a SyQuest on my TMC-950).
  25.  
  26. in scsi.c :
  27. -------------------------------------------------------
  28. static void scan_scsis (void)
  29.     {
  30.         int host_nr , dev, lun, type, maxed;
  31.     static unsigned char scsi_cmd [12];
  32.     static unsigned char scsi_result [256];
  33.  
  34.         for (host_nr = 0; host_nr < MAX_SCSI_HOSTS; ++host_nr)
  35.                 if (scsi_hosts[host_nr].present)
  36.             {
  37. #ifdef FUTURE_DOMAIN_TMC_950
  38.             for (dev = 0; dev < 6; ++dev)
  39. #else
  40.             for (dev = 0; dev < 7; ++dev)
  41. #endif
  42.                 if (scsi_hosts[host_nr].this_id != dev)
  43.                                 #ifdef MULTI_LUN
  44.                 for (lun = 0; lun < 8; ++lun)
  45.                     {
  46.                 #else
  47. -------------------------------------------------------
  48. in seagate.c :
  49. -------------------------------------------------------
  50.     if (base_address)
  51.         {
  52. #ifdef FUTURE_DOMAIN_TMC_950
  53.         st0x_cr_sr =(void *) (((unsigned char *) base_address) + 0x1c00); 
  54.         st0x_dr = (void *) (((unsigned char *) base_address )+ 0x1e00);
  55. #else
  56.         st0x_cr_sr =(void *) (((unsigned char *) base_address) + 0x1a00); 
  57.         st0x_dr = (void *) (((unsigned char *) base_address )+ 0x1c00);
  58. #endif
  59.         #ifdef DEBUG
  60.             printk("ST0x detected. Base address = %x, cr = %x, dr = %x\n", base_address, st0x_cr_sr, st0x_dr);
  61.         #endif
  62.         return -1;
  63.         }
  64.     else
  65. ---------------------
  66.     #if (DEBUG & PRINT_COMMAND)
  67.         printk ("seagate_st0x_command, target = %d, command = ", target);
  68.         for (i = 0; i < COMMAND_SIZE(((unsigned char *)cmnd)[0]); ++i)
  69.             printk("%02x ",  ((unsigned char *) cmnd)[i]);
  70.         printk("\n");
  71.     #endif
  72.     
  73. #ifdef FUTURE_DOMAIN_TMC_950
  74.     if (target > 5)
  75. #else
  76.     if (target > 6)
  77. #endif
  78.         return DID_BAD_TARGET;
  79.  
  80. -------------------------------------------------------
  81.  
  82.     This is from Linux0.96bPl2. Of course you have to define FUTURE_DOMAIN_TMC_950
  83. somewhere along with CONFIG_SCSI_SEAGATE.
  84.     I know nothing of drivers and SCSI, so take this with care.
  85.  
  86.   Hope it helps.
  87. -- 
  88.  
  89.  
  90.                     Claude Lecommandeur
  91.                     Service Informatique Central
  92.                     Ecole Polytechnique Federale de Lausanne
  93.                     1015 LAUSANNE (SWITZERLAND)
  94.                     E-Mail : lecom@sic.epfl.ch
  95.                     Tel : (41 21) 693-22-97
  96.