static void tmp007_work_cb(struct nano_work *work) { struct tmp007_data *drv_data = CONTAINER_OF(work, struct tmp007_data, work); tmp007_fiber_cb(drv_data->dev); }
static void tmp007_fiber(int dev_ptr, int unused) { struct device *dev = INT_TO_POINTER(dev_ptr); struct tmp007_data *drv_data = dev->driver_data; ARG_UNUSED(unused); while (1) { nano_fiber_sem_take(&drv_data->gpio_sem, TICKS_UNLIMITED); tmp007_fiber_cb(dev); } }