1/*
2 * Alchemy Semi PB1100 Referrence Board
3 *
4 * Copyright 2001 MontaVista Software Inc.
5 * Author: MontaVista Software, Inc.
6 *         	ppopov@mvista.com or source@mvista.com
7 *
8 * ########################################################################
9 *
10 *  This program is free software; you can distribute it and/or modify it
11 *  under the terms of the GNU General Public License (Version 2) as
12 *  published by the Free Software Foundation.
13 *
14 *  This program is distributed in the hope it will be useful, but WITHOUT
15 *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
16 *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
17 *  for more details.
18 *
19 *  You should have received a copy of the GNU General Public License along
20 *  with this program; if not, write to the Free Software Foundation, Inc.,
21 *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
22 *
23 * ########################################################################
24 *
25 *
26 */
27#ifndef __ASM_PB1100_H
28#define __ASM_PB1100_H
29
30#define PB1100_IDENT          0xAE000000
31#define BOARD_STATUS_REG      0xAE000004
32  #define PB1100_ROM_SEL         (1<<15)
33  #define PB1100_ROM_SIZ         (1<<14)
34  #define PB1100_SWAP_BOOT       (1<<13)
35  #define PB1100_FLASH_WP        (1<<12)
36  #define PB1100_ROM_H_STS       (1<<11)
37  #define PB1100_ROM_L_STS       (1<<10)
38  #define PB1100_FLASH_H_STS      (1<<9)
39  #define PB1100_FLASH_L_STS      (1<<8)
40  #define PB1100_SRAM_SIZ         (1<<7)
41  #define PB1100_TSC_BUSY         (1<<6)
42  #define PB1100_PCMCIA_VS_MASK   (3<<4)
43  #define PB1100_RS232_CD         (1<<3)
44  #define PB1100_RS232_CTS        (1<<2)
45  #define PB1100_RS232_DSR        (1<<1)
46  #define PB1100_RS232_RI         (1<<0)
47
48#define PB1100_IRDA_RS232     0xAE00000C
49  #define PB1100_IRDA_FULL       (0<<14) /* full power */
50  #define PB1100_IRDA_SHUTDOWN   (1<<14)
51  #define PB1100_IRDA_TT         (2<<14) /* 2/3 power */
52  #define PB1100_IRDA_OT         (3<<14) /* 1/3 power */
53  #define PB1100_IRDA_FIR        (1<<13)
54
55#define PCMCIA_BOARD_REG     0xAE000010
56  #define PB1100_SD_WP1_RO       (1<<15) /* read only */
57  #define PB1100_SD_WP0_RO       (1<<14) /* read only */
58  #define PB1100_SD_PWR1         (1<<11) /* applies power to SD1 */
59  #define PB1100_SD_PWR0         (1<<10) /* applies power to SD0 */
60  #define PB1100_SEL_SD_CONN1     (1<<9)
61  #define PB1100_SEL_SD_CONN0     (1<<8)
62  #define PC_DEASSERT_RST         (1<<7)
63  #define PC_DRV_EN               (1<<4)
64
65#define PB1100_G_CONTROL      0xAE000014 /* graphics control */
66
67#define PB1100_RST_VDDI       0xAE00001C
68  #define PB1100_SOFT_RESET      (1<<15) /* clear to reset the board */
69  #define PB1100_VDDI_MASK        (0x1F)
70
71#define PB1100_LEDS           0xAE000018
72
73/* 11:8 is 4 discreet LEDs. Clearing a bit illuminates the LED.
74 * 7:0 is the LED Display's decimal points.
75 */
76#define PB1100_HEX_LED        0xAE000018
77
78/* PCMCIA PB1100 specific defines */
79#define PCMCIA_MAX_SOCK 0
80#define PCMCIA_NUM_SOCKS (PCMCIA_MAX_SOCK+1)
81
82/* VPP/VCC */
83#define SET_VCC_VPP(VCC, VPP) (((VCC)<<2) | ((VPP)<<0))
84
85#endif /* __ASM_PB1100_H */
86