Message ID | 20191212132122.1.I85a23bdcff04dbce48cc46ddb8f1ffe7a51015eb@changeid (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | usb: dwc3: qcom: Remove useless compatible strings from the match table | expand |
On Thu 12 Dec 13:21 PST 2019, Douglas Anderson wrote: > The of match table in dwc3-qcom.c had an entry per Qualcomm SoC known > to have dwc3. That's not needed. Here's why: > > 1. The bindings specify that the compatible string in the device tree > should contain the SoC-specific compatible string followed by the > string "qcom,dwc3". > > 2. All known Qualcomm SoC dts files (confirmed via git grep in > mainline Linux) using dwc3 follow the rules and do, in fact, > contain the SoC-specific compatible string followed by the string > "qcom,dwc3". > > 3. The source code does nothing special with the per-SoC strings--they > are only used to match the node. > > Let's remove the extra strings from the table. Doing so will avoid > the need to land future useless patches [1] that do nothing more than > add yet more strings to the table. > > NOTE: if later we _do_ find some SoC-specific quirk we need to handle > in the code we can add back a subset of these strings. At the time we > will probably also add some data in the match table to make it easier > to generalize this hypothetical quirk across all the SoCs it affects. > > [1] https://lore.kernel.org/r/1574940787-1004-2-git-send-email-sanm@codeaurora.org > Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> > Signed-off-by: Douglas Anderson <dianders@chromium.org> > --- > > drivers/usb/dwc3/dwc3-qcom.c | 3 --- > 1 file changed, 3 deletions(-) > > diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c > index 261af9e38ddd..72e867e02a1c 100644 > --- a/drivers/usb/dwc3/dwc3-qcom.c > +++ b/drivers/usb/dwc3/dwc3-qcom.c > @@ -751,9 +751,6 @@ static const struct dev_pm_ops dwc3_qcom_dev_pm_ops = { > > static const struct of_device_id dwc3_qcom_of_match[] = { > { .compatible = "qcom,dwc3" }, > - { .compatible = "qcom,msm8996-dwc3" }, > - { .compatible = "qcom,msm8998-dwc3" }, > - { .compatible = "qcom,sdm845-dwc3" }, > { } > }; > MODULE_DEVICE_TABLE(of, dwc3_qcom_of_match); > -- > 2.24.1.735.g03f4e72817-goog >
Thanks. Patch looks good to me. On 12/13/2019 2:51 AM, Douglas Anderson wrote: > The of match table in dwc3-qcom.c had an entry per Qualcomm SoC known > to have dwc3. That's not needed. Here's why: > > 1. The bindings specify that the compatible string in the device tree > should contain the SoC-specific compatible string followed by the > string "qcom,dwc3". > > 2. All known Qualcomm SoC dts files (confirmed via git grep in > mainline Linux) using dwc3 follow the rules and do, in fact, > contain the SoC-specific compatible string followed by the string > "qcom,dwc3". > > 3. The source code does nothing special with the per-SoC strings--they > are only used to match the node. > > Let's remove the extra strings from the table. Doing so will avoid > the need to land future useless patches [1] that do nothing more than > add yet more strings to the table. Reviewed-by: Manu Gautam <mgautam@codeaurora.org>
diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c index 261af9e38ddd..72e867e02a1c 100644 --- a/drivers/usb/dwc3/dwc3-qcom.c +++ b/drivers/usb/dwc3/dwc3-qcom.c @@ -751,9 +751,6 @@ static const struct dev_pm_ops dwc3_qcom_dev_pm_ops = { static const struct of_device_id dwc3_qcom_of_match[] = { { .compatible = "qcom,dwc3" }, - { .compatible = "qcom,msm8996-dwc3" }, - { .compatible = "qcom,msm8998-dwc3" }, - { .compatible = "qcom,sdm845-dwc3" }, { } }; MODULE_DEVICE_TABLE(of, dwc3_qcom_of_match);
The of match table in dwc3-qcom.c had an entry per Qualcomm SoC known to have dwc3. That's not needed. Here's why: 1. The bindings specify that the compatible string in the device tree should contain the SoC-specific compatible string followed by the string "qcom,dwc3". 2. All known Qualcomm SoC dts files (confirmed via git grep in mainline Linux) using dwc3 follow the rules and do, in fact, contain the SoC-specific compatible string followed by the string "qcom,dwc3". 3. The source code does nothing special with the per-SoC strings--they are only used to match the node. Let's remove the extra strings from the table. Doing so will avoid the need to land future useless patches [1] that do nothing more than add yet more strings to the table. NOTE: if later we _do_ find some SoC-specific quirk we need to handle in the code we can add back a subset of these strings. At the time we will probably also add some data in the match table to make it easier to generalize this hypothetical quirk across all the SoCs it affects. [1] https://lore.kernel.org/r/1574940787-1004-2-git-send-email-sanm@codeaurora.org Signed-off-by: Douglas Anderson <dianders@chromium.org> --- drivers/usb/dwc3/dwc3-qcom.c | 3 --- 1 file changed, 3 deletions(-)