Modules/UDI - NSR layer and fixes to enumeration
[tpg/acess2.git] / KernelLand / Modules / Interfaces / UDI / udi_lib / udi_nic.c
1 /**
2  * \file physio.c
3  * \author John Hodge (thePowersGang)
4  */
5 #include <udi.h>
6 #include <udi_nic.h>
7 #include <acess.h>      // for EXPORT
8 #include <udi_internal.h>
9
10 // === EXPORTS ===
11 EXPORT(udi_nd_bind_req);
12 EXPORT(udi_nsr_bind_ack);
13 EXPORT(udi_nd_unbind_req);
14 EXPORT(udi_nsr_unbind_ack);
15 EXPORT(udi_nd_enable_req);
16 EXPORT(udi_nsr_enable_ack);
17 EXPORT(udi_nd_disable_req);
18 EXPORT(udi_nd_ctrl_req);
19 EXPORT(udi_nsr_ctrl_ack);
20 EXPORT(udi_nsr_status_ind);
21 EXPORT(udi_nd_info_req);
22 EXPORT(udi_nsr_info_ack);
23 // - TX
24 EXPORT(udi_nsr_tx_rdy);
25 EXPORT(udi_nd_tx_req);
26 EXPORT(udi_nd_exp_tx_req);
27 // - RX
28 EXPORT(udi_nsr_rx_ind);
29 EXPORT(udi_nsr_exp_rx_ind);
30 EXPORT(udi_nd_rx_rdy);
31
32 #define UDI_NIC_STD_CB_NUM      1
33 #define UDI_NIC_BIND_CB_NUM     2
34 #define UDI_NIC_CTRL_CB_NUM     3
35 #define UDI_NIC_STATUS_CB_NUM   4
36 #define UDI_NIC_INFO_CB_NUM     5
37 #define UDI_NIC_TX_CB_NUM       6
38 #define UDI_NIC_RX_CB_NUM       7
39 // === GLOBALS ===
40 tUDI_MetaLang   cMetaLang_NIC = {
41         "udi_nic",
42         8,
43         {
44                 {0},
45                 {sizeof(udi_nic_cb_t), NULL},
46                 {sizeof(udi_nic_bind_cb_t), NULL},
47                 {sizeof(udi_nic_ctrl_cb_t), NULL},
48                 {sizeof(udi_nic_status_cb_t), NULL},
49                 {sizeof(udi_nic_info_cb_t), NULL},
50                 {sizeof(udi_nic_tx_cb_t), NULL},
51                 {sizeof(udi_nic_rx_cb_t), NULL},
52         }
53 };
54
55 // === CODE ===
56 // --- Control Ops ---
57 void udi_nd_bind_req(udi_nic_bind_cb_t *cb, udi_index_t tx_chan_index, udi_index_t rx_chan_index)
58 {
59         UNIMPLEMENTED();
60 }
61
62 void udi_nsr_bind_ack(udi_nic_bind_cb_t *cb, udi_status_t status)
63 {
64         UNIMPLEMENTED();
65 }
66
67 void udi_nd_unbind_req(udi_nic_cb_t *cb)
68 {
69         UNIMPLEMENTED();
70 }
71
72 void udi_nsr_unbind_ack(udi_nic_cb_t *cb, udi_status_t status)
73 {
74         UNIMPLEMENTED();
75 }
76
77 void udi_nd_enable_req(udi_nic_cb_t *cb)
78 {
79         UNIMPLEMENTED();
80 }
81
82 void udi_nsr_enable_ack(udi_nic_cb_t *cb, udi_status_t status)
83 {
84         UNIMPLEMENTED();
85 }
86
87 void udi_nd_disable_req(udi_nic_cb_t *cb)
88 {
89         UNIMPLEMENTED();
90 }
91
92 void udi_nd_ctrl_req(udi_nic_ctrl_cb_t *cb)
93 {
94         UNIMPLEMENTED();
95 }
96
97 void udi_nsr_ctrl_ack(udi_nic_ctrl_cb_t *cb, udi_status_t status)
98 {
99         UNIMPLEMENTED();
100 }
101
102 void udi_nsr_status_ind(udi_nic_status_cb_t *cb)
103 {
104         UNIMPLEMENTED();
105 }
106
107 void udi_nd_info_req(udi_nic_info_cb_t *cb, udi_boolean_t reset_statistics)
108 {
109         UNIMPLEMENTED();
110 }
111
112 void udi_nsr_info_ack(udi_nic_info_cb_t *cb)
113 {
114         UNIMPLEMENTED();
115 }
116
117 // --- TX ---
118 void udi_nsr_tx_rdy(udi_nic_tx_cb_t *cb)
119 {
120         UNIMPLEMENTED();
121 }
122
123 void udi_nd_tx_req(udi_nic_tx_cb_t *cb)
124 {
125         UNIMPLEMENTED();
126 }
127
128 void udi_nd_exp_tx_req(udi_nic_tx_cb_t *cb)
129 {
130         UNIMPLEMENTED();
131 }
132
133 // --- RX ---
134 void udi_nsr_rx_ind(udi_nic_rx_cb_t *cb)
135 {
136         UNIMPLEMENTED();
137 }
138
139 void udi_nsr_exp_rx_ind(udi_nic_rx_cb_t *cb)
140 {
141         UNIMPLEMENTED();
142 }
143
144 void udi_nd_rx_rdy(udi_nic_rx_cb_t *cb)
145 {
146         UNIMPLEMENTED();
147 }
148

UCC git Repository :: git.ucc.asn.au