| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/bus/ |
| D | simple-pm-bus.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/bus/simple-pm-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Simple Power-Managed Bus 10 - Geert Uytterhoeven <geert+renesas@glider.be> 13 A Simple Power-Managed Bus is a transparent bus that doesn't need a real 16 However, its bus controller is part of a PM domain, or under the control 17 of a functional clock. Hence, the bus controller's PM domain and/or 18 clock must be enabled for child devices connected to the bus (either [all …]
|
| D | renesas,bsc.yaml | 2 --- 3 $id: http://devicetree.org/schemas/bus/renesas,bsc.yaml# 4 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 title: Renesas Bus State Controller (BSC) 9 - Geert Uytterhoeven <geert+renesas@glider.be> 12 The Renesas Bus State Controller (BSC, sometimes called "LBSC within Bus 13 Bridge", or "External Bus Interface") can be found in several Renesas ARM 14 SoCs. It provides an external bus for connecting multiple external 18 While the BSC is a fairly simple memory-mapped bus, it may be part of a 19 PM domain, and may have a gateable functional clock. Before a device [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/bus/ |
| D | simple-pm-bus.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/bus/simple-pm-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Simple Power-Managed Bus 10 - Geert Uytterhoeven <geert+renesas@glider.be> 13 A Simple Power-Managed Bus is a transparent bus that doesn't need a real 16 However, its bus controller is part of a PM domain, or under the control 17 of a functional clock. Hence, the bus controller's PM domain and/or 18 clock must be enabled for child devices connected to the bus (either [all …]
|
| D | renesas,bsc.yaml | 2 --- 3 $id: http://devicetree.org/schemas/bus/renesas,bsc.yaml# 4 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 title: Renesas Bus State Controller (BSC) 9 - Geert Uytterhoeven <geert+renesas@glider.be> 12 The Renesas Bus State Controller (BSC, sometimes called "LBSC within Bus 13 Bridge", or "External Bus Interface") can be found in several Renesas ARM 14 SoCs. It provides an external bus for connecting multiple external 18 While the BSC is a fairly simple memory-mapped bus, it may be part of a 19 PM domain, and may have a gateable functional clock. Before a device [all …]
|
| D | fsl,imx8qxp-pixel-link-msi-bus.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/bus/fsl,imx8qxp-pixel-link-msi-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale i.MX8qxp Pixel Link Medium Speed Interconnect (MSI) Bus 10 - Liu Ying <victor.liu@nxp.com> 13 i.MX8qxp pixel link MSI bus is used to control settings of PHYs, I/Os 14 sitting together with the PHYs. It is not the same as the MSI bus coming 18 i.MX8qxp pixel link MSI bus is a simple memory-mapped bus. Two input clocks, 20 connected to the bus can be accessed. Also, the bus is part of a power [all …]
|
| /kernel/linux/linux-5.10/drivers/base/power/ |
| D | main.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * drivers/base/power/main.c - Where the driver meets power management. 10 * and add it to the list of power-controlled devices. sysfs entries for 18 #define pr_fmt(fmt) "PM: " fmt 24 #include <linux/pm.h> 26 #include <linux/pm-trace.h> 90 return "(unknown PM event)"; in pm_verb() 95 * device_pm_sleep_init - Initialize system suspend-related device fields. 100 dev->power.is_prepared = false; in device_pm_sleep_init() 101 dev->power.is_suspended = false; in device_pm_sleep_init() [all …]
|
| D | clock_ops.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * drivers/base/power/clock_ops.c - Generic clock manipulation PM callbacks 11 #include <linux/pm.h> 38 * pm_clk_enable - Enable a clock, reporting any errors 40 * @ce: PM clock entry corresponding to the clock. 46 if (ce->status < PCE_STATUS_ERROR) { in __pm_clk_enable() 47 ret = clk_enable(ce->clk); in __pm_clk_enable() 49 ce->status = PCE_STATUS_ENABLED; in __pm_clk_enable() 52 __func__, ce->clk, ret); in __pm_clk_enable() 57 * pm_clk_acquire - Acquire a device clock. [all …]
|
| /kernel/linux/linux-6.6/drivers/base/power/ |
| D | main.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * drivers/base/power/main.c - Where the driver meets power management. 10 * and add it to the list of power-controlled devices. sysfs entries for 18 #define pr_fmt(fmt) "PM: " fmt 24 #include <linux/pm.h> 26 #include <linux/pm-trace.h> 89 return "(unknown PM event)"; in pm_verb() 94 * device_pm_sleep_init - Initialize system suspend-related device fields. 99 dev->power.is_prepared = false; in device_pm_sleep_init() 100 dev->power.is_suspended = false; in device_pm_sleep_init() [all …]
|
| /kernel/linux/linux-6.6/arch/mips/pci/ |
| D | pci-alchemy.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright 2001-2003, 2007-2008 MontaVista Software Inc. 20 #include <linux/dma-map-ops.h> /* for dma_default_coherent */ 22 #include <asm/mach-au1x00/au1000.h> 43 unsigned long pm[12]; member 94 ctx->wired_entry = read_c0_wired(); in alchemy_pci_wired_entry() 95 add_wired_entry(0, 0, (unsigned long)ctx->pci_cfg_vm->addr, PM_4K); in alchemy_pci_wired_entry() 96 ctx->last_elo0 = ctx->last_elo1 = ~0; in alchemy_pci_wired_entry() 99 static int config_access(unsigned char access_type, struct pci_bus *bus, in config_access() argument 102 struct alchemy_pci_context *ctx = bus->sysdata; in config_access() [all …]
|
| /kernel/linux/linux-5.10/arch/mips/pci/ |
| D | pci-alchemy.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright 2001-2003, 2007-2008 MontaVista Software Inc. 21 #include <asm/dma-coherence.h> 22 #include <asm/mach-au1x00/au1000.h> 43 unsigned long pm[12]; member 94 ctx->wired_entry = read_c0_wired(); in alchemy_pci_wired_entry() 95 add_wired_entry(0, 0, (unsigned long)ctx->pci_cfg_vm->addr, PM_4K); in alchemy_pci_wired_entry() 96 ctx->last_elo0 = ctx->last_elo1 = ~0; in alchemy_pci_wired_entry() 99 static int config_access(unsigned char access_type, struct pci_bus *bus, in config_access() argument 102 struct alchemy_pci_context *ctx = bus->sysdata; in config_access() [all …]
|
| /kernel/linux/linux-6.6/Documentation/driver-api/pm/ |
| D | devices.rst | 1 .. SPDX-License-Identifier: GPL-2.0 10 :Copyright: |copy| 2010-2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. 18 management (PM) code is also driver-specific. Most drivers will do very 22 This writeup gives an overview of how drivers interact with system-wide 25 background for the domain-specific work you'd do with any specific driver. 31 Drivers will use one or both of these models to put devices into low-power 36 Drivers can enter low-power states as part of entering system-wide 37 low-power states like "suspend" (also known as "suspend-to-RAM"), or 39 "suspend-to-disk"). 41 This is something that device, bus, and class drivers collaborate on [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/pm/ |
| D | devices.rst | 1 .. SPDX-License-Identifier: GPL-2.0 10 :Copyright: |copy| 2010-2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. 18 management (PM) code is also driver-specific. Most drivers will do very 22 This writeup gives an overview of how drivers interact with system-wide 25 background for the domain-specific work you'd do with any specific driver. 31 Drivers will use one or both of these models to put devices into low-power 36 Drivers can enter low-power states as part of entering system-wide 37 low-power states like "suspend" (also known as "suspend-to-RAM"), or 39 "suspend-to-disk"). 41 This is something that device, bus, and class drivers collaborate on [all …]
|
| /kernel/linux/linux-6.6/drivers/bus/ |
| D | simple-pm-bus.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Simple Power-Managed Bus Driver 5 * Copyright (C) 2014-2015 Glider bvba 27 const struct device *dev = &pdev->dev; in simple_pm_bus_probe() 29 struct device_node *np = dev->of_node; in simple_pm_bus_probe() 31 struct simple_pm_bus *bus; in simple_pm_bus_probe() local 35 * transparent bus device which has a different compatible string in simple_pm_bus_probe() 37 * of the simple-pm-bus tasks for these devices, so return early. in simple_pm_bus_probe() 39 if (pdev->driver_override) in simple_pm_bus_probe() 42 match = of_match_device(dev->driver->of_match_table, dev); in simple_pm_bus_probe() [all …]
|
| /kernel/linux/linux-5.10/drivers/bus/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 # Bus Devices 6 menu "Bus devices" 24 bool "ARM Integrator Logic Module bus" 29 Say y here to enable support for the ARM Logic Module bus 33 bool "Broadcom STB GISB bus arbiter" 37 Driver for the Broadcom Set Top Box System-on-a-chip internal bus 39 and internal bus master decoding. 42 bool "Baikal-T1 APB-bus driver" 46 Baikal-T1 AXI-APB bridge is used to access the SoC subsystem CSRs. [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/engine/device/ |
| D | base.c | 41 if (device->handle == handle) in nvkm_device_find_locked() 65 name[nr - 1] = device->handle; in nvkm_device_list() 81 .bus = nv04_bus_new, 102 .bus = nv04_bus_new, 123 .bus = nv04_bus_new, 143 .bus = nv04_bus_new, 165 .bus = nv04_bus_new, 187 .bus = nv04_bus_new, 209 .bus = nv04_bus_new, 231 .bus = nv04_bus_new, [all …]
|
| /kernel/linux/linux-5.10/Documentation/power/ |
| D | pci.rst | 13 power management refer to Documentation/driver-api/pm/devices.rst and 27 1.1. Native and Platform-Based Power Management 28 ----------------------------------------------- 31 devices into states in which they draw less power (low-power states) at the 34 Usually, a device is put into a low-power state when it is underutilized or 36 again, it has to be put back into the "fully functional" state (full-power 41 PCI devices may be put into low-power states in two ways, by using the device 42 capabilities introduced by the PCI Bus Power Management Interface Specification, 44 approach, that is referred to as the native PCI power management (native PCI PM) 50 Devices supporting the native PCI PM usually can generate wakeup signals called [all …]
|
| D | runtime_pm.rst | 5 (C) 2009-2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. 14 Support for runtime power management (runtime PM) of I/O devices is provided 15 at the power management core (PM core) level by means of: 17 * The power management workqueue pm_wq in which bus types and device drivers can 18 put their PM-related work items. It is strongly recommended that pm_wq be 19 used for queuing all work items related to runtime PM, because this allows 20 them to be synchronized with system-wide power transitions (suspend to RAM, 24 * A number of runtime PM fields in the 'power' member of 'struct device' (which 25 is of the type 'struct dev_pm_info', defined in include/linux/pm.h) that can 26 be used for synchronizing runtime PM operations with one another. [all …]
|
| /kernel/linux/linux-6.6/Documentation/power/ |
| D | pci.rst | 13 power management refer to Documentation/driver-api/pm/devices.rst and 27 1.1. Native and Platform-Based Power Management 28 ----------------------------------------------- 31 devices into states in which they draw less power (low-power states) at the 34 Usually, a device is put into a low-power state when it is underutilized or 36 again, it has to be put back into the "fully functional" state (full-power 41 PCI devices may be put into low-power states in two ways, by using the device 42 capabilities introduced by the PCI Bus Power Management Interface Specification, 44 approach, that is referred to as the native PCI power management (native PCI PM) 50 Devices supporting the native PCI PM usually can generate wakeup signals called [all …]
|
| D | runtime_pm.rst | 5 (C) 2009-2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. 14 Support for runtime power management (runtime PM) of I/O devices is provided 15 at the power management core (PM core) level by means of: 17 * The power management workqueue pm_wq in which bus types and device drivers can 18 put their PM-related work items. It is strongly recommended that pm_wq be 19 used for queuing all work items related to runtime PM, because this allows 20 them to be synchronized with system-wide power transitions (suspend to RAM, 24 * A number of runtime PM fields in the 'power' member of 'struct device' (which 25 is of the type 'struct dev_pm_info', defined in include/linux/pm.h) that can 26 be used for synchronizing runtime PM operations with one another. [all …]
|
| /kernel/linux/linux-6.6/include/linux/device/ |
| D | bus.h | 1 // SPDX-License-Identifier: GPL-2.0 3 * bus.h - the bus-specific portions of the driver model 5 * Copyright (c) 2001-2003 Patrick Mochel <mochel@osdl.org> 6 * Copyright (c) 2004-2009 Greg Kroah-Hartman <gregkh@suse.de> 7 * Copyright (c) 2008-2009 Novell Inc. 8 * Copyright (c) 2012-2019 Greg Kroah-Hartman <gregkh@linuxfoundation.org> 9 * Copyright (c) 2012-2019 Linux Foundation 11 * See Documentation/driver-api/driver-model/ for more information. 19 #include <linux/pm.h> 25 * struct bus_type - The bus type of the device [all …]
|
| /kernel/linux/linux-5.10/include/linux/device/ |
| D | bus.h | 1 // SPDX-License-Identifier: GPL-2.0 3 * bus.h - the bus-specific portions of the driver model 5 * Copyright (c) 2001-2003 Patrick Mochel <mochel@osdl.org> 6 * Copyright (c) 2004-2009 Greg Kroah-Hartman <gregkh@suse.de> 7 * Copyright (c) 2008-2009 Novell Inc. 8 * Copyright (c) 2012-2019 Greg Kroah-Hartman <gregkh@linuxfoundation.org> 9 * Copyright (c) 2012-2019 Linux Foundation 11 * See Documentation/driver-api/driver-model/ for more information. 19 #include <linux/pm.h> 25 * struct bus_type - The bus type of the device [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | pm.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * pm.h - Power management interface 55 * struct dev_pm_ops - device PM callbacks. 62 * registration of a child already in progress), it may return -EAGAIN, so 63 * that the PM core can execute it once again (e.g. after a new child has 69 * used to indicate to the PM core to leave the device in runtime suspend 70 * if applicable. Namely, if @prepare() returns a positive number, the PM 72 * runtime-suspended and it may be left in that state during the entire 77 * The PM core executes subsystem-level @prepare() for all devices before 93 * of the other devices that the PM core has unsuccessfully attempted to [all …]
|
| /kernel/linux/linux-5.10/drivers/memory/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 13 access to attached peripherals through memory bus. 30 If you have an embedded system with an AMBA bus and a PL172 34 bool "Atmel (Multi-port DDR-)SDRAM Controller" 39 This driver is for Atmel SDRAM Controller or Atmel Multi-port 40 DDR-SDRAM Controller available on Atmel AT91SAM9 and SAMA5 SoCs. 42 LP-DDR memories. 53 Used to configure the EBI (external bus interface) when the device- 54 tree is used. This bus supports NANDs, external ethernet controller, 70 bool "Baikal-T1 CM2 L2-RAM Cache Control Block" [all …]
|
| /kernel/linux/linux-6.6/drivers/memory/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 13 access to attached peripherals through memory bus. 30 If you have an embedded system with an AMBA bus and a PL172 42 Used to configure the EBI (external bus interface) when the device- 43 tree is used. This bus supports NANDs, external ethernet controller, 68 bool "Baikal-T1 CM2 L2-RAM Cache Control Block" 72 Baikal-T1 CPU is based on the MIPS P5600 Warrior IP-core. The CPU 73 resides Coherency Manager v2 with embedded 1MB L2-cache. It's 75 tags and way-select latencies of RAM access. This driver provides a 76 dt properties-based and sysfs interface for it. [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | pm.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * pm.h - Power management interface 63 * struct dev_pm_ops - device PM callbacks. 70 * registration of a child already in progress), it may return -EAGAIN, so 71 * that the PM core can execute it once again (e.g. after a new child has 77 * used to indicate to the PM core to leave the device in runtime suspend 78 * if applicable. Namely, if @prepare() returns a positive number, the PM 80 * runtime-suspended and it may be left in that state during the entire 85 * The PM core executes subsystem-level @prepare() for all devices before 101 * of the other devices that the PM core has unsuccessfully attempted to [all …]
|