Ralf Baechle | 23fbee9 | 2005-07-25 22:45:45 +0000 | [diff] [blame] | 1 | /* |
Uwe Zeisberger | f30c226 | 2006-10-03 23:01:26 +0200 | [diff] [blame] | 2 | * linux/include/asm-mips/tx4938/tx4938_mips.h |
Ralf Baechle | 23fbee9 | 2005-07-25 22:45:45 +0000 | [diff] [blame] | 3 | * Generic bitmask definitions |
| 4 | * |
| 5 | * 2003-2005 (c) MontaVista Software, Inc. This file is licensed under the |
| 6 | * terms of the GNU General Public License version 2. This program is |
| 7 | * licensed "as is" without any warranty of any kind, whether express |
| 8 | * or implied. |
| 9 | * |
| 10 | * Support for TX4938 in 2.6 - Manish Lachwani (mlachwani@mvista.com) |
| 11 | */ |
| 12 | |
| 13 | #ifndef TX4938_TX4938_MIPS_H |
| 14 | #define TX4938_TX4938_MIPS_H |
| 15 | #ifndef __ASSEMBLY__ |
| 16 | |
| 17 | #define reg_rd08(r) ((u8 )(*((vu8 *)(r)))) |
| 18 | #define reg_rd16(r) ((u16)(*((vu16*)(r)))) |
| 19 | #define reg_rd32(r) ((u32)(*((vu32*)(r)))) |
| 20 | #define reg_rd64(r) ((u64)(*((vu64*)(r)))) |
| 21 | |
| 22 | #define reg_wr08(r,v) ((*((vu8 *)(r)))=((u8 )(v))) |
| 23 | #define reg_wr16(r,v) ((*((vu16*)(r)))=((u16)(v))) |
| 24 | #define reg_wr32(r,v) ((*((vu32*)(r)))=((u32)(v))) |
| 25 | #define reg_wr64(r,v) ((*((vu64*)(r)))=((u64)(v))) |
| 26 | |
| 27 | typedef volatile __signed char vs8; |
| 28 | typedef volatile unsigned char vu8; |
| 29 | |
| 30 | typedef volatile __signed short vs16; |
| 31 | typedef volatile unsigned short vu16; |
| 32 | |
| 33 | typedef volatile __signed int vs32; |
| 34 | typedef volatile unsigned int vu32; |
| 35 | |
| 36 | typedef s8 s08; |
| 37 | typedef vs8 vs08; |
| 38 | |
| 39 | typedef u8 u08; |
| 40 | typedef vu8 vu08; |
| 41 | |
| 42 | #if (_MIPS_SZLONG == 64) |
| 43 | |
| 44 | typedef volatile __signed__ long vs64; |
| 45 | typedef volatile unsigned long vu64; |
| 46 | |
| 47 | #else |
| 48 | |
| 49 | typedef volatile __signed__ long long vs64; |
| 50 | typedef volatile unsigned long long vu64; |
| 51 | |
| 52 | #endif |
| 53 | #endif |
| 54 | #endif |