1 /*
2  * Copyright (c) 2016, Freescale Semiconductor, Inc.
3  * Copyright 2017-2018 NXP
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #ifndef _BOARD_H_
9 #define _BOARD_H_
10 
11 #include "clock_config.h"
12 
13 /* SCFW includes */
14 #include "main/rpc.h"
15 #include "svc/pm/pm_api.h"
16 
17 #include "main/imx8qx_pads.h"
18 #include "svc/pad/pad_api.h"
19 
20 /*******************************************************************************
21  * Definitions
22  ******************************************************************************/
23 /*! @brief The board name */
24 #define BOARD_NAME "VALMIMX8QX6"
25 
26 /* The UART to use for debug messages. */
27 #define BOARD_DEBUG_UART_TYPE DEBUG_CONSOLE_DEVICE_TYPE_LPUART
28 #define BOARD_DEBUG_UART_BAUDRATE 115200u
29 #define BOARD_DEBUG_UART_BASEADDR (uint32_t) CM4__LPUART
30 #define BOARD_DEBUG_UART_INSTANCE 0U
31 #define BOARD_DEBUG_UART_CLK_FREQ 6000000u
32 #define BOARD_UART_IRQ LPUART_CM_0_IRQn
33 #define BOARD_UART_IRQ_HANDLER LPUART0_IRQHandler
34 #define BOARD_DEBUG_UART_CLKSRC kCLOCK_IpSrcDummy
35 #define BOARD_BASEBOARD_PWR_GPIO LSIO__GPIO5
36 #define BOARD_BASEBOARD_PWR_GPIO_PIN 9U
37 
38 #if defined(__cplusplus)
39 extern "C" {
40 #endif /* __cplusplus */
41 
42 /*******************************************************************************
43  * API
44  ******************************************************************************/
45 sc_ipc_t BOARD_InitRpc(void);
46 sc_ipc_t BOARD_GetRpcHandle(void);
47 void BOARD_InitDebugConsole(void);
48 void BOARD_InitPinsPre(void);
49 void BOARD_PowerOnBaseBoard(void);
50 void BOARD_InitMemory(void);
51 
52 #if defined(__cplusplus)
53 }
54 #endif /* __cplusplus */
55 
56 #endif /* _BOARD_H_ */
57