[PATCH v3 19/31] media: synopsys: csi2: Add phy interface support
Sakari Ailus
sakari.ailus at iki.fi
Mon Oct 27 02:09:11 PDT 2025
Hi Frank,
On Thu, Aug 21, 2025 at 04:15:54PM -0400, Frank Li wrote:
> Add standard phy interface support.
>
> Signed-off-by: Frank Li <Frank.Li at nxp.com>
> ---
> drivers/media/platform/synopsys/mipi-csi2.c | 91 +++++++++++++++++++++++++++--
> include/media/dw-mipi-csi2.h | 4 ++
> 2 files changed, 90 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/media/platform/synopsys/mipi-csi2.c b/drivers/media/platform/synopsys/mipi-csi2.c
> index 922b59670383db7c920625f8a149009fa4dc5f22..27d802b3c3937473c8e08defa661b55b0655f758 100644
> --- a/drivers/media/platform/synopsys/mipi-csi2.c
> +++ b/drivers/media/platform/synopsys/mipi-csi2.c
> @@ -14,6 +14,7 @@
> #include <linux/of_graph.h>
> #include <linux/platform_device.h>
> #include <media/dw-mipi-csi2.h>
> +#include <media/mipi-csi2.h>
> #include <media/v4l2-common.h>
> #include <media/v4l2-ctrls.h>
> #include <media/v4l2-device.h>
> @@ -268,7 +269,63 @@ static int csi2_get_active_lanes(struct dw_mipi_csi2_dev *csi2, unsigned int *la
> return 0;
> }
>
> -static int csi2_start(struct dw_mipi_csi2_dev *csi2)
> +static int dw_csi2_get_dphy_configuration(struct dw_mipi_csi2_dev *csi2,
> + union phy_configure_opts *opts,
> + int bpp)
> +{
> + struct phy_configure_opts_mipi_dphy *cfg = &opts->mipi_dphy;
> + struct v4l2_subdev *source = csi2->src_sd;
> + s64 link_freq;
> +
> + link_freq = v4l2_get_link_freq(source->ctrl_handler,
Please rebase.
> + bpp,
> + csi2->data_lanes * 2);
Fits on fewer lines.
> + if (link_freq < 0) {
> + dev_err(csi2->dev, "Unable to obtain link frequency: %d\n",
> + (int)link_freq);
> + return link_freq;
> + }
> +
> + memset(cfg, 0x0, sizeof(*cfg));
> + cfg->hs_clk_rate = link_freq * 2;
> + cfg->lanes = csi2->data_lanes;
> +
> + return 0;
> +}
--
Regards,
Sakari Ailus
More information about the linux-phy
mailing list