#[repr(C)]pub struct gpio_callback {
pub node: _snode,
pub handler: Option<unsafe extern "C" fn(_: *const device, _: *mut gpio_callback, _: u32)>,
pub pin_mask: u32,
}
Expand description
@brief GPIO callback structure
Used to register a callback in the driver instance callback list. As many callbacks as needed can be added as long as each of them are unique pointers of struct gpio_callback. Beware such structure should not be allocated on stack.
Note: To help setting it, see gpio_init_callback() below
Fields§
§node: _snode
This is meant to be used in the driver and the user should not mess with it (see drivers/gpio/gpio_utils.h)
handler: Option<unsafe extern "C" fn(_: *const device, _: *mut gpio_callback, _: u32)>
Actual callback function being called when relevant.
pin_mask: u32
A mask of pins the callback is interested in, if 0 the callback will never be called. Such pin_mask can be modified whenever necessary by the owner, and thus will affect the handler being called or not. The selected pins must be configured to trigger an interrupt.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for gpio_callback
impl RefUnwindSafe for gpio_callback
impl !Send for gpio_callback
impl !Sync for gpio_callback
impl Unpin for gpio_callback
impl UnwindSafe for gpio_callback
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more