]> begriffs open source - cmsis-driver-validation/blob - Source/cmsis_dv.c
Update README.md
[cmsis-driver-validation] / Source / cmsis_dv.c
1 /*-----------------------------------------------------------------------------
2  *      Name:         cmsis_dv.c
3  *      Purpose:      Driver validation test cases entry point
4  *----------------------------------------------------------------------------
5  *      Copyright(c) KEIL - An ARM Company
6  *----------------------------------------------------------------------------*/
7 #include "cmsis_dv.h"
8 #include "RTE_Components.h"
9 #include "DV_Framework.h"
10 #include "DV_Config.h"
11
12 /*-----------------------------------------------------------------------------
13  *      Variables declarations
14  *----------------------------------------------------------------------------*/
15 // Buffer list sizes
16 const uint32_t BUFFER[] =  {
17 #if (BUFFER_ELEM_1_32!=0)
18   1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,
19 #endif
20 #if (BUFFER_ELEM_512!=0)
21   512,
22 #endif
23 #if (BUFFER_ELEM_1024!=0)
24   1024,
25 #endif
26 #if (BUFFER_ELEM_4096!=0)
27   4096,
28 #endif
29 #if (BUFFER_ELEM_32768!=0)
30   32768,
31 #endif 
32 };
33 const uint32_t BUFFER_NUM = ARRAY_SIZE(BUFFER);
34
35 /*-----------------------------------------------------------------------------
36  *      Init test suite
37  *----------------------------------------------------------------------------*/
38 static void TS_Init (void) {
39
40 }
41
42 /*-----------------------------------------------------------------------------
43  *      Test cases list
44  *----------------------------------------------------------------------------*/
45 static TEST_CASE TC_LIST[] = {
46
47 #ifdef RTE_DV_API_SPI 
48   TCD ( SPI_GetCapabilities,            SPI_GETCAPABILITIES_EN          ),           
49   TCD ( SPI_Initialization,             SPI_INITIALIZATION_EN           ), 
50   TCD ( SPI_PowerControl,               SPI_POWERCONTROL_EN             ),   
51   TCD ( SPI_Config_PolarityPhase,       SPI_CONFIG_POLARITYPHASE_EN     ), 
52   TCD ( SPI_Config_DataBits,            SPI_CONFIG_DATABITS_EN          ),
53   TCD ( SPI_Config_BitOrder,            SPI_CONFIG_BITORDER_EN          ), 
54   TCD ( SPI_Config_SSMode,              SPI_CONFIG_SSMODE_EN            ), 
55   TCD ( SPI_Config_BusSpeed,            SPI_CONFIG_BUSSPEED_EN          ),
56   TCD ( SPI_Config_CommonParams,        SPI_CONFIG_COMMONPARAMS_EN      ), 
57   TCD ( SPI_Send,                       SPI_SEND_EN                     ), 
58   TCD ( SPI_Receive,                    SPI_RECEIVE_EN                  ),  
59   TCD ( SPI_Loopback_CheckBusSpeed,     SPI_LOOPBACK_CHECKBUSSPEED_EN   ),   
60   TCD ( SPI_Loopback_Transfer,          SPI_LOOPBACK_TRANSFER_EN        ),
61   TCD ( SPI_CheckInvalidInit,           SPI_CHECKINVALIDINIT_EN         ),  
62   
63 #endif
64 #ifdef RTE_DV_API_USART    
65   TCD ( USART_GetCapabilities,          USART_GETCAPABILITIES_EN        ),
66   TCD ( USART_Initialization,           USART_INITIALIZATION_EN         ),
67   TCD ( USART_PowerControl,             USART_POWERCONTROL_EN           ),
68   TCD ( USART_Config_PolarityPhase,     USART_CONFIG_POLARITYPHASE_EN   ),
69   TCD ( USART_Config_DataBits,          USART_CONFIG_DATABITS_EN        ),
70   TCD ( USART_Config_StopBits,          USART_CONFIG_STOPBITS_EN        ),
71   TCD ( USART_Config_Parity,            USART_CONFIG_PARITY_EN          ),  
72   TCD ( USART_Config_Baudrate,          USART_CONFIG_BAUDRATE_EN        ),   
73   TCD ( USART_Config_CommonParams,      USART_CONFIG_COMMONPARAMS_EN    ),
74   TCD ( USART_Send,                     USART_SEND_EN                   ),
75   TCD ( USART_Loopback_CheckBaudrate,   USART_LOOPBACK_CHECKBAUDRATE_EN ), 
76   TCD ( USART_Loopback_Transfer,        USART_LOOPBACK_TRANSFER_EN      ),
77   TCD ( USART_CheckInvalidInit,         USART_CHECKINVALIDINIT_EN       ),
78 #endif
79 #ifdef RTE_DV_API_ETH  
80   TCD ( ETH_MAC_GetCapabilities,        ETH_MAC_GETCAPABILITIES_EN      ),  
81   TCD ( ETH_MAC_Initialization,         ETH_MAC_INITIALIZATION_EN       ),
82   TCD ( ETH_MAC_PowerControl,           ETH_MAC_POWERCONTROL_EN         ),
83   TCD ( ETH_MAC_SetBusSpeed,            ETH_MAC_SETBUSSPEED_EN          ),
84   TCD ( ETH_MAC_Config_Mode,            ETH_MAC_CONFIG_MODE_EN          ),
85   TCD ( ETH_MAC_Config_CommonParams,    ETH_MAC_CONFIG_COMMONPARAMS_EN  ),  
86   TCD ( ETH_MAC_PTP_ControlTimer,       ETH_MAC_PTP_CONTROLTIMER_EN     ),   
87   TCD ( ETH_PHY_Initialization,         ETH_PHY_INITIALIZATION_EN       ),
88   TCD ( ETH_PHY_PowerControl,           ETH_PHY_POWERCONTROL_EN         ),
89   TCD ( ETH_PHY_Config,                 ETH_PHY_CONFIG_EN               ),    
90   TCD ( ETH_Loopback_Transfer,          ETH_LOOPBACK_TRANSFER_EN        ),  
91   TCD ( ETH_Loopback_PTP,               ETH_LOOPBACK_PTP_EN             ), 
92   TCD ( ETH_PHY_CheckInvalidInit,       ETH_PHY_CHECKINVALIDINIT_EN     ), 
93   TCD ( ETH_MAC_CheckInvalidInit,       ETH_MAC_CHECKINVALIDINIT_EN     ), 
94 #endif
95 #ifdef RTE_DV_API_I2C  
96   TCD ( I2C_GetCapabilities,            I2C_GETCAPABILITIES_EN          ),  
97   TCD ( I2C_Initialization,             I2C_INITIALIZATION_EN           ), 
98   TCD ( I2C_PowerControl,               I2C_POWERCONTROL_EN             ), 
99   TCD ( I2C_SetBusSpeed,                I2C_SETBUSSPEED_EN              ), 
100   TCD ( I2C_SetOwnAddress,              I2C_SETOWNADDRESS_EN            ), 
101   TCD ( I2C_BusClear,                   I2C_BUSCLEAR_EN                 ), 
102   TCD ( I2C_AbortTransfer,              I2C_ABORTTRANSFER_EN            ), 
103   TCD ( I2C_CheckInvalidInit,           I2C_CHECKINVALIDINIT_EN         ), 
104 #endif
105 #ifdef RTE_DV_API_MCI  
106   TCD ( MCI_GetCapabilities,            MCI_GETCAPABILITIES_EN          ), 
107   TCD ( MCI_Initialization,             MCI_INITIALIZATION_EN           ), 
108   TCD ( MCI_PowerControl,               MCI_POWERCONTROL_EN             ), 
109   TCD ( MCI_SetBusSpeedMode,            MCI_SETBUSSPEEDMODE_EN          ),  
110   TCD ( MCI_Config_DataWidth,           MCI_CONFIG_DATAWIDTH_EN         ),  
111   TCD ( MCI_Config_CmdLineMode,         MCI_CONFIG_CMDLINEMODE_EN       ), 
112   TCD ( MCI_Config_DriverStrength,      MCI_CONFIG_DRIVERSTRENGTH_EN    ), 
113   TCD ( MCI_CheckInvalidInit,           MCI_CHECKINVALIDINIT_EN         ), 
114 #endif
115 #ifdef RTE_DV_API_USBD
116   TCD ( USBD_GetCapabilities,           USBD_GETCAPABILITIES_EN         ), 
117   TCD ( USBD_Initialization,            USBD_INITIALIZATION_EN          ), 
118   TCD ( USBD_PowerControl,              USBD_POWERCONTROL_EN            ), 
119   TCD ( USBD_CheckInvalidInit,          USBD_CHECKINVALIDINIT_EN        ), 
120 #endif  
121 #ifdef RTE_DV_API_USBH
122   TCD ( USBH_GetCapabilities,           USBH_GETCAPABILITIES_EN         ), 
123   TCD ( USBH_Initialization,            USBH_INITIALIZATION_EN          ), 
124   TCD ( USBH_PowerControl,              USBH_POWERCONTROL_EN            ), 
125   TCD ( USBH_CheckInvalidInit,          USBH_CHECKINVALIDINIT_EN        ), 
126 #endif 
127 #ifdef RTE_DV_API_CAN
128   TCD ( CAN_GetCapabilities,            CAN_GETCAPABILITIES_EN         ), 
129   TCD ( CAN_Initialization,             CAN_INITIALIZATION_EN          ), 
130   TCD ( CAN_PowerControl,               CAN_POWERCONTROL_EN            ), 
131   TCD ( CAN_Loopback_CheckBitrate,      CAN_LOOPBACK_CHECK_BR_EN       ), 
132   TCD ( CAN_Loopback_CheckBitrateFD,    CAN_LOOPBACK_CHECK_BR_FD_EN    ), 
133   TCD ( CAN_Loopback_Transfer,          CAN_LOOPBACK_TRANSFER_EN       ),
134   TCD ( CAN_Loopback_TransferFD,        CAN_LOOPBACK_TRANSFER_FD_EN    ),
135 #endif 
136 };
137
138 #if defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
139 #pragma clang diagnostic push
140 #pragma clang diagnostic ignored "-Wdate-time"
141 #endif
142 /*-----------------------------------------------------------------------------
143  *      Test suite description
144  *----------------------------------------------------------------------------*/
145 TEST_SUITE ts = {
146   __FILE__, __DATE__, __TIME__,
147   "CMSIS-Driver Test Suite",
148   TS_Init,  
149   1,
150   TC_LIST,
151   ARRAY_SIZE (TC_LIST),  
152 };  
153 #if defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
154 #pragma clang diagnostic pop
155 #endif