2025-01-21 16:49:37 +08:00
|
|
|
|
#ifndef _BOARD_H
|
|
|
|
|
#define _BOARD_H
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/********** display configuration **********/
|
|
|
|
|
#define LCD_INTERFACE_TTL 0
|
|
|
|
|
#define LCD_INTERFACE_LVDS 1
|
|
|
|
|
#define LCD_INTERFACE_CPU 2
|
|
|
|
|
#define LCD_INTERFACE_MIPI 3
|
|
|
|
|
|
|
|
|
|
#define LCD_WIRING_MODE_RGB 0
|
|
|
|
|
#define LCD_WIRING_MODE_RBG 1
|
|
|
|
|
#define LCD_WIRING_MODE_GRB 2
|
|
|
|
|
#define LCD_WIRING_MODE_GBR 3
|
|
|
|
|
#define LCD_WIRING_MODE_BRG 4
|
|
|
|
|
#define LCD_WIRING_MODE_BGR 5
|
|
|
|
|
|
|
|
|
|
#define LCD_WIRING_BIT_ORDER_MSB 0
|
|
|
|
|
#define LCD_WIRING_BIT_ORDER_LSB 1
|
|
|
|
|
|
|
|
|
|
#define LVDS_PANEL_FORMAT_TI 0
|
|
|
|
|
#define LVDS_PANEL_FORMAT_NS 1
|
|
|
|
|
|
|
|
|
|
#define LVDS_PANEL_DATA_8BIT 0
|
|
|
|
|
#define LVDS_PANEL_DATA_6BIT 1
|
|
|
|
|
|
|
|
|
|
#define CPU_PANEL_18BIT_MODE 0
|
|
|
|
|
#define CPU_PANEL_16BIT_MODE 1
|
|
|
|
|
#define CPU_PANEL_9BIT_MODE 2
|
|
|
|
|
#define CPU_PANEL_8BIT_MODE 3
|
|
|
|
|
|
|
|
|
|
#define LCD_ROTATE_ANGLE_0 0
|
|
|
|
|
#define LCD_ROTATE_ANGLE_90 1
|
|
|
|
|
#define LCD_ROTATE_ANGLE_180 2
|
|
|
|
|
#define LCD_ROTATE_ANGLE_270 3
|
|
|
|
|
|
|
|
|
|
#define LCD_H_FLIP 0 //水平镜像
|
|
|
|
|
#define LCD_V_FLIP 0 //垂直镜像
|
|
|
|
|
//#define LCD_CLK_INVERSE //LCD时钟极性反向
|
|
|
|
|
#define LCD_ROTATE_ANGLE LCD_ROTATE_ANGLE_0
|
|
|
|
|
|
|
|
|
|
#if defined(LVGL_VG_GPU) || defined(VG_ONLY) || defined(REVERSE_TRACK)
|
|
|
|
|
#ifndef VG_DRIVER
|
|
|
|
|
#error "Error! Must define VG_DRIVER."
|
|
|
|
|
#endif
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if defined(DOUBLE_POINTER_HALO) || defined(SINGLE_POINTER_HALO)
|
|
|
|
|
#ifndef VG_ONLY
|
|
|
|
|
#error "Error! Must define VG_ONLY."
|
|
|
|
|
#endif
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef VG_ONLY
|
|
|
|
|
#if defined(DOUBLE_POINTER_HALO)
|
|
|
|
|
#define LCD_WIDTH 1280
|
|
|
|
|
#define LCD_HEIGHT 480
|
|
|
|
|
#define LCD_BPP 16
|
|
|
|
|
#define LCD_INTERFACE_TYPE LCD_INTERFACE_LVDS
|
|
|
|
|
#elif defined(SINGLE_POINTER_HALO)
|
|
|
|
|
#define LCD_WIDTH 1024
|
|
|
|
|
#define LCD_HEIGHT 600
|
|
|
|
|
#define LCD_BPP 16
|
|
|
|
|
#define LCD_INTERFACE_TYPE LCD_INTERFACE_TTL
|
|
|
|
|
#endif
|
|
|
|
|
#elif defined(AWTK)
|
|
|
|
|
//240719 lj
|
|
|
|
|
// #define LCD_WIDTH 1024
|
|
|
|
|
// #define LCD_HEIGHT 600
|
|
|
|
|
// #define LCD_BPP 16
|
|
|
|
|
#define LCD_WIDTH 800
|
|
|
|
|
#define LCD_HEIGHT 480
|
|
|
|
|
#define LCD_BPP 32
|
|
|
|
|
#define LCD_INTERFACE_TYPE LCD_INTERFACE_TTL
|
|
|
|
|
#else
|
|
|
|
|
#define LCD_WIDTH 1024
|
|
|
|
|
#define LCD_HEIGHT 600
|
|
|
|
|
#ifdef REVERSE_UI
|
|
|
|
|
#define LCD_BPP 32
|
|
|
|
|
#else
|
|
|
|
|
#define LCD_BPP 16
|
|
|
|
|
#endif
|
|
|
|
|
#define LCD_INTERFACE_TYPE LCD_INTERFACE_TTL
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if LCD_INTERFACE_TYPE == LCD_INTERFACE_TTL
|
|
|
|
|
#define LCD_WIRING_MODE LCD_WIRING_MODE_RGB
|
|
|
|
|
#define LCD_WIRING_BIT_ORDER LCD_WIRING_BIT_ORDER_LSB
|
|
|
|
|
#elif LCD_INTERFACE_TYPE == LCD_INTERFACE_LVDS
|
|
|
|
|
#define LCD_WIRING_MODE LCD_WIRING_MODE_BGR
|
|
|
|
|
#define LCD_WIRING_BIT_ORDER LCD_WIRING_BIT_ORDER_MSB
|
|
|
|
|
#define LVDS_SCREEN_RST_GPIO 74
|
|
|
|
|
#define LVDS_PANEL_FORMAT LVDS_PANEL_FORMAT_TI
|
|
|
|
|
#define LVDS_PANEL_DATA LVDS_PANEL_DATA_8BIT
|
|
|
|
|
#elif LCD_INTERFACE_TYPE == LCD_INTERFACE_CPU
|
|
|
|
|
#define CPU_PANEL_DATA CPU_PANEL_8BIT_MODE
|
|
|
|
|
#elif LCD_INTERFACE_TYPE == LCD_INTERFACE_MIPI
|
|
|
|
|
#define LCD_WIRING_MODE LCD_WIRING_MODE_RGB
|
|
|
|
|
#define LCD_WIRING_BIT_ORDER LCD_WIRING_BIT_ORDER_MSB
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#define FB_SIZE (LCD_WIDTH * LCD_HEIGHT * LCD_BPP / 8)
|
|
|
|
|
|
|
|
|
|
#define VIDEO_DISPLAY_WIDTH LCD_WIDTH
|
|
|
|
|
#define VIDEO_DISPLAY_HEIGHT LCD_HEIGHT
|
|
|
|
|
#define VIDEO_DISPLAY_BUF_NUM 2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if (LCD_WIDTH == 1024 && LCD_HEIGHT == 600)
|
|
|
|
|
#define LCD_TIMING_VBP 1
|
|
|
|
|
#define LCD_TIMING_VFP 1
|
|
|
|
|
#define LCD_TIMING_VSW 30
|
|
|
|
|
#define LCD_TIMING_HBP 100
|
|
|
|
|
#define LCD_TIMING_HFP 100
|
|
|
|
|
#define LCD_TIMING_HSW 370
|
|
|
|
|
#define LCD_CLK_FREQ 50000000
|
|
|
|
|
#elif (LCD_WIDTH == 800 && LCD_HEIGHT == 480)
|
|
|
|
|
#define LCD_TIMING_VBP 1
|
|
|
|
|
#define LCD_TIMING_VFP 1
|
|
|
|
|
#define LCD_TIMING_VSW 30
|
|
|
|
|
#define LCD_TIMING_HBP 50
|
|
|
|
|
#define LCD_TIMING_HFP 50
|
|
|
|
|
#define LCD_TIMING_HSW 180
|
|
|
|
|
#define LCD_CLK_FREQ 35000000
|
|
|
|
|
#elif (LCD_WIDTH == 1280 && LCD_HEIGHT == 720)
|
|
|
|
|
#define LCD_TIMING_VBP 5
|
|
|
|
|
#define LCD_TIMING_VFP 65
|
|
|
|
|
#define LCD_TIMING_VSW 2
|
|
|
|
|
#define LCD_TIMING_HBP 16
|
|
|
|
|
#define LCD_TIMING_HFP 42
|
|
|
|
|
#define LCD_TIMING_HSW 2
|
|
|
|
|
#define LCD_CLK_FREQ 60000000
|
|
|
|
|
#elif (LCD_WIDTH == 1280 && LCD_HEIGHT == 480)
|
|
|
|
|
#define LCD_TIMING_VBP 5
|
|
|
|
|
#define LCD_TIMING_VFP 8
|
|
|
|
|
#define LCD_TIMING_VSW 3
|
|
|
|
|
#define LCD_TIMING_HBP 16
|
|
|
|
|
#define LCD_TIMING_HFP 26
|
|
|
|
|
#define LCD_TIMING_HSW 12
|
|
|
|
|
#define LCD_CLK_FREQ 40000000
|
|
|
|
|
#elif (LCD_WIDTH == 480 && LCD_HEIGHT == 1280)
|
|
|
|
|
#define LCD_TIMING_VBP 6// 14
|
|
|
|
|
#define LCD_TIMING_VFP 6// 16
|
|
|
|
|
#define LCD_TIMING_VSW 16// 2
|
|
|
|
|
#define LCD_TIMING_HBP 16
|
|
|
|
|
#define LCD_TIMING_HFP 36
|
|
|
|
|
#define LCD_TIMING_HSW 26
|
|
|
|
|
#define LCD_CLK_FREQ 50000000
|
|
|
|
|
#elif (LCD_WIDTH == 480 && LCD_HEIGHT == 960)
|
|
|
|
|
#define LCD_TIMING_VBP 20//10
|
|
|
|
|
#define LCD_TIMING_VFP 20//30
|
|
|
|
|
#define LCD_TIMING_VSW 10
|
|
|
|
|
#define LCD_TIMING_HBP 30//5
|
|
|
|
|
#define LCD_TIMING_HFP 40//10
|
|
|
|
|
#define LCD_TIMING_HSW 10
|
|
|
|
|
#define LCD_CLK_FREQ 33330000
|
|
|
|
|
#else
|
|
|
|
|
#error "no lcd timing configuraion."
|
|
|
|
|
#endif
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ adc configuration ************/
|
|
|
|
|
//#define ADC_TOUCH
|
|
|
|
|
#define ADC_KEY
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/******* video in configuration *******/
|
|
|
|
|
#define VIDEO_DECODER_RN6752
|
|
|
|
|
//#define VIDEO_DECODER_ARK7116
|
|
|
|
|
#define VIN_CVBS_PAL 0
|
|
|
|
|
#define VIN_CVBS_NTSC 1
|
|
|
|
|
#define VIN_AHD_720P_25 2
|
|
|
|
|
#define VIN_AHD_720P_30 3
|
|
|
|
|
#define VIDEO_IN_FORMAT VIN_CVBS_NTSC
|
|
|
|
|
#if VIDEO_IN_FORMAT == VIN_CVBS_PAL
|
|
|
|
|
#define VIN_WIDTH 720
|
|
|
|
|
#define VIN_HEIGHT 288
|
|
|
|
|
#elif VIDEO_IN_FORMAT == VIN_CVBS_NTSC
|
|
|
|
|
#define VIN_WIDTH 720
|
|
|
|
|
#define VIN_HEIGHT 240
|
|
|
|
|
#elif VIDEO_IN_FORMAT == VIN_AHD_720P_25 || VIDEO_IN_FORMAT == VIN_AHD_720P_30
|
|
|
|
|
#define VIN_WIDTH 1280
|
|
|
|
|
#define VIN_HEIGHT 720
|
|
|
|
|
#endif
|
|
|
|
|
#if VIN_WIDTH * VIN_HEIGHT > 0x96000
|
|
|
|
|
#define VIN_SMALL_MEM
|
|
|
|
|
#endif
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ carback configuration ********/
|
|
|
|
|
//#define CARBACK_DETECT
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/********* touchscreen configuration *******/
|
|
|
|
|
//#define TP_SUPPORT
|
|
|
|
|
|
|
|
|
|
#ifdef TP_SUPPORT
|
|
|
|
|
/* Select one tp IC */
|
|
|
|
|
//#define TP_USE_GT9XX
|
|
|
|
|
//#define TP_USE_GA657X
|
|
|
|
|
//#define TP_USE_FT6336U
|
|
|
|
|
|
|
|
|
|
/* Config tp parameters */
|
|
|
|
|
#define TP_GPIO_INT 4
|
|
|
|
|
#define TP_GPIO_RST 5
|
|
|
|
|
#define TP_INV_X 0
|
|
|
|
|
#define TP_INV_Y 0
|
|
|
|
|
#define TP_INV_XY_AXIS 0 //翻转XY轴
|
|
|
|
|
#define TP_MT_TOUCH 0 //支持多点触摸
|
|
|
|
|
#endif
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/*********** sdmmc configuration ***********/
|
|
|
|
|
#define SDMMC_SUPPORT //SD卡软件宏 WIF模块会调用
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/*********** uart configuration ************/
|
|
|
|
|
//240719 lj
|
|
|
|
|
#define UART_BT_PORT 3//蓝牙通讯串口3
|
|
|
|
|
#define UART_MCU_PORT 2//通话蓝牙与cat1通讯串口2
|
|
|
|
|
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ rtc configuration ************/
|
|
|
|
|
#define RTC_SUPPORT
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ remote configuration ************/
|
|
|
|
|
//#define REMOTE_SUPPORT
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ pwm capture configuration ************/
|
|
|
|
|
//#define PWM_CAP_SUPPORT
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ dma configuration ************/
|
|
|
|
|
/* the smaller channel has higher priority */
|
|
|
|
|
#define I2S_DMA_RXCH 0
|
|
|
|
|
#define I2S_DMA_TXCH 1
|
|
|
|
|
#define SPI0_RX_DMA_CH 2
|
|
|
|
|
#define SDMMC_DMA_CH 3
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ usb configuration ************/
|
|
|
|
|
#define USB_SUPPORT
|
|
|
|
|
#define USB_MODE_ID -1
|
|
|
|
|
//#define USB_DMA
|
|
|
|
|
|
|
|
|
|
//#define USB_UVC_SUPPORT
|
|
|
|
|
#define CONFIG_USB_DWC2_HOST 1
|
|
|
|
|
#define CONFIG_USB_NEW_DWC2_HOST 1
|
|
|
|
|
#define CONFIG_USB_DWC2_PERIPHERAL 1
|
|
|
|
|
#define CONFIG_USB_NEW_DWC2_GADGET 1
|
|
|
|
|
#if USB_MODE_ID && USB_MODE_ID != -1
|
|
|
|
|
#define CONFIG_USB_DEVICE_CDC_NCM 1
|
|
|
|
|
#endif
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ carlink configuration ************/
|
|
|
|
|
#ifdef CARLINK_ENABLE /* define in iar options */
|
|
|
|
|
#define WIFI_SUPPORT
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef WIFI_SUPPORT
|
|
|
|
|
#define CARLINK_EY 0
|
|
|
|
|
#define CARLINK_EC 0
|
|
|
|
|
#define CARLINK_CP 1
|
|
|
|
|
#define CARLINK_AA 1
|
|
|
|
|
|
|
|
|
|
#if !DEVICE_MXC_A27
|
|
|
|
|
#define WIFI_RESET_IO 12
|
|
|
|
|
#else
|
|
|
|
|
#define WIFI_RESET_IO 95
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
#define CARLINK_EY 0
|
|
|
|
|
#define CARLINK_EC 0
|
|
|
|
|
#define CARLINK_CP 0
|
|
|
|
|
#define CARLINK_AA 0
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if CARLINK_EY && CARLINK_EC
|
|
|
|
|
#error "Do not choose two car links"
|
|
|
|
|
#elif (CARLINK_EY && CARLINK_CP)
|
|
|
|
|
#error "Do not choose two car links"
|
|
|
|
|
#elif (CARLINK_EY && CARLINK_AA)
|
|
|
|
|
#error "Do not choose two car links"
|
|
|
|
|
#elif (CARLINK_EC && CARLINK_CP)
|
|
|
|
|
// #error "Do not choose two car links"
|
|
|
|
|
#elif (CARLINK_EC && CARLINK_AA)
|
|
|
|
|
#error "Do not choose two car links"
|
|
|
|
|
// #elif (CARLINK_CP && CARLINK_AA)
|
|
|
|
|
#error "Do not choose two car links"
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#define USE_LWIP 1
|
|
|
|
|
|
|
|
|
|
#if CARLINK_CP && !USE_LWIP
|
|
|
|
|
#error "carplay need lwip"
|
|
|
|
|
#endif
|
|
|
|
|
|
2025-02-11 18:48:14 +08:00
|
|
|
|
// #if !DEVICE_MXC_A27
|
|
|
|
|
// //wifi模块蓝牙复位引脚
|
|
|
|
|
// #define BT_RESET_IO 13
|
|
|
|
|
// //wifi模块使能引脚
|
|
|
|
|
// #define WIFI_EN_IO 14
|
|
|
|
|
// #else
|
2025-01-21 16:49:37 +08:00
|
|
|
|
#define BT_RESET_IO 94
|
|
|
|
|
#define WIFI_EN_IO 46
|
2025-02-11 18:48:14 +08:00
|
|
|
|
// #endif
|
2025-01-21 16:49:37 +08:00
|
|
|
|
|
|
|
|
|
#define BT_UART_PORT 1
|
|
|
|
|
|
|
|
|
|
//#define RELTECK_WIFI_AP_MODE
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ i2c configuration ************/
|
|
|
|
|
#define HW_I2C0_SUPPORT //Hardware i2c0 support
|
|
|
|
|
//#define HW_I2C1_SUPPORT //Hardware i2c1 support
|
|
|
|
|
//#define ANALOG_I2C_SUPPORT //Analog i2c support
|
|
|
|
|
|
|
|
|
|
#ifdef ANALOG_I2C_SUPPORT
|
|
|
|
|
#define I2C_GPIO0_SDA_PIN 102
|
|
|
|
|
#define I2C_GPIO0_SCL_PIN 101
|
|
|
|
|
#endif
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/************ audio configuration ************/
|
|
|
|
|
#define I2S_ID0 0
|
|
|
|
|
#define I2S_ID1 1
|
|
|
|
|
#define I2S_NUMS 2
|
|
|
|
|
|
|
|
|
|
#define AUDIO_FLAG_REPLAY 1
|
|
|
|
|
#define AUDIO_FLAG_RECORD 2
|
|
|
|
|
#define AUDIO_FLAG_REPLAY_RECORD (AUDIO_FLAG_REPLAY | AUDIO_FLAG_RECORD)
|
|
|
|
|
|
|
|
|
|
/* add your adc type */
|
|
|
|
|
#define AUDIO_CODEC_ADC_NONE 0 //Not use codec adc ic or no need driver.
|
|
|
|
|
#define AUDIO_CODEC_ADC_ES7243E 1 //Use codec adc ic es7243e.
|
|
|
|
|
|
|
|
|
|
/* add your dac type */
|
|
|
|
|
#define AUDIO_CODEC_DAC_NONE 0 //Not use codec adc ic or no need driver.
|
|
|
|
|
#define AUDIO_CODEC_DAC_ES8156 1 //Use codec dac ic es8156.
|
|
|
|
|
|
|
|
|
|
/* choose your audio use type */
|
|
|
|
|
#define AUDIO_REPLAY
|
|
|
|
|
#define AUDIO_RECORD
|
|
|
|
|
|
|
|
|
|
#ifdef AUDIO_REPLAY
|
|
|
|
|
#define AUDIO_REPLAY_I2S I2S_ID0 /* Select i2s id */
|
|
|
|
|
#define AUDIO_CODEC_DAC_IC AUDIO_CODEC_DAC_NONE /* Select your codec dac type */
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef AUDIO_RECORD
|
|
|
|
|
#define AUDIO_RECORD_I2S I2S_ID1 /* Select i2s id */
|
|
|
|
|
#define AUDIO_CODEC_ADC_IC AUDIO_CODEC_ADC_ES7243E /* Select your codec adc type */
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifndef AUDIO_CODEC_DAC_IC
|
|
|
|
|
#define AUDIO_CODEC_DAC_IC AUDIO_CODEC_DAC_NONE /* Do not use codec dac by default */
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifndef AUDIO_CODEC_ADC_IC
|
|
|
|
|
#define AUDIO_CODEC_ADC_IC AUDIO_CODEC_ADC_NONE /* Do not use codec adc by default */
|
|
|
|
|
#endif
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/********** romfile configuration **********/
|
|
|
|
|
/* 没有定义ROMFILE_USE_SMALL_MEM,romfile内容会全部加载到ddr
|
|
|
|
|
* 内存不足时可以定义ROMFILE_USE_SMALL_MEM节省内存使用 */
|
|
|
|
|
#if !defined(VG_ONLY)
|
|
|
|
|
#define ROMFILE_USE_SMALL_MEM
|
|
|
|
|
#endif
|
|
|
|
|
#ifndef ROMFILE_USE_SMALL_MEM
|
|
|
|
|
/* 定义READ_ROMFILE_ONCE,romfile内容会整个一次加载到ddr,如果
|
|
|
|
|
* 文件过大会导致启动时间慢 */
|
|
|
|
|
//#define READ_ROMFILE_ONCE
|
|
|
|
|
#else
|
|
|
|
|
/* 缓存在DDR里的文件数,未缓存的文件需要重新从flash里读取 */
|
|
|
|
|
#define ROMFILE_CACHE_DEF_SIZE 0
|
|
|
|
|
#endif
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/********** animation configuration **********/
|
|
|
|
|
#define ANIMATION_NONE 0
|
|
|
|
|
#define ANIMATION_USE_SMALL_MEM 1
|
|
|
|
|
#define ANIMATION_NORMAL 2
|
|
|
|
|
#define ANIMATION_POLICY ANIMATION_NORMAL
|
|
|
|
|
/*********************************************/
|
|
|
|
|
|
|
|
|
|
/************ flash type configuration ************/
|
|
|
|
|
#define SPI_NOR_FLASH 0
|
|
|
|
|
#define SPI_NAND_FLASH 1
|
|
|
|
|
#define EMMC_FLASH 2
|
|
|
|
|
#define DEVICE_TYPE_SELECT SPI_NOR_FLASH
|
|
|
|
|
/*******************************************/
|
|
|
|
|
|
|
|
|
|
/********** update address configuration **********/
|
|
|
|
|
#if DEVICE_TYPE_SELECT == SPI_NAND_FLASH
|
|
|
|
|
#define LOADER_OFFSET 0x0
|
|
|
|
|
#define STEPLDRA_OFFSET 0x20000
|
|
|
|
|
#define STEPLDRB_OFFSET 0x40000
|
|
|
|
|
#define STEPLDR_MAX_SIZE 0x14000
|
|
|
|
|
#define SYSINFOA_MEDIA_OFFSET 0x60000
|
|
|
|
|
#define SYSINFOB_MEDIA_OFFSET 0x80000
|
|
|
|
|
#define UPDATEFILE_MEDIA_OFFSET 0xa0000
|
|
|
|
|
#define UPDATEFILE_MEDIA_B_OFFSET 0xc00000
|
|
|
|
|
#define UPDATEFILE_MAX_SIZE 0xb00000
|
|
|
|
|
#define OTA_MEDIA_OFFSET 0x500000
|
|
|
|
|
#define OTA_MEDIA_SIZE 0xa00000
|
|
|
|
|
#define SPI0_QSPI_MODE
|
|
|
|
|
#elif DEVICE_TYPE_SELECT == SPI_NOR_FLASH
|
|
|
|
|
#define LOADER_OFFSET 0x0
|
|
|
|
|
#define STEPLDRA_OFFSET 0x4000
|
|
|
|
|
#define STEPLDRB_OFFSET 0x20000
|
|
|
|
|
#define STEPLDR_MAX_SIZE 0x14000
|
|
|
|
|
#define SYSINFOA_MEDIA_OFFSET 0x3c000
|
|
|
|
|
#define SYSINFOB_MEDIA_OFFSET 0x3e000
|
|
|
|
|
#define UPDATEFILE_MEDIA_OFFSET 0x40000
|
|
|
|
|
#define UPDATEFILE_MEDIA_B_OFFSET 0xc00000
|
|
|
|
|
#define UPDATEFILE_MAX_SIZE 0xb00000
|
|
|
|
|
#define OTA_MEDIA_OFFSET 0xa00000
|
|
|
|
|
#define OTA_MEDIA_SIZE 0x500000
|
|
|
|
|
// #define SPI0_QSPI_MODE
|
|
|
|
|
#elif DEVICE_TYPE_SELECT == EMMC_FLASH
|
|
|
|
|
#define LOADER_OFFSET 0x0
|
|
|
|
|
#define LOADERB_OFFSET 0x100000
|
|
|
|
|
#define STEPLDRA_OFFSET 0x200000
|
|
|
|
|
#define STEPLDRB_OFFSET 0x300000
|
|
|
|
|
#define STEPLDR_MAX_SIZE 0x14000
|
|
|
|
|
#define SYSINFOA_MEDIA_OFFSET 0x400000
|
|
|
|
|
#define SYSINFOB_MEDIA_OFFSET 0x500000
|
|
|
|
|
#define UPDATEFILE_MEDIA_OFFSET 0xA00000
|
|
|
|
|
#define UPDATEFILE_MEDIA_B_OFFSET 0x40000000
|
|
|
|
|
#define UPDATEFILE_MAX_SIZE 0x1000000
|
|
|
|
|
#define OTA_MEDIA_OFFSET 0x80000000
|
|
|
|
|
#define OTA_MEDIA_SIZE 0x10000000
|
|
|
|
|
//#define SPI0_QSPI_MODE
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/*********************************************/
|
|
|
|
|
|
|
|
|
|
/********** ulog configuration **********/
|
|
|
|
|
//#define USE_ULOG
|
|
|
|
|
#define ULOG_NAME_MAX 8
|
|
|
|
|
#define ULOG_LINE_BUF_SIZE 1024
|
|
|
|
|
#define ULOG_OUTPUT_LEVEL
|
|
|
|
|
#define ULOG_OUTPUT_TIME
|
|
|
|
|
//#define ULOG_TIME_USING_TIMESTAMP
|
|
|
|
|
//#define ULOG_OUTPUT_TAG
|
|
|
|
|
//#define ULOG_USING_COLOR
|
|
|
|
|
#define ULOG_USING_ISR_LOG
|
|
|
|
|
#define ULOG_BACKEND_USING_CONSOLE
|
|
|
|
|
#define ULOG_EASYFLASH_BACKEND_ENABLE
|
|
|
|
|
#ifdef ULOG_EASYFLASH_BACKEND_ENABLE
|
|
|
|
|
#define EASYFLASH_LOG
|
|
|
|
|
#if DEVICE_TYPE_SELECT != EMMC_FLASH
|
|
|
|
|
#define EASYFLASH_LOG_AREA_SIZE 0x100000
|
|
|
|
|
#define EASYFLASH_ERASE_GRAN 0x1000
|
|
|
|
|
#define EASYFLASH_WRITE_GRAN 0x100
|
|
|
|
|
#define EASYFLASH_START_ADDR 0x1700000
|
|
|
|
|
#else
|
|
|
|
|
#define EASYFLASH_LOG_AREA_SIZE 0x100000
|
|
|
|
|
#define EASYFLASH_ERASE_GRAN 0x10000
|
|
|
|
|
#define EASYFLASH_WRITE_GRAN 0x200
|
|
|
|
|
#define EASYFLASH_START_ADDR 0x60000000
|
|
|
|
|
#endif
|
|
|
|
|
#endif
|
|
|
|
|
//#define ULOG_FILE_BACKEND_ENABLE
|
|
|
|
|
#ifdef ULOG_FILE_BACKEND_ENABLE
|
|
|
|
|
#if DEVICE_TYPE_SELECT != EMMC_FLASH
|
|
|
|
|
#define ULOG_FILE_ROOT_PATH "/sf/logs"
|
|
|
|
|
#else
|
|
|
|
|
#define ULOG_FILE_ROOT_PATH "/sd/logs"
|
|
|
|
|
#endif
|
|
|
|
|
#define ULOG_FILE_NAME_BASE "ulog.log"
|
|
|
|
|
#define ULOG_FILE_MAX_NUM 10
|
|
|
|
|
#define ULOG_FILE_MAX_SIZE (1024 * 32)
|
|
|
|
|
#endif
|
|
|
|
|
//#define ULOG_USING_ASYNC_OUTPUT
|
|
|
|
|
#define ULOG_ASYNC_OUTPUT_BUF_SIZE 1024
|
|
|
|
|
#define ULOG_ASYNC_OUTPUT_THREAD_STACK 2048
|
|
|
|
|
#define ULOG_ASYNC_OUTPUT_THREAD_PRIORITY 10
|
|
|
|
|
/*********************************************/
|
|
|
|
|
|
|
|
|
|
/********** update address configuration **********/
|
|
|
|
|
#define OTA_UPDATE_SUPPORT
|
|
|
|
|
#ifdef OTA_UPDATE_SUPPORT
|
|
|
|
|
//#define WIFI_UPDATE_SUPPORT
|
|
|
|
|
#if defined(WIFI_UPDATE_SUPPORT) && !defined(USB_SUPPORT)
|
|
|
|
|
#error "Error! Should define USB_SUPPORT to support wifi simu update"
|
|
|
|
|
#endif
|
|
|
|
|
//#define NCM_UPDATE_SUPPORT
|
|
|
|
|
#if defined(NCM_UPDATE_SUPPORT) && !CONFIG_USB_DEVICE_CDC_NCM
|
|
|
|
|
#error "Error! Should define CONFIG_USB_DEVICE_CDC_NCM=1 to support ncm update"
|
|
|
|
|
#endif
|
|
|
|
|
//#define NCM_LOG_SUPPORT
|
|
|
|
|
#if defined(NCM_LOG_SUPPORT) && !CONFIG_USB_DEVICE_CDC_NCM
|
|
|
|
|
#error "Error! Should define CONFIG_USB_DEVICE_CDC_NCM=1 to support ncm log"
|
|
|
|
|
#endif
|
|
|
|
|
#endif
|
|
|
|
|
/*********************************************/
|
|
|
|
|
|
|
|
|
|
void VideoDisplayBufInit(void);
|
|
|
|
|
int xVideoDisplayBufTake(uint32_t xTicksToWait);
|
|
|
|
|
void vVideoDisplayBufGive(void);
|
|
|
|
|
uint32_t ulVideoDisplayBufGet(void);
|
|
|
|
|
uint32_t ulVideoDisplayBufGetSize(void);
|
|
|
|
|
void vVideoDisplayBufRender(uint32_t buf_addr);
|
|
|
|
|
void vVideoDisplayBufFree(uint32_t buf_addr);
|
|
|
|
|
unsigned int ulVideoDisplayGetBufferAddr(int index);
|
|
|
|
|
|
|
|
|
|
#ifdef VIDEO_DECODER_RN6752
|
|
|
|
|
int rn6752_init(void);
|
|
|
|
|
#endif
|
|
|
|
|
#ifdef VIDEO_DECODER_ARK7116
|
|
|
|
|
int ark7116_init();
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef SDMMC_SUPPORT
|
|
|
|
|
int mmcsd_core_init(void);
|
|
|
|
|
int mmc_init(void);
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
int carback_init(void);
|
|
|
|
|
void notify_enter_carback(void);
|
|
|
|
|
void notify_exit_carback(void);
|
|
|
|
|
int get_carback_status(void);
|
|
|
|
|
|
|
|
|
|
#endif
|