* [PATCH 0/3] media: soc_camera: rcar_vin: add rcar-gen3 support
@ 2016-01-11 18:00 Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string Yoshihiro Kaneko
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Yoshihiro Kaneko @ 2016-01-11 18:00 UTC (permalink / raw)
To: linux-media; +Cc: Guennadi Liakhovetski, Simon Horman, Magnus Damm, linux-sh
* add rcar compatibility strings
This series adds generic rcar and SoC-specific r8a7795 compatibility
strings to the rcar-vin driver. The intention is to provide a complete
set of compatibility strings for known R-Car Gen2 and Gen3 SoCs.
* add ARGB8888 capture format support
This series contain a patch which adds the ARGB8888 capture format
support for R-Car Gen3.
* compile tested only
This series is based on the master branch of linuxtv.org/media_tree.git.
Koji Matsuoka (1):
media: soc_camera: rcar_vin: Add ARGB8888 caputre format support
Yoshihiko Mori (1):
media: soc_camera: rcar_vin: Add R-Car Gen3 support
Yoshihiro Kaneko (1):
media: soc_camera: rcar_vin: Add rcar fallback compatibility string
.../devicetree/bindings/media/rcar_vin.txt | 9 +++++++-
drivers/media/platform/soc_camera/rcar_vin.c | 24 ++++++++++++++++++++--
2 files changed, 30 insertions(+), 3 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string
2016-01-11 18:00 [PATCH 0/3] media: soc_camera: rcar_vin: add rcar-gen3 support Yoshihiro Kaneko
@ 2016-01-11 18:00 ` Yoshihiro Kaneko
2016-01-11 18:19 ` Geert Uytterhoeven
2016-01-11 18:00 ` [PATCH 2/3] media: soc_camera: rcar_vin: Add R-Car Gen3 support Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 3/3] media: soc_camera: rcar_vin: Add ARGB8888 caputre format support Yoshihiro Kaneko
2 siblings, 1 reply; 8+ messages in thread
From: Yoshihiro Kaneko @ 2016-01-11 18:00 UTC (permalink / raw)
To: linux-media; +Cc: Guennadi Liakhovetski, Simon Horman, Magnus Damm, linux-sh
Add fallback compatibility string for R-Car Gen2 and Gen3, This is
in keeping with the fallback scheme being adopted wherever appropriate
for drivers for Renesas SoCs.
Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
---
Documentation/devicetree/bindings/media/rcar_vin.txt | 8 +++++++-
drivers/media/platform/soc_camera/rcar_vin.c | 3 +++
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/media/rcar_vin.txt b/Documentation/devicetree/bindings/media/rcar_vin.txt
index 9dafe6b..c13ec5a 100644
--- a/Documentation/devicetree/bindings/media/rcar_vin.txt
+++ b/Documentation/devicetree/bindings/media/rcar_vin.txt
@@ -6,12 +6,18 @@ family of devices. The current blocks are always slaves and suppot one input
channel which can be either RGB, YUYV or BT656.
- compatible: Must be one of the following
+ - "renesas,rcar-gen2-vin" for R-Car Gen2 Series
+ - "renesas,rcar-gen3-vin" for R-Car Gen3 Series
- "renesas,vin-r8a7794" for the R8A7794 device
- "renesas,vin-r8a7793" for the R8A7793 device
- "renesas,vin-r8a7791" for the R8A7791 device
- "renesas,vin-r8a7790" for the R8A7790 device
- "renesas,vin-r8a7779" for the R8A7779 device
- "renesas,vin-r8a7778" for the R8A7778 device
+
+ When compatible with the generic version, nodes must list the SoC-specific
+ version corresponding to the platform first followed by the generic version.
+
- reg: the register base and size for the device registers
- interrupts: the interrupt for the device
- clocks: Reference to the parent clock
@@ -36,7 +42,7 @@ Device node example
};
vin0: vin@0xe6ef0000 {
- compatible = "renesas,vin-r8a7790";
+ compatible = "renesas,vin-r8a7790","renesas,rcar-gen2-vin";
clocks = <&mstp8_clks R8A7790_CLK_VIN0>;
reg = <0 0xe6ef0000 0 0x1000>;
interrupts = <0 188 IRQ_TYPE_LEVEL_HIGH>;
diff --git a/drivers/media/platform/soc_camera/rcar_vin.c b/drivers/media/platform/soc_camera/rcar_vin.c
index b7fd695..cccd859 100644
--- a/drivers/media/platform/soc_camera/rcar_vin.c
+++ b/drivers/media/platform/soc_camera/rcar_vin.c
@@ -143,6 +143,7 @@
#define RCAR_VIN_BT656 (1 << 3)
enum chip_id {
+ RCAR_GEN3,
RCAR_GEN2,
RCAR_H1,
RCAR_M1,
@@ -1818,6 +1819,8 @@ static struct soc_camera_host_ops rcar_vin_host_ops = {
#ifdef CONFIG_OF
static const struct of_device_id rcar_vin_of_table[] = {
+ { .compatible = "renesas,rcar-gen2-vin", .data = (void *)RCAR_GEN2 },
+ { .compatible = "renesas,rcar-gen3-vin", .data = (void *)RCAR_GEN3 },
{ .compatible = "renesas,vin-r8a7794", .data = (void *)RCAR_GEN2 },
{ .compatible = "renesas,vin-r8a7793", .data = (void *)RCAR_GEN2 },
{ .compatible = "renesas,vin-r8a7791", .data = (void *)RCAR_GEN2 },
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/3] media: soc_camera: rcar_vin: Add R-Car Gen3 support
2016-01-11 18:00 [PATCH 0/3] media: soc_camera: rcar_vin: add rcar-gen3 support Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string Yoshihiro Kaneko
@ 2016-01-11 18:00 ` Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 3/3] media: soc_camera: rcar_vin: Add ARGB8888 caputre format support Yoshihiro Kaneko
2 siblings, 0 replies; 8+ messages in thread
From: Yoshihiro Kaneko @ 2016-01-11 18:00 UTC (permalink / raw)
To: linux-media; +Cc: Guennadi Liakhovetski, Simon Horman, Magnus Damm, linux-sh
From: Yoshihiko Mori <yoshihiko.mori.nx@renesas.com>
Simply documents new compatibility string.
As a previous patch adds a generic R-Car Gen3 compatibility string
there appears to be no need for a driver updates.
Signed-off-by: Yoshihiko Mori <yoshihiko.mori.nx@renesas.com>
Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
---
Documentation/devicetree/bindings/media/rcar_vin.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/media/rcar_vin.txt b/Documentation/devicetree/bindings/media/rcar_vin.txt
index c13ec5a..e1a92c9 100644
--- a/Documentation/devicetree/bindings/media/rcar_vin.txt
+++ b/Documentation/devicetree/bindings/media/rcar_vin.txt
@@ -8,6 +8,7 @@ channel which can be either RGB, YUYV or BT656.
- compatible: Must be one of the following
- "renesas,rcar-gen2-vin" for R-Car Gen2 Series
- "renesas,rcar-gen3-vin" for R-Car Gen3 Series
+ - "renesas,vin-r8a7795" for the R8A7795 device
- "renesas,vin-r8a7794" for the R8A7794 device
- "renesas,vin-r8a7793" for the R8A7793 device
- "renesas,vin-r8a7791" for the R8A7791 device
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 3/3] media: soc_camera: rcar_vin: Add ARGB8888 caputre format support
2016-01-11 18:00 [PATCH 0/3] media: soc_camera: rcar_vin: add rcar-gen3 support Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 2/3] media: soc_camera: rcar_vin: Add R-Car Gen3 support Yoshihiro Kaneko
@ 2016-01-11 18:00 ` Yoshihiro Kaneko
2016-01-11 18:35 ` Sergei Shtylyov
2 siblings, 1 reply; 8+ messages in thread
From: Yoshihiro Kaneko @ 2016-01-11 18:00 UTC (permalink / raw)
To: linux-media; +Cc: Guennadi Liakhovetski, Simon Horman, Magnus Damm, linux-sh
From: Koji Matsuoka <koji.matsuoka.xm@renesas.com>
This patch adds ARGB8888 capture format support for R-Car Gen3.
Signed-off-by: Koji Matsuoka <koji.matsuoka.xm@renesas.com>
Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
---
drivers/media/platform/soc_camera/rcar_vin.c | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/drivers/media/platform/soc_camera/rcar_vin.c b/drivers/media/platform/soc_camera/rcar_vin.c
index cccd859..afe27bb 100644
--- a/drivers/media/platform/soc_camera/rcar_vin.c
+++ b/drivers/media/platform/soc_camera/rcar_vin.c
@@ -124,7 +124,7 @@
#define VNDMR_EXRGB (1 << 8)
#define VNDMR_BPSM (1 << 4)
#define VNDMR_DTMD_YCSEP (1 << 1)
-#define VNDMR_DTMD_ARGB1555 (1 << 0)
+#define VNDMR_DTMD_ARGB (1 << 0)
/* Video n Data Mode Register 2 bits */
#define VNDMR2_VPS (1 << 30)
@@ -643,7 +643,7 @@ static int rcar_vin_setup(struct rcar_vin_priv *priv)
output_is_yuv = true;
break;
case V4L2_PIX_FMT_RGB555X:
- dmr = VNDMR_DTMD_ARGB1555;
+ dmr = VNDMR_DTMD_ARGB;
break;
case V4L2_PIX_FMT_RGB565:
dmr = 0;
@@ -654,6 +654,14 @@ static int rcar_vin_setup(struct rcar_vin_priv *priv)
dmr = VNDMR_EXRGB;
break;
}
+ case V4L2_PIX_FMT_ARGB32:
+ if (priv->chip == RCAR_GEN3)
+ dmr = VNDMR_EXRGB | VNDMR_DTMD_ARGB;
+ else {
+ dev_err(icd->parent, "Not support format\n");
+ return -EINVAL;
+ }
+ break;
default:
dev_warn(icd->parent, "Invalid fourcc format (0x%x)\n",
icd->current_fmt->host_fmt->fourcc);
@@ -1304,6 +1312,14 @@ static const struct soc_mbus_pixelfmt rcar_vin_formats[] = {
.order = SOC_MBUS_ORDER_LE,
.layout = SOC_MBUS_LAYOUT_PACKED,
},
+ {
+ .fourcc = V4L2_PIX_FMT_ARGB32,
+ .name = "ARGB8888",
+ .bits_per_sample = 32,
+ .packing = SOC_MBUS_PACKING_NONE,
+ .order = SOC_MBUS_ORDER_LE,
+ .layout = SOC_MBUS_LAYOUT_PACKED,
+ },
};
static int rcar_vin_get_formats(struct soc_camera_device *icd, unsigned int idx,
@@ -1611,6 +1627,7 @@ static int rcar_vin_set_fmt(struct soc_camera_device *icd,
case V4L2_PIX_FMT_RGB32:
can_scale = priv->chip != RCAR_E1;
break;
+ case V4L2_PIX_FMT_ARGB32:
case V4L2_PIX_FMT_UYVY:
case V4L2_PIX_FMT_YUYV:
case V4L2_PIX_FMT_RGB565:
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string
2016-01-11 18:00 ` [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string Yoshihiro Kaneko
@ 2016-01-11 18:19 ` Geert Uytterhoeven
2016-01-11 18:27 ` Yoshihiro Kaneko
0 siblings, 1 reply; 8+ messages in thread
From: Geert Uytterhoeven @ 2016-01-11 18:19 UTC (permalink / raw)
To: Yoshihiro Kaneko
Cc: Linux Media Mailing List, Guennadi Liakhovetski, Simon Horman,
Magnus Damm, Linux-sh list
Hi Kaneko-san,
On Mon, Jan 11, 2016 at 7:00 PM, Yoshihiro Kaneko <ykaneko0929@gmail.com> wrote:
> --- a/drivers/media/platform/soc_camera/rcar_vin.c
> +++ b/drivers/media/platform/soc_camera/rcar_vin.c
> @@ -143,6 +143,7 @@
> #define RCAR_VIN_BT656 (1 << 3)
>
> enum chip_id {
> + RCAR_GEN3,
> RCAR_GEN2,
> RCAR_H1,
> RCAR_M1,
> @@ -1818,6 +1819,8 @@ static struct soc_camera_host_ops rcar_vin_host_ops = {
>
> #ifdef CONFIG_OF
> static const struct of_device_id rcar_vin_of_table[] = {
> + { .compatible = "renesas,rcar-gen2-vin", .data = (void *)RCAR_GEN2 },
> + { .compatible = "renesas,rcar-gen3-vin", .data = (void *)RCAR_GEN3 },
Please add the generic compatible values at the end of the list, so SoC-specific
ones take precedence.
> { .compatible = "renesas,vin-r8a7794", .data = (void *)RCAR_GEN2 },
> { .compatible = "renesas,vin-r8a7793", .data = (void *)RCAR_GEN2 },
> { .compatible = "renesas,vin-r8a7791", .data = (void *)RCAR_GEN2 },
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string
2016-01-11 18:19 ` Geert Uytterhoeven
@ 2016-01-11 18:27 ` Yoshihiro Kaneko
0 siblings, 0 replies; 8+ messages in thread
From: Yoshihiro Kaneko @ 2016-01-11 18:27 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Linux Media Mailing List, Guennadi Liakhovetski, Simon Horman,
Magnus Damm, Linux-sh list
Hi Geert-san,
2016-01-12 3:19 GMT+09:00 Geert Uytterhoeven <geert@linux-m68k.org>:
> Hi Kaneko-san,
>
> On Mon, Jan 11, 2016 at 7:00 PM, Yoshihiro Kaneko <ykaneko0929@gmail.com> wrote:
>> --- a/drivers/media/platform/soc_camera/rcar_vin.c
>> +++ b/drivers/media/platform/soc_camera/rcar_vin.c
>> @@ -143,6 +143,7 @@
>> #define RCAR_VIN_BT656 (1 << 3)
>>
>> enum chip_id {
>> + RCAR_GEN3,
>> RCAR_GEN2,
>> RCAR_H1,
>> RCAR_M1,
>> @@ -1818,6 +1819,8 @@ static struct soc_camera_host_ops rcar_vin_host_ops = {
>>
>> #ifdef CONFIG_OF
>> static const struct of_device_id rcar_vin_of_table[] = {
>> + { .compatible = "renesas,rcar-gen2-vin", .data = (void *)RCAR_GEN2 },
>> + { .compatible = "renesas,rcar-gen3-vin", .data = (void *)RCAR_GEN3 },
>
> Please add the generic compatible values at the end of the list, so SoC-specific
> ones take precedence.
Oh, that makes sense.
I will fix it soon.
Thanks,
kaneko
>
>> { .compatible = "renesas,vin-r8a7794", .data = (void *)RCAR_GEN2 },
>> { .compatible = "renesas,vin-r8a7793", .data = (void *)RCAR_GEN2 },
>> { .compatible = "renesas,vin-r8a7791", .data = (void *)RCAR_GEN2 },
>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
> -- Linus Torvalds
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 3/3] media: soc_camera: rcar_vin: Add ARGB8888 caputre format support
2016-01-11 18:00 ` [PATCH 3/3] media: soc_camera: rcar_vin: Add ARGB8888 caputre format support Yoshihiro Kaneko
@ 2016-01-11 18:35 ` Sergei Shtylyov
2016-01-11 18:46 ` Yoshihiro Kaneko
0 siblings, 1 reply; 8+ messages in thread
From: Sergei Shtylyov @ 2016-01-11 18:35 UTC (permalink / raw)
To: Yoshihiro Kaneko, linux-media
Cc: Guennadi Liakhovetski, Simon Horman, Magnus Damm, linux-sh
Hello.
On 01/11/2016 09:00 PM, Yoshihiro Kaneko wrote:
> From: Koji Matsuoka <koji.matsuoka.xm@renesas.com>
>
> This patch adds ARGB8888 capture format support for R-Car Gen3.
>
> Signed-off-by: Koji Matsuoka <koji.matsuoka.xm@renesas.com>
> Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
> ---
> drivers/media/platform/soc_camera/rcar_vin.c | 21 +++++++++++++++++++--
> 1 file changed, 19 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/platform/soc_camera/rcar_vin.c b/drivers/media/platform/soc_camera/rcar_vin.c
> index cccd859..afe27bb 100644
> --- a/drivers/media/platform/soc_camera/rcar_vin.c
> +++ b/drivers/media/platform/soc_camera/rcar_vin.c
[...]
> @@ -654,6 +654,14 @@ static int rcar_vin_setup(struct rcar_vin_priv *priv)
> dmr = VNDMR_EXRGB;
> break;
> }
> + case V4L2_PIX_FMT_ARGB32:
> + if (priv->chip == RCAR_GEN3)
> + dmr = VNDMR_EXRGB | VNDMR_DTMD_ARGB;
> + else {
Kernel coding style dictates using {} in all *if* branches if at least one
branch has them.
> + dev_err(icd->parent, "Not support format\n");
> + return -EINVAL;
> + }
> + break;
> default:
> dev_warn(icd->parent, "Invalid fourcc format (0x%x)\n",
> icd->current_fmt->host_fmt->fourcc);
[...]
MBR, Sergei
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 3/3] media: soc_camera: rcar_vin: Add ARGB8888 caputre format support
2016-01-11 18:35 ` Sergei Shtylyov
@ 2016-01-11 18:46 ` Yoshihiro Kaneko
0 siblings, 0 replies; 8+ messages in thread
From: Yoshihiro Kaneko @ 2016-01-11 18:46 UTC (permalink / raw)
To: Sergei Shtylyov
Cc: Linux Media Mailing List, Guennadi Liakhovetski, Simon Horman,
Magnus Damm, Linux-sh list
Hi Sergei,
2016-01-12 3:35 GMT+09:00 Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>:
> Hello.
>
> On 01/11/2016 09:00 PM, Yoshihiro Kaneko wrote:
>
>> From: Koji Matsuoka <koji.matsuoka.xm@renesas.com>
>>
>> This patch adds ARGB8888 capture format support for R-Car Gen3.
>>
>> Signed-off-by: Koji Matsuoka <koji.matsuoka.xm@renesas.com>
>> Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
>> ---
>> drivers/media/platform/soc_camera/rcar_vin.c | 21 +++++++++++++++++++--
>> 1 file changed, 19 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/media/platform/soc_camera/rcar_vin.c
>> b/drivers/media/platform/soc_camera/rcar_vin.c
>> index cccd859..afe27bb 100644
>> --- a/drivers/media/platform/soc_camera/rcar_vin.c
>> +++ b/drivers/media/platform/soc_camera/rcar_vin.c
>
> [...]
>>
>> @@ -654,6 +654,14 @@ static int rcar_vin_setup(struct rcar_vin_priv *priv)
>> dmr = VNDMR_EXRGB;
>> break;
>> }
>> + case V4L2_PIX_FMT_ARGB32:
>> + if (priv->chip == RCAR_GEN3)
>> + dmr = VNDMR_EXRGB | VNDMR_DTMD_ARGB;
>> + else {
>
>
> Kernel coding style dictates using {} in all *if* branches if at least
> one branch has them.
Got it.
Thanks!
>
>> + dev_err(icd->parent, "Not support format\n");
>> + return -EINVAL;
>> + }
>> + break;
>> default:
>> dev_warn(icd->parent, "Invalid fourcc format (0x%x)\n",
>> icd->current_fmt->host_fmt->fourcc);
>
> [...]
>
> MBR, Sergei
>
Thanks,
kaneko
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-01-11 18:46 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-11 18:00 [PATCH 0/3] media: soc_camera: rcar_vin: add rcar-gen3 support Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 1/3] media: soc_camera: rcar_vin: Add rcar fallback compatibility string Yoshihiro Kaneko
2016-01-11 18:19 ` Geert Uytterhoeven
2016-01-11 18:27 ` Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 2/3] media: soc_camera: rcar_vin: Add R-Car Gen3 support Yoshihiro Kaneko
2016-01-11 18:00 ` [PATCH 3/3] media: soc_camera: rcar_vin: Add ARGB8888 caputre format support Yoshihiro Kaneko
2016-01-11 18:35 ` Sergei Shtylyov
2016-01-11 18:46 ` Yoshihiro Kaneko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).