Skip to content

Commit 674b0dd

Browse files
committed
Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Pull SCSI updates from James Bottomley: "Usual driver updates (ufs, mpi3mr, lpfc, pm80xx, mpt3sas) plus assorted cleanups and fixes. The only core update is to sd.c and is mostly cosmetic" * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (105 commits) scsi: MAINTAINERS: Update FC element owners scsi: mpt3sas: Update driver version to 54.100.00.00 scsi: mpt3sas: Add support for 22.5 Gbps SAS link rate scsi: mpt3sas: Suppress unnecessary IOCLogInfo on CONFIG_INVALID_PAGE scsi: mpt3sas: Fix crash in transport port remove by using ioc_info() scsi: ufs: ufs-qcom: Add support for limiting HS gear and rate scsi: ufs: pltfrm: Add DT support to limit HS gear and gear rate scsi: ufs: ufs-qcom: Remove redundant re-assignment to hs_rate scsi: ufs: dt-bindings: Document gear and rate limit properties scsi: ufs: core: Fix data race in CPU latency PM QoS request handling scsi: libfc: Fix potential buffer overflow in fc_ct_ms_fill() scsi: storvsc: Remove redundant ternary operators scsi: ufs: core: Change MCQ interrupt enable flow scsi: smartpqi: Replace kmalloc() + copy_from_user() with memdup_user() scsi: hpsa: Replace kmalloc() + copy_from_user() with memdup_user() scsi: hpsa: Fix potential memory leak in hpsa_big_passthru_ioctl() scsi: lpfc: Copyright updates for 14.4.0.11 patches scsi: lpfc: Update lpfc version to 14.4.0.11 scsi: lpfc: Convert debugfs directory counts from atomic to unsigned int scsi: lpfc: Clean up extraneous phba dentries ...
2 parents 7dbec0b + fb64151 commit 674b0dd

Some content is hidden

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

80 files changed

+1633
-1142
lines changed
Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/ufs/qcom,sc7180-ufshc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm SC7180 and Other SoCs UFS Controllers
8+
9+
maintainers:
10+
- Bjorn Andersson <[email protected]>
11+
12+
# Select only our matches, not all jedec,ufs-2.0
13+
select:
14+
properties:
15+
compatible:
16+
contains:
17+
enum:
18+
- qcom,msm8998-ufshc
19+
- qcom,qcs8300-ufshc
20+
- qcom,sa8775p-ufshc
21+
- qcom,sc7180-ufshc
22+
- qcom,sc7280-ufshc
23+
- qcom,sc8180x-ufshc
24+
- qcom,sc8280xp-ufshc
25+
- qcom,sm8250-ufshc
26+
- qcom,sm8350-ufshc
27+
- qcom,sm8450-ufshc
28+
- qcom,sm8550-ufshc
29+
required:
30+
- compatible
31+
32+
properties:
33+
compatible:
34+
items:
35+
- enum:
36+
- qcom,msm8998-ufshc
37+
- qcom,qcs8300-ufshc
38+
- qcom,sa8775p-ufshc
39+
- qcom,sc7180-ufshc
40+
- qcom,sc7280-ufshc
41+
- qcom,sc8180x-ufshc
42+
- qcom,sc8280xp-ufshc
43+
- qcom,sm8250-ufshc
44+
- qcom,sm8350-ufshc
45+
- qcom,sm8450-ufshc
46+
- qcom,sm8550-ufshc
47+
- const: qcom,ufshc
48+
- const: jedec,ufs-2.0
49+
50+
reg:
51+
maxItems: 1
52+
53+
reg-names:
54+
items:
55+
- const: std
56+
57+
clocks:
58+
minItems: 7
59+
maxItems: 8
60+
61+
clock-names:
62+
minItems: 7
63+
items:
64+
- const: core_clk
65+
- const: bus_aggr_clk
66+
- const: iface_clk
67+
- const: core_clk_unipro
68+
- const: ref_clk
69+
- const: tx_lane0_sync_clk
70+
- const: rx_lane0_sync_clk
71+
- const: rx_lane1_sync_clk
72+
73+
qcom,ice:
74+
$ref: /schemas/types.yaml#/definitions/phandle
75+
description: phandle to the Inline Crypto Engine node
76+
77+
required:
78+
- compatible
79+
- reg
80+
81+
allOf:
82+
- $ref: qcom,ufs-common.yaml
83+
84+
- if:
85+
properties:
86+
compatible:
87+
contains:
88+
enum:
89+
- qcom,sc7180-ufshc
90+
then:
91+
properties:
92+
clocks:
93+
maxItems: 7
94+
clock-names:
95+
maxItems: 7
96+
else:
97+
properties:
98+
clocks:
99+
minItems: 8
100+
clock-names:
101+
minItems: 8
102+
103+
unevaluatedProperties: false
104+
105+
examples:
106+
- |
107+
#include <dt-bindings/clock/qcom,gcc-sm8450.h>
108+
#include <dt-bindings/clock/qcom,rpmh.h>
109+
#include <dt-bindings/gpio/gpio.h>
110+
#include <dt-bindings/interconnect/qcom,sm8450.h>
111+
#include <dt-bindings/interrupt-controller/arm-gic.h>
112+
113+
soc {
114+
#address-cells = <2>;
115+
#size-cells = <2>;
116+
117+
ufs@1d84000 {
118+
compatible = "qcom,sm8450-ufshc", "qcom,ufshc",
119+
"jedec,ufs-2.0";
120+
reg = <0x0 0x01d84000 0x0 0x3000>;
121+
interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
122+
phys = <&ufs_mem_phy_lanes>;
123+
phy-names = "ufsphy";
124+
lanes-per-direction = <2>;
125+
#reset-cells = <1>;
126+
resets = <&gcc GCC_UFS_PHY_BCR>;
127+
reset-names = "rst";
128+
reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
129+
130+
vcc-supply = <&vreg_l7b_2p5>;
131+
vcc-max-microamp = <1100000>;
132+
vccq-supply = <&vreg_l9b_1p2>;
133+
vccq-max-microamp = <1200000>;
134+
135+
power-domains = <&gcc UFS_PHY_GDSC>;
136+
iommus = <&apps_smmu 0xe0 0x0>;
137+
interconnects = <&aggre1_noc MASTER_UFS_MEM &mc_virt SLAVE_EBI1>,
138+
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_UFS_MEM_CFG>;
139+
interconnect-names = "ufs-ddr", "cpu-ufs";
140+
141+
clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
142+
<&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
143+
<&gcc GCC_UFS_PHY_AHB_CLK>,
144+
<&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
145+
<&rpmhcc RPMH_CXO_CLK>,
146+
<&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
147+
<&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
148+
<&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
149+
clock-names = "core_clk",
150+
"bus_aggr_clk",
151+
"iface_clk",
152+
"core_clk_unipro",
153+
"ref_clk",
154+
"tx_lane0_sync_clk",
155+
"rx_lane0_sync_clk",
156+
"rx_lane1_sync_clk";
157+
freq-table-hz = <75000000 300000000>,
158+
<0 0>,
159+
<0 0>,
160+
<75000000 300000000>,
161+
<75000000 300000000>,
162+
<0 0>,
163+
<0 0>,
164+
<0 0>;
165+
qcom,ice = <&ice>;
166+
};
167+
};
Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/ufs/qcom,sm8650-ufshc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm SM8650 and Other SoCs UFS Controllers
8+
9+
maintainers:
10+
- Bjorn Andersson <[email protected]>
11+
12+
# Select only our matches, not all jedec,ufs-2.0
13+
select:
14+
properties:
15+
compatible:
16+
contains:
17+
enum:
18+
- qcom,sm8650-ufshc
19+
- qcom,sm8750-ufshc
20+
required:
21+
- compatible
22+
23+
properties:
24+
compatible:
25+
items:
26+
- enum:
27+
- qcom,sm8650-ufshc
28+
- qcom,sm8750-ufshc
29+
- const: qcom,ufshc
30+
- const: jedec,ufs-2.0
31+
32+
reg:
33+
minItems: 1
34+
maxItems: 2
35+
36+
reg-names:
37+
minItems: 1
38+
items:
39+
- const: std
40+
- const: mcq
41+
42+
clocks:
43+
minItems: 8
44+
maxItems: 8
45+
46+
clock-names:
47+
items:
48+
- const: core_clk
49+
- const: bus_aggr_clk
50+
- const: iface_clk
51+
- const: core_clk_unipro
52+
- const: ref_clk
53+
- const: tx_lane0_sync_clk
54+
- const: rx_lane0_sync_clk
55+
- const: rx_lane1_sync_clk
56+
57+
qcom,ice:
58+
$ref: /schemas/types.yaml#/definitions/phandle
59+
description: phandle to the Inline Crypto Engine node
60+
61+
required:
62+
- compatible
63+
- reg
64+
65+
allOf:
66+
- $ref: qcom,ufs-common.yaml
67+
68+
unevaluatedProperties: false
69+
70+
examples:
71+
- |
72+
#include <dt-bindings/clock/qcom,sm8650-gcc.h>
73+
#include <dt-bindings/clock/qcom,sm8650-tcsr.h>
74+
#include <dt-bindings/clock/qcom,rpmh.h>
75+
#include <dt-bindings/gpio/gpio.h>
76+
#include <dt-bindings/interconnect/qcom,icc.h>
77+
#include <dt-bindings/interconnect/qcom,sm8650-rpmh.h>
78+
#include <dt-bindings/interrupt-controller/arm-gic.h>
79+
80+
soc {
81+
#address-cells = <2>;
82+
#size-cells = <2>;
83+
84+
ufshc@1d84000 {
85+
compatible = "qcom,sm8650-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
86+
reg = <0x0 0x01d84000 0x0 0x3000>;
87+
88+
interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH 0>;
89+
90+
clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
91+
<&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
92+
<&gcc GCC_UFS_PHY_AHB_CLK>,
93+
<&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
94+
<&tcsr TCSR_UFS_PAD_CLKREF_EN>,
95+
<&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
96+
<&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
97+
<&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
98+
clock-names = "core_clk",
99+
"bus_aggr_clk",
100+
"iface_clk",
101+
"core_clk_unipro",
102+
"ref_clk",
103+
"tx_lane0_sync_clk",
104+
"rx_lane0_sync_clk",
105+
"rx_lane1_sync_clk";
106+
107+
resets = <&gcc GCC_UFS_PHY_BCR>;
108+
reset-names = "rst";
109+
reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
110+
111+
interconnects = <&aggre1_noc MASTER_UFS_MEM QCOM_ICC_TAG_ALWAYS
112+
&mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>,
113+
<&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ACTIVE_ONLY
114+
&config_noc SLAVE_UFS_MEM_CFG QCOM_ICC_TAG_ACTIVE_ONLY>;
115+
interconnect-names = "ufs-ddr",
116+
"cpu-ufs";
117+
118+
power-domains = <&gcc UFS_PHY_GDSC>;
119+
required-opps = <&rpmhpd_opp_nom>;
120+
121+
operating-points-v2 = <&ufs_opp_table>;
122+
123+
iommus = <&apps_smmu 0x60 0>;
124+
125+
lanes-per-direction = <2>;
126+
qcom,ice = <&ice>;
127+
128+
phys = <&ufs_mem_phy>;
129+
phy-names = "ufsphy";
130+
131+
#reset-cells = <1>;
132+
133+
vcc-supply = <&vreg_l7b_2p5>;
134+
vcc-max-microamp = <1100000>;
135+
vccq-supply = <&vreg_l9b_1p2>;
136+
vccq-max-microamp = <1200000>;
137+
138+
ufs_opp_table: opp-table {
139+
compatible = "operating-points-v2";
140+
141+
opp-100000000 {
142+
opp-hz = /bits/ 64 <100000000>,
143+
/bits/ 64 <0>,
144+
/bits/ 64 <0>,
145+
/bits/ 64 <100000000>,
146+
/bits/ 64 <0>,
147+
/bits/ 64 <0>,
148+
/bits/ 64 <0>,
149+
/bits/ 64 <0>;
150+
required-opps = <&rpmhpd_opp_low_svs>;
151+
};
152+
153+
opp-201500000 {
154+
opp-hz = /bits/ 64 <201500000>,
155+
/bits/ 64 <0>,
156+
/bits/ 64 <0>,
157+
/bits/ 64 <201500000>,
158+
/bits/ 64 <0>,
159+
/bits/ 64 <0>,
160+
/bits/ 64 <0>,
161+
/bits/ 64 <0>;
162+
required-opps = <&rpmhpd_opp_svs>;
163+
};
164+
165+
opp-403000000 {
166+
opp-hz = /bits/ 64 <403000000>,
167+
/bits/ 64 <0>,
168+
/bits/ 64 <0>,
169+
/bits/ 64 <403000000>,
170+
/bits/ 64 <0>,
171+
/bits/ 64 <0>,
172+
/bits/ 64 <0>,
173+
/bits/ 64 <0>;
174+
required-opps = <&rpmhpd_opp_nom>;
175+
};
176+
};
177+
};
178+
};

0 commit comments

Comments
 (0)