Sekhar,
Thanks for your review. Comments inlined.
Regards,
Nori, Sekhar wrote:
On Fri, Sep 04, 2009 at 04:22:03, [email protected] wrote:
From: Santiago Nunez-Corrales <[email protected]>
This patch provides support for TVP7002 in architecture definitions
within DM365. Moved tvp7002 platform data here and cleaned up code.
Signed-off-by: Santiago Nunez-Corrales <[email protected]>
---
arch/arm/mach-davinci/board-dm365-evm.c | 65 +++++++++++++++++++++++++++++--
1 files changed, 61 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-davinci/board-dm365-evm.c
b/arch/arm/mach-davinci/board-dm365-evm.c
index 362ac62..4398d92 100644
--- a/arch/arm/mach-davinci/board-dm365-evm.c
+++ b/arch/arm/mach-davinci/board-dm365-evm.c
@@ -42,7 +42,9 @@
#include <mach/mmc.h>
#include <mach/nand.h>
#include <linux/videodev2.h>
+#include <media/davinci/videohd.h>
#include <media/tvp514x.h>
+#include <media/tvp7002.h>
static inline int have_imager(void)
@@ -53,14 +55,19 @@ static inline int have_imager(void)
static inline int have_tvp7002(void)
{
- /* REVISIT when it's supported, trigger via Kconfig */
+#ifdef CONFIG_VIDEO_TVP7002
+ return 1;
+#else
return 0;
+#endif
}
May be this can simply be:
#ifdef CONFIG_VIDEO_TVP7002
#define HAS_TVP7002 1
#else
#define HAS_TVP7002 0
#endif
However, you don't seem to use this in your
patch set anyway.
[SN] It is used in this same file. The reason for coding this is to
follow the standard in the implementation.
-
#define DM365_ASYNC_EMIF_CONTROL_BASE 0x01d10000
#define DM365_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
#define DM365_ASYNC_EMIF_DATA_CE1_BASE 0x04000000
+#define DM365_ASYNC_EMIF_DATA_CE1_REG3 0x18
+#define DM365_ASYNC_EMIF_VIDEO_MUX_MASK (0x07070707)
+#define DM365_ASYNC_EMIF_TVP7002_SEL (0x01010101)
Brackets unneeded.
[SN] Ok.
#define DM365_EVM_PHY_MASK (0x2)
#define DM365_EVM_MDIO_FREQUENCY (2200000) /* PHY bus frequency */
@@ -109,6 +116,15 @@ static struct tvp514x_platform_data tvp5146_pdata = {
.vs_polarity = 1
};
+/* tvp7002 platform data, used during reset and probe operations */
+static struct tvp7002_config tvp7002_pdata = {
+ .clk_polarity = 0,
+ .hs_polarity = 0,
+ .vs_polarity = 0,
+ .fid_polarity = 0,
+ .sog_polarity = 0,
+};
No need to initialize to 0s.
+
/* NOTE: this is geared for the standard config, with a socketed
* 2 GByte Micron NAND (MT29F16G08FAA) using 128KB sectors. If you
* swap chips, maybe with a different block size, partitioning may
@@ -243,6 +259,22 @@ static struct v4l2_input tvp5146_inputs[] = {
},
};
+#define TVP7002_STD_ALL (V4L2_STD_525P_60 | V4L2_STD_625P_50 |\
+ V4L2_STD_NTSC | V4L2_STD_PAL |\
+ V4L2_STD_720P_50 | V4L2_STD_720P_60 |\
+ V4L2_STD_1080I_50 | V4L2_STD_1080I_60 |\
+ V4L2_STD_1080P_50 | V4L2_STD_1080P_60)
+
+/* Inputs available at the TVP7002 */
+static struct v4l2_input tvp7002_inputs[] = {
+ {
+ .index = 0,
+ .name = "Component",
+ .type = V4L2_INPUT_TYPE_CAMERA,
+ .std = TVP7002_STD_ALL,
+ },
+};
+
/*
* this is the route info for connecting each input to decoder
* ouput that goes to vpfe. There is a one to one correspondence
@@ -276,6 +308,19 @@ static struct vpfe_subdev_info vpfe_sub_devs[] = {
I2C_BOARD_INFO("tvp5146", 0x5d),
.platform_data = &tvp5146_pdata,
},
+ },
+ {
+ .module_name = "tvp7002",
+ .grp_id = 0,
+ .ccdc_if_params = {
+ .if_type = VPFE_BT1120,
+ .hdpol = VPFE_PINPOL_POSITIVE,
+ .vdpol = VPFE_PINPOL_POSITIVE,
+ },
+ .board_info = {
+ I2C_BOARD_INFO("tvp7002", 0x5c),
+ .platform_data = &tvp7002_pdata,
+ },
}
};
@@ -439,6 +484,16 @@ static int __init cpld_leds_init(void)
/* run after subsys_initcall() for LEDs */
fs_initcall(cpld_leds_init);
+/* Set the input mux for TVP7002 */
+int tvp7002_set_input_mux(void)
This is not used in any of your later patches.
You wanted this to be static?
[SN] True, this should be static.
Thanks,
Sekhar
--
Santiago Nunez-Corrales, Eng.
RidgeRun Engineering, LLC
Guayabos, Curridabat
San Jose, Costa Rica
+(506) 2271 1487
+(506) 8313 0536
http://www.ridgerun.com
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source