RTEMS 6.1-rc1
bsp.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-2-Clause */
2
11/*
12 * Copyright (C) 2020 On-Line Applications Research Corporation (OAR)
13 * Written by Kinsey Moore <kinsey.moore@oarcorp.com>
14 *
15 * Redistribution and use in source and binary forms, with or without
16 * modification, are permitted provided that the following conditions
17 * are met:
18 * 1. Redistributions of source code must retain the above copyright
19 * notice, this list of conditions and the following disclaimer.
20 * 2. Redistributions in binary form must reproduce the above copyright
21 * notice, this list of conditions and the following disclaimer in the
22 * documentation and/or other materials provided with the distribution.
23 *
24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
28 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
32 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34 * POSSIBILITY OF SUCH DAMAGE.
35 */
36
37#ifndef LIBBSP_AARCH64_XILINX_ZYNQMP_BSP_H
38#define LIBBSP_AARCH64_XILINX_ZYNQMP_BSP_H
39
46#include <bspopts.h>
47
48#define BSP_FEATURE_IRQ_EXTENSION
49
50#ifndef ASM
51
53#include <bsp/start.h>
54
55#include <rtems.h>
56#include <rtems/termiostypes.h>
57
58#ifdef __cplusplus
59extern "C" {
60#endif /* __cplusplus */
61
62#define BSP_ARM_GIC_CPUIF_BASE 0xf9020000
63#define BSP_ARM_GIC_DIST_BASE 0xf9010000
64
65#define BSP_RESET_SMC
66#define BSP_CPU_ON_USES_SMC
67
68#define BSP_FDT_IS_SUPPORTED
69extern unsigned int zynqmp_dtb_len;
70extern unsigned char zynqmp_dtb[];
71
72#define NANDPSU_BASEADDR 0xFF100000
73
79BSP_START_TEXT_SECTION void zynqmp_setup_mmu_and_cache(void);
80
87BSP_START_TEXT_SECTION void zynqmp_setup_secondary_cpu_mmu_and_cache( void );
88
89void zynqmp_debug_console_flush(void);
90
91uint32_t zynqmp_clock_i2c0(void);
92
93uint32_t zynqmp_clock_i2c1(void);
94
102__attribute__ ((weak))
103void zynqmp_configure_management_console(rtems_termios_device_context *base);
104
105#ifdef __cplusplus
106}
107#endif /* __cplusplus */
108
109#endif /* ASM */
110
113#endif /* LIBBSP_AARCH64_XILINX_ZYNQMP_BSP_H */
This header file provides the default definition of ::BSP_INITIAL_EXTENSION.
BSP_START_TEXT_SECTION void zynqmp_setup_secondary_cpu_mmu_and_cache(void)
Zynq UltraScale+ MPSoC specific set up of the MMU for non-primary cores.
Definition: bspstartmmu.c:82
__attribute__((weak)) void zynqmp_configure_management_console(rtems_termios_device_context *base)
Zynq UltraScale+ MPSoC specific set up of a management console.
Definition: console.c:81
BSP_START_TEXT_SECTION void zynqmp_setup_mmu_and_cache(void)
Zynq UltraScale+ MPSoC specific set up of the MMU.
Definition: bspstartmmu.c:64
This header file defines the RTEMS Classic API.
Termios device context.
Definition: termiosdevice.h:68