Skip to content

Commit a67c554

Browse files
committed
ASoC: nau8822: add support for supply regulators
Alexey Charkov <alchark@flipper.net> says: The Nuvoton NAU8822 codec has four power supply pins: VDDA, VDDB, VDDC and VDDSPK, which must be online and stable before the device can be accessed over I2C. On boards where these rails are software-controlled, probing the codec before the regulators are up results in -ENXIO errors during register access. This short series adds optional regulator support to both the device tree binding and the driver, so platforms that need explicit power sequencing can describe and enforce it: Link: https://patch.msgid.link/20260525-nau8822-reg-v2-0-7d37ae393e46@flipper.net
2 parents 6c52e58 + f8e7cd4 commit a67c554

392 files changed

Lines changed: 4788 additions & 2165 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.mailmap

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -263,8 +263,9 @@ Enric Balletbo i Serra <eballetbo@kernel.org> <enric.balletbo@collabora.com>
263263
Enric Balletbo i Serra <eballetbo@kernel.org> <eballetbo@iseebcn.com>
264264
Erik Kaneda <erik.kaneda@intel.com> <erik.schmauss@intel.com>
265265
Ethan Carter Edwards <ethan@ethancedwards.com> Ethan Edwards <ethancarteredwards@gmail.com>
266-
Eugen Hristev <eugen.hristev@linaro.org> <eugen.hristev@microchip.com>
267-
Eugen Hristev <eugen.hristev@linaro.org> <eugen.hristev@collabora.com>
266+
Eugen Hristev <ehristev@kernel.org> <eugen.hristev@microchip.com>
267+
Eugen Hristev <ehristev@kernel.org> <eugen.hristev@linaro.org>
268+
Eugen Hristev <ehristev@kernel.org> <eugen.hristev@collabora.com>
268269
Evgeniy Polyakov <johnpol@2ka.mipt.ru>
269270
Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> <ezequiel@collabora.com>
270271
Faith Ekstrand <faith.ekstrand@collabora.com> <jason@jlekstrand.net>
@@ -339,6 +340,7 @@ Henrik Rydberg <rydberg@bitmath.org>
339340
Herbert Xu <herbert@gondor.apana.org.au>
340341
Huacai Chen <chenhuacai@kernel.org> <chenhc@lemote.com>
341342
Huacai Chen <chenhuacai@kernel.org> <chenhuacai@loongson.cn>
343+
Ian Ray <ian.ray@gehealthcare.com> <ian.ray@ge.com>
342344
Ignat Korchagin <ignat@linux.win> <ignat@cloudflare.com>
343345
Igor Korotin <igor.korotin@linux.dev> <igor.korotin.linux@gmail.com>
344346
Ike Panhc <ikepanhc@gmail.com> <ike.pan@canonical.com>

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -789,24 +789,6 @@ Kernel parameters
789789
cio_ignore= [S390]
790790
See Documentation/arch/s390/common_io.rst for details.
791791

792-
clearcpuid=X[,X...] [X86]
793-
Disable CPUID feature X for the kernel. See
794-
arch/x86/include/asm/cpufeatures.h for the valid bit
795-
numbers X. Note the Linux-specific bits are not necessarily
796-
stable over kernel options, but the vendor-specific
797-
ones should be.
798-
X can also be a string as appearing in the flags: line
799-
in /proc/cpuinfo which does not have the above
800-
instability issue. However, not all features have names
801-
in /proc/cpuinfo.
802-
Note that using this option will taint your kernel.
803-
Also note that user programs calling CPUID directly
804-
or using the feature without checking anything
805-
will still see it. This just prevents it from
806-
being used by the kernel or shown in /proc/cpuinfo.
807-
Also note the kernel might malfunction if you disable
808-
some critical bits.
809-
810792
clk_ignore_unused
811793
[CLK]
812794
Prevents the clock framework from automatically gating

Documentation/arch/x86/cpuinfo.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,10 @@ to disable features using the feature number as defined in
187187
Protection can be disabled using clearcpuid=514. The number 514 is calculated
188188
from #define X86_FEATURE_UMIP (16*32 + 2).
189189

190+
DO NOT USE this cmdline option in production - it is meant to be used only as
191+
a quick'n'dirty debugging aid to rule out a feature-enabling code is the
192+
culprit. If you use it, it'll taint the kernel.
193+
190194
In addition, there exists a variety of custom command-line parameters that
191195
disable specific features. The list of parameters includes, but is not limited
192196
to, nofsgsbase, nosgx, noxsave, etc. 5-level paging can also be disabled using

Documentation/devicetree/bindings/sound/nuvoton,nau8822.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,20 @@ properties:
3030
clock-names:
3131
const: mclk
3232

33+
vdda-supply:
34+
description: Analog power supply
35+
36+
vddb-supply:
37+
description: Digital buffer (input/output) supply
38+
39+
vddc-supply:
40+
description: Digital core supply
41+
42+
vddspk-supply:
43+
description:
44+
Speaker supply (power supply pin for RSPKOUT, LSPKOUT, AUXOUT2 and
45+
AUXTOUT1 output drivers)
46+
3347
nuvoton,spk-btl:
3448
description:
3549
If set, configure the two loudspeaker outputs as a Bridge Tied Load output
@@ -54,5 +68,9 @@ examples:
5468
codec@1a {
5569
compatible = "nuvoton,nau8822";
5670
reg = <0x1a>;
71+
vdda-supply = <&vcca_3v3_s0>;
72+
vddb-supply = <&vcca_3v3_s0>;
73+
vddc-supply = <&vcca_3v3_s0>;
74+
vddspk-supply = <&vcca_3v3_s0>;
5775
};
5876
};

Documentation/devicetree/bindings/spi/qcom,spi-qpic-snand.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ properties:
2525
- items:
2626
- enum:
2727
- qcom,ipq5018-snand
28+
- qcom,ipq5210-snand
2829
- qcom,ipq5332-snand
2930
- qcom,ipq5424-snand
3031
- const: qcom,ipq9574-snand

Documentation/devicetree/bindings/usb/eswin,eic7700-usb.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,13 @@ properties:
4141
- const: usb_en
4242

4343
resets:
44-
maxItems: 2
44+
maxItems: 3
4545

4646
reset-names:
4747
items:
4848
- const: vaux
4949
- const: usb_rst
50+
- const: usb_phy
5051

5152
eswin,hsp-sp-csr:
5253
description:
@@ -85,8 +86,8 @@ examples:
8586
interrupt-parent = <&plic>;
8687
interrupts = <85>;
8788
interrupt-names = "peripheral";
88-
resets = <&reset 84>, <&hspcrg 2>;
89-
reset-names = "vaux", "usb_rst";
89+
resets = <&reset 84>, <&hspcrg 2>, <&hspcrg 4>;
90+
reset-names = "vaux", "usb_rst", "usb_phy";
9091
dr_mode = "peripheral";
9192
maximum-speed = "high-speed";
9293
phy_type = "utmi";

Documentation/devicetree/bindings/usb/ti,omap4-musb.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,7 @@ properties:
8181
const: usb2-phy
8282

8383
usb-phy:
84-
$ref: /schemas/types.yaml#/definitions/phandle-array
85-
description: Phandle for the PHY device.
86-
deprecated: true
84+
maxItems: 1
8785

8886
ctrl-module:
8987
$ref: /schemas/types.yaml#/definitions/phandle
@@ -96,6 +94,9 @@ required:
9694
- interrupts
9795
- interrupt-names
9896

97+
allOf:
98+
- $ref: usb-hcd.yaml#
99+
99100
unevaluatedProperties: false
100101

101102
examples:

Documentation/netlink/specs/handshake.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ protocol: genetlink
1212
doc: Netlink protocol to request a transport layer security handshake.
1313

1414
definitions:
15+
-
16+
type: const
17+
name: max-errno
18+
value: 4095
19+
header: linux/err.h
20+
scope: kernel
1521
-
1622
type: enum
1723
name: handler-class
@@ -80,6 +86,8 @@ attribute-sets:
8086
-
8187
name: status
8288
type: u32
89+
checks:
90+
max: max-errno
8391
-
8492
name: sockfd
8593
type: s32

MAINTAINERS

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1150,8 +1150,9 @@ F: Documentation/arch/x86/amd-hfi.rst
11501150
F: drivers/platform/x86/amd/hfi/
11511151

11521152
AMD IOMMU (AMD-VI)
1153-
M: Joerg Roedel <joro@8bytes.org>
1153+
M: Joerg Roedel (AMD) <joro@8bytes.org>
11541154
R: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
1155+
R: Vasant Hegde <vasant.hegde@amd.com>
11551156
L: iommu@lists.linux.dev
11561157
S: Maintained
11571158
T: git git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux.git
@@ -10835,7 +10836,7 @@ F: include/linux/generic-radix-tree.h
1083510836
F: lib/generic-radix-tree.c
1083610837

1083710838
GENERIC RESISTIVE TOUCHSCREEN ADC DRIVER
10838-
M: Eugen Hristev <eugen.hristev@microchip.com>
10839+
M: Eugen Hristev <ehristev@kernel.org>
1083910840
L: linux-input@vger.kernel.org
1084010841
S: Maintained
1084110842
F: drivers/input/touchscreen/resistive-adc-touch.c
@@ -13483,7 +13484,7 @@ F: include/linux/iommu-dma.h
1348313484
F: include/linux/iova.h
1348413485

1348513486
IOMMU SUBSYSTEM
13486-
M: Joerg Roedel <joro@8bytes.org>
13487+
M: Joerg Roedel (AMD) <joro@8bytes.org>
1348713488
M: Will Deacon <will@kernel.org>
1348813489
R: Robin Murphy <robin.murphy@arm.com>
1348913490
L: iommu@lists.linux.dev
@@ -16506,7 +16507,7 @@ F: drivers/usb/mtu3/
1650616507

1650716508
MEGACHIPS STDPXXXX-GE-B850V3-FW LVDS/DP++ BRIDGES
1650816509
M: Peter Senna Tschudin <peter.senna@gmail.com>
16509-
M: Ian Ray <ian.ray@ge.com>
16510+
M: Ian Ray <ian.ray@gehealthcare.com>
1651016511
M: Martyn Welch <martyn.welch@collabora.co.uk>
1651116512
S: Maintained
1651216513
F: Documentation/devicetree/bindings/display/bridge/megachips-stdpxxxx-ge-b850v3-fw.txt
@@ -17345,7 +17346,7 @@ F: Documentation/devicetree/bindings/sound/mikroe,mikroe-proto.txt
1734517346
F: sound/soc/atmel
1734617347

1734717348
MICROCHIP CSI2DC DRIVER
17348-
M: Eugen Hristev <eugen.hristev@microchip.com>
17349+
M: Eugen Hristev <ehristev@kernel.org>
1734917350
L: linux-media@vger.kernel.org
1735017351
S: Supported
1735117352
F: Documentation/devicetree/bindings/media/microchip,csi2dc.yaml
@@ -17372,7 +17373,7 @@ F: drivers/i2c/busses/i2c-at91-*.c
1737217373
F: drivers/i2c/busses/i2c-at91.h
1737317374

1737417375
MICROCHIP ISC DRIVER
17375-
M: Eugen Hristev <eugen.hristev@microchip.com>
17376+
M: Eugen Hristev <ehristev@kernel.org>
1737617377
L: linux-media@vger.kernel.org
1737717378
S: Supported
1737817379
F: Documentation/devicetree/bindings/media/atmel,isc.yaml
@@ -17384,7 +17385,7 @@ F: drivers/staging/media/deprecated/atmel/atmel-sama*-isc*
1738417385
F: include/linux/atmel-isc-media.h
1738517386

1738617387
MICROCHIP ISI DRIVER
17387-
M: Eugen Hristev <eugen.hristev@microchip.com>
17388+
M: Eugen Hristev <ehristev@kernel.org>
1738817389
L: linux-media@vger.kernel.org
1738917390
S: Supported
1739017391
F: drivers/media/platform/atmel/atmel-isi.c
@@ -17574,7 +17575,7 @@ F: Documentation/devicetree/bindings/display/bridge/microchip,sam9x75-lvds.yaml
1757417575
F: drivers/gpu/drm/bridge/microchip-lvds.c
1757517576

1757617577
MICROCHIP SAMA5D2-COMPATIBLE ADC DRIVER
17577-
M: Eugen Hristev <eugen.hristev@microchip.com>
17578+
M: Eugen Hristev <ehristev@kernel.org>
1757817579
L: linux-iio@vger.kernel.org
1757917580
S: Supported
1758017581
F: Documentation/devicetree/bindings/iio/adc/atmel,sama5d2-adc.yaml
@@ -24124,7 +24125,7 @@ F: drivers/mmc/host/sdhci*
2412424125

2412524126
SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) MICROCHIP DRIVER
2412624127
M: Aubin Constans <aubin.constans@microchip.com>
24127-
R: Eugen Hristev <eugen.hristev@collabora.com>
24128+
R: Eugen Hristev <ehristev@kernel.org>
2412824129
L: linux-mmc@vger.kernel.org
2412924130
S: Supported
2413024131
F: drivers/mmc/host/sdhci-of-at91.c

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
VERSION = 7
33
PATCHLEVEL = 1
44
SUBLEVEL = 0
5-
EXTRAVERSION = -rc5
5+
EXTRAVERSION = -rc6
66
NAME = Baby Opossum Posse
77

88
# *DOCUMENTATION*

0 commit comments

Comments
 (0)