New upstream version 18.02
[deb_dpdk.git] / drivers / net / enic / base / vnic_rss.c
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright 2008-2017 Cisco Systems, Inc.  All rights reserved.
3  * Copyright 2007 Nuova Systems, Inc.  All rights reserved.
4  */
5
6 #include "enic_compat.h"
7 #include "vnic_rss.h"
8
9 void vnic_set_rss_key(union vnic_rss_key *rss_key, u8 *key)
10 {
11         u32 i;
12         u32 *p;
13         u16 *q;
14
15         for (i = 0; i < 4; ++i) {
16                 p = (u32 *)(key + (10 * i));
17                 iowrite32(*p++, &rss_key->key[i].b[0]);
18                 iowrite32(*p++, &rss_key->key[i].b[4]);
19                 q = (u16 *)p;
20                 iowrite32(*q, &rss_key->key[i].b[8]);
21         }
22 }
23