13 #ifndef DRV_LINUX_GPIO_DRIVER_HPP 14 #define DRV_LINUX_GPIO_DRIVER_HPP 123 static void interruptFunction(
void*
self);
148 ApiVersion m_apiVersion = ApiVersion::API_VERSION_UNSET;
154 bool m_running =
false;
159 #endif // DRV_LINUX_GPIO_DRIVER_HPP void stop()
stop interrupt detection thread
static constexpr FwSizeType TASK_DEFAULT
PlatformTaskIdType FwTaskIdType
The type of task priorities used.
PlatformSizeType FwSizeType
Input GPIO pin triggers interrupt port on falling edge.
Drv::GpioStatus start(const FwTaskPriorityType priority=Os::Task::TASK_PRIORITY_DEFAULT, const FwSizeType stackSize=Os::Task::TASK_DEFAULT, const FwSizeType cpuAffinity=Os::Task::TASK_DEFAULT, const FwTaskIdType identifier=static_cast< FwTaskIdType >(Os::Task::TASK_DEFAULT))
start interrupt detection thread
Deprecated version 1 (gpiohandle_*/gpioevent_*) uAPI.
static constexpr FwTaskPriorityType TASK_PRIORITY_DEFAULT
Auto-generated base for LinuxGpioDriver component.
GpioConfiguration
configure the GPIO pin
Input GPIO pin triggers interrupt port on both edges.
PlatformTaskPriorityType FwTaskPriorityType
The type of task priorities used.
Os::File::Status open(const char *device, const U32 gpio, const GpioConfiguration &configuration, const Fw::Logic &default_state=Fw::Logic::LOW)
open a GPIO pin for use in the system
LinuxGpioDriver(const char *const compName)
PlatformIndexType FwIndexType
Output GPIO pin for direct writing.
Version 2 (gpio_v2_*) uAPI.
Input GPIO pin for direct reading.
Input GPIO pin triggers interrupt port on rising edge.
ApiVersion
Linux GPIO character device uAPI version used for the opened pin.
static constexpr FwSizeType GPIO_POLL_TIMEOUT
void join()
join interrupt detection thread