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>
121 vm_machdep.o \ 122 xpv_platform.o \ 123 x_call.o 124 125 # 126 # Add the SMBIOS subsystem object files directly to the list of objects 127 # built into unix itself; this is all common code except for smb_dev.c. 128 # 129 CORE_OBJS += $(SMBIOS_OBJS) 130 131 # 132 # These get compiled twice: 133 # - once in the dboot (direct boot) identity mapped code 134 # - once for use during early startup in unix 135 # 136 BOOT_DRIVER_OBJS = \ 137 boot_console.o \ 138 boot_keyboard.o \ 139 boot_keyboard_table.o \ 140 boot_vga.o \ 141 boot_mmu.o \ 142 dboot_multiboot2.o \ 143 $(FONT_OBJS) 144 145 CORE_OBJS += $(BOOT_DRIVER_OBJS) 146 147 # 148 # locore.o is special. It must be the first file relocated so that it 149 # it is relocated just where its name implies. 150 # 151 SPECIAL_OBJS_32 += \ 152 locore.o \ 153 fast_trap_asm.o \ 154 interrupt.o \ 155 syscall_asm.o 156 157 SPECIAL_OBJS_64 += \ 158 locore.o \ 159 fast_trap_asm.o \ 160 interrupt.o \
170
171 DBOOT_OBJS_64 += dboot_elfload.o
172
173 DBOOT_OBJS += \
174 dboot_asm.o \
175 dboot_grub.o \
176 dboot_printf.o \
177 dboot_startkern.o \
178 memcpy.o \
179 memset.o \
180 muldiv.o \
181 sha1.o \
182 string.o \
183 $(BOOT_DRIVER_OBJS) \
184 $(DBOOT_OBJS_$(CLASS))
185
186 #
187 # driver and misc modules
188 #
189 GFX_PRIVATE_OBJS += gfx_private.o gfxp_pci.o gfxp_segmap.o \
190 gfxp_devmap.o gfxp_vgatext.o gfxp_vm.o vgasubr.o
191 FIPE_OBJS += fipe_drv.o fipe_pm.o
192 IOAT_OBJS += ioat.o ioat_rs.o ioat_ioctl.o ioat_chan.o
193 ISANEXUS_OBJS += isa.o dma_engine.o i8237A.o
194 PCIE_MISC_OBJS += pcie_acpi.o pciehpc_acpi.o pcie_x86.o
195 PCI_E_NEXUS_OBJS += npe.o npe_misc.o
196 PCI_E_NEXUS_OBJS += pci_common.o pci_kstats.o pci_tools.o
197 PCINEXUS_OBJS += pci.o pci_common.o pci_kstats.o pci_tools.o
198 PCPLUSMP_OBJS += apic.o apic_regops.o psm_common.o apic_introp.o \
199 mp_platform_common.o mp_platform_misc.o \
200 hpet_acpi.o apic_common.o apic_timer.o
201 APIX_OBJS += apix.o apic_regops.o psm_common.o apix_intr.o apix_utils.o \
202 apix_irm.o mp_platform_common.o hpet_acpi.o apic_common.o \
203 apic_timer.o apix_regops.o
204
205
206 ACPI_DRV_OBJS += acpi_drv.o acpi_video.o
207 ACPINEX_OBJS += acpinex_drv.o acpinex_event.o
208
209 CPUDRV_OBJS += \
210 cpudrv.o \
|
121 vm_machdep.o \
122 xpv_platform.o \
123 x_call.o
124
125 #
126 # Add the SMBIOS subsystem object files directly to the list of objects
127 # built into unix itself; this is all common code except for smb_dev.c.
128 #
129 CORE_OBJS += $(SMBIOS_OBJS)
130
131 #
132 # These get compiled twice:
133 # - once in the dboot (direct boot) identity mapped code
134 # - once for use during early startup in unix
135 #
136 BOOT_DRIVER_OBJS = \
137 boot_console.o \
138 boot_keyboard.o \
139 boot_keyboard_table.o \
140 boot_vga.o \
141 boot_fb.o \
142 boot_mmu.o \
143 dboot_multiboot2.o \
144 $(FONT_OBJS)
145
146 CORE_OBJS += $(BOOT_DRIVER_OBJS)
147
148 #
149 # locore.o is special. It must be the first file relocated so that it
150 # it is relocated just where its name implies.
151 #
152 SPECIAL_OBJS_32 += \
153 locore.o \
154 fast_trap_asm.o \
155 interrupt.o \
156 syscall_asm.o
157
158 SPECIAL_OBJS_64 += \
159 locore.o \
160 fast_trap_asm.o \
161 interrupt.o \
171 172 DBOOT_OBJS_64 += dboot_elfload.o 173 174 DBOOT_OBJS += \ 175 dboot_asm.o \ 176 dboot_grub.o \ 177 dboot_printf.o \ 178 dboot_startkern.o \ 179 memcpy.o \ 180 memset.o \ 181 muldiv.o \ 182 sha1.o \ 183 string.o \ 184 $(BOOT_DRIVER_OBJS) \ 185 $(DBOOT_OBJS_$(CLASS)) 186 187 # 188 # driver and misc modules 189 # 190 GFX_PRIVATE_OBJS += gfx_private.o gfxp_pci.o gfxp_segmap.o \ 191 gfxp_devmap.o gfxp_vgatext.o gfxp_vm.o vgasubr.o \ 192 gfxp_fb.o gfxp_bitmap.o 193 FIPE_OBJS += fipe_drv.o fipe_pm.o 194 IOAT_OBJS += ioat.o ioat_rs.o ioat_ioctl.o ioat_chan.o 195 ISANEXUS_OBJS += isa.o dma_engine.o i8237A.o 196 PCIE_MISC_OBJS += pcie_acpi.o pciehpc_acpi.o pcie_x86.o 197 PCI_E_NEXUS_OBJS += npe.o npe_misc.o 198 PCI_E_NEXUS_OBJS += pci_common.o pci_kstats.o pci_tools.o 199 PCINEXUS_OBJS += pci.o pci_common.o pci_kstats.o pci_tools.o 200 PCPLUSMP_OBJS += apic.o apic_regops.o psm_common.o apic_introp.o \ 201 mp_platform_common.o mp_platform_misc.o \ 202 hpet_acpi.o apic_common.o apic_timer.o 203 APIX_OBJS += apix.o apic_regops.o psm_common.o apix_intr.o apix_utils.o \ 204 apix_irm.o mp_platform_common.o hpet_acpi.o apic_common.o \ 205 apic_timer.o apix_regops.o 206 207 208 ACPI_DRV_OBJS += acpi_drv.o acpi_video.o 209 ACPINEX_OBJS += acpinex_drv.o acpinex_event.o 210 211 CPUDRV_OBJS += \ 212 cpudrv.o \ |