Commit 7d8d2dfe authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] Remove bootsect_helper and a comment fix

From: Coywolf Qi Hunt <coywolf@greatcn.org>

Since "Direct booting from floppy is no longer supported", this patch is to
remove the bootsect_helper code.  And also a comment fix.

The other two platforms x86_64 and PC-9800 should also be cleaned up too.
parent 79fde358
...@@ -133,7 +133,7 @@ ramdisk_image: .long 0 # address of loaded ramdisk image ...@@ -133,7 +133,7 @@ ramdisk_image: .long 0 # address of loaded ramdisk image
ramdisk_size: .long 0 # its size in bytes ramdisk_size: .long 0 # its size in bytes
bootsect_kludge: bootsect_kludge:
.word bootsect_helper, SETUPSEG .long 0 # obsolete
heap_end_ptr: .word modelist+1024 # (Header version 0x0201 or later) heap_end_ptr: .word modelist+1024 # (Header version 0x0201 or later)
# space from here (exclusive) down to # space from here (exclusive) down to
...@@ -837,7 +837,7 @@ flush_instr: ...@@ -837,7 +837,7 @@ flush_instr:
subw $DELTA_INITSEG, %si subw $DELTA_INITSEG, %si
shll $4, %esi # Convert to 32-bit pointer shll $4, %esi # Convert to 32-bit pointer
# jump to startup_32 in arch/i386/kernel/head.S # jump to startup_32 in arch/i386/boot/compressed/head.S
# #
# NOTE: For high loaded big kernels we need a # NOTE: For high loaded big kernels we need a
# jmpi 0x100000,__BOOT_CS # jmpi 0x100000,__BOOT_CS
...@@ -872,88 +872,6 @@ default_switch: ...@@ -872,88 +872,6 @@ default_switch:
outb %al, $0x70 outb %al, $0x70
lret lret
# This routine only gets called, if we get loaded by the simple
# bootsect loader _and_ have a bzImage to load.
# Because there is no place left in the 512 bytes of the boot sector,
# we must emigrate to code space here.
bootsect_helper:
cmpw $0, %cs:bootsect_es
jnz bootsect_second
movb $0x20, %cs:type_of_loader
movw %es, %ax
shrw $4, %ax
movb %ah, %cs:bootsect_src_base+2
movw %es, %ax
movw %ax, %cs:bootsect_es
subw $SYSSEG, %ax
lret # nothing else to do for now
bootsect_second:
pushw %cx
pushw %si
pushw %bx
testw %bx, %bx # 64K full?
jne bootsect_ex
movw $0x8000, %cx # full 64K, INT15 moves words
pushw %cs
popw %es
movw $bootsect_gdt, %si
movw $0x8700, %ax
int $0x15
jc bootsect_panic # this, if INT15 fails
movw %cs:bootsect_es, %es # we reset %es to always point
incb %cs:bootsect_dst_base+2 # to 0x10000
bootsect_ex:
movb %cs:bootsect_dst_base+2, %ah
shlb $4, %ah # we now have the number of
# moved frames in %ax
xorb %al, %al
popw %bx
popw %si
popw %cx
lret
bootsect_gdt:
.word 0, 0, 0, 0
.word 0, 0, 0, 0
bootsect_src:
.word 0xffff
bootsect_src_base:
.byte 0x00, 0x00, 0x01 # base = 0x010000
.byte 0x93 # typbyte
.word 0 # limit16,base24 =0
bootsect_dst:
.word 0xffff
bootsect_dst_base:
.byte 0x00, 0x00, 0x10 # base = 0x100000
.byte 0x93 # typbyte
.word 0 # limit16,base24 =0
.word 0, 0, 0, 0 # BIOS CS
.word 0, 0, 0, 0 # BIOS DS
bootsect_es:
.word 0
bootsect_panic:
pushw %cs
popw %ds
cld
leaw bootsect_panic_mess, %si
call prtstr
bootsect_panic_loop:
jmp bootsect_panic_loop
bootsect_panic_mess:
.string "INT15 refuses to access high mem, giving up."
#ifndef CONFIG_X86_VOYAGER #ifndef CONFIG_X86_VOYAGER
# This routine tests whether or not A20 is enabled. If so, it # This routine tests whether or not A20 is enabled. If so, it
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment