[PATCH 1/2] dt-bindings: i2c: qcom-cci: Document qcom,scl-stretch-enable property

Cory Keitz via B4 Relay posted 2 patches 1 month ago
[PATCH 1/2] dt-bindings: i2c: qcom-cci: Document qcom,scl-stretch-enable property
Posted by Cory Keitz via B4 Relay 1 month ago
From: Cory Keitz <ckeitz@amazon.com>

Add the optional boolean property "qcom,scl-stretch-enable" to the
CCI i2c-bus sub-nodes. This property enables SCL clock stretching on
the corresponding CCI master, which is needed by peripherals such as
GMSL deserializers that hold SCL low to absorb forwarding latency.

Signed-off-by: Cory Keitz <ckeitz@amazon.com>
---
 Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
index 399a09409e07..fea609fa2f05 100644
--- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
+++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
@@ -78,6 +78,14 @@ patternProperties:
       clock-frequency:
         default: 100000
 
+      qcom,scl-stretch-enable:
+        type: boolean
+        description:
+          Enable SCL clock stretching on this CCI master. When set, the
+          CCI hardware will assert the SCL stretch enable bit in the
+          MISC_CTL register, allowing peripherals to hold SCL low to
+          throttle the bus.
+
 required:
   - compatible
   - clock-names

-- 
2.47.3
Re: [PATCH 1/2] dt-bindings: i2c: qcom-cci: Document qcom,scl-stretch-enable property
Posted by Krzysztof Kozlowski 1 month ago
On 05/03/2026 15:40, Cory Keitz via B4 Relay wrote:
> From: Cory Keitz <ckeitz@amazon.com>
> 
> Add the optional boolean property "qcom,scl-stretch-enable" to the
> CCI i2c-bus sub-nodes. This property enables SCL clock stretching on
> the corresponding CCI master, which is needed by peripherals such as
> GMSL deserializers that hold SCL low to absorb forwarding latency.
> 
> Signed-off-by: Cory Keitz <ckeitz@amazon.com>
> ---
>  Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
> index 399a09409e07..fea609fa2f05 100644
> --- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
> +++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
> @@ -78,6 +78,14 @@ patternProperties:
>        clock-frequency:
>          default: 100000
>  
> +      qcom,scl-stretch-enable:

I don't understand why only Qualcomm needs per-controller property and
no others need to static configuration. Maybe this is just already solved?

And I actually found this:
https://lore.kernel.org/all/20230312131933.248715-2-andi.shyti@kernel.org/

so this is all done.

Best regards,
Krzysztof
Re: [PATCH 1/2] dt-bindings: i2c: qcom-cci: Document qcom,scl-stretch-enable property
Posted by Cory Keitz 1 month ago
On Thu, Mar 05, 2026 at 04:18:11PM +0100, Krzysztof Kozlowski wrote:
> I don't understand why only Qualcomm needs per-controller property and
> no others need to static configuration. Maybe this is just already solved?
> 
> And I actually found this:
> https://lore.kernel.org/all/20230312131933.248715-2-andi.shyti@kernel.org/
> 
> so this is all done.

Thanks, I hadn't seen this. The two properties there aren't quite the
same but the point about it being a general property is well taken. I
plan to follow Loic's suggestion and hardcode instead of using a DT
property.