| /linux/Documentation/devicetree/bindings/bus/ |
| H A 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 …]
|
| H A 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 …]
|
| /linux/drivers/base/power/ |
| H A 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> 66 * pm_hibernate_is_recovering - if recovering from hibernate due to error. 99 return "(unknown PM event)"; in pm_verb() 104 * device_pm_sleep_init - Initialize system suspend-related device fields. 109 dev->power.is_prepared = false; in device_pm_sleep_init() [all …]
|
| /linux/arch/mips/pci/ |
| H A 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 …]
|
| /linux/drivers/bus/ |
| H A 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 …]
|
| /linux/Documentation/power/ |
| H A 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 …]
|
| /linux/include/linux/ |
| H A D | pm.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * pm.h - Power management interface 64 * struct dev_pm_ops - device PM callbacks. 71 * registration of a child already in progress), it may return -EAGAIN, so 72 * that the PM core can execute it once again (e.g. after a new child has 78 * used to indicate to the PM core to leave the device in runtime suspend 79 * if applicable. Namely, if @prepare() returns a positive number, the PM 81 * runtime-suspended and it may be left in that state during the entire 86 * The PM core executes subsystem-level @prepare() for all devices before 102 * of the other devices that the PM core has unsuccessfully attempted to [all …]
|
| /linux/drivers/pmdomain/bcm/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 2 menu "Broadcom PM Domains" 8 select PM_GENERIC_DOMAINS if PM 20 select PM_GENERIC_DOMAINS if PM 26 bool "Broadcom PMB (Power Management Bus) driver" 29 select PM_GENERIC_DOMAINS if PM 31 This enables support for the Broadcom's PMB (Power Management Bus) that 37 select PM_GENERIC_DOMAINS if PM
|
| /linux/drivers/memory/ |
| H A 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 …]
|
| /linux/include/linux/firmware/imx/svc/ |
| H A D | pm.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 4 * Copyright 2017-2018 NXP 7 * Power Management (PM) function. This includes functions for power state 8 * control, clock control, reset control, and wake-up event control. 12 * Module for the Power Management (PM) service. 21 * This type is used to indicate RPC PM function calls. 52 * Defines for SC PM Power Mode 56 #define IMX_SC_PM_PW_MODE_LP 2 /* Power in low-power */ 60 * Defines for SC PM CLK 62 #define IMX_SC_PM_CLK_SLV_BUS 0 /* Slave bus clock */ [all …]
|
| /linux/Documentation/devicetree/bindings/remoteproc/ |
| H A D | wkup_m3_rproc.txt | 4 The TI AM33xx and AM43xx family of devices use a small Cortex M3 co-processor 13 within the SoC. It is added as a child node of the parent interconnect bus 17 -------------------- 18 - compatible: Should be one of, 19 "ti,am3352-wkup-m3" for AM33xx SoCs 20 "ti,am4372-wkup-m3" for AM43xx SoCs 21 - reg: Should contain the address ranges for the two internal 24 translating these into bus addresses. 25 - reg-names: Contains the corresponding names for the two memory 27 - ti,hwmods: Name of the hwmod associated with the wkupm3 device. [all …]
|
| /linux/drivers/soundwire/ |
| H A D | intel_auxdevice.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 2 // Copyright(c) 2015-22 Intel Corporation. 22 #include "bus.h" 32 * flags reused in each byte, with master0 using the ls-byte, etc. 77 if (slave->id.part_id == wake_capable_list[i].part_id && in is_wake_capable() 78 slave->id.mfg_id == wake_capable_list[i].mfg_id) in is_wake_capable() 83 static int generic_bpt_send_async(struct sdw_bus *bus, struct sdw_slave *slave, in generic_bpt_send_async() argument 86 struct sdw_cdns *cdns = bus_to_cdns(bus); in generic_bpt_send_async() 89 if (sdw->link_res->hw_ops->bpt_send_async) in generic_bpt_send_async() 90 return sdw->link_res->hw_ops->bpt_send_async(sdw, slave, msg); in generic_bpt_send_async() [all …]
|
| /linux/drivers/power/reset/ |
| H A D | piix4-poweroff.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 11 #include <linux/pm.h> 50 * cycle with the correct magic data on the PCI bus. Generate that in piix4_poweroff() 54 pci_bus_write_config_dword(pm_dev->bus, spec_devid, 0, in piix4_poweroff() 68 return -EINVAL; in piix4_poweroff_probe() 70 /* Request access to the PIIX4 PM IO registers */ in piix4_poweroff_probe() 72 "PIIX4 PM IO registers"); in piix4_poweroff_probe() 74 dev_err(&dev->dev, "failed to request PM IO registers: %d\n", in piix4_poweroff_probe() 101 .name = "piix4-poweroff", 109 MODULE_DESCRIPTION("Intel PIIX4 power-off driver");
|
| /linux/drivers/hid/intel-ish-hid/ishtp/ |
| H A D | bus.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ISHTP bus driver 5 * Copyright (c) 2012-2016, Intel Corporation. 14 #include "bus.h" 15 #include "ishtp-dev.h" 28 * ishtp_recv() - process ishtp message 33 * address is zero, then they are host bus management message, 42 msg_hdr = dev->ops->ishtp_read_hdr(dev); in ishtp_recv() 46 dev->ops->sync_fw_clock(dev); in ishtp_recv() 49 dev->ishtp_msg_hdr = msg_hdr; in ishtp_recv() [all …]
|
| /linux/drivers/gpio/ |
| H A D | gpio-pch.c | 1 // SPDX-License-Identifier: GPL-2.0 32 u32 pm; member 47 OKISEMI_ML7223m_IOH, /* LAPIS Semiconductor ML7223 IOH PCIe Bus-m */ 48 OKISEMI_ML7223n_IOH /* LAPIS Semiconductor ML7223 IOH PCIe Bus-n */ 59 * struct pch_gpio_reg_data - The register store data. 63 * @pm_reg: To store contents of PM register. 67 * (Only ML7223 Bus-n) 80 * struct pch_gpio - GPIO private data structure. 108 spin_lock_irqsave(&chip->spinlock, flags); in pch_gpio_set() 109 reg_val = ioread32(&chip->reg->po); in pch_gpio_set() [all …]
|
| /linux/drivers/misc/mei/ |
| H A D | pci-txe.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2013-2020, Intel Corporation. All rights reserved. 24 #include "hw-txe.h" 43 * mei_txe_probe - Device Initialization Routine 60 dev_err(&pdev->dev, "failed to enable pci device.\n"); in mei_txe_probe() 68 dev_err(&pdev->dev, "failed to get pci regions.\n"); in mei_txe_probe() 72 err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(36)); in mei_txe_probe() 74 err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32)); in mei_txe_probe() 76 dev_err(&pdev->dev, "No suitable DMA available.\n"); in mei_txe_probe() 84 err = -ENOMEM; in mei_txe_probe() [all …]
|
| /linux/Documentation/ABI/stable/ |
| H A D | sysfs-bus-usb | 1 What: /sys/bus/usb/devices/.../power/persist 8 not the "USB-Persist" facility is enabled for the device. For 12 For more information, see Documentation/driver-api/usb/persist.rst. 14 What: /sys/bus/usb/devices/.../power/autosuspend 27 The autosuspend delay for newly-created devices is set to 30 What: /sys/bus/usb/device/.../power/connected_duration 37 connected to the machine. This file is read-only. 42 What: /sys/bus/usb/device/.../power/active_duration 49 active, i.e. not in a suspended state. This file is read-only. 63 What: /sys/bus/usb/devices/<busnum>-<port[.port]>...:<config num>-<interface num>/supports_autosus… [all …]
|
| /linux/drivers/pci/ |
| H A D | pci-driver.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * (C) Copyright 2002-2004, 2007 Greg Kroah-Hartman <greg@kroah.com> 22 #include <linux/dma-map-ops.h> 33 * pci_add_dynid - add a new PCI device ID to this driver and re-probe devices 51 * 0 on success, -errno on failure. 63 return -ENOMEM; in pci_add_dynid() 65 dynid->id.vendor = vendor; in pci_add_dynid() 66 dynid->id.device = device; in pci_add_dynid() 67 dynid->id.subvendor = subvendor; in pci_add_dynid() 68 dynid->id.subdevice = subdevice; in pci_add_dynid() [all …]
|
| /linux/Documentation/devicetree/bindings/mips/loongson/ |
| H A D | ls2k-reset.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mips/loongson/ls2k-reset.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Loongson 2K1000 PM Controller 10 - Qing Zhang <zhangqing@loongson.cn> 13 This controller can be found in Loongson-2K1000 Soc systems. 17 const: loongson,ls2k-pm 23 - compatible 24 - reg [all …]
|
| /linux/drivers/net/wireless/quantenna/qtnfmac/ |
| H A D | event.c | 1 // SPDX-License-Identifier: GPL-2.0+ 2 /* Copyright (c) 2015-2016 Quantenna Communications. All rights reserved. */ 12 #include "bus.h" 34 mac->macid, vif->vifid, len, sizeof(*sta_assoc)); in qtnf_event_handle_sta_assoc() 35 return -EINVAL; in qtnf_event_handle_sta_assoc() 38 if (vif->wdev.iftype != NL80211_IFTYPE_AP) { in qtnf_event_handle_sta_assoc() 40 mac->macid, vif->vifid); in qtnf_event_handle_sta_assoc() 41 return -EPROTO; in qtnf_event_handle_sta_assoc() 46 return -ENOMEM; in qtnf_event_handle_sta_assoc() 48 sta_addr = sta_assoc->sta_addr; in qtnf_event_handle_sta_assoc() [all …]
|
| /linux/drivers/amba/ |
| H A D | bus.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include <linux/pm.h> 16 #include <linux/amba/bus.h> 19 #include <linux/clk/clk-conf.h> 27 #include <linux/dma-map-ops.h> 38 uci = table->data; in amba_cs_uci_id_match() 40 /* no table data or zero mask - return match on periphid */ in amba_cs_uci_id_match() 41 if (!uci || (uci->devarch_mask == 0)) in amba_cs_uci_id_match() 45 ret = (dev->uci.devtype == uci->devtype) && in amba_cs_uci_id_match() 46 ((dev->uci.devarch & uci->devarch_mask) == uci->devarch); in amba_cs_uci_id_match() [all …]
|
| /linux/drivers/input/touchscreen/ |
| H A D | ad7879-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AD7879-1/AD7889-1 touchscreen (I2C bus) 5 * Copyright (C) 2008-2010 Michael Hennerich, Analog Devices Inc. 13 #include <linux/pm.h> 18 #define AD7879_DEVID 0x79 /* AD7879-1/AD7889-1 */ 30 if (!i2c_check_functionality(client->adapter, in ad7879_i2c_probe() 32 dev_err(&client->dev, "SMBUS Word Data not Supported\n"); in ad7879_i2c_probe() 33 return -EIO; in ad7879_i2c_probe() 40 return ad7879_probe(&client->dev, regmap, client->irq, in ad7879_i2c_probe() 53 { .compatible = "adi,ad7879-1", }, [all …]
|
| H A D | ad7879-spi.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AD7879/AD7889 touchscreen (SPI bus) 5 * Copyright (C) 2008-2010 Michael Hennerich, Analog Devices Inc. 9 #include <linux/pm.h> 37 if (spi->max_speed_hz > MAX_SPI_FREQ_HZ) { in ad7879_spi_probe() 38 dev_err(&spi->dev, "SPI CLK %d Hz?\n", spi->max_speed_hz); in ad7879_spi_probe() 39 return -EINVAL; in ad7879_spi_probe() 46 return ad7879_probe(&spi->dev, regmap, spi->irq, BUS_SPI, AD7879_DEVID); in ad7879_spi_probe() 61 .pm = &ad7879_pm_ops, 70 MODULE_DESCRIPTION("AD7879(-1) touchscreen SPI bus driver");
|
| /linux/drivers/pnp/ |
| H A D | driver.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * driver.c - device id matching, driver model, etc. 36 if (memcmp(pos->id, id, 3) == 0) in compare_pnp_id() 37 if (compare_func(pos->id, id) == 1) in compare_pnp_id() 39 pos = pos->next; in compare_pnp_id() 47 const struct pnp_device_id *drv_id = drv->id_table; in match_device() 52 while (*drv_id->id) { in match_device() 53 if (compare_pnp_id(dev->id, drv_id->id)) in match_device() 63 if (pnp_dev->status != PNP_READY) { in pnp_device_attach() 65 return -EBUSY; in pnp_device_attach() [all …]
|
| /linux/arch/arm/mach-s3c/ |
| H A D | Kconfig.s3c64xx | 1 # SPDX-License-Identifier: GPL-2.0 17 select PM_GENERIC_DOMAINS if PM 21 select SAMSUNG_WAKEMASK if PM 27 the maintainers of the platform and linux-samsung-soc@vger.kernel.org if 62 Common setup code for i2c bus 0. 70 Common setup code for i2c bus 1.
|