URL
https://opencores.org/ocsvn/mb-jpeg/mb-jpeg/trunk
Subversion Repositories mb-jpeg
[/] [mb-jpeg/] [tags/] [STEP2_2b/] [drivers/] [fsl_dct_v1_00_a/] [src/] [fsl_dct.h] - Rev 66
Compare with Previous | Blame | View Log
////////////////////////////////////////////////////////////////////////////// // Filename: D:\mb-jpeg\drivers/fsl_dct_v1_00_a/src/fsl_dct.h // Version: 1.00.a // Description: fsl_dct (FSL DCT accelerator) Driver Header File // Date: Fri Jul 21 08:31:12 2006 (by Create and Import Peripheral Wizard) ////////////////////////////////////////////////////////////////////////////// #ifndef FSL_DCT_H #define FSL_DCT_H #include "xstatus.h" #include "fsl.h" #define write_into_fsl(val, id) putfsl(val, id) #define read_from_fsl(val, id) getfsl(val, id) /* * A macro for accessing FSL peripheral. * * This example driver writes all the data in the input arguments * into the input FSL bus through blocking writes. FSL peripheral will * automatically read from the FSL bus. Once all the inputs * have been written, the output from the FSL peripheral is read * into output arguments through blocking reads. * * Arguments: * input_slot_id * Compile time constant indicating FSL slot from * which coprocessor read the input data. Defined in * xparameters.h . * output_slot_id * Compile time constant indicating FSL slot into * which the coprocessor write output data. Defined in * xparameters.h . * input_0 An array of unsigned integers. Array size is 8 * output_0 An array of unsigned integers. Array size is 8 * * Caveats: * The output_slot_id and input_slot_id arguments must be * constants available at compile time. Do not pass * variables for these arguments. * * Since this is a macro, using it too many times will * increase the size of your application. In such cases, * or when this macro is too simplistic for your * application you may want to create your own instance * specific driver function (not a macro) using the * macros defined in this file and the slot * identifiers defined in xparameters.h . Please see the * example code (fsl_dct_app.c) for details. */ #define fsl_dct(\ input_slot_id,\ output_slot_id,\ input_0, \ output_0 \ )\ {\ int i;\ \ for (i=0; i<8; i++)\ {\ write_into_fsl(input_0[i], input_slot_id);\ }\ \ for (i=0; i<8; i++)\ {\ read_from_fsl(output_0[i], output_slot_id);\ }\ } XStatus FSL_DCT_SelfTest(); #endif