/linux-6.12.1/drivers/net/ethernet/mediatek/ |
D | mtk_eth_soc.c | 292 void mtk_w32(struct mtk_eth *eth, u32 val, unsigned reg) in mtk_w32() argument 294 __raw_writel(val, eth->base + reg); in mtk_w32() 297 u32 mtk_r32(struct mtk_eth *eth, unsigned reg) in mtk_r32() argument 299 return __raw_readl(eth->base + reg); in mtk_r32() 302 u32 mtk_m32(struct mtk_eth *eth, u32 mask, u32 set, unsigned int reg) in mtk_m32() argument 306 val = mtk_r32(eth, reg); in mtk_m32() 309 mtk_w32(eth, val, reg); in mtk_m32() 313 static int mtk_mdio_busy_wait(struct mtk_eth *eth) in mtk_mdio_busy_wait() argument 318 if (!(mtk_r32(eth, MTK_PHY_IAC) & PHY_IAC_ACCESS)) in mtk_mdio_busy_wait() 325 dev_err(eth->dev, "mdio: MDIO timeout\n"); in mtk_mdio_busy_wait() [all …]
|
D | mtk_eth_path.c | 18 int (*set_path)(struct mtk_eth *eth, u64 path); 43 static int set_mux_gdm1_to_gmac1_esw(struct mtk_eth *eth, u64 path) in set_mux_gdm1_to_gmac1_esw() argument 62 if (mtk_is_netsys_v3_or_greater(eth)) in set_mux_gdm1_to_gmac1_esw() 68 mtk_m32(eth, mask, set, reg); in set_mux_gdm1_to_gmac1_esw() 70 dev_dbg(eth->dev, "path %s in %s updated = %d\n", in set_mux_gdm1_to_gmac1_esw() 76 static int set_mux_gmac2_gmac0_to_gephy(struct mtk_eth *eth, u64 path) in set_mux_gmac2_gmac0_to_gephy() argument 91 regmap_update_bits(eth->infra, INFRA_MISC2, GEPHY_MAC_SEL, val); in set_mux_gmac2_gmac0_to_gephy() 93 dev_dbg(eth->dev, "path %s in %s updated = %d\n", in set_mux_gmac2_gmac0_to_gephy() 99 static int set_mux_u3_gmac2_to_qphy(struct mtk_eth *eth, u64 path) in set_mux_u3_gmac2_to_qphy() argument 106 if (MTK_HAS_CAPS(eth->soc->caps, MTK_U3_COPHY_V2)) { in set_mux_u3_gmac2_to_qphy() [all …]
|
D | airoha_eth.c | 789 struct airoha_eth *eth; member 850 #define airoha_fe_rr(eth, offset) \ argument 851 airoha_rr((eth)->fe_regs, (offset)) 852 #define airoha_fe_wr(eth, offset, val) \ argument 853 airoha_wr((eth)->fe_regs, (offset), (val)) 854 #define airoha_fe_rmw(eth, offset, mask, val) \ argument 855 airoha_rmw((eth)->fe_regs, (offset), (mask), (val)) 856 #define airoha_fe_set(eth, offset, val) \ argument 857 airoha_rmw((eth)->fe_regs, (offset), 0, (val)) 858 #define airoha_fe_clear(eth, offset, val) \ argument [all …]
|
D | mtk_ppe_offload.c | 17 struct ethhdr eth; member 55 mtk_flow_set_ipv4_addr(struct mtk_eth *eth, struct mtk_foe_entry *foe, in mtk_flow_set_ipv4_addr() argument 58 return mtk_foe_entry_set_ipv4_tuple(eth, foe, egress, in mtk_flow_set_ipv4_addr() 64 mtk_flow_set_ipv6_addr(struct mtk_eth *eth, struct mtk_foe_entry *foe, in mtk_flow_set_ipv6_addr() argument 67 return mtk_foe_entry_set_ipv6_tuple(eth, foe, in mtk_flow_set_ipv6_addr() 73 mtk_flow_offload_mangle_eth(const struct flow_action_entry *act, void *eth) in mtk_flow_offload_mangle_eth() argument 75 void *dest = eth + act->mangle.offset; in mtk_flow_offload_mangle_eth() 187 mtk_flow_set_output_device(struct mtk_eth *eth, struct mtk_foe_entry *foe, in mtk_flow_set_output_device() argument 195 mtk_foe_entry_set_wdma(eth, foe, info.wdma_idx, info.queue, in mtk_flow_set_output_device() 197 if (mtk_is_netsys_v2_or_greater(eth)) { in mtk_flow_set_output_device() [all …]
|
D | mtk_ppe.c | 61 static u32 mtk_eth_timestamp(struct mtk_eth *eth) in mtk_eth_timestamp() argument 63 return mtk_r32(eth, 0x0010) & mtk_get_ib1_ts_mask(eth); in mtk_eth_timestamp() 112 if (mtk_is_netsys_v3_or_greater(ppe->eth)) { in mtk_mib_entry_read() 144 static u32 mtk_ppe_hash_entry(struct mtk_eth *eth, struct mtk_foe_entry *e) in mtk_ppe_hash_entry() argument 149 switch (mtk_get_ib1_pkt_type(eth, e->ib1)) { in mtk_ppe_hash_entry() 178 hash <<= (ffs(eth->soc->hash_offset) - 1); in mtk_ppe_hash_entry() 185 mtk_foe_entry_l2(struct mtk_eth *eth, struct mtk_foe_entry *entry) in mtk_foe_entry_l2() argument 187 int type = mtk_get_ib1_pkt_type(eth, entry->ib1); in mtk_foe_entry_l2() 199 mtk_foe_entry_ib2(struct mtk_eth *eth, struct mtk_foe_entry *entry) in mtk_foe_entry_ib2() argument 201 int type = mtk_get_ib1_pkt_type(eth, entry->ib1); in mtk_foe_entry_ib2() [all …]
|
D | mtk_eth_soc.h | 332 #define TX_DMA_PLEN0(x) (((x) & eth->soc->tx.dma_max_len) << eth->soc->tx.dma_len_offset) 333 #define TX_DMA_PLEN1(x) ((x) & eth->soc->tx.dma_max_len) 353 #define RX_DMA_PREP_PLEN0(x) (((x) & eth->soc->rx.dma_max_len) << eth->soc->rx.dma_len_offset) 354 #define RX_DMA_GET_PLEN0(x) (((x) >> eth->soc->rx.dma_len_offset) & eth->soc->rx.dma_max_len) 1325 static inline bool mtk_is_netsys_v1(struct mtk_eth *eth) in mtk_is_netsys_v1() argument 1327 return eth->soc->version == 1; in mtk_is_netsys_v1() 1330 static inline bool mtk_is_netsys_v2_or_greater(struct mtk_eth *eth) in mtk_is_netsys_v2_or_greater() argument 1332 return eth->soc->version > 1; in mtk_is_netsys_v2_or_greater() 1335 static inline bool mtk_is_netsys_v3_or_greater(struct mtk_eth *eth) in mtk_is_netsys_v3_or_greater() argument 1337 return eth->soc->version > 2; in mtk_is_netsys_v3_or_greater() [all …]
|
D | mtk_ppe.h | 325 struct mtk_eth *eth; member 346 struct mtk_ppe *mtk_ppe_init(struct mtk_eth *eth, void __iomem *base, int index); 348 void mtk_ppe_deinit(struct mtk_eth *eth); 375 int mtk_foe_entry_prepare(struct mtk_eth *eth, struct mtk_foe_entry *entry, 378 int mtk_foe_entry_set_pse_port(struct mtk_eth *eth, 380 int mtk_foe_entry_set_ipv4_tuple(struct mtk_eth *eth, 384 int mtk_foe_entry_set_ipv6_tuple(struct mtk_eth *eth, 388 int mtk_foe_entry_set_dsa(struct mtk_eth *eth, struct mtk_foe_entry *entry, 390 int mtk_foe_entry_set_vlan(struct mtk_eth *eth, struct mtk_foe_entry *entry, 392 int mtk_foe_entry_set_pppoe(struct mtk_eth *eth, struct mtk_foe_entry *entry, [all …]
|
/linux-6.12.1/samples/bpf/ |
D | tc_l2_redirect_kern.c | 63 struct eth_hdr *eth = data; in _l2_to_iptun_ingress_forward() local 69 if (data + sizeof(*eth) > data_end) in _l2_to_iptun_ingress_forward() 76 if (eth->h_proto == htons(ETH_P_IP)) { in _l2_to_iptun_ingress_forward() 78 struct iphdr *iph = data + sizeof(*eth); in _l2_to_iptun_ingress_forward() 80 if (data + sizeof(*eth) + sizeof(*iph) > data_end) in _l2_to_iptun_ingress_forward() 89 } else if (eth->h_proto == htons(ETH_P_IPV6)) { in _l2_to_iptun_ingress_forward() 91 struct ipv6hdr *ip6h = data + sizeof(*eth); in _l2_to_iptun_ingress_forward() 93 if (data + sizeof(*eth) + sizeof(*ip6h) > data_end) in _l2_to_iptun_ingress_forward() 114 struct eth_hdr *eth = data; in _l2_to_iptun_ingress_redirect() local 120 if (data + sizeof(*eth) > data_end) in _l2_to_iptun_ingress_redirect() [all …]
|
D | parse_simple.c | 30 struct eth_hdr *eth = data; in handle_ingress() local 31 struct iphdr *iph = data + sizeof(*eth); in handle_ingress() 32 struct udphdr *udp = data + sizeof(*eth) + sizeof(*iph); in handle_ingress() 36 if (data + sizeof(*eth) + sizeof(*iph) + sizeof(*udp) > data_end) in handle_ingress() 39 if (eth->h_proto != htons(ETH_P_IP)) in handle_ingress()
|
D | xdp_adjust_tail_kern.c | 50 struct ethhdr *eth; in swap_mac() local 52 eth = data; in swap_mac() 53 memcpy(eth->h_source, orig_eth->h_dest, ETH_ALEN); in swap_mac() 54 memcpy(eth->h_dest, orig_eth->h_source, ETH_ALEN); in swap_mac() 55 eth->h_proto = orig_eth->h_proto; in swap_mac() 141 struct ethhdr *eth = data; in _xdp_icmp() local 144 if (eth + 1 > data_end) in _xdp_icmp() 147 h_proto = eth->h_proto; in _xdp_icmp()
|
D | test_cgrp2_tc.bpf.c | 31 struct eth_hdr *eth = data; in handle_egress() local 32 struct ipv6hdr *ip6h = data + sizeof(*eth); in handle_egress() 39 if (data + sizeof(*eth) + sizeof(*ip6h) > data_end) in handle_egress() 42 if (eth->h_proto != bpf_htons(ETH_P_IPV6) || in handle_egress() 45 eth->h_proto, ip6h->nexthdr); in handle_egress()
|
/linux-6.12.1/tools/testing/selftests/bpf/progs/ |
D | xdp_hw_metadata.c | 35 struct ethhdr *eth; in rx() local 40 eth = data; in rx() 42 if (eth + 1 < data_end && (eth->h_proto == bpf_htons(ETH_P_8021AD) || in rx() 43 eth->h_proto == bpf_htons(ETH_P_8021Q))) in rx() 44 eth = (void *)eth + sizeof(struct vlan_hdr); in rx() 46 if (eth + 1 < data_end && eth->h_proto == bpf_htons(ETH_P_8021Q)) in rx() 47 eth = (void *)eth + sizeof(struct vlan_hdr); in rx() 49 if (eth + 1 < data_end) { in rx() 50 if (eth->h_proto == bpf_htons(ETH_P_IP)) { in rx() 51 iph = (void *)(eth + 1); in rx() [all …]
|
D | test_tc_link.c | 31 struct ethhdr eth = {}; in tc1() local 35 if (bpf_skb_load_bytes(skb, 0, ð, sizeof(eth))) in tc1() 37 seen_eth = eth.h_proto == bpf_htons(ETH_P_IP); in tc1() 40 eth.h_dest[0] = 4; in tc1() 41 if (bpf_skb_store_bytes(skb, 0, ð, sizeof(eth), 0)) in tc1() 89 struct ethhdr eth = {}; in tc7() local 93 if (bpf_skb_load_bytes(skb, 0, ð, sizeof(eth))) in tc7() 95 if (eth.h_dest[0] == 4 && set_type) { in tc7()
|
D | xdping_kern.c | 64 struct ethhdr *eth = data; in icmp_check() local 68 if (data + sizeof(*eth) + sizeof(*iph) + ICMP_ECHO_LEN > data_end) in icmp_check() 71 if (eth->h_proto != bpf_htons(ETH_P_IP)) in icmp_check() 74 iph = data + sizeof(*eth); in icmp_check() 82 icmph = data + sizeof(*eth) + sizeof(*iph); in icmp_check() 95 struct ethhdr *eth = data; in xdping_client() local 109 iph = data + sizeof(*eth); in xdping_client() 110 icmph = data + sizeof(*eth) + sizeof(*iph); in xdping_client() 157 struct ethhdr *eth = data; in xdping_server() local 168 iph = data + sizeof(*eth); in xdping_server() [all …]
|
D | xdp_metadata.c | 35 struct ethhdr *eth = NULL; in rx() local 44 eth = data; in rx() 45 if (eth + 1 < data_end) { in rx() 46 if (eth->h_proto == bpf_htons(ETH_P_IP)) { in rx() 47 iph = (void *)(eth + 1); in rx() 51 if (eth->h_proto == bpf_htons(ETH_P_IPV6)) { in rx() 52 ip6h = (void *)(eth + 1); in rx()
|
D | xdp_redirect_multi_kern.c | 43 struct ethhdr *eth = data; in xdp_redirect_map_multi_prog() local 47 nh_off = sizeof(*eth); in xdp_redirect_map_multi_prog() 51 h_proto = eth->h_proto; in xdp_redirect_map_multi_prog() 79 struct ethhdr *eth = data; in xdp_devmap_prog() local 83 nh_off = sizeof(*eth); in xdp_devmap_prog() 89 __builtin_memcpy(eth->h_source, mac, ETH_ALEN); in xdp_devmap_prog()
|
/linux-6.12.1/net/ethernet/ |
D | eth.c | 83 struct ethhdr *eth = skb_push(skb, ETH_HLEN); in eth_header() local 86 eth->h_proto = htons(type); in eth_header() 88 eth->h_proto = htons(len); in eth_header() 96 memcpy(eth->h_source, saddr, ETH_ALEN); in eth_header() 99 memcpy(eth->h_dest, daddr, ETH_ALEN); in eth_header() 108 eth_zero_addr(eth->h_dest); in eth_header() 128 const struct ethhdr *eth = (const struct ethhdr *)data; in eth_get_headlen() local 132 if (unlikely(len < sizeof(*eth))) in eth_get_headlen() 137 eth->h_proto, sizeof(*eth), in eth_get_headlen() 139 return max_t(u32, keys.control.thoff, sizeof(*eth)); in eth_get_headlen() [all …]
|
/linux-6.12.1/drivers/net/ethernet/freescale/dpaa2/ |
D | Makefile | 6 obj-$(CONFIG_FSL_DPAA2_ETH) += fsl-dpaa2-eth.o 10 fsl-dpaa2-eth-objs := dpaa2-eth.o dpaa2-ethtool.o dpni.o dpaa2-mac.o dpmac.o dpaa2-eth-devlink.o dp… 11 fsl-dpaa2-eth-${CONFIG_FSL_DPAA2_ETH_DCB} += dpaa2-eth-dcb.o 12 fsl-dpaa2-eth-${CONFIG_DEBUG_FS} += dpaa2-eth-debugfs.o 17 CFLAGS_dpaa2-eth.o := -I$(src)
|
/linux-6.12.1/drivers/infiniband/hw/mlx4/ |
D | ah.c | 93 memcpy(ah->av.eth.mac, ah_attr->roce.dmac, ETH_ALEN); in create_iboe_ah() 94 eth_zero_addr(ah->av.eth.s_mac); in create_iboe_ah() 103 &ah->av.eth.s_mac[0]); in create_iboe_ah() 110 ah->av.eth.gid_index = ret; in create_iboe_ah() 113 ah->av.eth.gid_index = ah_attr->grh.sgid_index; in create_iboe_ah() 118 ah->av.eth.port_pd = cpu_to_be32(to_mpd(ib_ah->pd)->pdn | in create_iboe_ah() 120 ah->av.eth.vlan = cpu_to_be16(vlan_tag); in create_iboe_ah() 121 ah->av.eth.hop_limit = grh->hop_limit; in create_iboe_ah() 123 ah->av.eth.stat_rate = rdma_ah_get_static_rate(ah_attr) + in create_iboe_ah() 125 while (ah->av.eth.stat_rate > IB_RATE_2_5_GBPS + MLX4_STAT_RATE_OFFSET && in create_iboe_ah() [all …]
|
/linux-6.12.1/drivers/net/ethernet/sgi/ |
D | meth.c | 109 mace->eth.mac_addr = macaddr; in load_eaddr() 116 while ((___rval = mace->eth.phy_data) & MDIO_BUSY) { \ 124 mace->eth.phy_regs = (priv->phy_addr << 5) | (phyreg & 0x1f); in mdio_read() 126 mace->eth.phy_trans_go = 1; in mdio_read() 195 mace->eth.mac_ctrl = priv->mac_ctrl; in meth_check_link() 204 mace->eth.mac_ctrl = priv->mac_ctrl; in meth_check_link() 218 mace->eth.tx_ring_base = priv->tx_ring_dma; in meth_init_tx_ring() 239 mace->eth.rx_fifo = priv->rx_ring_dmas[i]; in meth_init_rx_ring() 276 mace->eth.mac_ctrl = SGI_MAC_RESET; in meth_reset() 278 mace->eth.mac_ctrl = 0; in meth_reset() [all …]
|
/linux-6.12.1/arch/mips/cavium-octeon/ |
D | octeon-platform.c | 482 static void __init octeon_fdt_set_phy(int eth, int phy_addr) in octeon_fdt_set_phy() argument 494 phy_handle = fdt_getprop(initial_boot_params, eth, "phy-handle", NULL); in octeon_fdt_set_phy() 501 alt_phy_handle = fdt_getprop(initial_boot_params, eth, "cavium,alt-phy-handle", NULL); in octeon_fdt_set_phy() 512 fdt_nop_property(initial_boot_params, eth, "phy-handle"); in octeon_fdt_set_phy() 514 fdt_nop_property(initial_boot_params, eth, "cavium,alt-phy-handle"); in octeon_fdt_set_phy() 528 phy_prop = fdt_get_property(initial_boot_params, eth, "phy-handle", NULL); in octeon_fdt_set_phy() 531 fdt_nop_property(initial_boot_params, eth, "phy-handle"); in octeon_fdt_set_phy() 532 alt_prop = fdt_get_property_w(initial_boot_params, eth, "cavium,alt-phy-handle", NULL); in octeon_fdt_set_phy() 610 static void __init _octeon_rx_tx_delay(int eth, int rx_delay, int tx_delay) in _octeon_rx_tx_delay() argument 612 fdt_setprop_inplace_cell(initial_boot_params, eth, "rx-delay", in _octeon_rx_tx_delay() [all …]
|
/linux-6.12.1/tools/testing/selftests/bpf/prog_tests/ |
D | flow_dissector.c | 44 struct ethhdr eth; member 50 struct ethhdr eth; member 57 struct ethhdr eth; member 65 struct ethhdr eth; member 71 struct ethhdr eth; member 83 struct ethhdr eth; member 114 .eth.h_proto = __bpf_constant_htons(ETH_P_IP), 136 .eth.h_proto = __bpf_constant_htons(ETH_P_IPV6), 157 .eth.h_proto = __bpf_constant_htons(ETH_P_8021Q), 180 .eth.h_proto = __bpf_constant_htons(ETH_P_8021AD), [all …]
|
/linux-6.12.1/drivers/net/wireless/marvell/mwifiex/ |
D | sta_rx.c | 27 struct ethhdr *eth; in mwifiex_discard_gratuitous_arp() local 31 eth = (struct ethhdr *)skb->data; in mwifiex_discard_gratuitous_arp() 32 switch (ntohs(eth->h_proto)) { in mwifiex_discard_gratuitous_arp() 78 struct ethhdr *eth; in mwifiex_process_rx_packet() local 115 eth = (struct ethhdr *) in mwifiex_process_rx_packet() 123 memcpy(eth->h_source, rx_pkt_hdr->eth803_hdr.h_source, in mwifiex_process_rx_packet() 124 sizeof(eth->h_source)); in mwifiex_process_rx_packet() 125 memcpy(eth->h_dest, rx_pkt_hdr->eth803_hdr.h_dest, in mwifiex_process_rx_packet() 126 sizeof(eth->h_dest)); in mwifiex_process_rx_packet() 130 hdr_chop = (u8 *) eth - (u8 *) local_rx_pd; in mwifiex_process_rx_packet()
|
/linux-6.12.1/drivers/infiniband/hw/ocrdma/ |
D | ocrdma_ah.c | 78 struct ocrdma_eth_vlan eth; in set_av_attr() local 90 memset(ð, 0, sizeof(eth)); in set_av_attr() 108 eth.eth_type = cpu_to_be16(0x8100); in set_av_attr() 109 eth.roce_eth_type = cpu_to_be16(proto_num); in set_av_attr() 111 eth.vlan_tag = cpu_to_be16(vlan_tag); in set_av_attr() 115 eth.eth_type = cpu_to_be16(proto_num); in set_av_attr() 119 memcpy(ð.smac[0], &dev->nic_info.mac_addr[0], ETH_ALEN); in set_av_attr() 120 status = ocrdma_resolve_dmac(dev, attr, ð.dmac[0]); in set_av_attr() 126 memcpy(&ah->av->eth_hdr, ð, eth_sz); in set_av_attr()
|
/linux-6.12.1/arch/arm/mach-at91/ |
D | pm.c | 111 struct at91_pm_quirk_eth eth[AT91_PM_MAX_ETH]; member 328 static bool at91_pm_eth_quirk_is_valid(struct at91_pm_quirk_eth *eth) in at91_pm_eth_quirk_is_valid() argument 333 if (!eth->np) in at91_pm_eth_quirk_is_valid() 337 if (!(eth->modes & BIT(soc_pm.data.mode))) in at91_pm_eth_quirk_is_valid() 340 if (!eth->dev) { in at91_pm_eth_quirk_is_valid() 342 pdev = of_find_device_by_node(eth->np); in at91_pm_eth_quirk_is_valid() 346 eth->dev = &pdev->dev; in at91_pm_eth_quirk_is_valid() 350 if (!device_may_wakeup(eth->dev)) in at91_pm_eth_quirk_is_valid() 358 struct at91_pm_quirk_eth *eth; in at91_pm_config_quirks() local 372 eth = &soc_pm.quirks.eth[i]; in at91_pm_config_quirks() [all …]
|