OpenCloudOS-Kernel/drivers/net/ethernet
Antoine Tenart 08d02364b1 net: mscc: fix the injection header
When injecting frames in the Ocelot switch driver an injection header
(IFH) should be used to configure various parameters related to a given
frame, such as the port onto which the frame should be departed or its
vlan id. Other parameters in the switch configuration can led to an
injected frame being sent without an IFH but this led to various issues
as the per-frame parameters are then not used. This is especially true
when using multiple ports for injection.

The IFH was injected with the wrong endianness which led to the switch
not taking it into account as the IFH_INJ_BYPASS bit was then unset.
(The bit tells the switch to use the IFH over its internal
configuration). This patch fixes it.

In addition to the endianness fix, the IFH is also fixed. As it was
(unwillingly) unused, some of its fields were not configured the right
way.

Fixes: a556c76adc ("net: mscc: Add initial Ocelot switch support")
Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
Reviewed-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-06-21 10:29:46 +09:00
..
3com Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-05-21 16:01:54 -04:00
8390 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-05-21 16:01:54 -04:00
adaptec
aeroflex
agere
alacritech
allwinner
alteon
altera ethernet: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
amazon treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
amd treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
apm
apple
aquantia net: aquantia: fix unsigned numvecs comparison with less than zero 2018-06-08 18:45:52 -04:00
arc net: ethernet: arc: Fix a potential memory leak if an optional regulator is deferred 2018-03-20 12:06:23 -04:00
atheros treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
aurora
broadcom treewide: Use array_size() in vzalloc() 2018-06-12 16:19:22 -07:00
brocade treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
cadence drivers: net: Remove device_node checks with of_mdiobus_register() 2018-05-16 14:20:36 -04:00
calxeda treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
cavium Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-06-16 07:39:34 +09:00
chelsio Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-06-16 07:39:34 +09:00
cirrus
cisco enic: do not overwrite error code 2018-06-20 08:10:13 +09:00
cortina treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
davicom treewide: simplify Kconfig dependencies for removed archs 2018-03-26 15:55:57 +02:00
dec
dlink
emulex be2net: Fix error detection logic for BE3 2018-05-29 10:57:25 -04:00
ezchip
faraday net/ncsi: Silence debug messages 2018-06-20 07:26:58 +09:00
freescale treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
fujitsu
hisilicon treewide: Use array_size() in vzalloc() 2018-06-12 16:19:22 -07:00
hp
huawei treewide: Use array_size() in vzalloc() 2018-06-12 16:19:22 -07:00
i825xx
ibm treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
intel Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-06-21 07:13:42 +09:00
marvell net: mvpp2: mvpp2_percpu_read_relaxed() can be static 2018-06-04 11:36:29 -04:00
mediatek net: mediatek: use of_device_get_match_data() 2018-04-16 13:43:07 -04:00
mellanox Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-06-16 07:39:34 +09:00
micrel treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
microchip lan743x: make functions lan743x_csr_read and lan743x_csr_read static 2018-03-12 11:12:38 -04:00
moxa treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
mscc net: mscc: fix the injection header 2018-06-21 10:29:46 +09:00
myricom ethernet: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
natsemi net/sonic: Use dma_mapping_error() 2018-05-31 14:17:33 -04:00
neterion treewide: Use array_size() in vzalloc() 2018-06-12 16:19:22 -07:00
netronome Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-06-16 07:39:34 +09:00
ni treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
nuvoton
nvidia treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
nxp
oki-semi treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
packetengines
pasemi treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
qlogic qed: Do not advertise DCBX_LLD_MANAGED capability. 2018-06-20 07:15:34 +09:00
qualcomm net: qcom/emac: Add missing of_node_put() 2018-06-14 17:01:05 -07:00
rdc
realtek r8169: Fix netpoll oops 2018-06-21 09:55:54 +09:00
renesas sh_eth: use DIV_ROUND_UP() in sh_eth_soft_swap() 2018-06-04 15:23:25 -04:00
rocker rocker: rocker_main: Ignore bridge VLAN events 2018-05-31 14:13:43 -04:00
samsung ethernet: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
seeq
sfc treewide: Use array_size() in vzalloc() 2018-06-12 16:19:22 -07:00
sgi
silan
sis
smsc arch: remove obsolete architecture ports 2018-04-02 20:20:12 -07:00
socionext treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
stmicro stmmac: fix DMA channel hang in half-duplex mode 2018-06-20 14:35:20 +09:00
sun net: sungem: fix rx checksum support 2018-06-20 14:30:06 +09:00
synopsys
tehuti
ti net: davinci_emac: match the mdio device against its compatible if possible 2018-06-21 10:23:48 +09:00
toshiba treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
tundra
via
wiznet
xilinx net: emaclite: Remove xemaclite_mdio_setup return check 2018-06-14 17:08:03 -07:00
xircom
xscale
Kconfig net: ethernet: Sort Kconfig sourcing alphabetically 2018-05-21 12:14:47 -04:00
Makefile net: mscc: Add initial Ocelot switch support 2018-05-15 16:41:15 -04:00
dnet.c
dnet.h
ec_bhf.c ethernet: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
ethoc.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
fealnx.c
jme.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
jme.h
korina.c
lantiq_etop.c
netx-eth.c