/linux/drivers/thunderbolt/ ! |
H A D | tunnel.c | 15 #include "tunnel.h" 75 * seconds after tunnel is established. Since at least i915 can runtime 137 /* Add some credits for potential second DMA tunnel */ in tb_available_credits() 179 struct tb_tunnel *tunnel; in tb_tunnel_alloc() local 181 tunnel = kzalloc(sizeof(*tunnel), GFP_KERNEL); in tb_tunnel_alloc() 182 if (!tunnel) in tb_tunnel_alloc() 185 tunnel->paths = kcalloc(npaths, sizeof(tunnel->paths[0]), GFP_KERNEL); in tb_tunnel_alloc() 186 if (!tunnel in tb_tunnel_alloc() 200 tb_tunnel_get(struct tb_tunnel * tunnel) tb_tunnel_get() argument 209 struct tb_tunnel *tunnel = container_of(kref, typeof(*tunnel), kref); tb_tunnel_destroy() local 224 tb_tunnel_put(struct tb_tunnel * tunnel) tb_tunnel_put() argument 278 tb_tunnel_set_active(struct tb_tunnel * tunnel,bool active) tb_tunnel_set_active() argument 291 tb_tunnel_changed(struct tb_tunnel * tunnel) tb_tunnel_changed() argument 297 tb_pci_set_ext_encapsulation(struct tb_tunnel * tunnel,bool enable) tb_pci_set_ext_encapsulation() argument 331 tb_pci_activate(struct tb_tunnel * tunnel,bool activate) tb_pci_activate() argument 424 struct tb_tunnel *tunnel; tb_tunnel_discover_pci() local 504 struct tb_tunnel *tunnel; tb_tunnel_alloc_pci() local 780 tb_dp_xchg_caps(struct tb_tunnel * tunnel) tb_dp_xchg_caps() argument 879 tb_dp_bandwidth_alloc_mode_enable(struct tb_tunnel * tunnel) tb_dp_bandwidth_alloc_mode_enable() argument 981 tb_dp_pre_activate(struct tb_tunnel * tunnel) tb_dp_pre_activate() argument 1007 tb_dp_post_deactivate(struct tb_tunnel * tunnel) tb_dp_post_deactivate() argument 1025 tb_dp_wait_dprx(struct tb_tunnel * tunnel,int timeout_msec) tb_dp_wait_dprx() argument 1055 struct tb_tunnel *tunnel = container_of(work, typeof(*tunnel), dprx_work.work); tb_dp_dprx_work() local 1078 tb_dp_dprx_start(struct tb_tunnel * tunnel) tb_dp_dprx_start() argument 1098 tb_dp_dprx_stop(struct tb_tunnel * tunnel) tb_dp_dprx_stop() argument 1108 tb_dp_activate(struct tb_tunnel * tunnel,bool active) tb_dp_activate() argument 1156 tb_dp_bandwidth_mode_maximum_bandwidth(struct tb_tunnel * tunnel,int * max_bw_rounded) tb_dp_bandwidth_mode_maximum_bandwidth() argument 1190 tb_dp_bandwidth_mode_consumed_bandwidth(struct tb_tunnel * tunnel,int * consumed_up,int * consumed_down) tb_dp_bandwidth_mode_consumed_bandwidth() argument 1226 tb_dp_allocated_bandwidth(struct tb_tunnel * tunnel,int * allocated_up,int * allocated_down) tb_dp_allocated_bandwidth() argument 1264 tb_dp_alloc_bandwidth(struct tb_tunnel * tunnel,int * alloc_up,int * alloc_down) tb_dp_alloc_bandwidth() argument 1300 tb_dp_read_cap(struct tb_tunnel * tunnel,unsigned int cap,u32 * rate,u32 * lanes) tb_dp_read_cap() argument 1331 tb_dp_maximum_bandwidth(struct tb_tunnel * tunnel,int * max_up,int * max_down) tb_dp_maximum_bandwidth() argument 1354 tb_dp_consumed_bandwidth(struct tb_tunnel * tunnel,int * consumed_up,int * consumed_down) tb_dp_consumed_bandwidth() argument 1499 tb_dp_dump(struct tb_tunnel * tunnel) tb_dp_dump() argument 1555 struct tb_tunnel *tunnel; tb_tunnel_discover_dp() local 1659 struct tb_tunnel *tunnel; tb_tunnel_alloc_dp() local 1841 tb_dma_destroy(struct tb_tunnel * tunnel) tb_dma_destroy() argument 1871 struct tb_tunnel *tunnel; tb_tunnel_alloc_dma() local 1943 tb_tunnel_match_dma(const struct tb_tunnel * tunnel,int transmit_path,int transmit_ring,int receive_path,int receive_ring) tb_tunnel_match_dma() argument 2006 tb_usb3_pre_activate(struct tb_tunnel * tunnel) tb_usb3_pre_activate() argument 2016 tb_usb3_activate(struct tb_tunnel * tunnel,bool activate) tb_usb3_activate() argument 2030 tb_usb3_consumed_bandwidth(struct tb_tunnel * tunnel,int * consumed_up,int * consumed_down) tb_usb3_consumed_bandwidth() argument 2053 tb_usb3_release_unused_bandwidth(struct tb_tunnel * tunnel) tb_usb3_release_unused_bandwidth() argument 2068 tb_usb3_reclaim_available_bandwidth(struct tb_tunnel * tunnel,int * available_up,int * available_down) tb_usb3_reclaim_available_bandwidth() argument 2169 struct tb_tunnel *tunnel; tb_tunnel_discover_usb3() local 2275 struct tb_tunnel *tunnel; tb_tunnel_alloc_usb3() local 2341 tb_tunnel_is_invalid(struct tb_tunnel * tunnel) tb_tunnel_is_invalid() argument 2363 tb_tunnel_activate(struct tb_tunnel * tunnel) tb_tunnel_activate() argument 2416 tb_tunnel_deactivate(struct tb_tunnel * tunnel) tb_tunnel_deactivate() argument 2444 tb_tunnel_port_on_path(const struct tb_tunnel * tunnel,const struct tb_port * port) tb_tunnel_port_on_path() argument 2461 tb_tunnel_is_activated(const struct tb_tunnel * tunnel) tb_tunnel_is_activated() argument 2476 tb_tunnel_maximum_bandwidth(struct tb_tunnel * tunnel,int * max_up,int * max_down) tb_tunnel_maximum_bandwidth() argument 2497 tb_tunnel_allocated_bandwidth(struct tb_tunnel * tunnel,int * allocated_up,int * allocated_down) tb_tunnel_allocated_bandwidth() argument 2520 tb_tunnel_alloc_bandwidth(struct tb_tunnel * tunnel,int * alloc_up,int * alloc_down) tb_tunnel_alloc_bandwidth() argument 2552 tb_tunnel_consumed_bandwidth(struct tb_tunnel * tunnel,int * consumed_up,int * consumed_down) tb_tunnel_consumed_bandwidth() argument 2590 tb_tunnel_release_unused_bandwidth(struct tb_tunnel * tunnel) tb_tunnel_release_unused_bandwidth() argument 2617 tb_tunnel_reclaim_available_bandwidth(struct tb_tunnel * tunnel,int * available_up,int * available_down) tb_tunnel_reclaim_available_bandwidth() argument 2629 tb_tunnel_type_name(const struct tb_tunnel * tunnel) tb_tunnel_type_name() argument [all...] |
H A D | tunnel.h | 22 * enum tb_tunnel_state - State of a tunnel 23 * @TB_TUNNEL_INACTIVE: tb_tunnel_activate() is not called for the tunnel 24 * @TB_TUNNEL_ACTIVATING: tb_tunnel_activate() returned successfully for the tunnel 25 * @TB_TUNNEL_ACTIVE: The tunnel is fully active 34 * struct tb_tunnel - Tunnel between two ports 37 * @src_port: Source port of the tunnel 38 * @dst_port: Destination port of the tunnel. For discovered incomplete 40 * @paths: All paths required by the tunnel 42 * @pre_activate: Optional tunnel specific initialization called before 44 * @activate: Optional tunnel specifi 150 tb_tunnel_is_active(const struct tb_tunnel * tunnel) tb_tunnel_is_active() argument 171 tb_tunnel_is_pci(const struct tb_tunnel * tunnel) tb_tunnel_is_pci() argument 176 tb_tunnel_is_dp(const struct tb_tunnel * tunnel) tb_tunnel_is_dp() argument 181 tb_tunnel_is_dma(const struct tb_tunnel * tunnel) tb_tunnel_is_dma() argument 186 tb_tunnel_is_usb3(const struct tb_tunnel * tunnel) tb_tunnel_is_usb3() argument 191 tb_tunnel_direction_downstream(const struct tb_tunnel * tunnel) tb_tunnel_direction_downstream() argument 222 __TB_TUNNEL_PRINT(level,tunnel,fmt,arg...) global() argument 234 tb_tunnel_WARN(tunnel,fmt,arg...) global() argument 236 tb_tunnel_warn(tunnel,fmt,arg...) global() argument 238 tb_tunnel_info(tunnel,fmt,arg...) global() argument 240 tb_tunnel_dbg(tunnel,fmt,arg...) global() argument [all...] |
H A D | tb.c | 17 #include "tunnel.h" 24 * retried if the DP tunnel is still activating. 175 struct tb_tunnel *tunnel; in tb_discover_dp_resources() local 177 list_for_each_entry(tunnel, &tcm->tunnel_list, list) { in tb_discover_dp_resources() 178 if (tb_tunnel_is_dp(tunnel)) in tb_discover_dp_resources() 179 tb_discover_dp_resource(tb, tunnel->dst_port); in tb_discover_dp_resources() 188 const struct tb_tunnel *tunnel; in tb_enable_clx() local 209 * tunnel and in that case bail out. in tb_enable_clx() 211 list_for_each_entry(tunnel, &tcm->tunnel_list, list) { in tb_enable_clx() 212 if (tb_tunnel_is_dma(tunnel)) { in tb_enable_clx() 283 tb_increase_tmu_accuracy(struct tb_tunnel * tunnel) tb_increase_tmu_accuracy() argument 386 struct tb_tunnel *tunnel = NULL; tb_switch_discover_tunnels() local 499 struct tb_tunnel *tunnel; tb_find_tunnel() local 561 struct tb_tunnel *tunnel; tb_consumed_usb3_pcie_bandwidth() local 614 struct tb_tunnel *tunnel; tb_consumed_dp_bandwidth() local 866 struct tb_tunnel *tunnel; tb_release_unused_usb3_bandwidth() local 876 struct tb_tunnel *tunnel; tb_reclaim_usb3_bandwidth() local 907 struct tb_tunnel *tunnel; tb_tunnel_usb3() local 1437 struct tb_tunnel *tunnel; tb_recalc_estimated_bandwidth_for_group() local 1537 struct tb_tunnel *tunnel; __configure_group_sym() local 1618 struct tb_tunnel *tunnel; tb_attach_bandwidth_group() local 1689 struct tb_tunnel *tunnel; tb_discover_tunnels() local 1714 tb_deactivate_and_free_tunnel(struct tb_tunnel * tunnel) tb_deactivate_and_free_tunnel() argument 1770 struct tb_tunnel *tunnel; tb_free_invalid_tunnels() local 1898 tb_dp_tunnel_active(struct tb_tunnel * tunnel,void * data) tb_dp_tunnel_active() argument 1968 struct tb_tunnel *tunnel; tb_tunnel_one_dp() local 2174 struct tb_tunnel *tunnel; tb_dp_resource_unavailable() local 2226 struct tb_tunnel *tunnel, *n; tb_disconnect_and_release_dp() local 2248 struct tb_tunnel *tunnel; tb_disconnect_pci() local 2271 struct tb_tunnel *tunnel; tb_tunnel_pci() local 2317 struct tb_tunnel *tunnel; tb_approve_xdomain_paths() local 2366 struct tb_tunnel *tunnel, *n; __tb_disconnect_xdomain_paths() local 2525 tb_alloc_dp_bandwidth(struct tb_tunnel * tunnel,int * requested_up,int * requested_down) tb_alloc_dp_bandwidth() argument 2727 struct tb_tunnel *tunnel; tb_handle_dp_bandwidth_request() local 2928 struct tb_tunnel *tunnel; tb_stop() local 3108 struct tb_tunnel *tunnel, *n; tb_resume_noirq() local 3251 struct tb_tunnel *tunnel, *n; tb_runtime_resume() local [all...] |
H A D | test.c | 13 #include "tunnel.h" 1341 * Create PCIe tunnel between host and two devices. in tb_test_tunnel_pcie() 1393 struct tb_tunnel *tunnel; in tb_test_tunnel_dp() local 1396 * Create DP tunnel between Host and Device in tb_test_tunnel_dp() 1409 tunnel = tb_tunnel_alloc_dp(NULL, in, out, 1, 0, 0, NULL, NULL); in tb_test_tunnel_dp() 1410 KUNIT_ASSERT_NOT_NULL(test, tunnel); in tb_test_tunnel_dp() 1411 KUNIT_EXPECT_EQ(test, tunnel->type, TB_TUNNEL_DP); in tb_test_tunnel_dp() 1412 KUNIT_EXPECT_PTR_EQ(test, tunnel->src_port, in); in tb_test_tunnel_dp() 1413 KUNIT_EXPECT_PTR_EQ(test, tunnel->dst_port, out); in tb_test_tunnel_dp() 1414 KUNIT_ASSERT_EQ(test, tunnel in tb_test_tunnel_dp() 1431 struct tb_tunnel *tunnel; tb_test_tunnel_dp_chain() local 1477 struct tb_tunnel *tunnel; tb_test_tunnel_dp_tree() local 1528 struct tb_tunnel *tunnel; tb_test_tunnel_dp_max_length() local 1792 struct tb_tunnel *tunnel; tb_test_tunnel_dma() local 1835 struct tb_tunnel *tunnel; tb_test_tunnel_dma_rx() local 1872 struct tb_tunnel *tunnel; tb_test_tunnel_dma_tx() local 1910 struct tb_tunnel *tunnel; tb_test_tunnel_dma_chain() local 1975 struct tb_tunnel *tunnel; tb_test_tunnel_dma_match() local 2027 struct tb_tunnel *tunnel; tb_test_credit_alloc_legacy_not_bonded() local 2060 struct tb_tunnel *tunnel; tb_test_credit_alloc_legacy_bonded() local 2093 struct tb_tunnel *tunnel; tb_test_credit_alloc_pcie() local 2126 struct tb_tunnel *tunnel; tb_test_credit_alloc_without_dp() local 2176 struct tb_tunnel *tunnel; tb_test_credit_alloc_dp() local 2220 struct tb_tunnel *tunnel; tb_test_credit_alloc_usb3() local 2253 struct tb_tunnel *tunnel; tb_test_credit_alloc_dma() local [all...] |
/linux/drivers/gpu/drm/display/ ! |
H A D | drm_dp_tunnel.c | 302 const char *drm_dp_tunnel_name(const struct drm_dp_tunnel *tunnel) in drm_dp_tunnel_name() argument 304 return tunnel->name; in drm_dp_tunnel_name() 321 * A tunnel group with 0 group ID shouldn't have more than one in lookup_or_alloc_group() 334 "DPTUN: Can't allocate more tunnel groups\n"); in lookup_or_alloc_group() 365 tunnel_get(struct drm_dp_tunnel *tunnel) in tunnel_get() argument 367 kref_get(&tunnel->kref); in tunnel_get() 369 return tunnel; in tunnel_get() 374 struct drm_dp_tunnel *tunnel = container_of(kref, typeof(*tunnel), kref); in free_tunnel() local 375 struct drm_dp_tunnel_group *group = tunnel in free_tunnel() 384 tunnel_put(struct drm_dp_tunnel * tunnel) tunnel_put() argument 390 track_tunnel_ref(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) track_tunnel_ref() argument 397 untrack_tunnel_ref(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) untrack_tunnel_ref() argument 404 track_tunnel_ref(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) track_tunnel_ref() argument 409 untrack_tunnel_ref(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) untrack_tunnel_ref() argument 429 drm_dp_tunnel_get(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) drm_dp_tunnel_get() argument 446 drm_dp_tunnel_put(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) drm_dp_tunnel_put() argument 457 add_tunnel_to_group(struct drm_dp_tunnel_mgr * mgr,u8 drv_group_id,struct drm_dp_tunnel * tunnel) add_tunnel_to_group() argument 477 struct drm_dp_tunnel *tunnel; create_tunnel() local 523 destroy_tunnel(struct drm_dp_tunnel * tunnel) destroy_tunnel() argument 542 drm_dp_tunnel_set_io_error(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_set_io_error() argument 616 tunnel_allocated_bw(const struct drm_dp_tunnel * tunnel) tunnel_allocated_bw() argument 621 tunnel_info_changes_are_valid(struct drm_dp_tunnel * tunnel,const struct drm_dp_tunnel_regs * regs,unsigned int flags) tunnel_info_changes_are_valid() argument 680 read_and_verify_tunnel_regs(struct drm_dp_tunnel * tunnel,struct drm_dp_tunnel_regs * regs,unsigned int flags) read_and_verify_tunnel_regs() argument 702 update_dprx_caps(struct drm_dp_tunnel * tunnel,const struct drm_dp_tunnel_regs * regs) update_dprx_caps() argument 727 get_max_dprx_bw(const struct drm_dp_tunnel * tunnel) get_max_dprx_bw() argument 741 get_max_tunnel_bw(const struct drm_dp_tunnel * tunnel) get_max_tunnel_bw() argument 762 struct drm_dp_tunnel *tunnel; drm_dp_tunnel_detect() local 810 drm_dp_tunnel_destroy(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_destroy() argument 827 check_tunnel(const struct drm_dp_tunnel * tunnel) check_tunnel() argument 840 struct drm_dp_tunnel *tunnel; group_allocated_bw() local 857 group_free_bw(const struct drm_dp_tunnel * tunnel) group_free_bw() argument 862 calc_group_available_bw(const struct drm_dp_tunnel * tunnel) calc_group_available_bw() argument 868 update_group_available_bw(struct drm_dp_tunnel * tunnel,const struct drm_dp_tunnel_regs * regs) update_group_available_bw() argument 912 set_bw_alloc_mode(struct drm_dp_tunnel * tunnel,bool enable) set_bw_alloc_mode() argument 946 drm_dp_tunnel_enable_bw_alloc(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_enable_bw_alloc() argument 1007 drm_dp_tunnel_disable_bw_alloc(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_disable_bw_alloc() argument 1033 drm_dp_tunnel_bw_alloc_is_enabled(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_bw_alloc_is_enabled() argument 1073 allocate_tunnel_bw(struct drm_dp_tunnel * tunnel,int bw) allocate_tunnel_bw() argument 1161 drm_dp_tunnel_alloc_bw(struct drm_dp_tunnel * tunnel,int bw) drm_dp_tunnel_alloc_bw() argument 1185 drm_dp_tunnel_get_allocated_bw(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_get_allocated_bw() argument 1195 check_and_clear_status_change(struct drm_dp_tunnel * tunnel) check_and_clear_status_change() argument 1242 drm_dp_tunnel_update_state(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_update_state() argument 1328 drm_dp_tunnel_max_dprx_rate(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_max_dprx_rate() argument 1345 drm_dp_tunnel_max_dprx_lane_count(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_max_dprx_lane_count() argument 1365 drm_dp_tunnel_available_bw(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_available_bw() argument 1373 drm_dp_tunnel_atomic_get_group_state(struct drm_atomic_state * state,const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_atomic_get_group_state() argument 1382 add_tunnel_state(struct drm_dp_tunnel_group_state * group_state,struct drm_dp_tunnel * tunnel) add_tunnel_state() argument 1431 get_tunnel_state(struct drm_dp_tunnel_group_state * group_state,const struct drm_dp_tunnel * tunnel) get_tunnel_state() argument 1444 get_or_add_tunnel_state(struct drm_dp_tunnel_group_state * group_state,struct drm_dp_tunnel * tunnel) get_or_add_tunnel_state() argument 1517 drm_dp_tunnel_atomic_get_state(struct drm_atomic_state * state,struct drm_dp_tunnel * tunnel) drm_dp_tunnel_atomic_get_state() argument 1545 drm_dp_tunnel_atomic_get_old_state(struct drm_atomic_state * state,const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_atomic_get_old_state() argument 1569 drm_dp_tunnel_atomic_get_new_state(struct drm_atomic_state * state,const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_atomic_get_new_state() argument 1703 drm_dp_tunnel_atomic_set_stream_bw(struct drm_atomic_state * state,struct drm_dp_tunnel * tunnel,u8 stream_id,int bw) drm_dp_tunnel_atomic_set_stream_bw() argument 1780 drm_dp_tunnel_atomic_get_group_streams_in_state(struct drm_atomic_state * state,const struct drm_dp_tunnel * tunnel,u32 * stream_mask) drm_dp_tunnel_atomic_get_group_streams_in_state() argument 1808 struct drm_dp_tunnel *tunnel = new_tunnel_state->tunnel_ref.tunnel; drm_dp_tunnel_atomic_check_group_bw() local [all...] |
/linux/include/drm/display/ ! |
H A D | drm_dp_tunnel.h | 24 struct drm_dp_tunnel *tunnel; member 31 drm_dp_tunnel_get(struct drm_dp_tunnel *tunnel, struct ref_tracker **tracker); 34 drm_dp_tunnel_put(struct drm_dp_tunnel *tunnel, struct ref_tracker **tracker); 36 static inline void drm_dp_tunnel_ref_get(struct drm_dp_tunnel *tunnel, in drm_dp_tunnel_ref_get() argument 39 tunnel_ref->tunnel = drm_dp_tunnel_get(tunnel, &tunnel_ref->tracker); in drm_dp_tunnel_ref_get() 44 drm_dp_tunnel_put(tunnel_ref->tunnel, &tunnel_ref->tracker); in drm_dp_tunnel_ref_put() 45 tunnel_ref->tunnel = NULL; in drm_dp_tunnel_ref_put() 51 int drm_dp_tunnel_destroy(struct drm_dp_tunnel *tunnel); 53 int drm_dp_tunnel_enable_bw_alloc(struct drm_dp_tunnel *tunnel); 102 drm_dp_tunnel_get(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) drm_dp_tunnel_get() argument 108 drm_dp_tunnel_put(struct drm_dp_tunnel * tunnel,struct ref_tracker ** tracker) drm_dp_tunnel_put() argument 110 drm_dp_tunnel_ref_get(struct drm_dp_tunnel * tunnel,struct drm_dp_tunnel_ref * tunnel_ref) drm_dp_tunnel_ref_get() argument 123 drm_dp_tunnel_destroy(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_destroy() argument 128 drm_dp_tunnel_enable_bw_alloc(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_enable_bw_alloc() argument 133 drm_dp_tunnel_disable_bw_alloc(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_disable_bw_alloc() argument 138 drm_dp_tunnel_bw_alloc_is_enabled(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_bw_alloc_is_enabled() argument 144 drm_dp_tunnel_alloc_bw(struct drm_dp_tunnel * tunnel,int bw) drm_dp_tunnel_alloc_bw() argument 150 drm_dp_tunnel_get_allocated_bw(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_get_allocated_bw() argument 156 drm_dp_tunnel_update_state(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_update_state() argument 161 drm_dp_tunnel_set_io_error(struct drm_dp_tunnel * tunnel) drm_dp_tunnel_set_io_error() argument 171 drm_dp_tunnel_max_dprx_rate(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_max_dprx_rate() argument 177 drm_dp_tunnel_max_dprx_lane_count(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_max_dprx_lane_count() argument 183 drm_dp_tunnel_available_bw(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_available_bw() argument 189 drm_dp_tunnel_name(const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_name() argument 196 drm_dp_tunnel_atomic_get_state(struct drm_atomic_state * state,struct drm_dp_tunnel * tunnel) drm_dp_tunnel_atomic_get_state() argument 203 drm_dp_tunnel_atomic_get_new_state(struct drm_atomic_state * state,const struct drm_dp_tunnel * tunnel) drm_dp_tunnel_atomic_get_new_state() argument 210 drm_dp_tunnel_atomic_set_stream_bw(struct drm_atomic_state * state,struct drm_dp_tunnel * tunnel,u8 stream_id,int bw) drm_dp_tunnel_atomic_set_stream_bw() argument 218 drm_dp_tunnel_atomic_get_group_streams_in_state(struct drm_atomic_state * state,const struct drm_dp_tunnel * tunnel,u32 * stream_mask) drm_dp_tunnel_atomic_get_group_streams_in_state() argument [all...] |
/linux/drivers/gpu/drm/i915/display/ ! |
H A D | intel_dp_tunnel.c | 24 * intel_dp_tunnel_disconnect - Disconnect a DP tunnel from a port 25 * @intel_dp: DP port object the tunnel is connected to 27 * Disconnect a DP tunnel from @intel_dp, destroying any related state. This 32 drm_dp_tunnel_destroy(intel_dp->tunnel); in intel_dp_tunnel_disconnect() 33 intel_dp->tunnel = NULL; in intel_dp_tunnel_disconnect() 37 * intel_dp_tunnel_destroy - Destroy a DP tunnel 38 * @intel_dp: DP port object the tunnel is connected to 40 * Destroy a DP tunnel connected to @intel_dp, after disabling the BW 41 * allocation mode on the tunnel. This should be called while destroying the 47 drm_dp_tunnel_disable_bw_alloc(intel_dp->tunnel); in intel_dp_tunnel_destroy() 177 struct drm_dp_tunnel *tunnel; detect_new_tunnel() local 371 add_inherited_tunnel(struct intel_atomic_state * state,struct drm_dp_tunnel * tunnel,struct intel_crtc * crtc) add_inherited_tunnel() argument 461 intel_dp_tunnel_atomic_add_group_state(struct intel_atomic_state * state,struct drm_dp_tunnel * tunnel) intel_dp_tunnel_atomic_add_group_state() argument 493 struct drm_dp_tunnel *tunnel = new_crtc_state->dp_tunnel_ref.tunnel; intel_dp_tunnel_atomic_add_state_for_crtc() local 684 struct drm_dp_tunnel *tunnel; atomic_decrease_bw() local 711 queue_retry_work(struct intel_atomic_state * state,struct drm_dp_tunnel * tunnel,const struct intel_crtc_state * crtc_state) queue_retry_work() argument 739 struct drm_dp_tunnel *tunnel = crtc_state->dp_tunnel_ref.tunnel; atomic_increase_bw() local [all...] |
/linux/net/l2tp/ ! |
H A D | l2tp_netlink.c | 38 int flags, struct l2tp_tunnel *tunnel, u8 cmd); 51 struct l2tp_tunnel *tunnel; in l2tp_nl_session_get() local 62 tunnel = l2tp_tunnel_get(net, tunnel_id); in l2tp_nl_session_get() 63 if (tunnel) { in l2tp_nl_session_get() 64 session = l2tp_session_get(net, tunnel->sock, tunnel->version, in l2tp_nl_session_get() 66 l2tp_tunnel_put(tunnel); in l2tp_nl_session_get() 105 struct l2tp_tunnel *tunnel, in l2tp_tunnel_notify() argument 116 NLM_F_ACK, tunnel, cmd); in l2tp_tunnel_notify() 193 struct l2tp_tunnel *tunnel; in l2tp_nl_cmd_tunnel_create() local 261 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_delete() local 291 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_modify() local 371 l2tp_nl_tunnel_send_addr(struct sk_buff * skb,struct l2tp_tunnel * tunnel) l2tp_nl_tunnel_send_addr() argument 386 l2tp_nl_tunnel_send(struct sk_buff * skb,u32 portid,u32 seq,int flags,struct l2tp_tunnel * tunnel,u8 cmd) l2tp_nl_tunnel_send() argument 452 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_get() local 503 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_tunnel_dump() local 534 struct l2tp_tunnel *tunnel; l2tp_nl_cmd_session_create() local 701 struct l2tp_tunnel *tunnel = session->tunnel; l2tp_nl_cmd_session_modify() local 727 struct l2tp_tunnel *tunnel = session->tunnel; l2tp_nl_session_send() local 844 struct l2tp_tunnel *tunnel = NULL; l2tp_nl_cmd_session_dump() local [all...] |
H A D | l2tp_ppp.c | 27 * zero, the socket is treated as a special tunnel management socket. 150 /* Helpers to obtain tunnel/session contexts from sockets. 267 struct l2tp_tunnel *tunnel; in pppol2tp_sendmsg() local 274 /* Get session and tunnel contexts */ in pppol2tp_sendmsg() 280 tunnel = session->tunnel; in pppol2tp_sendmsg() 282 uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; in pppol2tp_sendmsg() 344 struct l2tp_tunnel *tunnel; in pppol2tp_xmit() local 350 /* Get session and tunnel contexts from the socket */ in pppol2tp_xmit() 355 tunnel in pppol2tp_xmit() 625 pppol2tp_tunnel_mtu(const struct l2tp_tunnel * tunnel) pppol2tp_tunnel_mtu() argument 640 struct l2tp_tunnel *tunnel; pppol2tp_tunnel_get() local 704 struct l2tp_tunnel *tunnel; pppol2tp_connect() local 850 pppol2tp_session_create(struct net * net,struct l2tp_tunnel * tunnel,u32 session_id,u32 peer_session_id,struct l2tp_session_cfg * cfg) pppol2tp_session_create() argument 896 struct l2tp_tunnel *tunnel; pppol2tp_getname() local 1024 pppol2tp_tunnel_copy_stats(struct pppol2tp_ioc_stats * stats,struct l2tp_tunnel * tunnel) pppol2tp_tunnel_copy_stats() argument 1148 pppol2tp_tunnel_setsockopt(struct sock * sk,struct l2tp_tunnel * tunnel,int optname,int val) pppol2tp_tunnel_setsockopt() argument 1233 struct l2tp_tunnel *tunnel; pppol2tp_setsockopt() local 1273 pppol2tp_tunnel_getsockopt(struct sock * sk,struct l2tp_tunnel * tunnel,int optname,int * val) pppol2tp_tunnel_getsockopt() argument 1339 struct l2tp_tunnel *tunnel; pppol2tp_getsockopt() local 1403 struct l2tp_tunnel *tunnel; global() member 1500 struct l2tp_tunnel *tunnel = v; pppol2tp_seq_tunnel_show() local 1519 struct l2tp_tunnel *tunnel = session->tunnel; pppol2tp_seq_session_show() local [all...] |
H A D | trace.h | 28 TP_PROTO(struct l2tp_tunnel *tunnel), 29 TP_ARGS(tunnel), 34 memcpy(__entry->name, tunnel->name, L2TP_TUNNEL_NAME_MAX); 52 TP_PROTO(struct l2tp_tunnel *tunnel), 53 TP_ARGS(tunnel), 63 memcpy(__entry->name, tunnel->name, L2TP_TUNNEL_NAME_MAX); 64 __entry->fd = tunnel->fd; 65 __entry->tid = tunnel->tunnel_id; 66 __entry->ptid = tunnel->peer_tunnel_id; 67 __entry->version = tunnel [all...] |
/linux/Documentation/networking/ ! |
H A D | l2tp.rst | 27 An L2TP tunnel carries one or more L2TP sessions. Each tunnel is 30 to/from L2TP. Fields in the L2TP header identify the tunnel or session 40 1) Create a tunnel socket. Exchange L2TP control protocol messages 41 with the peer over that socket in order to establish a tunnel. 43 2) Create a tunnel context in the kernel, using information 47 tunnel socket in order to establish a session. 57 Tunnel Sockets 62 To create a tunnel socket for use by L2TP, the standard POSIX 65 For example, for a tunnel usin [all...] |
H A D | gtp.rst | 12 of a GTP tunnel endpoint. 17 GTP is the Generic Tunnel Protocol, which is a 3GPP protocol used for 24 such a tunnel between that external data network and the phone. The 25 tunnel endpoints thus reside on the phone and in the gateway. All 35 is translated into GTP *without breaking the end-to-end tunnel*. So 39 or P-GW (LTE), which terminates the tunnel, decapsulates the packet 53 The module implements the function of a tunnel endpoint, i.e. it is 70 to handle the tunnel establishment, authentication etc. and only the 159 Local GTP-U entity and tunnel identification 166 instance) per IP address. Tunnel Endpoin [all...] |
H A D | bareudp.rst | 11 The Bareudp tunnel module provides a generic L3 encapsulation support for 12 tunnelling different L3 protocols like MPLS, IP, NSH etc. inside a UDP tunnel. 31 This creates a bareudp tunnel device which tunnels L3 traffic with ethertype 45 For an IPv4 tunnel the multiproto mode allows the tunnel to also handle 50 For MPLS, the multiproto mode allows the tunnel to handle both unicast 56 The OVS or TC flower layer must set the tunnel information in the SKB dst field before 58 bareUDP device extracts and stores the tunnel information in the SKB dst field before
|
/linux/include/uapi/linux/ ! |
H A D | ip6_tunnel.h | 28 char name[IFNAMSIZ]; /* name of tunnel device */ 30 __u8 proto; /* tunnel protocol */ 31 __u8 encap_limit; /* encapsulation limit for tunnel */ 32 __u8 hop_limit; /* hop limit for tunnel */ 33 __be32 flowinfo; /* traffic class and flowlabel for tunnel */ 34 __u32 flags; /* tunnel flags */ 35 struct in6_addr laddr; /* local tunnel end-point address */ 36 struct in6_addr raddr; /* remote tunnel end-point address */ 40 char name[IFNAMSIZ]; /* name of tunnel device */ 42 __u8 proto; /* tunnel protoco [all...] |
/linux/net/ipv4/ ! |
H A D | ip_tunnel.c | 70 /* Fallback tunnel: no source, no destination, no key, no options 72 Tunnel hash table: 74 it will match only tunnel with the same key; if it is not present, 75 it will match only keyless tunnel. 78 will match fallback tunnel. 79 Given src, dst and key, find appropriate for input tunnel. 238 struct ip_tunnel *tunnel; in __ip_tunnel_create() local 264 tunnel = netdev_priv(dev); in __ip_tunnel_create() 265 tunnel->parms = *parms; in __ip_tunnel_create() 266 tunnel in __ip_tunnel_create() 283 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_bind_dev() local 377 ip_tunnel_rcv(struct ip_tunnel * tunnel,struct sk_buff * skb,const struct tnl_ptk_info * tpi,struct metadata_dst * tun_dst,bool log_ecn_error) ip_tunnel_rcv() argument 517 struct ip_tunnel *tunnel = netdev_priv(dev); tnl_update_pmtu() local 588 struct ip_tunnel *tunnel = netdev_priv(dev); ip_md_tunnel_xmit() local 686 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_xmit() local 1070 struct ip_tunnel *tunnel = netdev_priv(dev); __ip_tunnel_change_mtu() local 1100 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_dev_free() local 1108 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_dellink() local 1122 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_get_link_net() local 1130 const struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_get_iflink() local 1264 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_changelink() local 1300 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_init() local 1332 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_uninit() local 1348 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_setup() local [all...] |
H A D | ipip.c | 22 /* tunnel.c: an IP tunnel driver 24 The purpose of this driver is to provide an IP tunnel through 25 which you can tunnel network traffic transparently across subnets. 36 Made the tunnels use dev->name not tunnel: when error reporting. 42 Changed to tunnel to destination gateway in addition to the 43 tunnel's pointopoint address 51 /* Things I wish I had known when writing the tunnel driver: 55 contains the tunnel device that _we_ are. 204 /* no tunnel inf 221 struct ip_tunnel *tunnel; ipip_tunnel_rcv() local 285 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_tunnel_xmit() local 391 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_tunnel_init() local 524 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_fill_info() local [all...] |
H A D | ip_vti.c | 4 * virtual tunnel interface 50 struct ip_tunnel *tunnel; in vti_input() local 58 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, flags, in vti_input() 60 if (tunnel) { in vti_input() 64 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip4 = tunnel; in vti_input() 67 skb->dev = tunnel->dev; in vti_input() 103 struct ip_tunnel *tunnel = XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip4; in vti_rcv_cb() local 107 if (!tunnel) in vti_rcv_cb() 172 struct ip_tunnel *tunnel = netdev_priv(dev); vti_xmit() local 283 struct ip_tunnel *tunnel = netdev_priv(dev); vti_tunnel_xmit() local 320 struct ip_tunnel *tunnel; vti4_err() local 438 struct ip_tunnel *tunnel = netdev_priv(dev); vti_tunnel_init() local 454 struct ip_tunnel *tunnel = netdev_priv(dev); vti_fb_tunnel_init() local [all...] |
/linux/drivers/net/ ! |
H A D | amt.c | 121 static u32 amt_source_hash(struct amt_tunnel_list *tunnel, union amt_addr *src) in amt_source_hash() argument 123 u32 hash = jhash(src, sizeof(*src), tunnel->amt->hash_seed); in amt_source_hash() 125 return reciprocal_scale(hash, tunnel->amt->hash_buckets); in amt_source_hash() 182 static struct amt_source_node *amt_lookup_src(struct amt_tunnel_list *tunnel, in amt_lookup_src() argument 187 u32 hash = amt_source_hash(tunnel, src); in amt_lookup_src() 198 static u32 amt_group_hash(struct amt_tunnel_list *tunnel, union amt_addr *group) in amt_group_hash() argument 200 u32 hash = jhash(group, sizeof(*group), tunnel->amt->hash_seed); in amt_group_hash() 202 return reciprocal_scale(hash, tunnel->amt->hash_buckets); in amt_group_hash() 205 static struct amt_group_node *amt_lookup_group(struct amt_tunnel_list *tunnel, in amt_lookup_group() argument 210 u32 hash = amt_group_hash(tunnel, grou in amt_lookup_group() 226 struct amt_tunnel_list *tunnel; amt_destroy_source() local 294 struct amt_tunnel_list *tunnel; amt_source_work() local 313 amt_act_src(struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,struct amt_source_node * snode,enum amt_act act) amt_act_src() argument 413 struct amt_tunnel_list *tunnel = gnode->tunnel_list; amt_group_work() local 464 amt_add_group(struct amt_dev * amt,struct amt_tunnel_list * tunnel,union amt_addr * group,union amt_addr * host,bool v6) amt_add_group() argument 590 __amt_update_relay_status(struct amt_tunnel_list * tunnel,enum amt_status status,bool validate) __amt_update_relay_status() argument 603 amt_update_relay_status(struct amt_tunnel_list * tunnel,enum amt_status status,bool validate) amt_update_relay_status() argument 791 amt_send_igmp_gq(struct amt_dev * amt,struct amt_tunnel_list * tunnel) amt_send_igmp_gq() argument 876 amt_send_mld_gq(struct amt_dev * amt,struct amt_tunnel_list * tunnel) amt_send_mld_gq() argument 888 amt_send_mld_gq(struct amt_dev * amt,struct amt_tunnel_list * tunnel) amt_send_mld_gq() argument 1057 amt_send_multicast_data(struct amt_dev * amt,const struct sk_buff * oskb,struct amt_tunnel_list * tunnel,bool v6) amt_send_multicast_data() argument 1113 amt_send_membership_query(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel,bool v6) amt_send_membership_query() argument 1175 struct amt_tunnel_list *tunnel; amt_dev_xmit() local 1322 amt_clear_groups(struct amt_tunnel_list * tunnel) amt_clear_groups() argument 1340 struct amt_tunnel_list *tunnel = container_of(to_delayed_work(work), amt_tunnel_expire() local 1356 amt_cleanup_srcs(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode) amt_cleanup_srcs() argument 1391 amt_add_srcs(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,bool v6) amt_add_srcs() argument 1471 amt_lookup_act_srcs(struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,enum amt_ops ops,enum amt_filter filter,enum amt_act act,bool v6) amt_lookup_act_srcs() argument 1596 amt_mcast_is_in_handler(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,void * zero_grec,bool v6) amt_mcast_is_in_handler() argument 1649 amt_mcast_is_ex_handler(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,void * zero_grec,bool v6) amt_mcast_is_ex_handler() argument 1713 amt_mcast_to_in_handler(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,void * zero_grec,bool v6) amt_mcast_to_in_handler() argument 1774 amt_mcast_to_ex_handler(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,void * zero_grec,bool v6) amt_mcast_to_ex_handler() argument 1840 amt_mcast_allow_handler(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,void * zero_grec,bool v6) amt_mcast_allow_handler() argument 1885 amt_mcast_block_handler(struct amt_dev * amt,struct amt_tunnel_list * tunnel,struct amt_group_node * gnode,void * grec,void * zero_grec,bool v6) amt_mcast_block_handler() argument 1941 amt_igmpv2_report_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_igmpv2_report_handler() argument 1978 amt_igmpv2_leave_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_igmpv2_leave_handler() argument 1996 amt_igmpv3_report_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_igmpv3_report_handler() argument 2067 amt_igmp_report_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_igmp_report_handler() argument 2102 amt_mldv1_report_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_mldv1_report_handler() argument 2139 amt_mldv1_leave_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_mldv1_leave_handler() argument 2158 amt_mldv2_report_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_mldv2_report_handler() argument 2229 amt_mld_report_handler(struct amt_dev * amt,struct sk_buff * skb,struct amt_tunnel_list * tunnel) amt_mld_report_handler() argument 2452 struct amt_tunnel_list *tunnel; amt_update_handler() local 2664 struct amt_tunnel_list *tunnel; amt_request_handler() local 3019 struct amt_tunnel_list *tunnel, *tmp; amt_dev_stop() local [all...] |
/linux/net/ipv6/ ! |
H A D | sit.c | 3 * IPv6 over IPv4 tunnel device - Simple Internet Transition (SIT) 73 static bool check_6rd(struct ip_tunnel *tunnel, const struct in6_addr *v6dst, 515 struct ip_tunnel *tunnel = netdev_priv(dev); in ipip6_tunnel_uninit() local 516 struct sit_net *sitn = net_generic(tunnel->net, sit_net_id); in ipip6_tunnel_uninit() 521 ipip6_tunnel_unlink(sitn, tunnel); in ipip6_tunnel_uninit() 522 ipip6_tunnel_del_prl(tunnel, NULL); in ipip6_tunnel_uninit() 524 dst_cache_reset(&tunnel->dst_cache); in ipip6_tunnel_uninit() 525 netdev_put(dev, &tunnel->dev_tracker); in ipip6_tunnel_uninit() 606 static inline bool is_spoofed_6rd(struct ip_tunnel *tunnel, const __be32 v4addr, in is_spoofed_6rd() argument 610 if (check_6rd(tunnel, v6add in is_spoofed_6rd() 627 only_dnatted(const struct ip_tunnel * tunnel,const struct in6_addr * v6dst) only_dnatted() argument 644 packet_is_spoofed(struct sk_buff * skb,const struct iphdr * iph,struct ip_tunnel * tunnel) packet_is_spoofed() argument 682 struct ip_tunnel *tunnel; ipip6_rcv() local 755 struct ip_tunnel *tunnel; sit_tunnel_rcv() local 808 check_6rd(struct ip_tunnel * tunnel,const struct in6_addr * v6dst,__be32 * v4dst) check_6rd() argument 843 try_6rd(struct ip_tunnel * tunnel,const struct in6_addr * v6dst) try_6rd() argument 859 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_xmit() local 1052 struct ip_tunnel *tunnel = netdev_priv(dev); sit_tunnel_xmit__() local 1101 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_bind_dev() local 1412 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_dev_free() local 1425 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_setup() local 1449 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_init() local 1468 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_fb_tunnel_init() local 1697 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_fill_info() local [all...] |
H A D | ip6_vti.c | 67 /* the vti6 tunnel fallback device */ 79 * vti6_tnl_lookup - fetch tunnel matching the end-point addresses 81 * @remote: the address of the tunnel exit-point 82 * @local: the address of the tunnel entry-point 85 * tunnel matching given end-points if found, 86 * else fallback tunnel if its device is up, 128 * vti6_tnl_bucket - get head of list matching given tunnel parameters 130 * @p: parameters containing tunnel end-points 136 * Return: head of IPv6 tunnel list 237 * vti6_locate - find or create tunnel matchin 1075 struct ip6_tnl *tunnel = netdev_priv(dev); vti6_fill_info() local [all...] |
H A D | ip6_gre.c | 83 /* Tunnel hash table */ 94 it will match only tunnel with the same key; if it is not present, 95 it will match only keyless tunnel. 98 will match fallback tunnel. 139 /* Given src, dst and key, find appropriate for input tunnel. */ 414 net_dbg_ratelimited("%s: Too small hop limit or routing loop in tunnel!\n", in ip6gre_err() 430 net_dbg_ratelimited("%s: Too small encapsulation limit or routing loop in tunnel!\n", in ip6gre_err() 460 struct ip6_tnl *tunnel; in ip6gre_rcv() local 463 tunnel = ip6gre_tunnel_lookup(skb->dev, in ip6gre_rcv() 466 if (tunnel) { in ip6gre_rcv() 497 struct ip6_tnl *tunnel; ip6erspan_rcv() local 720 struct ip6_tnl *tunnel = netdev_priv(dev); __gre6_xmit() local 1162 ip6gre_calc_hlen(struct ip6_tnl * tunnel) ip6gre_calc_hlen() argument 1465 struct ip6_tnl *tunnel; ip6gre_tunnel_init_common() local 1505 struct ip6_tnl *tunnel; ip6gre_tunnel_init() local 1528 struct ip6_tnl *tunnel = netdev_priv(dev); ip6gre_fb_tunnel_init() local 1823 ip6erspan_calc_hlen(struct ip6_tnl * tunnel) ip6erspan_calc_hlen() argument 1838 struct ip6_tnl *tunnel; ip6erspan_tap_init() local [all...] |
/linux/include/net/ ! |
H A D | ip6_tunnel.h | 22 char name[IFNAMSIZ]; /* name of tunnel device */ 24 __u8 proto; /* tunnel protocol */ 25 __u8 encap_limit; /* encapsulation limit for tunnel */ 26 __u8 hop_limit; /* hop limit for tunnel */ 28 __be32 flowinfo; /* traffic class and flowlabel for tunnel */ 29 __u32 flags; /* tunnel flags */ 30 struct in6_addr laddr; /* local tunnel end-point address */ 31 struct in6_addr raddr; /* remote tunnel end-point address */ 45 /* IPv6 tunnel */ 47 struct ip6_tnl __rcu *next; /* next tunnel i [all...] |
/linux/drivers/net/ethernet/broadcom/bnxt/ ! |
H A D | bnxt_tc.h | 88 /* tunnel encap */ 146 /* Tunnel encap/decap hash table 148 * the same tunnel encap/decap params (ip_daddrs, vni, udp_dport) 156 /* tunnel l2 info */ 160 /* tunnel handle returned by FW */ 168 * The same data-struct is used for L2-flow table and L2-tunnel table. 169 * The L2 part of a flow or tunnel is stored in a hash table. 171 * already existing flow/tunnel must refer to it's flow handle or 205 /* tunnel encap related */ 208 /* tunnel deca [all...] |
/linux/tools/testing/selftests/bpf/prog_tests/ ! |
H A D | test_tunnel.c | 4 * End-to-end eBPF tunnel test suite 5 * The file tests BPF network tunnel implementation. 24 * root namespace with metadata-mode tunnel + BPF 28 * tunnel dev <type>11, ex: gre11, IPv4: 10.1.1.200, IPv6: 1::22 (overlay) 30 * Namespace at_ns0 with native tunnel 33 * tunnel dev <type>00, ex: gre00, IPv4: 10.1.1.100, IPv6: 1::11 (overlay) 42 * 2) Tnl device's egress BPF program is triggered and set the tunnel metadata, 44 * the primary or secondary ip of veth1 as the local ip of tunnel. The 46 * 3) Outer tunnel header is prepended and route the packet to veth1's egress. 48 * 5) Tunnel protoco [all...] |
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/ ! |
H A D | tc_tun.c | 123 struct mlx5e_tc_tunnel *tunnel = mlx5e_get_tc_tun(dev); in mlx5e_route_lookup_ipv4_get() local 125 if (tunnel && tunnel->get_remote_ifindex) in mlx5e_route_lookup_ipv4_get() 126 attr->fl.fl4.flowi4_oif = tunnel->get_remote_ifindex(dev); in mlx5e_route_lookup_ipv4_get() 188 if (!e->tunnel) { in mlx5e_gen_ip_tunnel_header() 189 pr_warn("mlx5: Cannot generate tunnel header for this tunnel\n"); in mlx5e_gen_ip_tunnel_header() 193 return e->tunnel->generate_ip_tun_hdr(buf, ip_proto, e); in mlx5e_gen_ip_tunnel_header() 248 e->tunnel->calc_hlen(e); in mlx5e_tc_tun_create_header_ipv4() 364 e->tunnel in mlx5e_tc_tun_update_header_ipv4() 446 struct mlx5e_tc_tunnel *tunnel = mlx5e_get_tc_tun(dev); mlx5e_route_lookup_ipv6_get() local 774 struct mlx5e_tc_tunnel *tunnel = mlx5e_get_tc_tun(netdev); mlx5e_tc_tun_device_to_offload() local 787 struct mlx5e_tc_tunnel *tunnel = mlx5e_get_tc_tun(tunnel_dev); mlx5e_tc_tun_init_encap_attr() local 803 struct mlx5e_tc_tunnel *tunnel = mlx5e_get_tc_tun(filter_dev); mlx5e_tc_tun_parse() local [all...] |