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

3518 Commits

Author SHA1 Message Date
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
a471d947f0 drivers/saul: add PCF857X driver 2021-12-04 14:11:04 +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
Marian Buschsieweke
c97a2119f3
drivers/mcp2515: use container_of()
This silences false positives of -Wcast-align
2021-12-03 10:12:35 +01:00
Francisco
215fb49446
Merge pull request #17288 from leandrolanzieri/pr/drivers/ili9341/add_kconfig_feature
drivers/ili9341/Kconfig: add feature to indicate hardware
2021-12-03 00:46:29 +01:00
Francisco
662aba4680
Merge pull request #17307 from leandrolanzieri/pr/sys/ztimer/kconfig/fix_compat_deps
sys/ztimer/kconfig: enable xtimer compat only with timer backend
2021-12-02 14:52:30 +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
Leandro Lanzieri
004da59672
sys/ztimer/kconfig: enable xtimer compat only with timer backend
This also moves the selection of MODULE_ZTIMER_PERIPH_TIMER from
MODULE_ZTIMER_USEC to the visible symbol ZTIMER_USEC.
2021-12-02 09:38:06 +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
25d1e2daa2
pkg/driver_bme680: migrate to ztimer 2021-12-01 17:54:55 +01:00
Francisco
7a8f840627
Merge pull request #17303 from aabadie/pr/drivers/remove_useless_xtimer_includes
drivers: remove some useless xtimer includes
2021-12-01 13:46:08 +01:00
1e2d53987b
drivers/si114x: remove useless xtimer include 2021-12-01 11:29:32 +01:00
Leandro Lanzieri
7b35d6e0f0
drivers/sht1x: rework Kconfig 2021-12-01 10:14:35 +01:00
Leandro Lanzieri
371161548c
drivers/ltc4150/kconfig: add feature 2021-12-01 10:14:35 +01:00
a079ec818b
drivers/sds011: remove useless xtimer include 2021-12-01 10:06:25 +01:00
c6bf3fc897
drivers/hmc5883l: remove useless xtimer include 2021-12-01 10:06:24 +01:00
51638c0ba1
drivers/hts221: remove useless xtimer include 2021-12-01 10:06:24 +01:00
f2dcaee7bd
drivers/grove_ledbar: remove useless xtimer include 2021-12-01 10:06:24 +01:00
9ad52ec7eb
drivers/feetech: remove useless xtimer include 2021-12-01 10:06:24 +01:00
06211f967b
drivers/dfplayer: remove useless xtimer include 2021-12-01 10:06:24 +01:00
03770e36e7
drivers/tsl2561: remove useless xtimer include 2021-12-01 10:06:24 +01:00
557e929bdb
drivers/vcnl40x0: remove useless xtimer include 2021-12-01 10:06:23 +01:00
e4ab484bcb
drivers/veml6070: remove useless xtimer include 2021-12-01 10:06:23 +01:00
86a388a280
drivers/ws281x: remove useless xtimer include 2021-12-01 10:06:23 +01:00
Francisco Molina
1ef9ca8a6f drivers/soft_spi: remove nanosleep 2021-11-30 10:31:22 +01:00
Gunar Schorcht
8794b357a1
Merge pull request #17289 from leandrolanzieri/pr/drivers/sx126x/kconfig/rework
drivers/sx126x/Kconfig: rework model selection
2021-11-30 06:01:01 +01:00
benpicco
05b9c84369
Merge pull request #17255 from MrKevinWeiss/pr/kconfig/sam54
.murdock: Add same54-xpro to kconfig tests
2021-11-29 23:22:23 +01:00
benpicco
c84a40abc4
Merge pull request #17275 from gschorcht/drivers/periph_i2c_acquire_void
drivers/periph_i2c: let i2c_acquire return void
2021-11-29 11:44:59 +01:00
Leandro Lanzieri
f979ec5812
drivers/sx126x/Kconfig: rework model selection 2021-11-29 10:45:10 +01:00
Leandro Lanzieri
4512a25427
drivers/ili9341/Kconfig: add feature to indicate hardware 2021-11-29 10:38:48 +01:00
Kevin "Tristate Tom" Weiss
7f649aa505
Merge pull request #17270 from leandrolanzieri/pr/boards/saml21/model_kconfig
boards/saml21-based: model kconfig
2021-11-29 09:57:15 +01:00
MrKevinWeiss
fba9cad987
periph/gpio: Model TAMPER_WAKE for kconfig 2021-11-29 09:12:28 +01:00
MrKevinWeiss
f98128f0fb
boards/same54-xpro: Kconfig mtd model 2021-11-29 09:12:28 +01:00
MrKevinWeiss
51f92fa816
drivers/periph_spi: Kconfig SPI_ON_QSPI model 2021-11-29 09:12:27 +01:00
Gunar Schorcht
312c31dce5 drivers: update to new I2C API 2021-11-29 06:35:25 +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
Leandro Lanzieri
d962787043
Merge pull request #17274 from fjmolinas/pr_kconfig_nrf51
cpu/nrf51: model kconfig
2021-11-26 12:55:27 +01:00
Leandro Lanzieri
e44ff31560
drivers/sx127x/kconfig: rework modelling 2021-11-26 11:06:50 +01:00
Francisco Molina
3a4f30ec80 drivers/periph_common: add periph_uart_hw_fc 2021-11-26 10:39:40 +01:00
Francisco Molina
272ebd73f4 drivers/bmx055: add saul_default Kconfig selection 2021-11-26 10:39:40 +01:00
Francisco Molina
dbdaa776e4 drivers/mma8x5x: add HAVE_MMA8X5X 2021-11-25 12:33:40 +01:00
f47db6f2c2
drivers/dsp0401: migrate to ztimer 2021-11-23 15:58:56 +01:00
Leandro Lanzieri
7036388769
drivers/periph_common: add RTC ms module to Kconfig 2021-11-22 12:25:57 +01:00
Leandro Lanzieri
e525e23143
drivers/dfplayer: add no_strerror option to Kconfig 2021-11-22 12:25:57 +01:00
Leandro Lanzieri
0a19e58fcb
driver/at30tse75x/Kconfig: enable as default sensor when present 2021-11-22 12:25:31 +01:00
Leandro Lanzieri
e6789198f8
drivers/at24mac/Kconfig: enable as EUI provider when present 2021-11-22 12:25:31 +01:00
Leandro Lanzieri
7c5630032f
drivers/bmx280: refactor Kconfig model 2021-11-22 12:25:31 +01:00
Leandro Lanzieri
347fb256d5
drivers/at24mac: add Kconfig feature 2021-11-22 12:25:31 +01:00
Wouter Symons
5055d0993e drivers/dht: correct interpreting raw values 2021-11-20 14:55:02 +01:00
Benjamin Valentin
669104d841 cpu/sam0_common: SPI: don't perform DMA transfer for small buffers
Setting up a DMA transfer can take longer than sending out a buffer
byte by byte if the buffer is small.

DMA only shows advantages for large buffers, using it for every transfer
will cause a net slowdown.

Since we did not come up with a good way to determine the treshold based
on the SPI frequency, just use a fixed buffer for now so that DMA can be
used without slowing things down overall.
2021-11-19 17:22:51 +01:00
benpicco
24aa7eb6bf
Merge pull request #17191 from benpicco/drivers/periph-byte_type
drivers/periph: use uint_fast8_t as default type
2021-11-18 17:21:55 +01:00
Leandro Lanzieri
c5f9d50a57 socket_zep: add Kconfig 2021-11-18 14:17:29 +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
Benjamin Valentin
4664e63ad4 drivers/soft_uart: fix type usage 2021-11-18 10:14:51 +01:00
Leandro Lanzieri
6a1340da26
drivers/si70xx/kconfig: rework 2021-11-18 09:03:07 +01:00
Leandro Lanzieri
a8d679062a
drivers/ccs811/kconfig: add feature symbol 2021-11-18 09:03:07 +01:00
Leandro Lanzieri
ab84ec5134
drivers/bmx280: rework Kconfig model 2021-11-18 09:03:07 +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
Francisco
6dbf1c3013
Merge pull request #17102 from aabadie/pr/drivers/ads101x_ztimer
drivers/ads101x: migrate to ztimer
2021-11-15 09:56:14 +01:00
benpicco
7da50b05a9
Merge pull request #17190 from benpicco/drivers/dose-padding
drivers/dose: reduce struct padding
2021-11-12 20:45:24 +01:00
Karl Fessel
3d33cee551
Merge pull request #17137 from kfessel/p-ztimer-at30tse75x
driver/at30tse75x: port to ztimer_usec
2021-11-12 17:12:11 +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
Benjamin Valentin
965fa3ef10 drivers/dose: clarify timeout calculation 2021-11-11 14:43:07 +01:00
Benjamin Valentin
32c29bf062 drivers/dose: fix standby mode
Previously we would not disable the sense pin, this meant that
a node could still wake up if the standby pin is not connected.

Properly disable sensing when in standby and wait for a state
transition to IDLE to avoid aborting a reception and messing up the
DOSE internal state.
2021-11-11 14:33:55 +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
Francisco
fb4947937f
Merge pull request #17169 from gschorcht/doc/fix_ccs811_doc
drivers/ccs811: fix of documentation
2021-11-10 08:41:26 +01:00
5d3a4d63d8 drivers/ds18.h: add missing stdint.h include 2021-11-09 21:48:48 +01:00
Gunar Schorcht
8e88906445 drivers/ccs811: fix of documentation 2021-11-09 19:50:07 +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
benpicco
358abcf133
Merge pull request #17156 from maribu/drivers/encx24j600
drivers/encx24j600: fix unaligned memory access
2021-11-07 18:55:58 +01:00
Marian Buschsieweke
4c22716001
drivers/encx24j600: make cppcheck happy
Rename cmd buffer to cmd_buf to avoid shadowing outer function.
2021-11-07 08:46:06 +01:00
Marian Buschsieweke
9f1cece6ee
drivers/encx24j600: fix unaligned memory access 2021-11-06 20:33:43 +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
Karl Fessel
314bc00902 driver/at30tse75x: cleanup for static tests 2021-11-05 12:19:35 +01:00
Karl Fessel
fc8e6f01bd driver/at30tse75x: port to ztimer_usec 2021-11-05 12:19:35 +01:00
eaa007d412
Merge pull request #17135 from bergzand/pr/usbdev/fix_cppcheck_vera
usb(dev|bus): Fix static-check issues
2021-11-05 08:36:53 +01:00
7ce5d8a5dd
Merge pull request #17112 from aabadie/pr/drivers/rn2xx3_ztimer
drivers/rn2xx3: migrate to ztimer
2021-11-05 00:38:55 +01:00
Francisco
f08c5da7aa
Merge pull request #17101 from aabadie/pr/drivers/bmp180_ztimer
drivers/bmp180: migrate to ztimer
2021-11-04 15:25:48 +01:00
Karl Fessel
4d552e7e4a driver/at30tse75x: avoid direct use of xtimer_ticks 2021-11-04 14:16:07 +01:00
c918630e5e
usbdev_mock: Uncrustified and fixed static-check issues 2021-11-04 13:49:34 +01:00
295092bc29
drivers/rn2xx3: migrate to ztimer 2021-11-04 10:39:36 +01:00
Francisco Molina
5579fd2220 drivers/xbee: uncrustify 2021-11-02 21:46:19 +01:00
Francisco Molina
472f6495a8 drivers/xbee: migrate to ztimer_msec 2021-11-02 21:46:19 +01:00
9029e1caf9
drivers/bmp180: migrate to ztimer 2021-11-02 14:57:50 +01:00
3fa2154d48
drivers/ads101x: migrate to ztimer 2021-11-02 14:49:45 +01:00