Zephyr Project API 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
xmc4xxx-pinctrl.h File Reference

Go to the source code of this file.

Macros

#define XMC4XXX_PORT_POS   0
 
#define XMC4XXX_PORT_MASK   0xf
 
#define XMC4XXX_PIN_POS   4
 
#define XMC4XXX_PIN_MASK   0xf
 
#define XMC4XXX_ALT_POS   8
 
#define XMC4XXX_ALT_MASK   0xf
 
#define XMC4XXX_PULL_DOWN_POS   12
 
#define XMC4XXX_PULL_DOWN_MASK   0x1
 
#define XMC4XXX_PULL_UP_POS   13
 
#define XMC4XXX_PULL_UP_MASK   0x1
 
#define XMC4XXX_PUSH_PULL_POS   14
 
#define XMC4XXX_PUSH_PULL_MASK   0x1
 
#define XMC4XXX_OPEN_DRAIN_POS   15
 
#define XMC4XXX_OPEN_DRAIN_MASK   0x1
 
#define XMC4XXX_OUT_HIGH_POS   16
 
#define XMC4XXX_OUT_HIGH_MASK   0x1
 
#define XMC4XXX_OUT_LOW_POS   17
 
#define XMC4XXX_OUT_LOW_MASK   0x1
 
#define XMC4XXX_INV_INPUT_POS   18
 
#define XMC4XXX_INV_INPUT_MASK   0x1
 
#define XMC4XXX_DRIVE_POS   19
 
#define XMC4XXX_DRIVE_MASK   0x7
 
#define XMC4XXX_HWCTRL_POS   22
 
#define XMC4XXX_HWCTRL_MASK   0x3
 
#define XMC4XXX_PINMUX_SET(port, pin, alt_fun)    ((port) << XMC4XXX_PORT_POS | (pin) << XMC4XXX_PIN_POS | (alt_fun) << XMC4XXX_ALT_POS)
 
#define XMC4XXX_PINMUX_GET_PORT(mx)   ((mx >> XMC4XXX_PORT_POS) & XMC4XXX_PORT_MASK)
 
#define XMC4XXX_PINMUX_GET_PIN(mx)   ((mx >> XMC4XXX_PIN_POS) & XMC4XXX_PIN_MASK)
 
#define XMC4XXX_PINMUX_GET_ALT(mx)   ((mx >> XMC4XXX_ALT_POS) & XMC4XXX_ALT_MASK)
 
#define XMC4XXX_PINMUX_GET_PULL_DOWN(mx)   ((mx >> XMC4XXX_PULL_DOWN_POS) & XMC4XXX_PULL_DOWN_MASK)
 
#define XMC4XXX_PINMUX_GET_PULL_UP(mx)   ((mx >> XMC4XXX_PULL_UP_POS) & XMC4XXX_PULL_UP_MASK)
 
#define XMC4XXX_PINMUX_GET_PUSH_PULL(mx)   ((mx >> XMC4XXX_PUSH_PULL_POS) & XMC4XXX_PUSH_PULL_MASK)
 
#define XMC4XXX_PINMUX_GET_OPEN_DRAIN(mx)   ((mx >> XMC4XXX_OPEN_DRAIN_POS) & XMC4XXX_OPEN_DRAIN_MASK)
 
#define XMC4XXX_PINMUX_GET_OUT_HIGH(mx)   ((mx >> XMC4XXX_OUT_HIGH_POS) & XMC4XXX_OUT_HIGH_MASK)
 
#define XMC4XXX_PINMUX_GET_OUT_LOW(mx)   ((mx >> XMC4XXX_OUT_LOW_POS) & XMC4XXX_OUT_LOW_MASK)
 
#define XMC4XXX_PINMUX_GET_INV_INPUT(mx)   ((mx >> XMC4XXX_INV_INPUT_POS) & XMC4XXX_INV_INPUT_MASK)
 
#define XMC4XXX_PINMUX_GET_DRIVE(mx)   ((mx >> XMC4XXX_DRIVE_POS) & XMC4XXX_DRIVE_MASK)
 
#define XMC4XXX_PINMUX_GET_HWCTRL(mx)   ((mx >> XMC4XXX_HWCTRL_POS) & XMC4XXX_HWCTRL_MASK)
 

Macro Definition Documentation

◆ XMC4XXX_ALT_MASK

#define XMC4XXX_ALT_MASK   0xf

◆ XMC4XXX_ALT_POS

#define XMC4XXX_ALT_POS   8

◆ XMC4XXX_DRIVE_MASK

#define XMC4XXX_DRIVE_MASK   0x7

◆ XMC4XXX_DRIVE_POS

#define XMC4XXX_DRIVE_POS   19

◆ XMC4XXX_HWCTRL_MASK

#define XMC4XXX_HWCTRL_MASK   0x3

◆ XMC4XXX_HWCTRL_POS

#define XMC4XXX_HWCTRL_POS   22

◆ XMC4XXX_INV_INPUT_MASK

#define XMC4XXX_INV_INPUT_MASK   0x1

◆ XMC4XXX_INV_INPUT_POS

#define XMC4XXX_INV_INPUT_POS   18

◆ XMC4XXX_OPEN_DRAIN_MASK

#define XMC4XXX_OPEN_DRAIN_MASK   0x1

◆ XMC4XXX_OPEN_DRAIN_POS

#define XMC4XXX_OPEN_DRAIN_POS   15

◆ XMC4XXX_OUT_HIGH_MASK

#define XMC4XXX_OUT_HIGH_MASK   0x1

◆ XMC4XXX_OUT_HIGH_POS

#define XMC4XXX_OUT_HIGH_POS   16

◆ XMC4XXX_OUT_LOW_MASK

#define XMC4XXX_OUT_LOW_MASK   0x1

◆ XMC4XXX_OUT_LOW_POS

#define XMC4XXX_OUT_LOW_POS   17

◆ XMC4XXX_PIN_MASK

#define XMC4XXX_PIN_MASK   0xf

◆ XMC4XXX_PIN_POS

#define XMC4XXX_PIN_POS   4

◆ XMC4XXX_PINMUX_GET_ALT

#define XMC4XXX_PINMUX_GET_ALT (   mx)    ((mx >> XMC4XXX_ALT_POS) & XMC4XXX_ALT_MASK)

◆ XMC4XXX_PINMUX_GET_DRIVE

#define XMC4XXX_PINMUX_GET_DRIVE (   mx)    ((mx >> XMC4XXX_DRIVE_POS) & XMC4XXX_DRIVE_MASK)

◆ XMC4XXX_PINMUX_GET_HWCTRL

#define XMC4XXX_PINMUX_GET_HWCTRL (   mx)    ((mx >> XMC4XXX_HWCTRL_POS) & XMC4XXX_HWCTRL_MASK)

◆ XMC4XXX_PINMUX_GET_INV_INPUT

#define XMC4XXX_PINMUX_GET_INV_INPUT (   mx)    ((mx >> XMC4XXX_INV_INPUT_POS) & XMC4XXX_INV_INPUT_MASK)

◆ XMC4XXX_PINMUX_GET_OPEN_DRAIN

#define XMC4XXX_PINMUX_GET_OPEN_DRAIN (   mx)    ((mx >> XMC4XXX_OPEN_DRAIN_POS) & XMC4XXX_OPEN_DRAIN_MASK)

◆ XMC4XXX_PINMUX_GET_OUT_HIGH

#define XMC4XXX_PINMUX_GET_OUT_HIGH (   mx)    ((mx >> XMC4XXX_OUT_HIGH_POS) & XMC4XXX_OUT_HIGH_MASK)

◆ XMC4XXX_PINMUX_GET_OUT_LOW

#define XMC4XXX_PINMUX_GET_OUT_LOW (   mx)    ((mx >> XMC4XXX_OUT_LOW_POS) & XMC4XXX_OUT_LOW_MASK)

◆ XMC4XXX_PINMUX_GET_PIN

#define XMC4XXX_PINMUX_GET_PIN (   mx)    ((mx >> XMC4XXX_PIN_POS) & XMC4XXX_PIN_MASK)

◆ XMC4XXX_PINMUX_GET_PORT

#define XMC4XXX_PINMUX_GET_PORT (   mx)    ((mx >> XMC4XXX_PORT_POS) & XMC4XXX_PORT_MASK)

◆ XMC4XXX_PINMUX_GET_PULL_DOWN

#define XMC4XXX_PINMUX_GET_PULL_DOWN (   mx)    ((mx >> XMC4XXX_PULL_DOWN_POS) & XMC4XXX_PULL_DOWN_MASK)

◆ XMC4XXX_PINMUX_GET_PULL_UP

#define XMC4XXX_PINMUX_GET_PULL_UP (   mx)    ((mx >> XMC4XXX_PULL_UP_POS) & XMC4XXX_PULL_UP_MASK)

◆ XMC4XXX_PINMUX_GET_PUSH_PULL

#define XMC4XXX_PINMUX_GET_PUSH_PULL (   mx)    ((mx >> XMC4XXX_PUSH_PULL_POS) & XMC4XXX_PUSH_PULL_MASK)

◆ XMC4XXX_PINMUX_SET

#define XMC4XXX_PINMUX_SET (   port,
  pin,
  alt_fun 
)     ((port) << XMC4XXX_PORT_POS | (pin) << XMC4XXX_PIN_POS | (alt_fun) << XMC4XXX_ALT_POS)

◆ XMC4XXX_PORT_MASK

#define XMC4XXX_PORT_MASK   0xf

◆ XMC4XXX_PORT_POS

#define XMC4XXX_PORT_POS   0

◆ XMC4XXX_PULL_DOWN_MASK

#define XMC4XXX_PULL_DOWN_MASK   0x1

◆ XMC4XXX_PULL_DOWN_POS

#define XMC4XXX_PULL_DOWN_POS   12

◆ XMC4XXX_PULL_UP_MASK

#define XMC4XXX_PULL_UP_MASK   0x1

◆ XMC4XXX_PULL_UP_POS

#define XMC4XXX_PULL_UP_POS   13

◆ XMC4XXX_PUSH_PULL_MASK

#define XMC4XXX_PUSH_PULL_MASK   0x1

◆ XMC4XXX_PUSH_PULL_POS

#define XMC4XXX_PUSH_PULL_POS   14