1/* 2 * U-boot - types.h 3 * 4 * Copyright (c) 2005-2007 Analog Devices Inc. 5 * 6 * See file CREDITS for list of people who contributed to this 7 * project. 8 * 9 * This program is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License as 11 * published by the Free Software Foundation; either version 2 of 12 * the License, or (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with this program; if not, write to the Free Software 21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, 22 * MA 02110-1301 USA 23 */ 24 25#ifndef _BLACKFIN_TYPES_H 26#define _BLACKFIN_TYPES_H 27 28/* 29 * This file is never included by application software unless 30 * explicitly requested (e.g., via linux/types.h) in which case the 31 * application is Linux specific so (user-) name space pollution is 32 * not a major issue. However, for interoperability, libraries still 33 * need to be careful to avoid a name clashes. 34 */ 35 36typedef unsigned short umode_t; 37 38/* 39 * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the 40 * header files exported to user space 41 */ 42 43typedef __signed__ char __s8; 44typedef unsigned char __u8; 45 46typedef __signed__ short __s16; 47typedef unsigned short __u16; 48 49typedef __signed__ int __s32; 50typedef unsigned int __u32; 51 52/* HK0617 -- Changes to unsigned long temporarily */ 53#if defined(__GNUC__) 54__extension__ typedef __signed__ long long __s64; 55__extension__ typedef unsigned long long __u64; 56#endif 57 58/* 59 * These aren't exported outside the kernel to avoid name space clashes 60 */ 61#ifdef __KERNEL__ 62 63typedef signed char s8; 64typedef unsigned char u8; 65 66typedef signed short s16; 67typedef unsigned short u16; 68 69typedef signed int s32; 70typedef unsigned int u32; 71 72typedef signed long long s64; 73typedef unsigned long long u64; 74 75#define BITS_PER_LONG 32 76 77/* Dma addresses are 32-bits wide. */ 78 79typedef u32 dma_addr_t; 80 81typedef unsigned long phys_addr_t; 82typedef unsigned long phys_size_t; 83 84#endif 85 86#endif 87