32#define BOARD_NAME "H7 rusEFI"
35#define EFI_USB_SERIAL_DM Gpio::A11
36#define EFI_USB_SERIAL_DP Gpio::A12
41#define EFI_PIN_MODE_DEFAULT PIN_MODE_INPUT
43#define EFI_DR_DEFAULT PIN_PUPDR_PULLDOWN
47#define DEFAULT_GPIO_SPEED PIN_OSPEED_HIGH
53#define BOARD_PHY_ID MII_LAN8742A_ID
59#if !defined(STM32_LSECLK)
60#define STM32_LSECLK 32768U
63#define STM32_LSEDRV (3U << 3U)
65#if !defined(STM32_HSECLK)
66#define STM32_HSECLK 8000000U
83#define VAL_GPIO_MODER_ALL_DEFAULT (EFI_PIN_MODE_DEFAULT(0) | \
84 EFI_PIN_MODE_DEFAULT(1) | \
85 EFI_PIN_MODE_DEFAULT(2) | \
86 EFI_PIN_MODE_DEFAULT(3) | \
87 EFI_PIN_MODE_DEFAULT(4) | \
88 EFI_PIN_MODE_DEFAULT(5) | \
89 EFI_PIN_MODE_DEFAULT(6) | \
90 EFI_PIN_MODE_DEFAULT(7) | \
91 EFI_PIN_MODE_DEFAULT(8) | \
92 EFI_PIN_MODE_DEFAULT(9) | \
93 EFI_PIN_MODE_DEFAULT(10) | \
94 EFI_PIN_MODE_DEFAULT(11) | \
95 EFI_PIN_MODE_DEFAULT(12) | \
96 EFI_PIN_MODE_DEFAULT(13) | \
97 EFI_PIN_MODE_DEFAULT(14) | \
98 EFI_PIN_MODE_DEFAULT(15))
100#define VAL_GPIO_OTYPER_ALL_DEFAULT (PIN_OTYPE_PUSHPULL(0) | \
101 PIN_OTYPE_PUSHPULL(1) | \
102 PIN_OTYPE_PUSHPULL(2) | \
103 PIN_OTYPE_PUSHPULL(3) | \
104 PIN_OTYPE_PUSHPULL(4) | \
105 PIN_OTYPE_PUSHPULL(5) | \
106 PIN_OTYPE_PUSHPULL(6) | \
107 PIN_OTYPE_PUSHPULL(7) | \
108 PIN_OTYPE_PUSHPULL(8) | \
109 PIN_OTYPE_PUSHPULL(9) | \
110 PIN_OTYPE_PUSHPULL(10) | \
111 PIN_OTYPE_PUSHPULL(11) | \
112 PIN_OTYPE_PUSHPULL(12) | \
113 PIN_OTYPE_PUSHPULL(13) | \
114 PIN_OTYPE_PUSHPULL(14) | \
115 PIN_OTYPE_PUSHPULL(15))
117#define VAL_GPIO_OSPEEDR_ALL_DEFAULT (DEFAULT_GPIO_SPEED(0) | \
118 DEFAULT_GPIO_SPEED(1) | \
119 DEFAULT_GPIO_SPEED(2) | \
120 DEFAULT_GPIO_SPEED(3) | \
121 DEFAULT_GPIO_SPEED(4) | \
122 DEFAULT_GPIO_SPEED(5) | \
123 DEFAULT_GPIO_SPEED(6) | \
124 DEFAULT_GPIO_SPEED(7) | \
125 DEFAULT_GPIO_SPEED(8) | \
126 DEFAULT_GPIO_SPEED(9) | \
127 DEFAULT_GPIO_SPEED(10) | \
128 DEFAULT_GPIO_SPEED(11) | \
129 DEFAULT_GPIO_SPEED(12) | \
130 DEFAULT_GPIO_SPEED(13) | \
131 DEFAULT_GPIO_SPEED(14) | \
132 DEFAULT_GPIO_SPEED(15))
134#define VAL_GPIO_ODR_ALL_DEFAULT 0
136#define VAL_GPIO_PUPDR_ALL_DEFAULT (EFI_DR_DEFAULT(0) | \
137 EFI_DR_DEFAULT(1) | \
138 EFI_DR_DEFAULT(2) | \
139 EFI_DR_DEFAULT(3) | \
140 EFI_DR_DEFAULT(4) | \
141 EFI_DR_DEFAULT(5) | \
142 EFI_DR_DEFAULT(6) | \
143 EFI_DR_DEFAULT(7) | \
144 EFI_DR_DEFAULT(8) | \
145 EFI_DR_DEFAULT(9) | \
146 EFI_DR_DEFAULT(10) | \
147 EFI_DR_DEFAULT(11) | \
148 EFI_DR_DEFAULT(12) | \
149 EFI_DR_DEFAULT(13) | \
150 EFI_DR_DEFAULT(14) | \
153#define VAL_GPIO_AF_ALL_DEFAULT (PIN_AFIO_AF(0, 0U) | \
154 PIN_AFIO_AF(1, 0U) | \
155 PIN_AFIO_AF(2, 0U) | \
156 PIN_AFIO_AF(3, 0U) | \
157 PIN_AFIO_AF(4, 0U) | \
158 PIN_AFIO_AF(5, 0U) | \
159 PIN_AFIO_AF(6, 0U) | \
167#define PIN_MODE_INPUT(n) (0U << ((n) * 2U))
168#define PIN_MODE_OUTPUT(n) (1U << ((n) * 2U))
169#define PIN_MODE_ALTERNATE(n) (2U << ((n) * 2U))
170#define PIN_MODE_ANALOG(n) (3U << ((n) * 2U))
171#define PIN_ODR_LOW(n) (0U << (n))
172#define PIN_ODR_HIGH(n) (1U << (n))
173#define PIN_OTYPE_PUSHPULL(n) (0U << (n))
174#define PIN_OTYPE_OPENDRAIN(n) (1U << (n))
175#define PIN_OSPEED_VERYLOW(n) (0U << ((n) * 2U))
176#define PIN_OSPEED_LOW(n) (1U << ((n) * 2U))
177#define PIN_OSPEED_MEDIUM(n) (2U << ((n) * 2U))
178#define PIN_OSPEED_HIGH(n) (3U << ((n) * 2U))
179#define PIN_PUPDR_FLOATING(n) (0U << ((n) * 2U))
180#define PIN_PUPDR_PULLUP(n) (1U << ((n) * 2U))
181#define PIN_PUPDR_PULLDOWN(n) (2U << ((n) * 2U))
182#define PIN_AFIO_AF(n, v) ((v) << (((n) % 8U) * 4U))
192#define VAL_GPIOA_MODER (EFI_PIN_MODE_DEFAULT(0) | \
193 EFI_PIN_MODE_DEFAULT(1) | \
194 EFI_PIN_MODE_DEFAULT(2) | \
195 EFI_PIN_MODE_DEFAULT(3) | \
196 EFI_PIN_MODE_DEFAULT(4) | \
197 EFI_PIN_MODE_DEFAULT(5) | \
198 EFI_PIN_MODE_DEFAULT(6) | \
199 EFI_PIN_MODE_DEFAULT(7) | \
200 EFI_PIN_MODE_DEFAULT(8) | \
201 EFI_PIN_MODE_DEFAULT(9) | \
202 EFI_PIN_MODE_DEFAULT(10) | \
203 PIN_MODE_ALTERNATE(11) | \
204 PIN_MODE_ALTERNATE(12) | \
205 PIN_MODE_ALTERNATE(GPIOA_SWDIO) | \
206 PIN_MODE_ALTERNATE(GPIOA_SWCLK) | \
207 EFI_PIN_MODE_DEFAULT(15))
208#define VAL_GPIOA_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
209#define VAL_GPIOA_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
210#define VAL_GPIOA_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
211#define VAL_GPIOA_ODR VAL_GPIO_ODR_ALL_DEFAULT
212#define VAL_GPIOA_AFRL VAL_GPIO_AF_ALL_DEFAULT
213#define VAL_GPIOA_AFRH (PIN_AFIO_AF(8, 0U) | \
214 PIN_AFIO_AF(9, 0U) | \
215 PIN_AFIO_AF(10, 0U) | \
216 PIN_AFIO_AF(11, 10U) | \
217 PIN_AFIO_AF(12, 10U) | \
218 PIN_AFIO_AF(GPIOA_SWDIO, 0U) | \
219 PIN_AFIO_AF(GPIOA_SWCLK, 0U) | \
228#define VAL_GPIOB_MODER (EFI_PIN_MODE_DEFAULT(0) | \
229 EFI_PIN_MODE_DEFAULT(1) | \
230 EFI_PIN_MODE_DEFAULT(2) | \
231 PIN_MODE_ALTERNATE(GPIOB_SWO) | \
232 EFI_PIN_MODE_DEFAULT(4) | \
233 EFI_PIN_MODE_DEFAULT(5) | \
234 EFI_PIN_MODE_DEFAULT(6) | \
235 EFI_PIN_MODE_DEFAULT(7) | \
236 EFI_PIN_MODE_DEFAULT(8) | \
237 EFI_PIN_MODE_DEFAULT(9) | \
238 EFI_PIN_MODE_DEFAULT(10) | \
239 EFI_PIN_MODE_DEFAULT(11) | \
240 EFI_PIN_MODE_DEFAULT(12) | \
241 EFI_PIN_MODE_DEFAULT(13) | \
242 EFI_PIN_MODE_DEFAULT(14) | \
243 EFI_PIN_MODE_DEFAULT(15))
244#define VAL_GPIOB_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
245#define VAL_GPIOB_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
246#define VAL_GPIOB_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
247#define VAL_GPIOB_ODR VAL_GPIO_ODR_ALL_DEFAULT
248#define VAL_GPIOB_AFRL (PIN_AFIO_AF(0, 0U) | \
249 PIN_AFIO_AF(1, 0U) | \
250 PIN_AFIO_AF(2, 0U) | \
251 PIN_AFIO_AF(GPIOB_SWO, 0U) | \
252 PIN_AFIO_AF(4, 0U) | \
253 PIN_AFIO_AF(5, 0U) | \
254 PIN_AFIO_AF(6, 0U) | \
256#define VAL_GPIOB_AFRH VAL_GPIO_AF_ALL_DEFAULT
261#define VAL_GPIOC_MODER VAL_GPIO_MODER_ALL_DEFAULT
262#define VAL_GPIOC_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
263#define VAL_GPIOC_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
264#define VAL_GPIOC_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
265#define VAL_GPIOC_ODR VAL_GPIO_ODR_ALL_DEFAULT
266#define VAL_GPIOC_AFRL VAL_GPIO_AF_ALL_DEFAULT
267#define VAL_GPIOC_AFRH VAL_GPIO_AF_ALL_DEFAULT
272#define VAL_GPIOD_MODER VAL_GPIO_MODER_ALL_DEFAULT
273#define VAL_GPIOD_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
274#define VAL_GPIOD_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
275#define VAL_GPIOD_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
276#define VAL_GPIOD_ODR VAL_GPIO_ODR_ALL_DEFAULT
277#define VAL_GPIOD_AFRL VAL_GPIO_AF_ALL_DEFAULT
278#define VAL_GPIOD_AFRH VAL_GPIO_AF_ALL_DEFAULT
283#define VAL_GPIOE_MODER VAL_GPIO_MODER_ALL_DEFAULT
284#define VAL_GPIOE_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
285#define VAL_GPIOE_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
286#define VAL_GPIOE_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
287#define VAL_GPIOE_ODR VAL_GPIO_ODR_ALL_DEFAULT
288#define VAL_GPIOE_AFRL VAL_GPIO_AF_ALL_DEFAULT
289#define VAL_GPIOE_AFRH VAL_GPIO_AF_ALL_DEFAULT
294#define VAL_GPIOF_MODER VAL_GPIO_MODER_ALL_DEFAULT
295#define VAL_GPIOF_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
296#define VAL_GPIOF_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
297#define VAL_GPIOF_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
298#define VAL_GPIOF_ODR VAL_GPIO_ODR_ALL_DEFAULT
299#define VAL_GPIOF_AFRL VAL_GPIO_AF_ALL_DEFAULT
300#define VAL_GPIOF_AFRH VAL_GPIO_AF_ALL_DEFAULT
305#define VAL_GPIOG_MODER VAL_GPIO_MODER_ALL_DEFAULT
306#define VAL_GPIOG_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
307#define VAL_GPIOG_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
308#define VAL_GPIOG_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
309#define VAL_GPIOG_ODR VAL_GPIO_ODR_ALL_DEFAULT
310#define VAL_GPIOG_AFRL VAL_GPIO_AF_ALL_DEFAULT
311#define VAL_GPIOG_AFRH VAL_GPIO_AF_ALL_DEFAULT
316#define VAL_GPIOH_MODER VAL_GPIO_MODER_ALL_DEFAULT
317#define VAL_GPIOH_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
318#define VAL_GPIOH_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
319#define VAL_GPIOH_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
320#define VAL_GPIOH_ODR VAL_GPIO_ODR_ALL_DEFAULT
321#define VAL_GPIOH_AFRL VAL_GPIO_AF_ALL_DEFAULT
322#define VAL_GPIOH_AFRH VAL_GPIO_AF_ALL_DEFAULT
327#define VAL_GPIOI_MODER VAL_GPIO_MODER_ALL_DEFAULT
328#define VAL_GPIOI_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
329#define VAL_GPIOI_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
330#define VAL_GPIOI_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
331#define VAL_GPIOI_ODR VAL_GPIO_ODR_ALL_DEFAULT
332#define VAL_GPIOI_AFRL VAL_GPIO_AF_ALL_DEFAULT
333#define VAL_GPIOI_AFRH VAL_GPIO_AF_ALL_DEFAULT
338#define VAL_GPIOJ_MODER VAL_GPIO_MODER_ALL_DEFAULT
339#define VAL_GPIOJ_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
340#define VAL_GPIOJ_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
341#define VAL_GPIOJ_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
342#define VAL_GPIOJ_ODR VAL_GPIO_ODR_ALL_DEFAULT
343#define VAL_GPIOJ_AFRL VAL_GPIO_AF_ALL_DEFAULT
344#define VAL_GPIOJ_AFRH VAL_GPIO_AF_ALL_DEFAULT
349#define VAL_GPIOK_MODER VAL_GPIO_MODER_ALL_DEFAULT
350#define VAL_GPIOK_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
351#define VAL_GPIOK_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
352#define VAL_GPIOK_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
353#define VAL_GPIOK_ODR VAL_GPIO_ODR_ALL_DEFAULT
354#define VAL_GPIOK_AFRL VAL_GPIO_AF_ALL_DEFAULT
355#define VAL_GPIOK_AFRH VAL_GPIO_AF_ALL_DEFAULT
361#if !defined(_FROM_ASM_)
void boardInit(void)
Board-specific initialization code.