1 #ifndef __ASM_SH64_HARDWARE_H 2 #define __ASM_SH64_HARDWARE_H 3 4 /* 5 * This file is subject to the terms and conditions of the GNU General Public 6 * License. See the file "COPYING" in the main directory of this archive 7 * for more details. 8 * 9 * include/asm-sh64/hardware.h 10 * 11 * Copyright (C) 2002 Stuart Menefy 12 * Copyright (C) 2003 Paul Mundt 13 * 14 * Defitions of the locations of registers in the physical address space. 15 */ 16 17 #define PHYS_PERIPHERAL_BLOCK 0x09000000 18 #define PHYS_DMAC_BLOCK 0x0e000000 19 #define PHYS_PCI_BLOCK 0x60000000 20 21 #ifndef __ASSEMBLY__ 22 #include <linux/types.h> 23 #include <asm/io.h> 24 25 struct vcr_info { 26 u8 perr_flags; /* P-port Error flags */ 27 u8 merr_flags; /* Module Error flags */ 28 u16 mod_vers; /* Module Version */ 29 u16 mod_id; /* Module ID */ 30 u8 bot_mb; /* Bottom Memory block */ 31 u8 top_mb; /* Top Memory block */ 32 }; 33 sh64_get_vcr_info(unsigned long base)34static inline struct vcr_info sh64_get_vcr_info(unsigned long base) 35 { 36 unsigned long long tmp; 37 38 tmp = sh64_in64(base); 39 40 return *((struct vcr_info *)&tmp); 41 } 42 43 #endif /* __ASSEMBLY__ */ 44 45 #endif /* __ASM_SH64_HARDWARE_H */ 46