diff -r a179b74831c9 -r c1f20ce4abcf kernel/eka/include/u32hal.h --- a/kernel/eka/include/u32hal.h Thu Aug 19 11:14:22 2010 +0300 +++ b/kernel/eka/include/u32hal.h Tue Aug 31 16:34:26 2010 +0300 @@ -368,6 +368,30 @@ }; +/** +@internalComponent +*/ +struct SCpuStates + { + TUint32 iTA; + TUint32 iIA; + TUint32 iCU; + TUint32 iGD; + TInt iDC; + TUint32 iSC; + TUint32 iRC; + TUint32 iCCS; + TUint8 iPO; + TUint8 iSpare1; + TUint8 iSpare2; + TUint8 iSpare3; + TUint32 iPODC; + TInt iDS[8]; + TUint32 iUDC[8]; + TUint32 iUAC[8]; + TUint32 iOP[8]; + TUint32 iF[8]; + }; /** @@ -396,6 +420,8 @@ EKernelHalFloatingPointSystemId, EKernelHalLockThreadToCpu, EKernelHalConfigFlags, + EKernelHalCpuStates, + EKernelHalSetNumberOfCpus, }; @@ -2817,6 +2843,22 @@ enabled. */ EVMHalSetDataWriteSize, + + /** + @internalTechnology + @test + + Simulates a paging error in a specified context. + + For testing purposes, this causes the paging system to report an error the next time an + operation occurs that could generate an error with the specified context. + + The first argument (a1) contains one of the contexts described by TPagingErrorContext. + + @return KErrArgument if the value is out of range, or KErrNotSupported on memory models that do + not support this. + */ + EVMHalDebugSetFail, }; @@ -3247,6 +3289,25 @@ }; +/** +@internalComponent +@test + +Error context information for use by #DPager::EmbedErrorContext and #DPager::ExtractErrorContext. +*/ +enum TPagingErrorContext + { + EPagingErrorContextNone = 0, + EPagingErrorContextRomRead, + EPagingErrorContextRomDecompress, + EPagingErrorContextCodeRead, + EPagingErrorContextCodeDecompress, + EPagingErrorContextDataRead, + EPagingErrorContextDataWrite, + + EMaxPagingErrorContext + }; + /** @internalComponent