Merge pull request #938 from chenguokai/issue937

Fixed uninitialized cpuid
pull/942/head
nightwalker-87 2020-04-20 11:09:21 +02:00 zatwierdzone przez GitHub
commit 05cf37570d
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
2 zmienionych plików z 13 dodań i 5 usunięć

Wyświetl plik

@ -843,9 +843,13 @@ int stlink_chip_id(stlink_t *sl, uint32_t *chip_id) {
int stlink_cpu_id(stlink_t *sl, cortex_m3_cpuid_t *cpuid) {
uint32_t raw;
if (stlink_read_debug32(sl, STLINK_REG_CM3_CPUID, &raw))
if (stlink_read_debug32(sl, STLINK_REG_CM3_CPUID, &raw)) {
cpuid->implementer_id = 0;
cpuid->variant = 0;
cpuid->part = 0;
cpuid->revision = 0;
return -1;
}
cpuid->implementer_id = (raw >> 24) & 0x7f;
cpuid->variant = (raw >> 20) & 0xf;
cpuid->part = (raw >> 4) & 0xfff;

Wyświetl plik

@ -29,9 +29,13 @@ int main(int ac, char** av) {
printf("-- core_id: %#x\n", sl->core_id);
cortex_m3_cpuid_t cpuid;
stlink_cpu_id(sl, &cpuid);
printf("cpuid:impl_id = %0#x, variant = %#x\n", cpuid.implementer_id, cpuid.variant);
printf("cpuid:part = %#x, rev = %#x\n", cpuid.part, cpuid.revision);
if (stlink_cpu_id(sl, &cpuid)) {
printf("Failed reading stlink_cpu_id\n");
} else {
printf("cpuid:impl_id = %0#x, variant = %#x\n", cpuid.implementer_id, cpuid.variant);
printf("cpuid:part = %#x, rev = %#x\n", cpuid.part, cpuid.revision);
}
printf("-- read_sram\n");
static const uint32_t sram_base = STM32_SRAM_BASE;