ncr53c500hw.h revision 302408
1/* $FreeBSD: stable/11/sys/dev/ncv/ncr53c500hw.h 240325 2012-09-10 18:49:49Z jhb $ */ 2/* $NecBSD: ncr53c500hw.h,v 1.6.18.1 2001/06/08 06:27:44 honda Exp $ */ 3/* $NetBSD$ */ 4 5/*- 6 * [NetBSD for NEC PC-98 series] 7 * Copyright (c) 1996, 1997, 1998 8 * NetBSD/pc98 porting staff. All rights reserved. 9 * Copyright (c) 1996, 1997, 1998 10 * Naofumi HONDA. All rights reserved. 11 * 12 * Redistribution and use in source and binary forms, with or without 13 * modification, are permitted provided that the following conditions 14 * are met: 15 * 1. Redistributions of source code must retain the above copyright 16 * notice, this list of conditions and the following disclaimer. 17 * 2. Redistributions in binary form must reproduce the above copyright 18 * notice, this list of conditions and the following disclaimer in the 19 * documentation and/or other materials provided with the distribution. 20 * 3. The name of the author may not be used to endorse or promote products 21 * derived from this software without specific prior written permission. 22 * 23 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 24 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 25 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, 27 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 28 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 29 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 31 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 32 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 * POSSIBILITY OF SUCH DAMAGE. 34 */ 35 36#ifndef __NCR53C500HW_H_ 37#define __NCR53C500HW_H_ 38 39#define NCV_HOSTID 7 40#define NCV_NTARGETS 8 41#define NCV_NLUNS 8 42 43struct ncv_hw { 44 /* configuration images */ 45 u_int8_t hw_cfg1; 46 u_int8_t hw_cfg2; 47 u_int8_t hw_cfg3; 48 u_int8_t hw_cfg4; 49 u_int8_t hw_cfg5; 50 51 /* synch */ 52 u_int8_t hw_clk; 53 u_int8_t hw_mperiod; 54 u_int8_t hw_moffset; 55 56 /* cfg3 quirks */ 57 u_int8_t hw_cfg3_fscsi; 58 u_int8_t hw_cfg3_fclk; 59}; 60 61/* dvcfg */ 62#define NCV_C5IMG(flags) ((DVCFG_MAJOR(flags) >> 8) & 0xff) 63#define NCV_CLKFACTOR(flags) (DVCFG_MAJOR(flags) & 0x0f) 64#define NCVHWCFG_MAX10M 0x01 65#define NCVHWCFG_SCSI1 0x02 66#define NCVHWCFG_SLOW 0x04 67#define NCVHWCFG_FIFOBUG 0x08 68#define NCV_SPECIAL(flags) ((DVCFG_MAJOR(flags) >> 4) & 0x0f) 69#endif /* !__NCR53C500HW_H_ */ 70