Fixes for New USB stack
This commit is contained in:
10
ChangeLog
10
ChangeLog
@@ -1,5 +1,15 @@
|
||||
2012-05-11 Niibe Yutaka <gniibe@fsij.org>
|
||||
|
||||
* src/usb_prop.c (vcom_port_setup_with_nodata) Rename.
|
||||
(vcom_port_data_setup): Rename and fix return value.
|
||||
|
||||
* src/usb-cdc.h (VIRTUAL_COM_PORT_DATA_SIZE)
|
||||
(VIRTUAL_COM_PORT_INT_SIZE): New.
|
||||
|
||||
* src/main.c (#include): Add usb-cdc.h.
|
||||
* src/usb_desc.c (#include): Add usb-cdc.h.
|
||||
* src/usb_endp.c (#include): Add usb_lld.h.
|
||||
|
||||
* src/configure ($help): Add FST_01.
|
||||
|
||||
2012-05-10 Niibe Yutaka <gniibe@fsij.org>
|
||||
|
||||
2
GNUK_USB_DEVICE_ID
Normal file
2
GNUK_USB_DEVICE_ID
Normal file
@@ -0,0 +1,2 @@
|
||||
# VID:PID bcdDev Product_STRING Vender_STRING
|
||||
234b:0000 0200 FSIJ USB Token Free Software Initiative of Japan
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "ch.h"
|
||||
#include "gnuk.h"
|
||||
#include "usb_lld.h"
|
||||
#include "usb-cdc.h"
|
||||
|
||||
#ifdef DEBUG
|
||||
struct stdout {
|
||||
|
||||
@@ -5,3 +5,6 @@
|
||||
#define USB_CDC_REQ_GET_LINE_CODING 0x21
|
||||
#define USB_CDC_REQ_SET_CONTROL_LINE_STATE 0x22
|
||||
#define USB_CDC_REQ_SEND_BREAK 0x23
|
||||
|
||||
#define VIRTUAL_COM_PORT_DATA_SIZE 16
|
||||
#define VIRTUAL_COM_PORT_INT_SIZE 8
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
#include "ch.h"
|
||||
#include "usb_lld.h"
|
||||
#include "usb_conf.h"
|
||||
#include "usb-cdc.h"
|
||||
|
||||
#define USB_ICC_INTERFACE_CLASS 0x0B
|
||||
#define USB_ICC_INTERFACE_SUBCLASS 0x00
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "config.h"
|
||||
#include "ch.h"
|
||||
#include "gnuk.h"
|
||||
#include "usb_lld.h"
|
||||
|
||||
void
|
||||
EP3_IN_Callback (void)
|
||||
|
||||
@@ -48,19 +48,18 @@ static const struct line_coding line_coding = {
|
||||
};
|
||||
|
||||
static void
|
||||
Virtual_Com_Port_Data_Setup (uint8_t RequestNo)
|
||||
vcom_port_data_setup (uint8_t RequestNo)
|
||||
{
|
||||
if (RequestNo != USB_CDC_REQ_GET_LINE_CODING)
|
||||
return USB_UNSUPPORT;
|
||||
return;
|
||||
|
||||
/* RequestNo == USB_CDC_REQ_SET_LINE_CODING is not supported */
|
||||
|
||||
usb_lld_set_data_to_send (&line_coding, sizeof(line_coding));
|
||||
return USB_SUCCESS;
|
||||
}
|
||||
|
||||
static int
|
||||
Virtual_Com_Port_NoData_Setup (uint8_t RequestNo)
|
||||
vcom_port_setup_with_nodata (uint8_t RequestNo)
|
||||
{
|
||||
if (RequestNo == USB_CDC_REQ_SET_CONTROL_LINE_STATE)
|
||||
/* Do nothing and success */
|
||||
@@ -184,6 +183,7 @@ static void
|
||||
gnuk_setup_with_data (uint8_t recipient, uint8_t RequestNo, uint16_t index)
|
||||
{
|
||||
if (recipient == (CLASS_REQUEST | INTERFACE_RECIPIENT)) /* Interface */
|
||||
{
|
||||
if (index == 0)
|
||||
{
|
||||
if (RequestNo == USB_CCID_REQ_GET_CLOCK_FREQUENCIES)
|
||||
@@ -194,7 +194,7 @@ gnuk_setup_with_data (uint8_t recipient, uint8_t RequestNo, uint16_t index)
|
||||
#if defined(PINPAD_DND_SUPPORT)
|
||||
# if defined(ENABLE_VIRTUAL_COM_PORT)
|
||||
else if (index == 1)
|
||||
Virtual_Com_Port_Data_Setup (RequestNo);
|
||||
vcom_port_data_setup (RequestNo);
|
||||
else if (index == 3)
|
||||
# else
|
||||
else if (index == 1)
|
||||
@@ -205,8 +205,9 @@ gnuk_setup_with_data (uint8_t recipient, uint8_t RequestNo, uint16_t index)
|
||||
}
|
||||
#elif defined(ENABLE_VIRTUAL_COM_PORT)
|
||||
else if (index == 1)
|
||||
Virtual_Com_Port_Data_Setup (RequestNo);
|
||||
vcom_port_data_setup (RequestNo);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -226,7 +227,7 @@ gnuk_setup_with_nodata (uint8_t recipient, uint8_t RequestNo, uint16_t index)
|
||||
#if defined(PINPAD_DND_SUPPORT)
|
||||
# if defined(ENABLE_VIRTUAL_COM_PORT)
|
||||
else if (index == 1)
|
||||
return Virtual_Com_Port_NoData_Setup (RequestNo);
|
||||
return vcom_port_setup_with_nodata (RequestNo);
|
||||
else if (index == 3)
|
||||
# else
|
||||
else if (index == 1)
|
||||
@@ -242,7 +243,7 @@ gnuk_setup_with_nodata (uint8_t recipient, uint8_t RequestNo, uint16_t index)
|
||||
}
|
||||
#elif defined(ENABLE_VIRTUAL_COM_PORT)
|
||||
else if (index == 1)
|
||||
return Virtual_Com_Port_NoData_Setup (RequestNo);
|
||||
return vcom_port_setup_with_nodata (RequestNo);
|
||||
#endif
|
||||
else
|
||||
return USB_UNSUPPORT;
|
||||
|
||||
Reference in New Issue
Block a user