1819833afSPeter Tyser /* 2819833afSPeter Tyser * linux/include/asm-arm/arch-pxa/hardware.h 3819833afSPeter Tyser * 4819833afSPeter Tyser * Author: Nicolas Pitre 5819833afSPeter Tyser * Created: Jun 15, 2001 6819833afSPeter Tyser * Copyright: MontaVista Software Inc. 7819833afSPeter Tyser * 8819833afSPeter Tyser * This program is free software; you can redistribute it and/or modify 9819833afSPeter Tyser * it under the terms of the GNU General Public License version 2 as 10819833afSPeter Tyser * published by the Free Software Foundation. 11819833afSPeter Tyser * 12819833afSPeter Tyser * Note: This file was taken from linux-2.4.19-rmk4-pxa1 13819833afSPeter Tyser * 14819833afSPeter Tyser * - 2003/01/20 implementation specifics activated 15819833afSPeter Tyser * Robert Schwebel <r.schwebel@pengutronix.de> 16819833afSPeter Tyser */ 17819833afSPeter Tyser 18819833afSPeter Tyser #ifndef __ASM_ARCH_HARDWARE_H 19819833afSPeter Tyser #define __ASM_ARCH_HARDWARE_H 20819833afSPeter Tyser 21819833afSPeter Tyser #include <asm/mach-types.h> 22819833afSPeter Tyser 23*3ba8bf7cSMarek Vasut /* 24*3ba8bf7cSMarek Vasut * Define CONFIG_CPU_MONAHANS in case some CPU of the PXA3xx family is selected. 25*3ba8bf7cSMarek Vasut * PXA300/310/320 all have distinct register mappings in some cases, that's why 26*3ba8bf7cSMarek Vasut * the exact CPU has to be selected. CONFIG_CPU_MONAHANS is a helper for common 27*3ba8bf7cSMarek Vasut * drivers and compatibility glue with old source then. 28*3ba8bf7cSMarek Vasut */ 29*3ba8bf7cSMarek Vasut #ifndef CONFIG_CPU_MONAHANS 30*3ba8bf7cSMarek Vasut #if defined(CONFIG_CPU_PXA300) || \ 31*3ba8bf7cSMarek Vasut defined(CONFIG_CPU_PXA310) || \ 32*3ba8bf7cSMarek Vasut defined(CONFIG_CPU_PXA320) 33*3ba8bf7cSMarek Vasut #define CONFIG_CPU_MONAHANS 34*3ba8bf7cSMarek Vasut #endif 35*3ba8bf7cSMarek Vasut #endif 36819833afSPeter Tyser 37819833afSPeter Tyser /* 38819833afSPeter Tyser * These are statically mapped PCMCIA IO space for designs using it as a 39819833afSPeter Tyser * generic IO bus, typically with ISA parts, hardwired IDE interfaces, etc. 40819833afSPeter Tyser * The actual PCMCIA code is mapping required IO region at run time. 41819833afSPeter Tyser */ 42819833afSPeter Tyser #define PCMCIA_IO_0_BASE 0xf6000000 43819833afSPeter Tyser #define PCMCIA_IO_1_BASE 0xf7000000 44819833afSPeter Tyser 45819833afSPeter Tyser 46819833afSPeter Tyser /* 47819833afSPeter Tyser * We requires absolute addresses. 48819833afSPeter Tyser */ 49819833afSPeter Tyser #define PCIO_BASE 0 50819833afSPeter Tyser 51819833afSPeter Tyser /* 52819833afSPeter Tyser * Workarounds for at least 2 errata so far require this. 53819833afSPeter Tyser * The mapping is set in mach-pxa/generic.c. 54819833afSPeter Tyser */ 55819833afSPeter Tyser #define UNCACHED_PHYS_0 0xff000000 56819833afSPeter Tyser #define UNCACHED_ADDR UNCACHED_PHYS_0 57819833afSPeter Tyser 58819833afSPeter Tyser /* 59819833afSPeter Tyser * Intel PXA internal I/O mappings: 60819833afSPeter Tyser * 61819833afSPeter Tyser * 0x40000000 - 0x41ffffff <--> 0xf8000000 - 0xf9ffffff 62819833afSPeter Tyser * 0x44000000 - 0x45ffffff <--> 0xfa000000 - 0xfbffffff 63819833afSPeter Tyser * 0x48000000 - 0x49ffffff <--> 0xfc000000 - 0xfdffffff 64819833afSPeter Tyser */ 65819833afSPeter Tyser 66819833afSPeter Tyser #include "pxa-regs.h" 67819833afSPeter Tyser 68819833afSPeter Tyser #ifndef __ASSEMBLY__ 69819833afSPeter Tyser 70819833afSPeter Tyser /* 71819833afSPeter Tyser * GPIO edge detection for IRQs: 72819833afSPeter Tyser * IRQs are generated on Falling-Edge, Rising-Edge, or both. 73819833afSPeter Tyser * This must be called *before* the corresponding IRQ is registered. 74819833afSPeter Tyser * Use this instead of directly setting GRER/GFER. 75819833afSPeter Tyser */ 76819833afSPeter Tyser #define GPIO_FALLING_EDGE 1 77819833afSPeter Tyser #define GPIO_RISING_EDGE 2 78819833afSPeter Tyser #define GPIO_BOTH_EDGES 3 79819833afSPeter Tyser 80819833afSPeter Tyser #endif 81819833afSPeter Tyser 82819833afSPeter Tyser 83819833afSPeter Tyser /* 84819833afSPeter Tyser * Implementation specifics 85819833afSPeter Tyser */ 86819833afSPeter Tyser 87819833afSPeter Tyser #ifdef CONFIG_ARCH_LUBBOCK 88819833afSPeter Tyser #include "lubbock.h" 89819833afSPeter Tyser #endif 90819833afSPeter Tyser 91819833afSPeter Tyser #ifdef CONFIG_ARCH_PXA_IDP 92819833afSPeter Tyser #include "idp.h" 93819833afSPeter Tyser #endif 94819833afSPeter Tyser 95819833afSPeter Tyser #ifdef CONFIG_ARCH_PXA_CERF 96819833afSPeter Tyser #include "cerf.h" 97819833afSPeter Tyser #endif 98819833afSPeter Tyser 99819833afSPeter Tyser #ifdef CONFIG_ARCH_CSB226 100819833afSPeter Tyser #include "csb226.h" 101819833afSPeter Tyser #endif 102819833afSPeter Tyser 103819833afSPeter Tyser #ifdef CONFIG_ARCH_INNOKOM 104819833afSPeter Tyser #include "innokom.h" 105819833afSPeter Tyser #endif 106819833afSPeter Tyser 107819833afSPeter Tyser #ifdef CONFIG_ARCH_PLEB 108819833afSPeter Tyser #include "pleb.h" 109819833afSPeter Tyser #endif 110819833afSPeter Tyser 111819833afSPeter Tyser #endif /* _ASM_ARCH_HARDWARE_H */ 112