1 /*******************************************************************************
3 * This software is supplied by Renesas Electronics Corporation and is only
4 * intended for use with Renesas products. No other uses are authorized. This
5 * software is owned by Renesas Electronics Corporation and is protected under
6 * all applicable laws, including copyright laws.
7 * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING
8 * THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT
9 * LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
10 * AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.
11 * TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS
12 * ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE
13 * FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR
14 * ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE
15 * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
16 * Renesas reserves the right, without notice, to make changes to this software
17 * and to discontinue the availability of this software. By using this software,
18 * you agree to the additional terms and conditions found by accessing the
20 * http://www.renesas.com/disclaimer
21 * Copyright (C) 2012 - 2014 Renesas Electronics Corporation. All rights reserved.
22 *******************************************************************************/
24 /*******************************************************************************
25 Includes <System Includes> , "Project Includes"
26 *******************************************************************************/
27 #include "devdrv_usb_host_api.h"
30 /*******************************************************************************
32 *******************************************************************************/
35 /*******************************************************************************
37 *******************************************************************************/
40 /*******************************************************************************
41 Imported global variables and functions (from other files)
42 *******************************************************************************/
45 /*******************************************************************************
46 Exported global variables and functions (to be accessed by other files)
47 *******************************************************************************/
50 /********************************************************************************************************/
51 /* Endpoint Configuration Data Format */
52 /********************************************************************************************************/
53 /* LINE1: Pipe Window Select Register */
54 /* CPU Access PIPE : PIPE1 to PIPE9 [ ### SET ### ] */
55 /* LINE2: Pipe Configuration Register */
56 /* Transfer Type : USB_HOST_NONE [ USB_HOST_NONE ] */
57 /* Buffer Ready interrupt : USB_HOST_NONE [ USB_HOST_NONE ] */
58 /* Double Buffer Mode : USB_HOST_CNT_ON / USB_HOST_CNT_OFF [ ### SET ### ] */
59 /* Continuous Transmit: : USB_HOST_CNT_ON / USB_HOST_CNT_OFF [ ### SET ### ] */
60 /* Short NAK : USB_HOST_NONE [ USB_HOST_NONE ] */
61 /* Transfer Direction : USB_HOST_NONE [ USB_HOST_NONE ] */
62 /* Endpoint Number : USB_HOST_NONE [ USB_HOST_NONE ] */
63 /* LINE3: Pipe Buffer Configuration Register */
64 /* Buffer Size : (uint16_t)((uint16_t)(((x) / 64) - 1) << 10) */
66 /* Buffer Top Number : (uint16_t)(x) [ ### SET ### ] */
67 /* LINE4: Pipe Maxpacket Size Register */
68 /* Max Packet Size : USB_HOST_NONE [ USB_HOST_NONE ] */
69 /* LINE5: Pipe Cycle Configuration Register (0x6C) */
70 /* ISO Buffer Flush Mode : USB_HOST_NONE [ USB_HOST_NONE ] */
71 /* ISO Interval Value : USB_HOST_NONE [ USB_HOST_NONE ] */
72 /* LINE6: use FIFO port */
73 /* : USB_HOST_CUSE [ ### SET ### ] */
74 /* : USB_HOST_D0USE / USB_HOST_D1USE */
75 /* : USB_HOST_D0DMA / USB_HOST_D0DMA */
76 /* LINE7: use FIFO port Endian : USB_HOST_FIFO_BIG / USB_HOST_FIFO_LITTLE [ #SET# ] */
77 /********************************************************************************************************/
79 /* Device Address 1 */
80 USB_HOST_CFG_PIPETBL_t usb_host_blk_ep_tbl1
[ ] =
84 /* TYPE / BFRE / DBLB / CNTMD / SHTNAK / DIR / EPNUM */
85 USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_DBLBON
| USB_HOST_CNTMDON
| USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_NONE
,
86 (uint16_t)((uint16_t)(((1024) / 64) - 1) << 10) | (uint16_t)(8),
103 USB_HOST_CFG_PIPETBL_t usb_host_int_ep_tbl1
[ ] =
107 /* TYPE / BFRE / DBLB / CNTMD / SHTNAK / DIR / EPNUM */
108 USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_DBLBON
| USB_HOST_CNTMDON
| USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_NONE
,
109 (uint16_t)((uint16_t)(((64) / 64) - 1) << 10) | (uint16_t)(40),
117 /* TYPE / BFRE / DBLB / CNTMD / SHTNAK / DIR / EPNUM */
118 USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_DBLBON
| USB_HOST_CNTMDON
| USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_NONE
,
119 (uint16_t)((uint16_t)(((64) / 64) - 1) << 10) | (uint16_t)(41),
127 /* TYPE / BFRE / DBLB / CNTMD / SHTNAK / DIR / EPNUM */
128 USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_DBLBON
| USB_HOST_CNTMDON
| USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_NONE
,
129 (uint16_t)((uint16_t)(((64) / 64) - 1) << 10) | (uint16_t)(42),
137 /* TYPE / BFRE / DBLB / CNTMD / SHTNAK / DIR / EPNUM */
138 USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_DBLBON
| USB_HOST_CNTMDON
| USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_NONE
,
139 (uint16_t)((uint16_t)(((64) / 64) - 1) << 10) | (uint16_t)(43),
156 USB_HOST_CFG_PIPETBL_t usb_host_iso_ep_tbl1
[ ] =
160 /* TYPE / BFRE / DBLB / CNTMD / SHTNAK / DIR / EPNUM */
161 USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_DBLBON
| USB_HOST_CNTMDON
| USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_NONE
,
162 (uint16_t)((uint16_t)(((1024) / 64) - 1) << 10) | (uint16_t)(44),
170 /* TYPE / BFRE / DBLB / CNTMD / SHTNAK / DIR / EPNUM */
171 USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_DBLBON
| USB_HOST_CNTMDON
| USB_HOST_NONE
| USB_HOST_NONE
| USB_HOST_NONE
,
172 (uint16_t)((uint16_t)(((1024) / 64) - 1) << 10) | (uint16_t)(60),