[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200210122451.675961231@linuxfoundation.org>
Date: Mon, 10 Feb 2020 04:33:39 -0800
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-kernel@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
stable@...r.kernel.org, Marek Vasut <marex@...x.de>,
Fabio Estevam <festevam@...il.com>,
Igor Opaniuk <igor.opaniuk@...adex.com>,
Liam Girdwood <lgirdwood@...il.com>,
Marcel Ziswiler <marcel.ziswiler@...adex.com>,
Mark Brown <broonie@...nel.org>,
Oleksandr Suvorov <oleksandr.suvorov@...adex.com>
Subject: [PATCH 5.5 306/367] regulator: core: Add regulator_is_equal() helper
From: Marek Vasut <marex@...x.de>
commit b059b7e0ec3208ff1e17cff6387d75a9fbab4e02 upstream.
Add regulator_is_equal() helper to compare whether two regulators are
the same. This is useful for checking whether two separate regulators
in a driver are actually the same supply.
Signed-off-by: Marek Vasut <marex@...x.de>
Cc: Fabio Estevam <festevam@...il.com>
Cc: Igor Opaniuk <igor.opaniuk@...adex.com>
Cc: Liam Girdwood <lgirdwood@...il.com>
Cc: Marcel Ziswiler <marcel.ziswiler@...adex.com>
Cc: Mark Brown <broonie@...nel.org>
Cc: Oleksandr Suvorov <oleksandr.suvorov@...adex.com>
Link: https://lore.kernel.org/r/20191220164450.1395038-1-marex@denx.de
Signed-off-by: Mark Brown <broonie@...nel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
---
drivers/regulator/helpers.c | 14 ++++++++++++++
include/linux/regulator/consumer.h | 7 +++++++
2 files changed, 21 insertions(+)
--- a/drivers/regulator/helpers.c
+++ b/drivers/regulator/helpers.c
@@ -13,6 +13,8 @@
#include <linux/regulator/driver.h>
#include <linux/module.h>
+#include "internal.h"
+
/**
* regulator_is_enabled_regmap - standard is_enabled() for regmap users
*
@@ -881,3 +883,15 @@ void regulator_bulk_set_supply_names(str
consumers[i].supply = supply_names[i];
}
EXPORT_SYMBOL_GPL(regulator_bulk_set_supply_names);
+
+/**
+ * regulator_is_equal - test whether two regulators are the same
+ *
+ * @reg1: first regulator to operate on
+ * @reg2: second regulator to operate on
+ */
+bool regulator_is_equal(struct regulator *reg1, struct regulator *reg2)
+{
+ return reg1->rdev == reg2->rdev;
+}
+EXPORT_SYMBOL_GPL(regulator_is_equal);
--- a/include/linux/regulator/consumer.h
+++ b/include/linux/regulator/consumer.h
@@ -287,6 +287,8 @@ void regulator_bulk_set_supply_names(str
const char *const *supply_names,
unsigned int num_supplies);
+bool regulator_is_equal(struct regulator *reg1, struct regulator *reg2);
+
#else
/*
@@ -593,6 +595,11 @@ regulator_bulk_set_supply_names(struct r
{
}
+static inline bool
+regulator_is_equal(struct regulator *reg1, struct regulator *reg2);
+{
+ return false;
+}
#endif
static inline int regulator_set_voltage_triplet(struct regulator *regulator,
Powered by blists - more mailing lists