search for: pci_platform_power_transit

Displaying 11 results from an estimated 11 matches for "pci_platform_power_transit".

2018 Feb 18
0
[PATCH 2/7] PCI: Make pci_wakeup_bus() & pci_bus_set_current_state() public
There are PCI devices which are power-manageable by a nonstandard means, such as a custom ACPI method. One example are discrete GPUs in hybrid graphics laptops, another are Thunderbolt controllers in Macs. Such devices can't be put into D3cold with pci_set_power_state() because pci_platform_power_transition() fails with -ENODEV. Instead they're put into D3hot by pci_set_power_state() and subsequently into D3cold by invoking the nonstandard means. However as a consequence the cached current_state is incorrectly left at D3hot. What we need to do is walk the hierarchy below such a PCI device on...
2011 Feb 28
12
[RFC PATCH] set current_state to D0 in register_slot
...ody is going to set current_state = PCI_D0 for this device. This is what I think it is happening: pci_enable_device | __pci_enable_device_flags /* here we do not set current_state because !pm_cap */ | do_pci_enable_device | pci_set_power_state | __pci_start_power_transition | pci_platform_power_transition /* platform_pci_power_manageable() calls acpi_pci_power_manageable that * returns true */ | platform_pci_set_power_state /* acpi_pci_set_power_state gets called and does nothing because the * acpi device has _EJ0, see the comment "If the ACPI device has _EJ0, * ignore the device&quot...
2019 Oct 16
3
[PATCH v3] pci: prevent putting nvidia GPUs into lower device states on certain intel bridges
...ate(D3cold) > if (PCI_DEV_FLAGS_NO_D3) > return 0 <-- nothing at all if quirked > pci_raw_set_power_state > pci_write_config_word(PCI_PM_CTRL, D3hot) <-- set to D3hot > __pci_complete_power_transition(D3cold) > pci_platform_power_transition(D3cold) > platform_pci_set_power_state(D3cold) > acpi_pci_set_power_state(D3cold) > acpi_device_set_power(ACPI_STATE_D3_COLD) > ... > acpi_evaluate_object("_OFF") <-- set to D3cold > > I did not und...
2011 Dec 02
6
[PATCH] tools/firmware: remove "_PS0/3" Method
tools/firmware: remove "_PS0/3" Method Do not expose the ACPI power management "_PS0/3" Method to guest firmware. According to section 3.4 of the APCI specification 4.0, PCI device control the device power through its own specification but not through APCI. Qemu pushes "_PS0/3" to guest will cause a mess between ACPI PM and PCI PM as a result of incorrect ACPI table
2019 Nov 21
1
[PATCH v4] pci: prevent putting nvidia GPUs into lower device states on certain intel bridges
On Thu, Nov 21, 2019 at 12:03 PM Rafael J. Wysocki <rafael at kernel.org> wrote: > > On Thu, Nov 21, 2019 at 11:14 AM Mika Westerberg > <mika.westerberg at intel.com> wrote: > > > > On Wed, Nov 20, 2019 at 10:36:31PM +0100, Karol Herbst wrote: > > > with the branch and patch applied: > > >
2019 Oct 21
0
[PATCH v3] pci: prevent putting nvidia GPUs into lower device states on certain intel bridges
...> > return 0 <-- nothing at all if quirked > > > pci_raw_set_power_state > > > pci_write_config_word(PCI_PM_CTRL, D3hot) <-- set to D3hot > > > __pci_complete_power_transition(D3cold) > > > pci_platform_power_transition(D3cold) > > > platform_pci_set_power_state(D3cold) > > > acpi_pci_set_power_state(D3cold) > > > acpi_device_set_power(ACPI_STATE_D3_COLD) > > > ... > > > acpi_evaluate_object("_OFF"...
2019 Oct 21
1
[PATCH v3] pci: prevent putting nvidia GPUs into lower device states on certain intel bridges
...PCI_DEV_FLAGS_NO_D3) > > return 0 <-- nothing at all if quirked > > pci_raw_set_power_state > > pci_write_config_word(PCI_PM_CTRL, D3hot) <-- set to D3hot > > __pci_complete_power_transition(D3cold) > > pci_platform_power_transition(D3cold) > > platform_pci_set_power_state(D3cold) > > acpi_pci_set_power_state(D3cold) > > acpi_device_set_power(ACPI_STATE_D3_COLD) > > ... > > acpi_evaluate_object("_OFF") <-- set to D3col...
2019 Oct 16
2
[PATCH v3] pci: prevent putting nvidia GPUs into lower device states on certain intel bridges
but setting the PCI_DEV_FLAGS_NO_D3 flag does prevent using the platform means of putting the device into D3cold, right? That's actually what should still happen, just the D3hot step should be skipped. On Wed, Oct 16, 2019 at 9:14 PM Bjorn Helgaas <helgaas at kernel.org> wrote: > > On Wed, Oct 16, 2019 at 04:44:49PM +0200, Karol Herbst wrote: > > Fixes state transitions of
2019 Oct 16
0
[PATCH v3] pci: prevent putting nvidia GPUs into lower device states on certain intel bridges
...like this: pci_set_power_state(D3cold) if (PCI_DEV_FLAGS_NO_D3) return 0 <-- nothing at all if quirked pci_raw_set_power_state pci_write_config_word(PCI_PM_CTRL, D3hot) <-- set to D3hot __pci_complete_power_transition(D3cold) pci_platform_power_transition(D3cold) platform_pci_set_power_state(D3cold) acpi_pci_set_power_state(D3cold) acpi_device_set_power(ACPI_STATE_D3_COLD) ... acpi_evaluate_object("_OFF") <-- set to D3cold I did not understand the connection with platfo...
2018 Feb 18
12
[PATCH 0/7] Modernize vga_switcheroo by using device link for HDA
Modernize vga_switcheroo by using a "device link" to enforce a runtime PM dependency from an HDA controller to the GPU it's integrated into. Remove thereby obsoleted code and fix a bunch of bugs. Device links were introduced in v4.10. Users might see a small power saving if the discrete GPU is in use and its HDA controller is not, because the HDA controller is now allowed to runtime
2018 Mar 03
12
[PATCH v2 0/7] Modernize vga_switcheroo by using device link for HDA
Modernize vga_switcheroo by using a device link to enforce a runtime PM dependency from an HDA controller to the GPU it's integrated into, v2. Changes since v1: - Replace patch [1/7] to use pci_save_state() / pci_restore_state() for consistency between runtime PM code path of bound and unbound devices. (Rafael, Bjorn) - Patch [5/7]: Drop an unnecessary initialization. (Bjorn) Rephrase