1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

730 Commits

Author SHA1 Message Date
Gunar Schorcht
a0715b281b cpu/esp32: export FLASH_SIZE to SDK configuration 2022-12-31 14:10:57 +01:00
Gunar Schorcht
f23b20f91f cpu/esp: use FLASHFILE_POS for image position in flash
Instead of using a fixed position of the image file in the flash, the variable `FLASHFILE_POS` is used which allows to override the default position of the image in the flash at 0x10000.
2022-12-31 14:10:57 +01:00
Marian Buschsieweke
e8fd65566a
cpu/esp32/periph_timer: allow changing callback or freq
Allow multiple calls to timer_init(), as this is the only way to
change the timer frequency or the callback function.
2022-11-24 22:38:15 +01:00
Jon-Mailes Graeffe
b0686ce4dd cpu/esp32: set bootloader XTAL frequency configuration to automatic 2022-11-01 03:22:38 +01:00
Gunar Schorcht
d9dbaa3c2c cpu/esp32s{2,3}: DWC2_USB_OTG_FS_TOTAL_FIFO_SIZE must not overridable
Since the total USB OTG FIFO size is a hardware propertie, it must not be overridable.
2022-10-17 20:03:51 +02:00
Gunar Schorcht
59a84285ae cpu/esp32s{2,3}: fix MODULE_USBDEV_SYNOPSYS_DWC2 dependency in Kconfig
`MODULE_USBDEV_SYNOPSYS_DWC2` depends already on `HAS_PERIPH_USBDEV`.
2022-10-17 20:03:23 +02:00
Gunar Schorcht
a7bf2d74ba cpu/esp32: fix usbdev_synopsys_dwc2 on ztimer_msec
The `usbdev_synopsys_dwc2 driver` requires the `ztimer_msec` module and is therefore responsible for pulling it in. Therefore, the dependency on `ztimer_msec` can be removed here.
2022-10-17 20:03:04 +02:00
Gunar Schorcht
65d5d28e09
Merge pull request #18717 from maribu/cpu/esp32/ESP32_SDK_DIR
cpu/esp32: move ESP32_SDK_DIR definition here
2022-10-11 11:06:19 +02:00
Marian Buschsieweke
c1a62f316e
cpu/esp32: move ESP32_SDK_DIR definition here
The definition in `pkg/esp32_sdk/Makefile.include` was evaluated by
`make` after the include paths were already set, resulting in
`ESP32_SDK_DIR` being empty in

    INCLUDES += -I$(ESP32_SDK_DIR)/components
    [...]

This in turn resulted in

    cc1: error: /components: No such file or directory [-Werror=missing-include-dirs]
    [...]
2022-10-10 20:39:47 +02:00
Benjamin Valentin
cd9c8c354e cpu/esp32: allow GPIO_UNDEF in SPI config
e.g. a display or string of LEDs might not have a MISO pin defined
2022-10-08 22:02:49 +02:00
Benjamin Valentin
2b2298b796 cpu/esp32: implement periph_spi_reconfigure 2022-10-08 22:02:49 +02:00
Gunar Schorcht
8696783853 cpu/esp32: enable tinyUSB package for ESP32-S2 and ESP32-S3 2022-09-30 19:05:51 +02:00
Gunar Schorcht
9d5a7ac083 cpu/esp32: use usbdev_synopsys_dwc2 driver as periph_usbdev 2022-09-27 01:00:57 +02:00
Gunar Schorcht
ac075ee320 cpu/esp32: add USB interrupt for periph_usbdev 2022-09-27 01:00:57 +02:00
Gunar Schorcht
1eb8012de9 cpu/esp32: add feature periph_usbdev for ESP32-S2 and ESP32-S3 2022-09-27 01:00:57 +02:00
Gunar Schorcht
8e351b3d5b cpu/esp32: add vendor header file for periph_usbdev
This file is an excerpt of STM32 header file `stm32/smsis/f7/include/stm32f767xx.h` since the ESP32x SoCs use the same Synopsys DWC2 IP core as USB peripherals.
2022-09-27 01:00:57 +02:00
Gunar Schorcht
23b5a785b8 cpu/esp32: add ESP-IDF USB code as module esp_idf_usb 2022-09-27 01:00:57 +02:00
Gunar Schorcht
da2f024f8b cpu/esp32: remove include of esp_can.h
Since `esp_can.h` is included by main `cpu/esp32/include/periph_cpu.h` after the include of the specific `periph_cpu_$(CPU_FAM)`, it is not necessary to include `esp_can.h` in each specific `periph_cpu_$(CPU_FAM)`.
2022-09-27 00:57:42 +02:00
benpicco
276195e0ff
Merge pull request #18548 from yarrick/lwip_init
pkg/lwip: Set netdev callback before driver init
2022-09-14 15:20:18 +02:00
Gunar Schorcht
a0a0b64f40
Merge pull request #18544 from gschorcht/cpu/esp/improve_thread_safety_of_malloc
cpu/esp: improve thread safety in newlib locking functions
2022-09-05 13:29:03 +02:00
Erik Ekman
d568a6dba1 Revert "esp32/eth: Don't overwrite queued event with RX packet"
This reverts commit 95196fb7e4.

Not needed since the initial event is now processed properly.
2022-09-03 14:11:06 +02:00
Gunar Schorcht
b37338ba0b cpu/esp32: changes for periph/gpio_ll in ESP-IDF interface API 2022-09-02 15:03:45 +02:00
Gunar Schorcht
94b4f03b47 cpu/esp32: implement periph/gpio_ll_irq 2022-09-02 15:03:45 +02:00
Gunar Schorcht
581c2dd9be cpu/esp32: implement periph/gpio_ll 2022-09-02 15:03:45 +02:00
Gunar Schorcht
48d59e97a2 cpu/esp32: replace macros for GPIO access by inline functions 2022-09-02 15:03:45 +02:00
Gunar Schorcht
270001a42e cpu/esp_common: move ESP32 specific locking variables to cpu/esp32 2022-09-01 15:09:58 +02:00
Gunar Schorcht
2092c35ef6 cpu/esp32: module malloc_thread_safe not needed any longer
With the improvements of the locking mechanism, thread safety of malloc/realloc/calloc/free is guaranteed. Module malloc_thread_safe is not needed any longer.
2022-09-01 15:08:09 +02:00
Gunar Schorcht
b94931191e cpu/esp32: small cleanups in periph/gpio 2022-08-31 12:21:46 +02:00
Gunar Schorcht
af719f9c3b cpu/esp32: fix doc for gpio_flank_t 2022-08-31 12:21:46 +02:00
benpicco
2917c0f51e
Merge pull request #18506 from gschorcht/cpu/esp32/add_esp32s2_cpu_support
cpu/esp32: add support for ESP32-S2
2022-08-30 21:24:36 +02:00
Gunar Schorcht
b96aac842b cpu/esp32: export FLASH_* settings
To get FLASH_* settings visible in cpu/esp32/bootloader/Makefile, they have to be exported in cpu/esp32/Makefile.include
2022-08-30 15:08:39 +02:00
Gunar Schorcht
06bb755c03 cpu/esp32: add ESP32-S2 support in peripheral drivers 2022-08-29 17:19:39 +02:00
Gunar Schorcht
dac197031e cpu/esp32: add ESP32-S2 specific configuration header files 2022-08-29 17:19:39 +02:00
Gunar Schorcht
67183a196d cpu/esp32/bootloader: add ESP32-S2 support 2022-08-29 17:19:39 +02:00
Gunar Schorcht
60c681a2c3 cpu/esp32/esp-ble-nimble: fix too many empty lines in syscfg.h 2022-08-27 17:27:23 +02:00
Gunar Schorcht
5e0b1d665b cpu/esp32: add BLE support for ESP32-S3 2022-08-26 21:16:09 +02:00
Gunar Schorcht
ce215f5be6 cpu/esp32: add BLE support in linker scripts for ESP32-S3 2022-08-26 21:16:09 +02:00
benpicco
5b6dff045a
Merge pull request #18510 from gschorcht/cpu/esp32/add_esp32c3_ble_support
cpu/esp32: enable BLE and NimBLE host support for ESP32-C3
2022-08-26 21:04:49 +02:00
Gunar Schorcht
aba5e35ac4 cpu/esp32: add BLE support for ESP32-C3 2022-08-26 17:10:42 +02:00
benpicco
ffc657071e
Merge pull request #18509 from gschorcht/cpu/esp32/add_esp32s2_linker_scripts
cpu/esp32: add linker scripts for ESP32-S2
2022-08-24 21:41:53 +02:00
benpicco
d1377eb0bd
Merge pull request #18505 from gschorcht/cpu/esp32/add_esp32s2_support_in_doc
cpu/esp32: add ESP32-S2 support in documentation
2022-08-24 20:36:47 +02:00
benpicco
0fff68dc9b
Merge pull request #18504 from gschorcht/cpu/esp32/add_esp32s2_support_in_kconfig
cpu/esp32: add ESP32-S2 support in Kconfig
2022-08-24 20:30:48 +02:00
Gunar Schorcht
2ec9ca1276 cpu/esp32: add BLE support in linker scripts for ESP32-C3 2022-08-24 18:08:31 +02:00
Gunar Schorcht
e216a7d719 cpu/esp32: add linker scripts for ESP32-S2 2022-08-24 17:58:41 +02:00
Gunar Schorcht
8ee714cc9b cpu/esp*: cleanup of CPU_ARCH* and CPU_CORE* 2022-08-24 17:15:37 +02:00
Gunar Schorcht
f848f668e3 cpu/esp32: add some debugging info in esp_ble_nimble 2022-08-24 09:05:25 +02:00
Gunar Schorcht
56e59eb036 cpu/esp32: add NimBLE support for ESP32 2022-08-24 09:05:25 +02:00
Gunar Schorcht
abccc41db7 cpu/esp32: add BLE support for ESP32 2022-08-24 09:05:25 +02:00
Gunar Schorcht
48e7263674 cpu/esp32: add BLE support in linker scripts for ESP32 2022-08-24 09:03:38 +02:00
Gunar Schorcht
e257652e1d cpu/esp32/esp-idf: add ESP-IDF module for BLE support 2022-08-24 09:03:38 +02:00
Gunar Schorcht
b74bf015ef cpu/esp32: change the UART interrupt number
When using Bluetooth LE, the former UART interrupt number 5 is occupied by the ESP32 Bluetooth Controller. Therefore, another interrupt number has to be used for UART.
2022-08-24 09:03:38 +02:00
Gunar Schorcht
53376ce2d3 cpu/esp32: add ESP32-S2 support in doc 2022-08-23 17:36:13 +02:00
Gunar Schorcht
13e3e09414 cpu/esp32: add ESP32-S2 support in Kconfig 2022-08-23 17:35:32 +02:00
Gunar Schorcht
fbdad5fe02 cpu/esp32: add ESP32-S2 support to ESP-IDF compilation 2022-08-23 17:34:38 +02:00
Gunar Schorcht
cd5c350e88 cpu/esp32: add ESP32-S2 support in makefiles 2022-08-23 17:34:25 +02:00
Gunar Schorcht
e7bf789dd4 cpu/esp32: move CLOCK_CORECLOCK to periph_cpu_*.h
This define does not belong to the defines in `sdkconfig_*.h` that are used for the ESP-IDF SDK. It is therefore moved to the corresponding `periph_cpu_*.h` file.
2022-08-17 15:58:40 +02:00
Gunar Schorcht
a76f5fd55e cpu/esp32: disable ESP-IDF dac API compilation if periph_dac isn't used
The compilation of `esp-idf-api/dac.c` has to be disabled if `periph_dac` is not used to avoid compilation errors.
2022-08-17 02:04:07 +02:00
Gunar Schorcht
945a960fa7 cpu/esp32: add ESP32-S3 support in peripheral drivers 2022-08-17 02:04:07 +02:00
Gunar Schorcht
55e1f88a60 cpu/esp32: add ESP32-S3 specific configuration header files 2022-08-17 02:04:07 +02:00
Gunar Schorcht
9c834f57d6 cpu/esp32/bootloader: add ESP32-S3 support 2022-08-17 02:04:07 +02:00
Gunar Schorcht
5d47b61f9b
Merge pull request #18412 from gschorcht/cpu/esp32/add_esp32s3_doc
cpu/esp32: add ESP32-S3 support to documentation
2022-08-17 02:03:29 +02:00
benpicco
4ab7ba6758
Merge pull request #18405 from gschorcht/cpu/esp32/periph_gpio_wakeup_extemsion
cpu/esp32: extend GPIO wake-up from deep sleep
2022-08-12 15:41:46 +02:00
benpicco
dff1f689b0
Merge pull request #18410 from gschorcht/cpu/esp32/add_esp32s3_makefiles
cpu/esp32: add ESP32-S3 support to makefiles
2022-08-10 15:19:42 +02:00
Gunar Schorcht
adc12a499e
Merge pull request #18409 from gschorcht/cpu/esp32/add_esp32s3_linker_scripts
cpu/esp32: add linker scripts for ESP32-S3
2022-08-10 06:50:48 +02:00
benpicco
3fef5c171d
Merge pull request #18411 from gschorcht/cpu/esp32/add_esp32s3_kconfig
cpu/esp32: add ESP32-S3 support in Kconfig
2022-08-09 22:11:58 +02:00
Gunar Schorcht
2902a9a803 cpu/esp32: add ESP32-S3 support to ESP-IDF interface API compilation 2022-08-09 15:57:18 +02:00
Gunar Schorcht
f0b619bed2 cpu/esp32: add ESP32-S3 support in makefiles 2022-08-09 15:57:18 +02:00
Gunar Schorcht
e746a4b1f0 cpu/esp32: add ESP32-S3 support in doc 2022-08-07 14:50:50 +02:00
Gunar Schorcht
34510abe96 cpu/esp32: add ESP32-S3 support in Kconfig 2022-08-07 13:43:23 +02:00
Gunar Schorcht
566bd333de cpu/esp32: add linker scripts for ESP32-S3
Add the linker script for ESP32-S3 and modify the ESP32-C3 linker scripts to be compatible with them. The goal is to use a section list of objects that is common for all ESP32x SoCs in future.
2022-08-07 13:13:11 +02:00
Gunar Schorcht
70d427da0b cpu/esp32: move common ESP-IDF configurations to common file 2022-08-07 12:04:22 +02:00
Gunar Schorcht
8af4c9eb56 cpu/esp32/bootloader: move common configuration to a common file 2022-08-07 08:47:46 +02:00
Gunar Schorcht
53c657ff61 cpu/esp32: extend GPIO wake-up from deep sleep
Depending on SoC capabilities, ESP32x SoC variants support different logical combinations to wake-up from deep sleep.
2022-08-07 08:43:54 +02:00
Gunar Schorcht
08c2af3034 cpu/esp32: small change in assert for ESP32x SoCs 2022-08-05 22:26:44 +02:00
Gunar Schorcht
43d71f276d cpu/esp32: add ESP32-C3 support in peripheral drivers 2022-08-05 22:26:22 +02:00
Gunar Schorcht
9157b5714b cpu/esp32: add ESP32-C3 support in Kconfig 2022-08-05 22:26:22 +02:00
Gunar Schorcht
d0b3c20d88 cpu/esp32: add ESP32-C3 specific configuration header files 2022-08-05 22:26:22 +02:00
benpicco
004ac82af5
Merge pull request #18394 from gschorcht/cpu/esp32/fix_kconfig_for_esp_eth
cpu/esp32: fix provided features and Kconfig for esp_eth
2022-08-05 19:47:03 +02:00
benpicco
cf745e954e
Merge pull request #18387 from gschorcht/cpu/esp32/cleanup_spi_flash_mode
cpu/{esp8266,esp32}: cleanup of SPI Flash configuration
2022-08-05 12:24:45 +02:00
Gunar Schorcht
dff5c8daad cpu/esp32: fix Kconfig for esp_eth 2022-08-03 09:01:05 +02:00
Gunar Schorcht
71c7e9e9f5 cpu/esp32: replace HAS_PERIPH_ETH by HAS_ESP_ETH in Kconfig
In fact the ESP32 has no peripheral driver for the ETH interface. Instead, the `esp_eth` netdev driver directly uses the ESP-IDF Ethernet API. This caused compilation problems with Kconfig. Therefore the required feature `periph_eth` is replaced by the feature `esp_eth`.
2022-08-03 09:00:02 +02:00
Gunar Schorcht
1c28fa8928 cpu/esp32: replace feature periph_eth by esp_eth
In fact the ESP32 has no peripheral driver for the ETH interface. Instead, the `esp_eth` netdev driver directly uses the ESP-IDF Ethernet API. This caused compilation problems with Kconfig. Therefore the required feature `periph_eth` is replaced by the feature `esp_eth`.
2022-08-03 06:38:44 +02:00
Gunar Schorcht
2d3bb51488 cpu/esp32: add netdev_register for NETDEV_ESP_ETH 2022-08-02 09:34:35 +02:00
Gunar Schorcht
da39354ae5 cpu/esp32: set CONFIG_ESPTOOL_FLASH_FREQ from FLASH_FREQ
CONFIG_ESPTOOL_FLASH_FREQ_* defines are used in ESP-IDF to select the right SPI clock speed for flash.
2022-08-02 07:24:30 +02:00
Gunar Schorcht
c8de46ddee cpu/{esp_common,esp8266,esp32}: fix default FLASH_* configuration
This commit includes the following changes:
- the default flash mode in bootloader should be dio and not dout
- the default flash configuration for ESP32 has to be exported to be also visible in cpu/esp32/bootloader/Makefile
- the comments in  cpu/esp8266/Makefile.include have to be removed so that the flash configuration do not contain trailing white spaces
2022-08-02 07:24:30 +02:00
Gunar Schorcht
b4fafef6e7 cpu/esp_common: replace FLASH_MODE_* by CONFIG_*FLASHMODE_* defines
The former FLASH_MODE_{DOUT,DIO,QOUT,QIO} defines are replaced by the corresponding CONFIG_FLASHMODE_{DOUT,DIO,QOUT,QIO} and CONFIG_ESPTOOLPY_FLASHMODE_{DOUT,DIO,QOUT,QIO} as used by the ESP-IDF. This is also needed for the migration of defining flash mode in Kconfig.
2022-08-01 15:17:33 +02:00
Gunar Schorcht
6b57211058
Merge pull request #18364 from MrKevinWeiss/pr/fix/murdock
.murdock: Fix kconfig hash check
2022-07-27 11:14:08 +02:00
MrKevinWeiss
e21c3a1e4a
cpu/esp32: Fix kconfig model 2022-07-26 15:08:46 +02:00
Leandro Lanzieri
575e58dc5b
cpu/esp32/esp-eth: model in Kconfig 2022-07-25 11:08:32 +02:00
Gunar Schorcht
81b5388093 cpu/esp32: add ESP32-C3 support in doc 2022-07-21 12:29:38 +02:00
benpicco
8d42808f52
Merge pull request #18341 from gschorcht/cpu/esp32/add_esp32c3_makefile_support
cpu/esp32: add ESP32-C3 support in makefiles
2022-07-21 08:04:42 +02:00
benpicco
4ef8b34b8e
Merge pull request #18335 from gschorcht/cpu/esp32/cleanup_esp_log_for_esp32x_socs
cpu/esp32: cleanup of esp_log_write
2022-07-21 05:02:51 +02:00
benpicco
574a3b758a
Merge pull request #18340 from gschorcht/cpu/esp32/add_esp32c3_linker_scripts
cpu/esp32: add linker scripts for ESP32-C3
2022-07-20 21:18:19 +02:00
benpicco
8cc31c21e1
Merge pull request #18334 from gschorcht/cpu/esp32/fix_periph_rtt_32k_crystal_module_dependeny
cpu/esp32: fix dependency for periph/rtt and module esp_rtc_timer_32k
2022-07-20 17:27:05 +02:00
Gunar Schorcht
d6aeea7e75 cpu/esp32: rename architecture to riscv_esp32 to rv32 2022-07-20 17:18:56 +02:00
Gunar Schorcht
4ed925a2b3 cpu/esp32: add ESP32-C3 support in makefiles 2022-07-20 17:18:56 +02:00
benpicco
c3e5415a5e
Merge pull request #18333 from gschorcht/cpu/esp32/cleanups_to_reduce_vera_warnings
cpu/esp*: cleanups mainly to reduce the vera++ warnings
2022-07-20 15:08:55 +02:00
Gunar Schorcht
3c3bc1d4ce cpu/esp32: add linker scripts for ESP32-C3 2022-07-20 10:10:37 +02:00
Gunar Schorcht
d6ecb74f96 cpu/esp32: cleanup of esp_log_write 2022-07-20 08:54:15 +02:00
Gunar Schorcht
63cc84ac25 cpu/esp32: fix dependency for module esp_rtc_timer_32k 2022-07-20 08:05:44 +02:00