Subversion Repositories HelenOS

Rev

Rev 1888 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1888 Rev 2071
1
/*
1
/*
2
 * Copyright (C) 2005 Jakub Jermar
2
 * Copyright (c) 2005 Jakub Jermar
3
 * All rights reserved.
3
 * All rights reserved.
4
 *
4
 *
5
 * Redistribution and use in source and binary forms, with or without
5
 * Redistribution and use in source and binary forms, with or without
6
 * modification, are permitted provided that the following conditions
6
 * modification, are permitted provided that the following conditions
7
 * are met:
7
 * are met:
8
 *
8
 *
9
 * - Redistributions of source code must retain the above copyright
9
 * - Redistributions of source code must retain the above copyright
10
 *   notice, this list of conditions and the following disclaimer.
10
 *   notice, this list of conditions and the following disclaimer.
11
 * - Redistributions in binary form must reproduce the above copyright
11
 * - Redistributions in binary form must reproduce the above copyright
12
 *   notice, this list of conditions and the following disclaimer in the
12
 *   notice, this list of conditions and the following disclaimer in the
13
 *   documentation and/or other materials provided with the distribution.
13
 *   documentation and/or other materials provided with the distribution.
14
 * - The name of the author may not be used to endorse or promote products
14
 * - The name of the author may not be used to endorse or promote products
15
 *   derived from this software without specific prior written permission.
15
 *   derived from this software without specific prior written permission.
16
 *
16
 *
17
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20
 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20
 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
 */
27
 */
28
 
28
 
29
/** @addtogroup ia64   
29
/** @addtogroup ia64   
30
 * @{
30
 * @{
31
 */
31
 */
32
/** @file
32
/** @file
33
 */
33
 */
34
 
34
 
35
#ifndef KERN_ia64_PAL_H_
35
#ifndef KERN_ia64_PAL_H_
36
#define KERN_ia64_PAL_H_
36
#define KERN_ia64_PAL_H_
37
 
37
 
38
#define PAL_OK       0  /**< Call completed without error. */
38
#define PAL_OK       0  /**< Call completed without error. */
39
#define PAL_UNIMPL  -1  /**< Unimplemented procedure. */
39
#define PAL_UNIMPL  -1  /**< Unimplemented procedure. */
40
#define PAL_INVARG  -2  /**< Invalid argument. */
40
#define PAL_INVARG  -2  /**< Invalid argument. */
41
#define PAL_ERR     -3  /**< Can not compete call without error. */
41
#define PAL_ERR     -3  /**< Can not compete call without error. */
42
 
42
 
43
/** These are the indices for PAL_PROC. */
43
/** These are the indices for PAL_PROC. */
44
#define PAL_CACHE_FLUSH     1
44
#define PAL_CACHE_FLUSH     1
45
#define PAL_CACHE_INFO      2
45
#define PAL_CACHE_INFO      2
46
#define PAL_CACHE_INIT      3
46
#define PAL_CACHE_INIT      3
47
#define PAL_CACHE_PROT_INFO 38
47
#define PAL_CACHE_PROT_INFO 38
48
#define PAL_CACHE_SHARED_INFO   43
48
#define PAL_CACHE_SHARED_INFO   43
49
#define PAL_CACHE_SUMMARY   4
49
#define PAL_CACHE_SUMMARY   4
50
 
50
 
51
#define PAL_MEM_ATTRIB      5
51
#define PAL_MEM_ATTRIB      5
52
#define PAL_PREFETCH_VISIBILITY 41
52
#define PAL_PREFETCH_VISIBILITY 41
53
#define PAL_PTCE_INFO       6
53
#define PAL_PTCE_INFO       6
54
#define PAL_VM_INFO     7
54
#define PAL_VM_INFO     7
55
#define PAL_VM_PAGE_SIZE    34
55
#define PAL_VM_PAGE_SIZE    34
56
#define PAL_VM_SUMMARY      8
56
#define PAL_VM_SUMMARY      8
57
#define PAL_VM_TR_READ      261
57
#define PAL_VM_TR_READ      261
58
 
58
 
59
#define PAL_BUS_GET_FEATURES    9
59
#define PAL_BUS_GET_FEATURES    9
60
#define PAL_BUS_SET_FEATURES    10
60
#define PAL_BUS_SET_FEATURES    10
61
#define PAL_DEBUG_INFO      11
61
#define PAL_DEBUG_INFO      11
62
#define PAL_FIXED_ADDR      12
62
#define PAL_FIXED_ADDR      12
63
#define PAL_FREQ_BASE       13
63
#define PAL_FREQ_BASE       13
64
#define PAL_FREQ_RATIOS     14
64
#define PAL_FREQ_RATIOS     14
65
#define PAL_LOGICAL_TO_PHYSICAL 42
65
#define PAL_LOGICAL_TO_PHYSICAL 42
66
#define PAL_PERF_MON_INFO   15
66
#define PAL_PERF_MON_INFO   15
67
#define PAL_PLATFORM_ADDR   16
67
#define PAL_PLATFORM_ADDR   16
68
#define PAL_PROC_GET_FEATURES   17
68
#define PAL_PROC_GET_FEATURES   17
69
#define PAL_PROC_SET_FEATURES   18
69
#define PAL_PROC_SET_FEATURES   18
70
#define PAL_REGISTER_INFO   39
70
#define PAL_REGISTER_INFO   39
71
#define PAL_RSE_INFO        19
71
#define PAL_RSE_INFO        19
72
#define PAL_VERSION     20
72
#define PAL_VERSION     20
73
 
73
 
74
#define PAL_MC_CLEAR_LOG    21
74
#define PAL_MC_CLEAR_LOG    21
75
#define PAL_MC_DRAIN        22
75
#define PAL_MC_DRAIN        22
76
#define PAL_MC_DYNAMIC_STATE    24
76
#define PAL_MC_DYNAMIC_STATE    24
77
#define PAL_MC_ERROR_INFO   25
77
#define PAL_MC_ERROR_INFO   25
78
#define PAL_MC_EXPECTED     23
78
#define PAL_MC_EXPECTED     23
79
#define PAL_MC_REGISTER_MEM 27
79
#define PAL_MC_REGISTER_MEM 27
80
#define PAL_MC_RESUME       26
80
#define PAL_MC_RESUME       26
81
 
81
 
82
#define PAL_HALT        28
82
#define PAL_HALT        28
83
#define PAL_HALT_INFO       257
83
#define PAL_HALT_INFO       257
84
#define PAL_HALT_LIGHT      29
84
#define PAL_HALT_LIGHT      29
85
 
85
 
86
#define PAL_CACHE_LINE_INIT 31
86
#define PAL_CACHE_LINE_INIT 31
87
#define PAL_CACHE_READ      259
87
#define PAL_CACHE_READ      259
88
#define PAL_CACHE_WRITE     260
88
#define PAL_CACHE_WRITE     260
89
#define PAL_TEST_INFO       37
89
#define PAL_TEST_INFO       37
90
#define PAL_TEST_PROC       258
90
#define PAL_TEST_PROC       258
91
 
91
 
92
#define PAL_COPY_INFO       30
92
#define PAL_COPY_INFO       30
93
#define PAL_COPY_PAL        256
93
#define PAL_COPY_PAL        256
94
#define PAL_ENTER_IA_32_ENV 33
94
#define PAL_ENTER_IA_32_ENV 33
95
#define PAL_PMI_ENTRYPOINT  32
95
#define PAL_PMI_ENTRYPOINT  32
96
 
96
 
97
/*
97
/*
98
 *  Ski PTCE data
98
 *  Ski PTCE data
99
 */
99
 */
100
#define PAL_PTCE_INFO_BASE() (0x100000000LL)
100
#define PAL_PTCE_INFO_BASE() (0x100000000LL)
101
#define PAL_PTCE_INFO_COUNT1() (2)
101
#define PAL_PTCE_INFO_COUNT1() (2)
102
#define PAL_PTCE_INFO_COUNT2() (3)
102
#define PAL_PTCE_INFO_COUNT2() (3)
103
#define PAL_PTCE_INFO_STRIDE1() (0x10000000)
103
#define PAL_PTCE_INFO_STRIDE1() (0x10000000)
104
#define PAL_PTCE_INFO_STRIDE2() (0x2000)
104
#define PAL_PTCE_INFO_STRIDE2() (0x2000)
105
 
105
 
106
#endif
106
#endif
107
 
107
 
108
/** @}
108
/** @}
109
 */
109
 */
110
 
110