periph_cpu_esp32s3.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2022 Gunar Schorcht
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
19 #ifndef PERIPH_CPU_ESP32S3_H
20 #define PERIPH_CPU_ESP32S3_H
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
27 #define CLOCK_CORECLOCK (1000000UL * CONFIG_ESP32S3_DEFAULT_CPU_FREQ_MHZ)
28 
32 #define CPU_CYCLES_PER_LOOP (5)
33 
38 #define GPIO0 (GPIO_PIN(PORT_GPIO, 0))
39 #define GPIO1 (GPIO_PIN(PORT_GPIO, 1))
40 #define GPIO2 (GPIO_PIN(PORT_GPIO, 2))
41 #define GPIO3 (GPIO_PIN(PORT_GPIO, 3))
42 #define GPIO4 (GPIO_PIN(PORT_GPIO, 4))
43 #define GPIO5 (GPIO_PIN(PORT_GPIO, 5))
44 #define GPIO6 (GPIO_PIN(PORT_GPIO, 6))
45 #define GPIO7 (GPIO_PIN(PORT_GPIO, 7))
46 #define GPIO8 (GPIO_PIN(PORT_GPIO, 8))
47 #define GPIO9 (GPIO_PIN(PORT_GPIO, 9))
48 #define GPIO10 (GPIO_PIN(PORT_GPIO, 10))
49 #define GPIO11 (GPIO_PIN(PORT_GPIO, 11))
50 #define GPIO12 (GPIO_PIN(PORT_GPIO, 12))
51 #define GPIO13 (GPIO_PIN(PORT_GPIO, 13))
52 #define GPIO14 (GPIO_PIN(PORT_GPIO, 14))
53 #define GPIO15 (GPIO_PIN(PORT_GPIO, 15))
54 #define GPIO16 (GPIO_PIN(PORT_GPIO, 16))
55 #define GPIO17 (GPIO_PIN(PORT_GPIO, 17))
56 #define GPIO18 (GPIO_PIN(PORT_GPIO, 18))
57 #define GPIO19 (GPIO_PIN(PORT_GPIO, 19))
58 #define GPIO20 (GPIO_PIN(PORT_GPIO, 20))
59 #define GPIO21 (GPIO_PIN(PORT_GPIO, 21))
60 /* GPIOs 22 ...25 are not available */
61 #define GPIO26 (GPIO_PIN(PORT_GPIO, 26))
62 #define GPIO27 (GPIO_PIN(PORT_GPIO, 27))
63 #define GPIO28 (GPIO_PIN(PORT_GPIO, 28))
64 #define GPIO29 (GPIO_PIN(PORT_GPIO, 29))
65 #define GPIO30 (GPIO_PIN(PORT_GPIO, 30))
66 #define GPIO31 (GPIO_PIN(PORT_GPIO, 31))
67 #define GPIO32 (GPIO_PIN(PORT_GPIO, 32))
68 #define GPIO33 (GPIO_PIN(PORT_GPIO, 33))
69 #define GPIO34 (GPIO_PIN(PORT_GPIO, 34))
70 #define GPIO35 (GPIO_PIN(PORT_GPIO, 35))
71 #define GPIO36 (GPIO_PIN(PORT_GPIO, 36))
72 #define GPIO37 (GPIO_PIN(PORT_GPIO, 37))
73 #define GPIO38 (GPIO_PIN(PORT_GPIO, 38))
74 #define GPIO39 (GPIO_PIN(PORT_GPIO, 39))
75 #define GPIO40 (GPIO_PIN(PORT_GPIO, 40))
76 #define GPIO41 (GPIO_PIN(PORT_GPIO, 41))
77 #define GPIO42 (GPIO_PIN(PORT_GPIO, 42))
78 #define GPIO43 (GPIO_PIN(PORT_GPIO, 43))
79 #define GPIO44 (GPIO_PIN(PORT_GPIO, 44))
80 #define GPIO45 (GPIO_PIN(PORT_GPIO, 45))
81 #define GPIO46 (GPIO_PIN(PORT_GPIO, 46))
82 #define GPIO47 (GPIO_PIN(PORT_GPIO, 47))
83 #define GPIO48 (GPIO_PIN(PORT_GPIO, 48))
194 #ifdef MODULE_ESP_HW_COUNTER
196 #define TIMER_NUMOF (2)
197 #define TIMER_CHANNEL_NUMOF (1)
198 #endif
199 
244 #define DWC2_USB_OTG_FS_ENABLED 1
245 
249 #define DWC2_USB_OTG_FS_NUM_EP (5)
250 
254 #ifndef DWC2_USB_OTG_FS_RX_FIFO_SIZE
255 #define DWC2_USB_OTG_FS_RX_FIFO_SIZE (128U)
256 #endif
257 
261 #define DWC2_USB_OTG_FS_TOTAL_FIFO_SIZE (1024U)
262 
266 #define USBDEV_CPU_DMA_ALIGNMENT (4)
267 
271 #define USBDEV_NUM_ENDPOINTS DWC2_USB_OTG_FS_NUM_EP
274 #ifdef __cplusplus
275 }
276 #endif
277 
278 #endif /* PERIPH_CPU_ESP32S3_H */