Browse Source

OMAPDSS: SDI: change regulator handling

Regulator handling for DPI and SDI is currently handled in the core.c,
using the 'virtual' omapdss platform device. Nowadays we have proper
devices for both DPI and SDI, and so we can handle the regulators inside
the respective drivers.

This patch moves the regulator handling for SDI into sdi.c.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Archit Taneja <archit@ti.com>
Tomi Valkeinen 12 years ago
parent
commit
349c3d95f5
3 changed files with 3 additions and 23 deletions
  1. 0 15
      drivers/video/omap2/dss/core.c
  2. 0 1
      drivers/video/omap2/dss/dss.h
  3. 3 7
      drivers/video/omap2/dss/sdi.c

+ 0 - 15
drivers/video/omap2/dss/core.c

@@ -44,7 +44,6 @@ static struct {
 	struct platform_device *pdev;
 	struct platform_device *pdev;
 
 
 	struct regulator *vdds_dsi_reg;
 	struct regulator *vdds_dsi_reg;
-	struct regulator *vdds_sdi_reg;
 
 
 	const char *default_display_name;
 	const char *default_display_name;
 } core;
 } core;
@@ -95,20 +94,6 @@ struct regulator *dss_get_vdds_dsi(void)
 	return reg;
 	return reg;
 }
 }
 
 
-struct regulator *dss_get_vdds_sdi(void)
-{
-	struct regulator *reg;
-
-	if (core.vdds_sdi_reg != NULL)
-		return core.vdds_sdi_reg;
-
-	reg = devm_regulator_get(&core.pdev->dev, "vdds_sdi");
-	if (!IS_ERR(reg))
-		core.vdds_sdi_reg = reg;
-
-	return reg;
-}
-
 int dss_dsi_enable_pads(int dsi_id, unsigned lane_mask)
 int dss_dsi_enable_pads(int dsi_id, unsigned lane_mask)
 {
 {
 	struct omap_dss_board_info *board_data = core.pdev->dev.platform_data;
 	struct omap_dss_board_info *board_data = core.pdev->dev.platform_data;

+ 0 - 1
drivers/video/omap2/dss/dss.h

@@ -165,7 +165,6 @@ struct platform_device;
 struct platform_device *dss_get_core_pdev(void);
 struct platform_device *dss_get_core_pdev(void);
 struct bus_type *dss_get_bus(void);
 struct bus_type *dss_get_bus(void);
 struct regulator *dss_get_vdds_dsi(void);
 struct regulator *dss_get_vdds_dsi(void);
-struct regulator *dss_get_vdds_sdi(void);
 int dss_dsi_enable_pads(int dsi_id, unsigned lane_mask);
 int dss_dsi_enable_pads(int dsi_id, unsigned lane_mask);
 void dss_dsi_disable_pads(int dsi_id, unsigned lane_mask);
 void dss_dsi_disable_pads(int dsi_id, unsigned lane_mask);
 int dss_set_min_bus_tput(struct device *dev, unsigned long tput);
 int dss_set_min_bus_tput(struct device *dev, unsigned long tput);

+ 3 - 7
drivers/video/omap2/dss/sdi.c

@@ -267,14 +267,10 @@ static int sdi_init_regulator(void)
 	if (sdi.vdds_sdi_reg)
 	if (sdi.vdds_sdi_reg)
 		return 0;
 		return 0;
 
 
-	vdds_sdi = dss_get_vdds_sdi();
-
+	vdds_sdi = devm_regulator_get(&sdi.pdev->dev, "vdds_sdi");
 	if (IS_ERR(vdds_sdi)) {
 	if (IS_ERR(vdds_sdi)) {
-		vdds_sdi = devm_regulator_get(&sdi.pdev->dev, "vdds_sdi");
-		if (IS_ERR(vdds_sdi)) {
-			DSSERR("can't get VDDS_SDI regulator\n");
-			return PTR_ERR(vdds_sdi);
-		}
+		DSSERR("can't get VDDS_SDI regulator\n");
+		return PTR_ERR(vdds_sdi);
 	}
 	}
 
 
 	sdi.vdds_sdi_reg = vdds_sdi;
 	sdi.vdds_sdi_reg = vdds_sdi;