- Timestamp:
- 2011-08-18T08:00:42Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a92cf94f
- Parents:
- 0f963cb (diff), c53a705 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - Location:
- boot
- Files:
-
- 6 added
- 6 edited
- 1 moved
-
Makefile.common (modified) (2 diffs)
-
arch/ia64/Makefile.inc (modified) (1 diff)
-
arch/ia64/include/pal.h (added)
-
arch/ia64/include/sal.h (added)
-
arch/ia64/src/main.c (modified) (3 diffs)
-
arch/ia64/src/pal.c (moved) (moved from uspace/srv/hid/fb/ppm.h ) (2 diffs)
-
arch/ia64/src/pal_asm.S (added)
-
arch/ia64/src/sal.c (added)
-
arch/ia64/src/sal_asm.S (added)
-
arch/mips32/src/asm.S (modified) (1 diff)
-
arch/mips64/src/asm.S (modified) (1 diff)
-
genarch/include/efi.h (modified) (2 diffs)
-
genarch/src/efi.c (added)
Legend:
- Unmodified
- Added
- Removed
-
boot/Makefile.common
r0f963cb ree24574 73 73 $(USPACE_PATH)/srv/loader/loader \ 74 74 $(USPACE_PATH)/app/init/init \ 75 $(USPACE_PATH)/srv/ devmap/devmap\75 $(USPACE_PATH)/srv/loc/loc \ 76 76 $(USPACE_PATH)/srv/bd/rd/rd \ 77 77 $(USPACE_PATH)/srv/vfs/vfs … … 93 93 $(USPACE_PATH)/srv/hid/input/input \ 94 94 $(USPACE_PATH)/srv/hid/console/console \ 95 $(USPACE_PATH)/srv/fs/ devfs/devfs95 $(USPACE_PATH)/srv/fs/locfs/locfs 96 96 97 97 RD_SRVS_NON_ESSENTIAL = \ -
boot/arch/ia64/Makefile.inc
r0f963cb ree24574 45 45 arch/$(BARCH)/src/asm.S \ 46 46 arch/$(BARCH)/src/main.c \ 47 arch/$(BARCH)/src/sal.c \ 48 arch/$(BARCH)/src/sal_asm.S \ 49 arch/$(BARCH)/src/pal.c \ 50 arch/$(BARCH)/src/pal_asm.S \ 47 51 arch/$(BARCH)/src/putchar.c \ 48 52 $(COMPS_C) \ 53 genarch/src/efi.c \ 49 54 genarch/src/division.c \ 50 55 generic/src/balloc.c \ -
boot/arch/ia64/src/main.c
r0f963cb ree24574 35 35 #include <arch/_components.h> 36 36 #include <genarch/efi.h> 37 #include <arch/sal.h> 38 #include <arch/pal.h> 37 39 #include <halt.h> 38 40 #include <printf.h> … … 117 119 } 118 120 119 static void read_sal_configuration(void) 120 { 121 if (!bootpar) { 121 static void read_pal_configuration(void) 122 { 123 if (bootpar) { 124 bootinfo.freq_scale = pal_proc_freq_ratio(); 125 } else { 122 126 /* Configure default values for simulators. */ 123 127 bootinfo.freq_scale = DEFAULT_FREQ_SCALE; 124 bootinfo.sys_freq = DEFAULT_SYS_FREQ; 128 } 129 } 130 131 static void read_sal_configuration(void) 132 { 133 if (bootpar && bootpar->efi_system_table) { 134 efi_guid_t sal_guid = SAL_SYSTEM_TABLE_GUID; 135 sal_system_table_header_t *sal_st; 136 137 sal_st = efi_vendor_table_find( 138 (efi_system_table_t *) bootpar->efi_system_table, sal_guid); 139 140 sal_system_table_parse(sal_st); 141 142 bootinfo.sys_freq = sal_base_clock_frequency(); 125 143 } else { 126 /* TODO: read the real values from SAL */ 127 bootinfo.freq_scale = DEFAULT_FREQ_SCALE; 144 /* Configure default values for simulators. */ 128 145 bootinfo.sys_freq = DEFAULT_SYS_FREQ; 129 146 } … … 189 206 read_efi_memmap(); 190 207 read_sal_configuration(); 208 read_pal_configuration(); 191 209 192 210 printf("Booting the kernel ...\n"); -
boot/arch/ia64/src/pal.c
r0f963cb ree24574 1 1 /* 2 * Copyright (c) 20 06 Ondrej Palkovsky2 * Copyright (c) 2011 Jakub Jermar 3 3 * All rights reserved. 4 4 * … … 27 27 */ 28 28 29 #i fndef FB_PPM_H_30 # define FB_PPM_H_29 #include <arch/pal.h> 30 #include <arch/types.h> 31 31 32 #include "fb.h" 33 #include <sys/types.h> 32 uint64_t pal_proc = 0; 34 33 35 extern int ppm_draw(unsigned char *, size_t, unsigned int, unsigned int, 36 unsigned int, unsigned int, putpixel_cb_t, void *); 37 extern int ppm_get_data(unsigned char *, size_t, unsigned int *, unsigned int *); 38 39 #endif 34 uint64_t pal_proc_freq_ratio(void) 35 { 36 uint64_t proc_ratio; 37 38 pal_static_call_0_1(PAL_FREQ_RATIOS, &proc_ratio); 39 40 return proc_ratio; 41 } -
boot/arch/mips32/src/asm.S
r0f963cb ree24574 44 44 * Setup the CP0 configuration 45 45 * - Disable 64-bit kernel addressing mode 46 * - D Isable 64-bit supervisor adressing mode46 * - Disable 64-bit supervisor adressing mode 47 47 * - Disable 64-bit user addressing mode 48 48 */ -
boot/arch/mips64/src/asm.S
r0f963cb ree24574 47 47 * - Enable 64-bit user addressing mode 48 48 */ 49 dmfc0 $a0, $status49 mfc0 $a0, $status 50 50 ori $a0, 0x00e0 51 dmtc0 $a0, $status51 mtc0 $a0, $status 52 52 53 53 /* -
boot/genarch/include/efi.h
r0f963cb ree24574 30 30 #define BOOT_EFI_H_ 31 31 32 #include <arch/types.h> 33 34 typedef struct { 35 uint64_t signature; 36 uint32_t revision; 37 uint32_t header_size; 38 uint32_t crc32; 39 uint32_t reserved; 40 } efi_table_header_t; 41 42 #define SAL_SYSTEM_TABLE_GUID \ 43 { \ 44 { \ 45 0x32, 0x2d, 0x9d, 0xeb, 0x88, 0x2d, 0xd3, 0x11, \ 46 0x9a, 0x16, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d \ 47 } \ 48 } 49 50 typedef union { 51 uint8_t bytes[16]; 52 struct { 53 uint64_t low; 54 uint64_t high; 55 }; 56 } efi_guid_t; 57 58 typedef struct { 59 efi_guid_t guid; 60 void *table; 61 } efi_configuration_table_t; 62 63 typedef struct { 64 efi_table_header_t hdr; 65 char *fw_vendor; 66 uint32_t fw_revision; 67 void *cons_in_handle; 68 void *cons_in; 69 void *cons_out_handle; 70 void *cons_out; 71 void *cons_err_handle; 72 void *cons_err; 73 void *runtime_services; 74 void *boot_services; 75 sysarg_t conf_table_entries; 76 efi_configuration_table_t *conf_table; 77 } efi_system_table_t; 78 32 79 typedef enum { 33 80 EFI_RESERVED, … … 57 104 #define EFI_PAGE_SIZE 4096 58 105 106 extern void *efi_vendor_table_find(efi_system_table_t *, efi_guid_t); 107 59 108 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
