gpio_work
struct work_struct gpio_work;
schedule_work(&chip->gpio_work);
struct oxygen *chip = container_of(work, struct oxygen, gpio_work);
flush_work(&chip->gpio_work);
INIT_WORK(&chip->gpio_work, oxygen_gpio_changed);
flush_work(&chip->gpio_work);
INIT_DELAYED_WORK(&gpios[i].work, gpio_work);