summaryrefslogtreecommitdiff
path: root/mtac.c
diff options
context:
space:
mode:
authorMike Nicholson <mike.nicholson@multitech.com>2021-05-06 15:07:56 -0500
committerMike Nicholson <mike.nicholson@multitech.com>2021-05-06 15:07:56 -0500
commit086b95577ffa893125aa9f21c02b4dff9b712b5a (patch)
treebd63e3b246d91b42e994fe1a73d8e31a2cdc0bd4 /mtac.c
parent08d9b83c08025b738c712ff6486e5aa245785091 (diff)
downloadmtac-086b95577ffa893125aa9f21c02b4dff9b712b5a.tar.gz
mtac-086b95577ffa893125aa9f21c02b4dff9b712b5a.tar.bz2
mtac-086b95577ffa893125aa9f21c02b4dff9b712b5a.zip
Add support for sub-board EEPROM, fix calls to i2c gpio extender (check4.0.8
cansleep)
Diffstat (limited to 'mtac.c')
-rw-r--r--mtac.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/mtac.c b/mtac.c
index cb31187..c2cad4e 100644
--- a/mtac.c
+++ b/mtac.c
@@ -27,7 +27,7 @@ static const char* eeprom_file_name[NUM_AP] = {
#endif
#ifdef mtcpmhs
/*2nd */
- "2-0050/eeprom", "2-0052/eeprom", "2-0050/eeprom"
+ "2-0050/eeprom", "2-0052/eeprom", "1-0052/eeprom"
#endif
#endif // NUM_AP > 0
};
@@ -250,9 +250,14 @@ ssize_t mtac_attr_show_ap_gpio_pin(struct kobject *kobj,
log_debug("mtac_attr_show_ap_gpio_pin: State of mtac mutex is %s",
mutex_is_locked(&mtac_mutex) ? "locked" : "unlocked");
+
mutex_lock(&mtac_mutex);
- value = gpio_get_value(pin->pin.gpio);
+ if(gpiod_cansleep(gpio_to_desc(pin->pin.gpio))) {
+ value = gpio_get_value_cansleep(pin->pin.gpio);
+ } else {
+ value = gpio_get_value(pin->pin.gpio);
+ }
mutex_unlock(&mtac_mutex);
@@ -299,7 +304,11 @@ ssize_t mtac_attr_store_ap_gpio_pin(struct kobject *kobj,
mutex_is_locked(&mtac_mutex) ? "locked" : "unlocked");
mutex_lock(&mtac_mutex);
- gpio_set_value(pin->pin.gpio, value);
+ if(gpiod_cansleep(gpio_to_desc(pin->pin.gpio))) {
+ gpio_set_value_cansleep(pin->pin.gpio, value);
+ } else {
+ gpio_set_value(pin->pin.gpio, value);
+ }
mutex_unlock(&mtac_mutex);