Loading arch/arm64/boot/dts/qcom/sm8150-sdx50m.dtsi +4 −0 Original line number Diff line number Diff line Loading @@ -249,6 +249,10 @@ }; &soc { ipa_hw: qcom,ipa@1e00000 { qcom,ipa-mhi-proxy; }; imp: qcom,ipa-mhi-proxy { compatible = "qcom,ipa-mhi-proxy"; qcom,mhi-chdb-base = <0x40300300>; Loading drivers/platform/msm/ipa/ipa_v3/ipa.c +8 −0 Original line number Diff line number Diff line Loading @@ -6216,6 +6216,7 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p, ipa3_ctx->ipa_endp_delay_wa = resource_p->ipa_endp_delay_wa; ipa3_ctx->secure_debug_check_action = resource_p->secure_debug_check_action; ipa3_ctx->ipa_mhi_proxy = resource_p->ipa_mhi_proxy; if (ipa3_ctx->secure_debug_check_action == USE_SCM) { if (ipa_is_mem_dump_allowed()) Loading Loading @@ -7013,6 +7014,13 @@ static int get_ipa_dts_configuration(struct platform_device *pdev, ipa_drv_res->tethered_flow_control ? "True" : "False"); ipa_drv_res->ipa_mhi_proxy = of_property_read_bool(pdev->dev.of_node, "qcom,ipa-mhi-proxy"); IPADBG(": Use mhi proxy = %s\n", ipa_drv_res->ipa_mhi_proxy ? "True" : "False"); /* Get IPA wrapper address */ resource = platform_get_resource_byname(pdev, IORESOURCE_MEM, "ipa-base"); Loading drivers/platform/msm/ipa/ipa_v3/ipa_i.h +2 −0 Original line number Diff line number Diff line Loading @@ -1904,6 +1904,7 @@ struct ipa3_context { bool fw_loaded; struct IpaHwOffloadStatsAllocCmdData_t gsi_info[IPA_HW_PROTOCOL_MAX]; bool ipa_mhi_proxy; }; struct ipa3_plat_drv_res { Loading Loading @@ -1949,6 +1950,7 @@ struct ipa3_plat_drv_res { bool do_non_tn_collection_on_crash; bool ipa_endp_delay_wa; u32 secure_debug_check_action; bool ipa_mhi_proxy; }; /** Loading drivers/platform/msm/ipa/ipa_v3/rmnet_ipa.c +4 −3 Original line number Diff line number Diff line Loading @@ -3023,6 +3023,7 @@ static int ipa3_lcl_mdm_ssr_notifier_cb(struct notifier_block *this, ipa_stop_polling_stats(); if (atomic_read(&rmnet_ipa3_ctx->is_initialized)) platform_driver_unregister(&rmnet_ipa_driver); if (ipa3_ctx->ipa_mhi_proxy) imp_handle_modem_shutdown(); if (atomic_read(&rmnet_ipa3_ctx->is_ssr) && ipa3_ctx->ipa_hw_type >= IPA_HW_v4_0) Loading Loading @@ -4050,7 +4051,7 @@ void ipa3_q6_handshake_complete(bool ssr_bootup) */ rmnet_ipa_get_network_stats_and_update(); } if (ipa3_ctx->ipa_mhi_proxy) imp_handle_modem_ready(); } Loading Loading
arch/arm64/boot/dts/qcom/sm8150-sdx50m.dtsi +4 −0 Original line number Diff line number Diff line Loading @@ -249,6 +249,10 @@ }; &soc { ipa_hw: qcom,ipa@1e00000 { qcom,ipa-mhi-proxy; }; imp: qcom,ipa-mhi-proxy { compatible = "qcom,ipa-mhi-proxy"; qcom,mhi-chdb-base = <0x40300300>; Loading
drivers/platform/msm/ipa/ipa_v3/ipa.c +8 −0 Original line number Diff line number Diff line Loading @@ -6216,6 +6216,7 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p, ipa3_ctx->ipa_endp_delay_wa = resource_p->ipa_endp_delay_wa; ipa3_ctx->secure_debug_check_action = resource_p->secure_debug_check_action; ipa3_ctx->ipa_mhi_proxy = resource_p->ipa_mhi_proxy; if (ipa3_ctx->secure_debug_check_action == USE_SCM) { if (ipa_is_mem_dump_allowed()) Loading Loading @@ -7013,6 +7014,13 @@ static int get_ipa_dts_configuration(struct platform_device *pdev, ipa_drv_res->tethered_flow_control ? "True" : "False"); ipa_drv_res->ipa_mhi_proxy = of_property_read_bool(pdev->dev.of_node, "qcom,ipa-mhi-proxy"); IPADBG(": Use mhi proxy = %s\n", ipa_drv_res->ipa_mhi_proxy ? "True" : "False"); /* Get IPA wrapper address */ resource = platform_get_resource_byname(pdev, IORESOURCE_MEM, "ipa-base"); Loading
drivers/platform/msm/ipa/ipa_v3/ipa_i.h +2 −0 Original line number Diff line number Diff line Loading @@ -1904,6 +1904,7 @@ struct ipa3_context { bool fw_loaded; struct IpaHwOffloadStatsAllocCmdData_t gsi_info[IPA_HW_PROTOCOL_MAX]; bool ipa_mhi_proxy; }; struct ipa3_plat_drv_res { Loading Loading @@ -1949,6 +1950,7 @@ struct ipa3_plat_drv_res { bool do_non_tn_collection_on_crash; bool ipa_endp_delay_wa; u32 secure_debug_check_action; bool ipa_mhi_proxy; }; /** Loading
drivers/platform/msm/ipa/ipa_v3/rmnet_ipa.c +4 −3 Original line number Diff line number Diff line Loading @@ -3023,6 +3023,7 @@ static int ipa3_lcl_mdm_ssr_notifier_cb(struct notifier_block *this, ipa_stop_polling_stats(); if (atomic_read(&rmnet_ipa3_ctx->is_initialized)) platform_driver_unregister(&rmnet_ipa_driver); if (ipa3_ctx->ipa_mhi_proxy) imp_handle_modem_shutdown(); if (atomic_read(&rmnet_ipa3_ctx->is_ssr) && ipa3_ctx->ipa_hw_type >= IPA_HW_v4_0) Loading Loading @@ -4050,7 +4051,7 @@ void ipa3_q6_handshake_complete(bool ssr_bootup) */ rmnet_ipa_get_network_stats_and_update(); } if (ipa3_ctx->ipa_mhi_proxy) imp_handle_modem_ready(); } Loading