Turn rcc_osc_ready() into rcc_wait_for_osc_ready(), more useful.

This commit is contained in:
Uwe Hermann 2009-07-22 02:38:31 +02:00
parent 5df3d0a23d
commit 97440d8406
1 changed files with 6 additions and 9 deletions

View File

@ -117,28 +117,25 @@ int rcc_css_int_flag(void)
return ((RCC_CIR & CSSF) != 0); return ((RCC_CIR & CSSF) != 0);
} }
int rcc_osc_ready(osc_t osc) void rcc_wait_for_osc_ready(osc_t osc)
{ {
switch (osc) { switch (osc) {
case PLL: case PLL:
return ((RCC_CR & PLLRDY) != 0); while ((RCC_CR & PLLRDY) != 0);
break; break;
case HSE: case HSE:
return ((RCC_CR & HSERDY) != 0); while ((RCC_CR & HSERDY) != 0);
break; break;
case HSI: case HSI:
return ((RCC_CR & HSIRDY) != 0); while ((RCC_CR & HSIRDY) != 0);
break; break;
case LSE: case LSE:
return ((RCC_BDCR & LSERDY) != 0); while ((RCC_BDCR & LSERDY) != 0);
break; break;
case LSI: case LSI:
return ((RCC_CSR & LSIRDY) != 0); while ((RCC_CSR & LSIRDY) != 0);
break; break;
} }
/* Shouldn't be reached. */
return -1;
} }
void rcc_osc_on(osc_t osc) void rcc_osc_on(osc_t osc)