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

7365 Commits

Author SHA1 Message Date
Benjamin Valentin
a51fb298dc cpu/sam0_common: implement periph_uart_collision feature 2021-12-08 17:35:00 +01:00
Benjamin Valentin
41a5b7ef7a core: change return type of irq_is_in(), irq_is_enabled() to bool
This only cleans up the API, no change in behavior or users of the API
is expected.
2021-12-08 15:53:15 +01:00
Leandro Lanzieri
15165bfdf7
Merge pull request #17299 from fjmolinas/pr_nrf52_boards_kconfig
boards: model nrf52 boards
2021-12-08 14:45:03 +01:00
b7e9d4fad2 cpu/atmega_common: also enlarge idle stack for ztimer64 2021-12-08 13:49:25 +01:00
Francisco Molina
766bfeace4 boards: model nrf52 boards 2021-12-08 13:25:29 +01:00
José Alamos
ce8cda2fd8
Merge pull request #16932 from benpicco/socket_zep-hal
socket_zep: port to radio HAL
2021-12-07 18:24:33 +01:00
Leandro Lanzieri
421bc95cc6
cpu/kinetis: model Kconfig 2021-12-07 11:32:16 +01:00
benpicco
228ba83dc6
Merge pull request #17184 from benpicco/drivers/dose-standby_fix
drivers/dose: fix standby mode
2021-12-07 11:09:43 +01:00
Gunar Schorcht
a66fef5bf5 cpu/esp_common: add bus clear for I2C on ESP32
On the ESP32 it is often not possible with the I2C software implementation to communicate with an AIP31068 based LCD module.  Therefore, the I2C hardware implementation is enabled when the AIP31068 driver is used, but it is more buggy than stable. The timing of the two implementations seems to be almost identical. The only difference is that the hardware implementation clears the bus before each access by sending 10 clock pulses on the SCL line while SDA is LOW. Using the same mechanism during I2C initialization for the software implementation solves the communication problem with the AIP31068.
The same software implementation works reliably with the AIP31068 on the ESP8266.
2021-12-06 22:02:30 +01:00
7c34d69b84
cpu/qn908x: migrate ADC periph to ztimer 2021-12-04 17:49:57 +01:00
Francisco
3afa47d8f2
Merge pull request #14955 from maribu/cflags-cast-align
makefiles/cflags.inc.mk: Add -Wcast-align
2021-12-03 17:47:24 +01:00
Marian Buschsieweke
e071098d26
cpu/stm32/periph: use uintptr_t instead uintptr_t * 2021-12-03 14:21:54 +01:00
Francisco
5ba215f9c5
Merge pull request #16843 from haukepetersen/add_nimble_scannerext
nimble_scanner: rework to enable scanning BLE5 PHYs and extended advertisements
2021-12-03 12:00:10 +01:00
Marian Buschsieweke
509ced8abb
cpu/stm32/periph_can: use container_of()
This silences false positives of -Wcast-align
2021-12-03 10:12:35 +01:00
Marian Buschsieweke
d59d9c27d7
cpu/esp32/periph_can: use container_of()
This silences false positives of -Wcast-align
2021-12-03 10:12:35 +01:00
Marian Buschsieweke
b433183e0e
cpu/kinetis: silence -Wcast-align 2021-12-03 10:12:34 +01:00
Marian Buschsieweke
7cd9d615fa
cpu/stm32/periph: Use uintptr_t for periph addr
The peripheral register addresses are fixed, properly aligned addresses. Storing
them as uintptr_t makes live easier when casting them to helper structs, as no
intermediate cast to uintptr_t is needed to silence -Wcast-align.
2021-12-03 10:12:32 +01:00
Marian Buschsieweke
d31b1f4854
cpu/esp32: disable -Wcast-align for vendor code 2021-12-03 10:12:32 +01:00
Francisco
1ec9bfdec4
Merge pull request #17287 from leandrolanzieri/pr/sys/vfs/model_kconfig
sys/vfs: model Kconfig
2021-12-03 09:11:57 +01:00
Leandro Lanzieri
d7bf363517
Merge pull request #17290 from fjmolinas/pr_kconfig_msp430
cpu/msp430: add Kconfig
2021-12-03 08:37:11 +01:00
Hauke Petersen
00393e8214 kconfig: add ble_phy_x feature and mapping 2021-12-02 23:31:32 +01:00
Hauke Petersen
96163aa380 cpu/nrf52: add features for coded and 2Mbit PHYs 2021-12-02 23:31:32 +01:00
4d96c1f8e0
Merge pull request #17281 from dylad/pr/cpu/stm32/usbdev_fs_support
cpu/stm32: add new usbdev FS support
2021-12-02 21:57:49 +01:00
Marian Buschsieweke
ec39b8e3aa
Merge pull request #17320 from aabadie/pr/cpu/stm32_ztimer
cpu/stm32: migrate adc and eth periphs to ztimer
2021-12-02 20:05:43 +01:00
Francisco Molina
7ab05fa129 cpu/msp430: add Kconfig 2021-12-02 16:33:19 +01:00
dylad
f5cd2d1438 cpu/stm32: enable HSI48 when needed for L4/Wx 2021-12-02 14:26:03 +01:00
dylad
083e53406d cpu/stm32: add support for a new USBDEV periph
Also rename the other usbdev driver to avoid conflicts
2021-12-02 14:26:03 +01:00
924c2fd6da
cpu/stm32/adc: migrate to ztimer 2021-12-02 13:44:03 +01:00
0c7d2a0f55
cpu/stm32/eth: migrate to ztimer 2021-12-02 12:22:41 +01:00
Dylan Laduranty
97f7b67b49
Merge pull request #17291 from fjmolinas/pr_nrf9160_kconfig
cpu/nrf9160: add Kconfig dependencies
2021-12-02 09:59:16 +01:00
Francisco Molina
4aaf8f12a0 cpu/nrf9160: add Kconfig dependencies 2021-12-02 07:51:21 +01:00
Gunar Schorcht
891a0aae17 cpu/esp8266: fix esp_sw_timer compile problem 2021-12-02 06:17:48 +01:00
Gunar Schorcht
7da115f9e6 cpu/esp32: fix esp_hw_counter compile problem 2021-12-02 06:17:48 +01:00
Gunar Schorcht
6123cde033 cpu/esp32: cleanup of pseudomodule definition 2021-12-02 06:17:48 +01:00
Dylan Laduranty
48e71b2d8c
Merge pull request #17302 from aabadie/pr/cpu/stm32_usb_l4
cpu/stm32: enable USB OTG FS on high end L4
2021-12-01 20:56:07 +01:00
52ce34a23f
Merge pull request #17306 from gschorcht/cpu/esp32/esp_wifi/fix_enterprise_compilation
cpu/esp32: fix esp_wifi_enterprise compilation problem
2021-12-01 15:31:40 +01:00
Gunar Schorcht
09c0341442 cpu/esp32: fix esp_wifi_enterprise compilation problem
With the change from using archive files to using object files in PR #14754, the module `esp_wifi_enterprise` was no longer compilable. The reason for this was that the file `bignum.c` was present in two different vendor sub-directories and created two identical object files, which then led to a symbol conflict when linking. This commit removes one of these identical files. The one that is used in all `esp_wifi` variants is kept, the one that is only used in `esp_wifi_enterprise` is dropped.
2021-12-01 11:25:57 +01:00
337b99002a
cpu/stm32/stmclk: enable 48MHz when usbdev is used 2021-12-01 10:15:19 +01:00
f07696e7a2
cpu/stm32/usbdev: poweron USB during initialization 2021-12-01 10:15:19 +01:00
Leandro Lanzieri
5054bdc786
cpu/lpc23xx: model Kconfig 2021-12-01 10:14:34 +01:00
Leandro Lanzieri
81d646ea03
cpu/arm7_common: model Kconfig 2021-12-01 10:14:32 +01:00
benpicco
bab6f8960c
Merge pull request #17293 from aabadie/pr/cpu/stm32_cmsis_update
cpu/stm32: bump cmsis repositories to latest releases + extend CPU models kconfig
2021-12-01 08:23:39 +01:00
Francisco
cb07027b39
Merge pull request #17277 from leandrolanzieri/pr/cpu/qn908x/model_kconfig
cpu/qn908x: model kconfig
2021-12-01 01:03:30 +01:00
benpicco
05b9c84369
Merge pull request #17255 from MrKevinWeiss/pr/kconfig/sam54
.murdock: Add same54-xpro to kconfig tests
2021-11-29 23:22:23 +01:00
6c60326612
cpu/stm32/kfconfigs: add new CPU from L4 family 2021-11-29 14:26:00 +01:00
a9106719c2
cpu/stm32/kfconfigs: add new CPUs from G4 family 2021-11-29 14:20:20 +01:00
658fa5d048
cpu/stm32/kfconfigs: add new CPUs from G0 family 2021-11-29 14:19:16 +01:00
16db45f77e
cpu/stm32: fix missing clock configuration defines for g0 2021-11-29 14:12:18 +01:00
d09f2e99e3
cpu/stm32/kfconfigs: add new CPUs from WB family 2021-11-29 13:57:20 +01:00
Leandro Lanzieri
c5e9e08de8
cpu/qn908x: model Kconfig 2021-11-29 13:56:43 +01:00
Leandro Lanzieri
922fca3962
cpu/qn908x: add periph_flexcomm as SPI dependency 2021-11-29 13:56:43 +01:00
1746bf9e6f
cpu/stm32/dist: fix bug in gen_kconfig.py script 2021-11-29 13:52:26 +01:00
6a219d7cfa
cpu/stm32: bump cmsis versions to latest release 2021-11-29 13:22:59 +01:00
Leandro Lanzieri
368ccdf3f8
sys/vfs: model Kconfig 2021-11-29 10:30:49 +01:00
MrKevinWeiss
fba9cad987
periph/gpio: Model TAMPER_WAKE for kconfig 2021-11-29 09:12:28 +01:00
Gunar Schorcht
007e29ebb5 cpu/periph/i2c: update implementations to new I2C API
Make all `spi_acquire` implementations return `void` and add assertions to check for valid device identifier where missing.
2021-11-29 06:35:25 +01:00
Erik Ekman
7825512d18 cpu/riscv_common: Suppress cppcheck error
cpu/riscv_common/thread_arch.c:188: error (comparePointers): Subtracting pointers that point to different objects
2021-11-25 13:08:51 +01:00
Erik Ekman
b5f96d2040 cpu/cortexm_common: Suppress cppcheck errors
cpu/cortexm_common/thread_arch.c:262: error (comparePointers): Comparing pointers that point to different objects
cpu/cortexm_common/thread_arch.c:266: error (comparePointers): Subtracting pointers that point to different objects
2021-11-25 13:08:51 +01:00
Erik Ekman
e5d60176e4 cpu/esp: Suppress cppcheck errors
cpu/esp_common/syscalls.c💯 error (memleak): Memory leak: mtx
cpu/esp_common/syscalls.c:131: error (memleak): Memory leak: rmtx
cpu/esp_common/syscalls.c:365: error (comparePointers): Subtracting pointers that point to different objects

cpu/esp_common/thread_arch.c:355: error (comparePointers): Comparing pointers that point to different objects

cpu/esp8266/startup.c:59: error (comparePointers): Subtracting pointers that point to different objects
2021-11-25 13:08:51 +01:00
Leandro Lanzieri
92b7e5ea53
cpu/atxmega: fix dependency 2021-11-22 12:25:57 +01:00
Leandro Lanzieri
845681448d
cpu/atmega_common: move PCINT documentation from boards 2021-11-22 12:25:57 +01:00
Leandro Lanzieri
a37f59b109
cpu/atxmega: model Kconfig 2021-11-22 12:25:29 +01:00
Leandro Lanzieri
b8e2e3ce66
cpu/atmega_common: model Kconfig 2021-11-22 12:25:29 +01:00
Leandro Lanzieri
b534f26e17
cpu/avr8_common: model Kconfig 2021-11-22 12:25:29 +01:00
Leandro Lanzieri
96f31ec39b
cpu/lpc1768: add Kconfig configuration 2021-11-22 09:07:42 +01:00
Jean Pierre Dudey
7ab6729b04
Merge pull request #17236 from leandrolanzieri/pr/cpu/cc26xx_cc13xx/model_kconfig
cpu/{cc26xx, cc13xx}: model kconfig
2021-11-21 17:45:57 +01:00
benpicco
2d882c3521
Merge pull request #16737 from JKRhb/uncrustify
treewide: Address uncrustify suggestions
2021-11-21 15:42:05 +01:00
Benjamin Valentin
669104d841 cpu/sam0_common: SPI: don't perform DMA transfer for small buffers
Setting up a DMA transfer can take longer than sending out a buffer
byte by byte if the buffer is small.

DMA only shows advantages for large buffers, using it for every transfer
will cause a net slowdown.

Since we did not come up with a good way to determine the treshold based
on the SPI frequency, just use a fixed buffer for now so that DMA can be
used without slowing things down overall.
2021-11-19 17:22:51 +01:00
benpicco
e0b3cba571
Merge pull request #17226 from dylad/pr/boards/nrf9160dk/add_riotboot_support
boards/nrf9160dk: add riotboot support
2021-11-19 15:45:05 +01:00
06530c4297
cpu/stm32: clone cmsis header in build/stm32 2021-11-19 13:24:57 +01:00
Leandro Lanzieri
05224def47
cpu/cc26x2_cc13x2: model Kconfig 2021-11-19 10:52:23 +01:00
Leandro Lanzieri
7237002ead
cpu/cc26x0_cc13x0: model Kconfig 2021-11-19 10:52:08 +01:00
Leandro Lanzieri
c68fce0850
cpu/cc26xx_cc13xx: model Kconfig 2021-11-19 10:50:50 +01:00
Jan Romann
3056b89252
cpu/riscv_common: uncrustify 2021-11-19 00:20:12 +01:00
Dylan Laduranty
25b168c34f boards/nrf9160dk: add riotboot to FEATURES_PROVIDED 2021-11-18 23:05:42 +01:00
benpicco
09e0692a85
Merge pull request #17201 from bergzand/pr/nrf5x/periph_qdec
nrf5x_common: Add qdec peripheral implementation
2021-11-18 22:30:58 +01:00
benpicco
2ffbcecbe1
Merge pull request #17225 from dylad/pr/cpu/nrf91/add_periph_flashpage_support
cpu/nrf9160: add periph_flashpage support
2021-11-18 22:10:18 +01:00
benpicco
24aa7eb6bf
Merge pull request #17191 from benpicco/drivers/periph-byte_type
drivers/periph: use uint_fast8_t as default type
2021-11-18 17:21:55 +01:00
Jan Romann
bd7b277f7e
cpu/fe310: uncrustify 2021-11-18 15:44:17 +01:00
Leandro Lanzieri
c5f9d50a57 socket_zep: add Kconfig 2021-11-18 14:17:29 +01:00
Benjamin Valentin
fa2d9bde56 socket_zep: port to radio HAL 2021-11-18 11:51:14 +01:00
Francisco
d573401319
Merge pull request #16912 from leandrolanzieri/pr/cpu/efm32/model_kconfig
cpu/efm32: model kconfig
2021-11-18 11:02:29 +01:00
Benjamin Valentin
3d8e0d7f43 cpu/esp32: fix cast to periph type 2021-11-18 10:14:51 +01:00
Benjamin Valentin
eabc9a8042 cpu/nrf5x_common: fix cast to periph type 2021-11-18 10:14:51 +01:00
Benjamin Valentin
90a6d90df8 cpu/gd32v: uart: fix function parameter 2021-11-18 10:14:51 +01:00
Francisco
691601fbe2
Merge pull request #17087 from gschorcht/cpu/esp32/fix_code_placement
cpu/esp32: place freertos and periph in IRAM
2021-11-18 10:05:25 +01:00
Leandro Lanzieri
805a77b13a
cpu/efm32: model Kconfig 2021-11-18 09:03:06 +01:00
Leandro Lanzieri
44e7e82fad
Merge pull request #17227 from leandrolanzieri/pr/cpu/atmega1281/fix_pcint
cpu/atmega1281: fix pcint
2021-11-18 08:55:30 +01:00
Gunar Schorcht
be1532d935
Merge pull request #17221 from maribu/cpu/esp32
cpu/esp32: make CI happy
2021-11-18 06:45:30 +01:00
31c531c904
Merge pull request #17218 from maribu/cpu/arm7_common
cpu/arm7_common: suppress false positives of cppcheck
2021-11-18 06:30:46 +01:00
Dylan Laduranty
6671aada97 cpu/nrf9160: add FLASHPAGE* feature to Kconfig 2021-11-17 17:25:36 +01:00
Leandro Lanzieri
1035620b38
cpu/atmega1281: fix pcint 2021-11-17 15:05:25 +01:00
Dylan Laduranty
cc440bc296 cpu/nrf9160: add flashpage configuration 2021-11-17 14:06:04 +01:00
Dylan Laduranty
b734622944 cpu/nrf5x_common: update periph_flashpage for nRF9160 support 2021-11-17 14:05:51 +01:00
Marian Buschsieweke
b2f9e2c226
cpu/esp32: fix wrong control flow 2021-11-17 13:10:37 +01:00
Marian Buschsieweke
e46c1f732e
cpu/esp32: make CI happy 2021-11-17 13:10:37 +01:00
9f9ecca95e
Merge pull request #17219 from maribu/cpu/atmega_common
cpu/atmega_common: make cppcheck happy
2021-11-17 10:10:20 +01:00
19a5310ca2
Merge pull request #17220 from maribu/cpu/cortexm_common
cpu/cortexm_common: make CI happy
2021-11-17 10:07:30 +01:00
Dylan Laduranty
aa8608eff5
Merge pull request #17064 from bergzand/pr/usbdev/xmit
USB: refactor to xmit-based API
2021-11-17 09:07:00 +01:00
Marian Buschsieweke
7885130809
cpu/cortexm_common: make CI happy 2021-11-16 21:52:55 +01:00
Marian Buschsieweke
fcba75d86d
cpu/arm7_common: suppress false positives of cppcheck 2021-11-16 21:51:48 +01:00
83c2f2d367
Merge pull request #17155 from maribu/cpu/native
cpu/native: align stack in thread_stack_init()
2021-11-16 20:48:32 +01:00
a6b6f43ce2
sam0_common/usbdev: Adapt to xmit API 2021-11-16 20:17:04 +01:00
c81df904ea
stm32/usbdev: Adapt to xmit API 2021-11-16 20:17:04 +01:00
617027ab5c
nrf52/usb: Adapt to xmit API 2021-11-16 20:17:03 +01:00
Marian Buschsieweke
d91c9cdc5a
cpu/atmega_common: make cppcheck happy 2021-11-16 16:20:26 +01:00
3b1bdd6b3c
nrf5x_common: Add qdec peripheral implementation 2021-11-16 15:21:51 +01:00
76215adef1
Merge pull request #17154 from maribu/cpu/stm32/periph_usb
cpu/stm32/periph/usbdev: fix alignment issues
2021-11-16 11:20:34 +01:00
Dylan Laduranty
8f4ef1eb75
Merge pull request #17186 from benpicco/cpu/sam0_common/uart-frac
cpu/sam0_common: uart: set oversampling based on baud rate
2021-11-15 21:53:19 +01:00
chrysn
5a1c5ad096
Merge pull request #17202 from Ollrogge/doxygen_fix_pr
periph/flashpage: fix wrong doxygen group
2021-11-15 19:43:32 +01:00
Francisco
72abac66f1
Merge pull request #17183 from fjmolinas/pr_stm32wl_adc
cpu/stm32/wl: initial periph_adc implementation
2021-11-15 19:06:24 +01:00
Ollrogge
37403c09eb periph/flashpage: fix wrong doxygen group 2021-11-15 17:25:59 +01:00
benpicco
70ae34a448
Merge pull request #16979 from ospoco/master
cpu/stm32: Add hardening changes to stm32
2021-11-15 15:09:01 +01:00
Francisco Molina
63c51d4add cpu/stm32/wl: initial periph_adc implementation 2021-11-15 09:52:45 +01:00
benpicco
046ecf221e
Merge pull request #17187 from fjmolinas/pr_i2c_stm32wl_typo
cpu/stm32/include/cpu_conf_stm32_common.h: fix typo in macro
2021-11-12 13:41:58 +01:00
VanL
ee832148b3 cpu/stm32: Add hardening changes to stm32
Initialize STM32 RDP in a glitch-resistant fashion to prevent
debugger use when restrictions are set by the designer.
2021-11-11 15:58:52 -06:00
Francisco Molina
ec0e3d242e cpu/stm32/include/cpu_conf_stm32_common.h: fix typo in macro 2021-11-11 19:58:34 +01:00
Benjamin Valentin
18cdd100a9 cpu/sam0_common: uart: set oversampling based on baud rate
In Asynchronous Fractional baud rate mode, the baud rate can not be
greater than the source frequency divided by the oversampling (8, 16).

Currently we are always using 16x oversampling.
This makes it impossible to e.g. set a 2 MHz UART baud rate on the 16 MHz
`saml10-xpro`.

With this change, the oversampling is automatically reduced to 8x which
allows us to set 16 MHz / 8 -> 2 MHz baud rate.
2021-11-11 17:03:05 +01:00
Benjamin Valentin
1ef458a701 cpu/sam0_common: uart: wait for synchronisation done after powerup
Otherwise we lose settings if we write to it right after uart_poweron()
2021-11-11 14:32:42 +01:00
326b0c980a
cpu/native: migrate periph_rtc to ztimer 2021-11-11 10:54:30 +01:00
Marian Buschsieweke
73fc2c215a
Merge pull request #17150 from maribu/cpu/esp_common/periph_flashpage
cpu/esp_common: fix unaligned access in periph_flashpage
2021-11-08 10:49:40 +01:00
Marian Buschsieweke
cb6525b033
cpu/esp_common: fix unaligned access in periph_flashpage 2021-11-07 22:06:27 +01:00
Marian Buschsieweke
09b8387df4
cpu/native: align stack in thread_stack_init()
Unaligned accesses on x86(_64) are allowed, but slow. However, some host systems
might not be that forgiving. Aligning the stack to sizeof(uintptr_t) should be
a pretty safe safety measure.

And with this done, all casts of the stack pointer that increase alignment
requirements are now intermediately casted to `uintptr_t` to silence
warnings from -Wcast-align - after all the stacks are now manually aligned.
2021-11-06 20:22:10 +01:00
Marian Buschsieweke
825a598ca7
cpu/stm32/periph/usbdev: fix alignment issues
Make sure in `_usbdev_new_ep()` that `usbdev_ep_t::buf` is always aligned to 4
bytes. With this in mind, add intermediate casts to `uintptr_t` before casting
`usbdev_ep_t::buf` to `uint32_t *` to silence `-Wcast-align`, as we now manually
enforced correct alignment.
2021-11-06 20:19:39 +01:00
dylad
8842377e93 cpu/sam0: prevent disabled irq from being called
Reported-by: biboc <bapclenet@gmail.com>
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2021-11-05 18:21:21 +01:00
Francisco
c739516ac4
Merge pull request #17132 from miri64/core/enh/activate-SCHED_TEST_STACK
core: make SCHED_TEST_STACK boolean and default to 1 with DEVELHELP
2021-11-05 11:11:36 +01:00
Martine Lenders
098eeb1a2c
cpu/esp_common: suppress cppcheck false positives 2021-11-05 09:27:00 +01:00
Martine Lenders
f08989a3c8
core: make SCHED_TEST_STACK boolean and default to 1 with DEVELHELP 2021-11-05 09:27:00 +01:00
d9dd0cc3b1
cpu/sam0_common: Uncrustified and fixed static-check issues 2021-11-04 13:49:34 +01:00
aba81ffa5c
cpu/nrf52: Uncrustified and fixed static-check issues 2021-11-04 13:49:34 +01:00
Leandro Lanzieri
f64b166319
Merge pull request #16845 from MrKevinWeiss/pr/kconfig/supportstms
.murdock: Add nucleo boards to kconfig test
2021-11-01 09:55:22 +01:00
Gunar Schorcht
aecc516ce9 cpu/esp32: place freertos and periph in IRAM
The IRAM is much faster, while the IROM is much slower and can only be accessed via a cache, which is also sometimes disabled, e.g. by the WiFi module or when writing to the flash. Therefore, time-critical code as well as code that has to work even when the cache is disabled must be placed in the IRAM.
2021-10-30 14:46:57 +02:00
Gunar Schorcht
723c24c1d3
Merge pull request #17080 from gschorcht/cpu/esp8266/fix_freertos_placement_in_irom
cpu/esp8266: place freertos functions in IRAM
2021-10-29 13:02:20 +02:00
Gunar Schorcht
06acd8b420 cpu/esp8266: place freertos functions in IRAM
The functions of the `esp*/freetos` libraries must be placed in IRAM because they can be called when the IROM cache is disabled. While the functions implemented in `cpu/esp8266/freetos/*.c` are already placed in IRAM, the functions implemented in `cpu/esp_common/freetos/*.c` are not placed in IRAM. The reason for this is that the object files of these files are created in the `esp_freertos_common` directory, which is not included in the `esp.riot-os.ld` file because the library is named `esp_freertos_common`.
2021-10-29 11:17:24 +02:00
766ebf0af5
stm32/usbdev: Use ztimer instead of xtimer 2021-10-27 18:56:42 +02:00
Francisco
7f3344870d
Merge pull request #16972 from Ollrogge/flashpage_pr
periph/flashpage: extend API
2021-10-26 12:51:05 +02:00
Francisco
96e2ad1f0e
Merge pull request #16956 from fjmolinas/pr_native_relative_stacksize
cpu/native/include: other stacksizes based on default
2021-10-26 09:04:16 +02:00
Gunar Schorcht
697c44811a
Merge pull request #16911 from yarrick/esp_jtag
cpu/esp32: Add openocd programming support
2021-10-26 01:24:27 +02:00
Ollrogge
be254d4125 cpu/cc2538: adjust rom size to account for cca region 2021-10-25 15:13:37 +02:00
Ollrogge
cdd9f303cf cpu/native: extend flashpage API 2021-10-25 15:07:37 +02:00
Ollrogge
4fa25af86c cpu/lpc23xx: extend flashpage API 2021-10-25 15:07:37 +02:00
Ollrogge
3a11b1fbd2 cpu/riscv_common: extend flashpage API 2021-10-25 15:07:37 +02:00
Ollrogge
741943f021 cpu/msp430_common: extend flashpage API 2021-10-25 15:03:50 +02:00
Francisco Molina
5070489aa6 cpu/native/include: other stacksizes based on default 2021-10-25 09:13:21 +02:00
iosabi
7b1f083cd8 esp8266: Download Espressif RTOS SDK as a new RIOT PKG
RIOT-OS uses part of Espressif ESP8266 RTOS SDK to build support for
this CPU. The SDK includes some vendor-provided closed source
pre-compiled libraries that we need to modify to adapt to RIOT-OS
usage. This library modifications was done once and uploaded to a fork
of the vendor repository and was provided as an environment variable.

This patch changes two things:

1. It installs the SDK as a RIOT PKG from the new pkg/esp8266_sdk
directory instead of requiring the user to download it separately.

2. It performs the library modifications (symbol renames) on the pkg
Makefile removing the need to use a fork with the modifications applied
and simplifying the SDK update and future modifications.

This change sets the SDK package version (git SHA) to the same one that
our fork was using as a parent in the vendor repository, meaning that
the output libraries are exactly the same as before.

Tested with
```
ESP8266_RTOS_SDK_DIR=/dev/null USEMODULE=esp_log_startup make -C tests/shell BOARD=esp8266-esp-12x flash
```

and verified that the program works. The boot message now includes:
```
ESP8266-RTOS-SDK Version v3.1-51-g913a06a9
```
confirming the SDK version used.

`/dev/null` in the test is just to make sure that no evaluation of
`ESP8266_RTOS_SDK_DIR` in make is affected by the environment variable
value which would be set to the SDK for people who followed the set up
instructions before this change.

Tested the checkout size:
```bash
$ du -hs build/pkg/esp8266_sdk/
124M	build/pkg/esp8266_sdk/
```
2021-10-23 11:13:38 +00:00
5e52a0ea4c cpu/nrf5x_common: nrfx.h: add missing "kernel_defines.h" include 2021-10-20 11:36:55 +02:00
Ollrogge
d38f6c68b5 cpu/cortexm_common: extend flashpage API 2021-10-19 22:33:15 +02:00
benpicco
f57e2f1e99
Merge pull request #16055 from benpicco/soc_init
cpu: call cpu_init() from startup code, not from board
2021-10-18 20:52:53 +02:00
Erik Ekman
cbfe502cc6 cpu/esp32: Reset when starting debugging
To avoid 'Target not examined yet' error
2021-10-18 20:11:32 +02:00
Benjamin Valentin
3e20e939c6 cpu: drop cpu_init() from public headers
Boards are no longer supposed fo call the function, so drop it from
public header files.
2021-10-18 17:31:26 +02:00
Erik Ekman
1c6d7dcdaf tools/openocd: Make verifying flashed image optional
Checksumming flash is not supported on xtensa platform:

Warn : not implemented yet

make: *** [.../RIOT/examples/saul/../../Makefile.include:796: flash] Error 1
2021-10-15 10:13:25 +02:00
Erik Ekman
2df7d499c8 tools/openocd: Export IMAGE_OFFSET only when flashing 2021-10-15 10:12:40 +02:00
Erik Ekman
d47aa2d550 cpu/esp32: Flash bootloader, partition and app via openocd
https://github.com/espressif/openocd-esp32 is needed.

Example config (when compiled from source):
export OPENOCD="~/esp/openocd-esp32/src/openocd -s ~/esp/openocd-esp32/tcl"
2021-10-15 10:00:57 +02:00
Erik Ekman
3d7d211157 cpu/esp: Always create app.elf.bin and partitions.bin
Even if programmer is not esptool
2021-10-15 09:59:38 +02:00
Marian Buschsieweke
32be74291c
Merge pull request #16790 from maribu/cpu/avr8_common/ldscripts
cpu/avr8_common: Fix link with binutils > 2.35.2
2021-10-15 09:59:14 +02:00
Marian Buschsieweke
696598ff9e
Merge pull request #16985 from gschorcht/cpu/esp/fix_doc
cpu/esp8266, boards/*esp*: fix documentation
2021-10-15 07:54:40 +02:00
Gunar Schorcht
a3ca9776c2 cpu/esp8266: fix documentation format
Fix various issues with incompatibilities of markdown supported by doxygen.
2021-10-15 02:50:21 +02:00
MrKevinWeiss
9b6a63a951
drivers/kconfig: simplify shared rtt/rtc hardware in kconfig 2021-10-14 11:28:46 +02:00
MrKevinWeiss
c7820cf7e5
*/rtt|rtc: Fix Kconfig modeling 2021-10-14 11:28:44 +02:00
Benjamin Valentin
cb18689712 cpu/avr8_common: call cpu_init() 2021-10-13 23:21:56 +02:00
Benjamin Valentin
bcb0df8e18 cpu/cortexm_common: call cpu_init() 2021-10-13 23:21:56 +02:00
Benjamin Valentin
86da174be2 cpu/msp430_common: call msp430_cpu_init() 2021-10-13 23:21:56 +02:00
Benjamin Valentin
0658c41d85 cpu/mips32r2_common: call cpu_init() 2021-10-13 23:21:56 +02:00
Benjamin Valentin
0f625eaebd cpu/riscv_common: call cpu_init() 2021-10-13 23:21:56 +02:00
benpicco
ffd1254eac
Merge pull request #16959 from bissell-homecare-inc/stm32g031-disco
boards/stm32g031-disco,examples,tests: Added STM32G031-DISCO board
2021-10-13 23:17:06 +02:00
Dave VanKampen
55ea8cfb97 boards/stm32g031-disco,examples,tests: Added STM32G031-DISCO board 2021-10-13 12:14:45 -04:00
Marian Buschsieweke
62d6a560b1
cpu/avr8_common: Fix link with binutils > 2.35.2
The xfa.ld script is incompatible with binutils > 2.35.2 and results
in firmwares that wont boot. Sadly, I couldn't figure out an elegant
way to fix the issue. Instead, I modified the linker script provided
by binutils to also include XFA.
2021-10-13 16:37:19 +02:00
benpicco
dcc2908a94
Merge pull request #16976 from benpicco/cpu/native-gcc11
cpu/native: fix build with gcc 11
2021-10-13 16:29:17 +02:00
Marian Buschsieweke
94921942d3
cpu/esp32/doc: Restore center alignment of tables 2021-10-13 14:56:00 +02:00
kl
0f2d10dfb7 cpu/stm32: add HWRNG support to CPU_LINE STM32F469XX 2021-10-13 11:22:45 +02:00
Benjamin Valentin
1a2984b786 cpu/native: fix build with gcc 11
This fixes the following warning with GCC 11.2:

    cpu/native/include/native_internal.h:153:13: error: variably modified ‘__isr_stack’ at file scope
      153 | extern char __isr_stack[SIGSTKSZ];
          |             ^~~~~~~~~~~
    cpu/native/include/native_internal.h:154:13: error: variably modified ‘__end_stack’ at file scope
      154 | extern char __end_stack[SIGSTKSZ];
2021-10-12 14:56:11 +02:00
luisan00
af4c01bbc6 cpu/stm32: add stm32f469i to ADCs defs 2021-10-11 23:35:48 +02:00
Jean Pierre Dudey
b965feb5ba
Merge pull request #16968 from Mesh4all/cpu/stm32_duplicated_defs
cpu/stm32: duplicated ADC devices definitions
2021-10-11 12:58:05 +02:00
Marian Buschsieweke
1ba0bdfa9c
Merge pull request #16952 from maribu/esp32/doc
cpu/esp32,boards/*esp32*:  fix documentation
2021-10-11 08:57:58 +02:00
Marian Buschsieweke
8d1d00776c
cpu/esp32: Fix documentation format
Fix various issues with incompatibilities to flavor of markdown
supported by Doxygen and re-format text.
2021-10-10 21:35:30 +02:00
luisan00
6459d4c344 cpu/stm32: fix duplicated defs 2021-10-10 00:04:51 +02:00
Francisco
93bff48538
Merge pull request #16909 from leandrolanzieri/pr/cpu/riscv/model_kconfig
cpu/riscv: model Kconfig
2021-10-05 16:51:17 +02:00
benpicco
3b002cc4c8
Merge pull request #16821 from jia200x/pr/cc2538/rx_busy
cc2538_rf: remove RX Busy detection in request_set_trx_state
2021-10-05 00:08:40 +02:00
Leandro Lanzieri
a015508e77
cpu/gd32v: model Kconfig 2021-10-01 11:26:15 +02:00
Leandro Lanzieri
fe8e043c36
cpu/fe310: model Kconfig 2021-10-01 11:26:15 +02:00
Leandro Lanzieri
cf753c6790
cpu/riscv_common: model Kconfig 2021-10-01 11:26:15 +02:00
Marian Buschsieweke
35a1b60068
cpu/{atxmega,atmega_common}: fix invalid use of PSTR()
core_panic() doesn't expect the message to be in program memory, but
in data memory. Bad things will happen on AVR when the address is
interpreted as being in data address space, but the allocation is
done in program address space.
2021-09-30 17:15:39 +02:00
Marian Buschsieweke
7bfc1814ae
Merge pull request #16917 from maribu/cpu/avr8_common/cleanup
cpu/avr8_common: Clean up cpu_print_last_inscrution()
2021-09-30 13:29:01 +02:00
Marian Buschsieweke
417bc949ab
cpu/avr8_common: Clean up cpu_print_last_inscrution() 2021-09-30 10:39:21 +02:00
Leandro Lanzieri
b160e43233
Merge pull request #16837 from fjmolinas/pr_kconfig_nrf52
cpu/nrf52: initial kconfig modeling (no netif)
2021-09-30 09:57:11 +02:00
Jose Alamos
474838ba15
cc2538_rf: remove RX Busy detection in request_set_trx_state
This PR removes the RX Busy detection because it doesn't seem to be
reliable enough to ensure the radio is not locked. Some radios such as
nrf802154 don't provide RX Busy detection mechanisms, so this is not
uncommon. It's intended that the MAC layer takes care of this (e.g
slots, CSMA-CA with retransmissions, etc)
2021-09-29 16:05:34 +02:00
Francisco Molina
6b276af790 cpu/nrf52: initial kconfig modeling 2021-09-29 10:17:47 +02:00
Francisco Molina
c9de733c52 cpu/nrf52/Makefile.dep: move radio dependencies from boards/common 2021-09-29 10:16:31 +02:00
benpicco
6d9db1673d
Merge pull request #16902 from maribu/cpu/avr8_common/float
cpu/avr8_common: implement printf_float
2021-09-28 14:28:29 +02:00
Francisco
211c1a51d8
Merge pull request #16886 from bissell-homecare-inc/g030_ram_len
cpu/stm32: added RAM_LEN identifier for stm32g03x
2021-09-28 13:40:42 +02:00
Marian Buschsieweke
b12a8103e3
cpu/avr8_common: implement printf_float 2021-09-28 12:35:43 +02:00
José Alamos
1ee57f80a0
Merge pull request #15030 from jia200x/pr/lora/remove_xtimer
drivers/sx127x: remove ZTIMER_USEC dependency
2021-09-27 11:41:22 +02:00
benpicco
d1768e95a5
Merge pull request #16885 from bissell-homecare-inc/g0_adc
cpu/stm32: added ADC for g0
2021-09-25 18:32:19 +02:00
1b83ecdd5d
Merge pull request #16881 from bissell-homecare-inc/add_g0_apbmul
added APB12 bus multiplier entry for applicable cpus
2021-09-24 16:25:07 +02:00
Dave VanKampen
6414c64f89 cpu/stm32: added ADC for g0 2021-09-24 10:20:09 -04:00
Dave VanKampen
664f5d156d cpu/stm32: added RAM_LEN identifier for stm32g03x 2021-09-23 10:06:33 -04:00
Dave VanKampen
7ab8ec391a cpu/stm32: added APB12 bus multiplier entry for applicable cpus 2021-09-23 08:46:52 -04:00
benpicco
cc3df3ec85
Merge pull request #16822 from benpicco/cpu/native-stdio
cpu/native: make use of stdio_read() / stdio_write()
2021-09-22 20:47:45 +02:00
Benjamin Valentin
13e16fa34f cpu/native: make use of stdio_read() / stdio_write()
On `native` the functions stdio_read() / stdio_write() were not
used.
Those functions are intended for alternative stdio implementations.
As a result, no alternative stdio could be used on `native`.

To fix this, call the functions in `_native_read()` / `_native_write()`
when dealing with stdio fds.
2021-09-22 17:22:30 +02:00
Karl Fessel
baf07e881e cpu/fe310: add CPU_CORE information 2021-09-22 15:51:54 +02:00