8eea8e29cc4374d1ee24c25a07f45af132db3499ap/*
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * CDDL HEADER START
8eea8e29cc4374d1ee24c25a07f45af132db3499ap *
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * The contents of this file are subject to the terms of the
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * Common Development and Distribution License, Version 1.0 only
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * (the "License"). You may not use this file except in compliance
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * with the License.
8eea8e29cc4374d1ee24c25a07f45af132db3499ap *
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * or http://www.opensolaris.org/os/licensing.
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * See the License for the specific language governing permissions
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * and limitations under the License.
8eea8e29cc4374d1ee24c25a07f45af132db3499ap *
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * When distributing Covered Code, include this CDDL HEADER in each
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * If applicable, add the following below this CDDL HEADER, with the
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * fields enclosed by brackets "[]" replaced with your own identifying
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * information: Portions Copyright [yyyy] [name of copyright owner]
8eea8e29cc4374d1ee24c25a07f45af132db3499ap *
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * CDDL HEADER END
8eea8e29cc4374d1ee24c25a07f45af132db3499ap */
8eea8e29cc4374d1ee24c25a07f45af132db3499ap/*
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
8eea8e29cc4374d1ee24c25a07f45af132db3499ap * Use is subject to license terms.
8eea8e29cc4374d1ee24c25a07f45af132db3499ap */
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#ifndef _SYS_1394_TARGETS_DCAM1394_PARAM_H
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#define _SYS_1394_TARGETS_DCAM1394_PARAM_H
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#pragma ident "%Z%%M% %I% %E% SMI"
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#ifdef __cplusplus
8eea8e29cc4374d1ee24c25a07f45af132db3499apextern "C" {
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#endif
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#define IS_VALID 0x1
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#define IS_PRESENT 0x2
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#define CAP_GET 0x4
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#define CAP_SET 0x8
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#define CAP_CTRL_SET 0x10
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_attr_init(dcam_state_t *softc_p,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap dcam1394_param_attr_t param_attr);
8eea8e29cc4374d1ee24c25a07f45af132db3499apvoid param_attr_set(dcam1394_param_attr_t param_attr, uint_t param,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t subparam, uint_t attr_bmap);
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499apint dcam1394_ioctl_param_get(dcam_state_t *softc_p,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap dcam1394_param_list_t param_list);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint dcam1394_ioctl_param_set(dcam_state_t *softc_p, int is_ctrl_file,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap dcam1394_param_list_t param_list);
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499apint dcam1394_param_get(dcam_state_t *softc_p, uint_t param,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint dcam1394_param_set(dcam_state_t *softc_p, uint_t param,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499apint feature_get(dcam_state_t *softc_p, uint_t feature_csr_offs,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t feature_elm_inq_reg_offs, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint feature_set(dcam_state_t *softc_p, uint_t feature_csr_offs,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_cap_power_ctrl_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_cap_vid_mode_get(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_cap_frame_rate_get(dcam_state_t *softc_p, uint_t param,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_power_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_power_set(dcam_state_t *softc_p, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_vid_mode_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_vid_mode_set(dcam_state_t *softc_p, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_frame_rate_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_frame_rate_set(dcam_state_t *softc_p, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_ring_buff_capacity_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_ring_buff_capacity_set(dcam_state_t *softc_p, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_ring_buff_num_frames_ready_get(dcam_state_t *softc_p,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_ring_buff_read_ptr_incr_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_ring_buff_read_ptr_incr_set(dcam_state_t *softc_p, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_frame_num_bytes_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_status_get(dcam_state_t *softc_p, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_brightness_get(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_brightness_set(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_exposure_get(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_exposure_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_sharpness_get(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_sharpness_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_white_balance_get(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_white_balance_set(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_hue_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_hue_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_saturation_get(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_saturation_set(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_gamma_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_gamma_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_shutter_get(dcam_state_t *softc_p, uint_t subparam,
8eea8e29cc4374d1ee24c25a07f45af132db3499ap uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_shutter_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_gain_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_gain_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_iris_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_iris_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_focus_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_focus_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_zoom_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_zoom_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_pan_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_pan_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_tilt_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
8eea8e29cc4374d1ee24c25a07f45af132db3499apint param_tilt_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#ifdef __cplusplus
8eea8e29cc4374d1ee24c25a07f45af132db3499ap}
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#endif
8eea8e29cc4374d1ee24c25a07f45af132db3499ap
8eea8e29cc4374d1ee24c25a07f45af132db3499ap#endif /* _SYS_1394_TARGETS_DCAM1394_PARAM_H */