net: ipa: add interconnect name to configuration data
authorAlex Elder <elder@linaro.org>
Fri, 15 Jan 2021 12:50:48 +0000 (06:50 -0600)
committerJakub Kicinski <kuba@kernel.org>
Mon, 18 Jan 2021 19:51:05 +0000 (11:51 -0800)
Add the name to the configuration data for each interconnect.  Use
this information rather than a constant string during initialization.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ipa/ipa_clock.c
drivers/net/ipa/ipa_data-sc7180.c
drivers/net/ipa/ipa_data-sdm845.c
drivers/net/ipa/ipa_data.h

index 537c72b5267f665125d825c94e849a61ebfcb525..07069dbc6d033b2b12811ec6242947f7f5e962e7 100644 (file)
@@ -76,7 +76,7 @@ static int ipa_interconnect_init(struct ipa_clock *clock, struct device *dev,
        struct ipa_interconnect *interconnect;
        struct icc_path *path;
 
-       path = ipa_interconnect_init_one(dev, "memory");
+       path = ipa_interconnect_init_one(dev, data->name);
        if (IS_ERR(path))
                goto err_return;
        interconnect = &clock->interconnect[IPA_INTERCONNECT_MEMORY];
@@ -85,7 +85,7 @@ static int ipa_interconnect_init(struct ipa_clock *clock, struct device *dev,
        interconnect->peak_bandwidth = data->peak_bandwidth;
        data++;
 
-       path = ipa_interconnect_init_one(dev, "imem");
+       path = ipa_interconnect_init_one(dev, data->name);
        if (IS_ERR(path))
                goto err_memory_path_put;
        interconnect = &clock->interconnect[IPA_INTERCONNECT_IMEM];
@@ -94,7 +94,7 @@ static int ipa_interconnect_init(struct ipa_clock *clock, struct device *dev,
        interconnect->peak_bandwidth = data->peak_bandwidth;
        data++;
 
-       path = ipa_interconnect_init_one(dev, "config");
+       path = ipa_interconnect_init_one(dev, data->name);
        if (IS_ERR(path))
                goto err_imem_path_put;
        interconnect = &clock->interconnect[IPA_INTERCONNECT_CONFIG];
index 491572c0a34dceab9ba4609ce4eccc2308b0fc30..1936ecb4c1104b7381649f22aea4dd39954c0769 100644 (file)
@@ -314,15 +314,18 @@ static struct ipa_clock_data ipa_clock_data = {
        /* Interconnect bandwidths are in 1000 byte/second units */
        .interconnect = {
                [IPA_INTERCONNECT_MEMORY] = {
+                       .name                   = "memory",
                        .peak_bandwidth         = 465000,       /* 465 MBps */
                        .average_bandwidth      = 80000,        /* 80 MBps */
                },
                /* Average bandwidth unused for the next two interconnects */
                [IPA_INTERCONNECT_IMEM] = {
+                       .name                   = "imem",
                        .peak_bandwidth         = 68570,        /* 68.57 MBps */
                        .average_bandwidth      = 0,            /* unused */
                },
                [IPA_INTERCONNECT_CONFIG] = {
+                       .name                   = "config",
                        .peak_bandwidth         = 30000,        /* 30 MBps */
                        .average_bandwidth      = 0,            /* unused */
                },
index c62b86171b929330f76417b4596b1da983daab35..3b556b5a6340658ceb180fdf7b917d33061feeeb 100644 (file)
@@ -334,15 +334,18 @@ static struct ipa_clock_data ipa_clock_data = {
        /* Interconnect bandwidths are in 1000 byte/second units */
        .interconnect = {
                [IPA_INTERCONNECT_MEMORY] = {
+                       .name                   = "memory",
                        .peak_bandwidth         = 600000,       /* 600 MBps */
                        .average_bandwidth      = 80000,        /* 80 MBps */
                },
                /* Average bandwidth unused for the next two interconnects */
                [IPA_INTERCONNECT_IMEM] = {
+                       .name                   = "imem",
                        .peak_bandwidth         = 350000,       /* 350 MBps */
                        .average_bandwidth      = 0,            /* unused */
                },
                [IPA_INTERCONNECT_CONFIG] = {
+                       .name                   = "config",
                        .peak_bandwidth         = 40000,        /* 40 MBps */
                        .average_bandwidth      = 0,            /* unused */
                },
index 96a9771a6cc05da4a8c97b580c730a6b4f1055d3..d8ea6266dc6a1fe26b595db7089f7f8753ab2dbd 100644 (file)
@@ -268,10 +268,12 @@ enum ipa_interconnect_id {
 
 /**
  * struct ipa_interconnect_data - description of IPA interconnect bandwidths
+ * @name:              Interconnect name (matches interconnect-name in DT)
  * @peak_bandwidth:    Peak interconnect bandwidth (in 1000 byte/sec units)
  * @average_bandwidth: Average interconnect bandwidth (in 1000 byte/sec units)
  */
 struct ipa_interconnect_data {
+       const char *name;
        u32 peak_bandwidth;
        u32 average_bandwidth;
 };