drivers/scsi/mac53c94.h
Source file repositories/reference/linux-study-clean/drivers/scsi/mac53c94.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/scsi/mac53c94.h- Extension
.h- Size
- 5268 bytes
- Lines
- 227
- Domain
- Driver Families
- Bucket
- drivers/scsi
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
struct mac53c94_regsstruct mac53c94_cmd_priv
Annotated Snippet
struct mac53c94_regs {
unsigned char count_lo;
char pad0[15];
unsigned char count_mid;
char pad1[15];
unsigned char fifo;
char pad2[15];
unsigned char command;
char pad3[15];
unsigned char status;
char pad4[15];
unsigned char interrupt;
char pad5[15];
unsigned char seqstep;
char pad6[15];
unsigned char flags;
char pad7[15];
unsigned char config1;
char pad8[15];
unsigned char clk_factor;
char pad9[15];
unsigned char test;
char pad10[15];
unsigned char config2;
char pad11[15];
unsigned char config3;
char pad12[15];
unsigned char config4;
char pad13[15];
unsigned char count_hi;
char pad14[15];
unsigned char fifo_res;
char pad15[15];
};
/*
* Alternate functions for some registers.
*/
#define dest_id status
#define sel_timeout interrupt
#define sync_period seqstep
#define sync_offset flags
/*
* Bits in command register.
*/
#define CMD_DMA_MODE 0x80
#define CMD_MODE_MASK 0x70
#define CMD_MODE_INIT 0x10
#define CMD_MODE_TARG 0x20
#define CMD_MODE_DISC 0x40
#define CMD_NOP 0
#define CMD_FLUSH 1
#define CMD_RESET 2
#define CMD_SCSI_RESET 3
#define CMD_XFER_DATA 0x10
#define CMD_I_COMPLETE 0x11
#define CMD_ACCEPT_MSG 0x12
#define CMD_XFER_PAD 0x18
#define CMD_SET_ATN 0x1a
#define CMD_CLR_ATN 0x1b
#define CMD_SEND_MSG 0x20
#define CMD_SEND_STATUS 0x21
#define CMD_SEND_DATA 0x22
#define CMD_DISC_SEQ 0x23
#define CMD_TERMINATE 0x24
#define CMD_T_COMPLETE 0x25
#define CMD_DISCONNECT 0x27
#define CMD_RECV_MSG 0x28
#define CMD_RECV_CDB 0x29
#define CMD_RECV_DATA 0x2a
#define CMD_RECV_CMD 0x2b
#define CMD_ABORT_DMA 0x04
#define CMD_RESELECT 0x40
#define CMD_SELECT 0x41
#define CMD_SELECT_ATN 0x42
#define CMD_SELATN_STOP 0x43
#define CMD_ENABLE_SEL 0x44
#define CMD_DISABLE_SEL 0x45
#define CMD_SEL_ATN3 0x46
#define CMD_RESEL_ATN3 0x47
/*
* Bits in status register.
*/
#define STAT_IRQ 0x80
Annotation
- Detected declarations: `struct mac53c94_regs`, `struct mac53c94_cmd_priv`.
- Atlas domain: Driver Families / drivers/scsi.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.