bsps: Allow override of ARM TM27 IRQs

ZynqMP hardware appears to have an odd hard-wired SGI implementation in
which the SGIs are permanently set as enabled or disabled. Allow the
TM27 IRQs to be overridden as necessary.
This commit is contained in:
Kinsey Moore
2021-03-02 14:11:49 -06:00
committed by Joel Sherrill
parent 6bfbfb5a3d
commit 2ee12f023d
2 changed files with 12 additions and 0 deletions

View File

@@ -41,6 +41,14 @@
#ifndef __tm27_h
#define __tm27_h
/*
* On ZynqMP hardware, SGI0-7 are permanently enabled for IPI usage while
* SGI8-15 are permanently disabled along with PPI16-24. Override tm27's usage
* of SGI12 and SGI13 with SGI6 and SGI7.
*/
#define ARM_GIC_TM27_IRQ_LOW ARM_GIC_IRQ_SGI_6
#define ARM_GIC_TM27_IRQ_HIGH ARM_GIC_IRQ_SGI_7
#include <dev/irq/arm-gic-tm27.h>
#endif /* __tm27_h */

View File

@@ -34,9 +34,13 @@
#define MUST_WAIT_FOR_INTERRUPT 1
#ifndef ARM_GIC_TM27_IRQ_LOW
#define ARM_GIC_TM27_IRQ_LOW ARM_GIC_IRQ_SGI_12
#endif
#ifndef ARM_GIC_TM27_IRQ_HIGH
#define ARM_GIC_TM27_IRQ_HIGH ARM_GIC_IRQ_SGI_13
#endif
#define ARM_GIC_TM27_PRIO_LOW 0x80