OSDN Git Service

[media] ARM: omap2: cm-t35: Add regulators and clock for camera sensor
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Sat, 8 Feb 2014 16:32:11 +0000 (13:32 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Mon, 24 Feb 2014 16:10:14 +0000 (13:10 -0300)
The camera sensor will soon require regulators and clocks. Register
fixed regulators for its VAA and VDD power supplies and a fixed rate
clock for its master clock.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
arch/arm/mach-omap2/board-cm-t35.c

index 8dd0ec8..018353d 100644 (file)
@@ -16,6 +16,8 @@
  *
  */
 
+#include <linux/clk-provider.h>
+#include <linux/clkdev.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/platform_device.h>
@@ -542,8 +544,22 @@ static struct isp_platform_data cm_t35_isp_pdata = {
        .subdevs = cm_t35_isp_subdevs,
 };
 
+static struct regulator_consumer_supply cm_t35_camera_supplies[] = {
+       REGULATOR_SUPPLY("vaa", "3-005d"),
+       REGULATOR_SUPPLY("vdd", "3-005d"),
+};
+
 static void __init cm_t35_init_camera(void)
 {
+       struct clk *clk;
+
+       clk = clk_register_fixed_rate(NULL, "mt9t001-clkin", NULL, CLK_IS_ROOT,
+                                     48000000);
+       clk_register_clkdev(clk, NULL, "3-005d");
+
+       regulator_register_fixed(2, cm_t35_camera_supplies,
+                                ARRAY_SIZE(cm_t35_camera_supplies));
+
        if (omap3_init_camera(&cm_t35_isp_pdata) < 0)
                pr_warn("CM-T3x: Failed registering camera device!\n");
 }