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

1907 Commits

Author SHA1 Message Date
Mihai Renea
63e057cb50 drivers/at: Fix sync URC handling. at_send_cmd_get_lines() keeps EOL. 2024-03-20 14:32:09 +01:00
benpicco
17ec57ee6d
Merge pull request #20488 from dylad/pr/usbus/remove_deprecated_event
periph_usbdev: remove deprecated event flag
2024-03-19 19:49:04 +00:00
Dylan Laduranty
6fdc00a1b5 drivers/periph/usbdev: remove deprecated event flag
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2024-03-19 16:41:27 +01:00
Teufelchen
de176a8ef3
Merge pull request #20407 from chrysn-pull-requests/drop-rgbled
drivers/rgbled: Remove driver
2024-03-19 11:12:37 +00:00
Kasper Hjort Berthelsen
9ba76c38be drivers/mtd: update docs to match implementation
some parts reported retvals of number of bytes written, when it should be 0 on success.
2024-03-13 14:35:19 +01:00
benpicco
5c9240970e
Merge pull request #18608 from benpicco/mtd_flashpage-aux
drivers/mtd_flashpage: allow to define AUX slot on flash
2024-02-28 12:58:18 +00:00
Benjamin Valentin
e3819ca960 drivers/mtd_flashpage: define mtd_flash_aux_slot device 2024-02-28 11:49:05 +01:00
Benjamin Valentin
e8a4defafd drivers/pcf857x: stop (ab)using gpio_t
The driver only supports addressing GPIOs by their index, (ab)using
`gpio_t` for that will break on platforms that encode GPIO values
differently.
2024-02-27 16:31:59 +01:00
Gilles DOFFE
04c8d442da drivers/pcf857x: fix missing include kernel_defines.h
If not included before, IS_USED macro from modules.h is undefined,
leading to such errors:
  error: missing binary operator before token "("

Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
2024-02-24 16:55:05 +01:00
Mihai Renea
c58b71b899 drivers/at: parse +CME/+CMS responses and save error value 2024-02-22 12:21:25 +01:00
chrysn
fb2002d84a drivers/rgbled: Remove driver
The driver is largely unused, and redundant with the saul_pwm_rgb_params
functionality of SAUL.
2024-02-21 15:44:05 +01:00
chrysn
756a384442 makefiles, treewide: Remove MCU variable 2024-02-18 20:46:09 +01:00
Marian Buschsieweke
f68f977274
Merge pull request #20312 from maribu/drivers/periph_common/spi/transfer_u16
drivers/periph_spi: Add `spi_transfer_u16_be()`
2024-02-12 16:24:10 +00:00
Marian Buschsieweke
6fb369d4fc
drivers/periph/gpio_ll: Add API to switch direction
This adds two functions:

    void gpio_ll_switch_dir_output(gpio_port_t port, uword_t outputs);
    void gpio_ll_switch_dir_input(gpio_port_t port, uword_t inputs);

The first configures GPIO pins specified by a bitmask as output, the
second configures the specified pins as input.

The main use case is to allow bit-banging bidirectional protocols using
more basic GPIO peripherals that do not implement open drain mode, such
as found e.g. on MSP430, ATmega, or SAM0.

It is not intended to implement this feature on modern MCUs with
sophisticated GPIO peripherals.
2024-02-05 10:56:16 +01:00
Marian Buschsieweke
8bf61336a2
Merge pull request #20290 from maribu/drivers/periph/gpio_ll/features
drivers/periph_gpio_ll: Fix GPIO_DISCONNECT handling and add compile time feature checks
2024-02-05 07:30:54 +00:00
Marian Buschsieweke
87abafb13f
drivers/periph_spi: Add spi_transfer_u16_be()
This adds a helper function to exchange a 16 bit number that is to
be transferred in big endian order on the wire.
2024-02-02 13:05:02 +01:00
Martine Lenders
34fcffe37b
Merge pull request #20170 from miquel-b/lsm6dsxx
drivers/lsm6dsxx: refactoring Lsm6dsl into common driver Lsm6dsxx
2024-01-30 19:07:04 +00:00
Marian Buschsieweke
bd3f54ac8f
drivers/periph_gpio_ll: Add features for compile-time-checks
This adds the features

 - periph_gpio_ll_input_pull_down:
        To indicate support for input mode with internal pull down
 - periph_gpio_ll_input_pull_keep:
        To indicate support for input mode with internal resistor
        pulling towards current level
 - periph_gpio_ll_input_pull_up:
        To indicate support for input mode with internal pull up
 - periph_gpio_ll_disconnect:
        To indicate a GPIO can be disconnected
 - periph_gpio_ll_open_drain:
        To indicate support for open drain mode
 - periph_gpio_ll_open_drain_pull_up:
        To indicate support for open drain mode with internal pull up
 - periph_gpio_ll_open_source:
        To indicate support for open source mode
 - periph_gpio_ll_open_source_pull_down:
        To indicate support for open source mode with internal pull down
2024-01-23 15:03:34 +01:00
Marian Buschsieweke
00cb9668ae
drivers/periph_gpio_ll: Improve documentation
The documentation on the state `GPIO_DISCONNECT` was a bit vague. The
API doc said it should disconnect the GPIO from all peripherals, the
test also tested them for being electrically disconnected.

The documentation in both the test and the API is extended to point out
that a GPIO indeed SHOULD be in high impedance state, but that user
MUST NOT expect that this requested is honored by every implementation
and for every GPIO pin.

In the test it is also pointed out that failing the test for a GPIO
in the `GPIO_DISCONNECT` state being electrically disconnected is for
some pins expected, and that the test should be just run again with
different GPIOs. The test intentionally tests for a feature not provided
by every GPIO pin rather than warning on a failure: The effort to just
flash and run the test again with different GPIOs is relatively low, but
it does confirm correct behavior of the API.
2024-01-22 10:28:35 +01:00
Marian Buschsieweke
922276296e
drivers/periph/gpio_ll: pass gpio_conf_t by value
Now that `gpio_conf_t` is on all implemented platforms no larger than
a register, we can more efficiently pass it by value rather than via
pointer.
2024-01-21 09:19:08 +01:00
Marian Buschsieweke
2a00ec13e5
drivers/periph/gpio_ll: shrink gpio_conf_t
This commit optimizes the `gpio_conf_t` type in the following
regards:

- The "base" `gpio_conf_t` is stripped from members that only some
  platforms support, e.g. drive strength, slew rate, and disabling of
  the Schmitt Trigger are no longer universally available but
  platform-specific extensions
- The `gpio_conf_t` is now crammed into a bit-field that is 8 bit or
  16 bit wide. This allows for storing lots of them e.g. in
  `driver_foo_params_t` or `uart_conf_t` etc.
- A `union` of the `struct` with bit-field members and a `bits` is used
  to allow accessing all bits in a simple C statement and to ensure
  alignment for efficient handling of the type

Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2024-01-21 08:38:40 +01:00
Miquel-HAW
c79631c6a5 drivers/lsm6dsxx: Replace all lsm6dsl with lsm6dsxx in the files 2024-01-18 14:20:56 +01:00
Miquel-HAW
ce987ccddd drivers/lsm6dsxx: dir and file renaming 2024-01-18 14:20:56 +01:00
benpicco
d5f1fda70d
Merge pull request #20230 from benpicco/CONFIG_UART_DMA_THRESHOLD_BYTES
cpu/stm32: uart: don't do DMA for small transfers
2024-01-18 12:26:30 +00:00
Kevin "Tristate Tom" Weiss
7fef2e4b6f
Merge pull request #20214 from benpicco/CONFIG_SPI_DMA_THRESHOLD_BYTES
cpu/stm32/periph_spi: only perform DMA transfer above threshold
2024-01-04 17:32:02 +00:00
Benjamin Valentin
9710d4a23c drivers/periph: introduce CONFIG_UART_DMA_THRESHOLD_BYTES 2024-01-04 17:33:51 +01:00
benpicco
9b3c39ac76
Merge pull request #18066 from benpicco/slipdev-chunked_rb
drivers/slipdev: make use of chunked ringbuffer
2024-01-04 08:44:43 +00:00
Benjamin Valentin
1a888fe556 drivers/slipdev: make use of chunked ringbuffer 2024-01-02 14:41:11 +01:00
Benjamin Valentin
fbeb1f9a26 drivers/periph/spi: move DMA threshold to common code 2023-12-23 17:35:29 +01:00
chrysn
02285fd63a
drivers/periph: Add timer_poll feature and timer_poll_channel function 2023-12-19 11:13:41 +01:00
benpicco
208790a5f1
Merge pull request #20108 from benpicco/drivers/dose-uart_ondemand_tx
drivers/periph/uart: add periph_uart_tx_ondemand feature
2023-12-14 20:42:55 +00:00
Benjamin Valentin
fc9669bcfd drivers/periph/uart: add periph_uart_tx_ondemand feature 2023-12-14 18:30:38 +01:00
Gunar Schorcht
aabc331494 drivers/mtd: improve doc consistency for MTDs 2023-12-14 17:27:13 +01:00
Gunar Schorcht
c872f0e18e drivers/sdcard_spi: small changes in doc for consistency 2023-12-14 17:26:29 +01:00
benpicco
d13e6c4e83
Merge pull request #20180 from benpicco/mtd_sdmmc-erase
drivers/mtd_sdmmc: always enable the erase function
2023-12-14 13:42:33 +00:00
Benjamin Valentin
bfe26c68d3 drivers/mtd: introduce mtd_write_sector() 2023-12-14 14:27:19 +01:00
Benjamin Valentin
f34abe88a0 drivers/mtd_sdmmc: always enable the erase function 2023-12-14 14:27:08 +01:00
benpicco
6eac1e1761
Merge pull request #15380 from benpicco/mtd_drop_write
mtd/*: drop .write() if .write_page() is implemented
2023-12-13 20:35:53 +00:00
Benjamin Valentin
9855b02b07 mtd: drop .write() function
All MTD drivers should now implement the .write_page() function instead.
2023-12-13 17:46:43 +01:00
Benjamin Valentin
5acfb20d02 drivers/periph/uart: add functions to query RTS/CTS pins 2023-12-12 20:25:39 +01:00
Gunar Schorcht
9410ec705e drivers/mtd: replace checks by assert in mtd_dev_get
Assertions are used instead of returning a NULL pointer to detect errors in the MTD definition and access in the case that the return value is not evaluated.
2023-12-07 15:32:49 +01:00
Gunar Schorcht
4b6e13ce29 drivers/mtd_default: remove extern mtd_dev_t * declarations 2023-12-07 15:32:49 +01:00
Marian Buschsieweke
b917807444
drivers/periph_timer: add periph_timer_query_freqs
Allow accessing supported timer frequencies with a dedicated API.
This API needs to be implemented per platform and is available with
the feature periph_timer_query_freqs.
2023-12-05 16:07:24 +01:00
benpicco
ad7bf85712
Merge pull request #20113 from gschorcht/drivers/mtd/fix_xfa
drivers/mtd: fix the order of entries in the MTD pointer XFA `mtd_dev_xfa`
2023-11-27 19:00:04 +00:00
Gunar Schorcht
ff79f39fd5 drivers/mtd: fix the order in the MTD pointer XFA
The commit fixes the order of entries in the MTD pointer XFA `mtd_dev_xfa` according to their index by using the index as the priority in the XFA.
2023-11-27 17:14:23 +01:00
benpicco
c93a5b84a3
Merge pull request #20020 from gompper/periph/freqm
drivers/include/periph: add FREQM peripheral driver
2023-11-27 16:06:52 +00:00
Urs Gompper
afcd4801bd drivers/include: add header definition for freqm 2023-11-23 20:37:52 +01:00
Marian Buschsieweke
e7c9451b55
drivers/pcf857x: use errno code for error reporting
This makes it easier to use common error reporting such as `strerror()`
or `tiny_strerror()` to give more insight on why something failed.

The custom error codes via `enum` have been updated to be synonymous
with the `errno` codes for backward compatibility.

In addition, `pcf857x_init()` has been updated to no longer or
together the return code, but rather abort on the first fail transaction
and return the error code as is. Otherwise (when both fail due to
different error codes) the returned error code may be garbage.
2023-11-22 10:29:33 +01:00
Karl Fessel
8a9fdf4661
Merge pull request #20062 from derMihai/at_fix_pr
drivers/at: fix URC collision with command response
2023-11-16 12:04:48 +00:00
Benjamin Valentin
63cd55cc7b drivers/mtd_default: deprecate mtd_default_get_dev() 2023-11-10 19:53:48 +01:00