From 4b37030ad0ddde12a12b8407d577fa07e0cb18f5 Mon Sep 17 00:00:00 2001
From: Jack Humbert <jack.humb@gmail.com>
Date: Fri, 7 Jul 2017 12:06:59 -0400
Subject: [PATCH] update lufa implementation

---
 tmk_core/protocol/lufa.mk           | 11 ++++++-----
 tmk_core/protocol/lufa/descriptor.c |  2 +-
 tmk_core/protocol/lufa/descriptor.h |  2 +-
 3 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/tmk_core/protocol/lufa.mk b/tmk_core/protocol/lufa.mk
index 7ce727dab0..4d005debcd 100644
--- a/tmk_core/protocol/lufa.mk
+++ b/tmk_core/protocol/lufa.mk
@@ -1,16 +1,17 @@
 LUFA_DIR = protocol/lufa
 
 # Path to the LUFA library
-LUFA_PATH ?= $(LUFA_DIR)/LUFA-git
+LUFA_PATH = $(LIB_PATH)/lufa
 
 
 # Create the LUFA source path variables by including the LUFA makefile
-ifneq (, $(wildcard $(TMK_PATH)/$(LUFA_PATH)/LUFA/Build/lufa_sources.mk))
+ifneq (, $(wildcard $(LUFA_PATH)/LUFA/Build/lufa_sources.mk))
     # New build system from 20120730
     LUFA_ROOT_PATH = $(LUFA_PATH)/LUFA
-    include $(TMK_PATH)/$(LUFA_PATH)/LUFA/Build/lufa_sources.mk
+    DMBS_LUFA_PATH = $(LUFA_PATH)/LUFA/Build/LUFA
+    include $(LUFA_PATH)/LUFA/Build/lufa_sources.mk
 else
-    include $(TMK_PATH)/$(LUFA_PATH)/LUFA/makefile
+    include $(LUFA_PATH)/LUFA/makefile
 endif
 
 LUFA_SRC = lufa.c \
@@ -49,7 +50,7 @@ SRC += $(LUFA_SRC)
 
 # Search Path
 VPATH += $(TMK_PATH)/$(LUFA_DIR)
-VPATH += $(TMK_PATH)/$(LUFA_PATH)
+VPATH += $(LUFA_PATH)
 
 # Option modules
 #ifdef $(or MOUSEKEY_ENABLE, PS2_MOUSE_ENABLE)
diff --git a/tmk_core/protocol/lufa/descriptor.c b/tmk_core/protocol/lufa/descriptor.c
index feeea76df0..357954368b 100644
--- a/tmk_core/protocol/lufa/descriptor.c
+++ b/tmk_core/protocol/lufa/descriptor.c
@@ -868,7 +868,7 @@ const USB_Descriptor_String_t PROGMEM ProductString =
  *  USB host.
  */
 uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue,
-                                    const uint8_t wIndex,
+                                    const uint16_t wIndex,
                                     const void** const DescriptorAddress)
 {
     const uint8_t  DescriptorType   = (wValue >> 8);
diff --git a/tmk_core/protocol/lufa/descriptor.h b/tmk_core/protocol/lufa/descriptor.h
index 24ce420e6a..cde44abc9b 100644
--- a/tmk_core/protocol/lufa/descriptor.h
+++ b/tmk_core/protocol/lufa/descriptor.h
@@ -254,7 +254,7 @@ typedef struct
 
 
 uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue,
-                                    const uint8_t wIndex,
+                                    const uint16_t wIndex,
                                     const void** const DescriptorAddress)
                                     ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3);