Marian Buschsieweke
c89c75dbc9
Merge pull request #18971 from maribu/cpu/esp
...
cpu/esp{32,8266}/periph_timer: allow changing callback or freq
2022-11-25 08:22:26 +01:00
Marian Buschsieweke
03b7fe8f0c
cpu/esp8266/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:39:49 +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
Marian Buschsieweke
fbd7b77331
cpu/nrf5x_common/periph_timer: fix spurious IRQs
2022-11-24 22:36:42 +01:00
Marian Buschsieweke
20fc71dd65
cpu/stm32/periph_timer: fix spurious IRQs
2022-11-24 22:34:10 +01:00
Marian Buschsieweke
93c5755649
cpu/stm32/periph_timer: fix race conditions
...
Allow two threads to share the same timer - provided they use distinct
sets of timer channels - without occasionally corrupting registers or
state flags.
2022-11-24 22:34:03 +01:00
Benjamin Valentin
59a3e613fe
cpu/cortexm_common: measure time spent with IRQ disabled
2022-11-24 21:27:20 +01:00
Marian Buschsieweke
020c6ff69c
Merge pull request #18954 from jue89/fix/nrf5x-uart-lowpower
...
cpu/nrf5x/uart: run STOPTX task after finished tx
2022-11-24 14:20:58 +01:00
Juergen Fitschen
a6ff838a4b
Merge pull request #18933 from jue89/feature/cpu_efm32_series_2_adc
...
cpu/efm32: add periph_adc support for Gecko Series 2
2022-11-24 11:32:56 +01:00
benpicco
86d72c7b85
Merge pull request #18940 from krzysztof-cabaj/nucleo-l496zg-ADC
...
boards/nucleo-l496zg: add ADC support
2022-11-23 20:34:08 +01:00
Marian Buschsieweke
cefef8fd1e
Merge pull request #18953 from jue89/fix/nrf5x-timer-lowpower
...
cpu/nrf5x/timer: fix high current consumption in powered off state
2022-11-23 17:03:33 +01:00
Marian Buschsieweke
232c70ba53
Merge pull request #18948 from maribu/boards/common/nrf52
...
boards/common/nrf52: fix timer config
2022-11-23 10:47:26 +01:00
Jue
3da1faca90
cpu/nrf5x/uart: run STOPTX task after finished tx
...
This reduces power consumption for UARTs that are configured in tx-only mode.
2022-11-22 21:33:14 +01:00
Jue
a7e2182bb0
cpu/nrf5x/timer: run task SHUTDOWN instead of STOP
...
This is a workaround for errata 78 that causes increased current consumption even in the stopped state.
2022-11-22 19:15:31 +01:00
Juergen Fitschen
97bc8252d9
Merge pull request #18920 from jue89/fix/sam0_rtt_rtc
...
sam0/rtc_rtt: optimizations to get around the painful long syncwaits
2022-11-22 18:12:06 +01:00
Juergen Fitschen
18e9167c73
cpu/efm32/adc: add support for Gecko Series 2
...
Series 2 features IADCs instead of ADCs.
2022-11-22 14:44:56 +01:00
Marian Buschsieweke
b533fcf543
cpu/nrf5x_common: improve doc on timer_conf_t::channels
2022-11-22 13:43:05 +01:00
Jue
2a81a2ab5c
cpu/efm32: provide periph_uart_modecfg feature for every board
2022-11-21 23:20:19 +01:00
Jue
80b491d7dd
cpu/efm32/uart: add modecfg support for Gecko Series 2
2022-11-21 23:17:52 +01:00
krzysztof-cabaj
afbb568306
cpu/stm32/l4: add ADC support for l496zg
2022-11-21 05:52:02 -05:00
Marian Buschsieweke
6b759c2a7d
Merge pull request #18935 from benpicco/makefiles/gnu-version
...
makefiles/gnu.inc.mk: set flags based on compiler version
2022-11-20 08:11:57 +01:00
Benjamin Valentin
b30efeeb65
makefiles/gnu.inc.mk: set flags based on compiler version
2022-11-19 23:14:54 +01:00
Benjamin Valentin
dd5c876034
cpu/native: replace RIOT_FILE_RELATIVE with __FILE__
2022-11-19 01:48:42 +01:00
Benjamin Valentin
8777584ac8
cpu/lpc23xx: core: replace RIOT_FILE_RELATIVE with __FILE__
2022-11-19 01:48:42 +01:00
benpicco
e1aa925c35
Merge pull request #18913 from benpicco/macro-prefix-map
...
makefiles/cflags.inc.mk: don't include absolute path in __FILE__ macro
2022-11-18 16:43:35 +01:00
benpicco
2f122769c3
Merge pull request #18921 from benpicco/cpu/stm32-bkup_heap
...
cpu/stm32: add unused backup RAM as extra heap
2022-11-18 15:48:36 +01:00
Benjamin Valentin
6f05daceb3
cpu/stm32: add unused backup RAM as extra heap
2022-11-18 12:19:10 +01:00
Gunar Schorcht
4b7578b2eb
pkg/tinyusb: fix USB speed selection for STM32
2022-11-17 14:07:38 +01:00
Juergen Fitschen
268bdfec29
sam0/rtc_rtt: don't block until set_alarm has been propagated to periph
...
rtc_set_alarm() / rtt_set_alarm() are heavily used by ztimer during ISR. This will reduce time spent during ISR drastically. We trust that the peripheral is able to propagate the alarm asynchronously.
2022-11-16 17:02:19 +01:00
Juergen Fitschen
9c6f07f80a
sam0/rtc_rtt: optimize pm_unblock/pm_block ping-pong during set alarm
2022-11-16 16:54:29 +01:00
benpicco
b33688dec4
Merge pull request #18919 from gschorcht/cpu/stm32/fix_ram_len_stm32f4{2,3}{7,9}
...
cpu/stm32: fix RAM_LEN for F427, F429, F437, F439 models
2022-11-16 11:32:13 +01:00
Gunar Schorcht
7b99a5152f
cpu/stm32: fix RAM_LEN for F427, F429, F437, F439 models
...
These models have 256 kByte RAM, but the upper 64 kByte are used as CCM data RAM accessible at 0x1000:0000. The access to 0x2003:xxxx leads to a hard fault.
2022-11-15 22:29:34 +01:00
Benjamin Valentin
5b359108f7
cpu/esp8266: blacklist -fmacro-prefix-map
...
This requires at least GCC 8
2022-11-15 20:39:49 +01:00
Marian Buschsieweke
35149bd1c2
Merge pull request #18797 from MrKevinWeiss/pr/fixstmclk
...
cpu/stm32: Fix stm clock configuration
2022-11-15 11:39:25 +01:00
Benjamin Valentin
0bd67d98d9
cpu: always rely on stdio.inc.mk for default stdio selection
2022-11-09 10:42:47 +01:00
benpicco
8559472179
Merge pull request #18821 from jue89/feature/saml21_pheriph_pm
...
cpu/saml21: add interaction with pm_layered for peripheral drivers
2022-11-07 19:53:57 +01:00
benpicco
384e3ca534
Merge pull request #18847 from krzysztof-cabaj/nucleo-f207zg-ADC
...
boards/nucleo-f207zg: support for ADC
2022-11-05 01:55:30 +01:00
krzysztof-cabaj
aa426bd3aa
cpu/stm32/f2: add ADC support for f207zg
2022-11-04 18:02:28 -04:00
Jue
73e6886b2c
cpu/saml21: define required power modes
...
We can get rid initially blocked pm modes \o/
2022-11-03 14:53:45 +01:00
Jue
24461b43f8
cpu/sam0/spi: generalize pm_layered interaction
...
In DMA mode SPI transfers are carried out by HW. We need to block certain pm modes during transfer.
2022-11-03 14:53:44 +01:00
Jue
db9263eeca
cpu/sam0/rtc_rtt: integrate pm_layered
2022-11-03 14:53:43 +01:00
Jue
cc4e880aa8
cpu/sam0/rtc: remove overflow IRQ
...
Due to the RIOT_EPOCH of 2020 this overflow will happen in year 2084. It would be scary if IoT devices are still around then.
We can save RAM and ROM. Furthermore, this overflow handling should block BACKUP power mode in order to keep track of the reference year.
2022-11-03 14:52:38 +01:00
Jue
5866262122
cpu/sam0/usbdev: generalize pm_layered interaction
...
periph_cpu.h should define the required pm modes.
Additionally, some CPUs require a certain pm mode in USB IDLE mode.
2022-11-03 14:27:47 +01:00
Jue
220be1da7e
cpu/sam0/gpio: integrate pm_layered
2022-11-03 14:27:47 +01:00
Jue
ae9190da30
cpu/sam0/uart: integrate pm_layered
2022-11-03 14:27:47 +01:00
Jue
aa5ad12f37
cpu/sam0/uart: skip uart_write() if uart isn't active
...
Otherwise we get stuck in an endless loop ...
2022-11-03 14:27:47 +01:00
Jue
cf5e207d62
cpu/sam0/uart: enable peripheral clock before accessing regs
2022-11-03 14:27:47 +01:00
Jue
4f25c1017d
cpu/sam0/timer: integrate pm_layered
2022-11-03 14:27:47 +01:00
Gunar Schorcht
31efa61eda
cpu/stm32: improvement of USB driver selection
...
There are STM32 families where all models use only the Synopsys DWC2 USB OTG core while others completely use only the USB Device FS core. For these families then either the driver `drivers/usbdev_synopsys_dwc2` or the driver `cpu/stm32/periph/usbdev` is used depending on the respective family. However, the STM32 families F1 and L4 use both cores. The correct driver must therefore be selected depending on the CPU line or CPU model.
2022-11-03 13:52:01 +01:00
MrKevinWeiss
28aed3cb97
cpu/stm32/kconfig: rework clock tree
...
This splits up the clock configs.
It allows CPU_FAM based file sourcing and also common CPU_FAMs.
The dependancies are also included in wildcards would be used for the CPU_FAM macro.
This should be much more readable.
This also takes into account the HSE speeds in order to match the make/header resolution.
Some hidden symbols were added to make sorting many CPU_SERIES dependencies easier.
2022-11-03 11:37:33 +01:00
MrKevinWeiss
ba4843b5f4
cpu/stm32/Kconfig: Fix help indent
2022-11-03 11:37:32 +01:00
MrKevinWeiss
641d539092
cpu/stm: Fix clock settings F303*
2022-11-03 11:37:31 +01:00
MrKevinWeiss
17cce015d4
treewide/stm32: Make CLOCK_HS* configurable
2022-11-03 11:37:28 +01:00
Gunar Schorcht
ccbb304eae
Merge pull request #18814 from jue89/fix/efm32_series2_timer
...
cpu/efm32/timer_series2: fix interaction with pm_layered
2022-11-02 16:30:13 +01:00
Jon-Mailes Graeffe
b0686ce4dd
cpu/esp32: set bootloader XTAL frequency configuration to automatic
2022-11-01 03:22:38 +01:00
Jue
75295df810
cpu/saml21/pm: allow blocking IDLE mode
2022-10-31 22:18:00 +01:00
Jue
d0c11e568a
cpu/saml21/pm: specify power mode names
2022-10-31 22:18:00 +01:00
krzysztof-cabaj
f82f856c63
cpu/cc26xx_cc13xx: remove broken HTML links and headings from doc
2022-10-28 08:57:17 -04:00
Jue
54e915e40d
cpu/efm32/timer_series2: sync STATUS register
...
Make sure the STATUS register has been synced between the different clock domains.
Especially the LETIMER needs some time to update the STATUS register after it has been enabled. If the LETIMER is started and stopped with just a short delay, pm_layered gets confused because the timer seems to be inactive ...
2022-10-28 11:34:55 +02:00
Jue
e6d18af3ad
cpu/efm32/timer_series2: fix timer_start() interaction with pm_layered
...
The timer hasn't been enabled yet, if the STATUS isn't RUNNING, yet ...
2022-10-28 11:34:55 +02:00
Juergen Fitschen
41251507a2
Merge pull request #18806 from jue89/fix/efm32_startup
...
cpu/efm32: include periph_conf.h for system-related methods
2022-10-27 23:26:42 +02:00
benpicco
ed1d8e0a3d
Merge pull request #18785 from maribu/boards/blxxxpill/periph_conf
...
boards/common/blxxxpill: Fix pin conflicts in periph_conf
2022-10-27 21:22:10 +02:00
Juergen Fitschen
6190738bf0
cpu/efm32: include periph_conf.h for system-related methods
...
This allows boards to define different crystal frequencies. The correct frequency is required by the system-related methods to ensure proper function of the underlying emlib.
2022-10-27 15:22:58 +02:00
benpicco
578d328ff4
Merge pull request #18711 from Enoch247/cpu-stm32-dma-fixes
...
cpu/stm32: fix periph_dma
2022-10-27 14:36:10 +02:00
Marian Buschsieweke
5ddc332b52
cpu/stm32/periph_pwm: support pin remap for F1
...
Add support to route timer peripheral to alternative pins for the
STM32F1.
2022-10-27 14:28:06 +02:00
Marian Buschsieweke
b6845cef79
cpu/stm32/periph_qdec: support pin remap for F1
...
Add support to route peripheral to alternative pins for the STM32F1
family.
2022-10-27 14:28:06 +02:00
Juergen Fitschen
0151279ffe
Merge pull request #18780 from jue89/feature/efm32-series2
...
EFM32: add cpu family EFR32ZG23 and board xG23-PK6068A
2022-10-26 19:18:30 +02:00
Joshua DeWeese
4e2c63ce8c
cpu/stm32/periph/dma: make dma_prepare() generic
...
This patch makes dma_prepare() handle register names a bit more
generically.
2022-10-26 09:36:45 -04:00
Joshua DeWeese
c888c103c2
cpu/stm32/periph/dma: fix dma_resume
...
As implmented, dma_resume assumed that transfers widths were 1 byte and
that the memory address incrmenting was always on and periphial address
incrementing always off. This resulted in memory corruption anytime
these assumptions were not true and a dma was resumed. The DMA module
allows intitiating transfers that did not meet these assumption.
This patch adds proper handling inside dma_resume to safely resume any
transfer. Clearifications and errors are added/fixed in the module's
header file. Also, a few constants are removed from the gobal namespace.
2022-10-26 09:36:45 -04:00
Joshua DeWeese
264a7c8ef9
cpu/stm32/periph/dma: fix DMA2 on STMF3 families
...
As it was, the calculation of DMA2's IRQ number was inccrorect for some
STM families. The implmentation alocates streams numbers 0 to 7 for the
first DMA controller and 8 and up for the second DMA controller. This
offset of +8 was not accounted for when IRQ's of the second DMA
controller was calculated. This patch corrects this.
2022-10-26 09:36:44 -04:00
Martine Lenders
669e21c7f5
Merge pull request #18735 from Teufelchen1/chore/native_macos
...
boards/native: Remove macOS as native target
2022-10-26 12:48:00 +02:00
Teufelchen1
35a06c4806
boards/native: Remove macOS as native target
2022-10-25 19:11:23 +02:00
Jue
ee2f5e981c
cpu/efm32: add efr32zg23 family
...
Generated with the EFM2RIOT tool: https://github.com/basilfx/EFM2RIOT
2022-10-24 23:16:39 +02:00
Jue
2ce1df5cd6
cpu/efm32/wdt: add series 2 support
2022-10-24 23:16:39 +02:00
Jue
ccf327a32b
cpu/efm32/hwrng: add series 2 periph driver
2022-10-24 23:16:39 +02:00
Jue
53e444ebc7
cpu/efm32/i2c: add series 2 support
2022-10-24 23:16:39 +02:00
Jue
2c2790dde2
cpu/efm32/spi: add series 2 support
2022-10-24 23:16:39 +02:00
Jue
568448f68c
cpu/efm32/timer: add series 2 periph driver
2022-10-24 23:16:39 +02:00
Jue
42c9a3c9f1
cpu/efm32/uart: add series 2 periph driver
2022-10-24 23:16:38 +02:00
Jue
2b1a260c43
cpu/efm32/gpio: fix clock enable sequence for series 2
2022-10-24 23:16:38 +02:00
Jue
1c60c95733
cpu/efm32: setup EM4 mode for series 2 CPUs
2022-10-24 23:16:38 +02:00
Jue
775861510c
cpu/efm32: allow series 2 boards to setup clock trees flexibly
2022-10-24 23:16:38 +02:00
Benjamin Valentin
04287b4795
cpu/cortexm_common: improve formatting of irq_arch.h
2022-10-24 18:08:33 +02:00
benpicco
21956db2fd
Merge pull request #18776 from gschorcht/pkg/tinyusb_otg_hs_ulpi
...
pkg/tinyusb: add ULPI and UTMI+ HS PHY support for STM32 USB OTG HS ports
2022-10-21 20:19:23 +02:00
Gunar Schorcht
9c8ec851ce
cpu/stm32: define CFG_TUSB_RHPORT{0,1}_MODE dependent on used USB ports
2022-10-21 11:43:55 +02:00
benpicco
f02113081b
Merge pull request #18779 from benpicco/socket_zep-crc16_ccitt
...
socket_zep: make use of crc16_ccitt_false_update()
2022-10-21 11:01:56 +02:00
Benjamin Valentin
2bb657c72c
socket_zep: make use of crc16_ccitt
2022-10-20 13:08:30 +02:00
Juergen Fitschen
67b380034a
cpu/efm32/pm: add debug output
2022-10-19 18:17:43 +02:00
Juergen Fitschen
360b36af16
cpu/efm32/pm: allow blocking EM1
...
Aligns pm logic to #17883
2022-10-19 17:51:12 +02:00
Juergen Fitschen
dc8fe69789
cpu/efm32: satisfy vera++
2022-10-18 23:30:08 +02:00
Jue
68625e5aa9
cpu/efm32/gpio: block power modes if IRQs are enabled
2022-10-18 23:30:08 +02:00
Jue
f6016d3999
cpu/efm32: keep debug unit active during EM2 when DEVELHELP is active
2022-10-18 17:34:27 +02:00
Jue
bc51071d44
cpu/efm32: define EFM power modes for pm_layered
2022-10-18 17:34:27 +02:00
Jue
b3989bc11f
cpu/efm32: remove ADC defintion for CPUs without ADC
...
Gecko Series 2 is shipped with a new IADC peripheral which is backed by its own emlib driver.
2022-10-18 16:39:18 +02:00
benpicco
da5cd8fa88
Merge pull request #18755 from gschorcht/boards/sltb009a
...
boards: add support for EFM32GG12 Thunderboard Kit (SLTB009A)
2022-10-18 11:12:28 +02:00
Gunar Schorcht
1dfe79fe7c
drivers/usbdev_synopsys_dwc2: use DWC2_USB_OTG_FS_TOTAL_FIFO_SIZE
...
Use `DWC2_USB_OTG_FS_TOTAL_FIFO_SIZE` instead of `USB_OTG_FS_TOTAL_FIFO_SIZE` since the latter is only defined in the vendor headers for STM32 MCUs. The STM32-specific problem that `USB_OTG_FS_TOTAL_FIFO_SIZE` is not defined in the vendor headers for all STM32 families has therefore been moved from the driver to the STM32-specific USB device header.
2022-10-17 20:03:57 +02: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
550a599da9
cpu/efm32: fix RTT_MAX_VALUE selection
...
EFM32GG12 have both a RTC and a RTCC. `_RTC_CNT_MAX` is used as `RTT_MAX_VALUE` in this case.
2022-10-17 08:19:08 +02:00
Gunar Schorcht
ae98c3e6d3
cpu/efm32: add EFM32GG12 family (generated with EFM2RIOT)
2022-10-17 08:19:08 +02:00
benpicco
4fded73f63
Merge pull request #18742 from maribu/cpu/stm32/KConfig2
...
cpu/stm32: fix periph_usb modeling for STM32F1
2022-10-15 21:13:47 +02:00
Marian Buschsieweke
c58817f839
Merge pull request #18739 from jue89/feature/pkg-gecko_sdk_41
...
pkg/gecko_sdk: Bump to version 4.1.2
2022-10-15 18:11:23 +02:00
Jue
f3d1773483
cpu/efm32/gpio: fix deprecated GPIO_IntConfig() call
2022-10-15 15:43:17 +02:00
Jue
65d4c046a8
cpu/efm32/efr32*: model librail integration
2022-10-15 15:43:17 +02:00
Marian Buschsieweke
40dd3bd68e
cpu/stm32: fix periph_usb modeling for STM32F1
...
- Fix source selection for STM32F105xx and STM32F107xx
- Fix KConfig modeling for STM32F105xx and STM32F107xx
2022-10-14 16:20:04 +02:00
Marian Buschsieweke
ea53b35d75
cpu/stm32: fix KConfig modeling for STM32F1 / usbdev_synopsys_dwc2
...
This fixes incorrect module selection for STM32F1 boards with feature
periph_usbdev, a regression introduced by
https://github.com/RIOT-OS/RIOT/pull/17812
2022-10-14 10:05:12 +02:00
Marian Buschsieweke
ea0a53521f
Merge pull request #17812 from benpicco/boards/blxxxpill-usb
...
boards/blxxxpill: configure usbdev_fs
2022-10-14 01:10:23 +02:00
Marian Buschsieweke
22c2e85f1d
Merge pull request #18641 from maribu/cpu/arm7_common/alignment
...
cpu/arm7_common: align stacks correctly
2022-10-13 13:59:18 +02:00
Benjamin Valentin
aa6e8cafcf
cpu/stm32: enable usbdev_fs for STM32F1
2022-10-13 12:00:22 +02:00
benpicco
5f75f7fa7d
Merge pull request #18729 from gschorcht/cpu/stm32/periph/usbdev_fs/pma_access
...
cpu/stm32/periph/usbdev_fs: support for STM32F1 family
2022-10-13 03:27:01 +02:00
Marian Buschsieweke
f57a15131e
cpu/arm7_common: align stacks correctly
...
`thread_stack_init()` didn't correctly set up the stack alignment.
This fixes the issue and brings the function closer to the Cortex M
version, laying the groundwork for future code duplication.
This fixes https://github.com/RIOT-OS/RIOT/issues/11885
2022-10-12 21:53:16 +02:00
Gunar Schorcht
96fad3fb3b
Merge pull request #18720 from maribu/cpu/esp32/uart
...
cpu/esp_common/periph_uart: fix call to _uart_set_mode
2022-10-12 15:17:01 +02:00
Gunar Schorcht
a76297c55e
cpu/stm32/periph/usbdev_fs: small cleanup of comment formatting
2022-10-12 15:15:10 +02:00
Gunar Schorcht
dde72ad41b
cpu/stm32/periph/usbdev_fs: implement PMA access schemes
...
There are two schemes for accessing the packet buffer area (PMA) from the CPU:
- 2 x 16 bit/word access scheme where two 16-bit half-words per word can be accessed. With this scheme the access can be half-word aligned and the PMA address offset corresponds therefore to the local USB IP address. The size of the PMA SRAM is usually 1024 byte.
- 1 x 16 bit/word access scheme where one 16-bit half word per word can be accessed. With this scheme the access can only be word-aligned and the PMA address offset to a half-word is therefore twice the local USB IP address. The size of the PMA SRAM is usually 512 byte.
Which access scheme is used depends on the STM32 model.
2022-10-12 15:15:10 +02:00
Gunar Schorcht
0177018277
cpu/stm32/periph/usbdev_fs: always use 16-bit addresses for PMA
...
The addressing of the Packet buffer Memory Area (PMA) is done locally in the USB IP core in half-words with 16-bit. The `_ep_in_buf` and `_ep_out_buf` arrays which hold these USB IP local addresses in the PMA for initialized EPs therefore always use `uint16_t`.
2022-10-12 14:19:30 +02:00
Gunar Schorcht
add766f3e1
cpu/stm32/periph/usbdef_fs: emulate disconnect/connect
...
If the MCU does not have an internal D+ pullup and there is no dedicated GPIO to simulate a USB disconnect, the D+ GPIO is temporarily configured as an output and pushed down to simulate a disconnect/connect cycle to allow the host to recognize the device. However, this requires an external pullup on D+ signal to work
2022-10-12 14:19:23 +02:00
Gunar Schorcht
58ebf02e58
cpu/stm32/periph/usbdev_fs: configure USB clock predivider
...
If `RCC_CFGR_USBPRE` is defined, the USB device FS clock of 48 MHz is derived from the PLL clock. In this case the PLL clock must be configured and must be either 48 MHz or 72 MHz. If the PLL clock is 72 MHz it is pre-divided by 1.5, the PLL clock of 48 MHz is used directly.
2022-10-12 14:18:55 +02:00
Martine Lenders
b35a291332
Merge pull request #18718 from MrKevinWeiss/pr/fixnightlies
...
Fix kconfig models breaking nightlies
2022-10-11 15:07:50 +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
Marian Buschsieweke
6d874c2882
cpu/esp_common/periph_uart: fix call to _uart_set_mode
...
The parameters for parity and stop bits was confused, resulting in
the following compilation error with GCC 12.2.0:
/home/maribu/Repos/software/RIOT/cpu/esp_common/periph/uart.c: In function '_uart_config':
/home/maribu/Repos/software/RIOT/cpu/esp_common/periph/uart.c:394:61: error: implicit conversion from 'uart_stop_bits_t' to 'uart_parity_t' -Werror=enum-conversion]
394 | if (_uart_set_mode(uart, _uarts[uart].data, _uarts[uart].stop,
| ~~~~~~~~~~~~^~~~~
/home/maribu/Repos/software/RIOT/cpu/esp_common/periph/uart.c:395:42: error: implicit conversion from 'uart_parity_t' to 'uart_stop_bits_t' -Werror=enum-conversion]
395 | _uarts[uart].parity) != UART_OK) {
| ~~~~~~~~~~~~^~~~~~~
cc1: all warnings being treated as errors
This swaps the parameters.
2022-10-10 14:27:27 +02:00
MrKevinWeiss
82dca7841f
cpu/stm32: fix stm32f3 kconfig model
...
MODULE_USBDEV_SYNOPSYS_DWC2 was being selected when it shouldn't
2022-10-10 12:37:10 +02:00
MrKevinWeiss
842ba5f51c
cpu/stm32: fix kconfig model usb clock
2022-10-10 12:10:29 +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
Marian Buschsieweke
90c92797bd
Merge pull request #18697 from kaspar030/cortexm_clear_fpu_state_on_thread_exit
...
cpu/cortexm: clear FPU state in `cpu_switch_context_exit()`
2022-10-06 19:05:38 +02:00
5cc43e5d5e
cpu/cortexm: clear FPU state in cpu_switch_context_exit()
2022-10-05 22:17:26 +02:00
Dylan Laduranty
d7d91935a4
Merge pull request #18680 from gschorcht/drivers/usbdev_stm32f3
...
cpu/stm32/periph/usbdev_fs: add support for STM32F3 family
2022-10-05 18:35:53 +02:00
Dylan Laduranty
1a1b41bea5
Merge pull request #18688 from benpicco/cpu/sam0_common-muxpos
...
cpu/sam0_common: ADC keep muxpos as legacy define
2022-10-05 16:56:26 +02:00
Marian Buschsieweke
f02bc5791a
Merge pull request #18571 from maribu/sys/tiny_strerror
...
sys/tiny_strerror: add tiny `strerror()` implementation
2022-10-05 09:24:40 +02:00
Gunar Schorcht
08bd418baa
cpu/stm32/periph/usbdev_fs: coding style fix
2022-10-05 09:15:29 +02:00
Gunar Schorcht
7f4613da34
cpu/stm32/periph/usbdev_fs: changes to support STM32F3
2022-10-05 09:15:29 +02:00
Gunar Schorcht
1fde5a4401
cpu/stm32/periph/usbdev_fs: support GPIO for USB connect/disconnect
...
Since some STM32 MCU don't have internal D+ pullup, there are boards that use a GPIO for USB bus connect/disconnect.
2022-10-05 09:15:29 +02:00
Benjamin Valentin
5843ff4127
cpu/sam0_common: ADC keep muxpos as legacy define
2022-10-04 15:45:25 +02:00
Gunar Schorcht
3d1a3bf560
cpu/stm32/periph/usbdev_fs: allow USB signals as additional function
...
For a number of STM32 MCUs with the USB-FS device interface the signals USB_DP and USB_DM are not defined as GPIO alternative function but as additional function. Additional functions are directly selected/enabled through peripheral registers hand have not to be configured. In this case, the configuration defines GIO_AF_UNDEF as alternative function.
2022-10-04 13:59:43 +02:00
Gunar Schorcht
20bdd3452e
cpu/stm32/periph/usbdev_fs: conditional configuration of CRS
...
Conditional configuration of CRS_CR_AUTOTRIMEN allows the compilation of the driver for STM32 MCUs that don't have Clock Recovery System.
2022-10-04 13:59:43 +02:00
Gunar Schorcht
66d0f948ba
cpu/stm32/periph/usbdev_fs: fix register name
...
RCC_APB1SMENR1 is used if RCC_APB1SMENR_USBSMEN is defined. Without this fix, the conditional doesn't have any effect.
2022-10-04 13:59:43 +02:00
benpicco
429ee839cc
Merge pull request #18676 from krzysztof-cabaj/nucleo-l4r5zi-ADC
...
boards/nucleo-l4r5zi: support for ADC
2022-10-04 13:26:16 +02:00
Dylan Laduranty
11aebb6003
Merge pull request #18592 from gschorcht/pkg/tinyusb
...
pkg/tinyusb: add tinyUSB as package
2022-10-04 13:08:36 +02:00
Gunar Schorcht
75071319de
cpu/stm32: define HSE_VALUE for tinyUSB Synopsys DWC2 driver
2022-10-04 11:10:43 +02:00
Gunar Schorcht
9cf0119233
pkg/tinyusb: add tinyusb_hw_defaults.h for platform specific defaults
2022-10-04 07:40:18 +02:00
krzysztof-cabaj
3a23f2632e
boards/nucleo-l4r5zi: add ADC support
2022-10-03 17:13:20 -04:00
Marian Buschsieweke
3227fb3b17
Merge pull request #18619 from maribu/core/mutex/cleanup
...
core/mutex: clean up
2022-10-03 10:58:07 +02:00
benpicco
da6b16da7e
Merge pull request #18669 from benpicco/mtd_native_ftell
...
cpu/native: get mtd size from file size
2022-10-01 16:47:48 +02:00
Gunar Schorcht
76848492b0
cpu/stm32: add tinyUSB package support
2022-09-30 19:05:51 +02:00
Gunar Schorcht
8696783853
cpu/esp32: enable tinyUSB package for ESP32-S2 and ESP32-S3
2022-09-30 19:05:51 +02:00
3ee3d1b9ac
Merge pull request #18562 from MrKevinWeiss/pr/removemips
...
cpu/mips: Remove all mips
2022-09-30 10:47:09 +02:00
Benjamin Valentin
debdbf91d9
cpu/native: get mtd size from file size
2022-09-29 14:55:30 +02:00
Benjamin Valentin
0aa931ad7d
cpu/native: povide real_ftell() function
2022-09-29 14:55:27 +02:00
benpicco
45afb8f986
Merge pull request #18644 from gschorcht/drivers/synopsys_dwc2
...
drivers: add driver for Synopsys DWC2 that is used as USB OTG peripheral on STM32 and ESP32x SoCs
2022-09-29 04:44:32 +02:00
benpicco
81a00f0056
Merge pull request #18658 from benpicco/cpu/sam0_adc-rework
...
cpu/sam0_common: adc: drop pin from adc_conf_chan_t
2022-09-28 17:27:38 +02:00
benpicco
09fd98c0c6
Merge pull request #18636 from benpicco/cpu/cortexm.ld
...
cpu: make use of `cortexm.ld`
2022-09-28 14:41:23 +02:00
benpicco
eed92cdb73
Merge pull request #18494 from chrysn-pull-requests/pkg_version-makefile-is-not-shell
...
pkg: Move versions to dedicated line
2022-09-28 13:24:33 +02:00
Benjamin Valentin
a7c0bf5341
cpu/sam0_common: adc: drop pin from adc_conf_chan_t
2022-09-27 19:36:10 +02:00
benpicco
baf1687951
Merge pull request #18146 from benpicco/cpu/sam0_common/adc-diffmode
...
cpu/sam0_common: adc: add support for differential mode
2022-09-27 17:34:07 +02:00
MrKevinWeiss
6cad5d2477
cpu/mips: Remove all mips
2022-09-27 13:42:37 +02:00
c8a57747dd
cpu/atxmega: update ASPACE <-> ASIZE condition
2022-09-27 10:20:22 +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
78fc60c700
cpu/stm32: 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
7db66e49b3
drivers: add USB OTG FS/HS driver for Synopsys DWC2 IP core
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
Marian Buschsieweke
0ba5c314c1
cpu/atxmega: add missing includes
2022-09-26 18:54:39 +02:00
chrysn
feff412bcc
pkg: Move versions to dedicated line
...
Makefiles don't do comments, so these were forwarded into the variable.
*Most* users would expand the arguments to a shell where it'd be
ignored, but not all of them.
Contributes-To: https://github.com/RIOT-OS/RIOT/pull/18489
(This is also where the one version that is added here was removed).
2022-09-26 17:45:54 +02:00
Marian Buschsieweke
d75722b227
Merge pull request #18638 from maribu/cpu/arm7_common
...
cpu/arm7_common: fix compilation with 12.2.0
2022-09-24 13:47:55 +02:00
benpicco
a0ddf006af
Merge pull request #18623 from maribu/cpu/avr8_common/strings
...
cpu/avr8_common: add strings.h for compatibility
2022-09-23 20:35:23 +02:00
Marian Buschsieweke
e7c030cc86
cpu/arm7_common: fix compilation with 12.2.0
...
This fixes:
Assembler messages:
Fatal error: unknown option `-ggdb'
2022-09-23 18:41:12 +02:00
Benjamin Valentin
a3b23827e1
cpu/lm4f120: make use of cortexm.ld
2022-09-23 15:55:30 +02:00
Benjamin Valentin
adeeb2a3e4
cpu/lpc1768: make use of cortexm.ld
2022-09-23 15:55:21 +02:00
Benjamin Valentin
338f0ff604
cpu/sam_common: make use of cortexm.ld
2022-09-23 15:55:12 +02:00
Benjamin Valentin
516b4b6c7f
cpu/nrf51: use cortexm.ld
2022-09-23 15:55:05 +02:00
Marian Buschsieweke
023b6ae7cf
cpu/atxmega: fix building with avr-libc 2.1.0
...
Due to the lack of new official avr-libc releases (which includes the
vendor header files needed to support different version of MCUs),
support for new MCUs was lacking. Distributions such as Debian addressed
this by extending the upstream code with vendor header files directly
obtained from Atmel / Microchip, but without paying attention to
details. As such, a naming inconsistency (ASIZE vs ASPACE) between
officially supported MCUs and new MCUs was introduced.
Now that avr-libc 2.1.0 is officially released, hardware support for new
MCUs is provided by upstream out of the box and only ASIZE is used as
name. This commit adds a bit of glue code to create aliases for ASIZE on
older avr-libc versions where needed. This fixes compilation with the
new avr-libc release and results in more consistent code.
2022-09-22 13:56:53 +02:00
Marian Buschsieweke
f1da9f6695
cpu/avr8_common: add strings.h for compatibility
2022-09-22 08:33:37 +02:00
Marian Buschsieweke
f6ed9fd781
cpu/avr8_common: use tiny_strerror_as_strerror
...
The custom `strerror()` is dropped and replaced by the module
`tiny_strerror_as_strerror`.
2022-09-20 15:51:11 +02:00
Marian Buschsieweke
e402f1d885
Merge pull request #18418 from maribu/cpu/stm32/periph/stm32_eth_tracing
...
cpu/stm32/periph_eth: Add stm32_eth_tracing
2022-09-18 22:19:34 +02:00
Benjamin Valentin
838a5e4bd3
netdev_drivers: make sure to signal LINK_UP at least once
2022-09-16 22:57:28 +02:00
Benjamin Valentin
66153a47cf
treewide: fix typos
2022-09-15 23:31:40 +02:00
Marian Buschsieweke
6790167a18
Merge pull request #18226 from benpicco/cpu_get_last_instruction
...
cpu: cpu_print_last_instruction() -> cpu_get_caller_pc()
2022-09-15 20:06:10 +02:00
b3e99c6b8d
Merge pull request #18596 from benpicco/fix_typos
...
treewide: fix typos
2022-09-15 19:22:26 +02:00
Benjamin Valentin
7abaae7bbd
treewide: fix typos
2022-09-15 12:12:23 +02:00
benpicco
b992b73087
Merge pull request #18594 from benpicco/socket_zep-chan
...
socket_zep: ignore packets sent on the wrong radio channel
2022-09-15 11:50:13 +02:00
Benjamin Valentin
ea917f4b07
cpu: cpu_print_last_instruction() -> cpu_get_caller_pc()
2022-09-15 10:49:56 +02:00
benpicco
b5bf5da38d
Merge pull request #18444 from kfessel/p-fix-doc-grp
...
doc: fix unbalaced grouping
2022-09-14 22:19:28 +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
Karl Fessel
05f114d0af
doc: fix unbalaced grouping
...
- most were trivial
- missing group close or open
- extra space
- no doxygen comment
- name commad might open an implicit group
this hould also be implicit cosed but does not happen somtimes
- crazy: internal declared groups have to be closed internal
2022-09-14 15:05:25 +02:00
Marian Buschsieweke
44b62e879d
cpu/stm32/periph_eth: add stm32_eth_tracing
...
Add tracing support via GPIOs to trace the basic state of the Ethernet
peripheral. The following signals are provided:
- One GPIO pin is toggled on entry of the Ethernet ISR
- On TX start an GPIO is set, on TX completion it is cleared
- On RX complete an GPIO is set, once this is passed to the upper layer
the GPIO is cleared again
In order to reduce the overhead, GPIO LL is used. By default the
on-board LEDs are used as tracing GPIOs. This makes it easy to debug
when the state machine gets stuck without the need to attach a scope or
logic analyzer.
2022-09-14 14:00:27 +02:00
Marian Buschsieweke
efc307455e
cpu/stm32/periph_eth: increase debug output
2022-09-14 13:58:40 +02:00
Benjamin Valentin
bf1c580b0c
socket_zep: ignore packets sent on the wrong radio channel
2022-09-14 11:50:14 +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
f1830294c0
cpu/esp8266: adjust THREAD_STACKSIZE_{SMALL/TINY}
2022-09-02 08:57:09 +02:00
Gunar Schorcht
6386580b8f
cpu/esp_common/freertos: lock/unlock mutex if scheduling is not active
...
If module `core_mutex_priority_inheritance` is enabled, the scheduling has to be active to lock/unlock the mutex/rmutex used by FreeRTOS semaphores. If scheduling is not active FreeRTOS semaphore function always succeed.
2022-09-02 08:54:31 +02:00
Gunar Schorcht
e1a613ac5c
cpu/esp_common: improve thread safety for locking functions
...
For ESP32x, the operations on recursive locking variables have to be guarded by disabling interrupts to prevent unintended context switches. For ESP8266, interrupts must not be disabled, otherwise the intended context switch doesn't work when trying to lock a rmutex that is already locked by another thread.
2022-09-02 08:54:31 +02:00
Gunar Schorcht
1eb18c2949
cpu/esp_common: improve thread safety for locking functions
...
Dynamic allocation and initialization of the mutex used by a newlib locking variable must not be interrupted. Since a thread context switch can occur on exit from an ISR, the allocation and initialization of the mutex must be guarded by disabling interrupts. The same must be done for the release of such a locking variable.
2022-09-01 15:50:26 +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
Benjamin Valentin
361a94460a
cpu/sam0_common: add ADC pin aliases
2022-08-31 18:23:44 +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
Kevin "Tristate Tom" Weiss
8a340fec11
Merge pull request #18223 from benpicco/cpu/sam0_common-spi_clk
...
cpu/sam0_common: spi: limit clock to source clock
2022-08-30 19:30:49 +02:00
benpicco
c9bbac816c
Merge pull request #18527 from dylad/pr/fix_sam0_timer_stop
...
cpu/sam0/timer: supply all clocks before accessing any regs
2022-08-30 15:21:31 +02:00
Gunar Schorcht
d130f8cc8c
cpu/esp_common: fix thread_arch.c for ESP32-S2
2022-08-30 15:08:39 +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
Marian Buschsieweke
57201e7521
Merge pull request #18478 from benpicco/cpu/nrf5x_i2c_spi_share
...
cpu/nrf5x: allow providing multiple I2C and SPI buses on the same shared periph
2022-08-30 12:18:05 +02:00
Benjamin Valentin
7b7eb9d17b
cpu/nrf5x: allow multiple I2C and SPI buses on a shared periph
2022-08-30 10:05:34 +02:00
Dylan Laduranty
950a7d51e9
cpu/sam0/timer: supply all clocks before accessing any regs
...
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2022-08-30 09:25:46 +02:00
Gunar Schorcht
14edc937bf
cpu/esp_common: add ESP32-S2 support in module esp_xtensa
2022-08-29 17:19: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
b13bc776c2
cpu/esp_common/freertos: changes required for BLE
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
28cedd52a0
Merge pull request #18201 from benpicco/slip_dose_rxqueue
...
drivers/{dose, slipdev, sam0_eth}: generate RX event for queued packets
2022-08-26 13:25:13 +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
0574f463bb
cpu/esp_common/freertos: changes required for BLE
2022-08-24 18:02:21 +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
35676ca712
cpu/esp_common: fix of blocking mechanism in FreeRTOS queus
...
When FreeRTOS semaphores, as required by ESP-IDF, are used together with `gnrc_netif`, RIOT may crash if `STATUS_RECEIVE_BLOCKED` is used as a blocking mechanism in the FreeRTOS adaptation layer. The reason for this is that `gnrc_netif` uses thread flags since PR #16748 . If the `gnrc_netif` thread is blocked because of a FreeRTOS semaphore, and is thus in `STATUS_RECEIVE_BLOCKED` state, the `_msg_send` function will cause a crash because it then assumes that `target->wait_data` contains a pointer to a message of type `msg_t`, but by using thread flags it contains the flag mask. This situation can happen if the ESP hardware is used while another thread is sending something timer controlled to the `gnrc_netif` thread.
To solve this problem `STATUS_MUTEX_LOCKED` is used instead of `STATUS_RECEIVE_BLOCKED` and `STATUS_SEND_BLOCKED`
2022-08-24 09:05:25 +02:00
Gunar Schorcht
26956a9a2b
cpu/esp_common: use BLE as netdev_default if nimble_netif is used
...
To reduce the required RAM in default configuration, the BLE interface is used as netdev_default instead of ESP-NOW. Further network interfaces can be enabled with the modules `esp_now`, `esp_wifi` or `esp_eth`.
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
cdc8a725a4
cpu/esp_common/freertos: changes required for BLE
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
0bef4c0c30
pkg/nimble: conditional compilation of nRF5x code
...
The package uses the nRFx SDK package `nrfx`. In addition, the `mynewt-nimble` repository contains some files (`porting/nimble/src/hal_timer.c` and `porting/npl/riot/src/nrf5x_isr.c`) that are compilable only for nRF MCUs. To allow the compilation for other platforms, the use of the `nrfx` package and the compilation of these files are now dependent on the use of any nRF5x MCU.
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
benpicco
00ede8f7d2
Merge pull request #18421 from gschorcht/cpu/esp32/add_esp32s3_cpu_support
...
cpu/esp32: add support for ESP32-S3
2022-08-22 17:33:05 +02:00
Benjamin Valentin
14b5eca22d
cpu/nrf9160: add locking for shared peripherals
2022-08-19 15:47:53 +02:00
Benjamin Valentin
5129d249e9
cpu/nrf52: add locking for shared peripherals
2022-08-19 15:47:53 +02:00
Benjamin Valentin
74dc558972
cpu/{sam0_common, stm32}: select netdev_legacy_api in KConfig
2022-08-17 23:37:05 +02:00
Leandro Lanzieri
2dd59236c8
Merge pull request #18423 from MrKevinWeiss/pr/disable/hashchecks
...
.murdock: disable hash checks of kconfig/make
2022-08-17 18:30:36 +02:00
benpicco
2321841ccc
Merge pull request #18426 from maribu/sys/net/gnrc/netif/api_check
...
sys/net/gnrc/netif: allow checking if a netdev is legacy or new API
2022-08-17 16:50:16 +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
MrKevinWeiss
9b6036def3
cpu/efm32/periph: remove seriesn in kconfig
...
As this is not handled in the makefile.dep it does not need to be modeled in kconfig.
2022-08-17 14:37:23 +02:00
MrKevinWeiss
f79f43903d
cpu/periph_eth: Fix kconfig model
...
This probably can be done better as the periph_eth should not be
only part of the stm32 as the sam0 also uses it.
2022-08-17 14:37:22 +02:00
Marian Buschsieweke
276ad5716a
sys/net/gnrc/netif: allow checking if a netdev is legacy or new API
...
A if `netdev_driver_t::confirm_send()` is provided, it provides the
new netdev API. However, detecting the API at runtime and handling
both API styles comes at a cost. This can be optimized in case only
new or only old style netdevs are in use.
To do so, this adds the pseudo modules `netdev_legacy_api` and
`netdev_new_api`. As right now no netdev actually implements the new
API, all netdevs pull in `netdev_legacy_api`. If `netdev_legacy_api` is
in used but `netdev_new_api` is not, we can safely assume at compile
time that only legacy netdevs are in use. Similar, if only
`netdev_new_api` is used, only support for the new API is needed. Only
when both are in use, run time checks are needed.
This provides two helper function to check for a netif if the
corresponding netdev implements the old or the new API. (With one
being the inverse of the other.) They are suitable for constant folding
when only new or only legacy devices are in use. Consequently, dead
branches should be eliminated by the optimizer.
2022-08-17 12:56:07 +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
d42b20d49f
cpu/esp_common: changes for ESP32-S3
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
f2720940d7
Merge pull request #18283 from jia200x/pr/opendsme_nrf52840
...
drivers/nrf802154: do not filter broadcast PAN ID
2022-08-16 11:43:07 +02:00
Gunar Schorcht
491d4f30e2
cpu/nrf52: nRF52x MCUs support Bluetooth 5 Advertising
2022-08-12 16:15:20 +02:00
Gunar Schorcht
73eb3cba72
kconfig: move BLE_* features to common features file
...
These BLE_* features are not necessarily nRF5x specific and should be defined as common features. The commit also fixes the alphabetical order for HAS_RUST_TARGET.
2022-08-12 16:14:58 +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
Kevin "Tristate Tom" Weiss
98ec922c67
Merge pull request #18430 from jia200x/pr/kconfig/fix_have_ieee802154_radio_hal_interface
...
Kconfig/ieee802154: fix typo in HAL selector and add missing radios
2022-08-11 09:05:38 +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
Jose Alamos
3c849381e2
drivers/nrf52840: select HAVE_IEEE802154_RADIO_HAL_INTERFACE
2022-08-10 13:50:26 +02:00
Jose Alamos
c0dcbc247e
Kconfig/ieee802154: fix typo in hal selector
2022-08-10 13:43:04 +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
Marian Buschsieweke
bf67a9cdc5
cpu/stm32/periph_eth: optimize IRQ handler
...
We can just clear both TX and RX IRQ flags in any case, as clearing a
non-set flag is just a nop.
2022-08-09 07:33:34 +02:00
benpicco
26faa881b6
Merge pull request #18416 from maribu/cpu/stm32/periph/stm32_eth/bugfix
...
cpu/stm32/periph_eth: fix horrible memory corruption bug
2022-08-09 03:01:33 +02:00
Marian Buschsieweke
82fbe08728
cpu/stm32/periph_eth: fix typo in initialization code
...
A single character type resulted in way fewer TX descriptors being
available than allocated. Not only resulted this in wasting memory,
but also when more iolist chunks than descriptors are send, the
```C
assert(iolist_count(iolist) <= ETH_TX_DESCRIPTOR_COUNT);
```
does not trigger. As a result, old TX descriptors are being overwritten
in this case.
2022-08-08 15:13:27 +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
da83c30021
cpu/esp_common: add netdev_register for NETDEV_ESP_WIFI
2022-08-02 09:34:59 +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
cd3c053d32
cpu/esp32: qout mode is no longer required for SPI RAM
2022-08-01 15:11:11 +02:00
Leandro Lanzieri
a4d5169e95
cpu/nrf5x_common/radio/Kconfig.nrf5x: indicate radio HAL implementation
2022-07-28 09:32:25 +02:00
Leandro Lanzieri
f266243477
cpu/native/socket_zep/Kconfig: indicate the radio HAL is implemented
2022-07-28 09:32:25 +02:00
Leandro Lanzieri
16ffe80525
cpu/cc2538/radio/Kconfig: indicate that radio HAL is implemented
2022-07-28 09:32:25 +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
1716638792
cpu/stm32/periph_eth: model in Kconfig
2022-07-25 11:08:32 +02:00
Leandro Lanzieri
88df973783
cpu/sam0_common/sam0_eth: model in Kconfig
2022-07-25 11:08:32 +02:00
Leandro Lanzieri
575e58dc5b
cpu/esp32/esp-eth: model in Kconfig
2022-07-25 11:08:32 +02:00
Leandro Lanzieri
6679663647
cpu/native/cli_eui_provider: model in Kconfig
2022-07-22 15:57:22 +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
0645371400
cpu/esp_common: rename architecture to riscv_esp32 to rv32
2022-07-20 17:18:56 +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
Gunar Schorcht
a24ddb8517
cpu/esp*: cleanups mainly to reduce the vera++ warnings
2022-07-20 06:29:43 +02:00
Gunar Schorcht
9c1498636c
cpu/esp32/periph: add some sanity checks
2022-07-20 06:28:55 +02:00
benpicco
b32f28adb4
Merge pull request #18324 from gschorcht/cpu/esp32/split_periph_conf_into_common_and_specific
...
cpu/esp32: split periph_cpu.h into ESP32x common and ESP32 specific parts
2022-07-20 01:56:00 +02:00
benpicco
df34926abb
Merge pull request #18320 from gschorcht/cpu/esp32/split_kconfig_to_specific_and_common
...
cpu/esp32: split Kconfig into ESP32x common and ESP32 specific parts
2022-07-20 00:31:22 +02:00
benpicco
bafb7d53c5
Merge pull request #18326 from gschorcht/cpu/esp32/use_variant_specific_adc_and_gpio
...
cpu/esp32: extend file names of CPU specific files by CPU family
2022-07-19 15:13:44 +02:00
benpicco
5225c58736
Merge pull request #18325 from gschorcht/cpu/esp32/move_linker_script_to_family_dir
...
cpu/esp32: move linker scripts to a ESP32x variant specific directory
2022-07-19 12:55:45 +02:00
Gunar Schorcht
5565da394f
cpu/esp32: split Kconfig into common and variant specific parts
...
Split the configuration in Kconfig into a part that is common for all ESP32x SoCs and a part that is specific for ESP32 varaiant.
2022-07-19 10:48:00 +02:00
benpicco
c432df36c2
Merge pull request #18323 from gschorcht/cpu/esp32/split_cpu_conf_into_common_and_specific
...
cpu/esp32: split cpu_conf.h into ESP32x common and ESP32 specific parts
2022-07-19 10:37:35 +02:00
Gunar Schorcht
3919e8f6df
cpu/esp32: split periph_cpu.h into ESP32x and ESP32 parts
...
Split the defintions for peripherals in periph_conf.h into a part that is common for all ESP32x SoCs and a part that is specific for ESP32.
2022-07-19 06:05:03 +02:00
benpicco
ad4de1db5b
Merge pull request #18317 from gschorcht/cpu/esp32/esp_hw_counter_feature_change
...
cpu/esp32: make esp_hw_counter feature dependent on ESP32x SoC family
2022-07-19 05:14:47 +02:00
benpicco
14292bdce2
Merge pull request #18322 from gschorcht/cpu/esp32/split_sdkconfig_into_common_and_specific
...
cpu/esp32: split sdkconfig.h into ESP32x common and ESP32 specific parts
2022-07-19 02:57:06 +02:00
benpicco
44ed21d9e4
Merge pull request #18321 from gschorcht/cpu/esp32/split_doc_into_common_and_specific
...
cpu/esp32: split the doc into ESP32x common and ESP32 specific parts
2022-07-19 00:43:18 +02:00
benpicco
ad1d393214
Merge pull request #18319 from gschorcht/cpu/esp_common/module_xtensa_dependency_change
...
cpu/esp_common: MODULE_XTENSA has to depend on HAS_ARCH_ESP_XTENSA
2022-07-18 23:43:33 +02:00
benpicco
e1bc1767af
Merge pull request #18260 from gschorcht/cpu/esp32/add_riscv_platform_code
...
cpu/esp32: add platform code for RISC-V based ESP32x SoCs
2022-07-18 17:43:02 +02:00
Gunar Schorcht
257d4c3677
cpu/esp32: move linker scripts to a CPU family specific dir
2022-07-18 17:18:59 +02:00
Gunar Schorcht
5f45ca5a2a
cpu/esp32: extend file names of CPU specific files by CPU family
...
To allow the compilation of different ESP32x SoC variants, the file names of ESP32 specific periph/adc_arch.c and periph/gpio_arch.c are extended by the ESP32x SoC family.
2022-07-18 17:08:34 +02:00
Gunar Schorcht
97ab0cd76d
cpu/esp32: split cpu_conf.h into ESP32x and ESP32 parts
...
Split the CPU configuration in cpu_conf.h into a part that is common for all ESP32x SoCs and a part that is specific for ESP32.
2022-07-18 16:48:56 +02:00
Gunar Schorcht
6b3fe4aa70
cpu/esp32: introduce CPU_ARCH_ESP32_XTENSA in Kconfig
2022-07-18 16:37:08 +02:00
Gunar Schorcht
32b1546053
cpu/esp32: split sdkconfig.h into ESP32x and ESP32 parts
...
Split the SDK defintions sdkconfig.h into a part that is common for all ESP32x SoCs and a part that is specific for ESP32.
2022-07-18 16:26:00 +02:00
Gunar Schorcht
944648c4b7
cpu/esp32/bootloader: split sdkconfig.h into ESP32x and ESP32 parts
...
Split the defintions for bootloader in sdkconfig.h into a part that is common for all ESP32x SoCs and a part that is specific for ESP32.
2022-07-18 16:25:48 +02:00
Gunar Schorcht
7ddfb3de42
cpu/esp32: split the doc into ESP32x and ESP32 parts
...
Split the documentation into a part that is common for all ESP32x SoCs and a part that is specific for ESP32.
2022-07-18 16:16:26 +02:00
benpicco
263b918d7c
Merge pull request #18316 from gschorcht/cpu/esp32/use_cpu_fam
...
cpu/esp32: use CPU_FAM and CPU_ARCH for ESP32x SoC variant dependent compilation
2022-07-18 15:43:59 +02:00
Gunar Schorcht
08cb7adf62
cpu/esp_common: MODULE_XTENSA has to depend on HAS_ARCH_ESP_XTENSA
...
ESP32x SoC use either Xtensa cores or RISC-V cores. The Xtensa vendor code has to be compiled only for ESP32x SoCs that are Xtensa-based. Therefore, MODULE_XTENSA has to depend on HAS_ARCH_ESP_XTENSA instead of HAS_ARCH_ESP
2022-07-18 14:44:02 +02:00
Gunar Schorcht
778ff10978
cpu/esp_common: add module esp_riscv to Kconfig
2022-07-18 13:52:13 +02:00
Gunar Schorcht
4b86ae3b5e
cpu/esp_common: add module esp_riscv to makefiles
2022-07-18 13:51:33 +02:00
Gunar Schorcht
c4132573f4
cpu/esp_common: platform-specific code for RISC-V based ESP32x SoCs
2022-07-18 13:51:33 +02:00
Gunar Schorcht
b59f8b59da
cpu/esp32: platform-independent formatting in DEBUG
2022-07-18 13:51:33 +02:00
Gunar Schorcht
b5ea942d12
cpu/esp32: make esp_hw_counter feature dependent on ESP32x SoC family
...
Feature esp_hw_counter is not supported by all ESP32x SoC variants (families). Therefore it has to be defined dependent on defined CPU_FAM.
2022-07-18 13:28:58 +02:00
Gunar Schorcht
d0bb51aacc
cpu/esp*: move CPU_* definitions to CPU-specific Makefile.features
2022-07-18 13:05:21 +02:00
Gunar Schorcht
06d3616710
cpu/esp32: move CPU_FAM definition to board definition
...
To support ESP32x SoC families with existing Makefiles, CPU_FAM has to be defined by board definition.
2022-07-18 13:05:21 +02:00
Gunar Schorcht
fd67f1402f
cpu/esp_common: use CPU_ARCH in Makefile for compile options
...
To support ESP32x families, CPU_ARCH is used instead of CPU in Makefiles to define architecture dependent compile options.
2022-07-18 13:05:21 +02:00
Gunar Schorcht
55b8c15fe0
cpu/esp_common: use CPU_FAM_* instead of MCU_*
...
To support ESP32x families with the existing implementation, CPU_FAM_* is used instead of MCU_* in source code.
2022-07-18 13:05:21 +02:00
Gunar Schorcht
ff8baaae79
cpu/esp32: use CPU_FAM_* instead of MCU_*
...
To support ESP32x families with the existing implementation, CPU_FAM_* is used instead of MCU_* in source code.
2022-07-18 13:05:21 +02:00
Gunar Schorcht
0bec8a81ac
cpu/esp32: use CPU_FAM instead of CPU in Makefiles
...
To support ESP32x families with the existing Makefiles, CPU_FAM is used instead of CPU in the Makefiles.
2022-07-18 13:05:21 +02:00
Gunar Schorcht
14fd3735a2
cpu/esp32: move ESP32 specific Kconfigs to ESP32 submenu
2022-07-18 09:52:26 +02:00
Gunar Schorcht
f066260a9f
cpu/esp8266: move ESP8266 specific Kconfigs to ESP8266 submenu
2022-07-18 09:52:11 +02:00
Gunar Schorcht
5f0ad453b2
cpu/esp_common: move ESP specific Kconfigs to ESP submenu
2022-07-18 09:51:45 +02:00
benpicco
365fbed906
Merge pull request #18279 from gschorcht/cpu/esp32/periph_hal_esp32_i2c
...
cpu/esp32: use ESP-IDF i2c HAL for ESP32 periph/i2c
2022-07-17 22:24:54 +02:00
benpicco
2c9f338791
Merge pull request #18271 from gschorcht/periph_hal_esp32_adc
...
cpu/esp32: use ESP-IDF adc/dac HAL for periph/adc and periph/dac
2022-07-17 20:06:09 +02:00
Gunar Schorcht
06aa8f2c42
cpu/esp_common: port periph/i2c_sw with calculated delays
...
Fixed delay values are replaced by calculated delays measured in CPU cycles in I2C software implementation. The advantage is that for each ESP SoC only a clock calibration offset has to be specified. The delay measured in CPU cycles are then then derived from current CPU frequency for the given bus speed. The disadvantage is that the calculated delays are not as precise as the predefined fixed delays.
2022-07-17 18:48:23 +02:00
Gunar Schorcht
c0becd2819
cpu/esp32: port periph/i2c_hw to ESP-IDF i2c HAL
2022-07-17 18:48:23 +02:00
Gunar Schorcht
43d2340eea
cpu/esp32: port periph/dac to ESP-IDF dac API
2022-07-17 17:16:49 +02:00
Gunar Schorcht
79ff1e5737
cpu/esp32: add dac to ESP-IDF interface API
2022-07-17 17:16:49 +02:00
Gunar Schorcht
11c9703675
cpu/esp32: port periph/adc to ESP-IDF interface API
2022-07-17 17:16:49 +02:00
benpicco
6ba048f80c
Merge pull request #18280 from gschorcht/cpu/esp32/periph_hal_esp32_pm
...
cpu/esp32: use ESP-IDF sleep API for periph/pm
2022-07-17 14:17:51 +02:00
Gunar Schorcht
a74a19e9f9
cpu/esp32: port periph/pm to ESP-IDF sleep API
2022-07-15 16:33:16 +02:00
Gunar Schorcht
9e011b653f
cpu/esp32: add adc to ESP-IDF initerface API
2022-07-15 16:17:03 +02:00
benpicco
dd806ce72e
Merge pull request #18270 from gschorcht/cpu/esp32/periph_hal_esp32_gpio
...
cpu/esp32: use ESP-IDF gpio HAL for periph/gpio
2022-07-15 15:44:13 +02:00
benpicco
295f4a5b04
Merge pull request #18281 from gschorcht/cpu/esp32/periph_hal_esp32_spi
...
cpu/esp32: use ESP-IDF spi HAL for periph/spi
2022-07-15 13:25:50 +02:00
benpicco
0c56e28fe1
Merge pull request #18282 from gschorcht/cpu/esp32/periph_hal_esp32_periph_timer
...
cpu/esp32: use ESP-IDF timer/interrupt HAL for periph/timer
2022-07-15 11:07:37 +02:00
Gunar Schorcht
d6eef52766
cpu/esp32: port periph/gpio to ESP-IDF gpio HAL
2022-07-15 11:03:32 +02:00
benpicco
1e8f3871fb
Merge pull request #18274 from gschorcht/cpu/esp32/periph_hal_esp32_uart
...
cpu/esp32: use ESP-IDF interrupt HAL for periph/uart
2022-07-15 10:58:46 +02:00
benpicco
de5472c76a
Merge pull request #18278 from gschorcht/cpu/esp32/periph_hal_esp32_can
...
cpu/esp32: use to ESP-IDF twai HAL for periph/can
2022-07-15 10:58:33 +02:00
Gunar Schorcht
9142edce03
cpu/esp32: port periph/spi to ESP-IDF spi LL API
2022-07-15 08:57:31 +02:00
Gunar Schorcht
8f3df0eee6
cpu/esp_common: move periph/spi to cpu/esp8266
...
periph/spi implementation can be used for ESP8266 only from now. An implementation using the ESP-IDF spi HAL interface is required for ESP32x SoCs.
2022-07-15 08:57:16 +02:00
Gunar Schorcht
3fd7e1ab17
cpu/esp32: port periph/timer to ESP-IDF interface API
2022-07-15 06:40:04 +02:00
benpicco
94e9116c04
Merge pull request #18276 from gschorcht/cpu/esp32/periph_hal_esp32_pwm
...
cpu/esp32: use ESP-IDF ledc HAL for periph/pwm
2022-07-14 18:09:01 +02:00
Gunar Schorcht
fccd3821dd
cpu/esp32: port periph/can to ESP-IDF twai HAL
2022-07-14 15:51:47 +02:00
Gunar Schorcht
09064aa056
cpu/esp32: PWM doc changes
2022-07-14 15:50:47 +02:00
Gunar Schorcht
2ae2facf90
cpu/esp32: port periph/pwm to ESP-IDF ledc HAL
2022-07-14 15:50:47 +02:00
Benjamin Valentin
34e11bf2bc
sys/architecture: introduce uinttxtptr_t
2022-07-13 23:19:33 +02:00
Gunar Schorcht
6dd2659846
cpu/esp32: replace startup by architecture dependent ESP-IDF startup
2022-07-12 08:01:36 +02:00
benpicco
ba37e93bd6
Merge pull request #18267 from gschorcht/cpu/esp32/periph_hal_esp32_timer
...
cpu/esp32: use ESP-IDF timer HAL for system timer and watchdog
2022-07-10 23:08:57 +02:00
Marian Buschsieweke
29d21938aa
Merge pull request #18210 from maribu/cpu/esp32
...
cpu/esp32: enforce MAXTHREADS is at least 3
2022-07-06 17:57:48 +02:00
Marian Buschsieweke
026854d788
cpu/esp32: make sure MAXTHREADS is at least 3
...
ESP32 has an esp_timer thread in addition to the main and the idle
thread. So applications that work fine with 2 threads on other
platforms will break on ESP32.
2022-07-06 09:00:13 +02:00
Dmitriy Okladov
9304e2bf37
cpu/stm32: support for B subfamily of g0 to determine ram length
2022-07-05 19:10:16 +03:00
Marian Buschsieweke
d337997e5a
Merge pull request #18277 from gschorcht/cpu/esp/periph_hal_esp32_hwrng
...
cpu/esp_common: use ESP-IDF random API for ESP32
2022-07-04 19:02:58 +02:00
Gunar Schorcht
02310b1148
cpu/esp_common: port periph/hwrng to ESP-IDF random API
2022-06-30 11:10:02 +02:00
Marian Buschsieweke
fcbba02daf
Merge pull request #18256 from Teufelchen1/chore/macos
...
Documentation: Renaming OS X to macOS
2022-06-30 07:05:48 +02:00
Jose Alamos
45ba9131c8
drivers/nrf802154: do not filter broadcast PAN ID
2022-06-29 17:39:30 +02:00
Jose Alamos
55dc62819a
drivers/nrf802154: fix CCA result
2022-06-29 17:32:45 +02:00
Jose Alamos
5a27241e22
drivers/nrf802154: fix variable initialization
2022-06-29 17:32:26 +02:00
Gunar Schorcht
ae48cfca33
cpu/esp32: port periph/rtt_hw_sys to ESP-IDF timer HAL
2022-06-29 08:37:43 +02:00
Gunar Schorcht
5261a930bb
cpu/esp32: port periph/rtt_hw_rtc to ESP-IDF interrupt HAL
2022-06-29 08:37:43 +02:00
Gunar Schorcht
7e19086a60
cpu/esp32: use ESP-IDF timer HAL for system timer in syscalls
2022-06-29 08:37:43 +02:00
Gunar Schorcht
0482eb1c90
cpu/esp32: use ESP-IDF timer HAL for peripheral timer definition
2022-06-29 08:35:38 +02:00
benpicco
a1ee44e114
Merge pull request #18263 from maribu/cpu/avr8/idle_stack
...
cpu/{atmega_common,atxmega}: increase idle thread stack size
2022-06-29 00:57:57 +02:00
benpicco
b00810c0e5
Merge pull request #18266 from gschorcht/cpu/esp32/variant_indpependent_syscalls
...
cpu/esp32: ESP32x SoC variant independent syscalls
2022-06-29 00:57:23 +02:00
benpicco
3b3c6d34b3
Merge pull request #18273 from gschorcht/cpu/esp32/periph_hal_esp32_cpuid
...
cpu/esp32: use ESP-IDF function esp_efuse_mac for CPU ID
2022-06-29 00:40:02 +02:00
Gunar Schorcht
c03933d08c
cpu/esp32: add ledc to ESP-IDF interface API
2022-06-28 18:28:27 +02:00
Gunar Schorcht
29199b20bd
cpu/esp32: add gpio to ESP-IDF interface API
2022-06-28 16:43:22 +02:00
benpicco
1b2360e6da
Merge pull request #18261 from gschorcht/cpu/esp32/use_esp_idf_interrupt_handling
...
cpu/esp32: use ESP-IDF interrupt handling API
2022-06-28 16:37:11 +02:00
Gunar Schorcht
4b2b0047cc
cpu/esp_common: port periph/uart to ESP-IDF uart API
...
This commit changes periph/uart to use ESP-IDF API for ESP32x SoCs. Furthermore, the MCU_* conditionals are inverted so that they can be tested for ESP8266. In all other cases the MCU is any ESP32x SoC
2022-06-28 16:25:24 +02:00
Gunar Schorcht
81caeb1bb1
cpu/esp32: add uart to ESP-IDF interface API
2022-06-28 16:25:10 +02:00
Gunar Schorcht
9065dcff14
cpu/esp32: port periph/cpu_id to ESP-IDF read_mac
2022-06-28 16:09:03 +02:00
Gunar Schorcht
4be0abf41a
cpu/esp32: rename CPU_INUM_RTC to CPU_INUM_RTT
2022-06-28 07:30:59 +02:00
Gunar Schorcht
6bd6afbd22
cpu/esp32: use ESP-IDF for interrupt handling
2022-06-28 07:30:59 +02:00
Marian Buschsieweke
b72cafb169
cpu/atmega_common: Fix atmega_port_addr()
...
In 04ab5a74f3
a bug was introduced in
the calculation of the GPIO port address by refactoring code. This
fixes the issue by extracting the GPIO port first from the pin.
2022-06-27 22:15:52 +02:00
Marian Buschsieweke
8cc0199437
cpu/{atmega_common,atxmega}: increase idle thread stack size
...
Our AVR port doesn't make use of an ISR stack and just victimizes the
stack of whatever thread happens to be running, which in most cases is
the idle thread. Hence, the idle stack has to be large enough to
support the ztimer ISR.
2022-06-27 14:39:57 +02:00
Gunar Schorcht
50e7eaace3
cpu/esp32: ESP32x SoC variant independent syscalls
2022-06-27 09:13:10 +02:00
benpicco
dd574a45f2
Merge pull request #18253 from gschorcht/cpu/esp32/add_esp_idf_api
...
cpu/esp32: add ESP-IDF API
2022-06-26 15:36:28 +02:00
benpicco
cff1e3c2b6
Merge pull request #18259 from gschorcht/cpu/esp32/separate_xtensa_platform_code
...
cpu/esp32: move platform code for Xtensa-based ESP32x SoCs to module esp_xtensa
2022-06-26 15:13:52 +02:00
Gunar Schorcht
ea5d2b3a2e
cpu/esp_common: add module esp_xtensa to Kconfig
2022-06-26 00:09:50 +02:00
Gunar Schorcht
6aafc1e362
cpu/esp_common: add module esp_xtensa to makefiles
2022-06-26 00:09:50 +02:00
Gunar Schorcht
b37c30378b
cpu/esp_common: move exception xtensa code to module esp_xtensa
...
To allow a platform independent implementation of exceptions for different ESP32x SoC variants, the platform specific code for Xtensa based ESP SoCs is moved to a separate platform file `exception_xtensa.c`.
2022-06-25 23:22:59 +02:00
Gunar Schorcht
c6ee0aeccb
cpu/esp_common: move irq_arch xtensa code to module esp_xtensa
...
To allow a platform independent implementation of irq_arch for different ESP32x SoC variants, the platform specific code for Xtensa based ESP SoCs is moved to a separate module `esp_xtensa`.
2022-06-25 23:22:59 +02:00
Gunar Schorcht
bb4a57e125
cpu/esp_common: move thread_arch xtensa code to module esp_xtensa
...
To allow a platform independent implementation of tread_arch for different ESP32x SoC variants, the platform specific code for Xtensa based ESP SoCs is moved to a separate module `esp_xtensa`.
2022-06-25 23:22:59 +02:00
Gunar Schorcht
8fabfbd6d9
cpu/esp_common: cleanup whitespaces in periph/flash
2022-06-25 08:12:31 +02:00
Gunar Schorcht
08cae6d4a8
cpu/esp_common: DEBUG messages with portable formatting
2022-06-25 08:12:31 +02:00
Gunar Schorcht
fb2f080fa7
cpu/esp_common: use ESP-IDF for ESP32 in periph/flash
...
Updates `cpu/esp_common/periph/flash` for ESP-IDF 4.4. `spi_flash_*` functions for ESP32 are removed since these functions are now used from ESP-IDF.
2022-06-25 08:12:31 +02:00
Gunar Schorcht
94ceccbe95
cpu/esp_common: inverse MCU_* conditionals in periph/flash
...
The MCU_* conditionals are inverted so that they can be tested for ESP8266. In all other cases the MCU is any ESP32x SoC
2022-06-25 08:10:05 +02:00
benpicco
1870d38594
Merge pull request #18249 from gschorcht/cpu/esp32/variant_independent_makefiles
...
cpu/esp32: ESP32x SoC variant independent makefiles
2022-06-24 23:02:10 +02:00
benpicco
32e64eb2e3
Merge pull request #18246 from gschorcht/cpu/esp32/variant_independent_bootloader
...
cpu/esp32: ESP32 SoCx variant independent bootloader makefile
2022-06-24 11:47:23 +02:00
Teufelchen1
1231807bab
Documentation: Renaming OS X to macOS
2022-06-23 17:25:48 +02:00
Gunar Schorcht
a1ba7b1207
cpu/esp32: add periph_ctrl to ESP-IDF interface API
2022-06-23 16:12:22 +02:00
Gunar Schorcht
de96a31e1f
cpu/esp32: add ESP-IDF interface API
...
Implements an interface for ESP-IDF types and functions that are required by RIOT-OS but cannot be included directly due to name conflicts.
f
2022-06-23 16:12:13 +02:00
Gunar Schorcht
cdd1ec81a4
cpu/esp_common: ESP32 variant independent makefiles
2022-06-23 13:19:52 +02:00
Gunar Schorcht
1f25ac8893
cpu/esp32: ESP32 variant independent makefiles
2022-06-23 13:19:40 +02:00
Gunar Schorcht
b60b47ff51
cpu/esp_common: inverse MCU_* conditionals to deal with ESP32 variants
...
The MCU_* conditionals are inverted so that they can be tested for ESP8266. In all other cases the MCU is any ESP32x SoC
2022-06-23 12:56:45 +02:00
Gunar Schorcht
09caa52074
cpu/esp32: variant independent bootloader makefile
...
Bootloader makefile that can be used for different ESP32x variants
2022-06-22 19:18:08 +02:00
benpicco
5350927111
Merge pull request #18239 from gschorcht/cpu/esp32/split_wpa_supplicant
...
cpu/esp32: split modul esp_wpa supplicant into several modules
2022-06-22 13:54:11 +02:00
benpicco
2895688a3d
Merge pull request #18224 from gschorcht/cpu/esp/freertos_changes_for_esp_idf_hal_ll
...
cpu/esp_common: FreeRTOS adaptation layer changes/extension required for ESP-IDF HAL/LL
2022-06-22 13:53:54 +02:00
Marian Buschsieweke
8465119d5c
Merge pull request #18240 from gschorcht/cpu/esp32/small_doc_fixes
...
cpu/esp32: small doc fixes
2022-06-22 11:44:00 +02:00
Marian Buschsieweke
256294aa56
Merge pull request #18234 from maribu/cpu/avr8_cpu_print_last_instruction
...
cpu/avr8_common: fix cpu_print_last_instruction
2022-06-22 11:43:21 +02:00
Gunar Schorcht
b5c666f157
cpu/esp32: small doc fixes
2022-06-21 16:43:23 +02:00
Gunar Schorcht
b0bf595494
cpu/esp32: split esp_idf_wpa_supplicant into several modules
2022-06-21 16:28:41 +02:00
Gunar Schorcht
ee9f2e439d
cpu/esp32: split esp_idf_wpa_supplicant into several modules
2022-06-21 16:28:28 +02:00
Gunar Schorcht
c8d8e5d3f5
cpu/esp_common/freertos: add required ringbuffer handling
2022-06-20 21:23:47 +02:00
Gunar Schorcht
780fd9a815
cpu/esp_common/freertos: add timeout handling to xQueue
2022-06-20 21:23:47 +02:00
Gunar Schorcht
99fa182fb4
cpu/esp_common/freertos: add required task functions
2022-06-20 21:23:47 +02:00
Gunar Schorcht
ae01985588
cpu/esp_common/freertos: add xSemaphoreGetMutexHolder
...
The mutex and semaphor handling had to be extended by the thread pid.
2022-06-20 21:23:47 +02:00
Gunar Schorcht
02e52513d1
cpu/esp_common/freertos: add xQueueReset function
2022-06-20 21:23:47 +02:00
Gunar Schorcht
e4f1a94219
cpu/esp_common/freertos: allow platform independent compilation
2022-06-20 21:23:47 +02:00
Marian Buschsieweke
740c2faaa8
cpu/avr8_common: fix cpu_print_last_instruction
2022-06-20 19:56:00 +02:00
Marian Buschsieweke
21daf782a7
cpu/avr8_common: clean up thread_arch.c
...
Use __AVR_HAVE_RAMP<D,X,Y,Y>__ and __AVR_HAVE_3_BYTE_PC__ provided by
the compiler instead of custom macros.
2022-06-20 19:49:07 +02:00
Benjamin Valentin
8cf20a286d
cpu/cortexm_common: allow to overwrite nmi_handler
...
If a user wants to handle NMI events, let them do so by
providing an implementation for nmi_handler() instead of
paniking.
2022-06-20 18:22:22 +02:00
Gunar Schorcht
4dc5e86b2a
cpu/esp32: remove libc_gettimeofday dependency
2022-06-18 16:35:11 +02:00
Gunar Schorcht
8796513ac1
cpu/esp32: add missing newlibc function _gettimeofday_r
2022-06-18 16:34:40 +02:00
Gunar Schorcht
e6823edb6a
Merge pull request #18216 from maribu/makefiles/tests/tests.inc.mk
...
makefiles/tests: use BINFILE for hash comparision instead of ELFFILE
2022-06-18 14:42:19 +02:00
Marian Buschsieweke
d1317abc02
makefiles/tests: use FLASHFILE for hash comparision instead of ELFFILE
...
Let's consider firmwares as identical if their flash files are matching.
This will have the side effect that hash mismatches for ESP32 due to
different .debug sections in the ELFFILE are prevented, as for ESP32
the BINFILE is used.
2022-06-17 18:31:17 +02:00
Benjamin Valentin
2583239867
cpu/sam0_eth: generate RX event for queued packets
2022-06-17 10:50:31 +02:00
benpicco
24f7cbf9bb
Merge pull request #18222 from benpicco/sam0_sdhc-align
...
cpu/sam0_common: mtd_sdhc: ensure source address alignment
2022-06-17 10:15:46 +02:00
Marian Buschsieweke
3f28e2314a
Merge pull request #18219 from maribu/cpu/stm32/periph_eth
...
cpu/stm32/periph_eth: enable stm32_eth_link_up with lwip_ipv6
2022-06-17 08:51:47 +02:00
Benjamin Valentin
8a30474f30
cpu/sam0_common: spi: limit clock to source clock
2022-06-16 19:15:37 +02:00
Benjamin Valentin
e8fd493f41
cpu/sam0_common: mtd_sdhc: ensure source address alignment
...
The source / destination address of the SDHC transfer needs to be
word-aligned.
Use the mtd buffer to fix the alignment if `mtd_write_page` is used,
otherwise return -ENOTSUP.
2022-06-16 18:58:10 +02:00
benpicco
809f9ed174
Merge pull request #18207 from gschorcht/cpu/esp32/fix_shell_reboot
...
cpu/esp32: fix pm_reboot function
2022-06-16 16:47:31 +02:00
Marian Buschsieweke
c9798c86ce
cpu/stm32/periph_eth: enable stm32_eth_link_up with lwip_ipv6
...
An network devices that supports netdev_driver_t::get(NETOPT_LINK, ...)
also has to emit NETDEV_EVENT_LINK_UP and NETDEV_EVENT_LINK_DOWN with
lwip for IPv6 duplicate address detection to work. The background is
that the STM32 Ethernet MAC requires a periodic timer to poll for the
state to emit these events. For this reason, `stm32_eth_link_up` was
introduced to allow applications to select if they need these events.
With this dependency in place, IPv6 addresses won't get stuck in a
tentative state any more.
2022-06-16 15:45:24 +02:00
Gunar Schorcht
0622d45949
cpu/esp32: fix pm_reboot function
2022-06-16 13:40:08 +02:00
Marian Buschsieweke
6db97e2871
Merge pull request #18209 from gschorcht/cpu/esp32/fix_malloc_thread_safety
...
cpu/esp32: fix malloc thread safety
2022-06-16 13:39:26 +02:00
Gunar Schorcht
041fe58209
cpu/esp32: add malloc_thread_safe if esp_idf_heap not used
2022-06-15 07:31:02 +02:00
benpicco
d1a45ba006
Merge pull request #18188 from benpicco/cpu/samd20-errata
...
cpu/samd21: handle NVM block errata
2022-06-10 15:47:20 +02:00
Francisco
e5c7e3b633
Merge pull request #18029 from haukepetersen/verbump_nimble_nrfx2022
...
pkg/nimble: version bump to NimBLE 1.5.0 RC1
2022-06-10 04:11:26 +02:00
Benjamin Valentin
2c04d6cefe
cpu/samd21: handle silicon errata
...
- The `periph_flashpage` driver expects the manual write bit to be set
This should be set by default, but the SAM D20/SAM D21 errata sheets
correct that this is indeed *not* set by default, which may cause
spurious writes.
- SAM D20 may not wake up from any sleep mode if sleep power reduction
is enabled for the NVM block.
2022-06-09 18:27:30 +02:00
benpicco
a64f722a42
Merge pull request #17781 from benpicco/hard_fault-BKPT
...
cpu/cortexm_common: remove breakpoint from hard_fault_handler
2022-06-07 15:28:08 +02:00
Dylan Laduranty
a6ac93d429
Merge pull request #18150 from benpicco/cpu/sam0_common-rtc_sync
...
cpu/sam0_common: RTC: wait for syncbusy in rtc_get_time()
2022-06-06 22:45:42 +02:00
Gunar Schorcht
ca0e651f74
Merge pull request #18165 from benpicco/pkg/esp32_sdk-4.4.1
...
pkg/esp32_sdk: Update version to 4.4.1
2022-06-06 08:32:51 +02:00
Benjamin Valentin
73e1b3df89
pkg/esp32_sdk: Update version to 4.4.1
...
Use the latest tagged release of the SDK.
2022-06-05 11:53:31 +02:00
Benjamin Valentin
344c065e2f
cpu/esp_common: use LittleFS2 as default FS
2022-06-02 23:21:22 +02:00
Hauke Petersen
f77006044d
cpu/nrf51: use nrfxx_peripherals.h vendor header
...
Using the nrf51xx_peripherals.h vendor header unifies the nrf51
code tree with the nrf52 implementation. It is needed to
prevent build errors with the optional nrfx package.
2022-06-02 14:59:50 +02:00
Hauke Petersen
068c4f1c3b
pkg: add nrfx as package
2022-06-02 14:59:50 +02:00
Hauke Petersen
5430c145f8
cpu/nrf5x: rename nrfx.h -> nrfx_riot.h
...
The nrfx compatibility header is renamed to allow for optinally
including the real nrfx headers using a RIOT package.
2022-06-02 14:59:50 +02:00
benpicco
e1e2b7c5b6
Merge pull request #17601 from gschorcht/cpu/esp32/upgrade_esp-idf_v4.4
...
cpu/esp32: Upgrade to ESP-IDF v4.4
2022-06-02 10:18:07 +02:00
Gunar Schorcht
565c2e17a0
cpu/esp32: update log module for ESP-IDF 4.4
2022-06-01 13:31:00 +02:00
Gunar Schorcht
79706604aa
cpu/esp32: update of sdkconfig.h as required for ESP-IDF 4.4
2022-06-01 13:31:00 +02:00
Gunar Schorcht
84893c672b
cpu/esp_common: fix lock handling
...
Assertions for uninitialized locks must not be triggered as long as the scheduler is not running. Furthemore, the handling of the __malloc_static_object lock is only necessary for ESP8266.
2022-06-01 13:31:00 +02:00
Gunar Schorcht
d63c116eba
cpu/esp_esp8266: move missing _rename_r function to esp_common
2022-06-01 13:31:00 +02:00
Gunar Schorcht
587e007a31
ecp/esp32: changes in periph_can for ESP-IDF v4.4
2022-06-01 13:31:00 +02:00
Gunar Schorcht
24162af90a
cpu/esp32: small doc fix
2022-06-01 13:31:00 +02:00
Gunar Schorcht
d2a4d6e3d3
cpu/esp32: compile bootloader from ESP-IDF v4.4 source
2022-06-01 13:31:00 +02:00
Gunar Schorcht
e8b4a4feb2
cpu/esp32: changes for ESP-IDF v4.4
2022-06-01 13:28:49 +02:00
Gunar Schorcht
61bf3d2384
cpu/esp*: update/cleanup stack sizes
2022-06-01 13:27:31 +02:00
Gunar Schorcht
d7382ab063
cpu/esp32: fix compilation problems with ESP-IDF v4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
443f3b87df
cpu/esp_common: missing heap functions for ESP-IDF v4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
d1d252cc58
cpu/esp_common: changes in event handling for ESP-IDF v4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
2541587eee
cpu/esp32: small fix in comment of periph/timer
2022-06-01 13:27:31 +02:00
Gunar Schorcht
48567c8ce0
cpu/esp32: small cleanup in periph/pwm
2022-06-01 13:27:31 +02:00
Gunar Schorcht
0ecbcf6561
cpu/esp_common: changes in esp_now/esp_wifi for ESP-IDF v4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
ee4a032a89
cpu/esp_common: fix compilation problems with ESP-IDF v4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
9fd056f8ec
cpu/esp_common: add missing functions for ESP-EDF v 4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
ec5993d888
cpu/esp32: changes in irq_arch for ESP-IDF v4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
e5adb7ef34
cpu/esp32: cleanup of periph/gpio for ESP-IDF v4.4
2022-06-01 13:27:31 +02:00
Gunar Schorcht
d4e061f635
cpu/esp_common/freertos: missing functions/definitions for ESP-IDF v4.4
2022-06-01 13:21:29 +02:00
Gunar Schorcht
3e4dc10740
esp/esp32: changes in esp_eth for ESP-IDF v4.4
2022-06-01 13:21:29 +02:00
Gunar Schorcht
ab14b68ea0
cpu/esp32: update of linker scripts for ESP-IDF v4.4
2022-06-01 13:21:29 +02:00
Gunar Schorcht
751a958529
cpu/esp32: add modules for compilation of required ESP-IDF code
...
The code required by the ESP-IDF is compiled directly from source in the `esp32_sdk` package. The compilation is structured by modules for easier use.
2022-06-01 13:21:29 +02:00
Martine Lenders
c4e202ae67
Merge pull request #17709 from benpicco/cpu/native-tap_wired
...
netdev_tap: make 'wired' property configurable
2022-06-01 02:24:43 +02:00
benpicco
4b6da5c8e4
Merge pull request #17863 from benpicco/sam0_sdhc
...
cpu/samd5x: add SD Host Controller implementation
2022-05-31 15:33:24 +02:00
Benjamin Valentin
d77724bf04
cpu/sam0_common: RTC: wait for syncbusy in rtc_get_time()
...
`rtt_get_counter()` already waits for syncbusy before reading the time,
but we also have to do this in RTC mode (`rtc_get_time()`) to avoid
reading old values.
Thus, always wait for syncbusy to clear when accessing the COUNT register.
2022-05-31 15:26:22 +02:00
Benjamin Valentin
babee877ce
cpu/sam0_common: add SD Host Controller implementation
2022-05-31 11:07:20 +02:00
Benjamin Valentin
24e918ca19
cpu/sam0_common: adc: default to 0 for ADC_NEG_INPUT
2022-05-30 20:41:18 +02:00
Benjamin Valentin
d6d5d935a6
cpu/sam0_common: adc: derive GPIO pin from AIN number
...
ADC pins are fixed on sam0
2022-05-30 20:41:18 +02:00
Benjamin Valentin
ae664baa58
cpu/saml1x: define ADC pins
2022-05-30 20:41:18 +02:00
Benjamin Valentin
9af5deb54a
cpu/saml21: define ADC pins
2022-05-30 20:41:18 +02:00
Benjamin Valentin
84add70772
cpu/samd21: define ADC pins
2022-05-30 20:41:18 +02:00
Benjamin Valentin
75ee373b01
cpu/samd5x: define ADC pins
...
rg define\ PIN_.*_AIN | grep ADC | cut -d' ' -f2 | sort | uniq | sed -E "s/PIN_(P[A-F])([0-9][0-9])B_ADC0_AIN([0-9]*)/\3 GPIO_PIN(\1, \2),/" | sort -n | grep GPIO | cut -d ' ' -f2- | sed -E "s/0([0-9])/\1/"
rg define\ PIN_.*_AIN | grep ADC | cut -d' ' -f2 | sort | uniq | sed -E "s/PIN_(P[A-F])([0-9][0-9])B_ADC1_AIN([0-9]*)/\3 GPIO_PIN(\1, \2),/" | sort -n | grep GPIO | cut -d ' ' -f2- | sed -E "s/0([0-9])/\1/"
2022-05-30 20:41:18 +02:00
Benjamin Valentin
8075b69275
cpu/sam0_common: adc: handle differential mode
...
- store result in int16_t to ensure proper sign extension
- double differential result to account for bit lost for sign
2022-05-30 20:41:18 +02:00
benpicco
eb09fe21fd
Merge pull request #18025 from leandrolanzieri/pr/sys/random/change_kconfig_default_backend
...
sys/random/kconfig: remove HWRNG default in backend choice
2022-05-24 11:35:21 +02:00
benpicco
9b8f032c04
Merge pull request #17981 from maribu/gpio_ll/stm32
...
cpu/stm32: Implement periph/gpio_ll{,_irq} except for STM32F1
2022-05-24 11:34:53 +02:00
Benjamin Valentin
fad65011b7
netdev_tap: make NETDEV_TAP_MAX an upper bound
2022-05-23 15:27:35 +02:00
Benjamin Valentin
2520aaf1e8
cpu/native: add -w <tap> command line parameter to simulate wireless tap
2022-05-23 15:27:35 +02:00
Benjamin Valentin
f61c12e008
netdev_tap: make 'wired' property configurable
...
`netdev_tap` is a virtual interface, make it possible to simulate both
a wired and a wireless interface.
2022-05-23 15:27:35 +02:00
Marian Buschsieweke
16f859dafd
drivers/saul: use const qualifier for data to write
...
This makes life easier when calling e.g. `saul_reg_write()` with data
stored in flash.
As now the signatures for reading and writing differ (in that `const`
qualifier only), `saul_notsup()` is split into `saul_write_notsup()`
and `saul_read_notsup()`. However, one is implemented as a symbol alias
of the other, so that ROM consumption remains unchanged.
2022-05-23 08:35:27 +02:00
chrysn
dc7bc9f854
Merge pull request #17683 from chrysn-pull-requests/mtd-granularity
...
mtd: Introduce write granularity
2022-05-20 11:52:03 +02:00
Dylan Laduranty
5681cc0a95
Merge pull request #18042 from benpicco/cpu/sam0-adc-extref
...
cpu/sam0_common: adc: Automatically configure external reference pin
2022-05-18 13:37:07 +02:00
Gunar Schorcht
72abc08d14
cpu/esp_common: small fix of lib_printf
2022-05-18 07:27:23 +02:00
Gunar Schorcht
60bbe0fe49
cpu/esp_common/makefile: move linking of libhal.a to esp8266 makefile
2022-05-18 07:27:23 +02:00
Gunar Schorcht
357eaa434a
cpu/esp32: update sys/lock.h for retargetable locking
...
ESP-IDF version 4.4 already provide all locking definitions if retargetable locking is enabled.
2022-05-18 07:27:23 +02:00
Gunar Schorcht
9ae4b1ca7d
cpu/esp32: remove vendor code
2022-05-18 07:27:23 +02:00
Benjamin Valentin
b0bedabbed
cpu/esp32: use pthread module if module cpp is used (Kconfig)
...
Same as b424633016
but for Kconfig
2022-05-17 23:38:08 +02:00
chrysn
b458d52e2b
cpu/esp_common: Set write size for flash implementation
2022-05-17 15:48:18 +02:00
Gunar Schorcht
c3c3de2ec2
cpu/esp32: gcc 8.4.0 requires that inline functions are declared static
2022-05-13 18:57:22 +02:00
Gunar Schorcht
b424633016
cpu/esp32: use pthread module if module cpp is used
2022-05-13 18:56:17 +02:00
6f52b90e58
cpu/cortexm_common: enable FPU on cortexm33
2022-05-05 21:16:10 +02:00
Marian Buschsieweke
2025b64f99
Merge pull request #18023 from chrysn-pull-requests/efm32-gpio-ll
...
cpu/efm32: Minimal support for gpio_ll
2022-05-04 01:40:29 +02:00
chrysn
d90e0f1e85
cpu/efm32: Support pull-up/-down resistors
2022-05-03 19:32:08 +02:00
chrysn
e9a577c384
cpu/efm32: Document what is and is not implemented
...
Collapsing strengths as they'll stay unused for the time being.
2022-05-03 19:32:08 +02:00
chrysn
ed9cfba747
cpu/efm32: Push-pull support for GPIO_LL
2022-05-03 19:32:08 +02:00
chrysn
3264a1d51d
cpu/efm32: Minimal support for gpio_ll
2022-05-03 19:32:08 +02:00
Marian Buschsieweke
bae91c1660
Merge pull request #17723 from benpicco/periph_timer_periodic-set_stopped
...
drivers/periph/timer: add TIM_FLAG_SET_STOPPED flag
2022-05-03 12:06:37 +02:00
Marian Buschsieweke
95b35c6de0
Merge pull request #17982 from maribu/gpio_ll/atmega
...
cpu/atmega_common: implement periph/gpio_ll{,_irq}
2022-05-02 17:28:30 +02:00
Benjamin Valentin
35588d46bd
cpu/sam0_common: adc: Automatically configure extref pin
2022-05-02 16:23:49 +02:00
Marian Buschsieweke
04ab5a74f3
cpu/atmega_common: implement periph/gpio_ll{,_irq}
...
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
Co-authored-by: Alexandre Abadie <alexandre.abadie@inria.fr>
2022-05-02 14:44:55 +02:00
80815edaba
Merge pull request #18028 from aabadie/pr/cpu/uncrustify_arm7_vectors
...
cpu/arm7_common: uncrustify vectors.c
2022-04-28 22:07:35 +02:00
Benjamin Valentin
4326b5ca54
cpu/native: timer: implement TIM_FLAG_SET_STOPPED
2022-04-28 13:27:59 +02:00
Benjamin Valentin
191ff4079b
cpu/nrf5x_common: timer: implement TIM_FLAG_SET_STOPPED
2022-04-28 13:27:59 +02:00
Benjamin Valentin
d6b5bf33b2
cpu/stm32: timer: implement TIM_FLAG_SET_STOPPED
2022-04-28 13:27:59 +02:00
Benjamin Valentin
4540e490e3
cpu/atmega_common: timer: implement TIM_FLAG_SET_STOPPED
2022-04-28 13:27:59 +02:00
Benjamin Valentin
c5a78bd32f
cpu/lpc23xx: timer: implement TIM_FLAG_SET_STOPPED
2022-04-28 13:27:59 +02:00
Benjamin Valentin
7ed69cc08a
cpu/gd32v: timer: implement TIM_FLAG_SET_STOPPED
2022-04-28 13:27:59 +02:00
bca6f44edc
cpu/arm7_common: uncrustify vectors.c
2022-04-28 11:57:05 +02:00
Francisco Molina
a4bbb74371
cpu/esp32: always include libc_gettimeofday
2022-04-28 09:51:19 +02:00
Leandro Lanzieri
82726a2b2b
sys/random/kconfig: remove HWRNG default in backend choice
...
For now we match the Makefile.dep default, ignoring if the platform
presents a Hardware RNG.
2022-04-27 15:41:23 +02:00
benpicco
b6b1468240
Merge pull request #17980 from maribu/gpio_ll/nrf5x
...
cpu/nrf5x_common: implement periph/gpio_ll{,_irq}
2022-04-26 11:27:02 +02:00
Marian Buschsieweke
f0586dbf8f
cpu/nrf5x_common: implement periph/gpio_ll{,_irq}
...
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2022-04-23 19:47:00 +02:00
Marian Buschsieweke
8bab36f1c5
cpu/stm32: Implement periph/gpio_ll{,_irq} except for STM32F1
...
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
Co-authored-by: Alexandre Abadie <alexandre.abadie@inria.fr>
2022-04-22 14:34:57 +02:00
Francisco Molina
0d7eb36247
boards/native: only one CAN_DLL by default
2022-04-20 14:40:06 +02:00
Daniel Lockau
879e082703
cpu/native: use socketcan pkg
2022-04-20 11:55:29 +02:00
eb6afbba98
cpu/stm32: adapt ltdc periph disp_dev interface
2022-04-13 12:49:58 +02:00
Fabian Hüßler
e261db28c9
cpu/stm32/include/periph/f7: add missing ADC_DEVS
2022-04-12 22:39:17 +02:00
Oleg Hahm
f3ffe134b0
Merge pull request #17895 from benpicco/pm_blocker_array
...
sys/pm_layered: use array representation, get rid of implicit IDLE mode
2022-04-08 14:04:46 +02:00
Benjamin Valentin
11acdd0526
cpu/samd*: adjust PM_BLOCKER_INITIAL to the new API
...
For saml1x and samd5x this becomes now obsolete as the default provides
this behavior.
2022-04-06 12:29:25 +02:00
Benjamin Valentin
0340ac6129
cpu: include IDLE in PM_NUM_MODES
2022-04-06 12:29:25 +02:00
Marian Buschsieweke
a097baee80
Merge pull request #17898 from keith-packard/enable-gcc-builtin
...
cpu/arm7, arch/cortexm: Remove -fno-builtin flag
2022-04-06 08:14:11 +02:00
Ollrogge
b21640f1e0
cpu/riscv_common: fix undeclared memory region linker error
2022-04-04 13:18:01 +02:00
Keith Packard
b21e624280
cpu/arm7, arch/cortexm: Remove -fno-builtin flag
...
This flag disables all builtin functions provided by the compiler as
well as disabling all optimizations and error checking related to
standard C library functions. If you're using a C library which
conforms to the ANSI C standard, you want to leave these compiler
features enabled.
Signed-off-by: Keith Packard <keithp@keithp.com>
2022-04-02 16:58:09 -07:00
Dylan Laduranty
c568d273ea
Merge pull request #17886 from benpicco/cpu/sam0_eth-sleep
...
cpu/sam0_eth: implement SLEEP state
2022-04-01 09:18:41 +02:00
Benjamin Valentin
1f96e95fde
cpu/sam0_eth: implement SLEEP state
...
This saves ~3 mA when the device is in SLEEP mode.
2022-03-31 23:54:33 +02:00
Benjamin Valentin
7c3bfb980e
cpu/samd5x: allow to block IDLE mode
...
Make it possible to prevent the CPU clock from stopping.
2022-03-29 18:14:41 +02:00
benpicco
1133d04de1
Merge pull request #17813 from leandrolanzieri/pr/tests/eth_drivers_rework
...
tests: rework eth drivers
2022-03-28 18:15:27 +02:00
Francisco
b91b984e38
Merge pull request #17733 from fjmolinas/pr_gettimeofday_64_bit
...
sys/syscalls: make gettimeofday() implementation optional
2022-03-24 15:22:27 +01:00
Francisco Molina
0819660303
sys/syscalls: add libc_gettimeofday
...
Conditionally implement gettimeofday() if module is included, this
avoids including ztimer64 even when not needed
2022-03-24 11:36:49 +01:00
Leandro Lanzieri
37908431a1
cpu/stm32/eth: call netdev register from the setup function
2022-03-24 09:44:54 +01:00
Leandro Lanzieri
e48f957a52
cpu/nrf52/radio: fix confirm_op info cast
2022-03-23 19:07:49 +01:00
cb5fef4486
cpu/stm32: use HSI with I2C
2022-03-23 10:10:08 +01:00
a7c1be8844
cpu/stm32: f439 line has hardware rng
2022-03-21 08:11:46 +01:00
7501098a8a
Merge pull request #17819 from aabadie/pr/cpu/samd51_adc_enh
...
cpu/samd51: allow to support ADC0 and ADC1 in the same configuration
2022-03-18 14:09:00 +01:00
Leandro Lanzieri
202fb261fe
Merge pull request #17811 from fjmolinas/pr_xtimer_dep_rework_simple
...
sys/*timer: rework dependecies to ease backend switch, prefer ztimer_xtimer_compat over xtimer_on_ztimer
2022-03-18 08:17:24 +01:00
benpicco
82b0e08745
Merge pull request #10082 from gschorcht/drivers_l3gd20h
...
drivers: add driver for L3GD20H 3-axis gyroscope
2022-03-18 08:10:24 +01:00
Gunar Schorcht
1c666c5955
kconfig: add ST L3Gxxxx 3-axis gyro family
2022-03-18 06:34:54 +01:00
chrysn
facb5e633f
Merge pull request #17436 from Ollrogge/reserve_flash
...
cpu: add flash_writable section to linker script
2022-03-17 21:44:32 +01:00
Ollrogge
41f961a197
periph/flashpage: Add _in_address_space feature
2022-03-17 19:45:54 +01:00
Francisco Molina
d86828c53b
cpu/efm32: periph_rtt_series0/1 are not modules
2022-03-17 14:37:33 +01:00
Francisco Molina
2cc5af664e
treewide: make all modules use Kconfig ZTIMER_USEC indirection
2022-03-17 14:33:07 +01:00
Francisco
114e61c111
Merge pull request #17786 from fjmolinas/pr_ztimer_rtt_sam3
...
sys/ztimer: auto-select ztimer_no_periph_rtt only for samd21
2022-03-17 12:32:29 +01:00
9feb1ffa68
cpu/sam0_common: allow for setting the ADC device for each line
2022-03-17 11:44:40 +01:00
Francisco Molina
53c3e38cb9
sys/ztimer: select ztimer_periph_no_rtt only for samd21
2022-03-15 08:15:22 +01:00
ee175fb583
cpu/samx21: allow to override #ifndef PM_BLOCKER_INITIAL
2022-03-11 10:48:12 +01:00
Gunar Schorcht
421fb6dedd
cpu/esp32: update the doc for Espressif's ESP32 vendor toolchain
2022-03-10 05:31:04 +01:00
Gunar Schorcht
92b7b8a3d7
cpu/esp32: disable the use of newlib's pthread headers
2022-03-10 05:31:04 +01:00
Benjamin Valentin
1fa1d348d8
cpu/cortexm_common: remove breakpoint from hard_fault_handler
...
The hard fault handler would normally call core_panic() which in turn
calls ps() - this already helps debugging a lot of crashes caused by
a thread stack overflow.
With the breakpoint in place, the code will not advance to this, leaving
users unknown of this feature in the dark.
On top, the breakpoint is not very helpful if thread stacks are already
corrupted.
Let's just drop it for simplicity's sake - it's not there for any other
architectures.
2022-03-09 23:32:46 +01:00
Gunar Schorcht
12d0cc9e99
cpu/esp32: enable _NANO_FORMATTED_IO for Espressif's GCC 8.4.0
2022-03-08 09:31:42 +01:00
Gunar Schorcht
395ec06c16
dist/tools/esptool: upgrade to v3.2 for ESP32
2022-03-08 09:31:42 +01:00
benpicco
2d89399047
Merge pull request #17745 from leandrolanzieri/cpu/esp32/esp-eth/move_auto_init
...
cpu/esp32/esp-eth: move GNRC auto_init to init_devs
2022-03-07 20:25:06 +01:00
Dylan Laduranty
9d459b8a14
Merge pull request #17746 from leandrolanzieri/cpu/sam0_common/eth/expose_correct_setup
...
cpu/sam0_common/eth: expose correct setup function
2022-03-07 18:42:08 +01:00
Ollrogge
74d086cdd6
cpu/riscv_common: add flash_writable section to linker script
2022-03-07 11:25:38 +01:00
Ollrogge
6a40815904
cpu/msp430_common: add flash_writable section to linker script
2022-03-07 11:24:39 +01:00
Ollrogge
5587f5d88f
cpu/cortexm_common: add flash_writable section to linker script
2022-03-07 11:23:44 +01:00
Leandro Lanzieri
c33cfdfaec
Merge pull request #17742 from gschorcht/cpu/esp/rename_esptool_dir
...
dist/tools: rename directory esptool to esptools to use it for multiple tools
2022-03-04 11:58:40 +01:00
Leandro Lanzieri
74c8893a4f
cpu/esp32/esp-eth: move GNRC auto init to init_devs
2022-03-04 09:41:18 +01:00
Leandro Lanzieri
f1075ad749
cpu/sam0_common/eth: expose correct setup function
2022-03-04 08:57:42 +01:00
Gunar Schorcht
cbbd02d520
dist/tools: rename esptool to esptools to use it for several tools
...
The directory `dist/tools/esptool` already contains a couple of ESP tools and not only esptool.py. As the location for a couple of ESP related tools, it is more clear to call it `esptools` instead of `esptool`.
2022-03-04 08:34:19 +01:00
Francisco
0c166b1e2a
Merge pull request #17732 from fjmolinas/pr_xtimer_compat_deps
...
sys: sort out ztimer_xtimer_compat and ztimer64_xtimer_compat depes
2022-03-04 08:08:41 +01:00
benpicco
6ddcfc07fb
Merge pull request #17727 from jeandudey/2022_03_01-stm32l1-line
...
cpu/stm32: Add STM32_LINE cases for STM32L1xxx6
2022-03-03 17:28:56 +01:00
Francisco Molina
6151895bfa
sys: use ztimer64_xtimer_compat when required
2022-03-02 14:28:54 +01:00
Jean-Pierre De Jesus DIAZ
919d1b5094
cpu/stm32: Add STM32_LINE cases for STM32L1xxx6
2022-03-01 17:20:16 +01:00
Jean-Pierre De Jesus DIAZ
d64bbdffe5
cpu/stm32: Fix CLOCK_CORECLOCK on stm32l0/l1
...
With the previous order of the operation there was a loss of precision
when using certain values as the divider
2022-03-01 17:11:16 +01:00
Benjamin Valentin
6540065c7e
cpu/rpx0xx: timer: implement TIM_FLAG_SET_STOPPED
2022-03-01 14:22:53 +01:00
Benjamin Valentin
79698d674b
cpu/sam0_common: timer: implement TIM_FLAG_SET_STOPPED flag
2022-03-01 14:22:40 +01:00
Francisco
59208722ad
Merge pull request #17008 from benpicco/board_common
...
sys/board_common: add generic board_init() function
2022-02-23 08:59:32 +01:00
Dylan Laduranty
fb24a54208
Merge pull request #17687 from benpicco/cpu/saml21-EXTWAKE
...
cpu/sam0_common: implement EXTWAKE for SAM L21
2022-02-22 21:49:24 +01:00
Benjamin Valentin
3977023700
boards/esp32-*: drop custom board_init()
2022-02-22 18:27:37 +01:00
Dylan Laduranty
38943b7051
Merge pull request #17686 from benpicco/cpu/sam0_common-info.mk
...
cpu/saml21: derive low power SRAM length from model number
2022-02-22 00:48:36 +01:00
Benjamin Valentin
c44cf1423e
cpu/saml21: derive low power SRAM length from model number
2022-02-21 19:04:16 +01:00
Benjamin Valentin
7c1c2407b0
cpu/sam0_common: implement EXTWAKE for SAM L21
...
On SAM L21 only 8 EXTWAKE pins can wake the CPU from Backup sleep.
Handle this analogous to the RTC tamper pins on SAM D5x/E5x where
configuring them as an interrupt will also cause them to wake the
device from Deep Sleep.
2022-02-21 19:03:06 +01:00
Benjamin Valentin
9121680204
cpu/sam0_common: decode model number
2022-02-21 15:13:29 +01:00
Fabian Hüßler
e3509fc023
cpu/stm32: add sampling time to F4/F7 ADC driver
2022-02-21 10:49:43 +01:00
Fabian Hüßler
fa52f1e986
cpu/stm32: Consider VBAT on CPU init
2022-02-21 10:49:43 +01:00
Fabian Hüßler
33c2944076
cpu/stm32: add VBAT for stm32
2022-02-21 10:49:43 +01:00
Francisco
60f3410ae0
Merge pull request #17671 from PeterKietzmann/pr_puf_sram_esp32
...
cpu/esp32: enable puf_sram feature
2022-02-18 11:45:49 +01:00
Francisco
1a54357e2a
Merge pull request #17665 from PeterKietzmann/pr_puf_sram_riscv
...
cpu/riscv_common: enable puf_sram feature
2022-02-18 10:25:13 +01:00
Jue
4bb6a764ea
cpu/efm32: select series-specific drivers in periph Makefile
...
This will allow to share implementations across a subset of EFM32 series.
2022-02-17 11:09:24 +01:00
PeterKietzmann
b348c9ff11
cpu/esp32: enable puf_sram feature
2022-02-17 11:08:11 +01:00
PeterKietzmann
6215b7e630
cpu/riscv_common: add puf_sram feature
2022-02-16 15:18:37 +01:00
c5b3934767
cpu/native: improve getpid()
stub message
2022-02-16 11:38:32 +01:00
PeterKietzmann
992e09b07b
cpu/riscv_common: add bss end to clear memory
2022-02-16 10:52:09 +01:00
PeterKietzmann
dd4fe70a62
cpu/riscv_common: add noinit section to ld script
2022-02-16 10:48:31 +01:00
Karl Fessel
726c461cb5
Merge pull request #17574 from kfessel/p-fix-asserth
...
core/assert: avoid including panic.h with assert.h
2022-02-15 11:57:55 +01:00
Karl Fessel
5e42af7935
cpu/stm32: i2c include panic.h
2022-02-12 18:30:58 +01:00
benpicco
561157ce72
Merge pull request #17635 from jenswet/feature/netdev_tap_register
...
cpu/native/netdev_tap: Add to netdev_register
2022-02-11 11:52:04 +01:00
Jens Wetterich
4dfeafcabd
cpu/native/netdev_tap: Add to netdev_register
2022-02-11 07:54:11 +01:00
MrKevinWeiss
58097a20aa
cpu/stm32: clk tree account for 16 MHz
2022-02-10 13:27:50 +01:00
Kevin "Tristate Tom" Weiss
d97eed54a1
Merge pull request #17525 from fjmolinas/pr_esp_compile_test_boards
...
[POC] tests/external-boards: add esp compile test boards
2022-02-10 08:31:12 +01:00
benpicco
be45400631
Merge pull request #17341 from benpicco/vfs-mtd_cleanup
...
sys/vfs: add file-system auto-mount
2022-02-09 21:50:34 +01:00
Francisco
70e6e695f6
Merge pull request #17616 from fjmolinas/pr_spi_gpio_mode_sam
...
cpu/sam0_common: add periph_spi_init_gpio
2022-02-09 21:45:51 +01:00
Francisco Molina
c1238ad4e4
cpu/esp: model missing modules
2022-02-09 16:50:04 +01:00
Benjamin Valentin
fc4cd0484b
cpu/native: change mtd_native_dev_t parent name to base
...
This brings it in line with the other MTD implementations.
2022-02-09 12:21:53 +01:00
benpicco
7dca69c182
Merge pull request #17617 from fjmolinas/pr_spi_gpio_mode_nrf
...
cpu/nrf52-9160: add periph_spi_init_gpio
2022-02-08 13:24:57 +01:00
Francisco Molina
067fa7502d
cpu/sam0_common: add periph_spi_init_gpio
2022-02-08 09:21:44 +01:00
Francisco Molina
4906353cfe
cpu/nrf52-9160: add periph_spi_init_gpio
2022-02-08 09:17:48 +01:00
MrKevinWeiss
656be63fc0
cpu/stm32/wl: Model clock tree in kconfig
2022-02-07 13:58:43 +01:00
MrKevinWeiss
68e94ea2aa
cpu/stm32: Add clock config for mp1 to kconfig
2022-02-03 12:20:53 +01:00
MrKevinWeiss
7bebbc5545
cpu/stm32: Fix clock config in kconfig
2022-02-01 13:58:07 +01:00
chrysn
716cd8f48b
cpu/nrf52 radio: Populate info
...
According to ieee802154_radio_confirm_transmit docs, the parameter of
confirm_op for IEEE802154_HAL_OP_TRANSMIT is to be populated as an out
parameter -- but this implementation unconditionally left info
unpopulated. Thus, when run with LLVM, _fsm_state_tx_process_tx_done
looked into an uninitialized info and thus crashed into failing
assertions.
Closes: https://github.com/RIOT-OS/RIOT/issues/17591
2022-01-30 16:13:04 +01:00
benpicco
39ad2012ba
Merge pull request #17583 from benpicco/cpu/native-afl_gcc_fix
...
cpu/native: fix build with afl-gcc 11.2
2022-01-28 10:19:32 +01:00
Benjamin Valentin
4c9f1e0ca4
cpu/native: fix build with afl-gcc 11.2
...
Building `fuzzing/gcoap` with afl-gcc 11.2 gives
/home/benpicco/dev/RIOT/cpu/native/native_cpu.c: In function ‘thread_stack_init’:
/home/benpicco/dev/RIOT/cpu/native/native_cpu.c:120:11: error: variable ‘stk’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Werror=clobbered]
120 | char *stk = NULL;
| ^~~
/home/benpicco/dev/RIOT/cpu/native/native_cpu.c:118:72: error: argument ‘stack_start’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Werror=clobbered]
118 | char *thread_stack_init(thread_task_func_t task_func, void *arg, void *stack_start, int stacksize)
|
We can re-write the function to not use this temporary variable and the error goes away.
2022-01-27 21:09:59 +01:00
benpicco
4ed9d8fd5c
Merge pull request #17581 from nmeum/riscv-linker-rom-region
...
cpu/riscv_common: fix undeclared memory region linker error
2022-01-27 17:06:43 +01:00
chrysn
f7dfa2f84d
Merge pull request #17133 from chrysn-pull-requests/doc-develhelp-stackoverflow-precision
...
doc: Start documenting pseudomodules
2022-01-27 15:09:22 +01:00
Sören Tempel
e41063d40e
cpu/riscv_common: fix undeclared memory region linker error
...
Since commit 3a11b1fbd2
(#16972 )
building RIOT applications with `BOARD=hifive1` causes the following
linker error to be emitted on my system:
/opt/rv32imc/lib/gcc/riscv32-unknown-elf/10.2.0/../../../../riscv32-unknown-elf/bin/ld:riscv_base.ld:220: warning: memory region `rom' not declared
This is due to the fact that the RISC-V linker script doesn't have a rom
memory region. While many other ARM-based boards have a rom memory
region defined in the linker script, the corresponding region name in
the RISC-V linker script is flash and rom is not declared as a memory
region hence the warning.
I think this was accidentally overlooked in
3a11b1fbd2
. It is fixed in this commit by
replacing the rom region with the flash region. The linker script
identifiers (e.g. _srom and _erom) are not renamed.
2022-01-27 15:02:50 +01:00
chrysn
bb8402fc0b
doc: Document the MPU pseudomodules
2022-01-27 13:49:25 +01:00
chrysn
99d245f538
Merge pull request #17520 from chrysn-pull-requests/rust-enable-riscv
...
cpu/riscv_common: Enable Rust applications
2022-01-26 19:14:50 +01:00
Gunar Schorcht
c0dc6ccc71
cpu/esp32: set SDK configuration dependent on newlib_nano module
2022-01-25 00:37:08 +01:00
Gunar Schorcht
fdabe050ed
cpu/esp32: skip inclusion of toolchain pthread types
...
The toolchain provides POSIX type definitions for pthread which conflicts with that in RIOT. With the CFLAGS/CXXFLAGS skip the inclusion of the types shipped by the toolchain.
2022-01-25 00:36:51 +01:00
Gunar Schorcht
2ccfb145a1
cpu/esp32: add missing POSIX functions
2022-01-25 00:36:51 +01:00
Gunar Schorcht
1d20f88bb0
cpu/esp32: set stdout/stderr to be non-buffering
2022-01-25 00:36:51 +01:00
Gunar Schorcht
e1c6306bf4
cpu/esp32: replace bzero by memset
2022-01-25 00:36:51 +01:00
Gunar Schorcht
e15e18b195
cpu/esp32: fix compilation errors
2022-01-25 00:36:51 +01:00
Gunar Schorcht
839cf4223d
cpu/esp32: changes for retagetable locking
2022-01-25 00:36:51 +01:00
Gunar Schorcht
881a92fe47
cpu/esp32: remove types.h in sys include
2022-01-25 00:36:51 +01:00
benpicco
c18f1c2a9b
Merge pull request #17455 from gschorcht/cpu/esp32/sdk-as-package
...
cpu/esp32: download Espressif SDK ESP-IDF as package
2022-01-24 16:13:04 +01:00
benpicco
2520b5c608
Merge pull request #16870 from fabian18/cpu_stm32_add_periph_backup_ram
...
cpu/stm32: make backup SRAM available
2022-01-21 18:09:42 +01:00