Displaying 20 results from an estimated 27 matches for "nouveau_vga_init".
Did you mean:
nouveau_vga_fini
2024 Aug 12
2
[PATCH v2 3/9] drm/nouveau: Do not set struct drm_driver.lastclose
...e *dev)
-{
- vga_switcheroo_process_delayed_switch();
-}
diff --git a/drivers/gpu/drm/nouveau/nouveau_vga.h b/drivers/gpu/drm/nouveau/nouveau_vga.h
index 951a83f984dd..63be415d2a44 100644
--- a/drivers/gpu/drm/nouveau/nouveau_vga.h
+++ b/drivers/gpu/drm/nouveau/nouveau_vga.h
@@ -4,6 +4,5 @@
void nouveau_vga_init(struct nouveau_drm *);
void nouveau_vga_fini(struct nouveau_drm *);
-void nouveau_vga_lastclose(struct drm_device *dev);
#endif
--
2.46.0
2017 Feb 24
1
[PATCH 3/5] drm/nouveau: Don't register Thunderbolt eGPU with vga_switcheroo
...9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/nouveau/nouveau_vga.c b/drivers/gpu/drm/nouveau/nouveau_vga.c
> index eef22c6b9665..c2a7fd606c2e 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_vga.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_vga.c
> @@ -95,6 +95,10 @@ nouveau_vga_init(struct nouveau_drm *drm)
>
> vga_client_register(dev->pdev, dev, NULL, nouveau_vga_set_decode);
>
> + /* don't register Thunderbolt eGPU with vga_switcheroo */
> + if (pci_is_thunderbolt_attached(dev->pdev))
> + return;
I guess there...
2014 Mar 19
2
[PATCH] drm: compute runpm on load, don't register autosuspend for non-runpm
...;
- }
-
/* if we have a hdmi audio device - make sure it has a driver loaded */
if (drm->hdmi_device) {
if (!drm->hdmi_device->driver) {
diff --git a/drm/nouveau_vga.c b/drm/nouveau_vga.c
index fb84da3..b00b05a 100644
--- a/drm/nouveau_vga.c
+++ b/drm/nouveau_vga.c
@@ -91,9 +91,7 @@ nouveau_vga_init(struct nouveau_drm *drm)
vga_client_register(dev->pdev, dev, NULL, nouveau_vga_set_decode);
- if (nouveau_runtime_pm == 1)
- runtime = true;
- if ((nouveau_runtime_pm == -1) && (nouveau_is_optimus() || nouveau_is_v1_dsm()))
+ if (nouveau_runtime_pm)
runtime = true;
vga_switch...
2014 Feb 10
0
[PATCH] drm/nouveau: support for platform devices
...to drm_pci_device_is_agp()
rather than requiring callers to check explicitly?
> @@ -384,8 +407,10 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags)
> if (nv_device(drm->device)->chipset == 0xc1)
> nv_mask(device, 0x00088080, 0x00000800, 0x00000000);
>
> - nouveau_vga_init(drm);
> - nouveau_agp_init(drm);
> + if (pdev) {
> + nouveau_vga_init(drm);
> + nouveau_agp_init(drm);
> + }
Same here. And if you make the above change, then nouveau_agp_init()
will do the right thing already.
> if (device->card_type >= NV_50) {
> ret = nouveau_...
2020 Nov 24
1
[PATCH 09/15] drm/nouveau: Remove references to struct drm_device.pdev
...struct nouveau_fbdev), GFP_KERNEL);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_vga.c b/drivers/gpu/drm/nouveau/nouveau_vga.c
> index c85dd8afa3c3..7c4b374b3eca 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_vga.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_vga.c
> @@ -87,18 +87,20 @@ nouveau_vga_init(struct nouveau_drm *drm)
> {
> struct drm_device *dev = drm->dev;
> bool runtime = nouveau_pmops_runtime();
> + struct pci_dev *pdev;
>
> /* only relevant for PCI devices */
> - if (!dev->pdev)
> + if (!dev_is_pci(dev->dev))
> return;
> + pdev = to...
2017 Feb 24
0
[PATCH 3/5] drm/nouveau: Don't register Thunderbolt eGPU with vga_switcheroo
...0 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_vga.c b/drivers/gpu/drm/nouveau/nouveau_vga.c
index eef22c6b9665..c2a7fd606c2e 100644
--- a/drivers/gpu/drm/nouveau/nouveau_vga.c
+++ b/drivers/gpu/drm/nouveau/nouveau_vga.c
@@ -95,6 +95,10 @@ nouveau_vga_init(struct nouveau_drm *drm)
vga_client_register(dev->pdev, dev, NULL, nouveau_vga_set_decode);
+ /* don't register Thunderbolt eGPU with vga_switcheroo */
+ if (pci_is_thunderbolt_attached(dev->pdev))
+ return;
+
if (nouveau_runtime_pm == 1)
runtime = true;
if ((nouveau_runtime...
2014 Mar 19
0
[PATCH] drm: compute runpm on load, don't register autosuspend for non-runpm
...e it has a driver loaded */
> if (drm->hdmi_device) {
> if (!drm->hdmi_device->driver) {
> diff --git a/drm/nouveau_vga.c b/drm/nouveau_vga.c
> index fb84da3..b00b05a 100644
> --- a/drm/nouveau_vga.c
> +++ b/drm/nouveau_vga.c
> @@ -91,9 +91,7 @@ nouveau_vga_init(struct nouveau_drm *drm)
>
> vga_client_register(dev->pdev, dev, NULL, nouveau_vga_set_decode);
>
> - if (nouveau_runtime_pm == 1)
> - runtime = true;
> - if ((nouveau_runtime_pm == -1) && (nouveau_is_optimus() || nouveau_is_v1_dsm()))...
2014 Feb 10
2
[PATCH] drm/nouveau: support for platform devices
.../* dummy device object, doesn't init anything, but allows
* agp code access to registers
*/
@@ -384,8 +407,10 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags)
if (nv_device(drm->device)->chipset == 0xc1)
nv_mask(device, 0x00088080, 0x00000800, 0x00000000);
- nouveau_vga_init(drm);
- nouveau_agp_init(drm);
+ if (pdev) {
+ nouveau_vga_init(drm);
+ nouveau_agp_init(drm);
+ }
if (device->card_type >= NV_50) {
ret = nouveau_vm_new(nv_device(drm->device), 0, (1ULL << 40),
@@ -398,9 +423,11 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flag...
2014 Feb 01
0
[RFC 02/16] drm/nouveau: basic support for platform devices
.../* dummy device object, doesn't init anything, but allows
* agp code access to registers
*/
@@ -384,8 +402,10 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags)
if (nv_device(drm->device)->chipset == 0xc1)
nv_mask(device, 0x00088080, 0x00000800, 0x00000000);
- nouveau_vga_init(drm);
- nouveau_agp_init(drm);
+ if (pdev) {
+ nouveau_vga_init(drm);
+ nouveau_agp_init(drm);
+ }
if (device->card_type >= NV_50) {
ret = nouveau_vm_new(nv_device(drm->device), 0, (1ULL << 40),
@@ -398,9 +418,11 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flag...
2015 May 28
12
[PATCH v2 1/9] acpi: Rename v1 DSM to mux to avoid ambiguity
...truct drm_device *dev = pci_get_drvdata(pdev);
- if ((nouveau_is_optimus() || nouveau_is_v1_dsm()) && state == VGA_SWITCHEROO_OFF)
+ if ((nouveau_is_optimus() || nouveau_has_mux()) && state == VGA_SWITCHEROO_OFF)
return;
if (state == VGA_SWITCHEROO_ON) {
@@ -96,11 +96,11 @@ nouveau_vga_init(struct nouveau_drm *drm)
if (nouveau_runtime_pm == 1)
runtime = true;
- if ((nouveau_runtime_pm == -1) && (nouveau_is_optimus() || nouveau_is_v1_dsm()))
+ if ((nouveau_runtime_pm == -1) && (nouveau_is_optimus() || nouveau_has_mux()))
runtime = true;
vga_switcheroo_regist...
2015 May 25
15
[PATCH 1/8] acpi: Rename v1 DSM to mux to avoid ambiguity
...truct drm_device *dev = pci_get_drvdata(pdev);
- if ((nouveau_is_optimus() || nouveau_is_v1_dsm()) && state == VGA_SWITCHEROO_OFF)
+ if ((nouveau_is_optimus() || nouveau_has_mux()) && state == VGA_SWITCHEROO_OFF)
return;
if (state == VGA_SWITCHEROO_ON) {
@@ -96,11 +96,11 @@ nouveau_vga_init(struct nouveau_drm *drm)
if (nouveau_runtime_pm == 1)
runtime = true;
- if ((nouveau_runtime_pm == -1) && (nouveau_is_optimus() || nouveau_is_v1_dsm()))
+ if ((nouveau_runtime_pm == -1) && (nouveau_is_optimus() || nouveau_has_mux()))
runtime = true;
vga_switcheroo_regist...
2017 Feb 24
6
[PATCH 0/5] Thunderbolt GPU fixes
Fix Thunderbolt-related issues in apple-gmux and vga_switcheroo:
Patch [1/5] ("Recognize Thunderbolt devices") has already been subjected
to a fair amount of scrutiny over at linux-pci@, I've submitted it 5 times
total since May 2016. With luck it may be in ack-able shape now.
Patch [2/5] amends apple-gmux to handle combined DP/Thunderbolt ports
properly on newer MacBook Pros.
2023 Jun 08
6
[PATCH v3 0/4] PCI/VGA: introduce is_boot_device function callback to vga_client_register
From: Sui Jingfeng <suijingfeng at loongson.cn>
Patch 1,2 and 3 do basic clean up to the vgaarb module.
Patch 4 introduce is_boot_device function callback to vga_client_register
Sui Jingfeng (4):
PCI/VGA: tidy up the code and comment format
PCI/VGA: Use unsigned type for the io_state variable
PCI/VGA: only deal with VGA class devices
PCI/VGA: introduce is_boot_device function
2013 Aug 27
0
[PATCH 5/9] drm/nouveau: Add install/remove semantics for event handlers
...t == 0xc1)
nv_mask(device, 0x00088080, 0x00000800, 0x00000000);
+ disp = nouveau_disp(device);
+ for (i = 0; i < ARRAY_SIZE(drm->vblank); i++) {
+ nouveau_event_handler_install(disp->vblank, i,
+ nouveau_drm_vblank_handler,
+ NULL, &drm->vblank[i]);
+ }
+
nouveau_vga_init(drm);
nouveau_agp_init(drm);
@@ -404,6 +411,8 @@ static int
nouveau_drm_unload(struct drm_device *dev)
{
struct nouveau_drm *drm = nouveau_drm(dev);
+ struct nouveau_disp *disp = nouveau_disp(drm->device);
+ int i;
nouveau_fbcon_fini(dev);
nouveau_accel_fini(drm);
@@ -420,6 +429,10...
2015 May 28
3
[PATCH v2 8/9] acpi: Add support for Apple Gmux _DMS
...mply echo'ing ON or OFF to vga_switcheroo/switch? Then I probably forgot some stuff as it doesn't want to work on my laptop.
Pierre
> + if (nouveau_has_dsm() && state == VGA_SWITCHEROO_OFF)
> return;
>
> if (state == VGA_SWITCHEROO_ON) {
> @@ -96,11 +96,11 @@ nouveau_vga_init(struct nouveau_drm *drm)
>
> if (nouveau_runtime_pm == 1)
> runtime = true;
> - if ((nouveau_runtime_pm == -1) && (nouveau_is_optimus() ||
> nouveau_has_mux()))
> + if ((nouveau_runtime_pm == -1) && nouveau_has_dsm())
> runtime = true;
> vga_switc...
2014 Feb 11
2
[PATCH] drm/nouveau: support for platform devices
...on many other functions of drmP.h.
>
>> @@ -384,8 +407,10 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags)
>> if (nv_device(drm->device)->chipset == 0xc1)
>> nv_mask(device, 0x00088080, 0x00000800, 0x00000000);
>>
>> - nouveau_vga_init(drm);
>> - nouveau_agp_init(drm);
>> + if (pdev) {
>> + nouveau_vga_init(drm);
>> + nouveau_agp_init(drm);
>> + }
>
> Same here. And if you make the above change, then nouveau_agp_init()
> will do the right thing already.
I...
2023 Sep 04
15
[RFC, drm-misc-next v4 0/9] PCI/VGA: Allowing the user to select the primary video adapter at boot time
From: Sui Jingfeng <suijingfeng at loongson.cn>
On a machine with multiple GPUs, a Linux user has no control over which
one is primary at boot time. This series tries to solve above mentioned
problem by introduced the ->be_primary() function stub. The specific
device drivers can provide an implementation to hook up with this stub by
calling the vga_client_register() function.
Once the
2023 Jun 04
3
[PATCH v2 1/2] vgaarb: various coding style and comments fix
From: Sui Jingfeng <suijingfeng at loongson.cn>
To keep consistent with vga_iostate_to_str() function, the third argument
of vga_str_to_iostate() function should be 'unsigned int *'.
Signed-off-by: Sui Jingfeng <suijingfeng at loongson.cn>
---
drivers/pci/vgaarb.c | 29 +++++++++++++++--------------
include/linux/vgaarb.h | 8 +++-----
2 files changed, 18 insertions(+),
2023 Nov 14
7
[PATCH v3 0/7] Improvements to pcie_bandwidth_available() for eGPUs
The wrong values are reported from pcie_bandwidth_available() which
can cause problems for performance of eGPUs.
This series overhauls Thunderbolt related device detection and uses
the changes to change the behavior of pcie_bandwidth_available().
v2->v3:
* Stop lumping all thunderbolt VSEC and USB4 devices together, introduce
is_virtual_link instead
* Drop unnecessary patches
Mario
2024 Aug 12
9
[PATCH v2 0/9] drm/{amdgpu,nouveau}: Remove old fbdev hooks
After switching all drivers' fbdev emulation to DRM client, the
old fbdev hooks are now obsolete. Only amgdpu and nouveau still use
them in a several places. Remove the hooks from the drivers and the
DRM core.
The series would ideally be merged at once via drm-misc-next.
v2:
- call vga_switcheroo_process_delayed_switch() from
drm_lastclose() (Sima)
- documentation updates
Thomas