ソースを参照

[comboot] Implement INT 22h AX=000Bh (Get Serial Console Configuration)

Signed-off-by: Michael Brown <mcb30@etherboot.org>
tags/v0.9.8
Daniel Verkamp 15年前
コミット
cb9700ef6f
1個のファイルの変更9行の追加1行の削除
  1. 9
    1
      src/arch/i386/interface/syslinux/comboot_call.c

+ 9
- 1
src/arch/i386/interface/syslinux/comboot_call.c ファイルの表示

@@ -39,6 +39,8 @@ FILE_LICENCE ( GPL2_OR_LATER );
39 39
 #include <gpxe/init.h>
40 40
 #include <gpxe/image.h>
41 41
 #include <usr/imgmgmt.h>
42
+#include "config/console.h"
43
+#include "config/serial.h"
42 44
 
43 45
 /** The "SYSLINUX" version string */
44 46
 static char __data16_array ( syslinux_version, [] ) = "gPXE " VERSION;
@@ -456,8 +458,14 @@ static __asmcall void int22 ( struct i386_all_regs *ix86 ) {
456 458
 		break;
457 459
 
458 460
 	case 0x000B: /* Get Serial Console Configuration */
459
-		/* FIXME: stub */
461
+#if defined(CONSOLE_SERIAL) && !defined(COMPRESERVE)
462
+		ix86->regs.dx = COMCONSOLE;
463
+		ix86->regs.cx = 115200 / COMSPEED;
464
+		ix86->regs.bx = 0;
465
+#else
460 466
 		ix86->regs.dx = 0;
467
+#endif
468
+
461 469
 		ix86->flags &= ~CF;
462 470
 		break;
463 471
 

読み込み中…
キャンセル
保存