mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-30 07:34:12 +08:00
s390/qeth: clean up CREATE_ADDR cmd code
Properly define the cmd's struct to get rid of some casts and accesses at magic offsets. Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com> Reviewed-by: Alexandra Winter <wintera@linux.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
6bbfece5a4
commit
9c6dc7af85
@ -550,8 +550,9 @@ struct qeth_ipacmd_setadpparms {
|
||||
|
||||
/* CREATE_ADDR IPA Command: ***********************************************/
|
||||
struct qeth_create_destroy_address {
|
||||
__u8 unique_id[8];
|
||||
} __attribute__ ((packed));
|
||||
u8 mac_addr[ETH_ALEN];
|
||||
u16 uid;
|
||||
};
|
||||
|
||||
/* SET DIAGNOSTIC ASSIST IPA Command: *************************************/
|
||||
|
||||
|
@ -922,7 +922,7 @@ static int qeth_l3_iqd_read_initial_mac_cb(struct qeth_card *card,
|
||||
return -EIO;
|
||||
|
||||
ether_addr_copy(card->dev->dev_addr,
|
||||
cmd->data.create_destroy_addr.unique_id);
|
||||
cmd->data.create_destroy_addr.mac_addr);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -949,8 +949,7 @@ static int qeth_l3_get_unique_id_cb(struct qeth_card *card,
|
||||
struct qeth_ipa_cmd *cmd = (struct qeth_ipa_cmd *) data;
|
||||
|
||||
if (cmd->hdr.return_code == 0) {
|
||||
card->info.unique_id = *((__u16 *)
|
||||
&cmd->data.create_destroy_addr.unique_id[6]);
|
||||
card->info.unique_id = cmd->data.create_destroy_addr.uid;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -964,7 +963,6 @@ static int qeth_l3_get_unique_id(struct qeth_card *card)
|
||||
{
|
||||
int rc = 0;
|
||||
struct qeth_cmd_buffer *iob;
|
||||
struct qeth_ipa_cmd *cmd;
|
||||
|
||||
QETH_CARD_TEXT(card, 2, "guniqeid");
|
||||
|
||||
@ -978,10 +976,8 @@ static int qeth_l3_get_unique_id(struct qeth_card *card)
|
||||
IPA_DATA_SIZEOF(create_destroy_addr));
|
||||
if (!iob)
|
||||
return -ENOMEM;
|
||||
cmd = __ipa_cmd(iob);
|
||||
*((__u16 *) &cmd->data.create_destroy_addr.unique_id[6]) =
|
||||
card->info.unique_id;
|
||||
|
||||
__ipa_cmd(iob)->data.create_destroy_addr.uid = card->info.unique_id;
|
||||
rc = qeth_send_ipa_cmd(card, iob, qeth_l3_get_unique_id_cb, NULL);
|
||||
return rc;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user