net: atlantic: fix ip dst and ipv6 address filters
This patch fixes ip dst and ipv6 address filters. There were 2 mistakes in the code, which led to the issue: * invalid register was used for ipv4 dst address; * incorrect write order of dwords for ipv6 addresses. Fixes: 23e7a718a49b ("net: aquantia: add rx-flow filter definitions") Signed-off-by: Dmitry Bogdanov <dbogdanov@marvell.com> Signed-off-by: Mark Starovoytov <mstarovoitov@marvell.com> Signed-off-by: Alexander Lobakin <alobakin@marvell.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
086c18f245
commit
a42e6aee7f
@ -1700,7 +1700,7 @@ void hw_atl_rpfl3l4_ipv6_src_addr_set(struct aq_hw_s *aq_hw, u8 location,
|
|||||||
for (i = 0; i < 4; ++i)
|
for (i = 0; i < 4; ++i)
|
||||||
aq_hw_write_reg(aq_hw,
|
aq_hw_write_reg(aq_hw,
|
||||||
HW_ATL_RPF_L3_SRCA_ADR(location + i),
|
HW_ATL_RPF_L3_SRCA_ADR(location + i),
|
||||||
ipv6_src[i]);
|
ipv6_src[3 - i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void hw_atl_rpfl3l4_ipv6_dest_addr_set(struct aq_hw_s *aq_hw, u8 location,
|
void hw_atl_rpfl3l4_ipv6_dest_addr_set(struct aq_hw_s *aq_hw, u8 location,
|
||||||
@ -1711,7 +1711,7 @@ void hw_atl_rpfl3l4_ipv6_dest_addr_set(struct aq_hw_s *aq_hw, u8 location,
|
|||||||
for (i = 0; i < 4; ++i)
|
for (i = 0; i < 4; ++i)
|
||||||
aq_hw_write_reg(aq_hw,
|
aq_hw_write_reg(aq_hw,
|
||||||
HW_ATL_RPF_L3_DSTA_ADR(location + i),
|
HW_ATL_RPF_L3_DSTA_ADR(location + i),
|
||||||
ipv6_dest[i]);
|
ipv6_dest[3 - i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 hw_atl_sem_ram_get(struct aq_hw_s *self)
|
u32 hw_atl_sem_ram_get(struct aq_hw_s *self)
|
||||||
|
@ -1360,7 +1360,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* Register address for bitfield pif_rpf_l3_da0_i[31:0] */
|
/* Register address for bitfield pif_rpf_l3_da0_i[31:0] */
|
||||||
#define HW_ATL_RPF_L3_DSTA_ADR(filter) (0x000053B0 + (filter) * 0x4)
|
#define HW_ATL_RPF_L3_DSTA_ADR(filter) (0x000053D0 + (filter) * 0x4)
|
||||||
/* Bitmask for bitfield l3_da0[1F:0] */
|
/* Bitmask for bitfield l3_da0[1F:0] */
|
||||||
#define HW_ATL_RPF_L3_DSTA_MSK 0xFFFFFFFFu
|
#define HW_ATL_RPF_L3_DSTA_MSK 0xFFFFFFFFu
|
||||||
/* Inverted bitmask for bitfield l3_da0[1F:0] */
|
/* Inverted bitmask for bitfield l3_da0[1F:0] */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user