mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-12 05:48:39 +08:00
pps: clients: gpio: Make use of device properties
Device property API allows to gather device resources from different sources, such as ACPI. Convert the drivers to unleash the power of device property API. Acked-by: Rodolfo Giometti <giometti@enneenne.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20210318130321.24227-5-andriy.shevchenko@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
ee89646619
commit
28d032510e
@ -12,14 +12,14 @@
|
||||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/pps_kernel.h>
|
||||
#include <linux/gpio/consumer.h>
|
||||
#include <linux/list.h>
|
||||
#include <linux/of_device.h>
|
||||
#include <linux/of_gpio.h>
|
||||
#include <linux/property.h>
|
||||
#include <linux/timer.h>
|
||||
#include <linux/jiffies.h>
|
||||
|
||||
@ -102,7 +102,6 @@ static void pps_gpio_echo_timer_callback(struct timer_list *t)
|
||||
static int pps_gpio_setup(struct platform_device *pdev)
|
||||
{
|
||||
struct pps_gpio_device_data *data = platform_get_drvdata(pdev);
|
||||
struct device_node *np = pdev->dev.of_node;
|
||||
int ret;
|
||||
u32 value;
|
||||
|
||||
@ -121,26 +120,24 @@ static int pps_gpio_setup(struct platform_device *pdev)
|
||||
"failed to request ECHO GPIO\n");
|
||||
|
||||
if (data->echo_pin) {
|
||||
ret = of_property_read_u32(np,
|
||||
"echo-active-ms",
|
||||
&value);
|
||||
ret = device_property_read_u32(&pdev->dev, "echo-active-ms", &value);
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev,
|
||||
"failed to get echo-active-ms from OF\n");
|
||||
"failed to get echo-active-ms from FW\n");
|
||||
return ret;
|
||||
}
|
||||
data->echo_active_ms = value;
|
||||
/* sanity check on echo_active_ms */
|
||||
if (!data->echo_active_ms || data->echo_active_ms > 999) {
|
||||
dev_err(&pdev->dev,
|
||||
"echo-active-ms: %u - bad value from OF\n",
|
||||
"echo-active-ms: %u - bad value from FW\n",
|
||||
data->echo_active_ms);
|
||||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
|
||||
if (of_property_read_bool(np, "assert-falling-edge"))
|
||||
data->assert_falling_edge = true;
|
||||
data->assert_falling_edge =
|
||||
device_property_read_bool(&pdev->dev, "assert-falling-edge");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user