]> sigrok.org Git - libsigrok.git/blobdiff - hardware/cem-dt-885x/api.c
cem-dt-885x: Support for powering off the device
[libsigrok.git] / hardware / cem-dt-885x / api.c
index fb309fe2592c55029c10cdfddbc683591a9f8627..3b3082844cc4dad70cd20248f0c49da19f82a7b3 100644 (file)
@@ -32,12 +32,13 @@ static const int32_t hwcaps[] = {
        SR_CONF_SOUNDLEVELMETER,
        SR_CONF_LIMIT_SAMPLES,
        SR_CONF_CONTINUOUS,
-       SR_CONF_DATALOG,
        SR_CONF_SPL_WEIGHT_FREQ,
        SR_CONF_SPL_WEIGHT_TIME,
+       SR_CONF_SPL_MEASUREMENT_RANGE,
+       SR_CONF_DATALOG,
        SR_CONF_HOLD_MAX,
        SR_CONF_HOLD_MIN,
-       SR_CONF_SPL_MEASUREMENT_RANGE,
+       SR_CONF_POWER_OFF,
 };
 
 static const char *weight_freq[] = {
@@ -232,6 +233,9 @@ static int config_get(int key, GVariant **data, const struct sr_dev_inst *sdi)
                        *data = g_variant_new_tuple(range, 2);
                }
                break;
+       case SR_CONF_POWER_OFF:
+               *data = g_variant_new_boolean(FALSE);
+               break;
        default:
                return SR_ERR_NA;
        }
@@ -305,6 +309,10 @@ static int config_set(int key, GVariant *data, const struct sr_dev_inst *sdi)
                        }
                }
                break;
+       case SR_CONF_POWER_OFF:
+               if (g_variant_get_boolean(data))
+                       ret = cem_dt_885x_power_off(sdi);
+               break;
        default:
                ret = SR_ERR_NA;
        }