diff --git a/bindings/input/touchscreen/st,stmfts.txt b/bindings/input/touchscreen/st,stmfts.txt index f87fa6f6..4f4b3678 100644 --- a/bindings/input/touchscreen/st,stmfts.txt +++ b/bindings/input/touchscreen/st,stmfts.txt @@ -9,33 +9,36 @@ coordinates. Required properties: - compatible : must be "st,stmfts" OR "st,fts" OR "st,fts2" -- reg : I2C slave address, (e.g. 0x49) +- reg : I2C slave address, (e.g. 0x49). Or 0 for SPI interface - interrupts : interrupt specification - avdd-supply : analogic power supply - vdd-supply : power supply -- touchscreen-size-x : see touchscreen.txt -- touchscreen-size-y : see touchscreen.txt - -Optional properties: -- touch-key-connected : specifies whether the touchkey feature is connected -- ledvdd-supply : power supply to the touch key leds +- st,irq-gpio : interrupt gpio. +- st,irq-flags : irq trigger type config, , value should be: + 1 - rising edge, + 2 - falling edge, + 4 - high level, + 8 - low level. +- st,reset-gpio : reset gpio +- st,regulator_dvdd : dvdd regulator name +- st,regulator_avdd : avdd regulator name Example: -i2c@00000000 { - - /* ... */ - - touchscreen@49 { - compatible = "st,stmfts"; +&i2c_6 { + status = "ok"; + st_fts@49 { + compatible = "st,fts"; reg = <0x49>; - interrupt-parent = <&gpa1>; - interrupts = <1 IRQ_TYPE_NONE>; - touchscreen-size-x = <1599>; - touchscreen-size-y = <2559>; - touch-key-connected; - avdd-supply = <&ldo30_reg>; - vdd-supply = <&ldo31_reg>; - ledvdd-supply = <&ldo33_reg>; + + interrupt-parent = <&tlmm>; + interrupts = <162 0x2008>; + vdd-supply = <&L4B>; + avdd-supply = <&L14B>; + st,irq-gpio = <&tlmm 162 0x2008>; + st,irq-flags = <8>; + st,reset-gpio = <&tlmm 161 0x00>; + st,regulator_dvdd = "vdd"; + st,regulator_avdd = "avdd"; }; }; diff --git a/bindings/soc/qcom/qcom,mem-buf-msgq.yaml b/bindings/soc/qcom/qcom,mem-buf-msgq.yaml new file mode 100644 index 00000000..115e4978 --- /dev/null +++ b/bindings/soc/qcom/qcom,mem-buf-msgq.yaml @@ -0,0 +1,36 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/soc/qcom/qcom,mem-buf-msgq.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#" + +title: Qualcomm Technologies, Inc. Memory Buffer Sharing Msgq driver + +maintainers: + - Chris Goldsworthy + +description: | + Provides inter-VM message transfer services to the qcom,mem-buf driver + +properties: + compatible: + items: + - const: qcom,mem-buf-msgq + + qcom,msgq-names: + $ref: /schemas/types.yaml#/definitions/string-array + description: + A list of msgqs this device is able to communicate over. + +additionalProperties: false + +required: + - compatible + - qcom,msgq-names + +examples: + - | + qcom,mem-buf-msgq { + compatible = "qcom,mem-buf-msgq"; + qcom,msgq-names = "trusted_vm", "oem_vm"; + }; diff --git a/bindings/soc/qcom/qcom,mem-buf.yaml b/bindings/soc/qcom/qcom,mem-buf.yaml index 6065beb8..9d5ca59a 100644 --- a/bindings/soc/qcom/qcom,mem-buf.yaml +++ b/bindings/soc/qcom/qcom,mem-buf.yaml @@ -4,7 +4,7 @@ $id: "http://devicetree.org/schemas/soc/qcom/qcom,mem-buf.yaml#" $schema: "http://devicetree.org/meta-schemas/core.yaml#" -title: Qualcomm Technologies, Inc. Memory Buffer Sharing binding +title: Qualcomm Technologies, Inc. Memory Buffer Sharing Driver maintainers: - Chris Goldsworthy @@ -18,9 +18,12 @@ properties: items: - const: qcom,mem-buf qcom,vmid: + $ref: '/schemas/types.yaml#/definitions/uint32' description: integer ID of the current virtual machine. qcom,mem-buf-capabilities: + $ref: '/schemas/types.yaml#/definitions/string' + description: One of supplier, consumer, or dual. oneOf: - const: supplier description: @@ -39,6 +42,8 @@ properties: remote allocation requests, as well as request and accept memory from other VMs +additionalProperties: false + required: - compatible - qcom,mem-buf-capabilities @@ -49,14 +54,3 @@ examples: compatible = "qcom,mem-buf"; qcom,mem-buf-capabilities = "supplier"; }; - -description: | - Provides inter-VM message transfer services to the qcom,mem-buf driver - -properties: - compatible: - items: - - const: qcom,mem-buf-msgq - -required: - - compatible diff --git a/qcom/kera.dtsi b/qcom/kera.dtsi index dc75d5a9..47451b2e 100644 --- a/qcom/kera.dtsi +++ b/qcom/kera.dtsi @@ -4,6 +4,7 @@ */ #include +#include / { model = "Qualcomm Technologies, Inc. Kera"; @@ -283,6 +284,15 @@ interrupt-controller; #interrupt-cells = <2>; }; + + ipcc_mproc: qcom,ipcc@406000 { + compatible = "qcom,ipcc"; + reg = <0x406000 0x1000>; + interrupts = ; + interrupt-controller; + #interrupt-cells = <3>; + #mbox-cells = <2>; + }; }; #include "kera-pinctrl.dtsi" diff --git a/qcom/parrot-atp-overlay.dts b/qcom/parrot-atp-overlay.dts index c57cbf6f..e111accc 100644 --- a/qcom/parrot-atp-overlay.dts +++ b/qcom/parrot-atp-overlay.dts @@ -6,13 +6,13 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-atp.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot ATP"; compatible = "qcom,parrot-atp", "qcom,parrot", "qcom,atp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <33 0>; }; diff --git a/qcom/parrot-atp.dts b/qcom/parrot-atp.dts index c916fa4f..e610e8a6 100644 --- a/qcom/parrot-atp.dts +++ b/qcom/parrot-atp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-atp.dtsi" / { diff --git a/qcom/parrot-idp-4gb-overlay.dts b/qcom/parrot-idp-4gb-overlay.dts index 9cb3260f..6af2892f 100644 --- a/qcom/parrot-idp-4gb-overlay.dts +++ b/qcom/parrot-idp-4gb-overlay.dts @@ -6,13 +6,12 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot IDP 4GB DDR"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <34 0x600>; }; diff --git a/qcom/parrot-idp-4gb.dts b/qcom/parrot-idp-4gb.dts index df046cf5..458e3b2e 100644 --- a/qcom/parrot-idp-4gb.dts +++ b/qcom/parrot-idp-4gb.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-4gb.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-nopmi-overlay.dts b/qcom/parrot-idp-nopmi-overlay.dts index eba84c44..5397e354 100644 --- a/qcom/parrot-idp-nopmi-overlay.dts +++ b/qcom/parrot-idp-nopmi-overlay.dts @@ -6,14 +6,14 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot IDP"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <34 0>; qcom,pmic-id-size = <9>; qcom,pmic-id = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; diff --git a/qcom/parrot-idp-nopmi.dts b/qcom/parrot-idp-nopmi.dts index 7ffc6702..71e4298b 100644 --- a/qcom/parrot-idp-nopmi.dts +++ b/qcom/parrot-idp-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp.dtsi" / { diff --git a/qcom/parrot-idp-overlay.dts b/qcom/parrot-idp-overlay.dts index 59ba2ac8..533b0528 100644 --- a/qcom/parrot-idp-overlay.dts +++ b/qcom/parrot-idp-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp.dtsi" #include "parrot-idp-pm7250b.dtsi" @@ -14,6 +13,7 @@ model = "Qualcomm Technologies, Inc. Parrot IDP"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <34 0>; }; diff --git a/qcom/parrot-idp-pm8350b-overlay.dts b/qcom/parrot-idp-pm8350b-overlay.dts index d0cc4845..ff22b595 100644 --- a/qcom/parrot-idp-pm8350b-overlay.dts +++ b/qcom/parrot-idp-pm8350b-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp.dtsi" #include "parrot-idp-pm8350b.dtsi" @@ -14,6 +13,7 @@ model = "Qualcomm Technologies, Inc. Parrot IDP"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <34 0>; }; diff --git a/qcom/parrot-idp-pm8350b.dts b/qcom/parrot-idp-pm8350b.dts index 8ee2ec22..37b7e27b 100644 --- a/qcom/parrot-idp-pm8350b.dts +++ b/qcom/parrot-idp-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp.dtsi" #include "parrot-idp-pm8350b.dtsi" diff --git a/qcom/parrot-idp-wcn3990-4gb-overlay.dts b/qcom/parrot-idp-wcn3990-4gb-overlay.dts index e9a40f89..b3148fd1 100644 --- a/qcom/parrot-idp-wcn3990-4gb-overlay.dts +++ b/qcom/parrot-idp-wcn3990-4gb-overlay.dts @@ -6,13 +6,12 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot IDP 4GB DDR + WCN3990"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <34 0x601>; }; diff --git a/qcom/parrot-idp-wcn3990-4gb.dts b/qcom/parrot-idp-wcn3990-4gb.dts index c5850d3d..e86137c5 100644 --- a/qcom/parrot-idp-wcn3990-4gb.dts +++ b/qcom/parrot-idp-wcn3990-4gb.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-4gb.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-wcn3990-amoled-rcm-4gb-overlay.dts b/qcom/parrot-idp-wcn3990-amoled-rcm-4gb-overlay.dts index a87a72a8..194d27a1 100644 --- a/qcom/parrot-idp-wcn3990-amoled-rcm-4gb-overlay.dts +++ b/qcom/parrot-idp-wcn3990-amoled-rcm-4gb-overlay.dts @@ -6,13 +6,12 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990-amoled-rcm-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot WCN3990 IDP 4GB DDR + AMOLED + RCM"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <34 0x603>; }; diff --git a/qcom/parrot-idp-wcn3990-amoled-rcm-4gb.dts b/qcom/parrot-idp-wcn3990-amoled-rcm-4gb.dts index 23372ff3..c6015833 100644 --- a/qcom/parrot-idp-wcn3990-amoled-rcm-4gb.dts +++ b/qcom/parrot-idp-wcn3990-amoled-rcm-4gb.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-4gb.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990-amoled-rcm-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-wcn3990-amoled-rcm-overlay.dts b/qcom/parrot-idp-wcn3990-amoled-rcm-overlay.dts index d9ced551..eb0c7297 100644 --- a/qcom/parrot-idp-wcn3990-amoled-rcm-overlay.dts +++ b/qcom/parrot-idp-wcn3990-amoled-rcm-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" @@ -14,6 +13,7 @@ model = "Qualcomm Technologies, Inc. Parrot WCN3990 IDP + AMOLED + RCM"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <34 3>; }; diff --git a/qcom/parrot-idp-wcn3990-amoled-rcm.dts b/qcom/parrot-idp-wcn3990-amoled-rcm.dts index 09bc3b06..36559e2c 100644 --- a/qcom/parrot-idp-wcn3990-amoled-rcm.dts +++ b/qcom/parrot-idp-wcn3990-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-wcn3990-overlay.dts b/qcom/parrot-idp-wcn3990-overlay.dts index b9605f08..22b78075 100644 --- a/qcom/parrot-idp-wcn3990-overlay.dts +++ b/qcom/parrot-idp-wcn3990-overlay.dts @@ -5,7 +5,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990.dtsi" #include "parrot-idp-pm7250b.dtsi" @@ -13,6 +12,7 @@ model = "Qualcomm Technologies, Inc. Parrot IDP + WCN3990"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <34 1>; }; diff --git a/qcom/parrot-idp-wcn3990.dts b/qcom/parrot-idp-wcn3990.dts index f21fb180..a166d313 100644 --- a/qcom/parrot-idp-wcn3990.dts +++ b/qcom/parrot-idp-wcn3990.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-idp-wcn3990.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-wcn6750-amoled-4gb-overlay.dts b/qcom/parrot-idp-wcn6750-amoled-4gb-overlay.dts index 38fca753..9c0186fc 100644 --- a/qcom/parrot-idp-wcn6750-amoled-4gb-overlay.dts +++ b/qcom/parrot-idp-wcn6750-amoled-4gb-overlay.dts @@ -6,13 +6,12 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot WCN6750 IDP 4GB DDR + AMOLED"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <34 0x604>; }; diff --git a/qcom/parrot-idp-wcn6750-amoled-4gb.dts b/qcom/parrot-idp-wcn6750-amoled-4gb.dts index 366fc881..496b5748 100644 --- a/qcom/parrot-idp-wcn6750-amoled-4gb.dts +++ b/qcom/parrot-idp-wcn6750-amoled-4gb.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-4gb.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-wcn6750-amoled-overlay.dts b/qcom/parrot-idp-wcn6750-amoled-overlay.dts index 41d60a10..0a965b35 100644 --- a/qcom/parrot-idp-wcn6750-amoled-overlay.dts +++ b/qcom/parrot-idp-wcn6750-amoled-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled.dtsi" #include "parrot-idp-pm7250b.dtsi" @@ -14,6 +13,6 @@ model = "Qualcomm Technologies, Inc. Parrot WCN6750 IDP + AMOLED"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, <663 0x10000>; qcom,board-id = <34 4>; }; diff --git a/qcom/parrot-idp-wcn6750-amoled-rcm-4gb-overlay.dts b/qcom/parrot-idp-wcn6750-amoled-rcm-4gb-overlay.dts index e936c82d..b1f21f6a 100644 --- a/qcom/parrot-idp-wcn6750-amoled-rcm-4gb-overlay.dts +++ b/qcom/parrot-idp-wcn6750-amoled-rcm-4gb-overlay.dts @@ -6,13 +6,12 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled-rcm-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot WCN6750 IDP 4GB DDR + AMOLED + RCM"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <34 0x602>; }; diff --git a/qcom/parrot-idp-wcn6750-amoled-rcm-4gb.dts b/qcom/parrot-idp-wcn6750-amoled-rcm-4gb.dts index 3d712da2..0ee1bece 100644 --- a/qcom/parrot-idp-wcn6750-amoled-rcm-4gb.dts +++ b/qcom/parrot-idp-wcn6750-amoled-rcm-4gb.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-4gb.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled-rcm-4gb.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-wcn6750-amoled-rcm-overlay.dts b/qcom/parrot-idp-wcn6750-amoled-rcm-overlay.dts index edfce1f6..9f75c230 100644 --- a/qcom/parrot-idp-wcn6750-amoled-rcm-overlay.dts +++ b/qcom/parrot-idp-wcn6750-amoled-rcm-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" @@ -14,6 +13,7 @@ model = "Qualcomm Technologies, Inc. Parrot WCN6750 IDP + AMOLED + RCM"; compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <34 2>; }; diff --git a/qcom/parrot-idp-wcn6750-amoled-rcm.dts b/qcom/parrot-idp-wcn6750-amoled-rcm.dts index 50c5d72c..479c2a53 100644 --- a/qcom/parrot-idp-wcn6750-amoled-rcm.dts +++ b/qcom/parrot-idp-wcn6750-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp-wcn6750-amoled.dts b/qcom/parrot-idp-wcn6750-amoled.dts index 261d3b43..ad8cf973 100644 --- a/qcom/parrot-idp-wcn6750-amoled.dts +++ b/qcom/parrot-idp-wcn6750-amoled.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp-wcn6750-amoled.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-idp.dts b/qcom/parrot-idp.dts index cb186647..7976c324 100644 --- a/qcom/parrot-idp.dts +++ b/qcom/parrot-idp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-idp.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-qrd-4gb-overlay.dts b/qcom/parrot-qrd-4gb-overlay.dts index 565ab6b6..887ded86 100644 --- a/qcom/parrot-qrd-4gb-overlay.dts +++ b/qcom/parrot-qrd-4gb-overlay.dts @@ -6,13 +6,12 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-qrd-4gb.dtsi" #include "parrot-qrd-pm7250b.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot QRD 4GB DDR"; compatible = "qcom,parrot-qrd", "qcom,parrot", "qcom,qrd"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <0x1000B 0x600>; }; diff --git a/qcom/parrot-qrd-4gb.dts b/qcom/parrot-qrd-4gb.dts index c11217cc..8acd7446 100644 --- a/qcom/parrot-qrd-4gb.dts +++ b/qcom/parrot-qrd-4gb.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-4gb.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-qrd-4gb.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrot-qrd-nopmi-overlay.dts b/qcom/parrot-qrd-nopmi-overlay.dts index cb1ab651..ce1f9e63 100644 --- a/qcom/parrot-qrd-nopmi-overlay.dts +++ b/qcom/parrot-qrd-nopmi-overlay.dts @@ -6,14 +6,14 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-qrd.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot QRD"; compatible = "qcom,parrot-qrd", "qcom,parrot", "qcom,qrd"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <0x1000B 0>; qcom,pmic-id-size = <9>; qcom,pmic-id = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; diff --git a/qcom/parrot-qrd-nopmi.dts b/qcom/parrot-qrd-nopmi.dts index 99aa9f64..1f4cd913 100644 --- a/qcom/parrot-qrd-nopmi.dts +++ b/qcom/parrot-qrd-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-qrd.dtsi" / { diff --git a/qcom/parrot-qrd-overlay.dts b/qcom/parrot-qrd-overlay.dts index 3c6e28fe..68384c63 100644 --- a/qcom/parrot-qrd-overlay.dts +++ b/qcom/parrot-qrd-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-qrd.dtsi" #include "parrot-qrd-pm7250b.dtsi" @@ -14,6 +13,7 @@ model = "Qualcomm Technologies, Inc. Parrot QRD"; compatible = "qcom,parrot-qrd", "qcom,parrot", "qcom,qrd"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <0x1000B 0>; }; diff --git a/qcom/parrot-qrd-pm8350b-overlay.dts b/qcom/parrot-qrd-pm8350b-overlay.dts index 11642be7..d736ad1b 100644 --- a/qcom/parrot-qrd-pm8350b-overlay.dts +++ b/qcom/parrot-qrd-pm8350b-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-qrd.dtsi" #include "parrot-qrd-pm8350b.dtsi" @@ -14,6 +13,7 @@ model = "Qualcomm Technologies, Inc. Parrot QRD"; compatible = "qcom,parrot-qrd", "qcom,parrot", "qcom,qrd"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <0x1000B 0>; }; diff --git a/qcom/parrot-qrd-pm8350b.dts b/qcom/parrot-qrd-pm8350b.dts index a1b853ad..51d76abc 100644 --- a/qcom/parrot-qrd-pm8350b.dts +++ b/qcom/parrot-qrd-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-qrd.dtsi" #include "parrot-qrd-pm8350b.dtsi" diff --git a/qcom/parrot-qrd-wcn6750-4gb-overlay.dts b/qcom/parrot-qrd-wcn6750-4gb-overlay.dts index 59758199..f95ebca3 100644 --- a/qcom/parrot-qrd-wcn6750-4gb-overlay.dts +++ b/qcom/parrot-qrd-wcn6750-4gb-overlay.dts @@ -6,13 +6,12 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-qrd-wcn6750-4gb.dtsi" #include "parrot-qrd-pm7250b.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot WCN6750 QRD 4GB DDR"; compatible = "qcom,parrot-qrd", "qcom,parrot", "qcom,qrd"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <0x1000B 0x601>; }; diff --git a/qcom/parrot-qrd-wcn6750-4gb.dts b/qcom/parrot-qrd-wcn6750-4gb.dts index e4e5d9f8..07987a4e 100644 --- a/qcom/parrot-qrd-wcn6750-4gb.dts +++ b/qcom/parrot-qrd-wcn6750-4gb.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-4gb.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-qrd-wcn6750-4gb.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrot-qrd-wcn6750-overlay.dts b/qcom/parrot-qrd-wcn6750-overlay.dts index f2372fe5..f2b6fcc4 100644 --- a/qcom/parrot-qrd-wcn6750-overlay.dts +++ b/qcom/parrot-qrd-wcn6750-overlay.dts @@ -6,7 +6,6 @@ /dts-v1/; /plugin/; -#include "parrot-wcn6750.dtsi" #include "parrot-qrd-wcn6750.dtsi" #include "parrot-qrd-pm7250b.dtsi" @@ -14,6 +13,7 @@ model = "Qualcomm Technologies, Inc. Parrot WCN6750 QRD"; compatible = "qcom,parrot-qrd", "qcom,parrot", "qcom,qrd"; qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, - <633 0x10000>, <634 0x10000>, <638 0x10000>; + <633 0x10000>, <634 0x10000>, <638 0x10000>, + <663 0x10000>; qcom,board-id = <0x1000B 1>; }; diff --git a/qcom/parrot-qrd-wcn6750.dts b/qcom/parrot-qrd-wcn6750.dts index 783be33f..102b2a36 100644 --- a/qcom/parrot-qrd-wcn6750.dts +++ b/qcom/parrot-qrd-wcn6750.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-qrd-wcn6750.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrot-qrd.dts b/qcom/parrot-qrd.dts index 4ffcec24..9367ca63 100644 --- a/qcom/parrot-qrd.dts +++ b/qcom/parrot-qrd.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-qrd.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrot-rumi-overlay.dts b/qcom/parrot-rumi-overlay.dts index a8bc104e..e3786b2f 100644 --- a/qcom/parrot-rumi-overlay.dts +++ b/qcom/parrot-rumi-overlay.dts @@ -6,12 +6,11 @@ /dts-v1/; /plugin/; -#include "parrot-wcn3990.dtsi" #include "parrot-rumi.dtsi" / { model = "Qualcomm Technologies, Inc. Parrot RUMI"; compatible = "qcom,parrot-rumi", "qcom,parrot", "qcom,rumi"; - qcom,msm-id = <537 0x10000>; + qcom,msm-id = <537 0x10000>, <663 0x10000>; qcom,board-id = <0x1000F 0>; }; diff --git a/qcom/parrot-rumi.dts b/qcom/parrot-rumi.dts index 5f2078a2..5afafc35 100644 --- a/qcom/parrot-rumi.dts +++ b/qcom/parrot-rumi.dts @@ -7,7 +7,6 @@ /memreserve/ 0x90000000 0x00010000; #include "parrot.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-rumi.dtsi" / { diff --git a/qcom/parrot-sg-atp.dts b/qcom/parrot-sg-atp.dts index ae94c111..167f9dda 100644 --- a/qcom/parrot-sg-atp.dts +++ b/qcom/parrot-sg-atp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-sg-atp.dtsi" / { diff --git a/qcom/parrot-sg-idp-nopmi.dts b/qcom/parrot-sg-idp-nopmi.dts index 1a0a95f7..aee0b916 100644 --- a/qcom/parrot-sg-idp-nopmi.dts +++ b/qcom/parrot-sg-idp-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-sg-idp.dtsi" / { diff --git a/qcom/parrot-sg-idp-pm8350b.dts b/qcom/parrot-sg-idp-pm8350b.dts index df963274..b5e579c7 100644 --- a/qcom/parrot-sg-idp-pm8350b.dts +++ b/qcom/parrot-sg-idp-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-sg-idp.dtsi" #include "parrot-idp-pm8350b.dtsi" diff --git a/qcom/parrot-sg-idp-wcn3990-amoled-rcm.dts b/qcom/parrot-sg-idp-wcn3990-amoled-rcm.dts index 7375875f..b4fa1c06 100644 --- a/qcom/parrot-sg-idp-wcn3990-amoled-rcm.dts +++ b/qcom/parrot-sg-idp-wcn3990-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-sg-idp-wcn3990-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-sg-idp-wcn3990.dts b/qcom/parrot-sg-idp-wcn3990.dts index e17e4032..f7ed2561 100644 --- a/qcom/parrot-sg-idp-wcn3990.dts +++ b/qcom/parrot-sg-idp-wcn3990.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-sg-idp-wcn3990.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-sg-idp-wcn6750-amoled-rcm.dts b/qcom/parrot-sg-idp-wcn6750-amoled-rcm.dts index 36c4918f..533f7e47 100644 --- a/qcom/parrot-sg-idp-wcn6750-amoled-rcm.dts +++ b/qcom/parrot-sg-idp-wcn6750-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-sg-idp-wcn6750-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-sg-idp-wcn6750-amoled.dts b/qcom/parrot-sg-idp-wcn6750-amoled.dts index 7abf0b43..ffb131ca 100644 --- a/qcom/parrot-sg-idp-wcn6750-amoled.dts +++ b/qcom/parrot-sg-idp-wcn6750-amoled.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-sg-idp-wcn6750-amoled.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-sg-idp.dts b/qcom/parrot-sg-idp.dts index 6abb7103..201d0363 100644 --- a/qcom/parrot-sg-idp.dts +++ b/qcom/parrot-sg-idp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-sg-idp.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrot-sg-qrd-nopmi.dts b/qcom/parrot-sg-qrd-nopmi.dts index 829d060a..5cd03656 100644 --- a/qcom/parrot-sg-qrd-nopmi.dts +++ b/qcom/parrot-sg-qrd-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-sg-qrd.dtsi" / { diff --git a/qcom/parrot-sg-qrd-pm8350b.dts b/qcom/parrot-sg-qrd-pm8350b.dts index 6adec9b2..2dccda77 100644 --- a/qcom/parrot-sg-qrd-pm8350b.dts +++ b/qcom/parrot-sg-qrd-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-sg-qrd.dtsi" #include "parrot-qrd-pm8350b.dtsi" diff --git a/qcom/parrot-sg-qrd-wcn6750.dts b/qcom/parrot-sg-qrd-wcn6750.dts index 8a935708..82ecc14e 100644 --- a/qcom/parrot-sg-qrd-wcn6750.dts +++ b/qcom/parrot-sg-qrd-wcn6750.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrot-sg-qrd-wcn6750.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrot-sg-qrd.dts b/qcom/parrot-sg-qrd.dts index 29ffb3a1..0b23925b 100644 --- a/qcom/parrot-sg-qrd.dts +++ b/qcom/parrot-sg-qrd.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrot-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrot-sg-qrd.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrot-walt.dtsi b/qcom/parrot-walt.dtsi new file mode 100644 index 00000000..e6756b88 --- /dev/null +++ b/qcom/parrot-walt.dtsi @@ -0,0 +1,20 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +&soc { + walt { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + qcom,cycle-cntr { + compatible = "qcom,epss"; + reg = <0x17D91000 0x1000>, + <0x17D92000 0x1000>; + reg-names = "freq-domain0", + "freq-domain1"; + }; + }; +}; diff --git a/qcom/parrot-wcn3990.dtsi b/qcom/parrot-wcn3990.dtsi deleted file mode 100644 index 882065c4..00000000 --- a/qcom/parrot-wcn3990.dtsi +++ /dev/null @@ -1,34 +0,0 @@ -// SPDX-License-Identifier: BSD-3-Clause -/* - * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. - */ - -#include -#include - -&reserved_memory { - wlan_fw_mem: wlan_fw_region@82a00000 { - no-map; - reg = <0x0 0x82a00000 0x0 0x300000>; - }; -}; - -&soc { - wpss_pas: remoteproc-wpss@8a00000 { - firmware-name = "adrastea/wpss.mdt"; - }; - - bluetooth: bt_wcn3990 { - compatible = "qcom,wcn3990"; - qcom,bt-sw-ctrl-gpio = <&tlmm 61 GPIO_ACTIVE_HIGH>; - qcom,bt-vdd-io-supply = <&L22B>; /* IO */ - qcom,bt-vdd-core-supply = <&L14B>; /* RFA */ - qcom,bt-vdd-pa-supply = <&L10E>; /* CH0 */ - qcom,bt-vdd-xtal-supply = <&L1E>; /* XO */ - - qcom,bt-vdd-io-config = <1700000 1900000 1 0>; - qcom,bt-vdd-core-config = <1304000 1304000 1 0>; - qcom,bt-vdd-pa-config = <3000000 3312000 1 0>; - qcom,bt-vdd-xtal-config = <1700000 1900000 1 0>; - }; -}; diff --git a/qcom/parrot-wcn6750.dtsi b/qcom/parrot-wcn6750.dtsi deleted file mode 100644 index 2737d1d9..00000000 --- a/qcom/parrot-wcn6750.dtsi +++ /dev/null @@ -1,152 +0,0 @@ -// SPDX-License-Identifier: BSD-3-Clause -/* - * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. - */ - -#include - -&soc { - bluetooth: bt_wcn6750 { - compatible = "qcom,wcn6750-bt"; - pinctrl-names = "default"; - pinctrl-0 = <&bt_en_sleep>; - qcom,bt-reset-gpio = <&tlmm 35 0>; /* BT_EN */ - qcom,bt-sw-ctrl-gpio = <&tlmm 61 0>; /* SW_CTRL */ - qcom,wl-reset-gpio = <&tlmm 36 0>; /* WL_EN */ - tsens = "quiet-therm"; - - qcom,bt-vdd-io-supply = <&L22B>; /* IO */ - qcom,bt-vdd-aon-supply = <&S7B>; - qcom,bt-vdd-dig-supply = <&S7B>; /* BT_CX_MX */ - qcom,bt-vdd-rfacmn-supply = <&S7B>; - qcom,bt-vdd-rfa-0p8-supply = <&S7B>; - qcom,bt-vdd-rfa1-supply = <&S8E>; /*RFA 1p7*/ - qcom,bt-vdd-rfa2-supply = <&S8B>; /*RFA 1p2*/ - qcom,bt-vdd-ipa-2p2-supply = <&S9B>; /*IPA 2p2*/ - //qcom,bt-vdd-asd-supply = <&L11C>; - - /* max voltage are set to regulator max voltage supported */ - qcom,bt-vdd-io-config = <1800000 2000000 0 1>; - qcom,bt-vdd-aon-config = <824000 1174000 0 1>; - qcom,bt-vdd-dig-config = <824000 1174000 0 1>; - qcom,bt-vdd-rfacmn-config = <824000 1174000 0 1>; - qcom,bt-vdd-rfa-0p8-config = <824000 1174000 0 1>; - qcom,bt-vdd-rfa1-config = <1872000 2040000 0 1>; - qcom,bt-vdd-rfa2-config = <1256000 1654000 0 1>; - qcom,bt-vdd-ipa-2p2-config = <2200000 2208000 0 1>; - //qcom,bt-vdd-asd-config = <2800000 3544000 0 1>; - }; - - qcom,smp2p-wpss { - smp2p_wlan_2_in: qcom,smp2p-wlan-2-in { - qcom,entry-name = "wlan_soc_wake"; - interrupt-controller; - #interrupt-cells = <2>; - }; - - smp2p_wlan_2_out: qcom,smp2p-wlan-2-out { - qcom,entry-name = "wlan_soc_wake"; - #qcom,smem-state-cells = <1>; - }; - - smp2p_wlan_3_out: qcom,smp2p-wlan-3-out { - qcom,entry-name = "wlan_ep_power_save"; - #qcom,smem-state-cells = <1>; - }; - }; - - wpss_pas: remoteproc-wpss@8a00000 { - firmware-name = "qca6750/wpss.mdt"; - }; - - icnss2: qcom,wcn6750 { - compatible = "qcom,wcn6750"; - reg = <0x17210040 0x0>, - <0xb0000000 0x10000>; - reg-names = "msi_addr", "smmu_iova_ipa"; - qcom,rproc-handle = <&wpss_pas>; - iommus = <&apps_smmu 0x1c00 0x1>; - interrupts = , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - ; - - qcom,iommu-dma = "fastmap"; - qcom,iommu-faults = "stall-disable", "HUPCF", "non-fatal"; - qcom,iommu-dma-addr-pool = <0xa0000000 0x10000000>; - qcom,iommu-geometry = <0xa0000000 0x10010000>; - dma-coherent; - qcom,fw-prefix; - qcom,wlan; - tsens = "quiet-therm"; - qcom,wlan-msa-fixed-region = <&wlan_fw_mem>; - vdd-cx-mx-supply = <&S7B>; - qcom,vdd-cx-mx-config = <880000 1120000 0 0 1>; - vdd-1.8-xo-supply = <&S8E>; - qcom,vdd-1.8-xo-config = <1872000 2040000 0 0 0>; - vdd-1.3-rfa-supply = <&S8B>; - qcom,vdd-1.3-rfa-config = <1256000 1500000 0 0 0>; - - qcom,smem-states = <&smp2p_wlan_1_out 0>, - <&smp2p_wlan_2_out 0>, - <&smp2p_wlan_3_out 0>; - qcom,smem-state-names = "wlan-smp2p-out", - "wlan-soc-wake-smp2p-out", - "wlan-ep-powersave-smp2p-out"; - - mboxes = <&qmp_aop 0>; - qcom,vreg_ol_cpr ="s7b"; - - icnss_cdev_apss: qcom,icnss_cdev1 { - #cooling-cells = <2>; - }; - - icnss_cdev_wpss: qcom,icnss_cdev2 { - #cooling-cells = <2>; - }; - - qcom,smp2p_map_wlan_1_in { - interrupts-extended = <&smp2p_wlan_1_in 0 0>, - <&smp2p_wlan_1_in 1 0>; - interrupt-names = "qcom,smp2p-force-fatal-error", - "qcom,smp2p-early-crash-ind"; - }; - - qcom,smp2p_map_wlan_2_in { - interrupts-extended = <&smp2p_wlan_2_in 0 0>; - interrupt-names = "qcom,smp2p-soc-wake-ack"; - }; - }; -}; - -&qupv3_se2_i2c { - status = "ok"; -}; diff --git a/qcom/parrot.dtsi b/qcom/parrot.dtsi index 11757f18..72be3bec 100644 --- a/qcom/parrot.dtsi +++ b/qcom/parrot.dtsi @@ -21,7 +21,7 @@ / { model = "Qualcomm Technologies, Inc. Parrot"; compatible = "qcom,parrot"; - qcom,msm-id = <537 0x10000>, <613 0x10000>; + qcom,msm-id = <537 0x10000>, <613 0x10000>, <663 0x10000>; interrupt-parent = <&intc>; #address-cells = <2>; @@ -2530,6 +2530,8 @@ }; qfprom_sys: qfprom@0 { + compatible = "qcom,qfprom-sys"; + nvmem-cells = <&adsp_variant>, <&feat_conf12>, <&feat_conf13>, @@ -2839,6 +2841,7 @@ #include "parrot-qupv3.dtsi" #include "parrot-dma-heaps.dtsi" #include "msm-arm-smmu-parrot.dtsi" +#include "parrot-walt.dtsi" &qupv3_se3_2uart { status = "ok"; diff --git a/qcom/parrotp-atp.dts b/qcom/parrotp-atp.dts index d2f73134..9814e2f5 100644 --- a/qcom/parrotp-atp.dts +++ b/qcom/parrotp-atp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-atp.dtsi" / { diff --git a/qcom/parrotp-idp-nopmi.dts b/qcom/parrotp-idp-nopmi.dts index e69aac84..73ec9075 100644 --- a/qcom/parrotp-idp-nopmi.dts +++ b/qcom/parrotp-idp-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-idp.dtsi" / { diff --git a/qcom/parrotp-idp-pm8350b.dts b/qcom/parrotp-idp-pm8350b.dts index 5a7d9de4..4ba0001d 100644 --- a/qcom/parrotp-idp-pm8350b.dts +++ b/qcom/parrotp-idp-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-idp.dtsi" #include "parrot-idp-pm8350b.dtsi" diff --git a/qcom/parrotp-idp-wcn3990-amoled-rcm.dts b/qcom/parrotp-idp-wcn3990-amoled-rcm.dts index 63bd6c10..926afe30 100644 --- a/qcom/parrotp-idp-wcn3990-amoled-rcm.dts +++ b/qcom/parrotp-idp-wcn3990-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-idp-wcn3990-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-idp-wcn3990.dts b/qcom/parrotp-idp-wcn3990.dts index e74fce3d..0459e7d6 100644 --- a/qcom/parrotp-idp-wcn3990.dts +++ b/qcom/parrotp-idp-wcn3990.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-idp-wcn3990.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-idp-wcn6750-amoled-rcm.dts b/qcom/parrotp-idp-wcn6750-amoled-rcm.dts index 127c964b..7a18bdce 100644 --- a/qcom/parrotp-idp-wcn6750-amoled-rcm.dts +++ b/qcom/parrotp-idp-wcn6750-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-idp-wcn6750-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-idp-wcn6750-amoled.dts b/qcom/parrotp-idp-wcn6750-amoled.dts index 2a9b1af7..e8fde314 100644 --- a/qcom/parrotp-idp-wcn6750-amoled.dts +++ b/qcom/parrotp-idp-wcn6750-amoled.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-idp-wcn6750-amoled.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-idp.dts b/qcom/parrotp-idp.dts index 38885a95..f0e34c52 100644 --- a/qcom/parrotp-idp.dts +++ b/qcom/parrotp-idp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-idp.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-qrd-nopmi.dts b/qcom/parrotp-qrd-nopmi.dts index 9315c1d0..c9a917cf 100644 --- a/qcom/parrotp-qrd-nopmi.dts +++ b/qcom/parrotp-qrd-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-qrd.dtsi" / { diff --git a/qcom/parrotp-qrd-pm8350b.dts b/qcom/parrotp-qrd-pm8350b.dts index 87a37829..41552b43 100644 --- a/qcom/parrotp-qrd-pm8350b.dts +++ b/qcom/parrotp-qrd-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-qrd.dtsi" #include "parrot-qrd-pm8350b.dtsi" diff --git a/qcom/parrotp-qrd-wcn6750.dts b/qcom/parrotp-qrd-wcn6750.dts index 13d46a5b..a57f540c 100644 --- a/qcom/parrotp-qrd-wcn6750.dts +++ b/qcom/parrotp-qrd-wcn6750.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-qrd-wcn6750.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrotp-qrd.dts b/qcom/parrotp-qrd.dts index 482dde29..dcfac598 100644 --- a/qcom/parrotp-qrd.dts +++ b/qcom/parrotp-qrd.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-qrd.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrotp-sg-atp.dts b/qcom/parrotp-sg-atp.dts index e315796e..d7c7042f 100644 --- a/qcom/parrotp-sg-atp.dts +++ b/qcom/parrotp-sg-atp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-sg-atp.dtsi" / { diff --git a/qcom/parrotp-sg-idp-nopmi.dts b/qcom/parrotp-sg-idp-nopmi.dts index 40942ef3..497a8083 100644 --- a/qcom/parrotp-sg-idp-nopmi.dts +++ b/qcom/parrotp-sg-idp-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-sg-idp.dtsi" / { diff --git a/qcom/parrotp-sg-idp-pm8350b.dts b/qcom/parrotp-sg-idp-pm8350b.dts index e3e9e752..2d252fe1 100644 --- a/qcom/parrotp-sg-idp-pm8350b.dts +++ b/qcom/parrotp-sg-idp-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-sg-idp.dtsi" #include "parrot-idp-pm8350b.dtsi" diff --git a/qcom/parrotp-sg-idp-wcn3990-amoled-rcm.dts b/qcom/parrotp-sg-idp-wcn3990-amoled-rcm.dts index 9d8691fd..3f6c733d 100644 --- a/qcom/parrotp-sg-idp-wcn3990-amoled-rcm.dts +++ b/qcom/parrotp-sg-idp-wcn3990-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-sg-idp-wcn3990-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-sg-idp-wcn3990.dts b/qcom/parrotp-sg-idp-wcn3990.dts index 6faa5dd7..6e059c82 100644 --- a/qcom/parrotp-sg-idp-wcn3990.dts +++ b/qcom/parrotp-sg-idp-wcn3990.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-sg-idp-wcn3990.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-sg-idp-wcn6750-amoled-rcm.dts b/qcom/parrotp-sg-idp-wcn6750-amoled-rcm.dts index a72ee971..2f29a090 100644 --- a/qcom/parrotp-sg-idp-wcn6750-amoled-rcm.dts +++ b/qcom/parrotp-sg-idp-wcn6750-amoled-rcm.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-sg-idp-wcn6750-amoled-rcm.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-sg-idp-wcn6750-amoled.dts b/qcom/parrotp-sg-idp-wcn6750-amoled.dts index 5592cedf..b329b66b 100644 --- a/qcom/parrotp-sg-idp-wcn6750-amoled.dts +++ b/qcom/parrotp-sg-idp-wcn6750-amoled.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-sg-idp-wcn6750-amoled.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-sg-idp.dts b/qcom/parrotp-sg-idp.dts index 3c8985f2..4a490f28 100644 --- a/qcom/parrotp-sg-idp.dts +++ b/qcom/parrotp-sg-idp.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-sg-idp.dtsi" #include "parrot-idp-pm7250b.dtsi" diff --git a/qcom/parrotp-sg-qrd-nopmi.dts b/qcom/parrotp-sg-qrd-nopmi.dts index 40a3fdac..ebf8a3ad 100644 --- a/qcom/parrotp-sg-qrd-nopmi.dts +++ b/qcom/parrotp-sg-qrd-nopmi.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-sg-qrd.dtsi" / { diff --git a/qcom/parrotp-sg-qrd-pm8350b.dts b/qcom/parrotp-sg-qrd-pm8350b.dts index 1a4fddb9..5b2b907f 100644 --- a/qcom/parrotp-sg-qrd-pm8350b.dts +++ b/qcom/parrotp-sg-qrd-pm8350b.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-sg-qrd.dtsi" #include "parrot-qrd-pm8350b.dtsi" diff --git a/qcom/parrotp-sg-qrd-wcn6750.dts b/qcom/parrotp-sg-qrd-wcn6750.dts index 73daea69..bc67f512 100644 --- a/qcom/parrotp-sg-qrd-wcn6750.dts +++ b/qcom/parrotp-sg-qrd-wcn6750.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn6750.dtsi" #include "parrotp-sg-qrd-wcn6750.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/parrotp-sg-qrd.dts b/qcom/parrotp-sg-qrd.dts index 7c9c7353..40105c07 100644 --- a/qcom/parrotp-sg-qrd.dts +++ b/qcom/parrotp-sg-qrd.dts @@ -6,7 +6,6 @@ /dts-v1/; #include "parrotp-sg.dtsi" -#include "parrot-wcn3990.dtsi" #include "parrotp-sg-qrd.dtsi" #include "parrot-qrd-pm7250b.dtsi" diff --git a/qcom/pineapple.dtsi b/qcom/pineapple.dtsi index 73bc18f9..df5c84db 100644 --- a/qcom/pineapple.dtsi +++ b/qcom/pineapple.dtsi @@ -1482,14 +1482,14 @@ ufshc_mem: ufshc@1d84000 { compatible = "qcom,ufshc"; reg = <0x1d84000 0x3000>, - <0x1d88000 0x8000>, - <0x1d90000 0x9000>; - reg-names = "ufs_mem", "ufs_ice", "ufs_ice_hwkm"; + <0x1d88000 0x18000>; + reg-names = "ufs_mem", "ice"; interrupts = ; phys = <&ufsphy_mem>; phy-names = "ufsphy"; #reset-cells = <1>; + qcom,ice-use-hwkm; qcom,prime-mask = <0x80>; qcom,silver-mask = <0x0f>; qcom,esi-affinity-mask = <0xf0>; @@ -3245,6 +3245,11 @@ reg = <0x0 0x9b09a000 0x0 0x2000>; }; + lost_reg_mem { + no-map; + reg = <0x0 0x9b09c000 0x0 0x4000>; + }; + spss_region_mem: spss_region_region@9b0a0000 { no-map; reg = <0x0 0x9b0a0000 0x0 0x1e0000>; diff --git a/qcom/sun-oemvm.dtsi b/qcom/sun-oemvm.dtsi index f4efebdd..6d78f6cd 100644 --- a/qcom/sun-oemvm.dtsi +++ b/qcom/sun-oemvm.dtsi @@ -131,22 +131,37 @@ dma-coherent; dma_base = <0x0 0x0>; memory { - qcom,label = <0x13>; + qcom,label = <0x16>; //for persist.img #address-cells = <0x2>; base = <0x0 0xFFEFC000>; }; }; + virtio-mmio@1 { + vdevice-type = "virtio-mmio"; + generate = "/virtio-mmio"; + peer-default; + vqs-num = <0x2>; + push-compatible = "virtio,mmio"; + dma-coherent; + dma_base = <0x0 0x4000>; + memory { + qcom,label = <0x13>; //for system.img + #address-cells = <0x2>; + base = <0x0 0xFFF00000>; + }; + }; + swiotlb-shm { vdevice-type = "shm"; generate = "/swiotlb"; push-compatible = "swiotlb"; peer-default; - dma_base = <0x0 0x4000>; + dma_base = <0x0 0x8000>; memory { qcom,label = <0x14>; #address-cells = <0x2>; - base = <0x0 0xFFF00000>; + base = <0x0 0xFFF04000>; }; }; @@ -182,6 +197,15 @@ qcom,label = <0x3>; }; + mem-buf-message-queue-pair { + vdevice-type = "message-queue-pair"; + generate = "/hypervisor/membuf-msgq-pair"; + message-size = <0x000000f0>; + queue-depth = <0x00000008>; + peer-default; + qcom,label = <0x000000C>; + }; + qrtr-shm { vdevice-type = "shm-doorbell"; generate = "/hypervisor/qrtr-shm"; @@ -196,7 +220,7 @@ }; firmware: firmware { - scm { + qcom_scm: scm { compatible = "qcom,scm"; }; }; @@ -237,11 +261,23 @@ qcom,mem-buf { compatible = "qcom,mem-buf"; + qcom,mem-buf-capabilities = "consumer"; + qcom,ipa-range = <0x0 0x0 0xf 0xffffffff>; + qcom,dmabuf-ipa-size = <0x1 0x00000000>; /* 4GB IPA space for dmabuf */ qcom,vmid = <49>; }; qcom,mem-buf-msgq { compatible = "qcom,mem-buf-msgq"; + qcom,msgq-names = "oem_vm"; + }; + + virtio_mem_device { + compatible = "qcom,virtio-mem"; + /* Must be memory_block_size_bytes() aligned */ + qcom,max-size = <0x0 0x10000000>; + qcom,ipa-range = <0x0 0x0 0xf 0xffffffff>; + qcom,block-size = <0x400000>; }; qcom,test-dbl-oemvm { @@ -289,3 +325,4 @@ msgq-label = <3>; }; }; +#include "sun-vm-dma-heaps.dtsi" diff --git a/qcom/sun-vm.dtsi b/qcom/sun-vm.dtsi index 2da5090e..4518418d 100644 --- a/qcom/sun-vm.dtsi +++ b/qcom/sun-vm.dtsi @@ -692,6 +692,7 @@ qcom,mem-buf-msgq { compatible = "qcom,mem-buf-msgq"; + qcom,msgq-names = "trusted_vm"; }; virtio_mem_device { diff --git a/qcom/sun.dtsi b/qcom/sun.dtsi index ba68d0f4..ad1704e8 100644 --- a/qcom/sun.dtsi +++ b/qcom/sun.dtsi @@ -904,15 +904,16 @@ qcom,vmid = <3>; }; + qcom,mem-buf-msgq { + compatible = "qcom,mem-buf-msgq"; + qcom,msgq-names = "trusted_vm", "oem_vm"; + }; + qcom,hdcp { compatible = "qcom,hdcp"; qcom,use-smcinvoke = <1>; }; - qcom,mem-buf-msgq { - compatible = "qcom,mem-buf-msgq"; - }; - qti,smmu-proxy { compatible = "smmu-proxy-sender"; }; @@ -1940,6 +1941,8 @@ compatible = "qcom,gdsc"; reg = <0xadf134c 0x4>; clocks = <&gcc GCC_CAMERA_AHB_CLK>; + interconnects = <&mmss_noc MASTER_CAMNOC_HF &mmss_noc SLAVE_MNOC_HF_MEM_NOC>; + interconnect-names = "mmnoc"; regulator-name = "cam_cc_titan_top_gdsc"; parent-supply = <&VDD_MM_MXC_VOTER_LEVEL>; qcom,retain-regs; @@ -2123,11 +2126,6 @@ status = "disabled"; }; - psci { - compatible = "arm,psci-1.0"; - method = "smc"; - }; - google,debug-kinfo { compatible = "google,debug-kinfo"; memory-region = <&kinfo_mem>; @@ -2225,6 +2223,11 @@ }; oem_vm_vblk0_ring: oem_vm_vblk0_ring { + size = <0x4000>; + gunyah-label = <0x16>; + }; + + oem_vm_vblk1_ring: oem_vm_vblk1_ring { size = <0x4000>; gunyah-label = <0x13>; }; @@ -2236,11 +2239,16 @@ oem_vm: qcom,oem_vm { vm_name = "oemvm"; - shared-buffers-size = <0x104000>; - shared-buffers = <&oem_vm_vblk0_ring &oem_vm_swiotlb>; + shared-buffers-size = <0x108000>; + shared-buffers = <&oem_vm_vblk0_ring &oem_vm_vblk1_ring &oem_vm_swiotlb>; }; - oem_vm_virt_be0: oem_vm_virt_be0@13 { + oem_vm_virt_be0: oem_vm_virt_be0@16 { + qcom,vm = <&oem_vm>; + qcom,label = <0x16>; + }; + + oem_vm_virt_be1: oem_vm_virt_be1@13 { qcom,vm = <&oem_vm>; qcom,label = <0x13>; }; @@ -2251,7 +2259,7 @@ qcom,vmid = <49>; qcom,firmware-name = "oemvm"; memory-region = <&oem_vm_mem &vm_comm_mem>; - virtio-backends = <&oem_vm_virt_be0>; + virtio-backends = <&oem_vm_virt_be0 &oem_vm_virt_be1>; }; ufsphy_mem: ufsphy_mem@1d80000 { @@ -2418,6 +2426,7 @@ dma-coherent; qcom,bypass-pbl-rst-wa; + qcom,max-cpus = <8>; msi-parent = <&gic_its 0x60>; @@ -3143,6 +3152,16 @@ compatible = "qcom,mpam"; reg = <0x17b6f000 0x1000>; reg-names = "mon-base"; + + L2_0 { + qcom,msc-id = <0>; + qcom,msc-name = "L2_0"; + }; + + L2_1 { + qcom,msc-id = <1>; + qcom,msc-name = "L2_1"; + }; }; llcc_pmu: llcc-pmu@24095000 { @@ -3672,6 +3691,11 @@ reg = <0x0 0x9b09a000 0x0 0x2000>; }; + lost_reg_mem { + no-map; + reg = <0x0 0x9b09c000 0x0 0x4000>; + }; + spss_region_mem: spss_region_region@9b0a0000 { no-map; reg = <0x0 0x9b0a0000 0x0 0x1e0000>; diff --git a/qcom/tuna-gdsc.dtsi b/qcom/tuna-gdsc.dtsi new file mode 100644 index 00000000..8524ab0f --- /dev/null +++ b/qcom/tuna-gdsc.dtsi @@ -0,0 +1,235 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +&soc { + /* CAM_CC GDSCs */ + cam_cc_ipe_0_gdsc: qcom,gdsc@adf017c { + compatible = "qcom,gdsc"; + reg = <0xadf017c 0x4>; + regulator-name = "cam_cc_ipe_0_gdsc"; + parent-supply = <&cam_cc_titan_top_gdsc>; + qcom,retain-regs; + qcom,support-hw-trigger; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + cam_cc_ofe_gdsc: qcom,gdsc@adf00c8 { + compatible = "qcom,gdsc"; + reg = <0xadf00c8 0x4>; + regulator-name = "cam_cc_ofe_gdsc"; + parent-supply = <&cam_cc_titan_top_gdsc>; + qcom,retain-regs; + qcom,support-hw-trigger; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + cam_cc_tfe_0_gdsc: qcom,gdsc@adf1004 { + compatible = "qcom,gdsc"; + reg = <0xadf1004 0x4>; + regulator-name = "cam_cc_tfe_0_gdsc"; + parent-supply = <&cam_cc_titan_top_gdsc>; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + cam_cc_tfe_1_gdsc: qcom,gdsc@adf1084 { + compatible = "qcom,gdsc"; + reg = <0xadf1084 0x4>; + regulator-name = "cam_cc_tfe_1_gdsc"; + parent-supply = <&cam_cc_titan_top_gdsc>; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + cam_cc_tfe_2_gdsc: qcom,gdsc@adf10ec { + compatible = "qcom,gdsc"; + reg = <0xadf10ec 0x4>; + regulator-name = "cam_cc_tfe_2_gdsc"; + parent-supply = <&cam_cc_titan_top_gdsc>; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + cam_cc_titan_top_gdsc: qcom,gdsc@adf134c { + compatible = "qcom,gdsc"; + reg = <0xadf134c 0x4>; + regulator-name = "cam_cc_titan_top_gdsc"; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + /* DISP_CC GDSCs */ + disp_cc_mdss_core_gdsc: qcom,gdsc@af09000 { + compatible = "qcom,gdsc"; + reg = <0xaf09000 0x4>; + regulator-name = "disp_cc_mdss_core_gdsc"; + proxy-supply = <&disp_cc_mdss_core_gdsc>; + qcom,proxy-consumer-enable; + qcom,retain-regs; + qcom,support-hw-trigger; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + disp_cc_mdss_core_int2_gdsc: qcom,gdsc@af0b000 { + compatible = "qcom,gdsc"; + reg = <0xaf0b000 0x4>; + regulator-name = "disp_cc_mdss_core_int2_gdsc"; + qcom,retain-regs; + qcom,support-hw-trigger; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + /* EVA_CC GDSCs */ + eva_cc_mvs0_gdsc: qcom,gdsc@abf8068 { + compatible = "qcom,gdsc"; + reg = <0xabf8068 0x4>; + regulator-name = "eva_cc_mvs0_gdsc"; + parent-supply = <&eva_cc_mvs0c_gdsc>; + qcom,retain-regs; + qcom,support-hw-trigger; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + eva_cc_mvs0c_gdsc: qcom,gdsc@abf8034 { + compatible = "qcom,gdsc"; + reg = <0xabf8034 0x4>; + regulator-name = "eva_cc_mvs0c_gdsc"; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + gcc_apcs_gdsc_vote_ctrl: syscon@15214c { + compatible = "syscon"; + reg = <0x15214c 0x4>; + }; + + /* GCC GDSCs */ + gcc_pcie_0_gdsc: qcom,gdsc@16b004 { + compatible = "qcom,gdsc"; + reg = <0x16b004 0x4>; + regulator-name = "gcc_pcie_0_gdsc"; + qcom,retain-regs; + qcom,no-status-check-on-disable; + qcom,collapse-vote = <&gcc_apcs_gdsc_vote_ctrl 0>; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + gcc_pcie_0_phy_gdsc: qcom,gdsc@16c000 { + compatible = "qcom,gdsc"; + reg = <0x16c000 0x4>; + regulator-name = "gcc_pcie_0_phy_gdsc"; + qcom,retain-regs; + qcom,no-status-check-on-disable; + qcom,collapse-vote = <&gcc_apcs_gdsc_vote_ctrl 2>; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + gcc_ufs_mem_phy_gdsc: qcom,gdsc@19e000 { + compatible = "qcom,gdsc"; + reg = <0x19e000 0x4>; + regulator-name = "gcc_ufs_mem_phy_gdsc"; + proxy-supply = <&gcc_ufs_mem_phy_gdsc>; + qcom,proxy-consumer-enable; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + gcc_ufs_phy_gdsc: qcom,gdsc@177004 { + compatible = "qcom,gdsc"; + reg = <0x177004 0x4>; + regulator-name = "gcc_ufs_phy_gdsc"; + proxy-supply = <&gcc_ufs_phy_gdsc>; + qcom,proxy-consumer-enable; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + gcc_usb30_prim_gdsc: qcom,gdsc@139004 { + compatible = "qcom,gdsc"; + reg = <0x139004 0x4>; + regulator-name = "gcc_usb30_prim_gdsc"; + proxy-supply = <&gcc_usb30_prim_gdsc>; + qcom,proxy-consumer-enable; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + gcc_usb3_phy_gdsc: qcom,gdsc@150018 { + compatible = "qcom,gdsc"; + reg = <0x150018 0x4>; + regulator-name = "gcc_usb3_phy_gdsc"; + proxy-supply = <&gcc_usb3_phy_gdsc>; + qcom,proxy-consumer-enable; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + /* GPU_CC GDSCs */ + gpu_cc_cx_gdsc_hw_ctrl: syscon@3d99094 { + compatible = "syscon"; + reg = <0x3d99094 0x4>; + }; + + gpu_cc_cx_gdsc: qcom,gdsc@3d99080 { + compatible = "qcom,gdsc"; + reg = <0x3d99080 0x4>; + regulator-name = "gpu_cc_cx_gdsc"; + hw-ctrl-addr = <&gpu_cc_cx_gdsc_hw_ctrl>; + proxy-supply = <&gpu_cc_cx_gdsc>; + qcom,proxy-consumer-enable; + qcom,retain-regs; + qcom,support-cfg-gdscr; + qcom,no-status-check-on-disable; + status = "disabled"; + }; + + /* GX_CLKCTL GDSCs */ + gx_clkctl_gx_gdsc: qcom,gdsc@3d68024 { + compatible = "qcom,gdsc"; + reg = <0x3d68024 0x4>; + regulator-name = "gx_clkctl_gx_gdsc"; + reg-supply = <&gpu_cc_cx_gdsc>; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + /* VIDEO_CC GDSCs */ + video_cc_mvs0_gdsc: qcom,gdsc@aaf808c { + compatible = "qcom,gdsc"; + reg = <0xaaf808c 0x4>; + regulator-name = "video_cc_mvs0_gdsc"; + parent-supply = <&video_cc_mvs0c_gdsc>; + qcom,retain-regs; + qcom,support-hw-trigger; + qcom,support-cfg-gdscr; + status = "disabled"; + }; + + video_cc_mvs0c_gdsc: qcom,gdsc@aaf8034 { + compatible = "qcom,gdsc"; + reg = <0xaaf8034 0x4>; + regulator-name = "video_cc_mvs0c_gdsc"; + qcom,retain-regs; + qcom,support-cfg-gdscr; + status = "disabled"; + }; +}; diff --git a/qcom/tuna.dtsi b/qcom/tuna.dtsi index 3ba2c963..0cc30f4e 100644 --- a/qcom/tuna.dtsi +++ b/qcom/tuna.dtsi @@ -3,7 +3,17 @@ * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include / { model = "Qualcomm Technologies, Inc. Tuna"; @@ -291,6 +301,232 @@ interrupt-controller; #interrupt-cells = <2>; }; + + ipcc_mproc: qcom,ipcc@406000 { + compatible = "qcom,ipcc"; + reg = <0x406000 0x1000>; + interrupts = ; + interrupt-controller; + #interrupt-cells = <3>; + #mbox-cells = <2>; + }; + + clocks { + xo_board: xo_board { + compatible = "fixed-clock"; + clock-frequency = <76800000>; + clock-output-names = "xo_board"; + #clock-cells = <0>; + }; + + sleep_clk: sleep_clk { + compatible = "fixed-clock"; + clock-frequency = <32000>; + clock-output-names = "sleep_clk"; + #clock-cells = <0>; + }; + + pcie_0_pipe_clk: pcie_0_pipe_clk { + compatible = "fixed-clock"; + clock-frequency = <1000>; + clock-output-names = "pcie_0_pipe_clk"; + #clock-cells = <0>; + }; + + ufs_phy_rx_symbol_0_clk: ufs_phy_rx_symbol_0_clk { + compatible = "fixed-clock"; + clock-frequency = <1000>; + clock-output-names = "ufs_phy_rx_symbol_0_clk"; + #clock-cells = <0>; + }; + + ufs_phy_rx_symbol_1_clk: ufs_phy_rx_symbol_1_clk { + compatible = "fixed-clock"; + clock-frequency = <1000>; + clock-output-names = "ufs_phy_rx_symbol_1_clk"; + #clock-cells = <0>; + }; + + ufs_phy_tx_symbol_0_clk: ufs_phy_tx_symbol_0_clk { + compatible = "fixed-clock"; + clock-frequency = <1000>; + clock-output-names = "ufs_phy_tx_symbol_0_clk"; + #clock-cells = <0>; + }; + + usb3_phy_wrapper_gcc_usb30_pipe_clk: usb3_phy_wrapper_gcc_usb30_pipe_clk { + compatible = "fixed-clock"; + clock-frequency = <1000>; + clock-output-names = "usb3_phy_wrapper_gcc_usb30_pipe_clk"; + #clock-cells = <0>; + }; + }; + + rpmhcc: clock-controller { + compatible = "fixed-clock"; + clock-output-names = "rpmh_clocks"; + clock-frequency = <19200000>; + #clock-cells = <1>; + }; + + cambistmclkcc: clock-controller@1760000 { + compatible = "qcom,dummycc"; + clock-output-names = "cambistmclkcc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + camcc: clock-controller@ade0000 { + compatible = "qcom,dummycc"; + clock-output-names = "camcc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + dispcc: clock-controller@af00000 { + compatible = "qcom,dummycc"; + clock-output-names = "dispcc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + evacc: clock-controller@abf0000 { + compatible = "qcom,dummycc"; + clock-output-names = "evacc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + gcc: clock-controller@100000 { + compatible = "qcom,dummycc"; + clock-output-names = "gcc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + gpucc: clock-controller@3d90000 { + compatible = "qcom,dummycc"; + clock-output-names = "gpucc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + tcsrcc: clock-controller@f100000 { + compatible = "qcom,dummycc"; + clock-output-names = "tcsrcc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + videocc: clock-controller@aaf0000 { + compatible = "qcom,dummycc"; + clock-output-names = "videocc_clocks"; + #clock-cells = <1>; + #reset-cells = <1>; + }; + +}; + +#include "tuna-gdsc.dtsi" + +&cam_cc_ipe_0_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&cam_cc_ofe_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&cam_cc_tfe_0_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&cam_cc_tfe_1_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&cam_cc_tfe_2_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&cam_cc_titan_top_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&disp_cc_mdss_core_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&disp_cc_mdss_core_int2_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&eva_cc_mvs0_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&eva_cc_mvs0c_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gcc_pcie_0_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gcc_pcie_0_phy_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gcc_ufs_mem_phy_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gcc_ufs_phy_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gcc_usb30_prim_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gcc_usb3_phy_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gpu_cc_cx_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&gx_clkctl_gx_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&video_cc_mvs0_gdsc { + compatible = "regulator-fixed"; + status = "ok"; +}; + +&video_cc_mvs0c_gdsc { + compatible = "regulator-fixed"; + status = "ok"; }; #include "tuna-pinctrl.dtsi"