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

2991 Commits

Author SHA1 Message Date
Marian Buschsieweke
92ae260617
Merge pull request #14778 from benpicco/sys/luid_netdev
sys/luid: add luid_netdev_get_eui48() & luid_netdev_get_eui64()
2020-08-21 21:30:14 +02:00
Benjamin Valentin
9823801cf6 drivers/at86rf215: use netdev_ieee802154_setup() 2020-08-21 15:33:19 +02:00
Benjamin Valentin
d29397cfd8 netdev_ieee802154: add netdev_ieee802154_setup() 2020-08-21 15:33:19 +02:00
6199ada6b5
drivers/sx127x: migrate to ztimer 2020-08-20 13:41:32 +02:00
Benjamin Valentin
02f37b998a drivers/at24cxxx: export page-wise write function
Export the _write_page() function so it can be used by the MTD subsystem.
2020-08-18 17:25:40 +02:00
Benjamin Valentin
7c8fe862ce drivers/at25xxx: export page-wise write function
Export the _write_page() function so it can be used by the MTD subsystem.
2020-08-18 17:25:40 +02:00
Benjamin Valentin
68a47b63e3 drivers/mtd_spi_nor: implement mtd_spi_nor_write_page() 2020-08-18 17:25:39 +02:00
Benjamin Valentin
7d291b5707 drivers/mtd_sdard: implement page-wise read() and write()
SD cards are usually larger than 4 GiB, so using 32 bit addressing will
break once they are filled to a certain extend.

Implement read_page() and write_page() which at a page size of 512
should work for SD cards of up to 2 TiB.

The read() and write() functions will ignore any offset that is not aligned
with the page boundary, so do the same for the new functions, but at least
report an error.
2020-08-18 17:25:39 +02:00
Benjamin Valentin
4034f96169 mtd: add page addressed operations
Currently read(), write() and erase() all use 32 bit addressing.
This is a problem when writing to media > 4 GiB, e.g. SD cards.

The current implementation would wrap around after 4 GiB and corrupt data.

To avoid this, add functions to the MTD subsystem that allow for page-wise
addressing. This is how most of the underling storage drivers and the
file-systems above work anyway.

In the future we should then deprecate the 32-bit functions if all drivers
are converted.
2020-08-18 17:25:39 +02:00
Benjamin Valentin
1582b105d3 drivers/at86rf2xx: fix typo 2020-08-17 22:53:51 +02:00
Benjamin Valentin
decadc41a0 drivers/dose: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
4f19b54b7b drivers/at86rf215: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
53eedc283b drivers/at86rf2xx: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
7ceb3f0a68 netdev: add netdev_register() to keep track if netdev IDs
It is desireable to have a way to identify network devices.
This should be independent from the type of netdev, so a common identifier is needed.

Base this on the driver ID and the index in the configuration struct.
This way we achive unique IDs that stay consistent for any firmware flashed on a board.
2020-08-17 22:50:18 +02:00
benpicco
22d3bf7c51
Merge pull request #14594 from maribu/stm32-eth-cleanup
cpu/stm32: Clean up / fix periph_eth
2020-08-17 21:16:27 +02:00
Marian Buschsieweke
8d8af31e39
driver/stm32_eth: Integrate into periph_eth
The stm32_eth driver was build on top of the internal API periph_eth, which
was unused anywhere. (Additionally, with two obscure exceptions, no functions
where declared in headers, making them pretty hard to use anyway.)

The separation of the driver into two layers incurs overhead, but does not
result in cleaner structure or reuse of code. Thus, this artificial separation
was dropped.
2020-08-17 20:29:33 +02:00
Marian Buschsieweke
28ed07d6e3
cpu/stm32/periph_eth: zero-copy TX (-6 KiB RAM)
The Ethernet DMA is capable of collecting a frame from multiple chunks, just
like the send function of the netdev interface passes. The send function was
rewritten to just set up the Ethernet DMA up to collect the outgoing frame
while sending. As a result, the send function blocks until the frame is
sent to keep control over the buffers.

This frees 6 KiB of RAM previously used for TX buffers.
2020-08-17 20:29:33 +02:00
Marian Buschsieweke
932c311ee2
cpu/stm32/periph_eth: Fix RX logic
If any incoming frame is bigger than a single DMA buffer, the Ethernet DMA will
split the content and use multiple DMA buffers instead. But only the DMA
descriptor of the last Ethernet frame segment will contain the frame length.

Previously, the frame length calculation, reassembly of the frame, and the
freeing of DMA descriptors was completely broken and only worked in case the
received frame was small enough to fit into one DMA buffer. This is now fixed,
so that smaller DMA buffers can safely be used now.

Additionally the interface was simplified: Previously two receive flavors were
implemented, with only one ever being used. None of those function was
public due to missing declarations in headers. The unused interface was
dropped and the remaining was streamlined to better fit the use case.
2020-08-17 20:28:49 +02:00
Cenk Gündoğan
f64511ddb5
Merge pull request #14626 from leandrolanzieri/pr/kconfig/test_modules_kconfig
kconfig: introduce migration test in CI
2020-08-13 14:11:00 +02:00
fabian18
1fca10c486 drivers/at86rf2xx: SPI AES security module 2020-08-12 17:18:00 +02:00
Nishchay-sopho
3245dee8d8 drivers/sps30: Update units of measurement 2020-08-12 12:50:35 +02:00
Leandro Lanzieri
14499e3b7e
drivers/periph_common: Add modules to Kconfig 2020-08-12 12:22:40 +02:00
Leandro Lanzieri
4ad2180f81
kconfig: Add default modules' symbols 2020-08-12 12:22:38 +02:00
Francisco
ad3568be87
Merge pull request #14712 from benpicco/gpio_init_int-clarify
periph/gpio: clarify behavior of gpio_irq_enable()
2020-08-11 11:30:05 +02:00
Benjamin Valentin
7543e714c1 drivers/periph_common: RTC: move RIOT_EPOCH to header, document it. 2020-08-07 13:22:19 +02:00
Benjamin Valentin
8c95198cbb periph/gpio: clarify behavior of gpio_irq_enable()
What happens with events that occured after `gpio_irq_disable()` is
currently not defined.
If they are not cleared, they will generate an interrupt on `gpio_irq_enable()`.

This does not seem like the intended behavior, so make the documentation more
explicit.
2020-08-05 17:41:27 +02:00
d8794d7c5a drivers/cc2420: fix bogus cc2420_set_state(dev, CC2420_GOTO_RX)
It doesn't compile, compiler complains that the enum type of
CC2420_GOTO_RX cannot be converted to netopt_state_t as required by the
function.
The numerical value of CC2420_GOTO_RX would be NETOPT_STATE_IDLE (2), which
makes sense as it puts the device into RX mode.
2020-08-04 13:56:49 +02:00
José Alamos
7967066f51
Merge pull request #14657 from maribu/netdev_doc
drivers/net: Fix netdev_driver_t doc
2020-08-04 10:49:24 +02:00
Marian Buschsieweke
f48147b585
Merge pull request #14663 from benpicco/native-fixes
treewide: compile fixes for native
2020-07-31 14:57:41 +02:00
Benjamin Valentin
492283898e pkg/driver_atwinc15x0: don't be pedantic 2020-07-31 13:38:03 +02:00
Benjamin Valentin
aa0e5e7afa drivers/cc110x: replace binary constants and use unsigned char
binary constants are a GCC extension
2020-07-31 13:38:03 +02:00
Benjamin Valentin
110609195f drivers/encx24j600: use unsigned char 2020-07-31 13:38:03 +02:00
Benjamin Valentin
2e34298265 drivers/nrf24l01p: use unsigned char 2020-07-31 13:38:03 +02:00
Benjamin Valentin
a81c0a544c drivers/kw2xrf: use unsigned char 2020-07-31 13:38:03 +02:00
benpicco
7e4b3d0f40
Merge pull request #14653 from Nishchay-sopho/drivers/sdp3x_#14603
driver/sdp3x: Resolved irq pin code used even if irq pin not connected
2020-07-31 01:22:02 +02:00
Marian Buschsieweke
86513dc97a
drivers/net: Fix netdev_driver_t doc
- Fix indent
- Use @reval instead of @return when referring to a single return value
- Use term "frame" instead of "packet"
2020-07-30 20:22:17 +02:00
nagrawal
7cc4f2b79b driver/sdp3x: Resolved irq pin code used even if irq pin not connected
irq_pin check when multiple sensors connected with or without irq pin
2020-07-30 16:35:35 +02:00
f7882f4f2a
drivers/stmpe811: return touch_dev position relative to top left corner 2020-07-29 14:49:17 +02:00
4b4e9830b0
drivers/touch_dev: clarify touch position coordinates origin 2020-07-29 14:49:17 +02:00
388bbfa008
drivers: add generic screen wrapper around display and touch devices 2020-07-29 14:30:03 +02:00
benpicco
38f62f9678
Merge pull request #14643 from Nishchay-sopho/drivers/sdp3x_#14601
driver/sdp3x: Resolved init condition fail
2020-07-29 13:08:57 +02:00
Leandro Lanzieri
224e2c977d
Merge pull request #14509 from jia200x/pr/lora_implicit_mode
sx127x: add support for implicit header mode
2020-07-29 12:52:00 +02:00
Jose Alamos
84eb2dc30c sx127x: implement NETOPT_PDU_SIZE 2020-07-29 11:57:52 +02:00
nagrawal
cd46360eab driver/sdp3x: Resolved init fail error 2020-07-28 19:35:35 +02:00
benpicco
7acdecb1df
Merge pull request #14447 from Nishchay-sopho/drivers/scd30
driver/scd30 : Add driver for scd30 sensor
2020-07-28 12:41:58 +02:00
benpicco
ecab75b529
Merge pull request #13632 from benpicco/cpu/sam0_common/uart-deinit
drivers/periph/uart: add periph_uart_reconfigure feature & implementation for sam0
2020-07-28 11:12:19 +02:00
nagrawal
900e4b61dc driver/scd30: Add driver for Sensirion SCD30
Created tests for Sensirion scd30 driver

Moved Makefile.dep and Makefile.include as per new spec
2020-07-28 10:38:01 +02:00
Benjamin Valentin
3eb54179ae drivers/periph/uart: add periph_uart_reconfigure feature 2020-07-28 10:10:15 +02:00
Benjamin Valentin
7af8a3e2d3 drivers/periph/timer: add note about TIM_FLAG_RESET_ON_MATCH 2020-07-27 17:17:08 +02:00
Marian Buschsieweke
a7cf50eb03
drivers/stm32_eth: Code style fixes
- Drop incorrect use of `volatile`
- Fix missing spaces and indention
2020-07-24 11:32:20 +02:00
Francisco
d187e83221
Merge pull request #14570 from fjmolinas/pr_fix_mock_rtt_defs
drivers/rtt: override RTT_MAX_VALUE and RTT_FREQUENCY for mock
2020-07-22 16:33:29 +02:00
Leandro Lanzieri
25723267f7
Merge pull request #14567 from akshaim/Kconfig_l2filter
net/l2filter : Expose configurations to Kconfig
2020-07-22 15:11:24 +02:00
37b096562a
drivers/stmpe811: ensure fifo is not empty before reading touch position 2020-07-22 09:59:18 +02:00
Benjamin Valentin
caead7bb75
drivers/stmpe811: always clear interrupt state 2020-07-22 09:59:11 +02:00
Francisco Molina
9dde6ec53d
drivers/rtt: overrite RTT_MAX_VALUE and RTT_FREQUENCY for mock
mock_rtt relies on setting mock values for RTT_MAX_VALUE and
RTT_FREQUENCY. Platforms with a rtt will already define these
values which leads to mock_rtt working with different values than
rtt_rtc.

This commit changes the ifdef logic so that when using mock_rtt
RTT_MAX_VALUE and RTT_FREQUENCY are redefined.
2020-07-22 08:52:54 +02:00
Benjamin Valentin
cbae0186ca
drivers/stmpe811: fix interrupt polarity & type
The Interrupt on the stmpe811 is generated on the falling edge.
By observing the rising edge, we will only get an event if the
interrupt gets cleared.

Also configure the interrupt to be edge triggered instead of
level triggered.
2020-07-21 21:22:42 +02:00
Akshai M
60170971bd net/l2filter : Update documentation 2020-07-22 00:26:09 +05:30
Akshai M
caab4cd8c5 net/l2filter : Move 'L2FILTER_LISTSIZE' to 'CONFIG_' 2020-07-22 00:26:09 +05:30
0c86b72ed6
drivers/Makefile.dep: remove global dependency resolution
Only keep the dependency resolution for drivers declared as pseudo-modules
2020-07-20 14:32:16 +02:00
304bce3724
drivers: configure per driver dependency resolution 2020-07-20 14:32:16 +02:00
f013be5507
Merge pull request #14497 from aabadie/pr/drivers/makefile_dep_cleanup
drivers/Makefile.dep: remove inappropriate use of FEATURES_PROVIDED for rtt_rtc
2020-07-20 13:04:59 +02:00
Martine Lenders
e5d692babe
Merge pull request #14493 from miri64/netopt/cleanup/rm-LINK_CONNECTED
netopt: remove deprecated alias NETOPT_LINK_CONNECTED
2020-07-17 22:35:46 +02:00
87d8124d88
Merge pull request #14536 from HendrikVE/pca9633_fix_copy_pasta
drivers/pca9633: fix wrong enum name
2020-07-17 21:03:25 +02:00
5c3c22f31c
Merge pull request #14489 from benpicco/libc_conflict
drivers/tests: rename private read() and sleep() functions to avoid conflicts with libc
2020-07-17 20:44:02 +02:00
Hendrik van Essen
9d068d582a drivers/pca9633: make enum anonymous 2020-07-17 15:05:32 +02:00
0d9aeba804
Makefile.include: don't include drivers/Makefile.include anymore 2020-07-15 20:36:27 +02:00
490126cfa0
drivers: move USEMODULE_INCLUDES in each driver directories 2020-07-15 20:36:27 +02:00
Benjamin Valentin
b080d3da7a drivers/soft_uart: implement inverted TX & RX
In the current implementation, RX is flank based, so it's entirely level
agnostic.
I still chose to include a SOFT_UART_FLAG_INVERT_RX flag for symmetry and
to allow for a possible future, sampling based implementation.
2020-07-14 23:04:36 +02:00
Benjamin Valentin
96c67b0fa5 drivers/soft_uart: add software based UART implementation 2020-07-14 22:51:59 +02:00
1cf8f0dc45
drivers/Makefile.dep: remove useless FEATURES_PROVIDED for rtc_rtt 2020-07-10 18:12:31 +02:00
Benjamin Valentin
f4e9ede7bc drivers/sps30: fix conflict with libc function name 2020-07-10 17:31:29 +02:00
Benjamin Valentin
5f4838e716 drivers/sht3x: fix conflict with libc function name 2020-07-10 17:31:29 +02:00
Benjamin Valentin
b9ed7e9ffd drivers/bme680: fix conflict with libc function name 2020-07-10 17:31:29 +02:00
Martine S. Lenders
8dba9a9188
netopt: remove deprecated alias NETOPT_LINK_CONNECTED 2020-07-10 16:18:13 +02:00
Daniel Lockau
0d3dc120ef drivers/sdcard_spi: remove auto-init 2020-07-09 08:50:53 +02:00
Leandro Lanzieri
a320181f55
drivers/kw2xrf: Enable TX End IRQ in netdev init
The driver needs this event but gnrc_netif_ieee802154 only enables the
interrupt when MODULE_NETSTATS_L2 is active.
2020-07-06 14:21:58 +02:00
Benjamin Valentin
b5d711da25 drivers/sdcard_spi: document undocumented defines
Murdock enforces these now, so add documentation to make it happy.
2020-07-02 16:33:09 +02:00
Daniel Lockau
e7fbc174bc drivers/sdcard_spi: make retries configurable
- convert count based retry implementation to timeout based
  implementation
- allow user definition of retry parameters
2020-07-02 16:33:09 +02:00
Francisco
325b7a8d8e
Merge pull request #13631 from benpicco/cpu/sam0_common/spi-deinit
drivers/periph/spi: add periph_spi_reconfigure feature & implementation for sam0
2020-06-30 15:34:53 +02:00
Leandro Lanzieri
955efd85ff
drivers/at: Add at_urc_isr module to process URCs upon arrival 2020-06-30 11:41:13 +02:00
benpicco
a92dac5701
Merge pull request #14329 from Nishchay-sopho/drivers/sdp3x
driver/sdp3x : Add driver for sdp3x sensor
2020-06-29 21:16:39 +02:00
Dirk Ehmen
05980765f2 drivers/sdp3x: Driver for sensirion sdp3x sensor 2020-06-29 20:50:41 +02:00
benpicco
f372beb405
Merge pull request #12363 from maribu/dfplayer
drivers/dfplayer: New driver for the DFPlayer Mini MP3 player
2020-06-28 23:24:36 +02:00
Marian Buschsieweke
2f858a2c0a
sys/shell: Added shell command "dfplayer"
Added a shell command that is added if the modules shell_commands and dfplayer
are both used. It allows to control the DFPlayer Mini MP3 player.
2020-06-28 21:06:49 +02:00
Marian Buschsieweke
82bfb66cb8
drivers: Added driver for the DFPlayer MP3 player 2020-06-28 21:06:43 +02:00
Marian Buschsieweke
fa5fa425a1
drivers: Added doc group drivers_multimedia 2020-06-26 13:09:33 +02:00
Gunar Schorcht
660a852935 drivers: add netdev driver for ATWINC15x0 WiFi module 2020-06-26 12:33:38 +02:00
Francisco
a46adc3d44
Merge pull request #13742 from benemorius/pr/kinetis-pm_layered
cpu/kinetis: implement power modes for pm_layered
2020-06-26 10:51:12 +02:00
benpicco
3665e40726
Merge pull request #14242 from HendrikVE/pr/driver/pca9633
driver/pca9633: add new driver
2020-06-26 00:44:24 +02:00
Thomas Stilwell
b8ce88e9a7 drivers/kw41zrf: remove duplicate PM_UN/BLOCK defines 2020-06-25 17:34:39 -05:00
Hendrik van Essen
1430ddca55 driver/pca9633: add new driver 2020-06-25 22:31:15 +02:00
Martine S. Lenders
14afbe1030
xbee: remove NETOPT_IPV6_IID support
This option is handled in the `gnrc_netif`-layer without any access to
the driver's option since 7ae90564d9.
2020-06-25 13:41:20 +02:00
Martine S. Lenders
7777c172dd
netdev_ieee802154: remove NETOPT_IPV6_IID support
This option is handled in the `gnrc_netif`-layer without any access to
the driver's option since 7ae90564d9.
2020-06-25 13:40:48 +02:00
Martine S. Lenders
3a60a78606
netdev_eth: remove NETOPT_IPV6_IID support
This option is handled in the `gnrc_netif`-layer without any access to
the driver's option since 7ae90564d9.
2020-06-25 13:40:30 +02:00
Martine S. Lenders
4c01c716fc
cc110x: remove NETOPT_IPV6_IID support
This option is handled in the `gnrc_netif`-layer without any access to
the driver's option since 7ae90564d9.
2020-06-25 13:40:30 +02:00
benpicco
b13085defb
Merge pull request #14110 from fabian18/mtd_at24cxxx
drivers/at24cxxx: MTD wrapper for at24cxxx
2020-06-24 18:46:36 +02:00
Benjamin Valentin
f3e28c0350 drivers/sdcard_spi: make use of spi_deinit_pins()
Make sure to de-init the SPI bus before using the pins as GPIO.

Once all archs implement periph_spi_reconfigure, we can drop mosi,
miso and clk pins from the `card->params` and just use the bus
getter functions.
2020-06-21 21:21:39 +02:00
Benjamin Valentin
896fcd43b0 drivers/periph/spi: add periph_spi_reconfigure feature 2020-06-21 21:19:17 +02:00
Marian Buschsieweke
f3af071b19
Merge pull request #11432 from maribu/pulse_counter_c11_atomics
drivers/pulse_counter: Use C11 atomics & bugfix
2020-06-17 17:03:48 +02:00
Akshai M
e672ca2010 drivers/at : Expose to Kconfig
Expose configurations to Kconfig:
Model choice for CONFIG_AT_SEND_EOL
Allow value to be configured as exponent for AT_BUF_SIZE
2020-06-17 14:52:21 +05:30
Akshai M
f9741b3ed5 drivers/at : Add CONFIG_
Add CONFIG_ prefix to AT_SEND_EOL,  AT_SEND_SKIP_ECHO,
CONFIG_AT_RECV_OK, CONFIG_AT_RECV_ERROR
2020-06-17 14:52:21 +05:30
Akshai M
921badbf38 drivers/at : Inverse Logic
Inverse logic for AT_SEND_ECHO
2020-06-17 14:52:21 +05:30
ebc147d058 drivers/mhz19: initial support 2020-06-17 08:41:41 +02:00
80023c408a
Merge pull request #14259 from fjmolinas/pr_rtt_min_offset
drivers/periph/rtt: introduce RTT_MIN_OFFSET
2020-06-16 16:22:04 +02:00
Benjamin Valentin
14bb15d91f drivers/at86rf215: make reset pulse width configurable
Some hardware designers like to include filtering capacitors into reset
lines in order to protect against ESD or other pulses.

This increases the raise time of the reset signal. To still reach the
required 16 µs reset pulse width, we thus have to increase the reset pulse
width via board config.
2020-06-11 15:05:21 +02:00
Francisco Molina
8d329942df
drivers/periph/rtt: introduce RTT_MIN_OFFSET 2020-06-11 09:30:25 +02:00
93fbecf965
Merge pull request #14084 from benpicco/driver/mtd_spi_nor-jedec_size
drivers/mtd_spi_nor: derive capacity from JEDEC ID
2020-06-10 11:17:43 +02:00
Leandro Lanzieri
ab996823ee
Merge pull request #14197 from benpicco/driver/at86rf215_cleanup
driver/at86rf215: cleanup
2020-06-09 18:38:57 +02:00
Benjamin Valentin
50914cbf96 drivers/mtd_spi_nor: move printing of flash debug info
Move printing the flash information after deriving the capacity.
2020-06-09 16:09:40 +02:00
Benjamin Valentin
585928f23d drivers/mtd_spi_nor: derive capacity from JEDEC ID
Most manufacturers (Spansion, Micron & ISSI) just encode the capacity
in the second ID byte.

Old Adesto (Atmel) chips use a different scheme here.
2020-06-09 16:09:40 +02:00
Benjamin Valentin
93236e0f2c drivers/at86rf215: add modulation config to KConfig 2020-06-09 11:48:59 +02:00
Benjamin Valentin
6a2d9f9762 drivers/at86rf215: make default O-QPSK rate configutable 2020-06-09 11:48:59 +02:00
Benjamin Valentin
1ab35b16ae drivers/at86rf215: include board.h
Board-specific configuration is typically defined in board.h, so
include it here so it gets applied.
2020-06-09 11:48:59 +02:00
Benjamin Valentin
feba1d1bcb drivers/at86rf215: don't compile modulations that are not selected
Don't compile in code for MR-OFDM, etc if `netdev_ieee802154_mr_oqpsk` is
disabled.
2020-06-09 11:48:59 +02:00
Benjamin Valentin
4e9420bffc drivers/at86rf215: prefix configuration defines with CONFIG_ 2020-06-09 11:48:59 +02:00
f585b53d03
drivers/saul/auto_init: remove useless preprocessor directives
The files are now built only when the corresponding module is used
2020-06-08 11:10:48 +02:00
e9a23325e1
drivers/saul/init_devs: only build files when related module is used 2020-06-08 11:10:39 +02:00
984c8eed49
drivers/saul: rename some auto_init files
In order to name them the same as the module they are related to
2020-06-08 11:10:39 +02:00
benpicco
f08a00312b
Merge pull request #14194 from ThxAndBye/master
drivers/lis3dh: fix mask in lis3dh_set_aux_adc()
2020-06-04 13:12:22 +02:00
Marian Buschsieweke
7862baf348
drivers/at86rf215: Fix documentation
- Balance Doxygen groups
- Move drivers_at86rf215_oqpsk into drivers_at86rf215
2020-06-03 21:09:50 +02:00
benpicco
3a1ee4983c
Merge pull request #14010 from benpicco/at86rf215-mr-ofdm
drivers/at86rf215: implement MR-OFDM
2020-06-03 16:39:04 +02:00
Benjamin Valentin
164e239160 at86rf215: remove obsolete at86rf215_switch_mode() 2020-06-03 15:58:50 +02:00
Benjamin Valentin
cc5fbdf9f8 drivers/at86rf215: implement MR-OFDM 2020-06-03 15:58:50 +02:00
Thx And Bye
9cd31ce17d drivers/lis3dh: fix mask in lis3dh_set_aux_adc() 2020-06-03 12:09:40 +02:00
Kevin "Tristate Tom" Weiss
972d9441ce
Merge pull request #13404 from leandrolanzieri/pr/boards/samr21-xpro/features_kconfig
boards/samr21-xpro: Model features in Kconfig
2020-06-03 09:39:41 +02:00
Leandro Lanzieri
16c6ecf28d
Merge pull request #14046 from benpicco/at86rf2xx-phy_modes
drivers/at86rf2xx: add support for high data rates
2020-06-03 08:35:30 +02:00
Leandro Lanzieri
67a43e0ada
drivers/wdt/kconfig: Rename HAS_WDT_WARNING_PERIOD
The symbol now is HAS_PERIPH_WDT_WARNING_PERIOD.
2020-06-02 17:43:19 +02:00
José Alamos
892032907f
Merge pull request #14187 from leandrolanzieri/pr/periph/wdt_add_warning_period_feature
drivers/wdt: Add feature to indicate a configurable warning period
2020-06-02 17:18:40 +02:00
Leandro Lanzieri
48759eccdc
drivers/wdt: Add feature to indicate a configurable warning period
This adds the feature `periph_wdt_warning_period` that indicates that a
platform WDT driver implementation supports a configurable
CONFIG_WDT_WARNING_PERIOD.
2020-06-02 12:54:25 +02:00
Thomas Stilwell
f23275af29 drivers/kw41zrf: fix wrong endianness in short_addr get/set 2020-06-01 22:22:07 -05:00
Benjamin Valentin
cd107be976 drivers/periph/timer: add timer_set_periodic() 2020-05-28 17:37:41 +02:00
eee5bf178d
Merge pull request #13993 from benpicco/examples/filesystem-fatfs
examples/filesystem: add support for fatfs on SD card
2020-05-26 19:20:47 +02:00
Benjamin Valentin
616ebf9cfb drivers/edbg_eui: add driver to get MAC address from Atmel EDBG
The EDBG debugger on the `samr21-xpro` contains a unique 64 bit address
intended to be used as a MAC address for the internal radio.

This adds a driver to read that EUI-64 from the debugger, it should match
with the MAC address printed on the label on the board.
2020-05-26 10:44:11 +02:00
Akshai M
5699b2469b drivers/rn2xx3 : Expose to Kconfig
Expose configurations to Kconfig

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-05-22 15:52:03 +05:30
Akshai M
7d679c7f0f drivers/rn2xx3.h : Add CONFIG_
Add CONFIG_ prefix to RN2XX3_DEFAULT_SLEEP
2020-05-22 15:52:03 +05:30
fabian18
9ecd836443 drivers/at24cxxx: add MTD wrapper for at24cxxx EEPROMs 2020-05-20 19:20:05 +02:00
Akshai M
74a7bb230b drivers/tmp00x : Expose to Kconfig
Expose configurations to Kconfig

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-05-20 19:09:48 +05:30
Akshai M
414fae5b0c drivers/tmp00x : Model as bool
Model CONFIG_TMP00X_USE_LOW_POWER and CONFIG_TMP00X_USE_RAW_VALUES
as bool
2020-05-20 19:09:48 +05:30
Akshai M
94d6b898fc drivers/tmp00x : Add CONFIG_
Add CONFIG_ prefix to compile configurations
2020-05-20 19:09:48 +05:30
Benjamin Valentin
3b2cfa6478 drivers/sdcard_spi: add auto_init_storage to DEFAULT_MODULE
sdcard_spi is the only driver in auto_init_storage and was previously
pulled in by fatsfs (because it's used on SD cards)

It does however make much more sense if the SD card driver pulls that in
so other file systems can be used on SD card too.
2020-05-20 11:57:05 +02:00
Leandro Lanzieri
391f49fade
Merge pull request #14047 from benpicco/drivers/mrf24j40-turbo
drivers/mrf24j40: add Turbo Mode
2020-05-19 18:00:05 +02:00
benpicco
1776e54d80
Merge pull request #13604 from gschorcht/drivers/sx127x/dio_handling
drivers/sx127x: changes in DIO handling
2020-05-16 19:12:26 +02:00
Marian Buschsieweke
568404134a
drivers/periph/cpuid: Fix typo in doc 2020-05-14 16:53:05 +02:00
673ba21b9e
Merge pull request #14045 from benpicco/mtd_mapper_sectors
mtd_mapper: count offset in sectors
2020-05-12 13:47:12 +02:00
Benjamin Valentin
81b07895af mtd_mapper: count offset in sectors
The offset of MTD regions must be aligned with erase sectors.
So in order not to waste address space, avoid misconfiguration and
eventually support storage media > 4 GiB, give the offset in sectors
instead of bytes.
2020-05-12 12:02:05 +02:00
4042fa2ddf
Merge pull request #13944 from benpicco/drivers/ethos-luid
drivers/ethos: use luid_get_eui48()
2020-05-12 10:47:06 +02:00
Benjamin Valentin
baeb5134b7 drivers/mrf24j40: add Turbo Mode
MRF24J40 supports a proprietary turbo mode with a data rate of 625 kbit/s
instead of the standard 250 kbit/s.

It can be enabled through

    ifconfig 7 set high_rate 1
2020-05-09 16:10:46 +02:00
Benjamin Valentin
ac040c6baf drivers/at86rf2xx: add support for high data rates
AT86RF2xx supports high data rates in O-QPSK mode.
This is a proprietary feature, so data rates > 0 are only supported by
other AT86RF2xx devices.

 high_rate 0:   250 kbit/s (IEEE mode)
 high_rate 1:   500 kbit/s
 high_rate 2:  1000 kbit/s (compatible with at86rf215)
 high_rate 3:  2000 kbit/s
2020-05-09 01:24:08 +02:00
Akshai M
db96ebcbe1 drivers/isl29020 : Expose to Kconfig
Expose configurations to Kconfig.
2020-05-08 18:07:27 +05:30
Akshai M
f01bbd3c58 drivers/isl29020 : Make ADDR configurable
Make ISL29020_PARAM_ADDR configurable
2020-05-08 18:07:27 +05:30
Akshai M
38687e63bb drivers/isl29020 : Add CONFIG_
Add CONFIG_ prefix to ISL29020_DEFAULT_ADDRESS
2020-05-08 18:07:27 +05:30
Akshai M
b4a23b8899 drivers/tcs37727 : Expose to Kconfig
Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-05-07 23:55:32 +05:30
Akshai M
04bdd405d2 drivers/tcs37727 : Add CONFIG_
Add CONFIG_ prefix to TCS37727_ATIME_DEFAULT and update
documentation for doxygen.
2020-05-07 23:20:24 +05:30
fabian18
50d408b202 Revert "drivers/at25xxx: return read/written bytes to match MTD API"
This reverts commit 8a2a936726.
2020-05-06 20:24:27 +02:00
fabian18
a3a1c160ee mtd: Change API to return 0 on success
Returning the number of bytes written/read could return a negative integer
because a uint32_t is expected for the length in read()/write() operations.
2020-05-06 20:24:27 +02:00
Vincent Dupont
c077c07017 drivers/mrd_spi_nor: fix read spanning pages 2020-05-06 16:36:29 +02:00
benpicco
8e11acc9f8
Merge pull request #13877 from ML-PA-Consulting-GmbH/feat/20200409__add_mtd_spi_eeprom
drivers/mtd_spi_eeprom: add MTD wrapper for AT25XXX EEPROMs
2020-05-06 15:56:34 +02:00
Francisco
cea0d1c532
Merge pull request #13421 from benpicco/cpu/sam0_common/i2c-deinit
drivers/periph/i2c: add periph_i2c_reconfigure feature & implementation for sam0
2020-05-05 19:09:47 +02:00
Benjamin Valentin
21958ff531 drivers/periph/i2c: add periph_i2c_reconfigure feature
It is often desireable to re-configure the pins of a bus back to GPIO mode,
either to save power when an external peripheral is turned off and current
would leak, or because a device may need a non-standard in-band signal to
be generated on the bus lines.

To serve those use cases, this patch introduces four new functions to the
I2C API:

 - `i2c_init_pins()`    equivalent to spi_init_pins(), restores I2C pin configuration

 - `i2c_deinit_pins()`  to switch the configuration of the I2C pins back to GPIO
                        mode and block access to the bus.

 - `i2c_pin_sda()`      to get the data pin for a given bus

 - `i2c_pin_scl()`      to get the clock pin for a given bus

Since it's unreasonable to expect having implementations for all platforms
already, those functions are only availiable when the periph_i2c_reconfigure
feature is availiable.

Applications should use FEATURES_REQUIRED += periph_i2c_reconfigure or
FEATURES_OPTIONAL if they want to make use of those functions.
2020-05-05 16:12:19 +02:00
Johannes Koster
177a653bd1 drivers/at25xxx: add MTD wrapper for AT25XXX EEPROMs
drivers/at25xxx: add mtd_wrapper as submodule

tests: add mtd_at25xxx test module for mtd wrapper

drivers/Makefile.dep: add at25xxx dep for mtd_at25xxx module
2020-05-05 13:37:51 +01:00
Akshai M
21dd8f7555 drivers/l3g4200d : Expose to Kconfig
Expose configurations to Kconfig.
2020-05-05 13:19:49 +05:30
Akshai M
5782c3bb0d drivers/l3g4200d : Make ADR configurable
Make L3G4200D_PARAM_ADDR configurable
2020-05-05 13:18:34 +05:30
Akshai M
ebbfcfb56b drivers/l3g4200d : Add CONFIG_
Add CONFIG_ prefix to L3G4200D_DEFAULT_ADDRESS
2020-05-05 13:18:34 +05:30
Leandro Lanzieri
28eedd6459
Merge pull request #14000 from akshaim/Kconfig_lpsxxx
drivers/lpsxxx : Expose Configurations to Kconfig
2020-05-05 09:09:30 +02:00
Leandro Lanzieri
1fe30c1aca
Merge pull request #13932 from akshaim/Kconfig_mtd_sdcard_1
drivers/mtd_sdcard : Expose Configurations to Kconfig
2020-05-04 21:14:59 +02:00
Akshai M
9737db935d drivers/mtd_sdcard : Expose to kconfig
Expose Configurations to Kconfig
2020-05-04 22:12:13 +05:30
Akshai M
854145c884 drivers/mtd_sdard : Add MACRO and CONFIG_
Replace MTD_SDCARD_SKIP_ERASE with MTD_SDCARD_ERASE
Add CONFIG_ Prefix to MTD_SDCARD_ERASE
Model CONFIG_MTD_SDCARD_ERASE as bool
2020-05-04 22:12:13 +05:30
Akshai M
a084383baf drivers/lpsxxx : Expose to Kconfig
Expose configurations to Kconfig and update documentation.
2020-05-04 18:20:56 +05:30
Akshai M
9ef4f30c5e drivers/bmx055 : Expose to Kconfig
Expose configurations to Kconfig
2020-05-04 18:18:00 +05:30
Akshai M
db7ca7eed9 drivers/lpsxxx : Add CONFIG_
Add CONFIG_ prefix to LPSXXX_DEFAULT_ADDRESS
2020-05-04 17:42:04 +05:30
Akshai M
211b86c54d drivers/bmx055 : Add CONFIG_
Add CONFIG_ prefix to compile configurations
2020-05-04 17:40:01 +05:30
Leandro Lanzieri
34120c1a23
drivers/Kconfig: Move Actuator and Sensor menus to root file 2020-04-29 17:15:47 +02:00
Francisco
80b300289d
Merge pull request #13912 from benpicco/at86rf215-mr-qpsk
drivers/at86rf215: implement MR-O-QPSK
2020-04-29 12:44:00 +02:00
Leandro Lanzieri
c8fa7f045b
Merge pull request #13914 from akshaim/Kconfig_fxos8700
drivers/fxos8700 :  Expose Configurations to Kconfig
2020-04-29 11:42:37 +02:00
Akshai M
0bc7952e30 drivers/fxos8700 : Expose to Kconfig
Expose Configurations to Kconfig
2020-04-29 14:32:00 +05:30
Akshai M
e5fe525711 drivers/fxos8700 : Add CONFIG_
Add CONFIG_ Prefix for FXOS8700_USE_ACC_RAW_VALUES and model
it as a bool

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-29 14:32:00 +05:30
Benjamin Valentin
e6d47aa825 drivers/at86rf215: implement MR-O-QPSK 2020-04-29 10:41:37 +02:00
Benjamin Valentin
0cf9f6aa7f drivers/at86rf215: implement at86rf215_get_phy_mode() 2020-04-29 10:41:37 +02:00
Benjamin Valentin
cfc2feca1d ieee802154: return PDU based on PHY mode
IEEE 802.15.4g-2012 specifies a PDU of 2047 for it's PHY modes, so
query the driver for the mode before returning the PDU.

If none of the new modes is used, don't query the driver to not incure
a penalty on existing platforms.
2020-04-29 10:41:37 +02:00
Akshai M
e6924e525d drivers/slipdev : Expose to Kconfig
Expose configurations to Kconfig
2020-04-29 09:42:59 +05:30
Akshai M
b4451ffd43 drivers/slipdev : Add CONFIG_
Add CONFIG_ prefix to SLIPDEV_BUFSIZE
2020-04-29 09:42:10 +05:30
c0f46c06bb
drivers/stmpe811: provide adaption to touch_dev interface 2020-04-28 18:18:01 +02:00
3d557556e0
sys: add interface for generic touch device 2020-04-28 18:17:31 +02:00
Akshai M
817370c46b drivers/sps30 : Expose to Kconfig
Expose configurations to Kconfig
2020-04-28 20:11:11 +05:30
Akshai M
819a36d513 drivers/sps30 : Add CONFIG_
Add CONFIG_ prefix to SPS30_ERROR_RETRY
2020-04-28 20:10:21 +05:30
81c2b08d9b
drivers/disp_dev: use const qualifier 2020-04-28 13:14:52 +02:00
Akshai M
f796664eed drivers/opt3001 : Expose to Kconfig
Expose configurable parameters to Kconfig

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-27 13:59:38 +05:30
Akshai M
abb1477ffe drivers/opt3001 : Define Options
Define choices for macros.
2020-04-27 13:59:37 +05:30
Akshai M
80534dfc36 drivers/opt3001 : Add CONFIG_
Add CONFIG_ prefix to compile time configurations
2020-04-27 13:59:37 +05:30
Akshai M
0277b0facc drivers/pn532 : Expose to Kconfig
Expose configurations to Kconfig
2020-04-25 23:06:07 +05:30
Akshai M
53c988a06c drivers/pn532 : Add CONFIG_
ADD CONFIG_ prefix to PN532_BUFFER_LEN
2020-04-25 22:33:34 +05:30
Benjamin Valentin
d955836187 drivers/ethos: use luid_get_eui48()
Previously the MAC address of the border router was entirely random.
That meant that as a DHCPv6 client it would get a new prefix with every
reboot.

Due to #12210 the nodes will never use the new address.

Fix this by using luid_get_eui48() which will always return the same
address across reboots.

It also makes the code simpler.
2020-04-24 21:18:21 +02:00
Francisco Molina
922b35da2d
drivers/xbee: disable CTS/RTS pin unless periph_uart_hw_fc is used
If usinng an arduino xbee shield then CTS pin will be wired to the
ICSP connector RESET pin.

If also used on an arduino-% board then if xbee is busy sending or
receiving data it will assert CTS and this will trigger a reset on
the board.

To avoid this disable CTS functionality on start up unless hardware
flow control is explicitly requested.
2020-04-24 10:54:36 +02:00
Francisco Molina
0c0f8ec98f
drivers/periph/rtt.h: add RTT_FREQUENCY & RTT_MAX_VALUE doc 2020-04-23 22:11:16 +02:00
Francisco Molina
2604971753
drivers/periph/rtt.h: ensure RTT_MAX_VALUE is set 2020-04-23 19:07:18 +02:00
Leandro Lanzieri
341916cd30
Merge pull request #13915 from akshaim/Kconfig_mag3110
drivers/mag3110 : Expose Configurations to Kconfig
2020-04-23 13:21:34 +02:00
Akshai M
fc3ff2a9d9 drivers/mag3110 : Expose to Kconfig
Expose Configurations to Kconfig

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-23 15:50:26 +05:30
Akshai M
9c052a6288 drivers/mag3110 : Add CONFIG_
Add CONFIG_ Prefix for MAG3110_I2C_ADDRESS
2020-04-23 15:49:55 +05:30
Akshai M
c654b4ea3c drivers/motor_driver : Expose to Kconfig
Expose Configurations to Kconfig

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-23 15:21:17 +05:30
Akshai M
39826d6e5b drivers/motor_driver : Add CONFIG_
Add CONFIG_ Prefix for MOTOR_DRIVER_MAX
2020-04-23 15:21:17 +05:30
Leandro Lanzieri
c2c32a42f5
Merge pull request #13926 from akshaim/Kconfig_mma8x5x
drivers/mma8x5x : Expose Configurations to Kconfig
2020-04-23 09:20:09 +02:00
Akshai M
ec98054bea drivers/mma8x5x : Expose to Kconfig
Expose Configurations to Kconfig
2020-04-22 22:02:34 +05:30
Akshai M
7e3096eae1 drivers/mma8x5x : Add CONFIG_
Add CONFIG_ Prefix for CONFIG_MMA8X5X_I2C_ADDRESS
2020-04-22 21:57:05 +05:30
Leandro Lanzieri
ee7493429b
Merge pull request #13885 from akshaim/Kconfig_at86rf215
drivers/at86rf215 : Expose Configurations to Kconfig
2020-04-22 13:59:29 +02:00
Leandro Lanzieri
7284434656
Merge pull request #13910 from akshaim/Kconfig_dose
drivers/dose.h : Expose Configurations to Kconfig
2020-04-22 12:39:30 +02:00
Akshai M
7b2591ea09 drivers_at86rf215 : Expose to Kconfig
Expose Configurations to Kconfig

Co-Authored-By: benpicco <benpicco@googlemail.com>
Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-22 15:55:21 +05:30
Akshai M
68e2fc5845 drivers/at86rf215 : Add CONFIG
Add CONFIG_ Prefix for configuring AT86RF215_TRIM_VAL
2020-04-22 15:54:33 +05:30
Akshai M
8617991312 drivers/at86rf215 : Add CONFIG_
Add Add CONFIG_ Prefix for AT86RF215_USE_CLOCK_OUTPUT and model
it as a bool

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-22 15:54:33 +05:30
19119f142a
Merge pull request #13558 from fjmolinas/pr_mtd_powerup
drivers/mtd_spi_nor: power up MTD on init
2020-04-21 13:53:07 +02:00
Akshai M
3a65d163f6 drivers/dose : Expose to Kconfig
Expose Configurations to Kconfig

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-21 16:00:25 +05:30
Akshai M
0784190c9c drivers/dose : Add CONFIG_
Add CONFIG_ Prefix for DOSE_TIMEOUT_USEC
2020-04-21 16:00:25 +05:30
Francisco Molina
61eecf6fe0
drivers/mtd_spi_nor: power up MTD on init 2020-04-21 11:09:40 +02:00
Francisco Molina
8a256eba12
drivers/mtd_spi_nor: return error on invalid manuf id 2020-04-21 11:09:40 +02:00
Akshai M
be097f8533 drivers/cc110x : Expose to Kconfig
Expose Configurations to Kconfig
2020-04-17 23:55:07 +05:30
Akshai M
01a8c64e39 drivers/cc110x : Add CONFIG_
Add Add CONFIG_ Prefix for CC110X_DEFAULT_CHANNEL
2020-04-17 23:27:01 +05:30
Leandro Lanzieri
2f75c60527
Merge pull request #13881 from akshaim/kconfig_ads101x
drivers/ads101x : Expose Configurations to Kconfig
2020-04-17 15:39:07 +02:00
Leandro Lanzieri
369eda6bd9
Merge pull request #13831 from akshaim/I2C_Address_Cleanup
I2C Address Cleanup and Documentation
2020-04-17 13:42:35 +02:00
Akshai M
137a1c08b4 drivers/ads101x : Expose to Kconfig
Expose Configurations to Kconfig

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-17 16:43:16 +05:30
Akshai M
b20e408854 drivers/ads101x : Add CONFIG_
Add CONFIG_ Prefix for configuring the Compile time macros
2020-04-17 16:43:16 +05:30
Akshai M
b75fc0cfa6 drivers/include/tcs37727.h : Remove ifndef for I2C
Remove ifndef and better formatting for Doxygen
2020-04-17 15:45:37 +05:30
Akshai M
de5db5c99d drivers/include/mpl3115a2.h : Remove ifndef for I2C 2020-04-17 15:45:37 +05:30
Akshai M
c6f55b6f81 drivers/include/lpsxxx.h : Expose Parameters
Add ifndef and Expose Compile Parameters to Doxyen

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-17 15:45:19 +05:30
Benjamin Valentin
8a2a936726 drivers/at25xxx: return read/written bytes to match MTD API
The MTD API expects read() to return the number of read bytes and
write() to return the number of written bytes.

So change the driver API to match that.
2020-04-17 11:32:06 +02:00
Akshai M
f705b0e5af drivers/include/l3g4200d.h : Expose Parameters
Add ifndef and Expose Compile Parameters to Doxyen
2020-04-17 14:08:39 +05:30
Akshai M
e2b3175a1c drivers/include/isl29020.h : Expose Parameters
Add ifndef and Expose Compile Parameters to Doxyen
2020-04-17 14:07:58 +05:30
Akshai M
6757d97766 drivers/include/hts221.h : Remove ifndef for I2C 2020-04-17 14:07:58 +05:30
Akshai M
1e6c0e3935 drivers/include/ds1307.h : Remove ifndef for I2C 2020-04-17 14:07:58 +05:30
Akshai M
c59e17ea19 drivers/include/bmx055.h : Expose Parameters
Add ifndef and Expose Compile Parameters to Doxyen
2020-04-17 14:06:07 +05:30
Akshai M
79de2512e1 drivers/hdc1000 : Expose to Kconfig
Expose Configurations to Kconfig

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-16 19:16:43 +05:30
Akshai M
7a4191a8d5 drivers/hdc1000 : Add CONFIG_
Add CONFIG_ Prefix for configuring the Compile time macros
2020-04-16 17:17:27 +05:30
Akshai M
c452323ab5 drivers/include/cc110x.h : Add group
Add compile parameters to config_drivers_netdev group to Doxygen

Co-Authored-By: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-04-15 13:58:31 +05:30
Akshai M
aa7e84a6d7 drivers/mma8x5x.h : Compile Configs
Add CT Params to sensors group in Config for Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
b9f71610d7 drivers/include/ads101x.h : Add Group
Add CT Params to sensors group in Config for Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
b36b3b9819 drivers/include/fxos8700.h : Add group
Add compile parameters to config_drivers_sensors group to Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
32c4fe3cd4 drivers/include/ds1307.h : Add group
Add compile parameters to config_drivers_sensors group to Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
eb3456ee1d drivers/include/dose.h : Add group
Add compile parameters to config_drivers_netdev group to Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
11c2803bcf drivers/include/at86rf215.h : Add Group
Add CT Params to netdev group in Config for Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
007cd5bb26 drivers/include/at.h : Add Group
Add CT Params to misc group in Config for Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
358d7eb616 drivers/adcxx1c_params.h : Add Group
Add CT Params to sensors group in Config for Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
497a967a23 drivers/include/sx127x.h : Add group
Add to config_netdev group to Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
80c6374cc4 drivers/include/mrf24j40.h : Modify group
Add to config_netdev group to Doxygen
2020-04-14 20:52:16 +05:30
Akshai M
bc65ffdcde drivers/include/ethos.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
10d6b7a976 drivers/include/tmp00x.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
a6d7eab027 drivers/include/tcs37727.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
0ac93bfb07 drivers/include/sps30.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
462e321ec0 drivers/include/soft_spi.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
c63bdca3ab drivers/include/slipdev.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
4333a9f299 drivers/include/rn2xx3.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
1d3c2c4320 drivers/include/pn532.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
4c4c9f0c2b drivers/include/pir.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
f39b320b5d drivers/include/opt3001.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
4744401bb5 drivers/include/mtd_sdcard.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
2405ca3721 drivers/include/mpl3115a2.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
b812772e40 drivers/include/motor_driver.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
56cb11344b drivers/include/mag3110.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
5e2478b3c5 drivers/include/kw41zrf.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
4f31c40526 drivers/include/kw2xrf.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
dba177c8aa drivers/include/ili9341.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
013c161e1c drivers/include/hdc1000.h : Compile Configs 2020-04-14 20:52:16 +05:30
Akshai M
f15e479388 drivers/doc.txt : Add sub-groups
Added Compile Config subgroups for sensors, netdev, actuators,
storage,soft_periph and misc to Doxygen
2020-04-14 20:52:16 +05:30
Marian Buschsieweke
9efd47952e
drivers/ws281x: Extended doc
Point out that automatic backend selection is performed, when no backend is
selected.
2020-04-09 13:34:51 +02:00
Marian Buschsieweke
d3d2cdae8a
drivers/ws281x: Fix dependencies
arch_esp32 was missing in FEATURES_REQUIRED_ANY for the ws281x, resulting in
ESP32 boards incorrectly being reported as unsupported.
2020-04-09 13:30:18 +02:00
Marian Buschsieweke
4e60eb9dd5
Merge pull request #13843 from mtreffers/doc-fixes
Doc: fix typo and extend ws281x documentation
2020-04-09 13:21:45 +02:00
mtreffers
1ca28b8181 drivers/ws281x: fix documentation
extend ws281x documentation with usage for ESP32 and VT100

fix indendation
2020-04-09 10:22:39 +02:00
Francisco
3177784039
Merge pull request #13798 from jia200x/pr/at86rf2x_basic_mode
at86rf2xx: implement basic mode (v2)
2020-04-09 09:21:15 +02:00
Leandro Lanzieri
a06d9bbb66
Merge pull request #13315 from jia200x/pr/kconfig/ieee802154
ieee802154: Expose configurations to Kconfig
2020-04-08 19:34:55 +02:00
Jose Alamos
ab5418ebab at86rf2xx: report CRC error in basic mode 2020-04-08 19:14:45 +02:00
Jose Alamos
d4b0aff8cf at86rf2xx: implement basic mode 2020-04-08 19:14:45 +02:00
Jose Alamos
69eb3c7fe2 at86rf2xx: add basic mode PHY state 2020-04-08 19:14:44 +02:00
Jose Alamos
77325b4cde ieee802154: add CONFIG_ prefix to config macros 2020-04-08 19:08:25 +02:00
Leandro Lanzieri
6e49724a66
drivers/Makefile.dep: Set CONFIG_MRF24J40_USE_EXT_PA_LNA if not Kconfig
For the mrf24j40 check if Kconfig is being used before setting the
configuration CFLAG.
2020-04-08 18:49:32 +02:00
Leandro Lanzieri
f89514e466
drivers/mrf24j40: Expose configurations to Kconfig 2020-04-08 18:49:31 +02:00
Leandro Lanzieri
ede9117a1e
drivers/mrf24j40: Turn MRF24J40_USE_EXT_PA_LNA into bool config
MRF24J40_USE_EXT_PA_LNA is moved to the 'CONFIG_' namespace and by
default is not set. Now it is checked in code using 'IS_ACTIVE'.
2020-04-08 18:49:30 +02:00
Leandro Lanzieri
655ce69903
drivers/mrf24j40: Turn MRF24J40_TEST_SPI_CONNECTION into bool config
MRF24J40_TEST_SPI_CONNECTION is moved to the 'CONFIG_' namespace and by
default is not set. Now it is checked in code using 'IS_ACTIVE'.
2020-04-08 18:49:27 +02:00
067b324645
Merge pull request #11945 from benpicco/EEPROM-m95m01
drivers: add driver for AT25xxx family of EEPROMs
2020-04-07 13:19:21 +02:00
Benjamin Valentin
97fc2f2af1 drivers: add AT25xxx series EEPROM
This adds a driver for the ST M95xxx series SPI EEPROMs.
The driver has been tested with the M95M01 EEPROM, but should
work with other chips from that family.

SPI-EEPROMs from other vendors from the families AT25xxx, 25AAxxx,
25LCxxx, CAT25xxx & BR25Sxxx should also in the same way.
2020-04-07 12:31:46 +02:00
benpicco
750db2a910
Merge pull request #13788 from benpicco/drivers/at86rf215_shutdown_fix
drivers/at86rf215: return error when switching state while busy
2020-04-03 17:50:48 +02:00
Benjamin Valentin
46544c5d7a drivers/at86rf215: add comment to _tx_ongoing() 2020-04-03 12:48:52 +02:00
Francisco
d4580b4c36
Merge pull request #13750 from benpicco/drivers/at86rf215_fix_wakeup
drivers/at86rf215: fix reset after deep sleep
2020-04-03 09:04:51 +02:00
Leandro Lanzieri
c74544c9ec
Merge pull request #13349 from maribu/dependency-or
build system: Restructure dependency resolution
2020-04-02 10:40:44 +02:00
Benjamin Valentin
5ed88ecb0a drivers/at86rf215: unexport at86rf215_block_while_busy()
It's a private function that should not be used lightly.
2020-04-01 23:14:46 +02:00
Benjamin Valentin
8c6791b136 drivers/at86rf215: return error when switching state while busy
Previously the function attempted to block here and manually service
the ISR.
This lead to unexpected results, in particular messages queuing up in
the threads message queue.

The result was that the radio would not end up in the correct state.
E.g. sending SLEEP to both interfaces while a transmission was ongoing
would lead to the interfaces waking up again.

With this patch the operation will just return -ERRNO so the caller can
try again.

To reproduce, try the attached patch for the `gnrc_networking` example:

On master you will find that the radio still consumes ~2.4mA after 'shutdown'.
(It is in fact in the state TRXOFF as it woke up again)
With this change the radio should consume less than 1µA (DEEP SLEEP).

diff --git a/examples/gnrc_networking/main.c b/examples/gnrc_networking/main.c
index 6301f4291d..93b96eb939 100644
--- a/examples/gnrc_networking/main.c
+++ b/examples/gnrc_networking/main.c
@@ -23,12 +23,47 @@
 #include "shell.h"
 #include "msg.h"

+#include "periph/pm.h"
+
+#include "net/netopt.h"
+#include "net/gnrc/netif.h"
+
 #define MAIN_QUEUE_SIZE     (8)
 static msg_t _main_msg_queue[MAIN_QUEUE_SIZE];

 extern int udp_cmd(int argc, char **argv);

+extern void send(char *addr_str, char *port_str, char *data, unsigned int num,
+                 unsigned int delay);
+
+static int send_and_shutdown(int argc, char **argv)
+{
+    (void) argc;
+    (void) argv;
+
+    /* the address must not exist */
+    char addr[] = "fe80::2068:3123:59f5:d238%7";
+    char port[] = "1234";
+    char data[] = "Hello World!";
+
+    send(addr, port, data, 1, 0);
+
+    /* disable radio */
+    gnrc_netif_t* netif = NULL;
+    netopt_state_t state = NETOPT_STATE_SLEEP;
+    while ((netif = gnrc_netif_iter(netif))) {
+        /* retry while busy */
+        while (gnrc_netapi_set(netif->pid, NETOPT_STATE, 0, &state,
+               sizeof(netopt_state_t)) == -EBUSY);
+    }
+
+    pm_set(0);
+
+    return 0;
+}
+
 static const shell_command_t shell_commands[] = {
+    { "shutdown", "turn off the radio & shut down", send_and_shutdown },
     { "udp", "send data over UDP and listen on UDP ports", udp_cmd },
     { NULL, NULL, NULL }
 };
diff --git a/examples/gnrc_networking/udp.c b/examples/gnrc_networking/udp.c
index e8a559846e..cb80855b76 100644
--- a/examples/gnrc_networking/udp.c
+++ b/examples/gnrc_networking/udp.c
@@ -36,7 +36,7 @@ static gnrc_netreg_entry_t server = GNRC_NETREG_ENTRY_INIT_PID(GNRC_NETREG_DEMUX
                                                                KERNEL_PID_UNDEF);

-static void send(char *addr_str, char *port_str, char *data, unsigned int num,
+void send(char *addr_str, char *port_str, char *data, unsigned int num,
                  unsigned int delay)
 {
     gnrc_netif_t *netif = NULL;
2020-04-01 23:08:44 +02:00
benpicco
660b1a9b5f
Merge pull request #10083 from gschorcht/drivers_hmc5883l
drivers: add driver for Honeywell HMC5883L magnetometer
2020-04-01 14:49:34 +02:00
benpicco
d1ccfe6c9a
Merge pull request #13778 from akshaim/fxos8700_CT_Config
drivers/include/fxos8700.h : Compile Configs
2020-04-01 13:43:01 +02:00
Gunar Schorcht
df612a3790 sys/auto_init: add hmc5883l device driver 2020-04-01 13:37:22 +02:00
Gunar Schorcht
e6090adb3f drivers: add hmc5883l device driver 2020-04-01 13:37:22 +02:00
Leandro Lanzieri
6f30086609
Merge pull request #13775 from akshaim/ds1307_CT_Config
drivers/include/ds1307.h : Compile Configs
2020-04-01 13:28:36 +02:00
Leandro Lanzieri
bb6fa878a2
Merge pull request #13770 from akshaim/dose_CT_Config
drivers/include/dose.h : Compile Configs
2020-04-01 13:10:01 +02:00
Akshai M
27458701b6 drivers/include/fxos8700.h : Compile Configs 2020-04-01 14:53:44 +05:30
Akshai M
5e97feb88e drivers/include/dose.h : Compile Configs 2020-04-01 14:35:45 +05:30
Akshai M
c94abb5a36 drivers/include/ds1307.h : Compile Configs 2020-04-01 13:42:45 +05:30
Akshai M
9e3ea3e7b6 drivers/include/ads101x.h: Tagged Compile Time Parameters 2020-04-01 12:50:02 +05:30
Marian Buschsieweke
007ac492ff
drivers/ws281x: Use FEATURES_REQUIRED_ANY 2020-04-01 09:12:50 +02:00
Benjamin Valentin
1ed125dc06 drivers/at86rf215: document AT86RF215_TRIM_VAL
There is a compile-time configurable TRIM value.
This adds documentation for it.
2020-03-31 22:54:53 +02:00
benpicco
baa2024241
Merge pull request #13766 from akshaim/at_CT_Config
drivers/include/at.h : Tagged Compile Time Configurations
2020-03-31 21:51:44 +02:00
Akshai M
769fd0840c drivers/include/at86rf215.h: Tagged Compile Time Configuration 2020-03-31 22:20:02 +05:30
Akshai M
df9814df12 drivers/include/at.h : Tagged Compile Time Configurations 2020-03-31 21:45:16 +05:30
Francisco
1a8b35f54b
Merge pull request #13377 from leandrolanzieri/pr/kconfig_migrate/drivers/periph_wdt
drivers/periph/wdt: Expose configurations to Kconfig
2020-03-31 16:36:36 +02:00
benpicco
e7c1605119
Merge pull request #13691 from benpicco/tests/driver_netdev_common
tests/driver_netdev_common: add compile-test for network drivers
2020-03-31 14:50:28 +02:00
Leandro Lanzieri
8cca9bfc28
drivers/wdt: Expose configuration to Kconfig 2020-03-31 13:39:38 +02:00
Leandro Lanzieri
00b71a2708
drivers/wdt: Move WDT_WARNING_PERIOD to 'CONFIG_' namespace 2020-03-31 13:39:37 +02:00
Benjamin Valentin
611f4161d6 drivers/at86rf215: fix reset after deep sleep
When the radio is in DEEP SLEEP, reading the state register will return 0.
This makes the reset routine abort early even though the device is connected
and still waking up.

Instead, just add a timeout to the polling of the WAKEUP IRQ bit.
In practise it has shown that the loop will be taken two times on 'normal'
reset and four times when the radio was in DEEP SLEEP.

Polling 255 times sure does not hurt.

To reproduce the issue, put both interfaces into SLEEP mode,
then reboot the module:

    ifconfig 7 set state sleep
    ifconfig 8 set state sleep
    reboot
2020-03-29 19:44:40 +02:00
Akshai M
58516f7e2a drivers/include/sx127x.h: Tagged Compile Time Configuration 2020-03-27 19:06:10 +05:30
Martine S. Lenders
62d48d5bf3
gnrc_netif: document new *_create() out parameter as such 2020-03-26 14:37:44 +01:00
Martine Lenders
061eb88c05
Merge pull request #12994 from jia200x/pr/gnrc_netif_desc_alloc
gnrc_netif: implementation of dynamic GNRC_NETIF_NUMOF approach
2020-03-26 14:30:44 +01:00
Jose Alamos
67ed9defbe gnrc_netif_xxx_create: use external netif allocation 2020-03-26 11:12:23 +01:00
Marian Buschsieweke
937361856d
Merge pull request #13702 from ccoors/feature/esp32-ws281x
drivers/ws281x: Add support for esp32
2020-03-25 21:39:40 +01:00
Christian Friedrich Coors
08703766fc drivers/ws281x: Add ESP32 support 2020-03-25 17:25:35 +01:00
Dylan Laduranty
c4a8c63002
Merge pull request #13693 from benpicco/boards/same54-xpro-ext
boards/same54-xpro: configure remaining EXT connectors
2020-03-25 14:08:13 +01:00
Francisco Molina
9fa0099d62
cpu/stm32wb: add flashpage support
- Since flash access is shared with CPU2 we resize ROM_LEN
  according to CPU2 secure flash memmory area.
- Add assert to prevent unauthorized reads from CPU2 secure
  flash area
2020-03-25 09:29:56 +01:00
6faae9a9c9
Merge pull request #13657 from aabadie/pr/boards/backlight_common_defines
boards/pinetime: add defines for controlling the backlight pin
2020-03-24 13:52:57 +01:00
1498a7ada2
drivers/disp_dev: add help functions for backlight 2020-03-24 12:02:50 +01:00
Gunar Schorcht
4d306a4636 drivers/sht3x: fix broken links 2020-03-24 10:38:40 +01:00
Gunar Schorcht
3542c7af0e drivers/sdcard_spi: fix broken links 2020-03-24 10:38:40 +01:00
Gunar Schorcht
1d79de0c92 drivers/ccs811: fix broken links 2020-03-24 10:38:40 +01:00
Benjamin Valentin
f673e275f3 drivers/at86rf215: adapt default config to same54-xpro EXT1
Previously the default config was for connecting the REB215-XPRO
module to EXT3 on same54-xpro.

Since now more SPI buses are configured on same54-xpro and the default
config also serves as a compile test for boards with only one SPI bus,
connect the module to the (new) first SPI bus by default.
2020-03-24 01:16:47 +01:00
Benjamin Valentin
c4f248d51c drivers/dose: fix declaration of signal() 2020-03-23 20:35:54 +01:00
benpicco
e725111562
Merge pull request #13656 from gschorcht/drivers/apds9xx_fix_wait_long_init
drivers/apd99xx: fix wait long initialization
2020-03-22 17:26:22 +01:00
Francisco
cdbf0b2d69
Merge pull request #13583 from benpicco/at86rf215-minimal
drivers/at86rf215: add basic support for AT86RF215 dual-band radio
2020-03-20 09:33:50 +01:00
benpicco
5435792034
Merge pull request #12277 from benemorius/pr/kw41zrf
drivers: add kw41zrf
2020-03-20 00:49:56 +01:00
Joakim Nohlgård
5bd67d88a8 drivers/kw41zrf: Transceiver driver for the KW41Z radio
This is the radio found in NXP Kinetis KW41Z, KW21Z. Only 802.15.4 mode
is implemented (KW41Z also supports BLE on the same transceiver).

The driver uses vendor supplied initialization code for the low level
XCVR hardware, these files were imported from KSDK 2.2.0 (framework_5.3.5)
2020-03-19 17:00:04 -05:00
Benjamin Valentin
d716195ecb drivers/periph_common: init RTT before RTC 2020-03-19 15:25:14 +01:00
Benjamin Valentin
60cc3b8757 periph/rtt: Allow using MOCK_RTT defines from Unit Test 2020-03-19 15:25:14 +01:00
Benjamin Valentin
cd2b86c4b1 rtt_rtc: add RTT based RTC implementation 2020-03-19 15:25:14 +01:00
Benjamin Valentin
d35511bee7 drivers/at86rf215: Add basic driver for the AT86RF215 radio
This adds a driver for the SPI based AT86RF215 transceiver.
The chip supports the IEEE Std 802.15.4-2015 and IEEE Std 802.15.4g-2012 standard.

This driver supports two versions of the chip:
    - AT86RF215:  dual sub-GHz & 2.4 GHz radio & baseband
    - AT86RF215M: sub-GHz radio & baseband only

Both radios support the following PHY modes:
    - MR-FSK
    - MR-OFDM
    - MR-O-QPKS
    - O-QPSK (legacy)

The driver currently only implements support for legacy O-QPSK.

To use both interfaces, add

    GNRC_NETIF_NUMOF := 2

to your Makefile.

The transceiver is able to send frames of up to 2047 bytes according to
IEEE 802.15.4g-2012 when operating in non-legacy mode.

Known issues:

 - [ ] dBm setting values are bogus
 - [ ] Channel spacing for sub-GHz MR-O-QPSK might be wrong
 - [ ] TX/RX stress test will lock up the driver on openmote-b
2020-03-19 14:39:18 +01:00
Gunar Schorcht
2581fdee66 drivers/apd99xx: fix wait long initialization 2020-03-19 10:26:30 +01:00
Martine Lenders
5defa1ae34
Merge pull request #13466 from gschorcht/fix_compilation_with_ndebug
tests: fix compilation problems with NDEBUG
2020-03-12 19:34:33 +01:00
Gunar Schorcht
bd658b02ae drivers/mtd_mapper: fix NDEBUG compile problem 2020-03-12 18:04:42 +01:00
Robert Hartung
dc6665d5cf
Merge pull request #12717 from dylad/pr/bme680_pkg_driver
driver/bme680: add I2C/SPI driver for BME680 device
2020-03-12 14:00:40 +01:00
benpicco
24477ae3cb
Merge pull request #13588 from maribu/cc110x-isr
drivers/cc110x: Handle lost IRQs more gracefully
2020-03-12 12:21:07 +01:00
Gunar Schorcht
a1e2f36adb drivers/saul: add auto_init for BME680 2020-03-12 08:52:10 +01:00
Gunar Schorcht
c4325e4d5e drivers/bme680: add SAUL capabilities 2020-03-12 08:52:10 +01:00
Gunar Schorcht
1118f80180 drivers/saul: add common gas class 2020-03-12 08:42:59 +01:00
Gunar Schorcht
9dd11eb188 drivers: add support for BME680 driver
Add the support for BME680 based on the BME680 vendor driver package.
2020-03-12 08:42:59 +01:00
Schorcht
811850bba7 sys/auto_init: add APDS99XX ALS and proximity 2020-03-11 14:21:47 +01:00
Schorcht
7548a6e849 drivers: add APDS99XX ALS and proximity 2020-03-11 14:21:47 +01:00
Gunar Schorcht
87021a0b18 drivers/sy127x: clear interrupts for DIO3
If ValidHeader interrupt is set, it triggers DIO3 interrupt. However, if DIO3 line is not connected, ValidHeader interrupt is still set in RegIrqFlags register when RxDone interrupt is triggered on DIO0. It sets the mode back to idle. Therefore, the _on_dio3_irq does not clear the ValidHeader interrupt flag.
2020-03-10 10:47:36 +01:00
Gunar Schorcht
56040e3369 driver/sx127x: allow the use of DIO0 for CAD_DONE 2020-03-10 10:08:30 +01:00
Gunar Schorcht
e3a82cd6fc driver/sx127x: set DIO1 mapping
Since the RxTimeout interrupt is enabled, DIO1 mapping should be set also to RxTimeout in case the driver is extended in future and DIO1 mapping is changed for any reason.
2020-03-10 10:08:24 +01:00
Gunar Schorcht
1eb8701965 drivers/sx127x: ensure that DIO2 is defined
If frequency hopping is used (LORA_FREQUENCY_HOPPING_DEFAULT = true), DIO2 pin is needed for the FhssChangeChannel interrupt to get it working.
2020-03-10 10:08:19 +01:00
Gunar Schorcht
3adbbdcf9b drivers/sx127x: fix length check of netstat_opt_tin _set 2020-03-08 17:10:46 +01:00
Marian Buschsieweke
02a425f114
drivers/cc110x: Handle lost IRQs more gracefully
When an IRQ is lost during cc110x_send(), the driver will remain locked until
another IRQ is triggered. This commit changes the behavior to wait for at most
an reasonable upper bound, which is chosen to not only allow the driver to
recover but also (at least in theory) complete the transmission correctly.
2020-03-08 12:49:57 +01:00
57985806c1
Merge pull request #13562 from jia200x/pr/netdev_irq_end
netdev: add netdev_trigger_event_isr() function
2020-03-06 15:37:24 +01:00
Jose Alamos
3ad574a822 drivers/netdev: use netdev_trigger_event_isr function 2020-03-06 14:03:43 +01:00
Jose Alamos
67bc0e13af netdev: add netdev_trigger_event_isr function 2020-03-06 14:02:40 +01:00
benpicco
7877ffdf2a
Merge pull request #13511 from fjmolinas/pr_auto_init_periph
drivers/periph_common: add periph_init% modules
2020-03-06 13:05:57 +01:00
Francisco Molina
6b6479e6e9
drivers/periph_common: add periph_init% module 2020-03-06 11:21:19 +01:00
Martine Lenders
ff425576a0
slipdev_stdio: provide stdio multiplexing over SLIP 2020-03-06 08:58:45 +01:00
Martine Lenders
8e827055f0
slipmux: remove inesc member
It's not needed anymore.
2020-03-06 08:58:45 +01:00
Martine Lenders
f11940973c
slipdev: internally expose byte stuffing functionality 2020-03-06 08:58:45 +01:00