RetroArch
|
#include <stdlib.h>
#include <stdio.h>
#include <lwp.h>
#include "asm.h"
#include "processor.h"
#include "arqueue.h"
Functions | |
static __inline__ void | __ARQPopTaskQueueHi () |
static void | __ARQCallbackDummy (ARQRequest *req) |
static void | __ARQCallbackSync (ARQRequest *req) |
static void | __ARQServiceQueueLo () |
static void | __ARInterruptServiceRoutine () |
void | ARQ_Init () |
void | ARQ_Reset () |
void | ARQ_SetChunkSize (u32 size) |
u32 | ARQ_GetChunkSize () |
void | ARQ_FlushQueue () |
void | ARQ_PostRequestAsync (ARQRequest *req, u32 owner, u32 dir, u32 prio, u32 aram_addr, u32 mram_addr, u32 len, ARQCallback cb) |
Enqueue a ARAM DMA transfer request. More... | |
void | ARQ_PostRequest (ARQRequest *req, u32 owner, u32 dir, u32 prio, u32 aram_addr, u32 mram_addr, u32 len) |
Enqueue a ARAM DMA transfer request. More... | |
void | ARQ_RemoveRequest (ARQRequest *req) |
u32 | ARQ_RemoveOwnerRequest (u32 owner) |
Variables | |
static u32 | __ARQChunkSize |
static u32 | __ARQInitFlag = 0 |
static lwpq_t | __ARQSyncQueue |
static lwp_queue | __ARQReqQueueLo |
static lwp_queue | __ARQReqQueueHi |
static ARQRequest * | __ARQReqPendingLo |
static ARQRequest * | __ARQReqPendingHi |
static ARQCallback | __ARQCallbackLo = NULL |
static ARQCallback | __ARQCallbackHi = NULL |
|
static |
|
static |
|
static |
|
static |
|
static |
void ARQ_FlushQueue | ( | ) |
u32 ARQ_GetChunkSize | ( | ) |
void ARQ_Init | ( | ) |
void ARQ_PostRequest | ( | ARQRequest * | req, |
u32 | owner, | ||
u32 | dir, | ||
u32 | prio, | ||
u32 | aram_addr, | ||
u32 | mram_addr, | ||
u32 | len | ||
) |
Enqueue a ARAM DMA transfer request.
[in] | req | structure to hold ARAM DMA request informations. |
[in] | owner | unique owner id. |
[in] | dir | direction of ARAM DMA transfer. |
[in] | prio | priority of request. |
[in] | aram_addr | startaddress of buffer to be pushed onto the queue. NOTE: Must be 32-bytealigned. |
[in] | mram_addr | length of data to be pushed onto the queue. |
[in] | len | startaddress of buffer to be pushed onto the queue. NOTE: Must be 32-bytealigned. |
[in] | cb | length of data to be pushed onto the queue. |
void ARQ_PostRequestAsync | ( | ARQRequest * | req, |
u32 | owner, | ||
u32 | dir, | ||
u32 | prio, | ||
u32 | aram_addr, | ||
u32 | mram_addr, | ||
u32 | len, | ||
ARQCallback | cb | ||
) |
Enqueue a ARAM DMA transfer request.
[in] | req | structure to hold ARAM DMA request informations. |
[in] | owner | unique owner id. |
[in] | dir | direction of ARAM DMA transfer. |
[in] | prio | priority of request. |
[in] | aram_addr | startaddress of buffer to be pushed onto the queue. NOTE: Must be 32-bytealigned. |
[in] | mram_addr | length of data to be pushed onto the queue. |
[in] | len | startaddress of buffer to be pushed onto the queue. NOTE: Must be 32-bytealigned. |
[in] | cb | length of data to be pushed onto the queue. |
void ARQ_RemoveRequest | ( | ARQRequest * | req | ) |
void ARQ_Reset | ( | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |