You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[@pabigot] As soon as master CI is green, freeze merges to master, rebase the topic branch
[@nashif] run CI locally, merge topic-gpio to master, unfreeze
Final testing on hardware (~10 boards before merge, @pabigot and @mnkp . Rest in master before release)
Post-merge:
[@carlescufi] Send an email to devel@ with a warning of potential master breakage if CI is not rerun on all PRs
[@mnkp] Add to release notes: summary of changes and impact, e.g. pin enable/disable callback operations deprecated, explain how to use the new API to achieve the same result
(optional) Make the porting guide available to users
Document the revision range of the lifetime of the topic-gpio branch
Post effort:
Never go through this again
The text was updated successfully, but these errors were encountered:
Could we skip #20017 and convert GPIO users on master? That would avoid conflict and locks.
As discussed before, this would cause sanitycheck to fail because in-tree samples would be using deprecated functions. If you want to propose an alternative mechanism to merge topic-gpio I suggest you take a look first at @pabigot's initial roadmap proposal.
This comment provides more detail on how I intend to address several of the main issue bullet points. It may be adjusted based on discoveries and feedback.
Work will begin once #18530 is complete, and #20017 is nearly complete. At that point the topic branch will again be rebased on master.
The exact order and breakdown of changes into into commits and PRs will be determined as I get into it. Work-in-progress will probably be exposed in a draft PR. My intent is to have all this submitted for review by 01 February so we can merge the topic branch to master the week of 03 February. The deadline is 07 February, but there's no reason to wait until the last minute.
Generic
API documentation clarifications not covered by other updates.
Role-based typedef cleanup
Change public GPIO API to use gpio_pin_t for all parameters that are pin indexes.
Replace gpio_devicetree_flags_t to gpio_dt_flags_t.
Replace u32_t by gpio_port_value_t for all port API value parameters.
Function and macro deprecation
Re-implement gpio_pin_write() as gpio_pin_set_raw() and deprecate it. Replace all in-tree uses.
Re-implement gpio_pin_read() as gpio_pin_get_raw() and deprecate it. Replace all in-tree uses.
Macro deprecation details TBD.
Implementation cleanup
(all drivers) Remove the write and read API functions and references to GPIO_ACCESS_BY_ macros.
(all drivers) Remove access_op parameter from API functions.
(all drivers) Update API function declarations to use role-specific typedefs
Remove the write and read API functions and GPIO_ACCESS_BY_ macros from the API function table and generic header.
Fix return value for internal get_pending_int function declaration.
In order to merge topic-gpio back to master we need to finalize:
typedef
s:gpio_devicetree_flags_t
togpio_dt_flags_t
; replace u32_t with role-specific typedefs in function declarationsPost-merge:
Post effort:
The text was updated successfully, but these errors were encountered: