ps2sdk
1.1
A collection of Open Source libraries used for developing applications on Sony's PlayStation 2® (PS2).
aifregs.h
Go to the documentation of this file.
1
6
#ifndef __AIFREGS_H__
7
#define __AIFREGS_H__
8
9
#include <
tamtypes.h
>
10
11
#define AIF_REGBASE (SPD_REGBASE + 0x4000000)
12
13
#define USE_AIF_REGS volatile u16 *aif_regs = \
14
(volatile u16 *)AIF_REGBASE
15
16
enum
AIF_REGS
{
17
AIF_IDENT
= 0x00,
18
AIF_REVISION
,
19
AIF_INTSR
,
20
AIF_INTEN
,
21
AIF_TIMCFG
,
22
AIF_COUNT_L
= 0x08,
23
AIF_COUNT_H
,
24
AIF_ATA_TCFG
= 0x20,
25
AIF_ATA
= 0x30,
//ATA register base.
26
AIF_ATACTL
= 0x3C,
27
AIF_RTC
= 0x80
//RTC register base.
28
};
29
30
#define AIF_INTCL AIF_INTSR
31
32
//AIF interrupt management
33
enum
AIF_INUM
{
34
AIF_INUM_ATA0
= 0,
35
AIF_INUM_RTC
,
//I don't know what this interrupt event is, but it should be for the RTC because it doesn't have a known bit for itself.
36
AIF_INUM_PCMCIA
,
37
38
AIF_INUM_COUNT
39
};
40
41
#define AIF_INTR_ATA0 (1<<AIF_INUM_ATA0)
42
#define AIF_INTR_RTC (1<<AIF_INUM_RTC)
43
#define AIF_INTR_PCMCIA (1<<AIF_INUM_PCMCIA)
44
45
//Motorola MC146818 RTC management
46
#define USE_AIF_RTC_REGS volatile u16 *aif_rtc_regs = \
47
(&aif_regs[AIF_RTC])
48
49
enum
RTC_REGS
{
50
RTC_SECONDS
= 0x00,
51
RTC_SECONDS_ALARM
,
52
RTC_MINUTES
,
53
RTC_MINUTES_ALARM
,
54
RTC_HOURS
,
55
RTC_HOURS_ALARM
,
56
RTC_DAY_OF_WEEK
,
57
RTC_DAY_OF_MONTH
,
58
RTC_MONTH
,
59
RTC_YEAR
,
60
RTC_REG_A
,
61
RTC_REG_B
,
62
RTC_REG_C
,
63
RTC_REG_D
64
};
65
66
/**********************************************************************
67
* RTC register details, taken from mc146818rtc.h
68
**********************************************************************/
69
#define RTC_FREQ_SELECT RTC_REG_A
70
76
# define RTC_UIP 0x80
77
# define RTC_DIV_CTL 0x70
79
# define RTC_REF_CLCK_4MHZ 0x00
80
# define RTC_REF_CLCK_1MHZ 0x10
81
# define RTC_REF_CLCK_32KHZ 0x20
83
# define RTC_DIV_RESET1 0x60
84
# define RTC_DIV_RESET2 0x70
86
# define RTC_RATE_SELECT 0x0F
87
88
/**********************************************************************/
89
#define RTC_CONTROL RTC_REG_B
91
# define RTC_SET 0x80
93
# define RTC_PIE 0x40
95
# define RTC_AIE 0x20
97
# define RTC_UIE 0x10
99
# define RTC_SQWE 0x08
101
# define RTC_DM_BINARY 0x04
103
# define RTC_24H 0x02
105
# define RTC_DST_EN 0x01
106
107
108
/**********************************************************************/
109
#define RTC_INTR_FLAGS RTC_REG_C
110
/* caution - cleared by read */
112
# define RTC_IRQF 0x80
113
# define RTC_PF 0x40
114
# define RTC_AF 0x20
115
# define RTC_UF 0x10
116
117
/**********************************************************************/
118
#define RTC_VALID RTC_REG_D
120
# define RTC_VRT 0x80
121
/**********************************************************************/
122
123
#endif
/* __AIFREGS_H__ */
RTC_REGS
RTC_REGS
Definition:
aifregs.h:49
RTC_REG_D
@ RTC_REG_D
Definition:
aifregs.h:63
RTC_REG_A
@ RTC_REG_A
Definition:
aifregs.h:60
RTC_MONTH
@ RTC_MONTH
Definition:
aifregs.h:58
RTC_DAY_OF_WEEK
@ RTC_DAY_OF_WEEK
Definition:
aifregs.h:56
RTC_REG_B
@ RTC_REG_B
Definition:
aifregs.h:61
RTC_YEAR
@ RTC_YEAR
Definition:
aifregs.h:59
RTC_REG_C
@ RTC_REG_C
Definition:
aifregs.h:62
RTC_HOURS_ALARM
@ RTC_HOURS_ALARM
Definition:
aifregs.h:55
RTC_MINUTES_ALARM
@ RTC_MINUTES_ALARM
Definition:
aifregs.h:53
RTC_SECONDS
@ RTC_SECONDS
Definition:
aifregs.h:50
RTC_MINUTES
@ RTC_MINUTES
Definition:
aifregs.h:52
RTC_SECONDS_ALARM
@ RTC_SECONDS_ALARM
Definition:
aifregs.h:51
RTC_DAY_OF_MONTH
@ RTC_DAY_OF_MONTH
Definition:
aifregs.h:57
RTC_HOURS
@ RTC_HOURS
Definition:
aifregs.h:54
AIF_INUM
AIF_INUM
Definition:
aifregs.h:33
AIF_INUM_ATA0
@ AIF_INUM_ATA0
Definition:
aifregs.h:34
AIF_INUM_PCMCIA
@ AIF_INUM_PCMCIA
Definition:
aifregs.h:36
AIF_INUM_COUNT
@ AIF_INUM_COUNT
Definition:
aifregs.h:38
AIF_INUM_RTC
@ AIF_INUM_RTC
Definition:
aifregs.h:35
AIF_REGS
AIF_REGS
Definition:
aifregs.h:16
AIF_ATA
@ AIF_ATA
Definition:
aifregs.h:25
AIF_INTSR
@ AIF_INTSR
Definition:
aifregs.h:19
AIF_COUNT_H
@ AIF_COUNT_H
Definition:
aifregs.h:23
AIF_COUNT_L
@ AIF_COUNT_L
Definition:
aifregs.h:22
AIF_INTEN
@ AIF_INTEN
Definition:
aifregs.h:20
AIF_ATA_TCFG
@ AIF_ATA_TCFG
Definition:
aifregs.h:24
AIF_TIMCFG
@ AIF_TIMCFG
Definition:
aifregs.h:21
AIF_IDENT
@ AIF_IDENT
Definition:
aifregs.h:17
AIF_REVISION
@ AIF_REVISION
Definition:
aifregs.h:18
AIF_RTC
@ AIF_RTC
Definition:
aifregs.h:27
AIF_ATACTL
@ AIF_ATACTL
Definition:
aifregs.h:26
tamtypes.h
common
include
aifregs.h
Generated on Thu Feb 11 2021 11:42:21 for ps2sdk by
1.9.2