Skip to content

Commit 701a9c8

Browse files
committed
Merge tag 'char-misc-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull char/misc driver updates from Greg KH: "Here is the big char/misc/whatever driver changes for 5.6-rc1 Included in here are loads of things from a variety of different driver subsystems: - soundwire updates - binder updates - nvmem updates - firmware drivers updates - extcon driver updates - various misc driver updates - fpga driver updates - interconnect subsystem and driver updates - bus driver updates - uio driver updates - mei driver updates - w1 driver cleanups - various other small driver updates All of these have been in linux-next for a while with no reported issues" * tag 'char-misc-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (86 commits) mei: me: add jasper point DID char: hpet: Use flexible-array member binder: fix log spam for existing debugfs file creation. mei: me: add comet point (lake) H device ids nvmem: add QTI SDAM driver dt-bindings: nvmem: add binding for QTI SPMI SDAM dt-bindings: imx-ocotp: Add i.MX8MP compatible dt-bindings: soundwire: fix example soundwire: cadence: fix kernel-doc parameter descriptions soundwire: intel: report slave_ids for each link to SOF driver siox: Use the correct style for SPDX License Identifier w1: omap-hdq: Simplify driver with PM runtime autosuspend firmware: stratix10-svc: Remove unneeded semicolon firmware: google: Probe for a GSMI handler in firmware firmware: google: Unregister driver_info on failure and exit in gsmi firmware: google: Release devices before unregistering the bus slimbus: qcom: add missed clk_disable_unprepare in remove slimbus: Use the correct style for SPDX License Identifier slimbus: qcom-ngd-ctrl: Use dma_request_chan() instead dma_request_slave_channel() dt-bindings: SLIMBus: add slim devices optional properties ...
2 parents 975f9ce + 0db4a15 commit 701a9c8

Some content is hidden

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

76 files changed

+3128
-697
lines changed
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/interconnect/qcom,msm8916.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm MSM8916 Network-On-Chip interconnect
8+
9+
maintainers:
10+
- Georgi Djakov <[email protected]>
11+
12+
description: |
13+
The Qualcomm MSM8916 interconnect providers support adjusting the
14+
bandwidth requirements between the various NoC fabrics.
15+
16+
properties:
17+
compatible:
18+
enum:
19+
- qcom,msm8916-bimc
20+
- qcom,msm8916-pcnoc
21+
- qcom,msm8916-snoc
22+
23+
reg:
24+
maxItems: 1
25+
26+
'#interconnect-cells':
27+
const: 1
28+
29+
clock-names:
30+
items:
31+
- const: bus
32+
- const: bus_a
33+
34+
clocks:
35+
items:
36+
- description: Bus Clock
37+
- description: Bus A Clock
38+
39+
required:
40+
- compatible
41+
- reg
42+
- '#interconnect-cells'
43+
- clock-names
44+
- clocks
45+
46+
additionalProperties: false
47+
48+
examples:
49+
- |
50+
#include <dt-bindings/clock/qcom,rpmcc.h>
51+
52+
bimc: interconnect@400000 {
53+
compatible = "qcom,msm8916-bimc";
54+
reg = <0x00400000 0x62000>;
55+
#interconnect-cells = <1>;
56+
clock-names = "bus", "bus_a";
57+
clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
58+
<&rpmcc RPM_SMD_BIMC_A_CLK>;
59+
};
60+
61+
pcnoc: interconnect@500000 {
62+
compatible = "qcom,msm8916-pcnoc";
63+
reg = <0x00500000 0x11000>;
64+
#interconnect-cells = <1>;
65+
clock-names = "bus", "bus_a";
66+
clocks = <&rpmcc RPM_SMD_PCNOC_CLK>,
67+
<&rpmcc RPM_SMD_PCNOC_A_CLK>;
68+
};
69+
70+
snoc: interconnect@580000 {
71+
compatible = "qcom,msm8916-snoc";
72+
reg = <0x00580000 0x14000>;
73+
#interconnect-cells = <1>;
74+
clock-names = "bus", "bus_a";
75+
clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
76+
<&rpmcc RPM_SMD_SNOC_A_CLK>;
77+
};

Documentation/devicetree/bindings/nvmem/imx-ocotp.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Freescale i.MX6 On-Chip OTP Controller (OCOTP) device tree bindings
22

33
This binding represents the on-chip eFuse OTP controller found on
44
i.MX6Q/D, i.MX6DL/S, i.MX6SL, i.MX6SX, i.MX6UL, i.MX6ULL/ULZ, i.MX6SLL,
5-
i.MX7D/S, i.MX7ULP, i.MX8MQ, i.MX8MM and i.MX8MN SoCs.
5+
i.MX7D/S, i.MX7ULP, i.MX8MQ, i.MX8MM, i.MX8MN and i.MX8MP SoCs.
66

77
Required properties:
88
- compatible: should be one of
@@ -17,6 +17,7 @@ Required properties:
1717
"fsl,imx8mq-ocotp" (i.MX8MQ),
1818
"fsl,imx8mm-ocotp" (i.MX8MM),
1919
"fsl,imx8mn-ocotp" (i.MX8MN),
20+
"fsl,imx8mp-ocotp" (i.MX8MP),
2021
followed by "syscon".
2122
- #address-cells : Should be 1
2223
- #size-cells : Should be 1
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/nvmem/qcom,spmi-sdam.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Technologies, Inc. SPMI SDAM DT bindings
8+
9+
maintainers:
10+
- Shyam Kumar Thella <[email protected]>
11+
12+
description: |
13+
The SDAM provides scratch register space for the PMIC clients. This
14+
memory can be used by software to store information or communicate
15+
to/from the PBUS.
16+
17+
allOf:
18+
- $ref: "nvmem.yaml#"
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- qcom,spmi-sdam
24+
25+
reg:
26+
maxItems: 1
27+
28+
"#address-cells":
29+
const: 1
30+
31+
"#size-cells":
32+
const: 1
33+
34+
ranges: true
35+
36+
required:
37+
- compatible
38+
- reg
39+
- ranges
40+
41+
patternProperties:
42+
"^.*@[0-9a-f]+$":
43+
type: object
44+
45+
properties:
46+
reg:
47+
maxItems: 1
48+
description:
49+
Offset and size in bytes within the storage device.
50+
51+
bits:
52+
$ref: /schemas/types.yaml#/definitions/uint32-array
53+
maxItems: 1
54+
items:
55+
items:
56+
- minimum: 0
57+
maximum: 7
58+
description:
59+
Offset in bit within the address range specified by reg.
60+
- minimum: 1
61+
description:
62+
Size in bit within the address range specified by reg.
63+
64+
required:
65+
- reg
66+
67+
additionalProperties: false
68+
69+
examples:
70+
- |
71+
sdam_1: nvram@b000 {
72+
#address-cells = <1>;
73+
#size-cells = <1>;
74+
compatible = "qcom,spmi-sdam";
75+
reg = <0xb000 0x100>;
76+
ranges = <0 0xb000 0x100>;
77+
78+
/* Data cells */
79+
restart_reason: restart@50 {
80+
reg = <0x50 0x1>;
81+
bits = <6 2>;
82+
};
83+
};
84+
...

Documentation/devicetree/bindings/slimbus/bus.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@ Required property for SLIMbus child node if it is present:
3232
Product Code, shall be in lower case hexadecimal with leading
3333
zeroes suppressed
3434

35+
Optional property for SLIMbus child node if it is present:
36+
- slim-ifc-dev - Should be phandle to SLIMBus Interface device.
37+
Required for devices which deal with streams.
38+
3539
SLIMbus example for Qualcomm's slimbus manager component:
3640

3741
slim@28080000 {
@@ -43,8 +47,14 @@ SLIMbus example for Qualcomm's slimbus manager component:
4347
#address-cells = <2>;
4448
#size-cell = <0>;
4549

50+
codec_ifd: ifd@0,0{
51+
compatible = "slim217,60";
52+
reg = <0 0>;
53+
};
54+
4655
codec: wcd9310@1,0{
4756
compatible = "slim217,60";
4857
reg = <1 0>;
58+
slim-ifc-dev = <&codec_ifd>;
4959
};
5060
};
Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
Qualcomm SoundWire Controller Bindings
2+
3+
4+
This binding describes the Qualcomm SoundWire Controller along with its
5+
board specific bus parameters.
6+
7+
- compatible:
8+
Usage: required
9+
Value type: <stringlist>
10+
Definition: must be "qcom,soundwire-v<MAJOR>.<MINOR>.<STEP>",
11+
Example:
12+
"qcom,soundwire-v1.3.0"
13+
"qcom,soundwire-v1.5.0"
14+
"qcom,soundwire-v1.6.0"
15+
- reg:
16+
Usage: required
17+
Value type: <prop-encoded-array>
18+
Definition: the base address and size of SoundWire controller
19+
address space.
20+
21+
- interrupts:
22+
Usage: required
23+
Value type: <prop-encoded-array>
24+
Definition: should specify the SoundWire Controller IRQ
25+
26+
- clock-names:
27+
Usage: required
28+
Value type: <stringlist>
29+
Definition: should be "iface" for SoundWire Controller interface clock
30+
31+
- clocks:
32+
Usage: required
33+
Value type: <prop-encoded-array>
34+
Definition: should specify the SoundWire Controller interface clock
35+
36+
- #sound-dai-cells:
37+
Usage: required
38+
Value type: <u32>
39+
Definition: must be 1 for digital audio interfaces on the controller.
40+
41+
- qcom,dout-ports:
42+
Usage: required
43+
Value type: <u32>
44+
Definition: must be count of data out ports
45+
46+
- qcom,din-ports:
47+
Usage: required
48+
Value type: <u32>
49+
Definition: must be count of data in ports
50+
51+
- qcom,ports-offset1:
52+
Usage: required
53+
Value type: <prop-encoded-array>
54+
Definition: should specify payload transport window offset1 of each
55+
data port. Out ports followed by In ports.
56+
More info in MIPI Alliance SoundWire 1.0 Specifications.
57+
58+
- qcom,ports-offset2:
59+
Usage: required
60+
Value type: <prop-encoded-array>
61+
Definition: should specify payload transport window offset2 of each
62+
data port. Out ports followed by In ports.
63+
More info in MIPI Alliance SoundWire 1.0 Specifications.
64+
65+
- qcom,ports-sinterval-low:
66+
Usage: required
67+
Value type: <prop-encoded-array>
68+
Definition: should be sample interval low of each data port.
69+
Out ports followed by In ports. Used for Sample Interval
70+
calculation.
71+
More info in MIPI Alliance SoundWire 1.0 Specifications.
72+
73+
- qcom,ports-word-length:
74+
Usage: optional
75+
Value type: <prop-encoded-array>
76+
Definition: should be size of payload channel sample.
77+
More info in MIPI Alliance SoundWire 1.0 Specifications.
78+
79+
- qcom,ports-block-pack-mode:
80+
Usage: optional
81+
Value type: <prop-encoded-array>
82+
Definition: should be 0 or 1 to indicate the block packing mode.
83+
0 to indicate Blocks are per Channel
84+
1 to indicate Blocks are per Port.
85+
Out ports followed by In ports.
86+
More info in MIPI Alliance SoundWire 1.0 Specifications.
87+
88+
- qcom,ports-block-group-count:
89+
Usage: optional
90+
Value type: <prop-encoded-array>
91+
Definition: should be in range 1 to 4 to indicate how many sample
92+
intervals are combined into a payload.
93+
Out ports followed by In ports.
94+
More info in MIPI Alliance SoundWire 1.0 Specifications.
95+
96+
- qcom,ports-lane-control:
97+
Usage: optional
98+
Value type: <prop-encoded-array>
99+
Definition: should be in range 0 to 7 to identify which data lane
100+
the data port uses.
101+
Out ports followed by In ports.
102+
More info in MIPI Alliance SoundWire 1.0 Specifications.
103+
104+
- qcom,ports-hstart:
105+
Usage: optional
106+
Value type: <prop-encoded-array>
107+
Definition: should be number identifying lowerst numbered coloum in
108+
SoundWire Frame, i.e. left edge of the Transport sub-frame
109+
for each port. Values between 0 and 15 are valid.
110+
Out ports followed by In ports.
111+
More info in MIPI Alliance SoundWire 1.0 Specifications.
112+
113+
- qcom,ports-hstop:
114+
Usage: optional
115+
Value type: <prop-encoded-array>
116+
Definition: should be number identifying highest numbered coloum in
117+
SoundWire Frame, i.e. the right edge of the Transport
118+
sub-frame for each port. Values between 0 and 15 are valid.
119+
Out ports followed by In ports.
120+
More info in MIPI Alliance SoundWire 1.0 Specifications.
121+
122+
- qcom,dports-type:
123+
Usage: optional
124+
Value type: <prop-encoded-array>
125+
Definition: should be one of the following types
126+
0 for reduced port
127+
1 for simple ports
128+
2 for full port
129+
Out ports followed by In ports.
130+
More info in MIPI Alliance SoundWire 1.0 Specifications.
131+
132+
Note:
133+
More Information on detail of encoding of these fields can be
134+
found in MIPI Alliance SoundWire 1.0 Specifications.
135+
136+
= SoundWire devices
137+
Each subnode of the bus represents SoundWire device attached to it.
138+
The properties of these nodes are defined by the individual bindings.
139+
140+
= EXAMPLE
141+
The following example represents a SoundWire controller on DB845c board
142+
which has controller integrated inside WCD934x codec on SDM845 SoC.
143+
144+
soundwire: soundwire@c85 {
145+
compatible = "qcom,soundwire-v1.3.0";
146+
reg = <0xc85 0x20>;
147+
interrupts = <20 IRQ_TYPE_EDGE_RISING>;
148+
clocks = <&wcc>;
149+
clock-names = "iface";
150+
#sound-dai-cells = <1>;
151+
qcom,dports-type = <0>;
152+
qcom,dout-ports = <6>;
153+
qcom,din-ports = <2>;
154+
qcom,ports-sinterval-low = /bits/ 8 <0x07 0x1F 0x3F 0x7 0x1F 0x3F 0x0F 0x0F>;
155+
qcom,ports-offset1 = /bits/ 8 <0x01 0x02 0x0C 0x6 0x12 0x0D 0x07 0x0A >;
156+
qcom,ports-offset2 = /bits/ 8 <0x00 0x00 0x1F 0x00 0x00 0x1F 0x00 0x00>;
157+
158+
/* Left Speaker */
159+
left{
160+
....
161+
};
162+
163+
/* Right Speaker */
164+
right{
165+
....
166+
};
167+
};

Documentation/devicetree/bindings/soundwire/soundwire-controller.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,13 +69,15 @@ examples:
6969
reg = <0 1>;
7070
powerdown-gpios = <&wcdpinctrl 2 0>;
7171
#thermal-sensor-cells = <0>;
72+
#sound-dai-cells = <0>;
7273
};
7374
7475
speaker@0,2 {
7576
compatible = "sdw10217201000";
7677
reg = <0 2>;
7778
powerdown-gpios = <&wcdpinctrl 2 0>;
7879
#thermal-sensor-cells = <0>;
80+
#sound-dai-cells = <0>;
7981
};
8082
};
8183

0 commit comments

Comments
 (0)