+ break;
+ case PROTOCOL_V4:
+ if (ch->type == SR_CHANNEL_ANALOG) {
+ if (rigol_ds_config_set(sdi, ":WAV:SOUR CHAN%d",
+ ch->index + 1) != SR_OK)
+ return SR_ERR;
+ } else {
+ if (rigol_ds_config_set(sdi, ":WAV:SOUR D%d",
+ ch->index) != SR_OK)
+ return SR_ERR;
+ }
+
+ if (rigol_ds_config_set(sdi,
+ devc->data_source == DATA_SOURCE_LIVE ?
+ ":WAV:MODE NORM" :":WAV:MODE RAW") != SR_OK)
+ return SR_ERR;
+ break;
+ }
+
+ if (devc->model->series->protocol >= PROTOCOL_V3 &&
+ ch->type == SR_CHANNEL_ANALOG) {
+ /* Vertical reference. */
+ if (sr_scpi_get_int(sdi->conn, ":WAV:YREF?",
+ &devc->vert_reference[ch->index]) != SR_OK)
+ return SR_ERR;