2023-06-09 01:59:23

by Ralph Campbell

[permalink] [raw]
Subject: [PATCH] drm/edid: Add quirk for OSVR HDK 2.0

The OSVR virtual reality headset HDK 2.0 uses a different EDID
vendor and device identifier than the HDK 1.1 - 1.4 headsets.
Add the HDK 2.0 vendor and device identifier to the quirks table so
that window managers do not try to display the desktop screen on the
headset display.

Signed-off-by: Ralph Campbell <[email protected]>
Tested-by: Ralph Campbell <[email protected]>
---
drivers/gpu/drm/drm_edid.c | 1 +
1 file changed, 1 insertion(+)

I don't know how many of these VR headsets are still around but I have a
working one and I saw and entry for HDK 1.x so I thought it would be good
to add HDK 2.0.

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 0454da505687..3b8cc1fe05e8 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -230,6 +230,7 @@ static const struct edid_quirk {

/* OSVR HDK and HDK2 VR Headsets */
EDID_QUIRK('S', 'V', 'R', 0x1019, EDID_QUIRK_NON_DESKTOP),
+ EDID_QUIRK('A', 'O', 'U', 0x1111, EDID_QUIRK_NON_DESKTOP),
};

/*
--
2.40.1



2023-06-09 09:16:04

by Jani Nikula

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add quirk for OSVR HDK 2.0

On Thu, 08 Jun 2023, Ralph Campbell <[email protected]> wrote:
> The OSVR virtual reality headset HDK 2.0 uses a different EDID
> vendor and device identifier than the HDK 1.1 - 1.4 headsets.
> Add the HDK 2.0 vendor and device identifier to the quirks table so
> that window managers do not try to display the desktop screen on the
> headset display.

At some point in time we requested bugs to be filed about quirks, with
EDIDs attached, so we could look at them later, and maybe remove the
quirks.

The headset non-desktop thing started off as a quirk, but since then
we've added both Microsoft VSDB and DisplayID primary use as ways to
indicate this without quirks.

BR,
Jani.

>
> Signed-off-by: Ralph Campbell <[email protected]>
> Tested-by: Ralph Campbell <[email protected]>
> ---
> drivers/gpu/drm/drm_edid.c | 1 +
> 1 file changed, 1 insertion(+)
>
> I don't know how many of these VR headsets are still around but I have a
> working one and I saw and entry for HDK 1.x so I thought it would be good
> to add HDK 2.0.
>
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
> index 0454da505687..3b8cc1fe05e8 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -230,6 +230,7 @@ static const struct edid_quirk {
>
> /* OSVR HDK and HDK2 VR Headsets */
> EDID_QUIRK('S', 'V', 'R', 0x1019, EDID_QUIRK_NON_DESKTOP),
> + EDID_QUIRK('A', 'O', 'U', 0x1111, EDID_QUIRK_NON_DESKTOP),
> };
>
> /*

--
Jani Nikula, Intel Open Source Graphics Center

2023-06-09 17:44:32

by Ralph Campbell

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add quirk for OSVR HDK 2.0


On 6/9/23 02:03, Jani Nikula wrote:
> On Thu, 08 Jun 2023, Ralph Campbell <[email protected]> wrote:
>> The OSVR virtual reality headset HDK 2.0 uses a different EDID
>> vendor and device identifier than the HDK 1.1 - 1.4 headsets.
>> Add the HDK 2.0 vendor and device identifier to the quirks table so
>> that window managers do not try to display the desktop screen on the
>> headset display.
> At some point in time we requested bugs to be filed about quirks, with
> EDIDs attached, so we could look at them later, and maybe remove the
> quirks.
>
> The headset non-desktop thing started off as a quirk, but since then
> we've added both Microsoft VSDB and DisplayID primary use as ways to
> indicate this without quirks.
>
> BR,
> Jani.

If you want me to file a bug, I can do that and I have the EDID too.
Where would I file it?

I did see the DisplayID 2.0 code. This headset is no longer being
manufactured so updating the EDID is not practical.

>> Signed-off-by: Ralph Campbell <[email protected]>
>> Tested-by: Ralph Campbell <[email protected]>
>> ---
>> drivers/gpu/drm/drm_edid.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> I don't know how many of these VR headsets are still around but I have a
>> working one and I saw and entry for HDK 1.x so I thought it would be good
>> to add HDK 2.0.
>>
>> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
>> index 0454da505687..3b8cc1fe05e8 100644
>> --- a/drivers/gpu/drm/drm_edid.c
>> +++ b/drivers/gpu/drm/drm_edid.c
>> @@ -230,6 +230,7 @@ static const struct edid_quirk {
>>
>> /* OSVR HDK and HDK2 VR Headsets */
>> EDID_QUIRK('S', 'V', 'R', 0x1019, EDID_QUIRK_NON_DESKTOP),
>> + EDID_QUIRK('A', 'O', 'U', 0x1111, EDID_QUIRK_NON_DESKTOP),
>> };
>>
>> /*

2023-06-10 07:27:50

by Jani Nikula

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add quirk for OSVR HDK 2.0

On Fri, 09 Jun 2023, Ralph Campbell <[email protected]> wrote:
> On 6/9/23 02:03, Jani Nikula wrote:
>> On Thu, 08 Jun 2023, Ralph Campbell <[email protected]> wrote:
>>> The OSVR virtual reality headset HDK 2.0 uses a different EDID
>>> vendor and device identifier than the HDK 1.1 - 1.4 headsets.
>>> Add the HDK 2.0 vendor and device identifier to the quirks table so
>>> that window managers do not try to display the desktop screen on the
>>> headset display.
>> At some point in time we requested bugs to be filed about quirks, with
>> EDIDs attached, so we could look at them later, and maybe remove the
>> quirks.
>>
>> The headset non-desktop thing started off as a quirk, but since then
>> we've added both Microsoft VSDB and DisplayID primary use as ways to
>> indicate this without quirks.
>>
>> BR,
>> Jani.
>
> If you want me to file a bug, I can do that and I have the EDID too.
> Where would I file it?

I suppose at https://gitlab.freedesktop.org/drm/misc/-/issues

We should then reference the issue in the commit message (no need to
resend, this can be added while applying).

> I did see the DisplayID 2.0 code. This headset is no longer being
> manufactured so updating the EDID is not practical.

I'm not saying the EDID should be updated, just that we might drop the
quirk if we find another generic way to identify non-desktops that
covers the EDID in question.

If the device isn't covered by the existing mechanisms, I'm not opposed
to merging as-is, with the issue reference added.


Thanks,
Jani.


>
>>> Signed-off-by: Ralph Campbell <[email protected]>
>>> Tested-by: Ralph Campbell <[email protected]>
>>> ---
>>> drivers/gpu/drm/drm_edid.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> I don't know how many of these VR headsets are still around but I have a
>>> working one and I saw and entry for HDK 1.x so I thought it would be good
>>> to add HDK 2.0.
>>>
>>> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
>>> index 0454da505687..3b8cc1fe05e8 100644
>>> --- a/drivers/gpu/drm/drm_edid.c
>>> +++ b/drivers/gpu/drm/drm_edid.c
>>> @@ -230,6 +230,7 @@ static const struct edid_quirk {
>>>
>>> /* OSVR HDK and HDK2 VR Headsets */
>>> EDID_QUIRK('S', 'V', 'R', 0x1019, EDID_QUIRK_NON_DESKTOP),
>>> + EDID_QUIRK('A', 'O', 'U', 0x1111, EDID_QUIRK_NON_DESKTOP),
>>> };
>>>
>>> /*

--
Jani Nikula, Intel Open Source Graphics Center

2023-06-11 07:53:01

by Ralph Campbell

[permalink] [raw]
Subject: Re: [PATCH] drm/edid: Add quirk for OSVR HDK 2.0


On 6/10/23 00:22, Jani Nikula wrote:
> On Fri, 09 Jun 2023, Ralph Campbell <[email protected]> wrote:
>> On 6/9/23 02:03, Jani Nikula wrote:
>>> On Thu, 08 Jun 2023, Ralph Campbell <[email protected]> wrote:
>>>> The OSVR virtual reality headset HDK 2.0 uses a different EDID
>>>> vendor and device identifier than the HDK 1.1 - 1.4 headsets.
>>>> Add the HDK 2.0 vendor and device identifier to the quirks table so
>>>> that window managers do not try to display the desktop screen on the
>>>> headset display.
>>> At some point in time we requested bugs to be filed about quirks, with
>>> EDIDs attached, so we could look at them later, and maybe remove the
>>> quirks.
>>>
>>> The headset non-desktop thing started off as a quirk, but since then
>>> we've added both Microsoft VSDB and DisplayID primary use as ways to
>>> indicate this without quirks.
>>>
>>> BR,
>>> Jani.
>> If you want me to file a bug, I can do that and I have the EDID too.
>> Where would I file it?
> I suppose at https://gitlab.freedesktop.org/drm/misc/-/issues
>
> We should then reference the issue in the commit message (no need to
> resend, this can be added while applying).
>
>> I did see the DisplayID 2.0 code. This headset is no longer being
>> manufactured so updating the EDID is not practical.
> I'm not saying the EDID should be updated, just that we might drop the
> quirk if we find another generic way to identify non-desktops that
> covers the EDID in question.
>
> If the device isn't covered by the existing mechanisms, I'm not opposed
> to merging as-is, with the issue reference added.
>
>
> Thanks,
> Jani.

Thanks, I created issue #30
"OSVR virtual reality headset HDK 2.0 not recognized as a non-desktop display"

>
>>>> Signed-off-by: Ralph Campbell <[email protected]>
>>>> Tested-by: Ralph Campbell <[email protected]>
>>>> ---
>>>> drivers/gpu/drm/drm_edid.c | 1 +
>>>> 1 file changed, 1 insertion(+)
>>>>
>>>> I don't know how many of these VR headsets are still around but I have a
>>>> working one and I saw and entry for HDK 1.x so I thought it would be good
>>>> to add HDK 2.0.
>>>>
>>>> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
>>>> index 0454da505687..3b8cc1fe05e8 100644
>>>> --- a/drivers/gpu/drm/drm_edid.c
>>>> +++ b/drivers/gpu/drm/drm_edid.c
>>>> @@ -230,6 +230,7 @@ static const struct edid_quirk {
>>>>
>>>> /* OSVR HDK and HDK2 VR Headsets */
>>>> EDID_QUIRK('S', 'V', 'R', 0x1019, EDID_QUIRK_NON_DESKTOP),
>>>> + EDID_QUIRK('A', 'O', 'U', 0x1111, EDID_QUIRK_NON_DESKTOP),
>>>> };
>>>>
>>>> /*