infoframe->set = false;
+ if (!connector->hdmi.funcs->spd.write_infoframe)
+ return 0;
+
ret = hdmi_spd_infoframe_init(frame,
connector->hdmi.vendor,
connector->hdmi.product);
infoframe->set = false;
+ if (!connector->hdmi.funcs->hdr_drm.write_infoframe)
+ return 0;
+
if (connector->max_bpc < 10)
return 0;
if (!funcs->clear_infoframe) {
drm_dbg_kms(dev, "Function not implemented, bailing.\n");
- return 0;
+ return -EOPNOTSUPP;
}
ret = funcs->clear_infoframe(connector);
if (!funcs->write_infoframe) {
drm_dbg_kms(dev, "Function not implemented, bailing.\n");
- return 0; /* XXX: temporal until we stop generating unsupported frames */
+ return -EOPNOTSUPP;
}
len = hdmi_infoframe_pack(&new_frame->data, buffer, sizeof(buffer));