Make UsbCommand_JumpToSlaveBootloader expect a slave slot id instead of a uhkModuleDriverId.

This commit is contained in:
László Monda
2017-11-06 00:32:08 +01:00
parent 379fe6a4c7
commit 003f313947
5 changed files with 10 additions and 5 deletions
@@ -10,6 +10,8 @@
#define UHK_MODULE_MAX_COUNT 3 #define UHK_MODULE_MAX_COUNT 3
#define MAX_PWM_BRIGHTNESS 0x64 #define MAX_PWM_BRIGHTNESS 0x64
#define SLOT_ID_TO_UHK_MODULE_DRIVER_ID(slotId) ((slotId)-1)
#define UHK_MODULE_DRIVER_ID_TO_SLOT_ID(uhkModuleDriverId) ((uhkModuleDriverId)+1)
// Typedefs: // Typedefs:
+1
View File
@@ -13,6 +13,7 @@
// Macros: // Macros:
#define SLOT_COUNT 4 #define SLOT_COUNT 4
#define IS_VALID_SLAVE_SLOT(slotId) (SlotId_LeftKeyboardHalf <= (slotId) && (slotId) <= SlotId_RightModule)
// Typedefs: // Typedefs:
@@ -1,15 +1,17 @@
#include "usb_protocol_handler.h" #include "usb_protocol_handler.h"
#include "usb_commands/usb_command_jump_to_slave_bootloader.h" #include "usb_commands/usb_command_jump_to_slave_bootloader.h"
#include "slot.h"
#include "slave_drivers/uhk_module_driver.h" #include "slave_drivers/uhk_module_driver.h"
void UsbCommand_JumpToSlaveBootloader(void) void UsbCommand_JumpToSlaveBootloader(void)
{ {
uint8_t uhkModuleDriverId = GET_USB_BUFFER_UINT8(1); uint8_t slotId = GET_USB_BUFFER_UINT8(1);
if (uhkModuleDriverId >= UHK_MODULE_MAX_COUNT) { if (!IS_VALID_SLAVE_SLOT(slotId)) {
SET_USB_BUFFER_UINT8(0, UsbStatusCode_JumpToSlaveBootloader_InvalidModuleDriverId); SET_USB_BUFFER_UINT8(0, UsbStatusCode_JumpToSlaveBootloader_InvalidSlaveSlotId);
return; return;
} }
uint8_t uhkModuleDriverId = SLOT_ID_TO_UHK_MODULE_DRIVER_ID(slotId);
UhkModuleStates[uhkModuleDriverId].jumpToBootloader = true; UhkModuleStates[uhkModuleDriverId].jumpToBootloader = true;
} }
@@ -8,7 +8,7 @@
// Typedefs: // Typedefs:
typedef enum { typedef enum {
UsbStatusCode_JumpToSlaveBootloader_InvalidModuleDriverId = 2, UsbStatusCode_JumpToSlaveBootloader_InvalidSlaveSlotId = 2,
} usb_status_code_jump_to_slave_bootloader_t; } usb_status_code_jump_to_slave_bootloader_t;
#endif #endif