summaryrefslogtreecommitdiff
path: root/quantum/serial_link/protocol/transport.h
diff options
context:
space:
mode:
authorcoderkun <olli@coderkun.de>2016-10-02 10:04:29 +0200
committercoderkun <olli@coderkun.de>2016-10-02 10:04:29 +0200
commit8655677584483e46d9b45873aa50ec6e860486dd (patch)
tree3f1037d47607fd40be82fe9169795978f8f3551f /quantum/serial_link/protocol/transport.h
parenta10e100bd5e8bad73e1b04f54639a4cec36e4b9e (diff)
parent35e6870e5c8943c044187256e01c96ef400ca067 (diff)
downloadqmk_firmware-8655677584483e46d9b45873aa50ec6e860486dd.tar.gz
qmk_firmware-8655677584483e46d9b45873aa50ec6e860486dd.zip
Merge branch 'master' into coderkun_neo2
Diffstat (limited to 'quantum/serial_link/protocol/transport.h')
-rw-r--r--quantum/serial_link/protocol/transport.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/quantum/serial_link/protocol/transport.h b/quantum/serial_link/protocol/transport.h
index 9a052d8809..2c5d890b21 100644
--- a/quantum/serial_link/protocol/transport.h
+++ b/quantum/serial_link/protocol/transport.h
@@ -82,7 +82,7 @@ typedef struct { \
remote_object_t* obj = (remote_object_t*)&remote_object_##name; \
uint8_t* start = obj->buffer + LOCAL_OBJECT_SIZE(obj->object_size);\
triple_buffer_object_t* tb = (triple_buffer_object_t*)start; \
- return triple_buffer_read_internal(obj->object_size, tb); \
+ return (type*)triple_buffer_read_internal(obj->object_size, tb); \
}
#define MASTER_TO_SINGLE_SLAVE_OBJECT(name, type) \
@@ -112,7 +112,7 @@ typedef struct { \
remote_object_t* obj = (remote_object_t*)&remote_object_##name; \
uint8_t* start = obj->buffer + NUM_SLAVES * LOCAL_OBJECT_SIZE(obj->object_size);\
triple_buffer_object_t* tb = (triple_buffer_object_t*)start; \
- return triple_buffer_read_internal(obj->object_size, tb); \
+ return (type*)triple_buffer_read_internal(obj->object_size, tb); \
}
#define SLAVE_TO_MASTER_OBJECT(name, type) \
@@ -139,12 +139,13 @@ typedef struct { \
uint8_t* start = obj->buffer + LOCAL_OBJECT_SIZE(obj->object_size);\
start+=slave * REMOTE_OBJECT_SIZE(obj->object_size); \
triple_buffer_object_t* tb = (triple_buffer_object_t*)start; \
- return triple_buffer_read_internal(obj->object_size, tb); \
+ return (type*)triple_buffer_read_internal(obj->object_size, tb); \
}
#define REMOTE_OBJECT(name) (remote_object_t*)&remote_object_##name
void add_remote_objects(remote_object_t** remote_objects, uint32_t num_remote_objects);
+void reinitialize_serial_link_transport(void);
void transport_recv_frame(uint8_t from, uint8_t* data, uint16_t size);
void update_transport(void);