drivers/scsi/aic7xxx/aic79xx_reg.h_shipped

Source file repositories/reference/linux-study-clean/drivers/scsi/aic7xxx/aic79xx_reg.h_shipped

File Facts

System
Linux kernel
Corpus path
drivers/scsi/aic7xxx/aic79xx_reg.h_shipped
Extension
.h_shipped
Size
45359 bytes
Lines
1811
Domain
Driver Families
Bucket
drivers/scsi
Inferred role
Driver Families: drivers/scsi
Status
atlas-only

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.

Dependency Surface

Detected Declarations

Annotated Snippet

typedef int (ahd_reg_print_t)(u_int, u_int *, u_int);
typedef struct ahd_reg_parse_entry {
	char	*name;
	uint8_t	 value;
	uint8_t	 mask;
} ahd_reg_parse_entry_t;

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_intstat_print;
#else
#define ahd_intstat_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "INTSTAT", 0x01, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_hs_mailbox_print;
#else
#define ahd_hs_mailbox_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "HS_MAILBOX", 0x0b, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_seqintstat_print;
#else
#define ahd_seqintstat_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "SEQINTSTAT", 0x0c, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_intctl_print;
#else
#define ahd_intctl_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "INTCTL", 0x18, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_dfcntrl_print;
#else
#define ahd_dfcntrl_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "DFCNTRL", 0x19, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_dfstatus_print;
#else
#define ahd_dfstatus_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "DFSTATUS", 0x1a, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_sg_cache_shadow_print;
#else
#define ahd_sg_cache_shadow_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "SG_CACHE_SHADOW", 0x1b, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_scsiseq0_print;
#else
#define ahd_scsiseq0_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "SCSISEQ0", 0x3a, regvalue, cur_col, wrap)
#endif

#if AIC_DEBUG_REGISTERS
ahd_reg_print_t ahd_scsiseq1_print;
#else
#define ahd_scsiseq1_print(regvalue, cur_col, wrap) \
    ahd_print_register(NULL, 0, "SCSISEQ1", 0x3b, regvalue, cur_col, wrap)
#endif

Annotation

Implementation Notes