These two where forgotten when refactoring the format reset code. If
they are not also reset at the same time as width and height the format
returned from G_FMT will not match reality.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 3 +++
1 file changed, 3
subdevice pad number have been updated
to not store the incoming pad and simply restore it to 0 after the
subdevice operation is complete.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 26 ++
1 file changed, 14 insertions(+), 12
od reviews
a large part of that series where dropped.
Niklas Söderlund (16):
rcar-vin: reset bytesperline and sizeimage when resetting format
rcar-vin: use rvin_reset_format() in S_DV_TIMINGS
rcar-vin: fix how pads are handled for v4l2 subdevice operations
rcar-vin: fix standard in input e
This only moves whole structs, defines and functions around, no code is
changed inside any function. The reason for moving this code around is
to prepare for refactoring and fixing of a start/stop stream bug without
having to use forward declarations.
Signed-off-by: Niklas Söderlund
---
drivers
The pad lookup code can be broken out to increase readability and to
reduce code duplication.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 38 +
1 file changed, 23 insertions(+), 15 deletions(-)
diff --git a/drivers/media
The return value of __rvin_try_format_source is not checked, add a check
and propagate the error.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/media/platform/rcar-vin/rcar-v4l2.c
From: Laurent Pinchart
The optional operation can be used by entities to report whether two
pads are internally connected.
Signed-off-by: Laurent Pinchart
Signed-off-by: Michal Simek
Signed-off-by: Niklas Söderlund
Acked-by: Sakari Ailus
---
include/media/media-entity.h | 5 +
1 file
n testing
together with renesas-drivers tree.
Laurent Pinchart (2):
media: entity: Add has_route entity operation
media: entity: Add media_entity_has_route() function
Niklas Söderlund (24):
rcar-vin: add Gen3 devicetree bindings documentation
rcar-vin: move chip information to own str
o hardware constrains the link_notifier callback will return
-EMLINK.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 204
1 file changed, 204 insertions(+)
diff --git a/drivers/media/platform/rcar-vin/rcar-core.c
b/drivers/media/platfor
Each Gen3 SoC has a limited set of predefined routing possibilities for
which CSI-2 device and virtual channel can be routed to which VIN
instance. Prepare to store this information in the struct rvin_info.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-vin.h | 22
ned-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-dma.c | 43 ++
drivers/media/platform/rcar-vin/rcar-vin.h | 3 +++
2 files changed, 46 insertions(+)
diff --git a/drivers/media/platform/rcar-vin/rcar-dma.c
b/drivers/media/platform/rcar-vin/rcar-d
only configure scaling and composing when the
stream starts.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-dma.c | 2 +-
drivers/media/platform/rcar-vin/rcar-v4l2.c | 3 ---
drivers/media/platform/rcar-vin/rcar-vin.h | 3 ---
3 files changed, 1 insertion(+), 7
Add the SoC specific information for Renesas r8a7795.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/Kconfig | 2 +-
drivers/media/platform/rcar-vin/rcar-core.c | 72 +
2 files changed, 73 insertions(+), 1 deletion(-)
diff --git a/drivers
Add the SoC specific information for Renesas r8a7796.
Signed-off-by: Niklas Söderlund
---
.../devicetree/bindings/media/rcar_vin.txt | 1 +
drivers/media/platform/rcar-vin/rcar-core.c| 64 ++
2 files changed, 65 insertions(+)
diff --git a/Documentation
When running in media controller mode a media pad is needed, register
one.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 9 +
drivers/media/platform/rcar-vin/rcar-vin.h | 4
2 files changed, 13 insertions(+)
diff --git a/drivers/media/platform
running without directly
interacting with the source subdevice.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 25 ++-
drivers/media/platform/rcar-vin/rcar-dma.c | 3 +-
drivers/media/platform/rcar-vin/rcar-v4l2.c | 239
drivers/media
Add the register needed to work with Gen3 hardware. This patch adds
the logic for how to work with the Gen3 hardware. More work is required
to enable the subdevice structure needed to configure capturing.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-dma.c | 94
the field is preserved simplifies the logic quiet a
bit.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-dma.c | 8
drivers/media/platform/rcar-vin/rcar-v4l2.c | 22 ++
drivers/media/platform/rcar-vin/rcar-vin.h | 2 --
3 files changed, 10
structure and creates a media device.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 112 +++-
drivers/media/platform/rcar-vin/rcar-vin.h | 40 ++
2 files changed, 149 insertions(+), 3 deletions(-)
diff --git a/drivers/media
f the CSI2 group. Which
ever rcar-vin instance which fist sees a new subdevice in the graph adds
it to its private v4l2 async notifier and once it's bound it will be
available for the whole CSI2 group.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-co
not the VIN
will do it's best to scale the top or bottom to the requested format and
cropping and scaling do not work as expected.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 4
1 file changed, 4 deletions(-)
diff --git a/drivers/media/platform
struct
rvin_graph_entity which will control which mode to use.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 3 +++
drivers/media/platform/rcar-vin/rcar-vin.h | 2 ++
2 files changed, 5 insertions(+)
diff --git a/drivers/media/platform/rcar-vin/rcar-core.c
b
The procedure to start or stop streaming using the none MC single
subdevice and the MC graph and multiple subdevices are quiet different.
Create a new function to abstract which method is used based on which
mode the driver is running in and add logic to start the MC graph.
Signed-off-by: Niklas
In preparation of refactoring the scaling code move the code regarding
scaling to to the top of the file to avoid the need to add forward
declarations. No code is changed in this commit only whole functions
moved inside the same file.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform
-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 76 -
drivers/media/platform/rcar-vin/rcar-vin.h | 12 -
2 files changed, 42 insertions(+), 46 deletions(-)
diff --git a/drivers/media/platform/rcar-vin/rcar-v4l2.c
b/drivers/media/platform
It was a bad idea to reset the crop and compose settings when a new
format is set. This would overwrite any crop/compose set by s_select and
cause unexpected behaviors, remove it. Also fold the reset helper in to
the only remaining caller.
Signed-off-by: Niklas Söderlund
---
drivers/media
When Gen3 support is added to the driver more then chip id will be
different for the different Soc. To avoid a lot of if statements in the
code create a struct chip_info to contain this information.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 49
The media bus parsing functions used by the digital subdevice V4L2
notifier can be shared with the upcoming CSI-2 notifier. To prepare for
this move and rename the function to reflect it's generic.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c
tween each VIN and CSI-2 block. This routing table will be kept
inside the driver but in order for it to act on it it must know which
VIN and CSI-2 is which.
Signed-off-by: Niklas Söderlund
---
.../devicetree/bindings/media/rcar_vin.txt | 122 +++--
1 file changed, 112
On Gen3 the max supported width and height will be different from Gen2.
Move the limits to the struct chip_info to prepare for Gen3 support.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 6 ++
drivers/media/platform/rcar-vin/rcar-v4l2.c | 6
From: Sakari Ailus
This way the pads are always passed to the has_route() op sink pad first.
Makes sense.
Signed-off-by: Sakari Ailus
Signed-off-by: Niklas Söderlund
---
drivers/media/media-entity.c | 4
1 file changed, 4 insertions(+)
diff --git a/drivers/media/media-entity.c b
The rcar-vin driver needs to be part of a media controller to support
Gen3. Give each VIN instance a unique name so it can be referenced from
userspace.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff
From: Laurent Pinchart
This is a wrapper around the media entity has_route operation.
Signed-off-by: Laurent Pinchart
Signed-off-by: Michal Simek
Signed-off-by: Sakari Ailus
Signed-off-by: Niklas Söderlund
---
drivers/media/media-entity.c | 16
include/media/media-entity.h
Bus configuration will once the driver is extended to to support Gen3
contain information not specific to only the directly connected parallel
subdevice. Move it to struct rvin_info to show it's not always coupled
to the parallel subdevice.
Signed-off-by: Niklas Söderlund
---
drivers/
Hi Sergei,
Thanks for your feedback.
On 2017-03-15 12:12:21 +0300, Sergei Shtylyov wrote:
> Hello!
>
> On 3/14/2017 9:59 PM, Niklas Söderlund wrote:
>
> > The rcar-vin driver only uses one pad, pad number 0.
> >
> > - All v4l2 operations that did not chec
Hi Geert,
Thanks for your comments.
On 2017-03-16 09:36:01 +0100, Geert Uytterhoeven wrote:
> Hi Niklas,
>
> On Tue, Mar 14, 2017 at 8:03 PM, Niklas Söderlund
> wrote:
> > Add the SoC specific information for Renesas r8a7796.
> >
> > Signed-off-by: Niklas Söderlun
Hi Wolfram,
Thanks for your feedback.
On 2017-03-07 20:55:33 +0100, Wolfram Sang wrote:
> Hi Niklas,
>
> thanks for your work!
>
> On Mon, Mar 06, 2017 at 09:03:59PM +0100, Niklas Söderlund wrote:
> > Enable hardware trip points by implementing the set_trips callback. The
Hi Geert,
Thanks for your feedback.
On 2017-03-07 16:36:00 +0100, Geert Uytterhoeven wrote:
> On Mon, Mar 6, 2017 at 9:03 PM, Niklas Söderlund
> wrote:
> > Enable hardware trip points by implementing the set_trips callback. The
> > thermal core will take care of setting the
Hi Wolfram,
Thanks for your feedback.
On 2017-03-07 20:52:03 +0100, Wolfram Sang wrote:
> On Mon, Mar 06, 2017 at 09:03:56PM +0100, Niklas Söderlund wrote:
> > If the memory resource for a TSC is unviable probe should fail not try
> > to go ahead with the remaining TSC. This fix
The device match data needs to be accessible outside the probe function,
store it in the private data structure.
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Reviewed-by: Wolfram Sang
---
drivers/thermal/rcar_gen3_thermal.c | 7 ---
1 file changed, 4 insertions(+), 3
or
all-off design. When an interrupt happens all TSCs are checked and all
thermal zones are updated. This could be refined to be more fine grained
but the thermal core takes care of only updating the thermal zones that
have left their trip point window.
Signed-off-by: Niklas Söderlund
---
drivers
There is no point in protecting a register read with a lock. This is
most likely a leftover from when the driver was reworked before submitted
for upstream.
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Reviewed-by: Wolfram Sang
---
drivers/thermal/rcar_gen3_thermal.c | 7
tions.
This should have been done in the initial commit which adds the driver
as the same issue was found and corrected for r8a7795.
Fixes: 564e73d283af9d4c ("thermal: rcar_gen3_thermal: Add R-Car Gen3 thermal
driver")
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Revie
Record how many TSCs are found in struct rcar_gen3_thermal_priv, this is
needed to be able to add hardware interrupts for trip points later. Also
add a check to make sure at least one TSC is found.
Signed-off-by: Niklas Söderlund
---
drivers/thermal/rcar_gen3_thermal.c | 7 +++
1 file
Move the check for a TSC resource before allocating memory for a new
TSC. If no TSC is found there is little point in allocating memory for
it.
Signed-off-by: Niklas Söderlund
---
drivers/thermal/rcar_gen3_thermal.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a
of_thermal_get_ntrips()
- Fixed spelling in commit messages
- Add Reviewed-by tags
Niklas Söderlund (7):
thermal: rcar_gen3_thermal: add delay in .thermal_init on r8a7796
thermal: rcar_gen3_thermal: remove unneeded mutex
thermal: rcar_gen3_thermal: check that TSC exists before memory
To restore operation it's easiest to reinitialise all TSCs. In order to
do this the current trip window needs to be stored in the TSC structure
so that it can be restored upon resume.
Signed-off-by: Niklas Söderlund
---
drivers/thermal/rcar_gen3_thermal.c
The IRQ number is needed after probe to be able to add synchronisation
points in other places in the driver when freeing resources and to
implement a device_synchronize() callback. Store the IRQ number in the
struct rcar_dmac_chan so that it can be used later.
Signed-off-by: Niklas Söderlund
completed.
Signed-off-by: Niklas Söderlund
---
drivers/dma/sh/rcar-dmac.c | 8
1 file changed, 8 insertions(+)
diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c
index 3038654f11b5c6ed..4b90deb40d559bed 100644
--- a/drivers/dma/sh/rcar-dmac.c
+++ b/drivers/dma/sh/rcar
.
Signed-off-by: Niklas Söderlund
---
drivers/dma/sh/rcar-dmac.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c
index 4b90deb40d559bed..0ec63600ebcc3a27 100644
--- a/drivers/dma/sh/rcar-dmac.c
+++ b/drivers/dma/sh/rcar
resources I feel the
synchronisation for freeing channel resources are in a much better
shape. It also solves the issue in the original mail thread.
The series is based on v4.11-rc1 and is tested on r8a7795 Salvator-X.
1. https://patchwork.kernel.org/patch/9557691/
Niklas Söderlund (3
Hi Geert,
On 2017-03-29 14:31:33 +0200, Geert Uytterhoeven wrote:
> Hi Niklas,
>
> On Wed, Mar 29, 2017 at 12:40 AM, Niklas Söderlund
> wrote:
> > This fixes a race condition where the channel resources could be freed
> > before the ISR had finished running res
Record how many TSCs are found in struct rcar_gen3_thermal_priv, this is
needed to be able to add hardware interrupts for trip points later. Also
add a check to make sure at least one TSC is found.
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Reviewed-by: Wolfram Sang
Move the check for a TSC resource before allocating memory for a new
TSC. If no TSC is found there is little point in allocating memory for
it.
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Reviewed-by: Wolfram Sang
---
drivers/thermal/rcar_gen3_thermal.c | 8
1
tions.
This should have been done in the initial commit which adds the driver
as the same issue was found and corrected for r8a7795.
Fixes: 564e73d283af9d4c ("thermal: rcar_gen3_thermal: Add R-Car Gen3 thermal
driver")
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Revie
in commit messages
- Add Reviewed-by tags
Niklas Söderlund (7):
thermal: rcar_gen3_thermal: add delay in .thermal_init on r8a7796
thermal: rcar_gen3_thermal: remove unneeded mutex
thermal: rcar_gen3_thermal: check that TSC exists before memory
allocation
thermal: rcar_gen3_thermal: record
There is no point in protecting a register read with a lock. This is
most likely a leftover from when the driver was reworked before being
submitted for upstream.
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Reviewed-by: Wolfram Sang
---
drivers/thermal/rcar_gen3_thermal.c
or
all-off design. When an interrupt happens all TSCs are checked and all
thermal zones are updated. This could be refined to be more fine grained
but the thermal core takes care of only updating the thermal zones that
have left their trip point window.
Signed-off-by: Niklas Söderlund
---
drivers
To restore operation it's easiest to reinitialise all TSCs. In order to
do this the current trip window needs to be stored in the TSC structure
so that it can be restored upon resume.
Signed-off-by: Niklas Söderlund
Reviewed-by: Wolfram Sang
---
drivers/thermal/rcar_gen3_thermal.c
The device match data needs to be accessible outside the probe function,
store it in the private data structure.
Signed-off-by: Niklas Söderlund
Reviewed-by: Geert Uytterhoeven
Reviewed-by: Wolfram Sang
---
drivers/thermal/rcar_gen3_thermal.c | 7 ---
1 file changed, 4 insertions(+), 3
Hi Geert,
On 2017-03-29 15:30:42 +0200, Niklas Söderlund wrote:
> Hi Geert,
>
> On 2017-03-29 14:31:33 +0200, Geert Uytterhoeven wrote:
> > Hi Niklas,
> >
> > On Wed, Mar 29, 2017 at 12:40 AM, Niklas Söderlund
> > wrote:
> > > This fixes a race cond
can you please fire up your display? Thanks!
Console during boot works and
modetest -M rcar-du -s 46:1920x1080-60Hz
modetest -M rcar-du -s 46:1280x720-60Hz
modetest -M rcar-du -s 46:720x480-60Hz
Produce stable test patterns.
Tested-by: Niklas Söderlund
>
> > Acked-by: Laurent Pin
Hi Vinod,
On 2017-04-05 08:55:31 +0530, Vinod Koul wrote:
> On Thu, Mar 30, 2017 at 09:38:39AM +0200, Niklas Söderlund wrote:
> > Hi Geert,
> >
> > On 2017-03-29 15:30:42 +0200, Niklas Söderlund wrote:
> > > Hi Geert,
> > >
> > > On 201
> + device_type = "memory";
> + reg = <0x6 0x 0 0x4000>;
> + };
> +
> + memory@7 {
> + device_type = "memory";
> + reg = <0x7 0x 0 0x4000>;
> + };
> +};
> --
> 2.7.4
>
--
Regards,
Niklas Söderlund
stdata(subdev, vin);
>
> mutex_lock(&vin->group->lock);
> for (i = 0; i < RVIN_CSI_MAX; i++) {
> - struct device_node *new = subdev->dev->of_node;
>
> if (vin->group->bridge[i].asd.match.of.node == new) {
> vin_dbg(vin, "Bound bridge %s\n", subdev->name);
And I will squash these fixes in to the next version of my 'Gen3 with
media controller support' series since that is not yet picked up. Is
that OK with you?
> --
> 2.7.4
>
--
Regards,
Niklas Söderlund
n/rcar-core.c:161:ep =
of_graph_get_endpoint_by_regs(vin->dev->of_node, 0, 0);
Here vin->dev->of_node is correct and subdev->dev->of_node should be
fixed by Kieran patch. I'm only asking to be sure I did not miss
anything. In renesas-drivers the Gen3 patches are included and more
references to subdev->dev->of_node exists, but as Kieran sates these
fixes will be squashed into those patches since they are not yet picked
up.
--
Regards,
Niklas Söderlund
ff-by: Niklas Söderlund
---
drivers/media/v4l2-core/v4l2-async.c | 91 +---
include/media/v4l2-async.h | 22 +
2 files changed, 95 insertions(+), 18 deletions(-)
diff --git a/drivers/media/v4l2-core/v4l2-async.c
b/drivers/media/v4l2-core/v4l2-async.c
This is a wrapper around the media entity pad_from_dt_regs operation.
Signed-off-by: Niklas Söderlund
---
drivers/media/media-entity.c | 21 +
include/media/media-entity.h | 22 ++
2 files changed, 43 insertions(+)
diff --git a/drivers/media/media
The optional operation can be used by entities to report how it maps its
DT node ports and endpoints to media pad numbers. This is useful for
devices which require more advanced mappings of pads then DT port
number is equivalent with media port number.
Signed-off-by: Niklas Söderlund
number correspond to the DT endpoint the driver used to bind subdevice
in the first place.
I have updated my R-Car CSI-2 patch series to use this new function to
ask it's subdevice to resolve the media pad.
1. [PATCH 0/5] RFC: ADV748x HDMI/Analog video receiver
Niklas Söderlund (2):
YVY8/
Changes since v1:
- Drop dependency on a pad aware s_stream operation.
- Use the DT bindings format "renesas,-", thanks Geert
for pointing this out.
1. http://elinux.org/R-Car/Tests:rcar-vin
Niklas Söderlund (2):
media: rcar-csi2: add Renesas R-Car MIPI CSI-2 receiver documen
the responsibility of the VIN driver since the
register to configure it belongs to the VIN hardware.
Signed-off-by: Niklas Söderlund
---
.../devicetree/bindings/media/rcar-csi2.txt| 116 +
1 file changed, 116 insertions(+)
create mode 100644 Documentation/devicetree
-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/Kconfig | 11 +
drivers/media/platform/rcar-vin/Makefile| 1 +
drivers/media/platform/rcar-vin/rcar-csi2.c | 872
3 files changed, 884 insertions(+)
create mode 100644 drivers/media/platform/rcar
From: Sakari Ailus
This way the pads are always passed to the has_route() op sink pad first.
Makes sense.
Signed-off-by: Sakari Ailus
Signed-off-by: Niklas Söderlund
---
drivers/media/media-entity.c | 4
1 file changed, 4 insertions(+)
diff --git a/drivers/media/media-entity.c b
From: Laurent Pinchart
The optional operation can be used by entities to report whether two
pads are internally connected.
Signed-off-by: Laurent Pinchart
Signed-off-by: Michal Simek
Signed-off-by: Niklas Söderlund
Acked-by: Sakari Ailus
---
include/media/media-entity.h | 5 +
1 file
only configure scaling and composing when the
stream starts.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-dma.c | 2 +-
drivers/media/platform/rcar-vin/rcar-v4l2.c | 3 ---
drivers/media/platform/rcar-vin/rcar-vin.h | 3 ---
3 files changed, 1 insertion(+), 7
tween each VIN and CSI-2 block. This routing table will be kept
inside the driver but in order for it to act on it it must know which
VIN and CSI-2 is which.
Signed-off-by: Niklas Söderlund
---
.../devicetree/bindings/media/rcar_vin.txt | 122 +++--
1 file changed, 112
The rcar-vin driver needs to be part of a media controller to support
Gen3. Give each VIN instance a unique name so it can be referenced from
userspace.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff
-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 76 -
drivers/media/platform/rcar-vin/rcar-vin.h | 12 -
2 files changed, 42 insertions(+), 46 deletions(-)
diff --git a/drivers/media/platform/rcar-vin/rcar-v4l2.c
b/drivers/media/platform
Laurent Pinchart (2):
media: entity: Add has_route entity operation
media: entity: Add media_entity_has_route() function
Niklas Söderlund (24):
rcar-vin: add Gen3 devicetree bindings documentation
rcar-vin: move chip information to own struct
rcar-vin: move max width and height information t
Add the register needed to work with Gen3 hardware. This patch adds
the logic for how to work with the Gen3 hardware. More work is required
to enable the subdevice structure needed to configure capturing.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-dma.c | 94
In preparation of refactoring the scaling code move the code regarding
scaling to to the top of the file to avoid the need to add forward
declarations. No code is changed in this commit only whole functions
moved inside the same file.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform
When Gen3 support is added to the driver more then chip id will be
different for the different Soc. To avoid a lot of if statements in the
code create a struct chip_info to contain this information.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 49
It was a bad idea to reset the crop and compose settings when a new
format is set. This would overwrite any crop/compose set by s_select and
cause unexpected behaviors, remove it. Also fold the reset helper in to
the only remaining caller.
Signed-off-by: Niklas Söderlund
---
drivers/media
From: Laurent Pinchart
This is a wrapper around the media entity has_route operation.
Signed-off-by: Laurent Pinchart
Signed-off-by: Michal Simek
Signed-off-by: Sakari Ailus
Signed-off-by: Niklas Söderlund
---
drivers/media/media-entity.c | 16
include/media/media-entity.h
On Gen3 the max supported width and height will be different from Gen2.
Move the limits to the struct rvin_info to prepare for Gen3 support.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 6 ++
drivers/media/platform/rcar-vin/rcar-v4l2.c | 6
Bus configuration will once the driver is extended to to support Gen3
contain information not specific to only the directly connected parallel
subdevice. Move it to struct rvin_info to show it's not always coupled
to the parallel subdevice.
Signed-off-by: Niklas Söderlund
---
drivers/
the field is preserved simplifies the logic quiet a
bit.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-dma.c | 8
drivers/media/platform/rcar-vin/rcar-v4l2.c | 22 ++
drivers/media/platform/rcar-vin/rcar-vin.h | 2 --
3 files changed, 10
struct
rvin_graph_entity which will control which mode to use.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 3 +++
drivers/media/platform/rcar-vin/rcar-vin.h | 2 ++
2 files changed, 5 insertions(+)
diff --git a/drivers/media/platform/rcar-vin/rcar-core.c
b
not the VIN
will do it's best to scale the top or bottom to the requested format and
cropping and scaling do not work as expected.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-v4l2.c | 4
1 file changed, 4 deletions(-)
diff --git a/drivers/media/platform
The media bus parsing functions used by the digital subdevice V4L2
notifier can be shared with the upcoming CSI-2 notifier. To prepare for
this move and rename the function to reflect it's generic.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c
When running in media controller mode a media pad is needed, register
one.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 9 +
drivers/media/platform/rcar-vin/rcar-vin.h | 4
2 files changed, 13 insertions(+)
diff --git a/drivers/media/platform
structure and creates a media device.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 112 +++-
drivers/media/platform/rcar-vin/rcar-vin.h | 38 ++
2 files changed, 147 insertions(+), 3 deletions(-)
diff --git a/drivers/media
Add the SoC specific information for Renesas r8a7795.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/Kconfig | 2 +-
drivers/media/platform/rcar-vin/rcar-core.c | 72 +
2 files changed, 73 insertions(+), 1 deletion(-)
diff --git a/drivers
The procedure to start or stop streaming using the none MC single
subdevice and the MC graph and multiple subdevices are quiet different.
Create a new function to abstract which method is used based on which
mode the driver is running in and add logic to start the MC graph.
Signed-off-by: Niklas
running without directly
interacting with the source subdevice.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 25 ++-
drivers/media/platform/rcar-vin/rcar-dma.c | 3 +-
drivers/media/platform/rcar-vin/rcar-v4l2.c | 239
drivers/media
Add the SoC specific information for Renesas r8a7796.
Signed-off-by: Niklas Söderlund
---
.../devicetree/bindings/media/rcar_vin.txt | 1 +
drivers/media/platform/rcar-vin/rcar-core.c| 64 ++
2 files changed, 65 insertions(+)
diff --git a/Documentation
Each Gen3 SoC has a limited set of predefined routing possibilities for
which CSI-2 device and virtual channel can be routed to which VIN
instance. Prepare to store this information in the struct rvin_info.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-vin.h | 22
o hardware constrains the link_notifier callback will return
-EMLINK.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c | 204
1 file changed, 204 insertions(+)
diff --git a/drivers/media/platform/rcar-vin/rcar-core.c
b/drivers/media/platfor
instances which are part of the group. The
rcar-vin instance that first sees a new CSI-2 subdevice adds it to its
private v4l2 async notifier and once it's bound it will be
available for the whole group.
Signed-off-by: Niklas Söderlund
---
drivers/media/platform/rcar-vin/rcar-core.c
301 - 400 of 1858 matches
Mail list logo