1 #ifndef __INIT_H__ 2 #define __INIT_H__ 3 4 /* Basic initialisation. */ 5 6 void init_memory(void); 7 void init_pins(void); 8 void init_outputs(void); 9 10 /* Peripheral pin configuration. */ 11 12 void config_uart(void); 13 void lock_config(void); 14 void unlock_config(void); 15 16 /* Convenience operations. */ 17 18 void interrupts_on(void); 19 20 /* DMA configuration. */ 21 22 void init_dma(void); 23 24 void dma_init(int channel, int auto_enable, uint8_t pri); 25 26 void dma_init_interrupt(int channel, uint8_t conditions, 27 uint8_t int_pri, uint8_t int_sub); 28 29 void dma_on(int channel); 30 31 void dma_set_interrupt(int channel, uint8_t int_num, int enable); 32 33 void dma_set_transfer(int channel, 34 uint32_t source_start_address, uint16_t source_size, 35 uint32_t destination_start_address, uint16_t destination_size, 36 uint16_t cell_size); 37 38 /* UART configuration. */ 39 40 void uart_init(int channel, uint32_t baudrate); 41 42 void uart_init_interrupt(int channel, uint8_t pri, uint8_t sub); 43 44 void uart_on(int channel); 45 46 /* Utility functions. */ 47 48 uint32_t DMA_IPC_PRI(int channel, uint8_t pri, uint8_t sub); 49 50 uint32_t UART_IPC_PRI(int channel, uint8_t pri, uint8_t sub); 51 uint32_t UART_IPC_REG(int channel); 52 53 int UART_INT_FLAGS(int channel); 54 55 #endif /* __INIT_H__ */