Print this page
restore sparc comments
de-linting of .s files
*** 23,37 ****
* Use is subject to license terms.
*
* Assembly code support for the Cheetah+ module
*/
- #pragma ident "%Z%%M% %I% %E% SMI"
-
- #if !defined(lint)
#include "assym.h"
- #endif /* lint */
#include <sys/asm_linkage.h>
#include <sys/mmu.h>
#include <vm/hat_sfmmu.h>
#include <sys/machparam.h>
--- 23,33 ----
*** 53,64 ****
#ifdef TRAPTRACE
#include <sys/traptrace.h>
#endif /* TRAPTRACE */
- #if !defined(lint)
-
/* BEGIN CSTYLED */
/*
* Cheetah+ version to reflush an Ecache line by index.
*
--- 49,58 ----
*** 145,172 ****
and physaddr, l2_idx_out, l2_idx_out; \
set PN_L2_IDX_DISP_FLUSH, scr3; \
or l2_idx_out, scr3, l2_idx_out; \
PN_ECACHE_REFLUSH_LINE(l2_idx_out, l3_idx_out, scr3, scr4)
- #endif /* !lint */
-
/*
* Fast ECC error at TL>0 handler
* We get here via trap 70 at TL>0->Software trap 0 at TL>0. We enter
* this routine with %g1 and %g2 already saved in %tpc, %tnpc and %tstate.
* For a complete description of the Fast ECC at TL>0 handling see the
* comment block "Cheetah/Cheetah+ Fast ECC at TL>0 trap strategy" in
* us3_common_asm.s
*/
- #if defined(lint)
- void
- fast_ecc_tl1_err(void)
- {}
-
- #else /* lint */
-
.section ".text"
.align 64
ENTRY_NP(fast_ecc_tl1_err)
/*
--- 139,157 ----
*** 411,424 ****
*/
CH_ERR_TL1_PANIC_EXIT(fecc_tl1_err);
SET_SIZE(fast_ecc_tl1_err)
- #endif /* lint */
-
- #if defined(lint)
/*
* scrubphys - Pass in the aligned physical memory address
* that you want to scrub, along with the ecache set size.
*
* 1) Displacement flush the E$ line corresponding to %addr.
--- 396,406 ----
*** 437,452 ****
* as modified, but then we found out that for spitfire, if it misses in the
* E$ it will probably install as an M, but if it hits in the E$, then it
* will stay E, if the store doesn't happen. So the first displacement flush
* should ensure that the CAS will miss in the E$. Arrgh.
*/
- /* ARGSUSED */
- void
- scrubphys(uint64_t paddr, int ecache_set_size)
- {}
-
- #else /* lint */
ENTRY(scrubphys)
rdpr %pstate, %o4
andn %o4, PSTATE_IE | PSTATE_AM, %o5
wrpr %o5, %g0, %pstate ! clear IE, AM bits
--- 419,428 ----
*** 468,481 ****
retl
membar #Sync ! move the data out of the load buffer
SET_SIZE(scrubphys)
- #endif /* lint */
-
- #if defined(lint)
/*
* clearphys - Pass in the physical memory address of the checkblock
* that you want to push out, cleared with a recognizable pattern,
* from the ecache.
*
--- 444,454 ----
*** 482,498 ****
* To ensure that the ecc gets recalculated after the bad data is cleared,
* we must write out enough data to fill the w$ line (64 bytes). So we read
* in an entire ecache subblock's worth of data, and write it back out.
* Then we overwrite the 16 bytes of bad data with the pattern.
*/
- /* ARGSUSED */
- void
- clearphys(uint64_t paddr, int ecache_set_size, int ecache_linesize)
- {
- }
-
- #else /* lint */
ENTRY(clearphys)
/* turn off IE, AM bits */
rdpr %pstate, %o4
andn %o4, PSTATE_IE | PSTATE_AM, %o5
wrpr %o5, %g0, %pstate
--- 455,464 ----
*** 546,559 ****
/* return and re-enable IE and AM */
retl
wrpr %g0, %o4, %pstate
SET_SIZE(clearphys)
- #endif /* lint */
-
- #if defined(lint)
/*
* Cheetah+ Ecache displacement flush the specified line from the E$
*
* For Panther, this means flushing the specified line from both the
* L2 cache and L3 cache.
--- 512,522 ----
*** 560,575 ****
*
* Register usage:
* %o0 - 64 bit physical address for flushing
* %o1 - Ecache set size
*/
- /*ARGSUSED*/
- void
- ecache_flush_line(uint64_t flushaddr, int ec_set_size)
- {
- }
- #else /* lint */
ENTRY(ecache_flush_line)
GET_CPU_IMPL(%o3) ! Panther Ecache is flushed differently
cmp %o3, PANTHER_IMPL
bne ecache_flush_line_1
--- 523,532 ----
*** 582,613 ****
ECACHE_FLUSH_LINE(%o0, %o1, %o2, %o3)
ecache_flush_line_2:
retl
nop
SET_SIZE(ecache_flush_line)
- #endif /* lint */
- #if defined(lint)
- void
- set_afsr_ext(uint64_t afsr_ext)
- {
- afsr_ext = afsr_ext;
- }
- #else /* lint */
-
ENTRY(set_afsr_ext)
set ASI_AFSR_EXT_VA, %o1
stxa %o0, [%o1]ASI_AFSR ! afsr_ext reg
membar #Sync
retl
nop
SET_SIZE(set_afsr_ext)
- #endif /* lint */
-
- #if defined(lint)
/*
* The CPU jumps here from the MMU exception handler if an ITLB parity
* error is detected and we are running on Panther.
*
* In this routine we collect diagnostic information and write it to our
--- 539,558 ----
*** 624,639 ****
* In the TL0 handler (cpu_tlb_parity_error) we will compare those two
* parameters to the data contained in the logout structure in order to
* determine whether the logout information is valid for this particular
* error or not.
*/
- void
- itlb_parity_trap(void)
- {}
-
- #else /* lint */
-
ENTRY_NP(itlb_parity_trap)
/*
* Collect important information about the trap which will be
* used as a parameter to the TL0 handler.
*/
--- 569,578 ----
*** 752,764 ****
movl %icc, PIL_14, %g4
ba sys_trap
nop
SET_SIZE(itlb_parity_trap)
- #endif /* lint */
-
- #if defined(lint)
/*
* The CPU jumps here from the MMU exception handler if a DTLB parity
* error is detected and we are running on Panther.
*
* In this routine we collect diagnostic information and write it to our
--- 691,700 ----
*** 775,790 ****
* In the TL0 handler (cpu_tlb_parity_error) we will compare those two
* parameters to the data contained in the logout structure in order to
* determine whether the logout information is valid for this particular
* error or not.
*/
- void
- dtlb_parity_trap(void)
- {}
-
- #else /* lint */
-
ENTRY_NP(dtlb_parity_trap)
/*
* Collect important information about the trap which will be
* used as a parameter to the TL0 handler.
*/
--- 711,720 ----
*** 965,1013 ****
movl %icc, PIL_14, %g4
ba sys_trap
nop
SET_SIZE(dtlb_parity_trap)
- #endif /* lint */
-
- #if defined(lint)
/*
* Calculates the Panther TLB index based on a virtual address and page size
*
* Register usage:
* %o0 - virtual address whose index we want
* %o1 - Page Size of the TLB in question as encoded in the
* ASI_[D|I]MMU_TAG_ACCESS_EXT register.
*/
- uint64_t
- pn_get_tlb_index(uint64_t va, uint64_t pg_sz)
- {
- return ((va + pg_sz)-(va + pg_sz));
- }
- #else /* lint */
ENTRY(pn_get_tlb_index)
PN_GET_TLB_INDEX(%o0, %o1)
retl
nop
SET_SIZE(pn_get_tlb_index)
- #endif /* lint */
- #if defined(lint)
/*
* For Panther CPUs we need to flush the IPB after any I$ or D$
* parity errors are detected.
*/
- void
- flush_ipb(void)
- { return; }
-
- #else /* lint */
-
ENTRY(flush_ipb)
clr %o0
flush_ipb_1:
stxa %g0, [%o0]ASI_IPB_TAG
--- 895,926 ----
*** 1020,1027 ****
flush %o0
retl
nop
SET_SIZE(flush_ipb)
- #endif /* lint */
-
--- 933,938 ----