URL
https://opencores.org/ocsvn/potato/potato/trunk
[/] [potato/] [trunk/] [benchmarks/] [potato.h] - Diff between revs 24 and 45
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 24 |
Rev 45 |
Line 50... |
Line 50... |
#define potato_enable_interrupts() asm volatile("csrsi %[status], 1 << %[ei_bit]\n" \
|
#define potato_enable_interrupts() asm volatile("csrsi %[status], 1 << %[ei_bit]\n" \
|
:: [status] "i" (CSR_STATUS), [ei_bit] "i" (STATUS_EI))
|
:: [status] "i" (CSR_STATUS), [ei_bit] "i" (STATUS_EI))
|
#define potato_disable_interrupts() asm volatile("csrci %[status], 1 << %[ei_bit] | 1 << %[pei_bit]\n" \
|
#define potato_disable_interrupts() asm volatile("csrci %[status], 1 << %[ei_bit] | 1 << %[pei_bit]\n" \
|
:: [status] "i" (CSR_STATUS), [ei_bit] "i" (STATUS_EI), [pei_bit] "i" (STATUS_PEI))
|
:: [status] "i" (CSR_STATUS), [ei_bit] "i" (STATUS_EI), [pei_bit] "i" (STATUS_PEI))
|
|
|
|
#define potato_write_host(data) \
|
|
do { \
|
|
register uint32_t temp = data; \
|
|
asm volatile("csrw %[tohost], %[temp]\n" \
|
|
:: [tohost] "i" (CSR_TOHOST), [temp] "r" (temp)); \
|
|
} while(0);
|
|
|
#define potato_enable_irq(n) \
|
#define potato_enable_irq(n) \
|
do { \
|
do { \
|
register uint32_t temp = 0; \
|
register uint32_t temp = 0; \
|
asm volatile( \
|
asm volatile( \
|
"li %[temp], 1 << %[shift]\n" \
|
"li %[temp], 1 << %[shift]\n" \
|
© copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.