mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-03-11 23:27:42 +07:00
iio:adc:axp20x: Convert from OF to generic fw / device properties
Whilst fairly unlikely anyone will ever use this driver with anything other than DT, we are trying to move IIO over to the generic interfaces where easy to do so. In this case this involved moving to generic check on presence of fwnode, generic device_get_match_data() and dropping the of_match_ptr protection. Also relevant header changes to have property.h and mod_devicetable.h only. Also drop the casting away of a const in favour of retaining the const throughout. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Cc: Quentin Schulz <quentin.schulz@bootlin.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
This commit is contained in:
parent
75caa303d7
commit
81f434f017
@ -9,10 +9,10 @@
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_device.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/property.h>
|
||||
#include <linux/regmap.h>
|
||||
#include <linux/thermal.h>
|
||||
|
||||
@ -67,7 +67,7 @@ struct axp_data;
|
||||
|
||||
struct axp20x_adc_iio {
|
||||
struct regmap *regmap;
|
||||
struct axp_data *data;
|
||||
const struct axp_data *data;
|
||||
};
|
||||
|
||||
enum axp20x_adc_channel_v {
|
||||
@ -670,15 +670,15 @@ static int axp20x_probe(struct platform_device *pdev)
|
||||
info->regmap = axp20x_dev->regmap;
|
||||
indio_dev->modes = INDIO_DIRECT_MODE;
|
||||
|
||||
if (!pdev->dev.of_node) {
|
||||
if (!dev_fwnode(&pdev->dev)) {
|
||||
const struct platform_device_id *id;
|
||||
|
||||
id = platform_get_device_id(pdev);
|
||||
info->data = (struct axp_data *)id->driver_data;
|
||||
info->data = (const struct axp_data *)id->driver_data;
|
||||
} else {
|
||||
struct device *dev = &pdev->dev;
|
||||
|
||||
info->data = (struct axp_data *)of_device_get_match_data(dev);
|
||||
info->data = device_get_match_data(dev);
|
||||
}
|
||||
|
||||
indio_dev->name = platform_get_device_id(pdev)->name;
|
||||
@ -742,7 +742,7 @@ static int axp20x_remove(struct platform_device *pdev)
|
||||
static struct platform_driver axp20x_adc_driver = {
|
||||
.driver = {
|
||||
.name = "axp20x-adc",
|
||||
.of_match_table = of_match_ptr(axp20x_adc_of_match),
|
||||
.of_match_table = axp20x_adc_of_match,
|
||||
},
|
||||
.id_table = axp20x_adc_id_match,
|
||||
.probe = axp20x_probe,
|
||||
|
Loading…
Reference in New Issue
Block a user