VSF Documented
spi.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Copyright(C)2009-2022 by VSF Team *
3 * *
4 * Licensed under the Apache License, Version 2.0 (the "License"); *
5 * you may not use this file except in compliance with the License. *
6 * You may obtain a copy of the License at *
7 * *
8 * http://www.apache.org/licenses/LICENSE-2.0 *
9 * *
10 * Unless required by applicable law or agreed to in writing, software *
11 * distributed under the License is distributed on an "AS IS" BASIS, *
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13 * See the License for the specific language governing permissions and *
14 * limitations under the License. *
15 * *
16 ****************************************************************************/
17
18#ifndef __HAL_DRIVER_AIC8800_SPI_H__
19#define __HAL_DRIVER_AIC8800_SPI_H__
20
21/*============================ INCLUDES ======================================*/
22
23#include "hal/vsf_hal_cfg.h"
24
25#if VSF_HAL_USE_SPI == ENABLED
26
27#include "../__device.h"
28
29/*============================ MACROS ========================================*/
30/*============================ MACROFIED FUNCTIONS ===========================*/
31/*============================ TYPES =========================================*/
32
33typedef enum vsf_spi_mode_t {
34 VSF_SPI_SLAVE = 0x00ul << 11,
35 VSF_SPI_MASTER = 0x01ul << 11,
36
37 VSF_SPI_MODE_0 = ((0x01ul << 0) |(0x01ul << 1) | (0x00ul << 13)),
38 VSF_SPI_MODE_1 = ((0x00ul << 0) |(0x00ul << 1) | (0x00ul << 13)),
39 VSF_SPI_MODE_2 = ((0x01ul << 0) |(0x01ul << 1) | (0x01ul << 13)),
40 VSF_SPI_MODE_3 = ((0x00ul << 0) |(0x00ul << 1) | (0x01ul << 13)),
41
44 VSF_SPI_DATASIZE_8 = 0x08ul << 2,
45 VSF_SPI_DATASIZE_9 = 0x09ul << 2,
46 VSF_SPI_DATASIZE_10 = 0x0aul << 2,
47 VSF_SPI_DATASIZE_11 = 0x0Bul << 2,
48 VSF_SPI_DATASIZE_12 = 0x0Cul << 2,
49 VSF_SPI_DATASIZE_13 = 0x0Dul << 2,
50 VSF_SPI_DATASIZE_14 = 0x0Eul << 2,
51 VSF_SPI_DATASIZE_15 = 0x0Ful << 2,
52 VSF_SPI_DATASIZE_16 = 0x10ul << 2,
53 VSF_SPI_DATASIZE_17 = 0x11ul << 2,
54 VSF_SPI_DATASIZE_18 = 0x12ul << 2,
55 VSF_SPI_DATASIZE_19 = 0x13ul << 2,
56 VSF_SPI_DATASIZE_20 = 0x14ul << 2,
57 VSF_SPI_DATASIZE_21 = 0x15ul << 2,
58 VSF_SPI_DATASIZE_22 = 0x16ul << 2,
59 VSF_SPI_DATASIZE_23 = 0x17ul << 2,
60 VSF_SPI_DATASIZE_24 = 0x18ul << 2,
61 VSF_SPI_DATASIZE_25 = 0x19ul << 2,
62 VSF_SPI_DATASIZE_26 = 0x1aul << 2,
63 VSF_SPI_DATASIZE_27 = 0x1Bul << 2,
64 VSF_SPI_DATASIZE_28 = 0x1Cul << 2,
65 VSF_SPI_DATASIZE_29 = 0x1Dul << 2,
66 VSF_SPI_DATASIZE_30 = 0x1Eul << 2,
67 VSF_SPI_DATASIZE_31 = 0x1Ful << 2,
68 VSF_SPI_DATASIZE_32 = 0x20ul << 2,
76
79
80 VSF_SPI_MSB_FIRST = 0x00ul << 9,
81 VSF_SPI_LSB_FIRST = 0x01ul << 9,
82
94
95 // unsupporte mode
96 VSF_SPI_DATASIZE_4 = 0x04ul << 16,
97 VSF_SPI_DATASIZE_5 = 0x05ul << 16,
98 VSF_SPI_DATASIZE_6 = 0x06ul << 16,
99 VSF_SPI_DATASIZE_7 = 0x07ul << 16,
100
101 VSF_SPI_LOOP_BACK = 0x01ul << 19,
103
104/*============================ INCLUDES ======================================*/
105
106#endif /* VSF_HAL_USE_SPI */
107#endif /* EOF */
vsf_spi_mode_t
Definition spi.h:33
@ VSF_SPI_DATASIZE_31
Definition spi.h:67
@ VSF_SPI_SLAVE
Definition spi.h:34
@ VSF_SPI_DATASIZE_16
Definition spi.h:52
@ VSF_SPI_DATASIZE_28
Definition spi.h:64
@ VSF_SPI_DATASIZE_6
Definition spi.h:98
@ VSF_SPI_DATASIZE_17
Definition spi.h:53
@ VSF_SPI_DATASIZE_9
Definition spi.h:45
@ VSF_SPI_DATASIZE_18
Definition spi.h:54
@ VSF_SPI_DATASIZE_11
Definition spi.h:47
@ VSF_SPI_MODE_1
Definition spi.h:38
@ __SPI_HW_MODE_MASK
Definition spi.h:83
@ VSF_SPI_DATASIZE_20
Definition spi.h:56
@ VSF_SPI_DATASIZE_21
Definition spi.h:57
@ VSF_SPI_DATASIZE_8
datasize is 8 bits
Definition spi.h:44
@ VSF_SPI_DATASIZE_DIFF
Definition spi.h:43
@ VSF_SPI_DATASIZE_27
Definition spi.h:63
@ VSF_SPI_DATASIZE_14
Definition spi.h:50
@ VSF_SPI_MASTER
Definition spi.h:35
@ VSF_SPI_LOOP_BACK
Definition spi.h:101
@ VSF_SPI_DATASIZE_BIT_OFFSET
Definition spi.h:42
@ VSF_SPI_DATASIZE_26
Definition spi.h:62
@ VSF_SPI_DATASIZE_13
Definition spi.h:49
@ VSF_SPI_DATASIZE_7
Definition spi.h:99
@ VSF_SPI_DATASIZE_5
Definition spi.h:97
@ VSF_SPI_DATASIZE_32
Definition spi.h:68
@ VSF_SPI_DATASIZE_12
Definition spi.h:48
@ VSF_SPI_CS_SOFTWARE_MODE
Definition spi.h:77
@ VSF_SPI_DATASIZE_22
Definition spi.h:58
@ VSF_SPI_MODE_0
Definition spi.h:37
@ VSF_SPI_DATASIZE_24
Definition spi.h:60
@ VSF_SPI_DATASIZE_4
datasize is 8 bits
Definition spi.h:96
@ VSF_SPI_DATASIZE_29
Definition spi.h:65
@ VSF_SPI_CS_HARDWARE_MODE
Definition spi.h:78
@ VSF_SPI_DATASIZE_25
Definition spi.h:61
@ VSF_SPI_MODE_3
Definition spi.h:40
@ VSF_SPI_DATASIZE_30
Definition spi.h:66
@ VSF_SPI_DATASIZE_19
Definition spi.h:55
@ VSF_SPI_DATASIZE_23
Definition spi.h:59
@ VSF_SPI_MODE_2
Definition spi.h:39
@ VSF_SPI_DATASIZE_10
Definition spi.h:46
@ __AIC8800_VSF_SPI_DATASIZE_MASK
Definition spi.h:69
@ VSF_SPI_DATASIZE_15
Definition spi.h:51
@ VSF_SPI_LSB_FIRST
Definition spi.h:59
@ VSF_SPI_MSB_FIRST
Definition spi.h:58