Merge 75044ebe4b
on remote branch
Change-Id: Id5b93554bcb8b960420e064a381244e684daf312
This commit is contained in:
commit
de82408521
@ -5384,6 +5384,7 @@ void ipa3_enable_clks(void)
|
|||||||
|
|
||||||
idx = ipa3_get_bus_vote();
|
idx = ipa3_get_bus_vote();
|
||||||
|
|
||||||
|
IPADBG_CLK("IPA ICC Voting for BW Started\n");
|
||||||
for (i = 0; i < ipa3_ctx->icc_num_paths; i++) {
|
for (i = 0; i < ipa3_ctx->icc_num_paths; i++) {
|
||||||
if (ipa3_ctx->ctrl->icc_path[i] &&
|
if (ipa3_ctx->ctrl->icc_path[i] &&
|
||||||
icc_set_bw(
|
icc_set_bw(
|
||||||
@ -5391,8 +5392,13 @@ void ipa3_enable_clks(void)
|
|||||||
ipa3_ctx->icc_clk[idx][i][IPA_ICC_AB],
|
ipa3_ctx->icc_clk[idx][i][IPA_ICC_AB],
|
||||||
ipa3_ctx->icc_clk[idx][i][IPA_ICC_IB]))
|
ipa3_ctx->icc_clk[idx][i][IPA_ICC_IB]))
|
||||||
WARN(1, "path %d bus scaling failed", i);
|
WARN(1, "path %d bus scaling failed", i);
|
||||||
|
IPADBG_CLK("IPA ICC Voting for BW %d Path Completed\n", i);
|
||||||
}
|
}
|
||||||
|
IPADBG_CLK("IPA ICC Voting for BW Finished\n");
|
||||||
|
|
||||||
|
IPADBG_CLK("Enabling IPA Clocks Started\n");
|
||||||
ipa3_ctx->ctrl->ipa3_enable_clks();
|
ipa3_ctx->ctrl->ipa3_enable_clks();
|
||||||
|
IPADBG_CLK("Enabling IPA Clocks Finished\n");
|
||||||
atomic_set(&ipa3_ctx->ipa_clk_vote, 1);
|
atomic_set(&ipa3_ctx->ipa_clk_vote, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5444,10 +5450,13 @@ void ipa3_disable_clks(void)
|
|||||||
ipa_assert();
|
ipa_assert();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
IPADBG_CLK("Disabling IPA Clocks Started\n");
|
||||||
ipa3_ctx->ctrl->ipa3_disable_clks();
|
ipa3_ctx->ctrl->ipa3_disable_clks();
|
||||||
|
IPADBG_CLK("Disabling IPA Clocks Finished\n");
|
||||||
|
|
||||||
ipa_pm_set_clock_index(0);
|
ipa_pm_set_clock_index(0);
|
||||||
|
|
||||||
|
IPADBG_CLK("IPA ICC Voting for BW Started\n");
|
||||||
for (i = 0; i < ipa3_ctx->icc_num_paths; i++) {
|
for (i = 0; i < ipa3_ctx->icc_num_paths; i++) {
|
||||||
if (ipa3_ctx->ctrl->icc_path[i] &&
|
if (ipa3_ctx->ctrl->icc_path[i] &&
|
||||||
icc_set_bw(
|
icc_set_bw(
|
||||||
@ -5455,7 +5464,9 @@ void ipa3_disable_clks(void)
|
|||||||
ipa3_ctx->icc_clk[IPA_ICC_NONE][i][IPA_ICC_AB],
|
ipa3_ctx->icc_clk[IPA_ICC_NONE][i][IPA_ICC_AB],
|
||||||
ipa3_ctx->icc_clk[IPA_ICC_NONE][i][IPA_ICC_IB]))
|
ipa3_ctx->icc_clk[IPA_ICC_NONE][i][IPA_ICC_IB]))
|
||||||
WARN(1, "path %d bus off failed", i);
|
WARN(1, "path %d bus off failed", i);
|
||||||
|
IPADBG_CLK("IPA ICC Voting for BW %d Path Completed\n", i);
|
||||||
}
|
}
|
||||||
|
IPADBG_CLK("IPA ICC Voting for BW Finished\n");
|
||||||
atomic_set(&ipa3_ctx->ipa_clk_vote, 0);
|
atomic_set(&ipa3_ctx->ipa_clk_vote, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -7299,6 +7310,10 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p,
|
|||||||
if (ipa3_ctx->logbuf == NULL)
|
if (ipa3_ctx->logbuf == NULL)
|
||||||
IPADBG("failed to create IPC log, continue...\n");
|
IPADBG("failed to create IPC log, continue...\n");
|
||||||
|
|
||||||
|
ipa3_ctx->logbuf_clk = ipc_log_context_create(IPA_IPC_LOG_PAGES, "ipa_clk", 0);
|
||||||
|
if (ipa3_ctx->logbuf_clk == NULL)
|
||||||
|
IPADBG("failed to create IPC ipa_clk log, continue...\n");
|
||||||
|
|
||||||
/* ipa3_ctx->pdev and ipa3_ctx->uc_pdev will be set in the smmu probes*/
|
/* ipa3_ctx->pdev and ipa3_ctx->uc_pdev will be set in the smmu probes*/
|
||||||
ipa3_ctx->master_pdev = ipa_pdev;
|
ipa3_ctx->master_pdev = ipa_pdev;
|
||||||
for (i = 0; i < IPA_SMMU_CB_MAX; i++)
|
for (i = 0; i < IPA_SMMU_CB_MAX; i++)
|
||||||
|
@ -103,6 +103,14 @@
|
|||||||
DRV_NAME " %s:%d " fmt, ## args); \
|
DRV_NAME " %s:%d " fmt, ## args); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
|
#define IPADBG_CLK(fmt, args...) \
|
||||||
|
do { \
|
||||||
|
pr_debug(DRV_NAME " %s:%d " fmt, __func__, __LINE__, ## args);\
|
||||||
|
if (ipa3_ctx) \
|
||||||
|
IPA_IPC_LOGGING(ipa3_ctx->logbuf_clk, \
|
||||||
|
DRV_NAME " %s:%d " fmt, ## args); \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
#define IPAERR(fmt, args...) \
|
#define IPAERR(fmt, args...) \
|
||||||
do { \
|
do { \
|
||||||
pr_err(DRV_NAME " %s:%d " fmt, __func__, __LINE__, ## args);\
|
pr_err(DRV_NAME " %s:%d " fmt, __func__, __LINE__, ## args);\
|
||||||
@ -1913,6 +1921,7 @@ struct ipa3_app_clock_vote {
|
|||||||
* @modem_cfg_emb_pipe_flt: modem configure embedded pipe filtering rules
|
* @modem_cfg_emb_pipe_flt: modem configure embedded pipe filtering rules
|
||||||
* @logbuf: ipc log buffer for high priority messages
|
* @logbuf: ipc log buffer for high priority messages
|
||||||
* @logbuf_low: ipc log buffer for low priority messages
|
* @logbuf_low: ipc log buffer for low priority messages
|
||||||
|
* @logbuf_clk: ipc log buffer for ipa clock messages
|
||||||
* @ipa_wdi2: using wdi-2.0
|
* @ipa_wdi2: using wdi-2.0
|
||||||
* @ipa_fltrt_not_hashable: filter/route rules not hashable
|
* @ipa_fltrt_not_hashable: filter/route rules not hashable
|
||||||
* @use_64_bit_dma_mask: using 64bits dma mask
|
* @use_64_bit_dma_mask: using 64bits dma mask
|
||||||
@ -2052,6 +2061,7 @@ struct ipa3_context {
|
|||||||
void *smem_pipe_mem;
|
void *smem_pipe_mem;
|
||||||
void *logbuf;
|
void *logbuf;
|
||||||
void *logbuf_low;
|
void *logbuf_low;
|
||||||
|
void *logbuf_clk;
|
||||||
struct ipa3_controller *ctrl;
|
struct ipa3_controller *ctrl;
|
||||||
struct idr ipa_idr;
|
struct idr ipa_idr;
|
||||||
struct platform_device *master_pdev;
|
struct platform_device *master_pdev;
|
||||||
|
@ -4950,6 +4950,10 @@ int rmnet_ipa3_get_wan_mtu(
|
|||||||
int rmnet_index;
|
int rmnet_index;
|
||||||
|
|
||||||
mux_channel = rmnet_ipa3_ctx->mux_channel;
|
mux_channel = rmnet_ipa3_ctx->mux_channel;
|
||||||
|
|
||||||
|
/* prevent string buffer overflows */
|
||||||
|
data->if_name[IPA_RESOURCE_NAME_MAX-1] = '\0';
|
||||||
|
|
||||||
rmnet_index =
|
rmnet_index =
|
||||||
find_vchannel_name_index(data->if_name);
|
find_vchannel_name_index(data->if_name);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user