From: Greg B. <gn...@al...> - 2000-07-22 06:32:07
|
NIIBE Yutaka wrote: > > Following changes is needed when I use zImage with BIOS (no GDB debug > feature enabled). > > -------------------------- > 2000-07-22 NIIBE Yutaka <gn...@m1...> > > * arch/sh/kernel/entry.S (debug_trap, debug_kernel): > #ifdef/#endif change, this is needed for SH BIOS call too. > > * arch/sh/boot/compressed/head.S (init_sr): Set Block=0, > so that we can use BIOS call. > > Index: arch/sh/boot/compressed/head.S > =================================================================== > RCS file: /cvsroot/linuxsh/kernel/arch/sh/boot/compressed/head.S,v > retrieving revision 1.2 > diff -u -r1.2 head.S > --- arch/sh/boot/compressed/head.S 2000/05/22 09:41:30 1.2 > +++ arch/sh/boot/compressed/head.S 2000/07/22 04:15:25 > @@ -10,6 +10,9 @@ > > .global startup > startup: > + /* Load initial status register */ > + mov.l init_sr, r1 > + ldc r1, sr > > /* First clear BSS */ > mov.l end_addr, r1 > @@ -20,10 +23,6 @@ > cmp/eq r1,r2 > bf l1 > > - /* Load initial status register */ > - mov.l init_sr, r1 > - ldc r1, sr > - > /* Set the initial pointer. */ > mov.l init_stack_addr, r0 > mov.l @r0, r15 > @@ -44,7 +43,7 @@ > end_addr: > .long _end > init_sr: > - .long 0x50000000 /* Privileged mode, Bank=0, Block=1, I3-I0=0 */ > + .long 0x40000000 /* Privileged mode, Bank=0, Block=0, I3-I0=0 */ Yep, obvious really, surprised it worked at all before ;-) > =================================================================== > RCS file: /cvsroot/linuxsh/kernel/arch/sh/kernel/entry.S,v > retrieving revision 1.15 > diff -u -r1.15 entry.S > --- arch/sh/kernel/entry.S 2000/07/21 18:06:52 1.15 > +++ arch/sh/kernel/entry.S 2000/07/22 04:15:25 > @@ -182,7 +182,7 @@ > 1: .long SYMBOL_NAME(do_page_fault) > 2: .long MMU_TEA > > -#ifdef CONFIG_DEBUG_KERNEL_WITH_GDB_STUB > +#if defined(CONFIG_DEBUG_KERNEL_WITH_GDB_STUB) || defined(CONFIG_SH_STANDARD_BIOS) > .align 2 > /* Unwind the stack and jmp to the debug entry */ > debug_kernel: > @@ -224,7 +224,7 @@ > > .align 2 > debug_trap: > -#ifdef CONFIG_DEBUG_KERNEL_WITH_GDB_STUB > +#if defined(CONFIG_DEBUG_KERNEL_WITH_GDB_STUB) || defined(CONFIG_SH_STANDARD_BIOS) > mov #SR, $r0 Oops, my mistake, I should have changed these to be #ifdef CONFIG_SH_STANDARD_BIOS which handles both cases (as CONFIG_DEBUG_KERNEL_WITH_GDB_STUB is not supposed to be defined unless CONFIG_SH_STANDARD_BIOS is defined). Greg. -- Fight spam http://www.caube.org.au/ If it's a choice between being a paranoid, hyper-suspicious global village idiot, or a gullible, mega-trusting sheep, I don't look good in mint sauce. - jd, slashdot, 11Feb2000. |