Annotation of sys/dev/pci/if_lmc_types.h, Revision 1.1.1.1
1.1 nbrk 1: /* $OpenBSD: if_lmc_types.h,v 1.5 2005/11/14 14:56:02 mickey Exp $ */
2: /* $NetBSD: if_lmc_types.h,v 1.2 1999/03/25 04:09:33 explorer Exp $ */
3:
4: /*-
5: * Copyright (c) 1997-1999 LAN Media Corporation (LMC)
6: * All rights reserved. www.lanmedia.com
7: *
8: * This code is written by Michael Graff <graff@vix.com> for LMC.
9: * The code is derived from permitted modifications to software created
10: * by Matt Thomas (matt@3am-software.com).
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
18: * copyright notice, this list of conditions and the following disclaimer
19: * in the documentation and/or other materials provided with the
20: * distribution.
21: * 3. All marketing or advertising materials mentioning features or
22: * use of this software must display the following acknowledgement:
23: * This product includes software developed by LAN Media Corporation
24: * and its contributors.
25: * 4. Neither the name of LAN Media Corporation nor the names of its
26: * contributors may be used to endorse or promote products derived
27: * from this software without specific prior written permission.
28: *
29: * THIS SOFTWARE IS PROVIDED BY LAN MEDIA CORPORATION AND CONTRIBUTORS
30: * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
31: * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
32: * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
33: * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
34: * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
35: * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
36: * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
37: * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
38: * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
39: * THE POSSIBILITY OF SUCH DAMAGE.
40: */
41:
42: #ifndef LMC_TYPES_H
43: #define LMC_TYPES_H
44:
45: #if defined(_KERNEL)
46:
47: /*
48: * LMC has weird endianness issues, so we can't use the tulip_desc_t.
49: */
50: typedef struct {
51: u_int32_t d_status;
52: u_int32_t d_ctl;
53: u_int32_t d_addr1;
54: u_int32_t d_addr2;
55: } lmc_desc_t;
56:
57: #define LMC_CTL_FLGS(x) (((x)>>22)&0x3ff)
58: #define LMC_CTL_LEN2(x) (((x)>>11)&0x7ff)
59: #define LMC_CTL_LEN1(x) ((x)&0x7ff)
60: #define LMC_CTL(f,l1,l2) ((((f)&0x3ff)<<22)|(((l2)&0x7ff)<<11)|((l1)&0x7ff))
61:
62: typedef bus_size_t lmc_csrptr_t;
63:
64: #define lmc_intrfunc_t int
65:
66: typedef struct lmc___softc lmc_softc_t;
67: typedef struct lmc___media lmc_media_t;
68: typedef struct lmc_ringinfo lmc_ringinfo_t;
69:
70: #endif /* _KERNEL */
71:
72: typedef struct lmc___ctl lmc_ctl_t;
73:
74: #endif /* LMC_TYPES_H */
CVSweb