Device-specific pin & GPIO driver for CC26xx family [def].
This is the device-specific implementation of the generic PIN driver for the CC26xx family of devices.
Refer to PIN.h for a complete description of APIs & example of use.
#include <stdint.h>
#include <stddef.h>
#include <ti/drivers/dpl/HwiP.h>
#include <ti/drivers/PIN.h>
#include <ti/devices/DeviceFamily.h>
#include <DeviceFamily_constructPath(driverlib/ioc.h)>
#include <DeviceFamily_constructPath(driverlib/gpio.h)>
Go to the source code of this file.
Data Structures | |
struct | PINCC26XX_HWAttrs |
PINCC26XX Hardware attributes. More... | |
Macros | |
#define | PIN_CHKEN 1 |
Device-specific PIN_Config flags/fields for CC26xx family | |
CC26XX-specific I/O configuration fields/flags for use in PIN_Config entries. These fields flags/for the most part map directly to the values used in the | |
#define | PINCC26XX_INPUT_EN (1 << 29) |
Enable input buffer. More... | |
#define | PINCC26XX_HYSTERESIS (1 << 30) |
Enable input buffer hysteresis. More... | |
#define | PINCC26XX_NOPULL (0x3 << 13) |
No pull-up or pull-down resistor. More... | |
#define | PINCC26XX_PULLUP (0x2 << 13) |
~20k pull-up resistor enabled More... | |
#define | PINCC26XX_PULLDOWN (0x1 << 13) |
~20k pull-down resistor enabled More... | |
#define | PINCC26XX_BM_INPUT_EN (0x01 << 29) |
Bitmask for input enable option. More... | |
#define | PINCC26XX_BM_HYSTERESIS (0x01 << 30) |
Bitmask for all input mode options. More... | |
#define | PINCC26XX_BM_PULLING (0x03 << 13) |
#define | PINCC26XX_BM_INPUT_MODE |
Bitmask for all input mode options. More... | |
#define | PINCC26XX_GPIO_OUTPUT_EN (1 << 23) |
Enable output buffer when GPIO. More... | |
#define | PINCC26XX_GPIO_LOW (0 << 22) |
Output buffer drives to VSS when GPIO. More... | |
#define | PINCC26XX_GPIO_HIGH (1 << 22) |
Output buffer drives to VDD when GPIO. More... | |
#define | PINCC26XX_PUSHPULL (0x0 << 25) |
Output buffer mode: push/pull. More... | |
#define | PINCC26XX_OPENDRAIN (0x2 << 25) |
Output buffer mode: open drain. More... | |
#define | PINCC26XX_OPENSOURCE (0x3 << 25) |
Output buffer mode: open source. More... | |
#define | PINCC26XX_SLEWCTRL (1 << 12) |
Enable output buffer slew control. More... | |
#define | PINCC26XX_DRVSTR_MIN (0x0 << 8) |
Drive strength is 2/2 mA. More... | |
#define | PINCC26XX_DRVSTR_MED (0x4 << 8) |
Drive strength is 4/4 mA. More... | |
#define | PINCC26XX_DRVSTR_MAX (0x8 << 8) |
Drive strength is 4/8 mA. More... | |
#define | PINCC26XX_BM_GPIO_OUTPUT_EN (1 << 23) |
Bitmask for output enable option. More... | |
#define | PINCC26XX_BM_GPIO_OUTPUT_VAL (1 << 22) |
Bitmask for output value option. More... | |
#define | PINCC26XX_BM_OUTPUT_BUF (3 << 25) |
Bitmask for output buffer options. More... | |
#define | PINCC26XX_BM_SLEWCTRL (1 << 12) |
Bitmask for slew control options. More... | |
#define | PINCC26XX_BM_DRVSTR (0xF << 8) |
#define | PINCC26XX_BM_GPIO_OUTPUT_MODE (PINCC26XX_BM_GPIO_OUTPUT_EN | PINCC26XX_BM_GPIO_OUTPUT_VAL) |
Bitmask for all GPIO output mode options. More... | |
#define | PINCC26XX_BM_OUTPUT_MODE |
Bitmask for all output mode options. More... | |
#define | PINCC26XX_INV_INOUT (1 << 24) |
Logically invert input and output. More... | |
#define | PINCC26XX_IRQ_DIS (0x0 << 16) |
Enable IRQ on pin. More... | |
#define | PINCC26XX_IRQ_NEGEDGE (0x5 << 16) |
IRQ on negative edge. More... | |
#define | PINCC26XX_IRQ_POSEDGE (0x6 << 16) |
IRQ on positive edge. More... | |
#define | PINCC26XX_IRQ_BOTHEDGES (0x7 << 16) |
IRQ on both edges. More... | |
#define | PINCC26XX_BM_INV_INOUT (1 << 24) |
Bitmask for input/output inversion option. More... | |
#define | PINCC26XX_BM_IRQ (0x7 << 16) |
Bitmask for pin interrupt option. More... | |
#define | PINCC26XX_NO_WAKEUP (0 << 27) |
No wakeup from shutdown for this pin. More... | |
#define | PINCC26XX_WAKEUP_POSEDGE (3 << 27) |
Wakeup from shutdown on positive edge. More... | |
#define | PINCC26XX_WAKEUP_NEGEDGE (2 << 27) |
Wakeup from shutdown on negative edge. More... | |
#define | PINCC26XX_BM_WAKEUP (3 << 27) |
Bitmask for pin wakeup from shutdown option. More... | |
#define | PINCC26XX_BM_IOCFG |
Bitmask for all pin options in IOCFG register. More... | |
#define | PINCC26XX_BM_ALL (PINCC26XX_BM_IOCFG | PINCC26XX_BM_GPIO_OUTPUT_MODE) |
Bitmask for all pin options. More... | |
PIN names for the CC26xx family | |
The digital I/O pins in the CC26xx family are named DIOx, where x is from 0 to IO_MAX. Numeric IO indexes for x can be used directly, i.e. 5 or PIN_ID(5). For convenience and readability aliases are defined below for all DIOs. | |
#define | PINCC26XX_DIO0 0 |
#define | PINCC26XX_DIO1 1 |
#define | PINCC26XX_DIO2 2 |
#define | PINCC26XX_DIO3 3 |
#define | PINCC26XX_DIO4 4 |
#define | PINCC26XX_DIO5 5 |
#define | PINCC26XX_DIO6 6 |
#define | PINCC26XX_DIO7 7 |
#define | PINCC26XX_DIO8 8 |
#define | PINCC26XX_DIO9 9 |
#define | PINCC26XX_DIO10 10 |
#define | PINCC26XX_DIO11 11 |
#define | PINCC26XX_DIO12 12 |
#define | PINCC26XX_DIO13 13 |
#define | PINCC26XX_DIO14 14 |
#define | PINCC26XX_DIO15 15 |
#define | PINCC26XX_DIO16 16 |
#define | PINCC26XX_DIO17 17 |
#define | PINCC26XX_DIO18 18 |
#define | PINCC26XX_DIO19 19 |
#define | PINCC26XX_DIO20 20 |
#define | PINCC26XX_DIO21 21 |
#define | PINCC26XX_DIO22 22 |
#define | PINCC26XX_DIO23 23 |
#define | PINCC26XX_DIO24 24 |
#define | PINCC26XX_DIO25 25 |
#define | PINCC26XX_DIO26 26 |
#define | PINCC26XX_DIO27 27 |
#define | PINCC26XX_DIO28 28 |
#define | PINCC26XX_DIO29 29 |
#define | PINCC26XX_DIO30 30 |
#define | PINCC26XX_DIO31 31 |
Device-specific pin mux values for CC26xx family | |
| |
#define | PINCC26XX_MUX_GPIO IOC_PORT_GPIO |
#define | PINCC26XX_MUX_AON_CLK32K IOC_PORT_AON_CLK32K |
#define | PINCC26XX_MUX_AUX_IO IOC_PORT_AUX_IO |
#define | PINCC26XX_MUX_MCU_SSI0_RX IOC_PORT_MCU_SSI0_RX |
#define | PINCC26XX_MUX_MCU_SSI0_TX IOC_PORT_MCU_SSI0_TX |
#define | PINCC26XX_MUX_MCU_SSI0_FSS IOC_PORT_MCU_SSI0_FSS |
#define | PINCC26XX_MUX_MCU_SSI0_CLK IOC_PORT_MCU_SSI0_CLK |
#define | PINCC26XX_MUX_MCU_I2C_MSSDA IOC_PORT_MCU_I2C_MSSDA |
#define | PINCC26XX_MUX_MCU_I2C_MSSCL IOC_PORT_MCU_I2C_MSSCL |
#define | PINCC26XX_MUX_MCU_UART0_RX IOC_PORT_MCU_UART0_RX |
#define | PINCC26XX_MUX_MCU_UART0_TX IOC_PORT_MCU_UART0_TX |
#define | PINCC26XX_MUX_MCU_UART0_CTS IOC_PORT_MCU_UART0_CTS |
#define | PINCC26XX_MUX_MCU_UART0_RTS IOC_PORT_MCU_UART0_RTS |
#define | PINCC26XX_MUX_MCU_PORT_EV_0 IOC_PORT_MCU_PORT_EVENT0 |
#define | PINCC26XX_MUX_MCU_PORT_EV_1 IOC_PORT_MCU_PORT_EVENT1 |
#define | PINCC26XX_MUX_MCU_PORT_EV_2 IOC_PORT_MCU_PORT_EVENT2 |
#define | PINCC26XX_MUX_MCU_PORT_EV_3 IOC_PORT_MCU_PORT_EVENT3 |
#define | PINCC26XX_MUX_MCU_PORT_EV_4 IOC_PORT_MCU_PORT_EVENT4 |
#define | PINCC26XX_MUX_MCU_PORT_EV_5 IOC_PORT_MCU_PORT_EVENT5 |
#define | PINCC26XX_MUX_MCU_PORT_EV_6 IOC_PORT_MCU_PORT_EVENT6 |
#define | PINCC26XX_MUX_MCU_PORT_EV_7 IOC_PORT_MCU_PORT_EVENT7 |
#define | PINCC26XX_MUX_SWV IOC_PORT_MCU_SWV |
#define | PINCC26XX_MUX_MCU_SSI1_RX IOC_PORT_MCU_SSI1_RX |
#define | PINCC26XX_MUX_MCU_SSI1_TX IOC_PORT_MCU_SSI1_TX |
#define | PINCC26XX_MUX_MCU_SSI1_FSS IOC_PORT_MCU_SSI1_FSS |
#define | PINCC26XX_MUX_MCU_SSI1_CLK IOC_PORT_MCU_SSI1_CLK |
#define | PINCC26XX_MUX_MCU_I2S_AD0 IOC_PORT_MCU_I2S_AD0 |
#define | PINCC26XX_MUX_MCU_I2S_AD1 IOC_PORT_MCU_I2S_AD1 |
#define | PINCC26XX_MUX_MCU_I2S_WCLK IOC_PORT_MCU_I2S_WCLK |
#define | PINCC26XX_MUX_MCU_I2S_BCLK IOC_PORT_MCU_I2S_BCLK |
#define | PINCC26XX_MUX_MCU_I2S_MCLK IOC_PORT_MCU_I2S_MCLK |
#define | PINCC26XX_MUX_RFC_TRC IOC_PORT_RFC_TRC |
#define | PINCC26XX_MUX_RFC_GPO0 IOC_PORT_RFC_GPO0 |
#define | PINCC26XX_MUX_RFC_GPO1 IOC_PORT_RFC_GPO1 |
#define | PINCC26XX_MUX_RFC_GPO2 IOC_PORT_RFC_GPO2 |
#define | PINCC26XX_MUX_RFC_GPO3 IOC_PORT_RFC_GPO3 |
#define | PINCC26XX_MUX_RFC_GPI0 IOC_PORT_RFC_GPI0 |
#define | PINCC26XX_MUX_RFC_GPI1 IOC_PORT_RFC_GPI1 |
#define | PINCC26XX_MUX_RFC_SMI_DL_OUT IOC_PORT_RFC_SMI_DL_OUT |
#define | PINCC26XX_MUX_RFC_SMI_DL_IN IOC_PORT_RFC_SMI_DL_IN |
#define | PINCC26XX_MUX_RFC_SMI_CL_OUT IOC_PORT_RFC_SMI_CL_OUT |
#define | PINCC26XX_MUX_RFC_SMI_CL_IN IOC_PORT_RFC_SMI_CL_IN |
Functions | |
__STATIC_INLINE uint32_t | PIN_ctz (uint32_t x) |
__STATIC_INLINE uint32_t | PINCC26XX_getInputValue (PIN_Id pinId) |
Fast/efficient version of PIN_getInputValue() More... | |
__STATIC_INLINE void | PINCC26XX_setOutputEnable (PIN_Id pinId, bool outputEnable) |
__STATIC_INLINE void | PINCC26XX_setOutputValue (PIN_Id pinId, uint32_t val) |
__STATIC_INLINE uint32_t | PINCC26XX_getOutputValue (PIN_Id pinId) |
Fast/efficient version of PIN_getOutputValue() More... | |
__STATIC_INLINE void | PINCC26XX_clrPendInterrupt (PIN_Id pinId) |
__STATIC_INLINE uint32_t | PINCC26XX_getPortInputValue (PIN_Handle handle) |
Fast/efficient version of PIN_getPortInputValue() More... | |
__STATIC_INLINE uint32_t | PINCC26XX_getPortOutputValue (PIN_Handle handle) |
Fast/efficient version of PIN_getPortOutputValue() More... | |
__STATIC_INLINE void | PINCC26XX_setPortOutputValue (PIN_Handle handle, uint32_t outputValueMask) |
__STATIC_INLINE void | PINCC26XX_setPortOutputEnable (PIN_Handle handle, uint32_t outputEnableMask) |
PIN_Config | PINCC26XX_getConfig (PIN_Id pinId) |
Returns CC26xx device-specific pin configuration. More... | |
PIN_Status | PINCC26XX_setWakeup (const PIN_Config aPinCfg[]) |
Configure wakeup (from shutdown) on pins. More... | |
int32_t | PINCC26XX_getMux (PIN_Id pinId) |
Get device-specific pin mapping to GPIO, HW peripheral or HW signal. More... | |
uint32_t | PINCC26XX_getPinCount () |
Get device-specific count of how many pins are available on this device and package. More... | |
PIN_Status | PINCC26XX_setMux (PIN_Handle handle, PIN_Id pinId, int32_t nMux) |
Connect pin to HW peripheral, signal or to GPIO. More... | |
#define PIN_CHKEN 1 |
#define PINCC26XX_INPUT_EN (1 << 29) |
Enable input buffer.
#define PINCC26XX_HYSTERESIS (1 << 30) |
Enable input buffer hysteresis.
#define PINCC26XX_NOPULL (0x3 << 13) |
No pull-up or pull-down resistor.
#define PINCC26XX_PULLUP (0x2 << 13) |
~20k pull-up resistor enabled
#define PINCC26XX_PULLDOWN (0x1 << 13) |
~20k pull-down resistor enabled
#define PINCC26XX_BM_INPUT_EN (0x01 << 29) |
Bitmask for input enable option.
#define PINCC26XX_BM_HYSTERESIS (0x01 << 30) |
Bitmask for all input mode options.
#define PINCC26XX_BM_PULLING (0x03 << 13) |
Bitmask for pull-up/pull-down options
#define PINCC26XX_BM_INPUT_MODE |
Bitmask for all input mode options.
#define PINCC26XX_GPIO_OUTPUT_EN (1 << 23) |
Enable output buffer when GPIO.
#define PINCC26XX_GPIO_LOW (0 << 22) |
Output buffer drives to VSS when GPIO.
#define PINCC26XX_GPIO_HIGH (1 << 22) |
Output buffer drives to VDD when GPIO.
#define PINCC26XX_PUSHPULL (0x0 << 25) |
Output buffer mode: push/pull.
#define PINCC26XX_OPENDRAIN (0x2 << 25) |
Output buffer mode: open drain.
#define PINCC26XX_OPENSOURCE (0x3 << 25) |
Output buffer mode: open source.
#define PINCC26XX_SLEWCTRL (1 << 12) |
Enable output buffer slew control.
#define PINCC26XX_DRVSTR_MIN (0x0 << 8) |
Drive strength is 2/2 mA.
#define PINCC26XX_DRVSTR_MED (0x4 << 8) |
Drive strength is 4/4 mA.
#define PINCC26XX_DRVSTR_MAX (0x8 << 8) |
Drive strength is 4/8 mA.
#define PINCC26XX_BM_GPIO_OUTPUT_EN (1 << 23) |
Bitmask for output enable option.
#define PINCC26XX_BM_GPIO_OUTPUT_VAL (1 << 22) |
Bitmask for output value option.
#define PINCC26XX_BM_OUTPUT_BUF (3 << 25) |
Bitmask for output buffer options.
#define PINCC26XX_BM_SLEWCTRL (1 << 12) |
Bitmask for slew control options.
#define PINCC26XX_BM_DRVSTR (0xF << 8) |
Bitmask for drive strength options
#define PINCC26XX_BM_GPIO_OUTPUT_MODE (PINCC26XX_BM_GPIO_OUTPUT_EN | PINCC26XX_BM_GPIO_OUTPUT_VAL) |
Bitmask for all GPIO output mode options.
#define PINCC26XX_BM_OUTPUT_MODE |
Bitmask for all output mode options.
#define PINCC26XX_INV_INOUT (1 << 24) |
Logically invert input and output.
#define PINCC26XX_IRQ_DIS (0x0 << 16) |
Enable IRQ on pin.
#define PINCC26XX_IRQ_NEGEDGE (0x5 << 16) |
IRQ on negative edge.
#define PINCC26XX_IRQ_POSEDGE (0x6 << 16) |
IRQ on positive edge.
#define PINCC26XX_IRQ_BOTHEDGES (0x7 << 16) |
IRQ on both edges.
#define PINCC26XX_BM_INV_INOUT (1 << 24) |
Bitmask for input/output inversion option.
#define PINCC26XX_BM_IRQ (0x7 << 16) |
Bitmask for pin interrupt option.
#define PINCC26XX_NO_WAKEUP (0 << 27) |
No wakeup from shutdown for this pin.
#define PINCC26XX_WAKEUP_POSEDGE (3 << 27) |
Wakeup from shutdown on positive edge.
#define PINCC26XX_WAKEUP_NEGEDGE (2 << 27) |
Wakeup from shutdown on negative edge.
#define PINCC26XX_BM_WAKEUP (3 << 27) |
Bitmask for pin wakeup from shutdown option.
#define PINCC26XX_BM_IOCFG |
Bitmask for all pin options in IOCFG register.
#define PINCC26XX_BM_ALL (PINCC26XX_BM_IOCFG | PINCC26XX_BM_GPIO_OUTPUT_MODE) |
Bitmask for all pin options.
#define PINCC26XX_DIO0 0 |
#define PINCC26XX_DIO1 1 |
#define PINCC26XX_DIO2 2 |
#define PINCC26XX_DIO3 3 |
#define PINCC26XX_DIO4 4 |
#define PINCC26XX_DIO5 5 |
#define PINCC26XX_DIO6 6 |
#define PINCC26XX_DIO7 7 |
#define PINCC26XX_DIO8 8 |
#define PINCC26XX_DIO9 9 |
#define PINCC26XX_DIO10 10 |
#define PINCC26XX_DIO11 11 |
#define PINCC26XX_DIO12 12 |
#define PINCC26XX_DIO13 13 |
#define PINCC26XX_DIO14 14 |
#define PINCC26XX_DIO15 15 |
#define PINCC26XX_DIO16 16 |
#define PINCC26XX_DIO17 17 |
#define PINCC26XX_DIO18 18 |
#define PINCC26XX_DIO19 19 |
#define PINCC26XX_DIO20 20 |
#define PINCC26XX_DIO21 21 |
#define PINCC26XX_DIO22 22 |
#define PINCC26XX_DIO23 23 |
#define PINCC26XX_DIO24 24 |
#define PINCC26XX_DIO25 25 |
#define PINCC26XX_DIO26 26 |
#define PINCC26XX_DIO27 27 |
#define PINCC26XX_DIO28 28 |
#define PINCC26XX_DIO29 29 |
#define PINCC26XX_DIO30 30 |
#define PINCC26XX_DIO31 31 |
#define PINCC26XX_MUX_GPIO IOC_PORT_GPIO |
#define PINCC26XX_MUX_AON_CLK32K IOC_PORT_AON_CLK32K |
#define PINCC26XX_MUX_AUX_IO IOC_PORT_AUX_IO |
#define PINCC26XX_MUX_MCU_SSI0_RX IOC_PORT_MCU_SSI0_RX |
#define PINCC26XX_MUX_MCU_SSI0_TX IOC_PORT_MCU_SSI0_TX |
#define PINCC26XX_MUX_MCU_SSI0_FSS IOC_PORT_MCU_SSI0_FSS |
#define PINCC26XX_MUX_MCU_SSI0_CLK IOC_PORT_MCU_SSI0_CLK |
#define PINCC26XX_MUX_MCU_I2C_MSSDA IOC_PORT_MCU_I2C_MSSDA |
#define PINCC26XX_MUX_MCU_I2C_MSSCL IOC_PORT_MCU_I2C_MSSCL |
#define PINCC26XX_MUX_MCU_UART0_RX IOC_PORT_MCU_UART0_RX |
#define PINCC26XX_MUX_MCU_UART0_TX IOC_PORT_MCU_UART0_TX |
#define PINCC26XX_MUX_MCU_UART0_CTS IOC_PORT_MCU_UART0_CTS |
#define PINCC26XX_MUX_MCU_UART0_RTS IOC_PORT_MCU_UART0_RTS |
#define PINCC26XX_MUX_MCU_PORT_EV_0 IOC_PORT_MCU_PORT_EVENT0 |
#define PINCC26XX_MUX_MCU_PORT_EV_1 IOC_PORT_MCU_PORT_EVENT1 |
#define PINCC26XX_MUX_MCU_PORT_EV_2 IOC_PORT_MCU_PORT_EVENT2 |
#define PINCC26XX_MUX_MCU_PORT_EV_3 IOC_PORT_MCU_PORT_EVENT3 |
#define PINCC26XX_MUX_MCU_PORT_EV_4 IOC_PORT_MCU_PORT_EVENT4 |
#define PINCC26XX_MUX_MCU_PORT_EV_5 IOC_PORT_MCU_PORT_EVENT5 |
#define PINCC26XX_MUX_MCU_PORT_EV_6 IOC_PORT_MCU_PORT_EVENT6 |
#define PINCC26XX_MUX_MCU_PORT_EV_7 IOC_PORT_MCU_PORT_EVENT7 |
#define PINCC26XX_MUX_SWV IOC_PORT_MCU_SWV |
#define PINCC26XX_MUX_MCU_SSI1_RX IOC_PORT_MCU_SSI1_RX |
#define PINCC26XX_MUX_MCU_SSI1_TX IOC_PORT_MCU_SSI1_TX |
#define PINCC26XX_MUX_MCU_SSI1_FSS IOC_PORT_MCU_SSI1_FSS |
#define PINCC26XX_MUX_MCU_SSI1_CLK IOC_PORT_MCU_SSI1_CLK |
#define PINCC26XX_MUX_MCU_I2S_AD0 IOC_PORT_MCU_I2S_AD0 |
#define PINCC26XX_MUX_MCU_I2S_AD1 IOC_PORT_MCU_I2S_AD1 |
#define PINCC26XX_MUX_MCU_I2S_WCLK IOC_PORT_MCU_I2S_WCLK |
#define PINCC26XX_MUX_MCU_I2S_BCLK IOC_PORT_MCU_I2S_BCLK |
#define PINCC26XX_MUX_MCU_I2S_MCLK IOC_PORT_MCU_I2S_MCLK |
#define PINCC26XX_MUX_RFC_TRC IOC_PORT_RFC_TRC |
#define PINCC26XX_MUX_RFC_GPO0 IOC_PORT_RFC_GPO0 |
#define PINCC26XX_MUX_RFC_GPO1 IOC_PORT_RFC_GPO1 |
#define PINCC26XX_MUX_RFC_GPO2 IOC_PORT_RFC_GPO2 |
#define PINCC26XX_MUX_RFC_GPO3 IOC_PORT_RFC_GPO3 |
#define PINCC26XX_MUX_RFC_GPI0 IOC_PORT_RFC_GPI0 |
#define PINCC26XX_MUX_RFC_GPI1 IOC_PORT_RFC_GPI1 |
#define PINCC26XX_MUX_RFC_SMI_DL_OUT IOC_PORT_RFC_SMI_DL_OUT |
#define PINCC26XX_MUX_RFC_SMI_DL_IN IOC_PORT_RFC_SMI_DL_IN |
#define PINCC26XX_MUX_RFC_SMI_CL_OUT IOC_PORT_RFC_SMI_CL_OUT |
#define PINCC26XX_MUX_RFC_SMI_CL_IN IOC_PORT_RFC_SMI_CL_IN |
__STATIC_INLINE uint32_t PIN_ctz | ( | uint32_t | x | ) |
__STATIC_INLINE uint32_t PINCC26XX_getInputValue | ( | PIN_Id | pinId | ) |
Fast/efficient version of PIN_getInputValue()
__STATIC_INLINE void PINCC26XX_setOutputEnable | ( | PIN_Id | pinId, |
bool | outputEnable | ||
) |
__STATIC_INLINE void PINCC26XX_setOutputValue | ( | PIN_Id | pinId, |
uint32_t | val | ||
) |
__STATIC_INLINE uint32_t PINCC26XX_getOutputValue | ( | PIN_Id | pinId | ) |
Fast/efficient version of PIN_getOutputValue()
__STATIC_INLINE void PINCC26XX_clrPendInterrupt | ( | PIN_Id | pinId | ) |
__STATIC_INLINE uint32_t PINCC26XX_getPortInputValue | ( | PIN_Handle | handle | ) |
Fast/efficient version of PIN_getPortInputValue()
__STATIC_INLINE uint32_t PINCC26XX_getPortOutputValue | ( | PIN_Handle | handle | ) |
Fast/efficient version of PIN_getPortOutputValue()
__STATIC_INLINE void PINCC26XX_setPortOutputValue | ( | PIN_Handle | handle, |
uint32_t | outputValueMask | ||
) |
References PIN_State_s::portMask.
__STATIC_INLINE void PINCC26XX_setPortOutputEnable | ( | PIN_Handle | handle, |
uint32_t | outputEnableMask | ||
) |
PIN_Config PINCC26XX_getConfig | ( | PIN_Id | pinId | ) |
Returns CC26xx device-specific pin configuration.
pinId | Pin ID |
Referenced by PINCC26XX_setPortOutputEnable().
PIN_Status PINCC26XX_setWakeup | ( | const PIN_Config | aPinCfg[] | ) |
Configure wakeup (from shutdown) on pins.
aPinCfg | PIN_Config list identifying pin ID and relevant pin configuration as one of: |
Referenced by PINCC26XX_setPortOutputEnable().
int32_t PINCC26XX_getMux | ( | PIN_Id | pinId | ) |
Get device-specific pin mapping to GPIO, HW peripheral or HW signal.
pinId | Pin ID |
Referenced by PINCC26XX_setPortOutputEnable().
uint32_t PINCC26XX_getPinCount | ( | ) |
Get device-specific count of how many pins are available on this device and package.
Referenced by PINCC26XX_setPortOutputEnable().
PIN_Status PINCC26XX_setMux | ( | PIN_Handle | handle, |
PIN_Id | pinId, | ||
int32_t | nMux | ||
) |
Connect pin to HW peripheral, signal or to GPIO.
handle | Handle provided by previous call to PIN_open() |
pinId | Pin ID |
nMux | Device-specific index of peripheral port or hardware signal. A value of -1 reverts the pin to GPIO mapping |
Referenced by PINCC26XX_setPortOutputEnable().