drivers/scsi/pm8001/pm8001_ctl.h

Source file repositories/reference/linux-study-clean/drivers/scsi/pm8001/pm8001_ctl.h

File Facts

System
Linux kernel
Corpus path
drivers/scsi/pm8001/pm8001_ctl.h
Extension
.h
Size
2815 bytes
Lines
69
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.

Dependency Surface

Detected Declarations

Annotated Snippet

#ifndef PM8001_CTL_H_INCLUDED
#define PM8001_CTL_H_INCLUDED

#define IOCTL_BUF_SIZE		4096
#define HEADER_LEN			28
#define SIZE_OFFSET			16

#define BIOSOFFSET			56
#define BIOS_OFFSET_LIMIT		61

#define FLASH_OK                        0x000000
#define FAIL_OPEN_BIOS_FILE             0x000100
#define FAIL_FILE_SIZE                  0x000a00
#define FAIL_PARAMETERS                 0x000b00
#define FAIL_OUT_MEMORY                 0x000c00
#define FLASH_IN_PROGRESS               0x001000

#define IB_OB_READ_TIMES                256
#define SYSFS_OFFSET                    1024
#define PM80XX_IB_OB_QUEUE_SIZE         (32 * 1024)
#define PM8001_IB_OB_QUEUE_SIZE         (16 * 1024)

static inline u32 pm8001_ctl_aap1_memmap(u8 *ptr, int idx, int off)
{
	return *(u32 *)(ptr + idx * 32 + off);
}
#endif /* PM8001_CTL_H_INCLUDED */

Annotation

Implementation Notes