On 2/14/23 12:50, Dmitry Osipenko wrote:
On 2/13/23 14:50, Jani Nikula wrote:On Mon, 13 Feb 2023, Dmitry Osipenko <dmitry.osipenko@xxxxxxxxxxxxx> wrote:On 2/13/23 12:56, Jani Nikula wrote:On Sun, 12 Feb 2023, Dmitry Osipenko <dmitry.osipenko@xxxxxxxxxxxxx> wrote:Hi, On 1/18/22 20:00, Yaroslav Bolyukin wrote: Add a brief commit message, describing a user-visible effect of this patch. Tell that this change prevents exposing headset as a regular display to the system, while it will work with SteamVR.Signed-off-by: Yaroslav Bolyukin <iam@xxxxxxx> --- drivers/gpu/drm/drm_edid.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index 12893e7be..fdb8f0a6f 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -200,9 +200,10 @@ static const struct edid_quirk { EDID_QUIRK('V', 'L', 'V', 0x91be, EDID_QUIRK_NON_DESKTOP), EDID_QUIRK('V', 'L', 'V', 0x91bf, EDID_QUIRK_NON_DESKTOP),- /* HTC Vive and Vive Pro VR Headsets */+ /* HTC Vive, Vive Pro and Vive Pro 2 VR Headsets */Nit: I'd keep the original comment, or change it to a generic "HTC VR Headsets" to prevent further comment changesEDID_QUIRK('H', 'V', 'R', 0xaa01, EDID_QUIRK_NON_DESKTOP), EDID_QUIRK('H', 'V', 'R', 0xaa02, EDID_QUIRK_NON_DESKTOP), + EDID_QUIRK('H', 'V', 'R', 0xaa04, EDID_QUIRK_NON_DESKTOP),/* Oculus Rift DK1, DK2, CV1 and Rift S VR Headsets */EDID_QUIRK('O', 'V', 'R', 0x0001, EDID_QUIRK_NON_DESKTOP), base-commit: 99613159ad749543621da8238acf1a122880144ePlease send the v2 patch with the added EDID for Cosmos VR and the addressed comments. Thanks!Yeah, we'll need to EDID to check that it doesn't have the Microsoft VSDB to indicate non-desktop. See 2869f599c0d8 ("drm/edid: support Microsoft extension for HMDs and specialized monitors").Do you mean to skip using the EDID_QUIRK_NON_DESKTOP if MS VSDB entry presents in the EDID? These HTC EDIDs don't have MS VSDB, otherwise the quirk wouldn't be needed.Okay, I didn't know that. I just observed that the original patch was sent before the the MS VSDB parsing was added.This will be good to mention in the v2 commit message.
This headset does support some kind of HMD signalling, however, this is not a microsoft-specific extension (0xca125c) but part of the DisplayId spec, "Display Product Primary Use Case" field is set to "7".
The problem is, I have no idea what spec I should refer to, as I can't find this errata in the original spec, and the only reference to this value I see is in https://git.linuxtv.org/edid-decode.git utility:
https://git.linuxtv.org/edid-decode.git/tree/parse-displayid-block.cpp?ref=aa956e0dd5fb85271dde900ea1ebdda795af7f8b#n1676 I would like to implement this feature, but I need some spec reference.