ArmPlatformPkg/SP804TimerDxe: Move 'gVector' initialization earlier in the code

The global variable 'gVector' is also used by the function TimerDriverSetTimerPeriod().



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13042 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
oliviermartin 2012-02-27 10:25:20 +00:00
parent 31d196c16f
commit 8ddaf4710c

View File

@ -2,6 +2,7 @@
Template for Timer Architecture Protocol driver of the ARM flavor Template for Timer Architecture Protocol driver of the ARM flavor
Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR> Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
Copyright (c) 20i1 - 2012, ARM Ltd. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
@ -356,6 +357,9 @@ TimerInitialize (
EFI_HANDLE Handle = NULL; EFI_HANDLE Handle = NULL;
EFI_STATUS Status; EFI_STATUS Status;
// Set the interrupt timer number
gVector = PcdGet32(PcdSP804TimerPeriodicInterruptNum);
// Find the interrupt controller protocol. ASSERT if not found. // Find the interrupt controller protocol. ASSERT if not found.
Status = gBS->LocateProtocol (&gHardwareInterruptProtocolGuid, NULL, (VOID **)&gInterrupt); Status = gBS->LocateProtocol (&gHardwareInterruptProtocolGuid, NULL, (VOID **)&gInterrupt);
ASSERT_EFI_ERROR (Status); ASSERT_EFI_ERROR (Status);
@ -365,7 +369,6 @@ TimerInitialize (
ASSERT_EFI_ERROR (Status); ASSERT_EFI_ERROR (Status);
// Install interrupt handler // Install interrupt handler
gVector = PcdGet32(PcdSP804TimerPeriodicInterruptNum);
Status = gInterrupt->RegisterInterruptSource (gInterrupt, gVector, TimerInterruptHandler); Status = gInterrupt->RegisterInterruptSource (gInterrupt, gVector, TimerInterruptHandler);
ASSERT_EFI_ERROR (Status); ASSERT_EFI_ERROR (Status);