24 #ifndef __OR1K_SUPPORT_H__
25 #define __OR1K_SUPPORT_H__
47 #define REG8(add) *((volatile unsigned char *) (add))
59 #define REG16(add) *((volatile unsigned short *) (add))
71 #define REG32(add) *((volatile unsigned long *) (add))
245 static inline void or1k_mtspr (uint32_t spr, uint32_t value)
247 __asm__ __volatile__ (
"l.mtspr\t\t%0,%1,0": :
"r" (spr),
"r" (value));
258 static inline uint32_t or1k_mfspr (uint32_t spr) {
260 __asm__ __volatile__ (
"l.mfspr\t\t%0,%1,0" :
"=r" (value) :
"r" (spr));
641 uint32_t
or1k_sync_cas(
void *address, uint32_t compare, uint32_t swap);
void or1k_interrupt_enable(int line)
void or1k_report(unsigned long int value)
void or1k_interrupt_disable(int line)
void or1k_timer_set_period(uint32_t hz)
void(* or1k_interrupt_handler_fptr)(void *data)
Definition: or1k-support.h:85
void(* or1k_exception_handler_fptr)(void)
Definition: or1k-support.h:215
void or1k_critical_end(uint32_t restore)
void or1k_timer_set_mode(uint32_t mode)
uint32_t or1k_critical_start()
uint32_t or1k_numcores(void)
uint32_t or1k_sync_ll(void *address)
void or1k_timer_restore(uint32_t sr_tee)
uint32_t or1k_interrupts_disable(void)
void or1k_icache_disable(void)
void or1k_immu_enable(void)
uint32_t or1k_coreid(void)
int or1k_sync_sc(void *address, uint32_t value)
int or1k_sync_tsl(void *address)
void or1k_timer_enable(void)
void or1k_dcache_flush(unsigned long entry)
void or1k_exception_handler_add(int id, or1k_exception_handler_fptr handler)
unsigned long or1k_timer_get_ticks(void)
void or1k_dmmu_enable(void)
void or1k_icache_flush(uint32_t entry)
void or1k_dmmu_disable(void)
unsigned long int or1k_rand(void)
void or1k_immu_disable(void)
void or1k_interrupts_enable(void)
void or1k_icache_enable(void)
void or1k_interrupts_restore(uint32_t status)
uint32_t or1k_sync_cas(void *address, uint32_t compare, uint32_t swap)
void or1k_timer_set_handler(void(*handler)(void))
void or1k_timer_pause(void)
void or1k_timer_reset(void)
int or1k_timer_init(unsigned int hz)
void or1k_uart_set_read_cb(void(*cb)(char c))
uint32_t or1k_timer_disable(void)
void or1k_interrupt_handler_add(uint32_t line, or1k_interrupt_handler_fptr handler, void *data)
void or1k_timer_reset_ticks(void)
void or1k_dcache_disable(void)
void or1k_dcache_enable(void)