⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xllp_pm_sleepcontext.inc

📁 PXA270硬件测试源代码
💻 INC
字号:
@******************************************************************************
@;
@;  COPYRIGHT (C) 2002 Intel Corporation.
@;
@;  This software as well as the software described in it is furnished under 
@;  license and may only be used or copied in accordance with the terms of the 
@;  license. The information in this file is furnished for informational use 
@;  only, is subject to change without notice, and should not be construed as 
@;  a commitment by Intel Corporation. Intel Corporation assumes no 
@;  responsibility or liability for any errors or inaccuracies that may appear 
@;  in this document or any software that may be provided in association with 
@;  this document. 
@;  Except as permitted by such license, no part of this document may be 
@;  reproduced, stored in a retrieval system, or transmitted in any form or by 
@;  any means without the express written consent of Intel Corporation. 
@;
@;  FILENAME:       xllp_Pm_SleepContext.inc
@;
@; LAST MODIFIED:   5/28/02
@;
@******************************************************************************
@
@
@ Include file for Bulverde Processor based platforms
@  NOTE: This file must be kept in sync with xllp_Pm_SleepContext.h
@
    .ifndef xllp_Pm_SleepContext_inc
    .equ xllp_Pm_SleepContext_inc, 1


@ For sanity check in checksum
    .equ XLLI_MAX_SLEEP_DATA_COUNT, 0x200

    .equ XLLP_STORE_WMX_REGS_BYTES, 156

    .equ WORD_SIZE, (4)


@ Template that defines the ASM-addressable part of the 
@ XLLP_PM_ENTER_SLEEP_PARAMS_S structure used for the sleep parameter.
@ Note that the ASM-addressable section begins at the start of the structure.

@ /////////////////////////////////////////////////////////////////////////
@ //
@ // Definition of parameter structure needed by XllpPmEnterSleep()
@ //
@ 
@ typedef struct  XLLP_PM_ENTER_SLEEP_PARAMS_S
    .equ SleepParams_Data_Start, 0
    .equ SleepParams_SleepType, (SleepParams_Data_Start )
    .equ SleepParams_r10, (SleepParams_SleepType        + WORD_SIZE)
    .equ SleepParams_PEDR, (SleepParams_r10              + WORD_SIZE)
    .equ SleepParams_PKSR, (SleepParams_PEDR             + WORD_SIZE)
    .equ SleepParams_SleepDataAreaPA, (SleepParams_PKSR             + WORD_SIZE)
    .equ SleepParams_SleepDataAreaVA, (SleepParams_SleepDataAreaPA  + WORD_SIZE)
    .equ SleepParams_SleepParamsVA, (SleepParams_SleepDataAreaVA  + WORD_SIZE)
    .equ SleepParams_SleepOptions, (SleepParams_SleepParamsVA    + WORD_SIZE)
    .equ SleepParams_DeepSleepOptionsAndEnable, (SleepParams_SleepOptions     + WORD_SIZE)
    .equ SleepParams_EndOfInterestingArea, (SleepParams_DeepSleepOptionsAndEnable+WORD_SIZE)

@ End of template for ASM use.  C-level usage extends beyond this.
@ Don't base any other symbols or addressing on "SleepParams_" symbols

@=================================================================
@=================================================================


@ Template that defines the ASM-addressable part of the 
@ XLLP_PM_SLEEP_SAVE_DATA_S structure used for the sleep saved data area.
@ Note that the ASM-addressable section begins at the start of the structure.

@typedef struct  XLLP_PM_SLEEP_SAVE_DATA_S
    .equ SleepState_Data_Start, 0
    .equ SleepState_CHKSUM, ( SleepState_Data_Start )
    .equ SleepState_WordCount, ( SleepState_CHKSUM          + WORD_SIZE )
    .equ SleepState_AwakeAddr, ( SleepState_WordCount       + WORD_SIZE )
    .equ SleepState_SleepDataAreaVA, ( SleepState_AwakeAddr       + WORD_SIZE )
    .equ SleepState_SleepParamVA, ( SleepState_SleepDataAreaVA + WORD_SIZE )
@ // ARM* registers and most coprocessors must be processed locally
@ //  using assembly language.
@ 
@ // ARM* unique registers
@ 
    .equ SleepState_ENTRY_CPSR, ( SleepState_SleepParamVA + WORD_SIZE )
    .equ SleepState_ENTRY_SP, ( SleepState_ENTRY_CPSR  + WORD_SIZE )
    .equ SleepState_ENTRY_SPSR, ( SleepState_ENTRY_SP    + WORD_SIZE )
    .equ SleepState_SYS_SP, ( SleepState_ENTRY_SPSR  + WORD_SIZE )
    .equ SleepState_FIQ_SP, ( SleepState_SYS_SP      + WORD_SIZE )
    .equ SleepState_ABT_SP, ( SleepState_FIQ_SP      + WORD_SIZE )
    .equ SleepState_IRQ_SP, ( SleepState_ABT_SP      + WORD_SIZE )
    .equ SleepState_UND_SP, ( SleepState_IRQ_SP      + WORD_SIZE )
    .equ SleepState_SVC_SP, ( SleepState_UND_SP      + WORD_SIZE )
@     // Saved Coprocessor regs other than CP0+1 (includes MMU values)
@         // MMU
    .equ SleepState_Cp15_ACR_MMU, ( SleepState_SVC_SP         + WORD_SIZE )
    .equ SleepState_Cp15_AUXCR_MMU, ( SleepState_Cp15_ACR_MMU   + WORD_SIZE )
    .equ SleepState_Cp15_TTBR_MMU, ( SleepState_Cp15_AUXCR_MMU + WORD_SIZE )
    .equ SleepState_Cp15_DACR_MMU, ( SleepState_Cp15_TTBR_MMU  + WORD_SIZE )
    .equ SleepState_Cp15_PID_MMU, ( SleepState_Cp15_DACR_MMU  + WORD_SIZE )
    .equ SleepState_Cp15_CPAR, (SleepState_Cp15_PID_MMU    + WORD_SIZE )
    .equ SleepState_EndOfInterestingArea, ( SleepState_Cp15_CPAR   + WORD_SIZE )

@ End of template for ASM use.  C-level usage extends beyond this.
@ Don't base any other symbols or addressing on "SleepState_" symbols



@;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@;
@;  Some important constants that aren't defined elsewhere
@;
@;
@; Intel

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -