r_efi/protocols/
debugport.rs

1//! Debug Port Protocol
2//!
3//! It provides the communication link between the debug agent and the remote host.
4
5pub const PROTOCOL_GUID: crate::base::Guid = crate::base::Guid::from_fields(
6    0xeba4e8d2,
7    0x3858,
8    0x41ec,
9    0xa2,
10    0x81,
11    &[0x26, 0x47, 0xba, 0x96, 0x60, 0xd0],
12);
13
14pub type Reset = eficall! {fn(
15    *mut Protocol,
16) -> *mut crate::base::Status};
17
18pub type Write = eficall! {fn(
19    *mut Protocol,
20    u32,
21    *mut usize,
22    *mut core::ffi::c_void
23) -> *mut crate::base::Status};
24
25pub type Read = eficall! {fn(
26    *mut Protocol,
27    u32,
28    *mut usize,
29    *mut core::ffi::c_void
30) -> *mut crate::base::Status};
31
32pub type Poll = eficall! {fn(
33    *mut Protocol,
34) -> *mut crate::base::Status};
35
36#[repr(C)]
37pub struct Protocol {
38    pub reset: Reset,
39    pub write: Write,
40    pub read: Read,
41    pub poll: Poll,
42}