Vladimir 'phcoder' Serbinenko
34364df689
usbserial basic support. Works in qemu
2010-07-18 12:53:35 +02:00
Vladimir 'phcoder' Serbinenko
75eb7d1116
Restructure serial in order to prepare for usbserial. As a byproduct simultaneous serial consoles are possible
2010-07-18 01:37:19 +02:00
BVK Chaitanya
05df19acd5
merge with mainline
2010-07-12 17:03:01 +05:30
Colin Watson
0b0f9620f2
* conf/common.rmk (grub_probe_SOURCES): Add disk/raid5_recover.c
...
and disk/raid6_recover.c.
* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
2010-07-06 19:27:55 +01:00
Vladimir 'phcoder' Serbinenko
e8d0a8f85c
Merge mainline into bidi
2010-07-02 19:35:07 +02:00
Vladimir 'phcoder' Serbinenko
b7e79e8a6a
Merge mainline into yeeloongfw
2010-06-30 02:30:05 +02:00
Vladimir 'phcoder' Serbinenko
412e09f355
XEN with Linux grub-mkconfig support.
...
* conf/common.rmk (grub-mkconfig_SCRIPTS) [linux]: Add 20_linux_xen.
* util/grub-mkconfig.in: Export GRUB_CMDLINE_XEN and
GRUB_CMDLINE_XEN_DEFAULT.
* util/grub.d/20_linux_xen.in: New file.
2010-06-28 02:39:49 +02:00
Vladimir 'phcoder' Serbinenko
53f3ef38c5
Initialise VGA video on qemu ourselves.
...
* boot/i386/qemu/boot.S: Don't call 0xc000.
* conf/i386-qemu.rmk (kern/i386/qemu/init.c_DEPENDENCIES): New variable.
(kernel_img_SOURCES): Add kern/i386/qemu/init.c and bus/pci.c.
(kernel_img_HEADERS): Add pci.h.
* conf/i386.rmk (pkglib_MODULES) [qemu]: Remove pci.mod.
* configure.ac: Force unifont on qemu and yeeloong.
* include/grub/i386/qemu/kernel.h (grub_qemu_init_cirrus): New proto.
(grub_vga_palette_write): Use correct register.
* kern/i386/coreboot/init.c (grub_machine_init) [GRUB_MACHINE_QEMU]:
Call grub_qemu_init_cirrus.
* kern/i386/qemu/init.c: New file.
* term/i386/pc/vga_text.c (inc_y): Never read outside the screen.
* commands/videotest.c (grub_cmd_videotest): Handle double buffering.
2010-06-28 02:33:32 +02:00
BVK Chaitanya
14d3f08e70
Fix parallel build.
...
* conf/common.rmk: Add grub_script.tab.h as a grub-script-check
dependency.
* script/parser.y: #include grub_script.tab.h header.
2010-06-21 20:34:30 +05:30
Vladimir 'phcoder' Serbinenko
8e50ec9f05
Merge mainline into cirrus
2010-06-21 02:15:49 +02:00
Vladimir 'phcoder' Serbinenko
4d88b9aec7
Init cirrus ourselves instead of calling videobios
2010-06-21 01:02:48 +02:00
Vladimir 'phcoder' Serbinenko
05e5187978
Cirrus 5446 and Bochs video cards support.
...
* conf/i386.rmk (pkglib_MODULES): Add video_cirrus.mod and
video_bochs.mod
(video_cirrus_mod_SOURCES): New variable.
(video_cirrus_mod_CFLAGS): Likewise.
(video_cirrus_mod_LDFLAGS): Likewise.
(video_bochs_mod_SOURCES): Likewise.
(video_bochs_mod_CFLAGS): Likewise.
(video_bochs_mod_LDFLAGS): Likewise.
* include/grub/vga.h: New file.
* include/grub/video_fb.h (grub_video_fb_doublebuf_blit_init): Removed.
(grub_video_fb_set_page_t): New type.
(grub_video_fb_setup): New prototype.
(grub_video_fb_swap_buffers): Likewise.
(grub_video_fb_get_info_and_fini): Likewise.
* term/i386/pc/vga_text.c (CRTC_ADDR_PORT): Moved to include/grub/vga.h.
(CRTC_DATA_PORT): Likewise.
(CRTC_CURSOR): Likewise.
(CRTC_CURSOR_ADDR_HIGH): Likewise.
(CRTC_CURSOR_ADDR_LOW): Likewise.
(CRTC_CURSOR_DISABLE): Likewise.
(update_cursor): Use grub_vga_cr_write.
(grub_vga_text_setcursor): Likewise.
* video/bochs.c: New file.
* video/fb/video_fb.c (render_target): Moved into framebuffer variable.
(palette): Likewise.
(palette_size): Likewise.
(framebuffer): New variable.
(grub_video_fb_init): Use 'framebuffer'.
(grub_video_fb_fini): Likewise.
(grub_video_fb_get_info): Likewise.
(grub_video_fb_get_palette): Likewise.
(grub_video_fb_set_palette): Likewise.
(grub_video_fb_set_viewport): Likewise.
(grub_video_fb_get_viewport): Likewise.
(grub_video_fb_map_color): Likewise.
(grub_video_fb_map_rgb): Likewise.
(grub_video_fb_map_rgba): Likewise.
(grub_video_fb_unmap_color): Likewise.
(grub_video_fb_unmap_color_int): Likewise.
(grub_video_fb_fill_rect): Likewise.
(grub_video_fb_blit_bitmap): Likewise.
(grub_video_fb_blit_render_target): Likewise.
(grub_video_fb_scroll): Likewise.
(grub_video_fb_create_render_target): Likewise.
(grub_video_fb_doublebuf_blit_init): Likewise.
(grub_video_fb_set_active_render_target): Handle doublebuffering.
(doublebuf_pageflipping_update_screen): New function.
(doublebuf_pageflipping_init): Likewise.
(grub_video_fb_setup): Likewise.
(grub_video_fb_swap_buffers): Likewise.
(grub_video_fb_get_info_and_fini): Likewise.
* video/i386/pc/vbe.c (framebuffer): Remove all doublebuffering fields.
All users updated.
(doublebuf_pageflipping_commit): Restructured into ...
(doublebuf_pageflipping_set_page): ... this.
(doublebuf_pageflipping_update_screen): Removed.
(doublebuf_pageflipping_init): Likewise.
(double_buffering_init): Likewise.
(grub_video_vbe_setup): Use grub_video_fb_setup.
(grub_video_vbe_swap_buffers): Removed.
(grub_video_vbe_set_active_render_target): Likewise.
(grub_video_vbe_get_active_render_target): Likewise.
(grub_video_vbe_get_info_and_fini): Use grub_video_fb_get_info_and_fini.
(grub_video_vbe_adapter): Use grub_video_fb_swap_buffers,
grub_video_fb_set_active_render_target and
grub_video_fb_get_active_render_target.
* video/i386/pc/vga.c (SEQUENCER_ADDR_PORT): Move to include/grub/vga.h.
(SEQUENCER_DATA_PORT): Likewise.
(MAP_MASK_REGISTER): Likewise.
(CRTC_ADDR_PORT): Likewise.
(CRTC_DATA_PORT): Likewise.
(START_ADDR_HIGH_REGISTER): Likewise.
(START_ADDR_LOW_REGISTER): Likewise.
(GRAPHICS_ADDR_PORT): Likewise.
(GRAPHICS_DATA_PORT): Likewise.
(READ_MAP_REGISTER): Likewise.
(INPUT_STATUS1_REGISTER): Likewise.
(INPUT_STATUS1_VERTR_BIT): Likewise.
(get_map_mask): Use grub_vga_sr_read.
(set_map_mask): Use grub_vga_sr_write.
(set_read_map): Use grub_vga_gr_write.
(set_start_address): Use grub_vga_cr_write.
* video/sm712.c (framebuffer): Remove leftover fields.
2010-06-20 14:15:20 +02:00
BVK Chaitanya
49e38cf475
merge with mainline
2010-06-13 09:48:47 +05:30
BVK Chaitanya
6ad1216e64
pull-in break-cmd branch
2010-06-12 20:53:32 +05:30
BVK Chaitanya
20ebf73276
merge with mainline
2010-06-12 20:36:46 +05:30
Colin Watson
9038c767e3
merge mainline
2010-06-12 15:01:46 +01:00
Vladimir 'phcoder' Serbinenko
57711df6ad
custom.cfg support.
...
* conf/common.rmk (grub-mkconfig_SCRIPTS): Add 41_custom.
* util/grub.d/41_custom.in: New file.
2010-06-12 13:20:21 +02:00
Colin Watson
934302d00b
merge mainline
2010-06-12 12:17:28 +01:00
BVK Chaitanya
95af254928
merge with mainline
2010-06-12 16:32:06 +05:30
Colin Watson
8253ee6bd7
merge mainline up to r2075 (videomask merge)
2010-06-12 11:30:11 +01:00
Vladimir 'phcoder' Serbinenko
3a37e3226b
Use FOR_* macros instead of *_iterate whenever possible.
...
* commands/handler.c: Removed.
* commands/help.c (grub_cmd_help): Use FOR_COMMANDS.
* commands/minicmd.c (grub_mini_cmd_lsmod): Use FOR_DL_MODULES.
* conf/any-emu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
* conf/common.rmk (script/lexer.c_DEPENDENCIES): Add grub_script.yy.h.
(grub_probe_SOURCES): Remove kern/parser.c.
(util/grub-script-check.c_DEPENDENCIES): Removed.
(grub_script_check_SOURCES): Remove kern/handler.c, kern/parser.c
and grub_script_check_init.c.
(grub_script_check_init.lst): Removed.
(grub_script_check_init.h): Likewise.
(grub_script_check_init.c): Likewise.
(pkglib_MODULES): Remove handler.mod and sh.mod.
(handler_mod_SOURCES): Removed.
(handler_mod_CFLAGS): Likewise.
(handler_mod_LDFLAGS): Likewise.
(normal_mod_SOURCES): Remove normal/handler.c.
Add script/main.c, script/script.c, script/execute.c,
script/function.c, script/lexer.c, grub_script.tab.c
and grub_script.yy.c.
* conf/i386-coreboot.rmk (kernel_img_SOURCES): Remove kern/handler.c.
* conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
* conf/i386-pc.rmk (kernel_img_SOURCES): Likewise.
(grub_setup_SOURCES): Remove kern/parser.c.
* conf/i386-qemu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
* conf/mips-qemu-mips.rmk (kernel_img_SOURCES): Likewise.
* conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
(grub_setup_SOURCES): Remove kern/parser.c.
* conf/x86-efi.rmk (kernel_img_SOURCES): Remove kern/handler.c.
* gettext/gettext.c (grub_gettext_delete_list): Don't use grub_list_pop.
* include/grub/command.h (grub_command_iterate): Removed.
(FOR_COMMANDS): New macro.
* include/grub/dl.h (grub_dl): New member next.
(grub_dl_iterate): Removed.
(grub_dl_head): New variable declaration.
(FOR_DL_MODULES): New macro.
* include/grub/fs.h: Include list.h.
(grub_fs): Make next first element.
(grub_fs_list): New variable declaration.
(grub_fs_register): Make inline.
(grub_fs_unregister): Likewise.
(grub_fs_iterate): Removed.
(FOR_FILESYSTEMS): New macro.
* include/grub/handler.h: Removed.
* include/grub/list.h (grub_list_hook_t): Removed.
(grub_list_test_t): Likewise.
(grub_list_pop): Likewise.
(grub_list_iterate): Likewise.
(grub_list_insert): Likewise.
(FOR_LIST_ELEMENTS): New macro.
* include/grub/parser.h (grub_parser_class): Removed.
(grub_parser_register): Likewise.
(grub_parser_unregister): Likewise.
(grub_parser_get_current): Likewise.
(grub_parser_set_current): Likewise.
(grub_register_rescue_parser): Likewise.
(grub_rescue_parse_line): New function.
* include/grub/partition.h (FOR_PARTITION_MAPS): Use FOR_LIST_ELEMENTS.
* include/grub/script_sh.h (grub_script_function_list): New variable
declaration.
(FOR_SCRIPT_FUNCTIONS): New macro.
(grub_script_function_iterate): Removed.
(grub_normal_parse_line): New prototype.
* include/grub/term.h (FOR_ACTIVE_TERM_INPUTS): Use FOR_LIST_ELEMENTS.
(FOR_DISABLED_TERM_INPUTS): Likewise.
(FOR_ACTIVE_TERM_OUTPUTS): Likewise.
(FOR_DISABLED_TERM_OUTPUTS): Likewise.
* include/grub/video.h (grub_video_adapter): Move 'next' to first
element.
(grub_video_register): Inline.
(grub_video_unregister): Likewise.
(grub_video_adapter_list): New variable declaration.
(grub_video_iterate): Removed.
(FOR_VIDEO_ADAPTERS): New macro.
* kern/dl.c (grub_dl_list): Removed. All users updated.
(grub_dl_iterate): Removed.
* kern/fs.c (grub_fs_list): Make global.
(grub_fs_register): Removed.
(grub_fs_unregister): Likewise.
(grub_fs_iterate): Likewise.
* kern/handler.c: Removed.
* kern/list.c (grub_list_pop): Removed.
(grub_list_iterate): Likewise.
(grub_list_insert): Likewise.
(grub_named_list_find): Use FOR_LIST_ELEMENTS.
(grub_prio_list_insert): Don't use grub_list_insert.
* kern/main.c (grub_register_rescue_parser): Don't call
grub_register_rescue_parser.
* kern/parser.c (grub_parser_class): Removed.
(grub_parser_execute): Use grub_rescue_parse_line.
* kern/rescue_parser.c (grub_rescue_parse_line): Make global.
(grub_rescue_parser): Removed.
(grub_register_rescue_parser): Likewise.
* kern/rescue_reader.c (grub_rescue_run): Use grub_rescue_parse_line.
* normal/auth.c (is_authenticated): Use FOR_LIST_ELEMENTS.
(grub_auth_check_authentication): Likewise.
* normal/completion.c (iterate_command): Removed.
(grub_normal_do_completion): Use FOR_COMMANDS.
* normal/handler.c: Removed.
* normal/main.c (read_config_file): Remove parser changing.
(grub_normal_execute): Don't call read_handler_list.
(grub_normal_read_line_real): Statically allocate prompt.
(grub_cmdline_run): Use grub_normal_parse_line.
(GRUB_MOD_FINI): Don't call free_handler_list.
* normal/menu_entry.c (run): Likewise.
* script/function.c (grub_script_function_list): Make global.
(grub_script_function_iterate): Removed.
* script/main.c (grub_normal_parse_line): Make global.
(grub_sh_parser): Removed.
(GRUB_MOD_INIT): Likewise.
(GRUB_MOD_FINI): Likewise.
* tests/lib/functional_test.c (grub_functional_test): Use
FOR_LIST_ELEMENTS.
* tests/lib/test.c (free_failures): Don't use grub_list_pop.
(grub_test_run): Use FOR_LIST_ELEMENTS.
* tests/lib/unit_test.c (main): Likewise.
* util/deviceiter.c (grub_util_iterate_devices): Don't use
grub_list_pop.
* util/grub-fstest.c (grub_term_input_class): Removed.
(grub_term_output_class): Likewise.
* util/grub-probe.c: Likewise.
* util/i386/pc/grub-setup.c: Likewise.
* util/sparc64/ieee1275/grub-setup.c: Likewise.
* util/grub-script-check.c (main): Don't call grub_init_all and
grub_fini_all.
* video/video.c (grub_video_adapter_list): Make global.
(grub_video_register): Removed.
(grub_video_unregister): Likewise.
(grub_video_iterate): Likewise.
2010-06-11 22:31:16 +02:00
Aleš Nesrsta
1515ec8684
2010-06-02 Aleš Nesrsta <starous@volny.cz>
...
Finally make USB usable.
* bus/usb/ohci.c (grub_ohci_reg_t): Add missing values.
(GRUB_OHCI_RHUB_PORT_POWER_MASK): New macro.
(GRUB_OHCI_RHUB_PORT_ALL_POWERED): Likewise.
(GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_MASK): Likewise.
(GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT): Likewise.
(GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT): Likewise.
(GRUB_OHCI_FSMPS): Likewise.
(GRUB_OHCI_PERIODIC_START): Likewise.
(GRUB_OHCI_FRAME_INTERVAL): Likewise.
(GRUB_OHCI_SET_PORT_ENABLE): Likewise.
(GRUB_OHCI_CLEAR_PORT_ENABLE): Likewise.
(GRUB_OHCI_SET_PORT_RESET): Likewise.
(GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE): Likewise.
* bus/usb/ohci.c (grub_ohci_pci_iter): Various important fixups.
(grub_ohci_transaction): Likewise.
(grub_ohci_transfer): Improve condition detection algorithms.
Handle toggle property. Program the transactions correctly.
Improve error handling. Various important fixups.
(grub_ohci_portstatus): Put register writes in right order.
* bus/usb/uhci.c (grub_free_queue): Compute last_trans.
(grub_uhci_transfer): Don't show "failed" message on success.
* bus/usb/usb.c (grub_usb_set_configuration): Zero-fill whole "toggle"
array.
(grub_usb_device_initialize): Read first 8 bytes of descriptor to
determine its size.
* bus/usb/usbtrans.c (grub_usb_control_msg): Use descdev.maxsize0 even
before initialization is completed. Use IN direction for empty
transfers. Use last_trans and compute toggle.
* include/grub/usbtrans.h (grub_usb_transfer): New field last_trans.
(GRUB_USB_FEATURE_ENDP_HALT): Correct the value.
(GRUB_USB_FEATURE_DEV_REMOTE_WU): Likewise.
(GRUB_USB_FEATURE_TEST_MODE): Likewise.
* include/grub/usb.h (grub_usb_err_t): New value GRUB_USB_ERR_UNRECOVERABLE.
(grub_usb_device): Increase toggle to 256.
(grub_usbms_subclass_t): New values GRUB_USBMS_SUBCLASS_RBC,
GRUB_USBMS_SUBCLASS_MMC2, GRUB_USBMS_SUBCLASS_UFI and
GRUB_USBMS_SUBCLASS_SFF8070.
* include/grub/scsicmd.h (grub_scsi_test_unit_ready): New structure.
(grub_scsi_inquiry): New member page and alloc_length.
(grub_scsi_request_sense): New structure.
(grub_scsi_request_sense_data): Likewise.
(grub_scsi_read_capacity): New fields logical_block_addr, PMI and
control.
* disk/scsi.c (grub_scsi_request_sense): New function.
(grub_scsi_test_unit_ready): Likewise.
(grub_scsi_inquiry): Fill new fields.
(grub_scsi_read_capacity): Likewise.
(grub_scsi_read10): Add request sense at the end.
(grub_scsi_read12): Likewise.
(grub_scsi_write10): Likewise.
(grub_scsi_write12): Likewise.
(grub_scsi_open): Add Test Unit Ready.
* disk/usbms.c (grub_usbms_finddevs): Check configcnt.
Support additional subclasses. Con't clear halt yet. Activate the
proper config. Calculate LUNs correctly.
(grub_usbms_transfer): Various important fixups.
2010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
* bus/pci.c (grub_pci_iterate) [GRUB_MACHINE_MIPS_YEELOONG]: Skip ghosts.
* bus/usb/ohci.c (grub_ohci_portstatus): Handle R/WC correctly.
(grub_ohci_fini_hw): New function.
(grub_ohci_restore_hw): Likewise.
(GRUB_MOD_INIT(ohci)): Register preboot hook.
(GRUB_MOD_FINI(ohci)): Shutdown OHCI.
* term/usb_keyboard.c: Remove include of grub/machine/console.h.
2010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
Dedicated DMA allocations.
* bus/pci.c (grub_memalign_dma32): New function
(grub_dma_free): Likewise.
(grub_dma_get_virt): Likewise.
(grub_dma_get_phys): Likewise.
* bus/usb/ohci.c (grub_ohci): New members hcca_addr and hcca_chunk.
(grub_ohci_pci_iter): Use dma32_alloc.
(grub_ohci_transfer): Likewise.
* bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
(grub_usb_bulk_readwrite): Likewise.
* include/grub/pci.h: Add declarations.
2010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
CS5536 support.
* bus/cs5536.c: New file.
* bus/usb/ohci.c (grub_ohci_pci_iter): Check for CS5536.
* conf/i386.rmk (pkglib_MODULES): Add cs5536.mod.
(cs5536_mod_SOURCES): New variable.
(cs5536_mod_CFLAGS): Likewise.
(cs5536_mod_LDFLAGS): Likewise.
* conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add cs5536.h and
machine/pci.h.
(kernel_img_SOURCES): Add bus/cs5536.c.
(pkglib_MODULES): Add usb.mod, usbtest.mod, ohci.mod, usbms.mod and
usb_keyboard.mod.
(usb_mod_SOURCES): New variable.
(usb_mod_CFLAGS): New variable.
(usb_mod_LDFLAGS): New variable.
(usbtest_mod_SOURCES): New variable.
(usbtest_mod_CFLAGS): New variable.
(usbtest_mod_LDFLAGS): New variable.
(ohci_mod_SOURCES): New variable.
(ohci_mod_CFLAGS): New variable.
(ohci_mod_LDFLAGS): New variable.
(usbms_mod_SOURCES): New variable.
(usbms_mod_CFLAGS): New variable.
(usbms_mod_LDFLAGS): New variable.
(usb_keyboard_mod_SOURCES): New variable.
(usb_keyboard_mod_CFLAGS): New variable.
(usb_keyboard_mod_LDFLAGS): New variable.
* include/grub/smbus.h: New file.
* include/grub/cs5536.h: New file.
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2010-06-02 17:16:20 +02:00
Colin Watson
ab6316112c
* conf/any-emu.rmk (kernel_img_SOURCES) [!x86]: Include
...
kern/$(target_cpu)/cache.S even if TARGET_NO_MODULES = yes.
2010-06-02 01:23:34 +01:00
Vladimir 'phcoder' Serbinenko
89d90892d0
Merge usb into yeeloongfw
2010-05-31 14:21:34 +02:00
Vladimir 'phcoder' Serbinenko
8b1cf5e87f
Dedicated DMA allocation functions. CS5536 OHCI support.
2010-05-31 13:58:18 +02:00
BVK Chaitanya
fa4b84900a
Fix grub-emu issues on NetBSD, with gcc 4.1.3.
...
* conf/any-emu.rmk: Remove unnecessary COMMON_CFLAGS.
* include/grub/emu/misc.h (canonicalize_file_name): New Prototype.
* kern/misc.c (__enable_execute_stack): Disable on
GRUB_MACHINE_EMU.
2010-05-28 19:18:45 +05:30
Vladimir 'phcoder' Serbinenko
2226d68df1
merge mainline into yeeloongfw
2010-05-23 14:50:11 +02:00
Vladimir 'phcoder' Serbinenko
6e198650e9
Enable serial in simulcast with local terminal on yeeloong
2010-05-22 23:36:44 +02:00
Vladimir 'phcoder' Serbinenko
c49abfdd24
merge mainline into cmostest
2010-05-22 20:28:09 +02:00
Vladimir 'phcoder' Serbinenko
e34b610d49
merge mainline into yeeloongfw
2010-05-22 16:58:45 +02:00
Vladimir 'phcoder' Serbinenko
19dcc49086
xen configuration preliminary support based on enhanced version of a kludge I use
2010-05-21 19:45:14 +02:00
BVK Chaitanya
868bebea0c
merge with mainline
2010-05-19 14:39:58 +05:30
Colin Watson
74cbf5bdcb
* configure.ac: Check for Linux device-mapper support.
...
* util/hostdisk.c (device_is_mapped): New function.
(find_partition_start): New function, partly broken out from
linux_find_partition and grub_util_biosdisk_get_grub_dev but with
device-mapper support added.
(linux_find_partition): Use find_partition_start.
(convert_system_partition_to_system_disk): Add `st' argument.
Support Linux /dev/mapper/* devices if device-mapper support is
available; only DM-RAID devices are understood at present.
(find_system_device): Add `st' argument. Pass it to
convert_system_partition_to_system_disk.
(grub_util_biosdisk_get_grub_dev): Pass stat result to
find_system_device and convert_system_partition_to_system_disk. Use
find_partition_start.
* conf/common.rmk (grub_mkdevicemap_SOURCES): Add kern/env.c,
kern/err.c, kern/list.c, kern/misc.c, and kern/emu/mm.c.
* util/deviceiter.c [__linux__]: Define MINOR.
(grub_util_iterate_devices): Add support for DM-RAID disk devices.
* util/mkdevicemap.c (grub_putchar): New function.
(grub_getkey): New function.
(grub_refresh): New function.
(main): Set debug=all if -v -v is used.
2010-05-18 12:33:35 +01:00
Colin Watson
e6127bed25
merge from trunk
2010-05-18 11:14:13 +01:00
Vladimir 'phcoder' Serbinenko
1d3293d67d
Remove grub-mkisofs.
...
* conf/common.rmk (bin_UTILITIES): Remove grub-mkisofs.
(grub_mkisofs_SOURCES): Removed.
(grub_mkisofs_CFLAGS): Removed.
* util/mkisofs/defaults.h: Removed.
* util/mkisofs/eltorito.c: Likewise.
* util/mkisofs/exclude.h: Likewise.
* util/mkisofs/hash.c: Likewise.
* util/mkisofs/include/: Likewise.
* util/mkisofs/include/fctldefs.h: Likewise.
* util/mkisofs/include/mconfig.h: Likewise.
* util/mkisofs/include/prototyp.h: Likewise.
* util/mkisofs/include/statdefs.h: Likewise.
* util/mkisofs/iso9660.h: Likewise.
* util/mkisofs/joliet.c: Likewise.
* util/mkisofs/match.c: Likewise.
* util/mkisofs/match.h: Likewise.
* util/mkisofs/mkisofs.c: Likewise.
* util/mkisofs/mkisofs.h: Likewise.
* util/mkisofs/msdos_partition.h: Likewise.
* util/mkisofs/multi.c: Likewise.
* util/mkisofs/name.c: Likewise.
* util/mkisofs/rock.c: Likewise.
* util/mkisofs/tree.c: Likewise.
* util/mkisofs/write.c: Likewise.
2010-05-17 23:33:03 +02:00
Vladimir 'phcoder' Serbinenko
918405fd8c
merge mainline into rescue-efi
2010-05-17 21:26:16 +02:00
BVK Chaitanya
d2d32327a8
merge with mainline
2010-05-17 20:36:05 +05:30
Vladimir 'phcoder' Serbinenko
368e544ba6
Add bochs video support
2010-05-17 01:18:50 +02:00
Vladimir 'phcoder' Serbinenko
94bf3dd564
somewhat working video_cirrus implementation
2010-05-16 01:32:07 +02:00
BVK Chaitanya
e204c5d5e5
pull-in break-cmd branch
2010-05-13 10:45:16 +05:30
BVK Chaitanya
2e961bd737
pull-in func-params again
2010-05-12 17:59:09 +05:30
BVK Chaitanya
45ab4f486f
pull-in func-params branch
2010-05-12 17:35:07 +05:30
BVK Chaitanya
263b0fa757
merge with mainline
2010-05-12 10:41:24 +05:30
BVK Chaitanya
a0167e8bdf
rewrote arglist to argv conversion and added $@, $* support
2010-05-12 10:19:12 +05:30
Vladimir 'phcoder' Serbinenko
7dcef22cd3
merge mainline into bidi
2010-05-09 11:03:03 +02:00
Vladimir 'phcoder' Serbinenko
c6e5caab1d
Transform (broken) vga terminal into (working) vga video driver.
...
* conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to
video/i386/pc/vga.c.
* include/grub/video.h (grub_video_driver_id):
Add GRUB_VIDEO_DRIVER_VGA.
* term/i386/pc/vga.c: Renamed to ...
* video/i386/pc/vga.c: ...this
(DEBUG_VGA): Removed.
(CHAR_WIDTH): Likewise.
(CHAR_HEIGHT): Likewise.
(TEXT_WIDTH): Likewise.
(TEXT_HEIGHT): Likewise.
(DEFAULT_FG_COLOR): Likewise.
(DEFAULT_BG_COLOR): Likewise.
(colored_char): Likewise.
(xpos): Likewise.
(ypos): Likewise.
(cursor_state): Likewise.
(fg_color): Likewise.
(bg_color): Likewise.
(text_buf): Likewise.
(page): Likewise.
(font): Likewise.
(framebuffer): New variable.
(set_read_map): Disabled.
(setup): New variable.
(is_target): Likewise.
(grub_vga_mod_init): Likewise.
(grub_vga_mod_fini): Likewise.
(check_vga_mem): Likewise.
(write_char): Likewise.
(write_cursor): Likewise.
(scroll_up): Likewise.
(grub_vga_putchar): Likewise.
(grub_vga_getcharwidth): Likewise.
(grub_vga_getwh): Likewise.
(grub_vga_getxy): Likewise.
(grub_vga_gotoxy): Likewise.
(grub_vga_cls): Likewise.
(grub_vga_setcolorstate): Likewise.
(grub_vga_setcursor): Likewise.
(grub_video_vga_init): New function.
(grub_video_vga_setup): Likewise.
(grub_video_vga_fini): Likewise.
(update_target): Likewise.
(grub_video_vga_blit_bitmap): Likewise.
(grub_video_vga_blit_render_target): Likewise.
(grub_video_vga_set_active_render_target): Likewise.
(grub_video_vga_get_active_render_target): Likewise.
(grub_video_vga_swap_buffers): Likewise.
(grub_video_vga_set_palette): Likewise.
(grub_video_vga_get_info_and_fini): Likewise.
(grub_vga_term): Removed.
(grub_video_vga_adapter): New variable.
(GRUB_MOD_INIT): Register a video driver instead of terminal.
(GRUB_MOD_FINI): Unrefister a video driver instead of terminal.
2010-05-09 11:00:21 +02:00
BVK Chaitanya
e9efa0fe36
shift command support
2010-05-07 10:08:09 +05:30
Vladimir 'phcoder' Serbinenko
82e32bc310
make serial use ANSI code recognition in terminfo.mod
2010-05-06 21:32:58 +02:00
Vladimir 'phcoder' Serbinenko
e903ddec1c
move ANSI code recognition to terminfo.mod
2010-05-06 21:11:59 +02:00
BVK Chaitanya
8c41176882
automake commit without merge history
2010-05-06 11:34:04 +05:30
BVK Chaitanya
ab4da2cd36
build fixes for real platforms
2010-05-06 09:33:45 +05:30
BVK Chaitanya
da6e6f17f3
cygwin emu build fixes
2010-05-06 08:45:39 +05:30
Vladimir 'phcoder' Serbinenko
99bfe57386
merge mainline into bidi
2010-05-05 16:28:52 +02:00
BVK Chaitanya
eee2594104
continue command support
2010-05-05 16:19:31 +05:30
BVK Chaitanya
a7aa28248b
break command support
2010-05-05 15:34:26 +05:30
BVK Chaitanya
342bf06e58
function parameters support
2010-05-05 14:47:50 +05:30
Vladimir 'phcoder' Serbinenko
469ed9410b
Fix i386-pc compilation
2010-05-05 09:58:02 +02:00
Vladimir 'phcoder' Serbinenko
0a58eb2e3a
move fwstart.S to boot/
2010-05-04 10:56:52 +02:00
BVK Chaitanya
81827e248c
merge with mainline
2010-05-04 09:09:03 +05:30
Vladimir 'phcoder' Serbinenko
165134bcc1
* commands/iorw.c: New file.
...
* conf/i386.rmk (pkglib_MODULES): Add iorw.mod.
(iorw_mod_SOURCES): New variable.
(iorw_mod_CFLAGS): Likewise.
(iorw_mod_LDFLAGS): Likewise.
2010-05-01 19:37:04 +02:00
Vladimir 'phcoder' Serbinenko
7819a4562f
Use LBIO on coreboot.
...
* conf/i386-coreboot.rmk (kernel_img_SOURCES): Change
kern/i386/multiboot_mmap.c to kern/i386/coreboot/mmap.c.
* include/grub/i386/coreboot/memory.h (GRUB_LINUXBIOS_MEMBER_LINK):
New declaration.
* kern/i386/coreboot/init.c (grub_machine_init): Don't call
grub_machine_mmap_init on coreboot.
* kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate): Handle
GRUB_LINUXBIOS_MEMBER_LINK.
(grub_machine_mmap_iterate): Fix declaration.
* kern/i386/coreboot/startup.S: Don't save mbi location on coreboot.
2010-05-01 14:32:48 +02:00
Vladimir 'phcoder' Serbinenko
7210dca942
Split coreboot and multiboot ports.
...
* conf/i386-multiboot.rmk: New file.
* configure.ac: Add multiboot port.
* include/grub/i386/multiboot/boot.h: New file.
* include/grub/i386/multiboot/console.h: Likewise.
* include/grub/i386/multiboot/init.h: Likewise.
* include/grub/i386/multiboot/kernel.h: Likewise.
* include/grub/i386/multiboot/loader.h: Likewise.
* include/grub/i386/multiboot/memory.h: Likewise.
* include/grub/i386/multiboot/serial.h: Likewise.
* include/grub/i386/multiboot/time.h: Likewise.
* include/grub/multiboot.h: Add GRUB_MACHINE_MULTIBOOT to ifdef.
* loader/multiboot.c: Likewise.
* loader/multiboot_mbi2.c: Likewise.
* util/grub-mkrescue.in: Generate multiboot rescue.
2010-05-01 14:06:53 +02:00
BVK Chaitanya
6fdda85ae6
fix comment and brace handling
2010-04-30 13:50:41 +05:30
Vladimir 'phcoder' Serbinenko
cc9d24254f
* conf/x86-efi.rmk (linux_mod_SOURCES): Write explicitly to avoid
...
autogen issues.
2010-04-27 22:08:24 +02:00
BVK Chaitanya
f07ccea799
removed some duplicate code
2010-04-27 20:55:12 +05:30
Vladimir 'phcoder' Serbinenko
19ba92760a
merge merge-mkimage into rescue-efi
2010-04-27 10:47:29 +02:00
BVK Chaitanya
4c7085f82b
added support for --enable-grub-emu-modules build
2010-04-27 13:57:14 +05:30
BVK Chaitanya
840b61d8f0
reorganized grub-emu sources to suite upcoming automake build system
2010-04-27 10:50:28 +05:30
Vladimir 'phcoder' Serbinenko
8ea6ecb36d
Some cleanups
2010-04-26 21:11:16 +02:00
Vladimir 'phcoder' Serbinenko
bb3208158a
Fill info for remaining platforms. Make efi image identical to image of previous grub-mkimage
2010-04-26 17:19:15 +02:00
Vladimir 'phcoder' Serbinenko
0253aeb7a1
Unified grub-mkimage achieved
2010-04-26 13:11:43 +02:00
Vladimir 'phcoder' Serbinenko
7576adef7c
Remove grub-mkelfimage
2010-04-25 23:04:29 +02:00
Vladimir 'phcoder' Serbinenko
2296410ffb
initial support for ppc in grub-mkimage (bugs for now)
2010-04-25 22:26:29 +02:00
Vladimir 'phcoder' Serbinenko
2fa6a5dd44
rename grub-mkrawimage to grub-mkimage
2010-04-25 19:41:51 +02:00
Vladimir 'phcoder' Serbinenko
d31bc9964c
migrate kernel.img to elf
2010-04-25 01:54:46 +02:00
Jiro SEKIBA
f67dc308f6
Nilfs2 support.
...
* conf/common.rmk (grub_probe_SOURCES): Add fs/nilfs2.c.
(grub_fstest_SOURCES): Likewise.
(pkglib_MODULES): Add nilfs2.mod.
(nilfs2_mod_SOURCES): New variable.
(nilfs2_mod_CFLAGS): Likewise.
(nilfs2_mod_LDFLAGS): Likewise.
* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
* fs/nilfs2.c: New file.
2010-04-24 22:09:08 +02:00
BVK Chaitanya
bc4a2d832b
Fix emu build with grub-emu-pci and grub-emu-modules.
...
* include/grub/util/misc.h: Export grub_util_{info,error,warn}
functions.
* include/grub/libpciaccess.h: New file.
* conf/any-emu.rmk: Update kernel headers for emu build.
2010-04-19 16:04:56 +05:30
BVK Chaitanya
454c3001f2
fix emu build with grub-emu-pci and grub-emu-modules
2010-04-19 15:15:59 +05:30
Vladimir 'phcoder' Serbinenko
7428eb2cf6
Revert useless and wrong parts
2010-04-18 20:38:40 +02:00
Vladimir 'phcoder' Serbinenko
d0faf8a1b3
Correct path to grub-ofpathname
2010-04-18 16:31:27 +02:00
Vladimir 'phcoder' Serbinenko
6e86896ed8
Use ofpathname in grub-setup on sparc
2010-04-18 14:02:13 +02:00
Vladimir 'phcoder' Serbinenko
1989170fd5
merge mainline into rescue-efi
2010-04-17 02:32:05 +02:00
Vladimir 'phcoder' Serbinenko
9130433353
Enable USB compilation on Yeeloong
2010-04-16 19:46:22 +02:00
BVK Chaitanya
4e6da157dd
fix and testcase for \$ in grub script dquote strings
2010-04-13 20:58:12 +05:30
Vladimir 'phcoder' Serbinenko
5d04b11e0e
Unify libgcc processing.
...
* Makefile.in (kernel_img_LDFLAGS): New variable.
* conf/common.rmk (kernel_img_HEADERS): Add libgcc.h.
* conf/i386-coreboot.rmk (kernel_img_LDFLAGS): Append instead of
overwriting.
* conf/i386-ieee1275.rmk (kernel_img_LDFLAGS): Likewise.
* conf/i386-pc.rmk (kernel_img_LDFLAGS): Likewise.
* conf/i386-qemu.rmk (kernel_img_LDFLAGS): Likewise.
* conf/x86-efi.rmk (kernel_img_LDFLAGS): Likewise.
* conf/mips-qemu-mips.rmk (kernel_img_LDFLAGS): Append instead of
overwriting. Remove -lgcc and -static-libgcc
* conf/mips-yeeloong.rmk (kernel_img_LDFLAGS): Likewise.
* conf/mips.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
* conf/powerpc-ieee1275.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
(kernel_img_LDFLAGS): Append instead of overwriting.
Remove -lgcc and -static-libgcc
* conf/sparc64-ieee1275.rmk: Likewise.
* include/grub/powerpc/libgcc.h: Move to ...
* include/grub/libgcc.h: .. this.
* include/grub/libgcc.h: Don't export most of the function on x86.
(__bswapsi2): New export.
(__bswapdi2): Likewise.
* include/grub/mips/libgcc.h: Removed.
* include/grub/sparc64/libgcc.h: Likewise.
2010-04-11 01:14:31 +02:00
BVK Chaitanya
20072d3ad5
merged with mainline
2010-04-10 18:09:56 +05:30
Vladimir 'phcoder' Serbinenko
b3d0fa12af
Fix usb support
2010-04-10 01:56:51 +02:00
Vladimir 'phcoder' Serbinenko
a29e902132
Merge mainline into emu-modload
2010-04-10 01:25:46 +02:00
Vladimir 'phcoder' Serbinenko
e2d15128a5
Fix grub-setup on sparc compilation
2010-04-09 23:16:08 +02:00
Vladimir 'phcoder' Serbinenko
4a55d631d7
Merge mainline into for_macros
2010-04-09 22:35:32 +02:00
Vladimir 'phcoder' Serbinenko
a87add6d17
merge mainline into bidi
2010-04-09 19:40:31 +02:00
Vladimir 'phcoder' Serbinenko
9e71201f48
merge mainline into bidi
2010-04-09 19:31:43 +02:00
BVK Chaitanya
68b31b54f5
merged with mainline
2010-04-09 22:32:58 +05:30
BVK Chaitanya
c41c00eab6
merged with mainline
2010-04-09 21:44:59 +05:30
BVK Chaitanya
9705115b22
merged with mainline
2010-04-09 20:53:57 +05:30
BVK Chaitanya
4ee717e12b
fix freebsd build
2010-04-06 14:39:11 +05:30
BVK Chaitanya
daf892b3d4
POSIX header file wrappers.
...
* lib/posix_wrap/assert.h: New file. Wrapper for its POSIX
equivalents.
* lib/posix_wrap/ctype.h: Likewise.
* lib/posix_wrap/errno.h: Likewise.
* lib/posix_wrap/langinfo.h: Likewise.
* lib/posix_wrap/limits.h: Likewise.
* lib/posix_wrap/localcharset.h: Likewise.
* lib/posix_wrap/stdint.h: Likewise.
* lib/posix_wrap/stdio.h: Likewise.
* lib/posix_wrap/stdlib.h: Likewise.
* lib/posix_wrap/string.h: Likewise.
* lib/posix_wrap/sys/types.h: Likewise.
* lib/posix_wrap/unistd.h: Likewise.
* lib/posix_wrap/wchar.h: Likewise.
* lib/posix_wrap/wctype.h: Likewise.
* conf/common.rmk (grub_script.yy.c): Remove #include elimination.
(grub_script.yy.h): Likewise.
* script/yylex.l: Remove POSIX emulation #defines.
* Makefile.in (POSIX_CFLAGS): New variable.
(GNULIB_UTIL_CFLAGS): Likewise.
Regexp support.
* conf/common.rmk (pkglib_MODULES): Add regexp.mod.
(regexp_mod_SOURCES): New variable.
(regexp_mod_CFLAGS): Likewise.
(regexp_mod_LDFLAGS): Likewise.
* commands/regexp.c: New file.
* gnulib/regcomp.c: New file. Imported from gnulib.
* gnulib/regex.c: Likewise.
* gnulib/regex_internal.c: Likewise.
* gnulib/regex_internal.h: Likewise.
* gnulib/regexec.c: Likewise.
* gnulib/regex.h: Likewise.
2010-04-06 01:17:32 +05:30
Vladimir 'phcoder' Serbinenko
a6132b9f3f
Merge mainline into yeeloongfw
2010-04-05 17:35:03 +02:00
Vladimir 'phcoder' Serbinenko
064cb524ec
* include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export.
...
* conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h.
2010-04-05 15:57:40 +02:00
Vladimir 'phcoder' Serbinenko
a9cd257a87
Move files to appropriate places
2010-04-03 14:29:11 +02:00