Hi,
I read the following GPIO description, but I don't understand the line with '##'. Are there some connection with the above paragraph?
Thanks,
.............................. Accessing such GPIOs requires a context which may sleep, for example a threaded IRQ handler, and those accessors must be used instead of spinlock-safe accessors without the cansleep() name suffix.
Other than the fact that these accessors might sleep, and will work on GPIOs that can't be accessed from hardIRQ handlers, these calls act the same as the spinlock-safe calls.
** IN ADDITION ** calls to setup and configure such GPIOs must be made from contexts which may sleep, since they may need to access the GPIO controller chip too: (These setup calls are usually made from board setup or driver probe/teardown code, so this is an easy constraint.)gpio_direction_input() gpio_direction_output() gpio_request()
## gpio_request_one() ## gpio_request_array() ## gpio_free_array()
gpio_free() gpio_set_debounce()