Changeset 454f1da in mainline for kernel/arch/sparc64/include
- Timestamp:
- 2007-03-26T19:35:28Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 5d7daff
- Parents:
- 4638401
- Location:
- kernel/arch/sparc64/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/sparc64/include/cpu.h
r4638401 r454f1da 40 40 #include <arch/asm.h> 41 41 42 #ifdef CONFIG_SMP 43 #include <arch/mm/cache.h> 44 #endif 45 42 46 #define MANUF_FUJITSU 0x04 43 47 #define MANUF_ULTRASPARC 0x17 /**< UltraSPARC I, UltraSPARC II */ … … 54 58 55 59 typedef struct { 56 uint32_t mid; /**< Processor ID as read from UPA_CONFIG. */ 60 uint32_t mid; /**< Processor ID as read from 61 UPA_CONFIG. */ 57 62 ver_reg_t ver; 58 63 uint32_t clock_frequency; /**< Processor frequency in Hz. */ 59 64 uint64_t next_tick_cmpr; /**< Next clock interrupt should be 60 generated when the TICK register 61 matches this value. */ 65 generated when the TICK register 66 matches this value. */ 67 #ifdef CONFIG_SMP 68 int dcache_active; 69 dcache_shootdown_msg_t dcache_messages[DCACHE_MSG_QUEUE_LEN]; 70 count_t dcache_message_count; 71 #endif 62 72 } cpu_arch_t; 63 73 -
kernel/arch/sparc64/include/interrupt.h
r4638401 r454f1da 47 47 48 48 enum { 49 IPI_TLB_SHOOTDOWN = VECTOR_TLB_SHOOTDOWN_IPI 49 IPI_TLB_SHOOTDOWN = VECTOR_TLB_SHOOTDOWN_IPI, 50 IPI_DCACHE_SHOOTDOWN 50 51 }; 51 52 -
kernel/arch/sparc64/include/mm/cache.h
r4638401 r454f1da 44 44 dcache_flush_tag(PAGE_COLOR((p)), ADDR2PFN((f))); 45 45 46 /** 47 * Enumerations to differentiate among different scopes of D-Cache 48 * invalidation. 49 */ 50 typedef enum { 51 DCACHE_INVL_INVALID, 52 DCACHE_INVL_ALL, 53 DCACHE_INVL_COLOR, 54 DCACHE_INVL_FRAME 55 } dcache_invalidate_type_t; 56 57 /** 58 * Number of messages that can be queued in the cpu_arch_t structure at a time. 59 */ 60 #define DCACHE_MSG_QUEUE_LEN 10 61 62 /** D-cache shootdown message type. */ 63 typedef struct { 64 dcache_invalidate_type_t type; 65 int color; 66 uintptr_t frame; 67 } dcache_shootdown_msg_t; 68 46 69 extern void dcache_flush(void); 47 70 extern void dcache_flush_color(int c); 48 71 extern void dcache_flush_tag(int c, pfn_t tag); 72 73 #ifdef CONFIG_SMP 74 extern void dcache_shootdown_start(dcache_invalidate_type_t type, int color, 75 uintptr_t frame); 76 extern void dcache_shootdown_finalize(void); 77 extern void dcache_shootdown_ipi_recv(void); 78 #else 79 #define dcache_shootdown_start(t, c, f) 80 #define dcache_shootdown_finalize() 81 #define dcache_shootdown_ipi_recv() 82 #endif /* CONFIG_SMP */ 49 83 50 84 #endif
Note:
See TracChangeset
for help on using the changeset viewer.