[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210420113929.278082-4-krzysztof.kozlowski@canonical.com>
Date: Tue, 20 Apr 2021 13:39:26 +0200
From: Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>
To: Support Opensource <support.opensource@...semi.com>,
Lee Jones <lee.jones@...aro.org>,
Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>,
Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>,
Tony Lindgren <tony@...mide.com>, linux-kernel@...r.kernel.org,
linux-samsung-soc@...r.kernel.org, linux-omap@...r.kernel.org,
patches@...nsource.cirrus.com
Cc: Marek Szyprowski <m.szyprowski@...sung.com>,
Sylwester Nawrocki <snawrocki@...nel.org>,
Adam Thomson <Adam.Thomson.Opensource@...semi.com>
Subject: [PATCH v2 4/7] mfd: da9062: Simplify getting of_device_id match data
Use of_device_get_match_data() to make the code slightly smaller.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>
Acked-by: Adam Thomson <Adam.Thomson.Opensource@...semi.com>
---
Changes since v1:
1. Add Ack
2. Correct subject prefix
---
drivers/mfd/da9062-core.c | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)
diff --git a/drivers/mfd/da9062-core.c b/drivers/mfd/da9062-core.c
index 8d913375152d..01f8e10dfa55 100644
--- a/drivers/mfd/da9062-core.c
+++ b/drivers/mfd/da9062-core.c
@@ -9,6 +9,7 @@
#include <linux/init.h>
#include <linux/device.h>
#include <linux/interrupt.h>
+#include <linux/of_device.h>
#include <linux/regmap.h>
#include <linux/irq.h>
#include <linux/mfd/core.h>
@@ -622,7 +623,6 @@ static int da9062_i2c_probe(struct i2c_client *i2c,
const struct i2c_device_id *id)
{
struct da9062 *chip;
- const struct of_device_id *match;
unsigned int irq_base;
const struct mfd_cell *cell;
const struct regmap_irq_chip *irq_chip;
@@ -635,15 +635,10 @@ static int da9062_i2c_probe(struct i2c_client *i2c,
if (!chip)
return -ENOMEM;
- if (i2c->dev.of_node) {
- match = of_match_node(da9062_dt_ids, i2c->dev.of_node);
- if (!match)
- return -EINVAL;
-
- chip->chip_type = (uintptr_t)match->data;
- } else {
+ if (i2c->dev.of_node)
+ chip->chip_type = (uintptr_t)of_device_get_match_data(&i2c->dev);
+ else
chip->chip_type = id->driver_data;
- }
i2c_set_clientdata(i2c, chip);
chip->dev = &i2c->dev;
--
2.25.1
Powered by blists - more mailing lists