- if (o->sdi->driver || sr_dev_has_hwcap(o->sdi, SR_HWCAP_SAMPLERATE)) {
- ret = o->sdi->driver->info_get(SR_DI_CUR_SAMPLERATE,
- (const void **)&samplerate, o->sdi);
- if (ret != SR_OK)
- goto err;
- if (!(samplerate_s = sr_samplerate_string(*samplerate))) {
+ if (sr_config_get(o->sdi->driver, o->sdi, NULL, SR_CONF_SAMPLERATE,
+ &gvar) == SR_OK) {
+ samplerate = g_variant_get_uint64(gvar);
+ g_variant_unref(gvar);
+ if (!(samplerate_s = sr_samplerate_string(samplerate))) {