[PATCH] W1: w1_netlink: New init/fini netlink callbacks.
[linux-2.6/verdex.git] / drivers / s390 / net / ctcdbug.c
blob0e2a8bb930322ec9d4f6aacc4c8c5924df8a04ad
1 /*
3 * linux/drivers/s390/net/ctcdbug.c ($Revision: 1.6 $)
5 * CTC / ESCON network driver - s390 dbf exploit.
7 * Copyright 2000,2003 IBM Corporation
9 * Author(s): Original Code written by
10 * Peter Tiedemann (ptiedem@de.ibm.com)
12 * $Revision: 1.6 $ $Date: 2005/05/11 08:10:17 $
14 * This program is free software; you can redistribute it and/or modify
15 * it under the terms of the GNU General Public License as published by
16 * the Free Software Foundation; either version 2, or (at your option)
17 * any later version.
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
24 * You should have received a copy of the GNU General Public License
25 * along with this program; if not, write to the Free Software
26 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
29 #include "ctcdbug.h"
31 /**
32 * Debug Facility Stuff
34 debug_info_t *ctc_dbf_setup = NULL;
35 debug_info_t *ctc_dbf_data = NULL;
36 debug_info_t *ctc_dbf_trace = NULL;
38 DEFINE_PER_CPU(char[256], ctc_dbf_txt_buf);
40 void
41 ctc_unregister_dbf_views(void)
43 if (ctc_dbf_setup)
44 debug_unregister(ctc_dbf_setup);
45 if (ctc_dbf_data)
46 debug_unregister(ctc_dbf_data);
47 if (ctc_dbf_trace)
48 debug_unregister(ctc_dbf_trace);
50 int
51 ctc_register_dbf_views(void)
53 ctc_dbf_setup = debug_register(CTC_DBF_SETUP_NAME,
54 CTC_DBF_SETUP_PAGES,
55 CTC_DBF_SETUP_NR_AREAS,
56 CTC_DBF_SETUP_LEN);
57 ctc_dbf_data = debug_register(CTC_DBF_DATA_NAME,
58 CTC_DBF_DATA_PAGES,
59 CTC_DBF_DATA_NR_AREAS,
60 CTC_DBF_DATA_LEN);
61 ctc_dbf_trace = debug_register(CTC_DBF_TRACE_NAME,
62 CTC_DBF_TRACE_PAGES,
63 CTC_DBF_TRACE_NR_AREAS,
64 CTC_DBF_TRACE_LEN);
66 if ((ctc_dbf_setup == NULL) || (ctc_dbf_data == NULL) ||
67 (ctc_dbf_trace == NULL)) {
68 ctc_unregister_dbf_views();
69 return -ENOMEM;
71 debug_register_view(ctc_dbf_setup, &debug_hex_ascii_view);
72 debug_set_level(ctc_dbf_setup, CTC_DBF_SETUP_LEVEL);
74 debug_register_view(ctc_dbf_data, &debug_hex_ascii_view);
75 debug_set_level(ctc_dbf_data, CTC_DBF_DATA_LEVEL);
77 debug_register_view(ctc_dbf_trace, &debug_hex_ascii_view);
78 debug_set_level(ctc_dbf_trace, CTC_DBF_TRACE_LEVEL);
80 return 0;