comparison packages/hal/powerpc/arch/current/include/hal_cache.h @ 16:4f2df4ab82c8 ecos-sw-1999-06-18

Merge from eCos master repository on 1999-06-18-15:25:04-BST
author jlarmour
date Fri, 18 Jun 1999 07:59:09 +0000
parents d3fbcdfa1b2f
children e7ba79f6d3a8
comparison
equal deleted inserted replaced
15:c0d8793d9978 16:4f2df4ab82c8
59 CYG_ADDRESS physical_addr; 59 CYG_ADDRESS physical_addr;
60 cyg_int32 size; 60 cyg_int32 size;
61 cyg_uint8 flags; 61 cyg_uint8 flags;
62 } cyg_memdesc_t; 62 } cyg_memdesc_t;
63 63
64 // each platform HAL must provide one of these to describe how memory
65 // should be mapped/cached, ideally weak aliased so that apps can override:
66 externC cyg_memdesc_t cyg_hal_mem_map[];
67
64 #define CYGARC_MEMDESC_CI 1 // cache inhibit 68 #define CYGARC_MEMDESC_CI 1 // cache inhibit
65 #define CYGARC_MEMDESC_GUARDED 2 // guarded 69 #define CYGARC_MEMDESC_GUARDED 2 // guarded
70
71 // these macros should ease that task, and ease any future extension of the
72 // structure (physical == virtual addresses):
73 #define CYGARC_MEMDESC_CACHE( _va_, _sz_ ) \
74 { (_va_), (_va_), (_sz_), 0 }
75
76 #define CYGARC_MEMDESC_NOCACHE( _va_, _sz_ ) \
77 { (_va_), (_va_), (_sz_), CYGARC_MEMDESC_CI }
78
79 #define CYGARC_MEMDESC_CACHEGUARD( _va_, _sz_ ) \
80 { (_va_), (_va_), (_sz_), CYGARC_MEMDESC_GUARDED }
81
82 #define CYGARC_MEMDESC_NOCACHEGUARD( _va_, _sz_ ) \
83 { (_va_), (_va_), (_sz_), CYGARC_MEMDESC_GUARDED|CYGARC_MEMDESC_CI }
84
85 #define CYGARC_MEMDESC_TABLE_END {0, 0, 0, 0}
86 #define CYGARC_MEMDESC_TABLE cyg_memdesc_t cyg_hal_mem_map[]
87 #define CYGARC_MEMDESC_EMPTY_TABLE { CYGARC_MEMDESC_TABLE_END }
66 88
67 //============================================================================= 89 //=============================================================================
68 // PowerPC simulator 90 // PowerPC simulator
69 91
70 #ifdef CYG_HAL_POWERPC_SIM 92 #ifdef CYG_HAL_POWERPC_SIM