1 /*
2 * include/asm-s390/chandev.h
3 *
4 * S390 version
5 * Copyright (C) 2000 IBM Deutschland Entwicklung GmbH, IBM Corporation
6 * Author(s): Denis Joseph Barrow (djbarrow@de.ibm.com,barrow_dj@yahoo.com)
7 *
8 */
9
10 #include <asm/types.h>
11
12 typedef enum
13 {
14 none=0,
15 ctc=1,
16 escon=2,
17 lcs=4,
18 osad=8,
19 claw=16,
20 } chandev_type;
21
22 typedef struct chandev_model_info chandev_model_info;
23
24 struct chandev_model_info
25 {
26 struct chandev_model_info *next;
27 chandev_type chan_type;
28 u16 cu_type;
29 u8 cu_model;
30 u8 max_port_no;
31 };
32
33 typedef struct chandev chandev;
34 struct chandev
35 {
36 struct chandev *next;
37 chandev_model_info *model_info;
38 u16 devno;
39 int irq;
40 };
41
42 typedef struct chandev_noauto_range chandev_noauto_range;
43 struct chandev_noauto_range
44 {
45 struct chandev_noauto_range *next;
46 u16 lo_devno;
47 u16 hi_devno;
48 };
49
50 typedef struct chandev_force chandev_force;
51 struct chandev_force
52 {
53 struct chandev_force *next;
54 chandev_type chan_type;
55 s32 devif_num; /* -1 don't care e.g. tr0 implies 0 */
56 u16 read_devno;
57 u16 write_devno;
58 s16 port_no; /* where available e.g. lcs,-1 don't care */
59 u8 do_ip_checksumming;
60 u8 use_hw_stats; /* where available e.g. lcs */
61 };
62
63
64
65 typedef struct
66 {
67 s32 devif_num; /* -1 don't care e.g. tr0 implies 0 */
68 int read_irq;
69 int write_irq;
70 s16 forced_port_no; /* -1 don't care */
71 u8 hint_port_no;
72 u8 max_port_no;
73 u8 do_ip_checksumming;
74 u8 use_hw_stats; /* where available e.g. lcs */
75 } chandev_probeinfo;
76
77
78 typedef int (*chandev_probefunc)(chandev_probeinfo *probeinfo);
79
80
81 typedef struct chandev_probelist chandev_probelist;
82 struct chandev_probelist
83 {
84 struct chandev_probelist *next;
85 chandev_probefunc probefunc;
86 chandev_type chan_type;
87 };
88
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.