Lines Matching +full:5 +full:- +full:bits

1 /* SPDX-License-Identifier: GPL-2.0-only */
6 Copyright 1995-1998 by Leonard N. Zubkoff <lnz@dandelion.com>
12 Special thanks to Wayne Yen, Jin-Lon Hon, and Alex Win of BusLogic, whose
160 (adapter->adapter_type == BLOGIC_MULTIMASTER)
163 (adapter->adapter_type == BLOGIC_FLASHPOINT)
183 BLOGIC_MCA_BUS = 5
189 BLOGIC_VESA_BUS, /* BT-4xx */
190 BLOGIC_ISA_BUS, /* BT-5xx */
191 BLOGIC_MCA_BUS, /* BT-6xx */
192 BLOGIC_EISA_BUS, /* BT-7xx */
193 BLOGIC_UNKNOWN_BUS, /* BT-8xx */
194 BLOGIC_PCI_BUS /* BT-9xx */
243 bool flashpoint_first:1; /* Bit 5 */
269 Define the structure of the write-only Control Register.
275 unsigned char:4; /* Bits 0-3 */
277 bool int_reset:1; /* Bit 5 */
284 Define the structure of the read-only Status Register.
295 bool init_reqd:1; /* Bit 5 */
302 Define the structure of the read-only Interrupt Register.
312 unsigned char rsvd:3; /* Bits 4-6 */
318 Define the structure of the read-only Geometry Register.
324 enum blogic_bios_diskgeometry d0_geo:2; /* Bits 0-1 */
325 enum blogic_bios_diskgeometry d1_geo:2; /* Bits 2-3 */
326 unsigned char:3; /* Bits 4-6 */
398 unsigned char:5; /* Byte 0 Bits 0-4 */
399 bool dma_ch5:1; /* Byte 0 Bit 5 */
407 bool irq_ch14:1; /* Byte 1 Bit 5 */
410 unsigned char id:4; /* Byte 2 Bits 0-3 */
411 unsigned char:4; /* Byte 2 Bits 4-7 */
419 unsigned char offset:4; /* Bits 0-3 */
420 unsigned char tx_period:3; /* Bits 4-6 */
427 unsigned char:6; /* Byte 0 Bits 2-7 */
432 unsigned char mbox_addr[3]; /* Bytes 5-7 */
433 struct blogic_syncval sync0to7[8]; /* Bytes 8-15 */
440 struct blogic_syncval sync8to15[8]; /* Bytes 22-29 */
453 u32 base_mbox_addr; /* Bytes 1-4 */
469 BLOGIC_IO_134 = 5,
479 unsigned char:2; /* Byte 2 Bits 2-3 */
481 bool JP2:1; /* Byte 2 Bit 5 */
494 unsigned short sg_limit; /* Bytes 2-3 */
496 u32 base_mbox_addr; /* Bytes 5-8 */
498 unsigned char:2; /* Byte 9 Bits 0-1 */
500 unsigned char:3; /* Byte 9 Bits 3-5 */
504 unsigned char fw_rev[3]; /* Bytes 10-12 */
510 unsigned char:3; /* Byte 13 Bits 5-7 */
540 unsigned char factory_sig[2]; /* Bytes 0-1 */
542 unsigned char adapter_type[6]; /* Bytes 3-8 */
547 unsigned char:2; /* Byte 10 Bits 3-4 */
548 unsigned char systemram_bios:3; /* Byte 10 Bits 5-7 */
549 unsigned char dma_ch:7; /* Byte 11 Bits 0-6 */
551 unsigned char irq_ch:7; /* Byte 12 Bits 0-6 */
560 bool reset_enabled:1; /* Byte 15 Bit 5 */
570 bool morethan2_drives:1; /* Byte 18 Bit 5 */
573 unsigned short dev_enabled; /* Bytes 19-20 */
574 unsigned short wide_ok; /* Bytes 21-22 */
575 unsigned short fast_ok; /* Bytes 23-24 */
576 unsigned short sync_ok; /* Bytes 25-26 */
577 unsigned short discon_ok; /* Bytes 27-28 */
578 unsigned short send_start_unit; /* Bytes 29-30 */
579 unsigned short ignore_bios_scan; /* Bytes 31-32 */
580 unsigned char pci_int_pin:2; /* Byte 33 Bits 0-1 */
581 unsigned char adapter_ioport:2; /* Byte 33 Bits 2-3 */
583 bool vesabus_33mhzplus:1; /* Byte 33 Bit 5 */
586 unsigned short ultra_ok; /* Bytes 34-35 */
587 unsigned int:32; /* Bytes 36-39 */
594 unsigned char:4; /* Byte 42 Bits 4-7 */
598 unsigned char:5; /* Byte 43 Bits 3-7 */
599 unsigned char boot_id:4; /* Byte 44 Bits 0-3 */
600 unsigned char boot_ch:4; /* Byte 44 Bits 4-7 */
602 unsigned char:7; /* Byte 45 Bits 1-7 */
603 unsigned short nontagged_to_alt_ok; /* Bytes 46-47 */
604 unsigned short reneg_sync_on_check; /* Bytes 48-49 */
605 unsigned char rsvd[10]; /* Bytes 50-59 */
606 unsigned char manuf_diag[2]; /* Bytes 60-61 */
607 unsigned short cksum; /* Bytes 62-63 */
616 unsigned char:7; /* Bits 1-7 */
627 unsigned char:2; /* Bits 1-2 */
628 enum blogic_bios_diskgeometry diskgeom:2; /* Bits 3-4 */
629 unsigned char tgt_id:3; /* Bits 5-7 */
655 only uses codes 0 - 4. The FlashPoint SCCB Manager has no mailboxes, so
656 completion codes are stored in the CCB; it only uses codes 1, 2, 4, and 5.
762 u32 segbytes; /* Bytes 0-3 */
763 u32 segdata; /* Bytes 4-7 */
785 byte 1, and the Logical Unit field in byte 17 expanded to 6 bits. In theory,
788 the SCSI-2 specification defines Bit 5 as LUNTAR. Extended LUN Format CCBs
793 5 bits simplifies the CCB structure definition, this driver only supports
802 unsigned char:3; /* Byte 1 Bits 0-2 */
803 enum blogic_datadir datadir:2; /* Byte 1 Bits 3-4 */
804 bool tag_enable:1; /* Byte 1 Bit 5 */
805 enum blogic_queuetag queuetag:2; /* Byte 1 Bits 6-7 */
808 u32 datalen; /* Bytes 4-7 */
809 u32 data; /* Bytes 8-11 */
815 unsigned char lun:5; /* Byte 17 Bits 0-4 */
816 bool legacytag_enable:1; /* Byte 17 Bit 5 */
817 enum blogic_queuetag legacy_tag:2; /* Byte 17 Bits 6-7 */
818 unsigned char cdb[BLOGIC_CDB_MAXLEN]; /* Bytes 18-29 */
821 u32 rsvd_int; /* Bytes 32-35 */
822 u32 sensedata; /* Bytes 36-39 */
826 void (*callback) (struct blogic_ccb *); /* Bytes 40-43 */
827 u32 base_addr; /* Bytes 44-47 */
831 u16 os_flags; /* Bytes 50-51 */
832 unsigned char private[24]; /* Bytes 52-99 */
857 u32 ccb; /* Bytes 0-3 */
858 u32:24; /* Bytes 4-6 */
867 u32 ccb; /* Bytes 0-3 */
869 enum blogic_tgt_status tgt_status; /* Byte 5 */
941 u32 base_addr; /* Bytes 0-3 */
943 unsigned char irq_ch; /* Byte 5 */
946 u16 fw_rev; /* Bytes 8-9 */
947 u16 sync_ok; /* Bytes 10-11 */
948 u16 fast_ok; /* Bytes 12-13 */
949 u16 ultra_ok; /* Bytes 14-15 */
950 u16 discon_ok; /* Bytes 16-17 */
951 u16 wide_ok; /* Bytes 18-19 */
957 bool high_term:1; /* Byte 20 Bit 5 */
961 unsigned char:7; /* Byte 21 Bits 1-7 */
964 unsigned char model[3]; /* Bytes 24-26 */
966 unsigned char rsvd[4]; /* Bytes 28-31 */
967 u32 os_rsvd; /* Bytes 32-35 */
968 unsigned char translation_info[4]; /* Bytes 36-39 */
969 u32 rsvd2[5]; /* Bytes 40-59 */
970 u32 sec_range; /* Bytes 60-63 */
1085 unsigned char devtype:5; /* Byte 0 Bits 0-4 */
1086 unsigned char dev_qual:3; /* Byte 0 Bits 5-7 */
1087 unsigned char dev_modifier:7; /* Byte 1 Bits 0-6 */
1089 unsigned char ansi_ver:3; /* Byte 2 Bits 0-2 */
1090 unsigned char ecma_ver:3; /* Byte 2 Bits 3-5 */
1091 unsigned char iso_ver:2; /* Byte 2 Bits 6-7 */
1092 unsigned char resp_fmt:4; /* Byte 3 Bits 0-3 */
1093 unsigned char:2; /* Byte 3 Bits 4-5 */
1097 unsigned char:8; /* Byte 5 */
1104 bool WBus16:1; /* Byte 7 Bit 5 */
1107 unsigned char vendor[8]; /* Bytes 8-15 */
1108 unsigned char product[16]; /* Bytes 16-31 */
1109 unsigned char product_rev[4]; /* Bytes 32-35 */
1123 outb(cr.all, adapter->io_addr + BLOGIC_CNTRL_REG); in blogic_busreset()
1131 outb(cr.all, adapter->io_addr + BLOGIC_CNTRL_REG); in blogic_intreset()
1139 outb(cr.all, adapter->io_addr + BLOGIC_CNTRL_REG); in blogic_softreset()
1147 outb(cr.all, adapter->io_addr + BLOGIC_CNTRL_REG); in blogic_hardreset()
1152 return inb(adapter->io_addr + BLOGIC_STATUS_REG); in blogic_rdstatus()
1158 outb(value, adapter->io_addr + BLOGIC_CMD_PARM_REG); in blogic_setcmdparam()
1163 return inb(adapter->io_addr + BLOGIC_DATAIN_REG); in blogic_rddatain()
1168 return inb(adapter->io_addr + BLOGIC_INT_REG); in blogic_rdint()
1173 return inb(adapter->io_addr + BLOGIC_GEOMETRY_REG); in blogic_rdgeom()
1225 bytecount->units += amount; in blogic_addcount()
1226 if (bytecount->units > 999999999) { in blogic_addcount()
1227 bytecount->units -= 1000000000; in blogic_addcount()
1228 bytecount->billions++; in blogic_addcount()
1247 index = (amount < 16 * 1024 ? 4 : 5); in blogic_incszbucket()