/[gxemul]/trunk/src/devices/dev_sii.c
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/src/devices/dev_sii.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 41 by dpavlin, Mon Oct 8 16:21:17 2007 UTC revision 42 by dpavlin, Mon Oct 8 16:22:32 2007 UTC
# Line 25  Line 25 
25   *  SUCH DAMAGE.   *  SUCH DAMAGE.
26   *     *  
27   *   *
28   *  $Id: dev_sii.c,v 1.19 2007/01/05 15:20:06 debug Exp $   *  $Id: dev_sii.c,v 1.21 2007/06/15 19:57:34 debug Exp $
29   *     *  
30   *  SII SCSI controller, used in some DECstation systems.   *  COMMENT: SII SCSI controller, used in some DECstation systems
31   *   *
32   *  TODO:  This is huge and ugly. Fix this.   *  TODO:  This is huge and ugly. Fix this.
33   */   */
# Line 93  void combine_sii_bits(struct sii_data *d Line 93  void combine_sii_bits(struct sii_data *d
93  }  }
94    
95    
96  /*  DEVICE_TICK(sii)
  *  dev_sii_tick():  
  */  
 void dev_sii_tick(struct cpu *cpu, void *extra)  
97  {  {
98          struct sii_data *d = extra;          struct sii_data *d = extra;
99    
# Line 442  DEVICE_ACCESS(sii) Line 439  DEVICE_ACCESS(sii)
439  }  }
440    
441    
 /*  
  *  dev_sii_init():  
  */  
442  void dev_sii_init(struct machine *machine, struct memory *mem,  void dev_sii_init(struct machine *machine, struct memory *mem,
443          uint64_t baseaddr, uint64_t buf_start, uint64_t buf_end,          uint64_t baseaddr, uint64_t buf_start, uint64_t buf_end,
444          char *irq_path)          char *irq_path)
445  {  {
446          struct sii_data *d = malloc(sizeof(struct sii_data));          struct sii_data *d;
         if (d == NULL) {  
                 fprintf(stderr, "out of memory\n");  
                 exit(1);  
         }  
447    
448            CHECK_ALLOCATION(d = malloc(sizeof(struct sii_data)));
449          memset(d, 0, sizeof(struct sii_data));          memset(d, 0, sizeof(struct sii_data));
450    
451          INTERRUPT_CONNECT(irq_path, d->irq);          INTERRUPT_CONNECT(irq_path, d->irq);
452          d->buf_start = buf_start;          d->buf_start = buf_start;
453          d->buf_end   = buf_end;          d->buf_end   = buf_end;
# Line 465  void dev_sii_init(struct machine *machin Line 457  void dev_sii_init(struct machine *machin
457              dev_sii_access, (void *)d, DM_DEFAULT, NULL);              dev_sii_access, (void *)d, DM_DEFAULT, NULL);
458    
459          machine_add_tickfunction(machine, dev_sii_tick, d,          machine_add_tickfunction(machine, dev_sii_tick, d,
460              SII_TICK_SHIFT, 0.0);              SII_TICK_SHIFT);
461  }  }
462    

Legend:
Removed from v.41  
changed lines
  Added in v.42

  ViewVC Help
Powered by ViewVC 1.1.26