Loading arch/arm/configs/vendor/sdxnightjar-debug.config +6 −0 Original line number Diff line number Diff line Loading @@ -859,3 +859,9 @@ CONFIG_INTERCONNECT_TEST=y CONFIG_INTERCONNECT_QCOM=y CONFIG_INTERCONNECT_QCOM_SDXNIGHTJAR=y CONFIG_QCOM_SOCINFO=y CONFIG_BLK_CGROUP=y CONFIG_IOSCHED_BFQ=y CONFIG_BFQ_GROUP_IOSCHED=y CONFIG_SDC_QTI=y CONFIG_MMC_SDHCI_MSM=y CONFIG_MMC_IPC_LOGGING=y arch/arm/configs/vendor/sdxnightjar.config +8 −0 Original line number Diff line number Diff line Loading @@ -874,3 +874,11 @@ CONFIG_INTERCONNECT_TEST=y CONFIG_INTERCONNECT_QCOM=y CONFIG_INTERCONNECT_QCOM_SDXNIGHTJAR=y CONFIG_QCOM_SOCINFO=y CONFIG_BLK_CGROUP=y CONFIG_IOSCHED_BFQ=y CONFIG_BFQ_GROUP_IOSCHED=y CONFIG_MMC=y CONFIG_SDC_QTI=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y CONFIG_MMC_SDHCI_MSM=y drivers/mmc/host/sdhci-msm.c +17 −13 Original line number Diff line number Diff line Loading @@ -2862,7 +2862,7 @@ static inline int sdhci_msm_bus_set_vote(struct sdhci_msm_host *msm_host, struct sdhci_msm_bus_vote_data *bvd = msm_host->bus_vote_data; struct msm_bus_path *usecase = bvd->usecase; struct msm_bus_vectors *vec = usecase[vote].vec; int ddr_rc, cpu_rc; int ddr_rc = 0, cpu_rc = 0; if (vote == bvd->curr_vote) return 0; Loading @@ -2870,8 +2870,13 @@ static inline int sdhci_msm_bus_set_vote(struct sdhci_msm_host *msm_host, pr_debug("%s: vote:%d sdhc_ddr ab:%llu ib:%llu cpu_sdhc ab:%llu ib:%llu\n", mmc_hostname(host->mmc), vote, vec[0].ab, vec[0].ib, vec[1].ab, vec[1].ib); if (bvd->sdhc_ddr) ddr_rc = icc_set_bw(bvd->sdhc_ddr, vec[0].ab, vec[0].ib); if (bvd->cpu_sdhc) cpu_rc = icc_set_bw(bvd->cpu_sdhc, vec[1].ab, vec[1].ib); if (ddr_rc || cpu_rc) { pr_err("%s: icc_set() failed\n", mmc_hostname(host->mmc)); Loading @@ -2894,8 +2899,8 @@ static void sdhci_msm_bus_get_and_set_vote(struct sdhci_host *host, struct sdhci_msm_host *msm_host = sdhci_pltfm_priv(pltfm_host); if (!msm_host->bus_vote_data || !msm_host->bus_vote_data->sdhc_ddr || !msm_host->bus_vote_data->cpu_sdhc) (!msm_host->bus_vote_data->sdhc_ddr && !msm_host->bus_vote_data->cpu_sdhc)) return; vote = sdhci_msm_bus_get_vote_for_bw(msm_host, bw); sdhci_msm_bus_set_vote(msm_host, vote); Loading Loading @@ -3004,20 +3009,16 @@ static int sdhci_msm_bus_register(struct sdhci_msm_host *host, bsd->sdhc_ddr = of_icc_get(&pdev->dev, "sdhc-ddr"); if (IS_ERR_OR_NULL(bsd->sdhc_ddr)) { dev_err(&pdev->dev, "(%ld): failed getting %s path\n", dev_info(&pdev->dev, "(%ld): failed getting %s path\n", PTR_ERR(bsd->sdhc_ddr), "sdhc-ddr"); ret = PTR_ERR(bsd->sdhc_ddr); bsd->sdhc_ddr = NULL; return ret; } bsd->cpu_sdhc = of_icc_get(&pdev->dev, "cpu-sdhc"); if (IS_ERR_OR_NULL(bsd->cpu_sdhc)) { dev_err(&pdev->dev, "(%ld): failed getting %s path\n", dev_info(&pdev->dev, "(%ld): failed getting %s path\n", PTR_ERR(bsd->cpu_sdhc), "cpu-sdhc"); ret = PTR_ERR(bsd->cpu_sdhc); bsd->cpu_sdhc = NULL; return ret; } return ret; Loading @@ -3028,7 +3029,10 @@ static void sdhci_msm_bus_unregister(struct device *dev, { struct sdhci_msm_bus_vote_data *bsd = host->bus_vote_data; if (bsd->sdhc_ddr) icc_put(bsd->sdhc_ddr); if (bsd->cpu_sdhc) icc_put(bsd->cpu_sdhc); } Loading Loading
arch/arm/configs/vendor/sdxnightjar-debug.config +6 −0 Original line number Diff line number Diff line Loading @@ -859,3 +859,9 @@ CONFIG_INTERCONNECT_TEST=y CONFIG_INTERCONNECT_QCOM=y CONFIG_INTERCONNECT_QCOM_SDXNIGHTJAR=y CONFIG_QCOM_SOCINFO=y CONFIG_BLK_CGROUP=y CONFIG_IOSCHED_BFQ=y CONFIG_BFQ_GROUP_IOSCHED=y CONFIG_SDC_QTI=y CONFIG_MMC_SDHCI_MSM=y CONFIG_MMC_IPC_LOGGING=y
arch/arm/configs/vendor/sdxnightjar.config +8 −0 Original line number Diff line number Diff line Loading @@ -874,3 +874,11 @@ CONFIG_INTERCONNECT_TEST=y CONFIG_INTERCONNECT_QCOM=y CONFIG_INTERCONNECT_QCOM_SDXNIGHTJAR=y CONFIG_QCOM_SOCINFO=y CONFIG_BLK_CGROUP=y CONFIG_IOSCHED_BFQ=y CONFIG_BFQ_GROUP_IOSCHED=y CONFIG_MMC=y CONFIG_SDC_QTI=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y CONFIG_MMC_SDHCI_MSM=y
drivers/mmc/host/sdhci-msm.c +17 −13 Original line number Diff line number Diff line Loading @@ -2862,7 +2862,7 @@ static inline int sdhci_msm_bus_set_vote(struct sdhci_msm_host *msm_host, struct sdhci_msm_bus_vote_data *bvd = msm_host->bus_vote_data; struct msm_bus_path *usecase = bvd->usecase; struct msm_bus_vectors *vec = usecase[vote].vec; int ddr_rc, cpu_rc; int ddr_rc = 0, cpu_rc = 0; if (vote == bvd->curr_vote) return 0; Loading @@ -2870,8 +2870,13 @@ static inline int sdhci_msm_bus_set_vote(struct sdhci_msm_host *msm_host, pr_debug("%s: vote:%d sdhc_ddr ab:%llu ib:%llu cpu_sdhc ab:%llu ib:%llu\n", mmc_hostname(host->mmc), vote, vec[0].ab, vec[0].ib, vec[1].ab, vec[1].ib); if (bvd->sdhc_ddr) ddr_rc = icc_set_bw(bvd->sdhc_ddr, vec[0].ab, vec[0].ib); if (bvd->cpu_sdhc) cpu_rc = icc_set_bw(bvd->cpu_sdhc, vec[1].ab, vec[1].ib); if (ddr_rc || cpu_rc) { pr_err("%s: icc_set() failed\n", mmc_hostname(host->mmc)); Loading @@ -2894,8 +2899,8 @@ static void sdhci_msm_bus_get_and_set_vote(struct sdhci_host *host, struct sdhci_msm_host *msm_host = sdhci_pltfm_priv(pltfm_host); if (!msm_host->bus_vote_data || !msm_host->bus_vote_data->sdhc_ddr || !msm_host->bus_vote_data->cpu_sdhc) (!msm_host->bus_vote_data->sdhc_ddr && !msm_host->bus_vote_data->cpu_sdhc)) return; vote = sdhci_msm_bus_get_vote_for_bw(msm_host, bw); sdhci_msm_bus_set_vote(msm_host, vote); Loading Loading @@ -3004,20 +3009,16 @@ static int sdhci_msm_bus_register(struct sdhci_msm_host *host, bsd->sdhc_ddr = of_icc_get(&pdev->dev, "sdhc-ddr"); if (IS_ERR_OR_NULL(bsd->sdhc_ddr)) { dev_err(&pdev->dev, "(%ld): failed getting %s path\n", dev_info(&pdev->dev, "(%ld): failed getting %s path\n", PTR_ERR(bsd->sdhc_ddr), "sdhc-ddr"); ret = PTR_ERR(bsd->sdhc_ddr); bsd->sdhc_ddr = NULL; return ret; } bsd->cpu_sdhc = of_icc_get(&pdev->dev, "cpu-sdhc"); if (IS_ERR_OR_NULL(bsd->cpu_sdhc)) { dev_err(&pdev->dev, "(%ld): failed getting %s path\n", dev_info(&pdev->dev, "(%ld): failed getting %s path\n", PTR_ERR(bsd->cpu_sdhc), "cpu-sdhc"); ret = PTR_ERR(bsd->cpu_sdhc); bsd->cpu_sdhc = NULL; return ret; } return ret; Loading @@ -3028,7 +3029,10 @@ static void sdhci_msm_bus_unregister(struct device *dev, { struct sdhci_msm_bus_vote_data *bsd = host->bus_vote_data; if (bsd->sdhc_ddr) icc_put(bsd->sdhc_ddr); if (bsd->cpu_sdhc) icc_put(bsd->cpu_sdhc); } Loading