hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/mfd/da9063-core.c
....@@ -1,16 +1,12 @@
1
+// SPDX-License-Identifier: GPL-2.0+
12 /*
2
- * da9063-core.c: Device access for Dialog DA9063 modules
3
+ * Device access for Dialog DA9063 modules
34 *
45 * Copyright 2012 Dialog Semiconductors Ltd.
56 * Copyright 2013 Philipp Zabel, Pengutronix
67 *
78 * Author: Krystian Garbaciak, Dialog Semiconductor
89 * Author: Michal Hajduk, Dialog Semiconductor
9
- *
10
- * This program is free software; you can redistribute it and/or modify it
11
- * under the terms of the GNU General Public License as published by the
12
- * Free Software Foundation; either version 2 of the License, or (at your
13
- * option) any later version.
1410 *
1511 */
1612
....@@ -26,7 +22,6 @@
2622 #include <linux/regmap.h>
2723
2824 #include <linux/mfd/da9063/core.h>
29
-#include <linux/mfd/da9063/pdata.h>
3025 #include <linux/mfd/da9063/registers.h>
3126
3227 #include <linux/proc_fs.h>
....@@ -165,61 +160,15 @@
165160
166161 int da9063_device_init(struct da9063 *da9063, unsigned int irq)
167162 {
168
- struct da9063_pdata *pdata = da9063->dev->platform_data;
169
- int model, variant_id, variant_code;
170163 int ret;
171164
172165 ret = da9063_clear_fault_log(da9063);
173166 if (ret < 0)
174167 dev_err(da9063->dev, "Cannot clear fault log\n");
175168
176
- if (pdata) {
177
- da9063->flags = pdata->flags;
178
- da9063->irq_base = pdata->irq_base;
179
- } else {
180
- da9063->flags = 0;
181
- da9063->irq_base = -1;
182
- }
169
+ da9063->flags = 0;
170
+ da9063->irq_base = -1;
183171 da9063->chip_irq = irq;
184
-
185
- if (pdata && pdata->init != NULL) {
186
- ret = pdata->init(da9063);
187
- if (ret != 0) {
188
- dev_err(da9063->dev,
189
- "Platform initialization failed.\n");
190
- return ret;
191
- }
192
- }
193
-
194
- ret = regmap_read(da9063->regmap, DA9063_REG_CHIP_ID, &model);
195
- if (ret < 0) {
196
- dev_err(da9063->dev, "Cannot read chip model id.\n");
197
- return -EIO;
198
- }
199
- if (model != PMIC_CHIP_ID_DA9063) {
200
- dev_err(da9063->dev, "Invalid chip model id: 0x%02x\n", model);
201
- return -ENODEV;
202
- }
203
-
204
- ret = regmap_read(da9063->regmap, DA9063_REG_CHIP_VARIANT, &variant_id);
205
- if (ret < 0) {
206
- dev_err(da9063->dev, "Cannot read chip variant id.\n");
207
- return -EIO;
208
- }
209
-
210
- variant_code = variant_id >> DA9063_CHIP_VARIANT_SHIFT;
211
-
212
- dev_info(da9063->dev,
213
- "Device detected (chip-ID: 0x%02X, var-ID: 0x%02X)\n",
214
- model, variant_id);
215
-
216
- if (variant_code < PMIC_DA9063_BB && variant_code != PMIC_DA9063_AD) {
217
- dev_err(da9063->dev,
218
- "Cannot support variant code: 0x%02X\n", variant_code);
219
- return -ENODEV;
220
- }
221
-
222
- da9063->variant_code = variant_code;
223172
224173 ret = da9063_irq_init(da9063);
225174 if (ret) {