3 * This file is subject to the terms and conditions of the GNU General Public
4 * License. See the file "COPYING" in the main directory of this archive
7 * Copyright (C) 1992-1997,2000-2002 Silicon Graphics, Inc. All Rights Reserved.
9 #ifndef _ASM_SN_XTALK_XSWITCH_H
10 #define _ASM_SN_XTALK_XSWITCH_H
13 * xswitch.h - controls the format of the data
14 * provided by xswitch verticies back to the
15 * xtalk bus providers.
20 #include <linux/devfs_fs_kernel.h>
21 #include <asm/sn/xtalk/xtalk.h>
23 typedef struct xswitch_info_s *xswitch_info_t;
26 xswitch_reset_link_f(devfs_handle_t xconn);
28 typedef struct xswitch_provider_s {
29 xswitch_reset_link_f *reset_link;
32 extern void xswitch_provider_register(devfs_handle_t sw_vhdl, xswitch_provider_t * xsw_fns);
34 xswitch_reset_link_f xswitch_reset_link;
36 extern xswitch_info_t xswitch_info_new(devfs_handle_t vhdl);
38 extern void xswitch_info_link_is_ok(xswitch_info_t xswitch_info,
40 extern void xswitch_info_vhdl_set(xswitch_info_t xswitch_info,
42 devfs_handle_t xwidget);
43 extern void xswitch_info_master_assignment_set(xswitch_info_t xswitch_info,
45 devfs_handle_t master_vhdl);
47 extern xswitch_info_t xswitch_info_get(devfs_handle_t vhdl);
49 extern int xswitch_info_link_ok(xswitch_info_t xswitch_info,
51 extern devfs_handle_t xswitch_info_vhdl_get(xswitch_info_t xswitch_info,
53 extern devfs_handle_t xswitch_info_master_assignment_get(xswitch_info_t xswitch_info,
56 extern int xswitch_id_get(devfs_handle_t vhdl);
57 extern void xswitch_id_set(devfs_handle_t vhdl,int xbow_num);
59 #endif /* __ASSEMBLY__ */
61 #endif /* _ASM_SN_XTALK_XSWITCH_H */