From 9290f1fe99c91ba6c57dec956ff73d1741d81b45 Mon Sep 17 00:00:00 2001 From: Zheng Da Date: Tue, 17 Nov 2009 10:29:23 +0100 Subject: Add DDEKit headers. --- .../ddekit/.svn/text-base/interrupt.h.svn-base | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 libddekit/include/ddekit/.svn/text-base/interrupt.h.svn-base (limited to 'libddekit/include/ddekit/.svn/text-base/interrupt.h.svn-base') diff --git a/libddekit/include/ddekit/.svn/text-base/interrupt.h.svn-base b/libddekit/include/ddekit/.svn/text-base/interrupt.h.svn-base new file mode 100644 index 00000000..bbabedb2 --- /dev/null +++ b/libddekit/include/ddekit/.svn/text-base/interrupt.h.svn-base @@ -0,0 +1,57 @@ +/* + * \brief Hardware-interrupt subsystem + * \author Thomas Friebel + * \author Christian Helmuth + * \date 2007-01-26 + * + * DDEKit supports registration of one handler function per interrupt. If any + * specific DDE implementation needs to register more than one handler, + * multiplexing has to be implemented there! + */ + +#ifndef _ddekit_interrupt_h +#define _ddekit_interrupt_h + +#include + +#define DDEKIT_IRQ_PRIO 0x11 + +/** + * Attach to hardware interrupt + * + * \param irq IRQ number to attach to + * \param shared set to 1 if interrupt sharing is supported; set to 0 + * otherwise + * \param thread_init called just after DDEKit internal init and before any + * other function + * \param handler IRQ handler for interrupt irq + * \param priv private token (argument for thread_init and handler) + * + * \return pointer to interrupt thread created + */ +ddekit_thread_t *ddekit_interrupt_attach(int irq, int shared, + void(*thread_init)(void *), + void(*handler)(void *), void *priv); + +/** + * Detach from a previously attached interrupt. + * + * \param irq IRQ number + */ +void ddekit_interrupt_detach(int irq); + +/** + * Block interrupt. + * + * \param irq IRQ number to block + */ +void ddekit_interrupt_disable(int irq); + +/** + * Enable interrupt. + * + * \param irq IRQ number to block + */ +void ddekit_interrupt_enable(int irq); + +#endif -- cgit v1.2.3