arch/arm/src/stm32h7/stm32_ethernet.c: Correct stm32h7 mac address filtering. Correct the MAC address 0 register definition and remove the 'receive all' flag. Now the Ethernet driver only receives packets addressed to correct MAC.

This commit is contained in:
Jukka Laitinen
2019-08-28 08:41:06 -06:00
committed by Gregory Nutt
parent 6c5b8a70a7
commit cf5c02aa4e
2 changed files with 3 additions and 5 deletions
@@ -70,8 +70,8 @@
#define STM32_ETH_MACMDIOAR_OFFSET 0x0200 /* Ethernet MAC MDIO address register */
#define STM32_ETH_MACMDIODR_OFFSET 0x0204 /* Ethernet MAC MDIO data register */
#define STM32_ETH_MACA0HR_OFFSET 0x0300 /* Address 0 high register */
#define STM32_ETH_MACA0LR_OFFSET 0x0304 /* Address 0 low register */
#define STM32_ETH_MACA0HR_OFFSET 0x0308 /* Address 0 high register */
/* MTL Registers */
+2 -4
View File
@@ -411,12 +411,10 @@
* ETH_MACPFR_SAIF Source address inverse filtering 0 (not used)
* ETH_MACPFR_SAF Source address filter 0 (disabled)
* ETH_MACPFR_HPF Hash or perfect filter 0 (Only matching frames passed)
* ETH_MACPFR_RA Receive all 1 (enabled)
* ETH_MACPFR_RA Receive all 0 (disabled)
*/
/* TODO: use proper mac filtering and not RA */
#define MACPFR_SET_BITS (ETH_MACPFR_RA | ETH_MACPFR_PCF_PAUSE)
#define MACPFR_SET_BITS (ETH_MACPFR_PCF_PAUSE)
/* Clear the MACQTXFCR and MACRXFCR bits that will be setup during MAC
* initialization (or that are cleared unconditionally). Per the reference