blob: ffb88f7b42fc51c0332f4aef439d05c811f0e0d3 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/* $Id: um_idi.h,v 1.6 2004/03/21 17:26:01 armin Exp $ */
2
3#ifndef __DIVA_USER_MODE_IDI_CORE_H__
4#define __DIVA_USER_MODE_IDI_CORE_H__
5
6
7/*
8 interface between UM IDI core and OS dependent part
Joe Perches475be4d2012-02-19 19:52:38 -08009*/
Linus Torvalds1da177e2005-04-16 15:20:36 -070010int diva_user_mode_idi_init(void);
11void diva_user_mode_idi_finit(void);
12void *divas_um_idi_create_entity(dword adapter_nr, void *file);
13int divas_um_idi_delete_entity(int adapter_nr, void *entity);
14
15typedef int (*divas_um_idi_copy_to_user_fn_t) (void *os_handle,
16 void *dst,
17 const void *src,
18 int length);
19typedef int (*divas_um_idi_copy_from_user_fn_t) (void *os_handle,
20 void *dst,
21 const void *src,
22 int length);
23
24int diva_um_idi_read(void *entity,
25 void *os_handle,
26 void *dst,
27 int max_length, divas_um_idi_copy_to_user_fn_t cp_fn);
28
29int diva_um_idi_write(void *entity,
30 void *os_handle,
31 const void *src,
32 int length, divas_um_idi_copy_from_user_fn_t cp_fn);
33
34int diva_user_mode_idi_ind_ready(void *entity, void *os_handle);
35void *diva_um_id_get_os_context(void *entity);
36int diva_os_get_context_size(void);
37int divas_um_idi_entity_assigned(void *entity);
38int divas_um_idi_entity_start_remove(void *entity);
39
40void diva_um_idi_start_wdog(void *entity);
41void diva_um_idi_stop_wdog(void *entity);
42
43#endif