conrad-digi-35-cpu: Add SR_CONF_LIST for voltage_target and current_limit. Change current_limit lower limit.
diff --git a/src/hardware/conrad-digi-35-cpu/api.c b/src/hardware/conrad-digi-35-cpu/api.c
index 0548d50..1524df0 100644
--- a/src/hardware/conrad-digi-35-cpu/api.c
+++ b/src/hardware/conrad-digi-35-cpu/api.c
@@ -32,8 +32,8 @@
 };
 
 static const uint32_t devopts[] = {
-	SR_CONF_VOLTAGE_TARGET | SR_CONF_SET,
-	SR_CONF_CURRENT_LIMIT | SR_CONF_SET,
+	SR_CONF_VOLTAGE_TARGET | SR_CONF_SET | SR_CONF_LIST,
+	SR_CONF_CURRENT_LIMIT | SR_CONF_SET | SR_CONF_LIST,
 	SR_CONF_OVER_CURRENT_PROTECTION_ENABLED | SR_CONF_SET,
 };
 
@@ -111,7 +111,7 @@
 		return send_msg1(sdi, 'V', (int) (dblval * 10 + 0.5));
 	case SR_CONF_CURRENT_LIMIT:
 		dblval = g_variant_get_double(data);
-		if ((dblval < 0.01) || (dblval > 2.55)) {
+		if ((dblval < 0.00) || (dblval > 2.55)) {
 			sr_err("Current out of range (0 - 2.55)!");
 			return SR_ERR_ARG;
 		}
@@ -131,7 +131,21 @@
 static int config_list(uint32_t key, GVariant **data,
 	const struct sr_dev_inst *sdi, const struct sr_channel_group *cg)
 {
-	return STD_CONFIG_LIST(key, data, sdi, cg, scanopts, drvopts, devopts);
+	switch (key) {
+	case SR_CONF_SCAN_OPTIONS:
+	case SR_CONF_DEVICE_OPTIONS:
+		return STD_CONFIG_LIST(key, data, sdi, cg, scanopts, drvopts, devopts);
+	case SR_CONF_VOLTAGE_TARGET:
+		*data = std_gvar_min_max_step(0.0, 35.0, 0.1);
+		break;
+	case SR_CONF_CURRENT_LIMIT:
+		*data = std_gvar_min_max_step(0.0, 2.55, 0.01);
+		break;
+	default:
+		return SR_ERR_NA;
+	}
+
+	return SR_OK;
 }
 
 static struct sr_dev_driver conrad_digi_35_cpu_driver_info = {