diff --git a/platform/embedded/hci_transport_h4_ehcill_embedded.c b/platform/embedded/hci_transport_h4_ehcill_embedded.c index fd95eb3f1..2738367f0 100644 --- a/platform/embedded/hci_transport_h4_ehcill_embedded.c +++ b/platform/embedded/hci_transport_h4_ehcill_embedded.c @@ -158,6 +158,7 @@ static const hci_transport_h4_t hci_transport_h4_ehcill_dma = { /* .transport.can_send_packet_now = */ h4_can_send_packet_now, /* .transport.send_packet = */ ehcill_send_packet, /* .transport.set_baudrate = */ h4_set_baudrate, + /* .transport.reset_link = */ NULL, }, /* .ds = */ &hci_transport_h4_dma_ds }; diff --git a/platform/embedded/hci_transport_h4_embedded.c b/platform/embedded/hci_transport_h4_embedded.c index 103ac0c58..b9a8d1959 100644 --- a/platform/embedded/hci_transport_h4_embedded.c +++ b/platform/embedded/hci_transport_h4_embedded.c @@ -122,6 +122,7 @@ static const hci_transport_h4_t hci_transport_h4_dma = { /* .transport.can_send_packet_now = */ h4_can_send_packet_now, /* .transport.send_packet = */ h4_send_packet, /* .transport.set_baudrate = */ h4_set_baudrate, + /* .transport.reset_link = */ NULL, }, /* .ds = */ &hci_transport_h4_dma_ds }; diff --git a/platform/posix/hci_transport_h5_posix.c b/platform/posix/hci_transport_h5_posix.c index 53e68abf3..b6dc0e18d 100644 --- a/platform/posix/hci_transport_h5_posix.c +++ b/platform/posix/hci_transport_h5_posix.c @@ -630,6 +630,7 @@ const hci_transport_t * hci_transport_h5_instance(void) { hci_transport_h5->can_send_packet_now = &hci_transport_h5_can_send_packet_now; hci_transport_h5->send_packet = &hci_transport_h5_send_packet; hci_transport_h5->set_baudrate = &hci_transport_h5_set_baudrate; + hci_transport_h5->reset_link = &hci_transport_h5_reset_link; } return (const hci_transport_t *) hci_transport_h5; } diff --git a/src/hci_transport.h b/src/hci_transport.h index 8ee11b2ae..66986edb1 100644 --- a/src/hci_transport.h +++ b/src/hci_transport.h @@ -94,10 +94,15 @@ typedef struct { int (*send_packet)(uint8_t packet_type, uint8_t *packet, int size); /** - * extension for UART transport implementations + * extension for UART transport implementations */ int (*set_baudrate)(uint32_t baudrate); + /** + * extension for UART H5 on CSR: reset BCSP/H5 Link + */ + void (*reset_link)(void); + } hci_transport_t; typedef enum {