2019-10-24 17:56:09 +08:00
|
|
|
/*
|
2021-03-17 02:26:35 +08:00
|
|
|
* Copyright (c) 2006-2021, RT-Thread Development Team
|
2019-10-24 17:56:09 +08:00
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
|
|
*
|
|
|
|
* Change Logs:
|
|
|
|
* Date Author Notes
|
|
|
|
* 2009-09-22 Bernard add board.h to this bsp
|
|
|
|
* 2010-02-04 Magicoe add board.h to LPC176x bsp
|
|
|
|
* 2013-12-18 Bernard porting to LPC4088 bsp
|
|
|
|
* 2017-08-02 XiaoYang porting to LPC54608 bsp
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __BOARD_H__
|
|
|
|
#define __BOARD_H__
|
|
|
|
|
|
|
|
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
#include <rtthread.h>
|
|
|
|
|
|
|
|
#include "clock_config.h"
|
|
|
|
#include "fsl_common.h"
|
|
|
|
#include "fsl_reset.h"
|
|
|
|
#include "fsl_gpio.h"
|
|
|
|
#include "fsl_iocon.h"
|
|
|
|
#include "pin_mux.h"
|
|
|
|
|
|
|
|
// <RDTConfigurator URL="http://www.rt-thread.com/eclipse">
|
|
|
|
|
|
|
|
// </RDTConfigurator>
|
2021-12-30 03:14:07 +08:00
|
|
|
#if defined(__ARMCC_VERSION)
|
2019-10-24 17:56:09 +08:00
|
|
|
extern int Image$$ARM_LIB_HEAP$$ZI$$Base;
|
2021-09-21 18:24:52 +08:00
|
|
|
extern int Image$$ARM_LIB_STACK$$ZI$$Base;
|
2019-10-24 17:56:09 +08:00
|
|
|
#define HEAP_BEGIN ((void *)&Image$$ARM_LIB_HEAP$$ZI$$Base)
|
2021-10-23 22:37:45 +08:00
|
|
|
#define HEAP_END ((void*)&Image$$ARM_LIB_STACK$$ZI$$Base)
|
2019-10-24 17:56:09 +08:00
|
|
|
#elif defined(__ICCARM__)
|
|
|
|
#pragma section="HEAP"
|
2022-11-30 08:56:50 +08:00
|
|
|
#define HEAP_BEGIN (__segment_end("HEAP"))
|
|
|
|
extern void __RTT_HEAP_END;
|
|
|
|
#define HEAP_END (&__RTT_HEAP_END)
|
2019-10-24 17:56:09 +08:00
|
|
|
#elif defined(__GNUC__)
|
2020-01-02 08:17:32 +08:00
|
|
|
extern int __HeapBase;
|
|
|
|
extern int __HeapLimit;
|
|
|
|
#define HEAP_BEGIN ((void *)&__HeapBase)
|
2021-10-23 22:37:45 +08:00
|
|
|
#define HEAP_END ((void *)&__HeapLimit)
|
2019-10-24 17:56:09 +08:00
|
|
|
#endif
|
|
|
|
|
|
|
|
void rt_hw_board_init(void);
|
|
|
|
|
|
|
|
#define BOARD_SDIF_BASEADDR SDIF
|
|
|
|
#define BOARD_SDIF_CLKSRC kCLOCK_SDio
|
|
|
|
#define BOARD_SDIF_CLK_FREQ CLOCK_GetFreq(kCLOCK_SDio)
|
|
|
|
#define BOARD_SDIF_CLK_ATTACH kMAIN_CLK_to_SDIO_CLK
|
|
|
|
#define BOARD_SDIF_IRQ SDIO_IRQn
|
|
|
|
#define BOARD_MMC_VCC_SUPPLY kMMC_VoltageWindows270to360
|
|
|
|
#define BOARD_SD_CARD_DETECT_PIN 17
|
|
|
|
#define BOARD_SD_CARD_DETECT_PORT 0
|
|
|
|
#define BOARD_SD_CARD_DETECT_GPIO GPIO
|
|
|
|
#define BOARD_SD_DETECT_TYPE kSDMMCHOST_DetectCardByHostCD
|
|
|
|
|
|
|
|
#define BOARD_SDIF_CD_GPIO_INIT() \
|
|
|
|
{ \
|
|
|
|
CLOCK_EnableClock(kCLOCK_Gpio2); \
|
|
|
|
GPIO_PinInit(BOARD_SD_CARD_DETECT_GPIO, BOARD_SD_CARD_DETECT_PORT, BOARD_SD_CARD_DETECT_PIN, \
|
|
|
|
&(gpio_pin_config_t){kGPIO_DigitalInput, 0U}); \
|
|
|
|
}
|
|
|
|
#define BOARD_SDIF_CD_STATUS() \
|
|
|
|
GPIO_PinRead(BOARD_SD_CARD_DETECT_GPIO, BOARD_SD_CARD_DETECT_PORT, BOARD_SD_CARD_DETECT_PIN)
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|