/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright (c) 1999 by Sun Microsystems, Inc.
* All rights reserved.
*
* Inter-Domain Network - Xfire specifics.
*/
#ifndef _SYS_IDN_XF_H
#define _SYS_IDN_XF_H
#pragma ident "%Z%%M% %I% %E% SMI"
#include <sys/cpu_sgnblk_defs.h>
#include <sys/idn_sigb.h>
#include <sys/starfire.h>
#ifdef __cplusplus
extern "C" {
#endif
/*
* These address bits fit into PA[17:9].
*/
#define CIC_CONFIG0_BUSMODE(c) \
(((c) >> CIC_CONFIG0_BUSMODE_SHIFT) & CIC_CONFIG0_BUSMODE_MASK)
#define CIC_CONFIG1_SMMASK_BIT(c) \
(((c) >> CIC_CONFIG1_SMMASK_SHIFT) & CIC_CONFIG1_SMMASK_MASK)
/* bd=board, t=type, a=addr, bs=bus */
<< CSR_BOARD_SHIFT) \
| ((u_longlong_t)((t) & CSR_TYPE_MASK) \
<< CSR_TYPE_SHIFT) \
| ((u_longlong_t)((a) & CIC_CSR_ADDR_MASK) \
<< CIC_CSR_ADDR_SHIFT) \
<< CSR_BUS_SHIFT))
/*
* Macro to calculate address of CIC prep buffer
* that resides in PC.
* This macro really belongs in <sys/starfire.h>
*/
(STARFIRE_BRD_TO_PSI(bb) | \
((uint64_t)(p) << STARFIRE_UPS_MID_SHIFT) | \
/*
* ---------------------------------------------------------------------
*/
int *nmcadr);
#ifdef __cplusplus
}
#endif
#endif /* _SYS_IDN_XF_H */