interconnect: qcom: Add OSM L3 support on SC7180
authorSibi Sankar <sibis@codeaurora.org>
Tue, 3 Mar 2020 17:02:52 +0000 (19:02 +0200)
committerGeorgi Djakov <georgi.djakov@linaro.org>
Tue, 3 Mar 2020 17:02:52 +0000 (19:02 +0200)
Add Operating State Manager (OSM) L3 interconnect provider support on
SC7180 SoCs.

Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
Reviewed-by: Evan Green <evgreen@chromium.org>
Link: https://lore.kernel.org/r/20200227105632.15041-6-sibis@codeaurora.org
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
drivers/interconnect/qcom/osm-l3.c
drivers/interconnect/qcom/sc7180.h

index bbf8133..a03c6d6 100644 (file)
@@ -14,6 +14,7 @@
 
 #include <dt-bindings/interconnect/qcom,osm-l3.h>
 
+#include "sc7180.h"
 #include "sdm845.h"
 
 #define LUT_MAX_ENTRIES                        40U
@@ -82,6 +83,19 @@ const static struct qcom_icc_desc sdm845_icc_osm_l3 = {
        .num_nodes = ARRAY_SIZE(sdm845_osm_l3_nodes),
 };
 
+DEFINE_QNODE(sc7180_osm_apps_l3, SC7180_MASTER_OSM_L3_APPS, 16, SC7180_SLAVE_OSM_L3);
+DEFINE_QNODE(sc7180_osm_l3, SC7180_SLAVE_OSM_L3, 16);
+
+static struct qcom_icc_node *sc7180_osm_l3_nodes[] = {
+       [MASTER_OSM_L3_APPS] = &sc7180_osm_apps_l3,
+       [SLAVE_OSM_L3] = &sc7180_osm_l3,
+};
+
+const static struct qcom_icc_desc sc7180_icc_osm_l3 = {
+       .nodes = sc7180_osm_l3_nodes,
+       .num_nodes = ARRAY_SIZE(sc7180_osm_l3_nodes),
+};
+
 static int qcom_icc_set(struct icc_node *src, struct icc_node *dst)
 {
        struct qcom_osm_l3_icc_provider *qp;
@@ -242,6 +256,7 @@ err:
 }
 
 static const struct of_device_id osm_l3_of_match[] = {
+       { .compatible = "qcom,sc7180-osm-l3", .data = &sc7180_icc_osm_l3 },
        { .compatible = "qcom,sdm845-osm-l3", .data = &sdm845_icc_osm_l3 },
        { }
 };
index c2d8388..c6212a1 100644 (file)
 #define SC7180_SLAVE_SERVICE_SNOC                      134
 #define SC7180_SLAVE_QDSS_STM                          135
 #define SC7180_SLAVE_TCU                               136
+#define SC7180_MASTER_OSM_L3_APPS                      137
+#define SC7180_SLAVE_OSM_L3                            138
 
 #endif