USB device stack

Dependents:   USBMSD_step1 USBMSD_step1_5 picossd_step1_2cs

Committer:
muraguchi
Date:
Tue Feb 09 12:00:34 2021 +0000
Revision:
72:c80da04112fd
Parent:
71:53949e6131f6
Initial release

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 71:53949e6131f6 1 /*******************************************************************************
Kojto 71:53949e6131f6 2 * DISCLAIMER
Kojto 71:53949e6131f6 3 * This software is supplied by Renesas Electronics Corporation and is only
Kojto 71:53949e6131f6 4 * intended for use with Renesas products. No other uses are authorized. This
Kojto 71:53949e6131f6 5 * software is owned by Renesas Electronics Corporation and is protected under
Kojto 71:53949e6131f6 6 * all applicable laws, including copyright laws.
Kojto 71:53949e6131f6 7 * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING
Kojto 71:53949e6131f6 8 * THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT
Kojto 71:53949e6131f6 9 * LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
Kojto 71:53949e6131f6 10 * AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.
Kojto 71:53949e6131f6 11 * TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS
Kojto 71:53949e6131f6 12 * ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE
Kojto 71:53949e6131f6 13 * FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR
Kojto 71:53949e6131f6 14 * ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE
Kojto 71:53949e6131f6 15 * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Kojto 71:53949e6131f6 16 * Renesas reserves the right, without notice, to make changes to this software
Kojto 71:53949e6131f6 17 * and to discontinue the availability of this software. By using this software,
Kojto 71:53949e6131f6 18 * you agree to the additional terms and conditions found by accessing the
Kojto 71:53949e6131f6 19 * following link:
Kojto 71:53949e6131f6 20 * http://www.renesas.com/disclaimer
Kojto 71:53949e6131f6 21 * Copyright (C) 2012 - 2014 Renesas Electronics Corporation. All rights reserved.
Kojto 71:53949e6131f6 22 *******************************************************************************/
Kojto 71:53949e6131f6 23 /*******************************************************************************
Kojto 71:53949e6131f6 24 * File Name : usb_function.h
Kojto 71:53949e6131f6 25 * $Rev: 1116 $
Kojto 71:53949e6131f6 26 * $Date:: 2014-07-09 16:29:19 +0900#$
Kojto 71:53949e6131f6 27 * Description : RZ/A1H R7S72100 USB Sample Program
Kojto 71:53949e6131f6 28 *******************************************************************************/
Kojto 71:53949e6131f6 29 #ifndef USB_FUNCTION_H
Kojto 71:53949e6131f6 30 #define USB_FUNCTION_H
Kojto 71:53949e6131f6 31
Kojto 71:53949e6131f6 32 /*******************************************************************************
Kojto 71:53949e6131f6 33 Includes <System Includes> , "Project Includes"
Kojto 71:53949e6131f6 34 *******************************************************************************/
Kojto 71:53949e6131f6 35 #include "r_typedefs.h"
Kojto 71:53949e6131f6 36 #include "iodefine.h"
Kojto 71:53949e6131f6 37 #include "rza_io_regrw.h"
Kojto 71:53949e6131f6 38
Kojto 71:53949e6131f6 39 /*******************************************************************************
Kojto 71:53949e6131f6 40 Macro definitions
Kojto 71:53949e6131f6 41 *******************************************************************************/
Kojto 71:53949e6131f6 42 #define USB_FUNCTION_ALT_NO (255)
Kojto 71:53949e6131f6 43 #define USB_FUNCTION_ALT_SET (0xff)
Kojto 71:53949e6131f6 44
Kojto 71:53949e6131f6 45 #define USB_FUNCTION_BITUPLLE (0x0002u)
Kojto 71:53949e6131f6 46 #define USB_FUNCTION_BITUCKSEL (0x0004u)
Kojto 71:53949e6131f6 47 #define USB_FUNCTION_BITBWAIT (0x003fu)
Kojto 71:53949e6131f6 48
Kojto 71:53949e6131f6 49 #define USB_FUNCTION_BUSWAIT_02 (0x0000u)
Kojto 71:53949e6131f6 50 #define USB_FUNCTION_BUSWAIT_03 (0x0001u)
Kojto 71:53949e6131f6 51 #define USB_FUNCTION_BUSWAIT_04 (0x0002u)
Kojto 71:53949e6131f6 52 #define USB_FUNCTION_BUSWAIT_05 (0x0003u)
Kojto 71:53949e6131f6 53 #define USB_FUNCTION_BUSWAIT_06 (0x0004u)
Kojto 71:53949e6131f6 54 #define USB_FUNCTION_BUSWAIT_07 (0x0005u)
Kojto 71:53949e6131f6 55 #define USB_FUNCTION_BUSWAIT_08 (0x0006u)
Kojto 71:53949e6131f6 56 #define USB_FUNCTION_BUSWAIT_09 (0x0007u)
Kojto 71:53949e6131f6 57 #define USB_FUNCTION_BUSWAIT_10 (0x0008u)
Kojto 71:53949e6131f6 58 #define USB_FUNCTION_BUSWAIT_11 (0x0009u)
Kojto 71:53949e6131f6 59 #define USB_FUNCTION_BUSWAIT_12 (0x000au)
Kojto 71:53949e6131f6 60 #define USB_FUNCTION_BUSWAIT_13 (0x000bu)
Kojto 71:53949e6131f6 61 #define USB_FUNCTION_BUSWAIT_14 (0x000cu)
Kojto 71:53949e6131f6 62 #define USB_FUNCTION_BUSWAIT_15 (0x000du)
Kojto 71:53949e6131f6 63 #define USB_FUNCTION_BUSWAIT_16 (0x000eu)
Kojto 71:53949e6131f6 64 #define USB_FUNCTION_BUSWAIT_17 (0x000fu)
Kojto 71:53949e6131f6 65
Kojto 71:53949e6131f6 66 #define USB_FUNCTION_BITRESUME (0x0020u)
Kojto 71:53949e6131f6 67 #define USB_FUNCTION_BITUACT (0x0010u)
Kojto 71:53949e6131f6 68 #define USB_FUNCTION_HSPROC (0x0004u)
Kojto 71:53949e6131f6 69 #define USB_FUNCTION_HSMODE (0x0003u)
Kojto 71:53949e6131f6 70 #define USB_FUNCTION_FSMODE (0x0002u)
Kojto 71:53949e6131f6 71 #define USB_FUNCTION_LSMODE (0x0001u)
Kojto 71:53949e6131f6 72 #define USB_FUNCTION_UNDECID (0x0000u)
Kojto 71:53949e6131f6 73
Kojto 71:53949e6131f6 74 #define USB_FUNCTION_BITRCNT (0x8000u)
Kojto 71:53949e6131f6 75 #define USB_FUNCTION_BITDREQE (0x1000u)
Kojto 71:53949e6131f6 76 #define USB_FUNCTION_BITMBW (0x0c00u)
Kojto 71:53949e6131f6 77 #define USB_FUNCTION_BITMBW_8 (0x0000u)
Kojto 71:53949e6131f6 78 #define USB_FUNCTION_BITMBW_16 (0x0400u)
Kojto 71:53949e6131f6 79 #define USB_FUNCTION_BITMBW_32 (0x0800u)
Kojto 71:53949e6131f6 80 #define USB_FUNCTION_BITBYTE_LITTLE (0x0000u)
Kojto 71:53949e6131f6 81 #define USB_FUNCTION_BITBYTE_BIG (0x0100u)
Kojto 71:53949e6131f6 82 #define USB_FUNCTION_BITISEL (0x0020u)
Kojto 71:53949e6131f6 83 #define USB_FUNCTION_BITCURPIPE (0x000fu)
Kojto 71:53949e6131f6 84
Kojto 71:53949e6131f6 85 #define USB_FUNCTION_CFIFO_READ (0x0000u)
Kojto 71:53949e6131f6 86 #define USB_FUNCTION_CFIFO_WRITE (0x0020u)
Kojto 71:53949e6131f6 87
Kojto 71:53949e6131f6 88 #define USB_FUNCTION_BITBVAL (0x8000u)
Kojto 71:53949e6131f6 89 #define USB_FUNCTION_BITBCLR (0x4000u)
Kojto 71:53949e6131f6 90 #define USB_FUNCTION_BITFRDY (0x2000u)
Kojto 71:53949e6131f6 91 #define USB_FUNCTION_BITDTLN (0x0fffu)
Kojto 71:53949e6131f6 92
Kojto 71:53949e6131f6 93 #define USB_FUNCTION_BITVBSE (0x8000u)
Kojto 71:53949e6131f6 94 #define USB_FUNCTION_BITRSME (0x4000u)
Kojto 71:53949e6131f6 95 #define USB_FUNCTION_BITSOFE (0x2000u)
Kojto 71:53949e6131f6 96 #define USB_FUNCTION_BITDVSE (0x1000u)
Kojto 71:53949e6131f6 97 #define USB_FUNCTION_BITCTRE (0x0800u)
Kojto 71:53949e6131f6 98 #define USB_FUNCTION_BITVBINT (0x8000u)
Kojto 71:53949e6131f6 99 #define USB_FUNCTION_BITRESM (0x4000u)
Kojto 71:53949e6131f6 100 #define USB_FUNCTION_BITSOFR (0x2000u)
Kojto 71:53949e6131f6 101 #define USB_FUNCTION_BITDVST (0x1000u)
Kojto 71:53949e6131f6 102 #define USB_FUNCTION_BITCTRT (0x0800u)
Kojto 71:53949e6131f6 103
Kojto 71:53949e6131f6 104 #define USB_FUNCTION_BITBEMPE (0x0400u)
Kojto 71:53949e6131f6 105 #define USB_FUNCTION_BITNRDYE (0x0200u)
Kojto 71:53949e6131f6 106 #define USB_FUNCTION_BITBRDYE (0x0100u)
Kojto 71:53949e6131f6 107 #define USB_FUNCTION_BITBEMP (0x0400u)
Kojto 71:53949e6131f6 108 #define USB_FUNCTION_BITNRDY (0x0200u)
Kojto 71:53949e6131f6 109 #define USB_FUNCTION_BITBRDY (0x0100u)
Kojto 71:53949e6131f6 110
Kojto 71:53949e6131f6 111 #define USB_FUNCTION_BITDVSQ (0x0070u)
Kojto 71:53949e6131f6 112 #define USB_FUNCTION_BITDVSQS (0x0030u)
Kojto 71:53949e6131f6 113 #define USB_FUNCTION_DS_SPD_CNFG (0x0070u)
Kojto 71:53949e6131f6 114 #define USB_FUNCTION_DS_SPD_ADDR (0x0060u)
Kojto 71:53949e6131f6 115 #define USB_FUNCTION_DS_SPD_DFLT (0x0050u)
Kojto 71:53949e6131f6 116 #define USB_FUNCTION_DS_SPD_POWR (0x0040u)
Kojto 71:53949e6131f6 117 #define USB_FUNCTION_DS_CNFG (0x0030u)
Kojto 71:53949e6131f6 118 #define USB_FUNCTION_DS_ADDS (0x0020u)
Kojto 71:53949e6131f6 119 #define USB_FUNCTION_DS_DFLT (0x0010u)
Kojto 71:53949e6131f6 120 #define USB_FUNCTION_DS_POWR (0x0000u)
Kojto 71:53949e6131f6 121 #define USB_FUNCTION_BITVALID (0x0008u)
Kojto 71:53949e6131f6 122 #define USB_FUNCTION_BITCTSQ (0x0007u)
Kojto 71:53949e6131f6 123 #define USB_FUNCTION_CS_SQER (0x0006u)
Kojto 71:53949e6131f6 124 #define USB_FUNCTION_CS_WRND (0x0005u)
Kojto 71:53949e6131f6 125 #define USB_FUNCTION_CS_WRSS (0x0004u)
Kojto 71:53949e6131f6 126 #define USB_FUNCTION_CS_WRDS (0x0003u)
Kojto 71:53949e6131f6 127 #define USB_FUNCTION_CS_RDSS (0x0002u)
Kojto 71:53949e6131f6 128 #define USB_FUNCTION_CS_RDDS (0x0001u)
Kojto 71:53949e6131f6 129 #define USB_FUNCTION_CS_IDST (0x0000u)
Kojto 71:53949e6131f6 130
Kojto 71:53949e6131f6 131 #define USB_FUNCTION_PIPExBUF (64u)
Kojto 71:53949e6131f6 132
Kojto 71:53949e6131f6 133 #define USB_FUNCTION_D0FIFO (0)
Kojto 71:53949e6131f6 134 #define USB_FUNCTION_D1FIFO (1)
Kojto 71:53949e6131f6 135 #define USB_FUNCTION_DMA_READY (0)
Kojto 71:53949e6131f6 136 #define USB_FUNCTION_DMA_BUSY (1)
Kojto 71:53949e6131f6 137 #define USB_FUNCTION_DMA_BUSYEND (2)
Kojto 71:53949e6131f6 138
Kojto 71:53949e6131f6 139 #define USB_FUNCTION_FIFO_USE (0x7000)
Kojto 71:53949e6131f6 140
Kojto 71:53949e6131f6 141 #endif /* USB_FUNCTION_FUNCTION_H */
Kojto 71:53949e6131f6 142
Kojto 71:53949e6131f6 143 /* End of File */