Merge pull request #1089 from Leo-Yan/hikey_enable_debug_module

Hikey: enable CPU debug module
This commit is contained in:
davidcunado-arm 2017-09-15 11:29:03 +01:00 committed by GitHub
commit 1cde9b94fa
3 changed files with 19 additions and 0 deletions

View File

@ -40,7 +40,9 @@ static int hikey_pwr_domain_on(u_register_t mpidr)
hisi_ipc_cluster_on(cpu, cluster);
hisi_pwrc_set_core_bx_addr(cpu, cluster, hikey_sec_entrypoint);
hisi_pwrc_enable_debug(cpu, cluster);
hisi_ipc_cpu_on(cpu, cluster);
return 0;
}

View File

@ -51,6 +51,21 @@ void hisi_pwrc_set_cluster_wfi(unsigned int cluster)
}
}
void hisi_pwrc_enable_debug(unsigned int core, unsigned int cluster)
{
unsigned int val, enable;
enable = 1U << (core + PDBGUP_CLUSTER1_SHIFT * cluster);
/* Enable debug module */
val = mmio_read_32(ACPU_SC_PDBGUP_MBIST);
mmio_write_32(ACPU_SC_PDBGUP_MBIST, val | enable);
do {
/* RAW barrier */
val = mmio_read_32(ACPU_SC_PDBGUP_MBIST);
} while (!(val & enable));
}
int hisi_pwrc_setup(void)
{
unsigned int reg, sec_entrypoint;

View File

@ -13,6 +13,8 @@ void hisi_pwrc_set_cluster_wfi(unsigned int id);
void hisi_pwrc_set_core_bx_addr(unsigned int core,
unsigned int cluster,
uintptr_t entry_point);
void hisi_pwrc_enable_debug(unsigned int core,
unsigned int cluster);
int hisi_pwrc_setup(void);
#endif /*__ASSEMBLY__*/