[riot-notifications] [RIOT-OS/RIOT] periph/gpio: new expandable GPIO API (#14602)
notifications at github.com
Wed Nov 11 17:26:14 CET 2020
I really would like to see this finally getting upstream. Maybe it is easiest to split this effort into some smaller PRs to get this less scary. How about this:
1. Addition of port access for peripheral GPIO ports, ideally as a `static inline` header only implementation for single CPU cycle access even without `LTO=1`
- As this would be independent of the existing `periph_gpio` API, this could be added one platform at a time
- This API will remain useful for high throughput bit-banging, even after a common high-level GPIO API for both external and peripheral GPIOs finally is upstream
- And having a super fast low level alternative can be a good excuse for trading in some speed for convenience in the high level GPIO API
2. Once all platforms have the "`periph_gpio_ng`", we could replace `periph_gpio` with a common implementation on top of `periph_gpio_ng`
3. A port access API to peripheral GPIO extender
- This could be done in parallel and fully independent of 1. / 2.
- However, the function signatures should be the same, as ultimately we want a common high level GPIO API
4. Once parts 1. - 3. are upstream: A common high level GPIO API
- This should be easier now, as `periph_gpio` is now a common platform independent implementation based on `periph_gpio_ng`. So only one place to modify.
Does this sound reasonable? I could help with reviewing and/or coding parts of this.
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the notifications