Home | History | Annotate | Download | only in CpuDxe

Lines Matching defs:CpuData

46   @param   CpuData    the pointer to CPU_DATA_BLOCK of specified processor

51 IN CPU_DATA_BLOCK *CpuData
54 while (!AcquireSpinLockOrFail (&CpuData->CpuDataLock)) {
57 CpuData->LockSelf = GetApicId ();
63 @param CpuData the pointer to CPU_DATA_BLOCK of specified processor
68 IN CPU_DATA_BLOCK *CpuData
71 ReleaseSpinLock (&CpuData->CpuDataLock);
87 CPU_DATA_BLOCK *CpuData;
89 CpuData = NULL;
92 CpuData = &mMpSystemData.CpuDatas[CpuIndex];
94 return CpuData->Info.StatusFlag & PROCESSOR_AS_BSP_BIT ? TRUE : FALSE;
100 @param CpuData the pointer to CPU_DATA_BLOCK of specified AP
107 IN CPU_DATA_BLOCK *CpuData
112 GetMpSpinLock (CpuData);
113 State = CpuData->State;
114 ReleaseMpSpinLock (CpuData);
122 @param CpuData The pointer to CPU_DATA_BLOCK of specified AP
128 IN CPU_DATA_BLOCK *CpuData,
132 GetMpSpinLock (CpuData);
133 CpuData->State = State;
134 ReleaseMpSpinLock (CpuData);
141 @param CpuData the pointer to CPU_DATA_BLOCK of specified AP
148 IN CPU_DATA_BLOCK *CpuData,
153 GetMpSpinLock (CpuData);
154 CpuData->Parameter = ProcedureArgument;
155 CpuData->Procedure = Procedure;
156 ReleaseMpSpinLock (CpuData);
162 @param CpuData the pointer to CPU_DATA_BLOCK of specified AP
171 IN CPU_DATA_BLOCK *CpuData,
177 GetMpSpinLock (CpuData);
178 Ret = CpuData->Info.StatusFlag & Flags;
179 ReleaseMpSpinLock (CpuData);
187 @param CpuData the pointer to CPU_DATA_BLOCK of specified AP
193 IN CPU_DATA_BLOCK *CpuData,
197 GetMpSpinLock (CpuData);
198 CpuData->Info.StatusFlag |= Flags;
199 ReleaseMpSpinLock (CpuData);
205 @param CpuData the pointer to CPU_DATA_BLOCK of specified AP
211 IN CPU_DATA_BLOCK *CpuData,
215 GetMpSpinLock (CpuData);
216 CpuData->Info.StatusFlag &= ~Flags;
217 ReleaseMpSpinLock (CpuData);
238 CPU_DATA_BLOCK *CpuData;
241 CpuData = &mMpSystemData.CpuDatas[Number];
242 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT)) {
249 CpuState = GetApState (CpuData);
271 CPU_DATA_BLOCK *CpuData;
276 CpuData = &mMpSystemData.CpuDatas[ProcessorNumber];
277 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT)) {
284 if (!TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT)) {
291 CpuState = GetApState (CpuData);
310 SetApState (CpuData, CpuStateIdle);
331 CPU_DATA_BLOCK *CpuData;
334 CpuData = &mMpSystemData.CpuDatas[ProcessorNumber];
335 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT)) {
342 if (!TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT)) {
349 if (GetApState (CpuData) != CpuStateSleeping) {
367 CPU_DATA_BLOCK *CpuData;
377 CpuData = &mMpSystemData.CpuDatas[Number];
378 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT)) {
385 if (!TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT)) {
392 CpuState = GetApState (CpuData);
398 ResetProcessorToIdleState (CpuData);
663 CPU_DATA_BLOCK *CpuData;
668 CpuData = NULL;
692 CpuData = &mMpSystemData.CpuDatas[Number];
693 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT)) {
700 if (!TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT)) {
707 CpuState = GetApState (CpuData);
727 CpuData = &mMpSystemData.CpuDatas[Number];
728 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT)) {
735 if (!TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT)) {
748 CpuState = GetApState (CpuData);
753 SetApState (CpuData, APInitialState);
756 SetApProcedure (CpuData, Procedure, ProcedureArgument);
764 ResetProcessorToIdleState (CpuData);
911 CPU_DATA_BLOCK *CpuData;
914 CpuData = NULL;
937 CpuData = &mMpSystemData.CpuDatas[ProcessorNumber];
938 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT) ||
939 !TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT)) {
943 CpuState = GetApState (CpuData);
949 SetApState (CpuData, CpuStateReady);
951 SetApProcedure (CpuData, Procedure, ProcedureArgument);
959 ResetProcessorToIdleState (CpuData);
962 CpuData->Timeout = TimeoutInMicroseconds;
963 CpuData->WaitEvent = WaitEvent;
964 CpuData->TimeoutActive = (BOOLEAN) (TimeoutInMicroseconds != 0);
965 CpuData->Finished = Finished;
980 if (GetApState (CpuData) == CpuStateFinished) {
981 SetApState (CpuData, CpuStateIdle);
985 if (CpuData->TimeoutActive && CpuData->Timeout < 0) {
986 ResetProcessorToIdleState (CpuData);
991 CpuData->Timeout -= gPollInterval;
1096 CPU_DATA_BLOCK *CpuData;
1100 CpuData = NULL;
1119 CpuData = &mMpSystemData.CpuDatas[ProcessorNumber];
1120 if (TestCpuStatusFlag (CpuData, PROCESSOR_AS_BSP_BIT)) {
1124 CpuState = GetApState (CpuData);
1131 if (!(TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT))) {
1134 CpuStatusFlagOr (CpuData, PROCESSOR_ENABLED_BIT);
1136 if (TestCpuStatusFlag (CpuData, PROCESSOR_ENABLED_BIT)) {
1139 CpuStatusFlagAndNot (CpuData, PROCESSOR_ENABLED_BIT);
1143 CpuStatusFlagAndNot (CpuData, (UINT32)~PROCESSOR_HEALTH_STATUS_BIT);
1144 CpuStatusFlagOr (CpuData, (*HealthFlag & PROCESSOR_HEALTH_STATUS_BIT));
1209 @param CpuData the pointer to CPU_DATA_BLOCK of specified AP
1214 IN CPU_DATA_BLOCK *CpuData
1217 ResetApStackless ((UINT32)CpuData->Info.ProcessorId);
1235 CPU_DATA_BLOCK *CpuData;
1246 CpuData = &mMpSystemData.CpuDatas[ProcessorNumber];
1251 if (CpuData->LockSelf == (INTN) GetApicId ()) {
1252 ReleaseSpinLock (&CpuData->CpuDataLock);
1259 GetMpSpinLock (CpuData);
1260 if (CpuData->State == CpuStateBusy) {
1261 CpuData->Procedure = NULL;
1263 CpuData->State = CpuStateIdle;
1264 ReleaseMpSpinLock (CpuData);
1267 GetMpSpinLock (CpuData);
1268 ProcedureArgument = CpuData->Parameter;
1269 Procedure = CpuData->Procedure;
1270 ReleaseMpSpinLock (CpuData);
1273 SetApState (CpuData, CpuStateBusy);
1277 GetMpSpinLock (CpuData);
1278 CpuData->Procedure = NULL;
1279 CpuData->State = CpuStateFinished;
1280 ReleaseMpSpinLock (CpuData);
1286 GetMpSpinLock (CpuData);
1287 if (CpuData->State == CpuStateIdle) {
1288 CpuData->State = CpuStateSleeping;
1290 ReleaseMpSpinLock (CpuData);
1293 if (GetApState (CpuData) == CpuStateSleeping) {
1321 CPU_DATA_BLOCK *CpuData;
1324 CpuData = (CPU_DATA_BLOCK *) Context;
1325 if (CpuData->TimeoutActive) {
1326 CpuData->Timeout -= gPollInterval;
1329 CpuState = GetApState (CpuData);
1332 if (CpuData->Finished) {
1333 *CpuData->Finished = TRUE;
1335 SetApState (CpuData, CpuStateIdle);
1339 if (CpuData->TimeoutActive && CpuData->Timeout < 0) {
1341 CpuData->Finished) {
1342 *CpuData->Finished = FALSE;
1344 ResetProcessorToIdleState (CpuData);
1351 CpuData->TimeoutActive = FALSE;
1352 gBS->SignalEvent (CpuData->WaitEvent);
1353 CpuData->WaitEvent = NULL;
1373 CPU_DATA_BLOCK *CpuData;
1424 CpuData = &mMpSystemData.CpuDatas[Number];
1425 if (CpuData->WaitEvent) {
1426 CheckThisAPStatus (NULL, (VOID *)CpuData);
1493 CPU_DATA_BLOCK *CpuData;
1496 CpuData = &mMpSystemData.CpuDatas[ProcessorNumber];
1498 CpuData->Info.ProcessorId = ProcessorId;
1499 CpuData->Info.StatusFlag = PROCESSOR_ENABLED_BIT | PROCESSOR_HEALTH_STATUS_BIT;
1501 CpuData->Info.StatusFlag |= PROCESSOR_AS_BSP_BIT;
1503 CpuData->Info.Location.Package = ProcessorId;
1504 CpuData->Info.Location.Core = 0;
1505 CpuData->Info.Location.Thread = 0;
1506 CpuData->State = Bsp ? CpuStateBusy : CpuStateIdle;
1508 CpuData->Procedure = NULL;
1509 CpuData->Parameter = NULL;
1510 InitializeSpinLock (&CpuData->CpuDataLock);
1511 CpuData->LockSelf = -1;
1584 CPU_DATA_BLOCK *CpuData;
1626 CpuData = &mMpSystemData.CpuDatas[ProcessorNumber];
1627 InitialLocalApicId = (UINT32) CpuData->Info.ProcessorId;
1633 CpuData->Info.StatusFlag &= ~PROCESSOR_HEALTH_STATUS_BIT;