Vladimir 'phcoder' Serbinenko
e8d0a8f85c
Merge mainline into bidi
2010-07-02 19:35:07 +02:00
Vladimir 'phcoder' Serbinenko
919e37b0ac
Inline setcolorstate and move grub_Cls out of kernel.img
2010-07-02 18:20:48 +02:00
Vladimir 'phcoder' Serbinenko
ec1d04f1de
Yeeloong firmware port.
...
* boot/mips/yeeloong/fwstart.S: New file.
* bus/cs5536.c (gpiodump): New const.
(set_io_space): New function.
(set_iod): Likewise.
(set_p2d): Likewise.
(grub_cs5536_init_geode): Likewise.
* commands/mips/yeeloong/lsspd.c: New file.
* conf/mips-qemu-mips.rmk (pkglib_MODULES): Add serial.mod.
(serial_mod_SOURCES): New variable.
(serial_mod_CFLAGS): Likewise.
(serial_mod_LDFLAGS): Likewise.
* conf/mips-yeeloong.rmk (kernel_img_SOURCES): Add term/serial.c,
term/terminfo.c and term/tparm.c.
(pkglib_IMAGES): Add fwstart.img.
(fwstart_img_SOURCES): New variable.
(fwstart_img_CFLAGS): Likewise.
(fwstart_img_ASFLAGS): Likewise.
(fwstart_img_LDFLAGS): Likewise.
(fwstart_img_FORMAT): Likewise.
(pkglib_MODULES): Add lsspd.mod.
(lsspd_mod_SOURCES): New variable.
(lsspd_mod_CFLAGS): Likewise.
(lsspd_mod_LDFLAGS): Likewise.
(pkglib_MODULES): Add halt.mod.
(halt_mod_SOURCES): New variable.
(halt_mod_CFLAGS): Likewise.
(halt_mod_LDFLAGS): Likewise.
* conf/mips.rmk (pkglib_MODULES): Remove serial.mod.
(serial_mod_SOURCES): Removed.
(serial_mod_CFLAGS): Likewise.
(serial_mod_LDFLAGS): Likewise.
* disk/ata.c (check_device): New function.
(grub_ata_device_initialize): Use check_device.
(grub_ata_iterate): Recheck devices.
(grub_ata_open): Likewise.
(grub_atapi_iterate): Likewise.
(grub_atapi_open): Likewise.
* include/grub/ata.h (GRUB_ATA_CH0_PORT1): New macro.
(GRUB_ATA_CH1_PORT1): Likewise.
(GRUB_ATA_CH0_PORT2): Likewise.
(GRUB_ATA_CH1_PORT2): Likewise.
* include/grub/mips/loongson.h: New file.
* include/grub/mips/yeeloong/ec.h: Likewise.
* include/grub/mips/yeeloong/serial.h (GRUB_MACHINE_SERIAL_PORT): New definition.
(GRUB_MACHINE_SERIAL_DIVISOR_115200): Likewise.
(GRUB_MACHINE_SERIAL_PORTS) [ASM_FILE]: Remove.
* include/grub/misc.h (grub_halt): Declare as noreturn.
* include/grub/serial.h (UART_ENABLE_FIFO): Renamed to ...
(UART_ENABLE_FIFO_TRIGGER14): ... this. All users updated.
(UART_ENABLE_FIFO_TRIGGER1): New definition.
(UART_ENABLE_DTRRTS): Likewise.
(UART_ENABLE_MODEM): Removed.
(UART_ENABLE_OUT2): New const.
* include/grub/term.h (grub_term_register_input_active): New function.
(grub_term_register_output_active): Likewise.
* kern/mips/startup.S [GRUB_MACHINE_MIPS_YEELOONG]: Handle 0xffffffff
argument.
* kern/mips/yeeloong/init.c (grub_get_rtc): Macroify.
(init_pci): New function.
(grub_machine_init): Execute platform init when firmware. Init serial.
(grub_halt): Implement.
(grub_exit): Likewise.
(grub_reboot): Likewise.
* term/serial.c (serial_hw_init): Update macros.
[GRUB_MACHINE_MIPS_YEELOONG]: Init on startup.
* util/grub-mkimage.c (image_target_desc): New id IMAGE_YEELOONG_FLASH.
(image_targets): New target mipsel-yeeloong-flash.
(generate_image): Support IMAGE_YEELOONG_FLASH.
* video/sm712.c (GRUB_SM712_TOTAL_MEMORY_SPACE): New definition.
(grub_video_sm712_setup): Init card.
(grub_video_sm712_set_palette): Removed.
* video/sm712_init.c: New file.
2010-07-01 03:16:56 +02:00
Vladimir 'phcoder' Serbinenko
b7e79e8a6a
Merge mainline into yeeloongfw
2010-06-30 02:30:05 +02:00
Colin Watson
1ba9b88946
* commands/cat.c (grub_cmd_cat): Fix buffer overrun if '\r' is the
...
last character in the buffer.
Reported by: Vladimir Serbinenko.
2010-06-29 16:15:46 +01:00
Colin Watson
bbe346529e
* commands/cat.c (options): New variable.
...
(grub_cmd_cat): Parse options. If the --dos option is given, print
DOS-style "\r\n" line endings as simple newlines (Debian bug
#586358 ).
(GRUB_MOD_INIT): Use extcmd.
(GRUB_MOD_FINI): Likewise.
* docs/grub.texi (cat): Document --dos.
2010-06-28 08:51:46 +01:00
Vladimir 'phcoder' Serbinenko
8e50ec9f05
Merge mainline into cirrus
2010-06-21 02:15:49 +02:00
Vladimir 'phcoder' Serbinenko
a29051ec7f
Handle double redraw
2010-06-21 02:08:19 +02: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
Colin Watson
9121567e16
* commands/gptsync.c (grub_cmd_gptsync): Fix typos.
...
(GRUB_MOD_INIT): Fix capitalisation.
* docs/grub.texi (Command-line and menu entry commands): Document
gettext and gptsync commands.
2010-06-02 02:37:55 +01:00
Vladimir 'phcoder' Serbinenko
7620e7debd
* commands/setpci.c (grub_setpci_iter): Fix an incorrect function check.
...
Reported by: Seth Goldberg.
2010-05-31 20:40:42 +02:00
Vladimir 'phcoder' Serbinenko
89d90892d0
Merge usb into yeeloongfw
2010-05-31 14:21:34 +02:00
Aleš Nesrsta
778ff32476
Fix a bunch of problems with USB.
2010-05-31 14:11:41 +02:00
Vladimir 'phcoder' Serbinenko
2226d68df1
merge mainline into yeeloongfw
2010-05-23 14:50:11 +02:00
Vladimir 'phcoder' Serbinenko
db4d5813e3
* commands/usbtest.c (grub_usb_get_string): Properly support UTF-16.
2010-05-23 14:37:28 +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
58664b94b7
pass pointer to term to term functions
2010-05-07 02:30:44 +02:00
Vladimir 'phcoder' Serbinenko
99bfe57386
merge mainline into bidi
2010-05-05 16:28:52 +02:00
Vladimir 'phcoder' Serbinenko
265d68cd10
* commands/parttool.c (grub_cmd_parttool): Fix #if !GRUB_NO_MODULES
...
condition.
2010-05-03 13:17:12 +02:00
Vladimir 'phcoder' Serbinenko
f5f3ff9326
* commands/help.c (grub_cmd_help): Fix a typo.
...
Reported by: Seth Goldberg
2010-05-01 21:31:45 +02:00
Vladimir 'phcoder' Serbinenko
d8b5cd4011
* commands/hashsum.c (GRUB_MOD_INIT): Remove duplication of command
...
name and add N_.
* commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Likewise.
* commands/iorw.c (GRUB_MOD_INIT): Likewise.
* commands/password_pbkdf2.c (GRUB_MOD_INIT): Likewise.
* commands/regexp.c (GRUB_MOD_INIT): Likewise.
* commands/setpci.c (GRUB_MOD_INIT): Likewise.
* commands/terminal.c (GRUB_MOD_INIT): Likewise.
* efiemu/main.c (GRUB_MOD_INIT): Likewise.
* font/font_cmd.c (GRUB_MOD_INIT): Likewise.
* kern/corecmd.c (GRUB_MOD_INIT): Likewise.
* mmap/mmap.c (GRUB_MOD_INIT): Likewise.
* normal/context.c (GRUB_MOD_INIT): Likewise.
* normal/main.c (GRUB_MOD_INIT): Likewise.
* term/gfxterm.c (GRUB_MOD_INIT): Likewise.
* term/serial.c (GRUB_MOD_INIT): Likewise.
* term/terminfo.c (GRUB_MOD_INIT): Likewise.
2010-05-01 20:28:07 +02:00
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
6f8aaf68be
Merge handling of input and output terminals. Fix a hang.
...
* commands/terminal.c (abstract_terminal): New struct.
(handle_command): New function. Based on grub_cmd_terminal_input.
(grub_cmd_terminal_input): Use handle_command.
(grub_cmd_terminal_output): Use handle_command.
2010-05-01 13:20:07 +02:00
Samuel Thibault
c76a18386f
* commands/i386/pc/play.c (grub_cmd_play): Call 'grub_file_open' only
...
if argc is 1.
2010-04-28 23:18:16 +02:00
Vladimir 'phcoder' Serbinenko
4a55d631d7
Merge mainline into for_macros
2010-04-09 22:35:32 +02:00
Vladimir 'phcoder' Serbinenko
9e71201f48
merge mainline into bidi
2010-04-09 19:31:43 +02:00
Vladimir 'phcoder' Serbinenko
a6132b9f3f
Merge mainline into yeeloongfw
2010-04-05 17:35:03 +02:00
Vladimir 'phcoder' Serbinenko
f651947b58
Merge mainline into bidi
2010-03-30 11:24:28 +02:00
Vladimir 'phcoder' Serbinenko
74f34747b1
Fix path to regex.h
2010-03-28 22:19:06 +02:00
Vladimir 'phcoder' Serbinenko
bbdb72a1f4
merged mainline into regexp
2010-03-28 18:31:40 +02:00
Vladimir 'phcoder' Serbinenko
fcaae9ec12
Remove grub_dl_iterate
2010-03-27 00:52:40 +01:00
Vladimir 'phcoder' Serbinenko
d56a6ac7f6
Remove handlers
2010-03-27 00:19:42 +01:00
Vladimir 'phcoder' Serbinenko
969d1c782d
Simplify Apple CC support.
...
* commands/i386/pc/drivemap_int13h.S: Use LOCAL when possible.
Add 0 byte at the end not to have a symbol with empty target.
* mmap/i386/pc/mmap_helper.S: Likewise.
* genmk.rb: Ignore errors 2030 and 2050.
* kern/i386/pc/startup.S: Use LOCAL when possible.
2010-03-27 00:04:14 +01:00
Vladimir 'phcoder' Serbinenko
fda282327f
Complete eradication of grub_list_iterate
2010-03-26 19:44:18 +01:00
Vladimir 'phcoder' Serbinenko
d85da27cc0
Remove grub_commands_iterate
2010-03-26 19:14:24 +01:00
Vladimir 'phcoder' Serbinenko
c9ea504d25
merge mainline into nestpart
2010-03-26 15:44:13 +01:00
Vladimir 'phcoder' Serbinenko
1f22d20c8c
Fix yeeloong compilation
2010-03-23 18:17:54 +01:00
Vladimir 'phcoder' Serbinenko
f588f1c8b6
Add simple line wrapping
2010-03-16 14:13:32 +01:00
Vladimir 'phcoder' Serbinenko
0a239a8211
bidi works in terminal in grub-emu
2010-03-15 21:14:11 +01:00
Vladimir 'phcoder' Serbinenko
dfed5c6bb4
Removed grub_putchar
2010-03-15 11:49:27 +01:00
Vladimir 'phcoder' Serbinenko
016a671b51
Merge mainline into cleanbuild
2010-03-14 16:01:31 +01:00
Vladimir 'phcoder' Serbinenko
c28e2d120b
merge mainline into yeeloongfw
2010-03-07 23:21:09 +01:00
Vladimir 'phcoder' Serbinenko
5382b1e4a8
2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
...
* commands/cat.c (grub_cmd_cat): Propagate grub_gzfile_open error.
2010-03-01 20:24:34 +01:00
Vladimir 'phcoder' Serbinenko
c140a18037
2010-02-25 Vladimir Serbinenko <phcoder@gmail.com>
...
Don't compile video modules on yeeloong since video subsystem is part
of kernel.
* conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod,
video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod
* conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h,
video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h.
* conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting.
* include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR.
* include/grub/bitmap_scale.h: Likewise.
* include/grub/bufio.h: Likewise.
* include/grub/font.h: Likewise.
* include/grub/gfxterm.h: Likewise.
* include/grub/video.h: Likewise.
* include/grub/vbe.h: Don't include video_fb.h.
* video/i386/pc/vbe.c: Include video_fb.h.
* commands/i386/pc/vbetest.c: Include video.h.
2010-02-25 15:10:18 +01:00
Vladimir 'phcoder' Serbinenko
232f7e29c9
SMBus on CS5536 support
2010-02-16 22:39:59 +01:00
Vladimir 'phcoder' Serbinenko
d9f31a41ca
2010-02-16 Vladimir Serbinenko <phcoder@gmail.com>
...
Remove any reference to non-free fonts.
* commands/videotest.c (grub_cmd_videotest): Use unifont by default.
* docs/gfxmenu-theme-example.txt: Removed. It's both outdated and
uses non-free components.
* font/font.c (grub_font_get_name): Remove example name.
* gfxmenu/gui_label.c (grub_gui_label_new): Use unifont by default.
* gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
* gfxmenu/gui_progress_bar.c (grub_gui_progress_bar_new): Likewise.
* gfxmenu/view.c (grub_gfxmenu_view_new): Likewise.
2010-02-16 13:23:08 +01:00
Samuel Thibault
6fa7cfce65
2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
...
* commands/i386/pc/play.c (GRUB_MOD_INIT(play)): Fix help.
* docs/grub.texi (Command-line and menu entry commands): Document play
command.
2010-02-14 18:36:26 +01:00
Samuel Thibault
37c8483b97
2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
...
* commands/i386/pc/play.c (grub_cmd_play): If grub_file_open fails,
parse arguments as inline tempo and notes. Move code for playing notes
to...
(play): ... new function.
2010-02-14 18:14:16 +01:00
Samuel Thibault
14da0fb7e8
2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
...
* commands/i386/pc/play.c (T_REST, T_FINE, struct note, beep_on): Use
grub_uint16_t instead of short.
(grub_cmd_play): Use grub_uint32_t instead of int, convert data from
disk from little endian to cpu endianness.
2010-02-14 17:25:52 +01:00