/******************************************************************************/
/*                 Copyright C 1998-2004 Broadcom Corporation                 */
/*                                                                            */
/* This material is the confidential trade secret and proprietary information */
/* of Broadcom Corporation.  It may not be reproduced, used, sold or          */
/* transferred to any third party without the prior written consent of        */
/* Broadcom Corporation.   All rights reserved.                               */
/******************************************************************************/
/*   FileName        : bcm_psdToolbox.h                                       */
/*   Purpose         : Header for the PSD toolbox                             */
/*   The PSD toolbox is a Function to generate the HMI input to control the   */
/*   G.992.5 PSD shaping in the modem software                                */
/*     Input                                                                  */
/*     - psdShape           : default PSD shape:                              */
/*                             - 0 = PSD_CO                                   */
/*                             - 1 = PSD_FLAT                                 */
/*                             - 2 = PSD_CAB_ETSI                             */
/*                             - 3 = PSD_CAB_ANSI                             */
/*     - maxPSD             : Maximum PSD level in 0.1 dBm/Hz                 */
/*     - nRFIbands          : Number of RFI bands [0,1]                       */
/*     - RFIbands           : Array with start and stop tone of RFI bands     */
/*     - startTone          : Start frequency of the low band roll-off        */
/*     - oobLevel           : Level of the out of band roll-off in 0.1 dBm/Hz */
/*     Output                                                                 */
/*     - customTssiShape    : custom Tssi shape                               */
/*     - maxTxDeltaPsd      : Final delta PSD level wrt G.992.5 standard      */
/*                            (-40 dBm/Hz) in 0.1 dBm/Hz                      */
/*     - adslPlusTxFilterId : Tx Filter setting                               */
/*   Limitations     : None                                                   */
/*   Author          : Miguel Peeters                                         */
/*   Creation Date   : 2-Feb-2004                                             */
/*   History         : Compiled by CVS                                        */
/******************************************************************************/
/*   $Id: bcm_psdToolbox.h,v 1.3 2004/07/07 12:24:24 hanssens Exp $  */
/******************************************************************************/

#ifndef BCM_PSD_TOOLBOX_H
# define BCM_PSD_TOOLBOX_H

# include "bcm_userdef.h"
# include "bcm_hmiLineMsg.h"

/* PSD shape */
# define BCM_N_SHAPE       6
# define BCM_PSD_CO        0
# define BCM_PSD_FLAT      1
# define BCM_PSD_CAB_ANSI  2
# define BCM_PSD_CAB_ETSI  3
# define BCM_PSD_EXCH_ETSI 4
# define BCM_PSD_EXCH_ANSI 5

/* RFI Bands */
# define BCM_N_RFI_BANDS  2

void psdToolbox(uint8      psdShape,
                int16      maxPsd,
                uint8      nRFIbands,
                uint16     RFIbands[2*BCM_N_RFI_BANDS],
                uint16     startTone,
                int16      oobLevel,
                TssiShape *customTssiShape,
                int16     *maxTxDeltaPsd,
                uint8     *adslPlusTxFilterId);

#endif
