libspe2 0.9a
dma.h
Go to the documentation of this file.
00001 /*
00002  * libspe2 - A wrapper library to adapt the JSRE SPU usage model to SPUFS
00003  * Copyright (C) 2005 IBM Corp.
00004  *
00005  * This library is free software; you can redistribute it and/or modify it
00006  * under the terms of the GNU Lesser General Public License as published by
00007  * the Free Software Foundation; either version 2.1 of the License,
00008  * or (at your option) any later version.
00009  *
00010  * This library is distributed in the hope that it will be useful, but
00011  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
00012  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
00013  * License for more details.
00014  *
00015  * You should have received a copy of the GNU Lesser General Public License
00016  * along with this library; if not, write to the Free Software Foundation,
00017  * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00018  */
00019 
00020 #ifndef _dma_h_
00021 #define _dma_h_
00022 
00023 #include <stdint.h>
00024 
00025 #include "spebase.h"
00026 
00027 struct mfc_command_parameter_area {
00028         uint32_t pad;   /* reserved              */
00029         uint32_t lsa;   /* local storage address */
00030         uint64_t ea;    /* effective address     */
00031         uint16_t size;  /* transfer size         */
00032         uint16_t tag;   /* command tag           */
00033         uint16_t class; /* class ID              */
00034         uint16_t cmd;   /* command opcode        */
00035 };
00036 
00037 enum mfc_cmd {
00038         MFC_CMD_PUT  = 0x20,
00039         MFC_CMD_PUTB = 0x21,
00040         MFC_CMD_PUTF = 0x22,
00041         MFC_CMD_GET  = 0x40,
00042         MFC_CMD_GETB = 0x41,
00043         MFC_CMD_GETF = 0x42,
00044 };
00045 
00046 #endif