Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1582828 > unrolled thread

[PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display

Started byBartosz Golaszewski <bgolaszewski@baylibre.com>
First post2017-02-16 19:30 +0100
Last post2017-02-18 15:20 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2017-02-16 19:30 +0100
    Re: [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif  display Sekhar Nori <nsekhar@ti.com> - 2017-02-17 14:20 +0100
      Re: [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2017-02-17 14:40 +0100
    Re: [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif  display kbuild test robot <lkp@intel.com> - 2017-02-18 15:20 +0100

#1582828 — [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display

FromBartosz Golaszewski <bgolaszewski@baylibre.com>
Date2017-02-16 19:30 +0100
Subject[PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display
Message-ID<tbyYy-1KY-9@gated-at.bofh.it>
Similarly to vpif capture: we need to register the vpif display driver
and the corresponding adv7343 encoder in pdata-quirks as the DT
support is not complete - there isn't currently a way to define the
output_routing in the V4L2 drivers (c.f. s_routing) via DT.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Kevin Hilman <khilman@baylibre.com>
---
 arch/arm/mach-davinci/pdata-quirks.c | 69 +++++++++++++++++++++++++++++++++++-
 1 file changed, 68 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-davinci/pdata-quirks.c b/arch/arm/mach-davinci/pdata-quirks.c
index 3ca773f..c659c76 100644
--- a/arch/arm/mach-davinci/pdata-quirks.c
+++ b/arch/arm/mach-davinci/pdata-quirks.c
@@ -11,6 +11,7 @@
 #include <linux/of_platform.h>
 
 #include <media/i2c/tvp514x.h>
+#include <media/i2c/adv7343.h>
 
 #include <mach/common.h>
 #include <mach/da8xx.h>
@@ -106,7 +107,65 @@ static struct vpif_capture_config da850_vpif_capture_config = {
 	},
 	.card_name = "DA850/OMAP-L138 Video Capture",
 };
+#endif /* IS_ENABLED(CONFIG_VIDEO_DAVINCI_VPIF_CAPTURE) */
 
+#if IS_ENABLED(CONFIG_DA850_UI_SD_VIDEO_PORT)
+static struct adv7343_platform_data adv7343_pdata = {
+	.mode_config = {
+		.dac = { 1, 1, 1 },
+	},
+	.sd_config = {
+		.sd_dac_out = { 1 },
+	},
+};
+
+static struct vpif_subdev_info da850_vpif_subdev[] = {
+	{
+		.name = "adv7343",
+		.board_info = {
+			I2C_BOARD_INFO("adv7343", 0x2a),
+			.platform_data = &adv7343_pdata,
+		},
+	},
+};
+
+static const struct vpif_output da850_ch0_outputs[] = {
+	{
+		.output = {
+			.index = 0,
+			.name = "Composite",
+			.type = V4L2_OUTPUT_TYPE_ANALOG,
+			.capabilities = V4L2_OUT_CAP_STD,
+			.std = V4L2_STD_ALL,
+		},
+		.subdev_name = "adv7343",
+		.output_route = ADV7343_COMPOSITE_ID,
+	},
+	{
+		.output = {
+			.index = 1,
+			.name = "S-Video",
+			.type = V4L2_OUTPUT_TYPE_ANALOG,
+			.capabilities = V4L2_OUT_CAP_STD,
+			.std = V4L2_STD_ALL,
+		},
+		.subdev_name = "adv7343",
+		.output_route = ADV7343_SVIDEO_ID,
+	},
+};
+
+static struct vpif_display_config da850_vpif_display_config = {
+	.subdevinfo   = da850_vpif_subdev,
+	.subdev_count = ARRAY_SIZE(da850_vpif_subdev),
+	.chan_config[0] = {
+		.outputs = da850_ch0_outputs,
+		.output_count = ARRAY_SIZE(da850_ch0_outputs),
+	},
+	.card_name    = "DA850/OMAP-L138 Video Display",
+};
+#endif /* defined(CONFIG_DA850_UI_SD_VIDEO_PORT) */
+
+#if IS_ENABLED(CONFIG_VIDEO_DAVINCI_VPIF_CAPTURE) || IS_ENABLED(CONFIG_DA850_UI_SD_VIDEO_PORT)
 static void __init da850_vpif_legacy_init(void)
 {
 	int ret;
@@ -119,8 +178,16 @@ static void __init da850_vpif_legacy_init(void)
 	if (ret)
 		pr_warn("%s: VPIF capture setup failed: %d\n",
 			__func__, ret);
+
+	/* LCDK doesn't support VPIF display */
+	if (of_machine_is_compatible("ti,da850-evm")) {
+		ret = da850_register_vpif_display(&da850_vpif_display_config);
+		if (ret)
+			pr_warn("%s: VPIF display setup failed: %d\n",
+				__func__, ret);
+	}
 }
-#endif
+#endif /* IS_ENABLED(CONFIG_VIDEO_DAVINCI_VPIF_CAPTURE) || IS_ENABLED(CONFIG_DA850_UI_SD_VIDEO_PORT) */
 
 static void pdata_quirks_check(struct pdata_init *quirks)
 {
-- 
2.9.3

[toc] | [next] | [standalone]


#1583400 — Re: [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display

FromSekhar Nori <nsekhar@ti.com>
Date2017-02-17 14:20 +0100
SubjectRe: [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display
Message-ID<tbQC6-4KS-9@gated-at.bofh.it>
In reply to#1582828
On Thursday 16 February 2017 11:51 PM, Bartosz Golaszewski wrote:
> Similarly to vpif capture: we need to register the vpif display driver
> and the corresponding adv7343 encoder in pdata-quirks as the DT
> support is not complete - there isn't currently a way to define the
> output_routing in the V4L2 drivers (c.f. s_routing) via DT.
> 
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> Reviewed-by: Kevin Hilman <khilman@baylibre.com>
> ---
>  arch/arm/mach-davinci/pdata-quirks.c | 69 +++++++++++++++++++++++++++++++++++-
>  1 file changed, 68 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-davinci/pdata-quirks.c b/arch/arm/mach-davinci/pdata-quirks.c
> index 3ca773f..c659c76 100644
> --- a/arch/arm/mach-davinci/pdata-quirks.c
> +++ b/arch/arm/mach-davinci/pdata-quirks.c

> +#endif /* IS_ENABLED(CONFIG_VIDEO_DAVINCI_VPIF_CAPTURE) */
>  
> +#if IS_ENABLED(CONFIG_DA850_UI_SD_VIDEO_PORT)
> +static struct adv7343_platform_data adv7343_pdata = {
> +	.mode_config = {
> +		.dac = { 1, 1, 1 },
> +	},
> +	.sd_config = {
> +		.sd_dac_out = { 1 },
> +	},
> +};
> +
> +static struct vpif_subdev_info da850_vpif_subdev[] = {
> +	{
> +		.name = "adv7343",
> +		.board_info = {
> +			I2C_BOARD_INFO("adv7343", 0x2a),
> +			.platform_data = &adv7343_pdata,
> +		},
> +	},
> +};
> +
> +static const struct vpif_output da850_ch0_outputs[] = {
> +	{
> +		.output = {
> +			.index = 0,
> +			.name = "Composite",
> +			.type = V4L2_OUTPUT_TYPE_ANALOG,
> +			.capabilities = V4L2_OUT_CAP_STD,
> +			.std = V4L2_STD_ALL,
> +		},
> +		.subdev_name = "adv7343",
> +		.output_route = ADV7343_COMPOSITE_ID,
> +	},
> +	{
> +		.output = {
> +			.index = 1,
> +			.name = "S-Video",
> +			.type = V4L2_OUTPUT_TYPE_ANALOG,
> +			.capabilities = V4L2_OUT_CAP_STD,
> +			.std = V4L2_STD_ALL,
> +		},
> +		.subdev_name = "adv7343",
> +		.output_route = ADV7343_SVIDEO_ID,
> +	},
> +};
> +
> +static struct vpif_display_config da850_vpif_display_config = {
> +	.subdevinfo   = da850_vpif_subdev,
> +	.subdev_count = ARRAY_SIZE(da850_vpif_subdev),
> +	.chan_config[0] = {
> +		.outputs = da850_ch0_outputs,
> +		.output_count = ARRAY_SIZE(da850_ch0_outputs),
> +	},
> +	.card_name    = "DA850/OMAP-L138 Video Display",
> +};
> +#endif /* defined(CONFIG_DA850_UI_SD_VIDEO_PORT) */
> +
> +#if IS_ENABLED(CONFIG_VIDEO_DAVINCI_VPIF_CAPTURE) || IS_ENABLED(CONFIG_DA850_UI_SD_VIDEO_PORT)
>  static void __init da850_vpif_legacy_init(void)
>  {
>  	int ret;
> @@ -119,8 +178,16 @@ static void __init da850_vpif_legacy_init(void)
>  	if (ret)
>  		pr_warn("%s: VPIF capture setup failed: %d\n",
>  			__func__, ret);
> +
> +	/* LCDK doesn't support VPIF display */
> +	if (of_machine_is_compatible("ti,da850-evm")) {
> +		ret = da850_register_vpif_display(&da850_vpif_display_config);

This fails to build when CONFIG_DA850_UI_SD_VIDEO_PORT is switched off.
Probably means you need separate functions for registering capture and
display parts.

I haven't reviewed rest of the patchset yet. Just noticed these while
applying them for some testing. You may want to wait sometime before
sending the next version.

Thanks,
Sekhar

[toc] | [prev] | [next] | [standalone]


#1583411

FromBartosz Golaszewski <bgolaszewski@baylibre.com>
Date2017-02-17 14:40 +0100
Message-ID<tbQVs-4RP-21@gated-at.bofh.it>
In reply to#1583400
2017-02-17 14:15 GMT+01:00 Sekhar Nori <nsekhar@ti.com>:
> On Thursday 16 February 2017 11:51 PM, Bartosz Golaszewski wrote:
>> Similarly to vpif capture: we need to register the vpif display driver
>> and the corresponding adv7343 encoder in pdata-quirks as the DT
>> support is not complete - there isn't currently a way to define the
>> output_routing in the V4L2 drivers (c.f. s_routing) via DT.
>>
>> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>> Reviewed-by: Kevin Hilman <khilman@baylibre.com>
>> ---
>>  arch/arm/mach-davinci/pdata-quirks.c | 69 +++++++++++++++++++++++++++++++++++-
>>  1 file changed, 68 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/mach-davinci/pdata-quirks.c b/arch/arm/mach-davinci/pdata-quirks.c
>> index 3ca773f..c659c76 100644
>> --- a/arch/arm/mach-davinci/pdata-quirks.c
>> +++ b/arch/arm/mach-davinci/pdata-quirks.c
>
>> +#endif /* IS_ENABLED(CONFIG_VIDEO_DAVINCI_VPIF_CAPTURE) */
>>
>> +#if IS_ENABLED(CONFIG_DA850_UI_SD_VIDEO_PORT)
>> +static struct adv7343_platform_data adv7343_pdata = {
>> +     .mode_config = {
>> +             .dac = { 1, 1, 1 },
>> +     },
>> +     .sd_config = {
>> +             .sd_dac_out = { 1 },
>> +     },
>> +};
>> +
>> +static struct vpif_subdev_info da850_vpif_subdev[] = {
>> +     {
>> +             .name = "adv7343",
>> +             .board_info = {
>> +                     I2C_BOARD_INFO("adv7343", 0x2a),
>> +                     .platform_data = &adv7343_pdata,
>> +             },
>> +     },
>> +};
>> +
>> +static const struct vpif_output da850_ch0_outputs[] = {
>> +     {
>> +             .output = {
>> +                     .index = 0,
>> +                     .name = "Composite",
>> +                     .type = V4L2_OUTPUT_TYPE_ANALOG,
>> +                     .capabilities = V4L2_OUT_CAP_STD,
>> +                     .std = V4L2_STD_ALL,
>> +             },
>> +             .subdev_name = "adv7343",
>> +             .output_route = ADV7343_COMPOSITE_ID,
>> +     },
>> +     {
>> +             .output = {
>> +                     .index = 1,
>> +                     .name = "S-Video",
>> +                     .type = V4L2_OUTPUT_TYPE_ANALOG,
>> +                     .capabilities = V4L2_OUT_CAP_STD,
>> +                     .std = V4L2_STD_ALL,
>> +             },
>> +             .subdev_name = "adv7343",
>> +             .output_route = ADV7343_SVIDEO_ID,
>> +     },
>> +};
>> +
>> +static struct vpif_display_config da850_vpif_display_config = {
>> +     .subdevinfo   = da850_vpif_subdev,
>> +     .subdev_count = ARRAY_SIZE(da850_vpif_subdev),
>> +     .chan_config[0] = {
>> +             .outputs = da850_ch0_outputs,
>> +             .output_count = ARRAY_SIZE(da850_ch0_outputs),
>> +     },
>> +     .card_name    = "DA850/OMAP-L138 Video Display",
>> +};
>> +#endif /* defined(CONFIG_DA850_UI_SD_VIDEO_PORT) */
>> +
>> +#if IS_ENABLED(CONFIG_VIDEO_DAVINCI_VPIF_CAPTURE) || IS_ENABLED(CONFIG_DA850_UI_SD_VIDEO_PORT)
>>  static void __init da850_vpif_legacy_init(void)
>>  {
>>       int ret;
>> @@ -119,8 +178,16 @@ static void __init da850_vpif_legacy_init(void)
>>       if (ret)
>>               pr_warn("%s: VPIF capture setup failed: %d\n",
>>                       __func__, ret);
>> +
>> +     /* LCDK doesn't support VPIF display */
>> +     if (of_machine_is_compatible("ti,da850-evm")) {
>> +             ret = da850_register_vpif_display(&da850_vpif_display_config);
>
> This fails to build when CONFIG_DA850_UI_SD_VIDEO_PORT is switched off.
> Probably means you need separate functions for registering capture and
> display parts.
>
> I haven't reviewed rest of the patchset yet. Just noticed these while
> applying them for some testing. You may want to wait sometime before
> sending the next version.
>
> Thanks,
> Sekhar
>

Eek! My bad, didn't test different configs with that.

Thanks,
Bartosz

[toc] | [prev] | [next] | [standalone]


#1583907 — Re: [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display

Fromkbuild test robot <lkp@intel.com>
Date2017-02-18 15:20 +0100
SubjectRe: [PATCH 4/4] ARM: davinci: add pdata-quirks for da850-evm vpif display
Message-ID<tce1H-2Xv-3@gated-at.bofh.it>
In reply to#1582828

[Multipart message — attachments visible in raw view] — view raw

Hi Bartosz,

[auto build test ERROR on arm-soc/for-next]
[also build test ERROR on next-20170217]
[cannot apply to v4.10-rc8]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Bartosz-Golaszewski/ARM-davinci-vpif-capture-display-support/20170217-044437
base:   https://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git for-next
config: arm-davinci_all_defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=arm 

All errors (new ones prefixed by >>):

   arch/arm/mach-davinci/pdata-quirks.c: In function 'da850_vpif_legacy_init':
>> arch/arm/mach-davinci/pdata-quirks.c:184:38: error: 'da850_vpif_display_config' undeclared (first use in this function)
      ret = da850_register_vpif_display(&da850_vpif_display_config);
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/arm/mach-davinci/pdata-quirks.c:184:38: note: each undeclared identifier is reported only once for each function it appears in

vim +/da850_vpif_display_config +184 arch/arm/mach-davinci/pdata-quirks.c

   178		if (ret)
   179			pr_warn("%s: VPIF capture setup failed: %d\n",
   180				__func__, ret);
   181	
   182		/* LCDK doesn't support VPIF display */
   183		if (of_machine_is_compatible("ti,da850-evm")) {
 > 184			ret = da850_register_vpif_display(&da850_vpif_display_config);
   185			if (ret)
   186				pr_warn("%s: VPIF display setup failed: %d\n",
   187					__func__, ret);

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web