ChangeLog
This commit is contained in:
parent
68693c0743
commit
8463a018b2
1 changed files with 131 additions and 28 deletions
159
ChangeLog.xnu
159
ChangeLog.xnu
|
@ -1,43 +1,146 @@
|
|||
2009-08-29 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
2009-12-18 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* kern/misc.c (grub_utf16_to_utf8): Move from here ...
|
||||
* include/grub/charset.h (grub_utf16_to_utf8): ... to here. Inlined.
|
||||
All users updated.
|
||||
* include/grub/misc.h (grub_utf16_to_utf8): Removed.
|
||||
Fix potential EfiEmu double prepare.
|
||||
|
||||
2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
* efiemu/main.c (prepared): New variable
|
||||
(grub_efiemu_unload): Set prepare to '0'.
|
||||
(grub_efiemu_prepare): Return if already prepared. Set prepared.
|
||||
|
||||
* bus/usb/usb.c (grub_usb_get_string): Move from here ...
|
||||
* commands/usbtest.c (grub_usb_get_string): ... move here.
|
||||
(usb_print_str): Fix error handling.
|
||||
* include/grub/usb.h (grub_usb_get_string): Remove.
|
||||
set_virtual_address_map support.
|
||||
|
||||
2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
* include/grub/efi/efi.h (grub_efi_set_virtual_address_map): New
|
||||
prototype.
|
||||
* include/grub/efiemu/efiemu.h (grub_efiemu_write_sym_markers): New
|
||||
prototype.
|
||||
(grub_efiemu_crc32): Likewise.
|
||||
(grub_efiemu_crc64): Likewise.
|
||||
(grub_efiemu_set_virtual_address_map): Likewise.
|
||||
* include/grub/autoefi.h (grub_autoefi_exit_boot_services):
|
||||
New definition.
|
||||
(grub_autoefi_set_virtual_address_map): Likewise.
|
||||
* kern/efi/efi.c (grub_efi_set_virtual_address_map): New function.
|
||||
* loader/i386/xnu.c (grub_xnu_boot): Call set_virtual_address_map.
|
||||
Restructure flow to accomodate it.
|
||||
* efiemu/prepare.c (grub_efiemu_prepare): Support set_virtual_address_map.
|
||||
(grub_efiemu_crc): Recompute CRC32.
|
||||
* efiemu/runtime/efiemu.c (ptv_relocated): Renamed to ...
|
||||
(efiemu_ptv_relocated): ... this. Made global. All users updated.
|
||||
* efiemu/symbols.c (relocated_handle): New variable.
|
||||
(grub_efiemu_free_syms): Free relocated_handle.
|
||||
(grub_efiemu_alloc_syms): Allocate relocated_handle.
|
||||
(grub_efiemu_write_sym_markers): New function.
|
||||
(grub_efiemu_set_virtual_address_map): Likewise.
|
||||
|
||||
Newer XNU parameters.
|
||||
|
||||
* include/grub/i386/xnu.h (GRUB_XNU_BOOTARGS_VERMINOR): Change to 5.
|
||||
* include/grub/xnu.h (grub_xnu_extheader): Add nameaddr and namesize.
|
||||
(grub_xnu_fill_devicetree): New prototype.
|
||||
(grub_xnu_heap_real_start): New variable.
|
||||
* loader/xnu.c (get_name_ptr): New function.
|
||||
(grub_xnu_load_driver): Fill namelen and name.
|
||||
|
||||
64-bit xnu support.
|
||||
|
||||
* conf/i386-efi.rmk (xnu_mod_SOURCES): Add 'loader/macho32.c'
|
||||
and 'loader/macho64.c'.
|
||||
* conf/i386-pc.rmk: Likewise.
|
||||
* conf/x86_64-efi.rmk: Likewise.
|
||||
* include/grub/i386/macho.h (grub_macho_thread64): New structure.
|
||||
* include/grub/xnu.h (grub_xnu_is_64bit): New variable.
|
||||
* include/grub/macho.h (grub_macho_segment64): New structure.
|
||||
* include/grub/machoload.h (grub_macho32_size): Renamed from ...
|
||||
(grub_macho_size32): ... to this.
|
||||
(grub_macho32_get_entry_point): Renamed from ...
|
||||
(grub_macho_get_entry_point32): ... to this.
|
||||
(grub_macho_contains_macho64): New prototype.
|
||||
(grub_macho_size64): Likewise.
|
||||
(grub_macho_get_entry_point64): Likewise.
|
||||
(grub_macho32_load): Renamed from ...
|
||||
(grub_macho_load32): ... to this.
|
||||
(grub_macho32_filesize): Renamed from ...
|
||||
(grub_macho_filesize32): ... to this.
|
||||
(grub_macho32_readfile): Renamed from ...
|
||||
(grub_macho_readfile32): ... to this.
|
||||
(grub_macho_filesize64): New prototype.
|
||||
(grub_macho_readfile64): Likewise.
|
||||
(grub_macho_parse32): Likewise.
|
||||
(grub_macho_parse64): Likewise.
|
||||
* loader/macho.c: Split into ...
|
||||
* loader/machoXX.c: ... and this. Replace 32 with XX.
|
||||
* loader/macho32.c: New file.
|
||||
* loader/macho64.c: Likewise.
|
||||
* loader/xnu.c (grub_xnu_is_64bit): New variable.
|
||||
(grub_cmd_xnu_kernel): Make 32-bit only.
|
||||
(grub_cmd_xnu_kernel64): New function.
|
||||
(grub_xnu_load_driver): Support Mach-O 64.
|
||||
(grub_cmd_xnu_mkext): Likewise.
|
||||
* util/grub.d/30_os-prober.in (osx_entry): New function.
|
||||
Generate entries for 64-bit boot too.
|
||||
|
||||
Eliminate ad-hoc tree format in XNU and EfiEmu.
|
||||
|
||||
* efiemu/main.c (grub_efiemu_prepare): Update comment.
|
||||
* efiemu/pnvram.c: Rewritten to use environment variables.
|
||||
All users updated.
|
||||
* include/grub/xnu.h (grub_xnu_fill_devicetree): New prototype.
|
||||
* loader/i386/xnu.c (grub_xnu_boot): Call grub_cpu_xnu_fill_devicetree
|
||||
and grub_xnu_fill_devicetree.
|
||||
* loader/xnu.c (grub_cmd_xnu_kernel): Don't call
|
||||
grub_cpu_xnu_fill_devicetree.
|
||||
(grub_xnu_parse_devtree): Removed.
|
||||
|
||||
Inline utf16_to_utf8.
|
||||
|
||||
* kern/misc.c (grub_utf16_to_utf8): Move from here ...
|
||||
* include/grub/charset.h (grub_utf16_to_utf8): ... to here. Inlined.
|
||||
All users updated.
|
||||
* include/grub/misc.h (grub_utf16_to_utf8): Removed.
|
||||
|
||||
* bus/usb/usb.c (grub_usb_get_string): Move from here ...
|
||||
* commands/usbtest.c (grub_usb_get_string): ... move here.
|
||||
(usb_print_str): Fix error handling.
|
||||
* include/grub/usb.h (grub_usb_get_string): Remove.
|
||||
|
||||
UTF-8 to UTF-16 transformation.
|
||||
|
||||
* conf/common.rmk (pkglib_MODULES): Add charset.mod
|
||||
(charset_mod_SOURCES): New variable.
|
||||
(charset_mod_CFLAGS): Likewise.
|
||||
(charset_mod_LDFLAGS): Likewise.
|
||||
* include/grub/utf.h: New file.
|
||||
* lib/utf.c: New file. (Based on grub_utf8_to_ucs4 from kern/misc.c)
|
||||
|
||||
Support for device properties.
|
||||
|
||||
* include/grub/i386/xnu.h (grub_xnu_devprop_header): New structure.
|
||||
(grub_xnu_devprop_device_header): Likewise.
|
||||
(grub_xnu_devprop_device_descriptor): Likewise.
|
||||
(grub_xnu_devprop_add_device): New prototype.
|
||||
(grub_xnu_devprop_remove_device): Likewise.
|
||||
(grub_xnu_devprop_remove_property): Likewise.
|
||||
(grub_xnu_devprop_add_property_utf8): Likewise.
|
||||
(grub_xnu_devprop_add_property_utf16): Likewise.
|
||||
(grub_cpu_xnu_init): Likewise.
|
||||
(grub_cpu_xnu_fini): Likewise.
|
||||
(grub_cpu_xnu_unload): Likewise.
|
||||
* loader/i386/xnu.c (grub_xnu_devprop_device_descriptor): New structure.
|
||||
(property_descriptor): Likewise.
|
||||
(devices): New variable.
|
||||
(grub_xnu_devprop_remove_property): New function.
|
||||
(grub_xnu_devprop_add_device): Likewise.
|
||||
(grub_xnu_devprop_remove_device): Likewise.
|
||||
(grub_xnu_devprop_add_property): Likewise.
|
||||
(grub_xnu_devprop_add_property_utf8): Likewise.
|
||||
(grub_xnu_devprop_add_property_utf16): Likewise.
|
||||
(hextoval): Likewise.
|
||||
(grub_cpu_xnu_fill_devprop): Likewise.
|
||||
(grub_cmd_devprop_load): Likewise.
|
||||
(grub_xnu_boot): Call grub_cpu_xnu_fill_devprop,
|
||||
grub_xnu_fill_devicetree, grub_xnu_fill_devicetree
|
||||
(cmd_devprop_load): New variable.
|
||||
(grub_cpu_xnu_init): New function.
|
||||
(grub_cpu_xnu_fini): Likewise.
|
||||
* loader/i386/xnu.c (grub_xnu_unload): Call grub_cpu_xnu_unload.
|
||||
* loader/xnu.c (grub_xnu_parse_devtree): Remove.
|
||||
(grub_cmd_xnu_devtree): Likewise.
|
||||
(hextoval): New function.
|
||||
(unescape): Likewise.
|
||||
(grub_xnu_fill_devicetree): Likewise.
|
||||
|
||||
2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
UTF-8 to UTF-16 transformation.
|
||||
|
||||
* conf/common.rmk (pkglib_MODULES): Add utf.mod
|
||||
(utf_mod_SOURCES): New variable.
|
||||
(utf_mod_CFLAGS): Likewise.
|
||||
(utf_mod_LDFLAGS): Likewise.
|
||||
* include/grub/utf.h: New file.
|
||||
* lib/utf.c: New file. (Based on grub_utf8_to_ucs4 from kern/misc.c)
|
||||
|
||||
* util/grub.d/30_os-prober.in: Load devprop.bin. Don'r load devtree.txt.
|
||||
* util/i386/efi/grub-dumpdevtree: Generate devprop.bin.
|
||||
|
|
Loading…
Reference in a new issue