![]() |
|
|||
File indexing completed on 2025-05-11 08:22:49
0001 /* SPDX-License-Identifier: BSD-2-Clause */ 0002 0003 /** 0004 * @file 0005 * 0006 * @ingroup RTEMSBSPsARMimx 0007 */ 0008 0009 /* 0010 * Copyright (c) 2017 embedded brains GmbH & Co. KG 0011 * 0012 * Redistribution and use in source and binary forms, with or without 0013 * modification, are permitted provided that the following conditions 0014 * are met: 0015 * 1. Redistributions of source code must retain the above copyright 0016 * notice, this list of conditions and the following disclaimer. 0017 * 2. Redistributions in binary form must reproduce the above copyright 0018 * notice, this list of conditions and the following disclaimer in the 0019 * documentation and/or other materials provided with the distribution. 0020 * 0021 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 0022 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 0023 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 0024 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 0025 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 0026 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 0027 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 0028 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 0029 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 0030 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 0031 * POSSIBILITY OF SUCH DAMAGE. 0032 */ 0033 0034 #ifndef LIBBSP_ARM_IMX_BSP_H 0035 #define LIBBSP_ARM_IMX_BSP_H 0036 0037 /** 0038 * @defgroup RTEMSBSPsARMimx NXP i.MX 0039 * 0040 * @ingroup RTEMSBSPsARM 0041 * 0042 * @brief NXP i.MX Board Support Package. 0043 * 0044 * @{ 0045 */ 0046 0047 #include <bspopts.h> 0048 0049 #define BSP_FEATURE_IRQ_EXTENSION 0050 0051 #define BSP_FDT_IS_SUPPORTED 0052 0053 #ifndef ASM 0054 0055 #include <rtems.h> 0056 0057 #include <bsp/default-initial-extension.h> 0058 0059 #ifdef __cplusplus 0060 extern "C" { 0061 #endif /* __cplusplus */ 0062 0063 extern uintptr_t imx_gic_dist_base; 0064 0065 #define BSP_ARM_GIC_DIST_BASE imx_gic_dist_base 0066 0067 #define BSP_ARM_GIC_CPUIF_BASE (BSP_ARM_GIC_DIST_BASE + 0x1000) 0068 0069 #define BSP_ARM_A9MPCORE_GT_BASE 0 0070 0071 #define BSP_ARM_A9MPCORE_SCU_BASE 0 0072 0073 void *imx_get_reg_of_node(const void *fdt, int node); 0074 0075 rtems_vector_number imx_get_irq_of_node( 0076 const void *fdt, 0077 int node, 0078 size_t index 0079 ); 0080 0081 void imx_uart_console_drain(void); 0082 0083 /** 0084 * @brief Registers an IMX I2C bus driver. 0085 * 0086 * @param[in] bus_path The I2C bus driver device path, e.g. "/dev/i2c-0". 0087 * @param[in] alias_or_path The FDT alias or path, e.g. "i2c0". 0088 * 0089 * @retval 0 Successful operation. 0090 * @retval -1 An error occurred. The errno is set to indicate the error. 0091 */ 0092 int i2c_bus_register_imx(const char *bus_path, const char *alias_or_path); 0093 0094 /** 0095 * @brief Registers an IMX ECSPI bus driver. 0096 * 0097 * @param[in] bus_path The ECSPI bus driver device path, e.g. "/dev/spi-0". 0098 * @param[in] alias_or_path The FDT alias or path, e.g. "spi0". 0099 * 0100 * @retval 0 Successful operation. 0101 * @retval -1 An error occurred. The errno is set to indicate the error. 0102 */ 0103 int spi_bus_register_imx(const char *bus_path, const char *alias_or_path); 0104 0105 #ifdef __cplusplus 0106 } 0107 #endif /* __cplusplus */ 0108 0109 #endif /* ASM */ 0110 0111 /* @} */ 0112 0113 #endif /* LIBBSP_ARM_IMX_BSP_H */
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |