Регистры Allwinner H616

Сокращения  |  Дерево шин  |  Карта памяти


EMAC_RX_FRM_FLT
6.1. EMAC Receive Frame Filter Register - адрес: 0x5020038 0x5030038 (смещение: 0x0038)

Контроллер Ethernet: список регистров



31 ||||||||||||||||| 16
15 ||||||||||||||||| 00

  DIS_ADDR_FILTER

Bit 31
R/W
0x0

Disable Address Filter
0: Enable
1: Disable


  Unused

Bits 30 : 18

  DIS_BROADCAST

Bit 17
R/W
0x0

Disable Receive Broadcast Frames
0: Receive
1: Drop


  RX_ALL_MULTICAST

Bit 16
R/W
0x0

Receive All Multicast Frames Filter
0: Filter according to HASH_MULTICAST
1: Receive All


  Unused

Bits 15 : 14

  CTL_FRM_FILTER

Bits 13 : 12
R/W
0x0

Receive Control Frames Filter
00: Drop all control frames
01: Drop all control frames
10: Receive all control frames
11: Receive all control frames when pass the address filter


  Unused

Bits 11 : 10

  HASH_MULTICAST

Bit 9
R/W
0x0

Filter Multicast Frames Set
0: by comparing the DA field in DA MAC address registers
1: according to the hash table


  HASH_UNICAST

Bit 8
R/W
0x0

Filter Unicast Frames Set
0: by comparing the DA field in DA MAC address registers
1: according to the hash table


  Unused

Bit 7

  SA_FILTER_EN

Bit 6
R/W
0x0

Receive SA Filter Enable
0: Receive frames and update the result of SA filter
1: Update the result of SA filter. In addition, if the SA field of received frame
does not match the values in SA MAC address registers, drop this frame.


  SA_INV_FILTER

Bit 5
R/W
0x0

Receive SA Invert Filter Set
0: Pass Frames whose SA field matches SA MAC address registers
1: Pass Frames whose SA field not matches SA MAC address registers


  DA_INV_FILTER

Bit 4
R/W
0x0

0: Normal filtering of frames is performed
1: Filter both unicast and multicast frames by comparing DA field in inverse filtering mode


  Unused

Bits 3 : 2

  FLT_MD

Bit 1
R/W
0x0

0: If the HASH_MULTICAST or HASH_UNICAST is set, the frame is passed only when it matches the Hash filter
1: Receive the frame when it passes the address register filter or the hash
filter(set by HASH_MULTICAST or HASH_UNICAST)


  RX_ALL

Bit 0
R/W
0x0

Receive All Frame Enable
0: Receive the frames that pass the SA/DA address filter
1: Receive all frames and update the result of address filter(pass or fail) in the receive status word



Команда U-Boot для чтения регистра

md 5020038 1
md 5030038 1



Bit fields structure

typedef union  emac_rx_frm_flt
{
  struct
  {
   unsigned rx_all : 1;
   unsigned flt_md : 1;
   unsigned unused0 : 2;
   unsigned da_inv_filter : 1;
   unsigned sa_inv_filter : 1;
   unsigned sa_filter_en : 1;
   unsigned unused1 : 1;
   unsigned hash_unicast : 1;
   unsigned hash_multicast : 1;
   unsigned unused2 : 2;
   unsigned ctl_frm_filter : 2;
   unsigned unused3 : 2;
   unsigned rx_all_multicast : 1;
   unsigned dis_broadcast : 1;
   unsigned unused4 : 13;
   unsigned dis_addr_filter : 1;
  } b;
   unsigned long w;
} EMAC_RX_FRM_FLT
   

Allwinner H616 Manual