SSBM Decomp
Loading...
Searching...
No Matches
arq.h
Go to the documentation of this file.
1
#ifndef DOLPHIN_AR_ARQ_H
2
#define DOLPHIN_AR_ARQ_H
3
4
#include <
platform.h
>
5
6
#define ARQ_CHUNK_SIZE_DEFAULT 4096
7
8
typedef
enum
ARQType
{
9
ARQ_TYPE_MRAM_TO_ARAM
,
10
ARQ_TYPE_ARAM_TO_MRAM
,
11
}
ARQType
;
12
13
typedef
enum
ARQPrio
{
14
ARQ_PRIORITY_LOW
,
15
ARQ_PRIORITY_HIGH
,
16
}
ARQPrio
;
17
18
typedef
struct
ARQRequest
ARQRequest
;
19
20
typedef
void (*
ARQCallback
)(
ARQRequest
*);
21
22
struct
ARQRequest
{
23
ARQRequest
*
next
;
24
u32
owner
;
25
u32
type
;
26
ARQPrio
priority
;
27
u32
source
;
28
u32
dest
;
29
size_t
length
;
30
ARQCallback
callback
;
31
};
32
33
void
ARQInit
(
void
);
34
void
ARQReset
(
void
);
35
void
ARQPostRequest
(
ARQRequest
*
task
,
u32
owner,
ARQType
type,
36
ARQPrio
priority,
u32
source,
u32
dest,
size_t
length,
37
ARQCallback
callback
);
38
39
void
__ARQServiceQueueLo
(
void
);
40
void
__ARQCallbackHack
(
ARQRequest
*);
41
void
__ARQInitTempQueue
(
void
);
42
void
__ARQPushTempQueue
(
ARQRequest
*
task
);
43
void
__ARQInterruptServiceRoutine
(
void
);
44
45
#endif
// DOLPHIN_AR_ARQ_H
ARQPostRequest
void ARQPostRequest(ARQRequest *task, u32 owner, ARQType type, ARQPrio priority, u32 source, u32 dest, size_t length, ARQCallback callback)
Definition
arq.c:110
__ARQPushTempQueue
void __ARQPushTempQueue(ARQRequest *task)
ARQReset
void ARQReset(void)
ARQType
ARQType
Definition
arq.h:8
ARQ_TYPE_ARAM_TO_MRAM
@ ARQ_TYPE_ARAM_TO_MRAM
Definition
arq.h:10
ARQ_TYPE_MRAM_TO_ARAM
@ ARQ_TYPE_MRAM_TO_ARAM
Definition
arq.h:9
__ARQInterruptServiceRoutine
void __ARQInterruptServiceRoutine(void)
Definition
arq.c:75
ARQPrio
ARQPrio
Definition
arq.h:13
ARQ_PRIORITY_HIGH
@ ARQ_PRIORITY_HIGH
Definition
arq.h:15
ARQ_PRIORITY_LOW
@ ARQ_PRIORITY_LOW
Definition
arq.h:14
__ARQInitTempQueue
void __ARQInitTempQueue(void)
__ARQServiceQueueLo
void __ARQServiceQueueLo(void)
Definition
arq.c:35
ARQInit
void ARQInit(void)
Definition
arq.c:94
__ARQCallbackHack
void __ARQCallbackHack(ARQRequest *)
Definition
arq.c:73
ARQCallback
void(* ARQCallback)(ARQRequest *)
Definition
arq.h:20
task
DSPTaskInfo task
callback
static void callback(HSD_GObj *gobj)
Definition
ftDk_SpecialLw.c:88
platform.h
u32
unsigned long u32
An unsigned 32-bit integer.
Definition
platform.h:26
ARQRequest
Definition
arq.h:22
ARQRequest::length
size_t length
Definition
arq.h:29
ARQRequest::owner
u32 owner
Definition
arq.h:24
ARQRequest::callback
ARQCallback callback
Definition
arq.h:30
ARQRequest::priority
ARQPrio priority
Definition
arq.h:26
ARQRequest::source
u32 source
Definition
arq.h:27
ARQRequest::dest
u32 dest
Definition
arq.h:28
ARQRequest::next
ARQRequest * next
Definition
arq.h:23
ARQRequest::type
u32 type
Definition
arq.h:25
src
dolphin
ar
arq.h
Generated by
1.9.8