Skip to contentSkip to conversation

s390: qeth driver hardware specs adaptions

PATCH NAK Frank Pavlic 1 participant 1 message Apr 30, 2007

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 5/5 s390: qeth driver hardware specs adaptions

From: Peter Tiedemann <[email protected]>

s390: qeth driver hardware specs adaptions
- according to the latest OSA hardware specification incorporate actual IPA command and return codes into qeth.
- whitespaces removed from qeth_mpc.h

---
 qeth_main.c |   26 +++++--
 qeth_mpc.c  |  101 +++++++++++++++++++++++++++
 qeth_mpc.h  |  219 ++++++++++++++++++++++++++++++++++--------------------------
 3 files changed, 247 insertions(+), 99 deletions(-)
drivers/s390/net/qeth_main.c +19 -7
index 0d10ee0..6be98b1 100644
@@ -1615,6 +1615,21 @@ qeth_put_reply(struct qeth_reply *reply)
 		kfree(reply);
 }
 
+static void
+qeth_issue_ipa_msg(struct qeth_ipa_cmd *cmd, struct qeth_card *card)
+{
+	int rc;
+	int com;
+	char * ipa_name;
+
+	com = cmd->hdr.command;
+	rc  = cmd->hdr.return_code;
+	ipa_name = qeth_get_ipa_cmd_name(com);
+
+	PRINT_ERR("%s(x%X) for %s returned x%X \"%s\"\n", ipa_name, com,
+		   QETH_CARD_IFNAME(card), rc, qeth_get_ipa_msg(rc));
+}
+
 static struct qeth_ipa_cmd *
 qeth_check_ipa_data(struct qeth_card *card, struct qeth_cmd_buffer *iob)
 {
@@ -1623,8 +1638,11 @@ qeth_check_ipa_data(struct qeth_card *card, struct qeth_cmd_buffer *iob)
 	QETH_DBF_TEXT(trace,5,"chkipad");
 	if (IS_IPA(iob->data)){
 		cmd = (struct qeth_ipa_cmd *) PDU_ENCAPSULATION(iob->data);
-		if (IS_IPA_REPLY(cmd))
+		if (IS_IPA_REPLY(cmd)) {
+			if (cmd->hdr.return_code)
+				qeth_issue_ipa_msg(cmd, card);
 			return cmd;
+		}
 		else {
 			switch (cmd->hdr.command) {
 			case IPA_CMD_STOPLAN:
@@ -5883,9 +5901,6 @@ qeth_layer2_send_setmac_cb(struct qeth_card *card,
 	cmd = (struct qeth_ipa_cmd *) data;
 	if (cmd->hdr.return_code) {
 		QETH_DBF_TEXT_(trace, 2, "L2er%x", cmd->hdr.return_code);
-		PRINT_WARN("Error in registering MAC address on " \
-			   "device %s: x%x\n", CARD_BUS_ID(card),
-			   cmd->hdr.return_code);
 		card->info.mac_bits &= ~QETH_LAYER2_MAC_REGISTERED;
 		cmd->hdr.return_code = -EIO;
 	} else {
@@ -5920,9 +5935,6 @@ qeth_layer2_send_delmac_cb(struct qeth_card *card,
 	QETH_DBF_TEXT(trace, 2, "L2Dmaccb");
 	cmd = (struct qeth_ipa_cmd *) data;
 	if (cmd->hdr.return_code) {
-		PRINT_WARN("Error in deregistering MAC address on " \
-			   "device %s: x%x\n", CARD_BUS_ID(card),
-			   cmd->hdr.return_code);
 		QETH_DBF_TEXT_(trace, 2, "err%d", cmd->hdr.return_code);
 		cmd->hdr.return_code = -EIO;
 		return 0;
drivers/s390/net/qeth_mpc.c +101 -0

113 lines not on this page · raw message

drivers/s390/net/qeth_mpc.h +127 -92

286 lines not on this page · raw message

Signature · 1 line
1.5.1.2