lantiq: fix unaligned access in xrx200_poll_rx()

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
This commit is contained in:
Alexander Couzens 2017-01-28 17:23:16 +01:00 committed by Felix Fietkau
parent ec095b5bf3
commit 31b0640906

View File

@ -1190,8 +1190,8 @@ Subject: [PATCH 25/36] NET: MIPS: lantiq: adds xrx200-net
+ if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) == LTQ_DMA_C) { + if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) == LTQ_DMA_C) {
+#ifdef SW_ROUTING +#ifdef SW_ROUTING
+ struct sk_buff *skb = ch->skb[ch->dma.desc]; + struct sk_buff *skb = ch->skb[ch->dma.desc];
+ u32 *special_tag = (u32*)skb->data; + u8 *special_tag = (u8*)skb->data;
+ int port = (special_tag[1] >> SPPID_SHIFT) & SPPID_MASK; + int port = (special_tag[7] >> SPPID_SHIFT) & SPPID_MASK;
+ xrx200_hw_receive(ch, priv->hw->port_map[port]); + xrx200_hw_receive(ch, priv->hw->port_map[port]);
+#else +#else
+ xrx200_hw_receive(ch, 0); + xrx200_hw_receive(ch, 0);