diff options
Diffstat (limited to 'io-module/mts_lora.c')
-rw-r--r-- | io-module/mts_lora.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/io-module/mts_lora.c b/io-module/mts_lora.c index 4cd65a7..d6cedb8 100644 --- a/io-module/mts_lora.c +++ b/io-module/mts_lora.c @@ -70,9 +70,11 @@ static ssize_t mts_attr_show_lora_gpio_pin(struct device *dev, } mutex_lock(&mts_io_mutex); - - value = gpio_get_value(pin->pin.gpio); - + if (pin->do_gpio_desc) { + value = gpiod_get_value(pin->desc); + } else { + value = gpio_get_value(pin->pin.gpio); + } mutex_unlock(&mts_io_mutex); if (value < 0) { @@ -112,8 +114,11 @@ static ssize_t mts_attr_store_lora_gpio_pin(struct device *dev, mutex_lock(&mts_io_mutex); - gpio_set_value(pin->pin.gpio, value); - + if (pin->do_gpio_desc) { + gpiod_set_value(pin->desc, value); + } else { + gpio_set_value(pin->pin.gpio, value); + } mutex_unlock(&mts_io_mutex); return count; |