include/uapi/linux/gpib.h
Source file repositories/reference/linux-study-clean/include/uapi/linux/gpib.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/linux/gpib.h- Extension
.h- Size
- 2935 bytes
- Lines
- 105
- Domain
- Core OS
- Bucket
- Core Kernel Interface
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
enum ibsta_bit_numbersenum ibsta_bitsenum eos_flagsenum bus_control_lineenum ppe_bitsenum gpib_events
Annotated Snippet
#ifndef _GPIB_H
#define _GPIB_H
#define GPIB_MAX_NUM_BOARDS 16
#define GPIB_MAX_NUM_DESCRIPTORS 0x1000
enum ibsta_bit_numbers {
DCAS_NUM = 0,
DTAS_NUM = 1,
LACS_NUM = 2,
TACS_NUM = 3,
ATN_NUM = 4,
CIC_NUM = 5,
REM_NUM = 6,
LOK_NUM = 7,
CMPL_NUM = 8,
EVENT_NUM = 9,
SPOLL_NUM = 10,
RQS_NUM = 11,
SRQI_NUM = 12,
END_NUM = 13,
TIMO_NUM = 14,
ERR_NUM = 15
};
/* IBSTA status bits (returned by all functions) */
enum ibsta_bits {
DCAS = (1 << DCAS_NUM), /* device clear state */
DTAS = (1 << DTAS_NUM), /* device trigger state */
LACS = (1 << LACS_NUM), /* GPIB interface is addressed as Listener */
TACS = (1 << TACS_NUM), /* GPIB interface is addressed as Talker */
ATN = (1 << ATN_NUM), /* Attention is asserted */
CIC = (1 << CIC_NUM), /* GPIB interface is Controller-in-Charge */
REM = (1 << REM_NUM), /* remote state */
LOK = (1 << LOK_NUM), /* lockout state */
CMPL = (1 << CMPL_NUM), /* I/O is complete */
EVENT = (1 << EVENT_NUM), /* DCAS, DTAS, or IFC has occurred */
SPOLL = (1 << SPOLL_NUM), /* board serial polled by busmaster */
RQS = (1 << RQS_NUM), /* Device requesting service */
SRQI = (1 << SRQI_NUM), /* SRQ is asserted */
END = (1 << END_NUM), /* EOI or EOS encountered */
TIMO = (1 << TIMO_NUM), /* Time limit on I/O or wait function exceeded */
ERR = (1 << ERR_NUM), /* Function call terminated on error */
device_status_mask = ERR | TIMO | END | CMPL | RQS,
board_status_mask = ERR | TIMO | END | CMPL | SPOLL |
EVENT | LOK | REM | CIC | ATN | TACS | LACS | DTAS | DCAS | SRQI,
};
/* End-of-string (EOS) modes for use with ibeos */
enum eos_flags {
EOS_MASK = 0x1c00,
REOS = 0x0400, /* Terminate reads on EOS */
XEOS = 0x800, /* assert EOI when EOS char is sent */
BIN = 0x1000 /* Do 8-bit compare on EOS */
};
/* GPIB Bus Control Lines bit vector */
enum bus_control_line {
VALID_DAV = 0x01,
VALID_NDAC = 0x02,
VALID_NRFD = 0x04,
VALID_IFC = 0x08,
VALID_REN = 0x10,
VALID_SRQ = 0x20,
VALID_ATN = 0x40,
VALID_EOI = 0x80,
VALID_ALL = 0xff,
BUS_DAV = 0x0100, /* DAV line status bit */
BUS_NDAC = 0x0200, /* NDAC line status bit */
BUS_NRFD = 0x0400, /* NRFD line status bit */
BUS_IFC = 0x0800, /* IFC line status bit */
BUS_REN = 0x1000, /* REN line status bit */
BUS_SRQ = 0x2000, /* SRQ line status bit */
BUS_ATN = 0x4000, /* ATN line status bit */
BUS_EOI = 0x8000 /* EOI line status bit */
};
enum ppe_bits {
PPC_DISABLE = 0x10,
PPC_SENSE = 0x8, /* parallel poll sense bit */
PPC_DIO_MASK = 0x7
};
enum {
request_service_bit = 0x40,
};
enum gpib_events {
Annotation
- Detected declarations: `enum ibsta_bit_numbers`, `enum ibsta_bits`, `enum eos_flags`, `enum bus_control_line`, `enum ppe_bits`, `enum gpib_events`.
- Atlas domain: Core OS / Core Kernel Interface.
- 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.