problem : can driver not working tiva c 123gxl can char driver
tm4cbringup: int tm4c_can_setup(void) { int ret = ERROR; // struct can_dev_s *devst; # ifdef CONFIG_TIVA_CAN0 tiva_can0_enableclk(); ret = tiva_configgpio(GPIO_CAN0_RX); if (ret < 0) { goto configgpio_error; } ret = tiva_configgpio(GPIO_CAN0_TX); if (ret < 0) { // snerr("error init gpio rx can \n"); goto configgpio_error; } /* Call tiva_can_initialize() to get an instance of CAN interface 0 * and register it. */ ret = tiva_can_initialize("/dev/can0", 0); if (ret < 0) { canerr("ERROR: Failed to get/register CAN interface 0\n"); return ret; } return OK; configgpio_error: canerr("ERROR: failed to configure CAN GPIO pin.\n"); return ret; } using can example from apps can -n 1 nmsgs: 1 min ID: can_open: ocount: 0 _assert: Current Version: NuttX 12.2.1 148c631a2d Feb 24 2024 14:08:01 arm _assert: Assertion failed nxmutex_is_hold(mutex): at file: misc/lib_mutex.c:339 task: 0xe655 up_dump_register: R0: 20000d20 R1: 00000153 R2: 00012073 R3: 20000830 up_dump_register: R4: 20000780 R5: 0001208a R6: 20005db8 FP: 20000d20 up_dump_register: R8: 00012073 SB: 00000153 SL: 00016005 R11: 0001605c up_dump_register: IP: 00000020 SP: 20006738 LR: 000015e9 PC: 000015e9 up_dump_register: xPSR: 60000000 PRIMASK: 00000001 CONTROL: 00000000 up_dump_register: EXC_RETURN: ffffffff 1 max ID: 2047 if i comment this line // nxmutex_unlock(&canmod->thd_iface_lock); from static int tivacan_setup(struct can_dev_s *dev) now the error changed nsh> can -n 1 nmsgs: 1 min ID: can_open: ocount: 0 tivacan_setup: tiva_can co_steup can_ioctl: cmd: 6914 arg: 536897800 1 max Ican_write: buflen: 4 can_xmit: xmit head: 0 queue: 0 tail: 1 can_txdone: xmit head: 0 queue: 1 tail: 1 can_xmit: xmit head: 1 queue: 1 tail: 1 can_receive: ID: 44 DLC: 8 can_receive: ID: 44 DLC: 8 can_receive: ID: 44 DLC: 8 can_receive: ID: 44 DLC: 8 Dcan_receive: ID: 44 DLC: 8 ccan_receive: ID: 44 DLC: 8 acan_receive: ID: 44 DLC: 8 ncan_receive: ID: 44 DLC: 8 can_receive: ID: 44 DLC: 8 _can_receive: ID: 44 DLC: 8 _assert: Current Version: NuttX 12.2.1 148c631a2d Feb 24 2024 14:08:01 arm _assert: Assertion failed curr: at file: wdog/wd_cancel.c:95 task: 0xe655 up_dump_register: R0: 20000d20 R1: 0000005f R2: 0001165a R3: 20000838 up_dump_register: R4: 20000780 R5: 0001165f R6: 20005db8 FP: 20000d20 up_dump_register: R8: 0001165a SB: 0000005f SL: 0000fc7d R11: 00000000 up_dump_register: IP: 00000008 SP: 20000298 LR: 000015e9 PC: 000015e9 up_dump_register: xPSR: 20000037 PRIMASK: 00000001 CONTROL: 00000000 up_dump_register: EXC_RETURN: ffffffff dump_tasks: PID GROUP PRI POLICY TYPE NPX STATE EVENT SIGMASK STACKBASE STACKSIZE COMMAND dump_tasks: ---- --- --- -------- ------- --- ------- ---------- -------- 0x200002d0 300 irq