linux/drivers/media/pci/zoran/zr36050.h

/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Zoran ZR36050 basic configuration functions - header file
 *
 * Copyright (C) 2001 Wolfgang Scherr <[email protected]>
 */

#ifndef ZR36050_H
#define ZR36050_H

#include "videocodec.h"

/* data stored for each zoran jpeg codec chip */
struct zr36050 {};

/* zr36050 register addresses */
#define ZR050_GO
#define ZR050_HARDWARE
#define ZR050_MODE
#define ZR050_OPTIONS
#define ZR050_MBCV
#define ZR050_MARKERS_EN
#define ZR050_INT_REQ_0
#define ZR050_INT_REQ_1
#define ZR050_TCV_NET_HI
#define ZR050_TCV_NET_MH
#define ZR050_TCV_NET_ML
#define ZR050_TCV_NET_LO
#define ZR050_TCV_DATA_HI
#define ZR050_TCV_DATA_MH
#define ZR050_TCV_DATA_ML
#define ZR050_TCV_DATA_LO
#define ZR050_SF_HI
#define ZR050_SF_LO
#define ZR050_AF_HI
#define ZR050_AF_M
#define ZR050_AF_LO
#define ZR050_ACV_HI
#define ZR050_ACV_MH
#define ZR050_ACV_ML
#define ZR050_ACV_LO
#define ZR050_ACT_HI
#define ZR050_ACT_MH
#define ZR050_ACT_ML
#define ZR050_ACT_LO
#define ZR050_ACV_TURN_HI
#define ZR050_ACV_TURN_MH
#define ZR050_ACV_TURN_ML
#define ZR050_ACV_TURN_LO
#define ZR050_STATUS_0
#define ZR050_STATUS_1

#define ZR050_SOF_IDX
#define ZR050_SOS1_IDX
#define ZR050_SOS2_IDX
#define ZR050_SOS3_IDX
#define ZR050_SOS4_IDX
#define ZR050_DRI_IDX
#define ZR050_DNL_IDX
#define ZR050_DQT_IDX
#define ZR050_DHT_IDX
#define ZR050_APP_IDX
#define ZR050_COM_IDX

/* zr36050 hardware register bits */

#define ZR050_HW_BSWD
#define ZR050_HW_MSTR
#define ZR050_HW_DMA
#define ZR050_HW_CFIS_1_CLK
#define ZR050_HW_CFIS_2_CLK
#define ZR050_HW_CFIS_3_CLK
#define ZR050_HW_CFIS_4_CLK
#define ZR050_HW_CFIS_5_CLK
#define ZR050_HW_CFIS_6_CLK
#define ZR050_HW_CFIS_7_CLK
#define ZR050_HW_CFIS_8_CLK
#define ZR050_HW_BELE

/* zr36050 mode register bits */

#define ZR050_MO_COMP
#define ZR050_MO_ATP
#define ZR050_MO_PASS2
#define ZR050_MO_TLM
#define ZR050_MO_DCONLY
#define ZR050_MO_BRC

#define ZR050_MO_ATP
#define ZR050_MO_PASS2
#define ZR050_MO_TLM
#define ZR050_MO_DCONLY

/* zr36050 option register bits */

#define ZR050_OP_NSCN_1
#define ZR050_OP_NSCN_2
#define ZR050_OP_NSCN_3
#define ZR050_OP_NSCN_4
#define ZR050_OP_NSCN_5
#define ZR050_OP_NSCN_6
#define ZR050_OP_NSCN_7
#define ZR050_OP_NSCN_8
#define ZR050_OP_OVF

/* zr36050 markers-enable register bits */

#define ZR050_ME_APP
#define ZR050_ME_COM
#define ZR050_ME_DRI
#define ZR050_ME_DQT
#define ZR050_ME_DHT
#define ZR050_ME_DNL
#define ZR050_ME_DQTI
#define ZR050_ME_DHTI

/* zr36050 status0/1 register bit masks */

#define ZR050_ST_RST_MASK
#define ZR050_ST_SOF_MASK
#define ZR050_ST_SOS_MASK
#define ZR050_ST_DATRDY_MASK
#define ZR050_ST_MRKDET_MASK
#define ZR050_ST_RFM_MASK
#define ZR050_ST_RFD_MASK
#define ZR050_ST_END_MASK
#define ZR050_ST_TCVOVF_MASK
#define ZR050_ST_DATOVF_MASK

/* pixel component idx */

#define ZR050_Y_COMPONENT
#define ZR050_U_COMPONENT
#define ZR050_V_COMPONENT

int zr36050_init_module(void);
void zr36050_cleanup_module(void);
#endif				/*fndef ZR36050_H */