Changeset b60c582 in mainline for kernel/arch
- Timestamp:
- 2009-04-03T08:02:30Z (17 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2398ee9
- Parents:
- 9be1d58
- Location:
- kernel/arch
- Files:
-
- 18 edited
-
arm32/src/arm32.c (modified) (1 diff)
-
arm32/src/asm.S (modified) (2 diffs)
-
ia64/src/cpu/cpu.c (modified) (1 diff)
-
ia64/src/ia64.c (modified) (1 diff)
-
ia64/src/interrupt.c (modified) (1 diff)
-
ia64/src/ski/ski.c (modified) (3 diffs)
-
mips32/src/asm.S (modified) (1 diff)
-
mips32/src/mips32.c (modified) (1 diff)
-
ppc32/src/asm.S (modified) (2 diffs)
-
ppc32/src/ppc32.c (modified) (1 diff)
-
sparc64/include/drivers/sgcn.h (modified) (2 diffs)
-
sparc64/src/console.c (modified) (1 diff)
-
sparc64/src/drivers/kbd.c (modified) (1 diff)
-
sparc64/src/drivers/pci.c (modified) (3 diffs)
-
sparc64/src/drivers/scr.c (modified) (1 diff)
-
sparc64/src/drivers/sgcn.c (modified) (1 diff)
-
sparc64/src/mm/page.c (modified) (1 diff)
-
sparc64/src/sparc64.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm32/src/arm32.c
r9be1d58 rb60c582 63 63 init.tasks[i].addr = bootinfo->tasks[i].addr; 64 64 init.tasks[i].size = bootinfo->tasks[i].size; 65 str ncpy(init.tasks[i].name, bootinfo->tasks[i].name,65 str_ncpy(init.tasks[i].name, bootinfo->tasks[i].name, 66 66 CONFIG_TASK_NAME_BUFLEN); 67 67 } -
kernel/arch/arm32/src/asm.S
r9be1d58 rb60c582 31 31 32 32 .global memsetb 33 .global memsetw 33 34 .global memcpy 34 35 .global memcpy_from_uspace … … 39 40 memsetb: 40 41 b _memsetb 42 43 memsetw: 44 b _memsetw 41 45 42 46 memcpy: -
kernel/arch/ia64/src/cpu/cpu.c
r9be1d58 rb60c582 56 56 *((uint64_t *) &vendor[0 * sizeof(uint64_t)]) = CPU->arch.cpuid0; 57 57 *((uint64_t *) &vendor[1 * sizeof(uint64_t)]) = CPU->arch.cpuid1; 58 vendor[sizeof(vendor) - 1] = '\0';58 vendor[sizeof(vendor) - 1] = 0; 59 59 60 60 switch(m->arch.cpuid3.family) { -
kernel/arch/ia64/src/ia64.c
r9be1d58 rb60c582 88 88 VRN_MASK; 89 89 init.tasks[i].size = bootinfo->taskmap.tasks[i].size; 90 str ncpy(init.tasks[i].name, bootinfo->taskmap.tasks[i].name,90 str_ncpy(init.tasks[i].name, bootinfo->taskmap.tasks[i].name, 91 91 CONFIG_TASK_NAME_BUFLEN); 92 92 } -
kernel/arch/ia64/src/interrupt.c
r9be1d58 rb60c582 55 55 #include <mm/tlb.h> 56 56 #include <symtab.h> 57 #include <putchar.h> 57 58 58 59 #define VECTORS_64_BUNDLE 20 -
kernel/arch/ia64/src/ski/ski.c
r9be1d58 rb60c582 42 42 #include <arch/asm.h> 43 43 #include <arch/drivers/kbd.h> 44 #include <string.h> 44 45 #include <arch.h> 45 46 … … 49 50 static bool kbd_disabled; 50 51 52 static void ski_do_putchar(const wchar_t ch) 53 { 54 asm volatile ( 55 "mov r15 = %[cmd]\n" 56 "mov r32 = %[ch]\n" /* r32 is in0 */ 57 "break 0x80000\n" /* modifies r8 */ 58 : 59 : [cmd] "i" (SKI_PUTCHAR), [ch] "r" (ch) 60 : "r15", "in0", "r8" 61 ); 62 } 63 51 64 /** Display character on debug console 52 65 * … … 57 70 * @param ch Character to be printed. 58 71 */ 59 static void ski_putchar(outdev_t *d, const charch, bool silent)72 static void ski_putchar(outdev_t *d, const wchar_t ch, bool silent) 60 73 { 61 74 if (!silent) { 62 asm volatile ( 63 "mov r15 = %0\n" 64 "mov r32 = %1\n" /* r32 is in0 */ 65 "break 0x80000\n" /* modifies r8 */ 66 : 67 : "i" (SKI_PUTCHAR), "r" (ch) 68 : "r15", "in0", "r8" 69 ); 70 71 if (ch == '\n') 72 ski_putchar(d, '\r', false); 75 if (ascii_check(ch)) { 76 if (ch == '\n') 77 ski_do_putchar('\r'); 78 79 ski_do_putchar(ch); 80 } else 81 ski_do_putchar(invalch); 73 82 } 74 83 } -
kernel/arch/mips32/src/asm.S
r9be1d58 rb60c582 61 61 memsetb: 62 62 j _memsetb 63 nop 64 65 66 .global memsetw 67 memsetw: 68 j _memsetw 63 69 nop 64 70 -
kernel/arch/mips32/src/mips32.c
r9be1d58 rb60c582 92 92 init.tasks[i].addr = bootinfo->tasks[i].addr; 93 93 init.tasks[i].size = bootinfo->tasks[i].size; 94 str ncpy(init.tasks[i].name, bootinfo->tasks[i].name,94 str_ncpy(init.tasks[i].name, bootinfo->tasks[i].name, 95 95 CONFIG_TASK_NAME_BUFLEN); 96 96 } -
kernel/arch/ppc32/src/asm.S
r9be1d58 rb60c582 35 35 .global iret_syscall 36 36 .global memsetb 37 .global memsetw 37 38 .global memcpy 38 39 .global memcpy_from_uspace … … 202 203 203 204 rfi 204 205 205 206 memsetb: 206 207 b _memsetb 208 209 memsetw: 210 b _memsetw 207 211 208 212 memcpy: -
kernel/arch/ppc32/src/ppc32.c
r9be1d58 rb60c582 62 62 init.tasks[i].addr = PA2KA(bootinfo.taskmap.tasks[i].addr); 63 63 init.tasks[i].size = bootinfo.taskmap.tasks[i].size; 64 str ncpy(init.tasks[i].name, bootinfo.taskmap.tasks[i].name,64 str_ncpy(init.tasks[i].name, bootinfo.taskmap.tasks[i].name, 65 65 CONFIG_TASK_NAME_BUFLEN); 66 66 } -
kernel/arch/sparc64/include/drivers/sgcn.h
r9be1d58 rb60c582 39 39 #include <console/chardev.h> 40 40 41 /* number of bytes in the TOC magic, including the terminating '\0'*/41 /* number of bytes in the TOC magic, including the NULL-terminator */ 42 42 #define TOC_MAGIC_BYTES 8 43 43 44 /* number of bytes in the TOC key, including the terminating '\0'*/44 /* number of bytes in the TOC key, including the NULL-terminator */ 45 45 #define TOC_KEY_SIZE 8 46 46 … … 48 48 #define MAX_TOC_ENTRIES 32 49 49 50 /* number of bytes in the SGCN buffer magic, including the terminating '\0'*/50 /* number of bytes in the SGCN buffer magic, including the NULL-terminator */ 51 51 #define SGCN_MAGIC_BYTES 4 52 52 -
kernel/arch/sparc64/src/console.c
r9be1d58 rb60c582 119 119 prop = ofw_tree_getprop(aliases, "def-cn"); 120 120 121 if ((!prop) || (!prop->value) || (str cmp(prop->value, "/sgcn") != 0)) {121 if ((!prop) || (!prop->value) || (str_cmp(prop->value, "/sgcn") != 0)) { 122 122 standard_console_init(aliases); 123 123 } else { -
kernel/arch/sparc64/src/drivers/kbd.c
r9be1d58 rb60c582 87 87 * Determine keyboard serial controller type. 88 88 */ 89 if (str cmp(name, "zs") == 0)89 if (str_cmp(name, "zs") == 0) 90 90 kbd_type = KBD_Z8530; 91 else if (str cmp(name, "su") == 0)91 else if (str_cmp(name, "su") == 0) 92 92 kbd_type = KBD_NS16550; 93 93 -
kernel/arch/sparc64/src/drivers/pci.c
r9be1d58 rb60c582 184 184 * First, verify this is a PCI node. 185 185 */ 186 ASSERT(str cmp(ofw_tree_node_name(node), "pci") == 0);186 ASSERT(str_cmp(ofw_tree_node_name(node), "pci") == 0); 187 187 188 188 /* … … 193 193 return NULL; 194 194 195 if (str cmp(prop->value, "SUNW,sabre") == 0) {195 if (str_cmp(prop->value, "SUNW,sabre") == 0) { 196 196 /* 197 197 * PCI controller Sabre. … … 199 199 */ 200 200 return pci_sabre_init(node); 201 } else if (str cmp(prop->value, "SUNW,psycho") == 0) {201 } else if (str_cmp(prop->value, "SUNW,psycho") == 0) { 202 202 /* 203 203 * PCI controller Psycho. -
kernel/arch/sparc64/src/drivers/scr.c
r9be1d58 rb60c582 64 64 name = ofw_tree_node_name(node); 65 65 66 if (str cmp(name, "SUNW,m64B") == 0)66 if (str_cmp(name, "SUNW,m64B") == 0) 67 67 scr_type = SCR_ATYFB; 68 else if (str cmp(name, "SUNW,XVR-100") == 0)68 else if (str_cmp(name, "SUNW,XVR-100") == 0) 69 69 scr_type = SCR_XVR; 70 else if (str cmp(name, "SUNW,ffb") == 0)70 else if (str_cmp(name, "SUNW,ffb") == 0) 71 71 scr_type = SCR_FFB; 72 else if (str cmp(name, "cgsix") == 0)72 else if (str_cmp(name, "cgsix") == 0) 73 73 scr_type = SCR_CGSIX; 74 74 -
kernel/arch/sparc64/src/drivers/sgcn.c
r9be1d58 rb60c582 208 208 init_sram_begin(); 209 209 210 ASSERT(str cmp(SRAM_TOC->magic, SRAM_TOC_MAGIC) == 0);210 ASSERT(str_cmp(SRAM_TOC->magic, SRAM_TOC_MAGIC) == 0); 211 211 212 212 /* lookup TOC entry with the correct key */ 213 213 uint32_t i; 214 214 for (i = 0; i < MAX_TOC_ENTRIES; i++) { 215 if (str cmp(SRAM_TOC->keys[i].key, CONSOLE_KEY) == 0)215 if (str_cmp(SRAM_TOC->keys[i].key, CONSOLE_KEY) == 0) 216 216 break; 217 217 } -
kernel/arch/sparc64/src/mm/page.c
r9be1d58 rb60c582 63 63 uintptr_t hw_map(uintptr_t physaddr, size_t size) 64 64 { 65 return PA2KA(physaddr); 65 if (last_frame + ALIGN_UP(size, PAGE_SIZE) > KA2PA(KERNEL_ADDRESS_SPACE_END_ARCH)) 66 panic("Unable to map physical memory %p (%d bytes).", physaddr, size) 67 68 uintptr_t virtaddr = PA2KA(last_frame); 69 pfn_t i; 70 for (i = 0; i < ADDR2PFN(ALIGN_UP(size, PAGE_SIZE)); i++) { 71 uintptr_t addr = PFN2ADDR(i); 72 page_mapping_insert(AS_KERNEL, virtaddr + addr, physaddr + addr, PAGE_NOT_CACHEABLE | PAGE_WRITE); 73 } 74 75 last_frame = ALIGN_UP(last_frame + size, FRAME_SIZE); 76 77 return virtaddr; 66 78 } 67 79 -
kernel/arch/sparc64/src/sparc64.c
r9be1d58 rb60c582 62 62 init.tasks[i].addr = (uintptr_t) bootinfo.taskmap.tasks[i].addr; 63 63 init.tasks[i].size = bootinfo.taskmap.tasks[i].size; 64 str ncpy(init.tasks[i].name, bootinfo.taskmap.tasks[i].name,64 str_ncpy(init.tasks[i].name, bootinfo.taskmap.tasks[i].name, 65 65 CONFIG_TASK_NAME_BUFLEN); 66 66 }
Note:
See TracChangeset
for help on using the changeset viewer.
