1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-25 06:23:53 +01:00
RIOT/drivers
bors[bot] d1edbd94d6
Merge #19881 #19892
19881: drivers/stmpe811: fix initialization if callback function parameter is NULL r=benpicco a=gschorcht

### Contribution description

This PR fixes the `stmpe811` driver initialization if the callback function parameter `cb` is `NULL. This might be the case for example if the application uses the touch device in polling mode.

If the interrupt pin is initialized if the callback function parameter `cb` is `NULL`, the driver crashes the first time an interrupt is triggered. Therefore, the INT pin must be initialized only if also the callback function parameter `cb` is not `NULL`.

To be able to test the polling mode, this PR also includes a change of the `tests/drivers/stmpe811` application which introduces the environment variables `STMPE811_POLLING_MODE` `STMPE811_POLLING_PERIOD` and in the makefile.

### Testing procedure

1. Use a `stm32f429i-disc1` board and test it in polling mode:
   ```
   STMPE811_POLLING_MODE=1 BOARD=stm32f429i-disc1 make -C tests/drivers/stmpe811 flash term
   ```
   It should work as expected.
   ```
   main(): This is RIOT! (Version: 2023.10-devel-119-g26e7a-drivers/stmpe811_fix_cb_null)
   STMPE811 test application
   +------------Initializing------------+
   Initialization successful
   Pressed!
   X: 113, Y:135
   X: 113, Y:135
   X: 113, Y:136
   Released!
   ```

2. Checkout master branch and cerry-pick commit 691a5e6308426ddc685e5a2c297238529211c258. The test application `tests/drivers/stmpe811` will crash once a touch event occur:
   ```
   main(): This is RIOT! (Version: 2023.10-devel-117-g91441)
   STMPE811 test application
   +------------Initializing------------+
   Initialization successful
   Stack pointer corrupted, reset to top of stack
   FSR/FAR:
    CFSR: 0x00020000
    HFSR: 0x40000000
    DFSR: 0x00000008
    AFSR: 0x00000000
   Misc
   EXC_RET: 0xfffffff1
   *** RIOT kernel panic:
   HARD FAULT HANDLER
   ```

### Issues/PRs references

19892: pkg/tinydtls: allow to set buffer size from application again r=benpicco a=leandrolanzieri

### Contribution description

Currently the buffer size on tinydtls is set in its Makefile whenever `gcoap` module is present. This limits the ability of the user to override the value. This adds a pre-check of the `CFLAGS` to see if it was set before.

### Testing procedure

Try setting `CFLAGS += -DDTLS_MAX_BUF=<some_value>` on `examples/gcoap_dtls`, you should be able to override the default value without errors.


### Issues/PRs references
Reported in #19838


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2023-08-23 22:43:56 +00:00
..
2022-09-14 15:05:25 +02:00
2023-02-23 16:44:24 +01:00
2022-09-14 15:05:25 +02:00
2022-09-14 15:05:25 +02:00
2022-09-14 15:05:25 +02:00
2022-03-04 14:15:35 +01:00
2022-09-14 15:05:25 +02:00
2023-02-23 16:44:24 +01:00
2023-02-23 16:44:24 +01:00
2023-08-23 16:55:09 +00:00
2022-09-14 15:05:25 +02:00
2022-09-14 15:05:25 +02:00
2023-02-23 16:44:24 +01:00
2023-02-23 16:44:24 +01:00
2023-02-23 16:44:24 +01:00
2022-09-14 15:05:25 +02:00
2023-02-23 16:44:24 +01:00
2023-02-23 16:44:24 +01:00
2023-02-23 16:44:24 +01:00
2022-09-14 15:05:25 +02:00
2023-01-31 21:05:07 +01:00
2022-09-14 15:05:25 +02:00
2023-02-23 16:44:24 +01:00
2023-02-23 16:44:24 +01:00
2023-05-23 21:40:40 +02:00
2023-06-01 16:52:26 +02:00
2023-08-08 09:09:12 +02:00
2023-08-08 09:09:12 +02:00
2023-05-22 12:22:01 -04:00
2022-12-15 10:15:31 +00:00
2022-09-14 15:05:25 +02:00
2022-03-04 14:15:50 +01:00
2023-02-23 16:44:24 +01:00
2023-08-08 09:09:12 +02:00
2022-09-14 15:05:25 +02:00
2022-09-26 18:54:40 +02:00
2022-09-16 14:00:35 +02:00
2023-05-19 23:01:30 +02:00
2022-03-04 14:15:57 +01:00
2022-03-04 14:15:58 +01:00
2022-09-14 15:05:25 +02:00
2023-08-08 09:09:12 +02:00
2023-07-10 10:51:20 +00:00