Revert "setup_mux_mapped: use HIGH/LOW instead"
authorBrendan Le Foll <brendan.le.foll@intel.com>
Thu, 5 Feb 2015 15:00:27 +0000 (15:00 +0000)
committerBrendan Le Foll <brendan.le.foll@intel.com>
Thu, 5 Feb 2015 15:17:50 +0000 (15:17 +0000)
This reverts commit 6c73a8adceb2b59e1868dc57737be9b2ea51cec7 as it breaks
galileo gen1 muxing.

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
src/mraa.c

index 0e82ebb..e790325 100644 (file)
@@ -146,17 +146,13 @@ mraa_setup_mux_mapped(mraa_pin_t meta)
         if (mux_i == NULL) {
             return MRAA_ERROR_INVALID_HANDLE;
         }
+        // this function will sometimes fail, however this is not critical as
+        // long as the write succeeds - Test case galileo gen2 pin2
+        mraa_gpio_dir(mux_i, MRAA_GPIO_OUT);
 
-        if (meta.mux[mi].value) {
-            if (mraa_gpio_dir(mux_i, MRAA_GPIO_OUT_HIGH) != MRAA_SUCCESS) {
-                mraa_gpio_close(mux_i);
-                return MRAA_ERROR_INVALID_RESOURCE;
-            }
-        } else {
-            if (mraa_gpio_dir(mux_i, MRAA_GPIO_OUT_LOW) != MRAA_SUCCESS) {
-                mraa_gpio_close(mux_i);
-                return MRAA_ERROR_INVALID_RESOURCE;
-            }
+        if (mraa_gpio_write(mux_i, meta.mux[mi].value) != MRAA_SUCCESS) {
+            mraa_gpio_close(mux_i);
+            return MRAA_ERROR_INVALID_RESOURCE;
         }
         mraa_gpio_close(mux_i);
     }