Changeset 8b4d6cb in mainline for kernel/arch/ia64/include/asm.h
- Timestamp:
- 2009-01-03T15:33:55Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2b70a6e
- Parents:
- fb69f39
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ia64/include/asm.h
rfb69f39 r8b4d6cb 44 44 #define IA64_IOSPACE_ADDRESS 0xE001000000000000ULL 45 45 46 static inline void outb(ioport_t port,uint8_t v) 47 { 48 *((uint8_t *)(IA64_IOSPACE_ADDRESS + ( (port & 0xfff) | ( (port >> 2) << 12 )))) = v; 49 50 asm volatile ("mf\n" ::: "memory"); 51 } 52 53 static inline void outw(ioport_t port,uint16_t v) 54 { 55 *((uint16_t *)(IA64_IOSPACE_ADDRESS + ( (port & 0xfff) | ( (port >> 2) << 12 )))) = v; 56 57 asm volatile ("mf\n" ::: "memory"); 58 } 59 60 static inline void outl(ioport_t port,uint32_t v) 61 { 62 *((uint32_t *)(IA64_IOSPACE_ADDRESS + ( (port & 0xfff) | ( (port >> 2) << 12 )))) = v; 63 64 asm volatile ("mf\n" ::: "memory"); 65 } 66 67 46 static inline void outb(ioport_t port, uint8_t v) 47 { 48 *((uint8_t *)(IA64_IOSPACE_ADDRESS + 49 ((port & 0xfff) | ((port >> 2) << 12)))) = v; 50 51 asm volatile ("mf\n" ::: "memory"); 52 } 53 54 static inline void outw(ioport_t port, uint16_t v) 55 { 56 *((uint16_t *)(IA64_IOSPACE_ADDRESS + 57 ((port & 0xfff) | ((port >> 2) << 12)))) = v; 58 59 asm volatile ("mf\n" ::: "memory"); 60 } 61 62 static inline void outl(ioport_t port, uint32_t v) 63 { 64 *((uint32_t *)(IA64_IOSPACE_ADDRESS + 65 ((port & 0xfff) | ((port >> 2) << 12)))) = v; 66 67 asm volatile ("mf\n" ::: "memory"); 68 } 68 69 69 70 static inline uint8_t inb(ioport_t port) … … 71 72 asm volatile ("mf\n" ::: "memory"); 72 73 73 return *((uint8_t *)(IA64_IOSPACE_ADDRESS + ( (port & 0xfff) | ( (port >> 2) << 12 )))); 74 return *((uint8_t *)(IA64_IOSPACE_ADDRESS + 75 ((port & 0xfff) | ((port >> 2) << 12)))); 74 76 } 75 77 … … 78 80 asm volatile ("mf\n" ::: "memory"); 79 81 80 return *((uint16_t *)(IA64_IOSPACE_ADDRESS + ( (port & 0xffE) | ( (port >> 2) << 12 )))); 82 return *((uint16_t *)(IA64_IOSPACE_ADDRESS + 83 ((port & 0xffE) | ((port >> 2) << 12)))); 81 84 } 82 85 … … 85 88 asm volatile ("mf\n" ::: "memory"); 86 89 87 return *((uint32_t *)(IA64_IOSPACE_ADDRESS + ( (port & 0xfff) | ( (port >> 2) << 12 )))); 88 } 89 90 90 return *((uint32_t *)(IA64_IOSPACE_ADDRESS + 91 ((port & 0xfff) | ((port >> 2) << 12)))); 92 } 91 93 92 94 /** Return base address of current stack … … 343 345 extern void asm_delay_loop(uint32_t t); 344 346 345 extern void switch_to_userspace(uintptr_t entry, uintptr_t sp, uintptr_t bsp, uintptr_t uspace_uarg, uint64_t ipsr, uint64_t rsc); 347 extern void switch_to_userspace(uintptr_t, uintptr_t, uintptr_t, uintptr_t, 348 uint64_t, uint64_t); 346 349 347 350 #endif
Note:
See TracChangeset
for help on using the changeset viewer.