Changes in / [72bf0d2:f8f7dba] in mainline
- Files:
-
- 4 added
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/abs32le/Makefile.inc
r72bf0d2 rf8f7dba 50 50 endif 51 51 52 ifeq ($(COMPILER),clang)53 CLANG_ARCH = i38654 endif55 56 52 BITS = 32 57 53 ENDIANESS = LE -
kernel/arch/sparc64/include/mm/sun4v/mmu.h
r72bf0d2 rf8f7dba 28 28 */ 29 29 30 /** @addtogroup sparc64mm 30 /** @addtogroup sparc64mm 31 31 * @{ 32 32 */ -
kernel/arch/sparc64/include/mm/sun4v/tlb.h
r72bf0d2 rf8f7dba 28 28 */ 29 29 30 /** @addtogroup sparc64mm 30 /** @addtogroup sparc64mm 31 31 * @{ 32 32 */ -
kernel/arch/sparc64/include/mm/sun4v/tsb.h
r72bf0d2 rf8f7dba 28 28 */ 29 29 30 /** @addtogroup sparc64mm 30 /** @addtogroup sparc64mm 31 31 * @{ 32 32 */ -
kernel/arch/sparc64/include/mm/sun4v/tte.h
r72bf0d2 rf8f7dba 27 27 */ 28 28 29 /** @addtogroup sparc64mm 29 /** @addtogroup sparc64mm 30 30 * @{ 31 31 */ -
kernel/arch/sparc64/include/smp/sun4v/smp.h
r72bf0d2 rf8f7dba 38 38 #define KERN_sparc64_sun4v_SMP_H_ 39 39 40 #include <typedefs.h> 41 #include <arch/sun4v/cpu.h> 42 43 extern bool calculate_optimal_nrdy(exec_unit_t *); 40 bool calculate_optimal_nrdy(exec_unit_t *exec_unit); 44 41 45 42 #endif -
kernel/arch/sparc64/include/sun4v/cpu.h
r72bf0d2 rf8f7dba 44 44 #ifndef __ASM__ 45 45 46 #include <atomic.h>47 #include <synch/spinlock.h>48 49 46 struct cpu; 50 47 … … 54 51 uint64_t cpuids[MAX_CORE_STRANDS]; 55 52 struct cpu *cpus[MAX_CORE_STRANDS]; 53 //cpu_t *cpus[MAX_CORE_STRANDS]; 56 54 atomic_t nrdy; 57 55 SPINLOCK_DECLARE(proposed_nrdy_lock); -
kernel/arch/sparc64/include/sun4v/ipi.h
r72bf0d2 rf8f7dba 38 38 #define KERN_sparc64_sun4v_IPI_H_ 39 39 40 #include <arch/types.h> 41 42 extern uint64_t ipi_brodcast_to(void (*)(void), uint16_t cpu_list[], uint64_t); 43 extern uint64_t ipi_unicast_to(void (*)(void), uint16_t); 40 uint64_t ipi_brodcast_to(void (*func)(void), uint16_t cpu_list[MAX_NUM_STRANDS], 41 uint64_t list_size); 42 uint64_t ipi_unicast_to(void (*func)(void), uint16_t cpu_id); 44 43 45 44 #endif -
kernel/arch/sparc64/include/trap/sun4v/interrupt.h
r72bf0d2 rf8f7dba 40 40 #ifndef __ASM__ 41 41 42 externvoid sun4v_ipi_init(void);43 externvoid cpu_mondo(void);42 void sun4v_ipi_init(void); 43 void cpu_mondo(void); 44 44 45 45 #endif -
kernel/arch/sparc64/src/cpu/sun4v/cpu.c
r72bf0d2 rf8f7dba 42 42 #include <arch/sun4v/hypercall.h> 43 43 #include <arch/trap/sun4v/interrupt.h> 44 45 //#include <arch/trap/sun4v/interrupt.h> 44 46 45 47 /** Perform sparc64 specific initialization of the processor structure for the … … 95 97 { 96 98 printf("cpu%d: Niagara (%d MHz)\n", m->id, 97 99 m->arch.clock_frequency / 1000000); 98 100 } 99 101 -
kernel/arch/sparc64/src/smp/sun4u/smp.c
r72bf0d2 rf8f7dba 36 36 #include <genarch/ofw/ofw_tree.h> 37 37 #include <cpu.h> 38 #include <arch/ cpu_family.h>38 #include <arch/sun4u/cpu_family.h> 39 39 #include <arch/cpu.h> 40 40 #include <arch.h> … … 45 45 #include <synch/waitq.h> 46 46 #include <print.h> 47 #include <arch/ cpu_node.h>47 #include <arch/sun4u/cpu_node.h> 48 48 49 49 /** … … 62 62 { 63 63 ofw_tree_node_t *node; 64 unsigned int cnt = 0;64 count_t cnt = 0; 65 65 66 66 if (is_us() || is_us_iii()) { -
kernel/arch/sparc64/src/trap/sun4v/interrupt.c
r72bf0d2 rf8f7dba 36 36 #include <arch/trap/interrupt.h> 37 37 #include <arch/sparc64.h> 38 #include <arch/trap/interrupt.h> 38 39 #include <interrupt.h> 39 40 #include <ddi/irq.h> … … 88 89 CPU_MONDO_NENTRIES) != EOK) 89 90 panic("Initializing mondo queue failed on CPU %d.\n", 90 91 CPU->arch.id); 91 92 } 92 93 … … 97 98 void cpu_mondo(void) 98 99 { 99 #ifdef CONFIG_SMP100 100 unsigned int tail = asi_u64_read(ASI_QUEUE, VA_CPU_MONDO_QUEUE_TAIL); 101 101 unsigned int head = asi_u64_read(ASI_QUEUE, VA_CPU_MONDO_QUEUE_HEAD); 102 102 103 103 while (head != tail) { 104 104 105 uint64_t data1 = cpu_mondo_queues[CPU->id][0]; 105 106 106 107 head = (head + CPU_MONDO_ENTRY_SIZE * sizeof(uint64_t)) % 107 108 (CPU_MONDO_QUEUE_SIZE * sizeof(uint64_t)); 108 109 asi_u64_write(ASI_QUEUE, VA_CPU_MONDO_QUEUE_HEAD, head); 109 110 110 if (data1 == (uint ptr_t) tlb_shootdown_ipi_recv) {111 if (data1 == (uint64_t) tlb_shootdown_ipi_recv) { 111 112 ((void (*)(void)) data1)(); 112 113 } else { 113 114 printf("Spurious interrupt on %d, data = %lx.\n", 114 115 CPU->arch.id, data1); 115 116 } 117 116 118 } 117 #endif 119 118 120 } 119 121 -
kernel/generic/src/proc/scheduler.c
r72bf0d2 rf8f7dba 201 201 * even though there is a runnable thread. 202 202 */ 203 204 203 cpu_sleep(); 205 204 goto loop; -
uspace/lib/libc/arch/abs32le/Makefile.inc
r72bf0d2 rf8f7dba 46 46 endif 47 47 48 ifeq ($(COMPILER),clang)49 CLANG_ARCH = i38650 endif51 52 48 ARCH_SOURCES = \ 53 49 arch/$(UARCH)/src/entry.c \
Note:
See TracChangeset
for help on using the changeset viewer.