[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 01/11] Add ioread/iowrite functions to mini-os
On 09/28/2012 06:16 AM, George Dunlap wrote: > On Thu, Sep 27, 2012 at 6:09 PM, Matthew Fioravante > <matthew.fioravante@xxxxxxxxxx> wrote: >> This patch adds iowritexx() and ioreadxx() functions for interacting >> with hardware memory to mini-os. The functions are available in a header >> iorw.h >> >> Signed-off-by: Matthew Fioravante <matthew.fioravante@xxxxxxxxxx> >> Acked-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx> >> >> diff --git a/extras/mini-os/arch/ia64/iorw.c >> b/extras/mini-os/arch/ia64/iorw.c > Is there any reason to have the ia64 stuff? ia64 isn't supported in > Xen anymore, AFAIK. Maybe not. But until ia64 support is removed from mini-os the function bodies should exist so stuff will compile. > -George > >> new file mode 100644 >> index 0000000..aa58807 >> --- /dev/null >> +++ b/extras/mini-os/arch/ia64/iorw.c >> @@ -0,0 +1,48 @@ >> +#include <mini-os/iorw.h> >> +#include <mini-os/console.h> >> + >> +void iowrite8(volatile void* addr, uint8_t val) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> +} >> +void iowrite16(volatile void* addr, uint16_t val) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> +} >> +void iowrite32(volatile void* addr, uint32_t val) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> +} >> +void iowrite64(volatile void* addr, uint64_t val) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> +} >> + >> +uint8_t ioread8(volatile void* addr) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> + return 0; >> +} >> +uint16_t ioread16(volatile void* addr) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> + return 0; >> +} >> +uint32_t ioread32(volatile void* addr) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> + return 0; >> +} >> +uint64_t ioread64(volatile void* addr) >> +{ >> + printk("iorw not implemented!!\n"); >> + BUG(); >> + return 0; >> +} >> diff --git a/extras/mini-os/arch/x86/iorw.c b/extras/mini-os/arch/x86/iorw.c >> new file mode 100644 >> index 0000000..3080769 >> --- /dev/null >> +++ b/extras/mini-os/arch/x86/iorw.c >> @@ -0,0 +1,35 @@ >> +#include <mini-os/iorw.h> >> + >> +void iowrite8(volatile void* addr, uint8_t val) >> +{ >> + *((volatile uint8_t*)addr) = val; >> +} >> +void iowrite16(volatile void* addr, uint16_t val) >> +{ >> + *((volatile uint16_t*)addr) = val; >> +} >> +void iowrite32(volatile void* addr, uint32_t val) >> +{ >> + *((volatile uint32_t*)addr) = val; >> +} >> +void iowrite64(volatile void* addr, uint64_t val) >> +{ >> + *((volatile uint64_t*)addr) = val; >> +} >> + >> +uint8_t ioread8(volatile void* addr) >> +{ >> + return *((volatile uint8_t*) addr); >> +} >> +uint16_t ioread16(volatile void* addr) >> +{ >> + return *((volatile uint16_t*) addr); >> +} >> +uint32_t ioread32(volatile void* addr) >> +{ >> + return *((volatile uint32_t*) addr); >> +} >> +uint64_t ioread64(volatile void* addr) >> +{ >> + return *((volatile uint64_t*) addr); >> +} >> diff --git a/extras/mini-os/include/iorw.h b/extras/mini-os/include/iorw.h >> new file mode 100644 >> index 0000000..d5ec065 >> --- /dev/null >> +++ b/extras/mini-os/include/iorw.h >> @@ -0,0 +1,16 @@ >> +#ifndef MINIOS_IORW_H >> +#define MINIOS_IORW_H >> + >> +#include <mini-os/types.h> >> + >> +void iowrite8(volatile void* addr, uint8_t val); >> +void iowrite16(volatile void* addr, uint16_t val); >> +void iowrite32(volatile void* addr, uint32_t val); >> +void iowrite64(volatile void* addr, uint64_t val); >> + >> +uint8_t ioread8(volatile void* addr); >> +uint16_t ioread16(volatile void* addr); >> +uint32_t ioread32(volatile void* addr); >> +uint64_t ioread64(volatile void* addr); >> + >> +#endif >> -- >> 1.7.9.5 >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@xxxxxxxxxxxxx >> http://lists.xen.org/xen-devel Attachment:
smime.p7s _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |