|
69 | 69 | *
|
70 | 70 | * Pin configuration is coded with the following
|
71 | 71 | * fields
|
72 |
| - * Alternate Functions [ 0 : 3 ] |
73 |
| - * GPIO Mode [ 4 : 5 ] |
74 |
| - * GPIO Output type [ 6 ] |
75 |
| - * GPIO Speed [ 7 : 8 ] |
76 |
| - * GPIO PUPD config [ 9 : 10 ] |
77 |
| - * GPIO Output data [ 11 ] |
| 72 | + * [03:00] Alternate Functions |
| 73 | + * [05:04] GPIO Mode |
| 74 | + * [ 06] GPIO Output type |
| 75 | + * [08:07] GPIO Speed |
| 76 | + * [10:09] GPIO PUPD config |
| 77 | + * [ 11] GPIO Output data |
78 | 78 | *
|
| 79 | + * These fields are only used when pinctrl with compatible |
| 80 | + * "st,stm32n6-pinctrl" is in use: |
| 81 | + * [15:12] I/O delay length |
| 82 | + * [ 16] I/O delay direction |
| 83 | + * [18:17] I/O retime edge |
| 84 | + * [ 19] I/O retime enable |
| 85 | + * |
| 86 | + * NOTE: the values for these fields are not defined in this file |
| 87 | + * because they depend on hardware definitions. The values can be |
| 88 | + * found in `soc/st/stm32/common/pinctrl_soc.h` instead. |
79 | 89 | */
|
80 | 90 |
|
81 | 91 | /* GPIO Mode */
|
|
113 | 123 | #define STM32_ODR_MASK 0x1
|
114 | 124 | #define STM32_ODR_SHIFT 11
|
115 | 125 |
|
| 126 | +/* I/O delay length (DELAYR) */ |
| 127 | +#define STM32_IODELAY_LENGTH_MASK 0xFU |
| 128 | +#define STM32_IODELAY_LENGTH_SHIFT 12 |
| 129 | + |
| 130 | +/* I/O delay & retime configuration (ADVCFGR) */ |
| 131 | +#define STM32_IORETIME_ADVCFGR_MASK 0xFU |
| 132 | +#define STM32_IORETIME_ADVCFGR_SHIFT 16 |
| 133 | + |
| 134 | +#define STM32_IODELAY_DIRECTION_SHIFT STM32_IORETIME_ADVCFGR_SHIFT |
| 135 | +#define STM32_IORETIME_EDGE_SHIFT 17 |
| 136 | +#define STM32_IORETIME_ENABLE_SHIFT 19 |
| 137 | + |
116 | 138 | #endif /* ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_STM32_PINCTRL_H_ */
|
0 commit comments