blob: 9b0790fe14af0f7cee8203ed62683bf9f5d70ee1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
/*
* Copyright (c) 2021 hpmicro
*
* SPDX-License-Identifier: BSD-3-Clause
*
*/
#ifndef _RTT_BOARD_H
#define _RTT_BOARD_H
#include "hpm_common.h"
#include "hpm_soc.h"
/* gpio section */
#define APP_LED0 (0U)
#define APP_LED1 (1U)
#define APP_LED2 (2U)
#define APP_LED0_GPIO_CTRL HPM_GPIO0
#define APP_LED0_GPIO_INDEX GPIO_DI_GPIOB
#define APP_LED0_GPIO_PIN 11
#define APP_LED1_GPIO_CTRL HPM_GPIO0
#define APP_LED1_GPIO_INDEX GPIO_DI_GPIOB
#define APP_LED1_GPIO_PIN 12
#define APP_LED2_GPIO_CTRL HPM_GPIO0
#define APP_LED2_GPIO_INDEX GPIO_DI_GPIOB
#define APP_LED2_GPIO_PIN 13
#define APP_LED_ON (0)
#define APP_LED_OFF (1)
/* mchtimer section */
#define BOARD_MCHTMR_FREQ_IN_HZ (24000000UL)
/* gptmr as os_tick */
#define BOARD_OS_TIMER HPM_GPTMR0
#define BOARD_OS_TIMER_CH 1
#define BOARD_OS_TIMER_IRQ IRQn_GPTMR0
#define BOARD_OS_TIMER_CLK_NAME (clock_gptmr0)
/* SPI WIFI section */
#define RW007_RST_PIN (IOC_PAD_PE02)
#define RW007_INT_BUSY_PIN (IOC_PAD_PE01)
#define RW007_CS_PIN (IOC_PAD_PE03)
#define RW007_CS_GPIO (HPM_GPIO0)
#define RW007_SPI_BUS_NAME "spi1"
/* CAN section */
#define BOARD_CAN_NAME "can0"
#define BOARD_CAN_HWFILTER_INDEX (0U)
/* UART section */
#define BOARD_UART_NAME "uart13"
#define BOARD_UART_RX_BUFFER_SIZE BSP_UART13_RX_BUFSIZE
/* eeprom section */
#define BOARD_EEPROM_I2C_NAME "i2c0"
#define BOARD_SD_NAME "sd1"
/* audio section */
#define BOARD_AUDIO_CODEC_I2C_NAME "i2c0"
#define BOARD_AUDIO_CODEC_I2S_NAME "i2s0"
/* PWM section */
#define BOARD_PWM_NAME "pwm2"
#define BOARD_PWM_CHANNEL (0)
#define IRQn_PendSV IRQn_DEBUG_0
#define BOARD_ENET0_INF (1U) /* 0: RMII, 1: RGMII */
#define BOARD_ENET0_INT_REF_CLK (0U)
#define BOARD_ENET0_PHY_RST_TIME (30)
#if BOARD_ENET0_INF
#define BOARD_ENET0_TX_DLY (0U)
#define BOARD_ENET0_RX_DLY (21U)
#endif
#if defined(__USE_ENET_PTP) && __USE_ENET_PTP
#define BOARD_ENET0_PTP_CLOCK (clock_ptp0)
#endif
#define BOARD_ENET1_RST_GPIO HPM_GPIO0
#define BOARD_ENET1_RST_GPIO_INDEX GPIO_DO_GPIOE
#define BOARD_ENET1_RST_GPIO_PIN (26U)
#define BOARD_ENET1_INF (0U) /* 0: RMII, 1: RGMII */
#define BOARD_ENET1_INT_REF_CLK (1U)
#define BOARD_ENET1_PHY_RST_TIME (30)
#if BOARD_ENET1_INF
#define BOARD_ENET1_TX_DLY (0U)
#define BOARD_ENET1_RX_DLY (0U)
#endif
#if defined(__USE_ENET_PTP) && __USE_ENET_PTP
#define BOARD_ENET1_PTP_CLOCK (clock_ptp1)
#endif
/***************************************************************
*
* RT-Thread related definitions
*
**************************************************************/
extern unsigned int __heap_start__;
extern unsigned int __heap_end__;
#define RT_HW_HEAP_BEGIN ((void*)&__heap_start__)
#define RT_HW_HEAP_END ((void*)&__heap_end__)
typedef struct {
uint16_t vdd;
uint8_t bus_width;
uint8_t drive_strength;
}sdxc_io_cfg_t;
#if defined(__cplusplus)
extern "C" {
#endif /* __cplusplus */
void app_init_led_pins(void);
void app_led_write(uint32_t index, bool state);
void app_init_usb_pins(void);
#if defined(__cplusplus)
}
#endif /* __cplusplus */
#endif /* _RTT_BOARD_H */
|