All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pratyush Yadav <p.yadav@ti.com>
To: Vinod Koul <vkoul@kernel.org>
Cc: Vignesh Raghavendra <vigneshr@ti.com>,
	Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Nikhil Devshatwar <nikhil.nd@ti.com>,
	Paul Kocialkowski <paul.kocialkowski@bootlin.com>,
	Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Kishon Vijay Abraham I <kishon@ti.com>,
	Pratyush Yadav <p.yadav@ti.com>, Rob Herring <robh+dt@kernel.org>,
	<devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<linux-phy@lists.infradead.org>
Subject: [PATCH v5 0/6] Rx mode support for Cadence DPHY
Date: Fri, 3 Sep 2021 00:25:37 +0530	[thread overview]
Message-ID: <20210902185543.18875-1-p.yadav@ti.com> (raw)

Hi,

This series adds support for Rx mode on Cadence DPHY driver. It has been
split off from [0] to facilitate easier merging. I have still kept the
version number to maintain continuity with the previous patches. This
series also includes conversion to YAML binding.

Tested on TI's J721E with OV5640 sensor.

[0] https://patchwork.linuxtv.org/project/linux-media/list/?series=5526&state=%2A&archive=both

Changes in v5:
- Based on Laurent's suggestion, add cdns_dphy_info which contains the
  phy_ops and cdns_dphy_tx_ops (renamed from cdns_dphy_ops). This lets us
  get rid of the phy ops wrappers.
- Move probe() and remove() into cdns_dphy_common_ops() since they can
  be used by both modes. Drop the check in power_on().
- Get the clocks in the tx ops probe to make sure they are mandatory for
  Tx mode but not for Rx mode.
- Use the new cdns_dphy_info to specify PHY ops.
- Re-order include in alphabetical order.
- Make bands const.
- Drop num_bands.
- Make i, lanes unsigned.
- Drop the maximum check in cdns_dphy_rx_get_band_ctrl(). Let the loop
  complete and return -EOPNOTSUPP when we reach the end.
- Drop the "rate < bands[i].min_rate" check since the bands are in
  ascending order.
- Move data_lane_ctrl to start of function and make it static const.
- Make clocks a required property based on the compatible.
- Use enum instead.

Changes in v4:
- Instead of having both Rx and Tx modes in the same driver data, keep
  them separate since the op selection is based on compatible now. For
  that reason, the cdns_dphy_driver_data struct is no longer needed.
- Rename ref_dphy_ops to tx_ref_dphy_ops to clarify their purpose.
- Drop submode checks in validate() hook.
- Drop the submode parts. Use a different compatible for the Rx ops.
- Make bands and num_bands static.
- Drop the submode patches. Use a different compatible for Rx mode DPHY
instead.

Changes in v3:
- Use a table to select the band.
- Use a table to poll the data lane ready bits.
- Multiply the DPHY HS clock rate by 2 to get the bit rate since the
  clock is DDR.
- Add Rob's R-by.

Changes in v2:
- Drop reg description.
- Add a description for each DPHY clock.
- Rename dphy@... to phy@... in example.
- Add Laurent's R-by.
- Re-order subject prefixes.
- Re-order subject prefixes.
- Add power-domain to the example.
- Add Laurent's R-by.
- Re-order subject prefixes.

Pratyush Yadav (6):
  phy: cdns-dphy: Prepare for Rx support
  phy: cdns-dphy: Add Rx support
  phy: dt-bindings: Convert Cadence DPHY binding to YAML
  phy: dt-bindings: cdns,dphy: make clocks optional for Rx mode
  phy: dt-bindings: cdns,dphy: add power-domains property
  phy: dt-bindings: cdns,dphy: add Rx DPHY compatible

 .../devicetree/bindings/phy/cdns,dphy.txt     |  20 -
 .../devicetree/bindings/phy/cdns,dphy.yaml    |  66 ++++
 drivers/phy/cadence/cdns-dphy.c               | 351 +++++++++++++++---
 3 files changed, 356 insertions(+), 81 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/phy/cdns,dphy.txt
 create mode 100644 Documentation/devicetree/bindings/phy/cdns,dphy.yaml

-- 
2.33.0


WARNING: multiple messages have this Message-ID (diff)
From: Pratyush Yadav <p.yadav@ti.com>
To: Vinod Koul <vkoul@kernel.org>
Cc: Vignesh Raghavendra <vigneshr@ti.com>,
	Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Nikhil Devshatwar <nikhil.nd@ti.com>,
	Paul Kocialkowski <paul.kocialkowski@bootlin.com>,
	Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Kishon Vijay Abraham I <kishon@ti.com>,
	Pratyush Yadav <p.yadav@ti.com>, Rob Herring <robh+dt@kernel.org>,
	<devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<linux-phy@lists.infradead.org>
Subject: [PATCH v5 0/6] Rx mode support for Cadence DPHY
Date: Fri, 3 Sep 2021 00:25:37 +0530	[thread overview]
Message-ID: <20210902185543.18875-1-p.yadav@ti.com> (raw)

Hi,

This series adds support for Rx mode on Cadence DPHY driver. It has been
split off from [0] to facilitate easier merging. I have still kept the
version number to maintain continuity with the previous patches. This
series also includes conversion to YAML binding.

Tested on TI's J721E with OV5640 sensor.

[0] https://patchwork.linuxtv.org/project/linux-media/list/?series=5526&state=%2A&archive=both

Changes in v5:
- Based on Laurent's suggestion, add cdns_dphy_info which contains the
  phy_ops and cdns_dphy_tx_ops (renamed from cdns_dphy_ops). This lets us
  get rid of the phy ops wrappers.
- Move probe() and remove() into cdns_dphy_common_ops() since they can
  be used by both modes. Drop the check in power_on().
- Get the clocks in the tx ops probe to make sure they are mandatory for
  Tx mode but not for Rx mode.
- Use the new cdns_dphy_info to specify PHY ops.
- Re-order include in alphabetical order.
- Make bands const.
- Drop num_bands.
- Make i, lanes unsigned.
- Drop the maximum check in cdns_dphy_rx_get_band_ctrl(). Let the loop
  complete and return -EOPNOTSUPP when we reach the end.
- Drop the "rate < bands[i].min_rate" check since the bands are in
  ascending order.
- Move data_lane_ctrl to start of function and make it static const.
- Make clocks a required property based on the compatible.
- Use enum instead.

Changes in v4:
- Instead of having both Rx and Tx modes in the same driver data, keep
  them separate since the op selection is based on compatible now. For
  that reason, the cdns_dphy_driver_data struct is no longer needed.
- Rename ref_dphy_ops to tx_ref_dphy_ops to clarify their purpose.
- Drop submode checks in validate() hook.
- Drop the submode parts. Use a different compatible for the Rx ops.
- Make bands and num_bands static.
- Drop the submode patches. Use a different compatible for Rx mode DPHY
instead.

Changes in v3:
- Use a table to select the band.
- Use a table to poll the data lane ready bits.
- Multiply the DPHY HS clock rate by 2 to get the bit rate since the
  clock is DDR.
- Add Rob's R-by.

Changes in v2:
- Drop reg description.
- Add a description for each DPHY clock.
- Rename dphy@... to phy@... in example.
- Add Laurent's R-by.
- Re-order subject prefixes.
- Re-order subject prefixes.
- Add power-domain to the example.
- Add Laurent's R-by.
- Re-order subject prefixes.

Pratyush Yadav (6):
  phy: cdns-dphy: Prepare for Rx support
  phy: cdns-dphy: Add Rx support
  phy: dt-bindings: Convert Cadence DPHY binding to YAML
  phy: dt-bindings: cdns,dphy: make clocks optional for Rx mode
  phy: dt-bindings: cdns,dphy: add power-domains property
  phy: dt-bindings: cdns,dphy: add Rx DPHY compatible

 .../devicetree/bindings/phy/cdns,dphy.txt     |  20 -
 .../devicetree/bindings/phy/cdns,dphy.yaml    |  66 ++++
 drivers/phy/cadence/cdns-dphy.c               | 351 +++++++++++++++---
 3 files changed, 356 insertions(+), 81 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/phy/cdns,dphy.txt
 create mode 100644 Documentation/devicetree/bindings/phy/cdns,dphy.yaml

-- 
2.33.0


-- 
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy

             reply	other threads:[~2021-09-02 18:56 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-02 18:55 Pratyush Yadav [this message]
2021-09-02 18:55 ` [PATCH v5 0/6] Rx mode support for Cadence DPHY Pratyush Yadav
2021-09-02 18:55 ` [PATCH v5 1/6] phy: cdns-dphy: Prepare for Rx support Pratyush Yadav
2021-09-02 18:55   ` Pratyush Yadav
2021-10-07  0:02   ` Laurent Pinchart
2021-10-07  0:02     ` Laurent Pinchart
2021-09-02 18:55 ` [PATCH v5 2/6] phy: cdns-dphy: Add " Pratyush Yadav
2021-09-02 18:55   ` Pratyush Yadav
2021-09-16 10:22   ` Paul Kocialkowski
2021-09-16 10:22     ` Paul Kocialkowski
2021-09-17 17:28     ` Pratyush Yadav
2021-09-17 17:28       ` Pratyush Yadav
2021-09-28 16:35       ` Pratyush Yadav
2021-09-28 16:35         ` Pratyush Yadav
2021-10-01  6:23       ` Vinod Koul
2021-10-01  6:23         ` Vinod Koul
2021-10-01  8:07         ` Pratyush Yadav
2021-10-01  8:07           ` Pratyush Yadav
2021-10-07  0:10         ` Laurent Pinchart
2021-10-07  0:10           ` Laurent Pinchart
2021-10-07 12:14           ` Pratyush Yadav
2021-10-07 12:14             ` Pratyush Yadav
2021-10-08 10:27             ` Laurent Pinchart
2021-10-08 10:27               ` Laurent Pinchart
2021-10-08 12:55               ` Paul Kocialkowski
2021-10-08 12:55                 ` Paul Kocialkowski
2021-10-25  8:09                 ` Vinod Koul
2021-10-25  8:09                   ` Vinod Koul
2021-09-02 18:55 ` [PATCH v5 3/6] phy: dt-bindings: Convert Cadence DPHY binding to YAML Pratyush Yadav
2021-09-02 18:55   ` Pratyush Yadav
2021-09-02 18:55 ` [PATCH v5 4/6] phy: dt-bindings: cdns,dphy: make clocks optional for Rx mode Pratyush Yadav
2021-09-02 18:55   ` [PATCH v5 4/6] phy: dt-bindings: cdns, dphy: " Pratyush Yadav
2021-09-07 19:02   ` [PATCH v5 4/6] phy: dt-bindings: cdns,dphy: " Rob Herring
2021-09-07 19:02     ` [PATCH v5 4/6] phy: dt-bindings: cdns, dphy: " Rob Herring
2021-10-06 23:57   ` [PATCH v5 4/6] phy: dt-bindings: cdns,dphy: " Laurent Pinchart
2021-10-06 23:57     ` [PATCH v5 4/6] phy: dt-bindings: cdns, dphy: " Laurent Pinchart
2021-09-02 18:55 ` [PATCH v5 5/6] phy: dt-bindings: cdns,dphy: add power-domains property Pratyush Yadav
2021-09-02 18:55   ` [PATCH v5 5/6] phy: dt-bindings: cdns, dphy: " Pratyush Yadav
2021-09-02 18:55 ` [PATCH v5 6/6] phy: dt-bindings: cdns,dphy: add Rx DPHY compatible Pratyush Yadav
2021-09-02 18:55   ` Pratyush Yadav
2021-09-07 19:03   ` Rob Herring
2021-09-07 19:03     ` Rob Herring

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=20210902185543.18875-1-p.yadav@ti.com \
    --to=p.yadav@ti.com \
    --cc=chunfeng.yun@mediatek.com \
    --cc=devicetree@vger.kernel.org \
    --cc=kishon@ti.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-phy@lists.infradead.org \
    --cc=nikhil.nd@ti.com \
    --cc=paul.kocialkowski@bootlin.com \
    --cc=robh+dt@kernel.org \
    --cc=tomi.valkeinen@ideasonboard.com \
    --cc=vigneshr@ti.com \
    --cc=vkoul@kernel.org \
    /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.