STRUCT ES2_AP_DEV(9)
okay so bestie, welcome to the struct es2_ap_dev(9) page from the Kernel API Manual π this is the ES2 USB Bridge to AP structure, and we're gonna go through every single member like it's a group chat recap β no cap, nothing skipped β¨
πΈ NAME πΈ
struct es2_ap_dev β ES2 USB Bridge to AP structure π¦
β¨ SYNOPSIS β¨
struct es2_ap_dev {
struct usb_device *usb_dev;
struct usb_interface *usb_intf;
struct gb_host_device *hd;
struct es2_cport_in cport_in;
__u8 cport_out_endpoint;
struct urb *cport_out_urb[NUM_CPORT_OUT_URB];
bool cport_out_urb_busy[NUM_CPORT_OUT_URB];
bool cport_out_urb_cancelled[NUM_CPORT_OUT_URB];
spinlock_t cport_out_urb_lock;
bool cdsi1_in_use;
struct task_struct *apb_log_task;
struct dentry *apb_log_dentry;
struct dentry *apb_log_enable_dentry;
char *apb_log_fifo;
__u8 arpc_endpoint_in;
struct urb *arpc_urb[NUM_ARPC_IN_URB];
u8 *arpc_buffer[NUM_ARPC_IN_URB];
int arpc_id_cycle;
spinlock_t arpc_lock;
struct list_head arpcs;
};
π«Ά Members π«Ά
usb_devβ pointer to the USB device we are. literally us, main character energy πusb_intfβ pointer to the USB interface we are bound to.hdβ pointer to ourgb_host_devicestructure.cport_inβ endpoint, urbs and buffer for cport in messages.cport_out_endpointβ endpoint for cport out messages.cport_out_urbβ array of urbs for the CPort out messages.cport_out_urb_busyβ array of flags to see if thecport_out_urbis busy or not.cport_out_urb_cancelledβ array of flags indicating whether the correspondingcport_out_urbis being cancelled.cport_out_urb_lockβ locks thecport_out_urb_busy"list".cdsi1_in_useβ true if cport CDSI1 is in use.apb_log_taskβ task pointer for logging thread.apb_log_dentryβ file system entry for the log file interface.apb_log_enable_dentryβ file system entry for enabling logging.apb_log_fifoβ kernel FIFO to carry logged data.arpc_endpoint_inβ bulk in endpoint for APBridgeA RPC.arpc_urbβ array of urbs for the ARPC in messages.arpc_bufferβ array of buffers for thearpc_urburbs.arpc_id_cycleβ gives an unique id to ARPC. iykyk πarpc_lockβ locks ARPC list.arpcsβ list of in progress ARPCs.
π¦ SEE ALSO π¦
Kernel file ./drivers/greybus/es2.c β go read it, bestie, it's giving source-of-truth energy π₯
mwah π this lil page comes from ./drivers/greybus, dated October 2026, and it's all about struct es2_ap_dev(9) β bye bestie, slay your kernel adventures! πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms