217 lines
11 KiB
C
217 lines
11 KiB
C
/*
|
|
SPC5 HAL - Copyright (C) 2013 STMicroelectronics
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
/**
|
|
* @file SPC560BCxx/spc560bc_registry.h
|
|
* @brief SPC560B/Cxx capabilities registry.
|
|
*
|
|
* @addtogroup HAL
|
|
* @{
|
|
*/
|
|
|
|
#ifndef _SPC560BC_REGISTRY_H_
|
|
#define _SPC560BC_REGISTRY_H_
|
|
|
|
/*===========================================================================*/
|
|
/* Platform capabilities. */
|
|
/*===========================================================================*/
|
|
|
|
/**
|
|
* @name SPC560B/Cxx capabilities
|
|
* @{
|
|
*/
|
|
/* eDMA attributes.*/
|
|
#define SPC5_HAS_EDMA FALSE
|
|
|
|
/* LINFlex attributes.*/
|
|
#define SPC5_HAS_LINFLEX0 TRUE
|
|
#define SPC5_LINFLEX0_PCTL 48
|
|
#define SPC5_LINFLEX0_RXI_HANDLER vector79
|
|
#define SPC5_LINFLEX0_TXI_HANDLER vector80
|
|
#define SPC5_LINFLEX0_ERR_HANDLER vector81
|
|
#define SPC5_LINFLEX0_RXI_NUMBER 79
|
|
#define SPC5_LINFLEX0_TXI_NUMBER 80
|
|
#define SPC5_LINFLEX0_ERR_NUMBER 81
|
|
#define SPC5_LINFLEX0_CLK (halSPCGetSystemClock() / \
|
|
SPC5_PERIPHERAL1_CLK_DIV_VALUE)
|
|
|
|
#define SPC5_HAS_LINFLEX1 TRUE
|
|
#define SPC5_LINFLEX1_PCTL 49
|
|
#define SPC5_LINFLEX1_RXI_HANDLER vector99
|
|
#define SPC5_LINFLEX1_TXI_HANDLER vector100
|
|
#define SPC5_LINFLEX1_ERR_HANDLER vector101
|
|
#define SPC5_LINFLEX1_RXI_NUMBER 99
|
|
#define SPC5_LINFLEX1_TXI_NUMBER 100
|
|
#define SPC5_LINFLEX1_ERR_NUMBER 101
|
|
#define SPC5_LINFLEX1_CLK (halSPCGetSystemClock() / \
|
|
SPC5_PERIPHERAL1_CLK_DIV_VALUE)
|
|
|
|
#define SPC5_HAS_LINFLEX2 TRUE
|
|
#define SPC5_LINFLEX2_PCTL 50
|
|
#define SPC5_LINFLEX2_RXI_HANDLER vector119
|
|
#define SPC5_LINFLEX2_TXI_HANDLER vector120
|
|
#define SPC5_LINFLEX2_ERR_HANDLER vector121
|
|
#define SPC5_LINFLEX2_RXI_NUMBER 119
|
|
#define SPC5_LINFLEX2_TXI_NUMBER 120
|
|
#define SPC5_LINFLEX2_ERR_NUMBER 121
|
|
#define SPC5_LINFLEX2_CLK (halSPCGetSystemClock() / \
|
|
SPC5_PERIPHERAL1_CLK_DIV_VALUE)
|
|
|
|
#define SPC5_HAS_LINFLEX3 TRUE
|
|
#define SPC5_LINFLEX3_PCTL 51
|
|
#define SPC5_LINFLEX3_RXI_HANDLER vector122
|
|
#define SPC5_LINFLEX3_TXI_HANDLER vector123
|
|
#define SPC5_LINFLEX3_ERR_HANDLER vector124
|
|
#define SPC5_LINFLEX3_RXI_NUMBER 122
|
|
#define SPC5_LINFLEX3_TXI_NUMBER 123
|
|
#define SPC5_LINFLEX3_ERR_NUMBER 124
|
|
#define SPC5_LINFLEX3_CLK (halSPCGetSystemClock() / \
|
|
SPC5_PERIPHERAL1_CLK_DIV_VALUE)
|
|
|
|
/* SIUL attributes.*/
|
|
#define SPC5_HAS_SIUL TRUE
|
|
#define SPC5_SIUL_PCTL 68
|
|
#define SPC5_SIUL_NUM_PORTS 8
|
|
#define SPC5_SIUL_NUM_PCRS 123
|
|
#define SPC5_SIUL_NUM_PADSELS 32
|
|
#define SPC5_SIUL_SYSTEM_PINS 32,33,121,122
|
|
|
|
/* FlexCAN attributes.*/
|
|
#define SPC5_HAS_FLEXCAN0 TRUE
|
|
#define SPC5_FLEXCAN0_PCTL 16
|
|
#define SPC5_FLEXCAN0_MB 64
|
|
#define SPC5_FLEXCAN0_FLEXCAN_ESR_ERR_INT_HANDLER vector65
|
|
#define SPC5_FLEXCAN0_FLEXCAN_ESR_BOFF_HANDLER vector66
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_00_03_HANDLER vector68
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_04_07_HANDLER vector69
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_08_11_HANDLER vector70
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_12_15_HANDLER vector71
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_16_31_HANDLER vector72
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_32_63_HANDLER vector73
|
|
#define SPC5_FLEXCAN0_FLEXCAN_ESR_ERR_INT_NUMBER 65
|
|
#define SPC5_FLEXCAN0_FLEXCAN_ESR_BOFF_NUMBER 66
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_00_03_NUMBER 68
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_04_07_NUMBER 69
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_08_11_NUMBER 70
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_12_15_NUMBER 71
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_16_31_NUMBER 72
|
|
#define SPC5_FLEXCAN0_FLEXCAN_BUF_32_63_NUMBER 73
|
|
|
|
#define SPC5_HAS_FLEXCAN1 TRUE
|
|
#define SPC5_FLEXCAN1_PCTL 17
|
|
#define SPC5_FLEXCAN1_MB 64
|
|
#define SPC5_FLEXCAN1_FLEXCAN_ESR_ERR_INT_HANDLER vector85
|
|
#define SPC5_FLEXCAN1_FLEXCAN_ESR_BOFF_HANDLER vector86
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_00_03_HANDLER vector88
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_04_07_HANDLER vector89
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_08_11_HANDLER vector90
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_12_15_HANDLER vector91
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_16_31_HANDLER vector92
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_32_63_HANDLER vector93
|
|
#define SPC5_FLEXCAN1_FLEXCAN_ESR_ERR_INT_NUMBER 85
|
|
#define SPC5_FLEXCAN1_FLEXCAN_ESR_BOFF_NUMBER 86
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_00_03_NUMBER 88
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_04_07_NUMBER 89
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_08_11_NUMBER 90
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_12_15_NUMBER 91
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_16_31_NUMBER 92
|
|
#define SPC5_FLEXCAN1_FLEXCAN_BUF_32_63_NUMBER 93
|
|
|
|
#define SPC5_HAS_FLEXCAN2 TRUE
|
|
#define SPC5_FLEXCAN2_PCTL 18
|
|
#define SPC5_FLEXCAN2_MB 64
|
|
#define SPC5_FLEXCAN2_FLEXCAN_ESR_ERR_INT_HANDLER vector105
|
|
#define SPC5_FLEXCAN2_FLEXCAN_ESR_BOFF_HANDLER vector106
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_00_03_HANDLER vector108
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_04_07_HANDLER vector109
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_08_11_HANDLER vector110
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_12_15_HANDLER vector111
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_16_31_HANDLER vector112
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_32_63_HANDLER vector113
|
|
#define SPC5_FLEXCAN2_FLEXCAN_ESR_ERR_INT_NUMBER 105
|
|
#define SPC5_FLEXCAN2_FLEXCAN_ESR_BOFF_NUMBER 106
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_00_03_NUMBER 108
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_04_07_NUMBER 109
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_08_11_NUMBER 110
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_12_15_NUMBER 111
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_16_31_NUMBER 112
|
|
#define SPC5_FLEXCAN2_FLEXCAN_BUF_32_63_NUMBER 113
|
|
|
|
#define SPC5_HAS_FLEXCAN3 TRUE
|
|
#define SPC5_FLEXCAN3_PCTL 19
|
|
#define SPC5_FLEXCAN3_MB 64
|
|
#define SPC5_FLEXCAN3_FLEXCAN_ESR_ERR_INT_HANDLER vector173
|
|
#define SPC5_FLEXCAN3_FLEXCAN_ESR_BOFF_HANDLER vector174
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_00_03_HANDLER vector176
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_04_07_HANDLER vector177
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_08_11_HANDLER vector178
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_12_15_HANDLER vector179
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_16_31_HANDLER vector180
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_32_63_HANDLER vector181
|
|
#define SPC5_FLEXCAN3_FLEXCAN_ESR_ERR_INT_NUMBER 173
|
|
#define SPC5_FLEXCAN3_FLEXCAN_ESR_BOFF_NUMBER 174
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_00_03_NUMBER 176
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_04_07_NUMBER 177
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_08_11_NUMBER 178
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_12_15_NUMBER 179
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_16_31_NUMBER 180
|
|
#define SPC5_FLEXCAN3_FLEXCAN_BUF_32_63_NUMBER 181
|
|
|
|
#define SPC5_HAS_FLEXCAN4 TRUE
|
|
#define SPC5_FLEXCAN4_PCTL 20
|
|
#define SPC5_FLEXCAN4_MB 64
|
|
#define SPC5_FLEXCAN4_FLEXCAN_ESR_ERR_INT_HANDLER vector190
|
|
#define SPC5_FLEXCAN4_FLEXCAN_ESR_BOFF_HANDLER vector191
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_00_03_HANDLER vector193
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_04_07_HANDLER vector194
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_08_11_HANDLER vector195
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_12_15_HANDLER vector196
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_16_31_HANDLER vector197
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_32_63_HANDLER vector198
|
|
#define SPC5_FLEXCAN4_FLEXCAN_ESR_ERR_INT_NUMBER 190
|
|
#define SPC5_FLEXCAN4_FLEXCAN_ESR_BOFF_NUMBER 191
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_00_03_NUMBER 193
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_04_07_NUMBER 194
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_08_11_NUMBER 195
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_12_15_NUMBER 196
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_16_31_NUMBER 197
|
|
#define SPC5_FLEXCAN4_FLEXCAN_BUF_32_63_NUMBER 198
|
|
|
|
#define SPC5_HAS_FLEXCAN5 TRUE
|
|
#define SPC5_FLEXCAN5_PCTL 21
|
|
#define SPC5_FLEXCAN5_MB 64
|
|
#define SPC5_FLEXCAN5_FLEXCAN_ESR_ERR_INT_HANDLER vector202
|
|
#define SPC5_FLEXCAN5_FLEXCAN_ESR_BOFF_HANDLER vector203
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_00_03_HANDLER vector205
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_04_07_HANDLER vector206
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_08_11_HANDLER vector207
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_12_15_HANDLER vector208
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_16_31_HANDLER vector209
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_32_63_HANDLER vector210
|
|
#define SPC5_FLEXCAN5_FLEXCAN_ESR_ERR_INT_NUMBER 202
|
|
#define SPC5_FLEXCAN5_FLEXCAN_ESR_BOFF_NUMBER 203
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_00_03_NUMBER 205
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_04_07_NUMBER 206
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_08_11_NUMBER 207
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_12_15_NUMBER 208
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_16_31_NUMBER 209
|
|
#define SPC5_FLEXCAN5_FLEXCAN_BUF_32_63_NUMBER 210
|
|
/** @} */
|
|
|
|
#endif /* _SPC560BC_REGISTRY_H_ */
|
|
|
|
/** @} */
|