2023-08-02 22:22:56

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 12/13] arm64: dts: ti: k3-am65: Enable TSCADC nodes at the board level

TSCADC nodes defined in the top-level AM65 SoC dtsi files are incomplete
and may not be functional unless they are extended with pinmux and/or
device information.

Disable the TSCADC nodes in the dtsi files and only enable the ones that
are actually pinned out on a given board.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi | 5 +----
arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi | 2 ++
arch/arm64/boot/dts/ti/k3-am654-base-board.dts | 2 ++
3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
index 6041862d5aa75..ba1c14a54acf4 100644
--- a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
@@ -582,11 +582,8 @@ &mcu_spi0 {
ti,pindir-d0-out-d1-in;
};

-&tscadc0 {
- status = "disabled";
-};
-
&tscadc1 {
+ status = "okay";
adc {
ti,adc-channels = <0 1 2 3 4 5>;
};
diff --git a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
index 2c9c20a9d9179..4defde540fe0b 100644
--- a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
@@ -112,6 +112,7 @@ tscadc0: tscadc@40200000 {
dmas = <&mcu_udmap 0x7100>,
<&mcu_udmap 0x7101 >;
dma-names = "fifo0", "fifo1";
+ status = "disabled";

adc {
#io-channel-cells = <1>;
@@ -130,6 +131,7 @@ tscadc1: tscadc@40210000 {
dmas = <&mcu_udmap 0x7102>,
<&mcu_udmap 0x7103>;
dma-names = "fifo0", "fifo1";
+ status = "disabled";

adc {
#io-channel-cells = <1>;
diff --git a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
index 43de7c132d343..17f45a9f7b146 100644
--- a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
+++ b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
@@ -478,12 +478,14 @@ &usb0_phy {
};

&tscadc0 {
+ status = "okay";
adc {
ti,adc-channels = <0 1 2 3 4 5 6 7>;
};
};

&tscadc1 {
+ status = "okay";
adc {
ti,adc-channels = <0 1 2 3 4 5 6 7>;
};
--
2.39.2



2023-08-07 07:00:28

by Dhruva Gole

[permalink] [raw]
Subject: Re: [PATCH 12/13] arm64: dts: ti: k3-am65: Enable TSCADC nodes at the board level

Andrew,

On 03/08/23 02:23, Andrew Davis wrote:
> TSCADC nodes defined in the top-level AM65 SoC dtsi files are incomplete
> and may not be functional unless they are extended with pinmux and/or
> device information.
>
> Disable the TSCADC nodes in the dtsi files and only enable the ones that
> are actually pinned out on a given board.
>
> Signed-off-by: Andrew Davis <[email protected]>
> ---
> arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi | 5 +----
> arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi | 2 ++
> arch/arm64/boot/dts/ti/k3-am654-base-board.dts | 2 ++
> 3 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
> index 6041862d5aa75..ba1c14a54acf4 100644
> --- a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
> @@ -582,11 +582,8 @@ &mcu_spi0 {
> ti,pindir-d0-out-d1-in;
> };
>
> -&tscadc0 {
> - status = "disabled";
> -};
> -
> &tscadc1 {
> + status = "okay";

The commit body says,
"Disable the TSCADC nodes in the dtsi files"

Please can we also provide some explanation on why
tscadc1 was left as okay here in a dtsi file?

> adc {
> ti,adc-channels = <0 1 2 3 4 5>;
> };
> diff --git a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
> index 2c9c20a9d9179..4defde540fe0b 100644
> --- a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
> @@ -112,6 +112,7 @@ tscadc0: tscadc@40200000 {
> dmas = <&mcu_udmap 0x7100>,
> <&mcu_udmap 0x7101 >;
> dma-names = "fifo0", "fifo1";
> + status = "disabled";
>
> adc {
> #io-channel-cells = <1>;
> @@ -130,6 +131,7 @@ tscadc1: tscadc@40210000 {
> dmas = <&mcu_udmap 0x7102>,
> <&mcu_udmap 0x7103>;
> dma-names = "fifo0", "fifo1";
> + status = "disabled";
>
> adc {
> #io-channel-cells = <1>;
> diff --git a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
> index 43de7c132d343..17f45a9f7b146 100644
> --- a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
> +++ b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
> @@ -478,12 +478,14 @@ &usb0_phy {
> };
>
> &tscadc0 {
> + status = "okay";
> adc {
> ti,adc-channels = <0 1 2 3 4 5 6 7>;
> };
> };
>
> &tscadc1 {
> + status = "okay";
> adc {
> ti,adc-channels = <0 1 2 3 4 5 6 7>;
> };

--
Thanks and Regards,
Dhruva Gole

2023-08-07 16:12:00

by Andrew Davis

[permalink] [raw]
Subject: Re: [PATCH 12/13] arm64: dts: ti: k3-am65: Enable TSCADC nodes at the board level

On 8/7/23 12:51 AM, Dhruva Gole wrote:
> Andrew,
>
> On 03/08/23 02:23, Andrew Davis wrote:
>> TSCADC nodes defined in the top-level AM65 SoC dtsi files are incomplete
>> and may not be functional unless they are extended with pinmux and/or
>> device information.
>>
>> Disable the TSCADC nodes in the dtsi files and only enable the ones that
>> are actually pinned out on a given board.
>>
>> Signed-off-by: Andrew Davis <[email protected]>
>> ---
>>   arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi | 5 +----
>>   arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi            | 2 ++
>>   arch/arm64/boot/dts/ti/k3-am654-base-board.dts     | 2 ++
>>   3 files changed, 5 insertions(+), 4 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
>> index 6041862d5aa75..ba1c14a54acf4 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
>> +++ b/arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
>> @@ -582,11 +582,8 @@ &mcu_spi0 {
>>       ti,pindir-d0-out-d1-in;
>>   };
>> -&tscadc0 {
>> -    status = "disabled";
>> -};
>> -
>>   &tscadc1 {
>> +    status = "okay";
>
> The commit body says,
> "Disable the TSCADC nodes in the dtsi files"
>
> Please can we also provide some explanation on why
> tscadc1 was left as okay here in a dtsi file?
>

Same reasoning as in my response for patch [4/13], the node
is complete at this point, so we enable it here.

The commit message is a bit off given these boards do their
pinmuxing in the .dtsi files, not at the last level .dts files
like most boards, but I kept the commit message consistent for
the whole series as this is a rare exception case. I can change
the message wording if you would like.

Andrew

>>       adc {
>>           ti,adc-channels = <0 1 2 3 4 5>;
>>       };
>> diff --git a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
>> index 2c9c20a9d9179..4defde540fe0b 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
>> +++ b/arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
>> @@ -112,6 +112,7 @@ tscadc0: tscadc@40200000 {
>>           dmas = <&mcu_udmap 0x7100>,
>>               <&mcu_udmap 0x7101 >;
>>           dma-names = "fifo0", "fifo1";
>> +        status = "disabled";
>>           adc {
>>               #io-channel-cells = <1>;
>> @@ -130,6 +131,7 @@ tscadc1: tscadc@40210000 {
>>           dmas = <&mcu_udmap 0x7102>,
>>               <&mcu_udmap 0x7103>;
>>           dma-names = "fifo0", "fifo1";
>> +        status = "disabled";
>>           adc {
>>               #io-channel-cells = <1>;
>> diff --git a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
>> index 43de7c132d343..17f45a9f7b146 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
>> +++ b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
>> @@ -478,12 +478,14 @@ &usb0_phy {
>>   };
>>   &tscadc0 {
>> +    status = "okay";
>>       adc {
>>           ti,adc-channels = <0 1 2 3 4 5 6 7>;
>>       };
>>   };
>>   &tscadc1 {
>> +    status = "okay";
>>       adc {
>>           ti,adc-channels = <0 1 2 3 4 5 6 7>;
>>       };
>