Print this page
NEX-16819 loader UEFI support
Includes work by Toomas Soome <tsoome@me.com>
Upstream commits:
loader: pxe receive cleanup
9475 libefi: Do not return only if ReceiveFilter
installboot: should support efi system partition
8931 boot1.efi: scan all display modes rather than
loader: spinconsole updates
loader: gfx experiment to try GOP Blt() function.
sha1 build test
loader: add sha1 hash calculation
common/sha1: update for loader build
loader: biosdisk rework
uts: 32-bit kernel FB needs mapping in low memory
uts: add diag-device
uts: boot console mirror with diag-device
uts: enable very early console on ttya
kmdb: add diag-device as input/output device
uts: test VGA memory exclusion from mapping
uts: clear boot mapping and protect boot pages test
uts: add dboot map debug printf
uts: need to release FB pages in release_bootstrap()
uts: add screenmap ioctl
uts: update sys/queue.h
loader: add illumos uts/common to include path
loader: tem/gfx font cleanup
loader: vbe checks
uts: gfx_private set KD_TEXT when KD_RESETTEXT is
uts: gfx 8-bit update
loader: gfx 8-bit fix
loader: always set media size from partition.
uts: MB2 support for 32-bit kernel
loader: x86 should have tem 80x25
uts: x86 should have tem 80x25
uts: font update
loader: font update
uts: tem attributes
loader: tem.c comment added
uts: use font module
loader: add font module
loader: build rules for new font setup
uts: gfx_private update for new font structure
uts: early boot update for new font structure
uts: font update
uts: font build rules update for new fonts
uts: tem update to new font structure
loader: module.c needs to include tem_impl.h
uts: gfx_private 8x16 font rework
uts: make font_lookup public
loader: font rework
uts: font rework
9259 libefi: efi_alloc_and_read should check for PMBR
uts: tem utf-8 support
loader: implement tem utf-8 support
loader: tem should be able to display UTF-8
7784 uts: console input should support utf-8
7796 uts: ldterm default to utf-8
uts: do not reset serial console
uts: set up colors even if tem is not console
uts: add type for early boot properties
uts: gfx_private experiment with drm and vga
uts: gfx_private should use setmode drm callback.
uts: identify FB types and set up gfx_private based
loader: replace gop and vesa with framebuffer
uts: boot needs simple tem to support mdb
uts: boot_keyboard should emit esc sequences for
uts: gfx_private FB showuld be written by line
kmdb: set terminal window size
uts: gfx_private needs to keep track of early boot FB
pnglite: move pnglite to usr/src/common
loader: gfx_fb
ficl-sys: add gfx primitives
loader: add illumos.png logo
ficl: add fb-putimage
loader: add png support
loader: add alpha blending for gfx_fb
loader: use term-drawrect for menu frame
ficl: add simple gfx words
uts: provide fb_info via fbgattr dev_specific array.
uts: gfx_private add alpha blending
uts: update sys/ascii.h
uts: tem OSC support (incomplete)
uts: implement env module support and use data from
uts: tem get colors from early boot data
loader: use crc32 from libstand (libz)
loader: optimize for size
loader: pass tem info to the environment
loader: import tem for loader console
loader: UEFI loader needs to set ISADIR based on
loader: need UEFI32 support
8918 loader.efi: add vesa edid support
uts: tem_safe_pix_clear_prom_output() should only
uts: tem_safe_pix_clear_entire_screen() should use
uts: tem_safe_check_first_time() should query cursor
uts: tem implement cls callback & visual_io v4
uts: gfx_vgatext use block cursor for vgatext
uts: gfx_private implement cls callback & visual_io
uts: gfx_private bitmap framebuffer implementation
uts: early start frame buffer console support
uts: font functions should check the input char
uts: font rendering should support 16/24/32bit depths
uts: use smallest font as fallback default.
uts: update terminal dimensions based on selected
7834 uts: vgatext should use gfx_private
uts: add spacing property to 8859-1.bdf
terminfo: add underline for sun-color
terminfo: sun-color has 16 colors
uts: add font load callback type
loader: do not repeat int13 calls with error 0x20 and
8905 loader: add skein/edonr support
8904 common/crypto: make skein and edonr loader
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Revert "NEX-16819 loader UEFI support"
This reverts commit ec06b9fc617b99234e538bf2e7e4d02a24993e0c.
Reverting due to failures in the zfs-tests and the sharefs-tests
NEX-16819 loader UEFI support
Includes work by Toomas Soome <tsoome@me.com>
Upstream commits:
loader: pxe receive cleanup
9475 libefi: Do not return only if ReceiveFilter
installboot: should support efi system partition
8931 boot1.efi: scan all display modes rather than
loader: spinconsole updates
loader: gfx experiment to try GOP Blt() function.
sha1 build test
loader: add sha1 hash calculation
common/sha1: update for loader build
loader: biosdisk rework
uts: 32-bit kernel FB needs mapping in low memory
uts: add diag-device
uts: boot console mirror with diag-device
uts: enable very early console on ttya
kmdb: add diag-device as input/output device
uts: test VGA memory exclusion from mapping
uts: clear boot mapping and protect boot pages test
uts: add dboot map debug printf
uts: need to release FB pages in release_bootstrap()
uts: add screenmap ioctl
uts: update sys/queue.h
loader: add illumos uts/common to include path
loader: tem/gfx font cleanup
loader: vbe checks
uts: gfx_private set KD_TEXT when KD_RESETTEXT is
uts: gfx 8-bit update
loader: gfx 8-bit fix
loader: always set media size from partition.
uts: MB2 support for 32-bit kernel
loader: x86 should have tem 80x25
uts: x86 should have tem 80x25
uts: font update
loader: font update
uts: tem attributes
loader: tem.c comment added
uts: use font module
loader: add font module
loader: build rules for new font setup
uts: gfx_private update for new font structure
uts: early boot update for new font structure
uts: font update
uts: font build rules update for new fonts
uts: tem update to new font structure
loader: module.c needs to include tem_impl.h
uts: gfx_private 8x16 font rework
uts: make font_lookup public
loader: font rework
uts: font rework
libefi: efi_alloc_and_read should check for PMBR
uts: tem utf-8 support
loader: implement tem utf-8 support
loader: tem should be able to display UTF-8
7784 uts: console input should support utf-8
7796 uts: ldterm default to utf-8
uts: do not reset serial console
uts: set up colors even if tem is not console
uts: add type for early boot properties
uts: gfx_private experiment with drm and vga
uts: gfx_private should use setmode drm callback.
uts: identify FB types and set up gfx_private based
loader: replace gop and vesa with framebuffer
uts: boot needs simple tem to support mdb
uts: boot_keyboard should emit esc sequences for
uts: gfx_private FB showuld be written by line
kmdb: set terminal window size
uts: gfx_private needs to keep track of early boot FB
pnglite: move pnglite to usr/src/common
loader: gfx_fb
ficl-sys: add gfx primitives
loader: add illumos.png logo
ficl: add fb-putimage
loader: add png support
loader: add alpha blending for gfx_fb
loader: use term-drawrect for menu frame
ficl: add simple gfx words
uts: provide fb_info via fbgattr dev_specific array.
uts: gfx_private add alpha blending
uts: update sys/ascii.h
uts: tem OSC support (incomplete)
uts: implement env module support and use data from
uts: tem get colors from early boot data
loader: use crc32 from libstand (libz)
loader: optimize for size
loader: pass tem info to the environment
loader: import tem for loader console
loader: UEFI loader needs to set ISADIR based on
loader: need UEFI32 support
8918 loader.efi: add vesa edid support
uts: tem_safe_pix_clear_prom_output() should only
uts: tem_safe_pix_clear_entire_screen() should use
uts: tem_safe_check_first_time() should query cursor
uts: tem implement cls callback & visual_io v4
uts: gfx_vgatext use block cursor for vgatext
uts: gfx_private implement cls callback & visual_io
uts: gfx_private bitmap framebuffer implementation
uts: early start frame buffer console support
uts: font functions should check the input char
uts: font rendering should support 16/24/32bit depths
uts: use smallest font as fallback default.
uts: update terminal dimensions based on selected
7834 uts: vgatext should use gfx_private
uts: add spacing property to 8859-1.bdf
terminfo: add underline for sun-color
terminfo: sun-color has 16 colors
uts: add font load callback type
loader: do not repeat int13 calls with error 0x20 and
8905 loader: add skein/edonr support
8904 common/crypto: make skein and edonr loader
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
| Split |
Close |
| Expand all |
| Collapse all |
--- old/usr/src/uts/i86xpv/Makefile.files
+++ new/usr/src/uts/i86xpv/Makefile.files
1 1 #
2 2 # CDDL HEADER START
3 3 #
4 4 # The contents of this file are subject to the terms of the
5 5 # Common Development and Distribution License (the "License").
6 6 # You may not use this file except in compliance with the License.
7 7 #
8 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 # or http://www.opensolaris.org/os/licensing.
10 10 # See the License for the specific language governing permissions
11 11 # and limitations under the License.
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
14 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 # If applicable, add the following below this CDDL HEADER, with the
16 16 # fields enclosed by brackets "[]" replaced with your own identifying
17 17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21
22 22 #
23 23 # Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
24 24 #
25 25
26 26 # This Makefile defines file modules in the directory uts/i86xpv
27 27 # and its children. These are the source files which are i86xpv
28 28 # "implementation architecture" dependent.
29 29 #
30 30
31 31 #
32 32 # object lists
33 33 #
34 34 CORE_OBJS += \
35 35 acpi_stubs.o \
36 36 balloon.o \
37 37 biosdisk.o \
38 38 cbe.o \
39 39 cmi.o \
40 40 cmi_hw.o \
41 41 cms.o \
42 42 confunix.o \
43 43 cpuid.o \
44 44 cpuid_subr.o \
45 45 cpupm.o \
46 46 cpupm_mach.o \
47 47 dis_tables.o \
48 48 ddi_impl.o \
49 49 dtrace_subr.o \
50 50 dvma.o \
51 51 fakebop.o \
52 52 fpu_subr.o \
53 53 fastboot.o \
54 54 fb_swtch.o \
55 55 graphics.o \
56 56 hardclk.o \
57 57 hat_i86.o \
58 58 hat_kdi.o \
59 59 hment.o \
60 60 hold_page.o \
61 61 hrtimers.o \
62 62 htable.o \
63 63 i86_mmu.o \
64 64 ibft.o \
65 65 instr_size.o \
66 66 intr.o \
67 67 kboot_mmu.o \
68 68 kdi_subr.o \
69 69 kdi_idt.o \
70 70 kdi_idthdl.o \
71 71 kdi_asm.o \
72 72 lgrpplat.o \
73 73 mach_kdi.o \
74 74 mach_sysconfig.o \
75 75 machdep.o \
76 76 mem_config_stubs.o \
77 77 memnode.o \
78 78 microcode.o \
79 79 mlsetup.o \
80 80 mp_call.o \
81 81 mp_implfuncs.o \
82 82 mp_machdep.o \
83 83 mp_startup.o \
84 84 memscrub.o \
85 85 notes.o \
86 86 pci_bios.o \
87 87 pci_cfgacc.o \
88 88 pci_cfgacc_x86.o \
89 89 pci_cfgspace.o \
90 90 pci_mech1.o \
91 91 pci_mech2.o \
92 92 pci_neptune.o \
93 93 pci_orion.o \
94 94 pmem.o \
95 95 ppage.o \
96 96 startup.o \
97 97 ssp.o \
98 98 xpv_timestamp.o \
99 99 todpc_subr.o \
100 100 trap.o \
101 101 vm_machdep.o \
102 102 x_call.o
103 103
104 104 #
105 105 # Add the SMBIOS subsystem object files directly to the list of objects
106 106 # built into unix itself; this is all common code except for smb_dev.c.
107 107 #
108 108 CORE_OBJS += $(SMBIOS_OBJS)
109 109
110 110 #
|
↓ open down ↓ |
110 lines elided |
↑ open up ↑ |
111 111 # These get compiled twice:
112 112 # - once in the dboot (direct boot) identity mapped code
113 113 # - once for use during early startup in unix
114 114 #
115 115 BOOT_DRIVER_OBJS = \
116 116 boot_console.o \
117 117 boot_keyboard.o \
118 118 boot_keyboard_table.o \
119 119 boot_mmu.o \
120 120 boot_vga.o \
121 + boot_fb.o \
121 122 boot_xconsole.o \
122 123 dboot_multiboot2.o \
123 124 $(FONT_OBJS)
124 125
125 126 CORE_OBJS += $(BOOT_DRIVER_OBJS)
126 127
127 128 #
128 129 # Extra XEN files separated out for now.
129 130 #
130 131 CORE_OBJS += \
131 132 cpr_driver.o \
132 133 evtchn.o \
133 134 gnttab.o \
134 135 hypercall.o \
135 136 hyperevent.o \
136 137 hypersubr.o \
137 138 mp_xen.o \
138 139 panic_asm.o \
139 140 xenguest.o \
140 141 xenbus_client.o \
141 142 xenbus_comms.o \
142 143 xenbus_probe.o \
143 144 xenbus_xs.o \
144 145 xen_machdep.o \
145 146 xen_mmu.o \
146 147 xpv_panic.o \
147 148 xvdi.o
148 149
149 150 #
150 151 # locore.o is special. It must be the first file relocated so that it
151 152 # it is relocated just where its name implies.
152 153 #
153 154 SPECIAL_OBJS_32 += \
154 155 locore.o \
155 156 fast_trap_asm.o \
156 157 interrupt.o \
157 158 syscall_asm.o
158 159
159 160 SPECIAL_OBJS_64 += \
160 161 locore.o \
161 162 fast_trap_asm.o \
162 163 interrupt.o \
163 164 syscall_asm_amd64.o
164 165
165 166 SPECIAL_OBJS += $(SPECIAL_OBJS_$(CLASS))
166 167
167 168 #
168 169 # object files used to boot into full kernel
169 170 #
170 171 DBOOT_OBJS_32 = muldiv.o
171 172
172 173 DBOOT_OBJS_64 =
173 174
174 175 DBOOT_OBJS += \
175 176 dboot_asm.o \
176 177 dboot_printf.o \
177 178 dboot_startkern.o \
178 179 dboot_xen.o \
179 180 hypercall.o \
180 181 hypersubr.o \
181 182 memcpy.o \
182 183 memset.o \
183 184 string.o \
|
↓ open down ↓ |
53 lines elided |
↑ open up ↑ |
184 185 $(BOOT_DRIVER_OBJS) \
185 186 $(DBOOT_OBJS_$(CLASS))
186 187
187 188 #
188 189 # driver & misc modules
189 190 #
190 191 BALLOON_OBJS += balloon_drv.o
191 192 DOMCAPS_OBJS += domcaps.o
192 193 EVTCHN_OBJS += evtchn_dev.o
193 194 GFX_PRIVATE_OBJS += gfx_private.o gfxp_pci.o gfxp_segmap.o \
194 - gfxp_devmap.o gfxp_vgatext.o gfxp_vm.o vgasubr.o
195 + gfxp_devmap.o gfxp_vgatext.o gfxp_vm.o vgasubr.o \
196 + gfxp_fb.o gfxp_bitmap.o
195 197 IOAT_OBJS += ioat.o ioat_rs.o ioat_ioctl.o ioat_chan.o
196 198 ISANEXUS_OBJS += isa.o dma_engine.o i8237A.o
197 199 PCI_E_NEXUS_OBJS += npe.o npe_misc.o
198 200 PCI_E_NEXUS_OBJS += pci_common.o pci_kstats.o pci_tools.o
199 201 PCINEXUS_OBJS += pci.o pci_common.o pci_kstats.o pci_tools.o
200 202 PRIVCMD_OBJS += seg_mf.o privcmd.o privcmd_hcall.o
201 203 ROOTNEX_OBJS += rootnex.o
202 204 XPVTOD_OBJS += xpvtod.o
203 205 XPV_AUTOCONFIG_OBJS += xpv_autoconfig.o
204 206 XPV_PSM_OBJS += xpv_psm.o mp_platform_common.o mp_platform_xpv.o \
205 207 apic_regops.o psm_common.o xpv_intr.o
206 208 XPV_UPPC_OBJS += xpv_uppc.o psm_common.o
207 209 XENBUS_OBJS += xenbus_dev.o
208 210 XENCONS_OBJS += xencons.o
209 211 XPVD_OBJS += xpvd.o
210 212 XPVTAP_OBJS += xpvtap.o blk_common.o seg_mf.o
211 213 XNB_OBJS += xnb.o
212 214 XNBE_OBJS += xnbe.o
213 215 XNBO_OBJS += xnbo.o
214 216 XNBU_OBJS += xnbu.o
215 217 XNF_OBJS += xnf.o
216 218 XSVC_OBJS += xsvc.o
217 219 XDF_OBJS += xdf.o
218 220 XDB_OBJS += xdb.o
219 221 XDT_OBJS += xdt.o
220 222
221 223 #
222 224 # Build up defines and paths.
223 225 #
224 226 INC_PATH += -I$(UTSBASE)/i86xpv -I$(UTSBASE)/i86pc -I$(SRC)/common \
225 227 -I$(UTSBASE)/common/xen
226 228
227 229 #
228 230 # Since the assym files are derived, the dependencies must be explicit for
229 231 # all files including this file. (This is only actually required in the
230 232 # instance when the .nse_depinfo file does not exist.) It may seem that
231 233 # the lint targets should also have a similar dependency, but they don't
232 234 # since only C headers are included when #defined(__lint) is true.
233 235 #
234 236
235 237 ASSYM_DEPS += \
236 238 copy.o \
237 239 desctbls_asm.o \
238 240 ddi_i86_asm.o \
239 241 exception.o \
240 242 fast_trap_asm.o \
241 243 float.o \
242 244 hyperevent.o \
243 245 i86_subr.o \
244 246 kdi_asm.o \
245 247 interrupt.o \
246 248 lock_prim.o \
247 249 locore.o \
248 250 panic_asm.o \
249 251 sseblk.o \
250 252 swtch.o \
251 253 syscall_asm.o \
252 254 syscall_asm_amd64.o
253 255
254 256 $(KDI_ASSYM_DEPS:%=$(OBJS_DIR)/%): $(DSF_DIR)/$(OBJS_DIR)/kdi_assym.h
255 257
256 258 ASSYM_DEPS += kdi_asm.o
|
↓ open down ↓ |
52 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX