Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 13888
b: refs/heads/master
c: e08d88c
h: refs/heads/master
v: v3
  • Loading branch information
Frank Pavlic authored and Jeff Garzik committed Nov 11, 2005
1 parent d151fb0 commit fb508e3
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 18 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d805d7c692e414c3adf01bb414a8c542ac2e67d1
refs/heads/master: e08d88cccbe0dfcfbaffb704d24e19803407935d
12 changes: 6 additions & 6 deletions trunk/drivers/s390/net/qeth.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@

#include "qeth_mpc.h"

#define VERSION_QETH_H "$Revision: 1.151 $"
#define VERSION_QETH_H "$Revision: 1.152 $"

#ifdef CONFIG_QETH_IPV6
#define QETH_VERSION_IPV6 ":IPv6"
Expand Down Expand Up @@ -719,25 +719,25 @@ struct qeth_reply {
atomic_t refcnt;
};

#define QETH_BROADCAST_WITH_ECHO 1
#define QETH_BROADCAST_WITHOUT_ECHO 2

struct qeth_card_blkt {
int time_total;
int inter_packet;
int inter_packet_jumbo;
};



#define QETH_BROADCAST_WITH_ECHO 0x01
#define QETH_BROADCAST_WITHOUT_ECHO 0x02
#define QETH_LAYER2_MAC_READ 0x01
#define QETH_LAYER2_MAC_REGISTERED 0x02
struct qeth_card_info {
unsigned short unit_addr2;
unsigned short cula;
unsigned short chpid;
__u16 func_level;
char mcl_level[QETH_MCL_LENGTH + 1];
int guestlan;
int layer2_mac_registered;
int mac_bits;
int portname_required;
int portno;
char portname[9];
Expand Down
27 changes: 16 additions & 11 deletions trunk/drivers/s390/net/qeth_main.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
*
* linux/drivers/s390/net/qeth_main.c ($Revision: 1.238 $)
* linux/drivers/s390/net/qeth_main.c ($Revision: 1.242 $)
*
* Linux on zSeries OSA Express and HiperSockets support
*
Expand All @@ -12,7 +12,7 @@
* Frank Pavlic (pavlic@de.ibm.com) and
* Thomas Spatzier <tspat@de.ibm.com>
*
* $Revision: 1.238 $ $Date: 2005/05/04 20:19:18 $
* $Revision: 1.242 $ $Date: 2005/05/04 20:19:18 $
*
* 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
Expand Down Expand Up @@ -72,7 +72,7 @@
#include "qeth_eddp.h"
#include "qeth_tso.h"

#define VERSION_QETH_C "$Revision: 1.238 $"
#define VERSION_QETH_C "$Revision: 1.242 $"
static const char *version = "qeth S/390 OSA-Express driver";

/**
Expand Down Expand Up @@ -3775,7 +3775,7 @@ qeth_open(struct net_device *dev)

if ( (card->info.type != QETH_CARD_TYPE_OSN) &&
(card->options.layer2) &&
(!card->info.layer2_mac_registered)) {
(!(card->info.mac_bits & QETH_LAYER2_MAC_REGISTERED))) {
QETH_DBF_TEXT(trace,4,"nomacadr");
return -EPERM;
}
Expand Down Expand Up @@ -5894,10 +5894,10 @@ qeth_layer2_send_setmac_cb(struct qeth_card *card,
PRINT_WARN("Error in registering MAC address on " \
"device %s: x%x\n", CARD_BUS_ID(card),
cmd->hdr.return_code);
card->info.layer2_mac_registered = 0;
card->info.mac_bits &= ~QETH_LAYER2_MAC_REGISTERED;
cmd->hdr.return_code = -EIO;
} else {
card->info.layer2_mac_registered = 1;
card->info.mac_bits |= QETH_LAYER2_MAC_REGISTERED;
memcpy(card->dev->dev_addr,cmd->data.setdelmac.mac,
OSA_ADDR_LEN);
PRINT_INFO("MAC address %2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x "
Expand Down Expand Up @@ -5935,15 +5935,15 @@ qeth_layer2_send_delmac_cb(struct qeth_card *card,
cmd->hdr.return_code = -EIO;
return 0;
}
card->info.layer2_mac_registered = 0;
card->info.mac_bits &= ~QETH_LAYER2_MAC_REGISTERED;

return 0;
}
static int
qeth_layer2_send_delmac(struct qeth_card *card, __u8 *mac)
{
QETH_DBF_TEXT(trace, 2, "L2Delmac");
if (!card->info.layer2_mac_registered)
if (!(card->info.mac_bits & QETH_LAYER2_MAC_REGISTERED))
return 0;
return qeth_layer2_send_setdelmac(card, mac, IPA_CMD_DELVMAC,
qeth_layer2_send_delmac_cb);
Expand All @@ -5965,7 +5965,7 @@ qeth_layer2_set_mac_address(struct net_device *dev, void *p)
card = (struct qeth_card *) dev->priv;

if (!card->options.layer2) {
PRINT_WARN("Setting MAC address on %s is not supported"
PRINT_WARN("Setting MAC address on %s is not supported "
"in Layer 3 mode.\n", dev->name);
QETH_DBF_TEXT(trace, 3, "setmcLY3");
return -EOPNOTSUPP;
Expand Down Expand Up @@ -6550,8 +6550,13 @@ qeth_setadpparms_change_macaddr_cb(struct qeth_card *card,
QETH_DBF_TEXT(trace,4,"chgmaccb");

cmd = (struct qeth_ipa_cmd *) data;
memcpy(card->dev->dev_addr,
&cmd->data.setadapterparms.data.change_addr.addr,OSA_ADDR_LEN);
if (!card->options.layer2 || card->info.guestlan ||
!(card->info.mac_bits & QETH_LAYER2_MAC_READ)) {
memcpy(card->dev->dev_addr,
&cmd->data.setadapterparms.data.change_addr.addr,
OSA_ADDR_LEN);
card->info.mac_bits |= QETH_LAYER2_MAC_READ;
}
qeth_default_setadapterparms_cb(card, reply, (unsigned long) cmd);
return 0;
}
Expand Down

0 comments on commit fb508e3

Please sign in to comment.