Re: [PATCH v4 1/3] dt-bindings: iio: adf4371: add refin mode

From: Krzysztof Kozlowski
Date: Mon Jan 13 2025 - 06:26:37 EST


On 13/01/2025 12:17, Nuno Sá wrote:
> On Mon, 2025-01-13 at 11:21 +0100, Krzysztof Kozlowski wrote:
>> On 13/01/2025 10:55, Nuno Sá wrote:
>>> On Mon, 2025-01-13 at 09:37 +0100, Krzysztof Kozlowski wrote:
>>>> On Thu, Jan 09, 2025 at 03:37:05PM +0200, Antoniu Miclaus wrote:
>>>>>    clock-names:
>>>>>      description:
>>>>> -      Must be "clkin"
>>>>> -    maxItems: 1
>>>>> +      Must be "clkin" if the input reference is single ended or "clkin-
>>>>> diff"
>>>>> +      if the input reference is differential. By default single ended
>>>>> input
>>>>> is
>>>>> +      applied.
>>>>> +    enum: [clkin, clkin-diff]
>>>>> +    default: clkin
>>>>
>>>> Which pins are these? I went through adf4371 datasheet and no reference
>>>> on clock inputs like clkin or clkin-diff.
>>>>
>>>>
>>>
>>> Hmm, I guess we should call this 'refp' and 'refp-n' then (the latter seems
>>> a
>>> bit more odd)? Or just 'ref' and 'ref-diff'?
>>
>> That mistake was done at the beginning - the "clkin" is just useless
>> name. It cannot be "clkout" and it cannot be anything else than clk, so
>> it is 100% redundant.
>>
>
> Oh sure... Makes sense and I forgot that the property is not new...
>
>> But looking for pins brought second point - here you claim these are
>> mutually exclusive while datasheet suggests that both inputs can be
>> connected. Unless they come from the same source always?
>>
>
> If you have a single ended input then only one pin (the positive one) will be
> used. If the input signal is differential, then both pins will be used. So they

But the clocks describe input pins, at least in typical case, so that's
my question: how many clock sources do you have here? One or two?

> are mutually exclusive... You either have single ended or a differential input.
> And depending on the input type, the limit of the input frequency varies.

Based on this, this is the same clock, so using "diff" is not a property
of "clocks". Look at other bindings how they encode differential choice
for some signals - usually bool property, but not always - see other
adi/admv devices.

Best regards,
Krzysztof