Finish firmware private transport stack

This commit is contained in:
2026-04-11 13:53:34 +08:00
parent 30f1af1a8c
commit a8e0cfe1b3
12 changed files with 480 additions and 72 deletions

View File

@@ -20,11 +20,11 @@ enum keyboard_proto_transport {
};
typedef bool (*keyboard_proto_send_body_fn)(
const struct keyboard_cdc_CdcPacketBody *body,
const keyboard_cdc_CdcPacketBody *body,
void *user_data);
bool keyboard_proto_encode_body(
const struct keyboard_cdc_CdcPacketBody *body,
const keyboard_cdc_CdcPacketBody *body,
uint8_t *buffer,
size_t buffer_size,
size_t *encoded_size);
@@ -32,11 +32,11 @@ bool keyboard_proto_encode_body(
bool keyboard_proto_decode_body(
const uint8_t *buffer,
size_t buffer_size,
struct keyboard_cdc_CdcPacketBody *body);
keyboard_cdc_CdcPacketBody *body);
bool keyboard_proto_encode_cdc_frame(
uint32_t packet_type,
const struct keyboard_cdc_CdcPacketBody *body,
const keyboard_cdc_CdcPacketBody *body,
uint8_t *buffer,
size_t buffer_size,
size_t *encoded_size);
@@ -44,19 +44,19 @@ bool keyboard_proto_encode_cdc_frame(
bool keyboard_proto_try_take_cdc_frame(
uint8_t *buffer,
size_t *buffer_size,
struct keyboard_cdc_CdcFrame *frame);
keyboard_cdc_CdcFrame *frame);
bool keyboard_proto_build_function_key_event_body(
uint16_t usage,
bool pressed,
struct keyboard_cdc_CdcPacketBody *body);
keyboard_cdc_CdcPacketBody *body);
bool keyboard_proto_build_led_state_body(
uint8_t led_mask,
struct keyboard_cdc_CdcPacketBody *body);
keyboard_cdc_CdcPacketBody *body);
bool keyboard_proto_handle_host_body(
const struct keyboard_cdc_CdcPacketBody *body,
const keyboard_cdc_CdcPacketBody *body,
enum keyboard_proto_transport transport,
keyboard_proto_send_body_fn send_fn,
void *user_data);