* [PATCH] Remove bootsect_helper and A comment fix (III)
@ 2004-04-22 15:08 Coywolf Qi Hunt
2004-05-05 8:57 ` [PATCH] Remove bootsect_helper on x86_64 and pc98 Coywolf Qi Hunt
0 siblings, 1 reply; 2+ messages in thread
From: Coywolf Qi Hunt @ 2004-04-22 15:08 UTC (permalink / raw)
To: hpa, davej; +Cc: Linux-Kernel, kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 335 bytes --]
Hello,
Since "Direct booting from floppy is no longer supported", this patch is
to remove the bootsect_helper code. And also a comment fix.
Wish my patch is in correct format this time. The other two platforms
x86_64 and PC-9800 should also be cleaned up too.
--
Coywolf Qi Hunt
Admin of http://GreatCN.org and http://LoveCN.org
[-- Attachment #2: patch-040422a.diff --]
[-- Type: text/plain, Size: 2503 bytes --]
--- arch/i386/boot/setup.S.orig Sat Mar 6 23:49:33 2004
+++ arch/i386/boot/setup.S Sun Mar 7 04:38:08 2004
@@ -133,7 +133,7 @@
ramdisk_size: .long 0 # its size in bytes
bootsect_kludge:
- .word bootsect_helper, SETUPSEG
+ .long 0 # obsolete
heap_end_ptr: .word modelist+1024 # (Header version 0x0201 or later)
# space from here (exclusive) down to
@@ -837,7 +837,7 @@
subw $DELTA_INITSEG, %si
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
# jmpi 0x100000,__BOOT_CS
@@ -871,88 +871,6 @@
# sequence
outb %al, $0x70
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
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH] Remove bootsect_helper on x86_64 and pc98
2004-04-22 15:08 [PATCH] Remove bootsect_helper and A comment fix (III) Coywolf Qi Hunt
@ 2004-05-05 8:57 ` Coywolf Qi Hunt
0 siblings, 0 replies; 2+ messages in thread
From: Coywolf Qi Hunt @ 2004-05-05 8:57 UTC (permalink / raw)
To: Linux-Kernel; +Cc: akpm
[-- Attachment #1: Type: text/plain, Size: 359 bytes --]
Coywolf Qi Hunt wrote:
> 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.
The same patches for x86_64 and pc98 enclosed.
--
Coywolf Qi Hunt
Admin of http://GreatCN.org and http://LoveCN.org
[-- Attachment #2: remove-bootsect_helper-x86_64.patch --]
[-- Type: text/plain, Size: 2292 bytes --]
--- linux-2.6.5/arch/x86_64/boot/setup.S Mon Mar 8 10:30:36 2004
+++ linux/arch/x86_64/boot/setup.S Mon May 3 09:31:58 2004
@@ -132,7 +132,7 @@
ramdisk_size: .long 0 # its size in bytes
bootsect_kludge:
- .word bootsect_helper, SETUPSEG
+ .long 0 # obsolete
heap_end_ptr: .word modelist+1024 # (Header version 0x0201 or later)
# space from here (exclusive) down to
@@ -757,87 +757,6 @@
outb %al, $0x70
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."
# This routine checks that the keyboard command queue is empty
# (after emptying the output buffers)
[-- Attachment #3: remove-bootsect_helper-pc98.patch --]
[-- Type: text/plain, Size: 2407 bytes --]
--- linux-2.6.5/arch/i386/boot98/setup.S Wed Feb 18 11:57:15 2004
+++ linux/arch/i386/boot98/setup.S Mon May 3 09:39:29 2004
@@ -146,7 +146,7 @@
ramdisk_size: .long 0 # its size in bytes
bootsect_kludge:
- .word bootsect_helper, SETUPSEG
+ .long 0 # obsolete
heap_end_ptr: .word modelist+1024 # (Header version 0x0201 or later)
# space from here (exclusive) down to
@@ -691,91 +691,6 @@
# sequence
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 %bx
- pushw %cx
- pushw %si
- pushw %di
- testw %bp, %bp # 64K full ?
- jne bootsect_ex
-
- xorw %cx, %cx # zero means full 64K
- pushw %cs
- popw %es
- movw $bootsect_gdt, %bx
- xorw %si, %si # source address
- xorw %di, %di # destination address
- movb $0x90, %ah
- int $0x1f
- jc bootsect_panic # this, if INT1F 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 %di
- popw %si
- popw %cx
- popw %bx
- 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 "INT1F refuses to access high mem, giving up."
# This routine prints one character (in %al) on console.
# PC-9800 doesn't have BIOS-function to do it like IBM PC's INT 10h - 0Eh,
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-05-05 8:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-04-22 15:08 [PATCH] Remove bootsect_helper and A comment fix (III) Coywolf Qi Hunt
2004-05-05 8:57 ` [PATCH] Remove bootsect_helper on x86_64 and pc98 Coywolf Qi Hunt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox