s390: qeth patches for 2.6.35 II
Subsystems (4)
cover s390: qeth patches for 2.6.35 II
Hi Dave,
I just got 2 more qeth patches for 2.6.35 (net-next). Hope they can make it into net-next before the merge window.
shortlog:
Ursula Braun (1)
qeth: support the new OSA CHPID types OSX and OSM
Julia Lawall (1)drivers/s390/net: Drop memory allocation cast
Thanks,
Frank
PATCH 1/2 drivers/s390/net: Drop memory allocation cast
From: Julia Lawall <[email protected]>
Drop cast on the result of kmalloc and similar functions.
The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@@
type T;
@@
- (T *) (\(kmalloc\|kzalloc\|kcalloc\|kmem_cache_alloc\|kmem_cache_zalloc\| kmem_cache_alloc_node\|kmalloc_node\|kzalloc_node\)(...))
// </smpl>
---
drivers/s390/net/ctcm_main.c | 6 ++---- drivers/s390/net/ctcm_mpc.c | 6 ++---- drivers/s390/net/lcs.c | 3 +-- drivers/s390/net/qeth_core_main.c | 2 +- 4 files changed, 6 insertions(+), 11 deletions(-)
drivers/s390/net/ctcm_main.c +2 -4
@@ -1364,8 +1364,7 @@ static int add_channel(struct ccw_device ch->protocol = priv->protocol;if (IS_MPC (priv)) { - ch->discontact_th = (struct th_header *) -kzalloc (TH_HEADER_LENGTH ,gfp_type ()); + ch->discontact_th =kzalloc (TH_HEADER_LENGTH ,gfp_type ());if (ch->discontact_th ==NULL ) goto nomem_return;
@@ -1379,8 +1378,7 @@ static int add_channel(struct ccw_device }else ccw_num =8 ; - ch->ccw = (struct ccw1 *) -kzalloc (ccw_num *sizeof (struct ccw1 ),GFP_KERNEL |GFP_DMA ); + ch->ccw =kzalloc (ccw_num *sizeof (struct ccw1 ),GFP_KERNEL |GFP_DMA );if (ch->ccw ==NULL ) goto nomem_return;
drivers/s390/net/ctcm_mpc.c +2 -4
@@ -669,8 +669,7 @@ static void ctcmpc_send_sweep_resp(struc goto done; } - header = (struct th_sweep *) -kmalloc (sizeof (struct th_sweep ),gfp_type ()); + header =kmalloc (sizeof (struct th_sweep ),gfp_type ());if (!header) {dev_kfree_skb_any (sweep_skb);
@@ -1191,8 +1190,7 @@ static void ctcmpc_unpack_skb(struct chaskb_pull (pskb, new_len);/* point to next PDU */ } }else { - mpcginfo = (struct mpcg_info *) -kmalloc (sizeof (struct mpcg_info ),gfp_type ()); + mpcginfo =kmalloc (sizeof (struct mpcg_info ),gfp_type ());if (mpcginfo ==NULL ) goto done;
drivers/s390/net/lcs.c +1 -2
@@ -1238,8 +1238,7 @@ lcs_set_mc_addresses(struct lcs_card *ca ipm =lcs_check_addr_entry (card, im4, buf);if (ipm !=NULL )continue ;/* Address already in list. */ - ipm = (struct lcs_ipm_list *) -kzalloc (sizeof (struct lcs_ipm_list ),GFP_ATOMIC ); + ipm =kzalloc (sizeof (struct lcs_ipm_list ),GFP_ATOMIC );if (ipm ==NULL ) {pr_info ("Not enough memory to add" " new multicast entry!\n" );
drivers/s390/net/qeth_core_main.c +1 -1
@@ -606,7 +606,7 @@ static int qeth_setup_channel(struct qetQETH_DBF_TEXT (SETUP ,2 ,"setupch" );for (cnt =0 ; cnt <QETH_CMD_BUFFER_NO ; cnt++) { - channel->iob[cnt].data = (char *) + channel->iob[cnt].data =kmalloc (QETH_BUFSIZE ,GFP_DMA |GFP_KERNEL );if (channel->iob[cnt].data ==NULL )break ;
PATCH 2/2 qeth: support the new OSA CHPID types OSX and OSM
In reply to [email protected]From: Ursula Braun <[email protected]>
The qeth driver is enabled to support the new OSA CHPID types OSX and OSM.
---
drivers/s390/net/qeth_core.h | 28 ++-- drivers/s390/net/qeth_core_main.c | 224 ++++++++++++++++++++++++-------------- drivers/s390/net/qeth_core_mpc.h | 10 + drivers/s390/net/qeth_core_sys.c | 3 drivers/s390/net/qeth_l2_main.c | 34 ++++- drivers/s390/net/qeth_l3_main.c | 6 - 6 files changed, 194 insertions(+), 111 deletions(-)
drivers/s390/net/qeth_core.h +13 -15
@@ -179,25 +179,23 @@ static inline int qeth_is_ipa_enabled(st ((prot ==QETH_PROT_IPV6 ) ? \ qeth_is_enabled6(c, f) : qeth_is_enabled(c, f)) -#define QETH_IDX_FUNC_LEVEL_OSAE_ENA_IPAT 0x0101 -#define QETH_IDX_FUNC_LEVEL_OSAE_DIS_IPAT 0x0101 +#define QETH_IDX_FUNC_LEVEL_OSD 0x0101#define QETH_IDX_FUNC_LEVEL_IQD_ENA_IPAT 0x4108#define QETH_IDX_FUNC_LEVEL_IQD_DIS_IPAT 0x5108#define QETH_MODELLIST_ARRAY \ - {{0x1731, 0x01, 0x1732, 0x01, QETH_CARD_TYPE_OSAE, 1, \ - QETH_IDX_FUNC_LEVEL_OSAE_ENA_IPAT, \ - QETH_IDX_FUNC_LEVEL_OSAE_DIS_IPAT, \ - QETH_MAX_QUEUES, 0}, \ - {0x1731, 0x05, 0x1732, 0x05, QETH_CARD_TYPE_IQD, 0, \ - QETH_IDX_FUNC_LEVEL_IQD_ENA_IPAT, \ - QETH_IDX_FUNC_LEVEL_IQD_DIS_IPAT, \ - QETH_MAX_QUEUES, 0x103}, \ - {0x1731, 0x06, 0x1732, 0x06, QETH_CARD_TYPE_OSN, 0, \ - QETH_IDX_FUNC_LEVEL_OSAE_ENA_IPAT, \ - QETH_IDX_FUNC_LEVEL_OSAE_DIS_IPAT, \ - QETH_MAX_QUEUES, 0}, \ - {0, 0, 0, 0, 0, 0, 0, 0, 0} } + {{0x1731, 0x01, 0x1732, QETH_CARD_TYPE_OSD, QETH_MAX_QUEUES, 0}, \ + {0x1731, 0x05, 0x1732, QETH_CARD_TYPE_IQD, QETH_MAX_QUEUES, 0x103}, \ + {0x1731, 0x06, 0x1732, QETH_CARD_TYPE_OSN, QETH_MAX_QUEUES, 0}, \ + {0x1731, 0x02, 0x1732, QETH_CARD_TYPE_OSM, QETH_MAX_QUEUES, 0}, \ + {0x1731, 0x02, 0x1732, QETH_CARD_TYPE_OSX, QETH_MAX_QUEUES, 0}, \ + {0, 0, 0, 0, 0, 0} } +#define QETH_CU_TYPE_IND 0 +#define QETH_CU_MODEL_IND 1 +#define QETH_DEV_TYPE_IND 2 +#define QETH_DEV_MODEL_IND 3 +#define QETH_QUEUE_NO_IND 4 +#define QETH_MULTICAST_IND 5#define QETH_REAL_CARD 1#define QETH_VLAN_CARD 2
drivers/s390/net/qeth_core_main.c +144 -80
442 lines not on this page · raw message
drivers/s390/net/qeth_core_mpc.h +7 -3
@@ -48,9 +48,11 @@ extern unsigned char IPA_PDU_HEADER[];enum qeth_card_types {QETH_CARD_TYPE_UNKNOWN =0 , -QETH_CARD_TYPE_OSAE =10 , -QETH_CARD_TYPE_IQD =1234 , -QETH_CARD_TYPE_OSN =11 , +QETH_CARD_TYPE_OSD =1 , +QETH_CARD_TYPE_IQD =5 , +QETH_CARD_TYPE_OSN =6 , +QETH_CARD_TYPE_OSM =3 , +QETH_CARD_TYPE_OSX =2 , };#define QETH_MPC_DIFINFO_LEN_INDICATES_LINK_TYPE 0x18
@@ -614,6 +616,8 @@ extern unsigned char IDX_ACTIVATE_WRITE[#define QETH_IS_IDX_ACT_POS_REPLY (buffer) (((buffer)[0x08] & 3) == 2)#define QETH_IDX_REPLY_LEVEL (buffer) (buffer + 0x12)#define QETH_IDX_ACT_CAUSE_CODE (buffer) (buffer)[0x09] +#define QETH_IDX_ACT_ERR_EXCL 0x19 +#define QETH_IDX_ACT_ERR_AUTH 0x1E#define PDU_ENCAPSULATION (buffer) \ (buffer + *(buffer + (*(buffer + 0x0b)) + \
drivers/s390/net/qeth_core_sys.c +2 -1
@@ -490,7 +490,8 @@ static ssize_t qeth_dev_isolation_store(mutex_lock (&card->conf_mutex);/* check for unknown, too, in case we do not yet know who we are */ -if (card->info.type !=QETH_CARD_TYPE_OSAE && +if (card->info.type !=QETH_CARD_TYPE_OSD && + card->info.type !=QETH_CARD_TYPE_OSX && card->info.type !=QETH_CARD_TYPE_UNKNOWN ) { rc = -EOPNOTSUPP ; dev_err(&card->gdev->dev, "Adapter does not "
drivers/s390/net/qeth_l2_main.c +24 -10
@@ -56,7 +56,9 @@ static int qeth_l2_do_ioctl(struct net_d rc =qeth_snmp_command (card, rq->ifr_ifru.ifru_data);break ;case SIOC_QETH_GET_CARD_TYPE : -if ((card->info.type ==QETH_CARD_TYPE_OSAE ) && +if ((card->info.type ==QETH_CARD_TYPE_OSD || + card->info.type ==QETH_CARD_TYPE_OSM || + card->info.type ==QETH_CARD_TYPE_OSX ) && !card->info.guestlan)return 1 ;return 0 ;
@@ -309,6 +311,10 @@ static void qeth_l2_vlan_rx_add_vid(strustruct qeth_vlan_vid *id;QETH_DBF_TEXT_ (TRACE ,4 ,"aid:%d" , vid); +if (card->info.type ==QETH_CARD_TYPE_OSM ) { +QETH_DBF_TEXT (TRACE ,3 ,"aidOSM" ); +return ; + }if (qeth_wait_for_threads (card,QETH_RECOVER_THREAD )) {QETH_DBF_TEXT (TRACE ,3 ,"aidREC" );return ;
@@ -329,6 +335,10 @@ static void qeth_l2_vlan_rx_kill_vid(strstruct qeth_card *card = dev->ml_priv;QETH_DBF_TEXT_ (TRACE ,4 ,"kid:%d" , vid); +if (card->info.type ==QETH_CARD_TYPE_OSM ) { +QETH_DBF_TEXT (TRACE ,3 ,"kidOSM" ); +return ; + }if (qeth_wait_for_threads (card,QETH_RECOVER_THREAD )) {QETH_DBF_TEXT (TRACE ,3 ,"kidREC" );return ;
@@ -559,8 +569,10 @@ static int qeth_l2_request_initial_mac(s "device %s: x%x\n", CARD_BUS_ID(card), rc); } -if ((card->info.type ==QETH_CARD_TYPE_IQD ) || - (card->info.guestlan)) { +if (card->info.type ==QETH_CARD_TYPE_IQD || + card->info.type ==QETH_CARD_TYPE_OSM || + card->info.type ==QETH_CARD_TYPE_OSX || + card->info.guestlan) { rc =qeth_setadpparms_change_macaddr (card);if (rc) { QETH_DBF_MESSAGE(2, "couldn't get MAC address on "
@@ -589,8 +601,10 @@ static int qeth_l2_set_mac_address(strucreturn -EOPNOTSUPP ; } -if (card->info.type ==QETH_CARD_TYPE_OSN ) { -QETH_DBF_TEXT (TRACE ,3 ,"setmcOSN" ); +if (card->info.type ==QETH_CARD_TYPE_OSN || + card->info.type ==QETH_CARD_TYPE_OSM || + card->info.type ==QETH_CARD_TYPE_OSX ) { +QETH_DBF_TEXT (TRACE ,3 ,"setmcTYP" );return -EOPNOTSUPP ; }QETH_DBF_TEXT_ (TRACE ,3 ,"%s" ,CARD_BUS_ID (card));
@@ -885,9 +899,6 @@ static const struct net_device_ops qeth_static int qeth_l2_setup_netdev (struct qeth_card *card) {switch (card->info.type) { -case QETH_CARD_TYPE_OSAE : - card->dev =alloc_etherdev (0 ); -break ;case QETH_CARD_TYPE_IQD : card->dev =alloc_netdev (0 ,"hsi%d" , ether_setup);break ;
@@ -964,11 +975,14 @@ static int __qeth_l2_set_online(struct c }else card->lan_online =1 ; -if (card->info.type !=QETH_CARD_TYPE_OSN ) { +if ((card->info.type ==QETH_CARD_TYPE_OSD ) || + (card->info.type ==QETH_CARD_TYPE_OSX ))/* configure isolation level */ qeth_set_access_ctrl_online (card); + +if (card->info.type !=QETH_CARD_TYPE_OSN && + card->info.type !=QETH_CARD_TYPE_OSM )qeth_l2_process_vlans (card,0 ); - }netif_tx_disable (card->dev);
drivers/s390/net/qeth_l3_main.c +4 -2
@@ -2711,7 +2711,8 @@ static int qeth_l3_do_ioctl(struct net_d rc =qeth_snmp_command (card, rq->ifr_ifru.ifru_data);break ;case SIOC_QETH_GET_CARD_TYPE : -if ((card->info.type ==QETH_CARD_TYPE_OSAE ) && +if ((card->info.type ==QETH_CARD_TYPE_OSD || + card->info.type ==QETH_CARD_TYPE_OSX ) && !card->info.guestlan)return 1 ;return 0 ;
@@ -3248,7 +3249,8 @@ static const struct net_device_ops qeth_static int qeth_l3_setup_netdev (struct qeth_card *card) { -if (card->info.type ==QETH_CARD_TYPE_OSAE ) { +if (card->info.type ==QETH_CARD_TYPE_OSD || + card->info.type ==QETH_CARD_TYPE_OSX ) {if ((card->info.link_type ==QETH_LINK_TYPE_LANE_TR ) || (card->info.link_type ==QETH_LINK_TYPE_HSTR )) {#ifdef CONFIG_TR
David Miller
maintainerFrom: [email protected]
Date: Mon, 17 May 2010 09:15:12 +0200
Quoted 9 lines
I just got 2 more qeth patches for 2.6.35 (net-next). Hope they can make it into net-next before the merge window.
shortlog:
Ursula Braun (1)
qeth: support the new OSA CHPID types OSX and OSMJulia Lawall (1)
drivers/s390/net: Drop memory allocation cast
All applied, thanks.