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
90#define VAL_GPIO_MODER_ALL_DEFAULT (EFI_PIN_MODE_DEFAULT(0) | \
91 EFI_PIN_MODE_DEFAULT(1) | \
92 EFI_PIN_MODE_DEFAULT(2) | \
93 EFI_PIN_MODE_DEFAULT(3) | \
94 EFI_PIN_MODE_DEFAULT(4) | \
95 EFI_PIN_MODE_DEFAULT(5) | \
96 EFI_PIN_MODE_DEFAULT(6) | \
97 EFI_PIN_MODE_DEFAULT(7) | \
98 EFI_PIN_MODE_DEFAULT(8) | \
99 EFI_PIN_MODE_DEFAULT(9) | \
100 EFI_PIN_MODE_DEFAULT(10) | \
101 EFI_PIN_MODE_DEFAULT(11) | \
102 EFI_PIN_MODE_DEFAULT(12) | \
103 EFI_PIN_MODE_DEFAULT(13) | \
104 EFI_PIN_MODE_DEFAULT(14) | \
105 EFI_PIN_MODE_DEFAULT(15))
107#define VAL_GPIO_OTYPER_ALL_DEFAULT (PIN_OTYPE_PUSHPULL(0) | \
108 PIN_OTYPE_PUSHPULL(1) | \
109 PIN_OTYPE_PUSHPULL(2) | \
110 PIN_OTYPE_PUSHPULL(3) | \
111 PIN_OTYPE_PUSHPULL(4) | \
112 PIN_OTYPE_PUSHPULL(5) | \
113 PIN_OTYPE_PUSHPULL(6) | \
114 PIN_OTYPE_PUSHPULL(7) | \
115 PIN_OTYPE_PUSHPULL(8) | \
116 PIN_OTYPE_PUSHPULL(9) | \
117 PIN_OTYPE_PUSHPULL(10) | \
118 PIN_OTYPE_PUSHPULL(11) | \
119 PIN_OTYPE_PUSHPULL(12) | \
120 PIN_OTYPE_PUSHPULL(13) | \
121 PIN_OTYPE_PUSHPULL(14) | \
122 PIN_OTYPE_PUSHPULL(15))
124#define VAL_GPIO_OSPEEDR_ALL_DEFAULT (DEFAULT_GPIO_SPEED(0) | \
125 DEFAULT_GPIO_SPEED(1) | \
126 DEFAULT_GPIO_SPEED(2) | \
127 DEFAULT_GPIO_SPEED(3) | \
128 DEFAULT_GPIO_SPEED(4) | \
129 DEFAULT_GPIO_SPEED(5) | \
130 DEFAULT_GPIO_SPEED(6) | \
131 DEFAULT_GPIO_SPEED(7) | \
132 DEFAULT_GPIO_SPEED(8) | \
133 DEFAULT_GPIO_SPEED(9) | \
134 DEFAULT_GPIO_SPEED(10) | \
135 DEFAULT_GPIO_SPEED(11) | \
136 DEFAULT_GPIO_SPEED(12) | \
137 DEFAULT_GPIO_SPEED(13) | \
138 DEFAULT_GPIO_SPEED(14) | \
139 DEFAULT_GPIO_SPEED(15))
141#define VAL_GPIO_ODR_ALL_DEFAULT 0
143#define VAL_GPIO_PUPDR_ALL_DEFAULT (EFI_DR_DEFAULT(0) | \
144 EFI_DR_DEFAULT(1) | \
145 EFI_DR_DEFAULT(2) | \
146 EFI_DR_DEFAULT(3) | \
147 EFI_DR_DEFAULT(4) | \
148 EFI_DR_DEFAULT(5) | \
149 EFI_DR_DEFAULT(6) | \
150 EFI_DR_DEFAULT(7) | \
151 EFI_DR_DEFAULT(8) | \
152 EFI_DR_DEFAULT(9) | \
153 EFI_DR_DEFAULT(10) | \
154 EFI_DR_DEFAULT(11) | \
155 EFI_DR_DEFAULT(12) | \
156 EFI_DR_DEFAULT(13) | \
157 EFI_DR_DEFAULT(14) | \
160#define VAL_GPIO_AF_ALL_DEFAULT (PIN_AFIO_AF(0, 0U) | \
161 PIN_AFIO_AF(1, 0U) | \
162 PIN_AFIO_AF(2, 0U) | \
163 PIN_AFIO_AF(3, 0U) | \
164 PIN_AFIO_AF(4, 0U) | \
165 PIN_AFIO_AF(5, 0U) | \
166 PIN_AFIO_AF(6, 0U) | \
174#define PIN_MODE_INPUT(n) (0U << ((n) * 2U))
175#define PIN_MODE_OUTPUT(n) (1U << ((n) * 2U))
176#define PIN_MODE_ALTERNATE(n) (2U << ((n) * 2U))
177#define PIN_MODE_ANALOG(n) (3U << ((n) * 2U))
178#define PIN_ODR_LOW(n) (0U << (n))
179#define PIN_ODR_HIGH(n) (1U << (n))
180#define PIN_OTYPE_PUSHPULL(n) (0U << (n))
181#define PIN_OTYPE_OPENDRAIN(n) (1U << (n))
182#define PIN_OSPEED_VERYLOW(n) (0U << ((n) * 2U))
183#define PIN_OSPEED_LOW(n) (1U << ((n) * 2U))
184#define PIN_OSPEED_MEDIUM(n) (2U << ((n) * 2U))
185#define PIN_OSPEED_HIGH(n) (3U << ((n) * 2U))
186#define PIN_PUPDR_FLOATING(n) (0U << ((n) * 2U))
187#define PIN_PUPDR_PULLUP(n) (1U << ((n) * 2U))
188#define PIN_PUPDR_PULLDOWN(n) (2U << ((n) * 2U))
189#define PIN_AFIO_AF(n, v) ((v) << (((n) % 8U) * 4U))
199#define VAL_GPIOA_MODER (EFI_PIN_MODE_DEFAULT(0) | \
200 EFI_PIN_MODE_DEFAULT(1) | \
201 EFI_PIN_MODE_DEFAULT(2) | \
202 EFI_PIN_MODE_DEFAULT(3) | \
203 EFI_PIN_MODE_DEFAULT(4) | \
204 EFI_PIN_MODE_DEFAULT(5) | \
205 EFI_PIN_MODE_DEFAULT(6) | \
206 EFI_PIN_MODE_DEFAULT(7) | \
207 EFI_PIN_MODE_DEFAULT(8) | \
208 EFI_PIN_MODE_DEFAULT(9) | \
209 EFI_PIN_MODE_DEFAULT(10) | \
210 PIN_MODE_ALTERNATE(11) | \
211 PIN_MODE_ALTERNATE(12) | \
212 PIN_MODE_ALTERNATE(GPIOA_SWDIO) | \
213 PIN_MODE_ALTERNATE(GPIOA_SWCLK) | \
214 EFI_PIN_MODE_DEFAULT(15))
215#define VAL_GPIOA_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
216#define VAL_GPIOA_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
217#define VAL_GPIOA_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
218#define VAL_GPIOA_ODR VAL_GPIO_ODR_ALL_DEFAULT
219#define VAL_GPIOA_AFRL (PIN_AFIO_AF(0, 0U) | \
220 PIN_AFIO_AF(1, 0U) | \
221 PIN_AFIO_AF(2, 0U) | \
222 PIN_AFIO_AF(3, 0U) | \
223 PIN_AFIO_AF(4, 6U) | \
224 PIN_AFIO_AF(5, 5U) | \
225 PIN_AFIO_AF(6, 5U) | \
227#define VAL_GPIOA_AFRH VAL_GPIO_AF_ALL_DEFAULT
235#define VAL_GPIOB_MODER (EFI_PIN_MODE_DEFAULT(0) | \
236 EFI_PIN_MODE_DEFAULT(1) | \
237 EFI_PIN_MODE_DEFAULT(2) | \
238 PIN_MODE_ALTERNATE(GPIOB_SWO) | \
239 EFI_PIN_MODE_DEFAULT(4) | \
240 EFI_PIN_MODE_DEFAULT(5) | \
241 EFI_PIN_MODE_DEFAULT(6) | \
242 EFI_PIN_MODE_DEFAULT(7) | \
243 EFI_PIN_MODE_DEFAULT(8) | \
244 EFI_PIN_MODE_DEFAULT(9) | \
245 EFI_PIN_MODE_DEFAULT(10) | \
246 EFI_PIN_MODE_DEFAULT(11) | \
247 EFI_PIN_MODE_DEFAULT(12) | \
248 EFI_PIN_MODE_DEFAULT(13) | \
249 EFI_PIN_MODE_DEFAULT(14) | \
250 EFI_PIN_MODE_DEFAULT(15))
251#define VAL_GPIOB_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
252#define VAL_GPIOB_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
253#define VAL_GPIOB_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
254#define VAL_GPIOB_ODR VAL_GPIO_ODR_ALL_DEFAULT
255#define VAL_GPIOB_AFRL (PIN_AFIO_AF(0, 0U) | \
256 PIN_AFIO_AF(1, 0U) | \
257 PIN_AFIO_AF(2, 0U) | \
258 PIN_AFIO_AF(GPIOB_SWO, 0U) | \
259 PIN_AFIO_AF(4, 0U) | \
260 PIN_AFIO_AF(5, 0U) | \
261 PIN_AFIO_AF(6, 0U) | \
263#define VAL_GPIOB_AFRH VAL_GPIO_AF_ALL_DEFAULT
268#define VAL_GPIOC_MODER VAL_GPIO_MODER_ALL_DEFAULT
269#define VAL_GPIOC_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
270#define VAL_GPIOC_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
271#define VAL_GPIOC_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
272#define VAL_GPIOC_ODR VAL_GPIO_ODR_ALL_DEFAULT
273#define VAL_GPIOC_AFRL VAL_GPIO_AF_ALL_DEFAULT
274#define VAL_GPIOC_AFRH VAL_GPIO_AF_ALL_DEFAULT
279#define VAL_GPIOD_MODER VAL_GPIO_MODER_ALL_DEFAULT
280#define VAL_GPIOD_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
281#define VAL_GPIOD_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
282#define VAL_GPIOD_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
283#define VAL_GPIOD_ODR VAL_GPIO_ODR_ALL_DEFAULT
284#define VAL_GPIOD_AFRL VAL_GPIO_AF_ALL_DEFAULT
285#define VAL_GPIOD_AFRH VAL_GPIO_AF_ALL_DEFAULT
290#define VAL_GPIOE_MODER VAL_GPIO_MODER_ALL_DEFAULT
291#define VAL_GPIOE_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
292#define VAL_GPIOE_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
293#define VAL_GPIOE_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
294#define VAL_GPIOE_ODR VAL_GPIO_ODR_ALL_DEFAULT
295#define VAL_GPIOE_AFRL VAL_GPIO_AF_ALL_DEFAULT
296#define VAL_GPIOE_AFRH VAL_GPIO_AF_ALL_DEFAULT
301#define VAL_GPIOF_MODER VAL_GPIO_MODER_ALL_DEFAULT
302#define VAL_GPIOF_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
303#define VAL_GPIOF_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
304#define VAL_GPIOF_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
305#define VAL_GPIOF_ODR VAL_GPIO_ODR_ALL_DEFAULT
306#define VAL_GPIOF_AFRL VAL_GPIO_AF_ALL_DEFAULT
307#define VAL_GPIOF_AFRH VAL_GPIO_AF_ALL_DEFAULT
312#define VAL_GPIOG_MODER VAL_GPIO_MODER_ALL_DEFAULT
313#define VAL_GPIOG_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
314#define VAL_GPIOG_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
315#define VAL_GPIOG_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
316#define VAL_GPIOG_ODR VAL_GPIO_ODR_ALL_DEFAULT
317#define VAL_GPIOG_AFRL VAL_GPIO_AF_ALL_DEFAULT
318#define VAL_GPIOG_AFRH VAL_GPIO_AF_ALL_DEFAULT
323#define VAL_GPIOH_MODER VAL_GPIO_MODER_ALL_DEFAULT
324#define VAL_GPIOH_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
325#define VAL_GPIOH_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
326#define VAL_GPIOH_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
327#define VAL_GPIOH_ODR VAL_GPIO_ODR_ALL_DEFAULT
328#define VAL_GPIOH_AFRL VAL_GPIO_AF_ALL_DEFAULT
329#define VAL_GPIOH_AFRH VAL_GPIO_AF_ALL_DEFAULT
334#define VAL_GPIOI_MODER VAL_GPIO_MODER_ALL_DEFAULT
335#define VAL_GPIOI_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
336#define VAL_GPIOI_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
337#define VAL_GPIOI_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
338#define VAL_GPIOI_ODR VAL_GPIO_ODR_ALL_DEFAULT
339#define VAL_GPIOI_AFRL VAL_GPIO_AF_ALL_DEFAULT
340#define VAL_GPIOI_AFRH VAL_GPIO_AF_ALL_DEFAULT
345#define VAL_GPIOJ_MODER VAL_GPIO_MODER_ALL_DEFAULT
346#define VAL_GPIOJ_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
347#define VAL_GPIOJ_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
348#define VAL_GPIOJ_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
349#define VAL_GPIOJ_ODR VAL_GPIO_ODR_ALL_DEFAULT
350#define VAL_GPIOJ_AFRL VAL_GPIO_AF_ALL_DEFAULT
351#define VAL_GPIOJ_AFRH VAL_GPIO_AF_ALL_DEFAULT
356#define VAL_GPIOK_MODER VAL_GPIO_MODER_ALL_DEFAULT
357#define VAL_GPIOK_OTYPER VAL_GPIO_OTYPER_ALL_DEFAULT
358#define VAL_GPIOK_OSPEEDR VAL_GPIO_OSPEEDR_ALL_DEFAULT
359#define VAL_GPIOK_PUPDR VAL_GPIO_PUPDR_ALL_DEFAULT
360#define VAL_GPIOK_ODR VAL_GPIO_ODR_ALL_DEFAULT
361#define VAL_GPIOK_AFRL VAL_GPIO_AF_ALL_DEFAULT
362#define VAL_GPIOK_AFRH VAL_GPIO_AF_ALL_DEFAULT
368#if !defined(_FROM_ASM_)
void boardInit(void)
Board-specific initialization code.