| /linux-6.15/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_ih.c | 51 ih->ptr_mask = ih->ring_size - 1; in amdgpu_ih_ring_init() 52 ih->rptr = 0; in amdgpu_ih_ring_init() 70 ih->wptr_addr = dma_addr + ih->ring_size; in amdgpu_ih_ring_init() 71 ih->wptr_cpu = &ih->ring[ih->ring_size / 4]; in amdgpu_ih_ring_init() 72 ih->rptr_addr = dma_addr + ih->ring_size + 4; in amdgpu_ih_ring_init() 73 ih->rptr_cpu = &ih->ring[(ih->ring_size / 4) + 1]; in amdgpu_ih_ring_init() 89 &ih->ring_obj, &ih->gpu_addr, in amdgpu_ih_ring_init() 128 (void *)ih->ring, ih->gpu_addr); in amdgpu_ih_ring_fini() 131 amdgpu_bo_free_kernel(&ih->ring_obj, &ih->gpu_addr, in amdgpu_ih_ring_fini() 227 ih->rptr &= ih->ptr_mask; in amdgpu_ih_process() [all …]
|
| H A D | vega10_ih.c | 109 if (ih == &adev->irq.ih) in vega10_ih_toggle_ring_interrupts() 127 ih->rptr = 0; in vega10_ih_toggle_ring_interrupts() 222 if (ih == &adev->irq.ih) in vega10_ih_enable_ring() 235 if (ih == &adev->irq.ih) { in vega10_ih_enable_ring() 341 if (ih == &adev->irq.ih || ih == &adev->irq.ih_soft) { in vega10_ih_get_wptr() 368 amdgpu_ih_ring_name(adev, ih), wptr, ih->rptr, tmp); in vega10_ih_get_wptr() 403 if ((v < ih->ring_size) && (v != ih->rptr)) in vega10_ih_irq_rearm() 404 WDOORBELL32(ih->doorbell_index, ih->rptr); in vega10_ih_irq_rearm() 428 *ih->rptr_cpu = ih->rptr; in vega10_ih_set_rptr() 429 WDOORBELL32(ih->doorbell_index, ih->rptr); in vega10_ih_set_rptr() [all …]
|
| H A D | vega20_ih.c | 145 if (ih == &adev->irq.ih) in vega20_ih_toggle_ring_interrupts() 163 ih->rptr = 0; in vega20_ih_toggle_ring_interrupts() 258 if (ih == &adev->irq.ih) in vega20_ih_enable_ring() 271 if (ih == &adev->irq.ih) { in vega20_ih_enable_ring() 421 if (ih == &adev->irq.ih || ih == &adev->irq.ih_soft) { in vega20_ih_get_wptr() 448 amdgpu_ih_ring_name(adev, ih), wptr, ih->rptr, tmp); in vega20_ih_get_wptr() 484 if ((v < ih->ring_size) && (v != ih->rptr)) in vega20_ih_irq_rearm() 485 WDOORBELL32(ih->doorbell_index, ih->rptr); in vega20_ih_irq_rearm() 509 *ih->rptr_cpu = ih->rptr; in vega20_ih_set_rptr() 510 WDOORBELL32(ih->doorbell_index, ih->rptr); in vega20_ih_set_rptr() [all …]
|
| H A D | navi10_ih.c | 165 if (ih == &adev->irq.ih) in navi10_ih_toggle_ring_interrupts() 182 ih->rptr = 0; in navi10_ih_toggle_ring_interrupts() 277 if (ih == &adev->irq.ih) in navi10_ih_enable_ring() 291 if (ih == &adev->irq.ih) { in navi10_ih_enable_ring() 412 if (ih == &adev->irq.ih || ih == &adev->irq.ih_soft) { in navi10_ih_get_wptr() 438 amdgpu_ih_ring_name(adev, ih), wptr, ih->rptr, tmp); in navi10_ih_get_wptr() 473 if ((v < ih->ring_size) && (v != ih->rptr)) in navi10_ih_irq_rearm() 474 WDOORBELL32(ih->doorbell_index, ih->rptr); in navi10_ih_irq_rearm() 498 *ih->rptr_cpu = ih->rptr; in navi10_ih_set_rptr() 499 WDOORBELL32(ih->doorbell_index, ih->rptr); in navi10_ih_set_rptr() [all …]
|
| H A D | ih_v6_0.c | 167 if (ih == &adev->irq.ih) in ih_v6_0_toggle_ring_interrupts() 184 ih->rptr = 0; in ih_v6_0_toggle_ring_interrupts() 200 struct amdgpu_ih_ring *ih[] = {&adev->irq.ih, &adev->irq.ih1}; in ih_v6_0_toggle_interrupts() local 279 if (ih == &adev->irq.ih) in ih_v6_0_enable_ring() 295 if (ih == &adev->irq.ih) { in ih_v6_0_enable_ring() 459 ih->rptr = tmp; in ih_v6_0_get_wptr() 493 if ((v < ih->ring_size) && (v != ih->rptr)) in ih_v6_0_irq_rearm() 494 WDOORBELL32(ih->doorbell_index, ih->rptr); in ih_v6_0_irq_rearm() 515 *ih->rptr_cpu = ih->rptr; in ih_v6_0_set_rptr() 516 WDOORBELL32(ih->doorbell_index, ih->rptr); in ih_v6_0_set_rptr() [all …]
|
| H A D | ih_v6_1.c | 139 if (ih == &adev->irq.ih) in ih_v6_1_toggle_ring_interrupts() 156 ih->rptr = 0; in ih_v6_1_toggle_ring_interrupts() 172 struct amdgpu_ih_ring *ih[] = {&adev->irq.ih, &adev->irq.ih1}; in ih_v6_1_toggle_interrupts() local 251 if (ih == &adev->irq.ih) in ih_v6_1_enable_ring() 267 if (ih == &adev->irq.ih) { in ih_v6_1_enable_ring() 295 struct amdgpu_ih_ring *ih[] = {&adev->irq.ih, &adev->irq.ih1}; in ih_v6_1_irq_init() local 466 if ((v < ih->ring_size) && (v != ih->rptr)) in ih_v6_1_irq_rearm() 467 WDOORBELL32(ih->doorbell_index, ih->rptr); in ih_v6_1_irq_rearm() 488 *ih->rptr_cpu = ih->rptr; in ih_v6_1_set_rptr() 489 WDOORBELL32(ih->doorbell_index, ih->rptr); in ih_v6_1_set_rptr() [all …]
|
| H A D | ih_v7_0.c | 139 if (ih == &adev->irq.ih) in ih_v7_0_toggle_ring_interrupts() 156 ih->rptr = 0; in ih_v7_0_toggle_ring_interrupts() 172 struct amdgpu_ih_ring *ih[] = {&adev->irq.ih, &adev->irq.ih1}; in ih_v7_0_toggle_interrupts() local 251 if (ih == &adev->irq.ih) in ih_v7_0_enable_ring() 267 if (ih == &adev->irq.ih) { in ih_v7_0_enable_ring() 295 struct amdgpu_ih_ring *ih[] = {&adev->irq.ih, &adev->irq.ih1}; in ih_v7_0_irq_init() local 465 if ((v < ih->ring_size) && (v != ih->rptr)) in ih_v7_0_irq_rearm() 466 WDOORBELL32(ih->doorbell_index, ih->rptr); in ih_v7_0_irq_rearm() 485 *ih->rptr_cpu = ih->rptr; in ih_v7_0_set_rptr() 486 WDOORBELL32(ih->doorbell_index, ih->rptr); in ih_v7_0_set_rptr() [all …]
|
| H A D | amdgpu_ih.h | 87 u32 (*get_wptr)(struct amdgpu_device *adev, struct amdgpu_ih_ring *ih); 88 void (*decode_iv)(struct amdgpu_device *adev, struct amdgpu_ih_ring *ih, 90 uint64_t (*decode_iv_ts)(struct amdgpu_ih_ring *ih, u32 rptr, 92 void (*set_rptr)(struct amdgpu_device *adev, struct amdgpu_ih_ring *ih); 95 #define amdgpu_ih_get_wptr(adev, ih) (adev)->irq.ih_funcs->get_wptr((adev), (ih)) argument 97 (adev)->irq.ih_funcs->decode_iv((adev), (ih), (iv)) 98 #define amdgpu_ih_decode_iv_ts(adev, ih, rptr, offset) \ argument 100 (adev)->irq.ih_funcs->decode_iv_ts((ih), (rptr), (offset))) 101 #define amdgpu_ih_set_rptr(adev, ih) (adev)->irq.ih_funcs->set_rptr((adev), (ih)) argument 109 struct amdgpu_ih_ring *ih); [all …]
|
| H A D | tonga_ih.c | 67 adev->irq.ih.enabled = true; in tonga_ih_enable_interrupts() 87 adev->irq.ih.enabled = false; in tonga_ih_disable_interrupts() 88 adev->irq.ih.rptr = 0; in tonga_ih_disable_interrupts() 105 struct amdgpu_ih_ring *ih = &adev->irq.ih; in tonga_ih_irq_init() local 216 wptr, ih->rptr, (wptr + 16) & ih->ptr_mask); in tonga_ih_get_wptr() 217 ih->rptr = (wptr + 16) & ih->ptr_mask; in tonga_ih_get_wptr() 263 ih->rptr += 16; in tonga_ih_decode_iv() 277 if (ih->use_doorbell) { in tonga_ih_set_rptr() 279 *ih->rptr_cpu = ih->rptr; in tonga_ih_set_rptr() 280 WDOORBELL32(ih->doorbell_index, ih->rptr); in tonga_ih_set_rptr() [all …]
|
| H A D | si_ih.c | 44 adev->irq.ih.enabled = true; in si_ih_enable_interrupts() 58 adev->irq.ih.enabled = false; in si_ih_disable_interrupts() 59 adev->irq.ih.rptr = 0; in si_ih_disable_interrupts() 64 struct amdgpu_ih_ring *ih = &adev->irq.ih; in si_ih_irq_init() local 108 struct amdgpu_ih_ring *ih) in si_ih_get_wptr() argument 117 wptr, ih->rptr, (wptr + 16) & ih->ptr_mask); in si_ih_get_wptr() 118 ih->rptr = (wptr + 16) & ih->ptr_mask; in si_ih_get_wptr() 129 return (wptr & ih->ptr_mask); in si_ih_get_wptr() 136 u32 ring_index = ih->rptr >> 2; in si_ih_decode_iv() 150 ih->rptr += 16; in si_ih_decode_iv() [all …]
|
| H A D | cik_ih.c | 69 adev->irq.ih.enabled = true; in cik_ih_enable_interrupts() 91 adev->irq.ih.enabled = false; in cik_ih_disable_interrupts() 92 adev->irq.ih.rptr = 0; in cik_ih_disable_interrupts() 108 struct amdgpu_ih_ring *ih = &adev->irq.ih; in cik_ih_irq_init() local 189 struct amdgpu_ih_ring *ih) in cik_ih_get_wptr() argument 202 wptr, ih->rptr, (wptr + 16) & ih->ptr_mask); in cik_ih_get_wptr() 203 ih->rptr = (wptr + 16) & ih->ptr_mask; in cik_ih_get_wptr() 214 return (wptr & ih->ptr_mask); in cik_ih_get_wptr() 253 u32 ring_index = ih->rptr >> 2; in cik_ih_decode_iv() 269 ih->rptr += 16; in cik_ih_decode_iv() [all …]
|
| H A D | iceland_ih.c | 69 adev->irq.ih.enabled = true; in iceland_ih_enable_interrupts() 91 adev->irq.ih.enabled = false; in iceland_ih_disable_interrupts() 92 adev->irq.ih.rptr = 0; in iceland_ih_disable_interrupts() 108 struct amdgpu_ih_ring *ih = &adev->irq.ih; in iceland_ih_irq_init() local 212 wptr, ih->rptr, (wptr + 16) & ih->ptr_mask); in iceland_ih_get_wptr() 213 ih->rptr = (wptr + 16) & ih->ptr_mask; in iceland_ih_get_wptr() 225 return (wptr & ih->ptr_mask); in iceland_ih_get_wptr() 239 struct amdgpu_ih_ring *ih, in iceland_ih_decode_iv() argument 243 u32 ring_index = ih->rptr >> 2; in iceland_ih_decode_iv() 259 ih->rptr += 16; in iceland_ih_decode_iv() [all …]
|
| H A D | cz_ih.c | 69 adev->irq.ih.enabled = true; in cz_ih_enable_interrupts() 91 adev->irq.ih.enabled = false; in cz_ih_disable_interrupts() 92 adev->irq.ih.rptr = 0; in cz_ih_disable_interrupts() 108 struct amdgpu_ih_ring *ih = &adev->irq.ih; in cz_ih_irq_init() local 191 struct amdgpu_ih_ring *ih) in cz_ih_get_wptr() argument 213 wptr, ih->rptr, (wptr + 16) & ih->ptr_mask); in cz_ih_get_wptr() 214 ih->rptr = (wptr + 16) & ih->ptr_mask; in cz_ih_get_wptr() 226 return (wptr & ih->ptr_mask); in cz_ih_get_wptr() 244 u32 ring_index = ih->rptr >> 2; in cz_ih_decode_iv() 260 ih->rptr += 16; in cz_ih_decode_iv() [all …]
|
| H A D | amdgpu_irq.c | 170 ret = amdgpu_ih_process(adev, &adev->irq.ih); in amdgpu_irq_handler() 339 amdgpu_ih_ring_fini(adev, &adev->irq.ih); in amdgpu_irq_fini_hw() 437 struct amdgpu_ih_ring *ih) in amdgpu_irq_dispatch() argument 439 u32 ring_index = ih->rptr >> 2; in amdgpu_irq_dispatch() 446 entry.ih = ih; in amdgpu_irq_dispatch() 447 entry.iv_entry = (const uint32_t *)&ih->ring[ring_index]; in amdgpu_irq_dispatch() 458 trace_amdgpu_iv(ih - &adev->irq.ih, &entry); in amdgpu_irq_dispatch() 494 if (amdgpu_ih_ts_after(ih->processed_timestamp, entry.timestamp)) in amdgpu_irq_dispatch() 495 ih->processed_timestamp = entry.timestamp; in amdgpu_irq_dispatch()
|
| /linux-6.15/net/bridge/netfilter/ |
| H A D | ebt_log.c | 99 const struct iphdr *ih; in ebt_log_packet() local 102 ih = skb_header_pointer(skb, 0, sizeof(_iph), &_iph); in ebt_log_packet() 103 if (ih == NULL) { in ebt_log_packet() 108 &ih->saddr, &ih->daddr, ih->tos, ih->protocol); in ebt_log_packet() 109 print_ports(skb, ih->protocol, ih->ihl*4); in ebt_log_packet() 116 const struct ipv6hdr *ih; in ebt_log_packet() local 122 ih = skb_header_pointer(skb, 0, sizeof(_iph), &_iph); in ebt_log_packet() 123 if (ih == NULL) { in ebt_log_packet() 128 &ih->saddr, &ih->daddr, ih->priority, ih->nexthdr); in ebt_log_packet() 129 nexthdr = ih->nexthdr; in ebt_log_packet()
|
| H A D | ebt_ip.c | 41 const struct iphdr *ih; in ebt_ip_mt() local 46 ih = skb_header_pointer(skb, 0, sizeof(_iph), &_iph); in ebt_ip_mt() 47 if (ih == NULL) in ebt_ip_mt() 50 NF_INVF(info, EBT_IP_TOS, info->tos != ih->tos)) in ebt_ip_mt() 54 (ih->saddr & info->smsk) != info->saddr)) in ebt_ip_mt() 58 (ih->daddr & info->dmsk) != info->daddr)) in ebt_ip_mt() 61 if (NF_INVF(info, EBT_IP_PROTO, info->protocol != ih->protocol)) in ebt_ip_mt() 66 if (ntohs(ih->frag_off) & IP_OFFSET) in ebt_ip_mt() 70 pptr = skb_header_pointer(skb, ih->ihl*4, in ebt_ip_mt()
|
| H A D | ebt_among.c | 74 const struct iphdr *ih; in get_ip_dst() local 77 ih = skb_header_pointer(skb, 0, sizeof(_iph), &_iph); in get_ip_dst() 78 if (ih == NULL) in get_ip_dst() 80 *addr = ih->daddr; in get_ip_dst() 105 const struct iphdr *ih; in get_ip_src() local 108 ih = skb_header_pointer(skb, 0, sizeof(_iph), &_iph); in get_ip_src() 109 if (ih == NULL) in get_ip_src() 111 *addr = ih->saddr; in get_ip_src()
|
| /linux-6.15/net/netfilter/ |
| H A D | xt_AUDIT.c | 34 const struct iphdr *ih; in audit_ip4() local 36 ih = skb_header_pointer(skb, skb_network_offset(skb), sizeof(_iph), &_iph); in audit_ip4() 37 if (!ih) in audit_ip4() 41 &ih->saddr, &ih->daddr, ih->protocol); in audit_ip4() 49 const struct ipv6hdr *ih; in audit_ip6() local 53 ih = skb_header_pointer(skb, skb_network_offset(skb), sizeof(_ip6h), &_ip6h); in audit_ip6() 54 if (!ih) in audit_ip6() 57 nexthdr = ih->nexthdr; in audit_ip6() 61 &ih->saddr, &ih->daddr, nexthdr); in audit_ip6()
|
| H A D | nf_log_syslog.c | 305 const struct iphdr *ih; in dump_ipv4_packet() local 315 if (!ih) { in dump_ipv4_packet() 324 nf_log_buf_add(m, "SRC=%pI4 DST=%pI4 ", &ih->saddr, &ih->daddr); in dump_ipv4_packet() 328 iph_totlen(skb, ih), ih->tos & IPTOS_TOS_MASK, in dump_ipv4_packet() 329 ih->tos & IPTOS_PREC_MASK, ih->ttl, ntohs(ih->id)); in dump_ipv4_packet() 364 switch (ih->protocol) { in dump_ipv4_packet() 540 const struct ipv6hdr *ih; in dump_ipv6_packet() local 554 if (!ih) { in dump_ipv6_packet() 560 nf_log_buf_add(m, "SRC=%pI6 DST=%pI6 ", &ih->saddr, &ih->daddr); in dump_ipv6_packet() 566 ih->hop_limit, in dump_ipv6_packet() [all …]
|
| H A D | nft_log.c | 32 const struct iphdr *ih; in audit_ip4() local 34 ih = skb_header_pointer(skb, skb_network_offset(skb), sizeof(_iph), &_iph); in audit_ip4() 35 if (!ih) in audit_ip4() 39 &ih->saddr, &ih->daddr, ih->protocol); in audit_ip4() 47 const struct ipv6hdr *ih; in audit_ip6() local 51 ih = skb_header_pointer(skb, skb_network_offset(skb), sizeof(_ip6h), &_ip6h); in audit_ip6() 52 if (!ih) in audit_ip6() 55 nexthdr = ih->nexthdr; in audit_ip6() 59 &ih->saddr, &ih->daddr, nexthdr); in audit_ip6()
|
| H A D | nf_conntrack_proto_sctp.c | 263 struct sctp_inithdr _inithdr, *ih; in sctp_new() local 270 if (!ih) in sctp_new() 274 ih->init_tag); in sctp_new() 463 struct sctp_inithdr _ih, *ih; in nf_conntrack_sctp_packet() local 465 ih = skb_header_pointer(skb, offset + sizeof(_sch), sizeof(*ih), &_ih); in nf_conntrack_sctp_packet() 466 if (!ih) in nf_conntrack_sctp_packet() 474 ct->proto.sctp.vtag[!dir] = ih->init_tag; in nf_conntrack_sctp_packet() 485 struct sctp_inithdr _ih, *ih; in nf_conntrack_sctp_packet() local 488 ih = skb_header_pointer(skb, offset + sizeof(_sch), sizeof(*ih), &_ih); in nf_conntrack_sctp_packet() 489 if (!ih) in nf_conntrack_sctp_packet() [all …]
|
| /linux-6.15/net/netfilter/ipvs/ |
| H A D | ip_vs_proto.c | 221 struct iphdr _iph, *ih; in ip_vs_tcpudp_debug_packet_v4() local 224 if (ih == NULL) in ip_vs_tcpudp_debug_packet_v4() 227 sprintf(buf, "%pI4->%pI4 frag", &ih->saddr, &ih->daddr); in ip_vs_tcpudp_debug_packet_v4() 235 &ih->saddr, &ih->daddr); in ip_vs_tcpudp_debug_packet_v4() 238 &ih->saddr, ntohs(pptr[0]), in ip_vs_tcpudp_debug_packet_v4() 239 &ih->daddr, ntohs(pptr[1])); in ip_vs_tcpudp_debug_packet_v4() 253 struct ipv6hdr _iph, *ih; in ip_vs_tcpudp_debug_packet_v6() local 256 if (ih == NULL) in ip_vs_tcpudp_debug_packet_v6() 259 sprintf(buf, "%pI6c->%pI6c frag", &ih->saddr, &ih->daddr); in ip_vs_tcpudp_debug_packet_v6() 267 &ih->saddr, &ih->daddr); in ip_vs_tcpudp_debug_packet_v6() [all …]
|
| /linux-6.15/include/uapi/linux/ |
| H A D | coda.h | 322 struct coda_in_hdr ih; member 336 struct coda_in_hdr ih; member 347 struct coda_in_hdr ih; member 358 struct coda_in_hdr ih; member 369 struct coda_in_hdr ih; member 386 struct coda_in_hdr ih; member 398 struct coda_in_hdr ih; member 409 struct coda_in_hdr ih; member 425 struct coda_in_hdr ih; member 440 struct coda_in_hdr ih; member [all …]
|
| /linux-6.15/tools/testing/selftests/bpf/progs/ |
| H A D | xdp_features.c | 78 struct iphdr *ih = (struct iphdr *)(eh + 1); in xdp_process_echo_packet() local 84 ih = (struct iphdr *)(eh + 1); in xdp_process_echo_packet() 85 if (ih + 1 > (struct iphdr *)data_end) in xdp_process_echo_packet() 88 if (saddr != ih->saddr) in xdp_process_echo_packet() 91 if (daddr != ih->daddr) in xdp_process_echo_packet() 94 if (ih->protocol != IPPROTO_UDP) in xdp_process_echo_packet() 97 uh = (struct udphdr *)(ih + 1); in xdp_process_echo_packet()
|
| /linux-6.15/drivers/gpu/drm/amd/display/amdgpu_dm/ |
| H A D | amdgpu_dm_irq.c | 100 void (*ih)(void *), in init_handler_common_data() 104 hcd->handler = ih; in init_handler_common_data() 132 void *ih, in remove_irq_handler() argument 164 if (ih == handler->handler) { in remove_irq_handler() 185 ih, int_params->irq_source, int_params->int_context); in remove_irq_handler() 241 void (*ih)(void *)) in validate_irq_registration_params() 243 if (NULL == int_params || NULL == ih) { in validate_irq_registration_params() 304 void (*ih)(void *), in amdgpu_dm_irq_register_interrupt() 371 void *ih) in amdgpu_dm_irq_unregister_interrupt() argument 388 handler_list = remove_irq_handler(adev, ih, &int_params); in amdgpu_dm_irq_unregister_interrupt() [all …]
|