summaryrefslogtreecommitdiffstats
path: root/pk/std/std_irq.h
diff options
context:
space:
mode:
Diffstat (limited to 'pk/std/std_irq.h')
-rw-r--r--pk/std/std_irq.h86
1 files changed, 0 insertions, 86 deletions
diff --git a/pk/std/std_irq.h b/pk/std/std_irq.h
deleted file mode 100644
index 3920997e..00000000
--- a/pk/std/std_irq.h
+++ /dev/null
@@ -1,86 +0,0 @@
-#ifndef __STD_IRQ_H__
-#define __STD_IRQ_H__
-
-//-----------------------------------------------------------------------------
-// *! (C) Copyright International Business Machines Corp. 2014
-// *! All Rights Reserved -- Property of IBM
-// *! *** IBM Confidential ***
-//-----------------------------------------------------------------------------
-
-/// \file occhw_irq.h
-/// \brief Standard PPE Externnal Interrupt handling for PK
-///
-/// The standard PPE interrupt controller supports a maximum of 64 interrupts with
-/// simple OR combining of the interrupt signals.
-///
-/// The standard PPE interrupt controller allows interrupt status to be set directly by
-/// software. It contains a 'mask' register, unlike most 405 interrupt
-/// controllers that have an 'enable' register. The standard PPE mask and status
-/// registers also have atomic CLR/OR function so that it is never necessary
-/// to enter a critical section to enable/disable/clear interrupts and
-/// interrupt status.
-
-#include "std_common.h"
-#include "std_register_addresses.h"
-#include "ppe42.h"
-
-#ifndef __ASSEMBLER__
-
-/// Enable an interrupt by clearing the mask bit.
-
-UNLESS__PPE42_IRQ_CORE_C__(extern)
-inline void
-pk_irq_enable(PkIrqId irq)
-{
- out64(STD_LCL_EIMR_CLR, STD_IRQ_MASK64(irq));
-}
-
-
-/// Disable an interrupt by setting the mask bit.
-
-UNLESS__PPE42_IRQ_CORE_C__(extern)
-inline void
-pk_irq_disable(PkIrqId irq)
-{
- out64(STD_LCL_EIMR_OR, STD_IRQ_MASK64(irq));
-}
-
-
-/// Clear interrupt status with an CLR mask. Only meaningful for
-/// edge-triggered interrupts.
-
-UNLESS__PPE42_IRQ_CORE_C__(extern)
-inline void
-pk_irq_status_clear(PkIrqId irq)
-{
- out64(STD_LCL_EISR_CLR, STD_IRQ_MASK64(irq));
-}
-
-
-/// Get IRQ status as a 0 or non-0 integer
-
-UNLESS__PPE42_IRQ_CORE_C__(extern)
-inline int
-pk_irq_status_get(PkIrqId irq)
-{
- return (in64(STD_LCL_EISR) & STD_IRQ_MASK64(irq)) != 0;
-}
-
-
-/// Set or clear interrupt status explicitly.
-
-UNLESS__PPE42_IRQ_CORE_C__(extern)
-inline void
-pk_irq_status_set(PkIrqId irq, int value)
-{
- if (value) {
- out64(STD_LCL_EISR_OR, STD_IRQ_MASK64(irq));
- } else {
- out64(STD_LCL_EISR_CLR, STD_IRQ_MASK64(irq));
- }
-}
-
-
-#endif /* __ASSEMBLER__ */
-
-#endif /* __STD_IRQ_H__ */
OpenPOWER on IntegriCloud