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