|
|
1.1 ! root 1: /* ! 2: * defs for the kdb50 driver ! 3: */ ! 4: ! 5: /* ! 6: * per-controller structure ! 7: */ ! 8: ! 9: #define BDACMD 32 /* no more than this many command packets */ ! 10: #define BDANMAP 20 /* number of chunks of map */ ! 11: ! 12: struct bd { ! 13: struct biic *bd_addr; /* device register address */ ! 14: short bd_flags; /* misc flag bits */ ! 15: short bd_credits; /* number of flow control credits */ ! 16: struct bdcomm *bd_comm; /* virt addr of comm area */ ! 17: struct bdcmd *bd_cpkt; /* virt addr of command packets */ ! 18: struct bdrsp *bd_rpkt; /* virt addr of response packets */ ! 19: long *bd_pmap; /* page table for mapped transfers */ ! 20: struct buf *bd_cbuf; /* buffer for comm/cmds */ ! 21: struct buf *bd_rbuf; /* buffer for responses */ ! 22: struct buf *bd_mbuf; /* buffer for page table */ ! 23: short bd_cnext; /* index of next cmd descriptor */ ! 24: short bd_rnext; /* ditto response */ ! 25: char bd_cbusy[BDACMD]; /* busy flags for commands */ ! 26: char bd_back[BDACMD]; /* back-index from cmd ring to packets */ ! 27: unsigned short bd_mbase[BDACMD]; /* base addr of allocated map */ ! 28: unsigned short bd_msize[BDACMD]; /* size of allocated map */ ! 29: struct map bd_map[BDANMAP]; /* and how it is allocated */ ! 30: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.