1 /* 2 * Copyright (C) 2010-2011 Samsung Electronics Co., Ltd. 3 * 4 * S5P series MIPI CSI slave device support 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 version 2 as 8 * published by the Free Software Foundation. 9 */ 10 11 #ifndef __PLAT_SAMSUNG_MIPI_CSIS_H_ 12 #define __PLAT_SAMSUNG_MIPI_CSIS_H_ __FILE__ 13 14 struct platform_device; 15 16 /** 17 * struct s5p_platform_mipi_csis - platform data for S5P MIPI-CSIS driver 18 * @clk_rate: bus clock frequency 19 * @lanes: number of data lanes used 20 * @alignment: data alignment in bits 21 * @hs_settle: HS-RX settle time 22 * @fixed_phy_vdd: false to enable external D-PHY regulator management in the 23 * driver or true in case this regulator has no enable function 24 * @phy_enable: pointer to a callback controlling D-PHY enable/reset 25 */ 26 struct s5p_platform_mipi_csis { 27 unsigned long clk_rate; 28 u8 lanes; 29 u8 alignment; 30 u8 hs_settle; 31 bool fixed_phy_vdd; 32 int (*phy_enable)(struct platform_device *pdev, bool on); 33 }; 34 35 /** 36 * s5p_csis_phy_enable - global MIPI-CSI receiver D-PHY control 37 * @pdev: MIPI-CSIS platform device 38 * @on: true to enable D-PHY and deassert its reset 39 * false to disable D-PHY 40 */ 41 int s5p_csis_phy_enable(struct platform_device *pdev, bool on); 42 43 #endif /* __PLAT_SAMSUNG_MIPI_CSIS_H_ */ 44