summaryrefslogtreecommitdiff
path: root/drivers/base/regmap/regmap-spi.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2012-01-30 19:56:52 +0000
committerLokesh Pathak <lpathak@nvidia.com>2012-03-05 07:59:27 -0800
commitafb74b6de29f8219824b93c3743b418a66df494a (patch)
tree6d8a858f83e149731e6e5afc6431cf59433e7b76 /drivers/base/regmap/regmap-spi.c
parent096f635bbc06c97e90b70e1722f05ec1facfb622 (diff)
regmap: Implement managed regmap_init()
Save error handling and unwinding code in drivers by providing managed versions of the regmap init functions, simplifying usage. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> (cherry picked from commit c0eb46766d395da8d62148bda2e59bad5e6ee2f2) Change-Id: I6df96ae10ad8a882feb7da908dd46c2f56a28f9f Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/87585
Diffstat (limited to 'drivers/base/regmap/regmap-spi.c')
-rw-r--r--drivers/base/regmap/regmap-spi.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/base/regmap/regmap-spi.c b/drivers/base/regmap/regmap-spi.c
index 2560658de344..7c0c35a39c33 100644
--- a/drivers/base/regmap/regmap-spi.c
+++ b/drivers/base/regmap/regmap-spi.c
@@ -70,4 +70,21 @@ struct regmap *regmap_init_spi(struct spi_device *spi,
}
EXPORT_SYMBOL_GPL(regmap_init_spi);
+/**
+ * devm_regmap_init_spi(): Initialise register map
+ *
+ * @spi: Device that will be interacted with
+ * @config: Configuration for register map
+ *
+ * The return value will be an ERR_PTR() on error or a valid pointer
+ * to a struct regmap. The map will be automatically freed by the
+ * device management code.
+ */
+struct regmap *devm_regmap_init_spi(struct spi_device *spi,
+ const struct regmap_config *config)
+{
+ return devm_regmap_init(&spi->dev, &regmap_spi, config);
+}
+EXPORT_SYMBOL_GPL(devm_regmap_init_spi);
+
MODULE_LICENSE("GPL");