]>
Commit | Line | Data |
---|---|---|
c2a560f5 PM |
1 | #ifndef __ASM_SH_HP6XX_H |
2 | #define __ASM_SH_HP6XX_H | |
3 | ||
4 | /* | |
5 | * Copyright (C) 2003, 2004, 2005 Andriy Skulysh | |
6 | * | |
7 | * This file is subject to the terms and conditions of the GNU General Public | |
8 | * License. See the file "COPYING" in the main directory of this archive | |
9 | * for more details. | |
10 | * | |
11 | */ | |
12 | ||
b863f46e KE |
13 | #define HP680_BTN_IRQ 32 /* IRQ0_IRQ */ |
14 | #define HP680_TS_IRQ 35 /* IRQ3_IRQ */ | |
15 | #define HP680_HD64461_IRQ 36 /* IRQ4_IRQ */ | |
c2a560f5 PM |
16 | |
17 | #define DAC_LCD_BRIGHTNESS 0 | |
18 | #define DAC_SPEAKER_VOLUME 1 | |
19 | ||
20 | #define PGDR_OPENED 0x01 | |
21 | #define PGDR_MAIN_BATTERY_OUT 0x04 | |
22 | #define PGDR_PLAY_BUTTON 0x08 | |
23 | #define PGDR_REWIND_BUTTON 0x10 | |
24 | #define PGDR_RECORD_BUTTON 0x20 | |
25 | ||
26 | #define PHDR_TS_PEN_DOWN 0x08 | |
27 | ||
28 | #define PJDR_LED_BLINK 0x02 | |
29 | ||
30 | #define PKDR_LED_GREEN 0x10 | |
31 | ||
32 | #define SCPDR_TS_SCAN_ENABLE 0x20 | |
33 | #define SCPDR_TS_SCAN_Y 0x02 | |
34 | #define SCPDR_TS_SCAN_X 0x01 | |
35 | ||
36 | #define SCPCR_TS_ENABLE 0x405 | |
37 | #define SCPCR_TS_MASK 0xc0f | |
38 | ||
39 | #define ADC_CHANNEL_TS_Y 1 | |
40 | #define ADC_CHANNEL_TS_X 2 | |
41 | #define ADC_CHANNEL_BATTERY 3 | |
42 | #define ADC_CHANNEL_BACKUP 4 | |
43 | #define ADC_CHANNEL_CHARGE 5 | |
44 | ||
45 | #define HD64461_GPADR_SPEAKER 0x01 | |
46 | #define HD64461_GPADR_PCMCIA0 (0x02|0x08) | |
47 | ||
48 | #define HD64461_GPBDR_LCDOFF 0x01 | |
49 | #define HD64461_GPBDR_LCD_CONTRAST_MASK 0x78 | |
50 | #define HD64461_GPBDR_LED_RED 0x80 | |
51 | ||
52 | #include <asm/hd64461.h> | |
53 | #include <asm/io.h> | |
54 | ||
55 | #define PJDR 0xa4000130 | |
56 | #define PKDR 0xa4000132 | |
57 | ||
58 | static inline void hp6xx_led_red(int on) | |
59 | { | |
60 | u16 v16; | |
61 | v16 = ctrl_inw(CONFIG_HD64461_IOBASE + HD64461_GPBDR - 0x10000); | |
62 | if (on) | |
63 | ctrl_outw(v16 & (~HD64461_GPBDR_LED_RED), CONFIG_HD64461_IOBASE + HD64461_GPBDR - 0x10000); | |
64 | else | |
65 | ctrl_outw(v16 | HD64461_GPBDR_LED_RED, CONFIG_HD64461_IOBASE + HD64461_GPBDR - 0x10000); | |
66 | } | |
67 | ||
68 | static inline void hp6xx_led_green(int on) | |
69 | { | |
70 | u8 v8; | |
71 | ||
72 | v8 = ctrl_inb(PKDR); | |
73 | if (on) | |
74 | ctrl_outb(v8 & (~PKDR_LED_GREEN), PKDR); | |
75 | else | |
76 | ctrl_outb(v8 | PKDR_LED_GREEN, PKDR); | |
77 | } | |
78 | ||
79 | ||
80 | #endif /* __ASM_SH_HP6XX_H */ |