Commit 1c9f5bd7cb8a ("[media] s5p-fimc: Add support for sensors with
multiple pads") caught the case where a sensor with multiple pads was
connected via CSIS, but missed the case where the sensor was directly
connected to the FIMC.
This still assumes that the last pad of a sensor is the source.
Signed-off-by: Jonathan Bakker <[email protected]>
---
drivers/media/platform/exynos4-is/media-dev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c
index 5c32abc7251b..b38445219c72 100644
--- a/drivers/media/platform/exynos4-is/media-dev.c
+++ b/drivers/media/platform/exynos4-is/media-dev.c
@@ -991,7 +991,8 @@ static int fimc_md_create_links(struct fimc_md *fmd)
case FIMC_BUS_TYPE_ITU_601...FIMC_BUS_TYPE_ITU_656:
source = &sensor->entity;
- pad = 0;
+ /* Assume the last pad is the source */
+ pad = sensor->entity.num_pads - 1;
break;
default:
--
2.20.1
Hi Jonathan,
On Sat, Apr 25, 2020 at 07:26:44PM -0700, Jonathan Bakker wrote:
> Commit 1c9f5bd7cb8a ("[media] s5p-fimc: Add support for sensors with
> multiple pads") caught the case where a sensor with multiple pads was
> connected via CSIS, but missed the case where the sensor was directly
> connected to the FIMC.
>
> This still assumes that the last pad of a sensor is the source.
>
> Signed-off-by: Jonathan Bakker <[email protected]>
> ---
> drivers/media/platform/exynos4-is/media-dev.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
Thank you for the patch. Please see my comments inline.
> diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c
> index 5c32abc7251b..b38445219c72 100644
> --- a/drivers/media/platform/exynos4-is/media-dev.c
> +++ b/drivers/media/platform/exynos4-is/media-dev.c
> @@ -991,7 +991,8 @@ static int fimc_md_create_links(struct fimc_md *fmd)
>
> case FIMC_BUS_TYPE_ITU_601...FIMC_BUS_TYPE_ITU_656:
> source = &sensor->entity;
> - pad = 0;
> + /* Assume the last pad is the source */
> + pad = sensor->entity.num_pads - 1;
Is 0 really any worse than num_pads - 1? This sounds like quite an ugly
hack.
Could you iterate over the pads of the sensor entity and explicitly find
a source pad instead?
Best regards,
Tomasz
Hi Tomasz,
On 2020-07-07 11:13 a.m., Tomasz Figa wrote:
> Hi Jonathan,
>
> On Sat, Apr 25, 2020 at 07:26:44PM -0700, Jonathan Bakker wrote:
>> Commit 1c9f5bd7cb8a ("[media] s5p-fimc: Add support for sensors with
>> multiple pads") caught the case where a sensor with multiple pads was
>> connected via CSIS, but missed the case where the sensor was directly
>> connected to the FIMC.
>>
>> This still assumes that the last pad of a sensor is the source.
>>
>> Signed-off-by: Jonathan Bakker <[email protected]>
>> ---
>> drivers/media/platform/exynos4-is/media-dev.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>
> Thank you for the patch. Please see my comments inline.
>
>> diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c
>> index 5c32abc7251b..b38445219c72 100644
>> --- a/drivers/media/platform/exynos4-is/media-dev.c
>> +++ b/drivers/media/platform/exynos4-is/media-dev.c
>> @@ -991,7 +991,8 @@ static int fimc_md_create_links(struct fimc_md *fmd)
>>
>> case FIMC_BUS_TYPE_ITU_601...FIMC_BUS_TYPE_ITU_656:
>> source = &sensor->entity;
>> - pad = 0;
>> + /* Assume the last pad is the source */
>> + pad = sensor->entity.num_pads - 1;
>
> Is 0 really any worse than num_pads - 1? This sounds like quite an ugly
> hack.
>
> Could you iterate over the pads of the sensor entity and explicitly find
> a source pad instead?
Yes, iterating would work better. This comes from when I was trying to integrate
video-mux, before I realized I could connect multiple sensors. I will drop this patch
from v2 as it's not necessary.
>
> Best regards,
> Tomasz
>
Thanks,
Jonathan