USB device stack - Added support for the logo/windows key to USB keyboard.

Dependents:   randomSearch

Fork of USBDevice by mbed official

Revision:
46:378357d7e90d
Parent:
45:0f216c4e75e5
Child:
47:a0cd9646ecd1
diff -r 0f216c4e75e5 -r 378357d7e90d USBDevice/TARGET_RENESAS/TARGET_RZ_A1H/src/common/usb0_function_lib.c
--- a/USBDevice/TARGET_RENESAS/TARGET_RZ_A1H/src/common/usb0_function_lib.c	Thu Mar 26 14:30:20 2015 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2026 +0,0 @@
-/*******************************************************************************
-* DISCLAIMER
-* This software is supplied by Renesas Electronics Corporation and is only
-* intended for use with Renesas products. No other uses are authorized. This
-* software is owned by Renesas Electronics Corporation and is protected under
-* all applicable laws, including copyright laws.
-* THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING
-* THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT
-* LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
-* AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.
-* TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS
-* ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE
-* FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR
-* ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE
-* BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-* Renesas reserves the right, without notice, to make changes to this software
-* and to discontinue the availability of this software. By using this software,
-* you agree to the additional terms and conditions found by accessing the
-* following link:
-* http://www.renesas.com/disclaimer
-* Copyright (C) 2012 - 2014 Renesas Electronics Corporation. All rights reserved.
-*******************************************************************************/
-/*******************************************************************************
-* File Name    : usb0_function_lib.c
-* $Rev: 1116 $
-* $Date:: 2014-07-09 16:29:19 +0900#$
-* Device(s)    : RZ/A1H
-* Tool-Chain   :
-* OS           : None
-* H/W Platform :
-* Description  : RZ/A1H R7S72100 USB Sample Program
-* Operation    :
-* Limitations  :
-*******************************************************************************/
-
-
-/*******************************************************************************
-Includes   <System Includes> , "Project Includes"
-*******************************************************************************/
-#include "usb0_function.h"
-
-
-/*******************************************************************************
-Typedef definitions
-*******************************************************************************/
-
-
-/*******************************************************************************
-Macro definitions
-*******************************************************************************/
-
-
-/*******************************************************************************
-Imported global variables and functions (from other files)
-*******************************************************************************/
-
-
-/*******************************************************************************
-Exported global variables and functions (to be accessed by other files)
-*******************************************************************************/
-
-
-/*******************************************************************************
-Private global variables and functions
-*******************************************************************************/
-
-
-/*******************************************************************************
-* Function Name: usb0_function_enable_brdy_int
-* Description  : Enables BRDY interrupt in the pipe spceified by the argument.
-*              : Disables BEMP/NRDY/BRDY interrupts in all pipes before enabling
-*              : BRDY. Enables BRDY interrupt in the pipe specified by the argument
-*              : in the disabled status. After enabling BRDY, recover all
-*              : BEMP/NRDY/BRDY disabled/enabled status.
-* Arguments    : uint16_t pipe           ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_enable_brdy_int (uint16_t pipe)
-{
-    /* enable brdy interrupt */
-    USB200.BRDYENB |= (uint16_t)g_usb0_function_bit_set[pipe];
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_disable_brdy_int
-* Description  : Disables BRDY interrupt in the pipe spceified by the argument.
-*              : Disables BEMP/NRDY/BRDY interrupts in all pipes before disabling
-*              : BRDY. Enables BRDY interrupt in the pipe specified by the argument
-*              : in the disabled status. After disabling BRDY, recover all
-*              : BEMP/NRDY/BRDY disabled/enabled status.
-* Arguments    : uint16_t pipe        ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_disable_brdy_int (uint16_t pipe)
-{
-    /* disable brdy interrupt */
-    USB200.BRDYENB &= (uint16_t)~(g_usb0_function_bit_set[pipe]);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_clear_brdy_sts
-* Description  : Clear BRDY interrupt status in the pipe spceified by the argument.
-* Arguments    : uint16_t pipe        ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_clear_brdy_sts (uint16_t pipe)
-{
-    /* clear brdy status */
-    USB200.BRDYSTS = (uint16_t)~(g_usb0_function_bit_set[pipe]);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_enable_bemp_int
-* Description  : Enables BEMP interrupt in the pipe spceified by the argument.
-*              : Disables BEMP/NRDY/BRDY interrupts in all pipes before enabling
-*              : BEMP. Enables BEMP interrupt in the pipe specified by the argument
-*              : in the disabled status. After enabling BEMP, recover all
-*              : BEMP/NRDY/BRDY disabled/enabled status.
-* Arguments    : uint16_t pipe           ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_enable_bemp_int (uint16_t pipe)
-{
-    /* enable bemp interrupt */
-    USB200.BEMPENB |= (uint16_t)g_usb0_function_bit_set[pipe];
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_disable_bemp_int
-* Description  : Disables BEMP interrupt in the pipe spceified by the argument.
-*              : Disables BEMP/NRDY/BRDY interrupts in all pipes before disabling
-*              : BEMP. Enables BEMP interrupt in the pipe specified by the argument
-*              : in the disabled status. After enabling BEMP, recover all
-*              : BEMP/NRDY/BRDY disabled/enabled status.
-* Arguments    : uint16_t pipe           ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_disable_bemp_int (uint16_t pipe)
-{
-    /* disable bemp interrupt */
-    USB200.BEMPENB &= (uint16_t)~(g_usb0_function_bit_set[pipe]);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_clear_bemp_sts
-* Description  : Clear BEMP interrupt status in the pipe spceified by the argument.
-* Arguments    : uint16_t pipe        ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_clear_bemp_sts (uint16_t pipe)
-{
-    /* clear bemp status */
-    USB200.BEMPSTS = (uint16_t)~(g_usb0_function_bit_set[pipe]);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_enable_nrdy_int
-* Description  : Enables NRDY interrupt in the pipe spceified by the argument.
-*              : Disables BEMP/NRDY/BRDY interrupts in all pipes before enabling
-*              : NRDY. Enables NRDY interrupt in the pipe specified by the argument
-*              : in the disabled status. After enabling NRDY, recover all
-*              : BEMP/NRDY/BRDY disabled/enabled status.
-* Arguments    : uint16_t pipe             ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_enable_nrdy_int (uint16_t pipe)
-{
-    /* enable nrdy interrupt */
-    USB200.NRDYENB |= (uint16_t)g_usb0_function_bit_set[pipe];
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_disable_nrdy_int
-* Description  : Disables NRDY interrupt in the pipe spceified by the argument.
-*              : Disables BEMP/NRDY/BRDY interrupts in all pipes before disabling
-*              : NRDY. Disables NRDY interrupt in the pipe specified by the argument
-*              : in the disabled status. After disabling NRDY, recover all
-*              : BEMP/NRDY/BRDY disabled/enabled status.
-* Arguments    : uint16_t pipe            ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_disable_nrdy_int (uint16_t pipe)
-{
-    /* disable nrdy interrupt */
-    USB200.NRDYENB &= (uint16_t)~(g_usb0_function_bit_set[pipe]);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_clear_nrdy_sts
-* Description  : Clear NRDY interrupt status in the pipe spceified by the argument.
-* Arguments    : uint16_t pipe        ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_clear_nrdy_sts (uint16_t pipe)
-{
-    /* clear nrdy status */
-    USB200.NRDYSTS = (uint16_t)~(g_usb0_function_bit_set[pipe]);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_is_hispeed
-* Description  : Returns the result of USB reset hand shake (RHST) as
-*              : return value.
-* Arguments    : none
-* Return Value : USB_FUNCTION_HIGH_SPEED    ; Hi-Speed
-*              : USB_FUNCTION_FULL_SPEED    ; Full-Speed
-*              : LOW_SPEED                  ; Low-Speed
-*              : USB_FUNCTION_NON_SPEED     ; error
-*******************************************************************************/
-uint16_t usb0_function_is_hispeed (void)
-{
-    uint16_t rhst;
-    uint16_t speed;
-
-    rhst = RZA_IO_RegRead_16(&USB200.DVSTCTR0, USB_DVSTCTR0_RHST_SHIFT, USB_DVSTCTR0_RHST);
-
-    if (rhst == USB_FUNCTION_HSMODE)
-    {
-        speed = USB_FUNCTION_HIGH_SPEED;
-    }
-    else if (rhst == USB_FUNCTION_FSMODE)
-    {
-        speed = USB_FUNCTION_FULL_SPEED;
-    }
-    else if (rhst == USB_FUNCTION_LSMODE)
-    {
-        speed = USB_FUNCTION_LOW_SPEED;
-    }
-    else
-    {
-        speed = USB_FUNCTION_NON_SPEED;
-    }
-
-    return speed;
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_is_hispeed_enable
-* Description  : Returns the USB High-Speed connection enabled status as
-*              : return value.
-* Arguments    : none
-* Return Value : DEVDRV_USBF_YES  : Hi-Speed Enable
-*              : DEVDRV_USBF_NO   : Hi-Speed Disable
-*******************************************************************************/
-uint16_t usb0_function_is_hispeed_enable (void)
-{
-    uint16_t ret;
-
-    ret = DEVDRV_USBF_NO;
-
-    if (RZA_IO_RegRead_16(&USB200.SYSCFG0, USB_SYSCFG_HSE_SHIFT, USB_SYSCFG_HSE) == 1)
-    {
-        ret = DEVDRV_USBF_YES;
-    }
-
-    return ret;
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_set_pid_buf
-* Description  : Enables communicaqtion in the pipe specified by the argument
-*              : (BUF).
-* Arguments    : uint16_t pipe             ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_set_pid_buf (uint16_t pipe)
-{
-    uint16_t pid;
-
-    pid = usb0_function_get_pid(pipe);
-
-    if (pid == DEVDRV_USBF_PID_STALL2)
-    {
-        usb0_function_set_pid_nak(pipe);
-    }
-
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            RZA_IO_RegWrite_16(&USB200.DCPCTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_DCPCTR_PID_SHIFT,
-                                USB_DCPCTR_PID);
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_6_8_PID_SHIFT,
-                                USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_6_8_PID_SHIFT,
-                                USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_6_8_PID_SHIFT,
-                                USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_9_PID_SHIFT,
-                                USB_PIPEnCTR_9_PID);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                DEVDRV_USBF_PID_BUF,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        default:
-        break;
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_set_pid_nak
-* Description  : Disables communication (NAK) in the pipe specified by the argument.
-*              : When the pipe status was enabling communication (BUF) before
-*              : executing before executing this function, waits in the software
-*              : until the pipe becomes ready after setting disabled.
-* Arguments    : uint16_t pipe            ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_set_pid_nak (uint16_t pipe)
-{
-    uint16_t pid;
-    uint16_t pbusy;
-    uint32_t loop;
-
-    pid = usb0_function_get_pid(pipe);
-
-    if (pid == DEVDRV_USBF_PID_STALL2)
-    {
-        usb0_function_set_pid_stall(pipe);
-    }
-
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            RZA_IO_RegWrite_16(&USB200.DCPCTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_DCPCTR_PID_SHIFT,
-                                USB_DCPCTR_PID);
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_1_5_PID_SHIFT,
-                                USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_6_8_PID_SHIFT,
-                                USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_6_8_PID_SHIFT,
-                                USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_6_8_PID_SHIFT,
-                                USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_9_PID_SHIFT,
-                                USB_PIPEnCTR_9_PID);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                DEVDRV_USBF_PID_NAK,
-                                USB_PIPEnCTR_A_F_PID_SHIFT,
-                                USB_PIPEnCTR_A_F_PID);
-        break;
-
-        default:
-        break;
-    }
-
-    if (pid == DEVDRV_USBF_PID_BUF)
-    {
-        for (loop = 0; loop < 200; loop++)
-        {
-            switch (pipe)
-            {
-                case USB_FUNCTION_PIPE0:
-                    pbusy = RZA_IO_RegRead_16(&USB200.DCPCTR,
-                                                USB_DCPCTR_PBUSY_SHIFT,
-                                                USB_DCPCTR_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE1:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE1CTR,
-                                                USB_PIPEnCTR_1_5_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_1_5_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE2:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE2CTR,
-                                                USB_PIPEnCTR_1_5_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_1_5_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE3:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE3CTR,
-                                                USB_PIPEnCTR_1_5_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_1_5_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE4:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE4CTR,
-                                                USB_PIPEnCTR_1_5_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_1_5_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE5:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE5CTR,
-                                                USB_PIPEnCTR_1_5_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_1_5_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE6:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE6CTR,
-                                                USB_PIPEnCTR_6_8_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_6_8_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE7:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE7CTR,
-                                                USB_PIPEnCTR_6_8_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_6_8_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE8:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE8CTR,
-                                                USB_PIPEnCTR_6_8_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_6_8_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPE9:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPE9CTR,
-                                                USB_PIPEnCTR_9_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_9_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPEA:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPEACTR,
-                                                USB_PIPEnCTR_A_F_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_A_F_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPEB:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPEBCTR,
-                                                USB_PIPEnCTR_A_F_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_A_F_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPEC:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPECCTR,
-                                                USB_PIPEnCTR_A_F_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_A_F_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPED:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPEDCTR,
-                                                USB_PIPEnCTR_A_F_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_A_F_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPEE:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPEECTR,
-                                                USB_PIPEnCTR_A_F_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_A_F_PBUSY);
-                break;
-
-                case USB_FUNCTION_PIPEF:
-                    pbusy = RZA_IO_RegRead_16(&USB200.PIPEFCTR,
-                                                USB_PIPEnCTR_A_F_PBUSY_SHIFT,
-                                                USB_PIPEnCTR_A_F_PBUSY);
-                break;
-
-                default:
-                    pbusy   = 1;
-                break;
-            }
-
-            if (pbusy == 0)
-            {
-                break;
-            }
-            Userdef_USB_usb0_function_delay_500ns();
-        }
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_set_pid_stall
-* Description  : Disables communication (STALL) in the pipe specified by the
-*              : argument.
-* Arguments    : uint16_t pipe            ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_set_pid_stall (uint16_t pipe)
-{
-    uint16_t pid;
-
-    pid = usb0_function_get_pid(pipe);
-    if (pid == DEVDRV_USBF_PID_BUF)
-    {
-        switch (pipe)
-        {
-            case USB_FUNCTION_PIPE0:
-                RZA_IO_RegWrite_16(&USB200.DCPCTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_DCPCTR_PID_SHIFT,
-                                    USB_DCPCTR_PID);
-            break;
-
-            case USB_FUNCTION_PIPE1:
-                RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE2:
-                RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE3:
-                RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE4:
-                RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE5:
-                RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE6:
-                RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-            break;
-
-            case USB_FUNCTION_PIPE7:
-                RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-            break;
-
-            case USB_FUNCTION_PIPE8:
-                RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-            break;
-
-            case USB_FUNCTION_PIPE9:
-                RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_9_PID_SHIFT,
-                                    USB_PIPEnCTR_9_PID);
-            break;
-
-            case USB_FUNCTION_PIPEA:
-                RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEB:
-                RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEC:
-                RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPED:
-                RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEE:
-                RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEF:
-                RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                    DEVDRV_USBF_PID_STALL2,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            default:
-            break;
-        }
-    }
-    else
-    {
-        switch (pipe)
-        {
-            case USB_FUNCTION_PIPE0:
-                RZA_IO_RegWrite_16(&USB200.DCPCTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_DCPCTR_PID_SHIFT,
-                                    USB_DCPCTR_PID);
-            break;
-
-            case USB_FUNCTION_PIPE1:
-                RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE2:
-                RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE3:
-                RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE4:
-                RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE5:
-                RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-            break;
-
-            case USB_FUNCTION_PIPE6:
-                RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-            break;
-
-            case USB_FUNCTION_PIPE7:
-                RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-            break;
-
-            case USB_FUNCTION_PIPE8:
-                RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-            break;
-
-            case USB_FUNCTION_PIPE9:
-                RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_9_PID_SHIFT,
-                                    USB_PIPEnCTR_9_PID);
-            break;
-
-            case USB_FUNCTION_PIPEA:
-                RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEB:
-                RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEC:
-                RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPED:
-                RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEE:
-                RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            case USB_FUNCTION_PIPEF:
-                RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                    DEVDRV_USBF_PID_STALL,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-            break;
-
-            default:
-            break;
-        }
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_clear_pid_stall
-* Description  : Disables communication (NAK) in the pipe specified by the argument.
-* Arguments    : uint16_t pipe            ; pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_clear_pid_stall (uint16_t pipe)
-{
-    usb0_function_set_pid_nak(pipe);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_get_pid
-* Description  : Returns the pipe state specified by the argument.
-* Arguments    : uint16_t pipe          ; Pipe Number
-* Return Value : PID
-*******************************************************************************/
-uint16_t usb0_function_get_pid (uint16_t pipe)
-{
-    uint16_t pid;
-
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            pid = RZA_IO_RegRead_16(&USB200.DCPCTR,
-                                    USB_DCPCTR_PID_SHIFT,
-                                    USB_DCPCTR_PID);
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE1CTR,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE2CTR,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE3CTR,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE4CTR,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE5CTR,
-                                    USB_PIPEnCTR_1_5_PID_SHIFT,
-                                    USB_PIPEnCTR_1_5_PID);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE6CTR,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE7CTR,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE8CTR,
-                                    USB_PIPEnCTR_6_8_PID_SHIFT,
-                                    USB_PIPEnCTR_6_8_PID);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            pid = RZA_IO_RegRead_16(&USB200.PIPE9CTR,
-                                    USB_PIPEnCTR_9_PID_SHIFT,
-                                    USB_PIPEnCTR_9_PID);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            pid = RZA_IO_RegRead_16(&USB200.PIPEACTR,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            pid = RZA_IO_RegRead_16(&USB200.PIPEBCTR,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            pid = RZA_IO_RegRead_16(&USB200.PIPECCTR,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            pid = RZA_IO_RegRead_16(&USB200.PIPEDCTR,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            pid = RZA_IO_RegRead_16(&USB200.PIPEECTR,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            pid = RZA_IO_RegRead_16(&USB200.PIPEFCTR,
-                                    USB_PIPEnCTR_A_F_PID_SHIFT,
-                                    USB_PIPEnCTR_A_F_PID);
-        break;
-
-        default:
-            pid = 0;
-        break;
-    }
-
-    return pid;
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_set_csclr
-* Description  : CSPLIT status clear setting of sprit transaction in specified
-*              : pipe is performed.
-*              : When SQSET bit or SQCLR bit, and SQSET bit or SQCLR bit
-*              : in DCPCTR register are continuously changed (when the sequence
-*              : toggle bit of data PID is continuously changed over two or more pipes),
-*              : the access cycle with 120 ns and more than 5 cycle bus clock is necessary.
-*              : Do not set both SQCLR bit and SQSET bit to 1 at the same time.
-*              : In addition, both bits should be operated after PID is set to NAK.
-*              : However, when it is set to the isochronous transfer as the transfer type
-*              : (TYPE=11), writing in SQSET bit is disabled.
-* Arguments    : uint16_t pipe     ; Pipe number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_set_csclr (uint16_t pipe)
-{
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            RZA_IO_RegWrite_16(&USB200.DCPCTR,
-                                1,
-                                USB_DCPCTR_CSCLR_SHIFT,
-                                USB_DCPCTR_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_CSCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_CSCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_CSCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_CSCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_CSCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_CSCLR_SHIFT,
-                                USB_PIPEnCTR_6_8_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_CSCLR_SHIFT,
-                                USB_PIPEnCTR_6_8_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_CSCLR_SHIFT,
-                                USB_PIPEnCTR_6_8_CSCLR);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                1,
-                                USB_PIPEnCTR_9_CSCLR_SHIFT,
-                                USB_PIPEnCTR_9_CSCLR);
-        break;
-
-        default:
-            /* PIPEA-F have not CSCLR */
-        break;
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_set_sqclr
-* Description  : Sets the sequence bit of the pipe specified by the argument to
-*              : DATA0.
-* Arguments    : uint16_t pipe              ; Pipe Number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_set_sqclr (uint16_t pipe)
-{
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            RZA_IO_RegWrite_16(&USB200.DCPCTR,
-                                1,
-                                USB_DCPCTR_SQCLR_SHIFT,
-                                USB_DCPCTR_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQCLR_SHIFT,
-                                USB_PIPEnCTR_1_5_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_SQCLR_SHIFT,
-                                USB_PIPEnCTR_6_8_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_SQCLR_SHIFT,
-                                USB_PIPEnCTR_6_8_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_SQCLR_SHIFT,
-                                USB_PIPEnCTR_6_8_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                1,
-                                USB_PIPEnCTR_9_SQCLR_SHIFT,
-                                USB_PIPEnCTR_9_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQCLR_SHIFT,
-                                USB_PIPEnCTR_A_F_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQCLR_SHIFT,
-                                USB_PIPEnCTR_A_F_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQCLR_SHIFT,
-                                USB_PIPEnCTR_A_F_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQCLR_SHIFT,
-                                USB_PIPEnCTR_A_F_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQCLR_SHIFT,
-                                USB_PIPEnCTR_A_F_SQCLR);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQCLR_SHIFT,
-                                USB_PIPEnCTR_A_F_SQCLR);
-        break;
-
-        default:
-        break;
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_set_sqset
-* Description  : Sets the sequence bit of the pipe specified by the argument to
-*              : DATA1.
-* Arguments    : uint16_t pipe   ; Pipe number
-* Return Value : none
-*******************************************************************************/
-void usb0_function_set_sqset (uint16_t pipe)
-{
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            RZA_IO_RegWrite_16(&USB200.DCPCTR,
-                                1,
-                                USB_DCPCTR_SQSET_SHIFT,
-                                USB_DCPCTR_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQSET_SHIFT,
-                                USB_PIPEnCTR_1_5_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQSET_SHIFT,
-                                USB_PIPEnCTR_1_5_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQSET_SHIFT,
-                                USB_PIPEnCTR_1_5_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQSET_SHIFT,
-                                USB_PIPEnCTR_1_5_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_SQSET_SHIFT,
-                                USB_PIPEnCTR_1_5_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_SQSET_SHIFT,
-                                USB_PIPEnCTR_6_8_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_SQSET_SHIFT,
-                                USB_PIPEnCTR_6_8_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_SQSET_SHIFT,
-                                USB_PIPEnCTR_6_8_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                1,
-                                USB_PIPEnCTR_9_SQSET_SHIFT,
-                                USB_PIPEnCTR_9_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQSET_SHIFT,
-                                USB_PIPEnCTR_A_F_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQSET_SHIFT,
-                                USB_PIPEnCTR_A_F_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQSET_SHIFT,
-                                USB_PIPEnCTR_A_F_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQSET_SHIFT,
-                                USB_PIPEnCTR_A_F_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQSET_SHIFT,
-                                USB_PIPEnCTR_A_F_SQSET);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_SQSET_SHIFT,
-                                USB_PIPEnCTR_A_F_SQSET);
-        break;
-
-        default:
-        break;
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_get_sqmon
-* Description  : Toggle bit of specified pipe is obtained
-* Arguments    : uint16_t pipe   ; Pipe number
-* Return Value : sqmon
-*******************************************************************************/
-uint16_t usb0_function_get_sqmon (uint16_t pipe)
-{
-    uint16_t sqmon;
-
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            sqmon = RZA_IO_RegRead_16(&USB200.DCPCTR,
-                                        USB_DCPCTR_SQMON_SHIFT,
-                                        USB_DCPCTR_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE1CTR,
-                                        USB_PIPEnCTR_1_5_SQMON_SHIFT,
-                                        USB_PIPEnCTR_1_5_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE2CTR,
-                                        USB_PIPEnCTR_1_5_SQMON_SHIFT,
-                                        USB_PIPEnCTR_1_5_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE3CTR,
-                                        USB_PIPEnCTR_1_5_SQMON_SHIFT,
-                                        USB_PIPEnCTR_1_5_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE4CTR,
-                                        USB_PIPEnCTR_1_5_SQMON_SHIFT,
-                                        USB_PIPEnCTR_1_5_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE5CTR,
-                                        USB_PIPEnCTR_1_5_SQMON_SHIFT,
-                                        USB_PIPEnCTR_1_5_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE6CTR,
-                                        USB_PIPEnCTR_6_8_SQMON_SHIFT,
-                                        USB_PIPEnCTR_6_8_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE7CTR,
-                                        USB_PIPEnCTR_6_8_SQMON_SHIFT,
-                                        USB_PIPEnCTR_6_8_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE8CTR,
-                                        USB_PIPEnCTR_6_8_SQMON_SHIFT,
-                                        USB_PIPEnCTR_6_8_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPE9CTR,
-                                        USB_PIPEnCTR_9_SQMON_SHIFT,
-                                        USB_PIPEnCTR_9_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPEACTR,
-                                        USB_PIPEnCTR_A_F_SQMON_SHIFT,
-                                        USB_PIPEnCTR_A_F_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPEBCTR,
-                                        USB_PIPEnCTR_A_F_SQMON_SHIFT,
-                                        USB_PIPEnCTR_A_F_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPECCTR,
-                                        USB_PIPEnCTR_A_F_SQMON_SHIFT,
-                                        USB_PIPEnCTR_A_F_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPEDCTR,
-                                        USB_PIPEnCTR_A_F_SQMON_SHIFT,
-                                        USB_PIPEnCTR_A_F_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPEECTR,
-                                        USB_PIPEnCTR_A_F_SQMON_SHIFT,
-                                        USB_PIPEnCTR_A_F_SQMON);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            sqmon = RZA_IO_RegRead_16(&USB200.PIPEFCTR,
-                                        USB_PIPEnCTR_A_F_SQMON_SHIFT,
-                                        USB_PIPEnCTR_A_F_SQMON);
-        break;
-
-        default:
-            sqmon = 0;
-        break;
-    }
-
-    return sqmon;
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_aclrm
-* Description  : The buffer of specified pipe is initialized
-* Arguments    : uint16_t pipe    : Pipe
-* Return Value : none
-*******************************************************************************/
-void usb0_function_aclrm (uint16_t pipe)
-{
-    usb0_function_set_aclrm(pipe);
-    usb0_function_clr_aclrm(pipe);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_set_aclrm
-* Description  : The auto buffer clear mode of specified pipe is enabled
-* Arguments    : uint16_t pipe    : Pipe
-* Return Value : none
-*******************************************************************************/
-void usb0_function_set_aclrm (uint16_t pipe)
-{
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                1,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_ACLRM_SHIFT,
-                                USB_PIPEnCTR_6_8_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_ACLRM_SHIFT,
-                                USB_PIPEnCTR_6_8_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                1,
-                                USB_PIPEnCTR_6_8_ACLRM_SHIFT,
-                                USB_PIPEnCTR_6_8_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                1,
-                                USB_PIPEnCTR_9_ACLRM_SHIFT,
-                                USB_PIPEnCTR_9_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                1,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                1,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                1,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        default:
-        break;
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_clr_aclrm
-* Description  : The auto buffer clear mode of specified pipe is enabled
-* Arguments    : uint16_t pipe    : Pipe
-* Return Value : none
-*******************************************************************************/
-void usb0_function_clr_aclrm (uint16_t pipe)
-{
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            RZA_IO_RegWrite_16(&USB200.PIPE1CTR,
-                                0,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            RZA_IO_RegWrite_16(&USB200.PIPE2CTR,
-                                0,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            RZA_IO_RegWrite_16(&USB200.PIPE3CTR,
-                                0,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            RZA_IO_RegWrite_16(&USB200.PIPE4CTR,
-                                0,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            RZA_IO_RegWrite_16(&USB200.PIPE5CTR,
-                                0,
-                                USB_PIPEnCTR_1_5_ACLRM_SHIFT,
-                                USB_PIPEnCTR_1_5_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            RZA_IO_RegWrite_16(&USB200.PIPE6CTR,
-                                0,
-                                USB_PIPEnCTR_6_8_ACLRM_SHIFT,
-                                USB_PIPEnCTR_6_8_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            RZA_IO_RegWrite_16(&USB200.PIPE7CTR,
-                                0,
-                                USB_PIPEnCTR_6_8_ACLRM_SHIFT,
-                                USB_PIPEnCTR_6_8_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            RZA_IO_RegWrite_16(&USB200.PIPE8CTR,
-                                0,
-                                USB_PIPEnCTR_6_8_ACLRM_SHIFT,
-                                USB_PIPEnCTR_6_8_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            RZA_IO_RegWrite_16(&USB200.PIPE9CTR,
-                                0,
-                                USB_PIPEnCTR_9_ACLRM_SHIFT,
-                                USB_PIPEnCTR_9_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            RZA_IO_RegWrite_16(&USB200.PIPEACTR,
-                                0,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            RZA_IO_RegWrite_16(&USB200.PIPEBCTR,
-                                0,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            RZA_IO_RegWrite_16(&USB200.PIPECCTR,
-                                0,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            RZA_IO_RegWrite_16(&USB200.PIPEDCTR,
-                                0,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            RZA_IO_RegWrite_16(&USB200.PIPEECTR,
-                                0,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            RZA_IO_RegWrite_16(&USB200.PIPEFCTR,
-                                0,
-                                USB_PIPEnCTR_A_F_ACLRM_SHIFT,
-                                USB_PIPEnCTR_A_F_ACLRM);
-        break;
-
-        default:
-        break;
-    }
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_get_inbuf
-* Description  : Returns INBUFM of the pipe specified by the argument.
-* Arguments    : uint16_t pipe             ; Pipe Number
-* Return Value : inbuf
-*******************************************************************************/
-uint16_t usb0_function_get_inbuf (uint16_t pipe)
-{
-    uint16_t inbuf;
-
-    switch (pipe)
-    {
-        case USB_FUNCTION_PIPE0:
-            inbuf = 0;
-        break;
-
-        case USB_FUNCTION_PIPE1:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPE1CTR,
-                                    USB_PIPEnCTR_1_5_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_1_5_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPE2:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPE2CTR,
-                                    USB_PIPEnCTR_1_5_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_1_5_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPE3:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPE3CTR,
-                                    USB_PIPEnCTR_1_5_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_1_5_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPE4:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPE4CTR,
-                                    USB_PIPEnCTR_1_5_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_1_5_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPE5:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPE5CTR,
-                                    USB_PIPEnCTR_1_5_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_1_5_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPE6:
-            inbuf = 0;
-        break;
-
-        case USB_FUNCTION_PIPE7:
-            inbuf = 0;
-        break;
-
-        case USB_FUNCTION_PIPE8:
-            inbuf = 0;
-        break;
-
-        case USB_FUNCTION_PIPE9:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPE9CTR,
-                                    USB_PIPEnCTR_9_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_9_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPEA:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPEACTR,
-                                    USB_PIPEnCTR_A_F_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_A_F_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPEB:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPEBCTR,
-                                    USB_PIPEnCTR_A_F_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_A_F_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPEC:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPECCTR,
-                                    USB_PIPEnCTR_A_F_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_A_F_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPED:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPEDCTR,
-                                    USB_PIPEnCTR_A_F_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_A_F_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPEE:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPEECTR,
-                                    USB_PIPEnCTR_A_F_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_A_F_INBUFM);
-        break;
-
-        case USB_FUNCTION_PIPEF:
-            inbuf = RZA_IO_RegRead_16(&USB200.PIPEFCTR,
-                                    USB_PIPEnCTR_A_F_INBUFM_SHIFT,
-                                    USB_PIPEnCTR_A_F_INBUFM);
-        break;
-
-        default:
-            inbuf = 0;
-        break;
-    }
-
-    return inbuf;
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_setting_interrupt
-* Description  : Sets the USB module interrupt level.
-* Arguments    : uint8_t level ;interrupt level
-* Return Value : none
-*******************************************************************************/
-#if 0
-void usb0_function_setting_interrupt (uint8_t level)
-{
-    uint16_t d0fifo_dmaintid;
-    uint16_t d1fifo_dmaintid;
-
-    R_INTC_RegistIntFunc(INTC_ID_USBI0, usb0_function_interrupt);
-    R_INTC_SetPriority(INTC_ID_USBI0, level);
-    R_INTC_Enable(INTC_ID_USBI0);
-
-    d0fifo_dmaintid = Userdef_USB_usb0_function_d0fifo_dmaintid();
-
-    if (d0fifo_dmaintid != 0xFFFF)
-    {
-        R_INTC_RegistIntFunc(d0fifo_dmaintid, usb0_function_dma_interrupt_d0fifo);
-        R_INTC_SetPriority(d0fifo_dmaintid, level);
-        R_INTC_Enable(d0fifo_dmaintid);
-    }
-
-    d1fifo_dmaintid = Userdef_USB_usb0_function_d1fifo_dmaintid();
-
-    if (d1fifo_dmaintid != 0xFFFF)
-    {
-        R_INTC_RegistIntFunc(d1fifo_dmaintid, usb0_function_dma_interrupt_d1fifo);
-        R_INTC_SetPriority(d1fifo_dmaintid, level);
-        R_INTC_Enable(d1fifo_dmaintid);
-    }
-}
-#endif
-
-/*******************************************************************************
-* Function Name: usb0_function_reset_module
-* Description  : Initializes the USB module.
-*              : Enables providing clock to the USB module.
-*              : Sets USB bus wait register.
-* Arguments    : uint16_t clockmode ; 48MHz ; USBFCLOCK_X1_48MHZ
-*              :                    ; 12MHz ; USBFCLOCK_EXTAL_12MHZ
-* Return Value : none
-*******************************************************************************/
-void usb0_function_reset_module (uint16_t clockmode)
-{
-    /* UPLLE bit is only USB0 */
-    if (RZA_IO_RegRead_16(&USB200.SYSCFG0,
-                                USB_SYSCFG_UPLLE_SHIFT,
-                                USB_SYSCFG_UPLLE) == 1)
-    {
-        if ((USB200.SYSCFG0 & USB_FUNCTION_BITUCKSEL) != clockmode)
-        {
-            RZA_IO_RegWrite_16(&USB200.SUSPMODE,
-                                0,
-                                USB_SUSPMODE_SUSPM_SHIFT,
-                                USB_SUSPMODE_SUSPM);
-            USB200.SYSCFG0 = 0;
-            USB200.SYSCFG0 = (USB_FUNCTION_BITUPLLE | clockmode);
-            Userdef_USB_usb0_function_delay_xms(1);
-            RZA_IO_RegWrite_16(&USB200.SUSPMODE,
-                                1,
-                                USB_SUSPMODE_SUSPM_SHIFT,
-                                USB_SUSPMODE_SUSPM);
-        }
-        else
-        {
-            RZA_IO_RegWrite_16(&USB200.SUSPMODE,
-                                0,
-                                USB_SUSPMODE_SUSPM_SHIFT,
-                                USB_SUSPMODE_SUSPM);
-            Userdef_USB_usb0_function_delay_xms(1);
-            RZA_IO_RegWrite_16(&USB200.SUSPMODE,
-                                1,
-                                USB_SUSPMODE_SUSPM_SHIFT,
-                                USB_SUSPMODE_SUSPM);
-        }
-    }
-    else
-    {
-        RZA_IO_RegWrite_16(&USB200.SUSPMODE,
-                            0,
-                            USB_SUSPMODE_SUSPM_SHIFT,
-                            USB_SUSPMODE_SUSPM);
-        USB200.SYSCFG0 = 0;
-        USB200.SYSCFG0 = (USB_FUNCTION_BITUPLLE | clockmode);
-        Userdef_USB_usb0_function_delay_xms(1);
-        RZA_IO_RegWrite_16(&USB200.SUSPMODE,
-                            1,
-                            USB_SUSPMODE_SUSPM_SHIFT,
-                            USB_SUSPMODE_SUSPM);
-    }
-
-    USB200.BUSWAIT = (uint16_t)(USB_FUNCTION_BUSWAIT_05 & USB_FUNCTION_BITBWAIT);
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_get_buf_size
-* Description  : Obtains pipe buffer size specified by the argument and
-*              : maximum packet size of the USB device in use.
-*              : When USB_FUNCTION_PIPE0 is specified by the argument, obtains the maximum
-*              : packet size of the USB device using the corresponding pipe.
-*              : For the case that USB_FUNCTION_PIPE0 is not assigned by the argument, when the
-*              : corresponding pipe is in continuous transfer mode,
-*              : obtains the buffer size allocated in the corresponcing pipe,
-*              : when incontinuous transfer, obtains maximum packet size.
-* Arguments    : uint16_t pipe      ; Pipe Number
-* Return Value : Maximum packet size or buffer size
-*******************************************************************************/
-uint16_t usb0_function_get_buf_size (uint16_t pipe)
-{
-    uint16_t size;
-    uint16_t bufsize;
-
-    if (pipe == USB_FUNCTION_PIPE0)
-    {
-        size = RZA_IO_RegRead_16(&USB200.DCPMAXP,
-                                USB_DCPMAXP_MXPS_SHIFT,
-                                USB_DCPMAXP_MXPS);
-    }
-    else
-    {
-        if (RZA_IO_RegRead_16(&g_usb0_function_pipecfg[pipe], USB_PIPECFG_CNTMD_SHIFT, USB_PIPECFG_CNTMD) == 1)
-        {
-            bufsize = RZA_IO_RegRead_16(&g_usb0_function_pipebuf[pipe], USB_PIPEBUF_BUFSIZE_SHIFT, USB_PIPEBUF_BUFSIZE);
-            size = (uint16_t)((bufsize + 1) * USB_FUNCTION_PIPExBUF);
-        }
-        else
-        {
-            size = RZA_IO_RegRead_16(&g_usb0_function_pipemaxp[pipe], USB_PIPEMAXP_MXPS_SHIFT, USB_PIPEMAXP_MXPS);
-        }
-    }
-    return size;
-}
-
-/*******************************************************************************
-* Function Name: usb0_function_get_mxps
-* Description  : Obtains maximum packet size of the USB device using the pipe
-*              : specified by the argument.
-* Arguments    : uint16_t pipe      ; Pipe Number
-* Return Value : Max Packet Size
-*******************************************************************************/
-uint16_t usb0_function_get_mxps (uint16_t pipe)
-{
-    uint16_t size;
-
-    if (pipe == USB_FUNCTION_PIPE0)
-    {
-        size = RZA_IO_RegRead_16(&USB200.DCPMAXP,
-                                USB_DCPMAXP_MXPS_SHIFT,
-                                USB_DCPMAXP_MXPS);
-    }
-    else
-    {
-        size = RZA_IO_RegRead_16(&g_usb0_function_pipemaxp[pipe], USB_PIPEMAXP_MXPS_SHIFT, USB_PIPEMAXP_MXPS);
-    }
-    return size;
-}
-
-/* End of File */