Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:23:39

0001 /* SPDX-License-Identifier: BSD-2-Clause */
0002 
0003 /**
0004  * @file
0005  *
0006  * @ingroup RTEMSBSPsARMTMS570
0007  *
0008  * @brief This header file provides TMS570 interfaces.
0009  */
0010 
0011 /* This file is generated by make_central_header.py */
0012 /* Current script's version can be found at: */
0013 /* https://github.com/AoLaD/rtems-tms570-utils/tree/headers/headers/python */
0014 
0015 /*
0016  * Copyright (C) 2022 Airbus U.S. Space & Defense, Inc
0017  * Copyright (c) 2014-2015, Premysl Houdek <kom541000@gmail.com>
0018  *
0019  * Czech Technical University in Prague
0020  * Zikova 1903/4
0021  * 166 36 Praha 6
0022  * Czech Republic
0023  *
0024  * All rights reserved.
0025  *
0026  * Redistribution and use in source and binary forms, with or without
0027  * modification, are permitted provided that the following conditions are met:
0028  *
0029  * 1. Redistributions of source code must retain the above copyright notice, this
0030  *    list of conditions and the following disclaimer.
0031  * 2. Redistributions in binary form must reproduce the above copyright notice,
0032  *    this list of conditions and the following disclaimer in the documentation
0033  *    and/or other materials provided with the distribution.
0034  *
0035  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
0036  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
0037  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
0038  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
0039  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
0040  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
0041  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
0042  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
0043  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
0044  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
0045  *
0046  * The views and conclusions contained in the software and documentation are those
0047  * of the authors and should not be interpreted as representing official policies,
0048  * either expressed or implied, of the FreeBSD Project.
0049 */
0050 #ifndef LIBBSP_ARM_TMS570
0051 #define LIBBSP_ARM_TMS570
0052 
0053 #include <bsp/tms570-pins.h>
0054 
0055 #include <bsp/ti_herc/reg_adc.h>
0056 #include <bsp/ti_herc/reg_ccmsr.h>
0057 #include <bsp/ti_herc/reg_crc.h>
0058 #include <bsp/ti_herc/reg_dcan.h>
0059 #include <bsp/ti_herc/reg_dcc.h>
0060 #include <bsp/ti_herc/reg_dma.h>
0061 #include <bsp/ti_herc/reg_dmm.h>
0062 #include <bsp/ti_herc/reg_efuse.h>
0063 #include <bsp/ti_herc/reg_emacc.h>
0064 #include <bsp/ti_herc/reg_emacm.h>
0065 #include <bsp/ti_herc/reg_emif.h>
0066 #include <bsp/ti_herc/reg_esm.h>
0067 #include <bsp/ti_herc/reg_flash.h>
0068 #include <bsp/ti_herc/reg_flex_ray.h>
0069 #include <bsp/ti_herc/reg_gio.h>
0070 #include <bsp/ti_herc/reg_htu.h>
0071 #include <bsp/ti_herc/reg_i2c.h>
0072 #include <bsp/ti_herc/reg_iomm.h>
0073 #include <bsp/ti_herc/reg_lin.h>
0074 #include <bsp/ti_herc/reg_mdio.h>
0075 #include <bsp/ti_herc/reg_n2het.h>
0076 #include <bsp/ti_herc/reg_pbist.h>
0077 #include <bsp/ti_herc/reg_pll.h>
0078 #include <bsp/ti_herc/reg_pmm.h>
0079 #include <bsp/ti_herc/reg_rti.h>
0080 #include <bsp/ti_herc/reg_rtp.h>
0081 #include <bsp/ti_herc/reg_sci.h>
0082 #include <bsp/ti_herc/reg_tcr.h>
0083 #include <bsp/ti_herc/reg_tcram.h>
0084 #include <bsp/ti_herc/reg_vim.h>
0085 #include <bsp/ti_herc/reg_pom.h>
0086 #include <bsp/ti_herc/reg_spi.h>
0087 #include <bsp/ti_herc/reg_stc.h>
0088 #include <bsp/ti_herc/reg_sys.h>
0089 #include <bsp/ti_herc/reg_sys2.h>
0090 #include <bsp/ti_herc/reg_pcr.h>
0091 
0092 #include <bspopts.h>
0093 
0094 #define TMS570_ADC1 (*(volatile tms570_adc_t*)0xFFF7C000)
0095 #define TMS570_ADC2 (*(volatile tms570_adc_t*)0xFFF7C200)
0096 #define TMS570_CCMSR (*(volatile tms570_ccmsr_t*)0xFFFFF600)
0097 #define TMS570_CRC (*(volatile tms570_crc_t*)0xFE000000)
0098 #if TMS570_VARIANT == 4357
0099 #define TMS570_CRC2 (*(volatile tms570_crc_t*)0xFB000000)
0100 #endif
0101 #define TMS570_DCAN1 (*(volatile tms570_dcan_t*)0xFFF7DC00)
0102 #define TMS570_DCAN2 (*(volatile tms570_dcan_t*)0xFFF7DE00)
0103 #define TMS570_DCAN3 (*(volatile tms570_dcan_t*)0xFFF7E000)
0104 #if TMS570_VARIANT == 4357
0105 #define TMS570_DCAN4 (*(volatile tms570_dcan_t*)0xFFF7E200)
0106 #endif
0107 #define TMS570_DCC1 (*(volatile tms570_dcc_t*)0xFFFFEC00)
0108 #define TMS570_DCC2 (*(volatile tms570_dcc_t*)0xFFFFF400)
0109 #define TMS570_DMA (*(volatile tms570_dma_t*)0xFFFFF000)
0110 #define TMS570_DMM (*(volatile tms570_dmm_t*)0xFFFFF700)
0111 #define TMS570_EFUSE (*(volatile tms570_efuse_t*)0xFFF8C01C)
0112 #define TMS570_EMACC (*(volatile tms570_emacc_t*)0xFCF78800)
0113 #define TMS570_EMACM (*(volatile tms570_emacm_t*)0xFCF78000)
0114 #define TMS570_EMIF (*(volatile tms570_emif_t*)0xFCFFE800)
0115 #define TMS570_ESM (*(volatile tms570_esm_t*)0xFFFFF500)
0116 #define TMS570_FLASH (*(volatile tms570_flash_t*)0xFFF87000)
0117 #define TMS570_FLEX_RAY (*(volatile tms570_flex_ray_t*)0xFFF7C800)
0118 #define TMS570_GIO (*(volatile tms570_gio_t*)0xFFF7BC00)
0119 #define TMS570_GIO_PORTA (*(volatile tms570_gio_port_t*)0xFFF7BC34)
0120 #define TMS570_GIO_PORTB (*(volatile tms570_gio_port_t*)0xFFF7BC54)
0121 #define TMS570_GIO_PORTC (*(volatile tms570_gio_port_t*)0xFFF7BC74)
0122 #define TMS570_GIO_PORTD (*(volatile tms570_gio_port_t*)0xFFF7BC94)
0123 #define TMS570_GIO_PORTE (*(volatile tms570_gio_port_t*)0xFFF7BCB4)
0124 #define TMS570_GIO_PORTF (*(volatile tms570_gio_port_t*)0xFFF7BCD4)
0125 #define TMS570_GIO_PORTG (*(volatile tms570_gio_port_t*)0xFFF7BCF4)
0126 #define TMS570_GIO_PORTH (*(volatile tms570_gio_port_t*)0xFFF7BD14)
0127 #define TMS570_HTU1 (*(volatile tms570_htu_t*)0xFFF7A400)
0128 #define TMS570_HTU2 (*(volatile tms570_htu_t*)0xFFF7A500)
0129 #define TMS570_I2C (*(volatile tms570_i2c_t*)0xFFF7D400)
0130 #if TMS570_VARIANT == 4357
0131 #define TMS570_I2C2 (*(volatile tms570_i2c_t*)0xFFF7D500)
0132 #endif
0133 #if TMS570_VARIANT == 4357
0134 #define TMS570_IOMM (*(volatile tms570_iomm_t*)0xFFFF1C00)
0135 #else
0136 #define TMS570_IOMM (*(volatile tms570_iomm_t*)0xFFFFEA00)
0137 #endif
0138 #define TMS570_PINMUX ((volatile uint32_t*)TMS570_IOMM.PINMMR)
0139 #define TMS570_LIN (*(volatile tms570_lin_t*)0xFFF7E400)
0140 #if TMS570_VARIANT == 4357
0141 #define TMS570_LIN2 (*(volatile tms570_lin_t*)0xFFF7E600)
0142 #endif
0143 #define TMS570_MDIO (*(volatile tms570_mdio_t*)0xFCF78900)
0144 #define TMS570_NHET1 (*(volatile tms570_nhet_t*)0xFFF7B800)
0145 #define TMS570_NHET2 (*(volatile tms570_nhet_t*)0xFFF7B900)
0146 #define TMS570_PBIST (*(volatile tms570_pbist_t*)0xFFFFE400)
0147 #define TMS570_PLL (*(volatile tms570_pll_t*)0xFFFFE100)
0148 #define TMS570_PMM (*(volatile tms570_pmm_t*)0xFFFF0000)
0149 #define TMS570_RTI (*(volatile tms570_rti_t*)0xFFFFFC00)
0150 #define TMS570_RTP (*(volatile tms570_rtp_t*)0xFFFFFA00)
0151 #define TMS570_SCI (*(volatile tms570_sci_t*)0xFFF7E500)
0152 #if TMS570_VARIANT == 4357
0153 #define TMS570_SCI2 (*(volatile tms570_sci_t*)0xFFF7E700)
0154 #endif
0155 #define TMS570_TCR (*(volatile tms570_tcr_t*)0xFFF7C800)
0156 #define TMS570_TCRAM1 (*(volatile tms570_tcram_t*)0xFFFFF800)
0157 #define TMS570_TCRAM2 (*(volatile tms570_tcram_t*)0xFFFFF900)
0158 #define TMS570_VIM (*(volatile tms570_vim_t*)0xFFFFFDEC)
0159 #define TMS570_POM (*(volatile tms570_pom_t*)0xFFA04000)
0160 #define TMS570_SPI1 (*(volatile tms570_spi_t*)0xFFF7F400)
0161 #define TMS570_SPI2 (*(volatile tms570_spi_t*)0xFFF7F600)
0162 #define TMS570_SPI3 (*(volatile tms570_spi_t*)0xFFF7F800)
0163 #define TMS570_SPI4 (*(volatile tms570_spi_t*)0xFFF7FA00)
0164 #define TMS570_SPI5 (*(volatile tms570_spi_t*)0xFFF7FC00)
0165 #define TMS570_STC (*(volatile tms570_stc_t*)0xFFFFE600)
0166 #define TMS570_SYS1 (*(volatile tms570_sys1_t*)0xFFFFFF00)
0167 #define TMS570_SYS2 (*(volatile tms570_sys2_t*)0xFFFFE100)
0168 #if TMS570_VARIANT == 4357
0169 #define TMS570_PCR1 (*(volatile tms570_pcr_t*)0xFFFF1000)
0170 #define TMS570_PCR2 (*(volatile tms570_pcr_t*)0xFCFF1000)
0171 #define TMS570_PCR3 (*(volatile tms570_pcr_t*)0xFFF78000)
0172 #else
0173 #define TMS570_PCR1 (*(volatile tms570_pcr_t*)0xFFFFE000)
0174 #endif
0175 #endif /* LIBBSP_ARM_TMS570 */