From: Nicolas Frattaroli <nicolas.frattar...@collabora.com>

The NPU on the ROCK5B uses the same regulator for both the sram-supply
and the npu's supply. Add this regulator, and enable all the NPU bits.
Also add the regulator as a domain-supply to the pd_npu power domain.

v8:
- Remove notion of top core (Robin Murphy)

Signed-off-by: Nicolas Frattaroli <nicolas.frattar...@collabora.com>
Tested-by: Heiko Stuebner <he...@sntech.de>
Signed-off-by: Tomeu Vizoso <to...@tomeuvizoso.net>
---
 arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi | 57 ++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi 
b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi
index 
6052787d2560978d2bae6cfbeea5fc1d419d583a..06f73f16901026485c02cecf9176d0d7dc7a021a
 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi
@@ -309,6 +309,29 @@ regulator-state-mem {
        };
 };
 
+&i2c1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c1m2_xfer>;
+       status = "okay";
+
+       vdd_npu_s0: regulator@42 {
+               compatible = "rockchip,rk8602";
+               reg = <0x42>;
+               fcs,suspend-voltage-selector = <1>;
+               regulator-name = "vdd_npu_s0";
+               regulator-boot-on;
+               regulator-enable-ramp-delay = <500>;
+               regulator-min-microvolt = <550000>;
+               regulator-max-microvolt = <950000>;
+               regulator-ramp-delay = <2300>;
+               vin-supply = <&vcc5v0_sys>;
+
+               regulator-state-mem {
+                       regulator-off-in-suspend;
+                };
+       };
+};
+
 &i2c6 {
        status = "okay";
 
@@ -433,6 +456,10 @@ &pd_gpu {
        domain-supply = <&vdd_gpu_s0>;
 };
 
+&pd_npu {
+       domain-supply = <&vdd_npu_s0>;
+};
+
 &pinctrl {
        hdmirx {
                hdmirx_hpd: hdmirx-5v-detection {
@@ -487,6 +514,36 @@ &pwm1 {
        status = "okay";
 };
 
+&rknn_core_0 {
+       npu-supply = <&vdd_npu_s0>;
+       sram-supply = <&vdd_npu_s0>;
+       status = "okay";
+};
+
+&rknn_core_1 {
+       npu-supply = <&vdd_npu_s0>;
+       sram-supply = <&vdd_npu_s0>;
+       status = "okay";
+};
+
+&rknn_core_2 {
+       npu-supply = <&vdd_npu_s0>;
+       sram-supply = <&vdd_npu_s0>;
+       status = "okay";
+};
+
+&rknn_mmu_top {
+       status = "okay";
+};
+
+&rknn_mmu_1 {
+       status = "okay";
+};
+
+&rknn_mmu_2 {
+       status = "okay";
+};
+
 &saradc {
        vref-supply = <&avcc_1v8_s0>;
        status = "okay";

-- 
2.50.0

Reply via email to