[v3,16/26] PCI: OF: Allow of_pci_get_max_link_speed() to be used by PCI Endpoint drivers

Message ID 20190325093947.32633-17-kishon@ti.com
State Accepted
Commit 40e5d614a0cdbf50dc3caa7eb10bd838edcb3ba5
Headers show
Series
  • Untitled series #19461
Related show

Commit Message

Kishon Vijay Abraham I March 25, 2019, 9:39 a.m.
of_pci_get_max_link_speed() is built only if CONFIG_PCI is enabled.
Make of_pci_get_max_link_speed() to be also used by PCI Endpoint
controllers with just CONFIG_PCI_ENDPOINT enabled.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>

Signed-off-by: Sekhar Nori <nsekhar@ti.com>

---
 drivers/pci/Makefile |  2 +-
 drivers/pci/of.c     | 44 +++++++++++++++++++++++---------------------
 2 files changed, 24 insertions(+), 22 deletions(-)

-- 
2.17.1

Comments

Bjorn Helgaas April 12, 2019, 2:05 p.m. | #1
On Mon, Mar 25, 2019 at 03:09:37PM +0530, Kishon Vijay Abraham I wrote:
> of_pci_get_max_link_speed() is built only if CONFIG_PCI is enabled.

> Make of_pci_get_max_link_speed() to be also used by PCI Endpoint

> controllers with just CONFIG_PCI_ENDPOINT enabled.

> 

> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>

> Signed-off-by: Sekhar Nori <nsekhar@ti.com>


Acked-by: Bjorn Helgaas <bhelgaas@google.com>


> ---

>  drivers/pci/Makefile |  2 +-

>  drivers/pci/of.c     | 44 +++++++++++++++++++++++---------------------

>  2 files changed, 24 insertions(+), 22 deletions(-)

> 

> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile

> index 657d642fcc67..28cdd8c0213a 100644

> --- a/drivers/pci/Makefile

> +++ b/drivers/pci/Makefile

> @@ -10,10 +10,10 @@ obj-$(CONFIG_PCI)		+= access.o bus.o probe.o host-bridge.o \

>  ifdef CONFIG_PCI

>  obj-$(CONFIG_PROC_FS)		+= proc.o

>  obj-$(CONFIG_SYSFS)		+= slot.o

> -obj-$(CONFIG_OF)		+= of.o

>  obj-$(CONFIG_ACPI)		+= pci-acpi.o

>  endif

>  

> +obj-$(CONFIG_OF)		+= of.o

>  obj-$(CONFIG_PCI_QUIRKS)	+= quirks.o

>  obj-$(CONFIG_PCIEPORTBUS)	+= pcie/

>  obj-$(CONFIG_HOTPLUG_PCI)	+= hotplug/

> diff --git a/drivers/pci/of.c b/drivers/pci/of.c

> index 3d32da15c215..8095933f8452 100644

> --- a/drivers/pci/of.c

> +++ b/drivers/pci/of.c

> @@ -15,6 +15,7 @@

>  #include <linux/of_pci.h>

>  #include "pci.h"

>  

> +#ifdef CONFIG_PCI

>  void pci_set_of_node(struct pci_dev *dev)

>  {

>  	if (!dev->bus->dev.of_node)

> @@ -196,27 +197,6 @@ int of_get_pci_domain_nr(struct device_node *node)

>  }

>  EXPORT_SYMBOL_GPL(of_get_pci_domain_nr);

>  

> -/**

> - * This function will try to find the limitation of link speed by finding

> - * a property called "max-link-speed" of the given device node.

> - *

> - * @node: device tree node with the max link speed information

> - *

> - * Returns the associated max link speed from DT, or a negative value if the

> - * required property is not found or is invalid.

> - */

> -int of_pci_get_max_link_speed(struct device_node *node)

> -{

> -	u32 max_link_speed;

> -

> -	if (of_property_read_u32(node, "max-link-speed", &max_link_speed) ||

> -	    max_link_speed > 4)

> -		return -EINVAL;

> -

> -	return max_link_speed;

> -}

> -EXPORT_SYMBOL_GPL(of_pci_get_max_link_speed);

> -

>  /**

>   * of_pci_check_probe_only - Setup probe only mode if linux,pci-probe-only

>   *                           is present and valid

> @@ -537,3 +517,25 @@ int pci_parse_request_of_pci_ranges(struct device *dev,

>  	return err;

>  }

>  

> +#endif /* CONFIG_PCI */

> +

> +/**

> + * This function will try to find the limitation of link speed by finding

> + * a property called "max-link-speed" of the given device node.

> + *

> + * @node: device tree node with the max link speed information

> + *

> + * Returns the associated max link speed from DT, or a negative value if the

> + * required property is not found or is invalid.

> + */

> +int of_pci_get_max_link_speed(struct device_node *node)

> +{

> +	u32 max_link_speed;

> +

> +	if (of_property_read_u32(node, "max-link-speed", &max_link_speed) ||

> +	    max_link_speed > 4)

> +		return -EINVAL;

> +

> +	return max_link_speed;

> +}

> +EXPORT_SYMBOL_GPL(of_pci_get_max_link_speed);

> -- 

> 2.17.1

>

Patch

diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 657d642fcc67..28cdd8c0213a 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -10,10 +10,10 @@  obj-$(CONFIG_PCI)		+= access.o bus.o probe.o host-bridge.o \
 ifdef CONFIG_PCI
 obj-$(CONFIG_PROC_FS)		+= proc.o
 obj-$(CONFIG_SYSFS)		+= slot.o
-obj-$(CONFIG_OF)		+= of.o
 obj-$(CONFIG_ACPI)		+= pci-acpi.o
 endif
 
+obj-$(CONFIG_OF)		+= of.o
 obj-$(CONFIG_PCI_QUIRKS)	+= quirks.o
 obj-$(CONFIG_PCIEPORTBUS)	+= pcie/
 obj-$(CONFIG_HOTPLUG_PCI)	+= hotplug/
diff --git a/drivers/pci/of.c b/drivers/pci/of.c
index 3d32da15c215..8095933f8452 100644
--- a/drivers/pci/of.c
+++ b/drivers/pci/of.c
@@ -15,6 +15,7 @@ 
 #include <linux/of_pci.h>
 #include "pci.h"
 
+#ifdef CONFIG_PCI
 void pci_set_of_node(struct pci_dev *dev)
 {
 	if (!dev->bus->dev.of_node)
@@ -196,27 +197,6 @@  int of_get_pci_domain_nr(struct device_node *node)
 }
 EXPORT_SYMBOL_GPL(of_get_pci_domain_nr);
 
-/**
- * This function will try to find the limitation of link speed by finding
- * a property called "max-link-speed" of the given device node.
- *
- * @node: device tree node with the max link speed information
- *
- * Returns the associated max link speed from DT, or a negative value if the
- * required property is not found or is invalid.
- */
-int of_pci_get_max_link_speed(struct device_node *node)
-{
-	u32 max_link_speed;
-
-	if (of_property_read_u32(node, "max-link-speed", &max_link_speed) ||
-	    max_link_speed > 4)
-		return -EINVAL;
-
-	return max_link_speed;
-}
-EXPORT_SYMBOL_GPL(of_pci_get_max_link_speed);
-
 /**
  * of_pci_check_probe_only - Setup probe only mode if linux,pci-probe-only
  *                           is present and valid
@@ -537,3 +517,25 @@  int pci_parse_request_of_pci_ranges(struct device *dev,
 	return err;
 }
 
+#endif /* CONFIG_PCI */
+
+/**
+ * This function will try to find the limitation of link speed by finding
+ * a property called "max-link-speed" of the given device node.
+ *
+ * @node: device tree node with the max link speed information
+ *
+ * Returns the associated max link speed from DT, or a negative value if the
+ * required property is not found or is invalid.
+ */
+int of_pci_get_max_link_speed(struct device_node *node)
+{
+	u32 max_link_speed;
+
+	if (of_property_read_u32(node, "max-link-speed", &max_link_speed) ||
+	    max_link_speed > 4)
+		return -EINVAL;
+
+	return max_link_speed;
+}
+EXPORT_SYMBOL_GPL(of_pci_get_max_link_speed);