Re: [PATCH] arm64: dts: ti: k3-j7200-main: Add McASP nodes

From: Nishanth Menon
Date: Mon Oct 05 2020 - 08:08:45 EST


On 15:02-20201005, Peter Ujfalusi wrote:
>
>
> On 05/10/2020 14.58, Nishanth Menon wrote:
> > On 10:48-20201005, Peter Ujfalusi wrote:
> >> Add the nodes for McASP 0-2 and keep them disabled because several
> >> required properties are not present as they are board specific.
> >>
> >> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
> >> ---
> >> arch/arm64/boot/dts/ti/k3-j7200-main.dtsi | 57 +++++++++++++++++++++++
> >> 1 file changed, 57 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
> >> index 72d6496e88dd..cc6c2a81887a 100644
> >> --- a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
> >> +++ b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
> >> @@ -446,4 +446,61 @@ usb0: usb@6000000 {
> >> dr_mode = "otg";
> >> };
> >> };
> >> +x
> >> + mcasp0: mcasp@02b00000 {
> >> + compatible = "ti,am33xx-mcasp-audio";
> >> + reg = <0x0 0x02b00000 0x0 0x2000>,
> >> + <0x0 0x02b08000 0x0 0x1000>;
> >> + reg-names = "mpu","dat";
> >> + interrupts = <GIC_SPI 544 IRQ_TYPE_LEVEL_HIGH>,
> >> + <GIC_SPI 545 IRQ_TYPE_LEVEL_HIGH>;
> >> + interrupt-names = "tx", "rx";
> >> +
> >> + dmas = <&main_udmap 0xc400>, <&main_udmap 0x4400>;
> >> + dma-names = "tx", "rx";
> >> +
> >> + clocks = <&k3_clks 174 40>;
> >> + clock-names = "fck";
> >> + power-domains = <&k3_pds 174 TI_SCI_PD_EXCLUSIVE>;
> >> +
> >> + status = "disabled";
> >
> > I see that there is inconsistent usage of "disabled" in our SoC.dts
> >
> > Our generic rule has been set them to disabled in board.dtsi
> > McASP and DSS for existing SoC dts do not follow this.. which is a tad
> > confusing.. (considering that not even all uarts come out on every board
> > and every uart needs pinmux to function..)
>
> "keep them disabled because several required properties are not present
> as they are board specific."
>
> In board file the enabled mcasp must be updated with options that is
> required for operation. Without those option the McASP can not be
> initialized.
>
> I think we have been revisiting the very same discussion every time we
> have a new SoC with McASP...
>

Yep.. This doe'snt really follow the rest of the SoC definition. [1]
came to mind. The McASP discussion is a variation in the debate of the
same. I'd argue Serdes, or for that matter any IP that has a link to
outside-the-SoC world has the same discussion point.

[1] https://patchwork.kernel.org/patch/9304575/

--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D