soc: qcom-geni-se: Add interconnect support to fix earlycon crash

QUP core clock is shared among all the SE drivers present on particular
QUP wrapper, the system will reset(unclocked access) if earlycon used after
QUP core clock is put to 0 from other SE drivers before real console comes
up.

As earlycon can't vote for it's QUP core need, to fix this add ICC
support to common/QUP wrapper driver and put vote for QUP core from
probe on behalf of earlycon and remove vote during earlycon exit call.

Signed-off-by: Akash Asthana <akashast@codeaurora.org>
Reported-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Link: https://lore.kernel.org/r/1592908737-7068-3-git-send-email-akashast@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
This commit is contained in:
Akash Asthana
2020-06-23 16:08:51 +05:30
committed by Bjorn Andersson
parent 58ffbba6a3
commit 048eb908a1
3 changed files with 77 additions and 0 deletions

View File

@@ -454,5 +454,7 @@ int geni_icc_set_bw(struct geni_se *se);
int geni_icc_enable(struct geni_se *se);
int geni_icc_disable(struct geni_se *se);
void geni_remove_earlycon_icc_vote(void);
#endif
#endif