📄 led_apif.h
字号:
//==============================================================================
// TEXAS INSTRUMENTS INCORPORATED PROPRIETARY INFORMATION
//
// Property of Texas Instruments. For Unrestricted Internal Use Only
// Unauthorized reproduction and/or distribution is strictly prohibited.
// This product is protected under copyright law and trade secret law
// as an unpublished work.
// Created 2002, (C) Copyright 2002 Texas Instruments. All rights reserved.
//
// Created : 2nd of August, 2002, 12.00pm
//
// Filename : led_apif.h
//
// Description : Header file for API block
//
// Project : HELEN2, OMAP1610, OMAP32
//
// Author : Fdelmarco
// Adapted by : Dayo Adeyeye
//
// Date of Module Modification:5/2/02
// Date of Generation :5/3/02
//
// FUNCTIONS PROVIDED
//
//===============================================================================
#ifndef LED_APILED__H
#define LED_APILED__H
#define APILED_BASE_ADDR 0xFFFEC900
//Register Offset
#define APILED_CTRL_REG_ADDR 0x00
#define APILED_DEBUG_ADDR_ADDR 0x04
#define APILED_DEBUG_DATA_ADDR 0x08
#define APILED_DEBUG_FLAG_ADDR 0x0C
#define APILED_STATUS_REG_ADDR 0x10
#define APILED_DSP_STATUS_REG_ADDR 0x14
#define APILED_DSP_BOOT_CONFIG_ADDR 0x18
#define APILED_DSP_API_CONFIG_ADDR 0x1C
#define APILED_DSP_MISC_CFG_ADDR 0x20
#define APILED_ENHANCED_CNTL_REG_ADDR 0x24
//APILED_CTRL_REG
#define APILED_CTRL_REG REG32(APILED_BASE_ADDR+APILED_CTRL_REG_ADDR)
//APILED_DEBUG_ADDR
#define APILED_DEBUG_ADDR REG32(APILED_BASE_ADDR+APILED_DEBUG_ADDR_ADDR)
//APILED_DEBUG_DATA
#define APILED_DEBUG_DATA REG32(APILED_BASE_ADDR+APILED_DEBUG_DATA_ADDR)
//APILED_DEBUG_FLAG
#define APILED_DEBUG_FLAG REG32(APILED_BASE_ADDR+APILED_DEBUG_FLAG_ADDR)
//APILED_STATUS_REG
#define APILED_STATUS_REG REG32(APILED_BASE_ADDR+APILED_STATUS_REG_ADDR)
//APILED_DSP_STATUS_REG
#define APILED_DSP_STATUS_REG REG32(APILED_BASE_ADDR+APILED_DSP_STATUS_REG_ADDR)
//APILED_DSP_BOOT_CONFIG
#define APILED_DSP_BOOT_CONFIG REG32(APILED_BASE_ADDR+APILED_DSP_BOOT_CONFIG_ADDR)
//APILED_DSP_API_CONFIG
#define APILED_DSP_API_CONFIG REG16(APILED_BASE_ADDR+APILED_DSP_API_CONFIG_ADDR)
//APILED_DSP_MISC_CFG
#define APILED_DSP_MISC_CFG REG32(APILED_BASE_ADDR+APILED_DSP_MISC_CFG_ADDR)
//APILED_ENHANCED_CNTL_REG
#define APILED_ENHANCED_CNTL_REG REG32(APILED_BASE_ADDR+APILED_ENHANCED_CNTL_REG_ADDR)
// define types
typedef enum {
API_LEDHIGH_FREQ_LOW = 0,
API_LEDHIGH_FREQ_HIGH = 1
} API_LEDHighFreq_t;
typedef enum {
API_LEDTIMEOUT_DIS = 0,
API_LEDTIMEOUT_EN = 1
} API_LEDTimeoutEn_t;
typedef enum {
API_LEDAPI_ERR_DIS = 0,
API_LEDAPI_ERR_EN = 1
} API_LEDApiErrEn_t;
typedef enum {
API_LEDACCESS_FACTOR_0 = 0,
API_LEDACCESS_FACTOR_1,
API_LEDACCESS_FACTOR_2,
API_LEDACCESS_FACTOR_3,
API_LEDACCESS_FACTOR_4,
API_LEDACCESS_FACTOR_5,
API_LEDACCESS_FACTOR_6,
API_LEDACCESS_FACTOR_7,
API_LEDACCESS_FACTOR_8,
API_LEDACCESS_FACTOR_9,
API_LEDACCESS_FACTOR_10,
API_LEDACCESS_FACTOR_11,
API_LEDACCESS_FACTOR_12,
API_LEDACCESS_FACTOR_13,
API_LEDACCESS_FACTOR_14,
API_LEDACCESS_FACTOR_15
} API_LEDAccessFactor_t;
typedef enum {
API_LEDTIMEOUT_MIN = 0,
API_LEDTIMEOUT_MAX = 255
} API_LEDTimeout_t;
typedef enum {
API_LEDENDIANISM_NO_CONVERT = 0,
API_LEDENDIANISM_CONVERT_ALL_ACCESS = 2,
API_LEDENDIANISM_CONVERT_API_MEM_ONLY = 3
} API_LEDEndianism_t;
typedef enum {
API_LEDACCESS_PRIORITY_ARM_DMA_OCPI = 0,
API_LEDACCESS_PRIORITY_ARM_OCPI_DMA = 1,
API_LEDACCESS_PRIORITY_DMA_ARM_OCPI = 2,
API_LEDACCESS_PRIORITY_OCPI_ARM_DMA = 3,
API_LEDACCESS_PRIORITY_DMA_OCPI_ARM = 4,
API_LEDACCESS_PRIORITY_OCPI_DMA_ARM = 5
} API_LEDAccessPriority_t;
typedef enum {
API_LEDDSP_BOOT_INTERNAL = 5,
API_LEDDSP_BOOT_EXTERNAL = 4,
API_LEDDSP_BOOT_EMIF16 = 3,
API_LEDDSP_BOOT_IDLE = 2,
API_LEDDSP_BOOT_PSEUDO_EXT = 1,
API_LEDDSP_BOOT_MPNMC = 0
} API_LEDDSPBootMode_t;
typedef enum {
API_LEDAPI_SIZE_MIN = 0,
API_LEDAPI_SIZE_MAX = 0xFFFF
} API_LEDAPISize_t;
//-------------------------------------------------------------------------------
// NAME : API_LEDCtrlSetup.
// DESCRIPTION : Setup the configuration of the API.
// PARAMETERS :
// high_freq => frequency mode.
// timeout_en => enable or disable the timeout feature.
// api_lederr_en => enable the s_nabort signal.
// access_factor => division factor for the access frequency.
// timeout => timeout value.
// endianism => endianism conversion.
// access_priority => APILED access priority.
// RETURN VALUE: None.
// LIMITATIONS : None.
//-------------------------------------------------------------------------------
void API_LEDCtrlSetup (API_LEDHighFreq_t high_freq,
API_LEDTimeoutEn_t timeout_en,
API_LEDApiErrEn_t api_lederr_en,
API_LEDAccessFactor_t access_factor,
API_LEDTimeout_t timeout,
API_LEDEndianism_t endianism,
API_LEDAccessPriority_t access_priority);
//-------------------------------------------------------------------------------
// NAME : API_LEDDSPBootConfig.
// DESCRIPTION : Setup the boot configuration of the DSP.
// PARAMETERS :
// dsp_boot_mode => DSP boot mode.
// boot_rhea_ptr1 => pointer to rhea.
// boot_rhea_ptr2 => pointer to rhea.
// RETURN VALUE: None.
// LIMITATIONS : None.
//-------------------------------------------------------------------------------
void API_LEDDSPBootConfig (API_LEDDSPBootMode_t dsp_boot_mode);
//-------------------------------------------------------------------------------
// NAME : API_LEDAPISize.
// DESCRIPTION : Specified which blocks of SARAM are accessible in HOM mode.
// PARAMETERS :
// api_ledsize => size.
// RETURN VALUE: None.
// LIMITATIONS : None.
//-------------------------------------------------------------------------------
void API_LEDAPISize (API_LEDAPISize_t api_ledsize);
// define position bit fields
#define API_LEDHIGH_FREQ_POSBIT 0
#define API_LEDTIMEOUT_EN_POSBIT 1
#define API_LEDAPI_ERR_EN_POSBIT 3
#define API_LEDACCESS_FACTOR_POSBIT 4
#define API_LEDTIMEOUT_POSBIT 8
#define API_LEDENDIANISM_POSBIT 16
#define API_LEDACCESS_PRIORITY_POSBIT 18
#define API_LEDABORT_FLAG_POSBIT 0
#define API_LEDAPI_ERR_POSBIT 1
#define API_LEDTIMEOUT_ERR_POSBIT 2
#define API_LEDBURST_SIZE_ERR_POSBIT 3
#define API_LEDBYTE_SAV_POSBIT 4
#define API_LEDRNW_SAV_POSBIT 5
#define API_LEDBURST_SIZE_SAV_POSBIT 6
#define API_LEDCS_SAV_POSBIT 9
#define API_LEDSMOD_SAV_POSBIT 11
#define API_LEDHOMNSAM_FLAG_POSBIT 0
#define API_LEDACCESS_DONE_POSBIT 1
#define API_LEDCS_EN_POSBIT 2
#define API_LEDTIMEOUT_VAL_POSBIT 3
#define API_LEDACCESS_STATUS_POSBIT 11
#define API_LEDRESET_POSBIT 0
#define API_LEDRESET_MCU_POSBIT 1
#define API_LEDCPUXF_POSBIT 2
#define API_LEDCPUAVIS_POSBIT 3
#define API_LEDCPUIACK_POSBIT 4
#define API_LEDPEIDLEPERIPH_POSBIT 5
#define API_LEDPEIDLEDPLL_POSBIT 6
#define API_LEDPEIDLE6_POSBIT 7
#define API_LEDPEIDLE7_POSBIT 8
#define API_LEDPENRESETDPLL_POSBIT 9
#define API_LEDHAHOMNSAM_POSBIT 10
#define API_LEDHRHOMNSAM_POSBIT 11
#define API_LEDDSP_BOOT_MODE_POSBIT 0
#define API_LEDBOOT_RHEA_PTR1_POSBIT 4
#define API_LEDBOOT_RHEA_PTR2_POSBIT 10
#define API_LEDCPUBIOB_POSBIT 8
#endif // _LED_APILED__H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -