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

6372 Commits

Author SHA1 Message Date
Marian Buschsieweke
6294382627
cpu/stm32: Use mii.h for periph_eth
Use shared MII definitions and utilities instead own definitions.
2020-10-12 08:46:20 +02:00
benpicco
94e78cd1dd
Merge pull request #15193 from maribu/stm32_eth_fix
cpu/stm32: Fix & cleanup periph_eth
2020-10-11 21:40:36 +02:00
Marian Buschsieweke
0e43c927b1
cpu/stm32: Fix/cleanup periph_eth
The methods to read from / write to MII registers had an address argument to
allow specifying the PHY to communicate with. However, only a single PHY is
available on all boards supported and the driver is not able to operate with
multiple PHYs anyway - thus, drop this parameter for ease of use.

This fixes a bug in the _get_link_status() function, which used hard coded the
address 0; which might not be correct for all boards.
2020-10-09 20:20:54 +02:00
Leandro Lanzieri
fe6d66d92a
kconfig: add ERROR symbol for conflicting modules 2020-10-09 18:04:17 +02:00
benpicco
c21b72b5e8
Merge pull request #15186 from leandrolanzieri/pr/esp/fix_linker_scripts
cpu/esp*: fix linker scripts
2020-10-09 16:25:09 +02:00
Leandro Lanzieri
eb2655b622
cpu/esp8266/ld: use folder name instead of archive for module objects 2020-10-09 13:29:55 +02:00
Leandro Lanzieri
837ddf6d8c
cpu/esp32/ld: use folder name instead of archive for module objects 2020-10-09 13:29:51 +02:00
42067b0091
cpu/stm32/kconfig: restore features provided at cpu lines level 2020-10-09 12:39:22 +02:00
87f2f7ab99
cpu/stm32wb: extend Kconfig cpu lines and models 2020-10-09 12:39:22 +02:00
85a3167e4f
cpu/stm32l4: extend Kconfig cpu lines and models 2020-10-09 12:39:22 +02:00
841f500477
cpu/stm32l1: extend Kconfig cpu lines and models 2020-10-09 12:39:22 +02:00
11f3f2de74
cpu/stm32l0: extend Kconfig cpu lines and models 2020-10-09 12:39:22 +02:00
e8479b8cb5
cpu/stm32g4: extend Kconfig cpu lines and models 2020-10-09 12:39:22 +02:00
f223516a39
cpu/stm32g0: extend Kconfig cpu lines and models 2020-10-09 12:39:22 +02:00
7a510c08ff
cpu/stm32f7: extend Kconfig cpu lines and models 2020-10-09 12:39:22 +02:00
1c63b79a6d
cpu/stm32f4: extend Kconfig cpu lines and models 2020-10-09 12:39:21 +02:00
2c0930a3e7
cpu/stm32f3: extend Kconfig cpu lines and models 2020-10-09 12:39:21 +02:00
3d0c91d486
cpu/stm32f2: extend Kconfig cpu lines and models 2020-10-09 12:39:21 +02:00
3c08d564eb
cpu/stm32f1: extend Kconfig cpu lines and models 2020-10-09 12:39:21 +02:00
2490e01445
cpu/stm32f0: extend Kconfig cpu lines and models 2020-10-09 12:39:21 +02:00
06c3361a15
cpu/stm32/dist: add generator for kconfig cpu lines and models 2020-10-09 12:39:21 +02:00
benpicco
c979fda1f3
Merge pull request #14367 from basilfx/feature/cortex_m33
cpu/cortex: add initial support for Cortex-M33
2020-10-08 22:55:06 +02:00
Marian Buschsieweke
7b4d4c198b
cpu/stm32/periph_eth: Code style 2020-10-08 11:46:39 +02:00
Marian Buschsieweke
ab30865a08
cpu/stm32: Cleanup periph_eth
Cleanup functions _rw_phy(), _phy_read(), and _phy_write() and rename them to
_mii_reg_{access,read,write}().
2020-10-08 11:46:39 +02:00
3e1fa30c2f
cpu/stm32/irqs: fix vectors generator script 2020-10-08 08:09:31 +02:00
Bas Stottelaar
3e2303d30c
cpu/efm32: add watchdog peripheral 2020-10-07 09:01:41 +02:00
benpicco
2289a188ed
Merge pull request #15164 from maribu/stm32-eth-fix-link-status
cpu/stm32: Fix periph_eth link status
2020-10-06 23:46:34 +02:00
benpicco
6c3a0eba59
Merge pull request #12353 from basilfx/feature/efm32_stk3200_v2
boards/stk3200: add support
2020-10-06 22:23:31 +02:00
Bas Stottelaar
0f8cecb50b cpu/cortexm_common: add support for Cortex-M33 2020-10-06 17:11:26 +02:00
Benjamin Valentin
6e6ddacdb0 cpu/efm32: not every family has an MPU 2020-10-06 16:43:47 +02:00
Bas Stottelaar
03b9f45583 cpu/efm32: efm32zg: add support 2020-10-06 16:43:47 +02:00
Bas Stottelaar
f1589bc579 cpu/efm32: efm32zg: add vendor headers 2020-10-06 16:42:11 +02:00
4613f840f4
cpu/stm32: put GPIO in ain before initializing the clocks 2020-10-06 16:10:05 +02:00
0d786e3dbb
cpu: boards: stm32f2/f4/f7: rework clock configuration and init 2020-10-06 16:10:05 +02:00
Francisco
04e688d63e
Merge pull request #15158 from benpicco/cpu/efm32_no_letimer
cpu/efm32: fix build with !LETIMER
2020-10-06 10:58:41 +02:00
Marian Buschsieweke
7b738a66c4
cpu/stm32: Fix periph_eth link status
The link status was previously not returned via the value parameter, as required
by the netdev_driver_t API. As a result, e.g. the `ifconfig` shell command
showed garbage.
2020-10-06 10:29:38 +02:00
Francisco
e9af7f9415
Merge pull request #15091 from kfessel/patch-makefile-dep
Makefile.dep: sort dependencies
2020-10-06 10:16:49 +02:00
Karl Fessel
dbeda8ec1f cpu/native: move socket_can include to Makefile.include 2020-10-05 18:27:58 +02:00
Karl Fessel
9a89b84c2c Makefile.dep: sort dependencies
move most dependencies from <RIOTBASE>/Makefile.dep to the Makefile.dep where
dependant module resides
2020-10-05 18:27:58 +02:00
Marian Buschsieweke
7920d32e32
cpu/stm32: Clean up periph_eth
Use `addr` instead of `mac` when referring to L2 address.
2020-10-05 16:03:47 +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
Benjamin Valentin
35d6736d9d cpu/sam0_common: PWM: use named GCLK for disabling peripheral 2020-10-02 23:17:53 +02:00
Benjamin Valentin
91604d0217 cpu/samd21: clean up 'disabled GCLK' magic
It turns out hooking up an unused peripheral to a disabled GCLK
leads to surprising power savings.

Name the GCLK to be more explicit (and since not all members of
the extended samd2x family have a GCLK7).

Turns out we can just use a non-existing GCLK ID for this, this
even saves us a real GCLK that we can use for something else.

Also make sure to disable *all* peripherals by using
`GCLK_CLKCTRL_ID_Msk` instead of relying on a magic value.

Looks like we previously missed some, since this leads to some
additional power savings:

master:     4.22 mA
this patch: 4.09 mA
2020-10-02 23:16:52 +02:00
benpicco
57f5341275
Merge pull request #15139 from fjmolinas/pr_cc2538_rtt_init
cpu/cc2538: reset rtt on init
2020-10-02 17:30:36 +02:00
benpicco
482dacfa32
Merge pull request #15134 from btcven/2020_10_01-idle-fix
cpu/cc26xx_cc13xx: enable periph clocks on sleep
2020-10-02 17:30:24 +02:00
Francisco Molina
8df42f2390
cpu/cc2538: add RTT_MIN_OFFSET 2020-10-02 12:49:15 +02:00
Francisco Molina
eb8f747a34
cpu/cc2538: reset rtt on init 2020-10-02 12:49:06 +02:00
Francisco
df3ab9f161
Merge pull request #15138 from aabadie/pr/dist/codespell_fixes
dist/codespell: update the list of ignored words and fix all typos
2020-10-02 12:27:12 +02:00
Benjamin Valentin
c78ee2bf64 cpu/nrf52: provide radio_nrf802154 at CPU level
The presence of the 802.15.4 radio peripheral is a feature of the CPU,
not the board.
Move it to the right place and reduce code duplication.
2020-10-02 10:44:59 +02:00
35f357a9ad
cpu/sam0_common: fix typos
- 'acces' -> 'access'
- 'withing' -> 'within'
2020-10-02 07:58:35 +02:00
9d0d07ecce
cpu/nrf52: fix typo 'substract' -> 'subtract' 2020-10-02 07:57:53 +02:00
81a0566c12
cpu/native: fix typo 'funtion' -> 'function' 2020-10-02 07:57:27 +02:00
c458bbceca
cpu/esp_common: fix typo 'implementd' -> 'implemented' 2020-10-02 07:57:00 +02:00
2609dc1aa7
cpu/cortexm_common: fix typo 'occured' -> 'occurred' 2020-10-02 07:56:27 +02:00
60f39ddba8
cpu/fe310: fix typo 'transfert' -> 'transfer' 2020-10-02 07:55:36 +02:00
9b32226e03
cpu/cc26xx_cc13xx: fix typo 'exmaple' -> 'example' 2020-10-02 07:54:37 +02:00
e5ca237318
cpu/cortexm_common: fix typo 'pre-empt' -> 'preempt'
Also fix typo 'efficency' -> 'efficiency'
2020-10-02 07:53:54 +02:00
Jean Pierre Dudey
f443a8bc84 cpu/cc26xx_cc13xx: enable periph clocks on sleep
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-10-01 18:38:03 -05:00
7159fa03fc
Merge pull request #15119 from hugueslarrive/adc_f3
cpu/stm32/periph/adc_f3: add ADC3 and ADC4 management
2020-10-01 17:00:00 +02:00
hugues
3d6b473cd7 cpu/stm32/adc_f3: improve peripheral driver
- fix clock enable/disable bitfields
- add management for ADC3 and ADC4
- improve calibration
2020-10-01 11:08:45 +02:00
Francisco
b5c51d244e
Merge pull request #14909 from OTAkeys/pr/conn_can_clean_up
can: add proper checks for ifnum validity
2020-10-01 09:22:28 +02:00
benpicco
a96f1659a6
Merge pull request #15126 from btcven/2020_09_30-cc26x0-fix
cpu/cc26xx_cc13xx: use _rom_length symbol for CCFG origin
2020-09-30 21:48:58 +02:00
Jean Pierre Dudey
3561c7dc78 cpu/cc26xx_cc13xx: fix CCFG.MODE_CONF_1 on cc26x0
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-09-30 11:52:04 -05:00
Jean Pierre Dudey
ed2e04904b cpu/cc26xx_cc13xx: use _rom_length symbol for CCFG origin
>Now `ROM_LEN` is the "real" length, 352K and 128K respectively
and the CCFG position is determined by subtracting it's size
from `_rom_length` symbol.

Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-09-30 11:52:04 -05:00
ef6d098da9
Merge pull request #14998 from aabadie/pr/cpu/stm32_lines
cpu/stm32: model CPU lines in Kconfig + small refactoring
2020-09-30 17:09:07 +02:00
benpicco
add0814cd0
Merge pull request #15117 from chrysn-pull-requests/nrf52-pwm-fixes
cpu/nrf52: PWM fixes
2020-09-30 15:51:16 +02:00
benpicco
615561b53a
Merge pull request #14219 from btcven/2020_06_07-ccfg
cpu/cc26xx_cc13xx: add & link CCFG configuration
2020-09-30 15:16:25 +02:00
benpicco
e05e963a74
Merge pull request #15125 from benpicco/cpu/nrf5x_uart-1MB
cpu/nrf5x_common: UART: add support for 1 MBaud
2020-09-30 15:05:34 +02:00
Benjamin Valentin
33f49183d9 cpu/nrf5x_common: UART: add support for 1 MBaud
`UART_BAUDRATE_BAUDRATE_Baud1M` is defined in the vendor files, so
make it available to the user.
2020-09-30 13:42:59 +02:00
chrysn
2053a1785a cpu/nrf52: Ensure that uninitialized PWM outputs are disabled 2020-09-30 13:16:59 +02:00
chrysn
65d4c88be8 cpu/nrf52: Warn against implicit 0 in PWM channels
Working with less-than-full PWMs has shown that a warning is indicated
here, as just missing an item would result in inadvertently driving
P0.00.
2020-09-30 13:15:18 +02:00
chrysn
8dd60286a7 cpu/nrf52: Fix PWM generation if <4 channels are used
The PWM decodeer, in LOAD=Single mode, loads data in groups of 4
half-words. Previously, if any channel was not connected to a pin (a
connection that's immaterial to the loader), a smaller number would be
given resulting in the decoder not loading anything at all.

See-Also: https://infocenter.nordicsemi.com/pdf/nRF52840_PS_v1.1.pdf#page=256
2020-09-30 13:14:47 +02:00
chrysn
65e63ffbbb cpu/nrf52: Don't touch pin modes on PWM startup
Once PWM is running, the active PWM module overrides the PIN_CNF state;
only when PWM is stopped the pin returns into its PIN_CNF state (which,
then, the board may set to whatever idle means there).

(Moreover, the code there only worked for P0 registers, not eg. the
P1.09 of the nrf52840dongle's RGB LED).
2020-09-30 13:14:47 +02:00
Vincent Dupont
590f07b38a stm32/can: fix features dependency 2020-09-30 12:59:03 +02:00
Vincent Dupont
c498bbdc83 esp32/can: include can_esp.h from periph_cpu.h 2020-09-30 12:59:03 +02:00
Vincent Dupont
b4f29035ce native/can: fix CAN init
Native CAN device was not properly ported to periph_can interface.
This commit fixes this by renaming all needed structures and files so
auto_init_can can initialize the native device. FEATURES_PROVIDED is
also updated for native.
2020-09-30 12:59:03 +02:00
40262c1b7a
cpu/stm32: reorganize Kconfig files per families 2020-09-30 10:31:38 +02:00
1e6a336227
cpu/stm32/Kconfig: move features declared in models to lines 2020-09-30 10:31:29 +02:00
8738bd5e5c
cpu/stm32: select lines from models in Kconfig 2020-09-30 10:31:29 +02:00
d1bab4a25f
cpu/stm32: add Kconfig config for all cpu lines 2020-09-30 10:31:29 +02:00
ba4edb3c63
cpu/stm32: split main Kconfig 2020-09-30 10:31:29 +02:00
e8c79e7a41
cpu/stm32: extend CPU_LINES for G4 and L1 2020-09-30 10:31:29 +02:00
cada451383
cpu/stm32: document info extracted from CPU model name 2020-09-30 10:31:28 +02:00
Marian Buschsieweke
a206df5399
Merge pull request #15104 from maribu/platform
sys/architecture: New module to access architecture internals in platform-independent way
2020-09-29 18:12:34 +02:00
d407878bc5
Merge pull request #15112 from aabadie/pr/boards/nucleo64-g431kb
boards/nucleo-g431rb: add initial support
2020-09-29 15:26:39 +02:00
Francisco
109012b194
Merge pull request #14923 from aabadie/pr/boards/stm32f0f1f3_clock_kconfig
boards/stm32f1/f3: rework clock initialization and configuration
2020-09-29 14:30:58 +02:00
Marian Buschsieweke
e66d5fad31
cpu/native: Add architecture_arch.h 2020-09-29 12:34:00 +02:00
Marian Buschsieweke
bf13dc99fb
cpu/esp_common: Add architecture_arch.h 2020-09-29 12:34:00 +02:00
Marian Buschsieweke
94eab47b26
cpu/fe310: Add architecture_arch.h 2020-09-29 12:34:00 +02:00
Marian Buschsieweke
d9525f38b0
cpu/mips32r2_common: Add architecture_arch.h 2020-09-29 12:34:00 +02:00
Marian Buschsieweke
29132c9013
cpu/arm7_common: Add architecture_arch.h 2020-09-29 12:34:00 +02:00
Marian Buschsieweke
30bebdb3ff
cpu/cortexm_common: Add architecture_arch.h 2020-09-29 12:34:00 +02:00
Marian Buschsieweke
3812ff7689
cpu/msp430_common: Add architecture_arch.h 2020-09-29 12:33:59 +02:00
Marian Buschsieweke
4abbda5b3e
cpu/atmega_common: Add architecture_arch.h 2020-09-29 12:33:59 +02:00
ef742cddb2
cpu/stm32: add support for stm32g431rb 2020-09-29 12:26:26 +02:00
2c6693d68e
Merge pull request #14863 from hugueslarrive/nucleo-f302r8
boards/nucleo-f302r8: add ADC feature
2020-09-29 10:45:40 +02:00
2d80bbf7b9
Merge pull request #15109 from aabadie/pr/make/features_bootloader_stm32_cleanup
cpu/stm32: cleanup bootloader_stm32 build system management
2020-09-29 10:45:27 +02:00
ef864bba39
cpu/stm32: only build bootloader when the module is loaded 2020-09-28 21:07:01 +02:00
1259a89acf
cpu/stm32: remove useless bootloader dependency resolution 2020-09-28 21:07:01 +02:00
42728db45b
cpu/stm32: fix logical bug when getting l0/g0 CPU_CORE 2020-09-28 17:04:54 +02:00
Marian Buschsieweke
833afc03e1
cpu/arm7_common: Silence -Wcast-align
- Enforced that ISR_STACKSIZE is indeed a multiple of 4
- With this enforced, every cast that triggers a -Wcast-align warning is now
  a false positives, so those were silenced by (intermediately) casting to
  `uintptr_t`.
2020-09-28 11:03:33 +02:00
Marian Buschsieweke
cc2382220f
cpu/arm7_common: Align thread stacks to 32 bit
This didn't change binaries for me. Either the linker script already took care
of it through the section names of the stacks, or I just was lucky. If I was
just luck, this fixes a bug. If not, it makes the hidden alignment explicit in
the C code, so that code review is easier.
2020-09-28 11:00:34 +02:00
hugues
9c41e25fff cpu/stm32/periph/adc_f3: fix for devices which have only one ADC 2020-09-28 10:29:53 +02:00
9b08cdca3d
Merge pull request #15098 from benpicco/cpu/fe310_rtc_fix
cpu/fe310: run RTT at 1 Hz if RTC is selected
2020-09-28 09:16:42 +02:00
Jean Pierre Dudey
295a3665d2 cpu/esp: implement ESP SoftAP mode
This is an implementation of the ESP32 SoftAP mode using the
`esp_wifi_ap` pseudomodule.

Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2020-09-27 18:29:24 -05:00
Jean Pierre Dudey
447cdebd26 cpu/cc26xx_cc13xx: add & link CCFG configuration
> Allows flahsing CCFG configuration using Kconfig,
formely "make menuconfig".
> Supports cc26x0, cc26x2_cc13x2.
> Can be used to enable bootloader backdoor, to use
cc2538-bsl flashing script.
> Not all options are in Kconfig, most important ones,
others can be added in further commits.
> On cc13xx targets the VDDR high option can be enabled
using Kconfig.
> With this, RIOT can flash blank chips and the firmware
will run just fine.

Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-09-27 17:58:11 -05:00
Jean Pierre Dudey
978ea409b5 cpu/cc26xx_cc13xx: add CCFG register values
This adds almost all registers necessary to flash create
the CCFG configuration.

Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-09-27 17:56:55 -05:00
Jean Pierre Dudey
d0aedf0f95 cpu/cc26xx_cc13xx: add custom ld script
This add a custom ldscript for cc26xx_cc13xx CPUs,
which allows linking CCFG configuration, usage of GPRAM,
etc.

Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-09-27 17:54:14 -05:00
Benjamin Valentin
2647f5f3c2 cpu/fe310: run RTT at 1 Hz if RTC is selected
The RTC on the fe310 is emulated using the RTT.
This only works if the RTT frequency is 1 Hz, so default to that
value in case `periph_rtc` is selected.
2020-09-27 22:45:04 +02:00
9334897ab9
Merge pull request #15086 from maribu/ibs-after-stackpointer
cpu/cortexm_common: Flush pipeline after triggering PendSV
2020-09-26 21:05:04 +02:00
6a2b2aab5d
Merge pull request #14879 from benpicco/cpu/kinetis/rtc_mktimr
cpu/kinetis: RTC use rtc_mktime()
2020-09-25 21:48:16 +02:00
a1473431da
Merge pull request #14878 from benpicco/cpu/fe310/rtc_mktime
cpu/fe310: RTC: use rtc_mktime()
2020-09-25 21:19:04 +02:00
benpicco
a923cda323
Merge pull request #14944 from benpicco/drivers/mtd_mci
cpu/lpc23xx: add MTD wrapper for MCI driver
2020-09-25 18:22:48 +02:00
Benjamin Valentin
d092c12a66 cpu/fe310: RTC: use rtc_mktime()
Use RTC helper functions instead of libc functions.
This gives us y2038 safety by the extended epoch and saves
a good chunk of memory:

picolibc mktime():

   text	   data	    bss	    dec	    hex	filename
  15048	    520	   2504	  18072	   4698	tests/periph_rtc/bin/hifive1/tests_periph_rtc.elf

rtc_mktime():

   text	   data	    bss	    dec	    hex	filename
   7632	     40	   2452	  10124	   278c	tests/periph_rtc/bin/hifive1/tests_periph_rtc.elf
2020-09-25 18:22:10 +02:00
benpicco
2bfe7e1ce2
Merge pull request #15090 from aabadie/pr/boards/nucleo-g071rb
boards/nucleo-g071rb: add initial support
2020-09-25 18:21:29 +02:00
84f1a70b7f
cpu/stm32/rtt: adapt for stm32g0 2020-09-25 15:20:14 +02:00
Marian Buschsieweke
49f3d1056d
cpu/cortexm_common: Code style
Fix code alignment
2020-09-25 13:58:25 +02:00
Marian Buschsieweke
304f4ec7d4
cpu/cortexm_common: flush pipeline after PendSV
https://interrupt.memfault.com/blog/arm-cortex-m-exceptions-and-nvic#pendsv-example
2020-09-25 13:58:06 +02:00
25e1fec90c
cpu/stm32: add support for stm32g071rb 2020-09-25 13:08:07 +02:00
da9168c652
cpu/stm32: rename stmclk_fx to stmclk_f2f4f7
This commit also removes all f0/f1/f3 specific code from this file
2020-09-24 11:27:24 +02:00
042a550f0d
boards: cpu: stm32f1/f3: rework clock configuration and init 2020-09-24 11:27:24 +02:00
MrKevinWeiss
7893158b5a drivers/dev_enums: Remove unused dev_enums.h 2020-09-24 09:27:39 +02:00
97a0ba33c2
Merge pull request #14557 from bergzand/pr/cortexm_common/pendsv_priority
cortexm_common: Make no_thread_idle compatible with cortex-m0
2020-09-23 11:49:41 +02:00
chrysn
9295f69da4
Merge pull request #15062 from kaspar030/fix_efm32_16b_timer_set_absolute
cpu/efm32/periph/timer: fix timer_set_absolute() in 16bit case
2020-09-23 11:28:00 +02:00
eb73515e2c
cortexm_common: Enable no_thread_idle for all architectures 2020-09-23 11:02:01 +02:00
ba58273b04
cortexm_common: Enable using pendsv IRQ at lower priority
This modifies the cortex-m thread specifics to allow running the PendSV
interrupt continuously at lower priority and removes the priority
modifications during the interrupt itself. Interrupts are disabled
during the scheduling itself, but enabled briefly after the sleep to
ensure that they are handled if activated during the scheduling or the
sleep.
2020-09-23 11:01:29 +02:00
Francisco
195b7e6e16
Merge pull request #14945 from aabadie/pr/boards/stm32l0l1_clock_kconfig
boards/stm32l0l1: rework clock initialization and configuration
2020-09-23 09:30:19 +02:00
dcb25eb3fc cpu/efm32/periph/timer: fix timer_set_absolute() in 16bit case 2020-09-22 23:15:23 +02:00
c14d7ec7db
cpu/stm32l0l1: refactor clock initialization sequence 2020-09-22 22:30:20 +02:00
425a2f69a2
cpu/stm32l0l1: ensure PLL is enabled when required
PLL is required for the 48MHz output used by HWRNG and also when it's used as system clock
2020-09-22 22:30:20 +02:00
8ac1909ea3
cpu: boards: stm32l0l1: use IS_ACTIVE where possible in stmclk 2020-09-22 22:30:19 +02:00
23117a844e
boards: cpu: stm32l0: rework clock configuration 2020-09-22 22:30:19 +02:00
MrKevinWeiss
d95452b979 cpu/native: Remove unused TIMER_0_EN 2020-09-22 16:26:01 +02:00
MrKevinWeiss
a65ce2a058 cpu/ezr32wg: fix comment 2020-09-22 16:26:01 +02:00
MrKevinWeiss
263aea60cb cpu/lpc1768: Cleanup timer to remove dev_enums 2020-09-22 16:26:01 +02:00
MrKevinWeiss
7c3082a7a3 cpu/lm4f120: Update timer macros to timer_config_t 2020-09-22 16:26:01 +02:00
Francisco
bcd2b3e369
Merge pull request #14030 from benpicco/cpu/sam0_common-rtc_tamper
cpu/sam0_common: GPIO: use tamper detection to wake from Deep Sleep
2020-09-22 11:41:48 +02:00
Francisco
64f6b7ffa4
Merge pull request #14702 from maribu/sched_active_thread
treewide: Fix direct access to scheduler internals
2020-09-21 09:09:59 +02:00
Benjamin Valentin
310eb4970c cpu/sam0_common: GPIO: use tamper detection to wake from Deep Sleep
On samd5x only the RTC can wake the CPU from Deep Sleep (pm modes 0 & 1).
The external interrupt controller is disabled, but we can use the tamper
detection of the RTC.

If an gpio interrupt is configured on one of the five tamper detect pins,
those can be used to wake the CPU from Deep Sleep / Hibernate.
2020-09-17 18:46:25 +02:00
Benjamin Valentin
0499d016ad cpu/sam0_common: implement RTC tamper detection 2020-09-17 18:45:50 +02:00
Francisco
6a826555cf
Merge pull request #14877 from maribu/stm32-eth-fix
cpu/stm32/periph/eth: Fix transmission bug
2020-09-16 14:30:44 +02:00
Benjamin Valentin
cff8e862b8 picolibc: model as a feature 2020-09-15 22:11:21 +02:00
chrysn
5b97b49b1d cpu/nrf52: Remove unused static inline USB poweroff
The function was never in used, and this is breaking builds using LLVM
that treats unused static inlines as an error.
2020-09-15 15:55:05 +02:00
Marian Buschsieweke
f5398cf57b
Merge pull request #14940 from benpicco/cpu/cortexm_common-puf_sram
cpu/cortexm_common: advertise puf_sram feature
2020-09-15 10:58:41 +02:00
18cda40fb5
Merge pull request #14710 from bergzand/pr/cortexm/thread_remove_nop_ctx_switch
cortexm_common: Skip context save/restore on scheduling the previous thread
2020-09-11 18:28:43 +02:00
Benjamin Valentin
d9116684e5 cpu/cortexm_common: advertise puf_sram feature
`puf_sram` is a feature of the linker script, it does not need vendor
specific hardware support.
2020-09-11 16:30:45 +02:00
benpicco
842933855f
Merge pull request #14995 from benpicco/cpu/cc2538-register
cc2538_rf: register with netdev
2020-09-11 16:03:08 +02:00
Benjamin Valentin
a1a67265cd cc2538_rf: use prefix for global function name 2020-09-11 13:33:37 +02:00
Benjamin Valentin
8ac3332cb6 cc2538_rf: add EUI provoder for primary EUI-64 2020-09-11 13:33:37 +02:00
Benjamin Valentin
1811686540 cc2538_rf: register with netdev 2020-09-11 13:33:37 +02:00
Benjamin Valentin
6675c5f5c0 cc2538_rf: pass address via pointer 2020-09-11 13:33:37 +02:00
Francisco
858533e68e
Merge pull request #14994 from benpicco/nrf802154-register
nrf802154: register with netdev
2020-09-11 12:48:40 +02:00
benpicco
5715f5776b
Merge pull request #14804 from bergzand/pr/sam0/gpio_iobus
sam0_common: Use Single-cycle I/O Port for GPIO when available
2020-09-10 23:45:43 +02:00
Dylan Laduranty
4db8a1f602
Merge pull request #14478 from benpicco/cpu/sam0/tc_pwm
cpu/sam0_common: add support to run PWM off TC timers
2020-09-10 23:04:58 +02:00
6007a31813
sam0: Add periph_gpio_fast_read feature where applicable 2020-09-10 22:13:25 +02:00
ddb22a3c56
sam0_common: Use Single-cycle I/O Port for GPIO when available
The Cortex-m0 based ATSAM devices can use the Single-cycle I/O Port for
GPIO. This commit modifies the gpio_t type to use this port when
available. It is mapped back to the peripheral memory space for
configuration access.  When it is not available, the _port_iobus() and
_port() functions behave identical, which is the case for the samd51.
2020-09-10 22:13:24 +02:00
Benjamin Valentin
0437461812 cpu/sam0_common: PWM: add support to run PWM off TC timers 2020-09-10 21:47:03 +02:00
5db55360cc
cortexm_common: Determine next thread before unscheduling 2020-09-10 20:42:55 +02:00
benpicco
f75ca11968
Merge pull request #14802 from jia200x/pr/nrf52840_radio_hal
nrf52840: implement Radio HAL
2020-09-10 18:07:51 +02:00
Jose Alamos
377560f5cc nrf52840: add radio hal implementation 2020-09-10 17:01:14 +02:00
Cenk Gündoğan
0d0bc91553
Merge pull request #14754 from leandrolanzieri/pr/no_archives
build system: link object files
2020-09-10 09:36:29 +02:00
Benjamin Valentin
58dc106309 nrf802154: register with netdev 2020-09-10 00:05:25 +02:00
benpicco
be3667bfdd
Merge pull request #14678 from dylad/cpu/saml1x/rtt-init-fix
cpu/saml1x: fix RTT issue in init process
2020-09-09 22:47:51 +02:00
Dylan Laduranty
35536233f9 cpu/saml1x: fix RTT issue in init process
RTT module may get stuck during the init process if the RTC was running from
a previous boot. Unsure we don't remove the peripheral clock during the CPU
init if RTC is active from a previous boot and add a workaround to disable
this module as it will be re-init at some point later by the auto_init module
or by the user's application.
2020-09-09 21:27:48 +02:00
benpicco
2ba037ad4a
Merge pull request #14977 from benpicco/CLOCK_CORECLOCK
always define CLOCK_CORECLOCK
2020-09-09 21:25:53 +02:00
5516b3d6c7
Merge pull request #14990 from MrKevinWeiss/pr/fix/lpcuart
cpu/lpc1768: Fix uart initialization
2020-09-09 18:09:33 +02:00
MrKevinWeiss
966527d168 cpu/lpc1768: Fix uart initialization
The pinsel_shift should be multiplied by 2 as each bitfield is 2 bits
2020-09-09 17:44:25 +02:00
benpicco
7bd933f1ce
Merge pull request #14991 from leandrolanzieri/pr/cpu/native/fix_rtc_dependency
cpu/native: pull xtimer when RTC is used
2020-09-09 17:43:49 +02:00
benpicco
84e36e6fcc
Merge pull request #14985 from jia200x/pr/hal/cc2538_rf/fix_style_issues
cc2538_rf_hal: fix style issues
2020-09-09 17:41:02 +02:00
Leandro Lanzieri
24d2578606
cpu/native: pull xtimer when RTC is used 2020-09-09 16:59:18 +02:00
Benjamin Valentin
7d29d85ddd cpu/efm32: define CLOCK_CORECLOCK 2020-09-09 16:44:12 +02:00
benpicco
21fbf62e4e
Merge pull request #14989 from aabadie/pr/cpu/stm32l4wb_apbx_div2_fix
cpu/stm32l4wb: fix APBx bitfields for divider factor 2
2020-09-09 16:42:57 +02:00
4e235b8e76
cpu/stm32l4wb: fix APBx bitfields for divider factor 2 2020-09-09 15:59:38 +02:00
cdbb3e025a
cpu/fe310: boards/hifive1*: use IS_ACTIVE where possible 2020-09-09 14:14:39 +02:00
ace160a2a3
boards/hifive1: use MHZ utility macro for clock frequency 2020-09-09 14:14:39 +02:00
49e11626d3
cpu/fe310: ensure all clock modes are built 2020-09-09 14:14:39 +02:00
Jose Alamos
9d770ec1bd cc2538_rf_hal: fix style issues 2020-09-09 13:07:58 +02:00
benpicco
239999fe73
Merge pull request #14984 from jia200x/pr/hal/missing_const
ieee802154_hal: add missing const qualifiers
2020-09-09 13:03:30 +02:00
Jose Alamos
d3630dcabe cc2538_rf: add missing const qualifiers 2020-09-09 11:18:01 +02:00
MrKevinWeiss
c2e81b3ca7 cpu/lpc1768: Generalize uart to remove dev_enums
Change uart dev 1 to use UART2 on p9 and p10 since p0 and p1 are not accessable
2020-09-09 10:25:37 +02:00
MrKevinWeiss
11465c941d cpu/lm4f120: Remove dev_enums dependency 2020-09-09 10:25:37 +02:00
Francisco
adb0bcab47
Merge pull request #14866 from aabadie/pr/boards/stm32l4wb_clock_kconfig
boards: cpu: stm32l4/wb: rework clock configuration and initialization
2020-09-09 09:35:29 +02:00
Francisco
757846ad7f
Merge pull request #14921 from aabadie/pr/boards/stm32f0_clock_kconfig
boards/stm32f0: rework clock initialization and configuration
2020-09-09 09:35:22 +02:00
Francisco
f08e65cd0c
Merge pull request #14981 from maribu/target-arch
build system: Overwrite TARGET_ARCH per arch
2020-09-09 09:10:52 +02:00
Marian Buschsieweke
7c1949341e
build system: Overwrite TARGET_ARCH per arch
Add `TARGET_ARCH_<ARCH>` for each architecture (e.g. `TARGET_ARCH_CORTEX` for
Cortex M) to allow users to overwrite the target triple for a specific arch
from ~/.profile or ~/.bashrc (or the like) without overwriting it for all others
as well.
2020-09-08 22:28:41 +02:00
9dd20c0ccb
cpu: boards: stm32l4/wb: use IS_USED for clock where possible 2020-09-08 18:42:42 +02:00
0745cc4a99
cpu: boards: smt32l4: rework clock configuration 2020-09-08 18:42:41 +02:00
7c923da0c8
cpu/stm32: split f0 clock initialization in separate file 2020-09-08 16:03:44 +02:00
9eef7a47cb
Merge pull request #14830 from benpicco/cpu/lpc23xx-picolibc
cpu/lpc23xx: enable support for picolibc
2020-09-08 10:35:45 +02:00
Marian Buschsieweke
c5c62e93d3
cpu/esp_common: Declare sched_active_{thread,pid}
Declare sched_active_thread and sched_active_pid locally in the ESP code for
now. Once the code is cleaned up to no longer tap into scheduler internals but
use the API instead, those can be dropped again.
2020-09-07 12:59:55 +02:00
63554b1a0c
cpu/cc2538/radio: only build required files 2020-09-04 15:25:36 +02:00
Leandro Lanzieri
81cb769cad
makefiles: avoid building archives when compiling 2020-09-04 15:01:10 +02:00
benpicco
6fcf60c0b0
Merge pull request #14791 from jia200x/pr/cc2538_radio_hal
cc2538_rf: implement Radio HAL
2020-09-04 11:59:32 +02:00
Jose Alamos
1401635787 cc2538: implement radio hal 2020-09-04 11:09:17 +02:00
Benjamin Valentin
7bac063719 cpu/lpc23xx: mci: add xtimer dependency 2020-09-04 01:01:43 +02:00
22252337b6
cortexm_common: simplify FPU guards
The FPU is only enabled on platforms where it is available. The extra
checks for these platforms are redundant and removed here
2020-09-03 21:00:40 +02:00
Jose Alamos
18d188c5d9 cc2538: add IRQ bit definitions 2020-09-03 18:20:50 +02:00
Jose Alamos
2d7c316226 cc2538_netdev: disable netdev if radio hal is present 2020-09-03 18:20:50 +02:00
Jose Alamos
2917879407 cc2538: move chunks of init function to netdev 2020-09-03 18:20:49 +02:00
Jose Alamos
4cbd3a91b2 cc2538: move IRQ clear to netdev irq handler 2020-09-03 18:20:49 +02:00