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

1867 Commits

Author SHA1 Message Date
Vic
e18557f9c4 drivers/shtcx: integration of shtc3 sensor 2022-03-10 21:35:25 +01:00
Vic
07531cdecd shtc1->shtcx: renamed files 2022-03-10 14:47:34 +01:00
a3fc5c1d17
Merge pull request #17697 from viktorbatista/drivers/lps22ch
driver/lpsxxx: adding lps22ch support
2022-03-09 21:28:11 +01:00
Vic
947efa7d65 driver/lpsxxx: adding lps22ch support 2022-03-09 15:23:51 +01:00
Benjamin Valentin
3d252bfba3 drivers/periph/timer: add TIM_FLAG_SET_STOPPED flag 2022-03-01 13:45:01 +01:00
benpicco
6cfbec4f8e
Merge pull request #10518 from gschorcht/drivers_mcp47xx
drivers: support for Microchip MCP47xx DAC devices added
2022-02-26 22:13:41 +01:00
Fabian Hüßler
66a7a0a065 drivers/periph: add VBAT interface 2022-02-20 13:43:19 +01:00
Francisco
e58af6a876
Merge pull request #17619 from benpicco/drivers/mtd_sdcard-unaligned
drivers/mtd_sdcard: support unaligned reads & writes
2022-02-17 10:09:06 +01:00
chrysn
b832bb1224 mtd doc: Add overview defining terms; link modules
Contributes-To: https://github.com/RIOT-OS/RIOT/issues/17663
2022-02-16 16:25:01 +01:00
Jens Wetterich
4dfeafcabd cpu/native/netdev_tap: Add to netdev_register 2022-02-11 07:54:11 +01:00
benpicco
c423148bbc
Merge pull request #17608 from benpicco/drivers/ethos-standalone
drivers/ethos: fix build without ethos_stdio
2022-02-10 13:07:11 +01:00
benpicco
be45400631
Merge pull request #17341 from benpicco/vfs-mtd_cleanup
sys/vfs: add file-system auto-mount
2022-02-09 21:50:34 +01:00
Benjamin Valentin
2fe41b1b40 drivers/mtd_flashpage: add mtd_flashpage_t type 2022-02-08 17:13:30 +01:00
Benjamin Valentin
91ca757b9a drivers/mtd_sdcard: implement erase_sector() 2022-02-07 11:40:27 +01:00
benpicco
effad2e571
Merge pull request #17613 from benpicco/drivers/mtd_spi_nor-microchip
boards/same54-xpro: support for board variation with SST26VF064B flash
2022-02-06 18:39:31 +01:00
Benjamin Valentin
67417ce5a9 drivers/mtd_spi_nor: drop addr_width from mtd_spi_nor_params_t
This is now always determined at run-time.
2022-02-04 12:17:17 +01:00
Benjamin Valentin
4c282a3a41 drivers/mtd_spi_nor: set address width at run-time 2022-02-04 12:17:17 +01:00
Benjamin Valentin
748e85ed39 drivers/ethos: set defaults for !ethos_stdio 2022-02-04 12:09:19 +01:00
Benjamin Valentin
0695a7e40e drivers/dose: include board.h
`DOSE_TIMER_DEV` is defined in `board.h`, so we have to include it.
It's not included by the header (and should not), so move the check
to the .c file.
2022-02-02 15:38:57 +01:00
Francisco Molina
dc27c080ea drivers/dose: migrate to ztimer_usec 2022-01-25 08:43:33 +01:00
Benjamin Valentin
70d9f2fb1a sys/vfs: move mtd_vfs_ops to vfs.h
This avoids a cyclic include of mtd.h
2022-01-24 13:53:21 +01:00
Francisco
b985a74894
Merge pull request #17367 from fjmolinas/pr_driver_ztimer_corner_cases
drivers: migrate xtimer64 and xtimer/ticks users to ztimer
2022-01-24 10:41:24 +01:00
Leandro Lanzieri
4eb58d74b5
drivers/ft5x06: allow multiple device types 2022-01-21 13:13:09 +01:00
Benjamin Valentin
a8983d288f drivers/dose: add documentation for dose_watchdog 2022-01-20 18:37:23 +01:00
Benjamin Valentin
a8ad618a71 drivers/dose: make use of ringbuffer for RX 2022-01-19 11:43:35 +01:00
Francisco
bc6624e67b
Merge pull request #17180 from benpicco/drivers/dose-watchdog
drivers/dose: introduce watchdog timer
2022-01-18 23:43:29 +01:00
5e599a82dd
Merge pull request #17531 from fjmolinas/pr_spi_gpio_init_reference
drivers/periph_spi: spi_init_with_gpio_mode mode by reference
2022-01-18 18:44:54 +01:00
Francisco Molina
a1fe17c698 drivers/ltc4150: migrate to ztimer64 2022-01-18 16:27:44 +01:00
Francisco Molina
579ca6d941 drivers/periph_spi: spi_init_with_gpio_mode mode by reference 2022-01-18 16:22:18 +01:00
Benjamin Valentin
3e1076e3b9 drivers/dose: set backoff timer before send 2022-01-18 15:41:38 +01:00
Benjamin Valentin
ddf80a8bdb drivers/dose: introduce watchdog timer 2022-01-18 15:41:38 +01:00
75f5048b68
Merge pull request #17497 from jia200x/pr/lora/fix_rssi_val
[treewide] lora: use int16_t for RSSI value
2022-01-17 18:57:37 +01:00
Jose Alamos
9955a35c63
[treewide] lora: use int16_t for RSSI value
The RSSI values reported by LoRa transceiver can be less than -127.
Therefore, `int8_t` is not enough. This commit defines the RSSI of
`netdev_lora_rx_info` as `int16_t` and adapt the drivers accordingly
(sx126x, sx127x).
2022-01-17 17:54:18 +01:00
37bc47e21c
drivers/at: remove deprecated AT_SEND_ECHO define 2022-01-14 09:06:17 +01:00
11f73ea5c9
drivers/ft5x06: add touch panel driver 2022-01-08 15:08:05 +01:00
e0324d5278
drivers/lis2dh12: fix missing stdbool include 2022-01-06 12:07:41 +01:00
0056648581
Merge pull request #17418 from aabadie/pr/drivers/periph_build_enh
drivers/periph_common: build periph module selectively
2022-01-04 14:59:39 +01:00
acd73529a5
drivers/netdev: fix missing and non matching arguments in doc 2022-01-03 09:52:04 +01:00
7ce1894da9
drivers/candev: fix non matching argument in doc 2022-01-03 09:51:40 +01:00
79df157727
sys: move rtc utility functions to their own module 2021-12-20 13:04:20 +01:00
c9e30b01c0
Merge pull request #16333 from fjmolinas/pr_driver_hm3301
drivers/hm330x: initial commit
2021-12-16 17:56:45 +01:00
Francisco Molina
fe38284a3c drivers/hms330x: initial import 2021-12-16 15:19:44 +01:00
Martine Lenders
e062ad78f3
Merge pull request #17265 from miri64/ethos/fix/threadify-state-machine
ethos: move bulk of state machine out of ISR context
2021-12-16 12:24:14 +01:00
Martine Lenders
820a3976ad
ethos: move bulk of state machine out of ISR context
This moves the following parts of ethos' state machine out of ISR
context:

- Sending and replying to HELLO messages
- Byte-unstuffing

Some escape handling is still needed in the ISR handler, due to ethos'
protocol design, to determine if a received byte must go into the
netdev queue (tsrb) or the STDIO queue (isrpipe), but the actual
unstuffing is now done in the STDIO and netdev handler threads,
respectively.
2021-12-15 16:15:30 +01:00
Martine Lenders
568be105f2
stdio_ethos: move to ethos_stdio 2021-12-15 16:15:29 +01:00
benpicco
e8cbf1ea90
Merge pull request #16681 from benpicco/drivers/dose-collision
drivers/dose: make use of UART collision detection feature
2021-12-08 20:48:28 +01:00
Gunar Schorcht
499cbb9062 drivers/mcp47xx: add driver for MCP47xx DAC devices 2021-12-08 05:42:07 +01:00
2e0c02b25d
Merge pull request #17340 from gschorcht/driver/fix_css811_read_status
driver/css811: fix read status
2021-12-04 17:41:02 +01:00
benpicco
0646862421
Merge pull request #10430 from gschorcht/drivers_pcf857x
drivers: add PCF857X I2C I/O expander driver
2021-12-04 16:57:01 +01:00
Gunar Schorcht
7eb599e765 drivers: add PCF857X I/O expander driver 2021-12-04 14:11:04 +01:00
Gunar Schorcht
6bdc590516 drivers/ccs811: small cleanups in documentation 2021-12-04 13:43:31 +01:00
Gunar Schorcht
27265095cd drivers/ccs811: fix the data ready check
When the measurement results are read from the `ALG_RESULT_DATA` register set including the STATUS register, the `DATA_RDY` flag in the STATUS register is already cleared during reading. Therefore it is not possible to check this flag after the `ALG_RESULT_DATA` has been read. Therefore the function `ccs811_read_iaq` always returned `CCS811_ERROR_NO_NEW_DATA` although the data were valid either after checking for new data with the function `ccs811_data_ready` or after triggering the Data Ready interrupt.
2021-12-04 13:43:31 +01:00
8329112c45
Merge pull request #17088 from fjmolinas/pr_stmpe811_spi
drivers/stmpe811: add spi mode
2021-12-03 21:37:46 +01:00
Francisco Molina
e17fe0aee2 drivers/stmpe811: add spi mode 2021-12-03 17:12:03 +01:00
b6cc07009f
Merge pull request #17284 from fjmolinas/pr_ztimer_no_periph_rtt
sys/ztimer: add 'ztimer_no_periph_rtt'
2021-12-02 11:02:24 +01:00
Francisco Molina
7c3360e4d6 sys/ztimer: add 'ztimer_no_periph_rtt'
This is a temporary fix for Issue #17060. It allows to disable
auto inclusion of `ztimer_periph_rtt` in cases where another
module or application requires direct access.

Limitations:
- as ifeq are involved order of inclusion matters, therefore
  these modules should be included early in the build at application
  level and not in modules `Makefile.dep`
- this does not disallow direct inclusions of `ztimer_periph_rtt`,
  since this only disables auto inclusion of these modules

This is a temporary solution since this is already possible with
Kconfig, but not in make.
2021-12-02 07:54:38 +01:00
Francisco Molina
1ef9ca8a6f drivers/soft_spi: remove nanosleep 2021-11-30 10:31:22 +01:00
Gunar Schorcht
3d93b2bcf0 drivers/periph/i2c: i2c_acquire() returns void
Since all implementations simply return 0 and most drivers do not check the return value, it is better to return void and use an assert to ensure that the given device identifier and given device parameters are correct.
2021-11-29 06:35:25 +01:00
Wouter Symons
5055d0993e drivers/dht: correct interpreting raw values 2021-11-20 14:55:02 +01:00
Benjamin Valentin
1768e93710 drivers/periph: use uint_fast8_t as default type
The default driver type is just an index into a device array defined
by the board.

If a platform wants to encode additional information in the device type,
it can define a custom type.

This means we can just set the default type to whatever fits the target
CPU best.

On ARM this will still be a 32 bit word, but on AVR it will by a 8 bit byte.
2021-11-18 10:29:50 +01:00
f8e7e2f557
usbdev_mock: Adapt to xmit API
Includes the adaptations needed in the test application
2021-11-16 20:16:59 +01:00
597f1d19aa
usbdev: Refactor to xmit API
This API change refactors the usbdev API to supply buffers via the
usbdev_ep_xmit function. This changes from the usbdev_ep_ready call to allow
separate buffers per call. An usbdev_ep_buf_t pseudotype is available and must
be used when defining buffers used for endpoints to adhere to the DMA alignment
restrictions often required with usb peripherals.

Main advantage is that the usbdev peripherals no longer have to allocate
oversized buffers for the endpoint data, potentially saving multiple KiB
of unused buffer space. These allocations are now the responsibility of
the individual USB interfaces in the firmware
2021-11-16 11:21:07 +01:00
59e85cf921
usbdev: Refactor to xmit API
This API change refactors the usbdev API to supply buffers via the
usbdev_ep_xmit function. This changes from the usbdev_ep_ready call to allow
separate buffers per call. An usbdev_ep_buf_t pseudotype is available and must
be used when defining buffers used for endpoints to adhere to the DMA alignment
restrictions often required with usb peripherals.

Main advantage is that the usbdev peripherals no longer have to allocate
oversized buffers for the endpoint data, potentially saving multiple KiB
of unused buffer space. These allocations are now the responsibility of
the individual USB interfaces in the firmware
2021-11-16 11:21:00 +01:00
Benjamin Valentin
b34b67feee drivers/dose: reduce struct padding
By moving all the single byte struct elements to the end, we can reduce
padding inside `dose_t` and ensure that `recv_buf` is always aligned.

This saves some RAM:

master
------
   text	   data	    bss	    dec	    hex	filename
  36384	    136	  12944	  49464	   c138 tests/driver_dose/bin/samr21-xpro/tests_driver_dose.e

this patch
----------
   text	   data	    bss	    dec	    hex	filename
  36484	    136	  12936	  49556	   c194	tests/driver_dose/bin/samr21-xpro/tests_driver_dose.elf
2021-11-12 16:19:20 +01:00
Francisco
b609646961
Merge pull request #17138 from fjmolinas/pr_sx126x_fixes
drivers/sx126x: fix sync word and TX PA configuration
2021-11-11 10:59:08 +01:00
Benjamin Valentin
f89d0c7c25 drivers/periph/uart: add periph_uart_collision feature 2021-11-10 15:57:45 +01:00
benpicco
026d6cfba1
Merge pull request #16768 from benpicco/drivers/dose-timeout_bytes
drivers/dose: calculate timeout based on symbol rate
2021-11-10 12:40:13 +01:00
Francisco
035ee0a595
Merge pull request #17172 from kaspar030/drivers_ds18_missing_stdint.h
drivers/ds18.h: add missing stdint.h include
2021-11-10 08:42:03 +01:00
5d3a4d63d8 drivers/ds18.h: add missing stdint.h include 2021-11-09 21:48:48 +01:00
benpicco
12ade5a8b5
Merge pull request #16752 from benpicco/drivers/dose-standby
drivers/dose: enable standby pin
2021-11-09 18:20:17 +01:00
Benjamin Valentin
6c1481b6ee drivers/dose: enable standby pin
Some CAN transceivers have a standby pin that has to be pulled low
in order to use it.
If the interface is disabled we can set it to high again to save some
power.
2021-11-09 15:19:35 +01:00
Francisco Molina
e17e3254e1 drivers/sx126x: add tx_pa_mode
BOARDs with RF switch might only support one of the TX modes, and
on init the BOARD needs to be configured accordingly and the correct
mode selected on TX.
2021-11-08 18:42:05 +01:00
Marian Buschsieweke
5e75047a2b
drivers/lis3dh: fix unaligned memory access
The bogus packed attribute added to lis3dh_data_t resulted in the
structure being aligned two 1 byte. It was later casted to an
uint16_t pointer (which is aligned two 2 bytes). By dropping the
packed attribute the alignment mismatch is fixed.
2021-11-06 20:05:05 +01:00
26346188b9
Merge pull request #17105 from aabadie/pr/drivers/ata8520e_ztimer
drivers/ata8520e: migrate to ztimer
2021-11-05 16:22:59 +01:00
baa1ed38cc
drivers/ata8520e: migrate to ztimer 2021-11-05 12:49:37 +01:00
benpicco
bfb8d1d3fd
Merge pull request #17014 from benpicco/periph/gpio-cb_not_NULL
drivers/periph/gpio: state that interrupt callback must not be NULL
2021-11-05 12:47:16 +01:00
295092bc29
drivers/rn2xx3: migrate to ztimer 2021-11-04 10:39:36 +01:00
Francisco Molina
472f6495a8 drivers/xbee: migrate to ztimer_msec 2021-11-02 21:46:19 +01:00
Francisco Molina
9a2c880a60 drivers/stmpe811: use errno 2021-10-30 23:25:50 +02:00
Ollrogge
c6e94aa6be periph/flashpage.h: add comment about riotboot impact on flashpage layout 2021-10-26 14:35:33 +02:00
Francisco
7f3344870d
Merge pull request #16972 from Ollrogge/flashpage_pr
periph/flashpage: extend API
2021-10-26 12:51:05 +02:00
9f8aee4e95
usbdev: Deprecate USBDEV_EVENT_TR_FAIL 2021-10-24 19:33:29 +02:00
Ollrogge
72d47013dd periph/flashpage: extend API 2021-10-19 22:33:09 +02:00
Benjamin Valentin
f624eb473a drivers/periph/gpio: state that interrupt callback must not be NULL
This allows us to use `assert(cb != NULL)` inside `gpio_init_int()`
and save a few cycles of interrupt latency.
2021-10-19 21:26:50 +02:00
Gunar Schorcht
62dd51d8ba drivers: add anchor to doc to allow stable references 2021-10-13 17:37:16 +02:00
Jose Alamos
503f5a9ddb
netdev: add netdev_register_signal 2021-10-05 14:35:07 +02:00
benpicco
7bfcda979b
Merge pull request #16906 from benpicco/rtt_rtc.h-doxfix
rtt_rtc: clarify documentation about epoch
2021-09-28 16:11:34 +02:00
Benjamin Valentin
928c593bca rtt_rtc: clarify documentation about epoch
`epoch` in this context refers to `RIOT_EPOCH`, not Unix Epoch.
Clarify the documentation to avoid confusion.
2021-09-28 15:12:14 +02:00
Vera Clemens
06359e05ad drivers/lpsxxx: add support for lps22hh 2021-09-22 17:54:02 +02:00
Francisco
2d0a6874c7
Merge pull request #16763 from benpicco/drivers/lm75-saul
drivers/lm75: add SAUL integration
2021-09-21 10:41:58 +02:00
benpicco
b6a2d08afc
Merge pull request #15915 from fabian18/ina3221-fixes
drivers/ina3221: style fixes and improvements
2021-09-16 22:22:33 +02:00
benpicco
c98c488559
Merge pull request #16746 from jia200x/pr/hal/fb_lock
ieee802154/submac: reimplement using FSM
2021-09-03 18:13:58 +02:00
Jose Alamos
8f97f73453
ieee802154/submac: reimplement using FSM 2021-09-03 15:00:47 +02:00
Benjamin Valentin
0ee0c5e40e drivers/periph: define periph_rtc_mem 2021-09-03 11:43:42 +02:00
Francisco
a1cbcc9ede
Merge pull request #15902 from maribu/spi-api-change-1
drivers/periph_spi: let spi_acquire return void
2021-09-02 08:50:56 +02:00
benpicco
9294a31856
Merge pull request #16781 from benpicco/flashpage_page-const
drivers/flashpage: flashpage_page() takes a const argument
2021-08-31 10:22:46 +02:00
Jean Pierre Dudey
719a18ca8b
Merge pull request #16773 from jeandudey/ili9341-flip
drivers/ili9341: add rotation mode to ili9341_params_t
2021-08-27 14:21:56 +02:00
Benjamin Valentin
f903ec90d4 drivers/flashpage: flashpage_page() takes a const argument
All addresses to flashpage_page() must be in flash. Flash memory is
`const`, therefore this function must also take `const` pointers.
2021-08-27 14:08:25 +02:00
Jean-Pierre De Jesus DIAZ
e6cce1a15f drivers/ili9341: add rotation mode to ili9341_params_t
Signed-off-by: Jean-Pierre De Jesus DIAZ <me@jeandudey.tech>
2021-08-26 10:45:05 +02:00
Benjamin Valentin
3399a6476a drivers/dose: calculate timeout based on symbol rate
A fixed timeout is either too long for high symbol rates or too short
for low symbol rates.

To fix this, calculate the timeout based on the symbol rate.

For this, the old 5ms timeout is equivalent to 58 bytes being transmitted
at 115200 baud (8 data bit + start & stop bit).

I rounded this to 50 bytes which should yield 4340 µs.
2021-08-25 20:48:54 +02:00
benpicco
025770968b
Merge pull request #16036 from bergzand/pr/gd32vf103/initial
gd32v/seeedstudio-gd32: Initial support
2021-08-25 00:38:00 +02:00
Benjamin Valentin
fc457459bf drivers/lm75: cleanup 2021-08-24 14:34:52 +02:00
Benjamin Valentin
75e2a65681 drivers/flashpage: add missing include 2021-08-24 14:30:23 +02:00
benpicco
be85777cd1
Merge pull request #16678 from viktorbatista/modules/lm75
drivers/lm75: driver for the lm75 sensor and derivatives
2021-08-20 18:04:12 +02:00
Vitor Batista
9267fa2670 drivers/lm75: driver for the lm75 sensor and derivatives 2021-08-20 17:09:40 +02:00
benpicco
71953c984c
Merge pull request #16534 from jia200x/pr/detach_radio_hal_descriptor
ieee802154/radio_hal: detach hal descriptor from driver
2021-08-18 18:15:51 +02:00
Jose Alamos
ddc9c7c686
ieee802154/radio_hal: detach hal descriptor from driver 2021-08-18 15:24:10 +02:00
Jose Alamos
8c0c603146
drivers/at86rf215: remove msg queue dependency 2021-08-16 15:28:06 +02:00
Jan Romann
4384795cb9
treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
Marian Buschsieweke
7aab478678
drivers/soft_spi: update API to match periph_spi 2021-08-06 12:47:00 +02:00
Marian Buschsieweke
9e5f7b6797
drivers/periph_spi: make spi_acquire() return void
There is no way to properly handle incorrect SPI parameters at run time, so
just having an assertion blow up is the better choice here.

As most instances of `spi_acquire()` don't check the return value anyway, this
will improve debugging experience quite a bit. Some implementation of
spi_acquire() don't even check parameters anyway.
2021-08-06 12:46:57 +02:00
benpicco
feac187d54
Merge pull request #16506 from benpicco/drivers/dose-rx_start
drivers/dose: make use of start condition received interrupt
2021-07-28 17:21:29 +02:00
Benjamin Valentin
d48f673597 drivers/dose: make use of periph_uart_rx_start feature 2021-07-28 16:19:04 +02:00
Benjamin Valentin
0964a217b5 rtt_rtc: add rtc_settimeofday() & rtc_gettimeofday() 2021-07-27 22:12:25 +02:00
Benjamin Valentin
9194440ead drivers/periph/uart: add periph_uart_rx_start feature 2021-07-27 16:29:30 +02:00
benpicco
07b3e19d01
Merge pull request #16632 from maribu/periph/uart
periph/uart: Fix doc, use errno for return values
2021-07-21 00:12:24 +02:00
Jose Alamos
b299299ad3
drivers/sx126x: fix NETOPT_RX_SYMBOL_TIMEOUT 2021-07-14 14:11:15 +02:00
Jose Alamos
c6da77a454
Revert "drivers/sx127x: fix size of rx symbol timeout"
This reverts commit 26ead7b5be.
2021-07-13 21:14:28 +02:00
Marian Buschsieweke
e7cacf6f60
periph/uart: Fix doc, use errno for return values
Some terminology issues are fixed. (The speed of an UART interface is
the symbol rate. The unit it is measured in is baud, which is symbols
per second. There is no such thing as baudrate or even baud/s.)

The return codes are changed to use negative errno constants on error
to match the driver design rules. For backward compatibility, the
enum was updated to match the error codes. Unless an application
depends on the exact numerical value (which would be insane), this is
not breaking any code.
2021-07-09 17:06:01 +02:00
Akshai M
17ad0fc5a7 driver/sx126x : Add set_rf_mode interface 2021-07-09 11:16:41 +02:00
Akshai M
8870a885cb drivers/sx126x : Add stm32wl variant 2021-07-09 11:16:41 +02:00
Akshai M
8d43dbf67f drivers/sx126x : Update NETOPT_RX_xx
r/NETOPT_RX_TIMEOUT/NETOPT_RX_SYMBOL_TIMEOUT
Use sx126x_symbol_to_msec() to calculate the RX timeout in ms.
2021-07-08 12:19:36 +02:00
Akshai M
a3ed19e0ee drivers/sx126x.h : Add sx126x_symbol_to_msec() 2021-07-08 12:19:36 +02:00
Fabian Hüßler
c50149e488 drivers/ina3221: refactor 2021-07-07 08:40:02 +02:00
Francisco
ccfd3ee980
Merge pull request #16597 from jia200x/pr/sx126x_kconfig
sx126x: add support for multiple simultaneous variants
2021-07-06 13:19:15 +02:00
benpicco
8f9233f329
Merge pull request #16232 from maribu/drivers/cc110x
drivers/cc110x: add power off (sleep) functions
2021-07-06 12:24:26 +02:00
Francisco
daeac91aea
Merge pull request #16604 from jia200x/pr/lora/fix_rx_timeout_size
netdev/lora: fix size of NETOPT_RX_SYMBOL_TIMEOUT
2021-07-06 12:15:00 +02:00
Marian Buschsieweke
3d76875f38
drivers/cc110x: style fixes 2021-07-06 10:12:21 +02:00
Francisco Acosta
0efc13602f
drivers/cc110x: add power off (sleep) functions 2021-07-06 10:11:55 +02:00
Jose Alamos
2e5b7f9e31
sx126x: add support for multiple simultaneous variants 2021-07-05 16:02:15 +02:00
Jose Alamos
26ead7b5be
drivers/sx127x: fix size of rx symbol timeout 2021-07-01 11:58:34 +02:00
Kevin "Tristate Tom" Weiss
25c871ed9a
Merge pull request #16576 from jia200x/pr/netdev/migrate_dst_filter
ieee802154: migrate `netdev_ieee802154_dst_filter` to a common ieee802154
2021-06-29 10:50:08 +02:00
Jose Alamos
dfeb57b7f8
netdev_ieee802154: deprecate netdev_ieee802154_dst_filter 2021-06-23 16:44:07 +02:00
Benjamin Valentin
c1eead925d drivers/slipdev: register with netdev 2021-06-21 12:42:03 +02:00
Benjamin Valentin
9a548b834f drivers/ethos: register with nedev 2021-06-11 12:31:37 +02:00
Benjamin Valentin
2467c84634 drivers/ethos: enable multiple instances 2021-06-11 12:31:37 +02:00
benpicco
41bbafdfe4
Merge pull request #16328 from benpicco/driver/lis2dh12-cleanup
drivers/lis2dh12: clean up API
2021-06-03 15:33:04 +02:00
Benjamin Valentin
392bacd9c7 drivers/lis2dh12: add support for temperature sensor 2021-06-03 12:59:50 +02:00
Benjamin Valentin
28148b7dc3 drivers/lis2dh12: general cleanup
Don't expose raw register values for the user to figure out
2021-06-03 12:59:50 +02:00
Benjamin Valentin
e8264d3ea9 drivers/lis2dh12: fix event handling
Don't push event handling to the user.
2021-06-03 12:59:50 +02:00
39094d0833
drivers/sx127x: uncrustify code 2021-05-18 11:00:44 +02:00
Jnae
b287d120ff at86rf215: timestamp counter for rx frames 2021-05-12 15:27:36 +02:00
benpicco
619a444741
Merge pull request #16347 from benpicco/drivers/rtt_rtc-rtc_get_time_ms
drivers/rtt_rtc: implement rtc_get_time_ms()
2021-05-05 19:13:21 +02:00
benpicco
2b6454a2d7
Merge pull request #16106 from fabian18/ieee802154_security_small_bugfix_and_stricter_names
net/ieee802154_security: small bugfix and stricter names
2021-05-03 11:29:43 +02:00
Benjamin Valentin
dcebc7d480 drivers/rtt_rtc: implement rtc_get_time_ms()
RTC on RTT usually runs at a frequency greater than 1 Hz, so sub-second
precision is available.
Add a function to get the current RTC timestamp together with it's sub-second
component.
2021-05-03 00:09:18 +02:00
benpicco
0493292ef3
Merge pull request #15908 from benpicco/drivers/periph_common-flashpage
drivers/periph: flashpage: add common helper functions
2021-04-27 18:54:10 +02:00
Benjamin Valentin
d611a264fd drivers/cc2420: register with netdev 2021-04-27 17:37:52 +02:00
Benjamin Valentin
917cf85225 drivers/periph: flashpage: add common helper functions 2021-04-27 16:52:36 +02:00
Fabian Hüßler
7036c2b9ee sys/net/link_layer/ieee802154: fix small typos 2021-04-27 08:54:19 +02:00
Benjamin Valentin
45fbcee7dc drivers/soft_uart: fix typo in eMail address
Somehow an extra letter has sneaked into the mail and was copy & pasted
around.
2021-04-26 17:15:17 +02:00
Benjamin Valentin
db0edd3ec1 drivers/lis2dh12: power mode -> resolution
This is easier to understand.
2021-04-23 17:21:04 +02:00
Bas Stottelaar
cc645c083e
Merge pull request #15684 from iosabi/drv_si705x
drivers/si70xx: Add support for Si705x sensors
2021-04-21 22:29:01 +02:00
Marian Buschsieweke
855a6fa36a
Merge pull request #16296 from fabian18/nrf24l01p_ng_eui_get
drivers/nrf24l01p_ng: add hook nrf24l01p_ng_eui_get()
2021-04-21 13:56:30 +02:00
iosabi
f72efb1daf drivers/si70xx: Add support for Si705x sensors
The Silicon Labs Si705x sensors (Si7050/1/3/4/5) are very similar to the
Si7021 sensors featuring only a temperature sensor and no humidity
sensor. The only difference between the Si705x is the temperature
accuracy of the reading, ranging from +/- 0.1 C in the Si7051 to +/- 1 C
in the Si7050.

This patch adds support for this family of sensors extending the
functionality of the existing si70xx driver. Following the style of
other modules, this implements a pseudomodule per supported chip, adding
si7050, si7051, si7053, si7054 and si7055 pseudomodules.

As a minor change this patch also implements the missing
si70xx_get_serial, si70xx_get_id and si70xx_get_revision functions that
were declared in the si70xx.h header but implemented as private
functions. The si70xx_get_id() may be relevant for the application to
know at run time exactly which version of the hardware is installed.

The updated test running with a Si7051 shows the following output, which
seems consistent with the room temperature conditions during the test.

```
make SI70XX_VARIANT=si7051 -C tests/driver_si70xx/ all flash
```

```
SI70XX temperature and humidity sensor test application
Initializing sensor...
[OK]
Found SI7051 sensor, revision 32
temperature: 24.71 C
temperature: 24.69 C
```
2021-04-17 20:14:35 +00:00
benpicco
fa8057ffbf
Merge pull request #16180 from nicoHarel/drivers/ds3231
drivers/ds3231: add alarm support
2021-04-13 13:57:16 +02:00
Fabian Hüßler
f5f2decfa4 nrf24l01p_ng: add hook nrf24l01p_ng_eui_get() 2021-04-09 17:39:40 +02:00
6ee94bdcdf
Merge pull request #16222 from fjmolinas/pr_driver_sgp30
driver/sgp30: initial import
2021-04-09 14:00:38 +02:00
Marian Buschsieweke
93ba8bea3b
Merge pull request #16286 from fabian18/cc110x_eui_get
drivers/cc110x: add hook cc1xxx_eui_get()
2021-04-08 12:51:46 +02:00
Fabian Hüßler
d8affca746 drivers/cc110x: add weak function cc1xxx_eui_get() 2021-04-08 10:38:16 +02:00
Francisco Molina
478624cbb6
driver/sgp30: initial import 2021-04-08 10:14:30 +02:00
Leandro Lanzieri
e7732d9a00
Merge pull request #16217 from fjmolinas/pr_driver_sm_pwm_01c
drivers/sm_pwm_01c: initial import
2021-04-08 09:04:38 +02:00
Francisco Molina
240c016143
drivers/sm_pwm_01c: initial import 2021-04-07 12:05:09 +02:00
Nicolas Harel
c710aff9c6 drivers/ds3231: add alarm support
tests/driver_ds3231

drivers/ds3231: add alarm support with IRQ

drivers/ds3231: alarm support and documentation

drivers/ds3231: alarm interrupt with mutex

drivers/ds3231: alarm, _unlock function

fixup! drivers/ds3231: add alarm support
2021-04-06 14:48:31 +02:00
2fb6a11407
drivers/flashrom: remove deprecated flashrom API (since 2017) 2021-04-05 17:06:24 +02:00
0b5b9bd80f
drivers: add implementation for sx126x lora radio 2021-03-30 16:12:39 +02:00
Marian Buschsieweke
1d0ee42046
drivers/at86rf2xx: make TX/RX IRQs read only
This brings the implementation in sync with the API.
2021-03-22 08:15:54 +01:00
Marian Buschsieweke
08063bebfe
drivers/at86rf215: make TX/RX IRQs read only
This brings the implementation in sync with the API.
2021-03-22 08:15:54 +01:00
Marian Buschsieweke
fba104c2ce
drivers/kw2xrf: make TX/RX IRQs read only
This brings the implementation in sync with the API.
2021-03-22 08:15:54 +01:00
Marian Buschsieweke
a18ec987bf
drivers/mrf24j40: make TX/RX IRQs read only
This brings the implementation in sync with the API.
2021-03-22 08:15:54 +01:00
Marian Buschsieweke
52c8be9da9
drivers/mrf24j40: drop unused define
MRF24J40_OPT_REQ_AUTO_ACK is never used and wrongly documented. Let's
just drop it.
2021-03-22 08:15:53 +01:00
chrysn
3a719c69c7 doc/SAUL: State expectations on blocking and interrupts 2021-03-21 14:35:01 +01:00
Marian Buschsieweke
40859b61f0
drivers/periph_spi: fix Doxygen commands
use @retval to document individual return values rather than @return
2021-03-17 10:34:20 +01:00
benpicco
2614831c86
Merge pull request #16137 from maribu/stm32_rtt
drivers/periph_rtt: add periph_rtt_set_counter  feautre
2021-03-08 16:53:57 +01:00
Francisco
d369dffb4f
Merge pull request #14339 from aabadie/pr/sys/auto_init_screen
drivers: sys/auto_init: pkg/lvgl: setup disp_dev, touch_dev and lvgl auto_init
2021-03-04 19:23:32 +01:00
Marian Buschsieweke
b9cb75fedf
drivers/periph/rtt: add periph_rtt_set_counter feature
Some periph_rtt implementations do not provide `rtt_set_counter()`. This
adds `periph_rtt_set_counter` as feature to allow testing for its
availability. The feature is provided at CPU level if periph_rtt is
provided by the board for all CPUs implementing `rtt_set_counter()`.
2021-03-04 18:05:06 +01:00
benpicco
753c833109
Merge pull request #15871 from jan-mo/feat/20210120_lis2dh12_extension
driver_lis2dh12: functionality extension
2021-03-04 15:20:55 +01:00
Jan Mohr
4598602176 drivers/lis2dh12: functionality extension 2021-03-04 00:43:04 +01:00
c1c9785da1
drivers/usbdev_mock: add to drivers_misc category 2021-03-03 18:09:39 +01:00
d227a117a2
drivers/screen_dev: add a bit of documentation 2021-03-03 18:04:42 +01:00
1362c61abb
drivers/stmpe811: add runtime configurable event callback 2021-03-03 18:00:49 +01:00
528d884b5d
drivers/touch_dev: extend API to set event callback function 2021-03-03 18:00:49 +01:00
0f9693b18f
drivers/touch_dev: add touch driver registry 2021-03-03 18:00:48 +01:00
f4bc980236
drivers/disp_dev: add display driver registry 2021-03-03 18:00:48 +01:00
Jean Pierre Dudey
a30184b5a9
Merge pull request #15896 from maribu/spi-api-cleanup
drivers/periph/spi: clean up error codes and doc
2021-02-27 01:09:49 +01:00
Martine Lenders
de4ee0f934
Merge pull request #15562 from benpicco/socket_zep_register
socket_zep: register with netdev, provide EUI-64 as command line parameter
2021-02-20 20:32:01 +01:00
Memiks
e6cb7392d7 drivers/bmx280: remove unused parameter spi3w_en #15954 2021-02-16 09:04:08 +09:00
Marian Buschsieweke
acd9f4cc1a
drivers/periph_ptp: fix adjustment API
The clock adjustment API only used a 16 bit integer for speed correction. This
is to course grained to allow compensating clock drifts at high accuracy.
Using a 32 bit integer instead would allow to fix for a drift of up to
about 1 nanosecond drift per each 5 seconds.

That ought to be enough for anyone! (*cough* *cough*)
2021-02-10 09:55:52 +01:00
Francisco Molina
85caf7cbc7
drivers/flashpage: add FLASHPAGE_ERASE_STATE definition 2021-02-09 11:11:46 +01:00
benpicco
a5e5ec5215
Merge pull request #15897 from bergzand/pr/riotboot/flashwrite_remove_flashpage_size
riotboot/flashwrite: Remove last dependencies on flashpage size
2021-02-01 17:21:09 +01:00
Jens Wetterich
533428448d drivers/ina3221: Add docs to SAUL group 2021-02-01 14:31:11 +01:00
Jens Wetterich
8dff7b57ad drivers/ina3221: Fix compatibility with C++ 2021-02-01 14:31:11 +01:00
c93c3e46d6
flashpage: Support non uniform flashpage sizes 2021-02-01 14:27:22 +01:00
Marian Buschsieweke
ae79f5fc59
drivers/periph/spi: clean up error codes and doc
- Use negative errno as error codes, rather than home-grown enums
    - Update the home-grown enum with negative errno codes for backward
      compatibility and mark it deprecated
- Update API doc to use negative errno codes
- Fix various style issues in Doxygen doc
    - Use `@retval` to document specific return values instead of abusing
      `@return` for this
    - Align parameters to proper indent level
2021-02-01 11:02:14 +01:00
Benjamin Valentin
e8bbe1d1c7 mtd: re-add mtd_write_page()
Add a write_page() command that performs a read-modify-write cycle
if necessary.
2021-01-28 11:51:28 +01:00
Benjamin Valentin
60eb75da3c mtd: rename mtd_write_page() -> mtd_write_page_raw()
The function will not abstract away the behavior of the underlying media
(e.g. whether only 1 -> 0 writes are possible without erase), thus rename it.
2021-01-26 11:48:26 +01:00
Benjamin Valentin
d8918c24fa socket_zep: register with netdev 2021-01-25 22:59:01 +01:00
Fabian Hüßler
7d618afa17 nrf24l01p_ng: make use of netdev_register() 2021-01-24 20:49:39 +01:00
Fabian Hüßler
063ff60890 drivers/include: add NETDEV_NRF24L01P_NG 2021-01-24 20:49:39 +01:00
fabian18
f7a77ebb04 drivers/nrf24l01p_ng: netdev driver for nrf24l01+
The driver uses the netdev interface. Due to the limited
capabilities of the transceiver (32 byte FIFO and no source address in the layer2 frame),
it relies on 6LowPAN compression and adds the source address to the frame for that.
2021-01-24 20:49:39 +01:00
Jean Pierre Dudey
273721efc0 drivers: add bq2429x power management IC driver
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-01-22 19:30:12 +01:00
0eba27161e
cst816s: Initial include of cst816s touch screen driver 2021-01-14 18:17:51 +01:00
Francisco Molina
960e0c5f43
sys/ieee802154/submac: add handling of invalid CRC frames 2021-01-13 23:42:45 +01:00
ac9d8e603e
drivers/pca9685: fix typo (oscilator => oscillator) 2021-01-08 10:15:33 +01:00
Martine Lenders
640ff4f5d8
Merge pull request #15609 from maribu/ethernet-rx-timestamp
sys/net/gnrc/netif/ethernet: Support RX timestamp
2021-01-07 19:53:52 +01:00
Marian Buschsieweke
f6bca70d11
sys/net/gnrc/netif/ethernet: Support RX timestamp 2021-01-06 20:30:14 +01:00
quangphhr
afa723b2f7 drivers/hsc: add driver for honeywell pressure and temperature sensor 2021-01-06 10:22:17 +01:00
Marian Buschsieweke
e5a0154255
Merge pull request #14660 from maribu/netdev_confirm_send
drivers/net: Add netdev_driver_t::confirm_send
2021-01-05 16:11:20 +01:00
Marian Buschsieweke
53fcb97b2f
drivers/net: Add netdev_driver_t::confirm_send
Changed the API of `netdev_driver_t`:

- The `send()` function should no longer return the number of bytes and should
  not block
- The upper layer now must call the new `confirm_send()` function after
  calling `send()`; either busy waiting until something different to `-EBUSY`
  is returned, or after `NETDEV_EVENT_TX_COMPLETE` was signaled

During transition to the new API, the upper layer must remain backward
compatible and must assume the legacy API if `netdev_driver_t::confirm_send()`
is `NULL`.
2021-01-05 15:34:11 +01:00
Leandro Lanzieri
675ddb6ccc
drivers/pn532: use pseudomodules to select i2c or spi 2021-01-04 16:55:16 +01:00
Jens Wetterich
e36a0d883a esp_common/esp_now: use netdev_register() 2020-12-23 19:44:57 +01:00
benpicco
770bda165a
Merge pull request #15571 from iosabi/drv_si1133
drivers/si1133: New SI1133 UV/IR/Ambient light driver
2020-12-14 08:41:00 +01:00
iosabi
ce76125a22 drivers/si1133: New SI1133 UV/IR/Ambient light driver
The SI1133 from Silicon Labs is a UV Index Sensor and Ambient Light
Sensor in a small 2x2 mm DFN package. The sensor can measure
independently ultra violet (UV) light, infra red (IR) light and
ambient light, however the ambient light is also influenced by the
IR light requiring compensation from the IR readings.

The SI1133 is quite different from other Silicon Labs chips in RIOT OS
and therefore needs its own driver. In particular, the SI1133 has 7
different photodiode configurations to read but only 6 channels to
read them in parallel so only some channels can be read each time.

This patch implements a new driver allowing to read the data directly
and a saul interface for the three kinds of light source. There are
many configuration options including interrupts and continous modes
that are left out of this initial driver.
2020-12-14 03:13:23 +00:00
dylad
7cbaa3f890 net/netdev: create SAM0 Ethernet entry in netdev_type_t 2020-12-13 21:41:20 +01:00
chrysn
272c8d29cc
Merge pull request #13908 from benpicco/periph/dac_play
drivers/periph_common: dac: add dac_play()
2020-12-11 07:31:44 +01:00
benpicco
1477a340fe
Merge pull request #15150 from fabian18/ieee802154_security
Initial implementation of IEEE 802.15.4 security
2020-12-09 14:14:27 +01:00
Akshai M
bfd3a903fb drivers/rn2xx3 : r/LORAMAC_DEFAULT_AR/CONFIG_RN2XX3_DEFAULT_AR
Move 'LORAMAC_DEFAULT_AR' to drivers/rn2xx3 i.e
'RN2XX3_DEFAULT_AR'
Move 'RN2XX3_DEFAULT_AR' to 'CONFIG_' namespace

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-12-08 11:33:44 +01:00
Benjamin Valentin
ceb3f8443a drivers/dac_dds: add module to play sample buffer over a DAC
This adds an API function to play a buffer of Audio samples using a DAC.

Double buffered operation is supported by specifying a callback that will
be called when the next buffer can be queued with dac_dds_play().
2020-12-04 23:12:32 +01:00
Fabian Hüßler
1b5bcec554 drivers/netdev: Add IEEE 802.15.4 security 2020-12-04 09:40:55 +01:00
Akshai M
d65a4b3f97 drivers/ili9341 : Update documentation 2020-12-03 14:20:34 +01:00
Akshai M
9f81956e41 drivers/ili9341 : Model 'CONFIG_ILI9341_LE_MODE' as BOOL 2020-12-03 14:20:34 +01:00
Akshai M
a322c6d4c0 drivers/ili9341 : Move 'ILI9341_VCOML' to 'CONFIG_' 2020-12-03 14:20:34 +01:00
Akshai M
d6935cd7bb drivers/ili9341 : Move 'ILI9341_VCOMH' to 'CONFIG_' 2020-12-03 14:20:34 +01:00
Akshai M
7bb83f9e01 drivers/ili9341 : Move 'ILI9341_GVDD' to 'CONFIG_' 2020-12-03 14:20:34 +01:00
benpicco
a80631a297
Merge pull request #15074 from maribu/ptp-clock
drivers/periph/ptp_clock
2020-12-03 09:59:07 +01:00
Marian Buschsieweke
7d1edd51f4
drivers/periph: Added PTP clock API 2020-12-02 17:53:00 +01:00
benpicco
665c07eb53
Merge pull request #15120 from benpicco/driver/at86rf215-trim
driver/at86rf215: add functions to configure trim & clock output at run-time
2020-12-02 16:53:02 +01:00
Benjamin Valentin
95d082a2be driver/at86rf215: add functions to set trim & clock output at run-time
To calibrate the at86rf215 radio, trim value has to be set at run-time
during board production.
Add two helper functions to control the trim value and clock output register.
2020-12-02 14:59:17 +01:00
Fabian Hüßler
c526a34770 sx127x: make use of netdev_register()
Call netdev_register() in sx127x_setup()
and pass the index in auto_init_sx127x()
and semtech_loramac_init()
2020-12-01 16:34:11 +01:00
Fabian Hüßler
8ca2e09d95 drivers/include: add NETDEV_SX127X 2020-12-01 16:34:06 +01:00
Marian Buschsieweke
56cf30172f
Merge pull request #15532 from fabian18/cc110x_netdev_register
drivers/cc110x: use netdev_register
2020-12-01 16:17:37 +01:00
Fabian Hüßler
39adf908ce cc110x: make use of netdev_register()
Call netdev_register() in cc110x_setup()
and pass the index in auto_init_cc110x()
2020-12-01 12:11:20 +01:00
Fabian Hüßler
320b1c4206 drivers/include: add NETDEV_CC110X 2020-12-01 12:06:12 +01:00
Benjamin Valentin
eb199d4c78 netdev: move definition of NETDEV_INDEX_ANY to netdev 2020-12-01 11:55:06 +01:00
benpicco
333fce44b4
Merge pull request #14973 from benpicco/driver/at86rf215-batmon
drivers/at86rf215: implement battery monitor, add power bus
2020-12-01 11:52:46 +01:00
Benjamin Valentin
a28a60f16c cpu/stm32: periph_eth: register with netdev 2020-11-29 23:10:37 +01:00
Francisco
14877443f7
Merge pull request #15494 from gdiribarne/bugfix/sfr04-avr-overflow
drivers/srf04: fix overflow on AVR
2020-11-26 11:14:15 +01:00
1d5e2e9cd9 all: remove traces of kernel_types.h
Automatically removed using:

    $ git grep -l kernel_types | xargs sed -i '/^#include .kernel_types/d'
2020-11-25 17:52:34 +01:00
0b801c4de0 all: adapt to moved sched defines 2020-11-23 16:56:34 +01:00
Gilles Diribarne
5a5c8507d4 drivers/sfr04: Use uncrustify 2020-11-22 23:12:40 +01:00
Gilles Diribarne
caa1ad822d drivers/sfr04: Fixed int overflow for AVR (arduino board) 2020-11-22 23:03:21 +01:00
benpicco
6cf6b47c27
Merge pull request #15445 from btcven/2020_11_05-gp2y10xx
drivers: add gp2y10xx dust sensor
2020-11-18 09:56:03 +01:00
Jean Pierre Dudey
e920a2e645 drivers: add gp2y10xx dust sensor
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-11-18 09:13:56 +01:00
Hauke Petersen
c4a8c45a3e periph/rtt: fix tick conversion macros 2020-11-16 10:00:24 +01:00
Benjamin Valentin
f9650bdbc3 drivers/at86rf215: implement Battery Monitor 2020-11-13 22:59:09 +01:00
benpicco
be9eb22bb8
Merge pull request #15106 from chrysn-pull-requests/saul-rgbleds
saul_pwm: auto-init'able RGB LEDs and dimmers
2020-11-13 18:22:30 +01:00
benpicco
d9598a0f54
Merge pull request #15412 from bergzand/pr/flashpage/merge_raw
periph_flashpage: Make pagewise API optional
2020-11-12 22:32:21 +01:00
41bbaa7442
flashpage: Make pagewise API optional
flashpage currently requires pagewise implementation with an optional
extension for per block writes (flashpage_raw). Most implementations
with flashpage_raw implement the pagewise access via the flashpage_raw
functions. This commit makes the flashpage raw the main access method
and adds an extension feature for the pagewise access.

The functions and defines are renamed to reflect this. The API is also
extended with a dedicated function for erasing a sector.
2020-11-11 22:26:33 +01:00
Hauke Petersen
8a31519558 drivers: add support for ds3231 RTC 2020-11-09 15:18:54 +01:00
Francisco
3e3da1217d
Merge pull request #15249 from aabadie/pr/tools/typo
tools/codespell: fix new typos and make it fail when typos are found
2020-11-03 15:01:20 +01:00
benpicco
9681c204d6
Merge pull request #14959 from benpicco/at86rf215-mr-fsk
drivers/at86rf215: implement MR-FSK
2020-11-03 11:26:24 +01:00