2022-01-20 18:04:27

by Yaroslav Bolyukin

[permalink] [raw]
Subject: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

Signed-off-by: Yaroslav Bolyukin <[email protected]>
---
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 */
EDID_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: 99613159ad749543621da8238acf1a122880144e
--
2.34.1


2023-02-12 14:32:01

by Dmitry Osipenko

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

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 <[email protected]>
> ---
> 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 changes

> EDID_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: 99613159ad749543621da8238acf1a122880144e

Please send the v2 patch with the added EDID for Cosmos VR and the
addressed comments. Thanks!

--
Best regards,
Dmitry


2023-02-13 09:56:57

by Jani Nikula

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

On Sun, 12 Feb 2023, Dmitry Osipenko <[email protected]> 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 <[email protected]>
>> ---
>> 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 changes
>
>> EDID_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: 99613159ad749543621da8238acf1a122880144e
>
> Please 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").


BR,
Jani.


--
Jani Nikula, Intel Open Source Graphics Center

2023-02-13 10:09:25

by Dmitry Osipenko

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

On 2/13/23 12:56, Jani Nikula wrote:
> On Sun, 12 Feb 2023, Dmitry Osipenko <[email protected]> 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 <[email protected]>
>>> ---
>>> 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 changes
>>
>>> EDID_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: 99613159ad749543621da8238acf1a122880144e
>>
>> Please 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.

--
Best regards,
Dmitry


2023-02-13 11:50:43

by Jani Nikula

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

On Mon, 13 Feb 2023, Dmitry Osipenko <[email protected]> wrote:
> On 2/13/23 12:56, Jani Nikula wrote:
>> On Sun, 12 Feb 2023, Dmitry Osipenko <[email protected]> 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 <[email protected]>
>>>> ---
>>>> 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 changes
>>>
>>>> EDID_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: 99613159ad749543621da8238acf1a122880144e
>>>
>>> Please 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.

BR,
Jani.



--
Jani Nikula, Intel Open Source Graphics Center

2023-02-14 11:50:44

by Dmitry Osipenko

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

On 2/13/23 14:50, Jani Nikula wrote:
> On Mon, 13 Feb 2023, Dmitry Osipenko <[email protected]> wrote:
>> On 2/13/23 12:56, Jani Nikula wrote:
>>> On Sun, 12 Feb 2023, Dmitry Osipenko <[email protected]> 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 <[email protected]>
>>>>> ---
>>>>> 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 changes
>>>>
>>>>> EDID_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: 99613159ad749543621da8238acf1a122880144e
>>>>
>>>> Please 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.

--
Best regards,
Dmitry


2023-02-16 18:34:15

by Yaroslav Bolyukin

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

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 <[email protected]> wrote:
>>> On 2/13/23 12:56, Jani Nikula wrote:
>>>> On Sun, 12 Feb 2023, Dmitry Osipenko <[email protected]> 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 <[email protected]>
>>>>>> ---
>>>>>> 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 changes
>>>>>
>>>>>> EDID_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: 99613159ad749543621da8238acf1a122880144e
>>>>>
>>>>> Please 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.

2023-02-16 19:17:54

by Dmitry Osipenko

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

On 2/16/23 21:26, Iaroslav Boliukin wrote:
> 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 <[email protected]>
>>> wrote:
>>>> On 2/13/23 12:56, Jani Nikula wrote:
>>>>> On Sun, 12 Feb 2023, Dmitry Osipenko
>>>>> <[email protected]> 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 <[email protected]>
>>>>>>> ---
>>>>>>>   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 changes
>>>>>>
>>>>>>>       EDID_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: 99613159ad749543621da8238acf1a122880144e
>>>>>>
>>>>>> Please 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.

The [1] says it's "VESA DisplayID Standard v2.0", which should be okay
to refer, IMO.

[1]
https://learn.microsoft.com/en-us/windows-hardware/drivers/display/specialized-monitors-edid-extension

--
Best regards,
Dmitry


2023-02-16 20:46:43

by Jani Nikula

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add Vive Pro 2 to non-desktop list

On Thu, 16 Feb 2023, Dmitry Osipenko <[email protected]> wrote:
> On 2/16/23 21:26, Iaroslav Boliukin wrote:
>> 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 <[email protected]>
>>>> wrote:
>>>>> On 2/13/23 12:56, Jani Nikula wrote:
>>>>>> On Sun, 12 Feb 2023, Dmitry Osipenko
>>>>>> <[email protected]> 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 <[email protected]>
>>>>>>>> ---
>>>>>>>>   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 changes
>>>>>>>
>>>>>>>>       EDID_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: 99613159ad749543621da8238acf1a122880144e
>>>>>>>
>>>>>>> Please 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".

I just sent patches to hopefully fix this, and make the quirk
unnecessary [1].

BR,
Jani.

[1] https://patchwork.freedesktop.org/series/114116/


>>
>> 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.
>
> The [1] says it's "VESA DisplayID Standard v2.0", which should be okay
> to refer, IMO.
>
> [1]
> https://learn.microsoft.com/en-us/windows-hardware/drivers/display/specialized-monitors-edid-extension

--
Jani Nikula, Intel Open Source Graphics Center