All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cory Keitz <ckeitz@amazon.com>
To: <dumitru.ceclan@analog.com>
Cc: "Tomi Valkeinen" <tomi.valkeinen+renesas@ideasonboard.com>,
	"Mauro Carvalho Chehab" <mchehab@kernel.org>,
	"Sakari Ailus" <sakari.ailus@linux.intel.com>,
	"Laurent Pinchart" <laurent.pinchart@ideasonboard.com>,
	"Julien Massot" <julien.massot@collabora.com>,
	"Rob Herring" <robh@kernel.org>,
	"Niklas Söderlund" <niklas.soderlund@ragnatech.se>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org, linux-gpio@vger.kernel.org,
	linux-staging@lists.linux.dev, mitrutzceclan@gmail.com,
	"Cosmin Tanislav" <demonsingur@gmail.com>,
	"Niklas Söderlund" <niklas.soderlund+renesas@ragnatech.se>
Subject: Re: [PATCH RESEND v8 16/21] media: i2c: maxim-serdes: add MAX96724 driver
Date: Sat, 7 Mar 2026 09:03:08 -0800	[thread overview]
Message-ID: <aaxWATynXaVFglvS@bcd074ae11bb> (raw)
In-Reply-To: <20251208-gmsl2-3_serdes-v8-16-7b8d457e2e04@analog.com>

On Mon, Dec 08, 2025 at 04:13:08PM +0200, Dumitru Ceclan via B4 Relay wrote:
> +static int max96724_init_phy(struct max_des *des, struct max_des_phy *phy)
> +{
> +	struct max96724_priv *priv = des_to_priv(des);
> +	bool is_cphy = phy->bus_type == V4L2_MBUS_CSI2_CPHY;
> +	unsigned int num_data_lanes = phy->mipi.num_data_lanes;
> +	unsigned int dpll_freq = phy->link_frequency * 2;

This unconditionally doubles the link frequency for the DPLL, which is
correct for D-PHY (DDR clocking) but incorrect for C-PHY. Per the
MAX96724 User Guide:

  D-PHY: "Clock freq is half; Data rate is equivalent bps/lane."
         e.g. 00010 = 200MHz DPLL, 200Mbps/lane data rate.

  C-PHY: "2.28bits/symbol."
         e.g. 00010 = 200MHz DPLL, 456Mbps/lane data rate.

For C-PHY the DPLL value equals the symbol rate, which is the link
frequency directly. Should be:

        unsigned int dpll_freq = is_cphy ? phy->link_frequency
                                       : phy->link_frequency * 2;

The same pattern exists in max9296a_init_phy() in patch 17.

I've tested the full series (backported to 6.6) with the above fix on
SA8775P + MAX96724 + MAX96717 with C-PHY 3-trio @ 700MHz.

Tested-by: Cory Keitz <ckeitz@amazon.com>

  reply	other threads:[~2026-03-07 17:03 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-08 14:12 [PATCH RESEND v8 00/21] media: i2c: add Maxim GMSL2/3 serializer and deserializer drivers Dumitru Ceclan
2025-12-08 14:12 ` Dumitru Ceclan via B4 Relay
2025-12-08 14:12 ` [PATCH RESEND v8 01/21] media: mc: Add INTERNAL pad flag Dumitru Ceclan
2025-12-08 14:12   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:12 ` [PATCH RESEND v8 02/21] dt-bindings: media: i2c: max96717: add support for I2C ATR Dumitru Ceclan
2025-12-08 14:12   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:12 ` [PATCH RESEND v8 03/21] dt-bindings: media: i2c: max96717: add support for pinctrl/pinconf Dumitru Ceclan
2025-12-08 14:12   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:12 ` [PATCH RESEND v8 04/21] dt-bindings: media: i2c: max96717: add support for MAX9295A Dumitru Ceclan
2025-12-08 14:12   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:12 ` [PATCH RESEND v8 05/21] dt-bindings: media: i2c: max96717: add support for MAX96793 Dumitru Ceclan
2025-12-08 14:12   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:12 ` [PATCH RESEND v8 06/21] dt-bindings: media: i2c: max96712: use pattern properties for ports Dumitru Ceclan
2025-12-08 14:12   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:12 ` [PATCH RESEND v8 07/21] dt-bindings: media: i2c: max96712: add support for I2C ATR Dumitru Ceclan
2025-12-08 14:12   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 08/21] dt-bindings: media: i2c: max96712: add support for POC supplies Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 09/21] dt-bindings: media: i2c: max96712: add support for MAX96724F/R Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 10/21] dt-bindings: media: i2c: max96714: add support for MAX96714R Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 11/21] dt-bindings: media: i2c: add MAX9296A, MAX96716A, MAX96792A Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 12/21] media: i2c: add Maxim GMSL2/3 serializer and deserializer framework Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 13/21] media: i2c: add Maxim GMSL2/3 serializer framework Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 14/21] media: i2c: add Maxim GMSL2/3 deserializer framework Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2026-03-10 16:35   ` Cory Keitz
2025-12-08 14:13 ` [PATCH RESEND v8 15/21] media: i2c: maxim-serdes: add MAX96717 driver Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 16/21] media: i2c: maxim-serdes: add MAX96724 driver Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2026-03-07 17:03   ` Cory Keitz [this message]
2025-12-08 14:13 ` [PATCH RESEND v8 17/21] media: i2c: maxim-serdes: add MAX9296A driver Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2026-01-20 13:34   ` Sakari Ailus
2026-01-26  9:55     ` Ceclan Dumitru
2026-01-26 10:01       ` Laurent Pinchart
2026-01-26 11:10         ` Cosmin Tanislav
2026-01-26 21:46       ` Sakari Ailus
2025-12-08 14:13 ` [PATCH RESEND v8 18/21] arm64: defconfig: disable deprecated MAX96712 driver Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 19/21] staging: media: remove " Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2025-12-08 14:13 ` [PATCH RESEND v8 20/21] media: i2c: remove MAX96717 driver Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay
2026-01-21 10:23   ` Sakari Ailus
2025-12-08 14:13 ` [PATCH RESEND v8 21/21] media: i2c: remove MAX96714 driver Dumitru Ceclan
2025-12-08 14:13   ` Dumitru Ceclan via B4 Relay

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aaxWATynXaVFglvS@bcd074ae11bb \
    --to=ckeitz@amazon.com \
    --cc=demonsingur@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dumitru.ceclan@analog.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=julien.massot@collabora.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=mchehab@kernel.org \
    --cc=mitrutzceclan@gmail.com \
    --cc=niklas.soderlund+renesas@ragnatech.se \
    --cc=niklas.soderlund@ragnatech.se \
    --cc=robh@kernel.org \
    --cc=sakari.ailus@linux.intel.com \
    --cc=tomi.valkeinen+renesas@ideasonboard.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.