/linux/Documentation/devicetree/bindings/iio/addac/ |
H A D | adi,ad74115.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Cosmin Tanislav <cosmin.tanislav@analog.com> 13 The AD74115H is a single-channel software configurable input/output 17 chip solution with an SPI interface. The device features a 16-bit ADC and a 18 14-bit DAC. 25 - adi,ad74115h 30 spi-max-frequency: 33 spi-cpol: true [all …]
|
/linux/Documentation/devicetree/bindings/iio/dac/ |
H A D | adi,ad5421.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Lars-Peter Clausen <lars@metafoo.de> 11 - Jonathan Cameron <jic23@kernel.org> 14 AD5421 is designed for us in loop-powered, 4 mA to 20 mA smart transmitter 15 applications. It provides a 16-bit DAC, current amplifier, voltage regulator 16 to drive the loop and a voltage reference. 30 - compatible 31 - reg [all …]
|
/linux/drivers/usb/core/ |
H A D | generic.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * drivers/usb/core/generic.c - generic driver for USB devices (not interfaces) 5 * (C) Copyright 2005 Greg Kroah-Hartman <gregkh@suse.de> 9 * (C) Copyright Johannes Erdfelt 1999-2001 14 * (C) Copyright David Brownell 2000-2004 17 * (C) Copyright Greg Kroah-Hartman 2002-2003 30 return desc->bInterfaceClas in plural() [all...] |
/linux/arch/arm/include/asm/ |
H A D | mcpm.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 6 * Copyright: (C) 2012-2013 Linaro Limited 40 * branch once it is ready to re-enter the kernel using ptr, or NULL if it 41 * should be gated. A gated CPU is held in a WFE loop until its vector 59 * mcpm_is_available - returns whether MCPM is initialized and available 66 * mcpm_cpu_power_up - make given CPU in given cluster runable 71 * The identified CPU is brought out of reset. If the cluster was powered 87 * mcpm_cpu_power_down - power the calling CPU down 89 * The calling CPU is powered down. 92 * then the cluster is prepared for power-down too. [all …]
|
/linux/arch/mips/kernel/ |
H A D | pm-cps.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 13 #include <asm/asm-offsets.h> 17 #include <asm/mips-cps.h> 20 #include <asm/pm-cps.h> 22 #include <asm/smp-cps.h> 26 * cps_nc_entry_fn - type of a generated non-coherent state entry function 28 * @nc_ready_count: pointer to a non-coherent mapping of the core ready_count 30 * The code entering & exiting non-coherent states is generated at runtime 33 * core-specific code particularly for cache routines. If coupled_coherence 34 * is non-zero and this is the entry function for the CPS_PM_NC_WAIT state, [all …]
|
/linux/Documentation/w1/slaves/ |
H A D | w1_ds28e17.rst | 7 * Maxim DS28E17 1-Wire-to-I2C Master Bridge 19 ----------- 30 SUBSYSTEM=="i2c-dev", KERNEL=="i2c-[0-9]*", ATTRS{name}=="w1-19-*", \ 31 SYMLINK+="i2c-$attr{name}" 33 may be used to create stable /dev/i2c- entries based on the unique id of the 41 it is connected. The power-on default of the DS28E17 is 400kBaud, but 42 chips may come and go on the Onewire bus without being de-powered and 44 reconnected DS28E17 device on the Onewire bus, it will re-apply this 55 needed timeout cannot be pre-calculated correctly. As the w1_ds28e17 56 driver checks the DS28E17's busy flag in a loop after the precalculated [all …]
|
/linux/drivers/net/wireless/intel/iwlegacy/ |
H A D | csr.h | 8 * Copyright(c) 2005 - 2011 Intel Corporation. All rights reserved. 29 * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 33 * Copyright(c) 2005 - 2011 Intel Corporation. All rights reserved. 70 * low power states due to driver-invoked device resets 71 * (e.g. CSR_RESET_REG_FLAG_SW_RESET) or uCode-driven power-saving modes. 77 * The MAC (uCode processor, etc.) does not need to be powered up for accessing 86 #define CSR_INT_COALESCING (CSR_BASE+0x004) /* accum ints, 32-usec units */ 100 * 31-8: Reserved 101 * 7-4: Type of device: see CSR_HW_REV_TYPE_xxx definitions 102 * 3-2: Revision step: 0 = A, 1 = B, 2 = C, 3 = D [all …]
|
/linux/Documentation/timers/ |
H A D | no_hz.rst | 2 NO_HZ: Reducing Scheduling-Clock Ticks 7 reduce the number of scheduling-clock interrupts, thereby improving energy 9 some types of computationally intensive high-performance computing (HPC) 10 applications and for real-time applications. 12 There are three main ways of managing scheduling-clock interrupts 13 (also known as "scheduling-clock ticks" or simply "ticks"): 15 1. Never omit scheduling-clock ticks (CONFIG_HZ_PERIODIC=y or 16 CONFIG_NO_HZ=n for older kernels). You normally will -not- 19 2. Omit scheduling-clock ticks on idle CPUs (CONFIG_NO_HZ_IDLE=y or 23 3. Omit scheduling-clock ticks on CPUs that are either idle or that [all …]
|
/linux/Documentation/power/ |
H A D | suspend-and-cpuhotplug.rst | 5 (C) 2011 - 2014 Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> 8 I. Differences between CPU hotplug and Suspend-to-RAM 11 How does the regular CPU hotplug code differ from how the Suspend-to-RAM 14 Well, a picture is worth a thousand words... So ASCII art follows :-) 21 What happens when regular CPU hotplug and Suspend-to-RAM race with each other 24 On a high level, the suspend-resume cycle goes like this:: 26 |Freeze| -> |Disable nonboot| -> |Do suspend| -> |Enable nonboot| -> |Thaw | 33 ----------------- 62 | ---------- 76 frozen_cpus mask ---------- [all …]
|
H A D | freezing-of-tasks.rst | 11 kernel threads are controlled during hibernation or system-wide suspend (on some 17 There is one per-task flag (PF_NOFREEZE) and three per-task states 23 to system-wide suspend too). 26 freeze_processes() (defined in kernel/power/process.c) is called. A system-wide 27 static key freezer_active (as opposed to a per-task flag or state) is used to 34 it loop until it is woken by an explicit TASK_FROZEN wakeup. Then, that task 45 signal-handling code, but the freezable kernel threads need to call it 49 freezer_active is set. The main loop of a freezable kernel thread may look 61 oom_reaper_list = tsk->oom_reaper_list; 73 entire system-wide transition will be cancelled. For this reason, freezable [all …]
|
/linux/drivers/pci/hotplug/ |
H A D | ibmphp_core.c | 1 // SPDX-License-Identifier: GPL-2.0+ 7 * Copyright (C) 2001,2003 Greg Kroah-Hartman (greg@kroah.com) 8 * Copyright (C) 2001-2003 IBM Corp. 58 debug("options = %x\n", slot_cur->ctrl->options); in get_cur_bus_info() 59 debug("revision = %x\n", slot_cur->ctrl->revision); in get_cur_bus_info() 61 if (READ_BUS_STATUS(slot_cur->ctrl)) in get_cur_bus_info() 67 slot_cur->bus_on->current_speed = CURRENT_BUS_SPEED(slot_cur->busstatus); in get_cur_bus_info() 68 if (READ_BUS_MODE(slot_cur->ctrl)) in get_cur_bus_info() 69 slot_cur->bus_on->current_bus_mode = in get_cur_bus_info() 70 CURRENT_BUS_MODE(slot_cur->busstatus); in get_cur_bus_info() [all …]
|
/linux/sound/soc/atmel/ |
H A D | tse850-pcm5142.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // TSE-850 audio - ASoC driver for the Axentia TSE-850 with a PCM5142 codec 10 // IN1 +---o +------------+ o---+ OUT1 14 // +--o +--. | 17 // | .---. | 18 // DAC +----------->|Sum|---+ 19 // | '---' | 23 // IN2 +---o--+------------+--o---+ OUT2 26 // The 'loop1' gpio pin controls two relays, which are either in loop 33 // 'loop2' relays are active, short-cutting the TSE-850 from channel 2. [all …]
|
/linux/Documentation/hwmon/ |
H A D | aquacomputer_d5next.rst | 1 .. SPDX-License-Identifier: GPL-2.0-or-later 3 Kernel driver aquacomputer-d5next 25 ----------- 37 available through debugfs are the serial number, firmware version and power-on 39 temperature curves directly from the pump. If it's not connected, the fan-related 61 and an estimation of the dissipated/absorbed power in the liquid cooling loop. 65 filled with coolant. Pump RPM and flow can be set to enhance on-device calculations, 87 ----------- 93 ------------- 96 temp[1-20]_input Physical/virtual temperature sensors (in millidegrees Celsius) [all …]
|
/linux/drivers/usb/gadget/udc/ |
H A D | max3420_udc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 6 * (C) Copyright 2019-2020 Linaro Ltd 189 #define DRIVER_DESC "MAX3420 USB Device-Mode Driver" 190 static const char driver_name[] = "max3420-udc"; 201 struct spi_device *spi = udc->spi; in spi_ack_ctrl() 220 struct spi_device *spi = udc->spi; in spi_rd8_ack() 247 struct spi_device *spi = udc->spi; in spi_wr8_ack() 273 struct spi_device *spi = udc->spi; in spi_rd_buf() 295 struct spi_device *spi = udc->spi; in spi_wr_buf() 316 struct max3420_udc *udc = ep->udc; in spi_max3420_enable() [all …]
|
/linux/drivers/cpuidle/ |
H A D | coupled.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * coupled.c - helper functions to enter the same idle state on multiple cpus 24 * cpus cannot be independently powered down, either due to 62 * the waiting loop, in the ready loop, or in the coupled idle state. 63 * ready_count tracks the number of cpus that are in the ready loop 88 * struct cpuidle_coupled - data for set of cpus that share a coupled idle state 109 #define WAITING_MASK (MAX_WAITING_CPUS - 1) 112 #define CPUIDLE_COUPLED_NOT_IDLE (-1) 126 * once to minimize entering the ready loop with a poke pending, which would 132 * cpuidle_coupled_parallel_barrier - synchronize all online coupled cpus [all …]
|
/linux/Documentation/scheduler/ |
H A D | sched-util-clamp.rst | 1 .. SPDX-License-Identifier: GPL-2.0 42 As an example, a game can use util clamp to form a feedback loop with its 50 dynamic feedback loop offers a great flexibility to ensure best user experience 57 foreground, top-app, etc. Util clamp can be used to constrain how much 60 the ones belonging to the currently active app (top-app group). Beside this 65 1. The big cores are free to run top-app tasks immediately. top-app 97 User space can form a feedback loop with the thermal subsystem too to ensure 104 can be useful on general purpose systems that run on battery powered devices. 106 Note that by design RT tasks don't have per-task PELT signal and must always 114 See :ref:`section 3.4 <uclamp-default-values>` for default values and [all …]
|
/linux/sound/core/ |
H A D | init.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 47 /* return non-zero if the given index is reserved for the given 56 if (!module || !*module->name || !slots[idx]) in module_slot_match() 59 s1 = module->name; in module_slot_match() 71 if (c1 == '-') in module_slot_match() 73 if (c2 == '-') in module_slot_match() 95 * @mask == -1 == 0xffffffff means: take any free slot up to 32 121 * snd_device_alloc - Allocate and initialize struct device for sound devices 134 return -ENOMEM; in snd_device_alloc() 137 dev->parent = &card->card_dev; in snd_device_alloc() [all …]
|
/linux/sound/drivers/ |
H A D | serial-u16550.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 12 * Added support for the Midiator MS-124T and for the MS-124W in 17 * More documentation can be found in serial-u16550.txt. 39 #define SNDRV_SERIAL_MS124T 1 /* Midiator MS-124T */ 40 #define SNDRV_SERIAL_MS124W_SA 2 /* Midiator MS-124W in S/A mode */ 41 #define SNDRV_SERIAL_MS124W_MB 3 /* Midiator MS-124W in M/B mode */ 46 "MS-124T", 47 "MS-124W S/A", 48 "MS-124W M/B", 53 #define SNDRV_SERIAL_DROPBUFF 1 /* Non-blocking discard operation */ [all …]
|
/linux/drivers/gpu/drm/bridge/ |
H A D | ti-sn65dsi86.c | 1 // SPDX-License-Identifier: GPL-2.0 134 * struct ti_sn65dsi86 - Platform data for ti-sn65dsi86 driver. 135 * @bridge_aux: AUX-bus sub device for MIPI-to-eDP bridge functionality. 136 * @gpio_aux: AUX-bus sub device for GPIO controller functionality. 137 * @aux_aux: AUX-bus sub device for eDP AUX channel functionality. 138 * @pwm_aux: AUX-bus sub device for PWM controller functionality. 153 * @ln_polrs: Value for the 4-bit LN_POLRS field of SN_ENH_FRAME_REG. 159 * serves double-duty of keeping track of the direction and 165 * each other's read-modify-write. 230 ret = regmap_bulk_read(pdata->regmap, reg, buf, ARRAY_SIZE(buf)); in ti_sn65dsi86_read_u16() [all …]
|
H A D | ite-it6505.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 35 #include <sound/hdmi-codec.h> 53 #define BIT_OFFSET(x) (((x) - INT_STATUS_01) * BITS_PER_BYTE) 305 #define DEBUGFS_DIR_NAME "it6505-debugfs" 461 bool powered; member 554 struct device *dev = it6505->dev; in it6505_read() 556 if (!it6505->powered) in it6505_read() 557 return -ENODEV; in it6505_read() 559 err = regmap_read(it6505->regmap, reg_addr, &value); in it6505_read() 572 struct device *dev = it6505->dev; in it6505_write() [all …]
|
/linux/drivers/iio/pressure/ |
H A D | zpa2326.c | 1 // SPDX-License-Identifier: GPL-2.0-only 34 * - get device out of low power mode, 35 * - setup hardware sampling period, 36 * - at end of period, upon data ready interrupt: pop pressure samples out of 38 * - when no longer needed, stop sampling process by putting device into 70 /* 200 ms should be enough for the longest conversion time in one-shot mode. */ 78 * struct zpa2326_frequency - Hardware sampling frequency descriptor 102 ARRAY_SIZE(zpa2326_sampling_frequencies) - 1]; in zpa2326_highest_frequency() 106 * struct zpa2326_private - Per-device internal private state 116 * @waken: Flag indicating whether or not device has just been powered on. [all …]
|
/linux/drivers/power/supply/ |
H A D | rt9455_charger.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 21 #define RT9455_DRIVER_NAME "rt9455-charger" 165 #define GET_MASK(fid) (BIT(rt9455_reg_fields[fid].msb + 1) - \ 169 * Each array initialised below shows the possible real-world values for a 171 * ascending order. The index of each real-world value represents the value 265 for (i = 0; i < tbl_size - 1; i++) in rt9455_find_idx() 269 return (tbl_size - 1); in rt9455_find_idx() 279 ret = regmap_field_read(info->regmap_fields[field], &v); in rt9455_get_field_val() 283 v = (v >= tbl_size) ? (tbl_size - 1) : v; in rt9455_get_field_val() 295 return regmap_field_write(info->regmap_fields[field], idx); in rt9455_set_field_val() [all …]
|
/linux/drivers/soundwire/ |
H A D | intel_init.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 2 // Copyright(c) 2015-17 Intel Corporation. 45 return ERR_PTR(-ENOMEM); in intel_link_dev_register() 47 auxdev = &ldev->auxdev; in intel_link_dev_register() 48 auxdev->name = name; in intel_link_dev_register() 49 auxdev->dev.parent = res->parent; in intel_link_dev_register() 50 auxdev->dev.fwnode = fwnode; in intel_link_dev_register() 51 auxdev->dev.release = intel_link_dev_release; in intel_link_dev_register() 54 auxdev->id = link_id; in intel_link_dev_register() 59 * no need to check if ctx->ldev[i] is NULL later on. in intel_link_dev_register() [all …]
|
/linux/drivers/pmdomain/ |
H A D | core.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * drivers/base/power/domain.c - Common code related to device power domains. 37 __routine = genpd->dev_ops.callback; \ 56 mutex_lock(&genpd->mlock); in genpd_lock_mtx() 62 mutex_lock_nested(&genpd->mlock, depth); in genpd_lock_nested_mtx() 67 return mutex_lock_interruptible(&genpd->mlock); in genpd_lock_interruptible_mtx() 72 return mutex_unlock(&genpd->mlock); in genpd_unlock_mtx() 83 __acquires(&genpd->slock) in genpd_lock_spin() 87 spin_lock_irqsave(&genpd->slock, flags); in genpd_lock_spin() 88 genpd->lock_flags = flags; in genpd_lock_spin() [all …]
|
/linux/drivers/usb/gadget/legacy/ |
H A D | zero.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * zero.c -- Gadget Zero, for USB development 5 * Copyright (C) 2003-2008 David Brownell 11 * can write a hardware-agnostic gadget driver running inside a USB device. 15 * test of your device-side usb stack, or with "usb-skeleton". 32 * driver assumes self-powered hardware, and 46 /*-------------------------------------------------------------------------*/ 71 /*-------------------------------------------------------------------------*/ 75 * DO NOT REUSE THESE IDs with a protocol-incompatible driver!! Ever!! 76 * Instead: allocate your own, using normal USB-IF procedures. [all …]
|