mbox series

[v2,0/7] Add support for SDM630/660 Camera Subsystem

Message ID 20201022174706.8813-1-kholk11@gmail.com (mailing list archive)
Headers show
Series Add support for SDM630/660 Camera Subsystem | expand

Message

AngeloGioacchino Del Regno Oct. 22, 2020, 5:46 p.m. UTC
From: AngeloGioacchino Del Regno <kholk11@gmail.com>

This patch series implements support for the entire camera subsystem
found in SDM630/636/660 and SDA variants, including CSIPHY 3-Phase,
CSID v5.0, ISPIF 3.0 (though it didn't need any adaptation) and
VFE 4.8.

One small note about VFE4.8, even if I wrote it in the commit that
adds support for it: I know, the VFE support here is split in
multiple files having the name of the actual VFE version that it is
targeting... but it didn't feel right to commonize the VFE 4.7 file
and make another one only for VFE4.8, when it's just about something
like 3 small differences.
That VFE 4.8 seems to be just a minor revision of VFE 4.7.

While at it, also fix a small issue when using two VFEs: only one
of them was being resetted (always VFE0) so, after the first usage
of VFE1, in case we leave it in a bad state, it would not properly
start again. Now... it's fine :)))

P.S.: SDM630/660's camss seems to be *very* similar to MSM8998, so
      likely 90% of this series should be reusable on that one, too!

Tested on:
 - Sony Xperia XA2 (IMX300 on CSI0/PHY0/VFE0, IMX219 on CSI2,PHY2,VFE1)
   * VFE0/1 RDI only, as the VIDEO one does not work with SRGGB Bayer
     formats yet. As far as I can see, that color format hasn't been
     implemented yet in the video interface.

Changes in v2:
 - Splitted out VFE 4.7 functions rename from the VFE 4.8 support commit
 - Moved a commit so that sequentially picking patches from this series
   still results in buildable code (heh, oops! sorry!)
 - Fixed ispif reset commit (moved the fix for itfrom the wrong commit
   to the right one: that was a "funny" overlook).

AngeloGioacchino Del Regno (7):
  media: camss: ispif: Correctly reset based on the VFE ID
  media: camss: vfe-4-7: Rename get_ub_size, set_qos, set_ds, wm_enable
  media: camss: vfe: Add support for VFE 4.8
  media: camss: Add support for SDM630/636/660 camera subsystem
  media: camss: csiphy-3ph: Add support for SDM630/660
  media: dt-bindings: media: qcom,camss: Add bindings for SDM660 camss
  media: camss: csiphy: Set rate on csiX_phy clock on SDM630/660

 .../devicetree/bindings/media/qcom,camss.txt  |   7 +
 .../media/platform/qcom/camss/camss-csid.c    |   9 +-
 .../qcom/camss/camss-csiphy-3ph-1-0.c         |   7 +-
 .../media/platform/qcom/camss/camss-csiphy.c  |  25 ++-
 .../media/platform/qcom/camss/camss-csiphy.h  |   1 +
 .../media/platform/qcom/camss/camss-ispif.c   | 100 ++++++---
 .../media/platform/qcom/camss/camss-ispif.h   |   2 +-
 .../media/platform/qcom/camss/camss-vfe-4-7.c | 131 ++++++++++-
 drivers/media/platform/qcom/camss/camss-vfe.c |  19 +-
 drivers/media/platform/qcom/camss/camss-vfe.h |   1 +
 .../media/platform/qcom/camss/camss-video.c   |   3 +-
 drivers/media/platform/qcom/camss/camss.c     | 206 +++++++++++++++++-
 drivers/media/platform/qcom/camss/camss.h     |   1 +
 13 files changed, 450 insertions(+), 62 deletions(-)

Comments

Robert Foss Oct. 26, 2020, 7:50 p.m. UTC | #1
Hey Angelo,

I can't functionally test the code myself, but the series looks good to me now.

Reviewed-by: Robert Foss <robert.foss@linaro.org>

On Thu, 22 Oct 2020 at 19:47, <kholk11@gmail.com> wrote:
>
> From: AngeloGioacchino Del Regno <kholk11@gmail.com>
>
> This patch series implements support for the entire camera subsystem
> found in SDM630/636/660 and SDA variants, including CSIPHY 3-Phase,
> CSID v5.0, ISPIF 3.0 (though it didn't need any adaptation) and
> VFE 4.8.
>
> One small note about VFE4.8, even if I wrote it in the commit that
> adds support for it: I know, the VFE support here is split in
> multiple files having the name of the actual VFE version that it is
> targeting... but it didn't feel right to commonize the VFE 4.7 file
> and make another one only for VFE4.8, when it's just about something
> like 3 small differences.
> That VFE 4.8 seems to be just a minor revision of VFE 4.7.
>
> While at it, also fix a small issue when using two VFEs: only one
> of them was being resetted (always VFE0) so, after the first usage
> of VFE1, in case we leave it in a bad state, it would not properly
> start again. Now... it's fine :)))
>
> P.S.: SDM630/660's camss seems to be *very* similar to MSM8998, so
>       likely 90% of this series should be reusable on that one, too!
>
> Tested on:
>  - Sony Xperia XA2 (IMX300 on CSI0/PHY0/VFE0, IMX219 on CSI2,PHY2,VFE1)
>    * VFE0/1 RDI only, as the VIDEO one does not work with SRGGB Bayer
>      formats yet. As far as I can see, that color format hasn't been
>      implemented yet in the video interface.
>
> Changes in v2:
>  - Splitted out VFE 4.7 functions rename from the VFE 4.8 support commit
>  - Moved a commit so that sequentially picking patches from this series
>    still results in buildable code (heh, oops! sorry!)
>  - Fixed ispif reset commit (moved the fix for itfrom the wrong commit
>    to the right one: that was a "funny" overlook).
>
> AngeloGioacchino Del Regno (7):
>   media: camss: ispif: Correctly reset based on the VFE ID
>   media: camss: vfe-4-7: Rename get_ub_size, set_qos, set_ds, wm_enable
>   media: camss: vfe: Add support for VFE 4.8
>   media: camss: Add support for SDM630/636/660 camera subsystem
>   media: camss: csiphy-3ph: Add support for SDM630/660
>   media: dt-bindings: media: qcom,camss: Add bindings for SDM660 camss
>   media: camss: csiphy: Set rate on csiX_phy clock on SDM630/660
>
>  .../devicetree/bindings/media/qcom,camss.txt  |   7 +
>  .../media/platform/qcom/camss/camss-csid.c    |   9 +-
>  .../qcom/camss/camss-csiphy-3ph-1-0.c         |   7 +-
>  .../media/platform/qcom/camss/camss-csiphy.c  |  25 ++-
>  .../media/platform/qcom/camss/camss-csiphy.h  |   1 +
>  .../media/platform/qcom/camss/camss-ispif.c   | 100 ++++++---
>  .../media/platform/qcom/camss/camss-ispif.h   |   2 +-
>  .../media/platform/qcom/camss/camss-vfe-4-7.c | 131 ++++++++++-
>  drivers/media/platform/qcom/camss/camss-vfe.c |  19 +-
>  drivers/media/platform/qcom/camss/camss-vfe.h |   1 +
>  .../media/platform/qcom/camss/camss-video.c   |   3 +-
>  drivers/media/platform/qcom/camss/camss.c     | 206 +++++++++++++++++-
>  drivers/media/platform/qcom/camss/camss.h     |   1 +
>  13 files changed, 450 insertions(+), 62 deletions(-)
>
> --
> 2.28.0
>
patchwork-bot+linux-arm-msm@kernel.org Dec. 29, 2020, 8:15 p.m. UTC | #2
Hello:

This series was applied to qcom/linux.git (refs/heads/for-next):

On Thu, 22 Oct 2020 19:46:59 +0200 you wrote:
> From: AngeloGioacchino Del Regno <kholk11@gmail.com>
> 
> This patch series implements support for the entire camera subsystem
> found in SDM630/636/660 and SDA variants, including CSIPHY 3-Phase,
> CSID v5.0, ISPIF 3.0 (though it didn't need any adaptation) and
> VFE 4.8.
> 
> [...]

Here is the summary with links:
  - [v2,1/7] media: camss: ispif: Correctly reset based on the VFE ID
    https://git.kernel.org/qcom/c/864ed874d74a
  - [v2,2/7] media: camss: vfe-4-7: Rename get_ub_size, set_qos, set_ds, wm_enable
    https://git.kernel.org/qcom/c/1786653aa2e3
  - [v2,3/7] media: camss: vfe: Add support for VFE 4.8
    https://git.kernel.org/qcom/c/40296e712cad
  - [v2,4/7] media: camss: Add support for SDM630/636/660 camera subsystem
    https://git.kernel.org/qcom/c/9e5d158189c6
  - [v2,5/7] media: camss: csiphy-3ph: Add support for SDM630/660
    https://git.kernel.org/qcom/c/e486781b74cc
  - [v2,6/7] media: dt-bindings: media: qcom,camss: Add bindings for SDM660 camss
    https://git.kernel.org/qcom/c/3cba9d22c358
  - [v2,7/7] media: camss: csiphy: Set rate on csiX_phy clock on SDM630/660
    https://git.kernel.org/qcom/c/4863b93cfd2d

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html