3241aff71c
sam0_common: add uart modecfg
2019-06-21 10:54:24 +02:00
Benjamin Valentin
7928c74e26
sam0_common: rtc/rtt: don't setup oscilators
...
leave that to cpu.c
2019-06-18 13:20:04 +02:00
Benjamin Valentin
f375b00ff3
cpu/samd5x: add support for samd5x/same5x MCUs
...
This adds supoprt for the Atmel SAMD51 & SAME54 SoC.
The SAME5x/SAMD5x is a line of Cortex-M4F MCUs that share peripherals
with the samd2x Cortex-M0+ and saml1x Cortex-M23 parts.
2019-06-06 16:47:11 +02:00
Benjamin Valentin
3cd119a6e6
cpu/sam0_common: import vendor files for samd51
...
Atmel Software Framework (ASF) provides a set of low-level header files
that give access to different hardware peripherals of Atmel's ICs.
Origin: Atmel SAMD51 Series Device Support (1.1.96)
License: Apache-2.0
URL: http://packs.download.atmel.com/Atmel.SAMD51_DFP.1.1.96.atpack
2019-06-06 16:47:11 +02:00
Benjamin Valentin
cb9624909f
cpu/sam0_common: import vendor files for same54
...
Atmel Software Framework (ASF) provides a set of low-level header
files that give access to different hardware peripherals of Atmel's
ICs.
Origin: Atmel SAME54 Series Device Support (1.0.87)
License: Apache-2.0
URL: http://packs.download.atmel.com/Atmel.SAME54_DFP.1.0.87.atpack
2019-06-06 16:47:11 +02:00
Benjamin Valentin
f36d54f239
sam0/timer: various fixes
...
This cleans up the sam0 timer driver:
- remove the check for the unused freq parameter
- the MCU provides dedicated SET/CLR registers to avoid
read-modify-write, so don't do read-modify-write on them.
- workaround a possible hardware bug on SAMD5x:
loop until the CMD_READSYNC is really set
2019-06-06 15:38:55 +02:00
smlng
2de4b3011b
periph_common: add as dependency to periph drivers
...
Rational: the periph_common module is required by (most) other periph drivers
and also during startup of the CPU/MCU to run periph_init. The latter is only
required if other periph drivers are used, hence periph_common should be a
depency of periph_* modules and *not* of the CPU/MCU. This PR fixes that
by making periph_common a depency of periph_* and removing the explicit
include in the CPU/MCU implementation.
2019-06-03 13:44:10 +02:00
Benjamin Valentin
7415e0590e
sam0_common: spi: use sercom_set_gen() instead of re-implementing it
...
Don't repeat yourself and introduce errors in doing so.
2019-05-25 19:13:53 +02:00
Benjamin Valentin
84233ce5d5
sam0_common: replace sercom_id() calculation with switch statement
...
As the sercom_id() function grows it gets more unweidly.
Let's replace it with a simple switch statement that is true for all
sam0 parts.
2019-05-25 19:12:55 +02:00
Benjamin Valentin
31f88a2d0e
sam0_common: periph/spi: use sercom_clk_en/dis()
...
Use already existing functions to turn on / off SERCOM clocks instead
of replicating the functionality in the driver.
2019-05-25 19:09:32 +02:00
Dylan Laduranty
f6ba7ee106
sam0: correct number of PM for SAML10
2019-05-22 17:04:27 +02:00
Benjamin Valentin
849dd4cdce
sam0_common: make Timer implementation common across all sam0 MCUs
...
The currently supported SAM0 MCUs (samd21, saml21, saml1x) share the same
Timer peripheral, yet each of them carries it's own copy of the Timer
driver.
This introduces a new timer driver that is common for all sam0 MCUs and
uses structs for configuration instead of defines.
2019-05-21 11:47:59 +02:00
Benjamin Valentin
077056b949
sam0_common: make RTT implementation common across all sam0 MCUs
...
The currently supported SAM0 MCUs (samd21, saml21, saml1x) share the
same RTC peripheral, yet each of them carries it's own copy of the RTT
driver.
Unify the drivers and move them to sam0_common.
2019-05-09 20:54:00 +02:00
Benjamin Valentin
9aa8c619c1
sam0_common: make RTC implementation common across all sam0 MCUs
...
The currently supported SAM0 MCUs (samd21, saml21, saml1x) share the
same RTC peripheral, yet each of them carries it's own copy of the RTC
driver.
Unify the drivers and move them to sam0_common.
2019-04-15 22:25:47 +02:00
Hyungsin
d9c17c2154
boards: add initial hamilton board support
2019-04-03 15:00:35 -07:00
Kevin "Bear Puncher" Weiss
15c2a48fdf
Merge pull request #10839 from dylad/pr/sam0/remove_gclk_slow
...
cpu/sam0_common: remove unneeded GCLK_SLOW setup in i2c driver
2019-03-28 14:31:16 +01:00
Dylan Laduranty
ccf12c57a8
Merge pull request #10884 from fedepell/sam_rwee_support
...
sam0 flashpage RWWEE flash support
2019-03-28 11:00:25 +01:00
1286b18ca9
sam0_common: Fix syntax mistake in usbdev driver
2019-03-26 16:09:03 +01:00
d7804823db
sam0_common: Add USB peripheral driver
2019-03-26 10:26:11 +01:00
Federico Pellegrin
5faafac092
sam0 flashpage RWWEE flash support
2019-03-21 04:27:41 +01:00
Martine Lenders
7220b66708
Merge pull request #10936 from miri64/sam0_common/fix/check-adc-numof
...
sam0_common: check ADC_NUMOF on adc_init()
2019-02-04 16:41:41 +01:00
Kees Bakker
458c95a854
Merge pull request #10914 from keestux/describe-saml1x-source
...
cpu/sam0_common: update README for SAML1x addition
2019-02-04 16:29:15 +01:00
Martine Lenders
39e90502af
sam0_common: check ADC_NUMOF on adc_init()
2019-02-04 09:28:13 +01:00
Kees Bakker
e4325ed802
cpu/sam0_common: update README for SAML1x addition
...
Rewrite the README to reflect the recent addition of SAMR30 and
SAML10/SAML11.
2019-02-01 23:33:31 +01:00
Federico Pellegrin
318f0cf679
sam0 flashpage: make ready check inline, add wait also after PBC
2019-01-30 04:29:23 +01:00
Federico Pellegrin
409d83e087
sam0 flashpage: minor code style fixes
2019-01-29 20:58:46 +01:00
Federico Pellegrin
051be66b76
sam0 flashpage: wait for READY bit in INTFLAG after write command
2019-01-27 07:39:10 +01:00
Dylan Laduranty
5dd51f2ec5
cpu/sam0_common: remove unneeded GCLK_SLOW setup in i2c driver
2019-01-22 09:29:42 +01:00
Dylan Laduranty
9450fa7dc3
cpu/sam0_common: add support for saml10/saml11
...
Add SAML10/SAML11 support through SAM0 because hardware IP are the same so reuse to avoid duplication
2019-01-21 17:06:58 +01:00
Federico Pellegrin
b8b8ffd163
sam0 flashpage_write: correct assert for last byte of flash + style
2018-12-21 13:11:38 +01:00
Federico Pellegrin
a0054654ee
sam0 flashpage_write: fix writes translation from RIOT to CPU pages
2018-12-19 04:54:44 +01:00
c87f02149e
cpu/sam0_common: provide gpio/gpio_irq feature at cpu level
2018-12-17 20:52:48 +01:00
Martine Lenders
95819c660b
sam0_common: mark closing #endif for MODULE_PERIPH_GPIO_IRQ
2018-10-09 15:11:00 +02:00
13654a950b
cpu/samr30: add support for samr30g18a
...
Co-authored-by: biboc <bapclenet@gmail.com>
2018-10-01 10:15:08 +02:00
Hauke Petersen
6afd0efdd8
cpu/sam0_common/gpio: use gpio_irq feature
2018-09-21 08:19:31 +02:00
dylad
4e6d3d1f92
sam0/spi: fix SPI mode assignment
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2018-09-04 13:58:51 +02:00
Dylan Laduranty
8871e5aaa6
Merge pull request #9876 from fedepell/sercomid-9875
...
sam0_common: fix sercom_id return value for SERCOM5 (#9875 )
2018-09-04 09:10:06 +02:00
Federico Pellegrin
d3cd2b71c0
sam0_common: fix sercom_id return value for SERCOM5 ( #9875 )
2018-09-03 18:57:18 +02:00
Federico Pellegrin
bfdafe877e
sam0_common: correct sercom_set_gen for sercom5. it assumes SERCOM5 GEN clock is in sequence, but is not, need to put a specific if test
2018-09-02 13:39:08 +02:00
smlng
e39ebb1623
cpu/sam0: add doxygen group around i2c_speed_t
2018-07-25 12:01:40 +02:00
smlng
90f66a1952
cpu/sam0_common/i2c: fix ambiguous reg assignment
...
The value assigned to the register was unclear due to usage
of bit-comparison and ternary operator, added parentheses to
make it explicit.
2018-07-25 12:01:40 +02:00
dylad
e6bd6bfe3b
sam0/i2c: update driver to new API
2018-07-25 12:01:34 +02:00
Joakim Nohlgård
28361592ae
sam0_common: Adjust ldscript memory segment attributes
2018-05-09 06:49:02 +02:00
Vincent Dupont
a1f482cbf7
cpu/sam0: use const pointer in flashpage
2018-03-14 16:28:33 +01:00
c1e20f8231
Merge pull request #7709 from smlng/cpu/sam0_common/enh_uart
...
cpu, sam0 common: adapt periph-uart to use read-only bit-fields
2017-12-15 12:45:10 +01:00
smlng
150f3fb231
cpu/sam0_common: fix assert in periph/flashpage
2017-12-10 16:21:52 +01:00
43e972fc61
Merge pull request #7970 from kYc0o/add_flashpage_write_raw
...
periph/flashpage: add flashpage_write_raw interface
2017-12-04 13:13:52 +01:00
kYc0o
cb0d021811
cpu/sam0_common/Makefile.features: add periph_flash_raw
2017-11-30 17:25:35 +01:00
kYc0o
adc08d6578
cpu/sam0_common: add alignment and minimum size write block constants
2017-11-30 17:25:35 +01:00
fcb3fd9e70
cpu/sam0_common: add flashpage_write_raw()
2017-11-30 15:14:39 +01:00
Martine Lenders
39c122155c
Merge pull request #7995 from smlng/make/fix/unused_params
...
make: fix unused-params error
2017-11-28 14:46:23 +01:00
smlng
7309171303
build: fix unused parameter errors
...
cpu, sam0_common: fix unused parameter in periph/spi
cpu, kinetis_common: fix unused parameter in periph/spi
cpu, cc2538: fix unused param in periph/i2c
cpu, cc2538: fix unused param in periph/spi
cpu, sam3: fix unused param in periph/spi
cpu, stm32_common: fix unused param in periph/pm
cpu, stm32f3: fix unused params in periph/i2c
cpu, nrf5x_common: fix unused param in periph/gpio
cpu, nrf5x_common: fix unused param in periph/spi
cpu, lpc2387: fix unused params in periph/spi
cpu, cc2538: fix unused params in radio/netdev
cpu, cc2650: fix unused params in periph/uart
cpu, lm4f120: fix unused param in periph/spi
cpu, lm4f120: fix unused params in periph/timer
cpu, lm4f120: fix unused params in periph/uart
cpu, stm32_common: fix unused params in periph/dac
cpu, stm32l0: fix unused params in periph/i2c
cpu, msp430fxyz: fix unused params in periph/uart
cpu, mips: fix unused params
cpu, cc430: fix unused-params in periph/timer
cpu, msp430fxyz: fix unused params in periph/spi
drivers, cc2420: fix unused param
cpu, mips32r2_common: fix unused params in periph/timer
cpu, cc2538: fix unused-param in periph/i2c
cpu, mips32r2_common: fix unused-param in periph/timer
cpu, msp430fxyz: fix unused params in periph/timer
cpu, atmega_common: fix unused params in periph/spi
driver, nrfmin: fix unused params
cpu, cc2538_rf: fix unused params
driver, netdev_ieee802514: fix unused param
cpu, mip_pic32m: fix unused params
cpu, lpc2387: fix unused params in periph/pwm
tests/driver_sdcard_spi: fix unused params
cpu, sam3: fix unused param in periph/pwm
tests/driver_dynamixel: fix unused params, and style issues
cpu, cc430: fix unused param in periph/rtc
cpu, atmega_common: fix unused params in periph/i2c
2017-11-28 14:36:01 +01:00
smlng
e381317fbf
make: fix sign-compare errors
...
cpu, nrf5x_common: fix sign-compare in periph/flashpage
drivers, periph_common: fix sign-compare in flashpage
cpu, sam0_common: fix sign-compare error in periph/gpio
cpu, cc2538: fix sign-compare in periph/timer
cpu, sam3: fix sign-compare in periph/gpio
cpu, stm32_common: fix sign-compare in periph/pwm
cpu, stm32_common: fix sign-compare in periph/timer
cpu, stm32_common: fix sign-compare in periph/flashpage
cpu, nrf5x_common: fix sign-compare in radio/nrfmin
cpu, samd21: fix sign-compare in periph/pwm
cpu, ezr32wg: fix sign-compare in periph/gpio
cpu, ezr32wg: fix sign-compare in periph/timer
drivers, ethos: fix sign-compare
sys, net: fix sign-compare
cpu, atmega_common: fix sign-compare error
cpu, msp430fxyz: fix sign-compare in periph/gpio
boards, msb-430-common: fix sign-compare in board_init
driver, cc2420: fix sign-compared
sys/net: fix sign-compare in gnrc_tftp
driver, pcd8544: fix sign-compare
driver, pn532: fix sign-compare
driver, sdcard_spi: fix sign-compare
tests: fix sign_compare
sys/net, lwmac: fix sign_compare
pkg, lwip: fix sign-compare
boards, waspmote: make CORECLOCK unsigned long to fix sign_compare error
tests, sock_ip: fix sign compare
tests, msg_avail: fix sign compare
tests, sock_udp: fix sign compare
boards: fix sign-compare for calliope and microbit matrix
2017-11-28 11:55:48 +01:00
Hauke Petersen
89db77710f
Merge pull request #7963 from dylad/opt_sam0_gpio
...
cpu/sam0: share GPIO configuration
2017-11-13 14:58:56 +01:00
f6d7e54228
Merge pull request #7739 from kYc0o/factorise_sam0_ldscripts
...
ld: refactor sam0 ldscripts
2017-11-13 11:36:25 +01:00
dylad
2f4254b0df
cpu/sam0: ensure PD is selected
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2017-11-10 10:43:40 +01:00
dylad
a06ace7904
cpu/sam0: share GPIO configuration
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2017-11-10 10:43:08 +01:00
Hauke Petersen
ec27204408
cpu/sam0: fixed cppcheck issue in i2c driver
2017-11-09 13:53:15 +01:00
Hauke Petersen
b3962f8d2c
cpu/sam0: removed guards form periph drivers
2017-11-09 12:57:02 +01:00
kYc0o
ec9897f9a3
cpu/sam0_commmon/ldscripts: remove all samd/l family linker scripts
2017-11-07 15:06:40 +01:00
kYc0o
4c86d95014
cpu/sam0_common/Makefile.include: add CPU ROM and RAM lengths
2017-11-07 15:06:39 +01:00
Sebastian Meiling
2c19595b7e
Merge pull request #7763 from photonthunder/sam0_common_uart_receive
...
cpu/sam0_common/periph/uart - don’t setup receive if no pin is selected
2017-11-06 17:33:42 +01:00
a20745b6c5
cpu: make use of Makefile.periph
2017-11-06 12:01:19 +01:00
93246dbedd
cpu: sam0: reorganize Makefile.features
2017-11-02 12:59:45 +01:00
Dan Evans
d6ef4d2d51
cpu/sam0_common/periph/uart - don’t setup receive if no pin is selected
2017-10-23 16:22:58 -07:00
416ac62fbf
pm: unify and set safe default pm_blocker
2017-10-16 14:32:27 +02:00
eef753a933
cpu/sam0: adapt support for samd21j18a with bootloader
2017-10-13 14:22:51 +02:00
Martine Lenders
6e8fc5cbe1
Merge pull request #7644 from smlng/cpu/sam0/flashpage
...
cpu, sam0_common: fix flashpage use bitfield
2017-10-13 12:05:44 +02:00
Joakim Nohlgård
7c1c6ac282
Merge pull request #7646 from aabadie/samd21_bootloader
...
cpu/sam0-common: rename mkr ldscript to more a generic name
2017-10-10 19:39:48 +02:00
smlng
ea1aa38b86
cpu, sam0_common: periph/uart use read-only bit-fields
2017-10-10 18:47:35 +02:00
smlng
732e60bb88
cpu, sam0_common: fix uart TXC check
2017-10-10 18:24:03 +02:00
Francisco Acosta
6da78131e7
Merge pull request #7675 from kaspar030/fix_sam0_uart
...
cpu/sam0/periph/uart: ensure uart_init() idempotency
2017-10-09 13:59:20 +02:00
ef1a8c66ac
cpu/sam0/periph/uart: ensure uart_init() idempotency
2017-10-09 13:45:46 +02:00
Hauke Petersen
b75672628a
Merge pull request #7632 from smlng/cpu/sam0_common/vendor_header
...
cpu, sam0_common: update vendor headers
2017-10-09 10:45:36 +02:00
487065da11
cpu/sam0_common/ldscripts: rename samd21g18a_mkr to samd21g18a_bootloader
2017-10-07 23:07:16 +02:00
Hauke Petersen
5711b5d53d
cpu/sam0/gpio: do not clear pin on init
2017-10-04 12:12:43 +02:00
dylad
1e5262506d
cpu/sam0: merge GPIO driver
2017-10-01 14:48:12 +02:00
Dan Evans
531e6f5008
sam0:usart - wake from sleep on receive line
2017-09-25 12:47:31 -06:00
smlng
48a996bbaa
cpu, sam0_common: fix flashpage use bitfield
2017-09-25 09:24:43 +02:00
smlng
c5cbc428b4
cpu, sam0_common: update vendor headers
2017-09-20 17:11:54 +02:00
dylad
cca9b7a2c4
cpu/sam0: fix sercom gclk selection
2017-09-15 11:32:32 +02:00
Hauke Petersen
68abdff15a
cpu/sam0: optimizations to the shared UART driver
2017-09-04 13:11:05 +02:00
Hauke Petersen
48ef1cd6c9
cpu/sam0_common: added SERCOM clk control functions
2017-09-04 13:08:17 +02:00
Hauke Petersen
4707ad2f89
cpu/sam0_common: fixed UART for samd21
2017-08-31 09:47:09 +02:00
dylad
a3acd1d741
remove dev variable for cppcheck
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2017-08-29 21:36:21 +02:00
dylad
c81ae98068
boards: update periph_conf of sam0 based board
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2017-08-29 21:26:42 +02:00
dylad
89c885ea40
sam0/uart: merge samd21 & saml21 uart driver
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2017-08-29 21:26:42 +02:00
b8070a6f5b
cpu/sam0: unify for arduino-mkr1000 and arduino-mkrzero boards
2017-08-25 15:18:44 +02:00
24a1aacca2
cpu/sam0: add missing doxygen group definition + cleanup
2017-08-24 14:54:47 +02:00
smlng
01af6d94c4
cpu, periph: retain constness in spi_transfer_bytes
2017-06-29 15:47:13 +02:00
smlng
692cf96297
doc: fix doxygen grouping of cpu periph drivers
2017-06-26 14:42:11 +02:00
Antonio Galea
dae3472d49
cpu/sam0_common: add saml21 i2c driver adaption
2017-06-23 11:19:56 +02:00
biboc
0e41861db0
Change my email address:
...
<baptiste.clenet@xsoen.com>
to
<bapclenet@gmail.com>
2017-06-19 10:38:16 +02:00
Dan Evans
4cc0e585d1
sam0/adc: assert resolution check fix
2017-06-08 11:04:11 -06:00
Hauke Petersen
4e29dce36b
cpu/samd0: added flashpage driver implemenation
2017-06-02 11:32:34 +02:00
0fcc7d3834
cleanup: apply headerguard script output
2017-05-24 17:54:02 +02:00
d768f5b357
cpu/sam0_common: add support for MCU used in Arduino MKR1000 board
2017-05-16 10:14:59 +02:00
8501a03cbc
cleanup: apply enable_debug_false.cocci to codebase (coccinelle)
...
Skipped sys/cbor/cbor.c, examples/microcoap_server/microcoap_sock.c,
as they use different semantics.
2017-05-15 18:45:43 +02:00
Hauke Petersen
5d5d4dc5a6
Merge pull request #6652 from hamilton-mote/spi-wtf
...
periph/spi: power regression
2017-05-15 09:17:28 +02:00
6b0cf6a728
Merge pull request #7027 from dylad/saml21_adc
...
saml21/adc: initial support
2017-05-12 23:33:47 +02:00
dylad
44dd56c3e8
sam0/adc: merged samd21 & saml21 adc driver
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2017-05-12 21:02:17 +02:00
Michael Andersen
20ee531486
periph/spi: hotfix for power regression
2017-05-12 10:24:47 -07:00
Hauke Petersen
21d97c6aa7
cpu/sam0: move sam0.h to vendor header tree
2017-05-11 12:33:22 +02:00
Joakim Nohlgård
9adeaf0942
cpu/sam0: cpuid: Refactor for clarity
2017-04-05 09:03:49 +02:00
Martine Lenders
577048db3a
Merge pull request #6687 from dylad/fix_saml21_spi
...
SAML: Fix SPI SERCOM ID calculation
2017-04-03 20:24:30 +02:00
Hauke Petersen
5c7ed2228d
pm_layerd: fix initial value for PM_BLOCKER_INITIAL
...
the current value was a debugging left-over and should
actually be 0.
2017-03-28 19:32:32 +02:00
dylad
c24c9390e5
cpu/sam0_common/include: fix SERCOM ID calculation for SAML family
...
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2017-03-22 21:08:41 +01:00
Hauke Petersen
37d4f44379
cpus: mv vendor headers to include/vendor/.
2017-03-07 08:55:15 +01:00
Hauke Petersen
ea07a6817c
cpu/sam0+boards: adapted to new SPI API
...
- adapted the SPI driver
- merged SPI driver for samr21 and saml21
- adapted all boards using the CPU
2017-01-25 16:46:45 +01:00
245f60edfa
cpu: fix typo in author email
2017-01-19 21:45:23 +01:00
Kees Bakker
2cbd3c4819
cpu/sam21:i2c: function _start was declared inline, but definition not
2017-01-18 21:30:13 +01:00
Kees Bakker
d509221e77
cpu/samd21:i2c: increase timeout in _start to facilitate SHT2x hold
2017-01-18 21:30:13 +01:00
Kees Bakker
bf4741d0d7
cpu/sam21_common:i2c: refactor a function to wait for response
2017-01-18 21:30:13 +01:00
Kees Bakker
8ca8640060
cpu/sam21_common:i2c: uncrustify
2017-01-18 21:30:13 +01:00
Antonio Galea
ff8ed15aca
updated list of saml21 variants as defined in Atmel ASF v3.33.0
2017-01-09 18:29:32 +01:00
Antonio Galea
610767cb54
remove blank line at EOF
2017-01-09 17:32:50 +01:00
Antonio Galea
fa1e8fcfc9
saml21 cmsis includes: fix whitespace
2017-01-09 16:13:17 +01:00
Antonio Galea
e936177646
SAML21: typo in README
2016-12-19 15:20:39 +01:00
Antonio Galea
eb1d267975
SAML21: updated CMSIS files to ASF XDK 3.33.0
2016-12-19 13:48:43 +01:00
Antonio Galea
11b6f47502
saml21: add README stating origin for SAML21 CMSIS includes
2016-12-19 13:30:01 +01:00
Hauke Petersen
fcb1e68732
cpu/sam0: renamed sam21_common to sam0_common
2016-12-15 11:47:03 +01:00