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.

Dependency Surface

Detected Declarations

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

Implementation Notes