include/uapi/linux/gpib_ioctl.h
Source file repositories/reference/linux-study-clean/include/uapi/linux/gpib_ioctl.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/linux/gpib_ioctl.h- Extension
.h- Size
- 4267 bytes
- Lines
- 168
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
asm/ioctl.hlinux/types.h
Detected Declarations
struct gpib_board_type_ioctlstruct gpib_read_write_ioctlstruct gpib_open_dev_ioctlstruct gpib_close_dev_ioctlstruct gpib_serial_poll_ioctlstruct gpib_eos_ioctlstruct gpib_wait_ioctlstruct gpib_online_ioctlstruct gpib_spoll_bytes_ioctlstruct gpib_board_info_ioctlstruct gpib_select_pci_ioctlstruct gpib_ppoll_config_ioctlstruct gpib_pad_ioctlstruct gpib_sad_ioctlstruct gpib_select_device_path_ioctlstruct gpib_request_service2enum gpib_ioctl
Annotated Snippet
struct gpib_board_type_ioctl {
char name[100];
};
/* argument for read/write/command ioctls */
struct gpib_read_write_ioctl {
__u64 buffer_ptr;
__u32 requested_transfer_count;
__u32 completed_transfer_count;
__s32 end; /* end flag return for reads, end io suppression request for cmd*/
__s32 handle;
};
struct gpib_open_dev_ioctl {
__u32 handle;
__u32 pad;
__s32 sad;
__u32 is_board;
};
struct gpib_close_dev_ioctl {
__u32 handle;
};
struct gpib_serial_poll_ioctl {
__u32 pad;
__s32 sad;
__u8 status_byte;
__u8 padding[3]; /* align to 32 bit boundary */
};
struct gpib_eos_ioctl {
__s32 eos;
__s32 eos_flags;
};
struct gpib_wait_ioctl {
__s32 handle;
__s32 wait_mask;
__s32 clear_mask;
__s32 set_mask;
__s32 ibsta;
__s32 pad;
__s32 sad;
__u32 usec_timeout;
};
struct gpib_online_ioctl {
__u64 init_data_ptr;
__s32 init_data_length;
__s32 online;
};
struct gpib_spoll_bytes_ioctl {
__u32 num_bytes;
__u32 pad;
__s32 sad;
};
struct gpib_board_info_ioctl {
__u32 pad;
__s32 sad;
__s32 parallel_poll_configuration;
__s32 autopolling;
__s32 is_system_controller;
__u32 t1_delay;
unsigned ist : 1;
unsigned no_7_bit_eos : 1;
unsigned padding :30; /* align to 32 bit boundary */
};
struct gpib_select_pci_ioctl {
__s32 pci_bus;
__s32 pci_slot;
};
struct gpib_ppoll_config_ioctl {
__u8 config;
unsigned set_ist : 1;
unsigned clear_ist : 1;
unsigned padding :22; /* align to 32 bit boundary */
};
struct gpib_pad_ioctl {
__u32 handle;
__u32 pad;
};
struct gpib_sad_ioctl {
__u32 handle;
Annotation
- Immediate include surface: `asm/ioctl.h`, `linux/types.h`.
- Detected declarations: `struct gpib_board_type_ioctl`, `struct gpib_read_write_ioctl`, `struct gpib_open_dev_ioctl`, `struct gpib_close_dev_ioctl`, `struct gpib_serial_poll_ioctl`, `struct gpib_eos_ioctl`, `struct gpib_wait_ioctl`, `struct gpib_online_ioctl`, `struct gpib_spoll_bytes_ioctl`, `struct gpib_board_info_ioctl`.
- 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.