Marian Buschsieweke
1582fdd571
drivers/at25xxx: s/PAGE_SIZE/AT25_PAGE_SIZE/
...
On musl, PAGE_SIZE has a different meaning. So add an AT25_ prefix
to avoid a name clash.
2024-06-05 21:56:29 +02:00
LP-HAW
8ab2c795e5
drivers/w5500: enable polling in interrupt mode
2024-06-05 16:30:59 +02:00
LP-HAW
134d84401d
drivers/w5500: remove Kconfig
2024-06-05 16:30:59 +02:00
Mihai Renea
5a7d553b8e
drivers/at: expose some internal API
2024-05-28 12:20:54 +02:00
benpicco
719663f89c
Merge pull request #20675 from benpicco/drivers-i2c_init
...
drivers: don't call i2c_init()
2024-05-16 14:41:59 +00:00
Benjamin Valentin
85b2decafa
drivers: don't call i2c_init()
...
This is already called by periph_init()
2024-05-16 14:55:30 +02:00
Benjamin Valentin
c1e79c84d0
drivers/at86rf215: port to new netdev API
2024-05-15 17:24:42 +02:00
benpicco
3791db3941
Merge pull request #18427 from maribu/lwip/confirm_send
...
pkg/lwip: make use of confirm send
2024-05-06 11:05:10 +00:00
Stefan Schmidt
9d62ad4c5c
driver/w5500: driver for the W5500 ethernet chip
...
- driver can be used with interrupt or in polling mode (default)
2024-05-02 22:07:17 +02:00
Marian Buschsieweke
87e242189a
drivers/kw41zrf: kw41zrf implements the legacy netdev API
2024-04-30 08:41:07 +02:00
krzysztof-cabaj
a813e9728b
drivers/led: add LEDX_IS_PRESENT defines
2024-04-29 16:25:32 +02:00
Marian Buschsieweke
daa6b9da84
Merge pull request #20587 from Teufelchen1/fix/mtd
...
drivers/mtd: Add check for interger overflow
2024-04-18 10:59:40 +00:00
Teufelchen1
3bd047a565
drivers/mtd: Add check for interger overflow
2024-04-18 12:23:50 +02:00
Marian Buschsieweke
8cff167a93
Merge pull request #20588 from crasbe/master
...
drivers/at24cxxx: Add M24C01 device and enhance documentation
2024-04-17 08:40:04 +00:00
Marian Buschsieweke
fc271ea198
Merge pull request #20562 from MrKevinWeiss/pr/saulrgb
...
drivers/ws281x: Add saul support
2024-04-17 08:00:51 +00:00
crasbe
251b525e7e
drivers/at24cxxx: add documentation about driver usage
2024-04-16 18:06:03 +02:00
crasbe
6d1bfd63c6
drivers/at24cxxx: add defines for M24C01
2024-04-16 18:06:03 +02:00
Teufelchen
5bc8ca5318
Merge pull request #18093 from Ollrogge/remove_flashpage_free_funcs
...
periph/flashpage: remove deprecated flashpage_*_free functions
2024-04-16 08:47:11 +00:00
Marian Buschsieweke
cf6fa4edf0
tree wide: add IWYU pragma: export
where needed
...
We occasionally have some public `foo.h` header that includes a private
`foo_arch.h` header. Users are expected to include the `foo.h` header
and not the `foo_arch.h`. However, clangd will claim that the `#include`
of `foo.h` is unused if only functions / macros/ types / ... from
`foor_arch.h` is used and nothing from `foo.h`.
This adds the `IWYU pragma: export` comment to the include of
`foo_arch.h` in `foo.h`, so that clangd treats functions / macros /
types provided by `foo_arch.h` as if they were instead provided by
`foo.h`, which fixes the false positives.
2024-04-14 14:26:05 +02:00
MrKevinWeiss
0a96e36fb5
drivers/ws281x: Add saul support
2024-04-11 11:43:21 +02:00
Ollrogge
10c987eb66
Revert "periph/flashpage: extend API"
...
This reverts commit 72d47013dd
.
2024-04-04 17:57:40 +02:00
Karl Fessel
9d2dda27ce
Merge branch 'master' into cpu/samd5x-write-CAN-driver
2024-03-28 09:52:26 +01:00
Marian Buschsieweke
04620d471c
Merge pull request #20438 from MrKevinWeiss/pr/kconfig/dep/removal
...
Remove Kconfig dependency modelling
2024-03-27 16:39:56 +00:00
MrKevinWeiss
e0fdc3c16c
*Kconfig*: Modify Kconfig to remove dep model
2024-03-27 10:28:12 +01:00
MrKevinWeiss
2ace90a8fc
drivers/lsm6dsxx: Allow non-specific variant
2024-03-26 18:13:19 +01:00
Firas Hamdi
74bf01baa8
drivers/mcp2515: load RX mailbox
2024-03-26 15:17:48 +01:00
MrKevinWeiss
7a68fb0d5e
*Kconfig*: Remove dep-only Kconfig files
2024-03-26 14:54:22 +01:00
Mihai Renea
63e057cb50
drivers/at: Fix sync URC handling. at_send_cmd_get_lines() keeps EOL.
2024-03-20 14:32:09 +01:00
Mihai Renea
218d79fee5
drivers/at: refactor for better unit testing of parsing methods
2024-03-20 12:50:07 +01:00
Mihai Renea
b40c9a0366
drivers/at: removed async URC handling.
2024-03-20 12:49:56 +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
benpicco
3ebccd78d4
Merge pull request #20486 from FlapKap/tests/drivers/mtd_flashpage_assert_error
...
drivers/mtd_flashpage: fix comperror when compiling without asserts
2024-03-19 17:48:41 +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
kasper
02d86c2a25
drivers/mtd_flashpage: fix comperror when compiling without asserts
...
the variable cpu_flash_base is only used in asserts. This gives errors if you compile without them.
2024-03-19 14:36:01 +00: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
benpicco
55b6728224
Merge pull request #19738 from benpicco/stdio_dispatch
...
stdio_dispatch: allow to select multiple stdio methods at the same time
2024-02-09 16:13:27 +00:00
Benjamin Valentin
8d205b496b
drivers/slipdev: don't append 0-byte to stdin
2024-02-09 15:31:21 +01:00
Benjamin Valentin
6fdcc56f38
stdio_slipdev: port to new interface
2024-02-09 15:31:21 +01: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
Benjamin Valentin
fcd734e10e
drivers/ethos: add STDIO_UART_RX_BUFSIZE compat define
2024-02-03 13:09:10 +01:00
Marian Buschsieweke
47280b3a9b
drivers/w5100: make use of spi_transfer_u16_be()
...
This also fixes a bug, as the free coded byte swap code was incorrect.
2024-02-02 13:05:02 +01: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
chrysn
55cbb7bdfa
Merge pull request #20303 from chrysn-pull-requests/rust-updates
...
treewide: Rust updates
2024-01-29 19:54:32 +00:00
chrysn
3c5a540d01
drivers/lsm303agr: Use version 1.0 of driver
2024-01-27 09:41:26 +01:00
chrysn
96af920a12
drivers/lsm303agr: Use version 0.3 of driver
...
Note that for the very CPU this driver is used with (nRF52 on the
microbit-v2 board), this currently needs extra workarounds to copy
written data from flash to RAM so that the driver can see it. (Otherwise
it silently writes 00, and then correctly reads 00 from the bus all the
time).
2024-01-27 09:41:26 +01:00
Benjamin Valentin
a774ad935b
drivers/w5100: make use of netdev_eui48_get()
2024-01-26 21:42:27 +01:00
MrKevinWeiss
bd64ed460b
drivers/lsm6dsxx: Cleanup style
2024-01-25 09:16:10 +01:00
MrKevinWeiss
ab84f2387b
drivers/saul: replace lsm6dsl->lsm6dsxx
2024-01-24 20:32:03 +01:00
MrKevinWeiss
1d05932bb9
drivers: Fix kconfig error
...
Even though it is removed just to get this through
2024-01-24 12:23:01 +01:00
Miquel-HAW
71169638ca
drivers/lsm6dsxx: Implement common code
2024-01-24 09:57:04 +01: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
Marian Buschsieweke
0cffb7f365
Merge pull request #20257 from fzi-haxel/native64-part1
...
core, sys, drivers: 64-bit support preparations
2024-01-17 15:40:34 +00:00
Frederik Haxel
3feb1a369b
drivers: 64 bit compatibility
...
Fixed compilation errors for pointer casting.
2024-01-17 16:05:12 +01:00
Benjamin Valentin
1e1244042e
drivers/mtd_spi_nor: make use of busy_wait()
2024-01-15 14:56:35 +01:00
Frederik Haxel
381cae6eb1
drivers: Added PRIuSIZE print format specifier
2024-01-12 17:17:33 +01:00
Gunar Schorcht
caa31ecbdc
drivers/mtd: fix mtd_write_sector
...
Parameter `num` of `mtd_write_page_raw` is the number of bytes to be written, which is the number of sectors to be written`count` multiplied by the pages per sector `mtd->pages_per_sector` and the page size `mtd->page_size`.
2024-01-07 16:47:11 +01: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
Marian Buschsieweke
f860d96a25
Merge pull request #19891 from chrysn-pull-requests/ws2181x_timer
...
drivers/ws281x: Add gpio_ll and timer based driver
2024-01-03 09:22:26 +00:00
Benjamin Valentin
1a888fe556
drivers/slipdev: make use of chunked ringbuffer
2024-01-02 14:41:11 +01:00
benpicco
ece8a12f81
Merge pull request #20173 from fabian18/pr/mtd_flashpage_improve_write_page
...
drivers/mtd_flashpage: improve _write_page
2024-01-02 13:21:51 +00:00
Fabian Hüßler
37c39d0ee0
drivers/mtd_flashpage: improve _write_page
2023-12-31 00:26:40 +01:00
Benjamin Valentin
fbeb1f9a26
drivers/periph/spi: move DMA threshold to common code
2023-12-23 17:35:29 +01:00
Frederik Haxel
ec7fe8d598
drivers: Use size_t print format specifier
...
Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
2023-12-21 12:02:28 +01:00
MrKevinWeiss
7b80348f31
drivers/ws281x: Fix Kconfig
...
Patch from https://github.com/RIOT-OS/RIOT/pull/19891#pullrequestreview-1753651538
2023-12-19 11:13:43 +01:00
chrysn
d86405cef4
drivers/ws281x: Add timer and gpio_ll based driver
2023-12-19 11:13:43 +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
9cde80ef36
drivers_dose: enable TX UART on-demand
2023-12-14 18:30:38 +01: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
f57f2a125f
drivers/mtd_sdmmc: set MTD_DRIVER_FLAG_DIRECT_WRITE flag
2023-12-14 14:27:08 +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
431afeaa51
drivers/mtd_sdmmc: drop .write() function
2023-12-13 16:58:31 +01:00
Benjamin Valentin
cf123f98d5
drivers/mtd_emulated: drop .write() function
2023-12-13 16:56:51 +01:00
Benjamin Valentin
6c28a7d62c
drivers/mtd_mapper: drop .write() function
2023-12-13 16:56:51 +01:00
Benjamin Valentin
ba17c14aef
drivers/mtd_sdcard: drop .write()
...
The old .write() function is only used as a fall-back if .write_page()
is not implemented.
We can drop it.
2023-12-13 16:50:41 +01:00