Browse Source

Set DFU bootloader name

Fixes #22

Each (dfu) interface may have more than one a ltsetting each with their own index and name. According to the DFU_1.1 pdf section 4.2.3, "* Alternate settings can be used by an application to access additional memory segments. In this case,
it is suggested that each alternate setting employ a string descriptor to indicate the target memory
segment; e.g., 'EEPROM'." Whether or not we end up using multiple memory segments it is still good to have a descriptive name incase there are other dfu devices connected.
simple
Rowan Decker 9 years ago
parent
commit
dbf2b1ca26
3 changed files with 4 additions and 1 deletions
  1. 1
    0
      Bootloader/_buildvars.h
  2. 2
    1
      Bootloader/dfu.desc.c
  3. 1
    0
      Lib/CMake/arm.cmake

+ 1
- 0
Bootloader/_buildvars.h View File

#define STR_MANUFACTURER u"Kiibohd" #define STR_MANUFACTURER u"Kiibohd"
#define STR_PRODUCT u"Kiibohd DFU Bootloader" #define STR_PRODUCT u"Kiibohd DFU Bootloader"
#define STR_SERIAL u"@CHIP@" #define STR_SERIAL u"@CHIP@"
#define STR_ALTNAME u"@BOOT_DFU_ALTNAME@"




// Mac OS-X and Linux automatically load the correct drivers. On // Mac OS-X and Linux automatically load the correct drivers. On

+ 2
- 1
Bootloader/dfu.desc.c View File

.bInterfaceClass = USB_DEV_CLASS_APP, .bInterfaceClass = USB_DEV_CLASS_APP,
.bInterfaceSubClass = USB_DEV_SUBCLASS_APP_DFU, .bInterfaceSubClass = USB_DEV_SUBCLASS_APP_DFU,
.bInterfaceProtocol = USB_DEV_PROTO_DFU_DFU, .bInterfaceProtocol = USB_DEV_PROTO_DFU_DFU,
.iInterface = 0
.iInterface = 4
}, },


.dfu = { .dfu = {
USB_DESC_STRING(STR_MANUFACTURER), USB_DESC_STRING(STR_MANUFACTURER),
USB_DESC_STRING(STR_PRODUCT), USB_DESC_STRING(STR_PRODUCT),
USB_DESC_STRING(STR_SERIAL), USB_DESC_STRING(STR_SERIAL),
USB_DESC_STRING(STR_ALTNAME),
NULL NULL
}; };



+ 1
- 0
Lib/CMake/arm.cmake View File

set( PRODUCT_ID "0xB04D" ) set( PRODUCT_ID "0xB04D" )
set( BOOT_VENDOR_ID "0x1C11" ) set( BOOT_VENDOR_ID "0x1C11" )
set( BOOT_PRODUCT_ID "0xB007" ) set( BOOT_PRODUCT_ID "0xB007" )
set( BOOT_DFU_ALTNAME "Kiibohd DFU" )
set( DFU 1 ) set( DFU 1 )
message( "dfu" ) message( "dfu" )
elseif ( "${CHIP}" MATCHES "mk20dx128" OR "${CHIP}" MATCHES "mk20dx256" ) elseif ( "${CHIP}" MATCHES "mk20dx128" OR "${CHIP}" MATCHES "mk20dx256" )