1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-17 22:12:44 +01:00
Commit Graph

1807 Commits

Author SHA1 Message Date
Gunar Schorcht
5a270fe521 drivers/netdev: add tinyUSB netdev 2023-02-01 21:57:23 +01:00
Hendrik van Essen
cdefa6934c drivers/mfrc522: add new driver 2023-01-31 21:05:07 +01:00
Silke Hofstra
6cb8356eb2 epd_bw_spi: add implementation for disp_dev 2023-01-31 19:50:11 +01:00
Silke Hofstra
f4791a0280 epd_bw_spi: add generic black and white SPI e-Paper display driver
Add an initial implementation of a generic driver for black and white
e-paper displays. Includes parameters for the IL3829 display controller.
2023-01-31 19:50:11 +01:00
Jose Alamos
91a299cb7d
drivers/mrf24j40: add support for IEEE 802.15.4 Radio HAL 2023-01-19 15:31:06 +01:00
Benjamin Valentin
b8a6988e79 drivers/wdt: add periph_wdt_auto_start for early watchdog
Add an option to enable the watchdog early to detect hangs during
initialisation.
2023-01-14 23:21:24 +01:00
Benjamin Valentin
81625fd5f2 doc: sort all stdio implementations into sys_stdio group 2023-01-13 11:08:22 +01:00
bors[bot]
385569c7bf
Merge #17810 #18348 #19120
17810: drivers/slipdev: implement sleep states r=benpicco a=benpicco



18348: sys/net/gnrc/pktbuf_static: make use of alignas() r=maribu a=maribu

### Contribution description

Since we are now using C11, we can make use of `alignas()` provided by `<stdalign.h>` to make the alignment code easier to read.

### Testing procedure

I didn't expect this to change binaries, but is safes 4 bytes. `elf_diff` shows that the compiler (at least GCC 11.3.0) was not able to detect that `gnrc_pktbuf_static_buf` was just an alias for `_pktbuf_buf`. That makes sense since it would be hard without LTO to rule out external writes to `gnrc_pktbuf_static_buf`, unless one would have added a `const` (to the pointer, not to the data the pointer points to).

The [output of `elf_diff`](https://mari-bu.de/pr_18348_gnrc_pktbuf_static_elf_diff.html) looks otherwise quite unscary.

Also:

```
$ make BOARD=nucleo-f767zi -C tests/unittests/ tests-pktbuf flash test
make: Entering directory '/home/maribu/Repos/software/RIOT/tests/unittests'
Building application "tests_unittests" for "nucleo-f767zi" with MCU "stm32".
[...]
Welcome to pyterm!
Type '/exit' to exit.
READY
s
START
.............................................
OK (45 tests)

make: Leaving directory '/home/maribu/Repos/software/RIOT/tests/unittests'
```

### Issues/PRs references

None

19120: CI: seperate check-labels and check-commits workflows r=maribu a=kaspar030



Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2023-01-10 15:44:57 +00:00
Benjamin Valentin
bb084612f5 drivers/slipdev: implement sleep states 2023-01-10 12:24:30 +01:00
J. David Ibáñez
d741f71ebd drivers/ds3231 fix docs, alarms are supported
Remove the text stating that setting alarms is not yet supported,
because it is, since PR #16180

Also document DS3231_PARAM_INT_PIN
2022-12-27 17:21:55 +01:00
bors[bot]
b71df25282
Merge #19048
19048: drivers/sht2x: some small improvements r=benpicco a=gschorcht

### Contribution description

This PR provides the following improvements for the SHT2x driver:

- migration to `ztimer` 8a605517f5 and 367549940de3bd8910052334c34af028d4992741
- floating point arithmetics replaced by integer arithmetics f424caebbfec9f2be56aa2337c6cc09dba5b97d6
- fix of sleep times (typical times replaced by maximum times as recommended by the datasheet) 13615c72094b8541ee62c3e8ed5a36dc4d725fd0
- release of the I2C bus during sleep 9415c216cfab734520ef98dd00b350c22f342c60
- Kconfig configuration of sensor parameters added dadbbcb4c328350893db53ba6743d03cb34ecc1c
- no-hold mode is now the default mode instead of the hold mode

Regarding the sleep times: The typical measurement times were used as sleep times. According to the datasheet, typical measurements are only recommended for calculating energy consumption, while maximum values should be used for calculating waiting times in communication. Therefore, the typical time values were replaced by maximum time values for the sleep in no-hold mode.

Regarding the hold mode: In hold mode, the sensor uses clock stretching until the measurement results can be read by the MCU. This blocks both the I2C bus and the MCU during the entire measurement, which can take up to 85 ms if I2C is not interrupt-driven. Therefore, the no-hold mode is now used by default, where the calling thread sleeps during the measurement, but the MCU is not completely blocked. Furthermore, the hold mode requires that the MCU supports clock stretching. Even if the MCU supports clock stretching, the hold mode with clock stretching doesn't seem to work with different MCUs. I couldn't get it working for STM32 and ESP32.

Regarding the I2C bus during sleep: If the no-hold mode is used and the calling thread sleeps up to 85 ms, it makes sense to release the I2C bus until the measurement results are available.

### Testing procedure

`tests/driver_sht2x` should still work.

### Issues/PRs references


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2022-12-15 12:42:30 +00:00
Gunar Schorcht
43819464f7 drivers/sht2x: fix measurement duration
According to the data sheet, typical times are recommended for calculating energy consumption, while maximum values should be used for calculating waiting times in communication. Therefore, the typical time values are replaced by maximum time values for sleep.
2022-12-14 21:47:32 +01:00
Jue
8f174bbef2 ieee802154_submac: migrate to ztimer 2022-12-14 16:41:27 +01:00
Jose Alamos
bc1043921d
drivers/at86rf2xx: move TX power logic to netdev 2022-12-06 15:40:43 +01:00
Jose Alamos
fc43cec430
drivers/at86rf2xx: remove unused send function 2022-12-06 15:40:20 +01:00
Jose Alamos
5207a82e03
drivers/at86rf2xx: simplify channel-page logic 2022-12-06 15:40:18 +01:00
Jose Alamos
ba6c0d845e
drivers/at86rf2xx: remove unused getters 2022-11-29 11:16:16 +01:00
Jose Alamos
5a865c3a6b
drivers/at86rf2xx: add HAVE_RETRIES_REG macro 2022-11-25 14:01:44 +01:00
Jose Alamos
22c6d0242a
drivers/at86rf2xx: add HAVE_ED_REGISTER macro 2022-11-25 14:01:44 +01:00
Jose Alamos
82d3324e63
drivers/at86rf2xx: add HAVE_SUBGHZ macro 2022-11-25 14:01:44 +01:00
Jose Alamos
58ce0743c6
drivers/at86rf2xx: add TX_START macro 2022-11-25 14:01:43 +01:00
Jose Alamos
b6b8dc1958
drivers/at86rf2xx: add AT86RF2XX_IS_PERIPH macro 2022-11-25 14:01:39 +01:00
benpicco
2a934c9434
Merge pull request #18733 from bergzand/pr/driver/matrix_keypad
matrix_keypad: Add matrix-style keypad module
2022-10-28 20:46:13 +02:00
7f3cbfdfc7
matrix_keypad: Add driver for a matrix keypad 2022-10-28 10:03:37 +02:00
benpicco
e6835feaee
Merge pull request #18753 from keestux/driver-at-add-more-functions
drivers/at: add a function read a response plus the OK
2022-10-17 22:42:12 +02:00
Kees Bakker
94474236f1 drivers/at: add a function read a response plus the OK
There are many modem commands for which you get a line of response followed
by an OK. Take for example the AT+CGSN command to get the IMEI of a Ublox
G350.
  >> AT+CGSN
  << 004999010640000
  << OK
2022-10-16 14:05:31 +02:00
Gunar Schorcht
41b0a3efae drivers/usbdev_synopsys_dwc2: add internal UTMI HS PHY support 2022-10-16 11:35:42 +02:00
Gunar Schorcht
95f74faf6b drivers/usbdev_synopsys_dwc2: add ULPI HS PHY support 2022-10-06 06:26:22 +02:00
Gunar Schorcht
7db66e49b3 drivers: add USB OTG FS/HS driver for Synopsys DWC2 IP core 2022-09-27 01:00:57 +02:00
benpicco
8d824bca02
Merge pull request #18604 from benpicco/codespell2
codespell: fix remaining issues
2022-09-16 22:50:00 +02:00
benpicco
1b940d90b0
Merge pull request #18603 from benpicco/cdc_ecm-netdev-register
USBUS/cdc_ecm: register with netdev
2022-09-16 20:25:54 +02:00
Benjamin Valentin
6e7d5ae2d3 codespell: fix remaining issues 2022-09-16 14:00:35 +02:00
Benjamin Valentin
aef967fdef USBUS/cdc_ecm: register with netdev 2022-09-16 13:22:42 +02:00
Marian Buschsieweke
702c36c533
drivers/sht1x: fix doccheck
- replace auto-generated patterns with generic ones
- fix `warning: return value '\-EBADMSG' of sht1x_read has multiple
  documentation sections`
2022-09-16 11:12:27 +02:00
Karl Fessel
da51932737 boards: add some missing whitespaces for static tests 2022-09-14 15:11:14 +02:00
Karl Fessel
05f114d0af doc: fix unbalaced grouping
- most were trivial
    - missing group close or open
    - extra space
    - no doxygen comment
- name commad might open an implicit group
    this hould also be implicit cosed but does not happen somtimes
- crazy: internal declared groups have to be closed internal
2022-09-14 15:05:25 +02:00
Marian Buschsieweke
b15af47f34
drivers/sdcard_spi: make 8-bit safe
- replace all `int`s and `unsigned`s with integers with fixed width
- replaced all signed integers of sizes with unsigned ones (sizes
  cannot be negative)
- made bitshifts 8-bit safe (e.g. `1 << 24` is valid on 32-bit, but
  undefined behavior on 8-bit, as a 16 bit wide `int` would be shifted
  by more than the type width)
- use `void *` / `const void *` for data buffers to ease use
2022-09-11 10:27:40 +02:00
benpicco
28cedd52a0
Merge pull request #18201 from benpicco/slip_dose_rxqueue
drivers/{dose, slipdev, sam0_eth}: generate RX event for queued packets
2022-08-26 13:25:13 +02:00
Jose Alamos
744cf54900
drivers/kw2xrf: remove unused kw2xrf_setup function 2022-08-25 15:44:34 +02:00
Jose Alamos
4ebcd7c055
drivers/kw2xrf: add IEEE 802.15.4 Radio HAL support
Co-authored-by: Michel Rottleuthner <michel.rottleuthner@haw-hamburg.de>
2022-08-15 12:11:03 +02:00
benpicco
307ece1bf5
Merge pull request #18391 from gschorcht/cpu/esp/fix_netdev_register
cpu/esp: fix netdev register
2022-08-02 21:38:24 +02:00
benpicco
e1e99c3bf1
Merge pull request #18108 from benpicco/drivers/dose-rxbuf
drivers/dose: make RX buffer size configurable
2022-08-02 10:51:17 +02:00
Gunar Schorcht
14dde4a835 drivers/netdev: add NETDEV_ESP_WIFI type 2022-08-02 09:33:50 +02:00
Gunar Schorcht
184e411355 drivers/netdev: add NETDEV_ESP_ETH type 2022-08-02 09:33:50 +02:00
Leandro Lanzieri
4a3231f763
drivers/kw2xrf: add setup function with global index
This index is used to register the network device.
2022-07-11 09:24:59 +02:00
eduazocar
e6a7039de4 drivers/at86rf2xx: Adding Switch SRT to Random Number Generator 2022-07-03 17:44:47 -04:00
Benjamin Valentin
bede0615ad drivers/mtd: fix doc of mtd_read_page(), mtd_write_page_raw()
The function allows for offsets greater than the page size.
2022-06-20 14:59:41 +02:00
Benjamin Valentin
86f55c5637 drivers/slipdev: generate RX event for queued packets 2022-06-17 10:50:31 +02:00
benpicco
cb5e19beb5
Merge pull request #17979 from maribu/drivers/netdev_ieee802154
drivers/netdev_ieee802154: drop duplicate struct member
2022-06-02 00:47:56 +02:00
Karl Fessel
6e41c685b2
Merge pull request #17935 from dp1/ir_nec
drivers/ir_nec: NEC remote receiver implementation
2022-06-01 13:44:51 +02:00
Dario Petrillo
18f8a476e6
drivers/ir_nec: ir remote implementation 2022-05-31 17:58:39 +02:00
Marian Buschsieweke
16f859dafd
drivers/saul: use const qualifier for data to write
This makes life easier when calling e.g. `saul_reg_write()` with data
stored in flash.

As now the signatures for reading and writing differ (in that `const`
qualifier only), `saul_notsup()` is split into `saul_write_notsup()`
and `saul_read_notsup()`. However, one is implemented as a symbol alias
of the other, so that ROM consumption remains unchanged.
2022-05-23 08:35:27 +02:00
chrysn
dc7bc9f854
Merge pull request #17683 from chrysn-pull-requests/mtd-granularity
mtd: Introduce write granularity
2022-05-20 11:52:03 +02:00
Aymeric Brochier
09ca09adbf drivers/sx1280: initial import 2022-05-18 17:06:12 +02:00
Benjamin Valentin
d0ca6294ea drivers/dose: make RX buffer size configurable
To benefit from the chunked ringbuffer if large frames are being sent,
we need to allocate more than one ethernet frame length to it.

Rename the define and make it overwriteable by the user.
2022-05-15 14:43:47 +02:00
Marian Buschsieweke
bae91c1660
Merge pull request #17723 from benpicco/periph_timer_periodic-set_stopped
drivers/periph/timer: add TIM_FLAG_SET_STOPPED flag
2022-05-03 12:06:37 +02:00
Marian Buschsieweke
1fd4d41d76
driver/netdev_ieee802154: Make timestamp optional
Also remove duplicate struct member.
2022-04-22 14:33:56 +02:00
Marian Buschsieweke
23855e140e
drivers: Add periph/gpio_ll API
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
Co-authored-by: chrysn <chrysn@fsfe.org>
Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2022-04-22 08:39:04 +02:00
56359d6fb1
Merge pull request #17930 from aabadie/pr/drivers/lcd_rotation_rework
drivers/lcd: rework rotation management and enable it for st7735
2022-04-21 14:31:49 +02:00
df95c6ca83
Merge pull request #17945 from fjmolinas/pr_mcp2515_cleanups
drivers/mcp2515: fixes and cleanups
2022-04-20 10:42:08 +02:00
Francisco Molina
6959f5eb78 drivers/mcp2515: use ztimer 2022-04-20 09:23:50 +02:00
85ba0597f7
drivers/lcd: rework rotation modes and enable it with st7735 2022-04-19 16:22:10 +02:00
646fb1135a
Merge pull request #17925 from aabadie/pr/drivers/lcd_params_rework
drivers/lcd: slightly rework params to expose offset values to ili9341 driver
2022-04-19 16:21:42 +02:00
Francisco Molina
cd21bc00da drivers/candev_mcp2515: set default bitrate to 500kbps 2022-04-19 15:56:45 +02:00
63b25483c9
Merge pull request #17921 from aabadie/pr/drivers/disp_dev_coordinates
drivers/disp_dev: use struct to store display area coordinates
2022-04-19 12:48:12 +02:00
a2fc925a0e
drivers/cst816s: add touch_dev interface 2022-04-14 11:31:35 +02:00
81cf5dba53
drivers/lcd: apply offset parameters to ili9341 2022-04-13 12:55:16 +02:00
36211f3fae
drivers/disp_dev: use struct to store display area coordinates 2022-04-13 12:49:58 +02:00
Francisco Molina
c5cc2966ff
drivers/ili9341: use common lcd driver 2022-04-12 12:39:00 +02:00
Francisco Molina
827fa976a6
driveres/st7735: add driver based on common lcd driver 2022-04-12 12:38:59 +02:00
Francisco Molina
8f2fa772e9
drivers/lcd: add common driver for lcd display 2022-04-12 12:35:02 +02:00
chrysn
5221ce278e
Merge pull request #17860 from Ollrogge/deprecate_flashpage
periph/flashpage: deprecate *_free functions
2022-03-31 20:42:01 +02:00
Ollrogge
4974790bad periph/flashpage: deprecate *_free functions 2022-03-31 17:59:54 +02:00
Ollrogge
a834cc9acf periph/flashpage: activate FLASH_WRITABLE_INIT documentation 2022-03-31 17:59:44 +02:00
chrysn
52ea93ef03 drivers/mtd_mapper: Add write_size 2022-03-31 10:58:52 +02:00
chrysn
882f76ab01 drives/mtd_flashpage: Configure write_size in MTD device 2022-03-31 10:52:34 +02:00
chrysn
9ec42492da mtd: Introduce write_size, setting no-rewrite policy
... with flags defining more clearly which kinds of overwrites are OK

Co-authored-by: benpicco <benpicco@googlemail.com>
2022-03-31 10:50:30 +02:00
chrysn
df9226fb80 mtd doc: Editorial fix 2022-03-31 10:50:30 +02:00
Benjamin Valentin
d800cca1c3 drivers/atwinc15x0: register with netdev 2022-03-30 16:07:29 +02:00
benpicco
1133d04de1
Merge pull request #17813 from leandrolanzieri/pr/tests/eth_drivers_rework
tests: rework eth drivers
2022-03-28 18:15:27 +02:00
Gunar Schorcht
753b435cb5
Merge pull request #17854 from benpicco/drivers/atwinc15x0-sleep
drivers/atwinc15x0: enable sleep state
2022-03-25 16:43:27 +01:00
Francisco
a10b1572aa
Merge pull request #17627 from benpicco/mtd_flashpage_t
drivers/mtd_flashpage: add mtd_flashpage_t type
2022-03-25 16:24:04 +01:00
Benjamin Valentin
b28738c11c drivers/atwinc15x0: enable sleep state
This allows the interface to enter SLEEP state in which it only
consumes 4µA.
2022-03-24 14:04:53 +01:00
Leandro Lanzieri
a2e5934ec9
drivers/encx24j600: introduce setup function with index 2022-03-24 09:32:10 +01:00
Leandro Lanzieri
5f7a906b95
drivers/w5100: introduce setup with index 2022-03-24 09:30:42 +01:00
benpicco
1e66baf94b
Merge pull request #17699 from viktorbatista/shtc3
drivers/shtcx: converted the shtc1 driver into shtcx and added shtc3 support
2022-03-18 14:05:42 +01:00
benpicco
82b0e08745
Merge pull request #10082 from gschorcht/drivers_l3gd20h
drivers: add driver for L3GD20H 3-axis gyroscope
2022-03-18 08:10:24 +01:00
chrysn
facb5e633f
Merge pull request #17436 from Ollrogge/reserve_flash
cpu: add flash_writable section to linker script
2022-03-17 21:44:32 +01:00
Ollrogge
6ab1fb9a09 periph/flashpage: Add FLASH_WRITABLE_INIT macro 2022-03-17 19:46:00 +01:00
Gunar Schorcht
1569299c92 drivers: support for ST L3Gxxxx 3-axis gyroscope family 2022-03-17 18:34:57 +01:00
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