1 /* $OpenBSD: starfire.h,v 1.1 2008/03/16 22:18:53 kettenis Exp $ */ 2 3 /* 4 * Copyright (c) 2008 Mark Kettenis 5 * 6 * Permission to use, copy, modify, and distribute this software for any 7 * purpose with or without fee is hereby granted, provided that the above 8 * copyright notice and this permission notice appear in all copies. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17 */ 18 19 /* 20 * Starfire-specific definitions. 21 */ 22 23 #define STARFIRE_IO_BASE 0x10000000000ULL 24 25 #define STARFIRE_UPS_MID_SHIFT 33 26 #define STARFIRE_UPS_BRD_SHIFT 36 27 #define STARFIRE_UPS_BUS_SHIFT 6 28 29 #define STARFIRE_PSI_BASE 0x100f8000000ULL 30 #define STARFIRE_PSI_PCREG_OFF 0x4000000ULL 31 32 #define STARFIRE_PC_PORT_ID 0x0000d0UL 33 #define STARFIRE_PC_INT_MAP 0x000200UL 34 35 #define STARFIRE_UPAID2HWMID(upaid) \ 36 (((upaid & 0x3c) << 1) | ((upaid & 0x40) >> 4) | (upaid & 0x3)) 37 38 #define STARFIRE_UPAID2UPS(upaid) \ 39 (((u_int64_t)STARFIRE_UPAID2HWMID(upaid) << \ 40 STARFIRE_UPS_MID_SHIFT) | STARFIRE_IO_BASE) 41 42 void starfire_pc_ittrans_init(int); 43