1 /* 2 * S5K6AAFX camera sensor driver header 3 * 4 * Copyright (C) 2011 Samsung Electronics Co., Ltd. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 */ 11 12 #ifndef S5K6AA_H 13 #define S5K6AA_H 14 15 #include <media/v4l2-mediabus.h> 16 17 /** 18 * struct s5k6aa_gpio - data structure describing a GPIO 19 * @gpio: GPIO number 20 * @level: indicates active state of the @gpio 21 */ 22 struct s5k6aa_gpio { 23 int gpio; 24 int level; 25 }; 26 27 /** 28 * struct s5k6aa_platform_data - s5k6aa driver platform data 29 * @set_power: an additional callback to the board code, called 30 * after enabling the regulators and before switching 31 * the sensor off 32 * @mclk_frequency: sensor's master clock frequency in Hz 33 * @gpio_reset: GPIO driving RESET pin 34 * @gpio_stby: GPIO driving STBY pin 35 * @nlanes: maximum number of MIPI-CSI lanes used 36 * @horiz_flip: default horizontal image flip value, non zero to enable 37 * @vert_flip: default vertical image flip value, non zero to enable 38 */ 39 40 struct s5k6aa_platform_data { 41 int (*set_power)(int enable); 42 unsigned long mclk_frequency; 43 struct s5k6aa_gpio gpio_reset; 44 struct s5k6aa_gpio gpio_stby; 45 enum v4l2_mbus_type bus_type; 46 u8 nlanes; 47 u8 horiz_flip; 48 u8 vert_flip; 49 }; 50 51 #endif /* S5K6AA_H */ 52