diff --git a/boards/risc-v/esp32c6/common/src/esp_board_twai.c b/boards/risc-v/esp32c6/common/src/esp_board_twai.c index 05f22a94400..b7cfcead853 100644 --- a/boards/risc-v/esp32c6/common/src/esp_board_twai.c +++ b/boards/risc-v/esp32c6/common/src/esp_board_twai.c @@ -27,6 +27,7 @@ #include #include +#include #include #include @@ -40,6 +41,9 @@ * Pre-processor Definitions ****************************************************************************/ +#define DEVNAME_FMT "/dev/can%d" +#define DEVNAME_FMTLEN (8 + 3 + 1) + /**************************************************************************** * Public Functions ****************************************************************************/ @@ -63,6 +67,7 @@ int board_twai_setup(int port) { #ifdef CONFIG_ESPRESSIF_TWAI struct can_dev_s *twai; + char devname[DEVNAME_FMTLEN]; int ret; /* Call esp_twaiinitialize() to get an instance of the TWAI @@ -72,31 +77,18 @@ int board_twai_setup(int port) twai = esp_twaiinitialize(port); if (twai == NULL) { - canerr("ERROR: Failed to get TWAI interface\n"); + canerr("ERROR: Failed to get TWAI interface for port %d\n", port); return -ENODEV; } -#ifdef CONFIG_ESPRESSIF_TWAI0 - /* Register the TWAI driver at "/dev/can0" */ + snprintf(devname, sizeof(devname), DEVNAME_FMT, port); - ret = can_register("/dev/can0", twai); + ret = can_register(devname, twai); if (ret < 0) { - canerr("ERROR: TWAI0 register failed: %d\n", ret); + canerr("ERROR: TWAI%d register failed: %d\n", port, ret); return ret; } -#endif /* CONFIG_ESPRESSIF_TWAI0 */ - -#ifdef CONFIG_ESPRESSIF_TWAI1 - /* Register the TWAI driver at "/dev/can1" */ - - ret = can_register("/dev/can1", twai); - if (ret < 0) - { - canerr("ERROR: TWAI1 register failed: %d\n", ret); - return ret; - } -#endif /* CONFIG_ESPRESSIF_TWAI1 */ return OK; #else diff --git a/boards/risc-v/esp32p4/common/src/esp_board_twai.c b/boards/risc-v/esp32p4/common/src/esp_board_twai.c index a3cab7e2f1f..d0a4851e628 100644 --- a/boards/risc-v/esp32p4/common/src/esp_board_twai.c +++ b/boards/risc-v/esp32p4/common/src/esp_board_twai.c @@ -27,6 +27,7 @@ #include #include +#include #include #include @@ -40,6 +41,9 @@ * Pre-processor Definitions ****************************************************************************/ +#define DEVNAME_FMT "/dev/can%d" +#define DEVNAME_FMTLEN (8 + 3 + 1) + /**************************************************************************** * Public Functions ****************************************************************************/ @@ -63,6 +67,7 @@ int board_twai_setup(int port) { #ifdef CONFIG_ESPRESSIF_TWAI struct can_dev_s *twai; + char devname[DEVNAME_FMTLEN]; int ret; /* Call esp_twaiinitialize() to get an instance of the TWAI @@ -72,42 +77,18 @@ int board_twai_setup(int port) twai = esp_twaiinitialize(port); if (twai == NULL) { - canerr("ERROR: Failed to get TWAI interface\n"); + canerr("ERROR: Failed to get TWAI interface for port %d\n", port); return -ENODEV; } -#ifdef CONFIG_ESPRESSIF_TWAI0 - /* Register the TWAI driver at "/dev/can0" */ + snprintf(devname, sizeof(devname), DEVNAME_FMT, port); - ret = can_register("/dev/can0", twai); + ret = can_register(devname, twai); if (ret < 0) { - canerr("ERROR: TWAI0 register failed: %d\n", ret); + canerr("ERROR: TWAI%d register failed: %d\n", port, ret); return ret; } -#endif /* CONFIG_ESPRESSIF_TWAI0 */ - -#ifdef CONFIG_ESPRESSIF_TWAI1 - /* Register the TWAI driver at "/dev/can1" */ - - ret = can_register("/dev/can1", twai); - if (ret < 0) - { - canerr("ERROR: TWAI1 register failed: %d\n", ret); - return ret; - } -#endif /* CONFIG_ESPRESSIF_TWAI1 */ - -#ifdef CONFIG_ESPRESSIF_TWAI2 - /* Register the TWAI driver at "/dev/can2" */ - - ret = can_register("/dev/can2", twai); - if (ret < 0) - { - canerr("ERROR: TWAI2 register failed: %d\n", ret); - return ret; - } -#endif /* CONFIG_ESPRESSIF_TWAI2 */ return OK; #else