1*21Sap25164 /*
2*21Sap25164  * CDDL HEADER START
3*21Sap25164  *
4*21Sap25164  * The contents of this file are subject to the terms of the
5*21Sap25164  * Common Development and Distribution License, Version 1.0 only
6*21Sap25164  * (the "License").  You may not use this file except in compliance
7*21Sap25164  * with the License.
8*21Sap25164  *
9*21Sap25164  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*21Sap25164  * or http://www.opensolaris.org/os/licensing.
11*21Sap25164  * See the License for the specific language governing permissions
12*21Sap25164  * and limitations under the License.
13*21Sap25164  *
14*21Sap25164  * When distributing Covered Code, include this CDDL HEADER in each
15*21Sap25164  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*21Sap25164  * If applicable, add the following below this CDDL HEADER, with the
17*21Sap25164  * fields enclosed by brackets "[]" replaced with your own identifying
18*21Sap25164  * information: Portions Copyright [yyyy] [name of copyright owner]
19*21Sap25164  *
20*21Sap25164  * CDDL HEADER END
21*21Sap25164  */
22*21Sap25164 /*
23*21Sap25164  * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24*21Sap25164  * Use is subject to license terms.
25*21Sap25164  */
26*21Sap25164 
27*21Sap25164 #ifndef	_SYS_1394_TARGETS_DCAM1394_PARAM_H
28*21Sap25164 #define	_SYS_1394_TARGETS_DCAM1394_PARAM_H
29*21Sap25164 
30*21Sap25164 #pragma ident	"%Z%%M%	%I%	%E% SMI"
31*21Sap25164 
32*21Sap25164 #ifdef	__cplusplus
33*21Sap25164 extern "C" {
34*21Sap25164 #endif
35*21Sap25164 
36*21Sap25164 #define	IS_VALID	0x1
37*21Sap25164 #define	IS_PRESENT	0x2
38*21Sap25164 #define	CAP_GET		0x4
39*21Sap25164 #define	CAP_SET		0x8
40*21Sap25164 #define	CAP_CTRL_SET	0x10
41*21Sap25164 
42*21Sap25164 
43*21Sap25164 int	param_attr_init(dcam_state_t *softc_p,
44*21Sap25164 	    dcam1394_param_attr_t param_attr);
45*21Sap25164 void	param_attr_set(dcam1394_param_attr_t param_attr, uint_t param,
46*21Sap25164 	    uint_t subparam, uint_t attr_bmap);
47*21Sap25164 
48*21Sap25164 int	dcam1394_ioctl_param_get(dcam_state_t *softc_p,
49*21Sap25164 	    dcam1394_param_list_t param_list);
50*21Sap25164 int	dcam1394_ioctl_param_set(dcam_state_t *softc_p, int is_ctrl_file,
51*21Sap25164 	    dcam1394_param_list_t param_list);
52*21Sap25164 
53*21Sap25164 int	dcam1394_param_get(dcam_state_t *softc_p, uint_t param,
54*21Sap25164 	    uint_t subparam, uint_t *val_p);
55*21Sap25164 int	dcam1394_param_set(dcam_state_t *softc_p, uint_t param,
56*21Sap25164 	    uint_t subparam, uint_t val);
57*21Sap25164 
58*21Sap25164 int	 feature_get(dcam_state_t *softc_p, uint_t feature_csr_offs,
59*21Sap25164 	    uint_t feature_elm_inq_reg_offs, uint_t subparam, uint_t *val_p);
60*21Sap25164 int	feature_set(dcam_state_t *softc_p, uint_t feature_csr_offs,
61*21Sap25164 	    uint_t subparam, uint_t val);
62*21Sap25164 
63*21Sap25164 int	param_cap_power_ctrl_get(dcam_state_t *softc_p, uint_t *val_p);
64*21Sap25164 int	param_cap_vid_mode_get(dcam_state_t *softc_p, uint_t subparam,
65*21Sap25164 	    uint_t *val_p);
66*21Sap25164 int	param_cap_frame_rate_get(dcam_state_t  *softc_p, uint_t param,
67*21Sap25164 	    uint_t subparam, uint_t *val_p);
68*21Sap25164 int	param_power_get(dcam_state_t *softc_p, uint_t *val_p);
69*21Sap25164 int	param_power_set(dcam_state_t *softc_p, uint_t val);
70*21Sap25164 int	param_vid_mode_get(dcam_state_t *softc_p, uint_t *val_p);
71*21Sap25164 int	param_vid_mode_set(dcam_state_t *softc_p, uint_t val);
72*21Sap25164 int	param_frame_rate_get(dcam_state_t *softc_p, uint_t *val_p);
73*21Sap25164 int	param_frame_rate_set(dcam_state_t *softc_p, uint_t val);
74*21Sap25164 int	param_ring_buff_capacity_get(dcam_state_t *softc_p, uint_t *val_p);
75*21Sap25164 int	param_ring_buff_capacity_set(dcam_state_t *softc_p, uint_t val);
76*21Sap25164 int	param_ring_buff_num_frames_ready_get(dcam_state_t *softc_p,
77*21Sap25164 	    uint_t *val_p);
78*21Sap25164 int	param_ring_buff_read_ptr_incr_get(dcam_state_t *softc_p, uint_t *val_p);
79*21Sap25164 int	param_ring_buff_read_ptr_incr_set(dcam_state_t *softc_p, uint_t val);
80*21Sap25164 int	param_frame_num_bytes_get(dcam_state_t *softc_p, uint_t *val_p);
81*21Sap25164 int	param_status_get(dcam_state_t *softc_p, uint_t *val_p);
82*21Sap25164 int	param_brightness_get(dcam_state_t *softc_p, uint_t subparam,
83*21Sap25164 	    uint_t *val_p);
84*21Sap25164 int	param_brightness_set(dcam_state_t *softc_p, uint_t subparam,
85*21Sap25164 	    uint_t val);
86*21Sap25164 int	param_exposure_get(dcam_state_t *softc_p, uint_t subparam,
87*21Sap25164 	    uint_t *val_p);
88*21Sap25164 int	param_exposure_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
89*21Sap25164 int	param_sharpness_get(dcam_state_t *softc_p, uint_t subparam,
90*21Sap25164 	    uint_t *val_p);
91*21Sap25164 int	param_sharpness_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
92*21Sap25164 int	param_white_balance_get(dcam_state_t *softc_p, uint_t subparam,
93*21Sap25164 	    uint_t *val_p);
94*21Sap25164 int	param_white_balance_set(dcam_state_t *softc_p, uint_t subparam,
95*21Sap25164 	    uint_t val);
96*21Sap25164 int	param_hue_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
97*21Sap25164 int	param_hue_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
98*21Sap25164 int	param_saturation_get(dcam_state_t *softc_p, uint_t subparam,
99*21Sap25164 	    uint_t *val_p);
100*21Sap25164 int	param_saturation_set(dcam_state_t *softc_p, uint_t subparam,
101*21Sap25164 	    uint_t val);
102*21Sap25164 int	param_gamma_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
103*21Sap25164 int	param_gamma_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
104*21Sap25164 int	param_shutter_get(dcam_state_t *softc_p, uint_t subparam,
105*21Sap25164 	    uint_t *val_p);
106*21Sap25164 int	param_shutter_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
107*21Sap25164 int	param_gain_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
108*21Sap25164 int	param_gain_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
109*21Sap25164 int	param_iris_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
110*21Sap25164 int	param_iris_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
111*21Sap25164 int	param_focus_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
112*21Sap25164 int	param_focus_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
113*21Sap25164 int	param_zoom_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
114*21Sap25164 int	param_zoom_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
115*21Sap25164 int	param_pan_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
116*21Sap25164 int	param_pan_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
117*21Sap25164 int	param_tilt_get(dcam_state_t *softc_p, uint_t subparam, uint_t *val_p);
118*21Sap25164 int	param_tilt_set(dcam_state_t *softc_p, uint_t subparam, uint_t val);
119*21Sap25164 
120*21Sap25164 #ifdef	__cplusplus
121*21Sap25164 }
122*21Sap25164 #endif
123*21Sap25164 
124*21Sap25164 #endif	/* _SYS_1394_TARGETS_DCAM1394_PARAM_H */
125