1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00
Commit Graph

4868 Commits

Author SHA1 Message Date
Gunar Schorcht
f92c083528 cpu/esp32: fix compile error 2019-12-15 11:17:23 +01:00
Gunar Schorcht
2e4e3507bd cpu/esp32: change netopt in esp_eth for lwIP 2019-12-14 16:59:21 +01:00
Gunar Schorcht
be688f51c6 cpu/esp32: expose esp_eth_setup for lwIP 2019-12-14 16:59:21 +01:00
Gunar Schorcht
3235f18b22 cpu/esp32: expose eps_eth netdev for lwIP 2019-12-14 16:59:21 +01:00
benpicco
2ed87d54bd
Merge pull request #12947 from gschorcht/cpu/esp32/fix_send_buffer
cpu/esp32: esp_wifi send buffer should not be on stack
2019-12-14 11:21:26 +01:00
Gunar Schorcht
e6db92567e cpu/esp32: esp_wifi send buffer should not be on stack
The buffer[EHTHERNET_MAX_LEN] used in _esp_wifi_send to convert the iolist of the given packet to a plain buffer for the WiFi interface should not be on the stack to prevent the sending thread's stack from overflowing.
2019-12-14 10:21:05 +01:00
b49cca2d0c
cpu/fe310: include thread.h in cpu.h
This ensures the ARRAY_SIZE macro is implicitly available
2019-12-13 16:25:11 +01:00
William MARTIN
1d54137295 cpu/stm32l0: add stm32l010xx family
This adds support for members of the stm32l010xx family.

Co-authored-by: William MARTIN <wysman@gmail.com>
2019-12-13 14:14:28 +01:00
Gunar Schorcht
baf4db675d cpu/esp8266: fix bootloader images
Some ESP8266/ESP8285 modules only work with DOUT SPI flash mode and a SPI flash frequency of 26 MHz. Therefore, these parameters have to be used by default. Otherwise some modules will no boot.
2019-12-12 08:16:54 +01:00
Gunar Schorcht
3e3a6f7018 cpu/esp8266: change of log output level in vendor code 2019-12-12 08:16:54 +01:00
Gunar Schorcht
a3de59fec3 cpu/esp8266: log outputs from esp vendor code
Log outputs from the Espressif vendor code are completely controlled by LOG_LEVEL and should not be controlled by ENABLE_DEBUG by file.
2019-12-12 08:16:54 +01:00
dylad
f44d9f88f0 sam0/uart: remove useless read-modify-write op 2019-12-10 20:19:34 +01:00
Benjamin Valentin
b1808800ed cpu/lpc2387: align lpc2387.ld with cortexm_base.ld
For better compatibility copy most of cortexm_base.ld
and use the same section names.

Only interrupt stacks and the two additional (currently unused)
heap sections are different between the two now.
2019-12-09 15:13:53 +01:00
Benjamin Valentin
d57e03c94c cpu/lpc2387: use the same default stack sizes as cortexm_common
Both architectures are variants of the ARM architecture and use the same
toolchain.
There is no reason to have such wildly different defaults.

This results in some tests passing that would crash before:

 - [x] `tests/pkg_libcose`
 - [x] `tests/pkg_qdsa`
 - [x] `tests/pkg_relic`
 - [x] `tests/pkg_tweetnacl`
 - [x] `tests/pthread_tls`

`THREAD_EXTRA_STACKSIZE_PRINTF_FLOAT` is not used anywhere in RIOT
anymore, so just drop it.
2019-12-08 22:07:57 +01:00
benpicco
34963006f0
Merge pull request #11258 from Former/stm32f1_rtc
cpu: RTC implementation for STM32F1
2019-12-08 15:15:50 +01:00
Gunar Schorcht
81cde86a73 cpu/esp8266: enable esp_log_startup on LOG_LEVL=4 2019-12-07 15:16:32 +01:00
Gunar Schorcht
b4b3e4f934 cpu/esp8266: module to print startup info
Startup information, including board configuration, is only printed when module esp_log_startup is used. This reduces the amount of information that is printed by default to the console during the startup. The user can enable module esp_log_startup to get the additional startup information.
2019-12-07 15:16:32 +01:00
benpicco
29a3a7f8e9
Merge pull request #12852 from chudov/atmegarfr2-rtt
cpu/atmega256rfr2: symbol counter based RTT support
2019-12-06 16:49:33 +01:00
855e249d8c
Merge pull request #12890 from gschorcht/cpu/esp/fix_tests_spiffs
cpu/esp*: fixes for tests/pkg_spiffs and tests/pkg_littlefs
2019-12-06 12:42:14 +01:00
Gunar Schorcht
35357b86a8 cpu/esp*: reduce test timeouts for spiffs/littlefs
To avoid that murdock times out before tests/pkg_spiffs and tests/pkg_littlefs time out, the configured test timeouts for these tests is reduced to 200 seconds which should be enough. An ESP32 needs an average of 60 seconds for these tests, while an ESP8266 needs in average 100 seconds.
2019-12-06 11:44:15 +01:00
Gunar Schorcht
95c6d1859c cpu/esp32: fix for crashes of tests/pkg_spiffs
ESP32 nodes can crash during SPI Flash write operations if required parts of the code are not in the IRAM but in the cached SPI Flash memory, which is disabled during the SPI Flash write operations. Therefore, the code of the SPIFFS package and the VFS module are now stored in the IRAM.
2019-12-06 11:44:15 +01:00
Alexei Bezborodov
88c429af5b cpu/stm32f1: FEATURES_PROVIDED += periph_rtc 2019-12-06 12:48:04 +03:00
Alexei Bezborodov
239fc2b791 cpu: RTC implementation for STM32F1
Works get_time, set_time, alarm and wakeup after set power mode STM32_PM_STOP
2019-12-06 12:47:22 +03:00
chudov
efa9bb88a2 cpu/atmega256rfr2: symbol counter based RTT support 2019-12-05 22:53:05 +01:00
a3706c1f02 cpu/fe310: add cpp feature 2019-12-05 18:27:12 +01:00
5e301219df
cpu/fe310: provide gpio feature at cpu level 2019-12-05 15:25:26 +01:00
3bdd73a146
Merge pull request #12810 from gschorcht/cpu/esp32/startup_info_develhelp
cpu/esp32: startup info if module esp_log_startup is used
2019-12-04 19:53:26 +01:00
Sebastian Meiling
912f003a35
Merge pull request #12864 from smlng/pr_freebsd_zep
cpu/native: add missing header in socket zep
2019-12-03 17:47:27 +01:00
Sebastian Meiling
6dd7d6010f cpu/native: add missing header in socket zep
Building e.g. gnrc_border_router example on FreeBSD fails due to
missing defines related to sockets. This adds the missing header
<sys/socket.h> to fix compiling.
2019-12-03 15:34:25 +01:00
Martine Lenders
2f74d9d644
Merge pull request #12517 from miri64/native/enh/reset-command
native: allow for native to be resetable via SIGUSR1
2019-12-03 10:56:11 +01:00
Martine Lenders
fa317910d0
native: allow for native to be resetable via SIGUSR1 2019-12-03 09:51:52 +01:00
Leandro Lanzieri
93788ecced cpu/kinetis/Makefile.features: Use CPU_MODEL to determine features
Now that CPU and CPU_MODEL are defined in the board's Makefile.features
it can be used to determine the available features provided by the
specific model.
2019-12-02 19:04:23 +01:00
benpicco
c9e9e04c6f
Merge pull request #12815 from benpicco/atmega-rtt
cpu/atmega_common: RTT support
2019-12-01 19:30:55 +01:00
Matthew Blue
fb211c7c0c cpu/atmega_common: initial RTT support 2019-12-01 17:26:24 +01:00
Tim Broenink
e35e9ea59f cpu/common/esp8266: use 'awk/printf' instead of 'echo' 2019-12-01 14:36:42 +01:00
Benjamin Valentin
f89b852c1d cpu/lpc2387: clean up lpc2387.ld
Clean up the linkerfile and bring it more in line with cortexm_base.ld
(so far only for the ROM part)

As a bonus, tests/cpp_ctors works now.
2019-11-29 12:13:21 +01:00
Benjamin Valentin
ed0f72c856 cpu/lpc2387: startup.s: remove dead code
Setting up the .data and .bss section happens in arm7_init.c now.
The code was commented out anyway, so just remove it.
Also remove leftover variable declarations that were only used in
the dead code.
2019-11-29 12:00:52 +01:00
Gunar Schorcht
eb73358284 cpu/esp32: enable esp_log_startup on LOG_LEVL=4 2019-11-28 18:59:09 +01:00
Gunar Schorcht
91496b3cba cpu/esp32: add bootloaders without startup info
To reduce the information that are printed at the console during the startup, special bootloaders are required that suppress the outputs which are only informational. The according bootloader has to be selected during the make process.
2019-11-28 18:59:09 +01:00
Gunar Schorcht
8d25e6909e cpu/esp32: module to print startup info
Startup information, including board configuration, is only printed when module esp_log_startup is used. This reduces the amount of information that is printed by default to the console during the startup. The user can enable module esp_log_startup to get the additional startup information.
2019-11-28 18:59:09 +01:00
benpicco
40a419baef
Merge pull request #12794 from gschorcht/cpu/esp32/cpu_clk_workaround
cpu/esp32: workaround for UART problems
2019-11-28 13:57:23 +01:00
benpicco
306319ae7a
Merge pull request #12748 from benpicco/lpc2387-lpram
cpu/lpc2387: add support for backup RAM
2019-11-28 13:51:52 +01:00
9eac4b8b75
Merge pull request #12825 from JannesVolkens/ncv7356_doc
drivers/ncv7356: Add documentation
2019-11-28 12:32:10 +01:00
Benjamin Valentin
3417cf7d8a cpu/arm7_common: be less cryptic in setup code
There is no restriction in variable names in early boot, so use
better names then p1, p2 and p3 to name our pointers.
2019-11-28 11:34:59 +01:00
Benjamin Valentin
32bbba2fc5 cpu/lpc2387: add support for backup RAM
lpc23xx has 2k of battery RAM that is retained in Deep Power Down mode.

To not overwrite that data it must only be initialized on Power On Reset.
However, RSIR looks the same when waking up from Deep Power Down as it does
on the power-on case.

So use 4 bytes of the backup RAM to keep a signature that is only valid if
memory was retained (no power-on Reset).

A small change to the linker script is required so two sections can be
placed into flash.
2019-11-28 11:33:03 +01:00
Benjamin Valentin
15fcbe837a cpu/lpc2387: add definition of RSIR bits
Add the bits of the Reset Source Identification Register
2019-11-28 11:30:38 +01:00
Dylan Laduranty
6a4259e48a
Merge pull request #12064 from benpicco/sam0-buffered_uart
cpu/sam0_common/periph/uart: implement non-blocking write
2019-11-28 10:07:11 +01:00
Dylan Laduranty
53994bdfeb
Merge pull request #12828 from bergzand/pr/sam0/adc_api
sam0/periph_adc: Fix API to return `-1` on unsupported resolution
2019-11-28 09:05:39 +01:00
Gunar Schorcht
e3bb708e4d cpu/esp32/periph: flush UART TX FIFO before a baudrate change 2019-11-28 08:57:26 +01:00
4e07a26375
Merge pull request #12819 from maribu/atmega_fix
cpu/atmega_common: Fixed atmega_exit_isr
2019-11-28 08:43:10 +01:00
Gunar Schorcht
83892aa184 cpu/esp32/periph: workaround for UART clock problems
The UART peripheral clock seems to be sporadically set to wrong value when the CPU clock is changed. In this case, the UART clock is not set to 115.200 kbps but to 96 kbps, so that the output in the console seems like garbage. This can also cause automatic tests to fail. Therefore, the CPU clock is only changed if CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ defines a different default CPU clock than the one already used at boot time.
2019-11-28 08:22:30 +01:00
83215befd9
sam0: change ADC periph to return -1 on wrong resolution
The common ADC API dictates that a sample call must return -1 on an
incorrect resolution. The sam0 ADC implementation instead threw an
assertion failure.
2019-11-27 21:09:02 +01:00
7d2e10335d
sam0: remove duplicate _done() call 2019-11-27 21:08:28 +01:00
Dylan Laduranty
5287e1c052
Merge pull request #12782 from ML-PA-Consulting-GmbH/fix/20191122__sam0common_spi_release
cpu/sam0_common/periph/spi: power off spi bus on release
2019-11-27 19:13:19 +01:00
Benjamin Valentin
0d977b3b3c cpu/sam0_common/periph/uart: implement buffered write
Implement interrupt based uart_write() using a tsrb for the TX buffer.

To enable it, add

    USEMODULE += periph_uart_nonblocking

to your Makefile.
2019-11-27 19:01:00 +01:00
Jannes
e88bbb0d6e cpu/stm32_common: Edit documentation 2019-11-27 14:15:57 +01:00
Daniel Lockau
5ea4fcd9c8 cpu/sam0_common/periph/spi: uncrustify 2019-11-27 07:16:22 +01:00
Daniel Lockau
c5ad13cb18 cpu/sam0_common/periph/spi: power off spi bus on release 2019-11-27 07:16:22 +01:00
Marian Buschsieweke
97f727349b
cpu/atmega_common: Fixed atmega_exit_isr
A context switch at the end of the ISR should only occur, if requested.
This fixes this.
2019-11-27 01:39:33 +01:00
Benjamin Valentin
964725259a cpu/lpc2387: implement periph/dac
The 10 bit DAC on the lpc23xx is very simple.
It only has one channel and can only be mapped to a single pin (P0.26).

After setting the pin mode to DAC no further configuration in needed.
2019-11-26 01:49:45 +01:00
benpicco
63e4d8ffa5
Merge pull request #12803 from gschorcht/cpu/esp32/fix_little_fs
cpu/esp32: fix to be able to use SPI flash drive with pkg_littlefs
2019-11-25 15:49:13 +01:00
d0d6e53ff4
Merge pull request #11960 from fjmolinas/pr_msp430_flashpage_raw
cpu/msp430_common: add flashpage_raw
2019-11-25 12:48:48 +01:00
Gunar Schorcht
4fe35efe2b cpu/esp32: mtd has to be in IRAM to work correctly 2019-11-25 07:24:17 +01:00
Gunar Schorcht
5f9e3b1a4b cpu/esp32: change order for spi_flash_drive_init
To see debug or error messages during SPI flash drive initialization, spi_flash_drive_init has to be called after stdio_init.
2019-11-25 07:23:47 +01:00
Benjamin Valentin
8337ab111e cpu/arm7_common: hook up puf_sram
puf_sram only relies on an uninitialized chunk of memory.
This means to enable it we just have to hook up puf_sram_init().

All memory after __bss_end should be uninitialized at startup, so
just use that.
2019-11-25 02:04:34 +01:00
Francisco Molina
0a68323570 tests/periph_flashpage: use before last page for msp430
- msp430 holds the isr vector on the last page so avoid erasing
  that page when testing.
2019-11-24 13:19:20 +01:00
fjmolinas
5368415c9a cpu/msp430_common: add flashpage_raw support 2019-11-24 13:19:19 +01:00
Francisco Molina
291727c9e7 cpu/msp430_common: specify FLASHPAGE_SIZE/NUMOF type
- Since msp430 uses 16bit it is important that the variables
  are treated as unsigned and not int so FLASHPAGE_NUMOF*FLASHPAGE_SIZE
  doesn't overflow
2019-11-24 13:19:17 +01:00
Francisco Molina
22177258df msp430_common/include: fix FLASHPAGE definitions
- TI documentation for msp430f1xx is ambiguous regarding length
  of some memmory sectors. For some cpu's the acual size is 1/4 byte
  smaller than advertised and one of the sectors is actually 256b and
  not 512.
  ref: https://e2e.ti.com/support/microcontrollers/msp430/f/166/p/798838/2962979#2962979
- Remove the first 256b sector from usage since there is not support for
  variable sized pages
- Fix msp430f2617 FLASHPAGE_NUMOFF to represent accesible memory
2019-11-24 13:18:54 +01:00
41e29e3fda
Merge pull request #12790 from maribu/atmega_isr_thread
cpu/atmega_common
2019-11-24 11:10:10 +01:00
6dbd5eeab9 cpu/stm32_common: fix typos 2019-11-23 22:39:36 +01:00
3222621423 cpu/nrf5x_common: fix typos 2019-11-23 22:39:36 +01:00
c8d1d6b3f3 cpu/nrf52: fix typos 2019-11-23 22:39:36 +01:00
31b027124b cpu/native: fix typos 2019-11-23 22:39:36 +01:00
ac7027268c cpu/msp430_common: fix typos 2019-11-23 22:39:36 +01:00
2bbcbeaccb cpu/mips32r2_common: fix typos 2019-11-23 22:39:36 +01:00
c6a80b4f4b cpu/lpc2387: fix typos 2019-11-23 22:39:36 +01:00
3eea508695 cpu/kinetis: fix typos 2019-11-23 22:39:36 +01:00
a8c3c6ab68 cpu/esp32: fix typos 2019-11-23 22:39:36 +01:00
6b233780ae cpu/efm32: fix typos 2019-11-23 22:39:36 +01:00
84bf543d78 cpu/cortexm_common: fix typos 2019-11-23 22:39:36 +01:00
b01c6707a5 cpu/cc2538: fix typos 2019-11-23 22:39:36 +01:00
cc51f4ff7c cpu/atmega_common: fix typos 2019-11-23 22:39:35 +01:00
97e49b385c cpu/atmega328p: fix typos 2019-11-23 22:39:35 +01:00
f210cf2535 cpu/atmega256rfr2: fix typos 2019-11-23 22:39:35 +01:00
26143aa38d cpu/atmega2560: fix typos 2019-11-23 22:39:35 +01:00
83d72abf8f cpu/atmega128rfa1: fix typos 2019-11-23 22:39:35 +01:00
fc4eeb3e28 cpu/atmega1284p: fix typos 2019-11-23 22:39:35 +01:00
bc7b95aee3 cpu/atmega1281: fix typos 2019-11-23 22:39:35 +01:00
Francois Berder
4a31f94cfc many typo fixes
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
benpicco
d244b0fe59
Merge pull request #12787 from gschorcht/cpu/esp32/netdev_default
cpu/esp*: define esp_now as default netdev
2019-11-23 14:59:54 +01:00
Gunar Schorcht
7325192fcd cpu/esp8266: defines esp_now as default netdev
If the user or the board definition doesn't enable `esp_wifi`, `esp_now` is defined as default netdev.
2019-11-23 14:26:37 +01:00
Gunar Schorcht
71d6a71364 cpu/esp32: defines esp_now as default netdev
If the user or the board definition doesn't enable `esp_wifi` or `esp_eth`, `esp_now` is defined as default netdev.
fixup! cpu/esp32: defines esp_now as default netdev
2019-11-23 14:26:07 +01:00
Marian Buschsieweke
606d72f64b
cpu/atmega_common: Clean up & fix IRQ handling
At the end of an ISR, the ATmega code was doing an `thread_yield()` instead of
 a `thread_yield_higher()`. This resulted in tests/isr_yield_higher failing.
 Fixing this saves a few lines of code, some ROM, and solves the issue.
2019-11-23 11:57:11 +01:00
Marian Buschsieweke
2b1bee750a
cpu/atmega_common: Stop using reserved names
Names with two leading underscores are reserved in any context of the c
 standard, and thus must not be used. This ATmega platform used it however for
 defining internal stuff. This commit fixes this.
2019-11-23 11:56:11 +01:00
benpicco
09f647eee2
Merge pull request #12693 from maribu/neopixel-atmega
drivers: Added WS281x RGB LED driver for ATmega platform
2019-11-22 22:36:36 +01:00
Dylan Laduranty
9b0ef62d64 saml1x/pm: fix doxygen ingroup 2019-11-22 22:20:19 +01:00
Dylan Laduranty
550bfdbdbf
Merge pull request #12777 from benpicco/pm_debug_puts
cpu/sam*: pm: make use of DEBUG_PUTS()
2019-11-22 19:57:46 +01:00
Gunar Schorcht
72967f8fc3 cpu/esp32: GNRC_NETIF_NUMOF is handled in CPU makefile
Since Makefile.dep files are included as last files multiple times to resolve all module dependencies, GNRC_NETIF_NUMOF is handled here.
2019-11-22 17:38:35 +01:00
Gunar Schorcht
afff683696 cpu/esp32: number of thread priorities for esp_eth
The number of thread priority levels has to be 32 if esp_eth is used.
2019-11-22 17:32:37 +01:00