diff options
author | Sylwester Nawrocki <s.nawrocki@samsung.com> | 2011-03-10 07:53:36 -0500 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2011-03-11 01:49:00 -0500 |
commit | e24d208de6bc779c6bd97523cde2665a33f2be4d (patch) | |
tree | 0846fd8a3a50abe246920d470827e35ffd983f96 /arch | |
parent | 03c4cd397cba38fc621a33c84d9698d39b286036 (diff) |
ARM: S5P: Extend MIPI-CSIS platform_data with the PHY control callback
Extend MIPI-CSIS driver's platform data structure with a callback
for D-PHY enable and reset control. Also add a flag indicating
whether the external MIPI-CSI (VDD18_MIPI) power supply should
be managed in the driver through the "vdd" power supply. On some
boards this regulator may be a fixed voltage regulator without
an inhibit function.
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/plat-s5p/include/plat/mipi_csis.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/plat-s5p/include/plat/mipi_csis.h b/arch/arm/plat-s5p/include/plat/mipi_csis.h index 8b3ada88df7a..9bd254c5ed22 100644 --- a/arch/arm/plat-s5p/include/plat/mipi_csis.h +++ b/arch/arm/plat-s5p/include/plat/mipi_csis.h | |||
@@ -11,18 +11,33 @@ | |||
11 | #ifndef PLAT_S5P_MIPI_CSIS_H_ | 11 | #ifndef PLAT_S5P_MIPI_CSIS_H_ |
12 | #define PLAT_S5P_MIPI_CSIS_H_ __FILE__ | 12 | #define PLAT_S5P_MIPI_CSIS_H_ __FILE__ |
13 | 13 | ||
14 | struct platform_device; | ||
15 | |||
14 | /** | 16 | /** |
15 | * struct s5p_platform_mipi_csis - platform data for S5P MIPI-CSIS driver | 17 | * struct s5p_platform_mipi_csis - platform data for S5P MIPI-CSIS driver |
16 | * @clk_rate: bus clock frequency | 18 | * @clk_rate: bus clock frequency |
17 | * @lanes: number of data lanes used | 19 | * @lanes: number of data lanes used |
18 | * @alignment: data alignment in bits | 20 | * @alignment: data alignment in bits |
19 | * @hs_settle: HS-RX settle time | 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 | ||
20 | */ | 25 | */ |
21 | struct s5p_platform_mipi_csis { | 26 | struct s5p_platform_mipi_csis { |
22 | unsigned long clk_rate; | 27 | unsigned long clk_rate; |
23 | u8 lanes; | 28 | u8 lanes; |
24 | u8 alignment; | 29 | u8 alignment; |
25 | u8 hs_settle; | 30 | u8 hs_settle; |
31 | bool fixed_phy_vdd; | ||
32 | int (*phy_enable)(struct platform_device *pdev, bool on); | ||
26 | }; | 33 | }; |
27 | 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 | |||
28 | #endif /* PLAT_S5P_MIPI_CSIS_H_ */ | 43 | #endif /* PLAT_S5P_MIPI_CSIS_H_ */ |