Merge tag 'usb-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 3 Jun 2022 18:17:49 +0000 (11:17 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 3 Jun 2022 18:17:49 +0000 (11:17 -0700)
Pull USB / Thunderbolt updates from Greg KH:
 "Here is the "big" set of USB and Thunderbolt driver changes for
  5.18-rc1. For the most part it's been a quiet development cycle for
  the USB core, but there are the usual "hot spots" of development
  activity.

  Included in here are:

   - Thunderbolt driver updates:
       - fixes for devices without displayport adapters
       - lane bonding support and improvements
       - other minor changes based on device testing

   - dwc3 gadget driver changes.

     It seems this driver will never be finished given that the IP core
     is showing up in zillions of new devices and each implementation
     decides to do something different with it...

   - uvc gadget driver updates as more devices start to use and rely on
     this hardware as well

   - usb_maxpacket() api changes to remove an unneeded and unused
     parameter.

   - usb-serial driver device id updates and small cleanups

   - typec cleanups and fixes based on device testing

   - device tree updates for usb properties

   - lots of other small fixes and driver updates.

  All of these have been in linux-next for weeks with no reported
  problems"

* tag 'usb-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (154 commits)
  USB: new quirk for Dell Gen 2 devices
  usb: dwc3: core: Add error log when core soft reset failed
  usb: dwc3: gadget: Move null pinter check to proper place
  usb: hub: Simplify error and success path in port_over_current_notify
  usb: cdns3: allocate TX FIFO size according to composite EP number
  usb: dwc3: Fix ep0 handling when getting reset while doing control transfer
  usb: Probe EHCI, OHCI controllers asynchronously
  usb: isp1760: Fix out-of-bounds array access
  xhci: Don't defer primary roothub registration if there is only one roothub
  USB: serial: option: add Quectel BG95 modem
  USB: serial: pl2303: fix type detection for odd device
  xhci: Allow host runtime PM as default for Intel Alder Lake N xHCI
  xhci: Remove quirk for over 10 year old evaluation hardware
  xhci: prevent U2 link power state if Intel tier policy prevented U1
  xhci: use generic command timer for stop endpoint commands.
  usb: host: xhci-plat: omit shared hcd if either root hub has no ports
  usb: host: xhci-plat: prepare operation w/o shared hcd
  usb: host: xhci-plat: create shared hcd after having added main hcd
  xhci: prepare for operation w/o shared hcd
  xhci: factor out parts of xhci_gen_setup()
  ...

40 files changed:
1  2 
Documentation/devicetree/bindings/usb/dwc2.yaml
arch/arm/boot/dts/qcom-ipq4019.dtsi
arch/arm/boot/dts/qcom-sdx55.dtsi
arch/arm64/boot/dts/qcom/apq8096-db820c.dts
arch/arm64/boot/dts/qcom/ipq6018.dtsi
arch/arm64/boot/dts/qcom/ipq8074.dtsi
arch/arm64/boot/dts/qcom/msm8953.dtsi
arch/arm64/boot/dts/qcom/msm8994.dtsi
arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
arch/arm64/boot/dts/qcom/msm8996.dtsi
arch/arm64/boot/dts/qcom/msm8998.dtsi
arch/arm64/boot/dts/qcom/qcs404.dtsi
arch/arm64/boot/dts/qcom/sc7180.dtsi
arch/arm64/boot/dts/qcom/sc7280.dtsi
arch/arm64/boot/dts/qcom/sdm630.dtsi
arch/arm64/boot/dts/qcom/sdm845.dtsi
arch/arm64/boot/dts/qcom/sm6350.dtsi
arch/arm64/boot/dts/qcom/sm8150.dtsi
arch/arm64/boot/dts/qcom/sm8250.dtsi
arch/arm64/boot/dts/qcom/sm8350.dtsi
arch/arm64/boot/dts/qcom/sm8450.dtsi
arch/mips/boot/dts/ingenic/x1000.dtsi
arch/mips/boot/dts/ingenic/x1830.dtsi
drivers/base/property.c
drivers/net/usb/cdc_ncm.c
drivers/net/usb/lan78xx.c
drivers/net/usb/rndis_host.c
drivers/net/usb/usbnet.c
drivers/thunderbolt/nhi.c
drivers/thunderbolt/test.c
drivers/usb/gadget/function/f_uvc.c
drivers/usb/gadget/function/uvc.h
drivers/usb/gadget/legacy/raw_gadget.c
drivers/usb/gadget/udc/omap_udc.c
drivers/usb/host/ohci-omap.c
drivers/usb/serial/option.c
drivers/usb/serial/pl2303.c
include/linux/property.h
include/linux/thunderbolt.h
sound/usb/midi.c

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
                        status = "disabled";
  
                        glink-edge {
 -                              interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
 +                              interrupts-extended = <&ipcc IPCC_CLIENT_SLPI
                                                             IPCC_MPROC_SIGNAL_GLINK_QMP
                                                             IRQ_TYPE_EDGE_RISING>;
 -                              mboxes = <&ipcc IPCC_CLIENT_MPSS
 +                              mboxes = <&ipcc IPCC_CLIENT_SLPI
                                                IPCC_MPROC_SIGNAL_GLINK_QMP>;
 -                              interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;
 -                              label = "modem";
 -                              qcom,remote-pid = <1>;
 +
 +                              label = "slpi";
 +                              qcom,remote-pid = <3>;
 +
 +                              fastrpc {
 +                                      compatible = "qcom,fastrpc";
 +                                      qcom,glink-channels = "fastrpcglink-apps-dsp";
 +                                      label = "sdsp";
 +                                      #address-cells = <1>;
 +                                      #size-cells = <0>;
 +
 +                                      compute-cb@1 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <1>;
 +                                              iommus = <&apps_smmu 0x0541 0x0>;
 +                                      };
 +
 +                                      compute-cb@2 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <2>;
 +                                              iommus = <&apps_smmu 0x0542 0x0>;
 +                                      };
 +
 +                                      compute-cb@3 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <3>;
 +                                              iommus = <&apps_smmu 0x0543 0x0>;
 +                                              /* note: shared-cb = <4> in downstream */
 +                                      };
 +                              };
 +                      };
 +              };
 +
 +              remoteproc_adsp: remoteproc@30000000 {
 +                      compatible = "qcom,sm8450-adsp-pas";
 +                      reg = <0 0x030000000 0 0x100>;
 +
 +                      interrupts-extended = <&pdc 6 IRQ_TYPE_LEVEL_HIGH>,
 +                                            <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>;
 +                      interrupt-names = "wdog", "fatal", "ready",
 +                                        "handover", "stop-ack";
 +
 +                      clocks = <&rpmhcc RPMH_CXO_CLK>;
 +                      clock-names = "xo";
 +
 +                      power-domains = <&rpmhpd SM8450_LCX>,
 +                                      <&rpmhpd SM8450_LMX>;
 +                      power-domain-names = "lcx", "lmx";
 +
 +                      memory-region = <&adsp_mem>;
 +
 +                      qcom,qmp = <&aoss_qmp>;
 +
 +                      qcom,smem-states = <&smp2p_adsp_out 0>;
 +                      qcom,smem-state-names = "stop";
 +
 +                      status = "disabled";
 +
 +                      remoteproc_adsp_glink: glink-edge {
 +                              interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
 +                                                           IPCC_MPROC_SIGNAL_GLINK_QMP
 +                                                           IRQ_TYPE_EDGE_RISING>;
 +                              mboxes = <&ipcc IPCC_CLIENT_LPASS
 +                                              IPCC_MPROC_SIGNAL_GLINK_QMP>;
 +
 +                              label = "lpass";
 +                              qcom,remote-pid = <2>;
 +
 +                              fastrpc {
 +                                      compatible = "qcom,fastrpc";
 +                                      qcom,glink-channels = "fastrpcglink-apps-dsp";
 +                                      label = "adsp";
 +                                      #address-cells = <1>;
 +                                      #size-cells = <0>;
 +
 +                                      compute-cb@3 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <3>;
 +                                              iommus = <&apps_smmu 0x1803 0x0>;
 +                                      };
 +
 +                                      compute-cb@4 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <4>;
 +                                              iommus = <&apps_smmu 0x1804 0x0>;
 +                                      };
 +
 +                                      compute-cb@5 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <5>;
 +                                              iommus = <&apps_smmu 0x1805 0x0>;
 +                                      };
 +                              };
 +                      };
 +              };
 +
 +              remoteproc_cdsp: remoteproc@32300000 {
 +                      compatible = "qcom,sm8450-cdsp-pas";
 +                      reg = <0 0x032300000 0 0x1400000>;
 +
 +                      interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_LEVEL_HIGH>,
 +                                            <&smp2p_cdsp_in 0 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_cdsp_in 1 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_cdsp_in 2 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_cdsp_in 3 IRQ_TYPE_EDGE_RISING>;
 +                      interrupt-names = "wdog", "fatal", "ready",
 +                                        "handover", "stop-ack";
 +
 +                      clocks = <&rpmhcc RPMH_CXO_CLK>;
 +                      clock-names = "xo";
 +
 +                      power-domains = <&rpmhpd SM8450_CX>,
 +                                      <&rpmhpd SM8450_MXC>;
 +                      power-domain-names = "cx", "mxc";
 +
 +                      memory-region = <&cdsp_mem>;
 +
 +                      qcom,qmp = <&aoss_qmp>;
 +
 +                      qcom,smem-states = <&smp2p_cdsp_out 0>;
 +                      qcom,smem-state-names = "stop";
 +
 +                      status = "disabled";
 +
 +                      glink-edge {
 +                              interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
 +                                                           IPCC_MPROC_SIGNAL_GLINK_QMP
 +                                                           IRQ_TYPE_EDGE_RISING>;
 +                              mboxes = <&ipcc IPCC_CLIENT_CDSP
 +                                              IPCC_MPROC_SIGNAL_GLINK_QMP>;
 +
 +                              label = "cdsp";
 +                              qcom,remote-pid = <5>;
 +
 +                              fastrpc {
 +                                      compatible = "qcom,fastrpc";
 +                                      qcom,glink-channels = "fastrpcglink-apps-dsp";
 +                                      label = "cdsp";
 +                                      #address-cells = <1>;
 +                                      #size-cells = <0>;
 +
 +                                      compute-cb@1 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <1>;
 +                                              iommus = <&apps_smmu 0x2161 0x0400>,
 +                                                       <&apps_smmu 0x1021 0x1420>;
 +                                      };
 +
 +                                      compute-cb@2 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <2>;
 +                                              iommus = <&apps_smmu 0x2162 0x0400>,
 +                                                       <&apps_smmu 0x1022 0x1420>;
 +                                      };
 +
 +                                      compute-cb@3 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <3>;
 +                                              iommus = <&apps_smmu 0x2163 0x0400>,
 +                                                       <&apps_smmu 0x1023 0x1420>;
 +                                      };
 +
 +                                      compute-cb@4 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <4>;
 +                                              iommus = <&apps_smmu 0x2164 0x0400>,
 +                                                       <&apps_smmu 0x1024 0x1420>;
 +                                      };
 +
 +                                      compute-cb@5 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <5>;
 +                                              iommus = <&apps_smmu 0x2165 0x0400>,
 +                                                       <&apps_smmu 0x1025 0x1420>;
 +                                      };
 +
 +                                      compute-cb@6 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <6>;
 +                                              iommus = <&apps_smmu 0x2166 0x0400>,
 +                                                       <&apps_smmu 0x1026 0x1420>;
 +                                      };
 +
 +                                      compute-cb@7 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <7>;
 +                                              iommus = <&apps_smmu 0x2167 0x0400>,
 +                                                       <&apps_smmu 0x1027 0x1420>;
 +                                      };
 +
 +                                      compute-cb@8 {
 +                                              compatible = "qcom,fastrpc-compute-cb";
 +                                              reg = <8>;
 +                                              iommus = <&apps_smmu 0x2168 0x0400>,
 +                                                       <&apps_smmu 0x1028 0x1420>;
 +                                      };
 +
 +                                      /* note: secure cb9 in downstream */
 +                              };
 +                      };
 +              };
 +
 +              remoteproc_mpss: remoteproc@4080000 {
 +                      compatible = "qcom,sm8450-mpss-pas";
 +                      reg = <0x0 0x04080000 0x0 0x4040>;
 +
 +                      interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_LEVEL_HIGH>,
 +                                            <&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_modem_in 1 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_modem_in 2 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_modem_in 3 IRQ_TYPE_EDGE_RISING>,
 +                                            <&smp2p_modem_in 7 IRQ_TYPE_EDGE_RISING>;
 +                      interrupt-names = "wdog", "fatal", "ready", "handover",
 +                                        "stop-ack", "shutdown-ack";
 +
 +                      clocks = <&rpmhcc RPMH_CXO_CLK>;
 +                      clock-names = "xo";
 +
 +                      power-domains = <&rpmhpd 0>,
 +                                      <&rpmhpd 12>;
 +                      power-domain-names = "cx", "mss";
 +
 +                      memory-region = <&mpss_mem>;
 +
 +                      qcom,qmp = <&aoss_qmp>;
 +
 +                      qcom,smem-states = <&smp2p_modem_out 0>;
 +                      qcom,smem-state-names = "stop";
 +
 +                      status = "disabled";
 +
 +                      glink-edge {
 +                              interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
 +                                                           IPCC_MPROC_SIGNAL_GLINK_QMP
 +                                                           IRQ_TYPE_EDGE_RISING>;
 +                              mboxes = <&ipcc IPCC_CLIENT_MPSS
 +                                              IPCC_MPROC_SIGNAL_GLINK_QMP>;
 +                              interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;
 +                              label = "modem";
 +                              qcom,remote-pid = <1>;
 +                      };
 +              };
 +
 +              pdc: interrupt-controller@b220000 {
 +                      compatible = "qcom,sm8450-pdc", "qcom,pdc";
 +                      reg = <0 0x0b220000 0 0x30000>, <0 0x174000f0 0 0x64>;
 +                      qcom,pdc-ranges = <0 480 12>, <14 494 24>, <40 520 54>,
 +                                        <94 609 31>, <125 63 1>, <126 716 12>;
 +                      #interrupt-cells = <2>;
 +                      interrupt-parent = <&intc>;
 +                      interrupt-controller;
 +              };
 +
 +              tsens0: thermal-sensor@c263000 {
 +                      compatible = "qcom,sm8450-tsens", "qcom,tsens-v2";
 +                      reg = <0 0x0c263000 0 0x1000>, /* TM */
 +                            <0 0x0c222000 0 0x1000>; /* SROT */
 +                      #qcom,sensors = <16>;
 +                      interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>,
 +                                   <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-names = "uplow", "critical";
 +                      #thermal-sensor-cells = <1>;
 +              };
 +
 +              tsens1: thermal-sensor@c265000 {
 +                      compatible = "qcom,sm8450-tsens", "qcom,tsens-v2";
 +                      reg = <0 0x0c265000 0 0x1000>, /* TM */
 +                            <0 0x0c223000 0 0x1000>; /* SROT */
 +                      #qcom,sensors = <16>;
 +                      interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>,
 +                                   <GIC_SPI 509 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-names = "uplow", "critical";
 +                      #thermal-sensor-cells = <1>;
 +              };
 +
 +              aoss_qmp: power-controller@c300000 {
 +                      compatible = "qcom,sm8450-aoss-qmp", "qcom,aoss-qmp";
 +                      reg = <0 0x0c300000 0 0x400>;
 +                      interrupts-extended = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP
 +                                                   IRQ_TYPE_EDGE_RISING>;
 +                      mboxes = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP>;
 +
 +                      #clock-cells = <0>;
 +              };
 +
 +              ipcc: mailbox@ed18000 {
 +                      compatible = "qcom,sm8450-ipcc", "qcom,ipcc";
 +                      reg = <0 0x0ed18000 0 0x1000>;
 +                      interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-controller;
 +                      #interrupt-cells = <3>;
 +                      #mbox-cells = <2>;
 +              };
 +
 +              tlmm: pinctrl@f100000 {
 +                      compatible = "qcom,sm8450-tlmm";
 +                      reg = <0 0x0f100000 0 0x300000>;
 +                      interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
 +                      gpio-controller;
 +                      #gpio-cells = <2>;
 +                      interrupt-controller;
 +                      #interrupt-cells = <2>;
 +                      gpio-ranges = <&tlmm 0 0 211>;
 +                      wakeup-parent = <&pdc>;
 +
 +                      pcie0_default_state: pcie0-default-state {
 +                              perst {
 +                                      pins = "gpio94";
 +                                      function = "gpio";
 +                                      drive-strength = <2>;
 +                                      bias-pull-down;
 +                              };
 +
 +                              clkreq {
 +                                      pins = "gpio95";
 +                                      function = "pcie0_clkreqn";
 +                                      drive-strength = <2>;
 +                                      bias-pull-up;
 +                              };
 +
 +                              wake {
 +                                      pins = "gpio96";
 +                                      function = "gpio";
 +                                      drive-strength = <2>;
 +                                      bias-pull-up;
 +                              };
 +                      };
 +
 +                      pcie1_default_state: pcie1-default-state {
 +                              perst {
 +                                      pins = "gpio97";
 +                                      function = "gpio";
 +                                      drive-strength = <2>;
 +                                      bias-pull-down;
 +                              };
 +
 +                              clkreq {
 +                                      pins = "gpio98";
 +                                      function = "pcie1_clkreqn";
 +                                      drive-strength = <2>;
 +                                      bias-pull-up;
 +                              };
 +
 +                              wake {
 +                                      pins = "gpio99";
 +                                      function = "gpio";
 +                                      drive-strength = <2>;
 +                                      bias-pull-up;
 +                              };
 +                      };
 +
 +                      qup_i2c0_data_clk: qup-i2c0-data-clk {
 +                              pins = "gpio0", "gpio1";
 +                              function = "qup0";
 +                      };
 +
 +                      qup_i2c1_data_clk: qup-i2c1-data-clk {
 +                              pins = "gpio4", "gpio5";
 +                              function = "qup1";
 +                      };
 +
 +                      qup_i2c2_data_clk: qup-i2c2-data-clk {
 +                              pins = "gpio8", "gpio9";
 +                              function = "qup2";
 +                      };
 +
 +                      qup_i2c3_data_clk: qup-i2c3-data-clk {
 +                              pins = "gpio12", "gpio13";
 +                              function = "qup3";
 +                      };
 +
 +                      qup_i2c4_data_clk: qup-i2c4-data-clk {
 +                              pins = "gpio16", "gpio17";
 +                              function = "qup4";
 +                      };
 +
 +                      qup_i2c5_data_clk: qup-i2c5-data-clk {
 +                              pins = "gpio206", "gpio207";
 +                              function = "qup5";
 +                      };
 +
 +                      qup_i2c6_data_clk: qup-i2c6-data-clk {
 +                              pins = "gpio20", "gpio21";
 +                              function = "qup6";
 +                      };
 +
 +                      qup_i2c8_data_clk: qup-i2c8-data-clk {
 +                              pins = "gpio28", "gpio29";
 +                              function = "qup8";
 +                      };
 +
 +                      qup_i2c9_data_clk: qup-i2c9-data-clk {
 +                              pins = "gpio32", "gpio33";
 +                              function = "qup9";
 +                      };
 +
 +                      qup_i2c10_data_clk: qup-i2c10-data-clk {
 +                              pins = "gpio36", "gpio37";
 +                              function = "qup10";
 +                      };
 +
 +                      qup_i2c11_data_clk: qup-i2c11-data-clk {
 +                              pins = "gpio40", "gpio41";
 +                              function = "qup11";
 +                      };
 +
 +                      qup_i2c12_data_clk: qup-i2c12-data-clk {
 +                              pins = "gpio44", "gpio45";
 +                              function = "qup12";
 +                      };
 +
 +                      qup_i2c13_data_clk: qup-i2c13-data-clk {
 +                              pins = "gpio48", "gpio49";
 +                              function = "qup13";
 +                              drive-strength = <2>;
 +                              bias-pull-up;
 +                      };
 +
 +                      qup_i2c14_data_clk: qup-i2c14-data-clk {
 +                              pins = "gpio52", "gpio53";
 +                              function = "qup14";
 +                              drive-strength = <2>;
 +                              bias-pull-up;
 +                      };
 +
 +                      qup_i2c15_data_clk: qup-i2c15-data-clk {
 +                              pins = "gpio56", "gpio57";
 +                              function = "qup15";
 +                      };
 +
 +                      qup_i2c16_data_clk: qup-i2c16-data-clk {
 +                              pins = "gpio60", "gpio61";
 +                              function = "qup16";
 +                      };
 +
 +                      qup_i2c17_data_clk: qup-i2c17-data-clk {
 +                              pins = "gpio64", "gpio65";
 +                              function = "qup17";
 +                      };
 +
 +                      qup_i2c18_data_clk: qup-i2c18-data-clk {
 +                              pins = "gpio68", "gpio69";
 +                              function = "qup18";
 +                      };
 +
 +                      qup_i2c19_data_clk: qup-i2c19-data-clk {
 +                              pins = "gpio72", "gpio73";
 +                              function = "qup19";
 +                      };
 +
 +                      qup_i2c20_data_clk: qup-i2c20-data-clk {
 +                              pins = "gpio76", "gpio77";
 +                              function = "qup20";
 +                      };
 +
 +                      qup_i2c21_data_clk: qup-i2c21-data-clk {
 +                              pins = "gpio80", "gpio81";
 +                              function = "qup21";
 +                      };
 +
 +                      qup_spi0_cs: qup-spi0-cs {
 +                              pins = "gpio3";
 +                              function = "qup0";
 +                      };
 +
 +                      qup_spi0_data_clk: qup-spi0-data-clk {
 +                              pins = "gpio0", "gpio1", "gpio2";
 +                              function = "qup0";
 +                      };
 +
 +                      qup_spi1_cs: qup-spi1-cs {
 +                              pins = "gpio7";
 +                              function = "qup1";
 +                      };
 +
 +                      qup_spi1_data_clk: qup-spi1-data-clk {
 +                              pins = "gpio4", "gpio5", "gpio6";
 +                              function = "qup1";
 +                      };
 +
 +                      qup_spi2_cs: qup-spi2-cs {
 +                              pins = "gpio11";
 +                              function = "qup2";
 +                      };
 +
 +                      qup_spi2_data_clk: qup-spi2-data-clk {
 +                              pins = "gpio8", "gpio9", "gpio10";
 +                              function = "qup2";
 +                      };
 +
 +                      qup_spi3_cs: qup-spi3-cs {
 +                              pins = "gpio15";
 +                              function = "qup3";
 +                      };
 +
 +                      qup_spi3_data_clk: qup-spi3-data-clk {
 +                              pins = "gpio12", "gpio13", "gpio14";
 +                              function = "qup3";
 +                      };
 +
 +                      qup_spi4_cs: qup-spi4-cs {
 +                              pins = "gpio19";
 +                              function = "qup4";
 +                              drive-strength = <6>;
 +                              bias-disable;
 +                      };
 +
 +                      qup_spi4_data_clk: qup-spi4-data-clk {
 +                              pins = "gpio16", "gpio17", "gpio18";
 +                              function = "qup4";
 +                      };
 +
 +                      qup_spi5_cs: qup-spi5-cs {
 +                              pins = "gpio85";
 +                              function = "qup5";
 +                      };
 +
 +                      qup_spi5_data_clk: qup-spi5-data-clk {
 +                              pins = "gpio206", "gpio207", "gpio84";
 +                              function = "qup5";
 +                      };
 +
 +                      qup_spi6_cs: qup-spi6-cs {
 +                              pins = "gpio23";
 +                              function = "qup6";
 +                      };
 +
 +                      qup_spi6_data_clk: qup-spi6-data-clk {
 +                              pins = "gpio20", "gpio21", "gpio22";
 +                              function = "qup6";
 +                      };
 +
 +                      qup_spi8_cs: qup-spi8-cs {
 +                              pins = "gpio31";
 +                              function = "qup8";
 +                      };
 +
 +                      qup_spi8_data_clk: qup-spi8-data-clk {
 +                              pins = "gpio28", "gpio29", "gpio30";
 +                              function = "qup8";
 +                      };
 +
 +                      qup_spi9_cs: qup-spi9-cs {
 +                              pins = "gpio35";
 +                              function = "qup9";
 +                      };
 +
 +                      qup_spi9_data_clk: qup-spi9-data-clk {
 +                              pins = "gpio32", "gpio33", "gpio34";
 +                              function = "qup9";
 +                      };
 +
 +                      qup_spi10_cs: qup-spi10-cs {
 +                              pins = "gpio39";
 +                              function = "qup10";
 +                      };
 +
 +                      qup_spi10_data_clk: qup-spi10-data-clk {
 +                              pins = "gpio36", "gpio37", "gpio38";
 +                              function = "qup10";
 +                      };
 +
 +                      qup_spi11_cs: qup-spi11-cs {
 +                              pins = "gpio43";
 +                              function = "qup11";
 +                      };
 +
 +                      qup_spi11_data_clk: qup-spi11-data-clk {
 +                              pins = "gpio40", "gpio41", "gpio42";
 +                              function = "qup11";
 +                      };
 +
 +                      qup_spi12_cs: qup-spi12-cs {
 +                              pins = "gpio47";
 +                              function = "qup12";
 +                      };
 +
 +                      qup_spi12_data_clk: qup-spi12-data-clk {
 +                              pins = "gpio44", "gpio45", "gpio46";
 +                              function = "qup12";
 +                      };
 +
 +                      qup_spi13_cs: qup-spi13-cs {
 +                              pins = "gpio51";
 +                              function = "qup13";
 +                      };
 +
 +                      qup_spi13_data_clk: qup-spi13-data-clk {
 +                              pins = "gpio48", "gpio49", "gpio50";
 +                              function = "qup13";
 +                      };
 +
 +                      qup_spi14_cs: qup-spi14-cs {
 +                              pins = "gpio55";
 +                              function = "qup14";
 +                      };
 +
 +                      qup_spi14_data_clk: qup-spi14-data-clk {
 +                              pins = "gpio52", "gpio53", "gpio54";
 +                              function = "qup14";
 +                      };
 +
 +                      qup_spi15_cs: qup-spi15-cs {
 +                              pins = "gpio59";
 +                              function = "qup15";
 +                      };
 +
 +                      qup_spi15_data_clk: qup-spi15-data-clk {
 +                              pins = "gpio56", "gpio57", "gpio58";
 +                              function = "qup15";
 +                      };
 +
 +                      qup_spi16_cs: qup-spi16-cs {
 +                              pins = "gpio63";
 +                              function = "qup16";
 +                      };
 +
 +                      qup_spi16_data_clk: qup-spi16-data-clk {
 +                              pins = "gpio60", "gpio61", "gpio62";
 +                              function = "qup16";
 +                      };
 +
 +                      qup_spi17_cs: qup-spi17-cs {
 +                              pins = "gpio67";
 +                              function = "qup17";
 +                      };
 +
 +                      qup_spi17_data_clk: qup-spi17-data-clk {
 +                              pins = "gpio64", "gpio65", "gpio66";
 +                              function = "qup17";
 +                      };
 +
 +                      qup_spi18_cs: qup-spi18-cs {
 +                              pins = "gpio71";
 +                              function = "qup18";
 +                              drive-strength = <6>;
 +                              bias-disable;
 +                      };
 +
 +                      qup_spi18_data_clk: qup-spi18-data-clk {
 +                              pins = "gpio68", "gpio69", "gpio70";
 +                              function = "qup18";
 +                              drive-strength = <6>;
 +                              bias-disable;
 +                      };
 +
 +                      qup_spi19_cs: qup-spi19-cs {
 +                              pins = "gpio75";
 +                              function = "qup19";
 +                              drive-strength = <6>;
 +                              bias-disable;
 +                      };
 +
 +                      qup_spi19_data_clk: qup-spi19-data-clk {
 +                              pins = "gpio72", "gpio73", "gpio74";
 +                              function = "qup19";
 +                              drive-strength = <6>;
 +                              bias-disable;
 +                      };
 +
 +                      qup_spi20_cs: qup-spi20-cs {
 +                              pins = "gpio79";
 +                              function = "qup20";
 +                      };
 +
 +                      qup_spi20_data_clk: qup-spi20-data-clk {
 +                              pins = "gpio76", "gpio77", "gpio78";
 +                              function = "qup20";
 +                      };
 +
 +                      qup_spi21_cs: qup-spi21-cs {
 +                              pins = "gpio83";
 +                              function = "qup21";
 +                      };
 +
 +                      qup_spi21_data_clk: qup-spi21-data-clk {
 +                              pins = "gpio80", "gpio81", "gpio82";
 +                              function = "qup21";
 +                      };
 +
 +                      qup_uart7_rx: qup-uart7-rx {
 +                              pins = "gpio26";
 +                              function = "qup7";
 +                              drive-strength = <2>;
 +                              bias-disable;
 +                      };
 +
 +                      qup_uart7_tx: qup-uart7-tx {
 +                              pins = "gpio27";
 +                              function = "qup7";
 +                              drive-strength = <2>;
 +                              bias-disable;
 +                      };
 +              };
 +
 +              apps_smmu: iommu@15000000 {
 +                      compatible = "qcom,sm8450-smmu-500", "arm,mmu-500";
 +                      reg = <0 0x15000000 0 0x100000>;
 +                      #iommu-cells = <2>;
 +                      #global-interrupts = <1>;
 +                      interrupts =    <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 412 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 707 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 690 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 691 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 692 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 693 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 694 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 695 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 696 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <GIC_SPI 697 IRQ_TYPE_LEVEL_HIGH>;
 +              };
 +
 +              intc: interrupt-controller@17100000 {
 +                      compatible = "arm,gic-v3";
 +                      #interrupt-cells = <3>;
 +                      interrupt-controller;
 +                      #redistributor-regions = <1>;
 +                      redistributor-stride = <0x0 0x40000>;
 +                      reg = <0x0 0x17100000 0x0 0x10000>,     /* GICD */
 +                            <0x0 0x17180000 0x0 0x200000>;    /* GICR * 8 */
 +                      interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
 +              };
 +
 +              timer@17420000 {
 +                      compatible = "arm,armv7-timer-mem";
 +                      #address-cells = <2>;
 +                      #size-cells = <2>;
 +                      ranges;
 +                      reg = <0x0 0x17420000 0x0 0x1000>;
 +                      clock-frequency = <19200000>;
 +
 +                      frame@17421000 {
 +                              frame-number = <0>;
 +                              interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
 +                                           <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
 +                              reg = <0x0 0x17421000 0x0 0x1000>,
 +                                    <0x0 0x17422000 0x0 0x1000>;
 +                      };
 +
 +                      frame@17423000 {
 +                              frame-number = <1>;
 +                              interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
 +                              reg = <0x0 0x17423000 0x0 0x1000>;
 +                              status = "disabled";
 +                      };
 +
 +                      frame@17425000 {
 +                              frame-number = <2>;
 +                              interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
 +                              reg = <0x0 0x17425000 0x0 0x1000>;
 +                              status = "disabled";
 +                      };
 +
 +                      frame@17427000 {
 +                              frame-number = <3>;
 +                              interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
 +                              reg = <0x0 0x17427000 0x0 0x1000>;
 +                              status = "disabled";
 +                      };
 +
 +                      frame@17429000 {
 +                              frame-number = <4>;
 +                              interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
 +                              reg = <0x0 0x17429000 0x0 0x1000>;
 +                              status = "disabled";
 +                      };
 +
 +                      frame@1742b000 {
 +                              frame-number = <5>;
 +                              interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
 +                              reg = <0x0 0x1742b000 0x0 0x1000>;
 +                              status = "disabled";
 +                      };
 +
 +                      frame@1742d000 {
 +                              frame-number = <6>;
 +                              interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
 +                              reg = <0x0 0x1742d000 0x0 0x1000>;
 +                              status = "disabled";
 +                      };
 +              };
 +
 +              apps_rsc: rsc@17a00000 {
 +                      label = "apps_rsc";
 +                      compatible = "qcom,rpmh-rsc";
 +                      reg = <0x0 0x17a00000 0x0 0x10000>,
 +                            <0x0 0x17a10000 0x0 0x10000>,
 +                            <0x0 0x17a20000 0x0 0x10000>,
 +                            <0x0 0x17a30000 0x0 0x10000>;
 +                      reg-names = "drv-0", "drv-1", "drv-2", "drv-3";
 +                      interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
 +                                   <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
 +                                   <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
 +                      qcom,tcs-offset = <0xd00>;
 +                      qcom,drv-id = <2>;
 +                      qcom,tcs-config = <ACTIVE_TCS  3>, <SLEEP_TCS   2>,
 +                                        <WAKE_TCS    2>, <CONTROL_TCS 0>;
 +
 +                      apps_bcm_voter: bcm-voter {
 +                              compatible = "qcom,bcm-voter";
 +                      };
 +
 +                      rpmhcc: clock-controller {
 +                              compatible = "qcom,sm8450-rpmh-clk";
 +                              #clock-cells = <1>;
 +                              clock-names = "xo";
 +                              clocks = <&xo_board>;
 +                      };
 +
 +                      rpmhpd: power-controller {
 +                              compatible = "qcom,sm8450-rpmhpd";
 +                              #power-domain-cells = <1>;
 +                              operating-points-v2 = <&rpmhpd_opp_table>;
 +
 +                              rpmhpd_opp_table: opp-table {
 +                                      compatible = "operating-points-v2";
 +
 +                                      rpmhpd_opp_ret: opp1 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
 +                                      };
 +
 +                                      rpmhpd_opp_min_svs: opp2 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
 +                                      };
 +
 +                                      rpmhpd_opp_low_svs: opp3 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
 +                                      };
 +
 +                                      rpmhpd_opp_svs: opp4 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
 +                                      };
 +
 +                                      rpmhpd_opp_svs_l1: opp5 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
 +                                      };
 +
 +                                      rpmhpd_opp_nom: opp6 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
 +                                      };
 +
 +                                      rpmhpd_opp_nom_l1: opp7 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
 +                                      };
 +
 +                                      rpmhpd_opp_nom_l2: opp8 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
 +                                      };
 +
 +                                      rpmhpd_opp_turbo: opp9 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
 +                                      };
 +
 +                                      rpmhpd_opp_turbo_l1: opp10 {
 +                                              opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
 +                                      };
 +                              };
 +                      };
 +              };
 +
 +              cpufreq_hw: cpufreq@17d91000 {
 +                      compatible = "qcom,sm8450-cpufreq-epss", "qcom,cpufreq-epss";
 +                      reg = <0 0x17d91000 0 0x1000>,
 +                            <0 0x17d92000 0 0x1000>,
 +                            <0 0x17d93000 0 0x1000>;
 +                      reg-names = "freq-domain0", "freq-domain1", "freq-domain2";
 +                      clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GCC_GPLL0>;
 +                      clock-names = "xo", "alternate";
 +                      interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
 +                                   <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
 +                                   <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-names = "dcvsh-irq-0", "dcvsh-irq-1", "dcvsh-irq-2";
 +                      #freq-domain-cells = <1>;
 +              };
 +
 +              gem_noc: interconnect@19100000 {
 +                      compatible = "qcom,sm8450-gem-noc";
 +                      reg = <0 0x19100000 0 0xbb800>;
 +                      #interconnect-cells = <2>;
 +                      qcom,bcm-voters = <&apps_bcm_voter>;
 +              };
 +
 +              system-cache-controller@19200000 {
 +                      compatible = "qcom,sm8450-llcc";
 +                      reg = <0 0x19200000 0 0x580000>, <0 0x19a00000 0 0x80000>;
 +                      reg-names = "llcc_base", "llcc_broadcast_base";
 +                      interrupts = <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>;
 +              };
 +
 +              ufs_mem_hc: ufshc@1d84000 {
 +                      compatible = "qcom,sm8450-ufshc", "qcom,ufshc",
 +                                   "jedec,ufs-2.0";
 +                      reg = <0 0x01d84000 0 0x3000>;
 +                      interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
 +                      phys = <&ufs_mem_phy_lanes>;
 +                      phy-names = "ufsphy";
 +                      lanes-per-direction = <2>;
 +                      #reset-cells = <1>;
 +                      resets = <&gcc GCC_UFS_PHY_BCR>;
 +                      reset-names = "rst";
 +
 +                      power-domains = <&gcc UFS_PHY_GDSC>;
 +
 +                      iommus = <&apps_smmu 0xe0 0x0>;
 +
 +                      interconnects = <&aggre1_noc MASTER_UFS_MEM &mc_virt SLAVE_EBI1>,
 +                                      <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_UFS_MEM_CFG>;
 +                      interconnect-names = "ufs-ddr", "cpu-ufs";
 +                      clock-names =
 +                              "core_clk",
 +                              "bus_aggr_clk",
 +                              "iface_clk",
 +                              "core_clk_unipro",
 +                              "ref_clk",
 +                              "tx_lane0_sync_clk",
 +                              "rx_lane0_sync_clk",
 +                              "rx_lane1_sync_clk";
 +                      clocks =
 +                              <&gcc GCC_UFS_PHY_AXI_CLK>,
 +                              <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
 +                              <&gcc GCC_UFS_PHY_AHB_CLK>,
 +                              <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
 +                              <&rpmhcc RPMH_CXO_CLK>,
 +                              <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
 +                              <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
 +                              <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
 +                      freq-table-hz =
 +                              <75000000 300000000>,
 +                              <0 0>,
 +                              <0 0>,
 +                              <75000000 300000000>,
 +                              <75000000 300000000>,
 +                              <0 0>,
 +                              <0 0>,
 +                              <0 0>;
 +                      status = "disabled";
 +              };
 +
 +              ufs_mem_phy: phy@1d87000 {
 +                      compatible = "qcom,sm8450-qmp-ufs-phy";
 +                      reg = <0 0x01d87000 0 0xe10>;
 +                      #address-cells = <2>;
 +                      #size-cells = <2>;
 +                      ranges;
 +                      clock-names = "ref", "ref_aux", "qref";
 +                      clocks = <&rpmhcc RPMH_CXO_CLK>,
 +                               <&gcc GCC_UFS_PHY_PHY_AUX_CLK>,
 +                               <&gcc GCC_UFS_0_CLKREF_EN>;
 +
 +                      resets = <&ufs_mem_hc 0>;
 +                      reset-names = "ufsphy";
 +                      status = "disabled";
 +
 +                      ufs_mem_phy_lanes: phy@1d87400 {
 +                              reg = <0 0x01d87400 0 0x108>,
 +                                    <0 0x01d87600 0 0x1e0>,
 +                                    <0 0x01d87c00 0 0x1dc>,
 +                                    <0 0x01d87800 0 0x108>,
 +                                    <0 0x01d87a00 0 0x1e0>;
 +                              #phy-cells = <0>;
 +                              #clock-cells = <0>;
 +                      };
 +              };
 +
 +              usb_1: usb@a6f8800 {
 +                      compatible = "qcom,sm8450-dwc3", "qcom,dwc3";
 +                      reg = <0 0x0a6f8800 0 0x400>;
 +                      status = "disabled";
 +                      #address-cells = <2>;
 +                      #size-cells = <2>;
 +                      ranges;
 +
 +                      clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
 +                               <&gcc GCC_USB30_PRIM_MASTER_CLK>,
 +                               <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
-                                <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
 +                               <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
++                               <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
 +                               <&gcc GCC_USB3_0_CLKREF_EN>;
-                       clock-names = "cfg_noc", "core", "iface", "mock_utmi",
-                                     "sleep", "xo";
++                      clock-names = "cfg_noc",
++                                    "core",
++                                    "iface",
++                                    "sleep",
++                                    "mock_utmi",
++                                    "xo";
 +
 +                      assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
 +                                        <&gcc GCC_USB30_PRIM_MASTER_CLK>;
 +                      assigned-clock-rates = <19200000>, <200000000>;
 +
 +                      interrupts-extended = <&intc GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
-                                             <&pdc 14 IRQ_TYPE_EDGE_BOTH>,
++                                            <&pdc 17 IRQ_TYPE_LEVEL_HIGH>,
 +                                            <&pdc 15 IRQ_TYPE_EDGE_BOTH>,
-                                             <&pdc 17 IRQ_TYPE_LEVEL_HIGH>;
-                       interrupt-names = "hs_phy_irq", "dp_hs_phy_irq",
-                                         "dm_hs_phy_irq", "ss_phy_irq";
++                                            <&pdc 14 IRQ_TYPE_EDGE_BOTH>;
++                      interrupt-names = "hs_phy_irq",
++                                        "ss_phy_irq",
++                                        "dm_hs_phy_irq",
++                                        "dp_hs_phy_irq";
 +
 +                      power-domains = <&gcc USB30_PRIM_GDSC>;
 +
 +                      resets = <&gcc GCC_USB30_PRIM_BCR>;
 +
 +                      usb_1_dwc3: usb@a600000 {
 +                              compatible = "snps,dwc3";
 +                              reg = <0 0x0a600000 0 0xcd00>;
 +                              interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
 +                              iommus = <&apps_smmu 0x0 0x0>;
 +                              snps,dis_u2_susphy_quirk;
 +                              snps,dis_enblslpm_quirk;
 +                              phys = <&usb_1_hsphy>, <&usb_1_ssphy>;
 +                              phy-names = "usb2-phy", "usb3-phy";
 +                      };
 +              };
 +
 +              nsp_noc: interconnect@320c0000 {
 +                      compatible = "qcom,sm8450-nsp-noc";
 +                      reg = <0 0x320c0000 0 0x10000>;
 +                      #interconnect-cells = <2>;
 +                      qcom,bcm-voters = <&apps_bcm_voter>;
 +              };
 +
 +              lpass_ag_noc: interconnect@3c40000 {
 +                      compatible = "qcom,sm8450-lpass-ag-noc";
 +                      reg = <0 0x3c40000 0 0x17200>;
 +                      #interconnect-cells = <2>;
 +                      qcom,bcm-voters = <&apps_bcm_voter>;
 +              };
 +      };
 +
 +      thermal-zones {
 +              aoss0-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 0>;
 +
 +                      trips {
 +                              thermal-engine-config {
 +                                      temperature = <125000>;
 +                                      hysteresis = <1000>;
 +                                      type = "passive";
 +                              };
 +
 +                              reset-mon-cfg {
 +                                      temperature = <115000>;
 +                                      hysteresis = <5000>;
 +                                      type = "passive";
 +                              };
 +                      };
 +              };
 +
 +              cpuss0-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 1>;
 +
 +                      trips {
 +                              thermal-engine-config {
 +                                      temperature = <125000>;
 +                                      hysteresis = <1000>;
 +                                      type = "passive";
 +                              };
 +
 +                              reset-mon-cfg {
 +                                      temperature = <115000>;
 +                                      hysteresis = <5000>;
 +                                      type = "passive";
 +                              };
 +                      };
 +              };
 +
 +              cpuss1-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 2>;
 +
 +                      trips {
 +                              thermal-engine-config {
 +                                      temperature = <125000>;
 +                                      hysteresis = <1000>;
 +                                      type = "passive";
 +                              };
 +
 +                              reset-mon-cfg {
 +                                      temperature = <115000>;
 +                                      hysteresis = <5000>;
 +                                      type = "passive";
 +                              };
 +                      };
 +              };
 +
 +              cpuss3-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 3>;
 +
 +                      trips {
 +                              thermal-engine-config {
 +                                      temperature = <125000>;
 +                                      hysteresis = <1000>;
 +                                      type = "passive";
 +                              };
 +
 +                              reset-mon-cfg {
 +                                      temperature = <115000>;
 +                                      hysteresis = <5000>;
 +                                      type = "passive";
 +                              };
 +                      };
 +              };
 +
 +              cpuss4-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 4>;
 +
 +                      trips {
 +                              thermal-engine-config {
 +                                      temperature = <125000>;
 +                                      hysteresis = <1000>;
 +                                      type = "passive";
 +                              };
 +
 +                              reset-mon-cfg {
 +                                      temperature = <115000>;
 +                                      hysteresis = <5000>;
 +                                      type = "passive";
 +                              };
 +                      };
 +              };
 +
 +              cpu4-top-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 5>;
 +
 +                      trips {
 +                              cpu4_top_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu4_top_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu4_top_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu4-bottom-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 6>;
 +
 +                      trips {
 +                              cpu4_bottom_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu4_bottom_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu4_bottom_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu5-top-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 7>;
 +
 +                      trips {
 +                              cpu5_top_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu5_top_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu5_top_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu5-bottom-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 8>;
 +
 +                      trips {
 +                              cpu5_bottom_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu5_bottom_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu5_bottom_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu6-top-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 9>;
 +
 +                      trips {
 +                              cpu6_top_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu6_top_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu6_top_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu6-bottom-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 10>;
 +
 +                      trips {
 +                              cpu6_bottom_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu6_bottom_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu6_bottom_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu7-top-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 11>;
 +
 +                      trips {
 +                              cpu7_top_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu7_top_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu7_top_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu7-middle-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 12>;
 +
 +                      trips {
 +                              cpu7_middle_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu7_middle_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu7_middle_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
 +                      };
 +              };
 +
 +              cpu7-bottom-thermal {
 +                      polling-delay-passive = <0>;
 +                      polling-delay = <0>;
 +                      thermal-sensors = <&tsens0 13>;
 +
 +                      trips {
 +                              cpu7_bottom_alert0: trip-point0 {
 +                                      temperature = <90000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu7_bottom_alert1: trip-point1 {
 +                                      temperature = <95000>;
 +                                      hysteresis = <2000>;
 +                                      type = "passive";
 +                              };
 +
 +                              cpu7_bottom_crit: cpu_crit {
 +                                      temperature = <110000>;
 +                                      hysteresis = <1000>;
 +                                      type = "critical";
 +                              };
                        };
                };
  
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -1348,8 -1389,8 +1389,8 @@@ static void tb_test_tunnel_dp(struct ku
        in = &host->ports[5];
        out = &dev->ports[13];
  
-       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, tunnel != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, tunnel);
        KUNIT_EXPECT_EQ(test, tunnel->type, TB_TUNNEL_DP);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->src_port, in);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->dst_port, out);
@@@ -1394,8 -1435,8 +1435,8 @@@ static void tb_test_tunnel_dp_chain(str
        in = &host->ports[5];
        out = &dev4->ports[14];
  
-       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, tunnel != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, tunnel);
        KUNIT_EXPECT_EQ(test, tunnel->type, TB_TUNNEL_DP);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->src_port, in);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->dst_port, out);
@@@ -1444,8 -1485,8 +1485,8 @@@ static void tb_test_tunnel_dp_tree(stru
        in = &dev2->ports[13];
        out = &dev5->ports[13];
  
-       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, tunnel != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, tunnel);
        KUNIT_EXPECT_EQ(test, tunnel->type, TB_TUNNEL_DP);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->src_port, in);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->dst_port, out);
@@@ -1509,8 -1550,8 +1550,8 @@@ static void tb_test_tunnel_dp_max_lengt
        in = &dev6->ports[13];
        out = &dev12->ports[13];
  
-       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, tunnel != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, tunnel);
        KUNIT_EXPECT_EQ(test, tunnel->type, TB_TUNNEL_DP);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->src_port, in);
        KUNIT_EXPECT_PTR_EQ(test, tunnel->dst_port, out);
@@@ -1627,8 -1668,8 +1668,8 @@@ static void tb_test_tunnel_port_on_path
        in = &dev2->ports[13];
        out = &dev5->ports[13];
  
-       dp_tunnel = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       dp_tunnel = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, dp_tunnel != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, dp_tunnel);
  
        KUNIT_EXPECT_TRUE(test, tb_tunnel_port_on_path(dp_tunnel, in));
        KUNIT_EXPECT_TRUE(test, tb_tunnel_port_on_path(dp_tunnel, out));
@@@ -2009,8 -2100,8 +2100,8 @@@ static void tb_test_credit_alloc_dp(str
        in = &host->ports[5];
        out = &dev->ports[14];
  
-       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       tunnel = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, tunnel != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, tunnel);
        KUNIT_ASSERT_EQ(test, tunnel->npaths, (size_t)3);
  
        /* Video (main) path */
@@@ -2245,8 -2336,8 +2336,8 @@@ static struct tb_tunnel *TB_TEST_DP_TUN
  
        in = &host->ports[5];
        out = &dev->ports[13];
-       dp_tunnel1 = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       dp_tunnel1 = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, dp_tunnel1 != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, dp_tunnel1);
        KUNIT_ASSERT_EQ(test, dp_tunnel1->npaths, (size_t)3);
  
        path = dp_tunnel1->paths[0];
@@@ -2282,8 -2373,8 +2373,8 @@@ static struct tb_tunnel *TB_TEST_DP_TUN
  
        in = &host->ports[6];
        out = &dev->ports[14];
-       dp_tunnel2 = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
+       dp_tunnel2 = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0);
 -      KUNIT_ASSERT_TRUE(test, dp_tunnel2 != NULL);
 +      KUNIT_ASSERT_NOT_NULL(test, dp_tunnel2);
        KUNIT_ASSERT_EQ(test, dp_tunnel2->npaths, (size_t)3);
  
        path = dp_tunnel2->paths[0];
Simple merge
Simple merge
@@@ -509,10 -508,9 +509,10 @@@ static int raw_ioctl_run(struct raw_de
                ret = -EINVAL;
                goto out_unlock;
        }
 +      dev->state = STATE_DEV_REGISTERING;
        spin_unlock_irqrestore(&dev->lock, flags);
  
-       ret = usb_gadget_probe_driver(&dev->driver);
+       ret = usb_gadget_register_driver(&dev->driver);
  
        spin_lock_irqsave(&dev->lock, flags);
        if (ret) {
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge