Skip to content

Commit b9aa5fb

Browse files
authored
Merge pull request #1588 from UltimateHackingKeyboard/refactors_resend_cleanup
Remove dead code related to watermarks and resending.
2 parents bb53267 + 8d055e5 commit b9aa5fb

13 files changed

Lines changed: 10 additions & 190 deletions

File tree

device/src/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ if(NOT CONFIG_BOARD_UHK_60_RIGHT)
2828
messenger.c
2929
pin_wiring.c
3030
shell/shell_log_backend.c
31-
resend.c
3231
round_trip_test.c
3332
settings.c
3433
shell/shell_backend_usb.c

device/src/connections.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,6 @@
6868
typedef struct {
6969
uint8_t rxIdx;
7070
uint8_t txIdx;
71-
uint16_t missedCount;
72-
bool needsResend;
73-
uint8_t lastSentResendableWm;
74-
uint8_t lastSentId1;
75-
uint8_t lastSentId2;
7671
} ATTR_PACKED connection_watermarks_t;
7772

7873
typedef struct {

device/src/keyboard/oled/widgets/widget_store.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,8 @@ static string_segment_t getKeymapText() {
8282
static string_segment_t getDebugLineText() {
8383
#define BUFFER_LENGTH 80
8484
static char buffer[BUFFER_LENGTH] = { [BUFFER_LENGTH-1] = 0 };
85-
snprintf(buffer, BUFFER_LENGTH-1, "D %d, MB %d, MU %d, R %d, RTT %d",
85+
snprintf(buffer, BUFFER_LENGTH-1, "D %d, R %d, RTT %d",
8686
MessengerQueue_DroppedMessageCount,
87-
Connections[ConnectionId_UartLeft].watermarks.missedCount,
88-
Connections[ConnectionId_NusServerLeft].watermarks.missedCount,
8987
StateSync_LeftResetCounter,
9088
RoundTripTime
9189
);

device/src/keyboard/uart_bridge.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
#include "bt_manager.h"
99
#include "debug.h"
1010
#include "connections.h"
11-
#include "resend.h"
1211
#include "pin_wiring.h"
1312
#include "keyboard/uart_link.h"
1413
#include "shared/uart_parser.h"
@@ -161,7 +160,7 @@ int UartBridge_SendMessage(message_t* msg) {
161160
UartLink_LockBusy(&uartState->core);
162161

163162
// Call this only after we have taken the semaphore.
164-
Resend_RegisterMessageAndUpdateWatermarks(msg);
163+
Messenger_UpdateWatermarks(msg);
165164

166165
UartParser_StartMessage(&uartState->parser);
167166

device/src/messenger.c

Lines changed: 5 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
#include "slave_drivers/uhk_module_driver.h"
2323
#include "macros/status_buffer.h"
2424
#include "connections.h"
25-
#include "resend.h"
2625
#include "debug.h"
2726
#include "trace.h"
2827
#include "usb_commands/usb_command_reenumerate.h"
@@ -117,11 +116,6 @@ static connection_id_t determineChannel(device_id_t dst) {
117116
return ConnectionId_Invalid;
118117
}
119118

120-
uint16_t Messenger_GetMissedMessages(device_id_t dst) {
121-
connection_id_t connId = determineChannel(dst);
122-
return Connections[connId].watermarks.missedCount;
123-
}
124-
125119
static char getDeviceAbbrev(device_id_t src) {
126120
switch (src) {
127121
case DeviceId_Uhk80_Left:
@@ -153,9 +147,6 @@ static void receiveLeft(device_id_t src, const uint8_t* data, uint16_t len) {
153147
case MessageId_RoundTripTest:
154148
RoundTripTest_Receive(data, len);
155149
break;
156-
case MessageId_ResendRequest:
157-
Resend_ResendRequestReceived(src, determineChannel(src), data, len);
158-
break;
159150
default:
160151
printk("Didn't expect to receive message %i %i\n", data[0], data[1]);
161152
break;
@@ -200,9 +191,6 @@ static void receiveRight(device_id_t src, const uint8_t* data, uint16_t len) {
200191
case MessageId_RoundTripTest:
201192
RoundTripTest_Receive(data, len);
202193
break;
203-
case MessageId_ResendRequest:
204-
Resend_ResendRequestReceived(src, determineChannel(src), data, len);
205-
break;
206194
default:
207195
printk("Unrecognized or unexpected message [%i, %i, ...]\n", data[0], data[1]);
208196
break;
@@ -264,9 +252,6 @@ static void receiveDongle(device_id_t src, const uint8_t* data, uint16_t len) {
264252
case MessageId_RoundTripTest:
265253
RoundTripTest_Receive(data, len);
266254
break;
267-
case MessageId_ResendRequest:
268-
Resend_ResendRequestReceived(src, determineChannel(src), data, len);
269-
break;
270255
default:
271256
printk("Unrecognized or unexpected message [%i, %i, ...]\n", data[0], data[1]);
272257
break;
@@ -386,34 +371,11 @@ void logAllMessages(uint8_t srcConnectionId, uint8_t src, const uint8_t* data, u
386371

387372

388373
bool processWatermarks(uint8_t srcConnectionId, uint8_t src, const uint8_t* data, uint16_t len, uint8_t offset) {
389-
if (data[offset+MessageOffset_MsgId1] == MessageId_ResendRequest) {
390-
return true;
391-
}
392-
393-
uint8_t wm = data[offset+MessageOffset_Wm];
394-
uint8_t lastWm = Connections[srcConnectionId].watermarks.rxIdx;
395-
uint8_t expectedWm = lastWm + 1;
396-
397-
if (wm == lastWm) {
398-
// we have already received this message, so don't push it into the queue again.
399-
return false;
400-
}
401-
402374
if (data == MessengerQueue_BlackholeBuffer) {
403375
return false;
404376
}
405377

406-
if (false && wm != expectedWm && DEBUG_MODE) {
407-
if (wm != 0) {
408-
int8_t difference = wm - expectedWm;
409-
LogUSDO("Message index doesn't match by %i message(s) from connection %d (%s), wm %d / %d\n", difference, srcConnectionId, Connections_GetStaticName(srcConnectionId), wm, expectedWm);
410-
} else {
411-
// they have resetted their connection; that is fine, just update our watermarks
412-
}
413-
Connections[srcConnectionId].watermarks.missedCount++;
414-
}
415-
416-
Connections[srcConnectionId].watermarks.rxIdx = wm;
378+
Connections[srcConnectionId].watermarks.rxIdx = data[offset+MessageOffset_Wm];
417379

418380
return true;
419381
}
@@ -472,6 +434,10 @@ void Messenger_ProcessQueue() {
472434
}
473435
}
474436

437+
void Messenger_UpdateWatermarks(message_t* msg) {
438+
msg->wm = Connections[msg->connectionId].watermarks.txIdx++;
439+
}
440+
475441
int Messenger_SendMessage(message_t* message) {
476442
connection_id_t connectionId = message->connectionId;
477443
device_id_t dst = message->dst;

device/src/messenger.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555

5656
// Functions:
5757

58-
uint16_t Messenger_GetMissedMessages(device_id_t dst);
58+
void Messenger_UpdateWatermarks(message_t* msg);
5959

6060
int Messenger_SendMessage(message_t* message);
6161
int Messenger_Send(device_id_t dst, uint8_t messageId, const uint8_t* data, uint16_t len);

device/src/nus_client.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
#include "messenger_queue.h"
2020
#include "debug.h"
2121
#include <zephyr/settings/settings.h>
22-
#include "resend.h"
2322
#include "trace.h"
2423
#include <zephyr/logging/log.h>
2524
#include "config_manager.h"
@@ -196,7 +195,7 @@ int NusClient_SendMessage(message_t* msg) {
196195
// gives it back on error, and the `sent` callback gives it back on success.
197196

198197
// Call this only after we have taken the semaphore.
199-
Resend_RegisterMessageAndUpdateWatermarks(msg);
198+
Messenger_UpdateWatermarks(msg);
200199

201200
uint8_t buffer[MAX_LINK_PACKET_LENGTH];
202201
uint8_t bufferIdx = 0;

device/src/nus_server.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
#include "messenger_queue.h"
1010
#include "debug.h"
1111
#include "zephyr/bluetooth/addr.h"
12-
#include "resend.h"
1312
#include <zephyr/logging/log.h>
1413
#include "bt_manager.h"
1514
#include "hid/transport.h"
@@ -115,7 +114,7 @@ int NusServer_SendMessageTo(message_t* msg, struct bt_conn* conn) {
115114
// gives it back on error, and the `sent` callback gives it back on success.
116115

117116
// Call this only after we have taken the semaphore.
118-
Resend_RegisterMessageAndUpdateWatermarks(msg);
117+
Messenger_UpdateWatermarks(msg);
119118

120119
uint8_t buffer[MAX_LINK_PACKET_LENGTH];
121120
uint8_t bufferIdx = 0;

device/src/resend.c

Lines changed: 0 additions & 102 deletions
This file was deleted.

device/src/resend.h

Lines changed: 0 additions & 28 deletions
This file was deleted.

0 commit comments

Comments
 (0)