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 --- |