1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Copyright (C) 1994, 1995, 1996, 1999 by Ralf Baechle 4 * Copyright (C) 1999 Silicon Graphics, Inc. 5 */ 6 #ifndef _ASM_TYPES_H 7 #define _ASM_TYPES_H 8 9 #include <asm-generic/int-ll64.h> 10 11 #ifndef __ASSEMBLY__ 12 13 typedef unsigned short umode_t; 14 15 #endif /* __ASSEMBLY__ */ 16 17 /* 18 * These aren't exported outside the kernel to avoid name space clashes 19 */ 20 #ifdef __KERNEL__ 21 22 #define BITS_PER_LONG _MIPS_SZLONG 23 24 #ifndef __ASSEMBLY__ 25 26 #if (defined(CONFIG_HIGHMEM) && defined(CONFIG_64BIT_PHYS_ADDR)) \ 27 || defined(CONFIG_64BIT) 28 typedef u64 dma_addr_t; 29 30 typedef u64 phys_addr_t; 31 typedef u64 phys_size_t; 32 33 #else 34 typedef u32 dma_addr_t; 35 36 typedef u32 phys_addr_t; 37 typedef u32 phys_size_t; 38 39 #endif 40 typedef u64 dma64_addr_t; 41 42 /* 43 * Don't use phys_t. You've been warned. 44 */ 45 #ifdef CONFIG_64BIT_PHYS_ADDR 46 typedef unsigned long long phys_t; 47 #else 48 typedef unsigned long phys_t; 49 #endif 50 51 #endif /* __ASSEMBLY__ */ 52 53 #endif /* __KERNEL__ */ 54 55 #endif /* _ASM_TYPES_H */ 56