Subversion Repositories HelenOS

Rev

Rev 4243 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4243 Rev 4261
Line 71... Line 71...
71
 
71
 
72
#ifdef NETIF_BUNDLE
72
#ifdef NETIF_BUNDLE
73
 
73
 
74
#include "../netif/netif_wrappers.h"
74
#include "../netif/netif_wrappers.h"
75
 
75
 
76
#define NETIF_GET_DEVICE( call )    ( device_id_t ) IPC_GET_ARG1( * call )
-
 
77
 
-
 
78
#define NETIF_GET_PACKET( call )    ( packet_id_t ) IPC_GET_ARG2( * call )
-
 
79
#define NETIF_GET_IRQ( call )       ( int )         IPC_GET_ARG2( * call )
76
#define NETIF_GET_IRQ( call )       ( int )         IPC_GET_ARG2( * call )
80
 
77
 
81
#define NETIF_GET_IO( call )        ( int )         IPC_GET_ARG3( * call )
78
#define NETIF_GET_IO( call )        ( int )         IPC_GET_ARG3( * call )
82
 
79
 
83
#define netif_get_addr( netif_phone, device_id, address, data ) \
80
#define netif_get_addr( netif_phone, device_id, address, data ) \
84
    netif_get_addr_wrapper( netif_phone, device_id, address, data )
81
    netif_get_addr_wrapper( device_id, address, data )
85
 
82
 
86
#define netif_probe_req( netif_phone, device_id, irq, io )  \
83
static inline int   netif_probe_req( int netif_phone, device_id_t device_id, int irq, int io ){
87
    netif_probe_wrapper( device_id, irq, io )
84
    return netif_probe_wrapper( device_id, irq, io );
-
 
85
}
88
 
86
 
89
#define netif_send_msg( netif_phone, device_id, packet )    \
87
#define netif_send_msg( netif_phone, device_id, packet, sender )    \
90
    netif_send_wrapper( device_id, packet )
88
    netif_send_wrapper( device_id, packet, sender )
91
 
89
 
92
#define netif_start_req( netif_phone, device_id )   \
90
static inline int   netif_start_req( int netif_phone, device_id_t device_id ){
93
    netif_start_wrapper( device_id )
91
    return netif_start_wrapper( device_id );
-
 
92
}
94
 
93
 
95
#define netif_stop_req( netif_phone, device_id )    \
94
static inline int   netif_stop_req( int netif_phone, device_id_t device_id ){
96
    netif_stop_wrapper( device_id )
95
    return netif_stop_wrapper( device_id );
-
 
96
}
97
 
97
 
98
#else
98
#else
99
 
99
 
100
static inline int netif_get_addr( int netif_phone, device_id_t device_id, measured_string_ref * address, char ** data ){
-
 
101
    aid_t           message;
-
 
102
//  ipc_call_t      answer;
-
 
103
    ipcarg_t        result;
-
 
104
    int             string;
-
 
105
 
-
 
106
    if( !( address && data )) return EBADMEM;
-
 
107
    message = async_send_1( netif_phone, NET_NETIF_GET_ADDR, device_id, NULL /* & answer */ );
-
 
108
    string = measured_strings_return( netif_phone, address, data, 1 );
-
 
109
    async_wait_for( message, & result );
-
 
110
    if(( string == EOK ) && ( result != EOK )){
-
 
111
        free( * address );
-
 
112
        free( * data );
-
 
113
    }
-
 
114
    return result;
-
 
115
}
-
 
116
 
-
 
117
#define netif_probe_req( netif_phone, device_id, irq, io )  \
100
#define netif_get_addr( netif_phone, device_id, address, data ) \
118
    async_req_3_0( netif_phone, NET_NETIF_PROBE, device_id, irq, io )
101
    generic_get_addr( netif_phone, NET_NETIF_GET_ADDR, device_id, address, data )
119
 
102
 
-
 
103
static inline int   netif_probe_req( int netif_phone, device_id_t device_id, int irq, int io ){
-
 
104
    return async_req_3_0( netif_phone, NET_NETIF_PROBE, device_id, irq, io );
-
 
105
}
-
 
106
 
120
#define netif_send_msg( netif_phone, device_id, packet )    \
107
#define netif_send_msg( netif_phone, device_id, packet, sender )    \
121
    async_msg_2( netif_phone, NET_NETIF_SEND, device_id, packet_get_id( packet ))
108
    generic_send_msg( netif_phone, NET_NETIF_SEND, device_id, packet_get_id( packet ), sender )
122
 
109
 
123
#define netif_start_req( netif_phone, device_id )   \
110
static inline int   netif_start_req( int netif_phone, device_id_t device_id ){
124
    async_req_1_0( netif_phone, NET_NETIF_START, device_id )
111
    return async_req_1_0( netif_phone, NET_NETIF_START, device_id );
-
 
112
}
125
 
113
 
126
#define netif_stop_req( netif_phone, device_id )    \
114
static inline int   netif_stop_req( int netif_phone, device_id_t device_id ){
127
    async_req_1_0( netif_phone, NET_NETIF_STOP, device_id )
115
    return async_req_1_0( netif_phone, NET_NETIF_STOP, device_id );
-
 
116
}
128
 
117
 
129
#endif
118
#endif
130
 
119
 
131
#endif
120
#endif
132
 
121