upa.h (93684) | upa.h (203838) |
---|---|
1/*- 2 * Copyright (c) 2001 by Thomas Moestl <tmm@FreeBSD.org>. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 8 unchanged lines hidden (view full) --- 17 * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 18 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 19 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 20 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 21 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 22 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 23 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * | 1/*- 2 * Copyright (c) 2001 by Thomas Moestl <tmm@FreeBSD.org>. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 8 unchanged lines hidden (view full) --- 17 * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 18 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 19 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 20 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 21 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 22 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 23 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * |
25 * $FreeBSD: head/sys/sparc64/include/upa.h 93684 2002-04-02 17:38:52Z tmm $ | 25 * $FreeBSD: head/sys/sparc64/include/upa.h 203838 2010-02-13 16:52:33Z marius $ |
26 */ 27 28#ifndef _MACHINE_UPA_H_ | 26 */ 27 28#ifndef _MACHINE_UPA_H_ |
29#define _MACHINE_UPA_H_ | 29#define _MACHINE_UPA_H_ |
30 31#define UPA_MEMSTART 0x1c000000000UL 32#define UPA_MEMEND 0x1ffffffffffUL 33 34#define UPA_CR_MID_SHIFT (17) 35#define UPA_CR_MID_SIZE (5) | 30 31#define UPA_MEMSTART 0x1c000000000UL 32#define UPA_MEMEND 0x1ffffffffffUL 33 34#define UPA_CR_MID_SHIFT (17) 35#define UPA_CR_MID_SIZE (5) |
36#define UPA_CR_MID_MASK \ | 36#define UPA_CR_MID_MASK \ |
37 (((1 << UPA_CR_MID_SIZE) - 1) << UPA_CR_MID_SHIFT) 38 39#define UPA_CR_GET_MID(cr) ((cr & UPA_CR_MID_MASK) >> UPA_CR_MID_SHIFT) 40 | 37 (((1 << UPA_CR_MID_SIZE) - 1) << UPA_CR_MID_SHIFT) 38 39#define UPA_CR_GET_MID(cr) ((cr & UPA_CR_MID_MASK) >> UPA_CR_MID_SHIFT) 40 |
41#ifdef LOCORE 42 43#define UPA_GET_MID(r1) \ 44 ldxa [%g0] ASI_UPA_CONFIG_REG, r1 ; \ 45 srlx r1, UPA_CR_MID_SHIFT, r1 ; \ 46 and r1, (1 << UPA_CR_MID_SIZE) - 1, r1 47 48#endif 49 | |
50#endif /* _MACHINE_UPA_H_ */ | 41#endif /* _MACHINE_UPA_H_ */ |