]> www.infradead.org Git - users/willy/xarray.git/commitdiff
s390/qeth: make OSN / OSX support configurable
authorJulian Wiedmann <jwi@linux.ibm.com>
Fri, 27 Mar 2020 10:19:33 +0000 (11:19 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 27 Mar 2020 22:36:56 +0000 (15:36 -0700)
The last machine generation that supports OSN is z13, and OSX is only
supported up to z14. Allow users and distros to decide whether they
still need support for these device types.

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/Kconfig
drivers/s390/net/qeth_core_main.c
drivers/s390/net/qeth_core_mpc.h
drivers/s390/net/qeth_l2_main.c

index ced896d1534a046774acf5676ca310980dfc7963..36633387b95230ee4ae6ea9d9157040c12022c03 100644 (file)
@@ -91,6 +91,22 @@ config QETH_L3
          To compile as a module choose M. The module name is qeth_l3.
          If unsure, choose Y.
 
+config QETH_OSN
+       def_bool !HAVE_MARCH_Z14_FEATURES
+       prompt "qeth OSN device support"
+       depends on QETH
+       help
+         This enables the qeth driver to support devices in OSN mode.
+         If unsure, choose N.
+
+config QETH_OSX
+       def_bool !HAVE_MARCH_Z15_FEATURES
+       prompt "qeth OSX device support"
+       depends on QETH
+       help
+         This enables the qeth driver to support devices in OSX mode.
+         If unsure, choose N.
+
 config CCWGROUP
        tristate
        default (LCS || CTCM || QETH)
index d06d9f8473887d85cedc75be0e03fe45efc414ec..24fd17b347fef01ee5af1f20c7c178a8562fd751 100644 (file)
@@ -4951,12 +4951,16 @@ static struct ccw_device_id qeth_ids[] = {
                                        .driver_info = QETH_CARD_TYPE_OSD},
        {CCW_DEVICE_DEVTYPE(0x1731, 0x05, 0x1732, 0x05),
                                        .driver_info = QETH_CARD_TYPE_IQD},
+#ifdef CONFIG_QETH_OSN
        {CCW_DEVICE_DEVTYPE(0x1731, 0x06, 0x1732, 0x06),
                                        .driver_info = QETH_CARD_TYPE_OSN},
+#endif
        {CCW_DEVICE_DEVTYPE(0x1731, 0x02, 0x1732, 0x03),
                                        .driver_info = QETH_CARD_TYPE_OSM},
+#ifdef CONFIG_QETH_OSX
        {CCW_DEVICE_DEVTYPE(0x1731, 0x02, 0x1732, 0x02),
                                        .driver_info = QETH_CARD_TYPE_OSX},
+#endif
        {},
 };
 MODULE_DEVICE_TABLE(ccw, qeth_ids);
index 6f304fdbb073c2999afdfe77097086bb01ccdd2f..d89a04bfd8b0dac71ec38b0631da464d3daae0d2 100644 (file)
@@ -74,8 +74,19 @@ enum qeth_card_types {
 #define IS_IQD(card)   ((card)->info.type == QETH_CARD_TYPE_IQD)
 #define IS_OSD(card)   ((card)->info.type == QETH_CARD_TYPE_OSD)
 #define IS_OSM(card)   ((card)->info.type == QETH_CARD_TYPE_OSM)
+
+#ifdef CONFIG_QETH_OSN
 #define IS_OSN(card)   ((card)->info.type == QETH_CARD_TYPE_OSN)
+#else
+#define IS_OSN(card)   false
+#endif
+
+#ifdef CONFIG_QETH_OSX
 #define IS_OSX(card)   ((card)->info.type == QETH_CARD_TYPE_OSX)
+#else
+#define IS_OSX(card)   false
+#endif
+
 #define IS_VM_NIC(card)        ((card)->info.is_vm_nic)
 
 #define QETH_MPC_DIFINFO_LEN_INDICATES_LINK_TYPE 0x18
index 766ea0d07a2419ea7467fa22dd8c0b37a7eaf005..974b4596b78dd188ea4a1918af34b7889a51f023 100644 (file)
@@ -869,6 +869,7 @@ struct qeth_discipline qeth_l2_discipline = {
 };
 EXPORT_SYMBOL_GPL(qeth_l2_discipline);
 
+#ifdef CONFIG_QETH_OSN
 static void qeth_osn_assist_cb(struct qeth_card *card,
                               struct qeth_cmd_buffer *iob,
                               unsigned int data_length)
@@ -945,6 +946,7 @@ void qeth_osn_deregister(struct net_device *dev)
        return;
 }
 EXPORT_SYMBOL(qeth_osn_deregister);
+#endif
 
 /* SETBRIDGEPORT support, async notifications */