#
# Automatically generated make config: don't edit
# Linux/arm 2.6.38 Kernel Configuration
-# Fri Nov 4 16:16:41 2011
+# Wed Nov 9 15:44:43 2011
#
CONFIG_ARM=y
CONFIG_HAVE_PWM=y
CONFIG_IMX_HAVE_PLATFORM_IMX_PM=y
CONFIG_IMX_HAVE_PLATFORM_IMX_ASRC=y
CONFIG_IMX_HAVE_PLATFORM_IMX_MIPI_DSI=y
+CONFIG_IMX_HAVE_PLATFORM_IMX_MIPI_CSI2=y
#
# Freescale MXC Implementations
CONFIG_MEDIA_TUNER_XC5000=y
CONFIG_MEDIA_TUNER_MC44S803=y
CONFIG_VIDEO_V4L2=y
+CONFIG_VIDEOBUF_GEN=y
+CONFIG_VIDEOBUF_DMA_CONTIG=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
# CONFIG_MXC_CAMERA_OV2640 is not set
CONFIG_MXC_CAMERA_OV3640=m
CONFIG_MXC_CAMERA_OV5640=m
+CONFIG_MXC_CAMERA_OV5640_MIPI=m
CONFIG_MXC_CAMERA_OV5642=m
CONFIG_MXC_IPU_PRP_VF_SDC=m
CONFIG_MXC_IPU_PRP_ENC=m
CONFIG_USB_GADGET_VBUS_DRAW=2
CONFIG_USB_GADGET_SELECTED=y
CONFIG_USB_GADGET_ARC=y
-# CONFIG_USB_STATIC_IRAM_PPH is not set
CONFIG_USB_ARC=y
# CONFIG_USB_GADGET_FSL_USB2 is not set
# CONFIG_USB_GADGET_R8A66597 is not set
#
# CONFIG_ANATOP_THERMAL is not set
+#
+# MXC MIPI Support
+#
+CONFIG_MXC_MIPI_CSI2=y
+
#
# File systems
#
static struct clk *sata_clk;
static int esai_record;
static int spdif_en;
+static int mipi_sensor;
extern struct regulator *(*get_cpu_regulator)(void);
extern void (*put_cpu_regulator)(void);
/* camera powerdown */
MX6Q_PAD_CSI0_DAT5__GPIO_5_23,
-#ifdef CONFIG_MXC_CAMERA_OV5640_MIPI
- MX6Q_PAD_CSI0_MCLK__CCM_CLKO,
-#endif
-
MX6Q_PAD_EIM_D24__GPIO_3_24,
/* PWM1 */
MX6Q_PAD_ENET_REF_CLK__ESAI1_FSR,
};
+static iomux_v3_cfg_t mx6q_arm2_mipi_sensor_pads[] = {
+ MX6Q_PAD_CSI0_MCLK__CCM_CLKO,
+};
+
#define MX6Q_USDHC_PAD_SETTING(id, speed) \
mx6q_sd##id##_##speed##mhz[] = { \
MX6Q_PAD_SD##id##_CLK__USDHC##id##_CLK_##speed##MHZ, \
set_cpu_voltage = mx6_arm2_set_cpu_voltage;
}
+static int __init early_enable_mipi_sensor(char *p)
+{
+ mipi_sensor = 1;
+ return 0;
+}
+early_param("mipi_sensor", early_enable_mipi_sensor);
+
static inline void __init mx6q_csi0_io_init(void)
{
/* Camera reset */
ARRAY_SIZE(mx6q_arm2_can_pads));
}
+ if (mipi_sensor)
+ mxc_iomux_v3_setup_multiple_pads(mx6q_arm2_mipi_sensor_pads,
+ ARRAY_SIZE(mx6q_arm2_mipi_sensor_pads));
+
gp_reg_id = arm2_dvfscore_data.reg_id;
mx6q_arm2_init_uart();
imx6q_add_mipi_csi2(&mipi_csi2_pdata);
imx_asrc_data.asrc_audio_clk = clk_get(NULL, "asrc_serial_clk");
imx6q_add_asrc(&imx_asrc_data);
-#ifndef CONFIG_MXC_CAMERA_OV5640_MIPI
- mx6q_csi0_io_init();
-#endif
+ if (!mipi_sensor)
+ mx6q_csi0_io_init();
+
/* DISP0 Detect */
gpio_request(MX6Q_ARM2_DISP0_DET_INT, "disp0-detect");
gpio_direction_input(MX6Q_ARM2_DISP0_DET_INT);