1/*
2 * Copyright (C) 2010 Motorola, Inc.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
16 * 02111-1307, USA
17 */
18
19#ifndef _LINUX_MAX9635_H__
20#define _LINUX_MAX9635_H__
21
22#define MAX9635_NAME "MAX9635_als"
23#define FOPS_MAX9635_NAME "MAX9635"
24
25
26#ifdef __KERNEL__
27
28struct max9635_als_zone_data {
29	int  als_lower_threshold;
30	int  als_higher_threshold;
31};
32
33struct max9635_platform_data {
34	u8	configure;
35	u8	threshold_timer;
36	u8	def_low_threshold;
37	u8	def_high_threshold;
38	u32 lens_percent_t;
39	struct max9635_als_zone_data *als_lux_table;
40	u8  num_of_zones;
41	int (*power_on)(void);
42	int (*power_off)(void);
43};
44
45#endif	/* __KERNEL__ */
46
47#define MAX9635_IO			0xA3
48
49#define MAX9635_IOCTL_GET_ENABLE	_IOR(MAX9635_IO, 0x00, char)
50#define MAX9635_IOCTL_SET_ENABLE	_IOW(MAX9635_IO, 0x01, char)
51
52#endif	/* _LINUX_MAX9635_H__ */
53