Update of /cvsroot/linux-vax/kernel-2.4/drivers/s390/net
In directory usw-pr-cvs1:/tmp/cvs-serv8509/s390/net
Modified Files:
Makefile ctcmain.c fsm.c fsm.h iucv.c iucv.h netiucv.c
Added Files:
ctctty.c ctctty.h
Removed Files:
ctc.c
Log Message:
synch 2.4.15 commit 52
--- NEW FILE ---
/*
* $Id: ctctty.c,v 1.1 2002/04/11 12:55:55 atp Exp $
*
* CTC / ESCON network driver, tty interface.
*
* Copyright (C) 2001 IBM Deutschland Entwicklung GmbH, IBM Corporation
* Author(s): Fritz Elfert (el...@de..., fe...@mi...)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
[...1300 lines suppressed...]
}
void
ctc_tty_cleanup(int final) {
unsigned long saveflags;
spin_lock_irqsave(&ctc_tty_lock, saveflags);
ctc_tty_shuttingdown = 1;
if (final) {
kfree(driver);
driver = NULL;
} else {
int i;
for (i = 0; i < CTC_TTY_MAX_DEVICES; i++)
driver->info[i].tq.routine = NULL;
tty_unregister_driver(&driver->ctc_tty_device);
}
spin_unlock_irqrestore(&ctc_tty_lock, saveflags);
}
--- NEW FILE ---
/*
* $Id: ctctty.h,v 1.1 2002/04/11 12:55:55 atp Exp $
*
* CTC / ESCON network driver, tty interface.
*
* Copyright (C) 2001 IBM Deutschland Entwicklung GmbH, IBM Corporation
* Author(s): Fritz Elfert (el...@de..., fe...@mi...)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef _CTCTTY_H_
#define _CTCTTY_H_
#include <linux/version.h>
#include <linux/skbuff.h>
#include <linux/netdevice.h>
#if LINUX_VERSION_CODE < 0x020300
typedef struct device net_device;
#else
typedef struct net_device net_device;
#endif
extern int ctc_tty_register_netdev(net_device *);
extern void ctc_tty_unregister_netdev(net_device *);
extern void ctc_tty_netif_rx(struct sk_buff *);
extern int ctc_tty_init(void);
extern void ctc_tty_cleanup(int);
extern void ctc_tty_setcarrier(net_device *, int);
#endif
Index: Makefile
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/s390/net/Makefile,v
retrieving revision 1.1.1.2
retrieving revision 1.2
diff -u -r1.1.1.2 -r1.2
--- Makefile 25 Feb 2001 23:15:14 -0000 1.1.1.2
+++ Makefile 11 Apr 2002 12:55:55 -0000 1.2
@@ -1,20 +1,20 @@
-all: s390-net.o
+#
+# S/390 network devices
+#
-CFLAGS +=
O_TARGET := s390-net.o
-obj-y := iucv.o
+list-multi := ctc.o
+export-objs := iucv.o fsm.o
-ifeq ($(CONFIG_CTC),y)
- obj-y += ctcmain.o fsm.o
-else
- ifeq ($(CONFIG_CTC),m)
- obj-m += ctc.o
-ctc.o: ctcmain.o fsm.o
- $(LD) -r ctcmain.o fsm.o -o $@
- endif
-endif
+ctc-objs := ctcmain.o ctctty.o
-obj-$(CONFIG_IUCV) += iucv.o netiucv.o
+obj-y += iucv.o fsm.o
+obj-$(CONFIG_CTC) += ctc.o
+obj-$(CONFIG_IUCV) += netiucv.o
include $(TOPDIR)/Rules.make
+
+ctc.o: $(ctc-objs)
+ $(LD) -r -o $@ $(ctc-objs)
+
Index: ctcmain.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/s390/net/ctcmain.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- ctcmain.c 25 Feb 2001 23:15:14 -0000 1.1.1.1
+++ ctcmain.c 11 Apr 2002 12:55:55 -0000 1.2
@@ -3,10 +3,10 @@
*
* CTC / ESCON network driver
*
- * Copyright (C) 1999 IBM Deutschland Entwicklung GmbH, IBM Corporation
+ * Copyright (C) 2001 IBM Deutschland Entwicklung GmbH, IBM Corporation
* Author(s): Fritz Elfert (el...@de..., fe...@mi...)
* Fixes by : Jochen Röhrig (ro...@de...)
- * Arnaldo Carvalho de Melo <ac...@co...>
+ * Arnaldo Carvalho de Melo <ac...@co...>
*
* Documentation used:
[...2322 lines suppressed...]
- return -ENODEV;
+ ret = -ENODEV;
}
- return 0;
+#endif
+ if (ret) {
+ ctc_tty_cleanup(0);
+ ctc_tty_cleanup(1);
+#if defined(CTC_CHANDEV) && defined(MODULE)
+ chandev_unregister(ctc_chandev_probe, 0);
+#endif
+#ifdef MODULE
+ if (probed)
+ ctc_proc_destroy_main();
+#endif
+ }
+ return ret;
}
#ifndef MODULE
Index: fsm.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/s390/net/fsm.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- fsm.c 25 Feb 2001 23:15:14 -0000 1.1.1.1
+++ fsm.c 11 Apr 2002 12:55:55 -0000 1.2
@@ -3,24 +3,12 @@
*
* A generic FSM based on fsm used in isdn4linux
*
- * $Log$
- * Revision 1.1.1.1 2001/02/25 23:15:14 kenn
- * Import official 2.4.2 Linus tree
- *
- * Revision 1.1 2000/11/30 11:21:08 bird
- * Support for new ctc driver
- *
- * Revision 1.2 2000/11/10 17:25:11 felfert
- * Changes for kernel 2.4
- *
- * Revision 1.1 2000/11/03 16:58:45 felfert
- * Initial import
- *
- *
*/
#include "fsm.h"
#include <linux/version.h>
+#include <linux/config.h>
+#include <linux/module.h>
fsm_instance *
init_fsm(char *name, const char **state_names, const char **event_names, int nr_states,
@@ -231,3 +219,16 @@
this->tl.expires = jiffies + (millisec * HZ) / 1000;
add_timer(&this->tl);
}
+
+EXPORT_SYMBOL(init_fsm);
+EXPORT_SYMBOL(kfree_fsm);
+EXPORT_SYMBOL(fsm_settimer);
+EXPORT_SYMBOL(fsm_deltimer);
+EXPORT_SYMBOL(fsm_addtimer);
+EXPORT_SYMBOL(fsm_modtimer);
+EXPORT_SYMBOL(fsm_getstate_str);
+
+#if FSM_DEBUG_HISTORY
+EXPORT_SYMBOL(fsm_print_history);
+EXPORT_SYMBOL(fsm_record_history);
+#endif
Index: fsm.h
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/s390/net/fsm.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- fsm.h 25 Feb 2001 23:15:14 -0000 1.1.1.1
+++ fsm.h 11 Apr 2002 12:55:55 -0000 1.2
@@ -1,16 +1,4 @@
/* $Id$
- *
- * $Log$
- * Revision 1.1.1.1 2001/02/25 23:15:14 kenn
- * Import official 2.4.2 Linus tree
- *
- * Revision 1.1 2000/11/30 11:21:08 bird
- * Support for new ctc driver
- *
- * Revision 1.1 2000/11/03 16:58:45 felfert
- * Initial import
- *
- *
*/
#ifndef _FSM_H_
#define _FSM_H_
@@ -19,7 +7,7 @@
#include <linux/types.h>
#include <linux/timer.h>
#include <linux/time.h>
-#include <linux/malloc.h>
+#include <linux/slab.h>
#include <linux/sched.h>
#include <linux/string.h>
#include <asm/atomic.h>
@@ -118,10 +106,11 @@
* @param tmpl_len Length of the describing array.
* @param order Parameter for allocation of the FSM data structs.
*/
-fsm_instance * init_fsm(char *name, const char **state_names,
- const char **event_names,
- int nr_states, int nr_events, const fsm_node *tmpl,
- int tmpl_len, int order);
+extern fsm_instance *
+init_fsm(char *name, const char **state_names,
+ const char **event_names,
+ int nr_states, int nr_events, const fsm_node *tmpl,
+ int tmpl_len, int order);
/**
* Releases an FSM
Index: iucv.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/s390/net/iucv.c,v
retrieving revision 1.1.1.2
retrieving revision 1.2
diff -u -r1.1.1.2 -r1.2
--- iucv.c 25 Feb 2001 23:15:14 -0000 1.1.1.2
+++ iucv.c 11 Apr 2002 12:55:55 -0000 1.2
@@ -1,2034 +1,2271 @@
/*
- * drivers/s390/net/iucv.c
- * Support for VM IUCV functions for use by other part of the
- * kernel or loadable modules.
- *
- * S390 version
- * Copyright (C) 2000 IBM Corporation
- * Author(s): Xenia Tkatschow (xe...@us...)
- * Alan Altmark (Ala...@us...)
+ * $Id$
+ *
[...4083 lines suppressed...]
EXPORT_SYMBOL (iucv_accept);
EXPORT_SYMBOL (iucv_connect);
EXPORT_SYMBOL (iucv_purge);
-EXPORT_SYMBOL (iucv_query);
+EXPORT_SYMBOL (iucv_query_maxconn);
+EXPORT_SYMBOL (iucv_query_bufsize);
EXPORT_SYMBOL (iucv_quiesce);
EXPORT_SYMBOL (iucv_receive);
-EXPORT_SYMBOL (iucv_receive_simple);
EXPORT_SYMBOL (iucv_receive_array);
EXPORT_SYMBOL (iucv_reject);
EXPORT_SYMBOL (iucv_reply);
@@ -2045,6 +2282,4 @@
EXPORT_SYMBOL (iucv_setmask);
EXPORT_SYMBOL (iucv_sever);
EXPORT_SYMBOL (iucv_register_program);
-EXPORT_SYMBOL (iucv_unregister);
-#endif
-
+EXPORT_SYMBOL (iucv_unregister_program);
Index: iucv.h
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/s390/net/iucv.h,v
retrieving revision 1.1.1.2
retrieving revision 1.2
diff -u -r1.1.1.2 -r1.2
--- iucv.h 25 Feb 2001 23:15:14 -0000 1.1.1.2
+++ iucv.h 11 Apr 2002 12:55:55 -0000 1.2
@@ -1,353 +1,752 @@
/*
- * drivers/s390/net/netiucv.h
+ * drivers/s390/net/iucv.h
* IUCV base support.
*
* S390 version
* Copyright (C) 2000 IBM Corporation
- * Author(s): Xenia Tkatschow (xe...@us...)
+ * Author(s):Alan Altmark (Ala...@us...)
+ * Xenia Tkatschow (xe...@us...)
*
[...971 lines suppressed...]
+ * Input: SetMaskFlag - options for interrupts
+ * 0x80 - Nonpriority_MessagePendingInterruptsFlag
+ * 0x40 - Priority_MessagePendingInterruptsFlag
+ * 0x20 - Nonpriority_MessageCompletionInterruptsFlag
+ * 0x10 - Priority_MessageCompletionInterruptsFlag
+ * Output: NA
+ * Return: Return code from CP IUCV call.
+*/
+int iucv_setmask (int SetMaskFlag);
+
+/*
+ * Name: iucv_sever
+ * Purpose: This function terminates an IUCV path.
+ * Input: pathid - Path identification number.
+ * user_data - 16-bytes of user data.
+ * Output: NA
+ * Return: Return code from CP IUCV call.
+ * (-EINVAL) - Interal error, wild pointer.
+*/
+int iucv_sever (u16 pathid, uchar user_data[16]);
Index: netiucv.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/s390/net/netiucv.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- netiucv.c 25 Feb 2001 23:15:14 -0000 1.1.1.1
+++ netiucv.c 11 Apr 2002 12:55:55 -0000 1.2
@@ -1,901 +1,2122 @@
/*
- * drivers/s390/net/netiucv.c
- * Network driver for VM using iucv
+ * $Id$
*
- * S/390 version
- * Copyright (C) 1999, 2000 IBM Deutschland Entwicklung GmbH, IBM Corporation
- * Author(s): Stefan Hegewald <heg...@de...>
- * Hartmut Penner <hp...@de...>
- *
- *
[...2856 lines suppressed...]
-#endif
- init: iucv_init /* probe function */
- },
- {
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,3,0))
- name: &iucv_names[8][0], /* Name filled in at load time */
-#endif
- init: iucv_init /* probe function */
- },
- {
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,3,0))
- name: &iucv_names[9][0], /* Name filled in at load time */
+#ifdef MODULE
+module_init(netiucv_init);
+module_exit(netiucv_exit);
+MODULE_LICENSE("GPL");
#endif
- init: iucv_init /* probe function */
- },
-};
--- ctc.c DELETED ---
|