aboutsummaryrefslogtreecommitdiffstats
path: root/src/generic/canbus.h
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2021-01-29 18:49:11 -0500
committerKevin O'Connor <kevin@koconnor.net>2021-02-02 15:24:11 -0500
commitd9f6abdb56f2d93e6aaff5d7b116a098dddcfbbe (patch)
tree327965846f4355335fb75101d07b093f18caeb79 /src/generic/canbus.h
parentbee544eaca0d7276077a7972746d538ec3808f12 (diff)
downloadkutter-d9f6abdb56f2d93e6aaff5d7b116a098dddcfbbe.tar.gz
kutter-d9f6abdb56f2d93e6aaff5d7b116a098dddcfbbe.tar.xz
kutter-d9f6abdb56f2d93e6aaff5d7b116a098dddcfbbe.zip
canbus: Move high-level CAN code to new src/generic/canbus.c
Separate out the high-level command processing logic from the low-level transmission code. Place the high-level code in src/generic/canbus.c . This also removes the CAN dependency on serial_irq.c . Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/generic/canbus.h')
-rw-r--r--src/generic/canbus.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/generic/canbus.h b/src/generic/canbus.h
new file mode 100644
index 00000000..d797dc53
--- /dev/null
+++ b/src/generic/canbus.h
@@ -0,0 +1,22 @@
+#ifndef __CANBUS_H__
+#define __CANBUS_H__
+
+#include <stdint.h> // uint32_t
+
+#define CANBUS_ID_UUID 0x321
+#define CANBUS_ID_SET 0x322
+#define CANBUS_ID_UUID_RESP 0x323
+#define CANBUS_UUID_LEN 6
+
+// callbacks provided by board specific code
+int canbus_read(uint32_t *id, uint8_t *data);
+int canbus_send(uint32_t id, uint32_t len, uint8_t *data);
+void canbus_set_dataport(uint32_t id);
+void canbus_reboot(void);
+
+// canbus.c
+void canbus_notify_tx(void);
+void canbus_notify_rx(void);
+void canbus_set_uuid(void *data);
+
+#endif // canbus.h