1 \ 2 \ Copyright 2005 Sun Microsystems, Inc. All rights reserved. 3 \ Use is subject to license terms. 4 \ 5 \ CDDL HEADER START 6 \ 7 \ The contents of this file are subject to the terms of the 8 \ Common Development and Distribution License, Version 1.0 only 9 \ (the "License"). You may not use this file except in compliance 10 \ with the License. 11 \ 12 \ You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 13 \ or http://www.opensolaris.org/os/licensing. 14 \ See the License for the specific language governing permissions 15 \ and limitations under the License. 16 \ 17 \ When distributing Covered Code, include this CDDL HEADER in each 18 \ file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19 \ If applicable, add the following below this CDDL HEADER, with the 20 \ fields enclosed by brackets "[]" replaced with your own identifying 21 \ information: Portions Copyright [yyyy] [name of copyright owner] 22 \ 23 \ CDDL HEADER END 24 \ 25 26 #pragma ident "%Z%%M% %I% %E% SMI" 27 28 #include <sys/types.h> 29 #include <sys/sunddi.h> 30 #include <sys/zulumod.h> 31 #include <sys/zulu_hat.h> 32 33 zulu_hat 34 zulu_tsb ZULU_HAT_TSB 35 zulu_tsb_size ZULU_HAT_TSB_SZ 36 zulu_ctx ZULU_HAT_CTX 37 38 #ifdef ZULUVM_STATS 39 zuluvm_miss_t 40 idata ZULUVM_IDATA 41 arg ZULUVM_ARG 42 mmu_pa ZULUVM_PAMMU 43 state ZULUVM_STATE 44 intr_num ZULUVM_INTRNUM 45 cancel ZULUVM_ST_TLBCANCEL 46 tlb_miss ZULUVM_ST_MISS 47 pagefault ZULUVM_ST_PGFAULT 48 no_mapping ZULUVM_ST_NOMAP 49 preload ZULUVM_ST_PRELOAD 50 migrate ZULUVM_ST_MIGRATE 51 pagesize ZULUVM_ST_PAGESIZE 52 itlb1miss ZULUVM_ST_ITLB1MISS 53 dtlb1miss ZULUVM_ST_DTLB1MISS 54 itlb2miss ZULUVM_ST_ITLB2MISS 55 dtlb2miss ZULUVM_ST_DTLB2MISS 56 demap_page ZULUVM_ST_DEMAP_PAGE 57 demap_ctx ZULUVM_ST_DEMAP_CTX 58 pfnbuf ZULUVM_PFNBUF 59 pfncnt ZULUVM_PFNCNT 60 61 #else 62 63 zuluvm_miss_t 64 idata ZULUVM_IDATA 65 arg ZULUVM_ARG 66 mmu_pa ZULUVM_PAMMU 67 state ZULUVM_STATE 68 intr_num ZULUVM_INTRNUM 69 pfnbuf ZULUVM_PFNBUF 70 pfncnt ZULUVM_PFNCNT 71 #endif 72 73 \#define ZULUVM_OFFSET(a) (ZULUVM_IDATA + ((a) * ZULUVM_IDATA_INCR)) 74 \#define ZULUVM_ASM_TLB_TTE ZULUVM_OFFSET(ZULUVM_TLB_TTE_IDX) 75 \#define ZULUVM_ASM_TLB_ADDR ZULUVM_OFFSET(ZULUVM_TLB_ADDR_IDX) 76 \#define ZULUVM_ASM_TLB_TYPE ZULUVM_OFFSET(ZULUVM_TLB_TYPE_IDX) 77 \#define ZULUVM_ASM_TLB_ERRCODE ZULUVM_OFFSET(ZULUVM_TLB_ERRCODE_IDX)