Re: [PATCH v2 2/4] arm64: dts: apple: t8103: Add MCA and its support
From: Krzysztof Kozlowski
Date: Tue Aug 23 2022 - 09:57:14 EST
On 19/08/2022 17:24, Martin Povišer wrote:
>
>
>> On 19. 8. 2022, at 15:12, Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote:
>>
>> On 19/08/2022 15:54, Martin Povišer wrote:
>>> Add the MCA I2S transceiver node and its supporting NCO, ADMAC nodes.
>>>
>>> Signed-off-by: Martin Povišer <povik+lin@xxxxxxxxxxx>
>>> ---
>>> arch/arm64/boot/dts/apple/t8103.dtsi | 70 ++++++++++++++++++++++++++++
>>> 1 file changed, 70 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/apple/t8103.dtsi b/arch/arm64/boot/dts/apple/t8103.dtsi
>>> index 51a63b29d404..2dc3125aca5b 100644
>>> --- a/arch/arm64/boot/dts/apple/t8103.dtsi
>>> +++ b/arch/arm64/boot/dts/apple/t8103.dtsi
>>> @@ -532,6 +532,76 @@ port02: pci@2,0 {
>>> <0 0 0 4 &port02 0 0 0 3>;
>>> };
>>> };
>>> +
>>> + dart_sio: iommu@235004000 {
>>> + compatible = "apple,t8103-dart", "apple,dart";
>>> + reg = <0x2 0x35004000 0x0 0x4000>;
>>> + interrupt-parent = <&aic>;
>>> + interrupts = <AIC_IRQ 635 IRQ_TYPE_LEVEL_HIGH>;
>>> + #iommu-cells = <1>;
>>> + power-domains = <&ps_sio_cpu>;
>>> + };
>>> +
>>> + nco_clkref: clock-ref {
>>> + compatible = "fixed-clock";
>>> + #clock-cells = <0>;
>>> + clock-frequency = <900000000>;
>>> + clock-output-names = "nco_ref";
>>> + };
>>
>> Reference clocks are usually physically outside of SoC (e.g. on the
>> board), so:
>> 1. Not part of "soc" node.
>> 2. It should be defined by board. At least clock-frequency should be there.
>
> Ah, right, this deserves commentary: Since this is a reverse-engineered
> driver/platform support, we give up on knowing the clock tree exactly. Instead
> we model the clock input to the Numerically Controlled Oscillator (‘nco’ node
> below) with this fabulated fixed clock reference.
>
> I guess eventually the clock tree is rooted off the SoC, and there’s
> nothing guaranteeing the same reference clock to the NCO across machines (being
> function of the board wiring and the proprietary firmware). In the end I would
> argue for keeping the ‘clock-ref’ here in ’soc' but have the clock-frequency
> defined by board. Sounds reasonable?
Yes.
Best regards,
Krzysztof