From 11f1f67a3ebb4655e083527e97770f6d7242af53 Mon Sep 17 00:00:00 2001 From: John Audia Date: Sun, 9 Feb 2025 09:55:56 -0500 Subject: [PATCH] qualcommb/ipq95xx: refresh patches ahead of 6.6.75 Refreshed patches for qualcommb/ipq95xx by running make target/linux/refresh after creating a .config containing: CONFIG_TARGET_qualcommbe=y CONFIG_TARGET_qualcommbe_ipq95xx=y CONFIG_TARGET_qualcommbe_ipq95xx_DEVICE_qcom_rdp433=y Signed-off-by: John Audia Link: https://github.com/openwrt/openwrt/pull/17822 Signed-off-by: Hauke Mehrtens --- ...com-ipq9574-Add-common-RDP-dtsi-file.patch | 24 +- ...k-add-qca8386-qca8084-clock-and-rese.patch | 12 - ...ck-controller-driver-for-qca8386-qca.patch | 14 +- ...-arm64-dts-qcom-ipq9574-add-MDIO-bus.patch | 7 +- ...-introduce-support-for-multiple-conf.patch | 7 +- ...2-add-support-for-rcg2-freq-multi-op.patch | 27 +- ...m-branch-Add-clk_branch2_prepare_ops.patch | 13 +- ...ommon-commonize-qcom_cc_really_probe.patch | 443 +++++------------- ...e-core-support-for-phy-mode-10g-qxgm.patch | 39 +- ...ged-helper-to-get-and-enable-bulk-cl.patch | 19 +- ...devm_clk_bulk_get_all_enabled-helper.patch | 19 +- ...k-Add-PCIe-pipe-related-clocks-for-I.patch | 5 - ...com-gcc-ipq9574-Add-PCIe-pipe-clocks.patch | 15 +- ...pq9574-drop-power-domain-cells-prope.patch | 7 +- ...ect-icc-clk-Specify-master-slave-ids.patch | 15 +- ...rconnect-Add-Qualcomm-IPQ9574-suppor.patch | 8 - ...ct-icc-clk-Add-devm_icc_clk_register.patch | 11 +- ...mmon-Add-interconnect-clocks-support.patch | 11 +- ...-Use-icc-clk-for-enabling-NoC-relate.patch | 15 +- ...pq9574-Add-icc-provider-ability-to-g.patch | 7 +- ...com-nvmem-Enable-cpufreq-for-ipq53xx.patch | 15 +- ...-nvmem-Introduce-cpufreq-for-ipq95xx.patch | 15 +- ...pq9574-populate-the-opp-table-based-.patch | 9 +- ...r-qcom_smd-Add-LDO5-MP5496-regulator.patch | 7 +- ...-PLL-clock-controller-driver-for-IPQ.patch | 16 +- ...k-qcom-Add-CMN-PLL-clock-controller-.patch | 9 - ...64-dts-qcom-ipq9574-Add-CMN-PLL-node.patch | 15 +- ...pq9574-Update-xo_board_clk-to-use-fi.patch | 11 +- ...-driver-for-QCOM-SPI-NAND-flash-Inte.patch | 27 +- ...ts-qcom-ipq9574-Add-SPI-nand-support.patch | 6 +- ...4-dts-qcom-ipq9574-Disable-eMMC-node.patch | 4 +- ...Document-Qualcomm-QCA8084-PHY-packag.patch | 9 - ...08x-Add-QCA8084-ethernet-phy-support.patch | 13 +- ...Add-config_init-function-for-QCA8084.patch | 9 +- ...Add-link_change_notify-function-for-.patch | 9 +- ...Add-register-access-support-routines.patch | 5 - ...y-qca808x-Add-QCA8084-probe-function.patch | 9 +- ...Add-package-clocks-and-resets-for-QC.patch | 11 +- ...8x-Add-QCA8084-package-init-function.patch | 9 +- ...d-driver-for-Qualcomm-IPQ-UNIPHY-PCS.patch | 17 +- ...ASER-interface-mode-support-to-IPQ-U.patch | 19 +- ...BASEX-interface-mode-support-to-IPQ-.patch | 27 +- ...BASEX-interface-mode-support-to-IPQ-.patch | 19 +- ...QXGMII-interface-mode-support-to-IPQ.patch | 34 +- ...lcomm-Add-PPE-driver-for-IPQ9574-SoC.patch | 16 - ...lcomm-Add-PPE-buffer-manager-configu.patch | 18 +- ...lcomm-Add-PPE-queue-management-confi.patch | 11 +- ...et-qualcomm-Add-PPE-scheduler-config.patch | 23 +- ...alcomm-Initialize-PPE-queue-settings.patch | 25 +- ...qualcomm-Add-PPE-service-code-config.patch | 17 +- ...qualcomm-Add-PPE-port-control-config.patch | 17 +- ...net-qualcomm-Add-PPE-RSS-hash-config.patch | 19 +- ...-qualcomm-Add-PPE-queue-map-function.patch | 25 +- ...lcomm-Add-PPE-L2-bridge-initializati.patch | 11 +- ...net-qualcomm-Add-PPE-debugfs-support.patch | 21 +- ...lcomm-Add-phylink-support-for-PPE-MA.patch | 23 +- ...lcomm-Add-PPE-port-MAC-MIB-statistic.patch | 21 +- ...lcomm-Add-PPE-port-MAC-address-and-E.patch | 13 +- ...lcomm-Add-API-to-configure-PPE-port-.patch | 11 +- ...lcomm-Add-EDMA-support-for-QCOM-IPQ9.patch | 19 +- ...lcomm-Add-netdevice-support-for-QCOM.patch | 19 +- ...qualcomm-Add-Rx-Ethernet-DMA-support.patch | 44 +- ...qualcomm-Add-Tx-Ethernet-DMA-support.patch | 62 +-- ...lcomm-Add-miscellaneous-error-interr.patch | 40 +- ...ualcomm-Add-ethtool-support-for-EDMA.patch | 16 +- ...lcomm-Add-module-parameters-for-driv.patch | 31 +- ...t-qualcomm-Add-sysctl-for-RPS-bitmap.patch | 19 +- ...k-gcc-ipq9574-Add-definition-for-GPL.patch | 5 - ...9574-Add-support-for-gpll0_out_aux-c.patch | 9 +- ...k-Add-ipq9574-NSSCC-clock-and-reset-.patch | 12 - ...-clock-Controller-driver-for-IPQ9574.patch | 16 +- ...rm64-dts-qcom-ipq9574-Add-nsscc-node.patch | 9 +- ...ix-USB-vdda-pll-supply-for-ipq9574-r.patch | 11 +- ...pq9574-Add-PCS-UNIPHY-device-tree-su.patch | 7 +- ...ts-qcom-Add-IPQ9574-MDIO-device-node.patch | 9 +- ...com-Add-IPQ9574-PPE-base-device-node.patch | 7 +- ...4-dts-qcom-Add-EDMA-node-for-IPQ9574.patch | 7 +- ...ts-qcom-Add-IPQ9574-RDP433-port-node.patch | 19 +- ...lock-Add-clock-ID-for-IPQ-PCS-UNIPHY.patch | 6 - ...lcomm-Add-support-for-label-property.patch | 7 +- ...dd-missing-clock-for-nsscc-from-pcs-.patch | 7 +- ...dd-partition-table-for-ipq9574-rdp-c.patch | 7 +- ...-NVMEM-node-for-IPQ9574-RDP433-board.patch | 7 +- ...lcomm-ppe-Fix-unmet-dependency-with-.patch | 5 - ...dd-label-to-EDMA-port-for-IPQ9574-RD.patch | 17 +- 85 files changed, 414 insertions(+), 1316 deletions(-) diff --git a/target/linux/qualcommbe/patches-6.6/001-v6.8-arm64-dts-qcom-ipq9574-Add-common-RDP-dtsi-file.patch b/target/linux/qualcommbe/patches-6.6/001-v6.8-arm64-dts-qcom-ipq9574-Add-common-RDP-dtsi-file.patch index dc41c33c03..ac12d16428 100644 --- a/target/linux/qualcommbe/patches-6.6/001-v6.8-arm64-dts-qcom-ipq9574-Add-common-RDP-dtsi-file.patch +++ b/target/linux/qualcommbe/patches-6.6/001-v6.8-arm64-dts-qcom-ipq9574-Add-common-RDP-dtsi-file.patch @@ -20,9 +20,6 @@ Signed-off-by: Bjorn Andersson 6 files changed, 130 insertions(+), 345 deletions(-) create mode 100644 arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -new file mode 100644 -index 000000000000..40a7aefd0540 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi @@ -0,0 +1,125 @@ @@ -151,8 +148,6 @@ index 000000000000..40a7aefd0540 +&xo_board_clk { + clock-frequency = <24000000>; +}; -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp418.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp418.dts -index 2b093e02637b..f4f9199d4ab1 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp418.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp418.dts @@ -8,58 +8,12 @@ @@ -215,7 +210,7 @@ index 2b093e02637b..f4f9199d4ab1 100644 }; &sdhc_1 { -@@ -74,10 +28,6 @@ &sdhc_1 { +@@ -74,10 +28,6 @@ status = "okay"; }; @@ -226,7 +221,7 @@ index 2b093e02637b..f4f9199d4ab1 100644 &tlmm { sdc_default_state: sdc-default-state { clk-pins { -@@ -110,15 +60,4 @@ rclk-pins { +@@ -110,15 +60,4 @@ bias-pull-down; }; }; @@ -242,8 +237,6 @@ index 2b093e02637b..f4f9199d4ab1 100644 -&xo_board_clk { - clock-frequency = <24000000>; }; -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -index 877026ccc6e2..1bb8d96c9a82 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts @@ -8,69 +8,11 @@ @@ -317,7 +310,7 @@ index 877026ccc6e2..1bb8d96c9a82 100644 }; &sdhc_1 { -@@ -85,10 +27,6 @@ &sdhc_1 { +@@ -85,10 +27,6 @@ status = "okay"; }; @@ -328,7 +321,7 @@ index 877026ccc6e2..1bb8d96c9a82 100644 &tlmm { sdc_default_state: sdc-default-state { clk-pins { -@@ -122,30 +60,3 @@ rclk-pins { +@@ -122,30 +60,3 @@ }; }; }; @@ -359,8 +352,6 @@ index 877026ccc6e2..1bb8d96c9a82 100644 -&xo_board_clk { - clock-frequency = <24000000>; -}; -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp449.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp449.dts -index c8fa54e1a62c..d36d1078763e 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp449.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp449.dts @@ -8,73 +8,10 @@ @@ -438,8 +429,6 @@ index c8fa54e1a62c..d36d1078763e 100644 -&xo_board_clk { - clock-frequency = <24000000>; }; -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp453.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp453.dts -index f01de6628c3b..c30c9fbedf26 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp453.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp453.dts @@ -8,73 +8,10 @@ @@ -517,8 +506,6 @@ index f01de6628c3b..c30c9fbedf26 100644 -&xo_board_clk { - clock-frequency = <24000000>; }; -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp454.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp454.dts -index 6efae3426cb8..0dc382f5d5ec 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp454.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp454.dts @@ -8,73 +8,9 @@ @@ -596,6 +583,3 @@ index 6efae3426cb8..0dc382f5d5ec 100644 -&xo_board_clk { - clock-frequency = <24000000>; }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/002-01-v6.11-dt-bindings-clock-add-qca8386-qca8084-clock-and-rese.patch b/target/linux/qualcommbe/patches-6.6/002-01-v6.11-dt-bindings-clock-add-qca8386-qca8084-clock-and-rese.patch index 0e300ca56d..ed41e747e1 100644 --- a/target/linux/qualcommbe/patches-6.6/002-01-v6.11-dt-bindings-clock-add-qca8386-qca8084-clock-and-rese.patch +++ b/target/linux/qualcommbe/patches-6.6/002-01-v6.11-dt-bindings-clock-add-qca8386-qca8084-clock-and-rese.patch @@ -21,9 +21,6 @@ Signed-off-by: Bjorn Andersson create mode 100644 include/dt-bindings/clock/qcom,qca8k-nsscc.h create mode 100644 include/dt-bindings/reset/qcom,qca8k-nsscc.h -diff --git a/Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml b/Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml -new file mode 100644 -index 000000000000..61473385da2d --- /dev/null +++ b/Documentation/devicetree/bindings/clock/qcom,qca8k-nsscc.yaml @@ -0,0 +1,86 @@ @@ -113,9 +110,6 @@ index 000000000000..61473385da2d + }; + }; +... -diff --git a/include/dt-bindings/clock/qcom,qca8k-nsscc.h b/include/dt-bindings/clock/qcom,qca8k-nsscc.h -new file mode 100644 -index 000000000000..0ac3e4c69a1a --- /dev/null +++ b/include/dt-bindings/clock/qcom,qca8k-nsscc.h @@ -0,0 +1,101 @@ @@ -220,9 +214,6 @@ index 000000000000..0ac3e4c69a1a +#define NSS_CC_GEPHY2_SYS_CLK 90 +#define NSS_CC_GEPHY3_SYS_CLK 91 +#endif -diff --git a/include/dt-bindings/reset/qcom,qca8k-nsscc.h b/include/dt-bindings/reset/qcom,qca8k-nsscc.h -new file mode 100644 -index 000000000000..c71167a3bd41 --- /dev/null +++ b/include/dt-bindings/reset/qcom,qca8k-nsscc.h @@ -0,0 +1,76 @@ @@ -302,6 +293,3 @@ index 000000000000..c71167a3bd41 +#define NSS_CC_GLOBAL_ARES 66 +#define NSS_CC_XPCS_ARES 67 +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/002-02-v6.11-clk-qcom-add-clock-controller-driver-for-qca8386-qca.patch b/target/linux/qualcommbe/patches-6.6/002-02-v6.11-clk-qcom-add-clock-controller-driver-for-qca8386-qca.patch index d831bb6a75..fe670b1f02 100644 --- a/target/linux/qualcommbe/patches-6.6/002-02-v6.11-clk-qcom-add-clock-controller-driver-for-qca8386-qca.patch +++ b/target/linux/qualcommbe/patches-6.6/002-02-v6.11-clk-qcom-add-clock-controller-driver-for-qca8386-qca.patch @@ -32,11 +32,9 @@ Signed-off-by: Bjorn Andersson 3 files changed, 2231 insertions(+) create mode 100644 drivers/clk/qcom/nsscc-qca8k.c -diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig -index 20ba2eeb24ec..4432b1cce478 100644 --- a/drivers/clk/qcom/Kconfig +++ b/drivers/clk/qcom/Kconfig -@@ -249,6 +249,15 @@ config IPQ_GCC_9574 +@@ -204,6 +204,15 @@ config IPQ_GCC_9574 i2c, USB, SD/eMMC, etc. Select this for the root clock of ipq9574. @@ -52,11 +50,9 @@ index 20ba2eeb24ec..4432b1cce478 100644 config MSM_GCC_8660 tristate "MSM8660 Global Clock Controller" depends on ARM || COMPILE_TEST -diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile -index b7de8600dc3d..0241f00689bc 100644 --- a/drivers/clk/qcom/Makefile +++ b/drivers/clk/qcom/Makefile -@@ -36,6 +36,7 @@ obj-$(CONFIG_IPQ_GCC_806X) += gcc-ipq806x.o +@@ -31,6 +31,7 @@ obj-$(CONFIG_IPQ_GCC_806X) += gcc-ipq806 obj-$(CONFIG_IPQ_GCC_8074) += gcc-ipq8074.o obj-$(CONFIG_IPQ_GCC_9574) += gcc-ipq9574.o obj-$(CONFIG_IPQ_LCC_806X) += lcc-ipq806x.o @@ -64,9 +60,6 @@ index b7de8600dc3d..0241f00689bc 100644 obj-$(CONFIG_MDM_GCC_9607) += gcc-mdm9607.o obj-$(CONFIG_MDM_GCC_9615) += gcc-mdm9615.o obj-$(CONFIG_MSM_GCC_8660) += gcc-msm8660.o -diff --git a/drivers/clk/qcom/nsscc-qca8k.c b/drivers/clk/qcom/nsscc-qca8k.c -new file mode 100644 -index 000000000000..5c8324e2bcca --- /dev/null +++ b/drivers/clk/qcom/nsscc-qca8k.c @@ -0,0 +1,2221 @@ @@ -2291,6 +2284,3 @@ index 000000000000..5c8324e2bcca + +MODULE_DESCRIPTION("QCOM NSS_CC QCA8K Driver"); +MODULE_LICENSE("GPL"); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/003-v6.11-arm64-dts-qcom-ipq9574-add-MDIO-bus.patch b/target/linux/qualcommbe/patches-6.6/003-v6.11-arm64-dts-qcom-ipq9574-add-MDIO-bus.patch index 90a7ad364c..43f256bb26 100644 --- a/target/linux/qualcommbe/patches-6.6/003-v6.11-arm64-dts-qcom-ipq9574-add-MDIO-bus.patch +++ b/target/linux/qualcommbe/patches-6.6/003-v6.11-arm64-dts-qcom-ipq9574-add-MDIO-bus.patch @@ -13,11 +13,9 @@ Signed-off-by: Bjorn Andersson arch/arm64/boot/dts/qcom/ipq9574.dtsi | 10 ++++++++++ 1 file changed, 10 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 7f2e5cbf3bbb..ded02bc39275 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -232,6 +232,16 @@ rng: rng@e3000 { +@@ -218,6 +218,16 @@ clock-names = "core"; }; @@ -34,6 +32,3 @@ index 7f2e5cbf3bbb..ded02bc39275 100644 qfprom: efuse@a4000 { compatible = "qcom,ipq9574-qfprom", "qcom,qfprom"; reg = <0x000a4000 0x5a1>; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/004-01-v.610-clk-qcom-clk-rcg-introduce-support-for-multiple-conf.patch b/target/linux/qualcommbe/patches-6.6/004-01-v.610-clk-qcom-clk-rcg-introduce-support-for-multiple-conf.patch index c75cd16d6b..91d956240a 100644 --- a/target/linux/qualcommbe/patches-6.6/004-01-v.610-clk-qcom-clk-rcg-introduce-support-for-multiple-conf.patch +++ b/target/linux/qualcommbe/patches-6.6/004-01-v.610-clk-qcom-clk-rcg-introduce-support-for-multiple-conf.patch @@ -35,8 +35,6 @@ Signed-off-by: Bjorn Andersson drivers/clk/qcom/clk-rcg.h | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) -diff --git a/drivers/clk/qcom/clk-rcg.h b/drivers/clk/qcom/clk-rcg.h -index e6d84c8c7989..c50e6616d02c 100644 --- a/drivers/clk/qcom/clk-rcg.h +++ b/drivers/clk/qcom/clk-rcg.h @@ -17,6 +17,23 @@ struct freq_tbl { @@ -63,7 +61,7 @@ index e6d84c8c7989..c50e6616d02c 100644 /** * struct mn - M/N:D counter * @mnctr_en_bit: bit to enable mn counter -@@ -138,6 +155,7 @@ extern const struct clk_ops clk_dyn_rcg_ops; +@@ -138,6 +155,7 @@ extern const struct clk_ops clk_dyn_rcg_ * @safe_src_index: safe src index value * @parent_map: map from software's parent index to hardware's src_sel field * @freq_tbl: frequency table @@ -83,6 +81,3 @@ index e6d84c8c7989..c50e6616d02c 100644 struct clk_regmap clkr; u8 cfg_off; u32 parked_cfg; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/004-02-v6.10-clk-qcom-clk-rcg2-add-support-for-rcg2-freq-multi-op.patch b/target/linux/qualcommbe/patches-6.6/004-02-v6.10-clk-qcom-clk-rcg2-add-support-for-rcg2-freq-multi-op.patch index 94451fd636..7c329cb0c0 100644 --- a/target/linux/qualcommbe/patches-6.6/004-02-v6.10-clk-qcom-clk-rcg2-add-support-for-rcg2-freq-multi-op.patch +++ b/target/linux/qualcommbe/patches-6.6/004-02-v6.10-clk-qcom-clk-rcg2-add-support-for-rcg2-freq-multi-op.patch @@ -36,8 +36,6 @@ Signed-off-by: Bjorn Andersson drivers/clk/qcom/common.h | 2 + 4 files changed, 187 insertions(+) -diff --git a/drivers/clk/qcom/clk-rcg.h b/drivers/clk/qcom/clk-rcg.h -index c50e6616d02c..d7414361e432 100644 --- a/drivers/clk/qcom/clk-rcg.h +++ b/drivers/clk/qcom/clk-rcg.h @@ -190,6 +190,7 @@ struct clk_rcg2_gfx3d { @@ -48,11 +46,9 @@ index c50e6616d02c..d7414361e432 100644 extern const struct clk_ops clk_rcg2_mux_closest_ops; extern const struct clk_ops clk_edp_pixel_ops; extern const struct clk_ops clk_byte_ops; -diff --git a/drivers/clk/qcom/clk-rcg2.c b/drivers/clk/qcom/clk-rcg2.c -index 5183c74b074f..9b3aaa7f20ac 100644 --- a/drivers/clk/qcom/clk-rcg2.c +++ b/drivers/clk/qcom/clk-rcg2.c -@@ -260,6 +260,115 @@ static int _freq_tbl_determine_rate(struct clk_hw *hw, const struct freq_tbl *f, +@@ -260,6 +260,115 @@ static int _freq_tbl_determine_rate(stru return 0; } @@ -168,7 +164,7 @@ index 5183c74b074f..9b3aaa7f20ac 100644 static int clk_rcg2_determine_rate(struct clk_hw *hw, struct clk_rate_request *req) { -@@ -276,6 +385,14 @@ static int clk_rcg2_determine_floor_rate(struct clk_hw *hw, +@@ -276,6 +385,14 @@ static int clk_rcg2_determine_floor_rate return _freq_tbl_determine_rate(hw, rcg->freq_tbl, req, FLOOR); } @@ -183,7 +179,7 @@ index 5183c74b074f..9b3aaa7f20ac 100644 static int __clk_rcg2_configure(struct clk_rcg2 *rcg, const struct freq_tbl *f, u32 *_cfg) { -@@ -371,6 +488,30 @@ static int __clk_rcg2_set_rate(struct clk_hw *hw, unsigned long rate, +@@ -371,6 +488,30 @@ static int __clk_rcg2_set_rate(struct cl return clk_rcg2_configure(rcg, f); } @@ -214,7 +210,7 @@ index 5183c74b074f..9b3aaa7f20ac 100644 static int clk_rcg2_set_rate(struct clk_hw *hw, unsigned long rate, unsigned long parent_rate) { -@@ -383,6 +524,12 @@ static int clk_rcg2_set_floor_rate(struct clk_hw *hw, unsigned long rate, +@@ -383,6 +524,12 @@ static int clk_rcg2_set_floor_rate(struc return __clk_rcg2_set_rate(hw, rate, FLOOR); } @@ -227,7 +223,7 @@ index 5183c74b074f..9b3aaa7f20ac 100644 static int clk_rcg2_set_rate_and_parent(struct clk_hw *hw, unsigned long rate, unsigned long parent_rate, u8 index) { -@@ -395,6 +542,12 @@ static int clk_rcg2_set_floor_rate_and_parent(struct clk_hw *hw, +@@ -395,6 +542,12 @@ static int clk_rcg2_set_floor_rate_and_p return __clk_rcg2_set_rate(hw, rate, FLOOR); } @@ -240,7 +236,7 @@ index 5183c74b074f..9b3aaa7f20ac 100644 static int clk_rcg2_get_duty_cycle(struct clk_hw *hw, struct clk_duty *duty) { struct clk_rcg2 *rcg = to_clk_rcg2(hw); -@@ -505,6 +658,19 @@ const struct clk_ops clk_rcg2_floor_ops = { +@@ -505,6 +658,19 @@ const struct clk_ops clk_rcg2_floor_ops }; EXPORT_SYMBOL_GPL(clk_rcg2_floor_ops); @@ -260,11 +256,9 @@ index 5183c74b074f..9b3aaa7f20ac 100644 const struct clk_ops clk_rcg2_mux_closest_ops = { .determine_rate = __clk_mux_determine_rate_closest, .get_parent = clk_rcg2_get_parent, -diff --git a/drivers/clk/qcom/common.c b/drivers/clk/qcom/common.c -index 75f09e6e057e..48f81e3a5e80 100644 --- a/drivers/clk/qcom/common.c +++ b/drivers/clk/qcom/common.c -@@ -41,6 +41,24 @@ struct freq_tbl *qcom_find_freq(const struct freq_tbl *f, unsigned long rate) +@@ -41,6 +41,24 @@ struct freq_tbl *qcom_find_freq(const st } EXPORT_SYMBOL_GPL(qcom_find_freq); @@ -289,11 +283,9 @@ index 75f09e6e057e..48f81e3a5e80 100644 const struct freq_tbl *qcom_find_freq_floor(const struct freq_tbl *f, unsigned long rate) { -diff --git a/drivers/clk/qcom/common.h b/drivers/clk/qcom/common.h -index 9c8f7b798d9f..2d4a8a837e6c 100644 --- a/drivers/clk/qcom/common.h +++ b/drivers/clk/qcom/common.h -@@ -45,6 +45,8 @@ extern const struct freq_tbl *qcom_find_freq(const struct freq_tbl *f, +@@ -45,6 +45,8 @@ extern const struct freq_tbl *qcom_find_ unsigned long rate); extern const struct freq_tbl *qcom_find_freq_floor(const struct freq_tbl *f, unsigned long rate); @@ -302,6 +294,3 @@ index 9c8f7b798d9f..2d4a8a837e6c 100644 extern void qcom_pll_set_fsm_mode(struct regmap *m, u32 reg, u8 bias_count, u8 lock_count); extern int qcom_find_src_index(struct clk_hw *hw, const struct parent_map *map, --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/005-v6.11-clk-qcom-branch-Add-clk_branch2_prepare_ops.patch b/target/linux/qualcommbe/patches-6.6/005-v6.11-clk-qcom-branch-Add-clk_branch2_prepare_ops.patch index 7790af54ee..1f35ac2002 100644 --- a/target/linux/qualcommbe/patches-6.6/005-v6.11-clk-qcom-branch-Add-clk_branch2_prepare_ops.patch +++ b/target/linux/qualcommbe/patches-6.6/005-v6.11-clk-qcom-branch-Add-clk_branch2_prepare_ops.patch @@ -20,11 +20,9 @@ Signed-off-by: Bjorn Andersson drivers/clk/qcom/clk-branch.h | 1 + 2 files changed, 8 insertions(+) -diff --git a/drivers/clk/qcom/clk-branch.c b/drivers/clk/qcom/clk-branch.c -index c1dba33ac31a..229480c5b075 100644 --- a/drivers/clk/qcom/clk-branch.c +++ b/drivers/clk/qcom/clk-branch.c -@@ -191,3 +191,10 @@ const struct clk_ops clk_branch_simple_ops = { +@@ -153,3 +153,10 @@ const struct clk_ops clk_branch_simple_o .is_enabled = clk_is_enabled_regmap, }; EXPORT_SYMBOL_GPL(clk_branch_simple_ops); @@ -35,18 +33,13 @@ index c1dba33ac31a..229480c5b075 100644 + .is_prepared = clk_is_enabled_regmap, +}; +EXPORT_SYMBOL_GPL(clk_branch2_prepare_ops); -diff --git a/drivers/clk/qcom/clk-branch.h b/drivers/clk/qcom/clk-branch.h -index f1b3b635ff32..292756435f53 100644 --- a/drivers/clk/qcom/clk-branch.h +++ b/drivers/clk/qcom/clk-branch.h -@@ -109,6 +109,7 @@ extern const struct clk_ops clk_branch2_ops; +@@ -85,6 +85,7 @@ extern const struct clk_ops clk_branch_o + extern const struct clk_ops clk_branch2_ops; extern const struct clk_ops clk_branch_simple_ops; extern const struct clk_ops clk_branch2_aon_ops; +extern const struct clk_ops clk_branch2_prepare_ops; #define to_clk_branch(_hw) \ container_of(to_clk_regmap(_hw), struct clk_branch, clkr) - --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/006-v6.11-clk-qcom-common-commonize-qcom_cc_really_probe.patch b/target/linux/qualcommbe/patches-6.6/006-v6.11-clk-qcom-common-commonize-qcom_cc_really_probe.patch index d5db3712df..ce181b4791 100644 --- a/target/linux/qualcommbe/patches-6.6/006-v6.11-clk-qcom-common-commonize-qcom_cc_really_probe.patch +++ b/target/linux/qualcommbe/patches-6.6/006-v6.11-clk-qcom-common-commonize-qcom_cc_really_probe.patch @@ -131,11 +131,9 @@ Signed-off-by: Bjorn Andersson drivers/clk/qcom/videocc-sm8550.c | 2 +- 105 files changed, 108 insertions(+), 109 deletions(-) -diff --git a/drivers/clk/qcom/apss-ipq6018.c b/drivers/clk/qcom/apss-ipq6018.c -index e6295b832686..c89d126ebac3 100644 --- a/drivers/clk/qcom/apss-ipq6018.c +++ b/drivers/clk/qcom/apss-ipq6018.c -@@ -123,7 +123,7 @@ static int apss_ipq6018_probe(struct platform_device *pdev) +@@ -89,7 +89,7 @@ static int apss_ipq6018_probe(struct pla if (!regmap) return -ENODEV; @@ -144,11 +142,9 @@ index e6295b832686..c89d126ebac3 100644 } static struct platform_driver apss_ipq6018_driver = { -diff --git a/drivers/clk/qcom/camcc-sc7280.c b/drivers/clk/qcom/camcc-sc7280.c -index da29d3b953ee..accd257632df 100644 --- a/drivers/clk/qcom/camcc-sc7280.c +++ b/drivers/clk/qcom/camcc-sc7280.c -@@ -2481,7 +2481,7 @@ static int cam_cc_sc7280_probe(struct platform_device *pdev) +@@ -2462,7 +2462,7 @@ static int cam_cc_sc7280_probe(struct pl clk_lucid_pll_configure(&cam_cc_pll5, regmap, &cam_cc_pll5_config); clk_lucid_pll_configure(&cam_cc_pll6, regmap, &cam_cc_pll6_config); @@ -157,11 +153,9 @@ index da29d3b953ee..accd257632df 100644 } static struct platform_driver cam_cc_sc7280_driver = { -diff --git a/drivers/clk/qcom/camcc-sdm845.c b/drivers/clk/qcom/camcc-sdm845.c -index 8466d03e0d05..40022a10f8c0 100644 --- a/drivers/clk/qcom/camcc-sdm845.c +++ b/drivers/clk/qcom/camcc-sdm845.c -@@ -1735,7 +1735,7 @@ static int cam_cc_sdm845_probe(struct platform_device *pdev) +@@ -1735,7 +1735,7 @@ static int cam_cc_sdm845_probe(struct pl cam_cc_pll_config.l = 0x14; clk_fabia_pll_configure(&cam_cc_pll3, regmap, &cam_cc_pll_config); @@ -170,11 +164,9 @@ index 8466d03e0d05..40022a10f8c0 100644 } static struct platform_driver cam_cc_sdm845_driver = { -diff --git a/drivers/clk/qcom/camcc-sm6350.c b/drivers/clk/qcom/camcc-sm6350.c -index c6fe684aa780..f6634cc8663e 100644 --- a/drivers/clk/qcom/camcc-sm6350.c +++ b/drivers/clk/qcom/camcc-sm6350.c -@@ -1879,7 +1879,7 @@ static int camcc_sm6350_probe(struct platform_device *pdev) +@@ -1879,7 +1879,7 @@ static int camcc_sm6350_probe(struct pla clk_agera_pll_configure(&camcc_pll2, regmap, &camcc_pll2_config); clk_fabia_pll_configure(&camcc_pll3, regmap, &camcc_pll3_config); @@ -183,11 +175,9 @@ index c6fe684aa780..f6634cc8663e 100644 } static struct platform_driver camcc_sm6350_driver = { -diff --git a/drivers/clk/qcom/camcc-sm8250.c b/drivers/clk/qcom/camcc-sm8250.c -index 96103eeda586..34d2f17520dc 100644 --- a/drivers/clk/qcom/camcc-sm8250.c +++ b/drivers/clk/qcom/camcc-sm8250.c -@@ -2433,7 +2433,7 @@ static int cam_cc_sm8250_probe(struct platform_device *pdev) +@@ -2433,7 +2433,7 @@ static int cam_cc_sm8250_probe(struct pl clk_lucid_pll_configure(&cam_cc_pll3, regmap, &cam_cc_pll3_config); clk_lucid_pll_configure(&cam_cc_pll4, regmap, &cam_cc_pll4_config); @@ -196,11 +186,9 @@ index 96103eeda586..34d2f17520dc 100644 } static struct platform_driver cam_cc_sm8250_driver = { -diff --git a/drivers/clk/qcom/camcc-sm8450.c b/drivers/clk/qcom/camcc-sm8450.c -index 51338a2884d2..26b78eed15ef 100644 --- a/drivers/clk/qcom/camcc-sm8450.c +++ b/drivers/clk/qcom/camcc-sm8450.c -@@ -2839,7 +2839,7 @@ static int cam_cc_sm8450_probe(struct platform_device *pdev) +@@ -2839,7 +2839,7 @@ static int cam_cc_sm8450_probe(struct pl clk_lucid_evo_pll_configure(&cam_cc_pll7, regmap, &cam_cc_pll7_config); clk_lucid_evo_pll_configure(&cam_cc_pll8, regmap, &cam_cc_pll8_config); @@ -209,11 +197,9 @@ index 51338a2884d2..26b78eed15ef 100644 } static struct platform_driver cam_cc_sm8450_driver = { -diff --git a/drivers/clk/qcom/common.c b/drivers/clk/qcom/common.c -index 1e79f05d5226..c92e10c60322 100644 --- a/drivers/clk/qcom/common.c +++ b/drivers/clk/qcom/common.c -@@ -252,11 +252,10 @@ static struct clk_hw *qcom_cc_clk_hw_get(struct of_phandle_args *clkspec, +@@ -252,11 +252,10 @@ static struct clk_hw *qcom_cc_clk_hw_get return cc->rclks[idx] ? &cc->rclks[idx]->hw : NULL; } @@ -226,7 +212,7 @@ index 1e79f05d5226..c92e10c60322 100644 struct qcom_reset_controller *reset; struct qcom_cc *cc; struct gdsc_desc *scd; -@@ -333,7 +332,7 @@ int qcom_cc_probe(struct platform_device *pdev, const struct qcom_cc_desc *desc) +@@ -333,7 +332,7 @@ int qcom_cc_probe(struct platform_device if (IS_ERR(regmap)) return PTR_ERR(regmap); @@ -235,7 +221,7 @@ index 1e79f05d5226..c92e10c60322 100644 } EXPORT_SYMBOL_GPL(qcom_cc_probe); -@@ -351,7 +350,7 @@ int qcom_cc_probe_by_index(struct platform_device *pdev, int index, +@@ -351,7 +350,7 @@ int qcom_cc_probe_by_index(struct platfo if (IS_ERR(regmap)) return PTR_ERR(regmap); @@ -244,11 +230,9 @@ index 1e79f05d5226..c92e10c60322 100644 } EXPORT_SYMBOL_GPL(qcom_cc_probe_by_index); -diff --git a/drivers/clk/qcom/common.h b/drivers/clk/qcom/common.h -index 2d4a8a837e6c..d048bdeeba10 100644 --- a/drivers/clk/qcom/common.h +++ b/drivers/clk/qcom/common.h -@@ -60,7 +60,7 @@ extern int qcom_cc_register_sleep_clk(struct device *dev); +@@ -60,7 +60,7 @@ extern int qcom_cc_register_sleep_clk(st extern struct regmap *qcom_cc_map(struct platform_device *pdev, const struct qcom_cc_desc *desc); @@ -257,24 +241,20 @@ index 2d4a8a837e6c..d048bdeeba10 100644 const struct qcom_cc_desc *desc, struct regmap *regmap); extern int qcom_cc_probe(struct platform_device *pdev, -diff --git a/drivers/clk/qcom/dispcc-qcm2290.c b/drivers/clk/qcom/dispcc-qcm2290.c -index 654a10d53e5c..449ffea2295d 100644 --- a/drivers/clk/qcom/dispcc-qcm2290.c +++ b/drivers/clk/qcom/dispcc-qcm2290.c -@@ -522,7 +522,7 @@ static int disp_cc_qcm2290_probe(struct platform_device *pdev) - /* Keep some clocks always-on */ - qcom_branch_set_clk_en(regmap, 0x604c); /* DISP_CC_XO_CLK */ +@@ -522,7 +522,7 @@ static int disp_cc_qcm2290_probe(struct + /* Keep DISP_CC_XO_CLK always-ON */ + regmap_update_bits(regmap, 0x604c, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &disp_cc_qcm2290_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &disp_cc_qcm2290_desc, regmap); if (ret) { dev_err(&pdev->dev, "Failed to register DISP CC clocks\n"); return ret; -diff --git a/drivers/clk/qcom/dispcc-sc7180.c b/drivers/clk/qcom/dispcc-sc7180.c -index 38d7859981c7..4710247be530 100644 --- a/drivers/clk/qcom/dispcc-sc7180.c +++ b/drivers/clk/qcom/dispcc-sc7180.c -@@ -713,7 +713,7 @@ static int disp_cc_sc7180_probe(struct platform_device *pdev) +@@ -713,7 +713,7 @@ static int disp_cc_sc7180_probe(struct p clk_fabia_pll_configure(&disp_cc_pll0, regmap, &disp_cc_pll_config); @@ -283,24 +263,20 @@ index 38d7859981c7..4710247be530 100644 } static struct platform_driver disp_cc_sc7180_driver = { -diff --git a/drivers/clk/qcom/dispcc-sc7280.c b/drivers/clk/qcom/dispcc-sc7280.c -index fbeb8fccb99a..db0745954894 100644 --- a/drivers/clk/qcom/dispcc-sc7280.c +++ b/drivers/clk/qcom/dispcc-sc7280.c -@@ -881,7 +881,7 @@ static int disp_cc_sc7280_probe(struct platform_device *pdev) - /* Keep some clocks always-on */ - qcom_branch_set_clk_en(regmap, 0x5008); /* DISP_CC_XO_CLK */ +@@ -884,7 +884,7 @@ static int disp_cc_sc7280_probe(struct p + */ + regmap_update_bits(regmap, 0x5008, BIT(0), BIT(0)); - return qcom_cc_really_probe(pdev, &disp_cc_sc7280_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &disp_cc_sc7280_desc, regmap); } static struct platform_driver disp_cc_sc7280_driver = { -diff --git a/drivers/clk/qcom/dispcc-sc8280xp.c b/drivers/clk/qcom/dispcc-sc8280xp.c -index 91172f5b2f15..f1ca9ae0b33f 100644 --- a/drivers/clk/qcom/dispcc-sc8280xp.c +++ b/drivers/clk/qcom/dispcc-sc8280xp.c -@@ -3172,7 +3172,7 @@ static int disp_cc_sc8280xp_probe(struct platform_device *pdev) +@@ -3172,7 +3172,7 @@ static int disp_cc_sc8280xp_probe(struct clk_lucid_pll_configure(clkr_to_alpha_clk_pll(desc->clks[DISP_CC_PLL1]), regmap, &disp_cc_pll1_config); clk_lucid_pll_configure(clkr_to_alpha_clk_pll(desc->clks[DISP_CC_PLL2]), regmap, &disp_cc_pll2_config); @@ -309,11 +285,9 @@ index 91172f5b2f15..f1ca9ae0b33f 100644 if (ret) { dev_err(&pdev->dev, "Failed to register display clock controller\n"); goto out_pm_runtime_put; -diff --git a/drivers/clk/qcom/dispcc-sdm845.c b/drivers/clk/qcom/dispcc-sdm845.c -index b84fdd17c3d8..e6139e8f74dc 100644 --- a/drivers/clk/qcom/dispcc-sdm845.c +++ b/drivers/clk/qcom/dispcc-sdm845.c -@@ -863,7 +863,7 @@ static int disp_cc_sdm845_probe(struct platform_device *pdev) +@@ -863,7 +863,7 @@ static int disp_cc_sdm845_probe(struct p /* Enable hardware clock gating for DSI and MDP clocks */ regmap_update_bits(regmap, 0x8000, 0x7f0, 0x7f0); @@ -322,24 +296,20 @@ index b84fdd17c3d8..e6139e8f74dc 100644 } static struct platform_driver disp_cc_sdm845_driver = { -diff --git a/drivers/clk/qcom/dispcc-sm6115.c b/drivers/clk/qcom/dispcc-sm6115.c -index bd07f26af35a..939887f82ecc 100644 --- a/drivers/clk/qcom/dispcc-sm6115.c +++ b/drivers/clk/qcom/dispcc-sm6115.c -@@ -586,7 +586,7 @@ static int disp_cc_sm6115_probe(struct platform_device *pdev) - /* Keep some clocks always-on */ - qcom_branch_set_clk_en(regmap, 0x604c); /* DISP_CC_XO_CLK */ +@@ -586,7 +586,7 @@ static int disp_cc_sm6115_probe(struct p + /* Keep DISP_CC_XO_CLK always-ON */ + regmap_update_bits(regmap, 0x604c, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &disp_cc_sm6115_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &disp_cc_sm6115_desc, regmap); if (ret) { dev_err(&pdev->dev, "Failed to register DISP CC clocks\n"); return ret; -diff --git a/drivers/clk/qcom/dispcc-sm6125.c b/drivers/clk/qcom/dispcc-sm6125.c -index 85e07731cce2..51c7492816fb 100644 --- a/drivers/clk/qcom/dispcc-sm6125.c +++ b/drivers/clk/qcom/dispcc-sm6125.c -@@ -682,7 +682,7 @@ static int disp_cc_sm6125_probe(struct platform_device *pdev) +@@ -682,7 +682,7 @@ static int disp_cc_sm6125_probe(struct p clk_alpha_pll_configure(&disp_cc_pll0, regmap, &disp_cc_pll0_config); @@ -348,11 +318,9 @@ index 85e07731cce2..51c7492816fb 100644 } static struct platform_driver disp_cc_sm6125_driver = { -diff --git a/drivers/clk/qcom/dispcc-sm6350.c b/drivers/clk/qcom/dispcc-sm6350.c -index f712cbef9456..50facb36701a 100644 --- a/drivers/clk/qcom/dispcc-sm6350.c +++ b/drivers/clk/qcom/dispcc-sm6350.c -@@ -761,7 +761,7 @@ static int disp_cc_sm6350_probe(struct platform_device *pdev) +@@ -761,7 +761,7 @@ static int disp_cc_sm6350_probe(struct p clk_fabia_pll_configure(&disp_cc_pll0, regmap, &disp_cc_pll0_config); @@ -361,11 +329,9 @@ index f712cbef9456..50facb36701a 100644 } static struct platform_driver disp_cc_sm6350_driver = { -diff --git a/drivers/clk/qcom/dispcc-sm6375.c b/drivers/clk/qcom/dispcc-sm6375.c -index 2d42f85f184b..167dd369a794 100644 --- a/drivers/clk/qcom/dispcc-sm6375.c +++ b/drivers/clk/qcom/dispcc-sm6375.c -@@ -583,7 +583,7 @@ static int disp_cc_sm6375_probe(struct platform_device *pdev) +@@ -583,7 +583,7 @@ static int disp_cc_sm6375_probe(struct p clk_lucid_pll_configure(&disp_cc_pll0, regmap, &disp_cc_pll0_config); @@ -374,50 +340,42 @@ index 2d42f85f184b..167dd369a794 100644 } static struct platform_driver disp_cc_sm6375_driver = { -diff --git a/drivers/clk/qcom/dispcc-sm8250.c b/drivers/clk/qcom/dispcc-sm8250.c -index 43307c8a342c..5a09009b7289 100644 --- a/drivers/clk/qcom/dispcc-sm8250.c +++ b/drivers/clk/qcom/dispcc-sm8250.c -@@ -1366,7 +1366,7 @@ static int disp_cc_sm8250_probe(struct platform_device *pdev) - /* Keep some clocks always-on */ - qcom_branch_set_clk_en(regmap, 0x605c); /* DISP_CC_XO_CLK */ +@@ -1376,7 +1376,7 @@ static int disp_cc_sm8250_probe(struct p + /* DISP_CC_XO_CLK always-on */ + regmap_update_bits(regmap, 0x605c, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &disp_cc_sm8250_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &disp_cc_sm8250_desc, regmap); pm_runtime_put(&pdev->dev); -diff --git a/drivers/clk/qcom/dispcc-sm8450.c b/drivers/clk/qcom/dispcc-sm8450.c -index 5d028871624e..d1d3f60789ee 100644 --- a/drivers/clk/qcom/dispcc-sm8450.c +++ b/drivers/clk/qcom/dispcc-sm8450.c -@@ -1778,7 +1778,7 @@ static int disp_cc_sm8450_probe(struct platform_device *pdev) - /* Keep some clocks always-on */ - qcom_branch_set_clk_en(regmap, 0xe05c); /* DISP_CC_XO_CLK */ +@@ -1781,7 +1781,7 @@ static int disp_cc_sm8450_probe(struct p + */ + regmap_update_bits(regmap, 0xe05c, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &disp_cc_sm8450_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &disp_cc_sm8450_desc, regmap); if (ret) goto err_put_rpm; -diff --git a/drivers/clk/qcom/dispcc-sm8550.c b/drivers/clk/qcom/dispcc-sm8550.c -index 88f9347ab77c..31ae46f180a5 100644 --- a/drivers/clk/qcom/dispcc-sm8550.c +++ b/drivers/clk/qcom/dispcc-sm8550.c -@@ -1771,7 +1771,7 @@ static int disp_cc_sm8550_probe(struct platform_device *pdev) - /* Keep some clocks always-on */ - qcom_branch_set_clk_en(regmap, 0xe054); /* DISP_CC_XO_CLK */ +@@ -1774,7 +1774,7 @@ static int disp_cc_sm8550_probe(struct p + */ + regmap_update_bits(regmap, 0xe054, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &disp_cc_sm8550_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &disp_cc_sm8550_desc, regmap); if (ret) goto err_put_rpm; -diff --git a/drivers/clk/qcom/gcc-ipq5018.c b/drivers/clk/qcom/gcc-ipq5018.c -index c1732d70e3a2..70f5dcb96700 100644 --- a/drivers/clk/qcom/gcc-ipq5018.c +++ b/drivers/clk/qcom/gcc-ipq5018.c -@@ -3698,7 +3698,7 @@ static int gcc_ipq5018_probe(struct platform_device *pdev) +@@ -3697,7 +3697,7 @@ static int gcc_ipq5018_probe(struct plat clk_alpha_pll_configure(&ubi32_pll_main, regmap, &ubi32_pll_config); @@ -426,11 +384,9 @@ index c1732d70e3a2..70f5dcb96700 100644 } static struct platform_driver gcc_ipq5018_driver = { -diff --git a/drivers/clk/qcom/gcc-ipq6018.c b/drivers/clk/qcom/gcc-ipq6018.c -index 7e69de34c310..9e5885101366 100644 --- a/drivers/clk/qcom/gcc-ipq6018.c +++ b/drivers/clk/qcom/gcc-ipq6018.c -@@ -4642,7 +4642,7 @@ static int gcc_ipq6018_probe(struct platform_device *pdev) +@@ -4604,7 +4604,7 @@ static int gcc_ipq6018_probe(struct plat clk_alpha_pll_configure(&nss_crypto_pll_main, regmap, &nss_crypto_pll_config); @@ -439,11 +395,9 @@ index 7e69de34c310..9e5885101366 100644 } static struct platform_driver gcc_ipq6018_driver = { -diff --git a/drivers/clk/qcom/gcc-ipq8074.c b/drivers/clk/qcom/gcc-ipq8074.c -index d2be56c5892d..32fd01ef469a 100644 --- a/drivers/clk/qcom/gcc-ipq8074.c +++ b/drivers/clk/qcom/gcc-ipq8074.c -@@ -4760,7 +4760,7 @@ static int gcc_ipq8074_probe(struct platform_device *pdev) +@@ -4728,7 +4728,7 @@ static int gcc_ipq8074_probe(struct plat clk_alpha_pll_configure(&nss_crypto_pll_main, regmap, &nss_crypto_pll_config); @@ -452,11 +406,9 @@ index d2be56c5892d..32fd01ef469a 100644 } static struct platform_driver gcc_ipq8074_driver = { -diff --git a/drivers/clk/qcom/gcc-mdm9607.c b/drivers/clk/qcom/gcc-mdm9607.c -index fb290e73ce94..6e6068b168e6 100644 --- a/drivers/clk/qcom/gcc-mdm9607.c +++ b/drivers/clk/qcom/gcc-mdm9607.c -@@ -1604,7 +1604,7 @@ static int gcc_mdm9607_probe(struct platform_device *pdev) +@@ -1604,7 +1604,7 @@ static int gcc_mdm9607_probe(struct plat /* Vote for GPLL0 to turn on. Needed by acpuclock. */ regmap_update_bits(regmap, 0x45000, BIT(0), BIT(0)); @@ -465,11 +417,9 @@ index fb290e73ce94..6e6068b168e6 100644 } static struct platform_driver gcc_mdm9607_driver = { -diff --git a/drivers/clk/qcom/gcc-mdm9615.c b/drivers/clk/qcom/gcc-mdm9615.c -index aec7c4a1d3de..33987b957737 100644 --- a/drivers/clk/qcom/gcc-mdm9615.c +++ b/drivers/clk/qcom/gcc-mdm9615.c -@@ -1736,7 +1736,7 @@ static int gcc_mdm9615_probe(struct platform_device *pdev) +@@ -1736,7 +1736,7 @@ static int gcc_mdm9615_probe(struct plat if (IS_ERR(regmap)) return PTR_ERR(regmap); @@ -478,11 +428,9 @@ index aec7c4a1d3de..33987b957737 100644 } static struct platform_driver gcc_mdm9615_driver = { -diff --git a/drivers/clk/qcom/gcc-msm8917.c b/drivers/clk/qcom/gcc-msm8917.c -index f2b8729e4198..3e2a2ae2ee6e 100644 --- a/drivers/clk/qcom/gcc-msm8917.c +++ b/drivers/clk/qcom/gcc-msm8917.c -@@ -3270,7 +3270,7 @@ static int gcc_msm8917_probe(struct platform_device *pdev) +@@ -3270,7 +3270,7 @@ static int gcc_msm8917_probe(struct plat clk_alpha_pll_configure(&gpll3_early, regmap, &gpll3_early_config); @@ -491,11 +439,9 @@ index f2b8729e4198..3e2a2ae2ee6e 100644 } static const struct of_device_id gcc_msm8917_match_table[] = { -diff --git a/drivers/clk/qcom/gcc-msm8939.c b/drivers/clk/qcom/gcc-msm8939.c -index 7b9a3e99b589..7431c9a65044 100644 --- a/drivers/clk/qcom/gcc-msm8939.c +++ b/drivers/clk/qcom/gcc-msm8939.c -@@ -4108,7 +4108,7 @@ static int gcc_msm8939_probe(struct platform_device *pdev) +@@ -4004,7 +4004,7 @@ static int gcc_msm8939_probe(struct plat clk_pll_configure_sr_hpm_lp(&gpll3, regmap, &gpll3_config, true); clk_pll_configure_sr_hpm_lp(&gpll4, regmap, &gpll4_config, true); @@ -504,11 +450,9 @@ index 7b9a3e99b589..7431c9a65044 100644 } static struct platform_driver gcc_msm8939_driver = { -diff --git a/drivers/clk/qcom/gcc-msm8953.c b/drivers/clk/qcom/gcc-msm8953.c -index 7563bff58118..855a61966f3e 100644 --- a/drivers/clk/qcom/gcc-msm8953.c +++ b/drivers/clk/qcom/gcc-msm8953.c -@@ -4220,7 +4220,7 @@ static int gcc_msm8953_probe(struct platform_device *pdev) +@@ -4216,7 +4216,7 @@ static int gcc_msm8953_probe(struct plat clk_alpha_pll_configure(&gpll3_early, regmap, &gpll3_early_config); @@ -517,11 +461,9 @@ index 7563bff58118..855a61966f3e 100644 } static const struct of_device_id gcc_msm8953_match_table[] = { -diff --git a/drivers/clk/qcom/gcc-msm8976.c b/drivers/clk/qcom/gcc-msm8976.c -index 7fac0ca594aa..399f22033c29 100644 --- a/drivers/clk/qcom/gcc-msm8976.c +++ b/drivers/clk/qcom/gcc-msm8976.c -@@ -4129,7 +4129,7 @@ static int gcc_msm8976_probe(struct platform_device *pdev) +@@ -4129,7 +4129,7 @@ static int gcc_msm8976_probe(struct plat if (ret) return ret; @@ -530,11 +472,9 @@ index 7fac0ca594aa..399f22033c29 100644 } static struct platform_driver gcc_msm8976_driver = { -diff --git a/drivers/clk/qcom/gcc-msm8996.c b/drivers/clk/qcom/gcc-msm8996.c -index e7b03a17514a..4fc667b94cf2 100644 --- a/drivers/clk/qcom/gcc-msm8996.c +++ b/drivers/clk/qcom/gcc-msm8996.c -@@ -3620,7 +3620,7 @@ static int gcc_msm8996_probe(struct platform_device *pdev) +@@ -3620,7 +3620,7 @@ static int gcc_msm8996_probe(struct plat */ regmap_update_bits(regmap, 0x52008, BIT(21), BIT(21)); @@ -543,11 +483,9 @@ index e7b03a17514a..4fc667b94cf2 100644 } static struct platform_driver gcc_msm8996_driver = { -diff --git a/drivers/clk/qcom/gcc-msm8998.c b/drivers/clk/qcom/gcc-msm8998.c -index 5f8c87c1793f..90b66caba2cd 100644 --- a/drivers/clk/qcom/gcc-msm8998.c +++ b/drivers/clk/qcom/gcc-msm8998.c -@@ -3292,7 +3292,7 @@ static int gcc_msm8998_probe(struct platform_device *pdev) +@@ -3292,7 +3292,7 @@ static int gcc_msm8998_probe(struct plat regmap_write(regmap, GCC_MMSS_MISC, 0x10003); regmap_write(regmap, GCC_GPU_MISC, 0x10003); @@ -556,11 +494,9 @@ index 5f8c87c1793f..90b66caba2cd 100644 } static const struct of_device_id gcc_msm8998_match_table[] = { -diff --git a/drivers/clk/qcom/gcc-qcm2290.c b/drivers/clk/qcom/gcc-qcm2290.c -index 48995e50c6bd..9a6703365e61 100644 --- a/drivers/clk/qcom/gcc-qcm2290.c +++ b/drivers/clk/qcom/gcc-qcm2290.c -@@ -2994,7 +2994,7 @@ static int gcc_qcm2290_probe(struct platform_device *pdev) +@@ -2994,7 +2994,7 @@ static int gcc_qcm2290_probe(struct plat clk_alpha_pll_configure(&gpll8, regmap, &gpll8_config); clk_alpha_pll_configure(&gpll9, regmap, &gpll9_config); @@ -569,11 +505,9 @@ index 48995e50c6bd..9a6703365e61 100644 } static struct platform_driver gcc_qcm2290_driver = { -diff --git a/drivers/clk/qcom/gcc-qcs404.c b/drivers/clk/qcom/gcc-qcs404.c -index a39c4990b29d..c3cfd572e7c1 100644 --- a/drivers/clk/qcom/gcc-qcs404.c +++ b/drivers/clk/qcom/gcc-qcs404.c -@@ -2824,7 +2824,7 @@ static int gcc_qcs404_probe(struct platform_device *pdev) +@@ -2825,7 +2825,7 @@ static int gcc_qcs404_probe(struct platf clk_alpha_pll_configure(&gpll3_out_main, regmap, &gpll3_config); @@ -582,11 +516,9 @@ index a39c4990b29d..c3cfd572e7c1 100644 } static struct platform_driver gcc_qcs404_driver = { -diff --git a/drivers/clk/qcom/gcc-qdu1000.c b/drivers/clk/qcom/gcc-qdu1000.c -index 9f42d2601464..dbe9e9437939 100644 --- a/drivers/clk/qcom/gcc-qdu1000.c +++ b/drivers/clk/qcom/gcc-qdu1000.c -@@ -2674,7 +2674,7 @@ static int gcc_qdu1000_probe(struct platform_device *pdev) +@@ -2674,7 +2674,7 @@ static int gcc_qdu1000_probe(struct plat if (ret) return ret; @@ -595,24 +527,20 @@ index 9f42d2601464..dbe9e9437939 100644 if (ret) return dev_err_probe(&pdev->dev, ret, "Failed to register GCC clocks\n"); -diff --git a/drivers/clk/qcom/gcc-sa8775p.c b/drivers/clk/qcom/gcc-sa8775p.c -index 5bcbfbf52cb9..9f31ce4cea18 100644 --- a/drivers/clk/qcom/gcc-sa8775p.c +++ b/drivers/clk/qcom/gcc-sa8775p.c -@@ -4753,7 +4753,7 @@ static int gcc_sa8775p_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x34004); /* GCC_VIDEO_AHB_CLK */ - qcom_branch_set_clk_en(regmap, 0x34024); /* GCC_VIDEO_XO_CLK */ +@@ -4798,7 +4798,7 @@ static int gcc_sa8775p_probe(struct plat + regmap_update_bits(regmap, 0x34004, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0x34024, BIT(0), BIT(0)); - return qcom_cc_really_probe(pdev, &gcc_sa8775p_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &gcc_sa8775p_desc, regmap); } static struct platform_driver gcc_sa8775p_driver = { -diff --git a/drivers/clk/qcom/gcc-sc7180.c b/drivers/clk/qcom/gcc-sc7180.c -index 6a5f785c0ced..4a49ad7a9e5b 100644 --- a/drivers/clk/qcom/gcc-sc7180.c +++ b/drivers/clk/qcom/gcc-sc7180.c -@@ -2458,7 +2458,7 @@ static int gcc_sc7180_probe(struct platform_device *pdev) +@@ -2462,7 +2462,7 @@ static int gcc_sc7180_probe(struct platf if (ret) return ret; @@ -621,11 +549,9 @@ index 6a5f785c0ced..4a49ad7a9e5b 100644 } static struct platform_driver gcc_sc7180_driver = { -diff --git a/drivers/clk/qcom/gcc-sc7280.c b/drivers/clk/qcom/gcc-sc7280.c -index b937d513b814..4502926a2691 100644 --- a/drivers/clk/qcom/gcc-sc7280.c +++ b/drivers/clk/qcom/gcc-sc7280.c -@@ -3481,7 +3481,7 @@ static int gcc_sc7280_probe(struct platform_device *pdev) +@@ -3475,7 +3475,7 @@ static int gcc_sc7280_probe(struct platf if (ret) return ret; @@ -634,11 +560,9 @@ index b937d513b814..4502926a2691 100644 } static struct platform_driver gcc_sc7280_driver = { -diff --git a/drivers/clk/qcom/gcc-sc8180x.c b/drivers/clk/qcom/gcc-sc8180x.c -index ad905affd376..ad135bfa4c76 100644 --- a/drivers/clk/qcom/gcc-sc8180x.c +++ b/drivers/clk/qcom/gcc-sc8180x.c -@@ -4623,7 +4623,7 @@ static int gcc_sc8180x_probe(struct platform_device *pdev) +@@ -4555,7 +4555,7 @@ static int gcc_sc8180x_probe(struct plat regmap_update_bits(regmap, 0x4d110, 0x3, 0x3); regmap_update_bits(regmap, 0x71028, 0x3, 0x3); @@ -647,11 +571,9 @@ index ad905affd376..ad135bfa4c76 100644 } static struct platform_driver gcc_sc8180x_driver = { -diff --git a/drivers/clk/qcom/gcc-sc8280xp.c b/drivers/clk/qcom/gcc-sc8280xp.c -index 082d7b5504eb..5f11760cf73f 100644 --- a/drivers/clk/qcom/gcc-sc8280xp.c +++ b/drivers/clk/qcom/gcc-sc8280xp.c -@@ -7558,7 +7558,7 @@ static int gcc_sc8280xp_probe(struct platform_device *pdev) +@@ -7563,7 +7563,7 @@ static int gcc_sc8280xp_probe(struct pla if (ret) goto err_put_rpm; @@ -660,11 +582,9 @@ index 082d7b5504eb..5f11760cf73f 100644 if (ret) goto err_put_rpm; -diff --git a/drivers/clk/qcom/gcc-sdm660.c b/drivers/clk/qcom/gcc-sdm660.c -index c4fe70871b6d..df79298a1a25 100644 --- a/drivers/clk/qcom/gcc-sdm660.c +++ b/drivers/clk/qcom/gcc-sdm660.c -@@ -2474,7 +2474,7 @@ static int gcc_sdm660_probe(struct platform_device *pdev) +@@ -2474,7 +2474,7 @@ static int gcc_sdm660_probe(struct platf if (ret) return ret; @@ -673,11 +593,9 @@ index c4fe70871b6d..df79298a1a25 100644 } static struct platform_driver gcc_sdm660_driver = { -diff --git a/drivers/clk/qcom/gcc-sdm845.c b/drivers/clk/qcom/gcc-sdm845.c -index ea4c3bf4fb9b..dc3aa7014c3e 100644 --- a/drivers/clk/qcom/gcc-sdm845.c +++ b/drivers/clk/qcom/gcc-sdm845.c -@@ -4011,7 +4011,7 @@ static int gcc_sdm845_probe(struct platform_device *pdev) +@@ -4011,7 +4011,7 @@ static int gcc_sdm845_probe(struct platf return ret; gcc_desc = of_device_get_match_data(&pdev->dev); @@ -686,50 +604,42 @@ index ea4c3bf4fb9b..dc3aa7014c3e 100644 } static struct platform_driver gcc_sdm845_driver = { -diff --git a/drivers/clk/qcom/gcc-sdx55.c b/drivers/clk/qcom/gcc-sdx55.c -index 26279b8d321a..84c507656e8f 100644 --- a/drivers/clk/qcom/gcc-sdx55.c +++ b/drivers/clk/qcom/gcc-sdx55.c -@@ -1616,7 +1616,7 @@ static int gcc_sdx55_probe(struct platform_device *pdev) - regmap_update_bits(regmap, 0x6d008, BIT(21), BIT(21)); /* GCC_CPUSS_AHB_CLK */ - regmap_update_bits(regmap, 0x6d008, BIT(22), BIT(22)); /* GCC_CPUSS_GNOC_CLK */ +@@ -1620,7 +1620,7 @@ static int gcc_sdx55_probe(struct platfo + regmap_update_bits(regmap, 0x6d008, BIT(21), BIT(21)); + regmap_update_bits(regmap, 0x6d008, BIT(22), BIT(22)); - return qcom_cc_really_probe(pdev, &gcc_sdx55_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &gcc_sdx55_desc, regmap); } static struct platform_driver gcc_sdx55_driver = { -diff --git a/drivers/clk/qcom/gcc-sdx65.c b/drivers/clk/qcom/gcc-sdx65.c -index 8fde6463574b..fe297c606f97 100644 --- a/drivers/clk/qcom/gcc-sdx65.c +++ b/drivers/clk/qcom/gcc-sdx65.c -@@ -1580,7 +1580,7 @@ static int gcc_sdx65_probe(struct platform_device *pdev) - regmap_update_bits(regmap, 0x6d008, BIT(21), BIT(21)); /* GCC_CPUSS_AHB_CLK */ - regmap_update_bits(regmap, 0x6d008, BIT(22), BIT(22)); /* GCC_CPUSS_GNOC_CLK */ +@@ -1583,7 +1583,7 @@ static int gcc_sdx65_probe(struct platfo + regmap_update_bits(regmap, 0x6d008, BIT(21), BIT(21)); + regmap_update_bits(regmap, 0x6d008, BIT(22), BIT(22)); - return qcom_cc_really_probe(pdev, &gcc_sdx65_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &gcc_sdx65_desc, regmap); } static struct platform_driver gcc_sdx65_driver = { -diff --git a/drivers/clk/qcom/gcc-sdx75.c b/drivers/clk/qcom/gcc-sdx75.c -index c51338f08ef1..453a6bf8e878 100644 --- a/drivers/clk/qcom/gcc-sdx75.c +++ b/drivers/clk/qcom/gcc-sdx75.c -@@ -2940,7 +2940,7 @@ static int gcc_sdx75_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x3e004); /* GCC_AHB_PCIE_LINK_CLK */ - qcom_branch_set_clk_en(regmap, 0x3e008); /* GCC_XO_PCIE_LINK_CLK */ +@@ -2944,7 +2944,7 @@ static int gcc_sdx75_probe(struct platfo + regmap_update_bits(regmap, 0x3e004, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0x3e008, BIT(0), BIT(0)); - return qcom_cc_really_probe(pdev, &gcc_sdx75_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &gcc_sdx75_desc, regmap); } static struct platform_driver gcc_sdx75_driver = { -diff --git a/drivers/clk/qcom/gcc-sm6115.c b/drivers/clk/qcom/gcc-sm6115.c -index 167e344ad399..4c3804701e24 100644 --- a/drivers/clk/qcom/gcc-sm6115.c +++ b/drivers/clk/qcom/gcc-sm6115.c -@@ -3513,7 +3513,7 @@ static int gcc_sm6115_probe(struct platform_device *pdev) +@@ -3513,7 +3513,7 @@ static int gcc_sm6115_probe(struct platf clk_alpha_pll_configure(&gpll10, regmap, &gpll10_config); clk_alpha_pll_configure(&gpll11, regmap, &gpll11_config); @@ -738,11 +648,9 @@ index 167e344ad399..4c3804701e24 100644 } static struct platform_driver gcc_sm6115_driver = { -diff --git a/drivers/clk/qcom/gcc-sm6125.c b/drivers/clk/qcom/gcc-sm6125.c -index da554efee2ce..07bb1e5c4a30 100644 --- a/drivers/clk/qcom/gcc-sm6125.c +++ b/drivers/clk/qcom/gcc-sm6125.c -@@ -4161,7 +4161,7 @@ static int gcc_sm6125_probe(struct platform_device *pdev) +@@ -4161,7 +4161,7 @@ static int gcc_sm6125_probe(struct platf if (ret) return ret; @@ -751,11 +659,9 @@ index da554efee2ce..07bb1e5c4a30 100644 } static struct platform_driver gcc_sm6125_driver = { -diff --git a/drivers/clk/qcom/gcc-sm6350.c b/drivers/clk/qcom/gcc-sm6350.c -index cf4a7b6e0b23..0dcc8eeb77e6 100644 --- a/drivers/clk/qcom/gcc-sm6350.c +++ b/drivers/clk/qcom/gcc-sm6350.c -@@ -2559,7 +2559,7 @@ static int gcc_sm6350_probe(struct platform_device *pdev) +@@ -2559,7 +2559,7 @@ static int gcc_sm6350_probe(struct platf if (ret) return ret; @@ -764,11 +670,9 @@ index cf4a7b6e0b23..0dcc8eeb77e6 100644 } static struct platform_driver gcc_sm6350_driver = { -diff --git a/drivers/clk/qcom/gcc-sm6375.c b/drivers/clk/qcom/gcc-sm6375.c -index ac1ed2d728f9..f47dc2808095 100644 --- a/drivers/clk/qcom/gcc-sm6375.c +++ b/drivers/clk/qcom/gcc-sm6375.c -@@ -3892,7 +3892,7 @@ static int gcc_sm6375_probe(struct platform_device *pdev) +@@ -3895,7 +3895,7 @@ static int gcc_sm6375_probe(struct platf clk_lucid_pll_configure(&gpll8, regmap, &gpll8_config); clk_zonda_pll_configure(&gpll9, regmap, &gpll9_config); @@ -777,11 +681,9 @@ index ac1ed2d728f9..f47dc2808095 100644 } static struct platform_driver gcc_sm6375_driver = { -diff --git a/drivers/clk/qcom/gcc-sm7150.c b/drivers/clk/qcom/gcc-sm7150.c -index b0c50ebb86be..7eabaf0e1b57 100644 --- a/drivers/clk/qcom/gcc-sm7150.c +++ b/drivers/clk/qcom/gcc-sm7150.c -@@ -3017,7 +3017,7 @@ static int gcc_sm7150_probe(struct platform_device *pdev) +@@ -3022,7 +3022,7 @@ static int gcc_sm7150_probe(struct platf if (ret) return ret; @@ -790,24 +692,20 @@ index b0c50ebb86be..7eabaf0e1b57 100644 } static struct platform_driver gcc_sm7150_driver = { -diff --git a/drivers/clk/qcom/gcc-sm8150.c b/drivers/clk/qcom/gcc-sm8150.c -index 1f748141d12c..cefceb780889 100644 --- a/drivers/clk/qcom/gcc-sm8150.c +++ b/drivers/clk/qcom/gcc-sm8150.c -@@ -3797,7 +3797,7 @@ static int gcc_sm8150_probe(struct platform_device *pdev) - if (ret) - dev_err_probe(&pdev->dev, ret, "Failed to register with DFS!\n"); +@@ -3786,7 +3786,7 @@ static int gcc_sm8150_probe(struct platf + regmap_update_bits(regmap, 0x4d110, 0x3, 0x3); + regmap_update_bits(regmap, 0x71028, 0x3, 0x3); - return qcom_cc_really_probe(pdev, &gcc_sm8150_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &gcc_sm8150_desc, regmap); } static struct platform_driver gcc_sm8150_driver = { -diff --git a/drivers/clk/qcom/gcc-sm8250.c b/drivers/clk/qcom/gcc-sm8250.c -index e630bfa2d0c1..991cd8b8d597 100644 --- a/drivers/clk/qcom/gcc-sm8250.c +++ b/drivers/clk/qcom/gcc-sm8250.c -@@ -3656,7 +3656,7 @@ static int gcc_sm8250_probe(struct platform_device *pdev) +@@ -3661,7 +3661,7 @@ static int gcc_sm8250_probe(struct platf if (ret) return ret; @@ -816,11 +714,9 @@ index e630bfa2d0c1..991cd8b8d597 100644 } static struct platform_driver gcc_sm8250_driver = { -diff --git a/drivers/clk/qcom/gcc-sm8350.c b/drivers/clk/qcom/gcc-sm8350.c -index fc0402e8a2a7..2d94f3046b71 100644 --- a/drivers/clk/qcom/gcc-sm8350.c +++ b/drivers/clk/qcom/gcc-sm8350.c -@@ -3822,7 +3822,7 @@ static int gcc_sm8350_probe(struct platform_device *pdev) +@@ -3826,7 +3826,7 @@ static int gcc_sm8350_probe(struct platf /* FORCE_MEM_CORE_ON for ufs phy ice core clocks */ regmap_update_bits(regmap, gcc_ufs_phy_ice_core_clk.halt_reg, BIT(14), BIT(14)); @@ -829,24 +725,20 @@ index fc0402e8a2a7..2d94f3046b71 100644 } static struct platform_driver gcc_sm8350_driver = { -diff --git a/drivers/clk/qcom/gcc-sm8450.c b/drivers/clk/qcom/gcc-sm8450.c -index e86c58bc5e48..639a9a955914 100644 --- a/drivers/clk/qcom/gcc-sm8450.c +++ b/drivers/clk/qcom/gcc-sm8450.c -@@ -3289,7 +3289,7 @@ static int gcc_sm8450_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x42004); /* GCC_VIDEO_AHB_CLK */ - qcom_branch_set_clk_en(regmap, 0x42028); /* GCC_VIDEO_XO_CLK */ +@@ -3294,7 +3294,7 @@ static int gcc_sm8450_probe(struct platf + regmap_update_bits(regmap, 0x42004, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0x42028, BIT(0), BIT(0)); - return qcom_cc_really_probe(pdev, &gcc_sm8450_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &gcc_sm8450_desc, regmap); } static struct platform_driver gcc_sm8450_driver = { -diff --git a/drivers/clk/qcom/gcc-sm8550.c b/drivers/clk/qcom/gcc-sm8550.c -index 26d7349e7642..7944ddb4b47d 100644 --- a/drivers/clk/qcom/gcc-sm8550.c +++ b/drivers/clk/qcom/gcc-sm8550.c -@@ -3364,7 +3364,7 @@ static int gcc_sm8550_probe(struct platform_device *pdev) +@@ -3369,7 +3369,7 @@ static int gcc_sm8550_probe(struct platf /* Clear GDSC_SLEEP_ENA_VOTE to stop votes being auto-removed in sleep. */ regmap_write(regmap, 0x52024, 0x0); @@ -855,11 +747,9 @@ index 26d7349e7642..7944ddb4b47d 100644 } static struct platform_driver gcc_sm8550_driver = { -diff --git a/drivers/clk/qcom/gpucc-msm8998.c b/drivers/clk/qcom/gpucc-msm8998.c -index 7b1cb44e31b2..9efeab2691ba 100644 --- a/drivers/clk/qcom/gpucc-msm8998.c +++ b/drivers/clk/qcom/gpucc-msm8998.c -@@ -334,7 +334,7 @@ static int gpucc_msm8998_probe(struct platform_device *pdev) +@@ -334,7 +334,7 @@ static int gpucc_msm8998_probe(struct pl /* tweak droop detector (GPUCC_GPU_DD_WRAP_CTRL) to reduce leakage */ regmap_write_bits(regmap, gfx3d_clk.clkr.enable_reg, BIT(0), BIT(0)); @@ -868,11 +758,9 @@ index 7b1cb44e31b2..9efeab2691ba 100644 } static struct platform_driver gpucc_msm8998_driver = { -diff --git a/drivers/clk/qcom/gpucc-sa8775p.c b/drivers/clk/qcom/gpucc-sa8775p.c -index 1167c42da39d..ac7552b146c7 100644 --- a/drivers/clk/qcom/gpucc-sa8775p.c +++ b/drivers/clk/qcom/gpucc-sa8775p.c -@@ -598,7 +598,7 @@ static int gpu_cc_sa8775p_probe(struct platform_device *pdev) +@@ -599,7 +599,7 @@ static int gpu_cc_sa8775p_probe(struct p clk_lucid_evo_pll_configure(&gpu_cc_pll0, regmap, &gpu_cc_pll0_config); clk_lucid_evo_pll_configure(&gpu_cc_pll1, regmap, &gpu_cc_pll1_config); @@ -881,11 +769,9 @@ index 1167c42da39d..ac7552b146c7 100644 } static struct platform_driver gpu_cc_sa8775p_driver = { -diff --git a/drivers/clk/qcom/gpucc-sc7180.c b/drivers/clk/qcom/gpucc-sc7180.c -index 66f5b48cbf87..08f3983d016f 100644 --- a/drivers/clk/qcom/gpucc-sc7180.c +++ b/drivers/clk/qcom/gpucc-sc7180.c -@@ -241,7 +241,7 @@ static int gpu_cc_sc7180_probe(struct platform_device *pdev) +@@ -241,7 +241,7 @@ static int gpu_cc_sc7180_probe(struct pl value = 0xF << CX_GMU_CBCR_WAKE_SHIFT | 0xF << CX_GMU_CBCR_SLEEP_SHIFT; regmap_update_bits(regmap, 0x1098, mask, value); @@ -894,12 +780,10 @@ index 66f5b48cbf87..08f3983d016f 100644 } static struct platform_driver gpu_cc_sc7180_driver = { -diff --git a/drivers/clk/qcom/gpucc-sc7280.c b/drivers/clk/qcom/gpucc-sc7280.c -index ebda57eac979..bd699a624517 100644 --- a/drivers/clk/qcom/gpucc-sc7280.c +++ b/drivers/clk/qcom/gpucc-sc7280.c -@@ -469,7 +469,7 @@ static int gpu_cc_sc7280_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x1098); /* GPUCC_CX_GMU_CLK */ +@@ -465,7 +465,7 @@ static int gpu_cc_sc7280_probe(struct pl + regmap_update_bits(regmap, 0x1098, BIT(0), BIT(0)); regmap_update_bits(regmap, 0x1098, BIT(13), BIT(13)); - return qcom_cc_really_probe(pdev, &gpu_cc_sc7280_desc, regmap); @@ -907,24 +791,20 @@ index ebda57eac979..bd699a624517 100644 } static struct platform_driver gpu_cc_sc7280_driver = { -diff --git a/drivers/clk/qcom/gpucc-sc8280xp.c b/drivers/clk/qcom/gpucc-sc8280xp.c -index 3611d2d1823d..c96be61e3f47 100644 --- a/drivers/clk/qcom/gpucc-sc8280xp.c +++ b/drivers/clk/qcom/gpucc-sc8280xp.c -@@ -449,7 +449,7 @@ static int gpu_cc_sc8280xp_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x1170); /* GPU_CC_CB_CLK */ - qcom_branch_set_clk_en(regmap, 0x109c); /* GPU_CC_CXO_CLK */ +@@ -451,7 +451,7 @@ static int gpu_cc_sc8280xp_probe(struct + regmap_update_bits(regmap, 0x1170, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0x109c, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &gpu_cc_sc8280xp_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &gpu_cc_sc8280xp_desc, regmap); pm_runtime_put(&pdev->dev); return ret; -diff --git a/drivers/clk/qcom/gpucc-sdm660.c b/drivers/clk/qcom/gpucc-sdm660.c -index a52d98b7cf4c..3ae1b80e38d9 100644 --- a/drivers/clk/qcom/gpucc-sdm660.c +++ b/drivers/clk/qcom/gpucc-sdm660.c -@@ -330,7 +330,7 @@ static int gpucc_sdm660_probe(struct platform_device *pdev) +@@ -330,7 +330,7 @@ static int gpucc_sdm660_probe(struct pla gpu_pll_config.alpha_hi = 0x8a; clk_alpha_pll_configure(&gpu_pll1_pll_out_main, regmap, &gpu_pll_config); @@ -933,11 +813,9 @@ index a52d98b7cf4c..3ae1b80e38d9 100644 } static struct platform_driver gpucc_sdm660_driver = { -diff --git a/drivers/clk/qcom/gpucc-sdm845.c b/drivers/clk/qcom/gpucc-sdm845.c -index c87c3215dfe3..ef26690cf504 100644 --- a/drivers/clk/qcom/gpucc-sdm845.c +++ b/drivers/clk/qcom/gpucc-sdm845.c -@@ -192,7 +192,7 @@ static int gpu_cc_sdm845_probe(struct platform_device *pdev) +@@ -192,7 +192,7 @@ static int gpu_cc_sdm845_probe(struct pl value = 0xf << CX_GMU_CBCR_WAKE_SHIFT | 0xf << CX_GMU_CBCR_SLEEP_SHIFT; regmap_update_bits(regmap, 0x1098, mask, value); @@ -946,11 +824,9 @@ index c87c3215dfe3..ef26690cf504 100644 } static struct platform_driver gpu_cc_sdm845_driver = { -diff --git a/drivers/clk/qcom/gpucc-sm6115.c b/drivers/clk/qcom/gpucc-sm6115.c -index 9793dd9a2596..d43c86cf73a5 100644 --- a/drivers/clk/qcom/gpucc-sm6115.c +++ b/drivers/clk/qcom/gpucc-sm6115.c -@@ -488,7 +488,7 @@ static int gpu_cc_sm6115_probe(struct platform_device *pdev) +@@ -488,7 +488,7 @@ static int gpu_cc_sm6115_probe(struct pl qcom_branch_set_force_mem_core(regmap, gpu_cc_gx_gfx3d_clk, true); qcom_branch_set_force_periph_on(regmap, gpu_cc_gx_gfx3d_clk, true); @@ -959,11 +835,9 @@ index 9793dd9a2596..d43c86cf73a5 100644 } static struct platform_driver gpu_cc_sm6115_driver = { -diff --git a/drivers/clk/qcom/gpucc-sm6125.c b/drivers/clk/qcom/gpucc-sm6125.c -index b719a48fe706..ed6a6e505801 100644 --- a/drivers/clk/qcom/gpucc-sm6125.c +++ b/drivers/clk/qcom/gpucc-sm6125.c -@@ -409,7 +409,7 @@ static int gpu_cc_sm6125_probe(struct platform_device *pdev) +@@ -409,7 +409,7 @@ static int gpu_cc_sm6125_probe(struct pl qcom_branch_set_force_mem_core(regmap, gpu_cc_gx_gfx3d_clk, true); qcom_branch_set_force_periph_on(regmap, gpu_cc_gx_gfx3d_clk, true); @@ -972,11 +846,9 @@ index b719a48fe706..ed6a6e505801 100644 } static struct platform_driver gpu_cc_sm6125_driver = { -diff --git a/drivers/clk/qcom/gpucc-sm6350.c b/drivers/clk/qcom/gpucc-sm6350.c -index 0bcbba2a2943..1e12ad8948db 100644 --- a/drivers/clk/qcom/gpucc-sm6350.c +++ b/drivers/clk/qcom/gpucc-sm6350.c -@@ -502,7 +502,7 @@ static int gpu_cc_sm6350_probe(struct platform_device *pdev) +@@ -502,7 +502,7 @@ static int gpu_cc_sm6350_probe(struct pl value = 0xF << CX_GMU_CBCR_WAKE_SHIFT | 0xF << CX_GMU_CBCR_SLEEP_SHIFT; regmap_update_bits(regmap, 0x1098, mask, value); @@ -985,11 +857,9 @@ index 0bcbba2a2943..1e12ad8948db 100644 } static struct platform_driver gpu_cc_sm6350_driver = { -diff --git a/drivers/clk/qcom/gpucc-sm6375.c b/drivers/clk/qcom/gpucc-sm6375.c -index 4e9a30a080d3..41f59024143e 100644 --- a/drivers/clk/qcom/gpucc-sm6375.c +++ b/drivers/clk/qcom/gpucc-sm6375.c -@@ -455,7 +455,7 @@ static int gpucc_sm6375_probe(struct platform_device *pdev) +@@ -455,7 +455,7 @@ static int gpucc_sm6375_probe(struct pla clk_lucid_pll_configure(&gpucc_pll0, regmap, &gpucc_pll0_config); clk_lucid_pll_configure(&gpucc_pll1, regmap, &gpucc_pll1_config); @@ -998,11 +868,9 @@ index 4e9a30a080d3..41f59024143e 100644 pm_runtime_put(&pdev->dev); return ret; -diff --git a/drivers/clk/qcom/gpucc-sm8150.c b/drivers/clk/qcom/gpucc-sm8150.c -index 135601629cba..d711464a71b6 100644 --- a/drivers/clk/qcom/gpucc-sm8150.c +++ b/drivers/clk/qcom/gpucc-sm8150.c -@@ -304,7 +304,7 @@ static int gpu_cc_sm8150_probe(struct platform_device *pdev) +@@ -304,7 +304,7 @@ static int gpu_cc_sm8150_probe(struct pl clk_trion_pll_configure(&gpu_cc_pll1, regmap, &gpu_cc_pll1_config); @@ -1011,11 +879,9 @@ index 135601629cba..d711464a71b6 100644 } static struct platform_driver gpu_cc_sm8150_driver = { -diff --git a/drivers/clk/qcom/gpucc-sm8250.c b/drivers/clk/qcom/gpucc-sm8250.c -index 012bd1380f55..113b486a6d2f 100644 --- a/drivers/clk/qcom/gpucc-sm8250.c +++ b/drivers/clk/qcom/gpucc-sm8250.c -@@ -320,7 +320,7 @@ static int gpu_cc_sm8250_probe(struct platform_device *pdev) +@@ -320,7 +320,7 @@ static int gpu_cc_sm8250_probe(struct pl value = 0xf << CX_GMU_CBCR_WAKE_SHIFT | 0xf << CX_GMU_CBCR_SLEEP_SHIFT; regmap_update_bits(regmap, 0x1098, mask, value); @@ -1024,11 +890,9 @@ index 012bd1380f55..113b486a6d2f 100644 } static struct platform_driver gpu_cc_sm8250_driver = { -diff --git a/drivers/clk/qcom/gpucc-sm8350.c b/drivers/clk/qcom/gpucc-sm8350.c -index 9437d316d145..f6bb8244dd40 100644 --- a/drivers/clk/qcom/gpucc-sm8350.c +++ b/drivers/clk/qcom/gpucc-sm8350.c -@@ -604,7 +604,7 @@ static int gpu_cc_sm8350_probe(struct platform_device *pdev) +@@ -605,7 +605,7 @@ static int gpu_cc_sm8350_probe(struct pl clk_lucid_pll_configure(&gpu_cc_pll0, regmap, &gpu_cc_pll0_config); clk_lucid_pll_configure(&gpu_cc_pll1, regmap, &gpu_cc_pll1_config); @@ -1037,11 +901,9 @@ index 9437d316d145..f6bb8244dd40 100644 } static const struct of_device_id gpu_cc_sm8350_match_table[] = { -diff --git a/drivers/clk/qcom/gpucc-sm8450.c b/drivers/clk/qcom/gpucc-sm8450.c -index 7b329a803289..b3c5d6923cd2 100644 --- a/drivers/clk/qcom/gpucc-sm8450.c +++ b/drivers/clk/qcom/gpucc-sm8450.c -@@ -751,7 +751,7 @@ static int gpu_cc_sm8450_probe(struct platform_device *pdev) +@@ -751,7 +751,7 @@ static int gpu_cc_sm8450_probe(struct pl clk_lucid_evo_pll_configure(&gpu_cc_pll0, regmap, &gpu_cc_pll0_config); clk_lucid_evo_pll_configure(&gpu_cc_pll1, regmap, &gpu_cc_pll1_config); @@ -1050,24 +912,20 @@ index 7b329a803289..b3c5d6923cd2 100644 } static struct platform_driver gpu_cc_sm8450_driver = { -diff --git a/drivers/clk/qcom/gpucc-sm8550.c b/drivers/clk/qcom/gpucc-sm8550.c -index 4fc69c6026e5..7486edf56160 100644 --- a/drivers/clk/qcom/gpucc-sm8550.c +++ b/drivers/clk/qcom/gpucc-sm8550.c -@@ -579,7 +579,7 @@ static int gpu_cc_sm8550_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x9004); /* GPU_CC_CXO_AON_CLK */ - qcom_branch_set_clk_en(regmap, 0x900c); /* GPU_CC_DEMET_CLK */ +@@ -585,7 +585,7 @@ static int gpu_cc_sm8550_probe(struct pl + regmap_update_bits(regmap, 0x9004, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0x900c, BIT(0), BIT(0)); - return qcom_cc_really_probe(pdev, &gpu_cc_sm8550_desc, regmap); + return qcom_cc_really_probe(&pdev->dev, &gpu_cc_sm8550_desc, regmap); } static struct platform_driver gpu_cc_sm8550_driver = { -diff --git a/drivers/clk/qcom/lcc-ipq806x.c b/drivers/clk/qcom/lcc-ipq806x.c -index fa8cda63cf20..bf5320a43e8c 100644 --- a/drivers/clk/qcom/lcc-ipq806x.c +++ b/drivers/clk/qcom/lcc-ipq806x.c -@@ -454,7 +454,7 @@ static int lcc_ipq806x_probe(struct platform_device *pdev) +@@ -454,7 +454,7 @@ static int lcc_ipq806x_probe(struct plat /* Enable PLL4 source on the LPASS Primary PLL Mux */ regmap_write(regmap, 0xc4, 0x1); @@ -1076,11 +934,9 @@ index fa8cda63cf20..bf5320a43e8c 100644 } static struct platform_driver lcc_ipq806x_driver = { -diff --git a/drivers/clk/qcom/lcc-msm8960.c b/drivers/clk/qcom/lcc-msm8960.c -index e725e7b9c456..d53bf315e9c3 100644 --- a/drivers/clk/qcom/lcc-msm8960.c +++ b/drivers/clk/qcom/lcc-msm8960.c -@@ -481,7 +481,7 @@ static int lcc_msm8960_probe(struct platform_device *pdev) +@@ -481,7 +481,7 @@ static int lcc_msm8960_probe(struct plat /* Enable PLL4 source on the LPASS Primary PLL Mux */ regmap_write(regmap, 0xc4, 0x1); @@ -1089,11 +945,9 @@ index e725e7b9c456..d53bf315e9c3 100644 } static struct platform_driver lcc_msm8960_driver = { -diff --git a/drivers/clk/qcom/lpassaudiocc-sc7280.c b/drivers/clk/qcom/lpassaudiocc-sc7280.c -index c43d0b1af7f7..45e726477086 100644 --- a/drivers/clk/qcom/lpassaudiocc-sc7280.c +++ b/drivers/clk/qcom/lpassaudiocc-sc7280.c -@@ -772,7 +772,7 @@ static int lpass_audio_cc_sc7280_probe(struct platform_device *pdev) +@@ -772,7 +772,7 @@ static int lpass_audio_cc_sc7280_probe(s regmap_write(regmap, 0x4, 0x3b); regmap_write(regmap, 0x8, 0xff05); @@ -1102,7 +956,7 @@ index c43d0b1af7f7..45e726477086 100644 if (ret) { dev_err(&pdev->dev, "Failed to register LPASS AUDIO CC clocks\n"); goto exit; -@@ -847,7 +847,7 @@ static int lpass_aon_cc_sc7280_probe(struct platform_device *pdev) +@@ -847,7 +847,7 @@ static int lpass_aon_cc_sc7280_probe(str clk_lucid_pll_configure(&lpass_aon_cc_pll, regmap, &lpass_aon_cc_pll_config); @@ -1111,11 +965,9 @@ index c43d0b1af7f7..45e726477086 100644 if (ret) { dev_err(&pdev->dev, "Failed to register LPASS AON CC clocks\n"); goto exit; -diff --git a/drivers/clk/qcom/lpasscorecc-sc7180.c b/drivers/clk/qcom/lpasscorecc-sc7180.c -index 8ac72d26087e..726c6378752f 100644 --- a/drivers/clk/qcom/lpasscorecc-sc7180.c +++ b/drivers/clk/qcom/lpasscorecc-sc7180.c -@@ -411,7 +411,7 @@ static int lpass_core_cc_sc7180_probe(struct platform_device *pdev) +@@ -414,7 +414,7 @@ static int lpass_core_cc_sc7180_probe(st clk_fabia_pll_configure(&lpass_lpaaudio_dig_pll, regmap, &lpass_lpaaudio_dig_pll_config); @@ -1124,11 +976,9 @@ index 8ac72d26087e..726c6378752f 100644 pm_runtime_mark_last_busy(&pdev->dev); exit: -diff --git a/drivers/clk/qcom/lpasscorecc-sc7280.c b/drivers/clk/qcom/lpasscorecc-sc7280.c -index a2f1e6ad6da4..b0888cd2460b 100644 --- a/drivers/clk/qcom/lpasscorecc-sc7280.c +++ b/drivers/clk/qcom/lpasscorecc-sc7280.c -@@ -406,7 +406,7 @@ static int lpass_core_cc_sc7280_probe(struct platform_device *pdev) +@@ -406,7 +406,7 @@ static int lpass_core_cc_sc7280_probe(st clk_lucid_pll_configure(&lpass_core_cc_dig_pll, regmap, &lpass_core_cc_dig_pll_config); @@ -1137,11 +987,9 @@ index a2f1e6ad6da4..b0888cd2460b 100644 } static struct platform_driver lpass_core_cc_sc7280_driver = { -diff --git a/drivers/clk/qcom/mmcc-msm8960.c b/drivers/clk/qcom/mmcc-msm8960.c -index 50638ab341ec..1061322534c4 100644 --- a/drivers/clk/qcom/mmcc-msm8960.c +++ b/drivers/clk/qcom/mmcc-msm8960.c -@@ -3122,7 +3122,7 @@ static int mmcc_msm8960_probe(struct platform_device *pdev) +@@ -3128,7 +3128,7 @@ static int mmcc_msm8960_probe(struct pla clk_pll_configure_sr(&pll15, regmap, &pll15_config, false); @@ -1150,11 +998,9 @@ index 50638ab341ec..1061322534c4 100644 } static struct platform_driver mmcc_msm8960_driver = { -diff --git a/drivers/clk/qcom/mmcc-msm8974.c b/drivers/clk/qcom/mmcc-msm8974.c -index 36f460b78be2..d5bcb09ebd0c 100644 --- a/drivers/clk/qcom/mmcc-msm8974.c +++ b/drivers/clk/qcom/mmcc-msm8974.c -@@ -2768,7 +2768,7 @@ static int mmcc_msm8974_probe(struct platform_device *pdev) +@@ -2786,7 +2786,7 @@ static int mmcc_msm8974_probe(struct pla msm8226_clock_override(); } @@ -1163,11 +1009,9 @@ index 36f460b78be2..d5bcb09ebd0c 100644 } static struct platform_driver mmcc_msm8974_driver = { -diff --git a/drivers/clk/qcom/mmcc-msm8994.c b/drivers/clk/qcom/mmcc-msm8994.c -index f19080cf715b..78e5083eaf0f 100644 --- a/drivers/clk/qcom/mmcc-msm8994.c +++ b/drivers/clk/qcom/mmcc-msm8994.c -@@ -2602,7 +2602,7 @@ static int mmcc_msm8994_probe(struct platform_device *pdev) +@@ -2602,7 +2602,7 @@ static int mmcc_msm8994_probe(struct pla clk_alpha_pll_configure(&mmpll3_early, regmap, &mmpll_p_config); clk_alpha_pll_configure(&mmpll5_early, regmap, &mmpll_p_config); @@ -1176,11 +1020,9 @@ index f19080cf715b..78e5083eaf0f 100644 } static struct platform_driver mmcc_msm8994_driver = { -diff --git a/drivers/clk/qcom/mmcc-msm8996.c b/drivers/clk/qcom/mmcc-msm8996.c -index 92287d40c3a5..1a32c6eb8217 100644 --- a/drivers/clk/qcom/mmcc-msm8996.c +++ b/drivers/clk/qcom/mmcc-msm8996.c -@@ -3626,7 +3626,7 @@ static int mmcc_msm8996_probe(struct platform_device *pdev) +@@ -3626,7 +3626,7 @@ static int mmcc_msm8996_probe(struct pla /* Disable the NoC FSM for mmss_mmagic_cfg_ahb_clk */ regmap_update_bits(regmap, 0x5054, BIT(15), 0); @@ -1189,11 +1031,9 @@ index 92287d40c3a5..1a32c6eb8217 100644 } static struct platform_driver mmcc_msm8996_driver = { -diff --git a/drivers/clk/qcom/mmcc-msm8998.c b/drivers/clk/qcom/mmcc-msm8998.c -index 275fb3b71ede..5738445a8656 100644 --- a/drivers/clk/qcom/mmcc-msm8998.c +++ b/drivers/clk/qcom/mmcc-msm8998.c -@@ -2866,7 +2866,7 @@ static int mmcc_msm8998_probe(struct platform_device *pdev) +@@ -2866,7 +2866,7 @@ static int mmcc_msm8998_probe(struct pla if (IS_ERR(regmap)) return PTR_ERR(regmap); @@ -1202,11 +1042,9 @@ index 275fb3b71ede..5738445a8656 100644 } static struct platform_driver mmcc_msm8998_driver = { -diff --git a/drivers/clk/qcom/mmcc-sdm660.c b/drivers/clk/qcom/mmcc-sdm660.c -index 4b8380c2d648..98ba5b4518fb 100644 --- a/drivers/clk/qcom/mmcc-sdm660.c +++ b/drivers/clk/qcom/mmcc-sdm660.c -@@ -2847,7 +2847,7 @@ static int mmcc_660_probe(struct platform_device *pdev) +@@ -2851,7 +2851,7 @@ static int mmcc_660_probe(struct platfor clk_alpha_pll_configure(&mmpll8, regmap, &mmpll8_config); clk_alpha_pll_configure(&mmpll10, regmap, &mmpll10_config); @@ -1215,11 +1053,9 @@ index 4b8380c2d648..98ba5b4518fb 100644 } static struct platform_driver mmcc_660_driver = { -diff --git a/drivers/clk/qcom/tcsrcc-sm8550.c b/drivers/clk/qcom/tcsrcc-sm8550.c -index 552a3eb1fd91..e5e8f2e82b94 100644 --- a/drivers/clk/qcom/tcsrcc-sm8550.c +++ b/drivers/clk/qcom/tcsrcc-sm8550.c -@@ -166,7 +166,7 @@ static int tcsr_cc_sm8550_probe(struct platform_device *pdev) +@@ -180,7 +180,7 @@ static int tcsr_cc_sm8550_probe(struct p if (IS_ERR(regmap)) return PTR_ERR(regmap); @@ -1228,11 +1064,9 @@ index 552a3eb1fd91..e5e8f2e82b94 100644 } static struct platform_driver tcsr_cc_sm8550_driver = { -diff --git a/drivers/clk/qcom/videocc-sc7180.c b/drivers/clk/qcom/videocc-sc7180.c -index ae0f812f83e8..d7f845480396 100644 --- a/drivers/clk/qcom/videocc-sc7180.c +++ b/drivers/clk/qcom/videocc-sc7180.c -@@ -226,7 +226,7 @@ static int video_cc_sc7180_probe(struct platform_device *pdev) +@@ -226,7 +226,7 @@ static int video_cc_sc7180_probe(struct /* Keep VIDEO_CC_XO_CLK ALWAYS-ON */ regmap_update_bits(regmap, 0x984, 0x1, 0x1); @@ -1241,11 +1075,9 @@ index ae0f812f83e8..d7f845480396 100644 } static struct platform_driver video_cc_sc7180_driver = { -diff --git a/drivers/clk/qcom/videocc-sc7280.c b/drivers/clk/qcom/videocc-sc7280.c -index 119a3ed6eb6a..317b325d6daf 100644 --- a/drivers/clk/qcom/videocc-sc7280.c +++ b/drivers/clk/qcom/videocc-sc7280.c -@@ -305,7 +305,7 @@ static int video_cc_sc7280_probe(struct platform_device *pdev) +@@ -298,7 +298,7 @@ static int video_cc_sc7280_probe(struct clk_lucid_pll_configure(&video_pll0, regmap, &video_pll0_config); @@ -1254,11 +1086,9 @@ index 119a3ed6eb6a..317b325d6daf 100644 } static struct platform_driver video_cc_sc7280_driver = { -diff --git a/drivers/clk/qcom/videocc-sdm845.c b/drivers/clk/qcom/videocc-sdm845.c -index 80095a283a86..f77a07779477 100644 --- a/drivers/clk/qcom/videocc-sdm845.c +++ b/drivers/clk/qcom/videocc-sdm845.c -@@ -329,7 +329,7 @@ static int video_cc_sdm845_probe(struct platform_device *pdev) +@@ -329,7 +329,7 @@ static int video_cc_sdm845_probe(struct clk_fabia_pll_configure(&video_pll0, regmap, &video_pll0_config); @@ -1267,11 +1097,9 @@ index 80095a283a86..f77a07779477 100644 } static struct platform_driver video_cc_sdm845_driver = { -diff --git a/drivers/clk/qcom/videocc-sm8150.c b/drivers/clk/qcom/videocc-sm8150.c -index 554631aa279b..daab3237eec1 100644 --- a/drivers/clk/qcom/videocc-sm8150.c +++ b/drivers/clk/qcom/videocc-sm8150.c -@@ -262,7 +262,7 @@ static int video_cc_sm8150_probe(struct platform_device *pdev) +@@ -250,7 +250,7 @@ static int video_cc_sm8150_probe(struct /* Keep VIDEO_CC_XO_CLK ALWAYS-ON */ regmap_update_bits(regmap, 0x984, 0x1, 0x1); @@ -1280,58 +1108,47 @@ index 554631aa279b..daab3237eec1 100644 } static struct platform_driver video_cc_sm8150_driver = { -diff --git a/drivers/clk/qcom/videocc-sm8250.c b/drivers/clk/qcom/videocc-sm8250.c -index 914eddd0ae15..d7e0c32284c1 100644 --- a/drivers/clk/qcom/videocc-sm8250.c +++ b/drivers/clk/qcom/videocc-sm8250.c -@@ -387,7 +387,7 @@ static int video_cc_sm8250_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0xe58); /* VIDEO_CC_AHB_CLK */ - qcom_branch_set_clk_en(regmap, 0xeec); /* VIDEO_CC_XO_CLK */ +@@ -387,7 +387,7 @@ static int video_cc_sm8250_probe(struct + regmap_update_bits(regmap, 0xe58, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0xeec, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &video_cc_sm8250_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &video_cc_sm8250_desc, regmap); pm_runtime_put(&pdev->dev); -diff --git a/drivers/clk/qcom/videocc-sm8350.c b/drivers/clk/qcom/videocc-sm8350.c -index f7aec28d4c87..5bd6fe3e1298 100644 --- a/drivers/clk/qcom/videocc-sm8350.c +++ b/drivers/clk/qcom/videocc-sm8350.c -@@ -562,7 +562,7 @@ static int video_cc_sm8350_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0xe58); /* VIDEO_CC_AHB_CLK */ - qcom_branch_set_clk_en(regmap, video_cc_xo_clk_cbcr); /* VIDEO_CC_XO_CLK */ +@@ -566,7 +566,7 @@ static int video_cc_sm8350_probe(struct + regmap_update_bits(regmap, 0xe58, BIT(0), BIT(0)); + regmap_update_bits(regmap, video_cc_xo_clk_cbcr, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &video_cc_sm8350_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &video_cc_sm8350_desc, regmap); pm_runtime_put(&pdev->dev); return ret; -diff --git a/drivers/clk/qcom/videocc-sm8450.c b/drivers/clk/qcom/videocc-sm8450.c -index 67df40f16423..ed9163d64244 100644 --- a/drivers/clk/qcom/videocc-sm8450.c +++ b/drivers/clk/qcom/videocc-sm8450.c -@@ -428,7 +428,7 @@ static int video_cc_sm8450_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x8130); /* VIDEO_CC_SLEEP_CLK */ - qcom_branch_set_clk_en(regmap, 0x8114); /* VIDEO_CC_XO_CLK */ +@@ -433,7 +433,7 @@ static int video_cc_sm8450_probe(struct + regmap_update_bits(regmap, 0x8130, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0x8114, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &video_cc_sm8450_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &video_cc_sm8450_desc, regmap); pm_runtime_put(&pdev->dev); -diff --git a/drivers/clk/qcom/videocc-sm8550.c b/drivers/clk/qcom/videocc-sm8550.c -index d73f747d2474..4d36362db1d0 100644 --- a/drivers/clk/qcom/videocc-sm8550.c +++ b/drivers/clk/qcom/videocc-sm8550.c -@@ -433,7 +433,7 @@ static int video_cc_sm8550_probe(struct platform_device *pdev) - qcom_branch_set_clk_en(regmap, 0x8140); /* VIDEO_CC_SLEEP_CLK */ - qcom_branch_set_clk_en(regmap, 0x8124); /* VIDEO_CC_XO_CLK */ +@@ -440,7 +440,7 @@ static int video_cc_sm8550_probe(struct + regmap_update_bits(regmap, 0x8140, BIT(0), BIT(0)); + regmap_update_bits(regmap, 0x8124, BIT(0), BIT(0)); - ret = qcom_cc_really_probe(pdev, &video_cc_sm8550_desc, regmap); + ret = qcom_cc_really_probe(&pdev->dev, &video_cc_sm8550_desc, regmap); pm_runtime_put(&pdev->dev); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/007-v6.11-net-phy-introduce-core-support-for-phy-mode-10g-qxgm.patch b/target/linux/qualcommbe/patches-6.6/007-v6.11-net-phy-introduce-core-support-for-phy-mode-10g-qxgm.patch index 8b0f93a7e8..31a3dc84bb 100644 --- a/target/linux/qualcommbe/patches-6.6/007-v6.11-net-phy-introduce-core-support-for-phy-mode-10g-qxgm.patch +++ b/target/linux/qualcommbe/patches-6.6/007-v6.11-net-phy-introduce-core-support-for-phy-mode-10g-qxgm.patch @@ -25,11 +25,9 @@ Signed-off-by: Paolo Abeni include/linux/phylink.h | 1 + 5 files changed, 20 insertions(+), 1 deletion(-) -diff --git a/Documentation/networking/phy.rst b/Documentation/networking/phy.rst -index 1283240d7620..f64641417c54 100644 --- a/Documentation/networking/phy.rst +++ b/Documentation/networking/phy.rst -@@ -327,6 +327,12 @@ Some of the interface modes are described below: +@@ -327,6 +327,12 @@ Some of the interface modes are describe This is the Penta SGMII mode, it is similar to QSGMII but it combines 5 SGMII lines into a single link compared to 4 on QSGMII. @@ -42,11 +40,9 @@ index 1283240d7620..f64641417c54 100644 Pause frames / flow control =========================== -diff --git a/drivers/net/phy/phy-core.c b/drivers/net/phy/phy-core.c -index 15f349e5995a..a235ea2264a7 100644 --- a/drivers/net/phy/phy-core.c +++ b/drivers/net/phy/phy-core.c -@@ -141,6 +141,7 @@ int phy_interface_num_ports(phy_interface_t interface) +@@ -141,6 +141,7 @@ int phy_interface_num_ports(phy_interfac return 1; case PHY_INTERFACE_MODE_QSGMII: case PHY_INTERFACE_MODE_QUSGMII: @@ -54,11 +50,9 @@ index 15f349e5995a..a235ea2264a7 100644 return 4; case PHY_INTERFACE_MODE_PSGMII: return 5; -diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c -index 02427378acfd..6c24c48dcf0f 100644 --- a/drivers/net/phy/phylink.c +++ b/drivers/net/phy/phylink.c -@@ -231,6 +231,7 @@ static int phylink_interface_max_speed(phy_interface_t interface) +@@ -231,6 +231,7 @@ static int phylink_interface_max_speed(p return SPEED_1000; case PHY_INTERFACE_MODE_2500BASEX: @@ -66,7 +60,7 @@ index 02427378acfd..6c24c48dcf0f 100644 return SPEED_2500; case PHY_INTERFACE_MODE_5GBASER: -@@ -500,7 +501,11 @@ static unsigned long phylink_get_capabilities(phy_interface_t interface, +@@ -500,7 +501,11 @@ unsigned long phylink_get_capabilities(p switch (interface) { case PHY_INTERFACE_MODE_USXGMII: @@ -79,19 +73,17 @@ index 02427378acfd..6c24c48dcf0f 100644 fallthrough; case PHY_INTERFACE_MODE_RGMII_TXID: -@@ -926,6 +931,7 @@ static int phylink_parse_mode(struct phylink *pl, - case PHY_INTERFACE_MODE_5GBASER: - case PHY_INTERFACE_MODE_25GBASER: +@@ -956,6 +961,7 @@ static int phylink_parse_mode(struct phy + phylink_set(pl->supported, 25000baseSR_Full); + fallthrough; case PHY_INTERFACE_MODE_USXGMII: + case PHY_INTERFACE_MODE_10G_QXGMII: case PHY_INTERFACE_MODE_10GKR: case PHY_INTERFACE_MODE_10GBASER: - case PHY_INTERFACE_MODE_XLGMII: -diff --git a/include/linux/phy.h b/include/linux/phy.h -index e6e83304558e..205fccfc0f60 100644 + phylink_set(pl->supported, 10baseT_Half); --- a/include/linux/phy.h +++ b/include/linux/phy.h -@@ -128,6 +128,7 @@ extern const int phy_10gbit_features_array[1]; +@@ -125,6 +125,7 @@ extern const int phy_10gbit_features_arr * @PHY_INTERFACE_MODE_10GKR: 10GBASE-KR - with Clause 73 AN * @PHY_INTERFACE_MODE_QUSGMII: Quad Universal SGMII * @PHY_INTERFACE_MODE_1000BASEKX: 1000Base-KX - with Clause 73 AN @@ -99,7 +91,7 @@ index e6e83304558e..205fccfc0f60 100644 * @PHY_INTERFACE_MODE_MAX: Book keeping * * Describes the interface between the MAC and PHY. -@@ -168,6 +169,7 @@ typedef enum { +@@ -165,6 +166,7 @@ typedef enum { PHY_INTERFACE_MODE_10GKR, PHY_INTERFACE_MODE_QUSGMII, PHY_INTERFACE_MODE_1000BASEKX, @@ -107,7 +99,7 @@ index e6e83304558e..205fccfc0f60 100644 PHY_INTERFACE_MODE_MAX, } phy_interface_t; -@@ -289,6 +291,8 @@ static inline const char *phy_modes(phy_interface_t interface) +@@ -286,6 +288,8 @@ static inline const char *phy_modes(phy_ return "100base-x"; case PHY_INTERFACE_MODE_QUSGMII: return "qusgmii"; @@ -116,11 +108,9 @@ index e6e83304558e..205fccfc0f60 100644 default: return "unknown"; } -diff --git a/include/linux/phylink.h b/include/linux/phylink.h -index a30a692acc32..2381e07429a2 100644 --- a/include/linux/phylink.h +++ b/include/linux/phylink.h -@@ -124,6 +130,7 @@ static unsigned int phylink_pcs_neg_mode(unsigned int mode, +@@ -128,6 +128,7 @@ static inline unsigned int phylink_pcs_n case PHY_INTERFACE_MODE_QSGMII: case PHY_INTERFACE_MODE_QUSGMII: case PHY_INTERFACE_MODE_USXGMII: @@ -128,7 +118,7 @@ index a30a692acc32..2381e07429a2 100644 /* These protocols are designed for use with a PHY which * communicates its negotiation result back to the MAC via * inband communication. Note: there exist PHYs that run -@@ -654,6 +654,7 @@ static inline int phylink_get_link_timer_ns(phy_interface_t interface) +@@ -714,6 +715,7 @@ static inline int phylink_get_link_timer case PHY_INTERFACE_MODE_SGMII: case PHY_INTERFACE_MODE_QSGMII: case PHY_INTERFACE_MODE_USXGMII: @@ -136,6 +126,3 @@ index a30a692acc32..2381e07429a2 100644 return 1600000; case PHY_INTERFACE_MODE_1000BASEX: --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/008-v6.9-clk-Provide-managed-helper-to-get-and-enable-bulk-cl.patch b/target/linux/qualcommbe/patches-6.6/008-v6.9-clk-Provide-managed-helper-to-get-and-enable-bulk-cl.patch index ab61f0b658..c803a7bd2c 100644 --- a/target/linux/qualcommbe/patches-6.6/008-v6.9-clk-Provide-managed-helper-to-get-and-enable-bulk-cl.patch +++ b/target/linux/qualcommbe/patches-6.6/008-v6.9-clk-Provide-managed-helper-to-get-and-enable-bulk-cl.patch @@ -18,11 +18,9 @@ Signed-off-by: Stephen Boyd include/linux/clk.h | 22 ++++++++++++++++++++++ 2 files changed, 62 insertions(+) -diff --git a/drivers/clk/clk-devres.c b/drivers/clk/clk-devres.c -index 737aa70e2cb3..90e6078fb6e1 100644 --- a/drivers/clk/clk-devres.c +++ b/drivers/clk/clk-devres.c -@@ -182,6 +182,46 @@ int __must_check devm_clk_bulk_get_all(struct device *dev, +@@ -182,6 +182,46 @@ int __must_check devm_clk_bulk_get_all(s } EXPORT_SYMBOL_GPL(devm_clk_bulk_get_all); @@ -69,15 +67,12 @@ index 737aa70e2cb3..90e6078fb6e1 100644 static int devm_clk_match(struct device *dev, void *res, void *data) { struct clk **c = res; -diff --git a/include/linux/clk.h b/include/linux/clk.h -index 06f1b292f8a0..0f44d3863de2 100644 --- a/include/linux/clk.h +++ b/include/linux/clk.h -@@ -478,6 +478,22 @@ int __must_check devm_clk_bulk_get_optional(struct device *dev, int num_clks, - int __must_check devm_clk_bulk_get_all(struct device *dev, +@@ -479,6 +479,22 @@ int __must_check devm_clk_bulk_get_all(s struct clk_bulk_data **clks); -+/** + /** + * devm_clk_bulk_get_all_enable - Get and enable all clocks of the consumer (managed) + * @dev: device for clock "consumer" + * @clks: pointer to the clk_bulk_data table of consumer @@ -93,10 +88,11 @@ index 06f1b292f8a0..0f44d3863de2 100644 +int __must_check devm_clk_bulk_get_all_enable(struct device *dev, + struct clk_bulk_data **clks); + - /** ++/** * devm_clk_get - lookup and obtain a managed reference to a clock producer. * @dev: device for clock "consumer" -@@ -968,6 +984,12 @@ static inline int __must_check devm_clk_bulk_get_all(struct device *dev, + * @id: clock consumer ID +@@ -968,6 +984,12 @@ static inline int __must_check devm_clk_ return 0; } @@ -109,6 +105,3 @@ index 06f1b292f8a0..0f44d3863de2 100644 static inline struct clk *devm_get_clk_from_child(struct device *dev, struct device_node *np, const char *con_id) { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/009-v6.13-clk-Provide-devm_clk_bulk_get_all_enabled-helper.patch b/target/linux/qualcommbe/patches-6.6/009-v6.13-clk-Provide-devm_clk_bulk_get_all_enabled-helper.patch index 8d9bd9ce01..cf43ed1a6d 100644 --- a/target/linux/qualcommbe/patches-6.6/009-v6.13-clk-Provide-devm_clk_bulk_get_all_enabled-helper.patch +++ b/target/linux/qualcommbe/patches-6.6/009-v6.13-clk-Provide-devm_clk_bulk_get_all_enabled-helper.patch @@ -34,11 +34,9 @@ Signed-off-by: Stephen Boyd include/linux/clk.h | 21 ++++++++++++++++----- 2 files changed, 21 insertions(+), 9 deletions(-) -diff --git a/drivers/clk/clk-devres.c b/drivers/clk/clk-devres.c -index 82ae1f26e634..5368d92d9b39 100644 --- a/drivers/clk/clk-devres.c +++ b/drivers/clk/clk-devres.c -@@ -218,8 +218,8 @@ static void devm_clk_bulk_release_all_enable(struct device *dev, void *res) +@@ -190,8 +190,8 @@ static void devm_clk_bulk_release_all_en clk_bulk_put_all(devres->num_clks, devres->clks); } @@ -49,7 +47,7 @@ index 82ae1f26e634..5368d92d9b39 100644 { struct clk_bulk_devres *devres; int ret; -@@ -244,11 +244,12 @@ int __must_check devm_clk_bulk_get_all_enable(struct device *dev, +@@ -216,11 +216,12 @@ int __must_check devm_clk_bulk_get_all_e } else { clk_bulk_put_all(devres->num_clks, devres->clks); devres_free(devres); @@ -64,11 +62,9 @@ index 82ae1f26e634..5368d92d9b39 100644 static int devm_clk_match(struct device *dev, void *res, void *data) { -diff --git a/include/linux/clk.h b/include/linux/clk.h -index 851a0f2cf42c..1dcee6d701e4 100644 --- a/include/linux/clk.h +++ b/include/linux/clk.h -@@ -496,11 +496,13 @@ int __must_check devm_clk_bulk_get_all(struct device *dev, +@@ -479,11 +479,13 @@ int __must_check devm_clk_bulk_get_all(s struct clk_bulk_data **clks); /** @@ -84,7 +80,7 @@ index 851a0f2cf42c..1dcee6d701e4 100644 * * This helper function allows drivers to get all clocks of the * consumer and enables them in one operation with management. -@@ -508,8 +510,8 @@ int __must_check devm_clk_bulk_get_all(struct device *dev, +@@ -491,8 +493,8 @@ int __must_check devm_clk_bulk_get_all(s * is unbound. */ @@ -95,7 +91,7 @@ index 851a0f2cf42c..1dcee6d701e4 100644 /** * devm_clk_get - lookup and obtain a managed reference to a clock producer. -@@ -1034,7 +1036,7 @@ static inline int __must_check devm_clk_bulk_get_all(struct device *dev, +@@ -984,7 +986,7 @@ static inline int __must_check devm_clk_ return 0; } @@ -104,7 +100,7 @@ index 851a0f2cf42c..1dcee6d701e4 100644 struct clk_bulk_data **clks) { return 0; -@@ -1136,6 +1138,15 @@ static inline void clk_restore_context(void) {} +@@ -1086,6 +1088,15 @@ static inline void clk_restore_context(v #endif @@ -120,6 +116,3 @@ index 851a0f2cf42c..1dcee6d701e4 100644 /* clk_prepare_enable helps cases using clk_enable in non-atomic context. */ static inline int clk_prepare_enable(struct clk *clk) { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/010-01-v6.11-dt-bindings-clock-Add-PCIe-pipe-related-clocks-for-I.patch b/target/linux/qualcommbe/patches-6.6/010-01-v6.11-dt-bindings-clock-Add-PCIe-pipe-related-clocks-for-I.patch index 3580795aa5..d03253d706 100644 --- a/target/linux/qualcommbe/patches-6.6/010-01-v6.11-dt-bindings-clock-Add-PCIe-pipe-related-clocks-for-I.patch +++ b/target/linux/qualcommbe/patches-6.6/010-01-v6.11-dt-bindings-clock-Add-PCIe-pipe-related-clocks-for-I.patch @@ -13,8 +13,6 @@ Signed-off-by: Bjorn Andersson include/dt-bindings/clock/qcom,ipq9574-gcc.h | 4 ++++ 1 file changed, 4 insertions(+) -diff --git a/include/dt-bindings/clock/qcom,ipq9574-gcc.h b/include/dt-bindings/clock/qcom,ipq9574-gcc.h -index 08fd3a37acaa..52123c5a09fa 100644 --- a/include/dt-bindings/clock/qcom,ipq9574-gcc.h +++ b/include/dt-bindings/clock/qcom,ipq9574-gcc.h @@ -216,4 +216,8 @@ @@ -26,6 +24,3 @@ index 08fd3a37acaa..52123c5a09fa 100644 +#define GCC_PCIE2_PIPE_CLK 212 +#define GCC_PCIE3_PIPE_CLK 213 #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/010-02-v6.11-clk-qcom-gcc-ipq9574-Add-PCIe-pipe-clocks.patch b/target/linux/qualcommbe/patches-6.6/010-02-v6.11-clk-qcom-gcc-ipq9574-Add-PCIe-pipe-clocks.patch index 05a634a1c6..eb38b15861 100644 --- a/target/linux/qualcommbe/patches-6.6/010-02-v6.11-clk-qcom-gcc-ipq9574-Add-PCIe-pipe-clocks.patch +++ b/target/linux/qualcommbe/patches-6.6/010-02-v6.11-clk-qcom-gcc-ipq9574-Add-PCIe-pipe-clocks.patch @@ -14,11 +14,9 @@ Signed-off-by: Bjorn Andersson drivers/clk/qcom/gcc-ipq9574.c | 76 ++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) -diff --git a/drivers/clk/qcom/gcc-ipq9574.c b/drivers/clk/qcom/gcc-ipq9574.c -index 0a3f846695b8..bc3e17f34295 100644 --- a/drivers/clk/qcom/gcc-ipq9574.c +++ b/drivers/clk/qcom/gcc-ipq9574.c -@@ -1569,6 +1569,24 @@ static struct clk_regmap_phy_mux pcie0_pipe_clk_src = { +@@ -1569,6 +1569,24 @@ static struct clk_regmap_phy_mux pcie0_p }, }; @@ -43,7 +41,7 @@ index 0a3f846695b8..bc3e17f34295 100644 static struct clk_regmap_phy_mux pcie1_pipe_clk_src = { .reg = 0x29064, .clkr = { -@@ -1583,6 +1601,24 @@ static struct clk_regmap_phy_mux pcie1_pipe_clk_src = { +@@ -1583,6 +1601,24 @@ static struct clk_regmap_phy_mux pcie1_p }, }; @@ -68,7 +66,7 @@ index 0a3f846695b8..bc3e17f34295 100644 static struct clk_regmap_phy_mux pcie2_pipe_clk_src = { .reg = 0x2a064, .clkr = { -@@ -1597,6 +1633,24 @@ static struct clk_regmap_phy_mux pcie2_pipe_clk_src = { +@@ -1597,6 +1633,24 @@ static struct clk_regmap_phy_mux pcie2_p }, }; @@ -93,7 +91,7 @@ index 0a3f846695b8..bc3e17f34295 100644 static struct clk_regmap_phy_mux pcie3_pipe_clk_src = { .reg = 0x2b064, .clkr = { -@@ -1611,6 +1665,24 @@ static struct clk_regmap_phy_mux pcie3_pipe_clk_src = { +@@ -1611,6 +1665,24 @@ static struct clk_regmap_phy_mux pcie3_p }, }; @@ -118,7 +116,7 @@ index 0a3f846695b8..bc3e17f34295 100644 static const struct freq_tbl ftbl_pcie_rchng_clk_src[] = { F(24000000, P_XO, 1, 0, 0), F(100000000, P_GPLL0, 8, 0, 0), -@@ -4141,6 +4213,10 @@ static struct clk_regmap *gcc_ipq9574_clks[] = { +@@ -4143,6 +4215,10 @@ static struct clk_regmap *gcc_ipq9574_cl [GCC_SNOC_PCIE1_1LANE_S_CLK] = &gcc_snoc_pcie1_1lane_s_clk.clkr, [GCC_SNOC_PCIE2_2LANE_S_CLK] = &gcc_snoc_pcie2_2lane_s_clk.clkr, [GCC_SNOC_PCIE3_2LANE_S_CLK] = &gcc_snoc_pcie3_2lane_s_clk.clkr, @@ -129,6 +127,3 @@ index 0a3f846695b8..bc3e17f34295 100644 }; static const struct qcom_reset_map gcc_ipq9574_resets[] = { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/011-v6.11-arm64-dts-qcom-ipq9574-drop-power-domain-cells-prope.patch b/target/linux/qualcommbe/patches-6.6/011-v6.11-arm64-dts-qcom-ipq9574-drop-power-domain-cells-prope.patch index ed8e3e9e5d..85e9b618c3 100644 --- a/target/linux/qualcommbe/patches-6.6/011-v6.11-arm64-dts-qcom-ipq9574-drop-power-domain-cells-prope.patch +++ b/target/linux/qualcommbe/patches-6.6/011-v6.11-arm64-dts-qcom-ipq9574-drop-power-domain-cells-prope.patch @@ -15,11 +15,9 @@ Signed-off-by: Bjorn Andersson arch/arm64/boot/dts/qcom/ipq9574.dtsi | 1 - 1 file changed, 1 deletion(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index ded02bc39275..d21937b09b4b 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -315,7 +315,6 @@ gcc: clock-controller@1800000 { +@@ -296,7 +296,6 @@ <0>; #clock-cells = <1>; #reset-cells = <1>; @@ -27,6 +25,3 @@ index ded02bc39275..d21937b09b4b 100644 }; tcsr_mutex: hwlock@1905000 { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/012-01-v6.11-interconnect-icc-clk-Specify-master-slave-ids.patch b/target/linux/qualcommbe/patches-6.6/012-01-v6.11-interconnect-icc-clk-Specify-master-slave-ids.patch index eae33982b2..281558cfa2 100644 --- a/target/linux/qualcommbe/patches-6.6/012-01-v6.11-interconnect-icc-clk-Specify-master-slave-ids.patch +++ b/target/linux/qualcommbe/patches-6.6/012-01-v6.11-interconnect-icc-clk-Specify-master-slave-ids.patch @@ -23,11 +23,9 @@ Signed-off-by: Bjorn Andersson include/linux/interconnect-clk.h | 2 ++ 3 files changed, 11 insertions(+), 4 deletions(-) -diff --git a/drivers/clk/qcom/clk-cbf-8996.c b/drivers/clk/qcom/clk-cbf-8996.c -index 76bf523431b8..f5fd1ff9c6c9 100644 --- a/drivers/clk/qcom/clk-cbf-8996.c +++ b/drivers/clk/qcom/clk-cbf-8996.c -@@ -226,7 +226,12 @@ static int qcom_msm8996_cbf_icc_register(struct platform_device *pdev, struct cl +@@ -237,7 +237,12 @@ static int qcom_msm8996_cbf_icc_register struct device *dev = &pdev->dev; struct clk *clk = devm_clk_hw_get_clk(dev, cbf_hw, "cbf"); const struct icc_clk_data data[] = { @@ -41,11 +39,9 @@ index 76bf523431b8..f5fd1ff9c6c9 100644 }; struct icc_provider *provider; -diff --git a/drivers/interconnect/icc-clk.c b/drivers/interconnect/icc-clk.c -index d787f2ea36d9..2be193fd7d8f 100644 --- a/drivers/interconnect/icc-clk.c +++ b/drivers/interconnect/icc-clk.c -@@ -108,7 +108,7 @@ struct icc_provider *icc_clk_register(struct device *dev, +@@ -109,7 +109,7 @@ struct icc_provider *icc_clk_register(st for (i = 0, j = 0; i < num_clocks; i++) { qp->clocks[i].clk = data[i].clk; @@ -54,7 +50,7 @@ index d787f2ea36d9..2be193fd7d8f 100644 if (IS_ERR(node)) { ret = PTR_ERR(node); goto err; -@@ -118,10 +118,10 @@ struct icc_provider *icc_clk_register(struct device *dev, +@@ -119,10 +119,10 @@ struct icc_provider *icc_clk_register(st node->data = &qp->clocks[i]; icc_node_add(node, provider); /* link to the next node, slave */ @@ -67,8 +63,6 @@ index d787f2ea36d9..2be193fd7d8f 100644 if (IS_ERR(node)) { ret = PTR_ERR(node); goto err; -diff --git a/include/linux/interconnect-clk.h b/include/linux/interconnect-clk.h -index 0cd80112bea5..170898faaacb 100644 --- a/include/linux/interconnect-clk.h +++ b/include/linux/interconnect-clk.h @@ -11,6 +11,8 @@ struct device; @@ -80,6 +74,3 @@ index 0cd80112bea5..170898faaacb 100644 }; struct icc_provider *icc_clk_register(struct device *dev, --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/012-02-v6.11-dt-bindings-interconnect-Add-Qualcomm-IPQ9574-suppor.patch b/target/linux/qualcommbe/patches-6.6/012-02-v6.11-dt-bindings-interconnect-Add-Qualcomm-IPQ9574-suppor.patch index f822003a57..130abfcbe1 100644 --- a/target/linux/qualcommbe/patches-6.6/012-02-v6.11-dt-bindings-interconnect-Add-Qualcomm-IPQ9574-suppor.patch +++ b/target/linux/qualcommbe/patches-6.6/012-02-v6.11-dt-bindings-interconnect-Add-Qualcomm-IPQ9574-suppor.patch @@ -22,8 +22,6 @@ Signed-off-by: Bjorn Andersson 2 files changed, 62 insertions(+) create mode 100644 include/dt-bindings/interconnect/qcom,ipq9574.h -diff --git a/Documentation/devicetree/bindings/clock/qcom,ipq9574-gcc.yaml b/Documentation/devicetree/bindings/clock/qcom,ipq9574-gcc.yaml -index 944a0ea79cd6..824781cbdf34 100644 --- a/Documentation/devicetree/bindings/clock/qcom,ipq9574-gcc.yaml +++ b/Documentation/devicetree/bindings/clock/qcom,ipq9574-gcc.yaml @@ -33,6 +33,9 @@ properties: @@ -36,9 +34,6 @@ index 944a0ea79cd6..824781cbdf34 100644 required: - compatible - clocks -diff --git a/include/dt-bindings/interconnect/qcom,ipq9574.h b/include/dt-bindings/interconnect/qcom,ipq9574.h -new file mode 100644 -index 000000000000..42019335c7dd --- /dev/null +++ b/include/dt-bindings/interconnect/qcom,ipq9574.h @@ -0,0 +1,59 @@ @@ -101,6 +96,3 @@ index 000000000000..42019335c7dd +#define SLAVE_NSSNOC_IMEM_AHB 9 + +#endif /* INTERCONNECT_QCOM_IPQ9574_H */ --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/012-03-v6.11-interconnect-icc-clk-Add-devm_icc_clk_register.patch b/target/linux/qualcommbe/patches-6.6/012-03-v6.11-interconnect-icc-clk-Add-devm_icc_clk_register.patch index ae86828196..c1ad657551 100644 --- a/target/linux/qualcommbe/patches-6.6/012-03-v6.11-interconnect-icc-clk-Add-devm_icc_clk_register.patch +++ b/target/linux/qualcommbe/patches-6.6/012-03-v6.11-interconnect-icc-clk-Add-devm_icc_clk_register.patch @@ -16,11 +16,9 @@ Signed-off-by: Bjorn Andersson include/linux/interconnect-clk.h | 2 ++ 2 files changed, 20 insertions(+) -diff --git a/drivers/interconnect/icc-clk.c b/drivers/interconnect/icc-clk.c -index 2be193fd7d8f..f788db15cd76 100644 --- a/drivers/interconnect/icc-clk.c +++ b/drivers/interconnect/icc-clk.c -@@ -148,6 +148,24 @@ struct icc_provider *icc_clk_register(struct device *dev, +@@ -147,6 +147,24 @@ err: } EXPORT_SYMBOL_GPL(icc_clk_register); @@ -45,11 +43,9 @@ index 2be193fd7d8f..f788db15cd76 100644 /** * icc_clk_unregister() - unregister a previously registered clk interconnect provider * @provider: provider returned by icc_clk_register() -diff --git a/include/linux/interconnect-clk.h b/include/linux/interconnect-clk.h -index 170898faaacb..9bcee3e9c56c 100644 --- a/include/linux/interconnect-clk.h +++ b/include/linux/interconnect-clk.h -@@ -19,6 +19,8 @@ struct icc_provider *icc_clk_register(struct device *dev, +@@ -19,6 +19,8 @@ struct icc_provider *icc_clk_register(st unsigned int first_id, unsigned int num_clocks, const struct icc_clk_data *data); @@ -58,6 +54,3 @@ index 170898faaacb..9bcee3e9c56c 100644 void icc_clk_unregister(struct icc_provider *provider); #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/012-04-v6.11-clk-qcom-common-Add-interconnect-clocks-support.patch b/target/linux/qualcommbe/patches-6.6/012-04-v6.11-clk-qcom-common-Add-interconnect-clocks-support.patch index e0af1be618..1702f26f69 100644 --- a/target/linux/qualcommbe/patches-6.6/012-04-v6.11-clk-qcom-common-Add-interconnect-clocks-support.patch +++ b/target/linux/qualcommbe/patches-6.6/012-04-v6.11-clk-qcom-common-Add-interconnect-clocks-support.patch @@ -23,8 +23,6 @@ Signed-off-by: Bjorn Andersson drivers/clk/qcom/common.h | 9 +++++++++ 2 files changed, 43 insertions(+), 1 deletion(-) -diff --git a/drivers/clk/qcom/common.c b/drivers/clk/qcom/common.c -index c92e10c60322..ea3788ba46f7 100644 --- a/drivers/clk/qcom/common.c +++ b/drivers/clk/qcom/common.c @@ -8,6 +8,7 @@ @@ -35,7 +33,7 @@ index c92e10c60322..ea3788ba46f7 100644 #include #include -@@ -252,6 +253,38 @@ static struct clk_hw *qcom_cc_clk_hw_get(struct of_phandle_args *clkspec, +@@ -252,6 +253,38 @@ static struct clk_hw *qcom_cc_clk_hw_get return cc->rclks[idx] ? &cc->rclks[idx]->hw : NULL; } @@ -74,7 +72,7 @@ index c92e10c60322..ea3788ba46f7 100644 int qcom_cc_really_probe(struct device *dev, const struct qcom_cc_desc *desc, struct regmap *regmap) { -@@ -320,7 +353,7 @@ int qcom_cc_really_probe(struct device *dev, +@@ -320,7 +353,7 @@ int qcom_cc_really_probe(struct device * if (ret) return ret; @@ -83,8 +81,6 @@ index c92e10c60322..ea3788ba46f7 100644 } EXPORT_SYMBOL_GPL(qcom_cc_really_probe); -diff --git a/drivers/clk/qcom/common.h b/drivers/clk/qcom/common.h -index d048bdeeba10..7e57f8fe8ea6 100644 --- a/drivers/clk/qcom/common.h +++ b/drivers/clk/qcom/common.h @@ -19,6 +19,12 @@ struct clk_hw; @@ -110,6 +106,3 @@ index d048bdeeba10..7e57f8fe8ea6 100644 }; /** --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/012-05-v6.11-clk-qcom-ipq9574-Use-icc-clk-for-enabling-NoC-relate.patch b/target/linux/qualcommbe/patches-6.6/012-05-v6.11-clk-qcom-ipq9574-Use-icc-clk-for-enabling-NoC-relate.patch index bbcecdc8cc..ba597fc5e3 100644 --- a/target/linux/qualcommbe/patches-6.6/012-05-v6.11-clk-qcom-ipq9574-Use-icc-clk-for-enabling-NoC-relate.patch +++ b/target/linux/qualcommbe/patches-6.6/012-05-v6.11-clk-qcom-ipq9574-Use-icc-clk-for-enabling-NoC-relate.patch @@ -16,11 +16,9 @@ Signed-off-by: Bjorn Andersson drivers/clk/qcom/gcc-ipq9574.c | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) -diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig -index 1231eae51556..11ae28430dad 100644 --- a/drivers/clk/qcom/Kconfig +++ b/drivers/clk/qcom/Kconfig -@@ -14,6 +14,8 @@ menuconfig COMMON_CLK_QCOM +@@ -17,6 +17,8 @@ menuconfig COMMON_CLK_QCOM select RATIONAL select REGMAP_MMIO select RESET_CONTROLLER @@ -29,8 +27,6 @@ index 1231eae51556..11ae28430dad 100644 if COMMON_CLK_QCOM -diff --git a/drivers/clk/qcom/gcc-ipq9574.c b/drivers/clk/qcom/gcc-ipq9574.c -index bc3e17f34295..f08a447370bd 100644 --- a/drivers/clk/qcom/gcc-ipq9574.c +++ b/drivers/clk/qcom/gcc-ipq9574.c @@ -4,6 +4,8 @@ @@ -50,7 +46,7 @@ index bc3e17f34295..f08a447370bd 100644 #include "clk-alpha-pll.h" #include "clk-branch.h" -@@ -4377,6 +4380,32 @@ static const struct qcom_reset_map gcc_ipq9574_resets[] = { +@@ -4379,6 +4382,32 @@ static const struct qcom_reset_map gcc_i [GCC_WCSS_Q6_TBU_BCR] = { 0x12054, 0 }, }; @@ -83,7 +79,7 @@ index bc3e17f34295..f08a447370bd 100644 static const struct of_device_id gcc_ipq9574_match_table[] = { { .compatible = "qcom,ipq9574-gcc" }, { } -@@ -4399,6 +4428,9 @@ static const struct qcom_cc_desc gcc_ipq9574_desc = { +@@ -4401,6 +4430,9 @@ static const struct qcom_cc_desc gcc_ipq .num_resets = ARRAY_SIZE(gcc_ipq9574_resets), .clk_hws = gcc_ipq9574_hws, .num_clk_hws = ARRAY_SIZE(gcc_ipq9574_hws), @@ -93,7 +89,7 @@ index bc3e17f34295..f08a447370bd 100644 }; static int gcc_ipq9574_probe(struct platform_device *pdev) -@@ -4411,6 +4443,7 @@ static struct platform_driver gcc_ipq9574_driver = { +@@ -4413,6 +4445,7 @@ static struct platform_driver gcc_ipq957 .driver = { .name = "qcom,gcc-ipq9574", .of_match_table = gcc_ipq9574_match_table, @@ -101,6 +97,3 @@ index bc3e17f34295..f08a447370bd 100644 }, }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/012-06-v6.11-arm64-dts-qcom-ipq9574-Add-icc-provider-ability-to-g.patch b/target/linux/qualcommbe/patches-6.6/012-06-v6.11-arm64-dts-qcom-ipq9574-Add-icc-provider-ability-to-g.patch index b5f9c0f297..d24889c525 100644 --- a/target/linux/qualcommbe/patches-6.6/012-06-v6.11-arm64-dts-qcom-ipq9574-Add-icc-provider-ability-to-g.patch +++ b/target/linux/qualcommbe/patches-6.6/012-06-v6.11-arm64-dts-qcom-ipq9574-Add-icc-provider-ability-to-g.patch @@ -21,8 +21,6 @@ Signed-off-by: Bjorn Andersson arch/arm64/boot/dts/qcom/ipq9574.dtsi | 2 ++ 1 file changed, 2 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 04ba09a9156c..48dfafea46a7 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi @@ -8,6 +8,7 @@ @@ -33,7 +31,7 @@ index 04ba09a9156c..48dfafea46a7 100644 #include #include #include -@@ -315,6 +316,7 @@ gcc: clock-controller@1800000 { +@@ -296,6 +297,7 @@ <0>; #clock-cells = <1>; #reset-cells = <1>; @@ -41,6 +39,3 @@ index 04ba09a9156c..48dfafea46a7 100644 }; tcsr_mutex: hwlock@1905000 { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/013-01-v6.7-cpufreq-qcom-nvmem-Enable-cpufreq-for-ipq53xx.patch b/target/linux/qualcommbe/patches-6.6/013-01-v6.7-cpufreq-qcom-nvmem-Enable-cpufreq-for-ipq53xx.patch index ed97bca367..3aec1a91b6 100644 --- a/target/linux/qualcommbe/patches-6.6/013-01-v6.7-cpufreq-qcom-nvmem-Enable-cpufreq-for-ipq53xx.patch +++ b/target/linux/qualcommbe/patches-6.6/013-01-v6.7-cpufreq-qcom-nvmem-Enable-cpufreq-for-ipq53xx.patch @@ -27,23 +27,19 @@ Signed-off-by: Viresh Kumar drivers/cpufreq/qcom-cpufreq-nvmem.c | 6 ++++++ 2 files changed, 7 insertions(+) -diff --git a/drivers/cpufreq/cpufreq-dt-platdev.c b/drivers/cpufreq/cpufreq-dt-platdev.c -index 07181913448f..53da25589e5f 100644 --- a/drivers/cpufreq/cpufreq-dt-platdev.c +++ b/drivers/cpufreq/cpufreq-dt-platdev.c -@@ -180,6 +180,7 @@ static const struct of_device_id blocklist[] __initconst = { +@@ -177,6 +177,7 @@ static const struct of_device_id blockli + { .compatible = "ti,am625", }, { .compatible = "ti,am62a7", }, - { .compatible = "ti,am62p5", }, + { .compatible = "qcom,ipq5332", }, { .compatible = "qcom,ipq8064", }, { .compatible = "qcom,apq8064", }, { .compatible = "qcom,msm8974", }, -diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c b/drivers/cpufreq/qcom-cpufreq-nvmem.c -index 158c0e139185..4f7af70169e0 100644 --- a/drivers/cpufreq/qcom-cpufreq-nvmem.c +++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c -@@ -183,6 +183,11 @@ static int qcom_cpufreq_kryo_name_version(struct device *cpu_dev, +@@ -152,6 +152,11 @@ static int qcom_cpufreq_kryo_name_versio switch (msm_id) { case QCOM_ID_MSM8996: case QCOM_ID_APQ8096: @@ -55,7 +51,7 @@ index 158c0e139185..4f7af70169e0 100644 drv->versions = 1 << (unsigned int)(*speedbin); break; case QCOM_ID_MSM8996SG: -@@ -541,6 +546,7 @@ static const struct of_device_id qcom_cpufreq_match_list[] __initconst = { +@@ -353,6 +358,7 @@ static const struct of_device_id qcom_cp { .compatible = "qcom,apq8096", .data = &match_data_kryo }, { .compatible = "qcom,msm8996", .data = &match_data_kryo }, { .compatible = "qcom,qcs404", .data = &match_data_qcs404 }, @@ -63,6 +59,3 @@ index 158c0e139185..4f7af70169e0 100644 { .compatible = "qcom,ipq8064", .data = &match_data_krait }, { .compatible = "qcom,apq8064", .data = &match_data_krait }, { .compatible = "qcom,msm8974", .data = &match_data_krait }, --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/013-02-v6.7-v6.8-cpufreq-qcom-nvmem-Introduce-cpufreq-for-ipq95xx.patch b/target/linux/qualcommbe/patches-6.6/013-02-v6.7-v6.8-cpufreq-qcom-nvmem-Introduce-cpufreq-for-ipq95xx.patch index b3954d19b0..0b5e921c95 100644 --- a/target/linux/qualcommbe/patches-6.6/013-02-v6.7-v6.8-cpufreq-qcom-nvmem-Introduce-cpufreq-for-ipq95xx.patch +++ b/target/linux/qualcommbe/patches-6.6/013-02-v6.7-v6.8-cpufreq-qcom-nvmem-Introduce-cpufreq-for-ipq95xx.patch @@ -23,23 +23,19 @@ Signed-off-by: Viresh Kumar drivers/cpufreq/qcom-cpufreq-nvmem.c | 6 ++++++ 2 files changed, 7 insertions(+) -diff --git a/drivers/cpufreq/cpufreq-dt-platdev.c b/drivers/cpufreq/cpufreq-dt-platdev.c -index 53da25589e5f..bd1e1357cef8 100644 --- a/drivers/cpufreq/cpufreq-dt-platdev.c +++ b/drivers/cpufreq/cpufreq-dt-platdev.c -@@ -184,6 +184,7 @@ static const struct of_device_id blocklist[] __initconst = { +@@ -179,6 +179,7 @@ static const struct of_device_id blockli - { .compatible = "qcom,ipq5332", }, + { .compatible = "qcom,ipq5332", }, { .compatible = "qcom,ipq8064", }, + { .compatible = "qcom,ipq9574", }, { .compatible = "qcom,apq8064", }, { .compatible = "qcom,msm8974", }, { .compatible = "qcom,msm8960", }, -diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c b/drivers/cpufreq/qcom-cpufreq-nvmem.c -index 4f7af70169e0..6355a39418c5 100644 --- a/drivers/cpufreq/qcom-cpufreq-nvmem.c +++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c -@@ -188,6 +188,11 @@ static int qcom_cpufreq_kryo_name_version(struct device *cpu_dev, +@@ -157,6 +157,11 @@ static int qcom_cpufreq_kryo_name_versio case QCOM_ID_IPQ5312: case QCOM_ID_IPQ5302: case QCOM_ID_IPQ5300: @@ -51,7 +47,7 @@ index 4f7af70169e0..6355a39418c5 100644 drv->versions = 1 << (unsigned int)(*speedbin); break; case QCOM_ID_MSM8996SG: -@@ -551,6 +556,7 @@ static const struct of_device_id qcom_cpufreq_match_list[] __initconst = { +@@ -361,6 +366,7 @@ static const struct of_device_id qcom_cp { .compatible = "qcom,ipq5332", .data = &match_data_kryo }, { .compatible = "qcom,ipq8064", .data = &match_data_krait }, { .compatible = "qcom,apq8064", .data = &match_data_krait }, @@ -59,6 +55,3 @@ index 4f7af70169e0..6355a39418c5 100644 { .compatible = "qcom,msm8974", .data = &match_data_krait }, { .compatible = "qcom,msm8960", .data = &match_data_krait }, {}, --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/014-v6.8-arm64-dts-qcom-ipq9574-populate-the-opp-table-based-.patch b/target/linux/qualcommbe/patches-6.6/014-v6.8-arm64-dts-qcom-ipq9574-populate-the-opp-table-based-.patch index 8aaf117f58..9e546d33c3 100644 --- a/target/linux/qualcommbe/patches-6.6/014-v6.8-arm64-dts-qcom-ipq9574-populate-the-opp-table-based-.patch +++ b/target/linux/qualcommbe/patches-6.6/014-v6.8-arm64-dts-qcom-ipq9574-populate-the-opp-table-based-.patch @@ -31,11 +31,9 @@ Signed-off-by: Bjorn Andersson arch/arm64/boot/dts/qcom/ipq9574.dtsi | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 8a72ad4afd03..d4b7e215fc92 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -106,42 +106,56 @@ memory@40000000 { +@@ -107,42 +107,56 @@ }; cpu_opp_table: opp-table-cpu { @@ -93,7 +91,7 @@ index 8a72ad4afd03..d4b7e215fc92 100644 clock-latency-ns = <200000>; }; }; -@@ -223,6 +237,11 @@ qfprom: efuse@a4000 { +@@ -234,6 +248,11 @@ reg = <0x000a4000 0x5a1>; #address-cells = <1>; #size-cells = <1>; @@ -105,6 +103,3 @@ index 8a72ad4afd03..d4b7e215fc92 100644 }; cryptobam: dma-controller@704000 { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/015-v6.8-regulator-qcom_smd-Add-LDO5-MP5496-regulator.patch b/target/linux/qualcommbe/patches-6.6/015-v6.8-regulator-qcom_smd-Add-LDO5-MP5496-regulator.patch index 68f96ce62e..039c39c5c2 100644 --- a/target/linux/qualcommbe/patches-6.6/015-v6.8-regulator-qcom_smd-Add-LDO5-MP5496-regulator.patch +++ b/target/linux/qualcommbe/patches-6.6/015-v6.8-regulator-qcom_smd-Add-LDO5-MP5496-regulator.patch @@ -14,11 +14,9 @@ Signed-off-by: Mark Brown drivers/regulator/qcom_smd-regulator.c | 1 + 1 file changed, 1 insertion(+) -diff --git a/drivers/regulator/qcom_smd-regulator.c b/drivers/regulator/qcom_smd-regulator.c -index 09c471a0ba2e..d1be9568025e 100644 --- a/drivers/regulator/qcom_smd-regulator.c +++ b/drivers/regulator/qcom_smd-regulator.c -@@ -796,6 +796,7 @@ static const struct rpm_regulator_data rpm_mp5496_regulators[] = { +@@ -796,6 +796,7 @@ static const struct rpm_regulator_data r { "s1", QCOM_SMD_RPM_SMPA, 1, &mp5496_smps, "s1" }, { "s2", QCOM_SMD_RPM_SMPA, 2, &mp5496_smps, "s2" }, { "l2", QCOM_SMD_RPM_LDOA, 2, &mp5496_ldoa2, "l2" }, @@ -26,6 +24,3 @@ index 09c471a0ba2e..d1be9568025e 100644 {} }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/018-v6.14-clk-qcom-Add-CMN-PLL-clock-controller-driver-for-IPQ.patch b/target/linux/qualcommbe/patches-6.6/018-v6.14-clk-qcom-Add-CMN-PLL-clock-controller-driver-for-IPQ.patch index fedd582897..2b823d2fc9 100644 --- a/target/linux/qualcommbe/patches-6.6/018-v6.14-clk-qcom-Add-CMN-PLL-clock-controller-driver-for-IPQ.patch +++ b/target/linux/qualcommbe/patches-6.6/018-v6.14-clk-qcom-Add-CMN-PLL-clock-controller-driver-for-IPQ.patch @@ -32,11 +32,9 @@ Signed-off-by: Bjorn Andersson 3 files changed, 445 insertions(+) create mode 100644 drivers/clk/qcom/ipq-cmn-pll.c -diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig -index 42c257e4c433..2daff198aeb3 100644 --- a/drivers/clk/qcom/Kconfig +++ b/drivers/clk/qcom/Kconfig -@@ -199,6 +199,15 @@ config IPQ_APSS_6018 +@@ -141,6 +141,15 @@ config IPQ_APSS_6018 Say Y if you want to support CPU frequency scaling on ipq based devices. @@ -52,21 +50,16 @@ index 42c257e4c433..2daff198aeb3 100644 config IPQ_GCC_4019 tristate "IPQ4019 Global Clock Controller" help -diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile -index 1b749da9c13a..6665049cb8c8 100644 --- a/drivers/clk/qcom/Makefile +++ b/drivers/clk/qcom/Makefile -@@ -30,6 +30,7 @@ obj-$(CONFIG_CLK_X1P42100_GPUCC) += gpucc-x1p42100.o - obj-$(CONFIG_CLK_QCM2290_GPUCC) += gpucc-qcm2290.o +@@ -23,6 +23,7 @@ obj-$(CONFIG_APQ_MMCC_8084) += mmcc-apq8 + obj-$(CONFIG_CLK_GFM_LPASS_SM8250) += lpass-gfm-sm8250.o obj-$(CONFIG_IPQ_APSS_PLL) += apss-ipq-pll.o obj-$(CONFIG_IPQ_APSS_6018) += apss-ipq6018.o +obj-$(CONFIG_IPQ_CMN_PLL) += ipq-cmn-pll.o obj-$(CONFIG_IPQ_GCC_4019) += gcc-ipq4019.o obj-$(CONFIG_IPQ_GCC_5018) += gcc-ipq5018.o obj-$(CONFIG_IPQ_GCC_5332) += gcc-ipq5332.o -diff --git a/drivers/clk/qcom/ipq-cmn-pll.c b/drivers/clk/qcom/ipq-cmn-pll.c -new file mode 100644 -index 000000000000..432d4c4b7aa6 --- /dev/null +++ b/drivers/clk/qcom/ipq-cmn-pll.c @@ -0,0 +1,435 @@ @@ -505,6 +498,3 @@ index 000000000000..432d4c4b7aa6 + +MODULE_DESCRIPTION("Qualcomm Technologies, Inc. IPQ CMN PLL Driver"); +MODULE_LICENSE("GPL"); --- -2.47.1 - diff --git a/target/linux/qualcommbe/patches-6.6/019-01-v6.14-dt-bindings-clock-qcom-Add-CMN-PLL-clock-controller-.patch b/target/linux/qualcommbe/patches-6.6/019-01-v6.14-dt-bindings-clock-qcom-Add-CMN-PLL-clock-controller-.patch index 8d0d19945a..5c0b4e16f8 100644 --- a/target/linux/qualcommbe/patches-6.6/019-01-v6.14-dt-bindings-clock-qcom-Add-CMN-PLL-clock-controller-.patch +++ b/target/linux/qualcommbe/patches-6.6/019-01-v6.14-dt-bindings-clock-qcom-Add-CMN-PLL-clock-controller-.patch @@ -25,9 +25,6 @@ Signed-off-by: Bjorn Andersson create mode 100644 Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml create mode 100644 include/dt-bindings/clock/qcom,ipq-cmn-pll.h -diff --git a/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml b/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml -new file mode 100644 -index 000000000000..f869b3739be8 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml @@ -0,0 +1,77 @@ @@ -108,9 +105,6 @@ index 000000000000..f869b3739be8 + assigned-clock-rates-u64 = /bits/ 64 <12000000000>; + }; +... -diff --git a/include/dt-bindings/clock/qcom,ipq-cmn-pll.h b/include/dt-bindings/clock/qcom,ipq-cmn-pll.h -new file mode 100644 -index 000000000000..936e92b3b62c --- /dev/null +++ b/include/dt-bindings/clock/qcom,ipq-cmn-pll.h @@ -0,0 +1,22 @@ @@ -136,6 +130,3 @@ index 000000000000..936e92b3b62c +#define ETH2_50MHZ_CLK 8 +#define ETH_25MHZ_CLK 9 +#endif --- -2.47.1 - diff --git a/target/linux/qualcommbe/patches-6.6/019-02-v6.14-arm64-dts-qcom-ipq9574-Add-CMN-PLL-node.patch b/target/linux/qualcommbe/patches-6.6/019-02-v6.14-arm64-dts-qcom-ipq9574-Add-CMN-PLL-node.patch index 84f28cf83d..514df211ec 100644 --- a/target/linux/qualcommbe/patches-6.6/019-02-v6.14-arm64-dts-qcom-ipq9574-Add-CMN-PLL-node.patch +++ b/target/linux/qualcommbe/patches-6.6/019-02-v6.14-arm64-dts-qcom-ipq9574-Add-CMN-PLL-node.patch @@ -28,8 +28,6 @@ Signed-off-by: Bjorn Andersson arch/arm64/boot/dts/qcom/ipq9574.dtsi | 26 ++++++++++++++++++- 2 files changed, 41 insertions(+), 2 deletions(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -index 91e104b0f865..bb1ff79360d3 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi @@ -3,7 +3,7 @@ @@ -41,7 +39,7 @@ index 91e104b0f865..bb1ff79360d3 100644 */ /dts-v1/; -@@ -164,6 +164,21 @@ &usb3 { +@@ -120,6 +120,21 @@ status = "okay"; }; @@ -63,8 +61,6 @@ index 91e104b0f865..bb1ff79360d3 100644 +&xo_clk { + clock-frequency = <48000000>; +}; -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 00ee3290c181..c543c3492e93 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi @@ -3,10 +3,11 @@ @@ -80,7 +76,7 @@ index 00ee3290c181..c543c3492e93 100644 #include #include #include -@@ -19,6 +20,12 @@ / { +@@ -19,6 +20,12 @@ #size-cells = <2>; clocks { @@ -93,7 +89,7 @@ index 00ee3290c181..c543c3492e93 100644 sleep_clk: sleep-clk { compatible = "fixed-clock"; #clock-cells = <0>; -@@ -28,6 +35,11 @@ xo_board_clk: xo-board-clk { +@@ -28,6 +35,11 @@ compatible = "fixed-clock"; #clock-cells = <0>; }; @@ -105,7 +101,7 @@ index 00ee3290c181..c543c3492e93 100644 }; cpus { -@@ -335,6 +347,18 @@ pcie1_phy: phy@fc000 { +@@ -243,6 +255,18 @@ status = "disabled"; }; @@ -124,6 +120,3 @@ index 00ee3290c181..c543c3492e93 100644 qfprom: efuse@a4000 { compatible = "qcom,ipq9574-qfprom", "qcom,qfprom"; reg = <0x000a4000 0x5a1>; --- -2.47.1 - diff --git a/target/linux/qualcommbe/patches-6.6/019-03-v6.14-arm64-dts-qcom-ipq9574-Update-xo_board_clk-to-use-fi.patch b/target/linux/qualcommbe/patches-6.6/019-03-v6.14-arm64-dts-qcom-ipq9574-Update-xo_board_clk-to-use-fi.patch index 0654895165..062e9ecabb 100644 --- a/target/linux/qualcommbe/patches-6.6/019-03-v6.14-arm64-dts-qcom-ipq9574-Update-xo_board_clk-to-use-fi.patch +++ b/target/linux/qualcommbe/patches-6.6/019-03-v6.14-arm64-dts-qcom-ipq9574-Update-xo_board_clk-to-use-fi.patch @@ -17,11 +17,9 @@ Signed-off-by: Bjorn Andersson arch/arm64/boot/dts/qcom/ipq9574.dtsi | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -index bb1ff79360d3..ae12f069f26f 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -@@ -175,8 +175,13 @@ &ref_48mhz_clk { +@@ -131,8 +131,13 @@ clock-mult = <1>; }; @@ -36,11 +34,9 @@ index bb1ff79360d3..ae12f069f26f 100644 }; &xo_clk { -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index c543c3492e93..3e93484e7e32 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -32,7 +32,8 @@ sleep_clk: sleep-clk { +@@ -32,7 +32,8 @@ }; xo_board_clk: xo-board-clk { @@ -50,6 +46,3 @@ index c543c3492e93..3e93484e7e32 100644 #clock-cells = <0>; }; --- -2.47.1 - diff --git a/target/linux/qualcommbe/patches-6.6/100-06-spi-spi-qpic-add-driver-for-QCOM-SPI-NAND-flash-Inte.patch b/target/linux/qualcommbe/patches-6.6/100-06-spi-spi-qpic-add-driver-for-QCOM-SPI-NAND-flash-Inte.patch index d5babb1fea..62f29cba3c 100644 --- a/target/linux/qualcommbe/patches-6.6/100-06-spi-spi-qpic-add-driver-for-QCOM-SPI-NAND-flash-Inte.patch +++ b/target/linux/qualcommbe/patches-6.6/100-06-spi-spi-qpic-add-driver-for-QCOM-SPI-NAND-flash-Inte.patch @@ -209,11 +209,9 @@ Change in [v1] 5 files changed, 1654 insertions(+) create mode 100644 drivers/spi/spi-qpic-snand.c -diff --git a/drivers/mtd/nand/Makefile b/drivers/mtd/nand/Makefile -index da1586a36574..db516a45f0c5 100644 --- a/drivers/mtd/nand/Makefile +++ b/drivers/mtd/nand/Makefile -@@ -3,7 +3,11 @@ +@@ -4,7 +4,11 @@ nandcore-objs := core.o bbt.o obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o obj-$(CONFIG_MTD_NAND_ECC_MEDIATEK) += ecc-mtk.o obj-$(CONFIG_MTD_NAND_MTK_BMT) += mtk_bmt.o mtk_bmt_v2.o mtk_bmt_bbt.o mtk_bmt_nmbm.o @@ -225,11 +223,9 @@ index da1586a36574..db516a45f0c5 100644 obj-y += onenand/ obj-y += raw/ obj-y += spi/ -diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig -index f51f9466e518..1aaf93964429 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig -@@ -920,6 +920,15 @@ config SPI_QCOM_QSPI +@@ -870,6 +870,15 @@ config SPI_QCOM_QSPI help QSPI(Quad SPI) driver for Qualcomm QSPI controller. @@ -245,11 +241,9 @@ index f51f9466e518..1aaf93964429 100644 config SPI_QUP tristate "Qualcomm SPI controller with QUP interface" depends on ARCH_QCOM || COMPILE_TEST -diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile -index aea5e54de195..3309b7bb2445 100644 --- a/drivers/spi/Makefile +++ b/drivers/spi/Makefile -@@ -115,6 +115,7 @@ obj-$(CONFIG_SPI_PXA2XX) += spi-pxa2xx-platform.o +@@ -110,6 +110,7 @@ obj-$(CONFIG_SPI_PXA2XX) += spi-pxa2xx- obj-$(CONFIG_SPI_PXA2XX_PCI) += spi-pxa2xx-pci.o obj-$(CONFIG_SPI_QCOM_GENI) += spi-geni-qcom.o obj-$(CONFIG_SPI_QCOM_QSPI) += spi-qcom-qspi.o @@ -257,9 +251,6 @@ index aea5e54de195..3309b7bb2445 100644 obj-$(CONFIG_SPI_QUP) += spi-qup.o obj-$(CONFIG_SPI_ROCKCHIP) += spi-rockchip.o obj-$(CONFIG_SPI_ROCKCHIP_SFC) += spi-rockchip-sfc.o -diff --git a/drivers/spi/spi-qpic-snand.c b/drivers/spi/spi-qpic-snand.c -new file mode 100644 -index 000000000000..1ba562a9369e --- /dev/null +++ b/drivers/spi/spi-qpic-snand.c @@ -0,0 +1,1633 @@ @@ -1896,11 +1887,9 @@ index 000000000000..1ba562a9369e +MODULE_AUTHOR("Md Sadre Alam "); +MODULE_LICENSE("GPL"); + -diff --git a/include/linux/mtd/nand-qpic-common.h b/include/linux/mtd/nand-qpic-common.h -index e79c79775eb8..7dba89654d6c 100644 --- a/include/linux/mtd/nand-qpic-common.h +++ b/include/linux/mtd/nand-qpic-common.h -@@ -322,6 +322,10 @@ struct nandc_regs { +@@ -325,6 +325,10 @@ struct nandc_regs { __le32 read_location_last1; __le32 read_location_last2; __le32 read_location_last3; @@ -1911,7 +1900,7 @@ index e79c79775eb8..7dba89654d6c 100644 __le32 erased_cw_detect_cfg_clr; __le32 erased_cw_detect_cfg_set; -@@ -336,6 +340,7 @@ struct nandc_regs { +@@ -339,6 +343,7 @@ struct nandc_regs { * * @core_clk: controller clock * @aon_clk: another controller clock @@ -1919,7 +1908,7 @@ index e79c79775eb8..7dba89654d6c 100644 * * @regs: a contiguous chunk of memory for DMA register * writes. contains the register values to be -@@ -345,6 +350,7 @@ struct nandc_regs { +@@ -348,6 +353,7 @@ struct nandc_regs { * initialized via DT match data * * @controller: base controller structure @@ -1927,7 +1916,7 @@ index e79c79775eb8..7dba89654d6c 100644 * @host_list: list containing all the chips attached to the * controller * -@@ -389,6 +395,7 @@ struct qcom_nand_controller { +@@ -392,6 +398,7 @@ struct qcom_nand_controller { const struct qcom_nandc_props *props; struct nand_controller *controller; @@ -1935,5 +1924,3 @@ index e79c79775eb8..7dba89654d6c 100644 struct list_head host_list; union { --- -2.34.1 diff --git a/target/linux/qualcommbe/patches-6.6/101-arm64-dts-qcom-ipq9574-Add-SPI-nand-support.patch b/target/linux/qualcommbe/patches-6.6/101-arm64-dts-qcom-ipq9574-Add-SPI-nand-support.patch index aa211eea6e..0b8eac37cb 100644 --- a/target/linux/qualcommbe/patches-6.6/101-arm64-dts-qcom-ipq9574-Add-SPI-nand-support.patch +++ b/target/linux/qualcommbe/patches-6.6/101-arm64-dts-qcom-ipq9574-Add-SPI-nand-support.patch @@ -56,7 +56,7 @@ Change in [v1] --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -@@ -121,6 +121,49 @@ +@@ -59,4 +59,47 @@ bias-pull-down; }; }; @@ -104,11 +104,9 @@ Change in [v1] + nand-ecc-step-size = <512>; + }; }; - - &usb_0_dwc3 { --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -300,6 +300,33 @@ +@@ -355,6 +355,33 @@ reg = <0x01937000 0x21000>; }; diff --git a/target/linux/qualcommbe/patches-6.6/102-arm64-dts-qcom-ipq9574-Disable-eMMC-node.patch b/target/linux/qualcommbe/patches-6.6/102-arm64-dts-qcom-ipq9574-Disable-eMMC-node.patch index 57a16f7467..8e362b8e60 100644 --- a/target/linux/qualcommbe/patches-6.6/102-arm64-dts-qcom-ipq9574-Disable-eMMC-node.patch +++ b/target/linux/qualcommbe/patches-6.6/102-arm64-dts-qcom-ipq9574-Disable-eMMC-node.patch @@ -54,7 +54,7 @@ Change in [v1] --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -@@ -82,7 +82,7 @@ +@@ -24,7 +24,7 @@ mmc-hs400-enhanced-strobe; max-frequency = <384000000>; bus-width = <8>; @@ -62,4 +62,4 @@ Change in [v1] + status = "disabled"; }; - &sleep_clk { + &tlmm { diff --git a/target/linux/qualcommbe/patches-6.6/103-01-dt-bindings-net-Document-Qualcomm-QCA8084-PHY-packag.patch b/target/linux/qualcommbe/patches-6.6/103-01-dt-bindings-net-Document-Qualcomm-QCA8084-PHY-packag.patch index 260df88c80..6bd3f00b6c 100644 --- a/target/linux/qualcommbe/patches-6.6/103-01-dt-bindings-net-Document-Qualcomm-QCA8084-PHY-packag.patch +++ b/target/linux/qualcommbe/patches-6.6/103-01-dt-bindings-net-Document-Qualcomm-QCA8084-PHY-packag.patch @@ -24,9 +24,6 @@ Signed-off-by: Luo Jie create mode 100644 Documentation/devicetree/bindings/net/qcom,qca8084.yaml create mode 100644 include/dt-bindings/net/qcom,qca808x.h -diff --git a/Documentation/devicetree/bindings/net/qcom,qca8084.yaml b/Documentation/devicetree/bindings/net/qcom,qca8084.yaml -new file mode 100644 -index 000000000000..efa1fa4ebfdc --- /dev/null +++ b/Documentation/devicetree/bindings/net/qcom,qca8084.yaml @@ -0,0 +1,198 @@ @@ -228,9 +225,6 @@ index 000000000000..efa1fa4ebfdc + }; + }; + }; -diff --git a/include/dt-bindings/net/qcom,qca808x.h b/include/dt-bindings/net/qcom,qca808x.h -new file mode 100644 -index 000000000000..c3a2830445ea --- /dev/null +++ b/include/dt-bindings/net/qcom,qca808x.h @@ -0,0 +1,14 @@ @@ -248,6 +242,3 @@ index 000000000000..c3a2830445ea +#define QCA808X_PCS1_SGMII_MAC_PCS0_SGMII_PHY 2 + +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-02-net-phy-qca808x-Add-QCA8084-ethernet-phy-support.patch b/target/linux/qualcommbe/patches-6.6/103-02-net-phy-qca808x-Add-QCA8084-ethernet-phy-support.patch index 0e84685af0..f1a7c992b1 100644 --- a/target/linux/qualcommbe/patches-6.6/103-02-net-phy-qca808x-Add-QCA8084-ethernet-phy-support.patch +++ b/target/linux/qualcommbe/patches-6.6/103-02-net-phy-qca808x-Add-QCA8084-ethernet-phy-support.patch @@ -24,8 +24,6 @@ Signed-off-by: Luo Jie drivers/net/phy/qcom/qca808x.c | 62 ++++++++++++++++++++++++++++++++-- 1 file changed, 60 insertions(+), 2 deletions(-) -diff --git a/drivers/net/phy/qcom/qca808x.c b/drivers/net/phy/qcom/qca808x.c -index 5048304ccc9e..be46d16ca09f 100644 --- a/drivers/net/phy/qcom/qca808x.c +++ b/drivers/net/phy/qcom/qca808x.c @@ -86,9 +86,16 @@ @@ -46,7 +44,7 @@ index 5048304ccc9e..be46d16ca09f 100644 MODULE_LICENSE("GPL"); struct qca808x_priv { -@@ -153,7 +160,9 @@ static bool qca808x_is_prefer_master(struct phy_device *phydev) +@@ -153,7 +160,9 @@ static bool qca808x_is_prefer_master(str static bool qca808x_has_fast_retrain_or_slave_seed(struct phy_device *phydev) { @@ -57,7 +55,7 @@ index 5048304ccc9e..be46d16ca09f 100644 } static bool qca808x_is_1g_only(struct phy_device *phydev) -@@ -273,6 +282,23 @@ static int qca808x_read_status(struct phy_device *phydev) +@@ -273,6 +282,23 @@ static int qca808x_read_status(struct ph return ret; if (phydev->link) { @@ -81,7 +79,7 @@ index 5048304ccc9e..be46d16ca09f 100644 if (phydev->speed == SPEED_2500) phydev->interface = PHY_INTERFACE_MODE_2500BASEX; else -@@ -352,6 +378,18 @@ static int qca808x_cable_test_start(struct phy_device *phydev) +@@ -352,6 +378,18 @@ static int qca808x_cable_test_start(stru phy_write_mmd(phydev, MDIO_MMD_PCS, 0x807a, 0xc060); phy_write_mmd(phydev, MDIO_MMD_PCS, 0x807e, 0xb060); @@ -100,7 +98,7 @@ index 5048304ccc9e..be46d16ca09f 100644 return 0; } -@@ -651,12 +689,32 @@ static struct phy_driver qca808x_driver[] = { +@@ -651,12 +689,32 @@ static struct phy_driver qca808x_driver[ .led_hw_control_set = qca808x_led_hw_control_set, .led_hw_control_get = qca808x_led_hw_control_get, .led_polarity_set = qca808x_led_polarity_set, @@ -133,6 +131,3 @@ index 5048304ccc9e..be46d16ca09f 100644 { } }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-03-net-phy-qca808x-Add-config_init-function-for-QCA8084.patch b/target/linux/qualcommbe/patches-6.6/103-03-net-phy-qca808x-Add-config_init-function-for-QCA8084.patch index f55e08dbe5..9b450d8a2f 100644 --- a/target/linux/qualcommbe/patches-6.6/103-03-net-phy-qca808x-Add-config_init-function-for-QCA8084.patch +++ b/target/linux/qualcommbe/patches-6.6/103-03-net-phy-qca808x-Add-config_init-function-for-QCA8084.patch @@ -22,8 +22,6 @@ Signed-off-by: Luo Jie drivers/net/phy/qcom/qca808x.c | 38 ++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) -diff --git a/drivers/net/phy/qcom/qca808x.c b/drivers/net/phy/qcom/qca808x.c -index be46d16ca09f..c88fa59d4029 100644 --- a/drivers/net/phy/qcom/qca808x.c +++ b/drivers/net/phy/qcom/qca808x.c @@ -94,6 +94,15 @@ @@ -42,7 +40,7 @@ index be46d16ca09f..c88fa59d4029 100644 MODULE_DESCRIPTION("Qualcomm Atheros QCA808X PHY driver"); MODULE_AUTHOR("Matus Ujhelyi, Luo Jie"); MODULE_LICENSE("GPL"); -@@ -660,6 +669,34 @@ static int qca808x_led_polarity_set(struct phy_device *phydev, int index, +@@ -660,6 +669,34 @@ static int qca808x_led_polarity_set(stru active_low ? 0 : QCA808X_LED_ACTIVE_HIGH); } @@ -77,7 +75,7 @@ index be46d16ca09f..c88fa59d4029 100644 static struct phy_driver qca808x_driver[] = { { /* Qualcomm QCA8081 */ -@@ -708,6 +745,7 @@ static struct phy_driver qca808x_driver[] = { +@@ -708,6 +745,7 @@ static struct phy_driver qca808x_driver[ .soft_reset = qca808x_soft_reset, .cable_test_start = qca808x_cable_test_start, .cable_test_get_status = qca808x_cable_test_get_status, @@ -85,6 +83,3 @@ index be46d16ca09f..c88fa59d4029 100644 }, }; module_phy_driver(qca808x_driver); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-04-net-phy-qca808x-Add-link_change_notify-function-for-.patch b/target/linux/qualcommbe/patches-6.6/103-04-net-phy-qca808x-Add-link_change_notify-function-for-.patch index 2510ec327c..4a41a9d9a8 100644 --- a/target/linux/qualcommbe/patches-6.6/103-04-net-phy-qca808x-Add-link_change_notify-function-for-.patch +++ b/target/linux/qualcommbe/patches-6.6/103-04-net-phy-qca808x-Add-link_change_notify-function-for-.patch @@ -13,8 +13,6 @@ Signed-off-by: Luo Jie drivers/net/phy/qcom/qca808x.c | 52 ++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) -diff --git a/drivers/net/phy/qcom/qca808x.c b/drivers/net/phy/qcom/qca808x.c -index c88fa59d4029..029d5f9de6b8 100644 --- a/drivers/net/phy/qcom/qca808x.c +++ b/drivers/net/phy/qcom/qca808x.c @@ -103,6 +103,14 @@ @@ -32,7 +30,7 @@ index c88fa59d4029..029d5f9de6b8 100644 MODULE_DESCRIPTION("Qualcomm Atheros QCA808X PHY driver"); MODULE_AUTHOR("Matus Ujhelyi, Luo Jie"); MODULE_LICENSE("GPL"); -@@ -697,6 +705,49 @@ static int qca8084_config_init(struct phy_device *phydev) +@@ -697,6 +705,49 @@ static int qca8084_config_init(struct ph QCA8084_MSE_THRESHOLD_2P5G_VAL); } @@ -82,7 +80,7 @@ index c88fa59d4029..029d5f9de6b8 100644 static struct phy_driver qca808x_driver[] = { { /* Qualcomm QCA8081 */ -@@ -746,6 +797,7 @@ static struct phy_driver qca808x_driver[] = { +@@ -746,6 +797,7 @@ static struct phy_driver qca808x_driver[ .cable_test_start = qca808x_cable_test_start, .cable_test_get_status = qca808x_cable_test_get_status, .config_init = qca8084_config_init, @@ -90,6 +88,3 @@ index c88fa59d4029..029d5f9de6b8 100644 }, }; module_phy_driver(qca808x_driver); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-05-net-phy-qca808x-Add-register-access-support-routines.patch b/target/linux/qualcommbe/patches-6.6/103-05-net-phy-qca808x-Add-register-access-support-routines.patch index 7986a6c908..2612bc3940 100644 --- a/target/linux/qualcommbe/patches-6.6/103-05-net-phy-qca808x-Add-register-access-support-routines.patch +++ b/target/linux/qualcommbe/patches-6.6/103-05-net-phy-qca808x-Add-register-access-support-routines.patch @@ -19,8 +19,6 @@ Signed-off-by: Luo Jie drivers/net/phy/qcom/qca808x.c | 88 ++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) -diff --git a/drivers/net/phy/qcom/qca808x.c b/drivers/net/phy/qcom/qca808x.c -index 029d5f9de6b8..8873474146e8 100644 --- a/drivers/net/phy/qcom/qca808x.c +++ b/drivers/net/phy/qcom/qca808x.c @@ -111,6 +111,22 @@ @@ -125,6 +123,3 @@ index 029d5f9de6b8..8873474146e8 100644 static int qca808x_phy_fast_retrain_config(struct phy_device *phydev) { int ret; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-06-net-phy-qca808x-Add-QCA8084-probe-function.patch b/target/linux/qualcommbe/patches-6.6/103-06-net-phy-qca808x-Add-QCA8084-probe-function.patch index ad8bc0294a..b4d79e7318 100644 --- a/target/linux/qualcommbe/patches-6.6/103-06-net-phy-qca808x-Add-QCA8084-probe-function.patch +++ b/target/linux/qualcommbe/patches-6.6/103-06-net-phy-qca808x-Add-QCA8084-probe-function.patch @@ -17,8 +17,6 @@ Signed-off-by: Luo Jie drivers/net/phy/qcom/qca808x.c | 91 ++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) -diff --git a/drivers/net/phy/qcom/qca808x.c b/drivers/net/phy/qcom/qca808x.c -index 8873474146e8..85bb299fe0a3 100644 --- a/drivers/net/phy/qcom/qca808x.c +++ b/drivers/net/phy/qcom/qca808x.c @@ -2,6 +2,8 @@ @@ -52,7 +50,7 @@ index 8873474146e8..85bb299fe0a3 100644 MODULE_DESCRIPTION("Qualcomm Atheros QCA808X PHY driver"); MODULE_AUTHOR("Matus Ujhelyi, Luo Jie"); MODULE_LICENSE("GPL"); -@@ -836,6 +853,79 @@ static void qca8084_link_change_notify(struct phy_device *phydev) +@@ -836,6 +853,79 @@ static void qca8084_link_change_notify(s QCA8084_IPG_10_TO_11_EN : 0); } @@ -132,7 +130,7 @@ index 8873474146e8..85bb299fe0a3 100644 static struct phy_driver qca808x_driver[] = { { /* Qualcomm QCA8081 */ -@@ -886,6 +976,7 @@ static struct phy_driver qca808x_driver[] = { +@@ -886,6 +976,7 @@ static struct phy_driver qca808x_driver[ .cable_test_get_status = qca808x_cable_test_get_status, .config_init = qca8084_config_init, .link_change_notify = qca8084_link_change_notify, @@ -140,6 +138,3 @@ index 8873474146e8..85bb299fe0a3 100644 }, }; module_phy_driver(qca808x_driver); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-07-net-phy-qca808x-Add-package-clocks-and-resets-for-QC.patch b/target/linux/qualcommbe/patches-6.6/103-07-net-phy-qca808x-Add-package-clocks-and-resets-for-QC.patch index 78111f7982..75fc7cc3cf 100644 --- a/target/linux/qualcommbe/patches-6.6/103-07-net-phy-qca808x-Add-package-clocks-and-resets-for-QC.patch +++ b/target/linux/qualcommbe/patches-6.6/103-07-net-phy-qca808x-Add-package-clocks-and-resets-for-QC.patch @@ -17,8 +17,6 @@ Signed-off-by: Luo Jie drivers/net/phy/qcom/qca808x.c | 67 ++++++++++++++++++++++++++++++++-- 1 file changed, 64 insertions(+), 3 deletions(-) -diff --git a/drivers/net/phy/qcom/qca808x.c b/drivers/net/phy/qcom/qca808x.c -index 85bb299fe0a3..632cad1ad190 100644 --- a/drivers/net/phy/qcom/qca808x.c +++ b/drivers/net/phy/qcom/qca808x.c @@ -4,6 +4,7 @@ @@ -29,7 +27,7 @@ index 85bb299fe0a3..632cad1ad190 100644 #include "qcom.h" -@@ -148,10 +149,35 @@ MODULE_DESCRIPTION("Qualcomm Atheros QCA808X PHY driver"); +@@ -148,10 +149,35 @@ MODULE_DESCRIPTION("Qualcomm Atheros QCA MODULE_AUTHOR("Matus Ujhelyi, Luo Jie"); MODULE_LICENSE("GPL"); @@ -65,7 +63,7 @@ index 85bb299fe0a3..632cad1ad190 100644 static int __qca8084_set_page(struct mii_bus *bus, u16 sw_addr, u16 page) { return __mdiobus_write(bus, QCA8084_HIGH_ADDR_PREFIX | (sw_addr >> 5), -@@ -853,11 +879,24 @@ static void qca8084_link_change_notify(struct phy_device *phydev) +@@ -853,11 +879,24 @@ static void qca8084_link_change_notify(s QCA8084_IPG_10_TO_11_EN : 0); } @@ -91,7 +89,7 @@ index 85bb299fe0a3..632cad1ad190 100644 /* Program the MDIO address of PHY and PCS optionally, the MDIO * address 0-6 is used for PHY and PCS MDIO devices by default. -@@ -889,17 +928,39 @@ static int qca8084_phy_package_probe_once(struct phy_device *phydev) +@@ -889,17 +928,39 @@ static int qca8084_phy_package_probe_onc set |= FIELD_PREP(QCA8084_PCS_ADDR1_MASK, addr[5]); set |= FIELD_PREP(QCA8084_PCS_ADDR2_MASK, addr[6]); @@ -133,6 +131,3 @@ index 85bb299fe0a3..632cad1ad190 100644 if (ret) return ret; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-08-net-phy-qca808x-Add-QCA8084-package-init-function.patch b/target/linux/qualcommbe/patches-6.6/103-08-net-phy-qca808x-Add-QCA8084-package-init-function.patch index fd951cebdd..aa71046c14 100644 --- a/target/linux/qualcommbe/patches-6.6/103-08-net-phy-qca808x-Add-QCA8084-package-init-function.patch +++ b/target/linux/qualcommbe/patches-6.6/103-08-net-phy-qca808x-Add-QCA8084-package-init-function.patch @@ -14,8 +14,6 @@ Signed-off-by: Luo Jie drivers/net/phy/qcom/qca808x.c | 115 +++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) -diff --git a/drivers/net/phy/qcom/qca808x.c b/drivers/net/phy/qcom/qca808x.c -index 632cad1ad190..459f8e8a9749 100644 --- a/drivers/net/phy/qcom/qca808x.c +++ b/drivers/net/phy/qcom/qca808x.c @@ -1,5 +1,6 @@ @@ -47,7 +45,7 @@ index 632cad1ad190..459f8e8a9749 100644 struct clk *clk[PACKAGE_CLK_MAX]; }; -@@ -808,10 +817,107 @@ static int qca808x_led_polarity_set(struct phy_device *phydev, int index, +@@ -808,10 +817,107 @@ static int qca808x_led_polarity_set(stru active_low ? 0 : QCA808X_LED_ACTIVE_HIGH); } @@ -155,7 +153,7 @@ index 632cad1ad190..459f8e8a9749 100644 if (phydev->interface == PHY_INTERFACE_MODE_10G_QXGMII) __set_bit(PHY_INTERFACE_MODE_10G_QXGMII, phydev->possible_interfaces); -@@ -948,6 +1054,15 @@ static int qca8084_phy_package_probe_once(struct phy_device *phydev) +@@ -948,6 +1054,15 @@ static int qca8084_phy_package_probe_onc return dev_err_probe(&phydev->mdio.dev, PTR_ERR(rstc), "package reset not ready\n"); @@ -171,6 +169,3 @@ index 632cad1ad190..459f8e8a9749 100644 /* Deassert PHY package. */ return reset_control_deassert(rstc); } --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-11-net-pcs-Add-driver-for-Qualcomm-IPQ-UNIPHY-PCS.patch b/target/linux/qualcommbe/patches-6.6/103-11-net-pcs-Add-driver-for-Qualcomm-IPQ-UNIPHY-PCS.patch index e463e69563..785b1dce56 100644 --- a/target/linux/qualcommbe/patches-6.6/103-11-net-pcs-Add-driver-for-Qualcomm-IPQ-UNIPHY-PCS.patch +++ b/target/linux/qualcommbe/patches-6.6/103-11-net-pcs-Add-driver-for-Qualcomm-IPQ-UNIPHY-PCS.patch @@ -42,11 +42,9 @@ Signed-off-by: Lei Wei # QUALCOMM NAND CONTROLLER DRIVER # M: Manivannan Sadhasivam # L: linux-mtd@lists.infradead.org -diff --git a/drivers/net/pcs/Kconfig b/drivers/net/pcs/Kconfig -index f6aa437473de..796004de6a31 100644 --- a/drivers/net/pcs/Kconfig +++ b/drivers/net/pcs/Kconfig -@@ -33,4 +33,14 @@ config PCS_RZN1_MIIC +@@ -44,4 +44,14 @@ config PCS_RZN1_MIIC on RZ/N1 SoCs. This PCS converts MII to RMII/RGMII or can be set in pass-through mode for MII. @@ -61,18 +59,13 @@ index f6aa437473de..796004de6a31 100644 + These modes help to support various combination of ethernet switch/PHY on + IPQ SoC based boards. endmenu -diff --git a/drivers/net/pcs/Makefile b/drivers/net/pcs/Makefile -index 4f7920618b90..f95cdff03c7f 100644 --- a/drivers/net/pcs/Makefile +++ b/drivers/net/pcs/Makefile -@@ -8,3 +8,4 @@ obj-$(CONFIG_PCS_XPCS) += pcs_xpcs.o +@@ -8,3 +8,4 @@ obj-$(CONFIG_PCS_LYNX) += pcs-lynx.o obj-$(CONFIG_PCS_MTK_LYNXI) += pcs-mtk-lynxi.o obj-$(CONFIG_PCS_RZN1_MIIC) += pcs-rzn1-miic.o obj-$(CONFIG_PCS_MTK_USXGMII) += pcs-mtk-usxgmii.o +obj-$(CONFIG_PCS_QCOM_IPQ_UNIPHY) += pcs-qcom-ipq-uniphy.o -diff --git a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c -new file mode 100644 -index 000000000000..837de629d0b2 --- /dev/null +++ b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c @@ -0,0 +1,943 @@ @@ -1019,9 +1012,6 @@ index 000000000000..837de629d0b2 +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Qualcomm IPQ UNIPHY PCS driver"); +MODULE_AUTHOR("Lei Wei "); -diff --git a/include/linux/pcs/pcs-qcom-ipq-uniphy.h b/include/linux/pcs/pcs-qcom-ipq-uniphy.h -new file mode 100644 -index 000000000000..4a617bcb32f4 --- /dev/null +++ b/include/linux/pcs/pcs-qcom-ipq-uniphy.h @@ -0,0 +1,13 @@ @@ -1038,6 +1028,3 @@ index 000000000000..4a617bcb32f4 +void ipq_unipcs_destroy(struct phylink_pcs *pcs); + +#endif /* __LINUX_PCS_QCOM_IPQ_UNIPHY_H */ --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-12-net-pcs-Add-10GBASER-interface-mode-support-to-IPQ-U.patch b/target/linux/qualcommbe/patches-6.6/103-12-net-pcs-Add-10GBASER-interface-mode-support-to-IPQ-U.patch index ea1567590b..77029b6faa 100644 --- a/target/linux/qualcommbe/patches-6.6/103-12-net-pcs-Add-10GBASER-interface-mode-support-to-IPQ-U.patch +++ b/target/linux/qualcommbe/patches-6.6/103-12-net-pcs-Add-10GBASER-interface-mode-support-to-IPQ-U.patch @@ -12,8 +12,6 @@ Signed-off-by: Lei Wei drivers/net/pcs/pcs-qcom-ipq-uniphy.c | 48 +++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) -diff --git a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c -index 837de629d0b2..68a1715531ef 100644 --- a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c +++ b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c @@ -57,6 +57,9 @@ @@ -26,7 +24,7 @@ index 837de629d0b2..68a1715531ef 100644 #define XPCS_DIG_CTRL 0x38000 #define XPCS_USXG_ADPT_RESET BIT(10) #define XPCS_USXG_EN BIT(9) -@@ -320,6 +323,23 @@ static void ipq_unipcs_get_state_usxgmii(struct ipq_uniphy_pcs *qunipcs, +@@ -320,6 +323,23 @@ static void ipq_unipcs_get_state_usxgmii state->duplex = DUPLEX_HALF; } @@ -50,7 +48,7 @@ index 837de629d0b2..68a1715531ef 100644 static int ipq_unipcs_config_mode(struct ipq_uniphy_pcs *qunipcs, phy_interface_t interface) { -@@ -354,6 +374,7 @@ static int ipq_unipcs_config_mode(struct ipq_uniphy_pcs *qunipcs, +@@ -354,6 +374,7 @@ static int ipq_unipcs_config_mode(struct PCS_MODE_PSGMII); break; case PHY_INTERFACE_MODE_USXGMII: @@ -58,7 +56,7 @@ index 837de629d0b2..68a1715531ef 100644 rate = 312500000; ipq_unipcs_reg_modify32(qunipcs, PCS_MODE_CTRL, PCS_MODE_SEL_MASK, -@@ -461,6 +482,25 @@ static int ipq_unipcs_config_usxgmii(struct ipq_uniphy_pcs *qunipcs, +@@ -461,6 +482,25 @@ static int ipq_unipcs_config_usxgmii(str return 0; } @@ -84,7 +82,7 @@ index 837de629d0b2..68a1715531ef 100644 static unsigned long ipq_unipcs_clock_rate_get_gmii(int speed) { unsigned long rate = 0; -@@ -527,6 +567,7 @@ ipq_unipcs_link_up_clock_rate_set(struct ipq_uniphy_pcs_ch *qunipcs_ch, +@@ -527,6 +567,7 @@ ipq_unipcs_link_up_clock_rate_set(struct rate = ipq_unipcs_clock_rate_get_gmii(speed); break; case PHY_INTERFACE_MODE_USXGMII: @@ -92,7 +90,7 @@ index 837de629d0b2..68a1715531ef 100644 rate = ipq_unipcs_clock_rate_get_xgmii(speed); break; default: -@@ -644,6 +685,9 @@ static void ipq_unipcs_get_state(struct phylink_pcs *pcs, +@@ -644,6 +685,9 @@ static void ipq_unipcs_get_state(struct case PHY_INTERFACE_MODE_USXGMII: ipq_unipcs_get_state_usxgmii(qunipcs, state); break; @@ -102,7 +100,7 @@ index 837de629d0b2..68a1715531ef 100644 default: break; } -@@ -675,6 +719,8 @@ static int ipq_unipcs_config(struct phylink_pcs *pcs, +@@ -675,6 +719,8 @@ static int ipq_unipcs_config(struct phyl case PHY_INTERFACE_MODE_USXGMII: return ipq_unipcs_config_usxgmii(qunipcs, neg_mode, interface); @@ -111,7 +109,7 @@ index 837de629d0b2..68a1715531ef 100644 default: dev_err(qunipcs->dev, "interface %s not supported\n", phy_modes(interface)); -@@ -705,6 +751,8 @@ static void ipq_unipcs_link_up(struct phylink_pcs *pcs, +@@ -705,6 +751,8 @@ static void ipq_unipcs_link_up(struct ph case PHY_INTERFACE_MODE_USXGMII: ipq_unipcs_link_up_config_usxgmii(qunipcs, speed); break; @@ -120,6 +118,3 @@ index 837de629d0b2..68a1715531ef 100644 default: dev_err(qunipcs->dev, "interface %s not supported\n", phy_modes(interface)); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-13-net-pcs-Add-2500BASEX-interface-mode-support-to-IPQ-.patch b/target/linux/qualcommbe/patches-6.6/103-13-net-pcs-Add-2500BASEX-interface-mode-support-to-IPQ-.patch index ed58d927b9..c086216038 100644 --- a/target/linux/qualcommbe/patches-6.6/103-13-net-pcs-Add-2500BASEX-interface-mode-support-to-IPQ-.patch +++ b/target/linux/qualcommbe/patches-6.6/103-13-net-pcs-Add-2500BASEX-interface-mode-support-to-IPQ-.patch @@ -15,8 +15,6 @@ Signed-off-by: Lei Wei drivers/net/pcs/pcs-qcom-ipq-uniphy.c | 95 +++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) -diff --git a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c -index 68a1715531ef..ed9c55a6c0fa 100644 --- a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c +++ b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c @@ -25,6 +25,7 @@ @@ -27,7 +25,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 #define PCS_MODE_XPCS FIELD_PREP(PCS_MODE_SEL_MASK, 0x10) #define PCS_MODE_AN_MODE BIT(0) -@@ -282,6 +283,24 @@ static void ipq_unipcs_get_state_sgmii(struct ipq_uniphy_pcs *qunipcs, +@@ -282,6 +283,24 @@ static void ipq_unipcs_get_state_sgmii(s state->pause |= MLO_PAUSE_RX; } @@ -52,7 +50,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 static void ipq_unipcs_get_state_usxgmii(struct ipq_uniphy_pcs *qunipcs, struct phylink_link_state *state) { -@@ -373,6 +392,12 @@ static int ipq_unipcs_config_mode(struct ipq_uniphy_pcs *qunipcs, +@@ -373,6 +392,12 @@ static int ipq_unipcs_config_mode(struct PCS_MODE_SEL_MASK | PCS_MODE_AN_MODE, PCS_MODE_PSGMII); break; @@ -65,7 +63,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 case PHY_INTERFACE_MODE_USXGMII: case PHY_INTERFACE_MODE_10GBASER: rate = 312500000; -@@ -450,6 +475,22 @@ static int ipq_unipcs_config_sgmii(struct ipq_uniphy_pcs *qunipcs, +@@ -450,6 +475,22 @@ err: return ret; } @@ -88,7 +86,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 static int ipq_unipcs_config_usxgmii(struct ipq_uniphy_pcs *qunipcs, unsigned int neg_mode, phy_interface_t interface) -@@ -522,6 +563,21 @@ static unsigned long ipq_unipcs_clock_rate_get_gmii(int speed) +@@ -522,6 +563,21 @@ static unsigned long ipq_unipcs_clock_ra return rate; } @@ -110,7 +108,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 static unsigned long ipq_unipcs_clock_rate_get_xgmii(int speed) { unsigned long rate = 0; -@@ -566,6 +622,9 @@ ipq_unipcs_link_up_clock_rate_set(struct ipq_uniphy_pcs_ch *qunipcs_ch, +@@ -566,6 +622,9 @@ ipq_unipcs_link_up_clock_rate_set(struct case PHY_INTERFACE_MODE_PSGMII: rate = ipq_unipcs_clock_rate_get_gmii(speed); break; @@ -120,7 +118,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 case PHY_INTERFACE_MODE_USXGMII: case PHY_INTERFACE_MODE_10GBASER: rate = ipq_unipcs_clock_rate_get_xgmii(speed); -@@ -627,6 +686,21 @@ static void ipq_unipcs_link_up_config_sgmii(struct ipq_uniphy_pcs *qunipcs, +@@ -627,6 +686,21 @@ pcs_adapter_reset: PCS_CHANNEL_ADPT_RESET); } @@ -142,7 +140,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 static void ipq_unipcs_link_up_config_usxgmii(struct ipq_uniphy_pcs *qunipcs, int speed) { -@@ -669,6 +743,17 @@ static void ipq_unipcs_link_up_config_usxgmii(struct ipq_uniphy_pcs *qunipcs, +@@ -669,6 +743,17 @@ static void ipq_unipcs_link_up_config_us XPCS_USXG_ADPT_RESET); } @@ -160,7 +158,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 static void ipq_unipcs_get_state(struct phylink_pcs *pcs, struct phylink_link_state *state) { -@@ -682,6 +767,9 @@ static void ipq_unipcs_get_state(struct phylink_pcs *pcs, +@@ -682,6 +767,9 @@ static void ipq_unipcs_get_state(struct case PHY_INTERFACE_MODE_PSGMII: ipq_unipcs_get_state_sgmii(qunipcs, channel, state); break; @@ -170,7 +168,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 case PHY_INTERFACE_MODE_USXGMII: ipq_unipcs_get_state_usxgmii(qunipcs, state); break; -@@ -716,6 +804,8 @@ static int ipq_unipcs_config(struct phylink_pcs *pcs, +@@ -716,6 +804,8 @@ static int ipq_unipcs_config(struct phyl case PHY_INTERFACE_MODE_PSGMII: return ipq_unipcs_config_sgmii(qunipcs, channel, neg_mode, interface); @@ -179,7 +177,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 case PHY_INTERFACE_MODE_USXGMII: return ipq_unipcs_config_usxgmii(qunipcs, neg_mode, interface); -@@ -748,6 +838,10 @@ static void ipq_unipcs_link_up(struct phylink_pcs *pcs, +@@ -748,6 +838,10 @@ static void ipq_unipcs_link_up(struct ph ipq_unipcs_link_up_config_sgmii(qunipcs, channel, neg_mode, speed); break; @@ -190,7 +188,7 @@ index 68a1715531ef..ed9c55a6c0fa 100644 case PHY_INTERFACE_MODE_USXGMII: ipq_unipcs_link_up_config_usxgmii(qunipcs, speed); break; -@@ -761,6 +855,7 @@ static void ipq_unipcs_link_up(struct phylink_pcs *pcs, +@@ -761,6 +855,7 @@ static void ipq_unipcs_link_up(struct ph } static const struct phylink_pcs_ops ipq_unipcs_phylink_ops = { @@ -198,6 +196,3 @@ index 68a1715531ef..ed9c55a6c0fa 100644 .pcs_get_state = ipq_unipcs_get_state, .pcs_config = ipq_unipcs_config, .pcs_link_up = ipq_unipcs_link_up, --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-14-net-pcs-Add-1000BASEX-interface-mode-support-to-IPQ-.patch b/target/linux/qualcommbe/patches-6.6/103-14-net-pcs-Add-1000BASEX-interface-mode-support-to-IPQ-.patch index 4c0c9c31f8..12dfdfe6e5 100644 --- a/target/linux/qualcommbe/patches-6.6/103-14-net-pcs-Add-1000BASEX-interface-mode-support-to-IPQ-.patch +++ b/target/linux/qualcommbe/patches-6.6/103-14-net-pcs-Add-1000BASEX-interface-mode-support-to-IPQ-.patch @@ -12,8 +12,6 @@ Signed-off-by: Lei Wei drivers/net/pcs/pcs-qcom-ipq-uniphy.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) -diff --git a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c -index ed9c55a6c0fa..820d197744e8 100644 --- a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c +++ b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c @@ -27,6 +27,9 @@ @@ -26,7 +24,7 @@ index ed9c55a6c0fa..820d197744e8 100644 #define PCS_MODE_AN_MODE BIT(0) #define PCS_CHANNEL_CTRL(x) (0x480 + 0x18 * (x)) -@@ -392,6 +395,13 @@ static int ipq_unipcs_config_mode(struct ipq_uniphy_pcs *qunipcs, +@@ -392,6 +395,13 @@ static int ipq_unipcs_config_mode(struct PCS_MODE_SEL_MASK | PCS_MODE_AN_MODE, PCS_MODE_PSGMII); break; @@ -40,7 +38,7 @@ index ed9c55a6c0fa..820d197744e8 100644 case PHY_INTERFACE_MODE_2500BASEX: rate = 312500000; ipq_unipcs_reg_modify32(qunipcs, PCS_MODE_CTRL, -@@ -620,6 +630,7 @@ ipq_unipcs_link_up_clock_rate_set(struct ipq_uniphy_pcs_ch *qunipcs_ch, +@@ -620,6 +630,7 @@ ipq_unipcs_link_up_clock_rate_set(struct case PHY_INTERFACE_MODE_SGMII: case PHY_INTERFACE_MODE_QSGMII: case PHY_INTERFACE_MODE_PSGMII: @@ -48,7 +46,7 @@ index ed9c55a6c0fa..820d197744e8 100644 rate = ipq_unipcs_clock_rate_get_gmii(speed); break; case PHY_INTERFACE_MODE_2500BASEX: -@@ -765,6 +776,10 @@ static void ipq_unipcs_get_state(struct phylink_pcs *pcs, +@@ -765,6 +776,10 @@ static void ipq_unipcs_get_state(struct case PHY_INTERFACE_MODE_SGMII: case PHY_INTERFACE_MODE_QSGMII: case PHY_INTERFACE_MODE_PSGMII: @@ -59,7 +57,7 @@ index ed9c55a6c0fa..820d197744e8 100644 ipq_unipcs_get_state_sgmii(qunipcs, channel, state); break; case PHY_INTERFACE_MODE_2500BASEX: -@@ -802,6 +817,7 @@ static int ipq_unipcs_config(struct phylink_pcs *pcs, +@@ -802,6 +817,7 @@ static int ipq_unipcs_config(struct phyl case PHY_INTERFACE_MODE_SGMII: case PHY_INTERFACE_MODE_QSGMII: case PHY_INTERFACE_MODE_PSGMII: @@ -67,7 +65,7 @@ index ed9c55a6c0fa..820d197744e8 100644 return ipq_unipcs_config_sgmii(qunipcs, channel, neg_mode, interface); case PHY_INTERFACE_MODE_2500BASEX: -@@ -818,6 +834,11 @@ static int ipq_unipcs_config(struct phylink_pcs *pcs, +@@ -818,6 +834,11 @@ static int ipq_unipcs_config(struct phyl }; } @@ -79,7 +77,7 @@ index ed9c55a6c0fa..820d197744e8 100644 static void ipq_unipcs_link_up(struct phylink_pcs *pcs, unsigned int neg_mode, phy_interface_t interface, -@@ -835,6 +856,7 @@ static void ipq_unipcs_link_up(struct phylink_pcs *pcs, +@@ -835,6 +856,7 @@ static void ipq_unipcs_link_up(struct ph case PHY_INTERFACE_MODE_SGMII: case PHY_INTERFACE_MODE_QSGMII: case PHY_INTERFACE_MODE_PSGMII: @@ -87,7 +85,7 @@ index ed9c55a6c0fa..820d197744e8 100644 ipq_unipcs_link_up_config_sgmii(qunipcs, channel, neg_mode, speed); break; -@@ -858,6 +880,7 @@ static const struct phylink_pcs_ops ipq_unipcs_phylink_ops = { +@@ -858,6 +880,7 @@ static const struct phylink_pcs_ops ipq_ .pcs_validate = ipq_unipcs_validate, .pcs_get_state = ipq_unipcs_get_state, .pcs_config = ipq_unipcs_config, @@ -95,6 +93,3 @@ index ed9c55a6c0fa..820d197744e8 100644 .pcs_link_up = ipq_unipcs_link_up, }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-15-net-pcs-Add-10G_QXGMII-interface-mode-support-to-IPQ.patch b/target/linux/qualcommbe/patches-6.6/103-15-net-pcs-Add-10G_QXGMII-interface-mode-support-to-IPQ.patch index 7da55c07d5..f0136e5745 100644 --- a/target/linux/qualcommbe/patches-6.6/103-15-net-pcs-Add-10G_QXGMII-interface-mode-support-to-IPQ.patch +++ b/target/linux/qualcommbe/patches-6.6/103-15-net-pcs-Add-10G_QXGMII-interface-mode-support-to-IPQ.patch @@ -13,8 +13,6 @@ Signed-off-by: Lei Wei drivers/net/pcs/pcs-qcom-ipq-uniphy.c | 174 +++++++++++++++++++++----- 1 file changed, 142 insertions(+), 32 deletions(-) -diff --git a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c -index 820d197744e8..a98180c91632 100644 --- a/drivers/net/pcs/pcs-qcom-ipq-uniphy.c +++ b/drivers/net/pcs/pcs-qcom-ipq-uniphy.c @@ -50,6 +50,9 @@ @@ -81,7 +79,7 @@ index 820d197744e8..a98180c91632 100644 struct clk *clk[PCS_CLK_MAX]; struct reset_control *reset[PCS_RESET_MAX]; struct ipq_unipcs_raw_clk raw_clk[PCS_RAW_CLK_MAX]; -@@ -215,39 +237,55 @@ static const struct clk_ops ipq_unipcs_raw_clk_ops = { +@@ -215,39 +237,55 @@ static const struct clk_ops ipq_unipcs_r static u32 ipq_unipcs_reg_read32(struct ipq_uniphy_pcs *qunipcs, u32 reg) { @@ -151,7 +149,7 @@ index 820d197744e8..a98180c91632 100644 static void ipq_unipcs_get_state_sgmii(struct ipq_uniphy_pcs *qunipcs, int channel, struct phylink_link_state *state) -@@ -305,11 +343,15 @@ static void ipq_unipcs_get_state_2500basex(struct ipq_uniphy_pcs *qunipcs, +@@ -305,11 +343,15 @@ static void ipq_unipcs_get_state_2500bas } static void ipq_unipcs_get_state_usxgmii(struct ipq_uniphy_pcs *qunipcs, @@ -169,7 +167,7 @@ index 820d197744e8..a98180c91632 100644 state->link = !!(val & XPCS_USXG_AN_LINK_STS); -@@ -415,6 +457,15 @@ static int ipq_unipcs_config_mode(struct ipq_uniphy_pcs *qunipcs, +@@ -415,6 +457,15 @@ static int ipq_unipcs_config_mode(struct PCS_MODE_SEL_MASK, PCS_MODE_XPCS); break; @@ -185,7 +183,7 @@ index 820d197744e8..a98180c91632 100644 default: dev_err(qunipcs->dev, "interface %s not supported\n", phy_modes(interface)); -@@ -502,35 +553,82 @@ static int ipq_unipcs_config_2500basex(struct ipq_uniphy_pcs *qunipcs, +@@ -502,35 +553,82 @@ static int ipq_unipcs_config_2500basex(s } static int ipq_unipcs_config_usxgmii(struct ipq_uniphy_pcs *qunipcs, @@ -220,6 +218,9 @@ index 820d197744e8..a98180c91632 100644 - ipq_unipcs_reg_modify32(qunipcs, XPCS_MII_AN_CTRL, - XPCS_MII_AN_8BIT, - XPCS_MII_AN_8BIT); +- +- ipq_unipcs_reg_modify32(qunipcs, XPCS_MII_CTRL, +- XPCS_MII_AN_EN, XPCS_MII_AN_EN); + if (interface == PHY_INTERFACE_MODE_10G_QXGMII) { + ipq_unipcs_reg_modify32(qunipcs, XPCS_KR_CTRL, + XPCS_USXG_MODE_MASK, @@ -229,9 +230,7 @@ index 820d197744e8..a98180c91632 100644 + ipq_unipcs_reg_modify32(qunipcs, XPCS_DIG_STS, + XPCS_DIG_STS_AM_COUNT, + 0x6018); - -- ipq_unipcs_reg_modify32(qunipcs, XPCS_MII_CTRL, -- XPCS_MII_AN_EN, XPCS_MII_AN_EN); ++ + ipq_unipcs_reg_modify32(qunipcs, XPCS_DIG_CTRL, + XPCS_SOFT_RESET, + XPCS_SOFT_RESET); @@ -276,7 +275,7 @@ index 820d197744e8..a98180c91632 100644 } static int ipq_unipcs_config_10gbaser(struct ipq_uniphy_pcs *qunipcs, -@@ -638,6 +736,7 @@ ipq_unipcs_link_up_clock_rate_set(struct ipq_uniphy_pcs_ch *qunipcs_ch, +@@ -638,6 +736,7 @@ ipq_unipcs_link_up_clock_rate_set(struct break; case PHY_INTERFACE_MODE_USXGMII: case PHY_INTERFACE_MODE_10GBASER: @@ -284,7 +283,7 @@ index 820d197744e8..a98180c91632 100644 rate = ipq_unipcs_clock_rate_get_xgmii(speed); break; default: -@@ -713,9 +812,10 @@ static void ipq_unipcs_link_up_config_2500basex(struct ipq_uniphy_pcs *qunipcs, +@@ -713,9 +812,10 @@ static void ipq_unipcs_link_up_config_25 } static void ipq_unipcs_link_up_config_usxgmii(struct ipq_uniphy_pcs *qunipcs, @@ -296,7 +295,7 @@ index 820d197744e8..a98180c91632 100644 switch (speed) { case SPEED_10000: -@@ -744,14 +844,20 @@ static void ipq_unipcs_link_up_config_usxgmii(struct ipq_uniphy_pcs *qunipcs, +@@ -744,14 +844,20 @@ static void ipq_unipcs_link_up_config_us val |= XPCS_DUPLEX_FULL; /* Config XPCS speed */ @@ -321,7 +320,7 @@ index 820d197744e8..a98180c91632 100644 } static int ipq_unipcs_validate(struct phylink_pcs *pcs, -@@ -786,7 +892,8 @@ static void ipq_unipcs_get_state(struct phylink_pcs *pcs, +@@ -786,7 +892,8 @@ static void ipq_unipcs_get_state(struct ipq_unipcs_get_state_2500basex(qunipcs, channel, state); break; case PHY_INTERFACE_MODE_USXGMII: @@ -331,7 +330,7 @@ index 820d197744e8..a98180c91632 100644 break; case PHY_INTERFACE_MODE_10GBASER: ipq_unipcs_get_state_10gbaser(qunipcs, state); -@@ -823,7 +930,8 @@ static int ipq_unipcs_config(struct phylink_pcs *pcs, +@@ -823,7 +930,8 @@ static int ipq_unipcs_config(struct phyl case PHY_INTERFACE_MODE_2500BASEX: return ipq_unipcs_config_2500basex(qunipcs, interface); case PHY_INTERFACE_MODE_USXGMII: @@ -341,7 +340,7 @@ index 820d197744e8..a98180c91632 100644 neg_mode, interface); case PHY_INTERFACE_MODE_10GBASER: return ipq_unipcs_config_10gbaser(qunipcs, interface); -@@ -865,7 +973,8 @@ static void ipq_unipcs_link_up(struct phylink_pcs *pcs, +@@ -865,7 +973,8 @@ static void ipq_unipcs_link_up(struct ph channel, speed); break; case PHY_INTERFACE_MODE_USXGMII: @@ -351,7 +350,7 @@ index 820d197744e8..a98180c91632 100644 break; case PHY_INTERFACE_MODE_10GBASER: break; -@@ -1082,6 +1191,7 @@ static int ipq_uniphy_probe(struct platform_device *pdev) +@@ -1082,6 +1191,7 @@ static int ipq_uniphy_probe(struct platf return ret; mutex_init(&priv->shared_lock); @@ -359,6 +358,3 @@ index 820d197744e8..a98180c91632 100644 platform_set_drvdata(pdev, priv); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-18-net-ethernet-qualcomm-Add-PPE-driver-for-IPQ9574-SoC.patch b/target/linux/qualcommbe/patches-6.6/103-18-net-ethernet-qualcomm-Add-PPE-driver-for-IPQ9574-SoC.patch index 8872005376..e660d33063 100644 --- a/target/linux/qualcommbe/patches-6.6/103-18-net-ethernet-qualcomm-Add-PPE-driver-for-IPQ9574-SoC.patch +++ b/target/linux/qualcommbe/patches-6.6/103-18-net-ethernet-qualcomm-Add-PPE-driver-for-IPQ9574-SoC.patch @@ -36,8 +36,6 @@ Signed-off-by: Luo Jie create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe.h -diff --git a/drivers/net/ethernet/qualcomm/Kconfig b/drivers/net/ethernet/qualcomm/Kconfig -index 9210ff360fdc..8cc24da48777 100644 --- a/drivers/net/ethernet/qualcomm/Kconfig +++ b/drivers/net/ethernet/qualcomm/Kconfig @@ -61,6 +61,21 @@ config QCOM_EMAC @@ -62,8 +60,6 @@ index 9210ff360fdc..8cc24da48777 100644 source "drivers/net/ethernet/qualcomm/rmnet/Kconfig" endif # NET_VENDOR_QUALCOMM -diff --git a/drivers/net/ethernet/qualcomm/Makefile b/drivers/net/ethernet/qualcomm/Makefile -index 9250976dd884..166a59aea363 100644 --- a/drivers/net/ethernet/qualcomm/Makefile +++ b/drivers/net/ethernet/qualcomm/Makefile @@ -11,4 +11,5 @@ qcauart-objs := qca_uart.o @@ -72,9 +68,6 @@ index 9250976dd884..166a59aea363 100644 +obj-$(CONFIG_QCOM_PPE) += ppe/ obj-$(CONFIG_RMNET) += rmnet/ -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -new file mode 100644 -index 000000000000..63d50d3b4f2e --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -0,0 +1,7 @@ @@ -85,9 +78,6 @@ index 000000000000..63d50d3b4f2e + +obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o +qcom-ppe-objs := ppe.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.c b/drivers/net/ethernet/qualcomm/ppe/ppe.c -new file mode 100644 -index 000000000000..14998ac771c7 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.c @@ -0,0 +1,225 @@ @@ -316,9 +306,6 @@ index 000000000000..14998ac771c7 + +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Qualcomm IPQ PPE driver"); -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.h b/drivers/net/ethernet/qualcomm/ppe/ppe.h -new file mode 100644 -index 000000000000..733d77f4063d --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.h @@ -0,0 +1,36 @@ @@ -358,6 +345,3 @@ index 000000000000..733d77f4063d + struct icc_bulk_data icc_paths[] __counted_by(num_icc_paths); +}; +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-19-net-ethernet-qualcomm-Add-PPE-buffer-manager-configu.patch b/target/linux/qualcommbe/patches-6.6/103-19-net-ethernet-qualcomm-Add-PPE-buffer-manager-configu.patch index cc470b46b5..e72069c1fa 100644 --- a/target/linux/qualcommbe/patches-6.6/103-19-net-ethernet-qualcomm-Add-PPE-buffer-manager-configu.patch +++ b/target/linux/qualcommbe/patches-6.6/103-19-net-ethernet-qualcomm-Add-PPE-buffer-manager-configu.patch @@ -23,8 +23,6 @@ Signed-off-by: Luo Jie create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_config.h create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index 63d50d3b4f2e..410a7bb54cfe 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -4,4 +4,4 @@ @@ -33,8 +31,6 @@ index 63d50d3b4f2e..410a7bb54cfe 100644 obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o -qcom-ppe-objs := ppe.o +qcom-ppe-objs := ppe.o ppe_config.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.c b/drivers/net/ethernet/qualcomm/ppe/ppe.c -index 14998ac771c7..443706291ce0 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.c @@ -15,6 +15,7 @@ @@ -45,7 +41,7 @@ index 14998ac771c7..443706291ce0 100644 #define PPE_PORT_MAX 8 #define PPE_CLK_RATE 353000000 -@@ -201,6 +202,10 @@ static int qcom_ppe_probe(struct platform_device *pdev) +@@ -201,6 +202,10 @@ static int qcom_ppe_probe(struct platfor if (ret) return dev_err_probe(dev, ret, "PPE clock config failed\n"); @@ -56,9 +52,6 @@ index 14998ac771c7..443706291ce0 100644 platform_set_drvdata(pdev, ppe_dev); return 0; -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -new file mode 100644 -index 000000000000..0ba4efdfd509 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c @@ -0,0 +1,181 @@ @@ -243,9 +236,6 @@ index 000000000000..0ba4efdfd509 +{ + return ppe_config_bm(ppe_dev); +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h -new file mode 100644 -index 000000000000..7e66019de799 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h @@ -0,0 +1,10 @@ @@ -259,9 +249,6 @@ index 000000000000..7e66019de799 + +int ppe_hw_config(struct ppe_device *ppe_dev); +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -new file mode 100644 -index 000000000000..bf25e0acc0f6 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -0,0 +1,54 @@ @@ -319,6 +306,3 @@ index 000000000000..bf25e0acc0f6 + u32p_replace_bits((u32 *)(tbl_cfg) + 0x1, value, PPE_BM_PORT_FC_W1_PRE_ALLOC) + +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-20-net-ethernet-qualcomm-Add-PPE-queue-management-confi.patch b/target/linux/qualcommbe/patches-6.6/103-20-net-ethernet-qualcomm-Add-PPE-queue-management-confi.patch index e24fb6987b..fb432a767f 100644 --- a/target/linux/qualcommbe/patches-6.6/103-20-net-ethernet-qualcomm-Add-PPE-queue-management-confi.patch +++ b/target/linux/qualcommbe/patches-6.6/103-20-net-ethernet-qualcomm-Add-PPE-queue-management-confi.patch @@ -18,8 +18,6 @@ Signed-off-by: Luo Jie drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 82 ++++++++ 2 files changed, 257 insertions(+), 1 deletion(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index 0ba4efdfd509..4192fdc8d3a3 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c @@ -43,6 +43,27 @@ struct ppe_bm_port_config { @@ -50,7 +48,7 @@ index 0ba4efdfd509..4192fdc8d3a3 100644 static int ipq9574_ppe_bm_group_config = 1550; static struct ppe_bm_port_config ipq9574_ppe_bm_port_config[] = { { -@@ -91,6 +112,31 @@ static struct ppe_bm_port_config ipq9574_ppe_bm_port_config[] = { +@@ -91,6 +112,31 @@ static struct ppe_bm_port_config ipq9574 }, }; @@ -82,7 +80,7 @@ index 0ba4efdfd509..4192fdc8d3a3 100644 static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, struct ppe_bm_port_config port_cfg) { -@@ -175,7 +221,135 @@ static int ppe_config_bm(struct ppe_device *ppe_dev) +@@ -175,7 +221,135 @@ bm_config_fail: return ret; } @@ -219,8 +217,6 @@ index 0ba4efdfd509..4192fdc8d3a3 100644 + + return ppe_config_qm(ppe_dev); } -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index bf25e0acc0f6..0bc13979e5e2 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -11,6 +11,14 @@ @@ -317,6 +313,3 @@ index bf25e0acc0f6..0bc13979e5e2 100644 +#define PPE_ENQ_OPR_TBL_ENQ_DISABLE BIT(0) + #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-21-net-ethernet-qualcomm-Add-PPE-scheduler-config.patch b/target/linux/qualcommbe/patches-6.6/103-21-net-ethernet-qualcomm-Add-PPE-scheduler-config.patch index 01716e322d..7a51c3e666 100644 --- a/target/linux/qualcommbe/patches-6.6/103-21-net-ethernet-qualcomm-Add-PPE-scheduler-config.patch +++ b/target/linux/qualcommbe/patches-6.6/103-21-net-ethernet-qualcomm-Add-PPE-scheduler-config.patch @@ -20,8 +20,6 @@ Signed-off-by: Luo Jie create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_api.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_api.h -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index 410a7bb54cfe..e4e5c94fde3e 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -4,4 +4,4 @@ @@ -30,9 +28,6 @@ index 410a7bb54cfe..e4e5c94fde3e 100644 obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o -qcom-ppe-objs := ppe.o ppe_config.o +qcom-ppe-objs := ppe.o ppe_config.o ppe_api.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_api.c b/drivers/net/ethernet/qualcomm/ppe/ppe_api.c -new file mode 100644 -index 000000000000..ba35fc151e2c --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_api.c @@ -0,0 +1,40 @@ @@ -76,9 +71,6 @@ index 000000000000..ba35fc151e2c + + return ppe_queue_scheduler_set(ppe_dev, node_id, level, port, sch_cfg); +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_api.h b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h -new file mode 100644 -index 000000000000..ee5b47d06991 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h @@ -0,0 +1,21 @@ @@ -103,8 +95,6 @@ index 000000000000..ee5b47d06991 +int ppe_queue_priority_set(struct ppe_device *ppe_dev, + int queue_id, int priority); +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index 4192fdc8d3a3..bdef26da6fd3 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c @@ -13,6 +13,7 @@ @@ -185,7 +175,7 @@ index 4192fdc8d3a3..bdef26da6fd3 100644 static int ipq9574_ppe_bm_group_config = 1550; static struct ppe_bm_port_config ipq9574_ppe_bm_port_config[] = { { -@@ -137,6 +192,707 @@ static struct ppe_qm_queue_config ipq9574_ppe_qm_queue_config[] = { +@@ -137,6 +192,707 @@ static struct ppe_qm_queue_config ipq957 }, }; @@ -893,7 +883,7 @@ index 4192fdc8d3a3..bdef26da6fd3 100644 static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, struct ppe_bm_port_config port_cfg) { -@@ -343,6 +1099,126 @@ static int ppe_config_qm(struct ppe_device *ppe_dev) +@@ -343,6 +1099,126 @@ qm_config_fail: return ret; } @@ -1020,7 +1010,7 @@ index 4192fdc8d3a3..bdef26da6fd3 100644 int ppe_hw_config(struct ppe_device *ppe_dev) { int ret; -@@ -351,5 +1227,9 @@ int ppe_hw_config(struct ppe_device *ppe_dev) +@@ -351,5 +1227,9 @@ int ppe_hw_config(struct ppe_device *ppe if (ret) return ret; @@ -1031,8 +1021,6 @@ index 4192fdc8d3a3..bdef26da6fd3 100644 + + return ppe_config_scheduler(ppe_dev); } -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h -index 7e66019de799..167a114031fd 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h @@ -6,5 +6,31 @@ @@ -1067,8 +1055,6 @@ index 7e66019de799..167a114031fd 100644 + int node_id, bool flow_level, int *port, + struct ppe_qos_scheduler_cfg *scheduler_cfg); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 0bc13979e5e2..0279f1023bcf 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -11,14 +11,108 @@ @@ -1180,6 +1166,3 @@ index 0bc13979e5e2..0279f1023bcf 100644 #define PPE_BM_PORT_FC_MODE_ADDR 0x600100 #define PPE_BM_PORT_FC_MODE_INC 0x4 #define PPE_BM_PORT_FC_MODE_EN BIT(0) --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-22-net-ethernet-qualcomm-Initialize-PPE-queue-settings.patch b/target/linux/qualcommbe/patches-6.6/103-22-net-ethernet-qualcomm-Initialize-PPE-queue-settings.patch index 5b6bf5abcb..dd70cf29ee 100644 --- a/target/linux/qualcommbe/patches-6.6/103-22-net-ethernet-qualcomm-Initialize-PPE-queue-settings.patch +++ b/target/linux/qualcommbe/patches-6.6/103-22-net-ethernet-qualcomm-Initialize-PPE-queue-settings.patch @@ -20,11 +20,9 @@ Signed-off-by: Luo Jie drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 16 + 5 files changed, 496 insertions(+), 1 deletion(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_api.c b/drivers/net/ethernet/qualcomm/ppe/ppe_api.c -index ba35fc151e2c..72d416e0ca44 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_api.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_api.c -@@ -38,3 +38,47 @@ int ppe_queue_priority_set(struct ppe_device *ppe_dev, +@@ -38,3 +38,47 @@ int ppe_queue_priority_set(struct ppe_de return ppe_queue_scheduler_set(ppe_dev, node_id, level, port, sch_cfg); } @@ -72,8 +70,6 @@ index ba35fc151e2c..72d416e0ca44 100644 + + return ppe_port_resource_get(ppe_dev, 0, type, res_start, res_end); +}; -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_api.h b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h -index ee5b47d06991..c8aa8945f90f 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_api.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h @@ -15,7 +15,41 @@ @@ -118,8 +114,6 @@ index ee5b47d06991..c8aa8945f90f 100644 +int ppe_edma_queue_resource_get(struct ppe_device *ppe_dev, int type, + int *res_start, int *res_end); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index bdef26da6fd3..ac90d33aecba 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c @@ -119,6 +119,34 @@ struct ppe_port_schedule_config { @@ -157,7 +151,7 @@ index bdef26da6fd3..ac90d33aecba 100644 static int ipq9574_ppe_bm_group_config = 1550; static struct ppe_bm_port_config ipq9574_ppe_bm_port_config[] = { { -@@ -648,6 +676,111 @@ static struct ppe_port_schedule_config ppe_qos_schedule_config[] = { +@@ -648,6 +676,111 @@ static struct ppe_port_schedule_config p }, }; @@ -269,7 +263,7 @@ index bdef26da6fd3..ac90d33aecba 100644 /* Set the first level scheduler configuration. */ static int ppe_scheduler_l0_queue_map_set(struct ppe_device *ppe_dev, int node_id, int port, -@@ -893,6 +1026,147 @@ int ppe_queue_scheduler_get(struct ppe_device *ppe_dev, +@@ -893,6 +1026,147 @@ int ppe_queue_scheduler_get(struct ppe_d port, scheduler_cfg); } @@ -417,7 +411,7 @@ index bdef26da6fd3..ac90d33aecba 100644 static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, struct ppe_bm_port_config port_cfg) { -@@ -1219,6 +1493,88 @@ static int ppe_config_scheduler(struct ppe_device *ppe_dev) +@@ -1219,6 +1493,88 @@ sch_config_fail: return ret; }; @@ -506,7 +500,7 @@ index bdef26da6fd3..ac90d33aecba 100644 int ppe_hw_config(struct ppe_device *ppe_dev) { int ret; -@@ -1231,5 +1587,9 @@ int ppe_hw_config(struct ppe_device *ppe_dev) +@@ -1231,5 +1587,9 @@ int ppe_hw_config(struct ppe_device *ppe if (ret) return ret; @@ -517,8 +511,6 @@ index bdef26da6fd3..ac90d33aecba 100644 + + return ppe_dev_hw_init(ppe_dev); } -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h -index 167a114031fd..676c4ec45f6f 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h @@ -6,6 +6,13 @@ @@ -562,7 +554,7 @@ index 167a114031fd..676c4ec45f6f 100644 int ppe_hw_config(struct ppe_device *ppe_dev); int ppe_queue_scheduler_set(struct ppe_device *ppe_dev, int node_id, bool flow_level, int port, -@@ -33,4 +60,18 @@ int ppe_queue_scheduler_set(struct ppe_device *ppe_dev, +@@ -33,4 +60,18 @@ int ppe_queue_scheduler_set(struct ppe_d int ppe_queue_scheduler_get(struct ppe_device *ppe_dev, int node_id, bool flow_level, int *port, struct ppe_qos_scheduler_cfg *scheduler_cfg); @@ -581,8 +573,6 @@ index 167a114031fd..676c4ec45f6f 100644 +int ppe_port_resource_get(struct ppe_device *ppe_dev, int port, int type, + int *res_start, int *res_end); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 0279f1023bcf..1f6828237f94 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -153,6 +153,22 @@ @@ -608,6 +598,3 @@ index 0279f1023bcf..1f6828237f94 100644 /* PPE unicast queue (0-255) configurations. */ #define PPE_AC_UNI_QUEUE_CFG_TBL_ADDR 0x848000 #define PPE_AC_UNI_QUEUE_CFG_TBL_NUM 256 --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-23-net-ethernet-qualcomm-Add-PPE-service-code-config.patch b/target/linux/qualcommbe/patches-6.6/103-23-net-ethernet-qualcomm-Add-PPE-service-code-config.patch index 3a390ef229..d4b9cfc4d5 100644 --- a/target/linux/qualcommbe/patches-6.6/103-23-net-ethernet-qualcomm-Add-PPE-service-code-config.patch +++ b/target/linux/qualcommbe/patches-6.6/103-23-net-ethernet-qualcomm-Add-PPE-service-code-config.patch @@ -20,8 +20,6 @@ Signed-off-by: Luo Jie drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 48 ++++++ 4 files changed, 290 insertions(+), 1 deletion(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_api.h b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h -index c8aa8945f90f..ecdae4b95667 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_api.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h @@ -18,6 +18,9 @@ @@ -34,8 +32,6 @@ index c8aa8945f90f..ecdae4b95667 100644 /** * enum ppe_queue_class_type - PPE queue class type * @PPE_QUEUE_CLASS_PRIORITY: Queue offset configured from internal priority -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index ac90d33aecba..a8e7a536a6e0 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c @@ -8,6 +8,7 @@ @@ -46,7 +42,7 @@ index ac90d33aecba..a8e7a536a6e0 100644 #include #include #include -@@ -1167,6 +1168,76 @@ int ppe_port_resource_get(struct ppe_device *ppe_dev, int port, int type, +@@ -1167,6 +1168,76 @@ int ppe_port_resource_get(struct ppe_dev return 0; } @@ -123,7 +119,7 @@ index ac90d33aecba..a8e7a536a6e0 100644 static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, struct ppe_bm_port_config port_cfg) { -@@ -1569,10 +1640,35 @@ static int ppe_queue_dest_init(struct ppe_device *ppe_dev) +@@ -1569,10 +1640,35 @@ static int ppe_queue_dest_init(struct pp return 0; } @@ -160,8 +156,6 @@ index ac90d33aecba..a8e7a536a6e0 100644 } int ppe_hw_config(struct ppe_device *ppe_dev) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h -index 676c4ec45f6f..dcb557ed843c 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h @@ -6,6 +6,8 @@ @@ -317,7 +311,7 @@ index 676c4ec45f6f..dcb557ed843c 100644 int ppe_hw_config(struct ppe_device *ppe_dev); int ppe_queue_scheduler_set(struct ppe_device *ppe_dev, int node_id, bool flow_level, int port, -@@ -74,4 +213,7 @@ int ppe_queue_ucast_hash_class_set(struct ppe_device *ppe_dev, +@@ -74,4 +213,7 @@ int ppe_queue_ucast_hash_class_set(struc int class_offset); int ppe_port_resource_get(struct ppe_device *ppe_dev, int port, int type, int *res_start, int *res_end); @@ -325,8 +319,6 @@ index 676c4ec45f6f..dcb557ed843c 100644 + int servcode, + struct ppe_servcode_cfg cfg); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 1f6828237f94..3122743af98d 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -27,9 +27,57 @@ @@ -387,6 +379,3 @@ index 1f6828237f94..3122743af98d 100644 #define PPE_PSCH_SCH_DEPTH_CFG_ADDR 0x400000 #define PPE_PSCH_SCH_DEPTH_CFG_NUM 1 #define PPE_PSCH_SCH_DEPTH_CFG_INC 4 --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-24-net-ethernet-qualcomm-Add-PPE-port-control-config.patch b/target/linux/qualcommbe/patches-6.6/103-24-net-ethernet-qualcomm-Add-PPE-port-control-config.patch index a55b09b2bf..2751e2bc20 100644 --- a/target/linux/qualcommbe/patches-6.6/103-24-net-ethernet-qualcomm-Add-PPE-port-control-config.patch +++ b/target/linux/qualcommbe/patches-6.6/103-24-net-ethernet-qualcomm-Add-PPE-port-control-config.patch @@ -15,11 +15,9 @@ Signed-off-by: Luo Jie drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 50 ++++++++++ 3 files changed, 151 insertions(+), 1 deletion(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index a8e7a536a6e0..18296a449d4e 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -@@ -1238,6 +1238,50 @@ int ppe_servcode_config_set(struct ppe_device *ppe_dev, int servcode, +@@ -1238,6 +1238,50 @@ int ppe_servcode_config_set(struct ppe_d return regmap_write(ppe_dev->regmap, reg, val); } @@ -70,7 +68,7 @@ index a8e7a536a6e0..18296a449d4e 100644 static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, struct ppe_bm_port_config port_cfg) { -@@ -1659,6 +1703,47 @@ static int ppe_servcode_init(struct ppe_device *ppe_dev) +@@ -1659,6 +1703,47 @@ static int ppe_servcode_init(struct ppe_ return ppe_servcode_config_set(ppe_dev, PPE_EDMA_SC_BYPASS_ID, servcode_cfg); } @@ -118,7 +116,7 @@ index a8e7a536a6e0..18296a449d4e 100644 /* Initialize PPE device to handle traffic correctly. */ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) { -@@ -1668,7 +1753,11 @@ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) +@@ -1668,7 +1753,11 @@ static int ppe_dev_hw_init(struct ppe_de if (ret) return ret; @@ -131,8 +129,6 @@ index a8e7a536a6e0..18296a449d4e 100644 } int ppe_hw_config(struct ppe_device *ppe_dev) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h -index dcb557ed843c..7f5d92c39dd3 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h @@ -192,6 +192,16 @@ struct ppe_servcode_cfg { @@ -152,14 +148,12 @@ index dcb557ed843c..7f5d92c39dd3 100644 int ppe_hw_config(struct ppe_device *ppe_dev); int ppe_queue_scheduler_set(struct ppe_device *ppe_dev, int node_id, bool flow_level, int port, -@@ -216,4 +226,5 @@ int ppe_port_resource_get(struct ppe_device *ppe_dev, int port, int type, +@@ -216,4 +226,5 @@ int ppe_port_resource_get(struct ppe_dev int ppe_servcode_config_set(struct ppe_device *ppe_dev, int servcode, struct ppe_servcode_cfg cfg); +int ppe_counter_set(struct ppe_device *ppe_dev, int port, bool enable); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 3122743af98d..e981a1c0e670 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -18,6 +18,11 @@ @@ -233,6 +227,3 @@ index 3122743af98d..e981a1c0e670 100644 #define PPE_IN_L2_SERVICE_TBL_ADDR 0x66000 #define PPE_IN_L2_SERVICE_TBL_NUM 256 #define PPE_IN_L2_SERVICE_TBL_INC 0x10 --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-25-net-ethernet-qualcomm-Add-PPE-RSS-hash-config.patch b/target/linux/qualcommbe/patches-6.6/103-25-net-ethernet-qualcomm-Add-PPE-RSS-hash-config.patch index 6ee4e340fd..eaefbf0905 100644 --- a/target/linux/qualcommbe/patches-6.6/103-25-net-ethernet-qualcomm-Add-PPE-RSS-hash-config.patch +++ b/target/linux/qualcommbe/patches-6.6/103-25-net-ethernet-qualcomm-Add-PPE-RSS-hash-config.patch @@ -15,11 +15,9 @@ Signed-off-by: Luo Jie drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 47 +++++ 3 files changed, 263 insertions(+), 2 deletions(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index 18296a449d4e..4363ea3cfb90 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -@@ -1282,6 +1282,143 @@ int ppe_counter_set(struct ppe_device *ppe_dev, int port, bool enable) +@@ -1282,6 +1282,143 @@ int ppe_counter_set(struct ppe_device *p val); } @@ -163,7 +161,7 @@ index 18296a449d4e..4363ea3cfb90 100644 static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, struct ppe_bm_port_config port_cfg) { -@@ -1324,7 +1461,7 @@ static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, +@@ -1324,7 +1461,7 @@ static int ppe_config_bm_threshold(struc return regmap_update_bits(ppe_dev->regmap, reg, PPE_BM_PORT_FC_MODE_EN, val); @@ -172,7 +170,7 @@ index 18296a449d4e..4363ea3cfb90 100644 /* Configure the buffer threshold for the port flow control function. */ static int ppe_config_bm(struct ppe_device *ppe_dev) -@@ -1744,6 +1881,43 @@ static int ppe_port_ctrl_init(struct ppe_device *ppe_dev) +@@ -1744,6 +1881,43 @@ static int ppe_port_ctrl_init(struct ppe return ppe_counter_set(ppe_dev, 0, true); } @@ -216,7 +214,7 @@ index 18296a449d4e..4363ea3cfb90 100644 /* Initialize PPE device to handle traffic correctly. */ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) { -@@ -1757,7 +1931,11 @@ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) +@@ -1757,7 +1931,11 @@ static int ppe_dev_hw_init(struct ppe_de if (ret) return ret; @@ -229,8 +227,6 @@ index 18296a449d4e..4363ea3cfb90 100644 } int ppe_hw_config(struct ppe_device *ppe_dev) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h -index 7f5d92c39dd3..6dd91bc45908 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h @@ -15,6 +15,11 @@ @@ -281,15 +277,13 @@ index 7f5d92c39dd3..6dd91bc45908 100644 int ppe_hw_config(struct ppe_device *ppe_dev); int ppe_queue_scheduler_set(struct ppe_device *ppe_dev, int node_id, bool flow_level, int port, -@@ -227,4 +261,6 @@ int ppe_servcode_config_set(struct ppe_device *ppe_dev, +@@ -227,4 +261,6 @@ int ppe_servcode_config_set(struct ppe_d int servcode, struct ppe_servcode_cfg cfg); int ppe_counter_set(struct ppe_device *ppe_dev, int port, bool enable); +int ppe_rss_hash_config_set(struct ppe_device *ppe_dev, int mode, + struct ppe_rss_hash_cfg hash_cfg); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index e981a1c0e670..29001a2599d8 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -23,6 +23,53 @@ @@ -346,6 +340,3 @@ index e981a1c0e670..29001a2599d8 100644 #define PPE_BM_SCH_CFG_TBL_ADDR 0xc000 #define PPE_BM_SCH_CFG_TBL_NUM 128 #define PPE_BM_SCH_CFG_TBL_INC 0x10 --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-26-net-ethernet-qualcomm-Add-PPE-queue-map-function.patch b/target/linux/qualcommbe/patches-6.6/103-26-net-ethernet-qualcomm-Add-PPE-queue-map-function.patch index c390be4b82..38405cc7fe 100644 --- a/target/linux/qualcommbe/patches-6.6/103-26-net-ethernet-qualcomm-Add-PPE-queue-map-function.patch +++ b/target/linux/qualcommbe/patches-6.6/103-26-net-ethernet-qualcomm-Add-PPE-queue-map-function.patch @@ -18,11 +18,9 @@ Signed-off-by: Luo Jie drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 5 +++ 5 files changed, 79 insertions(+), 1 deletion(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_api.c b/drivers/net/ethernet/qualcomm/ppe/ppe_api.c -index 72d416e0ca44..6199c7025f66 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_api.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_api.c -@@ -82,3 +82,26 @@ int ppe_edma_queue_resource_get(struct ppe_device *ppe_dev, int type, +@@ -82,3 +82,26 @@ int ppe_edma_queue_resource_get(struct p return ppe_port_resource_get(ppe_dev, 0, type, res_start, res_end); }; @@ -49,22 +47,18 @@ index 72d416e0ca44..6199c7025f66 100644 + + return ppe_ring_queue_map_set(ppe_dev, ring_id, queue_bmap); +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_api.h b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h -index ecdae4b95667..2135b5383bcd 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_api.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_api.h -@@ -55,4 +55,6 @@ int ppe_edma_queue_offset_config(struct ppe_device *ppe_dev, +@@ -55,4 +55,6 @@ int ppe_edma_queue_offset_config(struct int index, int queue_offset); int ppe_edma_queue_resource_get(struct ppe_device *ppe_dev, int type, int *res_start, int *res_end); +int ppe_edma_ring_to_queues_config(struct ppe_device *ppe_dev, int ring_id, + int num, int queues[] __counted_by(num)); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index 4363ea3cfb90..a19a6472e4ed 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -@@ -1419,6 +1419,28 @@ int ppe_rss_hash_config_set(struct ppe_device *ppe_dev, int mode, +@@ -1419,6 +1419,28 @@ int ppe_rss_hash_config_set(struct ppe_d return 0; } @@ -93,7 +87,7 @@ index 4363ea3cfb90..a19a6472e4ed 100644 static int ppe_config_bm_threshold(struct ppe_device *ppe_dev, int bm_port_id, struct ppe_bm_port_config port_cfg) { -@@ -1918,6 +1940,23 @@ static int ppe_rss_hash_init(struct ppe_device *ppe_dev) +@@ -1918,6 +1940,23 @@ static int ppe_rss_hash_init(struct ppe_ return ppe_rss_hash_config_set(ppe_dev, PPE_RSS_HASH_MODE_IPV6, hash_cfg); } @@ -117,7 +111,7 @@ index 4363ea3cfb90..a19a6472e4ed 100644 /* Initialize PPE device to handle traffic correctly. */ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) { -@@ -1935,7 +1974,11 @@ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) +@@ -1935,7 +1974,11 @@ static int ppe_dev_hw_init(struct ppe_de if (ret) return ret; @@ -130,8 +124,6 @@ index 4363ea3cfb90..a19a6472e4ed 100644 } int ppe_hw_config(struct ppe_device *ppe_dev) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h -index 6dd91bc45908..9be749800f14 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.h @@ -20,6 +20,8 @@ @@ -143,7 +135,7 @@ index 6dd91bc45908..9be749800f14 100644 /** * struct ppe_qos_scheduler_cfg - PPE QoS scheduler configuration. * @flow_id: PPE flow ID. -@@ -263,4 +265,7 @@ int ppe_servcode_config_set(struct ppe_device *ppe_dev, +@@ -263,4 +265,7 @@ int ppe_servcode_config_set(struct ppe_d int ppe_counter_set(struct ppe_device *ppe_dev, int port, bool enable); int ppe_rss_hash_config_set(struct ppe_device *ppe_dev, int mode, struct ppe_rss_hash_cfg hash_cfg); @@ -151,8 +143,6 @@ index 6dd91bc45908..9be749800f14 100644 + int ring_id, + u32 *queue_map); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 29001a2599d8..8c6cd6b52b0f 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -212,6 +212,11 @@ @@ -167,6 +157,3 @@ index 29001a2599d8..8c6cd6b52b0f 100644 #define PPE_DEQ_OPR_TBL_ADDR 0x430000 #define PPE_DEQ_OPR_TBL_NUM 300 #define PPE_DEQ_OPR_TBL_INC 0x10 --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-27-net-ethernet-qualcomm-Add-PPE-L2-bridge-initializati.patch b/target/linux/qualcommbe/patches-6.6/103-27-net-ethernet-qualcomm-Add-PPE-L2-bridge-initializati.patch index 99845d3a59..24e1edf23a 100644 --- a/target/linux/qualcommbe/patches-6.6/103-27-net-ethernet-qualcomm-Add-PPE-L2-bridge-initializati.patch +++ b/target/linux/qualcommbe/patches-6.6/103-27-net-ethernet-qualcomm-Add-PPE-L2-bridge-initializati.patch @@ -17,11 +17,9 @@ Signed-off-by: Lei Wei drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 54 +++++++++++++++ 2 files changed, 121 insertions(+), 1 deletion(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -index a19a6472e4ed..621f4f0ba9e2 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_config.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_config.c -@@ -1957,6 +1957,68 @@ static int ppe_queues_to_ring_init(struct ppe_device *ppe_dev) +@@ -1957,6 +1957,68 @@ static int ppe_queues_to_ring_init(struc return ppe_ring_queue_map_set(ppe_dev, 0, queue_bmap); } @@ -90,7 +88,7 @@ index a19a6472e4ed..621f4f0ba9e2 100644 /* Initialize PPE device to handle traffic correctly. */ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) { -@@ -1978,7 +2040,11 @@ static int ppe_dev_hw_init(struct ppe_device *ppe_dev) +@@ -1978,7 +2040,11 @@ static int ppe_dev_hw_init(struct ppe_de if (ret) return ret; @@ -103,8 +101,6 @@ index a19a6472e4ed..621f4f0ba9e2 100644 } int ppe_hw_config(struct ppe_device *ppe_dev) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 8c6cd6b52b0f..7f06843e4151 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -126,6 +126,18 @@ @@ -182,6 +178,3 @@ index 8c6cd6b52b0f..7f06843e4151 100644 #define PPE_TL_SERVICE_TBL_ADDR 0x306000 #define PPE_TL_SERVICE_TBL_NUM 256 #define PPE_TL_SERVICE_TBL_INC 4 --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-28-net-ethernet-qualcomm-Add-PPE-debugfs-support.patch b/target/linux/qualcommbe/patches-6.6/103-28-net-ethernet-qualcomm-Add-PPE-debugfs-support.patch index 314771763c..6c3f408cee 100644 --- a/target/linux/qualcommbe/patches-6.6/103-28-net-ethernet-qualcomm-Add-PPE-debugfs-support.patch +++ b/target/linux/qualcommbe/patches-6.6/103-28-net-ethernet-qualcomm-Add-PPE-debugfs-support.patch @@ -19,8 +19,6 @@ Signed-off-by: Luo Jie create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.h -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index e4e5c94fde3e..227af2168224 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -4,4 +4,4 @@ @@ -29,8 +27,6 @@ index e4e5c94fde3e..227af2168224 100644 obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o -qcom-ppe-objs := ppe.o ppe_config.o ppe_api.o +qcom-ppe-objs := ppe.o ppe_config.o ppe_api.o ppe_debugfs.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.c b/drivers/net/ethernet/qualcomm/ppe/ppe.c -index 443706291ce0..8cf6c1161c4b 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.c @@ -16,6 +16,7 @@ @@ -41,7 +37,7 @@ index 443706291ce0..8cf6c1161c4b 100644 #define PPE_PORT_MAX 8 #define PPE_CLK_RATE 353000000 -@@ -206,11 +207,20 @@ static int qcom_ppe_probe(struct platform_device *pdev) +@@ -206,11 +207,20 @@ static int qcom_ppe_probe(struct platfor if (ret) return dev_err_probe(dev, ret, "PPE HW config failed\n"); @@ -62,7 +58,7 @@ index 443706291ce0..8cf6c1161c4b 100644 static const struct of_device_id qcom_ppe_of_match[] = { { .compatible = "qcom,ipq9574-ppe" }, {}, -@@ -223,6 +233,7 @@ static struct platform_driver qcom_ppe_driver = { +@@ -223,6 +233,7 @@ static struct platform_driver qcom_ppe_d .of_match_table = qcom_ppe_of_match, }, .probe = qcom_ppe_probe, @@ -70,8 +66,6 @@ index 443706291ce0..8cf6c1161c4b 100644 }; module_platform_driver(qcom_ppe_driver); -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.h b/drivers/net/ethernet/qualcomm/ppe/ppe.h -index 733d77f4063d..a2a5d1901547 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.h @@ -11,6 +11,7 @@ @@ -98,9 +92,6 @@ index 733d77f4063d..a2a5d1901547 100644 unsigned int num_icc_paths; struct icc_bulk_data icc_paths[] __counted_by(num_icc_paths); }; -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c b/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c -new file mode 100644 -index 000000000000..1cd4c491e724 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c @@ -0,0 +1,725 @@ @@ -829,9 +820,6 @@ index 000000000000..1cd4c491e724 + debugfs_remove_recursive(ppe_dev->debugfs_root); + ppe_dev->debugfs_root = NULL; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.h -new file mode 100644 -index 000000000000..a979fcf9d742 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.h @@ -0,0 +1,16 @@ @@ -851,8 +839,6 @@ index 000000000000..a979fcf9d742 +void ppe_debugfs_teardown(struct ppe_device *ppe_dev); + +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 7f06843e4151..e84633d0f572 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -23,6 +23,43 @@ @@ -981,6 +967,3 @@ index 7f06843e4151..e84633d0f572 100644 #define PPE_ENQ_OPR_TBL_ADDR 0x85c000 #define PPE_ENQ_OPR_TBL_NUM 300 #define PPE_ENQ_OPR_TBL_INC 0x10 --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-32-net-ethernet-qualcomm-Add-phylink-support-for-PPE-MA.patch b/target/linux/qualcommbe/patches-6.6/103-32-net-ethernet-qualcomm-Add-phylink-support-for-PPE-MA.patch index d89ae3af54..c791719926 100644 --- a/target/linux/qualcommbe/patches-6.6/103-32-net-ethernet-qualcomm-Add-phylink-support-for-PPE-MA.patch +++ b/target/linux/qualcommbe/patches-6.6/103-32-net-ethernet-qualcomm-Add-phylink-support-for-PPE-MA.patch @@ -20,8 +20,6 @@ Signed-off-by: Lei Wei create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_port.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/ppe_port.h -diff --git a/drivers/net/ethernet/qualcomm/Kconfig b/drivers/net/ethernet/qualcomm/Kconfig -index 8cc24da48777..a96f6acd4561 100644 --- a/drivers/net/ethernet/qualcomm/Kconfig +++ b/drivers/net/ethernet/qualcomm/Kconfig @@ -66,6 +66,9 @@ config QCOM_PPE @@ -34,8 +32,6 @@ index 8cc24da48777..a96f6acd4561 100644 help This driver supports the Qualcomm Technologies, Inc. packet process engine (PPE) available with IPQ SoC. The PPE houses -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index 227af2168224..76cdc423a8cc 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -4,4 +4,4 @@ @@ -44,8 +40,6 @@ index 227af2168224..76cdc423a8cc 100644 obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o -qcom-ppe-objs := ppe.o ppe_config.o ppe_api.o ppe_debugfs.o +qcom-ppe-objs := ppe.o ppe_config.o ppe_api.o ppe_debugfs.o ppe_port.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.c b/drivers/net/ethernet/qualcomm/ppe/ppe.c -index 8cf6c1161c4b..bcf21c838e05 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.c @@ -17,6 +17,7 @@ @@ -56,7 +50,7 @@ index 8cf6c1161c4b..bcf21c838e05 100644 #define PPE_PORT_MAX 8 #define PPE_CLK_RATE 353000000 -@@ -207,6 +208,11 @@ static int qcom_ppe_probe(struct platform_device *pdev) +@@ -207,6 +208,11 @@ static int qcom_ppe_probe(struct platfor if (ret) return dev_err_probe(dev, ret, "PPE HW config failed\n"); @@ -68,7 +62,7 @@ index 8cf6c1161c4b..bcf21c838e05 100644 ppe_debugfs_setup(ppe_dev); platform_set_drvdata(pdev, ppe_dev); -@@ -219,6 +225,9 @@ static void qcom_ppe_remove(struct platform_device *pdev) +@@ -219,6 +225,9 @@ static void qcom_ppe_remove(struct platf ppe_dev = platform_get_drvdata(pdev); ppe_debugfs_teardown(ppe_dev); @@ -78,8 +72,6 @@ index 8cf6c1161c4b..bcf21c838e05 100644 } static const struct of_device_id qcom_ppe_of_match[] = { -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.h b/drivers/net/ethernet/qualcomm/ppe/ppe.h -index a2a5d1901547..020d5df2c5e3 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.h @@ -20,6 +20,7 @@ struct dentry; @@ -98,9 +90,6 @@ index a2a5d1901547..020d5df2c5e3 100644 unsigned int num_icc_paths; struct icc_bulk_data icc_paths[] __counted_by(num_icc_paths); }; -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c -new file mode 100644 -index 000000000000..dcc13889089e --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c @@ -0,0 +1,728 @@ @@ -832,9 +821,6 @@ index 000000000000..dcc13889089e + ppe_port_clock_deinit(ppe_port); + } +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.h b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h -new file mode 100644 -index 000000000000..194f65815011 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h @@ -0,0 +1,76 @@ @@ -914,8 +900,6 @@ index 000000000000..194f65815011 + struct net_device *netdev); +void ppe_port_phylink_destroy(struct ppe_port *ppe_port); +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index e84633d0f572..34b659ac0c37 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -7,6 +7,17 @@ @@ -1053,6 +1037,3 @@ index e84633d0f572..34b659ac0c37 100644 +#define XGMAC_CNTRST BIT(0) + #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-33-net-ethernet-qualcomm-Add-PPE-port-MAC-MIB-statistic.patch b/target/linux/qualcommbe/patches-6.6/103-33-net-ethernet-qualcomm-Add-PPE-port-MAC-MIB-statistic.patch index e3a57a976f..edf62dd057 100644 --- a/target/linux/qualcommbe/patches-6.6/103-33-net-ethernet-qualcomm-Add-PPE-port-MAC-MIB-statistic.patch +++ b/target/linux/qualcommbe/patches-6.6/103-33-net-ethernet-qualcomm-Add-PPE-port-MAC-MIB-statistic.patch @@ -16,8 +16,6 @@ Signed-off-by: Lei Wei drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 91 ++++ 3 files changed, 569 insertions(+) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c -index dcc13889089e..284ee14b8d03 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c @@ -23,6 +23,122 @@ @@ -143,7 +141,7 @@ index dcc13889089e..284ee14b8d03 100644 /* PPE port clock and reset name */ static const char * const ppe_port_clk_rst_name[] = { [PPE_PORT_CLK_RST_MAC] = "port_mac", -@@ -30,6 +146,322 @@ static const char * const ppe_port_clk_rst_name[] = { +@@ -30,6 +146,322 @@ static const char * const ppe_port_clk_r [PPE_PORT_CLK_RST_TX] = "port_tx", }; @@ -466,7 +464,7 @@ index dcc13889089e..284ee14b8d03 100644 /* PPE port and MAC reset */ static int ppe_port_mac_reset(struct ppe_port *ppe_port) { -@@ -261,6 +693,9 @@ static void ppe_port_mac_link_up(struct phylink_config *config, +@@ -261,6 +693,9 @@ static void ppe_port_mac_link_up(struct int ret, port = ppe_port->port_id; u32 reg, val; @@ -476,7 +474,7 @@ index dcc13889089e..284ee14b8d03 100644 if (mac_type == PPE_MAC_TYPE_GMAC) ret = ppe_port_gmac_link_up(ppe_port, speed, duplex, tx_pause, rx_pause); -@@ -306,6 +741,9 @@ static void ppe_port_mac_link_down(struct phylink_config *config, +@@ -306,6 +741,9 @@ static void ppe_port_mac_link_down(struc int ret, port = ppe_port->port_id; u32 reg; @@ -486,7 +484,7 @@ index dcc13889089e..284ee14b8d03 100644 /* Disable PPE port TX */ reg = PPE_PORT_BRIDGE_CTRL_ADDR + PPE_PORT_BRIDGE_CTRL_INC * port; ret = regmap_update_bits(ppe_dev->regmap, reg, -@@ -627,6 +1065,27 @@ static int ppe_port_mac_hw_init(struct ppe_port *ppe_port) +@@ -627,6 +1065,27 @@ static int ppe_port_mac_hw_init(struct p return ret; } @@ -514,7 +512,7 @@ index dcc13889089e..284ee14b8d03 100644 /** * ppe_port_mac_init() - Initialization of PPE ports for the PPE device * @ppe_dev: PPE device -@@ -693,6 +1152,12 @@ int ppe_port_mac_init(struct ppe_device *ppe_dev) +@@ -693,6 +1152,12 @@ int ppe_port_mac_init(struct ppe_device goto err_port_node; } @@ -527,8 +525,6 @@ index dcc13889089e..284ee14b8d03 100644 i++; } -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.h b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h -index 194f65815011..a524d90e1446 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_port.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h @@ -8,6 +8,8 @@ @@ -560,7 +556,7 @@ index 194f65815011..a524d90e1446 100644 }; /** -@@ -73,4 +81,9 @@ void ppe_port_mac_deinit(struct ppe_device *ppe_dev); +@@ -73,4 +81,9 @@ void ppe_port_mac_deinit(struct ppe_devi int ppe_port_phylink_setup(struct ppe_port *ppe_port, struct net_device *netdev); void ppe_port_phylink_destroy(struct ppe_port *ppe_port); @@ -570,8 +566,6 @@ index 194f65815011..a524d90e1446 100644 +void ppe_port_get_stats64(struct ppe_port *ppe_port, + struct rtnl_link_stats64 *s); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 34b659ac0c37..2cd5bd9fa446 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -606,6 +606,48 @@ @@ -677,6 +671,3 @@ index 34b659ac0c37..2cd5bd9fa446 100644 +#define XGMAC_RXDISCARDBYTE_GB_ADDR 0x9B4 + #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-34-net-ethernet-qualcomm-Add-PPE-port-MAC-address-and-E.patch b/target/linux/qualcommbe/patches-6.6/103-34-net-ethernet-qualcomm-Add-PPE-port-MAC-address-and-E.patch index fc8f955666..110c6c6e47 100644 --- a/target/linux/qualcommbe/patches-6.6/103-34-net-ethernet-qualcomm-Add-PPE-port-MAC-address-and-E.patch +++ b/target/linux/qualcommbe/patches-6.6/103-34-net-ethernet-qualcomm-Add-PPE-port-MAC-address-and-E.patch @@ -15,11 +15,9 @@ Signed-off-by: Lei Wei drivers/net/ethernet/qualcomm/ppe/ppe_regs.h | 29 ++++++++ 3 files changed, 107 insertions(+) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c -index 284ee14b8d03..a9781e1197f7 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c -@@ -462,6 +462,81 @@ void ppe_port_get_stats64(struct ppe_port *ppe_port, +@@ -462,6 +462,81 @@ void ppe_port_get_stats64(struct ppe_por } } @@ -101,8 +99,6 @@ index 284ee14b8d03..a9781e1197f7 100644 /* PPE port and MAC reset */ static int ppe_port_mac_reset(struct ppe_port *ppe_port) { -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.h b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h -index a524d90e1446..2234c9bfbd9a 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_port.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h @@ -8,6 +8,7 @@ @@ -113,15 +109,13 @@ index a524d90e1446..2234c9bfbd9a 100644 struct rtnl_link_stats64; /** -@@ -86,4 +87,6 @@ void ppe_port_get_strings(struct ppe_port *ppe_port, u32 stringset, u8 *data); +@@ -86,4 +87,6 @@ void ppe_port_get_strings(struct ppe_por void ppe_port_get_ethtool_stats(struct ppe_port *ppe_port, u64 *data); void ppe_port_get_stats64(struct ppe_port *ppe_port, struct rtnl_link_stats64 *s); +int ppe_port_set_mac_address(struct ppe_port *ppe_port, const u8 *addr); +int ppe_port_set_mac_eee(struct ppe_port *ppe_port, struct ethtool_eee *eee); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 2cd5bd9fa446..6e6e469247c8 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -18,6 +18,16 @@ @@ -174,6 +168,3 @@ index 2cd5bd9fa446..6e6e469247c8 100644 /* XGMAC management counters control register */ #define XGMAC_MMC_CTRL_ADDR 0x800 #define XGMAC_MCF BIT(3) --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-35-net-ethernet-qualcomm-Add-API-to-configure-PPE-port-.patch b/target/linux/qualcommbe/patches-6.6/103-35-net-ethernet-qualcomm-Add-API-to-configure-PPE-port-.patch index e75a9c027c..9d19e5eca8 100644 --- a/target/linux/qualcommbe/patches-6.6/103-35-net-ethernet-qualcomm-Add-API-to-configure-PPE-port-.patch +++ b/target/linux/qualcommbe/patches-6.6/103-35-net-ethernet-qualcomm-Add-API-to-configure-PPE-port-.patch @@ -15,11 +15,9 @@ Signed-off-by: Luo Jie drivers/net/ethernet/qualcomm/ppe/ppe_port.h | 1 + 2 files changed, 45 insertions(+) -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c -index a9781e1197f7..52820e2eedf8 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c -@@ -537,6 +537,50 @@ int ppe_port_set_mac_eee(struct ppe_port *ppe_port, struct ethtool_keee *eee) +@@ -537,6 +537,50 @@ int ppe_port_set_mac_eee(struct ppe_port return ret; } @@ -70,16 +68,11 @@ index a9781e1197f7..52820e2eedf8 100644 /* PPE port and MAC reset */ static int ppe_port_mac_reset(struct ppe_port *ppe_port) { -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.h b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h -index 2234c9bfbd9a..8234e86fb401 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_port.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.h -@@ -89,4 +89,5 @@ void ppe_port_get_stats64(struct ppe_port *ppe_port, +@@ -89,4 +89,5 @@ void ppe_port_get_stats64(struct ppe_por struct rtnl_link_stats64 *s); int ppe_port_set_mac_address(struct ppe_port *ppe_port, const u8 *addr); int ppe_port_set_mac_eee(struct ppe_port *ppe_port, struct ethtool_eee *eee); +int ppe_port_set_maxframe(struct ppe_port *ppe_port, int maxframe_size); #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-38-net-ethernet-qualcomm-Add-EDMA-support-for-QCOM-IPQ9.patch b/target/linux/qualcommbe/patches-6.6/103-38-net-ethernet-qualcomm-Add-EDMA-support-for-QCOM-IPQ9.patch index 8aab02bb04..ae52143282 100644 --- a/target/linux/qualcommbe/patches-6.6/103-38-net-ethernet-qualcomm-Add-EDMA-support-for-QCOM-IPQ9.patch +++ b/target/linux/qualcommbe/patches-6.6/103-38-net-ethernet-qualcomm-Add-EDMA-support-for-QCOM-IPQ9.patch @@ -21,8 +21,6 @@ Signed-off-by: Suruchi Agarwal create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma.h -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index 76cdc423a8cc..7fea135ceb36 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -5,3 +5,6 @@ @@ -33,9 +31,6 @@ index 76cdc423a8cc..7fea135ceb36 100644 +#EDMA +qcom-ppe-objs += edma.o \ No newline at end of file -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.c b/drivers/net/ethernet/qualcomm/ppe/edma.c -new file mode 100644 -index 000000000000..d7bf1f39e9e1 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma.c @@ -0,0 +1,456 @@ @@ -495,9 +490,6 @@ index 000000000000..d7bf1f39e9e1 + + return 0; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.h b/drivers/net/ethernet/qualcomm/ppe/edma.h -new file mode 100644 -index 000000000000..6bad51c976dd --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma.h @@ -0,0 +1,99 @@ @@ -600,8 +592,6 @@ index 000000000000..6bad51c976dd +int edma_setup(struct ppe_device *ppe_dev); + +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe.c b/drivers/net/ethernet/qualcomm/ppe/ppe.c -index bcf21c838e05..93f92be9dc41 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe.c @@ -14,6 +14,7 @@ @@ -612,7 +602,7 @@ index bcf21c838e05..93f92be9dc41 100644 #include "ppe.h" #include "ppe_config.h" #include "ppe_debugfs.h" -@@ -208,10 +209,16 @@ static int qcom_ppe_probe(struct platform_device *pdev) +@@ -208,10 +209,16 @@ static int qcom_ppe_probe(struct platfor if (ret) return dev_err_probe(dev, ret, "PPE HW config failed\n"); @@ -630,7 +620,7 @@ index bcf21c838e05..93f92be9dc41 100644 ppe_debugfs_setup(ppe_dev); platform_set_drvdata(pdev, ppe_dev); -@@ -226,6 +233,7 @@ static void qcom_ppe_remove(struct platform_device *pdev) +@@ -226,6 +233,7 @@ static void qcom_ppe_remove(struct platf ppe_dev = platform_get_drvdata(pdev); ppe_debugfs_teardown(ppe_dev); ppe_port_mac_deinit(ppe_dev); @@ -638,8 +628,6 @@ index bcf21c838e05..93f92be9dc41 100644 platform_set_drvdata(pdev, NULL); } -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h -index 6e6e469247c8..f2a60776a40a 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_regs.h @@ -788,4 +788,257 @@ @@ -900,6 +888,3 @@ index 6e6e469247c8..f2a60776a40a 100644 +#define EDMA_RXDESC2FILL_MAP_RXDESC_MASK 0x7 + #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-39-net-ethernet-qualcomm-Add-netdevice-support-for-QCOM.patch b/target/linux/qualcommbe/patches-6.6/103-39-net-ethernet-qualcomm-Add-netdevice-support-for-QCOM.patch index 4d89b875a3..487364242b 100644 --- a/target/linux/qualcommbe/patches-6.6/103-39-net-ethernet-qualcomm-Add-netdevice-support-for-QCOM.patch +++ b/target/linux/qualcommbe/patches-6.6/103-39-net-ethernet-qualcomm-Add-netdevice-support-for-QCOM.patch @@ -20,8 +20,6 @@ Signed-off-by: Suruchi Agarwal create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_port.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_port.h -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index 7fea135ceb36..e26677644aa9 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -7,4 +7,4 @@ obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o @@ -32,8 +30,6 @@ index 7fea135ceb36..e26677644aa9 100644 \ No newline at end of file +qcom-ppe-objs += edma.o edma_port.o \ No newline at end of file -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.h b/drivers/net/ethernet/qualcomm/ppe/edma.h -index 6bad51c976dd..5261002f883d 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma.h @@ -26,6 +26,9 @@ @@ -46,9 +42,6 @@ index 6bad51c976dd..5261002f883d 100644 /** * struct edma_ring_info - EDMA ring data structure. * @max_rings: Maximum number of rings -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.c b/drivers/net/ethernet/qualcomm/ppe/edma_port.c -new file mode 100644 -index 000000000000..6292b83d746d --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.c @@ -0,0 +1,270 @@ @@ -322,9 +315,6 @@ index 000000000000..6292b83d746d + + return ret; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.h b/drivers/net/ethernet/qualcomm/ppe/edma_port.h -new file mode 100644 -index 000000000000..0f2deb39556e --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.h @@ -0,0 +1,31 @@ @@ -359,8 +349,6 @@ index 000000000000..0f2deb39556e +void edma_port_destroy(struct ppe_port *port); +int edma_port_setup(struct ppe_port *port); +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c -index 52820e2eedf8..05c52ba07aef 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_port.c @@ -13,6 +13,7 @@ @@ -371,7 +359,7 @@ index 52820e2eedf8..05c52ba07aef 100644 #include "ppe.h" #include "ppe_port.h" #include "ppe_regs.h" -@@ -1277,12 +1278,26 @@ int ppe_port_mac_init(struct ppe_device *ppe_dev) +@@ -1277,12 +1278,26 @@ int ppe_port_mac_init(struct ppe_device goto err_port_node; } @@ -398,7 +386,7 @@ index 52820e2eedf8..05c52ba07aef 100644 err_port_clk: for (j = 0; j < i; j++) ppe_port_clock_deinit(&ppe_ports->port[j]); -@@ -1307,6 +1322,10 @@ void ppe_port_mac_deinit(struct ppe_device *ppe_dev) +@@ -1307,6 +1322,10 @@ void ppe_port_mac_deinit(struct ppe_devi for (i = 0; i < ppe_dev->ports->num; i++) { ppe_port = &ppe_dev->ports->port[i]; @@ -409,6 +397,3 @@ index 52820e2eedf8..05c52ba07aef 100644 ppe_port_clock_deinit(ppe_port); } } --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-40-net-ethernet-qualcomm-Add-Rx-Ethernet-DMA-support.patch b/target/linux/qualcommbe/patches-6.6/103-40-net-ethernet-qualcomm-Add-Rx-Ethernet-DMA-support.patch index 9392ed8b58..621a5f5359 100644 --- a/target/linux/qualcommbe/patches-6.6/103-40-net-ethernet-qualcomm-Add-Rx-Ethernet-DMA-support.patch +++ b/target/linux/qualcommbe/patches-6.6/103-40-net-ethernet-qualcomm-Add-Rx-Ethernet-DMA-support.patch @@ -26,8 +26,6 @@ Signed-off-by: Suruchi Agarwal create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_rx.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_rx.h -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index e26677644aa9..3fd607ce42de 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -7,4 +7,4 @@ obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o @@ -38,8 +36,6 @@ index e26677644aa9..3fd607ce42de 100644 \ No newline at end of file +qcom-ppe-objs += edma.o edma_cfg_rx.o edma_port.o edma_rx.o \ No newline at end of file -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.c b/drivers/net/ethernet/qualcomm/ppe/edma.c -index d7bf1f39e9e1..134f6b95c294 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma.c @@ -18,12 +18,23 @@ @@ -66,7 +62,7 @@ index d7bf1f39e9e1..134f6b95c294 100644 /* Priority to multi-queue mapping. */ static u8 edma_pri_map[PPE_QUEUE_INTER_PRI_NUM] = { -@@ -178,6 +189,59 @@ static int edma_configure_ucast_prio_map_tbl(void) +@@ -178,6 +189,59 @@ static int edma_configure_ucast_prio_map return ret; } @@ -262,7 +258,7 @@ index d7bf1f39e9e1..134f6b95c294 100644 kfree(edma_ctx->netdev_arr); } -@@ -428,6 +584,7 @@ int edma_setup(struct ppe_device *ppe_dev) +@@ -428,6 +584,7 @@ int edma_setup(struct ppe_device *ppe_de edma_ctx->hw_info = &ipq9574_hw_info; edma_ctx->ppe_dev = ppe_dev; @@ -270,7 +266,7 @@ index d7bf1f39e9e1..134f6b95c294 100644 /* Configure the EDMA common clocks. */ ret = edma_clock_init(); -@@ -450,6 +607,16 @@ int edma_setup(struct ppe_device *ppe_dev) +@@ -450,6 +607,16 @@ int edma_setup(struct ppe_device *ppe_de return ret; } @@ -287,8 +283,6 @@ index d7bf1f39e9e1..134f6b95c294 100644 dev_info(dev, "EDMA configuration successful\n"); return 0; -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.h b/drivers/net/ethernet/qualcomm/ppe/edma.h -index 5261002f883d..778df7997d9f 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma.h @@ -6,6 +6,7 @@ @@ -341,9 +335,6 @@ index 5261002f883d..778df7997d9f 100644 extern struct edma_context *edma_ctx; void edma_destroy(struct ppe_device *ppe_dev); -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c -new file mode 100644 -index 000000000000..18e4ada6a076 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c @@ -0,0 +1,964 @@ @@ -1311,9 +1302,6 @@ index 000000000000..18e4ada6a076 + + return 0; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h -new file mode 100644 -index 000000000000..3c84ef4ea85c --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h @@ -0,0 +1,48 @@ @@ -1365,8 +1353,6 @@ index 000000000000..3c84ef4ea85c +int edma_cfg_rx_rps(struct ctl_table *table, int write, + void *buffer, size_t *lenp, loff_t *ppos); +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.c b/drivers/net/ethernet/qualcomm/ppe/edma_port.c -index 6292b83d746d..bbb5823408fd 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.c @@ -12,12 +12,39 @@ @@ -1409,7 +1395,7 @@ index 6292b83d746d..bbb5823408fd 100644 static u16 __maybe_unused edma_port_select_queue(__maybe_unused struct net_device *netdev, __maybe_unused struct sk_buff *skb, __maybe_unused struct net_device *sb_dev) -@@ -172,6 +199,7 @@ void edma_port_destroy(struct ppe_port *port) +@@ -172,6 +199,7 @@ void edma_port_destroy(struct ppe_port * int port_id = port->port_id; struct net_device *netdev = edma_ctx->netdev_arr[port_id - 1]; @@ -1417,7 +1403,7 @@ index 6292b83d746d..bbb5823408fd 100644 unregister_netdev(netdev); free_netdev(netdev); ppe_port_phylink_destroy(port); -@@ -232,6 +260,13 @@ int edma_port_setup(struct ppe_port *port) +@@ -232,6 +260,13 @@ int edma_port_setup(struct ppe_port *por port_id, netdev->dev_addr); } @@ -1431,7 +1417,7 @@ index 6292b83d746d..bbb5823408fd 100644 netdev_dbg(netdev, "Configuring the port %s(qcom-id:%d)\n", netdev->name, port_id); -@@ -263,8 +298,10 @@ int edma_port_setup(struct ppe_port *port) +@@ -263,8 +298,10 @@ int edma_port_setup(struct ppe_port *por register_netdev_fail: ppe_port_phylink_destroy(port); port_phylink_setup_fail: @@ -1443,15 +1429,12 @@ index 6292b83d746d..bbb5823408fd 100644 return ret; } -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.h b/drivers/net/ethernet/qualcomm/ppe/edma_port.h -index 0f2deb39556e..75f544a4f324 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_port.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.h -@@ -14,15 +14,46 @@ - | NETIF_F_TSO \ +@@ -15,14 +15,45 @@ | NETIF_F_TSO6) -+/** + /** + * struct edma_port_rx_stats - EDMA RX per CPU stats for the port. + * @rx_pkts: Number of Rx packets + * @rx_bytes: Number of Rx bytes @@ -1479,7 +1462,7 @@ index 0f2deb39556e..75f544a4f324 100644 + struct edma_port_rx_stats __percpu *rx_stats; +}; + - /** ++/** * struct edma_port_priv - EDMA port priv structure. * @ppe_port: Pointer to PPE port * @netdev: Corresponding netdevice @@ -1494,9 +1477,6 @@ index 0f2deb39556e..75f544a4f324 100644 unsigned long flags; }; -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_rx.c b/drivers/net/ethernet/qualcomm/ppe/edma_rx.c -new file mode 100644 -index 000000000000..a1eb533410ce --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_rx.c @@ -0,0 +1,622 @@ @@ -2122,9 +2102,6 @@ index 000000000000..a1eb533410ce + + return IRQ_HANDLED; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_rx.h b/drivers/net/ethernet/qualcomm/ppe/edma_rx.h -new file mode 100644 -index 000000000000..4a262a066808 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_rx.h @@ -0,0 +1,287 @@ @@ -2415,6 +2392,3 @@ index 000000000000..4a262a066808 +int edma_rx_alloc_buffer(struct edma_rxfill_ring *rxfill_ring, int alloc_count); +int edma_rx_napi_poll(struct napi_struct *napi, int budget); +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-41-net-ethernet-qualcomm-Add-Tx-Ethernet-DMA-support.patch b/target/linux/qualcommbe/patches-6.6/103-41-net-ethernet-qualcomm-Add-Tx-Ethernet-DMA-support.patch index 9a190c72f3..1e842fabda 100644 --- a/target/linux/qualcommbe/patches-6.6/103-41-net-ethernet-qualcomm-Add-Tx-Ethernet-DMA-support.patch +++ b/target/linux/qualcommbe/patches-6.6/103-41-net-ethernet-qualcomm-Add-Tx-Ethernet-DMA-support.patch @@ -26,8 +26,6 @@ Signed-off-by: Suruchi Agarwal create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_tx.c create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_tx.h -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index 3fd607ce42de..b358bfd781fb 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -7,4 +7,4 @@ obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o @@ -37,8 +35,6 @@ index 3fd607ce42de..b358bfd781fb 100644 -qcom-ppe-objs += edma.o edma_cfg_rx.o edma_port.o edma_rx.o \ No newline at end of file +qcom-ppe-objs += edma.o edma_cfg_rx.o edma_cfg_tx.o edma_port.o edma_rx.o edma_tx.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.c b/drivers/net/ethernet/qualcomm/ppe/edma.c -index 134f6b95c294..739fcfbde0f9 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma.c @@ -18,6 +18,7 @@ @@ -57,7 +53,7 @@ index 134f6b95c294..739fcfbde0f9 100644 static char **edma_rxdesc_irq_name; /* Module params. */ -@@ -192,22 +194,59 @@ static int edma_configure_ucast_prio_map_tbl(void) +@@ -192,22 +194,59 @@ static int edma_configure_ucast_prio_map static int edma_irq_register(void) { struct edma_hw_info *hw_info = edma_ctx->hw_info; @@ -192,7 +188,7 @@ index 134f6b95c294..739fcfbde0f9 100644 ret = edma_cfg_rx_rings(); if (ret) { -@@ -520,6 +586,7 @@ static int edma_hw_configure(void) +@@ -520,6 +586,7 @@ configure_ucast_prio_map_tbl_failed: edma_cfg_rx_napi_delete(); edma_cfg_rx_rings_disable(); edma_cfg_rx_rings_failed: @@ -200,7 +196,7 @@ index 134f6b95c294..739fcfbde0f9 100644 edma_cfg_rx_rings_cleanup(); edma_alloc_rings_failed: free_netdev(edma_ctx->dummy_dev); -@@ -538,13 +605,27 @@ static int edma_hw_configure(void) +@@ -538,13 +605,27 @@ dummy_dev_alloc_failed: void edma_destroy(struct ppe_device *ppe_dev) { struct edma_hw_info *hw_info = edma_ctx->hw_info; @@ -229,7 +225,7 @@ index 134f6b95c294..739fcfbde0f9 100644 for (i = 0; i < rx->num_rings; i++) { synchronize_irq(edma_ctx->intr_info.intr_rx[i]); free_irq(edma_ctx->intr_info.intr_rx[i], -@@ -560,6 +641,7 @@ void edma_destroy(struct ppe_device *ppe_dev) +@@ -560,6 +641,7 @@ void edma_destroy(struct ppe_device *ppe edma_cfg_rx_napi_delete(); edma_cfg_rx_rings_disable(); edma_cfg_rx_rings_cleanup(); @@ -237,7 +233,7 @@ index 134f6b95c294..739fcfbde0f9 100644 free_netdev(edma_ctx->dummy_dev); kfree(edma_ctx->netdev_arr); -@@ -585,6 +667,7 @@ int edma_setup(struct ppe_device *ppe_dev) +@@ -585,6 +667,7 @@ int edma_setup(struct ppe_device *ppe_de edma_ctx->hw_info = &ipq9574_hw_info; edma_ctx->ppe_dev = ppe_dev; edma_ctx->rx_buf_size = rx_buff_size; @@ -245,8 +241,6 @@ index 134f6b95c294..739fcfbde0f9 100644 /* Configure the EDMA common clocks. */ ret = edma_clock_init(); -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.h b/drivers/net/ethernet/qualcomm/ppe/edma.h -index 778df7997d9f..fb8ccbfbaf41 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma.h @@ -7,6 +7,7 @@ @@ -281,9 +275,6 @@ index 778df7997d9f..fb8ccbfbaf41 100644 }; /* Global EDMA context */ -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.c b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.c -new file mode 100644 -index 000000000000..f704c654b2cd --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.c @@ -0,0 +1,648 @@ @@ -935,9 +926,6 @@ index 000000000000..f704c654b2cd + + netdev_dbg(netdev, "Tx NAPI budget: %d\n", hw_info->napi_budget_tx); +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.h b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.h -new file mode 100644 -index 000000000000..4840c601fc86 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.h @@ -0,0 +1,28 @@ @@ -969,8 +957,6 @@ index 000000000000..4840c601fc86 +void edma_cfg_tx_rings_disable(u32 port_id); +void edma_cfg_tx_fill_per_port_tx_map(struct net_device *netdev, u32 macid); +#endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.c b/drivers/net/ethernet/qualcomm/ppe/edma_port.c -index bbb5823408fd..afa2b6479822 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.c @@ -13,6 +13,7 @@ @@ -981,7 +967,7 @@ index bbb5823408fd..afa2b6479822 100644 #include "edma_port.h" #include "ppe_regs.h" -@@ -35,6 +36,15 @@ static int edma_port_stats_alloc(struct net_device *netdev) +@@ -35,6 +36,15 @@ static int edma_port_stats_alloc(struct return -ENOMEM; } @@ -997,7 +983,7 @@ index bbb5823408fd..afa2b6479822 100644 return 0; } -@@ -43,6 +53,28 @@ static void edma_port_stats_free(struct net_device *netdev) +@@ -43,6 +53,28 @@ static void edma_port_stats_free(struct struct edma_port_priv *port_priv = (struct edma_port_priv *)netdev_priv(netdev); free_percpu(port_priv->pcpu_stats.rx_stats); @@ -1026,7 +1012,7 @@ index bbb5823408fd..afa2b6479822 100644 } static u16 __maybe_unused edma_port_select_queue(__maybe_unused struct net_device *netdev, -@@ -60,6 +92,7 @@ static int edma_port_open(struct net_device *netdev) +@@ -60,6 +92,7 @@ static int edma_port_open(struct net_dev { struct edma_port_priv *port_priv = (struct edma_port_priv *)netdev_priv(netdev); struct ppe_port *ppe_port; @@ -1034,7 +1020,7 @@ index bbb5823408fd..afa2b6479822 100644 if (!port_priv) return -EINVAL; -@@ -74,10 +107,14 @@ static int edma_port_open(struct net_device *netdev) +@@ -74,10 +107,14 @@ static int edma_port_open(struct net_dev netdev->wanted_features |= EDMA_NETDEV_FEATURES; ppe_port = port_priv->ppe_port; @@ -1049,7 +1035,7 @@ index bbb5823408fd..afa2b6479822 100644 netif_start_queue(netdev); return 0; -@@ -87,13 +124,21 @@ static int edma_port_close(struct net_device *netdev) +@@ -87,13 +124,21 @@ static int edma_port_close(struct net_de { struct edma_port_priv *port_priv = (struct edma_port_priv *)netdev_priv(netdev); struct ppe_port *ppe_port; @@ -1071,7 +1057,7 @@ index bbb5823408fd..afa2b6479822 100644 /* Phylink close. */ if (ppe_port->phylink) -@@ -137,6 +182,92 @@ static netdev_features_t edma_port_feature_check(__maybe_unused struct sk_buff * +@@ -137,6 +182,92 @@ static netdev_features_t edma_port_featu return features; } @@ -1164,7 +1150,7 @@ index bbb5823408fd..afa2b6479822 100644 static void edma_port_get_stats64(struct net_device *netdev, struct rtnl_link_stats64 *stats) { -@@ -179,6 +310,7 @@ static int edma_port_set_mac_address(struct net_device *netdev, void *macaddr) +@@ -179,6 +310,7 @@ static int edma_port_set_mac_address(str static const struct net_device_ops edma_port_netdev_ops = { .ndo_open = edma_port_open, .ndo_stop = edma_port_close, @@ -1172,7 +1158,7 @@ index bbb5823408fd..afa2b6479822 100644 .ndo_get_stats64 = edma_port_get_stats64, .ndo_set_mac_address = edma_port_set_mac_address, .ndo_validate_addr = eth_validate_addr, -@@ -199,6 +331,7 @@ void edma_port_destroy(struct ppe_port *port) +@@ -199,6 +331,7 @@ void edma_port_destroy(struct ppe_port * int port_id = port->port_id; struct net_device *netdev = edma_ctx->netdev_arr[port_id - 1]; @@ -1180,7 +1166,7 @@ index bbb5823408fd..afa2b6479822 100644 edma_port_stats_free(netdev); unregister_netdev(netdev); free_netdev(netdev); -@@ -276,6 +409,8 @@ int edma_port_setup(struct ppe_port *port) +@@ -276,6 +409,8 @@ int edma_port_setup(struct ppe_port *por */ edma_ctx->netdev_arr[port_id - 1] = netdev; @@ -1189,7 +1175,7 @@ index bbb5823408fd..afa2b6479822 100644 /* Setup phylink. */ ret = ppe_port_phylink_setup(port, netdev); if (ret) { -@@ -298,6 +433,7 @@ int edma_port_setup(struct ppe_port *port) +@@ -298,6 +433,7 @@ int edma_port_setup(struct ppe_port *por register_netdev_fail: ppe_port_phylink_destroy(port); port_phylink_setup_fail: @@ -1197,8 +1183,6 @@ index bbb5823408fd..afa2b6479822 100644 edma_ctx->netdev_arr[port_id - 1] = NULL; edma_port_stats_free(netdev); stats_alloc_fail: -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.h b/drivers/net/ethernet/qualcomm/ppe/edma_port.h -index 75f544a4f324..b67eddabd41c 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_port.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.h @@ -7,6 +7,8 @@ @@ -1210,11 +1194,10 @@ index 75f544a4f324..b67eddabd41c 100644 #define EDMA_NETDEV_FEATURES (NETIF_F_FRAGLIST \ | NETIF_F_SG \ | NETIF_F_RXCSUM \ -@@ -34,12 +36,44 @@ struct edma_port_rx_stats { - struct u64_stats_sync syncp; +@@ -35,11 +37,43 @@ struct edma_port_rx_stats { }; -+/** + /** + * struct edma_port_tx_stats - EDMA TX port per CPU stats for the port. + * @tx_pkts: Number of Tx packets + * @tx_bytes: Number of Tx bytes @@ -1244,7 +1227,7 @@ index 75f544a4f324..b67eddabd41c 100644 + struct u64_stats_sync syncp; +}; + - /** ++/** * struct edma_port_pcpu_stats - EDMA per cpu stats data structure for the port. * @rx_stats: Per CPU Rx statistics + * @tx_stats: Per CPU Tx statistics @@ -1263,9 +1246,6 @@ index 75f544a4f324..b67eddabd41c 100644 unsigned long flags; }; -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_tx.c b/drivers/net/ethernet/qualcomm/ppe/edma_tx.c -new file mode 100644 -index 000000000000..47876c142df5 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_tx.c @@ -0,0 +1,808 @@ @@ -2077,9 +2057,6 @@ index 000000000000..47876c142df5 + + return EDMA_TX_OK; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_tx.h b/drivers/net/ethernet/qualcomm/ppe/edma_tx.h -new file mode 100644 -index 000000000000..c09a4e0f6a42 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_tx.h @@ -0,0 +1,302 @@ @@ -2385,6 +2362,3 @@ index 000000000000..c09a4e0f6a42 + struct net_device *netdev, struct sk_buff **segs); + +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-42-net-ethernet-qualcomm-Add-miscellaneous-error-interr.patch b/target/linux/qualcommbe/patches-6.6/103-42-net-ethernet-qualcomm-Add-miscellaneous-error-interr.patch index df61e9f83f..a841ed2846 100644 --- a/target/linux/qualcommbe/patches-6.6/103-42-net-ethernet-qualcomm-Add-miscellaneous-error-interr.patch +++ b/target/linux/qualcommbe/patches-6.6/103-42-net-ethernet-qualcomm-Add-miscellaneous-error-interr.patch @@ -20,8 +20,6 @@ Signed-off-by: Suruchi Agarwal 5 files changed, 580 insertions(+), 2 deletions(-) create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_debugfs.c -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index b358bfd781fb..45e1b103ec7a 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -7,4 +7,4 @@ obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o @@ -30,15 +28,12 @@ index b358bfd781fb..45e1b103ec7a 100644 #EDMA -qcom-ppe-objs += edma.o edma_cfg_rx.o edma_cfg_tx.o edma_port.o edma_rx.o edma_tx.o +qcom-ppe-objs += edma.o edma_cfg_rx.o edma_cfg_tx.o edma_debugfs.o edma_port.o edma_rx.o edma_tx.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.c b/drivers/net/ethernet/qualcomm/ppe/edma.c -index 739fcfbde0f9..0e16f8ab545f 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma.c -@@ -151,6 +151,42 @@ static int edma_clock_init(void) - return 0; +@@ -152,6 +152,42 @@ static int edma_clock_init(void) } -+/** + /** + * edma_err_stats_alloc - Allocate stats memory + * + * Allocate memory for per-CPU error stats. @@ -74,10 +69,11 @@ index 739fcfbde0f9..0e16f8ab545f 100644 + } +} + - /** ++/** * edma_configure_ucast_prio_map_tbl - Configure unicast priority map table. * -@@ -191,11 +227,113 @@ static int edma_configure_ucast_prio_map_tbl(void) + * Map int_priority values to priority class and initialize +@@ -191,11 +227,113 @@ static int edma_configure_ucast_prio_map return ret; } @@ -225,7 +221,7 @@ index 739fcfbde0f9..0e16f8ab545f 100644 edma_cfg_rx_rings_disable(); -@@ -614,6 +770,7 @@ void edma_destroy(struct ppe_device *ppe_dev) +@@ -614,6 +770,7 @@ void edma_destroy(struct ppe_device *ppe edma_cfg_tx_disable_interrupts(i); edma_cfg_rx_disable_interrupts(); @@ -233,7 +229,7 @@ index 739fcfbde0f9..0e16f8ab545f 100644 /* Free IRQ for TXCMPL rings. */ for (i = 0; i < txcmpl->num_rings; i++) { -@@ -634,6 +791,10 @@ void edma_destroy(struct ppe_device *ppe_dev) +@@ -634,6 +791,10 @@ void edma_destroy(struct ppe_device *ppe } kfree(edma_rxdesc_irq_name); @@ -244,7 +240,7 @@ index 739fcfbde0f9..0e16f8ab545f 100644 kfree(edma_ctx->intr_info.intr_rx); kfree(edma_ctx->intr_info.intr_txcmpl); -@@ -699,6 +860,7 @@ int edma_setup(struct ppe_device *ppe_dev) +@@ -699,6 +860,7 @@ int edma_setup(struct ppe_device *ppe_de } edma_cfg_rx_enable_interrupts(); @@ -252,15 +248,12 @@ index 739fcfbde0f9..0e16f8ab545f 100644 dev_info(dev, "EDMA configuration successful\n"); -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.h b/drivers/net/ethernet/qualcomm/ppe/edma.h -index fb8ccbfbaf41..6500d21b9eba 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma.h -@@ -36,6 +36,30 @@ - ((((head) - (tail)) + \ +@@ -37,6 +37,30 @@ (max)) & ((max) - 1)); }) -+/** + /** + * struct edma_err_stats - EDMA error stats + * @edma_axi_read_err: AXI read error + * @edma_axi_write_err: AXI write error @@ -284,9 +277,10 @@ index fb8ccbfbaf41..6500d21b9eba 100644 + struct u64_stats_sync syncp; +}; + - /** ++/** * struct edma_ring_info - EDMA ring data structure. * @max_rings: Maximum number of rings + * @ring_start: Ring start ID @@ -97,6 +121,7 @@ struct edma_intr_info { * @rx_rings: Rx Desc Rings, SW is consumer * @tx_rings: Tx Descriptor Ring, SW is producer @@ -315,9 +309,6 @@ index fb8ccbfbaf41..6500d21b9eba 100644 +void edma_debugfs_teardown(void); +int edma_debugfs_setup(struct ppe_device *ppe_dev); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_debugfs.c b/drivers/net/ethernet/qualcomm/ppe/edma_debugfs.c -new file mode 100644 -index 000000000000..671062d4ee72 --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_debugfs.c @@ -0,0 +1,370 @@ @@ -691,8 +682,6 @@ index 000000000000..671062d4ee72 + stats_dentry = NULL; + return -ENOMEM; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c b/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c -index 1cd4c491e724..f325fcf1e17e 100644 --- a/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c +++ b/drivers/net/ethernet/qualcomm/ppe/ppe_debugfs.c @@ -6,9 +6,11 @@ @@ -707,7 +696,7 @@ index 1cd4c491e724..f325fcf1e17e 100644 #include "ppe.h" #include "ppe_config.h" #include "ppe_debugfs.h" -@@ -711,15 +713,30 @@ static const struct file_operations ppe_debugfs_packet_counter_fops = { +@@ -711,15 +713,30 @@ static const struct file_operations ppe_ void ppe_debugfs_setup(struct ppe_device *ppe_dev) { @@ -738,6 +727,3 @@ index 1cd4c491e724..f325fcf1e17e 100644 debugfs_remove_recursive(ppe_dev->debugfs_root); ppe_dev->debugfs_root = NULL; } --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-43-net-ethernet-qualcomm-Add-ethtool-support-for-EDMA.patch b/target/linux/qualcommbe/patches-6.6/103-43-net-ethernet-qualcomm-Add-ethtool-support-for-EDMA.patch index c4fd0aefcd..bbd0746a03 100644 --- a/target/linux/qualcommbe/patches-6.6/103-43-net-ethernet-qualcomm-Add-ethtool-support-for-EDMA.patch +++ b/target/linux/qualcommbe/patches-6.6/103-43-net-ethernet-qualcomm-Add-ethtool-support-for-EDMA.patch @@ -15,8 +15,6 @@ Signed-off-by: Pavithra R 4 files changed, 297 insertions(+), 1 deletion(-) create mode 100644 drivers/net/ethernet/qualcomm/ppe/edma_ethtool.c -diff --git a/drivers/net/ethernet/qualcomm/ppe/Makefile b/drivers/net/ethernet/qualcomm/ppe/Makefile -index 45e1b103ec7a..cb9d30889d06 100644 --- a/drivers/net/ethernet/qualcomm/ppe/Makefile +++ b/drivers/net/ethernet/qualcomm/ppe/Makefile @@ -7,4 +7,4 @@ obj-$(CONFIG_QCOM_PPE) += qcom-ppe.o @@ -25,19 +23,14 @@ index 45e1b103ec7a..cb9d30889d06 100644 #EDMA -qcom-ppe-objs += edma.o edma_cfg_rx.o edma_cfg_tx.o edma_debugfs.o edma_port.o edma_rx.o edma_tx.o +qcom-ppe-objs += edma.o edma_cfg_rx.o edma_cfg_tx.o edma_debugfs.o edma_port.o edma_rx.o edma_tx.o edma_ethtool.o -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.h b/drivers/net/ethernet/qualcomm/ppe/edma.h -index 6500d21b9eba..ac6d2fcc2983 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma.h -@@ -151,4 +151,5 @@ void edma_destroy(struct ppe_device *ppe_dev); +@@ -151,4 +151,5 @@ void edma_destroy(struct ppe_device *ppe int edma_setup(struct ppe_device *ppe_dev); void edma_debugfs_teardown(void); int edma_debugfs_setup(struct ppe_device *ppe_dev); +void edma_set_ethtool_ops(struct net_device *netdev); #endif -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_ethtool.c b/drivers/net/ethernet/qualcomm/ppe/edma_ethtool.c -new file mode 100644 -index 000000000000..eabc1e11b16f --- /dev/null +++ b/drivers/net/ethernet/qualcomm/ppe/edma_ethtool.c @@ -0,0 +1,294 @@ @@ -335,11 +328,9 @@ index 000000000000..eabc1e11b16f +{ + netdev->ethtool_ops = &edma_ethtool_ops; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.c b/drivers/net/ethernet/qualcomm/ppe/edma_port.c -index afa2b6479822..0b3b769a4a49 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.c -@@ -380,6 +380,7 @@ int edma_port_setup(struct ppe_port *port) +@@ -380,6 +380,7 @@ int edma_port_setup(struct ppe_port *por netdev->priv_flags |= IFF_LIVE_ADDR_CHANGE; netdev->netdev_ops = &edma_port_netdev_ops; netdev->gso_max_segs = GSO_MAX_SEGS; @@ -347,6 +338,3 @@ index afa2b6479822..0b3b769a4a49 100644 maddr = mac_addr; if (of_get_mac_address(np, maddr)) --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-44-net-ethernet-qualcomm-Add-module-parameters-for-driv.patch b/target/linux/qualcommbe/patches-6.6/103-44-net-ethernet-qualcomm-Add-module-parameters-for-driv.patch index 48bca9dd30..91fc8082e9 100644 --- a/target/linux/qualcommbe/patches-6.6/103-44-net-ethernet-qualcomm-Add-module-parameters-for-driv.patch +++ b/target/linux/qualcommbe/patches-6.6/103-44-net-ethernet-qualcomm-Add-module-parameters-for-driv.patch @@ -19,8 +19,6 @@ Signed-off-by: Pavithra R drivers/net/ethernet/qualcomm/ppe/edma_tx.h | 4 +++ 7 files changed, 134 insertions(+), 4 deletions(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.c b/drivers/net/ethernet/qualcomm/ppe/edma.c -index 0e16f8ab545f..ae9ca528fd55 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma.c @@ -38,6 +38,38 @@ static int rx_buff_size; @@ -62,7 +60,7 @@ index 0e16f8ab545f..ae9ca528fd55 100644 /* Priority to multi-queue mapping. */ static u8 edma_pri_map[PPE_QUEUE_INTER_PRI_NUM] = { 0, 1, 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7}; -@@ -828,7 +860,10 @@ int edma_setup(struct ppe_device *ppe_dev) +@@ -828,7 +860,10 @@ int edma_setup(struct ppe_device *ppe_de edma_ctx->hw_info = &ipq9574_hw_info; edma_ctx->ppe_dev = ppe_dev; edma_ctx->rx_buf_size = rx_buff_size; @@ -73,11 +71,9 @@ index 0e16f8ab545f..ae9ca528fd55 100644 /* Configure the EDMA common clocks. */ ret = edma_clock_init(); -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c -index 18e4ada6a076..bf8854976328 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c -@@ -166,6 +166,24 @@ static void edma_cfg_rx_desc_ring_configure(struct edma_rxdesc_ring *rxdesc_ring +@@ -166,6 +166,24 @@ static void edma_cfg_rx_desc_ring_config reg = EDMA_BASE_OFFSET + EDMA_REG_RXDESC_RING_SIZE(rxdesc_ring->ring_id); regmap_write(regmap, reg, data); @@ -102,7 +98,7 @@ index 18e4ada6a076..bf8854976328 100644 /* Configure the Mitigation timer */ data = EDMA_MICROSEC_TO_TIMER_UNIT(EDMA_RX_MITIGATION_TIMER_DEF, ppe_dev->clk_rate / MHZ); -@@ -176,7 +194,7 @@ static void edma_cfg_rx_desc_ring_configure(struct edma_rxdesc_ring *rxdesc_ring +@@ -176,7 +194,7 @@ static void edma_cfg_rx_desc_ring_config regmap_write(regmap, reg, data); /* Configure the Mitigation packet count */ @@ -134,8 +130,6 @@ index 18e4ada6a076..bf8854976328 100644 } /** -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h -index 3c84ef4ea85c..bd897dba286a 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h @@ -5,6 +5,15 @@ @@ -176,11 +170,9 @@ index 3c84ef4ea85c..bd897dba286a 100644 /* Default bitmap of cores for RPS to ARM cores */ #define EDMA_RX_DEFAULT_BITMAP ((1 << EDMA_MAX_CORE) - 1) -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.c b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.c -index f704c654b2cd..771acebdaf75 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.c -@@ -170,6 +170,24 @@ static void edma_cfg_txcmpl_ring_configure(struct edma_txcmpl_ring *txcmpl_ring) +@@ -170,6 +170,24 @@ static void edma_cfg_txcmpl_ring_configu reg = EDMA_BASE_OFFSET + EDMA_REG_TXCMPL_CTRL(txcmpl_ring->id); regmap_write(regmap, reg, EDMA_TXCMPL_RETMODE_OPAQUE); @@ -205,7 +197,7 @@ index f704c654b2cd..771acebdaf75 100644 /* Configure the Mitigation timer. */ data = EDMA_MICROSEC_TO_TIMER_UNIT(EDMA_TX_MITIGATION_TIMER_DEF, ppe_dev->clk_rate / MHZ); -@@ -180,7 +198,7 @@ static void edma_cfg_txcmpl_ring_configure(struct edma_txcmpl_ring *txcmpl_ring) +@@ -180,7 +198,7 @@ static void edma_cfg_txcmpl_ring_configu regmap_write(regmap, reg, data); /* Configure the Mitigation packet count. */ @@ -214,7 +206,7 @@ index f704c654b2cd..771acebdaf75 100644 << EDMA_TXCMPL_LOW_THRE_SHIFT; pr_debug("EDMA Tx mitigation packet count value: %d\n", data); reg = EDMA_BASE_OFFSET + EDMA_REG_TXCMPL_UGT_THRE(txcmpl_ring->id); -@@ -634,6 +652,13 @@ void edma_cfg_tx_napi_add(struct net_device *netdev, u32 port_id) +@@ -634,6 +652,13 @@ void edma_cfg_tx_napi_add(struct net_dev struct edma_txcmpl_ring *txcmpl_ring; u32 i, ring_idx; @@ -228,15 +220,13 @@ index f704c654b2cd..771acebdaf75 100644 /* Adding tx napi for a interface with each queue. */ for_each_possible_cpu(i) { ring_idx = ((port_id - 1) * num_possible_cpus()) + i; -@@ -644,5 +669,5 @@ void edma_cfg_tx_napi_add(struct net_device *netdev, u32 port_id) +@@ -644,5 +669,5 @@ void edma_cfg_tx_napi_add(struct net_dev netdev_dbg(netdev, "Napi added for txcmpl ring: %u\n", txcmpl_ring->id); } - netdev_dbg(netdev, "Tx NAPI budget: %d\n", hw_info->napi_budget_tx); + netdev_dbg(netdev, "Tx NAPI budget: %d\n", edma_tx_napi_budget); } -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.h b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.h -index 4840c601fc86..608bbc5f93e8 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_tx.h @@ -5,12 +5,28 @@ @@ -268,8 +258,6 @@ index 4840c601fc86..608bbc5f93e8 100644 void edma_cfg_tx_rings(void); int edma_cfg_tx_rings_alloc(void); void edma_cfg_tx_rings_cleanup(void); -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_rx.h b/drivers/net/ethernet/qualcomm/ppe/edma_rx.h -index 4a262a066808..0ef8138b4530 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_rx.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma_rx.h @@ -281,6 +281,10 @@ struct edma_rxdesc_ring { @@ -283,8 +271,6 @@ index 4a262a066808..0ef8138b4530 100644 irqreturn_t edma_rx_handle_irq(int irq, void *ctx); int edma_rx_alloc_buffer(struct edma_rxfill_ring *rxfill_ring, int alloc_count); int edma_rx_napi_poll(struct napi_struct *napi, int budget); -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_tx.h b/drivers/net/ethernet/qualcomm/ppe/edma_tx.h -index c09a4e0f6a42..c4fa63321d1f 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_tx.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma_tx.h @@ -288,6 +288,10 @@ struct edma_txcmpl_ring { @@ -298,6 +284,3 @@ index c09a4e0f6a42..c4fa63321d1f 100644 enum edma_tx_status edma_tx_ring_xmit(struct net_device *netdev, struct sk_buff *skb, struct edma_txdesc_ring *txdesc_ring, --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/103-45-net-ethernet-qualcomm-Add-sysctl-for-RPS-bitmap.patch b/target/linux/qualcommbe/patches-6.6/103-45-net-ethernet-qualcomm-Add-sysctl-for-RPS-bitmap.patch index a591b3fe99..75851e889d 100644 --- a/target/linux/qualcommbe/patches-6.6/103-45-net-ethernet-qualcomm-Add-sysctl-for-RPS-bitmap.patch +++ b/target/linux/qualcommbe/patches-6.6/103-45-net-ethernet-qualcomm-Add-sysctl-for-RPS-bitmap.patch @@ -16,11 +16,9 @@ Signed-off-by: Pavithra R .../net/ethernet/qualcomm/ppe/edma_cfg_rx.h | 4 +++ 4 files changed, 56 insertions(+) -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.c b/drivers/net/ethernet/qualcomm/ppe/edma.c -index ae9ca528fd55..428c7b134feb 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma.c -@@ -797,6 +797,11 @@ void edma_destroy(struct ppe_device *ppe_dev) +@@ -797,6 +797,11 @@ void edma_destroy(struct ppe_device *ppe struct edma_ring_info *rx = hw_info->rx; u32 i; @@ -32,7 +30,7 @@ index ae9ca528fd55..428c7b134feb 100644 /* Disable interrupts. */ for (i = 1; i <= hw_info->max_ports; i++) edma_cfg_tx_disable_interrupts(i); -@@ -840,6 +845,17 @@ void edma_destroy(struct ppe_device *ppe_dev) +@@ -840,6 +845,17 @@ void edma_destroy(struct ppe_device *ppe kfree(edma_ctx->netdev_arr); } @@ -50,7 +48,7 @@ index ae9ca528fd55..428c7b134feb 100644 /** * edma_setup - EDMA Setup. * @ppe_dev: PPE device -@@ -865,6 +881,13 @@ int edma_setup(struct ppe_device *ppe_dev) +@@ -865,6 +881,13 @@ int edma_setup(struct ppe_device *ppe_de if (tx_requeue_stop != 0) edma_ctx->tx_requeue_stop = true; @@ -64,8 +62,6 @@ index ae9ca528fd55..428c7b134feb 100644 /* Configure the EDMA common clocks. */ ret = edma_clock_init(); if (ret) { -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma.h b/drivers/net/ethernet/qualcomm/ppe/edma.h -index ac6d2fcc2983..3f3d253476f6 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma.h @@ -122,6 +122,7 @@ struct edma_intr_info { @@ -84,11 +80,9 @@ index ac6d2fcc2983..3f3d253476f6 100644 u32 rx_page_mode; u32 rx_buf_size; bool tx_requeue_stop; -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c -index bf8854976328..58021df6c950 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.c -@@ -43,6 +43,8 @@ static u32 edma_rx_ring_queue_map[][EDMA_MAX_CORE] = {{ 0, 8, 16, 24 }, +@@ -43,6 +43,8 @@ static u32 edma_rx_ring_queue_map[][EDMA { 6, 14, 22, 30 }, { 7, 15, 23, 31 }}; @@ -126,8 +120,6 @@ index bf8854976328..58021df6c950 100644 + + return ret; +} -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h -index bd897dba286a..53d2e6b39794 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h +++ b/drivers/net/ethernet/qualcomm/ppe/edma_cfg_rx.h @@ -49,6 +49,8 @@ @@ -146,6 +138,3 @@ index bd897dba286a..53d2e6b39794 100644 +int edma_cfg_rx_rps_bitmap(struct ctl_table *table, int write, + void *buffer, size_t *lenp, loff_t *ppos); #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/105-02-dt-bindings-clock-gcc-ipq9574-Add-definition-for-GPL.patch b/target/linux/qualcommbe/patches-6.6/105-02-dt-bindings-clock-gcc-ipq9574-Add-definition-for-GPL.patch index 4cb241c939..cfd923f064 100644 --- a/target/linux/qualcommbe/patches-6.6/105-02-dt-bindings-clock-gcc-ipq9574-Add-definition-for-GPL.patch +++ b/target/linux/qualcommbe/patches-6.6/105-02-dt-bindings-clock-gcc-ipq9574-Add-definition-for-GPL.patch @@ -13,8 +13,6 @@ Signed-off-by: Manikanta Mylavarapu include/dt-bindings/clock/qcom,ipq9574-gcc.h | 1 + 1 file changed, 1 insertion(+) -diff --git a/include/dt-bindings/clock/qcom,ipq9574-gcc.h b/include/dt-bindings/clock/qcom,ipq9574-gcc.h -index 52123c5a09fa..05ef3074c9da 100644 --- a/include/dt-bindings/clock/qcom,ipq9574-gcc.h +++ b/include/dt-bindings/clock/qcom,ipq9574-gcc.h @@ -220,4 +220,5 @@ @@ -23,6 +21,3 @@ index 52123c5a09fa..05ef3074c9da 100644 #define GCC_PCIE3_PIPE_CLK 213 +#define GPLL0_OUT_AUX 214 #endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/105-03-clk-qcom-gcc-ipq9574-Add-support-for-gpll0_out_aux-c.patch b/target/linux/qualcommbe/patches-6.6/105-03-clk-qcom-gcc-ipq9574-Add-support-for-gpll0_out_aux-c.patch index e90b855aae..512f842ddc 100644 --- a/target/linux/qualcommbe/patches-6.6/105-03-clk-qcom-gcc-ipq9574-Add-support-for-gpll0_out_aux-c.patch +++ b/target/linux/qualcommbe/patches-6.6/105-03-clk-qcom-gcc-ipq9574-Add-support-for-gpll0_out_aux-c.patch @@ -14,11 +14,9 @@ Signed-off-by: Manikanta Mylavarapu drivers/clk/qcom/gcc-ipq9574.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) -diff --git a/drivers/clk/qcom/gcc-ipq9574.c b/drivers/clk/qcom/gcc-ipq9574.c -index 645109f75b46..a458d69e1a98 100644 --- a/drivers/clk/qcom/gcc-ipq9574.c +++ b/drivers/clk/qcom/gcc-ipq9574.c -@@ -108,6 +108,20 @@ static struct clk_alpha_pll_postdiv gpll0 = { +@@ -108,6 +108,20 @@ static struct clk_alpha_pll_postdiv gpll }, }; @@ -39,7 +37,7 @@ index 645109f75b46..a458d69e1a98 100644 static struct clk_alpha_pll gpll4_main = { .offset = 0x22000, .regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_DEFAULT_EVO], -@@ -4222,6 +4236,7 @@ static struct clk_regmap *gcc_ipq9574_clks[] = { +@@ -4222,6 +4236,7 @@ static struct clk_regmap *gcc_ipq9574_cl [GCC_PCIE1_PIPE_CLK] = &gcc_pcie1_pipe_clk.clkr, [GCC_PCIE2_PIPE_CLK] = &gcc_pcie2_pipe_clk.clkr, [GCC_PCIE3_PIPE_CLK] = &gcc_pcie3_pipe_clk.clkr, @@ -47,6 +45,3 @@ index 645109f75b46..a458d69e1a98 100644 }; static const struct qcom_reset_map gcc_ipq9574_resets[] = { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/105-04-dt-bindings-clock-Add-ipq9574-NSSCC-clock-and-reset-.patch b/target/linux/qualcommbe/patches-6.6/105-04-dt-bindings-clock-Add-ipq9574-NSSCC-clock-and-reset-.patch index 1efd6ac098..edc0bf6a8c 100644 --- a/target/linux/qualcommbe/patches-6.6/105-04-dt-bindings-clock-Add-ipq9574-NSSCC-clock-and-reset-.patch +++ b/target/linux/qualcommbe/patches-6.6/105-04-dt-bindings-clock-Add-ipq9574-NSSCC-clock-and-reset-.patch @@ -18,9 +18,6 @@ Reviewed-by: Krzysztof Kozlowski create mode 100644 include/dt-bindings/clock/qcom,ipq9574-nsscc.h create mode 100644 include/dt-bindings/reset/qcom,ipq9574-nsscc.h -diff --git a/Documentation/devicetree/bindings/clock/qcom,ipq9574-nsscc.yaml b/Documentation/devicetree/bindings/clock/qcom,ipq9574-nsscc.yaml -new file mode 100644 -index 000000000000..14a320079dbf --- /dev/null +++ b/Documentation/devicetree/bindings/clock/qcom,ipq9574-nsscc.yaml @@ -0,0 +1,73 @@ @@ -97,9 +94,6 @@ index 000000000000..14a320079dbf + #power-domain-cells = <1>; + }; +... -diff --git a/include/dt-bindings/clock/qcom,ipq9574-nsscc.h b/include/dt-bindings/clock/qcom,ipq9574-nsscc.h -new file mode 100644 -index 000000000000..59d57d9c788c --- /dev/null +++ b/include/dt-bindings/clock/qcom,ipq9574-nsscc.h @@ -0,0 +1,152 @@ @@ -255,9 +249,6 @@ index 000000000000..59d57d9c788c +#define UBI32_PLL_MAIN 141 + +#endif -diff --git a/include/dt-bindings/reset/qcom,ipq9574-nsscc.h b/include/dt-bindings/reset/qcom,ipq9574-nsscc.h -new file mode 100644 -index 000000000000..6910db0cff51 --- /dev/null +++ b/include/dt-bindings/reset/qcom,ipq9574-nsscc.h @@ -0,0 +1,134 @@ @@ -395,6 +386,3 @@ index 000000000000..6910db0cff51 +#define NSSPORT6_RESET 123 + +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/105-05-clk-qcom-Add-NSS-clock-Controller-driver-for-IPQ9574.patch b/target/linux/qualcommbe/patches-6.6/105-05-clk-qcom-Add-NSS-clock-Controller-driver-for-IPQ9574.patch index cadb416191..f4111456d4 100644 --- a/target/linux/qualcommbe/patches-6.6/105-05-clk-qcom-Add-NSS-clock-Controller-driver-for-IPQ9574.patch +++ b/target/linux/qualcommbe/patches-6.6/105-05-clk-qcom-Add-NSS-clock-Controller-driver-for-IPQ9574.patch @@ -17,11 +17,9 @@ Signed-off-by: Manikanta Mylavarapu 3 files changed, 3088 insertions(+) create mode 100644 drivers/clk/qcom/nsscc-ipq9574.c -diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig -index a3e2a09e2105..b9a5cc9fd8c8 100644 --- a/drivers/clk/qcom/Kconfig +++ b/drivers/clk/qcom/Kconfig -@@ -255,6 +255,13 @@ config IPQ_GCC_9574 +@@ -215,6 +215,13 @@ config IPQ_GCC_9574 i2c, USB, SD/eMMC, etc. Select this for the root clock of ipq9574. @@ -34,12 +32,10 @@ index a3e2a09e2105..b9a5cc9fd8c8 100644 + config IPQ_NSSCC_QCA8K tristate "QCA8K(QCA8386 or QCA8084) NSS Clock Controller" - depends on MDIO_BUS -diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile -index 2b378667a63f..65b825a54c45 100644 + depends on MDIO_BUS || COMPILE_TEST --- a/drivers/clk/qcom/Makefile +++ b/drivers/clk/qcom/Makefile -@@ -36,6 +36,7 @@ obj-$(CONFIG_IPQ_GCC_6018) += gcc-ipq6018.o +@@ -31,6 +31,7 @@ obj-$(CONFIG_IPQ_GCC_6018) += gcc-ipq601 obj-$(CONFIG_IPQ_GCC_806X) += gcc-ipq806x.o obj-$(CONFIG_IPQ_GCC_8074) += gcc-ipq8074.o obj-$(CONFIG_IPQ_GCC_9574) += gcc-ipq9574.o @@ -47,9 +43,6 @@ index 2b378667a63f..65b825a54c45 100644 obj-$(CONFIG_IPQ_LCC_806X) += lcc-ipq806x.o obj-$(CONFIG_IPQ_NSSCC_QCA8K) += nsscc-qca8k.o obj-$(CONFIG_MDM_GCC_9607) += gcc-mdm9607.o -diff --git a/drivers/clk/qcom/nsscc-ipq9574.c b/drivers/clk/qcom/nsscc-ipq9574.c -new file mode 100644 -index 000000000000..d3e9aa391236 --- /dev/null +++ b/drivers/clk/qcom/nsscc-ipq9574.c @@ -0,0 +1,3080 @@ @@ -3133,6 +3126,3 @@ index 000000000000..d3e9aa391236 + +MODULE_DESCRIPTION("QTI NSS_CC IPQ9574 Driver"); +MODULE_LICENSE("GPL"); --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/105-06-arm64-dts-qcom-ipq9574-Add-nsscc-node.patch b/target/linux/qualcommbe/patches-6.6/105-06-arm64-dts-qcom-ipq9574-Add-nsscc-node.patch index bf3f72449f..fd5ed0504b 100644 --- a/target/linux/qualcommbe/patches-6.6/105-06-arm64-dts-qcom-ipq9574-Add-nsscc-node.patch +++ b/target/linux/qualcommbe/patches-6.6/105-06-arm64-dts-qcom-ipq9574-Add-nsscc-node.patch @@ -11,11 +11,9 @@ Signed-off-by: Manikanta Mylavarapu arch/arm64/boot/dts/qcom/ipq9574.dtsi | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 08a82a5cf667..c113fff22f73 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -11,6 +11,8 @@ +@@ -12,6 +12,8 @@ #include #include #include @@ -24,7 +22,7 @@ index 08a82a5cf667..c113fff22f73 100644 #include / { -@@ -756,6 +758,26 @@ frame@b128000 { +@@ -804,6 +806,26 @@ status = "disabled"; }; }; @@ -51,6 +49,3 @@ index 08a82a5cf667..c113fff22f73 100644 }; thermal-zones { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/106-arm64-dts-qcom-fix-USB-vdda-pll-supply-for-ipq9574-r.patch b/target/linux/qualcommbe/patches-6.6/106-arm64-dts-qcom-fix-USB-vdda-pll-supply-for-ipq9574-r.patch index cd33abda68..0f36d32cfa 100644 --- a/target/linux/qualcommbe/patches-6.6/106-arm64-dts-qcom-fix-USB-vdda-pll-supply-for-ipq9574-r.patch +++ b/target/linux/qualcommbe/patches-6.6/106-arm64-dts-qcom-fix-USB-vdda-pll-supply-for-ipq9574-r.patch @@ -13,11 +13,9 @@ Signed-off-by: Christian Marangi arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -index 13b623603d37..68b71437c2b9 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -@@ -249,7 +249,7 @@ ipq9574_s1: s1 { +@@ -75,7 +75,7 @@ regulator-max-microvolt = <1075000>; }; @@ -26,7 +24,7 @@ index 13b623603d37..68b71437c2b9 100644 regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-always-on; -@@ -290,7 +290,7 @@ &usb_0_dwc3 { +@@ -102,7 +102,7 @@ }; &usb_0_qmpphy { @@ -35,7 +33,7 @@ index 13b623603d37..68b71437c2b9 100644 vdda-phy-supply = <®ulator_fixed_0p925>; status = "okay"; -@@ -298,7 +298,7 @@ &usb_0_qmpphy { +@@ -110,7 +110,7 @@ &usb_0_qusbphy { vdd-supply = <®ulator_fixed_0p925>; @@ -44,6 +42,3 @@ index 13b623603d37..68b71437c2b9 100644 vdda-phy-dpdm-supply = <®ulator_fixed_3p3>; status = "okay"; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/200-01-arm64-dts-qcom-ipq9574-Add-PCS-UNIPHY-device-tree-su.patch b/target/linux/qualcommbe/patches-6.6/200-01-arm64-dts-qcom-ipq9574-Add-PCS-UNIPHY-device-tree-su.patch index 6f4a69a6ae..c020957aa7 100644 --- a/target/linux/qualcommbe/patches-6.6/200-01-arm64-dts-qcom-ipq9574-Add-PCS-UNIPHY-device-tree-su.patch +++ b/target/linux/qualcommbe/patches-6.6/200-01-arm64-dts-qcom-ipq9574-Add-PCS-UNIPHY-device-tree-su.patch @@ -19,8 +19,6 @@ Signed-off-by: Lei Wei arch/arm64/boot/dts/qcom/ipq9574.dtsi | 110 +++++++++++++++++++++++++- 1 file changed, 109 insertions(+), 1 deletion(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 02cf318e3d17..ce3a1b5d70ea 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi @@ -3,7 +3,7 @@ @@ -32,7 +30,7 @@ index 02cf318e3d17..ce3a1b5d70ea 100644 */ #include -@@ -776,6 +776,114 @@ frame@b128000 { +@@ -826,6 +826,114 @@ #power-domain-cells = <1>; #interconnect-cells = <1>; }; @@ -147,6 +145,3 @@ index 02cf318e3d17..ce3a1b5d70ea 100644 }; thermal-zones { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/200-02-arm64-dts-qcom-Add-IPQ9574-MDIO-device-node.patch b/target/linux/qualcommbe/patches-6.6/200-02-arm64-dts-qcom-Add-IPQ9574-MDIO-device-node.patch index 01ed26dacd..ff16521d91 100644 --- a/target/linux/qualcommbe/patches-6.6/200-02-arm64-dts-qcom-Add-IPQ9574-MDIO-device-node.patch +++ b/target/linux/qualcommbe/patches-6.6/200-02-arm64-dts-qcom-Add-IPQ9574-MDIO-device-node.patch @@ -13,11 +13,9 @@ Signed-off-by: Luo Jie arch/arm64/boot/dts/qcom/ipq9574.dtsi | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 07a96d26b359..ef82935e7ef5 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -256,6 +256,8 @@ rng: rng@e3000 { +@@ -251,6 +251,8 @@ mdio: mdio@90000 { compatible = "qcom,ipq9574-mdio", "qcom,ipq4019-mdio"; reg = <0x00090000 0x64>; @@ -26,7 +24,7 @@ index 07a96d26b359..ef82935e7ef5 100644 #address-cells = <1>; #size-cells = <0>; clocks = <&gcc GCC_MDIO_AHB_CLK>; -@@ -315,6 +317,22 @@ tlmm: pinctrl@1000000 { +@@ -322,6 +324,22 @@ interrupt-controller; #interrupt-cells = <2>; @@ -49,6 +47,3 @@ index 07a96d26b359..ef82935e7ef5 100644 uart2_pins: uart2-state { pins = "gpio34", "gpio35"; function = "blsp2_uart"; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/200-03-arm64-dts-qcom-Add-IPQ9574-PPE-base-device-node.patch b/target/linux/qualcommbe/patches-6.6/200-03-arm64-dts-qcom-Add-IPQ9574-PPE-base-device-node.patch index 49c1ef3fa2..f33bb0ebdd 100644 --- a/target/linux/qualcommbe/patches-6.6/200-03-arm64-dts-qcom-Add-IPQ9574-PPE-base-device-node.patch +++ b/target/linux/qualcommbe/patches-6.6/200-03-arm64-dts-qcom-Add-IPQ9574-PPE-base-device-node.patch @@ -13,11 +13,9 @@ Signed-off-by: Luo Jie arch/arm64/boot/dts/qcom/ipq9574.dtsi | 38 +++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index ce3a1b5d70ea..07a96d26b359 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -884,6 +884,44 @@ pcsuniphy2_ch0: uniphy-ch@0 { +@@ -952,6 +952,44 @@ "ch_tx"; }; }; @@ -62,6 +60,3 @@ index ce3a1b5d70ea..07a96d26b359 100644 }; thermal-zones { --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/200-04-arm64-dts-qcom-Add-EDMA-node-for-IPQ9574.patch b/target/linux/qualcommbe/patches-6.6/200-04-arm64-dts-qcom-Add-EDMA-node-for-IPQ9574.patch index 61f7d376d8..8c3a0ac6e4 100644 --- a/target/linux/qualcommbe/patches-6.6/200-04-arm64-dts-qcom-Add-EDMA-node-for-IPQ9574.patch +++ b/target/linux/qualcommbe/patches-6.6/200-04-arm64-dts-qcom-Add-EDMA-node-for-IPQ9574.patch @@ -12,11 +12,9 @@ Signed-off-by: Pavithra R arch/arm64/boot/dts/qcom/ipq9574.dtsi | 68 +++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index ef82935e7ef5..61f9a7ee7282 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -939,6 +939,74 @@ &gcc SLAVE_NSSNOC_MEMNOC>, +@@ -989,6 +989,74 @@ "nssnoc_memnoc", "memnoc_nssnoc", "memnoc_nssnoc_1"; @@ -91,6 +89,3 @@ index ef82935e7ef5..61f9a7ee7282 100644 }; }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/200-05-arm64-dts-qcom-Add-IPQ9574-RDP433-port-node.patch b/target/linux/qualcommbe/patches-6.6/200-05-arm64-dts-qcom-Add-IPQ9574-RDP433-port-node.patch index 73c0c12493..d48b34293d 100644 --- a/target/linux/qualcommbe/patches-6.6/200-05-arm64-dts-qcom-Add-IPQ9574-RDP433-port-node.patch +++ b/target/linux/qualcommbe/patches-6.6/200-05-arm64-dts-qcom-Add-IPQ9574-RDP433-port-node.patch @@ -16,8 +16,6 @@ Signed-off-by: Lei Wei arch/arm64/boot/dts/qcom/ipq9574.dtsi | 2 +- 2 files changed, 169 insertions(+), 2 deletions(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -index 1bb8d96c9a82..1bbe4c258c15 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts @@ -3,11 +3,13 @@ @@ -29,13 +27,13 @@ index 1bb8d96c9a82..1bbe4c258c15 100644 */ /dts-v1/; - + +#include + #include "ipq9574-rdp-common.dtsi" - + / { -@@ -15,6 +15,46 @@ / { +@@ -15,6 +17,46 @@ compatible = "qcom,ipq9574-ap-al02-c7", "qcom,ipq9574"; }; @@ -82,8 +80,8 @@ index 1bb8d96c9a82..1bbe4c258c15 100644 &sdhc_1 { pinctrl-0 = <&sdc_default_state>; pinctrl-names = "default"; -@@ -60,3 +100,130 @@ rclk-pins { - }; +@@ -103,3 +145,130 @@ + nand-ecc-step-size = <512>; }; }; + @@ -213,11 +211,9 @@ index 1bb8d96c9a82..1bbe4c258c15 100644 + }; + }; +}; -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 61f9a7ee7282..5c7b47979b79 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -@@ -903,7 +903,7 @@ pcsuniphy2_ch0: uniphy-ch@0 { +@@ -953,7 +953,7 @@ }; }; @@ -226,6 +222,3 @@ index 61f9a7ee7282..5c7b47979b79 100644 compatible = "qcom,ipq9574-ppe"; reg = <0x3a000000 0xbef800>; ranges; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/300-dt-bindings-clock-Add-clock-ID-for-IPQ-PCS-UNIPHY.patch b/target/linux/qualcommbe/patches-6.6/300-dt-bindings-clock-Add-clock-ID-for-IPQ-PCS-UNIPHY.patch index c33bee9f02..a4aafc2fea 100644 --- a/target/linux/qualcommbe/patches-6.6/300-dt-bindings-clock-Add-clock-ID-for-IPQ-PCS-UNIPHY.patch +++ b/target/linux/qualcommbe/patches-6.6/300-dt-bindings-clock-Add-clock-ID-for-IPQ-PCS-UNIPHY.patch @@ -13,9 +13,6 @@ Signed-off-by: Christian Marangi 1 file changed, 13 insertions(+) create mode 100644 include/dt-bindings/clock/qcom,ipq-pcs-uniphy.h -diff --git a/include/dt-bindings/clock/qcom,ipq-pcs-uniphy.h b/include/dt-bindings/clock/qcom,ipq-pcs-uniphy.h -new file mode 100644 -index 000000000000..c47d7191cda5 --- /dev/null +++ b/include/dt-bindings/clock/qcom,ipq-pcs-uniphy.h @@ -0,0 +1,13 @@ @@ -32,6 +29,3 @@ index 000000000000..c47d7191cda5 +#define UNIPHY_NSS_TX_CLK 1 + +#endif --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/301-net-ethernet-qualcomm-Add-support-for-label-property.patch b/target/linux/qualcommbe/patches-6.6/301-net-ethernet-qualcomm-Add-support-for-label-property.patch index 2fb1260256..85a7bd6cd3 100644 --- a/target/linux/qualcommbe/patches-6.6/301-net-ethernet-qualcomm-Add-support-for-label-property.patch +++ b/target/linux/qualcommbe/patches-6.6/301-net-ethernet-qualcomm-Add-support-for-label-property.patch @@ -15,11 +15,9 @@ Signed-off-by: Christian Marangi drivers/net/ethernet/qualcomm/ppe/edma_port.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) -diff --git a/drivers/net/ethernet/qualcomm/ppe/edma_port.c b/drivers/net/ethernet/qualcomm/ppe/edma_port.c -index 0b3b769a4a49..6730cee5d6c9 100644 --- a/drivers/net/ethernet/qualcomm/ppe/edma_port.c +++ b/drivers/net/ethernet/qualcomm/ppe/edma_port.c -@@ -355,13 +355,25 @@ int edma_port_setup(struct ppe_port *port) +@@ -355,13 +355,25 @@ int edma_port_setup(struct ppe_port *por int port_id = port->port_id; struct net_device *netdev; u8 mac_addr[ETH_ALEN]; @@ -48,6 +46,3 @@ index 0b3b769a4a49..6730cee5d6c9 100644 return -ENOMEM; } --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/302-arm64-dts-qcom-Add-missing-clock-for-nsscc-from-pcs-.patch b/target/linux/qualcommbe/patches-6.6/302-arm64-dts-qcom-Add-missing-clock-for-nsscc-from-pcs-.patch index 34247e9c72..c7b7ea14b6 100644 --- a/target/linux/qualcommbe/patches-6.6/302-arm64-dts-qcom-Add-missing-clock-for-nsscc-from-pcs-.patch +++ b/target/linux/qualcommbe/patches-6.6/302-arm64-dts-qcom-Add-missing-clock-for-nsscc-from-pcs-.patch @@ -11,8 +11,6 @@ Signed-off-by: Christian Marangi arch/arm64/boot/dts/qcom/ipq9574.dtsi | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574.dtsi b/arch/arm64/boot/dts/qcom/ipq9574.dtsi -index 5aa456bc0e03..2785e1ba1ca9 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574.dtsi @@ -14,6 +14,7 @@ @@ -23,7 +21,7 @@ index 5aa456bc0e03..2785e1ba1ca9 100644 #include / { -@@ -809,12 +810,12 @@ nsscc: clock-controller@39b00000 { +@@ -832,12 +833,12 @@ <&cmn_pll NSS_1200MHZ_CLK>, <&cmn_pll PPE_353MHZ_CLK>, <&gcc GPLL0_OUT_AUX>, @@ -42,6 +40,3 @@ index 5aa456bc0e03..2785e1ba1ca9 100644 <&gcc GCC_NSSCC_CLK>; #clock-cells = <1>; #reset-cells = <1>; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/303-arm64-dts-qcom-add-partition-table-for-ipq9574-rdp-c.patch b/target/linux/qualcommbe/patches-6.6/303-arm64-dts-qcom-add-partition-table-for-ipq9574-rdp-c.patch index c8917fa34e..526d559e34 100644 --- a/target/linux/qualcommbe/patches-6.6/303-arm64-dts-qcom-add-partition-table-for-ipq9574-rdp-c.patch +++ b/target/linux/qualcommbe/patches-6.6/303-arm64-dts-qcom-add-partition-table-for-ipq9574-rdp-c.patch @@ -11,11 +11,9 @@ Signed-off-by: Christian Marangi .../boot/dts/qcom/ipq9574-rdp-common.dtsi | 146 +++++++++++++++++- 1 file changed, 145 insertions(+), 1 deletion(-) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -index 9a8692377176..13b623603d37 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp-common.dtsi -@@ -74,11 +74,155 @@ &blsp1_spi0 { +@@ -44,11 +44,155 @@ status = "okay"; flash@0 { @@ -172,6 +170,3 @@ index 9a8692377176..13b623603d37 100644 }; }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/304-dts-qcom-add-AQR-NVMEM-node-for-IPQ9574-RDP433-board.patch b/target/linux/qualcommbe/patches-6.6/304-dts-qcom-add-AQR-NVMEM-node-for-IPQ9574-RDP433-board.patch index b37a9d3bb7..4de13b73ab 100644 --- a/target/linux/qualcommbe/patches-6.6/304-dts-qcom-add-AQR-NVMEM-node-for-IPQ9574-RDP433-board.patch +++ b/target/linux/qualcommbe/patches-6.6/304-dts-qcom-add-AQR-NVMEM-node-for-IPQ9574-RDP433-board.patch @@ -11,11 +11,9 @@ Signed-off-by: Christian Marangi arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts | 6 ++++++ 1 file changed, 6 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -index d56abe92c24e..44407ebbe06a 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -@@ -49,11 +49,17 @@ phy3: ethernet-phy@13 { +@@ -49,11 +49,17 @@ phy4: ethernet-phy@8 { compatible ="ethernet-phy-ieee802.3-c45"; reg = <8>; @@ -33,6 +31,3 @@ index d56abe92c24e..44407ebbe06a 100644 }; }; --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/305-net-ethernet-qualcomm-ppe-Fix-unmet-dependency-with-.patch b/target/linux/qualcommbe/patches-6.6/305-net-ethernet-qualcomm-ppe-Fix-unmet-dependency-with-.patch index a2c7061438..8cb83ae4dc 100644 --- a/target/linux/qualcommbe/patches-6.6/305-net-ethernet-qualcomm-ppe-Fix-unmet-dependency-with-.patch +++ b/target/linux/qualcommbe/patches-6.6/305-net-ethernet-qualcomm-ppe-Fix-unmet-dependency-with-.patch @@ -18,8 +18,6 @@ Signed-off-by: Christian Marangi drivers/net/ethernet/qualcomm/Kconfig | 1 - 1 file changed, 1 deletion(-) -diff --git a/drivers/net/ethernet/qualcomm/Kconfig b/drivers/net/ethernet/qualcomm/Kconfig -index a96f6acd4561..364d7e8ea7bf 100644 --- a/drivers/net/ethernet/qualcomm/Kconfig +++ b/drivers/net/ethernet/qualcomm/Kconfig @@ -68,7 +68,6 @@ config QCOM_PPE @@ -30,6 +28,3 @@ index a96f6acd4561..364d7e8ea7bf 100644 help This driver supports the Qualcomm Technologies, Inc. packet process engine (PPE) available with IPQ SoC. The PPE houses --- -2.45.2 - diff --git a/target/linux/qualcommbe/patches-6.6/900-arm64-dts-qcom-Add-label-to-EDMA-port-for-IPQ9574-RD.patch b/target/linux/qualcommbe/patches-6.6/900-arm64-dts-qcom-Add-label-to-EDMA-port-for-IPQ9574-RD.patch index c5815a407d..f8c95d28d6 100644 --- a/target/linux/qualcommbe/patches-6.6/900-arm64-dts-qcom-Add-label-to-EDMA-port-for-IPQ9574-RD.patch +++ b/target/linux/qualcommbe/patches-6.6/900-arm64-dts-qcom-Add-label-to-EDMA-port-for-IPQ9574-RD.patch @@ -10,11 +10,9 @@ Signed-off-by: Christian Marangi arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts | 6 ++++++ 1 file changed, 6 insertions(+) -diff --git a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -index f835ff9f4b28..d56abe92c24e 100644 --- a/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts +++ b/arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts -@@ -112,6 +112,7 @@ port@1 { +@@ -161,6 +161,7 @@ reg = <1>; phy-mode = "qsgmii"; managed = "in-band-status"; @@ -22,7 +20,7 @@ index f835ff9f4b28..d56abe92c24e 100644 phy-handle = <&phy0>; pcs-handle = <&pcsuniphy0_ch0>; clocks = <&nsscc NSS_CC_PORT1_MAC_CLK>, -@@ -132,6 +133,7 @@ port@2 { +@@ -181,6 +182,7 @@ reg = <2>; phy-mode = "qsgmii"; managed = "in-band-status"; @@ -30,7 +28,7 @@ index f835ff9f4b28..d56abe92c24e 100644 phy-handle = <&phy1>; pcs-handle = <&pcsuniphy0_ch1>; clocks = <&nsscc NSS_CC_PORT2_MAC_CLK>, -@@ -152,6 +154,7 @@ port@3 { +@@ -201,6 +203,7 @@ reg = <3>; phy-mode = "qsgmii"; managed = "in-band-status"; @@ -38,7 +36,7 @@ index f835ff9f4b28..d56abe92c24e 100644 phy-handle = <&phy2>; pcs-handle = <&pcsuniphy0_ch2>; clocks = <&nsscc NSS_CC_PORT3_MAC_CLK>, -@@ -172,6 +175,7 @@ port@4 { +@@ -221,6 +224,7 @@ reg = <4>; phy-mode = "qsgmii"; managed = "in-band-status"; @@ -46,7 +44,7 @@ index f835ff9f4b28..d56abe92c24e 100644 phy-handle = <&phy3>; pcs-handle = <&pcsuniphy0_ch3>; clocks = <&nsscc NSS_CC_PORT4_MAC_CLK>, -@@ -192,6 +196,7 @@ port@5 { +@@ -241,6 +245,7 @@ reg = <5>; phy-mode = "usxgmii"; managed = "in-band-status"; @@ -54,7 +52,7 @@ index f835ff9f4b28..d56abe92c24e 100644 phy-handle = <&phy4>; pcs-handle = <&pcsuniphy1_ch0>; clocks = <&nsscc NSS_CC_PORT5_MAC_CLK>, -@@ -212,6 +217,7 @@ port@6 { +@@ -261,6 +266,7 @@ reg = <6>; phy-mode = "usxgmii"; managed = "in-band-status"; @@ -62,6 +60,3 @@ index f835ff9f4b28..d56abe92c24e 100644 phy-handle = <&phy5>; pcs-handle = <&pcsuniphy2_ch0>; clocks = <&nsscc NSS_CC_PORT6_MAC_CLK>, --- -2.45.2 - -- 2.30.2