Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1527401

[PATCH 1/3] of: base: add support to get machine compatible string

From Bartosz Golaszewski <bgolaszewski@baylibre.com>
Newsgroups linux.kernel
Subject [PATCH 1/3] of: base: add support to get machine compatible string
Date 2016-11-22 11:50 +0100
Message-ID <sGgOe-61X-33@gated-at.bofh.it> (permalink)
References <sGgOd-61X-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Add a function allowing to retrieve the compatible string of the root
node of the device tree.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 drivers/of/base.c  | 22 ++++++++++++++++++++++
 include/linux/of.h |  6 ++++++
 2 files changed, 28 insertions(+)

diff --git a/drivers/of/base.c b/drivers/of/base.c
index a0bccb5..bbfe5e9 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -546,6 +546,28 @@ int of_machine_is_compatible(const char *compat)
 EXPORT_SYMBOL(of_machine_is_compatible);
 
 /**
+ * of_machine_get_compatible - Get the compatible property of the root node
+ *
+ * Returns a NULL-terminated string containing the compatible if it could
+ * be found, NULL otherwise.
+ */
+const char *of_machine_get_compatible(void)
+{
+	struct device_node *root;
+	const char *compatible;
+	int ret = -1;
+
+	root = of_find_node_by_path("/");
+	if (root) {
+		ret = of_property_read_string(root, "compatible", &compatible);
+		of_node_put(root);
+	}
+
+	return ret ? NULL : compatible;
+}
+EXPORT_SYMBOL(of_machine_get_compatible);
+
+/**
  *  __of_device_is_available - check if a device is available for use
  *
  *  @device: Node to check for availability, with locks already held
diff --git a/include/linux/of.h b/include/linux/of.h
index 299aeb1..664b734 100644
--- a/include/linux/of.h
+++ b/include/linux/of.h
@@ -367,6 +367,7 @@ extern int of_alias_get_id(struct device_node *np, const char *stem);
 extern int of_alias_get_highest_id(const char *stem);
 
 extern int of_machine_is_compatible(const char *compat);
+extern const char *of_machine_get_compatible(void);
 
 extern int of_add_property(struct device_node *np, struct property *prop);
 extern int of_remove_property(struct device_node *np, struct property *prop);
@@ -788,6 +789,11 @@ static inline int of_machine_is_compatible(const char *compat)
 	return 0;
 }
 
+static inline const char *of_machine_get_compatible(void)
+{
+	return NULL;
+}
+
 static inline bool of_console_check(const struct device_node *dn, const char *name, int index)
 {
 	return false;
-- 
2.9.3

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/3] ARM: da8xx: fix section mismatch in new drivers Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-11-22 11:50 +0100
  [PATCH 2/3] bus: da8xx-mstpri: drop the call to of_flat_dt_get_machine_name() Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-11-22 11:50 +0100
  [PATCH 3/3] memory: da8xx-ddrctl: drop the call to of_flat_dt_get_machine_name() Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-11-22 11:50 +0100
  [PATCH 1/3] of: base: add support to get machine compatible string Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-11-22 11:50 +0100
    Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sudeep Holla <sudeep.holla@arm.com> - 2016-11-22 12:00 +0100
      Re: [PATCH 1/3] of: base: add support to get machine compatible string Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-11-22 12:00 +0100
        Re: [PATCH 1/3] of: base: add support to get machine compatible string Bartosz Golaszewski <bgolaszewski@baylibre.com> - 2016-11-22 12:00 +0100
        Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sudeep Holla <sudeep.holla@arm.com> - 2016-11-22 12:10 +0100
          Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sekhar Nori <nsekhar@ti.com> - 2016-11-22 13:20 +0100
      Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sekhar Nori <nsekhar@ti.com> - 2016-11-22 16:10 +0100
        Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sudeep Holla <sudeep.holla@arm.com> - 2016-11-22 16:50 +0100
          Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sekhar Nori <nsekhar@ti.com> - 2016-11-23 09:00 +0100
            Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sudeep Holla <sudeep.holla@arm.com> - 2016-11-23 11:10 +0100
              Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sekhar Nori <nsekhar@ti.com> - 2016-11-23 12:50 +0100
                Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sekhar Nori <nsekhar@ti.com> - 2016-11-23 13:20 +0100
                Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sudeep Holla <sudeep.holla@arm.com> - 2016-11-23 13:20 +0100
                Re: [PATCH 1/3] of: base: add support to get machine compatible  string Sudeep Holla <sudeep.holla@arm.com> - 2016-11-23 13:20 +0100

csiph-web