X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/a3d08fcd5120d2aa8303b6349ca8b14e3f284af3..3a60a9f5b85abb8c2cf24e1926c5c7b3f608a5e2:/osfmk/ppc/aligned_data.s diff --git a/osfmk/ppc/aligned_data.s b/osfmk/ppc/aligned_data.s index 217edea7b..4f703ebba 100644 --- a/osfmk/ppc/aligned_data.s +++ b/osfmk/ppc/aligned_data.s @@ -43,27 +43,25 @@ #include -#include #include #include #include #include #include -; -; NOTE: We need this only if PREEMPTSTACK is set to non-zero in hw_lock. -; Make sure they are set to the same thing -; -#define PREEMPTSTACK 0 - .data /* 4096-byte aligned areas */ - .globl EXT(per_proc_info) + .globl EXT(PerProcTable) + .align 12 +EXT(PerProcTable): ; Per processor table + .space (ppeSize*MAX_CPUS),0 ; (filled with 0s) + + .globl EXT(BootProcInfo) .align 12 -EXT(per_proc_info): ; Per processor data area - .space (ppSize*NCPUS),0 ; (filled with 0s) +EXT(BootProcInfo): ; Per processor data area + .space ppSize,0 ; (filled with 0s) /* 512-byte aligned areas */ @@ -85,19 +83,6 @@ EXT(GratefulDebWork): ; Enough for 2 rows of 8 chars of 16-pixel wide 32- debstash: .set .,.+256 -#if PREEMPTSTACK - -; -; NOTE: We need this only if PREEMPTSTACK is set to non-zero in hw_lock. -; - - .globl EXT(DBGpreempt) ; preemption debug stack - .align 8 -EXT(DBGpreempt): - .set .,.+(NCPUS*PREEMPTSTACK*16) -#endif - - /* 128-byte aligned areas */ .globl EXT(mapCtl) @@ -116,18 +101,6 @@ fwdisplock: EXT(free_mappings): .long 0 - .globl EXT(syncClkSpot) - .align 7 -EXT(syncClkSpot): - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .long 0 - .globl EXT(NMIss) .align 7 EXT(NMIss): @@ -196,39 +169,35 @@ EXT(dbspecrs): .set .,.+(336*4) /* - * Interrupt and debug stacks go here + * Boot processor Interrupt and debug stacks go here. */ - + + /* in the __HIB section since the hibernate restore code uses this stack. */ + .section __HIB, __data + .align PPC_PGSHIFT - .globl EXT(FixedStackStart) -EXT(FixedStackStart): .globl EXT(intstack) EXT(intstack): - .set .,.+INTSTACK_SIZE*NCPUS - + .globl EXT(gIOHibernateRestoreStack) +EXT(gIOHibernateRestoreStack): + + .set .,.+INTSTACK_SIZE + + .globl EXT(gIOHibernateRestoreStackEnd) +EXT(gIOHibernateRestoreStackEnd): + + /* back to the regular __DATA section. */ + + .section __DATA, __data + .align PPC_PGSHIFT + /* Debugger stack - used by the debugger if present */ -/* NOTE!!! Keep the debugger stack right after the interrupt stack */ .globl EXT(debstack) EXT(debstack): - .set ., .+KERNEL_STACK_SIZE*NCPUS - - .globl EXT(FixedStackEnd) -EXT(FixedStackEnd): - - .align ALIGN - .globl EXT(intstack_top_ss) -EXT(intstack_top_ss): - .long EXT(intstack)+INTSTACK_SIZE-FM_SIZE /* intstack_top_ss points to the top of interrupt stack */ - - .align ALIGN - .globl EXT(debstack_top_ss) -EXT(debstack_top_ss): + .set ., .+KERNEL_STACK_SIZE - .long EXT(debstack)+KERNEL_STACK_SIZE-FM_SIZE /* debstack_top_ss points to the top of debug stack */ + .section __DATA, __data - .globl EXT(debstackptr) -EXT(debstackptr): - .long EXT(debstack)+KERNEL_STACK_SIZE-FM_SIZE