int jtag3ctrl_init(const void * rbf, int size) { int ret; thinkos_escalate(jtag3ctrl_bus_init, NULL); if ((ret = altera_configure(rbf, size)) < 0) { DCC_LOG1(LOG_ERROR, "altera_configure() failed: %d!", ret); INF(" # altera_configure() failed: %d!", ret); return ret; } else { INF("- FPGA configuration done (%d bytes)", ret); } /* Enable clock output */ stm32f_mco2_enable(); /* wait for the FPGA initialize */ thinkos_sleep(20); /* initial configuration */ reg_wr(REG_CFG, 0); return 0; }
void external_bus_init(void) { /* Configure memory controller ... */ stm32f_fsmc_init(); /* Configure external interrupt ... */ stm32f_exti_init(FPGA_EXTI, EXTI_EDGE_RISING); /* Initialize clock output */ stm32f_mco2_init(); /* Enable clock output */ stm32f_mco2_enable(); }