Skip to content

Commit 95e3667

Browse files
[nrf fromlist] drivers: i2c: i2c_nrfx_twi: Use iterable device definition
Using explicit instance number in driver no longer needed. Upstream PR #: 93083 Signed-off-by: Michał Stasiak <[email protected]>
1 parent 5877766 commit 95e3667

File tree

3 files changed

+9
-214
lines changed

3 files changed

+9
-214
lines changed

drivers/i2c/i2c_nrfx_twim.c

Lines changed: 3 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -301,78 +301,7 @@ static DEVICE_API(i2c, i2c_nrfx_twim_driver_api) = {
301301
DT_PHANDLE(I2C(idx), memory_regions)))))), \
302302
())
303303

304-
#ifdef CONFIG_HAS_HW_NRF_TWIM0
305-
I2C_NRFX_TWIM_DEVICE(0);
306-
#endif
307-
308-
#ifdef CONFIG_HAS_HW_NRF_TWIM1
309-
I2C_NRFX_TWIM_DEVICE(1);
310-
#endif
311-
312-
#ifdef CONFIG_HAS_HW_NRF_TWIM2
313-
I2C_NRFX_TWIM_DEVICE(2);
314-
#endif
315-
316-
#ifdef CONFIG_HAS_HW_NRF_TWIM3
317-
I2C_NRFX_TWIM_DEVICE(3);
318-
#endif
319-
320-
#ifdef CONFIG_HAS_HW_NRF_TWIM20
321-
I2C_NRFX_TWIM_DEVICE(20);
322-
#endif
323-
324-
#ifdef CONFIG_HAS_HW_NRF_TWIM21
325-
I2C_NRFX_TWIM_DEVICE(21);
326-
#endif
327-
328-
#ifdef CONFIG_HAS_HW_NRF_TWIM22
329-
I2C_NRFX_TWIM_DEVICE(22);
330-
#endif
331-
332-
#ifdef CONFIG_HAS_HW_NRF_TWIM23
333-
I2C_NRFX_TWIM_DEVICE(23);
334-
#endif
335-
336-
#ifdef CONFIG_HAS_HW_NRF_TWIM24
337-
I2C_NRFX_TWIM_DEVICE(24);
338-
#endif
339-
340-
#ifdef CONFIG_HAS_HW_NRF_TWIM30
341-
I2C_NRFX_TWIM_DEVICE(30);
342-
#endif
343-
344-
#ifdef CONFIG_HAS_HW_NRF_TWIM120
345-
I2C_NRFX_TWIM_DEVICE(120);
346-
#endif
347-
348-
#ifdef CONFIG_HAS_HW_NRF_TWIM130
349-
I2C_NRFX_TWIM_DEVICE(130);
350-
#endif
351-
352-
#ifdef CONFIG_HAS_HW_NRF_TWIM131
353-
I2C_NRFX_TWIM_DEVICE(131);
354-
#endif
355-
356-
#ifdef CONFIG_HAS_HW_NRF_TWIM132
357-
I2C_NRFX_TWIM_DEVICE(132);
358-
#endif
304+
#define COND_I2C_NRF_TWIM_DEVICE(unused, prefix, i, _) \
305+
IF_ENABLED(CONFIG_HAS_HW_NRF_TWIM##prefix##i, (I2C_NRFX_TWIM_DEVICE(prefix##i);))
359306

360-
#ifdef CONFIG_HAS_HW_NRF_TWIM133
361-
I2C_NRFX_TWIM_DEVICE(133);
362-
#endif
363-
364-
#ifdef CONFIG_HAS_HW_NRF_TWIM134
365-
I2C_NRFX_TWIM_DEVICE(134);
366-
#endif
367-
368-
#ifdef CONFIG_HAS_HW_NRF_TWIM135
369-
I2C_NRFX_TWIM_DEVICE(135);
370-
#endif
371-
372-
#ifdef CONFIG_HAS_HW_NRF_TWIM136
373-
I2C_NRFX_TWIM_DEVICE(136);
374-
#endif
375-
376-
#ifdef CONFIG_HAS_HW_NRF_TWIM137
377-
I2C_NRFX_TWIM_DEVICE(137);
378-
#endif
307+
NRFX_FOREACH_PRESENT(TWIM, COND_I2C_NRF_TWIM_DEVICE, (), ())

drivers/i2c/i2c_nrfx_twim_rtio.c

Lines changed: 3 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -292,78 +292,7 @@ static int i2c_nrfx_twim_rtio_deinit(const struct device *dev)
292292
&twim_##idx##z_config, POST_KERNEL, CONFIG_I2C_INIT_PRIORITY, \
293293
&i2c_nrfx_twim_driver_api);
294294

295-
#ifdef CONFIG_HAS_HW_NRF_TWIM0
296-
I2C_NRFX_TWIM_RTIO_DEVICE(0);
297-
#endif
295+
#define COND_I2C_NRF_TWIM_RTIO_DEVICE(unused, prefix, i, _) \
296+
IF_ENABLED(CONFIG_HAS_HW_NRF_TWIM##prefix##i, (I2C_NRFX_TWIM_RTIO_DEVICE(prefix##i);))
298297

299-
#ifdef CONFIG_HAS_HW_NRF_TWIM1
300-
I2C_NRFX_TWIM_RTIO_DEVICE(1);
301-
#endif
302-
303-
#ifdef CONFIG_HAS_HW_NRF_TWIM2
304-
I2C_NRFX_TWIM_RTIO_DEVICE(2);
305-
#endif
306-
307-
#ifdef CONFIG_HAS_HW_NRF_TWIM3
308-
I2C_NRFX_TWIM_RTIO_DEVICE(3);
309-
#endif
310-
311-
#ifdef CONFIG_HAS_HW_NRF_TWIM20
312-
I2C_NRFX_TWIM_RTIO_DEVICE(20);
313-
#endif
314-
315-
#ifdef CONFIG_HAS_HW_NRF_TWIM21
316-
I2C_NRFX_TWIM_RTIO_DEVICE(21);
317-
#endif
318-
319-
#ifdef CONFIG_HAS_HW_NRF_TWIM22
320-
I2C_NRFX_TWIM_RTIO_DEVICE(22);
321-
#endif
322-
323-
#ifdef CONFIG_HAS_HW_NRF_TWIM23
324-
I2C_NRFX_TWIM_RTIO_DEVICE(23);
325-
#endif
326-
327-
#ifdef CONFIG_HAS_HW_NRF_TWIM24
328-
I2C_NRFX_TWIM_RTIO_DEVICE(24);
329-
#endif
330-
331-
#ifdef CONFIG_HAS_HW_NRF_TWIM30
332-
I2C_NRFX_TWIM_RTIO_DEVICE(30);
333-
#endif
334-
335-
#ifdef CONFIG_HAS_HW_NRF_TWIM120
336-
I2C_NRFX_TWIM_RTIO_DEVICE(120);
337-
#endif
338-
339-
#ifdef CONFIG_HAS_HW_NRF_TWIM130
340-
I2C_NRFX_TWIM_RTIO_DEVICE(130);
341-
#endif
342-
343-
#ifdef CONFIG_HAS_HW_NRF_TWIM131
344-
I2C_NRFX_TWIM_RTIO_DEVICE(131);
345-
#endif
346-
347-
#ifdef CONFIG_HAS_HW_NRF_TWIM132
348-
I2C_NRFX_TWIM_RTIO_DEVICE(132);
349-
#endif
350-
351-
#ifdef CONFIG_HAS_HW_NRF_TWIM133
352-
I2C_NRFX_TWIM_RTIO_DEVICE(133);
353-
#endif
354-
355-
#ifdef CONFIG_HAS_HW_NRF_TWIM134
356-
I2C_NRFX_TWIM_RTIO_DEVICE(134);
357-
#endif
358-
359-
#ifdef CONFIG_HAS_HW_NRF_TWIM135
360-
I2C_NRFX_TWIM_RTIO_DEVICE(135);
361-
#endif
362-
363-
#ifdef CONFIG_HAS_HW_NRF_TWIM136
364-
I2C_NRFX_TWIM_RTIO_DEVICE(136);
365-
#endif
366-
367-
#ifdef CONFIG_HAS_HW_NRF_TWIM137
368-
I2C_NRFX_TWIM_RTIO_DEVICE(137);
369-
#endif
298+
NRFX_FOREACH_PRESENT(TWIM, COND_I2C_NRF_TWIM_RTIO_DEVICE, (), ())

drivers/i2c/i2c_nrfx_twis.c

Lines changed: 3 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -373,70 +373,7 @@ static int shim_nrf_twis_deinit(const struct device *dev)
373373
&shim_nrf_twis_api \
374374
);
375375

376-
#ifdef CONFIG_HAS_HW_NRF_TWIS0
377-
SHIM_NRF_TWIS_DEVICE_DEFINE(0);
378-
#endif
379-
380-
#ifdef CONFIG_HAS_HW_NRF_TWIS1
381-
SHIM_NRF_TWIS_DEVICE_DEFINE(1);
382-
#endif
383-
384-
#ifdef CONFIG_HAS_HW_NRF_TWIS2
385-
SHIM_NRF_TWIS_DEVICE_DEFINE(2);
386-
#endif
387-
388-
#ifdef CONFIG_HAS_HW_NRF_TWIS3
389-
SHIM_NRF_TWIS_DEVICE_DEFINE(3);
390-
#endif
391-
392-
#ifdef CONFIG_HAS_HW_NRF_TWIS20
393-
SHIM_NRF_TWIS_DEVICE_DEFINE(20);
394-
#endif
395-
396-
#ifdef CONFIG_HAS_HW_NRF_TWIS21
397-
SHIM_NRF_TWIS_DEVICE_DEFINE(21);
398-
#endif
399-
400-
#ifdef CONFIG_HAS_HW_NRF_TWIS22
401-
SHIM_NRF_TWIS_DEVICE_DEFINE(22);
402-
#endif
403-
404-
#ifdef CONFIG_HAS_HW_NRF_TWIS23
405-
SHIM_NRF_TWIS_DEVICE_DEFINE(23);
406-
#endif
407-
408-
#ifdef CONFIG_HAS_HW_NRF_TWIS24
409-
SHIM_NRF_TWIS_DEVICE_DEFINE(24);
410-
#endif
411-
412-
#ifdef CONFIG_HAS_HW_NRF_TWIS30
413-
SHIM_NRF_TWIS_DEVICE_DEFINE(30);
414-
#endif
415-
416-
#ifdef CONFIG_HAS_HW_NRF_TWIS130
417-
SHIM_NRF_TWIS_DEVICE_DEFINE(130);
418-
#endif
419-
420-
#ifdef CONFIG_HAS_HW_NRF_TWIS131
421-
SHIM_NRF_TWIS_DEVICE_DEFINE(131);
422-
#endif
423-
424-
#ifdef CONFIG_HAS_HW_NRF_TWIS133
425-
SHIM_NRF_TWIS_DEVICE_DEFINE(133);
426-
#endif
427-
428-
#ifdef CONFIG_HAS_HW_NRF_TWIS134
429-
SHIM_NRF_TWIS_DEVICE_DEFINE(134);
430-
#endif
431-
432-
#ifdef CONFIG_HAS_HW_NRF_TWIS135
433-
SHIM_NRF_TWIS_DEVICE_DEFINE(135);
434-
#endif
435-
436-
#ifdef CONFIG_HAS_HW_NRF_TWIS136
437-
SHIM_NRF_TWIS_DEVICE_DEFINE(136);
438-
#endif
376+
#define COND_SHIM_NRF_TWIS_DEVICE(unused, prefix, i, _) \
377+
IF_ENABLED(CONFIG_HAS_HW_NRF_TWIS##prefix##i, (SHIM_NRF_TWIS_DEVICE_DEFINE(prefix##i);))
439378

440-
#ifdef CONFIG_HAS_HW_NRF_TWIS137
441-
SHIM_NRF_TWIS_DEVICE_DEFINE(137);
442-
#endif
379+
NRFX_FOREACH_PRESENT(TWIS, COND_SHIM_NRF_TWIS_DEVICE, (), ())

0 commit comments

Comments
 (0)