967efdcdc3a3a22550563acb9ec77f565b3dbee0 |
|
28-Feb-2015 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
ArmPkg: allow HYP timer interrupt to be omitted The DT binding for the ARM generic timer describes the secure, non-secure, virtual and hypervisor timer interrupts, respectively. However, under virtualization, only the virtual timer is usable, and the device tree may omit the hypervisor timer interrupt. (Other timer interrupts cannot be omitted simply due to the fact that the virtual timer is listed third) Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: Olivier Martin <olivier.martin@arm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16953 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
b1a633434ddc5fc28de817debd963f7845fb78c7 |
|
18-Sep-2014 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
ArmPkg/TimerDxe: add workaround for KVM timer interrupt handling KVM on ARM currently masks the timer interrupt on the timer side when delivering an interrupt to the guest. This itself is a workaround for an issue where the interrupt is reraised and trapped by the host as soon as the guest is entered, resulting in the guest being starved. Work around this by calling ArmGenericTimerEnable () after servicing each interrupt. The virtual version of ArmGenericTimerCounterLib will then make sure to unmask the interrupt again. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-By: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16144 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
7a1e861e2925b9c006bcf8f95bd0d720a8c48328 |
|
10-Sep-2014 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
ArmPkg/TimerDxe: Read timer frequency from CPU The PCD gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz is used in the SEC phase (if applicable) to write the platform's counter frequency to the CNTFRQ system register, as this needs to be done by the highest exception level implemented. Under virtualization, we should be able to rely on the host to have initialized this register to a sane value, as we run at EL1 and only use the virtual timer, so the PcdArmArchTimerFreqInHz PCD has little meaning here. So in either case, by the time we enter the DXE phase, we can use the CNTFRQ system register to read the frequency instead of looking at the PCD. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16090 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
4f6d34b434c0f063c68bdd4445da9097358b9afc |
|
09-Sep-2014 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
ArmPkg: Move TimerDxe and ArmArchTimerLib to new ArmGenericTimerCounterLib Move TimerDxe and ArmArchTimerLib to ArmGenericTimerCounterLib, and update all platforms to select the physical counter instance they have been using implicitly all along. Contributed-under: TianoCore Contribution Agreement 1.0 Acked-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-By: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16078 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
2785509b57d9ff92321c1083aab4a5ffc9519961 |
|
09-Sep-2014 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
ArmPkg/TimerDxe: Register the virt and hyp timer interrupts at init time. Change-Id: I1162dc60140278c0b3da837bf325e3789ababf54 Contributed-under: TianoCore Contribution Agreement 1.0 Acked-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-By: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16077 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
d4bb43cee15895da3d53009396f1a53aae15c056 |
|
09-Sep-2014 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
ArmPkg: Renamed ArmArchTimerLib.h to ArmArchTimer.h The ArmArchTimerLib.h include file is not directly related to the TimerLib instance ArmArchTimerLib, so the name is confusing. Rename to ArmArchTimer.h instead. Contributed-under: TianoCore Contribution Agreement 1.0 Acked-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-By: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16073 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
c6c4df80de577bdf301363d83bc74dc0453f1ca9 |
|
27-Aug-2014 |
Olivier Martin <olivier.martin@arm.com> |
ArmPkg/TimerDxe: Fixed real time period Prior to this change, the TimerPeriod was re-initialize at the end of the interrupt handling with the value of the period. It means the real timer period was: Timer Interrupt Processing time + Timer Period Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15923 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
09c1b24c2f6c95f8c0b952dfd3caa25fd8aa578b |
|
27-Aug-2014 |
Olivier Martin <olivier.martin@arm.com> |
ArmPkg/TimerDxe: Fixed the reloading of the period Prior to this change the period was restored to the default period. This change restores the latest 'set period'. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15922 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
33292af5f13b18ef5124f32a7bbf0b05b2d519c5 |
|
27-Aug-2014 |
Olivier Martin <olivier.martin@arm.com> |
ArmPkg/TimerDxe: Changed calculation to allow 1KHz granularity frequency Prior to this change the frequency was rounded to 1Mhz. This change rounds the timer frequency to 1KHz. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15921 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
3402aac7d985bf8a9f9d3c639f3fe93609380513 |
|
19-Aug-2014 |
Ronald Cron <ronald.cron@arm.com> |
ARM Packages: Removed trailing spaces Trailing spaces create issue/warning when generating/applying patches. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ronald Cron <ronald.cron@arm.com> Reviewed-By: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15833 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
25402f5d0660acde3ee382a36b065945251990dc |
|
18-Jul-2013 |
Harry Liebel <Harry.Liebel@arm.com> |
ArmPkg: Added Aarch64 support Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Harry Liebel <Harry.Liebel@arm.com> Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14486 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
e703b085f6a3a2e7a61be97d9154437520b3ae75 |
|
19-Jun-2013 |
Olivier Martin <olivier.martin@arm.com> |
ArmPkg/Drivers/TimerDxe: Improve Timer initialisation. - Registering a interrupt handler implicitly enables said interrupt. This is in the UEFI Spec. No need to enable the interrupts a second time. - Make sure the Timer is completely disabled before configuring it. Only enable after configuration is complete. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14433 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
1e57a46299244793beb27e74be171d1540606999 |
|
25-Jan-2013 |
oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> |
ARM Packages: Fixed line endings This large code change only modifies the line endings to be CRLF to be compliant with the EDK2 coding convention document. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14088 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
b34e4db38206407f13442b5f61cead6ce0d3c99c |
|
27-Sep-2012 |
oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> |
ARM Packages: Minor typo, mispellings and coding style changes Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13752 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
ae42bc88eecf25c449e3af7188e5fc7dc78f2b8f |
|
04-Jul-2012 |
oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> |
ArmPkg/TimerDxe: Fixed incorrect TimerTicks calculation Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13498 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
81be6e070f4d9b3cb3bb756302c3090d406744ba |
|
02-Nov-2011 |
oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> |
ArmPkg/ArmCpuLib: Fix GCC/XCode builds git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12626 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|
da9675a241ab9856377b9bd63504b2d5333b3c7a |
|
27-Sep-2011 |
oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> |
ArmPkg: Add ARM Architectural Timer support ARM Architectural Timer support is defined by the ARM Generic Timer Specification. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12455 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/ArmPkg/Drivers/TimerDxe/TimerDxe.c
|