]> rtime.felk.cvut.cz Git - rpp-test-sw.git/blobdiff - rpp-test-sw/commands/cmd_can.c
candump: Fix displaying of EFF frame IDs
[rpp-test-sw.git] / rpp-test-sw / commands / cmd_can.c
index c815dddaca4b05edcb4e53b562543e0ef3363f65..d6801b38c21077eb5eb216b0312f9ea317739c6d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2012-2014 Czech Technical University in Prague
+ * Copyright (C) 2012-2014, 2016 Czech Technical University in Prague
  *
  * Created on: 28.2.2013
  *
@@ -115,22 +115,22 @@ static struct rpp_can_rx_config rx_config[] = {
                .type = RPP_CAN_MIXED,
                .controller = 1,
                .msg_obj = 1,
-               .id = 1,
-               .mask = 0x7fffff,
+               .id = 0,
+               .mask = 0,
        },
        {
                .type = RPP_CAN_MIXED,
                .controller = 2,
                .msg_obj = 1,
-               .id = 1,
-               .mask = 0x7fffff,
+               .id = 0,
+               .mask = 0,
        },
        {
                .type = RPP_CAN_MIXED,
                .controller = 3,
                .msg_obj = 1,
-               .id = 1,
-               .mask = 0x7fffff,
+               .id = 0,
+               .mask = 0,
        }
 };
 
@@ -737,6 +737,11 @@ int cmd_do_can_dump(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
                return 1;
        }
 
+       if (controller_id < 1 || controller_id > 3) {
+               rpp_sci_printf("Invalid controller ID\n");
+               return -CMDERR_NODEV;
+       }
+
        rpp_can_init(&can_config);
 
        while (cmd_io->getc(cmd_io) < 0) {
@@ -744,7 +749,7 @@ int cmd_do_can_dump(cmd_io_t *cmd_io, const struct cmd_des *des, char *param[])
                if (rx_ind) {
                        if (rpp_can_read(controller_id-1, &pdu) == SUCCESS) {
                                if (pdu.id & CAN_EFF_FLAG)
-                                       rpp_sci_printf("can%u  %08X  [%u]  ", controller_id & (~CAN_EFF_FLAG), pdu.id, pdu.dlc);
+                                       rpp_sci_printf("can%u  %08X  [%u]  ", controller_id, pdu.id & (~CAN_EFF_FLAG), pdu.dlc);
                                else
                                        rpp_sci_printf("can%u  %03X  [%u]  ", controller_id, pdu.id, pdu.dlc);
 
@@ -1071,11 +1076,16 @@ cmd_des_t const cmd_des_can_test={
     "    appropriate error code is printed.\n"
     "\n"
     "At the end the CAN bus is reset and left with the configuration from\n"
-    "test 1. Any previous configuration is canceled, but is not deleted, so\n"
-    "any following call of `caninit` command will restore the CAN bus to\n"
-    "previous configuration.\n"
+    "test 1.\n"
+    "\n"
+    "The command can be called even after the CAN bus has been already\n"
+    "configured by previous invocation of the `caninit` command. The\n"
+    "previous timing configuration set by `cantiming#` command not\n"
+    "modified. Therefore, calling `caninit` after this command finishes\n"
+    "restores the previous timing settings.\n"
     "\n"
-    "For error codes description refer please the API documentation for the rpp-test-sw.\n"
+    "For error codes description please refer to the API documentation for\n"
+    "the rpp-test-sw.\n"
     "\n"
     "### Example ###\n"
     "\n"