/******************************************************************************/
/*                       Copyright 2002 Broadcom Corporation                  */
/*                                                                            */
/* This material is the confidential trade secret and proprietary information */
/* of Broadcom Corp.  It may not be reproduced, used, sold or transferred to  */
/* any third party without the prior written consent of Broadcom Corp.        */
/* All rights reserved.                                                       */
/******************************************************************************/
/*   FileName        : bcm_types.h                                            */
/*   Purpose         : Some generic types for the host ref code               */
/*   Limitations     : None                                                   */
/*   Author          : Emmanuel Hanssens                                      */
/*   Creation Date   : 09-Jan-2002                                            */
/*   History         : Compiled by CVS                                        */
/******************************************************************************/
/*   $Id: bcm_types.h,v 1.7 2004/07/22 15:51:28 hanssens Exp $  */
/******************************************************************************/
#ifndef TYPES_H
# define TYPES_H

# include "bcm_userdef.h"
# include "bcm_layout.h"

/* existing image types */
# define ANNEX_A 1
# define ANNEX_B 2
# define ANNEX_C 3
# define ANNEX_I 4

typedef struct LineObject LineObject;
typedef struct BondingObject BondingObject;
typedef struct DevObject DevObject;
typedef struct GlobalObject GlobalObject;

typedef struct TargetImage TargetImage;
struct TargetImage 
{
  uint8 *image;
  uint32 size;
};

typedef struct SelfTest SelfTest;
struct SelfTest
{
  uint32 progress;
  uint32 results;
};
extern typeLayout selfTestLayout[];

/* data dump support */
# define DATA_DUMP_BUFFER_SIZE 32768

typedef struct DataDumpBuffer DataDumpBuffer;
struct DataDumpBuffer
{
  uint32 used;
  uint8  data[DATA_DUMP_BUFFER_SIZE];
};

typedef struct ComplexInt16 ComplexInt16;
struct ComplexInt16
{
  int16 real;
  int16 imag; 
};
  
#endif
