Lines Matching +full:dual +full:- +full:link

42 	ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_MST_VCPI, &args, sizeof(args));  in nvif_outp_dp_mst_vcpi()
43 NVIF_ERRON(ret, &outp->object, in nvif_outp_dp_mst_vcpi()
57 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_MST_ID_PUT, &args, sizeof(args)); in nvif_outp_dp_mst_id_put()
58 NVIF_ERRON(ret, &outp->object, "[DP_MST_ID_PUT id:%08x]", args.id); in nvif_outp_dp_mst_id_put()
69 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_MST_ID_GET, &args, sizeof(args)); in nvif_outp_dp_mst_id_get()
70 NVIF_ERRON(ret, &outp->object, "[DP_MST_ID_GET] id:%08x", args.id); in nvif_outp_dp_mst_id_get()
89 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_SST, &args, sizeof(args)); in nvif_outp_dp_sst()
90 NVIF_ERRON(ret, &outp->object, in nvif_outp_dp_sst()
107 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_DRIVE, &args, sizeof(args)); in nvif_outp_dp_drive()
108 NVIF_ERRON(ret, &outp->object, "[DP_DRIVE lanes:%d]", args.lanes); in nvif_outp_dp_drive()
128 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_TRAIN, &args, sizeof(args)); in nvif_outp_dp_train()
129 NVIF_ERRON(ret, &outp->object, in nvif_outp_dp_train()
143 return -EINVAL; in nvif_outp_dp_rates()
148 args.rate[i].dpcd = rate->dpcd; in nvif_outp_dp_rates()
149 args.rate[i].rate = rate->rate; in nvif_outp_dp_rates()
152 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_RATES, &args, sizeof(args)); in nvif_outp_dp_rates()
153 NVIF_ERRON(ret, &outp->object, "[DP_RATES rates:%d]", args.rates); in nvif_outp_dp_rates()
169 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_AUX_XFER, &args, sizeof(args)); in nvif_outp_dp_aux_xfer()
170 NVIF_DEBUG(&outp->object, "[DP_AUX_XFER type:%d size:%d addr:%05x] %d size:%d (ret: %d)", in nvif_outp_dp_aux_xfer()
190 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_DP_AUX_PWR, &args, sizeof(args)); in nvif_outp_dp_aux_pwr()
191 NVIF_ERRON(ret, &outp->object, "[DP_AUX_PWR state:%d]", args.state); in nvif_outp_dp_aux_pwr()
205 return -EINVAL; in nvif_outp_hda_eld()
211 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_HDA_ELD, &args, sizeof(args.mthd) + size); in nvif_outp_hda_eld()
212 NVIF_ERRON(ret, &outp->object, "[HDA_ELD head:%d size:%d]", head, size); in nvif_outp_hda_eld()
221 args->type = type; in nvif_outp_infoframe()
223 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_INFOFRAME, args, sizeof(*args) + size); in nvif_outp_infoframe()
224 NVIF_ERRON(ret, &outp->object, "[INFOFRAME type:%d size:%d]", type, size); in nvif_outp_infoframe()
245 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_HDMI, &args, sizeof(args)); in nvif_outp_hdmi()
246 NVIF_ERRON(ret, &outp->object, in nvif_outp_hdmi()
255 nvif_outp_lvds(struct nvif_outp *outp, bool dual, bool bpc8) in nvif_outp_lvds() argument
261 args.dual = dual; in nvif_outp_lvds()
264 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_LVDS, &args, sizeof(args)); in nvif_outp_lvds()
265 NVIF_ERRON(ret, &outp->object, "[LVDS dual:%d 8bpc:%d]", args.dual, args.bpc8); in nvif_outp_lvds()
278 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_BL_SET, &args, sizeof(args)); in nvif_outp_bl_set()
279 NVIF_ERRON(ret, &outp->object, "[BL_SET level:%d]", args.level); in nvif_outp_bl_set()
291 ret = nvif_object_mthd(&outp->object, NVIF_OUTP_V0_BL_GET, &args, sizeof(args)); in nvif_outp_bl_get()
292 NVIF_ERRON(ret, &outp->object, "[BL_GET level:%d]", args.level); in nvif_outp_bl_get()
299 int ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_RELEASE, NULL, 0); in nvif_outp_release()
300 NVIF_ERRON(ret, &outp->object, "[RELEASE]"); in nvif_outp_release()
301 outp->or.id = -1; in nvif_outp_release()
309 args->version = 0; in nvif_outp_acquire()
310 args->type = type; in nvif_outp_acquire()
312 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_ACQUIRE, args, sizeof(*args)); in nvif_outp_acquire()
316 outp->or.id = args->or; in nvif_outp_acquire()
317 outp->or.link = args->link; in nvif_outp_acquire()
328 NVIF_ERRON(ret, &outp->object, "[ACQUIRE PIOR] or:%d", args.or); in nvif_outp_acquire_pior()
341 NVIF_ERRON(ret, &outp->object, "[ACQUIRE SOR] or:%d link:%d", args.or, args.link); in nvif_outp_acquire_sor()
352 NVIF_ERRON(ret, &outp->object, "[ACQUIRE DAC] or:%d", args.or); in nvif_outp_acquire_dac()
364 args->version = 0; in nvif_outp_inherit()
365 args->proto = proto; in nvif_outp_inherit()
367 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_INHERIT, args, sizeof(*args)); in nvif_outp_inherit()
371 outp->or.id = args->or; in nvif_outp_inherit()
372 outp->or.link = args->link; in nvif_outp_inherit()
373 *proto_out = args->proto; in nvif_outp_inherit()
384 NVIF_ERRON(ret && ret != -ENODEV, &outp->object, "[INHERIT proto:LVDS] ret:%d", ret); in nvif_outp_inherit_lvds()
395 NVIF_ERRON(ret && ret != -ENODEV, &outp->object, "[INHERIT proto:TMDS] ret:%d", ret); in nvif_outp_inherit_tmds()
406 NVIF_ERRON(ret && ret != -ENODEV, &outp->object, "[INHERIT proto:DP] ret:%d", ret); in nvif_outp_inherit_dp()
408 // TODO: Get current link info in nvif_outp_inherit_dp()
420 NVIF_ERRON(ret && ret != -ENODEV, &outp->object, "[INHERIT proto:RGB_CRT] ret:%d", ret); in nvif_outp_inherit_rgb_crt()
433 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_LOAD_DETECT, &args, sizeof(args)); in nvif_outp_load_detect()
434 NVIF_ERRON(ret, &outp->object, "[LOAD_DETECT data:%08x] load:%02x", args.data, args.load); in nvif_outp_load_detect()
446 return -ENOMEM; in nvif_outp_edid_get()
448 args->version = 0; in nvif_outp_edid_get()
450 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_EDID_GET, args, sizeof(*args)); in nvif_outp_edid_get()
451 NVIF_ERRON(ret, &outp->object, "[EDID_GET] size:%d", args->size); in nvif_outp_edid_get()
455 *pedid = kmemdup(args->data, args->size, GFP_KERNEL); in nvif_outp_edid_get()
457 ret = -ENOMEM; in nvif_outp_edid_get()
461 ret = args->size; in nvif_outp_edid_get()
475 ret = nvif_mthd(&outp->object, NVIF_OUTP_V0_DETECT, &args, sizeof(args)); in nvif_outp_detect()
476 NVIF_ERRON(ret, &outp->object, "[DETECT] status:%02x", args.status); in nvif_outp_detect()
495 nvif_object_dtor(&outp->object); in nvif_outp_dtor()
507 ret = nvif_object_ctor(&disp->object, name ?: "nvifOutp", id, NVIF_CLASS_OUTP, in nvif_outp_ctor()
508 &args, sizeof(args), &outp->object); in nvif_outp_ctor()
509 NVIF_ERRON(ret, &disp->object, "[NEW outp id:%d]", id); in nvif_outp_ctor()
513 outp->id = args.id; in nvif_outp_ctor()
516 case NVIF_OUTP_V0_TYPE_DAC : outp->info.type = NVIF_OUTP_DAC; break; in nvif_outp_ctor()
517 case NVIF_OUTP_V0_TYPE_SOR : outp->info.type = NVIF_OUTP_SOR; break; in nvif_outp_ctor()
518 case NVIF_OUTP_V0_TYPE_PIOR: outp->info.type = NVIF_OUTP_PIOR; break; in nvif_outp_ctor()
523 return -EINVAL; in nvif_outp_ctor()
528 outp->info.proto = NVIF_OUTP_RGB_CRT; in nvif_outp_ctor()
529 outp->info.rgb_crt.freq_max = args.rgb_crt.freq_max; in nvif_outp_ctor()
532 outp->info.proto = NVIF_OUTP_TMDS; in nvif_outp_ctor()
533 outp->info.tmds.dual = args.tmds.dual; in nvif_outp_ctor()
536 outp->info.proto = NVIF_OUTP_LVDS; in nvif_outp_ctor()
537 outp->info.lvds.acpi_edid = args.lvds.acpi_edid; in nvif_outp_ctor()
540 outp->info.proto = NVIF_OUTP_DP; in nvif_outp_ctor()
541 outp->info.dp.aux = args.dp.aux; in nvif_outp_ctor()
542 outp->info.dp.mst = args.dp.mst; in nvif_outp_ctor()
543 outp->info.dp.increased_wm = args.dp.increased_wm; in nvif_outp_ctor()
544 outp->info.dp.link_nr = args.dp.link_nr; in nvif_outp_ctor()
545 outp->info.dp.link_bw = args.dp.link_bw; in nvif_outp_ctor()
550 return -EINVAL; in nvif_outp_ctor()
553 outp->info.heads = args.heads; in nvif_outp_ctor()
554 outp->info.ddc = args.ddc; in nvif_outp_ctor()
555 outp->info.conn = args.conn; in nvif_outp_ctor()
557 outp->or.id = -1; in nvif_outp_ctor()