Linux v2.6.15-rc6
[pohmelfs.git] / include / asm-arm / arch-ixp4xx / nslu2.h
blobb8b347a559c75e8c7651f64fcff1d62e5f413e0d
1 /*
2 * include/asm-arm/arch-ixp4xx/nslu2.h
4 * NSLU2 platform specific definitions
6 * Author: Mark Rakes <mrakes AT mac.com>
7 * Maintainers: http://www.nslu2-linux.org
9 * based on ixdp425.h:
10 * Copyright 2004 (c) MontaVista, Software, Inc.
12 * This file is licensed under the terms of the GNU General Public
13 * License version 2. This program is licensed "as is" without any
14 * warranty of any kind, whether express or implied.
17 #ifndef __ASM_ARCH_HARDWARE_H__
18 #error "Do not include this directly, instead #include <asm/hardware.h>"
19 #endif
21 #define NSLU2_FLASH_BASE IXP4XX_EXP_BUS_CS0_BASE_PHYS
22 #define NSLU2_FLASH_SIZE IXP4XX_EXP_BUS_CSX_REGION_SIZE
24 #define NSLU2_SDA_PIN 7
25 #define NSLU2_SCL_PIN 6
28 * NSLU2 PCI IRQs
30 #define NSLU2_PCI_MAX_DEV 3
31 #define NSLU2_PCI_IRQ_LINES 3
34 /* PCI controller GPIO to IRQ pin mappings */
35 #define NSLU2_PCI_INTA_PIN 11
36 #define NSLU2_PCI_INTB_PIN 10
37 #define NSLU2_PCI_INTC_PIN 9
38 #define NSLU2_PCI_INTD_PIN 8
41 /* NSLU2 Timer */
42 #define NSLU2_FREQ 66000000
43 #define NSLU2_CLOCK_TICK_RATE (((NSLU2_FREQ / HZ & ~IXP4XX_OST_RELOAD_MASK) + 1) * HZ)
44 #define NSLU2_CLOCK_TICKS_PER_USEC ((NSLU2_CLOCK_TICK_RATE + USEC_PER_SEC/2) / USEC_PER_SEC)
46 /* GPIO */
48 #define NSLU2_GPIO0 0
49 #define NSLU2_GPIO1 1
50 #define NSLU2_GPIO2 2
51 #define NSLU2_GPIO3 3
52 #define NSLU2_GPIO4 4
53 #define NSLU2_GPIO5 5
54 #define NSLU2_GPIO6 6
55 #define NSLU2_GPIO7 7
56 #define NSLU2_GPIO8 8
57 #define NSLU2_GPIO9 9
58 #define NSLU2_GPIO10 10
59 #define NSLU2_GPIO11 11
60 #define NSLU2_GPIO12 12
61 #define NSLU2_GPIO13 13
62 #define NSLU2_GPIO14 14
63 #define NSLU2_GPIO15 15
65 /* Buttons */
67 #define NSLU2_PB_GPIO NSLU2_GPIO5
68 #define NSLU2_PO_GPIO NSLU2_GPIO8 /* power off */
69 #define NSLU2_RB_GPIO NSLU2_GPIO12
71 #define NSLU2_PB_IRQ IRQ_IXP4XX_GPIO5
72 #define NSLU2_RB_IRQ IRQ_IXP4XX_GPIO12
74 #define NSLU2_PB_BM (1L << NSLU2_PB_GPIO)
75 #define NSLU2_PO_BM (1L << NSLU2_PO_GPIO)
76 #define NSLU2_RB_BM (1L << NSLU2_RB_GPIO)
78 /* Buzzer */
80 #define NSLU2_GPIO_BUZZ 4
81 #define NSLU2_BZ_BM (1L << NSLU2_GPIO_BUZZ)
82 /* LEDs */
84 #define NSLU2_LED_RED NSLU2_GPIO0
85 #define NSLU2_LED_GRN NSLU2_GPIO1
87 #define NSLU2_LED_RED_BM (1L << NSLU2_LED_RED)
88 #define NSLU2_LED_GRN_BM (1L << NSLU2_LED_GRN)
90 #define NSLU2_LED_DISK1 NSLU2_GPIO2
91 #define NSLU2_LED_DISK2 NSLU2_GPIO3
93 #define NSLU2_LED_DISK1_BM (1L << NSLU2_GPIO2)
94 #define NSLU2_LED_DISK2_BM (1L << NSLU2_GPIO3)