There is a typedef used to store pin indexes in configuration
structures. For consistency it should also be used to identify pin
indexes in function prototypes.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
The only remaining port operations have dedicated API function table
entries. Remove the defines for access op (mode), and remove support
for access op from all implementations.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
The last external reference to these was removed when the pin
write/read functions were deprecated. Remove the syscall support, API
function table entries, and implementation from all drivers.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
These have been replaced by the appropriate call to
gpio_pin_interrupt_configure(). While the disable function could be
implemented using the new functionality, the enable function cannot
because the interrupt mode is not available. Consequently we cannot
replace these with equivalent functionality using the legacy API.
Clean up the internal implementation by removing the inaccessible
port-based enable/disable feature, leaving the pin-based capability in
place.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the enable callback API with the enable interrupt API, and do
it after the callback is installed.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Since the callback enable and disable functions are deprecated, but
cannot be re-implemented in terms of other API, add back an old-style
interrupt configuration test that uses the deprecated flags and
functions in the way existing code would do. The test module
internally disables the deprecation warnings.
Remove the test for the deprecated read/write functions, incorporating
a basic check into the module that tests deprecated callback functions.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
This API will be deprecated in favor of the new API that clearly
specifies whether it works on logical or physical levels.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Update to use new API for GPIO pin configuration and operation. Fix
invalid arithmetic on void pointer. Convert to support devicetree.
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Update to use new API for GPIO pin configuration and operation. Fix
invalid arithmetic on void pointer. Mark all CC2520 GPIOs as required
in binding.
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Use new API to configure and interact with GPIOs. Move GPIO
initialization from sample into driver. The existing physical/line
level control has been kept rather than converting to logical level
signals.
Also improve error messages.
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Signed-off-by: Johann Fischer <j.fischer@phytec.de>
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
After startup ublox-sara-r4 code sets the MDM_POWER signal to input
using a deprecated configuration macro. This was the only use of the
modem context API to configure a pin.
Refactor the API to not take the flags as an input but instead select
between the flags to be used when the pin is active and a disconnected
state. Use this API instead of a separate direct configure call when
initializing the modem pins.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Use the non-deprecated flags and configure the modem power switch as
active-low. The UBLOX_PWR_DETECT signal appears to be active high.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Remove macros and a state structure that are not used anywhere and
incompletely describe a GPIO pin specifier.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Treat Kconfig-specific GPIOs as active-high (default) and use the
logic-level API to interact with them.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Use the new pin and interrupt configuration API.
NOTE: Because hardware is not available this has been build-tested
only.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Update the DRDYB pin interrupt handling code of the TI LMP90xxx ADC
driver to use the new GPIO API.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Update the lora/sx1276 driver to the new GPIO API, using configured
active level and the replacement interrupt and active-sensitive set
APIs.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Document and assign write-protect signal as active low, and use the
active-sensitive API to control it.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
Replace the legacy flags that assumed active level was relevant
only to input signals with the generic active level flags used
in Linux.
Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>