global: Treat SR_CONF_OUTPUT_FREQUENCY as float instead of uint64_t
This makes 'output_frequency' symmetrical with 'output_current' and 'output_voltage'. On a more fundamental level, there's no reason why frequency should be treated as a discrete quantity, other than "es51919 used it this way".
This commit is contained in:
parent
e8686e3ae3
commit
b94dd07b08
|
@ -157,7 +157,7 @@ static struct sr_config_info sr_config_info_data[] = {
|
|||
"Output channel regulation", NULL},
|
||||
{SR_CONF_OVER_TEMPERATURE_PROTECTION, SR_T_BOOL, "otp",
|
||||
"Over-temperature protection", NULL},
|
||||
{SR_CONF_OUTPUT_FREQUENCY, SR_T_UINT64, "output_frequency",
|
||||
{SR_CONF_OUTPUT_FREQUENCY, SR_T_FLOAT, "output_frequency",
|
||||
"Output frequency", NULL},
|
||||
{SR_CONF_MEASURED_QUANTITY, SR_T_STRING, "measured_quantity",
|
||||
"Measured quantity", NULL},
|
||||
|
|
|
@ -402,7 +402,7 @@ static int send_config_update_key(struct sr_dev_inst *sdi, uint32_t key,
|
|||
|
||||
#define PACKET_SIZE 17
|
||||
|
||||
static const uint64_t frequencies[] = {
|
||||
static const double frequencies[] = {
|
||||
100, 120, 1000, 10000, 100000, 0,
|
||||
};
|
||||
|
||||
|
@ -636,7 +636,7 @@ static int do_config_update(struct sr_dev_inst *sdi, uint32_t key,
|
|||
static int send_freq_update(struct sr_dev_inst *sdi, unsigned int freq)
|
||||
{
|
||||
return do_config_update(sdi, SR_CONF_OUTPUT_FREQUENCY,
|
||||
g_variant_new_uint64(frequencies[freq]));
|
||||
g_variant_new_double(frequencies[freq]));
|
||||
}
|
||||
|
||||
static int send_quant1_update(struct sr_dev_inst *sdi, unsigned int quant)
|
||||
|
@ -877,7 +877,7 @@ SR_PRIV int es51919_serial_config_get(uint32_t key, GVariant **data,
|
|||
|
||||
switch (key) {
|
||||
case SR_CONF_OUTPUT_FREQUENCY:
|
||||
*data = g_variant_new_uint64(frequencies[devc->freq]);
|
||||
*data = g_variant_new_double(frequencies[devc->freq]);
|
||||
break;
|
||||
case SR_CONF_MEASURED_QUANTITY:
|
||||
*data = g_variant_new_string(quantities1[devc->quant1]);
|
||||
|
@ -960,8 +960,8 @@ SR_PRIV int es51919_serial_config_list(uint32_t key, GVariant **data,
|
|||
|
||||
switch (key) {
|
||||
case SR_CONF_OUTPUT_FREQUENCY:
|
||||
*data = g_variant_new_fixed_array(G_VARIANT_TYPE_UINT64,
|
||||
frequencies, ARRAY_SIZE(frequencies), sizeof(uint64_t));
|
||||
*data = g_variant_new_fixed_array(G_VARIANT_TYPE_DOUBLE,
|
||||
frequencies, ARRAY_SIZE(frequencies), sizeof(double));
|
||||
break;
|
||||
case SR_CONF_MEASURED_QUANTITY:
|
||||
*data = g_variant_new_strv(list_quantities1,
|
||||
|
|
Loading…
Reference in New Issue