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

4855 Commits

Author SHA1 Message Date
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
f04df728cb
Merge pull request #12044 from gschorcht/cpu/esp32/log_module_fix
cpu/esp32: improvements and cleanup of log_module
2019-11-22 14:33:33 +01:00
Gunar Schorcht
43d989b4d5 cpu/esp32: break on core_panic
To be able to catch a core panic in debugger and to get the last output from asynchronous UART , e.g., if the stack is smashed, the system is not rebooted immediately anymore but breaks, which stops the execution in debugger or reboots the system after WDT timeout.
2019-11-22 13:56:41 +01:00
faac10f593
Merge pull request #11994 from gschorcht/cpu/esp32/esp_wifi/crypto-fix
cpu/esp32: esp_wifi and crypto module fix
2019-11-22 11:16:33 +01:00
Gunar Schorcht
6fb7c50d48 cpu/esp32: colored output modifications
For compatibility with module log_color and the esp8266 esp_log_colored implementation.
2019-11-22 11:11:19 +01:00
Gunar Schorcht
4af78c31ef cpu/esp32: enable colored output with log_color 2019-11-22 11:11:19 +01:00
Gunar Schorcht
f500dcbf02 cpu/esp32: colored and tagged log output docu 2019-11-22 11:11:19 +01:00
Schorcht
4503f45abb cpu/esp32: esp_log_color renamed to esp_log_colored 2019-11-22 11:11:19 +01:00
Gunar Schorcht
5d51c03af9 cpu/esp32: replace ets_printf by printf
Wherever possible, ets_printf is replaced by newlib printf.
2019-11-22 11:11:19 +01:00
Gunar Schorcht
1f940b0728 cpu/esp32: map log outputs from SDK libraries
Log outputs generated by binary ESP32 SDK libraries are mapped to the ESP32's log module which supports colored and tagged log outpus. Tagged log outputs from SDK libraries are handled accordingly.
2019-11-22 11:11:19 +01:00
Gunar Schorcht
9a4cdc7e93 cpu/esp32: log_module implementation
The implementation of `log_module` for ESP32 was changed from functions to a macro-based implementation to be able to use the bunch of macros for colored and tagget log output generation.
2019-11-22 11:11:19 +01:00
Benjamin Valentin
8424d1845b cpu/lpc2387: fix doxygen errors
Document macros and remove an unused function.
2019-11-22 09:11:39 +01:00
Benjamin Valentin
a9d1825e2e cpu/lpc2387: implement periph/pm
Enable IDLE and Deep Powerdown mode.

IDLE is pretty straightforward - insteady of busy waiting, the CPU will
enter an idle state from which it will resume on any event.

Deep Power Down shuts off the entite system except for the battery backup
power domain.
That means the CPU will reset on resume and can be woken by e.g. RTC.

SLEEP and POWERDOWN disable the PLL and the PLL and Flash respectively.
This requires some proper wake-up handling.

Since this turned out to be a major time sink and those modes are never
currently never used in RIOT outside of tests, I left this as an exercise
for a future reader.
2019-11-22 09:11:39 +01:00
Benjamin Valentin
9df377d699 cpu/sam*: pm: make use of DEBUG_PUTS()
`pm_set()` gets called by the idle thread whose stack is too small
for normal DEBUG()/printf().

Use DEBUG_PUTS() instead to print the static debug strings.
2019-11-22 01:30:03 +01:00
Gunar Schorcht
d55225eb29 cpu/esp32: remove SDK crypto dependency from doc 2019-11-21 18:34:08 +01:00
Gunar Schorcht
5f01d0a88f cpu/esp32: remove SDK crypto function dependency
Modules `crypto` and `hashes` have not be disabled any longer when module `esp_wifi` is used.
2019-11-21 18:34:08 +01:00
Gunar Schorcht
1a12f56fbd cpu/esp32: use renamed SDK crypto functions 2019-11-21 18:32:28 +01:00
Gunar Schorcht
d8f0399eaa cpu/esp32: rename SDK crypto function
Renames crypto functions of ESP32 SDK in vendor code to resolve the conflicts between `wpa-supplicant` crypto functions and RIOT's `crypto` and `hashes` modules.
2019-11-21 18:32:28 +01:00
Gunar Schorcht
f8c740c190 cpu/esp32: use SDK crypto headers from vendor code
Changes the include path for ESP32 SDK crypto function headers to find their modified version in vendor codefirst.
2019-11-21 18:32:28 +01:00
Gunar Schorcht
ee349edf3b cpu/esp32: add SDK crypto headers and rename
To resolve the conflicts between `wpa-supplicant` crypto functions (part of the ESP32 SDK) and RIOT's `crypto` and `hashes` modules, the crypto function headers from ESP32 SDK are added to vendor code and the crypto functions are renamed using the prefix `wpa_`.
2019-11-21 18:32:28 +01:00
c7825aa92e
Merge pull request #12508 from gschorcht/cpu/esp32/doc_adc2_and_wifi
cpu/esp32: note on using ADC2 and WiFi in documentation
2019-11-21 18:27:06 +01:00
178d0aace2
Merge pull request #12758 from gschorcht/cpu/esp32/fix_fs_tests
cpu/esp32: increase timeout for spiffs and littlefs tests
2019-11-21 17:10:16 +01:00
fe255a26d5
Merge pull request #12750 from gschorcht/cpu/esp32/esptools
cpu/esp32: use esptool.py from riot tools
2019-11-21 17:09:54 +01:00
Francisco Molina
4c0dd49603 cpu/sam3/periph/gpio.c: fix cpp.check shiftTooManyBitsSigned 2019-11-21 11:58:07 +01:00
Francisco Molina
061b494348 cpu/lpc1768/periph/gpio.c: fix cpp.check shiftTooManyBitsSigned 2019-11-21 11:58:07 +01:00
Francisco Molina
97dda76e7a cpu/native/irq_cpu.c: fix cpp.check unitialized variable 2019-11-21 11:58:07 +01:00
Gunar Schorcht
fe165738e7 cpu/esp32: doc changes for esptool.py 2019-11-21 10:18:56 +01:00
Gunar Schorcht
9080893f06 cpu/esp32: use esptool.py from riot tools
Use esptool.py from riot tools instead from ESP-IDF SDK to avoid that the SDK has to be installed to flash an image.
2019-11-21 10:18:56 +01:00
Gunar Schorcht
47a4ff05c0 cpu/esp32: increase timeout for spiffs and littlefs tests
The time it takes to erase the entire flash memory of an esp32 card requires increasing the timeout for tests/pkg_spiffs and tests/pkg_littlefs.
2019-11-21 10:15:38 +01:00
6cdf656d62
Merge pull request #12753 from gschorcht/cpu/esp32/fix_sched_prio
cpu/esp32: fix of thread priorities levels
2019-11-21 09:28:58 +01:00
bef34d400e
Merge pull request #12757 from gschorcht/cpu/esp32/fix_xtimer_deps
cpu/esp32: fix xtimer dependency
2019-11-21 09:23:19 +01:00
Gunar Schorcht
7b1ef78054 cpu/esp32: fix of thread priorities levels
A number of tests insist that the number of thread priority levels is 16. However, when using the WiFi interface, a number of high priority threads are required to handle the WiFi hardware. In this case, the number of thread priority levels must be 32. Solves the problem of tests `tests/shell`.
2019-11-21 06:55:41 +01:00
Gunar Schorcht
9a1742074a cpu/esp32: fix xtimer dependency
Removes the dependency of the module riot_freertos from module xtimer. This avoids that xtimer is used even if it is not really needed which in turn occupies the first timer device and tests/periph_timer fails.
2019-11-21 06:38:58 +01:00
Gunar Schorcht
3ab5e3ad66 cpu/esp32: fix heap command output
The heap command output has to have an output format that is compatible with the test.
2019-11-20 08:44:45 +01:00
Gunar Schorcht
327b9fd32e cpu/esp32: introduce module esp_log_tagged
ESP32 log output was always tagged with additional information by default. The tag consists the type of the log message, the system time in ms, and the module or function in which the log message is generated. By introducing module `esp_log_tagged`, these additional information are disabled by default and can be enabled by using module `esp_log_tagged`.
2019-11-20 08:42:27 +01:00
Gunar Schorcht
a3058291b7 cpu/esp32: colored log output
Log module of ESP32 supports colored log outputs when module `esp_log_color` is enabled. The generation of colored log outputs is realized by a extending the bunch of macros with an additional letter indicating the type of log message,
2019-11-20 08:42:22 +01:00
Gunar Schorcht
f2f07252fe cpu/esp32: bootloader versions with and w/o colors
For the implementation of the colored log output, two versions of the bootloader are introduced, one version with colored log output and one version without colors.
2019-11-20 08:42:14 +01:00
Marian Buschsieweke
8d0a9ead7b
cpu/atmega_common/periph: Fixed typo in gpio.c 2019-11-18 22:45:40 +01:00
MrKevinWeiss
5c085d711d cpu/native: Suppress cpu specific spi_clk_t in doxygen 2019-11-18 11:44:13 +01:00
MrKevinWeiss
d218b77ff7 cpu/esp8266: Suppress cpu specific i2c_speed_t in doxygen 2019-11-18 11:43:45 +01:00
MrKevinWeiss
02bd107722 cpu/esp8266: Suppress cpu specific gpio_flank_t in doxygen
The enumeration takes both the cpu and the driver, it should only show the driver enum
2019-11-18 11:43:12 +01:00
Kevin "Tristate Tom" Weiss
be39169bd4
Merge pull request #11108 from gschorcht/cpu/esp8266/esp-idf/pr
cpu/esp8266: complete reimplementation based on ESP8266 RTOS SDK
2019-11-18 09:34:49 +01:00
7d3a6fecee
cpu/efm32: provide arch_efm32 features 2019-11-16 14:07:53 +01:00
Yegor Yefremov
f2127391c4 doxygen/UART: don't include overridden typedefs
Add missing #ifndefs to overridden UART typedefs.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:44:52 +01:00
Yegor Yefremov
df7e760588 doxygen/I2C: don't include overridden typedefs
Add missing #ifndefs to overridden I2C typedefs.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:33 +01:00
Yegor Yefremov
cf65070b06 doxygen/GPIO: don't include overridden typedefs
Add missing #ifndefs to overridden GPIO typedefs.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:33 +01:00
Yegor Yefremov
fa3b0ff04b doxygen/SPI: don't include overridden typedefs
Add missing #ifndefs to overridden SPI typedefs.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:32 +01:00
Yegor Yefremov
5b0252b150 doxygen/ADC: don't include overridden typedefs
Add missing #ifndefs to overridden ADC resolution typedefs.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2019-11-15 10:35:32 +01:00
Francisco
1018a6fa67
Merge pull request #12679 from jue89/bugfix/stm32f103rc-ramlen
cpu/stm32_common: fix RAM_SIZE for stm32f103xc, stm32f105xx and stm32f107xx
2019-11-14 22:28:43 +01:00
Francisco
2adc5a23c2
Merge pull request #12361 from haukepetersen/add_nimble_autoconn
pkg/nimble: add simple BLE connection manager: autoconn
2019-11-14 14:02:24 +01:00
Gunar Schorcht
555a7040db cpu/esp8266: reset tool to allow automatic tests 2019-11-14 13:58:48 +01:00
Gunar Schorcht
309eab9ae0 cpu/esp8266: enable colored output with log_color 2019-11-14 13:58:48 +01:00
Gunar Schorcht
fe028455e5 cpu/esp8266: esptool.py is provided as tool
The modified version esptool.py from RTOS SDK that is required for flashing an image, is now placed in `dist/tools/esptool.py` and used directly from there. The advantage is that `esptool.py` hasn't to be installed explicitly anymore. Having RIOT is enough. The documentation is adapted accordingly. The oly prerequisite is that python and the pyserial module are installed.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
62922769b3 cpu/esp8266: high-priority threads creation
High priority thread for the WiFi interface are only created at startup when the WiFi interface is used.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
405be02da4 cpu/esp8266: funcs must not be called in assert
In vendor startup code, initialization function were called as parameters of assert statement. With DEVELHELP, they are not called since the assert macro does nothing.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
2c7b9b4fb4 cpu/esp8266: toolchain renamed
To make the migration progress to the new RTOS SDK easier, the new toolchain was renamed to xtensa-esp8266-elf. This makes it possible to have the new and the old toolchain installed in parallel.
2019-11-14 13:58:48 +01:00
Gunar Schorcht
b15d7df6dc cpu/esp8266: ESP8266_SDK_DIR renamed
To make the migration progress to the new RTOS SDK easier, the ESP8266_SDK_DIR variable was renamed to ESP8266_RTOS_SDK_DIR.
2019-11-14 13:58:44 +01:00
Gunar Schorcht
9facce8c02 cpu/esp8266: use default number of priority levels
If the WiFi module is used, a number of high priority tasks is created. To void priority collisions with netdev drivers, the number of priorities SCHED_PRIO_LEVELS has to be increased to 32. But in other cases, the default number should be used, also to keep automatic tests working.
2019-11-14 13:58:25 +01:00
Gunar Schorcht
afa02044f2 cpu/esp8266: required bootloader binaries 2019-11-14 13:58:25 +01:00
Gunar Schorcht
4f4d882f68 cpu/esp32: changes for RTOS SDK 2019-11-14 13:58:25 +01:00
Gunar Schorcht
ddc91df4ca cpu/esp8266: changes for RTOS SDK 2019-11-14 13:58:22 +01:00
Gunar Schorcht
a212228147 cpu/esp8266: files that are not needed any longer removed 2019-11-14 12:04:29 +01:00
Gunar Schorcht
28ea0a0914 cpu/esp8266: required vendor RTOS SDK components added 2019-11-14 12:04:21 +01:00
Kees Bakker
43670aee7b
Merge pull request #12615 from benpicco/samd21-1kHz_gclk
cpu/samd21: use dedicated 1kHz GCLK4 for RTC and WDT
2019-11-13 20:25:55 +01:00
Jue
b037bce7ab cpu/stm32_common: fixed RAM_LEN for stm32f105__ and stm32f107__ 2019-11-13 19:58:44 +01:00
Jue
ef9363a509 cpu/stm32_common: fixed RAM_LEN for stm32f103_c 2019-11-13 19:57:59 +01:00
Gunar Schorcht
f397a74948 cpu/esp8266: FreeRTOS adaption layer added for RTOS SDK 2019-11-13 19:00:39 +01:00
Hauke Petersen
4bf14822cb nrf5x: move nimble_ble feat. to cpu 2019-11-13 13:43:55 +01:00
Hauke Petersen
d87228dab1 cpu/nrf52: add feature 'ble_nimble_netif' 2019-11-13 13:05:34 +01:00
Dylan Laduranty
0e736b8879
Merge pull request #12675 from benpicco/sam0-rtt-fix
cpu/sam0_common: rtt: enable COUNTSYNC in CTRLA
2019-11-13 10:12:07 +01:00
Bas Stottelaar
0c18ef4f23
Merge pull request #12278 from benemorius/pr/efm32-uart-rx_cb
cpu/efm32/uart: fix handling of RX when no RX callback is configured
2019-11-12 21:33:07 +01:00
Dylan Laduranty
6ec6aaf4b0
Merge pull request #12393 from benpicco/sam0-spi_reconfig
sam0/spi: Don't re-configure SPI device when not needed
2019-11-12 20:51:53 +01:00
Marian Buschsieweke
ba26aed107
cpu/atmega_common: Restructured code
Moved macros and static inline helper functions needed to access ATmega GPIOs
to cpu/atmega_common/include/atmega_gpio.h in order to reuse them for the
platform specific low level part of the Neopixel driver.
2019-11-12 20:15:59 +01:00
benpicco
f77e5a6c6a
Merge pull request #12673 from benpicco/purge-rtc_numof
boards: remove RTT_NUMOF/RTC_NUMOF
2019-11-12 11:33:16 +01:00
Benjamin Valentin
d21dc25cfe sam0/spi: Don't re-configure SPI device when not needed
Currently, spi_acquire() will always re-configure the SPI bus.
If the configuration did not change, this is entirely uneccecary
and makes SPI operations take longer than needed.

Instead, compare the current configuration with the new configuration
and skip the initialisation if it didn't change since the last call.
2019-11-12 11:31:41 +01:00
Benjamin Valentin
db2fa33660 sam0_common: rtc: use GCLK4 on SAMD21
The RTC expects to be clocked from a 1kHz source.
Previously it would re-configure GCLK2 from 32kHz to 1kHz when used.

Since GCLK2 is also used by EIC, this would break external interrupts
in strange and unexpected ways.

Dedicate a 1kHz clock to it to avoid the damage.
2019-11-12 11:30:02 +01:00
Benjamin Valentin
5fa234e435 sam0_common: wdt: use GCLK4 on SAMD21
GCLK4 will always run at 1kHz on SAMD21, so use it directly.
2019-11-12 11:29:25 +01:00
Benjamin Valentin
d92c079a90 cpu/samd21: configure GCLK4 with 1024 Hz
Both WDT and RTC expect a 1 kHz clock.
Source it from the same generator as the 32 kHz GCLK2.
2019-11-12 11:29:17 +01:00
Benjamin Valentin
89b987494e cpu/sam0_common: rtt: enable COUNTSYNC in CTRLA
From the data sheet:

> The COUNT register requires synchronization when reading.
> Disabling the synchronization will prevent reading valid
> values from the COUNT register.

Without this bit enabled, rtt_get_counter() will always return 0.
2019-11-12 11:28:08 +01:00
Benjamin Valentin
3ce6ddcdb2 cpu/atmega_common: cpuid: add a word of warning
The CPU ID only differs in byte 4 (RC calibration) between devices.

Add a word of warning to the documentation that this may not be very unique.
2019-11-11 18:07:09 +01:00
Benjamin Valentin
5b6d56efd5 atmega_common: provide CPU ID for every device
ATmega128RFA1/ATmega256RFR2 do not have a unique CPU ID.

Use the RC oscillator callibration byte as an impromptu CPU ID and rely
on bootlader constants present on all ATmega families for the remaining
bytes.

This way we can provide a faux CPU ID on all ATmega MCUs and typical hobbyists
with no access to JTAG adapters or high voltage programmer capable of writing
the user signature have a good chance that the CPU IDs of their device do not collide.
2019-11-08 16:58:03 +01:00
Benjamin Valentin
0ea2cbf1eb boards: remove RTT_NUMOF/RTC_NUMOF
Those macros are defined but never used.
2019-11-08 14:20:33 +01:00
Marian Buschsieweke
72714aefea
cpu/lpc2387: Added MCU provided features
Added features provided by the LPC2387 MCU to cpu/lpc2387/Makefile.features
2019-11-08 14:02:35 +01:00
Gunar Schorcht
dca6d59b60 cpu/esp_common: vendor files changed for RTOS SDK 2019-11-08 13:22:50 +01:00
Gunar Schorcht
a6d01fc2de cpu/esp8266: vendor files changed for RTOS SDK 2019-11-08 10:32:18 +01:00
Gunar Schorcht
464bb9f4c4 cpu/esp8266: vendor files that are no longer needed removed 2019-11-08 10:32:18 +01:00
Leandro Lanzieri
66d5e4d05f
Merge pull request #12637 from benpicco/lpc2387-uart
cpu/lpc2387: update the UART driver
2019-11-07 22:21:50 +01:00
Benjamin Valentin
9e68556393 boards/msba2: configure remaining UARTs
All UARTs on the MSBA2 are exposed through pin headers on the board.
Configure them according to the data sheet.
2019-11-07 21:55:25 +01:00
Benjamin Valentin
c544c41804 cpu/lpc2387: fix indent 2019-11-07 21:55:24 +01:00
Benjamin Valentin
d6a94d4e18 cpu/lpc2387: uart driver overhaul
This converts the hard-coded UART driver to the new ways.

 - allow the board to configure the RX & TX pins
 - allow for more than one UART
 - allow setting the baudrate
 - implement poweron()/poweroff() functions
2019-11-07 21:55:24 +01:00
7e42f6e4d5
Merge pull request #12659 from aabadie/pr/cpu/atmega_common_wdt
cpu/atmega_common: add implementation for watchdog
2019-11-07 12:32:46 +01:00
José Alamos
20ea18637f
Merge pull request #10485 from miri64/gnrc_netif/enh/default-init
gnrc_netif: assume `netif->ops->init()` to be set to at least a default
2019-11-07 11:41:05 +01:00
d22404b8b7
cpu/atmega_common: add implementation for watchdog 2019-11-07 11:35:29 +01:00
Martine Lenders
14a2f6bc18 gnrc: use gnrc_netif_default_init() for all implementations 2019-11-07 11:00:36 +01:00
Bas Stottelaar
d0ff9530d3 cpu/efm32: update vendor code 2019-11-06 23:25:53 +01:00
Benjamin Valentin
5ec9f62a0b cpu/lpc2387: add UART register map 2019-11-04 01:21:08 +01:00
benpicco
926bdc9a9f
Merge pull request #12579 from bergzand/pr/stm32/lpclk_en_dis
stm32/cpu: Add functions for low power mode clock config
2019-11-01 23:16:37 +01:00
799823b630
stm32/cpu: Add functions for low power mode clock config 2019-11-01 20:19:41 +01:00
Anton Gerasimov
fa8c0578bf cpu/cc26xx_cc13xx: switch to cortexm.ld linker script
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
9fad1e3b6d cpu/cc26xx_cc13xx: define uart_conf_t
Replaces older macro-based configuration

Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
6790e9e6ca cpu/cc26xx_cc13xx: Fix codespell issues
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
1659a71ed0 cpu/cc13x2: Add support for cc13x2 MCUs
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
1442561c8e cpu/cc26x0: Fix register map for WDT
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Anton Gerasimov
f6a3f14d22 cpu/cc26x0: Factor out code common for cc26xx/cc13xx family
Signed-off-by: Anton Gerasimov <tossel@gmail.com>
2019-10-29 21:27:00 +01:00
Martine Lenders
ea4b78654f
Merge pull request #12285 from JulianHolzwarth/pr/posix/pthread/pthread_reaper_fix
sys/posix/pthread/pthread.c: fix pthread reaper
2019-10-29 18:56:36 +01:00
Marian Buschsieweke
d4adcfd92d
Merge pull request #12581 from benpicco/lpc2387-xtal_select
cpu/lpc2387: allow for more flexible clock selection
2019-10-28 12:32:11 +01:00
Benjamin Valentin
d6ca62576d cpu/lpc2387: allow use of other XTALs
Currently the cpu/lpc2387 init code hard-codes a 16 MHz
external oscillator.
Instead, calculate the PLL multiplier based on the board define
and also allow to run without an external oscillator.
2019-10-28 11:11:40 +01:00
Leandro Lanzieri
073090b01e
Merge pull request #12580 from benpicco/lpc2387-fix_rtc
cpu/lpc2387: enable RTC on rtc_init()
2019-10-28 10:40:37 +01:00
Leandro Lanzieri
00926221fd
Merge pull request #12585 from aabadie/pr/cpu/stm32_common_fix_llvm_build
cpu/stm32_common: fix i2c_1 build with llvm toolchain
2019-10-28 10:03:48 +01:00
Marian Buschsieweke
4cf2151248
Merge pull request #12537 from benpicco/at86rfmega
drivers/at86rf2xx: add support for ATmegaRF MCUs
2019-10-28 09:22:02 +01:00
fd2d30c6e7
cpu/stm32_common: fix i2c_1 build with llvm toolchain 2019-10-27 15:44:07 +01:00
1c416185b6
cpu/sam0_common: fix potential undefined result with sercom_id
Scan-build detected that sercom_id could return -1 and the value of this function is affected to uint8_t variables. Since these variables are used for shitfing bit in registers, this could lead to undefined behavior
2019-10-27 12:02:47 +01:00
Benjamin Valentin
985fb53c9f cpu/lpc2387: enable RTC on init
All other CPU implementations have the RTC running after
rtc_init() was called.

Fix this for lpc2387.
2019-10-27 01:33:13 +02:00
Benjamin Valentin
14a8a53eb5 cpu/atmega256rfr2: Hook up at86rfr2 radio 2019-10-26 23:10:18 +02:00