blob: 82283106f6d72200c62109ce6abdc9a7381cdc1e [file] [log] [blame]
/*******************************************************************************
* Copyright (C) Marvell International Ltd. and its affiliates
*
* Marvell GPL License Option
*
* If you received this File from Marvell, you may opt to use, redistribute and/or
* modify this File in accordance with the terms and conditions of the General
* Public License Version 2, June 1991 (the "GPL License"), a copy of which is
* available along with the File in the license.txt file or by writing to the Free
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or
* on the worldwide web at http://www.gnu.org/licenses/gpl.txt.
*
* THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED
* WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY
* DISCLAIMED. The GPL License provides additional details about this warranty
* disclaimer.
********************************************************************************/
#ifndef _FASTLOGO_H_
#define _FASTLOGO_H_
#include "Galois_memmap.h"
#include "thinvpp_module.h"
#include "thinvpp_api.h"
#include "thinvpp_apifuncs.h"
#include "thinvpp_isr.h"
#include "vpp.h"
#include "maddr.h"
#include <mach/api_dhub.h>
typedef struct
{
//HDL_dhub2d AG_dhubHandle;
//HDL_dhub2d VPP_dhubHandle;
//HDL_dhub2d VIP_dhubHandle;
unsigned VPP_NUM_OF_CHANNELS;
unsigned AG_NUM_OF_CHANNELS;
//DHUB_channel_config *VIP_config;
DHUB_channel_config *VPP_config;
DHUB_channel_config *AG_config;
unsigned avioDhubChMap_vpp_BCM_R;
unsigned RA_Vpp_VP_TG;
unsigned RA_Vpp_vpIn_pix;
unsigned RA_Vpp_vpOut_pix;
unsigned RA_Vpp_diW_pix;
unsigned RA_Vpp_diR_word;
} logo_soc_specific;
typedef struct
{
unsigned planes;
int vres;
VPP_WIN win;
unsigned *logoBuf;
unsigned *logoBuf_2;
unsigned *mapaddr;
long length;
unsigned count;
const unsigned *bcm_cmd_0;
unsigned bcm_cmd_0_len;
const unsigned *bcm_cmd_a;
unsigned bcm_cmd_a_len;
const unsigned *bcm_cmd_n;
unsigned bcm_cmd_n_len;
const unsigned *bcm_cmd_z;
unsigned bcm_cmd_z_len;
unsigned *logo_frame_dma_cmd;
unsigned logo_dma_cmd_len;
unsigned bcmQ_len;
unsigned dmaQ_len;
unsigned cfgQ_len;
#if LOGO_USE_SHM
size_t mSHMOffset;
unsigned mSHMSize;
char * bcmQ;
unsigned bcmQ_phys;
char * dmaQ;
unsigned dmaQ_phys;
char * cfgQ;
unsigned cfgQ_phys;
#endif
unsigned berlin_chip_revision;
} logo_device_t;
extern logo_device_t fastlogo_ctx;
extern logo_soc_specific *soc;
void fastlogo_soc_select(unsigned chip_revision);
#endif