mirror of
https://gitlab.freedesktop.org/monado/monado.git
synced 2025-02-15 10:10:07 +00:00
d/wmr: Add HP VR1000 support
This commit is contained in:
parent
3d366b9243
commit
196bf24276
src/xrt/drivers/wmr
|
@ -35,6 +35,7 @@ extern "C" {
|
||||||
#define WMR_CONTROLLER_RIGHT_PRODUCT_STRING "Motion controller - Right"
|
#define WMR_CONTROLLER_RIGHT_PRODUCT_STRING "Motion controller - Right"
|
||||||
|
|
||||||
#define HP_VID 0x03f0
|
#define HP_VID 0x03f0
|
||||||
|
#define VR1000_PID 0x0367
|
||||||
#define REVERB_G1_PID 0x0c6a
|
#define REVERB_G1_PID 0x0c6a
|
||||||
#define REVERB_G2_PID 0x0580
|
#define REVERB_G2_PID 0x0580
|
||||||
#define REVERB_G2_CONTROLLER_PID 0x066a /* On 0x045e Microsoft VID */
|
#define REVERB_G2_CONTROLLER_PID 0x066a /* On 0x045e Microsoft VID */
|
||||||
|
|
|
@ -90,6 +90,7 @@ wmr_hmd_screen_enable_odyssey_plus(struct wmr_hmd *wh, bool enable);
|
||||||
|
|
||||||
const struct wmr_headset_descriptor headset_map[] = {
|
const struct wmr_headset_descriptor headset_map[] = {
|
||||||
{WMR_HEADSET_GENERIC, NULL, "Unknown WMR HMD", NULL, NULL, NULL}, /* Catch-all for unknown headsets */
|
{WMR_HEADSET_GENERIC, NULL, "Unknown WMR HMD", NULL, NULL, NULL}, /* Catch-all for unknown headsets */
|
||||||
|
{WMR_HEADSET_HP_VR1000, "HP Reverb VR Headset VR1000-1xxx", "HP VR1000", NULL, NULL, NULL}, /*! @todo init funcs */
|
||||||
{WMR_HEADSET_REVERB_G1, "HP Reverb VR Headset VR1000-2xxx", "HP Reverb", wmr_hmd_activate_reverb,
|
{WMR_HEADSET_REVERB_G1, "HP Reverb VR Headset VR1000-2xxx", "HP Reverb", wmr_hmd_activate_reverb,
|
||||||
wmr_hmd_deactivate_reverb, wmr_hmd_screen_enable_reverb},
|
wmr_hmd_deactivate_reverb, wmr_hmd_screen_enable_reverb},
|
||||||
{WMR_HEADSET_REVERB_G2, "HP Reverb Virtual Reality Headset G2", "HP Reverb G2", wmr_hmd_activate_reverb,
|
{WMR_HEADSET_REVERB_G2, "HP Reverb Virtual Reality Headset G2", "HP Reverb G2", wmr_hmd_activate_reverb,
|
||||||
|
|
|
@ -34,6 +34,7 @@ extern "C" {
|
||||||
enum wmr_headset_type
|
enum wmr_headset_type
|
||||||
{
|
{
|
||||||
WMR_HEADSET_GENERIC,
|
WMR_HEADSET_GENERIC,
|
||||||
|
WMR_HEADSET_HP_VR1000,
|
||||||
WMR_HEADSET_REVERB_G1,
|
WMR_HEADSET_REVERB_G1,
|
||||||
WMR_HEADSET_REVERB_G2,
|
WMR_HEADSET_REVERB_G2,
|
||||||
WMR_HEADSET_SAMSUNG_XE700X3AI,
|
WMR_HEADSET_SAMSUNG_XE700X3AI,
|
||||||
|
|
|
@ -56,14 +56,20 @@ check_and_get_interface(struct xrt_prober_device *device,
|
||||||
{
|
{
|
||||||
switch (device->vendor_id) {
|
switch (device->vendor_id) {
|
||||||
case HP_VID:
|
case HP_VID:
|
||||||
if (device->product_id != REVERB_G1_PID && device->product_id != REVERB_G2_PID) {
|
if (device->product_id != REVERB_G1_PID && device->product_id != REVERB_G2_PID &&
|
||||||
|
device->product_id != VR1000_PID) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (device->product_id == REVERB_G1_PID)
|
if (device->product_id == REVERB_G1_PID)
|
||||||
*out_hmd_type = WMR_HEADSET_REVERB_G1;
|
*out_hmd_type = WMR_HEADSET_REVERB_G1;
|
||||||
else
|
else if (device->product_id == REVERB_G2_CONTROLLER_PID)
|
||||||
*out_hmd_type = WMR_HEADSET_REVERB_G2;
|
*out_hmd_type = WMR_HEADSET_REVERB_G2;
|
||||||
|
else if (device->product_id == VR1000_PID)
|
||||||
|
*out_hmd_type = WMR_HEADSET_HP_VR1000;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
|
||||||
*out_interface = 0;
|
*out_interface = 0;
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in a new issue