csl_mmuaux.h
来自「dsp在音频处理中的运用」· C头文件 代码 · 共 702 行 · 第 1/2 页
H
702 行
/** ============================================================================
* @file csl_mmuAux.h
*
* @path $(CSLPATH)\arm\mmu\src
*
* @desc Auxillary API header file for MMU
*
*/
/* ============================================================================
* Copyright (c) Texas Instruments Inc 2002, 2003, 2004
*
* Use of this software is controlled by the terms and conditions found in the
* license agreement under which this software has been supplied.
* ===========================================================================
*/
/* @(#) PSP/CSL 3.00.01.00[5912] (2004-04-18) */
/* =============================================================================
* Revision History
* ===============
* 21-Jun-2004 ar Created for supporting modifications to CSL architecture
*
* =============================================================================
*/
#ifndef _CSL_MMUAUX_H_
#define _CSL_MMUAUX_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <csl_mmu.h>
/** ============================================================================
* @n@b CSL_mmuSetTTB
*
* @b Description
* @n This function sets the Translation table register with the value passed
* as argument.
*
* @b Arguments
* @verbatim
ttbAddress Translation table base address
@endverbatim
*
* <b> Return Value </b> None
*
* <b> Pre Condition </b>
* @n Should be in privileged mode
*
* <b> Post Condition </b>
* @n TTB register will have the value specified by ttbAddress
*
* @b Modifies
* @n Translation table base(TTB) register
*
* @b Example
* @verbatim
CSL_mmuSetTTB (0x11000000);
@endverbatim
* ===========================================================================
*/
extern void CSL_mmuSetTTB (
Uint32 ttbAddress
);
/** ============================================================================
* @n@b CSL_mmuGetTTB
*
* @b Description
* @n This function returns the value of Translation table base register
*
* @b Arguments
* @verbatim
None
@endverbatim
*
* <b> Return Value </b> Uint32
* @li The value of TTB register
*
* <b> Pre Condition </b>
* @n should be in privileged mode
*
* <b> Post Condition </b>
* @n None
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
Uint32 ttbAddress;
ttbAddress = CSL_mmuGetTTB ();
@endverbatim
* ===========================================================================
*/
extern Uint32 CSL_mmuGetTTB (
void
);
/** ============================================================================
* @n@b CSL_mmuEnableMMU
*
* @b Description
* @n This function enables the MMU.If the code is getting remapped as a
* result of enabling the MMU,the application should take neccessary steps
* to handle this change before invoking this function.
*
* @b Arguments
* @verbatim
None
@endverbatim
*
* <b> Return Value </b> None
*
* <b> Pre Condition </b>
* @n should be in privileged mode
*
* <b> Post Condition </b>
* @n MMU will be enabled
*
* @b Modifies
* @n System control coprocessor control register(C1)
*
* @b Example
* @verbatim
CSL_mmuEnableMMU ();
@endverbatim
* ===========================================================================
*/
extern void CSL_mmuEnableMMU (
void
);
/** ============================================================================
* @n@b CSL_mmuDisableMMU
*
* @b Description
* @n This function disables the MMU.If the code is getting remapped as a
* result of disabling the MMU,the application should take neccessary steps
* to handle this change before invoking this function.
*
* @b Arguments
* @verbatim
None
@endverbatim
*
* <b> Return Value </b> None
*
* <b> Pre Condition </b>
* @n should be in privileged mode
*
* <b> Post Condition </b>
* @n MMU will be disabled
*
* @b Modifies
* @n System control coprocessor control register(C1)
*
* @b Example
* @verbatim
CSL_mmuDisableMMU ();
@endverbatim
* ===========================================================================
*/
extern void CSL_mmuDisableMMU (
void
);
/** ============================================================================
* @n@b CSL_mmuGetMMUStatus
*
* @b Description
* @n This function gets the status of MMU
*
* @b Arguments
* @verbatim
None
@endverbatim
*
* <b> Return Value </b> Bool
* @li TRUE - MMU is enabled
* @li FALSE - MMU is disabled
*
* <b> Pre Condition </b>
* @n should be in privileged mode
*
* <b> Post Condition </b>
* @n None
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
Bool status;
status = CSL_mmuGetMMUStatus ();
@endverbatim
* ===========================================================================
*/
extern Bool CSL_mmuGetMMUStatus (
void
);
/** ============================================================================
* @n@b CSL_mmuEnableAlignCheck
*
* @b Description
* @n This function enables the address alignment check.
*
* @b Arguments
* @verbatim
None
@endverbatim
*
* <b> Return Value </b> None
*
* <b> Pre Condition </b>
* @n should be in privileged mode
*
* <b> Post Condition </b>
* @n Address alignment check will be enabled
*
* @b Modifies
* @n System control coprocessor control register(C1)
*
* @b Example
* @verbatim
CSL_mmuEnableAlignCheck ();
@endverbatim
* ===========================================================================
*/
extern void CSL_mmuEnableAlignCheck (
void
);
/** ============================================================================
* @n@b CSL_mmuDisableAlignCheck
*
* @b Description
* @n This function disables the address alignment check.
*
* @b Arguments
* @verbatim
None
@endverbatim
*
* <b> Return Value </b> None
*
* <b> Pre Condition </b>
* @n should be in privileged mode
*
* <b> Post Condition </b>
* @n Address alignment check will be disabled
*
* @b Modifies
* @n System control coprocessor control register(C1)
*
* @b Example
* @verbatim
CSL_mmuDisableAlignCheck ();
@endverbatim
* ===========================================================================
*/
extern void CSL_mmuDisableAlignCheck (
void
);
/** ============================================================================
* @n@b CSL_mmuGetAlignCheckStatus
*
* @b Description
* @n Gets the status of address alignment checking functionality
*
* @b Arguments
* @verbatim
None
@endverbatim
*
* <b> Return Value </b> Bool
* @li TRUE - Address alignment checking is enabled
* @li FALSE - Address alignemnt checking is disabled
*
* <b> Pre Condition </b>
* @n should be in privileged mode
*
* <b> Post Condition </b>
* @n None
*
* @b Modifies
* @n None
*
* @b Example
* @verbatim
Bool status;
status = CSL_mmuGetAlignCheckStatus ();
@endverbatim
* ===========================================================================
*/
extern Bool CSL_mmuGetAlignCheckStatus (
void
);
/** ============================================================================
* @n@b CSL_mmuSetDomainAccess
*
* @b Description
* @n This function sets the access rights for the specified domain
*
* @b Arguments
* @verbatim
domainNumber The domain whose access rights is to be set (0-15)
access Access right for the domain
@endverbatim
*
* <b> Return Value </b> None
*
* <b> Pre Condition </b>
* @n Should be in privileged mode
*
* <b> Post Condition </b>
* @n The domain's access condition will bet set as specified
*
* @b Modifies
* @n Domain access control register (C3)
*
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?