linux/drivers/media/pci/zoran/zr36016.h
<<
>>
Prefs
   1/*
   2 * Zoran ZR36016 basic configuration functions - header file
   3 *
   4 * Copyright (C) 2001 Wolfgang Scherr <scherr@net4you.at>
   5 *
   6 * $Id: zr36016.h,v 1.1.2.3 2003/01/14 21:18:07 rbultje Exp $
   7 *
   8 * ------------------------------------------------------------------------
   9 *
  10 * This program is free software; you can redistribute it and/or modify
  11 * it under the terms of the GNU General Public License as published by
  12 * the Free Software Foundation; either version 2 of the License, or
  13 * (at your option) any later version.
  14 *
  15 * This program is distributed in the hope that it will be useful,
  16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18 * GNU General Public License for more details.
  19 *
  20 * ------------------------------------------------------------------------
  21 */
  22
  23#ifndef ZR36016_H
  24#define ZR36016_H
  25
  26/* data stored for each zoran jpeg codec chip */
  27struct zr36016 {
  28        char name[32];
  29        int num;
  30        /* io datastructure */
  31        struct videocodec *codec;
  32        // coder status
  33        __u8 version;
  34        // actual coder setup
  35        int mode;
  36
  37        __u16 xoff;
  38        __u16 yoff;
  39        __u16 width;
  40        __u16 height;
  41        __u16 xdec;
  42        __u16 ydec;
  43};
  44
  45/* direct  register addresses */
  46#define ZR016_GOSTOP      0x00
  47#define ZR016_MODE        0x01
  48#define ZR016_IADDR       0x02
  49#define ZR016_IDATA       0x03
  50
  51/* indirect  register addresses */
  52#define ZR016I_SETUP1     0x00
  53#define ZR016I_SETUP2     0x01
  54#define ZR016I_NAX_LO     0x02
  55#define ZR016I_NAX_HI     0x03
  56#define ZR016I_PAX_LO     0x04
  57#define ZR016I_PAX_HI     0x05
  58#define ZR016I_NAY_LO     0x06
  59#define ZR016I_NAY_HI     0x07
  60#define ZR016I_PAY_LO     0x08
  61#define ZR016I_PAY_HI     0x09
  62#define ZR016I_NOL_LO     0x0a
  63#define ZR016I_NOL_HI     0x0b
  64
  65/* possible values for mode register */
  66#define ZR016_RGB444_YUV444  0x00
  67#define ZR016_RGB444_YUV422  0x01
  68#define ZR016_RGB444_YUV411  0x02
  69#define ZR016_RGB444_Y400    0x03
  70#define ZR016_RGB444_RGB444  0x04
  71#define ZR016_YUV444_YUV444  0x08
  72#define ZR016_YUV444_YUV422  0x09
  73#define ZR016_YUV444_YUV411  0x0a
  74#define ZR016_YUV444_Y400    0x0b
  75#define ZR016_YUV444_RGB444  0x0c
  76#define ZR016_YUV422_YUV422  0x11
  77#define ZR016_YUV422_YUV411  0x12
  78#define ZR016_YUV422_Y400    0x13
  79#define ZR016_YUV411_YUV411  0x16
  80#define ZR016_YUV411_Y400    0x17
  81#define ZR016_4444_4444      0x19
  82#define ZR016_100_100        0x1b
  83
  84#define ZR016_RGB444         0x00
  85#define ZR016_YUV444         0x20
  86#define ZR016_YUV422         0x40
  87
  88#define ZR016_COMPRESSION    0x80
  89#define ZR016_EXPANSION      0x80
  90
  91/* possible values for setup 1 register */
  92#define ZR016_CKRT           0x80
  93#define ZR016_VERT           0x40
  94#define ZR016_HORZ           0x20
  95#define ZR016_HRFL           0x10
  96#define ZR016_DSFL           0x08
  97#define ZR016_SBFL           0x04
  98#define ZR016_RSTR           0x02
  99#define ZR016_CNTI           0x01
 100
 101/* possible values for setup 2 register */
 102#define ZR016_SYEN           0x40
 103#define ZR016_CCIR           0x04
 104#define ZR016_SIGN           0x02
 105#define ZR016_YMCS           0x01
 106
 107#endif                          /*fndef ZR36016_H */
 108