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

34994 Commits

Author SHA1 Message Date
Gerson Fernando Budke
85fcba0ce9 boards/common: Introduce Atmel xmega common
Add atxmega common board definitions.  This works is a port from @josar
with few modifications.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
1d55c85f24 makefiles/tools/avrdude: Add xmega cpu conditions
The current script don't allow change debug protocol and not allows
set proper part name for xmega.  This make DEBUGPROTO optional with
JTAG as default protocol.  It add a filter for atxmega to add proper
AVRDUDE_PROGRAMMER_FLAGS.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
4b2bcd560b makefiles/arch/avr8: Add xmega linker conditions
The current script doesn't allow change script path and name.
Add LDSCRIPT_COMPAT_PATH and LDSCRIPT_COMPAT_NAME default
values to allow a unique path inside atxmega folder.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
699248c65f makefiles/arch/atmega.inc.mk: Rename to avr8.inc.mk
Atmel AVR-8 CPU was reworked to accomodate variants like ATxmega.
This rename to atmega.inc.mk to avr8.inc.mk to be compliant with
new directory structure.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
aa3af4e2fa cpu/avr8_common/avr8_cpu: Add xmega clock
ATxmega have many clock options.  This introduce clk_init into cpu_init
to allow user select between a default configuration or perform fine
clock tune.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
f1eaa4caf3 cpu/avr8_common/avr8_cpu: Enable xmega pmic
The XMEGA CPU have a Programmable Multilevel Interrupt Controller.
This enables all three PMIC levels.  By default, all interrupts are
preconfigured as LOW Level without Round Robin queue.  This works
as any MCU with interrupt enabled.

In order to get benefit from Multilevel Interrupts user need increase
the interrupt level by own.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
70c597620f cpu/avr8_common: Differentiate avr8 cpu cores
Current there is no way to split code between ATmega and ATxmega in
drivers.  This differentiate AVR8 cores into MEGAs and XMEGAs.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
facede13fd cpu/avr8_common: Rework and add xmega registers
The current context switch and thread stack init don't have a generic
way to save/restore registers for all AVR-8 variations.  This add
defines to check flash/data sizes and rework:

 - thread_stack_init
 - avr8_context_save
 - avr8_context_restore

The new implementation add missing RAMP D/X/Y registers that are used
by XMEGA variations.

The rules to add EIND, RAMP(D,X,Y,Z) register are:

 - EIND must be added if device have more than 128k flash.  This means,
   device can access more than 64k words in flash.
 - RAMP D/X/Y must be added if device have or can address more than
   64k data.
 - RAMPZ must be added if device can address more than 64k bytes of
   flash or data.

With above rules there is no necessity to check by device because it is
mandatory the registers for those MCU variations.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
8c1203c646 cpu/avr8_common: Add xmega reset cause register
Add missing ATxmega reset cause register.  This shares same definitions
from ATmega CPU.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
1a88f0bad6 cpu: Introduce Atmel xmega cpu
Add ATxmega common files and cpu definitions.

This works was originally developed by @Josar.  The 2018 version
were port to 2021 mainline.

This version changes original port to have only the atxmega CPU
definition. With that, all family can be accomodated.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
d041199825 cpu/avr8_common: Move irq_enable from board to cpu
Some mega boards enabling global irq at board_init.  This moves that
responsability to cpu/avr8_common to create a common point to all
variants.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Gerson Fernando Budke
9081a3b7c7 cpu/avr8_common/include/cpu.h: Increase number of uart
The ATxmega can have up to 8 UARTs.  This increase from 2 up to 7 to
keep avr8_state flags with 8 bits wide.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-15 20:16:10 -03:00
Martine Lenders
fd36c626a3
Merge pull request #15950 from MrKevinWeiss/pr/turo/initial
sys/test_utils/result_output: Initial implementations and API of turo
2021-03-15 11:35:01 +01:00
MrKevinWeiss
2e5ff00386 dist/tools/uncrustify: Add turo module 2021-03-15 10:36:46 +01:00
MrKevinWeiss
e7cc489b14 tests/turo: Add automated turo test for json 2021-03-15 10:36:46 +01:00
MrKevinWeiss
e9b65306ea tests/unittests/turo: Add turo unittest 2021-03-15 10:36:46 +01:00
MrKevinWeiss
38884d24b2 sys/result_output: Add kconfig 2021-03-15 10:36:46 +01:00
MrKevinWeiss
6a3eb46d5e sys/result_output: Expose result output 2021-03-12 16:20:33 +01:00
MrKevinWeiss
2c2be2636d sys/result_output: Add initial structure check 2021-03-12 16:17:12 +01:00
MrKevinWeiss
d17829311c sys/result_output: Add initial text implementation 2021-03-12 16:16:28 +01:00
MrKevinWeiss
3cbd8a356b sys/result_output: Add initial json implementation 2021-03-12 16:15:07 +01:00
Martine Lenders
e768a85f62
Merge pull request #15798 from miri64/dist/enh/annotations-moved-by-offset
static_tests: move diff annotations by offset.
2021-03-11 14:12:02 +01:00
Martine Lenders
254af225c9
uncrustify: move annotation by offset 2021-03-11 13:32:33 +01:00
Martine Lenders
b52ddefccd
headerguards: move annotation by offset 2021-03-11 13:32:33 +01:00
Martine Lenders
c6260f29b3
coccinelle: move annotation by offset 2021-03-11 13:32:32 +01:00
Martine Lenders
5521492a75
Merge pull request #15886 from leandrolanzieri/pr/netdev_remove_radio_hal_pseudomodule
drivers/netdev: cleanup dependencies and remove ieee802154_radio_hal pseudomodule
2021-03-10 16:42:55 +01:00
Leandro Lanzieri
5af48d2969
tests/netstats_neighbor: use gnrc_netdev_default module 2021-03-10 15:22:03 +01:00
Leandro Lanzieri
c54d680664
examples/gnrc_networking: remove reference to netdev_ieee802154_legacy 2021-03-10 14:18:13 +01:00
Leandro Lanzieri
e47727fb16
treewide: remove unneeded ieee802154_radio_hal pseudomodule 2021-03-10 14:18:13 +01:00
Leandro Lanzieri
246391a9fa
cpu/nrf52/nrf802154: use driver specific legacy pseudomodule
This introduces the nrf802154_netdev_legacy pseudomodule that switches
to the netdev-based implementation of the nrf802154 radio driver.
2021-03-10 14:18:12 +01:00
Leandro Lanzieri
f0e7dfdf76
cpu/cc2538/radio: use driver specific legacy pseudomodule
This introduces the cc2538_rf_netdev_legacy pseudomodule that switches
to the netdev-based implementation of the cc2538 radio driver.
2021-03-10 14:18:12 +01:00
Leandro Lanzieri
fe5c982fa6
drivers/Makefile.dep: don't pull netdev on netdev_default
netdev_default should enable the network devices, which do not
necessarily use netdev.
2021-03-10 14:18:12 +01:00
Leandro Lanzieri
79fe7274ca
doc: add documentation on default configurations 2021-03-10 14:18:09 +01:00
010ba56174
Merge pull request #16061 from kaspar030/xfa_shell
sys/shell: add XFA support
2021-03-09 14:47:43 +01:00
Martine Lenders
d27ea0237e
Merge pull request #16119 from miri64/riotctrl_shell/feat/congure_test
riotctrl_shell: add ShellInteraction for `congure_test`
2021-03-09 12:27:10 +01:00
Kevin "Tristate Tom" Weiss
9d579a34d0
Merge pull request #16116 from leandrolanzieri/pr/sys/ztimer/kconfig_change_default_backend
sys/ztimer/kconfig: add defaults for backends
2021-03-09 12:22:10 +01:00
d31934223c tests/periph_spi_dma: blacklist samd10-xmini 2021-03-09 11:50:46 +01:00
f454cb7a24 tests/shell: uncrustify main.c 2021-03-09 11:50:46 +01:00
Martine Lenders
5ceffde662
tests/congure_test: add tests for CongureTest ShellInteraction 2021-03-09 11:24:23 +01:00
Marian Buschsieweke
89e11977b2
Merge pull request #15998 from nandojve/avr8_fix_gdb_debian
dist/tools/avarice/debug.sh: Change gdb check order
2021-03-09 10:27:02 +01:00
Francisco
fc82e3916e
Merge pull request #15931 from haukepetersen/add_dbgpin3
sys: add `dbgpin` module for debugging and profiling (take 2)
2021-03-09 10:26:37 +01:00
Leandro Lanzieri
37419b2b3e
Merge pull request #16157 from MrKevinWeiss/pr/kconfig/posixinet
sys/posix/inet: Add posix_inet and dependencies to Kconfig
2021-03-09 10:00:09 +01:00
1588dd8e46
Merge pull request #16166 from fjmolinas/pr_flashpage_dep_riotbooty
sys/riotboot: remove remaining FLASHPAGE_SIZE dep
2021-03-09 09:43:43 +01:00
MrKevinWeiss
0fd3cbfa0b sys/posix: Add posix_inet module to kconfig 2021-03-09 09:15:59 +01:00
MrKevinWeiss
223430f589 net/ipv*/addr: Add ipv*_addr modules to Kconfig 2021-03-09 09:08:50 +01:00
Gerson Fernando Budke
9cd9ba1bce dist/tools/avarice/debug.sh: Change gdb check order
There are some Linux distributions that gdb-multiarch doesn't work as
expected and debug section not start.  Since AVARICE is dedicated to
AVR architecture, let's check first by the default tool then multiarch
version.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2021-03-08 17:49:36 -03:00
benpicco
b09f799038
Merge pull request #16161 from madokapeng/nucleo722ze_CAN_support
boards/nucleo-f722ze: Add periph_can
2021-03-08 19:22:38 +01:00
benpicco
9ca0452bc8
Merge pull request #16165 from maribu/qdsa-bugfix
pkg/qDSA: fix backend selection log
2021-03-08 18:52:29 +01:00
Francisco
a69fe4764e
Merge pull request #16168 from maribu/nrf5x-rtt
cpu/nrf5x_common: drop bogus rtt_set_counter()
2021-03-08 18:26:24 +01:00
Francisco
5e2660f797
Merge pull request #16167 from kfessel/patch-2
doc/Coding_Convention: clarify: void return is allowed
2021-03-08 18:25:50 +01:00