aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/net
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-01-07 17:50:50 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2011-01-07 17:50:50 -0500
commitfb5131e1880ea1ba3ba7197cd5cc66c9c288f715 (patch)
treef0d9f25f9079727b9ead5a2b4cc85a0fea9b4668 /drivers/s390/net
parentd074b104cefcb6e8ded55a53e62fed59a246f55d (diff)
parent8e1023016cf17152972b98bce6c144834a4916d5 (diff)
Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (65 commits) [S390] prevent unneccesary loops_per_jiffy recalculation [S390] cpuinfo: use get_online_cpus() instead of preempt_disable() [S390] smp: remove cpu hotplug messages [S390] mutex: enable spinning mutex on s390 [S390] mutex: Introduce arch_mutex_cpu_relax() [S390] cio: fix ccwgroup unregistration race condition [S390] perf: add DWARF register lookup for s390 [S390] cleanup ftrace backend functions [S390] ptrace cleanup [S390] smp/idle: call init_idle() before starting a new cpu [S390] smp: delay idle task creation [S390] dasd: Correct retry counter for terminated I/O. [S390] dasd: Add support for raw ECKD access. [S390] dasd: Prevent deadlock during suspend/resume. [S390] dasd: Improve handling of stolen DASD reservation [S390] dasd: do path verification for paths added at runtime [S390] dasd: add High Performance FICON multitrack support [S390] cio: reduce memory consumption of itcw structures [S390] nmi: enable machine checks early [S390] qeth: buffer count imbalance ...
Diffstat (limited to 'drivers/s390/net')
-rw-r--r--drivers/s390/net/Kconfig51
-rw-r--r--drivers/s390/net/claw.c2
-rw-r--r--drivers/s390/net/ctcm_main.c2
-rw-r--r--drivers/s390/net/lcs.c2
-rw-r--r--drivers/s390/net/qeth_core_main.c2
5 files changed, 37 insertions, 22 deletions
diff --git a/drivers/s390/net/Kconfig b/drivers/s390/net/Kconfig
index 456b18743397..fa80ba1f0344 100644
--- a/drivers/s390/net/Kconfig
+++ b/drivers/s390/net/Kconfig
@@ -2,7 +2,8 @@ menu "S/390 network device drivers"
2 depends on NETDEVICES && S390 2 depends on NETDEVICES && S390
3 3
4config LCS 4config LCS
5 tristate "Lan Channel Station Interface" 5 def_tristate m
6 prompt "Lan Channel Station Interface"
6 depends on CCW && NETDEVICES && (NET_ETHERNET || TR || FDDI) 7 depends on CCW && NETDEVICES && (NET_ETHERNET || TR || FDDI)
7 help 8 help
8 Select this option if you want to use LCS networking on IBM System z. 9 Select this option if you want to use LCS networking on IBM System z.
@@ -12,7 +13,8 @@ config LCS
12 If you do not know what it is, it's safe to choose Y. 13 If you do not know what it is, it's safe to choose Y.
13 14
14config CTCM 15config CTCM
15 tristate "CTC and MPC SNA device support" 16 def_tristate m
17 prompt "CTC and MPC SNA device support"
16 depends on CCW && NETDEVICES 18 depends on CCW && NETDEVICES
17 help 19 help
18 Select this option if you want to use channel-to-channel 20 Select this option if you want to use channel-to-channel
@@ -26,7 +28,8 @@ config CTCM
26 If you do not need any channel-to-channel connection, choose N. 28 If you do not need any channel-to-channel connection, choose N.
27 29
28config NETIUCV 30config NETIUCV
29 tristate "IUCV network device support (VM only)" 31 def_tristate m
32 prompt "IUCV network device support (VM only)"
30 depends on IUCV && NETDEVICES 33 depends on IUCV && NETDEVICES
31 help 34 help
32 Select this option if you want to use inter-user communication 35 Select this option if you want to use inter-user communication
@@ -37,14 +40,16 @@ config NETIUCV
37 The module name is netiucv. If unsure, choose Y. 40 The module name is netiucv. If unsure, choose Y.
38 41
39config SMSGIUCV 42config SMSGIUCV
40 tristate "IUCV special message support (VM only)" 43 def_tristate m
44 prompt "IUCV special message support (VM only)"
41 depends on IUCV 45 depends on IUCV
42 help 46 help
43 Select this option if you want to be able to receive SMSG messages 47 Select this option if you want to be able to receive SMSG messages
44 from other VM guest systems. 48 from other VM guest systems.
45 49
46config SMSGIUCV_EVENT 50config SMSGIUCV_EVENT
47 tristate "Deliver IUCV special messages as uevents (VM only)" 51 def_tristate m
52 prompt "Deliver IUCV special messages as uevents (VM only)"
48 depends on SMSGIUCV 53 depends on SMSGIUCV
49 help 54 help
50 Select this option to deliver CP special messages (SMSGs) as 55 Select this option to deliver CP special messages (SMSGs) as
@@ -54,7 +59,8 @@ config SMSGIUCV_EVENT
54 To compile as a module, choose M. The module name is "smsgiucv_app". 59 To compile as a module, choose M. The module name is "smsgiucv_app".
55 60
56config CLAW 61config CLAW
57 tristate "CLAW device support" 62 def_tristate m
63 prompt "CLAW device support"
58 depends on CCW && NETDEVICES 64 depends on CCW && NETDEVICES
59 help 65 help
60 This driver supports channel attached CLAW devices. 66 This driver supports channel attached CLAW devices.
@@ -64,7 +70,8 @@ config CLAW
64 To compile into the kernel, choose Y. 70 To compile into the kernel, choose Y.
65 71
66config QETH 72config QETH
67 tristate "Gigabit Ethernet device support" 73 def_tristate y
74 prompt "Gigabit Ethernet device support"
68 depends on CCW && NETDEVICES && IP_MULTICAST && QDIO 75 depends on CCW && NETDEVICES && IP_MULTICAST && QDIO
69 help 76 help
70 This driver supports the IBM System z OSA Express adapters 77 This driver supports the IBM System z OSA Express adapters
@@ -78,25 +85,25 @@ config QETH
78 The module name is qeth. 85 The module name is qeth.
79 86
80config QETH_L2 87config QETH_L2
81 tristate "qeth layer 2 device support" 88 def_tristate y
82 depends on QETH 89 prompt "qeth layer 2 device support"
83 help 90 depends on QETH
84 Select this option to be able to run qeth devices in layer 2 mode. 91 help
85 To compile as a module, choose M. The module name is qeth_l2. 92 Select this option to be able to run qeth devices in layer 2 mode.
86 If unsure, choose y. 93 To compile as a module, choose M. The module name is qeth_l2.
94 If unsure, choose y.
87 95
88config QETH_L3 96config QETH_L3
89 tristate "qeth layer 3 device support" 97 def_tristate y
90 depends on QETH 98 prompt "qeth layer 3 device support"
91 help 99 depends on QETH
92 Select this option to be able to run qeth devices in layer 3 mode. 100 help
93 To compile as a module choose M. The module name is qeth_l3. 101 Select this option to be able to run qeth devices in layer 3 mode.
94 If unsure, choose Y. 102 To compile as a module choose M. The module name is qeth_l3.
103 If unsure, choose Y.
95 104
96config QETH_IPV6 105config QETH_IPV6
97 bool 106 def_bool y if (QETH_L3 = IPV6) || (QETH_L3 && IPV6 = 'y')
98 depends on (QETH_L3 = IPV6) || (QETH_L3 && IPV6 = 'y')
99 default y
100 107
101config CCWGROUP 108config CCWGROUP
102 tristate 109 tristate
diff --git a/drivers/s390/net/claw.c b/drivers/s390/net/claw.c
index 8e4153d740f3..ce3a5c13ce0b 100644
--- a/drivers/s390/net/claw.c
+++ b/drivers/s390/net/claw.c
@@ -63,6 +63,7 @@
63 63
64#define KMSG_COMPONENT "claw" 64#define KMSG_COMPONENT "claw"
65 65
66#include <linux/kernel_stat.h>
66#include <asm/ccwdev.h> 67#include <asm/ccwdev.h>
67#include <asm/ccwgroup.h> 68#include <asm/ccwgroup.h>
68#include <asm/debug.h> 69#include <asm/debug.h>
@@ -640,6 +641,7 @@ claw_irq_handler(struct ccw_device *cdev,
640 struct claw_env *p_env; 641 struct claw_env *p_env;
641 struct chbk *p_ch_r=NULL; 642 struct chbk *p_ch_r=NULL;
642 643
644 kstat_cpu(smp_processor_id()).irqs[IOINT_CLW]++;
643 CLAW_DBF_TEXT(4, trace, "clawirq"); 645 CLAW_DBF_TEXT(4, trace, "clawirq");
644 /* Bypass all 'unsolicited interrupts' */ 646 /* Bypass all 'unsolicited interrupts' */
645 privptr = dev_get_drvdata(&cdev->dev); 647 privptr = dev_get_drvdata(&cdev->dev);
diff --git a/drivers/s390/net/ctcm_main.c b/drivers/s390/net/ctcm_main.c
index 2c7d2d9be4d0..4c2845985927 100644
--- a/drivers/s390/net/ctcm_main.c
+++ b/drivers/s390/net/ctcm_main.c
@@ -24,6 +24,7 @@
24#define KMSG_COMPONENT "ctcm" 24#define KMSG_COMPONENT "ctcm"
25#define pr_fmt(fmt) KMSG_COMPONENT ": " fmt 25#define pr_fmt(fmt) KMSG_COMPONENT ": " fmt
26 26
27#include <linux/kernel_stat.h>
27#include <linux/module.h> 28#include <linux/module.h>
28#include <linux/init.h> 29#include <linux/init.h>
29#include <linux/kernel.h> 30#include <linux/kernel.h>
@@ -1204,6 +1205,7 @@ static void ctcm_irq_handler(struct ccw_device *cdev,
1204 int cstat; 1205 int cstat;
1205 int dstat; 1206 int dstat;
1206 1207
1208 kstat_cpu(smp_processor_id()).irqs[IOINT_CTC]++;
1207 CTCM_DBF_TEXT_(TRACE, CTC_DBF_DEBUG, 1209 CTCM_DBF_TEXT_(TRACE, CTC_DBF_DEBUG,
1208 "Enter %s(%s)", CTCM_FUNTAIL, dev_name(&cdev->dev)); 1210 "Enter %s(%s)", CTCM_FUNTAIL, dev_name(&cdev->dev));
1209 1211
diff --git a/drivers/s390/net/lcs.c b/drivers/s390/net/lcs.c
index c9f13b9ea339..09e7a053c844 100644
--- a/drivers/s390/net/lcs.c
+++ b/drivers/s390/net/lcs.c
@@ -26,6 +26,7 @@
26#define KMSG_COMPONENT "lcs" 26#define KMSG_COMPONENT "lcs"
27#define pr_fmt(fmt) KMSG_COMPONENT ": " fmt 27#define pr_fmt(fmt) KMSG_COMPONENT ": " fmt
28 28
29#include <linux/kernel_stat.h>
29#include <linux/module.h> 30#include <linux/module.h>
30#include <linux/if.h> 31#include <linux/if.h>
31#include <linux/netdevice.h> 32#include <linux/netdevice.h>
@@ -1398,6 +1399,7 @@ lcs_irq(struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
1398 int rc, index; 1399 int rc, index;
1399 int cstat, dstat; 1400 int cstat, dstat;
1400 1401
1402 kstat_cpu(smp_processor_id()).irqs[IOINT_LCS]++;
1401 if (lcs_check_irb_error(cdev, irb)) 1403 if (lcs_check_irb_error(cdev, irb))
1402 return; 1404 return;
1403 1405
diff --git a/drivers/s390/net/qeth_core_main.c b/drivers/s390/net/qeth_core_main.c
index b7d9dc0adc62..29f848bfc12f 100644
--- a/drivers/s390/net/qeth_core_main.c
+++ b/drivers/s390/net/qeth_core_main.c
@@ -3831,6 +3831,8 @@ static int qeth_qdio_establish(struct qeth_card *card)
3831 init_data.int_parm = (unsigned long) card; 3831 init_data.int_parm = (unsigned long) card;
3832 init_data.input_sbal_addr_array = (void **) in_sbal_ptrs; 3832 init_data.input_sbal_addr_array = (void **) in_sbal_ptrs;
3833 init_data.output_sbal_addr_array = (void **) out_sbal_ptrs; 3833 init_data.output_sbal_addr_array = (void **) out_sbal_ptrs;
3834 init_data.scan_threshold =
3835 (card->info.type == QETH_CARD_TYPE_IQD) ? 8 : 32;
3834 3836
3835 if (atomic_cmpxchg(&card->qdio.state, QETH_QDIO_ALLOCATED, 3837 if (atomic_cmpxchg(&card->qdio.state, QETH_QDIO_ALLOCATED,
3836 QETH_QDIO_ESTABLISHED) == QETH_QDIO_ALLOCATED) { 3838 QETH_QDIO_ESTABLISHED) == QETH_QDIO_ALLOCATED) {