Subversion Repositories HelenOS-historic

Rev

Rev 341 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 341 Rev 389
Line 50... Line 50...
50
 * Magic value for use in msim.
50
 * Magic value for use in msim.
51
 * On AMD Duron 800Mhz, this roughly seems like one us.
51
 * On AMD Duron 800Mhz, this roughly seems like one us.
52
 */
52
 */
53
#define cp0_compare_value       10000
53
#define cp0_compare_value       10000
54
 
54
 
55
static inline void tlbp(void)
-
 
56
{
-
 
57
    __asm__ volatile ("tlbp");
-
 
58
}
-
 
59
 
-
 
60
static inline void tlbr(void)
-
 
61
{
-
 
62
    __asm__ volatile ("tlbr");
-
 
63
}
-
 
64
static inline void tlbwi(void)
-
 
65
{
-
 
66
    __asm__ volatile ("tlbwi");
-
 
67
}
-
 
68
static inline void tlbwr(void)
-
 
69
{
-
 
70
    __asm__ volatile ("tlbwr");
-
 
71
}
-
 
72
 
-
 
73
#define cp0_mask_all_int() cp0_status_write(cp0_status_read() & ~(cp0_status_im_mask))
55
#define cp0_mask_all_int() cp0_status_write(cp0_status_read() & ~(cp0_status_im_mask))
74
#define cp0_unmask_all_int() cp0_status_write(cp0_status_read() | cp0_status_im_mask)
56
#define cp0_unmask_all_int() cp0_status_write(cp0_status_read() | cp0_status_im_mask)
75
#define cp0_mask_int(it) cp0_status_write(cp0_status_read() & ~(1<<(cp0_status_im_shift+(it))))
57
#define cp0_mask_int(it) cp0_status_write(cp0_status_read() & ~(1<<(cp0_status_im_shift+(it))))
76
#define cp0_unmask_int(it) cp0_status_write(cp0_status_read() | (1<<(cp0_status_im_shift+(it))))
58
#define cp0_unmask_int(it) cp0_status_write(cp0_status_read() | (1<<(cp0_status_im_shift+(it))))
77
 
59
 
78
 
-
 
79
extern  __u32 cp0_index_read(void);
60
extern  __u32 cp0_index_read(void);
80
extern void cp0_idnex_write(__u32 val);
61
extern void cp0_index_write(__u32 val);
81
 
62
 
82
extern __u32 cp0_random_read(void);
63
extern __u32 cp0_random_read(void);
83
 
64
 
84
extern __u32 cp0_entry_lo0_read(void);
65
extern __u32 cp0_entry_lo0_read(void);
85
extern void cp0_entry_lo0_write(__u32 val);
66
extern void cp0_entry_lo0_write(__u32 val);