dRonin  adbada4
dRonin firmware
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
pios_usb_board_data.c File Reference

Board specific USB strings. More...

#include "pios_usb_board_data.h"
#include "pios_sys.h"
#include "pios_usbhook.h"
#include "pios_usb_util.h"

Go to the source code of this file.

Macros

#define U16_CHARSEQ(val)   val, 0,
 
#define U16_CHARS1(val)   U16_CHARSEQ(val)
 
#define U16_CHARS2(val,...)   U16_CHARSEQ(val) U16_CHARS1(__VA_ARGS__)
 
#define U16_CHARS3(val,...)   U16_CHARSEQ(val) U16_CHARS2(__VA_ARGS__)
 
#define U16_CHARS4(val,...)   U16_CHARSEQ(val) U16_CHARS3(__VA_ARGS__)
 
#define U16_CHARS5(val,...)   U16_CHARSEQ(val) U16_CHARS4(__VA_ARGS__)
 
#define U16_CHARS6(val,...)   U16_CHARSEQ(val) U16_CHARS5(__VA_ARGS__)
 
#define U16_CHARS7(val,...)   U16_CHARSEQ(val) U16_CHARS6(__VA_ARGS__)
 
#define U16_CHARS8(val,...)   U16_CHARSEQ(val) U16_CHARS7(__VA_ARGS__)
 
#define U16_CHARS9(val,...)   U16_CHARSEQ(val) U16_CHARS8(__VA_ARGS__)
 
#define U16_CHARS10(val,...)   U16_CHARSEQ(val) U16_CHARS9(__VA_ARGS__)
 
#define U16_CHARS11(val,...)   U16_CHARSEQ(val) U16_CHARS10(__VA_ARGS__)
 
#define U16_CHARS12(val,...)   U16_CHARSEQ(val) U16_CHARS11(__VA_ARGS__)
 
#define U16_CHARS13(val,...)   U16_CHARSEQ(val) U16_CHARS12(__VA_ARGS__)
 
#define U16_CHARS14(val,...)   U16_CHARSEQ(val) U16_CHARS13(__VA_ARGS__)
 
#define U16_CHARS15(val,...)   U16_CHARSEQ(val) U16_CHARS14(__VA_ARGS__)
 
#define U16_CHARS16(val,...)   U16_CHARSEQ(val) U16_CHARS15(__VA_ARGS__)
 
#define U16_CHARS17(val,...)   U16_CHARSEQ(val) U16_CHARS16(__VA_ARGS__)
 
#define GENERATE_USB_STRING_IMPL(name, n,...)   static const uint8_t name[n*2+2] = { n*2+2, USB_DESC_TYPE_STRING, U16_CHARS##n(__VA_ARGS__) }
 
#define GENERATE_USB_STRING(name, n, v)   GENERATE_USB_STRING_IMPL(name, n, v)
 

Functions

 GENERATE_USB_STRING (usb_product_id, USB_STR_PROD_LEN, USB_STR_PROD_VAL)
 
 GENERATE_USB_STRING (usb_vendor_id, USB_STR_VEND_LEN, USB_STR_VEND_VAL)
 
int32_t PIOS_USB_BOARD_DATA_Init (void)
 

Variables

static uint8_t usb_serial_number [2+PIOS_SYS_SERIAL_NUM_ASCII_LEN *2+(sizeof(PIOS_USB_BOARD_SN_SUFFIX)-1)*2]
 
static const struct
usb_string_langid 
usb_lang_id
 

Detailed Description

Board specific USB strings.

Author
dRonin, http://dronin.org, Copyright (C) 2017
Tau Labs, http://taulabs.org, Copyright (C) 2012-2013
See Also
The GNU Public License (GPL) Version 3

Definition in file pios_usb_board_data.c.