regulator: core: allow regulator_register() with

Merge series from André Draszik <andre.draszik@linaro.org>:

With these attached patches it becomes possible again to support
hardware designs with multiple PMICs where individual rails of each act
as required supplies for rails of the other (due to the latter being
e.g. always-on), and vice-versa.

Google Pixel 6 and 6 Pro (oriole and raven) are examples of such
designs.

Rather than returning -EPORBE_DEFER in regulator_register() when
set_machine_constraints() fails with -EPROBE_DEFER (due to missing
required supplies), we still allow rail registration and try to
reresolve supplies each time a new rail gets registered.

This is implemented using a bus (regulator bus), which allows the core
to reresolve supplies for regulators that still need them whenever new
regulators (i.e. devices) are added.

Using a bus also solves existing problems around late resolution of
supplies as mentioned in the commit message introducing that bus.

The series starts with a few bug fixes and the last two commits
implement the changes mentioned above, but do depend on the bug fixes.
This commit is contained in:
Mark Brown 2026-01-12 12:15:35 +00:00
commit 6eb6b62f00
No known key found for this signature in database
GPG key ID: 24D68B725D5487D0
816 changed files with 6529 additions and 3261 deletions

View file

@ -748,6 +748,7 @@ ForEachMacros:
- 'ynl_attr_for_each_nested'
- 'ynl_attr_for_each_payload'
- 'zorro_for_each_dev'
- 'zpci_bus_for_each'
IncludeBlocks: Preserve
IncludeCategories:

View file

@ -127,7 +127,8 @@ Barry Song <baohua@kernel.org> <Baohua.Song@csr.com>
Barry Song <baohua@kernel.org> <barry.song@analog.com>
Bart Van Assche <bvanassche@acm.org> <bart.vanassche@sandisk.com>
Bart Van Assche <bvanassche@acm.org> <bart.vanassche@wdc.com>
Bartosz Golaszewski <brgl@bgdev.pl> <bgolaszewski@baylibre.com>
Bartosz Golaszewski <brgl@kernel.org> <bartosz.golaszewski@linaro.org>
Bartosz Golaszewski <brgl@kernel.org> <bgolaszewski@baylibre.com>
Ben Dooks <ben-linux@fluff.org> <ben.dooks@simtec.co.uk>
Ben Dooks <ben-linux@fluff.org> <ben.dooks@sifive.com>
Ben Gardner <bgardner@wabtec.com>
@ -857,7 +858,6 @@ Vladimir Davydov <vdavydov.dev@gmail.com> <vdavydov@parallels.com>
Vladimir Davydov <vdavydov.dev@gmail.com> <vdavydov@virtuozzo.com>
WangYuli <wangyuli@aosc.io> <wangyl5933@chinaunicom.cn>
WangYuli <wangyuli@aosc.io> <wangyuli@deepin.org>
WangYuli <wangyuli@aosc.io> <wangyuli@uniontech.com>
Weiwen Hu <huweiwen@linux.alibaba.com> <sehuww@mail.scut.edu.cn>
WeiXiong Liao <gmpy.liaowx@gmail.com> <liaoweixiong@allwinnertech.com>
Wen Gong <quic_wgong@quicinc.com> <wgong@codeaurora.org>

View file

@ -1987,6 +1987,7 @@ D: netfilter: TCP window tracking code
D: netfilter: raw table
D: netfilter: iprange match
D: netfilter: new logging interfaces
D: netfilter: ipset
D: netfilter: various other hacks
S: Tata
S: Hungary

View file

@ -134,7 +134,7 @@ MB and a zone capacity of 63 MB::
$ modprobe zloop
$ mkdir -p /var/local/zloop/0
$ echo "add capacity_mb=2048,zone_size_mb=64,zone_capacity=63MB" > /dev/zloop-control
$ echo "add capacity_mb=2048,zone_size_mb=64,zone_capacity_mb=63" > /dev/zloop-control
For the device created (/dev/zloop0), the zone backing files are all created
under the default base directory (/var/local/zloop)::

View file

@ -281,6 +281,14 @@ The following keys are defined:
* :c:macro:`RISCV_HWPROBE_EXT_ZICBOP`: The Zicbop extension is supported, as
ratified in commit 3dd606f ("Create cmobase-v1.0.pdf") of riscv-CMOs.
* :c:macro:`RISCV_HWPROBE_EXT_ZILSD`: The Zilsd extension is supported as
defined in the RISC-V ISA manual starting from commit f88abf1 ("Integrating
load/store pair for RV32 with the main manual") of the riscv-isa-manual.
* :c:macro:`RISCV_HWPROBE_EXT_ZCLSD`: The Zclsd extension is supported as
defined in the RISC-V ISA manual starting from commit f88abf1 ("Integrating
load/store pair for RV32 with the main manual") of the riscv-isa-manual.
* :c:macro:`RISCV_HWPROBE_KEY_CPUPERF_0`: Deprecated. Returns similar values to
:c:macro:`RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF`, but the key was
mistakenly classified as a bitmask rather than a value.

View file

@ -95,26 +95,26 @@ Memory Layout
The traditional memory map for the kernel loader, used for Image or
zImage kernels, typically looks like::
| |
| |
0A0000 +------------------------+
| Reserved for BIOS | Do not use. Reserved for BIOS EBDA.
| Reserved for BIOS | Do not use. Reserved for BIOS EBDA.
09A000 +------------------------+
| Command line |
| Stack/heap | For use by the kernel real-mode code.
| Command line |
| Stack/heap | For use by the kernel real-mode code.
098000 +------------------------+
| Kernel setup | The kernel real-mode code.
| Kernel setup | The kernel real-mode code.
090200 +------------------------+
| Kernel boot sector | The kernel legacy boot sector.
| Kernel boot sector | The kernel legacy boot sector.
090000 +------------------------+
| Protected-mode kernel | The bulk of the kernel image.
| Protected-mode kernel | The bulk of the kernel image.
010000 +------------------------+
| Boot loader | <- Boot sector entry point 0000:7C00
| Boot loader | <- Boot sector entry point 0000:7C00
001000 +------------------------+
| Reserved for MBR/BIOS |
| Reserved for MBR/BIOS |
000800 +------------------------+
| Typically used by MBR |
| Typically used by MBR |
000600 +------------------------+
| BIOS use only |
| BIOS use only |
000000 +------------------------+
When using bzImage, the protected-mode kernel was relocated to
@ -142,27 +142,27 @@ above the 0x9A000 point; too many BIOSes will break above that point.
For a modern bzImage kernel with boot protocol version >= 2.02, a
memory layout like the following is suggested::
~ ~
| Protected-mode kernel |
~ ~
| Protected-mode kernel |
100000 +------------------------+
| I/O memory hole |
| I/O memory hole |
0A0000 +------------------------+
| Reserved for BIOS | Leave as much as possible unused
~ ~
| Command line | (Can also be below the X+10000 mark)
| Reserved for BIOS | Leave as much as possible unused
~ ~
| Command line | (Can also be below the X+10000 mark)
X+10000 +------------------------+
| Stack/heap | For use by the kernel real-mode code.
| Stack/heap | For use by the kernel real-mode code.
X+08000 +------------------------+
| Kernel setup | The kernel real-mode code.
| Kernel boot sector | The kernel legacy boot sector.
| Kernel setup | The kernel real-mode code.
| Kernel boot sector | The kernel legacy boot sector.
X +------------------------+
| Boot loader | <- Boot sector entry point 0000:7C00
| Boot loader | <- Boot sector entry point 0000:7C00
001000 +------------------------+
| Reserved for MBR/BIOS |
| Reserved for MBR/BIOS |
000800 +------------------------+
| Typically used by MBR |
| Typically used by MBR |
000600 +------------------------+
| BIOS use only |
| BIOS use only |
000000 +------------------------+
... where the address X is as low as the design of the boot loader permits.
@ -433,7 +433,7 @@ Protocol: 2.00+
Assigned boot loader IDs:
== =======================================
==== =======================================
0x0 LILO
(0x00 reserved for pre-2.00 bootloader)
0x1 Loadlin
@ -456,7 +456,7 @@ Protocol: 2.00+
<http://sebastian-plotz.blogspot.de>
0x12 OVMF UEFI virtualization stack
0x13 barebox
== =======================================
==== =======================================
Please contact <hpa@zytor.com> if you need a bootloader ID value assigned.
@ -809,12 +809,12 @@ Protocol: 2.09+
as follow::
struct setup_data {
__u64 next;
__u32 type;
__u32 len;
__u8 data[];
__u64 next;
__u32 type;
__u32 len;
__u8 data[];
}
Where, the next is a 64-bit physical pointer to the next node of
linked list, the next field of the last node is 0; the type is used
to identify the contents of data; the len is the length of data
@ -835,10 +835,10 @@ Protocol: 2.09+
protocol 2.15::
struct setup_indirect {
__u32 type;
__u32 reserved; /* Reserved, must be set to zero. */
__u64 len;
__u64 addr;
__u32 type;
__u32 reserved; /* Reserved, must be set to zero. */
__u64 len;
__u64 addr;
};
The type member is a SETUP_INDIRECT | SETUP_* type. However, it cannot be
@ -850,15 +850,15 @@ Protocol: 2.09+
In this case setup_data and setup_indirect will look like this::
struct setup_data {
.next = 0, /* or <addr_of_next_setup_data_struct> */
.type = SETUP_INDIRECT,
.len = sizeof(setup_indirect),
.data[sizeof(setup_indirect)] = (struct setup_indirect) {
.type = SETUP_INDIRECT | SETUP_E820_EXT,
.reserved = 0,
.len = <len_of_SETUP_E820_EXT_data>,
.addr = <addr_of_SETUP_E820_EXT_data>,
},
.next = 0, /* or <addr_of_next_setup_data_struct> */
.type = SETUP_INDIRECT,
.len = sizeof(setup_indirect),
.data[sizeof(setup_indirect)] = (struct setup_indirect) {
.type = SETUP_INDIRECT | SETUP_E820_EXT,
.reserved = 0,
.len = <len_of_SETUP_E820_EXT_data>,
.addr = <addr_of_SETUP_E820_EXT_data>,
},
}
.. note::
@ -897,11 +897,11 @@ Offset/size: 0x260/4
The kernel runtime start address is determined by the following algorithm::
if (relocatable_kernel) {
if (load_address < pref_address)
load_address = pref_address;
runtime_start = align_up(load_address, kernel_alignment);
if (load_address < pref_address)
load_address = pref_address;
runtime_start = align_up(load_address, kernel_alignment);
} else {
runtime_start = pref_address;
runtime_start = pref_address;
}
Hence the necessary memory window location and size can be estimated by
@ -975,22 +975,22 @@ after kernel_info_var_len_data label. Each chunk of variable size data has to
be prefixed with header/magic and its size, e.g.::
kernel_info:
.ascii "LToP" /* Header, Linux top (structure). */
.long kernel_info_var_len_data - kernel_info
.long kernel_info_end - kernel_info
.long 0x01234567 /* Some fixed size data for the bootloaders. */
.ascii "LToP" /* Header, Linux top (structure). */
.long kernel_info_var_len_data - kernel_info
.long kernel_info_end - kernel_info
.long 0x01234567 /* Some fixed size data for the bootloaders. */
kernel_info_var_len_data:
example_struct: /* Some variable size data for the bootloaders. */
.ascii "0123" /* Header/Magic. */
.long example_struct_end - example_struct
.ascii "Struct"
.long 0x89012345
.ascii "0123" /* Header/Magic. */
.long example_struct_end - example_struct
.ascii "Struct"
.long 0x89012345
example_struct_end:
example_strings: /* Some variable size data for the bootloaders. */
.ascii "ABCD" /* Header/Magic. */
.long example_strings_end - example_strings
.asciz "String_0"
.asciz "String_1"
.ascii "ABCD" /* Header/Magic. */
.long example_strings_end - example_strings
.asciz "String_0"
.asciz "String_1"
example_strings_end:
kernel_info_end:
@ -1132,53 +1132,53 @@ Such a boot loader should enter the following fields in the header::
unsigned long base_ptr; /* base address for real-mode segment */
if (setup_sects == 0)
setup_sects = 4;
setup_sects = 4;
if (protocol >= 0x0200) {
type_of_loader = <type code>;
if (loading_initrd) {
ramdisk_image = <initrd_address>;
ramdisk_size = <initrd_size>;
}
type_of_loader = <type code>;
if (loading_initrd) {
ramdisk_image = <initrd_address>;
ramdisk_size = <initrd_size>;
}
if (protocol >= 0x0202 && loadflags & 0x01)
heap_end = 0xe000;
else
heap_end = 0x9800;
if (protocol >= 0x0202 && loadflags & 0x01)
heap_end = 0xe000;
else
heap_end = 0x9800;
if (protocol >= 0x0201) {
heap_end_ptr = heap_end - 0x200;
loadflags |= 0x80; /* CAN_USE_HEAP */
}
if (protocol >= 0x0201) {
heap_end_ptr = heap_end - 0x200;
loadflags |= 0x80; /* CAN_USE_HEAP */
}
if (protocol >= 0x0202) {
cmd_line_ptr = base_ptr + heap_end;
strcpy(cmd_line_ptr, cmdline);
} else {
cmd_line_magic = 0xA33F;
cmd_line_offset = heap_end;
setup_move_size = heap_end + strlen(cmdline) + 1;
strcpy(base_ptr + cmd_line_offset, cmdline);
}
if (protocol >= 0x0202) {
cmd_line_ptr = base_ptr + heap_end;
strcpy(cmd_line_ptr, cmdline);
} else {
cmd_line_magic = 0xA33F;
cmd_line_offset = heap_end;
setup_move_size = heap_end + strlen(cmdline) + 1;
strcpy(base_ptr + cmd_line_offset, cmdline);
}
} else {
/* Very old kernel */
/* Very old kernel */
heap_end = 0x9800;
heap_end = 0x9800;
cmd_line_magic = 0xA33F;
cmd_line_offset = heap_end;
cmd_line_magic = 0xA33F;
cmd_line_offset = heap_end;
/* A very old kernel MUST have its real-mode code loaded at 0x90000 */
if (base_ptr != 0x90000) {
/* Copy the real-mode kernel */
memcpy(0x90000, base_ptr, (setup_sects + 1) * 512);
base_ptr = 0x90000; /* Relocated */
}
/* A very old kernel MUST have its real-mode code loaded at 0x90000 */
if (base_ptr != 0x90000) {
/* Copy the real-mode kernel */
memcpy(0x90000, base_ptr, (setup_sects + 1) * 512);
base_ptr = 0x90000; /* Relocated */
}
strcpy(0x90000 + cmd_line_offset, cmdline);
strcpy(0x90000 + cmd_line_offset, cmdline);
/* It is recommended to clear memory up to the 32K mark */
memset(0x90000 + (setup_sects + 1) * 512, 0, (64 - (setup_sects + 1)) * 512);
/* It is recommended to clear memory up to the 32K mark */
memset(0x90000 + (setup_sects + 1) * 512, 0, (64 - (setup_sects + 1)) * 512);
}

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Integrator Boards
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |+
These were the first ARM platforms officially supported by ARM Ltd.

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM RealView Boards
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |+
The ARM RealView series of reference designs were built to explore the Arm11,

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Snoop Control Unit (SCU)
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
As part of the MPCore complex, Cortex-A5 and Cortex-A9 are provided

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Arm Versatile system registers
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
This is a system control registers block, providing multiple low level

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Versatile Boards
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |+
The ARM Versatile boards are two variants of ARM926EJ-S evaluation boards

View file

@ -8,7 +8,7 @@ title: ARM Versatile Express and Juno Boards
maintainers:
- Sudeep Holla <sudeep.holla@arm.com>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |+
ARM's Versatile Express platform were built as reference designs for exploring

View file

@ -20,7 +20,7 @@ description: |
Many of the IP blocks used in the SoC comes from Faraday Technology.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
$nodename:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP4xx
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
$nodename:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Ux500 platforms
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
$nodename:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Generic Parallel ATA Controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
Generic Parallel ATA controllers supporting PIO modes only.

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Cortina Systems Gemini SATA Bridge
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Gemini SATA bridge in a SoC-internal PATA to SATA bridge that

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Faraday Technology FTIDE010 PATA controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
This controller is the first Faraday IDE interface block, used in the

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP4xx CompactFlash Card Controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The IXP4xx network processors have a CompactFlash interface that presents

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Common Properties for Parallel AT attachment (PATA) controllers
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
This document defines device tree properties common to most Parallel

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Common Properties for Serial AT attachment (SATA) controllers
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
This document defines device tree properties common to most Serial

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Versatile Character LCD
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Rob Herring <robh@kernel.org>
description:

View file

@ -114,25 +114,6 @@ allOf:
- reg
properties:
sprd,syscon: false
- if:
properties:
compatible:
contains:
enum:
- sprd,sc9860-agcp-gate
- sprd,sc9860-aon-gate
- sprd,sc9860-apahb-gate
- sprd,sc9860-apapb-gate
- sprd,sc9860-cam-gate
- sprd,sc9860-disp-gate
- sprd,sc9860-pll
- sprd,sc9860-pmu-gate
- sprd,sc9860-vsp-gate
then:
required:
- sprd,syscon
properties:
reg: false
additionalProperties: false
@ -142,13 +123,6 @@ examples:
#address-cells = <2>;
#size-cells = <2>;
pmu-gate {
compatible = "sprd,sc9860-pmu-gate";
clocks = <&ext_26m>;
#clock-cells = <1>;
sprd,syscon = <&pmu_regs>;
};
clock-controller@20000000 {
compatible = "sprd,sc9860-ap-clk";
reg = <0 0x20000000 0 0x400>;

View file

@ -8,7 +8,7 @@ title: ST-Ericsson DB8500 (U8500) clocks
maintainers:
- Ulf Hansson <ulf.hansson@linaro.org>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: While named "U8500 clocks" these clocks are inside the
DB8500 digital baseband system-on-chip and its siblings such as

View file

@ -8,7 +8,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP4xx cryptographic engine
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Intel IXP4xx cryptographic engine makes use of the IXP4xx NPE

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Common Properties for DSI Display Panels
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
This document defines device tree properties common to DSI, Display

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Faraday TV Encoder TVE200
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Arm RTSM Virtual Platforms Display
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: panel-common.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Versatile TFT Panels
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
These panels are connected to the daughterboards found on the

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Ilitek ILI9322 TFT panel driver with SPI control bus
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
This is a driver for 320x240 TFT panels, accepting a variety of input

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Novatek NT35510-based display panels
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: panel-common.yaml#

View file

@ -11,7 +11,7 @@ description: The LMS380KF01 is a 480x800 DPI display panel from Samsung Mobile
used with internal or external backlight control.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: panel-common.yaml#

View file

@ -10,7 +10,7 @@ description: The datasheet claims this is based around a display controller
named DB7430 with a separate backlight controller.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: panel-common.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Samsung S6D16D0 4" 864x480 AMOLED panel
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: panel-common.yaml#

View file

@ -12,7 +12,7 @@ description: The Sony ACX424AKP and ACX424AKM are panels built around
AKP.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: panel-common.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Texas Instruments NSPIRE Display Panels
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: panel-common.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: TPO TPG110 Panel
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Thierry Reding <thierry.reding@gmail.com>
description: |+

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ST-Ericsson Multi Channel Display Engine MCDE
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -84,8 +84,7 @@ properties:
maxItems: 1
description: phandle to the associated power domain
dma-coherent:
type: boolean
dma-coherent: true
ports:
$ref: /schemas/graph.yaml#/properties/ports

View file

@ -103,8 +103,7 @@ properties:
maxItems: 1
description: phandle to the associated power domain
dma-coherent:
type: boolean
dma-coherent: true
ports:
$ref: /schemas/graph.yaml#/properties/ports

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ST-Ericsson DMA40 DMA Engine
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: dma-controller.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Fairchild Semiconductor FSA880, FSA9480 and compatibles
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
The FSA880 and FSA9480 are USB port accessory detectors and switches.

View file

@ -8,7 +8,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP4xx Network Processing Engine
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
On the IXP4xx SoCs, the Network Processing Engine (NPE) is a small

View file

@ -8,7 +8,7 @@ title: Broadcom BCM4751 family GNSS Receiver
maintainers:
- Johan Hovold <johan@kernel.org>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
Broadcom GPS chips can be used over the UART or I2C bus. The UART

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Faraday Technology FTGPIO010 GPIO Controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -8,7 +8,7 @@ title: Common GPIO lines
maintainers:
- Bartosz Golaszewski <brgl@bgdev.pl>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
Pay attention to using proper GPIO flag (e.g. GPIO_ACTIVE_LOW) for the GPIOs

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: EP93xx GPIO controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Bartosz Golaszewski <brgl@bgdev.pl>
- Nikita Shubin <nikita.shubin@maquefel.me>

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Generic MMIO GPIO
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Bartosz Golaszewski <brgl@bgdev.pl>
description:

View file

@ -22,7 +22,7 @@ description: |
and this can be enabled by a special flag.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Marvell PXA GPIO controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Bartosz Golaszewski <bgolaszewski@baylibre.com>
- Rob Herring <robh@kernel.org>

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM PL061 GPIO controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Rob Herring <robh@kernel.org>
# We need a select here so we don't match all nodes with 'arm,primecell'

View file

@ -12,7 +12,7 @@ description:
with pinctrl-nomadik.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
$nodename:

View file

@ -14,7 +14,7 @@ description:
GPIO portions of these expanders.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -20,7 +20,9 @@ properties:
- const: img,img-gx6250
- const: img,img-rogue
- items:
- const: renesas,r8a77965-gpu
- enum:
- renesas,r8a77965-gpu
- renesas,r8a779a0-gpu
- const: img,img-ge7800
- const: img,img-rogue
- items:

View file

@ -6,7 +6,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: NTC thermistor temperature sensors
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
Thermistors with negative temperature coefficient (NTC) are resistors that

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Winbond W83781 and compatible hardware monitor IC
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: I2C Controller on ARM Ltd development platforms
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: /schemas/i2c/i2c-controller.yaml#

View file

@ -38,6 +38,7 @@ properties:
- qcom,sm8450-cci
- qcom,sm8550-cci
- qcom,sm8650-cci
- qcom,sm8750-cci
- qcom,x1e80100-cci
- const: qcom,msm8996-cci # CCI v2
@ -132,6 +133,7 @@ allOf:
enum:
- qcom,kaanapali-cci
- qcom,qcm2290-cci
- qcom,sm8750-cci
then:
properties:
clocks:

View file

@ -34,8 +34,15 @@ properties:
- const: snps,designware-i2c
- description: Baikal-T1 SoC System I2C controller
const: baikal,bt1-sys-i2c
- description: Mobileye EyeQ DesignWare I2C controller
items:
- enum:
- mobileye,eyeq7h-i2c
- const: mobileye,eyeq6lplus-i2c
- const: snps,designware-i2c
- items:
- enum:
- mobileye,eyeq6lplus-i2c
- mscc,ocelot-i2c
- sophgo,sg2044-i2c
- thead,th1520-i2c

View file

@ -12,7 +12,7 @@ description: The Nomadik I2C host controller began its life in the ST
DB8500 after the merge of these two companies wireless divisions.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
# Need a custom select here or 'arm,primecell' will match on lots of nodes
select:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Bosch BMA255 and Similar Accelerometers
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Stephan Gerhold <stephan@gerhold.net>
description:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm's PM8xxx voltage XOADC
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Qualcomm PM8xxx PMICs contain a HK/XO ADC (Housekeeping/Crystal

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Invensense MPU-3050 Gyroscope
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -8,7 +8,7 @@ title:
Capella Microsystems CM3605 Ambient Light and Short Distance Proximity Sensor
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Kevin Tsai <ktsai@capellamicro.com>
description: |

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Sharp GP2AP002A00F and GP2AP002S00F proximity and ambient light sensors
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
Proximity and ambient light sensor with IR LED for the proximity

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Asahi Kasei AK8974 magnetometer sensor
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Yamaha YAS530 family of magnetometer sensors
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
The Yamaha YAS530 magnetometers is a line of 3-axis magnetometers

View file

@ -14,7 +14,7 @@ description: The STMicroelectronics sensor devices are pretty straight-forward
maintainers:
- Denis Ciocca <denis.ciocca@st.com>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -8,7 +8,7 @@ title: Atmel maXTouch touchscreen/touchpad
maintainers:
- Nick Dyer <nick@shmanahar.org>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
Atmel maXTouch touchscreen or touchpads such as the mXT244

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Cypress CY8CTMA140 series touchscreen controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: touchscreen.yaml#

View file

@ -12,7 +12,7 @@ description: The Cypress CY8CTMA340 series (also known as "CYTTSP" after
maintainers:
- Javier Martinez Canillas <javier@dowhile0.org>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: touchscreen.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Melfas MMS114 family touchscreen controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: touchscreen.yaml#

View file

@ -12,7 +12,7 @@ description: The Zinitix BT4xx and BT5xx series of touchscreen controllers
maintainers:
- Michael Srba <Michael.Srba@seznam.cz>
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: touchscreen.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Versatile FPGA IRQ Controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
One or more FPGA IRQ controllers can be synthesized in an ARM reference board

View file

@ -6,7 +6,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Faraday Technology FTINTC010 interrupt controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
This interrupt controller is a stock IP block from Faraday Technology found

View file

@ -8,7 +8,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP4xx XScale Networking Processors Interrupt Controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
This interrupt controller is found in the Intel IXP4xx processors.

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Kinetic Technologies KTD253 and KTD259 one-wire backlight
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Kinetic Technologies KTD253 and KTD259 are white LED backlights

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Register Bit LEDs
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |+
Register bit leds are used with syscon multifunctional devices where single

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Regulator LEDs
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
Regulator LEDs are powered by a single regulator such that they can

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Richtek RT8515 1.5A dual channel LED driver
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Richtek RT8515 is a dual channel (two mode) LED driver that

View file

@ -12,7 +12,7 @@ description: |
including IXP42x, IXP43x, IXP45x and IXP46x.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
$nodename:

View file

@ -12,7 +12,7 @@ description:
including IXP42x, IXP43x, IXP45x and IXP46x.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
intel,ixp4xx-eb-t1:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Arm Ltd Developer Platforms System Controllers
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
The Arm Ltd Integrator, Realview, and Versatile families of developer

View file

@ -12,7 +12,7 @@ description: STMicroelectronics Port Expander (STMPE) is a series of slow
peripherals connected to SPI or I2C.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
allOf:
- $ref: /schemas/spi/spi-peripheral-props.yaml#

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ST-Ericsson Analog Baseband AB8500 and AB8505
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
the AB8500 "Analog Baseband" is the mixed-signals integrated circuit

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ST-Ericsson DB8500 PRCMU - Power Reset and Control Management Unit
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
The DB8500 Power Reset and Control Management Unit is an XP70 8-bit

View file

@ -8,7 +8,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP4xx AHB Queue Manager
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The IXP4xx AHB Queue Manager maintains queues as circular buffers in

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM PrimeCell MultiMedia Card Interface (MMCI) PL180 and PL181
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
- Ulf Hansson <ulf.hansson@linaro.org>
description:

View file

@ -41,7 +41,7 @@ properties:
patternProperties:
"^sdhci@[0-9a-f]+$":
type: object
$ref: mmc-controller.yaml
$ref: sdhci-common.yaml
unevaluatedProperties: false
properties:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Firmware Suite (AFS) Partitions
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
select: false

View file

@ -14,7 +14,7 @@ description: The FLASH Image System (FIS) directory is a flash description
32 KB in size.
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
select: false

View file

@ -18,7 +18,7 @@ allOf:
- $ref: partition.yaml#
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
properties:
compatible:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Broadcom Bluetooth Chips
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
This binding describes Broadcom UART-attached bluetooth chips.

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Cortina Systems Gemini Ethernet Controller
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
This ethernet controller is found in the Gemini SoC family:

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Micrel KS8995 Family DSA Switches
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
The Micrel KS8995 DSA Switches are 100 Mbit switches that were produced in

View file

@ -10,7 +10,7 @@ allOf:
- $ref: dsa.yaml#/$defs/ethernet-ports
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
Realtek advertises these chips as fast/gigabit switches or unmanaged

View file

@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Vitesse VSC73xx DSA Switches
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description:
The Vitesse DSA Switches were produced in the early-to-mid 2000s.

View file

@ -8,7 +8,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP46x PTP Timer (TSYNC)
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Intel IXP46x PTP timer is known in the manual as IEEE1588 Hardware

View file

@ -11,7 +11,7 @@ allOf:
- $ref: ethernet-controller.yaml#
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Intel IXP4xx ethernet makes use of the IXP4xx NPE (Network

View file

@ -8,7 +8,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: Intel IXP4xx V.35 WAN High Speed Serial Link (HSS)
maintainers:
- Linus Walleij <linus.walleij@linaro.org>
- Linus Walleij <linusw@kernel.org>
description: |
The Intel IXP4xx HSS makes use of the IXP4xx NPE (Network

Some files were not shown because too many files have changed in this diff Show more