Home | History | Annotate | Download | only in media
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef __SOC2030_H__
     20 #define __SOC2030_H__
     21 #include <linux/ioctl.h>
     22 #define SOC2030_IOCTL_SET_MODE _IOWR('o', 1, struct soc2030_mode)
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 #define SOC2030_IOCTL_GET_STATUS _IOC(_IOC_READ, 'o', 2, 10)
     25 #define SOC2030_IOCTL_SET_PRIVATE _IOWR('o', 3, struct soc2030_regs)
     26 #define SOC2030_IOCTL_GET_MODES _IO('o', 4)
     27 #define SOC2030_IOCTL_GET_NUM_MODES _IOR('o', 5, unsigned int)
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #define SOC2030_IOCTL_SET_EFFECT _IOWR('o', 6, unsigned int)
     30 #define SOC2030_IOCTL_SET_WHITEBALANCE _IOWR('o', 7, unsigned int)
     31 #define SOC2030_IOCTL_SET_EXP_COMP _IOWR('o', 8, int)
     32 #define SOC2030_IOCTL_SET_LOCK _IOWR('o', 9, struct soc2030_lock)
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 #define SOC2030_POLL_WAITMS 50
     35 #define SOC2030_MAX_RETRIES 3
     36 #define SOC2030_POLL_RETRIES 7
     37 #define SOC2030_MAX_PRIVATE_SIZE 1024
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define SOC2030_MAX_NUM_MODES 6
     40 #define SOC_EV_MAX 2
     41 #define SOC_EV_MIN -2
     42 #define EXP_TARGET 0x32
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 enum {
     45  REG_TABLE_END,
     46  WRITE_REG_DATA,
     47  WRITE_REG_BIT_H,
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49  WRITE_REG_BIT_L,
     50  POLL_REG_DATA,
     51  POLL_REG_BIT_H,
     52  POLL_REG_BIT_L,
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54  WRITE_VAR_DATA,
     55  POLL_VAR_DATA,
     56  DELAY_MS,
     57  WRITE_REG_VAR1,
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59  WRITE_REG_VAR2,
     60  WRITE_REG_VAR3,
     61  WRITE_REG_VAR4,
     62  READ_REG_VAR1,
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64  READ_REG_VAR2,
     65  READ_REG_VAR3,
     66  READ_REG_VAR4,
     67 };
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 #define REG_VAR1 (READ_REG_VAR1 - READ_REG_VAR1)
     70 #define REG_VAR2 (READ_REG_VAR2 - READ_REG_VAR1)
     71 #define REG_VAR3 (READ_REG_VAR3 - READ_REG_VAR1)
     72 #define REG_VAR4 (READ_REG_VAR4 - READ_REG_VAR1)
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74 enum {
     75  EFFECT_NONE,
     76  EFFECT_BW,
     77  EFFECT_NEGATIVE,
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79  EFFECT_POSTERIZE,
     80  EFFECT_SEPIA,
     81  EFFECT_SOLARIZE,
     82  EFFECT_AQUA,
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84  EFFECT_MAX,
     85 };
     86 enum {
     87  WB_AUTO,
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89  WB_INCANDESCENT,
     90  WB_FLUORESCENT,
     91  WB_DAYLIGHT,
     92  WB_CLOUDYDAYLIGHT,
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94  WB_NIGHT,
     95  WB_MAX,
     96 };
     97 struct soc2030_regs {
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99  __u8 op;
    100  __u16 addr;
    101  __u16 val;
    102 };
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104 struct soc2030_lock {
    105  __u8 aelock;
    106  __u8 aerelock;
    107  __u8 awblock;
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109  __u8 awbrelock;
    110  __u8 previewactive;
    111 };
    112 struct soc2030_mode {
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114  int xres;
    115  int yres;
    116  int fps;
    117  struct soc2030_regs *regset;
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 };
    120 #endif
    121