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

Go to the source code of this file.

Macros

#define B91_FUNC_A   0x00
 
#define B91_FUNC_B   0x01
 
#define B91_FUNC_C   0x02
 
#define B91_PORT_A   0x00
 
#define B91_PORT_B   0x01
 
#define B91_PORT_C   0x02
 
#define B91_PORT_D   0x03
 
#define B91_PORT_E   0x04
 
#define B91_PIN_0   0x01
 
#define B91_PIN_1   0x02
 
#define B91_PIN_2   0x04
 
#define B91_PIN_3   0x08
 
#define B91_PIN_4   0x10
 
#define B91_PIN_5   0x20
 
#define B91_PIN_6   0x40
 
#define B91_PIN_7   0x80
 
#define B91_PULL_NONE   0
 
#define B91_PULL_DOWN   2
 
#define B91_PULL_UP   3
 
#define B91_PIN_0_FUNC_POS   0x00
 
#define B91_PIN_1_FUNC_POS   0x02
 
#define B91_PIN_2_FUNC_POS   0x04
 
#define B91_PIN_3_FUNC_POS   0x06
 
#define B91_PIN_4_FUNC_POS   0x00
 
#define B91_PIN_5_FUNC_POS   0x02
 
#define B91_PIN_6_FUNC_POS   0x04
 
#define B91_PIN_7_FUNC_POS   0x06
 
#define B91_PULL_POS   19
 
#define B91_PULL_MSK   0x3
 
#define B91_FUNC_POS   16
 
#define B91_FUNC_MSK   0x3
 
#define B91_PORT_POS   8
 
#define B91_PORT_MSK   0xFF
 
#define B91_PIN_POS   0
 
#define B91_PIN_MSK   0xFFFF
 
#define B91_PIN_ID_MSK   0xFF
 
#define B91_PINMUX_SET(port, pin, func)
 
#define B91_PINMUX_GET_PULL(pinmux)   ((pinmux >> B91_PULL_POS) & B91_PULL_MSK)
 
#define B91_PINMUX_GET_FUNC(pinmux)   ((pinmux >> B91_FUNC_POS) & B91_FUNC_MSK)
 
#define B91_PINMUX_GET_PIN(pinmux)   ((pinmux >> B91_PIN_POS) & B91_PIN_MSK)
 
#define B91_PINMUX_GET_PIN_ID(pinmux)   ((pinmux >> B91_PIN_POS) & B91_PIN_ID_MSK)
 

Macro Definition Documentation

◆ B91_FUNC_A

#define B91_FUNC_A   0x00

◆ B91_FUNC_B

#define B91_FUNC_B   0x01

◆ B91_FUNC_C

#define B91_FUNC_C   0x02

◆ B91_FUNC_MSK

#define B91_FUNC_MSK   0x3

◆ B91_FUNC_POS

#define B91_FUNC_POS   16

◆ B91_PIN_0

#define B91_PIN_0   0x01

◆ B91_PIN_0_FUNC_POS

#define B91_PIN_0_FUNC_POS   0x00

◆ B91_PIN_1

#define B91_PIN_1   0x02

◆ B91_PIN_1_FUNC_POS

#define B91_PIN_1_FUNC_POS   0x02

◆ B91_PIN_2

#define B91_PIN_2   0x04

◆ B91_PIN_2_FUNC_POS

#define B91_PIN_2_FUNC_POS   0x04

◆ B91_PIN_3

#define B91_PIN_3   0x08

◆ B91_PIN_3_FUNC_POS

#define B91_PIN_3_FUNC_POS   0x06

◆ B91_PIN_4

#define B91_PIN_4   0x10

◆ B91_PIN_4_FUNC_POS

#define B91_PIN_4_FUNC_POS   0x00

◆ B91_PIN_5

#define B91_PIN_5   0x20

◆ B91_PIN_5_FUNC_POS

#define B91_PIN_5_FUNC_POS   0x02

◆ B91_PIN_6

#define B91_PIN_6   0x40

◆ B91_PIN_6_FUNC_POS

#define B91_PIN_6_FUNC_POS   0x04

◆ B91_PIN_7

#define B91_PIN_7   0x80

◆ B91_PIN_7_FUNC_POS

#define B91_PIN_7_FUNC_POS   0x06

◆ B91_PIN_ID_MSK

#define B91_PIN_ID_MSK   0xFF

◆ B91_PIN_MSK

#define B91_PIN_MSK   0xFFFF

◆ B91_PIN_POS

#define B91_PIN_POS   0

◆ B91_PINMUX_GET_FUNC

#define B91_PINMUX_GET_FUNC (   pinmux)    ((pinmux >> B91_FUNC_POS) & B91_FUNC_MSK)

◆ B91_PINMUX_GET_PIN

#define B91_PINMUX_GET_PIN (   pinmux)    ((pinmux >> B91_PIN_POS) & B91_PIN_MSK)

◆ B91_PINMUX_GET_PIN_ID

#define B91_PINMUX_GET_PIN_ID (   pinmux)    ((pinmux >> B91_PIN_POS) & B91_PIN_ID_MSK)

◆ B91_PINMUX_GET_PULL

#define B91_PINMUX_GET_PULL (   pinmux)    ((pinmux >> B91_PULL_POS) & B91_PULL_MSK)

◆ B91_PINMUX_SET

#define B91_PINMUX_SET (   port,
  pin,
  func 
)
Value:
((func << B91_FUNC_POS) | \
(port << B91_PORT_POS) | \
(pin << B91_PIN_POS))
#define B91_PORT_POS
Definition b91-pinctrl.h:58
#define B91_FUNC_POS
Definition b91-pinctrl.h:56
#define B91_PIN_POS
Definition b91-pinctrl.h:60

◆ B91_PORT_A

#define B91_PORT_A   0x00

◆ B91_PORT_B

#define B91_PORT_B   0x01

◆ B91_PORT_C

#define B91_PORT_C   0x02

◆ B91_PORT_D

#define B91_PORT_D   0x03

◆ B91_PORT_E

#define B91_PORT_E   0x04

◆ B91_PORT_MSK

#define B91_PORT_MSK   0xFF

◆ B91_PORT_POS

#define B91_PORT_POS   8

◆ B91_PULL_DOWN

#define B91_PULL_DOWN   2

◆ B91_PULL_MSK

#define B91_PULL_MSK   0x3

◆ B91_PULL_NONE

#define B91_PULL_NONE   0

◆ B91_PULL_POS

#define B91_PULL_POS   19

◆ B91_PULL_UP

#define B91_PULL_UP   3