[3/5] pps: clients: gpio: add option to set capture-clear from device-tree

Message ID 20230625142134.33690-4-farbere@amazon.com
State New
Headers
Series Add PPS pulse-width support |

Commit Message

Farber, Eliav June 25, 2023, 2:21 p.m. UTC
  Enable capture clear events if "capture-clear" boolean property exists
in device-tree.

Signed-off-by: Eliav Farber <farbere@amazon.com>
---
 drivers/pps/clients/pps-gpio.c | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Rodolfo Giometti July 5, 2023, 7:04 a.m. UTC | #1
On 04/07/23 07:07, Farber, Eliav wrote:
> On 6/25/2023 5:21 PM, Eliav Farber wrote:
>> Enable capture clear events if "capture-clear" boolean property exists
>> in device-tree.
>>
>> Signed-off-by: Eliav Farber <farbere@amazon.com>
>> ---
>> drivers/pps/clients/pps-gpio.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/pps/clients/pps-gpio.c b/drivers/pps/clients/pps-gpio.c
>> index 2f4b11b4dfcd..a61dc1299ce9 100644
>> --- a/drivers/pps/clients/pps-gpio.c
>> +++ b/drivers/pps/clients/pps-gpio.c
>> @@ -112,6 +112,7 @@ static int pps_gpio_setup(struct device *dev)
>>
>>     data->assert_falling_edge =
>>         device_property_read_bool(dev, "assert-falling-edge");
>> +    data->capture_clear = device_property_read_bool(dev, "capture-clear");
> 
> Rodolfo, currently data->capture_clear is false by default, and there
> is no way of setting it in the pps-gpio driver.
> How would you suggest setting it?

I think that driver needs a review... in fact, by using gpiod_*() functions we 
should be able to remove both assert_falling_edge and capture_clear flags.

> Will it be OK to setting PPS_WIDTHASSERT by default?

I think they can both be asserted by default. Why should someone may prefer to 
disable one of them?

Ciao,

Rodolfo
  

Patch

diff --git a/drivers/pps/clients/pps-gpio.c b/drivers/pps/clients/pps-gpio.c
index 2f4b11b4dfcd..a61dc1299ce9 100644
--- a/drivers/pps/clients/pps-gpio.c
+++ b/drivers/pps/clients/pps-gpio.c
@@ -112,6 +112,7 @@  static int pps_gpio_setup(struct device *dev)
 
 	data->assert_falling_edge =
 		device_property_read_bool(dev, "assert-falling-edge");
+	data->capture_clear = device_property_read_bool(dev, "capture-clear");
 
 	data->echo_pin = devm_gpiod_get_optional(dev, "echo", GPIOD_OUT_LOW);
 	if (IS_ERR(data->echo_pin))