module ti.sdo.ipc.family.omap4430.InterruptDucati

OMAP4430/Ducati IPC interrupt manager

XDCspec summary sourced in ti/sdo/ipc/family/omap4430/InterruptDucati.xdc
module InterruptDucati {  ...
    // inherits xdc.runtime.IModule
C synopsis target-domain
#include <ti/sdo/ipc/family/omap4430/InterruptDucati.h>
module-wide constants & types
    typedef struct InterruptDucati_IntInfo//  {
        UInt localIntId;
        UInt remoteIntId;
        UInt intVectorId;
module-wide config parameters
    extern const UInt32 InterruptDucati_ducatiCtrlBaseAddr// ;
    extern const UInt32 InterruptDucati_mailboxBaseAddr// ;
module-wide functions
    UInt InterruptDucati_intClear// Clear interrupt( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo );
    Void InterruptDucati_intRegister// Register an interrupt line to a remote processor( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo, Fxn func, UArg arg );
    Void InterruptDucati_intSend// Send interrupt to the remote processor( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo, UArg arg );
module-wide built-ins
 
XDCscript usage meta-domain
var InterruptDucati = xdc.useModule('ti.sdo.ipc.family.omap4430.InterruptDucati');
module-wide constants & types
    var obj = new InterruptDucati.IntInfo// ;
        obj.localIntId = UInt  ...
        obj.remoteIntId = UInt  ...
        obj.intVectorId = UInt  ...
module-wide config parameters
    InterruptDucati.ducatiCtrlBaseAddr//  = UInt32 0x55081000;
    InterruptDucati.mailboxBaseAddr//  = UInt32 0x4A0F4000;
 
 
XDCspec declarations sourced in ti/sdo/ipc/family/omap4430/InterruptDucati.xdc
 
module InterruptDucati inherits IInterrupt {
module-wide constants & types
    struct IntInfo//  {
        UInt localIntId;
        UInt remoteIntId;
        UInt intVectorId;
    };
module-wide config parameters
    config UInt32 ducatiCtrlBaseAddr//  = 0x55081000;
    config UInt32 mailboxBaseAddr//  = 0x4A0F4000;
 
module-wide functions
    UInt intClear// Clear interrupt( UInt16 remoteProcId, IInterrupt.IntInfo *intInfo );
    Void intDisable// Disables the interrupt corresponding to intId( UInt16 remoteProcId, IInterrupt.IntInfo *intInfo );
    Void intEnable// Enables the interrupt corresponding to intId( UInt16 remoteProcId, IInterrupt.IntInfo *intInfo );
    Void intRegister// Register an interrupt line to a remote processor( UInt16 remoteProcId, IInterrupt.IntInfo *intInfo, Fxn func, UArg arg );
    Void intSend// Send interrupt to the remote processor( UInt16 remoteProcId, IInterrupt.IntInfo *intInfo, UArg arg );
}
 
struct InterruptDucati.IntInfo
XDCscript usage meta-domain
var obj = new InterruptDucati.IntInfo;
 
    obj.localIntId = UInt  ...
    obj.remoteIntId = UInt  ...
    obj.intVectorId = UInt  ...
C synopsis target-domain
typedef struct InterruptDucati_IntInfo {
    UInt localIntId;
    UInt remoteIntId;
    UInt intVectorId;
} InterruptDucati_IntInfo;
 
 
config InterruptDucati.ducatiCtrlBaseAddr  // module-wide
XDCscript usage meta-domain
InterruptDucati.ducatiCtrlBaseAddr = UInt32 0x55081000;
C synopsis target-domain
extern const UInt32 InterruptDucati_ducatiCtrlBaseAddr;
 
 
config InterruptDucati.mailboxBaseAddr  // module-wide
XDCscript usage meta-domain
InterruptDucati.mailboxBaseAddr = UInt32 0x4A0F4000;
C synopsis target-domain
extern const UInt32 InterruptDucati_mailboxBaseAddr;
 
 
metaonly config InterruptDucati.common$  // module-wide

Common module configuration parameters

XDCscript usage meta-domain
InterruptDucati.common$ = Types.Common$ undefined;
 
DETAILS
All modules have this configuration parameter. Its name contains the '$' character to ensure it does not conflict with configuration parameters declared by the module. This allows new configuration parameters to be added in the future without any chance of breaking existing modules.
 
InterruptDucati.intClear( )  // module-wide

Clear interrupt

C synopsis target-domain
UInt InterruptDucati_intClear( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo );
 
ARGUMENTS
remoteProcId — Remote MultiProc Id
intInfo — Information needed to configure interrupt line
RETURNS
Value (if any) of the interrupt before it was cleared
 
InterruptDucati.intDisable( )  // module-wide

Disables the interrupt corresponding to intId

C synopsis target-domain
Void InterruptDucati_intDisable( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo );
 
ARGUMENTS
remoteProcId — Remote MultiProc Id
intInfo — Information needed to configure interrupt line
 
InterruptDucati.intEnable( )  // module-wide

Enables the interrupt corresponding to intId

C synopsis target-domain
Void InterruptDucati_intEnable( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo );
 
ARGUMENTS
remoteProcId — Remote MultiProc Id
intInfo — Information needed to configure interrupt line
 
InterruptDucati.intRegister( )  // module-wide

Register an interrupt line to a remote processor

C synopsis target-domain
Void InterruptDucati_intRegister( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo, Fxn func, UArg arg );
 
ARGUMENTS
remoteProcId — Remote MultiProc Id
intInfo — Information needed to configure interrupt line
func — Function to register.
arg — Argument that will be passed to func
 
InterruptDucati.intSend( )  // module-wide

Send interrupt to the remote processor

C synopsis target-domain
Void InterruptDucati_intSend( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo, UArg arg );
 
ARGUMENTS
remoteProcId — Remote MultiProc Id
intInfo — Information needed to configure interrupt line
arg — Argument for sending interrupt.
 
InterruptDucati.intUnregister( )  // module-wide

Unregister an interrupt line to a remote processor

C synopsis target-domain
Void InterruptDucati_intUnregister( UInt16 remoteProcId, IInterrupt_IntInfo *intInfo );
 
ARGUMENTS
remoteProcId — Remote MultiProc Id
intInfo — Information needed to configure interrupt line
 
module-wide built-ins

C synopsis target-domain
Types_ModuleId InterruptDucati_Module_id( );
// Get this module's unique id
 
Bool InterruptDucati_Module_startupDone( );
// Test if this module has completed startup
 
IHeap_Handle InterruptDucati_Module_heap( );
// The heap from which this module allocates memory
 
Bool InterruptDucati_Module_hasMask( );
// Test whether this module has a diagnostics mask
 
Bits16 InterruptDucati_Module_getMask( );
// Returns the diagnostics mask for this module
 
Void InterruptDucati_Module_setMask( Bits16 mask );
// Set the diagnostics mask for this module
generated on Fri, 09 Apr 2010 01:41:06 GMT