search for: vga_switcheroo_unlock_ddc

Displaying 12 results from an estimated 12 matches for "vga_switcheroo_unlock_ddc".

2018 Aug 30
2
[PATCH v2] drm/nouveau: Fix nouveau_connector_ddc_detect()
...if ((vga_switcheroo_handler_flags() & - VGA_SWITCHEROO_CAN_SWITCH_DDC) && - nv_encoder->dcb->type == DCB_OUTPUT_LVDS && - nv_encoder->i2c) { - int ret; - vga_switcheroo_lock_ddc(dev->pdev); - ret = nvkm_probe_i2c(nv_encoder->i2c, 0x50); - vga_switcheroo_unlock_ddc(dev->pdev); - if (ret) + else if (ret == NOUVEAU_DP_SST) + found = nv_encoder; + + break; + case DCB_OUTPUT_LVDS: + switcheroo_ddc = !!(vga_switcheroo_handler_flags() & + VGA_SWITCHEROO_CAN_SWITCH_DDC); + /* fall-through */ + default: + if (!nv_encoder->i2c) b...
2018 Aug 23
0
[PATCH] drm/nouveau: Fix nouveau_connector_ddc_detect()
...+ /* Can we actually probe this LVDS display? */ + if (!((vga_switcheroo_handler_flags() & + VGA_SWITCHEROO_CAN_SWITCH_DDC) && + nv_encoder->i2c)) + continue; + vga_switcheroo_lock_ddc(dev->pdev); - ret = nvkm_probe_i2c(nv_encoder->i2c, 0x50); - vga_switcheroo_unlock_ddc(dev->pdev); - if (ret) - break; - } else - if (nv_encoder->i2c) { if (nvkm_probe_i2c(nv_encoder->i2c, 0x50)) - break; + found = nv_encoder; + vga_switcheroo_unlock_ddc(dev->pdev); + + break; + default: + if (nv_encoder->i2c && + nvkm_probe_i2c(nv...
2018 Aug 30
0
[PATCH v2] drm/nouveau: Fix nouveau_connector_ddc_detect()
...() & > - VGA_SWITCHEROO_CAN_SWITCH_DDC) && > - nv_encoder->dcb->type == DCB_OUTPUT_LVDS && > - nv_encoder->i2c) { > - int ret; > - vga_switcheroo_lock_ddc(dev->pdev); > - ret = nvkm_probe_i2c(nv_encoder->i2c, 0x50); > - vga_switcheroo_unlock_ddc(dev->pdev); > - if (ret) > + else if (ret == NOUVEAU_DP_SST) > + found = nv_encoder; > + > + break; > + case DCB_OUTPUT_LVDS: > + switcheroo_ddc = !!(vga_switcheroo_handler_flags() & > + VGA_SWITCHEROO_CAN_SWITCH_DDC); > + /* fall-through */ &g...
2016 May 21
3
[PATCH v5] vga_switcheroo: Add helper for deferred probing
...roo_get_client_state() - obtain power state of a given client * @pdev: client pci device * diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h index b39a5f3..960bedb 100644 --- a/include/linux/vga_switcheroo.h +++ b/include/linux/vga_switcheroo.h @@ -165,6 +165,7 @@ int vga_switcheroo_unlock_ddc(struct pci_dev *pdev); int vga_switcheroo_process_delayed_switch(void); +bool vga_switcheroo_client_probe_defer(struct pci_dev *pdev); enum vga_switcheroo_state vga_switcheroo_get_client_state(struct pci_dev *dev); void vga_switcheroo_set_dynamic_switch(struct pci_dev *pdev, enum vga_switc...
2016 May 23
0
[Intel-gfx] [PATCH v5] vga_switcheroo: Add helper for deferred probing
...er state of a given client > * @pdev: client pci device > * > diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h > index b39a5f3..960bedb 100644 > --- a/include/linux/vga_switcheroo.h > +++ b/include/linux/vga_switcheroo.h > @@ -165,6 +165,7 @@ int vga_switcheroo_unlock_ddc(struct pci_dev *pdev); > > int vga_switcheroo_process_delayed_switch(void); > > +bool vga_switcheroo_client_probe_defer(struct pci_dev *pdev); > enum vga_switcheroo_state vga_switcheroo_get_client_state(struct pci_dev *dev); > > void vga_switcheroo_set_dynamic_switch(s...
2018 Jun 30
2
[PATCH v2 5/9] drm/nouveau: Use drm_connector_for_each_possible_encoder()
..._encoder->i2c) { 39c1c9011 Lukas Wunner 2016-01-11 445 int ret; 39c1c9011 Lukas Wunner 2016-01-11 446 vga_switcheroo_lock_ddc(dev->pdev); 39c1c9011 Lukas Wunner 2016-01-11 447 ret = nvkm_probe_i2c(nv_encoder->i2c, 0x50); 39c1c9011 Lukas Wunner 2016-01-11 448 vga_switcheroo_unlock_ddc(dev->pdev); 39c1c9011 Lukas Wunner 2016-01-11 449 if (ret) 39c1c9011 Lukas Wunner 2016-01-11 450 break; 39c1c9011 Lukas Wunner 2016-01-11 451 } else 8777c5c11 Ben Skeggs 2014-06-06 452 if (nv_encoder->i2c) { 2aa5eac51 Ben Skeggs 2015-08-20 453 if (nv...
2016 May 19
2
[PATCH v4] vga_switcheroo: Add helper for deferred probing
...roo_get_client_state() - obtain power state of a given client * @pdev: client pci device * diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h index b39a5f3..960bedb 100644 --- a/include/linux/vga_switcheroo.h +++ b/include/linux/vga_switcheroo.h @@ -165,6 +165,7 @@ int vga_switcheroo_unlock_ddc(struct pci_dev *pdev); int vga_switcheroo_process_delayed_switch(void); +bool vga_switcheroo_client_probe_defer(struct pci_dev *pdev); enum vga_switcheroo_state vga_switcheroo_get_client_state(struct pci_dev *dev); void vga_switcheroo_set_dynamic_switch(struct pci_dev *pdev, enum vga_switc...
2016 May 31
2
[PATCH v6 1/2] vga_switcheroo: Add helper for deferred probing
...roo_get_client_state() - obtain power state of a given client * @pdev: client pci device * diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h index b39a5f3..960bedb 100644 --- a/include/linux/vga_switcheroo.h +++ b/include/linux/vga_switcheroo.h @@ -165,6 +165,7 @@ int vga_switcheroo_unlock_ddc(struct pci_dev *pdev); int vga_switcheroo_process_delayed_switch(void); +bool vga_switcheroo_client_probe_defer(struct pci_dev *pdev); enum vga_switcheroo_state vga_switcheroo_get_client_state(struct pci_dev *dev); void vga_switcheroo_set_dynamic_switch(struct pci_dev *pdev, enum vga_switc...
2016 Jan 11
0
[PATCH v5 07/12] drm/nouveau: Switch DDC when reading the EDID
...if ((vga_switcheroo_handler_flags() & + VGA_SWITCHEROO_CAN_SWITCH_DDC) && + nv_encoder->dcb->type == DCB_OUTPUT_LVDS && + nv_encoder->i2c) { + int ret; + vga_switcheroo_lock_ddc(dev->pdev); + ret = nvkm_probe_i2c(nv_encoder->i2c, 0x50); + vga_switcheroo_unlock_ddc(dev->pdev); + if (ret) + break; + } else if (nv_encoder->i2c) { if (nvkm_probe_i2c(nv_encoder->i2c, 0x50)) break; @@ -265,7 +277,14 @@ nouveau_connector_detect(struct drm_connector *connector, bool force) nv_encoder = nouveau_connector_ddc_detect(connector); if (nv_...
2018 Jul 02
0
[PATCH v2 5/9] drm/nouveau: Use drm_connector_for_each_possible_encoder()
...> 39c1c9011 Lukas Wunner 2016-01-11 445 int ret; > 39c1c9011 Lukas Wunner 2016-01-11 446 vga_switcheroo_lock_ddc(dev->pdev); > 39c1c9011 Lukas Wunner 2016-01-11 447 ret = nvkm_probe_i2c(nv_encoder->i2c, 0x50); > 39c1c9011 Lukas Wunner 2016-01-11 448 vga_switcheroo_unlock_ddc(dev->pdev); > 39c1c9011 Lukas Wunner 2016-01-11 449 if (ret) > 39c1c9011 Lukas Wunner 2016-01-11 450 break; > 39c1c9011 Lukas Wunner 2016-01-11 451 } else > 8777c5c11 Ben Skeggs 2014-06-06 452 if (nv_encoder->i2c) { > 2aa5eac51 Ben Skeggs 2...
2018 Jun 28
4
[PATCH v2 0/9] drm: Third attempt at fixing the fb-helper .best_encoder() mess
From: Ville Syrjälä <ville.syrjala at linux.intel.com> Changes from the previous version mainly involve Danoie's suggestion of hiding the drm_encoder_find() in the iterator macro. I also polished the msm and tilcdc cases a bit more with another small helper. Cc: Alex Deucher <alexander.deucher at amd.com> Cc: amd-gfx at lists.freedesktop.org Cc: Ben Skeggs <bskeggs at
2016 Jan 11
8
[PATCH v5 00/12] Enable GPU switching on pre-retina MacBook Pro
Enable GPU switching on the pre-retina MacBook Pro (2008 - 2013), v5. The main obstacle on these machines is that the panel mode in VBIOS is bogus. Fortunately gmux can switch DDC independently from the display, thereby allowing the inactive GPU to probe the panel's EDID. In short, vga_switcheroo and apple-gmux are amended with hooks to switch DDC, DRM core is amended with a