Changeset bf2a269 in mainline for uspace/drv/infrastructure/rootamdm37x/rootamdm37x.c
- Timestamp:
- 2012-11-20T14:32:33Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- fde2dab9
- Parents:
- bf6f6ca
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/infrastructure/rootamdm37x/rootamdm37x.c
rbf6f6ca rbf2a269 285 285 */ 286 286 // TODO setup DPLL5 287 if ((pio_read_32(&device->cm.clocks->clken2_pll) 288 & CLOCK_CONTROL_CM_CLKEN2_PLL_EN_PERIPH2_DPLL_MASK) 289 != CLOCK_CONTROL_CM_CLKEN2_PLL_EN_PERIPH2_DPLL_LOCK) { 290 /* Compute divisors and multiplier */ 291 assert((base_freq % 100) == 0); 292 const unsigned mult = 1200; 293 const unsigned div = base_freq / 100; 294 const unsigned div2 = 1; 295 296 /* Set multiplier */ 297 pio_change_32(&device->cm.clocks->clksel4_pll, 298 CLOCK_CONTROL_CM_CLKSEL4_PLL_PERIPH2_DPLL_MULT_CREATE(mult), 299 CLOCK_CONTROL_CM_CLKSEL4_PLL_PERIPH2_DPLL_MULT_MASK, 10); 300 301 /* Set DPLL divisor */ 302 pio_change_32(&device->cm.clocks->clksel4_pll, 303 CLOCK_CONTROL_CM_CLKSEL4_PLL_PERIPH2_DPLL_DIV_CREATE(div), 304 CLOCK_CONTROL_CM_CLKSEL4_PLL_PERIPH2_DPLL_DIV_MASK, 10); 305 306 /* Set output clock divisor */ 307 pio_change_32(&device->cm.clocks->clksel5_pll, 308 CLOCK_CONTROL_CM_CLKSEL5_PLL_DIV120M_CREATE(div2), 309 CLOCK_CONTROL_CM_CLKSEL5_PLL_DIV120M_MASK, 10); 310 311 /* Start DPLL5 */ 312 pio_change_32(&device->cm.clocks->clken2_pll, 313 CLOCK_CONTROL_CM_CLKEN2_PLL_EN_PERIPH2_DPLL_LOCK, 314 CLOCK_CONTROL_CM_CLKEN2_PLL_EN_PERIPH2_DPLL_MASK, 10); 315 316 } 287 317 /* Set DPLL5 to automatic to save power */ 288 318 pio_change_32(&device->cm.clocks->autoidle2_pll,
Note:
See TracChangeset
for help on using the changeset viewer.