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

75 Commits

Author SHA1 Message Date
Jue
68625e5aa9 cpu/efm32/gpio: block power modes if IRQs are enabled 2022-10-18 23:30:08 +02:00
Jue
bc51071d44 cpu/efm32: define EFM power modes for pm_layered 2022-10-18 17:34:27 +02:00
Jue
f3d1773483 cpu/efm32/gpio: fix deprecated GPIO_IntConfig() call 2022-10-15 15:43:17 +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
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
Francisco Molina
d86828c53b cpu/efm32: periph_rtt_series0/1 are not modules 2022-03-17 14:37:33 +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
Gunar Schorcht
7405df2607 cpu/efm32/periph/wdt: fix compilation with NDEBUG 2021-12-12 13:18:46 +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
Leandro Lanzieri
805a77b13a
cpu/efm32: model Kconfig 2021-11-18 09:03:06 +01:00
Marian Buschsieweke
f04b522601
cpu/periph_spi: update implementations to new API
Make all spi_acquire() implementations return `void` and add assertions to
check for valid parameters, where missing.
2021-09-01 21:38:40 +02:00
Karl Fessel
4ff30a31e5 cpu/efm32: add RTT_FREQUENCY support to efm32
make efm32 rtt frequency configurable by setting RTT_FREQUENCY
2021-04-20 11:12:45 +02:00
925056c829 cpu/efm32/periph/timer: fix timer_t -> tim_t 2020-11-23 12:33:28 +01:00
benpicco
d9598a0f54
Merge pull request #15412 from bergzand/pr/flashpage/merge_raw
periph_flashpage: Make pagewise API optional
2020-11-12 22:32:21 +01:00
9a79124fba
efm32: Adapt to flashpage/flashpage_pagewise API 2020-11-11 23:16:39 +01:00
Benjamin Valentin
bad385ab7c cpu/efm32: RTC Series 0: use RTC helper functions
By using the RTC helper functions instead of POSIX mktime()/gmtime()
we can not only extend the RTC range beyond Y2038.

For tests/periph_rtc:

before:

   text	   data	    bss	    dec	    hex	filename
  28028	    248	   2472	  30748	   781c stk3700/tests_periph_rtc.elf

after:

   text	   data	    bss	    dec	    hex	filename
  19400	    144	   2424	  21968	   55d0 stk3700/tests_periph_rtc.elf

fixes #13277
2020-11-09 17:57:57 +01:00
Bas Stottelaar
6d472b5d23 cpu/efm32: extend timer isr 2020-11-04 22:11:49 +01:00
Marian Buschsieweke
125c892c03
drivers/periph/timer: Use uint32_t for frequency
For all currently supported platforms `unsigned long` is 32 bit in width. But
better use `uint32_t` to be safe.
2020-10-30 22:02:12 +01:00
Bas Stottelaar
22243aec7a cpu/*: realign ENABLE_DEBUG 2020-10-23 00:46:26 +02:00
Bas Stottelaar
ab6188cea3 cpu/*: add missing include of assert.h 2020-10-22 11:13:08 +02:00
Bas Stottelaar
3e2303d30c
cpu/efm32: add watchdog peripheral 2020-10-07 09:01:41 +02:00
Benjamin Valentin
b2a9a6b168 cpu/efm32: fix build with !LETIMER
Not all SoCs have an LETIMER.
Here the compilation will will fail because LETIMER related
symbols are not defined.

Fix the build of timer.c for those.
2020-10-05 14:51:05 +02:00
dcb25eb3fc cpu/efm32/periph/timer: fix timer_set_absolute() in 16bit case 2020-09-22 23:15:23 +02:00
Francisco Molina
c4c2673aec
cpu/efm32/Kconfig: add EFM32_XTIMER_USE_LETIMER config 2020-09-02 15:31:28 +02:00
Francisco Molina
cbf78fe3d4
cpu/efm32: allow running both LETIMER and regular timer 2020-08-31 09:38:31 +02:00
Francisco Molina
c77646ff79
cpu/efm32/timer: add enabling/disabling of prescaler timer 2020-08-31 09:38:31 +02:00
Thomas Stilwell
754d790b3f boards: efm32 boards: add support for LETIMER 2020-07-10 20:44:03 -05:00
Thomas Stilwell
37a6cc66f5 cpu/efm32/timer: add pm blockers 2020-07-10 20:44:03 -05:00
Thomas Stilwell
651a3bf423 cpu/efm32/timer: add support for LETIMER 2020-07-10 20:44:03 -05:00
Bas Stottelaar
1105f60a23 cpu/efm32: make series defines explicit
The EFM32 uses the provided _SILICON_LABS_32B_SERIES_0 and
_SILICON_LABS_32B_SERIES_1 definitions to enable or disable certain
code. With the introduction of new MCUs, there is also the
_SILICON_LABS_32B_SERIES_2 definition.

This PR ensures that the defines are explicit, and that #else
statements don't target the wrong series.
2020-07-08 21:54:57 +02:00
benpicco
98405fe151
Merge pull request #12380 from benemorius/pr/efm32-uart-init-tx-idle
cpu/efm32/uart: uart_init(): begin with TX pin at idle level
2020-02-26 10:23:12 +01:00
benpicco
c32be01b7a
Merge pull request #13053 from basilfx/feature/efm32_adc_status
cpu/efm32: fix incorrect ADC status register
2020-02-21 18:59:53 +01:00
Francisco Molina
e700a78cd3 cpu/efm32/periph/rtc_series1: normalize time 2020-01-22 10:03:49 +01:00
Bas Stottelaar
0e3480e3f0 cpu/efm32: fix incorrect ADC status register
The ADC_STATUS_SINGLEACT indicates that an operation is active, while
the ADC_STATUS_SINGLEDV indicates that data is valid.

This fixes ADC returning values of unfinished reads.
2020-01-14 22:44:54 +01:00
Marian Buschsieweke
80787d523e
cpu/efm32/periph: adc_sample() now returns int32_t 2020-01-10 14:13:14 +01:00
6b233780ae cpu/efm32: fix typos 2019-11-23 22:39:36 +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
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
Bas Stottelaar
2a5010f779 cpu/efm32: remove EFM32_UART_MODES 2019-10-16 22:05:08 +02:00
Thomas Stilwell
8d7dc4e503 cpu/efm32/uart: uart_init(): begin with TX pin at idle level
else TX will be asserted low for a few usec until the peripheral
is initialized and deasserts it
2019-10-06 22:12:37 -05:00
Thomas Stilwell
277459613b cpu/efm32/uart: uart_write(): block until TX is complete
This avoids breaking the last character if something unclocks
the UART immediately after uart_write() returns.
2019-10-06 18:33:59 -05:00
Thomas Stilwell
5fb6801cca cpu/efm32/uart: don't enable rx if no callback is configured 2019-10-06 18:33:57 -05:00
Thomas Stilwell
c8f34c705b cpu/efm32/uart: move reusable code into uart_poweron/off() 2019-10-06 18:30:00 -05:00
Thomas Stilwell
3541666956 cpu/efm32/uart: fix crash on rx with no callback configured 2019-10-06 17:56:30 -05:00
Gunar Schorcht
02d81b717e
Merge pull request #12063 from maribu/i2c_release
drivers/periph/i2c: Updated i2c_release() to return void
2019-10-01 19:50:38 +02:00
Bas Stottelaar
4e6b46ca20 cpu/efm32: implement uart_mode 2019-09-30 18:12:15 +02:00
Bas Stottelaar
b2769c0857 cpu: efm32: move LOW_POWER_ENABLED to efm32-features.mk 2019-09-30 00:03:15 +02:00