[PATCH v13] arm64: zynqmp: DT: Add Xilinx AMS node

Michael Tretter m.tretter at pengutronix.de
Thu May 5 02:43:56 PDT 2022


From: Anand Ashok Dumbre <anand.ashok.dumbre at xilinx.com>

The Xilinx AMS includes an ADC as well as on-chip sensors that can be
used to sample external and monitor on-die operating conditions, such as
temperature and supply voltage levels.

Co-developed-by: Manish Narani <manish.narani at xilinx.com>
Signed-off-by: Manish Narani <manish.narani at xilinx.com>
Signed-off-by: Anand Ashok Dumbre <anand.ashok.dumbre at xilinx.com>
Signed-off-by: Michael Tretter <m.tretter at pengutronix.de>
---

The patch series [0] for the AMS driver was applied, but the patch to
add the node to the device tree was skipped. Thus, the driver is not
probed at all.

I added the xilinx_ams node to zynqmp-clk-ccf.dtsi, too, to allow the
driver to find the firmware clock as mentioned in my review comment on
the previous series.

Michael

[0] https://lore.kernel.org/all/20211203212358.31444-1-anand.ashok.dumbre@xilinx.com/

Changelog:

v13:
- Add ams node to ZynqMP clock controller
---
 .../arm64/boot/dts/xilinx/zynqmp-clk-ccf.dtsi |  4 ++++
 arch/arm64/boot/dts/xilinx/zynqmp.dtsi        | 24 +++++++++++++++++++
 2 files changed, 28 insertions(+)

diff --git a/arch/arm64/boot/dts/xilinx/zynqmp-clk-ccf.dtsi b/arch/arm64/boot/dts/xilinx/zynqmp-clk-ccf.dtsi
index 8493dd7d5f1f..e172fa05c9a0 100644
--- a/arch/arm64/boot/dts/xilinx/zynqmp-clk-ccf.dtsi
+++ b/arch/arm64/boot/dts/xilinx/zynqmp-clk-ccf.dtsi
@@ -239,6 +239,10 @@ &lpd_watchdog {
 	clocks = <&zynqmp_clk LPD_WDT>;
 };
 
+&xilinx_ams {
+	clocks = <&zynqmp_clk AMS_REF>;
+};
+
 &zynqmp_dpdma {
 	clocks = <&zynqmp_clk DPDMA_REF>;
 };
diff --git a/arch/arm64/boot/dts/xilinx/zynqmp.dtsi b/arch/arm64/boot/dts/xilinx/zynqmp.dtsi
index c715a18368c2..573afccfda6a 100644
--- a/arch/arm64/boot/dts/xilinx/zynqmp.dtsi
+++ b/arch/arm64/boot/dts/xilinx/zynqmp.dtsi
@@ -874,6 +874,30 @@ lpd_watchdog: watchdog at ff150000 {
 			timeout-sec = <10>;
 		};
 
+		xilinx_ams: ams at ffa50000 {
+			compatible = "xlnx,zynqmp-ams";
+			status = "disabled";
+			interrupt-parent = <&gic>;
+			interrupts = <0 56 4>;
+			reg = <0x0 0xffa50000 0x0 0x800>;
+			#address-cells = <1>;
+			#size-cells = <1>;
+			#io-channel-cells = <1>;
+			ranges = <0 0 0xffa50800 0x800>;
+
+			ams_ps: ams-ps at 0 {
+				compatible = "xlnx,zynqmp-ams-ps";
+				status = "disabled";
+				reg = <0 0x400>;
+			};
+
+			ams_pl: ams-pl at 400 {
+				compatible = "xlnx,zynqmp-ams-pl";
+				status = "disabled";
+				reg = <0x400 0x400>;
+			};
+		};
+
 		zynqmp_dpdma: dma-controller at fd4c0000 {
 			compatible = "xlnx,zynqmp-dpdma";
 			status = "disabled";
-- 
2.30.2




More information about the linux-arm-kernel mailing list