iommureg.h (167308) | iommureg.h (171730) |
---|---|
1/*- 2 * Copyright (c) 1992, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This software was developed by the Computer Systems Engineering group 6 * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and 7 * contributed to Berkeley. 8 * --- 19 unchanged lines hidden (view full) --- 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * from: @(#)sbusreg.h 8.1 (Berkeley) 6/11/93 34 * from: NetBSD: iommureg.h,v 1.6 2001/07/20 00:07:13 eeh Exp 35 * | 1/*- 2 * Copyright (c) 1992, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This software was developed by the Computer Systems Engineering group 6 * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and 7 * contributed to Berkeley. 8 * --- 19 unchanged lines hidden (view full) --- 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * from: @(#)sbusreg.h 8.1 (Berkeley) 6/11/93 34 * from: NetBSD: iommureg.h,v 1.6 2001/07/20 00:07:13 eeh Exp 35 * |
36 * $FreeBSD: head/sys/sparc64/include/iommureg.h 167308 2007-03-07 21:13:51Z marius $ | 36 * $FreeBSD: head/sys/sparc64/include/iommureg.h 171730 2007-08-05 11:56:44Z marius $ |
37 */ 38 39#ifndef _MACHINE_IOMMUREG_H_ 40#define _MACHINE_IOMMUREG_H_ 41 42/* 43 * UltraSPARC IOMMU registers, common to both the PCI and SBus 44 * controllers. --- 14 unchanged lines hidden (view full) --- 59#define ISD_ERROR_DIAG 0x0400 /* streaming buffer error status diag 0..127 */ 60#define ISD_PG_TAG_DIAG 0x0800 /* streaming buffer page tag diag 0..15 */ 61#define ISD_LN_TAG_DIAG 0x0900 /* streaming buffer line tag diag 0..15 */ 62 63/* streaming buffer control register */ 64#define STRBUF_EN 0x0000000000000001UL 65#define STRBUF_D 0x0000000000000002UL 66 | 37 */ 38 39#ifndef _MACHINE_IOMMUREG_H_ 40#define _MACHINE_IOMMUREG_H_ 41 42/* 43 * UltraSPARC IOMMU registers, common to both the PCI and SBus 44 * controllers. --- 14 unchanged lines hidden (view full) --- 59#define ISD_ERROR_DIAG 0x0400 /* streaming buffer error status diag 0..127 */ 60#define ISD_PG_TAG_DIAG 0x0800 /* streaming buffer page tag diag 0..15 */ 61#define ISD_LN_TAG_DIAG 0x0900 /* streaming buffer line tag diag 0..15 */ 62 63/* streaming buffer control register */ 64#define STRBUF_EN 0x0000000000000001UL 65#define STRBUF_D 0x0000000000000002UL 66 |
67#define IOMMU_BITS 34 68#define IOMMU_MAXADDR ((1UL << IOMMU_BITS) - 1) | 67#define IOMMU_MAXADDR(bits) ((1UL << (bits)) - 1) |
69 70/* 71 * control register bits 72 */ 73/* Nummber of entries in IOTSB */ 74#define IOMMUCR_TSBSZ_SHIFT 16 75#define IOMMUCR_TSB1K 0x0000000000000000UL 76#define IOMMUCR_TSB2K 0x0000000000010000UL --- 39 unchanged lines hidden (view full) --- 116/* 8K or 64K page? */ 117#define IOTTE_64K 0x2000000000000000UL 118#define IOTTE_8K 0x0000000000000000UL 119/* Is page streamable? */ 120#define IOTTE_STREAM 0x1000000000000000UL 121/* Accesses to same bus segment? */ 122#define IOTTE_LOCAL 0x0800000000000000UL 123/* Let's assume this is correct */ | 68 69/* 70 * control register bits 71 */ 72/* Nummber of entries in IOTSB */ 73#define IOMMUCR_TSBSZ_SHIFT 16 74#define IOMMUCR_TSB1K 0x0000000000000000UL 75#define IOMMUCR_TSB2K 0x0000000000010000UL --- 39 unchanged lines hidden (view full) --- 115/* 8K or 64K page? */ 116#define IOTTE_64K 0x2000000000000000UL 117#define IOTTE_8K 0x0000000000000000UL 118/* Is page streamable? */ 119#define IOTTE_STREAM 0x1000000000000000UL 120/* Accesses to same bus segment? */ 121#define IOTTE_LOCAL 0x0800000000000000UL 122/* Let's assume this is correct */ |
124#define IOTTE_PAMASK 0x000001ffffffe000UL | 123#define IOTTE_PAMASK 0x000007ffffffe000UL |
125/* Accesses to cacheable space */ 126#define IOTTE_C 0x0000000000000010UL 127/* Writeable */ 128#define IOTTE_W 0x0000000000000002UL 129 130/* log2 of the IOMMU TTE size. */ 131#define IOTTE_SHIFT 3 132 --- 48 unchanged lines hidden --- | 124/* Accesses to cacheable space */ 125#define IOTTE_C 0x0000000000000010UL 126/* Writeable */ 127#define IOTTE_W 0x0000000000000002UL 128 129/* log2 of the IOMMU TTE size. */ 130#define IOTTE_SHIFT 3 131 --- 48 unchanged lines hidden --- |