loop.c (1198487B)
1 /* 2 * DO NOT EDIT THIS FILE! 3 * This file is auto-generated. 4 * Edits to this file will be lost when it is regenerated. 5 * 6 * 7 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 8 * 9 * Copyright 2007-2020 Broadcom Inc. All rights reserved. 10 * 11 * File: loop.c 12 * Purpose: loop BCM API dispatch driver 13 * Generator: mkdispatch 1.54 14 */ 15 16 #include <bcm/types.h> 17 #include <bcm/auth.h> 18 #include <bcm/bcmi2c.h> 19 #include <bcm/bfd.h> 20 #include <bcm/bregex.h> 21 #include <bcm/collector.h> 22 #include <bcm/cosq.h> 23 #include <bcm/cpri.h> 24 #include <bcm/custom.h> 25 #include <bcm/eav.h> 26 #include <bcm/ecn.h> 27 #include <bcm/error.h> 28 #include <bcm/extender.h> 29 #include <bcm/fabric.h> 30 #include <bcm/failover.h> 31 #include <bcm/fcmap.h> 32 #include <bcm/fcoe.h> 33 #include <bcm/field.h> 34 #include <bcm/flow.h> 35 #include <bcm/flowtracker.h> 36 #include <bcm/gdpll.h> 37 #include <bcm/hash.h> 38 #include <bcm/ifa.h> 39 #include <bcm/init.h> 40 #include <bcm/instru.h> 41 #include <bcm/int.h> 42 #include <bcm/ipfix.h> 43 #include <bcm/ipmc.h> 44 #include <bcm/ipsec.h> 45 #include <bcm/knet.h> 46 #include <bcm/l2.h> 47 #include <bcm/l2gre.h> 48 #include <bcm/l3.h> 49 #include <bcm/latency_monitor.h> 50 #include <bcm/lb.h> 51 #include <bcm/link.h> 52 #include <bcm/macsec.h> 53 #include <bcm/mcast.h> 54 #include <bcm/mim.h> 55 #include <bcm/mirror.h> 56 #include <bcm/module.h> 57 #include <bcm/mpls.h> 58 #include <bcm/multicast.h> 59 #include <bcm/nat.h> 60 #include <bcm/niv.h> 61 #include <bcm/oam.h> 62 #include <bcm/oob.h> 63 #include <bcm/pkt.h> 64 #include <bcm/policer.h> 65 #include <bcm/port.h> 66 #include <bcm/proxy.h> 67 #include <bcm/pstats.h> 68 #include <bcm/ptp.h> 69 #include <bcm/qos.h> 70 #include <bcm/range.h> 71 #include <bcm/rate.h> 72 #include <bcm/rx.h> 73 #include <bcm/sat.h> 74 #include <bcm/srv6.h> 75 #include <bcm/stack.h> 76 #include <bcm/stat.h> 77 #include <bcm/stg.h> 78 #include <bcm/subport.h> 79 #include <bcm/sum.h> 80 #include <bcm/switch.h> 81 #include <bcm/telemetry.h> 82 #include <bcm/time.h> 83 #include <bcm/topo.h> 84 #include <bcm/trill.h> 85 #include <bcm/trunk.h> 86 #include <bcm/tsn.h> 87 #include <bcm/tunnel.h> 88 #include <bcm/tx.h> 89 #include <bcm/txbeacon.h> 90 #include <bcm/udf.h> 91 #include <bcm/vlan.h> 92 #include <bcm/vswitch.h> 93 #include <bcm/vxlan.h> 94 #include <bcm/wlan.h> 95 #include <bcm/xflow_macsec.h> 96 97 #include <bcm_int/loop_dispatch.h> 98 #include <bcm_int/control.h> 99 100 #ifdef BCM_LOOP_SUPPORT 101 102 103 /* _bcm_attach is a control routine */ 104 105 /* _bcm_detach is a control routine */ 106 107 /* _bcm_shutdown not dispatchable */ 108 109 /* bcm_attach not dispatchable */ 110 111 /* bcm_attach_check not dispatchable */ 112 113 /* bcm_attach_early_txrx not dispatchable */ 114 115 /* bcm_attach_info_t_init not dispatchable */ 116 117 /* bcm_attach_max not dispatchable */ 118 119 /* bcm_attach_register not dispatchable */ 120 121 /* bcm_attach_unregister not dispatchable */ 122 123 int 124 bcm_loop_auth_detach( 125 int unit) 126 { 127 return bcm_auth_detach( 128 BCM_CONTROL(unit)->unit); 129 } 130 131 int 132 bcm_loop_auth_egress_get( 133 int unit, 134 int port, 135 int * enable) 136 { 137 return bcm_auth_egress_get( 138 BCM_CONTROL(unit)->unit, 139 port, 140 enable); 141 } 142 143 int 144 bcm_loop_auth_egress_set( 145 int unit, 146 int port, 147 int enable) 148 { 149 return bcm_auth_egress_set( 150 BCM_CONTROL(unit)->unit, 151 port, 152 enable); 153 } 154 155 int 156 bcm_loop_auth_init( 157 int unit) 158 { 159 return bcm_auth_init( 160 BCM_CONTROL(unit)->unit); 161 } 162 163 int 164 bcm_loop_auth_mac_add( 165 int unit, 166 int port, 167 bcm_mac_t mac) 168 { 169 return bcm_auth_mac_add( 170 BCM_CONTROL(unit)->unit, 171 port, 172 mac); 173 } 174 175 int 176 bcm_loop_auth_mac_control_get( 177 int unit, 178 bcm_auth_mac_control_t type, 179 uint32 * value) 180 { 181 return bcm_auth_mac_control_get( 182 BCM_CONTROL(unit)->unit, 183 type, 184 value); 185 } 186 187 int 188 bcm_loop_auth_mac_control_set( 189 int unit, 190 bcm_auth_mac_control_t type, 191 uint32 value) 192 { 193 return bcm_auth_mac_control_set( 194 BCM_CONTROL(unit)->unit, 195 type, 196 value); 197 } 198 199 int 200 bcm_loop_auth_mac_delete( 201 int unit, 202 int port, 203 bcm_mac_t mac) 204 { 205 return bcm_auth_mac_delete( 206 BCM_CONTROL(unit)->unit, 207 port, 208 mac); 209 } 210 211 int 212 bcm_loop_auth_mac_delete_all( 213 int unit, 214 int port) 215 { 216 return bcm_auth_mac_delete_all( 217 BCM_CONTROL(unit)->unit, 218 port); 219 } 220 221 int 222 bcm_loop_auth_mode_get( 223 int unit, 224 int port, 225 uint32 * modep) 226 { 227 return bcm_auth_mode_get( 228 BCM_CONTROL(unit)->unit, 229 port, 230 modep); 231 } 232 233 int 234 bcm_loop_auth_mode_set( 235 int unit, 236 int port, 237 uint32 mode) 238 { 239 return bcm_auth_mode_set( 240 BCM_CONTROL(unit)->unit, 241 port, 242 mode); 243 } 244 245 int 246 bcm_loop_auth_unauth_callback( 247 int unit, 248 bcm_auth_cb_t func, 249 void * cookie) 250 { 251 return bcm_auth_unauth_callback( 252 BCM_CONTROL(unit)->unit, 253 func, 254 cookie); 255 } 256 257 #ifdef INCLUDE_BFD 258 259 int 260 bcm_loop_bfd_auth_sha1_get( 261 int unit, 262 int index, 263 bcm_bfd_auth_sha1_t * sha1) 264 { 265 return bcm_bfd_auth_sha1_get( 266 BCM_CONTROL(unit)->unit, 267 index, 268 sha1); 269 } 270 271 int 272 bcm_loop_bfd_auth_sha1_set( 273 int unit, 274 int index, 275 bcm_bfd_auth_sha1_t * sha1) 276 { 277 return bcm_bfd_auth_sha1_set( 278 BCM_CONTROL(unit)->unit, 279 index, 280 sha1); 281 } 282 283 int 284 bcm_loop_bfd_auth_simple_password_get( 285 int unit, 286 int index, 287 bcm_bfd_auth_simple_password_t * sp) 288 { 289 return bcm_bfd_auth_simple_password_get( 290 BCM_CONTROL(unit)->unit, 291 index, 292 sp); 293 } 294 295 int 296 bcm_loop_bfd_auth_simple_password_set( 297 int unit, 298 int index, 299 bcm_bfd_auth_simple_password_t * sp) 300 { 301 return bcm_bfd_auth_simple_password_set( 302 BCM_CONTROL(unit)->unit, 303 index, 304 sp); 305 } 306 307 int 308 bcm_loop_bfd_detach( 309 int unit) 310 { 311 return bcm_bfd_detach( 312 BCM_CONTROL(unit)->unit); 313 } 314 315 int 316 bcm_loop_bfd_discard_stat_get( 317 int unit, 318 bcm_bfd_discard_stat_t * discarded_info) 319 { 320 return bcm_bfd_discard_stat_get( 321 BCM_CONTROL(unit)->unit, 322 discarded_info); 323 } 324 325 int 326 bcm_loop_bfd_discard_stat_set( 327 int unit, 328 bcm_bfd_discard_stat_t * discarded_info) 329 { 330 return bcm_bfd_discard_stat_set( 331 BCM_CONTROL(unit)->unit, 332 discarded_info); 333 } 334 335 int 336 bcm_loop_bfd_endpoint_create( 337 int unit, 338 bcm_bfd_endpoint_info_t * endpoint_info) 339 { 340 return bcm_bfd_endpoint_create( 341 BCM_CONTROL(unit)->unit, 342 endpoint_info); 343 } 344 345 int 346 bcm_loop_bfd_endpoint_destroy( 347 int unit, 348 bcm_bfd_endpoint_t endpoint) 349 { 350 return bcm_bfd_endpoint_destroy( 351 BCM_CONTROL(unit)->unit, 352 endpoint); 353 } 354 355 int 356 bcm_loop_bfd_endpoint_destroy_all( 357 int unit) 358 { 359 return bcm_bfd_endpoint_destroy_all( 360 BCM_CONTROL(unit)->unit); 361 } 362 363 int 364 bcm_loop_bfd_endpoint_get( 365 int unit, 366 bcm_bfd_endpoint_t endpoint, 367 bcm_bfd_endpoint_info_t * endpoint_info) 368 { 369 return bcm_bfd_endpoint_get( 370 BCM_CONTROL(unit)->unit, 371 endpoint, 372 endpoint_info); 373 } 374 375 /* bcm_bfd_endpoint_info_t_init not dispatchable */ 376 377 int 378 bcm_loop_bfd_endpoint_poll( 379 int unit, 380 bcm_bfd_endpoint_t endpoint) 381 { 382 return bcm_bfd_endpoint_poll( 383 BCM_CONTROL(unit)->unit, 384 endpoint); 385 } 386 387 int 388 bcm_loop_bfd_endpoint_stat_get( 389 int unit, 390 bcm_bfd_endpoint_t endpoint, 391 bcm_bfd_endpoint_stat_t * ctr_info, 392 uint32 options) 393 { 394 return bcm_bfd_endpoint_stat_get( 395 BCM_CONTROL(unit)->unit, 396 endpoint, 397 ctr_info, 398 options); 399 } 400 401 int 402 bcm_loop_bfd_event_register( 403 int unit, 404 bcm_bfd_event_types_t event_types, 405 bcm_bfd_event_cb cb, 406 void * user_data) 407 { 408 return bcm_bfd_event_register( 409 BCM_CONTROL(unit)->unit, 410 event_types, 411 cb, 412 user_data); 413 } 414 415 int 416 bcm_loop_bfd_event_unregister( 417 int unit, 418 bcm_bfd_event_types_t event_types, 419 bcm_bfd_event_cb cb) 420 { 421 return bcm_bfd_event_unregister( 422 BCM_CONTROL(unit)->unit, 423 event_types, 424 cb); 425 } 426 427 int 428 bcm_loop_bfd_init( 429 int unit) 430 { 431 return bcm_bfd_init( 432 BCM_CONTROL(unit)->unit); 433 } 434 435 int 436 bcm_loop_bfd_status_multi_get( 437 int unit, 438 int max_endpoints, 439 bcm_bfd_status_t * status_arr, 440 int * count) 441 { 442 return bcm_bfd_status_multi_get( 443 BCM_CONTROL(unit)->unit, 444 max_endpoints, 445 status_arr, 446 count); 447 } 448 449 int 450 bcm_loop_bfd_tx_start( 451 int unit) 452 { 453 return bcm_bfd_tx_start( 454 BCM_CONTROL(unit)->unit); 455 } 456 457 int 458 bcm_loop_bfd_tx_stop( 459 int unit) 460 { 461 return bcm_bfd_tx_stop( 462 BCM_CONTROL(unit)->unit); 463 } 464 465 #endif /* INCLUDE_BFD */ 466 467 int 468 bcm_loop_clear( 469 int unit) 470 { 471 return bcm_clear( 472 BCM_CONTROL(unit)->unit); 473 } 474 475 /* bcm_collector_callback_options_t_init not dispatchable */ 476 477 int 478 bcm_loop_collector_create( 479 int unit, 480 uint32 options, 481 bcm_collector_t * collector_id, 482 bcm_collector_info_t * collector_info) 483 { 484 return bcm_collector_create( 485 BCM_CONTROL(unit)->unit, 486 options, 487 collector_id, 488 collector_info); 489 } 490 491 int 492 bcm_loop_collector_destroy( 493 int unit, 494 bcm_collector_t id) 495 { 496 return bcm_collector_destroy( 497 BCM_CONTROL(unit)->unit, 498 id); 499 } 500 501 int 502 bcm_loop_collector_detach( 503 int unit) 504 { 505 return bcm_collector_detach( 506 BCM_CONTROL(unit)->unit); 507 } 508 509 int 510 bcm_loop_collector_export_profile_create( 511 int unit, 512 uint32 options, 513 int * export_profile_id, 514 bcm_collector_export_profile_t * export_profile_info) 515 { 516 return bcm_collector_export_profile_create( 517 BCM_CONTROL(unit)->unit, 518 options, 519 export_profile_id, 520 export_profile_info); 521 } 522 523 int 524 bcm_loop_collector_export_profile_destroy( 525 int unit, 526 int export_profile_id) 527 { 528 return bcm_collector_export_profile_destroy( 529 BCM_CONTROL(unit)->unit, 530 export_profile_id); 531 } 532 533 int 534 bcm_loop_collector_export_profile_get( 535 int unit, 536 int export_profile_id, 537 bcm_collector_export_profile_t * export_profile_info) 538 { 539 return bcm_collector_export_profile_get( 540 BCM_CONTROL(unit)->unit, 541 export_profile_id, 542 export_profile_info); 543 } 544 545 int 546 bcm_loop_collector_export_profile_ids_get_all( 547 int unit, 548 int max_size, 549 int * export_profile_ids_list, 550 int * list_size) 551 { 552 return bcm_collector_export_profile_ids_get_all( 553 BCM_CONTROL(unit)->unit, 554 max_size, 555 export_profile_ids_list, 556 list_size); 557 } 558 559 /* bcm_collector_export_profile_t_init not dispatchable */ 560 561 int 562 bcm_loop_collector_export_record_register( 563 int unit, 564 bcm_collector_t collector_id, 565 bcm_collector_callback_options_t callback_options, 566 bcm_collector_export_record_cb_f callback_fn, 567 void * userdata) 568 { 569 return bcm_collector_export_record_register( 570 BCM_CONTROL(unit)->unit, 571 collector_id, 572 callback_options, 573 callback_fn, 574 userdata); 575 } 576 577 /* bcm_collector_export_record_t_init not dispatchable */ 578 579 int 580 bcm_loop_collector_export_record_unregister( 581 int unit, 582 bcm_collector_t collector_id, 583 bcm_collector_callback_options_t callback_options, 584 bcm_collector_export_record_cb_f callback_fn) 585 { 586 return bcm_collector_export_record_unregister( 587 BCM_CONTROL(unit)->unit, 588 collector_id, 589 callback_options, 590 callback_fn); 591 } 592 593 int 594 bcm_loop_collector_get( 595 int unit, 596 bcm_collector_t id, 597 bcm_collector_info_t * collector_info) 598 { 599 return bcm_collector_get( 600 BCM_CONTROL(unit)->unit, 601 id, 602 collector_info); 603 } 604 605 int 606 bcm_loop_collector_get_all( 607 int unit, 608 int max_size, 609 bcm_collector_t * collector_list, 610 int * list_size) 611 { 612 return bcm_collector_get_all( 613 BCM_CONTROL(unit)->unit, 614 max_size, 615 collector_list, 616 list_size); 617 } 618 619 /* bcm_collector_info_t_init not dispatchable */ 620 621 int 622 bcm_loop_collector_init( 623 int unit) 624 { 625 return bcm_collector_init( 626 BCM_CONTROL(unit)->unit); 627 } 628 629 int 630 bcm_loop_cosq_bandwidth_fabric_adjust_get( 631 int unit, 632 uint32 flags, 633 bcm_cosq_bandwidth_fabric_adjust_key_t * key, 634 uint32 * bandwidth) 635 { 636 return bcm_cosq_bandwidth_fabric_adjust_get( 637 BCM_CONTROL(unit)->unit, 638 flags, 639 key, 640 bandwidth); 641 } 642 643 int 644 bcm_loop_cosq_bandwidth_fabric_adjust_set( 645 int unit, 646 uint32 flags, 647 bcm_cosq_bandwidth_fabric_adjust_key_t * key, 648 uint32 bandwidth) 649 { 650 return bcm_cosq_bandwidth_fabric_adjust_set( 651 BCM_CONTROL(unit)->unit, 652 flags, 653 key, 654 bandwidth); 655 } 656 657 int 658 bcm_loop_cosq_bst_multi_profile_get( 659 int unit, 660 bcm_gport_t gport, 661 bcm_cos_queue_t cosq, 662 bcm_bst_stat_id_t bid, 663 int array_size, 664 bcm_cosq_bst_profile_t * profile_array, 665 int * count) 666 { 667 return bcm_cosq_bst_multi_profile_get( 668 BCM_CONTROL(unit)->unit, 669 gport, 670 cosq, 671 bid, 672 array_size, 673 profile_array, 674 count); 675 } 676 677 int 678 bcm_loop_cosq_bst_multi_profile_set( 679 int unit, 680 bcm_gport_t gport, 681 bcm_cos_queue_t cosq, 682 bcm_bst_stat_id_t bid, 683 int array_size, 684 bcm_cosq_bst_profile_t * profile_array) 685 { 686 return bcm_cosq_bst_multi_profile_set( 687 BCM_CONTROL(unit)->unit, 688 gport, 689 cosq, 690 bid, 691 array_size, 692 profile_array); 693 } 694 695 int 696 bcm_loop_cosq_bst_profile_get( 697 int unit, 698 bcm_gport_t gport, 699 bcm_cos_queue_t cosq, 700 bcm_bst_stat_id_t bid, 701 bcm_cosq_bst_profile_t * profile) 702 { 703 return bcm_cosq_bst_profile_get( 704 BCM_CONTROL(unit)->unit, 705 gport, 706 cosq, 707 bid, 708 profile); 709 } 710 711 int 712 bcm_loop_cosq_bst_profile_set( 713 int unit, 714 bcm_gport_t gport, 715 bcm_cos_queue_t cosq, 716 bcm_bst_stat_id_t bid, 717 bcm_cosq_bst_profile_t * profile) 718 { 719 return bcm_cosq_bst_profile_set( 720 BCM_CONTROL(unit)->unit, 721 gport, 722 cosq, 723 bid, 724 profile); 725 } 726 727 /* bcm_cosq_bst_profile_t_init not dispatchable */ 728 729 int 730 bcm_loop_cosq_bst_stat_clear( 731 int unit, 732 bcm_gport_t gport, 733 bcm_cos_queue_t cosq, 734 bcm_bst_stat_id_t bid) 735 { 736 return bcm_cosq_bst_stat_clear( 737 BCM_CONTROL(unit)->unit, 738 gport, 739 cosq, 740 bid); 741 } 742 743 int 744 bcm_loop_cosq_bst_stat_extended_clear( 745 int unit, 746 bcm_cosq_object_id_t * id, 747 bcm_bst_stat_id_t bid) 748 { 749 return bcm_cosq_bst_stat_extended_clear( 750 BCM_CONTROL(unit)->unit, 751 id, 752 bid); 753 } 754 755 int 756 bcm_loop_cosq_bst_stat_extended_get( 757 int unit, 758 bcm_cosq_object_id_t * id, 759 bcm_bst_stat_id_t bid, 760 uint32 options, 761 uint64 * value) 762 { 763 return bcm_cosq_bst_stat_extended_get( 764 BCM_CONTROL(unit)->unit, 765 id, 766 bid, 767 options, 768 value); 769 } 770 771 int 772 bcm_loop_cosq_bst_stat_extended_get32( 773 int unit, 774 bcm_cosq_object_id_t * id, 775 bcm_bst_stat_id_t bid, 776 uint32 options, 777 uint32 * value) 778 { 779 return bcm_cosq_bst_stat_extended_get32( 780 BCM_CONTROL(unit)->unit, 781 id, 782 bid, 783 options, 784 value); 785 } 786 787 int 788 bcm_loop_cosq_bst_stat_get( 789 int unit, 790 bcm_gport_t gport, 791 bcm_cos_queue_t cosq, 792 bcm_bst_stat_id_t bid, 793 uint32 options, 794 uint64 * value) 795 { 796 return bcm_cosq_bst_stat_get( 797 BCM_CONTROL(unit)->unit, 798 gport, 799 cosq, 800 bid, 801 options, 802 value); 803 } 804 805 int 806 bcm_loop_cosq_bst_stat_get32( 807 int unit, 808 bcm_gport_t gport, 809 bcm_cos_queue_t cosq, 810 bcm_bst_stat_id_t bid, 811 uint32 options, 812 uint32 * value) 813 { 814 return bcm_cosq_bst_stat_get32( 815 BCM_CONTROL(unit)->unit, 816 gport, 817 cosq, 818 bid, 819 options, 820 value); 821 } 822 823 int 824 bcm_loop_cosq_bst_stat_multi_get( 825 int unit, 826 bcm_gport_t gport, 827 bcm_cos_queue_t cosq, 828 uint32 options, 829 int max_values, 830 bcm_bst_stat_id_t * id_list, 831 uint64 * values) 832 { 833 return bcm_cosq_bst_stat_multi_get( 834 BCM_CONTROL(unit)->unit, 835 gport, 836 cosq, 837 options, 838 max_values, 839 id_list, 840 values); 841 } 842 843 int 844 bcm_loop_cosq_bst_stat_multi_get32( 845 int unit, 846 bcm_gport_t gport, 847 bcm_cos_queue_t cosq, 848 uint32 options, 849 int max_values, 850 bcm_bst_stat_id_t * id_list, 851 uint32 * values) 852 { 853 return bcm_cosq_bst_stat_multi_get32( 854 BCM_CONTROL(unit)->unit, 855 gport, 856 cosq, 857 options, 858 max_values, 859 id_list, 860 values); 861 } 862 863 int 864 bcm_loop_cosq_bst_stat_sync( 865 int unit, 866 bcm_bst_stat_id_t bid) 867 { 868 return bcm_cosq_bst_stat_sync( 869 BCM_CONTROL(unit)->unit, 870 bid); 871 } 872 873 int 874 bcm_loop_cosq_buffer_id_multi_get( 875 int unit, 876 bcm_gport_t gport, 877 bcm_cos_queue_t cosq, 878 bcm_cosq_dir_t direction, 879 int array_max, 880 bcm_cosq_buffer_id_t * buf_id_array, 881 int * array_count) 882 { 883 return bcm_cosq_buffer_id_multi_get( 884 BCM_CONTROL(unit)->unit, 885 gport, 886 cosq, 887 direction, 888 array_max, 889 buf_id_array, 890 array_count); 891 } 892 893 int 894 bcm_loop_cosq_burst_monitor_dma_config_get( 895 int unit, 896 uint32 * host_mem_size, 897 uint32 ** host_mem_add) 898 { 899 return bcm_cosq_burst_monitor_dma_config_get( 900 BCM_CONTROL(unit)->unit, 901 host_mem_size, 902 host_mem_add); 903 } 904 905 int 906 bcm_loop_cosq_burst_monitor_dma_config_set( 907 int unit, 908 uint32 host_mem_size, 909 uint32 ** host_mem_add) 910 { 911 return bcm_cosq_burst_monitor_dma_config_set( 912 BCM_CONTROL(unit)->unit, 913 host_mem_size, 914 host_mem_add); 915 } 916 917 int 918 bcm_loop_cosq_burst_monitor_get( 919 int unit, 920 int max_gports, 921 bcm_gport_t * gport_list, 922 int * num_gports) 923 { 924 return bcm_cosq_burst_monitor_get( 925 BCM_CONTROL(unit)->unit, 926 max_gports, 927 gport_list, 928 num_gports); 929 } 930 931 int 932 bcm_loop_cosq_burst_monitor_set( 933 int unit, 934 int num_gports, 935 bcm_gport_t * gport_list) 936 { 937 return bcm_cosq_burst_monitor_set( 938 BCM_CONTROL(unit)->unit, 939 num_gports, 940 gport_list); 941 } 942 943 int 944 bcm_loop_cosq_classifier_create( 945 int unit, 946 bcm_cosq_classifier_t * classifier, 947 int * classifier_id) 948 { 949 return bcm_cosq_classifier_create( 950 BCM_CONTROL(unit)->unit, 951 classifier, 952 classifier_id); 953 } 954 955 int 956 bcm_loop_cosq_classifier_destroy( 957 int unit, 958 int classifier_id) 959 { 960 return bcm_cosq_classifier_destroy( 961 BCM_CONTROL(unit)->unit, 962 classifier_id); 963 } 964 965 int 966 bcm_loop_cosq_classifier_get( 967 int unit, 968 int classifier_id, 969 bcm_cosq_classifier_t * classifier) 970 { 971 return bcm_cosq_classifier_get( 972 BCM_CONTROL(unit)->unit, 973 classifier_id, 974 classifier); 975 } 976 977 int 978 bcm_loop_cosq_classifier_id_get( 979 int unit, 980 bcm_cosq_classifier_t * classifier, 981 int array_count, 982 bcm_cos_t * priority_array, 983 bcm_cos_queue_t * cosq_array, 984 int * classifier_id) 985 { 986 return bcm_cosq_classifier_id_get( 987 BCM_CONTROL(unit)->unit, 988 classifier, 989 array_count, 990 priority_array, 991 cosq_array, 992 classifier_id); 993 } 994 995 int 996 bcm_loop_cosq_classifier_mapping_clear( 997 int unit, 998 bcm_gport_t port, 999 int classifier_id) 1000 { 1001 return bcm_cosq_classifier_mapping_clear( 1002 BCM_CONTROL(unit)->unit, 1003 port, 1004 classifier_id); 1005 } 1006 1007 int 1008 bcm_loop_cosq_classifier_mapping_get( 1009 int unit, 1010 bcm_gport_t port, 1011 int classifier_id, 1012 bcm_gport_t * queue_group, 1013 bcm_cos_t priority, 1014 bcm_cos_queue_t * cosq) 1015 { 1016 return bcm_cosq_classifier_mapping_get( 1017 BCM_CONTROL(unit)->unit, 1018 port, 1019 classifier_id, 1020 queue_group, 1021 priority, 1022 cosq); 1023 } 1024 1025 int 1026 bcm_loop_cosq_classifier_mapping_multi_get( 1027 int unit, 1028 bcm_gport_t port, 1029 int classifier_id, 1030 bcm_gport_t * queue_group, 1031 int array_max, 1032 bcm_cos_t * priority_array, 1033 bcm_cos_queue_t * cosq_array, 1034 int * array_count) 1035 { 1036 return bcm_cosq_classifier_mapping_multi_get( 1037 BCM_CONTROL(unit)->unit, 1038 port, 1039 classifier_id, 1040 queue_group, 1041 array_max, 1042 priority_array, 1043 cosq_array, 1044 array_count); 1045 } 1046 1047 int 1048 bcm_loop_cosq_classifier_mapping_multi_set( 1049 int unit, 1050 bcm_gport_t port, 1051 int classifier_id, 1052 bcm_gport_t queue_group, 1053 int array_count, 1054 bcm_cos_t * priority_array, 1055 bcm_cos_queue_t * cosq_array) 1056 { 1057 return bcm_cosq_classifier_mapping_multi_set( 1058 BCM_CONTROL(unit)->unit, 1059 port, 1060 classifier_id, 1061 queue_group, 1062 array_count, 1063 priority_array, 1064 cosq_array); 1065 } 1066 1067 int 1068 bcm_loop_cosq_classifier_mapping_set( 1069 int unit, 1070 bcm_gport_t port, 1071 int classifier_id, 1072 bcm_gport_t queue_group, 1073 bcm_cos_t priority, 1074 bcm_cos_queue_t cosq) 1075 { 1076 return bcm_cosq_classifier_mapping_set( 1077 BCM_CONTROL(unit)->unit, 1078 port, 1079 classifier_id, 1080 queue_group, 1081 priority, 1082 cosq); 1083 } 1084 1085 /* bcm_cosq_classifier_t_init not dispatchable */ 1086 1087 int 1088 bcm_loop_cosq_config_get( 1089 int unit, 1090 int * numq) 1091 { 1092 return bcm_cosq_config_get( 1093 BCM_CONTROL(unit)->unit, 1094 numq); 1095 } 1096 1097 int 1098 bcm_loop_cosq_config_set( 1099 int unit, 1100 int numq) 1101 { 1102 return bcm_cosq_config_set( 1103 BCM_CONTROL(unit)->unit, 1104 numq); 1105 } 1106 1107 /* bcm_cosq_congestion_info_t_init not dispatchable */ 1108 1109 int 1110 bcm_loop_cosq_congestion_mapping_get( 1111 int unit, 1112 int fabric_modid, 1113 bcm_cosq_congestion_mapping_info_t * mapping_info) 1114 { 1115 return bcm_cosq_congestion_mapping_get( 1116 BCM_CONTROL(unit)->unit, 1117 fabric_modid, 1118 mapping_info); 1119 } 1120 1121 /* bcm_cosq_congestion_mapping_info_t_init not dispatchable */ 1122 1123 int 1124 bcm_loop_cosq_congestion_mapping_set( 1125 int unit, 1126 int fabric_modid, 1127 bcm_cosq_congestion_mapping_info_t * mapping_info) 1128 { 1129 return bcm_cosq_congestion_mapping_set( 1130 BCM_CONTROL(unit)->unit, 1131 fabric_modid, 1132 mapping_info); 1133 } 1134 1135 /* bcm_cosq_control_data_t_init not dispatchable */ 1136 1137 int 1138 bcm_loop_cosq_control_dynamic_get( 1139 int unit, 1140 bcm_cosq_control_t type, 1141 bcm_cosq_dynamic_setting_type_t * dynamic) 1142 { 1143 return bcm_cosq_control_dynamic_get( 1144 BCM_CONTROL(unit)->unit, 1145 type, 1146 dynamic); 1147 } 1148 1149 int 1150 bcm_loop_cosq_control_extended_get( 1151 int unit, 1152 bcm_cosq_object_id_t * id, 1153 bcm_cosq_control_data_t * control) 1154 { 1155 return bcm_cosq_control_extended_get( 1156 BCM_CONTROL(unit)->unit, 1157 id, 1158 control); 1159 } 1160 1161 int 1162 bcm_loop_cosq_control_extended_set( 1163 int unit, 1164 bcm_cosq_object_id_t * id, 1165 bcm_cosq_control_data_t * control) 1166 { 1167 return bcm_cosq_control_extended_set( 1168 BCM_CONTROL(unit)->unit, 1169 id, 1170 control); 1171 } 1172 1173 int 1174 bcm_loop_cosq_control_get( 1175 int unit, 1176 bcm_gport_t port, 1177 bcm_cos_queue_t cosq, 1178 bcm_cosq_control_t type, 1179 int * arg) 1180 { 1181 return bcm_cosq_control_get( 1182 BCM_CONTROL(unit)->unit, 1183 port, 1184 cosq, 1185 type, 1186 arg); 1187 } 1188 1189 int 1190 bcm_loop_cosq_control_range_get( 1191 int unit, 1192 bcm_gport_t port, 1193 uint32 flags, 1194 bcm_cosq_control_range_type_t type, 1195 bcm_cosq_range_t * range) 1196 { 1197 return bcm_cosq_control_range_get( 1198 BCM_CONTROL(unit)->unit, 1199 port, 1200 flags, 1201 type, 1202 range); 1203 } 1204 1205 int 1206 bcm_loop_cosq_control_range_set( 1207 int unit, 1208 bcm_gport_t port, 1209 uint32 flags, 1210 bcm_cosq_control_range_type_t type, 1211 bcm_cosq_range_t * range) 1212 { 1213 return bcm_cosq_control_range_set( 1214 BCM_CONTROL(unit)->unit, 1215 port, 1216 flags, 1217 type, 1218 range); 1219 } 1220 1221 int 1222 bcm_loop_cosq_control_set( 1223 int unit, 1224 bcm_gport_t port, 1225 bcm_cos_queue_t cosq, 1226 bcm_cosq_control_t type, 1227 int arg) 1228 { 1229 return bcm_cosq_control_set( 1230 BCM_CONTROL(unit)->unit, 1231 port, 1232 cosq, 1233 type, 1234 arg); 1235 } 1236 1237 int 1238 bcm_loop_cosq_cpu_cosq_enable_get( 1239 int unit, 1240 bcm_cos_queue_t cosq, 1241 int * enable) 1242 { 1243 return bcm_cosq_cpu_cosq_enable_get( 1244 BCM_CONTROL(unit)->unit, 1245 cosq, 1246 enable); 1247 } 1248 1249 int 1250 bcm_loop_cosq_cpu_cosq_enable_set( 1251 int unit, 1252 bcm_cos_queue_t cosq, 1253 int enable) 1254 { 1255 return bcm_cosq_cpu_cosq_enable_set( 1256 BCM_CONTROL(unit)->unit, 1257 cosq, 1258 enable); 1259 } 1260 1261 int 1262 bcm_loop_cosq_delay_tolerance_level_get( 1263 int unit, 1264 int delay_tolerance_level, 1265 bcm_cosq_delay_tolerance_t * delay_tolerance) 1266 { 1267 return bcm_cosq_delay_tolerance_level_get( 1268 BCM_CONTROL(unit)->unit, 1269 delay_tolerance_level, 1270 delay_tolerance); 1271 } 1272 1273 int 1274 bcm_loop_cosq_delay_tolerance_level_set( 1275 int unit, 1276 int delay_tolerance_level, 1277 bcm_cosq_delay_tolerance_t * delay_tolerance) 1278 { 1279 return bcm_cosq_delay_tolerance_level_set( 1280 BCM_CONTROL(unit)->unit, 1281 delay_tolerance_level, 1282 delay_tolerance); 1283 } 1284 1285 /* bcm_cosq_delay_tolerance_preset_attr_t_init not dispatchable */ 1286 1287 int 1288 bcm_loop_cosq_delay_tolerance_preset_get( 1289 int unit, 1290 bcm_cosq_delay_tolerance_preset_attr_t * preset_attr, 1291 bcm_cosq_delay_tolerance_t * delay_tolerance) 1292 { 1293 return bcm_cosq_delay_tolerance_preset_get( 1294 BCM_CONTROL(unit)->unit, 1295 preset_attr, 1296 delay_tolerance); 1297 } 1298 1299 int 1300 bcm_loop_cosq_dest_credit_size_get( 1301 int unit, 1302 bcm_module_t dest_modid, 1303 uint32 * credit_size) 1304 { 1305 return bcm_cosq_dest_credit_size_get( 1306 BCM_CONTROL(unit)->unit, 1307 dest_modid, 1308 credit_size); 1309 } 1310 1311 int 1312 bcm_loop_cosq_dest_credit_size_set( 1313 int unit, 1314 bcm_module_t dest_modid, 1315 uint32 credit_size) 1316 { 1317 return bcm_cosq_dest_credit_size_set( 1318 BCM_CONTROL(unit)->unit, 1319 dest_modid, 1320 credit_size); 1321 } 1322 1323 int 1324 bcm_loop_cosq_detach( 1325 int unit) 1326 { 1327 return bcm_cosq_detach( 1328 BCM_CONTROL(unit)->unit); 1329 } 1330 1331 int 1332 bcm_loop_cosq_discard_get( 1333 int unit, 1334 uint32 * flags) 1335 { 1336 return bcm_cosq_discard_get( 1337 BCM_CONTROL(unit)->unit, 1338 flags); 1339 } 1340 1341 int 1342 bcm_loop_cosq_discard_port_get( 1343 int unit, 1344 bcm_port_t port, 1345 bcm_cos_queue_t cosq, 1346 uint32 color, 1347 int * drop_start, 1348 int * drop_slope, 1349 int * average_time) 1350 { 1351 return bcm_cosq_discard_port_get( 1352 BCM_CONTROL(unit)->unit, 1353 port, 1354 cosq, 1355 color, 1356 drop_start, 1357 drop_slope, 1358 average_time); 1359 } 1360 1361 int 1362 bcm_loop_cosq_discard_port_set( 1363 int unit, 1364 bcm_port_t port, 1365 bcm_cos_queue_t cosq, 1366 uint32 color, 1367 int drop_start, 1368 int drop_slope, 1369 int average_time) 1370 { 1371 return bcm_cosq_discard_port_set( 1372 BCM_CONTROL(unit)->unit, 1373 port, 1374 cosq, 1375 color, 1376 drop_start, 1377 drop_slope, 1378 average_time); 1379 } 1380 1381 int 1382 bcm_loop_cosq_discard_profile_create( 1383 int unit, 1384 int * profile_id) 1385 { 1386 return bcm_cosq_discard_profile_create( 1387 BCM_CONTROL(unit)->unit, 1388 profile_id); 1389 } 1390 1391 int 1392 bcm_loop_cosq_discard_profile_destroy( 1393 int unit, 1394 int profile_id) 1395 { 1396 return bcm_cosq_discard_profile_destroy( 1397 BCM_CONTROL(unit)->unit, 1398 profile_id); 1399 } 1400 1401 int 1402 bcm_loop_cosq_discard_profile_get( 1403 int unit, 1404 int profile_id, 1405 int max, 1406 bcm_cosq_discard_rule_t * rule_array, 1407 int * rule_count) 1408 { 1409 return bcm_cosq_discard_profile_get( 1410 BCM_CONTROL(unit)->unit, 1411 profile_id, 1412 max, 1413 rule_array, 1414 rule_count); 1415 } 1416 1417 int 1418 bcm_loop_cosq_discard_profile_update( 1419 int unit, 1420 int profile_id, 1421 bcm_cosq_discard_rule_t * rule) 1422 { 1423 return bcm_cosq_discard_profile_update( 1424 BCM_CONTROL(unit)->unit, 1425 profile_id, 1426 rule); 1427 } 1428 1429 /* bcm_cosq_discard_rule_t_init not dispatchable */ 1430 1431 int 1432 bcm_loop_cosq_discard_set( 1433 int unit, 1434 uint32 flags) 1435 { 1436 return bcm_cosq_discard_set( 1437 BCM_CONTROL(unit)->unit, 1438 flags); 1439 } 1440 1441 int 1442 bcm_loop_cosq_event_register( 1443 int unit, 1444 bcm_cosq_event_types_t event_types, 1445 bcm_gport_t port, 1446 bcm_cos_queue_t cosq, 1447 bcm_cosq_event_cb cb, 1448 void * user_data) 1449 { 1450 return bcm_cosq_event_register( 1451 BCM_CONTROL(unit)->unit, 1452 event_types, 1453 port, 1454 cosq, 1455 cb, 1456 user_data); 1457 } 1458 1459 int 1460 bcm_loop_cosq_event_unregister( 1461 int unit, 1462 bcm_cosq_event_types_t event_types, 1463 bcm_gport_t port, 1464 bcm_cos_queue_t cosq, 1465 bcm_cosq_event_cb cb) 1466 { 1467 return bcm_cosq_event_unregister( 1468 BCM_CONTROL(unit)->unit, 1469 event_types, 1470 port, 1471 cosq, 1472 cb); 1473 } 1474 1475 /* bcm_cosq_fadt_info_t_init not dispatchable */ 1476 1477 int 1478 bcm_loop_cosq_fc_path_add( 1479 int unit, 1480 bcm_cosq_fc_direction_type_t fc_direction, 1481 bcm_cosq_fc_endpoint_t * source, 1482 bcm_cosq_fc_endpoint_t * target) 1483 { 1484 return bcm_cosq_fc_path_add( 1485 BCM_CONTROL(unit)->unit, 1486 fc_direction, 1487 source, 1488 target); 1489 } 1490 1491 int 1492 bcm_loop_cosq_fc_path_delete( 1493 int unit, 1494 bcm_cosq_fc_direction_type_t fc_direction, 1495 bcm_cosq_fc_endpoint_t * source, 1496 bcm_cosq_fc_endpoint_t * target) 1497 { 1498 return bcm_cosq_fc_path_delete( 1499 BCM_CONTROL(unit)->unit, 1500 fc_direction, 1501 source, 1502 target); 1503 } 1504 1505 int 1506 bcm_loop_cosq_fc_path_get( 1507 int unit, 1508 bcm_cosq_fc_direction_type_t fc_direction, 1509 bcm_cosq_fc_endpoint_t * source, 1510 int target_max, 1511 bcm_cosq_fc_endpoint_t * target, 1512 int * target_count) 1513 { 1514 return bcm_cosq_fc_path_get( 1515 BCM_CONTROL(unit)->unit, 1516 fc_direction, 1517 source, 1518 target_max, 1519 target, 1520 target_count); 1521 } 1522 1523 int 1524 bcm_loop_cosq_generic_control_get( 1525 int unit, 1526 uint32 flags, 1527 bcm_gport_t gport, 1528 uint32 key, 1529 bcm_cosq_generic_control_t type, 1530 uint32 * arg) 1531 { 1532 return bcm_cosq_generic_control_get( 1533 BCM_CONTROL(unit)->unit, 1534 flags, 1535 gport, 1536 key, 1537 type, 1538 arg); 1539 } 1540 1541 int 1542 bcm_loop_cosq_generic_control_set( 1543 int unit, 1544 uint32 flags, 1545 bcm_gport_t gport, 1546 uint32 key, 1547 bcm_cosq_generic_control_t type, 1548 uint32 arg) 1549 { 1550 return bcm_cosq_generic_control_set( 1551 BCM_CONTROL(unit)->unit, 1552 flags, 1553 gport, 1554 key, 1555 type, 1556 arg); 1557 } 1558 1559 int 1560 bcm_loop_cosq_gport_add( 1561 int unit, 1562 bcm_gport_t port, 1563 int numq, 1564 uint32 flags, 1565 bcm_gport_t * gport) 1566 { 1567 return bcm_cosq_gport_add( 1568 BCM_CONTROL(unit)->unit, 1569 port, 1570 numq, 1571 flags, 1572 gport); 1573 } 1574 1575 int 1576 bcm_loop_cosq_gport_attach( 1577 int unit, 1578 bcm_gport_t sched_port, 1579 bcm_gport_t input_port, 1580 bcm_cos_queue_t cosq) 1581 { 1582 return bcm_cosq_gport_attach( 1583 BCM_CONTROL(unit)->unit, 1584 sched_port, 1585 input_port, 1586 cosq); 1587 } 1588 1589 int 1590 bcm_loop_cosq_gport_attach_get( 1591 int unit, 1592 bcm_gport_t sched_port, 1593 bcm_gport_t * input_port, 1594 bcm_cos_queue_t * cosq) 1595 { 1596 return bcm_cosq_gport_attach_get( 1597 BCM_CONTROL(unit)->unit, 1598 sched_port, 1599 input_port, 1600 cosq); 1601 } 1602 1603 int 1604 bcm_loop_cosq_gport_bandwidth_get( 1605 int unit, 1606 bcm_gport_t gport, 1607 bcm_cos_queue_t cosq, 1608 uint32 * kbits_sec_min, 1609 uint32 * kbits_sec_max, 1610 uint32 * flags) 1611 { 1612 return bcm_cosq_gport_bandwidth_get( 1613 BCM_CONTROL(unit)->unit, 1614 gport, 1615 cosq, 1616 kbits_sec_min, 1617 kbits_sec_max, 1618 flags); 1619 } 1620 1621 int 1622 bcm_loop_cosq_gport_bandwidth_set( 1623 int unit, 1624 bcm_gport_t gport, 1625 bcm_cos_queue_t cosq, 1626 uint32 kbits_sec_min, 1627 uint32 kbits_sec_max, 1628 uint32 flags) 1629 { 1630 return bcm_cosq_gport_bandwidth_set( 1631 BCM_CONTROL(unit)->unit, 1632 gport, 1633 cosq, 1634 kbits_sec_min, 1635 kbits_sec_max, 1636 flags); 1637 } 1638 1639 int 1640 bcm_loop_cosq_gport_child_get( 1641 int unit, 1642 bcm_gport_t in_gport, 1643 bcm_cos_queue_t cosq, 1644 bcm_gport_t * out_gport) 1645 { 1646 return bcm_cosq_gport_child_get( 1647 BCM_CONTROL(unit)->unit, 1648 in_gport, 1649 cosq, 1650 out_gport); 1651 } 1652 1653 int 1654 bcm_loop_cosq_gport_color_size_get( 1655 int unit, 1656 bcm_gport_t gport, 1657 bcm_cos_queue_t cosq, 1658 bcm_color_t color, 1659 uint32 flags, 1660 bcm_cosq_gport_size_t * gport_size) 1661 { 1662 return bcm_cosq_gport_color_size_get( 1663 BCM_CONTROL(unit)->unit, 1664 gport, 1665 cosq, 1666 color, 1667 flags, 1668 gport_size); 1669 } 1670 1671 int 1672 bcm_loop_cosq_gport_color_size_set( 1673 int unit, 1674 bcm_gport_t gport, 1675 bcm_cos_queue_t cosq, 1676 bcm_color_t color, 1677 uint32 flags, 1678 bcm_cosq_gport_size_t * gport_size) 1679 { 1680 return bcm_cosq_gport_color_size_set( 1681 BCM_CONTROL(unit)->unit, 1682 gport, 1683 cosq, 1684 color, 1685 flags, 1686 gport_size); 1687 } 1688 1689 int 1690 bcm_loop_cosq_gport_congestion_config_get( 1691 int unit, 1692 bcm_gport_t gport, 1693 bcm_cos_queue_t cosq, 1694 bcm_cosq_congestion_info_t * config) 1695 { 1696 return bcm_cosq_gport_congestion_config_get( 1697 BCM_CONTROL(unit)->unit, 1698 gport, 1699 cosq, 1700 config); 1701 } 1702 1703 int 1704 bcm_loop_cosq_gport_congestion_config_set( 1705 int unit, 1706 bcm_gport_t gport, 1707 bcm_cos_queue_t cosq, 1708 bcm_cosq_congestion_info_t * config) 1709 { 1710 return bcm_cosq_gport_congestion_config_set( 1711 BCM_CONTROL(unit)->unit, 1712 gport, 1713 cosq, 1714 config); 1715 } 1716 1717 int 1718 bcm_loop_cosq_gport_connection_get( 1719 int unit, 1720 bcm_cosq_gport_connection_t * gport_connect) 1721 { 1722 return bcm_cosq_gport_connection_get( 1723 BCM_CONTROL(unit)->unit, 1724 gport_connect); 1725 } 1726 1727 int 1728 bcm_loop_cosq_gport_connection_set( 1729 int unit, 1730 bcm_cosq_gport_connection_t * gport_connect) 1731 { 1732 return bcm_cosq_gport_connection_set( 1733 BCM_CONTROL(unit)->unit, 1734 gport_connect); 1735 } 1736 1737 int 1738 bcm_loop_cosq_gport_delete( 1739 int unit, 1740 bcm_gport_t gport) 1741 { 1742 return bcm_cosq_gport_delete( 1743 BCM_CONTROL(unit)->unit, 1744 gport); 1745 } 1746 1747 int 1748 bcm_loop_cosq_gport_destmod_attach( 1749 int unit, 1750 bcm_gport_t gport, 1751 bcm_port_t ingress_port, 1752 bcm_module_t dest_modid, 1753 int fabric_egress_port) 1754 { 1755 return bcm_cosq_gport_destmod_attach( 1756 BCM_CONTROL(unit)->unit, 1757 gport, 1758 ingress_port, 1759 dest_modid, 1760 fabric_egress_port); 1761 } 1762 1763 int 1764 bcm_loop_cosq_gport_destmod_detach( 1765 int unit, 1766 bcm_gport_t gport, 1767 bcm_port_t ingress_port, 1768 bcm_module_t dest_modid, 1769 int fabric_egress_port) 1770 { 1771 return bcm_cosq_gport_destmod_detach( 1772 BCM_CONTROL(unit)->unit, 1773 gport, 1774 ingress_port, 1775 dest_modid, 1776 fabric_egress_port); 1777 } 1778 1779 int 1780 bcm_loop_cosq_gport_detach( 1781 int unit, 1782 bcm_gport_t sched_port, 1783 bcm_gport_t input_port, 1784 bcm_cos_queue_t cosq) 1785 { 1786 return bcm_cosq_gport_detach( 1787 BCM_CONTROL(unit)->unit, 1788 sched_port, 1789 input_port, 1790 cosq); 1791 } 1792 1793 int 1794 bcm_loop_cosq_gport_discard_extended_get( 1795 int unit, 1796 bcm_cosq_object_id_t * id, 1797 bcm_cosq_gport_discard_t * discard) 1798 { 1799 return bcm_cosq_gport_discard_extended_get( 1800 BCM_CONTROL(unit)->unit, 1801 id, 1802 discard); 1803 } 1804 1805 int 1806 bcm_loop_cosq_gport_discard_extended_set( 1807 int unit, 1808 bcm_cosq_object_id_t * id, 1809 bcm_cosq_gport_discard_t * discard) 1810 { 1811 return bcm_cosq_gport_discard_extended_set( 1812 BCM_CONTROL(unit)->unit, 1813 id, 1814 discard); 1815 } 1816 1817 int 1818 bcm_loop_cosq_gport_discard_get( 1819 int unit, 1820 bcm_gport_t gport, 1821 bcm_cos_queue_t cosq, 1822 bcm_cosq_gport_discard_t * discard) 1823 { 1824 return bcm_cosq_gport_discard_get( 1825 BCM_CONTROL(unit)->unit, 1826 gport, 1827 cosq, 1828 discard); 1829 } 1830 1831 int 1832 bcm_loop_cosq_gport_discard_set( 1833 int unit, 1834 bcm_gport_t gport, 1835 bcm_cos_queue_t cosq, 1836 bcm_cosq_gport_discard_t * discard) 1837 { 1838 return bcm_cosq_gport_discard_set( 1839 BCM_CONTROL(unit)->unit, 1840 gport, 1841 cosq, 1842 discard); 1843 } 1844 1845 /* bcm_cosq_gport_discard_t_init not dispatchable */ 1846 1847 int 1848 bcm_loop_cosq_gport_dynamic_sched_get( 1849 int unit, 1850 bcm_gport_t gport, 1851 bcm_cos_queue_t cosq, 1852 bcm_cosq_dynamic_state_t state, 1853 int * weight) 1854 { 1855 return bcm_cosq_gport_dynamic_sched_get( 1856 BCM_CONTROL(unit)->unit, 1857 gport, 1858 cosq, 1859 state, 1860 weight); 1861 } 1862 1863 int 1864 bcm_loop_cosq_gport_dynamic_sched_set( 1865 int unit, 1866 bcm_gport_t gport, 1867 bcm_cos_queue_t cosq, 1868 bcm_cosq_dynamic_state_t state, 1869 int weight) 1870 { 1871 return bcm_cosq_gport_dynamic_sched_set( 1872 BCM_CONTROL(unit)->unit, 1873 gport, 1874 cosq, 1875 state, 1876 weight); 1877 } 1878 1879 int 1880 bcm_loop_cosq_gport_egress_map_get( 1881 int unit, 1882 bcm_gport_t gport, 1883 bcm_cos_t ingress_pri, 1884 bcm_color_t ingress_dp, 1885 bcm_cos_queue_t * offset) 1886 { 1887 return bcm_cosq_gport_egress_map_get( 1888 BCM_CONTROL(unit)->unit, 1889 gport, 1890 ingress_pri, 1891 ingress_dp, 1892 offset); 1893 } 1894 1895 int 1896 bcm_loop_cosq_gport_egress_map_set( 1897 int unit, 1898 bcm_gport_t gport, 1899 bcm_cos_t ingress_pri, 1900 bcm_color_t ingress_dp, 1901 bcm_cos_queue_t offset) 1902 { 1903 return bcm_cosq_gport_egress_map_set( 1904 BCM_CONTROL(unit)->unit, 1905 gport, 1906 ingress_pri, 1907 ingress_dp, 1908 offset); 1909 } 1910 1911 int 1912 bcm_loop_cosq_gport_egress_mapping_get( 1913 int unit, 1914 bcm_gport_t gport, 1915 bcm_cos_t * int_pri, 1916 bcm_cos_t * cos, 1917 uint32 flags) 1918 { 1919 return bcm_cosq_gport_egress_mapping_get( 1920 BCM_CONTROL(unit)->unit, 1921 gport, 1922 int_pri, 1923 cos, 1924 flags); 1925 } 1926 1927 int 1928 bcm_loop_cosq_gport_egress_mapping_set( 1929 int unit, 1930 bcm_gport_t gport, 1931 bcm_cos_t int_pri, 1932 bcm_cos_t cos, 1933 uint32 flags) 1934 { 1935 return bcm_cosq_gport_egress_mapping_set( 1936 BCM_CONTROL(unit)->unit, 1937 gport, 1938 int_pri, 1939 cos, 1940 flags); 1941 } 1942 1943 int 1944 bcm_loop_cosq_gport_egress_multicast_config_get( 1945 int unit, 1946 bcm_gport_t gport, 1947 bcm_cos_t ingress_pri, 1948 bcm_color_t ingress_dp, 1949 uint32 flags, 1950 bcm_cosq_egress_multicast_config_t * config) 1951 { 1952 return bcm_cosq_gport_egress_multicast_config_get( 1953 BCM_CONTROL(unit)->unit, 1954 gport, 1955 ingress_pri, 1956 ingress_dp, 1957 flags, 1958 config); 1959 } 1960 1961 int 1962 bcm_loop_cosq_gport_egress_multicast_config_set( 1963 int unit, 1964 bcm_gport_t gport, 1965 bcm_cos_t ingress_pri, 1966 bcm_color_t ingress_dp, 1967 uint32 flags, 1968 bcm_cosq_egress_multicast_config_t * config) 1969 { 1970 return bcm_cosq_gport_egress_multicast_config_set( 1971 BCM_CONTROL(unit)->unit, 1972 gport, 1973 ingress_pri, 1974 ingress_dp, 1975 flags, 1976 config); 1977 } 1978 1979 int 1980 bcm_loop_cosq_gport_enable_get( 1981 int unit, 1982 bcm_gport_t gport, 1983 bcm_cos_queue_t cosq, 1984 int * enable) 1985 { 1986 return bcm_cosq_gport_enable_get( 1987 BCM_CONTROL(unit)->unit, 1988 gport, 1989 cosq, 1990 enable); 1991 } 1992 1993 int 1994 bcm_loop_cosq_gport_enable_set( 1995 int unit, 1996 bcm_gport_t gport, 1997 bcm_cos_queue_t cosq, 1998 int enable) 1999 { 2000 return bcm_cosq_gport_enable_set( 2001 BCM_CONTROL(unit)->unit, 2002 gport, 2003 cosq, 2004 enable); 2005 } 2006 2007 int 2008 bcm_loop_cosq_gport_fadt_threshold_get( 2009 int unit, 2010 uint32 flags, 2011 bcm_cosq_fadt_info_t * fadt_info, 2012 bcm_cosq_fadt_threshold_t * threshold) 2013 { 2014 return bcm_cosq_gport_fadt_threshold_get( 2015 BCM_CONTROL(unit)->unit, 2016 flags, 2017 fadt_info, 2018 threshold); 2019 } 2020 2021 int 2022 bcm_loop_cosq_gport_fadt_threshold_set( 2023 int unit, 2024 uint32 flags, 2025 bcm_cosq_fadt_info_t * fadt_info, 2026 bcm_cosq_fadt_threshold_t * threshold) 2027 { 2028 return bcm_cosq_gport_fadt_threshold_set( 2029 BCM_CONTROL(unit)->unit, 2030 flags, 2031 fadt_info, 2032 threshold); 2033 } 2034 2035 int 2036 bcm_loop_cosq_gport_flow_control_get( 2037 int unit, 2038 bcm_gport_t port, 2039 bcm_cos_t int_pri, 2040 uint32 * flow_control_mask) 2041 { 2042 return bcm_cosq_gport_flow_control_get( 2043 BCM_CONTROL(unit)->unit, 2044 port, 2045 int_pri, 2046 flow_control_mask); 2047 } 2048 2049 int 2050 bcm_loop_cosq_gport_flow_control_set( 2051 int unit, 2052 bcm_gport_t port, 2053 bcm_cos_t int_pri, 2054 uint32 flow_control_mask) 2055 { 2056 return bcm_cosq_gport_flow_control_set( 2057 BCM_CONTROL(unit)->unit, 2058 port, 2059 int_pri, 2060 flow_control_mask); 2061 } 2062 2063 int 2064 bcm_loop_cosq_gport_get( 2065 int unit, 2066 bcm_gport_t gport, 2067 bcm_gport_t * physical_port, 2068 int * num_cos_levels, 2069 uint32 * flags) 2070 { 2071 return bcm_cosq_gport_get( 2072 BCM_CONTROL(unit)->unit, 2073 gport, 2074 physical_port, 2075 num_cos_levels, 2076 flags); 2077 } 2078 2079 int 2080 bcm_loop_cosq_gport_handle_core_get( 2081 int unit, 2082 bcm_core_t core, 2083 bcm_cosq_gport_info_core_t * gport_info, 2084 bcm_gport_t * out_gport) 2085 { 2086 return bcm_cosq_gport_handle_core_get( 2087 BCM_CONTROL(unit)->unit, 2088 core, 2089 gport_info, 2090 out_gport); 2091 } 2092 2093 int 2094 bcm_loop_cosq_gport_handle_get( 2095 int unit, 2096 bcm_cosq_gport_type_t gport_type, 2097 bcm_cosq_gport_info_t * gport_info) 2098 { 2099 return bcm_cosq_gport_handle_get( 2100 BCM_CONTROL(unit)->unit, 2101 gport_type, 2102 gport_info); 2103 } 2104 2105 int 2106 bcm_loop_cosq_gport_info_get( 2107 int unit, 2108 bcm_gport_t gport, 2109 bcm_cosq_gport_level_info_t * info) 2110 { 2111 return bcm_cosq_gport_info_get( 2112 BCM_CONTROL(unit)->unit, 2113 gport, 2114 info); 2115 } 2116 2117 /* bcm_cosq_gport_level_info_t_init not dispatchable */ 2118 2119 int 2120 bcm_loop_cosq_gport_mapping_get( 2121 int unit, 2122 bcm_port_t ing_port, 2123 bcm_cos_t int_pri, 2124 uint32 flags, 2125 bcm_gport_t * gport, 2126 bcm_cos_queue_t * cosq) 2127 { 2128 return bcm_cosq_gport_mapping_get( 2129 BCM_CONTROL(unit)->unit, 2130 ing_port, 2131 int_pri, 2132 flags, 2133 gport, 2134 cosq); 2135 } 2136 2137 int 2138 bcm_loop_cosq_gport_mapping_set( 2139 int unit, 2140 bcm_port_t ing_port, 2141 bcm_cos_t int_pri, 2142 uint32 flags, 2143 bcm_gport_t gport, 2144 bcm_cos_queue_t cosq) 2145 { 2146 return bcm_cosq_gport_mapping_set( 2147 BCM_CONTROL(unit)->unit, 2148 ing_port, 2149 int_pri, 2150 flags, 2151 gport, 2152 cosq); 2153 } 2154 2155 int 2156 bcm_loop_cosq_gport_multipath_add( 2157 int unit, 2158 bcm_gport_t multipath_gport, 2159 bcm_gport_t member_gport, 2160 bcm_cos_queue_t member_gport_cosq) 2161 { 2162 return bcm_cosq_gport_multipath_add( 2163 BCM_CONTROL(unit)->unit, 2164 multipath_gport, 2165 member_gport, 2166 member_gport_cosq); 2167 } 2168 2169 int 2170 bcm_loop_cosq_gport_multipath_delete( 2171 int unit, 2172 bcm_gport_t multipath_gport, 2173 bcm_gport_t member_gport, 2174 bcm_cos_queue_t member_gport_cosq) 2175 { 2176 return bcm_cosq_gport_multipath_delete( 2177 BCM_CONTROL(unit)->unit, 2178 multipath_gport, 2179 member_gport, 2180 member_gport_cosq); 2181 } 2182 2183 int 2184 bcm_loop_cosq_gport_multipath_get( 2185 int unit, 2186 bcm_gport_t multipath_gport, 2187 int member_gport_max, 2188 bcm_gport_t * member_gport_array, 2189 bcm_cos_queue_t * member_gport_cosq_array, 2190 int * member_gport_count) 2191 { 2192 return bcm_cosq_gport_multipath_get( 2193 BCM_CONTROL(unit)->unit, 2194 multipath_gport, 2195 member_gport_max, 2196 member_gport_array, 2197 member_gport_cosq_array, 2198 member_gport_count); 2199 } 2200 2201 int 2202 bcm_loop_cosq_gport_parent_get( 2203 int unit, 2204 bcm_gport_t child_port, 2205 bcm_cos_queue_t cos, 2206 bcm_gport_t * parent_port) 2207 { 2208 return bcm_cosq_gport_parent_get( 2209 BCM_CONTROL(unit)->unit, 2210 child_port, 2211 cos, 2212 parent_port); 2213 } 2214 2215 int 2216 bcm_loop_cosq_gport_pkt_size_adjust_get( 2217 int unit, 2218 bcm_cosq_pkt_size_adjust_info_t * adjust_info, 2219 int * delta) 2220 { 2221 return bcm_cosq_gport_pkt_size_adjust_get( 2222 BCM_CONTROL(unit)->unit, 2223 adjust_info, 2224 delta); 2225 } 2226 2227 int 2228 bcm_loop_cosq_gport_pkt_size_adjust_set( 2229 int unit, 2230 bcm_cosq_pkt_size_adjust_info_t * adjust_info, 2231 int delta) 2232 { 2233 return bcm_cosq_gport_pkt_size_adjust_set( 2234 BCM_CONTROL(unit)->unit, 2235 adjust_info, 2236 delta); 2237 } 2238 2239 int 2240 bcm_loop_cosq_gport_pon_link_sla_get( 2241 int unit, 2242 bcm_gport_t gport, 2243 bcm_cos_pon_link_sla_t * link_sla) 2244 { 2245 return bcm_cosq_gport_pon_link_sla_get( 2246 BCM_CONTROL(unit)->unit, 2247 gport, 2248 link_sla); 2249 } 2250 2251 int 2252 bcm_loop_cosq_gport_pon_link_sla_set( 2253 int unit, 2254 bcm_gport_t gport, 2255 bcm_cos_pon_link_sla_t * link_sla) 2256 { 2257 return bcm_cosq_gport_pon_link_sla_set( 2258 BCM_CONTROL(unit)->unit, 2259 gport, 2260 link_sla); 2261 } 2262 2263 int 2264 bcm_loop_cosq_gport_queue_attach( 2265 int unit, 2266 uint32 flags, 2267 bcm_gport_t ingress_queue, 2268 bcm_cos_t ingress_int_pri, 2269 bcm_gport_t egress_queue, 2270 bcm_cos_t egress_int_pri, 2271 int * attach_id) 2272 { 2273 return bcm_cosq_gport_queue_attach( 2274 BCM_CONTROL(unit)->unit, 2275 flags, 2276 ingress_queue, 2277 ingress_int_pri, 2278 egress_queue, 2279 egress_int_pri, 2280 attach_id); 2281 } 2282 2283 int 2284 bcm_loop_cosq_gport_queue_attach_get( 2285 int unit, 2286 bcm_gport_t ingress_queue, 2287 bcm_cos_t ingress_int_pri, 2288 bcm_gport_t * egress_queue, 2289 bcm_cos_t * egress_int_pri, 2290 int attach_id) 2291 { 2292 return bcm_cosq_gport_queue_attach_get( 2293 BCM_CONTROL(unit)->unit, 2294 ingress_queue, 2295 ingress_int_pri, 2296 egress_queue, 2297 egress_int_pri, 2298 attach_id); 2299 } 2300 2301 int 2302 bcm_loop_cosq_gport_queue_detach( 2303 int unit, 2304 bcm_gport_t ingress_queue, 2305 bcm_cos_t ingress_int_pri, 2306 int attach_id) 2307 { 2308 return bcm_cosq_gport_queue_detach( 2309 BCM_CONTROL(unit)->unit, 2310 ingress_queue, 2311 ingress_int_pri, 2312 attach_id); 2313 } 2314 2315 int 2316 bcm_loop_cosq_gport_rate_class_create( 2317 int unit, 2318 bcm_gport_t gport, 2319 uint32 flags, 2320 bcm_cosq_rate_class_create_info_t * create_info) 2321 { 2322 return bcm_cosq_gport_rate_class_create( 2323 BCM_CONTROL(unit)->unit, 2324 gport, 2325 flags, 2326 create_info); 2327 } 2328 2329 int 2330 bcm_loop_cosq_gport_reattach( 2331 int unit, 2332 bcm_gport_t sched_port, 2333 bcm_gport_t input_port, 2334 bcm_cos_queue_t cosq) 2335 { 2336 return bcm_cosq_gport_reattach( 2337 BCM_CONTROL(unit)->unit, 2338 sched_port, 2339 input_port, 2340 cosq); 2341 } 2342 2343 int 2344 bcm_loop_cosq_gport_report_threshold_get( 2345 int unit, 2346 bcm_gport_t gport, 2347 bcm_cos_queue_t cosq, 2348 bcm_cosq_report_threshold_t * threshold) 2349 { 2350 return bcm_cosq_gport_report_threshold_get( 2351 BCM_CONTROL(unit)->unit, 2352 gport, 2353 cosq, 2354 threshold); 2355 } 2356 2357 int 2358 bcm_loop_cosq_gport_report_threshold_set( 2359 int unit, 2360 bcm_gport_t gport, 2361 bcm_cos_queue_t cosq, 2362 bcm_cosq_report_threshold_t * threshold) 2363 { 2364 return bcm_cosq_gport_report_threshold_set( 2365 BCM_CONTROL(unit)->unit, 2366 gport, 2367 cosq, 2368 threshold); 2369 } 2370 2371 int 2372 bcm_loop_cosq_gport_sched_config_get( 2373 int unit, 2374 bcm_gport_t gport, 2375 int sched_mode, 2376 int int_pri, 2377 uint32 * flags) 2378 { 2379 return bcm_cosq_gport_sched_config_get( 2380 BCM_CONTROL(unit)->unit, 2381 gport, 2382 sched_mode, 2383 int_pri, 2384 flags); 2385 } 2386 2387 int 2388 bcm_loop_cosq_gport_sched_config_set( 2389 int unit, 2390 bcm_gport_t gport, 2391 int sched_mode, 2392 int int_pri, 2393 uint32 flags) 2394 { 2395 return bcm_cosq_gport_sched_config_set( 2396 BCM_CONTROL(unit)->unit, 2397 gport, 2398 sched_mode, 2399 int_pri, 2400 flags); 2401 } 2402 2403 int 2404 bcm_loop_cosq_gport_sched_get( 2405 int unit, 2406 bcm_gport_t gport, 2407 bcm_cos_queue_t cosq, 2408 int * mode, 2409 int * weight) 2410 { 2411 return bcm_cosq_gport_sched_get( 2412 BCM_CONTROL(unit)->unit, 2413 gport, 2414 cosq, 2415 mode, 2416 weight); 2417 } 2418 2419 int 2420 bcm_loop_cosq_gport_sched_set( 2421 int unit, 2422 bcm_gport_t gport, 2423 bcm_cos_queue_t cosq, 2424 int mode, 2425 int weight) 2426 { 2427 return bcm_cosq_gport_sched_set( 2428 BCM_CONTROL(unit)->unit, 2429 gport, 2430 cosq, 2431 mode, 2432 weight); 2433 } 2434 2435 int 2436 bcm_loop_cosq_gport_size_get( 2437 int unit, 2438 bcm_gport_t gport, 2439 bcm_cos_queue_t cosq, 2440 uint32 * bytes_min, 2441 uint32 * bytes_max) 2442 { 2443 return bcm_cosq_gport_size_get( 2444 BCM_CONTROL(unit)->unit, 2445 gport, 2446 cosq, 2447 bytes_min, 2448 bytes_max); 2449 } 2450 2451 int 2452 bcm_loop_cosq_gport_size_set( 2453 int unit, 2454 bcm_gport_t gport, 2455 bcm_cos_queue_t cosq, 2456 uint32 bytes_min, 2457 uint32 bytes_max) 2458 { 2459 return bcm_cosq_gport_size_set( 2460 BCM_CONTROL(unit)->unit, 2461 gport, 2462 cosq, 2463 bytes_min, 2464 bytes_max); 2465 } 2466 2467 int 2468 bcm_loop_cosq_gport_stat_enable_get( 2469 int unit, 2470 bcm_gport_t gport, 2471 int * enable) 2472 { 2473 return bcm_cosq_gport_stat_enable_get( 2474 BCM_CONTROL(unit)->unit, 2475 gport, 2476 enable); 2477 } 2478 2479 int 2480 bcm_loop_cosq_gport_stat_enable_set( 2481 int unit, 2482 bcm_gport_t gport, 2483 int enable) 2484 { 2485 return bcm_cosq_gport_stat_enable_set( 2486 BCM_CONTROL(unit)->unit, 2487 gport, 2488 enable); 2489 } 2490 2491 int 2492 bcm_loop_cosq_gport_stat_get( 2493 int unit, 2494 bcm_gport_t gport, 2495 bcm_cos_queue_t cosq, 2496 bcm_cosq_gport_stats_t stat, 2497 uint64 * value) 2498 { 2499 return bcm_cosq_gport_stat_get( 2500 BCM_CONTROL(unit)->unit, 2501 gport, 2502 cosq, 2503 stat, 2504 value); 2505 } 2506 2507 int 2508 bcm_loop_cosq_gport_stat_set( 2509 int unit, 2510 bcm_gport_t gport, 2511 bcm_cos_queue_t cosq, 2512 bcm_cosq_gport_stats_t stat, 2513 uint64 value) 2514 { 2515 return bcm_cosq_gport_stat_set( 2516 BCM_CONTROL(unit)->unit, 2517 gport, 2518 cosq, 2519 stat, 2520 value); 2521 } 2522 2523 int 2524 bcm_loop_cosq_gport_stat_sync_get( 2525 int unit, 2526 bcm_gport_t gport, 2527 bcm_cos_queue_t cosq, 2528 bcm_cosq_gport_stats_t stat, 2529 uint64 * value) 2530 { 2531 return bcm_cosq_gport_stat_sync_get( 2532 BCM_CONTROL(unit)->unit, 2533 gport, 2534 cosq, 2535 stat, 2536 value); 2537 } 2538 2539 int 2540 bcm_loop_cosq_gport_static_threshold_get( 2541 int unit, 2542 uint32 flags, 2543 bcm_cosq_static_threshold_info_t * thresh_info, 2544 bcm_cosq_static_threshold_t * threshold) 2545 { 2546 return bcm_cosq_gport_static_threshold_get( 2547 BCM_CONTROL(unit)->unit, 2548 flags, 2549 thresh_info, 2550 threshold); 2551 } 2552 2553 int 2554 bcm_loop_cosq_gport_static_threshold_set( 2555 int unit, 2556 uint32 flags, 2557 bcm_cosq_static_threshold_info_t * thresh_info, 2558 bcm_cosq_static_threshold_t * threshold) 2559 { 2560 return bcm_cosq_gport_static_threshold_set( 2561 BCM_CONTROL(unit)->unit, 2562 flags, 2563 thresh_info, 2564 threshold); 2565 } 2566 2567 int 2568 bcm_loop_cosq_gport_statistic_multi_get( 2569 int unit, 2570 bcm_gport_t gport, 2571 bcm_gport_t lgl_gport, 2572 bcm_cos_queue_t cosq, 2573 int stat_count, 2574 bcm_cosq_gport_stats_t * stats_array, 2575 int value_count, 2576 uint64 * value_array) 2577 { 2578 return bcm_cosq_gport_statistic_multi_get( 2579 BCM_CONTROL(unit)->unit, 2580 gport, 2581 lgl_gport, 2582 cosq, 2583 stat_count, 2584 stats_array, 2585 value_count, 2586 value_array); 2587 } 2588 2589 int 2590 bcm_loop_cosq_gport_statistic_multi_set( 2591 int unit, 2592 bcm_gport_t gport, 2593 bcm_gport_t lgl_gport, 2594 bcm_cos_queue_t cosq, 2595 int stat_count, 2596 bcm_cosq_gport_stats_t * stats_array, 2597 uint64 value) 2598 { 2599 return bcm_cosq_gport_statistic_multi_set( 2600 BCM_CONTROL(unit)->unit, 2601 gport, 2602 lgl_gport, 2603 cosq, 2604 stat_count, 2605 stats_array, 2606 value); 2607 } 2608 2609 int 2610 bcm_loop_cosq_gport_threshold_get( 2611 int unit, 2612 bcm_gport_t gport, 2613 bcm_cos_queue_t cosq, 2614 bcm_cosq_threshold_t * threshold) 2615 { 2616 return bcm_cosq_gport_threshold_get( 2617 BCM_CONTROL(unit)->unit, 2618 gport, 2619 cosq, 2620 threshold); 2621 } 2622 2623 int 2624 bcm_loop_cosq_gport_threshold_set( 2625 int unit, 2626 bcm_gport_t gport, 2627 bcm_cos_queue_t cosq, 2628 bcm_cosq_threshold_t * threshold) 2629 { 2630 return bcm_cosq_gport_threshold_set( 2631 BCM_CONTROL(unit)->unit, 2632 gport, 2633 cosq, 2634 threshold); 2635 } 2636 2637 int 2638 bcm_loop_cosq_gport_traverse( 2639 int unit, 2640 bcm_cosq_gport_traverse_cb cb, 2641 void * user_data) 2642 { 2643 return bcm_cosq_gport_traverse( 2644 BCM_CONTROL(unit)->unit, 2645 cb, 2646 user_data); 2647 } 2648 2649 int 2650 bcm_loop_cosq_gport_traverse_by_port( 2651 int unit, 2652 bcm_gport_t port, 2653 bcm_cosq_gport_traverse_cb cb, 2654 void * user_data) 2655 { 2656 return bcm_cosq_gport_traverse_by_port( 2657 BCM_CONTROL(unit)->unit, 2658 port, 2659 cb, 2660 user_data); 2661 } 2662 2663 int 2664 bcm_loop_cosq_gport_vsq_add( 2665 int unit, 2666 bcm_gport_t vsq, 2667 bcm_gport_t queue, 2668 bcm_cos_queue_t cosq) 2669 { 2670 return bcm_cosq_gport_vsq_add( 2671 BCM_CONTROL(unit)->unit, 2672 vsq, 2673 queue, 2674 cosq); 2675 } 2676 2677 int 2678 bcm_loop_cosq_gport_vsq_create( 2679 int unit, 2680 bcm_cosq_vsq_info_t * vsq_info, 2681 bcm_gport_t * vsq_gport) 2682 { 2683 return bcm_cosq_gport_vsq_create( 2684 BCM_CONTROL(unit)->unit, 2685 vsq_info, 2686 vsq_gport); 2687 } 2688 2689 int 2690 bcm_loop_cosq_gport_vsq_delete( 2691 int unit, 2692 bcm_gport_t vsq, 2693 bcm_gport_t queue, 2694 bcm_cos_queue_t cosq) 2695 { 2696 return bcm_cosq_gport_vsq_delete( 2697 BCM_CONTROL(unit)->unit, 2698 vsq, 2699 queue, 2700 cosq); 2701 } 2702 2703 int 2704 bcm_loop_cosq_gport_vsq_delete_all( 2705 int unit, 2706 bcm_gport_t vsq) 2707 { 2708 return bcm_cosq_gport_vsq_delete_all( 2709 BCM_CONTROL(unit)->unit, 2710 vsq); 2711 } 2712 2713 int 2714 bcm_loop_cosq_gport_vsq_destroy( 2715 int unit, 2716 bcm_gport_t vsq_gport) 2717 { 2718 return bcm_cosq_gport_vsq_destroy( 2719 BCM_CONTROL(unit)->unit, 2720 vsq_gport); 2721 } 2722 2723 int 2724 bcm_loop_cosq_gport_vsq_get( 2725 int unit, 2726 bcm_gport_t vsq, 2727 int queue_max, 2728 bcm_gport_t * queue_array, 2729 bcm_cos_queue_t * cosq_array, 2730 int * queue_count) 2731 { 2732 return bcm_cosq_gport_vsq_get( 2733 BCM_CONTROL(unit)->unit, 2734 vsq, 2735 queue_max, 2736 queue_array, 2737 cosq_array, 2738 queue_count); 2739 } 2740 2741 int 2742 bcm_loop_cosq_hdrm_pool_limit_set( 2743 int unit, 2744 int hdrm_pool, 2745 int num_lossless_class, 2746 int arr_size, 2747 bcm_cosq_pkt_size_dist_t * pkt_dist_array) 2748 { 2749 return bcm_cosq_hdrm_pool_limit_set( 2750 BCM_CONTROL(unit)->unit, 2751 hdrm_pool, 2752 num_lossless_class, 2753 arr_size, 2754 pkt_dist_array); 2755 } 2756 2757 int 2758 bcm_loop_cosq_icgm_resource_stat_get( 2759 int unit, 2760 bcm_cosq_icgm_resource_stat_key_t * stat_key, 2761 uint64 * value) 2762 { 2763 return bcm_cosq_icgm_resource_stat_get( 2764 BCM_CONTROL(unit)->unit, 2765 stat_key, 2766 value); 2767 } 2768 2769 /* bcm_cosq_ingress_drop_control_frame_config_t_init not dispatchable */ 2770 2771 /* bcm_cosq_ingress_drop_flex_key_construct_id_t_init not dispatchable */ 2772 2773 /* bcm_cosq_ingress_drop_flex_key_construct_t_init not dispatchable */ 2774 2775 /* bcm_cosq_ingress_drop_flex_key_entry_t_init not dispatchable */ 2776 2777 /* bcm_cosq_ingress_drop_flex_key_t_init not dispatchable */ 2778 2779 int 2780 bcm_loop_cosq_ingress_port_drop_control_frame_get( 2781 int unit, 2782 bcm_port_t port, 2783 uint32 flags, 2784 uint32 control_frame_index, 2785 bcm_cosq_ingress_drop_control_frame_config_t * control_frame_config) 2786 { 2787 return bcm_cosq_ingress_port_drop_control_frame_get( 2788 BCM_CONTROL(unit)->unit, 2789 port, 2790 flags, 2791 control_frame_index, 2792 control_frame_config); 2793 } 2794 2795 int 2796 bcm_loop_cosq_ingress_port_drop_control_frame_set( 2797 int unit, 2798 bcm_port_t port, 2799 uint32 flags, 2800 uint32 control_frame_index, 2801 bcm_cosq_ingress_drop_control_frame_config_t * control_frame_config) 2802 { 2803 return bcm_cosq_ingress_port_drop_control_frame_set( 2804 BCM_CONTROL(unit)->unit, 2805 port, 2806 flags, 2807 control_frame_index, 2808 control_frame_config); 2809 } 2810 2811 int 2812 bcm_loop_cosq_ingress_port_drop_custom_ether_type_get( 2813 int unit, 2814 bcm_port_t port, 2815 uint32 flags, 2816 uint32 ether_type_code, 2817 uint32 * ether_type_val) 2818 { 2819 return bcm_cosq_ingress_port_drop_custom_ether_type_get( 2820 BCM_CONTROL(unit)->unit, 2821 port, 2822 flags, 2823 ether_type_code, 2824 ether_type_val); 2825 } 2826 2827 int 2828 bcm_loop_cosq_ingress_port_drop_custom_ether_type_set( 2829 int unit, 2830 bcm_port_t port, 2831 uint32 flags, 2832 uint32 ether_type_code, 2833 uint32 ether_type_val) 2834 { 2835 return bcm_cosq_ingress_port_drop_custom_ether_type_set( 2836 BCM_CONTROL(unit)->unit, 2837 port, 2838 flags, 2839 ether_type_code, 2840 ether_type_val); 2841 } 2842 2843 int 2844 bcm_loop_cosq_ingress_port_drop_default_priority_get( 2845 int unit, 2846 bcm_port_t port, 2847 uint32 flags, 2848 uint32 * default_priority) 2849 { 2850 return bcm_cosq_ingress_port_drop_default_priority_get( 2851 BCM_CONTROL(unit)->unit, 2852 port, 2853 flags, 2854 default_priority); 2855 } 2856 2857 int 2858 bcm_loop_cosq_ingress_port_drop_default_priority_set( 2859 int unit, 2860 bcm_port_t port, 2861 uint32 flags, 2862 uint32 default_priority) 2863 { 2864 return bcm_cosq_ingress_port_drop_default_priority_set( 2865 BCM_CONTROL(unit)->unit, 2866 port, 2867 flags, 2868 default_priority); 2869 } 2870 2871 int 2872 bcm_loop_cosq_ingress_port_drop_enable_get( 2873 int unit, 2874 bcm_port_t port, 2875 uint32 flags, 2876 int * enable_mode) 2877 { 2878 return bcm_cosq_ingress_port_drop_enable_get( 2879 BCM_CONTROL(unit)->unit, 2880 port, 2881 flags, 2882 enable_mode); 2883 } 2884 2885 int 2886 bcm_loop_cosq_ingress_port_drop_enable_set( 2887 int unit, 2888 bcm_port_t port, 2889 uint32 flags, 2890 int enable_mode) 2891 { 2892 return bcm_cosq_ingress_port_drop_enable_set( 2893 BCM_CONTROL(unit)->unit, 2894 port, 2895 flags, 2896 enable_mode); 2897 } 2898 2899 int 2900 bcm_loop_cosq_ingress_port_drop_flex_key_construct_get( 2901 int unit, 2902 bcm_cosq_ingress_drop_flex_key_construct_id_t * key_id, 2903 uint32 flags, 2904 bcm_cosq_ingress_drop_flex_key_construct_t * flex_key_config) 2905 { 2906 return bcm_cosq_ingress_port_drop_flex_key_construct_get( 2907 BCM_CONTROL(unit)->unit, 2908 key_id, 2909 flags, 2910 flex_key_config); 2911 } 2912 2913 int 2914 bcm_loop_cosq_ingress_port_drop_flex_key_construct_set( 2915 int unit, 2916 bcm_cosq_ingress_drop_flex_key_construct_id_t * key_id, 2917 uint32 flags, 2918 bcm_cosq_ingress_drop_flex_key_construct_t * flex_key_config) 2919 { 2920 return bcm_cosq_ingress_port_drop_flex_key_construct_set( 2921 BCM_CONTROL(unit)->unit, 2922 key_id, 2923 flags, 2924 flex_key_config); 2925 } 2926 2927 int 2928 bcm_loop_cosq_ingress_port_drop_flex_key_entry_get( 2929 int unit, 2930 bcm_port_t port, 2931 uint32 flags, 2932 uint32 key_index, 2933 bcm_cosq_ingress_drop_flex_key_entry_t * flex_key_info) 2934 { 2935 return bcm_cosq_ingress_port_drop_flex_key_entry_get( 2936 BCM_CONTROL(unit)->unit, 2937 port, 2938 flags, 2939 key_index, 2940 flex_key_info); 2941 } 2942 2943 int 2944 bcm_loop_cosq_ingress_port_drop_flex_key_entry_set( 2945 int unit, 2946 bcm_port_t port, 2947 uint32 flags, 2948 uint32 key_index, 2949 bcm_cosq_ingress_drop_flex_key_entry_t * flex_key_info) 2950 { 2951 return bcm_cosq_ingress_port_drop_flex_key_entry_set( 2952 BCM_CONTROL(unit)->unit, 2953 port, 2954 flags, 2955 key_index, 2956 flex_key_info); 2957 } 2958 2959 int 2960 bcm_loop_cosq_ingress_port_drop_map_get( 2961 int unit, 2962 bcm_port_t port, 2963 uint32 flags, 2964 bcm_cosq_ingress_port_drop_map_t map, 2965 uint32 key, 2966 int * priority) 2967 { 2968 return bcm_cosq_ingress_port_drop_map_get( 2969 BCM_CONTROL(unit)->unit, 2970 port, 2971 flags, 2972 map, 2973 key, 2974 priority); 2975 } 2976 2977 int 2978 bcm_loop_cosq_ingress_port_drop_map_set( 2979 int unit, 2980 bcm_port_t port, 2981 uint32 flags, 2982 bcm_cosq_ingress_port_drop_map_t map, 2983 uint32 key, 2984 int priority) 2985 { 2986 return bcm_cosq_ingress_port_drop_map_set( 2987 BCM_CONTROL(unit)->unit, 2988 port, 2989 flags, 2990 map, 2991 key, 2992 priority); 2993 } 2994 2995 /* bcm_cosq_ingress_port_drop_mpls_special_label_config_t_init not dispatchable */ 2996 2997 int 2998 bcm_loop_cosq_ingress_port_drop_mpls_special_label_get( 2999 int unit, 3000 bcm_port_t port, 3001 uint32 flags, 3002 uint32 label_index, 3003 bcm_cosq_ingress_port_drop_mpls_special_label_config_t * label_config) 3004 { 3005 return bcm_cosq_ingress_port_drop_mpls_special_label_get( 3006 BCM_CONTROL(unit)->unit, 3007 port, 3008 flags, 3009 label_index, 3010 label_config); 3011 } 3012 3013 int 3014 bcm_loop_cosq_ingress_port_drop_mpls_special_label_set( 3015 int unit, 3016 bcm_port_t port, 3017 uint32 flags, 3018 uint32 label_index, 3019 bcm_cosq_ingress_port_drop_mpls_special_label_config_t * label_config) 3020 { 3021 return bcm_cosq_ingress_port_drop_mpls_special_label_set( 3022 BCM_CONTROL(unit)->unit, 3023 port, 3024 flags, 3025 label_index, 3026 label_config); 3027 } 3028 3029 int 3030 bcm_loop_cosq_ingress_port_drop_threshold_get( 3031 int unit, 3032 bcm_port_t port, 3033 uint32 flags, 3034 int priority, 3035 uint32 * value) 3036 { 3037 return bcm_cosq_ingress_port_drop_threshold_get( 3038 BCM_CONTROL(unit)->unit, 3039 port, 3040 flags, 3041 priority, 3042 value); 3043 } 3044 3045 int 3046 bcm_loop_cosq_ingress_port_drop_threshold_set( 3047 int unit, 3048 bcm_port_t port, 3049 uint32 flags, 3050 int priority, 3051 uint32 value) 3052 { 3053 return bcm_cosq_ingress_port_drop_threshold_set( 3054 BCM_CONTROL(unit)->unit, 3055 port, 3056 flags, 3057 priority, 3058 value); 3059 } 3060 3061 int 3062 bcm_loop_cosq_ingress_queue_bundle_gport_add( 3063 int unit, 3064 bcm_cosq_ingress_queue_bundle_gport_config_t * config, 3065 bcm_gport_t * gport) 3066 { 3067 return bcm_cosq_ingress_queue_bundle_gport_add( 3068 BCM_CONTROL(unit)->unit, 3069 config, 3070 gport); 3071 } 3072 3073 int 3074 bcm_loop_cosq_init( 3075 int unit) 3076 { 3077 return bcm_cosq_init( 3078 BCM_CONTROL(unit)->unit); 3079 } 3080 3081 int 3082 bcm_loop_cosq_latency_profile_create( 3083 int unit, 3084 int flags, 3085 bcm_gport_t * profile_gport) 3086 { 3087 return bcm_cosq_latency_profile_create( 3088 BCM_CONTROL(unit)->unit, 3089 flags, 3090 profile_gport); 3091 } 3092 3093 int 3094 bcm_loop_cosq_latency_profile_destroy( 3095 int unit, 3096 int flags, 3097 bcm_gport_t profile_gport) 3098 { 3099 return bcm_cosq_latency_profile_destroy( 3100 BCM_CONTROL(unit)->unit, 3101 flags, 3102 profile_gport); 3103 } 3104 3105 int 3106 bcm_loop_cosq_mapping_get( 3107 int unit, 3108 bcm_cos_t priority, 3109 bcm_cos_queue_t * cosq) 3110 { 3111 return bcm_cosq_mapping_get( 3112 BCM_CONTROL(unit)->unit, 3113 priority, 3114 cosq); 3115 } 3116 3117 int 3118 bcm_loop_cosq_mapping_set( 3119 int unit, 3120 bcm_cos_t priority, 3121 bcm_cos_queue_t cosq) 3122 { 3123 return bcm_cosq_mapping_set( 3124 BCM_CONTROL(unit)->unit, 3125 priority, 3126 cosq); 3127 } 3128 3129 /* bcm_cosq_mapping_t_init not dispatchable */ 3130 3131 int 3132 bcm_loop_cosq_max_latency_pkts_get( 3133 int unit, 3134 bcm_gport_t gport, 3135 uint32 flags, 3136 int max_count, 3137 bcm_cosq_max_latency_pkts_t * max_latency_pkts, 3138 int * actual_count) 3139 { 3140 return bcm_cosq_max_latency_pkts_get( 3141 BCM_CONTROL(unit)->unit, 3142 gport, 3143 flags, 3144 max_count, 3145 max_latency_pkts, 3146 actual_count); 3147 } 3148 3149 int 3150 bcm_loop_cosq_mirror_on_drop_group_get( 3151 int unit, 3152 uint32 flags, 3153 int group_id, 3154 bcm_cosq_mirror_on_drop_group_info_t * group_info) 3155 { 3156 return bcm_cosq_mirror_on_drop_group_get( 3157 BCM_CONTROL(unit)->unit, 3158 flags, 3159 group_id, 3160 group_info); 3161 } 3162 3163 int 3164 bcm_loop_cosq_mirror_on_drop_group_set( 3165 int unit, 3166 uint32 flags, 3167 int group_id, 3168 bcm_cosq_mirror_on_drop_group_info_t * group_info) 3169 { 3170 return bcm_cosq_mirror_on_drop_group_set( 3171 BCM_CONTROL(unit)->unit, 3172 flags, 3173 group_id, 3174 group_info); 3175 } 3176 3177 /* bcm_cosq_object_id_t_init not dispatchable */ 3178 3179 int 3180 bcm_loop_cosq_pfc_class_config_profile_get( 3181 int unit, 3182 int profile_id, 3183 int max_count, 3184 bcm_cosq_pfc_class_map_config_t * config_array, 3185 int * count) 3186 { 3187 return bcm_cosq_pfc_class_config_profile_get( 3188 BCM_CONTROL(unit)->unit, 3189 profile_id, 3190 max_count, 3191 config_array, 3192 count); 3193 } 3194 3195 int 3196 bcm_loop_cosq_pfc_class_config_profile_set( 3197 int unit, 3198 int profile_id, 3199 int count, 3200 bcm_cosq_pfc_class_map_config_t * config_array) 3201 { 3202 return bcm_cosq_pfc_class_config_profile_set( 3203 BCM_CONTROL(unit)->unit, 3204 profile_id, 3205 count, 3206 config_array); 3207 } 3208 3209 /* bcm_cosq_pfc_class_map_config_t_init not dispatchable */ 3210 3211 int 3212 bcm_loop_cosq_pfc_class_mapping_get( 3213 int unit, 3214 bcm_gport_t port, 3215 int array_max, 3216 bcm_cosq_pfc_class_mapping_t * mapping_array, 3217 int * array_count) 3218 { 3219 return bcm_cosq_pfc_class_mapping_get( 3220 BCM_CONTROL(unit)->unit, 3221 port, 3222 array_max, 3223 mapping_array, 3224 array_count); 3225 } 3226 3227 int 3228 bcm_loop_cosq_pfc_class_mapping_set( 3229 int unit, 3230 bcm_gport_t port, 3231 int array_count, 3232 bcm_cosq_pfc_class_mapping_t * mapping_array) 3233 { 3234 return bcm_cosq_pfc_class_mapping_set( 3235 BCM_CONTROL(unit)->unit, 3236 port, 3237 array_count, 3238 mapping_array); 3239 } 3240 3241 /* bcm_cosq_pfc_class_mapping_t_init not dispatchable */ 3242 3243 int 3244 bcm_loop_cosq_pfc_config_get( 3245 int unit, 3246 bcm_gport_t gport, 3247 bcm_cos_queue_t cosq, 3248 uint32 flags, 3249 bcm_cosq_pfc_config_t * config) 3250 { 3251 return bcm_cosq_pfc_config_get( 3252 BCM_CONTROL(unit)->unit, 3253 gport, 3254 cosq, 3255 flags, 3256 config); 3257 } 3258 3259 int 3260 bcm_loop_cosq_pfc_config_set( 3261 int unit, 3262 bcm_gport_t gport, 3263 bcm_cos_queue_t cosq, 3264 uint32 flags, 3265 bcm_cosq_pfc_config_t * config) 3266 { 3267 return bcm_cosq_pfc_config_set( 3268 BCM_CONTROL(unit)->unit, 3269 gport, 3270 cosq, 3271 flags, 3272 config); 3273 } 3274 3275 int 3276 bcm_loop_cosq_pfc_deadlock_config_get( 3277 int unit, 3278 int priority, 3279 bcm_cosq_pfc_deadlock_config_t * config) 3280 { 3281 return bcm_cosq_pfc_deadlock_config_get( 3282 BCM_CONTROL(unit)->unit, 3283 priority, 3284 config); 3285 } 3286 3287 int 3288 bcm_loop_cosq_pfc_deadlock_config_set( 3289 int unit, 3290 int priority, 3291 bcm_cosq_pfc_deadlock_config_t * config) 3292 { 3293 return bcm_cosq_pfc_deadlock_config_set( 3294 BCM_CONTROL(unit)->unit, 3295 priority, 3296 config); 3297 } 3298 3299 /* bcm_cosq_pfc_deadlock_config_t_init not dispatchable */ 3300 3301 int 3302 bcm_loop_cosq_pfc_deadlock_control_get( 3303 int unit, 3304 bcm_port_t port, 3305 int pfc_priority, 3306 bcm_cosq_pfc_deadlock_control_t type, 3307 int * arg) 3308 { 3309 return bcm_cosq_pfc_deadlock_control_get( 3310 BCM_CONTROL(unit)->unit, 3311 port, 3312 pfc_priority, 3313 type, 3314 arg); 3315 } 3316 3317 int 3318 bcm_loop_cosq_pfc_deadlock_control_set( 3319 int unit, 3320 bcm_port_t port, 3321 int pfc_priority, 3322 bcm_cosq_pfc_deadlock_control_t type, 3323 int arg) 3324 { 3325 return bcm_cosq_pfc_deadlock_control_set( 3326 BCM_CONTROL(unit)->unit, 3327 port, 3328 pfc_priority, 3329 type, 3330 arg); 3331 } 3332 3333 int 3334 bcm_loop_cosq_pfc_deadlock_info_get( 3335 int unit, 3336 int priority, 3337 bcm_cosq_pfc_deadlock_info_t * pfc_deadlock_info) 3338 { 3339 return bcm_cosq_pfc_deadlock_info_get( 3340 BCM_CONTROL(unit)->unit, 3341 priority, 3342 pfc_deadlock_info); 3343 } 3344 3345 /* bcm_cosq_pfc_deadlock_info_t_init not dispatchable */ 3346 3347 int 3348 bcm_loop_cosq_pfc_deadlock_queue_config_get( 3349 int unit, 3350 bcm_gport_t gport, 3351 bcm_cosq_pfc_deadlock_queue_config_t * q_config) 3352 { 3353 return bcm_cosq_pfc_deadlock_queue_config_get( 3354 BCM_CONTROL(unit)->unit, 3355 gport, 3356 q_config); 3357 } 3358 3359 int 3360 bcm_loop_cosq_pfc_deadlock_queue_config_set( 3361 int unit, 3362 bcm_gport_t gport, 3363 bcm_cosq_pfc_deadlock_queue_config_t * q_config) 3364 { 3365 return bcm_cosq_pfc_deadlock_queue_config_set( 3366 BCM_CONTROL(unit)->unit, 3367 gport, 3368 q_config); 3369 } 3370 3371 /* bcm_cosq_pfc_deadlock_queue_config_t_init not dispatchable */ 3372 3373 int 3374 bcm_loop_cosq_pfc_deadlock_queue_status_get( 3375 int unit, 3376 bcm_gport_t gport, 3377 uint8 * deadlock_status) 3378 { 3379 return bcm_cosq_pfc_deadlock_queue_status_get( 3380 BCM_CONTROL(unit)->unit, 3381 gport, 3382 deadlock_status); 3383 } 3384 3385 int 3386 bcm_loop_cosq_pfc_deadlock_recovery_event_register( 3387 int unit, 3388 bcm_cosq_pfc_deadlock_recovery_event_cb_t callback, 3389 void * userdata) 3390 { 3391 return bcm_cosq_pfc_deadlock_recovery_event_register( 3392 BCM_CONTROL(unit)->unit, 3393 callback, 3394 userdata); 3395 } 3396 3397 int 3398 bcm_loop_cosq_pfc_deadlock_recovery_event_unregister( 3399 int unit, 3400 bcm_cosq_pfc_deadlock_recovery_event_cb_t callback, 3401 void * userdata) 3402 { 3403 return bcm_cosq_pfc_deadlock_recovery_event_unregister( 3404 BCM_CONTROL(unit)->unit, 3405 callback, 3406 userdata); 3407 } 3408 3409 int 3410 bcm_loop_cosq_pfc_deadlock_recovery_exit( 3411 int unit, 3412 bcm_port_t port, 3413 bcm_cos_t cosq) 3414 { 3415 return bcm_cosq_pfc_deadlock_recovery_exit( 3416 BCM_CONTROL(unit)->unit, 3417 port, 3418 cosq); 3419 } 3420 3421 int 3422 bcm_loop_cosq_pfc_deadlock_recovery_start( 3423 int unit, 3424 bcm_port_t port, 3425 bcm_cos_t cosq) 3426 { 3427 return bcm_cosq_pfc_deadlock_recovery_start( 3428 BCM_CONTROL(unit)->unit, 3429 port, 3430 cosq); 3431 } 3432 3433 int 3434 bcm_loop_cosq_pkt_size_adjust_delta_map_get( 3435 int unit, 3436 int delta, 3437 int * final_delta) 3438 { 3439 return bcm_cosq_pkt_size_adjust_delta_map_get( 3440 BCM_CONTROL(unit)->unit, 3441 delta, 3442 final_delta); 3443 } 3444 3445 int 3446 bcm_loop_cosq_pkt_size_adjust_delta_map_set( 3447 int unit, 3448 int delta, 3449 int final_delta) 3450 { 3451 return bcm_cosq_pkt_size_adjust_delta_map_set( 3452 BCM_CONTROL(unit)->unit, 3453 delta, 3454 final_delta); 3455 } 3456 3457 int 3458 bcm_loop_cosq_port_bandwidth_get( 3459 int unit, 3460 bcm_port_t port, 3461 bcm_cos_queue_t cosq, 3462 uint32 * kbits_sec_min, 3463 uint32 * kbits_sec_max, 3464 uint32 * flags) 3465 { 3466 return bcm_cosq_port_bandwidth_get( 3467 BCM_CONTROL(unit)->unit, 3468 port, 3469 cosq, 3470 kbits_sec_min, 3471 kbits_sec_max, 3472 flags); 3473 } 3474 3475 int 3476 bcm_loop_cosq_port_bandwidth_set( 3477 int unit, 3478 bcm_port_t port, 3479 bcm_cos_queue_t cosq, 3480 uint32 kbits_sec_min, 3481 uint32 kbits_sec_max, 3482 uint32 flags) 3483 { 3484 return bcm_cosq_port_bandwidth_set( 3485 BCM_CONTROL(unit)->unit, 3486 port, 3487 cosq, 3488 kbits_sec_min, 3489 kbits_sec_max, 3490 flags); 3491 } 3492 3493 int 3494 bcm_loop_cosq_port_mapping_get( 3495 int unit, 3496 bcm_port_t port, 3497 bcm_cos_t priority, 3498 bcm_cos_queue_t * cosq) 3499 { 3500 return bcm_cosq_port_mapping_get( 3501 BCM_CONTROL(unit)->unit, 3502 port, 3503 priority, 3504 cosq); 3505 } 3506 3507 int 3508 bcm_loop_cosq_port_mapping_multi_get( 3509 int unit, 3510 bcm_port_t port, 3511 int count, 3512 bcm_cos_t * priority_array, 3513 bcm_cos_queue_t * cosq_array) 3514 { 3515 return bcm_cosq_port_mapping_multi_get( 3516 BCM_CONTROL(unit)->unit, 3517 port, 3518 count, 3519 priority_array, 3520 cosq_array); 3521 } 3522 3523 int 3524 bcm_loop_cosq_port_mapping_multi_set( 3525 int unit, 3526 bcm_port_t port, 3527 int count, 3528 bcm_cos_t * priority_array, 3529 bcm_cos_queue_t * cosq_array) 3530 { 3531 return bcm_cosq_port_mapping_multi_set( 3532 BCM_CONTROL(unit)->unit, 3533 port, 3534 count, 3535 priority_array, 3536 cosq_array); 3537 } 3538 3539 int 3540 bcm_loop_cosq_port_mapping_set( 3541 int unit, 3542 bcm_port_t port, 3543 bcm_cos_t priority, 3544 bcm_cos_queue_t cosq) 3545 { 3546 return bcm_cosq_port_mapping_set( 3547 BCM_CONTROL(unit)->unit, 3548 port, 3549 priority, 3550 cosq); 3551 } 3552 3553 int 3554 bcm_loop_cosq_port_optimized_pfc_group_num_get( 3555 int unit, 3556 bcm_port_t port, 3557 int * arg) 3558 { 3559 return bcm_cosq_port_optimized_pfc_group_num_get( 3560 BCM_CONTROL(unit)->unit, 3561 port, 3562 arg); 3563 } 3564 3565 int 3566 bcm_loop_cosq_port_prigrp_hdrm_set( 3567 int unit, 3568 bcm_port_t port, 3569 uint32 pri_bmp, 3570 int cable_len, 3571 int arr_size, 3572 bcm_cosq_pkt_size_dist_t * pkt_dist_array) 3573 { 3574 return bcm_cosq_port_prigrp_hdrm_set( 3575 BCM_CONTROL(unit)->unit, 3576 port, 3577 pri_bmp, 3578 cable_len, 3579 arr_size, 3580 pkt_dist_array); 3581 } 3582 3583 int 3584 bcm_loop_cosq_port_priority_group_property_get( 3585 int unit, 3586 bcm_port_t port, 3587 int priority_group_id, 3588 bcm_cosq_port_prigroup_control_t type, 3589 int * arg) 3590 { 3591 return bcm_cosq_port_priority_group_property_get( 3592 BCM_CONTROL(unit)->unit, 3593 port, 3594 priority_group_id, 3595 type, 3596 arg); 3597 } 3598 3599 int 3600 bcm_loop_cosq_port_priority_group_property_set( 3601 int unit, 3602 bcm_port_t port, 3603 int priority_group_id, 3604 bcm_cosq_port_prigroup_control_t type, 3605 int arg) 3606 { 3607 return bcm_cosq_port_priority_group_property_set( 3608 BCM_CONTROL(unit)->unit, 3609 port, 3610 priority_group_id, 3611 type, 3612 arg); 3613 } 3614 3615 int 3616 bcm_loop_cosq_port_profile_get( 3617 int unit, 3618 bcm_port_t port, 3619 bcm_cosq_profile_type_t profile_type, 3620 int * profile_id) 3621 { 3622 return bcm_cosq_port_profile_get( 3623 BCM_CONTROL(unit)->unit, 3624 port, 3625 profile_type, 3626 profile_id); 3627 } 3628 3629 int 3630 bcm_loop_cosq_port_profile_set( 3631 int unit, 3632 bcm_port_t port, 3633 bcm_cosq_profile_type_t profile_type, 3634 int profile_id) 3635 { 3636 return bcm_cosq_port_profile_set( 3637 BCM_CONTROL(unit)->unit, 3638 port, 3639 profile_type, 3640 profile_id); 3641 } 3642 3643 int 3644 bcm_loop_cosq_port_sched_config_get( 3645 int unit, 3646 bcm_pbmp_t pbm, 3647 int weight_arr_size, 3648 int * weights, 3649 int * weight_arr_count, 3650 int * mode) 3651 { 3652 return bcm_cosq_port_sched_config_get( 3653 BCM_CONTROL(unit)->unit, 3654 pbm, 3655 weight_arr_size, 3656 weights, 3657 weight_arr_count, 3658 mode); 3659 } 3660 3661 int 3662 bcm_loop_cosq_port_sched_config_set( 3663 int unit, 3664 bcm_pbmp_t pbm, 3665 int mode, 3666 int weight_arr_size, 3667 int * weights) 3668 { 3669 return bcm_cosq_port_sched_config_set( 3670 BCM_CONTROL(unit)->unit, 3671 pbm, 3672 mode, 3673 weight_arr_size, 3674 weights); 3675 } 3676 3677 int 3678 bcm_loop_cosq_port_sched_get( 3679 int unit, 3680 bcm_pbmp_t pbm, 3681 int * mode, 3682 int weights[BCM_COS_COUNT], 3683 int * delay) 3684 { 3685 return bcm_cosq_port_sched_get( 3686 BCM_CONTROL(unit)->unit, 3687 pbm, 3688 mode, 3689 weights, 3690 delay); 3691 } 3692 3693 int 3694 bcm_loop_cosq_port_sched_set( 3695 int unit, 3696 bcm_pbmp_t pbm, 3697 int mode, 3698 const int weights[BCM_COS_COUNT], 3699 int delay) 3700 { 3701 return bcm_cosq_port_sched_set( 3702 BCM_CONTROL(unit)->unit, 3703 pbm, 3704 mode, 3705 weights, 3706 delay); 3707 } 3708 3709 int 3710 bcm_loop_cosq_priority_get( 3711 int unit, 3712 int start_queue, 3713 int end_queue, 3714 int * pri_profile_id) 3715 { 3716 return bcm_cosq_priority_get( 3717 BCM_CONTROL(unit)->unit, 3718 start_queue, 3719 end_queue, 3720 pri_profile_id); 3721 } 3722 3723 int 3724 bcm_loop_cosq_priority_group_mapping_profile_get( 3725 int unit, 3726 int profile_index, 3727 bcm_cosq_priority_group_mapping_profile_type_t type, 3728 int array_max, 3729 int * arg, 3730 int * array_count) 3731 { 3732 return bcm_cosq_priority_group_mapping_profile_get( 3733 BCM_CONTROL(unit)->unit, 3734 profile_index, 3735 type, 3736 array_max, 3737 arg, 3738 array_count); 3739 } 3740 3741 int 3742 bcm_loop_cosq_priority_group_mapping_profile_set( 3743 int unit, 3744 int profile_index, 3745 bcm_cosq_priority_group_mapping_profile_type_t type, 3746 int array_count, 3747 int * arg) 3748 { 3749 return bcm_cosq_priority_group_mapping_profile_set( 3750 BCM_CONTROL(unit)->unit, 3751 profile_index, 3752 type, 3753 array_count, 3754 arg); 3755 } 3756 3757 int 3758 bcm_loop_cosq_priority_group_pfc_priority_mapping_profile_get( 3759 int unit, 3760 int profile_id, 3761 int array_max, 3762 int * pg_array, 3763 int * array_count) 3764 { 3765 return bcm_cosq_priority_group_pfc_priority_mapping_profile_get( 3766 BCM_CONTROL(unit)->unit, 3767 profile_id, 3768 array_max, 3769 pg_array, 3770 array_count); 3771 } 3772 3773 int 3774 bcm_loop_cosq_priority_group_pfc_priority_mapping_profile_set( 3775 int unit, 3776 int profile_id, 3777 int array_count, 3778 int * pg_array) 3779 { 3780 return bcm_cosq_priority_group_pfc_priority_mapping_profile_set( 3781 BCM_CONTROL(unit)->unit, 3782 profile_id, 3783 array_count, 3784 pg_array); 3785 } 3786 3787 int 3788 bcm_loop_cosq_priority_mapping_get_all( 3789 int unit, 3790 bcm_gport_t gport, 3791 int index, 3792 bcm_cosq_priority_mapping_t type, 3793 int pri_max, 3794 int * pri_array, 3795 int * pri_count) 3796 { 3797 return bcm_cosq_priority_mapping_get_all( 3798 BCM_CONTROL(unit)->unit, 3799 gport, 3800 index, 3801 type, 3802 pri_max, 3803 pri_array, 3804 pri_count); 3805 } 3806 3807 int 3808 bcm_loop_cosq_priority_profile_get( 3809 int unit, 3810 int pri_profile_id, 3811 int * count, 3812 bcm_cosq_gport_priority_profile_t * pri_profile) 3813 { 3814 return bcm_cosq_priority_profile_get( 3815 BCM_CONTROL(unit)->unit, 3816 pri_profile_id, 3817 count, 3818 pri_profile); 3819 } 3820 3821 int 3822 bcm_loop_cosq_priority_profile_set( 3823 int unit, 3824 int pri_profile_id, 3825 int count, 3826 bcm_cosq_gport_priority_profile_t * pri_profile) 3827 { 3828 return bcm_cosq_priority_profile_set( 3829 BCM_CONTROL(unit)->unit, 3830 pri_profile_id, 3831 count, 3832 pri_profile); 3833 } 3834 3835 int 3836 bcm_loop_cosq_priority_set( 3837 int unit, 3838 int start_queue, 3839 int end_queue, 3840 int pri_profile_id) 3841 { 3842 return bcm_cosq_priority_set( 3843 BCM_CONTROL(unit)->unit, 3844 start_queue, 3845 end_queue, 3846 pri_profile_id); 3847 } 3848 3849 int 3850 bcm_loop_cosq_profile_info_inuse_get( 3851 int unit, 3852 bcm_cosq_profile_type_t profile_type, 3853 int profile_id, 3854 int * in_use) 3855 { 3856 return bcm_cosq_profile_info_inuse_get( 3857 BCM_CONTROL(unit)->unit, 3858 profile_type, 3859 profile_id, 3860 in_use); 3861 } 3862 3863 int 3864 bcm_loop_cosq_profile_info_portlist_get( 3865 int unit, 3866 bcm_cosq_profile_type_t profile_type, 3867 int profile_id, 3868 int max_port_count, 3869 bcm_port_t * port_list, 3870 int * port_count) 3871 { 3872 return bcm_cosq_profile_info_portlist_get( 3873 BCM_CONTROL(unit)->unit, 3874 profile_type, 3875 profile_id, 3876 max_port_count, 3877 port_list, 3878 port_count); 3879 } 3880 3881 int 3882 bcm_loop_cosq_profile_mapping_get( 3883 int unit, 3884 bcm_gport_t gport_to_map, 3885 bcm_cos_queue_t cosq, 3886 uint32 flags, 3887 bcm_switch_profile_mapping_t * profile_mapping) 3888 { 3889 return bcm_cosq_profile_mapping_get( 3890 BCM_CONTROL(unit)->unit, 3891 gport_to_map, 3892 cosq, 3893 flags, 3894 profile_mapping); 3895 } 3896 3897 int 3898 bcm_loop_cosq_profile_mapping_set( 3899 int unit, 3900 bcm_gport_t gport_to_map, 3901 bcm_cos_queue_t cosq, 3902 uint32 flags, 3903 bcm_switch_profile_mapping_t * profile_mapping) 3904 { 3905 return bcm_cosq_profile_mapping_set( 3906 BCM_CONTROL(unit)->unit, 3907 gport_to_map, 3908 cosq, 3909 flags, 3910 profile_mapping); 3911 } 3912 3913 int 3914 bcm_loop_cosq_profile_property_dynamic_get( 3915 int unit, 3916 bcm_cosq_profile_type_t profile_type, 3917 bcm_cosq_dynamic_setting_type_t * dynamic) 3918 { 3919 return bcm_cosq_profile_property_dynamic_get( 3920 BCM_CONTROL(unit)->unit, 3921 profile_type, 3922 dynamic); 3923 } 3924 3925 int 3926 bcm_loop_cosq_qcn_config_get( 3927 int unit, 3928 bcm_gport_t port, 3929 bcm_cos_queue_t cosq, 3930 uint32 flags, 3931 bcm_cosq_qcn_config_t * config) 3932 { 3933 return bcm_cosq_qcn_config_get( 3934 BCM_CONTROL(unit)->unit, 3935 port, 3936 cosq, 3937 flags, 3938 config); 3939 } 3940 3941 int 3942 bcm_loop_cosq_qcn_config_set( 3943 int unit, 3944 bcm_gport_t port, 3945 bcm_cos_queue_t cosq, 3946 uint32 flags, 3947 bcm_cosq_qcn_config_t * config) 3948 { 3949 return bcm_cosq_qcn_config_set( 3950 BCM_CONTROL(unit)->unit, 3951 port, 3952 cosq, 3953 flags, 3954 config); 3955 } 3956 3957 int 3958 bcm_loop_cosq_resource_allocation_get( 3959 int unit, 3960 uint32 flags, 3961 bcm_cosq_resource_t resource, 3962 bcm_cosq_allocation_entity_t * target, 3963 bcm_cosq_resource_amounts_t * amounts) 3964 { 3965 return bcm_cosq_resource_allocation_get( 3966 BCM_CONTROL(unit)->unit, 3967 flags, 3968 resource, 3969 target, 3970 amounts); 3971 } 3972 3973 int 3974 bcm_loop_cosq_resource_allocation_set( 3975 int unit, 3976 uint32 flags, 3977 bcm_cosq_resource_t resource, 3978 bcm_cosq_allocation_entity_t * target, 3979 bcm_cosq_resource_amounts_t * amounts) 3980 { 3981 return bcm_cosq_resource_allocation_set( 3982 BCM_CONTROL(unit)->unit, 3983 flags, 3984 resource, 3985 target, 3986 amounts); 3987 } 3988 3989 int 3990 bcm_loop_cosq_safc_class_mapping_get( 3991 int unit, 3992 bcm_gport_t port, 3993 int array_max, 3994 bcm_cosq_safc_class_mapping_t * mapping_array, 3995 int * array_count) 3996 { 3997 return bcm_cosq_safc_class_mapping_get( 3998 BCM_CONTROL(unit)->unit, 3999 port, 4000 array_max, 4001 mapping_array, 4002 array_count); 4003 } 4004 4005 int 4006 bcm_loop_cosq_safc_class_mapping_set( 4007 int unit, 4008 bcm_gport_t port, 4009 int array_count, 4010 bcm_cosq_safc_class_mapping_t * mapping_array) 4011 { 4012 return bcm_cosq_safc_class_mapping_set( 4013 BCM_CONTROL(unit)->unit, 4014 port, 4015 array_count, 4016 mapping_array); 4017 } 4018 4019 /* bcm_cosq_safc_class_mapping_t_init not dispatchable */ 4020 4021 int 4022 bcm_loop_cosq_sched_config_get( 4023 int unit, 4024 int weight_arr_size, 4025 int * weights, 4026 int * weight_arr_count, 4027 int * mode) 4028 { 4029 return bcm_cosq_sched_config_get( 4030 BCM_CONTROL(unit)->unit, 4031 weight_arr_size, 4032 weights, 4033 weight_arr_count, 4034 mode); 4035 } 4036 4037 int 4038 bcm_loop_cosq_sched_config_set( 4039 int unit, 4040 int mode, 4041 int weight_arr_size, 4042 int * weights) 4043 { 4044 return bcm_cosq_sched_config_set( 4045 BCM_CONTROL(unit)->unit, 4046 mode, 4047 weight_arr_size, 4048 weights); 4049 } 4050 4051 int 4052 bcm_loop_cosq_sched_get( 4053 int unit, 4054 int * mode, 4055 int weights[BCM_COS_COUNT], 4056 int * delay) 4057 { 4058 return bcm_cosq_sched_get( 4059 BCM_CONTROL(unit)->unit, 4060 mode, 4061 weights, 4062 delay); 4063 } 4064 4065 int 4066 bcm_loop_cosq_sched_set( 4067 int unit, 4068 int mode, 4069 const int weights[BCM_COS_COUNT], 4070 int delay) 4071 { 4072 return bcm_cosq_sched_set( 4073 BCM_CONTROL(unit)->unit, 4074 mode, 4075 weights, 4076 delay); 4077 } 4078 4079 int 4080 bcm_loop_cosq_sched_weight_max_get( 4081 int unit, 4082 int mode, 4083 int * weight_max) 4084 { 4085 return bcm_cosq_sched_weight_max_get( 4086 BCM_CONTROL(unit)->unit, 4087 mode, 4088 weight_max); 4089 } 4090 4091 int 4092 bcm_loop_cosq_schedq_mapping_get( 4093 int unit, 4094 int profile_index, 4095 int array_max, 4096 bcm_cosq_mapping_t * cosq_mapping_arr, 4097 int * size) 4098 { 4099 return bcm_cosq_schedq_mapping_get( 4100 BCM_CONTROL(unit)->unit, 4101 profile_index, 4102 array_max, 4103 cosq_mapping_arr, 4104 size); 4105 } 4106 4107 int 4108 bcm_loop_cosq_schedq_mapping_set( 4109 int unit, 4110 int profile_index, 4111 int size, 4112 bcm_cosq_mapping_t * cosq_mapping_arr) 4113 { 4114 return bcm_cosq_schedq_mapping_set( 4115 BCM_CONTROL(unit)->unit, 4116 profile_index, 4117 size, 4118 cosq_mapping_arr); 4119 } 4120 4121 int 4122 bcm_loop_cosq_scheduler_gport_add( 4123 int unit, 4124 uint32 flags, 4125 bcm_cosq_scheduler_gport_params_t * params, 4126 bcm_gport_t * gport) 4127 { 4128 return bcm_cosq_scheduler_gport_add( 4129 BCM_CONTROL(unit)->unit, 4130 flags, 4131 params, 4132 gport); 4133 } 4134 4135 int 4136 bcm_loop_cosq_scheduler_gport_get( 4137 int unit, 4138 uint32 flags, 4139 bcm_gport_t gport, 4140 bcm_cosq_scheduler_gport_params_t * params) 4141 { 4142 return bcm_cosq_scheduler_gport_get( 4143 BCM_CONTROL(unit)->unit, 4144 flags, 4145 gport, 4146 params); 4147 } 4148 4149 int 4150 bcm_loop_cosq_service_pool_get( 4151 int unit, 4152 bcm_service_pool_id_t id, 4153 bcm_cosq_service_pool_t * cosq_service_pool) 4154 { 4155 return bcm_cosq_service_pool_get( 4156 BCM_CONTROL(unit)->unit, 4157 id, 4158 cosq_service_pool); 4159 } 4160 4161 int 4162 bcm_loop_cosq_service_pool_override_get( 4163 int unit, 4164 bcm_cosq_service_pool_override_type_t type, 4165 bcm_service_pool_id_t * service_pool, 4166 int * enable) 4167 { 4168 return bcm_cosq_service_pool_override_get( 4169 BCM_CONTROL(unit)->unit, 4170 type, 4171 service_pool, 4172 enable); 4173 } 4174 4175 int 4176 bcm_loop_cosq_service_pool_override_set( 4177 int unit, 4178 bcm_cosq_service_pool_override_type_t type, 4179 bcm_service_pool_id_t service_pool, 4180 int enable) 4181 { 4182 return bcm_cosq_service_pool_override_set( 4183 BCM_CONTROL(unit)->unit, 4184 type, 4185 service_pool, 4186 enable); 4187 } 4188 4189 int 4190 bcm_loop_cosq_service_pool_set( 4191 int unit, 4192 bcm_service_pool_id_t id, 4193 bcm_cosq_service_pool_t cosq_service_pool) 4194 { 4195 return bcm_cosq_service_pool_set( 4196 BCM_CONTROL(unit)->unit, 4197 id, 4198 cosq_service_pool); 4199 } 4200 4201 /* bcm_cosq_service_pool_t_init not dispatchable */ 4202 4203 int 4204 bcm_loop_cosq_slow_profile_get( 4205 int unit, 4206 bcm_cosq_slow_level_t * slow_level, 4207 bcm_cosq_slow_profile_attributes_t * attr) 4208 { 4209 return bcm_cosq_slow_profile_get( 4210 BCM_CONTROL(unit)->unit, 4211 slow_level, 4212 attr); 4213 } 4214 4215 int 4216 bcm_loop_cosq_slow_profile_set( 4217 int unit, 4218 bcm_cosq_slow_level_t * slow_level, 4219 bcm_cosq_slow_profile_attributes_t * attr) 4220 { 4221 return bcm_cosq_slow_profile_set( 4222 BCM_CONTROL(unit)->unit, 4223 slow_level, 4224 attr); 4225 } 4226 4227 int 4228 bcm_loop_cosq_src_vsqs_gport_add( 4229 int unit, 4230 bcm_gport_t port, 4231 bcm_cosq_src_vsqs_gport_config_t * config, 4232 bcm_gport_t * src_port_vsq_gport, 4233 bcm_gport_t * pg_base_vsq_gport) 4234 { 4235 return bcm_cosq_src_vsqs_gport_add( 4236 BCM_CONTROL(unit)->unit, 4237 port, 4238 config, 4239 src_port_vsq_gport, 4240 pg_base_vsq_gport); 4241 } 4242 4243 int 4244 bcm_loop_cosq_src_vsqs_gport_get( 4245 int unit, 4246 bcm_gport_t port, 4247 bcm_cosq_src_vsqs_gport_config_t * config, 4248 bcm_gport_t * src_port_vsq_gport, 4249 bcm_gport_t * pg_base_vsq_gport) 4250 { 4251 return bcm_cosq_src_vsqs_gport_get( 4252 BCM_CONTROL(unit)->unit, 4253 port, 4254 config, 4255 src_port_vsq_gport, 4256 pg_base_vsq_gport); 4257 } 4258 4259 int 4260 bcm_loop_cosq_stat_config_get( 4261 int unit, 4262 int stat_count, 4263 bcm_cosq_stat_t * stat_array) 4264 { 4265 return bcm_cosq_stat_config_get( 4266 BCM_CONTROL(unit)->unit, 4267 stat_count, 4268 stat_array); 4269 } 4270 4271 int 4272 bcm_loop_cosq_stat_config_set( 4273 int unit, 4274 int stat_count, 4275 bcm_cosq_stat_t * stat_array) 4276 { 4277 return bcm_cosq_stat_config_set( 4278 BCM_CONTROL(unit)->unit, 4279 stat_count, 4280 stat_array); 4281 } 4282 4283 int 4284 bcm_loop_cosq_stat_get( 4285 int unit, 4286 bcm_gport_t gport, 4287 bcm_cos_queue_t cosq, 4288 bcm_cosq_stat_t stat, 4289 uint64 * value) 4290 { 4291 return bcm_cosq_stat_get( 4292 BCM_CONTROL(unit)->unit, 4293 gport, 4294 cosq, 4295 stat, 4296 value); 4297 } 4298 4299 int 4300 bcm_loop_cosq_stat_get32( 4301 int unit, 4302 bcm_gport_t gport, 4303 bcm_cos_queue_t cosq, 4304 bcm_cosq_stat_t stat, 4305 uint32 * value) 4306 { 4307 return bcm_cosq_stat_get32( 4308 BCM_CONTROL(unit)->unit, 4309 gport, 4310 cosq, 4311 stat, 4312 value); 4313 } 4314 4315 int 4316 bcm_loop_cosq_stat_info_get( 4317 int unit, 4318 int flags, 4319 bcm_cosq_stat_info_key_t * key, 4320 bcm_cosq_stat_info_t * config) 4321 { 4322 return bcm_cosq_stat_info_get( 4323 BCM_CONTROL(unit)->unit, 4324 flags, 4325 key, 4326 config); 4327 } 4328 4329 int 4330 bcm_loop_cosq_stat_info_set( 4331 int unit, 4332 int flags, 4333 bcm_cosq_stat_info_key_t * key, 4334 bcm_cosq_stat_info_t * config) 4335 { 4336 return bcm_cosq_stat_info_set( 4337 BCM_CONTROL(unit)->unit, 4338 flags, 4339 key, 4340 config); 4341 } 4342 4343 int 4344 bcm_loop_cosq_stat_obj_map_get( 4345 int unit, 4346 int flags, 4347 bcm_cosq_obj_map_key_t * key, 4348 uint32 * object_stat_id) 4349 { 4350 return bcm_cosq_stat_obj_map_get( 4351 BCM_CONTROL(unit)->unit, 4352 flags, 4353 key, 4354 object_stat_id); 4355 } 4356 4357 int 4358 bcm_loop_cosq_stat_obj_map_set( 4359 int unit, 4360 int flags, 4361 bcm_cosq_obj_map_key_t * key, 4362 uint32 object_stat_id) 4363 { 4364 return bcm_cosq_stat_obj_map_set( 4365 BCM_CONTROL(unit)->unit, 4366 flags, 4367 key, 4368 object_stat_id); 4369 } 4370 4371 int 4372 bcm_loop_cosq_stat_set( 4373 int unit, 4374 bcm_gport_t gport, 4375 bcm_cos_queue_t cosq, 4376 bcm_cosq_stat_t stat, 4377 uint64 value) 4378 { 4379 return bcm_cosq_stat_set( 4380 BCM_CONTROL(unit)->unit, 4381 gport, 4382 cosq, 4383 stat, 4384 value); 4385 } 4386 4387 int 4388 bcm_loop_cosq_stat_set32( 4389 int unit, 4390 bcm_gport_t gport, 4391 bcm_cos_queue_t cosq, 4392 bcm_cosq_stat_t stat, 4393 uint32 value) 4394 { 4395 return bcm_cosq_stat_set32( 4396 BCM_CONTROL(unit)->unit, 4397 gport, 4398 cosq, 4399 stat, 4400 value); 4401 } 4402 4403 int 4404 bcm_loop_cosq_stat_sync_get( 4405 int unit, 4406 bcm_gport_t gport, 4407 bcm_cos_queue_t cosq, 4408 bcm_cosq_stat_t stat, 4409 uint64 * value) 4410 { 4411 return bcm_cosq_stat_sync_get( 4412 BCM_CONTROL(unit)->unit, 4413 gport, 4414 cosq, 4415 stat, 4416 value); 4417 } 4418 4419 int 4420 bcm_loop_cosq_stat_sync_get32( 4421 int unit, 4422 bcm_gport_t gport, 4423 bcm_cos_queue_t cosq, 4424 bcm_cosq_stat_t stat, 4425 uint32 * value) 4426 { 4427 return bcm_cosq_stat_sync_get32( 4428 BCM_CONTROL(unit)->unit, 4429 gport, 4430 cosq, 4431 stat, 4432 value); 4433 } 4434 4435 int 4436 bcm_loop_cosq_stat_sync_multi_get( 4437 int unit, 4438 bcm_gport_t gport, 4439 bcm_cos_queue_t cosq, 4440 int nstat, 4441 bcm_cosq_stat_t * stat_arr, 4442 uint64 * value_arr) 4443 { 4444 return bcm_cosq_stat_sync_multi_get( 4445 BCM_CONTROL(unit)->unit, 4446 gport, 4447 cosq, 4448 nstat, 4449 stat_arr, 4450 value_arr); 4451 } 4452 4453 int 4454 bcm_loop_cosq_stat_sync_multi_get32( 4455 int unit, 4456 bcm_gport_t gport, 4457 bcm_cos_queue_t cosq, 4458 int nstat, 4459 bcm_cosq_stat_t * stat_arr, 4460 uint32 * value_arr) 4461 { 4462 return bcm_cosq_stat_sync_multi_get32( 4463 BCM_CONTROL(unit)->unit, 4464 gport, 4465 cosq, 4466 nstat, 4467 stat_arr, 4468 value_arr); 4469 } 4470 4471 int 4472 bcm_loop_cosq_subport_flow_control_get( 4473 int unit, 4474 bcm_gport_t subport, 4475 bcm_gport_t * sched_port) 4476 { 4477 return bcm_cosq_subport_flow_control_get( 4478 BCM_CONTROL(unit)->unit, 4479 subport, 4480 sched_port); 4481 } 4482 4483 int 4484 bcm_loop_cosq_subport_flow_control_set( 4485 int unit, 4486 bcm_gport_t subport, 4487 bcm_gport_t sched_port) 4488 { 4489 return bcm_cosq_subport_flow_control_set( 4490 BCM_CONTROL(unit)->unit, 4491 subport, 4492 sched_port); 4493 } 4494 4495 int 4496 bcm_loop_cosq_subscriber_map_add( 4497 int unit, 4498 bcm_cosq_subscriber_map_t * map) 4499 { 4500 return bcm_cosq_subscriber_map_add( 4501 BCM_CONTROL(unit)->unit, 4502 map); 4503 } 4504 4505 int 4506 bcm_loop_cosq_subscriber_map_delete( 4507 int unit, 4508 bcm_cosq_subscriber_map_t * map) 4509 { 4510 return bcm_cosq_subscriber_map_delete( 4511 BCM_CONTROL(unit)->unit, 4512 map); 4513 } 4514 4515 int 4516 bcm_loop_cosq_subscriber_map_delete_all( 4517 int unit) 4518 { 4519 return bcm_cosq_subscriber_map_delete_all( 4520 BCM_CONTROL(unit)->unit); 4521 } 4522 4523 int 4524 bcm_loop_cosq_subscriber_map_get( 4525 int unit, 4526 bcm_cosq_subscriber_map_t * map) 4527 { 4528 return bcm_cosq_subscriber_map_get( 4529 BCM_CONTROL(unit)->unit, 4530 map); 4531 } 4532 4533 int 4534 bcm_loop_cosq_subscriber_traverse( 4535 int unit, 4536 bcm_cosq_subscriber_map_traverse_cb cb, 4537 void * user_data) 4538 { 4539 return bcm_cosq_subscriber_traverse( 4540 BCM_CONTROL(unit)->unit, 4541 cb, 4542 user_data); 4543 } 4544 4545 int 4546 bcm_loop_cosq_sysport_ingress_queue_map_get( 4547 int unit, 4548 uint32 flags, 4549 bcm_gport_t sysport, 4550 bcm_gport_t * ingress_queue) 4551 { 4552 return bcm_cosq_sysport_ingress_queue_map_get( 4553 BCM_CONTROL(unit)->unit, 4554 flags, 4555 sysport, 4556 ingress_queue); 4557 } 4558 4559 int 4560 bcm_loop_cosq_sysport_ingress_queue_map_set( 4561 int unit, 4562 uint32 flags, 4563 bcm_gport_t sysport, 4564 bcm_gport_t ingress_queue) 4565 { 4566 return bcm_cosq_sysport_ingress_queue_map_set( 4567 BCM_CONTROL(unit)->unit, 4568 flags, 4569 sysport, 4570 ingress_queue); 4571 } 4572 4573 int 4574 bcm_loop_cosq_tas_control_get( 4575 int unit, 4576 bcm_gport_t port, 4577 bcm_cosq_tas_control_t type, 4578 int * arg) 4579 { 4580 return bcm_cosq_tas_control_get( 4581 BCM_CONTROL(unit)->unit, 4582 port, 4583 type, 4584 arg); 4585 } 4586 4587 int 4588 bcm_loop_cosq_tas_control_set( 4589 int unit, 4590 bcm_gport_t port, 4591 bcm_cosq_tas_control_t type, 4592 int arg) 4593 { 4594 return bcm_cosq_tas_control_set( 4595 BCM_CONTROL(unit)->unit, 4596 port, 4597 type, 4598 arg); 4599 } 4600 4601 int 4602 bcm_loop_cosq_tas_profile_commit( 4603 int unit, 4604 bcm_gport_t port, 4605 bcm_cosq_tas_profile_id_t pid) 4606 { 4607 return bcm_cosq_tas_profile_commit( 4608 BCM_CONTROL(unit)->unit, 4609 port, 4610 pid); 4611 } 4612 4613 int 4614 bcm_loop_cosq_tas_profile_create( 4615 int unit, 4616 bcm_gport_t port, 4617 bcm_cosq_tas_profile_t * profile, 4618 bcm_cosq_tas_profile_id_t * pid) 4619 { 4620 return bcm_cosq_tas_profile_create( 4621 BCM_CONTROL(unit)->unit, 4622 port, 4623 profile, 4624 pid); 4625 } 4626 4627 int 4628 bcm_loop_cosq_tas_profile_destroy( 4629 int unit, 4630 bcm_gport_t port, 4631 bcm_cosq_tas_profile_id_t pid) 4632 { 4633 return bcm_cosq_tas_profile_destroy( 4634 BCM_CONTROL(unit)->unit, 4635 port, 4636 pid); 4637 } 4638 4639 int 4640 bcm_loop_cosq_tas_profile_destroy_all( 4641 int unit, 4642 bcm_gport_t port) 4643 { 4644 return bcm_cosq_tas_profile_destroy_all( 4645 BCM_CONTROL(unit)->unit, 4646 port); 4647 } 4648 4649 int 4650 bcm_loop_cosq_tas_profile_get( 4651 int unit, 4652 bcm_gport_t port, 4653 bcm_cosq_tas_profile_id_t pid, 4654 bcm_cosq_tas_profile_t * profile) 4655 { 4656 return bcm_cosq_tas_profile_get( 4657 BCM_CONTROL(unit)->unit, 4658 port, 4659 pid, 4660 profile); 4661 } 4662 4663 int 4664 bcm_loop_cosq_tas_profile_set( 4665 int unit, 4666 bcm_gport_t port, 4667 bcm_cosq_tas_profile_id_t pid, 4668 bcm_cosq_tas_profile_t * profile) 4669 { 4670 return bcm_cosq_tas_profile_set( 4671 BCM_CONTROL(unit)->unit, 4672 port, 4673 pid, 4674 profile); 4675 } 4676 4677 int 4678 bcm_loop_cosq_tas_profile_status_get( 4679 int unit, 4680 bcm_gport_t port, 4681 bcm_cosq_tas_profile_id_t pid, 4682 bcm_cosq_tas_profile_status_t * status) 4683 { 4684 return bcm_cosq_tas_profile_status_get( 4685 BCM_CONTROL(unit)->unit, 4686 port, 4687 pid, 4688 status); 4689 } 4690 4691 /* bcm_cosq_tas_profile_status_t_init not dispatchable */ 4692 4693 /* bcm_cosq_tas_profile_t_init not dispatchable */ 4694 4695 int 4696 bcm_loop_cosq_tas_profile_traverse( 4697 int unit, 4698 bcm_gport_t port, 4699 bcm_cosq_tas_profile_traverse_cb cb, 4700 void * user_data) 4701 { 4702 return bcm_cosq_tas_profile_traverse( 4703 BCM_CONTROL(unit)->unit, 4704 port, 4705 cb, 4706 user_data); 4707 } 4708 4709 int 4710 bcm_loop_cosq_tas_status_get( 4711 int unit, 4712 bcm_gport_t port, 4713 bcm_cosq_tas_status_t type, 4714 int * arg) 4715 { 4716 return bcm_cosq_tas_status_get( 4717 BCM_CONTROL(unit)->unit, 4718 port, 4719 type, 4720 arg); 4721 } 4722 4723 #ifdef INCLUDE_TCB 4724 4725 int 4726 bcm_loop_cosq_tcb_buffer_multi_get( 4727 int unit, 4728 bcm_cosq_buffer_id_t buffer_id, 4729 int array_max, 4730 bcm_cosq_tcb_buffer_t * buffer_array, 4731 int * array_count) 4732 { 4733 return bcm_cosq_tcb_buffer_multi_get( 4734 BCM_CONTROL(unit)->unit, 4735 buffer_id, 4736 array_max, 4737 buffer_array, 4738 array_count); 4739 } 4740 4741 int 4742 bcm_loop_cosq_tcb_cb_register( 4743 int unit, 4744 bcm_cosq_tcb_callback_t fn, 4745 void * user_data) 4746 { 4747 return bcm_cosq_tcb_cb_register( 4748 BCM_CONTROL(unit)->unit, 4749 fn, 4750 user_data); 4751 } 4752 4753 int 4754 bcm_loop_cosq_tcb_cb_unregister( 4755 int unit, 4756 bcm_cosq_tcb_callback_t fn) 4757 { 4758 return bcm_cosq_tcb_cb_unregister( 4759 BCM_CONTROL(unit)->unit, 4760 fn); 4761 } 4762 4763 int 4764 bcm_loop_cosq_tcb_config_get( 4765 int unit, 4766 bcm_cosq_buffer_id_t buffer_id, 4767 bcm_cosq_tcb_config_t * config) 4768 { 4769 return bcm_cosq_tcb_config_get( 4770 BCM_CONTROL(unit)->unit, 4771 buffer_id, 4772 config); 4773 } 4774 4775 int 4776 bcm_loop_cosq_tcb_config_set( 4777 int unit, 4778 bcm_cosq_buffer_id_t buffer_id, 4779 bcm_cosq_tcb_config_t * config) 4780 { 4781 return bcm_cosq_tcb_config_set( 4782 BCM_CONTROL(unit)->unit, 4783 buffer_id, 4784 config); 4785 } 4786 4787 /* bcm_cosq_tcb_config_t_init not dispatchable */ 4788 4789 int 4790 bcm_loop_cosq_tcb_control_get( 4791 int unit, 4792 int buffer_id, 4793 bcm_cosq_tcb_control_t type, 4794 int * arg) 4795 { 4796 return bcm_cosq_tcb_control_get( 4797 BCM_CONTROL(unit)->unit, 4798 buffer_id, 4799 type, 4800 arg); 4801 } 4802 4803 int 4804 bcm_loop_cosq_tcb_control_set( 4805 int unit, 4806 bcm_cosq_buffer_id_t buffer_id, 4807 bcm_cosq_tcb_control_t type, 4808 int arg) 4809 { 4810 return bcm_cosq_tcb_control_set( 4811 BCM_CONTROL(unit)->unit, 4812 buffer_id, 4813 type, 4814 arg); 4815 } 4816 4817 int 4818 bcm_loop_cosq_tcb_event_multi_get( 4819 int unit, 4820 bcm_cosq_buffer_id_t buffer_id, 4821 int array_max, 4822 bcm_cosq_tcb_event_t * event_array, 4823 int * array_count, 4824 int * overflow_count) 4825 { 4826 return bcm_cosq_tcb_event_multi_get( 4827 BCM_CONTROL(unit)->unit, 4828 buffer_id, 4829 array_max, 4830 event_array, 4831 array_count, 4832 overflow_count); 4833 } 4834 4835 int 4836 bcm_loop_cosq_tcb_gport_threshold_mapping_get( 4837 int unit, 4838 bcm_cosq_object_id_t * id, 4839 int * profile_index) 4840 { 4841 return bcm_cosq_tcb_gport_threshold_mapping_get( 4842 BCM_CONTROL(unit)->unit, 4843 id, 4844 profile_index); 4845 } 4846 4847 int 4848 bcm_loop_cosq_tcb_gport_threshold_mapping_set( 4849 int unit, 4850 bcm_cosq_object_id_t * id, 4851 int profile_index) 4852 { 4853 return bcm_cosq_tcb_gport_threshold_mapping_set( 4854 BCM_CONTROL(unit)->unit, 4855 id, 4856 profile_index); 4857 } 4858 4859 int 4860 bcm_loop_cosq_tcb_threshold_profile_create( 4861 int unit, 4862 int flags, 4863 bcm_cosq_buffer_id_t buffer_id, 4864 bcm_cosq_tcb_threshold_profile_t * threshold, 4865 int * profile_index) 4866 { 4867 return bcm_cosq_tcb_threshold_profile_create( 4868 BCM_CONTROL(unit)->unit, 4869 flags, 4870 buffer_id, 4871 threshold, 4872 profile_index); 4873 } 4874 4875 int 4876 bcm_loop_cosq_tcb_threshold_profile_destroy( 4877 int unit, 4878 bcm_cosq_buffer_id_t buffer_id, 4879 int profile_index) 4880 { 4881 return bcm_cosq_tcb_threshold_profile_destroy( 4882 BCM_CONTROL(unit)->unit, 4883 buffer_id, 4884 profile_index); 4885 } 4886 4887 int 4888 bcm_loop_cosq_tcb_threshold_profile_get( 4889 int unit, 4890 bcm_cosq_buffer_id_t buffer_id, 4891 int profile_index, 4892 bcm_cosq_tcb_threshold_profile_t * threshold) 4893 { 4894 return bcm_cosq_tcb_threshold_profile_get( 4895 BCM_CONTROL(unit)->unit, 4896 buffer_id, 4897 profile_index, 4898 threshold); 4899 } 4900 4901 /* bcm_cosq_tcb_threshold_profile_t_init not dispatchable */ 4902 4903 /* bcm_cosq_threshold_t_init not dispatchable */ 4904 4905 #endif /* INCLUDE_TCB */ 4906 4907 int 4908 bcm_loop_cosq_voq_connector_gport_add( 4909 int unit, 4910 bcm_cosq_voq_connector_gport_t * config, 4911 bcm_gport_t * gport) 4912 { 4913 return bcm_cosq_voq_connector_gport_add( 4914 BCM_CONTROL(unit)->unit, 4915 config, 4916 gport); 4917 } 4918 4919 int 4920 bcm_loop_cpri_decap_presentation_time_config_get( 4921 int unit, 4922 bcm_port_t port, 4923 bcm_cpri_decap_presentation_config_t * config) 4924 { 4925 return bcm_cpri_decap_presentation_time_config_get( 4926 BCM_CONTROL(unit)->unit, 4927 port, 4928 config); 4929 } 4930 4931 int 4932 bcm_loop_cpri_decap_presentation_time_config_set( 4933 int unit, 4934 bcm_port_t port, 4935 bcm_cpri_decap_presentation_config_t * config) 4936 { 4937 return bcm_cpri_decap_presentation_time_config_set( 4938 BCM_CONTROL(unit)->unit, 4939 port, 4940 config); 4941 } 4942 4943 int 4944 bcm_loop_cpri_detach( 4945 int unit) 4946 { 4947 return bcm_cpri_detach( 4948 BCM_CONTROL(unit)->unit); 4949 } 4950 4951 int 4952 bcm_loop_cpri_encap_control_queue_tag_to_flow_id_map_set( 4953 int unit, 4954 int port, 4955 uint32 tag_id, 4956 uint32 flow_id) 4957 { 4958 return bcm_cpri_encap_control_queue_tag_to_flow_id_map_set( 4959 BCM_CONTROL(unit)->unit, 4960 port, 4961 tag_id, 4962 flow_id); 4963 } 4964 4965 int 4966 bcm_loop_cpri_encap_presentation_time_config_get( 4967 int unit, 4968 bcm_port_t port, 4969 bcm_cpri_presentation_ts_attribute_t attribute, 4970 bcm_cpri_presentation_time_t * time_offset) 4971 { 4972 return bcm_cpri_encap_presentation_time_config_get( 4973 BCM_CONTROL(unit)->unit, 4974 port, 4975 attribute, 4976 time_offset); 4977 } 4978 4979 int 4980 bcm_loop_cpri_encap_presentation_time_config_set( 4981 int unit, 4982 bcm_port_t port, 4983 bcm_cpri_presentation_ts_attribute_t attribute, 4984 bcm_cpri_presentation_time_t * time) 4985 { 4986 return bcm_cpri_encap_presentation_time_config_set( 4987 BCM_CONTROL(unit)->unit, 4988 port, 4989 attribute, 4990 time); 4991 } 4992 4993 int 4994 bcm_loop_cpri_init( 4995 int unit) 4996 { 4997 return bcm_cpri_init( 4998 BCM_CONTROL(unit)->unit); 4999 } 5000 5001 int 5002 bcm_loop_cpri_port_1588_timestamp_capture_config_get( 5003 int unit, 5004 bcm_port_t port, 5005 bcm_cpri_dir_t direction, 5006 bcm_cpri_1588_capture_config_t * config) 5007 { 5008 return bcm_cpri_port_1588_timestamp_capture_config_get( 5009 BCM_CONTROL(unit)->unit, 5010 port, 5011 direction, 5012 config); 5013 } 5014 5015 int 5016 bcm_loop_cpri_port_1588_timestamp_capture_config_set( 5017 int unit, 5018 bcm_port_t port, 5019 bcm_cpri_dir_t direction, 5020 bcm_cpri_1588_capture_config_t * config) 5021 { 5022 return bcm_cpri_port_1588_timestamp_capture_config_set( 5023 BCM_CONTROL(unit)->unit, 5024 port, 5025 direction, 5026 config); 5027 } 5028 5029 int 5030 bcm_loop_cpri_port_1588_timestamp_config_get( 5031 int unit, 5032 bcm_port_t port, 5033 bcm_cpri_dir_t direction, 5034 bcm_cpri_1588_config_t * config) 5035 { 5036 return bcm_cpri_port_1588_timestamp_config_get( 5037 BCM_CONTROL(unit)->unit, 5038 port, 5039 direction, 5040 config); 5041 } 5042 5043 int 5044 bcm_loop_cpri_port_1588_timestamp_config_set( 5045 int unit, 5046 bcm_port_t port, 5047 bcm_cpri_dir_t direction, 5048 bcm_cpri_1588_config_t * config) 5049 { 5050 return bcm_cpri_port_1588_timestamp_config_set( 5051 BCM_CONTROL(unit)->unit, 5052 port, 5053 direction, 5054 config); 5055 } 5056 5057 int 5058 bcm_loop_cpri_port_1588_timestamp_get( 5059 int unit, 5060 bcm_port_t port, 5061 bcm_cpri_dir_t direction, 5062 bcm_cpri_1588_ts_type_t type, 5063 int max_count, 5064 int * count, 5065 bcm_cpri_1588_timestamp_t * ts_list) 5066 { 5067 return bcm_cpri_port_1588_timestamp_get( 5068 BCM_CONTROL(unit)->unit, 5069 port, 5070 direction, 5071 type, 5072 max_count, 5073 count, 5074 ts_list); 5075 } 5076 5077 int 5078 bcm_loop_cpri_port_1588_timestamp_ts_config_get( 5079 int unit, 5080 bcm_port_t port, 5081 bcm_cpri_dir_t direction, 5082 bcm_cpri_1588_ts_type_t type, 5083 bcm_cpri_1588_timestamp_ts_config_t * config) 5084 { 5085 return bcm_cpri_port_1588_timestamp_ts_config_get( 5086 BCM_CONTROL(unit)->unit, 5087 port, 5088 direction, 5089 type, 5090 config); 5091 } 5092 5093 int 5094 bcm_loop_cpri_port_1588_timestamp_ts_config_set( 5095 int unit, 5096 bcm_port_t port, 5097 bcm_cpri_dir_t direction, 5098 bcm_cpri_1588_ts_type_t type, 5099 bcm_cpri_1588_timestamp_ts_config_t * config) 5100 { 5101 return bcm_cpri_port_1588_timestamp_ts_config_set( 5102 BCM_CONTROL(unit)->unit, 5103 port, 5104 direction, 5105 type, 5106 config); 5107 } 5108 5109 int 5110 bcm_loop_cpri_port_agnostic_config_get( 5111 int unit, 5112 bcm_port_t port, 5113 bcm_cpri_dir_t dir, 5114 int * enable, 5115 bcm_cpri_port_agnostic_config_t * config) 5116 { 5117 return bcm_cpri_port_agnostic_config_get( 5118 BCM_CONTROL(unit)->unit, 5119 port, 5120 dir, 5121 enable, 5122 config); 5123 } 5124 5125 int 5126 bcm_loop_cpri_port_agnostic_config_set( 5127 int unit, 5128 bcm_port_t port, 5129 bcm_cpri_dir_t dir, 5130 int enable, 5131 bcm_cpri_port_agnostic_config_t * config) 5132 { 5133 return bcm_cpri_port_agnostic_config_set( 5134 BCM_CONTROL(unit)->unit, 5135 port, 5136 dir, 5137 enable, 5138 config); 5139 } 5140 5141 int 5142 bcm_loop_cpri_port_compression_lookup_table_get( 5143 int unit, 5144 bcm_gport_t port, 5145 int max_depth, 5146 int * table_depth, 5147 uint32 * comp_table) 5148 { 5149 return bcm_cpri_port_compression_lookup_table_get( 5150 BCM_CONTROL(unit)->unit, 5151 port, 5152 max_depth, 5153 table_depth, 5154 comp_table); 5155 } 5156 5157 int 5158 bcm_loop_cpri_port_compression_lookup_table_set( 5159 int unit, 5160 bcm_gport_t port, 5161 int table_depth, 5162 uint32 * comp_table) 5163 { 5164 return bcm_cpri_port_compression_lookup_table_set( 5165 BCM_CONTROL(unit)->unit, 5166 port, 5167 table_depth, 5168 comp_table); 5169 } 5170 5171 int 5172 bcm_loop_cpri_port_compression_saturation_config_get( 5173 int unit, 5174 bcm_port_t port, 5175 uint32 * threshold_value) 5176 { 5177 return bcm_cpri_port_compression_saturation_config_get( 5178 BCM_CONTROL(unit)->unit, 5179 port, 5180 threshold_value); 5181 } 5182 5183 int 5184 bcm_loop_cpri_port_compression_saturation_config_set( 5185 int unit, 5186 bcm_port_t port, 5187 uint32 threshold_value) 5188 { 5189 return bcm_cpri_port_compression_saturation_config_set( 5190 BCM_CONTROL(unit)->unit, 5191 port, 5192 threshold_value); 5193 } 5194 5195 int 5196 bcm_loop_cpri_port_cw_fast_eth_config_get( 5197 int unit, 5198 int port, 5199 bcm_cpri_fast_eth_config_info_t * config) 5200 { 5201 return bcm_cpri_port_cw_fast_eth_config_get( 5202 BCM_CONTROL(unit)->unit, 5203 port, 5204 config); 5205 } 5206 5207 int 5208 bcm_loop_cpri_port_cw_fast_eth_config_set( 5209 int unit, 5210 int port, 5211 bcm_cpri_fast_eth_config_info_t * config) 5212 { 5213 return bcm_cpri_port_cw_fast_eth_config_set( 5214 BCM_CONTROL(unit)->unit, 5215 port, 5216 config); 5217 } 5218 5219 int 5220 bcm_loop_cpri_port_cw_slow_hdlc_config_get( 5221 int unit, 5222 int port, 5223 bcm_cpri_slow_hdlc_config_info_t * config) 5224 { 5225 return bcm_cpri_port_cw_slow_hdlc_config_get( 5226 BCM_CONTROL(unit)->unit, 5227 port, 5228 config); 5229 } 5230 5231 int 5232 bcm_loop_cpri_port_cw_slow_hdlc_config_set( 5233 int unit, 5234 int port, 5235 bcm_cpri_slow_hdlc_config_info_t * config) 5236 { 5237 return bcm_cpri_port_cw_slow_hdlc_config_set( 5238 BCM_CONTROL(unit)->unit, 5239 port, 5240 config); 5241 } 5242 5243 int 5244 bcm_loop_cpri_port_decap_ethertype_get( 5245 int unit, 5246 bcm_gport_t port, 5247 bcm_cpri_ethertype_t type, 5248 uint16 * tpid) 5249 { 5250 return bcm_cpri_port_decap_ethertype_get( 5251 BCM_CONTROL(unit)->unit, 5252 port, 5253 type, 5254 tpid); 5255 } 5256 5257 int 5258 bcm_loop_cpri_port_decap_ethertype_set( 5259 int unit, 5260 bcm_gport_t port, 5261 bcm_cpri_ethertype_t type, 5262 uint16 tpid) 5263 { 5264 return bcm_cpri_port_decap_ethertype_set( 5265 BCM_CONTROL(unit)->unit, 5266 port, 5267 type, 5268 tpid); 5269 } 5270 5271 int 5272 bcm_loop_cpri_port_decap_flow_config_get( 5273 int unit, 5274 bcm_gport_t port, 5275 uint8 roe_subtype, 5276 bcm_cpri_decap_flow_config_t * config) 5277 { 5278 return bcm_cpri_port_decap_flow_config_get( 5279 BCM_CONTROL(unit)->unit, 5280 port, 5281 roe_subtype, 5282 config); 5283 } 5284 5285 int 5286 bcm_loop_cpri_port_decap_flow_config_set( 5287 int unit, 5288 bcm_gport_t port, 5289 uint8 roe_subtype, 5290 bcm_cpri_decap_flow_config_t * config) 5291 { 5292 return bcm_cpri_port_decap_flow_config_set( 5293 BCM_CONTROL(unit)->unit, 5294 port, 5295 roe_subtype, 5296 config); 5297 } 5298 5299 int 5300 bcm_loop_cpri_port_decap_flow_to_queue_mapping_get( 5301 int unit, 5302 bcm_gport_t port, 5303 uint32 flow_id, 5304 uint32 * queue_num) 5305 { 5306 return bcm_cpri_port_decap_flow_to_queue_mapping_get( 5307 BCM_CONTROL(unit)->unit, 5308 port, 5309 flow_id, 5310 queue_num); 5311 } 5312 5313 int 5314 bcm_loop_cpri_port_decap_flow_to_queue_mapping_set( 5315 int unit, 5316 bcm_gport_t port, 5317 uint32 flow_id, 5318 uint32 queue_num) 5319 { 5320 return bcm_cpri_port_decap_flow_to_queue_mapping_set( 5321 BCM_CONTROL(unit)->unit, 5322 port, 5323 flow_id, 5324 queue_num); 5325 } 5326 5327 int 5328 bcm_loop_cpri_port_decap_queue_flow_control_get( 5329 int unit, 5330 bcm_gport_t port, 5331 uint32 queue_num, 5332 uint32 * xon_threshold, 5333 uint32 * xoff_threshold, 5334 int * enable) 5335 { 5336 return bcm_cpri_port_decap_queue_flow_control_get( 5337 BCM_CONTROL(unit)->unit, 5338 port, 5339 queue_num, 5340 xon_threshold, 5341 xoff_threshold, 5342 enable); 5343 } 5344 5345 int 5346 bcm_loop_cpri_port_decap_queue_flow_control_set( 5347 int unit, 5348 bcm_gport_t port, 5349 uint32 queue_num, 5350 uint32 xon_threshold, 5351 uint32 xoff_threshold, 5352 int enable) 5353 { 5354 return bcm_cpri_port_decap_queue_flow_control_set( 5355 BCM_CONTROL(unit)->unit, 5356 port, 5357 queue_num, 5358 xon_threshold, 5359 xoff_threshold, 5360 enable); 5361 } 5362 5363 int 5364 bcm_loop_cpri_port_decap_queue_to_ordering_info_index_get( 5365 int unit, 5366 bcm_gport_t port, 5367 uint32 queue_num, 5368 uint32 * ordering_info_index) 5369 { 5370 return bcm_cpri_port_decap_queue_to_ordering_info_index_get( 5371 BCM_CONTROL(unit)->unit, 5372 port, 5373 queue_num, 5374 ordering_info_index); 5375 } 5376 5377 int 5378 bcm_loop_cpri_port_decap_queue_to_ordering_info_index_set( 5379 int unit, 5380 bcm_gport_t port, 5381 uint32 queue_num, 5382 uint32 ordering_info_index) 5383 { 5384 return bcm_cpri_port_decap_queue_to_ordering_info_index_set( 5385 BCM_CONTROL(unit)->unit, 5386 port, 5387 queue_num, 5388 ordering_info_index); 5389 } 5390 5391 int 5392 bcm_loop_cpri_port_decap_roe_ordering_info_get( 5393 int unit, 5394 bcm_gport_t port, 5395 int index, 5396 bcm_cpri_decap_roe_oi_t * ordering_info) 5397 { 5398 return bcm_cpri_port_decap_roe_ordering_info_get( 5399 BCM_CONTROL(unit)->unit, 5400 port, 5401 index, 5402 ordering_info); 5403 } 5404 5405 int 5406 bcm_loop_cpri_port_decap_roe_ordering_info_set( 5407 int unit, 5408 bcm_gport_t port, 5409 int index, 5410 bcm_cpri_decap_roe_oi_t * ordering_info) 5411 { 5412 return bcm_cpri_port_decap_roe_ordering_info_set( 5413 BCM_CONTROL(unit)->unit, 5414 port, 5415 index, 5416 ordering_info); 5417 } 5418 5419 int 5420 bcm_loop_cpri_port_decap_roe_ordering_sequence_offset_get( 5421 int unit, 5422 bcm_gport_t port, 5423 int queue, 5424 bcm_cpri_roe_oi_seq_offset_t * seq_offset) 5425 { 5426 return bcm_cpri_port_decap_roe_ordering_sequence_offset_get( 5427 BCM_CONTROL(unit)->unit, 5428 port, 5429 queue, 5430 seq_offset); 5431 } 5432 5433 int 5434 bcm_loop_cpri_port_decap_roe_ordering_sequence_offset_set( 5435 int unit, 5436 bcm_gport_t port, 5437 int queue, 5438 bcm_cpri_roe_oi_seq_offset_t * seq_offset) 5439 { 5440 return bcm_cpri_port_decap_roe_ordering_sequence_offset_set( 5441 BCM_CONTROL(unit)->unit, 5442 port, 5443 queue, 5444 seq_offset); 5445 } 5446 5447 int 5448 bcm_loop_cpri_port_decap_secondary_key_to_queue_mapping_get( 5449 int unit, 5450 bcm_port_t port, 5451 uint32 secondary_key, 5452 uint32 * queue_num) 5453 { 5454 return bcm_cpri_port_decap_secondary_key_to_queue_mapping_get( 5455 BCM_CONTROL(unit)->unit, 5456 port, 5457 secondary_key, 5458 queue_num); 5459 } 5460 5461 int 5462 bcm_loop_cpri_port_decap_secondary_key_to_queue_mapping_set( 5463 int unit, 5464 bcm_port_t port, 5465 uint32 secondary_key, 5466 uint32 queue_num) 5467 { 5468 return bcm_cpri_port_decap_secondary_key_to_queue_mapping_set( 5469 BCM_CONTROL(unit)->unit, 5470 port, 5471 secondary_key, 5472 queue_num); 5473 } 5474 5475 int 5476 bcm_loop_cpri_port_decompression_lookup_table_get( 5477 int unit, 5478 bcm_gport_t port, 5479 int max_depth, 5480 int * table_depth, 5481 uint32 * comp_table) 5482 { 5483 return bcm_cpri_port_decompression_lookup_table_get( 5484 BCM_CONTROL(unit)->unit, 5485 port, 5486 max_depth, 5487 table_depth, 5488 comp_table); 5489 } 5490 5491 int 5492 bcm_loop_cpri_port_decompression_lookup_table_set( 5493 int unit, 5494 bcm_gport_t port, 5495 int table_depth, 5496 uint32 * comp_table) 5497 { 5498 return bcm_cpri_port_decompression_lookup_table_set( 5499 BCM_CONTROL(unit)->unit, 5500 port, 5501 table_depth, 5502 comp_table); 5503 } 5504 5505 int 5506 bcm_loop_cpri_port_decompression_saturation_config_get( 5507 int unit, 5508 bcm_port_t port, 5509 uint32 * sat_value) 5510 { 5511 return bcm_cpri_port_decompression_saturation_config_get( 5512 BCM_CONTROL(unit)->unit, 5513 port, 5514 sat_value); 5515 } 5516 5517 int 5518 bcm_loop_cpri_port_decompression_saturation_config_set( 5519 int unit, 5520 bcm_port_t port, 5521 uint32 sat_value) 5522 { 5523 return bcm_cpri_port_decompression_saturation_config_set( 5524 BCM_CONTROL(unit)->unit, 5525 port, 5526 sat_value); 5527 } 5528 5529 int 5530 bcm_loop_cpri_port_encap_get( 5531 int unit, 5532 bcm_gport_t port, 5533 int queue_num, 5534 bcm_cpri_encap_info_t * encap_config) 5535 { 5536 return bcm_cpri_port_encap_get( 5537 BCM_CONTROL(unit)->unit, 5538 port, 5539 queue_num, 5540 encap_config); 5541 } 5542 5543 int 5544 bcm_loop_cpri_port_encap_roe_entry_macda_get( 5545 int unit, 5546 bcm_gport_t port, 5547 int index, 5548 bcm_mac_t * macaddr) 5549 { 5550 return bcm_cpri_port_encap_roe_entry_macda_get( 5551 BCM_CONTROL(unit)->unit, 5552 port, 5553 index, 5554 macaddr); 5555 } 5556 5557 int 5558 bcm_loop_cpri_port_encap_roe_entry_macda_set( 5559 int unit, 5560 bcm_gport_t port, 5561 int index, 5562 bcm_mac_t macaddr) 5563 { 5564 return bcm_cpri_port_encap_roe_entry_macda_set( 5565 BCM_CONTROL(unit)->unit, 5566 port, 5567 index, 5568 macaddr); 5569 } 5570 5571 int 5572 bcm_loop_cpri_port_encap_roe_entry_macsa_get( 5573 int unit, 5574 bcm_gport_t port, 5575 int index, 5576 bcm_mac_t * macaddr) 5577 { 5578 return bcm_cpri_port_encap_roe_entry_macsa_get( 5579 BCM_CONTROL(unit)->unit, 5580 port, 5581 index, 5582 macaddr); 5583 } 5584 5585 int 5586 bcm_loop_cpri_port_encap_roe_entry_macsa_set( 5587 int unit, 5588 bcm_gport_t port, 5589 int index, 5590 bcm_mac_t macaddr) 5591 { 5592 return bcm_cpri_port_encap_roe_entry_macsa_set( 5593 BCM_CONTROL(unit)->unit, 5594 port, 5595 index, 5596 macaddr); 5597 } 5598 5599 int 5600 bcm_loop_cpri_port_encap_roe_entry_vlan_get( 5601 int unit, 5602 bcm_gport_t port, 5603 uint32 flags, 5604 uint32 index, 5605 bcm_vlan_t * vlan_id) 5606 { 5607 return bcm_cpri_port_encap_roe_entry_vlan_get( 5608 BCM_CONTROL(unit)->unit, 5609 port, 5610 flags, 5611 index, 5612 vlan_id); 5613 } 5614 5615 int 5616 bcm_loop_cpri_port_encap_roe_entry_vlan_set( 5617 int unit, 5618 bcm_gport_t port, 5619 uint32 flags, 5620 uint32 index, 5621 bcm_vlan_t vlan_id) 5622 { 5623 return bcm_cpri_port_encap_roe_entry_vlan_set( 5624 BCM_CONTROL(unit)->unit, 5625 port, 5626 flags, 5627 index, 5628 vlan_id); 5629 } 5630 5631 int 5632 bcm_loop_cpri_port_encap_roe_ordering_info_get( 5633 int unit, 5634 bcm_gport_t port, 5635 int index, 5636 bcm_cpri_encap_roe_oi_t * ordering_info) 5637 { 5638 return bcm_cpri_port_encap_roe_ordering_info_get( 5639 BCM_CONTROL(unit)->unit, 5640 port, 5641 index, 5642 ordering_info); 5643 } 5644 5645 int 5646 bcm_loop_cpri_port_encap_roe_ordering_info_set( 5647 int unit, 5648 bcm_gport_t port, 5649 int index, 5650 bcm_cpri_encap_roe_oi_t * ordering_info) 5651 { 5652 return bcm_cpri_port_encap_roe_ordering_info_set( 5653 BCM_CONTROL(unit)->unit, 5654 port, 5655 index, 5656 ordering_info); 5657 } 5658 5659 int 5660 bcm_loop_cpri_port_encap_roe_ordering_sequence_offset_get( 5661 int unit, 5662 bcm_gport_t port, 5663 int queue, 5664 int control, 5665 bcm_cpri_roe_oi_seq_offset_t * seq_offset) 5666 { 5667 return bcm_cpri_port_encap_roe_ordering_sequence_offset_get( 5668 BCM_CONTROL(unit)->unit, 5669 port, 5670 queue, 5671 control, 5672 seq_offset); 5673 } 5674 5675 int 5676 bcm_loop_cpri_port_encap_roe_ordering_sequence_offset_set( 5677 int unit, 5678 bcm_gport_t port, 5679 int queue, 5680 int control, 5681 bcm_cpri_roe_oi_seq_offset_t * seq_offset) 5682 { 5683 return bcm_cpri_port_encap_roe_ordering_sequence_offset_set( 5684 BCM_CONTROL(unit)->unit, 5685 port, 5686 queue, 5687 control, 5688 seq_offset); 5689 } 5690 5691 int 5692 bcm_loop_cpri_port_encap_set( 5693 int unit, 5694 bcm_gport_t port, 5695 int queue_num, 5696 bcm_cpri_encap_info_t * encap_config) 5697 { 5698 return bcm_cpri_port_encap_set( 5699 BCM_CONTROL(unit)->unit, 5700 port, 5701 queue_num, 5702 encap_config); 5703 } 5704 5705 int 5706 bcm_loop_cpri_port_encap_vlan_config_get( 5707 int unit, 5708 bcm_gport_t port, 5709 bcm_cpri_encap_vlan_config_t * vlan_config) 5710 { 5711 return bcm_cpri_port_encap_vlan_config_get( 5712 BCM_CONTROL(unit)->unit, 5713 port, 5714 vlan_config); 5715 } 5716 5717 int 5718 bcm_loop_cpri_port_encap_vlan_config_set( 5719 int unit, 5720 bcm_gport_t port, 5721 bcm_cpri_encap_vlan_config_t * vlan_config) 5722 { 5723 return bcm_cpri_port_encap_vlan_config_set( 5724 BCM_CONTROL(unit)->unit, 5725 port, 5726 vlan_config); 5727 } 5728 5729 int 5730 bcm_loop_cpri_port_fec_aux_config_get( 5731 int unit, 5732 bcm_gport_t port, 5733 bcm_cpri_fec_aux_config_t param_id, 5734 uint32 * value) 5735 { 5736 return bcm_cpri_port_fec_aux_config_get( 5737 BCM_CONTROL(unit)->unit, 5738 port, 5739 param_id, 5740 value); 5741 } 5742 5743 int 5744 bcm_loop_cpri_port_fec_aux_config_set( 5745 int unit, 5746 bcm_gport_t port, 5747 bcm_cpri_fec_aux_config_t param_id, 5748 uint32 value) 5749 { 5750 return bcm_cpri_port_fec_aux_config_set( 5751 BCM_CONTROL(unit)->unit, 5752 port, 5753 param_id, 5754 value); 5755 } 5756 5757 int 5758 bcm_loop_cpri_port_fec_enable_get( 5759 int unit, 5760 bcm_gport_t port, 5761 bcm_cpri_dir_t dir, 5762 int * enable) 5763 { 5764 return bcm_cpri_port_fec_enable_get( 5765 BCM_CONTROL(unit)->unit, 5766 port, 5767 dir, 5768 enable); 5769 } 5770 5771 int 5772 bcm_loop_cpri_port_fec_enable_set( 5773 int unit, 5774 bcm_gport_t port, 5775 bcm_cpri_dir_t dir, 5776 int enable) 5777 { 5778 return bcm_cpri_port_fec_enable_set( 5779 BCM_CONTROL(unit)->unit, 5780 port, 5781 dir, 5782 enable); 5783 } 5784 5785 int 5786 bcm_loop_cpri_port_fec_timestamp_config_get( 5787 int unit, 5788 bcm_gport_t port, 5789 bcm_cpri_dir_t dir, 5790 bcm_cpri_fec_timestamp_config_t * config) 5791 { 5792 return bcm_cpri_port_fec_timestamp_config_get( 5793 BCM_CONTROL(unit)->unit, 5794 port, 5795 dir, 5796 config); 5797 } 5798 5799 int 5800 bcm_loop_cpri_port_fec_timestamp_config_set( 5801 int unit, 5802 bcm_gport_t port, 5803 bcm_cpri_dir_t dir, 5804 bcm_cpri_fec_timestamp_config_t * config) 5805 { 5806 return bcm_cpri_port_fec_timestamp_config_set( 5807 BCM_CONTROL(unit)->unit, 5808 port, 5809 dir, 5810 config); 5811 } 5812 5813 int 5814 bcm_loop_cpri_port_frame_config_set( 5815 int unit, 5816 bcm_port_t port, 5817 bcm_cpri_port_frame_config_t * config) 5818 { 5819 return bcm_cpri_port_frame_config_set( 5820 BCM_CONTROL(unit)->unit, 5821 port, 5822 config); 5823 } 5824 5825 int 5826 bcm_loop_cpri_port_interrupt_callback_register( 5827 int unit, 5828 bcm_cpri_interrupt_type_t cpri_intr_type, 5829 bcm_cpri_port_interrupt_callback_t callback, 5830 void * user_data) 5831 { 5832 return bcm_cpri_port_interrupt_callback_register( 5833 BCM_CONTROL(unit)->unit, 5834 cpri_intr_type, 5835 callback, 5836 user_data); 5837 } 5838 5839 int 5840 bcm_loop_cpri_port_interrupt_callback_unregister( 5841 int unit, 5842 bcm_cpri_interrupt_type_t cpri_intr_type, 5843 bcm_cpri_port_interrupt_callback_t callback) 5844 { 5845 return bcm_cpri_port_interrupt_callback_unregister( 5846 BCM_CONTROL(unit)->unit, 5847 cpri_intr_type, 5848 callback); 5849 } 5850 5851 int 5852 bcm_loop_cpri_port_interrupt_enable_set( 5853 int unit, 5854 bcm_port_t port, 5855 bcm_cpri_interrupt_type_t cpri_intr_type, 5856 int data, 5857 int enable) 5858 { 5859 return bcm_cpri_port_interrupt_enable_set( 5860 BCM_CONTROL(unit)->unit, 5861 port, 5862 cpri_intr_type, 5863 data, 5864 enable); 5865 } 5866 5867 int 5868 bcm_loop_cpri_port_rsvd4_agnostic_mode_config_get( 5869 int unit, 5870 bcm_port_t port, 5871 bcm_cpri_dir_t direction, 5872 int * enable, 5873 bcm_cpri_port_rsvd4_agnostic_config_t * config) 5874 { 5875 return bcm_cpri_port_rsvd4_agnostic_mode_config_get( 5876 BCM_CONTROL(unit)->unit, 5877 port, 5878 direction, 5879 enable, 5880 config); 5881 } 5882 5883 int 5884 bcm_loop_cpri_port_rsvd4_agnostic_mode_config_set( 5885 int unit, 5886 bcm_port_t port, 5887 bcm_cpri_dir_t direction, 5888 int enable, 5889 bcm_cpri_port_rsvd4_agnostic_config_t * config) 5890 { 5891 return bcm_cpri_port_rsvd4_agnostic_mode_config_set( 5892 BCM_CONTROL(unit)->unit, 5893 port, 5894 direction, 5895 enable, 5896 config); 5897 } 5898 5899 int 5900 bcm_loop_cpri_port_rsvd4_cm_fast_eth_config_set( 5901 int unit, 5902 int port, 5903 int control_flow_id, 5904 bcm_rsvd4_fast_eth_config_info_t * config) 5905 { 5906 return bcm_cpri_port_rsvd4_cm_fast_eth_config_set( 5907 BCM_CONTROL(unit)->unit, 5908 port, 5909 control_flow_id, 5910 config); 5911 } 5912 5913 int 5914 bcm_loop_cpri_port_rsvd4_dbm_entry_clear( 5915 int unit, 5916 bcm_gport_t port, 5917 int index) 5918 { 5919 return bcm_cpri_port_rsvd4_dbm_entry_clear( 5920 BCM_CONTROL(unit)->unit, 5921 port, 5922 index); 5923 } 5924 5925 int 5926 bcm_loop_cpri_port_rsvd4_dbm_entry_get( 5927 int unit, 5928 bcm_gport_t port, 5929 int index, 5930 bcm_rsvd4_dbm_entry_t * entry) 5931 { 5932 return bcm_cpri_port_rsvd4_dbm_entry_get( 5933 BCM_CONTROL(unit)->unit, 5934 port, 5935 index, 5936 entry); 5937 } 5938 5939 int 5940 bcm_loop_cpri_port_rsvd4_dbm_entry_set( 5941 int unit, 5942 bcm_gport_t port, 5943 int index, 5944 bcm_rsvd4_dbm_entry_t * entry) 5945 { 5946 return bcm_cpri_port_rsvd4_dbm_entry_set( 5947 BCM_CONTROL(unit)->unit, 5948 port, 5949 index, 5950 entry); 5951 } 5952 5953 int 5954 bcm_loop_cpri_port_rsvd4_rx_bfn_sync_config_set( 5955 int unit, 5956 bcm_gport_t port, 5957 uint16 master_frame_count, 5958 uint64 master_frame_start) 5959 { 5960 return bcm_cpri_port_rsvd4_rx_bfn_sync_config_set( 5961 BCM_CONTROL(unit)->unit, 5962 port, 5963 master_frame_count, 5964 master_frame_start); 5965 } 5966 5967 int 5968 bcm_loop_cpri_port_rsvd4_rx_control_flow_add( 5969 int unit, 5970 int port, 5971 int control_flow_id, 5972 bcm_rsvd4_control_flow_config_t * config) 5973 { 5974 return bcm_cpri_port_rsvd4_rx_control_flow_add( 5975 BCM_CONTROL(unit)->unit, 5976 port, 5977 control_flow_id, 5978 config); 5979 } 5980 5981 int 5982 bcm_loop_cpri_port_rsvd4_rx_control_flow_delete( 5983 int unit, 5984 int port, 5985 int control_flow_id, 5986 bcm_rsvd4_control_flow_config_t * control_flow_cfg) 5987 { 5988 return bcm_cpri_port_rsvd4_rx_control_flow_delete( 5989 BCM_CONTROL(unit)->unit, 5990 port, 5991 control_flow_id, 5992 control_flow_cfg); 5993 } 5994 5995 int 5996 bcm_loop_cpri_port_rsvd4_rx_current_frame_sync_info_get( 5997 int unit, 5998 bcm_gport_t port, 5999 bcm_rsvd4_frame_sync_info_t * frame_sync_info) 6000 { 6001 return bcm_cpri_port_rsvd4_rx_current_frame_sync_info_get( 6002 BCM_CONTROL(unit)->unit, 6003 port, 6004 frame_sync_info); 6005 } 6006 6007 int 6008 bcm_loop_cpri_port_rsvd4_rx_flow_add( 6009 int unit, 6010 bcm_gport_t port, 6011 int flow_id, 6012 bcm_rsvd4_rx_flow_info_t * flow_info) 6013 { 6014 return bcm_cpri_port_rsvd4_rx_flow_add( 6015 BCM_CONTROL(unit)->unit, 6016 port, 6017 flow_id, 6018 flow_info); 6019 } 6020 6021 int 6022 bcm_loop_cpri_port_rsvd4_rx_flow_delete( 6023 int unit, 6024 bcm_gport_t port, 6025 int flow_id) 6026 { 6027 return bcm_cpri_port_rsvd4_rx_flow_delete( 6028 BCM_CONTROL(unit)->unit, 6029 port, 6030 flow_id); 6031 } 6032 6033 int 6034 bcm_loop_cpri_port_rsvd4_rx_frame_config_debug_set( 6035 int unit, 6036 bcm_gport_t port, 6037 bcm_rsvd4_rx_config_t config_type, 6038 uint32 value) 6039 { 6040 return bcm_cpri_port_rsvd4_rx_frame_config_debug_set( 6041 BCM_CONTROL(unit)->unit, 6042 port, 6043 config_type, 6044 value); 6045 } 6046 6047 int 6048 bcm_loop_cpri_port_rsvd4_rx_frame_config_get( 6049 int unit, 6050 bcm_gport_t port, 6051 bcm_rsvd4_rx_frame_config_t * config) 6052 { 6053 return bcm_cpri_port_rsvd4_rx_frame_config_get( 6054 BCM_CONTROL(unit)->unit, 6055 port, 6056 config); 6057 } 6058 6059 int 6060 bcm_loop_cpri_port_rsvd4_rx_frame_config_set( 6061 int unit, 6062 bcm_gport_t port, 6063 bcm_rsvd4_rx_frame_config_t * config) 6064 { 6065 return bcm_cpri_port_rsvd4_rx_frame_config_set( 6066 BCM_CONTROL(unit)->unit, 6067 port, 6068 config); 6069 } 6070 6071 int 6072 bcm_loop_cpri_port_rsvd4_rx_fsm_state_set( 6073 int unit, 6074 bcm_gport_t port, 6075 bcm_rsvd4_rx_fsm_state_t state) 6076 { 6077 return bcm_cpri_port_rsvd4_rx_fsm_state_set( 6078 BCM_CONTROL(unit)->unit, 6079 port, 6080 state); 6081 } 6082 6083 int 6084 bcm_loop_cpri_port_rsvd4_rx_override_set( 6085 int unit, 6086 bcm_gport_t port, 6087 bcm_rsvd4_rx_params_t parameter, 6088 int enable, 6089 int value) 6090 { 6091 return bcm_cpri_port_rsvd4_rx_override_set( 6092 BCM_CONTROL(unit)->unit, 6093 port, 6094 parameter, 6095 enable, 6096 value); 6097 } 6098 6099 int 6100 bcm_loop_cpri_port_rsvd4_secondary_dbm_entry_clear( 6101 int unit, 6102 bcm_gport_t port, 6103 int index) 6104 { 6105 return bcm_cpri_port_rsvd4_secondary_dbm_entry_clear( 6106 BCM_CONTROL(unit)->unit, 6107 port, 6108 index); 6109 } 6110 6111 int 6112 bcm_loop_cpri_port_rsvd4_secondary_dbm_entry_get( 6113 int unit, 6114 bcm_gport_t port, 6115 int index, 6116 bcm_rsvd4_secondary_dbm_entry_t * entry) 6117 { 6118 return bcm_cpri_port_rsvd4_secondary_dbm_entry_get( 6119 BCM_CONTROL(unit)->unit, 6120 port, 6121 index, 6122 entry); 6123 } 6124 6125 int 6126 bcm_loop_cpri_port_rsvd4_secondary_dbm_entry_set( 6127 int unit, 6128 bcm_gport_t port, 6129 int index, 6130 bcm_rsvd4_secondary_dbm_entry_t * entry) 6131 { 6132 return bcm_cpri_port_rsvd4_secondary_dbm_entry_set( 6133 BCM_CONTROL(unit)->unit, 6134 port, 6135 index, 6136 entry); 6137 } 6138 6139 int 6140 bcm_loop_cpri_port_rsvd4_sync_profile_entry_get( 6141 int unit, 6142 int port, 6143 int index, 6144 bcm_rsvd4_sync_profile_entry_t * config) 6145 { 6146 return bcm_cpri_port_rsvd4_sync_profile_entry_get( 6147 BCM_CONTROL(unit)->unit, 6148 port, 6149 index, 6150 config); 6151 } 6152 6153 int 6154 bcm_loop_cpri_port_rsvd4_sync_profile_entry_set( 6155 int unit, 6156 int port, 6157 int index, 6158 bcm_rsvd4_sync_profile_entry_t * config) 6159 { 6160 return bcm_cpri_port_rsvd4_sync_profile_entry_set( 6161 BCM_CONTROL(unit)->unit, 6162 port, 6163 index, 6164 config); 6165 } 6166 6167 int 6168 bcm_loop_cpri_port_rsvd4_tx_cm_eth_config_set( 6169 int unit, 6170 int port, 6171 bcm_rsvd4_tx_cm_eth_config_t * config) 6172 { 6173 return bcm_cpri_port_rsvd4_tx_cm_eth_config_set( 6174 BCM_CONTROL(unit)->unit, 6175 port, 6176 config); 6177 } 6178 6179 int 6180 bcm_loop_cpri_port_rsvd4_tx_cm_hdr_config_entry_set( 6181 int unit, 6182 int port, 6183 int index, 6184 bcm_rsvd4_tx_cm_hdr_entry_t * entry) 6185 { 6186 return bcm_cpri_port_rsvd4_tx_cm_hdr_config_entry_set( 6187 BCM_CONTROL(unit)->unit, 6188 port, 6189 index, 6190 entry); 6191 } 6192 6193 int 6194 bcm_loop_cpri_port_rsvd4_tx_cm_hdr_lkup_entry_set( 6195 int unit, 6196 int port, 6197 int flow_id, 6198 int header_index) 6199 { 6200 return bcm_cpri_port_rsvd4_tx_cm_hdr_lkup_entry_set( 6201 BCM_CONTROL(unit)->unit, 6202 port, 6203 flow_id, 6204 header_index); 6205 } 6206 6207 int 6208 bcm_loop_cpri_port_rsvd4_tx_cm_raw_config_set( 6209 int unit, 6210 int port, 6211 bcm_rsvd4_tx_cm_raw_config_t * config) 6212 { 6213 return bcm_cpri_port_rsvd4_tx_cm_raw_config_set( 6214 BCM_CONTROL(unit)->unit, 6215 port, 6216 config); 6217 } 6218 6219 int 6220 bcm_loop_cpri_port_rsvd4_tx_cm_tunnel_crc_config_set( 6221 int unit, 6222 int port, 6223 bcm_rsvd4_cm_tunnel_crc_option_t crc_option) 6224 { 6225 return bcm_cpri_port_rsvd4_tx_cm_tunnel_crc_config_set( 6226 BCM_CONTROL(unit)->unit, 6227 port, 6228 crc_option); 6229 } 6230 6231 int 6232 bcm_loop_cpri_port_rsvd4_tx_control_flow_add( 6233 int unit, 6234 int port, 6235 int control_flow_id, 6236 bcm_rsvd4_tx_control_flow_config_t * config) 6237 { 6238 return bcm_cpri_port_rsvd4_tx_control_flow_add( 6239 BCM_CONTROL(unit)->unit, 6240 port, 6241 control_flow_id, 6242 config); 6243 } 6244 6245 int 6246 bcm_loop_cpri_port_rsvd4_tx_control_flow_group_member_add( 6247 int unit, 6248 int port, 6249 bcm_rsvd4_control_group_id_t group_num, 6250 bcm_rsvd4_tx_control_flow_group_config_t * config) 6251 { 6252 return bcm_cpri_port_rsvd4_tx_control_flow_group_member_add( 6253 BCM_CONTROL(unit)->unit, 6254 port, 6255 group_num, 6256 config); 6257 } 6258 6259 int 6260 bcm_loop_cpri_port_rsvd4_tx_control_flow_group_member_delete( 6261 int unit, 6262 int port, 6263 bcm_rsvd4_control_group_id_t group_num, 6264 bcm_rsvd4_priority_t priority) 6265 { 6266 return bcm_cpri_port_rsvd4_tx_control_flow_group_member_delete( 6267 BCM_CONTROL(unit)->unit, 6268 port, 6269 group_num, 6270 priority); 6271 } 6272 6273 int 6274 bcm_loop_cpri_port_rsvd4_tx_current_frame_sync_info_get( 6275 int unit, 6276 bcm_gport_t port, 6277 bcm_rsvd4_frame_sync_info_t * frame_sync_info) 6278 { 6279 return bcm_cpri_port_rsvd4_tx_current_frame_sync_info_get( 6280 BCM_CONTROL(unit)->unit, 6281 port, 6282 frame_sync_info); 6283 } 6284 6285 int 6286 bcm_loop_cpri_port_rsvd4_tx_flow_add( 6287 int unit, 6288 bcm_gport_t port, 6289 int flow_id, 6290 bcm_rsvd4_tx_flow_info_t * flow_info) 6291 { 6292 return bcm_cpri_port_rsvd4_tx_flow_add( 6293 BCM_CONTROL(unit)->unit, 6294 port, 6295 flow_id, 6296 flow_info); 6297 } 6298 6299 int 6300 bcm_loop_cpri_port_rsvd4_tx_flow_delete( 6301 int unit, 6302 bcm_gport_t port, 6303 int flow_id) 6304 { 6305 return bcm_cpri_port_rsvd4_tx_flow_delete( 6306 BCM_CONTROL(unit)->unit, 6307 port, 6308 flow_id); 6309 } 6310 6311 int 6312 bcm_loop_cpri_port_rsvd4_tx_frame_config_debug_set( 6313 int unit, 6314 bcm_gport_t port, 6315 bcm_rsvd4_tx_config_t config_type, 6316 uint32 value) 6317 { 6318 return bcm_cpri_port_rsvd4_tx_frame_config_debug_set( 6319 BCM_CONTROL(unit)->unit, 6320 port, 6321 config_type, 6322 value); 6323 } 6324 6325 int 6326 bcm_loop_cpri_port_rsvd4_tx_frame_config_get( 6327 int unit, 6328 bcm_gport_t port, 6329 bcm_rsvd4_tx_frame_config_t * config) 6330 { 6331 return bcm_cpri_port_rsvd4_tx_frame_config_get( 6332 BCM_CONTROL(unit)->unit, 6333 port, 6334 config); 6335 } 6336 6337 int 6338 bcm_loop_cpri_port_rsvd4_tx_frame_config_set( 6339 int unit, 6340 bcm_gport_t port, 6341 bcm_rsvd4_tx_frame_config_t * config) 6342 { 6343 return bcm_cpri_port_rsvd4_tx_frame_config_set( 6344 BCM_CONTROL(unit)->unit, 6345 port, 6346 config); 6347 } 6348 6349 int 6350 bcm_loop_cpri_port_rsvd4_tx_fsm_state_set( 6351 int unit, 6352 bcm_gport_t port, 6353 bcm_rsvd4_tx_fsm_state_t state) 6354 { 6355 return bcm_cpri_port_rsvd4_tx_fsm_state_set( 6356 BCM_CONTROL(unit)->unit, 6357 port, 6358 state); 6359 } 6360 6361 int 6362 bcm_loop_cpri_port_rsvd4_tx_modulo_rule_entry_get( 6363 int unit, 6364 bcm_gport_t port, 6365 uint32 modulo_rule_num, 6366 bcm_cpri_tx_rule_type_t modulo_rule_type, 6367 bcm_cpri_modulo_rule_entry_t * modulo_rule) 6368 { 6369 return bcm_cpri_port_rsvd4_tx_modulo_rule_entry_get( 6370 BCM_CONTROL(unit)->unit, 6371 port, 6372 modulo_rule_num, 6373 modulo_rule_type, 6374 modulo_rule); 6375 } 6376 6377 int 6378 bcm_loop_cpri_port_rsvd4_tx_modulo_rule_entry_set( 6379 int unit, 6380 bcm_gport_t port, 6381 uint32 modulo_rule_num, 6382 bcm_cpri_tx_rule_type_t modulo_rule_type, 6383 bcm_cpri_modulo_rule_entry_t * modulo_rule) 6384 { 6385 return bcm_cpri_port_rsvd4_tx_modulo_rule_entry_set( 6386 BCM_CONTROL(unit)->unit, 6387 port, 6388 modulo_rule_num, 6389 modulo_rule_type, 6390 modulo_rule); 6391 } 6392 6393 int 6394 bcm_loop_cpri_port_rsvd4_tx_override_set( 6395 int unit, 6396 bcm_gport_t port, 6397 bcm_rsvd4_tx_params_t parameter, 6398 int enable, 6399 int value) 6400 { 6401 return bcm_cpri_port_rsvd4_tx_override_set( 6402 BCM_CONTROL(unit)->unit, 6403 port, 6404 parameter, 6405 enable, 6406 value); 6407 } 6408 6409 int 6410 bcm_loop_cpri_port_rsvd4_tx_position_entry_get( 6411 int unit, 6412 bcm_gport_t port, 6413 uint32 pos_index, 6414 bcm_cpri_dbm_position_entry_t * pos_entry) 6415 { 6416 return bcm_cpri_port_rsvd4_tx_position_entry_get( 6417 BCM_CONTROL(unit)->unit, 6418 port, 6419 pos_index, 6420 pos_entry); 6421 } 6422 6423 int 6424 bcm_loop_cpri_port_rsvd4_tx_position_entry_set( 6425 int unit, 6426 bcm_gport_t port, 6427 uint32 pos_index, 6428 bcm_cpri_dbm_position_entry_t * pos_entry) 6429 { 6430 return bcm_cpri_port_rsvd4_tx_position_entry_set( 6431 BCM_CONTROL(unit)->unit, 6432 port, 6433 pos_index, 6434 pos_entry); 6435 } 6436 6437 int 6438 bcm_loop_cpri_port_rx_axc_frame_add( 6439 int unit, 6440 bcm_gport_t port, 6441 int axc_id, 6442 bcm_cpri_axc_frame_info_t * axc_info) 6443 { 6444 return bcm_cpri_port_rx_axc_frame_add( 6445 BCM_CONTROL(unit)->unit, 6446 port, 6447 axc_id, 6448 axc_info); 6449 } 6450 6451 int 6452 bcm_loop_cpri_port_rx_axc_frame_delete( 6453 int unit, 6454 bcm_gport_t port, 6455 int axc_id) 6456 { 6457 return bcm_cpri_port_rx_axc_frame_delete( 6458 BCM_CONTROL(unit)->unit, 6459 port, 6460 axc_id); 6461 } 6462 6463 int 6464 bcm_loop_cpri_port_rx_axc_frame_get( 6465 int unit, 6466 bcm_gport_t port, 6467 int axc_id, 6468 bcm_cpri_axc_frame_info_t * axc_info) 6469 { 6470 return bcm_cpri_port_rx_axc_frame_get( 6471 BCM_CONTROL(unit)->unit, 6472 port, 6473 axc_id, 6474 axc_info); 6475 } 6476 6477 int 6478 bcm_loop_cpri_port_rx_axc_frame_get_all( 6479 int unit, 6480 bcm_gport_t port, 6481 int max_count, 6482 bcm_cpri_axc_frame_info_t * axc_info_list, 6483 int * axc_count) 6484 { 6485 return bcm_cpri_port_rx_axc_frame_get_all( 6486 BCM_CONTROL(unit)->unit, 6487 port, 6488 max_count, 6489 axc_info_list, 6490 axc_count); 6491 } 6492 6493 int 6494 bcm_loop_cpri_port_rx_cw_gcw_config_get( 6495 int unit, 6496 int port, 6497 uint8 index, 6498 bcm_cpri_rx_gcw_config_info_t * config) 6499 { 6500 return bcm_cpri_port_rx_cw_gcw_config_get( 6501 BCM_CONTROL(unit)->unit, 6502 port, 6503 index, 6504 config); 6505 } 6506 6507 int 6508 bcm_loop_cpri_port_rx_cw_gcw_config_set( 6509 int unit, 6510 int port, 6511 uint8 index, 6512 bcm_cpri_rx_gcw_config_info_t * config) 6513 { 6514 return bcm_cpri_port_rx_cw_gcw_config_set( 6515 BCM_CONTROL(unit)->unit, 6516 port, 6517 index, 6518 config); 6519 } 6520 6521 int 6522 bcm_loop_cpri_port_rx_cw_gcw_word_get( 6523 int unit, 6524 bcm_port_t port, 6525 int group_index, 6526 uint16 * gcw_word) 6527 { 6528 return bcm_cpri_port_rx_cw_gcw_word_get( 6529 BCM_CONTROL(unit)->unit, 6530 port, 6531 group_index, 6532 gcw_word); 6533 } 6534 6535 int 6536 bcm_loop_cpri_port_rx_cw_l1_signal_info_get( 6537 int unit, 6538 int port, 6539 bcm_cpri_cw_l1_protocol_info_t * l1_info) 6540 { 6541 return bcm_cpri_port_rx_cw_l1_signal_info_get( 6542 BCM_CONTROL(unit)->unit, 6543 port, 6544 l1_info); 6545 } 6546 6547 int 6548 bcm_loop_cpri_port_rx_cw_l1_signal_protection_get( 6549 int unit, 6550 int port, 6551 uint32 signal_map, 6552 uint32 * enable) 6553 { 6554 return bcm_cpri_port_rx_cw_l1_signal_protection_get( 6555 BCM_CONTROL(unit)->unit, 6556 port, 6557 signal_map, 6558 enable); 6559 } 6560 6561 int 6562 bcm_loop_cpri_port_rx_cw_l1_signal_protection_set( 6563 int unit, 6564 int port, 6565 uint32 signal_map, 6566 uint32 enable) 6567 { 6568 return bcm_cpri_port_rx_cw_l1_signal_protection_set( 6569 BCM_CONTROL(unit)->unit, 6570 port, 6571 signal_map, 6572 enable); 6573 } 6574 6575 int 6576 bcm_loop_cpri_port_rx_cw_rsvd5_config_get( 6577 int unit, 6578 int port, 6579 bcm_cpri_rx_rsvd5_config_info_t * config) 6580 { 6581 return bcm_cpri_port_rx_cw_rsvd5_config_get( 6582 BCM_CONTROL(unit)->unit, 6583 port, 6584 config); 6585 } 6586 6587 int 6588 bcm_loop_cpri_port_rx_cw_rsvd5_config_set( 6589 int unit, 6590 int port, 6591 bcm_cpri_rx_rsvd5_config_info_t * config) 6592 { 6593 return bcm_cpri_port_rx_cw_rsvd5_config_set( 6594 BCM_CONTROL(unit)->unit, 6595 port, 6596 config); 6597 } 6598 6599 int 6600 bcm_loop_cpri_port_rx_cw_sync_info_get( 6601 int unit, 6602 int port, 6603 uint32 * hyper_frame_num, 6604 uint32 * radio_frame_num) 6605 { 6606 return bcm_cpri_port_rx_cw_sync_info_get( 6607 BCM_CONTROL(unit)->unit, 6608 port, 6609 hyper_frame_num, 6610 radio_frame_num); 6611 } 6612 6613 int 6614 bcm_loop_cpri_port_rx_cw_vsd_config_get( 6615 int unit, 6616 int port, 6617 bcm_cpri_rx_vsd_config_info_t * config) 6618 { 6619 return bcm_cpri_port_rx_cw_vsd_config_get( 6620 BCM_CONTROL(unit)->unit, 6621 port, 6622 config); 6623 } 6624 6625 int 6626 bcm_loop_cpri_port_rx_cw_vsd_config_set( 6627 int unit, 6628 int port, 6629 bcm_cpri_rx_vsd_config_info_t * config) 6630 { 6631 return bcm_cpri_port_rx_cw_vsd_config_set( 6632 BCM_CONTROL(unit)->unit, 6633 port, 6634 config); 6635 } 6636 6637 int 6638 bcm_loop_cpri_port_rx_cw_vsd_ctrl_flow_add( 6639 int unit, 6640 int port, 6641 uint16 group_id, 6642 bcm_cpri_rx_vsd_flow_info_t * config) 6643 { 6644 return bcm_cpri_port_rx_cw_vsd_ctrl_flow_add( 6645 BCM_CONTROL(unit)->unit, 6646 port, 6647 group_id, 6648 config); 6649 } 6650 6651 int 6652 bcm_loop_cpri_port_rx_cw_vsd_ctrl_flow_delete( 6653 int unit, 6654 int port, 6655 uint16 group_id) 6656 { 6657 return bcm_cpri_port_rx_cw_vsd_ctrl_flow_delete( 6658 BCM_CONTROL(unit)->unit, 6659 port, 6660 group_id); 6661 } 6662 6663 int 6664 bcm_loop_cpri_port_rx_cw_vsd_ctrl_flow_get( 6665 int unit, 6666 int port, 6667 uint16 group_id, 6668 bcm_cpri_rx_vsd_flow_info_t * config) 6669 { 6670 return bcm_cpri_port_rx_cw_vsd_ctrl_flow_get( 6671 BCM_CONTROL(unit)->unit, 6672 port, 6673 group_id, 6674 config); 6675 } 6676 6677 int 6678 bcm_loop_cpri_port_rx_cw_vsd_raw_config_get( 6679 int unit, 6680 int port, 6681 uint8 vsd_raw_id, 6682 bcm_cpri_rx_vsd_raw_config_info_t * config) 6683 { 6684 return bcm_cpri_port_rx_cw_vsd_raw_config_get( 6685 BCM_CONTROL(unit)->unit, 6686 port, 6687 vsd_raw_id, 6688 config); 6689 } 6690 6691 int 6692 bcm_loop_cpri_port_rx_cw_vsd_raw_config_set( 6693 int unit, 6694 int port, 6695 uint8 vsd_raw_id, 6696 bcm_cpri_rx_vsd_raw_config_info_t * config) 6697 { 6698 return bcm_cpri_port_rx_cw_vsd_raw_config_set( 6699 BCM_CONTROL(unit)->unit, 6700 port, 6701 vsd_raw_id, 6702 config); 6703 } 6704 6705 int 6706 bcm_loop_cpri_port_rx_speed_get( 6707 int unit, 6708 bcm_gport_t port, 6709 bcm_cpri_port_type_t * port_type, 6710 bcm_cpri_port_speed_t * speed) 6711 { 6712 return bcm_cpri_port_rx_speed_get( 6713 BCM_CONTROL(unit)->unit, 6714 port, 6715 port_type, 6716 speed); 6717 } 6718 6719 int 6720 bcm_loop_cpri_port_rx_speed_set( 6721 int unit, 6722 bcm_gport_t port, 6723 bcm_cpri_port_type_t port_type, 6724 bcm_cpri_port_speed_t speed) 6725 { 6726 return bcm_cpri_port_rx_speed_set( 6727 BCM_CONTROL(unit)->unit, 6728 port, 6729 port_type, 6730 speed); 6731 } 6732 6733 int 6734 bcm_loop_cpri_port_rx_tag_config_set( 6735 int unit, 6736 int port, 6737 bcm_cpri_control_tag_config_t * config) 6738 { 6739 return bcm_cpri_port_rx_tag_config_set( 6740 BCM_CONTROL(unit)->unit, 6741 port, 6742 config); 6743 } 6744 6745 int 6746 bcm_loop_cpri_port_rx_tag_entry_add( 6747 int unit, 6748 int port, 6749 bcm_cpri_tag_gen_entry_t * config) 6750 { 6751 return bcm_cpri_port_rx_tag_entry_add( 6752 BCM_CONTROL(unit)->unit, 6753 port, 6754 config); 6755 } 6756 6757 int 6758 bcm_loop_cpri_port_rx_tag_entry_delete( 6759 int unit, 6760 int port, 6761 bcm_cpri_tag_gen_entry_t * config) 6762 { 6763 return bcm_cpri_port_rx_tag_entry_delete( 6764 BCM_CONTROL(unit)->unit, 6765 port, 6766 config); 6767 } 6768 6769 int 6770 bcm_loop_cpri_port_stat_get( 6771 int unit, 6772 bcm_gport_t port, 6773 bcm_cpri_stat_type_t type, 6774 uint64 * val) 6775 { 6776 return bcm_cpri_port_stat_get( 6777 BCM_CONTROL(unit)->unit, 6778 port, 6779 type, 6780 val); 6781 } 6782 6783 int 6784 bcm_loop_cpri_port_tunnel_mode_config_get( 6785 int unit, 6786 bcm_port_t port, 6787 bcm_cpri_dir_t direction, 6788 int * enable, 6789 bcm_cpri_port_tunnel_config_t * config) 6790 { 6791 return bcm_cpri_port_tunnel_mode_config_get( 6792 BCM_CONTROL(unit)->unit, 6793 port, 6794 direction, 6795 enable, 6796 config); 6797 } 6798 6799 int 6800 bcm_loop_cpri_port_tunnel_mode_config_set( 6801 int unit, 6802 bcm_port_t port, 6803 bcm_cpri_dir_t direction, 6804 int enable, 6805 bcm_cpri_port_tunnel_config_t * config) 6806 { 6807 return bcm_cpri_port_tunnel_mode_config_set( 6808 BCM_CONTROL(unit)->unit, 6809 port, 6810 direction, 6811 enable, 6812 config); 6813 } 6814 6815 int 6816 bcm_loop_cpri_port_tx_axc_frame_add( 6817 int unit, 6818 bcm_gport_t port, 6819 int axc_id, 6820 bcm_cpri_axc_frame_info_t * axc_info) 6821 { 6822 return bcm_cpri_port_tx_axc_frame_add( 6823 BCM_CONTROL(unit)->unit, 6824 port, 6825 axc_id, 6826 axc_info); 6827 } 6828 6829 int 6830 bcm_loop_cpri_port_tx_axc_frame_delete( 6831 int unit, 6832 bcm_gport_t port, 6833 int axc_id) 6834 { 6835 return bcm_cpri_port_tx_axc_frame_delete( 6836 BCM_CONTROL(unit)->unit, 6837 port, 6838 axc_id); 6839 } 6840 6841 int 6842 bcm_loop_cpri_port_tx_axc_frame_get( 6843 int unit, 6844 bcm_gport_t port, 6845 int axc_id, 6846 bcm_cpri_axc_frame_info_t * axc_info) 6847 { 6848 return bcm_cpri_port_tx_axc_frame_get( 6849 BCM_CONTROL(unit)->unit, 6850 port, 6851 axc_id, 6852 axc_info); 6853 } 6854 6855 int 6856 bcm_loop_cpri_port_tx_axc_frame_get_all( 6857 int unit, 6858 bcm_gport_t port, 6859 int max_count, 6860 bcm_cpri_axc_frame_info_t * axc_info_list, 6861 int * axc_count) 6862 { 6863 return bcm_cpri_port_tx_axc_frame_get_all( 6864 BCM_CONTROL(unit)->unit, 6865 port, 6866 max_count, 6867 axc_info_list, 6868 axc_count); 6869 } 6870 6871 int 6872 bcm_loop_cpri_port_tx_cw_gcw_config_get( 6873 int unit, 6874 int port, 6875 uint8 index, 6876 bcm_cpri_tx_gcw_config_info_t * config) 6877 { 6878 return bcm_cpri_port_tx_cw_gcw_config_get( 6879 BCM_CONTROL(unit)->unit, 6880 port, 6881 index, 6882 config); 6883 } 6884 6885 int 6886 bcm_loop_cpri_port_tx_cw_gcw_config_set( 6887 int unit, 6888 int port, 6889 uint8 index, 6890 bcm_cpri_tx_gcw_config_info_t * config) 6891 { 6892 return bcm_cpri_port_tx_cw_gcw_config_set( 6893 BCM_CONTROL(unit)->unit, 6894 port, 6895 index, 6896 config); 6897 } 6898 6899 int 6900 bcm_loop_cpri_port_tx_cw_gcw_filter_get( 6901 int unit, 6902 int port, 6903 bcm_cpri_tx_gcw_tx_filter_info_t * config) 6904 { 6905 return bcm_cpri_port_tx_cw_gcw_filter_get( 6906 BCM_CONTROL(unit)->unit, 6907 port, 6908 config); 6909 } 6910 6911 int 6912 bcm_loop_cpri_port_tx_cw_gcw_filter_set( 6913 int unit, 6914 int port, 6915 bcm_cpri_tx_gcw_tx_filter_info_t * config) 6916 { 6917 return bcm_cpri_port_tx_cw_gcw_filter_set( 6918 BCM_CONTROL(unit)->unit, 6919 port, 6920 config); 6921 } 6922 6923 int 6924 bcm_loop_cpri_port_tx_cw_gcw_word_set( 6925 int unit, 6926 bcm_port_t port, 6927 int group_index, 6928 uint16 gcw_word) 6929 { 6930 return bcm_cpri_port_tx_cw_gcw_word_set( 6931 BCM_CONTROL(unit)->unit, 6932 port, 6933 group_index, 6934 gcw_word); 6935 } 6936 6937 int 6938 bcm_loop_cpri_port_tx_cw_l1_config_set( 6939 int unit, 6940 int port, 6941 bcm_cpri_cw_l1_config_info_t * entry) 6942 { 6943 return bcm_cpri_port_tx_cw_l1_config_set( 6944 BCM_CONTROL(unit)->unit, 6945 port, 6946 entry); 6947 } 6948 6949 int 6950 bcm_loop_cpri_port_tx_cw_rsvd5_config_get( 6951 int unit, 6952 int port, 6953 bcm_cpri_tx_cw_rsvd5_config_info_t * config) 6954 { 6955 return bcm_cpri_port_tx_cw_rsvd5_config_get( 6956 BCM_CONTROL(unit)->unit, 6957 port, 6958 config); 6959 } 6960 6961 int 6962 bcm_loop_cpri_port_tx_cw_rsvd5_config_set( 6963 int unit, 6964 int port, 6965 bcm_cpri_tx_cw_rsvd5_config_info_t * config) 6966 { 6967 return bcm_cpri_port_tx_cw_rsvd5_config_set( 6968 BCM_CONTROL(unit)->unit, 6969 port, 6970 config); 6971 } 6972 6973 int 6974 bcm_loop_cpri_port_tx_cw_sync_info_get( 6975 int unit, 6976 int port, 6977 bcm_cpri_cw_sync_info_t * entry) 6978 { 6979 return bcm_cpri_port_tx_cw_sync_info_get( 6980 BCM_CONTROL(unit)->unit, 6981 port, 6982 entry); 6983 } 6984 6985 int 6986 bcm_loop_cpri_port_tx_cw_sync_info_set( 6987 int unit, 6988 int port, 6989 bcm_cpri_cw_sync_info_t * entry) 6990 { 6991 return bcm_cpri_port_tx_cw_sync_info_set( 6992 BCM_CONTROL(unit)->unit, 6993 port, 6994 entry); 6995 } 6996 6997 int 6998 bcm_loop_cpri_port_tx_cw_vsd_config_get( 6999 int unit, 7000 int port, 7001 bcm_cpri_tx_vsd_config_info_t * entry) 7002 { 7003 return bcm_cpri_port_tx_cw_vsd_config_get( 7004 BCM_CONTROL(unit)->unit, 7005 port, 7006 entry); 7007 } 7008 7009 int 7010 bcm_loop_cpri_port_tx_cw_vsd_config_set( 7011 int unit, 7012 int port, 7013 bcm_cpri_tx_vsd_config_info_t * entry) 7014 { 7015 return bcm_cpri_port_tx_cw_vsd_config_set( 7016 BCM_CONTROL(unit)->unit, 7017 port, 7018 entry); 7019 } 7020 7021 int 7022 bcm_loop_cpri_port_tx_cw_vsd_ctrl_flow_add( 7023 int unit, 7024 int port, 7025 uint16 group_id, 7026 bcm_cpri_tx_vsd_flow_info_t * config) 7027 { 7028 return bcm_cpri_port_tx_cw_vsd_ctrl_flow_add( 7029 BCM_CONTROL(unit)->unit, 7030 port, 7031 group_id, 7032 config); 7033 } 7034 7035 int 7036 bcm_loop_cpri_port_tx_cw_vsd_ctrl_flow_delete( 7037 int unit, 7038 int port, 7039 uint16 group_id) 7040 { 7041 return bcm_cpri_port_tx_cw_vsd_ctrl_flow_delete( 7042 BCM_CONTROL(unit)->unit, 7043 port, 7044 group_id); 7045 } 7046 7047 int 7048 bcm_loop_cpri_port_tx_cw_vsd_ctrl_flow_get( 7049 int unit, 7050 int port, 7051 uint16 group_id, 7052 bcm_cpri_tx_vsd_flow_info_t * config) 7053 { 7054 return bcm_cpri_port_tx_cw_vsd_ctrl_flow_get( 7055 BCM_CONTROL(unit)->unit, 7056 port, 7057 group_id, 7058 config); 7059 } 7060 7061 int 7062 bcm_loop_cpri_port_tx_cw_vsd_raw_filter_get( 7063 int unit, 7064 int port, 7065 bcm_cpri_tx_cw_vsd_raw_filter_info_t * config) 7066 { 7067 return bcm_cpri_port_tx_cw_vsd_raw_filter_get( 7068 BCM_CONTROL(unit)->unit, 7069 port, 7070 config); 7071 } 7072 7073 int 7074 bcm_loop_cpri_port_tx_cw_vsd_raw_filter_set( 7075 int unit, 7076 int port, 7077 bcm_cpri_tx_cw_vsd_raw_filter_info_t * config) 7078 { 7079 return bcm_cpri_port_tx_cw_vsd_raw_filter_set( 7080 BCM_CONTROL(unit)->unit, 7081 port, 7082 config); 7083 } 7084 7085 int 7086 bcm_loop_cpri_port_tx_cw_vsd_raw_flow_config_get( 7087 int unit, 7088 int port, 7089 uint8 index, 7090 bcm_cpri_tx_vsd_raw_config_info_t * config) 7091 { 7092 return bcm_cpri_port_tx_cw_vsd_raw_flow_config_get( 7093 BCM_CONTROL(unit)->unit, 7094 port, 7095 index, 7096 config); 7097 } 7098 7099 int 7100 bcm_loop_cpri_port_tx_cw_vsd_raw_flow_config_set( 7101 int unit, 7102 int port, 7103 uint8 index, 7104 bcm_cpri_tx_vsd_raw_config_info_t * config) 7105 { 7106 return bcm_cpri_port_tx_cw_vsd_raw_flow_config_set( 7107 BCM_CONTROL(unit)->unit, 7108 port, 7109 index, 7110 config); 7111 } 7112 7113 int 7114 bcm_loop_cpri_port_tx_frame_tgen_config_set( 7115 int unit, 7116 bcm_gport_t port, 7117 int enable, 7118 bcm_cpri_tx_frame_tgen_config_t * tgen_config) 7119 { 7120 return bcm_cpri_port_tx_frame_tgen_config_set( 7121 BCM_CONTROL(unit)->unit, 7122 port, 7123 enable, 7124 tgen_config); 7125 } 7126 7127 int 7128 bcm_loop_cpri_port_tx_speed_get( 7129 int unit, 7130 bcm_gport_t port, 7131 bcm_cpri_port_type_t * port_type, 7132 bcm_cpri_port_speed_t * speed) 7133 { 7134 return bcm_cpri_port_tx_speed_get( 7135 BCM_CONTROL(unit)->unit, 7136 port, 7137 port_type, 7138 speed); 7139 } 7140 7141 int 7142 bcm_loop_cpri_port_tx_speed_set( 7143 int unit, 7144 bcm_gport_t port, 7145 bcm_cpri_port_type_t port_type, 7146 bcm_cpri_port_speed_t speed) 7147 { 7148 return bcm_cpri_port_tx_speed_set( 7149 BCM_CONTROL(unit)->unit, 7150 port, 7151 port_type, 7152 speed); 7153 } 7154 7155 int 7156 bcm_loop_custom_port_get( 7157 int unit, 7158 bcm_port_t port, 7159 int type, 7160 int max_len, 7161 uint32 * args, 7162 int * actual_len) 7163 { 7164 return bcm_custom_port_get( 7165 BCM_CONTROL(unit)->unit, 7166 port, 7167 type, 7168 max_len, 7169 args, 7170 actual_len); 7171 } 7172 7173 int 7174 bcm_loop_custom_port_set( 7175 int unit, 7176 bcm_port_t port, 7177 int type, 7178 int len, 7179 uint32 * args) 7180 { 7181 return bcm_custom_port_set( 7182 BCM_CONTROL(unit)->unit, 7183 port, 7184 type, 7185 len, 7186 args); 7187 } 7188 7189 int 7190 bcm_loop_custom_register( 7191 int unit, 7192 bcm_custom_cb_t func, 7193 void * user_data) 7194 { 7195 return bcm_custom_register( 7196 BCM_CONTROL(unit)->unit, 7197 func, 7198 user_data); 7199 } 7200 7201 int 7202 bcm_loop_custom_unregister( 7203 int unit) 7204 { 7205 return bcm_custom_unregister( 7206 BCM_CONTROL(unit)->unit); 7207 } 7208 7209 /* bcm_detach not dispatchable */ 7210 7211 /* bcm_detach_late_txrx not dispatchable */ 7212 7213 /* bcm_detach_retry_get not dispatchable */ 7214 7215 /* bcm_detach_retry_set not dispatchable */ 7216 7217 /* bcm_detach_retry_t_init not dispatchable */ 7218 7219 int 7220 bcm_loop_device_member_get( 7221 int unit, 7222 uint32 flags, 7223 bcm_device_member_t member_type, 7224 int * is_member) 7225 { 7226 return bcm_device_member_get( 7227 BCM_CONTROL(unit)->unit, 7228 flags, 7229 member_type, 7230 is_member); 7231 } 7232 7233 int 7234 bcm_loop_eav_bandwidth_get( 7235 int unit, 7236 bcm_port_t port, 7237 bcm_eav_stream_class_t type, 7238 uint32 * bytes_sec, 7239 uint32 * bytes_burst) 7240 { 7241 return bcm_eav_bandwidth_get( 7242 BCM_CONTROL(unit)->unit, 7243 port, 7244 type, 7245 bytes_sec, 7246 bytes_burst); 7247 } 7248 7249 int 7250 bcm_loop_eav_bandwidth_set( 7251 int unit, 7252 bcm_port_t port, 7253 bcm_eav_stream_class_t type, 7254 uint32 bytes_sec, 7255 uint32 bytes_burst) 7256 { 7257 return bcm_eav_bandwidth_set( 7258 BCM_CONTROL(unit)->unit, 7259 port, 7260 type, 7261 bytes_sec, 7262 bytes_burst); 7263 } 7264 7265 int 7266 bcm_loop_eav_control_get( 7267 int unit, 7268 bcm_eav_control_t type, 7269 uint32 * arg, 7270 uint32 * arg2) 7271 { 7272 return bcm_eav_control_get( 7273 BCM_CONTROL(unit)->unit, 7274 type, 7275 arg, 7276 arg2); 7277 } 7278 7279 int 7280 bcm_loop_eav_control_set( 7281 int unit, 7282 bcm_eav_control_t type, 7283 uint32 arg, 7284 uint32 arg2) 7285 { 7286 return bcm_eav_control_set( 7287 BCM_CONTROL(unit)->unit, 7288 type, 7289 arg, 7290 arg2); 7291 } 7292 7293 int 7294 bcm_loop_eav_init( 7295 int unit) 7296 { 7297 return bcm_eav_init( 7298 BCM_CONTROL(unit)->unit); 7299 } 7300 7301 int 7302 bcm_loop_eav_link_status_get( 7303 int unit, 7304 bcm_port_t port, 7305 int * link) 7306 { 7307 return bcm_eav_link_status_get( 7308 BCM_CONTROL(unit)->unit, 7309 port, 7310 link); 7311 } 7312 7313 int 7314 bcm_loop_eav_link_status_set( 7315 int unit, 7316 bcm_port_t port, 7317 int link) 7318 { 7319 return bcm_eav_link_status_set( 7320 BCM_CONTROL(unit)->unit, 7321 port, 7322 link); 7323 } 7324 7325 int 7326 bcm_loop_eav_pcp_mapping_get( 7327 int unit, 7328 bcm_eav_stream_class_t type, 7329 int * pcp, 7330 int * remapped_pcp) 7331 { 7332 return bcm_eav_pcp_mapping_get( 7333 BCM_CONTROL(unit)->unit, 7334 type, 7335 pcp, 7336 remapped_pcp); 7337 } 7338 7339 int 7340 bcm_loop_eav_pcp_mapping_set( 7341 int unit, 7342 bcm_eav_stream_class_t type, 7343 int pcp, 7344 int remapped_pcp) 7345 { 7346 return bcm_eav_pcp_mapping_set( 7347 BCM_CONTROL(unit)->unit, 7348 type, 7349 pcp, 7350 remapped_pcp); 7351 } 7352 7353 int 7354 bcm_loop_eav_port_enable_get( 7355 int unit, 7356 bcm_port_t port, 7357 int * enable) 7358 { 7359 return bcm_eav_port_enable_get( 7360 BCM_CONTROL(unit)->unit, 7361 port, 7362 enable); 7363 } 7364 7365 int 7366 bcm_loop_eav_port_enable_set( 7367 int unit, 7368 bcm_port_t port, 7369 int enable) 7370 { 7371 return bcm_eav_port_enable_set( 7372 BCM_CONTROL(unit)->unit, 7373 port, 7374 enable); 7375 } 7376 7377 int 7378 bcm_loop_eav_srp_mac_ethertype_get( 7379 int unit, 7380 bcm_mac_t mac, 7381 bcm_port_ethertype_t * ethertype) 7382 { 7383 return bcm_eav_srp_mac_ethertype_get( 7384 BCM_CONTROL(unit)->unit, 7385 mac, 7386 ethertype); 7387 } 7388 7389 int 7390 bcm_loop_eav_srp_mac_ethertype_set( 7391 int unit, 7392 bcm_mac_t mac, 7393 bcm_port_ethertype_t ethertype) 7394 { 7395 return bcm_eav_srp_mac_ethertype_set( 7396 BCM_CONTROL(unit)->unit, 7397 mac, 7398 ethertype); 7399 } 7400 7401 int 7402 bcm_loop_eav_timestamp_get( 7403 int unit, 7404 bcm_port_t port, 7405 uint32 * timestamp) 7406 { 7407 return bcm_eav_timestamp_get( 7408 BCM_CONTROL(unit)->unit, 7409 port, 7410 timestamp); 7411 } 7412 7413 int 7414 bcm_loop_eav_timesync_mac_get( 7415 int unit, 7416 bcm_mac_t eav_mac) 7417 { 7418 return bcm_eav_timesync_mac_get( 7419 BCM_CONTROL(unit)->unit, 7420 eav_mac); 7421 } 7422 7423 int 7424 bcm_loop_eav_timesync_mac_set( 7425 int unit, 7426 bcm_mac_t eav_mac) 7427 { 7428 return bcm_eav_timesync_mac_set( 7429 BCM_CONTROL(unit)->unit, 7430 eav_mac); 7431 } 7432 7433 #ifdef INCLUDE_L3 7434 7435 int 7436 bcm_loop_ecn_map_create( 7437 int unit, 7438 uint32 flags, 7439 int * ecn_map_id) 7440 { 7441 return bcm_ecn_map_create( 7442 BCM_CONTROL(unit)->unit, 7443 flags, 7444 ecn_map_id); 7445 } 7446 7447 int 7448 bcm_loop_ecn_map_destroy( 7449 int unit, 7450 int ecn_map_id) 7451 { 7452 return bcm_ecn_map_destroy( 7453 BCM_CONTROL(unit)->unit, 7454 ecn_map_id); 7455 } 7456 7457 int 7458 bcm_loop_ecn_map_get( 7459 int unit, 7460 int ecn_map_id, 7461 bcm_ecn_map_t * ecn_map) 7462 { 7463 return bcm_ecn_map_get( 7464 BCM_CONTROL(unit)->unit, 7465 ecn_map_id, 7466 ecn_map); 7467 } 7468 7469 int 7470 bcm_loop_ecn_map_mode_get( 7471 int unit, 7472 bcm_ecn_map_mode_t * ecn_map_mode) 7473 { 7474 return bcm_ecn_map_mode_get( 7475 BCM_CONTROL(unit)->unit, 7476 ecn_map_mode); 7477 } 7478 7479 int 7480 bcm_loop_ecn_map_mode_set( 7481 int unit, 7482 bcm_ecn_map_mode_t * ecn_map_mode) 7483 { 7484 return bcm_ecn_map_mode_set( 7485 BCM_CONTROL(unit)->unit, 7486 ecn_map_mode); 7487 } 7488 7489 /* bcm_ecn_map_mode_t_init not dispatchable */ 7490 7491 int 7492 bcm_loop_ecn_map_set( 7493 int unit, 7494 uint32 options, 7495 int ecn_map_id, 7496 bcm_ecn_map_t * ecn_map) 7497 { 7498 return bcm_ecn_map_set( 7499 BCM_CONTROL(unit)->unit, 7500 options, 7501 ecn_map_id, 7502 ecn_map); 7503 } 7504 7505 /* bcm_ecn_map_t_init not dispatchable */ 7506 7507 int 7508 bcm_loop_ecn_port_map_get( 7509 int unit, 7510 bcm_gport_t port, 7511 bcm_ecn_port_map_t * ecn_map) 7512 { 7513 return bcm_ecn_port_map_get( 7514 BCM_CONTROL(unit)->unit, 7515 port, 7516 ecn_map); 7517 } 7518 7519 int 7520 bcm_loop_ecn_port_map_set( 7521 int unit, 7522 bcm_gport_t port, 7523 bcm_ecn_port_map_t * ecn_map) 7524 { 7525 return bcm_ecn_port_map_set( 7526 BCM_CONTROL(unit)->unit, 7527 port, 7528 ecn_map); 7529 } 7530 7531 /* bcm_ecn_port_map_t_init not dispatchable */ 7532 7533 #endif /* INCLUDE_L3 */ 7534 7535 int 7536 bcm_loop_ecn_responsive_protocol_get( 7537 int unit, 7538 uint8 ip_proto, 7539 int * responsive) 7540 { 7541 return bcm_ecn_responsive_protocol_get( 7542 BCM_CONTROL(unit)->unit, 7543 ip_proto, 7544 responsive); 7545 } 7546 7547 int 7548 bcm_loop_ecn_responsive_protocol_set( 7549 int unit, 7550 uint8 ip_proto, 7551 int responsive) 7552 { 7553 return bcm_ecn_responsive_protocol_set( 7554 BCM_CONTROL(unit)->unit, 7555 ip_proto, 7556 responsive); 7557 } 7558 7559 int 7560 bcm_loop_ecn_traffic_action_config_get( 7561 int unit, 7562 bcm_ecn_traffic_action_config_t * ecn_config) 7563 { 7564 return bcm_ecn_traffic_action_config_get( 7565 BCM_CONTROL(unit)->unit, 7566 ecn_config); 7567 } 7568 7569 int 7570 bcm_loop_ecn_traffic_action_config_set( 7571 int unit, 7572 bcm_ecn_traffic_action_config_t * ecn_config) 7573 { 7574 return bcm_ecn_traffic_action_config_set( 7575 BCM_CONTROL(unit)->unit, 7576 ecn_config); 7577 } 7578 7579 /* bcm_ecn_traffic_action_config_t_init not dispatchable */ 7580 7581 int 7582 bcm_loop_ecn_traffic_map_get( 7583 int unit, 7584 bcm_ecn_traffic_map_info_t * map) 7585 { 7586 return bcm_ecn_traffic_map_get( 7587 BCM_CONTROL(unit)->unit, 7588 map); 7589 } 7590 7591 /* bcm_ecn_traffic_map_info_t_init not dispatchable */ 7592 7593 int 7594 bcm_loop_ecn_traffic_map_set( 7595 int unit, 7596 bcm_ecn_traffic_map_info_t * map) 7597 { 7598 return bcm_ecn_traffic_map_set( 7599 BCM_CONTROL(unit)->unit, 7600 map); 7601 } 7602 7603 #ifdef INCLUDE_PTP 7604 7605 int 7606 bcm_loop_esmc_QL_SSM_map( 7607 int unit, 7608 bcm_esmc_network_option_t opt, 7609 bcm_esmc_quality_level_t ql, 7610 uint8 * ssm_code) 7611 { 7612 return bcm_esmc_QL_SSM_map( 7613 BCM_CONTROL(unit)->unit, 7614 opt, 7615 ql, 7616 ssm_code); 7617 } 7618 7619 int 7620 bcm_loop_esmc_SSM_QL_map( 7621 int unit, 7622 bcm_esmc_network_option_t opt, 7623 uint8 ssm_code, 7624 bcm_esmc_quality_level_t * ql) 7625 { 7626 return bcm_esmc_SSM_QL_map( 7627 BCM_CONTROL(unit)->unit, 7628 opt, 7629 ssm_code, 7630 ql); 7631 } 7632 7633 int 7634 bcm_loop_esmc_g781_option_get( 7635 int unit, 7636 int stack_id, 7637 bcm_esmc_network_option_t * g781_option) 7638 { 7639 return bcm_esmc_g781_option_get( 7640 BCM_CONTROL(unit)->unit, 7641 stack_id, 7642 g781_option); 7643 } 7644 7645 int 7646 bcm_loop_esmc_g781_option_set( 7647 int unit, 7648 int stack_id, 7649 bcm_esmc_network_option_t g781_option) 7650 { 7651 return bcm_esmc_g781_option_set( 7652 BCM_CONTROL(unit)->unit, 7653 stack_id, 7654 g781_option); 7655 } 7656 7657 int 7658 bcm_loop_esmc_rx_callback_register( 7659 int unit, 7660 int stack_id, 7661 bcm_esmc_rx_cb rx_cb) 7662 { 7663 return bcm_esmc_rx_callback_register( 7664 BCM_CONTROL(unit)->unit, 7665 stack_id, 7666 rx_cb); 7667 } 7668 7669 int 7670 bcm_loop_esmc_rx_callback_unregister( 7671 int unit, 7672 int stack_id) 7673 { 7674 return bcm_esmc_rx_callback_unregister( 7675 BCM_CONTROL(unit)->unit, 7676 stack_id); 7677 } 7678 7679 int 7680 bcm_loop_esmc_tunnel_get( 7681 int unit, 7682 int stack_id, 7683 int * enable) 7684 { 7685 return bcm_esmc_tunnel_get( 7686 BCM_CONTROL(unit)->unit, 7687 stack_id, 7688 enable); 7689 } 7690 7691 int 7692 bcm_loop_esmc_tunnel_set( 7693 int unit, 7694 int stack_id, 7695 int enable) 7696 { 7697 return bcm_esmc_tunnel_set( 7698 BCM_CONTROL(unit)->unit, 7699 stack_id, 7700 enable); 7701 } 7702 7703 int 7704 bcm_loop_esmc_tx( 7705 int unit, 7706 int stack_id, 7707 bcm_pbmp_t pbmp, 7708 bcm_esmc_pdu_data_t * esmc_pdu_data) 7709 { 7710 return bcm_esmc_tx( 7711 BCM_CONTROL(unit)->unit, 7712 stack_id, 7713 pbmp, 7714 esmc_pdu_data); 7715 } 7716 7717 #endif /* INCLUDE_PTP */ 7718 #ifdef INCLUDE_L3 7719 7720 int 7721 bcm_loop_extender_cleanup( 7722 int unit) 7723 { 7724 return bcm_extender_cleanup( 7725 BCM_CONTROL(unit)->unit); 7726 } 7727 7728 int 7729 bcm_loop_extender_egress_add( 7730 int unit, 7731 bcm_gport_t extender_port, 7732 bcm_extender_egress_t * extender_egress) 7733 { 7734 return bcm_extender_egress_add( 7735 BCM_CONTROL(unit)->unit, 7736 extender_port, 7737 extender_egress); 7738 } 7739 7740 int 7741 bcm_loop_extender_egress_delete( 7742 int unit, 7743 bcm_gport_t extender_port, 7744 bcm_extender_egress_t * extender_egress) 7745 { 7746 return bcm_extender_egress_delete( 7747 BCM_CONTROL(unit)->unit, 7748 extender_port, 7749 extender_egress); 7750 } 7751 7752 int 7753 bcm_loop_extender_egress_delete_all( 7754 int unit, 7755 bcm_gport_t extender_port) 7756 { 7757 return bcm_extender_egress_delete_all( 7758 BCM_CONTROL(unit)->unit, 7759 extender_port); 7760 } 7761 7762 int 7763 bcm_loop_extender_egress_get( 7764 int unit, 7765 bcm_gport_t extender_port, 7766 bcm_extender_egress_t * extender_egress) 7767 { 7768 return bcm_extender_egress_get( 7769 BCM_CONTROL(unit)->unit, 7770 extender_port, 7771 extender_egress); 7772 } 7773 7774 int 7775 bcm_loop_extender_egress_get_all( 7776 int unit, 7777 bcm_gport_t extender_port, 7778 int array_size, 7779 bcm_extender_egress_t * extender_egress_array, 7780 int * count) 7781 { 7782 return bcm_extender_egress_get_all( 7783 BCM_CONTROL(unit)->unit, 7784 extender_port, 7785 array_size, 7786 extender_egress_array, 7787 count); 7788 } 7789 7790 int 7791 bcm_loop_extender_egress_set( 7792 int unit, 7793 bcm_gport_t extender_port, 7794 int array_size, 7795 bcm_extender_egress_t * extender_egress_array) 7796 { 7797 return bcm_extender_egress_set( 7798 BCM_CONTROL(unit)->unit, 7799 extender_port, 7800 array_size, 7801 extender_egress_array); 7802 } 7803 7804 /* bcm_extender_egress_t_init not dispatchable */ 7805 7806 int 7807 bcm_loop_extender_encap_create( 7808 int unit, 7809 bcm_extender_encap_t * extender_encap) 7810 { 7811 return bcm_extender_encap_create( 7812 BCM_CONTROL(unit)->unit, 7813 extender_encap); 7814 } 7815 7816 int 7817 bcm_loop_extender_encap_destroy( 7818 int unit, 7819 bcm_gport_t * extender_encap_id) 7820 { 7821 return bcm_extender_encap_destroy( 7822 BCM_CONTROL(unit)->unit, 7823 extender_encap_id); 7824 } 7825 7826 int 7827 bcm_loop_extender_encap_destroy_all( 7828 int unit) 7829 { 7830 return bcm_extender_encap_destroy_all( 7831 BCM_CONTROL(unit)->unit); 7832 } 7833 7834 int 7835 bcm_loop_extender_encap_get( 7836 int unit, 7837 bcm_extender_encap_t * extender_encap) 7838 { 7839 return bcm_extender_encap_get( 7840 BCM_CONTROL(unit)->unit, 7841 extender_encap); 7842 } 7843 7844 /* bcm_extender_encap_t_init not dispatchable */ 7845 7846 int 7847 bcm_loop_extender_encap_traverse( 7848 int unit, 7849 bcm_extender_encap_traverse_cb cb, 7850 void * user_data) 7851 { 7852 return bcm_extender_encap_traverse( 7853 BCM_CONTROL(unit)->unit, 7854 cb, 7855 user_data); 7856 } 7857 7858 int 7859 bcm_loop_extender_forward_add( 7860 int unit, 7861 bcm_extender_forward_t * extender_forward_entry) 7862 { 7863 return bcm_extender_forward_add( 7864 BCM_CONTROL(unit)->unit, 7865 extender_forward_entry); 7866 } 7867 7868 int 7869 bcm_loop_extender_forward_delete( 7870 int unit, 7871 bcm_extender_forward_t * extender_forward_entry) 7872 { 7873 return bcm_extender_forward_delete( 7874 BCM_CONTROL(unit)->unit, 7875 extender_forward_entry); 7876 } 7877 7878 int 7879 bcm_loop_extender_forward_delete_all( 7880 int unit) 7881 { 7882 return bcm_extender_forward_delete_all( 7883 BCM_CONTROL(unit)->unit); 7884 } 7885 7886 int 7887 bcm_loop_extender_forward_get( 7888 int unit, 7889 bcm_extender_forward_t * extender_forward_entry) 7890 { 7891 return bcm_extender_forward_get( 7892 BCM_CONTROL(unit)->unit, 7893 extender_forward_entry); 7894 } 7895 7896 /* bcm_extender_forward_t_init not dispatchable */ 7897 7898 int 7899 bcm_loop_extender_forward_traverse( 7900 int unit, 7901 bcm_extender_forward_traverse_cb cb, 7902 void * user_data) 7903 { 7904 return bcm_extender_forward_traverse( 7905 BCM_CONTROL(unit)->unit, 7906 cb, 7907 user_data); 7908 } 7909 7910 int 7911 bcm_loop_extender_init( 7912 int unit) 7913 { 7914 return bcm_extender_init( 7915 BCM_CONTROL(unit)->unit); 7916 } 7917 7918 int 7919 bcm_loop_extender_port_add( 7920 int unit, 7921 bcm_extender_port_t * extender_port) 7922 { 7923 return bcm_extender_port_add( 7924 BCM_CONTROL(unit)->unit, 7925 extender_port); 7926 } 7927 7928 int 7929 bcm_loop_extender_port_delete( 7930 int unit, 7931 bcm_gport_t extender_port_id) 7932 { 7933 return bcm_extender_port_delete( 7934 BCM_CONTROL(unit)->unit, 7935 extender_port_id); 7936 } 7937 7938 int 7939 bcm_loop_extender_port_delete_all( 7940 int unit) 7941 { 7942 return bcm_extender_port_delete_all( 7943 BCM_CONTROL(unit)->unit); 7944 } 7945 7946 int 7947 bcm_loop_extender_port_get( 7948 int unit, 7949 bcm_extender_port_t * extender_port) 7950 { 7951 return bcm_extender_port_get( 7952 BCM_CONTROL(unit)->unit, 7953 extender_port); 7954 } 7955 7956 /* bcm_extender_port_t_init not dispatchable */ 7957 7958 int 7959 bcm_loop_extender_port_traverse( 7960 int unit, 7961 bcm_extender_port_traverse_cb cb, 7962 void * user_data) 7963 { 7964 return bcm_extender_port_traverse( 7965 BCM_CONTROL(unit)->unit, 7966 cb, 7967 user_data); 7968 } 7969 7970 #endif /* INCLUDE_L3 */ 7971 7972 int 7973 bcm_loop_fabric_action_create( 7974 int unit, 7975 bcm_fabric_action_info_t * action_info, 7976 bcm_fabric_action_t * action_id) 7977 { 7978 return bcm_fabric_action_create( 7979 BCM_CONTROL(unit)->unit, 7980 action_info, 7981 action_id); 7982 } 7983 7984 int 7985 bcm_loop_fabric_action_destroy( 7986 int unit, 7987 bcm_fabric_action_t action_id) 7988 { 7989 return bcm_fabric_action_destroy( 7990 BCM_CONTROL(unit)->unit, 7991 action_id); 7992 } 7993 7994 int 7995 bcm_loop_fabric_action_destroy_all( 7996 int unit) 7997 { 7998 return bcm_fabric_action_destroy_all( 7999 BCM_CONTROL(unit)->unit); 8000 } 8001 8002 int 8003 bcm_loop_fabric_action_get( 8004 int unit, 8005 bcm_fabric_action_t action_id, 8006 bcm_fabric_action_info_t * action_info) 8007 { 8008 return bcm_fabric_action_get( 8009 BCM_CONTROL(unit)->unit, 8010 action_id, 8011 action_info); 8012 } 8013 8014 /* bcm_fabric_action_info_t_init not dispatchable */ 8015 8016 int 8017 bcm_loop_fabric_action_traverse( 8018 int unit, 8019 bcm_fabric_action_traverse_cb cb, 8020 void * user_data) 8021 { 8022 return bcm_fabric_action_traverse( 8023 BCM_CONTROL(unit)->unit, 8024 cb, 8025 user_data); 8026 } 8027 8028 int 8029 bcm_loop_fabric_bandwidth_core_profile_get( 8030 int unit, 8031 int core, 8032 uint32 flags, 8033 int profile_count, 8034 bcm_fabric_bandwidth_profile_t * profile_array) 8035 { 8036 return bcm_fabric_bandwidth_core_profile_get( 8037 BCM_CONTROL(unit)->unit, 8038 core, 8039 flags, 8040 profile_count, 8041 profile_array); 8042 } 8043 8044 int 8045 bcm_loop_fabric_bandwidth_core_profile_set( 8046 int unit, 8047 int core, 8048 uint32 flags, 8049 int profile_count, 8050 bcm_fabric_bandwidth_profile_t * profile_array) 8051 { 8052 return bcm_fabric_bandwidth_core_profile_set( 8053 BCM_CONTROL(unit)->unit, 8054 core, 8055 flags, 8056 profile_count, 8057 profile_array); 8058 } 8059 8060 int 8061 bcm_loop_fabric_bandwidth_profile_get( 8062 int unit, 8063 int profile_count, 8064 bcm_fabric_bandwidth_profile_t * profile_array) 8065 { 8066 return bcm_fabric_bandwidth_profile_get( 8067 BCM_CONTROL(unit)->unit, 8068 profile_count, 8069 profile_array); 8070 } 8071 8072 int 8073 bcm_loop_fabric_bandwidth_profile_set( 8074 int unit, 8075 int profile_count, 8076 bcm_fabric_bandwidth_profile_t * profile_array) 8077 { 8078 return bcm_fabric_bandwidth_profile_set( 8079 BCM_CONTROL(unit)->unit, 8080 profile_count, 8081 profile_array); 8082 } 8083 8084 int 8085 bcm_loop_fabric_cgm_control_get( 8086 int unit, 8087 uint32 flags, 8088 bcm_fabric_cgm_control_type_t control_type, 8089 bcm_fabric_cgm_control_id_t control_id, 8090 int * value) 8091 { 8092 return bcm_fabric_cgm_control_get( 8093 BCM_CONTROL(unit)->unit, 8094 flags, 8095 control_type, 8096 control_id, 8097 value); 8098 } 8099 8100 int 8101 bcm_loop_fabric_cgm_control_set( 8102 int unit, 8103 uint32 flags, 8104 bcm_fabric_cgm_control_type_t control_type, 8105 bcm_fabric_cgm_control_id_t control_id, 8106 int value) 8107 { 8108 return bcm_fabric_cgm_control_set( 8109 BCM_CONTROL(unit)->unit, 8110 flags, 8111 control_type, 8112 control_id, 8113 value); 8114 } 8115 8116 int 8117 bcm_loop_fabric_config_discard_get( 8118 int unit, 8119 bcm_fabric_config_discard_t * discard) 8120 { 8121 return bcm_fabric_config_discard_get( 8122 BCM_CONTROL(unit)->unit, 8123 discard); 8124 } 8125 8126 int 8127 bcm_loop_fabric_config_discard_set( 8128 int unit, 8129 bcm_fabric_config_discard_t * discard) 8130 { 8131 return bcm_fabric_config_discard_set( 8132 BCM_CONTROL(unit)->unit, 8133 discard); 8134 } 8135 8136 int 8137 bcm_loop_fabric_control_get( 8138 int unit, 8139 bcm_fabric_control_t type, 8140 int * arg) 8141 { 8142 return bcm_fabric_control_get( 8143 BCM_CONTROL(unit)->unit, 8144 type, 8145 arg); 8146 } 8147 8148 int 8149 bcm_loop_fabric_control_set( 8150 int unit, 8151 bcm_fabric_control_t type, 8152 int arg) 8153 { 8154 return bcm_fabric_control_set( 8155 BCM_CONTROL(unit)->unit, 8156 type, 8157 arg); 8158 } 8159 8160 int 8161 bcm_loop_fabric_destination_link_min_get( 8162 int unit, 8163 uint32 flags, 8164 bcm_module_t module_id, 8165 int * num_of_links) 8166 { 8167 return bcm_fabric_destination_link_min_get( 8168 BCM_CONTROL(unit)->unit, 8169 flags, 8170 module_id, 8171 num_of_links); 8172 } 8173 8174 int 8175 bcm_loop_fabric_destination_link_min_set( 8176 int unit, 8177 uint32 flags, 8178 bcm_module_t module_id, 8179 int num_of_links) 8180 { 8181 return bcm_fabric_destination_link_min_set( 8182 BCM_CONTROL(unit)->unit, 8183 flags, 8184 module_id, 8185 num_of_links); 8186 } 8187 8188 int 8189 bcm_loop_fabric_init( 8190 int unit) 8191 { 8192 return bcm_fabric_init( 8193 BCM_CONTROL(unit)->unit); 8194 } 8195 8196 int 8197 bcm_loop_fabric_link_connectivity_status_get( 8198 int unit, 8199 int link_partner_max, 8200 bcm_fabric_link_connectivity_t * link_partner_array, 8201 int * link_partner_count) 8202 { 8203 return bcm_fabric_link_connectivity_status_get( 8204 BCM_CONTROL(unit)->unit, 8205 link_partner_max, 8206 link_partner_array, 8207 link_partner_count); 8208 } 8209 8210 int 8211 bcm_loop_fabric_link_connectivity_status_single_get( 8212 int unit, 8213 bcm_port_t link_id, 8214 bcm_fabric_link_connectivity_t * link_partner_info) 8215 { 8216 return bcm_fabric_link_connectivity_status_single_get( 8217 BCM_CONTROL(unit)->unit, 8218 link_id, 8219 link_partner_info); 8220 } 8221 8222 int 8223 bcm_loop_fabric_link_control_get( 8224 int unit, 8225 bcm_port_t link, 8226 bcm_fabric_link_control_t type, 8227 int * arg) 8228 { 8229 return bcm_fabric_link_control_get( 8230 BCM_CONTROL(unit)->unit, 8231 link, 8232 type, 8233 arg); 8234 } 8235 8236 int 8237 bcm_loop_fabric_link_control_set( 8238 int unit, 8239 bcm_port_t link, 8240 bcm_fabric_link_control_t type, 8241 int arg) 8242 { 8243 return bcm_fabric_link_control_set( 8244 BCM_CONTROL(unit)->unit, 8245 link, 8246 type, 8247 arg); 8248 } 8249 8250 int 8251 bcm_loop_fabric_link_profile_get( 8252 int unit, 8253 int profile_id, 8254 uint32 flags, 8255 uint32 links_count_max, 8256 uint32 * links_count, 8257 bcm_port_t * links) 8258 { 8259 return bcm_fabric_link_profile_get( 8260 BCM_CONTROL(unit)->unit, 8261 profile_id, 8262 flags, 8263 links_count_max, 8264 links_count, 8265 links); 8266 } 8267 8268 int 8269 bcm_loop_fabric_link_profile_set( 8270 int unit, 8271 int profile_id, 8272 uint32 flags, 8273 uint32 links_count, 8274 bcm_port_t * links) 8275 { 8276 return bcm_fabric_link_profile_set( 8277 BCM_CONTROL(unit)->unit, 8278 profile_id, 8279 flags, 8280 links_count, 8281 links); 8282 } 8283 8284 int 8285 bcm_loop_fabric_link_remote_pipe_mapping_get( 8286 int unit, 8287 bcm_port_t port, 8288 bcm_fabric_link_remote_pipe_mapping_t * mapping_config) 8289 { 8290 return bcm_fabric_link_remote_pipe_mapping_get( 8291 BCM_CONTROL(unit)->unit, 8292 port, 8293 mapping_config); 8294 } 8295 8296 int 8297 bcm_loop_fabric_link_remote_pipe_mapping_set( 8298 int unit, 8299 bcm_port_t port, 8300 bcm_fabric_link_remote_pipe_mapping_t * mapping_config) 8301 { 8302 return bcm_fabric_link_remote_pipe_mapping_set( 8303 BCM_CONTROL(unit)->unit, 8304 port, 8305 mapping_config); 8306 } 8307 8308 /* bcm_fabric_link_remote_pipe_mapping_t_init not dispatchable */ 8309 8310 int 8311 bcm_loop_fabric_link_status_get( 8312 int unit, 8313 bcm_port_t link_id, 8314 uint32 * link_status, 8315 uint32 * errored_token_count) 8316 { 8317 return bcm_fabric_link_status_get( 8318 BCM_CONTROL(unit)->unit, 8319 link_id, 8320 link_status, 8321 errored_token_count); 8322 } 8323 8324 int 8325 bcm_loop_fabric_link_threshold_add( 8326 int unit, 8327 uint32 flags, 8328 int * fifo_type) 8329 { 8330 return bcm_fabric_link_threshold_add( 8331 BCM_CONTROL(unit)->unit, 8332 flags, 8333 fifo_type); 8334 } 8335 8336 int 8337 bcm_loop_fabric_link_threshold_delete( 8338 int unit, 8339 int fifo_type) 8340 { 8341 return bcm_fabric_link_threshold_delete( 8342 BCM_CONTROL(unit)->unit, 8343 fifo_type); 8344 } 8345 8346 int 8347 bcm_loop_fabric_link_thresholds_attach( 8348 int unit, 8349 int fifo_type, 8350 uint32 links_count, 8351 bcm_port_t * links) 8352 { 8353 return bcm_fabric_link_thresholds_attach( 8354 BCM_CONTROL(unit)->unit, 8355 fifo_type, 8356 links_count, 8357 links); 8358 } 8359 8360 int 8361 bcm_loop_fabric_link_thresholds_get( 8362 int unit, 8363 int fifo_type, 8364 uint32 count, 8365 bcm_fabric_link_threshold_type_t * type, 8366 int * value) 8367 { 8368 return bcm_fabric_link_thresholds_get( 8369 BCM_CONTROL(unit)->unit, 8370 fifo_type, 8371 count, 8372 type, 8373 value); 8374 } 8375 8376 int 8377 bcm_loop_fabric_link_thresholds_pipe_get( 8378 int unit, 8379 int fifo_type, 8380 bcm_fabric_pipe_t pipe, 8381 uint32 flags, 8382 uint32 count, 8383 bcm_fabric_link_threshold_type_t * type, 8384 int * value) 8385 { 8386 return bcm_fabric_link_thresholds_pipe_get( 8387 BCM_CONTROL(unit)->unit, 8388 fifo_type, 8389 pipe, 8390 flags, 8391 count, 8392 type, 8393 value); 8394 } 8395 8396 int 8397 bcm_loop_fabric_link_thresholds_pipe_set( 8398 int unit, 8399 int fifo_type, 8400 bcm_fabric_pipe_t pipe, 8401 uint32 flags, 8402 uint32 count, 8403 bcm_fabric_link_threshold_type_t * type, 8404 int * value) 8405 { 8406 return bcm_fabric_link_thresholds_pipe_set( 8407 BCM_CONTROL(unit)->unit, 8408 fifo_type, 8409 pipe, 8410 flags, 8411 count, 8412 type, 8413 value); 8414 } 8415 8416 int 8417 bcm_loop_fabric_link_thresholds_retrieve( 8418 int unit, 8419 int fifo_type, 8420 uint32 links_count_max, 8421 bcm_port_t * links, 8422 uint32 * links_count) 8423 { 8424 return bcm_fabric_link_thresholds_retrieve( 8425 BCM_CONTROL(unit)->unit, 8426 fifo_type, 8427 links_count_max, 8428 links, 8429 links_count); 8430 } 8431 8432 int 8433 bcm_loop_fabric_link_thresholds_set( 8434 int unit, 8435 int fifo_type, 8436 uint32 count, 8437 bcm_fabric_link_threshold_type_t * type, 8438 int * value) 8439 { 8440 return bcm_fabric_link_thresholds_set( 8441 BCM_CONTROL(unit)->unit, 8442 fifo_type, 8443 count, 8444 type, 8445 value); 8446 } 8447 8448 int 8449 bcm_loop_fabric_link_topology_config_get( 8450 int unit, 8451 uint32 flags, 8452 bcm_module_t destination, 8453 bcm_fabric_topology_type_t type, 8454 int links_count_max, 8455 int * links_count, 8456 bcm_port_t * links_array) 8457 { 8458 return bcm_fabric_link_topology_config_get( 8459 BCM_CONTROL(unit)->unit, 8460 flags, 8461 destination, 8462 type, 8463 links_count_max, 8464 links_count, 8465 links_array); 8466 } 8467 8468 int 8469 bcm_loop_fabric_link_topology_config_set( 8470 int unit, 8471 uint32 flags, 8472 bcm_module_t destination, 8473 bcm_fabric_topology_type_t type, 8474 int links_count, 8475 bcm_port_t * links_array) 8476 { 8477 return bcm_fabric_link_topology_config_set( 8478 BCM_CONTROL(unit)->unit, 8479 flags, 8480 destination, 8481 type, 8482 links_count, 8483 links_array); 8484 } 8485 8486 int 8487 bcm_loop_fabric_link_topology_get( 8488 int unit, 8489 bcm_module_t destination, 8490 int max_links_count, 8491 int * links_count, 8492 bcm_port_t * links_array) 8493 { 8494 return bcm_fabric_link_topology_get( 8495 BCM_CONTROL(unit)->unit, 8496 destination, 8497 max_links_count, 8498 links_count, 8499 links_array); 8500 } 8501 8502 int 8503 bcm_loop_fabric_link_topology_set( 8504 int unit, 8505 bcm_module_t destination, 8506 int links_count, 8507 bcm_port_t * links_array) 8508 { 8509 return bcm_fabric_link_topology_set( 8510 BCM_CONTROL(unit)->unit, 8511 destination, 8512 links_count, 8513 links_array); 8514 } 8515 8516 int 8517 bcm_loop_fabric_modid_group_find( 8518 int unit, 8519 bcm_module_t modid, 8520 bcm_module_t * group) 8521 { 8522 return bcm_fabric_modid_group_find( 8523 BCM_CONTROL(unit)->unit, 8524 modid, 8525 group); 8526 } 8527 8528 int 8529 bcm_loop_fabric_modid_group_get( 8530 int unit, 8531 bcm_module_t group, 8532 int modid_max_count, 8533 bcm_module_t * modid_array, 8534 int * modid_count) 8535 { 8536 return bcm_fabric_modid_group_get( 8537 BCM_CONTROL(unit)->unit, 8538 group, 8539 modid_max_count, 8540 modid_array, 8541 modid_count); 8542 } 8543 8544 int 8545 bcm_loop_fabric_modid_group_set( 8546 int unit, 8547 bcm_module_t group, 8548 int modid_count, 8549 bcm_module_t * modid_array) 8550 { 8551 return bcm_fabric_modid_group_set( 8552 BCM_CONTROL(unit)->unit, 8553 group, 8554 modid_count, 8555 modid_array); 8556 } 8557 8558 int 8559 bcm_loop_fabric_modid_local_mapping_get( 8560 int unit, 8561 bcm_module_t local_modid, 8562 bcm_module_t * modid) 8563 { 8564 return bcm_fabric_modid_local_mapping_get( 8565 BCM_CONTROL(unit)->unit, 8566 local_modid, 8567 modid); 8568 } 8569 8570 int 8571 bcm_loop_fabric_modid_local_mapping_set( 8572 int unit, 8573 bcm_module_t local_modid, 8574 bcm_module_t modid) 8575 { 8576 return bcm_fabric_modid_local_mapping_set( 8577 BCM_CONTROL(unit)->unit, 8578 local_modid, 8579 modid); 8580 } 8581 8582 int 8583 bcm_loop_fabric_module_control_get( 8584 int unit, 8585 uint32 flags, 8586 bcm_module_t modid, 8587 bcm_fabric_module_control_t control, 8588 int * value) 8589 { 8590 return bcm_fabric_module_control_get( 8591 BCM_CONTROL(unit)->unit, 8592 flags, 8593 modid, 8594 control, 8595 value); 8596 } 8597 8598 int 8599 bcm_loop_fabric_module_control_set( 8600 int unit, 8601 uint32 flags, 8602 bcm_module_t modid, 8603 bcm_fabric_module_control_t control, 8604 int value) 8605 { 8606 return bcm_fabric_module_control_set( 8607 BCM_CONTROL(unit)->unit, 8608 flags, 8609 modid, 8610 control, 8611 value); 8612 } 8613 8614 int 8615 bcm_loop_fabric_multicast_get( 8616 int unit, 8617 bcm_multicast_t group, 8618 uint32 flags, 8619 int destid_count_max, 8620 int * destid_count, 8621 bcm_module_t * destid_array) 8622 { 8623 return bcm_fabric_multicast_get( 8624 BCM_CONTROL(unit)->unit, 8625 group, 8626 flags, 8627 destid_count_max, 8628 destid_count, 8629 destid_array); 8630 } 8631 8632 int 8633 bcm_loop_fabric_multicast_local_route_get( 8634 int unit, 8635 uint32 flags, 8636 uint32 nof_groups, 8637 bcm_multicast_t * groups, 8638 int * enable) 8639 { 8640 return bcm_fabric_multicast_local_route_get( 8641 BCM_CONTROL(unit)->unit, 8642 flags, 8643 nof_groups, 8644 groups, 8645 enable); 8646 } 8647 8648 int 8649 bcm_loop_fabric_multicast_local_route_set( 8650 int unit, 8651 uint32 flags, 8652 uint32 nof_groups, 8653 bcm_multicast_t * groups, 8654 int * enable) 8655 { 8656 return bcm_fabric_multicast_local_route_set( 8657 BCM_CONTROL(unit)->unit, 8658 flags, 8659 nof_groups, 8660 groups, 8661 enable); 8662 } 8663 8664 int 8665 bcm_loop_fabric_multicast_multi_get( 8666 int unit, 8667 uint32 flags, 8668 uint32 ngroups, 8669 bcm_multicast_t * groups, 8670 bcm_fabric_module_vector_t * dest_array) 8671 { 8672 return bcm_fabric_multicast_multi_get( 8673 BCM_CONTROL(unit)->unit, 8674 flags, 8675 ngroups, 8676 groups, 8677 dest_array); 8678 } 8679 8680 int 8681 bcm_loop_fabric_multicast_multi_set( 8682 int unit, 8683 uint32 flags, 8684 uint32 ngroups, 8685 bcm_multicast_t * groups, 8686 bcm_fabric_module_vector_t * dest_array) 8687 { 8688 return bcm_fabric_multicast_multi_set( 8689 BCM_CONTROL(unit)->unit, 8690 flags, 8691 ngroups, 8692 groups, 8693 dest_array); 8694 } 8695 8696 int 8697 bcm_loop_fabric_multicast_set( 8698 int unit, 8699 bcm_multicast_t group, 8700 uint32 flags, 8701 uint32 destid_count, 8702 bcm_module_t * destid_array) 8703 { 8704 return bcm_fabric_multicast_set( 8705 BCM_CONTROL(unit)->unit, 8706 group, 8707 flags, 8708 destid_count, 8709 destid_array); 8710 } 8711 8712 int 8713 bcm_loop_fabric_pcp_dest_mode_config_get( 8714 int unit, 8715 uint32 flags, 8716 bcm_module_t modid, 8717 bcm_fabric_pcp_mode_config_t * pcp_config) 8718 { 8719 return bcm_fabric_pcp_dest_mode_config_get( 8720 BCM_CONTROL(unit)->unit, 8721 flags, 8722 modid, 8723 pcp_config); 8724 } 8725 8726 int 8727 bcm_loop_fabric_pcp_dest_mode_config_set( 8728 int unit, 8729 uint32 flags, 8730 bcm_module_t modid, 8731 bcm_fabric_pcp_mode_config_t * pcp_config) 8732 { 8733 return bcm_fabric_pcp_dest_mode_config_set( 8734 BCM_CONTROL(unit)->unit, 8735 flags, 8736 modid, 8737 pcp_config); 8738 } 8739 8740 int 8741 bcm_loop_fabric_port_create( 8742 int unit, 8743 bcm_gport_t parent_port, 8744 int offset, 8745 uint32 flags, 8746 bcm_gport_t * port) 8747 { 8748 return bcm_fabric_port_create( 8749 BCM_CONTROL(unit)->unit, 8750 parent_port, 8751 offset, 8752 flags, 8753 port); 8754 } 8755 8756 int 8757 bcm_loop_fabric_port_destroy( 8758 int unit, 8759 bcm_gport_t parent_port) 8760 { 8761 return bcm_fabric_port_destroy( 8762 BCM_CONTROL(unit)->unit, 8763 parent_port); 8764 } 8765 8766 int 8767 bcm_loop_fabric_port_get( 8768 int unit, 8769 bcm_gport_t child_port, 8770 uint32 flags, 8771 bcm_gport_t * parent_port) 8772 { 8773 return bcm_fabric_port_get( 8774 BCM_CONTROL(unit)->unit, 8775 child_port, 8776 flags, 8777 parent_port); 8778 } 8779 8780 int 8781 bcm_loop_fabric_predicate_action_create( 8782 int unit, 8783 bcm_fabric_predicate_action_info_t * predicate_action, 8784 bcm_fabric_predicate_action_t * predicate_action_id) 8785 { 8786 return bcm_fabric_predicate_action_create( 8787 BCM_CONTROL(unit)->unit, 8788 predicate_action, 8789 predicate_action_id); 8790 } 8791 8792 int 8793 bcm_loop_fabric_predicate_action_destroy( 8794 int unit, 8795 bcm_fabric_predicate_action_t predicate_action_id) 8796 { 8797 return bcm_fabric_predicate_action_destroy( 8798 BCM_CONTROL(unit)->unit, 8799 predicate_action_id); 8800 } 8801 8802 int 8803 bcm_loop_fabric_predicate_action_destroy_all( 8804 int unit) 8805 { 8806 return bcm_fabric_predicate_action_destroy_all( 8807 BCM_CONTROL(unit)->unit); 8808 } 8809 8810 int 8811 bcm_loop_fabric_predicate_action_get( 8812 int unit, 8813 bcm_fabric_predicate_action_t predicate_action_id, 8814 bcm_fabric_predicate_action_info_t * predicate_action_info) 8815 { 8816 return bcm_fabric_predicate_action_get( 8817 BCM_CONTROL(unit)->unit, 8818 predicate_action_id, 8819 predicate_action_info); 8820 } 8821 8822 /* bcm_fabric_predicate_action_info_t_init not dispatchable */ 8823 8824 int 8825 bcm_loop_fabric_predicate_action_traverse( 8826 int unit, 8827 bcm_fabric_predicate_action_traverse_cb cb, 8828 void * user_data) 8829 { 8830 return bcm_fabric_predicate_action_traverse( 8831 BCM_CONTROL(unit)->unit, 8832 cb, 8833 user_data); 8834 } 8835 8836 int 8837 bcm_loop_fabric_predicate_create( 8838 int unit, 8839 bcm_fabric_predicate_info_t * pred_info, 8840 bcm_fabric_predicate_t * pred_id) 8841 { 8842 return bcm_fabric_predicate_create( 8843 BCM_CONTROL(unit)->unit, 8844 pred_info, 8845 pred_id); 8846 } 8847 8848 int 8849 bcm_loop_fabric_predicate_destroy( 8850 int unit, 8851 bcm_fabric_predicate_t pred_id) 8852 { 8853 return bcm_fabric_predicate_destroy( 8854 BCM_CONTROL(unit)->unit, 8855 pred_id); 8856 } 8857 8858 int 8859 bcm_loop_fabric_predicate_destroy_all( 8860 int unit) 8861 { 8862 return bcm_fabric_predicate_destroy_all( 8863 BCM_CONTROL(unit)->unit); 8864 } 8865 8866 int 8867 bcm_loop_fabric_predicate_get( 8868 int unit, 8869 bcm_fabric_predicate_t pred_id, 8870 bcm_fabric_predicate_info_t * pred_info) 8871 { 8872 return bcm_fabric_predicate_get( 8873 BCM_CONTROL(unit)->unit, 8874 pred_id, 8875 pred_info); 8876 } 8877 8878 /* bcm_fabric_predicate_info_t_init not dispatchable */ 8879 8880 int 8881 bcm_loop_fabric_predicate_traverse( 8882 int unit, 8883 bcm_fabric_predicate_traverse_cb cb, 8884 void * user_data) 8885 { 8886 return bcm_fabric_predicate_traverse( 8887 BCM_CONTROL(unit)->unit, 8888 cb, 8889 user_data); 8890 } 8891 8892 int 8893 bcm_loop_fabric_priority_get( 8894 int unit, 8895 uint32 flags, 8896 bcm_cos_t ingress_pri, 8897 bcm_color_t color, 8898 int * fabric_priority) 8899 { 8900 return bcm_fabric_priority_get( 8901 BCM_CONTROL(unit)->unit, 8902 flags, 8903 ingress_pri, 8904 color, 8905 fabric_priority); 8906 } 8907 8908 int 8909 bcm_loop_fabric_priority_set( 8910 int unit, 8911 uint32 flags, 8912 bcm_cos_t ingress_pri, 8913 bcm_color_t color, 8914 int fabric_priority) 8915 { 8916 return bcm_fabric_priority_set( 8917 BCM_CONTROL(unit)->unit, 8918 flags, 8919 ingress_pri, 8920 color, 8921 fabric_priority); 8922 } 8923 8924 int 8925 bcm_loop_fabric_profile_threshold_get( 8926 int unit, 8927 int profile_id, 8928 bcm_fabric_threshold_id_t threshold_id, 8929 bcm_fabric_threshold_type_t threshold_type, 8930 uint32 flags, 8931 int * value) 8932 { 8933 return bcm_fabric_profile_threshold_get( 8934 BCM_CONTROL(unit)->unit, 8935 profile_id, 8936 threshold_id, 8937 threshold_type, 8938 flags, 8939 value); 8940 } 8941 8942 int 8943 bcm_loop_fabric_profile_threshold_set( 8944 int unit, 8945 int profile_id, 8946 bcm_fabric_threshold_id_t threshold_id, 8947 bcm_fabric_threshold_type_t threshold_type, 8948 uint32 flags, 8949 int value) 8950 { 8951 return bcm_fabric_profile_threshold_set( 8952 BCM_CONTROL(unit)->unit, 8953 profile_id, 8954 threshold_id, 8955 threshold_type, 8956 flags, 8957 value); 8958 } 8959 8960 int 8961 bcm_loop_fabric_qsel_create( 8962 int unit, 8963 uint32 flags, 8964 int base, 8965 int count, 8966 bcm_fabric_qsel_t * qsel_id) 8967 { 8968 return bcm_fabric_qsel_create( 8969 BCM_CONTROL(unit)->unit, 8970 flags, 8971 base, 8972 count, 8973 qsel_id); 8974 } 8975 8976 int 8977 bcm_loop_fabric_qsel_destroy( 8978 int unit, 8979 bcm_fabric_qsel_t qsel_id) 8980 { 8981 return bcm_fabric_qsel_destroy( 8982 BCM_CONTROL(unit)->unit, 8983 qsel_id); 8984 } 8985 8986 int 8987 bcm_loop_fabric_qsel_destroy_all( 8988 int unit) 8989 { 8990 return bcm_fabric_qsel_destroy_all( 8991 BCM_CONTROL(unit)->unit); 8992 } 8993 8994 int 8995 bcm_loop_fabric_qsel_entry_get( 8996 int unit, 8997 bcm_fabric_qsel_t qsel_id, 8998 int offset, 8999 bcm_gport_t * queue, 9000 bcm_fabric_qsel_offset_t * qsel_offset_id) 9001 { 9002 return bcm_fabric_qsel_entry_get( 9003 BCM_CONTROL(unit)->unit, 9004 qsel_id, 9005 offset, 9006 queue, 9007 qsel_offset_id); 9008 } 9009 9010 int 9011 bcm_loop_fabric_qsel_entry_multi_get( 9012 int unit, 9013 bcm_fabric_qsel_t qsel_id, 9014 int offset, 9015 int count, 9016 bcm_gport_t * queue, 9017 bcm_fabric_qsel_offset_t * qsel_offset_id) 9018 { 9019 return bcm_fabric_qsel_entry_multi_get( 9020 BCM_CONTROL(unit)->unit, 9021 qsel_id, 9022 offset, 9023 count, 9024 queue, 9025 qsel_offset_id); 9026 } 9027 9028 int 9029 bcm_loop_fabric_qsel_entry_multi_set( 9030 int unit, 9031 bcm_fabric_qsel_t qsel_id, 9032 int offset, 9033 int count, 9034 bcm_gport_t * queue, 9035 bcm_fabric_qsel_offset_t * qsel_offset_id) 9036 { 9037 return bcm_fabric_qsel_entry_multi_set( 9038 BCM_CONTROL(unit)->unit, 9039 qsel_id, 9040 offset, 9041 count, 9042 queue, 9043 qsel_offset_id); 9044 } 9045 9046 int 9047 bcm_loop_fabric_qsel_entry_set( 9048 int unit, 9049 bcm_fabric_qsel_t qsel_id, 9050 int offset, 9051 bcm_gport_t queue, 9052 bcm_fabric_qsel_offset_t qsel_offset_id) 9053 { 9054 return bcm_fabric_qsel_entry_set( 9055 BCM_CONTROL(unit)->unit, 9056 qsel_id, 9057 offset, 9058 queue, 9059 qsel_offset_id); 9060 } 9061 9062 int 9063 bcm_loop_fabric_qsel_entry_traverse( 9064 int unit, 9065 bcm_fabric_qsel_t qsel_id, 9066 bcm_fabric_qsel_entry_traverse_cb cb, 9067 void * user_data) 9068 { 9069 return bcm_fabric_qsel_entry_traverse( 9070 BCM_CONTROL(unit)->unit, 9071 qsel_id, 9072 cb, 9073 user_data); 9074 } 9075 9076 int 9077 bcm_loop_fabric_qsel_get( 9078 int unit, 9079 bcm_fabric_qsel_t qsel_id, 9080 uint32 * flags, 9081 int * base, 9082 int * count) 9083 { 9084 return bcm_fabric_qsel_get( 9085 BCM_CONTROL(unit)->unit, 9086 qsel_id, 9087 flags, 9088 base, 9089 count); 9090 } 9091 9092 int 9093 bcm_loop_fabric_qsel_offset_create( 9094 int unit, 9095 uint32 flags, 9096 bcm_fabric_qsel_offset_t * qsel_offset_id) 9097 { 9098 return bcm_fabric_qsel_offset_create( 9099 BCM_CONTROL(unit)->unit, 9100 flags, 9101 qsel_offset_id); 9102 } 9103 9104 int 9105 bcm_loop_fabric_qsel_offset_destroy( 9106 int unit, 9107 bcm_fabric_qsel_offset_t qsel_offset_id) 9108 { 9109 return bcm_fabric_qsel_offset_destroy( 9110 BCM_CONTROL(unit)->unit, 9111 qsel_offset_id); 9112 } 9113 9114 int 9115 bcm_loop_fabric_qsel_offset_destroy_all( 9116 int unit) 9117 { 9118 return bcm_fabric_qsel_offset_destroy_all( 9119 BCM_CONTROL(unit)->unit); 9120 } 9121 9122 int 9123 bcm_loop_fabric_qsel_offset_entry_get( 9124 int unit, 9125 bcm_fabric_qsel_offset_t qsel_offset_id, 9126 bcm_cos_t int_pri, 9127 int * offset) 9128 { 9129 return bcm_fabric_qsel_offset_entry_get( 9130 BCM_CONTROL(unit)->unit, 9131 qsel_offset_id, 9132 int_pri, 9133 offset); 9134 } 9135 9136 int 9137 bcm_loop_fabric_qsel_offset_entry_set( 9138 int unit, 9139 bcm_fabric_qsel_offset_t qsel_offset_id, 9140 bcm_cos_t int_pri, 9141 int offset) 9142 { 9143 return bcm_fabric_qsel_offset_entry_set( 9144 BCM_CONTROL(unit)->unit, 9145 qsel_offset_id, 9146 int_pri, 9147 offset); 9148 } 9149 9150 int 9151 bcm_loop_fabric_qsel_offset_entry_traverse( 9152 int unit, 9153 bcm_fabric_qsel_offset_t qsel_offset_id, 9154 bcm_fabric_qsel_offset_entry_traverse_cb cb, 9155 void * user_data) 9156 { 9157 return bcm_fabric_qsel_offset_entry_traverse( 9158 BCM_CONTROL(unit)->unit, 9159 qsel_offset_id, 9160 cb, 9161 user_data); 9162 } 9163 9164 int 9165 bcm_loop_fabric_qsel_offset_traverse( 9166 int unit, 9167 bcm_fabric_qsel_offset_traverse_cb cb, 9168 void * user_data) 9169 { 9170 return bcm_fabric_qsel_offset_traverse( 9171 BCM_CONTROL(unit)->unit, 9172 cb, 9173 user_data); 9174 } 9175 9176 int 9177 bcm_loop_fabric_qsel_traverse( 9178 int unit, 9179 bcm_fabric_qsel_traverse_cb cb, 9180 void * user_data) 9181 { 9182 return bcm_fabric_qsel_traverse( 9183 BCM_CONTROL(unit)->unit, 9184 cb, 9185 user_data); 9186 } 9187 9188 int 9189 bcm_loop_fabric_rci_biasing_probability_get( 9190 int unit, 9191 uint32 flags, 9192 bcm_fabric_rci_biasing_probability_info_t * probability_info, 9193 int probability[BCM_FABRIC_NUM_OF_RCI_LEVELS]) 9194 { 9195 return bcm_fabric_rci_biasing_probability_get( 9196 BCM_CONTROL(unit)->unit, 9197 flags, 9198 probability_info, 9199 probability); 9200 } 9201 9202 int 9203 bcm_loop_fabric_rci_biasing_probability_set( 9204 int unit, 9205 uint32 flags, 9206 bcm_fabric_rci_biasing_probability_info_t * probability_info, 9207 int probability[BCM_FABRIC_NUM_OF_RCI_LEVELS]) 9208 { 9209 return bcm_fabric_rci_biasing_probability_set( 9210 BCM_CONTROL(unit)->unit, 9211 flags, 9212 probability_info, 9213 probability); 9214 } 9215 9216 int 9217 bcm_loop_fabric_rci_config_get( 9218 int unit, 9219 bcm_fabric_rci_config_t * rci_config) 9220 { 9221 return bcm_fabric_rci_config_get( 9222 BCM_CONTROL(unit)->unit, 9223 rci_config); 9224 } 9225 9226 int 9227 bcm_loop_fabric_rci_config_set( 9228 int unit, 9229 bcm_fabric_rci_config_t rci_config) 9230 { 9231 return bcm_fabric_rci_config_set( 9232 BCM_CONTROL(unit)->unit, 9233 rci_config); 9234 } 9235 9236 /* bcm_fabric_rci_config_t_init not dispatchable */ 9237 9238 int 9239 bcm_loop_fabric_rci_resolution_get( 9240 int unit, 9241 uint32 flags, 9242 bcm_fabric_rci_resolution_key_t * key, 9243 bcm_fabric_rci_resolution_config_t * config) 9244 { 9245 return bcm_fabric_rci_resolution_get( 9246 BCM_CONTROL(unit)->unit, 9247 flags, 9248 key, 9249 config); 9250 } 9251 9252 int 9253 bcm_loop_fabric_rci_resolution_set( 9254 int unit, 9255 uint32 flags, 9256 bcm_fabric_rci_resolution_key_t * key, 9257 bcm_fabric_rci_resolution_config_t * config) 9258 { 9259 return bcm_fabric_rci_resolution_set( 9260 BCM_CONTROL(unit)->unit, 9261 flags, 9262 key, 9263 config); 9264 } 9265 9266 int 9267 bcm_loop_fabric_reachability_status_get( 9268 int unit, 9269 int moduleid, 9270 int links_max, 9271 uint32 * links_array, 9272 int * links_count) 9273 { 9274 return bcm_fabric_reachability_status_get( 9275 BCM_CONTROL(unit)->unit, 9276 moduleid, 9277 links_max, 9278 links_array, 9279 links_count); 9280 } 9281 9282 int 9283 bcm_loop_fabric_route_rx( 9284 int unit, 9285 uint32 flags, 9286 uint32 data_out_max_size, 9287 uint32 * data_out, 9288 uint32 * data_out_size) 9289 { 9290 return bcm_fabric_route_rx( 9291 BCM_CONTROL(unit)->unit, 9292 flags, 9293 data_out_max_size, 9294 data_out, 9295 data_out_size); 9296 } 9297 9298 /* bcm_fabric_route_t_init not dispatchable */ 9299 9300 int 9301 bcm_loop_fabric_route_tx( 9302 int unit, 9303 uint32 flags, 9304 bcm_fabric_route_t * route, 9305 uint32 data_in_size, 9306 uint32 * data_in) 9307 { 9308 return bcm_fabric_route_tx( 9309 BCM_CONTROL(unit)->unit, 9310 flags, 9311 route, 9312 data_in_size, 9313 data_in); 9314 } 9315 9316 int 9317 bcm_loop_fabric_static_replication_set( 9318 int unit, 9319 bcm_port_t port, 9320 uint32 flags, 9321 uint32 destid_count, 9322 bcm_module_t * destid_array) 9323 { 9324 return bcm_fabric_static_replication_set( 9325 BCM_CONTROL(unit)->unit, 9326 port, 9327 flags, 9328 destid_count, 9329 destid_array); 9330 } 9331 9332 int 9333 bcm_loop_fabric_tdm_direct_routing_get( 9334 int unit, 9335 bcm_gport_t gport, 9336 bcm_fabric_tdm_direct_routing_t * routing_info) 9337 { 9338 return bcm_fabric_tdm_direct_routing_get( 9339 BCM_CONTROL(unit)->unit, 9340 gport, 9341 routing_info); 9342 } 9343 9344 int 9345 bcm_loop_fabric_tdm_direct_routing_set( 9346 int unit, 9347 bcm_gport_t gport, 9348 bcm_fabric_tdm_direct_routing_t * routing_info) 9349 { 9350 return bcm_fabric_tdm_direct_routing_set( 9351 BCM_CONTROL(unit)->unit, 9352 gport, 9353 routing_info); 9354 } 9355 9356 int 9357 bcm_loop_fabric_tdm_editing_get( 9358 int unit, 9359 bcm_gport_t gport, 9360 bcm_fabric_tdm_editing_t * editing) 9361 { 9362 return bcm_fabric_tdm_editing_get( 9363 BCM_CONTROL(unit)->unit, 9364 gport, 9365 editing); 9366 } 9367 9368 int 9369 bcm_loop_fabric_tdm_editing_set( 9370 int unit, 9371 bcm_gport_t gport, 9372 bcm_fabric_tdm_editing_t * editing) 9373 { 9374 return bcm_fabric_tdm_editing_set( 9375 BCM_CONTROL(unit)->unit, 9376 gport, 9377 editing); 9378 } 9379 9380 /* bcm_fabric_tdm_editing_t_init not dispatchable */ 9381 9382 #ifdef INCLUDE_L3 9383 9384 int 9385 bcm_loop_failover_cleanup( 9386 int unit) 9387 { 9388 return bcm_failover_cleanup( 9389 BCM_CONTROL(unit)->unit); 9390 } 9391 9392 int 9393 bcm_loop_failover_create( 9394 int unit, 9395 uint32 flags, 9396 bcm_failover_t * failover_id) 9397 { 9398 return bcm_failover_create( 9399 BCM_CONTROL(unit)->unit, 9400 flags, 9401 failover_id); 9402 } 9403 9404 int 9405 bcm_loop_failover_destroy( 9406 int unit, 9407 bcm_failover_t failover_id) 9408 { 9409 return bcm_failover_destroy( 9410 BCM_CONTROL(unit)->unit, 9411 failover_id); 9412 } 9413 9414 int 9415 bcm_loop_failover_egress_clear( 9416 int unit, 9417 bcm_if_t intf) 9418 { 9419 return bcm_failover_egress_clear( 9420 BCM_CONTROL(unit)->unit, 9421 intf); 9422 } 9423 9424 int 9425 bcm_loop_failover_egress_get( 9426 int unit, 9427 bcm_if_t intf, 9428 bcm_l3_egress_t * failover_egr) 9429 { 9430 return bcm_failover_egress_get( 9431 BCM_CONTROL(unit)->unit, 9432 intf, 9433 failover_egr); 9434 } 9435 9436 int 9437 bcm_loop_failover_egress_set( 9438 int unit, 9439 bcm_if_t intf, 9440 bcm_l3_egress_t * failover_egr) 9441 { 9442 return bcm_failover_egress_set( 9443 BCM_CONTROL(unit)->unit, 9444 intf, 9445 failover_egr); 9446 } 9447 9448 int 9449 bcm_loop_failover_egress_status_get( 9450 int unit, 9451 bcm_if_t intf, 9452 int * enable) 9453 { 9454 return bcm_failover_egress_status_get( 9455 BCM_CONTROL(unit)->unit, 9456 intf, 9457 enable); 9458 } 9459 9460 int 9461 bcm_loop_failover_egress_status_set( 9462 int unit, 9463 bcm_if_t intf, 9464 int enable) 9465 { 9466 return bcm_failover_egress_status_set( 9467 BCM_CONTROL(unit)->unit, 9468 intf, 9469 enable); 9470 } 9471 9472 /* bcm_failover_element_t_init not dispatchable */ 9473 9474 int 9475 bcm_loop_failover_get( 9476 int unit, 9477 bcm_failover_t failover_id, 9478 int * enable) 9479 { 9480 return bcm_failover_get( 9481 BCM_CONTROL(unit)->unit, 9482 failover_id, 9483 enable); 9484 } 9485 9486 int 9487 bcm_loop_failover_init( 9488 int unit) 9489 { 9490 return bcm_failover_init( 9491 BCM_CONTROL(unit)->unit); 9492 } 9493 9494 int 9495 bcm_loop_failover_multi_level_attach( 9496 int unit, 9497 bcm_failover_multi_level_t multi_level_failover) 9498 { 9499 return bcm_failover_multi_level_attach( 9500 BCM_CONTROL(unit)->unit, 9501 multi_level_failover); 9502 } 9503 9504 /* bcm_failover_multi_level_t_init not dispatchable */ 9505 9506 #endif /* INCLUDE_L3 */ 9507 9508 int 9509 bcm_loop_failover_ring_config_get( 9510 int unit, 9511 bcm_failover_ring_t * failover_ring) 9512 { 9513 return bcm_failover_ring_config_get( 9514 BCM_CONTROL(unit)->unit, 9515 failover_ring); 9516 } 9517 9518 int 9519 bcm_loop_failover_ring_config_set( 9520 int unit, 9521 bcm_failover_ring_t * failover_ring) 9522 { 9523 return bcm_failover_ring_config_set( 9524 BCM_CONTROL(unit)->unit, 9525 failover_ring); 9526 } 9527 9528 /* bcm_failover_ring_t_init not dispatchable */ 9529 9530 #ifdef INCLUDE_L3 9531 9532 int 9533 bcm_loop_failover_set( 9534 int unit, 9535 bcm_failover_t failover_id, 9536 int enable) 9537 { 9538 return bcm_failover_set( 9539 BCM_CONTROL(unit)->unit, 9540 failover_id, 9541 enable); 9542 } 9543 9544 int 9545 bcm_loop_failover_status_get( 9546 int unit, 9547 bcm_failover_element_t * failover, 9548 int * enable) 9549 { 9550 return bcm_failover_status_get( 9551 BCM_CONTROL(unit)->unit, 9552 failover, 9553 enable); 9554 } 9555 9556 int 9557 bcm_loop_failover_status_set( 9558 int unit, 9559 bcm_failover_element_t * failover, 9560 int enable) 9561 { 9562 return bcm_failover_status_set( 9563 BCM_CONTROL(unit)->unit, 9564 failover, 9565 enable); 9566 } 9567 9568 #endif /* INCLUDE_L3 */ 9569 #ifdef INCLUDE_FCMAP 9570 9571 int 9572 bcm_loop_fcmap_diag_get( 9573 int unit, 9574 bcm_port_t port, 9575 bcm_fcmap_diag_code_t * diag) 9576 { 9577 return bcm_fcmap_diag_get( 9578 BCM_CONTROL(unit)->unit, 9579 port, 9580 diag); 9581 } 9582 9583 int 9584 bcm_loop_fcmap_event_enable_get( 9585 int unit, 9586 bcm_fcmap_event_t t, 9587 int * enable) 9588 { 9589 return bcm_fcmap_event_enable_get( 9590 BCM_CONTROL(unit)->unit, 9591 t, 9592 enable); 9593 } 9594 9595 int 9596 bcm_loop_fcmap_event_enable_set( 9597 int unit, 9598 bcm_fcmap_event_t t, 9599 int enable) 9600 { 9601 return bcm_fcmap_event_enable_set( 9602 BCM_CONTROL(unit)->unit, 9603 t, 9604 enable); 9605 } 9606 9607 int 9608 bcm_loop_fcmap_event_register( 9609 int unit, 9610 bcm_fcmap_event_cb cb, 9611 void * user_data) 9612 { 9613 return bcm_fcmap_event_register( 9614 BCM_CONTROL(unit)->unit, 9615 cb, 9616 user_data); 9617 } 9618 9619 int 9620 bcm_loop_fcmap_event_unregister( 9621 int unit, 9622 bcm_fcmap_event_cb cb) 9623 { 9624 return bcm_fcmap_event_unregister( 9625 BCM_CONTROL(unit)->unit, 9626 cb); 9627 } 9628 9629 int 9630 bcm_loop_fcmap_linkfault_trigger_rc_get( 9631 int unit, 9632 bcm_port_t port, 9633 bcm_fcmap_lf_tr_t * trigger, 9634 bcm_fcmap_lf_rc_t * rc) 9635 { 9636 return bcm_fcmap_linkfault_trigger_rc_get( 9637 BCM_CONTROL(unit)->unit, 9638 port, 9639 trigger, 9640 rc); 9641 } 9642 9643 int 9644 bcm_loop_fcmap_port_ability_advert_get( 9645 int unit, 9646 bcm_port_t port, 9647 bcm_fcmap_port_ability_t * ability_mask) 9648 { 9649 return bcm_fcmap_port_ability_advert_get( 9650 BCM_CONTROL(unit)->unit, 9651 port, 9652 ability_mask); 9653 } 9654 9655 int 9656 bcm_loop_fcmap_port_ability_advert_set( 9657 int unit, 9658 bcm_port_t port, 9659 bcm_fcmap_port_ability_t * ability_mask) 9660 { 9661 return bcm_fcmap_port_ability_advert_set( 9662 BCM_CONTROL(unit)->unit, 9663 port, 9664 ability_mask); 9665 } 9666 9667 int 9668 bcm_loop_fcmap_port_config_get( 9669 int unit, 9670 bcm_port_t port, 9671 bcm_fcmap_port_config_t * cfg) 9672 { 9673 return bcm_fcmap_port_config_get( 9674 BCM_CONTROL(unit)->unit, 9675 port, 9676 cfg); 9677 } 9678 9679 int 9680 bcm_loop_fcmap_port_config_selective_get( 9681 int unit, 9682 bcm_port_t port, 9683 bcm_fcmap_port_config_t * cfg) 9684 { 9685 return bcm_fcmap_port_config_selective_get( 9686 BCM_CONTROL(unit)->unit, 9687 port, 9688 cfg); 9689 } 9690 9691 int 9692 bcm_loop_fcmap_port_config_selective_set( 9693 int unit, 9694 bcm_port_t port, 9695 bcm_fcmap_port_config_t * cfg) 9696 { 9697 return bcm_fcmap_port_config_selective_set( 9698 BCM_CONTROL(unit)->unit, 9699 port, 9700 cfg); 9701 } 9702 9703 int 9704 bcm_loop_fcmap_port_config_set( 9705 int unit, 9706 bcm_port_t port, 9707 bcm_fcmap_port_config_t * cfg) 9708 { 9709 return bcm_fcmap_port_config_set( 9710 BCM_CONTROL(unit)->unit, 9711 port, 9712 cfg); 9713 } 9714 9715 int 9716 bcm_loop_fcmap_port_enable( 9717 int unit, 9718 bcm_port_t port) 9719 { 9720 return bcm_fcmap_port_enable( 9721 BCM_CONTROL(unit)->unit, 9722 port); 9723 } 9724 9725 int 9726 bcm_loop_fcmap_port_link_reset( 9727 int unit, 9728 bcm_port_t port) 9729 { 9730 return bcm_fcmap_port_link_reset( 9731 BCM_CONTROL(unit)->unit, 9732 port); 9733 } 9734 9735 int 9736 bcm_loop_fcmap_port_shutdown( 9737 int unit, 9738 bcm_port_t port) 9739 { 9740 return bcm_fcmap_port_shutdown( 9741 BCM_CONTROL(unit)->unit, 9742 port); 9743 } 9744 9745 int 9746 bcm_loop_fcmap_port_speed_set( 9747 int unit, 9748 bcm_port_t port, 9749 bcm_fcmap_port_speed_t speed) 9750 { 9751 return bcm_fcmap_port_speed_set( 9752 BCM_CONTROL(unit)->unit, 9753 port, 9754 speed); 9755 } 9756 9757 int 9758 bcm_loop_fcmap_port_traverse( 9759 int unit, 9760 bcm_fcmap_port_traverse_cb callbk, 9761 void * user_data) 9762 { 9763 return bcm_fcmap_port_traverse( 9764 BCM_CONTROL(unit)->unit, 9765 callbk, 9766 user_data); 9767 } 9768 9769 int 9770 bcm_loop_fcmap_stat_clear( 9771 int unit, 9772 bcm_port_t port) 9773 { 9774 return bcm_fcmap_stat_clear( 9775 BCM_CONTROL(unit)->unit, 9776 port); 9777 } 9778 9779 int 9780 bcm_loop_fcmap_stat_get( 9781 int unit, 9782 bcm_port_t port, 9783 bcm_fcmap_stat_t stat, 9784 uint64 * val) 9785 { 9786 return bcm_fcmap_stat_get( 9787 BCM_CONTROL(unit)->unit, 9788 port, 9789 stat, 9790 val); 9791 } 9792 9793 int 9794 bcm_loop_fcmap_stat_get32( 9795 int unit, 9796 bcm_port_t port, 9797 bcm_fcmap_stat_t stat, 9798 uint32 * val) 9799 { 9800 return bcm_fcmap_stat_get32( 9801 BCM_CONTROL(unit)->unit, 9802 port, 9803 stat, 9804 val); 9805 } 9806 9807 int 9808 bcm_loop_fcmap_vlan_map_add( 9809 int unit, 9810 bcm_port_t port, 9811 bcm_fcmap_vlan_vsan_map_t * vlan) 9812 { 9813 return bcm_fcmap_vlan_map_add( 9814 BCM_CONTROL(unit)->unit, 9815 port, 9816 vlan); 9817 } 9818 9819 int 9820 bcm_loop_fcmap_vlan_map_delete( 9821 int unit, 9822 bcm_port_t port, 9823 bcm_fcmap_vlan_vsan_map_t * vlan) 9824 { 9825 return bcm_fcmap_vlan_map_delete( 9826 BCM_CONTROL(unit)->unit, 9827 port, 9828 vlan); 9829 } 9830 9831 int 9832 bcm_loop_fcmap_vlan_map_get( 9833 int unit, 9834 bcm_port_t port, 9835 bcm_fcmap_vlan_vsan_map_t * vlan) 9836 { 9837 return bcm_fcmap_vlan_map_get( 9838 BCM_CONTROL(unit)->unit, 9839 port, 9840 vlan); 9841 } 9842 9843 #endif /* INCLUDE_FCMAP */ 9844 9845 int 9846 bcm_loop_fcoe_cleanup( 9847 int unit) 9848 { 9849 return bcm_fcoe_cleanup( 9850 BCM_CONTROL(unit)->unit); 9851 } 9852 9853 int 9854 bcm_loop_fcoe_control_vsan_get( 9855 int unit, 9856 bcm_fcoe_vsan_id_t vsan_id, 9857 bcm_fcoe_vsan_control_t type, 9858 int * arg) 9859 { 9860 return bcm_fcoe_control_vsan_get( 9861 BCM_CONTROL(unit)->unit, 9862 vsan_id, 9863 type, 9864 arg); 9865 } 9866 9867 int 9868 bcm_loop_fcoe_control_vsan_set( 9869 int unit, 9870 bcm_fcoe_vsan_id_t vsan_id, 9871 bcm_fcoe_vsan_control_t type, 9872 int arg) 9873 { 9874 return bcm_fcoe_control_vsan_set( 9875 BCM_CONTROL(unit)->unit, 9876 vsan_id, 9877 type, 9878 arg); 9879 } 9880 9881 int 9882 bcm_loop_fcoe_enable_set( 9883 int unit) 9884 { 9885 return bcm_fcoe_enable_set( 9886 BCM_CONTROL(unit)->unit); 9887 } 9888 9889 int 9890 bcm_loop_fcoe_fc_header_type_get( 9891 int unit, 9892 uint32 flags, 9893 uint8 r_ctl, 9894 bcm_fcoe_fc_header_type_t * hdr_type) 9895 { 9896 return bcm_fcoe_fc_header_type_get( 9897 BCM_CONTROL(unit)->unit, 9898 flags, 9899 r_ctl, 9900 hdr_type); 9901 } 9902 9903 int 9904 bcm_loop_fcoe_fc_header_type_set( 9905 int unit, 9906 uint32 flags, 9907 uint8 r_ctl, 9908 bcm_fcoe_fc_header_type_t hdr_type) 9909 { 9910 return bcm_fcoe_fc_header_type_set( 9911 BCM_CONTROL(unit)->unit, 9912 flags, 9913 r_ctl, 9914 hdr_type); 9915 } 9916 9917 int 9918 bcm_loop_fcoe_init( 9919 int unit) 9920 { 9921 return bcm_fcoe_init( 9922 BCM_CONTROL(unit)->unit); 9923 } 9924 9925 int 9926 bcm_loop_fcoe_intf_config_get( 9927 int unit, 9928 uint32 flags, 9929 bcm_if_t intf, 9930 bcm_fcoe_intf_config_t * cfg) 9931 { 9932 return bcm_fcoe_intf_config_get( 9933 BCM_CONTROL(unit)->unit, 9934 flags, 9935 intf, 9936 cfg); 9937 } 9938 9939 int 9940 bcm_loop_fcoe_intf_config_set( 9941 int unit, 9942 uint32 flags, 9943 bcm_if_t intf, 9944 bcm_fcoe_intf_config_t * cfg) 9945 { 9946 return bcm_fcoe_intf_config_set( 9947 BCM_CONTROL(unit)->unit, 9948 flags, 9949 intf, 9950 cfg); 9951 } 9952 9953 /* bcm_fcoe_intf_config_t_init not dispatchable */ 9954 9955 int 9956 bcm_loop_fcoe_route_add( 9957 int unit, 9958 bcm_fcoe_route_t * route) 9959 { 9960 return bcm_fcoe_route_add( 9961 BCM_CONTROL(unit)->unit, 9962 route); 9963 } 9964 9965 int 9966 bcm_loop_fcoe_route_delete( 9967 int unit, 9968 bcm_fcoe_route_t * route) 9969 { 9970 return bcm_fcoe_route_delete( 9971 BCM_CONTROL(unit)->unit, 9972 route); 9973 } 9974 9975 int 9976 bcm_loop_fcoe_route_delete_all( 9977 int unit) 9978 { 9979 return bcm_fcoe_route_delete_all( 9980 BCM_CONTROL(unit)->unit); 9981 } 9982 9983 int 9984 bcm_loop_fcoe_route_delete_by_interface( 9985 int unit, 9986 bcm_fcoe_route_t * route) 9987 { 9988 return bcm_fcoe_route_delete_by_interface( 9989 BCM_CONTROL(unit)->unit, 9990 route); 9991 } 9992 9993 int 9994 bcm_loop_fcoe_route_delete_by_prefix( 9995 int unit, 9996 bcm_fcoe_route_t * route) 9997 { 9998 return bcm_fcoe_route_delete_by_prefix( 9999 BCM_CONTROL(unit)->unit, 10000 route); 10001 } 10002 10003 int 10004 bcm_loop_fcoe_route_find( 10005 int unit, 10006 bcm_fcoe_route_t * route) 10007 { 10008 return bcm_fcoe_route_find( 10009 BCM_CONTROL(unit)->unit, 10010 route); 10011 } 10012 10013 int 10014 bcm_loop_fcoe_route_stat_attach( 10015 int unit, 10016 bcm_fcoe_route_t * route, 10017 uint32 stat_counter_id) 10018 { 10019 return bcm_fcoe_route_stat_attach( 10020 BCM_CONTROL(unit)->unit, 10021 route, 10022 stat_counter_id); 10023 } 10024 10025 int 10026 bcm_loop_fcoe_route_stat_counter_get( 10027 int unit, 10028 bcm_fcoe_route_t * route, 10029 bcm_fcoe_route_stat_t stat, 10030 uint32 num_entries, 10031 uint32 * counter_indexes, 10032 bcm_stat_value_t * counter_values) 10033 { 10034 return bcm_fcoe_route_stat_counter_get( 10035 BCM_CONTROL(unit)->unit, 10036 route, 10037 stat, 10038 num_entries, 10039 counter_indexes, 10040 counter_values); 10041 } 10042 10043 int 10044 bcm_loop_fcoe_route_stat_counter_set( 10045 int unit, 10046 bcm_fcoe_route_t * route, 10047 bcm_fcoe_route_stat_t stat, 10048 uint32 num_entries, 10049 uint32 * counter_indexes, 10050 bcm_stat_value_t * counter_values) 10051 { 10052 return bcm_fcoe_route_stat_counter_set( 10053 BCM_CONTROL(unit)->unit, 10054 route, 10055 stat, 10056 num_entries, 10057 counter_indexes, 10058 counter_values); 10059 } 10060 10061 int 10062 bcm_loop_fcoe_route_stat_counter_sync_get( 10063 int unit, 10064 bcm_fcoe_route_t * route, 10065 bcm_fcoe_route_stat_t stat, 10066 uint32 num_entries, 10067 uint32 * counter_indexes, 10068 bcm_stat_value_t * counter_values) 10069 { 10070 return bcm_fcoe_route_stat_counter_sync_get( 10071 BCM_CONTROL(unit)->unit, 10072 route, 10073 stat, 10074 num_entries, 10075 counter_indexes, 10076 counter_values); 10077 } 10078 10079 int 10080 bcm_loop_fcoe_route_stat_detach( 10081 int unit, 10082 bcm_fcoe_route_t * route) 10083 { 10084 return bcm_fcoe_route_stat_detach( 10085 BCM_CONTROL(unit)->unit, 10086 route); 10087 } 10088 10089 int 10090 bcm_loop_fcoe_route_stat_id_get( 10091 int unit, 10092 bcm_fcoe_route_t * route, 10093 bcm_fcoe_route_stat_t stat, 10094 uint32 * stat_counter_id) 10095 { 10096 return bcm_fcoe_route_stat_id_get( 10097 BCM_CONTROL(unit)->unit, 10098 route, 10099 stat, 10100 stat_counter_id); 10101 } 10102 10103 /* bcm_fcoe_route_t_init not dispatchable */ 10104 10105 int 10106 bcm_loop_fcoe_route_traverse( 10107 int unit, 10108 uint32 flags, 10109 bcm_fcoe_route_traverse_cb trav_fn, 10110 void * user_data) 10111 { 10112 return bcm_fcoe_route_traverse( 10113 BCM_CONTROL(unit)->unit, 10114 flags, 10115 trav_fn, 10116 user_data); 10117 } 10118 10119 /* bcm_fcoe_vsan_action_set_t_init not dispatchable */ 10120 10121 int 10122 bcm_loop_fcoe_vsan_create( 10123 int unit, 10124 uint32 options, 10125 bcm_fcoe_vsan_t * vsan, 10126 bcm_fcoe_vsan_id_t * vsan_id) 10127 { 10128 return bcm_fcoe_vsan_create( 10129 BCM_CONTROL(unit)->unit, 10130 options, 10131 vsan, 10132 vsan_id); 10133 } 10134 10135 int 10136 bcm_loop_fcoe_vsan_destroy( 10137 int unit, 10138 bcm_fcoe_vsan_id_t vsan_id) 10139 { 10140 return bcm_fcoe_vsan_destroy( 10141 BCM_CONTROL(unit)->unit, 10142 vsan_id); 10143 } 10144 10145 int 10146 bcm_loop_fcoe_vsan_destroy_all( 10147 int unit) 10148 { 10149 return bcm_fcoe_vsan_destroy_all( 10150 BCM_CONTROL(unit)->unit); 10151 } 10152 10153 int 10154 bcm_loop_fcoe_vsan_get( 10155 int unit, 10156 bcm_fcoe_vsan_id_t vsan_id, 10157 bcm_fcoe_vsan_t * vsan) 10158 { 10159 return bcm_fcoe_vsan_get( 10160 BCM_CONTROL(unit)->unit, 10161 vsan_id, 10162 vsan); 10163 } 10164 10165 int 10166 bcm_loop_fcoe_vsan_set( 10167 int unit, 10168 bcm_fcoe_vsan_id_t vsan_id, 10169 bcm_fcoe_vsan_t * vsan) 10170 { 10171 return bcm_fcoe_vsan_set( 10172 BCM_CONTROL(unit)->unit, 10173 vsan_id, 10174 vsan); 10175 } 10176 10177 int 10178 bcm_loop_fcoe_vsan_stat_attach( 10179 int unit, 10180 bcm_fcoe_vsan_id_t vsan, 10181 uint32 stat_counter_id) 10182 { 10183 return bcm_fcoe_vsan_stat_attach( 10184 BCM_CONTROL(unit)->unit, 10185 vsan, 10186 stat_counter_id); 10187 } 10188 10189 int 10190 bcm_loop_fcoe_vsan_stat_counter_get( 10191 int unit, 10192 bcm_fcoe_vsan_id_t vsan, 10193 bcm_fcoe_vsan_stat_t stat, 10194 uint32 num_entries, 10195 uint32 * counter_indexes, 10196 bcm_stat_value_t * counter_values) 10197 { 10198 return bcm_fcoe_vsan_stat_counter_get( 10199 BCM_CONTROL(unit)->unit, 10200 vsan, 10201 stat, 10202 num_entries, 10203 counter_indexes, 10204 counter_values); 10205 } 10206 10207 int 10208 bcm_loop_fcoe_vsan_stat_counter_set( 10209 int unit, 10210 bcm_fcoe_vsan_id_t vsan, 10211 bcm_fcoe_vsan_stat_t stat, 10212 uint32 num_entries, 10213 uint32 * counter_indexes, 10214 bcm_stat_value_t * counter_values) 10215 { 10216 return bcm_fcoe_vsan_stat_counter_set( 10217 BCM_CONTROL(unit)->unit, 10218 vsan, 10219 stat, 10220 num_entries, 10221 counter_indexes, 10222 counter_values); 10223 } 10224 10225 int 10226 bcm_loop_fcoe_vsan_stat_counter_sync_get( 10227 int unit, 10228 bcm_fcoe_vsan_id_t vsan, 10229 bcm_fcoe_vsan_stat_t stat, 10230 uint32 num_entries, 10231 uint32 * counter_indexes, 10232 bcm_stat_value_t * counter_values) 10233 { 10234 return bcm_fcoe_vsan_stat_counter_sync_get( 10235 BCM_CONTROL(unit)->unit, 10236 vsan, 10237 stat, 10238 num_entries, 10239 counter_indexes, 10240 counter_values); 10241 } 10242 10243 int 10244 bcm_loop_fcoe_vsan_stat_detach( 10245 int unit, 10246 bcm_fcoe_vsan_id_t vsan) 10247 { 10248 return bcm_fcoe_vsan_stat_detach( 10249 BCM_CONTROL(unit)->unit, 10250 vsan); 10251 } 10252 10253 int 10254 bcm_loop_fcoe_vsan_stat_id_get( 10255 int unit, 10256 bcm_fcoe_vsan_id_t vsan, 10257 bcm_fcoe_vsan_stat_t stat, 10258 uint32 * stat_counter_id) 10259 { 10260 return bcm_fcoe_vsan_stat_id_get( 10261 BCM_CONTROL(unit)->unit, 10262 vsan, 10263 stat, 10264 stat_counter_id); 10265 } 10266 10267 /* bcm_fcoe_vsan_t_init not dispatchable */ 10268 10269 int 10270 bcm_loop_fcoe_vsan_translate_action_add( 10271 int unit, 10272 bcm_fcoe_vsan_translate_key_config_t * key, 10273 bcm_fcoe_vsan_action_set_t * action) 10274 { 10275 return bcm_fcoe_vsan_translate_action_add( 10276 BCM_CONTROL(unit)->unit, 10277 key, 10278 action); 10279 } 10280 10281 int 10282 bcm_loop_fcoe_vsan_translate_action_delete( 10283 int unit, 10284 bcm_fcoe_vsan_translate_key_config_t * key) 10285 { 10286 return bcm_fcoe_vsan_translate_action_delete( 10287 BCM_CONTROL(unit)->unit, 10288 key); 10289 } 10290 10291 /* bcm_fcoe_vsan_translate_key_config_t_init not dispatchable */ 10292 10293 int 10294 bcm_loop_fcoe_vsan_traverse( 10295 int unit, 10296 uint32 flags, 10297 bcm_fcoe_vsan_traverse_cb trav_fn, 10298 void * user_data) 10299 { 10300 return bcm_fcoe_vsan_traverse( 10301 BCM_CONTROL(unit)->unit, 10302 flags, 10303 trav_fn, 10304 user_data); 10305 } 10306 10307 /* bcm_fcoe_vsan_vft_t_init not dispatchable */ 10308 10309 int 10310 bcm_loop_fcoe_zone_add( 10311 int unit, 10312 bcm_fcoe_zone_entry_t * zone) 10313 { 10314 return bcm_fcoe_zone_add( 10315 BCM_CONTROL(unit)->unit, 10316 zone); 10317 } 10318 10319 int 10320 bcm_loop_fcoe_zone_delete( 10321 int unit, 10322 bcm_fcoe_zone_entry_t * zone) 10323 { 10324 return bcm_fcoe_zone_delete( 10325 BCM_CONTROL(unit)->unit, 10326 zone); 10327 } 10328 10329 int 10330 bcm_loop_fcoe_zone_delete_all( 10331 int unit) 10332 { 10333 return bcm_fcoe_zone_delete_all( 10334 BCM_CONTROL(unit)->unit); 10335 } 10336 10337 int 10338 bcm_loop_fcoe_zone_delete_by_did( 10339 int unit, 10340 bcm_fcoe_zone_entry_t * zone) 10341 { 10342 return bcm_fcoe_zone_delete_by_did( 10343 BCM_CONTROL(unit)->unit, 10344 zone); 10345 } 10346 10347 int 10348 bcm_loop_fcoe_zone_delete_by_sid( 10349 int unit, 10350 bcm_fcoe_zone_entry_t * zone) 10351 { 10352 return bcm_fcoe_zone_delete_by_sid( 10353 BCM_CONTROL(unit)->unit, 10354 zone); 10355 } 10356 10357 int 10358 bcm_loop_fcoe_zone_delete_by_vsan( 10359 int unit, 10360 bcm_fcoe_zone_entry_t * zone) 10361 { 10362 return bcm_fcoe_zone_delete_by_vsan( 10363 BCM_CONTROL(unit)->unit, 10364 zone); 10365 } 10366 10367 /* bcm_fcoe_zone_entry_t_init not dispatchable */ 10368 10369 int 10370 bcm_loop_fcoe_zone_get( 10371 int unit, 10372 bcm_fcoe_zone_entry_t * zone) 10373 { 10374 return bcm_fcoe_zone_get( 10375 BCM_CONTROL(unit)->unit, 10376 zone); 10377 } 10378 10379 int 10380 bcm_loop_fcoe_zone_traverse( 10381 int unit, 10382 uint32 flags, 10383 bcm_fcoe_zone_traverse_cb trav_fn, 10384 void * user_data) 10385 { 10386 return bcm_fcoe_zone_traverse( 10387 BCM_CONTROL(unit)->unit, 10388 flags, 10389 trav_fn, 10390 user_data); 10391 } 10392 10393 int 10394 bcm_loop_field_ace_entry_add( 10395 int unit, 10396 uint32 flags, 10397 bcm_field_ace_format_t ace_format_id, 10398 bcm_field_ace_entry_info_t * entry_info, 10399 uint32 * entry_handle) 10400 { 10401 return bcm_field_ace_entry_add( 10402 BCM_CONTROL(unit)->unit, 10403 flags, 10404 ace_format_id, 10405 entry_info, 10406 entry_handle); 10407 } 10408 10409 int 10410 bcm_loop_field_ace_entry_delete( 10411 int unit, 10412 uint32 entry_handle) 10413 { 10414 return bcm_field_ace_entry_delete( 10415 BCM_CONTROL(unit)->unit, 10416 entry_handle); 10417 } 10418 10419 int 10420 bcm_loop_field_ace_entry_info_get( 10421 int unit, 10422 uint32 entry_handle, 10423 bcm_field_ace_entry_info_t * entry_info) 10424 { 10425 return bcm_field_ace_entry_info_get( 10426 BCM_CONTROL(unit)->unit, 10427 entry_handle, 10428 entry_info); 10429 } 10430 10431 /* bcm_field_ace_entry_info_t_init not dispatchable */ 10432 10433 int 10434 bcm_loop_field_ace_format_add( 10435 int unit, 10436 uint32 flags, 10437 bcm_field_ace_format_info_t * ace_format_info, 10438 bcm_field_ace_format_t * ace_format_id) 10439 { 10440 return bcm_field_ace_format_add( 10441 BCM_CONTROL(unit)->unit, 10442 flags, 10443 ace_format_info, 10444 ace_format_id); 10445 } 10446 10447 int 10448 bcm_loop_field_ace_format_delete( 10449 int unit, 10450 bcm_field_ace_format_t ace_format_id) 10451 { 10452 return bcm_field_ace_format_delete( 10453 BCM_CONTROL(unit)->unit, 10454 ace_format_id); 10455 } 10456 10457 int 10458 bcm_loop_field_ace_format_info_get( 10459 int unit, 10460 bcm_field_ace_format_t ace_format_id, 10461 bcm_field_ace_format_info_t * ace_format_info) 10462 { 10463 return bcm_field_ace_format_info_get( 10464 BCM_CONTROL(unit)->unit, 10465 ace_format_id, 10466 ace_format_info); 10467 } 10468 10469 /* bcm_field_ace_format_info_t_init not dispatchable */ 10470 10471 int 10472 bcm_loop_field_action_add( 10473 int unit, 10474 bcm_field_entry_t entry, 10475 bcm_field_action_t action, 10476 uint32 param0, 10477 uint32 param1) 10478 { 10479 return bcm_field_action_add( 10480 BCM_CONTROL(unit)->unit, 10481 entry, 10482 action, 10483 param0, 10484 param1); 10485 } 10486 10487 int 10488 bcm_loop_field_action_class_add( 10489 int unit, 10490 bcm_field_entry_t entry, 10491 bcm_field_class_info_t * class_info) 10492 { 10493 return bcm_field_action_class_add( 10494 BCM_CONTROL(unit)->unit, 10495 entry, 10496 class_info); 10497 } 10498 10499 int 10500 bcm_loop_field_action_class_get( 10501 int unit, 10502 bcm_field_entry_t entry, 10503 bcm_field_class_info_t * class_info) 10504 { 10505 return bcm_field_action_class_get( 10506 BCM_CONTROL(unit)->unit, 10507 entry, 10508 class_info); 10509 } 10510 10511 int 10512 bcm_loop_field_action_config_add( 10513 int unit, 10514 bcm_field_entry_t entry, 10515 bcm_field_action_t action, 10516 int core_config_arr_len, 10517 bcm_field_action_core_config_t * core_config_arr) 10518 { 10519 return bcm_field_action_config_add( 10520 BCM_CONTROL(unit)->unit, 10521 entry, 10522 action, 10523 core_config_arr_len, 10524 core_config_arr); 10525 } 10526 10527 int 10528 bcm_loop_field_action_config_get( 10529 int unit, 10530 bcm_field_entry_t entry, 10531 bcm_field_action_t action, 10532 int core_config_arr_len, 10533 bcm_field_action_core_config_t * core_config_arr) 10534 { 10535 return bcm_field_action_config_get( 10536 BCM_CONTROL(unit)->unit, 10537 entry, 10538 action, 10539 core_config_arr_len, 10540 core_config_arr); 10541 } 10542 10543 int 10544 bcm_loop_field_action_config_info_add( 10545 int unit, 10546 bcm_field_entry_t entry, 10547 bcm_field_action_t action, 10548 bcm_field_action_params_t * params, 10549 bcm_field_action_match_config_t * match_config) 10550 { 10551 return bcm_field_action_config_info_add( 10552 BCM_CONTROL(unit)->unit, 10553 entry, 10554 action, 10555 params, 10556 match_config); 10557 } 10558 10559 int 10560 bcm_loop_field_action_config_info_get( 10561 int unit, 10562 bcm_field_entry_t entry, 10563 bcm_field_action_t action, 10564 bcm_field_action_params_t * params, 10565 bcm_field_action_match_config_t * match_config) 10566 { 10567 return bcm_field_action_config_info_get( 10568 BCM_CONTROL(unit)->unit, 10569 entry, 10570 action, 10571 params, 10572 match_config); 10573 } 10574 10575 int 10576 bcm_loop_field_action_copytocpu_config_get( 10577 int unit, 10578 bcm_field_entry_t entry, 10579 bcm_field_CopyToCpu_config_t * CopyToCpu_config) 10580 { 10581 return bcm_field_action_copytocpu_config_get( 10582 BCM_CONTROL(unit)->unit, 10583 entry, 10584 CopyToCpu_config); 10585 } 10586 10587 int 10588 bcm_loop_field_action_copytocpu_config_set( 10589 int unit, 10590 bcm_field_entry_t entry, 10591 bcm_field_CopyToCpu_config_t CopyToCpu_config) 10592 { 10593 return bcm_field_action_copytocpu_config_set( 10594 BCM_CONTROL(unit)->unit, 10595 entry, 10596 CopyToCpu_config); 10597 } 10598 10599 int 10600 bcm_loop_field_action_create( 10601 int unit, 10602 uint32 flags, 10603 bcm_field_action_info_t * action_info, 10604 bcm_field_action_t * action_id) 10605 { 10606 return bcm_field_action_create( 10607 BCM_CONTROL(unit)->unit, 10608 flags, 10609 action_info, 10610 action_id); 10611 } 10612 10613 int 10614 bcm_loop_field_action_delete( 10615 int unit, 10616 bcm_field_entry_t entry, 10617 bcm_field_action_t action, 10618 uint32 param0, 10619 uint32 param1) 10620 { 10621 return bcm_field_action_delete( 10622 BCM_CONTROL(unit)->unit, 10623 entry, 10624 action, 10625 param0, 10626 param1); 10627 } 10628 10629 int 10630 bcm_loop_field_action_destroy( 10631 int unit, 10632 bcm_field_action_t action_id) 10633 { 10634 return bcm_field_action_destroy( 10635 BCM_CONTROL(unit)->unit, 10636 action_id); 10637 } 10638 10639 int 10640 bcm_loop_field_action_get( 10641 int unit, 10642 bcm_field_entry_t entry, 10643 bcm_field_action_t action, 10644 uint32 * param0, 10645 uint32 * param1) 10646 { 10647 return bcm_field_action_get( 10648 BCM_CONTROL(unit)->unit, 10649 entry, 10650 action, 10651 param0, 10652 param1); 10653 } 10654 10655 int 10656 bcm_loop_field_action_info_get( 10657 int unit, 10658 bcm_field_action_t action_id, 10659 bcm_field_stage_t stage, 10660 bcm_field_action_info_t * action_info) 10661 { 10662 return bcm_field_action_info_get( 10663 BCM_CONTROL(unit)->unit, 10664 action_id, 10665 stage, 10666 action_info); 10667 } 10668 10669 /* bcm_field_action_info_t_init not dispatchable */ 10670 10671 int 10672 bcm_loop_field_action_mac_add( 10673 int unit, 10674 bcm_field_entry_t entry, 10675 bcm_field_action_t action, 10676 bcm_mac_t mac) 10677 { 10678 return bcm_field_action_mac_add( 10679 BCM_CONTROL(unit)->unit, 10680 entry, 10681 action, 10682 mac); 10683 } 10684 10685 int 10686 bcm_loop_field_action_mac_get( 10687 int unit, 10688 bcm_field_entry_t entry, 10689 bcm_field_action_t action, 10690 bcm_mac_t * mac) 10691 { 10692 return bcm_field_action_mac_get( 10693 BCM_CONTROL(unit)->unit, 10694 entry, 10695 action, 10696 mac); 10697 } 10698 10699 int 10700 bcm_loop_field_action_ports_add( 10701 int unit, 10702 bcm_field_entry_t entry, 10703 bcm_field_action_t action, 10704 bcm_pbmp_t pbmp) 10705 { 10706 return bcm_field_action_ports_add( 10707 BCM_CONTROL(unit)->unit, 10708 entry, 10709 action, 10710 pbmp); 10711 } 10712 10713 int 10714 bcm_loop_field_action_ports_get( 10715 int unit, 10716 bcm_field_entry_t entry, 10717 bcm_field_action_t action, 10718 bcm_pbmp_t * pbmp) 10719 { 10720 return bcm_field_action_ports_get( 10721 BCM_CONTROL(unit)->unit, 10722 entry, 10723 action, 10724 pbmp); 10725 } 10726 10727 int 10728 bcm_loop_field_action_redirect_config_get( 10729 int unit, 10730 bcm_field_entry_t entry, 10731 bcm_field_redirect_config_t * redirect_config) 10732 { 10733 return bcm_field_action_redirect_config_get( 10734 BCM_CONTROL(unit)->unit, 10735 entry, 10736 redirect_config); 10737 } 10738 10739 int 10740 bcm_loop_field_action_redirect_config_set( 10741 int unit, 10742 bcm_field_entry_t entry, 10743 bcm_field_redirect_config_t redirect_config) 10744 { 10745 return bcm_field_action_redirect_config_set( 10746 BCM_CONTROL(unit)->unit, 10747 entry, 10748 redirect_config); 10749 } 10750 10751 int 10752 bcm_loop_field_action_remove( 10753 int unit, 10754 bcm_field_entry_t entry, 10755 bcm_field_action_t action) 10756 { 10757 return bcm_field_action_remove( 10758 BCM_CONTROL(unit)->unit, 10759 entry, 10760 action); 10761 } 10762 10763 int 10764 bcm_loop_field_action_remove_all( 10765 int unit, 10766 bcm_field_entry_t entry) 10767 { 10768 return bcm_field_action_remove_all( 10769 BCM_CONTROL(unit)->unit, 10770 entry); 10771 } 10772 10773 int 10774 bcm_loop_field_action_value_map( 10775 int unit, 10776 bcm_field_stage_t stage, 10777 bcm_field_action_t bcm_action, 10778 uint32 bcm_value[BCM_FIELD_ACTION_WIDTH_IN_WORDS], 10779 uint32 hw_value[BCM_FIELD_ACTION_WIDTH_IN_WORDS]) 10780 { 10781 return bcm_field_action_value_map( 10782 BCM_CONTROL(unit)->unit, 10783 stage, 10784 bcm_action, 10785 bcm_value, 10786 hw_value); 10787 } 10788 10789 int 10790 bcm_loop_field_action_vlan_actions_add( 10791 int unit, 10792 bcm_field_entry_t entry, 10793 bcm_field_action_t action, 10794 bcm_vlan_action_set_t * vlan_action_set) 10795 { 10796 return bcm_field_action_vlan_actions_add( 10797 BCM_CONTROL(unit)->unit, 10798 entry, 10799 action, 10800 vlan_action_set); 10801 } 10802 10803 int 10804 bcm_loop_field_action_vlan_actions_get( 10805 int unit, 10806 bcm_field_entry_t entry, 10807 bcm_field_action_t action, 10808 bcm_vlan_action_set_t * vlan_action_set) 10809 { 10810 return bcm_field_action_vlan_actions_get( 10811 BCM_CONTROL(unit)->unit, 10812 entry, 10813 action, 10814 vlan_action_set); 10815 } 10816 10817 int 10818 bcm_loop_field_action_width_get( 10819 int unit, 10820 uint32 flags, 10821 int internal_action, 10822 uint32 * width_p) 10823 { 10824 return bcm_field_action_width_get( 10825 BCM_CONTROL(unit)->unit, 10826 flags, 10827 internal_action, 10828 width_p); 10829 } 10830 10831 int 10832 bcm_loop_field_action_width_set( 10833 int unit, 10834 uint32 flags, 10835 int internal_action, 10836 uint32 width) 10837 { 10838 return bcm_field_action_width_set( 10839 BCM_CONTROL(unit)->unit, 10840 flags, 10841 internal_action, 10842 width); 10843 } 10844 10845 /* bcm_field_aset_t_init not dispatchable */ 10846 10847 /* bcm_field_class_info_t_init not dispatchable */ 10848 10849 int 10850 bcm_loop_field_class_map_get( 10851 int unit, 10852 bcm_field_stage_t stage, 10853 bcm_field_qualify_t qual, 10854 uint32 num_entries, 10855 uint32 * orig_values_array, 10856 uint32 * map_values_array) 10857 { 10858 return bcm_field_class_map_get( 10859 BCM_CONTROL(unit)->unit, 10860 stage, 10861 qual, 10862 num_entries, 10863 orig_values_array, 10864 map_values_array); 10865 } 10866 10867 int 10868 bcm_loop_field_class_map_set( 10869 int unit, 10870 bcm_field_stage_t stage, 10871 bcm_field_qualify_t qual, 10872 uint32 num_entries, 10873 uint32 * orig_values_array, 10874 uint32 * map_values_array) 10875 { 10876 return bcm_field_class_map_set( 10877 BCM_CONTROL(unit)->unit, 10878 stage, 10879 qual, 10880 num_entries, 10881 orig_values_array, 10882 map_values_array); 10883 } 10884 10885 int 10886 bcm_loop_field_class_size_get( 10887 int unit, 10888 bcm_field_qualify_t qual, 10889 uint16 * class_size) 10890 { 10891 return bcm_field_class_size_get( 10892 BCM_CONTROL(unit)->unit, 10893 qual, 10894 class_size); 10895 } 10896 10897 int 10898 bcm_loop_field_compare_operand_offset_get( 10899 int unit, 10900 int pair_id, 10901 bcm_field_compare_operand_t compare_operand, 10902 int * offset) 10903 { 10904 return bcm_field_compare_operand_offset_get( 10905 BCM_CONTROL(unit)->unit, 10906 pair_id, 10907 compare_operand, 10908 offset); 10909 } 10910 10911 int 10912 bcm_loop_field_context_compare_create( 10913 int unit, 10914 uint32 flags, 10915 bcm_field_stage_t stage, 10916 bcm_field_context_t context_id, 10917 uint32 pair_id, 10918 bcm_field_context_compare_info_t * cmp_info) 10919 { 10920 return bcm_field_context_compare_create( 10921 BCM_CONTROL(unit)->unit, 10922 flags, 10923 stage, 10924 context_id, 10925 pair_id, 10926 cmp_info); 10927 } 10928 10929 int 10930 bcm_loop_field_context_compare_destroy( 10931 int unit, 10932 bcm_field_stage_t stage, 10933 bcm_field_context_t context_id, 10934 uint32 pair_id) 10935 { 10936 return bcm_field_context_compare_destroy( 10937 BCM_CONTROL(unit)->unit, 10938 stage, 10939 context_id, 10940 pair_id); 10941 } 10942 10943 int 10944 bcm_loop_field_context_compare_info_get( 10945 int unit, 10946 bcm_field_stage_t stage, 10947 bcm_field_context_t context_id, 10948 uint32 pair_id, 10949 bcm_field_context_compare_info_t * cmp_info) 10950 { 10951 return bcm_field_context_compare_info_get( 10952 BCM_CONTROL(unit)->unit, 10953 stage, 10954 context_id, 10955 pair_id, 10956 cmp_info); 10957 } 10958 10959 /* bcm_field_context_compare_info_t_init not dispatchable */ 10960 10961 int 10962 bcm_loop_field_context_create( 10963 int unit, 10964 uint32 flags, 10965 bcm_field_stage_t stage, 10966 bcm_field_context_info_t * context_info, 10967 bcm_field_context_t * context_id) 10968 { 10969 return bcm_field_context_create( 10970 BCM_CONTROL(unit)->unit, 10971 flags, 10972 stage, 10973 context_info, 10974 context_id); 10975 } 10976 10977 int 10978 bcm_loop_field_context_destroy( 10979 int unit, 10980 bcm_field_stage_t stage, 10981 bcm_field_context_t context_id) 10982 { 10983 return bcm_field_context_destroy( 10984 BCM_CONTROL(unit)->unit, 10985 stage, 10986 context_id); 10987 } 10988 10989 int 10990 bcm_loop_field_context_hash_create( 10991 int unit, 10992 uint32 flags, 10993 bcm_field_stage_t stage, 10994 bcm_field_context_t context_id, 10995 bcm_field_context_hash_info_t * hash_info) 10996 { 10997 return bcm_field_context_hash_create( 10998 BCM_CONTROL(unit)->unit, 10999 flags, 11000 stage, 11001 context_id, 11002 hash_info); 11003 } 11004 11005 int 11006 bcm_loop_field_context_hash_destroy( 11007 int unit, 11008 bcm_field_stage_t stage, 11009 bcm_field_context_t context_id) 11010 { 11011 return bcm_field_context_hash_destroy( 11012 BCM_CONTROL(unit)->unit, 11013 stage, 11014 context_id); 11015 } 11016 11017 int 11018 bcm_loop_field_context_hash_info_get( 11019 int unit, 11020 bcm_field_stage_t stage, 11021 bcm_field_context_t context_id, 11022 bcm_field_context_hash_info_t * hash_info) 11023 { 11024 return bcm_field_context_hash_info_get( 11025 BCM_CONTROL(unit)->unit, 11026 stage, 11027 context_id, 11028 hash_info); 11029 } 11030 11031 /* bcm_field_context_hash_info_t_init not dispatchable */ 11032 11033 int 11034 bcm_loop_field_context_info_get( 11035 int unit, 11036 bcm_field_stage_t stage, 11037 bcm_field_context_t context_id, 11038 bcm_field_context_info_t * context_info) 11039 { 11040 return bcm_field_context_info_get( 11041 BCM_CONTROL(unit)->unit, 11042 stage, 11043 context_id, 11044 context_info); 11045 } 11046 11047 /* bcm_field_context_info_t_init not dispatchable */ 11048 11049 /* bcm_field_context_param_info_t_init not dispatchable */ 11050 11051 int 11052 bcm_loop_field_context_param_set( 11053 int unit, 11054 uint32 flags, 11055 bcm_field_stage_t stage, 11056 bcm_field_context_t context_id, 11057 bcm_field_context_param_info_t * context_params) 11058 { 11059 return bcm_field_context_param_set( 11060 BCM_CONTROL(unit)->unit, 11061 flags, 11062 stage, 11063 context_id, 11064 context_params); 11065 } 11066 11067 int 11068 bcm_loop_field_control_get( 11069 int unit, 11070 bcm_field_control_t control, 11071 uint32 * state) 11072 { 11073 return bcm_field_control_get( 11074 BCM_CONTROL(unit)->unit, 11075 control, 11076 state); 11077 } 11078 11079 int 11080 bcm_loop_field_control_set( 11081 int unit, 11082 bcm_field_control_t control, 11083 uint32 state) 11084 { 11085 return bcm_field_control_set( 11086 BCM_CONTROL(unit)->unit, 11087 control, 11088 state); 11089 } 11090 11091 /* bcm_field_copytocpu_config_t_init not dispatchable */ 11092 11093 /* bcm_field_data_ethertype_t_init not dispatchable */ 11094 11095 /* bcm_field_data_ip_protocol_t_init not dispatchable */ 11096 11097 /* bcm_field_data_packet_format_t_init not dispatchable */ 11098 11099 int 11100 bcm_loop_field_data_qualifier_create( 11101 int unit, 11102 bcm_field_data_qualifier_t * data_qualifier) 11103 { 11104 return bcm_field_data_qualifier_create( 11105 BCM_CONTROL(unit)->unit, 11106 data_qualifier); 11107 } 11108 11109 int 11110 bcm_loop_field_data_qualifier_destroy( 11111 int unit, 11112 int qual_id) 11113 { 11114 return bcm_field_data_qualifier_destroy( 11115 BCM_CONTROL(unit)->unit, 11116 qual_id); 11117 } 11118 11119 int 11120 bcm_loop_field_data_qualifier_destroy_all( 11121 int unit) 11122 { 11123 return bcm_field_data_qualifier_destroy_all( 11124 BCM_CONTROL(unit)->unit); 11125 } 11126 11127 int 11128 bcm_loop_field_data_qualifier_ethertype_add( 11129 int unit, 11130 int qual_id, 11131 bcm_field_data_ethertype_t * etype) 11132 { 11133 return bcm_field_data_qualifier_ethertype_add( 11134 BCM_CONTROL(unit)->unit, 11135 qual_id, 11136 etype); 11137 } 11138 11139 int 11140 bcm_loop_field_data_qualifier_ethertype_delete( 11141 int unit, 11142 int qual_id, 11143 bcm_field_data_ethertype_t * etype) 11144 { 11145 return bcm_field_data_qualifier_ethertype_delete( 11146 BCM_CONTROL(unit)->unit, 11147 qual_id, 11148 etype); 11149 } 11150 11151 int 11152 bcm_loop_field_data_qualifier_get( 11153 int unit, 11154 int qual_id, 11155 bcm_field_data_qualifier_t * qual) 11156 { 11157 return bcm_field_data_qualifier_get( 11158 BCM_CONTROL(unit)->unit, 11159 qual_id, 11160 qual); 11161 } 11162 11163 int 11164 bcm_loop_field_data_qualifier_ip_protocol_add( 11165 int unit, 11166 int qual_id, 11167 bcm_field_data_ip_protocol_t * ip_protocol) 11168 { 11169 return bcm_field_data_qualifier_ip_protocol_add( 11170 BCM_CONTROL(unit)->unit, 11171 qual_id, 11172 ip_protocol); 11173 } 11174 11175 int 11176 bcm_loop_field_data_qualifier_ip_protocol_delete( 11177 int unit, 11178 int qual_id, 11179 bcm_field_data_ip_protocol_t * ip_protocol) 11180 { 11181 return bcm_field_data_qualifier_ip_protocol_delete( 11182 BCM_CONTROL(unit)->unit, 11183 qual_id, 11184 ip_protocol); 11185 } 11186 11187 int 11188 bcm_loop_field_data_qualifier_multi_get( 11189 int unit, 11190 int qual_size, 11191 int * qual_array, 11192 int * qual_count) 11193 { 11194 return bcm_field_data_qualifier_multi_get( 11195 BCM_CONTROL(unit)->unit, 11196 qual_size, 11197 qual_array, 11198 qual_count); 11199 } 11200 11201 int 11202 bcm_loop_field_data_qualifier_packet_format_add( 11203 int unit, 11204 int qual_id, 11205 bcm_field_data_packet_format_t * packet_format) 11206 { 11207 return bcm_field_data_qualifier_packet_format_add( 11208 BCM_CONTROL(unit)->unit, 11209 qual_id, 11210 packet_format); 11211 } 11212 11213 int 11214 bcm_loop_field_data_qualifier_packet_format_delete( 11215 int unit, 11216 int qual_id, 11217 bcm_field_data_packet_format_t * packet_format) 11218 { 11219 return bcm_field_data_qualifier_packet_format_delete( 11220 BCM_CONTROL(unit)->unit, 11221 qual_id, 11222 packet_format); 11223 } 11224 11225 /* bcm_field_data_qualifier_t_init not dispatchable */ 11226 11227 int 11228 bcm_loop_field_detach( 11229 int unit) 11230 { 11231 return bcm_field_detach( 11232 BCM_CONTROL(unit)->unit); 11233 } 11234 11235 int 11236 bcm_loop_field_direct_extraction_action_add( 11237 int unit, 11238 bcm_field_entry_t entry, 11239 bcm_field_extraction_action_t action, 11240 int count, 11241 bcm_field_extraction_field_t * extractions) 11242 { 11243 return bcm_field_direct_extraction_action_add( 11244 BCM_CONTROL(unit)->unit, 11245 entry, 11246 action, 11247 count, 11248 extractions); 11249 } 11250 11251 int 11252 bcm_loop_field_direct_extraction_action_get( 11253 int unit, 11254 bcm_field_entry_t entry, 11255 bcm_field_extraction_action_t * action, 11256 int max_count, 11257 bcm_field_extraction_field_t * extractions, 11258 int * actual_count) 11259 { 11260 return bcm_field_direct_extraction_action_get( 11261 BCM_CONTROL(unit)->unit, 11262 entry, 11263 action, 11264 max_count, 11265 extractions, 11266 actual_count); 11267 } 11268 11269 int 11270 bcm_loop_field_entry_add( 11271 int unit, 11272 uint32 flags, 11273 bcm_field_group_t fg_id, 11274 bcm_field_entry_info_t * entry_info, 11275 bcm_field_entry_t * entry_handle) 11276 { 11277 return bcm_field_entry_add( 11278 BCM_CONTROL(unit)->unit, 11279 flags, 11280 fg_id, 11281 entry_info, 11282 entry_handle); 11283 } 11284 11285 int 11286 bcm_loop_field_entry_config_copy( 11287 int unit, 11288 bcm_field_entry_t src_entry, 11289 bcm_field_entry_t * dst_entry, 11290 uint32 flags) 11291 { 11292 return bcm_field_entry_config_copy( 11293 BCM_CONTROL(unit)->unit, 11294 src_entry, 11295 dst_entry, 11296 flags); 11297 } 11298 11299 int 11300 bcm_loop_field_entry_copy( 11301 int unit, 11302 bcm_field_entry_t src_entry, 11303 bcm_field_entry_t * dst_entry) 11304 { 11305 return bcm_field_entry_copy( 11306 BCM_CONTROL(unit)->unit, 11307 src_entry, 11308 dst_entry); 11309 } 11310 11311 int 11312 bcm_loop_field_entry_copy_id( 11313 int unit, 11314 bcm_field_entry_t src_entry, 11315 bcm_field_entry_t dst_entry) 11316 { 11317 return bcm_field_entry_copy_id( 11318 BCM_CONTROL(unit)->unit, 11319 src_entry, 11320 dst_entry); 11321 } 11322 11323 int 11324 bcm_loop_field_entry_create( 11325 int unit, 11326 bcm_field_group_t group, 11327 bcm_field_entry_t * entry) 11328 { 11329 return bcm_field_entry_create( 11330 BCM_CONTROL(unit)->unit, 11331 group, 11332 entry); 11333 } 11334 11335 int 11336 bcm_loop_field_entry_create_id( 11337 int unit, 11338 bcm_field_group_t group, 11339 bcm_field_entry_t entry) 11340 { 11341 return bcm_field_entry_create_id( 11342 BCM_CONTROL(unit)->unit, 11343 group, 11344 entry); 11345 } 11346 11347 int 11348 bcm_loop_field_entry_delete( 11349 int unit, 11350 bcm_field_group_t fg_id, 11351 bcm_field_entry_qual_t entry_qual_info[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP], 11352 bcm_field_entry_t entry_handle) 11353 { 11354 return bcm_field_entry_delete( 11355 BCM_CONTROL(unit)->unit, 11356 fg_id, 11357 entry_qual_info, 11358 entry_handle); 11359 } 11360 11361 int 11362 bcm_loop_field_entry_delete_all( 11363 int unit) 11364 { 11365 return bcm_field_entry_delete_all( 11366 BCM_CONTROL(unit)->unit); 11367 } 11368 11369 int 11370 bcm_loop_field_entry_destroy( 11371 int unit, 11372 bcm_field_entry_t entry) 11373 { 11374 return bcm_field_entry_destroy( 11375 BCM_CONTROL(unit)->unit, 11376 entry); 11377 } 11378 11379 int 11380 bcm_loop_field_entry_destroy_all( 11381 int unit) 11382 { 11383 return bcm_field_entry_destroy_all( 11384 BCM_CONTROL(unit)->unit); 11385 } 11386 11387 #ifdef BROADCOM_DEBUG 11388 11389 int 11390 bcm_loop_field_entry_dump( 11391 int unit, 11392 bcm_field_entry_t entry) 11393 { 11394 return bcm_field_entry_dump( 11395 BCM_CONTROL(unit)->unit, 11396 entry); 11397 } 11398 11399 #endif /* BROADCOM_DEBUG */ 11400 11401 int 11402 bcm_loop_field_entry_enable_get( 11403 int unit, 11404 bcm_field_entry_t entry, 11405 int * enable_flag) 11406 { 11407 return bcm_field_entry_enable_get( 11408 BCM_CONTROL(unit)->unit, 11409 entry, 11410 enable_flag); 11411 } 11412 11413 int 11414 bcm_loop_field_entry_enable_set( 11415 int unit, 11416 bcm_field_entry_t entry, 11417 int enable_flag) 11418 { 11419 return bcm_field_entry_enable_set( 11420 BCM_CONTROL(unit)->unit, 11421 entry, 11422 enable_flag); 11423 } 11424 11425 int 11426 bcm_loop_field_entry_hit_flush( 11427 int unit, 11428 uint32 flags, 11429 bcm_field_entry_t entry_handle) 11430 { 11431 return bcm_field_entry_hit_flush( 11432 BCM_CONTROL(unit)->unit, 11433 flags, 11434 entry_handle); 11435 } 11436 11437 int 11438 bcm_loop_field_entry_hit_get( 11439 int unit, 11440 uint32 flags, 11441 bcm_field_entry_t entry_handle, 11442 uint8 * entry_hit_core_bmp) 11443 { 11444 return bcm_field_entry_hit_get( 11445 BCM_CONTROL(unit)->unit, 11446 flags, 11447 entry_handle, 11448 entry_hit_core_bmp); 11449 } 11450 11451 int 11452 bcm_loop_field_entry_info_get( 11453 int unit, 11454 bcm_field_group_t fg_id, 11455 bcm_field_entry_t entry_handle, 11456 bcm_field_entry_info_t * entry_info) 11457 { 11458 return bcm_field_entry_info_get( 11459 BCM_CONTROL(unit)->unit, 11460 fg_id, 11461 entry_handle, 11462 entry_info); 11463 } 11464 11465 /* bcm_field_entry_info_t_init not dispatchable */ 11466 11467 int 11468 bcm_loop_field_entry_install( 11469 int unit, 11470 bcm_field_entry_t entry) 11471 { 11472 return bcm_field_entry_install( 11473 BCM_CONTROL(unit)->unit, 11474 entry); 11475 } 11476 11477 int 11478 bcm_loop_field_entry_install_and_handler_update( 11479 int unit, 11480 bcm_field_entry_t entry, 11481 bcm_field_entry_t * large_dt_entry) 11482 { 11483 return bcm_field_entry_install_and_handler_update( 11484 BCM_CONTROL(unit)->unit, 11485 entry, 11486 large_dt_entry); 11487 } 11488 11489 int 11490 bcm_loop_field_entry_multi_get( 11491 int unit, 11492 bcm_field_group_t group, 11493 int entry_size, 11494 bcm_field_entry_t * entry_array, 11495 int * entry_count) 11496 { 11497 return bcm_field_entry_multi_get( 11498 BCM_CONTROL(unit)->unit, 11499 group, 11500 entry_size, 11501 entry_array, 11502 entry_count); 11503 } 11504 11505 /* bcm_field_entry_oper_t_init not dispatchable */ 11506 11507 int 11508 bcm_loop_field_entry_operation( 11509 int unit, 11510 bcm_field_entry_oper_t * entry_oper) 11511 { 11512 return bcm_field_entry_operation( 11513 BCM_CONTROL(unit)->unit, 11514 entry_oper); 11515 } 11516 11517 int 11518 bcm_loop_field_entry_policer_attach( 11519 int unit, 11520 bcm_field_entry_t entry_id, 11521 int level, 11522 bcm_policer_t policer_id) 11523 { 11524 return bcm_field_entry_policer_attach( 11525 BCM_CONTROL(unit)->unit, 11526 entry_id, 11527 level, 11528 policer_id); 11529 } 11530 11531 int 11532 bcm_loop_field_entry_policer_detach( 11533 int unit, 11534 bcm_field_entry_t entry_id, 11535 int level) 11536 { 11537 return bcm_field_entry_policer_detach( 11538 BCM_CONTROL(unit)->unit, 11539 entry_id, 11540 level); 11541 } 11542 11543 int 11544 bcm_loop_field_entry_policer_detach_all( 11545 int unit, 11546 bcm_field_entry_t entry_id) 11547 { 11548 return bcm_field_entry_policer_detach_all( 11549 BCM_CONTROL(unit)->unit, 11550 entry_id); 11551 } 11552 11553 int 11554 bcm_loop_field_entry_policer_get( 11555 int unit, 11556 bcm_field_entry_t entry_id, 11557 int level, 11558 bcm_policer_t * policer_id) 11559 { 11560 return bcm_field_entry_policer_get( 11561 BCM_CONTROL(unit)->unit, 11562 entry_id, 11563 level, 11564 policer_id); 11565 } 11566 11567 int 11568 bcm_loop_field_entry_prio_get( 11569 int unit, 11570 bcm_field_entry_t entry, 11571 int * prio) 11572 { 11573 return bcm_field_entry_prio_get( 11574 BCM_CONTROL(unit)->unit, 11575 entry, 11576 prio); 11577 } 11578 11579 int 11580 bcm_loop_field_entry_prio_set( 11581 int unit, 11582 bcm_field_entry_t entry, 11583 int prio) 11584 { 11585 return bcm_field_entry_prio_set( 11586 BCM_CONTROL(unit)->unit, 11587 entry, 11588 prio); 11589 } 11590 11591 /* bcm_field_entry_qual_t_init not dispatchable */ 11592 11593 int 11594 bcm_loop_field_entry_reinstall( 11595 int unit, 11596 bcm_field_entry_t entry) 11597 { 11598 return bcm_field_entry_reinstall( 11599 BCM_CONTROL(unit)->unit, 11600 entry); 11601 } 11602 11603 int 11604 bcm_loop_field_entry_remove( 11605 int unit, 11606 bcm_field_entry_t entry) 11607 { 11608 return bcm_field_entry_remove( 11609 BCM_CONTROL(unit)->unit, 11610 entry); 11611 } 11612 11613 int 11614 bcm_loop_field_entry_stat_attach( 11615 int unit, 11616 bcm_field_entry_t entry, 11617 int stat_id) 11618 { 11619 return bcm_field_entry_stat_attach( 11620 BCM_CONTROL(unit)->unit, 11621 entry, 11622 stat_id); 11623 } 11624 11625 int 11626 bcm_loop_field_entry_stat_detach( 11627 int unit, 11628 bcm_field_entry_t entry, 11629 int stat_id) 11630 { 11631 return bcm_field_entry_stat_detach( 11632 BCM_CONTROL(unit)->unit, 11633 entry, 11634 stat_id); 11635 } 11636 11637 int 11638 bcm_loop_field_entry_stat_extended_attach( 11639 int unit, 11640 bcm_field_entry_t entry, 11641 int stat_id, 11642 bcm_field_stat_action_t stat_action) 11643 { 11644 return bcm_field_entry_stat_extended_attach( 11645 BCM_CONTROL(unit)->unit, 11646 entry, 11647 stat_id, 11648 stat_action); 11649 } 11650 11651 int 11652 bcm_loop_field_entry_stat_extended_get( 11653 int unit, 11654 bcm_field_entry_t entry, 11655 int * stat_id, 11656 bcm_field_stat_action_t * stat_action) 11657 { 11658 return bcm_field_entry_stat_extended_get( 11659 BCM_CONTROL(unit)->unit, 11660 entry, 11661 stat_id, 11662 stat_action); 11663 } 11664 11665 int 11666 bcm_loop_field_entry_stat_get( 11667 int unit, 11668 bcm_field_entry_t entry, 11669 int * stat_id) 11670 { 11671 return bcm_field_entry_stat_get( 11672 BCM_CONTROL(unit)->unit, 11673 entry, 11674 stat_id); 11675 } 11676 11677 /* bcm_field_extraction_action_t_init not dispatchable */ 11678 11679 /* bcm_field_extraction_field_t_init not dispatchable */ 11680 11681 int 11682 bcm_loop_field_fem_action_add( 11683 int unit, 11684 uint32 flags, 11685 bcm_field_group_t fg_id, 11686 bcm_field_action_priority_t encoded_position, 11687 bcm_field_fem_action_info_t * fem_action_info) 11688 { 11689 return bcm_field_fem_action_add( 11690 BCM_CONTROL(unit)->unit, 11691 flags, 11692 fg_id, 11693 encoded_position, 11694 fem_action_info); 11695 } 11696 11697 int 11698 bcm_loop_field_fem_action_delete( 11699 int unit, 11700 bcm_field_group_t fg_id, 11701 bcm_field_action_priority_t bcm_field_action_priority_t) 11702 { 11703 return bcm_field_fem_action_delete( 11704 BCM_CONTROL(unit)->unit, 11705 fg_id, 11706 bcm_field_action_priority_t); 11707 } 11708 11709 int 11710 bcm_loop_field_fem_action_info_get( 11711 int unit, 11712 bcm_field_group_t fg_id, 11713 bcm_field_action_priority_t encoded_position, 11714 bcm_field_fem_action_info_t * fem_action_info) 11715 { 11716 return bcm_field_fem_action_info_get( 11717 BCM_CONTROL(unit)->unit, 11718 fg_id, 11719 encoded_position, 11720 fem_action_info); 11721 } 11722 11723 /* bcm_field_fem_action_info_t_init not dispatchable */ 11724 11725 int 11726 bcm_loop_field_group_action_get( 11727 int unit, 11728 bcm_field_group_t group, 11729 bcm_field_aset_t * aset) 11730 { 11731 return bcm_field_group_action_get( 11732 BCM_CONTROL(unit)->unit, 11733 group, 11734 aset); 11735 } 11736 11737 int 11738 bcm_loop_field_group_action_offset_get( 11739 int unit, 11740 uint32 flags, 11741 bcm_field_group_t fg_id, 11742 bcm_field_action_t action, 11743 int * offset) 11744 { 11745 return bcm_field_group_action_offset_get( 11746 BCM_CONTROL(unit)->unit, 11747 flags, 11748 fg_id, 11749 action, 11750 offset); 11751 } 11752 11753 int 11754 bcm_loop_field_group_action_set( 11755 int unit, 11756 bcm_field_group_t group, 11757 bcm_field_aset_t aset) 11758 { 11759 return bcm_field_group_action_set( 11760 BCM_CONTROL(unit)->unit, 11761 group, 11762 aset); 11763 } 11764 11765 int 11766 bcm_loop_field_group_add( 11767 int unit, 11768 uint32 flags, 11769 bcm_field_group_info_t * fg_info, 11770 bcm_field_group_t * fg_id) 11771 { 11772 return bcm_field_group_add( 11773 BCM_CONTROL(unit)->unit, 11774 flags, 11775 fg_info, 11776 fg_id); 11777 } 11778 11779 /* bcm_field_group_attach_info_t_init not dispatchable */ 11780 11781 int 11782 bcm_loop_field_group_compress( 11783 int unit, 11784 bcm_field_group_t group) 11785 { 11786 return bcm_field_group_compress( 11787 BCM_CONTROL(unit)->unit, 11788 group); 11789 } 11790 11791 int 11792 bcm_loop_field_group_config_create( 11793 int unit, 11794 bcm_field_group_config_t * group_config) 11795 { 11796 return bcm_field_group_config_create( 11797 BCM_CONTROL(unit)->unit, 11798 group_config); 11799 } 11800 11801 int 11802 bcm_loop_field_group_config_extension_create( 11803 int unit, 11804 bcm_field_group_config_extension_t * group_config) 11805 { 11806 return bcm_field_group_config_extension_create( 11807 BCM_CONTROL(unit)->unit, 11808 group_config); 11809 } 11810 11811 /* bcm_field_group_config_extension_t_init not dispatchable */ 11812 11813 /* bcm_field_group_config_t_init not dispatchable */ 11814 11815 int 11816 bcm_loop_field_group_config_validate( 11817 int unit, 11818 bcm_field_group_config_t * group_config, 11819 bcm_field_group_mode_t * mode) 11820 { 11821 return bcm_field_group_config_validate( 11822 BCM_CONTROL(unit)->unit, 11823 group_config, 11824 mode); 11825 } 11826 11827 int 11828 bcm_loop_field_group_context_attach( 11829 int unit, 11830 uint32 flags, 11831 bcm_field_group_t fg_id, 11832 bcm_field_context_t context_id, 11833 bcm_field_group_attach_info_t * attach_info) 11834 { 11835 return bcm_field_group_context_attach( 11836 BCM_CONTROL(unit)->unit, 11837 flags, 11838 fg_id, 11839 context_id, 11840 attach_info); 11841 } 11842 11843 int 11844 bcm_loop_field_group_context_detach( 11845 int unit, 11846 bcm_field_group_t fg_id, 11847 bcm_field_context_t context_id) 11848 { 11849 return bcm_field_group_context_detach( 11850 BCM_CONTROL(unit)->unit, 11851 fg_id, 11852 context_id); 11853 } 11854 11855 int 11856 bcm_loop_field_group_context_info_get( 11857 int unit, 11858 bcm_field_group_t fg_id, 11859 bcm_field_context_t context_id, 11860 bcm_field_group_attach_info_t * attach_info) 11861 { 11862 return bcm_field_group_context_info_get( 11863 BCM_CONTROL(unit)->unit, 11864 fg_id, 11865 context_id, 11866 attach_info); 11867 } 11868 11869 int 11870 bcm_loop_field_group_create( 11871 int unit, 11872 bcm_field_qset_t qset, 11873 int pri, 11874 bcm_field_group_t * group) 11875 { 11876 return bcm_field_group_create( 11877 BCM_CONTROL(unit)->unit, 11878 qset, 11879 pri, 11880 group); 11881 } 11882 11883 int 11884 bcm_loop_field_group_create_id( 11885 int unit, 11886 bcm_field_qset_t qset, 11887 int pri, 11888 bcm_field_group_t group) 11889 { 11890 return bcm_field_group_create_id( 11891 BCM_CONTROL(unit)->unit, 11892 qset, 11893 pri, 11894 group); 11895 } 11896 11897 int 11898 bcm_loop_field_group_create_mode( 11899 int unit, 11900 bcm_field_qset_t qset, 11901 int pri, 11902 bcm_field_group_mode_t mode, 11903 bcm_field_group_t * group) 11904 { 11905 return bcm_field_group_create_mode( 11906 BCM_CONTROL(unit)->unit, 11907 qset, 11908 pri, 11909 mode, 11910 group); 11911 } 11912 11913 int 11914 bcm_loop_field_group_create_mode_id( 11915 int unit, 11916 bcm_field_qset_t qset, 11917 int pri, 11918 bcm_field_group_mode_t mode, 11919 bcm_field_group_t group) 11920 { 11921 return bcm_field_group_create_mode_id( 11922 BCM_CONTROL(unit)->unit, 11923 qset, 11924 pri, 11925 mode, 11926 group); 11927 } 11928 11929 int 11930 bcm_loop_field_group_default_entry_get( 11931 int unit, 11932 bcm_field_group_t group, 11933 bcm_field_entry_t * entry) 11934 { 11935 return bcm_field_group_default_entry_get( 11936 BCM_CONTROL(unit)->unit, 11937 group, 11938 entry); 11939 } 11940 11941 int 11942 bcm_loop_field_group_default_entry_set( 11943 int unit, 11944 bcm_field_group_t group, 11945 bcm_field_entry_t entry, 11946 int enable) 11947 { 11948 return bcm_field_group_default_entry_set( 11949 BCM_CONTROL(unit)->unit, 11950 group, 11951 entry, 11952 enable); 11953 } 11954 11955 int 11956 bcm_loop_field_group_delete( 11957 int unit, 11958 bcm_field_group_t fg_id) 11959 { 11960 return bcm_field_group_delete( 11961 BCM_CONTROL(unit)->unit, 11962 fg_id); 11963 } 11964 11965 int 11966 bcm_loop_field_group_destroy( 11967 int unit, 11968 bcm_field_group_t group) 11969 { 11970 return bcm_field_group_destroy( 11971 BCM_CONTROL(unit)->unit, 11972 group); 11973 } 11974 11975 #ifdef BROADCOM_DEBUG 11976 11977 int 11978 bcm_loop_field_group_dump( 11979 int unit, 11980 bcm_field_group_t group) 11981 { 11982 return bcm_field_group_dump( 11983 BCM_CONTROL(unit)->unit, 11984 group); 11985 } 11986 11987 #endif /* BROADCOM_DEBUG */ 11988 11989 int 11990 bcm_loop_field_group_enable_get( 11991 int unit, 11992 bcm_field_group_t group, 11993 int * enable) 11994 { 11995 return bcm_field_group_enable_get( 11996 BCM_CONTROL(unit)->unit, 11997 group, 11998 enable); 11999 } 12000 12001 int 12002 bcm_loop_field_group_enable_set( 12003 int unit, 12004 bcm_field_group_t group, 12005 int enable) 12006 { 12007 return bcm_field_group_enable_set( 12008 BCM_CONTROL(unit)->unit, 12009 group, 12010 enable); 12011 } 12012 12013 int 12014 bcm_loop_field_group_expansion_enable_get( 12015 int unit, 12016 bcm_field_group_t group, 12017 int * enable) 12018 { 12019 return bcm_field_group_expansion_enable_get( 12020 BCM_CONTROL(unit)->unit, 12021 group, 12022 enable); 12023 } 12024 12025 int 12026 bcm_loop_field_group_expansion_enable_set( 12027 int unit, 12028 bcm_field_group_t group, 12029 int enable) 12030 { 12031 return bcm_field_group_expansion_enable_set( 12032 BCM_CONTROL(unit)->unit, 12033 group, 12034 enable); 12035 } 12036 12037 int 12038 bcm_loop_field_group_flush( 12039 int unit, 12040 bcm_field_group_t group) 12041 { 12042 return bcm_field_group_flush( 12043 BCM_CONTROL(unit)->unit, 12044 group); 12045 } 12046 12047 int 12048 bcm_loop_field_group_get( 12049 int unit, 12050 bcm_field_group_t group, 12051 bcm_field_qset_t * qset) 12052 { 12053 return bcm_field_group_get( 12054 BCM_CONTROL(unit)->unit, 12055 group, 12056 qset); 12057 } 12058 12059 int 12060 bcm_loop_field_group_info_get( 12061 int unit, 12062 bcm_field_group_t fg_id, 12063 bcm_field_group_info_t * fg_info) 12064 { 12065 return bcm_field_group_info_get( 12066 BCM_CONTROL(unit)->unit, 12067 fg_id, 12068 fg_info); 12069 } 12070 12071 /* bcm_field_group_info_t_init not dispatchable */ 12072 12073 int 12074 bcm_loop_field_group_install( 12075 int unit, 12076 bcm_field_group_t group) 12077 { 12078 return bcm_field_group_install( 12079 BCM_CONTROL(unit)->unit, 12080 group); 12081 } 12082 12083 int 12084 bcm_loop_field_group_mode_get( 12085 int unit, 12086 bcm_field_group_t group, 12087 bcm_field_group_mode_t * mode) 12088 { 12089 return bcm_field_group_mode_get( 12090 BCM_CONTROL(unit)->unit, 12091 group, 12092 mode); 12093 } 12094 12095 int 12096 bcm_loop_field_group_oper_mode_get( 12097 int unit, 12098 bcm_field_qualify_t stage, 12099 bcm_field_group_oper_mode_t * mode) 12100 { 12101 return bcm_field_group_oper_mode_get( 12102 BCM_CONTROL(unit)->unit, 12103 stage, 12104 mode); 12105 } 12106 12107 int 12108 bcm_loop_field_group_oper_mode_set( 12109 int unit, 12110 bcm_field_qualify_t stage, 12111 bcm_field_group_oper_mode_t mode) 12112 { 12113 return bcm_field_group_oper_mode_set( 12114 BCM_CONTROL(unit)->unit, 12115 stage, 12116 mode); 12117 } 12118 12119 int 12120 bcm_loop_field_group_port_create_mode( 12121 int unit, 12122 bcm_port_t port, 12123 bcm_field_qset_t qset, 12124 int pri, 12125 bcm_field_group_mode_t mode, 12126 bcm_field_group_t * group) 12127 { 12128 return bcm_field_group_port_create_mode( 12129 BCM_CONTROL(unit)->unit, 12130 port, 12131 qset, 12132 pri, 12133 mode, 12134 group); 12135 } 12136 12137 int 12138 bcm_loop_field_group_port_create_mode_id( 12139 int unit, 12140 bcm_port_t port, 12141 bcm_field_qset_t qset, 12142 int pri, 12143 bcm_field_group_mode_t mode, 12144 bcm_field_group_t group) 12145 { 12146 return bcm_field_group_port_create_mode_id( 12147 BCM_CONTROL(unit)->unit, 12148 port, 12149 qset, 12150 pri, 12151 mode, 12152 group); 12153 } 12154 12155 int 12156 bcm_loop_field_group_ports_add( 12157 int unit, 12158 bcm_field_group_t group, 12159 bcm_pbmp_t pbmp) 12160 { 12161 return bcm_field_group_ports_add( 12162 BCM_CONTROL(unit)->unit, 12163 group, 12164 pbmp); 12165 } 12166 12167 int 12168 bcm_loop_field_group_ports_create_mode( 12169 int unit, 12170 bcm_pbmp_t pbmp, 12171 bcm_field_qset_t qset, 12172 int pri, 12173 bcm_field_group_mode_t mode, 12174 bcm_field_group_t * group) 12175 { 12176 return bcm_field_group_ports_create_mode( 12177 BCM_CONTROL(unit)->unit, 12178 pbmp, 12179 qset, 12180 pri, 12181 mode, 12182 group); 12183 } 12184 12185 int 12186 bcm_loop_field_group_ports_create_mode_id( 12187 int unit, 12188 bcm_pbmp_t pbmp, 12189 bcm_field_qset_t qset, 12190 int pri, 12191 bcm_field_group_mode_t mode, 12192 bcm_field_group_t group) 12193 { 12194 return bcm_field_group_ports_create_mode_id( 12195 BCM_CONTROL(unit)->unit, 12196 pbmp, 12197 qset, 12198 pri, 12199 mode, 12200 group); 12201 } 12202 12203 int 12204 bcm_loop_field_group_ports_get( 12205 int unit, 12206 bcm_field_group_t group, 12207 bcm_pbmp_t * pbmp) 12208 { 12209 return bcm_field_group_ports_get( 12210 BCM_CONTROL(unit)->unit, 12211 group, 12212 pbmp); 12213 } 12214 12215 int 12216 bcm_loop_field_group_ports_remove( 12217 int unit, 12218 bcm_field_group_t group, 12219 bcm_pbmp_t pbmp) 12220 { 12221 return bcm_field_group_ports_remove( 12222 BCM_CONTROL(unit)->unit, 12223 group, 12224 pbmp); 12225 } 12226 12227 int 12228 bcm_loop_field_group_presel_get( 12229 int unit, 12230 bcm_field_group_t group, 12231 bcm_field_presel_set_t * presel) 12232 { 12233 return bcm_field_group_presel_get( 12234 BCM_CONTROL(unit)->unit, 12235 group, 12236 presel); 12237 } 12238 12239 /* bcm_field_group_presel_info_init not dispatchable */ 12240 12241 int 12242 bcm_loop_field_group_presel_set( 12243 int unit, 12244 bcm_field_group_t group, 12245 bcm_field_presel_set_t * presel) 12246 { 12247 return bcm_field_group_presel_set( 12248 BCM_CONTROL(unit)->unit, 12249 group, 12250 presel); 12251 } 12252 12253 int 12254 bcm_loop_field_group_priority_get( 12255 int unit, 12256 bcm_field_group_t group, 12257 int * priority) 12258 { 12259 return bcm_field_group_priority_get( 12260 BCM_CONTROL(unit)->unit, 12261 group, 12262 priority); 12263 } 12264 12265 int 12266 bcm_loop_field_group_priority_set( 12267 int unit, 12268 bcm_field_group_t group, 12269 int priority) 12270 { 12271 return bcm_field_group_priority_set( 12272 BCM_CONTROL(unit)->unit, 12273 group, 12274 priority); 12275 } 12276 12277 int 12278 bcm_loop_field_group_qualifier_offset_get( 12279 int unit, 12280 uint32 flags, 12281 bcm_field_group_t fg_id, 12282 bcm_field_qualify_t qualifier, 12283 int * offset) 12284 { 12285 return bcm_field_group_qualifier_offset_get( 12286 BCM_CONTROL(unit)->unit, 12287 flags, 12288 fg_id, 12289 qualifier, 12290 offset); 12291 } 12292 12293 int 12294 bcm_loop_field_group_remove( 12295 int unit, 12296 bcm_field_group_t group) 12297 { 12298 return bcm_field_group_remove( 12299 BCM_CONTROL(unit)->unit, 12300 group); 12301 } 12302 12303 int 12304 bcm_loop_field_group_set( 12305 int unit, 12306 bcm_field_group_t group, 12307 bcm_field_qset_t qset) 12308 { 12309 return bcm_field_group_set( 12310 BCM_CONTROL(unit)->unit, 12311 group, 12312 qset); 12313 } 12314 12315 int 12316 bcm_loop_field_group_status_get( 12317 int unit, 12318 bcm_field_group_t group, 12319 bcm_field_group_status_t * status) 12320 { 12321 return bcm_field_group_status_get( 12322 BCM_CONTROL(unit)->unit, 12323 group, 12324 status); 12325 } 12326 12327 /* bcm_field_group_status_t_init not dispatchable */ 12328 12329 int 12330 bcm_loop_field_group_traverse( 12331 int unit, 12332 bcm_field_group_traverse_cb callback, 12333 void * user_data) 12334 { 12335 return bcm_field_group_traverse( 12336 BCM_CONTROL(unit)->unit, 12337 callback, 12338 user_data); 12339 } 12340 12341 int 12342 bcm_loop_field_group_wlan_create_mode( 12343 int unit, 12344 bcm_field_qset_t qset, 12345 int pri, 12346 bcm_field_group_mode_t mode, 12347 bcm_field_group_t * group) 12348 { 12349 return bcm_field_group_wlan_create_mode( 12350 BCM_CONTROL(unit)->unit, 12351 qset, 12352 pri, 12353 mode, 12354 group); 12355 } 12356 12357 int 12358 bcm_loop_field_group_wlan_create_mode_id( 12359 int unit, 12360 bcm_field_qset_t qset, 12361 int pri, 12362 bcm_field_group_mode_t mode, 12363 bcm_field_group_t group) 12364 { 12365 return bcm_field_group_wlan_create_mode_id( 12366 BCM_CONTROL(unit)->unit, 12367 qset, 12368 pri, 12369 mode, 12370 group); 12371 } 12372 12373 /* bcm_field_hint_t_init not dispatchable */ 12374 12375 int 12376 bcm_loop_field_hints_add( 12377 int unit, 12378 bcm_field_hintid_t hint_id, 12379 bcm_field_hint_t * hint) 12380 { 12381 return bcm_field_hints_add( 12382 BCM_CONTROL(unit)->unit, 12383 hint_id, 12384 hint); 12385 } 12386 12387 int 12388 bcm_loop_field_hints_create( 12389 int unit, 12390 bcm_field_hintid_t * hint_id) 12391 { 12392 return bcm_field_hints_create( 12393 BCM_CONTROL(unit)->unit, 12394 hint_id); 12395 } 12396 12397 int 12398 bcm_loop_field_hints_delete( 12399 int unit, 12400 bcm_field_hintid_t hint_id, 12401 bcm_field_hint_t * hint) 12402 { 12403 return bcm_field_hints_delete( 12404 BCM_CONTROL(unit)->unit, 12405 hint_id, 12406 hint); 12407 } 12408 12409 int 12410 bcm_loop_field_hints_delete_all( 12411 int unit, 12412 bcm_field_hintid_t hint_id) 12413 { 12414 return bcm_field_hints_delete_all( 12415 BCM_CONTROL(unit)->unit, 12416 hint_id); 12417 } 12418 12419 int 12420 bcm_loop_field_hints_destroy( 12421 int unit, 12422 bcm_field_hintid_t hint_id) 12423 { 12424 return bcm_field_hints_destroy( 12425 BCM_CONTROL(unit)->unit, 12426 hint_id); 12427 } 12428 12429 int 12430 bcm_loop_field_hints_get( 12431 int unit, 12432 bcm_field_hintid_t hint_id, 12433 bcm_field_hint_t * hint) 12434 { 12435 return bcm_field_hints_get( 12436 BCM_CONTROL(unit)->unit, 12437 hint_id, 12438 hint); 12439 } 12440 12441 int 12442 bcm_loop_field_init( 12443 int unit) 12444 { 12445 return bcm_field_init( 12446 BCM_CONTROL(unit)->unit); 12447 } 12448 12449 int 12450 bcm_loop_field_internal_to_bcm_action_map( 12451 int unit, 12452 uint32 flags, 12453 int internal_action, 12454 uint32 bcm_action_size, 12455 bcm_field_internal_to_bcm_map_t * bcm_action_stage, 12456 uint32 * bcm_action_size_actual) 12457 { 12458 return bcm_field_internal_to_bcm_action_map( 12459 BCM_CONTROL(unit)->unit, 12460 flags, 12461 internal_action, 12462 bcm_action_size, 12463 bcm_action_stage, 12464 bcm_action_size_actual); 12465 } 12466 12467 /* bcm_field_llc_header_t_init not dispatchable */ 12468 12469 int 12470 bcm_loop_field_macsec_DstMacRange_get( 12471 int unit, 12472 bcm_mac_t * lower_limit, 12473 bcm_mac_t * upper_limit) 12474 { 12475 return bcm_field_macsec_DstMacRange_get( 12476 BCM_CONTROL(unit)->unit, 12477 lower_limit, 12478 upper_limit); 12479 } 12480 12481 int 12482 bcm_loop_field_macsec_DstMacRange_set( 12483 int unit, 12484 bcm_mac_t lower_limit, 12485 bcm_mac_t upper_limit) 12486 { 12487 return bcm_field_macsec_DstMacRange_set( 12488 BCM_CONTROL(unit)->unit, 12489 lower_limit, 12490 upper_limit); 12491 } 12492 12493 int 12494 bcm_loop_field_oam_stat_action_add( 12495 int unit, 12496 bcm_field_entry_t entry, 12497 bcm_field_oam_stat_action_t * oam_stat_action) 12498 { 12499 return bcm_field_oam_stat_action_add( 12500 BCM_CONTROL(unit)->unit, 12501 entry, 12502 oam_stat_action); 12503 } 12504 12505 int 12506 bcm_loop_field_oam_stat_action_delete( 12507 int unit, 12508 bcm_field_entry_t entry, 12509 bcm_field_oam_stat_action_t * oam_stat_action) 12510 { 12511 return bcm_field_oam_stat_action_delete( 12512 BCM_CONTROL(unit)->unit, 12513 entry, 12514 oam_stat_action); 12515 } 12516 12517 int 12518 bcm_loop_field_oam_stat_action_delete_all( 12519 int unit, 12520 bcm_field_entry_t entry) 12521 { 12522 return bcm_field_oam_stat_action_delete_all( 12523 BCM_CONTROL(unit)->unit, 12524 entry); 12525 } 12526 12527 int 12528 bcm_loop_field_oam_stat_action_get( 12529 int unit, 12530 bcm_field_entry_t entry, 12531 bcm_field_oam_stat_action_t * oam_stat_action) 12532 { 12533 return bcm_field_oam_stat_action_get( 12534 BCM_CONTROL(unit)->unit, 12535 entry, 12536 oam_stat_action); 12537 } 12538 12539 int 12540 bcm_loop_field_oam_stat_action_get_all( 12541 int unit, 12542 bcm_field_entry_t entry, 12543 int oam_stat_max, 12544 bcm_field_oam_stat_action_t * oam_stat_action, 12545 int * oam_stat_count) 12546 { 12547 return bcm_field_oam_stat_action_get_all( 12548 BCM_CONTROL(unit)->unit, 12549 entry, 12550 oam_stat_max, 12551 oam_stat_action, 12552 oam_stat_count); 12553 } 12554 12555 /* bcm_field_oam_stat_action_t_init not dispatchable */ 12556 12557 int 12558 bcm_loop_field_presel_config_get( 12559 int unit, 12560 bcm_field_presel_t presel_id, 12561 bcm_field_presel_config_t * presel_config) 12562 { 12563 return bcm_field_presel_config_get( 12564 BCM_CONTROL(unit)->unit, 12565 presel_id, 12566 presel_config); 12567 } 12568 12569 int 12570 bcm_loop_field_presel_config_set( 12571 int unit, 12572 bcm_field_presel_t presel_id, 12573 bcm_field_presel_config_t * presel_config) 12574 { 12575 return bcm_field_presel_config_set( 12576 BCM_CONTROL(unit)->unit, 12577 presel_id, 12578 presel_config); 12579 } 12580 12581 /* bcm_field_presel_config_t_init not dispatchable */ 12582 12583 int 12584 bcm_loop_field_presel_create( 12585 int unit, 12586 bcm_field_presel_t * presel_id) 12587 { 12588 return bcm_field_presel_create( 12589 BCM_CONTROL(unit)->unit, 12590 presel_id); 12591 } 12592 12593 int 12594 bcm_loop_field_presel_create_id( 12595 int unit, 12596 bcm_field_presel_t presel_id) 12597 { 12598 return bcm_field_presel_create_id( 12599 BCM_CONTROL(unit)->unit, 12600 presel_id); 12601 } 12602 12603 int 12604 bcm_loop_field_presel_create_stage_id( 12605 int unit, 12606 bcm_field_stage_t stage, 12607 bcm_field_presel_t presel_id) 12608 { 12609 return bcm_field_presel_create_stage_id( 12610 BCM_CONTROL(unit)->unit, 12611 stage, 12612 presel_id); 12613 } 12614 12615 int 12616 bcm_loop_field_presel_destroy( 12617 int unit, 12618 bcm_field_presel_t presel_id) 12619 { 12620 return bcm_field_presel_destroy( 12621 BCM_CONTROL(unit)->unit, 12622 presel_id); 12623 } 12624 12625 /* bcm_field_presel_entry_data_info_init not dispatchable */ 12626 12627 /* bcm_field_presel_entry_id_info_init not dispatchable */ 12628 12629 int 12630 bcm_loop_field_presel_get( 12631 int unit, 12632 uint32 flags, 12633 bcm_field_presel_entry_id_t * entry_id, 12634 bcm_field_presel_entry_data_t * entry_data) 12635 { 12636 return bcm_field_presel_get( 12637 BCM_CONTROL(unit)->unit, 12638 flags, 12639 entry_id, 12640 entry_data); 12641 } 12642 12643 int 12644 bcm_loop_field_presel_set( 12645 int unit, 12646 uint32 flags, 12647 bcm_field_presel_entry_id_t * entry_id, 12648 bcm_field_presel_entry_data_t * entry_data) 12649 { 12650 return bcm_field_presel_set( 12651 BCM_CONTROL(unit)->unit, 12652 flags, 12653 entry_id, 12654 entry_data); 12655 } 12656 12657 /* bcm_field_presel_set_t_init not dispatchable */ 12658 12659 int 12660 bcm_loop_field_qset_data_qualifier_add( 12661 int unit, 12662 bcm_field_qset_t * qset, 12663 int qual_id) 12664 { 12665 return bcm_field_qset_data_qualifier_add( 12666 BCM_CONTROL(unit)->unit, 12667 qset, 12668 qual_id); 12669 } 12670 12671 int 12672 bcm_loop_field_qset_data_qualifier_delete( 12673 int unit, 12674 bcm_field_qset_t * qset, 12675 int qual_id) 12676 { 12677 return bcm_field_qset_data_qualifier_delete( 12678 BCM_CONTROL(unit)->unit, 12679 qset, 12680 qual_id); 12681 } 12682 12683 int 12684 bcm_loop_field_qset_data_qualifier_get( 12685 int unit, 12686 bcm_field_qset_t qset, 12687 int qual_max, 12688 int * qual_arr, 12689 int * qual_count) 12690 { 12691 return bcm_field_qset_data_qualifier_get( 12692 BCM_CONTROL(unit)->unit, 12693 qset, 12694 qual_max, 12695 qual_arr, 12696 qual_count); 12697 } 12698 12699 int 12700 bcm_loop_field_qset_id_multi_delete( 12701 int unit, 12702 bcm_field_qualify_t qualifier, 12703 int num_objects, 12704 int * object_list, 12705 bcm_field_qset_t * qset) 12706 { 12707 return bcm_field_qset_id_multi_delete( 12708 BCM_CONTROL(unit)->unit, 12709 qualifier, 12710 num_objects, 12711 object_list, 12712 qset); 12713 } 12714 12715 int 12716 bcm_loop_field_qset_id_multi_get( 12717 int unit, 12718 bcm_field_qset_t qset, 12719 bcm_field_qualify_t qualifier, 12720 int max_objects, 12721 int * object_list, 12722 int * count_objects) 12723 { 12724 return bcm_field_qset_id_multi_get( 12725 BCM_CONTROL(unit)->unit, 12726 qset, 12727 qualifier, 12728 max_objects, 12729 object_list, 12730 count_objects); 12731 } 12732 12733 int 12734 bcm_loop_field_qset_id_multi_set( 12735 int unit, 12736 bcm_field_qualify_t qualifier, 12737 int num_objects, 12738 int * object_list, 12739 bcm_field_qset_t * qset) 12740 { 12741 return bcm_field_qset_id_multi_set( 12742 BCM_CONTROL(unit)->unit, 12743 qualifier, 12744 num_objects, 12745 object_list, 12746 qset); 12747 } 12748 12749 /* bcm_field_qset_t_init not dispatchable */ 12750 12751 /* bcm_field_qual_attach_info_t_init not dispatchable */ 12752 12753 int 12754 bcm_loop_field_qualifier_create( 12755 int unit, 12756 uint32 flags, 12757 bcm_field_qualifier_info_create_t * qual_info, 12758 bcm_field_qualify_t * qual_id) 12759 { 12760 return bcm_field_qualifier_create( 12761 BCM_CONTROL(unit)->unit, 12762 flags, 12763 qual_info, 12764 qual_id); 12765 } 12766 12767 int 12768 bcm_loop_field_qualifier_delete( 12769 int unit, 12770 bcm_field_entry_t entry, 12771 bcm_field_qualify_t qual_id) 12772 { 12773 return bcm_field_qualifier_delete( 12774 BCM_CONTROL(unit)->unit, 12775 entry, 12776 qual_id); 12777 } 12778 12779 int 12780 bcm_loop_field_qualifier_destroy( 12781 int unit, 12782 bcm_field_qualify_t qual_id) 12783 { 12784 return bcm_field_qualifier_destroy( 12785 BCM_CONTROL(unit)->unit, 12786 qual_id); 12787 } 12788 12789 /* bcm_field_qualifier_info_create_t_init not dispatchable */ 12790 12791 int 12792 bcm_loop_field_qualifier_info_get( 12793 int unit, 12794 bcm_field_qualify_t qual_id, 12795 bcm_field_stage_t stage, 12796 bcm_field_qualifier_info_get_t * qual_info) 12797 { 12798 return bcm_field_qualifier_info_get( 12799 BCM_CONTROL(unit)->unit, 12800 qual_id, 12801 stage, 12802 qual_info); 12803 } 12804 12805 /* bcm_field_qualifier_info_get_t_init not dispatchable */ 12806 12807 int 12808 bcm_loop_field_qualifier_value_map( 12809 int unit, 12810 bcm_field_stage_t stage, 12811 bcm_field_qualify_t bcm_qual, 12812 uint32 bcm_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS], 12813 uint32 hw_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS]) 12814 { 12815 return bcm_field_qualifier_value_map( 12816 BCM_CONTROL(unit)->unit, 12817 stage, 12818 bcm_qual, 12819 bcm_value, 12820 hw_value); 12821 } 12822 12823 int 12824 bcm_loop_field_qualify_AppType( 12825 int unit, 12826 bcm_field_entry_t entry, 12827 bcm_field_AppType_t type) 12828 { 12829 return bcm_field_qualify_AppType( 12830 BCM_CONTROL(unit)->unit, 12831 entry, 12832 type); 12833 } 12834 12835 int 12836 bcm_loop_field_qualify_AppType_get( 12837 int unit, 12838 bcm_field_entry_t entry, 12839 bcm_field_AppType_t * type) 12840 { 12841 return bcm_field_qualify_AppType_get( 12842 BCM_CONTROL(unit)->unit, 12843 entry, 12844 type); 12845 } 12846 12847 int 12848 bcm_loop_field_qualify_ArpOpcode( 12849 int unit, 12850 bcm_field_entry_t entry, 12851 bcm_field_ArpOpcode_t data) 12852 { 12853 return bcm_field_qualify_ArpOpcode( 12854 BCM_CONTROL(unit)->unit, 12855 entry, 12856 data); 12857 } 12858 12859 int 12860 bcm_loop_field_qualify_ArpOpcode_get( 12861 int unit, 12862 bcm_field_entry_t entry, 12863 bcm_field_ArpOpcode_t * data) 12864 { 12865 return bcm_field_qualify_ArpOpcode_get( 12866 BCM_CONTROL(unit)->unit, 12867 entry, 12868 data); 12869 } 12870 12871 int 12872 bcm_loop_field_qualify_ArpSenderIp4( 12873 int unit, 12874 bcm_field_entry_t entry, 12875 uint32 data, 12876 uint32 mask) 12877 { 12878 return bcm_field_qualify_ArpSenderIp4( 12879 BCM_CONTROL(unit)->unit, 12880 entry, 12881 data, 12882 mask); 12883 } 12884 12885 int 12886 bcm_loop_field_qualify_ArpSenderIp4_get( 12887 int unit, 12888 bcm_field_entry_t entry, 12889 uint32 * data, 12890 uint32 * mask) 12891 { 12892 return bcm_field_qualify_ArpSenderIp4_get( 12893 BCM_CONTROL(unit)->unit, 12894 entry, 12895 data, 12896 mask); 12897 } 12898 12899 int 12900 bcm_loop_field_qualify_ArpTargetIp4( 12901 int unit, 12902 bcm_field_entry_t entry, 12903 uint32 data, 12904 uint32 mask) 12905 { 12906 return bcm_field_qualify_ArpTargetIp4( 12907 BCM_CONTROL(unit)->unit, 12908 entry, 12909 data, 12910 mask); 12911 } 12912 12913 int 12914 bcm_loop_field_qualify_ArpTargetIp4_get( 12915 int unit, 12916 bcm_field_entry_t entry, 12917 uint32 * data, 12918 uint32 * mask) 12919 { 12920 return bcm_field_qualify_ArpTargetIp4_get( 12921 BCM_CONTROL(unit)->unit, 12922 entry, 12923 data, 12924 mask); 12925 } 12926 12927 int 12928 bcm_loop_field_qualify_BfdGoodPkt( 12929 int unit, 12930 bcm_field_entry_t entry, 12931 uint8 data, 12932 uint8 mask) 12933 { 12934 return bcm_field_qualify_BfdGoodPkt( 12935 BCM_CONTROL(unit)->unit, 12936 entry, 12937 data, 12938 mask); 12939 } 12940 12941 int 12942 bcm_loop_field_qualify_BfdGoodPkt_get( 12943 int unit, 12944 bcm_field_entry_t entry, 12945 uint8 * data, 12946 uint8 * mask) 12947 { 12948 return bcm_field_qualify_BfdGoodPkt_get( 12949 BCM_CONTROL(unit)->unit, 12950 entry, 12951 data, 12952 mask); 12953 } 12954 12955 int 12956 bcm_loop_field_qualify_BfdPktVersionOne( 12957 int unit, 12958 bcm_field_entry_t entry, 12959 uint8 data, 12960 uint8 mask) 12961 { 12962 return bcm_field_qualify_BfdPktVersionOne( 12963 BCM_CONTROL(unit)->unit, 12964 entry, 12965 data, 12966 mask); 12967 } 12968 12969 int 12970 bcm_loop_field_qualify_BfdPktVersionOne_get( 12971 int unit, 12972 bcm_field_entry_t entry, 12973 uint8 * data, 12974 uint8 * mask) 12975 { 12976 return bcm_field_qualify_BfdPktVersionOne_get( 12977 BCM_CONTROL(unit)->unit, 12978 entry, 12979 data, 12980 mask); 12981 } 12982 12983 int 12984 bcm_loop_field_qualify_BfdPktWithDstIpLoopbackAddr( 12985 int unit, 12986 bcm_field_entry_t entry, 12987 uint8 data, 12988 uint8 mask) 12989 { 12990 return bcm_field_qualify_BfdPktWithDstIpLoopbackAddr( 12991 BCM_CONTROL(unit)->unit, 12992 entry, 12993 data, 12994 mask); 12995 } 12996 12997 int 12998 bcm_loop_field_qualify_BfdPktWithDstIpLoopbackAddr_get( 12999 int unit, 13000 bcm_field_entry_t entry, 13001 uint8 * data, 13002 uint8 * mask) 13003 { 13004 return bcm_field_qualify_BfdPktWithDstIpLoopbackAddr_get( 13005 BCM_CONTROL(unit)->unit, 13006 entry, 13007 data, 13008 mask); 13009 } 13010 13011 int 13012 bcm_loop_field_qualify_BfdYourDiscriminator( 13013 int unit, 13014 bcm_field_entry_t entry, 13015 uint32 data, 13016 uint32 mask) 13017 { 13018 return bcm_field_qualify_BfdYourDiscriminator( 13019 BCM_CONTROL(unit)->unit, 13020 entry, 13021 data, 13022 mask); 13023 } 13024 13025 int 13026 bcm_loop_field_qualify_BfdYourDiscriminator_get( 13027 int unit, 13028 bcm_field_entry_t entry, 13029 uint32 * data, 13030 uint32 * mask) 13031 { 13032 return bcm_field_qualify_BfdYourDiscriminator_get( 13033 BCM_CONTROL(unit)->unit, 13034 entry, 13035 data, 13036 mask); 13037 } 13038 13039 int 13040 bcm_loop_field_qualify_BypassFilter( 13041 int unit, 13042 bcm_field_entry_t entry, 13043 uint8 data, 13044 uint8 mask) 13045 { 13046 return bcm_field_qualify_BypassFilter( 13047 BCM_CONTROL(unit)->unit, 13048 entry, 13049 data, 13050 mask); 13051 } 13052 13053 int 13054 bcm_loop_field_qualify_BypassFilter32( 13055 int unit, 13056 bcm_field_entry_t entry, 13057 uint32 data, 13058 uint32 mask) 13059 { 13060 return bcm_field_qualify_BypassFilter32( 13061 BCM_CONTROL(unit)->unit, 13062 entry, 13063 data, 13064 mask); 13065 } 13066 13067 int 13068 bcm_loop_field_qualify_BypassFilter32_get( 13069 int unit, 13070 bcm_field_entry_t entry, 13071 uint32 * data, 13072 uint32 * mask) 13073 { 13074 return bcm_field_qualify_BypassFilter32_get( 13075 BCM_CONTROL(unit)->unit, 13076 entry, 13077 data, 13078 mask); 13079 } 13080 13081 int 13082 bcm_loop_field_qualify_BypassFilter_get( 13083 int unit, 13084 bcm_field_entry_t entry, 13085 uint8 * data, 13086 uint8 * mask) 13087 { 13088 return bcm_field_qualify_BypassFilter_get( 13089 BCM_CONTROL(unit)->unit, 13090 entry, 13091 data, 13092 mask); 13093 } 13094 13095 int 13096 bcm_loop_field_qualify_BypassSrcMacFilter( 13097 int unit, 13098 bcm_field_entry_t entry, 13099 uint8 data, 13100 uint8 mask) 13101 { 13102 return bcm_field_qualify_BypassSrcMacFilter( 13103 BCM_CONTROL(unit)->unit, 13104 entry, 13105 data, 13106 mask); 13107 } 13108 13109 int 13110 bcm_loop_field_qualify_BypassSrcMacFilter_get( 13111 int unit, 13112 bcm_field_entry_t entry, 13113 uint8 * data, 13114 uint8 * mask) 13115 { 13116 return bcm_field_qualify_BypassSrcMacFilter_get( 13117 BCM_CONTROL(unit)->unit, 13118 entry, 13119 data, 13120 mask); 13121 } 13122 13123 int 13124 bcm_loop_field_qualify_CapwapHdrRid( 13125 int unit, 13126 bcm_field_entry_t entry, 13127 uint8 data, 13128 uint8 mask) 13129 { 13130 return bcm_field_qualify_CapwapHdrRid( 13131 BCM_CONTROL(unit)->unit, 13132 entry, 13133 data, 13134 mask); 13135 } 13136 13137 int 13138 bcm_loop_field_qualify_CapwapHdrRid_get( 13139 int unit, 13140 bcm_field_entry_t entry, 13141 uint8 * data, 13142 uint8 * mask) 13143 { 13144 return bcm_field_qualify_CapwapHdrRid_get( 13145 BCM_CONTROL(unit)->unit, 13146 entry, 13147 data, 13148 mask); 13149 } 13150 13151 int 13152 bcm_loop_field_qualify_CapwapHdrType( 13153 int unit, 13154 bcm_field_entry_t entry, 13155 uint8 data, 13156 uint8 mask) 13157 { 13158 return bcm_field_qualify_CapwapHdrType( 13159 BCM_CONTROL(unit)->unit, 13160 entry, 13161 data, 13162 mask); 13163 } 13164 13165 int 13166 bcm_loop_field_qualify_CapwapHdrType_get( 13167 int unit, 13168 bcm_field_entry_t entry, 13169 uint8 * data, 13170 uint8 * mask) 13171 { 13172 return bcm_field_qualify_CapwapHdrType_get( 13173 BCM_CONTROL(unit)->unit, 13174 entry, 13175 data, 13176 mask); 13177 } 13178 13179 int 13180 bcm_loop_field_qualify_CapwapPayloadDip( 13181 int unit, 13182 bcm_field_entry_t entry, 13183 bcm_ip_t data, 13184 bcm_ip_t mask) 13185 { 13186 return bcm_field_qualify_CapwapPayloadDip( 13187 BCM_CONTROL(unit)->unit, 13188 entry, 13189 data, 13190 mask); 13191 } 13192 13193 int 13194 bcm_loop_field_qualify_CapwapPayloadDip6( 13195 int unit, 13196 bcm_field_entry_t entry, 13197 bcm_ip6_t data, 13198 bcm_ip6_t mask) 13199 { 13200 return bcm_field_qualify_CapwapPayloadDip6( 13201 BCM_CONTROL(unit)->unit, 13202 entry, 13203 data, 13204 mask); 13205 } 13206 13207 int 13208 bcm_loop_field_qualify_CapwapPayloadDip6_get( 13209 int unit, 13210 bcm_field_entry_t entry, 13211 bcm_ip6_t * data, 13212 bcm_ip6_t * mask) 13213 { 13214 return bcm_field_qualify_CapwapPayloadDip6_get( 13215 BCM_CONTROL(unit)->unit, 13216 entry, 13217 data, 13218 mask); 13219 } 13220 13221 int 13222 bcm_loop_field_qualify_CapwapPayloadDip_get( 13223 int unit, 13224 bcm_field_entry_t entry, 13225 bcm_ip_t * data, 13226 bcm_ip_t * mask) 13227 { 13228 return bcm_field_qualify_CapwapPayloadDip_get( 13229 BCM_CONTROL(unit)->unit, 13230 entry, 13231 data, 13232 mask); 13233 } 13234 13235 int 13236 bcm_loop_field_qualify_CapwapPayloadDstMac( 13237 int unit, 13238 bcm_field_entry_t entry, 13239 bcm_mac_t data, 13240 bcm_mac_t mask) 13241 { 13242 return bcm_field_qualify_CapwapPayloadDstMac( 13243 BCM_CONTROL(unit)->unit, 13244 entry, 13245 data, 13246 mask); 13247 } 13248 13249 int 13250 bcm_loop_field_qualify_CapwapPayloadDstMac_get( 13251 int unit, 13252 bcm_field_entry_t entry, 13253 bcm_mac_t * data, 13254 bcm_mac_t * mask) 13255 { 13256 return bcm_field_qualify_CapwapPayloadDstMac_get( 13257 BCM_CONTROL(unit)->unit, 13258 entry, 13259 data, 13260 mask); 13261 } 13262 13263 int 13264 bcm_loop_field_qualify_CapwapPayloadEtherType( 13265 int unit, 13266 bcm_field_entry_t entry, 13267 uint16 data, 13268 uint16 mask) 13269 { 13270 return bcm_field_qualify_CapwapPayloadEtherType( 13271 BCM_CONTROL(unit)->unit, 13272 entry, 13273 data, 13274 mask); 13275 } 13276 13277 int 13278 bcm_loop_field_qualify_CapwapPayloadEtherType_get( 13279 int unit, 13280 bcm_field_entry_t entry, 13281 uint16 * data, 13282 uint16 * mask) 13283 { 13284 return bcm_field_qualify_CapwapPayloadEtherType_get( 13285 BCM_CONTROL(unit)->unit, 13286 entry, 13287 data, 13288 mask); 13289 } 13290 13291 int 13292 bcm_loop_field_qualify_CapwapPayloadInnerVlan( 13293 int unit, 13294 bcm_field_entry_t entry, 13295 bcm_vlan_t data, 13296 bcm_vlan_t mask) 13297 { 13298 return bcm_field_qualify_CapwapPayloadInnerVlan( 13299 BCM_CONTROL(unit)->unit, 13300 entry, 13301 data, 13302 mask); 13303 } 13304 13305 int 13306 bcm_loop_field_qualify_CapwapPayloadInnerVlanCfi( 13307 int unit, 13308 bcm_field_entry_t entry, 13309 uint8 data, 13310 uint8 mask) 13311 { 13312 return bcm_field_qualify_CapwapPayloadInnerVlanCfi( 13313 BCM_CONTROL(unit)->unit, 13314 entry, 13315 data, 13316 mask); 13317 } 13318 13319 int 13320 bcm_loop_field_qualify_CapwapPayloadInnerVlanCfi_get( 13321 int unit, 13322 bcm_field_entry_t entry, 13323 uint8 * data, 13324 uint8 * mask) 13325 { 13326 return bcm_field_qualify_CapwapPayloadInnerVlanCfi_get( 13327 BCM_CONTROL(unit)->unit, 13328 entry, 13329 data, 13330 mask); 13331 } 13332 13333 int 13334 bcm_loop_field_qualify_CapwapPayloadInnerVlanId( 13335 int unit, 13336 bcm_field_entry_t entry, 13337 bcm_vlan_t data, 13338 bcm_vlan_t mask) 13339 { 13340 return bcm_field_qualify_CapwapPayloadInnerVlanId( 13341 BCM_CONTROL(unit)->unit, 13342 entry, 13343 data, 13344 mask); 13345 } 13346 13347 int 13348 bcm_loop_field_qualify_CapwapPayloadInnerVlanId_get( 13349 int unit, 13350 bcm_field_entry_t entry, 13351 bcm_vlan_t * data, 13352 bcm_vlan_t * mask) 13353 { 13354 return bcm_field_qualify_CapwapPayloadInnerVlanId_get( 13355 BCM_CONTROL(unit)->unit, 13356 entry, 13357 data, 13358 mask); 13359 } 13360 13361 int 13362 bcm_loop_field_qualify_CapwapPayloadInnerVlanPri( 13363 int unit, 13364 bcm_field_entry_t entry, 13365 uint8 data, 13366 uint8 mask) 13367 { 13368 return bcm_field_qualify_CapwapPayloadInnerVlanPri( 13369 BCM_CONTROL(unit)->unit, 13370 entry, 13371 data, 13372 mask); 13373 } 13374 13375 int 13376 bcm_loop_field_qualify_CapwapPayloadInnerVlanPri_get( 13377 int unit, 13378 bcm_field_entry_t entry, 13379 uint8 * data, 13380 uint8 * mask) 13381 { 13382 return bcm_field_qualify_CapwapPayloadInnerVlanPri_get( 13383 BCM_CONTROL(unit)->unit, 13384 entry, 13385 data, 13386 mask); 13387 } 13388 13389 int 13390 bcm_loop_field_qualify_CapwapPayloadInnerVlan_get( 13391 int unit, 13392 bcm_field_entry_t entry, 13393 bcm_vlan_t * data, 13394 bcm_vlan_t * mask) 13395 { 13396 return bcm_field_qualify_CapwapPayloadInnerVlan_get( 13397 BCM_CONTROL(unit)->unit, 13398 entry, 13399 data, 13400 mask); 13401 } 13402 13403 int 13404 bcm_loop_field_qualify_CapwapPayloadIpProtocol( 13405 int unit, 13406 bcm_field_entry_t entry, 13407 uint8 data, 13408 uint8 mask) 13409 { 13410 return bcm_field_qualify_CapwapPayloadIpProtocol( 13411 BCM_CONTROL(unit)->unit, 13412 entry, 13413 data, 13414 mask); 13415 } 13416 13417 int 13418 bcm_loop_field_qualify_CapwapPayloadIpProtocol_get( 13419 int unit, 13420 bcm_field_entry_t entry, 13421 uint8 * data, 13422 uint8 * mask) 13423 { 13424 return bcm_field_qualify_CapwapPayloadIpProtocol_get( 13425 BCM_CONTROL(unit)->unit, 13426 entry, 13427 data, 13428 mask); 13429 } 13430 13431 int 13432 bcm_loop_field_qualify_CapwapPayloadL3HdrParseable( 13433 int unit, 13434 bcm_field_entry_t entry, 13435 uint8 data, 13436 uint8 mask) 13437 { 13438 return bcm_field_qualify_CapwapPayloadL3HdrParseable( 13439 BCM_CONTROL(unit)->unit, 13440 entry, 13441 data, 13442 mask); 13443 } 13444 13445 int 13446 bcm_loop_field_qualify_CapwapPayloadL3HdrParseable_get( 13447 int unit, 13448 bcm_field_entry_t entry, 13449 uint8 * data, 13450 uint8 * mask) 13451 { 13452 return bcm_field_qualify_CapwapPayloadL3HdrParseable_get( 13453 BCM_CONTROL(unit)->unit, 13454 entry, 13455 data, 13456 mask); 13457 } 13458 13459 int 13460 bcm_loop_field_qualify_CapwapPayloadL4DstPort( 13461 int unit, 13462 bcm_field_entry_t entry, 13463 bcm_l4_port_t data, 13464 bcm_l4_port_t mask) 13465 { 13466 return bcm_field_qualify_CapwapPayloadL4DstPort( 13467 BCM_CONTROL(unit)->unit, 13468 entry, 13469 data, 13470 mask); 13471 } 13472 13473 int 13474 bcm_loop_field_qualify_CapwapPayloadL4DstPort_get( 13475 int unit, 13476 bcm_field_entry_t entry, 13477 bcm_l4_port_t * data, 13478 bcm_l4_port_t * mask) 13479 { 13480 return bcm_field_qualify_CapwapPayloadL4DstPort_get( 13481 BCM_CONTROL(unit)->unit, 13482 entry, 13483 data, 13484 mask); 13485 } 13486 13487 int 13488 bcm_loop_field_qualify_CapwapPayloadL4HdrParseable( 13489 int unit, 13490 bcm_field_entry_t entry, 13491 uint8 data, 13492 uint8 mask) 13493 { 13494 return bcm_field_qualify_CapwapPayloadL4HdrParseable( 13495 BCM_CONTROL(unit)->unit, 13496 entry, 13497 data, 13498 mask); 13499 } 13500 13501 int 13502 bcm_loop_field_qualify_CapwapPayloadL4HdrParseable_get( 13503 int unit, 13504 bcm_field_entry_t entry, 13505 uint8 * data, 13506 uint8 * mask) 13507 { 13508 return bcm_field_qualify_CapwapPayloadL4HdrParseable_get( 13509 BCM_CONTROL(unit)->unit, 13510 entry, 13511 data, 13512 mask); 13513 } 13514 13515 int 13516 bcm_loop_field_qualify_CapwapPayloadL4SrcPort( 13517 int unit, 13518 bcm_field_entry_t entry, 13519 bcm_l4_port_t data, 13520 bcm_l4_port_t mask) 13521 { 13522 return bcm_field_qualify_CapwapPayloadL4SrcPort( 13523 BCM_CONTROL(unit)->unit, 13524 entry, 13525 data, 13526 mask); 13527 } 13528 13529 int 13530 bcm_loop_field_qualify_CapwapPayloadL4SrcPort_get( 13531 int unit, 13532 bcm_field_entry_t entry, 13533 bcm_l4_port_t * data, 13534 bcm_l4_port_t * mask) 13535 { 13536 return bcm_field_qualify_CapwapPayloadL4SrcPort_get( 13537 BCM_CONTROL(unit)->unit, 13538 entry, 13539 data, 13540 mask); 13541 } 13542 13543 int 13544 bcm_loop_field_qualify_CapwapPayloadOuterVlan( 13545 int unit, 13546 bcm_field_entry_t entry, 13547 bcm_vlan_t data, 13548 bcm_vlan_t mask) 13549 { 13550 return bcm_field_qualify_CapwapPayloadOuterVlan( 13551 BCM_CONTROL(unit)->unit, 13552 entry, 13553 data, 13554 mask); 13555 } 13556 13557 int 13558 bcm_loop_field_qualify_CapwapPayloadOuterVlanCfi( 13559 int unit, 13560 bcm_field_entry_t entry, 13561 uint8 data, 13562 uint8 mask) 13563 { 13564 return bcm_field_qualify_CapwapPayloadOuterVlanCfi( 13565 BCM_CONTROL(unit)->unit, 13566 entry, 13567 data, 13568 mask); 13569 } 13570 13571 int 13572 bcm_loop_field_qualify_CapwapPayloadOuterVlanCfi_get( 13573 int unit, 13574 bcm_field_entry_t entry, 13575 uint8 * data, 13576 uint8 * mask) 13577 { 13578 return bcm_field_qualify_CapwapPayloadOuterVlanCfi_get( 13579 BCM_CONTROL(unit)->unit, 13580 entry, 13581 data, 13582 mask); 13583 } 13584 13585 int 13586 bcm_loop_field_qualify_CapwapPayloadOuterVlanId( 13587 int unit, 13588 bcm_field_entry_t entry, 13589 bcm_vlan_t data, 13590 bcm_vlan_t mask) 13591 { 13592 return bcm_field_qualify_CapwapPayloadOuterVlanId( 13593 BCM_CONTROL(unit)->unit, 13594 entry, 13595 data, 13596 mask); 13597 } 13598 13599 int 13600 bcm_loop_field_qualify_CapwapPayloadOuterVlanId_get( 13601 int unit, 13602 bcm_field_entry_t entry, 13603 bcm_vlan_t * data, 13604 bcm_vlan_t * mask) 13605 { 13606 return bcm_field_qualify_CapwapPayloadOuterVlanId_get( 13607 BCM_CONTROL(unit)->unit, 13608 entry, 13609 data, 13610 mask); 13611 } 13612 13613 int 13614 bcm_loop_field_qualify_CapwapPayloadOuterVlanPri( 13615 int unit, 13616 bcm_field_entry_t entry, 13617 uint8 data, 13618 uint8 mask) 13619 { 13620 return bcm_field_qualify_CapwapPayloadOuterVlanPri( 13621 BCM_CONTROL(unit)->unit, 13622 entry, 13623 data, 13624 mask); 13625 } 13626 13627 int 13628 bcm_loop_field_qualify_CapwapPayloadOuterVlanPri_get( 13629 int unit, 13630 bcm_field_entry_t entry, 13631 uint8 * data, 13632 uint8 * mask) 13633 { 13634 return bcm_field_qualify_CapwapPayloadOuterVlanPri_get( 13635 BCM_CONTROL(unit)->unit, 13636 entry, 13637 data, 13638 mask); 13639 } 13640 13641 int 13642 bcm_loop_field_qualify_CapwapPayloadOuterVlan_get( 13643 int unit, 13644 bcm_field_entry_t entry, 13645 bcm_vlan_t * data, 13646 bcm_vlan_t * mask) 13647 { 13648 return bcm_field_qualify_CapwapPayloadOuterVlan_get( 13649 BCM_CONTROL(unit)->unit, 13650 entry, 13651 data, 13652 mask); 13653 } 13654 13655 int 13656 bcm_loop_field_qualify_CapwapPayloadSOF( 13657 int unit, 13658 bcm_field_entry_t entry, 13659 uint8 data, 13660 uint8 mask) 13661 { 13662 return bcm_field_qualify_CapwapPayloadSOF( 13663 BCM_CONTROL(unit)->unit, 13664 entry, 13665 data, 13666 mask); 13667 } 13668 13669 int 13670 bcm_loop_field_qualify_CapwapPayloadSOF_get( 13671 int unit, 13672 bcm_field_entry_t entry, 13673 uint8 * data, 13674 uint8 * mask) 13675 { 13676 return bcm_field_qualify_CapwapPayloadSOF_get( 13677 BCM_CONTROL(unit)->unit, 13678 entry, 13679 data, 13680 mask); 13681 } 13682 13683 int 13684 bcm_loop_field_qualify_CapwapPayloadSip( 13685 int unit, 13686 bcm_field_entry_t entry, 13687 bcm_ip_t data, 13688 bcm_ip_t mask) 13689 { 13690 return bcm_field_qualify_CapwapPayloadSip( 13691 BCM_CONTROL(unit)->unit, 13692 entry, 13693 data, 13694 mask); 13695 } 13696 13697 int 13698 bcm_loop_field_qualify_CapwapPayloadSip6( 13699 int unit, 13700 bcm_field_entry_t entry, 13701 bcm_ip6_t data, 13702 bcm_ip6_t mask) 13703 { 13704 return bcm_field_qualify_CapwapPayloadSip6( 13705 BCM_CONTROL(unit)->unit, 13706 entry, 13707 data, 13708 mask); 13709 } 13710 13711 int 13712 bcm_loop_field_qualify_CapwapPayloadSip6_get( 13713 int unit, 13714 bcm_field_entry_t entry, 13715 bcm_ip6_t * data, 13716 bcm_ip6_t * mask) 13717 { 13718 return bcm_field_qualify_CapwapPayloadSip6_get( 13719 BCM_CONTROL(unit)->unit, 13720 entry, 13721 data, 13722 mask); 13723 } 13724 13725 int 13726 bcm_loop_field_qualify_CapwapPayloadSip_get( 13727 int unit, 13728 bcm_field_entry_t entry, 13729 bcm_ip_t * data, 13730 bcm_ip_t * mask) 13731 { 13732 return bcm_field_qualify_CapwapPayloadSip_get( 13733 BCM_CONTROL(unit)->unit, 13734 entry, 13735 data, 13736 mask); 13737 } 13738 13739 int 13740 bcm_loop_field_qualify_CapwapPayloadSrcMac( 13741 int unit, 13742 bcm_field_entry_t entry, 13743 bcm_mac_t data, 13744 bcm_mac_t mask) 13745 { 13746 return bcm_field_qualify_CapwapPayloadSrcMac( 13747 BCM_CONTROL(unit)->unit, 13748 entry, 13749 data, 13750 mask); 13751 } 13752 13753 int 13754 bcm_loop_field_qualify_CapwapPayloadSrcMac_get( 13755 int unit, 13756 bcm_field_entry_t entry, 13757 bcm_mac_t * data, 13758 bcm_mac_t * mask) 13759 { 13760 return bcm_field_qualify_CapwapPayloadSrcMac_get( 13761 BCM_CONTROL(unit)->unit, 13762 entry, 13763 data, 13764 mask); 13765 } 13766 13767 int 13768 bcm_loop_field_qualify_CapwapPayloadTos( 13769 int unit, 13770 bcm_field_entry_t entry, 13771 uint8 data, 13772 uint8 mask) 13773 { 13774 return bcm_field_qualify_CapwapPayloadTos( 13775 BCM_CONTROL(unit)->unit, 13776 entry, 13777 data, 13778 mask); 13779 } 13780 13781 int 13782 bcm_loop_field_qualify_CapwapPayloadTos_get( 13783 int unit, 13784 bcm_field_entry_t entry, 13785 uint8 * data, 13786 uint8 * mask) 13787 { 13788 return bcm_field_qualify_CapwapPayloadTos_get( 13789 BCM_CONTROL(unit)->unit, 13790 entry, 13791 data, 13792 mask); 13793 } 13794 13795 int 13796 bcm_loop_field_qualify_CapwapPayloadVlanFormat( 13797 int unit, 13798 bcm_field_entry_t entry, 13799 uint8 data, 13800 uint8 mask) 13801 { 13802 return bcm_field_qualify_CapwapPayloadVlanFormat( 13803 BCM_CONTROL(unit)->unit, 13804 entry, 13805 data, 13806 mask); 13807 } 13808 13809 int 13810 bcm_loop_field_qualify_CapwapPayloadVlanFormat_get( 13811 int unit, 13812 bcm_field_entry_t entry, 13813 uint8 * data, 13814 uint8 * mask) 13815 { 13816 return bcm_field_qualify_CapwapPayloadVlanFormat_get( 13817 BCM_CONTROL(unit)->unit, 13818 entry, 13819 data, 13820 mask); 13821 } 13822 13823 int 13824 bcm_loop_field_qualify_CascadedKeyValue( 13825 int unit, 13826 bcm_field_entry_t entry, 13827 uint32 data, 13828 uint32 mask) 13829 { 13830 return bcm_field_qualify_CascadedKeyValue( 13831 BCM_CONTROL(unit)->unit, 13832 entry, 13833 data, 13834 mask); 13835 } 13836 13837 int 13838 bcm_loop_field_qualify_CascadedKeyValue_get( 13839 int unit, 13840 bcm_field_entry_t entry, 13841 uint32 * data, 13842 uint32 * mask) 13843 { 13844 return bcm_field_qualify_CascadedKeyValue_get( 13845 BCM_CONTROL(unit)->unit, 13846 entry, 13847 data, 13848 mask); 13849 } 13850 13851 int 13852 bcm_loop_field_qualify_ClassId( 13853 int unit, 13854 bcm_field_entry_t entry, 13855 uint32 data, 13856 uint32 mask) 13857 { 13858 return bcm_field_qualify_ClassId( 13859 BCM_CONTROL(unit)->unit, 13860 entry, 13861 data, 13862 mask); 13863 } 13864 13865 int 13866 bcm_loop_field_qualify_ClassId_get( 13867 int unit, 13868 bcm_field_entry_t entry, 13869 uint32 * data, 13870 uint32 * mask) 13871 { 13872 return bcm_field_qualify_ClassId_get( 13873 BCM_CONTROL(unit)->unit, 13874 entry, 13875 data, 13876 mask); 13877 } 13878 13879 int 13880 bcm_loop_field_qualify_CnTag( 13881 int unit, 13882 bcm_field_entry_t entry, 13883 uint32 data, 13884 uint32 mask) 13885 { 13886 return bcm_field_qualify_CnTag( 13887 BCM_CONTROL(unit)->unit, 13888 entry, 13889 data, 13890 mask); 13891 } 13892 13893 int 13894 bcm_loop_field_qualify_CnTagPresent( 13895 int unit, 13896 bcm_field_entry_t entry, 13897 uint8 data, 13898 uint8 mask) 13899 { 13900 return bcm_field_qualify_CnTagPresent( 13901 BCM_CONTROL(unit)->unit, 13902 entry, 13903 data, 13904 mask); 13905 } 13906 13907 int 13908 bcm_loop_field_qualify_CnTagPresent_get( 13909 int unit, 13910 bcm_field_entry_t entry, 13911 uint8 * data, 13912 uint8 * mask) 13913 { 13914 return bcm_field_qualify_CnTagPresent_get( 13915 BCM_CONTROL(unit)->unit, 13916 entry, 13917 data, 13918 mask); 13919 } 13920 13921 int 13922 bcm_loop_field_qualify_CnTag_get( 13923 int unit, 13924 bcm_field_entry_t entry, 13925 uint32 * data, 13926 uint32 * mask) 13927 { 13928 return bcm_field_qualify_CnTag_get( 13929 BCM_CONTROL(unit)->unit, 13930 entry, 13931 data, 13932 mask); 13933 } 13934 13935 int 13936 bcm_loop_field_qualify_Color( 13937 int unit, 13938 bcm_field_entry_t entry, 13939 uint8 color) 13940 { 13941 return bcm_field_qualify_Color( 13942 BCM_CONTROL(unit)->unit, 13943 entry, 13944 color); 13945 } 13946 13947 int 13948 bcm_loop_field_qualify_Color_get( 13949 int unit, 13950 bcm_field_entry_t entry, 13951 uint8 * color) 13952 { 13953 return bcm_field_qualify_Color_get( 13954 BCM_CONTROL(unit)->unit, 13955 entry, 13956 color); 13957 } 13958 13959 int 13960 bcm_loop_field_qualify_Container( 13961 int unit, 13962 bcm_field_entry_t entry, 13963 uint64 data, 13964 uint64 mask) 13965 { 13966 return bcm_field_qualify_Container( 13967 BCM_CONTROL(unit)->unit, 13968 entry, 13969 data, 13970 mask); 13971 } 13972 13973 int 13974 bcm_loop_field_qualify_Container_get( 13975 int unit, 13976 bcm_field_entry_t entry, 13977 uint64 * data, 13978 uint64 * mask) 13979 { 13980 return bcm_field_qualify_Container_get( 13981 BCM_CONTROL(unit)->unit, 13982 entry, 13983 data, 13984 mask); 13985 } 13986 13987 int 13988 bcm_loop_field_qualify_CosMapSelect( 13989 int unit, 13990 bcm_field_entry_t entry, 13991 bcm_field_cos_map_select_t cos_map_select) 13992 { 13993 return bcm_field_qualify_CosMapSelect( 13994 BCM_CONTROL(unit)->unit, 13995 entry, 13996 cos_map_select); 13997 } 13998 13999 int 14000 bcm_loop_field_qualify_CosMapSelect_get( 14001 int unit, 14002 bcm_field_entry_t entry, 14003 bcm_field_cos_map_select_t * cos_map_select) 14004 { 14005 return bcm_field_qualify_CosMapSelect_get( 14006 BCM_CONTROL(unit)->unit, 14007 entry, 14008 cos_map_select); 14009 } 14010 14011 int 14012 bcm_loop_field_qualify_CpuQueue( 14013 int unit, 14014 bcm_field_entry_t entry, 14015 uint8 data, 14016 uint8 mask) 14017 { 14018 return bcm_field_qualify_CpuQueue( 14019 BCM_CONTROL(unit)->unit, 14020 entry, 14021 data, 14022 mask); 14023 } 14024 14025 int 14026 bcm_loop_field_qualify_CpuQueue_get( 14027 int unit, 14028 bcm_field_entry_t entry, 14029 uint8 * data, 14030 uint8 * mask) 14031 { 14032 return bcm_field_qualify_CpuQueue_get( 14033 BCM_CONTROL(unit)->unit, 14034 entry, 14035 data, 14036 mask); 14037 } 14038 14039 int 14040 bcm_loop_field_qualify_CpuVisibilityPacket( 14041 int unit, 14042 bcm_field_entry_t entry, 14043 uint8 data, 14044 uint8 mask) 14045 { 14046 return bcm_field_qualify_CpuVisibilityPacket( 14047 BCM_CONTROL(unit)->unit, 14048 entry, 14049 data, 14050 mask); 14051 } 14052 14053 int 14054 bcm_loop_field_qualify_CpuVisibilityPacket_get( 14055 int unit, 14056 bcm_field_entry_t entry, 14057 uint8 * data, 14058 uint8 * mask) 14059 { 14060 return bcm_field_qualify_CpuVisibilityPacket_get( 14061 BCM_CONTROL(unit)->unit, 14062 entry, 14063 data, 14064 mask); 14065 } 14066 14067 int 14068 bcm_loop_field_qualify_CustomHeaderData( 14069 int unit, 14070 bcm_field_entry_t entry, 14071 uint32 data, 14072 uint32 mask) 14073 { 14074 return bcm_field_qualify_CustomHeaderData( 14075 BCM_CONTROL(unit)->unit, 14076 entry, 14077 data, 14078 mask); 14079 } 14080 14081 int 14082 bcm_loop_field_qualify_CustomHeaderData_get( 14083 int unit, 14084 bcm_field_entry_t entry, 14085 uint32 * data, 14086 uint32 * mask) 14087 { 14088 return bcm_field_qualify_CustomHeaderData_get( 14089 BCM_CONTROL(unit)->unit, 14090 entry, 14091 data, 14092 mask); 14093 } 14094 14095 int 14096 bcm_loop_field_qualify_CustomHeaderPkt( 14097 int unit, 14098 bcm_field_entry_t entry, 14099 uint8 data, 14100 uint8 mask) 14101 { 14102 return bcm_field_qualify_CustomHeaderPkt( 14103 BCM_CONTROL(unit)->unit, 14104 entry, 14105 data, 14106 mask); 14107 } 14108 14109 int 14110 bcm_loop_field_qualify_CustomHeaderPkt_get( 14111 int unit, 14112 bcm_field_entry_t entry, 14113 uint8 * data, 14114 uint8 * mask) 14115 { 14116 return bcm_field_qualify_CustomHeaderPkt_get( 14117 BCM_CONTROL(unit)->unit, 14118 entry, 14119 data, 14120 mask); 14121 } 14122 14123 int 14124 bcm_loop_field_qualify_DSCP( 14125 int unit, 14126 bcm_field_entry_t entry, 14127 uint8 data, 14128 uint8 mask) 14129 { 14130 return bcm_field_qualify_DSCP( 14131 BCM_CONTROL(unit)->unit, 14132 entry, 14133 data, 14134 mask); 14135 } 14136 14137 int 14138 bcm_loop_field_qualify_DSCP_get( 14139 int unit, 14140 bcm_field_entry_t entry, 14141 uint8 * data, 14142 uint8 * mask) 14143 { 14144 return bcm_field_qualify_DSCP_get( 14145 BCM_CONTROL(unit)->unit, 14146 entry, 14147 data, 14148 mask); 14149 } 14150 14151 int 14152 bcm_loop_field_qualify_Decap( 14153 int unit, 14154 bcm_field_entry_t entry, 14155 bcm_field_decap_t decap) 14156 { 14157 return bcm_field_qualify_Decap( 14158 BCM_CONTROL(unit)->unit, 14159 entry, 14160 decap); 14161 } 14162 14163 int 14164 bcm_loop_field_qualify_Decap_get( 14165 int unit, 14166 bcm_field_entry_t entry, 14167 bcm_field_decap_t * decap) 14168 { 14169 return bcm_field_qualify_Decap_get( 14170 BCM_CONTROL(unit)->unit, 14171 entry, 14172 decap); 14173 } 14174 14175 int 14176 bcm_loop_field_qualify_DestVirtualPortValid( 14177 int unit, 14178 bcm_field_entry_t entry, 14179 uint8 data, 14180 uint8 mask) 14181 { 14182 return bcm_field_qualify_DestVirtualPortValid( 14183 BCM_CONTROL(unit)->unit, 14184 entry, 14185 data, 14186 mask); 14187 } 14188 14189 int 14190 bcm_loop_field_qualify_DestVirtualPortValid_get( 14191 int unit, 14192 bcm_field_entry_t entry, 14193 uint8 * data, 14194 uint8 * mask) 14195 { 14196 return bcm_field_qualify_DestVirtualPortValid_get( 14197 BCM_CONTROL(unit)->unit, 14198 entry, 14199 data, 14200 mask); 14201 } 14202 14203 int 14204 bcm_loop_field_qualify_DevicePortBitmap( 14205 int unit, 14206 bcm_field_entry_t entry, 14207 bcm_pbmp_t data, 14208 bcm_pbmp_t mask) 14209 { 14210 return bcm_field_qualify_DevicePortBitmap( 14211 BCM_CONTROL(unit)->unit, 14212 entry, 14213 data, 14214 mask); 14215 } 14216 14217 int 14218 bcm_loop_field_qualify_DevicePortBitmap_get( 14219 int unit, 14220 bcm_field_entry_t entry, 14221 bcm_pbmp_t * data, 14222 bcm_pbmp_t * mask) 14223 { 14224 return bcm_field_qualify_DevicePortBitmap_get( 14225 BCM_CONTROL(unit)->unit, 14226 entry, 14227 data, 14228 mask); 14229 } 14230 14231 int 14232 bcm_loop_field_qualify_Dhcp( 14233 int unit, 14234 bcm_field_entry_t entry, 14235 uint8 data, 14236 uint8 mask) 14237 { 14238 return bcm_field_qualify_Dhcp( 14239 BCM_CONTROL(unit)->unit, 14240 entry, 14241 data, 14242 mask); 14243 } 14244 14245 int 14246 bcm_loop_field_qualify_Dhcp_get( 14247 int unit, 14248 bcm_field_entry_t entry, 14249 uint8 * data, 14250 uint8 * mask) 14251 { 14252 return bcm_field_qualify_Dhcp_get( 14253 BCM_CONTROL(unit)->unit, 14254 entry, 14255 data, 14256 mask); 14257 } 14258 14259 int 14260 bcm_loop_field_qualify_DosAttack( 14261 int unit, 14262 bcm_field_entry_t entry, 14263 uint8 data, 14264 uint8 mask) 14265 { 14266 return bcm_field_qualify_DosAttack( 14267 BCM_CONTROL(unit)->unit, 14268 entry, 14269 data, 14270 mask); 14271 } 14272 14273 int 14274 bcm_loop_field_qualify_DosAttackEvents( 14275 int unit, 14276 bcm_field_entry_t entry, 14277 uint32 data, 14278 uint32 mask) 14279 { 14280 return bcm_field_qualify_DosAttackEvents( 14281 BCM_CONTROL(unit)->unit, 14282 entry, 14283 data, 14284 mask); 14285 } 14286 14287 int 14288 bcm_loop_field_qualify_DosAttackEvents_get( 14289 int unit, 14290 bcm_field_entry_t entry, 14291 uint32 * data, 14292 uint32 * mask) 14293 { 14294 return bcm_field_qualify_DosAttackEvents_get( 14295 BCM_CONTROL(unit)->unit, 14296 entry, 14297 data, 14298 mask); 14299 } 14300 14301 int 14302 bcm_loop_field_qualify_DosAttack_get( 14303 int unit, 14304 bcm_field_entry_t entry, 14305 uint8 * data, 14306 uint8 * mask) 14307 { 14308 return bcm_field_qualify_DosAttack_get( 14309 BCM_CONTROL(unit)->unit, 14310 entry, 14311 data, 14312 mask); 14313 } 14314 14315 int 14316 bcm_loop_field_qualify_DownMepSatTerminated( 14317 int unit, 14318 bcm_field_entry_t entry, 14319 uint8 data, 14320 uint8 mask) 14321 { 14322 return bcm_field_qualify_DownMepSatTerminated( 14323 BCM_CONTROL(unit)->unit, 14324 entry, 14325 data, 14326 mask); 14327 } 14328 14329 int 14330 bcm_loop_field_qualify_DownMepSatTerminated_get( 14331 int unit, 14332 bcm_field_entry_t entry, 14333 uint8 * data, 14334 uint8 * mask) 14335 { 14336 return bcm_field_qualify_DownMepSatTerminated_get( 14337 BCM_CONTROL(unit)->unit, 14338 entry, 14339 data, 14340 mask); 14341 } 14342 14343 int 14344 bcm_loop_field_qualify_Drop( 14345 int unit, 14346 bcm_field_entry_t entry, 14347 uint8 data, 14348 uint8 mask) 14349 { 14350 return bcm_field_qualify_Drop( 14351 BCM_CONTROL(unit)->unit, 14352 entry, 14353 data, 14354 mask); 14355 } 14356 14357 int 14358 bcm_loop_field_qualify_Drop_get( 14359 int unit, 14360 bcm_field_entry_t entry, 14361 uint8 * data, 14362 uint8 * mask) 14363 { 14364 return bcm_field_qualify_Drop_get( 14365 BCM_CONTROL(unit)->unit, 14366 entry, 14367 data, 14368 mask); 14369 } 14370 14371 int 14372 bcm_loop_field_qualify_DstClassField( 14373 int unit, 14374 bcm_field_entry_t entry, 14375 uint32 data, 14376 uint32 mask) 14377 { 14378 return bcm_field_qualify_DstClassField( 14379 BCM_CONTROL(unit)->unit, 14380 entry, 14381 data, 14382 mask); 14383 } 14384 14385 int 14386 bcm_loop_field_qualify_DstClassField_get( 14387 int unit, 14388 bcm_field_entry_t entry, 14389 uint32 * data, 14390 uint32 * mask) 14391 { 14392 return bcm_field_qualify_DstClassField_get( 14393 BCM_CONTROL(unit)->unit, 14394 entry, 14395 data, 14396 mask); 14397 } 14398 14399 int 14400 bcm_loop_field_qualify_DstClassL2( 14401 int unit, 14402 bcm_field_entry_t entry, 14403 uint32 data, 14404 uint32 mask) 14405 { 14406 return bcm_field_qualify_DstClassL2( 14407 BCM_CONTROL(unit)->unit, 14408 entry, 14409 data, 14410 mask); 14411 } 14412 14413 int 14414 bcm_loop_field_qualify_DstClassL2_get( 14415 int unit, 14416 bcm_field_entry_t entry, 14417 uint32 * data, 14418 uint32 * mask) 14419 { 14420 return bcm_field_qualify_DstClassL2_get( 14421 BCM_CONTROL(unit)->unit, 14422 entry, 14423 data, 14424 mask); 14425 } 14426 14427 int 14428 bcm_loop_field_qualify_DstClassL3( 14429 int unit, 14430 bcm_field_entry_t entry, 14431 uint32 data, 14432 uint32 mask) 14433 { 14434 return bcm_field_qualify_DstClassL3( 14435 BCM_CONTROL(unit)->unit, 14436 entry, 14437 data, 14438 mask); 14439 } 14440 14441 int 14442 bcm_loop_field_qualify_DstClassL3_get( 14443 int unit, 14444 bcm_field_entry_t entry, 14445 uint32 * data, 14446 uint32 * mask) 14447 { 14448 return bcm_field_qualify_DstClassL3_get( 14449 BCM_CONTROL(unit)->unit, 14450 entry, 14451 data, 14452 mask); 14453 } 14454 14455 int 14456 bcm_loop_field_qualify_DstGport( 14457 int unit, 14458 bcm_field_entry_t entry, 14459 bcm_gport_t port_id) 14460 { 14461 return bcm_field_qualify_DstGport( 14462 BCM_CONTROL(unit)->unit, 14463 entry, 14464 port_id); 14465 } 14466 14467 int 14468 bcm_loop_field_qualify_DstGport_get( 14469 int unit, 14470 bcm_field_entry_t entry, 14471 bcm_gport_t * port_id) 14472 { 14473 return bcm_field_qualify_DstGport_get( 14474 BCM_CONTROL(unit)->unit, 14475 entry, 14476 port_id); 14477 } 14478 14479 int 14480 bcm_loop_field_qualify_DstGports( 14481 int unit, 14482 bcm_field_entry_t entry, 14483 bcm_gport_t port_id, 14484 bcm_gport_t port_mask) 14485 { 14486 return bcm_field_qualify_DstGports( 14487 BCM_CONTROL(unit)->unit, 14488 entry, 14489 port_id, 14490 port_mask); 14491 } 14492 14493 int 14494 bcm_loop_field_qualify_DstGports_get( 14495 int unit, 14496 bcm_field_entry_t entry, 14497 bcm_gport_t * port_id, 14498 bcm_gport_t * port_mask) 14499 { 14500 return bcm_field_qualify_DstGports_get( 14501 BCM_CONTROL(unit)->unit, 14502 entry, 14503 port_id, 14504 port_mask); 14505 } 14506 14507 int 14508 bcm_loop_field_qualify_DstHiGig( 14509 int unit, 14510 bcm_field_entry_t entry, 14511 uint8 data, 14512 uint8 mask) 14513 { 14514 return bcm_field_qualify_DstHiGig( 14515 BCM_CONTROL(unit)->unit, 14516 entry, 14517 data, 14518 mask); 14519 } 14520 14521 int 14522 bcm_loop_field_qualify_DstHiGig_get( 14523 int unit, 14524 bcm_field_entry_t entry, 14525 uint8 * data, 14526 uint8 * mask) 14527 { 14528 return bcm_field_qualify_DstHiGig_get( 14529 BCM_CONTROL(unit)->unit, 14530 entry, 14531 data, 14532 mask); 14533 } 14534 14535 int 14536 bcm_loop_field_qualify_DstIp( 14537 int unit, 14538 bcm_field_entry_t entry, 14539 bcm_ip_t data, 14540 bcm_ip_t mask) 14541 { 14542 return bcm_field_qualify_DstIp( 14543 BCM_CONTROL(unit)->unit, 14544 entry, 14545 data, 14546 mask); 14547 } 14548 14549 int 14550 bcm_loop_field_qualify_DstIp6( 14551 int unit, 14552 bcm_field_entry_t entry, 14553 bcm_ip6_t data, 14554 bcm_ip6_t mask) 14555 { 14556 return bcm_field_qualify_DstIp6( 14557 BCM_CONTROL(unit)->unit, 14558 entry, 14559 data, 14560 mask); 14561 } 14562 14563 int 14564 bcm_loop_field_qualify_DstIp6Class( 14565 int unit, 14566 bcm_field_entry_t entry, 14567 bcm_class_t data, 14568 bcm_class_t mask) 14569 { 14570 return bcm_field_qualify_DstIp6Class( 14571 BCM_CONTROL(unit)->unit, 14572 entry, 14573 data, 14574 mask); 14575 } 14576 14577 int 14578 bcm_loop_field_qualify_DstIp6ClassLower( 14579 int unit, 14580 bcm_field_entry_t entry, 14581 bcm_class_t data, 14582 bcm_class_t mask) 14583 { 14584 return bcm_field_qualify_DstIp6ClassLower( 14585 BCM_CONTROL(unit)->unit, 14586 entry, 14587 data, 14588 mask); 14589 } 14590 14591 int 14592 bcm_loop_field_qualify_DstIp6ClassLower_get( 14593 int unit, 14594 bcm_field_entry_t entry, 14595 bcm_class_t * data, 14596 bcm_class_t * mask) 14597 { 14598 return bcm_field_qualify_DstIp6ClassLower_get( 14599 BCM_CONTROL(unit)->unit, 14600 entry, 14601 data, 14602 mask); 14603 } 14604 14605 int 14606 bcm_loop_field_qualify_DstIp6ClassMsbNibble( 14607 int unit, 14608 bcm_field_entry_t entry, 14609 bcm_class_t data, 14610 bcm_class_t mask) 14611 { 14612 return bcm_field_qualify_DstIp6ClassMsbNibble( 14613 BCM_CONTROL(unit)->unit, 14614 entry, 14615 data, 14616 mask); 14617 } 14618 14619 int 14620 bcm_loop_field_qualify_DstIp6ClassMsbNibble_get( 14621 int unit, 14622 bcm_field_entry_t entry, 14623 bcm_class_t * data, 14624 bcm_class_t * mask) 14625 { 14626 return bcm_field_qualify_DstIp6ClassMsbNibble_get( 14627 BCM_CONTROL(unit)->unit, 14628 entry, 14629 data, 14630 mask); 14631 } 14632 14633 int 14634 bcm_loop_field_qualify_DstIp6ClassUpper( 14635 int unit, 14636 bcm_field_entry_t entry, 14637 bcm_class_t data, 14638 bcm_class_t mask) 14639 { 14640 return bcm_field_qualify_DstIp6ClassUpper( 14641 BCM_CONTROL(unit)->unit, 14642 entry, 14643 data, 14644 mask); 14645 } 14646 14647 int 14648 bcm_loop_field_qualify_DstIp6ClassUpper_get( 14649 int unit, 14650 bcm_field_entry_t entry, 14651 bcm_class_t * data, 14652 bcm_class_t * mask) 14653 { 14654 return bcm_field_qualify_DstIp6ClassUpper_get( 14655 BCM_CONTROL(unit)->unit, 14656 entry, 14657 data, 14658 mask); 14659 } 14660 14661 int 14662 bcm_loop_field_qualify_DstIp6Class_get( 14663 int unit, 14664 bcm_field_entry_t entry, 14665 bcm_class_t * data, 14666 bcm_class_t * mask) 14667 { 14668 return bcm_field_qualify_DstIp6Class_get( 14669 BCM_CONTROL(unit)->unit, 14670 entry, 14671 data, 14672 mask); 14673 } 14674 14675 int 14676 bcm_loop_field_qualify_DstIp6High( 14677 int unit, 14678 bcm_field_entry_t entry, 14679 bcm_ip6_t data, 14680 bcm_ip6_t mask) 14681 { 14682 return bcm_field_qualify_DstIp6High( 14683 BCM_CONTROL(unit)->unit, 14684 entry, 14685 data, 14686 mask); 14687 } 14688 14689 int 14690 bcm_loop_field_qualify_DstIp6High_get( 14691 int unit, 14692 bcm_field_entry_t entry, 14693 bcm_ip6_t * data, 14694 bcm_ip6_t * mask) 14695 { 14696 return bcm_field_qualify_DstIp6High_get( 14697 BCM_CONTROL(unit)->unit, 14698 entry, 14699 data, 14700 mask); 14701 } 14702 14703 int 14704 bcm_loop_field_qualify_DstIp6Low( 14705 int unit, 14706 bcm_field_entry_t entry, 14707 bcm_ip6_t data, 14708 bcm_ip6_t mask) 14709 { 14710 return bcm_field_qualify_DstIp6Low( 14711 BCM_CONTROL(unit)->unit, 14712 entry, 14713 data, 14714 mask); 14715 } 14716 14717 int 14718 bcm_loop_field_qualify_DstIp6Low_get( 14719 int unit, 14720 bcm_field_entry_t entry, 14721 bcm_ip6_t * data, 14722 bcm_ip6_t * mask) 14723 { 14724 return bcm_field_qualify_DstIp6Low_get( 14725 BCM_CONTROL(unit)->unit, 14726 entry, 14727 data, 14728 mask); 14729 } 14730 14731 int 14732 bcm_loop_field_qualify_DstIp6_get( 14733 int unit, 14734 bcm_field_entry_t entry, 14735 bcm_ip6_t * data, 14736 bcm_ip6_t * mask) 14737 { 14738 return bcm_field_qualify_DstIp6_get( 14739 BCM_CONTROL(unit)->unit, 14740 entry, 14741 data, 14742 mask); 14743 } 14744 14745 int 14746 bcm_loop_field_qualify_DstIpClass( 14747 int unit, 14748 bcm_field_entry_t entry, 14749 bcm_class_t data, 14750 bcm_class_t mask) 14751 { 14752 return bcm_field_qualify_DstIpClass( 14753 BCM_CONTROL(unit)->unit, 14754 entry, 14755 data, 14756 mask); 14757 } 14758 14759 int 14760 bcm_loop_field_qualify_DstIpClassLower( 14761 int unit, 14762 bcm_field_entry_t entry, 14763 bcm_class_t data, 14764 bcm_class_t mask) 14765 { 14766 return bcm_field_qualify_DstIpClassLower( 14767 BCM_CONTROL(unit)->unit, 14768 entry, 14769 data, 14770 mask); 14771 } 14772 14773 int 14774 bcm_loop_field_qualify_DstIpClassLower_get( 14775 int unit, 14776 bcm_field_entry_t entry, 14777 bcm_class_t * data, 14778 bcm_class_t * mask) 14779 { 14780 return bcm_field_qualify_DstIpClassLower_get( 14781 BCM_CONTROL(unit)->unit, 14782 entry, 14783 data, 14784 mask); 14785 } 14786 14787 int 14788 bcm_loop_field_qualify_DstIpClassMsbNibble( 14789 int unit, 14790 bcm_field_entry_t entry, 14791 bcm_class_t data, 14792 bcm_class_t mask) 14793 { 14794 return bcm_field_qualify_DstIpClassMsbNibble( 14795 BCM_CONTROL(unit)->unit, 14796 entry, 14797 data, 14798 mask); 14799 } 14800 14801 int 14802 bcm_loop_field_qualify_DstIpClassMsbNibble_get( 14803 int unit, 14804 bcm_field_entry_t entry, 14805 bcm_class_t * data, 14806 bcm_class_t * mask) 14807 { 14808 return bcm_field_qualify_DstIpClassMsbNibble_get( 14809 BCM_CONTROL(unit)->unit, 14810 entry, 14811 data, 14812 mask); 14813 } 14814 14815 int 14816 bcm_loop_field_qualify_DstIpClassUpper( 14817 int unit, 14818 bcm_field_entry_t entry, 14819 bcm_class_t data, 14820 bcm_class_t mask) 14821 { 14822 return bcm_field_qualify_DstIpClassUpper( 14823 BCM_CONTROL(unit)->unit, 14824 entry, 14825 data, 14826 mask); 14827 } 14828 14829 int 14830 bcm_loop_field_qualify_DstIpClassUpper_get( 14831 int unit, 14832 bcm_field_entry_t entry, 14833 bcm_class_t * data, 14834 bcm_class_t * mask) 14835 { 14836 return bcm_field_qualify_DstIpClassUpper_get( 14837 BCM_CONTROL(unit)->unit, 14838 entry, 14839 data, 14840 mask); 14841 } 14842 14843 int 14844 bcm_loop_field_qualify_DstIpClass_get( 14845 int unit, 14846 bcm_field_entry_t entry, 14847 bcm_class_t * data, 14848 bcm_class_t * mask) 14849 { 14850 return bcm_field_qualify_DstIpClass_get( 14851 BCM_CONTROL(unit)->unit, 14852 entry, 14853 data, 14854 mask); 14855 } 14856 14857 int 14858 bcm_loop_field_qualify_DstIpLocal( 14859 int unit, 14860 bcm_field_entry_t entry, 14861 uint8 data, 14862 uint8 mask) 14863 { 14864 return bcm_field_qualify_DstIpLocal( 14865 BCM_CONTROL(unit)->unit, 14866 entry, 14867 data, 14868 mask); 14869 } 14870 14871 int 14872 bcm_loop_field_qualify_DstIpLocal_get( 14873 int unit, 14874 bcm_field_entry_t entry, 14875 uint8 * data, 14876 uint8 * mask) 14877 { 14878 return bcm_field_qualify_DstIpLocal_get( 14879 BCM_CONTROL(unit)->unit, 14880 entry, 14881 data, 14882 mask); 14883 } 14884 14885 int 14886 bcm_loop_field_qualify_DstIp_get( 14887 int unit, 14888 bcm_field_entry_t entry, 14889 bcm_ip_t * data, 14890 bcm_ip_t * mask) 14891 { 14892 return bcm_field_qualify_DstIp_get( 14893 BCM_CONTROL(unit)->unit, 14894 entry, 14895 data, 14896 mask); 14897 } 14898 14899 int 14900 bcm_loop_field_qualify_DstL2MulticastGroup( 14901 int unit, 14902 bcm_field_entry_t entry, 14903 bcm_multicast_t group, 14904 bcm_multicast_t mask) 14905 { 14906 return bcm_field_qualify_DstL2MulticastGroup( 14907 BCM_CONTROL(unit)->unit, 14908 entry, 14909 group, 14910 mask); 14911 } 14912 14913 int 14914 bcm_loop_field_qualify_DstL2MulticastGroup_get( 14915 int unit, 14916 bcm_field_entry_t entry, 14917 bcm_multicast_t * group, 14918 bcm_multicast_t * mask) 14919 { 14920 return bcm_field_qualify_DstL2MulticastGroup_get( 14921 BCM_CONTROL(unit)->unit, 14922 entry, 14923 group, 14924 mask); 14925 } 14926 14927 int 14928 bcm_loop_field_qualify_DstL3Egress( 14929 int unit, 14930 bcm_field_entry_t entry, 14931 bcm_if_t if_id) 14932 { 14933 return bcm_field_qualify_DstL3Egress( 14934 BCM_CONTROL(unit)->unit, 14935 entry, 14936 if_id); 14937 } 14938 14939 int 14940 bcm_loop_field_qualify_DstL3EgressNextHops( 14941 int unit, 14942 bcm_field_entry_t entry, 14943 uint32 data, 14944 uint32 mask) 14945 { 14946 return bcm_field_qualify_DstL3EgressNextHops( 14947 BCM_CONTROL(unit)->unit, 14948 entry, 14949 data, 14950 mask); 14951 } 14952 14953 int 14954 bcm_loop_field_qualify_DstL3EgressNextHopsUnderlay( 14955 int unit, 14956 bcm_field_entry_t entry, 14957 uint32 data, 14958 uint32 mask) 14959 { 14960 return bcm_field_qualify_DstL3EgressNextHopsUnderlay( 14961 BCM_CONTROL(unit)->unit, 14962 entry, 14963 data, 14964 mask); 14965 } 14966 14967 int 14968 bcm_loop_field_qualify_DstL3EgressNextHopsUnderlay_get( 14969 int unit, 14970 bcm_field_entry_t entry, 14971 uint32 * data, 14972 uint32 * mask) 14973 { 14974 return bcm_field_qualify_DstL3EgressNextHopsUnderlay_get( 14975 BCM_CONTROL(unit)->unit, 14976 entry, 14977 data, 14978 mask); 14979 } 14980 14981 int 14982 bcm_loop_field_qualify_DstL3EgressNextHops_get( 14983 int unit, 14984 bcm_field_entry_t entry, 14985 uint32 * data, 14986 uint32 * mask) 14987 { 14988 return bcm_field_qualify_DstL3EgressNextHops_get( 14989 BCM_CONTROL(unit)->unit, 14990 entry, 14991 data, 14992 mask); 14993 } 14994 14995 int 14996 bcm_loop_field_qualify_DstL3EgressUnderlay( 14997 int unit, 14998 bcm_field_entry_t entry, 14999 bcm_if_t if_id) 15000 { 15001 return bcm_field_qualify_DstL3EgressUnderlay( 15002 BCM_CONTROL(unit)->unit, 15003 entry, 15004 if_id); 15005 } 15006 15007 int 15008 bcm_loop_field_qualify_DstL3EgressUnderlay_get( 15009 int unit, 15010 bcm_field_entry_t entry, 15011 bcm_if_t * if_id) 15012 { 15013 return bcm_field_qualify_DstL3EgressUnderlay_get( 15014 BCM_CONTROL(unit)->unit, 15015 entry, 15016 if_id); 15017 } 15018 15019 int 15020 bcm_loop_field_qualify_DstL3Egress_get( 15021 int unit, 15022 bcm_field_entry_t entry, 15023 bcm_if_t * if_id) 15024 { 15025 return bcm_field_qualify_DstL3Egress_get( 15026 BCM_CONTROL(unit)->unit, 15027 entry, 15028 if_id); 15029 } 15030 15031 int 15032 bcm_loop_field_qualify_DstL3MulticastGroup( 15033 int unit, 15034 bcm_field_entry_t entry, 15035 bcm_multicast_t group, 15036 bcm_multicast_t mask) 15037 { 15038 return bcm_field_qualify_DstL3MulticastGroup( 15039 BCM_CONTROL(unit)->unit, 15040 entry, 15041 group, 15042 mask); 15043 } 15044 15045 int 15046 bcm_loop_field_qualify_DstL3MulticastGroup_get( 15047 int unit, 15048 bcm_field_entry_t entry, 15049 bcm_multicast_t * group, 15050 bcm_multicast_t * mask) 15051 { 15052 return bcm_field_qualify_DstL3MulticastGroup_get( 15053 BCM_CONTROL(unit)->unit, 15054 entry, 15055 group, 15056 mask); 15057 } 15058 15059 int 15060 bcm_loop_field_qualify_DstMac( 15061 int unit, 15062 bcm_field_entry_t entry, 15063 bcm_mac_t data, 15064 bcm_mac_t mask) 15065 { 15066 return bcm_field_qualify_DstMac( 15067 BCM_CONTROL(unit)->unit, 15068 entry, 15069 data, 15070 mask); 15071 } 15072 15073 int 15074 bcm_loop_field_qualify_DstMac_get( 15075 int unit, 15076 bcm_field_entry_t entry, 15077 bcm_mac_t * data, 15078 bcm_mac_t * mask) 15079 { 15080 return bcm_field_qualify_DstMac_get( 15081 BCM_CONTROL(unit)->unit, 15082 entry, 15083 data, 15084 mask); 15085 } 15086 15087 int 15088 bcm_loop_field_qualify_DstMimGport( 15089 int unit, 15090 bcm_field_entry_t entry, 15091 bcm_gport_t mim_port_id) 15092 { 15093 return bcm_field_qualify_DstMimGport( 15094 BCM_CONTROL(unit)->unit, 15095 entry, 15096 mim_port_id); 15097 } 15098 15099 int 15100 bcm_loop_field_qualify_DstMimGport_get( 15101 int unit, 15102 bcm_field_entry_t entry, 15103 bcm_gport_t * mim_port_id) 15104 { 15105 return bcm_field_qualify_DstMimGport_get( 15106 BCM_CONTROL(unit)->unit, 15107 entry, 15108 mim_port_id); 15109 } 15110 15111 int 15112 bcm_loop_field_qualify_DstMimGports( 15113 int unit, 15114 bcm_field_entry_t entry, 15115 bcm_gport_t mim_port_id, 15116 bcm_gport_t mim_port_mask) 15117 { 15118 return bcm_field_qualify_DstMimGports( 15119 BCM_CONTROL(unit)->unit, 15120 entry, 15121 mim_port_id, 15122 mim_port_mask); 15123 } 15124 15125 int 15126 bcm_loop_field_qualify_DstMimGports_get( 15127 int unit, 15128 bcm_field_entry_t entry, 15129 bcm_gport_t * mim_port_id, 15130 bcm_gport_t * mim_port_mask) 15131 { 15132 return bcm_field_qualify_DstMimGports_get( 15133 BCM_CONTROL(unit)->unit, 15134 entry, 15135 mim_port_id, 15136 mim_port_mask); 15137 } 15138 15139 int 15140 bcm_loop_field_qualify_DstMplsGport( 15141 int unit, 15142 bcm_field_entry_t entry, 15143 bcm_gport_t mpls_port_id) 15144 { 15145 return bcm_field_qualify_DstMplsGport( 15146 BCM_CONTROL(unit)->unit, 15147 entry, 15148 mpls_port_id); 15149 } 15150 15151 int 15152 bcm_loop_field_qualify_DstMplsGport_get( 15153 int unit, 15154 bcm_field_entry_t entry, 15155 bcm_gport_t * mpls_port_id) 15156 { 15157 return bcm_field_qualify_DstMplsGport_get( 15158 BCM_CONTROL(unit)->unit, 15159 entry, 15160 mpls_port_id); 15161 } 15162 15163 int 15164 bcm_loop_field_qualify_DstMplsGports( 15165 int unit, 15166 bcm_field_entry_t entry, 15167 bcm_gport_t mpls_port_id, 15168 bcm_gport_t mpls_port_mask) 15169 { 15170 return bcm_field_qualify_DstMplsGports( 15171 BCM_CONTROL(unit)->unit, 15172 entry, 15173 mpls_port_id, 15174 mpls_port_mask); 15175 } 15176 15177 int 15178 bcm_loop_field_qualify_DstMplsGports_get( 15179 int unit, 15180 bcm_field_entry_t entry, 15181 bcm_gport_t * mpls_port_id, 15182 bcm_gport_t * mpls_port_mask) 15183 { 15184 return bcm_field_qualify_DstMplsGports_get( 15185 BCM_CONTROL(unit)->unit, 15186 entry, 15187 mpls_port_id, 15188 mpls_port_mask); 15189 } 15190 15191 int 15192 bcm_loop_field_qualify_DstMulticastGroup( 15193 int unit, 15194 bcm_field_entry_t entry, 15195 bcm_multicast_t group) 15196 { 15197 return bcm_field_qualify_DstMulticastGroup( 15198 BCM_CONTROL(unit)->unit, 15199 entry, 15200 group); 15201 } 15202 15203 int 15204 bcm_loop_field_qualify_DstMulticastGroup_get( 15205 int unit, 15206 bcm_field_entry_t entry, 15207 bcm_multicast_t * group) 15208 { 15209 return bcm_field_qualify_DstMulticastGroup_get( 15210 BCM_CONTROL(unit)->unit, 15211 entry, 15212 group); 15213 } 15214 15215 int 15216 bcm_loop_field_qualify_DstMulticastGroups( 15217 int unit, 15218 bcm_field_entry_t entry, 15219 bcm_multicast_t group, 15220 bcm_multicast_t mask) 15221 { 15222 return bcm_field_qualify_DstMulticastGroups( 15223 BCM_CONTROL(unit)->unit, 15224 entry, 15225 group, 15226 mask); 15227 } 15228 15229 int 15230 bcm_loop_field_qualify_DstMulticastGroups_get( 15231 int unit, 15232 bcm_field_entry_t entry, 15233 bcm_multicast_t * group, 15234 bcm_multicast_t * mask) 15235 { 15236 return bcm_field_qualify_DstMulticastGroups_get( 15237 BCM_CONTROL(unit)->unit, 15238 entry, 15239 group, 15240 mask); 15241 } 15242 15243 int 15244 bcm_loop_field_qualify_DstMultipath( 15245 int unit, 15246 bcm_field_entry_t entry, 15247 bcm_if_t mpintf) 15248 { 15249 return bcm_field_qualify_DstMultipath( 15250 BCM_CONTROL(unit)->unit, 15251 entry, 15252 mpintf); 15253 } 15254 15255 int 15256 bcm_loop_field_qualify_DstMultipathOverlay( 15257 int unit, 15258 bcm_field_entry_t entry, 15259 bcm_if_t data, 15260 bcm_if_t mask) 15261 { 15262 return bcm_field_qualify_DstMultipathOverlay( 15263 BCM_CONTROL(unit)->unit, 15264 entry, 15265 data, 15266 mask); 15267 } 15268 15269 int 15270 bcm_loop_field_qualify_DstMultipathOverlay_get( 15271 int unit, 15272 bcm_field_entry_t entry, 15273 bcm_if_t * data, 15274 bcm_if_t * mask) 15275 { 15276 return bcm_field_qualify_DstMultipathOverlay_get( 15277 BCM_CONTROL(unit)->unit, 15278 entry, 15279 data, 15280 mask); 15281 } 15282 15283 int 15284 bcm_loop_field_qualify_DstMultipathUnderlay( 15285 int unit, 15286 bcm_field_entry_t entry, 15287 bcm_if_t data, 15288 bcm_if_t mask) 15289 { 15290 return bcm_field_qualify_DstMultipathUnderlay( 15291 BCM_CONTROL(unit)->unit, 15292 entry, 15293 data, 15294 mask); 15295 } 15296 15297 int 15298 bcm_loop_field_qualify_DstMultipathUnderlay_get( 15299 int unit, 15300 bcm_field_entry_t entry, 15301 bcm_if_t * data, 15302 bcm_if_t * mask) 15303 { 15304 return bcm_field_qualify_DstMultipathUnderlay_get( 15305 BCM_CONTROL(unit)->unit, 15306 entry, 15307 data, 15308 mask); 15309 } 15310 15311 int 15312 bcm_loop_field_qualify_DstMultipath_get( 15313 int unit, 15314 bcm_field_entry_t entry, 15315 bcm_if_t * mpintf) 15316 { 15317 return bcm_field_qualify_DstMultipath_get( 15318 BCM_CONTROL(unit)->unit, 15319 entry, 15320 mpintf); 15321 } 15322 15323 int 15324 bcm_loop_field_qualify_DstNivGport( 15325 int unit, 15326 bcm_field_entry_t entry, 15327 bcm_gport_t niv_port_id) 15328 { 15329 return bcm_field_qualify_DstNivGport( 15330 BCM_CONTROL(unit)->unit, 15331 entry, 15332 niv_port_id); 15333 } 15334 15335 int 15336 bcm_loop_field_qualify_DstNivGport_get( 15337 int unit, 15338 bcm_field_entry_t entry, 15339 bcm_gport_t * niv_port_id) 15340 { 15341 return bcm_field_qualify_DstNivGport_get( 15342 BCM_CONTROL(unit)->unit, 15343 entry, 15344 niv_port_id); 15345 } 15346 15347 int 15348 bcm_loop_field_qualify_DstNivGports( 15349 int unit, 15350 bcm_field_entry_t entry, 15351 bcm_gport_t niv_port_id, 15352 bcm_gport_t niv_port_mask) 15353 { 15354 return bcm_field_qualify_DstNivGports( 15355 BCM_CONTROL(unit)->unit, 15356 entry, 15357 niv_port_id, 15358 niv_port_mask); 15359 } 15360 15361 int 15362 bcm_loop_field_qualify_DstNivGports_get( 15363 int unit, 15364 bcm_field_entry_t entry, 15365 bcm_gport_t * niv_port_id, 15366 bcm_gport_t * niv_port_mask) 15367 { 15368 return bcm_field_qualify_DstNivGports_get( 15369 BCM_CONTROL(unit)->unit, 15370 entry, 15371 niv_port_id, 15372 niv_port_mask); 15373 } 15374 15375 int 15376 bcm_loop_field_qualify_DstPort( 15377 int unit, 15378 bcm_field_entry_t entry, 15379 bcm_module_t data_modid, 15380 bcm_module_t mask_modid, 15381 bcm_port_t data_port, 15382 bcm_port_t mask_port) 15383 { 15384 return bcm_field_qualify_DstPort( 15385 BCM_CONTROL(unit)->unit, 15386 entry, 15387 data_modid, 15388 mask_modid, 15389 data_port, 15390 mask_port); 15391 } 15392 15393 int 15394 bcm_loop_field_qualify_DstPortSRLanId( 15395 int unit, 15396 bcm_field_entry_t entry, 15397 uint8 lan_id) 15398 { 15399 return bcm_field_qualify_DstPortSRLanId( 15400 BCM_CONTROL(unit)->unit, 15401 entry, 15402 lan_id); 15403 } 15404 15405 int 15406 bcm_loop_field_qualify_DstPortSRLanId_get( 15407 int unit, 15408 bcm_field_entry_t entry, 15409 uint8 * lan_id) 15410 { 15411 return bcm_field_qualify_DstPortSRLanId_get( 15412 BCM_CONTROL(unit)->unit, 15413 entry, 15414 lan_id); 15415 } 15416 15417 int 15418 bcm_loop_field_qualify_DstPortSRMode( 15419 int unit, 15420 bcm_field_entry_t entry, 15421 bcm_field_sr_port_mode_t type, 15422 uint8 mask) 15423 { 15424 return bcm_field_qualify_DstPortSRMode( 15425 BCM_CONTROL(unit)->unit, 15426 entry, 15427 type, 15428 mask); 15429 } 15430 15431 int 15432 bcm_loop_field_qualify_DstPortSRMode_get( 15433 int unit, 15434 bcm_field_entry_t entry, 15435 bcm_field_sr_port_mode_t * type, 15436 uint8 * mask) 15437 { 15438 return bcm_field_qualify_DstPortSRMode_get( 15439 BCM_CONTROL(unit)->unit, 15440 entry, 15441 type, 15442 mask); 15443 } 15444 15445 int 15446 bcm_loop_field_qualify_DstPortSRNetId( 15447 int unit, 15448 bcm_field_entry_t entry, 15449 uint8 net_id, 15450 uint8 mask) 15451 { 15452 return bcm_field_qualify_DstPortSRNetId( 15453 BCM_CONTROL(unit)->unit, 15454 entry, 15455 net_id, 15456 mask); 15457 } 15458 15459 int 15460 bcm_loop_field_qualify_DstPortSRNetId_get( 15461 int unit, 15462 bcm_field_entry_t entry, 15463 uint8 * net_id, 15464 uint8 * mask) 15465 { 15466 return bcm_field_qualify_DstPortSRNetId_get( 15467 BCM_CONTROL(unit)->unit, 15468 entry, 15469 net_id, 15470 mask); 15471 } 15472 15473 int 15474 bcm_loop_field_qualify_DstPortSRRoleInterlink( 15475 int unit, 15476 bcm_field_entry_t entry, 15477 uint8 data) 15478 { 15479 return bcm_field_qualify_DstPortSRRoleInterlink( 15480 BCM_CONTROL(unit)->unit, 15481 entry, 15482 data); 15483 } 15484 15485 int 15486 bcm_loop_field_qualify_DstPortSRRoleInterlink_get( 15487 int unit, 15488 bcm_field_entry_t entry, 15489 uint8 * data) 15490 { 15491 return bcm_field_qualify_DstPortSRRoleInterlink_get( 15492 BCM_CONTROL(unit)->unit, 15493 entry, 15494 data); 15495 } 15496 15497 int 15498 bcm_loop_field_qualify_DstPortSRType( 15499 int unit, 15500 bcm_field_entry_t entry, 15501 bcm_field_port_sr_type_t type) 15502 { 15503 return bcm_field_qualify_DstPortSRType( 15504 BCM_CONTROL(unit)->unit, 15505 entry, 15506 type); 15507 } 15508 15509 int 15510 bcm_loop_field_qualify_DstPortSRType_get( 15511 int unit, 15512 bcm_field_entry_t entry, 15513 bcm_field_port_sr_type_t * type) 15514 { 15515 return bcm_field_qualify_DstPortSRType_get( 15516 BCM_CONTROL(unit)->unit, 15517 entry, 15518 type); 15519 } 15520 15521 int 15522 bcm_loop_field_qualify_DstPort_get( 15523 int unit, 15524 bcm_field_entry_t entry, 15525 bcm_module_t * data_modid, 15526 bcm_module_t * mask_modid, 15527 bcm_port_t * data_port, 15528 bcm_port_t * mask_port) 15529 { 15530 return bcm_field_qualify_DstPort_get( 15531 BCM_CONTROL(unit)->unit, 15532 entry, 15533 data_modid, 15534 mask_modid, 15535 data_port, 15536 mask_port); 15537 } 15538 15539 int 15540 bcm_loop_field_qualify_DstRpfGport( 15541 int unit, 15542 bcm_field_entry_t entry, 15543 bcm_gport_t data) 15544 { 15545 return bcm_field_qualify_DstRpfGport( 15546 BCM_CONTROL(unit)->unit, 15547 entry, 15548 data); 15549 } 15550 15551 int 15552 bcm_loop_field_qualify_DstRpfGport_get( 15553 int unit, 15554 bcm_field_entry_t entry, 15555 bcm_gport_t * data) 15556 { 15557 return bcm_field_qualify_DstRpfGport_get( 15558 BCM_CONTROL(unit)->unit, 15559 entry, 15560 data); 15561 } 15562 15563 int 15564 bcm_loop_field_qualify_DstSysPortExt( 15565 int unit, 15566 bcm_field_entry_t entry, 15567 uint16 data, 15568 uint16 mask) 15569 { 15570 return bcm_field_qualify_DstSysPortExt( 15571 BCM_CONTROL(unit)->unit, 15572 entry, 15573 data, 15574 mask); 15575 } 15576 15577 int 15578 bcm_loop_field_qualify_DstSysPortExt_get( 15579 int unit, 15580 bcm_field_entry_t entry, 15581 uint16 * data, 15582 uint16 * mask) 15583 { 15584 return bcm_field_qualify_DstSysPortExt_get( 15585 BCM_CONTROL(unit)->unit, 15586 entry, 15587 data, 15588 mask); 15589 } 15590 15591 int 15592 bcm_loop_field_qualify_DstTrunk( 15593 int unit, 15594 bcm_field_entry_t entry, 15595 bcm_trunk_t data, 15596 bcm_trunk_t mask) 15597 { 15598 return bcm_field_qualify_DstTrunk( 15599 BCM_CONTROL(unit)->unit, 15600 entry, 15601 data, 15602 mask); 15603 } 15604 15605 int 15606 bcm_loop_field_qualify_DstTrunk_get( 15607 int unit, 15608 bcm_field_entry_t entry, 15609 bcm_trunk_t * data, 15610 bcm_trunk_t * mask) 15611 { 15612 return bcm_field_qualify_DstTrunk_get( 15613 BCM_CONTROL(unit)->unit, 15614 entry, 15615 data, 15616 mask); 15617 } 15618 15619 int 15620 bcm_loop_field_qualify_DstVlanGport( 15621 int unit, 15622 bcm_field_entry_t entry, 15623 bcm_gport_t vlan_port_id) 15624 { 15625 return bcm_field_qualify_DstVlanGport( 15626 BCM_CONTROL(unit)->unit, 15627 entry, 15628 vlan_port_id); 15629 } 15630 15631 int 15632 bcm_loop_field_qualify_DstVlanGport_get( 15633 int unit, 15634 bcm_field_entry_t entry, 15635 bcm_gport_t * vlan_port_id) 15636 { 15637 return bcm_field_qualify_DstVlanGport_get( 15638 BCM_CONTROL(unit)->unit, 15639 entry, 15640 vlan_port_id); 15641 } 15642 15643 int 15644 bcm_loop_field_qualify_DstVlanGports( 15645 int unit, 15646 bcm_field_entry_t entry, 15647 bcm_gport_t vlan_port_id, 15648 bcm_gport_t vlan_port_mask) 15649 { 15650 return bcm_field_qualify_DstVlanGports( 15651 BCM_CONTROL(unit)->unit, 15652 entry, 15653 vlan_port_id, 15654 vlan_port_mask); 15655 } 15656 15657 int 15658 bcm_loop_field_qualify_DstVlanGports_get( 15659 int unit, 15660 bcm_field_entry_t entry, 15661 bcm_gport_t * vlan_port_id, 15662 bcm_gport_t * vlan_port_mask) 15663 { 15664 return bcm_field_qualify_DstVlanGports_get( 15665 BCM_CONTROL(unit)->unit, 15666 entry, 15667 vlan_port_id, 15668 vlan_port_mask); 15669 } 15670 15671 int 15672 bcm_loop_field_qualify_DstVxlanGport( 15673 int unit, 15674 bcm_field_entry_t entry, 15675 bcm_gport_t vxlan_port_id) 15676 { 15677 return bcm_field_qualify_DstVxlanGport( 15678 BCM_CONTROL(unit)->unit, 15679 entry, 15680 vxlan_port_id); 15681 } 15682 15683 int 15684 bcm_loop_field_qualify_DstVxlanGport_get( 15685 int unit, 15686 bcm_field_entry_t entry, 15687 bcm_gport_t * vxlan_port_id) 15688 { 15689 return bcm_field_qualify_DstVxlanGport_get( 15690 BCM_CONTROL(unit)->unit, 15691 entry, 15692 vxlan_port_id); 15693 } 15694 15695 int 15696 bcm_loop_field_qualify_DstVxlanGports( 15697 int unit, 15698 bcm_field_entry_t entry, 15699 bcm_gport_t vxlan_port_id, 15700 bcm_gport_t vxlan_port_mask) 15701 { 15702 return bcm_field_qualify_DstVxlanGports( 15703 BCM_CONTROL(unit)->unit, 15704 entry, 15705 vxlan_port_id, 15706 vxlan_port_mask); 15707 } 15708 15709 int 15710 bcm_loop_field_qualify_DstVxlanGports_get( 15711 int unit, 15712 bcm_field_entry_t entry, 15713 bcm_gport_t * vxlan_port_id, 15714 bcm_gport_t * vxlan_port_mask) 15715 { 15716 return bcm_field_qualify_DstVxlanGports_get( 15717 BCM_CONTROL(unit)->unit, 15718 entry, 15719 vxlan_port_id, 15720 vxlan_port_mask); 15721 } 15722 15723 int 15724 bcm_loop_field_qualify_DstWlanGport( 15725 int unit, 15726 bcm_field_entry_t entry, 15727 bcm_gport_t wlan_port_id) 15728 { 15729 return bcm_field_qualify_DstWlanGport( 15730 BCM_CONTROL(unit)->unit, 15731 entry, 15732 wlan_port_id); 15733 } 15734 15735 int 15736 bcm_loop_field_qualify_DstWlanGport_get( 15737 int unit, 15738 bcm_field_entry_t entry, 15739 bcm_gport_t * wlan_port_id) 15740 { 15741 return bcm_field_qualify_DstWlanGport_get( 15742 BCM_CONTROL(unit)->unit, 15743 entry, 15744 wlan_port_id); 15745 } 15746 15747 int 15748 bcm_loop_field_qualify_DstWlanGports( 15749 int unit, 15750 bcm_field_entry_t entry, 15751 bcm_gport_t wlan_port_id, 15752 bcm_gport_t wlan_port_mask) 15753 { 15754 return bcm_field_qualify_DstWlanGports( 15755 BCM_CONTROL(unit)->unit, 15756 entry, 15757 wlan_port_id, 15758 wlan_port_mask); 15759 } 15760 15761 int 15762 bcm_loop_field_qualify_DstWlanGports_get( 15763 int unit, 15764 bcm_field_entry_t entry, 15765 bcm_gport_t * wlan_port_id, 15766 bcm_gport_t * wlan_port_mask) 15767 { 15768 return bcm_field_qualify_DstWlanGports_get( 15769 BCM_CONTROL(unit)->unit, 15770 entry, 15771 wlan_port_id, 15772 wlan_port_mask); 15773 } 15774 15775 int 15776 bcm_loop_field_qualify_ECid( 15777 int unit, 15778 bcm_field_entry_t entry, 15779 uint32 data, 15780 uint32 mask) 15781 { 15782 return bcm_field_qualify_ECid( 15783 BCM_CONTROL(unit)->unit, 15784 entry, 15785 data, 15786 mask); 15787 } 15788 15789 int 15790 bcm_loop_field_qualify_ECid_get( 15791 int unit, 15792 bcm_field_entry_t entry, 15793 uint32 * data, 15794 uint32 * mask) 15795 { 15796 return bcm_field_qualify_ECid_get( 15797 BCM_CONTROL(unit)->unit, 15798 entry, 15799 data, 15800 mask); 15801 } 15802 15803 int 15804 bcm_loop_field_qualify_ETag( 15805 int unit, 15806 bcm_field_entry_t entry, 15807 uint64 data, 15808 uint64 mask) 15809 { 15810 return bcm_field_qualify_ETag( 15811 BCM_CONTROL(unit)->unit, 15812 entry, 15813 data, 15814 mask); 15815 } 15816 15817 int 15818 bcm_loop_field_qualify_ETag_get( 15819 int unit, 15820 bcm_field_entry_t entry, 15821 uint64 * data, 15822 uint64 * mask) 15823 { 15824 return bcm_field_qualify_ETag_get( 15825 BCM_CONTROL(unit)->unit, 15826 entry, 15827 data, 15828 mask); 15829 } 15830 15831 int 15832 bcm_loop_field_qualify_EcnValue( 15833 int unit, 15834 bcm_field_entry_t entry, 15835 uint8 data, 15836 uint8 mask) 15837 { 15838 return bcm_field_qualify_EcnValue( 15839 BCM_CONTROL(unit)->unit, 15840 entry, 15841 data, 15842 mask); 15843 } 15844 15845 int 15846 bcm_loop_field_qualify_EcnValue_get( 15847 int unit, 15848 bcm_field_entry_t entry, 15849 uint8 * data, 15850 uint8 * mask) 15851 { 15852 return bcm_field_qualify_EcnValue_get( 15853 BCM_CONTROL(unit)->unit, 15854 entry, 15855 data, 15856 mask); 15857 } 15858 15859 int 15860 bcm_loop_field_qualify_EgressClass( 15861 int unit, 15862 bcm_field_entry_t entry, 15863 uint16 data, 15864 uint16 mask) 15865 { 15866 return bcm_field_qualify_EgressClass( 15867 BCM_CONTROL(unit)->unit, 15868 entry, 15869 data, 15870 mask); 15871 } 15872 15873 int 15874 bcm_loop_field_qualify_EgressClassL2Gre( 15875 int unit, 15876 bcm_field_entry_t entry, 15877 uint16 data, 15878 uint16 mask) 15879 { 15880 return bcm_field_qualify_EgressClassL2Gre( 15881 BCM_CONTROL(unit)->unit, 15882 entry, 15883 data, 15884 mask); 15885 } 15886 15887 int 15888 bcm_loop_field_qualify_EgressClassL2Gre_get( 15889 int unit, 15890 bcm_field_entry_t entry, 15891 uint16 * data, 15892 uint16 * mask) 15893 { 15894 return bcm_field_qualify_EgressClassL2Gre_get( 15895 BCM_CONTROL(unit)->unit, 15896 entry, 15897 data, 15898 mask); 15899 } 15900 15901 int 15902 bcm_loop_field_qualify_EgressClassL3Interface( 15903 int unit, 15904 bcm_field_entry_t entry, 15905 uint16 data, 15906 uint16 mask) 15907 { 15908 return bcm_field_qualify_EgressClassL3Interface( 15909 BCM_CONTROL(unit)->unit, 15910 entry, 15911 data, 15912 mask); 15913 } 15914 15915 int 15916 bcm_loop_field_qualify_EgressClassL3InterfaceTunnel( 15917 int unit, 15918 bcm_field_entry_t entry, 15919 uint16 data, 15920 uint16 mask) 15921 { 15922 return bcm_field_qualify_EgressClassL3InterfaceTunnel( 15923 BCM_CONTROL(unit)->unit, 15924 entry, 15925 data, 15926 mask); 15927 } 15928 15929 int 15930 bcm_loop_field_qualify_EgressClassL3InterfaceTunnel_get( 15931 int unit, 15932 bcm_field_entry_t entry, 15933 uint16 * data, 15934 uint16 * mask) 15935 { 15936 return bcm_field_qualify_EgressClassL3InterfaceTunnel_get( 15937 BCM_CONTROL(unit)->unit, 15938 entry, 15939 data, 15940 mask); 15941 } 15942 15943 int 15944 bcm_loop_field_qualify_EgressClassL3Interface_get( 15945 int unit, 15946 bcm_field_entry_t entry, 15947 uint16 * data, 15948 uint16 * mask) 15949 { 15950 return bcm_field_qualify_EgressClassL3Interface_get( 15951 BCM_CONTROL(unit)->unit, 15952 entry, 15953 data, 15954 mask); 15955 } 15956 15957 int 15958 bcm_loop_field_qualify_EgressClassPort( 15959 int unit, 15960 bcm_field_entry_t entry, 15961 uint16 data, 15962 uint16 mask) 15963 { 15964 return bcm_field_qualify_EgressClassPort( 15965 BCM_CONTROL(unit)->unit, 15966 entry, 15967 data, 15968 mask); 15969 } 15970 15971 int 15972 bcm_loop_field_qualify_EgressClassPort_get( 15973 int unit, 15974 bcm_field_entry_t entry, 15975 uint16 * data, 15976 uint16 * mask) 15977 { 15978 return bcm_field_qualify_EgressClassPort_get( 15979 BCM_CONTROL(unit)->unit, 15980 entry, 15981 data, 15982 mask); 15983 } 15984 15985 int 15986 bcm_loop_field_qualify_EgressClassTrill( 15987 int unit, 15988 bcm_field_entry_t entry, 15989 uint16 data, 15990 uint16 mask) 15991 { 15992 return bcm_field_qualify_EgressClassTrill( 15993 BCM_CONTROL(unit)->unit, 15994 entry, 15995 data, 15996 mask); 15997 } 15998 15999 int 16000 bcm_loop_field_qualify_EgressClassTrill_get( 16001 int unit, 16002 bcm_field_entry_t entry, 16003 uint16 * data, 16004 uint16 * mask) 16005 { 16006 return bcm_field_qualify_EgressClassTrill_get( 16007 BCM_CONTROL(unit)->unit, 16008 entry, 16009 data, 16010 mask); 16011 } 16012 16013 int 16014 bcm_loop_field_qualify_EgressClassTunnel( 16015 int unit, 16016 bcm_field_entry_t entry, 16017 uint16 data, 16018 uint16 mask) 16019 { 16020 return bcm_field_qualify_EgressClassTunnel( 16021 BCM_CONTROL(unit)->unit, 16022 entry, 16023 data, 16024 mask); 16025 } 16026 16027 int 16028 bcm_loop_field_qualify_EgressClassTunnel_get( 16029 int unit, 16030 bcm_field_entry_t entry, 16031 uint16 * data, 16032 uint16 * mask) 16033 { 16034 return bcm_field_qualify_EgressClassTunnel_get( 16035 BCM_CONTROL(unit)->unit, 16036 entry, 16037 data, 16038 mask); 16039 } 16040 16041 int 16042 bcm_loop_field_qualify_EgressClassVxlan( 16043 int unit, 16044 bcm_field_entry_t entry, 16045 uint16 data, 16046 uint16 mask) 16047 { 16048 return bcm_field_qualify_EgressClassVxlan( 16049 BCM_CONTROL(unit)->unit, 16050 entry, 16051 data, 16052 mask); 16053 } 16054 16055 int 16056 bcm_loop_field_qualify_EgressClassVxlan_get( 16057 int unit, 16058 bcm_field_entry_t entry, 16059 uint16 * data, 16060 uint16 * mask) 16061 { 16062 return bcm_field_qualify_EgressClassVxlan_get( 16063 BCM_CONTROL(unit)->unit, 16064 entry, 16065 data, 16066 mask); 16067 } 16068 16069 int 16070 bcm_loop_field_qualify_EgressClassWlan( 16071 int unit, 16072 bcm_field_entry_t entry, 16073 uint16 data, 16074 uint16 mask) 16075 { 16076 return bcm_field_qualify_EgressClassWlan( 16077 BCM_CONTROL(unit)->unit, 16078 entry, 16079 data, 16080 mask); 16081 } 16082 16083 int 16084 bcm_loop_field_qualify_EgressClassWlan_get( 16085 int unit, 16086 bcm_field_entry_t entry, 16087 uint16 * data, 16088 uint16 * mask) 16089 { 16090 return bcm_field_qualify_EgressClassWlan_get( 16091 BCM_CONTROL(unit)->unit, 16092 entry, 16093 data, 16094 mask); 16095 } 16096 16097 int 16098 bcm_loop_field_qualify_EgressClass_get( 16099 int unit, 16100 bcm_field_entry_t entry, 16101 uint16 * data, 16102 uint16 * mask) 16103 { 16104 return bcm_field_qualify_EgressClass_get( 16105 BCM_CONTROL(unit)->unit, 16106 entry, 16107 data, 16108 mask); 16109 } 16110 16111 int 16112 bcm_loop_field_qualify_EgressForwardingClassId( 16113 int unit, 16114 bcm_field_entry_t entry, 16115 int data, 16116 int mask) 16117 { 16118 return bcm_field_qualify_EgressForwardingClassId( 16119 BCM_CONTROL(unit)->unit, 16120 entry, 16121 data, 16122 mask); 16123 } 16124 16125 int 16126 bcm_loop_field_qualify_EgressForwardingClassId_get( 16127 int unit, 16128 bcm_field_entry_t entry, 16129 int * data, 16130 int * mask) 16131 { 16132 return bcm_field_qualify_EgressForwardingClassId_get( 16133 BCM_CONTROL(unit)->unit, 16134 entry, 16135 data, 16136 mask); 16137 } 16138 16139 int 16140 bcm_loop_field_qualify_EtherType( 16141 int unit, 16142 bcm_field_entry_t entry, 16143 uint16 data, 16144 uint16 mask) 16145 { 16146 return bcm_field_qualify_EtherType( 16147 BCM_CONTROL(unit)->unit, 16148 entry, 16149 data, 16150 mask); 16151 } 16152 16153 int 16154 bcm_loop_field_qualify_EtherTypeClass( 16155 int unit, 16156 bcm_field_entry_t entry, 16157 bcm_class_t data, 16158 bcm_class_t mask) 16159 { 16160 return bcm_field_qualify_EtherTypeClass( 16161 BCM_CONTROL(unit)->unit, 16162 entry, 16163 data, 16164 mask); 16165 } 16166 16167 int 16168 bcm_loop_field_qualify_EtherTypeClass_get( 16169 int unit, 16170 bcm_field_entry_t entry, 16171 bcm_class_t * data, 16172 bcm_class_t * mask) 16173 { 16174 return bcm_field_qualify_EtherTypeClass_get( 16175 BCM_CONTROL(unit)->unit, 16176 entry, 16177 data, 16178 mask); 16179 } 16180 16181 int 16182 bcm_loop_field_qualify_EtherType_get( 16183 int unit, 16184 bcm_field_entry_t entry, 16185 uint16 * data, 16186 uint16 * mask) 16187 { 16188 return bcm_field_qualify_EtherType_get( 16189 BCM_CONTROL(unit)->unit, 16190 entry, 16191 data, 16192 mask); 16193 } 16194 16195 int 16196 bcm_loop_field_qualify_EthernetOamClassVlanTranslateKeyFirst( 16197 int unit, 16198 bcm_field_entry_t entry, 16199 uint8 data, 16200 uint8 mask) 16201 { 16202 return bcm_field_qualify_EthernetOamClassVlanTranslateKeyFirst( 16203 BCM_CONTROL(unit)->unit, 16204 entry, 16205 data, 16206 mask); 16207 } 16208 16209 int 16210 bcm_loop_field_qualify_EthernetOamClassVlanTranslateKeyFirst_get( 16211 int unit, 16212 bcm_field_entry_t entry, 16213 uint8 * data, 16214 uint8 * mask) 16215 { 16216 return bcm_field_qualify_EthernetOamClassVlanTranslateKeyFirst_get( 16217 BCM_CONTROL(unit)->unit, 16218 entry, 16219 data, 16220 mask); 16221 } 16222 16223 int 16224 bcm_loop_field_qualify_EthernetOamClassVlanTranslateKeySecond( 16225 int unit, 16226 bcm_field_entry_t entry, 16227 uint8 data, 16228 uint8 mask) 16229 { 16230 return bcm_field_qualify_EthernetOamClassVlanTranslateKeySecond( 16231 BCM_CONTROL(unit)->unit, 16232 entry, 16233 data, 16234 mask); 16235 } 16236 16237 int 16238 bcm_loop_field_qualify_EthernetOamClassVlanTranslateKeySecond_get( 16239 int unit, 16240 bcm_field_entry_t entry, 16241 uint8 * data, 16242 uint8 * mask) 16243 { 16244 return bcm_field_qualify_EthernetOamClassVlanTranslateKeySecond_get( 16245 BCM_CONTROL(unit)->unit, 16246 entry, 16247 data, 16248 mask); 16249 } 16250 16251 int 16252 bcm_loop_field_qualify_EthernetOamClassVpn( 16253 int unit, 16254 bcm_field_entry_t entry, 16255 uint8 data, 16256 uint8 mask) 16257 { 16258 return bcm_field_qualify_EthernetOamClassVpn( 16259 BCM_CONTROL(unit)->unit, 16260 entry, 16261 data, 16262 mask); 16263 } 16264 16265 int 16266 bcm_loop_field_qualify_EthernetOamClassVpn_get( 16267 int unit, 16268 bcm_field_entry_t entry, 16269 uint8 * data, 16270 uint8 * mask) 16271 { 16272 return bcm_field_qualify_EthernetOamClassVpn_get( 16273 BCM_CONTROL(unit)->unit, 16274 entry, 16275 data, 16276 mask); 16277 } 16278 16279 int 16280 bcm_loop_field_qualify_EthernetOamDstClassL2( 16281 int unit, 16282 bcm_field_entry_t entry, 16283 uint8 data, 16284 uint8 mask) 16285 { 16286 return bcm_field_qualify_EthernetOamDstClassL2( 16287 BCM_CONTROL(unit)->unit, 16288 entry, 16289 data, 16290 mask); 16291 } 16292 16293 int 16294 bcm_loop_field_qualify_EthernetOamDstClassL2_get( 16295 int unit, 16296 bcm_field_entry_t entry, 16297 uint8 * data, 16298 uint8 * mask) 16299 { 16300 return bcm_field_qualify_EthernetOamDstClassL2_get( 16301 BCM_CONTROL(unit)->unit, 16302 entry, 16303 data, 16304 mask); 16305 } 16306 16307 int 16308 bcm_loop_field_qualify_EthernetOamHeaderBits0_31( 16309 int unit, 16310 bcm_field_entry_t entry, 16311 uint32 data, 16312 uint32 mask) 16313 { 16314 return bcm_field_qualify_EthernetOamHeaderBits0_31( 16315 BCM_CONTROL(unit)->unit, 16316 entry, 16317 data, 16318 mask); 16319 } 16320 16321 int 16322 bcm_loop_field_qualify_EthernetOamHeaderBits0_31_get( 16323 int unit, 16324 bcm_field_entry_t entry, 16325 uint32 * data, 16326 uint32 * mask) 16327 { 16328 return bcm_field_qualify_EthernetOamHeaderBits0_31_get( 16329 BCM_CONTROL(unit)->unit, 16330 entry, 16331 data, 16332 mask); 16333 } 16334 16335 int 16336 bcm_loop_field_qualify_EthernetOamHeaderBits32_63( 16337 int unit, 16338 bcm_field_entry_t entry, 16339 uint32 data, 16340 uint32 mask) 16341 { 16342 return bcm_field_qualify_EthernetOamHeaderBits32_63( 16343 BCM_CONTROL(unit)->unit, 16344 entry, 16345 data, 16346 mask); 16347 } 16348 16349 int 16350 bcm_loop_field_qualify_EthernetOamHeaderBits32_63_get( 16351 int unit, 16352 bcm_field_entry_t entry, 16353 uint32 * data, 16354 uint32 * mask) 16355 { 16356 return bcm_field_qualify_EthernetOamHeaderBits32_63_get( 16357 BCM_CONTROL(unit)->unit, 16358 entry, 16359 data, 16360 mask); 16361 } 16362 16363 int 16364 bcm_loop_field_qualify_EthernetOamInterfaceClassMim( 16365 int unit, 16366 bcm_field_entry_t entry, 16367 uint8 data, 16368 uint8 mask) 16369 { 16370 return bcm_field_qualify_EthernetOamInterfaceClassMim( 16371 BCM_CONTROL(unit)->unit, 16372 entry, 16373 data, 16374 mask); 16375 } 16376 16377 int 16378 bcm_loop_field_qualify_EthernetOamInterfaceClassMim_get( 16379 int unit, 16380 bcm_field_entry_t entry, 16381 uint8 * data, 16382 uint8 * mask) 16383 { 16384 return bcm_field_qualify_EthernetOamInterfaceClassMim_get( 16385 BCM_CONTROL(unit)->unit, 16386 entry, 16387 data, 16388 mask); 16389 } 16390 16391 int 16392 bcm_loop_field_qualify_EthernetOamInterfaceClassMpls( 16393 int unit, 16394 bcm_field_entry_t entry, 16395 uint8 data, 16396 uint8 mask) 16397 { 16398 return bcm_field_qualify_EthernetOamInterfaceClassMpls( 16399 BCM_CONTROL(unit)->unit, 16400 entry, 16401 data, 16402 mask); 16403 } 16404 16405 int 16406 bcm_loop_field_qualify_EthernetOamInterfaceClassMpls_get( 16407 int unit, 16408 bcm_field_entry_t entry, 16409 uint8 * data, 16410 uint8 * mask) 16411 { 16412 return bcm_field_qualify_EthernetOamInterfaceClassMpls_get( 16413 BCM_CONTROL(unit)->unit, 16414 entry, 16415 data, 16416 mask); 16417 } 16418 16419 int 16420 bcm_loop_field_qualify_EthernetOamInterfaceClassNiv( 16421 int unit, 16422 bcm_field_entry_t entry, 16423 uint8 data, 16424 uint8 mask) 16425 { 16426 return bcm_field_qualify_EthernetOamInterfaceClassNiv( 16427 BCM_CONTROL(unit)->unit, 16428 entry, 16429 data, 16430 mask); 16431 } 16432 16433 int 16434 bcm_loop_field_qualify_EthernetOamInterfaceClassNiv_get( 16435 int unit, 16436 bcm_field_entry_t entry, 16437 uint8 * data, 16438 uint8 * mask) 16439 { 16440 return bcm_field_qualify_EthernetOamInterfaceClassNiv_get( 16441 BCM_CONTROL(unit)->unit, 16442 entry, 16443 data, 16444 mask); 16445 } 16446 16447 int 16448 bcm_loop_field_qualify_EthernetOamInterfaceClassPort( 16449 int unit, 16450 bcm_field_entry_t entry, 16451 uint8 data, 16452 uint8 mask) 16453 { 16454 return bcm_field_qualify_EthernetOamInterfaceClassPort( 16455 BCM_CONTROL(unit)->unit, 16456 entry, 16457 data, 16458 mask); 16459 } 16460 16461 int 16462 bcm_loop_field_qualify_EthernetOamInterfaceClassPort_get( 16463 int unit, 16464 bcm_field_entry_t entry, 16465 uint8 * data, 16466 uint8 * mask) 16467 { 16468 return bcm_field_qualify_EthernetOamInterfaceClassPort_get( 16469 BCM_CONTROL(unit)->unit, 16470 entry, 16471 data, 16472 mask); 16473 } 16474 16475 int 16476 bcm_loop_field_qualify_EthernetOamInterfaceClassVlan( 16477 int unit, 16478 bcm_field_entry_t entry, 16479 uint8 data, 16480 uint8 mask) 16481 { 16482 return bcm_field_qualify_EthernetOamInterfaceClassVlan( 16483 BCM_CONTROL(unit)->unit, 16484 entry, 16485 data, 16486 mask); 16487 } 16488 16489 int 16490 bcm_loop_field_qualify_EthernetOamInterfaceClassVlan_get( 16491 int unit, 16492 bcm_field_entry_t entry, 16493 uint8 * data, 16494 uint8 * mask) 16495 { 16496 return bcm_field_qualify_EthernetOamInterfaceClassVlan_get( 16497 BCM_CONTROL(unit)->unit, 16498 entry, 16499 data, 16500 mask); 16501 } 16502 16503 int 16504 bcm_loop_field_qualify_EthernetOamInterfaceClassVxlan( 16505 int unit, 16506 bcm_field_entry_t entry, 16507 uint8 data, 16508 uint8 mask) 16509 { 16510 return bcm_field_qualify_EthernetOamInterfaceClassVxlan( 16511 BCM_CONTROL(unit)->unit, 16512 entry, 16513 data, 16514 mask); 16515 } 16516 16517 int 16518 bcm_loop_field_qualify_EthernetOamInterfaceClassVxlan_get( 16519 int unit, 16520 bcm_field_entry_t entry, 16521 uint8 * data, 16522 uint8 * mask) 16523 { 16524 return bcm_field_qualify_EthernetOamInterfaceClassVxlan_get( 16525 BCM_CONTROL(unit)->unit, 16526 entry, 16527 data, 16528 mask); 16529 } 16530 16531 int 16532 bcm_loop_field_qualify_EthernetOamTxPktUPMEP( 16533 int unit, 16534 bcm_field_entry_t entry, 16535 uint8 data, 16536 uint8 mask) 16537 { 16538 return bcm_field_qualify_EthernetOamTxPktUPMEP( 16539 BCM_CONTROL(unit)->unit, 16540 entry, 16541 data, 16542 mask); 16543 } 16544 16545 int 16546 bcm_loop_field_qualify_EthernetOamTxPktUPMEP_get( 16547 int unit, 16548 bcm_field_entry_t entry, 16549 uint8 * data, 16550 uint8 * mask) 16551 { 16552 return bcm_field_qualify_EthernetOamTxPktUPMEP_get( 16553 BCM_CONTROL(unit)->unit, 16554 entry, 16555 data, 16556 mask); 16557 } 16558 16559 int 16560 bcm_loop_field_qualify_ExactMatchActionClassId( 16561 int unit, 16562 bcm_field_entry_t entry, 16563 int group_pri, 16564 uint32 data, 16565 uint32 mask) 16566 { 16567 return bcm_field_qualify_ExactMatchActionClassId( 16568 BCM_CONTROL(unit)->unit, 16569 entry, 16570 group_pri, 16571 data, 16572 mask); 16573 } 16574 16575 int 16576 bcm_loop_field_qualify_ExactMatchActionClassId_get( 16577 int unit, 16578 bcm_field_entry_t entry, 16579 int group_pri, 16580 uint32 * data, 16581 uint32 * mask) 16582 { 16583 return bcm_field_qualify_ExactMatchActionClassId_get( 16584 BCM_CONTROL(unit)->unit, 16585 entry, 16586 group_pri, 16587 data, 16588 mask); 16589 } 16590 16591 int 16592 bcm_loop_field_qualify_ExactMatchGroupClassId( 16593 int unit, 16594 bcm_field_entry_t entry, 16595 int group_pri, 16596 bcm_field_group_t group) 16597 { 16598 return bcm_field_qualify_ExactMatchGroupClassId( 16599 BCM_CONTROL(unit)->unit, 16600 entry, 16601 group_pri, 16602 group); 16603 } 16604 16605 int 16606 bcm_loop_field_qualify_ExactMatchGroupClassId_get( 16607 int unit, 16608 bcm_field_entry_t entry, 16609 int group_pri, 16610 bcm_field_group_t * group) 16611 { 16612 return bcm_field_qualify_ExactMatchGroupClassId_get( 16613 BCM_CONTROL(unit)->unit, 16614 entry, 16615 group_pri, 16616 group); 16617 } 16618 16619 int 16620 bcm_loop_field_qualify_ExactMatchHitStatus( 16621 int unit, 16622 bcm_field_entry_t entry, 16623 int group_pri, 16624 uint8 data, 16625 uint8 mask) 16626 { 16627 return bcm_field_qualify_ExactMatchHitStatus( 16628 BCM_CONTROL(unit)->unit, 16629 entry, 16630 group_pri, 16631 data, 16632 mask); 16633 } 16634 16635 int 16636 bcm_loop_field_qualify_ExactMatchHitStatus_get( 16637 int unit, 16638 bcm_field_entry_t entry, 16639 int group_pri, 16640 uint8 * data, 16641 uint8 * mask) 16642 { 16643 return bcm_field_qualify_ExactMatchHitStatus_get( 16644 BCM_CONTROL(unit)->unit, 16645 entry, 16646 group_pri, 16647 data, 16648 mask); 16649 } 16650 16651 int 16652 bcm_loop_field_qualify_ExtensionHeader2Type( 16653 int unit, 16654 bcm_field_entry_t entry, 16655 uint8 data, 16656 uint8 mask) 16657 { 16658 return bcm_field_qualify_ExtensionHeader2Type( 16659 BCM_CONTROL(unit)->unit, 16660 entry, 16661 data, 16662 mask); 16663 } 16664 16665 int 16666 bcm_loop_field_qualify_ExtensionHeader2Type_get( 16667 int unit, 16668 bcm_field_entry_t entry, 16669 uint8 * data, 16670 uint8 * mask) 16671 { 16672 return bcm_field_qualify_ExtensionHeader2Type_get( 16673 BCM_CONTROL(unit)->unit, 16674 entry, 16675 data, 16676 mask); 16677 } 16678 16679 int 16680 bcm_loop_field_qualify_ExtensionHeaderSubCode( 16681 int unit, 16682 bcm_field_entry_t entry, 16683 uint8 data, 16684 uint8 mask) 16685 { 16686 return bcm_field_qualify_ExtensionHeaderSubCode( 16687 BCM_CONTROL(unit)->unit, 16688 entry, 16689 data, 16690 mask); 16691 } 16692 16693 int 16694 bcm_loop_field_qualify_ExtensionHeaderSubCode_get( 16695 int unit, 16696 bcm_field_entry_t entry, 16697 uint8 * data, 16698 uint8 * mask) 16699 { 16700 return bcm_field_qualify_ExtensionHeaderSubCode_get( 16701 BCM_CONTROL(unit)->unit, 16702 entry, 16703 data, 16704 mask); 16705 } 16706 16707 int 16708 bcm_loop_field_qualify_ExtensionHeaderType( 16709 int unit, 16710 bcm_field_entry_t entry, 16711 uint8 data, 16712 uint8 mask) 16713 { 16714 return bcm_field_qualify_ExtensionHeaderType( 16715 BCM_CONTROL(unit)->unit, 16716 entry, 16717 data, 16718 mask); 16719 } 16720 16721 int 16722 bcm_loop_field_qualify_ExtensionHeaderType_get( 16723 int unit, 16724 bcm_field_entry_t entry, 16725 uint8 * data, 16726 uint8 * mask) 16727 { 16728 return bcm_field_qualify_ExtensionHeaderType_get( 16729 BCM_CONTROL(unit)->unit, 16730 entry, 16731 data, 16732 mask); 16733 } 16734 16735 int 16736 bcm_loop_field_qualify_ExternalHit0( 16737 int unit, 16738 bcm_field_entry_t entry, 16739 uint8 data, 16740 uint8 mask) 16741 { 16742 return bcm_field_qualify_ExternalHit0( 16743 BCM_CONTROL(unit)->unit, 16744 entry, 16745 data, 16746 mask); 16747 } 16748 16749 int 16750 bcm_loop_field_qualify_ExternalHit0_get( 16751 int unit, 16752 bcm_field_entry_t entry, 16753 uint8 * data, 16754 uint8 * mask) 16755 { 16756 return bcm_field_qualify_ExternalHit0_get( 16757 BCM_CONTROL(unit)->unit, 16758 entry, 16759 data, 16760 mask); 16761 } 16762 16763 int 16764 bcm_loop_field_qualify_ExternalHit1( 16765 int unit, 16766 bcm_field_entry_t entry, 16767 uint8 data, 16768 uint8 mask) 16769 { 16770 return bcm_field_qualify_ExternalHit1( 16771 BCM_CONTROL(unit)->unit, 16772 entry, 16773 data, 16774 mask); 16775 } 16776 16777 int 16778 bcm_loop_field_qualify_ExternalHit1_get( 16779 int unit, 16780 bcm_field_entry_t entry, 16781 uint8 * data, 16782 uint8 * mask) 16783 { 16784 return bcm_field_qualify_ExternalHit1_get( 16785 BCM_CONTROL(unit)->unit, 16786 entry, 16787 data, 16788 mask); 16789 } 16790 16791 int 16792 bcm_loop_field_qualify_ExternalHit2( 16793 int unit, 16794 bcm_field_entry_t entry, 16795 uint8 data, 16796 uint8 mask) 16797 { 16798 return bcm_field_qualify_ExternalHit2( 16799 BCM_CONTROL(unit)->unit, 16800 entry, 16801 data, 16802 mask); 16803 } 16804 16805 int 16806 bcm_loop_field_qualify_ExternalHit2_get( 16807 int unit, 16808 bcm_field_entry_t entry, 16809 uint8 * data, 16810 uint8 * mask) 16811 { 16812 return bcm_field_qualify_ExternalHit2_get( 16813 BCM_CONTROL(unit)->unit, 16814 entry, 16815 data, 16816 mask); 16817 } 16818 16819 int 16820 bcm_loop_field_qualify_ExternalHit3( 16821 int unit, 16822 bcm_field_entry_t entry, 16823 uint8 data, 16824 uint8 mask) 16825 { 16826 return bcm_field_qualify_ExternalHit3( 16827 BCM_CONTROL(unit)->unit, 16828 entry, 16829 data, 16830 mask); 16831 } 16832 16833 int 16834 bcm_loop_field_qualify_ExternalHit3_get( 16835 int unit, 16836 bcm_field_entry_t entry, 16837 uint8 * data, 16838 uint8 * mask) 16839 { 16840 return bcm_field_qualify_ExternalHit3_get( 16841 BCM_CONTROL(unit)->unit, 16842 entry, 16843 data, 16844 mask); 16845 } 16846 16847 int 16848 bcm_loop_field_qualify_ExternalHit4( 16849 int unit, 16850 bcm_field_entry_t entry, 16851 uint8 data, 16852 uint8 mask) 16853 { 16854 return bcm_field_qualify_ExternalHit4( 16855 BCM_CONTROL(unit)->unit, 16856 entry, 16857 data, 16858 mask); 16859 } 16860 16861 int 16862 bcm_loop_field_qualify_ExternalHit4_get( 16863 int unit, 16864 bcm_field_entry_t entry, 16865 uint8 * data, 16866 uint8 * mask) 16867 { 16868 return bcm_field_qualify_ExternalHit4_get( 16869 BCM_CONTROL(unit)->unit, 16870 entry, 16871 data, 16872 mask); 16873 } 16874 16875 int 16876 bcm_loop_field_qualify_ExternalHit5( 16877 int unit, 16878 bcm_field_entry_t entry, 16879 uint8 data, 16880 uint8 mask) 16881 { 16882 return bcm_field_qualify_ExternalHit5( 16883 BCM_CONTROL(unit)->unit, 16884 entry, 16885 data, 16886 mask); 16887 } 16888 16889 int 16890 bcm_loop_field_qualify_ExternalHit5_get( 16891 int unit, 16892 bcm_field_entry_t entry, 16893 uint8 * data, 16894 uint8 * mask) 16895 { 16896 return bcm_field_qualify_ExternalHit5_get( 16897 BCM_CONTROL(unit)->unit, 16898 entry, 16899 data, 16900 mask); 16901 } 16902 16903 int 16904 bcm_loop_field_qualify_ExternalHit6( 16905 int unit, 16906 bcm_field_entry_t entry, 16907 uint8 data, 16908 uint8 mask) 16909 { 16910 return bcm_field_qualify_ExternalHit6( 16911 BCM_CONTROL(unit)->unit, 16912 entry, 16913 data, 16914 mask); 16915 } 16916 16917 int 16918 bcm_loop_field_qualify_ExternalHit6_get( 16919 int unit, 16920 bcm_field_entry_t entry, 16921 uint8 * data, 16922 uint8 * mask) 16923 { 16924 return bcm_field_qualify_ExternalHit6_get( 16925 BCM_CONTROL(unit)->unit, 16926 entry, 16927 data, 16928 mask); 16929 } 16930 16931 int 16932 bcm_loop_field_qualify_ExternalHit7( 16933 int unit, 16934 bcm_field_entry_t entry, 16935 uint8 data, 16936 uint8 mask) 16937 { 16938 return bcm_field_qualify_ExternalHit7( 16939 BCM_CONTROL(unit)->unit, 16940 entry, 16941 data, 16942 mask); 16943 } 16944 16945 int 16946 bcm_loop_field_qualify_ExternalHit7_get( 16947 int unit, 16948 bcm_field_entry_t entry, 16949 uint8 * data, 16950 uint8 * mask) 16951 { 16952 return bcm_field_qualify_ExternalHit7_get( 16953 BCM_CONTROL(unit)->unit, 16954 entry, 16955 data, 16956 mask); 16957 } 16958 16959 int 16960 bcm_loop_field_qualify_ExternalValue0( 16961 int unit, 16962 bcm_field_entry_t entry, 16963 uint64 data, 16964 uint64 mask) 16965 { 16966 return bcm_field_qualify_ExternalValue0( 16967 BCM_CONTROL(unit)->unit, 16968 entry, 16969 data, 16970 mask); 16971 } 16972 16973 int 16974 bcm_loop_field_qualify_ExternalValue0_get( 16975 int unit, 16976 bcm_field_entry_t entry, 16977 uint64 * data, 16978 uint64 * mask) 16979 { 16980 return bcm_field_qualify_ExternalValue0_get( 16981 BCM_CONTROL(unit)->unit, 16982 entry, 16983 data, 16984 mask); 16985 } 16986 16987 int 16988 bcm_loop_field_qualify_ExternalValue1( 16989 int unit, 16990 bcm_field_entry_t entry, 16991 uint64 data, 16992 uint64 mask) 16993 { 16994 return bcm_field_qualify_ExternalValue1( 16995 BCM_CONTROL(unit)->unit, 16996 entry, 16997 data, 16998 mask); 16999 } 17000 17001 int 17002 bcm_loop_field_qualify_ExternalValue1_get( 17003 int unit, 17004 bcm_field_entry_t entry, 17005 uint64 * data, 17006 uint64 * mask) 17007 { 17008 return bcm_field_qualify_ExternalValue1_get( 17009 BCM_CONTROL(unit)->unit, 17010 entry, 17011 data, 17012 mask); 17013 } 17014 17015 int 17016 bcm_loop_field_qualify_ExternalValue2( 17017 int unit, 17018 bcm_field_entry_t entry, 17019 uint64 data, 17020 uint64 mask) 17021 { 17022 return bcm_field_qualify_ExternalValue2( 17023 BCM_CONTROL(unit)->unit, 17024 entry, 17025 data, 17026 mask); 17027 } 17028 17029 int 17030 bcm_loop_field_qualify_ExternalValue2_get( 17031 int unit, 17032 bcm_field_entry_t entry, 17033 uint64 * data, 17034 uint64 * mask) 17035 { 17036 return bcm_field_qualify_ExternalValue2_get( 17037 BCM_CONTROL(unit)->unit, 17038 entry, 17039 data, 17040 mask); 17041 } 17042 17043 int 17044 bcm_loop_field_qualify_ExternalValue3( 17045 int unit, 17046 bcm_field_entry_t entry, 17047 uint64 data, 17048 uint64 mask) 17049 { 17050 return bcm_field_qualify_ExternalValue3( 17051 BCM_CONTROL(unit)->unit, 17052 entry, 17053 data, 17054 mask); 17055 } 17056 17057 int 17058 bcm_loop_field_qualify_ExternalValue3_get( 17059 int unit, 17060 bcm_field_entry_t entry, 17061 uint64 * data, 17062 uint64 * mask) 17063 { 17064 return bcm_field_qualify_ExternalValue3_get( 17065 BCM_CONTROL(unit)->unit, 17066 entry, 17067 data, 17068 mask); 17069 } 17070 17071 int 17072 bcm_loop_field_qualify_ExternalValue4( 17073 int unit, 17074 bcm_field_entry_t entry, 17075 uint64 data, 17076 uint64 mask) 17077 { 17078 return bcm_field_qualify_ExternalValue4( 17079 BCM_CONTROL(unit)->unit, 17080 entry, 17081 data, 17082 mask); 17083 } 17084 17085 int 17086 bcm_loop_field_qualify_ExternalValue4_get( 17087 int unit, 17088 bcm_field_entry_t entry, 17089 uint64 * data, 17090 uint64 * mask) 17091 { 17092 return bcm_field_qualify_ExternalValue4_get( 17093 BCM_CONTROL(unit)->unit, 17094 entry, 17095 data, 17096 mask); 17097 } 17098 17099 int 17100 bcm_loop_field_qualify_ExternalValue5( 17101 int unit, 17102 bcm_field_entry_t entry, 17103 uint64 data, 17104 uint64 mask) 17105 { 17106 return bcm_field_qualify_ExternalValue5( 17107 BCM_CONTROL(unit)->unit, 17108 entry, 17109 data, 17110 mask); 17111 } 17112 17113 int 17114 bcm_loop_field_qualify_ExternalValue5_get( 17115 int unit, 17116 bcm_field_entry_t entry, 17117 uint64 * data, 17118 uint64 * mask) 17119 { 17120 return bcm_field_qualify_ExternalValue5_get( 17121 BCM_CONTROL(unit)->unit, 17122 entry, 17123 data, 17124 mask); 17125 } 17126 17127 int 17128 bcm_loop_field_qualify_ExternalValue6( 17129 int unit, 17130 bcm_field_entry_t entry, 17131 uint64 data, 17132 uint64 mask) 17133 { 17134 return bcm_field_qualify_ExternalValue6( 17135 BCM_CONTROL(unit)->unit, 17136 entry, 17137 data, 17138 mask); 17139 } 17140 17141 int 17142 bcm_loop_field_qualify_ExternalValue6_get( 17143 int unit, 17144 bcm_field_entry_t entry, 17145 uint64 * data, 17146 uint64 * mask) 17147 { 17148 return bcm_field_qualify_ExternalValue6_get( 17149 BCM_CONTROL(unit)->unit, 17150 entry, 17151 data, 17152 mask); 17153 } 17154 17155 int 17156 bcm_loop_field_qualify_ExternalValue7( 17157 int unit, 17158 bcm_field_entry_t entry, 17159 uint64 data, 17160 uint64 mask) 17161 { 17162 return bcm_field_qualify_ExternalValue7( 17163 BCM_CONTROL(unit)->unit, 17164 entry, 17165 data, 17166 mask); 17167 } 17168 17169 int 17170 bcm_loop_field_qualify_ExternalValue7_get( 17171 int unit, 17172 bcm_field_entry_t entry, 17173 uint64 * data, 17174 uint64 * mask) 17175 { 17176 return bcm_field_qualify_ExternalValue7_get( 17177 BCM_CONTROL(unit)->unit, 17178 entry, 17179 data, 17180 mask); 17181 } 17182 17183 int 17184 bcm_loop_field_qualify_FabricQueueTag( 17185 int unit, 17186 bcm_field_entry_t entry, 17187 uint32 data, 17188 uint32 mask) 17189 { 17190 return bcm_field_qualify_FabricQueueTag( 17191 BCM_CONTROL(unit)->unit, 17192 entry, 17193 data, 17194 mask); 17195 } 17196 17197 int 17198 bcm_loop_field_qualify_FabricQueueTag_get( 17199 int unit, 17200 bcm_field_entry_t entry, 17201 uint32 * data, 17202 uint32 * mask) 17203 { 17204 return bcm_field_qualify_FabricQueueTag_get( 17205 BCM_CONTROL(unit)->unit, 17206 entry, 17207 data, 17208 mask); 17209 } 17210 17211 int 17212 bcm_loop_field_qualify_FcoeOxID( 17213 int unit, 17214 bcm_field_entry_t entry, 17215 uint16 data, 17216 uint16 mask) 17217 { 17218 return bcm_field_qualify_FcoeOxID( 17219 BCM_CONTROL(unit)->unit, 17220 entry, 17221 data, 17222 mask); 17223 } 17224 17225 int 17226 bcm_loop_field_qualify_FcoeOxIDClass( 17227 int unit, 17228 bcm_field_entry_t entry, 17229 bcm_class_t data, 17230 bcm_class_t mask) 17231 { 17232 return bcm_field_qualify_FcoeOxIDClass( 17233 BCM_CONTROL(unit)->unit, 17234 entry, 17235 data, 17236 mask); 17237 } 17238 17239 int 17240 bcm_loop_field_qualify_FcoeOxIDClass_get( 17241 int unit, 17242 bcm_field_entry_t entry, 17243 bcm_class_t * data, 17244 bcm_class_t * mask) 17245 { 17246 return bcm_field_qualify_FcoeOxIDClass_get( 17247 BCM_CONTROL(unit)->unit, 17248 entry, 17249 data, 17250 mask); 17251 } 17252 17253 int 17254 bcm_loop_field_qualify_FcoeOxID_get( 17255 int unit, 17256 bcm_field_entry_t entry, 17257 uint16 * data, 17258 uint16 * mask) 17259 { 17260 return bcm_field_qualify_FcoeOxID_get( 17261 BCM_CONTROL(unit)->unit, 17262 entry, 17263 data, 17264 mask); 17265 } 17266 17267 int 17268 bcm_loop_field_qualify_FcoeRxID( 17269 int unit, 17270 bcm_field_entry_t entry, 17271 uint16 data, 17272 uint16 mask) 17273 { 17274 return bcm_field_qualify_FcoeRxID( 17275 BCM_CONTROL(unit)->unit, 17276 entry, 17277 data, 17278 mask); 17279 } 17280 17281 int 17282 bcm_loop_field_qualify_FcoeRxIDClass( 17283 int unit, 17284 bcm_field_entry_t entry, 17285 bcm_class_t data, 17286 bcm_class_t mask) 17287 { 17288 return bcm_field_qualify_FcoeRxIDClass( 17289 BCM_CONTROL(unit)->unit, 17290 entry, 17291 data, 17292 mask); 17293 } 17294 17295 int 17296 bcm_loop_field_qualify_FcoeRxIDClass_get( 17297 int unit, 17298 bcm_field_entry_t entry, 17299 bcm_class_t * data, 17300 bcm_class_t * mask) 17301 { 17302 return bcm_field_qualify_FcoeRxIDClass_get( 17303 BCM_CONTROL(unit)->unit, 17304 entry, 17305 data, 17306 mask); 17307 } 17308 17309 int 17310 bcm_loop_field_qualify_FcoeRxID_get( 17311 int unit, 17312 bcm_field_entry_t entry, 17313 uint16 * data, 17314 uint16 * mask) 17315 { 17316 return bcm_field_qualify_FcoeRxID_get( 17317 BCM_CONTROL(unit)->unit, 17318 entry, 17319 data, 17320 mask); 17321 } 17322 17323 int 17324 bcm_loop_field_qualify_FcoeSOF( 17325 int unit, 17326 bcm_field_entry_t entry, 17327 uint8 data, 17328 uint8 mask) 17329 { 17330 return bcm_field_qualify_FcoeSOF( 17331 BCM_CONTROL(unit)->unit, 17332 entry, 17333 data, 17334 mask); 17335 } 17336 17337 int 17338 bcm_loop_field_qualify_FcoeSOF_get( 17339 int unit, 17340 bcm_field_entry_t entry, 17341 uint8 * data, 17342 uint8 * mask) 17343 { 17344 return bcm_field_qualify_FcoeSOF_get( 17345 BCM_CONTROL(unit)->unit, 17346 entry, 17347 data, 17348 mask); 17349 } 17350 17351 int 17352 bcm_loop_field_qualify_FcoeVersionIsZero( 17353 int unit, 17354 bcm_field_entry_t entry, 17355 uint8 data, 17356 uint8 mask) 17357 { 17358 return bcm_field_qualify_FcoeVersionIsZero( 17359 BCM_CONTROL(unit)->unit, 17360 entry, 17361 data, 17362 mask); 17363 } 17364 17365 int 17366 bcm_loop_field_qualify_FcoeVersionIsZero_get( 17367 int unit, 17368 bcm_field_entry_t entry, 17369 uint8 * data, 17370 uint8 * mask) 17371 { 17372 return bcm_field_qualify_FcoeVersionIsZero_get( 17373 BCM_CONTROL(unit)->unit, 17374 entry, 17375 data, 17376 mask); 17377 } 17378 17379 int 17380 bcm_loop_field_qualify_Fhei( 17381 int unit, 17382 bcm_field_entry_t entry, 17383 uint64 data, 17384 uint64 mask) 17385 { 17386 return bcm_field_qualify_Fhei( 17387 BCM_CONTROL(unit)->unit, 17388 entry, 17389 data, 17390 mask); 17391 } 17392 17393 int 17394 bcm_loop_field_qualify_FheiSize( 17395 int unit, 17396 bcm_field_entry_t entry, 17397 uint32 data, 17398 uint32 mask) 17399 { 17400 return bcm_field_qualify_FheiSize( 17401 BCM_CONTROL(unit)->unit, 17402 entry, 17403 data, 17404 mask); 17405 } 17406 17407 int 17408 bcm_loop_field_qualify_FheiSize_get( 17409 int unit, 17410 bcm_field_entry_t entry, 17411 uint32 * data, 17412 uint32 * mask) 17413 { 17414 return bcm_field_qualify_FheiSize_get( 17415 BCM_CONTROL(unit)->unit, 17416 entry, 17417 data, 17418 mask); 17419 } 17420 17421 int 17422 bcm_loop_field_qualify_Fhei_get( 17423 int unit, 17424 bcm_field_entry_t entry, 17425 uint64 * data, 17426 uint64 * mask) 17427 { 17428 return bcm_field_qualify_Fhei_get( 17429 BCM_CONTROL(unit)->unit, 17430 entry, 17431 data, 17432 mask); 17433 } 17434 17435 int 17436 bcm_loop_field_qualify_FibreChanCSCtl( 17437 int unit, 17438 bcm_field_entry_t entry, 17439 uint8 data, 17440 uint8 mask) 17441 { 17442 return bcm_field_qualify_FibreChanCSCtl( 17443 BCM_CONTROL(unit)->unit, 17444 entry, 17445 data, 17446 mask); 17447 } 17448 17449 int 17450 bcm_loop_field_qualify_FibreChanCSCtl_get( 17451 int unit, 17452 bcm_field_entry_t entry, 17453 uint8 * data, 17454 uint8 * mask) 17455 { 17456 return bcm_field_qualify_FibreChanCSCtl_get( 17457 BCM_CONTROL(unit)->unit, 17458 entry, 17459 data, 17460 mask); 17461 } 17462 17463 int 17464 bcm_loop_field_qualify_FibreChanDFCtl( 17465 int unit, 17466 bcm_field_entry_t entry, 17467 uint8 data, 17468 uint8 mask) 17469 { 17470 return bcm_field_qualify_FibreChanDFCtl( 17471 BCM_CONTROL(unit)->unit, 17472 entry, 17473 data, 17474 mask); 17475 } 17476 17477 int 17478 bcm_loop_field_qualify_FibreChanDFCtl_get( 17479 int unit, 17480 bcm_field_entry_t entry, 17481 uint8 * data, 17482 uint8 * mask) 17483 { 17484 return bcm_field_qualify_FibreChanDFCtl_get( 17485 BCM_CONTROL(unit)->unit, 17486 entry, 17487 data, 17488 mask); 17489 } 17490 17491 int 17492 bcm_loop_field_qualify_FibreChanDstId( 17493 int unit, 17494 bcm_field_entry_t entry, 17495 uint32 data, 17496 uint32 mask) 17497 { 17498 return bcm_field_qualify_FibreChanDstId( 17499 BCM_CONTROL(unit)->unit, 17500 entry, 17501 data, 17502 mask); 17503 } 17504 17505 int 17506 bcm_loop_field_qualify_FibreChanDstIdClass( 17507 int unit, 17508 bcm_field_entry_t entry, 17509 bcm_class_t data, 17510 bcm_class_t mask) 17511 { 17512 return bcm_field_qualify_FibreChanDstIdClass( 17513 BCM_CONTROL(unit)->unit, 17514 entry, 17515 data, 17516 mask); 17517 } 17518 17519 int 17520 bcm_loop_field_qualify_FibreChanDstIdClassLower( 17521 int unit, 17522 bcm_field_entry_t entry, 17523 bcm_class_t data, 17524 bcm_class_t mask) 17525 { 17526 return bcm_field_qualify_FibreChanDstIdClassLower( 17527 BCM_CONTROL(unit)->unit, 17528 entry, 17529 data, 17530 mask); 17531 } 17532 17533 int 17534 bcm_loop_field_qualify_FibreChanDstIdClassLower_get( 17535 int unit, 17536 bcm_field_entry_t entry, 17537 bcm_class_t * data, 17538 bcm_class_t * mask) 17539 { 17540 return bcm_field_qualify_FibreChanDstIdClassLower_get( 17541 BCM_CONTROL(unit)->unit, 17542 entry, 17543 data, 17544 mask); 17545 } 17546 17547 int 17548 bcm_loop_field_qualify_FibreChanDstIdClassMsbNibble( 17549 int unit, 17550 bcm_field_entry_t entry, 17551 bcm_class_t data, 17552 bcm_class_t mask) 17553 { 17554 return bcm_field_qualify_FibreChanDstIdClassMsbNibble( 17555 BCM_CONTROL(unit)->unit, 17556 entry, 17557 data, 17558 mask); 17559 } 17560 17561 int 17562 bcm_loop_field_qualify_FibreChanDstIdClassMsbNibble_get( 17563 int unit, 17564 bcm_field_entry_t entry, 17565 bcm_class_t * data, 17566 bcm_class_t * mask) 17567 { 17568 return bcm_field_qualify_FibreChanDstIdClassMsbNibble_get( 17569 BCM_CONTROL(unit)->unit, 17570 entry, 17571 data, 17572 mask); 17573 } 17574 17575 int 17576 bcm_loop_field_qualify_FibreChanDstIdClassUpper( 17577 int unit, 17578 bcm_field_entry_t entry, 17579 bcm_class_t data, 17580 bcm_class_t mask) 17581 { 17582 return bcm_field_qualify_FibreChanDstIdClassUpper( 17583 BCM_CONTROL(unit)->unit, 17584 entry, 17585 data, 17586 mask); 17587 } 17588 17589 int 17590 bcm_loop_field_qualify_FibreChanDstIdClassUpper_get( 17591 int unit, 17592 bcm_field_entry_t entry, 17593 bcm_class_t * data, 17594 bcm_class_t * mask) 17595 { 17596 return bcm_field_qualify_FibreChanDstIdClassUpper_get( 17597 BCM_CONTROL(unit)->unit, 17598 entry, 17599 data, 17600 mask); 17601 } 17602 17603 int 17604 bcm_loop_field_qualify_FibreChanDstIdClass_get( 17605 int unit, 17606 bcm_field_entry_t entry, 17607 bcm_class_t * data, 17608 bcm_class_t * mask) 17609 { 17610 return bcm_field_qualify_FibreChanDstIdClass_get( 17611 BCM_CONTROL(unit)->unit, 17612 entry, 17613 data, 17614 mask); 17615 } 17616 17617 int 17618 bcm_loop_field_qualify_FibreChanDstId_get( 17619 int unit, 17620 bcm_field_entry_t entry, 17621 uint32 * data, 17622 uint32 * mask) 17623 { 17624 return bcm_field_qualify_FibreChanDstId_get( 17625 BCM_CONTROL(unit)->unit, 17626 entry, 17627 data, 17628 mask); 17629 } 17630 17631 int 17632 bcm_loop_field_qualify_FibreChanFCtl( 17633 int unit, 17634 bcm_field_entry_t entry, 17635 uint32 data, 17636 uint32 mask) 17637 { 17638 return bcm_field_qualify_FibreChanFCtl( 17639 BCM_CONTROL(unit)->unit, 17640 entry, 17641 data, 17642 mask); 17643 } 17644 17645 int 17646 bcm_loop_field_qualify_FibreChanFCtl_get( 17647 int unit, 17648 bcm_field_entry_t entry, 17649 uint32 * data, 17650 uint32 * mask) 17651 { 17652 return bcm_field_qualify_FibreChanFCtl_get( 17653 BCM_CONTROL(unit)->unit, 17654 entry, 17655 data, 17656 mask); 17657 } 17658 17659 int 17660 bcm_loop_field_qualify_FibreChanInner( 17661 int unit, 17662 bcm_field_entry_t entry, 17663 bcm_field_FibreChan_t fibre_chan_type) 17664 { 17665 return bcm_field_qualify_FibreChanInner( 17666 BCM_CONTROL(unit)->unit, 17667 entry, 17668 fibre_chan_type); 17669 } 17670 17671 int 17672 bcm_loop_field_qualify_FibreChanInner_get( 17673 int unit, 17674 bcm_field_entry_t entry, 17675 bcm_field_FibreChan_t * fibre_chan_type) 17676 { 17677 return bcm_field_qualify_FibreChanInner_get( 17678 BCM_CONTROL(unit)->unit, 17679 entry, 17680 fibre_chan_type); 17681 } 17682 17683 int 17684 bcm_loop_field_qualify_FibreChanOuter( 17685 int unit, 17686 bcm_field_entry_t entry, 17687 bcm_field_FibreChan_t fibre_chan_type) 17688 { 17689 return bcm_field_qualify_FibreChanOuter( 17690 BCM_CONTROL(unit)->unit, 17691 entry, 17692 fibre_chan_type); 17693 } 17694 17695 int 17696 bcm_loop_field_qualify_FibreChanOuter_get( 17697 int unit, 17698 bcm_field_entry_t entry, 17699 bcm_field_FibreChan_t * fibre_chan_type) 17700 { 17701 return bcm_field_qualify_FibreChanOuter_get( 17702 BCM_CONTROL(unit)->unit, 17703 entry, 17704 fibre_chan_type); 17705 } 17706 17707 int 17708 bcm_loop_field_qualify_FibreChanRCtl( 17709 int unit, 17710 bcm_field_entry_t entry, 17711 uint8 data, 17712 uint8 mask) 17713 { 17714 return bcm_field_qualify_FibreChanRCtl( 17715 BCM_CONTROL(unit)->unit, 17716 entry, 17717 data, 17718 mask); 17719 } 17720 17721 int 17722 bcm_loop_field_qualify_FibreChanRCtl_get( 17723 int unit, 17724 bcm_field_entry_t entry, 17725 uint8 * data, 17726 uint8 * mask) 17727 { 17728 return bcm_field_qualify_FibreChanRCtl_get( 17729 BCM_CONTROL(unit)->unit, 17730 entry, 17731 data, 17732 mask); 17733 } 17734 17735 int 17736 bcm_loop_field_qualify_FibreChanSrcBindCheck( 17737 int unit, 17738 bcm_field_entry_t entry, 17739 uint8 data, 17740 uint8 mask) 17741 { 17742 return bcm_field_qualify_FibreChanSrcBindCheck( 17743 BCM_CONTROL(unit)->unit, 17744 entry, 17745 data, 17746 mask); 17747 } 17748 17749 int 17750 bcm_loop_field_qualify_FibreChanSrcBindCheck_get( 17751 int unit, 17752 bcm_field_entry_t entry, 17753 uint8 * data, 17754 uint8 * mask) 17755 { 17756 return bcm_field_qualify_FibreChanSrcBindCheck_get( 17757 BCM_CONTROL(unit)->unit, 17758 entry, 17759 data, 17760 mask); 17761 } 17762 17763 int 17764 bcm_loop_field_qualify_FibreChanSrcFpmaCheck( 17765 int unit, 17766 bcm_field_entry_t entry, 17767 uint8 data, 17768 uint8 mask) 17769 { 17770 return bcm_field_qualify_FibreChanSrcFpmaCheck( 17771 BCM_CONTROL(unit)->unit, 17772 entry, 17773 data, 17774 mask); 17775 } 17776 17777 int 17778 bcm_loop_field_qualify_FibreChanSrcFpmaCheck_get( 17779 int unit, 17780 bcm_field_entry_t entry, 17781 uint8 * data, 17782 uint8 * mask) 17783 { 17784 return bcm_field_qualify_FibreChanSrcFpmaCheck_get( 17785 BCM_CONTROL(unit)->unit, 17786 entry, 17787 data, 17788 mask); 17789 } 17790 17791 int 17792 bcm_loop_field_qualify_FibreChanSrcId( 17793 int unit, 17794 bcm_field_entry_t entry, 17795 uint32 data, 17796 uint32 mask) 17797 { 17798 return bcm_field_qualify_FibreChanSrcId( 17799 BCM_CONTROL(unit)->unit, 17800 entry, 17801 data, 17802 mask); 17803 } 17804 17805 int 17806 bcm_loop_field_qualify_FibreChanSrcIdClass( 17807 int unit, 17808 bcm_field_entry_t entry, 17809 bcm_class_t data, 17810 bcm_class_t mask) 17811 { 17812 return bcm_field_qualify_FibreChanSrcIdClass( 17813 BCM_CONTROL(unit)->unit, 17814 entry, 17815 data, 17816 mask); 17817 } 17818 17819 int 17820 bcm_loop_field_qualify_FibreChanSrcIdClassLower( 17821 int unit, 17822 bcm_field_entry_t entry, 17823 bcm_class_t data, 17824 bcm_class_t mask) 17825 { 17826 return bcm_field_qualify_FibreChanSrcIdClassLower( 17827 BCM_CONTROL(unit)->unit, 17828 entry, 17829 data, 17830 mask); 17831 } 17832 17833 int 17834 bcm_loop_field_qualify_FibreChanSrcIdClassLower_get( 17835 int unit, 17836 bcm_field_entry_t entry, 17837 bcm_class_t * data, 17838 bcm_class_t * mask) 17839 { 17840 return bcm_field_qualify_FibreChanSrcIdClassLower_get( 17841 BCM_CONTROL(unit)->unit, 17842 entry, 17843 data, 17844 mask); 17845 } 17846 17847 int 17848 bcm_loop_field_qualify_FibreChanSrcIdClassMsbNibble( 17849 int unit, 17850 bcm_field_entry_t entry, 17851 bcm_class_t data, 17852 bcm_class_t mask) 17853 { 17854 return bcm_field_qualify_FibreChanSrcIdClassMsbNibble( 17855 BCM_CONTROL(unit)->unit, 17856 entry, 17857 data, 17858 mask); 17859 } 17860 17861 int 17862 bcm_loop_field_qualify_FibreChanSrcIdClassMsbNibble_get( 17863 int unit, 17864 bcm_field_entry_t entry, 17865 bcm_class_t * data, 17866 bcm_class_t * mask) 17867 { 17868 return bcm_field_qualify_FibreChanSrcIdClassMsbNibble_get( 17869 BCM_CONTROL(unit)->unit, 17870 entry, 17871 data, 17872 mask); 17873 } 17874 17875 int 17876 bcm_loop_field_qualify_FibreChanSrcIdClassUpper( 17877 int unit, 17878 bcm_field_entry_t entry, 17879 bcm_class_t data, 17880 bcm_class_t mask) 17881 { 17882 return bcm_field_qualify_FibreChanSrcIdClassUpper( 17883 BCM_CONTROL(unit)->unit, 17884 entry, 17885 data, 17886 mask); 17887 } 17888 17889 int 17890 bcm_loop_field_qualify_FibreChanSrcIdClassUpper_get( 17891 int unit, 17892 bcm_field_entry_t entry, 17893 bcm_class_t * data, 17894 bcm_class_t * mask) 17895 { 17896 return bcm_field_qualify_FibreChanSrcIdClassUpper_get( 17897 BCM_CONTROL(unit)->unit, 17898 entry, 17899 data, 17900 mask); 17901 } 17902 17903 int 17904 bcm_loop_field_qualify_FibreChanSrcIdClass_get( 17905 int unit, 17906 bcm_field_entry_t entry, 17907 bcm_class_t * data, 17908 bcm_class_t * mask) 17909 { 17910 return bcm_field_qualify_FibreChanSrcIdClass_get( 17911 BCM_CONTROL(unit)->unit, 17912 entry, 17913 data, 17914 mask); 17915 } 17916 17917 int 17918 bcm_loop_field_qualify_FibreChanSrcId_get( 17919 int unit, 17920 bcm_field_entry_t entry, 17921 uint32 * data, 17922 uint32 * mask) 17923 { 17924 return bcm_field_qualify_FibreChanSrcId_get( 17925 BCM_CONTROL(unit)->unit, 17926 entry, 17927 data, 17928 mask); 17929 } 17930 17931 int 17932 bcm_loop_field_qualify_FibreChanType( 17933 int unit, 17934 bcm_field_entry_t entry, 17935 uint8 data, 17936 uint8 mask) 17937 { 17938 return bcm_field_qualify_FibreChanType( 17939 BCM_CONTROL(unit)->unit, 17940 entry, 17941 data, 17942 mask); 17943 } 17944 17945 int 17946 bcm_loop_field_qualify_FibreChanType_get( 17947 int unit, 17948 bcm_field_entry_t entry, 17949 uint8 * data, 17950 uint8 * mask) 17951 { 17952 return bcm_field_qualify_FibreChanType_get( 17953 BCM_CONTROL(unit)->unit, 17954 entry, 17955 data, 17956 mask); 17957 } 17958 17959 int 17960 bcm_loop_field_qualify_FibreChanVFTFabricId( 17961 int unit, 17962 bcm_field_entry_t entry, 17963 uint16 data, 17964 uint16 mask) 17965 { 17966 return bcm_field_qualify_FibreChanVFTFabricId( 17967 BCM_CONTROL(unit)->unit, 17968 entry, 17969 data, 17970 mask); 17971 } 17972 17973 int 17974 bcm_loop_field_qualify_FibreChanVFTFabricId_get( 17975 int unit, 17976 bcm_field_entry_t entry, 17977 uint16 * data, 17978 uint16 * mask) 17979 { 17980 return bcm_field_qualify_FibreChanVFTFabricId_get( 17981 BCM_CONTROL(unit)->unit, 17982 entry, 17983 data, 17984 mask); 17985 } 17986 17987 int 17988 bcm_loop_field_qualify_FibreChanVFTHopCount( 17989 int unit, 17990 bcm_field_entry_t entry, 17991 uint8 data, 17992 uint8 mask) 17993 { 17994 return bcm_field_qualify_FibreChanVFTHopCount( 17995 BCM_CONTROL(unit)->unit, 17996 entry, 17997 data, 17998 mask); 17999 } 18000 18001 int 18002 bcm_loop_field_qualify_FibreChanVFTHopCount_get( 18003 int unit, 18004 bcm_field_entry_t entry, 18005 uint8 * data, 18006 uint8 * mask) 18007 { 18008 return bcm_field_qualify_FibreChanVFTHopCount_get( 18009 BCM_CONTROL(unit)->unit, 18010 entry, 18011 data, 18012 mask); 18013 } 18014 18015 int 18016 bcm_loop_field_qualify_FibreChanVFTPri( 18017 int unit, 18018 bcm_field_entry_t entry, 18019 uint8 data, 18020 uint8 mask) 18021 { 18022 return bcm_field_qualify_FibreChanVFTPri( 18023 BCM_CONTROL(unit)->unit, 18024 entry, 18025 data, 18026 mask); 18027 } 18028 18029 int 18030 bcm_loop_field_qualify_FibreChanVFTPri_get( 18031 int unit, 18032 bcm_field_entry_t entry, 18033 uint8 * data, 18034 uint8 * mask) 18035 { 18036 return bcm_field_qualify_FibreChanVFTPri_get( 18037 BCM_CONTROL(unit)->unit, 18038 entry, 18039 data, 18040 mask); 18041 } 18042 18043 int 18044 bcm_loop_field_qualify_FibreChanVFTValid( 18045 int unit, 18046 bcm_field_entry_t entry, 18047 uint8 data, 18048 uint8 mask) 18049 { 18050 return bcm_field_qualify_FibreChanVFTValid( 18051 BCM_CONTROL(unit)->unit, 18052 entry, 18053 data, 18054 mask); 18055 } 18056 18057 int 18058 bcm_loop_field_qualify_FibreChanVFTValid_get( 18059 int unit, 18060 bcm_field_entry_t entry, 18061 uint8 * data, 18062 uint8 * mask) 18063 { 18064 return bcm_field_qualify_FibreChanVFTValid_get( 18065 BCM_CONTROL(unit)->unit, 18066 entry, 18067 data, 18068 mask); 18069 } 18070 18071 int 18072 bcm_loop_field_qualify_FibreChanVFTVersion( 18073 int unit, 18074 bcm_field_entry_t entry, 18075 uint8 data, 18076 uint8 mask) 18077 { 18078 return bcm_field_qualify_FibreChanVFTVersion( 18079 BCM_CONTROL(unit)->unit, 18080 entry, 18081 data, 18082 mask); 18083 } 18084 18085 int 18086 bcm_loop_field_qualify_FibreChanVFTVersion_get( 18087 int unit, 18088 bcm_field_entry_t entry, 18089 uint8 * data, 18090 uint8 * mask) 18091 { 18092 return bcm_field_qualify_FibreChanVFTVersion_get( 18093 BCM_CONTROL(unit)->unit, 18094 entry, 18095 data, 18096 mask); 18097 } 18098 18099 int 18100 bcm_loop_field_qualify_FibreChanVFTVsanId( 18101 int unit, 18102 bcm_field_entry_t entry, 18103 uint16 data, 18104 uint16 mask) 18105 { 18106 return bcm_field_qualify_FibreChanVFTVsanId( 18107 BCM_CONTROL(unit)->unit, 18108 entry, 18109 data, 18110 mask); 18111 } 18112 18113 int 18114 bcm_loop_field_qualify_FibreChanVFTVsanId_get( 18115 int unit, 18116 bcm_field_entry_t entry, 18117 uint16 * data, 18118 uint16 * mask) 18119 { 18120 return bcm_field_qualify_FibreChanVFTVsanId_get( 18121 BCM_CONTROL(unit)->unit, 18122 entry, 18123 data, 18124 mask); 18125 } 18126 18127 int 18128 bcm_loop_field_qualify_FibreChanVFTVsanPri( 18129 int unit, 18130 bcm_field_entry_t entry, 18131 uint8 data, 18132 uint8 mask) 18133 { 18134 return bcm_field_qualify_FibreChanVFTVsanPri( 18135 BCM_CONTROL(unit)->unit, 18136 entry, 18137 data, 18138 mask); 18139 } 18140 18141 int 18142 bcm_loop_field_qualify_FibreChanVFTVsanPri_get( 18143 int unit, 18144 bcm_field_entry_t entry, 18145 uint8 * data, 18146 uint8 * mask) 18147 { 18148 return bcm_field_qualify_FibreChanVFTVsanPri_get( 18149 BCM_CONTROL(unit)->unit, 18150 entry, 18151 data, 18152 mask); 18153 } 18154 18155 int 18156 bcm_loop_field_qualify_FibreChanZoneCheck( 18157 int unit, 18158 bcm_field_entry_t entry, 18159 uint8 data, 18160 uint8 mask) 18161 { 18162 return bcm_field_qualify_FibreChanZoneCheck( 18163 BCM_CONTROL(unit)->unit, 18164 entry, 18165 data, 18166 mask); 18167 } 18168 18169 int 18170 bcm_loop_field_qualify_FibreChanZoneCheck_get( 18171 int unit, 18172 bcm_field_entry_t entry, 18173 uint8 * data, 18174 uint8 * mask) 18175 { 18176 return bcm_field_qualify_FibreChanZoneCheck_get( 18177 BCM_CONTROL(unit)->unit, 18178 entry, 18179 data, 18180 mask); 18181 } 18182 18183 int 18184 bcm_loop_field_qualify_FlowControlType( 18185 int unit, 18186 bcm_field_entry_t entry, 18187 bcm_field_flow_control_pkt_type_t fc_type) 18188 { 18189 return bcm_field_qualify_FlowControlType( 18190 BCM_CONTROL(unit)->unit, 18191 entry, 18192 fc_type); 18193 } 18194 18195 int 18196 bcm_loop_field_qualify_FlowControlType_get( 18197 int unit, 18198 bcm_field_entry_t entry, 18199 bcm_field_flow_control_pkt_type_t * fc_type) 18200 { 18201 return bcm_field_qualify_FlowControlType_get( 18202 BCM_CONTROL(unit)->unit, 18203 entry, 18204 fc_type); 18205 } 18206 18207 int 18208 bcm_loop_field_qualify_FlowId( 18209 int unit, 18210 bcm_field_entry_t entry, 18211 uint16 data, 18212 uint16 mask) 18213 { 18214 return bcm_field_qualify_FlowId( 18215 BCM_CONTROL(unit)->unit, 18216 entry, 18217 data, 18218 mask); 18219 } 18220 18221 int 18222 bcm_loop_field_qualify_FlowId_get( 18223 int unit, 18224 bcm_field_entry_t entry, 18225 uint16 * data, 18226 uint16 * mask) 18227 { 18228 return bcm_field_qualify_FlowId_get( 18229 BCM_CONTROL(unit)->unit, 18230 entry, 18231 data, 18232 mask); 18233 } 18234 18235 int 18236 bcm_loop_field_qualify_FlowtrackerCheck( 18237 int unit, 18238 bcm_field_entry_t entry, 18239 bcm_flowtracker_group_t flow_group_id, 18240 uint32 num_checks, 18241 bcm_field_flowtrackercheck_t * list_of_check_ids) 18242 { 18243 return bcm_field_qualify_FlowtrackerCheck( 18244 BCM_CONTROL(unit)->unit, 18245 entry, 18246 flow_group_id, 18247 num_checks, 18248 list_of_check_ids); 18249 } 18250 18251 int 18252 bcm_loop_field_qualify_FlowtrackerCheck_get( 18253 int unit, 18254 bcm_field_entry_t entry, 18255 bcm_flowtracker_group_t flow_group_id, 18256 uint32 num_checks, 18257 bcm_field_flowtrackercheck_t * list_of_check_ids, 18258 uint32 * actual_num_checks) 18259 { 18260 return bcm_field_qualify_FlowtrackerCheck_get( 18261 BCM_CONTROL(unit)->unit, 18262 entry, 18263 flow_group_id, 18264 num_checks, 18265 list_of_check_ids, 18266 actual_num_checks); 18267 } 18268 18269 int 18270 bcm_loop_field_qualify_FlowtrackerClassId( 18271 int unit, 18272 bcm_field_entry_t entry, 18273 int data, 18274 int mask) 18275 { 18276 return bcm_field_qualify_FlowtrackerClassId( 18277 BCM_CONTROL(unit)->unit, 18278 entry, 18279 data, 18280 mask); 18281 } 18282 18283 int 18284 bcm_loop_field_qualify_FlowtrackerClassId_get( 18285 int unit, 18286 bcm_field_entry_t entry, 18287 int * data, 18288 int * mask) 18289 { 18290 return bcm_field_qualify_FlowtrackerClassId_get( 18291 BCM_CONTROL(unit)->unit, 18292 entry, 18293 data, 18294 mask); 18295 } 18296 18297 int 18298 bcm_loop_field_qualify_FlowtrackerCollectorCopy( 18299 int unit, 18300 bcm_field_entry_t entry, 18301 uint8 data, 18302 uint8 mask) 18303 { 18304 return bcm_field_qualify_FlowtrackerCollectorCopy( 18305 BCM_CONTROL(unit)->unit, 18306 entry, 18307 data, 18308 mask); 18309 } 18310 18311 int 18312 bcm_loop_field_qualify_FlowtrackerCollectorCopy_get( 18313 int unit, 18314 bcm_field_entry_t entry, 18315 uint8 * data, 18316 uint8 * mask) 18317 { 18318 return bcm_field_qualify_FlowtrackerCollectorCopy_get( 18319 BCM_CONTROL(unit)->unit, 18320 entry, 18321 data, 18322 mask); 18323 } 18324 18325 int 18326 bcm_loop_field_qualify_FlowtrackerDisabled( 18327 int unit, 18328 bcm_field_entry_t entry, 18329 uint8 data, 18330 uint8 mask) 18331 { 18332 return bcm_field_qualify_FlowtrackerDisabled( 18333 BCM_CONTROL(unit)->unit, 18334 entry, 18335 data, 18336 mask); 18337 } 18338 18339 int 18340 bcm_loop_field_qualify_FlowtrackerDisabled_get( 18341 int unit, 18342 bcm_field_entry_t entry, 18343 uint8 * data, 18344 uint8 * mask) 18345 { 18346 return bcm_field_qualify_FlowtrackerDisabled_get( 18347 BCM_CONTROL(unit)->unit, 18348 entry, 18349 data, 18350 mask); 18351 } 18352 18353 int 18354 bcm_loop_field_qualify_FlowtrackerExportQueueFull( 18355 int unit, 18356 bcm_field_entry_t entry, 18357 uint8 data, 18358 uint8 mask) 18359 { 18360 return bcm_field_qualify_FlowtrackerExportQueueFull( 18361 BCM_CONTROL(unit)->unit, 18362 entry, 18363 data, 18364 mask); 18365 } 18366 18367 int 18368 bcm_loop_field_qualify_FlowtrackerExportQueueFull_get( 18369 int unit, 18370 bcm_field_entry_t entry, 18371 uint8 * data, 18372 uint8 * mask) 18373 { 18374 return bcm_field_qualify_FlowtrackerExportQueueFull_get( 18375 BCM_CONTROL(unit)->unit, 18376 entry, 18377 data, 18378 mask); 18379 } 18380 18381 int 18382 bcm_loop_field_qualify_FlowtrackerFlowTableFull( 18383 int unit, 18384 bcm_field_entry_t entry, 18385 uint8 data, 18386 uint8 mask) 18387 { 18388 return bcm_field_qualify_FlowtrackerFlowTableFull( 18389 BCM_CONTROL(unit)->unit, 18390 entry, 18391 data, 18392 mask); 18393 } 18394 18395 int 18396 bcm_loop_field_qualify_FlowtrackerFlowTableFull_get( 18397 int unit, 18398 bcm_field_entry_t entry, 18399 uint8 * data, 18400 uint8 * mask) 18401 { 18402 return bcm_field_qualify_FlowtrackerFlowTableFull_get( 18403 BCM_CONTROL(unit)->unit, 18404 entry, 18405 data, 18406 mask); 18407 } 18408 18409 int 18410 bcm_loop_field_qualify_FlowtrackerGroupFlowExceeded( 18411 int unit, 18412 bcm_field_entry_t entry, 18413 uint8 data, 18414 uint8 mask) 18415 { 18416 return bcm_field_qualify_FlowtrackerGroupFlowExceeded( 18417 BCM_CONTROL(unit)->unit, 18418 entry, 18419 data, 18420 mask); 18421 } 18422 18423 int 18424 bcm_loop_field_qualify_FlowtrackerGroupFlowExceeded_get( 18425 int unit, 18426 bcm_field_entry_t entry, 18427 uint8 * data, 18428 uint8 * mask) 18429 { 18430 return bcm_field_qualify_FlowtrackerGroupFlowExceeded_get( 18431 BCM_CONTROL(unit)->unit, 18432 entry, 18433 data, 18434 mask); 18435 } 18436 18437 int 18438 bcm_loop_field_qualify_FlowtrackerGroupId( 18439 int unit, 18440 bcm_field_entry_t entry, 18441 int data, 18442 int mask) 18443 { 18444 return bcm_field_qualify_FlowtrackerGroupId( 18445 BCM_CONTROL(unit)->unit, 18446 entry, 18447 data, 18448 mask); 18449 } 18450 18451 int 18452 bcm_loop_field_qualify_FlowtrackerGroupId_get( 18453 int unit, 18454 bcm_field_entry_t entry, 18455 int * data, 18456 int * mask) 18457 { 18458 return bcm_field_qualify_FlowtrackerGroupId_get( 18459 BCM_CONTROL(unit)->unit, 18460 entry, 18461 data, 18462 mask); 18463 } 18464 18465 int 18466 bcm_loop_field_qualify_FlowtrackerGroupValid( 18467 int unit, 18468 bcm_field_entry_t entry, 18469 uint8 data, 18470 uint8 mask) 18471 { 18472 return bcm_field_qualify_FlowtrackerGroupValid( 18473 BCM_CONTROL(unit)->unit, 18474 entry, 18475 data, 18476 mask); 18477 } 18478 18479 int 18480 bcm_loop_field_qualify_FlowtrackerGroupValid_get( 18481 int unit, 18482 bcm_field_entry_t entry, 18483 uint8 * data, 18484 uint8 * mask) 18485 { 18486 return bcm_field_qualify_FlowtrackerGroupValid_get( 18487 BCM_CONTROL(unit)->unit, 18488 entry, 18489 data, 18490 mask); 18491 } 18492 18493 int 18494 bcm_loop_field_qualify_FlowtrackerLearn( 18495 int unit, 18496 bcm_field_entry_t entry, 18497 uint8 data, 18498 uint8 mask) 18499 { 18500 return bcm_field_qualify_FlowtrackerLearn( 18501 BCM_CONTROL(unit)->unit, 18502 entry, 18503 data, 18504 mask); 18505 } 18506 18507 int 18508 bcm_loop_field_qualify_FlowtrackerLearn_get( 18509 int unit, 18510 bcm_field_entry_t entry, 18511 uint8 * data, 18512 uint8 * mask) 18513 { 18514 return bcm_field_qualify_FlowtrackerLearn_get( 18515 BCM_CONTROL(unit)->unit, 18516 entry, 18517 data, 18518 mask); 18519 } 18520 18521 int 18522 bcm_loop_field_qualify_FlowtrackerMeteringExceeded( 18523 int unit, 18524 bcm_field_entry_t entry, 18525 uint8 data, 18526 uint8 mask) 18527 { 18528 return bcm_field_qualify_FlowtrackerMeteringExceeded( 18529 BCM_CONTROL(unit)->unit, 18530 entry, 18531 data, 18532 mask); 18533 } 18534 18535 int 18536 bcm_loop_field_qualify_FlowtrackerMeteringExceeded_get( 18537 int unit, 18538 bcm_field_entry_t entry, 18539 uint8 * data, 18540 uint8 * mask) 18541 { 18542 return bcm_field_qualify_FlowtrackerMeteringExceeded_get( 18543 BCM_CONTROL(unit)->unit, 18544 entry, 18545 data, 18546 mask); 18547 } 18548 18549 int 18550 bcm_loop_field_qualify_ForwardCopy( 18551 int unit, 18552 bcm_field_entry_t entry, 18553 uint8 data, 18554 uint8 mask) 18555 { 18556 return bcm_field_qualify_ForwardCopy( 18557 BCM_CONTROL(unit)->unit, 18558 entry, 18559 data, 18560 mask); 18561 } 18562 18563 int 18564 bcm_loop_field_qualify_ForwardCopy_get( 18565 int unit, 18566 bcm_field_entry_t entry, 18567 uint8 * data, 18568 uint8 * mask) 18569 { 18570 return bcm_field_qualify_ForwardCopy_get( 18571 BCM_CONTROL(unit)->unit, 18572 entry, 18573 data, 18574 mask); 18575 } 18576 18577 int 18578 bcm_loop_field_qualify_ForwardHdrDstMac( 18579 int unit, 18580 bcm_field_entry_t entry, 18581 bcm_mac_t data, 18582 bcm_mac_t mask) 18583 { 18584 return bcm_field_qualify_ForwardHdrDstMac( 18585 BCM_CONTROL(unit)->unit, 18586 entry, 18587 data, 18588 mask); 18589 } 18590 18591 int 18592 bcm_loop_field_qualify_ForwardHdrDstMac_get( 18593 int unit, 18594 bcm_field_entry_t entry, 18595 bcm_mac_t * data, 18596 bcm_mac_t * mask) 18597 { 18598 return bcm_field_qualify_ForwardHdrDstMac_get( 18599 BCM_CONTROL(unit)->unit, 18600 entry, 18601 data, 18602 mask); 18603 } 18604 18605 int 18606 bcm_loop_field_qualify_ForwardHdrSrcMac( 18607 int unit, 18608 bcm_field_entry_t entry, 18609 bcm_mac_t data, 18610 bcm_mac_t mask) 18611 { 18612 return bcm_field_qualify_ForwardHdrSrcMac( 18613 BCM_CONTROL(unit)->unit, 18614 entry, 18615 data, 18616 mask); 18617 } 18618 18619 int 18620 bcm_loop_field_qualify_ForwardHdrSrcMac_get( 18621 int unit, 18622 bcm_field_entry_t entry, 18623 bcm_mac_t * data, 18624 bcm_mac_t * mask) 18625 { 18626 return bcm_field_qualify_ForwardHdrSrcMac_get( 18627 BCM_CONTROL(unit)->unit, 18628 entry, 18629 data, 18630 mask); 18631 } 18632 18633 int 18634 bcm_loop_field_qualify_ForwardHdrVlanId( 18635 int unit, 18636 bcm_field_entry_t entry, 18637 bcm_vlan_t data, 18638 bcm_vlan_t mask) 18639 { 18640 return bcm_field_qualify_ForwardHdrVlanId( 18641 BCM_CONTROL(unit)->unit, 18642 entry, 18643 data, 18644 mask); 18645 } 18646 18647 int 18648 bcm_loop_field_qualify_ForwardHdrVlanId_get( 18649 int unit, 18650 bcm_field_entry_t entry, 18651 bcm_vlan_t * data, 18652 bcm_vlan_t * mask) 18653 { 18654 return bcm_field_qualify_ForwardHdrVlanId_get( 18655 BCM_CONTROL(unit)->unit, 18656 entry, 18657 data, 18658 mask); 18659 } 18660 18661 int 18662 bcm_loop_field_qualify_ForwardingHeaderOffset( 18663 int unit, 18664 bcm_field_entry_t entry, 18665 bcm_field_data_offset_base_t base_header, 18666 uint32 data, 18667 uint32 mask) 18668 { 18669 return bcm_field_qualify_ForwardingHeaderOffset( 18670 BCM_CONTROL(unit)->unit, 18671 entry, 18672 base_header, 18673 data, 18674 mask); 18675 } 18676 18677 int 18678 bcm_loop_field_qualify_ForwardingHeaderOffset_get( 18679 int unit, 18680 bcm_field_entry_t entry, 18681 bcm_field_data_offset_base_t * base_header, 18682 uint32 * data, 18683 uint32 * mask) 18684 { 18685 return bcm_field_qualify_ForwardingHeaderOffset_get( 18686 BCM_CONTROL(unit)->unit, 18687 entry, 18688 base_header, 18689 data, 18690 mask); 18691 } 18692 18693 int 18694 bcm_loop_field_qualify_ForwardingType( 18695 int unit, 18696 bcm_field_entry_t entry, 18697 bcm_field_ForwardingType_t type) 18698 { 18699 return bcm_field_qualify_ForwardingType( 18700 BCM_CONTROL(unit)->unit, 18701 entry, 18702 type); 18703 } 18704 18705 int 18706 bcm_loop_field_qualify_ForwardingType_get( 18707 int unit, 18708 bcm_field_entry_t entry, 18709 bcm_field_ForwardingType_t * type) 18710 { 18711 return bcm_field_qualify_ForwardingType_get( 18712 BCM_CONTROL(unit)->unit, 18713 entry, 18714 type); 18715 } 18716 18717 int 18718 bcm_loop_field_qualify_ForwardingVlanId( 18719 int unit, 18720 bcm_field_entry_t entry, 18721 bcm_vlan_t data, 18722 bcm_vlan_t mask) 18723 { 18724 return bcm_field_qualify_ForwardingVlanId( 18725 BCM_CONTROL(unit)->unit, 18726 entry, 18727 data, 18728 mask); 18729 } 18730 18731 int 18732 bcm_loop_field_qualify_ForwardingVlanId_get( 18733 int unit, 18734 bcm_field_entry_t entry, 18735 bcm_vlan_t * data, 18736 bcm_vlan_t * mask) 18737 { 18738 return bcm_field_qualify_ForwardingVlanId_get( 18739 BCM_CONTROL(unit)->unit, 18740 entry, 18741 data, 18742 mask); 18743 } 18744 18745 int 18746 bcm_loop_field_qualify_ForwardingVlanValid( 18747 int unit, 18748 bcm_field_entry_t entry, 18749 uint8 data, 18750 uint8 mask) 18751 { 18752 return bcm_field_qualify_ForwardingVlanValid( 18753 BCM_CONTROL(unit)->unit, 18754 entry, 18755 data, 18756 mask); 18757 } 18758 18759 int 18760 bcm_loop_field_qualify_ForwardingVlanValid_get( 18761 int unit, 18762 bcm_field_entry_t entry, 18763 uint8 * data, 18764 uint8 * mask) 18765 { 18766 return bcm_field_qualify_ForwardingVlanValid_get( 18767 BCM_CONTROL(unit)->unit, 18768 entry, 18769 data, 18770 mask); 18771 } 18772 18773 int 18774 bcm_loop_field_qualify_FromMacSecPort( 18775 int unit, 18776 bcm_field_entry_t entry, 18777 uint8 data, 18778 uint8 mask) 18779 { 18780 return bcm_field_qualify_FromMacSecPort( 18781 BCM_CONTROL(unit)->unit, 18782 entry, 18783 data, 18784 mask); 18785 } 18786 18787 int 18788 bcm_loop_field_qualify_FromMacSecPort_get( 18789 int unit, 18790 bcm_field_entry_t entry, 18791 uint8 * data, 18792 uint8 * mask) 18793 { 18794 return bcm_field_qualify_FromMacSecPort_get( 18795 BCM_CONTROL(unit)->unit, 18796 entry, 18797 data, 18798 mask); 18799 } 18800 18801 int 18802 bcm_loop_field_qualify_FrontPanelPkt( 18803 int unit, 18804 bcm_field_entry_t entry, 18805 uint8 data, 18806 uint8 mask) 18807 { 18808 return bcm_field_qualify_FrontPanelPkt( 18809 BCM_CONTROL(unit)->unit, 18810 entry, 18811 data, 18812 mask); 18813 } 18814 18815 int 18816 bcm_loop_field_qualify_FrontPanelPkt_get( 18817 int unit, 18818 bcm_field_entry_t entry, 18819 uint8 * data, 18820 uint8 * mask) 18821 { 18822 return bcm_field_qualify_FrontPanelPkt_get( 18823 BCM_CONTROL(unit)->unit, 18824 entry, 18825 data, 18826 mask); 18827 } 18828 18829 int 18830 bcm_loop_field_qualify_GbpDstId( 18831 int unit, 18832 bcm_field_entry_t entry, 18833 uint16 data, 18834 uint16 mask) 18835 { 18836 return bcm_field_qualify_GbpDstId( 18837 BCM_CONTROL(unit)->unit, 18838 entry, 18839 data, 18840 mask); 18841 } 18842 18843 int 18844 bcm_loop_field_qualify_GbpDstId_get( 18845 int unit, 18846 bcm_field_entry_t entry, 18847 uint16 * data, 18848 uint16 * mask) 18849 { 18850 return bcm_field_qualify_GbpDstId_get( 18851 BCM_CONTROL(unit)->unit, 18852 entry, 18853 data, 18854 mask); 18855 } 18856 18857 int 18858 bcm_loop_field_qualify_GbpPresent( 18859 int unit, 18860 bcm_field_entry_t entry, 18861 uint8 data, 18862 uint8 mask) 18863 { 18864 return bcm_field_qualify_GbpPresent( 18865 BCM_CONTROL(unit)->unit, 18866 entry, 18867 data, 18868 mask); 18869 } 18870 18871 int 18872 bcm_loop_field_qualify_GbpPresent_get( 18873 int unit, 18874 bcm_field_entry_t entry, 18875 uint8 * data, 18876 uint8 * mask) 18877 { 18878 return bcm_field_qualify_GbpPresent_get( 18879 BCM_CONTROL(unit)->unit, 18880 entry, 18881 data, 18882 mask); 18883 } 18884 18885 int 18886 bcm_loop_field_qualify_GbpSrcId( 18887 int unit, 18888 bcm_field_entry_t entry, 18889 uint16 data, 18890 uint16 mask) 18891 { 18892 return bcm_field_qualify_GbpSrcId( 18893 BCM_CONTROL(unit)->unit, 18894 entry, 18895 data, 18896 mask); 18897 } 18898 18899 int 18900 bcm_loop_field_qualify_GbpSrcId_get( 18901 int unit, 18902 bcm_field_entry_t entry, 18903 uint16 * data, 18904 uint16 * mask) 18905 { 18906 return bcm_field_qualify_GbpSrcId_get( 18907 BCM_CONTROL(unit)->unit, 18908 entry, 18909 data, 18910 mask); 18911 } 18912 18913 int 18914 bcm_loop_field_qualify_GeneratedTtl( 18915 int unit, 18916 bcm_field_entry_t entry, 18917 uint32 data, 18918 uint32 mask) 18919 { 18920 return bcm_field_qualify_GeneratedTtl( 18921 BCM_CONTROL(unit)->unit, 18922 entry, 18923 data, 18924 mask); 18925 } 18926 18927 int 18928 bcm_loop_field_qualify_GeneratedTtl_get( 18929 int unit, 18930 bcm_field_entry_t entry, 18931 uint32 * data, 18932 uint32 * mask) 18933 { 18934 return bcm_field_qualify_GeneratedTtl_get( 18935 BCM_CONTROL(unit)->unit, 18936 entry, 18937 data, 18938 mask); 18939 } 18940 18941 int 18942 bcm_loop_field_qualify_GenericAssociatedChannelLabelValid( 18943 int unit, 18944 bcm_field_entry_t entry, 18945 uint8 data, 18946 uint8 mask) 18947 { 18948 return bcm_field_qualify_GenericAssociatedChannelLabelValid( 18949 BCM_CONTROL(unit)->unit, 18950 entry, 18951 data, 18952 mask); 18953 } 18954 18955 int 18956 bcm_loop_field_qualify_GenericAssociatedChannelLabelValid_get( 18957 int unit, 18958 bcm_field_entry_t entry, 18959 uint8 * data, 18960 uint8 * mask) 18961 { 18962 return bcm_field_qualify_GenericAssociatedChannelLabelValid_get( 18963 BCM_CONTROL(unit)->unit, 18964 entry, 18965 data, 18966 mask); 18967 } 18968 18969 int 18970 bcm_loop_field_qualify_GenevePktVersionZero( 18971 int unit, 18972 bcm_field_entry_t entry, 18973 uint8 data, 18974 uint8 mask) 18975 { 18976 return bcm_field_qualify_GenevePktVersionZero( 18977 BCM_CONTROL(unit)->unit, 18978 entry, 18979 data, 18980 mask); 18981 } 18982 18983 int 18984 bcm_loop_field_qualify_GenevePktVersionZero_get( 18985 int unit, 18986 bcm_field_entry_t entry, 18987 uint8 * data, 18988 uint8 * mask) 18989 { 18990 return bcm_field_qualify_GenevePktVersionZero_get( 18991 BCM_CONTROL(unit)->unit, 18992 entry, 18993 data, 18994 mask); 18995 } 18996 18997 int 18998 bcm_loop_field_qualify_GenevePktWithOam( 18999 int unit, 19000 bcm_field_entry_t entry, 19001 uint8 data, 19002 uint8 mask) 19003 { 19004 return bcm_field_qualify_GenevePktWithOam( 19005 BCM_CONTROL(unit)->unit, 19006 entry, 19007 data, 19008 mask); 19009 } 19010 19011 int 19012 bcm_loop_field_qualify_GenevePktWithOam_get( 19013 int unit, 19014 bcm_field_entry_t entry, 19015 uint8 * data, 19016 uint8 * mask) 19017 { 19018 return bcm_field_qualify_GenevePktWithOam_get( 19019 BCM_CONTROL(unit)->unit, 19020 entry, 19021 data, 19022 mask); 19023 } 19024 19025 int 19026 bcm_loop_field_qualify_GpePktVersionZero( 19027 int unit, 19028 bcm_field_entry_t entry, 19029 uint8 data, 19030 uint8 mask) 19031 { 19032 return bcm_field_qualify_GpePktVersionZero( 19033 BCM_CONTROL(unit)->unit, 19034 entry, 19035 data, 19036 mask); 19037 } 19038 19039 int 19040 bcm_loop_field_qualify_GpePktVersionZero_get( 19041 int unit, 19042 bcm_field_entry_t entry, 19043 uint8 * data, 19044 uint8 * mask) 19045 { 19046 return bcm_field_qualify_GpePktVersionZero_get( 19047 BCM_CONTROL(unit)->unit, 19048 entry, 19049 data, 19050 mask); 19051 } 19052 19053 int 19054 bcm_loop_field_qualify_GpePktWithOam( 19055 int unit, 19056 bcm_field_entry_t entry, 19057 uint8 data, 19058 uint8 mask) 19059 { 19060 return bcm_field_qualify_GpePktWithOam( 19061 BCM_CONTROL(unit)->unit, 19062 entry, 19063 data, 19064 mask); 19065 } 19066 19067 int 19068 bcm_loop_field_qualify_GpePktWithOam_get( 19069 int unit, 19070 bcm_field_entry_t entry, 19071 uint8 * data, 19072 uint8 * mask) 19073 { 19074 return bcm_field_qualify_GpePktWithOam_get( 19075 BCM_CONTROL(unit)->unit, 19076 entry, 19077 data, 19078 mask); 19079 } 19080 19081 int 19082 bcm_loop_field_qualify_GroupClass( 19083 int unit, 19084 bcm_field_entry_t entry, 19085 uint32 data, 19086 uint32 mask) 19087 { 19088 return bcm_field_qualify_GroupClass( 19089 BCM_CONTROL(unit)->unit, 19090 entry, 19091 data, 19092 mask); 19093 } 19094 19095 int 19096 bcm_loop_field_qualify_GroupClass_get( 19097 int unit, 19098 bcm_field_entry_t entry, 19099 uint32 * data, 19100 uint32 * mask) 19101 { 19102 return bcm_field_qualify_GroupClass_get( 19103 BCM_CONTROL(unit)->unit, 19104 entry, 19105 data, 19106 mask); 19107 } 19108 19109 int 19110 bcm_loop_field_qualify_HeaderFormat( 19111 int unit, 19112 bcm_field_entry_t entry, 19113 bcm_field_header_format_t header_format) 19114 { 19115 return bcm_field_qualify_HeaderFormat( 19116 BCM_CONTROL(unit)->unit, 19117 entry, 19118 header_format); 19119 } 19120 19121 int 19122 bcm_loop_field_qualify_HeaderFormatExtension( 19123 int unit, 19124 bcm_field_entry_t entry, 19125 bcm_field_header_format_extension_t header_format_extension) 19126 { 19127 return bcm_field_qualify_HeaderFormatExtension( 19128 BCM_CONTROL(unit)->unit, 19129 entry, 19130 header_format_extension); 19131 } 19132 19133 int 19134 bcm_loop_field_qualify_HeaderFormatExtension_get( 19135 int unit, 19136 bcm_field_entry_t entry, 19137 bcm_field_header_format_extension_t * header_format_extension) 19138 { 19139 return bcm_field_qualify_HeaderFormatExtension_get( 19140 BCM_CONTROL(unit)->unit, 19141 entry, 19142 header_format_extension); 19143 } 19144 19145 int 19146 bcm_loop_field_qualify_HeaderFormatSet( 19147 int unit, 19148 bcm_field_entry_t entry, 19149 bcm_field_header_format_set_t header_format_set) 19150 { 19151 return bcm_field_qualify_HeaderFormatSet( 19152 BCM_CONTROL(unit)->unit, 19153 entry, 19154 header_format_set); 19155 } 19156 19157 int 19158 bcm_loop_field_qualify_HeaderFormatSet_get( 19159 int unit, 19160 bcm_field_entry_t entry, 19161 bcm_field_header_format_set_t * header_format_set) 19162 { 19163 return bcm_field_qualify_HeaderFormatSet_get( 19164 BCM_CONTROL(unit)->unit, 19165 entry, 19166 header_format_set); 19167 } 19168 19169 int 19170 bcm_loop_field_qualify_HeaderFormat_get( 19171 int unit, 19172 bcm_field_entry_t entry, 19173 bcm_field_header_format_t * header_format) 19174 { 19175 return bcm_field_qualify_HeaderFormat_get( 19176 BCM_CONTROL(unit)->unit, 19177 entry, 19178 header_format); 19179 } 19180 19181 int 19182 bcm_loop_field_qualify_HiGig( 19183 int unit, 19184 bcm_field_entry_t entry, 19185 uint8 data, 19186 uint8 mask) 19187 { 19188 return bcm_field_qualify_HiGig( 19189 BCM_CONTROL(unit)->unit, 19190 entry, 19191 data, 19192 mask); 19193 } 19194 19195 int 19196 bcm_loop_field_qualify_HiGigColor( 19197 int unit, 19198 bcm_field_entry_t entry, 19199 uint8 color) 19200 { 19201 return bcm_field_qualify_HiGigColor( 19202 BCM_CONTROL(unit)->unit, 19203 entry, 19204 color); 19205 } 19206 19207 int 19208 bcm_loop_field_qualify_HiGigColor_get( 19209 int unit, 19210 bcm_field_entry_t entry, 19211 uint8 * color) 19212 { 19213 return bcm_field_qualify_HiGigColor_get( 19214 BCM_CONTROL(unit)->unit, 19215 entry, 19216 color); 19217 } 19218 19219 int 19220 bcm_loop_field_qualify_HiGigDoNotFlags( 19221 int unit, 19222 bcm_field_entry_t entry, 19223 uint8 data, 19224 uint8 mask) 19225 { 19226 return bcm_field_qualify_HiGigDoNotFlags( 19227 BCM_CONTROL(unit)->unit, 19228 entry, 19229 data, 19230 mask); 19231 } 19232 19233 int 19234 bcm_loop_field_qualify_HiGigDoNotFlags_get( 19235 int unit, 19236 bcm_field_entry_t entry, 19237 uint8 * data, 19238 uint8 * mask) 19239 { 19240 return bcm_field_qualify_HiGigDoNotFlags_get( 19241 BCM_CONTROL(unit)->unit, 19242 entry, 19243 data, 19244 mask); 19245 } 19246 19247 int 19248 bcm_loop_field_qualify_HiGigDstGport( 19249 int unit, 19250 bcm_field_entry_t entry, 19251 bcm_gport_t port_id, 19252 bcm_gport_t port_mask) 19253 { 19254 return bcm_field_qualify_HiGigDstGport( 19255 BCM_CONTROL(unit)->unit, 19256 entry, 19257 port_id, 19258 port_mask); 19259 } 19260 19261 int 19262 bcm_loop_field_qualify_HiGigDstGport_get( 19263 int unit, 19264 bcm_field_entry_t entry, 19265 bcm_gport_t * port_id, 19266 bcm_gport_t * port_mask) 19267 { 19268 return bcm_field_qualify_HiGigDstGport_get( 19269 BCM_CONTROL(unit)->unit, 19270 entry, 19271 port_id, 19272 port_mask); 19273 } 19274 19275 int 19276 bcm_loop_field_qualify_HiGigDstModPortGport( 19277 int unit, 19278 bcm_field_entry_t entry, 19279 bcm_gport_t port_id, 19280 bcm_gport_t port_mask) 19281 { 19282 return bcm_field_qualify_HiGigDstModPortGport( 19283 BCM_CONTROL(unit)->unit, 19284 entry, 19285 port_id, 19286 port_mask); 19287 } 19288 19289 int 19290 bcm_loop_field_qualify_HiGigDstModPortGport_get( 19291 int unit, 19292 bcm_field_entry_t entry, 19293 bcm_gport_t * port_id, 19294 bcm_gport_t * port_mask) 19295 { 19296 return bcm_field_qualify_HiGigDstModPortGport_get( 19297 BCM_CONTROL(unit)->unit, 19298 entry, 19299 port_id, 19300 port_mask); 19301 } 19302 19303 int 19304 bcm_loop_field_qualify_HiGigDstModuleGport( 19305 int unit, 19306 bcm_field_entry_t entry, 19307 bcm_gport_t port_id, 19308 bcm_gport_t port_mask) 19309 { 19310 return bcm_field_qualify_HiGigDstModuleGport( 19311 BCM_CONTROL(unit)->unit, 19312 entry, 19313 port_id, 19314 port_mask); 19315 } 19316 19317 int 19318 bcm_loop_field_qualify_HiGigDstModuleGport_get( 19319 int unit, 19320 bcm_field_entry_t entry, 19321 bcm_gport_t * port_id, 19322 bcm_gport_t * port_mask) 19323 { 19324 return bcm_field_qualify_HiGigDstModuleGport_get( 19325 BCM_CONTROL(unit)->unit, 19326 entry, 19327 port_id, 19328 port_mask); 19329 } 19330 19331 int 19332 bcm_loop_field_qualify_HiGigDstMulticast( 19333 int unit, 19334 bcm_field_entry_t entry, 19335 uint8 data, 19336 uint8 mask) 19337 { 19338 return bcm_field_qualify_HiGigDstMulticast( 19339 BCM_CONTROL(unit)->unit, 19340 entry, 19341 data, 19342 mask); 19343 } 19344 19345 int 19346 bcm_loop_field_qualify_HiGigDstMulticastGroupId( 19347 int unit, 19348 bcm_field_entry_t entry, 19349 bcm_multicast_t group, 19350 bcm_multicast_t mask) 19351 { 19352 return bcm_field_qualify_HiGigDstMulticastGroupId( 19353 BCM_CONTROL(unit)->unit, 19354 entry, 19355 group, 19356 mask); 19357 } 19358 19359 int 19360 bcm_loop_field_qualify_HiGigDstMulticastGroupId_get( 19361 int unit, 19362 bcm_field_entry_t entry, 19363 bcm_multicast_t * group, 19364 bcm_multicast_t * mask) 19365 { 19366 return bcm_field_qualify_HiGigDstMulticastGroupId_get( 19367 BCM_CONTROL(unit)->unit, 19368 entry, 19369 group, 19370 mask); 19371 } 19372 19373 int 19374 bcm_loop_field_qualify_HiGigDstMulticast_get( 19375 int unit, 19376 bcm_field_entry_t entry, 19377 uint8 * data, 19378 uint8 * mask) 19379 { 19380 return bcm_field_qualify_HiGigDstMulticast_get( 19381 BCM_CONTROL(unit)->unit, 19382 entry, 19383 data, 19384 mask); 19385 } 19386 19387 int 19388 bcm_loop_field_qualify_HiGigDstPortGport( 19389 int unit, 19390 bcm_field_entry_t entry, 19391 bcm_gport_t port_id, 19392 bcm_gport_t mask) 19393 { 19394 return bcm_field_qualify_HiGigDstPortGport( 19395 BCM_CONTROL(unit)->unit, 19396 entry, 19397 port_id, 19398 mask); 19399 } 19400 19401 int 19402 bcm_loop_field_qualify_HiGigDstPortGport_get( 19403 int unit, 19404 bcm_field_entry_t entry, 19405 bcm_gport_t * port_id, 19406 bcm_gport_t * port_mask) 19407 { 19408 return bcm_field_qualify_HiGigDstPortGport_get( 19409 BCM_CONTROL(unit)->unit, 19410 entry, 19411 port_id, 19412 port_mask); 19413 } 19414 19415 int 19416 bcm_loop_field_qualify_HiGigDstTrunk( 19417 int unit, 19418 bcm_field_entry_t entry, 19419 uint8 data, 19420 uint8 mask) 19421 { 19422 return bcm_field_qualify_HiGigDstTrunk( 19423 BCM_CONTROL(unit)->unit, 19424 entry, 19425 data, 19426 mask); 19427 } 19428 19429 int 19430 bcm_loop_field_qualify_HiGigDstTrunkId( 19431 int unit, 19432 bcm_field_entry_t entry, 19433 bcm_trunk_t data, 19434 bcm_trunk_t mask) 19435 { 19436 return bcm_field_qualify_HiGigDstTrunkId( 19437 BCM_CONTROL(unit)->unit, 19438 entry, 19439 data, 19440 mask); 19441 } 19442 19443 int 19444 bcm_loop_field_qualify_HiGigDstTrunkId_get( 19445 int unit, 19446 bcm_field_entry_t entry, 19447 bcm_trunk_t * data, 19448 bcm_trunk_t * mask) 19449 { 19450 return bcm_field_qualify_HiGigDstTrunkId_get( 19451 BCM_CONTROL(unit)->unit, 19452 entry, 19453 data, 19454 mask); 19455 } 19456 19457 int 19458 bcm_loop_field_qualify_HiGigDstTrunk_get( 19459 int unit, 19460 bcm_field_entry_t entry, 19461 uint8 * data, 19462 uint8 * mask) 19463 { 19464 return bcm_field_qualify_HiGigDstTrunk_get( 19465 BCM_CONTROL(unit)->unit, 19466 entry, 19467 data, 19468 mask); 19469 } 19470 19471 int 19472 bcm_loop_field_qualify_HiGigDstType( 19473 int unit, 19474 bcm_field_entry_t entry, 19475 uint8 data, 19476 uint8 mask) 19477 { 19478 return bcm_field_qualify_HiGigDstType( 19479 BCM_CONTROL(unit)->unit, 19480 entry, 19481 data, 19482 mask); 19483 } 19484 19485 int 19486 bcm_loop_field_qualify_HiGigDstType_get( 19487 int unit, 19488 bcm_field_entry_t entry, 19489 uint8 * data, 19490 uint8 * mask) 19491 { 19492 return bcm_field_qualify_HiGigDstType_get( 19493 BCM_CONTROL(unit)->unit, 19494 entry, 19495 data, 19496 mask); 19497 } 19498 19499 int 19500 bcm_loop_field_qualify_HiGigEgressMcast( 19501 int unit, 19502 bcm_field_entry_t entry, 19503 uint8 data, 19504 uint8 mask) 19505 { 19506 return bcm_field_qualify_HiGigEgressMcast( 19507 BCM_CONTROL(unit)->unit, 19508 entry, 19509 data, 19510 mask); 19511 } 19512 19513 int 19514 bcm_loop_field_qualify_HiGigEgressMcast_get( 19515 int unit, 19516 bcm_field_entry_t entry, 19517 uint8 * data, 19518 uint8 * mask) 19519 { 19520 return bcm_field_qualify_HiGigEgressMcast_get( 19521 BCM_CONTROL(unit)->unit, 19522 entry, 19523 data, 19524 mask); 19525 } 19526 19527 int 19528 bcm_loop_field_qualify_HiGigExtendedHeaderPresent( 19529 int unit, 19530 bcm_field_entry_t entry, 19531 uint8 data, 19532 uint8 mask) 19533 { 19534 return bcm_field_qualify_HiGigExtendedHeaderPresent( 19535 BCM_CONTROL(unit)->unit, 19536 entry, 19537 data, 19538 mask); 19539 } 19540 19541 int 19542 bcm_loop_field_qualify_HiGigExtendedHeaderPresent_get( 19543 int unit, 19544 bcm_field_entry_t entry, 19545 uint8 * data, 19546 uint8 * mask) 19547 { 19548 return bcm_field_qualify_HiGigExtendedHeaderPresent_get( 19549 BCM_CONTROL(unit)->unit, 19550 entry, 19551 data, 19552 mask); 19553 } 19554 19555 int 19556 bcm_loop_field_qualify_HiGigForwardingType( 19557 int unit, 19558 bcm_field_entry_t entry, 19559 bcm_field_HiGigForwardingType_t type) 19560 { 19561 return bcm_field_qualify_HiGigForwardingType( 19562 BCM_CONTROL(unit)->unit, 19563 entry, 19564 type); 19565 } 19566 19567 int 19568 bcm_loop_field_qualify_HiGigForwardingType_get( 19569 int unit, 19570 bcm_field_entry_t entry, 19571 bcm_field_HiGigForwardingType_t * type) 19572 { 19573 return bcm_field_qualify_HiGigForwardingType_get( 19574 BCM_CONTROL(unit)->unit, 19575 entry, 19576 type); 19577 } 19578 19579 int 19580 bcm_loop_field_qualify_HiGigGbpPresent( 19581 int unit, 19582 bcm_field_entry_t entry, 19583 uint8 data, 19584 uint8 mask) 19585 { 19586 return bcm_field_qualify_HiGigGbpPresent( 19587 BCM_CONTROL(unit)->unit, 19588 entry, 19589 data, 19590 mask); 19591 } 19592 19593 int 19594 bcm_loop_field_qualify_HiGigGbpPresent_get( 19595 int unit, 19596 bcm_field_entry_t entry, 19597 uint8 * data, 19598 uint8 * mask) 19599 { 19600 return bcm_field_qualify_HiGigGbpPresent_get( 19601 BCM_CONTROL(unit)->unit, 19602 entry, 19603 data, 19604 mask); 19605 } 19606 19607 int 19608 bcm_loop_field_qualify_HiGigGbpSrcId( 19609 int unit, 19610 bcm_field_entry_t entry, 19611 uint16 data, 19612 uint16 mask) 19613 { 19614 return bcm_field_qualify_HiGigGbpSrcId( 19615 BCM_CONTROL(unit)->unit, 19616 entry, 19617 data, 19618 mask); 19619 } 19620 19621 int 19622 bcm_loop_field_qualify_HiGigGbpSrcId_get( 19623 int unit, 19624 bcm_field_entry_t entry, 19625 uint16 * data, 19626 uint16 * mask) 19627 { 19628 return bcm_field_qualify_HiGigGbpSrcId_get( 19629 BCM_CONTROL(unit)->unit, 19630 entry, 19631 data, 19632 mask); 19633 } 19634 19635 int 19636 bcm_loop_field_qualify_HiGigIngressClassificationTag( 19637 int unit, 19638 bcm_field_entry_t entry, 19639 uint16 data, 19640 uint16 mask) 19641 { 19642 return bcm_field_qualify_HiGigIngressClassificationTag( 19643 BCM_CONTROL(unit)->unit, 19644 entry, 19645 data, 19646 mask); 19647 } 19648 19649 int 19650 bcm_loop_field_qualify_HiGigIngressClassificationTag_get( 19651 int unit, 19652 bcm_field_entry_t entry, 19653 uint16 * data, 19654 uint16 * mask) 19655 { 19656 return bcm_field_qualify_HiGigIngressClassificationTag_get( 19657 BCM_CONTROL(unit)->unit, 19658 entry, 19659 data, 19660 mask); 19661 } 19662 19663 int 19664 bcm_loop_field_qualify_HiGigIngressL3SwitchPkt( 19665 int unit, 19666 bcm_field_entry_t entry, 19667 uint8 data, 19668 uint8 mask) 19669 { 19670 return bcm_field_qualify_HiGigIngressL3SwitchPkt( 19671 BCM_CONTROL(unit)->unit, 19672 entry, 19673 data, 19674 mask); 19675 } 19676 19677 int 19678 bcm_loop_field_qualify_HiGigIngressL3SwitchPkt_get( 19679 int unit, 19680 bcm_field_entry_t entry, 19681 uint8 * data, 19682 uint8 * mask) 19683 { 19684 return bcm_field_qualify_HiGigIngressL3SwitchPkt_get( 19685 BCM_CONTROL(unit)->unit, 19686 entry, 19687 data, 19688 mask); 19689 } 19690 19691 int 19692 bcm_loop_field_qualify_HiGigIngressTagged( 19693 int unit, 19694 bcm_field_entry_t entry, 19695 uint8 data, 19696 uint8 mask) 19697 { 19698 return bcm_field_qualify_HiGigIngressTagged( 19699 BCM_CONTROL(unit)->unit, 19700 entry, 19701 data, 19702 mask); 19703 } 19704 19705 int 19706 bcm_loop_field_qualify_HiGigIngressTagged_get( 19707 int unit, 19708 bcm_field_entry_t entry, 19709 uint8 * data, 19710 uint8 * mask) 19711 { 19712 return bcm_field_qualify_HiGigIngressTagged_get( 19713 BCM_CONTROL(unit)->unit, 19714 entry, 19715 data, 19716 mask); 19717 } 19718 19719 int 19720 bcm_loop_field_qualify_HiGigIntCongestionNotification( 19721 int unit, 19722 bcm_field_entry_t entry, 19723 uint8 data, 19724 uint8 mask) 19725 { 19726 return bcm_field_qualify_HiGigIntCongestionNotification( 19727 BCM_CONTROL(unit)->unit, 19728 entry, 19729 data, 19730 mask); 19731 } 19732 19733 int 19734 bcm_loop_field_qualify_HiGigIntCongestionNotification_get( 19735 int unit, 19736 bcm_field_entry_t entry, 19737 uint8 * data, 19738 uint8 * mask) 19739 { 19740 return bcm_field_qualify_HiGigIntCongestionNotification_get( 19741 BCM_CONTROL(unit)->unit, 19742 entry, 19743 data, 19744 mask); 19745 } 19746 19747 int 19748 bcm_loop_field_qualify_HiGigLabel( 19749 int unit, 19750 bcm_field_entry_t entry, 19751 uint32 data, 19752 uint32 mask) 19753 { 19754 return bcm_field_qualify_HiGigLabel( 19755 BCM_CONTROL(unit)->unit, 19756 entry, 19757 data, 19758 mask); 19759 } 19760 19761 int 19762 bcm_loop_field_qualify_HiGigLabelType( 19763 int unit, 19764 bcm_field_entry_t entry, 19765 uint8 data, 19766 uint8 mask) 19767 { 19768 return bcm_field_qualify_HiGigLabelType( 19769 BCM_CONTROL(unit)->unit, 19770 entry, 19771 data, 19772 mask); 19773 } 19774 19775 int 19776 bcm_loop_field_qualify_HiGigLabelType_get( 19777 int unit, 19778 bcm_field_entry_t entry, 19779 uint8 * data, 19780 uint8 * mask) 19781 { 19782 return bcm_field_qualify_HiGigLabelType_get( 19783 BCM_CONTROL(unit)->unit, 19784 entry, 19785 data, 19786 mask); 19787 } 19788 19789 int 19790 bcm_loop_field_qualify_HiGigLabel_get( 19791 int unit, 19792 bcm_field_entry_t entry, 19793 uint32 * data, 19794 uint32 * mask) 19795 { 19796 return bcm_field_qualify_HiGigLabel_get( 19797 BCM_CONTROL(unit)->unit, 19798 entry, 19799 data, 19800 mask); 19801 } 19802 19803 int 19804 bcm_loop_field_qualify_HiGigLoadBalanceID( 19805 int unit, 19806 bcm_field_entry_t entry, 19807 uint8 data, 19808 uint8 mask) 19809 { 19810 return bcm_field_qualify_HiGigLoadBalanceID( 19811 BCM_CONTROL(unit)->unit, 19812 entry, 19813 data, 19814 mask); 19815 } 19816 19817 int 19818 bcm_loop_field_qualify_HiGigLoadBalanceID_get( 19819 int unit, 19820 bcm_field_entry_t entry, 19821 uint8 * data, 19822 uint8 * mask) 19823 { 19824 return bcm_field_qualify_HiGigLoadBalanceID_get( 19825 BCM_CONTROL(unit)->unit, 19826 entry, 19827 data, 19828 mask); 19829 } 19830 19831 int 19832 bcm_loop_field_qualify_HiGigMirrorOrSwitchPkt( 19833 int unit, 19834 bcm_field_entry_t entry, 19835 uint8 data, 19836 uint8 mask) 19837 { 19838 return bcm_field_qualify_HiGigMirrorOrSwitchPkt( 19839 BCM_CONTROL(unit)->unit, 19840 entry, 19841 data, 19842 mask); 19843 } 19844 19845 int 19846 bcm_loop_field_qualify_HiGigMirrorOrSwitchPkt_get( 19847 int unit, 19848 bcm_field_entry_t entry, 19849 uint8 * data, 19850 uint8 * mask) 19851 { 19852 return bcm_field_qualify_HiGigMirrorOrSwitchPkt_get( 19853 BCM_CONTROL(unit)->unit, 19854 entry, 19855 data, 19856 mask); 19857 } 19858 19859 int 19860 bcm_loop_field_qualify_HiGigMirrorToVp( 19861 int unit, 19862 bcm_field_entry_t entry, 19863 uint8 data, 19864 uint8 mask) 19865 { 19866 return bcm_field_qualify_HiGigMirrorToVp( 19867 BCM_CONTROL(unit)->unit, 19868 entry, 19869 data, 19870 mask); 19871 } 19872 19873 int 19874 bcm_loop_field_qualify_HiGigMirrorToVp_get( 19875 int unit, 19876 bcm_field_entry_t entry, 19877 uint8 * data, 19878 uint8 * mask) 19879 { 19880 return bcm_field_qualify_HiGigMirrorToVp_get( 19881 BCM_CONTROL(unit)->unit, 19882 entry, 19883 data, 19884 mask); 19885 } 19886 19887 int 19888 bcm_loop_field_qualify_HiGigMplsPkt( 19889 int unit, 19890 bcm_field_entry_t entry, 19891 uint8 data, 19892 uint8 mask) 19893 { 19894 return bcm_field_qualify_HiGigMplsPkt( 19895 BCM_CONTROL(unit)->unit, 19896 entry, 19897 data, 19898 mask); 19899 } 19900 19901 int 19902 bcm_loop_field_qualify_HiGigMplsPkt_get( 19903 int unit, 19904 bcm_field_entry_t entry, 19905 uint8 * data, 19906 uint8 * mask) 19907 { 19908 return bcm_field_qualify_HiGigMplsPkt_get( 19909 BCM_CONTROL(unit)->unit, 19910 entry, 19911 data, 19912 mask); 19913 } 19914 19915 int 19916 bcm_loop_field_qualify_HiGigMulticastIndex( 19917 int unit, 19918 bcm_field_entry_t entry, 19919 uint16 data, 19920 uint16 mask) 19921 { 19922 return bcm_field_qualify_HiGigMulticastIndex( 19923 BCM_CONTROL(unit)->unit, 19924 entry, 19925 data, 19926 mask); 19927 } 19928 19929 int 19930 bcm_loop_field_qualify_HiGigMulticastIndex_get( 19931 int unit, 19932 bcm_field_entry_t entry, 19933 uint16 * data, 19934 uint16 * mask) 19935 { 19936 return bcm_field_qualify_HiGigMulticastIndex_get( 19937 BCM_CONTROL(unit)->unit, 19938 entry, 19939 data, 19940 mask); 19941 } 19942 19943 int 19944 bcm_loop_field_qualify_HiGigOffloadEngineClassificationTag( 19945 int unit, 19946 bcm_field_entry_t entry, 19947 uint16 data, 19948 uint16 mask) 19949 { 19950 return bcm_field_qualify_HiGigOffloadEngineClassificationTag( 19951 BCM_CONTROL(unit)->unit, 19952 entry, 19953 data, 19954 mask); 19955 } 19956 19957 int 19958 bcm_loop_field_qualify_HiGigOffloadEngineClassificationTag_get( 19959 int unit, 19960 bcm_field_entry_t entry, 19961 uint16 * data, 19962 uint16 * mask) 19963 { 19964 return bcm_field_qualify_HiGigOffloadEngineClassificationTag_get( 19965 BCM_CONTROL(unit)->unit, 19966 entry, 19967 data, 19968 mask); 19969 } 19970 19971 int 19972 bcm_loop_field_qualify_HiGigOffloadEngineDeferredFlags( 19973 int unit, 19974 bcm_field_entry_t entry, 19975 uint8 data, 19976 uint8 mask) 19977 { 19978 return bcm_field_qualify_HiGigOffloadEngineDeferredFlags( 19979 BCM_CONTROL(unit)->unit, 19980 entry, 19981 data, 19982 mask); 19983 } 19984 19985 int 19986 bcm_loop_field_qualify_HiGigOffloadEngineDeferredFlags_get( 19987 int unit, 19988 bcm_field_entry_t entry, 19989 uint8 * data, 19990 uint8 * mask) 19991 { 19992 return bcm_field_qualify_HiGigOffloadEngineDeferredFlags_get( 19993 BCM_CONTROL(unit)->unit, 19994 entry, 19995 data, 19996 mask); 19997 } 19998 19999 int 20000 bcm_loop_field_qualify_HiGigOffloadEngineDscpNew( 20001 int unit, 20002 bcm_field_entry_t entry, 20003 uint8 data, 20004 uint8 mask) 20005 { 20006 return bcm_field_qualify_HiGigOffloadEngineDscpNew( 20007 BCM_CONTROL(unit)->unit, 20008 entry, 20009 data, 20010 mask); 20011 } 20012 20013 int 20014 bcm_loop_field_qualify_HiGigOffloadEngineDscpNew_get( 20015 int unit, 20016 bcm_field_entry_t entry, 20017 uint8 * data, 20018 uint8 * mask) 20019 { 20020 return bcm_field_qualify_HiGigOffloadEngineDscpNew_get( 20021 BCM_CONTROL(unit)->unit, 20022 entry, 20023 data, 20024 mask); 20025 } 20026 20027 int 20028 bcm_loop_field_qualify_HiGigOffloadEnginePktPriNew( 20029 int unit, 20030 bcm_field_entry_t entry, 20031 uint8 data, 20032 uint8 mask) 20033 { 20034 return bcm_field_qualify_HiGigOffloadEnginePktPriNew( 20035 BCM_CONTROL(unit)->unit, 20036 entry, 20037 data, 20038 mask); 20039 } 20040 20041 int 20042 bcm_loop_field_qualify_HiGigOffloadEnginePktPriNew_get( 20043 int unit, 20044 bcm_field_entry_t entry, 20045 uint8 * data, 20046 uint8 * mask) 20047 { 20048 return bcm_field_qualify_HiGigOffloadEnginePktPriNew_get( 20049 BCM_CONTROL(unit)->unit, 20050 entry, 20051 data, 20052 mask); 20053 } 20054 20055 int 20056 bcm_loop_field_qualify_HiGigOffloadEnginePreserveDot1p( 20057 int unit, 20058 bcm_field_entry_t entry, 20059 uint8 data, 20060 uint8 mask) 20061 { 20062 return bcm_field_qualify_HiGigOffloadEnginePreserveDot1p( 20063 BCM_CONTROL(unit)->unit, 20064 entry, 20065 data, 20066 mask); 20067 } 20068 20069 int 20070 bcm_loop_field_qualify_HiGigOffloadEnginePreserveDot1p_get( 20071 int unit, 20072 bcm_field_entry_t entry, 20073 uint8 * data, 20074 uint8 * mask) 20075 { 20076 return bcm_field_qualify_HiGigOffloadEnginePreserveDot1p_get( 20077 BCM_CONTROL(unit)->unit, 20078 entry, 20079 data, 20080 mask); 20081 } 20082 20083 int 20084 bcm_loop_field_qualify_HiGigOffloadEnginePreserveDscp( 20085 int unit, 20086 bcm_field_entry_t entry, 20087 uint8 data, 20088 uint8 mask) 20089 { 20090 return bcm_field_qualify_HiGigOffloadEnginePreserveDscp( 20091 BCM_CONTROL(unit)->unit, 20092 entry, 20093 data, 20094 mask); 20095 } 20096 20097 int 20098 bcm_loop_field_qualify_HiGigOffloadEnginePreserveDscp_get( 20099 int unit, 20100 bcm_field_entry_t entry, 20101 uint8 * data, 20102 uint8 * mask) 20103 { 20104 return bcm_field_qualify_HiGigOffloadEnginePreserveDscp_get( 20105 BCM_CONTROL(unit)->unit, 20106 entry, 20107 data, 20108 mask); 20109 } 20110 20111 int 20112 bcm_loop_field_qualify_HiGigOffloadEngineSrcType( 20113 int unit, 20114 bcm_field_entry_t entry, 20115 uint8 data, 20116 uint8 mask) 20117 { 20118 return bcm_field_qualify_HiGigOffloadEngineSrcType( 20119 BCM_CONTROL(unit)->unit, 20120 entry, 20121 data, 20122 mask); 20123 } 20124 20125 int 20126 bcm_loop_field_qualify_HiGigOffloadEngineSrcType_get( 20127 int unit, 20128 bcm_field_entry_t entry, 20129 uint8 * data, 20130 uint8 * mask) 20131 { 20132 return bcm_field_qualify_HiGigOffloadEngineSrcType_get( 20133 BCM_CONTROL(unit)->unit, 20134 entry, 20135 data, 20136 mask); 20137 } 20138 20139 int 20140 bcm_loop_field_qualify_HiGigOffloadEngineVxltStatus( 20141 int unit, 20142 bcm_field_entry_t entry, 20143 uint8 data, 20144 uint8 mask) 20145 { 20146 return bcm_field_qualify_HiGigOffloadEngineVxltStatus( 20147 BCM_CONTROL(unit)->unit, 20148 entry, 20149 data, 20150 mask); 20151 } 20152 20153 int 20154 bcm_loop_field_qualify_HiGigOffloadEngineVxltStatus_get( 20155 int unit, 20156 bcm_field_entry_t entry, 20157 uint8 * data, 20158 uint8 * mask) 20159 { 20160 return bcm_field_qualify_HiGigOffloadEngineVxltStatus_get( 20161 BCM_CONTROL(unit)->unit, 20162 entry, 20163 data, 20164 mask); 20165 } 20166 20167 int 20168 bcm_loop_field_qualify_HiGigPortFilteringMode( 20169 int unit, 20170 bcm_field_entry_t entry, 20171 uint8 data, 20172 uint8 mask) 20173 { 20174 return bcm_field_qualify_HiGigPortFilteringMode( 20175 BCM_CONTROL(unit)->unit, 20176 entry, 20177 data, 20178 mask); 20179 } 20180 20181 int 20182 bcm_loop_field_qualify_HiGigPortFilteringMode_get( 20183 int unit, 20184 bcm_field_entry_t entry, 20185 uint8 * data, 20186 uint8 * mask) 20187 { 20188 return bcm_field_qualify_HiGigPortFilteringMode_get( 20189 BCM_CONTROL(unit)->unit, 20190 entry, 20191 data, 20192 mask); 20193 } 20194 20195 int 20196 bcm_loop_field_qualify_HiGigPreserveFlags( 20197 int unit, 20198 bcm_field_entry_t entry, 20199 uint8 data, 20200 uint8 mask) 20201 { 20202 return bcm_field_qualify_HiGigPreserveFlags( 20203 BCM_CONTROL(unit)->unit, 20204 entry, 20205 data, 20206 mask); 20207 } 20208 20209 int 20210 bcm_loop_field_qualify_HiGigPreserveFlags_get( 20211 int unit, 20212 bcm_field_entry_t entry, 20213 uint8 * data, 20214 uint8 * mask) 20215 { 20216 return bcm_field_qualify_HiGigPreserveFlags_get( 20217 BCM_CONTROL(unit)->unit, 20218 entry, 20219 data, 20220 mask); 20221 } 20222 20223 int 20224 bcm_loop_field_qualify_HiGigProtectionSwitchingStatus( 20225 int unit, 20226 bcm_field_entry_t entry, 20227 uint8 data, 20228 uint8 mask) 20229 { 20230 return bcm_field_qualify_HiGigProtectionSwitchingStatus( 20231 BCM_CONTROL(unit)->unit, 20232 entry, 20233 data, 20234 mask); 20235 } 20236 20237 int 20238 bcm_loop_field_qualify_HiGigProtectionSwitchingStatus_get( 20239 int unit, 20240 bcm_field_entry_t entry, 20241 uint8 * data, 20242 uint8 * mask) 20243 { 20244 return bcm_field_qualify_HiGigProtectionSwitchingStatus_get( 20245 BCM_CONTROL(unit)->unit, 20246 entry, 20247 data, 20248 mask); 20249 } 20250 20251 int 20252 bcm_loop_field_qualify_HiGigProxy( 20253 int unit, 20254 bcm_field_entry_t entry, 20255 uint8 data, 20256 uint8 mask) 20257 { 20258 return bcm_field_qualify_HiGigProxy( 20259 BCM_CONTROL(unit)->unit, 20260 entry, 20261 data, 20262 mask); 20263 } 20264 20265 int 20266 bcm_loop_field_qualify_HiGigProxyTunnelType( 20267 int unit, 20268 bcm_field_entry_t entry, 20269 bcm_field_higig_proxy_tunnel_type_t type) 20270 { 20271 return bcm_field_qualify_HiGigProxyTunnelType( 20272 BCM_CONTROL(unit)->unit, 20273 entry, 20274 type); 20275 } 20276 20277 int 20278 bcm_loop_field_qualify_HiGigProxyTunnelType_get( 20279 int unit, 20280 bcm_field_entry_t entry, 20281 bcm_field_higig_proxy_tunnel_type_t * type) 20282 { 20283 return bcm_field_qualify_HiGigProxyTunnelType_get( 20284 BCM_CONTROL(unit)->unit, 20285 entry, 20286 type); 20287 } 20288 20289 int 20290 bcm_loop_field_qualify_HiGigProxy_get( 20291 int unit, 20292 bcm_field_entry_t entry, 20293 uint8 * data, 20294 uint8 * mask) 20295 { 20296 return bcm_field_qualify_HiGigProxy_get( 20297 BCM_CONTROL(unit)->unit, 20298 entry, 20299 data, 20300 mask); 20301 } 20302 20303 int 20304 bcm_loop_field_qualify_HiGigReplicationId( 20305 int unit, 20306 bcm_field_entry_t entry, 20307 uint32 data, 20308 uint32 mask) 20309 { 20310 return bcm_field_qualify_HiGigReplicationId( 20311 BCM_CONTROL(unit)->unit, 20312 entry, 20313 data, 20314 mask); 20315 } 20316 20317 int 20318 bcm_loop_field_qualify_HiGigReplicationId_get( 20319 int unit, 20320 bcm_field_entry_t entry, 20321 uint32 * data, 20322 uint32 * mask) 20323 { 20324 return bcm_field_qualify_HiGigReplicationId_get( 20325 BCM_CONTROL(unit)->unit, 20326 entry, 20327 data, 20328 mask); 20329 } 20330 20331 int 20332 bcm_loop_field_qualify_HiGigSrcGport( 20333 int unit, 20334 bcm_field_entry_t entry, 20335 bcm_gport_t port_id, 20336 bcm_gport_t port_mask) 20337 { 20338 return bcm_field_qualify_HiGigSrcGport( 20339 BCM_CONTROL(unit)->unit, 20340 entry, 20341 port_id, 20342 port_mask); 20343 } 20344 20345 int 20346 bcm_loop_field_qualify_HiGigSrcGport_get( 20347 int unit, 20348 bcm_field_entry_t entry, 20349 bcm_gport_t * port_id, 20350 bcm_gport_t * port_mask) 20351 { 20352 return bcm_field_qualify_HiGigSrcGport_get( 20353 BCM_CONTROL(unit)->unit, 20354 entry, 20355 port_id, 20356 port_mask); 20357 } 20358 20359 int 20360 bcm_loop_field_qualify_HiGigSrcModPortGport( 20361 int unit, 20362 bcm_field_entry_t entry, 20363 bcm_gport_t port_id, 20364 bcm_gport_t port_mask) 20365 { 20366 return bcm_field_qualify_HiGigSrcModPortGport( 20367 BCM_CONTROL(unit)->unit, 20368 entry, 20369 port_id, 20370 port_mask); 20371 } 20372 20373 int 20374 bcm_loop_field_qualify_HiGigSrcModPortGport_get( 20375 int unit, 20376 bcm_field_entry_t entry, 20377 bcm_gport_t * port_id, 20378 bcm_gport_t * port_mask) 20379 { 20380 return bcm_field_qualify_HiGigSrcModPortGport_get( 20381 BCM_CONTROL(unit)->unit, 20382 entry, 20383 port_id, 20384 port_mask); 20385 } 20386 20387 int 20388 bcm_loop_field_qualify_HiGigSrcModuleGport( 20389 int unit, 20390 bcm_field_entry_t entry, 20391 bcm_gport_t port_id, 20392 bcm_gport_t port_mask) 20393 { 20394 return bcm_field_qualify_HiGigSrcModuleGport( 20395 BCM_CONTROL(unit)->unit, 20396 entry, 20397 port_id, 20398 port_mask); 20399 } 20400 20401 int 20402 bcm_loop_field_qualify_HiGigSrcModuleGport_get( 20403 int unit, 20404 bcm_field_entry_t entry, 20405 bcm_gport_t * port_id, 20406 bcm_gport_t * port_mask) 20407 { 20408 return bcm_field_qualify_HiGigSrcModuleGport_get( 20409 BCM_CONTROL(unit)->unit, 20410 entry, 20411 port_id, 20412 port_mask); 20413 } 20414 20415 int 20416 bcm_loop_field_qualify_HiGigSrcPortGport( 20417 int unit, 20418 bcm_field_entry_t entry, 20419 bcm_gport_t port_id, 20420 bcm_gport_t port_mask) 20421 { 20422 return bcm_field_qualify_HiGigSrcPortGport( 20423 BCM_CONTROL(unit)->unit, 20424 entry, 20425 port_id, 20426 port_mask); 20427 } 20428 20429 int 20430 bcm_loop_field_qualify_HiGigSrcPortGport_get( 20431 int unit, 20432 bcm_field_entry_t entry, 20433 bcm_gport_t * port_id, 20434 bcm_gport_t * port_mask) 20435 { 20436 return bcm_field_qualify_HiGigSrcPortGport_get( 20437 BCM_CONTROL(unit)->unit, 20438 entry, 20439 port_id, 20440 port_mask); 20441 } 20442 20443 int 20444 bcm_loop_field_qualify_HiGigSrcTrunk( 20445 int unit, 20446 bcm_field_entry_t entry, 20447 uint8 data, 20448 uint8 mask) 20449 { 20450 return bcm_field_qualify_HiGigSrcTrunk( 20451 BCM_CONTROL(unit)->unit, 20452 entry, 20453 data, 20454 mask); 20455 } 20456 20457 int 20458 bcm_loop_field_qualify_HiGigSrcTrunk_get( 20459 int unit, 20460 bcm_field_entry_t entry, 20461 uint8 * data, 20462 uint8 * mask) 20463 { 20464 return bcm_field_qualify_HiGigSrcTrunk_get( 20465 BCM_CONTROL(unit)->unit, 20466 entry, 20467 data, 20468 mask); 20469 } 20470 20471 int 20472 bcm_loop_field_qualify_HiGigSrcType( 20473 int unit, 20474 bcm_field_entry_t entry, 20475 uint8 data, 20476 uint8 mask) 20477 { 20478 return bcm_field_qualify_HiGigSrcType( 20479 BCM_CONTROL(unit)->unit, 20480 entry, 20481 data, 20482 mask); 20483 } 20484 20485 int 20486 bcm_loop_field_qualify_HiGigSrcType_get( 20487 int unit, 20488 bcm_field_entry_t entry, 20489 uint8 * data, 20490 uint8 * mask) 20491 { 20492 return bcm_field_qualify_HiGigSrcType_get( 20493 BCM_CONTROL(unit)->unit, 20494 entry, 20495 data, 20496 mask); 20497 } 20498 20499 int 20500 bcm_loop_field_qualify_HiGigTrafficClass( 20501 int unit, 20502 bcm_field_entry_t entry, 20503 uint8 data, 20504 uint8 mask) 20505 { 20506 return bcm_field_qualify_HiGigTrafficClass( 20507 BCM_CONTROL(unit)->unit, 20508 entry, 20509 data, 20510 mask); 20511 } 20512 20513 int 20514 bcm_loop_field_qualify_HiGigTrafficClass_get( 20515 int unit, 20516 bcm_field_entry_t entry, 20517 uint8 * data, 20518 uint8 * mask) 20519 { 20520 return bcm_field_qualify_HiGigTrafficClass_get( 20521 BCM_CONTROL(unit)->unit, 20522 entry, 20523 data, 20524 mask); 20525 } 20526 20527 int 20528 bcm_loop_field_qualify_HiGigVlan( 20529 int unit, 20530 bcm_field_entry_t entry, 20531 uint16 data, 20532 uint16 mask) 20533 { 20534 return bcm_field_qualify_HiGigVlan( 20535 BCM_CONTROL(unit)->unit, 20536 entry, 20537 data, 20538 mask); 20539 } 20540 20541 int 20542 bcm_loop_field_qualify_HiGigVlan_get( 20543 int unit, 20544 bcm_field_entry_t entry, 20545 uint16 * data, 20546 uint16 * mask) 20547 { 20548 return bcm_field_qualify_HiGigVlan_get( 20549 BCM_CONTROL(unit)->unit, 20550 entry, 20551 data, 20552 mask); 20553 } 20554 20555 int 20556 bcm_loop_field_qualify_HiGigVni( 20557 int unit, 20558 bcm_field_entry_t entry, 20559 uint16 data, 20560 uint16 mask) 20561 { 20562 return bcm_field_qualify_HiGigVni( 20563 BCM_CONTROL(unit)->unit, 20564 entry, 20565 data, 20566 mask); 20567 } 20568 20569 int 20570 bcm_loop_field_qualify_HiGigVni_get( 20571 int unit, 20572 bcm_field_entry_t entry, 20573 uint16 * data, 20574 uint16 * mask) 20575 { 20576 return bcm_field_qualify_HiGigVni_get( 20577 BCM_CONTROL(unit)->unit, 20578 entry, 20579 data, 20580 mask); 20581 } 20582 20583 int 20584 bcm_loop_field_qualify_HiGigVpLagFailoverPacket( 20585 int unit, 20586 bcm_field_entry_t entry, 20587 uint8 data, 20588 uint8 mask) 20589 { 20590 return bcm_field_qualify_HiGigVpLagFailoverPacket( 20591 BCM_CONTROL(unit)->unit, 20592 entry, 20593 data, 20594 mask); 20595 } 20596 20597 int 20598 bcm_loop_field_qualify_HiGigVpLagFailoverPacket_get( 20599 int unit, 20600 bcm_field_entry_t entry, 20601 uint8 * data, 20602 uint8 * mask) 20603 { 20604 return bcm_field_qualify_HiGigVpLagFailoverPacket_get( 20605 BCM_CONTROL(unit)->unit, 20606 entry, 20607 data, 20608 mask); 20609 } 20610 20611 int 20612 bcm_loop_field_qualify_HiGigVpPreserveFlags( 20613 int unit, 20614 bcm_field_entry_t entry, 20615 uint8 data, 20616 uint8 mask) 20617 { 20618 return bcm_field_qualify_HiGigVpPreserveFlags( 20619 BCM_CONTROL(unit)->unit, 20620 entry, 20621 data, 20622 mask); 20623 } 20624 20625 int 20626 bcm_loop_field_qualify_HiGigVpPreserveFlags_get( 20627 int unit, 20628 bcm_field_entry_t entry, 20629 uint8 * data, 20630 uint8 * mask) 20631 { 20632 return bcm_field_qualify_HiGigVpPreserveFlags_get( 20633 BCM_CONTROL(unit)->unit, 20634 entry, 20635 data, 20636 mask); 20637 } 20638 20639 int 20640 bcm_loop_field_qualify_HiGigVpReplicationId( 20641 int unit, 20642 bcm_field_entry_t entry, 20643 uint32 data, 20644 uint32 mask) 20645 { 20646 return bcm_field_qualify_HiGigVpReplicationId( 20647 BCM_CONTROL(unit)->unit, 20648 entry, 20649 data, 20650 mask); 20651 } 20652 20653 int 20654 bcm_loop_field_qualify_HiGigVpReplicationId_get( 20655 int unit, 20656 bcm_field_entry_t entry, 20657 uint32 * data, 20658 uint32 * mask) 20659 { 20660 return bcm_field_qualify_HiGigVpReplicationId_get( 20661 BCM_CONTROL(unit)->unit, 20662 entry, 20663 data, 20664 mask); 20665 } 20666 20667 int 20668 bcm_loop_field_qualify_HiGig_get( 20669 int unit, 20670 bcm_field_entry_t entry, 20671 uint8 * data, 20672 uint8 * mask) 20673 { 20674 return bcm_field_qualify_HiGig_get( 20675 BCM_CONTROL(unit)->unit, 20676 entry, 20677 data, 20678 mask); 20679 } 20680 20681 int 20682 bcm_loop_field_qualify_IEEE1588Command( 20683 int unit, 20684 bcm_field_entry_t entry, 20685 uint8 data, 20686 uint8 mask) 20687 { 20688 return bcm_field_qualify_IEEE1588Command( 20689 BCM_CONTROL(unit)->unit, 20690 entry, 20691 data, 20692 mask); 20693 } 20694 20695 int 20696 bcm_loop_field_qualify_IEEE1588Command_get( 20697 int unit, 20698 bcm_field_entry_t entry, 20699 uint8 * data, 20700 uint8 * mask) 20701 { 20702 return bcm_field_qualify_IEEE1588Command_get( 20703 BCM_CONTROL(unit)->unit, 20704 entry, 20705 data, 20706 mask); 20707 } 20708 20709 int 20710 bcm_loop_field_qualify_IEEE1588CompensateTimeStamp( 20711 int unit, 20712 bcm_field_entry_t entry, 20713 uint8 data, 20714 uint8 mask) 20715 { 20716 return bcm_field_qualify_IEEE1588CompensateTimeStamp( 20717 BCM_CONTROL(unit)->unit, 20718 entry, 20719 data, 20720 mask); 20721 } 20722 20723 int 20724 bcm_loop_field_qualify_IEEE1588CompensateTimeStamp_get( 20725 int unit, 20726 bcm_field_entry_t entry, 20727 uint8 * data, 20728 uint8 * mask) 20729 { 20730 return bcm_field_qualify_IEEE1588CompensateTimeStamp_get( 20731 BCM_CONTROL(unit)->unit, 20732 entry, 20733 data, 20734 mask); 20735 } 20736 20737 int 20738 bcm_loop_field_qualify_IEEE1588Encapsulation( 20739 int unit, 20740 bcm_field_entry_t entry, 20741 bcm_field_IEEE1588Encap_t encap) 20742 { 20743 return bcm_field_qualify_IEEE1588Encapsulation( 20744 BCM_CONTROL(unit)->unit, 20745 entry, 20746 encap); 20747 } 20748 20749 int 20750 bcm_loop_field_qualify_IEEE1588Encapsulation_get( 20751 int unit, 20752 bcm_field_entry_t entry, 20753 bcm_field_IEEE1588Encap_t * encap) 20754 { 20755 return bcm_field_qualify_IEEE1588Encapsulation_get( 20756 BCM_CONTROL(unit)->unit, 20757 entry, 20758 encap); 20759 } 20760 20761 int 20762 bcm_loop_field_qualify_IEEE1588HeaderOffset( 20763 int unit, 20764 bcm_field_entry_t entry, 20765 uint32 data, 20766 uint32 mask) 20767 { 20768 return bcm_field_qualify_IEEE1588HeaderOffset( 20769 BCM_CONTROL(unit)->unit, 20770 entry, 20771 data, 20772 mask); 20773 } 20774 20775 int 20776 bcm_loop_field_qualify_IEEE1588HeaderOffset_get( 20777 int unit, 20778 bcm_field_entry_t entry, 20779 uint32 * data, 20780 uint32 * mask) 20781 { 20782 return bcm_field_qualify_IEEE1588HeaderOffset_get( 20783 BCM_CONTROL(unit)->unit, 20784 entry, 20785 data, 20786 mask); 20787 } 20788 20789 int 20790 bcm_loop_field_qualify_INTProbeMarker1( 20791 int unit, 20792 bcm_field_entry_t entry, 20793 uint32 data, 20794 uint32 mask) 20795 { 20796 return bcm_field_qualify_INTProbeMarker1( 20797 BCM_CONTROL(unit)->unit, 20798 entry, 20799 data, 20800 mask); 20801 } 20802 20803 int 20804 bcm_loop_field_qualify_INTProbeMarker1_get( 20805 int unit, 20806 bcm_field_entry_t entry, 20807 uint32 * data, 20808 uint32 * mask) 20809 { 20810 return bcm_field_qualify_INTProbeMarker1_get( 20811 BCM_CONTROL(unit)->unit, 20812 entry, 20813 data, 20814 mask); 20815 } 20816 20817 int 20818 bcm_loop_field_qualify_INTProbeMarker2( 20819 int unit, 20820 bcm_field_entry_t entry, 20821 uint32 data, 20822 uint32 mask) 20823 { 20824 return bcm_field_qualify_INTProbeMarker2( 20825 BCM_CONTROL(unit)->unit, 20826 entry, 20827 data, 20828 mask); 20829 } 20830 20831 int 20832 bcm_loop_field_qualify_INTProbeMarker2_get( 20833 int unit, 20834 bcm_field_entry_t entry, 20835 uint32 * data, 20836 uint32 * mask) 20837 { 20838 return bcm_field_qualify_INTProbeMarker2_get( 20839 BCM_CONTROL(unit)->unit, 20840 entry, 20841 data, 20842 mask); 20843 } 20844 20845 int 20846 bcm_loop_field_qualify_INTReserved4Bytes( 20847 int unit, 20848 bcm_field_entry_t entry, 20849 uint32 data, 20850 uint32 mask) 20851 { 20852 return bcm_field_qualify_INTReserved4Bytes( 20853 BCM_CONTROL(unit)->unit, 20854 entry, 20855 data, 20856 mask); 20857 } 20858 20859 int 20860 bcm_loop_field_qualify_INTReserved4Bytes_get( 20861 int unit, 20862 bcm_field_entry_t entry, 20863 uint32 * data, 20864 uint32 * mask) 20865 { 20866 return bcm_field_qualify_INTReserved4Bytes_get( 20867 BCM_CONTROL(unit)->unit, 20868 entry, 20869 data, 20870 mask); 20871 } 20872 20873 int 20874 bcm_loop_field_qualify_ISid( 20875 int unit, 20876 bcm_field_entry_t entry, 20877 uint32 data, 20878 uint32 mask) 20879 { 20880 return bcm_field_qualify_ISid( 20881 BCM_CONTROL(unit)->unit, 20882 entry, 20883 data, 20884 mask); 20885 } 20886 20887 int 20888 bcm_loop_field_qualify_ISid_get( 20889 int unit, 20890 bcm_field_entry_t entry, 20891 uint32 * data, 20892 uint32 * mask) 20893 { 20894 return bcm_field_qualify_ISid_get( 20895 BCM_CONTROL(unit)->unit, 20896 entry, 20897 data, 20898 mask); 20899 } 20900 20901 int 20902 bcm_loop_field_qualify_ITag( 20903 int unit, 20904 bcm_field_entry_t entry, 20905 uint32 data, 20906 uint32 mask) 20907 { 20908 return bcm_field_qualify_ITag( 20909 BCM_CONTROL(unit)->unit, 20910 entry, 20911 data, 20912 mask); 20913 } 20914 20915 int 20916 bcm_loop_field_qualify_ITag_get( 20917 int unit, 20918 bcm_field_entry_t entry, 20919 uint32 * data, 20920 uint32 * mask) 20921 { 20922 return bcm_field_qualify_ITag_get( 20923 BCM_CONTROL(unit)->unit, 20924 entry, 20925 data, 20926 mask); 20927 } 20928 20929 int 20930 bcm_loop_field_qualify_IcmpError( 20931 int unit, 20932 bcm_field_entry_t entry, 20933 uint8 data, 20934 uint8 mask) 20935 { 20936 return bcm_field_qualify_IcmpError( 20937 BCM_CONTROL(unit)->unit, 20938 entry, 20939 data, 20940 mask); 20941 } 20942 20943 int 20944 bcm_loop_field_qualify_IcmpError_get( 20945 int unit, 20946 bcm_field_entry_t entry, 20947 uint8 * data, 20948 uint8 * mask) 20949 { 20950 return bcm_field_qualify_IcmpError_get( 20951 BCM_CONTROL(unit)->unit, 20952 entry, 20953 data, 20954 mask); 20955 } 20956 20957 int 20958 bcm_loop_field_qualify_IcmpTypeCode( 20959 int unit, 20960 bcm_field_entry_t entry, 20961 uint16 data, 20962 uint16 mask) 20963 { 20964 return bcm_field_qualify_IcmpTypeCode( 20965 BCM_CONTROL(unit)->unit, 20966 entry, 20967 data, 20968 mask); 20969 } 20970 20971 int 20972 bcm_loop_field_qualify_IcmpTypeCode_get( 20973 int unit, 20974 bcm_field_entry_t entry, 20975 uint16 * data, 20976 uint16 * mask) 20977 { 20978 return bcm_field_qualify_IcmpTypeCode_get( 20979 BCM_CONTROL(unit)->unit, 20980 entry, 20981 data, 20982 mask); 20983 } 20984 20985 int 20986 bcm_loop_field_qualify_InPort( 20987 int unit, 20988 bcm_field_entry_t entry, 20989 bcm_port_t data, 20990 bcm_port_t mask) 20991 { 20992 return bcm_field_qualify_InPort( 20993 BCM_CONTROL(unit)->unit, 20994 entry, 20995 data, 20996 mask); 20997 } 20998 20999 int 21000 bcm_loop_field_qualify_InPort_get( 21001 int unit, 21002 bcm_field_entry_t entry, 21003 bcm_port_t * data, 21004 bcm_port_t * mask) 21005 { 21006 return bcm_field_qualify_InPort_get( 21007 BCM_CONTROL(unit)->unit, 21008 entry, 21009 data, 21010 mask); 21011 } 21012 21013 int 21014 bcm_loop_field_qualify_InPorts( 21015 int unit, 21016 bcm_field_entry_t entry, 21017 bcm_pbmp_t data, 21018 bcm_pbmp_t mask) 21019 { 21020 return bcm_field_qualify_InPorts( 21021 BCM_CONTROL(unit)->unit, 21022 entry, 21023 data, 21024 mask); 21025 } 21026 21027 int 21028 bcm_loop_field_qualify_InPorts_get( 21029 int unit, 21030 bcm_field_entry_t entry, 21031 bcm_pbmp_t * data, 21032 bcm_pbmp_t * mask) 21033 { 21034 return bcm_field_qualify_InPorts_get( 21035 BCM_CONTROL(unit)->unit, 21036 entry, 21037 data, 21038 mask); 21039 } 21040 21041 int 21042 bcm_loop_field_qualify_InVPort( 21043 int unit, 21044 bcm_field_entry_t entry, 21045 uint8 data, 21046 uint8 mask) 21047 { 21048 return bcm_field_qualify_InVPort( 21049 BCM_CONTROL(unit)->unit, 21050 entry, 21051 data, 21052 mask); 21053 } 21054 21055 int 21056 bcm_loop_field_qualify_InVPort32( 21057 int unit, 21058 bcm_field_entry_t entry, 21059 uint32 data, 21060 uint32 mask) 21061 { 21062 return bcm_field_qualify_InVPort32( 21063 BCM_CONTROL(unit)->unit, 21064 entry, 21065 data, 21066 mask); 21067 } 21068 21069 int 21070 bcm_loop_field_qualify_InVPort32_get( 21071 int unit, 21072 bcm_field_entry_t entry, 21073 uint32 * data, 21074 uint32 * mask) 21075 { 21076 return bcm_field_qualify_InVPort32_get( 21077 BCM_CONTROL(unit)->unit, 21078 entry, 21079 data, 21080 mask); 21081 } 21082 21083 int 21084 bcm_loop_field_qualify_InVPortWide( 21085 int unit, 21086 bcm_field_entry_t entry, 21087 uint64 data, 21088 uint64 mask) 21089 { 21090 return bcm_field_qualify_InVPortWide( 21091 BCM_CONTROL(unit)->unit, 21092 entry, 21093 data, 21094 mask); 21095 } 21096 21097 int 21098 bcm_loop_field_qualify_InVPortWide_get( 21099 int unit, 21100 bcm_field_entry_t entry, 21101 uint64 * data, 21102 uint64 * mask) 21103 { 21104 return bcm_field_qualify_InVPortWide_get( 21105 BCM_CONTROL(unit)->unit, 21106 entry, 21107 data, 21108 mask); 21109 } 21110 21111 int 21112 bcm_loop_field_qualify_InVPort_get( 21113 int unit, 21114 bcm_field_entry_t entry, 21115 uint8 * data, 21116 uint8 * mask) 21117 { 21118 return bcm_field_qualify_InVPort_get( 21119 BCM_CONTROL(unit)->unit, 21120 entry, 21121 data, 21122 mask); 21123 } 21124 21125 int 21126 bcm_loop_field_qualify_InVportDataIndex( 21127 int unit, 21128 bcm_field_entry_t entry, 21129 uint8 data, 21130 uint8 mask) 21131 { 21132 return bcm_field_qualify_InVportDataIndex( 21133 BCM_CONTROL(unit)->unit, 21134 entry, 21135 data, 21136 mask); 21137 } 21138 21139 int 21140 bcm_loop_field_qualify_InVportDataIndex_get( 21141 int unit, 21142 bcm_field_entry_t entry, 21143 uint8 * data, 21144 uint8 * mask) 21145 { 21146 return bcm_field_qualify_InVportDataIndex_get( 21147 BCM_CONTROL(unit)->unit, 21148 entry, 21149 data, 21150 mask); 21151 } 21152 21153 int 21154 bcm_loop_field_qualify_IncomingIpIfClass( 21155 int unit, 21156 bcm_field_entry_t entry, 21157 uint32 data, 21158 uint32 mask) 21159 { 21160 return bcm_field_qualify_IncomingIpIfClass( 21161 BCM_CONTROL(unit)->unit, 21162 entry, 21163 data, 21164 mask); 21165 } 21166 21167 int 21168 bcm_loop_field_qualify_IncomingIpIfClass_get( 21169 int unit, 21170 bcm_field_entry_t entry, 21171 uint32 * data, 21172 uint32 * mask) 21173 { 21174 return bcm_field_qualify_IncomingIpIfClass_get( 21175 BCM_CONTROL(unit)->unit, 21176 entry, 21177 data, 21178 mask); 21179 } 21180 21181 int 21182 bcm_loop_field_qualify_IncomingOuterVlanId( 21183 int unit, 21184 bcm_field_entry_t entry, 21185 bcm_vlan_t data, 21186 bcm_vlan_t mask) 21187 { 21188 return bcm_field_qualify_IncomingOuterVlanId( 21189 BCM_CONTROL(unit)->unit, 21190 entry, 21191 data, 21192 mask); 21193 } 21194 21195 int 21196 bcm_loop_field_qualify_IncomingOuterVlanId_get( 21197 int unit, 21198 bcm_field_entry_t entry, 21199 bcm_vlan_t * data, 21200 bcm_vlan_t * mask) 21201 { 21202 return bcm_field_qualify_IncomingOuterVlanId_get( 21203 BCM_CONTROL(unit)->unit, 21204 entry, 21205 data, 21206 mask); 21207 } 21208 21209 int 21210 bcm_loop_field_qualify_IngressClassField( 21211 int unit, 21212 bcm_field_entry_t entry, 21213 uint32 data, 21214 uint32 mask) 21215 { 21216 return bcm_field_qualify_IngressClassField( 21217 BCM_CONTROL(unit)->unit, 21218 entry, 21219 data, 21220 mask); 21221 } 21222 21223 int 21224 bcm_loop_field_qualify_IngressClassField_get( 21225 int unit, 21226 bcm_field_entry_t entry, 21227 uint32 * data, 21228 uint32 * mask) 21229 { 21230 return bcm_field_qualify_IngressClassField_get( 21231 BCM_CONTROL(unit)->unit, 21232 entry, 21233 data, 21234 mask); 21235 } 21236 21237 int 21238 bcm_loop_field_qualify_IngressDropEthernetOamControl( 21239 int unit, 21240 bcm_field_entry_t entry, 21241 bcm_field_oam_drop_mep_type_t mep_type) 21242 { 21243 return bcm_field_qualify_IngressDropEthernetOamControl( 21244 BCM_CONTROL(unit)->unit, 21245 entry, 21246 mep_type); 21247 } 21248 21249 int 21250 bcm_loop_field_qualify_IngressDropEthernetOamControl_get( 21251 int unit, 21252 bcm_field_entry_t entry, 21253 bcm_field_oam_drop_mep_type_t * mep_type) 21254 { 21255 return bcm_field_qualify_IngressDropEthernetOamControl_get( 21256 BCM_CONTROL(unit)->unit, 21257 entry, 21258 mep_type); 21259 } 21260 21261 int 21262 bcm_loop_field_qualify_IngressDropEthernetOamData( 21263 int unit, 21264 bcm_field_entry_t entry, 21265 bcm_field_oam_drop_mep_type_t mep_type) 21266 { 21267 return bcm_field_qualify_IngressDropEthernetOamData( 21268 BCM_CONTROL(unit)->unit, 21269 entry, 21270 mep_type); 21271 } 21272 21273 int 21274 bcm_loop_field_qualify_IngressDropEthernetOamData_get( 21275 int unit, 21276 bcm_field_entry_t entry, 21277 bcm_field_oam_drop_mep_type_t * mep_type) 21278 { 21279 return bcm_field_qualify_IngressDropEthernetOamData_get( 21280 BCM_CONTROL(unit)->unit, 21281 entry, 21282 mep_type); 21283 } 21284 21285 int 21286 bcm_loop_field_qualify_IngressDropMplsOamControl( 21287 int unit, 21288 bcm_field_entry_t entry, 21289 bcm_field_oam_drop_mep_type_t mep_type) 21290 { 21291 return bcm_field_qualify_IngressDropMplsOamControl( 21292 BCM_CONTROL(unit)->unit, 21293 entry, 21294 mep_type); 21295 } 21296 21297 int 21298 bcm_loop_field_qualify_IngressDropMplsOamControl_get( 21299 int unit, 21300 bcm_field_entry_t entry, 21301 bcm_field_oam_drop_mep_type_t * mep_type) 21302 { 21303 return bcm_field_qualify_IngressDropMplsOamControl_get( 21304 BCM_CONTROL(unit)->unit, 21305 entry, 21306 mep_type); 21307 } 21308 21309 int 21310 bcm_loop_field_qualify_IngressDropMplsOamData( 21311 int unit, 21312 bcm_field_entry_t entry, 21313 bcm_field_oam_drop_mep_type_t mep_type) 21314 { 21315 return bcm_field_qualify_IngressDropMplsOamData( 21316 BCM_CONTROL(unit)->unit, 21317 entry, 21318 mep_type); 21319 } 21320 21321 int 21322 bcm_loop_field_qualify_IngressDropMplsOamData_get( 21323 int unit, 21324 bcm_field_entry_t entry, 21325 bcm_field_oam_drop_mep_type_t * mep_type) 21326 { 21327 return bcm_field_qualify_IngressDropMplsOamData_get( 21328 BCM_CONTROL(unit)->unit, 21329 entry, 21330 mep_type); 21331 } 21332 21333 int 21334 bcm_loop_field_qualify_IngressECid( 21335 int unit, 21336 bcm_field_entry_t entry, 21337 uint32 data, 21338 uint32 mask) 21339 { 21340 return bcm_field_qualify_IngressECid( 21341 BCM_CONTROL(unit)->unit, 21342 entry, 21343 data, 21344 mask); 21345 } 21346 21347 int 21348 bcm_loop_field_qualify_IngressECid_get( 21349 int unit, 21350 bcm_field_entry_t entry, 21351 uint32 * data, 21352 uint32 * mask) 21353 { 21354 return bcm_field_qualify_IngressECid_get( 21355 BCM_CONTROL(unit)->unit, 21356 entry, 21357 data, 21358 mask); 21359 } 21360 21361 int 21362 bcm_loop_field_qualify_IngressInterfaceClassPort( 21363 int unit, 21364 bcm_field_entry_t entry, 21365 uint32 data, 21366 uint32 mask) 21367 { 21368 return bcm_field_qualify_IngressInterfaceClassPort( 21369 BCM_CONTROL(unit)->unit, 21370 entry, 21371 data, 21372 mask); 21373 } 21374 21375 int 21376 bcm_loop_field_qualify_IngressInterfaceClassPort_get( 21377 int unit, 21378 bcm_field_entry_t entry, 21379 uint32 * data, 21380 uint32 * mask) 21381 { 21382 return bcm_field_qualify_IngressInterfaceClassPort_get( 21383 BCM_CONTROL(unit)->unit, 21384 entry, 21385 data, 21386 mask); 21387 } 21388 21389 int 21390 bcm_loop_field_qualify_IngressInterfaceClassVPort( 21391 int unit, 21392 bcm_field_entry_t entry, 21393 uint32 data, 21394 uint32 mask) 21395 { 21396 return bcm_field_qualify_IngressInterfaceClassVPort( 21397 BCM_CONTROL(unit)->unit, 21398 entry, 21399 data, 21400 mask); 21401 } 21402 21403 int 21404 bcm_loop_field_qualify_IngressInterfaceClassVPort_get( 21405 int unit, 21406 bcm_field_entry_t entry, 21407 uint32 * data, 21408 uint32 * mask) 21409 { 21410 return bcm_field_qualify_IngressInterfaceClassVPort_get( 21411 BCM_CONTROL(unit)->unit, 21412 entry, 21413 data, 21414 mask); 21415 } 21416 21417 int 21418 bcm_loop_field_qualify_IngressStpState( 21419 int unit, 21420 bcm_field_entry_t entry, 21421 uint8 data, 21422 uint8 mask) 21423 { 21424 return bcm_field_qualify_IngressStpState( 21425 BCM_CONTROL(unit)->unit, 21426 entry, 21427 data, 21428 mask); 21429 } 21430 21431 int 21432 bcm_loop_field_qualify_IngressStpState_get( 21433 int unit, 21434 bcm_field_entry_t entry, 21435 uint8 * data, 21436 uint8 * mask) 21437 { 21438 return bcm_field_qualify_IngressStpState_get( 21439 BCM_CONTROL(unit)->unit, 21440 entry, 21441 data, 21442 mask); 21443 } 21444 21445 int 21446 bcm_loop_field_qualify_IngressVPortBridgeDisable( 21447 int unit, 21448 bcm_field_entry_t entry, 21449 uint8 data, 21450 uint8 mask) 21451 { 21452 return bcm_field_qualify_IngressVPortBridgeDisable( 21453 BCM_CONTROL(unit)->unit, 21454 entry, 21455 data, 21456 mask); 21457 } 21458 21459 int 21460 bcm_loop_field_qualify_IngressVPortBridgeDisable_get( 21461 int unit, 21462 bcm_field_entry_t entry, 21463 uint8 * data, 21464 uint8 * mask) 21465 { 21466 return bcm_field_qualify_IngressVPortBridgeDisable_get( 21467 BCM_CONTROL(unit)->unit, 21468 entry, 21469 data, 21470 mask); 21471 } 21472 21473 int 21474 bcm_loop_field_qualify_InnerBfdPktVersionOne( 21475 int unit, 21476 bcm_field_entry_t entry, 21477 uint8 data, 21478 uint8 mask) 21479 { 21480 return bcm_field_qualify_InnerBfdPktVersionOne( 21481 BCM_CONTROL(unit)->unit, 21482 entry, 21483 data, 21484 mask); 21485 } 21486 21487 int 21488 bcm_loop_field_qualify_InnerBfdPktVersionOne_get( 21489 int unit, 21490 bcm_field_entry_t entry, 21491 uint8 * data, 21492 uint8 * mask) 21493 { 21494 return bcm_field_qualify_InnerBfdPktVersionOne_get( 21495 BCM_CONTROL(unit)->unit, 21496 entry, 21497 data, 21498 mask); 21499 } 21500 21501 int 21502 bcm_loop_field_qualify_InnerDSCP( 21503 int unit, 21504 bcm_field_entry_t entry, 21505 uint8 data, 21506 uint8 mask) 21507 { 21508 return bcm_field_qualify_InnerDSCP( 21509 BCM_CONTROL(unit)->unit, 21510 entry, 21511 data, 21512 mask); 21513 } 21514 21515 int 21516 bcm_loop_field_qualify_InnerDSCP_get( 21517 int unit, 21518 bcm_field_entry_t entry, 21519 uint8 * data, 21520 uint8 * mask) 21521 { 21522 return bcm_field_qualify_InnerDSCP_get( 21523 BCM_CONTROL(unit)->unit, 21524 entry, 21525 data, 21526 mask); 21527 } 21528 21529 int 21530 bcm_loop_field_qualify_InnerDosAttack( 21531 int unit, 21532 bcm_field_entry_t entry, 21533 uint8 data, 21534 uint8 mask) 21535 { 21536 return bcm_field_qualify_InnerDosAttack( 21537 BCM_CONTROL(unit)->unit, 21538 entry, 21539 data, 21540 mask); 21541 } 21542 21543 int 21544 bcm_loop_field_qualify_InnerDosAttackEvents( 21545 int unit, 21546 bcm_field_entry_t entry, 21547 uint32 data, 21548 uint32 mask) 21549 { 21550 return bcm_field_qualify_InnerDosAttackEvents( 21551 BCM_CONTROL(unit)->unit, 21552 entry, 21553 data, 21554 mask); 21555 } 21556 21557 int 21558 bcm_loop_field_qualify_InnerDosAttackEvents_get( 21559 int unit, 21560 bcm_field_entry_t entry, 21561 uint32 * data, 21562 uint32 * mask) 21563 { 21564 return bcm_field_qualify_InnerDosAttackEvents_get( 21565 BCM_CONTROL(unit)->unit, 21566 entry, 21567 data, 21568 mask); 21569 } 21570 21571 int 21572 bcm_loop_field_qualify_InnerDosAttack_get( 21573 int unit, 21574 bcm_field_entry_t entry, 21575 uint8 * data, 21576 uint8 * mask) 21577 { 21578 return bcm_field_qualify_InnerDosAttack_get( 21579 BCM_CONTROL(unit)->unit, 21580 entry, 21581 data, 21582 mask); 21583 } 21584 21585 int 21586 bcm_loop_field_qualify_InnerDstIp( 21587 int unit, 21588 bcm_field_entry_t entry, 21589 bcm_ip_t data, 21590 bcm_ip_t mask) 21591 { 21592 return bcm_field_qualify_InnerDstIp( 21593 BCM_CONTROL(unit)->unit, 21594 entry, 21595 data, 21596 mask); 21597 } 21598 21599 int 21600 bcm_loop_field_qualify_InnerDstIp6( 21601 int unit, 21602 bcm_field_entry_t entry, 21603 bcm_ip6_t data, 21604 bcm_ip6_t mask) 21605 { 21606 return bcm_field_qualify_InnerDstIp6( 21607 BCM_CONTROL(unit)->unit, 21608 entry, 21609 data, 21610 mask); 21611 } 21612 21613 int 21614 bcm_loop_field_qualify_InnerDstIp6High( 21615 int unit, 21616 bcm_field_entry_t entry, 21617 bcm_ip6_t data, 21618 bcm_ip6_t mask) 21619 { 21620 return bcm_field_qualify_InnerDstIp6High( 21621 BCM_CONTROL(unit)->unit, 21622 entry, 21623 data, 21624 mask); 21625 } 21626 21627 int 21628 bcm_loop_field_qualify_InnerDstIp6High_get( 21629 int unit, 21630 bcm_field_entry_t entry, 21631 bcm_ip6_t * data, 21632 bcm_ip6_t * mask) 21633 { 21634 return bcm_field_qualify_InnerDstIp6High_get( 21635 BCM_CONTROL(unit)->unit, 21636 entry, 21637 data, 21638 mask); 21639 } 21640 21641 int 21642 bcm_loop_field_qualify_InnerDstIp6_get( 21643 int unit, 21644 bcm_field_entry_t entry, 21645 bcm_ip6_t * data, 21646 bcm_ip6_t * mask) 21647 { 21648 return bcm_field_qualify_InnerDstIp6_get( 21649 BCM_CONTROL(unit)->unit, 21650 entry, 21651 data, 21652 mask); 21653 } 21654 21655 int 21656 bcm_loop_field_qualify_InnerDstIp_get( 21657 int unit, 21658 bcm_field_entry_t entry, 21659 bcm_ip_t * data, 21660 bcm_ip_t * mask) 21661 { 21662 return bcm_field_qualify_InnerDstIp_get( 21663 BCM_CONTROL(unit)->unit, 21664 entry, 21665 data, 21666 mask); 21667 } 21668 21669 int 21670 bcm_loop_field_qualify_InnerDstMac( 21671 int unit, 21672 bcm_field_entry_t entry, 21673 bcm_mac_t data, 21674 bcm_mac_t mask) 21675 { 21676 return bcm_field_qualify_InnerDstMac( 21677 BCM_CONTROL(unit)->unit, 21678 entry, 21679 data, 21680 mask); 21681 } 21682 21683 int 21684 bcm_loop_field_qualify_InnerDstMac_get( 21685 int unit, 21686 bcm_field_entry_t entry, 21687 bcm_mac_t * data, 21688 bcm_mac_t * mask) 21689 { 21690 return bcm_field_qualify_InnerDstMac_get( 21691 BCM_CONTROL(unit)->unit, 21692 entry, 21693 data, 21694 mask); 21695 } 21696 21697 int 21698 bcm_loop_field_qualify_InnerEtherType( 21699 int unit, 21700 bcm_field_entry_t entry, 21701 uint16 data, 21702 uint16 mask) 21703 { 21704 return bcm_field_qualify_InnerEtherType( 21705 BCM_CONTROL(unit)->unit, 21706 entry, 21707 data, 21708 mask); 21709 } 21710 21711 int 21712 bcm_loop_field_qualify_InnerEtherType_get( 21713 int unit, 21714 bcm_field_entry_t entry, 21715 uint16 * data, 21716 uint16 * mask) 21717 { 21718 return bcm_field_qualify_InnerEtherType_get( 21719 BCM_CONTROL(unit)->unit, 21720 entry, 21721 data, 21722 mask); 21723 } 21724 21725 int 21726 bcm_loop_field_qualify_InnerIp6FlowLabel( 21727 int unit, 21728 bcm_field_entry_t entry, 21729 uint32 data, 21730 uint32 mask) 21731 { 21732 return bcm_field_qualify_InnerIp6FlowLabel( 21733 BCM_CONTROL(unit)->unit, 21734 entry, 21735 data, 21736 mask); 21737 } 21738 21739 int 21740 bcm_loop_field_qualify_InnerIp6FlowLabel_get( 21741 int unit, 21742 bcm_field_entry_t entry, 21743 uint32 * data, 21744 uint32 * mask) 21745 { 21746 return bcm_field_qualify_InnerIp6FlowLabel_get( 21747 BCM_CONTROL(unit)->unit, 21748 entry, 21749 data, 21750 mask); 21751 } 21752 21753 int 21754 bcm_loop_field_qualify_InnerIp6HopLimit( 21755 int unit, 21756 bcm_field_entry_t entry, 21757 uint8 data, 21758 uint8 mask) 21759 { 21760 return bcm_field_qualify_InnerIp6HopLimit( 21761 BCM_CONTROL(unit)->unit, 21762 entry, 21763 data, 21764 mask); 21765 } 21766 21767 int 21768 bcm_loop_field_qualify_InnerIp6HopLimit_get( 21769 int unit, 21770 bcm_field_entry_t entry, 21771 uint8 * data, 21772 uint8 * mask) 21773 { 21774 return bcm_field_qualify_InnerIp6HopLimit_get( 21775 BCM_CONTROL(unit)->unit, 21776 entry, 21777 data, 21778 mask); 21779 } 21780 21781 int 21782 bcm_loop_field_qualify_InnerIp6NextHeader( 21783 int unit, 21784 bcm_field_entry_t entry, 21785 uint8 data, 21786 uint8 mask) 21787 { 21788 return bcm_field_qualify_InnerIp6NextHeader( 21789 BCM_CONTROL(unit)->unit, 21790 entry, 21791 data, 21792 mask); 21793 } 21794 21795 int 21796 bcm_loop_field_qualify_InnerIp6NextHeader_get( 21797 int unit, 21798 bcm_field_entry_t entry, 21799 uint8 * data, 21800 uint8 * mask) 21801 { 21802 return bcm_field_qualify_InnerIp6NextHeader_get( 21803 BCM_CONTROL(unit)->unit, 21804 entry, 21805 data, 21806 mask); 21807 } 21808 21809 int 21810 bcm_loop_field_qualify_InnerIp6PktHopLimit( 21811 int unit, 21812 bcm_field_entry_t entry, 21813 uint8 data, 21814 uint8 mask) 21815 { 21816 return bcm_field_qualify_InnerIp6PktHopLimit( 21817 BCM_CONTROL(unit)->unit, 21818 entry, 21819 data, 21820 mask); 21821 } 21822 21823 int 21824 bcm_loop_field_qualify_InnerIp6PktHopLimit_get( 21825 int unit, 21826 bcm_field_entry_t entry, 21827 uint8 * data, 21828 uint8 * mask) 21829 { 21830 return bcm_field_qualify_InnerIp6PktHopLimit_get( 21831 BCM_CONTROL(unit)->unit, 21832 entry, 21833 data, 21834 mask); 21835 } 21836 21837 int 21838 bcm_loop_field_qualify_InnerIp6PktNextHeader( 21839 int unit, 21840 bcm_field_entry_t entry, 21841 uint8 data, 21842 uint8 mask) 21843 { 21844 return bcm_field_qualify_InnerIp6PktNextHeader( 21845 BCM_CONTROL(unit)->unit, 21846 entry, 21847 data, 21848 mask); 21849 } 21850 21851 int 21852 bcm_loop_field_qualify_InnerIp6PktNextHeader_get( 21853 int unit, 21854 bcm_field_entry_t entry, 21855 uint8 * data, 21856 uint8 * mask) 21857 { 21858 return bcm_field_qualify_InnerIp6PktNextHeader_get( 21859 BCM_CONTROL(unit)->unit, 21860 entry, 21861 data, 21862 mask); 21863 } 21864 21865 int 21866 bcm_loop_field_qualify_InnerIp6PktTrafficClass( 21867 int unit, 21868 bcm_field_entry_t entry, 21869 uint8 data, 21870 uint8 mask) 21871 { 21872 return bcm_field_qualify_InnerIp6PktTrafficClass( 21873 BCM_CONTROL(unit)->unit, 21874 entry, 21875 data, 21876 mask); 21877 } 21878 21879 int 21880 bcm_loop_field_qualify_InnerIp6PktTrafficClass_get( 21881 int unit, 21882 bcm_field_entry_t entry, 21883 uint8 * data, 21884 uint8 * mask) 21885 { 21886 return bcm_field_qualify_InnerIp6PktTrafficClass_get( 21887 BCM_CONTROL(unit)->unit, 21888 entry, 21889 data, 21890 mask); 21891 } 21892 21893 int 21894 bcm_loop_field_qualify_InnerIpFrag( 21895 int unit, 21896 bcm_field_entry_t entry, 21897 bcm_field_IpFrag_t frag_info) 21898 { 21899 return bcm_field_qualify_InnerIpFrag( 21900 BCM_CONTROL(unit)->unit, 21901 entry, 21902 frag_info); 21903 } 21904 21905 int 21906 bcm_loop_field_qualify_InnerIpFrag_get( 21907 int unit, 21908 bcm_field_entry_t entry, 21909 bcm_field_IpFrag_t * frag_info) 21910 { 21911 return bcm_field_qualify_InnerIpFrag_get( 21912 BCM_CONTROL(unit)->unit, 21913 entry, 21914 frag_info); 21915 } 21916 21917 int 21918 bcm_loop_field_qualify_InnerIpProtocol( 21919 int unit, 21920 bcm_field_entry_t entry, 21921 uint8 data, 21922 uint8 mask) 21923 { 21924 return bcm_field_qualify_InnerIpProtocol( 21925 BCM_CONTROL(unit)->unit, 21926 entry, 21927 data, 21928 mask); 21929 } 21930 21931 int 21932 bcm_loop_field_qualify_InnerIpProtocolCommon( 21933 int unit, 21934 bcm_field_entry_t entry, 21935 bcm_field_IpProtocolCommon_t protocol) 21936 { 21937 return bcm_field_qualify_InnerIpProtocolCommon( 21938 BCM_CONTROL(unit)->unit, 21939 entry, 21940 protocol); 21941 } 21942 21943 int 21944 bcm_loop_field_qualify_InnerIpProtocolCommon_get( 21945 int unit, 21946 bcm_field_entry_t entry, 21947 bcm_field_IpProtocolCommon_t * protocol) 21948 { 21949 return bcm_field_qualify_InnerIpProtocolCommon_get( 21950 BCM_CONTROL(unit)->unit, 21951 entry, 21952 protocol); 21953 } 21954 21955 int 21956 bcm_loop_field_qualify_InnerIpProtocol_get( 21957 int unit, 21958 bcm_field_entry_t entry, 21959 uint8 * data, 21960 uint8 * mask) 21961 { 21962 return bcm_field_qualify_InnerIpProtocol_get( 21963 BCM_CONTROL(unit)->unit, 21964 entry, 21965 data, 21966 mask); 21967 } 21968 21969 int 21970 bcm_loop_field_qualify_InnerIpType( 21971 int unit, 21972 bcm_field_entry_t entry, 21973 bcm_field_IpType_t type) 21974 { 21975 return bcm_field_qualify_InnerIpType( 21976 BCM_CONTROL(unit)->unit, 21977 entry, 21978 type); 21979 } 21980 21981 int 21982 bcm_loop_field_qualify_InnerIpType_get( 21983 int unit, 21984 bcm_field_entry_t entry, 21985 bcm_field_IpType_t * type) 21986 { 21987 return bcm_field_qualify_InnerIpType_get( 21988 BCM_CONTROL(unit)->unit, 21989 entry, 21990 type); 21991 } 21992 21993 int 21994 bcm_loop_field_qualify_InnerL4DstPort( 21995 int unit, 21996 bcm_field_entry_t entry, 21997 bcm_l4_port_t data, 21998 bcm_l4_port_t mask) 21999 { 22000 return bcm_field_qualify_InnerL4DstPort( 22001 BCM_CONTROL(unit)->unit, 22002 entry, 22003 data, 22004 mask); 22005 } 22006 22007 int 22008 bcm_loop_field_qualify_InnerL4DstPort_get( 22009 int unit, 22010 bcm_field_entry_t entry, 22011 bcm_l4_port_t * data, 22012 bcm_l4_port_t * mask) 22013 { 22014 return bcm_field_qualify_InnerL4DstPort_get( 22015 BCM_CONTROL(unit)->unit, 22016 entry, 22017 data, 22018 mask); 22019 } 22020 22021 int 22022 bcm_loop_field_qualify_InnerL4Ports( 22023 int unit, 22024 bcm_field_entry_t entry, 22025 uint8 data, 22026 uint8 mask) 22027 { 22028 return bcm_field_qualify_InnerL4Ports( 22029 BCM_CONTROL(unit)->unit, 22030 entry, 22031 data, 22032 mask); 22033 } 22034 22035 int 22036 bcm_loop_field_qualify_InnerL4Ports_get( 22037 int unit, 22038 bcm_field_entry_t entry, 22039 uint8 * data, 22040 uint8 * mask) 22041 { 22042 return bcm_field_qualify_InnerL4Ports_get( 22043 BCM_CONTROL(unit)->unit, 22044 entry, 22045 data, 22046 mask); 22047 } 22048 22049 int 22050 bcm_loop_field_qualify_InnerL4SrcPort( 22051 int unit, 22052 bcm_field_entry_t entry, 22053 bcm_l4_port_t data, 22054 bcm_l4_port_t mask) 22055 { 22056 return bcm_field_qualify_InnerL4SrcPort( 22057 BCM_CONTROL(unit)->unit, 22058 entry, 22059 data, 22060 mask); 22061 } 22062 22063 int 22064 bcm_loop_field_qualify_InnerL4SrcPort_get( 22065 int unit, 22066 bcm_field_entry_t entry, 22067 bcm_l4_port_t * data, 22068 bcm_l4_port_t * mask) 22069 { 22070 return bcm_field_qualify_InnerL4SrcPort_get( 22071 BCM_CONTROL(unit)->unit, 22072 entry, 22073 data, 22074 mask); 22075 } 22076 22077 int 22078 bcm_loop_field_qualify_InnerSrcIp( 22079 int unit, 22080 bcm_field_entry_t entry, 22081 bcm_ip_t data, 22082 bcm_ip_t mask) 22083 { 22084 return bcm_field_qualify_InnerSrcIp( 22085 BCM_CONTROL(unit)->unit, 22086 entry, 22087 data, 22088 mask); 22089 } 22090 22091 int 22092 bcm_loop_field_qualify_InnerSrcIp6( 22093 int unit, 22094 bcm_field_entry_t entry, 22095 bcm_ip6_t data, 22096 bcm_ip6_t mask) 22097 { 22098 return bcm_field_qualify_InnerSrcIp6( 22099 BCM_CONTROL(unit)->unit, 22100 entry, 22101 data, 22102 mask); 22103 } 22104 22105 int 22106 bcm_loop_field_qualify_InnerSrcIp6High( 22107 int unit, 22108 bcm_field_entry_t entry, 22109 bcm_ip6_t data, 22110 bcm_ip6_t mask) 22111 { 22112 return bcm_field_qualify_InnerSrcIp6High( 22113 BCM_CONTROL(unit)->unit, 22114 entry, 22115 data, 22116 mask); 22117 } 22118 22119 int 22120 bcm_loop_field_qualify_InnerSrcIp6High_get( 22121 int unit, 22122 bcm_field_entry_t entry, 22123 bcm_ip6_t * data, 22124 bcm_ip6_t * mask) 22125 { 22126 return bcm_field_qualify_InnerSrcIp6High_get( 22127 BCM_CONTROL(unit)->unit, 22128 entry, 22129 data, 22130 mask); 22131 } 22132 22133 int 22134 bcm_loop_field_qualify_InnerSrcIp6_get( 22135 int unit, 22136 bcm_field_entry_t entry, 22137 bcm_ip6_t * data, 22138 bcm_ip6_t * mask) 22139 { 22140 return bcm_field_qualify_InnerSrcIp6_get( 22141 BCM_CONTROL(unit)->unit, 22142 entry, 22143 data, 22144 mask); 22145 } 22146 22147 int 22148 bcm_loop_field_qualify_InnerSrcIp_get( 22149 int unit, 22150 bcm_field_entry_t entry, 22151 bcm_ip_t * data, 22152 bcm_ip_t * mask) 22153 { 22154 return bcm_field_qualify_InnerSrcIp_get( 22155 BCM_CONTROL(unit)->unit, 22156 entry, 22157 data, 22158 mask); 22159 } 22160 22161 int 22162 bcm_loop_field_qualify_InnerSrcMac( 22163 int unit, 22164 bcm_field_entry_t entry, 22165 bcm_mac_t data, 22166 bcm_mac_t mask) 22167 { 22168 return bcm_field_qualify_InnerSrcMac( 22169 BCM_CONTROL(unit)->unit, 22170 entry, 22171 data, 22172 mask); 22173 } 22174 22175 int 22176 bcm_loop_field_qualify_InnerSrcMac_get( 22177 int unit, 22178 bcm_field_entry_t entry, 22179 bcm_mac_t * data, 22180 bcm_mac_t * mask) 22181 { 22182 return bcm_field_qualify_InnerSrcMac_get( 22183 BCM_CONTROL(unit)->unit, 22184 entry, 22185 data, 22186 mask); 22187 } 22188 22189 int 22190 bcm_loop_field_qualify_InnerTos( 22191 int unit, 22192 bcm_field_entry_t entry, 22193 uint8 data, 22194 uint8 mask) 22195 { 22196 return bcm_field_qualify_InnerTos( 22197 BCM_CONTROL(unit)->unit, 22198 entry, 22199 data, 22200 mask); 22201 } 22202 22203 int 22204 bcm_loop_field_qualify_InnerTos_get( 22205 int unit, 22206 bcm_field_entry_t entry, 22207 uint8 * data, 22208 uint8 * mask) 22209 { 22210 return bcm_field_qualify_InnerTos_get( 22211 BCM_CONTROL(unit)->unit, 22212 entry, 22213 data, 22214 mask); 22215 } 22216 22217 int 22218 bcm_loop_field_qualify_InnerTpid( 22219 int unit, 22220 bcm_field_entry_t entry, 22221 uint16 tpid) 22222 { 22223 return bcm_field_qualify_InnerTpid( 22224 BCM_CONTROL(unit)->unit, 22225 entry, 22226 tpid); 22227 } 22228 22229 int 22230 bcm_loop_field_qualify_InnerTpid_get( 22231 int unit, 22232 bcm_field_entry_t entry, 22233 uint16 * tpid) 22234 { 22235 return bcm_field_qualify_InnerTpid_get( 22236 BCM_CONTROL(unit)->unit, 22237 entry, 22238 tpid); 22239 } 22240 22241 int 22242 bcm_loop_field_qualify_InnerTtl( 22243 int unit, 22244 bcm_field_entry_t entry, 22245 uint8 data, 22246 uint8 mask) 22247 { 22248 return bcm_field_qualify_InnerTtl( 22249 BCM_CONTROL(unit)->unit, 22250 entry, 22251 data, 22252 mask); 22253 } 22254 22255 int 22256 bcm_loop_field_qualify_InnerTtl_get( 22257 int unit, 22258 bcm_field_entry_t entry, 22259 uint8 * data, 22260 uint8 * mask) 22261 { 22262 return bcm_field_qualify_InnerTtl_get( 22263 BCM_CONTROL(unit)->unit, 22264 entry, 22265 data, 22266 mask); 22267 } 22268 22269 int 22270 bcm_loop_field_qualify_InnerVlan( 22271 int unit, 22272 bcm_field_entry_t entry, 22273 bcm_vlan_t data, 22274 bcm_vlan_t mask) 22275 { 22276 return bcm_field_qualify_InnerVlan( 22277 BCM_CONTROL(unit)->unit, 22278 entry, 22279 data, 22280 mask); 22281 } 22282 22283 int 22284 bcm_loop_field_qualify_InnerVlanActionRange( 22285 int unit, 22286 bcm_field_entry_t entry, 22287 bcm_vlan_t data, 22288 bcm_vlan_t mask) 22289 { 22290 return bcm_field_qualify_InnerVlanActionRange( 22291 BCM_CONTROL(unit)->unit, 22292 entry, 22293 data, 22294 mask); 22295 } 22296 22297 int 22298 bcm_loop_field_qualify_InnerVlanActionRange_get( 22299 int unit, 22300 bcm_field_entry_t entry, 22301 bcm_vlan_t * data, 22302 bcm_vlan_t * mask) 22303 { 22304 return bcm_field_qualify_InnerVlanActionRange_get( 22305 BCM_CONTROL(unit)->unit, 22306 entry, 22307 data, 22308 mask); 22309 } 22310 22311 int 22312 bcm_loop_field_qualify_InnerVlanCfi( 22313 int unit, 22314 bcm_field_entry_t entry, 22315 uint8 data, 22316 uint8 mask) 22317 { 22318 return bcm_field_qualify_InnerVlanCfi( 22319 BCM_CONTROL(unit)->unit, 22320 entry, 22321 data, 22322 mask); 22323 } 22324 22325 int 22326 bcm_loop_field_qualify_InnerVlanCfi_get( 22327 int unit, 22328 bcm_field_entry_t entry, 22329 uint8 * data, 22330 uint8 * mask) 22331 { 22332 return bcm_field_qualify_InnerVlanCfi_get( 22333 BCM_CONTROL(unit)->unit, 22334 entry, 22335 data, 22336 mask); 22337 } 22338 22339 int 22340 bcm_loop_field_qualify_InnerVlanId( 22341 int unit, 22342 bcm_field_entry_t entry, 22343 bcm_vlan_t data, 22344 bcm_vlan_t mask) 22345 { 22346 return bcm_field_qualify_InnerVlanId( 22347 BCM_CONTROL(unit)->unit, 22348 entry, 22349 data, 22350 mask); 22351 } 22352 22353 int 22354 bcm_loop_field_qualify_InnerVlanId_get( 22355 int unit, 22356 bcm_field_entry_t entry, 22357 bcm_vlan_t * data, 22358 bcm_vlan_t * mask) 22359 { 22360 return bcm_field_qualify_InnerVlanId_get( 22361 BCM_CONTROL(unit)->unit, 22362 entry, 22363 data, 22364 mask); 22365 } 22366 22367 int 22368 bcm_loop_field_qualify_InnerVlanPri( 22369 int unit, 22370 bcm_field_entry_t entry, 22371 uint8 data, 22372 uint8 mask) 22373 { 22374 return bcm_field_qualify_InnerVlanPri( 22375 BCM_CONTROL(unit)->unit, 22376 entry, 22377 data, 22378 mask); 22379 } 22380 22381 int 22382 bcm_loop_field_qualify_InnerVlanPri_get( 22383 int unit, 22384 bcm_field_entry_t entry, 22385 uint8 * data, 22386 uint8 * mask) 22387 { 22388 return bcm_field_qualify_InnerVlanPri_get( 22389 BCM_CONTROL(unit)->unit, 22390 entry, 22391 data, 22392 mask); 22393 } 22394 22395 int 22396 bcm_loop_field_qualify_InnerVlan_get( 22397 int unit, 22398 bcm_field_entry_t entry, 22399 bcm_vlan_t * data, 22400 bcm_vlan_t * mask) 22401 { 22402 return bcm_field_qualify_InnerVlan_get( 22403 BCM_CONTROL(unit)->unit, 22404 entry, 22405 data, 22406 mask); 22407 } 22408 22409 int 22410 bcm_loop_field_qualify_IntCongestionNotification( 22411 int unit, 22412 bcm_field_entry_t entry, 22413 uint8 data, 22414 uint8 mask) 22415 { 22416 return bcm_field_qualify_IntCongestionNotification( 22417 BCM_CONTROL(unit)->unit, 22418 entry, 22419 data, 22420 mask); 22421 } 22422 22423 int 22424 bcm_loop_field_qualify_IntCongestionNotification_get( 22425 int unit, 22426 bcm_field_entry_t entry, 22427 uint8 * data, 22428 uint8 * mask) 22429 { 22430 return bcm_field_qualify_IntCongestionNotification_get( 22431 BCM_CONTROL(unit)->unit, 22432 entry, 22433 data, 22434 mask); 22435 } 22436 22437 int 22438 bcm_loop_field_qualify_IntPktFinalHop( 22439 int unit, 22440 bcm_field_entry_t entry, 22441 uint8 data, 22442 uint8 mask) 22443 { 22444 return bcm_field_qualify_IntPktFinalHop( 22445 BCM_CONTROL(unit)->unit, 22446 entry, 22447 data, 22448 mask); 22449 } 22450 22451 int 22452 bcm_loop_field_qualify_IntPktFinalHop_get( 22453 int unit, 22454 bcm_field_entry_t entry, 22455 uint8 * data, 22456 uint8 * mask) 22457 { 22458 return bcm_field_qualify_IntPktFinalHop_get( 22459 BCM_CONTROL(unit)->unit, 22460 entry, 22461 data, 22462 mask); 22463 } 22464 22465 int 22466 bcm_loop_field_qualify_IntPktLengthValid( 22467 int unit, 22468 bcm_field_entry_t entry, 22469 uint8 data, 22470 uint8 mask) 22471 { 22472 return bcm_field_qualify_IntPktLengthValid( 22473 BCM_CONTROL(unit)->unit, 22474 entry, 22475 data, 22476 mask); 22477 } 22478 22479 int 22480 bcm_loop_field_qualify_IntPktLengthValid_get( 22481 int unit, 22482 bcm_field_entry_t entry, 22483 uint8 * data, 22484 uint8 * mask) 22485 { 22486 return bcm_field_qualify_IntPktLengthValid_get( 22487 BCM_CONTROL(unit)->unit, 22488 entry, 22489 data, 22490 mask); 22491 } 22492 22493 int 22494 bcm_loop_field_qualify_IntPktOverflowed( 22495 int unit, 22496 bcm_field_entry_t entry, 22497 uint8 data, 22498 uint8 mask) 22499 { 22500 return bcm_field_qualify_IntPktOverflowed( 22501 BCM_CONTROL(unit)->unit, 22502 entry, 22503 data, 22504 mask); 22505 } 22506 22507 int 22508 bcm_loop_field_qualify_IntPktOverflowed_get( 22509 int unit, 22510 bcm_field_entry_t entry, 22511 uint8 * data, 22512 uint8 * mask) 22513 { 22514 return bcm_field_qualify_IntPktOverflowed_get( 22515 BCM_CONTROL(unit)->unit, 22516 entry, 22517 data, 22518 mask); 22519 } 22520 22521 int 22522 bcm_loop_field_qualify_IntPktType( 22523 int unit, 22524 bcm_field_entry_t entry, 22525 bcm_field_int_pkt_type_t type) 22526 { 22527 return bcm_field_qualify_IntPktType( 22528 BCM_CONTROL(unit)->unit, 22529 entry, 22530 type); 22531 } 22532 22533 int 22534 bcm_loop_field_qualify_IntPktType_get( 22535 int unit, 22536 bcm_field_entry_t entry, 22537 bcm_field_int_pkt_type_t * type) 22538 { 22539 return bcm_field_qualify_IntPktType_get( 22540 BCM_CONTROL(unit)->unit, 22541 entry, 22542 type); 22543 } 22544 22545 int 22546 bcm_loop_field_qualify_IntPktVersionOne( 22547 int unit, 22548 bcm_field_entry_t entry, 22549 uint8 data, 22550 uint8 mask) 22551 { 22552 return bcm_field_qualify_IntPktVersionOne( 22553 BCM_CONTROL(unit)->unit, 22554 entry, 22555 data, 22556 mask); 22557 } 22558 22559 int 22560 bcm_loop_field_qualify_IntPktVersionOne_get( 22561 int unit, 22562 bcm_field_entry_t entry, 22563 uint8 * data, 22564 uint8 * mask) 22565 { 22566 return bcm_field_qualify_IntPktVersionOne_get( 22567 BCM_CONTROL(unit)->unit, 22568 entry, 22569 data, 22570 mask); 22571 } 22572 22573 int 22574 bcm_loop_field_qualify_IntPriority( 22575 int unit, 22576 bcm_field_entry_t entry, 22577 uint8 data, 22578 uint8 mask) 22579 { 22580 return bcm_field_qualify_IntPriority( 22581 BCM_CONTROL(unit)->unit, 22582 entry, 22583 data, 22584 mask); 22585 } 22586 22587 int 22588 bcm_loop_field_qualify_IntPriority_get( 22589 int unit, 22590 bcm_field_entry_t entry, 22591 uint8 * data, 22592 uint8 * mask) 22593 { 22594 return bcm_field_qualify_IntPriority_get( 22595 BCM_CONTROL(unit)->unit, 22596 entry, 22597 data, 22598 mask); 22599 } 22600 22601 int 22602 bcm_loop_field_qualify_InterfaceClassL2( 22603 int unit, 22604 bcm_field_entry_t entry, 22605 uint32 data, 22606 uint32 mask) 22607 { 22608 return bcm_field_qualify_InterfaceClassL2( 22609 BCM_CONTROL(unit)->unit, 22610 entry, 22611 data, 22612 mask); 22613 } 22614 22615 int 22616 bcm_loop_field_qualify_InterfaceClassL2Type( 22617 int unit, 22618 bcm_field_entry_t entry, 22619 bcm_field_interface_class_l2_type_t type) 22620 { 22621 return bcm_field_qualify_InterfaceClassL2Type( 22622 BCM_CONTROL(unit)->unit, 22623 entry, 22624 type); 22625 } 22626 22627 int 22628 bcm_loop_field_qualify_InterfaceClassL2Type_get( 22629 int unit, 22630 bcm_field_entry_t entry, 22631 bcm_field_interface_class_l2_type_t * type) 22632 { 22633 return bcm_field_qualify_InterfaceClassL2Type_get( 22634 BCM_CONTROL(unit)->unit, 22635 entry, 22636 type); 22637 } 22638 22639 int 22640 bcm_loop_field_qualify_InterfaceClassL2_get( 22641 int unit, 22642 bcm_field_entry_t entry, 22643 uint32 * data, 22644 uint32 * mask) 22645 { 22646 return bcm_field_qualify_InterfaceClassL2_get( 22647 BCM_CONTROL(unit)->unit, 22648 entry, 22649 data, 22650 mask); 22651 } 22652 22653 int 22654 bcm_loop_field_qualify_InterfaceClassL3( 22655 int unit, 22656 bcm_field_entry_t entry, 22657 uint32 data, 22658 uint32 mask) 22659 { 22660 return bcm_field_qualify_InterfaceClassL3( 22661 BCM_CONTROL(unit)->unit, 22662 entry, 22663 data, 22664 mask); 22665 } 22666 22667 int 22668 bcm_loop_field_qualify_InterfaceClassL3Tunnel( 22669 int unit, 22670 bcm_field_entry_t entry, 22671 uint16 data, 22672 uint16 mask) 22673 { 22674 return bcm_field_qualify_InterfaceClassL3Tunnel( 22675 BCM_CONTROL(unit)->unit, 22676 entry, 22677 data, 22678 mask); 22679 } 22680 22681 int 22682 bcm_loop_field_qualify_InterfaceClassL3Tunnel_get( 22683 int unit, 22684 bcm_field_entry_t entry, 22685 uint16 * data, 22686 uint16 * mask) 22687 { 22688 return bcm_field_qualify_InterfaceClassL3Tunnel_get( 22689 BCM_CONTROL(unit)->unit, 22690 entry, 22691 data, 22692 mask); 22693 } 22694 22695 int 22696 bcm_loop_field_qualify_InterfaceClassL3_get( 22697 int unit, 22698 bcm_field_entry_t entry, 22699 uint32 * data, 22700 uint32 * mask) 22701 { 22702 return bcm_field_qualify_InterfaceClassL3_get( 22703 BCM_CONTROL(unit)->unit, 22704 entry, 22705 data, 22706 mask); 22707 } 22708 22709 int 22710 bcm_loop_field_qualify_InterfaceClassMplsLookup1( 22711 int unit, 22712 bcm_field_entry_t entry, 22713 uint16 data, 22714 uint16 mask) 22715 { 22716 return bcm_field_qualify_InterfaceClassMplsLookup1( 22717 BCM_CONTROL(unit)->unit, 22718 entry, 22719 data, 22720 mask); 22721 } 22722 22723 int 22724 bcm_loop_field_qualify_InterfaceClassMplsLookup1_get( 22725 int unit, 22726 bcm_field_entry_t entry, 22727 uint16 * data, 22728 uint16 * mask) 22729 { 22730 return bcm_field_qualify_InterfaceClassMplsLookup1_get( 22731 BCM_CONTROL(unit)->unit, 22732 entry, 22733 data, 22734 mask); 22735 } 22736 22737 int 22738 bcm_loop_field_qualify_InterfaceClassMplsLookup2( 22739 int unit, 22740 bcm_field_entry_t entry, 22741 uint16 data, 22742 uint16 mask) 22743 { 22744 return bcm_field_qualify_InterfaceClassMplsLookup2( 22745 BCM_CONTROL(unit)->unit, 22746 entry, 22747 data, 22748 mask); 22749 } 22750 22751 int 22752 bcm_loop_field_qualify_InterfaceClassMplsLookup2_get( 22753 int unit, 22754 bcm_field_entry_t entry, 22755 uint16 * data, 22756 uint16 * mask) 22757 { 22758 return bcm_field_qualify_InterfaceClassMplsLookup2_get( 22759 BCM_CONTROL(unit)->unit, 22760 entry, 22761 data, 22762 mask); 22763 } 22764 22765 int 22766 bcm_loop_field_qualify_InterfaceClassMplsLookup3( 22767 int unit, 22768 bcm_field_entry_t entry, 22769 uint16 data, 22770 uint16 mask) 22771 { 22772 return bcm_field_qualify_InterfaceClassMplsLookup3( 22773 BCM_CONTROL(unit)->unit, 22774 entry, 22775 data, 22776 mask); 22777 } 22778 22779 int 22780 bcm_loop_field_qualify_InterfaceClassMplsLookup3_get( 22781 int unit, 22782 bcm_field_entry_t entry, 22783 uint16 * data, 22784 uint16 * mask) 22785 { 22786 return bcm_field_qualify_InterfaceClassMplsLookup3_get( 22787 BCM_CONTROL(unit)->unit, 22788 entry, 22789 data, 22790 mask); 22791 } 22792 22793 int 22794 bcm_loop_field_qualify_InterfaceClassPort( 22795 int unit, 22796 bcm_field_entry_t entry, 22797 uint32 data, 22798 uint32 mask) 22799 { 22800 return bcm_field_qualify_InterfaceClassPort( 22801 BCM_CONTROL(unit)->unit, 22802 entry, 22803 data, 22804 mask); 22805 } 22806 22807 int 22808 bcm_loop_field_qualify_InterfaceClassPort_get( 22809 int unit, 22810 bcm_field_entry_t entry, 22811 uint32 * data, 22812 uint32 * mask) 22813 { 22814 return bcm_field_qualify_InterfaceClassPort_get( 22815 BCM_CONTROL(unit)->unit, 22816 entry, 22817 data, 22818 mask); 22819 } 22820 22821 int 22822 bcm_loop_field_qualify_InterfaceClassProcessingPort( 22823 int unit, 22824 bcm_field_entry_t entry, 22825 uint64 data, 22826 uint64 mask) 22827 { 22828 return bcm_field_qualify_InterfaceClassProcessingPort( 22829 BCM_CONTROL(unit)->unit, 22830 entry, 22831 data, 22832 mask); 22833 } 22834 22835 int 22836 bcm_loop_field_qualify_InterfaceClassProcessingPort_get( 22837 int unit, 22838 bcm_field_entry_t entry, 22839 uint64 * data, 22840 uint64 * mask) 22841 { 22842 return bcm_field_qualify_InterfaceClassProcessingPort_get( 22843 BCM_CONTROL(unit)->unit, 22844 entry, 22845 data, 22846 mask); 22847 } 22848 22849 int 22850 bcm_loop_field_qualify_InterfaceClassVPort( 22851 int unit, 22852 bcm_field_entry_t entry, 22853 uint32 data, 22854 uint32 mask) 22855 { 22856 return bcm_field_qualify_InterfaceClassVPort( 22857 BCM_CONTROL(unit)->unit, 22858 entry, 22859 data, 22860 mask); 22861 } 22862 22863 int 22864 bcm_loop_field_qualify_InterfaceClassVPort_get( 22865 int unit, 22866 bcm_field_entry_t entry, 22867 uint32 * data, 22868 uint32 * mask) 22869 { 22870 return bcm_field_qualify_InterfaceClassVPort_get( 22871 BCM_CONTROL(unit)->unit, 22872 entry, 22873 data, 22874 mask); 22875 } 22876 22877 int 22878 bcm_loop_field_qualify_InterfaceInPorts( 22879 int unit, 22880 bcm_field_entry_t entry, 22881 bcm_pbmp_t data, 22882 bcm_pbmp_t mask) 22883 { 22884 return bcm_field_qualify_InterfaceInPorts( 22885 BCM_CONTROL(unit)->unit, 22886 entry, 22887 data, 22888 mask); 22889 } 22890 22891 int 22892 bcm_loop_field_qualify_InterfaceInPorts_get( 22893 int unit, 22894 bcm_field_entry_t entry, 22895 bcm_pbmp_t * data, 22896 bcm_pbmp_t * mask) 22897 { 22898 return bcm_field_qualify_InterfaceInPorts_get( 22899 BCM_CONTROL(unit)->unit, 22900 entry, 22901 data, 22902 mask); 22903 } 22904 22905 int 22906 bcm_loop_field_qualify_InterfaceIngressKeySelectClassPort( 22907 int unit, 22908 bcm_field_entry_t entry, 22909 uint32 data, 22910 uint32 mask) 22911 { 22912 return bcm_field_qualify_InterfaceIngressKeySelectClassPort( 22913 BCM_CONTROL(unit)->unit, 22914 entry, 22915 data, 22916 mask); 22917 } 22918 22919 int 22920 bcm_loop_field_qualify_InterfaceIngressKeySelectClassPort_get( 22921 int unit, 22922 bcm_field_entry_t entry, 22923 uint32 * data, 22924 uint32 * mask) 22925 { 22926 return bcm_field_qualify_InterfaceIngressKeySelectClassPort_get( 22927 BCM_CONTROL(unit)->unit, 22928 entry, 22929 data, 22930 mask); 22931 } 22932 22933 int 22934 bcm_loop_field_qualify_InterfaceLookupClassPort( 22935 int unit, 22936 bcm_field_entry_t entry, 22937 uint32 data, 22938 uint32 mask) 22939 { 22940 return bcm_field_qualify_InterfaceLookupClassPort( 22941 BCM_CONTROL(unit)->unit, 22942 entry, 22943 data, 22944 mask); 22945 } 22946 22947 int 22948 bcm_loop_field_qualify_InterfaceLookupClassPort_get( 22949 int unit, 22950 bcm_field_entry_t entry, 22951 uint32 * data, 22952 uint32 * mask) 22953 { 22954 return bcm_field_qualify_InterfaceLookupClassPort_get( 22955 BCM_CONTROL(unit)->unit, 22956 entry, 22957 data, 22958 mask); 22959 } 22960 22961 int 22962 bcm_loop_field_qualify_Ip4Length( 22963 int unit, 22964 bcm_field_entry_t entry, 22965 uint16 data, 22966 uint16 mask) 22967 { 22968 return bcm_field_qualify_Ip4Length( 22969 BCM_CONTROL(unit)->unit, 22970 entry, 22971 data, 22972 mask); 22973 } 22974 22975 int 22976 bcm_loop_field_qualify_Ip4Length_get( 22977 int unit, 22978 bcm_field_entry_t entry, 22979 uint16 * data, 22980 uint16 * mask) 22981 { 22982 return bcm_field_qualify_Ip4Length_get( 22983 BCM_CONTROL(unit)->unit, 22984 entry, 22985 data, 22986 mask); 22987 } 22988 22989 int 22990 bcm_loop_field_qualify_Ip6FlowLabel( 22991 int unit, 22992 bcm_field_entry_t entry, 22993 uint32 data, 22994 uint32 mask) 22995 { 22996 return bcm_field_qualify_Ip6FlowLabel( 22997 BCM_CONTROL(unit)->unit, 22998 entry, 22999 data, 23000 mask); 23001 } 23002 23003 int 23004 bcm_loop_field_qualify_Ip6FlowLabel_get( 23005 int unit, 23006 bcm_field_entry_t entry, 23007 uint32 * data, 23008 uint32 * mask) 23009 { 23010 return bcm_field_qualify_Ip6FlowLabel_get( 23011 BCM_CONTROL(unit)->unit, 23012 entry, 23013 data, 23014 mask); 23015 } 23016 23017 int 23018 bcm_loop_field_qualify_Ip6HopLimit( 23019 int unit, 23020 bcm_field_entry_t entry, 23021 uint8 data, 23022 uint8 mask) 23023 { 23024 return bcm_field_qualify_Ip6HopLimit( 23025 BCM_CONTROL(unit)->unit, 23026 entry, 23027 data, 23028 mask); 23029 } 23030 23031 int 23032 bcm_loop_field_qualify_Ip6HopLimit_get( 23033 int unit, 23034 bcm_field_entry_t entry, 23035 uint8 * data, 23036 uint8 * mask) 23037 { 23038 return bcm_field_qualify_Ip6HopLimit_get( 23039 BCM_CONTROL(unit)->unit, 23040 entry, 23041 data, 23042 mask); 23043 } 23044 23045 int 23046 bcm_loop_field_qualify_Ip6Length( 23047 int unit, 23048 bcm_field_entry_t entry, 23049 uint16 data, 23050 uint16 mask) 23051 { 23052 return bcm_field_qualify_Ip6Length( 23053 BCM_CONTROL(unit)->unit, 23054 entry, 23055 data, 23056 mask); 23057 } 23058 23059 int 23060 bcm_loop_field_qualify_Ip6Length_get( 23061 int unit, 23062 bcm_field_entry_t entry, 23063 uint16 * data, 23064 uint16 * mask) 23065 { 23066 return bcm_field_qualify_Ip6Length_get( 23067 BCM_CONTROL(unit)->unit, 23068 entry, 23069 data, 23070 mask); 23071 } 23072 23073 int 23074 bcm_loop_field_qualify_Ip6NextHeader( 23075 int unit, 23076 bcm_field_entry_t entry, 23077 uint8 data, 23078 uint8 mask) 23079 { 23080 return bcm_field_qualify_Ip6NextHeader( 23081 BCM_CONTROL(unit)->unit, 23082 entry, 23083 data, 23084 mask); 23085 } 23086 23087 int 23088 bcm_loop_field_qualify_Ip6NextHeader_get( 23089 int unit, 23090 bcm_field_entry_t entry, 23091 uint8 * data, 23092 uint8 * mask) 23093 { 23094 return bcm_field_qualify_Ip6NextHeader_get( 23095 BCM_CONTROL(unit)->unit, 23096 entry, 23097 data, 23098 mask); 23099 } 23100 23101 int 23102 bcm_loop_field_qualify_Ip6PktHopLimit( 23103 int unit, 23104 bcm_field_entry_t entry, 23105 uint8 data, 23106 uint8 mask) 23107 { 23108 return bcm_field_qualify_Ip6PktHopLimit( 23109 BCM_CONTROL(unit)->unit, 23110 entry, 23111 data, 23112 mask); 23113 } 23114 23115 int 23116 bcm_loop_field_qualify_Ip6PktHopLimit_get( 23117 int unit, 23118 bcm_field_entry_t entry, 23119 uint8 * data, 23120 uint8 * mask) 23121 { 23122 return bcm_field_qualify_Ip6PktHopLimit_get( 23123 BCM_CONTROL(unit)->unit, 23124 entry, 23125 data, 23126 mask); 23127 } 23128 23129 int 23130 bcm_loop_field_qualify_Ip6PktNextHeader( 23131 int unit, 23132 bcm_field_entry_t entry, 23133 uint8 data, 23134 uint8 mask) 23135 { 23136 return bcm_field_qualify_Ip6PktNextHeader( 23137 BCM_CONTROL(unit)->unit, 23138 entry, 23139 data, 23140 mask); 23141 } 23142 23143 int 23144 bcm_loop_field_qualify_Ip6PktNextHeader_get( 23145 int unit, 23146 bcm_field_entry_t entry, 23147 uint8 * data, 23148 uint8 * mask) 23149 { 23150 return bcm_field_qualify_Ip6PktNextHeader_get( 23151 BCM_CONTROL(unit)->unit, 23152 entry, 23153 data, 23154 mask); 23155 } 23156 23157 int 23158 bcm_loop_field_qualify_Ip6PktTrafficClass( 23159 int unit, 23160 bcm_field_entry_t entry, 23161 uint8 data, 23162 uint8 mask) 23163 { 23164 return bcm_field_qualify_Ip6PktTrafficClass( 23165 BCM_CONTROL(unit)->unit, 23166 entry, 23167 data, 23168 mask); 23169 } 23170 23171 int 23172 bcm_loop_field_qualify_Ip6PktTrafficClass_get( 23173 int unit, 23174 bcm_field_entry_t entry, 23175 uint8 * data, 23176 uint8 * mask) 23177 { 23178 return bcm_field_qualify_Ip6PktTrafficClass_get( 23179 BCM_CONTROL(unit)->unit, 23180 entry, 23181 data, 23182 mask); 23183 } 23184 23185 int 23186 bcm_loop_field_qualify_Ip6TrafficClass( 23187 int unit, 23188 bcm_field_entry_t entry, 23189 uint8 data, 23190 uint8 mask) 23191 { 23192 return bcm_field_qualify_Ip6TrafficClass( 23193 BCM_CONTROL(unit)->unit, 23194 entry, 23195 data, 23196 mask); 23197 } 23198 23199 int 23200 bcm_loop_field_qualify_Ip6TrafficClass_get( 23201 int unit, 23202 bcm_field_entry_t entry, 23203 uint8 * data, 23204 uint8 * mask) 23205 { 23206 return bcm_field_qualify_Ip6TrafficClass_get( 23207 BCM_CONTROL(unit)->unit, 23208 entry, 23209 data, 23210 mask); 23211 } 23212 23213 int 23214 bcm_loop_field_qualify_IpAddrsNormalized( 23215 int unit, 23216 bcm_field_entry_t entry, 23217 uint8 data, 23218 uint8 mask) 23219 { 23220 return bcm_field_qualify_IpAddrsNormalized( 23221 BCM_CONTROL(unit)->unit, 23222 entry, 23223 data, 23224 mask); 23225 } 23226 23227 int 23228 bcm_loop_field_qualify_IpAddrsNormalized_get( 23229 int unit, 23230 bcm_field_entry_t entry, 23231 uint8 * data, 23232 uint8 * mask) 23233 { 23234 return bcm_field_qualify_IpAddrsNormalized_get( 23235 BCM_CONTROL(unit)->unit, 23236 entry, 23237 data, 23238 mask); 23239 } 23240 23241 int 23242 bcm_loop_field_qualify_IpChecksumOkPkt( 23243 int unit, 23244 bcm_field_entry_t entry, 23245 uint8 data, 23246 uint8 mask) 23247 { 23248 return bcm_field_qualify_IpChecksumOkPkt( 23249 BCM_CONTROL(unit)->unit, 23250 entry, 23251 data, 23252 mask); 23253 } 23254 23255 int 23256 bcm_loop_field_qualify_IpChecksumOkPkt_get( 23257 int unit, 23258 bcm_field_entry_t entry, 23259 uint8 * data, 23260 uint8 * mask) 23261 { 23262 return bcm_field_qualify_IpChecksumOkPkt_get( 23263 BCM_CONTROL(unit)->unit, 23264 entry, 23265 data, 23266 mask); 23267 } 23268 23269 int 23270 bcm_loop_field_qualify_IpFlags( 23271 int unit, 23272 bcm_field_entry_t entry, 23273 uint8 data, 23274 uint8 mask) 23275 { 23276 return bcm_field_qualify_IpFlags( 23277 BCM_CONTROL(unit)->unit, 23278 entry, 23279 data, 23280 mask); 23281 } 23282 23283 int 23284 bcm_loop_field_qualify_IpFlags_get( 23285 int unit, 23286 bcm_field_entry_t entry, 23287 uint8 * data, 23288 uint8 * mask) 23289 { 23290 return bcm_field_qualify_IpFlags_get( 23291 BCM_CONTROL(unit)->unit, 23292 entry, 23293 data, 23294 mask); 23295 } 23296 23297 int 23298 bcm_loop_field_qualify_IpFrag( 23299 int unit, 23300 bcm_field_entry_t entry, 23301 bcm_field_IpFrag_t frag_info) 23302 { 23303 return bcm_field_qualify_IpFrag( 23304 BCM_CONTROL(unit)->unit, 23305 entry, 23306 frag_info); 23307 } 23308 23309 int 23310 bcm_loop_field_qualify_IpFragNonOrFirst( 23311 int unit, 23312 bcm_field_entry_t entry, 23313 uint8 data, 23314 uint8 mask) 23315 { 23316 return bcm_field_qualify_IpFragNonOrFirst( 23317 BCM_CONTROL(unit)->unit, 23318 entry, 23319 data, 23320 mask); 23321 } 23322 23323 int 23324 bcm_loop_field_qualify_IpFragNonOrFirst_get( 23325 int unit, 23326 bcm_field_entry_t entry, 23327 uint8 * data, 23328 uint8 * mask) 23329 { 23330 return bcm_field_qualify_IpFragNonOrFirst_get( 23331 BCM_CONTROL(unit)->unit, 23332 entry, 23333 data, 23334 mask); 23335 } 23336 23337 int 23338 bcm_loop_field_qualify_IpFragPkt( 23339 int unit, 23340 bcm_field_entry_t entry, 23341 uint8 data, 23342 uint8 mask) 23343 { 23344 return bcm_field_qualify_IpFragPkt( 23345 BCM_CONTROL(unit)->unit, 23346 entry, 23347 data, 23348 mask); 23349 } 23350 23351 int 23352 bcm_loop_field_qualify_IpFragPkt_get( 23353 int unit, 23354 bcm_field_entry_t entry, 23355 uint8 * data, 23356 uint8 * mask) 23357 { 23358 return bcm_field_qualify_IpFragPkt_get( 23359 BCM_CONTROL(unit)->unit, 23360 entry, 23361 data, 23362 mask); 23363 } 23364 23365 int 23366 bcm_loop_field_qualify_IpFrag_get( 23367 int unit, 23368 bcm_field_entry_t entry, 23369 bcm_field_IpFrag_t * frag_info) 23370 { 23371 return bcm_field_qualify_IpFrag_get( 23372 BCM_CONTROL(unit)->unit, 23373 entry, 23374 frag_info); 23375 } 23376 23377 int 23378 bcm_loop_field_qualify_IpIdentifier( 23379 int unit, 23380 bcm_field_entry_t entry, 23381 uint16 data, 23382 uint16 mask) 23383 { 23384 return bcm_field_qualify_IpIdentifier( 23385 BCM_CONTROL(unit)->unit, 23386 entry, 23387 data, 23388 mask); 23389 } 23390 23391 int 23392 bcm_loop_field_qualify_IpIdentifier_get( 23393 int unit, 23394 bcm_field_entry_t entry, 23395 uint16 * data, 23396 uint16 * mask) 23397 { 23398 return bcm_field_qualify_IpIdentifier_get( 23399 BCM_CONTROL(unit)->unit, 23400 entry, 23401 data, 23402 mask); 23403 } 23404 23405 int 23406 bcm_loop_field_qualify_IpInIpPkt( 23407 int unit, 23408 bcm_field_entry_t entry, 23409 uint8 data, 23410 uint8 mask) 23411 { 23412 return bcm_field_qualify_IpInIpPkt( 23413 BCM_CONTROL(unit)->unit, 23414 entry, 23415 data, 23416 mask); 23417 } 23418 23419 int 23420 bcm_loop_field_qualify_IpInIpPkt_get( 23421 int unit, 23422 bcm_field_entry_t entry, 23423 uint8 * data, 23424 uint8 * mask) 23425 { 23426 return bcm_field_qualify_IpInIpPkt_get( 23427 BCM_CONTROL(unit)->unit, 23428 entry, 23429 data, 23430 mask); 23431 } 23432 23433 int 23434 bcm_loop_field_qualify_IpInfo( 23435 int unit, 23436 bcm_field_entry_t entry, 23437 uint32 data, 23438 uint32 mask) 23439 { 23440 return bcm_field_qualify_IpInfo( 23441 BCM_CONTROL(unit)->unit, 23442 entry, 23443 data, 23444 mask); 23445 } 23446 23447 int 23448 bcm_loop_field_qualify_IpInfo_get( 23449 int unit, 23450 bcm_field_entry_t entry, 23451 uint32 * data, 23452 uint32 * mask) 23453 { 23454 return bcm_field_qualify_IpInfo_get( 23455 BCM_CONTROL(unit)->unit, 23456 entry, 23457 data, 23458 mask); 23459 } 23460 23461 int 23462 bcm_loop_field_qualify_IpMulticastCompatible( 23463 int unit, 23464 bcm_field_entry_t entry, 23465 uint32 data, 23466 uint32 mask) 23467 { 23468 return bcm_field_qualify_IpMulticastCompatible( 23469 BCM_CONTROL(unit)->unit, 23470 entry, 23471 data, 23472 mask); 23473 } 23474 23475 int 23476 bcm_loop_field_qualify_IpMulticastCompatible_get( 23477 int unit, 23478 bcm_field_entry_t entry, 23479 uint32 * data, 23480 uint32 * mask) 23481 { 23482 return bcm_field_qualify_IpMulticastCompatible_get( 23483 BCM_CONTROL(unit)->unit, 23484 entry, 23485 data, 23486 mask); 23487 } 23488 23489 int 23490 bcm_loop_field_qualify_IpProtocol( 23491 int unit, 23492 bcm_field_entry_t entry, 23493 uint8 data, 23494 uint8 mask) 23495 { 23496 return bcm_field_qualify_IpProtocol( 23497 BCM_CONTROL(unit)->unit, 23498 entry, 23499 data, 23500 mask); 23501 } 23502 23503 int 23504 bcm_loop_field_qualify_IpProtocolClass( 23505 int unit, 23506 bcm_field_entry_t entry, 23507 bcm_class_t data, 23508 bcm_class_t mask) 23509 { 23510 return bcm_field_qualify_IpProtocolClass( 23511 BCM_CONTROL(unit)->unit, 23512 entry, 23513 data, 23514 mask); 23515 } 23516 23517 int 23518 bcm_loop_field_qualify_IpProtocolClass_get( 23519 int unit, 23520 bcm_field_entry_t entry, 23521 bcm_class_t * data, 23522 bcm_class_t * mask) 23523 { 23524 return bcm_field_qualify_IpProtocolClass_get( 23525 BCM_CONTROL(unit)->unit, 23526 entry, 23527 data, 23528 mask); 23529 } 23530 23531 int 23532 bcm_loop_field_qualify_IpProtocolCommon( 23533 int unit, 23534 bcm_field_entry_t entry, 23535 bcm_field_IpProtocolCommon_t protocol) 23536 { 23537 return bcm_field_qualify_IpProtocolCommon( 23538 BCM_CONTROL(unit)->unit, 23539 entry, 23540 protocol); 23541 } 23542 23543 int 23544 bcm_loop_field_qualify_IpProtocolCommon_get( 23545 int unit, 23546 bcm_field_entry_t entry, 23547 bcm_field_IpProtocolCommon_t * protocol) 23548 { 23549 return bcm_field_qualify_IpProtocolCommon_get( 23550 BCM_CONTROL(unit)->unit, 23551 entry, 23552 protocol); 23553 } 23554 23555 int 23556 bcm_loop_field_qualify_IpProtocol_get( 23557 int unit, 23558 bcm_field_entry_t entry, 23559 uint8 * data, 23560 uint8 * mask) 23561 { 23562 return bcm_field_qualify_IpProtocol_get( 23563 BCM_CONTROL(unit)->unit, 23564 entry, 23565 data, 23566 mask); 23567 } 23568 23569 int 23570 bcm_loop_field_qualify_IpTtlZeroPkt( 23571 int unit, 23572 bcm_field_entry_t entry, 23573 uint8 data, 23574 uint8 mask) 23575 { 23576 return bcm_field_qualify_IpTtlZeroPkt( 23577 BCM_CONTROL(unit)->unit, 23578 entry, 23579 data, 23580 mask); 23581 } 23582 23583 int 23584 bcm_loop_field_qualify_IpTtlZeroPkt_get( 23585 int unit, 23586 bcm_field_entry_t entry, 23587 uint8 * data, 23588 uint8 * mask) 23589 { 23590 return bcm_field_qualify_IpTtlZeroPkt_get( 23591 BCM_CONTROL(unit)->unit, 23592 entry, 23593 data, 23594 mask); 23595 } 23596 23597 int 23598 bcm_loop_field_qualify_IpTunnelHit( 23599 int unit, 23600 bcm_field_entry_t entry, 23601 uint8 data, 23602 uint8 mask) 23603 { 23604 return bcm_field_qualify_IpTunnelHit( 23605 BCM_CONTROL(unit)->unit, 23606 entry, 23607 data, 23608 mask); 23609 } 23610 23611 int 23612 bcm_loop_field_qualify_IpTunnelHit_get( 23613 int unit, 23614 bcm_field_entry_t entry, 23615 uint8 * data, 23616 uint8 * mask) 23617 { 23618 return bcm_field_qualify_IpTunnelHit_get( 23619 BCM_CONTROL(unit)->unit, 23620 entry, 23621 data, 23622 mask); 23623 } 23624 23625 int 23626 bcm_loop_field_qualify_IpTunnelTtl( 23627 int unit, 23628 bcm_field_entry_t entry, 23629 uint8 data, 23630 uint8 mask) 23631 { 23632 return bcm_field_qualify_IpTunnelTtl( 23633 BCM_CONTROL(unit)->unit, 23634 entry, 23635 data, 23636 mask); 23637 } 23638 23639 int 23640 bcm_loop_field_qualify_IpTunnelTtlClassZero( 23641 int unit, 23642 bcm_field_entry_t entry, 23643 bcm_class_t data, 23644 bcm_class_t mask) 23645 { 23646 return bcm_field_qualify_IpTunnelTtlClassZero( 23647 BCM_CONTROL(unit)->unit, 23648 entry, 23649 data, 23650 mask); 23651 } 23652 23653 int 23654 bcm_loop_field_qualify_IpTunnelTtlClassZero_get( 23655 int unit, 23656 bcm_field_entry_t entry, 23657 bcm_class_t * data, 23658 bcm_class_t * mask) 23659 { 23660 return bcm_field_qualify_IpTunnelTtlClassZero_get( 23661 BCM_CONTROL(unit)->unit, 23662 entry, 23663 data, 23664 mask); 23665 } 23666 23667 int 23668 bcm_loop_field_qualify_IpTunnelTtl_get( 23669 int unit, 23670 bcm_field_entry_t entry, 23671 uint8 * data, 23672 uint8 * mask) 23673 { 23674 return bcm_field_qualify_IpTunnelTtl_get( 23675 BCM_CONTROL(unit)->unit, 23676 entry, 23677 data, 23678 mask); 23679 } 23680 23681 int 23682 bcm_loop_field_qualify_IpTunnelValue( 23683 int unit, 23684 bcm_field_entry_t entry, 23685 uint64 data, 23686 uint64 mask) 23687 { 23688 return bcm_field_qualify_IpTunnelValue( 23689 BCM_CONTROL(unit)->unit, 23690 entry, 23691 data, 23692 mask); 23693 } 23694 23695 int 23696 bcm_loop_field_qualify_IpTunnelValue_get( 23697 int unit, 23698 bcm_field_entry_t entry, 23699 uint64 * data, 23700 uint64 * mask) 23701 { 23702 return bcm_field_qualify_IpTunnelValue_get( 23703 BCM_CONTROL(unit)->unit, 23704 entry, 23705 data, 23706 mask); 23707 } 23708 23709 int 23710 bcm_loop_field_qualify_IpType( 23711 int unit, 23712 bcm_field_entry_t entry, 23713 bcm_field_IpType_t type) 23714 { 23715 return bcm_field_qualify_IpType( 23716 BCM_CONTROL(unit)->unit, 23717 entry, 23718 type); 23719 } 23720 23721 int 23722 bcm_loop_field_qualify_IpType_get( 23723 int unit, 23724 bcm_field_entry_t entry, 23725 bcm_field_IpType_t * type) 23726 { 23727 return bcm_field_qualify_IpType_get( 23728 BCM_CONTROL(unit)->unit, 23729 entry, 23730 type); 23731 } 23732 23733 int 23734 bcm_loop_field_qualify_IpmcHit( 23735 int unit, 23736 bcm_field_entry_t entry, 23737 uint8 data, 23738 uint8 mask) 23739 { 23740 return bcm_field_qualify_IpmcHit( 23741 BCM_CONTROL(unit)->unit, 23742 entry, 23743 data, 23744 mask); 23745 } 23746 23747 int 23748 bcm_loop_field_qualify_IpmcHit_get( 23749 int unit, 23750 bcm_field_entry_t entry, 23751 uint8 * data, 23752 uint8 * mask) 23753 { 23754 return bcm_field_qualify_IpmcHit_get( 23755 BCM_CONTROL(unit)->unit, 23756 entry, 23757 data, 23758 mask); 23759 } 23760 23761 int 23762 bcm_loop_field_qualify_IpmcStarGroupHit( 23763 int unit, 23764 bcm_field_entry_t entry, 23765 uint8 data, 23766 uint8 mask) 23767 { 23768 return bcm_field_qualify_IpmcStarGroupHit( 23769 BCM_CONTROL(unit)->unit, 23770 entry, 23771 data, 23772 mask); 23773 } 23774 23775 int 23776 bcm_loop_field_qualify_IpmcStarGroupHit_get( 23777 int unit, 23778 bcm_field_entry_t entry, 23779 uint8 * data, 23780 uint8 * mask) 23781 { 23782 return bcm_field_qualify_IpmcStarGroupHit_get( 23783 BCM_CONTROL(unit)->unit, 23784 entry, 23785 data, 23786 mask); 23787 } 23788 23789 int 23790 bcm_loop_field_qualify_IpmcStarGroupValue( 23791 int unit, 23792 bcm_field_entry_t entry, 23793 uint64 data, 23794 uint64 mask) 23795 { 23796 return bcm_field_qualify_IpmcStarGroupValue( 23797 BCM_CONTROL(unit)->unit, 23798 entry, 23799 data, 23800 mask); 23801 } 23802 23803 int 23804 bcm_loop_field_qualify_IpmcStarGroupValue_get( 23805 int unit, 23806 bcm_field_entry_t entry, 23807 uint64 * data, 23808 uint64 * mask) 23809 { 23810 return bcm_field_qualify_IpmcStarGroupValue_get( 23811 BCM_CONTROL(unit)->unit, 23812 entry, 23813 data, 23814 mask); 23815 } 23816 23817 int 23818 bcm_loop_field_qualify_IpmcV4Pkt( 23819 int unit, 23820 bcm_field_entry_t entry, 23821 uint8 data, 23822 uint8 mask) 23823 { 23824 return bcm_field_qualify_IpmcV4Pkt( 23825 BCM_CONTROL(unit)->unit, 23826 entry, 23827 data, 23828 mask); 23829 } 23830 23831 int 23832 bcm_loop_field_qualify_IpmcV4Pkt_get( 23833 int unit, 23834 bcm_field_entry_t entry, 23835 uint8 * data, 23836 uint8 * mask) 23837 { 23838 return bcm_field_qualify_IpmcV4Pkt_get( 23839 BCM_CONTROL(unit)->unit, 23840 entry, 23841 data, 23842 mask); 23843 } 23844 23845 int 23846 bcm_loop_field_qualify_IpmcV6Pkt( 23847 int unit, 23848 bcm_field_entry_t entry, 23849 uint8 data, 23850 uint8 mask) 23851 { 23852 return bcm_field_qualify_IpmcV6Pkt( 23853 BCM_CONTROL(unit)->unit, 23854 entry, 23855 data, 23856 mask); 23857 } 23858 23859 int 23860 bcm_loop_field_qualify_IpmcV6Pkt_get( 23861 int unit, 23862 bcm_field_entry_t entry, 23863 uint8 * data, 23864 uint8 * mask) 23865 { 23866 return bcm_field_qualify_IpmcV6Pkt_get( 23867 BCM_CONTROL(unit)->unit, 23868 entry, 23869 data, 23870 mask); 23871 } 23872 23873 int 23874 bcm_loop_field_qualify_IpmcValue( 23875 int unit, 23876 bcm_field_entry_t entry, 23877 uint64 data, 23878 uint64 mask) 23879 { 23880 return bcm_field_qualify_IpmcValue( 23881 BCM_CONTROL(unit)->unit, 23882 entry, 23883 data, 23884 mask); 23885 } 23886 23887 int 23888 bcm_loop_field_qualify_IpmcValue_get( 23889 int unit, 23890 bcm_field_entry_t entry, 23891 uint64 * data, 23892 uint64 * mask) 23893 { 23894 return bcm_field_qualify_IpmcValue_get( 23895 BCM_CONTROL(unit)->unit, 23896 entry, 23897 data, 23898 mask); 23899 } 23900 23901 int 23902 bcm_loop_field_qualify_Ipv4OptionHdrType( 23903 int unit, 23904 bcm_field_entry_t entry, 23905 bcm_field_ip_option_hdr_type_t type) 23906 { 23907 return bcm_field_qualify_Ipv4OptionHdrType( 23908 BCM_CONTROL(unit)->unit, 23909 entry, 23910 type); 23911 } 23912 23913 int 23914 bcm_loop_field_qualify_Ipv4OptionHdrType_get( 23915 int unit, 23916 bcm_field_entry_t entry, 23917 bcm_field_ip_option_hdr_type_t * type) 23918 { 23919 return bcm_field_qualify_Ipv4OptionHdrType_get( 23920 BCM_CONTROL(unit)->unit, 23921 entry, 23922 type); 23923 } 23924 23925 int 23926 bcm_loop_field_qualify_Ipv6ExtensionHdrType( 23927 int unit, 23928 bcm_field_entry_t entry, 23929 bcm_field_ip_option_hdr_type_t type) 23930 { 23931 return bcm_field_qualify_Ipv6ExtensionHdrType( 23932 BCM_CONTROL(unit)->unit, 23933 entry, 23934 type); 23935 } 23936 23937 int 23938 bcm_loop_field_qualify_Ipv6ExtensionHdrType_get( 23939 int unit, 23940 bcm_field_entry_t entry, 23941 bcm_field_ip_option_hdr_type_t * type) 23942 { 23943 return bcm_field_qualify_Ipv6ExtensionHdrType_get( 23944 BCM_CONTROL(unit)->unit, 23945 entry, 23946 type); 23947 } 23948 23949 int 23950 bcm_loop_field_qualify_IsEqualValue( 23951 int unit, 23952 bcm_field_entry_t entry, 23953 uint8 data, 23954 uint8 mask) 23955 { 23956 return bcm_field_qualify_IsEqualValue( 23957 BCM_CONTROL(unit)->unit, 23958 entry, 23959 data, 23960 mask); 23961 } 23962 23963 int 23964 bcm_loop_field_qualify_IsEqualValue_get( 23965 int unit, 23966 bcm_field_entry_t entry, 23967 uint8 * data, 23968 uint8 * mask) 23969 { 23970 return bcm_field_qualify_IsEqualValue_get( 23971 BCM_CONTROL(unit)->unit, 23972 entry, 23973 data, 23974 mask); 23975 } 23976 23977 int 23978 bcm_loop_field_qualify_KeyGenVar( 23979 int unit, 23980 bcm_field_entry_t entry, 23981 uint32 data, 23982 uint32 mask) 23983 { 23984 return bcm_field_qualify_KeyGenVar( 23985 BCM_CONTROL(unit)->unit, 23986 entry, 23987 data, 23988 mask); 23989 } 23990 23991 int 23992 bcm_loop_field_qualify_L2CacheHit( 23993 int unit, 23994 bcm_field_entry_t entry, 23995 uint8 data, 23996 uint8 mask) 23997 { 23998 return bcm_field_qualify_L2CacheHit( 23999 BCM_CONTROL(unit)->unit, 24000 entry, 24001 data, 24002 mask); 24003 } 24004 24005 int 24006 bcm_loop_field_qualify_L2CacheHit_get( 24007 int unit, 24008 bcm_field_entry_t entry, 24009 uint8 * data, 24010 uint8 * mask) 24011 { 24012 return bcm_field_qualify_L2CacheHit_get( 24013 BCM_CONTROL(unit)->unit, 24014 entry, 24015 data, 24016 mask); 24017 } 24018 24019 int 24020 bcm_loop_field_qualify_L2DestHit( 24021 int unit, 24022 bcm_field_entry_t entry, 24023 uint8 data, 24024 uint8 mask) 24025 { 24026 return bcm_field_qualify_L2DestHit( 24027 BCM_CONTROL(unit)->unit, 24028 entry, 24029 data, 24030 mask); 24031 } 24032 24033 int 24034 bcm_loop_field_qualify_L2DestHit_get( 24035 int unit, 24036 bcm_field_entry_t entry, 24037 uint8 * data, 24038 uint8 * mask) 24039 { 24040 return bcm_field_qualify_L2DestHit_get( 24041 BCM_CONTROL(unit)->unit, 24042 entry, 24043 data, 24044 mask); 24045 } 24046 24047 int 24048 bcm_loop_field_qualify_L2DestSRNodeType( 24049 int unit, 24050 bcm_field_entry_t entry, 24051 bcm_field_sr_node_type_t type) 24052 { 24053 return bcm_field_qualify_L2DestSRNodeType( 24054 BCM_CONTROL(unit)->unit, 24055 entry, 24056 type); 24057 } 24058 24059 int 24060 bcm_loop_field_qualify_L2DestSRNodeType_get( 24061 int unit, 24062 bcm_field_entry_t entry, 24063 bcm_field_sr_node_type_t * type) 24064 { 24065 return bcm_field_qualify_L2DestSRNodeType_get( 24066 BCM_CONTROL(unit)->unit, 24067 entry, 24068 type); 24069 } 24070 24071 int 24072 bcm_loop_field_qualify_L2DestValue( 24073 int unit, 24074 bcm_field_entry_t entry, 24075 uint64 data, 24076 uint64 mask) 24077 { 24078 return bcm_field_qualify_L2DestValue( 24079 BCM_CONTROL(unit)->unit, 24080 entry, 24081 data, 24082 mask); 24083 } 24084 24085 int 24086 bcm_loop_field_qualify_L2DestValue_get( 24087 int unit, 24088 bcm_field_entry_t entry, 24089 uint64 * data, 24090 uint64 * mask) 24091 { 24092 return bcm_field_qualify_L2DestValue_get( 24093 BCM_CONTROL(unit)->unit, 24094 entry, 24095 data, 24096 mask); 24097 } 24098 24099 int 24100 bcm_loop_field_qualify_L2DstMulticastHit( 24101 int unit, 24102 bcm_field_entry_t entry, 24103 uint8 data, 24104 uint8 mask) 24105 { 24106 return bcm_field_qualify_L2DstMulticastHit( 24107 BCM_CONTROL(unit)->unit, 24108 entry, 24109 data, 24110 mask); 24111 } 24112 24113 int 24114 bcm_loop_field_qualify_L2DstMulticastHit_get( 24115 int unit, 24116 bcm_field_entry_t entry, 24117 uint8 * data, 24118 uint8 * mask) 24119 { 24120 return bcm_field_qualify_L2DstMulticastHit_get( 24121 BCM_CONTROL(unit)->unit, 24122 entry, 24123 data, 24124 mask); 24125 } 24126 24127 int 24128 bcm_loop_field_qualify_L2Format( 24129 int unit, 24130 bcm_field_entry_t entry, 24131 bcm_field_L2Format_t type) 24132 { 24133 return bcm_field_qualify_L2Format( 24134 BCM_CONTROL(unit)->unit, 24135 entry, 24136 type); 24137 } 24138 24139 int 24140 bcm_loop_field_qualify_L2Format_get( 24141 int unit, 24142 bcm_field_entry_t entry, 24143 bcm_field_L2Format_t * type) 24144 { 24145 return bcm_field_qualify_L2Format_get( 24146 BCM_CONTROL(unit)->unit, 24147 entry, 24148 type); 24149 } 24150 24151 int 24152 bcm_loop_field_qualify_L2GreFlowId( 24153 int unit, 24154 bcm_field_entry_t entry, 24155 uint8 data, 24156 uint8 mask) 24157 { 24158 return bcm_field_qualify_L2GreFlowId( 24159 BCM_CONTROL(unit)->unit, 24160 entry, 24161 data, 24162 mask); 24163 } 24164 24165 int 24166 bcm_loop_field_qualify_L2GreFlowId_get( 24167 int unit, 24168 bcm_field_entry_t entry, 24169 uint8 * data, 24170 uint8 * mask) 24171 { 24172 return bcm_field_qualify_L2GreFlowId_get( 24173 BCM_CONTROL(unit)->unit, 24174 entry, 24175 data, 24176 mask); 24177 } 24178 24179 int 24180 bcm_loop_field_qualify_L2GreProtocolType( 24181 int unit, 24182 bcm_field_entry_t entry, 24183 uint16 data, 24184 uint16 mask) 24185 { 24186 return bcm_field_qualify_L2GreProtocolType( 24187 BCM_CONTROL(unit)->unit, 24188 entry, 24189 data, 24190 mask); 24191 } 24192 24193 int 24194 bcm_loop_field_qualify_L2GreProtocolType_get( 24195 int unit, 24196 bcm_field_entry_t entry, 24197 uint16 * data, 24198 uint16 * mask) 24199 { 24200 return bcm_field_qualify_L2GreProtocolType_get( 24201 BCM_CONTROL(unit)->unit, 24202 entry, 24203 data, 24204 mask); 24205 } 24206 24207 int 24208 bcm_loop_field_qualify_L2GreSrcIpHit( 24209 int unit, 24210 bcm_field_entry_t entry, 24211 uint8 data, 24212 uint8 mask) 24213 { 24214 return bcm_field_qualify_L2GreSrcIpHit( 24215 BCM_CONTROL(unit)->unit, 24216 entry, 24217 data, 24218 mask); 24219 } 24220 24221 int 24222 bcm_loop_field_qualify_L2GreSrcIpHit_get( 24223 int unit, 24224 bcm_field_entry_t entry, 24225 uint8 * data, 24226 uint8 * mask) 24227 { 24228 return bcm_field_qualify_L2GreSrcIpHit_get( 24229 BCM_CONTROL(unit)->unit, 24230 entry, 24231 data, 24232 mask); 24233 } 24234 24235 int 24236 bcm_loop_field_qualify_L2GreVfiHit( 24237 int unit, 24238 bcm_field_entry_t entry, 24239 uint8 data, 24240 uint8 mask) 24241 { 24242 return bcm_field_qualify_L2GreVfiHit( 24243 BCM_CONTROL(unit)->unit, 24244 entry, 24245 data, 24246 mask); 24247 } 24248 24249 int 24250 bcm_loop_field_qualify_L2GreVfiHit_get( 24251 int unit, 24252 bcm_field_entry_t entry, 24253 uint8 * data, 24254 uint8 * mask) 24255 { 24256 return bcm_field_qualify_L2GreVfiHit_get( 24257 BCM_CONTROL(unit)->unit, 24258 entry, 24259 data, 24260 mask); 24261 } 24262 24263 int 24264 bcm_loop_field_qualify_L2GreVsid( 24265 int unit, 24266 bcm_field_entry_t entry, 24267 uint32 data, 24268 uint32 mask) 24269 { 24270 return bcm_field_qualify_L2GreVsid( 24271 BCM_CONTROL(unit)->unit, 24272 entry, 24273 data, 24274 mask); 24275 } 24276 24277 int 24278 bcm_loop_field_qualify_L2GreVsid_get( 24279 int unit, 24280 bcm_field_entry_t entry, 24281 uint32 * data, 24282 uint32 * mask) 24283 { 24284 return bcm_field_qualify_L2GreVsid_get( 24285 BCM_CONTROL(unit)->unit, 24286 entry, 24287 data, 24288 mask); 24289 } 24290 24291 int 24292 bcm_loop_field_qualify_L2Learn( 24293 int unit, 24294 bcm_field_entry_t entry, 24295 uint8 data, 24296 uint8 mask) 24297 { 24298 return bcm_field_qualify_L2Learn( 24299 BCM_CONTROL(unit)->unit, 24300 entry, 24301 data, 24302 mask); 24303 } 24304 24305 int 24306 bcm_loop_field_qualify_L2Learn_get( 24307 int unit, 24308 bcm_field_entry_t entry, 24309 uint8 * data, 24310 uint8 * mask) 24311 { 24312 return bcm_field_qualify_L2Learn_get( 24313 BCM_CONTROL(unit)->unit, 24314 entry, 24315 data, 24316 mask); 24317 } 24318 24319 int 24320 bcm_loop_field_qualify_L2PayLoad( 24321 int unit, 24322 bcm_field_entry_t entry, 24323 uint32 length, 24324 const uint8 * data, 24325 const uint8 * mask) 24326 { 24327 return bcm_field_qualify_L2PayLoad( 24328 BCM_CONTROL(unit)->unit, 24329 entry, 24330 length, 24331 data, 24332 mask); 24333 } 24334 24335 int 24336 bcm_loop_field_qualify_L2PayLoad_get( 24337 int unit, 24338 bcm_field_entry_t entry, 24339 uint32 length, 24340 uint8 * data, 24341 uint8 * mask) 24342 { 24343 return bcm_field_qualify_L2PayLoad_get( 24344 BCM_CONTROL(unit)->unit, 24345 entry, 24346 length, 24347 data, 24348 mask); 24349 } 24350 24351 int 24352 bcm_loop_field_qualify_L2PayloadFirstEightBytes( 24353 int unit, 24354 bcm_field_entry_t entry, 24355 uint32 data1, 24356 uint32 data2, 24357 uint32 mask1, 24358 uint32 mask2) 24359 { 24360 return bcm_field_qualify_L2PayloadFirstEightBytes( 24361 BCM_CONTROL(unit)->unit, 24362 entry, 24363 data1, 24364 data2, 24365 mask1, 24366 mask2); 24367 } 24368 24369 int 24370 bcm_loop_field_qualify_L2PayloadFirstEightBytes_get( 24371 int unit, 24372 bcm_field_entry_t entry, 24373 uint32 * data1, 24374 uint32 * data2, 24375 uint32 * mask1, 24376 uint32 * mask2) 24377 { 24378 return bcm_field_qualify_L2PayloadFirstEightBytes_get( 24379 BCM_CONTROL(unit)->unit, 24380 entry, 24381 data1, 24382 data2, 24383 mask1, 24384 mask2); 24385 } 24386 24387 int 24388 bcm_loop_field_qualify_L2PktType( 24389 int unit, 24390 bcm_field_entry_t entry, 24391 bcm_field_l2_pkt_type_t type) 24392 { 24393 return bcm_field_qualify_L2PktType( 24394 BCM_CONTROL(unit)->unit, 24395 entry, 24396 type); 24397 } 24398 24399 int 24400 bcm_loop_field_qualify_L2PktType_get( 24401 int unit, 24402 bcm_field_entry_t entry, 24403 bcm_field_l2_pkt_type_t * type) 24404 { 24405 return bcm_field_qualify_L2PktType_get( 24406 BCM_CONTROL(unit)->unit, 24407 entry, 24408 type); 24409 } 24410 24411 int 24412 bcm_loop_field_qualify_L2SrcHit( 24413 int unit, 24414 bcm_field_entry_t entry, 24415 uint8 data, 24416 uint8 mask) 24417 { 24418 return bcm_field_qualify_L2SrcHit( 24419 BCM_CONTROL(unit)->unit, 24420 entry, 24421 data, 24422 mask); 24423 } 24424 24425 int 24426 bcm_loop_field_qualify_L2SrcHit_get( 24427 int unit, 24428 bcm_field_entry_t entry, 24429 uint8 * data, 24430 uint8 * mask) 24431 { 24432 return bcm_field_qualify_L2SrcHit_get( 24433 BCM_CONTROL(unit)->unit, 24434 entry, 24435 data, 24436 mask); 24437 } 24438 24439 int 24440 bcm_loop_field_qualify_L2SrcMulticastHit( 24441 int unit, 24442 bcm_field_entry_t entry, 24443 uint8 data, 24444 uint8 mask) 24445 { 24446 return bcm_field_qualify_L2SrcMulticastHit( 24447 BCM_CONTROL(unit)->unit, 24448 entry, 24449 data, 24450 mask); 24451 } 24452 24453 int 24454 bcm_loop_field_qualify_L2SrcMulticastHit_get( 24455 int unit, 24456 bcm_field_entry_t entry, 24457 uint8 * data, 24458 uint8 * mask) 24459 { 24460 return bcm_field_qualify_L2SrcMulticastHit_get( 24461 BCM_CONTROL(unit)->unit, 24462 entry, 24463 data, 24464 mask); 24465 } 24466 24467 int 24468 bcm_loop_field_qualify_L2SrcStatic( 24469 int unit, 24470 bcm_field_entry_t entry, 24471 uint8 data, 24472 uint8 mask) 24473 { 24474 return bcm_field_qualify_L2SrcStatic( 24475 BCM_CONTROL(unit)->unit, 24476 entry, 24477 data, 24478 mask); 24479 } 24480 24481 int 24482 bcm_loop_field_qualify_L2SrcStatic_get( 24483 int unit, 24484 bcm_field_entry_t entry, 24485 uint8 * data, 24486 uint8 * mask) 24487 { 24488 return bcm_field_qualify_L2SrcStatic_get( 24489 BCM_CONTROL(unit)->unit, 24490 entry, 24491 data, 24492 mask); 24493 } 24494 24495 int 24496 bcm_loop_field_qualify_L2SrcValue( 24497 int unit, 24498 bcm_field_entry_t entry, 24499 uint64 data, 24500 uint64 mask) 24501 { 24502 return bcm_field_qualify_L2SrcValue( 24503 BCM_CONTROL(unit)->unit, 24504 entry, 24505 data, 24506 mask); 24507 } 24508 24509 int 24510 bcm_loop_field_qualify_L2SrcValue_get( 24511 int unit, 24512 bcm_field_entry_t entry, 24513 uint64 * data, 24514 uint64 * mask) 24515 { 24516 return bcm_field_qualify_L2SrcValue_get( 24517 BCM_CONTROL(unit)->unit, 24518 entry, 24519 data, 24520 mask); 24521 } 24522 24523 int 24524 bcm_loop_field_qualify_L2StationMove( 24525 int unit, 24526 bcm_field_entry_t entry, 24527 uint8 data, 24528 uint8 mask) 24529 { 24530 return bcm_field_qualify_L2StationMove( 24531 BCM_CONTROL(unit)->unit, 24532 entry, 24533 data, 24534 mask); 24535 } 24536 24537 int 24538 bcm_loop_field_qualify_L2StationMove_get( 24539 int unit, 24540 bcm_field_entry_t entry, 24541 uint8 * data, 24542 uint8 * mask) 24543 { 24544 return bcm_field_qualify_L2StationMove_get( 24545 BCM_CONTROL(unit)->unit, 24546 entry, 24547 data, 24548 mask); 24549 } 24550 24551 int 24552 bcm_loop_field_qualify_L3DestHostHit( 24553 int unit, 24554 bcm_field_entry_t entry, 24555 uint8 data, 24556 uint8 mask) 24557 { 24558 return bcm_field_qualify_L3DestHostHit( 24559 BCM_CONTROL(unit)->unit, 24560 entry, 24561 data, 24562 mask); 24563 } 24564 24565 int 24566 bcm_loop_field_qualify_L3DestHostHit_get( 24567 int unit, 24568 bcm_field_entry_t entry, 24569 uint8 * data, 24570 uint8 * mask) 24571 { 24572 return bcm_field_qualify_L3DestHostHit_get( 24573 BCM_CONTROL(unit)->unit, 24574 entry, 24575 data, 24576 mask); 24577 } 24578 24579 int 24580 bcm_loop_field_qualify_L3DestRouteHit( 24581 int unit, 24582 bcm_field_entry_t entry, 24583 uint8 data, 24584 uint8 mask) 24585 { 24586 return bcm_field_qualify_L3DestRouteHit( 24587 BCM_CONTROL(unit)->unit, 24588 entry, 24589 data, 24590 mask); 24591 } 24592 24593 int 24594 bcm_loop_field_qualify_L3DestRouteHit_get( 24595 int unit, 24596 bcm_field_entry_t entry, 24597 uint8 * data, 24598 uint8 * mask) 24599 { 24600 return bcm_field_qualify_L3DestRouteHit_get( 24601 BCM_CONTROL(unit)->unit, 24602 entry, 24603 data, 24604 mask); 24605 } 24606 24607 int 24608 bcm_loop_field_qualify_L3DestRouteValue( 24609 int unit, 24610 bcm_field_entry_t entry, 24611 uint64 data, 24612 uint64 mask) 24613 { 24614 return bcm_field_qualify_L3DestRouteValue( 24615 BCM_CONTROL(unit)->unit, 24616 entry, 24617 data, 24618 mask); 24619 } 24620 24621 int 24622 bcm_loop_field_qualify_L3DestRouteValue_get( 24623 int unit, 24624 bcm_field_entry_t entry, 24625 uint64 * data, 24626 uint64 * mask) 24627 { 24628 return bcm_field_qualify_L3DestRouteValue_get( 24629 BCM_CONTROL(unit)->unit, 24630 entry, 24631 data, 24632 mask); 24633 } 24634 24635 int 24636 bcm_loop_field_qualify_L3Ingress( 24637 int unit, 24638 bcm_field_entry_t entry, 24639 uint32 intf_id, 24640 uint32 mask) 24641 { 24642 return bcm_field_qualify_L3Ingress( 24643 BCM_CONTROL(unit)->unit, 24644 entry, 24645 intf_id, 24646 mask); 24647 } 24648 24649 int 24650 bcm_loop_field_qualify_L3Ingress_get( 24651 int unit, 24652 bcm_field_entry_t entry, 24653 uint32 * data, 24654 uint32 * mask) 24655 { 24656 return bcm_field_qualify_L3Ingress_get( 24657 BCM_CONTROL(unit)->unit, 24658 entry, 24659 data, 24660 mask); 24661 } 24662 24663 int 24664 bcm_loop_field_qualify_L3Routable( 24665 int unit, 24666 bcm_field_entry_t entry, 24667 uint8 data, 24668 uint8 mask) 24669 { 24670 return bcm_field_qualify_L3Routable( 24671 BCM_CONTROL(unit)->unit, 24672 entry, 24673 data, 24674 mask); 24675 } 24676 24677 int 24678 bcm_loop_field_qualify_L3Routable_get( 24679 int unit, 24680 bcm_field_entry_t entry, 24681 uint8 * data, 24682 uint8 * mask) 24683 { 24684 return bcm_field_qualify_L3Routable_get( 24685 BCM_CONTROL(unit)->unit, 24686 entry, 24687 data, 24688 mask); 24689 } 24690 24691 int 24692 bcm_loop_field_qualify_L3SrcBind( 24693 int unit, 24694 bcm_field_entry_t entry, 24695 uint8 data, 24696 uint8 mask) 24697 { 24698 return bcm_field_qualify_L3SrcBind( 24699 BCM_CONTROL(unit)->unit, 24700 entry, 24701 data, 24702 mask); 24703 } 24704 24705 int 24706 bcm_loop_field_qualify_L3SrcBind_get( 24707 int unit, 24708 bcm_field_entry_t entry, 24709 uint8 * data, 24710 uint8 * mask) 24711 { 24712 return bcm_field_qualify_L3SrcBind_get( 24713 BCM_CONTROL(unit)->unit, 24714 entry, 24715 data, 24716 mask); 24717 } 24718 24719 int 24720 bcm_loop_field_qualify_L3SrcHostHit( 24721 int unit, 24722 bcm_field_entry_t entry, 24723 uint8 data, 24724 uint8 mask) 24725 { 24726 return bcm_field_qualify_L3SrcHostHit( 24727 BCM_CONTROL(unit)->unit, 24728 entry, 24729 data, 24730 mask); 24731 } 24732 24733 int 24734 bcm_loop_field_qualify_L3SrcHostHit_get( 24735 int unit, 24736 bcm_field_entry_t entry, 24737 uint8 * data, 24738 uint8 * mask) 24739 { 24740 return bcm_field_qualify_L3SrcHostHit_get( 24741 BCM_CONTROL(unit)->unit, 24742 entry, 24743 data, 24744 mask); 24745 } 24746 24747 int 24748 bcm_loop_field_qualify_L3SrcRouteHit( 24749 int unit, 24750 bcm_field_entry_t entry, 24751 uint8 data, 24752 uint8 mask) 24753 { 24754 return bcm_field_qualify_L3SrcRouteHit( 24755 BCM_CONTROL(unit)->unit, 24756 entry, 24757 data, 24758 mask); 24759 } 24760 24761 int 24762 bcm_loop_field_qualify_L3SrcRouteHit_get( 24763 int unit, 24764 bcm_field_entry_t entry, 24765 uint8 * data, 24766 uint8 * mask) 24767 { 24768 return bcm_field_qualify_L3SrcRouteHit_get( 24769 BCM_CONTROL(unit)->unit, 24770 entry, 24771 data, 24772 mask); 24773 } 24774 24775 int 24776 bcm_loop_field_qualify_L3SrcRouteValue( 24777 int unit, 24778 bcm_field_entry_t entry, 24779 uint64 data, 24780 uint64 mask) 24781 { 24782 return bcm_field_qualify_L3SrcRouteValue( 24783 BCM_CONTROL(unit)->unit, 24784 entry, 24785 data, 24786 mask); 24787 } 24788 24789 int 24790 bcm_loop_field_qualify_L3SrcRouteValue_get( 24791 int unit, 24792 bcm_field_entry_t entry, 24793 uint64 * data, 24794 uint64 * mask) 24795 { 24796 return bcm_field_qualify_L3SrcRouteValue_get( 24797 BCM_CONTROL(unit)->unit, 24798 entry, 24799 data, 24800 mask); 24801 } 24802 24803 int 24804 bcm_loop_field_qualify_L4DstPort( 24805 int unit, 24806 bcm_field_entry_t entry, 24807 bcm_l4_port_t data, 24808 bcm_l4_port_t mask) 24809 { 24810 return bcm_field_qualify_L4DstPort( 24811 BCM_CONTROL(unit)->unit, 24812 entry, 24813 data, 24814 mask); 24815 } 24816 24817 int 24818 bcm_loop_field_qualify_L4DstPortClass( 24819 int unit, 24820 bcm_field_entry_t entry, 24821 bcm_class_t data, 24822 bcm_class_t mask) 24823 { 24824 return bcm_field_qualify_L4DstPortClass( 24825 BCM_CONTROL(unit)->unit, 24826 entry, 24827 data, 24828 mask); 24829 } 24830 24831 int 24832 bcm_loop_field_qualify_L4DstPortClass_get( 24833 int unit, 24834 bcm_field_entry_t entry, 24835 bcm_class_t * data, 24836 bcm_class_t * mask) 24837 { 24838 return bcm_field_qualify_L4DstPortClass_get( 24839 BCM_CONTROL(unit)->unit, 24840 entry, 24841 data, 24842 mask); 24843 } 24844 24845 int 24846 bcm_loop_field_qualify_L4DstPort_get( 24847 int unit, 24848 bcm_field_entry_t entry, 24849 bcm_l4_port_t * data, 24850 bcm_l4_port_t * mask) 24851 { 24852 return bcm_field_qualify_L4DstPort_get( 24853 BCM_CONTROL(unit)->unit, 24854 entry, 24855 data, 24856 mask); 24857 } 24858 24859 int 24860 bcm_loop_field_qualify_L4PortRangeCheck( 24861 int unit, 24862 bcm_field_entry_t entry, 24863 bcm_field_range_t range, 24864 int invert) 24865 { 24866 return bcm_field_qualify_L4PortRangeCheck( 24867 BCM_CONTROL(unit)->unit, 24868 entry, 24869 range, 24870 invert); 24871 } 24872 24873 int 24874 bcm_loop_field_qualify_L4PortRangeCheck_get( 24875 int unit, 24876 bcm_field_entry_t entry, 24877 int max_count, 24878 bcm_field_range_t * range, 24879 int * invert, 24880 int * count) 24881 { 24882 return bcm_field_qualify_L4PortRangeCheck_get( 24883 BCM_CONTROL(unit)->unit, 24884 entry, 24885 max_count, 24886 range, 24887 invert, 24888 count); 24889 } 24890 24891 int 24892 bcm_loop_field_qualify_L4Ports( 24893 int unit, 24894 bcm_field_entry_t entry, 24895 uint8 data, 24896 uint8 mask) 24897 { 24898 return bcm_field_qualify_L4Ports( 24899 BCM_CONTROL(unit)->unit, 24900 entry, 24901 data, 24902 mask); 24903 } 24904 24905 int 24906 bcm_loop_field_qualify_L4Ports_get( 24907 int unit, 24908 bcm_field_entry_t entry, 24909 uint8 * data, 24910 uint8 * mask) 24911 { 24912 return bcm_field_qualify_L4Ports_get( 24913 BCM_CONTROL(unit)->unit, 24914 entry, 24915 data, 24916 mask); 24917 } 24918 24919 int 24920 bcm_loop_field_qualify_L4SrcPort( 24921 int unit, 24922 bcm_field_entry_t entry, 24923 bcm_l4_port_t data, 24924 bcm_l4_port_t mask) 24925 { 24926 return bcm_field_qualify_L4SrcPort( 24927 BCM_CONTROL(unit)->unit, 24928 entry, 24929 data, 24930 mask); 24931 } 24932 24933 int 24934 bcm_loop_field_qualify_L4SrcPortClass( 24935 int unit, 24936 bcm_field_entry_t entry, 24937 bcm_class_t data, 24938 bcm_class_t mask) 24939 { 24940 return bcm_field_qualify_L4SrcPortClass( 24941 BCM_CONTROL(unit)->unit, 24942 entry, 24943 data, 24944 mask); 24945 } 24946 24947 int 24948 bcm_loop_field_qualify_L4SrcPortClass_get( 24949 int unit, 24950 bcm_field_entry_t entry, 24951 bcm_class_t * data, 24952 bcm_class_t * mask) 24953 { 24954 return bcm_field_qualify_L4SrcPortClass_get( 24955 BCM_CONTROL(unit)->unit, 24956 entry, 24957 data, 24958 mask); 24959 } 24960 24961 int 24962 bcm_loop_field_qualify_L4SrcPort_get( 24963 int unit, 24964 bcm_field_entry_t entry, 24965 bcm_l4_port_t * data, 24966 bcm_l4_port_t * mask) 24967 { 24968 return bcm_field_qualify_L4SrcPort_get( 24969 BCM_CONTROL(unit)->unit, 24970 entry, 24971 data, 24972 mask); 24973 } 24974 24975 int 24976 bcm_loop_field_qualify_LearnExtension( 24977 int unit, 24978 bcm_field_entry_t entry, 24979 uint8 data) 24980 { 24981 return bcm_field_qualify_LearnExtension( 24982 BCM_CONTROL(unit)->unit, 24983 entry, 24984 data); 24985 } 24986 24987 int 24988 bcm_loop_field_qualify_LearnExtension_get( 24989 int unit, 24990 bcm_field_entry_t entry, 24991 uint8 * data) 24992 { 24993 return bcm_field_qualify_LearnExtension_get( 24994 BCM_CONTROL(unit)->unit, 24995 entry, 24996 data); 24997 } 24998 24999 int 25000 bcm_loop_field_qualify_LearnInVPort( 25001 int unit, 25002 bcm_field_entry_t entry, 25003 uint32 data, 25004 uint32 mask) 25005 { 25006 return bcm_field_qualify_LearnInVPort( 25007 BCM_CONTROL(unit)->unit, 25008 entry, 25009 data, 25010 mask); 25011 } 25012 25013 int 25014 bcm_loop_field_qualify_LearnInVPort_get( 25015 int unit, 25016 bcm_field_entry_t entry, 25017 uint32 * data, 25018 uint32 * mask) 25019 { 25020 return bcm_field_qualify_LearnInVPort_get( 25021 BCM_CONTROL(unit)->unit, 25022 entry, 25023 data, 25024 mask); 25025 } 25026 25027 int 25028 bcm_loop_field_qualify_LearnSrcMac( 25029 int unit, 25030 bcm_field_entry_t entry, 25031 bcm_mac_t data, 25032 bcm_mac_t mask) 25033 { 25034 return bcm_field_qualify_LearnSrcMac( 25035 BCM_CONTROL(unit)->unit, 25036 entry, 25037 data, 25038 mask); 25039 } 25040 25041 int 25042 bcm_loop_field_qualify_LearnSrcMac_get( 25043 int unit, 25044 bcm_field_entry_t entry, 25045 bcm_mac_t * data, 25046 bcm_mac_t * mask) 25047 { 25048 return bcm_field_qualify_LearnSrcMac_get( 25049 BCM_CONTROL(unit)->unit, 25050 entry, 25051 data, 25052 mask); 25053 } 25054 25055 int 25056 bcm_loop_field_qualify_LearnSrcPort( 25057 int unit, 25058 bcm_field_entry_t entry, 25059 bcm_gport_t data) 25060 { 25061 return bcm_field_qualify_LearnSrcPort( 25062 BCM_CONTROL(unit)->unit, 25063 entry, 25064 data); 25065 } 25066 25067 int 25068 bcm_loop_field_qualify_LearnSrcPort_get( 25069 int unit, 25070 bcm_field_entry_t entry, 25071 bcm_gport_t * data) 25072 { 25073 return bcm_field_qualify_LearnSrcPort_get( 25074 BCM_CONTROL(unit)->unit, 25075 entry, 25076 data); 25077 } 25078 25079 int 25080 bcm_loop_field_qualify_LearnVlan( 25081 int unit, 25082 bcm_field_entry_t entry, 25083 bcm_vlan_t data, 25084 bcm_vlan_t mask) 25085 { 25086 return bcm_field_qualify_LearnVlan( 25087 BCM_CONTROL(unit)->unit, 25088 entry, 25089 data, 25090 mask); 25091 } 25092 25093 int 25094 bcm_loop_field_qualify_LearnVlan_get( 25095 int unit, 25096 bcm_field_entry_t entry, 25097 bcm_vlan_t * data, 25098 bcm_vlan_t * mask) 25099 { 25100 return bcm_field_qualify_LearnVlan_get( 25101 BCM_CONTROL(unit)->unit, 25102 entry, 25103 data, 25104 mask); 25105 } 25106 25107 int 25108 bcm_loop_field_qualify_Llc( 25109 int unit, 25110 bcm_field_entry_t entry, 25111 bcm_field_llc_header_t data, 25112 bcm_field_llc_header_t mask) 25113 { 25114 return bcm_field_qualify_Llc( 25115 BCM_CONTROL(unit)->unit, 25116 entry, 25117 data, 25118 mask); 25119 } 25120 25121 int 25122 bcm_loop_field_qualify_Llc_get( 25123 int unit, 25124 bcm_field_entry_t entry, 25125 bcm_field_llc_header_t * data, 25126 bcm_field_llc_header_t * mask) 25127 { 25128 return bcm_field_qualify_Llc_get( 25129 BCM_CONTROL(unit)->unit, 25130 entry, 25131 data, 25132 mask); 25133 } 25134 25135 int 25136 bcm_loop_field_qualify_LlidValue( 25137 int unit, 25138 bcm_field_entry_t entry, 25139 uint16 data, 25140 uint16 mask) 25141 { 25142 return bcm_field_qualify_LlidValue( 25143 BCM_CONTROL(unit)->unit, 25144 entry, 25145 data, 25146 mask); 25147 } 25148 25149 int 25150 bcm_loop_field_qualify_LlidValue_get( 25151 int unit, 25152 bcm_field_entry_t entry, 25153 uint16 * data, 25154 uint16 * mask) 25155 { 25156 return bcm_field_qualify_LlidValue_get( 25157 BCM_CONTROL(unit)->unit, 25158 entry, 25159 data, 25160 mask); 25161 } 25162 25163 int 25164 bcm_loop_field_qualify_LoopBackColor( 25165 int unit, 25166 bcm_field_entry_t entry, 25167 uint8 color) 25168 { 25169 return bcm_field_qualify_LoopBackColor( 25170 BCM_CONTROL(unit)->unit, 25171 entry, 25172 color); 25173 } 25174 25175 int 25176 bcm_loop_field_qualify_LoopBackColor_get( 25177 int unit, 25178 bcm_field_entry_t entry, 25179 uint8 * color) 25180 { 25181 return bcm_field_qualify_LoopBackColor_get( 25182 BCM_CONTROL(unit)->unit, 25183 entry, 25184 color); 25185 } 25186 25187 int 25188 bcm_loop_field_qualify_LoopBackCpuMasqueradePktProfile( 25189 int unit, 25190 bcm_field_entry_t entry, 25191 uint8 data, 25192 uint8 mask) 25193 { 25194 return bcm_field_qualify_LoopBackCpuMasqueradePktProfile( 25195 BCM_CONTROL(unit)->unit, 25196 entry, 25197 data, 25198 mask); 25199 } 25200 25201 int 25202 bcm_loop_field_qualify_LoopBackCpuMasqueradePktProfile_get( 25203 int unit, 25204 bcm_field_entry_t entry, 25205 uint8 * data, 25206 uint8 * mask) 25207 { 25208 return bcm_field_qualify_LoopBackCpuMasqueradePktProfile_get( 25209 BCM_CONTROL(unit)->unit, 25210 entry, 25211 data, 25212 mask); 25213 } 25214 25215 int 25216 bcm_loop_field_qualify_LoopBackPacketProcessingPort( 25217 int unit, 25218 bcm_field_entry_t entry, 25219 bcm_gport_t port_id, 25220 bcm_gport_t port_mask) 25221 { 25222 return bcm_field_qualify_LoopBackPacketProcessingPort( 25223 BCM_CONTROL(unit)->unit, 25224 entry, 25225 port_id, 25226 port_mask); 25227 } 25228 25229 int 25230 bcm_loop_field_qualify_LoopBackPacketProcessingPort_get( 25231 int unit, 25232 bcm_field_entry_t entry, 25233 bcm_gport_t * port_id, 25234 bcm_gport_t * port_mask) 25235 { 25236 return bcm_field_qualify_LoopBackPacketProcessingPort_get( 25237 BCM_CONTROL(unit)->unit, 25238 entry, 25239 port_id, 25240 port_mask); 25241 } 25242 25243 int 25244 bcm_loop_field_qualify_LoopBackQueue( 25245 int unit, 25246 bcm_field_entry_t entry, 25247 uint8 data, 25248 uint8 mask) 25249 { 25250 return bcm_field_qualify_LoopBackQueue( 25251 BCM_CONTROL(unit)->unit, 25252 entry, 25253 data, 25254 mask); 25255 } 25256 25257 int 25258 bcm_loop_field_qualify_LoopBackQueue_get( 25259 int unit, 25260 bcm_field_entry_t entry, 25261 uint8 * data, 25262 uint8 * mask) 25263 { 25264 return bcm_field_qualify_LoopBackQueue_get( 25265 BCM_CONTROL(unit)->unit, 25266 entry, 25267 data, 25268 mask); 25269 } 25270 25271 int 25272 bcm_loop_field_qualify_LoopBackSrcGport( 25273 int unit, 25274 bcm_field_entry_t entry, 25275 bcm_gport_t port_id, 25276 bcm_gport_t port_mask) 25277 { 25278 return bcm_field_qualify_LoopBackSrcGport( 25279 BCM_CONTROL(unit)->unit, 25280 entry, 25281 port_id, 25282 port_mask); 25283 } 25284 25285 int 25286 bcm_loop_field_qualify_LoopBackSrcGport_get( 25287 int unit, 25288 bcm_field_entry_t entry, 25289 bcm_gport_t * port_id, 25290 bcm_gport_t * port_mask) 25291 { 25292 return bcm_field_qualify_LoopBackSrcGport_get( 25293 BCM_CONTROL(unit)->unit, 25294 entry, 25295 port_id, 25296 port_mask); 25297 } 25298 25299 int 25300 bcm_loop_field_qualify_LoopBackTrafficClass( 25301 int unit, 25302 bcm_field_entry_t entry, 25303 uint8 data, 25304 uint8 mask) 25305 { 25306 return bcm_field_qualify_LoopBackTrafficClass( 25307 BCM_CONTROL(unit)->unit, 25308 entry, 25309 data, 25310 mask); 25311 } 25312 25313 int 25314 bcm_loop_field_qualify_LoopBackTrafficClass_get( 25315 int unit, 25316 bcm_field_entry_t entry, 25317 uint8 * data, 25318 uint8 * mask) 25319 { 25320 return bcm_field_qualify_LoopBackTrafficClass_get( 25321 BCM_CONTROL(unit)->unit, 25322 entry, 25323 data, 25324 mask); 25325 } 25326 25327 int 25328 bcm_loop_field_qualify_Loopback( 25329 int unit, 25330 bcm_field_entry_t entry, 25331 uint8 data, 25332 uint8 mask) 25333 { 25334 return bcm_field_qualify_Loopback( 25335 BCM_CONTROL(unit)->unit, 25336 entry, 25337 data, 25338 mask); 25339 } 25340 25341 int 25342 bcm_loop_field_qualify_LoopbackSubtype( 25343 int unit, 25344 bcm_field_entry_t entry, 25345 bcm_field_loopback_subtype_t lb_subtype) 25346 { 25347 return bcm_field_qualify_LoopbackSubtype( 25348 BCM_CONTROL(unit)->unit, 25349 entry, 25350 lb_subtype); 25351 } 25352 25353 int 25354 bcm_loop_field_qualify_LoopbackSubtype_get( 25355 int unit, 25356 bcm_field_entry_t entry, 25357 bcm_field_loopback_subtype_t * lb_subtype) 25358 { 25359 return bcm_field_qualify_LoopbackSubtype_get( 25360 BCM_CONTROL(unit)->unit, 25361 entry, 25362 lb_subtype); 25363 } 25364 25365 int 25366 bcm_loop_field_qualify_LoopbackType( 25367 int unit, 25368 bcm_field_entry_t entry, 25369 bcm_field_LoopbackType_t loopback_type) 25370 { 25371 return bcm_field_qualify_LoopbackType( 25372 BCM_CONTROL(unit)->unit, 25373 entry, 25374 loopback_type); 25375 } 25376 25377 int 25378 bcm_loop_field_qualify_LoopbackType_get( 25379 int unit, 25380 bcm_field_entry_t entry, 25381 bcm_field_LoopbackType_t * loopback_type) 25382 { 25383 return bcm_field_qualify_LoopbackType_get( 25384 BCM_CONTROL(unit)->unit, 25385 entry, 25386 loopback_type); 25387 } 25388 25389 int 25390 bcm_loop_field_qualify_Loopback_get( 25391 int unit, 25392 bcm_field_entry_t entry, 25393 uint8 * data, 25394 uint8 * mask) 25395 { 25396 return bcm_field_qualify_Loopback_get( 25397 BCM_CONTROL(unit)->unit, 25398 entry, 25399 data, 25400 mask); 25401 } 25402 25403 int 25404 bcm_loop_field_qualify_MHOpcode( 25405 int unit, 25406 bcm_field_entry_t entry, 25407 uint8 data, 25408 uint8 mask) 25409 { 25410 return bcm_field_qualify_MHOpcode( 25411 BCM_CONTROL(unit)->unit, 25412 entry, 25413 data, 25414 mask); 25415 } 25416 25417 int 25418 bcm_loop_field_qualify_MHOpcode_get( 25419 int unit, 25420 bcm_field_entry_t entry, 25421 uint8 * data, 25422 uint8 * mask) 25423 { 25424 return bcm_field_qualify_MHOpcode_get( 25425 BCM_CONTROL(unit)->unit, 25426 entry, 25427 data, 25428 mask); 25429 } 25430 25431 int 25432 bcm_loop_field_qualify_MacAddrsNormalized( 25433 int unit, 25434 bcm_field_entry_t entry, 25435 uint8 data, 25436 uint8 mask) 25437 { 25438 return bcm_field_qualify_MacAddrsNormalized( 25439 BCM_CONTROL(unit)->unit, 25440 entry, 25441 data, 25442 mask); 25443 } 25444 25445 int 25446 bcm_loop_field_qualify_MacAddrsNormalized_get( 25447 int unit, 25448 bcm_field_entry_t entry, 25449 uint8 * data, 25450 uint8 * mask) 25451 { 25452 return bcm_field_qualify_MacAddrsNormalized_get( 25453 BCM_CONTROL(unit)->unit, 25454 entry, 25455 data, 25456 mask); 25457 } 25458 25459 int 25460 bcm_loop_field_qualify_MacSecDstMacRangeHit( 25461 int unit, 25462 bcm_field_entry_t entry, 25463 uint8 data, 25464 uint8 mask) 25465 { 25466 return bcm_field_qualify_MacSecDstMacRangeHit( 25467 BCM_CONTROL(unit)->unit, 25468 entry, 25469 data, 25470 mask); 25471 } 25472 25473 int 25474 bcm_loop_field_qualify_MacSecDstMacRangeHit_get( 25475 int unit, 25476 bcm_field_entry_t entry, 25477 uint8 * data, 25478 uint8 * mask) 25479 { 25480 return bcm_field_qualify_MacSecDstMacRangeHit_get( 25481 BCM_CONTROL(unit)->unit, 25482 entry, 25483 data, 25484 mask); 25485 } 25486 25487 int 25488 bcm_loop_field_qualify_MacSecFlow( 25489 int unit, 25490 bcm_field_entry_t entry, 25491 bcm_field_macsec_flow_t data) 25492 { 25493 return bcm_field_qualify_MacSecFlow( 25494 BCM_CONTROL(unit)->unit, 25495 entry, 25496 data); 25497 } 25498 25499 int 25500 bcm_loop_field_qualify_MacSecFlow_get( 25501 int unit, 25502 bcm_field_entry_t entry, 25503 bcm_field_macsec_flow_t * data) 25504 { 25505 return bcm_field_qualify_MacSecFlow_get( 25506 BCM_CONTROL(unit)->unit, 25507 entry, 25508 data); 25509 } 25510 25511 int 25512 bcm_loop_field_qualify_MacSecTag( 25513 int unit, 25514 bcm_field_entry_t entry, 25515 uint8 data, 25516 uint8 mask) 25517 { 25518 return bcm_field_qualify_MacSecTag( 25519 BCM_CONTROL(unit)->unit, 25520 entry, 25521 data, 25522 mask); 25523 } 25524 25525 int 25526 bcm_loop_field_qualify_MacSecTagPresent( 25527 int unit, 25528 bcm_field_entry_t entry, 25529 uint8 data, 25530 uint8 mask) 25531 { 25532 return bcm_field_qualify_MacSecTagPresent( 25533 BCM_CONTROL(unit)->unit, 25534 entry, 25535 data, 25536 mask); 25537 } 25538 25539 int 25540 bcm_loop_field_qualify_MacSecTagPresent_get( 25541 int unit, 25542 bcm_field_entry_t entry, 25543 uint8 * data, 25544 uint8 * mask) 25545 { 25546 return bcm_field_qualify_MacSecTagPresent_get( 25547 BCM_CONTROL(unit)->unit, 25548 entry, 25549 data, 25550 mask); 25551 } 25552 25553 int 25554 bcm_loop_field_qualify_MacSecTag_get( 25555 int unit, 25556 bcm_field_entry_t entry, 25557 uint8 * data, 25558 uint8 * mask) 25559 { 25560 return bcm_field_qualify_MacSecTag_get( 25561 BCM_CONTROL(unit)->unit, 25562 entry, 25563 data, 25564 mask); 25565 } 25566 25567 int 25568 bcm_loop_field_qualify_MimSrcGportHit( 25569 int unit, 25570 bcm_field_entry_t entry, 25571 uint8 data, 25572 uint8 mask) 25573 { 25574 return bcm_field_qualify_MimSrcGportHit( 25575 BCM_CONTROL(unit)->unit, 25576 entry, 25577 data, 25578 mask); 25579 } 25580 25581 int 25582 bcm_loop_field_qualify_MimSrcGportHit_get( 25583 int unit, 25584 bcm_field_entry_t entry, 25585 uint8 * data, 25586 uint8 * mask) 25587 { 25588 return bcm_field_qualify_MimSrcGportHit_get( 25589 BCM_CONTROL(unit)->unit, 25590 entry, 25591 data, 25592 mask); 25593 } 25594 25595 int 25596 bcm_loop_field_qualify_MimVfiHit( 25597 int unit, 25598 bcm_field_entry_t entry, 25599 uint8 data, 25600 uint8 mask) 25601 { 25602 return bcm_field_qualify_MimVfiHit( 25603 BCM_CONTROL(unit)->unit, 25604 entry, 25605 data, 25606 mask); 25607 } 25608 25609 int 25610 bcm_loop_field_qualify_MimVfiHit_get( 25611 int unit, 25612 bcm_field_entry_t entry, 25613 uint8 * data, 25614 uint8 * mask) 25615 { 25616 return bcm_field_qualify_MimVfiHit_get( 25617 BCM_CONTROL(unit)->unit, 25618 entry, 25619 data, 25620 mask); 25621 } 25622 25623 int 25624 bcm_loop_field_qualify_MimVlanCfi( 25625 int unit, 25626 bcm_field_entry_t entry, 25627 uint8 data, 25628 uint8 mask) 25629 { 25630 return bcm_field_qualify_MimVlanCfi( 25631 BCM_CONTROL(unit)->unit, 25632 entry, 25633 data, 25634 mask); 25635 } 25636 25637 int 25638 bcm_loop_field_qualify_MimVlanCfi_get( 25639 int unit, 25640 bcm_field_entry_t entry, 25641 uint8 * data, 25642 uint8 * mask) 25643 { 25644 return bcm_field_qualify_MimVlanCfi_get( 25645 BCM_CONTROL(unit)->unit, 25646 entry, 25647 data, 25648 mask); 25649 } 25650 25651 int 25652 bcm_loop_field_qualify_MimVlanPri( 25653 int unit, 25654 bcm_field_entry_t entry, 25655 uint8 data, 25656 uint8 mask) 25657 { 25658 return bcm_field_qualify_MimVlanPri( 25659 BCM_CONTROL(unit)->unit, 25660 entry, 25661 data, 25662 mask); 25663 } 25664 25665 int 25666 bcm_loop_field_qualify_MimVlanPri_get( 25667 int unit, 25668 bcm_field_entry_t entry, 25669 uint8 * data, 25670 uint8 * mask) 25671 { 25672 return bcm_field_qualify_MimVlanPri_get( 25673 BCM_CONTROL(unit)->unit, 25674 entry, 25675 data, 25676 mask); 25677 } 25678 25679 int 25680 bcm_loop_field_qualify_MimlDstMac( 25681 int unit, 25682 bcm_field_entry_t entry, 25683 bcm_mac_t data, 25684 bcm_mac_t mask) 25685 { 25686 return bcm_field_qualify_MimlDstMac( 25687 BCM_CONTROL(unit)->unit, 25688 entry, 25689 data, 25690 mask); 25691 } 25692 25693 int 25694 bcm_loop_field_qualify_MimlDstMac_get( 25695 int unit, 25696 bcm_field_entry_t entry, 25697 bcm_mac_t * data, 25698 bcm_mac_t * mask) 25699 { 25700 return bcm_field_qualify_MimlDstMac_get( 25701 BCM_CONTROL(unit)->unit, 25702 entry, 25703 data, 25704 mask); 25705 } 25706 25707 int 25708 bcm_loop_field_qualify_MimlInnerTag( 25709 int unit, 25710 bcm_field_entry_t entry, 25711 uint32 data, 25712 uint32 mask) 25713 { 25714 return bcm_field_qualify_MimlInnerTag( 25715 BCM_CONTROL(unit)->unit, 25716 entry, 25717 data, 25718 mask); 25719 } 25720 25721 int 25722 bcm_loop_field_qualify_MimlInnerTag_get( 25723 int unit, 25724 bcm_field_entry_t entry, 25725 uint32 * data, 25726 uint32 * mask) 25727 { 25728 return bcm_field_qualify_MimlInnerTag_get( 25729 BCM_CONTROL(unit)->unit, 25730 entry, 25731 data, 25732 mask); 25733 } 25734 25735 int 25736 bcm_loop_field_qualify_MimlPkt( 25737 int unit, 25738 bcm_field_entry_t entry, 25739 uint8 data, 25740 uint8 mask) 25741 { 25742 return bcm_field_qualify_MimlPkt( 25743 BCM_CONTROL(unit)->unit, 25744 entry, 25745 data, 25746 mask); 25747 } 25748 25749 int 25750 bcm_loop_field_qualify_MimlPkt_get( 25751 int unit, 25752 bcm_field_entry_t entry, 25753 uint8 * data, 25754 uint8 * mask) 25755 { 25756 return bcm_field_qualify_MimlPkt_get( 25757 BCM_CONTROL(unit)->unit, 25758 entry, 25759 data, 25760 mask); 25761 } 25762 25763 int 25764 bcm_loop_field_qualify_MimlSrcMac( 25765 int unit, 25766 bcm_field_entry_t entry, 25767 bcm_mac_t data, 25768 bcm_mac_t mask) 25769 { 25770 return bcm_field_qualify_MimlSrcMac( 25771 BCM_CONTROL(unit)->unit, 25772 entry, 25773 data, 25774 mask); 25775 } 25776 25777 int 25778 bcm_loop_field_qualify_MimlSrcMac_get( 25779 int unit, 25780 bcm_field_entry_t entry, 25781 bcm_mac_t * data, 25782 bcm_mac_t * mask) 25783 { 25784 return bcm_field_qualify_MimlSrcMac_get( 25785 BCM_CONTROL(unit)->unit, 25786 entry, 25787 data, 25788 mask); 25789 } 25790 25791 int 25792 bcm_loop_field_qualify_MimlVlan( 25793 int unit, 25794 bcm_field_entry_t entry, 25795 bcm_vlan_t data, 25796 bcm_vlan_t mask) 25797 { 25798 return bcm_field_qualify_MimlVlan( 25799 BCM_CONTROL(unit)->unit, 25800 entry, 25801 data, 25802 mask); 25803 } 25804 25805 int 25806 bcm_loop_field_qualify_MimlVlanCfi( 25807 int unit, 25808 bcm_field_entry_t entry, 25809 uint8 data, 25810 uint8 mask) 25811 { 25812 return bcm_field_qualify_MimlVlanCfi( 25813 BCM_CONTROL(unit)->unit, 25814 entry, 25815 data, 25816 mask); 25817 } 25818 25819 int 25820 bcm_loop_field_qualify_MimlVlanCfi_get( 25821 int unit, 25822 bcm_field_entry_t entry, 25823 uint8 * data, 25824 uint8 * mask) 25825 { 25826 return bcm_field_qualify_MimlVlanCfi_get( 25827 BCM_CONTROL(unit)->unit, 25828 entry, 25829 data, 25830 mask); 25831 } 25832 25833 int 25834 bcm_loop_field_qualify_MimlVlanId( 25835 int unit, 25836 bcm_field_entry_t entry, 25837 bcm_vlan_t data, 25838 bcm_vlan_t mask) 25839 { 25840 return bcm_field_qualify_MimlVlanId( 25841 BCM_CONTROL(unit)->unit, 25842 entry, 25843 data, 25844 mask); 25845 } 25846 25847 int 25848 bcm_loop_field_qualify_MimlVlanId_get( 25849 int unit, 25850 bcm_field_entry_t entry, 25851 bcm_vlan_t * data, 25852 bcm_vlan_t * mask) 25853 { 25854 return bcm_field_qualify_MimlVlanId_get( 25855 BCM_CONTROL(unit)->unit, 25856 entry, 25857 data, 25858 mask); 25859 } 25860 25861 int 25862 bcm_loop_field_qualify_MimlVlanPri( 25863 int unit, 25864 bcm_field_entry_t entry, 25865 uint8 data, 25866 uint8 mask) 25867 { 25868 return bcm_field_qualify_MimlVlanPri( 25869 BCM_CONTROL(unit)->unit, 25870 entry, 25871 data, 25872 mask); 25873 } 25874 25875 int 25876 bcm_loop_field_qualify_MimlVlanPri_get( 25877 int unit, 25878 bcm_field_entry_t entry, 25879 uint8 * data, 25880 uint8 * mask) 25881 { 25882 return bcm_field_qualify_MimlVlanPri_get( 25883 BCM_CONTROL(unit)->unit, 25884 entry, 25885 data, 25886 mask); 25887 } 25888 25889 int 25890 bcm_loop_field_qualify_MimlVlan_get( 25891 int unit, 25892 bcm_field_entry_t entry, 25893 bcm_vlan_t * data, 25894 bcm_vlan_t * mask) 25895 { 25896 return bcm_field_qualify_MimlVlan_get( 25897 BCM_CONTROL(unit)->unit, 25898 entry, 25899 data, 25900 mask); 25901 } 25902 25903 int 25904 bcm_loop_field_qualify_MirrorCopy( 25905 int unit, 25906 bcm_field_entry_t entry, 25907 uint8 data, 25908 uint8 mask) 25909 { 25910 return bcm_field_qualify_MirrorCopy( 25911 BCM_CONTROL(unit)->unit, 25912 entry, 25913 data, 25914 mask); 25915 } 25916 25917 int 25918 bcm_loop_field_qualify_MirrorCopy_get( 25919 int unit, 25920 bcm_field_entry_t entry, 25921 uint8 * data, 25922 uint8 * mask) 25923 { 25924 return bcm_field_qualify_MirrorCopy_get( 25925 BCM_CONTROL(unit)->unit, 25926 entry, 25927 data, 25928 mask); 25929 } 25930 25931 int 25932 bcm_loop_field_qualify_MirrorDest( 25933 int unit, 25934 bcm_field_entry_t entry, 25935 bcm_gport_t mirror_gport) 25936 { 25937 return bcm_field_qualify_MirrorDest( 25938 BCM_CONTROL(unit)->unit, 25939 entry, 25940 mirror_gport); 25941 } 25942 25943 int 25944 bcm_loop_field_qualify_MirrorDest_get( 25945 int unit, 25946 bcm_field_entry_t entry, 25947 bcm_gport_t * mirror_gport) 25948 { 25949 return bcm_field_qualify_MirrorDest_get( 25950 BCM_CONTROL(unit)->unit, 25951 entry, 25952 mirror_gport); 25953 } 25954 25955 int 25956 bcm_loop_field_qualify_MirrorEgressDisabled( 25957 int unit, 25958 bcm_field_entry_t entry, 25959 uint8 data, 25960 uint8 mask) 25961 { 25962 return bcm_field_qualify_MirrorEgressDisabled( 25963 BCM_CONTROL(unit)->unit, 25964 entry, 25965 data, 25966 mask); 25967 } 25968 25969 int 25970 bcm_loop_field_qualify_MirrorEgressDisabled_get( 25971 int unit, 25972 bcm_field_entry_t entry, 25973 uint8 * data, 25974 uint8 * mask) 25975 { 25976 return bcm_field_qualify_MirrorEgressDisabled_get( 25977 BCM_CONTROL(unit)->unit, 25978 entry, 25979 data, 25980 mask); 25981 } 25982 25983 int 25984 bcm_loop_field_qualify_MixedSrcClassId( 25985 int unit, 25986 bcm_field_entry_t entry, 25987 bcm_pbmp_t pbmp, 25988 bcm_field_src_class_t data, 25989 bcm_field_src_class_t mask) 25990 { 25991 return bcm_field_qualify_MixedSrcClassId( 25992 BCM_CONTROL(unit)->unit, 25993 entry, 25994 pbmp, 25995 data, 25996 mask); 25997 } 25998 25999 int 26000 bcm_loop_field_qualify_MixedSrcClassId_get( 26001 int unit, 26002 bcm_field_entry_t entry, 26003 bcm_pbmp_t pbmp, 26004 bcm_field_src_class_t * data, 26005 bcm_field_src_class_t * mask) 26006 { 26007 return bcm_field_qualify_MixedSrcClassId_get( 26008 BCM_CONTROL(unit)->unit, 26009 entry, 26010 pbmp, 26011 data, 26012 mask); 26013 } 26014 26015 int 26016 bcm_loop_field_qualify_MplsBos( 26017 int unit, 26018 bcm_field_entry_t entry, 26019 uint8 data, 26020 uint8 mask) 26021 { 26022 return bcm_field_qualify_MplsBos( 26023 BCM_CONTROL(unit)->unit, 26024 entry, 26025 data, 26026 mask); 26027 } 26028 26029 int 26030 bcm_loop_field_qualify_MplsBos_get( 26031 int unit, 26032 bcm_field_entry_t entry, 26033 uint8 * data, 26034 uint8 * mask) 26035 { 26036 return bcm_field_qualify_MplsBos_get( 26037 BCM_CONTROL(unit)->unit, 26038 entry, 26039 data, 26040 mask); 26041 } 26042 26043 int 26044 bcm_loop_field_qualify_MplsControlPkt( 26045 int unit, 26046 bcm_field_entry_t entry, 26047 uint8 data, 26048 uint8 mask) 26049 { 26050 return bcm_field_qualify_MplsControlPkt( 26051 BCM_CONTROL(unit)->unit, 26052 entry, 26053 data, 26054 mask); 26055 } 26056 26057 int 26058 bcm_loop_field_qualify_MplsControlPkt_get( 26059 int unit, 26060 bcm_field_entry_t entry, 26061 uint8 * data, 26062 uint8 * mask) 26063 { 26064 return bcm_field_qualify_MplsControlPkt_get( 26065 BCM_CONTROL(unit)->unit, 26066 entry, 26067 data, 26068 mask); 26069 } 26070 26071 int 26072 bcm_loop_field_qualify_MplsControlWord( 26073 int unit, 26074 bcm_field_entry_t entry, 26075 uint32 data, 26076 uint32 mask) 26077 { 26078 return bcm_field_qualify_MplsControlWord( 26079 BCM_CONTROL(unit)->unit, 26080 entry, 26081 data, 26082 mask); 26083 } 26084 26085 int 26086 bcm_loop_field_qualify_MplsControlWordValid( 26087 int unit, 26088 bcm_field_entry_t entry, 26089 uint8 data, 26090 uint8 mask) 26091 { 26092 return bcm_field_qualify_MplsControlWordValid( 26093 BCM_CONTROL(unit)->unit, 26094 entry, 26095 data, 26096 mask); 26097 } 26098 26099 int 26100 bcm_loop_field_qualify_MplsControlWordValid_get( 26101 int unit, 26102 bcm_field_entry_t entry, 26103 uint8 * data, 26104 uint8 * mask) 26105 { 26106 return bcm_field_qualify_MplsControlWordValid_get( 26107 BCM_CONTROL(unit)->unit, 26108 entry, 26109 data, 26110 mask); 26111 } 26112 26113 int 26114 bcm_loop_field_qualify_MplsControlWord_get( 26115 int unit, 26116 bcm_field_entry_t entry, 26117 uint32 * data, 26118 uint32 * mask) 26119 { 26120 return bcm_field_qualify_MplsControlWord_get( 26121 BCM_CONTROL(unit)->unit, 26122 entry, 26123 data, 26124 mask); 26125 } 26126 26127 int 26128 bcm_loop_field_qualify_MplsCwPresent( 26129 int unit, 26130 bcm_field_entry_t entry, 26131 uint8 data, 26132 uint8 mask) 26133 { 26134 return bcm_field_qualify_MplsCwPresent( 26135 BCM_CONTROL(unit)->unit, 26136 entry, 26137 data, 26138 mask); 26139 } 26140 26141 int 26142 bcm_loop_field_qualify_MplsCwPresent_get( 26143 int unit, 26144 bcm_field_entry_t entry, 26145 uint8 * data, 26146 uint8 * mask) 26147 { 26148 return bcm_field_qualify_MplsCwPresent_get( 26149 BCM_CONTROL(unit)->unit, 26150 entry, 26151 data, 26152 mask); 26153 } 26154 26155 int 26156 bcm_loop_field_qualify_MplsForwardingLabel( 26157 int unit, 26158 bcm_field_entry_t entry, 26159 uint32 data, 26160 uint32 mask) 26161 { 26162 return bcm_field_qualify_MplsForwardingLabel( 26163 BCM_CONTROL(unit)->unit, 26164 entry, 26165 data, 26166 mask); 26167 } 26168 26169 int 26170 bcm_loop_field_qualify_MplsForwardingLabelAction( 26171 int unit, 26172 bcm_field_entry_t entry, 26173 uint8 data, 26174 uint8 mask) 26175 { 26176 return bcm_field_qualify_MplsForwardingLabelAction( 26177 BCM_CONTROL(unit)->unit, 26178 entry, 26179 data, 26180 mask); 26181 } 26182 26183 int 26184 bcm_loop_field_qualify_MplsForwardingLabelAction32( 26185 int unit, 26186 bcm_field_entry_t entry, 26187 uint32 data, 26188 uint32 mask) 26189 { 26190 return bcm_field_qualify_MplsForwardingLabelAction32( 26191 BCM_CONTROL(unit)->unit, 26192 entry, 26193 data, 26194 mask); 26195 } 26196 26197 int 26198 bcm_loop_field_qualify_MplsForwardingLabelAction32_get( 26199 int unit, 26200 bcm_field_entry_t entry, 26201 uint32 * data, 26202 uint32 * mask) 26203 { 26204 return bcm_field_qualify_MplsForwardingLabelAction32_get( 26205 BCM_CONTROL(unit)->unit, 26206 entry, 26207 data, 26208 mask); 26209 } 26210 26211 int 26212 bcm_loop_field_qualify_MplsForwardingLabelAction_get( 26213 int unit, 26214 bcm_field_entry_t entry, 26215 uint8 * data, 26216 uint8 * mask) 26217 { 26218 return bcm_field_qualify_MplsForwardingLabelAction_get( 26219 BCM_CONTROL(unit)->unit, 26220 entry, 26221 data, 26222 mask); 26223 } 26224 26225 int 26226 bcm_loop_field_qualify_MplsForwardingLabelBos( 26227 int unit, 26228 bcm_field_entry_t entry, 26229 uint8 data, 26230 uint8 mask) 26231 { 26232 return bcm_field_qualify_MplsForwardingLabelBos( 26233 BCM_CONTROL(unit)->unit, 26234 entry, 26235 data, 26236 mask); 26237 } 26238 26239 int 26240 bcm_loop_field_qualify_MplsForwardingLabelBos_get( 26241 int unit, 26242 bcm_field_entry_t entry, 26243 uint8 * data, 26244 uint8 * mask) 26245 { 26246 return bcm_field_qualify_MplsForwardingLabelBos_get( 26247 BCM_CONTROL(unit)->unit, 26248 entry, 26249 data, 26250 mask); 26251 } 26252 26253 int 26254 bcm_loop_field_qualify_MplsForwardingLabelExp( 26255 int unit, 26256 bcm_field_entry_t entry, 26257 uint8 data, 26258 uint8 mask) 26259 { 26260 return bcm_field_qualify_MplsForwardingLabelExp( 26261 BCM_CONTROL(unit)->unit, 26262 entry, 26263 data, 26264 mask); 26265 } 26266 26267 int 26268 bcm_loop_field_qualify_MplsForwardingLabelExp_get( 26269 int unit, 26270 bcm_field_entry_t entry, 26271 uint8 * data, 26272 uint8 * mask) 26273 { 26274 return bcm_field_qualify_MplsForwardingLabelExp_get( 26275 BCM_CONTROL(unit)->unit, 26276 entry, 26277 data, 26278 mask); 26279 } 26280 26281 int 26282 bcm_loop_field_qualify_MplsForwardingLabelId( 26283 int unit, 26284 bcm_field_entry_t entry, 26285 uint32 data, 26286 uint32 mask) 26287 { 26288 return bcm_field_qualify_MplsForwardingLabelId( 26289 BCM_CONTROL(unit)->unit, 26290 entry, 26291 data, 26292 mask); 26293 } 26294 26295 int 26296 bcm_loop_field_qualify_MplsForwardingLabelId_get( 26297 int unit, 26298 bcm_field_entry_t entry, 26299 uint32 * data, 26300 uint32 * mask) 26301 { 26302 return bcm_field_qualify_MplsForwardingLabelId_get( 26303 BCM_CONTROL(unit)->unit, 26304 entry, 26305 data, 26306 mask); 26307 } 26308 26309 int 26310 bcm_loop_field_qualify_MplsForwardingLabelPayload( 26311 int unit, 26312 bcm_field_entry_t entry, 26313 uint64 data, 26314 uint64 mask) 26315 { 26316 return bcm_field_qualify_MplsForwardingLabelPayload( 26317 BCM_CONTROL(unit)->unit, 26318 entry, 26319 data, 26320 mask); 26321 } 26322 26323 int 26324 bcm_loop_field_qualify_MplsForwardingLabelPayload_get( 26325 int unit, 26326 bcm_field_entry_t entry, 26327 uint64 * data, 26328 uint64 * mask) 26329 { 26330 return bcm_field_qualify_MplsForwardingLabelPayload_get( 26331 BCM_CONTROL(unit)->unit, 26332 entry, 26333 data, 26334 mask); 26335 } 26336 26337 int 26338 bcm_loop_field_qualify_MplsForwardingLabelTtl( 26339 int unit, 26340 bcm_field_entry_t entry, 26341 uint8 data, 26342 uint8 mask) 26343 { 26344 return bcm_field_qualify_MplsForwardingLabelTtl( 26345 BCM_CONTROL(unit)->unit, 26346 entry, 26347 data, 26348 mask); 26349 } 26350 26351 int 26352 bcm_loop_field_qualify_MplsForwardingLabelTtl_get( 26353 int unit, 26354 bcm_field_entry_t entry, 26355 uint8 * data, 26356 uint8 * mask) 26357 { 26358 return bcm_field_qualify_MplsForwardingLabelTtl_get( 26359 BCM_CONTROL(unit)->unit, 26360 entry, 26361 data, 26362 mask); 26363 } 26364 26365 int 26366 bcm_loop_field_qualify_MplsForwardingLabel_get( 26367 int unit, 26368 bcm_field_entry_t entry, 26369 uint32 * data, 26370 uint32 * mask) 26371 { 26372 return bcm_field_qualify_MplsForwardingLabel_get( 26373 BCM_CONTROL(unit)->unit, 26374 entry, 26375 data, 26376 mask); 26377 } 26378 26379 int 26380 bcm_loop_field_qualify_MplsLabel1( 26381 int unit, 26382 bcm_field_entry_t entry, 26383 uint32 data, 26384 uint32 mask) 26385 { 26386 return bcm_field_qualify_MplsLabel1( 26387 BCM_CONTROL(unit)->unit, 26388 entry, 26389 data, 26390 mask); 26391 } 26392 26393 int 26394 bcm_loop_field_qualify_MplsLabel1Bos( 26395 int unit, 26396 bcm_field_entry_t entry, 26397 uint8 data, 26398 uint8 mask) 26399 { 26400 return bcm_field_qualify_MplsLabel1Bos( 26401 BCM_CONTROL(unit)->unit, 26402 entry, 26403 data, 26404 mask); 26405 } 26406 26407 int 26408 bcm_loop_field_qualify_MplsLabel1Bos_get( 26409 int unit, 26410 bcm_field_entry_t entry, 26411 uint8 * data, 26412 uint8 * mask) 26413 { 26414 return bcm_field_qualify_MplsLabel1Bos_get( 26415 BCM_CONTROL(unit)->unit, 26416 entry, 26417 data, 26418 mask); 26419 } 26420 26421 int 26422 bcm_loop_field_qualify_MplsLabel1Exp( 26423 int unit, 26424 bcm_field_entry_t entry, 26425 uint8 data, 26426 uint8 mask) 26427 { 26428 return bcm_field_qualify_MplsLabel1Exp( 26429 BCM_CONTROL(unit)->unit, 26430 entry, 26431 data, 26432 mask); 26433 } 26434 26435 int 26436 bcm_loop_field_qualify_MplsLabel1Exp_get( 26437 int unit, 26438 bcm_field_entry_t entry, 26439 uint8 * data, 26440 uint8 * mask) 26441 { 26442 return bcm_field_qualify_MplsLabel1Exp_get( 26443 BCM_CONTROL(unit)->unit, 26444 entry, 26445 data, 26446 mask); 26447 } 26448 26449 int 26450 bcm_loop_field_qualify_MplsLabel1Hit( 26451 int unit, 26452 bcm_field_entry_t entry, 26453 uint8 data, 26454 uint8 mask) 26455 { 26456 return bcm_field_qualify_MplsLabel1Hit( 26457 BCM_CONTROL(unit)->unit, 26458 entry, 26459 data, 26460 mask); 26461 } 26462 26463 int 26464 bcm_loop_field_qualify_MplsLabel1Hit_get( 26465 int unit, 26466 bcm_field_entry_t entry, 26467 uint8 * data, 26468 uint8 * mask) 26469 { 26470 return bcm_field_qualify_MplsLabel1Hit_get( 26471 BCM_CONTROL(unit)->unit, 26472 entry, 26473 data, 26474 mask); 26475 } 26476 26477 int 26478 bcm_loop_field_qualify_MplsLabel1Id( 26479 int unit, 26480 bcm_field_entry_t entry, 26481 uint32 data, 26482 uint32 mask) 26483 { 26484 return bcm_field_qualify_MplsLabel1Id( 26485 BCM_CONTROL(unit)->unit, 26486 entry, 26487 data, 26488 mask); 26489 } 26490 26491 int 26492 bcm_loop_field_qualify_MplsLabel1Id_get( 26493 int unit, 26494 bcm_field_entry_t entry, 26495 uint32 * data, 26496 uint32 * mask) 26497 { 26498 return bcm_field_qualify_MplsLabel1Id_get( 26499 BCM_CONTROL(unit)->unit, 26500 entry, 26501 data, 26502 mask); 26503 } 26504 26505 int 26506 bcm_loop_field_qualify_MplsLabel1Ttl( 26507 int unit, 26508 bcm_field_entry_t entry, 26509 uint8 data, 26510 uint8 mask) 26511 { 26512 return bcm_field_qualify_MplsLabel1Ttl( 26513 BCM_CONTROL(unit)->unit, 26514 entry, 26515 data, 26516 mask); 26517 } 26518 26519 int 26520 bcm_loop_field_qualify_MplsLabel1Ttl_get( 26521 int unit, 26522 bcm_field_entry_t entry, 26523 uint8 * data, 26524 uint8 * mask) 26525 { 26526 return bcm_field_qualify_MplsLabel1Ttl_get( 26527 BCM_CONTROL(unit)->unit, 26528 entry, 26529 data, 26530 mask); 26531 } 26532 26533 int 26534 bcm_loop_field_qualify_MplsLabel1_get( 26535 int unit, 26536 bcm_field_entry_t entry, 26537 uint32 * data, 26538 uint32 * mask) 26539 { 26540 return bcm_field_qualify_MplsLabel1_get( 26541 BCM_CONTROL(unit)->unit, 26542 entry, 26543 data, 26544 mask); 26545 } 26546 26547 int 26548 bcm_loop_field_qualify_MplsLabel2( 26549 int unit, 26550 bcm_field_entry_t entry, 26551 uint32 data, 26552 uint32 mask) 26553 { 26554 return bcm_field_qualify_MplsLabel2( 26555 BCM_CONTROL(unit)->unit, 26556 entry, 26557 data, 26558 mask); 26559 } 26560 26561 int 26562 bcm_loop_field_qualify_MplsLabel2Bos( 26563 int unit, 26564 bcm_field_entry_t entry, 26565 uint8 data, 26566 uint8 mask) 26567 { 26568 return bcm_field_qualify_MplsLabel2Bos( 26569 BCM_CONTROL(unit)->unit, 26570 entry, 26571 data, 26572 mask); 26573 } 26574 26575 int 26576 bcm_loop_field_qualify_MplsLabel2Bos_get( 26577 int unit, 26578 bcm_field_entry_t entry, 26579 uint8 * data, 26580 uint8 * mask) 26581 { 26582 return bcm_field_qualify_MplsLabel2Bos_get( 26583 BCM_CONTROL(unit)->unit, 26584 entry, 26585 data, 26586 mask); 26587 } 26588 26589 int 26590 bcm_loop_field_qualify_MplsLabel2Exp( 26591 int unit, 26592 bcm_field_entry_t entry, 26593 uint8 data, 26594 uint8 mask) 26595 { 26596 return bcm_field_qualify_MplsLabel2Exp( 26597 BCM_CONTROL(unit)->unit, 26598 entry, 26599 data, 26600 mask); 26601 } 26602 26603 int 26604 bcm_loop_field_qualify_MplsLabel2Exp_get( 26605 int unit, 26606 bcm_field_entry_t entry, 26607 uint8 * data, 26608 uint8 * mask) 26609 { 26610 return bcm_field_qualify_MplsLabel2Exp_get( 26611 BCM_CONTROL(unit)->unit, 26612 entry, 26613 data, 26614 mask); 26615 } 26616 26617 int 26618 bcm_loop_field_qualify_MplsLabel2Hit( 26619 int unit, 26620 bcm_field_entry_t entry, 26621 uint8 data, 26622 uint8 mask) 26623 { 26624 return bcm_field_qualify_MplsLabel2Hit( 26625 BCM_CONTROL(unit)->unit, 26626 entry, 26627 data, 26628 mask); 26629 } 26630 26631 int 26632 bcm_loop_field_qualify_MplsLabel2Hit_get( 26633 int unit, 26634 bcm_field_entry_t entry, 26635 uint8 * data, 26636 uint8 * mask) 26637 { 26638 return bcm_field_qualify_MplsLabel2Hit_get( 26639 BCM_CONTROL(unit)->unit, 26640 entry, 26641 data, 26642 mask); 26643 } 26644 26645 int 26646 bcm_loop_field_qualify_MplsLabel2Id( 26647 int unit, 26648 bcm_field_entry_t entry, 26649 uint32 data, 26650 uint32 mask) 26651 { 26652 return bcm_field_qualify_MplsLabel2Id( 26653 BCM_CONTROL(unit)->unit, 26654 entry, 26655 data, 26656 mask); 26657 } 26658 26659 int 26660 bcm_loop_field_qualify_MplsLabel2Id_get( 26661 int unit, 26662 bcm_field_entry_t entry, 26663 uint32 * data, 26664 uint32 * mask) 26665 { 26666 return bcm_field_qualify_MplsLabel2Id_get( 26667 BCM_CONTROL(unit)->unit, 26668 entry, 26669 data, 26670 mask); 26671 } 26672 26673 int 26674 bcm_loop_field_qualify_MplsLabel2Ttl( 26675 int unit, 26676 bcm_field_entry_t entry, 26677 uint8 data, 26678 uint8 mask) 26679 { 26680 return bcm_field_qualify_MplsLabel2Ttl( 26681 BCM_CONTROL(unit)->unit, 26682 entry, 26683 data, 26684 mask); 26685 } 26686 26687 int 26688 bcm_loop_field_qualify_MplsLabel2Ttl_get( 26689 int unit, 26690 bcm_field_entry_t entry, 26691 uint8 * data, 26692 uint8 * mask) 26693 { 26694 return bcm_field_qualify_MplsLabel2Ttl_get( 26695 BCM_CONTROL(unit)->unit, 26696 entry, 26697 data, 26698 mask); 26699 } 26700 26701 int 26702 bcm_loop_field_qualify_MplsLabel2_get( 26703 int unit, 26704 bcm_field_entry_t entry, 26705 uint32 * data, 26706 uint32 * mask) 26707 { 26708 return bcm_field_qualify_MplsLabel2_get( 26709 BCM_CONTROL(unit)->unit, 26710 entry, 26711 data, 26712 mask); 26713 } 26714 26715 int 26716 bcm_loop_field_qualify_MplsLabel3( 26717 int unit, 26718 bcm_field_entry_t entry, 26719 uint32 data, 26720 uint32 mask) 26721 { 26722 return bcm_field_qualify_MplsLabel3( 26723 BCM_CONTROL(unit)->unit, 26724 entry, 26725 data, 26726 mask); 26727 } 26728 26729 int 26730 bcm_loop_field_qualify_MplsLabel3Bos( 26731 int unit, 26732 bcm_field_entry_t entry, 26733 uint8 data, 26734 uint8 mask) 26735 { 26736 return bcm_field_qualify_MplsLabel3Bos( 26737 BCM_CONTROL(unit)->unit, 26738 entry, 26739 data, 26740 mask); 26741 } 26742 26743 int 26744 bcm_loop_field_qualify_MplsLabel3Bos_get( 26745 int unit, 26746 bcm_field_entry_t entry, 26747 uint8 * data, 26748 uint8 * mask) 26749 { 26750 return bcm_field_qualify_MplsLabel3Bos_get( 26751 BCM_CONTROL(unit)->unit, 26752 entry, 26753 data, 26754 mask); 26755 } 26756 26757 int 26758 bcm_loop_field_qualify_MplsLabel3Exp( 26759 int unit, 26760 bcm_field_entry_t entry, 26761 uint8 data, 26762 uint8 mask) 26763 { 26764 return bcm_field_qualify_MplsLabel3Exp( 26765 BCM_CONTROL(unit)->unit, 26766 entry, 26767 data, 26768 mask); 26769 } 26770 26771 int 26772 bcm_loop_field_qualify_MplsLabel3Exp_get( 26773 int unit, 26774 bcm_field_entry_t entry, 26775 uint8 * data, 26776 uint8 * mask) 26777 { 26778 return bcm_field_qualify_MplsLabel3Exp_get( 26779 BCM_CONTROL(unit)->unit, 26780 entry, 26781 data, 26782 mask); 26783 } 26784 26785 int 26786 bcm_loop_field_qualify_MplsLabel3Id( 26787 int unit, 26788 bcm_field_entry_t entry, 26789 uint32 data, 26790 uint32 mask) 26791 { 26792 return bcm_field_qualify_MplsLabel3Id( 26793 BCM_CONTROL(unit)->unit, 26794 entry, 26795 data, 26796 mask); 26797 } 26798 26799 int 26800 bcm_loop_field_qualify_MplsLabel3Id_get( 26801 int unit, 26802 bcm_field_entry_t entry, 26803 uint32 * data, 26804 uint32 * mask) 26805 { 26806 return bcm_field_qualify_MplsLabel3Id_get( 26807 BCM_CONTROL(unit)->unit, 26808 entry, 26809 data, 26810 mask); 26811 } 26812 26813 int 26814 bcm_loop_field_qualify_MplsLabel3Ttl( 26815 int unit, 26816 bcm_field_entry_t entry, 26817 uint8 data, 26818 uint8 mask) 26819 { 26820 return bcm_field_qualify_MplsLabel3Ttl( 26821 BCM_CONTROL(unit)->unit, 26822 entry, 26823 data, 26824 mask); 26825 } 26826 26827 int 26828 bcm_loop_field_qualify_MplsLabel3Ttl_get( 26829 int unit, 26830 bcm_field_entry_t entry, 26831 uint8 * data, 26832 uint8 * mask) 26833 { 26834 return bcm_field_qualify_MplsLabel3Ttl_get( 26835 BCM_CONTROL(unit)->unit, 26836 entry, 26837 data, 26838 mask); 26839 } 26840 26841 int 26842 bcm_loop_field_qualify_MplsLabel3_get( 26843 int unit, 26844 bcm_field_entry_t entry, 26845 uint32 * data, 26846 uint32 * mask) 26847 { 26848 return bcm_field_qualify_MplsLabel3_get( 26849 BCM_CONTROL(unit)->unit, 26850 entry, 26851 data, 26852 mask); 26853 } 26854 26855 int 26856 bcm_loop_field_qualify_MplsMcastEthertypePresent( 26857 int unit, 26858 bcm_field_entry_t entry, 26859 uint8 data, 26860 uint8 mask) 26861 { 26862 return bcm_field_qualify_MplsMcastEthertypePresent( 26863 BCM_CONTROL(unit)->unit, 26864 entry, 26865 data, 26866 mask); 26867 } 26868 26869 int 26870 bcm_loop_field_qualify_MplsMcastEthertypePresent_get( 26871 int unit, 26872 bcm_field_entry_t entry, 26873 uint8 * data, 26874 uint8 * mask) 26875 { 26876 return bcm_field_qualify_MplsMcastEthertypePresent_get( 26877 BCM_CONTROL(unit)->unit, 26878 entry, 26879 data, 26880 mask); 26881 } 26882 26883 int 26884 bcm_loop_field_qualify_MplsOamACH( 26885 int unit, 26886 bcm_field_entry_t entry, 26887 uint32 data, 26888 uint32 mask) 26889 { 26890 return bcm_field_qualify_MplsOamACH( 26891 BCM_CONTROL(unit)->unit, 26892 entry, 26893 data, 26894 mask); 26895 } 26896 26897 int 26898 bcm_loop_field_qualify_MplsOamACH_get( 26899 int unit, 26900 bcm_field_entry_t entry, 26901 uint32 * data, 26902 uint32 * mask) 26903 { 26904 return bcm_field_qualify_MplsOamACH_get( 26905 BCM_CONTROL(unit)->unit, 26906 entry, 26907 data, 26908 mask); 26909 } 26910 26911 int 26912 bcm_loop_field_qualify_MplsOamClassMplsSwitchLabel( 26913 int unit, 26914 bcm_field_entry_t entry, 26915 uint16 data, 26916 uint16 mask) 26917 { 26918 return bcm_field_qualify_MplsOamClassMplsSwitchLabel( 26919 BCM_CONTROL(unit)->unit, 26920 entry, 26921 data, 26922 mask); 26923 } 26924 26925 int 26926 bcm_loop_field_qualify_MplsOamClassMplsSwitchLabel_get( 26927 int unit, 26928 bcm_field_entry_t entry, 26929 uint16 * data, 26930 uint16 * mask) 26931 { 26932 return bcm_field_qualify_MplsOamClassMplsSwitchLabel_get( 26933 BCM_CONTROL(unit)->unit, 26934 entry, 26935 data, 26936 mask); 26937 } 26938 26939 int 26940 bcm_loop_field_qualify_MplsOamControlPktType( 26941 int unit, 26942 bcm_field_entry_t entry, 26943 bcm_field_MplsOam_Control_pktType_t data) 26944 { 26945 return bcm_field_qualify_MplsOamControlPktType( 26946 BCM_CONTROL(unit)->unit, 26947 entry, 26948 data); 26949 } 26950 26951 int 26952 bcm_loop_field_qualify_MplsOamControlPktType_get( 26953 int unit, 26954 bcm_field_entry_t entry, 26955 bcm_field_MplsOam_Control_pktType_t * data) 26956 { 26957 return bcm_field_qualify_MplsOamControlPktType_get( 26958 BCM_CONTROL(unit)->unit, 26959 entry, 26960 data); 26961 } 26962 26963 int 26964 bcm_loop_field_qualify_MplsOamGALExposed( 26965 int unit, 26966 bcm_field_entry_t entry, 26967 uint8 data, 26968 uint8 mask) 26969 { 26970 return bcm_field_qualify_MplsOamGALExposed( 26971 BCM_CONTROL(unit)->unit, 26972 entry, 26973 data, 26974 mask); 26975 } 26976 26977 int 26978 bcm_loop_field_qualify_MplsOamGALExposed_get( 26979 int unit, 26980 bcm_field_entry_t entry, 26981 uint8 * data, 26982 uint8 * mask) 26983 { 26984 return bcm_field_qualify_MplsOamGALExposed_get( 26985 BCM_CONTROL(unit)->unit, 26986 entry, 26987 data, 26988 mask); 26989 } 26990 26991 int 26992 bcm_loop_field_qualify_MplsOamGALLabelOnly( 26993 int unit, 26994 bcm_field_entry_t entry, 26995 uint8 data, 26996 uint8 mask) 26997 { 26998 return bcm_field_qualify_MplsOamGALLabelOnly( 26999 BCM_CONTROL(unit)->unit, 27000 entry, 27001 data, 27002 mask); 27003 } 27004 27005 int 27006 bcm_loop_field_qualify_MplsOamGALLabelOnly_get( 27007 int unit, 27008 bcm_field_entry_t entry, 27009 uint8 * data, 27010 uint8 * mask) 27011 { 27012 return bcm_field_qualify_MplsOamGALLabelOnly_get( 27013 BCM_CONTROL(unit)->unit, 27014 entry, 27015 data, 27016 mask); 27017 } 27018 27019 int 27020 bcm_loop_field_qualify_MplsOamHeaderBits0_31( 27021 int unit, 27022 bcm_field_entry_t entry, 27023 uint32 data, 27024 uint32 mask) 27025 { 27026 return bcm_field_qualify_MplsOamHeaderBits0_31( 27027 BCM_CONTROL(unit)->unit, 27028 entry, 27029 data, 27030 mask); 27031 } 27032 27033 int 27034 bcm_loop_field_qualify_MplsOamHeaderBits0_31_get( 27035 int unit, 27036 bcm_field_entry_t entry, 27037 uint32 * data, 27038 uint32 * mask) 27039 { 27040 return bcm_field_qualify_MplsOamHeaderBits0_31_get( 27041 BCM_CONTROL(unit)->unit, 27042 entry, 27043 data, 27044 mask); 27045 } 27046 27047 int 27048 bcm_loop_field_qualify_MplsOamHeaderBits32_63( 27049 int unit, 27050 bcm_field_entry_t entry, 27051 uint32 data, 27052 uint32 mask) 27053 { 27054 return bcm_field_qualify_MplsOamHeaderBits32_63( 27055 BCM_CONTROL(unit)->unit, 27056 entry, 27057 data, 27058 mask); 27059 } 27060 27061 int 27062 bcm_loop_field_qualify_MplsOamHeaderBits32_63_get( 27063 int unit, 27064 bcm_field_entry_t entry, 27065 uint32 * data, 27066 uint32 * mask) 27067 { 27068 return bcm_field_qualify_MplsOamHeaderBits32_63_get( 27069 BCM_CONTROL(unit)->unit, 27070 entry, 27071 data, 27072 mask); 27073 } 27074 27075 int 27076 bcm_loop_field_qualify_MplsOamUpperLabelDataDrop( 27077 int unit, 27078 bcm_field_entry_t entry, 27079 uint8 data, 27080 uint8 mask) 27081 { 27082 return bcm_field_qualify_MplsOamUpperLabelDataDrop( 27083 BCM_CONTROL(unit)->unit, 27084 entry, 27085 data, 27086 mask); 27087 } 27088 27089 int 27090 bcm_loop_field_qualify_MplsOamUpperLabelDataDrop_get( 27091 int unit, 27092 bcm_field_entry_t entry, 27093 uint8 * data, 27094 uint8 * mask) 27095 { 27096 return bcm_field_qualify_MplsOamUpperLabelDataDrop_get( 27097 BCM_CONTROL(unit)->unit, 27098 entry, 27099 data, 27100 mask); 27101 } 27102 27103 int 27104 bcm_loop_field_qualify_MplsOuterLabelPop( 27105 int unit, 27106 bcm_field_entry_t entry, 27107 uint8 data, 27108 uint8 mask) 27109 { 27110 return bcm_field_qualify_MplsOuterLabelPop( 27111 BCM_CONTROL(unit)->unit, 27112 entry, 27113 data, 27114 mask); 27115 } 27116 27117 int 27118 bcm_loop_field_qualify_MplsOuterLabelPop_get( 27119 int unit, 27120 bcm_field_entry_t entry, 27121 uint8 * data, 27122 uint8 * mask) 27123 { 27124 return bcm_field_qualify_MplsOuterLabelPop_get( 27125 BCM_CONTROL(unit)->unit, 27126 entry, 27127 data, 27128 mask); 27129 } 27130 27131 int 27132 bcm_loop_field_qualify_MplsStationHitTunnelUnterminated( 27133 int unit, 27134 bcm_field_entry_t entry, 27135 uint8 data, 27136 uint8 mask) 27137 { 27138 return bcm_field_qualify_MplsStationHitTunnelUnterminated( 27139 BCM_CONTROL(unit)->unit, 27140 entry, 27141 data, 27142 mask); 27143 } 27144 27145 int 27146 bcm_loop_field_qualify_MplsStationHitTunnelUnterminated_get( 27147 int unit, 27148 bcm_field_entry_t entry, 27149 uint8 * data, 27150 uint8 * mask) 27151 { 27152 return bcm_field_qualify_MplsStationHitTunnelUnterminated_get( 27153 BCM_CONTROL(unit)->unit, 27154 entry, 27155 data, 27156 mask); 27157 } 27158 27159 int 27160 bcm_loop_field_qualify_MplsTerminated( 27161 int unit, 27162 bcm_field_entry_t entry, 27163 uint8 data, 27164 uint8 mask) 27165 { 27166 return bcm_field_qualify_MplsTerminated( 27167 BCM_CONTROL(unit)->unit, 27168 entry, 27169 data, 27170 mask); 27171 } 27172 27173 int 27174 bcm_loop_field_qualify_MplsTerminatedHit( 27175 int unit, 27176 bcm_field_entry_t entry, 27177 uint8 data, 27178 uint8 mask) 27179 { 27180 return bcm_field_qualify_MplsTerminatedHit( 27181 BCM_CONTROL(unit)->unit, 27182 entry, 27183 data, 27184 mask); 27185 } 27186 27187 int 27188 bcm_loop_field_qualify_MplsTerminatedHit_get( 27189 int unit, 27190 bcm_field_entry_t entry, 27191 uint8 * data, 27192 uint8 * mask) 27193 { 27194 return bcm_field_qualify_MplsTerminatedHit_get( 27195 BCM_CONTROL(unit)->unit, 27196 entry, 27197 data, 27198 mask); 27199 } 27200 27201 int 27202 bcm_loop_field_qualify_MplsTerminatedValue( 27203 int unit, 27204 bcm_field_entry_t entry, 27205 uint64 data, 27206 uint64 mask) 27207 { 27208 return bcm_field_qualify_MplsTerminatedValue( 27209 BCM_CONTROL(unit)->unit, 27210 entry, 27211 data, 27212 mask); 27213 } 27214 27215 int 27216 bcm_loop_field_qualify_MplsTerminatedValue_get( 27217 int unit, 27218 bcm_field_entry_t entry, 27219 uint64 * data, 27220 uint64 * mask) 27221 { 27222 return bcm_field_qualify_MplsTerminatedValue_get( 27223 BCM_CONTROL(unit)->unit, 27224 entry, 27225 data, 27226 mask); 27227 } 27228 27229 int 27230 bcm_loop_field_qualify_MplsTerminated_get( 27231 int unit, 27232 bcm_field_entry_t entry, 27233 uint8 * data, 27234 uint8 * mask) 27235 { 27236 return bcm_field_qualify_MplsTerminated_get( 27237 BCM_CONTROL(unit)->unit, 27238 entry, 27239 data, 27240 mask); 27241 } 27242 27243 int 27244 bcm_loop_field_qualify_MyStation2Hit( 27245 int unit, 27246 bcm_field_entry_t entry, 27247 uint8 data, 27248 uint8 mask) 27249 { 27250 return bcm_field_qualify_MyStation2Hit( 27251 BCM_CONTROL(unit)->unit, 27252 entry, 27253 data, 27254 mask); 27255 } 27256 27257 int 27258 bcm_loop_field_qualify_MyStation2Hit_get( 27259 int unit, 27260 bcm_field_entry_t entry, 27261 uint8 * data, 27262 uint8 * mask) 27263 { 27264 return bcm_field_qualify_MyStation2Hit_get( 27265 BCM_CONTROL(unit)->unit, 27266 entry, 27267 data, 27268 mask); 27269 } 27270 27271 int 27272 bcm_loop_field_qualify_MyStationHit( 27273 int unit, 27274 bcm_field_entry_t entry, 27275 uint8 data, 27276 uint8 mask) 27277 { 27278 return bcm_field_qualify_MyStationHit( 27279 BCM_CONTROL(unit)->unit, 27280 entry, 27281 data, 27282 mask); 27283 } 27284 27285 int 27286 bcm_loop_field_qualify_MyStationHit_get( 27287 int unit, 27288 bcm_field_entry_t entry, 27289 uint8 * data, 27290 uint8 * mask) 27291 { 27292 return bcm_field_qualify_MyStationHit_get( 27293 BCM_CONTROL(unit)->unit, 27294 entry, 27295 data, 27296 mask); 27297 } 27298 27299 int 27300 bcm_loop_field_qualify_NatDstRealmId( 27301 int unit, 27302 bcm_field_entry_t entry, 27303 uint8 data, 27304 uint8 mask) 27305 { 27306 return bcm_field_qualify_NatDstRealmId( 27307 BCM_CONTROL(unit)->unit, 27308 entry, 27309 data, 27310 mask); 27311 } 27312 27313 int 27314 bcm_loop_field_qualify_NatDstRealmId_get( 27315 int unit, 27316 bcm_field_entry_t entry, 27317 uint8 * data, 27318 uint8 * mask) 27319 { 27320 return bcm_field_qualify_NatDstRealmId_get( 27321 BCM_CONTROL(unit)->unit, 27322 entry, 27323 data, 27324 mask); 27325 } 27326 27327 int 27328 bcm_loop_field_qualify_NatNeeded( 27329 int unit, 27330 bcm_field_entry_t entry, 27331 uint8 data, 27332 uint8 mask) 27333 { 27334 return bcm_field_qualify_NatNeeded( 27335 BCM_CONTROL(unit)->unit, 27336 entry, 27337 data, 27338 mask); 27339 } 27340 27341 int 27342 bcm_loop_field_qualify_NatNeeded_get( 27343 int unit, 27344 bcm_field_entry_t entry, 27345 uint8 * data, 27346 uint8 * mask) 27347 { 27348 return bcm_field_qualify_NatNeeded_get( 27349 BCM_CONTROL(unit)->unit, 27350 entry, 27351 data, 27352 mask); 27353 } 27354 27355 int 27356 bcm_loop_field_qualify_NatSrcRealmId( 27357 int unit, 27358 bcm_field_entry_t entry, 27359 uint8 data, 27360 uint8 mask) 27361 { 27362 return bcm_field_qualify_NatSrcRealmId( 27363 BCM_CONTROL(unit)->unit, 27364 entry, 27365 data, 27366 mask); 27367 } 27368 27369 int 27370 bcm_loop_field_qualify_NatSrcRealmId_get( 27371 int unit, 27372 bcm_field_entry_t entry, 27373 uint8 * data, 27374 uint8 * mask) 27375 { 27376 return bcm_field_qualify_NatSrcRealmId_get( 27377 BCM_CONTROL(unit)->unit, 27378 entry, 27379 data, 27380 mask); 27381 } 27382 27383 int 27384 bcm_loop_field_qualify_NativeVSwitch( 27385 int unit, 27386 bcm_field_entry_t entry, 27387 bcm_vlan_t data, 27388 bcm_vlan_t mask) 27389 { 27390 return bcm_field_qualify_NativeVSwitch( 27391 BCM_CONTROL(unit)->unit, 27392 entry, 27393 data, 27394 mask); 27395 } 27396 27397 int 27398 bcm_loop_field_qualify_NativeVSwitchValid( 27399 int unit, 27400 bcm_field_entry_t entry, 27401 uint8 data, 27402 uint8 mask) 27403 { 27404 return bcm_field_qualify_NativeVSwitchValid( 27405 BCM_CONTROL(unit)->unit, 27406 entry, 27407 data, 27408 mask); 27409 } 27410 27411 int 27412 bcm_loop_field_qualify_NativeVSwitchValid_get( 27413 int unit, 27414 bcm_field_entry_t entry, 27415 uint8 * data, 27416 uint8 * mask) 27417 { 27418 return bcm_field_qualify_NativeVSwitchValid_get( 27419 BCM_CONTROL(unit)->unit, 27420 entry, 27421 data, 27422 mask); 27423 } 27424 27425 int 27426 bcm_loop_field_qualify_NativeVSwitch_get( 27427 int unit, 27428 bcm_field_entry_t entry, 27429 bcm_vlan_t * data, 27430 bcm_vlan_t * mask) 27431 { 27432 return bcm_field_qualify_NativeVSwitch_get( 27433 BCM_CONTROL(unit)->unit, 27434 entry, 27435 data, 27436 mask); 27437 } 27438 27439 int 27440 bcm_loop_field_qualify_NetworkTagMulticastPkt( 27441 int unit, 27442 bcm_field_entry_t entry, 27443 uint8 data, 27444 uint8 mask) 27445 { 27446 return bcm_field_qualify_NetworkTagMulticastPkt( 27447 BCM_CONTROL(unit)->unit, 27448 entry, 27449 data, 27450 mask); 27451 } 27452 27453 int 27454 bcm_loop_field_qualify_NetworkTagMulticastPkt_get( 27455 int unit, 27456 bcm_field_entry_t entry, 27457 uint8 * data, 27458 uint8 * mask) 27459 { 27460 return bcm_field_qualify_NetworkTagMulticastPkt_get( 27461 BCM_CONTROL(unit)->unit, 27462 entry, 27463 data, 27464 mask); 27465 } 27466 27467 int 27468 bcm_loop_field_qualify_NetworkTagType( 27469 int unit, 27470 bcm_field_entry_t entry, 27471 bcm_field_network_tag_type_t type) 27472 { 27473 return bcm_field_qualify_NetworkTagType( 27474 BCM_CONTROL(unit)->unit, 27475 entry, 27476 type); 27477 } 27478 27479 int 27480 bcm_loop_field_qualify_NetworkTagType_get( 27481 int unit, 27482 bcm_field_entry_t entry, 27483 bcm_field_network_tag_type_t * type) 27484 { 27485 return bcm_field_qualify_NetworkTagType_get( 27486 BCM_CONTROL(unit)->unit, 27487 entry, 27488 type); 27489 } 27490 27491 int 27492 bcm_loop_field_qualify_NshServiceIndex( 27493 int unit, 27494 bcm_field_entry_t entry, 27495 uint32 data, 27496 uint32 mask) 27497 { 27498 return bcm_field_qualify_NshServiceIndex( 27499 BCM_CONTROL(unit)->unit, 27500 entry, 27501 data, 27502 mask); 27503 } 27504 27505 int 27506 bcm_loop_field_qualify_NshServiceIndex_get( 27507 int unit, 27508 bcm_field_entry_t entry, 27509 uint32 * data, 27510 uint32 * mask) 27511 { 27512 return bcm_field_qualify_NshServiceIndex_get( 27513 BCM_CONTROL(unit)->unit, 27514 entry, 27515 data, 27516 mask); 27517 } 27518 27519 int 27520 bcm_loop_field_qualify_NshServicePathId( 27521 int unit, 27522 bcm_field_entry_t entry, 27523 uint32 data, 27524 uint32 mask) 27525 { 27526 return bcm_field_qualify_NshServicePathId( 27527 BCM_CONTROL(unit)->unit, 27528 entry, 27529 data, 27530 mask); 27531 } 27532 27533 int 27534 bcm_loop_field_qualify_NshServicePathId_get( 27535 int unit, 27536 bcm_field_entry_t entry, 27537 uint32 * data, 27538 uint32 * mask) 27539 { 27540 return bcm_field_qualify_NshServicePathId_get( 27541 BCM_CONTROL(unit)->unit, 27542 entry, 27543 data, 27544 mask); 27545 } 27546 27547 int 27548 bcm_loop_field_qualify_OamDownMEPLoopbackPacket( 27549 int unit, 27550 bcm_field_entry_t entry, 27551 uint8 data, 27552 uint8 mask) 27553 { 27554 return bcm_field_qualify_OamDownMEPLoopbackPacket( 27555 BCM_CONTROL(unit)->unit, 27556 entry, 27557 data, 27558 mask); 27559 } 27560 27561 int 27562 bcm_loop_field_qualify_OamDownMEPLoopbackPacket_get( 27563 int unit, 27564 bcm_field_entry_t entry, 27565 uint8 * data, 27566 uint8 * mask) 27567 { 27568 return bcm_field_qualify_OamDownMEPLoopbackPacket_get( 27569 BCM_CONTROL(unit)->unit, 27570 entry, 27571 data, 27572 mask); 27573 } 27574 27575 int 27576 bcm_loop_field_qualify_OamEgressClass2Vxlt( 27577 int unit, 27578 bcm_field_entry_t entry, 27579 uint32 data, 27580 uint32 mask) 27581 { 27582 return bcm_field_qualify_OamEgressClass2Vxlt( 27583 BCM_CONTROL(unit)->unit, 27584 entry, 27585 data, 27586 mask); 27587 } 27588 27589 int 27590 bcm_loop_field_qualify_OamEgressClass2Vxlt_get( 27591 int unit, 27592 bcm_field_entry_t entry, 27593 uint32 * data, 27594 uint32 * mask) 27595 { 27596 return bcm_field_qualify_OamEgressClass2Vxlt_get( 27597 BCM_CONTROL(unit)->unit, 27598 entry, 27599 data, 27600 mask); 27601 } 27602 27603 int 27604 bcm_loop_field_qualify_OamEgressClassPort( 27605 int unit, 27606 bcm_field_entry_t entry, 27607 uint16 data, 27608 uint16 mask) 27609 { 27610 return bcm_field_qualify_OamEgressClassPort( 27611 BCM_CONTROL(unit)->unit, 27612 entry, 27613 data, 27614 mask); 27615 } 27616 27617 int 27618 bcm_loop_field_qualify_OamEgressClassPort_get( 27619 int unit, 27620 bcm_field_entry_t entry, 27621 uint16 * data, 27622 uint16 * mask) 27623 { 27624 return bcm_field_qualify_OamEgressClassPort_get( 27625 BCM_CONTROL(unit)->unit, 27626 entry, 27627 data, 27628 mask); 27629 } 27630 27631 int 27632 bcm_loop_field_qualify_OamEgressClassSrcMac( 27633 int unit, 27634 bcm_field_entry_t entry, 27635 uint32 data, 27636 uint32 mask) 27637 { 27638 return bcm_field_qualify_OamEgressClassSrcMac( 27639 BCM_CONTROL(unit)->unit, 27640 entry, 27641 data, 27642 mask); 27643 } 27644 27645 int 27646 bcm_loop_field_qualify_OamEgressClassSrcMac_get( 27647 int unit, 27648 bcm_field_entry_t entry, 27649 uint32 * data, 27650 uint32 * mask) 27651 { 27652 return bcm_field_qualify_OamEgressClassSrcMac_get( 27653 BCM_CONTROL(unit)->unit, 27654 entry, 27655 data, 27656 mask); 27657 } 27658 27659 int 27660 bcm_loop_field_qualify_OamEgressClassVxlt( 27661 int unit, 27662 bcm_field_entry_t entry, 27663 uint16 data, 27664 uint16 mask) 27665 { 27666 return bcm_field_qualify_OamEgressClassVxlt( 27667 BCM_CONTROL(unit)->unit, 27668 entry, 27669 data, 27670 mask); 27671 } 27672 27673 int 27674 bcm_loop_field_qualify_OamEgressClassVxlt_get( 27675 int unit, 27676 bcm_field_entry_t entry, 27677 uint16 * data, 27678 uint16 * mask) 27679 { 27680 return bcm_field_qualify_OamEgressClassVxlt_get( 27681 BCM_CONTROL(unit)->unit, 27682 entry, 27683 data, 27684 mask); 27685 } 27686 27687 int 27688 bcm_loop_field_qualify_OamEgressEtherType( 27689 int unit, 27690 bcm_field_entry_t entry, 27691 uint16 data) 27692 { 27693 return bcm_field_qualify_OamEgressEtherType( 27694 BCM_CONTROL(unit)->unit, 27695 entry, 27696 data); 27697 } 27698 27699 int 27700 bcm_loop_field_qualify_OamEgressEtherType_get( 27701 int unit, 27702 bcm_field_entry_t entry, 27703 uint16 * data) 27704 { 27705 return bcm_field_qualify_OamEgressEtherType_get( 27706 BCM_CONTROL(unit)->unit, 27707 entry, 27708 data); 27709 } 27710 27711 int 27712 bcm_loop_field_qualify_OamEgressMulticastMacHit( 27713 int unit, 27714 bcm_field_entry_t entry, 27715 uint8 data) 27716 { 27717 return bcm_field_qualify_OamEgressMulticastMacHit( 27718 BCM_CONTROL(unit)->unit, 27719 entry, 27720 data); 27721 } 27722 27723 int 27724 bcm_loop_field_qualify_OamEgressMulticastMacHit_get( 27725 int unit, 27726 bcm_field_entry_t entry, 27727 uint8 * data) 27728 { 27729 return bcm_field_qualify_OamEgressMulticastMacHit_get( 27730 BCM_CONTROL(unit)->unit, 27731 entry, 27732 data); 27733 } 27734 27735 int 27736 bcm_loop_field_qualify_OamEgressPortUnicastDstMacHit( 27737 int unit, 27738 bcm_field_entry_t entry, 27739 uint8 data, 27740 uint8 mask) 27741 { 27742 return bcm_field_qualify_OamEgressPortUnicastDstMacHit( 27743 BCM_CONTROL(unit)->unit, 27744 entry, 27745 data, 27746 mask); 27747 } 27748 27749 int 27750 bcm_loop_field_qualify_OamEgressPortUnicastDstMacHit_get( 27751 int unit, 27752 bcm_field_entry_t entry, 27753 uint8 * data, 27754 uint8 * mask) 27755 { 27756 return bcm_field_qualify_OamEgressPortUnicastDstMacHit_get( 27757 BCM_CONTROL(unit)->unit, 27758 entry, 27759 data, 27760 mask); 27761 } 27762 27763 int 27764 bcm_loop_field_qualify_OamEgressVxltFirstHit( 27765 int unit, 27766 bcm_field_entry_t entry, 27767 uint8 data, 27768 uint8 mask) 27769 { 27770 return bcm_field_qualify_OamEgressVxltFirstHit( 27771 BCM_CONTROL(unit)->unit, 27772 entry, 27773 data, 27774 mask); 27775 } 27776 27777 int 27778 bcm_loop_field_qualify_OamEgressVxltFirstHit_get( 27779 int unit, 27780 bcm_field_entry_t entry, 27781 uint8 * data, 27782 uint8 * mask) 27783 { 27784 return bcm_field_qualify_OamEgressVxltFirstHit_get( 27785 BCM_CONTROL(unit)->unit, 27786 entry, 27787 data, 27788 mask); 27789 } 27790 27791 int 27792 bcm_loop_field_qualify_OamEgressVxltSecondHit( 27793 int unit, 27794 bcm_field_entry_t entry, 27795 uint8 data, 27796 uint8 mask) 27797 { 27798 return bcm_field_qualify_OamEgressVxltSecondHit( 27799 BCM_CONTROL(unit)->unit, 27800 entry, 27801 data, 27802 mask); 27803 } 27804 27805 int 27806 bcm_loop_field_qualify_OamEgressVxltSecondHit_get( 27807 int unit, 27808 bcm_field_entry_t entry, 27809 uint8 * data, 27810 uint8 * mask) 27811 { 27812 return bcm_field_qualify_OamEgressVxltSecondHit_get( 27813 BCM_CONTROL(unit)->unit, 27814 entry, 27815 data, 27816 mask); 27817 } 27818 27819 int 27820 bcm_loop_field_qualify_OamHeaderBits0_31( 27821 int unit, 27822 bcm_field_entry_t entry, 27823 uint32 data, 27824 uint32 mask) 27825 { 27826 return bcm_field_qualify_OamHeaderBits0_31( 27827 BCM_CONTROL(unit)->unit, 27828 entry, 27829 data, 27830 mask); 27831 } 27832 27833 int 27834 bcm_loop_field_qualify_OamHeaderBits0_31_get( 27835 int unit, 27836 bcm_field_entry_t entry, 27837 uint32 * data, 27838 uint32 * mask) 27839 { 27840 return bcm_field_qualify_OamHeaderBits0_31_get( 27841 BCM_CONTROL(unit)->unit, 27842 entry, 27843 data, 27844 mask); 27845 } 27846 27847 int 27848 bcm_loop_field_qualify_OamHeaderBits32_63( 27849 int unit, 27850 bcm_field_entry_t entry, 27851 uint32 data, 27852 uint32 mask) 27853 { 27854 return bcm_field_qualify_OamHeaderBits32_63( 27855 BCM_CONTROL(unit)->unit, 27856 entry, 27857 data, 27858 mask); 27859 } 27860 27861 int 27862 bcm_loop_field_qualify_OamHeaderBits32_63_get( 27863 int unit, 27864 bcm_field_entry_t entry, 27865 uint32 * data, 27866 uint32 * mask) 27867 { 27868 return bcm_field_qualify_OamHeaderBits32_63_get( 27869 BCM_CONTROL(unit)->unit, 27870 entry, 27871 data, 27872 mask); 27873 } 27874 27875 int 27876 bcm_loop_field_qualify_OamHeaderOffset( 27877 int unit, 27878 bcm_field_entry_t entry, 27879 uint32 data, 27880 uint32 mask) 27881 { 27882 return bcm_field_qualify_OamHeaderOffset( 27883 BCM_CONTROL(unit)->unit, 27884 entry, 27885 data, 27886 mask); 27887 } 27888 27889 int 27890 bcm_loop_field_qualify_OamHeaderOffset_get( 27891 int unit, 27892 bcm_field_entry_t entry, 27893 uint32 * data, 27894 uint32 * mask) 27895 { 27896 return bcm_field_qualify_OamHeaderOffset_get( 27897 BCM_CONTROL(unit)->unit, 27898 entry, 27899 data, 27900 mask); 27901 } 27902 27903 int 27904 bcm_loop_field_qualify_OamInLifId( 27905 int unit, 27906 bcm_field_entry_t entry, 27907 uint32 data, 27908 uint32 mask) 27909 { 27910 return bcm_field_qualify_OamInLifId( 27911 BCM_CONTROL(unit)->unit, 27912 entry, 27913 data, 27914 mask); 27915 } 27916 27917 int 27918 bcm_loop_field_qualify_OamInLifIdValid( 27919 int unit, 27920 bcm_field_entry_t entry, 27921 uint8 data, 27922 uint8 mask) 27923 { 27924 return bcm_field_qualify_OamInLifIdValid( 27925 BCM_CONTROL(unit)->unit, 27926 entry, 27927 data, 27928 mask); 27929 } 27930 27931 int 27932 bcm_loop_field_qualify_OamInLifIdValid_get( 27933 int unit, 27934 bcm_field_entry_t entry, 27935 uint8 * data, 27936 uint8 * mask) 27937 { 27938 return bcm_field_qualify_OamInLifIdValid_get( 27939 BCM_CONTROL(unit)->unit, 27940 entry, 27941 data, 27942 mask); 27943 } 27944 27945 int 27946 bcm_loop_field_qualify_OamInLifId_get( 27947 int unit, 27948 bcm_field_entry_t entry, 27949 uint32 * data, 27950 uint32 * mask) 27951 { 27952 return bcm_field_qualify_OamInLifId_get( 27953 BCM_CONTROL(unit)->unit, 27954 entry, 27955 data, 27956 mask); 27957 } 27958 27959 int 27960 bcm_loop_field_qualify_OamMdl( 27961 int unit, 27962 bcm_field_entry_t entry, 27963 uint8 data, 27964 uint8 mask) 27965 { 27966 return bcm_field_qualify_OamMdl( 27967 BCM_CONTROL(unit)->unit, 27968 entry, 27969 data, 27970 mask); 27971 } 27972 27973 int 27974 bcm_loop_field_qualify_OamMdl_get( 27975 int unit, 27976 bcm_field_entry_t entry, 27977 uint8 * data, 27978 uint8 * mask) 27979 { 27980 return bcm_field_qualify_OamMdl_get( 27981 BCM_CONTROL(unit)->unit, 27982 entry, 27983 data, 27984 mask); 27985 } 27986 27987 int 27988 bcm_loop_field_qualify_OamMepId( 27989 int unit, 27990 bcm_field_entry_t entry, 27991 uint32 data, 27992 uint32 mask) 27993 { 27994 return bcm_field_qualify_OamMepId( 27995 BCM_CONTROL(unit)->unit, 27996 entry, 27997 data, 27998 mask); 27999 } 28000 28001 int 28002 bcm_loop_field_qualify_OamMepId_get( 28003 int unit, 28004 bcm_field_entry_t entry, 28005 uint32 * data, 28006 uint32 * mask) 28007 { 28008 return bcm_field_qualify_OamMepId_get( 28009 BCM_CONTROL(unit)->unit, 28010 entry, 28011 data, 28012 mask); 28013 } 28014 28015 int 28016 bcm_loop_field_qualify_OamMeterDisable( 28017 int unit, 28018 bcm_field_entry_t entry, 28019 uint8 data, 28020 uint8 mask) 28021 { 28022 return bcm_field_qualify_OamMeterDisable( 28023 BCM_CONTROL(unit)->unit, 28024 entry, 28025 data, 28026 mask); 28027 } 28028 28029 int 28030 bcm_loop_field_qualify_OamMeterDisable_get( 28031 int unit, 28032 bcm_field_entry_t entry, 28033 uint8 * data, 28034 uint8 * mask) 28035 { 28036 return bcm_field_qualify_OamMeterDisable_get( 28037 BCM_CONTROL(unit)->unit, 28038 entry, 28039 data, 28040 mask); 28041 } 28042 28043 int 28044 bcm_loop_field_qualify_OamStampOffset( 28045 int unit, 28046 bcm_field_entry_t entry, 28047 uint32 data, 28048 uint32 mask) 28049 { 28050 return bcm_field_qualify_OamStampOffset( 28051 BCM_CONTROL(unit)->unit, 28052 entry, 28053 data, 28054 mask); 28055 } 28056 28057 int 28058 bcm_loop_field_qualify_OamStampOffset_get( 28059 int unit, 28060 bcm_field_entry_t entry, 28061 uint32 * data, 28062 uint32 * mask) 28063 { 28064 return bcm_field_qualify_OamStampOffset_get( 28065 BCM_CONTROL(unit)->unit, 28066 entry, 28067 data, 28068 mask); 28069 } 28070 28071 int 28072 bcm_loop_field_qualify_OamSubtype( 28073 int unit, 28074 bcm_field_entry_t entry, 28075 uint8 data, 28076 uint8 mask) 28077 { 28078 return bcm_field_qualify_OamSubtype( 28079 BCM_CONTROL(unit)->unit, 28080 entry, 28081 data, 28082 mask); 28083 } 28084 28085 int 28086 bcm_loop_field_qualify_OamSubtype_get( 28087 int unit, 28088 bcm_field_entry_t entry, 28089 uint8 * data, 28090 uint8 * mask) 28091 { 28092 return bcm_field_qualify_OamSubtype_get( 28093 BCM_CONTROL(unit)->unit, 28094 entry, 28095 data, 28096 mask); 28097 } 28098 28099 int 28100 bcm_loop_field_qualify_OamTsSystemHeader( 28101 int unit, 28102 bcm_field_entry_t entry, 28103 uint64 data, 28104 uint64 mask) 28105 { 28106 return bcm_field_qualify_OamTsSystemHeader( 28107 BCM_CONTROL(unit)->unit, 28108 entry, 28109 data, 28110 mask); 28111 } 28112 28113 int 28114 bcm_loop_field_qualify_OamTsSystemHeader_get( 28115 int unit, 28116 bcm_field_entry_t entry, 28117 uint64 * data, 28118 uint64 * mask) 28119 { 28120 return bcm_field_qualify_OamTsSystemHeader_get( 28121 BCM_CONTROL(unit)->unit, 28122 entry, 28123 data, 28124 mask); 28125 } 28126 28127 int 28128 bcm_loop_field_qualify_OamType( 28129 int unit, 28130 bcm_field_entry_t entry, 28131 bcm_field_oam_type_t oam_type) 28132 { 28133 return bcm_field_qualify_OamType( 28134 BCM_CONTROL(unit)->unit, 28135 entry, 28136 oam_type); 28137 } 28138 28139 int 28140 bcm_loop_field_qualify_OamType_get( 28141 int unit, 28142 bcm_field_entry_t entry, 28143 bcm_field_oam_type_t * oam_type) 28144 { 28145 return bcm_field_qualify_OamType_get( 28146 BCM_CONTROL(unit)->unit, 28147 entry, 28148 oam_type); 28149 } 28150 28151 int 28152 bcm_loop_field_qualify_OamUpMep( 28153 int unit, 28154 bcm_field_entry_t entry, 28155 uint8 data, 28156 uint8 mask) 28157 { 28158 return bcm_field_qualify_OamUpMep( 28159 BCM_CONTROL(unit)->unit, 28160 entry, 28161 data, 28162 mask); 28163 } 28164 28165 int 28166 bcm_loop_field_qualify_OamUpMep_get( 28167 int unit, 28168 bcm_field_entry_t entry, 28169 uint8 * data, 28170 uint8 * mask) 28171 { 28172 return bcm_field_qualify_OamUpMep_get( 28173 BCM_CONTROL(unit)->unit, 28174 entry, 28175 data, 28176 mask); 28177 } 28178 28179 int 28180 bcm_loop_field_qualify_OpaqueObject1( 28181 int unit, 28182 bcm_field_entry_t entry, 28183 uint16 data, 28184 uint16 mask) 28185 { 28186 return bcm_field_qualify_OpaqueObject1( 28187 BCM_CONTROL(unit)->unit, 28188 entry, 28189 data, 28190 mask); 28191 } 28192 28193 int 28194 bcm_loop_field_qualify_OpaqueObject1_get( 28195 int unit, 28196 bcm_field_entry_t entry, 28197 uint16 * data, 28198 uint16 * mask) 28199 { 28200 return bcm_field_qualify_OpaqueObject1_get( 28201 BCM_CONTROL(unit)->unit, 28202 entry, 28203 data, 28204 mask); 28205 } 28206 28207 int 28208 bcm_loop_field_qualify_OpaqueObject2( 28209 int unit, 28210 bcm_field_entry_t entry, 28211 uint16 data, 28212 uint16 mask) 28213 { 28214 return bcm_field_qualify_OpaqueObject2( 28215 BCM_CONTROL(unit)->unit, 28216 entry, 28217 data, 28218 mask); 28219 } 28220 28221 int 28222 bcm_loop_field_qualify_OpaqueObject2_get( 28223 int unit, 28224 bcm_field_entry_t entry, 28225 uint16 * data, 28226 uint16 * mask) 28227 { 28228 return bcm_field_qualify_OpaqueObject2_get( 28229 BCM_CONTROL(unit)->unit, 28230 entry, 28231 data, 28232 mask); 28233 } 28234 28235 int 28236 bcm_loop_field_qualify_OpaqueObject3( 28237 int unit, 28238 bcm_field_entry_t entry, 28239 uint16 data, 28240 uint16 mask) 28241 { 28242 return bcm_field_qualify_OpaqueObject3( 28243 BCM_CONTROL(unit)->unit, 28244 entry, 28245 data, 28246 mask); 28247 } 28248 28249 int 28250 bcm_loop_field_qualify_OpaqueObject3_get( 28251 int unit, 28252 bcm_field_entry_t entry, 28253 uint16 * data, 28254 uint16 * mask) 28255 { 28256 return bcm_field_qualify_OpaqueObject3_get( 28257 BCM_CONTROL(unit)->unit, 28258 entry, 28259 data, 28260 mask); 28261 } 28262 28263 int 28264 bcm_loop_field_qualify_OpaqueObject4( 28265 int unit, 28266 bcm_field_entry_t entry, 28267 uint16 data, 28268 uint16 mask) 28269 { 28270 return bcm_field_qualify_OpaqueObject4( 28271 BCM_CONTROL(unit)->unit, 28272 entry, 28273 data, 28274 mask); 28275 } 28276 28277 int 28278 bcm_loop_field_qualify_OpaqueObject4_get( 28279 int unit, 28280 bcm_field_entry_t entry, 28281 uint16 * data, 28282 uint16 * mask) 28283 { 28284 return bcm_field_qualify_OpaqueObject4_get( 28285 BCM_CONTROL(unit)->unit, 28286 entry, 28287 data, 28288 mask); 28289 } 28290 28291 int 28292 bcm_loop_field_qualify_OpaqueTagHigh( 28293 int unit, 28294 bcm_field_entry_t entry, 28295 uint32 data, 28296 uint32 mask) 28297 { 28298 return bcm_field_qualify_OpaqueTagHigh( 28299 BCM_CONTROL(unit)->unit, 28300 entry, 28301 data, 28302 mask); 28303 } 28304 28305 int 28306 bcm_loop_field_qualify_OpaqueTagHigh_get( 28307 int unit, 28308 bcm_field_entry_t entry, 28309 uint32 * data, 28310 uint32 * mask) 28311 { 28312 return bcm_field_qualify_OpaqueTagHigh_get( 28313 BCM_CONTROL(unit)->unit, 28314 entry, 28315 data, 28316 mask); 28317 } 28318 28319 int 28320 bcm_loop_field_qualify_OpaqueTagLow( 28321 int unit, 28322 bcm_field_entry_t entry, 28323 uint32 data, 28324 uint32 mask) 28325 { 28326 return bcm_field_qualify_OpaqueTagLow( 28327 BCM_CONTROL(unit)->unit, 28328 entry, 28329 data, 28330 mask); 28331 } 28332 28333 int 28334 bcm_loop_field_qualify_OpaqueTagLow_get( 28335 int unit, 28336 bcm_field_entry_t entry, 28337 uint32 * data, 28338 uint32 * mask) 28339 { 28340 return bcm_field_qualify_OpaqueTagLow_get( 28341 BCM_CONTROL(unit)->unit, 28342 entry, 28343 data, 28344 mask); 28345 } 28346 28347 int 28348 bcm_loop_field_qualify_OpaqueTagType( 28349 int unit, 28350 bcm_field_entry_t entry, 28351 uint8 data, 28352 uint8 mask) 28353 { 28354 return bcm_field_qualify_OpaqueTagType( 28355 BCM_CONTROL(unit)->unit, 28356 entry, 28357 data, 28358 mask); 28359 } 28360 28361 int 28362 bcm_loop_field_qualify_OpaqueTagType_get( 28363 int unit, 28364 bcm_field_entry_t entry, 28365 uint8 * data, 28366 uint8 * mask) 28367 { 28368 return bcm_field_qualify_OpaqueTagType_get( 28369 BCM_CONTROL(unit)->unit, 28370 entry, 28371 data, 28372 mask); 28373 } 28374 28375 int 28376 bcm_loop_field_qualify_OutPort( 28377 int unit, 28378 bcm_field_entry_t entry, 28379 bcm_port_t data, 28380 bcm_port_t mask) 28381 { 28382 return bcm_field_qualify_OutPort( 28383 BCM_CONTROL(unit)->unit, 28384 entry, 28385 data, 28386 mask); 28387 } 28388 28389 int 28390 bcm_loop_field_qualify_OutPort_get( 28391 int unit, 28392 bcm_field_entry_t entry, 28393 bcm_port_t * data, 28394 bcm_port_t * mask) 28395 { 28396 return bcm_field_qualify_OutPort_get( 28397 BCM_CONTROL(unit)->unit, 28398 entry, 28399 data, 28400 mask); 28401 } 28402 28403 int 28404 bcm_loop_field_qualify_OutPorts( 28405 int unit, 28406 bcm_field_entry_t entry, 28407 bcm_pbmp_t data, 28408 bcm_pbmp_t mask) 28409 { 28410 return bcm_field_qualify_OutPorts( 28411 BCM_CONTROL(unit)->unit, 28412 entry, 28413 data, 28414 mask); 28415 } 28416 28417 int 28418 bcm_loop_field_qualify_OutPorts_get( 28419 int unit, 28420 bcm_field_entry_t entry, 28421 bcm_pbmp_t * data, 28422 bcm_pbmp_t * mask) 28423 { 28424 return bcm_field_qualify_OutPorts_get( 28425 BCM_CONTROL(unit)->unit, 28426 entry, 28427 data, 28428 mask); 28429 } 28430 28431 int 28432 bcm_loop_field_qualify_OutVPort( 28433 int unit, 28434 bcm_field_entry_t entry, 28435 uint8 data, 28436 uint8 mask) 28437 { 28438 return bcm_field_qualify_OutVPort( 28439 BCM_CONTROL(unit)->unit, 28440 entry, 28441 data, 28442 mask); 28443 } 28444 28445 int 28446 bcm_loop_field_qualify_OutVPort32( 28447 int unit, 28448 bcm_field_entry_t entry, 28449 uint32 data, 28450 uint32 mask) 28451 { 28452 return bcm_field_qualify_OutVPort32( 28453 BCM_CONTROL(unit)->unit, 28454 entry, 28455 data, 28456 mask); 28457 } 28458 28459 int 28460 bcm_loop_field_qualify_OutVPort32_get( 28461 int unit, 28462 bcm_field_entry_t entry, 28463 uint32 * data, 28464 uint32 * mask) 28465 { 28466 return bcm_field_qualify_OutVPort32_get( 28467 BCM_CONTROL(unit)->unit, 28468 entry, 28469 data, 28470 mask); 28471 } 28472 28473 int 28474 bcm_loop_field_qualify_OutVPort_get( 28475 int unit, 28476 bcm_field_entry_t entry, 28477 uint8 * data, 28478 uint8 * mask) 28479 { 28480 return bcm_field_qualify_OutVPort_get( 28481 BCM_CONTROL(unit)->unit, 28482 entry, 28483 data, 28484 mask); 28485 } 28486 28487 int 28488 bcm_loop_field_qualify_OuterPriTaggedPkt( 28489 int unit, 28490 bcm_field_entry_t entry, 28491 uint8 data, 28492 uint8 mask) 28493 { 28494 return bcm_field_qualify_OuterPriTaggedPkt( 28495 BCM_CONTROL(unit)->unit, 28496 entry, 28497 data, 28498 mask); 28499 } 28500 28501 int 28502 bcm_loop_field_qualify_OuterPriTaggedPkt_get( 28503 int unit, 28504 bcm_field_entry_t entry, 28505 uint8 * data, 28506 uint8 * mask) 28507 { 28508 return bcm_field_qualify_OuterPriTaggedPkt_get( 28509 BCM_CONTROL(unit)->unit, 28510 entry, 28511 data, 28512 mask); 28513 } 28514 28515 int 28516 bcm_loop_field_qualify_OuterTpid( 28517 int unit, 28518 bcm_field_entry_t entry, 28519 uint16 tpid) 28520 { 28521 return bcm_field_qualify_OuterTpid( 28522 BCM_CONTROL(unit)->unit, 28523 entry, 28524 tpid); 28525 } 28526 28527 int 28528 bcm_loop_field_qualify_OuterTpid_get( 28529 int unit, 28530 bcm_field_entry_t entry, 28531 uint16 * tpid) 28532 { 28533 return bcm_field_qualify_OuterTpid_get( 28534 BCM_CONTROL(unit)->unit, 28535 entry, 28536 tpid); 28537 } 28538 28539 int 28540 bcm_loop_field_qualify_OuterVlan( 28541 int unit, 28542 bcm_field_entry_t entry, 28543 bcm_vlan_t data, 28544 bcm_vlan_t mask) 28545 { 28546 return bcm_field_qualify_OuterVlan( 28547 BCM_CONTROL(unit)->unit, 28548 entry, 28549 data, 28550 mask); 28551 } 28552 28553 int 28554 bcm_loop_field_qualify_OuterVlanActionRange( 28555 int unit, 28556 bcm_field_entry_t entry, 28557 bcm_vlan_t data, 28558 bcm_vlan_t mask) 28559 { 28560 return bcm_field_qualify_OuterVlanActionRange( 28561 BCM_CONTROL(unit)->unit, 28562 entry, 28563 data, 28564 mask); 28565 } 28566 28567 int 28568 bcm_loop_field_qualify_OuterVlanActionRange_get( 28569 int unit, 28570 bcm_field_entry_t entry, 28571 bcm_vlan_t * data, 28572 bcm_vlan_t * mask) 28573 { 28574 return bcm_field_qualify_OuterVlanActionRange_get( 28575 BCM_CONTROL(unit)->unit, 28576 entry, 28577 data, 28578 mask); 28579 } 28580 28581 int 28582 bcm_loop_field_qualify_OuterVlanCfi( 28583 int unit, 28584 bcm_field_entry_t entry, 28585 uint8 data, 28586 uint8 mask) 28587 { 28588 return bcm_field_qualify_OuterVlanCfi( 28589 BCM_CONTROL(unit)->unit, 28590 entry, 28591 data, 28592 mask); 28593 } 28594 28595 int 28596 bcm_loop_field_qualify_OuterVlanCfi_get( 28597 int unit, 28598 bcm_field_entry_t entry, 28599 uint8 * data, 28600 uint8 * mask) 28601 { 28602 return bcm_field_qualify_OuterVlanCfi_get( 28603 BCM_CONTROL(unit)->unit, 28604 entry, 28605 data, 28606 mask); 28607 } 28608 28609 int 28610 bcm_loop_field_qualify_OuterVlanId( 28611 int unit, 28612 bcm_field_entry_t entry, 28613 bcm_vlan_t data, 28614 bcm_vlan_t mask) 28615 { 28616 return bcm_field_qualify_OuterVlanId( 28617 BCM_CONTROL(unit)->unit, 28618 entry, 28619 data, 28620 mask); 28621 } 28622 28623 int 28624 bcm_loop_field_qualify_OuterVlanId_get( 28625 int unit, 28626 bcm_field_entry_t entry, 28627 bcm_vlan_t * data, 28628 bcm_vlan_t * mask) 28629 { 28630 return bcm_field_qualify_OuterVlanId_get( 28631 BCM_CONTROL(unit)->unit, 28632 entry, 28633 data, 28634 mask); 28635 } 28636 28637 int 28638 bcm_loop_field_qualify_OuterVlanPri( 28639 int unit, 28640 bcm_field_entry_t entry, 28641 uint8 data, 28642 uint8 mask) 28643 { 28644 return bcm_field_qualify_OuterVlanPri( 28645 BCM_CONTROL(unit)->unit, 28646 entry, 28647 data, 28648 mask); 28649 } 28650 28651 int 28652 bcm_loop_field_qualify_OuterVlanPriCfi( 28653 int unit, 28654 bcm_field_entry_t entry, 28655 uint8 data, 28656 uint8 mask) 28657 { 28658 return bcm_field_qualify_OuterVlanPriCfi( 28659 BCM_CONTROL(unit)->unit, 28660 entry, 28661 data, 28662 mask); 28663 } 28664 28665 int 28666 bcm_loop_field_qualify_OuterVlanPriCfi_get( 28667 int unit, 28668 bcm_field_entry_t entry, 28669 uint8 * data, 28670 uint8 * mask) 28671 { 28672 return bcm_field_qualify_OuterVlanPriCfi_get( 28673 BCM_CONTROL(unit)->unit, 28674 entry, 28675 data, 28676 mask); 28677 } 28678 28679 int 28680 bcm_loop_field_qualify_OuterVlanPri_get( 28681 int unit, 28682 bcm_field_entry_t entry, 28683 uint8 * data, 28684 uint8 * mask) 28685 { 28686 return bcm_field_qualify_OuterVlanPri_get( 28687 BCM_CONTROL(unit)->unit, 28688 entry, 28689 data, 28690 mask); 28691 } 28692 28693 int 28694 bcm_loop_field_qualify_OuterVlan_get( 28695 int unit, 28696 bcm_field_entry_t entry, 28697 bcm_vlan_t * data, 28698 bcm_vlan_t * mask) 28699 { 28700 return bcm_field_qualify_OuterVlan_get( 28701 BCM_CONTROL(unit)->unit, 28702 entry, 28703 data, 28704 mask); 28705 } 28706 28707 int 28708 bcm_loop_field_qualify_OverlayIpv4OptionHdrType( 28709 int unit, 28710 bcm_field_entry_t entry, 28711 bcm_field_ip_option_hdr_type_t type) 28712 { 28713 return bcm_field_qualify_OverlayIpv4OptionHdrType( 28714 BCM_CONTROL(unit)->unit, 28715 entry, 28716 type); 28717 } 28718 28719 int 28720 bcm_loop_field_qualify_OverlayIpv4OptionHdrType_get( 28721 int unit, 28722 bcm_field_entry_t entry, 28723 bcm_field_ip_option_hdr_type_t * type) 28724 { 28725 return bcm_field_qualify_OverlayIpv4OptionHdrType_get( 28726 BCM_CONTROL(unit)->unit, 28727 entry, 28728 type); 28729 } 28730 28731 int 28732 bcm_loop_field_qualify_OverlayIpv6ExtensionHdrType( 28733 int unit, 28734 bcm_field_entry_t entry, 28735 bcm_field_ip_option_hdr_type_t type) 28736 { 28737 return bcm_field_qualify_OverlayIpv6ExtensionHdrType( 28738 BCM_CONTROL(unit)->unit, 28739 entry, 28740 type); 28741 } 28742 28743 int 28744 bcm_loop_field_qualify_OverlayIpv6ExtensionHdrType_get( 28745 int unit, 28746 bcm_field_entry_t entry, 28747 bcm_field_ip_option_hdr_type_t * type) 28748 { 28749 return bcm_field_qualify_OverlayIpv6ExtensionHdrType_get( 28750 BCM_CONTROL(unit)->unit, 28751 entry, 28752 type); 28753 } 28754 28755 int 28756 bcm_loop_field_qualify_OverlayL2PktType( 28757 int unit, 28758 bcm_field_entry_t entry, 28759 bcm_field_l2_pkt_type_t type) 28760 { 28761 return bcm_field_qualify_OverlayL2PktType( 28762 BCM_CONTROL(unit)->unit, 28763 entry, 28764 type); 28765 } 28766 28767 int 28768 bcm_loop_field_qualify_OverlayL2PktType_get( 28769 int unit, 28770 bcm_field_entry_t entry, 28771 bcm_field_l2_pkt_type_t * type) 28772 { 28773 return bcm_field_qualify_OverlayL2PktType_get( 28774 BCM_CONTROL(unit)->unit, 28775 entry, 28776 type); 28777 } 28778 28779 int 28780 bcm_loop_field_qualify_OverlayPktType( 28781 int unit, 28782 bcm_field_entry_t entry, 28783 bcm_field_pkt_type_t type) 28784 { 28785 return bcm_field_qualify_OverlayPktType( 28786 BCM_CONTROL(unit)->unit, 28787 entry, 28788 type); 28789 } 28790 28791 int 28792 bcm_loop_field_qualify_OverlayPktType_get( 28793 int unit, 28794 bcm_field_entry_t entry, 28795 bcm_field_pkt_type_t * type) 28796 { 28797 return bcm_field_qualify_OverlayPktType_get( 28798 BCM_CONTROL(unit)->unit, 28799 entry, 28800 type); 28801 } 28802 28803 int 28804 bcm_loop_field_qualify_OverlayVlanFormat( 28805 int unit, 28806 bcm_field_entry_t entry, 28807 uint8 data, 28808 uint8 mask) 28809 { 28810 return bcm_field_qualify_OverlayVlanFormat( 28811 BCM_CONTROL(unit)->unit, 28812 entry, 28813 data, 28814 mask); 28815 } 28816 28817 int 28818 bcm_loop_field_qualify_OverlayVlanFormat_get( 28819 int unit, 28820 bcm_field_entry_t entry, 28821 uint8 * data, 28822 uint8 * mask) 28823 { 28824 return bcm_field_qualify_OverlayVlanFormat_get( 28825 BCM_CONTROL(unit)->unit, 28826 entry, 28827 data, 28828 mask); 28829 } 28830 28831 int 28832 bcm_loop_field_qualify_PacketIsIEEE1588( 28833 int unit, 28834 bcm_field_entry_t entry, 28835 uint8 data, 28836 uint8 mask) 28837 { 28838 return bcm_field_qualify_PacketIsIEEE1588( 28839 BCM_CONTROL(unit)->unit, 28840 entry, 28841 data, 28842 mask); 28843 } 28844 28845 int 28846 bcm_loop_field_qualify_PacketIsIEEE1588_get( 28847 int unit, 28848 bcm_field_entry_t entry, 28849 uint8 * data, 28850 uint8 * mask) 28851 { 28852 return bcm_field_qualify_PacketIsIEEE1588_get( 28853 BCM_CONTROL(unit)->unit, 28854 entry, 28855 data, 28856 mask); 28857 } 28858 28859 int 28860 bcm_loop_field_qualify_PacketLength( 28861 int unit, 28862 bcm_field_entry_t entry, 28863 uint16 data, 28864 uint16 mask) 28865 { 28866 return bcm_field_qualify_PacketLength( 28867 BCM_CONTROL(unit)->unit, 28868 entry, 28869 data, 28870 mask); 28871 } 28872 28873 int 28874 bcm_loop_field_qualify_PacketLengthRangeCheck( 28875 int unit, 28876 bcm_field_entry_t entry, 28877 bcm_field_range_t range, 28878 int invert) 28879 { 28880 return bcm_field_qualify_PacketLengthRangeCheck( 28881 BCM_CONTROL(unit)->unit, 28882 entry, 28883 range, 28884 invert); 28885 } 28886 28887 int 28888 bcm_loop_field_qualify_PacketLengthRangeCheck_get( 28889 int unit, 28890 bcm_field_entry_t entry, 28891 int max_count, 28892 bcm_field_range_t * range, 28893 int * invert, 28894 int * count) 28895 { 28896 return bcm_field_qualify_PacketLengthRangeCheck_get( 28897 BCM_CONTROL(unit)->unit, 28898 entry, 28899 max_count, 28900 range, 28901 invert, 28902 count); 28903 } 28904 28905 int 28906 bcm_loop_field_qualify_PacketLength_get( 28907 int unit, 28908 bcm_field_entry_t entry, 28909 uint16 * data, 28910 uint16 * mask) 28911 { 28912 return bcm_field_qualify_PacketLength_get( 28913 BCM_CONTROL(unit)->unit, 28914 entry, 28915 data, 28916 mask); 28917 } 28918 28919 int 28920 bcm_loop_field_qualify_PacketRes( 28921 int unit, 28922 bcm_field_entry_t entry, 28923 uint32 data, 28924 uint32 mask) 28925 { 28926 return bcm_field_qualify_PacketRes( 28927 BCM_CONTROL(unit)->unit, 28928 entry, 28929 data, 28930 mask); 28931 } 28932 28933 int 28934 bcm_loop_field_qualify_PacketRes_get( 28935 int unit, 28936 bcm_field_entry_t entry, 28937 uint32 * data, 28938 uint32 * mask) 28939 { 28940 return bcm_field_qualify_PacketRes_get( 28941 BCM_CONTROL(unit)->unit, 28942 entry, 28943 data, 28944 mask); 28945 } 28946 28947 int 28948 bcm_loop_field_qualify_PacketSize( 28949 int unit, 28950 bcm_field_entry_t entry, 28951 uint32 data, 28952 uint32 mask) 28953 { 28954 return bcm_field_qualify_PacketSize( 28955 BCM_CONTROL(unit)->unit, 28956 entry, 28957 data, 28958 mask); 28959 } 28960 28961 int 28962 bcm_loop_field_qualify_PacketSize_get( 28963 int unit, 28964 bcm_field_entry_t entry, 28965 uint32 * data, 28966 uint32 * mask) 28967 { 28968 return bcm_field_qualify_PacketSize_get( 28969 BCM_CONTROL(unit)->unit, 28970 entry, 28971 data, 28972 mask); 28973 } 28974 28975 int 28976 bcm_loop_field_qualify_PacketTerminatedBytes( 28977 int unit, 28978 bcm_field_entry_t entry, 28979 uint32 data, 28980 uint32 mask) 28981 { 28982 return bcm_field_qualify_PacketTerminatedBytes( 28983 BCM_CONTROL(unit)->unit, 28984 entry, 28985 data, 28986 mask); 28987 } 28988 28989 int 28990 bcm_loop_field_qualify_PacketTerminatedBytes_get( 28991 int unit, 28992 bcm_field_entry_t entry, 28993 uint32 * data, 28994 uint32 * mask) 28995 { 28996 return bcm_field_qualify_PacketTerminatedBytes_get( 28997 BCM_CONTROL(unit)->unit, 28998 entry, 28999 data, 29000 mask); 29001 } 29002 29003 int 29004 bcm_loop_field_qualify_PimBidirDfStatus( 29005 int unit, 29006 bcm_field_entry_t entry, 29007 uint8 data, 29008 uint8 mask) 29009 { 29010 return bcm_field_qualify_PimBidirDfStatus( 29011 BCM_CONTROL(unit)->unit, 29012 entry, 29013 data, 29014 mask); 29015 } 29016 29017 int 29018 bcm_loop_field_qualify_PimBidirDfStatus_get( 29019 int unit, 29020 bcm_field_entry_t entry, 29021 uint8 * data, 29022 uint8 * mask) 29023 { 29024 return bcm_field_qualify_PimBidirDfStatus_get( 29025 BCM_CONTROL(unit)->unit, 29026 entry, 29027 data, 29028 mask); 29029 } 29030 29031 int 29032 bcm_loop_field_qualify_PktDstAddrType( 29033 int unit, 29034 bcm_field_entry_t entry, 29035 uint32 dst_addr_type) 29036 { 29037 return bcm_field_qualify_PktDstAddrType( 29038 BCM_CONTROL(unit)->unit, 29039 entry, 29040 dst_addr_type); 29041 } 29042 29043 int 29044 bcm_loop_field_qualify_PktDstAddrType_get( 29045 int unit, 29046 bcm_field_entry_t entry, 29047 uint32 * dst_addr_type) 29048 { 29049 return bcm_field_qualify_PktDstAddrType_get( 29050 BCM_CONTROL(unit)->unit, 29051 entry, 29052 dst_addr_type); 29053 } 29054 29055 int 29056 bcm_loop_field_qualify_PktFlowType( 29057 int unit, 29058 bcm_field_entry_t entry, 29059 bcm_field_pkt_flow_type_t type) 29060 { 29061 return bcm_field_qualify_PktFlowType( 29062 BCM_CONTROL(unit)->unit, 29063 entry, 29064 type); 29065 } 29066 29067 int 29068 bcm_loop_field_qualify_PktFlowType_get( 29069 int unit, 29070 bcm_field_entry_t entry, 29071 bcm_field_pkt_flow_type_t * type) 29072 { 29073 return bcm_field_qualify_PktFlowType_get( 29074 BCM_CONTROL(unit)->unit, 29075 entry, 29076 type); 29077 } 29078 29079 int 29080 bcm_loop_field_qualify_PktInnerDstAddrType( 29081 int unit, 29082 bcm_field_entry_t entry, 29083 uint32 dst_addr_type) 29084 { 29085 return bcm_field_qualify_PktInnerDstAddrType( 29086 BCM_CONTROL(unit)->unit, 29087 entry, 29088 dst_addr_type); 29089 } 29090 29091 int 29092 bcm_loop_field_qualify_PktInnerDstAddrType_get( 29093 int unit, 29094 bcm_field_entry_t entry, 29095 uint32 * dst_addr_type) 29096 { 29097 return bcm_field_qualify_PktInnerDstAddrType_get( 29098 BCM_CONTROL(unit)->unit, 29099 entry, 29100 dst_addr_type); 29101 } 29102 29103 int 29104 bcm_loop_field_qualify_PktIsVisible( 29105 int unit, 29106 bcm_field_entry_t entry, 29107 uint8 data, 29108 uint8 mask) 29109 { 29110 return bcm_field_qualify_PktIsVisible( 29111 BCM_CONTROL(unit)->unit, 29112 entry, 29113 data, 29114 mask); 29115 } 29116 29117 int 29118 bcm_loop_field_qualify_PktIsVisible_get( 29119 int unit, 29120 bcm_field_entry_t entry, 29121 uint8 * data, 29122 uint8 * mask) 29123 { 29124 return bcm_field_qualify_PktIsVisible_get( 29125 BCM_CONTROL(unit)->unit, 29126 entry, 29127 data, 29128 mask); 29129 } 29130 29131 int 29132 bcm_loop_field_qualify_PktType( 29133 int unit, 29134 bcm_field_entry_t entry, 29135 bcm_field_pkt_type_t type) 29136 { 29137 return bcm_field_qualify_PktType( 29138 BCM_CONTROL(unit)->unit, 29139 entry, 29140 type); 29141 } 29142 29143 int 29144 bcm_loop_field_qualify_PktType_get( 29145 int unit, 29146 bcm_field_entry_t entry, 29147 bcm_field_pkt_type_t * type) 29148 { 29149 return bcm_field_qualify_PktType_get( 29150 BCM_CONTROL(unit)->unit, 29151 entry, 29152 type); 29153 } 29154 29155 int 29156 bcm_loop_field_qualify_PolicerIntPrio( 29157 int unit, 29158 bcm_field_entry_t entry, 29159 uint8 data, 29160 uint8 mask) 29161 { 29162 return bcm_field_qualify_PolicerIntPrio( 29163 BCM_CONTROL(unit)->unit, 29164 entry, 29165 data, 29166 mask); 29167 } 29168 29169 int 29170 bcm_loop_field_qualify_PolicerIntPrio_get( 29171 int unit, 29172 bcm_field_entry_t entry, 29173 uint8 * data, 29174 uint8 * mask) 29175 { 29176 return bcm_field_qualify_PolicerIntPrio_get( 29177 BCM_CONTROL(unit)->unit, 29178 entry, 29179 data, 29180 mask); 29181 } 29182 29183 int 29184 bcm_loop_field_qualify_PortOrientation( 29185 int unit, 29186 bcm_field_entry_t entry, 29187 uint8 data, 29188 uint8 mask) 29189 { 29190 return bcm_field_qualify_PortOrientation( 29191 BCM_CONTROL(unit)->unit, 29192 entry, 29193 data, 29194 mask); 29195 } 29196 29197 int 29198 bcm_loop_field_qualify_PortOrientation_get( 29199 int unit, 29200 bcm_field_entry_t entry, 29201 uint8 * data, 29202 uint8 * mask) 29203 { 29204 return bcm_field_qualify_PortOrientation_get( 29205 BCM_CONTROL(unit)->unit, 29206 entry, 29207 data, 29208 mask); 29209 } 29210 29211 int 29212 bcm_loop_field_qualify_PreemptablePacket( 29213 int unit, 29214 bcm_field_entry_t entry, 29215 uint8 data, 29216 uint8 mask) 29217 { 29218 return bcm_field_qualify_PreemptablePacket( 29219 BCM_CONTROL(unit)->unit, 29220 entry, 29221 data, 29222 mask); 29223 } 29224 29225 int 29226 bcm_loop_field_qualify_PreemptablePacket_get( 29227 int unit, 29228 bcm_field_entry_t entry, 29229 uint8 * data, 29230 uint8 * mask) 29231 { 29232 return bcm_field_qualify_PreemptablePacket_get( 29233 BCM_CONTROL(unit)->unit, 29234 entry, 29235 data, 29236 mask); 29237 } 29238 29239 int 29240 bcm_loop_field_qualify_PreselId( 29241 int unit, 29242 bcm_field_entry_t entry, 29243 uint32 data, 29244 uint32 mask) 29245 { 29246 return bcm_field_qualify_PreselId( 29247 BCM_CONTROL(unit)->unit, 29248 entry, 29249 data, 29250 mask); 29251 } 29252 29253 int 29254 bcm_loop_field_qualify_PreselId_get( 29255 int unit, 29256 bcm_field_entry_t entry, 29257 uint32 * data, 29258 uint32 * mask) 29259 { 29260 return bcm_field_qualify_PreselId_get( 29261 BCM_CONTROL(unit)->unit, 29262 entry, 29263 data, 29264 mask); 29265 } 29266 29267 int 29268 bcm_loop_field_qualify_Ptch( 29269 int unit, 29270 bcm_field_entry_t entry, 29271 uint8 data, 29272 uint8 mask) 29273 { 29274 return bcm_field_qualify_Ptch( 29275 BCM_CONTROL(unit)->unit, 29276 entry, 29277 data, 29278 mask); 29279 } 29280 29281 int 29282 bcm_loop_field_qualify_Ptch_get( 29283 int unit, 29284 bcm_field_entry_t entry, 29285 uint8 * data, 29286 uint8 * mask) 29287 { 29288 return bcm_field_qualify_Ptch_get( 29289 BCM_CONTROL(unit)->unit, 29290 entry, 29291 data, 29292 mask); 29293 } 29294 29295 int 29296 bcm_loop_field_qualify_RangeCheck( 29297 int unit, 29298 bcm_field_entry_t entry, 29299 bcm_field_range_t range, 29300 int invert) 29301 { 29302 return bcm_field_qualify_RangeCheck( 29303 BCM_CONTROL(unit)->unit, 29304 entry, 29305 range, 29306 invert); 29307 } 29308 29309 int 29310 bcm_loop_field_qualify_RangeCheckGroup( 29311 int unit, 29312 bcm_field_entry_t entry, 29313 uint8 data, 29314 uint8 mask) 29315 { 29316 return bcm_field_qualify_RangeCheckGroup( 29317 BCM_CONTROL(unit)->unit, 29318 entry, 29319 data, 29320 mask); 29321 } 29322 29323 int 29324 bcm_loop_field_qualify_RangeCheckGroup_get( 29325 int unit, 29326 bcm_field_entry_t entry, 29327 uint8 * data, 29328 uint8 * mask) 29329 { 29330 return bcm_field_qualify_RangeCheckGroup_get( 29331 BCM_CONTROL(unit)->unit, 29332 entry, 29333 data, 29334 mask); 29335 } 29336 29337 int 29338 bcm_loop_field_qualify_RangeCheck_get( 29339 int unit, 29340 bcm_field_entry_t entry, 29341 int max_count, 29342 bcm_field_range_t * range, 29343 int * invert, 29344 int * count) 29345 { 29346 return bcm_field_qualify_RangeCheck_get( 29347 BCM_CONTROL(unit)->unit, 29348 entry, 29349 max_count, 29350 range, 29351 invert, 29352 count); 29353 } 29354 29355 int 29356 bcm_loop_field_qualify_RecoverableDrop( 29357 int unit, 29358 bcm_field_entry_t entry, 29359 uint8 data, 29360 uint8 mask) 29361 { 29362 return bcm_field_qualify_RecoverableDrop( 29363 BCM_CONTROL(unit)->unit, 29364 entry, 29365 data, 29366 mask); 29367 } 29368 29369 int 29370 bcm_loop_field_qualify_RecoverableDrop_get( 29371 int unit, 29372 bcm_field_entry_t entry, 29373 uint8 * data, 29374 uint8 * mask) 29375 { 29376 return bcm_field_qualify_RecoverableDrop_get( 29377 BCM_CONTROL(unit)->unit, 29378 entry, 29379 data, 29380 mask); 29381 } 29382 29383 int 29384 bcm_loop_field_qualify_RepCopy( 29385 int unit, 29386 bcm_field_entry_t entry, 29387 uint8 data, 29388 uint8 mask) 29389 { 29390 return bcm_field_qualify_RepCopy( 29391 BCM_CONTROL(unit)->unit, 29392 entry, 29393 data, 29394 mask); 29395 } 29396 29397 int 29398 bcm_loop_field_qualify_RepCopy_get( 29399 int unit, 29400 bcm_field_entry_t entry, 29401 uint8 * data, 29402 uint8 * mask) 29403 { 29404 return bcm_field_qualify_RepCopy_get( 29405 BCM_CONTROL(unit)->unit, 29406 entry, 29407 data, 29408 mask); 29409 } 29410 29411 int 29412 bcm_loop_field_qualify_ReplicantAny( 29413 int unit, 29414 bcm_field_entry_t entry, 29415 uint8 data, 29416 uint8 mask) 29417 { 29418 return bcm_field_qualify_ReplicantAny( 29419 BCM_CONTROL(unit)->unit, 29420 entry, 29421 data, 29422 mask); 29423 } 29424 29425 int 29426 bcm_loop_field_qualify_ReplicantAny_get( 29427 int unit, 29428 bcm_field_entry_t entry, 29429 uint8 * data, 29430 uint8 * mask) 29431 { 29432 return bcm_field_qualify_ReplicantAny_get( 29433 BCM_CONTROL(unit)->unit, 29434 entry, 29435 data, 29436 mask); 29437 } 29438 29439 int 29440 bcm_loop_field_qualify_ReplicantFirst( 29441 int unit, 29442 bcm_field_entry_t entry, 29443 uint8 data, 29444 uint8 mask) 29445 { 29446 return bcm_field_qualify_ReplicantFirst( 29447 BCM_CONTROL(unit)->unit, 29448 entry, 29449 data, 29450 mask); 29451 } 29452 29453 int 29454 bcm_loop_field_qualify_ReplicantFirst_get( 29455 int unit, 29456 bcm_field_entry_t entry, 29457 uint8 * data, 29458 uint8 * mask) 29459 { 29460 return bcm_field_qualify_ReplicantFirst_get( 29461 BCM_CONTROL(unit)->unit, 29462 entry, 29463 data, 29464 mask); 29465 } 29466 29467 int 29468 bcm_loop_field_qualify_RoceBthDstQueuePair( 29469 int unit, 29470 bcm_field_entry_t entry, 29471 uint32 data, 29472 uint32 mask) 29473 { 29474 return bcm_field_qualify_RoceBthDstQueuePair( 29475 BCM_CONTROL(unit)->unit, 29476 entry, 29477 data, 29478 mask); 29479 } 29480 29481 int 29482 bcm_loop_field_qualify_RoceBthDstQueuePair_get( 29483 int unit, 29484 bcm_field_entry_t entry, 29485 uint32 * data, 29486 uint32 * mask) 29487 { 29488 return bcm_field_qualify_RoceBthDstQueuePair_get( 29489 BCM_CONTROL(unit)->unit, 29490 entry, 29491 data, 29492 mask); 29493 } 29494 29495 int 29496 bcm_loop_field_qualify_RoceBthFlags( 29497 int unit, 29498 bcm_field_entry_t entry, 29499 uint8 data, 29500 uint8 mask) 29501 { 29502 return bcm_field_qualify_RoceBthFlags( 29503 BCM_CONTROL(unit)->unit, 29504 entry, 29505 data, 29506 mask); 29507 } 29508 29509 int 29510 bcm_loop_field_qualify_RoceBthFlags_get( 29511 int unit, 29512 bcm_field_entry_t entry, 29513 uint8 * data, 29514 uint8 * mask) 29515 { 29516 return bcm_field_qualify_RoceBthFlags_get( 29517 BCM_CONTROL(unit)->unit, 29518 entry, 29519 data, 29520 mask); 29521 } 29522 29523 int 29524 bcm_loop_field_qualify_RoceBthOpcode( 29525 int unit, 29526 bcm_field_entry_t entry, 29527 uint8 data, 29528 uint8 mask) 29529 { 29530 return bcm_field_qualify_RoceBthOpcode( 29531 BCM_CONTROL(unit)->unit, 29532 entry, 29533 data, 29534 mask); 29535 } 29536 29537 int 29538 bcm_loop_field_qualify_RoceBthOpcode_get( 29539 int unit, 29540 bcm_field_entry_t entry, 29541 uint8 * data, 29542 uint8 * mask) 29543 { 29544 return bcm_field_qualify_RoceBthOpcode_get( 29545 BCM_CONTROL(unit)->unit, 29546 entry, 29547 data, 29548 mask); 29549 } 29550 29551 int 29552 bcm_loop_field_qualify_RoceBthPartitionKey( 29553 int unit, 29554 bcm_field_entry_t entry, 29555 uint16 data, 29556 uint16 mask) 29557 { 29558 return bcm_field_qualify_RoceBthPartitionKey( 29559 BCM_CONTROL(unit)->unit, 29560 entry, 29561 data, 29562 mask); 29563 } 29564 29565 int 29566 bcm_loop_field_qualify_RoceBthPartitionKey_get( 29567 int unit, 29568 bcm_field_entry_t entry, 29569 uint16 * data, 29570 uint16 * mask) 29571 { 29572 return bcm_field_qualify_RoceBthPartitionKey_get( 29573 BCM_CONTROL(unit)->unit, 29574 entry, 29575 data, 29576 mask); 29577 } 29578 29579 int 29580 bcm_loop_field_qualify_RoceVer1Pkt( 29581 int unit, 29582 bcm_field_entry_t entry, 29583 uint8 data, 29584 uint8 mask) 29585 { 29586 return bcm_field_qualify_RoceVer1Pkt( 29587 BCM_CONTROL(unit)->unit, 29588 entry, 29589 data, 29590 mask); 29591 } 29592 29593 int 29594 bcm_loop_field_qualify_RoceVer1Pkt_get( 29595 int unit, 29596 bcm_field_entry_t entry, 29597 uint8 * data, 29598 uint8 * mask) 29599 { 29600 return bcm_field_qualify_RoceVer1Pkt_get( 29601 BCM_CONTROL(unit)->unit, 29602 entry, 29603 data, 29604 mask); 29605 } 29606 29607 int 29608 bcm_loop_field_qualify_RoceVer2Pkt( 29609 int unit, 29610 bcm_field_entry_t entry, 29611 uint8 data, 29612 uint8 mask) 29613 { 29614 return bcm_field_qualify_RoceVer2Pkt( 29615 BCM_CONTROL(unit)->unit, 29616 entry, 29617 data, 29618 mask); 29619 } 29620 29621 int 29622 bcm_loop_field_qualify_RoceVer2Pkt_get( 29623 int unit, 29624 bcm_field_entry_t entry, 29625 uint8 * data, 29626 uint8 * mask) 29627 { 29628 return bcm_field_qualify_RoceVer2Pkt_get( 29629 BCM_CONTROL(unit)->unit, 29630 entry, 29631 data, 29632 mask); 29633 } 29634 29635 int 29636 bcm_loop_field_qualify_RoeFrameType( 29637 int unit, 29638 bcm_field_entry_t entry, 29639 bcm_field_roe_frame_type_t data) 29640 { 29641 return bcm_field_qualify_RoeFrameType( 29642 BCM_CONTROL(unit)->unit, 29643 entry, 29644 data); 29645 } 29646 29647 int 29648 bcm_loop_field_qualify_RoeFrameType_get( 29649 int unit, 29650 bcm_field_entry_t entry, 29651 bcm_field_roe_frame_type_t * data) 29652 { 29653 return bcm_field_qualify_RoeFrameType_get( 29654 BCM_CONTROL(unit)->unit, 29655 entry, 29656 data); 29657 } 29658 29659 int 29660 bcm_loop_field_qualify_RouterAlertLabelValid( 29661 int unit, 29662 bcm_field_entry_t entry, 29663 uint8 data, 29664 uint8 mask) 29665 { 29666 return bcm_field_qualify_RouterAlertLabelValid( 29667 BCM_CONTROL(unit)->unit, 29668 entry, 29669 data, 29670 mask); 29671 } 29672 29673 int 29674 bcm_loop_field_qualify_RouterAlertLabelValid_get( 29675 int unit, 29676 bcm_field_entry_t entry, 29677 uint8 * data, 29678 uint8 * mask) 29679 { 29680 return bcm_field_qualify_RouterAlertLabelValid_get( 29681 BCM_CONTROL(unit)->unit, 29682 entry, 29683 data, 29684 mask); 29685 } 29686 29687 int 29688 bcm_loop_field_qualify_Rtag7AHashLower( 29689 int unit, 29690 bcm_field_entry_t entry, 29691 uint16 data, 29692 uint16 mask) 29693 { 29694 return bcm_field_qualify_Rtag7AHashLower( 29695 BCM_CONTROL(unit)->unit, 29696 entry, 29697 data, 29698 mask); 29699 } 29700 29701 int 29702 bcm_loop_field_qualify_Rtag7AHashLower_get( 29703 int unit, 29704 bcm_field_entry_t entry, 29705 uint16 * data, 29706 uint16 * mask) 29707 { 29708 return bcm_field_qualify_Rtag7AHashLower_get( 29709 BCM_CONTROL(unit)->unit, 29710 entry, 29711 data, 29712 mask); 29713 } 29714 29715 int 29716 bcm_loop_field_qualify_Rtag7AHashUpper( 29717 int unit, 29718 bcm_field_entry_t entry, 29719 uint16 data, 29720 uint16 mask) 29721 { 29722 return bcm_field_qualify_Rtag7AHashUpper( 29723 BCM_CONTROL(unit)->unit, 29724 entry, 29725 data, 29726 mask); 29727 } 29728 29729 int 29730 bcm_loop_field_qualify_Rtag7AHashUpper_get( 29731 int unit, 29732 bcm_field_entry_t entry, 29733 uint16 * data, 29734 uint16 * mask) 29735 { 29736 return bcm_field_qualify_Rtag7AHashUpper_get( 29737 BCM_CONTROL(unit)->unit, 29738 entry, 29739 data, 29740 mask); 29741 } 29742 29743 int 29744 bcm_loop_field_qualify_Rtag7BHashLower( 29745 int unit, 29746 bcm_field_entry_t entry, 29747 uint16 data, 29748 uint16 mask) 29749 { 29750 return bcm_field_qualify_Rtag7BHashLower( 29751 BCM_CONTROL(unit)->unit, 29752 entry, 29753 data, 29754 mask); 29755 } 29756 29757 int 29758 bcm_loop_field_qualify_Rtag7BHashLower_get( 29759 int unit, 29760 bcm_field_entry_t entry, 29761 uint16 * data, 29762 uint16 * mask) 29763 { 29764 return bcm_field_qualify_Rtag7BHashLower_get( 29765 BCM_CONTROL(unit)->unit, 29766 entry, 29767 data, 29768 mask); 29769 } 29770 29771 int 29772 bcm_loop_field_qualify_Rtag7BHashUpper( 29773 int unit, 29774 bcm_field_entry_t entry, 29775 uint16 data, 29776 uint16 mask) 29777 { 29778 return bcm_field_qualify_Rtag7BHashUpper( 29779 BCM_CONTROL(unit)->unit, 29780 entry, 29781 data, 29782 mask); 29783 } 29784 29785 int 29786 bcm_loop_field_qualify_Rtag7BHashUpper_get( 29787 int unit, 29788 bcm_field_entry_t entry, 29789 uint16 * data, 29790 uint16 * mask) 29791 { 29792 return bcm_field_qualify_Rtag7BHashUpper_get( 29793 BCM_CONTROL(unit)->unit, 29794 entry, 29795 data, 29796 mask); 29797 } 29798 29799 int 29800 bcm_loop_field_qualify_RxTrapCode( 29801 int unit, 29802 bcm_field_entry_t entry, 29803 bcm_rx_trap_t data) 29804 { 29805 return bcm_field_qualify_RxTrapCode( 29806 BCM_CONTROL(unit)->unit, 29807 entry, 29808 data); 29809 } 29810 29811 int 29812 bcm_loop_field_qualify_RxTrapCode32( 29813 int unit, 29814 bcm_field_entry_t entry, 29815 uint32 data, 29816 uint32 mask) 29817 { 29818 return bcm_field_qualify_RxTrapCode32( 29819 BCM_CONTROL(unit)->unit, 29820 entry, 29821 data, 29822 mask); 29823 } 29824 29825 int 29826 bcm_loop_field_qualify_RxTrapCode32_get( 29827 int unit, 29828 bcm_field_entry_t entry, 29829 uint32 * data, 29830 uint32 * mask) 29831 { 29832 return bcm_field_qualify_RxTrapCode32_get( 29833 BCM_CONTROL(unit)->unit, 29834 entry, 29835 data, 29836 mask); 29837 } 29838 29839 int 29840 bcm_loop_field_qualify_RxTrapCodeForSnoop( 29841 int unit, 29842 bcm_field_entry_t entry, 29843 uint32 data, 29844 uint32 mask) 29845 { 29846 return bcm_field_qualify_RxTrapCodeForSnoop( 29847 BCM_CONTROL(unit)->unit, 29848 entry, 29849 data, 29850 mask); 29851 } 29852 29853 int 29854 bcm_loop_field_qualify_RxTrapCodeForSnoop_get( 29855 int unit, 29856 bcm_field_entry_t entry, 29857 uint32 * data, 29858 uint32 * mask) 29859 { 29860 return bcm_field_qualify_RxTrapCodeForSnoop_get( 29861 BCM_CONTROL(unit)->unit, 29862 entry, 29863 data, 29864 mask); 29865 } 29866 29867 int 29868 bcm_loop_field_qualify_RxTrapCode_get( 29869 int unit, 29870 bcm_field_entry_t entry, 29871 bcm_rx_trap_t * data) 29872 { 29873 return bcm_field_qualify_RxTrapCode_get( 29874 BCM_CONTROL(unit)->unit, 29875 entry, 29876 data); 29877 } 29878 29879 int 29880 bcm_loop_field_qualify_RxTrapData( 29881 int unit, 29882 bcm_field_entry_t entry, 29883 uint32 data, 29884 uint32 mask) 29885 { 29886 return bcm_field_qualify_RxTrapData( 29887 BCM_CONTROL(unit)->unit, 29888 entry, 29889 data, 29890 mask); 29891 } 29892 29893 int 29894 bcm_loop_field_qualify_RxTrapData_get( 29895 int unit, 29896 bcm_field_entry_t entry, 29897 uint32 * data, 29898 uint32 * mask) 29899 { 29900 return bcm_field_qualify_RxTrapData_get( 29901 BCM_CONTROL(unit)->unit, 29902 entry, 29903 data, 29904 mask); 29905 } 29906 29907 int 29908 bcm_loop_field_qualify_RxTrapStrength( 29909 int unit, 29910 bcm_field_entry_t entry, 29911 uint32 data, 29912 uint32 mask) 29913 { 29914 return bcm_field_qualify_RxTrapStrength( 29915 BCM_CONTROL(unit)->unit, 29916 entry, 29917 data, 29918 mask); 29919 } 29920 29921 int 29922 bcm_loop_field_qualify_RxTrapStrength_get( 29923 int unit, 29924 bcm_field_entry_t entry, 29925 uint32 * data, 29926 uint32 * mask) 29927 { 29928 return bcm_field_qualify_RxTrapStrength_get( 29929 BCM_CONTROL(unit)->unit, 29930 entry, 29931 data, 29932 mask); 29933 } 29934 29935 int 29936 bcm_loop_field_qualify_SRDuplicate( 29937 int unit, 29938 bcm_field_entry_t entry, 29939 uint8 data) 29940 { 29941 return bcm_field_qualify_SRDuplicate( 29942 BCM_CONTROL(unit)->unit, 29943 entry, 29944 data); 29945 } 29946 29947 int 29948 bcm_loop_field_qualify_SRDuplicate_get( 29949 int unit, 29950 bcm_field_entry_t entry, 29951 uint8 * data) 29952 { 29953 return bcm_field_qualify_SRDuplicate_get( 29954 BCM_CONTROL(unit)->unit, 29955 entry, 29956 data); 29957 } 29958 29959 int 29960 bcm_loop_field_qualify_SRError( 29961 int unit, 29962 bcm_field_entry_t entry, 29963 uint32 data, 29964 uint32 mask) 29965 { 29966 return bcm_field_qualify_SRError( 29967 BCM_CONTROL(unit)->unit, 29968 entry, 29969 data, 29970 mask); 29971 } 29972 29973 int 29974 bcm_loop_field_qualify_SRError_get( 29975 int unit, 29976 bcm_field_entry_t entry, 29977 uint32 * data, 29978 uint32 * mask) 29979 { 29980 return bcm_field_qualify_SRError_get( 29981 BCM_CONTROL(unit)->unit, 29982 entry, 29983 data, 29984 mask); 29985 } 29986 29987 int 29988 bcm_loop_field_qualify_SRFlowId( 29989 int unit, 29990 bcm_field_entry_t entry, 29991 uint32 data, 29992 uint32 mask) 29993 { 29994 return bcm_field_qualify_SRFlowId( 29995 BCM_CONTROL(unit)->unit, 29996 entry, 29997 data, 29998 mask); 29999 } 30000 30001 int 30002 bcm_loop_field_qualify_SRFlowId_get( 30003 int unit, 30004 bcm_field_entry_t entry, 30005 uint32 * data, 30006 uint32 * mask) 30007 { 30008 return bcm_field_qualify_SRFlowId_get( 30009 BCM_CONTROL(unit)->unit, 30010 entry, 30011 data, 30012 mask); 30013 } 30014 30015 int 30016 bcm_loop_field_qualify_SRLanId( 30017 int unit, 30018 bcm_field_entry_t entry, 30019 int lan_id) 30020 { 30021 return bcm_field_qualify_SRLanId( 30022 BCM_CONTROL(unit)->unit, 30023 entry, 30024 lan_id); 30025 } 30026 30027 int 30028 bcm_loop_field_qualify_SRLanId_get( 30029 int unit, 30030 bcm_field_entry_t entry, 30031 int * lan_id) 30032 { 30033 return bcm_field_qualify_SRLanId_get( 30034 BCM_CONTROL(unit)->unit, 30035 entry, 30036 lan_id); 30037 } 30038 30039 int 30040 bcm_loop_field_qualify_SRNetId( 30041 int unit, 30042 bcm_field_entry_t entry, 30043 int net_id) 30044 { 30045 return bcm_field_qualify_SRNetId( 30046 BCM_CONTROL(unit)->unit, 30047 entry, 30048 net_id); 30049 } 30050 30051 int 30052 bcm_loop_field_qualify_SRNetIdMatched( 30053 int unit, 30054 bcm_field_entry_t entry, 30055 uint8 data) 30056 { 30057 return bcm_field_qualify_SRNetIdMatched( 30058 BCM_CONTROL(unit)->unit, 30059 entry, 30060 data); 30061 } 30062 30063 int 30064 bcm_loop_field_qualify_SRNetIdMatched_get( 30065 int unit, 30066 bcm_field_entry_t entry, 30067 uint8 * data) 30068 { 30069 return bcm_field_qualify_SRNetIdMatched_get( 30070 BCM_CONTROL(unit)->unit, 30071 entry, 30072 data); 30073 } 30074 30075 int 30076 bcm_loop_field_qualify_SRNetId_get( 30077 int unit, 30078 bcm_field_entry_t entry, 30079 int * net_id) 30080 { 30081 return bcm_field_qualify_SRNetId_get( 30082 BCM_CONTROL(unit)->unit, 30083 entry, 30084 net_id); 30085 } 30086 30087 int 30088 bcm_loop_field_qualify_SRSrcNodeIsSan( 30089 int unit, 30090 bcm_field_entry_t entry, 30091 uint8 data) 30092 { 30093 return bcm_field_qualify_SRSrcNodeIsSan( 30094 BCM_CONTROL(unit)->unit, 30095 entry, 30096 data); 30097 } 30098 30099 int 30100 bcm_loop_field_qualify_SRSrcNodeIsSan_get( 30101 int unit, 30102 bcm_field_entry_t entry, 30103 uint8 * data) 30104 { 30105 return bcm_field_qualify_SRSrcNodeIsSan_get( 30106 BCM_CONTROL(unit)->unit, 30107 entry, 30108 data); 30109 } 30110 30111 int 30112 bcm_loop_field_qualify_SRSupervisionType( 30113 int unit, 30114 bcm_field_entry_t entry, 30115 bcm_field_sr_supervision_type_t type) 30116 { 30117 return bcm_field_qualify_SRSupervisionType( 30118 BCM_CONTROL(unit)->unit, 30119 entry, 30120 type); 30121 } 30122 30123 int 30124 bcm_loop_field_qualify_SRSupervisionType_get( 30125 int unit, 30126 bcm_field_entry_t entry, 30127 bcm_field_sr_supervision_type_t * type) 30128 { 30129 return bcm_field_qualify_SRSupervisionType_get( 30130 BCM_CONTROL(unit)->unit, 30131 entry, 30132 type); 30133 } 30134 30135 int 30136 bcm_loop_field_qualify_SRTagType( 30137 int unit, 30138 bcm_field_entry_t entry, 30139 bcm_field_sr_tag_type_t type) 30140 { 30141 return bcm_field_qualify_SRTagType( 30142 BCM_CONTROL(unit)->unit, 30143 entry, 30144 type); 30145 } 30146 30147 int 30148 bcm_loop_field_qualify_SRTagType_get( 30149 int unit, 30150 bcm_field_entry_t entry, 30151 bcm_field_sr_tag_type_t * type) 30152 { 30153 return bcm_field_qualify_SRTagType_get( 30154 BCM_CONTROL(unit)->unit, 30155 entry, 30156 type); 30157 } 30158 30159 int 30160 bcm_loop_field_qualify_Snap( 30161 int unit, 30162 bcm_field_entry_t entry, 30163 bcm_field_snap_header_t data, 30164 bcm_field_snap_header_t mask) 30165 { 30166 return bcm_field_qualify_Snap( 30167 BCM_CONTROL(unit)->unit, 30168 entry, 30169 data, 30170 mask); 30171 } 30172 30173 int 30174 bcm_loop_field_qualify_Snap_get( 30175 int unit, 30176 bcm_field_entry_t entry, 30177 bcm_field_snap_header_t * data, 30178 bcm_field_snap_header_t * mask) 30179 { 30180 return bcm_field_qualify_Snap_get( 30181 BCM_CONTROL(unit)->unit, 30182 entry, 30183 data, 30184 mask); 30185 } 30186 30187 int 30188 bcm_loop_field_qualify_SnoopCopy( 30189 int unit, 30190 bcm_field_entry_t entry, 30191 uint8 data, 30192 uint8 mask) 30193 { 30194 return bcm_field_qualify_SnoopCopy( 30195 BCM_CONTROL(unit)->unit, 30196 entry, 30197 data, 30198 mask); 30199 } 30200 30201 int 30202 bcm_loop_field_qualify_SnoopCopy_get( 30203 int unit, 30204 bcm_field_entry_t entry, 30205 uint8 * data, 30206 uint8 * mask) 30207 { 30208 return bcm_field_qualify_SnoopCopy_get( 30209 BCM_CONTROL(unit)->unit, 30210 entry, 30211 data, 30212 mask); 30213 } 30214 30215 int 30216 bcm_loop_field_qualify_SourceGportBitmap( 30217 int unit, 30218 bcm_field_entry_t entry, 30219 bcm_pbmp_t data, 30220 bcm_pbmp_t mask) 30221 { 30222 return bcm_field_qualify_SourceGportBitmap( 30223 BCM_CONTROL(unit)->unit, 30224 entry, 30225 data, 30226 mask); 30227 } 30228 30229 int 30230 bcm_loop_field_qualify_SourceGportBitmap_get( 30231 int unit, 30232 bcm_field_entry_t entry, 30233 bcm_pbmp_t * data, 30234 bcm_pbmp_t * mask) 30235 { 30236 return bcm_field_qualify_SourceGportBitmap_get( 30237 BCM_CONTROL(unit)->unit, 30238 entry, 30239 data, 30240 mask); 30241 } 30242 30243 int 30244 bcm_loop_field_qualify_SrcClassField( 30245 int unit, 30246 bcm_field_entry_t entry, 30247 uint32 data, 30248 uint32 mask) 30249 { 30250 return bcm_field_qualify_SrcClassField( 30251 BCM_CONTROL(unit)->unit, 30252 entry, 30253 data, 30254 mask); 30255 } 30256 30257 int 30258 bcm_loop_field_qualify_SrcClassField_get( 30259 int unit, 30260 bcm_field_entry_t entry, 30261 uint32 * data, 30262 uint32 * mask) 30263 { 30264 return bcm_field_qualify_SrcClassField_get( 30265 BCM_CONTROL(unit)->unit, 30266 entry, 30267 data, 30268 mask); 30269 } 30270 30271 int 30272 bcm_loop_field_qualify_SrcClassL2( 30273 int unit, 30274 bcm_field_entry_t entry, 30275 uint32 data, 30276 uint32 mask) 30277 { 30278 return bcm_field_qualify_SrcClassL2( 30279 BCM_CONTROL(unit)->unit, 30280 entry, 30281 data, 30282 mask); 30283 } 30284 30285 int 30286 bcm_loop_field_qualify_SrcClassL2_get( 30287 int unit, 30288 bcm_field_entry_t entry, 30289 uint32 * data, 30290 uint32 * mask) 30291 { 30292 return bcm_field_qualify_SrcClassL2_get( 30293 BCM_CONTROL(unit)->unit, 30294 entry, 30295 data, 30296 mask); 30297 } 30298 30299 int 30300 bcm_loop_field_qualify_SrcClassL3( 30301 int unit, 30302 bcm_field_entry_t entry, 30303 uint32 data, 30304 uint32 mask) 30305 { 30306 return bcm_field_qualify_SrcClassL3( 30307 BCM_CONTROL(unit)->unit, 30308 entry, 30309 data, 30310 mask); 30311 } 30312 30313 int 30314 bcm_loop_field_qualify_SrcClassL3_get( 30315 int unit, 30316 bcm_field_entry_t entry, 30317 uint32 * data, 30318 uint32 * mask) 30319 { 30320 return bcm_field_qualify_SrcClassL3_get( 30321 BCM_CONTROL(unit)->unit, 30322 entry, 30323 data, 30324 mask); 30325 } 30326 30327 int 30328 bcm_loop_field_qualify_SrcGport( 30329 int unit, 30330 bcm_field_entry_t entry, 30331 bcm_gport_t port_id) 30332 { 30333 return bcm_field_qualify_SrcGport( 30334 BCM_CONTROL(unit)->unit, 30335 entry, 30336 port_id); 30337 } 30338 30339 int 30340 bcm_loop_field_qualify_SrcGport_get( 30341 int unit, 30342 bcm_field_entry_t entry, 30343 bcm_gport_t * port_id) 30344 { 30345 return bcm_field_qualify_SrcGport_get( 30346 BCM_CONTROL(unit)->unit, 30347 entry, 30348 port_id); 30349 } 30350 30351 int 30352 bcm_loop_field_qualify_SrcGports( 30353 int unit, 30354 bcm_field_entry_t entry, 30355 bcm_gport_t port_id, 30356 bcm_gport_t port_mask) 30357 { 30358 return bcm_field_qualify_SrcGports( 30359 BCM_CONTROL(unit)->unit, 30360 entry, 30361 port_id, 30362 port_mask); 30363 } 30364 30365 int 30366 bcm_loop_field_qualify_SrcGports_get( 30367 int unit, 30368 bcm_field_entry_t entry, 30369 bcm_gport_t * port_id, 30370 bcm_gport_t * port_mask) 30371 { 30372 return bcm_field_qualify_SrcGports_get( 30373 BCM_CONTROL(unit)->unit, 30374 entry, 30375 port_id, 30376 port_mask); 30377 } 30378 30379 int 30380 bcm_loop_field_qualify_SrcIp( 30381 int unit, 30382 bcm_field_entry_t entry, 30383 bcm_ip_t data, 30384 bcm_ip_t mask) 30385 { 30386 return bcm_field_qualify_SrcIp( 30387 BCM_CONTROL(unit)->unit, 30388 entry, 30389 data, 30390 mask); 30391 } 30392 30393 int 30394 bcm_loop_field_qualify_SrcIp6( 30395 int unit, 30396 bcm_field_entry_t entry, 30397 bcm_ip6_t data, 30398 bcm_ip6_t mask) 30399 { 30400 return bcm_field_qualify_SrcIp6( 30401 BCM_CONTROL(unit)->unit, 30402 entry, 30403 data, 30404 mask); 30405 } 30406 30407 int 30408 bcm_loop_field_qualify_SrcIp6Class( 30409 int unit, 30410 bcm_field_entry_t entry, 30411 bcm_class_t data, 30412 bcm_class_t mask) 30413 { 30414 return bcm_field_qualify_SrcIp6Class( 30415 BCM_CONTROL(unit)->unit, 30416 entry, 30417 data, 30418 mask); 30419 } 30420 30421 int 30422 bcm_loop_field_qualify_SrcIp6ClassLower( 30423 int unit, 30424 bcm_field_entry_t entry, 30425 bcm_class_t data, 30426 bcm_class_t mask) 30427 { 30428 return bcm_field_qualify_SrcIp6ClassLower( 30429 BCM_CONTROL(unit)->unit, 30430 entry, 30431 data, 30432 mask); 30433 } 30434 30435 int 30436 bcm_loop_field_qualify_SrcIp6ClassLower_get( 30437 int unit, 30438 bcm_field_entry_t entry, 30439 bcm_class_t * data, 30440 bcm_class_t * mask) 30441 { 30442 return bcm_field_qualify_SrcIp6ClassLower_get( 30443 BCM_CONTROL(unit)->unit, 30444 entry, 30445 data, 30446 mask); 30447 } 30448 30449 int 30450 bcm_loop_field_qualify_SrcIp6ClassMsbNibble( 30451 int unit, 30452 bcm_field_entry_t entry, 30453 bcm_class_t data, 30454 bcm_class_t mask) 30455 { 30456 return bcm_field_qualify_SrcIp6ClassMsbNibble( 30457 BCM_CONTROL(unit)->unit, 30458 entry, 30459 data, 30460 mask); 30461 } 30462 30463 int 30464 bcm_loop_field_qualify_SrcIp6ClassMsbNibble_get( 30465 int unit, 30466 bcm_field_entry_t entry, 30467 bcm_class_t * data, 30468 bcm_class_t * mask) 30469 { 30470 return bcm_field_qualify_SrcIp6ClassMsbNibble_get( 30471 BCM_CONTROL(unit)->unit, 30472 entry, 30473 data, 30474 mask); 30475 } 30476 30477 int 30478 bcm_loop_field_qualify_SrcIp6ClassUpper( 30479 int unit, 30480 bcm_field_entry_t entry, 30481 bcm_class_t data, 30482 bcm_class_t mask) 30483 { 30484 return bcm_field_qualify_SrcIp6ClassUpper( 30485 BCM_CONTROL(unit)->unit, 30486 entry, 30487 data, 30488 mask); 30489 } 30490 30491 int 30492 bcm_loop_field_qualify_SrcIp6ClassUpper_get( 30493 int unit, 30494 bcm_field_entry_t entry, 30495 bcm_class_t * data, 30496 bcm_class_t * mask) 30497 { 30498 return bcm_field_qualify_SrcIp6ClassUpper_get( 30499 BCM_CONTROL(unit)->unit, 30500 entry, 30501 data, 30502 mask); 30503 } 30504 30505 int 30506 bcm_loop_field_qualify_SrcIp6Class_get( 30507 int unit, 30508 bcm_field_entry_t entry, 30509 bcm_class_t * data, 30510 bcm_class_t * mask) 30511 { 30512 return bcm_field_qualify_SrcIp6Class_get( 30513 BCM_CONTROL(unit)->unit, 30514 entry, 30515 data, 30516 mask); 30517 } 30518 30519 int 30520 bcm_loop_field_qualify_SrcIp6High( 30521 int unit, 30522 bcm_field_entry_t entry, 30523 bcm_ip6_t data, 30524 bcm_ip6_t mask) 30525 { 30526 return bcm_field_qualify_SrcIp6High( 30527 BCM_CONTROL(unit)->unit, 30528 entry, 30529 data, 30530 mask); 30531 } 30532 30533 int 30534 bcm_loop_field_qualify_SrcIp6High_get( 30535 int unit, 30536 bcm_field_entry_t entry, 30537 bcm_ip6_t * data, 30538 bcm_ip6_t * mask) 30539 { 30540 return bcm_field_qualify_SrcIp6High_get( 30541 BCM_CONTROL(unit)->unit, 30542 entry, 30543 data, 30544 mask); 30545 } 30546 30547 int 30548 bcm_loop_field_qualify_SrcIp6Low( 30549 int unit, 30550 bcm_field_entry_t entry, 30551 bcm_ip6_t data, 30552 bcm_ip6_t mask) 30553 { 30554 return bcm_field_qualify_SrcIp6Low( 30555 BCM_CONTROL(unit)->unit, 30556 entry, 30557 data, 30558 mask); 30559 } 30560 30561 int 30562 bcm_loop_field_qualify_SrcIp6Low_get( 30563 int unit, 30564 bcm_field_entry_t entry, 30565 bcm_ip6_t * data, 30566 bcm_ip6_t * mask) 30567 { 30568 return bcm_field_qualify_SrcIp6Low_get( 30569 BCM_CONTROL(unit)->unit, 30570 entry, 30571 data, 30572 mask); 30573 } 30574 30575 int 30576 bcm_loop_field_qualify_SrcIp6_get( 30577 int unit, 30578 bcm_field_entry_t entry, 30579 bcm_ip6_t * data, 30580 bcm_ip6_t * mask) 30581 { 30582 return bcm_field_qualify_SrcIp6_get( 30583 BCM_CONTROL(unit)->unit, 30584 entry, 30585 data, 30586 mask); 30587 } 30588 30589 int 30590 bcm_loop_field_qualify_SrcIpClass( 30591 int unit, 30592 bcm_field_entry_t entry, 30593 bcm_class_t data, 30594 bcm_class_t mask) 30595 { 30596 return bcm_field_qualify_SrcIpClass( 30597 BCM_CONTROL(unit)->unit, 30598 entry, 30599 data, 30600 mask); 30601 } 30602 30603 int 30604 bcm_loop_field_qualify_SrcIpClassLower( 30605 int unit, 30606 bcm_field_entry_t entry, 30607 bcm_class_t data, 30608 bcm_class_t mask) 30609 { 30610 return bcm_field_qualify_SrcIpClassLower( 30611 BCM_CONTROL(unit)->unit, 30612 entry, 30613 data, 30614 mask); 30615 } 30616 30617 int 30618 bcm_loop_field_qualify_SrcIpClassLower_get( 30619 int unit, 30620 bcm_field_entry_t entry, 30621 bcm_class_t * data, 30622 bcm_class_t * mask) 30623 { 30624 return bcm_field_qualify_SrcIpClassLower_get( 30625 BCM_CONTROL(unit)->unit, 30626 entry, 30627 data, 30628 mask); 30629 } 30630 30631 int 30632 bcm_loop_field_qualify_SrcIpClassMsbNibble( 30633 int unit, 30634 bcm_field_entry_t entry, 30635 bcm_class_t data, 30636 bcm_class_t mask) 30637 { 30638 return bcm_field_qualify_SrcIpClassMsbNibble( 30639 BCM_CONTROL(unit)->unit, 30640 entry, 30641 data, 30642 mask); 30643 } 30644 30645 int 30646 bcm_loop_field_qualify_SrcIpClassMsbNibble_get( 30647 int unit, 30648 bcm_field_entry_t entry, 30649 bcm_class_t * data, 30650 bcm_class_t * mask) 30651 { 30652 return bcm_field_qualify_SrcIpClassMsbNibble_get( 30653 BCM_CONTROL(unit)->unit, 30654 entry, 30655 data, 30656 mask); 30657 } 30658 30659 int 30660 bcm_loop_field_qualify_SrcIpClassUpper( 30661 int unit, 30662 bcm_field_entry_t entry, 30663 bcm_class_t data, 30664 bcm_class_t mask) 30665 { 30666 return bcm_field_qualify_SrcIpClassUpper( 30667 BCM_CONTROL(unit)->unit, 30668 entry, 30669 data, 30670 mask); 30671 } 30672 30673 int 30674 bcm_loop_field_qualify_SrcIpClassUpper_get( 30675 int unit, 30676 bcm_field_entry_t entry, 30677 bcm_class_t * data, 30678 bcm_class_t * mask) 30679 { 30680 return bcm_field_qualify_SrcIpClassUpper_get( 30681 BCM_CONTROL(unit)->unit, 30682 entry, 30683 data, 30684 mask); 30685 } 30686 30687 int 30688 bcm_loop_field_qualify_SrcIpClass_get( 30689 int unit, 30690 bcm_field_entry_t entry, 30691 bcm_class_t * data, 30692 bcm_class_t * mask) 30693 { 30694 return bcm_field_qualify_SrcIpClass_get( 30695 BCM_CONTROL(unit)->unit, 30696 entry, 30697 data, 30698 mask); 30699 } 30700 30701 int 30702 bcm_loop_field_qualify_SrcIp_get( 30703 int unit, 30704 bcm_field_entry_t entry, 30705 bcm_ip_t * data, 30706 bcm_ip_t * mask) 30707 { 30708 return bcm_field_qualify_SrcIp_get( 30709 BCM_CONTROL(unit)->unit, 30710 entry, 30711 data, 30712 mask); 30713 } 30714 30715 int 30716 bcm_loop_field_qualify_SrcMac( 30717 int unit, 30718 bcm_field_entry_t entry, 30719 bcm_mac_t data, 30720 bcm_mac_t mask) 30721 { 30722 return bcm_field_qualify_SrcMac( 30723 BCM_CONTROL(unit)->unit, 30724 entry, 30725 data, 30726 mask); 30727 } 30728 30729 int 30730 bcm_loop_field_qualify_SrcMac_get( 30731 int unit, 30732 bcm_field_entry_t entry, 30733 bcm_mac_t * data, 30734 bcm_mac_t * mask) 30735 { 30736 return bcm_field_qualify_SrcMac_get( 30737 BCM_CONTROL(unit)->unit, 30738 entry, 30739 data, 30740 mask); 30741 } 30742 30743 int 30744 bcm_loop_field_qualify_SrcMimGport( 30745 int unit, 30746 bcm_field_entry_t entry, 30747 bcm_gport_t mim_port_id) 30748 { 30749 return bcm_field_qualify_SrcMimGport( 30750 BCM_CONTROL(unit)->unit, 30751 entry, 30752 mim_port_id); 30753 } 30754 30755 int 30756 bcm_loop_field_qualify_SrcMimGport_get( 30757 int unit, 30758 bcm_field_entry_t entry, 30759 bcm_gport_t * mim_port_id) 30760 { 30761 return bcm_field_qualify_SrcMimGport_get( 30762 BCM_CONTROL(unit)->unit, 30763 entry, 30764 mim_port_id); 30765 } 30766 30767 int 30768 bcm_loop_field_qualify_SrcMimGports( 30769 int unit, 30770 bcm_field_entry_t entry, 30771 bcm_gport_t mim_port_id, 30772 bcm_gport_t mim_port_mask) 30773 { 30774 return bcm_field_qualify_SrcMimGports( 30775 BCM_CONTROL(unit)->unit, 30776 entry, 30777 mim_port_id, 30778 mim_port_mask); 30779 } 30780 30781 int 30782 bcm_loop_field_qualify_SrcMimGports_get( 30783 int unit, 30784 bcm_field_entry_t entry, 30785 bcm_gport_t * mim_port_id, 30786 bcm_gport_t * mim_port_mask) 30787 { 30788 return bcm_field_qualify_SrcMimGports_get( 30789 BCM_CONTROL(unit)->unit, 30790 entry, 30791 mim_port_id, 30792 mim_port_mask); 30793 } 30794 30795 int 30796 bcm_loop_field_qualify_SrcModPortGport( 30797 int unit, 30798 bcm_field_entry_t entry, 30799 bcm_gport_t data) 30800 { 30801 return bcm_field_qualify_SrcModPortGport( 30802 BCM_CONTROL(unit)->unit, 30803 entry, 30804 data); 30805 } 30806 30807 int 30808 bcm_loop_field_qualify_SrcModPortGport_get( 30809 int unit, 30810 bcm_field_entry_t entry, 30811 bcm_gport_t * data) 30812 { 30813 return bcm_field_qualify_SrcModPortGport_get( 30814 BCM_CONTROL(unit)->unit, 30815 entry, 30816 data); 30817 } 30818 30819 int 30820 bcm_loop_field_qualify_SrcModPortGports( 30821 int unit, 30822 bcm_field_entry_t entry, 30823 bcm_gport_t port_id, 30824 bcm_gport_t port_mask) 30825 { 30826 return bcm_field_qualify_SrcModPortGports( 30827 BCM_CONTROL(unit)->unit, 30828 entry, 30829 port_id, 30830 port_mask); 30831 } 30832 30833 int 30834 bcm_loop_field_qualify_SrcModPortGports_get( 30835 int unit, 30836 bcm_field_entry_t entry, 30837 bcm_gport_t * port_id, 30838 bcm_gport_t * port_mask) 30839 { 30840 return bcm_field_qualify_SrcModPortGports_get( 30841 BCM_CONTROL(unit)->unit, 30842 entry, 30843 port_id, 30844 port_mask); 30845 } 30846 30847 int 30848 bcm_loop_field_qualify_SrcModuleGport( 30849 int unit, 30850 bcm_field_entry_t entry, 30851 bcm_gport_t data) 30852 { 30853 return bcm_field_qualify_SrcModuleGport( 30854 BCM_CONTROL(unit)->unit, 30855 entry, 30856 data); 30857 } 30858 30859 int 30860 bcm_loop_field_qualify_SrcModuleGport_get( 30861 int unit, 30862 bcm_field_entry_t entry, 30863 bcm_gport_t * data) 30864 { 30865 return bcm_field_qualify_SrcModuleGport_get( 30866 BCM_CONTROL(unit)->unit, 30867 entry, 30868 data); 30869 } 30870 30871 int 30872 bcm_loop_field_qualify_SrcMplsGport( 30873 int unit, 30874 bcm_field_entry_t entry, 30875 bcm_gport_t mpls_port_id) 30876 { 30877 return bcm_field_qualify_SrcMplsGport( 30878 BCM_CONTROL(unit)->unit, 30879 entry, 30880 mpls_port_id); 30881 } 30882 30883 int 30884 bcm_loop_field_qualify_SrcMplsGport_get( 30885 int unit, 30886 bcm_field_entry_t entry, 30887 bcm_gport_t * mpls_port_id) 30888 { 30889 return bcm_field_qualify_SrcMplsGport_get( 30890 BCM_CONTROL(unit)->unit, 30891 entry, 30892 mpls_port_id); 30893 } 30894 30895 int 30896 bcm_loop_field_qualify_SrcMplsGports( 30897 int unit, 30898 bcm_field_entry_t entry, 30899 bcm_gport_t mpls_port_id, 30900 bcm_gport_t mpls_port_mask) 30901 { 30902 return bcm_field_qualify_SrcMplsGports( 30903 BCM_CONTROL(unit)->unit, 30904 entry, 30905 mpls_port_id, 30906 mpls_port_mask); 30907 } 30908 30909 int 30910 bcm_loop_field_qualify_SrcMplsGports_get( 30911 int unit, 30912 bcm_field_entry_t entry, 30913 bcm_gport_t * mpls_port_id, 30914 bcm_gport_t * mpls_port_mask) 30915 { 30916 return bcm_field_qualify_SrcMplsGports_get( 30917 BCM_CONTROL(unit)->unit, 30918 entry, 30919 mpls_port_id, 30920 mpls_port_mask); 30921 } 30922 30923 int 30924 bcm_loop_field_qualify_SrcNivGport( 30925 int unit, 30926 bcm_field_entry_t entry, 30927 bcm_gport_t niv_port_id) 30928 { 30929 return bcm_field_qualify_SrcNivGport( 30930 BCM_CONTROL(unit)->unit, 30931 entry, 30932 niv_port_id); 30933 } 30934 30935 int 30936 bcm_loop_field_qualify_SrcNivGport_get( 30937 int unit, 30938 bcm_field_entry_t entry, 30939 bcm_gport_t * niv_port_id) 30940 { 30941 return bcm_field_qualify_SrcNivGport_get( 30942 BCM_CONTROL(unit)->unit, 30943 entry, 30944 niv_port_id); 30945 } 30946 30947 int 30948 bcm_loop_field_qualify_SrcNivGports( 30949 int unit, 30950 bcm_field_entry_t entry, 30951 bcm_gport_t niv_port_id, 30952 bcm_gport_t niv_port_mask) 30953 { 30954 return bcm_field_qualify_SrcNivGports( 30955 BCM_CONTROL(unit)->unit, 30956 entry, 30957 niv_port_id, 30958 niv_port_mask); 30959 } 30960 30961 int 30962 bcm_loop_field_qualify_SrcNivGports_get( 30963 int unit, 30964 bcm_field_entry_t entry, 30965 bcm_gport_t * niv_port_id, 30966 bcm_gport_t * niv_port_mask) 30967 { 30968 return bcm_field_qualify_SrcNivGports_get( 30969 BCM_CONTROL(unit)->unit, 30970 entry, 30971 niv_port_id, 30972 niv_port_mask); 30973 } 30974 30975 int 30976 bcm_loop_field_qualify_SrcPort( 30977 int unit, 30978 bcm_field_entry_t entry, 30979 bcm_module_t data_modid, 30980 bcm_module_t mask_modid, 30981 bcm_port_t data_port, 30982 bcm_port_t mask_port) 30983 { 30984 return bcm_field_qualify_SrcPort( 30985 BCM_CONTROL(unit)->unit, 30986 entry, 30987 data_modid, 30988 mask_modid, 30989 data_port, 30990 mask_port); 30991 } 30992 30993 int 30994 bcm_loop_field_qualify_SrcPortSRLanId( 30995 int unit, 30996 bcm_field_entry_t entry, 30997 uint8 lan_id) 30998 { 30999 return bcm_field_qualify_SrcPortSRLanId( 31000 BCM_CONTROL(unit)->unit, 31001 entry, 31002 lan_id); 31003 } 31004 31005 int 31006 bcm_loop_field_qualify_SrcPortSRLanId_get( 31007 int unit, 31008 bcm_field_entry_t entry, 31009 uint8 * lan_id) 31010 { 31011 return bcm_field_qualify_SrcPortSRLanId_get( 31012 BCM_CONTROL(unit)->unit, 31013 entry, 31014 lan_id); 31015 } 31016 31017 int 31018 bcm_loop_field_qualify_SrcPortSRMode( 31019 int unit, 31020 bcm_field_entry_t entry, 31021 bcm_field_sr_port_mode_t type, 31022 uint8 mask) 31023 { 31024 return bcm_field_qualify_SrcPortSRMode( 31025 BCM_CONTROL(unit)->unit, 31026 entry, 31027 type, 31028 mask); 31029 } 31030 31031 int 31032 bcm_loop_field_qualify_SrcPortSRMode_get( 31033 int unit, 31034 bcm_field_entry_t entry, 31035 bcm_field_sr_port_mode_t * type, 31036 uint8 * mask) 31037 { 31038 return bcm_field_qualify_SrcPortSRMode_get( 31039 BCM_CONTROL(unit)->unit, 31040 entry, 31041 type, 31042 mask); 31043 } 31044 31045 int 31046 bcm_loop_field_qualify_SrcPortSRNetId( 31047 int unit, 31048 bcm_field_entry_t entry, 31049 uint8 net_id, 31050 uint8 mask) 31051 { 31052 return bcm_field_qualify_SrcPortSRNetId( 31053 BCM_CONTROL(unit)->unit, 31054 entry, 31055 net_id, 31056 mask); 31057 } 31058 31059 int 31060 bcm_loop_field_qualify_SrcPortSRNetId_get( 31061 int unit, 31062 bcm_field_entry_t entry, 31063 uint8 * net_id, 31064 uint8 * mask) 31065 { 31066 return bcm_field_qualify_SrcPortSRNetId_get( 31067 BCM_CONTROL(unit)->unit, 31068 entry, 31069 net_id, 31070 mask); 31071 } 31072 31073 int 31074 bcm_loop_field_qualify_SrcPortSRRoleInterlink( 31075 int unit, 31076 bcm_field_entry_t entry, 31077 uint8 data) 31078 { 31079 return bcm_field_qualify_SrcPortSRRoleInterlink( 31080 BCM_CONTROL(unit)->unit, 31081 entry, 31082 data); 31083 } 31084 31085 int 31086 bcm_loop_field_qualify_SrcPortSRRoleInterlink_get( 31087 int unit, 31088 bcm_field_entry_t entry, 31089 uint8 * data) 31090 { 31091 return bcm_field_qualify_SrcPortSRRoleInterlink_get( 31092 BCM_CONTROL(unit)->unit, 31093 entry, 31094 data); 31095 } 31096 31097 int 31098 bcm_loop_field_qualify_SrcPortSRType( 31099 int unit, 31100 bcm_field_entry_t entry, 31101 bcm_field_port_sr_type_t type) 31102 { 31103 return bcm_field_qualify_SrcPortSRType( 31104 BCM_CONTROL(unit)->unit, 31105 entry, 31106 type); 31107 } 31108 31109 int 31110 bcm_loop_field_qualify_SrcPortSRType_get( 31111 int unit, 31112 bcm_field_entry_t entry, 31113 bcm_field_port_sr_type_t * type) 31114 { 31115 return bcm_field_qualify_SrcPortSRType_get( 31116 BCM_CONTROL(unit)->unit, 31117 entry, 31118 type); 31119 } 31120 31121 int 31122 bcm_loop_field_qualify_SrcPort_get( 31123 int unit, 31124 bcm_field_entry_t entry, 31125 bcm_module_t * data_modid, 31126 bcm_module_t * mask_modid, 31127 bcm_port_t * data_port, 31128 bcm_port_t * mask_port) 31129 { 31130 return bcm_field_qualify_SrcPort_get( 31131 BCM_CONTROL(unit)->unit, 31132 entry, 31133 data_modid, 31134 mask_modid, 31135 data_port, 31136 mask_port); 31137 } 31138 31139 int 31140 bcm_loop_field_qualify_SrcTMPort( 31141 int unit, 31142 bcm_field_entry_t entry, 31143 bcm_port_t data_port, 31144 bcm_port_t mask_port) 31145 { 31146 return bcm_field_qualify_SrcTMPort( 31147 BCM_CONTROL(unit)->unit, 31148 entry, 31149 data_port, 31150 mask_port); 31151 } 31152 31153 int 31154 bcm_loop_field_qualify_SrcTMPort_get( 31155 int unit, 31156 bcm_field_entry_t entry, 31157 bcm_port_t * data_port, 31158 bcm_port_t * mask_port) 31159 { 31160 return bcm_field_qualify_SrcTMPort_get( 31161 BCM_CONTROL(unit)->unit, 31162 entry, 31163 data_port, 31164 mask_port); 31165 } 31166 31167 int 31168 bcm_loop_field_qualify_SrcTrunk( 31169 int unit, 31170 bcm_field_entry_t entry, 31171 bcm_trunk_t data, 31172 bcm_trunk_t mask) 31173 { 31174 return bcm_field_qualify_SrcTrunk( 31175 BCM_CONTROL(unit)->unit, 31176 entry, 31177 data, 31178 mask); 31179 } 31180 31181 int 31182 bcm_loop_field_qualify_SrcTrunkMemberGport( 31183 int unit, 31184 bcm_field_entry_t entry, 31185 bcm_gport_t data) 31186 { 31187 return bcm_field_qualify_SrcTrunkMemberGport( 31188 BCM_CONTROL(unit)->unit, 31189 entry, 31190 data); 31191 } 31192 31193 int 31194 bcm_loop_field_qualify_SrcTrunkMemberGport_get( 31195 int unit, 31196 bcm_field_entry_t entry, 31197 bcm_gport_t * data) 31198 { 31199 return bcm_field_qualify_SrcTrunkMemberGport_get( 31200 BCM_CONTROL(unit)->unit, 31201 entry, 31202 data); 31203 } 31204 31205 int 31206 bcm_loop_field_qualify_SrcTrunk_get( 31207 int unit, 31208 bcm_field_entry_t entry, 31209 bcm_trunk_t * data, 31210 bcm_trunk_t * mask) 31211 { 31212 return bcm_field_qualify_SrcTrunk_get( 31213 BCM_CONTROL(unit)->unit, 31214 entry, 31215 data, 31216 mask); 31217 } 31218 31219 int 31220 bcm_loop_field_qualify_SrcVirtualPortValid( 31221 int unit, 31222 bcm_field_entry_t entry, 31223 uint8 data, 31224 uint8 mask) 31225 { 31226 return bcm_field_qualify_SrcVirtualPortValid( 31227 BCM_CONTROL(unit)->unit, 31228 entry, 31229 data, 31230 mask); 31231 } 31232 31233 int 31234 bcm_loop_field_qualify_SrcVirtualPortValid_get( 31235 int unit, 31236 bcm_field_entry_t entry, 31237 uint8 * data, 31238 uint8 * mask) 31239 { 31240 return bcm_field_qualify_SrcVirtualPortValid_get( 31241 BCM_CONTROL(unit)->unit, 31242 entry, 31243 data, 31244 mask); 31245 } 31246 31247 int 31248 bcm_loop_field_qualify_SrcVlanGport( 31249 int unit, 31250 bcm_field_entry_t entry, 31251 bcm_gport_t vlan_port_id) 31252 { 31253 return bcm_field_qualify_SrcVlanGport( 31254 BCM_CONTROL(unit)->unit, 31255 entry, 31256 vlan_port_id); 31257 } 31258 31259 int 31260 bcm_loop_field_qualify_SrcVlanGport_get( 31261 int unit, 31262 bcm_field_entry_t entry, 31263 bcm_gport_t * vlan_port_id) 31264 { 31265 return bcm_field_qualify_SrcVlanGport_get( 31266 BCM_CONTROL(unit)->unit, 31267 entry, 31268 vlan_port_id); 31269 } 31270 31271 int 31272 bcm_loop_field_qualify_SrcVlanGports( 31273 int unit, 31274 bcm_field_entry_t entry, 31275 bcm_gport_t vlan_port_id, 31276 bcm_gport_t vlan_port_mask) 31277 { 31278 return bcm_field_qualify_SrcVlanGports( 31279 BCM_CONTROL(unit)->unit, 31280 entry, 31281 vlan_port_id, 31282 vlan_port_mask); 31283 } 31284 31285 int 31286 bcm_loop_field_qualify_SrcVlanGports_get( 31287 int unit, 31288 bcm_field_entry_t entry, 31289 bcm_gport_t * vlan_port_id, 31290 bcm_gport_t * vlan_port_mask) 31291 { 31292 return bcm_field_qualify_SrcVlanGports_get( 31293 BCM_CONTROL(unit)->unit, 31294 entry, 31295 vlan_port_id, 31296 vlan_port_mask); 31297 } 31298 31299 int 31300 bcm_loop_field_qualify_SrcVxlanGport( 31301 int unit, 31302 bcm_field_entry_t entry, 31303 bcm_gport_t vxlan_port_id) 31304 { 31305 return bcm_field_qualify_SrcVxlanGport( 31306 BCM_CONTROL(unit)->unit, 31307 entry, 31308 vxlan_port_id); 31309 } 31310 31311 int 31312 bcm_loop_field_qualify_SrcVxlanGport_get( 31313 int unit, 31314 bcm_field_entry_t entry, 31315 bcm_gport_t * vxlan_port_id) 31316 { 31317 return bcm_field_qualify_SrcVxlanGport_get( 31318 BCM_CONTROL(unit)->unit, 31319 entry, 31320 vxlan_port_id); 31321 } 31322 31323 int 31324 bcm_loop_field_qualify_SrcVxlanGports( 31325 int unit, 31326 bcm_field_entry_t entry, 31327 bcm_gport_t vxlan_port_id, 31328 bcm_gport_t vxlan_port_mask) 31329 { 31330 return bcm_field_qualify_SrcVxlanGports( 31331 BCM_CONTROL(unit)->unit, 31332 entry, 31333 vxlan_port_id, 31334 vxlan_port_mask); 31335 } 31336 31337 int 31338 bcm_loop_field_qualify_SrcVxlanGports_get( 31339 int unit, 31340 bcm_field_entry_t entry, 31341 bcm_gport_t * vxlan_port_id, 31342 bcm_gport_t * vxlan_port_mask) 31343 { 31344 return bcm_field_qualify_SrcVxlanGports_get( 31345 BCM_CONTROL(unit)->unit, 31346 entry, 31347 vxlan_port_id, 31348 vxlan_port_mask); 31349 } 31350 31351 int 31352 bcm_loop_field_qualify_SrcWlanGport( 31353 int unit, 31354 bcm_field_entry_t entry, 31355 bcm_gport_t wlan_port_id) 31356 { 31357 return bcm_field_qualify_SrcWlanGport( 31358 BCM_CONTROL(unit)->unit, 31359 entry, 31360 wlan_port_id); 31361 } 31362 31363 int 31364 bcm_loop_field_qualify_SrcWlanGport_get( 31365 int unit, 31366 bcm_field_entry_t entry, 31367 bcm_gport_t * wlan_port_id) 31368 { 31369 return bcm_field_qualify_SrcWlanGport_get( 31370 BCM_CONTROL(unit)->unit, 31371 entry, 31372 wlan_port_id); 31373 } 31374 31375 int 31376 bcm_loop_field_qualify_SrcWlanGports( 31377 int unit, 31378 bcm_field_entry_t entry, 31379 bcm_gport_t wlan_port_id, 31380 bcm_gport_t wlan_port_mask) 31381 { 31382 return bcm_field_qualify_SrcWlanGports( 31383 BCM_CONTROL(unit)->unit, 31384 entry, 31385 wlan_port_id, 31386 wlan_port_mask); 31387 } 31388 31389 int 31390 bcm_loop_field_qualify_SrcWlanGports_get( 31391 int unit, 31392 bcm_field_entry_t entry, 31393 bcm_gport_t * wlan_port_id, 31394 bcm_gport_t * wlan_port_mask) 31395 { 31396 return bcm_field_qualify_SrcWlanGports_get( 31397 BCM_CONTROL(unit)->unit, 31398 entry, 31399 wlan_port_id, 31400 wlan_port_mask); 31401 } 31402 31403 int 31404 bcm_loop_field_qualify_StackingRoute( 31405 int unit, 31406 bcm_field_entry_t entry, 31407 uint32 data, 31408 uint32 mask) 31409 { 31410 return bcm_field_qualify_StackingRoute( 31411 BCM_CONTROL(unit)->unit, 31412 entry, 31413 data, 31414 mask); 31415 } 31416 31417 int 31418 bcm_loop_field_qualify_StackingRoute_get( 31419 int unit, 31420 bcm_field_entry_t entry, 31421 uint32 * data, 31422 uint32 * mask) 31423 { 31424 return bcm_field_qualify_StackingRoute_get( 31425 BCM_CONTROL(unit)->unit, 31426 entry, 31427 data, 31428 mask); 31429 } 31430 31431 int 31432 bcm_loop_field_qualify_Stage( 31433 int unit, 31434 bcm_field_entry_t entry, 31435 bcm_field_stage_t data) 31436 { 31437 return bcm_field_qualify_Stage( 31438 BCM_CONTROL(unit)->unit, 31439 entry, 31440 data); 31441 } 31442 31443 int 31444 bcm_loop_field_qualify_Stage_get( 31445 int unit, 31446 bcm_field_entry_t entry, 31447 bcm_field_stage_t * data) 31448 { 31449 return bcm_field_qualify_Stage_get( 31450 BCM_CONTROL(unit)->unit, 31451 entry, 31452 data); 31453 } 31454 31455 int 31456 bcm_loop_field_qualify_StaggeredDirectValue( 31457 int unit, 31458 bcm_field_entry_t entry, 31459 uint32 data, 31460 uint32 mask) 31461 { 31462 return bcm_field_qualify_StaggeredDirectValue( 31463 BCM_CONTROL(unit)->unit, 31464 entry, 31465 data, 31466 mask); 31467 } 31468 31469 int 31470 bcm_loop_field_qualify_StaggeredDirectValue_get( 31471 int unit, 31472 bcm_field_entry_t entry, 31473 uint32 * data, 31474 uint32 * mask) 31475 { 31476 return bcm_field_qualify_StaggeredDirectValue_get( 31477 BCM_CONTROL(unit)->unit, 31478 entry, 31479 data, 31480 mask); 31481 } 31482 31483 int 31484 bcm_loop_field_qualify_StaggeredPreselProfile0( 31485 int unit, 31486 bcm_field_entry_t entry, 31487 uint32 data, 31488 uint32 mask) 31489 { 31490 return bcm_field_qualify_StaggeredPreselProfile0( 31491 BCM_CONTROL(unit)->unit, 31492 entry, 31493 data, 31494 mask); 31495 } 31496 31497 int 31498 bcm_loop_field_qualify_StaggeredPreselProfile0_get( 31499 int unit, 31500 bcm_field_entry_t entry, 31501 uint32 * data, 31502 uint32 * mask) 31503 { 31504 return bcm_field_qualify_StaggeredPreselProfile0_get( 31505 BCM_CONTROL(unit)->unit, 31506 entry, 31507 data, 31508 mask); 31509 } 31510 31511 int 31512 bcm_loop_field_qualify_StaggeredPreselProfile1( 31513 int unit, 31514 bcm_field_entry_t entry, 31515 uint32 data, 31516 uint32 mask) 31517 { 31518 return bcm_field_qualify_StaggeredPreselProfile1( 31519 BCM_CONTROL(unit)->unit, 31520 entry, 31521 data, 31522 mask); 31523 } 31524 31525 int 31526 bcm_loop_field_qualify_StaggeredPreselProfile1_get( 31527 int unit, 31528 bcm_field_entry_t entry, 31529 uint32 * data, 31530 uint32 * mask) 31531 { 31532 return bcm_field_qualify_StaggeredPreselProfile1_get( 31533 BCM_CONTROL(unit)->unit, 31534 entry, 31535 data, 31536 mask); 31537 } 31538 31539 int 31540 bcm_loop_field_qualify_StaggeredPreselProfile2( 31541 int unit, 31542 bcm_field_entry_t entry, 31543 uint32 data, 31544 uint32 mask) 31545 { 31546 return bcm_field_qualify_StaggeredPreselProfile2( 31547 BCM_CONTROL(unit)->unit, 31548 entry, 31549 data, 31550 mask); 31551 } 31552 31553 int 31554 bcm_loop_field_qualify_StaggeredPreselProfile2_get( 31555 int unit, 31556 bcm_field_entry_t entry, 31557 uint32 * data, 31558 uint32 * mask) 31559 { 31560 return bcm_field_qualify_StaggeredPreselProfile2_get( 31561 BCM_CONTROL(unit)->unit, 31562 entry, 31563 data, 31564 mask); 31565 } 31566 31567 int 31568 bcm_loop_field_qualify_StaggeredPreselProfile3( 31569 int unit, 31570 bcm_field_entry_t entry, 31571 uint32 data, 31572 uint32 mask) 31573 { 31574 return bcm_field_qualify_StaggeredPreselProfile3( 31575 BCM_CONTROL(unit)->unit, 31576 entry, 31577 data, 31578 mask); 31579 } 31580 31581 int 31582 bcm_loop_field_qualify_StaggeredPreselProfile3_get( 31583 int unit, 31584 bcm_field_entry_t entry, 31585 uint32 * data, 31586 uint32 * mask) 31587 { 31588 return bcm_field_qualify_StaggeredPreselProfile3_get( 31589 BCM_CONTROL(unit)->unit, 31590 entry, 31591 data, 31592 mask); 31593 } 31594 31595 int 31596 bcm_loop_field_qualify_StaggeredPreselProfileDirect( 31597 int unit, 31598 bcm_field_entry_t entry, 31599 uint32 data, 31600 uint32 mask) 31601 { 31602 return bcm_field_qualify_StaggeredPreselProfileDirect( 31603 BCM_CONTROL(unit)->unit, 31604 entry, 31605 data, 31606 mask); 31607 } 31608 31609 int 31610 bcm_loop_field_qualify_StaggeredPreselProfileDirect_get( 31611 int unit, 31612 bcm_field_entry_t entry, 31613 uint32 * data, 31614 uint32 * mask) 31615 { 31616 return bcm_field_qualify_StaggeredPreselProfileDirect_get( 31617 BCM_CONTROL(unit)->unit, 31618 entry, 31619 data, 31620 mask); 31621 } 31622 31623 int 31624 bcm_loop_field_qualify_StaggeredValue0( 31625 int unit, 31626 bcm_field_entry_t entry, 31627 uint32 data, 31628 uint32 mask) 31629 { 31630 return bcm_field_qualify_StaggeredValue0( 31631 BCM_CONTROL(unit)->unit, 31632 entry, 31633 data, 31634 mask); 31635 } 31636 31637 int 31638 bcm_loop_field_qualify_StaggeredValue0_get( 31639 int unit, 31640 bcm_field_entry_t entry, 31641 uint32 * data, 31642 uint32 * mask) 31643 { 31644 return bcm_field_qualify_StaggeredValue0_get( 31645 BCM_CONTROL(unit)->unit, 31646 entry, 31647 data, 31648 mask); 31649 } 31650 31651 int 31652 bcm_loop_field_qualify_StaggeredValue1( 31653 int unit, 31654 bcm_field_entry_t entry, 31655 uint32 data, 31656 uint32 mask) 31657 { 31658 return bcm_field_qualify_StaggeredValue1( 31659 BCM_CONTROL(unit)->unit, 31660 entry, 31661 data, 31662 mask); 31663 } 31664 31665 int 31666 bcm_loop_field_qualify_StaggeredValue1_get( 31667 int unit, 31668 bcm_field_entry_t entry, 31669 uint32 * data, 31670 uint32 * mask) 31671 { 31672 return bcm_field_qualify_StaggeredValue1_get( 31673 BCM_CONTROL(unit)->unit, 31674 entry, 31675 data, 31676 mask); 31677 } 31678 31679 int 31680 bcm_loop_field_qualify_StaggeredValue2( 31681 int unit, 31682 bcm_field_entry_t entry, 31683 uint32 data, 31684 uint32 mask) 31685 { 31686 return bcm_field_qualify_StaggeredValue2( 31687 BCM_CONTROL(unit)->unit, 31688 entry, 31689 data, 31690 mask); 31691 } 31692 31693 int 31694 bcm_loop_field_qualify_StaggeredValue2_get( 31695 int unit, 31696 bcm_field_entry_t entry, 31697 uint32 * data, 31698 uint32 * mask) 31699 { 31700 return bcm_field_qualify_StaggeredValue2_get( 31701 BCM_CONTROL(unit)->unit, 31702 entry, 31703 data, 31704 mask); 31705 } 31706 31707 int 31708 bcm_loop_field_qualify_StaggeredValue3( 31709 int unit, 31710 bcm_field_entry_t entry, 31711 uint32 data, 31712 uint32 mask) 31713 { 31714 return bcm_field_qualify_StaggeredValue3( 31715 BCM_CONTROL(unit)->unit, 31716 entry, 31717 data, 31718 mask); 31719 } 31720 31721 int 31722 bcm_loop_field_qualify_StaggeredValue3_get( 31723 int unit, 31724 bcm_field_entry_t entry, 31725 uint32 * data, 31726 uint32 * mask) 31727 { 31728 return bcm_field_qualify_StaggeredValue3_get( 31729 BCM_CONTROL(unit)->unit, 31730 entry, 31731 data, 31732 mask); 31733 } 31734 31735 int 31736 bcm_loop_field_qualify_StpState( 31737 int unit, 31738 bcm_field_entry_t entry, 31739 uint8 data) 31740 { 31741 return bcm_field_qualify_StpState( 31742 BCM_CONTROL(unit)->unit, 31743 entry, 31744 data); 31745 } 31746 31747 int 31748 bcm_loop_field_qualify_StpState_get( 31749 int unit, 31750 bcm_field_entry_t entry, 31751 uint8 * data) 31752 { 31753 return bcm_field_qualify_StpState_get( 31754 BCM_CONTROL(unit)->unit, 31755 entry, 31756 data); 31757 } 31758 31759 int 31760 bcm_loop_field_qualify_SubportPktTag( 31761 int unit, 31762 bcm_field_entry_t entry, 31763 uint16 data, 31764 uint16 mask) 31765 { 31766 return bcm_field_qualify_SubportPktTag( 31767 BCM_CONTROL(unit)->unit, 31768 entry, 31769 data, 31770 mask); 31771 } 31772 31773 int 31774 bcm_loop_field_qualify_SubportPktTag_get( 31775 int unit, 31776 bcm_field_entry_t entry, 31777 uint16 * data, 31778 uint16 * mask) 31779 { 31780 return bcm_field_qualify_SubportPktTag_get( 31781 BCM_CONTROL(unit)->unit, 31782 entry, 31783 data, 31784 mask); 31785 } 31786 31787 int 31788 bcm_loop_field_qualify_SubportTagPresent( 31789 int unit, 31790 bcm_field_entry_t entry, 31791 uint8 data, 31792 uint8 mask) 31793 { 31794 return bcm_field_qualify_SubportTagPresent( 31795 BCM_CONTROL(unit)->unit, 31796 entry, 31797 data, 31798 mask); 31799 } 31800 31801 int 31802 bcm_loop_field_qualify_SubportTagPresent_get( 31803 int unit, 31804 bcm_field_entry_t entry, 31805 uint8 * data, 31806 uint8 * mask) 31807 { 31808 return bcm_field_qualify_SubportTagPresent_get( 31809 BCM_CONTROL(unit)->unit, 31810 entry, 31811 data, 31812 mask); 31813 } 31814 31815 int 31816 bcm_loop_field_qualify_SysHdrLocalDstport( 31817 int unit, 31818 bcm_field_entry_t entry, 31819 bcm_port_t data, 31820 bcm_port_t mask) 31821 { 31822 return bcm_field_qualify_SysHdrLocalDstport( 31823 BCM_CONTROL(unit)->unit, 31824 entry, 31825 data, 31826 mask); 31827 } 31828 31829 int 31830 bcm_loop_field_qualify_SysHdrLocalDstport_get( 31831 int unit, 31832 bcm_field_entry_t entry, 31833 bcm_port_t * data, 31834 bcm_port_t * mask) 31835 { 31836 return bcm_field_qualify_SysHdrLocalDstport_get( 31837 BCM_CONTROL(unit)->unit, 31838 entry, 31839 data, 31840 mask); 31841 } 31842 31843 int 31844 bcm_loop_field_qualify_SysHdrType( 31845 int unit, 31846 bcm_field_entry_t entry, 31847 bcm_field_sys_hdr_type_t type) 31848 { 31849 return bcm_field_qualify_SysHdrType( 31850 BCM_CONTROL(unit)->unit, 31851 entry, 31852 type); 31853 } 31854 31855 int 31856 bcm_loop_field_qualify_SysHdrType_get( 31857 int unit, 31858 bcm_field_entry_t entry, 31859 bcm_field_sys_hdr_type_t * type) 31860 { 31861 return bcm_field_qualify_SysHdrType_get( 31862 BCM_CONTROL(unit)->unit, 31863 entry, 31864 type); 31865 } 31866 31867 int 31868 bcm_loop_field_qualify_SystemPortBitmap( 31869 int unit, 31870 bcm_field_entry_t entry, 31871 bcm_pbmp_t data, 31872 bcm_pbmp_t mask) 31873 { 31874 return bcm_field_qualify_SystemPortBitmap( 31875 BCM_CONTROL(unit)->unit, 31876 entry, 31877 data, 31878 mask); 31879 } 31880 31881 int 31882 bcm_loop_field_qualify_SystemPortBitmap_get( 31883 int unit, 31884 bcm_field_entry_t entry, 31885 bcm_pbmp_t * data, 31886 bcm_pbmp_t * mask) 31887 { 31888 return bcm_field_qualify_SystemPortBitmap_get( 31889 BCM_CONTROL(unit)->unit, 31890 entry, 31891 data, 31892 mask); 31893 } 31894 31895 int 31896 bcm_loop_field_qualify_TafCosProfile( 31897 int unit, 31898 bcm_field_entry_t entry, 31899 uint32 data, 31900 uint32 mask) 31901 { 31902 return bcm_field_qualify_TafCosProfile( 31903 BCM_CONTROL(unit)->unit, 31904 entry, 31905 data, 31906 mask); 31907 } 31908 31909 int 31910 bcm_loop_field_qualify_TafCosProfile_get( 31911 int unit, 31912 bcm_field_entry_t entry, 31913 uint32 * data, 31914 uint32 * mask) 31915 { 31916 return bcm_field_qualify_TafCosProfile_get( 31917 BCM_CONTROL(unit)->unit, 31918 entry, 31919 data, 31920 mask); 31921 } 31922 31923 int 31924 bcm_loop_field_qualify_TafEnable( 31925 int unit, 31926 bcm_field_entry_t entry, 31927 uint8 enable) 31928 { 31929 return bcm_field_qualify_TafEnable( 31930 BCM_CONTROL(unit)->unit, 31931 entry, 31932 enable); 31933 } 31934 31935 int 31936 bcm_loop_field_qualify_TafEnable_get( 31937 int unit, 31938 bcm_field_entry_t entry, 31939 uint8 * enable) 31940 { 31941 return bcm_field_qualify_TafEnable_get( 31942 BCM_CONTROL(unit)->unit, 31943 entry, 31944 enable); 31945 } 31946 31947 int 31948 bcm_loop_field_qualify_TafGateId( 31949 int unit, 31950 bcm_field_entry_t entry, 31951 uint32 data, 31952 uint32 mask) 31953 { 31954 return bcm_field_qualify_TafGateId( 31955 BCM_CONTROL(unit)->unit, 31956 entry, 31957 data, 31958 mask); 31959 } 31960 31961 int 31962 bcm_loop_field_qualify_TafGateId_get( 31963 int unit, 31964 bcm_field_entry_t entry, 31965 uint32 * data, 31966 uint32 * mask) 31967 { 31968 return bcm_field_qualify_TafGateId_get( 31969 BCM_CONTROL(unit)->unit, 31970 entry, 31971 data, 31972 mask); 31973 } 31974 31975 int 31976 bcm_loop_field_qualify_TafGateState( 31977 int unit, 31978 bcm_field_entry_t entry, 31979 uint8 state) 31980 { 31981 return bcm_field_qualify_TafGateState( 31982 BCM_CONTROL(unit)->unit, 31983 entry, 31984 state); 31985 } 31986 31987 int 31988 bcm_loop_field_qualify_TafGateState_get( 31989 int unit, 31990 bcm_field_entry_t entry, 31991 uint8 * state) 31992 { 31993 return bcm_field_qualify_TafGateState_get( 31994 BCM_CONTROL(unit)->unit, 31995 entry, 31996 state); 31997 } 31998 31999 int 32000 bcm_loop_field_qualify_TcpClassOne( 32001 int unit, 32002 bcm_field_entry_t entry, 32003 bcm_class_t data, 32004 bcm_class_t mask) 32005 { 32006 return bcm_field_qualify_TcpClassOne( 32007 BCM_CONTROL(unit)->unit, 32008 entry, 32009 data, 32010 mask); 32011 } 32012 32013 int 32014 bcm_loop_field_qualify_TcpClassOne_get( 32015 int unit, 32016 bcm_field_entry_t entry, 32017 bcm_class_t * data, 32018 bcm_class_t * mask) 32019 { 32020 return bcm_field_qualify_TcpClassOne_get( 32021 BCM_CONTROL(unit)->unit, 32022 entry, 32023 data, 32024 mask); 32025 } 32026 32027 int 32028 bcm_loop_field_qualify_TcpClassZero( 32029 int unit, 32030 bcm_field_entry_t entry, 32031 bcm_class_t data, 32032 bcm_class_t mask) 32033 { 32034 return bcm_field_qualify_TcpClassZero( 32035 BCM_CONTROL(unit)->unit, 32036 entry, 32037 data, 32038 mask); 32039 } 32040 32041 int 32042 bcm_loop_field_qualify_TcpClassZero_get( 32043 int unit, 32044 bcm_field_entry_t entry, 32045 bcm_class_t * data, 32046 bcm_class_t * mask) 32047 { 32048 return bcm_field_qualify_TcpClassZero_get( 32049 BCM_CONTROL(unit)->unit, 32050 entry, 32051 data, 32052 mask); 32053 } 32054 32055 int 32056 bcm_loop_field_qualify_TcpControl( 32057 int unit, 32058 bcm_field_entry_t entry, 32059 uint8 data, 32060 uint8 mask) 32061 { 32062 return bcm_field_qualify_TcpControl( 32063 BCM_CONTROL(unit)->unit, 32064 entry, 32065 data, 32066 mask); 32067 } 32068 32069 int 32070 bcm_loop_field_qualify_TcpControl_get( 32071 int unit, 32072 bcm_field_entry_t entry, 32073 uint8 * data, 32074 uint8 * mask) 32075 { 32076 return bcm_field_qualify_TcpControl_get( 32077 BCM_CONTROL(unit)->unit, 32078 entry, 32079 data, 32080 mask); 32081 } 32082 32083 int 32084 bcm_loop_field_qualify_TcpHeaderSize( 32085 int unit, 32086 bcm_field_entry_t entry, 32087 uint8 data, 32088 uint8 mask) 32089 { 32090 return bcm_field_qualify_TcpHeaderSize( 32091 BCM_CONTROL(unit)->unit, 32092 entry, 32093 data, 32094 mask); 32095 } 32096 32097 int 32098 bcm_loop_field_qualify_TcpHeaderSize_get( 32099 int unit, 32100 bcm_field_entry_t entry, 32101 uint8 * data, 32102 uint8 * mask) 32103 { 32104 return bcm_field_qualify_TcpHeaderSize_get( 32105 BCM_CONTROL(unit)->unit, 32106 entry, 32107 data, 32108 mask); 32109 } 32110 32111 int 32112 bcm_loop_field_qualify_TcpSequenceZero( 32113 int unit, 32114 bcm_field_entry_t entry, 32115 uint32 flag) 32116 { 32117 return bcm_field_qualify_TcpSequenceZero( 32118 BCM_CONTROL(unit)->unit, 32119 entry, 32120 flag); 32121 } 32122 32123 int 32124 bcm_loop_field_qualify_TcpSequenceZero_get( 32125 int unit, 32126 bcm_field_entry_t entry, 32127 uint32 * flag) 32128 { 32129 return bcm_field_qualify_TcpSequenceZero_get( 32130 BCM_CONTROL(unit)->unit, 32131 entry, 32132 flag); 32133 } 32134 32135 int 32136 bcm_loop_field_qualify_TimeStampTxPktType( 32137 int unit, 32138 bcm_field_entry_t entry, 32139 bcm_field_timestamp_transmit_pkt_type_t ts_pkt_type) 32140 { 32141 return bcm_field_qualify_TimeStampTxPktType( 32142 BCM_CONTROL(unit)->unit, 32143 entry, 32144 ts_pkt_type); 32145 } 32146 32147 int 32148 bcm_loop_field_qualify_TimeStampTxPktType_get( 32149 int unit, 32150 bcm_field_entry_t entry, 32151 bcm_field_timestamp_transmit_pkt_type_t * ts_pkt_type) 32152 { 32153 return bcm_field_qualify_TimeStampTxPktType_get( 32154 BCM_CONTROL(unit)->unit, 32155 entry, 32156 ts_pkt_type); 32157 } 32158 32159 int 32160 bcm_loop_field_qualify_Tos( 32161 int unit, 32162 bcm_field_entry_t entry, 32163 uint8 data, 32164 uint8 mask) 32165 { 32166 return bcm_field_qualify_Tos( 32167 BCM_CONTROL(unit)->unit, 32168 entry, 32169 data, 32170 mask); 32171 } 32172 32173 int 32174 bcm_loop_field_qualify_TosClassOne( 32175 int unit, 32176 bcm_field_entry_t entry, 32177 bcm_class_t data, 32178 bcm_class_t mask) 32179 { 32180 return bcm_field_qualify_TosClassOne( 32181 BCM_CONTROL(unit)->unit, 32182 entry, 32183 data, 32184 mask); 32185 } 32186 32187 int 32188 bcm_loop_field_qualify_TosClassOne_get( 32189 int unit, 32190 bcm_field_entry_t entry, 32191 bcm_class_t * data, 32192 bcm_class_t * mask) 32193 { 32194 return bcm_field_qualify_TosClassOne_get( 32195 BCM_CONTROL(unit)->unit, 32196 entry, 32197 data, 32198 mask); 32199 } 32200 32201 int 32202 bcm_loop_field_qualify_TosClassZero( 32203 int unit, 32204 bcm_field_entry_t entry, 32205 bcm_class_t data, 32206 bcm_class_t mask) 32207 { 32208 return bcm_field_qualify_TosClassZero( 32209 BCM_CONTROL(unit)->unit, 32210 entry, 32211 data, 32212 mask); 32213 } 32214 32215 int 32216 bcm_loop_field_qualify_TosClassZero_get( 32217 int unit, 32218 bcm_field_entry_t entry, 32219 bcm_class_t * data, 32220 bcm_class_t * mask) 32221 { 32222 return bcm_field_qualify_TosClassZero_get( 32223 BCM_CONTROL(unit)->unit, 32224 entry, 32225 data, 32226 mask); 32227 } 32228 32229 int 32230 bcm_loop_field_qualify_TosLower4Bits( 32231 int unit, 32232 bcm_field_entry_t entry, 32233 uint8 data, 32234 uint8 mask) 32235 { 32236 return bcm_field_qualify_TosLower4Bits( 32237 BCM_CONTROL(unit)->unit, 32238 entry, 32239 data, 32240 mask); 32241 } 32242 32243 int 32244 bcm_loop_field_qualify_TosLower4Bits_get( 32245 int unit, 32246 bcm_field_entry_t entry, 32247 uint8 * data, 32248 uint8 * mask) 32249 { 32250 return bcm_field_qualify_TosLower4Bits_get( 32251 BCM_CONTROL(unit)->unit, 32252 entry, 32253 data, 32254 mask); 32255 } 32256 32257 int 32258 bcm_loop_field_qualify_Tos_get( 32259 int unit, 32260 bcm_field_entry_t entry, 32261 uint8 * data, 32262 uint8 * mask) 32263 { 32264 return bcm_field_qualify_Tos_get( 32265 BCM_CONTROL(unit)->unit, 32266 entry, 32267 data, 32268 mask); 32269 } 32270 32271 int 32272 bcm_loop_field_qualify_TranslatedInnerVlan( 32273 int unit, 32274 bcm_field_entry_t entry, 32275 bcm_vlan_t data, 32276 bcm_vlan_t mask) 32277 { 32278 return bcm_field_qualify_TranslatedInnerVlan( 32279 BCM_CONTROL(unit)->unit, 32280 entry, 32281 data, 32282 mask); 32283 } 32284 32285 int 32286 bcm_loop_field_qualify_TranslatedInnerVlanCfi( 32287 int unit, 32288 bcm_field_entry_t entry, 32289 uint8 data, 32290 uint8 mask) 32291 { 32292 return bcm_field_qualify_TranslatedInnerVlanCfi( 32293 BCM_CONTROL(unit)->unit, 32294 entry, 32295 data, 32296 mask); 32297 } 32298 32299 int 32300 bcm_loop_field_qualify_TranslatedInnerVlanCfi_get( 32301 int unit, 32302 bcm_field_entry_t entry, 32303 uint8 * data, 32304 uint8 * mask) 32305 { 32306 return bcm_field_qualify_TranslatedInnerVlanCfi_get( 32307 BCM_CONTROL(unit)->unit, 32308 entry, 32309 data, 32310 mask); 32311 } 32312 32313 int 32314 bcm_loop_field_qualify_TranslatedInnerVlanId( 32315 int unit, 32316 bcm_field_entry_t entry, 32317 bcm_vlan_t data, 32318 bcm_vlan_t mask) 32319 { 32320 return bcm_field_qualify_TranslatedInnerVlanId( 32321 BCM_CONTROL(unit)->unit, 32322 entry, 32323 data, 32324 mask); 32325 } 32326 32327 int 32328 bcm_loop_field_qualify_TranslatedInnerVlanId_get( 32329 int unit, 32330 bcm_field_entry_t entry, 32331 bcm_vlan_t * data, 32332 bcm_vlan_t * mask) 32333 { 32334 return bcm_field_qualify_TranslatedInnerVlanId_get( 32335 BCM_CONTROL(unit)->unit, 32336 entry, 32337 data, 32338 mask); 32339 } 32340 32341 int 32342 bcm_loop_field_qualify_TranslatedInnerVlanPri( 32343 int unit, 32344 bcm_field_entry_t entry, 32345 uint8 data, 32346 uint8 mask) 32347 { 32348 return bcm_field_qualify_TranslatedInnerVlanPri( 32349 BCM_CONTROL(unit)->unit, 32350 entry, 32351 data, 32352 mask); 32353 } 32354 32355 int 32356 bcm_loop_field_qualify_TranslatedInnerVlanPri_get( 32357 int unit, 32358 bcm_field_entry_t entry, 32359 uint8 * data, 32360 uint8 * mask) 32361 { 32362 return bcm_field_qualify_TranslatedInnerVlanPri_get( 32363 BCM_CONTROL(unit)->unit, 32364 entry, 32365 data, 32366 mask); 32367 } 32368 32369 int 32370 bcm_loop_field_qualify_TranslatedInnerVlan_get( 32371 int unit, 32372 bcm_field_entry_t entry, 32373 bcm_vlan_t * data, 32374 bcm_vlan_t * mask) 32375 { 32376 return bcm_field_qualify_TranslatedInnerVlan_get( 32377 BCM_CONTROL(unit)->unit, 32378 entry, 32379 data, 32380 mask); 32381 } 32382 32383 int 32384 bcm_loop_field_qualify_TranslatedOuterVlan( 32385 int unit, 32386 bcm_field_entry_t entry, 32387 bcm_vlan_t data, 32388 bcm_vlan_t mask) 32389 { 32390 return bcm_field_qualify_TranslatedOuterVlan( 32391 BCM_CONTROL(unit)->unit, 32392 entry, 32393 data, 32394 mask); 32395 } 32396 32397 int 32398 bcm_loop_field_qualify_TranslatedOuterVlanCfi( 32399 int unit, 32400 bcm_field_entry_t entry, 32401 uint8 data, 32402 uint8 mask) 32403 { 32404 return bcm_field_qualify_TranslatedOuterVlanCfi( 32405 BCM_CONTROL(unit)->unit, 32406 entry, 32407 data, 32408 mask); 32409 } 32410 32411 int 32412 bcm_loop_field_qualify_TranslatedOuterVlanCfi_get( 32413 int unit, 32414 bcm_field_entry_t entry, 32415 uint8 * data, 32416 uint8 * mask) 32417 { 32418 return bcm_field_qualify_TranslatedOuterVlanCfi_get( 32419 BCM_CONTROL(unit)->unit, 32420 entry, 32421 data, 32422 mask); 32423 } 32424 32425 int 32426 bcm_loop_field_qualify_TranslatedOuterVlanId( 32427 int unit, 32428 bcm_field_entry_t entry, 32429 bcm_vlan_t data, 32430 bcm_vlan_t mask) 32431 { 32432 return bcm_field_qualify_TranslatedOuterVlanId( 32433 BCM_CONTROL(unit)->unit, 32434 entry, 32435 data, 32436 mask); 32437 } 32438 32439 int 32440 bcm_loop_field_qualify_TranslatedOuterVlanId_get( 32441 int unit, 32442 bcm_field_entry_t entry, 32443 bcm_vlan_t * data, 32444 bcm_vlan_t * mask) 32445 { 32446 return bcm_field_qualify_TranslatedOuterVlanId_get( 32447 BCM_CONTROL(unit)->unit, 32448 entry, 32449 data, 32450 mask); 32451 } 32452 32453 int 32454 bcm_loop_field_qualify_TranslatedOuterVlanPri( 32455 int unit, 32456 bcm_field_entry_t entry, 32457 uint8 data, 32458 uint8 mask) 32459 { 32460 return bcm_field_qualify_TranslatedOuterVlanPri( 32461 BCM_CONTROL(unit)->unit, 32462 entry, 32463 data, 32464 mask); 32465 } 32466 32467 int 32468 bcm_loop_field_qualify_TranslatedOuterVlanPri_get( 32469 int unit, 32470 bcm_field_entry_t entry, 32471 uint8 * data, 32472 uint8 * mask) 32473 { 32474 return bcm_field_qualify_TranslatedOuterVlanPri_get( 32475 BCM_CONTROL(unit)->unit, 32476 entry, 32477 data, 32478 mask); 32479 } 32480 32481 int 32482 bcm_loop_field_qualify_TranslatedOuterVlan_get( 32483 int unit, 32484 bcm_field_entry_t entry, 32485 bcm_vlan_t * data, 32486 bcm_vlan_t * mask) 32487 { 32488 return bcm_field_qualify_TranslatedOuterVlan_get( 32489 BCM_CONTROL(unit)->unit, 32490 entry, 32491 data, 32492 mask); 32493 } 32494 32495 int 32496 bcm_loop_field_qualify_TranslatedVlanFormat( 32497 int unit, 32498 bcm_field_entry_t entry, 32499 uint8 data, 32500 uint8 mask) 32501 { 32502 return bcm_field_qualify_TranslatedVlanFormat( 32503 BCM_CONTROL(unit)->unit, 32504 entry, 32505 data, 32506 mask); 32507 } 32508 32509 int 32510 bcm_loop_field_qualify_TranslatedVlanFormat_get( 32511 int unit, 32512 bcm_field_entry_t entry, 32513 uint8 * data, 32514 uint8 * mask) 32515 { 32516 return bcm_field_qualify_TranslatedVlanFormat_get( 32517 BCM_CONTROL(unit)->unit, 32518 entry, 32519 data, 32520 mask); 32521 } 32522 32523 int 32524 bcm_loop_field_qualify_TrillEgressRbridge( 32525 int unit, 32526 bcm_field_entry_t entry, 32527 uint32 data, 32528 uint32 mask) 32529 { 32530 return bcm_field_qualify_TrillEgressRbridge( 32531 BCM_CONTROL(unit)->unit, 32532 entry, 32533 data, 32534 mask); 32535 } 32536 32537 int 32538 bcm_loop_field_qualify_TrillEgressRbridgeHit( 32539 int unit, 32540 bcm_field_entry_t entry, 32541 uint8 data, 32542 uint8 mask) 32543 { 32544 return bcm_field_qualify_TrillEgressRbridgeHit( 32545 BCM_CONTROL(unit)->unit, 32546 entry, 32547 data, 32548 mask); 32549 } 32550 32551 int 32552 bcm_loop_field_qualify_TrillEgressRbridgeHit_get( 32553 int unit, 32554 bcm_field_entry_t entry, 32555 uint8 * data, 32556 uint8 * mask) 32557 { 32558 return bcm_field_qualify_TrillEgressRbridgeHit_get( 32559 BCM_CONTROL(unit)->unit, 32560 entry, 32561 data, 32562 mask); 32563 } 32564 32565 int 32566 bcm_loop_field_qualify_TrillEgressRbridge_get( 32567 int unit, 32568 bcm_field_entry_t entry, 32569 uint32 * data, 32570 uint32 * mask) 32571 { 32572 return bcm_field_qualify_TrillEgressRbridge_get( 32573 BCM_CONTROL(unit)->unit, 32574 entry, 32575 data, 32576 mask); 32577 } 32578 32579 int 32580 bcm_loop_field_qualify_TrillHopCount( 32581 int unit, 32582 bcm_field_entry_t entry, 32583 uint8 data, 32584 uint8 mask) 32585 { 32586 return bcm_field_qualify_TrillHopCount( 32587 BCM_CONTROL(unit)->unit, 32588 entry, 32589 data, 32590 mask); 32591 } 32592 32593 int 32594 bcm_loop_field_qualify_TrillHopCount_get( 32595 int unit, 32596 bcm_field_entry_t entry, 32597 uint8 * data, 32598 uint8 * mask) 32599 { 32600 return bcm_field_qualify_TrillHopCount_get( 32601 BCM_CONTROL(unit)->unit, 32602 entry, 32603 data, 32604 mask); 32605 } 32606 32607 int 32608 bcm_loop_field_qualify_TrillIVersion( 32609 int unit, 32610 bcm_field_entry_t entry, 32611 uint8 data, 32612 uint8 mask) 32613 { 32614 return bcm_field_qualify_TrillIVersion( 32615 BCM_CONTROL(unit)->unit, 32616 entry, 32617 data, 32618 mask); 32619 } 32620 32621 int 32622 bcm_loop_field_qualify_TrillIVersion_get( 32623 int unit, 32624 bcm_field_entry_t entry, 32625 uint8 * data, 32626 uint8 * mask) 32627 { 32628 return bcm_field_qualify_TrillIVersion_get( 32629 BCM_CONTROL(unit)->unit, 32630 entry, 32631 data, 32632 mask); 32633 } 32634 32635 int 32636 bcm_loop_field_qualify_TrillIngressRbridge( 32637 int unit, 32638 bcm_field_entry_t entry, 32639 uint16 data, 32640 uint16 mask) 32641 { 32642 return bcm_field_qualify_TrillIngressRbridge( 32643 BCM_CONTROL(unit)->unit, 32644 entry, 32645 data, 32646 mask); 32647 } 32648 32649 int 32650 bcm_loop_field_qualify_TrillIngressRbridgeHit( 32651 int unit, 32652 bcm_field_entry_t entry, 32653 uint8 data, 32654 uint8 mask) 32655 { 32656 return bcm_field_qualify_TrillIngressRbridgeHit( 32657 BCM_CONTROL(unit)->unit, 32658 entry, 32659 data, 32660 mask); 32661 } 32662 32663 int 32664 bcm_loop_field_qualify_TrillIngressRbridgeHit_get( 32665 int unit, 32666 bcm_field_entry_t entry, 32667 uint8 * data, 32668 uint8 * mask) 32669 { 32670 return bcm_field_qualify_TrillIngressRbridgeHit_get( 32671 BCM_CONTROL(unit)->unit, 32672 entry, 32673 data, 32674 mask); 32675 } 32676 32677 int 32678 bcm_loop_field_qualify_TrillIngressRbridge_get( 32679 int unit, 32680 bcm_field_entry_t entry, 32681 uint16 * data, 32682 uint16 * mask) 32683 { 32684 return bcm_field_qualify_TrillIngressRbridge_get( 32685 BCM_CONTROL(unit)->unit, 32686 entry, 32687 data, 32688 mask); 32689 } 32690 32691 int 32692 bcm_loop_field_qualify_TrillMultiDestination( 32693 int unit, 32694 bcm_field_entry_t entry, 32695 uint8 data, 32696 uint8 mask) 32697 { 32698 return bcm_field_qualify_TrillMultiDestination( 32699 BCM_CONTROL(unit)->unit, 32700 entry, 32701 data, 32702 mask); 32703 } 32704 32705 int 32706 bcm_loop_field_qualify_TrillMultiDestination_get( 32707 int unit, 32708 bcm_field_entry_t entry, 32709 uint8 * data, 32710 uint8 * mask) 32711 { 32712 return bcm_field_qualify_TrillMultiDestination_get( 32713 BCM_CONTROL(unit)->unit, 32714 entry, 32715 data, 32716 mask); 32717 } 32718 32719 int 32720 bcm_loop_field_qualify_TrillOpLength( 32721 int unit, 32722 bcm_field_entry_t entry, 32723 uint8 data, 32724 uint8 mask) 32725 { 32726 return bcm_field_qualify_TrillOpLength( 32727 BCM_CONTROL(unit)->unit, 32728 entry, 32729 data, 32730 mask); 32731 } 32732 32733 int 32734 bcm_loop_field_qualify_TrillOpLength_get( 32735 int unit, 32736 bcm_field_entry_t entry, 32737 uint8 * data, 32738 uint8 * mask) 32739 { 32740 return bcm_field_qualify_TrillOpLength_get( 32741 BCM_CONTROL(unit)->unit, 32742 entry, 32743 data, 32744 mask); 32745 } 32746 32747 int 32748 bcm_loop_field_qualify_TrillPayload( 32749 int unit, 32750 bcm_field_entry_t entry, 32751 uint64 data, 32752 uint64 mask) 32753 { 32754 return bcm_field_qualify_TrillPayload( 32755 BCM_CONTROL(unit)->unit, 32756 entry, 32757 data, 32758 mask); 32759 } 32760 32761 int 32762 bcm_loop_field_qualify_TrillPayload_get( 32763 int unit, 32764 bcm_field_entry_t entry, 32765 uint64 * data, 32766 uint64 * mask) 32767 { 32768 return bcm_field_qualify_TrillPayload_get( 32769 BCM_CONTROL(unit)->unit, 32770 entry, 32771 data, 32772 mask); 32773 } 32774 32775 int 32776 bcm_loop_field_qualify_TrunkHashResult( 32777 int unit, 32778 bcm_field_entry_t entry, 32779 uint32 data, 32780 uint32 mask) 32781 { 32782 return bcm_field_qualify_TrunkHashResult( 32783 BCM_CONTROL(unit)->unit, 32784 entry, 32785 data, 32786 mask); 32787 } 32788 32789 int 32790 bcm_loop_field_qualify_TrunkHashResult_get( 32791 int unit, 32792 bcm_field_entry_t entry, 32793 uint32 * data, 32794 uint32 * mask) 32795 { 32796 return bcm_field_qualify_TrunkHashResult_get( 32797 BCM_CONTROL(unit)->unit, 32798 entry, 32799 data, 32800 mask); 32801 } 32802 32803 int 32804 bcm_loop_field_qualify_TrunkMemberSourceModuleId( 32805 int unit, 32806 bcm_field_entry_t entry, 32807 int data, 32808 int mask) 32809 { 32810 return bcm_field_qualify_TrunkMemberSourceModuleId( 32811 BCM_CONTROL(unit)->unit, 32812 entry, 32813 data, 32814 mask); 32815 } 32816 32817 int 32818 bcm_loop_field_qualify_TrunkMemberSourceModuleId_get( 32819 int unit, 32820 bcm_field_entry_t entry, 32821 int * data, 32822 int * mask) 32823 { 32824 return bcm_field_qualify_TrunkMemberSourceModuleId_get( 32825 BCM_CONTROL(unit)->unit, 32826 entry, 32827 data, 32828 mask); 32829 } 32830 32831 int 32832 bcm_loop_field_qualify_TsnFlowId( 32833 int unit, 32834 bcm_field_entry_t entry, 32835 uint32 data, 32836 uint32 mask) 32837 { 32838 return bcm_field_qualify_TsnFlowId( 32839 BCM_CONTROL(unit)->unit, 32840 entry, 32841 data, 32842 mask); 32843 } 32844 32845 int 32846 bcm_loop_field_qualify_TsnFlowId_get( 32847 int unit, 32848 bcm_field_entry_t entry, 32849 uint32 * data, 32850 uint32 * mask) 32851 { 32852 return bcm_field_qualify_TsnFlowId_get( 32853 BCM_CONTROL(unit)->unit, 32854 entry, 32855 data, 32856 mask); 32857 } 32858 32859 int 32860 bcm_loop_field_qualify_Ttl( 32861 int unit, 32862 bcm_field_entry_t entry, 32863 uint8 data, 32864 uint8 mask) 32865 { 32866 return bcm_field_qualify_Ttl( 32867 BCM_CONTROL(unit)->unit, 32868 entry, 32869 data, 32870 mask); 32871 } 32872 32873 int 32874 bcm_loop_field_qualify_TtlClassOne( 32875 int unit, 32876 bcm_field_entry_t entry, 32877 bcm_class_t data, 32878 bcm_class_t mask) 32879 { 32880 return bcm_field_qualify_TtlClassOne( 32881 BCM_CONTROL(unit)->unit, 32882 entry, 32883 data, 32884 mask); 32885 } 32886 32887 int 32888 bcm_loop_field_qualify_TtlClassOne_get( 32889 int unit, 32890 bcm_field_entry_t entry, 32891 bcm_class_t * data, 32892 bcm_class_t * mask) 32893 { 32894 return bcm_field_qualify_TtlClassOne_get( 32895 BCM_CONTROL(unit)->unit, 32896 entry, 32897 data, 32898 mask); 32899 } 32900 32901 int 32902 bcm_loop_field_qualify_TtlClassZero( 32903 int unit, 32904 bcm_field_entry_t entry, 32905 bcm_class_t data, 32906 bcm_class_t mask) 32907 { 32908 return bcm_field_qualify_TtlClassZero( 32909 BCM_CONTROL(unit)->unit, 32910 entry, 32911 data, 32912 mask); 32913 } 32914 32915 int 32916 bcm_loop_field_qualify_TtlClassZero_get( 32917 int unit, 32918 bcm_field_entry_t entry, 32919 bcm_class_t * data, 32920 bcm_class_t * mask) 32921 { 32922 return bcm_field_qualify_TtlClassZero_get( 32923 BCM_CONTROL(unit)->unit, 32924 entry, 32925 data, 32926 mask); 32927 } 32928 32929 int 32930 bcm_loop_field_qualify_Ttl_get( 32931 int unit, 32932 bcm_field_entry_t entry, 32933 uint8 * data, 32934 uint8 * mask) 32935 { 32936 return bcm_field_qualify_Ttl_get( 32937 BCM_CONTROL(unit)->unit, 32938 entry, 32939 data, 32940 mask); 32941 } 32942 32943 int 32944 bcm_loop_field_qualify_TunnelId( 32945 int unit, 32946 bcm_field_entry_t entry, 32947 uint32 data, 32948 uint32 mask) 32949 { 32950 return bcm_field_qualify_TunnelId( 32951 BCM_CONTROL(unit)->unit, 32952 entry, 32953 data, 32954 mask); 32955 } 32956 32957 int 32958 bcm_loop_field_qualify_TunnelId_get( 32959 int unit, 32960 bcm_field_entry_t entry, 32961 uint32 * data, 32962 uint32 * mask) 32963 { 32964 return bcm_field_qualify_TunnelId_get( 32965 BCM_CONTROL(unit)->unit, 32966 entry, 32967 data, 32968 mask); 32969 } 32970 32971 int 32972 bcm_loop_field_qualify_TunnelPayloadDip( 32973 int unit, 32974 bcm_field_entry_t entry, 32975 bcm_ip_t data, 32976 bcm_ip_t mask) 32977 { 32978 return bcm_field_qualify_TunnelPayloadDip( 32979 BCM_CONTROL(unit)->unit, 32980 entry, 32981 data, 32982 mask); 32983 } 32984 32985 int 32986 bcm_loop_field_qualify_TunnelPayloadDip6( 32987 int unit, 32988 bcm_field_entry_t entry, 32989 bcm_ip6_t data, 32990 bcm_ip6_t mask) 32991 { 32992 return bcm_field_qualify_TunnelPayloadDip6( 32993 BCM_CONTROL(unit)->unit, 32994 entry, 32995 data, 32996 mask); 32997 } 32998 32999 int 33000 bcm_loop_field_qualify_TunnelPayloadDip6_get( 33001 int unit, 33002 bcm_field_entry_t entry, 33003 bcm_ip6_t * data, 33004 bcm_ip6_t * mask) 33005 { 33006 return bcm_field_qualify_TunnelPayloadDip6_get( 33007 BCM_CONTROL(unit)->unit, 33008 entry, 33009 data, 33010 mask); 33011 } 33012 33013 int 33014 bcm_loop_field_qualify_TunnelPayloadDip_get( 33015 int unit, 33016 bcm_field_entry_t entry, 33017 bcm_ip_t * data, 33018 bcm_ip_t * mask) 33019 { 33020 return bcm_field_qualify_TunnelPayloadDip_get( 33021 BCM_CONTROL(unit)->unit, 33022 entry, 33023 data, 33024 mask); 33025 } 33026 33027 int 33028 bcm_loop_field_qualify_TunnelPayloadDstMac( 33029 int unit, 33030 bcm_field_entry_t entry, 33031 bcm_mac_t data, 33032 bcm_mac_t mask) 33033 { 33034 return bcm_field_qualify_TunnelPayloadDstMac( 33035 BCM_CONTROL(unit)->unit, 33036 entry, 33037 data, 33038 mask); 33039 } 33040 33041 int 33042 bcm_loop_field_qualify_TunnelPayloadDstMac_get( 33043 int unit, 33044 bcm_field_entry_t entry, 33045 bcm_mac_t * data, 33046 bcm_mac_t * mask) 33047 { 33048 return bcm_field_qualify_TunnelPayloadDstMac_get( 33049 BCM_CONTROL(unit)->unit, 33050 entry, 33051 data, 33052 mask); 33053 } 33054 33055 int 33056 bcm_loop_field_qualify_TunnelPayloadEtherType( 33057 int unit, 33058 bcm_field_entry_t entry, 33059 uint16 data, 33060 uint16 mask) 33061 { 33062 return bcm_field_qualify_TunnelPayloadEtherType( 33063 BCM_CONTROL(unit)->unit, 33064 entry, 33065 data, 33066 mask); 33067 } 33068 33069 int 33070 bcm_loop_field_qualify_TunnelPayloadEtherType_get( 33071 int unit, 33072 bcm_field_entry_t entry, 33073 uint16 * data, 33074 uint16 * mask) 33075 { 33076 return bcm_field_qualify_TunnelPayloadEtherType_get( 33077 BCM_CONTROL(unit)->unit, 33078 entry, 33079 data, 33080 mask); 33081 } 33082 33083 int 33084 bcm_loop_field_qualify_TunnelPayloadIp4Length( 33085 int unit, 33086 bcm_field_entry_t entry, 33087 uint16 data, 33088 uint16 mask) 33089 { 33090 return bcm_field_qualify_TunnelPayloadIp4Length( 33091 BCM_CONTROL(unit)->unit, 33092 entry, 33093 data, 33094 mask); 33095 } 33096 33097 int 33098 bcm_loop_field_qualify_TunnelPayloadIp4Length_get( 33099 int unit, 33100 bcm_field_entry_t entry, 33101 uint16 * data, 33102 uint16 * mask) 33103 { 33104 return bcm_field_qualify_TunnelPayloadIp4Length_get( 33105 BCM_CONTROL(unit)->unit, 33106 entry, 33107 data, 33108 mask); 33109 } 33110 33111 int 33112 bcm_loop_field_qualify_TunnelPayloadIp6Length( 33113 int unit, 33114 bcm_field_entry_t entry, 33115 uint16 data, 33116 uint16 mask) 33117 { 33118 return bcm_field_qualify_TunnelPayloadIp6Length( 33119 BCM_CONTROL(unit)->unit, 33120 entry, 33121 data, 33122 mask); 33123 } 33124 33125 int 33126 bcm_loop_field_qualify_TunnelPayloadIp6Length_get( 33127 int unit, 33128 bcm_field_entry_t entry, 33129 uint16 * data, 33130 uint16 * mask) 33131 { 33132 return bcm_field_qualify_TunnelPayloadIp6Length_get( 33133 BCM_CONTROL(unit)->unit, 33134 entry, 33135 data, 33136 mask); 33137 } 33138 33139 int 33140 bcm_loop_field_qualify_TunnelPayloadIpProtocol( 33141 int unit, 33142 bcm_field_entry_t entry, 33143 uint8 data, 33144 uint8 mask) 33145 { 33146 return bcm_field_qualify_TunnelPayloadIpProtocol( 33147 BCM_CONTROL(unit)->unit, 33148 entry, 33149 data, 33150 mask); 33151 } 33152 33153 int 33154 bcm_loop_field_qualify_TunnelPayloadIpProtocol_get( 33155 int unit, 33156 bcm_field_entry_t entry, 33157 uint8 * data, 33158 uint8 * mask) 33159 { 33160 return bcm_field_qualify_TunnelPayloadIpProtocol_get( 33161 BCM_CONTROL(unit)->unit, 33162 entry, 33163 data, 33164 mask); 33165 } 33166 33167 int 33168 bcm_loop_field_qualify_TunnelPayloadL4DstPort( 33169 int unit, 33170 bcm_field_entry_t entry, 33171 bcm_l4_port_t data, 33172 bcm_l4_port_t mask) 33173 { 33174 return bcm_field_qualify_TunnelPayloadL4DstPort( 33175 BCM_CONTROL(unit)->unit, 33176 entry, 33177 data, 33178 mask); 33179 } 33180 33181 int 33182 bcm_loop_field_qualify_TunnelPayloadL4DstPort_get( 33183 int unit, 33184 bcm_field_entry_t entry, 33185 bcm_l4_port_t * data, 33186 bcm_l4_port_t * mask) 33187 { 33188 return bcm_field_qualify_TunnelPayloadL4DstPort_get( 33189 BCM_CONTROL(unit)->unit, 33190 entry, 33191 data, 33192 mask); 33193 } 33194 33195 int 33196 bcm_loop_field_qualify_TunnelPayloadL4SrcPort( 33197 int unit, 33198 bcm_field_entry_t entry, 33199 bcm_l4_port_t data, 33200 bcm_l4_port_t mask) 33201 { 33202 return bcm_field_qualify_TunnelPayloadL4SrcPort( 33203 BCM_CONTROL(unit)->unit, 33204 entry, 33205 data, 33206 mask); 33207 } 33208 33209 int 33210 bcm_loop_field_qualify_TunnelPayloadL4SrcPort_get( 33211 int unit, 33212 bcm_field_entry_t entry, 33213 bcm_l4_port_t * data, 33214 bcm_l4_port_t * mask) 33215 { 33216 return bcm_field_qualify_TunnelPayloadL4SrcPort_get( 33217 BCM_CONTROL(unit)->unit, 33218 entry, 33219 data, 33220 mask); 33221 } 33222 33223 int 33224 bcm_loop_field_qualify_TunnelPayloadOuterVlan( 33225 int unit, 33226 bcm_field_entry_t entry, 33227 bcm_vlan_t data, 33228 bcm_vlan_t mask) 33229 { 33230 return bcm_field_qualify_TunnelPayloadOuterVlan( 33231 BCM_CONTROL(unit)->unit, 33232 entry, 33233 data, 33234 mask); 33235 } 33236 33237 int 33238 bcm_loop_field_qualify_TunnelPayloadOuterVlanCfi( 33239 int unit, 33240 bcm_field_entry_t entry, 33241 uint8 data, 33242 uint8 mask) 33243 { 33244 return bcm_field_qualify_TunnelPayloadOuterVlanCfi( 33245 BCM_CONTROL(unit)->unit, 33246 entry, 33247 data, 33248 mask); 33249 } 33250 33251 int 33252 bcm_loop_field_qualify_TunnelPayloadOuterVlanCfi_get( 33253 int unit, 33254 bcm_field_entry_t entry, 33255 uint8 * data, 33256 uint8 * mask) 33257 { 33258 return bcm_field_qualify_TunnelPayloadOuterVlanCfi_get( 33259 BCM_CONTROL(unit)->unit, 33260 entry, 33261 data, 33262 mask); 33263 } 33264 33265 int 33266 bcm_loop_field_qualify_TunnelPayloadOuterVlanId( 33267 int unit, 33268 bcm_field_entry_t entry, 33269 bcm_vlan_t data, 33270 bcm_vlan_t mask) 33271 { 33272 return bcm_field_qualify_TunnelPayloadOuterVlanId( 33273 BCM_CONTROL(unit)->unit, 33274 entry, 33275 data, 33276 mask); 33277 } 33278 33279 int 33280 bcm_loop_field_qualify_TunnelPayloadOuterVlanId_get( 33281 int unit, 33282 bcm_field_entry_t entry, 33283 bcm_vlan_t * data, 33284 bcm_vlan_t * mask) 33285 { 33286 return bcm_field_qualify_TunnelPayloadOuterVlanId_get( 33287 BCM_CONTROL(unit)->unit, 33288 entry, 33289 data, 33290 mask); 33291 } 33292 33293 int 33294 bcm_loop_field_qualify_TunnelPayloadOuterVlanPri( 33295 int unit, 33296 bcm_field_entry_t entry, 33297 uint8 data, 33298 uint8 mask) 33299 { 33300 return bcm_field_qualify_TunnelPayloadOuterVlanPri( 33301 BCM_CONTROL(unit)->unit, 33302 entry, 33303 data, 33304 mask); 33305 } 33306 33307 int 33308 bcm_loop_field_qualify_TunnelPayloadOuterVlanPri_get( 33309 int unit, 33310 bcm_field_entry_t entry, 33311 uint8 * data, 33312 uint8 * mask) 33313 { 33314 return bcm_field_qualify_TunnelPayloadOuterVlanPri_get( 33315 BCM_CONTROL(unit)->unit, 33316 entry, 33317 data, 33318 mask); 33319 } 33320 33321 int 33322 bcm_loop_field_qualify_TunnelPayloadOuterVlan_get( 33323 int unit, 33324 bcm_field_entry_t entry, 33325 bcm_vlan_t * data, 33326 bcm_vlan_t * mask) 33327 { 33328 return bcm_field_qualify_TunnelPayloadOuterVlan_get( 33329 BCM_CONTROL(unit)->unit, 33330 entry, 33331 data, 33332 mask); 33333 } 33334 33335 int 33336 bcm_loop_field_qualify_TunnelPayloadSip( 33337 int unit, 33338 bcm_field_entry_t entry, 33339 bcm_ip_t data, 33340 bcm_ip_t mask) 33341 { 33342 return bcm_field_qualify_TunnelPayloadSip( 33343 BCM_CONTROL(unit)->unit, 33344 entry, 33345 data, 33346 mask); 33347 } 33348 33349 int 33350 bcm_loop_field_qualify_TunnelPayloadSip6( 33351 int unit, 33352 bcm_field_entry_t entry, 33353 bcm_ip6_t data, 33354 bcm_ip6_t mask) 33355 { 33356 return bcm_field_qualify_TunnelPayloadSip6( 33357 BCM_CONTROL(unit)->unit, 33358 entry, 33359 data, 33360 mask); 33361 } 33362 33363 int 33364 bcm_loop_field_qualify_TunnelPayloadSip6_get( 33365 int unit, 33366 bcm_field_entry_t entry, 33367 bcm_ip6_t * data, 33368 bcm_ip6_t * mask) 33369 { 33370 return bcm_field_qualify_TunnelPayloadSip6_get( 33371 BCM_CONTROL(unit)->unit, 33372 entry, 33373 data, 33374 mask); 33375 } 33376 33377 int 33378 bcm_loop_field_qualify_TunnelPayloadSip_get( 33379 int unit, 33380 bcm_field_entry_t entry, 33381 bcm_ip_t * data, 33382 bcm_ip_t * mask) 33383 { 33384 return bcm_field_qualify_TunnelPayloadSip_get( 33385 BCM_CONTROL(unit)->unit, 33386 entry, 33387 data, 33388 mask); 33389 } 33390 33391 int 33392 bcm_loop_field_qualify_TunnelPayloadSrcMac( 33393 int unit, 33394 bcm_field_entry_t entry, 33395 bcm_mac_t data, 33396 bcm_mac_t mask) 33397 { 33398 return bcm_field_qualify_TunnelPayloadSrcMac( 33399 BCM_CONTROL(unit)->unit, 33400 entry, 33401 data, 33402 mask); 33403 } 33404 33405 int 33406 bcm_loop_field_qualify_TunnelPayloadSrcMac_get( 33407 int unit, 33408 bcm_field_entry_t entry, 33409 bcm_mac_t * data, 33410 bcm_mac_t * mask) 33411 { 33412 return bcm_field_qualify_TunnelPayloadSrcMac_get( 33413 BCM_CONTROL(unit)->unit, 33414 entry, 33415 data, 33416 mask); 33417 } 33418 33419 int 33420 bcm_loop_field_qualify_TunnelSubType( 33421 int unit, 33422 bcm_field_entry_t entry, 33423 bcm_field_TunnelSubType_t type) 33424 { 33425 return bcm_field_qualify_TunnelSubType( 33426 BCM_CONTROL(unit)->unit, 33427 entry, 33428 type); 33429 } 33430 33431 int 33432 bcm_loop_field_qualify_TunnelSubType_get( 33433 int unit, 33434 bcm_field_entry_t entry, 33435 bcm_field_TunnelSubType_t * type) 33436 { 33437 return bcm_field_qualify_TunnelSubType_get( 33438 BCM_CONTROL(unit)->unit, 33439 entry, 33440 type); 33441 } 33442 33443 int 33444 bcm_loop_field_qualify_TunnelTerminated( 33445 int unit, 33446 bcm_field_entry_t entry, 33447 uint8 data, 33448 uint8 mask) 33449 { 33450 return bcm_field_qualify_TunnelTerminated( 33451 BCM_CONTROL(unit)->unit, 33452 entry, 33453 data, 33454 mask); 33455 } 33456 33457 int 33458 bcm_loop_field_qualify_TunnelTerminatedHit( 33459 int unit, 33460 bcm_field_entry_t entry, 33461 uint8 data, 33462 uint8 mask) 33463 { 33464 return bcm_field_qualify_TunnelTerminatedHit( 33465 BCM_CONTROL(unit)->unit, 33466 entry, 33467 data, 33468 mask); 33469 } 33470 33471 int 33472 bcm_loop_field_qualify_TunnelTerminatedHit_get( 33473 int unit, 33474 bcm_field_entry_t entry, 33475 uint8 * data, 33476 uint8 * mask) 33477 { 33478 return bcm_field_qualify_TunnelTerminatedHit_get( 33479 BCM_CONTROL(unit)->unit, 33480 entry, 33481 data, 33482 mask); 33483 } 33484 33485 int 33486 bcm_loop_field_qualify_TunnelTerminatedValue( 33487 int unit, 33488 bcm_field_entry_t entry, 33489 uint64 data, 33490 uint64 mask) 33491 { 33492 return bcm_field_qualify_TunnelTerminatedValue( 33493 BCM_CONTROL(unit)->unit, 33494 entry, 33495 data, 33496 mask); 33497 } 33498 33499 int 33500 bcm_loop_field_qualify_TunnelTerminatedValue_get( 33501 int unit, 33502 bcm_field_entry_t entry, 33503 uint64 * data, 33504 uint64 * mask) 33505 { 33506 return bcm_field_qualify_TunnelTerminatedValue_get( 33507 BCM_CONTROL(unit)->unit, 33508 entry, 33509 data, 33510 mask); 33511 } 33512 33513 int 33514 bcm_loop_field_qualify_TunnelTerminated_get( 33515 int unit, 33516 bcm_field_entry_t entry, 33517 uint8 * data, 33518 uint8 * mask) 33519 { 33520 return bcm_field_qualify_TunnelTerminated_get( 33521 BCM_CONTROL(unit)->unit, 33522 entry, 33523 data, 33524 mask); 33525 } 33526 33527 int 33528 bcm_loop_field_qualify_TunnelType( 33529 int unit, 33530 bcm_field_entry_t entry, 33531 bcm_field_TunnelType_t tunnel_type) 33532 { 33533 return bcm_field_qualify_TunnelType( 33534 BCM_CONTROL(unit)->unit, 33535 entry, 33536 tunnel_type); 33537 } 33538 33539 int 33540 bcm_loop_field_qualify_TunnelType_get( 33541 int unit, 33542 bcm_field_entry_t entry, 33543 bcm_field_TunnelType_t * tunnel_type) 33544 { 33545 return bcm_field_qualify_TunnelType_get( 33546 BCM_CONTROL(unit)->unit, 33547 entry, 33548 tunnel_type); 33549 } 33550 33551 int 33552 bcm_loop_field_qualify_UdfClass( 33553 int unit, 33554 bcm_field_entry_t entry, 33555 uint32 data, 33556 uint32 mask) 33557 { 33558 return bcm_field_qualify_UdfClass( 33559 BCM_CONTROL(unit)->unit, 33560 entry, 33561 data, 33562 mask); 33563 } 33564 33565 int 33566 bcm_loop_field_qualify_UdfClass_get( 33567 int unit, 33568 bcm_field_entry_t entry, 33569 uint32 * data, 33570 uint32 * mask) 33571 { 33572 return bcm_field_qualify_UdfClass_get( 33573 BCM_CONTROL(unit)->unit, 33574 entry, 33575 data, 33576 mask); 33577 } 33578 33579 int 33580 bcm_loop_field_qualify_VPortRangeCheck( 33581 int unit, 33582 bcm_field_entry_t entry, 33583 bcm_field_range_t range, 33584 int invert) 33585 { 33586 return bcm_field_qualify_VPortRangeCheck( 33587 BCM_CONTROL(unit)->unit, 33588 entry, 33589 range, 33590 invert); 33591 } 33592 33593 int 33594 bcm_loop_field_qualify_VPortRangeCheck_get( 33595 int unit, 33596 bcm_field_entry_t entry, 33597 int max_count, 33598 bcm_field_range_t * range, 33599 int * invert, 33600 int * count) 33601 { 33602 return bcm_field_qualify_VPortRangeCheck_get( 33603 BCM_CONTROL(unit)->unit, 33604 entry, 33605 max_count, 33606 range, 33607 invert, 33608 count); 33609 } 33610 33611 int 33612 bcm_loop_field_qualify_VlanAction( 33613 int unit, 33614 bcm_field_entry_t entry, 33615 uint32 data, 33616 uint32 mask) 33617 { 33618 return bcm_field_qualify_VlanAction( 33619 BCM_CONTROL(unit)->unit, 33620 entry, 33621 data, 33622 mask); 33623 } 33624 33625 int 33626 bcm_loop_field_qualify_VlanAction_get( 33627 int unit, 33628 bcm_field_entry_t entry, 33629 uint32 * data, 33630 uint32 * mask) 33631 { 33632 return bcm_field_qualify_VlanAction_get( 33633 BCM_CONTROL(unit)->unit, 33634 entry, 33635 data, 33636 mask); 33637 } 33638 33639 int 33640 bcm_loop_field_qualify_VlanFormat( 33641 int unit, 33642 bcm_field_entry_t entry, 33643 uint8 data, 33644 uint8 mask) 33645 { 33646 return bcm_field_qualify_VlanFormat( 33647 BCM_CONTROL(unit)->unit, 33648 entry, 33649 data, 33650 mask); 33651 } 33652 33653 int 33654 bcm_loop_field_qualify_VlanFormat_get( 33655 int unit, 33656 bcm_field_entry_t entry, 33657 uint8 * data, 33658 uint8 * mask) 33659 { 33660 return bcm_field_qualify_VlanFormat_get( 33661 BCM_CONTROL(unit)->unit, 33662 entry, 33663 data, 33664 mask); 33665 } 33666 33667 int 33668 bcm_loop_field_qualify_VlanSREnable( 33669 int unit, 33670 bcm_field_entry_t entry, 33671 uint8 data) 33672 { 33673 return bcm_field_qualify_VlanSREnable( 33674 BCM_CONTROL(unit)->unit, 33675 entry, 33676 data); 33677 } 33678 33679 int 33680 bcm_loop_field_qualify_VlanSREnable_get( 33681 int unit, 33682 bcm_field_entry_t entry, 33683 uint8 * data) 33684 { 33685 return bcm_field_qualify_VlanSREnable_get( 33686 BCM_CONTROL(unit)->unit, 33687 entry, 33688 data); 33689 } 33690 33691 int 33692 bcm_loop_field_qualify_VlanSRLanId( 33693 int unit, 33694 bcm_field_entry_t entry, 33695 uint8 lan_id) 33696 { 33697 return bcm_field_qualify_VlanSRLanId( 33698 BCM_CONTROL(unit)->unit, 33699 entry, 33700 lan_id); 33701 } 33702 33703 int 33704 bcm_loop_field_qualify_VlanSRLanId_get( 33705 int unit, 33706 bcm_field_entry_t entry, 33707 uint8 * lan_id) 33708 { 33709 return bcm_field_qualify_VlanSRLanId_get( 33710 BCM_CONTROL(unit)->unit, 33711 entry, 33712 lan_id); 33713 } 33714 33715 int 33716 bcm_loop_field_qualify_VlanTranslateClassId( 33717 int unit, 33718 bcm_field_entry_t entry, 33719 uint16 data, 33720 uint16 mask) 33721 { 33722 return bcm_field_qualify_VlanTranslateClassId( 33723 BCM_CONTROL(unit)->unit, 33724 entry, 33725 data, 33726 mask); 33727 } 33728 33729 int 33730 bcm_loop_field_qualify_VlanTranslateClassId_get( 33731 int unit, 33732 bcm_field_entry_t entry, 33733 uint16 * data, 33734 uint16 * mask) 33735 { 33736 return bcm_field_qualify_VlanTranslateClassId_get( 33737 BCM_CONTROL(unit)->unit, 33738 entry, 33739 data, 33740 mask); 33741 } 33742 33743 int 33744 bcm_loop_field_qualify_VlanTranslationHit( 33745 int unit, 33746 bcm_field_entry_t entry, 33747 uint8 data, 33748 uint8 mask) 33749 { 33750 return bcm_field_qualify_VlanTranslationHit( 33751 BCM_CONTROL(unit)->unit, 33752 entry, 33753 data, 33754 mask); 33755 } 33756 33757 int 33758 bcm_loop_field_qualify_VlanTranslationHit_get( 33759 int unit, 33760 bcm_field_entry_t entry, 33761 uint8 * data, 33762 uint8 * mask) 33763 { 33764 return bcm_field_qualify_VlanTranslationHit_get( 33765 BCM_CONTROL(unit)->unit, 33766 entry, 33767 data, 33768 mask); 33769 } 33770 33771 int 33772 bcm_loop_field_qualify_VlanTranslationValue( 33773 int unit, 33774 bcm_field_entry_t entry, 33775 uint64 data, 33776 uint64 mask) 33777 { 33778 return bcm_field_qualify_VlanTranslationValue( 33779 BCM_CONTROL(unit)->unit, 33780 entry, 33781 data, 33782 mask); 33783 } 33784 33785 int 33786 bcm_loop_field_qualify_VlanTranslationValue_get( 33787 int unit, 33788 bcm_field_entry_t entry, 33789 uint64 * data, 33790 uint64 * mask) 33791 { 33792 return bcm_field_qualify_VlanTranslationValue_get( 33793 BCM_CONTROL(unit)->unit, 33794 entry, 33795 data, 33796 mask); 33797 } 33798 33799 int 33800 bcm_loop_field_qualify_VnTag( 33801 int unit, 33802 bcm_field_entry_t entry, 33803 uint32 data, 33804 uint32 mask) 33805 { 33806 return bcm_field_qualify_VnTag( 33807 BCM_CONTROL(unit)->unit, 33808 entry, 33809 data, 33810 mask); 33811 } 33812 33813 int 33814 bcm_loop_field_qualify_VnTag_get( 33815 int unit, 33816 bcm_field_entry_t entry, 33817 uint32 * data, 33818 uint32 * mask) 33819 { 33820 return bcm_field_qualify_VnTag_get( 33821 BCM_CONTROL(unit)->unit, 33822 entry, 33823 data, 33824 mask); 33825 } 33826 33827 int 33828 bcm_loop_field_qualify_Vpn( 33829 int unit, 33830 bcm_field_entry_t entry, 33831 bcm_vpn_t data, 33832 bcm_vpn_t mask) 33833 { 33834 return bcm_field_qualify_Vpn( 33835 BCM_CONTROL(unit)->unit, 33836 entry, 33837 data, 33838 mask); 33839 } 33840 33841 int 33842 bcm_loop_field_qualify_VpnUnknownDstMacDstPort( 33843 int unit, 33844 bcm_field_entry_t entry, 33845 bcm_gport_t port_id) 33846 { 33847 return bcm_field_qualify_VpnUnknownDstMacDstPort( 33848 BCM_CONTROL(unit)->unit, 33849 entry, 33850 port_id); 33851 } 33852 33853 int 33854 bcm_loop_field_qualify_VpnUnknownDstMacDstPort_get( 33855 int unit, 33856 bcm_field_entry_t entry, 33857 bcm_gport_t * port_id) 33858 { 33859 return bcm_field_qualify_VpnUnknownDstMacDstPort_get( 33860 BCM_CONTROL(unit)->unit, 33861 entry, 33862 port_id); 33863 } 33864 33865 int 33866 bcm_loop_field_qualify_Vpn_get( 33867 int unit, 33868 bcm_field_entry_t entry, 33869 bcm_vpn_t * data, 33870 bcm_vpn_t * mask) 33871 { 33872 return bcm_field_qualify_Vpn_get( 33873 BCM_CONTROL(unit)->unit, 33874 entry, 33875 data, 33876 mask); 33877 } 33878 33879 int 33880 bcm_loop_field_qualify_Vrf( 33881 int unit, 33882 bcm_field_entry_t entry, 33883 uint32 data, 33884 uint32 mask) 33885 { 33886 return bcm_field_qualify_Vrf( 33887 BCM_CONTROL(unit)->unit, 33888 entry, 33889 data, 33890 mask); 33891 } 33892 33893 int 33894 bcm_loop_field_qualify_Vrf_get( 33895 int unit, 33896 bcm_field_entry_t entry, 33897 uint32 * data, 33898 uint32 * mask) 33899 { 33900 return bcm_field_qualify_Vrf_get( 33901 BCM_CONTROL(unit)->unit, 33902 entry, 33903 data, 33904 mask); 33905 } 33906 33907 int 33908 bcm_loop_field_qualify_VxlanClassValid( 33909 int unit, 33910 bcm_field_entry_t entry, 33911 uint8 data, 33912 uint8 mask) 33913 { 33914 return bcm_field_qualify_VxlanClassValid( 33915 BCM_CONTROL(unit)->unit, 33916 entry, 33917 data, 33918 mask); 33919 } 33920 33921 int 33922 bcm_loop_field_qualify_VxlanClassValid_get( 33923 int unit, 33924 bcm_field_entry_t entry, 33925 uint8 * data, 33926 uint8 * mask) 33927 { 33928 return bcm_field_qualify_VxlanClassValid_get( 33929 BCM_CONTROL(unit)->unit, 33930 entry, 33931 data, 33932 mask); 33933 } 33934 33935 int 33936 bcm_loop_field_qualify_VxlanFlags( 33937 int unit, 33938 bcm_field_entry_t entry, 33939 uint8 data, 33940 uint8 mask) 33941 { 33942 return bcm_field_qualify_VxlanFlags( 33943 BCM_CONTROL(unit)->unit, 33944 entry, 33945 data, 33946 mask); 33947 } 33948 33949 int 33950 bcm_loop_field_qualify_VxlanFlags_get( 33951 int unit, 33952 bcm_field_entry_t entry, 33953 uint8 * data, 33954 uint8 * mask) 33955 { 33956 return bcm_field_qualify_VxlanFlags_get( 33957 BCM_CONTROL(unit)->unit, 33958 entry, 33959 data, 33960 mask); 33961 } 33962 33963 int 33964 bcm_loop_field_qualify_VxlanGbpPresent( 33965 int unit, 33966 bcm_field_entry_t entry, 33967 uint8 data, 33968 uint8 mask) 33969 { 33970 return bcm_field_qualify_VxlanGbpPresent( 33971 BCM_CONTROL(unit)->unit, 33972 entry, 33973 data, 33974 mask); 33975 } 33976 33977 int 33978 bcm_loop_field_qualify_VxlanGbpPresent_get( 33979 int unit, 33980 bcm_field_entry_t entry, 33981 uint8 * data, 33982 uint8 * mask) 33983 { 33984 return bcm_field_qualify_VxlanGbpPresent_get( 33985 BCM_CONTROL(unit)->unit, 33986 entry, 33987 data, 33988 mask); 33989 } 33990 33991 int 33992 bcm_loop_field_qualify_VxlanHeaderBits56_63( 33993 int unit, 33994 bcm_field_entry_t entry, 33995 uint8 data, 33996 uint8 mask) 33997 { 33998 return bcm_field_qualify_VxlanHeaderBits56_63( 33999 BCM_CONTROL(unit)->unit, 34000 entry, 34001 data, 34002 mask); 34003 } 34004 34005 int 34006 bcm_loop_field_qualify_VxlanHeaderBits56_63_get( 34007 int unit, 34008 bcm_field_entry_t entry, 34009 uint8 * data, 34010 uint8 * mask) 34011 { 34012 return bcm_field_qualify_VxlanHeaderBits56_63_get( 34013 BCM_CONTROL(unit)->unit, 34014 entry, 34015 data, 34016 mask); 34017 } 34018 34019 int 34020 bcm_loop_field_qualify_VxlanHeaderBits8_31( 34021 int unit, 34022 bcm_field_entry_t entry, 34023 uint32 data, 34024 uint32 mask) 34025 { 34026 return bcm_field_qualify_VxlanHeaderBits8_31( 34027 BCM_CONTROL(unit)->unit, 34028 entry, 34029 data, 34030 mask); 34031 } 34032 34033 int 34034 bcm_loop_field_qualify_VxlanHeaderBits8_31_get( 34035 int unit, 34036 bcm_field_entry_t entry, 34037 uint32 * data, 34038 uint32 * mask) 34039 { 34040 return bcm_field_qualify_VxlanHeaderBits8_31_get( 34041 BCM_CONTROL(unit)->unit, 34042 entry, 34043 data, 34044 mask); 34045 } 34046 34047 int 34048 bcm_loop_field_qualify_VxlanNetworkId( 34049 int unit, 34050 bcm_field_entry_t entry, 34051 uint32 data, 34052 uint32 mask) 34053 { 34054 return bcm_field_qualify_VxlanNetworkId( 34055 BCM_CONTROL(unit)->unit, 34056 entry, 34057 data, 34058 mask); 34059 } 34060 34061 int 34062 bcm_loop_field_qualify_VxlanNetworkId_get( 34063 int unit, 34064 bcm_field_entry_t entry, 34065 uint32 * data, 34066 uint32 * mask) 34067 { 34068 return bcm_field_qualify_VxlanNetworkId_get( 34069 BCM_CONTROL(unit)->unit, 34070 entry, 34071 data, 34072 mask); 34073 } 34074 34075 int 34076 bcm_loop_field_qualify_VxlanPacket( 34077 int unit, 34078 bcm_field_entry_t entry, 34079 uint8 data, 34080 uint8 mask) 34081 { 34082 return bcm_field_qualify_VxlanPacket( 34083 BCM_CONTROL(unit)->unit, 34084 entry, 34085 data, 34086 mask); 34087 } 34088 34089 int 34090 bcm_loop_field_qualify_VxlanPacket_get( 34091 int unit, 34092 bcm_field_entry_t entry, 34093 uint8 * data, 34094 uint8 * mask) 34095 { 34096 return bcm_field_qualify_VxlanPacket_get( 34097 BCM_CONTROL(unit)->unit, 34098 entry, 34099 data, 34100 mask); 34101 } 34102 34103 int 34104 bcm_loop_field_qualify_VxlanPayloadVlanFormat( 34105 int unit, 34106 bcm_field_entry_t entry, 34107 uint8 data, 34108 uint8 mask) 34109 { 34110 return bcm_field_qualify_VxlanPayloadVlanFormat( 34111 BCM_CONTROL(unit)->unit, 34112 entry, 34113 data, 34114 mask); 34115 } 34116 34117 int 34118 bcm_loop_field_qualify_VxlanPayloadVlanFormat_get( 34119 int unit, 34120 bcm_field_entry_t entry, 34121 uint8 * data, 34122 uint8 * mask) 34123 { 34124 return bcm_field_qualify_VxlanPayloadVlanFormat_get( 34125 BCM_CONTROL(unit)->unit, 34126 entry, 34127 data, 34128 mask); 34129 } 34130 34131 int 34132 bcm_loop_field_qualify_VxlanVnidVlanTranslateHit( 34133 int unit, 34134 bcm_field_entry_t entry, 34135 uint8 data, 34136 uint8 mask) 34137 { 34138 return bcm_field_qualify_VxlanVnidVlanTranslateHit( 34139 BCM_CONTROL(unit)->unit, 34140 entry, 34141 data, 34142 mask); 34143 } 34144 34145 int 34146 bcm_loop_field_qualify_VxlanVnidVlanTranslateHit_get( 34147 int unit, 34148 bcm_field_entry_t entry, 34149 uint8 * data, 34150 uint8 * mask) 34151 { 34152 return bcm_field_qualify_VxlanVnidVlanTranslateHit_get( 34153 BCM_CONTROL(unit)->unit, 34154 entry, 34155 data, 34156 mask); 34157 } 34158 34159 int 34160 bcm_loop_field_qualify_clear( 34161 int unit, 34162 bcm_field_entry_t entry) 34163 { 34164 return bcm_field_qualify_clear( 34165 BCM_CONTROL(unit)->unit, 34166 entry); 34167 } 34168 34169 int 34170 bcm_loop_field_qualify_data( 34171 int unit, 34172 bcm_field_entry_t eid, 34173 int qual_id, 34174 uint8 * data, 34175 uint8 * mask, 34176 uint16 length) 34177 { 34178 return bcm_field_qualify_data( 34179 BCM_CONTROL(unit)->unit, 34180 eid, 34181 qual_id, 34182 data, 34183 mask, 34184 length); 34185 } 34186 34187 int 34188 bcm_loop_field_qualify_data_get( 34189 int unit, 34190 bcm_field_entry_t eid, 34191 int qual_id, 34192 uint16 length_max, 34193 uint8 * data, 34194 uint8 * mask, 34195 uint16 * length) 34196 { 34197 return bcm_field_qualify_data_get( 34198 BCM_CONTROL(unit)->unit, 34199 eid, 34200 qual_id, 34201 length_max, 34202 data, 34203 mask, 34204 length); 34205 } 34206 34207 int 34208 bcm_loop_field_qualify_udf( 34209 int unit, 34210 bcm_field_entry_t eid, 34211 bcm_udf_id_t udf_id, 34212 int length, 34213 uint8 * data, 34214 uint8 * mask) 34215 { 34216 return bcm_field_qualify_udf( 34217 BCM_CONTROL(unit)->unit, 34218 eid, 34219 udf_id, 34220 length, 34221 data, 34222 mask); 34223 } 34224 34225 int 34226 bcm_loop_field_qualify_udf_get( 34227 int unit, 34228 bcm_field_entry_t eid, 34229 bcm_udf_id_t udf_id, 34230 int max_length, 34231 uint8 * data, 34232 uint8 * mask, 34233 int * actual_length) 34234 { 34235 return bcm_field_qualify_udf_get( 34236 BCM_CONTROL(unit)->unit, 34237 eid, 34238 udf_id, 34239 max_length, 34240 data, 34241 mask, 34242 actual_length); 34243 } 34244 34245 int 34246 bcm_loop_field_range_create( 34247 int unit, 34248 bcm_field_range_t * range, 34249 uint32 flags, 34250 bcm_l4_port_t min, 34251 bcm_l4_port_t max) 34252 { 34253 return bcm_field_range_create( 34254 BCM_CONTROL(unit)->unit, 34255 range, 34256 flags, 34257 min, 34258 max); 34259 } 34260 34261 int 34262 bcm_loop_field_range_create_id( 34263 int unit, 34264 bcm_field_range_t range, 34265 uint32 flags, 34266 bcm_l4_port_t min, 34267 bcm_l4_port_t max) 34268 { 34269 return bcm_field_range_create_id( 34270 BCM_CONTROL(unit)->unit, 34271 range, 34272 flags, 34273 min, 34274 max); 34275 } 34276 34277 int 34278 bcm_loop_field_range_destroy( 34279 int unit, 34280 bcm_field_range_t range) 34281 { 34282 return bcm_field_range_destroy( 34283 BCM_CONTROL(unit)->unit, 34284 range); 34285 } 34286 34287 int 34288 bcm_loop_field_range_get( 34289 int unit, 34290 bcm_field_range_t range, 34291 uint32 * flags, 34292 bcm_l4_port_t * min, 34293 bcm_l4_port_t * max) 34294 { 34295 return bcm_field_range_get( 34296 BCM_CONTROL(unit)->unit, 34297 range, 34298 flags, 34299 min, 34300 max); 34301 } 34302 34303 int 34304 bcm_loop_field_range_group_create( 34305 int unit, 34306 bcm_field_range_t * range, 34307 uint32 flags, 34308 bcm_l4_port_t min, 34309 bcm_l4_port_t max, 34310 bcm_if_group_t group) 34311 { 34312 return bcm_field_range_group_create( 34313 BCM_CONTROL(unit)->unit, 34314 range, 34315 flags, 34316 min, 34317 max, 34318 group); 34319 } 34320 34321 int 34322 bcm_loop_field_range_group_create_id( 34323 int unit, 34324 bcm_field_range_t range, 34325 uint32 flags, 34326 bcm_l4_port_t min, 34327 bcm_l4_port_t max, 34328 bcm_if_group_t group) 34329 { 34330 return bcm_field_range_group_create_id( 34331 BCM_CONTROL(unit)->unit, 34332 range, 34333 flags, 34334 min, 34335 max, 34336 group); 34337 } 34338 34339 int 34340 bcm_loop_field_range_info_get( 34341 int unit, 34342 bcm_field_stage_t stage, 34343 bcm_field_range_t * range_id, 34344 bcm_field_range_info_t * range_info) 34345 { 34346 return bcm_field_range_info_get( 34347 BCM_CONTROL(unit)->unit, 34348 stage, 34349 range_id, 34350 range_info); 34351 } 34352 34353 /* bcm_field_range_info_t_init not dispatchable */ 34354 34355 int 34356 bcm_loop_field_range_multi_create( 34357 int unit, 34358 bcm_field_range_t * range_id, 34359 uint32 create_flags, 34360 int count, 34361 uint32 * range_flags, 34362 uint32 * min_value, 34363 uint32 * max_value) 34364 { 34365 return bcm_field_range_multi_create( 34366 BCM_CONTROL(unit)->unit, 34367 range_id, 34368 create_flags, 34369 count, 34370 range_flags, 34371 min_value, 34372 max_value); 34373 } 34374 34375 int 34376 bcm_loop_field_range_multi_get( 34377 int unit, 34378 bcm_field_range_t range_id, 34379 int max_count, 34380 uint32 * range_flags, 34381 uint32 * minimum_value, 34382 uint32 * maxamum_value, 34383 int * actual_count) 34384 { 34385 return bcm_field_range_multi_get( 34386 BCM_CONTROL(unit)->unit, 34387 range_id, 34388 max_count, 34389 range_flags, 34390 minimum_value, 34391 maxamum_value, 34392 actual_count); 34393 } 34394 34395 int 34396 bcm_loop_field_range_set( 34397 int unit, 34398 uint32 flags, 34399 bcm_field_stage_t stage, 34400 bcm_field_range_t range_id, 34401 bcm_field_range_info_t * range_info) 34402 { 34403 return bcm_field_range_set( 34404 BCM_CONTROL(unit)->unit, 34405 flags, 34406 stage, 34407 range_id, 34408 range_info); 34409 } 34410 34411 /* bcm_field_redirect_config_t_init not dispatchable */ 34412 34413 int 34414 bcm_loop_field_resync( 34415 int unit) 34416 { 34417 return bcm_field_resync( 34418 BCM_CONTROL(unit)->unit); 34419 } 34420 34421 int 34422 bcm_loop_field_sat_macsa_add( 34423 int unit, 34424 bcm_mac_t mac, 34425 uint32 class_id) 34426 { 34427 return bcm_field_sat_macsa_add( 34428 BCM_CONTROL(unit)->unit, 34429 mac, 34430 class_id); 34431 } 34432 34433 int 34434 bcm_loop_field_sat_macsa_delete( 34435 int unit, 34436 bcm_mac_t mac) 34437 { 34438 return bcm_field_sat_macsa_delete( 34439 BCM_CONTROL(unit)->unit, 34440 mac); 34441 } 34442 34443 int 34444 bcm_loop_field_sat_macsa_delete_all( 34445 int unit) 34446 { 34447 return bcm_field_sat_macsa_delete_all( 34448 BCM_CONTROL(unit)->unit); 34449 } 34450 34451 int 34452 bcm_loop_field_sat_macsa_get( 34453 int unit, 34454 bcm_mac_t mac, 34455 uint32 * class_id) 34456 { 34457 return bcm_field_sat_macsa_get( 34458 BCM_CONTROL(unit)->unit, 34459 mac, 34460 class_id); 34461 } 34462 34463 #ifdef BROADCOM_DEBUG 34464 34465 int 34466 bcm_loop_field_show( 34467 int unit, 34468 const char * pfx) 34469 { 34470 return bcm_field_show( 34471 BCM_CONTROL(unit)->unit, 34472 pfx); 34473 } 34474 34475 /* bcm_field_snap_header_t_init not dispatchable */ 34476 34477 #endif /* BROADCOM_DEBUG */ 34478 34479 int 34480 bcm_loop_field_source_class_mode_get( 34481 int unit, 34482 bcm_field_stage_t stage, 34483 bcm_pbmp_t pbmp, 34484 bcm_field_src_class_mode_t * mode) 34485 { 34486 return bcm_field_source_class_mode_get( 34487 BCM_CONTROL(unit)->unit, 34488 stage, 34489 pbmp, 34490 mode); 34491 } 34492 34493 int 34494 bcm_loop_field_source_class_mode_set( 34495 int unit, 34496 bcm_field_stage_t stage, 34497 bcm_pbmp_t pbmp, 34498 bcm_field_src_class_mode_t mode) 34499 { 34500 return bcm_field_source_class_mode_set( 34501 BCM_CONTROL(unit)->unit, 34502 stage, 34503 pbmp, 34504 mode); 34505 } 34506 34507 /* bcm_field_src_class_t_init not dispatchable */ 34508 34509 int 34510 bcm_loop_field_stage_info_get( 34511 int unit, 34512 bcm_field_stage_t stage, 34513 bcm_field_stage_info_t * info) 34514 { 34515 return bcm_field_stage_info_get( 34516 BCM_CONTROL(unit)->unit, 34517 stage, 34518 info); 34519 } 34520 34521 int 34522 bcm_loop_field_stage_qset_get( 34523 int unit, 34524 bcm_field_stage_t stage, 34525 uint8 presel, 34526 bcm_field_qset_t * qset) 34527 { 34528 return bcm_field_stage_qset_get( 34529 BCM_CONTROL(unit)->unit, 34530 stage, 34531 presel, 34532 qset); 34533 } 34534 34535 int 34536 bcm_loop_field_stage_slice_count_get( 34537 int unit, 34538 bcm_field_stage_t stage_id, 34539 int * slice_count) 34540 { 34541 return bcm_field_stage_slice_count_get( 34542 BCM_CONTROL(unit)->unit, 34543 stage_id, 34544 slice_count); 34545 } 34546 34547 int 34548 bcm_loop_field_stage_slice_info_get( 34549 int unit, 34550 bcm_field_stage_t stage_id, 34551 bcm_pbmp_t pbmp, 34552 int slice_no, 34553 bcm_field_stage_slice_info_t * slice_info) 34554 { 34555 return bcm_field_stage_slice_info_get( 34556 BCM_CONTROL(unit)->unit, 34557 stage_id, 34558 pbmp, 34559 slice_no, 34560 slice_info); 34561 } 34562 34563 int 34564 bcm_loop_field_stat_all_set( 34565 int unit, 34566 int stat_id, 34567 uint64 value) 34568 { 34569 return bcm_field_stat_all_set( 34570 BCM_CONTROL(unit)->unit, 34571 stat_id, 34572 value); 34573 } 34574 34575 int 34576 bcm_loop_field_stat_all_set32( 34577 int unit, 34578 int stat_id, 34579 uint32 value) 34580 { 34581 return bcm_field_stat_all_set32( 34582 BCM_CONTROL(unit)->unit, 34583 stat_id, 34584 value); 34585 } 34586 34587 int 34588 bcm_loop_field_stat_attach( 34589 int unit, 34590 bcm_field_group_t group, 34591 uint32 stat_counter_id, 34592 uint32 * stat_id) 34593 { 34594 return bcm_field_stat_attach( 34595 BCM_CONTROL(unit)->unit, 34596 group, 34597 stat_counter_id, 34598 stat_id); 34599 } 34600 34601 int 34602 bcm_loop_field_stat_config_get( 34603 int unit, 34604 int stat_id, 34605 int nstat, 34606 bcm_field_stat_t * stat_arr) 34607 { 34608 return bcm_field_stat_config_get( 34609 BCM_CONTROL(unit)->unit, 34610 stat_id, 34611 nstat, 34612 stat_arr); 34613 } 34614 34615 int 34616 bcm_loop_field_stat_counter_get( 34617 int unit, 34618 uint32 stat_id, 34619 bcm_field_stat_t stat, 34620 uint32 num_entries, 34621 uint32 * counter_indexes, 34622 bcm_stat_value_t * counter_values) 34623 { 34624 return bcm_field_stat_counter_get( 34625 BCM_CONTROL(unit)->unit, 34626 stat_id, 34627 stat, 34628 num_entries, 34629 counter_indexes, 34630 counter_values); 34631 } 34632 34633 int 34634 bcm_loop_field_stat_counter_set( 34635 int unit, 34636 uint32 stat_id, 34637 bcm_field_stat_t stat, 34638 uint32 num_entries, 34639 uint32 * counter_indexes, 34640 bcm_stat_value_t * counter_values) 34641 { 34642 return bcm_field_stat_counter_set( 34643 BCM_CONTROL(unit)->unit, 34644 stat_id, 34645 stat, 34646 num_entries, 34647 counter_indexes, 34648 counter_values); 34649 } 34650 34651 int 34652 bcm_loop_field_stat_counter_sync_get( 34653 int unit, 34654 uint32 stat_id, 34655 bcm_field_stat_t stat, 34656 uint32 num_entries, 34657 uint32 * counter_indexes, 34658 bcm_stat_value_t * counter_values) 34659 { 34660 return bcm_field_stat_counter_sync_get( 34661 BCM_CONTROL(unit)->unit, 34662 stat_id, 34663 stat, 34664 num_entries, 34665 counter_indexes, 34666 counter_values); 34667 } 34668 34669 int 34670 bcm_loop_field_stat_create( 34671 int unit, 34672 bcm_field_group_t group, 34673 int nstat, 34674 bcm_field_stat_t * stat_arr, 34675 int * stat_id) 34676 { 34677 return bcm_field_stat_create( 34678 BCM_CONTROL(unit)->unit, 34679 group, 34680 nstat, 34681 stat_arr, 34682 stat_id); 34683 } 34684 34685 int 34686 bcm_loop_field_stat_create_id( 34687 int unit, 34688 bcm_field_group_t group, 34689 int nstat, 34690 bcm_field_stat_t * stat_arr, 34691 int stat_id) 34692 { 34693 return bcm_field_stat_create_id( 34694 BCM_CONTROL(unit)->unit, 34695 group, 34696 nstat, 34697 stat_arr, 34698 stat_id); 34699 } 34700 34701 int 34702 bcm_loop_field_stat_destroy( 34703 int unit, 34704 int stat_id) 34705 { 34706 return bcm_field_stat_destroy( 34707 BCM_CONTROL(unit)->unit, 34708 stat_id); 34709 } 34710 34711 int 34712 bcm_loop_field_stat_detach( 34713 int unit, 34714 uint32 stat_id) 34715 { 34716 return bcm_field_stat_detach( 34717 BCM_CONTROL(unit)->unit, 34718 stat_id); 34719 } 34720 34721 int 34722 bcm_loop_field_stat_get( 34723 int unit, 34724 int stat_id, 34725 bcm_field_stat_t stat, 34726 uint64 * value) 34727 { 34728 return bcm_field_stat_get( 34729 BCM_CONTROL(unit)->unit, 34730 stat_id, 34731 stat, 34732 value); 34733 } 34734 34735 int 34736 bcm_loop_field_stat_get32( 34737 int unit, 34738 int stat_id, 34739 bcm_field_stat_t stat, 34740 uint32 * value) 34741 { 34742 return bcm_field_stat_get32( 34743 BCM_CONTROL(unit)->unit, 34744 stat_id, 34745 stat, 34746 value); 34747 } 34748 34749 int 34750 bcm_loop_field_stat_id_get( 34751 int unit, 34752 bcm_field_group_t group, 34753 uint32 stat_id, 34754 uint32 * stat_counter_id) 34755 { 34756 return bcm_field_stat_id_get( 34757 BCM_CONTROL(unit)->unit, 34758 group, 34759 stat_id, 34760 stat_counter_id); 34761 } 34762 34763 int 34764 bcm_loop_field_stat_multi_get( 34765 int unit, 34766 int stat_id, 34767 int nstat, 34768 bcm_field_stat_t * stat_arr, 34769 uint64 * value_arr) 34770 { 34771 return bcm_field_stat_multi_get( 34772 BCM_CONTROL(unit)->unit, 34773 stat_id, 34774 nstat, 34775 stat_arr, 34776 value_arr); 34777 } 34778 34779 int 34780 bcm_loop_field_stat_multi_get32( 34781 int unit, 34782 int stat_id, 34783 int nstat, 34784 bcm_field_stat_t * stat_arr, 34785 uint32 * value_arr) 34786 { 34787 return bcm_field_stat_multi_get32( 34788 BCM_CONTROL(unit)->unit, 34789 stat_id, 34790 nstat, 34791 stat_arr, 34792 value_arr); 34793 } 34794 34795 int 34796 bcm_loop_field_stat_set( 34797 int unit, 34798 int stat_id, 34799 bcm_field_stat_t stat, 34800 uint64 value) 34801 { 34802 return bcm_field_stat_set( 34803 BCM_CONTROL(unit)->unit, 34804 stat_id, 34805 stat, 34806 value); 34807 } 34808 34809 int 34810 bcm_loop_field_stat_set32( 34811 int unit, 34812 int stat_id, 34813 bcm_field_stat_t stat, 34814 uint32 value) 34815 { 34816 return bcm_field_stat_set32( 34817 BCM_CONTROL(unit)->unit, 34818 stat_id, 34819 stat, 34820 value); 34821 } 34822 34823 int 34824 bcm_loop_field_stat_size( 34825 int unit, 34826 int stat_id, 34827 int * stat_size) 34828 { 34829 return bcm_field_stat_size( 34830 BCM_CONTROL(unit)->unit, 34831 stat_id, 34832 stat_size); 34833 } 34834 34835 int 34836 bcm_loop_field_stat_sync_get( 34837 int unit, 34838 int stat_id, 34839 bcm_field_stat_t stat, 34840 uint64 * value) 34841 { 34842 return bcm_field_stat_sync_get( 34843 BCM_CONTROL(unit)->unit, 34844 stat_id, 34845 stat, 34846 value); 34847 } 34848 34849 int 34850 bcm_loop_field_stat_sync_get32( 34851 int unit, 34852 int stat_id, 34853 bcm_field_stat_t stat, 34854 uint32 * value) 34855 { 34856 return bcm_field_stat_sync_get32( 34857 BCM_CONTROL(unit)->unit, 34858 stat_id, 34859 stat, 34860 value); 34861 } 34862 34863 int 34864 bcm_loop_field_tcam_bank_evacuate( 34865 int unit, 34866 uint32 flags, 34867 bcm_field_group_t fg_id, 34868 bcm_field_tcam_bank_evacuate_info_t * evac_info) 34869 { 34870 return bcm_field_tcam_bank_evacuate( 34871 BCM_CONTROL(unit)->unit, 34872 flags, 34873 fg_id, 34874 evac_info); 34875 } 34876 34877 /* bcm_field_udf_spec_t_init not dispatchable */ 34878 34879 /* bcm_find not dispatchable */ 34880 34881 #ifdef INCLUDE_L3 34882 34883 int 34884 bcm_loop_flow_cleanup( 34885 int unit) 34886 { 34887 return bcm_flow_cleanup( 34888 BCM_CONTROL(unit)->unit); 34889 } 34890 34891 int 34892 bcm_loop_flow_encap_add( 34893 int unit, 34894 bcm_flow_encap_config_t * info, 34895 uint32 num_of_fields, 34896 bcm_flow_logical_field_t * field) 34897 { 34898 return bcm_flow_encap_add( 34899 BCM_CONTROL(unit)->unit, 34900 info, 34901 num_of_fields, 34902 field); 34903 } 34904 34905 /* bcm_flow_encap_config_t_init not dispatchable */ 34906 34907 int 34908 bcm_loop_flow_encap_delete( 34909 int unit, 34910 bcm_flow_encap_config_t * info, 34911 uint32 num_of_fields, 34912 bcm_flow_logical_field_t * field) 34913 { 34914 return bcm_flow_encap_delete( 34915 BCM_CONTROL(unit)->unit, 34916 info, 34917 num_of_fields, 34918 field); 34919 } 34920 34921 int 34922 bcm_loop_flow_encap_get( 34923 int unit, 34924 bcm_flow_encap_config_t * info, 34925 uint32 num_of_fields, 34926 bcm_flow_logical_field_t * field) 34927 { 34928 return bcm_flow_encap_get( 34929 BCM_CONTROL(unit)->unit, 34930 info, 34931 num_of_fields, 34932 field); 34933 } 34934 34935 int 34936 bcm_loop_flow_encap_traverse( 34937 int unit, 34938 bcm_flow_encap_traverse_cb cb, 34939 void * user_data) 34940 { 34941 return bcm_flow_encap_traverse( 34942 BCM_CONTROL(unit)->unit, 34943 cb, 34944 user_data); 34945 } 34946 34947 int 34948 bcm_loop_flow_handle_get( 34949 int unit, 34950 const char * flow_name, 34951 bcm_flow_handle_t * handle) 34952 { 34953 return bcm_flow_handle_get( 34954 BCM_CONTROL(unit)->unit, 34955 flow_name, 34956 handle); 34957 } 34958 34959 int 34960 bcm_loop_flow_init( 34961 int unit) 34962 { 34963 return bcm_flow_init( 34964 BCM_CONTROL(unit)->unit); 34965 } 34966 34967 int 34968 bcm_loop_flow_logical_field_id_get( 34969 int unit, 34970 bcm_flow_handle_t flow_handle, 34971 const char * field_name, 34972 bcm_flow_field_id_t * field_id) 34973 { 34974 return bcm_flow_logical_field_id_get( 34975 BCM_CONTROL(unit)->unit, 34976 flow_handle, 34977 field_name, 34978 field_id); 34979 } 34980 34981 /* bcm_flow_logical_field_t_init not dispatchable */ 34982 34983 int 34984 bcm_loop_flow_match_add( 34985 int unit, 34986 bcm_flow_match_config_t * info, 34987 uint32 num_of_fields, 34988 bcm_flow_logical_field_t * field) 34989 { 34990 return bcm_flow_match_add( 34991 BCM_CONTROL(unit)->unit, 34992 info, 34993 num_of_fields, 34994 field); 34995 } 34996 34997 /* bcm_flow_match_config_t_init not dispatchable */ 34998 34999 int 35000 bcm_loop_flow_match_delete( 35001 int unit, 35002 bcm_flow_match_config_t * info, 35003 uint32 num_of_fields, 35004 bcm_flow_logical_field_t * field) 35005 { 35006 return bcm_flow_match_delete( 35007 BCM_CONTROL(unit)->unit, 35008 info, 35009 num_of_fields, 35010 field); 35011 } 35012 35013 int 35014 bcm_loop_flow_match_get( 35015 int unit, 35016 bcm_flow_match_config_t * info, 35017 uint32 num_of_fields, 35018 bcm_flow_logical_field_t * field) 35019 { 35020 return bcm_flow_match_get( 35021 BCM_CONTROL(unit)->unit, 35022 info, 35023 num_of_fields, 35024 field); 35025 } 35026 35027 int 35028 bcm_loop_flow_match_traverse( 35029 int unit, 35030 bcm_flow_match_traverse_cb cb, 35031 void * user_data) 35032 { 35033 return bcm_flow_match_traverse( 35034 BCM_CONTROL(unit)->unit, 35035 cb, 35036 user_data); 35037 } 35038 35039 int 35040 bcm_loop_flow_option_id_get( 35041 int unit, 35042 bcm_flow_handle_t flow_handle, 35043 const char * flow_option_name, 35044 bcm_flow_option_id_t * option_id) 35045 { 35046 return bcm_flow_option_id_get( 35047 BCM_CONTROL(unit)->unit, 35048 flow_handle, 35049 flow_option_name, 35050 option_id); 35051 } 35052 35053 int 35054 bcm_loop_flow_port_create( 35055 int unit, 35056 bcm_vpn_t vpn, 35057 bcm_flow_port_t * flow_port) 35058 { 35059 return bcm_flow_port_create( 35060 BCM_CONTROL(unit)->unit, 35061 vpn, 35062 flow_port); 35063 } 35064 35065 int 35066 bcm_loop_flow_port_destroy( 35067 int unit, 35068 bcm_vpn_t vpn, 35069 bcm_gport_t flow_port) 35070 { 35071 return bcm_flow_port_destroy( 35072 BCM_CONTROL(unit)->unit, 35073 vpn, 35074 flow_port); 35075 } 35076 35077 int 35078 bcm_loop_flow_port_encap_get( 35079 int unit, 35080 bcm_flow_port_encap_t * info, 35081 uint32 num_of_fields, 35082 bcm_flow_logical_field_t * field) 35083 { 35084 return bcm_flow_port_encap_get( 35085 BCM_CONTROL(unit)->unit, 35086 info, 35087 num_of_fields, 35088 field); 35089 } 35090 35091 int 35092 bcm_loop_flow_port_encap_set( 35093 int unit, 35094 bcm_flow_port_encap_t * info, 35095 uint32 num_of_fields, 35096 bcm_flow_logical_field_t * field) 35097 { 35098 return bcm_flow_port_encap_set( 35099 BCM_CONTROL(unit)->unit, 35100 info, 35101 num_of_fields, 35102 field); 35103 } 35104 35105 /* bcm_flow_port_encap_t_init not dispatchable */ 35106 35107 int 35108 bcm_loop_flow_port_get( 35109 int unit, 35110 bcm_vpn_t vpn, 35111 bcm_flow_port_t * flow_port) 35112 { 35113 return bcm_flow_port_get( 35114 BCM_CONTROL(unit)->unit, 35115 vpn, 35116 flow_port); 35117 } 35118 35119 int 35120 bcm_loop_flow_port_get_all( 35121 int unit, 35122 bcm_vpn_t vpn, 35123 int port_max, 35124 bcm_flow_port_t * flow_port, 35125 int * port_count) 35126 { 35127 return bcm_flow_port_get_all( 35128 BCM_CONTROL(unit)->unit, 35129 vpn, 35130 port_max, 35131 flow_port, 35132 port_count); 35133 } 35134 35135 /* bcm_flow_port_t_init not dispatchable */ 35136 35137 int 35138 bcm_loop_flow_stat_attach( 35139 int unit, 35140 bcm_flow_stat_info_t * flow_stat_info, 35141 uint32 num_of_fields, 35142 bcm_flow_logical_field_t * field, 35143 uint32 stat_counter_id) 35144 { 35145 return bcm_flow_stat_attach( 35146 BCM_CONTROL(unit)->unit, 35147 flow_stat_info, 35148 num_of_fields, 35149 field, 35150 stat_counter_id); 35151 } 35152 35153 int 35154 bcm_loop_flow_stat_detach( 35155 int unit, 35156 bcm_flow_stat_info_t * flow_stat_info, 35157 uint32 num_of_fields, 35158 bcm_flow_logical_field_t * field, 35159 uint32 stat_counter_id) 35160 { 35161 return bcm_flow_stat_detach( 35162 BCM_CONTROL(unit)->unit, 35163 flow_stat_info, 35164 num_of_fields, 35165 field, 35166 stat_counter_id); 35167 } 35168 35169 int 35170 bcm_loop_flow_stat_id_get( 35171 int unit, 35172 bcm_flow_stat_info_t * flow_stat_info, 35173 uint32 num_of_fields, 35174 bcm_flow_logical_field_t * field, 35175 bcm_stat_object_t stat_object, 35176 uint32 * stat_counter_id) 35177 { 35178 return bcm_flow_stat_id_get( 35179 BCM_CONTROL(unit)->unit, 35180 flow_stat_info, 35181 num_of_fields, 35182 field, 35183 stat_object, 35184 stat_counter_id); 35185 } 35186 35187 /* bcm_flow_stat_info_t_init not dispatchable */ 35188 35189 int 35190 bcm_loop_flow_stat_object_get( 35191 int unit, 35192 bcm_flow_handle_t flow_handle, 35193 bcm_flow_option_id_t flow_option_id, 35194 bcm_flow_function_type_t function_type, 35195 bcm_stat_object_t * stat_object) 35196 { 35197 return bcm_flow_stat_object_get( 35198 BCM_CONTROL(unit)->unit, 35199 flow_handle, 35200 flow_option_id, 35201 function_type, 35202 stat_object); 35203 } 35204 35205 int 35206 bcm_loop_flow_tunnel_initiator_create( 35207 int unit, 35208 bcm_flow_tunnel_initiator_t * info, 35209 uint32 num_of_fields, 35210 bcm_flow_logical_field_t * field) 35211 { 35212 return bcm_flow_tunnel_initiator_create( 35213 BCM_CONTROL(unit)->unit, 35214 info, 35215 num_of_fields, 35216 field); 35217 } 35218 35219 int 35220 bcm_loop_flow_tunnel_initiator_destroy( 35221 int unit, 35222 bcm_gport_t flow_tunnel_id) 35223 { 35224 return bcm_flow_tunnel_initiator_destroy( 35225 BCM_CONTROL(unit)->unit, 35226 flow_tunnel_id); 35227 } 35228 35229 int 35230 bcm_loop_flow_tunnel_initiator_get( 35231 int unit, 35232 bcm_flow_tunnel_initiator_t * info, 35233 uint32 num_of_fields, 35234 bcm_flow_logical_field_t * field) 35235 { 35236 return bcm_flow_tunnel_initiator_get( 35237 BCM_CONTROL(unit)->unit, 35238 info, 35239 num_of_fields, 35240 field); 35241 } 35242 35243 /* bcm_flow_tunnel_initiator_t_init not dispatchable */ 35244 35245 int 35246 bcm_loop_flow_tunnel_initiator_traverse( 35247 int unit, 35248 bcm_flow_tunnel_initiator_traverse_cb cb, 35249 void * user_data) 35250 { 35251 return bcm_flow_tunnel_initiator_traverse( 35252 BCM_CONTROL(unit)->unit, 35253 cb, 35254 user_data); 35255 } 35256 35257 int 35258 bcm_loop_flow_tunnel_terminator_create( 35259 int unit, 35260 bcm_flow_tunnel_terminator_t * info, 35261 uint32 num_of_fields, 35262 bcm_flow_logical_field_t * field) 35263 { 35264 return bcm_flow_tunnel_terminator_create( 35265 BCM_CONTROL(unit)->unit, 35266 info, 35267 num_of_fields, 35268 field); 35269 } 35270 35271 int 35272 bcm_loop_flow_tunnel_terminator_destroy( 35273 int unit, 35274 bcm_flow_tunnel_terminator_t * info, 35275 uint32 num_of_fields, 35276 bcm_flow_logical_field_t * field) 35277 { 35278 return bcm_flow_tunnel_terminator_destroy( 35279 BCM_CONTROL(unit)->unit, 35280 info, 35281 num_of_fields, 35282 field); 35283 } 35284 35285 int 35286 bcm_loop_flow_tunnel_terminator_get( 35287 int unit, 35288 bcm_flow_tunnel_terminator_t * info, 35289 uint32 num_of_fields, 35290 bcm_flow_logical_field_t * field) 35291 { 35292 return bcm_flow_tunnel_terminator_get( 35293 BCM_CONTROL(unit)->unit, 35294 info, 35295 num_of_fields, 35296 field); 35297 } 35298 35299 /* bcm_flow_tunnel_terminator_t_init not dispatchable */ 35300 35301 int 35302 bcm_loop_flow_tunnel_terminator_traverse( 35303 int unit, 35304 bcm_flow_tunnel_terminator_traverse_cb cb, 35305 void * user_data) 35306 { 35307 return bcm_flow_tunnel_terminator_traverse( 35308 BCM_CONTROL(unit)->unit, 35309 cb, 35310 user_data); 35311 } 35312 35313 /* bcm_flow_vpn_config_t_init not dispatchable */ 35314 35315 int 35316 bcm_loop_flow_vpn_create( 35317 int unit, 35318 bcm_vpn_t * vpn, 35319 bcm_flow_vpn_config_t * info) 35320 { 35321 return bcm_flow_vpn_create( 35322 BCM_CONTROL(unit)->unit, 35323 vpn, 35324 info); 35325 } 35326 35327 int 35328 bcm_loop_flow_vpn_destroy( 35329 int unit, 35330 bcm_vpn_t vpn) 35331 { 35332 return bcm_flow_vpn_destroy( 35333 BCM_CONTROL(unit)->unit, 35334 vpn); 35335 } 35336 35337 int 35338 bcm_loop_flow_vpn_destroy_all( 35339 int unit) 35340 { 35341 return bcm_flow_vpn_destroy_all( 35342 BCM_CONTROL(unit)->unit); 35343 } 35344 35345 int 35346 bcm_loop_flow_vpn_get( 35347 int unit, 35348 bcm_vpn_t vpn, 35349 bcm_flow_vpn_config_t * info) 35350 { 35351 return bcm_flow_vpn_get( 35352 BCM_CONTROL(unit)->unit, 35353 vpn, 35354 info); 35355 } 35356 35357 int 35358 bcm_loop_flow_vpn_traverse( 35359 int unit, 35360 bcm_flow_vpn_traverse_cb cb, 35361 void * user_data) 35362 { 35363 return bcm_flow_vpn_traverse( 35364 BCM_CONTROL(unit)->unit, 35365 cb, 35366 user_data); 35367 } 35368 35369 #endif /* INCLUDE_L3 */ 35370 35371 int 35372 bcm_loop_flowtracker_check_action_info_get( 35373 int unit, 35374 bcm_flowtracker_check_t check_id, 35375 bcm_flowtracker_check_action_info_t * info) 35376 { 35377 return bcm_flowtracker_check_action_info_get( 35378 BCM_CONTROL(unit)->unit, 35379 check_id, 35380 info); 35381 } 35382 35383 int 35384 bcm_loop_flowtracker_check_action_info_set( 35385 int unit, 35386 bcm_flowtracker_check_t check_id, 35387 bcm_flowtracker_check_action_info_t info) 35388 { 35389 return bcm_flowtracker_check_action_info_set( 35390 BCM_CONTROL(unit)->unit, 35391 check_id, 35392 info); 35393 } 35394 35395 /* bcm_flowtracker_check_action_info_t_init not dispatchable */ 35396 35397 int 35398 bcm_loop_flowtracker_check_create( 35399 int unit, 35400 uint32 options, 35401 bcm_flowtracker_check_info_t check_info, 35402 bcm_flowtracker_check_t * check_id) 35403 { 35404 return bcm_flowtracker_check_create( 35405 BCM_CONTROL(unit)->unit, 35406 options, 35407 check_info, 35408 check_id); 35409 } 35410 35411 int 35412 bcm_loop_flowtracker_check_destroy( 35413 int unit, 35414 bcm_flowtracker_check_t check_id) 35415 { 35416 return bcm_flowtracker_check_destroy( 35417 BCM_CONTROL(unit)->unit, 35418 check_id); 35419 } 35420 35421 int 35422 bcm_loop_flowtracker_check_destroy_all( 35423 int unit) 35424 { 35425 return bcm_flowtracker_check_destroy_all( 35426 BCM_CONTROL(unit)->unit); 35427 } 35428 35429 int 35430 bcm_loop_flowtracker_check_export_info_get( 35431 int unit, 35432 bcm_flowtracker_check_t check_id, 35433 bcm_flowtracker_check_export_info_t * info) 35434 { 35435 return bcm_flowtracker_check_export_info_get( 35436 BCM_CONTROL(unit)->unit, 35437 check_id, 35438 info); 35439 } 35440 35441 int 35442 bcm_loop_flowtracker_check_export_info_set( 35443 int unit, 35444 bcm_flowtracker_check_t check_id, 35445 bcm_flowtracker_check_export_info_t info) 35446 { 35447 return bcm_flowtracker_check_export_info_set( 35448 BCM_CONTROL(unit)->unit, 35449 check_id, 35450 info); 35451 } 35452 35453 /* bcm_flowtracker_check_export_info_t_init not dispatchable */ 35454 35455 int 35456 bcm_loop_flowtracker_check_get( 35457 int unit, 35458 bcm_flowtracker_check_t check_id, 35459 bcm_flowtracker_check_info_t * check_info) 35460 { 35461 return bcm_flowtracker_check_get( 35462 BCM_CONTROL(unit)->unit, 35463 check_id, 35464 check_info); 35465 } 35466 35467 /* bcm_flowtracker_check_info_t_init not dispatchable */ 35468 35469 int 35470 bcm_loop_flowtracker_check_traverse( 35471 int unit, 35472 bcm_flowtracker_check_traverse_cb cb, 35473 void * user_data) 35474 { 35475 return bcm_flowtracker_check_traverse( 35476 BCM_CONTROL(unit)->unit, 35477 cb, 35478 user_data); 35479 } 35480 35481 int 35482 bcm_loop_flowtracker_chip_debug_info_get( 35483 int unit, 35484 int max_debug_info_size, 35485 bcm_flowtracker_chip_debug_info_t * list_of_debug_info, 35486 int * actual_debug_info_size) 35487 { 35488 return bcm_flowtracker_chip_debug_info_get( 35489 BCM_CONTROL(unit)->unit, 35490 max_debug_info_size, 35491 list_of_debug_info, 35492 actual_debug_info_size); 35493 } 35494 35495 int 35496 bcm_loop_flowtracker_chip_debug_info_set( 35497 int unit, 35498 int num_debug_info, 35499 bcm_flowtracker_chip_debug_info_t * list_of_debug_info) 35500 { 35501 return bcm_flowtracker_chip_debug_info_set( 35502 BCM_CONTROL(unit)->unit, 35503 num_debug_info, 35504 list_of_debug_info); 35505 } 35506 35507 /* bcm_flowtracker_chip_debug_info_t_init not dispatchable */ 35508 35509 /* bcm_flowtracker_collector_callback_options_t_init not dispatchable */ 35510 35511 /* bcm_flowtracker_collector_copy_info_t_init not dispatchable */ 35512 35513 int 35514 bcm_loop_flowtracker_collector_create( 35515 int unit, 35516 uint32 options, 35517 bcm_flowtracker_collector_t * collector_id, 35518 bcm_flowtracker_collector_info_t * collector_info) 35519 { 35520 return bcm_flowtracker_collector_create( 35521 BCM_CONTROL(unit)->unit, 35522 options, 35523 collector_id, 35524 collector_info); 35525 } 35526 35527 int 35528 bcm_loop_flowtracker_collector_destroy( 35529 int unit, 35530 bcm_flowtracker_collector_t id) 35531 { 35532 return bcm_flowtracker_collector_destroy( 35533 BCM_CONTROL(unit)->unit, 35534 id); 35535 } 35536 35537 int 35538 bcm_loop_flowtracker_collector_get( 35539 int unit, 35540 bcm_flowtracker_collector_t id, 35541 bcm_flowtracker_collector_info_t * collector_info) 35542 { 35543 return bcm_flowtracker_collector_get( 35544 BCM_CONTROL(unit)->unit, 35545 id, 35546 collector_info); 35547 } 35548 35549 int 35550 bcm_loop_flowtracker_collector_get_all( 35551 int unit, 35552 int max_size, 35553 bcm_flowtracker_collector_t * collector_list, 35554 int * list_size) 35555 { 35556 return bcm_flowtracker_collector_get_all( 35557 BCM_CONTROL(unit)->unit, 35558 max_size, 35559 collector_list, 35560 list_size); 35561 } 35562 35563 /* bcm_flowtracker_collector_info_t_init not dispatchable */ 35564 35565 /* bcm_flowtracker_cpu_notification_info_t_init not dispatchable */ 35566 35567 int 35568 bcm_loop_flowtracker_detach( 35569 int unit) 35570 { 35571 return bcm_flowtracker_detach( 35572 BCM_CONTROL(unit)->unit); 35573 } 35574 35575 int 35576 bcm_loop_flowtracker_elephant_action_match_get( 35577 int unit, 35578 bcm_flowtracker_elephant_match_action_t action, 35579 uint32 * match_types, 35580 bcm_flowtracker_elephant_match_data_t * match_data) 35581 { 35582 return bcm_flowtracker_elephant_action_match_get( 35583 BCM_CONTROL(unit)->unit, 35584 action, 35585 match_types, 35586 match_data); 35587 } 35588 35589 int 35590 bcm_loop_flowtracker_elephant_action_match_set( 35591 int unit, 35592 bcm_flowtracker_elephant_match_action_t action, 35593 uint32 match_types, 35594 bcm_flowtracker_elephant_match_data_t * match_data) 35595 { 35596 return bcm_flowtracker_elephant_action_match_set( 35597 BCM_CONTROL(unit)->unit, 35598 action, 35599 match_types, 35600 match_data); 35601 } 35602 35603 int 35604 bcm_loop_flowtracker_elephant_control_get( 35605 int unit, 35606 bcm_flowtracker_elephant_control_t type, 35607 int * arg) 35608 { 35609 return bcm_flowtracker_elephant_control_get( 35610 BCM_CONTROL(unit)->unit, 35611 type, 35612 arg); 35613 } 35614 35615 int 35616 bcm_loop_flowtracker_elephant_control_set( 35617 int unit, 35618 bcm_flowtracker_elephant_control_t type, 35619 int arg) 35620 { 35621 return bcm_flowtracker_elephant_control_set( 35622 BCM_CONTROL(unit)->unit, 35623 type, 35624 arg); 35625 } 35626 35627 int 35628 bcm_loop_flowtracker_elephant_hash_config_get( 35629 int unit, 35630 bcm_flowtracker_elephant_hash_table_t hash_table, 35631 int instance_num, 35632 int bank_num, 35633 bcm_flowtracker_elephant_hash_type_t * hash_type, 35634 int * right_rotate_bits) 35635 { 35636 return bcm_flowtracker_elephant_hash_config_get( 35637 BCM_CONTROL(unit)->unit, 35638 hash_table, 35639 instance_num, 35640 bank_num, 35641 hash_type, 35642 right_rotate_bits); 35643 } 35644 35645 int 35646 bcm_loop_flowtracker_elephant_hash_config_set( 35647 int unit, 35648 bcm_flowtracker_elephant_hash_table_t hash_table, 35649 int instance_num, 35650 int bank_num, 35651 bcm_flowtracker_elephant_hash_type_t hash_type, 35652 int right_rotate_bits) 35653 { 35654 return bcm_flowtracker_elephant_hash_config_set( 35655 BCM_CONTROL(unit)->unit, 35656 hash_table, 35657 instance_num, 35658 bank_num, 35659 hash_type, 35660 right_rotate_bits); 35661 } 35662 35663 int 35664 bcm_loop_flowtracker_elephant_int_pri_remap_get( 35665 int unit, 35666 bcm_cos_t int_pri, 35667 bcm_cos_t * new_int_pri) 35668 { 35669 return bcm_flowtracker_elephant_int_pri_remap_get( 35670 BCM_CONTROL(unit)->unit, 35671 int_pri, 35672 new_int_pri); 35673 } 35674 35675 int 35676 bcm_loop_flowtracker_elephant_int_pri_remap_set( 35677 int unit, 35678 bcm_cos_t int_pri, 35679 bcm_cos_t new_int_pri) 35680 { 35681 return bcm_flowtracker_elephant_int_pri_remap_set( 35682 BCM_CONTROL(unit)->unit, 35683 int_pri, 35684 new_int_pri); 35685 } 35686 35687 /* bcm_flowtracker_elephant_match_data_t_init not dispatchable */ 35688 35689 int 35690 bcm_loop_flowtracker_elephant_profile_create( 35691 int unit, 35692 uint32 options, 35693 bcm_flowtracker_elephant_profile_info_t * profile, 35694 bcm_flowtracker_elephant_profile_t * profile_id) 35695 { 35696 return bcm_flowtracker_elephant_profile_create( 35697 BCM_CONTROL(unit)->unit, 35698 options, 35699 profile, 35700 profile_id); 35701 } 35702 35703 int 35704 bcm_loop_flowtracker_elephant_profile_destroy( 35705 int unit, 35706 bcm_flowtracker_elephant_profile_t profile_id) 35707 { 35708 return bcm_flowtracker_elephant_profile_destroy( 35709 BCM_CONTROL(unit)->unit, 35710 profile_id); 35711 } 35712 35713 int 35714 bcm_loop_flowtracker_elephant_profile_get( 35715 int unit, 35716 bcm_flowtracker_elephant_profile_t profile_id, 35717 bcm_flowtracker_elephant_profile_info_t * profile) 35718 { 35719 return bcm_flowtracker_elephant_profile_get( 35720 BCM_CONTROL(unit)->unit, 35721 profile_id, 35722 profile); 35723 } 35724 35725 int 35726 bcm_loop_flowtracker_elephant_profile_get_all( 35727 int unit, 35728 int max, 35729 bcm_flowtracker_elephant_profile_t * profile_list, 35730 int * count) 35731 { 35732 return bcm_flowtracker_elephant_profile_get_all( 35733 BCM_CONTROL(unit)->unit, 35734 max, 35735 profile_list, 35736 count); 35737 } 35738 35739 /* bcm_flowtracker_elephant_profile_info_t_init not dispatchable */ 35740 35741 int 35742 bcm_loop_flowtracker_elephant_stats_get( 35743 int unit, 35744 bcm_flowtracker_elephant_stats_t * stats) 35745 { 35746 return bcm_flowtracker_elephant_stats_get( 35747 BCM_CONTROL(unit)->unit, 35748 stats); 35749 } 35750 35751 int 35752 bcm_loop_flowtracker_elephant_stats_set( 35753 int unit, 35754 bcm_flowtracker_elephant_stats_t * stats) 35755 { 35756 return bcm_flowtracker_elephant_stats_set( 35757 BCM_CONTROL(unit)->unit, 35758 stats); 35759 } 35760 35761 int 35762 bcm_loop_flowtracker_elephant_stats_sync_get( 35763 int unit, 35764 bcm_flowtracker_elephant_stats_t * stats) 35765 { 35766 return bcm_flowtracker_elephant_stats_sync_get( 35767 BCM_CONTROL(unit)->unit, 35768 stats); 35769 } 35770 35771 /* bcm_flowtracker_elephant_stats_t_init not dispatchable */ 35772 35773 int 35774 bcm_loop_flowtracker_export_record_register( 35775 int unit, 35776 bcm_flowtracker_collector_t collector_id, 35777 bcm_flowtracker_collector_callback_options_t callback_options, 35778 bcm_flowtracker_export_record_cb_f callback_fn, 35779 void * userdata) 35780 { 35781 return bcm_flowtracker_export_record_register( 35782 BCM_CONTROL(unit)->unit, 35783 collector_id, 35784 callback_options, 35785 callback_fn, 35786 userdata); 35787 } 35788 35789 /* bcm_flowtracker_export_record_t_init not dispatchable */ 35790 35791 int 35792 bcm_loop_flowtracker_export_record_unregister( 35793 int unit, 35794 bcm_flowtracker_collector_t collector_id, 35795 bcm_flowtracker_collector_callback_options_t callback_options, 35796 bcm_flowtracker_export_record_cb_f callback_fn) 35797 { 35798 return bcm_flowtracker_export_record_unregister( 35799 BCM_CONTROL(unit)->unit, 35800 collector_id, 35801 callback_options, 35802 callback_fn); 35803 } 35804 35805 int 35806 bcm_loop_flowtracker_export_template_create( 35807 int unit, 35808 uint32 options, 35809 bcm_flowtracker_export_template_t * id, 35810 uint16 set_id, 35811 int num_export_elements, 35812 bcm_flowtracker_export_element_info_t * list_of_export_elements) 35813 { 35814 return bcm_flowtracker_export_template_create( 35815 BCM_CONTROL(unit)->unit, 35816 options, 35817 id, 35818 set_id, 35819 num_export_elements, 35820 list_of_export_elements); 35821 } 35822 35823 int 35824 bcm_loop_flowtracker_export_template_destroy( 35825 int unit, 35826 bcm_flowtracker_export_template_t id) 35827 { 35828 return bcm_flowtracker_export_template_destroy( 35829 BCM_CONTROL(unit)->unit, 35830 id); 35831 } 35832 35833 int 35834 bcm_loop_flowtracker_export_template_get( 35835 int unit, 35836 bcm_flowtracker_export_template_t id, 35837 uint16 * set_id, 35838 int max_size, 35839 bcm_flowtracker_export_element_info_t * list_of_export_elements, 35840 int * list_size) 35841 { 35842 return bcm_flowtracker_export_template_get( 35843 BCM_CONTROL(unit)->unit, 35844 id, 35845 set_id, 35846 max_size, 35847 list_of_export_elements, 35848 list_size); 35849 } 35850 35851 int 35852 bcm_loop_flowtracker_export_template_validate( 35853 int unit, 35854 bcm_flowtracker_group_t flow_group_id, 35855 int max_in_export_elements, 35856 bcm_flowtracker_export_element_info_t * in_export_elements, 35857 int max_out_export_elements, 35858 bcm_flowtracker_export_element_info_t * out_export_elements, 35859 int * actual_out_export_elements) 35860 { 35861 return bcm_flowtracker_export_template_validate( 35862 BCM_CONTROL(unit)->unit, 35863 flow_group_id, 35864 max_in_export_elements, 35865 in_export_elements, 35866 max_out_export_elements, 35867 out_export_elements, 35868 actual_out_export_elements); 35869 } 35870 35871 /* bcm_flowtracker_flow_key_t_init not dispatchable */ 35872 35873 /* bcm_flowtracker_group_action_info_t_init not dispatchable */ 35874 35875 int 35876 bcm_loop_flowtracker_group_actions_get( 35877 int unit, 35878 bcm_flowtracker_group_t flow_group_id, 35879 uint32 flags, 35880 int max_actions, 35881 bcm_flowtracker_group_action_info_t * action_list, 35882 int * num_actions) 35883 { 35884 return bcm_flowtracker_group_actions_get( 35885 BCM_CONTROL(unit)->unit, 35886 flow_group_id, 35887 flags, 35888 max_actions, 35889 action_list, 35890 num_actions); 35891 } 35892 35893 int 35894 bcm_loop_flowtracker_group_actions_set( 35895 int unit, 35896 bcm_flowtracker_group_t flow_group_id, 35897 uint32 flags, 35898 int num_actions, 35899 bcm_flowtracker_group_action_info_t * action_list) 35900 { 35901 return bcm_flowtracker_group_actions_set( 35902 BCM_CONTROL(unit)->unit, 35903 flow_group_id, 35904 flags, 35905 num_actions, 35906 action_list); 35907 } 35908 35909 int 35910 bcm_loop_flowtracker_group_age_timer_get( 35911 int unit, 35912 bcm_flowtracker_group_t id, 35913 uint32 * aging_interval_ms) 35914 { 35915 return bcm_flowtracker_group_age_timer_get( 35916 BCM_CONTROL(unit)->unit, 35917 id, 35918 aging_interval_ms); 35919 } 35920 35921 int 35922 bcm_loop_flowtracker_group_age_timer_set( 35923 int unit, 35924 bcm_flowtracker_group_t id, 35925 uint32 aging_interval_ms) 35926 { 35927 return bcm_flowtracker_group_age_timer_set( 35928 BCM_CONTROL(unit)->unit, 35929 id, 35930 aging_interval_ms); 35931 } 35932 35933 int 35934 bcm_loop_flowtracker_group_check_add( 35935 int unit, 35936 bcm_flowtracker_group_t group_id, 35937 bcm_flowtracker_check_t check_id) 35938 { 35939 return bcm_flowtracker_group_check_add( 35940 BCM_CONTROL(unit)->unit, 35941 group_id, 35942 check_id); 35943 } 35944 35945 int 35946 bcm_loop_flowtracker_group_check_delete( 35947 int unit, 35948 bcm_flowtracker_group_t group_id, 35949 bcm_flowtracker_check_t check_id) 35950 { 35951 return bcm_flowtracker_group_check_delete( 35952 BCM_CONTROL(unit)->unit, 35953 group_id, 35954 check_id); 35955 } 35956 35957 int 35958 bcm_loop_flowtracker_group_check_get_all( 35959 int unit, 35960 bcm_flowtracker_group_t group_id, 35961 int max_checks, 35962 bcm_flowtracker_check_t * list_of_check_ids, 35963 int * num_checks) 35964 { 35965 return bcm_flowtracker_group_check_get_all( 35966 BCM_CONTROL(unit)->unit, 35967 group_id, 35968 max_checks, 35969 list_of_check_ids, 35970 num_checks); 35971 } 35972 35973 int 35974 bcm_loop_flowtracker_group_clear( 35975 int unit, 35976 bcm_flowtracker_group_t id, 35977 uint32 flags) 35978 { 35979 return bcm_flowtracker_group_clear( 35980 BCM_CONTROL(unit)->unit, 35981 id, 35982 flags); 35983 } 35984 35985 int 35986 bcm_loop_flowtracker_group_collector_add( 35987 int unit, 35988 bcm_flowtracker_group_t flow_group_id, 35989 bcm_flowtracker_collector_t collector_id, 35990 bcm_flowtracker_export_template_t template_id) 35991 { 35992 return bcm_flowtracker_group_collector_add( 35993 BCM_CONTROL(unit)->unit, 35994 flow_group_id, 35995 collector_id, 35996 template_id); 35997 } 35998 35999 int 36000 bcm_loop_flowtracker_group_collector_attach( 36001 int unit, 36002 bcm_flowtracker_group_t flow_group_id, 36003 bcm_collector_t collector_id, 36004 int export_profile_id, 36005 bcm_flowtracker_export_template_t template_id) 36006 { 36007 return bcm_flowtracker_group_collector_attach( 36008 BCM_CONTROL(unit)->unit, 36009 flow_group_id, 36010 collector_id, 36011 export_profile_id, 36012 template_id); 36013 } 36014 36015 int 36016 bcm_loop_flowtracker_group_collector_attach_get_all( 36017 int unit, 36018 bcm_flowtracker_group_t flow_group_id, 36019 int max_list_size, 36020 bcm_collector_t * list_of_collectors, 36021 bcm_flowtracker_export_template_t * list_of_templates, 36022 int * export_profile_id_list, 36023 int * list_size) 36024 { 36025 return bcm_flowtracker_group_collector_attach_get_all( 36026 BCM_CONTROL(unit)->unit, 36027 flow_group_id, 36028 max_list_size, 36029 list_of_collectors, 36030 list_of_templates, 36031 export_profile_id_list, 36032 list_size); 36033 } 36034 36035 int 36036 bcm_loop_flowtracker_group_collector_copy_info_get( 36037 int unit, 36038 bcm_flowtracker_group_t group_id, 36039 bcm_flowtracker_collector_copy_info_t * info) 36040 { 36041 return bcm_flowtracker_group_collector_copy_info_get( 36042 BCM_CONTROL(unit)->unit, 36043 group_id, 36044 info); 36045 } 36046 36047 int 36048 bcm_loop_flowtracker_group_collector_copy_info_set( 36049 int unit, 36050 bcm_flowtracker_group_t group_id, 36051 bcm_flowtracker_collector_copy_info_t info) 36052 { 36053 return bcm_flowtracker_group_collector_copy_info_set( 36054 BCM_CONTROL(unit)->unit, 36055 group_id, 36056 info); 36057 } 36058 36059 int 36060 bcm_loop_flowtracker_group_collector_delete( 36061 int unit, 36062 bcm_flowtracker_group_t flow_group_id, 36063 bcm_flowtracker_collector_t collector_id, 36064 bcm_flowtracker_export_template_t template_id) 36065 { 36066 return bcm_flowtracker_group_collector_delete( 36067 BCM_CONTROL(unit)->unit, 36068 flow_group_id, 36069 collector_id, 36070 template_id); 36071 } 36072 36073 int 36074 bcm_loop_flowtracker_group_collector_detach( 36075 int unit, 36076 bcm_flowtracker_group_t flow_group_id, 36077 bcm_collector_t collector_id, 36078 int export_profile_id, 36079 bcm_flowtracker_export_template_t template_id) 36080 { 36081 return bcm_flowtracker_group_collector_detach( 36082 BCM_CONTROL(unit)->unit, 36083 flow_group_id, 36084 collector_id, 36085 export_profile_id, 36086 template_id); 36087 } 36088 36089 int 36090 bcm_loop_flowtracker_group_collector_get_all( 36091 int unit, 36092 bcm_flowtracker_group_t flow_group_id, 36093 int max_list_size, 36094 bcm_flowtracker_collector_t * list_of_collectors, 36095 bcm_flowtracker_export_template_t * list_of_templates, 36096 int * list_size) 36097 { 36098 return bcm_flowtracker_group_collector_get_all( 36099 BCM_CONTROL(unit)->unit, 36100 flow_group_id, 36101 max_list_size, 36102 list_of_collectors, 36103 list_of_templates, 36104 list_size); 36105 } 36106 36107 int 36108 bcm_loop_flowtracker_group_control_get( 36109 int unit, 36110 bcm_flowtracker_group_t group_id, 36111 bcm_flowtracker_group_control_type_t type, 36112 int * arg) 36113 { 36114 return bcm_flowtracker_group_control_get( 36115 BCM_CONTROL(unit)->unit, 36116 group_id, 36117 type, 36118 arg); 36119 } 36120 36121 int 36122 bcm_loop_flowtracker_group_control_set( 36123 int unit, 36124 bcm_flowtracker_group_t group_id, 36125 bcm_flowtracker_group_control_type_t type, 36126 int arg) 36127 { 36128 return bcm_flowtracker_group_control_set( 36129 BCM_CONTROL(unit)->unit, 36130 group_id, 36131 type, 36132 arg); 36133 } 36134 36135 int 36136 bcm_loop_flowtracker_group_cpu_notification_get( 36137 int unit, 36138 bcm_flowtracker_group_t id, 36139 bcm_flowtracker_cpu_notification_info_t * info) 36140 { 36141 return bcm_flowtracker_group_cpu_notification_get( 36142 BCM_CONTROL(unit)->unit, 36143 id, 36144 info); 36145 } 36146 36147 int 36148 bcm_loop_flowtracker_group_cpu_notification_set( 36149 int unit, 36150 bcm_flowtracker_group_t id, 36151 bcm_flowtracker_cpu_notification_info_t * info) 36152 { 36153 return bcm_flowtracker_group_cpu_notification_set( 36154 BCM_CONTROL(unit)->unit, 36155 id, 36156 info); 36157 } 36158 36159 int 36160 bcm_loop_flowtracker_group_create( 36161 int unit, 36162 uint32 options, 36163 bcm_flowtracker_group_t * flow_group_id, 36164 bcm_flowtracker_group_info_t * flow_group_info) 36165 { 36166 return bcm_flowtracker_group_create( 36167 BCM_CONTROL(unit)->unit, 36168 options, 36169 flow_group_id, 36170 flow_group_info); 36171 } 36172 36173 int 36174 bcm_loop_flowtracker_group_data_get( 36175 int unit, 36176 bcm_flowtracker_group_t flow_group_id, 36177 bcm_flowtracker_flow_key_t * flow_key, 36178 bcm_flowtracker_flow_data_t * flow_data) 36179 { 36180 return bcm_flowtracker_group_data_get( 36181 BCM_CONTROL(unit)->unit, 36182 flow_group_id, 36183 flow_key, 36184 flow_data); 36185 } 36186 36187 int 36188 bcm_loop_flowtracker_group_destroy( 36189 int unit, 36190 bcm_flowtracker_group_t id) 36191 { 36192 return bcm_flowtracker_group_destroy( 36193 BCM_CONTROL(unit)->unit, 36194 id); 36195 } 36196 36197 int 36198 bcm_loop_flowtracker_group_elephant_profile_attach( 36199 int unit, 36200 bcm_flowtracker_group_t flow_group_id, 36201 bcm_flowtracker_elephant_profile_t profile_id) 36202 { 36203 return bcm_flowtracker_group_elephant_profile_attach( 36204 BCM_CONTROL(unit)->unit, 36205 flow_group_id, 36206 profile_id); 36207 } 36208 36209 int 36210 bcm_loop_flowtracker_group_elephant_profile_attach_get( 36211 int unit, 36212 bcm_flowtracker_group_t flow_group_id, 36213 bcm_flowtracker_elephant_profile_t * profile_id) 36214 { 36215 return bcm_flowtracker_group_elephant_profile_attach_get( 36216 BCM_CONTROL(unit)->unit, 36217 flow_group_id, 36218 profile_id); 36219 } 36220 36221 int 36222 bcm_loop_flowtracker_group_elephant_profile_detach( 36223 int unit, 36224 bcm_flowtracker_group_t flow_group_id) 36225 { 36226 return bcm_flowtracker_group_elephant_profile_detach( 36227 BCM_CONTROL(unit)->unit, 36228 flow_group_id); 36229 } 36230 36231 int 36232 bcm_loop_flowtracker_group_export_trigger_get( 36233 int unit, 36234 bcm_flowtracker_group_t id, 36235 bcm_flowtracker_export_trigger_info_t * export_trigger_info) 36236 { 36237 return bcm_flowtracker_group_export_trigger_get( 36238 BCM_CONTROL(unit)->unit, 36239 id, 36240 export_trigger_info); 36241 } 36242 36243 int 36244 bcm_loop_flowtracker_group_export_trigger_set( 36245 int unit, 36246 bcm_flowtracker_group_t id, 36247 bcm_flowtracker_export_trigger_info_t * export_trigger_info) 36248 { 36249 return bcm_flowtracker_group_export_trigger_set( 36250 BCM_CONTROL(unit)->unit, 36251 id, 36252 export_trigger_info); 36253 } 36254 36255 int 36256 bcm_loop_flowtracker_group_flow_count_get( 36257 int unit, 36258 bcm_flowtracker_group_t id, 36259 uint32 * flow_count) 36260 { 36261 return bcm_flowtracker_group_flow_count_get( 36262 BCM_CONTROL(unit)->unit, 36263 id, 36264 flow_count); 36265 } 36266 36267 int 36268 bcm_loop_flowtracker_group_flow_limit_get( 36269 int unit, 36270 bcm_flowtracker_group_t id, 36271 uint32 * flow_limit) 36272 { 36273 return bcm_flowtracker_group_flow_limit_get( 36274 BCM_CONTROL(unit)->unit, 36275 id, 36276 flow_limit); 36277 } 36278 36279 int 36280 bcm_loop_flowtracker_group_flow_limit_set( 36281 int unit, 36282 bcm_flowtracker_group_t id, 36283 uint32 flow_limit) 36284 { 36285 return bcm_flowtracker_group_flow_limit_set( 36286 BCM_CONTROL(unit)->unit, 36287 id, 36288 flow_limit); 36289 } 36290 36291 int 36292 bcm_loop_flowtracker_group_get( 36293 int unit, 36294 bcm_flowtracker_group_t id, 36295 bcm_flowtracker_group_info_t * flow_group_info) 36296 { 36297 return bcm_flowtracker_group_get( 36298 BCM_CONTROL(unit)->unit, 36299 id, 36300 flow_group_info); 36301 } 36302 36303 int 36304 bcm_loop_flowtracker_group_get_all( 36305 int unit, 36306 int max_size, 36307 bcm_flowtracker_group_t * flow_group_list, 36308 int * list_size) 36309 { 36310 return bcm_flowtracker_group_get_all( 36311 BCM_CONTROL(unit)->unit, 36312 max_size, 36313 flow_group_list, 36314 list_size); 36315 } 36316 36317 /* bcm_flowtracker_group_info_t_init not dispatchable */ 36318 36319 int 36320 bcm_loop_flowtracker_group_meter_info_get( 36321 int unit, 36322 bcm_flowtracker_group_t group_id, 36323 bcm_flowtracker_meter_info_t * info) 36324 { 36325 return bcm_flowtracker_group_meter_info_get( 36326 BCM_CONTROL(unit)->unit, 36327 group_id, 36328 info); 36329 } 36330 36331 int 36332 bcm_loop_flowtracker_group_meter_info_set( 36333 int unit, 36334 bcm_flowtracker_group_t group_id, 36335 bcm_flowtracker_meter_info_t info) 36336 { 36337 return bcm_flowtracker_group_meter_info_set( 36338 BCM_CONTROL(unit)->unit, 36339 group_id, 36340 info); 36341 } 36342 36343 int 36344 bcm_loop_flowtracker_group_multi_clear( 36345 int unit, 36346 uint32 flags, 36347 int num_groups, 36348 bcm_flowtracker_group_t * list_of_group_ids) 36349 { 36350 return bcm_flowtracker_group_multi_clear( 36351 BCM_CONTROL(unit)->unit, 36352 flags, 36353 num_groups, 36354 list_of_group_ids); 36355 } 36356 36357 int 36358 bcm_loop_flowtracker_group_stat_get( 36359 int unit, 36360 bcm_flowtracker_group_t group_id, 36361 bcm_flowtracker_group_stat_t * group_stats) 36362 { 36363 return bcm_flowtracker_group_stat_get( 36364 BCM_CONTROL(unit)->unit, 36365 group_id, 36366 group_stats); 36367 } 36368 36369 int 36370 bcm_loop_flowtracker_group_stat_modeid_get( 36371 int unit, 36372 bcm_flowtracker_group_t id, 36373 uint32 * stat_modeid) 36374 { 36375 return bcm_flowtracker_group_stat_modeid_get( 36376 BCM_CONTROL(unit)->unit, 36377 id, 36378 stat_modeid); 36379 } 36380 36381 int 36382 bcm_loop_flowtracker_group_stat_modeid_set( 36383 int unit, 36384 bcm_flowtracker_group_t id, 36385 uint32 stat_modeid) 36386 { 36387 return bcm_flowtracker_group_stat_modeid_set( 36388 BCM_CONTROL(unit)->unit, 36389 id, 36390 stat_modeid); 36391 } 36392 36393 int 36394 bcm_loop_flowtracker_group_stat_set( 36395 int unit, 36396 bcm_flowtracker_group_t group_id, 36397 bcm_flowtracker_group_stat_t * group_stats) 36398 { 36399 return bcm_flowtracker_group_stat_set( 36400 BCM_CONTROL(unit)->unit, 36401 group_id, 36402 group_stats); 36403 } 36404 36405 /* bcm_flowtracker_group_stat_t_init not dispatchable */ 36406 36407 int 36408 bcm_loop_flowtracker_group_tracking_params_get( 36409 int unit, 36410 bcm_flowtracker_group_t id, 36411 int max_size, 36412 bcm_flowtracker_tracking_param_info_t * list_of_tracking_params, 36413 int * list_size) 36414 { 36415 return bcm_flowtracker_group_tracking_params_get( 36416 BCM_CONTROL(unit)->unit, 36417 id, 36418 max_size, 36419 list_of_tracking_params, 36420 list_size); 36421 } 36422 36423 int 36424 bcm_loop_flowtracker_group_tracking_params_set( 36425 int unit, 36426 bcm_flowtracker_group_t id, 36427 int num_tracking_params, 36428 bcm_flowtracker_tracking_param_info_t * list_of_tracking_params) 36429 { 36430 return bcm_flowtracker_group_tracking_params_set( 36431 BCM_CONTROL(unit)->unit, 36432 id, 36433 num_tracking_params, 36434 list_of_tracking_params); 36435 } 36436 36437 int 36438 bcm_loop_flowtracker_init( 36439 int unit) 36440 { 36441 return bcm_flowtracker_init( 36442 BCM_CONTROL(unit)->unit); 36443 } 36444 36445 /* bcm_flowtracker_meter_info_t_init not dispatchable */ 36446 36447 int 36448 bcm_loop_flowtracker_template_transmit_config_get( 36449 int unit, 36450 bcm_flowtracker_export_template_t template_id, 36451 bcm_collector_t collector_id, 36452 bcm_flowtracker_template_transmit_config_t * config) 36453 { 36454 return bcm_flowtracker_template_transmit_config_get( 36455 BCM_CONTROL(unit)->unit, 36456 template_id, 36457 collector_id, 36458 config); 36459 } 36460 36461 int 36462 bcm_loop_flowtracker_template_transmit_config_set( 36463 int unit, 36464 bcm_flowtracker_export_template_t template_id, 36465 bcm_collector_t collector_id, 36466 bcm_flowtracker_template_transmit_config_t * config) 36467 { 36468 return bcm_flowtracker_template_transmit_config_set( 36469 BCM_CONTROL(unit)->unit, 36470 template_id, 36471 collector_id, 36472 config); 36473 } 36474 36475 /* bcm_flowtracker_template_transmit_config_t_init not dispatchable */ 36476 36477 /* bcm_flowtracker_tracking_param_info_t_init not dispatchable */ 36478 36479 int 36480 bcm_loop_flowtracker_user_entry_add( 36481 int unit, 36482 bcm_flowtracker_group_t flow_group_id, 36483 uint32 options, 36484 int num_user_entry_params, 36485 bcm_flowtracker_tracking_param_info_t * user_entry_param_list, 36486 bcm_flowtracker_user_entry_handle_t * entry_handle) 36487 { 36488 return bcm_flowtracker_user_entry_add( 36489 BCM_CONTROL(unit)->unit, 36490 flow_group_id, 36491 options, 36492 num_user_entry_params, 36493 user_entry_param_list, 36494 entry_handle); 36495 } 36496 36497 int 36498 bcm_loop_flowtracker_user_entry_delete( 36499 int unit, 36500 bcm_flowtracker_group_t flow_group_id, 36501 bcm_flowtracker_user_entry_handle_t * entry_handle) 36502 { 36503 return bcm_flowtracker_user_entry_delete( 36504 BCM_CONTROL(unit)->unit, 36505 flow_group_id, 36506 entry_handle); 36507 } 36508 36509 int 36510 bcm_loop_flowtracker_user_entry_delete_all( 36511 int unit, 36512 bcm_flowtracker_group_t flow_group_id) 36513 { 36514 return bcm_flowtracker_user_entry_delete_all( 36515 BCM_CONTROL(unit)->unit, 36516 flow_group_id); 36517 } 36518 36519 int 36520 bcm_loop_flowtracker_user_entry_get( 36521 int unit, 36522 bcm_flowtracker_user_entry_handle_t * entry_handle, 36523 int num_user_entry_params, 36524 bcm_flowtracker_tracking_param_info_t * user_entry_param_list, 36525 int * actual_user_entry_params) 36526 { 36527 return bcm_flowtracker_user_entry_get( 36528 BCM_CONTROL(unit)->unit, 36529 entry_handle, 36530 num_user_entry_params, 36531 user_entry_param_list, 36532 actual_user_entry_params); 36533 } 36534 36535 int 36536 bcm_loop_flowtracker_user_entry_get_all( 36537 int unit, 36538 bcm_flowtracker_group_t flow_group_id, 36539 int num_user_entry_handles, 36540 bcm_flowtracker_user_entry_handle_t * user_entry_handle_list, 36541 int * actual_user_entry_handles) 36542 { 36543 return bcm_flowtracker_user_entry_get_all( 36544 BCM_CONTROL(unit)->unit, 36545 flow_group_id, 36546 num_user_entry_handles, 36547 user_entry_handle_list, 36548 actual_user_entry_handles); 36549 } 36550 36551 /* bcm_flowtracker_user_entry_handle_t_init not dispatchable */ 36552 36553 #ifdef INCLUDE_GDPLL 36554 36555 int 36556 bcm_loop_gdpll_cb_register( 36557 int unit, 36558 int cb_type, 36559 bcm_gdpll_cb cb, 36560 void * user_data) 36561 { 36562 return bcm_gdpll_cb_register( 36563 BCM_CONTROL(unit)->unit, 36564 cb_type, 36565 cb, 36566 user_data); 36567 } 36568 36569 int 36570 bcm_loop_gdpll_cb_unregister( 36571 int unit, 36572 int cb_type) 36573 { 36574 return bcm_gdpll_cb_unregister( 36575 BCM_CONTROL(unit)->unit, 36576 cb_type); 36577 } 36578 36579 int 36580 bcm_loop_gdpll_chan_create( 36581 int unit, 36582 uint32 flags, 36583 bcm_gdpll_chan_t * gdpll_chan, 36584 int * pChan) 36585 { 36586 return bcm_gdpll_chan_create( 36587 BCM_CONTROL(unit)->unit, 36588 flags, 36589 gdpll_chan, 36590 pChan); 36591 } 36592 36593 int 36594 bcm_loop_gdpll_chan_debug_enable( 36595 int unit, 36596 int chan, 36597 bcm_gdpll_debug_mode_t debug_mode, 36598 int enable) 36599 { 36600 return bcm_gdpll_chan_debug_enable( 36601 BCM_CONTROL(unit)->unit, 36602 chan, 36603 debug_mode, 36604 enable); 36605 } 36606 36607 int 36608 bcm_loop_gdpll_chan_destroy( 36609 int unit, 36610 int chan) 36611 { 36612 return bcm_gdpll_chan_destroy( 36613 BCM_CONTROL(unit)->unit, 36614 chan); 36615 } 36616 36617 int 36618 bcm_loop_gdpll_chan_enable( 36619 int unit, 36620 int chan, 36621 int enable) 36622 { 36623 return bcm_gdpll_chan_enable( 36624 BCM_CONTROL(unit)->unit, 36625 chan, 36626 enable); 36627 } 36628 36629 int 36630 bcm_loop_gdpll_chan_state_get( 36631 int unit, 36632 int chan, 36633 uint32 * dpllState) 36634 { 36635 return bcm_gdpll_chan_state_get( 36636 BCM_CONTROL(unit)->unit, 36637 chan, 36638 dpllState); 36639 } 36640 36641 int 36642 bcm_loop_gdpll_debug( 36643 int unit, 36644 int enable) 36645 { 36646 return bcm_gdpll_debug( 36647 BCM_CONTROL(unit)->unit, 36648 enable); 36649 } 36650 36651 int 36652 bcm_loop_gdpll_debug_cb_register( 36653 int unit, 36654 bcm_gdpll_debug_cb cb, 36655 void * user_data) 36656 { 36657 return bcm_gdpll_debug_cb_register( 36658 BCM_CONTROL(unit)->unit, 36659 cb, 36660 user_data); 36661 } 36662 36663 int 36664 bcm_loop_gdpll_flush( 36665 int unit) 36666 { 36667 return bcm_gdpll_flush( 36668 BCM_CONTROL(unit)->unit); 36669 } 36670 36671 #endif /* INCLUDE_GDPLL */ 36672 36673 int 36674 bcm_loop_gport_stat_get( 36675 int unit, 36676 bcm_gport_t gport, 36677 bcm_core_t core_id, 36678 bcm_stat_counter_interface_type_t engine_source, 36679 bcm_stat_pp_info_t * stat_info) 36680 { 36681 return bcm_gport_stat_get( 36682 BCM_CONTROL(unit)->unit, 36683 gport, 36684 core_id, 36685 engine_source, 36686 stat_info); 36687 } 36688 36689 int 36690 bcm_loop_gport_stat_set( 36691 int unit, 36692 bcm_gport_t gport, 36693 bcm_core_t core_id, 36694 bcm_stat_counter_interface_type_t engine_source, 36695 bcm_stat_pp_info_t stat_info) 36696 { 36697 return bcm_gport_stat_set( 36698 BCM_CONTROL(unit)->unit, 36699 gport, 36700 core_id, 36701 engine_source, 36702 stat_info); 36703 } 36704 36705 int 36706 bcm_loop_hash_flex_bin_add( 36707 int unit, 36708 bcm_hash_flex_bin_config_t * cfg, 36709 int num_bins, 36710 bcm_hash_flex_bin_cmd_t * bin_cmd, 36711 int num_fields, 36712 bcm_hash_flex_field_t * flex_field) 36713 { 36714 return bcm_hash_flex_bin_add( 36715 BCM_CONTROL(unit)->unit, 36716 cfg, 36717 num_bins, 36718 bin_cmd, 36719 num_fields, 36720 flex_field); 36721 } 36722 36723 /* bcm_hash_flex_bin_config_t_init not dispatchable */ 36724 36725 int 36726 bcm_loop_hash_flex_bin_delete( 36727 int unit, 36728 int entry_id) 36729 { 36730 return bcm_hash_flex_bin_delete( 36731 BCM_CONTROL(unit)->unit, 36732 entry_id); 36733 } 36734 36735 int 36736 bcm_loop_hash_flex_bin_delete_all( 36737 int unit) 36738 { 36739 return bcm_hash_flex_bin_delete_all( 36740 BCM_CONTROL(unit)->unit); 36741 } 36742 36743 int 36744 bcm_loop_hash_flex_bin_get( 36745 int unit, 36746 bcm_hash_flex_bin_config_t * cfg, 36747 int num_bins, 36748 bcm_hash_flex_bin_cmd_t * bin_cmd, 36749 int num_fields, 36750 bcm_hash_flex_field_t * flex_field) 36751 { 36752 return bcm_hash_flex_bin_get( 36753 BCM_CONTROL(unit)->unit, 36754 cfg, 36755 num_bins, 36756 bin_cmd, 36757 num_fields, 36758 flex_field); 36759 } 36760 36761 int 36762 bcm_loop_hash_flex_bin_traverse( 36763 int unit, 36764 uint32 option, 36765 bcm_hash_flex_bin_traverse_cb cb, 36766 void * user_data) 36767 { 36768 return bcm_hash_flex_bin_traverse( 36769 BCM_CONTROL(unit)->unit, 36770 option, 36771 cb, 36772 user_data); 36773 } 36774 36775 int 36776 bcm_loop_hash_flex_field_id_get( 36777 int unit, 36778 bcm_hash_flex_object_t object, 36779 const char * field_name, 36780 uint32 * field_id) 36781 { 36782 return bcm_hash_flex_field_id_get( 36783 BCM_CONTROL(unit)->unit, 36784 object, 36785 field_name, 36786 field_id); 36787 } 36788 36789 int 36790 bcm_loop_hash_flex_field_name_get( 36791 int unit, 36792 uint32 field_id, 36793 bcm_hash_flex_object_t * object, 36794 int size, 36795 char * field_name) 36796 { 36797 return bcm_hash_flex_field_name_get( 36798 BCM_CONTROL(unit)->unit, 36799 field_id, 36800 object, 36801 size, 36802 field_name); 36803 } 36804 36805 int 36806 bcm_loop_hash_init( 36807 int unit) 36808 { 36809 return bcm_hash_init( 36810 BCM_CONTROL(unit)->unit); 36811 } 36812 36813 #ifdef INCLUDE_I2C 36814 36815 int 36816 bcm_loop_i2c_ioctl( 36817 int unit, 36818 int fd, 36819 int opcode, 36820 void * data, 36821 int len) 36822 { 36823 return bcm_i2c_ioctl( 36824 BCM_CONTROL(unit)->unit, 36825 fd, 36826 opcode, 36827 data, 36828 len); 36829 } 36830 36831 int 36832 bcm_loop_i2c_open( 36833 int unit, 36834 char * devname, 36835 uint32 flags, 36836 int speed) 36837 { 36838 return bcm_i2c_open( 36839 BCM_CONTROL(unit)->unit, 36840 devname, 36841 flags, 36842 speed); 36843 } 36844 36845 int 36846 bcm_loop_i2c_read( 36847 int unit, 36848 int fd, 36849 uint32 addr, 36850 uint8 * data, 36851 uint32 * nbytes) 36852 { 36853 return bcm_i2c_read( 36854 BCM_CONTROL(unit)->unit, 36855 fd, 36856 addr, 36857 data, 36858 nbytes); 36859 } 36860 36861 int 36862 bcm_loop_i2c_write( 36863 int unit, 36864 int fd, 36865 uint32 addr, 36866 uint8 * data, 36867 uint32 nbytes) 36868 { 36869 return bcm_i2c_write( 36870 BCM_CONTROL(unit)->unit, 36871 fd, 36872 addr, 36873 data, 36874 nbytes); 36875 } 36876 36877 #endif /* INCLUDE_I2C */ 36878 36879 int 36880 bcm_loop_ifa_collector_get( 36881 int unit, 36882 bcm_ifa_collector_info_t * collector_info) 36883 { 36884 return bcm_ifa_collector_get( 36885 BCM_CONTROL(unit)->unit, 36886 collector_info); 36887 } 36888 36889 /* bcm_ifa_collector_info_t_init not dispatchable */ 36890 36891 int 36892 bcm_loop_ifa_collector_set( 36893 int unit, 36894 uint32 options, 36895 bcm_ifa_collector_info_t * collector_info) 36896 { 36897 return bcm_ifa_collector_set( 36898 BCM_CONTROL(unit)->unit, 36899 options, 36900 collector_info); 36901 } 36902 36903 int 36904 bcm_loop_ifa_config_info_get( 36905 int unit, 36906 bcm_ifa_config_info_t * config_data) 36907 { 36908 return bcm_ifa_config_info_get( 36909 BCM_CONTROL(unit)->unit, 36910 config_data); 36911 } 36912 36913 int 36914 bcm_loop_ifa_config_info_set( 36915 int unit, 36916 uint32 options, 36917 bcm_ifa_config_info_t * config_data) 36918 { 36919 return bcm_ifa_config_info_set( 36920 BCM_CONTROL(unit)->unit, 36921 options, 36922 config_data); 36923 } 36924 36925 /* bcm_ifa_config_info_t_init not dispatchable */ 36926 36927 int 36928 bcm_loop_ifa_detach( 36929 int unit) 36930 { 36931 return bcm_ifa_detach( 36932 BCM_CONTROL(unit)->unit); 36933 } 36934 36935 int 36936 bcm_loop_ifa_init( 36937 int unit) 36938 { 36939 return bcm_ifa_init( 36940 BCM_CONTROL(unit)->unit); 36941 } 36942 36943 int 36944 bcm_loop_ifa_stat_info_get( 36945 int unit, 36946 bcm_ifa_stat_info_t * stat_data) 36947 { 36948 return bcm_ifa_stat_info_get( 36949 BCM_CONTROL(unit)->unit, 36950 stat_data); 36951 } 36952 36953 int 36954 bcm_loop_ifa_stat_info_set( 36955 int unit, 36956 bcm_ifa_stat_info_t * stat_data) 36957 { 36958 return bcm_ifa_stat_info_set( 36959 BCM_CONTROL(unit)->unit, 36960 stat_data); 36961 } 36962 36963 int 36964 bcm_loop_info_get( 36965 int unit, 36966 bcm_info_t * info) 36967 { 36968 return bcm_info_get( 36969 BCM_CONTROL(unit)->unit, 36970 info); 36971 } 36972 36973 /* bcm_info_t_init not dispatchable */ 36974 36975 int 36976 bcm_loop_init( 36977 int unit) 36978 { 36979 return bcm_init( 36980 BCM_CONTROL(unit)->unit); 36981 } 36982 36983 int 36984 bcm_loop_init_advanced( 36985 int unit, 36986 bcm_init_advanced_info_t * init_advanced_info) 36987 { 36988 return bcm_init_advanced( 36989 BCM_CONTROL(unit)->unit, 36990 init_advanced_info); 36991 } 36992 36993 int 36994 bcm_loop_init_check( 36995 int unit) 36996 { 36997 return bcm_init_check( 36998 BCM_CONTROL(unit)->unit); 36999 } 37000 37001 int 37002 bcm_loop_init_selective( 37003 int unit, 37004 uint32 flags) 37005 { 37006 return bcm_init_selective( 37007 BCM_CONTROL(unit)->unit, 37008 flags); 37009 } 37010 37011 int 37012 bcm_loop_instru_control_get( 37013 int unit, 37014 uint32 flags, 37015 bcm_instru_control_t type, 37016 int * arg) 37017 { 37018 return bcm_instru_control_get( 37019 BCM_CONTROL(unit)->unit, 37020 flags, 37021 type, 37022 arg); 37023 } 37024 37025 int 37026 bcm_loop_instru_control_set( 37027 int unit, 37028 uint32 flags, 37029 bcm_instru_control_t type, 37030 int arg) 37031 { 37032 return bcm_instru_control_set( 37033 BCM_CONTROL(unit)->unit, 37034 flags, 37035 type, 37036 arg); 37037 } 37038 37039 int 37040 bcm_loop_instru_eventor_active_get( 37041 int unit, 37042 uint32 flags, 37043 int * out_active) 37044 { 37045 return bcm_instru_eventor_active_get( 37046 BCM_CONTROL(unit)->unit, 37047 flags, 37048 out_active); 37049 } 37050 37051 int 37052 bcm_loop_instru_eventor_active_set( 37053 int unit, 37054 uint32 flags, 37055 int active) 37056 { 37057 return bcm_instru_eventor_active_set( 37058 BCM_CONTROL(unit)->unit, 37059 flags, 37060 active); 37061 } 37062 37063 int 37064 bcm_loop_instru_eventor_builder_get( 37065 int unit, 37066 uint32 flags, 37067 bcm_eventor_builder_id_t builder, 37068 bcm_instru_eventor_builder_conf_t * out_conf) 37069 { 37070 return bcm_instru_eventor_builder_get( 37071 BCM_CONTROL(unit)->unit, 37072 flags, 37073 builder, 37074 out_conf); 37075 } 37076 37077 int 37078 bcm_loop_instru_eventor_builder_set( 37079 int unit, 37080 uint32 flags, 37081 bcm_eventor_builder_id_t builder, 37082 bcm_instru_eventor_builder_conf_t * conf) 37083 { 37084 return bcm_instru_eventor_builder_set( 37085 BCM_CONTROL(unit)->unit, 37086 flags, 37087 builder, 37088 conf); 37089 } 37090 37091 int 37092 bcm_loop_instru_eventor_context_get( 37093 int unit, 37094 uint32 flags, 37095 bcm_eventor_context_id_t context, 37096 bcm_eventor_context_type_t context_type, 37097 bcm_instru_eventor_context_conf_t * out_conf) 37098 { 37099 return bcm_instru_eventor_context_get( 37100 BCM_CONTROL(unit)->unit, 37101 flags, 37102 context, 37103 context_type, 37104 out_conf); 37105 } 37106 37107 int 37108 bcm_loop_instru_eventor_context_set( 37109 int unit, 37110 uint32 flags, 37111 bcm_eventor_context_id_t context, 37112 bcm_eventor_context_type_t context_type, 37113 bcm_instru_eventor_context_conf_t * conf) 37114 { 37115 return bcm_instru_eventor_context_set( 37116 BCM_CONTROL(unit)->unit, 37117 flags, 37118 context, 37119 context_type, 37120 conf); 37121 } 37122 37123 int 37124 bcm_loop_instru_gport_control_get( 37125 int unit, 37126 bcm_gport_t gport, 37127 uint32 flags, 37128 bcm_instru_gport_control_t type, 37129 int * arg) 37130 { 37131 return bcm_instru_gport_control_get( 37132 BCM_CONTROL(unit)->unit, 37133 gport, 37134 flags, 37135 type, 37136 arg); 37137 } 37138 37139 int 37140 bcm_loop_instru_gport_control_set( 37141 int unit, 37142 bcm_gport_t gport, 37143 uint32 flags, 37144 bcm_instru_gport_control_t type, 37145 int arg) 37146 { 37147 return bcm_instru_gport_control_set( 37148 BCM_CONTROL(unit)->unit, 37149 gport, 37150 flags, 37151 type, 37152 arg); 37153 } 37154 37155 int 37156 bcm_loop_instru_ipt_profile_get( 37157 int unit, 37158 uint32 flags, 37159 int ipt_profile, 37160 bcm_instru_ipt_t * config) 37161 { 37162 return bcm_instru_ipt_profile_get( 37163 BCM_CONTROL(unit)->unit, 37164 flags, 37165 ipt_profile, 37166 config); 37167 } 37168 37169 int 37170 bcm_loop_instru_ipt_profile_set( 37171 int unit, 37172 uint32 flags, 37173 int ipt_profile, 37174 bcm_instru_ipt_t * config) 37175 { 37176 return bcm_instru_ipt_profile_set( 37177 BCM_CONTROL(unit)->unit, 37178 flags, 37179 ipt_profile, 37180 config); 37181 } 37182 37183 /* bcm_instru_ipt_t_init not dispatchable */ 37184 37185 int 37186 bcm_loop_instru_sflow_encap_create( 37187 int unit, 37188 bcm_instru_sflow_encap_info_t * sflow_encap_info) 37189 { 37190 return bcm_instru_sflow_encap_create( 37191 BCM_CONTROL(unit)->unit, 37192 sflow_encap_info); 37193 } 37194 37195 int 37196 bcm_loop_instru_sflow_encap_delete( 37197 int unit, 37198 bcm_instru_sflow_encap_info_t * sflow_encap_info) 37199 { 37200 return bcm_instru_sflow_encap_delete( 37201 BCM_CONTROL(unit)->unit, 37202 sflow_encap_info); 37203 } 37204 37205 int 37206 bcm_loop_instru_sflow_encap_get( 37207 int unit, 37208 bcm_instru_sflow_encap_info_t * sflow_encap_info) 37209 { 37210 return bcm_instru_sflow_encap_get( 37211 BCM_CONTROL(unit)->unit, 37212 sflow_encap_info); 37213 } 37214 37215 int 37216 bcm_loop_instru_sflow_encap_traverse( 37217 int unit, 37218 bcm_instru_sflow_encap_traverse_cb cb, 37219 void * user_data) 37220 { 37221 return bcm_instru_sflow_encap_traverse( 37222 BCM_CONTROL(unit)->unit, 37223 cb, 37224 user_data); 37225 } 37226 37227 int 37228 bcm_loop_instru_vis_mode_get( 37229 int unit, 37230 bcm_vis_mode_t * mode) 37231 { 37232 return bcm_instru_vis_mode_get( 37233 BCM_CONTROL(unit)->unit, 37234 mode); 37235 } 37236 37237 int 37238 bcm_loop_instru_vis_mode_set( 37239 int unit, 37240 bcm_vis_mode_t mode) 37241 { 37242 return bcm_instru_vis_mode_set( 37243 BCM_CONTROL(unit)->unit, 37244 mode); 37245 } 37246 37247 #ifdef INCLUDE_INT 37248 37249 int 37250 bcm_loop_int_detach( 37251 int unit) 37252 { 37253 return bcm_int_detach( 37254 BCM_CONTROL(unit)->unit); 37255 } 37256 37257 int 37258 bcm_loop_int_init( 37259 int unit) 37260 { 37261 return bcm_int_init( 37262 BCM_CONTROL(unit)->unit); 37263 } 37264 37265 int 37266 bcm_loop_int_turnaround_config_get( 37267 int unit, 37268 bcm_int_turnaround_config_t * config_data) 37269 { 37270 return bcm_int_turnaround_config_get( 37271 BCM_CONTROL(unit)->unit, 37272 config_data); 37273 } 37274 37275 int 37276 bcm_loop_int_turnaround_config_set( 37277 int unit, 37278 bcm_int_turnaround_config_t * config_data) 37279 { 37280 return bcm_int_turnaround_config_set( 37281 BCM_CONTROL(unit)->unit, 37282 config_data); 37283 } 37284 37285 /* bcm_int_turnaround_config_t_init not dispatchable */ 37286 37287 int 37288 bcm_loop_int_turnaround_stat_get( 37289 int unit, 37290 bcm_int_turnaround_stat_t * stat_data) 37291 { 37292 return bcm_int_turnaround_stat_get( 37293 BCM_CONTROL(unit)->unit, 37294 stat_data); 37295 } 37296 37297 /* bcm_ip6_mask_create not dispatchable */ 37298 37299 /* bcm_ip6_mask_length not dispatchable */ 37300 37301 /* bcm_ip_mask_create not dispatchable */ 37302 37303 /* bcm_ip_mask_length not dispatchable */ 37304 37305 #endif /* INCLUDE_INT */ 37306 37307 int 37308 bcm_loop_ipfix_config_get( 37309 int unit, 37310 bcm_ipfix_stage_t stage, 37311 bcm_port_t port, 37312 bcm_ipfix_config_t * config) 37313 { 37314 return bcm_ipfix_config_get( 37315 BCM_CONTROL(unit)->unit, 37316 stage, 37317 port, 37318 config); 37319 } 37320 37321 int 37322 bcm_loop_ipfix_config_set( 37323 int unit, 37324 bcm_ipfix_stage_t stage, 37325 bcm_port_t port, 37326 bcm_ipfix_config_t * config) 37327 { 37328 return bcm_ipfix_config_set( 37329 BCM_CONTROL(unit)->unit, 37330 stage, 37331 port, 37332 config); 37333 } 37334 37335 /* bcm_ipfix_config_t_init not dispatchable */ 37336 37337 int 37338 bcm_loop_ipfix_mirror_config_get( 37339 int unit, 37340 bcm_ipfix_stage_t stage, 37341 bcm_gport_t port, 37342 bcm_ipfix_mirror_config_t * config) 37343 { 37344 return bcm_ipfix_mirror_config_get( 37345 BCM_CONTROL(unit)->unit, 37346 stage, 37347 port, 37348 config); 37349 } 37350 37351 int 37352 bcm_loop_ipfix_mirror_config_set( 37353 int unit, 37354 bcm_ipfix_stage_t stage, 37355 bcm_gport_t port, 37356 bcm_ipfix_mirror_config_t * config) 37357 { 37358 return bcm_ipfix_mirror_config_set( 37359 BCM_CONTROL(unit)->unit, 37360 stage, 37361 port, 37362 config); 37363 } 37364 37365 /* bcm_ipfix_mirror_config_t_init not dispatchable */ 37366 37367 int 37368 bcm_loop_ipfix_mirror_port_dest_add( 37369 int unit, 37370 bcm_ipfix_stage_t stage, 37371 bcm_gport_t port, 37372 bcm_gport_t mirror_dest_id) 37373 { 37374 return bcm_ipfix_mirror_port_dest_add( 37375 BCM_CONTROL(unit)->unit, 37376 stage, 37377 port, 37378 mirror_dest_id); 37379 } 37380 37381 int 37382 bcm_loop_ipfix_mirror_port_dest_delete( 37383 int unit, 37384 bcm_ipfix_stage_t stage, 37385 bcm_gport_t port, 37386 bcm_gport_t mirror_dest_id) 37387 { 37388 return bcm_ipfix_mirror_port_dest_delete( 37389 BCM_CONTROL(unit)->unit, 37390 stage, 37391 port, 37392 mirror_dest_id); 37393 } 37394 37395 int 37396 bcm_loop_ipfix_mirror_port_dest_delete_all( 37397 int unit, 37398 bcm_ipfix_stage_t stage, 37399 bcm_gport_t port) 37400 { 37401 return bcm_ipfix_mirror_port_dest_delete_all( 37402 BCM_CONTROL(unit)->unit, 37403 stage, 37404 port); 37405 } 37406 37407 int 37408 bcm_loop_ipfix_mirror_port_dest_get( 37409 int unit, 37410 bcm_ipfix_stage_t stage, 37411 bcm_gport_t port, 37412 int mirror_dest_size, 37413 bcm_gport_t * mirror_dest_id, 37414 int * mirror_dest_count) 37415 { 37416 return bcm_ipfix_mirror_port_dest_get( 37417 BCM_CONTROL(unit)->unit, 37418 stage, 37419 port, 37420 mirror_dest_size, 37421 mirror_dest_id, 37422 mirror_dest_count); 37423 } 37424 37425 int 37426 bcm_loop_ipfix_rate_create( 37427 int unit, 37428 bcm_ipfix_rate_t * rate_info) 37429 { 37430 return bcm_ipfix_rate_create( 37431 BCM_CONTROL(unit)->unit, 37432 rate_info); 37433 } 37434 37435 int 37436 bcm_loop_ipfix_rate_destroy( 37437 int unit, 37438 bcm_ipfix_rate_id_t rate_id) 37439 { 37440 return bcm_ipfix_rate_destroy( 37441 BCM_CONTROL(unit)->unit, 37442 rate_id); 37443 } 37444 37445 int 37446 bcm_loop_ipfix_rate_destroy_all( 37447 int unit) 37448 { 37449 return bcm_ipfix_rate_destroy_all( 37450 BCM_CONTROL(unit)->unit); 37451 } 37452 37453 int 37454 bcm_loop_ipfix_rate_get( 37455 int unit, 37456 bcm_ipfix_rate_t * rate_info) 37457 { 37458 return bcm_ipfix_rate_get( 37459 BCM_CONTROL(unit)->unit, 37460 rate_info); 37461 } 37462 37463 int 37464 bcm_loop_ipfix_rate_mirror_add( 37465 int unit, 37466 bcm_ipfix_rate_id_t rate_id, 37467 bcm_gport_t mirror_dest_id) 37468 { 37469 return bcm_ipfix_rate_mirror_add( 37470 BCM_CONTROL(unit)->unit, 37471 rate_id, 37472 mirror_dest_id); 37473 } 37474 37475 int 37476 bcm_loop_ipfix_rate_mirror_delete( 37477 int unit, 37478 bcm_ipfix_rate_id_t rate_id, 37479 bcm_gport_t mirror_dest_id) 37480 { 37481 return bcm_ipfix_rate_mirror_delete( 37482 BCM_CONTROL(unit)->unit, 37483 rate_id, 37484 mirror_dest_id); 37485 } 37486 37487 int 37488 bcm_loop_ipfix_rate_mirror_delete_all( 37489 int unit, 37490 bcm_ipfix_rate_id_t rate_id) 37491 { 37492 return bcm_ipfix_rate_mirror_delete_all( 37493 BCM_CONTROL(unit)->unit, 37494 rate_id); 37495 } 37496 37497 int 37498 bcm_loop_ipfix_rate_mirror_get( 37499 int unit, 37500 bcm_ipfix_rate_id_t rate_id, 37501 int mirror_dest_size, 37502 bcm_gport_t * mirror_dest_id, 37503 int * mirror_dest_count) 37504 { 37505 return bcm_ipfix_rate_mirror_get( 37506 BCM_CONTROL(unit)->unit, 37507 rate_id, 37508 mirror_dest_size, 37509 mirror_dest_id, 37510 mirror_dest_count); 37511 } 37512 37513 /* bcm_ipfix_rate_t_init not dispatchable */ 37514 37515 int 37516 bcm_loop_ipfix_rate_traverse( 37517 int unit, 37518 bcm_ipfix_rate_traverse_cb cb, 37519 void * userdata) 37520 { 37521 return bcm_ipfix_rate_traverse( 37522 BCM_CONTROL(unit)->unit, 37523 cb, 37524 userdata); 37525 } 37526 37527 int 37528 bcm_loop_ipfix_register( 37529 int unit, 37530 bcm_ipfix_callback_t callback, 37531 void * userdata) 37532 { 37533 return bcm_ipfix_register( 37534 BCM_CONTROL(unit)->unit, 37535 callback, 37536 userdata); 37537 } 37538 37539 int 37540 bcm_loop_ipfix_unregister( 37541 int unit, 37542 bcm_ipfix_callback_t callback, 37543 void * userdata) 37544 { 37545 return bcm_ipfix_unregister( 37546 BCM_CONTROL(unit)->unit, 37547 callback, 37548 userdata); 37549 } 37550 37551 #ifdef INCLUDE_L3 37552 37553 int 37554 bcm_loop_ipmc_add( 37555 int unit, 37556 bcm_ipmc_addr_t * data) 37557 { 37558 return bcm_ipmc_add( 37559 BCM_CONTROL(unit)->unit, 37560 data); 37561 } 37562 37563 /* bcm_ipmc_addr_t_init not dispatchable */ 37564 37565 int 37566 bcm_loop_ipmc_age( 37567 int unit, 37568 uint32 flags, 37569 bcm_ipmc_traverse_cb age_cb, 37570 void * user_data) 37571 { 37572 return bcm_ipmc_age( 37573 BCM_CONTROL(unit)->unit, 37574 flags, 37575 age_cb, 37576 user_data); 37577 } 37578 37579 int 37580 bcm_loop_ipmc_bitmap_del( 37581 int unit, 37582 int ipmc_idx, 37583 bcm_port_t port, 37584 bcm_pbmp_t pbmp) 37585 { 37586 return bcm_ipmc_bitmap_del( 37587 BCM_CONTROL(unit)->unit, 37588 ipmc_idx, 37589 port, 37590 pbmp); 37591 } 37592 37593 int 37594 bcm_loop_ipmc_bitmap_get( 37595 int unit, 37596 int ipmc_idx, 37597 bcm_port_t port, 37598 bcm_pbmp_t * pbmp) 37599 { 37600 return bcm_ipmc_bitmap_get( 37601 BCM_CONTROL(unit)->unit, 37602 ipmc_idx, 37603 port, 37604 pbmp); 37605 } 37606 37607 int 37608 bcm_loop_ipmc_bitmap_max_get( 37609 int unit, 37610 int * max_index) 37611 { 37612 return bcm_ipmc_bitmap_max_get( 37613 BCM_CONTROL(unit)->unit, 37614 max_index); 37615 } 37616 37617 int 37618 bcm_loop_ipmc_bitmap_set( 37619 int unit, 37620 int ipmc_idx, 37621 bcm_port_t port, 37622 bcm_pbmp_t pbmp) 37623 { 37624 return bcm_ipmc_bitmap_set( 37625 BCM_CONTROL(unit)->unit, 37626 ipmc_idx, 37627 port, 37628 pbmp); 37629 } 37630 37631 int 37632 bcm_loop_ipmc_counters_get( 37633 int unit, 37634 bcm_port_t port, 37635 bcm_ipmc_counters_t * counters) 37636 { 37637 return bcm_ipmc_counters_get( 37638 BCM_CONTROL(unit)->unit, 37639 port, 37640 counters); 37641 } 37642 37643 /* bcm_ipmc_counters_t_init not dispatchable */ 37644 37645 int 37646 bcm_loop_ipmc_detach( 37647 int unit) 37648 { 37649 return bcm_ipmc_detach( 37650 BCM_CONTROL(unit)->unit); 37651 } 37652 37653 int 37654 bcm_loop_ipmc_egress_port_get( 37655 int unit, 37656 bcm_port_t port, 37657 bcm_mac_t mac, 37658 int * untag, 37659 bcm_vlan_t * vid, 37660 int * ttl_threshold) 37661 { 37662 return bcm_ipmc_egress_port_get( 37663 BCM_CONTROL(unit)->unit, 37664 port, 37665 mac, 37666 untag, 37667 vid, 37668 ttl_threshold); 37669 } 37670 37671 int 37672 bcm_loop_ipmc_egress_port_init( 37673 int unit) 37674 { 37675 return bcm_ipmc_egress_port_init( 37676 BCM_CONTROL(unit)->unit); 37677 } 37678 37679 int 37680 bcm_loop_ipmc_egress_port_set( 37681 int unit, 37682 bcm_port_t port, 37683 const bcm_mac_t mac, 37684 int untag, 37685 bcm_vlan_t vid, 37686 int ttl_threshold) 37687 { 37688 return bcm_ipmc_egress_port_set( 37689 BCM_CONTROL(unit)->unit, 37690 port, 37691 mac, 37692 untag, 37693 vid, 37694 ttl_threshold); 37695 } 37696 37697 int 37698 bcm_loop_ipmc_enable( 37699 int unit, 37700 int enable) 37701 { 37702 return bcm_ipmc_enable( 37703 BCM_CONTROL(unit)->unit, 37704 enable); 37705 } 37706 37707 int 37708 bcm_loop_ipmc_find( 37709 int unit, 37710 bcm_ipmc_addr_t * data) 37711 { 37712 return bcm_ipmc_find( 37713 BCM_CONTROL(unit)->unit, 37714 data); 37715 } 37716 37717 int 37718 bcm_loop_ipmc_init( 37719 int unit) 37720 { 37721 return bcm_ipmc_init( 37722 BCM_CONTROL(unit)->unit); 37723 } 37724 37725 int 37726 bcm_loop_ipmc_range_add( 37727 int unit, 37728 int * range_id, 37729 bcm_ipmc_range_t * range) 37730 { 37731 return bcm_ipmc_range_add( 37732 BCM_CONTROL(unit)->unit, 37733 range_id, 37734 range); 37735 } 37736 37737 int 37738 bcm_loop_ipmc_range_delete( 37739 int unit, 37740 int range_id) 37741 { 37742 return bcm_ipmc_range_delete( 37743 BCM_CONTROL(unit)->unit, 37744 range_id); 37745 } 37746 37747 int 37748 bcm_loop_ipmc_range_delete_all( 37749 int unit) 37750 { 37751 return bcm_ipmc_range_delete_all( 37752 BCM_CONTROL(unit)->unit); 37753 } 37754 37755 int 37756 bcm_loop_ipmc_range_get( 37757 int unit, 37758 int range_id, 37759 bcm_ipmc_range_t * range) 37760 { 37761 return bcm_ipmc_range_get( 37762 BCM_CONTROL(unit)->unit, 37763 range_id, 37764 range); 37765 } 37766 37767 int 37768 bcm_loop_ipmc_range_size_get( 37769 int unit, 37770 int * size) 37771 { 37772 return bcm_ipmc_range_size_get( 37773 BCM_CONTROL(unit)->unit, 37774 size); 37775 } 37776 37777 /* bcm_ipmc_range_t_init not dispatchable */ 37778 37779 int 37780 bcm_loop_ipmc_remove( 37781 int unit, 37782 bcm_ipmc_addr_t * data) 37783 { 37784 return bcm_ipmc_remove( 37785 BCM_CONTROL(unit)->unit, 37786 data); 37787 } 37788 37789 int 37790 bcm_loop_ipmc_remove_all( 37791 int unit) 37792 { 37793 return bcm_ipmc_remove_all( 37794 BCM_CONTROL(unit)->unit); 37795 } 37796 37797 int 37798 bcm_loop_ipmc_rp_add( 37799 int unit, 37800 int rp_id, 37801 bcm_if_t intf_id) 37802 { 37803 return bcm_ipmc_rp_add( 37804 BCM_CONTROL(unit)->unit, 37805 rp_id, 37806 intf_id); 37807 } 37808 37809 int 37810 bcm_loop_ipmc_rp_create( 37811 int unit, 37812 uint32 flags, 37813 int * rp_id) 37814 { 37815 return bcm_ipmc_rp_create( 37816 BCM_CONTROL(unit)->unit, 37817 flags, 37818 rp_id); 37819 } 37820 37821 int 37822 bcm_loop_ipmc_rp_delete( 37823 int unit, 37824 int rp_id, 37825 bcm_if_t intf_id) 37826 { 37827 return bcm_ipmc_rp_delete( 37828 BCM_CONTROL(unit)->unit, 37829 rp_id, 37830 intf_id); 37831 } 37832 37833 int 37834 bcm_loop_ipmc_rp_delete_all( 37835 int unit, 37836 int rp_id) 37837 { 37838 return bcm_ipmc_rp_delete_all( 37839 BCM_CONTROL(unit)->unit, 37840 rp_id); 37841 } 37842 37843 int 37844 bcm_loop_ipmc_rp_destroy( 37845 int unit, 37846 int rp_id) 37847 { 37848 return bcm_ipmc_rp_destroy( 37849 BCM_CONTROL(unit)->unit, 37850 rp_id); 37851 } 37852 37853 int 37854 bcm_loop_ipmc_rp_get( 37855 int unit, 37856 int rp_id, 37857 int intf_max, 37858 bcm_if_t * intf_array, 37859 int * intf_count) 37860 { 37861 return bcm_ipmc_rp_get( 37862 BCM_CONTROL(unit)->unit, 37863 rp_id, 37864 intf_max, 37865 intf_array, 37866 intf_count); 37867 } 37868 37869 int 37870 bcm_loop_ipmc_rp_set( 37871 int unit, 37872 int rp_id, 37873 int intf_count, 37874 bcm_if_t * intf_array) 37875 { 37876 return bcm_ipmc_rp_set( 37877 BCM_CONTROL(unit)->unit, 37878 rp_id, 37879 intf_count, 37880 intf_array); 37881 } 37882 37883 int 37884 bcm_loop_ipmc_stat_attach( 37885 int unit, 37886 bcm_ipmc_addr_t * info, 37887 uint32 stat_counter_id) 37888 { 37889 return bcm_ipmc_stat_attach( 37890 BCM_CONTROL(unit)->unit, 37891 info, 37892 stat_counter_id); 37893 } 37894 37895 int 37896 bcm_loop_ipmc_stat_counter_get( 37897 int unit, 37898 bcm_ipmc_addr_t * info, 37899 bcm_ipmc_stat_t stat, 37900 uint32 num_entries, 37901 uint32 * counter_indexes, 37902 bcm_stat_value_t * counter_values) 37903 { 37904 return bcm_ipmc_stat_counter_get( 37905 BCM_CONTROL(unit)->unit, 37906 info, 37907 stat, 37908 num_entries, 37909 counter_indexes, 37910 counter_values); 37911 } 37912 37913 int 37914 bcm_loop_ipmc_stat_counter_set( 37915 int unit, 37916 bcm_ipmc_addr_t * info, 37917 bcm_ipmc_stat_t stat, 37918 uint32 num_entries, 37919 uint32 * counter_indexes, 37920 bcm_stat_value_t * counter_values) 37921 { 37922 return bcm_ipmc_stat_counter_set( 37923 BCM_CONTROL(unit)->unit, 37924 info, 37925 stat, 37926 num_entries, 37927 counter_indexes, 37928 counter_values); 37929 } 37930 37931 int 37932 bcm_loop_ipmc_stat_counter_sync_get( 37933 int unit, 37934 bcm_ipmc_addr_t * info, 37935 bcm_ipmc_stat_t stat, 37936 uint32 num_entries, 37937 uint32 * counter_indexes, 37938 bcm_stat_value_t * counter_values) 37939 { 37940 return bcm_ipmc_stat_counter_sync_get( 37941 BCM_CONTROL(unit)->unit, 37942 info, 37943 stat, 37944 num_entries, 37945 counter_indexes, 37946 counter_values); 37947 } 37948 37949 int 37950 bcm_loop_ipmc_stat_detach( 37951 int unit, 37952 bcm_ipmc_addr_t * info) 37953 { 37954 return bcm_ipmc_stat_detach( 37955 BCM_CONTROL(unit)->unit, 37956 info); 37957 } 37958 37959 int 37960 bcm_loop_ipmc_stat_id_get( 37961 int unit, 37962 bcm_ipmc_addr_t * info, 37963 bcm_ipmc_stat_t stat, 37964 uint32 * stat_counter_id) 37965 { 37966 return bcm_ipmc_stat_id_get( 37967 BCM_CONTROL(unit)->unit, 37968 info, 37969 stat, 37970 stat_counter_id); 37971 } 37972 37973 int 37974 bcm_loop_ipmc_stat_multi_get( 37975 int unit, 37976 bcm_ipmc_addr_t * info, 37977 int nstat, 37978 bcm_ipmc_stat_t * stat_arr, 37979 uint64 * value_arr) 37980 { 37981 return bcm_ipmc_stat_multi_get( 37982 BCM_CONTROL(unit)->unit, 37983 info, 37984 nstat, 37985 stat_arr, 37986 value_arr); 37987 } 37988 37989 int 37990 bcm_loop_ipmc_stat_multi_get32( 37991 int unit, 37992 bcm_ipmc_addr_t * info, 37993 int nstat, 37994 bcm_ipmc_stat_t * stat_arr, 37995 uint32 * value_arr) 37996 { 37997 return bcm_ipmc_stat_multi_get32( 37998 BCM_CONTROL(unit)->unit, 37999 info, 38000 nstat, 38001 stat_arr, 38002 value_arr); 38003 } 38004 38005 int 38006 bcm_loop_ipmc_stat_multi_set( 38007 int unit, 38008 bcm_ipmc_addr_t * info, 38009 int nstat, 38010 bcm_ipmc_stat_t * stat_arr, 38011 uint64 * value_arr) 38012 { 38013 return bcm_ipmc_stat_multi_set( 38014 BCM_CONTROL(unit)->unit, 38015 info, 38016 nstat, 38017 stat_arr, 38018 value_arr); 38019 } 38020 38021 int 38022 bcm_loop_ipmc_stat_multi_set32( 38023 int unit, 38024 bcm_ipmc_addr_t * info, 38025 int nstat, 38026 bcm_ipmc_stat_t * stat_arr, 38027 uint32 * value_arr) 38028 { 38029 return bcm_ipmc_stat_multi_set32( 38030 BCM_CONTROL(unit)->unit, 38031 info, 38032 nstat, 38033 stat_arr, 38034 value_arr); 38035 } 38036 38037 int 38038 bcm_loop_ipmc_traverse( 38039 int unit, 38040 uint32 flags, 38041 bcm_ipmc_traverse_cb cb, 38042 void * user_data) 38043 { 38044 return bcm_ipmc_traverse( 38045 BCM_CONTROL(unit)->unit, 38046 flags, 38047 cb, 38048 user_data); 38049 } 38050 38051 #endif /* INCLUDE_L3 */ 38052 38053 int 38054 bcm_loop_ipsec_config_set( 38055 int unit, 38056 bcm_ipsec_config_t * config) 38057 { 38058 return bcm_ipsec_config_set( 38059 BCM_CONTROL(unit)->unit, 38060 config); 38061 } 38062 38063 int 38064 bcm_loop_ipsec_sa_create( 38065 int unit, 38066 uint32 flags, 38067 uint32 * sa_id, 38068 bcm_ipsec_sa_info_t * sa) 38069 { 38070 return bcm_ipsec_sa_create( 38071 BCM_CONTROL(unit)->unit, 38072 flags, 38073 sa_id, 38074 sa); 38075 } 38076 38077 int 38078 bcm_loop_ipsec_sa_delete( 38079 int unit, 38080 uint32 flags, 38081 uint32 sa_id) 38082 { 38083 return bcm_ipsec_sa_delete( 38084 BCM_CONTROL(unit)->unit, 38085 flags, 38086 sa_id); 38087 } 38088 38089 int 38090 bcm_loop_ipsec_sa_key_update( 38091 int unit, 38092 uint32 flags, 38093 uint32 sa_id, 38094 bcm_ipsec_sa_keys_t * sa_keys) 38095 { 38096 return bcm_ipsec_sa_key_update( 38097 BCM_CONTROL(unit)->unit, 38098 flags, 38099 sa_id, 38100 sa_keys); 38101 } 38102 38103 int 38104 bcm_loop_ipsec_sa_to_tunnel_map_get( 38105 int unit, 38106 uint32 sa_id, 38107 uint32 * tunnel_id) 38108 { 38109 return bcm_ipsec_sa_to_tunnel_map_get( 38110 BCM_CONTROL(unit)->unit, 38111 sa_id, 38112 tunnel_id); 38113 } 38114 38115 int 38116 bcm_loop_ipsec_sa_to_tunnel_map_set( 38117 int unit, 38118 uint32 tunnel_id, 38119 uint32 sa_id) 38120 { 38121 return bcm_ipsec_sa_to_tunnel_map_set( 38122 BCM_CONTROL(unit)->unit, 38123 tunnel_id, 38124 sa_id); 38125 } 38126 38127 int 38128 bcm_loop_ipsec_tunnel_create( 38129 int unit, 38130 uint32 flags, 38131 uint32 * tunnel_id, 38132 bcm_ipsec_tunnel_info_t * tunnel_info) 38133 { 38134 return bcm_ipsec_tunnel_create( 38135 BCM_CONTROL(unit)->unit, 38136 flags, 38137 tunnel_id, 38138 tunnel_info); 38139 } 38140 38141 int 38142 bcm_loop_ipsec_tunnel_delete( 38143 int unit, 38144 uint32 flags, 38145 uint32 tunnel_id) 38146 { 38147 return bcm_ipsec_tunnel_delete( 38148 BCM_CONTROL(unit)->unit, 38149 flags, 38150 tunnel_id); 38151 } 38152 38153 int 38154 bcm_loop_knet_cleanup( 38155 int unit) 38156 { 38157 return bcm_knet_cleanup( 38158 BCM_CONTROL(unit)->unit); 38159 } 38160 38161 int 38162 bcm_loop_knet_filter_create( 38163 int unit, 38164 bcm_knet_filter_t * filter) 38165 { 38166 return bcm_knet_filter_create( 38167 BCM_CONTROL(unit)->unit, 38168 filter); 38169 } 38170 38171 int 38172 bcm_loop_knet_filter_destroy( 38173 int unit, 38174 int filter_id) 38175 { 38176 return bcm_knet_filter_destroy( 38177 BCM_CONTROL(unit)->unit, 38178 filter_id); 38179 } 38180 38181 int 38182 bcm_loop_knet_filter_get( 38183 int unit, 38184 int filter_id, 38185 bcm_knet_filter_t * filter) 38186 { 38187 return bcm_knet_filter_get( 38188 BCM_CONTROL(unit)->unit, 38189 filter_id, 38190 filter); 38191 } 38192 38193 /* bcm_knet_filter_t_init not dispatchable */ 38194 38195 int 38196 bcm_loop_knet_filter_traverse( 38197 int unit, 38198 bcm_knet_filter_traverse_cb trav_fn, 38199 void * user_data) 38200 { 38201 return bcm_knet_filter_traverse( 38202 BCM_CONTROL(unit)->unit, 38203 trav_fn, 38204 user_data); 38205 } 38206 38207 int 38208 bcm_loop_knet_init( 38209 int unit) 38210 { 38211 return bcm_knet_init( 38212 BCM_CONTROL(unit)->unit); 38213 } 38214 38215 int 38216 bcm_loop_knet_netif_create( 38217 int unit, 38218 bcm_knet_netif_t * netif) 38219 { 38220 return bcm_knet_netif_create( 38221 BCM_CONTROL(unit)->unit, 38222 netif); 38223 } 38224 38225 int 38226 bcm_loop_knet_netif_destroy( 38227 int unit, 38228 int netif_id) 38229 { 38230 return bcm_knet_netif_destroy( 38231 BCM_CONTROL(unit)->unit, 38232 netif_id); 38233 } 38234 38235 int 38236 bcm_loop_knet_netif_get( 38237 int unit, 38238 int netif_id, 38239 bcm_knet_netif_t * netif) 38240 { 38241 return bcm_knet_netif_get( 38242 BCM_CONTROL(unit)->unit, 38243 netif_id, 38244 netif); 38245 } 38246 38247 /* bcm_knet_netif_t_init not dispatchable */ 38248 38249 int 38250 bcm_loop_knet_netif_traverse( 38251 int unit, 38252 bcm_knet_netif_traverse_cb trav_fn, 38253 void * user_data) 38254 { 38255 return bcm_knet_netif_traverse( 38256 BCM_CONTROL(unit)->unit, 38257 trav_fn, 38258 user_data); 38259 } 38260 38261 int 38262 bcm_loop_l2_addr_add( 38263 int unit, 38264 bcm_l2_addr_t * l2addr) 38265 { 38266 return bcm_l2_addr_add( 38267 BCM_CONTROL(unit)->unit, 38268 l2addr); 38269 } 38270 38271 int 38272 bcm_loop_l2_addr_by_struct_delete( 38273 int unit, 38274 bcm_l2_addr_t * l2addr) 38275 { 38276 return bcm_l2_addr_by_struct_delete( 38277 BCM_CONTROL(unit)->unit, 38278 l2addr); 38279 } 38280 38281 int 38282 bcm_loop_l2_addr_by_struct_get( 38283 int unit, 38284 bcm_l2_addr_t * l2addr) 38285 { 38286 return bcm_l2_addr_by_struct_get( 38287 BCM_CONTROL(unit)->unit, 38288 l2addr); 38289 } 38290 38291 int 38292 bcm_loop_l2_addr_delete( 38293 int unit, 38294 bcm_mac_t mac, 38295 bcm_vlan_t vid) 38296 { 38297 return bcm_l2_addr_delete( 38298 BCM_CONTROL(unit)->unit, 38299 mac, 38300 vid); 38301 } 38302 38303 int 38304 bcm_loop_l2_addr_delete_by_mac( 38305 int unit, 38306 bcm_mac_t mac, 38307 uint32 flags) 38308 { 38309 return bcm_l2_addr_delete_by_mac( 38310 BCM_CONTROL(unit)->unit, 38311 mac, 38312 flags); 38313 } 38314 38315 int 38316 bcm_loop_l2_addr_delete_by_mac_port( 38317 int unit, 38318 bcm_mac_t mac, 38319 bcm_module_t mod, 38320 bcm_port_t port, 38321 uint32 flags) 38322 { 38323 return bcm_l2_addr_delete_by_mac_port( 38324 BCM_CONTROL(unit)->unit, 38325 mac, 38326 mod, 38327 port, 38328 flags); 38329 } 38330 38331 int 38332 bcm_loop_l2_addr_delete_by_port( 38333 int unit, 38334 bcm_module_t mod, 38335 bcm_port_t port, 38336 uint32 flags) 38337 { 38338 return bcm_l2_addr_delete_by_port( 38339 BCM_CONTROL(unit)->unit, 38340 mod, 38341 port, 38342 flags); 38343 } 38344 38345 int 38346 bcm_loop_l2_addr_delete_by_trunk( 38347 int unit, 38348 bcm_trunk_t tid, 38349 uint32 flags) 38350 { 38351 return bcm_l2_addr_delete_by_trunk( 38352 BCM_CONTROL(unit)->unit, 38353 tid, 38354 flags); 38355 } 38356 38357 int 38358 bcm_loop_l2_addr_delete_by_vlan( 38359 int unit, 38360 bcm_vlan_t vid, 38361 uint32 flags) 38362 { 38363 return bcm_l2_addr_delete_by_vlan( 38364 BCM_CONTROL(unit)->unit, 38365 vid, 38366 flags); 38367 } 38368 38369 int 38370 bcm_loop_l2_addr_delete_by_vlan_gport_multi( 38371 int unit, 38372 uint32 flags, 38373 int num_pairs, 38374 bcm_vlan_t * vlan, 38375 bcm_gport_t * gport) 38376 { 38377 return bcm_l2_addr_delete_by_vlan_gport_multi( 38378 BCM_CONTROL(unit)->unit, 38379 flags, 38380 num_pairs, 38381 vlan, 38382 gport); 38383 } 38384 38385 int 38386 bcm_loop_l2_addr_delete_by_vlan_port( 38387 int unit, 38388 bcm_vlan_t vid, 38389 bcm_module_t mod, 38390 bcm_port_t port, 38391 uint32 flags) 38392 { 38393 return bcm_l2_addr_delete_by_vlan_port( 38394 BCM_CONTROL(unit)->unit, 38395 vid, 38396 mod, 38397 port, 38398 flags); 38399 } 38400 38401 int 38402 bcm_loop_l2_addr_delete_by_vlan_trunk( 38403 int unit, 38404 bcm_vlan_t vid, 38405 bcm_trunk_t tid, 38406 uint32 flags) 38407 { 38408 return bcm_l2_addr_delete_by_vlan_trunk( 38409 BCM_CONTROL(unit)->unit, 38410 vid, 38411 tid, 38412 flags); 38413 } 38414 38415 /* bcm_l2_addr_distribute_t_init not dispatchable */ 38416 38417 /* bcm_l2_addr_dump not dispatchable */ 38418 38419 int 38420 bcm_loop_l2_addr_freeze( 38421 int unit) 38422 { 38423 return bcm_l2_addr_freeze( 38424 BCM_CONTROL(unit)->unit); 38425 } 38426 38427 int 38428 bcm_loop_l2_addr_get( 38429 int unit, 38430 bcm_mac_t mac_addr, 38431 bcm_vlan_t vid, 38432 bcm_l2_addr_t * l2addr) 38433 { 38434 return bcm_l2_addr_get( 38435 BCM_CONTROL(unit)->unit, 38436 mac_addr, 38437 vid, 38438 l2addr); 38439 } 38440 38441 int 38442 bcm_loop_l2_addr_msg_distribute_get( 38443 int unit, 38444 bcm_l2_addr_distribute_t * distribution) 38445 { 38446 return bcm_l2_addr_msg_distribute_get( 38447 BCM_CONTROL(unit)->unit, 38448 distribution); 38449 } 38450 38451 int 38452 bcm_loop_l2_addr_msg_distribute_set( 38453 int unit, 38454 bcm_l2_addr_distribute_t * distribution) 38455 { 38456 return bcm_l2_addr_msg_distribute_set( 38457 BCM_CONTROL(unit)->unit, 38458 distribution); 38459 } 38460 38461 int 38462 bcm_loop_l2_addr_multi_add( 38463 int unit, 38464 bcm_l2_addr_t * l2addr, 38465 int count) 38466 { 38467 return bcm_l2_addr_multi_add( 38468 BCM_CONTROL(unit)->unit, 38469 l2addr, 38470 count); 38471 } 38472 38473 int 38474 bcm_loop_l2_addr_multi_delete( 38475 int unit, 38476 bcm_l2_addr_t * l2addr, 38477 int count) 38478 { 38479 return bcm_l2_addr_multi_delete( 38480 BCM_CONTROL(unit)->unit, 38481 l2addr, 38482 count); 38483 } 38484 38485 int 38486 bcm_loop_l2_addr_register( 38487 int unit, 38488 bcm_l2_addr_callback_t callback, 38489 void * userdata) 38490 { 38491 return bcm_l2_addr_register( 38492 BCM_CONTROL(unit)->unit, 38493 callback, 38494 userdata); 38495 } 38496 38497 /* bcm_l2_addr_t_init not dispatchable */ 38498 38499 int 38500 bcm_loop_l2_addr_thaw( 38501 int unit) 38502 { 38503 return bcm_l2_addr_thaw( 38504 BCM_CONTROL(unit)->unit); 38505 } 38506 38507 int 38508 bcm_loop_l2_addr_unregister( 38509 int unit, 38510 bcm_l2_addr_callback_t callback, 38511 void * userdata) 38512 { 38513 return bcm_l2_addr_unregister( 38514 BCM_CONTROL(unit)->unit, 38515 callback, 38516 userdata); 38517 } 38518 38519 int 38520 bcm_loop_l2_age_timer_get( 38521 int unit, 38522 int * age_seconds) 38523 { 38524 return bcm_l2_age_timer_get( 38525 BCM_CONTROL(unit)->unit, 38526 age_seconds); 38527 } 38528 38529 int 38530 bcm_loop_l2_age_timer_meta_cycle_get( 38531 int unit, 38532 int * meta_cycle_time) 38533 { 38534 return bcm_l2_age_timer_meta_cycle_get( 38535 BCM_CONTROL(unit)->unit, 38536 meta_cycle_time); 38537 } 38538 38539 int 38540 bcm_loop_l2_age_timer_meta_cycle_set( 38541 int unit, 38542 int meta_cycle_time) 38543 { 38544 return bcm_l2_age_timer_meta_cycle_set( 38545 BCM_CONTROL(unit)->unit, 38546 meta_cycle_time); 38547 } 38548 38549 int 38550 bcm_loop_l2_age_timer_set( 38551 int unit, 38552 int age_seconds) 38553 { 38554 return bcm_l2_age_timer_set( 38555 BCM_CONTROL(unit)->unit, 38556 age_seconds); 38557 } 38558 38559 int 38560 bcm_loop_l2_auth_add( 38561 int unit, 38562 bcm_l2_auth_addr_t * addr) 38563 { 38564 return bcm_l2_auth_add( 38565 BCM_CONTROL(unit)->unit, 38566 addr); 38567 } 38568 38569 /* bcm_l2_auth_addr_t_init not dispatchable */ 38570 38571 int 38572 bcm_loop_l2_auth_delete( 38573 int unit, 38574 bcm_l2_auth_addr_t * addr) 38575 { 38576 return bcm_l2_auth_delete( 38577 BCM_CONTROL(unit)->unit, 38578 addr); 38579 } 38580 38581 int 38582 bcm_loop_l2_auth_delete_all( 38583 int unit) 38584 { 38585 return bcm_l2_auth_delete_all( 38586 BCM_CONTROL(unit)->unit); 38587 } 38588 38589 int 38590 bcm_loop_l2_auth_get( 38591 int unit, 38592 bcm_l2_auth_addr_t * addr) 38593 { 38594 return bcm_l2_auth_get( 38595 BCM_CONTROL(unit)->unit, 38596 addr); 38597 } 38598 38599 int 38600 bcm_loop_l2_auth_traverse( 38601 int unit, 38602 bcm_l2_auth_traverse_cb trav_fn, 38603 void * user_data) 38604 { 38605 return bcm_l2_auth_traverse( 38606 BCM_CONTROL(unit)->unit, 38607 trav_fn, 38608 user_data); 38609 } 38610 38611 /* bcm_l2_cache_addr_t_init not dispatchable */ 38612 38613 int 38614 bcm_loop_l2_cache_delete( 38615 int unit, 38616 int index) 38617 { 38618 return bcm_l2_cache_delete( 38619 BCM_CONTROL(unit)->unit, 38620 index); 38621 } 38622 38623 int 38624 bcm_loop_l2_cache_delete_all( 38625 int unit) 38626 { 38627 return bcm_l2_cache_delete_all( 38628 BCM_CONTROL(unit)->unit); 38629 } 38630 38631 int 38632 bcm_loop_l2_cache_get( 38633 int unit, 38634 int index, 38635 bcm_l2_cache_addr_t * addr) 38636 { 38637 return bcm_l2_cache_get( 38638 BCM_CONTROL(unit)->unit, 38639 index, 38640 addr); 38641 } 38642 38643 int 38644 bcm_loop_l2_cache_init( 38645 int unit) 38646 { 38647 return bcm_l2_cache_init( 38648 BCM_CONTROL(unit)->unit); 38649 } 38650 38651 int 38652 bcm_loop_l2_cache_profile_get( 38653 int unit, 38654 int trap_type, 38655 uint32 profile_idx, 38656 uint32 flags, 38657 bcm_l2cp_profile_info_t * l2cp_profile_info) 38658 { 38659 return bcm_l2_cache_profile_get( 38660 BCM_CONTROL(unit)->unit, 38661 trap_type, 38662 profile_idx, 38663 flags, 38664 l2cp_profile_info); 38665 } 38666 38667 int 38668 bcm_loop_l2_cache_profile_set( 38669 int unit, 38670 int trap_type, 38671 uint32 profile_idx, 38672 uint32 flags, 38673 bcm_l2cp_profile_info_t * l2cp_profile_info) 38674 { 38675 return bcm_l2_cache_profile_set( 38676 BCM_CONTROL(unit)->unit, 38677 trap_type, 38678 profile_idx, 38679 flags, 38680 l2cp_profile_info); 38681 } 38682 38683 int 38684 bcm_loop_l2_cache_set( 38685 int unit, 38686 int index, 38687 bcm_l2_cache_addr_t * addr, 38688 int * index_used) 38689 { 38690 return bcm_l2_cache_set( 38691 BCM_CONTROL(unit)->unit, 38692 index, 38693 addr, 38694 index_used); 38695 } 38696 38697 int 38698 bcm_loop_l2_cache_size_get( 38699 int unit, 38700 int * size) 38701 { 38702 return bcm_l2_cache_size_get( 38703 BCM_CONTROL(unit)->unit, 38704 size); 38705 } 38706 38707 int 38708 bcm_loop_l2_cache_vpn_to_profile_map_get( 38709 int unit, 38710 uint32 vsi, 38711 uint32 * profile_idx) 38712 { 38713 return bcm_l2_cache_vpn_to_profile_map_get( 38714 BCM_CONTROL(unit)->unit, 38715 vsi, 38716 profile_idx); 38717 } 38718 38719 int 38720 bcm_loop_l2_cache_vpn_to_profile_map_set( 38721 int unit, 38722 uint32 vsi, 38723 uint32 profile_idx) 38724 { 38725 return bcm_l2_cache_vpn_to_profile_map_set( 38726 BCM_CONTROL(unit)->unit, 38727 vsi, 38728 profile_idx); 38729 } 38730 38731 #ifdef INCLUDE_L3 38732 38733 int 38734 bcm_loop_l2_change_fields_add( 38735 int unit, 38736 bcm_l2_change_fields_t * l2_fields_info) 38737 { 38738 return bcm_l2_change_fields_add( 38739 BCM_CONTROL(unit)->unit, 38740 l2_fields_info); 38741 } 38742 38743 int 38744 bcm_loop_l2_change_fields_delete( 38745 int unit, 38746 bcm_l2_change_fields_t * l2_fields_info) 38747 { 38748 return bcm_l2_change_fields_delete( 38749 BCM_CONTROL(unit)->unit, 38750 l2_fields_info); 38751 } 38752 38753 int 38754 bcm_loop_l2_change_fields_get( 38755 int unit, 38756 bcm_l2_change_fields_t * l2_fields_info) 38757 { 38758 return bcm_l2_change_fields_get( 38759 BCM_CONTROL(unit)->unit, 38760 l2_fields_info); 38761 } 38762 38763 /* bcm_l2_change_fields_t_init not dispatchable */ 38764 38765 int 38766 bcm_loop_l2_change_fields_traverse( 38767 int unit, 38768 bcm_l2_change_fields_traverse_cb cb, 38769 void * user_data) 38770 { 38771 return bcm_l2_change_fields_traverse( 38772 BCM_CONTROL(unit)->unit, 38773 cb, 38774 user_data); 38775 } 38776 38777 #endif /* INCLUDE_L3 */ 38778 38779 int 38780 bcm_loop_l2_clear( 38781 int unit) 38782 { 38783 return bcm_l2_clear( 38784 BCM_CONTROL(unit)->unit); 38785 } 38786 38787 int 38788 bcm_loop_l2_conflict_get( 38789 int unit, 38790 bcm_l2_addr_t * addr, 38791 bcm_l2_addr_t * cf_array, 38792 int cf_max, 38793 int * cf_count) 38794 { 38795 return bcm_l2_conflict_get( 38796 BCM_CONTROL(unit)->unit, 38797 addr, 38798 cf_array, 38799 cf_max, 38800 cf_count); 38801 } 38802 38803 int 38804 bcm_loop_l2_detach( 38805 int unit) 38806 { 38807 return bcm_l2_detach( 38808 BCM_CONTROL(unit)->unit); 38809 } 38810 38811 int 38812 bcm_loop_l2_egress_create( 38813 int unit, 38814 bcm_l2_egress_t * egr) 38815 { 38816 return bcm_l2_egress_create( 38817 BCM_CONTROL(unit)->unit, 38818 egr); 38819 } 38820 38821 int 38822 bcm_loop_l2_egress_destroy( 38823 int unit, 38824 bcm_if_t encap_id) 38825 { 38826 return bcm_l2_egress_destroy( 38827 BCM_CONTROL(unit)->unit, 38828 encap_id); 38829 } 38830 38831 int 38832 bcm_loop_l2_egress_find( 38833 int unit, 38834 bcm_l2_egress_t * egr, 38835 bcm_if_t * encap_id) 38836 { 38837 return bcm_l2_egress_find( 38838 BCM_CONTROL(unit)->unit, 38839 egr, 38840 encap_id); 38841 } 38842 38843 int 38844 bcm_loop_l2_egress_get( 38845 int unit, 38846 bcm_if_t encap_id, 38847 bcm_l2_egress_t * egr) 38848 { 38849 return bcm_l2_egress_get( 38850 BCM_CONTROL(unit)->unit, 38851 encap_id, 38852 egr); 38853 } 38854 38855 /* bcm_l2_egress_t_init not dispatchable */ 38856 38857 int 38858 bcm_loop_l2_egress_traverse( 38859 int unit, 38860 bcm_l2_egress_traverse_cb trav_fn, 38861 void * user_data) 38862 { 38863 return bcm_l2_egress_traverse( 38864 BCM_CONTROL(unit)->unit, 38865 trav_fn, 38866 user_data); 38867 } 38868 38869 int 38870 bcm_loop_l2_gport_forward_info_get( 38871 int unit, 38872 int gport_id, 38873 bcm_l2_gport_forward_info_t * forward_info) 38874 { 38875 return bcm_l2_gport_forward_info_get( 38876 BCM_CONTROL(unit)->unit, 38877 gport_id, 38878 forward_info); 38879 } 38880 38881 /* bcm_l2_gport_forward_info_t_init not dispatchable */ 38882 38883 int 38884 bcm_loop_l2_init( 38885 int unit) 38886 { 38887 return bcm_l2_init( 38888 BCM_CONTROL(unit)->unit); 38889 } 38890 38891 int 38892 bcm_loop_l2_key_dump( 38893 int unit, 38894 char * pfx, 38895 bcm_l2_addr_t * entry, 38896 char * sfx) 38897 { 38898 return bcm_l2_key_dump( 38899 BCM_CONTROL(unit)->unit, 38900 pfx, 38901 entry, 38902 sfx); 38903 } 38904 38905 int 38906 bcm_loop_l2_learn_class_get( 38907 int unit, 38908 int lclass, 38909 int * lclass_prio, 38910 uint32 * flags) 38911 { 38912 return bcm_l2_learn_class_get( 38913 BCM_CONTROL(unit)->unit, 38914 lclass, 38915 lclass_prio, 38916 flags); 38917 } 38918 38919 int 38920 bcm_loop_l2_learn_class_set( 38921 int unit, 38922 int lclass, 38923 int lclass_prio, 38924 uint32 flags) 38925 { 38926 return bcm_l2_learn_class_set( 38927 BCM_CONTROL(unit)->unit, 38928 lclass, 38929 lclass_prio, 38930 flags); 38931 } 38932 38933 int 38934 bcm_loop_l2_learn_limit_disable( 38935 int unit) 38936 { 38937 return bcm_l2_learn_limit_disable( 38938 BCM_CONTROL(unit)->unit); 38939 } 38940 38941 int 38942 bcm_loop_l2_learn_limit_enable( 38943 int unit) 38944 { 38945 return bcm_l2_learn_limit_enable( 38946 BCM_CONTROL(unit)->unit); 38947 } 38948 38949 int 38950 bcm_loop_l2_learn_limit_get( 38951 int unit, 38952 bcm_l2_learn_limit_t * limit) 38953 { 38954 return bcm_l2_learn_limit_get( 38955 BCM_CONTROL(unit)->unit, 38956 limit); 38957 } 38958 38959 int 38960 bcm_loop_l2_learn_limit_set( 38961 int unit, 38962 bcm_l2_learn_limit_t * limit) 38963 { 38964 return bcm_l2_learn_limit_set( 38965 BCM_CONTROL(unit)->unit, 38966 limit); 38967 } 38968 38969 /* bcm_l2_learn_limit_t_init not dispatchable */ 38970 38971 int 38972 bcm_loop_l2_learn_msgs_config_get( 38973 int unit, 38974 bcm_l2_learn_msgs_config_t * learn_msg_config) 38975 { 38976 return bcm_l2_learn_msgs_config_get( 38977 BCM_CONTROL(unit)->unit, 38978 learn_msg_config); 38979 } 38980 38981 int 38982 bcm_loop_l2_learn_msgs_config_set( 38983 int unit, 38984 bcm_l2_learn_msgs_config_t * learn_msg_config) 38985 { 38986 return bcm_l2_learn_msgs_config_set( 38987 BCM_CONTROL(unit)->unit, 38988 learn_msg_config); 38989 } 38990 38991 /* bcm_l2_learn_msgs_config_t_init not dispatchable */ 38992 38993 int 38994 bcm_loop_l2_learn_port_class_get( 38995 int unit, 38996 bcm_gport_t port, 38997 int * lclass) 38998 { 38999 return bcm_l2_learn_port_class_get( 39000 BCM_CONTROL(unit)->unit, 39001 port, 39002 lclass); 39003 } 39004 39005 int 39006 bcm_loop_l2_learn_port_class_set( 39007 int unit, 39008 bcm_gport_t port, 39009 int lclass) 39010 { 39011 return bcm_l2_learn_port_class_set( 39012 BCM_CONTROL(unit)->unit, 39013 port, 39014 lclass); 39015 } 39016 39017 int 39018 bcm_loop_l2_learn_stat_get( 39019 int unit, 39020 bcm_l2_learn_stat_t * learn_stat) 39021 { 39022 return bcm_l2_learn_stat_get( 39023 BCM_CONTROL(unit)->unit, 39024 learn_stat); 39025 } 39026 39027 int 39028 bcm_loop_l2_learn_stat_set( 39029 int unit, 39030 bcm_l2_learn_stat_t * learn_stat) 39031 { 39032 return bcm_l2_learn_stat_set( 39033 BCM_CONTROL(unit)->unit, 39034 learn_stat); 39035 } 39036 39037 /* bcm_l2_learn_stat_t_init not dispatchable */ 39038 39039 int 39040 bcm_loop_l2_mac_port_create( 39041 int unit, 39042 bcm_l2_mac_port_t * mac_port) 39043 { 39044 return bcm_l2_mac_port_create( 39045 BCM_CONTROL(unit)->unit, 39046 mac_port); 39047 } 39048 39049 int 39050 bcm_loop_l2_mac_port_destroy( 39051 int unit, 39052 bcm_gport_t mac_port_id) 39053 { 39054 return bcm_l2_mac_port_destroy( 39055 BCM_CONTROL(unit)->unit, 39056 mac_port_id); 39057 } 39058 39059 int 39060 bcm_loop_l2_mac_port_destroy_all( 39061 int unit) 39062 { 39063 return bcm_l2_mac_port_destroy_all( 39064 BCM_CONTROL(unit)->unit); 39065 } 39066 39067 int 39068 bcm_loop_l2_mac_port_get( 39069 int unit, 39070 bcm_l2_mac_port_t * mac_port) 39071 { 39072 return bcm_l2_mac_port_get( 39073 BCM_CONTROL(unit)->unit, 39074 mac_port); 39075 } 39076 39077 /* bcm_l2_mac_port_t_init not dispatchable */ 39078 39079 int 39080 bcm_loop_l2_mac_port_traverse( 39081 int unit, 39082 bcm_l2_mac_port_traverse_cb cb, 39083 void * user_data) 39084 { 39085 return bcm_l2_mac_port_traverse( 39086 BCM_CONTROL(unit)->unit, 39087 cb, 39088 user_data); 39089 } 39090 39091 int 39092 bcm_loop_l2_match_masked_traverse( 39093 int unit, 39094 uint32 flags, 39095 bcm_l2_addr_t * match_addr, 39096 bcm_l2_addr_t * mask_addr, 39097 bcm_l2_traverse_cb trav_fn, 39098 void * user_data) 39099 { 39100 return bcm_l2_match_masked_traverse( 39101 BCM_CONTROL(unit)->unit, 39102 flags, 39103 match_addr, 39104 mask_addr, 39105 trav_fn, 39106 user_data); 39107 } 39108 39109 int 39110 bcm_loop_l2_matched_traverse( 39111 int unit, 39112 uint32 flags, 39113 bcm_l2_addr_t * match_addr, 39114 bcm_l2_traverse_cb trav_fn, 39115 void * user_data) 39116 { 39117 return bcm_l2_matched_traverse( 39118 BCM_CONTROL(unit)->unit, 39119 flags, 39120 match_addr, 39121 trav_fn, 39122 user_data); 39123 } 39124 39125 int 39126 bcm_loop_l2_port_native( 39127 int unit, 39128 int modid, 39129 int port) 39130 { 39131 return bcm_l2_port_native( 39132 BCM_CONTROL(unit)->unit, 39133 modid, 39134 port); 39135 } 39136 39137 int 39138 bcm_loop_l2_replace( 39139 int unit, 39140 uint32 flags, 39141 bcm_l2_addr_t * match_addr, 39142 bcm_module_t new_module, 39143 bcm_port_t new_port, 39144 bcm_trunk_t new_trunk) 39145 { 39146 return bcm_l2_replace( 39147 BCM_CONTROL(unit)->unit, 39148 flags, 39149 match_addr, 39150 new_module, 39151 new_port, 39152 new_trunk); 39153 } 39154 39155 int 39156 bcm_loop_l2_replace_match( 39157 int unit, 39158 uint32 flags, 39159 bcm_l2_addr_t * match_addr, 39160 bcm_l2_addr_t * mask_addr, 39161 bcm_l2_addr_t * replace_addr, 39162 bcm_l2_addr_t * replace_mask_addr) 39163 { 39164 return bcm_l2_replace_match( 39165 BCM_CONTROL(unit)->unit, 39166 flags, 39167 match_addr, 39168 mask_addr, 39169 replace_addr, 39170 replace_mask_addr); 39171 } 39172 39173 int 39174 bcm_loop_l2_ring_replace( 39175 int unit, 39176 bcm_l2_ring_t * l2_ring) 39177 { 39178 return bcm_l2_ring_replace( 39179 BCM_CONTROL(unit)->unit, 39180 l2_ring); 39181 } 39182 39183 /* bcm_l2_ring_t_init not dispatchable */ 39184 39185 int 39186 bcm_loop_l2_stat_enable_set( 39187 int unit, 39188 bcm_l2_addr_t * l2_addr, 39189 int enable) 39190 { 39191 return bcm_l2_stat_enable_set( 39192 BCM_CONTROL(unit)->unit, 39193 l2_addr, 39194 enable); 39195 } 39196 39197 int 39198 bcm_loop_l2_stat_get( 39199 int unit, 39200 bcm_l2_addr_t * l2_addr, 39201 bcm_l2_stat_t stat, 39202 uint64 * val) 39203 { 39204 return bcm_l2_stat_get( 39205 BCM_CONTROL(unit)->unit, 39206 l2_addr, 39207 stat, 39208 val); 39209 } 39210 39211 int 39212 bcm_loop_l2_stat_get32( 39213 int unit, 39214 bcm_l2_addr_t * l2_addr, 39215 bcm_l2_stat_t stat, 39216 uint32 * val) 39217 { 39218 return bcm_l2_stat_get32( 39219 BCM_CONTROL(unit)->unit, 39220 l2_addr, 39221 stat, 39222 val); 39223 } 39224 39225 int 39226 bcm_loop_l2_stat_set( 39227 int unit, 39228 bcm_l2_addr_t * l2_addr, 39229 bcm_l2_stat_t stat, 39230 uint64 val) 39231 { 39232 return bcm_l2_stat_set( 39233 BCM_CONTROL(unit)->unit, 39234 l2_addr, 39235 stat, 39236 val); 39237 } 39238 39239 int 39240 bcm_loop_l2_stat_set32( 39241 int unit, 39242 bcm_l2_addr_t * l2_addr, 39243 bcm_l2_stat_t stat, 39244 uint32 val) 39245 { 39246 return bcm_l2_stat_set32( 39247 BCM_CONTROL(unit)->unit, 39248 l2_addr, 39249 stat, 39250 val); 39251 } 39252 39253 int 39254 bcm_loop_l2_station_add( 39255 int unit, 39256 int * station_id, 39257 bcm_l2_station_t * station) 39258 { 39259 return bcm_l2_station_add( 39260 BCM_CONTROL(unit)->unit, 39261 station_id, 39262 station); 39263 } 39264 39265 int 39266 bcm_loop_l2_station_delete( 39267 int unit, 39268 int station_id) 39269 { 39270 return bcm_l2_station_delete( 39271 BCM_CONTROL(unit)->unit, 39272 station_id); 39273 } 39274 39275 int 39276 bcm_loop_l2_station_delete_all( 39277 int unit) 39278 { 39279 return bcm_l2_station_delete_all( 39280 BCM_CONTROL(unit)->unit); 39281 } 39282 39283 int 39284 bcm_loop_l2_station_get( 39285 int unit, 39286 int station_id, 39287 bcm_l2_station_t * station) 39288 { 39289 return bcm_l2_station_get( 39290 BCM_CONTROL(unit)->unit, 39291 station_id, 39292 station); 39293 } 39294 39295 int 39296 bcm_loop_l2_station_size_get( 39297 int unit, 39298 int * size) 39299 { 39300 return bcm_l2_station_size_get( 39301 BCM_CONTROL(unit)->unit, 39302 size); 39303 } 39304 39305 /* bcm_l2_station_t_init not dispatchable */ 39306 39307 int 39308 bcm_loop_l2_station_traverse( 39309 int unit, 39310 bcm_l2_station_traverse_cb trav_fn, 39311 void * user_data) 39312 { 39313 return bcm_l2_station_traverse( 39314 BCM_CONTROL(unit)->unit, 39315 trav_fn, 39316 user_data); 39317 } 39318 39319 int 39320 bcm_loop_l2_traverse( 39321 int unit, 39322 bcm_l2_traverse_cb trav_fn, 39323 void * user_data) 39324 { 39325 return bcm_l2_traverse( 39326 BCM_CONTROL(unit)->unit, 39327 trav_fn, 39328 user_data); 39329 } 39330 39331 int 39332 bcm_loop_l2_tunnel_add( 39333 int unit, 39334 bcm_mac_t mac, 39335 bcm_vlan_t vlan) 39336 { 39337 return bcm_l2_tunnel_add( 39338 BCM_CONTROL(unit)->unit, 39339 mac, 39340 vlan); 39341 } 39342 39343 int 39344 bcm_loop_l2_tunnel_delete( 39345 int unit, 39346 bcm_mac_t mac, 39347 bcm_vlan_t vlan) 39348 { 39349 return bcm_l2_tunnel_delete( 39350 BCM_CONTROL(unit)->unit, 39351 mac, 39352 vlan); 39353 } 39354 39355 int 39356 bcm_loop_l2_tunnel_delete_all( 39357 int unit) 39358 { 39359 return bcm_l2_tunnel_delete_all( 39360 BCM_CONTROL(unit)->unit); 39361 } 39362 39363 #ifdef INCLUDE_L3 39364 39365 int 39366 bcm_loop_l2gre_cleanup( 39367 int unit) 39368 { 39369 return bcm_l2gre_cleanup( 39370 BCM_CONTROL(unit)->unit); 39371 } 39372 39373 int 39374 bcm_loop_l2gre_init( 39375 int unit) 39376 { 39377 return bcm_l2gre_init( 39378 BCM_CONTROL(unit)->unit); 39379 } 39380 39381 int 39382 bcm_loop_l2gre_port_add( 39383 int unit, 39384 bcm_vpn_t l2vpn, 39385 bcm_l2gre_port_t * l2gre_port) 39386 { 39387 return bcm_l2gre_port_add( 39388 BCM_CONTROL(unit)->unit, 39389 l2vpn, 39390 l2gre_port); 39391 } 39392 39393 int 39394 bcm_loop_l2gre_port_delete( 39395 int unit, 39396 bcm_vpn_t l2vpn, 39397 bcm_gport_t l2gre_port_id) 39398 { 39399 return bcm_l2gre_port_delete( 39400 BCM_CONTROL(unit)->unit, 39401 l2vpn, 39402 l2gre_port_id); 39403 } 39404 39405 int 39406 bcm_loop_l2gre_port_delete_all( 39407 int unit, 39408 bcm_vpn_t l2vpn) 39409 { 39410 return bcm_l2gre_port_delete_all( 39411 BCM_CONTROL(unit)->unit, 39412 l2vpn); 39413 } 39414 39415 int 39416 bcm_loop_l2gre_port_get( 39417 int unit, 39418 bcm_vpn_t l2vpn, 39419 bcm_l2gre_port_t * l2gre_port) 39420 { 39421 return bcm_l2gre_port_get( 39422 BCM_CONTROL(unit)->unit, 39423 l2vpn, 39424 l2gre_port); 39425 } 39426 39427 int 39428 bcm_loop_l2gre_port_get_all( 39429 int unit, 39430 bcm_vpn_t l2vpn, 39431 int port_max, 39432 bcm_l2gre_port_t * port_array, 39433 int * port_count) 39434 { 39435 return bcm_l2gre_port_get_all( 39436 BCM_CONTROL(unit)->unit, 39437 l2vpn, 39438 port_max, 39439 port_array, 39440 port_count); 39441 } 39442 39443 /* bcm_l2gre_port_t_init not dispatchable */ 39444 39445 int 39446 bcm_loop_l2gre_stat_attach( 39447 int unit, 39448 bcm_gport_t port, 39449 bcm_vpn_t vpn, 39450 uint32 stat_counter_id) 39451 { 39452 return bcm_l2gre_stat_attach( 39453 BCM_CONTROL(unit)->unit, 39454 port, 39455 vpn, 39456 stat_counter_id); 39457 } 39458 39459 int 39460 bcm_loop_l2gre_stat_counter_get( 39461 int unit, 39462 bcm_gport_t port, 39463 bcm_vpn_t vpn, 39464 bcm_l2gre_stat_t stat, 39465 uint32 num_entries, 39466 uint32 * counter_indexes, 39467 bcm_stat_value_t * counter_values) 39468 { 39469 return bcm_l2gre_stat_counter_get( 39470 BCM_CONTROL(unit)->unit, 39471 port, 39472 vpn, 39473 stat, 39474 num_entries, 39475 counter_indexes, 39476 counter_values); 39477 } 39478 39479 int 39480 bcm_loop_l2gre_stat_counter_set( 39481 int unit, 39482 bcm_gport_t port, 39483 bcm_vpn_t vpn, 39484 bcm_l2gre_stat_t stat, 39485 uint32 num_entries, 39486 uint32 * counter_indexes, 39487 bcm_stat_value_t * counter_values) 39488 { 39489 return bcm_l2gre_stat_counter_set( 39490 BCM_CONTROL(unit)->unit, 39491 port, 39492 vpn, 39493 stat, 39494 num_entries, 39495 counter_indexes, 39496 counter_values); 39497 } 39498 39499 int 39500 bcm_loop_l2gre_stat_counter_sync_get( 39501 int unit, 39502 bcm_gport_t port, 39503 bcm_vpn_t vpn, 39504 bcm_l2gre_stat_t stat, 39505 uint32 num_entries, 39506 uint32 * counter_indexes, 39507 bcm_stat_value_t * counter_values) 39508 { 39509 return bcm_l2gre_stat_counter_sync_get( 39510 BCM_CONTROL(unit)->unit, 39511 port, 39512 vpn, 39513 stat, 39514 num_entries, 39515 counter_indexes, 39516 counter_values); 39517 } 39518 39519 int 39520 bcm_loop_l2gre_stat_detach( 39521 int unit, 39522 bcm_gport_t port, 39523 bcm_vpn_t vpn) 39524 { 39525 return bcm_l2gre_stat_detach( 39526 BCM_CONTROL(unit)->unit, 39527 port, 39528 vpn); 39529 } 39530 39531 int 39532 bcm_loop_l2gre_stat_id_get( 39533 int unit, 39534 bcm_gport_t port, 39535 bcm_vpn_t vpn, 39536 bcm_l2gre_stat_t stat, 39537 uint32 * stat_counter_id) 39538 { 39539 return bcm_l2gre_stat_id_get( 39540 BCM_CONTROL(unit)->unit, 39541 port, 39542 vpn, 39543 stat, 39544 stat_counter_id); 39545 } 39546 39547 int 39548 bcm_loop_l2gre_stat_multi_get( 39549 int unit, 39550 bcm_gport_t port, 39551 bcm_vpn_t vpn, 39552 int nstat, 39553 bcm_l2gre_stat_t * stat_arr, 39554 uint64 * value_arr) 39555 { 39556 return bcm_l2gre_stat_multi_get( 39557 BCM_CONTROL(unit)->unit, 39558 port, 39559 vpn, 39560 nstat, 39561 stat_arr, 39562 value_arr); 39563 } 39564 39565 int 39566 bcm_loop_l2gre_stat_multi_get32( 39567 int unit, 39568 bcm_gport_t port, 39569 bcm_vpn_t vpn, 39570 int nstat, 39571 bcm_l2gre_stat_t * stat_arr, 39572 uint32 * value_arr) 39573 { 39574 return bcm_l2gre_stat_multi_get32( 39575 BCM_CONTROL(unit)->unit, 39576 port, 39577 vpn, 39578 nstat, 39579 stat_arr, 39580 value_arr); 39581 } 39582 39583 int 39584 bcm_loop_l2gre_stat_multi_set( 39585 int unit, 39586 bcm_gport_t port, 39587 bcm_vpn_t vpn, 39588 int nstat, 39589 bcm_l2gre_stat_t * stat_arr, 39590 uint64 * value_arr) 39591 { 39592 return bcm_l2gre_stat_multi_set( 39593 BCM_CONTROL(unit)->unit, 39594 port, 39595 vpn, 39596 nstat, 39597 stat_arr, 39598 value_arr); 39599 } 39600 39601 int 39602 bcm_loop_l2gre_stat_multi_set32( 39603 int unit, 39604 bcm_gport_t port, 39605 bcm_vpn_t vpn, 39606 int nstat, 39607 bcm_l2gre_stat_t * stat_arr, 39608 uint32 * value_arr) 39609 { 39610 return bcm_l2gre_stat_multi_set32( 39611 BCM_CONTROL(unit)->unit, 39612 port, 39613 vpn, 39614 nstat, 39615 stat_arr, 39616 value_arr); 39617 } 39618 39619 int 39620 bcm_loop_l2gre_tunnel_initiator_create( 39621 int unit, 39622 bcm_tunnel_initiator_t * info) 39623 { 39624 return bcm_l2gre_tunnel_initiator_create( 39625 BCM_CONTROL(unit)->unit, 39626 info); 39627 } 39628 39629 int 39630 bcm_loop_l2gre_tunnel_initiator_destroy( 39631 int unit, 39632 bcm_gport_t l2gre_tunnel_id) 39633 { 39634 return bcm_l2gre_tunnel_initiator_destroy( 39635 BCM_CONTROL(unit)->unit, 39636 l2gre_tunnel_id); 39637 } 39638 39639 int 39640 bcm_loop_l2gre_tunnel_initiator_destroy_all( 39641 int unit) 39642 { 39643 return bcm_l2gre_tunnel_initiator_destroy_all( 39644 BCM_CONTROL(unit)->unit); 39645 } 39646 39647 int 39648 bcm_loop_l2gre_tunnel_initiator_get( 39649 int unit, 39650 bcm_tunnel_initiator_t * info) 39651 { 39652 return bcm_l2gre_tunnel_initiator_get( 39653 BCM_CONTROL(unit)->unit, 39654 info); 39655 } 39656 39657 int 39658 bcm_loop_l2gre_tunnel_initiator_traverse( 39659 int unit, 39660 bcm_tunnel_initiator_traverse_cb cb, 39661 void * user_data) 39662 { 39663 return bcm_l2gre_tunnel_initiator_traverse( 39664 BCM_CONTROL(unit)->unit, 39665 cb, 39666 user_data); 39667 } 39668 39669 int 39670 bcm_loop_l2gre_tunnel_terminator_create( 39671 int unit, 39672 bcm_tunnel_terminator_t * info) 39673 { 39674 return bcm_l2gre_tunnel_terminator_create( 39675 BCM_CONTROL(unit)->unit, 39676 info); 39677 } 39678 39679 int 39680 bcm_loop_l2gre_tunnel_terminator_destroy( 39681 int unit, 39682 bcm_gport_t l2gre_tunnel_id) 39683 { 39684 return bcm_l2gre_tunnel_terminator_destroy( 39685 BCM_CONTROL(unit)->unit, 39686 l2gre_tunnel_id); 39687 } 39688 39689 int 39690 bcm_loop_l2gre_tunnel_terminator_destroy_all( 39691 int unit) 39692 { 39693 return bcm_l2gre_tunnel_terminator_destroy_all( 39694 BCM_CONTROL(unit)->unit); 39695 } 39696 39697 int 39698 bcm_loop_l2gre_tunnel_terminator_get( 39699 int unit, 39700 bcm_tunnel_terminator_t * info) 39701 { 39702 return bcm_l2gre_tunnel_terminator_get( 39703 BCM_CONTROL(unit)->unit, 39704 info); 39705 } 39706 39707 int 39708 bcm_loop_l2gre_tunnel_terminator_traverse( 39709 int unit, 39710 bcm_tunnel_terminator_traverse_cb cb, 39711 void * user_data) 39712 { 39713 return bcm_l2gre_tunnel_terminator_traverse( 39714 BCM_CONTROL(unit)->unit, 39715 cb, 39716 user_data); 39717 } 39718 39719 int 39720 bcm_loop_l2gre_tunnel_terminator_update( 39721 int unit, 39722 bcm_tunnel_terminator_t * info) 39723 { 39724 return bcm_l2gre_tunnel_terminator_update( 39725 BCM_CONTROL(unit)->unit, 39726 info); 39727 } 39728 39729 /* bcm_l2gre_vpn_config_t_init not dispatchable */ 39730 39731 int 39732 bcm_loop_l2gre_vpn_create( 39733 int unit, 39734 bcm_l2gre_vpn_config_t * info) 39735 { 39736 return bcm_l2gre_vpn_create( 39737 BCM_CONTROL(unit)->unit, 39738 info); 39739 } 39740 39741 int 39742 bcm_loop_l2gre_vpn_destroy( 39743 int unit, 39744 bcm_vpn_t l2vpn) 39745 { 39746 return bcm_l2gre_vpn_destroy( 39747 BCM_CONTROL(unit)->unit, 39748 l2vpn); 39749 } 39750 39751 int 39752 bcm_loop_l2gre_vpn_destroy_all( 39753 int unit) 39754 { 39755 return bcm_l2gre_vpn_destroy_all( 39756 BCM_CONTROL(unit)->unit); 39757 } 39758 39759 int 39760 bcm_loop_l2gre_vpn_get( 39761 int unit, 39762 bcm_vpn_t l2vpn, 39763 bcm_l2gre_vpn_config_t * info) 39764 { 39765 return bcm_l2gre_vpn_get( 39766 BCM_CONTROL(unit)->unit, 39767 l2vpn, 39768 info); 39769 } 39770 39771 int 39772 bcm_loop_l2gre_vpn_traverse( 39773 int unit, 39774 bcm_l2gre_vpn_traverse_cb cb, 39775 void * user_data) 39776 { 39777 return bcm_l2gre_vpn_traverse( 39778 BCM_CONTROL(unit)->unit, 39779 cb, 39780 user_data); 39781 } 39782 39783 int 39784 bcm_loop_l3_cleanup( 39785 int unit) 39786 { 39787 return bcm_l3_cleanup( 39788 BCM_CONTROL(unit)->unit); 39789 } 39790 39791 int 39792 bcm_loop_l3_ecmp_agm_attach( 39793 int unit, 39794 bcm_if_t l3_ecmp_id, 39795 bcm_switch_agm_id_t agm_id) 39796 { 39797 return bcm_l3_ecmp_agm_attach( 39798 BCM_CONTROL(unit)->unit, 39799 l3_ecmp_id, 39800 agm_id); 39801 } 39802 39803 int 39804 bcm_loop_l3_ecmp_agm_attach_get( 39805 int unit, 39806 bcm_if_t l3_ecmp_id, 39807 bcm_switch_agm_id_t * agm_id) 39808 { 39809 return bcm_l3_ecmp_agm_attach_get( 39810 BCM_CONTROL(unit)->unit, 39811 l3_ecmp_id, 39812 agm_id); 39813 } 39814 39815 int 39816 bcm_loop_l3_ecmp_agm_detach( 39817 int unit, 39818 bcm_if_t l3_ecmp_id, 39819 bcm_switch_agm_id_t agm_id) 39820 { 39821 return bcm_l3_ecmp_agm_detach( 39822 BCM_CONTROL(unit)->unit, 39823 l3_ecmp_id, 39824 agm_id); 39825 } 39826 39827 int 39828 bcm_loop_l3_ecmp_create( 39829 int unit, 39830 uint32 options, 39831 bcm_l3_egress_ecmp_t * ecmp_info, 39832 int ecmp_member_count, 39833 bcm_l3_ecmp_member_t * ecmp_member_array) 39834 { 39835 return bcm_l3_ecmp_create( 39836 BCM_CONTROL(unit)->unit, 39837 options, 39838 ecmp_info, 39839 ecmp_member_count, 39840 ecmp_member_array); 39841 } 39842 39843 int 39844 bcm_loop_l3_ecmp_destroy( 39845 int unit, 39846 bcm_if_t ecmp_group_id) 39847 { 39848 return bcm_l3_ecmp_destroy( 39849 BCM_CONTROL(unit)->unit, 39850 ecmp_group_id); 39851 } 39852 39853 /* bcm_l3_ecmp_dlb_mon_cfg_t_init not dispatchable */ 39854 39855 int 39856 bcm_loop_l3_ecmp_dlb_mon_config_get( 39857 int unit, 39858 bcm_if_t intf, 39859 bcm_l3_ecmp_dlb_mon_cfg_t * dlb_mon_cfg) 39860 { 39861 return bcm_l3_ecmp_dlb_mon_config_get( 39862 BCM_CONTROL(unit)->unit, 39863 intf, 39864 dlb_mon_cfg); 39865 } 39866 39867 int 39868 bcm_loop_l3_ecmp_dlb_mon_config_set( 39869 int unit, 39870 bcm_if_t ecmp_intf, 39871 bcm_l3_ecmp_dlb_mon_cfg_t * dlb_mon_cfg) 39872 { 39873 return bcm_l3_ecmp_dlb_mon_config_set( 39874 BCM_CONTROL(unit)->unit, 39875 ecmp_intf, 39876 dlb_mon_cfg); 39877 } 39878 39879 int 39880 bcm_loop_l3_ecmp_find( 39881 int unit, 39882 int ecmp_member_count, 39883 bcm_l3_ecmp_member_t * ecmp_member_array, 39884 bcm_l3_egress_ecmp_t * ecmp_info) 39885 { 39886 return bcm_l3_ecmp_find( 39887 BCM_CONTROL(unit)->unit, 39888 ecmp_member_count, 39889 ecmp_member_array, 39890 ecmp_info); 39891 } 39892 39893 int 39894 bcm_loop_l3_ecmp_get( 39895 int unit, 39896 bcm_l3_egress_ecmp_t * ecmp_info, 39897 int ecmp_member_size, 39898 bcm_l3_ecmp_member_t * ecmp_member_array, 39899 int * ecmp_member_count) 39900 { 39901 return bcm_l3_ecmp_get( 39902 BCM_CONTROL(unit)->unit, 39903 ecmp_info, 39904 ecmp_member_size, 39905 ecmp_member_array, 39906 ecmp_member_count); 39907 } 39908 39909 int 39910 bcm_loop_l3_ecmp_member_add( 39911 int unit, 39912 bcm_if_t ecmp_group_id, 39913 bcm_l3_ecmp_member_t * ecmp_member) 39914 { 39915 return bcm_l3_ecmp_member_add( 39916 BCM_CONTROL(unit)->unit, 39917 ecmp_group_id, 39918 ecmp_member); 39919 } 39920 39921 int 39922 bcm_loop_l3_ecmp_member_delete( 39923 int unit, 39924 bcm_if_t ecmp_group_id, 39925 bcm_l3_ecmp_member_t * ecmp_member) 39926 { 39927 return bcm_l3_ecmp_member_delete( 39928 BCM_CONTROL(unit)->unit, 39929 ecmp_group_id, 39930 ecmp_member); 39931 } 39932 39933 int 39934 bcm_loop_l3_ecmp_member_delete_all( 39935 int unit, 39936 bcm_if_t ecmp_group_id) 39937 { 39938 return bcm_l3_ecmp_member_delete_all( 39939 BCM_CONTROL(unit)->unit, 39940 ecmp_group_id); 39941 } 39942 39943 /* bcm_l3_ecmp_member_t_init not dispatchable */ 39944 39945 int 39946 bcm_loop_l3_ecmp_traverse( 39947 int unit, 39948 bcm_l3_ecmp_traverse_cb trav_fn, 39949 void * user_data) 39950 { 39951 return bcm_l3_ecmp_traverse( 39952 BCM_CONTROL(unit)->unit, 39953 trav_fn, 39954 user_data); 39955 } 39956 39957 int 39958 bcm_loop_l3_egress_arp_traverse( 39959 int unit, 39960 bcm_l3_egress_traverse_cb trav_fn, 39961 void * user_data) 39962 { 39963 return bcm_l3_egress_arp_traverse( 39964 BCM_CONTROL(unit)->unit, 39965 trav_fn, 39966 user_data); 39967 } 39968 39969 int 39970 bcm_loop_l3_egress_create( 39971 int unit, 39972 uint32 flags, 39973 bcm_l3_egress_t * egr, 39974 bcm_if_t * if_id) 39975 { 39976 return bcm_l3_egress_create( 39977 BCM_CONTROL(unit)->unit, 39978 flags, 39979 egr, 39980 if_id); 39981 } 39982 39983 int 39984 bcm_loop_l3_egress_destroy( 39985 int unit, 39986 bcm_if_t intf) 39987 { 39988 return bcm_l3_egress_destroy( 39989 BCM_CONTROL(unit)->unit, 39990 intf); 39991 } 39992 39993 int 39994 bcm_loop_l3_egress_ecmp_add( 39995 int unit, 39996 bcm_l3_egress_ecmp_t * ecmp, 39997 bcm_if_t intf) 39998 { 39999 return bcm_l3_egress_ecmp_add( 40000 BCM_CONTROL(unit)->unit, 40001 ecmp, 40002 intf); 40003 } 40004 40005 int 40006 bcm_loop_l3_egress_ecmp_create( 40007 int unit, 40008 bcm_l3_egress_ecmp_t * ecmp, 40009 int intf_count, 40010 bcm_if_t * intf_array) 40011 { 40012 return bcm_l3_egress_ecmp_create( 40013 BCM_CONTROL(unit)->unit, 40014 ecmp, 40015 intf_count, 40016 intf_array); 40017 } 40018 40019 int 40020 bcm_loop_l3_egress_ecmp_delete( 40021 int unit, 40022 bcm_l3_egress_ecmp_t * ecmp, 40023 bcm_if_t intf) 40024 { 40025 return bcm_l3_egress_ecmp_delete( 40026 BCM_CONTROL(unit)->unit, 40027 ecmp, 40028 intf); 40029 } 40030 40031 int 40032 bcm_loop_l3_egress_ecmp_destroy( 40033 int unit, 40034 bcm_l3_egress_ecmp_t * ecmp) 40035 { 40036 return bcm_l3_egress_ecmp_destroy( 40037 BCM_CONTROL(unit)->unit, 40038 ecmp); 40039 } 40040 40041 int 40042 bcm_loop_l3_egress_ecmp_ethertype_get( 40043 int unit, 40044 uint32 * flags, 40045 int ethertype_max, 40046 int * ethertype_array, 40047 int * ethertype_count) 40048 { 40049 return bcm_l3_egress_ecmp_ethertype_get( 40050 BCM_CONTROL(unit)->unit, 40051 flags, 40052 ethertype_max, 40053 ethertype_array, 40054 ethertype_count); 40055 } 40056 40057 int 40058 bcm_loop_l3_egress_ecmp_ethertype_set( 40059 int unit, 40060 uint32 flags, 40061 int ethertype_count, 40062 int * ethertype_array) 40063 { 40064 return bcm_l3_egress_ecmp_ethertype_set( 40065 BCM_CONTROL(unit)->unit, 40066 flags, 40067 ethertype_count, 40068 ethertype_array); 40069 } 40070 40071 int 40072 bcm_loop_l3_egress_ecmp_find( 40073 int unit, 40074 int intf_count, 40075 bcm_if_t * intf_array, 40076 bcm_l3_egress_ecmp_t * ecmp) 40077 { 40078 return bcm_l3_egress_ecmp_find( 40079 BCM_CONTROL(unit)->unit, 40080 intf_count, 40081 intf_array, 40082 ecmp); 40083 } 40084 40085 int 40086 bcm_loop_l3_egress_ecmp_get( 40087 int unit, 40088 bcm_l3_egress_ecmp_t * ecmp, 40089 int intf_size, 40090 bcm_if_t * intf_array, 40091 int * intf_count) 40092 { 40093 return bcm_l3_egress_ecmp_get( 40094 BCM_CONTROL(unit)->unit, 40095 ecmp, 40096 intf_size, 40097 intf_array, 40098 intf_count); 40099 } 40100 40101 int 40102 bcm_loop_l3_egress_ecmp_member_status_get( 40103 int unit, 40104 bcm_if_t intf, 40105 int * status) 40106 { 40107 return bcm_l3_egress_ecmp_member_status_get( 40108 BCM_CONTROL(unit)->unit, 40109 intf, 40110 status); 40111 } 40112 40113 int 40114 bcm_loop_l3_egress_ecmp_member_status_set( 40115 int unit, 40116 bcm_if_t intf, 40117 int status) 40118 { 40119 return bcm_l3_egress_ecmp_member_status_set( 40120 BCM_CONTROL(unit)->unit, 40121 intf, 40122 status); 40123 } 40124 40125 int 40126 bcm_loop_l3_egress_ecmp_resilient_replace( 40127 int unit, 40128 uint32 flags, 40129 bcm_l3_egress_ecmp_resilient_entry_t * match_entry, 40130 int * num_entries, 40131 bcm_l3_egress_ecmp_resilient_entry_t * replace_entry) 40132 { 40133 return bcm_l3_egress_ecmp_resilient_replace( 40134 BCM_CONTROL(unit)->unit, 40135 flags, 40136 match_entry, 40137 num_entries, 40138 replace_entry); 40139 } 40140 40141 int 40142 bcm_loop_l3_egress_ecmp_resilient_traverse( 40143 int unit, 40144 uint32 flags, 40145 bcm_l3_egress_ecmp_resilient_entry_t * match_entry, 40146 bcm_l3_egress_ecmp_resilient_traverse_cb trav_fn, 40147 void * user_data) 40148 { 40149 return bcm_l3_egress_ecmp_resilient_traverse( 40150 BCM_CONTROL(unit)->unit, 40151 flags, 40152 match_entry, 40153 trav_fn, 40154 user_data); 40155 } 40156 40157 /* bcm_l3_egress_ecmp_t_init not dispatchable */ 40158 40159 int 40160 bcm_loop_l3_egress_ecmp_traverse( 40161 int unit, 40162 bcm_l3_egress_ecmp_traverse_cb trav_fn, 40163 void * user_data) 40164 { 40165 return bcm_l3_egress_ecmp_traverse( 40166 BCM_CONTROL(unit)->unit, 40167 trav_fn, 40168 user_data); 40169 } 40170 40171 int 40172 bcm_loop_l3_egress_find( 40173 int unit, 40174 bcm_l3_egress_t * egr, 40175 bcm_if_t * intf) 40176 { 40177 return bcm_l3_egress_find( 40178 BCM_CONTROL(unit)->unit, 40179 egr, 40180 intf); 40181 } 40182 40183 int 40184 bcm_loop_l3_egress_get( 40185 int unit, 40186 bcm_if_t intf, 40187 bcm_l3_egress_t * egr) 40188 { 40189 return bcm_l3_egress_get( 40190 BCM_CONTROL(unit)->unit, 40191 intf, 40192 egr); 40193 } 40194 40195 int 40196 bcm_loop_l3_egress_multi_alloc( 40197 int unit, 40198 bcm_l3_egress_multi_info_t egress_multi_info, 40199 bcm_if_t * base_egress_id) 40200 { 40201 return bcm_l3_egress_multi_alloc( 40202 BCM_CONTROL(unit)->unit, 40203 egress_multi_info, 40204 base_egress_id); 40205 } 40206 40207 int 40208 bcm_loop_l3_egress_multi_free( 40209 int unit, 40210 bcm_if_t base_egress_id) 40211 { 40212 return bcm_l3_egress_multi_free( 40213 BCM_CONTROL(unit)->unit, 40214 base_egress_id); 40215 } 40216 40217 /* bcm_l3_egress_multi_info_t_init not dispatchable */ 40218 40219 int 40220 bcm_loop_l3_egress_multipath_add( 40221 int unit, 40222 bcm_if_t mpintf, 40223 bcm_if_t intf) 40224 { 40225 return bcm_l3_egress_multipath_add( 40226 BCM_CONTROL(unit)->unit, 40227 mpintf, 40228 intf); 40229 } 40230 40231 int 40232 bcm_loop_l3_egress_multipath_create( 40233 int unit, 40234 uint32 flags, 40235 int intf_count, 40236 bcm_if_t * intf_array, 40237 bcm_if_t * mpintf) 40238 { 40239 return bcm_l3_egress_multipath_create( 40240 BCM_CONTROL(unit)->unit, 40241 flags, 40242 intf_count, 40243 intf_array, 40244 mpintf); 40245 } 40246 40247 int 40248 bcm_loop_l3_egress_multipath_delete( 40249 int unit, 40250 bcm_if_t mpintf, 40251 bcm_if_t intf) 40252 { 40253 return bcm_l3_egress_multipath_delete( 40254 BCM_CONTROL(unit)->unit, 40255 mpintf, 40256 intf); 40257 } 40258 40259 int 40260 bcm_loop_l3_egress_multipath_destroy( 40261 int unit, 40262 bcm_if_t mpintf) 40263 { 40264 return bcm_l3_egress_multipath_destroy( 40265 BCM_CONTROL(unit)->unit, 40266 mpintf); 40267 } 40268 40269 int 40270 bcm_loop_l3_egress_multipath_find( 40271 int unit, 40272 int intf_count, 40273 bcm_if_t * intf_array, 40274 bcm_if_t * mpintf) 40275 { 40276 return bcm_l3_egress_multipath_find( 40277 BCM_CONTROL(unit)->unit, 40278 intf_count, 40279 intf_array, 40280 mpintf); 40281 } 40282 40283 int 40284 bcm_loop_l3_egress_multipath_get( 40285 int unit, 40286 bcm_if_t mpintf, 40287 int intf_size, 40288 bcm_if_t * intf_array, 40289 int * intf_count) 40290 { 40291 return bcm_l3_egress_multipath_get( 40292 BCM_CONTROL(unit)->unit, 40293 mpintf, 40294 intf_size, 40295 intf_array, 40296 intf_count); 40297 } 40298 40299 int 40300 bcm_loop_l3_egress_multipath_max_create( 40301 int unit, 40302 uint32 flags, 40303 int max_paths, 40304 int intf_count, 40305 bcm_if_t * intf_array, 40306 bcm_if_t * mpintf) 40307 { 40308 return bcm_l3_egress_multipath_max_create( 40309 BCM_CONTROL(unit)->unit, 40310 flags, 40311 max_paths, 40312 intf_count, 40313 intf_array, 40314 mpintf); 40315 } 40316 40317 int 40318 bcm_loop_l3_egress_multipath_traverse( 40319 int unit, 40320 bcm_l3_egress_multipath_traverse_cb trav_fn, 40321 void * user_data) 40322 { 40323 return bcm_l3_egress_multipath_traverse( 40324 BCM_CONTROL(unit)->unit, 40325 trav_fn, 40326 user_data); 40327 } 40328 40329 int 40330 bcm_loop_l3_egress_stat_attach( 40331 int unit, 40332 bcm_if_t intf_id, 40333 uint32 stat_counter_id) 40334 { 40335 return bcm_l3_egress_stat_attach( 40336 BCM_CONTROL(unit)->unit, 40337 intf_id, 40338 stat_counter_id); 40339 } 40340 40341 int 40342 bcm_loop_l3_egress_stat_counter_get( 40343 int unit, 40344 bcm_if_t intf_id, 40345 bcm_l3_stat_t stat, 40346 uint32 num_entries, 40347 uint32 * counter_indexes, 40348 bcm_stat_value_t * counter_values) 40349 { 40350 return bcm_l3_egress_stat_counter_get( 40351 BCM_CONTROL(unit)->unit, 40352 intf_id, 40353 stat, 40354 num_entries, 40355 counter_indexes, 40356 counter_values); 40357 } 40358 40359 int 40360 bcm_loop_l3_egress_stat_counter_set( 40361 int unit, 40362 bcm_if_t intf_id, 40363 bcm_l3_stat_t stat, 40364 uint32 num_entries, 40365 uint32 * counter_indexes, 40366 bcm_stat_value_t * counter_values) 40367 { 40368 return bcm_l3_egress_stat_counter_set( 40369 BCM_CONTROL(unit)->unit, 40370 intf_id, 40371 stat, 40372 num_entries, 40373 counter_indexes, 40374 counter_values); 40375 } 40376 40377 int 40378 bcm_loop_l3_egress_stat_counter_sync_get( 40379 int unit, 40380 bcm_if_t intf_id, 40381 bcm_l3_stat_t stat, 40382 uint32 num_entries, 40383 uint32 * counter_indexes, 40384 bcm_stat_value_t * counter_values) 40385 { 40386 return bcm_l3_egress_stat_counter_sync_get( 40387 BCM_CONTROL(unit)->unit, 40388 intf_id, 40389 stat, 40390 num_entries, 40391 counter_indexes, 40392 counter_values); 40393 } 40394 40395 int 40396 bcm_loop_l3_egress_stat_detach( 40397 int unit, 40398 bcm_if_t intf_id) 40399 { 40400 return bcm_l3_egress_stat_detach( 40401 BCM_CONTROL(unit)->unit, 40402 intf_id); 40403 } 40404 40405 int 40406 bcm_loop_l3_egress_stat_id_get( 40407 int unit, 40408 bcm_if_t intf_id, 40409 bcm_l3_stat_t stat, 40410 uint32 * stat_counter_id) 40411 { 40412 return bcm_l3_egress_stat_id_get( 40413 BCM_CONTROL(unit)->unit, 40414 intf_id, 40415 stat, 40416 stat_counter_id); 40417 } 40418 40419 /* bcm_l3_egress_t_init not dispatchable */ 40420 40421 int 40422 bcm_loop_l3_egress_traverse( 40423 int unit, 40424 bcm_l3_egress_traverse_cb trav_fn, 40425 void * user_data) 40426 { 40427 return bcm_l3_egress_traverse( 40428 BCM_CONTROL(unit)->unit, 40429 trav_fn, 40430 user_data); 40431 } 40432 40433 int 40434 bcm_loop_l3_enable_set( 40435 int unit, 40436 int enable) 40437 { 40438 return bcm_l3_enable_set( 40439 BCM_CONTROL(unit)->unit, 40440 enable); 40441 } 40442 40443 int 40444 bcm_loop_l3_host_add( 40445 int unit, 40446 bcm_l3_host_t * info) 40447 { 40448 return bcm_l3_host_add( 40449 BCM_CONTROL(unit)->unit, 40450 info); 40451 } 40452 40453 int 40454 bcm_loop_l3_host_age( 40455 int unit, 40456 uint32 flags, 40457 bcm_l3_host_traverse_cb age_cb, 40458 void * user_data) 40459 { 40460 return bcm_l3_host_age( 40461 BCM_CONTROL(unit)->unit, 40462 flags, 40463 age_cb, 40464 user_data); 40465 } 40466 40467 int 40468 bcm_loop_l3_host_conflict_get( 40469 int unit, 40470 bcm_l3_key_t * ipkey, 40471 bcm_l3_key_t * cf_array, 40472 int cf_max, 40473 int * cf_count) 40474 { 40475 return bcm_l3_host_conflict_get( 40476 BCM_CONTROL(unit)->unit, 40477 ipkey, 40478 cf_array, 40479 cf_max, 40480 cf_count); 40481 } 40482 40483 int 40484 bcm_loop_l3_host_delete( 40485 int unit, 40486 bcm_l3_host_t * ip_addr) 40487 { 40488 return bcm_l3_host_delete( 40489 BCM_CONTROL(unit)->unit, 40490 ip_addr); 40491 } 40492 40493 int 40494 bcm_loop_l3_host_delete_all( 40495 int unit, 40496 bcm_l3_host_t * info) 40497 { 40498 return bcm_l3_host_delete_all( 40499 BCM_CONTROL(unit)->unit, 40500 info); 40501 } 40502 40503 int 40504 bcm_loop_l3_host_delete_by_interface( 40505 int unit, 40506 bcm_l3_host_t * info) 40507 { 40508 return bcm_l3_host_delete_by_interface( 40509 BCM_CONTROL(unit)->unit, 40510 info); 40511 } 40512 40513 int 40514 bcm_loop_l3_host_delete_by_network( 40515 int unit, 40516 bcm_l3_route_t * ip_addr) 40517 { 40518 return bcm_l3_host_delete_by_network( 40519 BCM_CONTROL(unit)->unit, 40520 ip_addr); 40521 } 40522 40523 int 40524 bcm_loop_l3_host_find( 40525 int unit, 40526 bcm_l3_host_t * info) 40527 { 40528 return bcm_l3_host_find( 40529 BCM_CONTROL(unit)->unit, 40530 info); 40531 } 40532 40533 int 40534 bcm_loop_l3_host_invalidate_entry( 40535 int unit, 40536 bcm_ip_t info) 40537 { 40538 return bcm_l3_host_invalidate_entry( 40539 BCM_CONTROL(unit)->unit, 40540 info); 40541 } 40542 40543 int 40544 bcm_loop_l3_host_stat_attach( 40545 int unit, 40546 bcm_l3_host_t * info, 40547 uint32 stat_counter_id) 40548 { 40549 return bcm_l3_host_stat_attach( 40550 BCM_CONTROL(unit)->unit, 40551 info, 40552 stat_counter_id); 40553 } 40554 40555 int 40556 bcm_loop_l3_host_stat_counter_get( 40557 int unit, 40558 bcm_l3_host_t * info, 40559 bcm_l3_stat_t stat, 40560 uint32 num_entries, 40561 uint32 * counter_indexes, 40562 bcm_stat_value_t * counter_values) 40563 { 40564 return bcm_l3_host_stat_counter_get( 40565 BCM_CONTROL(unit)->unit, 40566 info, 40567 stat, 40568 num_entries, 40569 counter_indexes, 40570 counter_values); 40571 } 40572 40573 int 40574 bcm_loop_l3_host_stat_counter_set( 40575 int unit, 40576 bcm_l3_host_t * info, 40577 bcm_l3_stat_t stat, 40578 uint32 num_entries, 40579 uint32 * counter_indexes, 40580 bcm_stat_value_t * counter_values) 40581 { 40582 return bcm_l3_host_stat_counter_set( 40583 BCM_CONTROL(unit)->unit, 40584 info, 40585 stat, 40586 num_entries, 40587 counter_indexes, 40588 counter_values); 40589 } 40590 40591 int 40592 bcm_loop_l3_host_stat_counter_sync_get( 40593 int unit, 40594 bcm_l3_host_t * info, 40595 bcm_l3_stat_t stat, 40596 uint32 num_entries, 40597 uint32 * counter_indexes, 40598 bcm_stat_value_t * counter_values) 40599 { 40600 return bcm_l3_host_stat_counter_sync_get( 40601 BCM_CONTROL(unit)->unit, 40602 info, 40603 stat, 40604 num_entries, 40605 counter_indexes, 40606 counter_values); 40607 } 40608 40609 int 40610 bcm_loop_l3_host_stat_detach( 40611 int unit, 40612 bcm_l3_host_t * info) 40613 { 40614 return bcm_l3_host_stat_detach( 40615 BCM_CONTROL(unit)->unit, 40616 info); 40617 } 40618 40619 int 40620 bcm_loop_l3_host_stat_id_get( 40621 int unit, 40622 bcm_l3_host_t * info, 40623 bcm_l3_stat_t stat, 40624 uint32 * stat_counter_id) 40625 { 40626 return bcm_l3_host_stat_id_get( 40627 BCM_CONTROL(unit)->unit, 40628 info, 40629 stat, 40630 stat_counter_id); 40631 } 40632 40633 /* bcm_l3_host_t_init not dispatchable */ 40634 40635 int 40636 bcm_loop_l3_host_traverse( 40637 int unit, 40638 uint32 flags, 40639 uint32 start, 40640 uint32 end, 40641 bcm_l3_host_traverse_cb cb, 40642 void * user_data) 40643 { 40644 return bcm_l3_host_traverse( 40645 BCM_CONTROL(unit)->unit, 40646 flags, 40647 start, 40648 end, 40649 cb, 40650 user_data); 40651 } 40652 40653 int 40654 bcm_loop_l3_host_validate_entry( 40655 int unit, 40656 bcm_ip_t info) 40657 { 40658 return bcm_l3_host_validate_entry( 40659 BCM_CONTROL(unit)->unit, 40660 info); 40661 } 40662 40663 int 40664 bcm_loop_l3_info( 40665 int unit, 40666 bcm_l3_info_t * l3info) 40667 { 40668 return bcm_l3_info( 40669 BCM_CONTROL(unit)->unit, 40670 l3info); 40671 } 40672 40673 /* bcm_l3_info_t_init not dispatchable */ 40674 40675 int 40676 bcm_loop_l3_ingress_create( 40677 int unit, 40678 bcm_l3_ingress_t * ing_intf, 40679 bcm_if_t * intf_id) 40680 { 40681 return bcm_l3_ingress_create( 40682 BCM_CONTROL(unit)->unit, 40683 ing_intf, 40684 intf_id); 40685 } 40686 40687 int 40688 bcm_loop_l3_ingress_destroy( 40689 int unit, 40690 bcm_if_t intf_id) 40691 { 40692 return bcm_l3_ingress_destroy( 40693 BCM_CONTROL(unit)->unit, 40694 intf_id); 40695 } 40696 40697 int 40698 bcm_loop_l3_ingress_find( 40699 int unit, 40700 bcm_l3_ingress_t * ing_intf, 40701 bcm_if_t * intf_id) 40702 { 40703 return bcm_l3_ingress_find( 40704 BCM_CONTROL(unit)->unit, 40705 ing_intf, 40706 intf_id); 40707 } 40708 40709 int 40710 bcm_loop_l3_ingress_get( 40711 int unit, 40712 bcm_if_t intf, 40713 bcm_l3_ingress_t * ing_intf) 40714 { 40715 return bcm_l3_ingress_get( 40716 BCM_CONTROL(unit)->unit, 40717 intf, 40718 ing_intf); 40719 } 40720 40721 int 40722 bcm_loop_l3_ingress_stat_attach( 40723 int unit, 40724 bcm_if_t intf_id, 40725 uint32 stat_counter_id) 40726 { 40727 return bcm_l3_ingress_stat_attach( 40728 BCM_CONTROL(unit)->unit, 40729 intf_id, 40730 stat_counter_id); 40731 } 40732 40733 int 40734 bcm_loop_l3_ingress_stat_counter_get( 40735 int unit, 40736 bcm_if_t intf_id, 40737 bcm_l3_stat_t stat, 40738 uint32 num_entries, 40739 uint32 * counter_indexes, 40740 bcm_stat_value_t * counter_values) 40741 { 40742 return bcm_l3_ingress_stat_counter_get( 40743 BCM_CONTROL(unit)->unit, 40744 intf_id, 40745 stat, 40746 num_entries, 40747 counter_indexes, 40748 counter_values); 40749 } 40750 40751 int 40752 bcm_loop_l3_ingress_stat_counter_set( 40753 int unit, 40754 bcm_if_t intf_id, 40755 bcm_l3_stat_t stat, 40756 uint32 num_entries, 40757 uint32 * counter_indexes, 40758 bcm_stat_value_t * counter_values) 40759 { 40760 return bcm_l3_ingress_stat_counter_set( 40761 BCM_CONTROL(unit)->unit, 40762 intf_id, 40763 stat, 40764 num_entries, 40765 counter_indexes, 40766 counter_values); 40767 } 40768 40769 int 40770 bcm_loop_l3_ingress_stat_counter_sync_get( 40771 int unit, 40772 bcm_if_t intf_id, 40773 bcm_l3_stat_t stat, 40774 uint32 num_entries, 40775 uint32 * counter_indexes, 40776 bcm_stat_value_t * counter_values) 40777 { 40778 return bcm_l3_ingress_stat_counter_sync_get( 40779 BCM_CONTROL(unit)->unit, 40780 intf_id, 40781 stat, 40782 num_entries, 40783 counter_indexes, 40784 counter_values); 40785 } 40786 40787 int 40788 bcm_loop_l3_ingress_stat_detach( 40789 int unit, 40790 bcm_if_t intf_id) 40791 { 40792 return bcm_l3_ingress_stat_detach( 40793 BCM_CONTROL(unit)->unit, 40794 intf_id); 40795 } 40796 40797 int 40798 bcm_loop_l3_ingress_stat_id_get( 40799 int unit, 40800 bcm_if_t intf_id, 40801 bcm_l3_stat_t stat, 40802 uint32 * stat_counter_id) 40803 { 40804 return bcm_l3_ingress_stat_id_get( 40805 BCM_CONTROL(unit)->unit, 40806 intf_id, 40807 stat, 40808 stat_counter_id); 40809 } 40810 40811 /* bcm_l3_ingress_t_init not dispatchable */ 40812 40813 int 40814 bcm_loop_l3_ingress_traverse( 40815 int unit, 40816 bcm_l3_ingress_traverse_cb trav_fn, 40817 void * user_data) 40818 { 40819 return bcm_l3_ingress_traverse( 40820 BCM_CONTROL(unit)->unit, 40821 trav_fn, 40822 user_data); 40823 } 40824 40825 int 40826 bcm_loop_l3_init( 40827 int unit) 40828 { 40829 return bcm_l3_init( 40830 BCM_CONTROL(unit)->unit); 40831 } 40832 40833 int 40834 bcm_loop_l3_intf_create( 40835 int unit, 40836 bcm_l3_intf_t * intf) 40837 { 40838 return bcm_l3_intf_create( 40839 BCM_CONTROL(unit)->unit, 40840 intf); 40841 } 40842 40843 int 40844 bcm_loop_l3_intf_delete( 40845 int unit, 40846 bcm_l3_intf_t * intf) 40847 { 40848 return bcm_l3_intf_delete( 40849 BCM_CONTROL(unit)->unit, 40850 intf); 40851 } 40852 40853 int 40854 bcm_loop_l3_intf_delete_all( 40855 int unit) 40856 { 40857 return bcm_l3_intf_delete_all( 40858 BCM_CONTROL(unit)->unit); 40859 } 40860 40861 int 40862 bcm_loop_l3_intf_find( 40863 int unit, 40864 bcm_l3_intf_t * intf) 40865 { 40866 return bcm_l3_intf_find( 40867 BCM_CONTROL(unit)->unit, 40868 intf); 40869 } 40870 40871 int 40872 bcm_loop_l3_intf_find_vlan( 40873 int unit, 40874 bcm_l3_intf_t * intf) 40875 { 40876 return bcm_l3_intf_find_vlan( 40877 BCM_CONTROL(unit)->unit, 40878 intf); 40879 } 40880 40881 int 40882 bcm_loop_l3_intf_get( 40883 int unit, 40884 bcm_l3_intf_t * intf) 40885 { 40886 return bcm_l3_intf_get( 40887 BCM_CONTROL(unit)->unit, 40888 intf); 40889 } 40890 40891 /* bcm_l3_intf_qos_t_init not dispatchable */ 40892 40893 /* bcm_l3_intf_t_init not dispatchable */ 40894 40895 int 40896 bcm_loop_l3_intf_vpn_get( 40897 int unit, 40898 bcm_if_t l3_intf_id, 40899 uint32 * flags, 40900 bcm_vpn_t * vpn) 40901 { 40902 return bcm_l3_intf_vpn_get( 40903 BCM_CONTROL(unit)->unit, 40904 l3_intf_id, 40905 flags, 40906 vpn); 40907 } 40908 40909 int 40910 bcm_loop_l3_intf_vpn_set( 40911 int unit, 40912 bcm_if_t l3_intf_id, 40913 uint32 flags, 40914 bcm_vpn_t vpn) 40915 { 40916 return bcm_l3_intf_vpn_set( 40917 BCM_CONTROL(unit)->unit, 40918 l3_intf_id, 40919 flags, 40920 vpn); 40921 } 40922 40923 int 40924 bcm_loop_l3_ip4_options_action_get( 40925 int unit, 40926 int ip4_options_profile_id, 40927 int ip4_option, 40928 bcm_l3_ip4_options_action_t * action) 40929 { 40930 return bcm_l3_ip4_options_action_get( 40931 BCM_CONTROL(unit)->unit, 40932 ip4_options_profile_id, 40933 ip4_option, 40934 action); 40935 } 40936 40937 int 40938 bcm_loop_l3_ip4_options_action_set( 40939 int unit, 40940 int ip4_options_profile_id, 40941 int ip4_option, 40942 bcm_l3_ip4_options_action_t action) 40943 { 40944 return bcm_l3_ip4_options_action_set( 40945 BCM_CONTROL(unit)->unit, 40946 ip4_options_profile_id, 40947 ip4_option, 40948 action); 40949 } 40950 40951 int 40952 bcm_loop_l3_ip4_options_profile_create( 40953 int unit, 40954 uint32 flags, 40955 bcm_l3_ip4_options_action_t default_action, 40956 int * ip4_options_profile_id) 40957 { 40958 return bcm_l3_ip4_options_profile_create( 40959 BCM_CONTROL(unit)->unit, 40960 flags, 40961 default_action, 40962 ip4_options_profile_id); 40963 } 40964 40965 int 40966 bcm_loop_l3_ip4_options_profile_destroy( 40967 int unit, 40968 int ip4_options_profile_id) 40969 { 40970 return bcm_l3_ip4_options_profile_destroy( 40971 BCM_CONTROL(unit)->unit, 40972 ip4_options_profile_id); 40973 } 40974 40975 int 40976 bcm_loop_l3_ip6_prefix_map_add( 40977 int unit, 40978 bcm_ip6_t ip6_addr) 40979 { 40980 return bcm_l3_ip6_prefix_map_add( 40981 BCM_CONTROL(unit)->unit, 40982 ip6_addr); 40983 } 40984 40985 int 40986 bcm_loop_l3_ip6_prefix_map_delete( 40987 int unit, 40988 bcm_ip6_t ip6_addr) 40989 { 40990 return bcm_l3_ip6_prefix_map_delete( 40991 BCM_CONTROL(unit)->unit, 40992 ip6_addr); 40993 } 40994 40995 int 40996 bcm_loop_l3_ip6_prefix_map_delete_all( 40997 int unit) 40998 { 40999 return bcm_l3_ip6_prefix_map_delete_all( 41000 BCM_CONTROL(unit)->unit); 41001 } 41002 41003 int 41004 bcm_loop_l3_ip6_prefix_map_get( 41005 int unit, 41006 int map_size, 41007 bcm_ip6_t * ip6_array, 41008 int * ip6_count) 41009 { 41010 return bcm_l3_ip6_prefix_map_get( 41011 BCM_CONTROL(unit)->unit, 41012 map_size, 41013 ip6_array, 41014 ip6_count); 41015 } 41016 41017 /* bcm_l3_key_t_init not dispatchable */ 41018 41019 int 41020 bcm_loop_l3_large_nat_egress_add( 41021 int unit, 41022 bcm_l3_large_nat_egress_t * nat_info) 41023 { 41024 return bcm_l3_large_nat_egress_add( 41025 BCM_CONTROL(unit)->unit, 41026 nat_info); 41027 } 41028 41029 int 41030 bcm_loop_l3_large_nat_egress_delete( 41031 int unit, 41032 bcm_l3_large_nat_egress_t * nat_info) 41033 { 41034 return bcm_l3_large_nat_egress_delete( 41035 BCM_CONTROL(unit)->unit, 41036 nat_info); 41037 } 41038 41039 int 41040 bcm_loop_l3_large_nat_egress_get( 41041 int unit, 41042 bcm_l3_large_nat_egress_t * nat_info) 41043 { 41044 return bcm_l3_large_nat_egress_get( 41045 BCM_CONTROL(unit)->unit, 41046 nat_info); 41047 } 41048 41049 /* bcm_l3_large_nat_egress_t_init not dispatchable */ 41050 41051 int 41052 bcm_loop_l3_large_nat_egress_traverse( 41053 int unit, 41054 bcm_l3_large_nat_egress_traverse_cb cb, 41055 void * user_data) 41056 { 41057 return bcm_l3_large_nat_egress_traverse( 41058 BCM_CONTROL(unit)->unit, 41059 cb, 41060 user_data); 41061 } 41062 41063 int 41064 bcm_loop_l3_nat_egress_add( 41065 int unit, 41066 bcm_l3_nat_egress_t * nat_info) 41067 { 41068 return bcm_l3_nat_egress_add( 41069 BCM_CONTROL(unit)->unit, 41070 nat_info); 41071 } 41072 41073 int 41074 bcm_loop_l3_nat_egress_delete( 41075 int unit, 41076 bcm_l3_nat_id_t nat_id) 41077 { 41078 return bcm_l3_nat_egress_delete( 41079 BCM_CONTROL(unit)->unit, 41080 nat_id); 41081 } 41082 41083 int 41084 bcm_loop_l3_nat_egress_get( 41085 int unit, 41086 bcm_l3_nat_egress_t * nat_info) 41087 { 41088 return bcm_l3_nat_egress_get( 41089 BCM_CONTROL(unit)->unit, 41090 nat_info); 41091 } 41092 41093 int 41094 bcm_loop_l3_nat_egress_stat_attach( 41095 int unit, 41096 bcm_l3_nat_egress_t * info, 41097 uint32 stat_counter_id) 41098 { 41099 return bcm_l3_nat_egress_stat_attach( 41100 BCM_CONTROL(unit)->unit, 41101 info, 41102 stat_counter_id); 41103 } 41104 41105 int 41106 bcm_loop_l3_nat_egress_stat_counter_get( 41107 int unit, 41108 bcm_l3_nat_egress_t * info, 41109 bcm_l3_nat_egress_stat_t stat, 41110 uint32 num_entries, 41111 uint32 * counter_indexes, 41112 bcm_stat_value_t * counter_values) 41113 { 41114 return bcm_l3_nat_egress_stat_counter_get( 41115 BCM_CONTROL(unit)->unit, 41116 info, 41117 stat, 41118 num_entries, 41119 counter_indexes, 41120 counter_values); 41121 } 41122 41123 int 41124 bcm_loop_l3_nat_egress_stat_counter_set( 41125 int unit, 41126 bcm_l3_nat_egress_t * info, 41127 bcm_l3_nat_egress_stat_t stat, 41128 uint32 num_entries, 41129 uint32 * counter_indexes, 41130 bcm_stat_value_t * counter_values) 41131 { 41132 return bcm_l3_nat_egress_stat_counter_set( 41133 BCM_CONTROL(unit)->unit, 41134 info, 41135 stat, 41136 num_entries, 41137 counter_indexes, 41138 counter_values); 41139 } 41140 41141 int 41142 bcm_loop_l3_nat_egress_stat_counter_sync_get( 41143 int unit, 41144 bcm_l3_nat_egress_t * info, 41145 bcm_l3_nat_egress_stat_t stat, 41146 uint32 num_entries, 41147 uint32 * counter_indexes, 41148 bcm_stat_value_t * counter_values) 41149 { 41150 return bcm_l3_nat_egress_stat_counter_sync_get( 41151 BCM_CONTROL(unit)->unit, 41152 info, 41153 stat, 41154 num_entries, 41155 counter_indexes, 41156 counter_values); 41157 } 41158 41159 int 41160 bcm_loop_l3_nat_egress_stat_detach( 41161 int unit, 41162 bcm_l3_nat_egress_t * info) 41163 { 41164 return bcm_l3_nat_egress_stat_detach( 41165 BCM_CONTROL(unit)->unit, 41166 info); 41167 } 41168 41169 int 41170 bcm_loop_l3_nat_egress_stat_id_get( 41171 int unit, 41172 bcm_l3_nat_egress_t * info, 41173 bcm_l3_nat_egress_stat_t stat, 41174 uint32 * stat_counter_id) 41175 { 41176 return bcm_l3_nat_egress_stat_id_get( 41177 BCM_CONTROL(unit)->unit, 41178 info, 41179 stat, 41180 stat_counter_id); 41181 } 41182 41183 int 41184 bcm_loop_l3_nat_egress_stat_multi_get( 41185 int unit, 41186 bcm_l3_nat_egress_t * info, 41187 int nstat, 41188 bcm_l3_nat_egress_stat_t * stat_arr, 41189 uint64 * value_arr) 41190 { 41191 return bcm_l3_nat_egress_stat_multi_get( 41192 BCM_CONTROL(unit)->unit, 41193 info, 41194 nstat, 41195 stat_arr, 41196 value_arr); 41197 } 41198 41199 int 41200 bcm_loop_l3_nat_egress_stat_multi_get32( 41201 int unit, 41202 bcm_l3_nat_egress_t * info, 41203 int nstat, 41204 bcm_l3_nat_egress_stat_t * stat_arr, 41205 uint32 * value_arr) 41206 { 41207 return bcm_l3_nat_egress_stat_multi_get32( 41208 BCM_CONTROL(unit)->unit, 41209 info, 41210 nstat, 41211 stat_arr, 41212 value_arr); 41213 } 41214 41215 int 41216 bcm_loop_l3_nat_egress_stat_multi_set( 41217 int unit, 41218 bcm_l3_nat_egress_t * info, 41219 int nstat, 41220 bcm_l3_nat_egress_stat_t * stat_arr, 41221 uint64 * value_arr) 41222 { 41223 return bcm_l3_nat_egress_stat_multi_set( 41224 BCM_CONTROL(unit)->unit, 41225 info, 41226 nstat, 41227 stat_arr, 41228 value_arr); 41229 } 41230 41231 int 41232 bcm_loop_l3_nat_egress_stat_multi_set32( 41233 int unit, 41234 bcm_l3_nat_egress_t * info, 41235 int nstat, 41236 bcm_l3_nat_egress_stat_t * stat_arr, 41237 uint32 * value_arr) 41238 { 41239 return bcm_l3_nat_egress_stat_multi_set32( 41240 BCM_CONTROL(unit)->unit, 41241 info, 41242 nstat, 41243 stat_arr, 41244 value_arr); 41245 } 41246 41247 /* bcm_l3_nat_egress_t_init not dispatchable */ 41248 41249 int 41250 bcm_loop_l3_nat_egress_traverse( 41251 int unit, 41252 uint32 flags, 41253 uint32 start, 41254 uint32 end, 41255 bcm_l3_nat_egress_traverse_cb cb, 41256 void * user_data) 41257 { 41258 return bcm_l3_nat_egress_traverse( 41259 BCM_CONTROL(unit)->unit, 41260 flags, 41261 start, 41262 end, 41263 cb, 41264 user_data); 41265 } 41266 41267 int 41268 bcm_loop_l3_nat_ingress_add( 41269 int unit, 41270 bcm_l3_nat_ingress_t * nat_info) 41271 { 41272 return bcm_l3_nat_ingress_add( 41273 BCM_CONTROL(unit)->unit, 41274 nat_info); 41275 } 41276 41277 int 41278 bcm_loop_l3_nat_ingress_age( 41279 int unit, 41280 uint32 flags, 41281 bcm_l3_nat_ingress_traverse_cb age_cb, 41282 void * user_data) 41283 { 41284 return bcm_l3_nat_ingress_age( 41285 BCM_CONTROL(unit)->unit, 41286 flags, 41287 age_cb, 41288 user_data); 41289 } 41290 41291 int 41292 bcm_loop_l3_nat_ingress_delete( 41293 int unit, 41294 bcm_l3_nat_ingress_t * nat_info) 41295 { 41296 return bcm_l3_nat_ingress_delete( 41297 BCM_CONTROL(unit)->unit, 41298 nat_info); 41299 } 41300 41301 int 41302 bcm_loop_l3_nat_ingress_delete_all( 41303 int unit, 41304 bcm_l3_nat_ingress_t * nat_info) 41305 { 41306 return bcm_l3_nat_ingress_delete_all( 41307 BCM_CONTROL(unit)->unit, 41308 nat_info); 41309 } 41310 41311 int 41312 bcm_loop_l3_nat_ingress_find( 41313 int unit, 41314 bcm_l3_nat_ingress_t * nat_info) 41315 { 41316 return bcm_l3_nat_ingress_find( 41317 BCM_CONTROL(unit)->unit, 41318 nat_info); 41319 } 41320 41321 /* bcm_l3_nat_ingress_t_init not dispatchable */ 41322 41323 int 41324 bcm_loop_l3_nat_ingress_traverse( 41325 int unit, 41326 uint32 flags, 41327 uint32 start, 41328 uint32 end, 41329 bcm_l3_nat_ingress_traverse_cb cb, 41330 void * user_data) 41331 { 41332 return bcm_l3_nat_ingress_traverse( 41333 BCM_CONTROL(unit)->unit, 41334 flags, 41335 start, 41336 end, 41337 cb, 41338 user_data); 41339 } 41340 41341 int 41342 bcm_loop_l3_route_add( 41343 int unit, 41344 bcm_l3_route_t * info) 41345 { 41346 return bcm_l3_route_add( 41347 BCM_CONTROL(unit)->unit, 41348 info); 41349 } 41350 41351 int 41352 bcm_loop_l3_route_age( 41353 int unit, 41354 uint32 flags, 41355 bcm_l3_route_traverse_cb age_out, 41356 void * user_data) 41357 { 41358 return bcm_l3_route_age( 41359 BCM_CONTROL(unit)->unit, 41360 flags, 41361 age_out, 41362 user_data); 41363 } 41364 41365 int 41366 bcm_loop_l3_route_delete( 41367 int unit, 41368 bcm_l3_route_t * info) 41369 { 41370 return bcm_l3_route_delete( 41371 BCM_CONTROL(unit)->unit, 41372 info); 41373 } 41374 41375 int 41376 bcm_loop_l3_route_delete_all( 41377 int unit, 41378 bcm_l3_route_t * info) 41379 { 41380 return bcm_l3_route_delete_all( 41381 BCM_CONTROL(unit)->unit, 41382 info); 41383 } 41384 41385 int 41386 bcm_loop_l3_route_delete_by_interface( 41387 int unit, 41388 bcm_l3_route_t * info) 41389 { 41390 return bcm_l3_route_delete_by_interface( 41391 BCM_CONTROL(unit)->unit, 41392 info); 41393 } 41394 41395 int 41396 bcm_loop_l3_route_find( 41397 int unit, 41398 bcm_l3_host_t * host, 41399 bcm_l3_route_t * route) 41400 { 41401 return bcm_l3_route_find( 41402 BCM_CONTROL(unit)->unit, 41403 host, 41404 route); 41405 } 41406 41407 int 41408 bcm_loop_l3_route_get( 41409 int unit, 41410 bcm_l3_route_t * info) 41411 { 41412 return bcm_l3_route_get( 41413 BCM_CONTROL(unit)->unit, 41414 info); 41415 } 41416 41417 int 41418 bcm_loop_l3_route_max_ecmp_get( 41419 int unit, 41420 int * max) 41421 { 41422 return bcm_l3_route_max_ecmp_get( 41423 BCM_CONTROL(unit)->unit, 41424 max); 41425 } 41426 41427 int 41428 bcm_loop_l3_route_max_ecmp_set( 41429 int unit, 41430 int max) 41431 { 41432 return bcm_l3_route_max_ecmp_set( 41433 BCM_CONTROL(unit)->unit, 41434 max); 41435 } 41436 41437 int 41438 bcm_loop_l3_route_multipath_get( 41439 int unit, 41440 bcm_l3_route_t * the_route, 41441 bcm_l3_route_t * path_array, 41442 int max_path, 41443 int * path_count) 41444 { 41445 return bcm_l3_route_multipath_get( 41446 BCM_CONTROL(unit)->unit, 41447 the_route, 41448 path_array, 41449 max_path, 41450 path_count); 41451 } 41452 41453 int 41454 bcm_loop_l3_route_stat_attach( 41455 int unit, 41456 bcm_l3_route_t * info, 41457 uint32 stat_counter_id) 41458 { 41459 return bcm_l3_route_stat_attach( 41460 BCM_CONTROL(unit)->unit, 41461 info, 41462 stat_counter_id); 41463 } 41464 41465 int 41466 bcm_loop_l3_route_stat_counter_get( 41467 int unit, 41468 bcm_l3_route_t * info, 41469 bcm_l3_route_stat_t stat, 41470 uint32 num_entries, 41471 uint32 * counter_indexes, 41472 bcm_stat_value_t * counter_values) 41473 { 41474 return bcm_l3_route_stat_counter_get( 41475 BCM_CONTROL(unit)->unit, 41476 info, 41477 stat, 41478 num_entries, 41479 counter_indexes, 41480 counter_values); 41481 } 41482 41483 int 41484 bcm_loop_l3_route_stat_counter_set( 41485 int unit, 41486 bcm_l3_route_t * info, 41487 bcm_l3_route_stat_t stat, 41488 uint32 num_entries, 41489 uint32 * counter_indexes, 41490 bcm_stat_value_t * counter_values) 41491 { 41492 return bcm_l3_route_stat_counter_set( 41493 BCM_CONTROL(unit)->unit, 41494 info, 41495 stat, 41496 num_entries, 41497 counter_indexes, 41498 counter_values); 41499 } 41500 41501 int 41502 bcm_loop_l3_route_stat_counter_sync_get( 41503 int unit, 41504 bcm_l3_route_t * info, 41505 bcm_l3_route_stat_t stat, 41506 uint32 num_entries, 41507 uint32 * counter_indexes, 41508 bcm_stat_value_t * counter_values) 41509 { 41510 return bcm_l3_route_stat_counter_sync_get( 41511 BCM_CONTROL(unit)->unit, 41512 info, 41513 stat, 41514 num_entries, 41515 counter_indexes, 41516 counter_values); 41517 } 41518 41519 int 41520 bcm_loop_l3_route_stat_detach( 41521 int unit, 41522 bcm_l3_route_t * info) 41523 { 41524 return bcm_l3_route_stat_detach( 41525 BCM_CONTROL(unit)->unit, 41526 info); 41527 } 41528 41529 int 41530 bcm_loop_l3_route_stat_enable_set( 41531 int unit, 41532 bcm_l3_route_t * route, 41533 int enable) 41534 { 41535 return bcm_l3_route_stat_enable_set( 41536 BCM_CONTROL(unit)->unit, 41537 route, 41538 enable); 41539 } 41540 41541 int 41542 bcm_loop_l3_route_stat_get( 41543 int unit, 41544 bcm_l3_route_t * route, 41545 bcm_l3_stat_t stat, 41546 uint64 * val) 41547 { 41548 return bcm_l3_route_stat_get( 41549 BCM_CONTROL(unit)->unit, 41550 route, 41551 stat, 41552 val); 41553 } 41554 41555 int 41556 bcm_loop_l3_route_stat_get32( 41557 int unit, 41558 bcm_l3_route_t * route, 41559 bcm_l3_stat_t stat, 41560 uint32 * val) 41561 { 41562 return bcm_l3_route_stat_get32( 41563 BCM_CONTROL(unit)->unit, 41564 route, 41565 stat, 41566 val); 41567 } 41568 41569 int 41570 bcm_loop_l3_route_stat_id_get( 41571 int unit, 41572 bcm_l3_route_t * info, 41573 bcm_l3_route_stat_t stat, 41574 uint32 * stat_counter_id) 41575 { 41576 return bcm_l3_route_stat_id_get( 41577 BCM_CONTROL(unit)->unit, 41578 info, 41579 stat, 41580 stat_counter_id); 41581 } 41582 41583 int 41584 bcm_loop_l3_route_stat_multi_get( 41585 int unit, 41586 bcm_l3_route_t * info, 41587 int nstat, 41588 bcm_l3_route_stat_t * stat_arr, 41589 uint64 * value_arr) 41590 { 41591 return bcm_l3_route_stat_multi_get( 41592 BCM_CONTROL(unit)->unit, 41593 info, 41594 nstat, 41595 stat_arr, 41596 value_arr); 41597 } 41598 41599 int 41600 bcm_loop_l3_route_stat_multi_get32( 41601 int unit, 41602 bcm_l3_route_t * info, 41603 int nstat, 41604 bcm_l3_route_stat_t * stat_arr, 41605 uint32 * value_arr) 41606 { 41607 return bcm_l3_route_stat_multi_get32( 41608 BCM_CONTROL(unit)->unit, 41609 info, 41610 nstat, 41611 stat_arr, 41612 value_arr); 41613 } 41614 41615 int 41616 bcm_loop_l3_route_stat_multi_set( 41617 int unit, 41618 bcm_l3_route_t * info, 41619 int nstat, 41620 bcm_l3_route_stat_t * stat_arr, 41621 uint64 * value_arr) 41622 { 41623 return bcm_l3_route_stat_multi_set( 41624 BCM_CONTROL(unit)->unit, 41625 info, 41626 nstat, 41627 stat_arr, 41628 value_arr); 41629 } 41630 41631 int 41632 bcm_loop_l3_route_stat_multi_set32( 41633 int unit, 41634 bcm_l3_route_t * info, 41635 int nstat, 41636 bcm_l3_route_stat_t * stat_arr, 41637 uint32 * value_arr) 41638 { 41639 return bcm_l3_route_stat_multi_set32( 41640 BCM_CONTROL(unit)->unit, 41641 info, 41642 nstat, 41643 stat_arr, 41644 value_arr); 41645 } 41646 41647 int 41648 bcm_loop_l3_route_stat_set( 41649 int unit, 41650 bcm_l3_route_t * route, 41651 bcm_l3_stat_t stat, 41652 uint64 val) 41653 { 41654 return bcm_l3_route_stat_set( 41655 BCM_CONTROL(unit)->unit, 41656 route, 41657 stat, 41658 val); 41659 } 41660 41661 int 41662 bcm_loop_l3_route_stat_set32( 41663 int unit, 41664 bcm_l3_route_t * route, 41665 bcm_l3_stat_t stat, 41666 uint32 val) 41667 { 41668 return bcm_l3_route_stat_set32( 41669 BCM_CONTROL(unit)->unit, 41670 route, 41671 stat, 41672 val); 41673 } 41674 41675 /* bcm_l3_route_t_init not dispatchable */ 41676 41677 int 41678 bcm_loop_l3_route_traverse( 41679 int unit, 41680 uint32 flags, 41681 uint32 start, 41682 uint32 end, 41683 bcm_l3_route_traverse_cb trav_fn, 41684 void * user_data) 41685 { 41686 return bcm_l3_route_traverse( 41687 BCM_CONTROL(unit)->unit, 41688 flags, 41689 start, 41690 end, 41691 trav_fn, 41692 user_data); 41693 } 41694 41695 int 41696 bcm_loop_l3_source_bind_add( 41697 int unit, 41698 bcm_l3_source_bind_t * info) 41699 { 41700 return bcm_l3_source_bind_add( 41701 BCM_CONTROL(unit)->unit, 41702 info); 41703 } 41704 41705 int 41706 bcm_loop_l3_source_bind_delete( 41707 int unit, 41708 bcm_l3_source_bind_t * info) 41709 { 41710 return bcm_l3_source_bind_delete( 41711 BCM_CONTROL(unit)->unit, 41712 info); 41713 } 41714 41715 int 41716 bcm_loop_l3_source_bind_delete_all( 41717 int unit) 41718 { 41719 return bcm_l3_source_bind_delete_all( 41720 BCM_CONTROL(unit)->unit); 41721 } 41722 41723 int 41724 bcm_loop_l3_source_bind_enable_get( 41725 int unit, 41726 bcm_port_t port, 41727 int * enable) 41728 { 41729 return bcm_l3_source_bind_enable_get( 41730 BCM_CONTROL(unit)->unit, 41731 port, 41732 enable); 41733 } 41734 41735 int 41736 bcm_loop_l3_source_bind_enable_set( 41737 int unit, 41738 bcm_port_t port, 41739 int enable) 41740 { 41741 return bcm_l3_source_bind_enable_set( 41742 BCM_CONTROL(unit)->unit, 41743 port, 41744 enable); 41745 } 41746 41747 int 41748 bcm_loop_l3_source_bind_get( 41749 int unit, 41750 bcm_l3_source_bind_t * info) 41751 { 41752 return bcm_l3_source_bind_get( 41753 BCM_CONTROL(unit)->unit, 41754 info); 41755 } 41756 41757 /* bcm_l3_source_bind_t_init not dispatchable */ 41758 41759 int 41760 bcm_loop_l3_source_bind_traverse( 41761 int unit, 41762 bcm_l3_source_bind_traverse_cb cb, 41763 void * user_data) 41764 { 41765 return bcm_l3_source_bind_traverse( 41766 BCM_CONTROL(unit)->unit, 41767 cb, 41768 user_data); 41769 } 41770 41771 int 41772 bcm_loop_l3_subnet_route_find( 41773 int unit, 41774 bcm_l3_route_t * input, 41775 bcm_l3_route_t * route) 41776 { 41777 return bcm_l3_subnet_route_find( 41778 BCM_CONTROL(unit)->unit, 41779 input, 41780 route); 41781 } 41782 41783 int 41784 bcm_loop_l3_vpbr_entry_add( 41785 int unit, 41786 bcm_l3_vpbr_entry_t * entry) 41787 { 41788 return bcm_l3_vpbr_entry_add( 41789 BCM_CONTROL(unit)->unit, 41790 entry); 41791 } 41792 41793 int 41794 bcm_loop_l3_vpbr_entry_delete( 41795 int unit, 41796 bcm_l3_vpbr_entry_t * entry) 41797 { 41798 return bcm_l3_vpbr_entry_delete( 41799 BCM_CONTROL(unit)->unit, 41800 entry); 41801 } 41802 41803 int 41804 bcm_loop_l3_vpbr_entry_delete_all( 41805 int unit, 41806 bcm_l3_vpbr_entry_t * entry) 41807 { 41808 return bcm_l3_vpbr_entry_delete_all( 41809 BCM_CONTROL(unit)->unit, 41810 entry); 41811 } 41812 41813 int 41814 bcm_loop_l3_vpbr_entry_get( 41815 int unit, 41816 bcm_l3_vpbr_entry_t * entry) 41817 { 41818 return bcm_l3_vpbr_entry_get( 41819 BCM_CONTROL(unit)->unit, 41820 entry); 41821 } 41822 41823 /* bcm_l3_vpbr_entry_t_init not dispatchable */ 41824 41825 int 41826 bcm_loop_l3_vpbr_traverse( 41827 int unit, 41828 uint32 flags, 41829 bcm_l3_vpbr_traverse_cb cb, 41830 void * user_data) 41831 { 41832 return bcm_l3_vpbr_traverse( 41833 BCM_CONTROL(unit)->unit, 41834 flags, 41835 cb, 41836 user_data); 41837 } 41838 41839 int 41840 bcm_loop_l3_vrf_route_data_mode_get( 41841 int unit, 41842 bcm_vrf_t vrf, 41843 uint32 flags, 41844 bcm_l3_vrf_route_data_mode_t * mode) 41845 { 41846 return bcm_l3_vrf_route_data_mode_get( 41847 BCM_CONTROL(unit)->unit, 41848 vrf, 41849 flags, 41850 mode); 41851 } 41852 41853 int 41854 bcm_loop_l3_vrf_route_data_mode_set( 41855 int unit, 41856 bcm_vrf_t vrf, 41857 uint32 flags, 41858 bcm_l3_vrf_route_data_mode_t mode) 41859 { 41860 return bcm_l3_vrf_route_data_mode_set( 41861 BCM_CONTROL(unit)->unit, 41862 vrf, 41863 flags, 41864 mode); 41865 } 41866 41867 int 41868 bcm_loop_l3_vrf_stat_attach( 41869 int unit, 41870 bcm_vrf_t vrf, 41871 uint32 stat_counter_id) 41872 { 41873 return bcm_l3_vrf_stat_attach( 41874 BCM_CONTROL(unit)->unit, 41875 vrf, 41876 stat_counter_id); 41877 } 41878 41879 int 41880 bcm_loop_l3_vrf_stat_counter_get( 41881 int unit, 41882 bcm_vrf_t vrf, 41883 bcm_l3_vrf_stat_t stat, 41884 uint32 num_entries, 41885 uint32 * counter_indexes, 41886 bcm_stat_value_t * counter_values) 41887 { 41888 return bcm_l3_vrf_stat_counter_get( 41889 BCM_CONTROL(unit)->unit, 41890 vrf, 41891 stat, 41892 num_entries, 41893 counter_indexes, 41894 counter_values); 41895 } 41896 41897 int 41898 bcm_loop_l3_vrf_stat_counter_set( 41899 int unit, 41900 bcm_vrf_t vrf, 41901 bcm_l3_vrf_stat_t stat, 41902 uint32 num_entries, 41903 uint32 * counter_indexes, 41904 bcm_stat_value_t * counter_values) 41905 { 41906 return bcm_l3_vrf_stat_counter_set( 41907 BCM_CONTROL(unit)->unit, 41908 vrf, 41909 stat, 41910 num_entries, 41911 counter_indexes, 41912 counter_values); 41913 } 41914 41915 int 41916 bcm_loop_l3_vrf_stat_counter_sync_get( 41917 int unit, 41918 bcm_vrf_t vrf, 41919 bcm_l3_vrf_stat_t stat, 41920 uint32 num_entries, 41921 uint32 * counter_indexes, 41922 bcm_stat_value_t * counter_values) 41923 { 41924 return bcm_l3_vrf_stat_counter_sync_get( 41925 BCM_CONTROL(unit)->unit, 41926 vrf, 41927 stat, 41928 num_entries, 41929 counter_indexes, 41930 counter_values); 41931 } 41932 41933 int 41934 bcm_loop_l3_vrf_stat_detach( 41935 int unit, 41936 bcm_vrf_t vrf) 41937 { 41938 return bcm_l3_vrf_stat_detach( 41939 BCM_CONTROL(unit)->unit, 41940 vrf); 41941 } 41942 41943 int 41944 bcm_loop_l3_vrf_stat_enable_set( 41945 int unit, 41946 bcm_vrf_t vrf, 41947 int enable) 41948 { 41949 return bcm_l3_vrf_stat_enable_set( 41950 BCM_CONTROL(unit)->unit, 41951 vrf, 41952 enable); 41953 } 41954 41955 int 41956 bcm_loop_l3_vrf_stat_get( 41957 int unit, 41958 bcm_vrf_t vrf, 41959 bcm_l3_vrf_stat_t stat, 41960 uint64 * val) 41961 { 41962 return bcm_l3_vrf_stat_get( 41963 BCM_CONTROL(unit)->unit, 41964 vrf, 41965 stat, 41966 val); 41967 } 41968 41969 int 41970 bcm_loop_l3_vrf_stat_get32( 41971 int unit, 41972 bcm_vrf_t vrf, 41973 bcm_l3_vrf_stat_t stat, 41974 uint32 * val) 41975 { 41976 return bcm_l3_vrf_stat_get32( 41977 BCM_CONTROL(unit)->unit, 41978 vrf, 41979 stat, 41980 val); 41981 } 41982 41983 int 41984 bcm_loop_l3_vrf_stat_id_get( 41985 int unit, 41986 bcm_vrf_t vrf, 41987 bcm_l3_vrf_stat_t stat, 41988 uint32 * stat_counter_id) 41989 { 41990 return bcm_l3_vrf_stat_id_get( 41991 BCM_CONTROL(unit)->unit, 41992 vrf, 41993 stat, 41994 stat_counter_id); 41995 } 41996 41997 int 41998 bcm_loop_l3_vrf_stat_multi_get( 41999 int unit, 42000 bcm_vrf_t vrf, 42001 int nstat, 42002 bcm_l3_vrf_stat_t * stat_arr, 42003 uint64 * value_arr) 42004 { 42005 return bcm_l3_vrf_stat_multi_get( 42006 BCM_CONTROL(unit)->unit, 42007 vrf, 42008 nstat, 42009 stat_arr, 42010 value_arr); 42011 } 42012 42013 int 42014 bcm_loop_l3_vrf_stat_multi_get32( 42015 int unit, 42016 bcm_vrf_t vrf, 42017 int nstat, 42018 bcm_l3_vrf_stat_t * stat_arr, 42019 uint32 * value_arr) 42020 { 42021 return bcm_l3_vrf_stat_multi_get32( 42022 BCM_CONTROL(unit)->unit, 42023 vrf, 42024 nstat, 42025 stat_arr, 42026 value_arr); 42027 } 42028 42029 int 42030 bcm_loop_l3_vrf_stat_multi_set( 42031 int unit, 42032 bcm_vrf_t vrf, 42033 int nstat, 42034 bcm_l3_vrf_stat_t * stat_arr, 42035 uint64 * value_arr) 42036 { 42037 return bcm_l3_vrf_stat_multi_set( 42038 BCM_CONTROL(unit)->unit, 42039 vrf, 42040 nstat, 42041 stat_arr, 42042 value_arr); 42043 } 42044 42045 int 42046 bcm_loop_l3_vrf_stat_multi_set32( 42047 int unit, 42048 bcm_vrf_t vrf, 42049 int nstat, 42050 bcm_l3_vrf_stat_t * stat_arr, 42051 uint32 * value_arr) 42052 { 42053 return bcm_l3_vrf_stat_multi_set32( 42054 BCM_CONTROL(unit)->unit, 42055 vrf, 42056 nstat, 42057 stat_arr, 42058 value_arr); 42059 } 42060 42061 int 42062 bcm_loop_l3_vrf_stat_set( 42063 int unit, 42064 bcm_vrf_t vrf, 42065 bcm_l3_vrf_stat_t stat, 42066 uint64 val) 42067 { 42068 return bcm_l3_vrf_stat_set( 42069 BCM_CONTROL(unit)->unit, 42070 vrf, 42071 stat, 42072 val); 42073 } 42074 42075 int 42076 bcm_loop_l3_vrf_stat_set32( 42077 int unit, 42078 bcm_vrf_t vrf, 42079 bcm_l3_vrf_stat_t stat, 42080 uint32 val) 42081 { 42082 return bcm_l3_vrf_stat_set32( 42083 BCM_CONTROL(unit)->unit, 42084 vrf, 42085 stat, 42086 val); 42087 } 42088 42089 int 42090 bcm_loop_l3_vrf_stat_sync_get( 42091 int unit, 42092 bcm_vrf_t vrf, 42093 bcm_l3_vrf_stat_t stat, 42094 uint64 * val) 42095 { 42096 return bcm_l3_vrf_stat_sync_get( 42097 BCM_CONTROL(unit)->unit, 42098 vrf, 42099 stat, 42100 val); 42101 } 42102 42103 int 42104 bcm_loop_l3_vrf_stat_sync_get32( 42105 int unit, 42106 bcm_vrf_t vrf, 42107 bcm_l3_vrf_stat_t stat, 42108 uint32 * val) 42109 { 42110 return bcm_l3_vrf_stat_sync_get32( 42111 BCM_CONTROL(unit)->unit, 42112 vrf, 42113 stat, 42114 val); 42115 } 42116 42117 int 42118 bcm_loop_l3_vrrp_add( 42119 int unit, 42120 bcm_vlan_t vlan, 42121 uint32 vrid) 42122 { 42123 return bcm_l3_vrrp_add( 42124 BCM_CONTROL(unit)->unit, 42125 vlan, 42126 vrid); 42127 } 42128 42129 int 42130 bcm_loop_l3_vrrp_config_add( 42131 int unit, 42132 uint32 flags, 42133 bcm_vlan_t vlan, 42134 uint32 vrid) 42135 { 42136 return bcm_l3_vrrp_config_add( 42137 BCM_CONTROL(unit)->unit, 42138 flags, 42139 vlan, 42140 vrid); 42141 } 42142 42143 int 42144 bcm_loop_l3_vrrp_config_delete( 42145 int unit, 42146 uint32 flags, 42147 bcm_vlan_t vlan, 42148 uint32 vrid) 42149 { 42150 return bcm_l3_vrrp_config_delete( 42151 BCM_CONTROL(unit)->unit, 42152 flags, 42153 vlan, 42154 vrid); 42155 } 42156 42157 int 42158 bcm_loop_l3_vrrp_config_delete_all( 42159 int unit, 42160 uint32 flags, 42161 bcm_vlan_t vlan) 42162 { 42163 return bcm_l3_vrrp_config_delete_all( 42164 BCM_CONTROL(unit)->unit, 42165 flags, 42166 vlan); 42167 } 42168 42169 int 42170 bcm_loop_l3_vrrp_config_get( 42171 int unit, 42172 uint32 flags, 42173 bcm_vlan_t vlan, 42174 uint32 alloc_size, 42175 uint32 * vrid_array, 42176 uint32 * count) 42177 { 42178 return bcm_l3_vrrp_config_get( 42179 BCM_CONTROL(unit)->unit, 42180 flags, 42181 vlan, 42182 alloc_size, 42183 vrid_array, 42184 count); 42185 } 42186 42187 int 42188 bcm_loop_l3_vrrp_delete( 42189 int unit, 42190 bcm_vlan_t vlan, 42191 uint32 vrid) 42192 { 42193 return bcm_l3_vrrp_delete( 42194 BCM_CONTROL(unit)->unit, 42195 vlan, 42196 vrid); 42197 } 42198 42199 int 42200 bcm_loop_l3_vrrp_delete_all( 42201 int unit, 42202 bcm_vlan_t vlan) 42203 { 42204 return bcm_l3_vrrp_delete_all( 42205 BCM_CONTROL(unit)->unit, 42206 vlan); 42207 } 42208 42209 int 42210 bcm_loop_l3_vrrp_get( 42211 int unit, 42212 bcm_vlan_t vlan, 42213 int alloc_size, 42214 int * vrid_array, 42215 int * count) 42216 { 42217 return bcm_l3_vrrp_get( 42218 BCM_CONTROL(unit)->unit, 42219 vlan, 42220 alloc_size, 42221 vrid_array, 42222 count); 42223 } 42224 42225 #endif /* INCLUDE_L3 */ 42226 42227 int 42228 bcm_loop_latency_monitor_config_get( 42229 int unit, 42230 uint8 monitor_id, 42231 bcm_latency_monitor_config_t * config) 42232 { 42233 return bcm_latency_monitor_config_get( 42234 BCM_CONTROL(unit)->unit, 42235 monitor_id, 42236 config); 42237 } 42238 42239 int 42240 bcm_loop_latency_monitor_config_set( 42241 int unit, 42242 uint8 monitor_id, 42243 bcm_latency_monitor_config_t * config) 42244 { 42245 return bcm_latency_monitor_config_set( 42246 BCM_CONTROL(unit)->unit, 42247 monitor_id, 42248 config); 42249 } 42250 42251 /* bcm_latency_monitor_config_t_init not dispatchable */ 42252 42253 int 42254 bcm_loop_latency_monitor_cosq_config_get( 42255 int unit, 42256 uint8 monitor_id, 42257 uint8 cosq, 42258 bcm_latency_monitor_cosq_info_t * cosq_info) 42259 { 42260 return bcm_latency_monitor_cosq_config_get( 42261 BCM_CONTROL(unit)->unit, 42262 monitor_id, 42263 cosq, 42264 cosq_info); 42265 } 42266 42267 int 42268 bcm_loop_latency_monitor_cosq_config_set( 42269 int unit, 42270 uint8 monitor_id, 42271 uint8 cosq, 42272 bcm_latency_monitor_cosq_info_t cosq_info) 42273 { 42274 return bcm_latency_monitor_cosq_config_set( 42275 BCM_CONTROL(unit)->unit, 42276 monitor_id, 42277 cosq, 42278 cosq_info); 42279 } 42280 42281 /* bcm_latency_monitor_cosq_info_t_init not dispatchable */ 42282 42283 int 42284 bcm_loop_latency_monitor_destroy( 42285 int unit, 42286 uint8 monitor_id) 42287 { 42288 return bcm_latency_monitor_destroy( 42289 BCM_CONTROL(unit)->unit, 42290 monitor_id); 42291 } 42292 42293 int 42294 bcm_loop_latency_monitor_detach( 42295 int unit) 42296 { 42297 return bcm_latency_monitor_detach( 42298 BCM_CONTROL(unit)->unit); 42299 } 42300 42301 int 42302 bcm_loop_latency_monitor_enable( 42303 int unit, 42304 uint8 monitor_id, 42305 uint8 enable) 42306 { 42307 return bcm_latency_monitor_enable( 42308 BCM_CONTROL(unit)->unit, 42309 monitor_id, 42310 enable); 42311 } 42312 42313 int 42314 bcm_loop_latency_monitor_histogram_get( 42315 int unit, 42316 uint8 monitor_id, 42317 uint8 cosq, 42318 uint8 byte_counter_flag, 42319 bcm_latency_monitor_histogram_t * histogram) 42320 { 42321 return bcm_latency_monitor_histogram_get( 42322 BCM_CONTROL(unit)->unit, 42323 monitor_id, 42324 cosq, 42325 byte_counter_flag, 42326 histogram); 42327 } 42328 42329 /* bcm_latency_monitor_histogram_t_init not dispatchable */ 42330 42331 int 42332 bcm_loop_latency_monitor_info_get( 42333 int unit, 42334 uint8 monitor_id, 42335 bcm_latency_monitor_info_t * monitor_info) 42336 { 42337 return bcm_latency_monitor_info_get( 42338 BCM_CONTROL(unit)->unit, 42339 monitor_id, 42340 monitor_info); 42341 } 42342 42343 /* bcm_latency_monitor_info_t_init not dispatchable */ 42344 42345 int 42346 bcm_loop_latency_monitor_init( 42347 int unit) 42348 { 42349 return bcm_latency_monitor_init( 42350 BCM_CONTROL(unit)->unit); 42351 } 42352 42353 int 42354 bcm_loop_latency_monitor_latency_limit_table_get( 42355 int unit, 42356 uint8 table_size, 42357 uint32 * latency_limit_table) 42358 { 42359 return bcm_latency_monitor_latency_limit_table_get( 42360 BCM_CONTROL(unit)->unit, 42361 table_size, 42362 latency_limit_table); 42363 } 42364 42365 int 42366 bcm_loop_latency_monitor_latency_limit_table_set( 42367 int unit, 42368 uint8 table_size, 42369 uint32 * latency_limit_table) 42370 { 42371 return bcm_latency_monitor_latency_limit_table_set( 42372 BCM_CONTROL(unit)->unit, 42373 table_size, 42374 latency_limit_table); 42375 } 42376 42377 int 42378 bcm_loop_lb_control_get( 42379 int unit, 42380 bcm_lbg_t lbg_id, 42381 bcm_lb_direction_type_t direction, 42382 uint32 flags, 42383 bcm_lb_control_t lb_control, 42384 int * arg) 42385 { 42386 return bcm_lb_control_get( 42387 BCM_CONTROL(unit)->unit, 42388 lbg_id, 42389 direction, 42390 flags, 42391 lb_control, 42392 arg); 42393 } 42394 42395 int 42396 bcm_loop_lb_control_set( 42397 int unit, 42398 bcm_lbg_t lbg_id, 42399 bcm_lb_direction_type_t direction, 42400 uint32 flags, 42401 bcm_lb_control_t lb_control, 42402 int arg) 42403 { 42404 return bcm_lb_control_set( 42405 BCM_CONTROL(unit)->unit, 42406 lbg_id, 42407 direction, 42408 flags, 42409 lb_control, 42410 arg); 42411 } 42412 42413 int 42414 bcm_loop_lb_enable_get( 42415 int unit, 42416 bcm_lbg_t lbg_id, 42417 uint32 flags, 42418 uint32 * enable) 42419 { 42420 return bcm_lb_enable_get( 42421 BCM_CONTROL(unit)->unit, 42422 lbg_id, 42423 flags, 42424 enable); 42425 } 42426 42427 int 42428 bcm_loop_lb_enable_set( 42429 int unit, 42430 bcm_lbg_t lbg_id, 42431 uint32 flags, 42432 uint32 enable) 42433 { 42434 return bcm_lb_enable_set( 42435 BCM_CONTROL(unit)->unit, 42436 lbg_id, 42437 flags, 42438 enable); 42439 } 42440 42441 int 42442 bcm_loop_lb_flush_configure_get( 42443 int unit, 42444 bcm_lbg_t lbg_id, 42445 uint32 flags, 42446 bcm_lb_flush_type_t type, 42447 int * arg) 42448 { 42449 return bcm_lb_flush_configure_get( 42450 BCM_CONTROL(unit)->unit, 42451 lbg_id, 42452 flags, 42453 type, 42454 arg); 42455 } 42456 42457 int 42458 bcm_loop_lb_flush_configure_set( 42459 int unit, 42460 bcm_lbg_t lbg_id, 42461 uint32 flags, 42462 bcm_lb_flush_type_t type, 42463 int arg) 42464 { 42465 return bcm_lb_flush_configure_set( 42466 BCM_CONTROL(unit)->unit, 42467 lbg_id, 42468 flags, 42469 type, 42470 arg); 42471 } 42472 42473 /* bcm_lb_lbg_weight_t_init not dispatchable */ 42474 42475 int 42476 bcm_loop_lb_modem_control_get( 42477 int unit, 42478 bcm_modem_t modem_id, 42479 bcm_lb_direction_type_t direction, 42480 uint32 flags, 42481 bcm_lb_modem_control_t modem_control, 42482 int * arg) 42483 { 42484 return bcm_lb_modem_control_get( 42485 BCM_CONTROL(unit)->unit, 42486 modem_id, 42487 direction, 42488 flags, 42489 modem_control, 42490 arg); 42491 } 42492 42493 int 42494 bcm_loop_lb_modem_control_set( 42495 int unit, 42496 bcm_modem_t modem_id, 42497 bcm_lb_direction_type_t direction, 42498 uint32 flags, 42499 bcm_lb_modem_control_t modem_control, 42500 int arg) 42501 { 42502 return bcm_lb_modem_control_set( 42503 BCM_CONTROL(unit)->unit, 42504 modem_id, 42505 direction, 42506 flags, 42507 modem_control, 42508 arg); 42509 } 42510 42511 int 42512 bcm_loop_lb_modem_packet_config_get( 42513 int unit, 42514 bcm_modem_t modem_id, 42515 uint32 flags, 42516 bcm_lb_modem_packet_config_t * packet_config) 42517 { 42518 return bcm_lb_modem_packet_config_get( 42519 BCM_CONTROL(unit)->unit, 42520 modem_id, 42521 flags, 42522 packet_config); 42523 } 42524 42525 int 42526 bcm_loop_lb_modem_packet_config_set( 42527 int unit, 42528 bcm_modem_t modem_id, 42529 uint32 flags, 42530 bcm_lb_modem_packet_config_t * packet_config) 42531 { 42532 return bcm_lb_modem_packet_config_set( 42533 BCM_CONTROL(unit)->unit, 42534 modem_id, 42535 flags, 42536 packet_config); 42537 } 42538 42539 /* bcm_lb_modem_packet_config_t_init not dispatchable */ 42540 42541 /* bcm_lb_modem_shaper_config_t_init not dispatchable */ 42542 42543 int 42544 bcm_loop_lb_modem_shaper_get( 42545 int unit, 42546 bcm_modem_t modem_id, 42547 uint32 flags, 42548 bcm_lb_modem_shaper_config_t * shaper) 42549 { 42550 return bcm_lb_modem_shaper_get( 42551 BCM_CONTROL(unit)->unit, 42552 modem_id, 42553 flags, 42554 shaper); 42555 } 42556 42557 int 42558 bcm_loop_lb_modem_shaper_set( 42559 int unit, 42560 bcm_modem_t modem_id, 42561 uint32 flags, 42562 bcm_lb_modem_shaper_config_t * shaper) 42563 { 42564 return bcm_lb_modem_shaper_set( 42565 BCM_CONTROL(unit)->unit, 42566 modem_id, 42567 flags, 42568 shaper); 42569 } 42570 42571 int 42572 bcm_loop_lb_modem_stat_get( 42573 int unit, 42574 bcm_modem_t modem_id, 42575 bcm_lb_direction_type_t direction, 42576 uint32 flags, 42577 bcm_lb_modem_stat_val_t type, 42578 uint64 * value) 42579 { 42580 return bcm_lb_modem_stat_get( 42581 BCM_CONTROL(unit)->unit, 42582 modem_id, 42583 direction, 42584 flags, 42585 type, 42586 value); 42587 } 42588 42589 int 42590 bcm_loop_lb_modem_status_get( 42591 int unit, 42592 bcm_modem_t modem_id, 42593 bcm_lb_direction_type_t direction, 42594 uint32 flags, 42595 bcm_lb_modem_status_type_t status_type, 42596 int * value) 42597 { 42598 return bcm_lb_modem_status_get( 42599 BCM_CONTROL(unit)->unit, 42600 modem_id, 42601 direction, 42602 flags, 42603 status_type, 42604 value); 42605 } 42606 42607 int 42608 bcm_loop_lb_modem_to_lbg_map_get( 42609 int unit, 42610 bcm_modem_t modem_id, 42611 bcm_lb_direction_type_t direction, 42612 uint32 flags, 42613 bcm_lbg_t * lbg_id) 42614 { 42615 return bcm_lb_modem_to_lbg_map_get( 42616 BCM_CONTROL(unit)->unit, 42617 modem_id, 42618 direction, 42619 flags, 42620 lbg_id); 42621 } 42622 42623 int 42624 bcm_loop_lb_modem_to_lbg_map_set( 42625 int unit, 42626 bcm_modem_t modem_id, 42627 bcm_lb_direction_type_t direction, 42628 uint32 flags, 42629 bcm_lbg_t lbg_id) 42630 { 42631 return bcm_lb_modem_to_lbg_map_set( 42632 BCM_CONTROL(unit)->unit, 42633 modem_id, 42634 direction, 42635 flags, 42636 lbg_id); 42637 } 42638 42639 int 42640 bcm_loop_lb_modem_to_port_map_get( 42641 int unit, 42642 bcm_modem_t modem_id, 42643 uint32 flags, 42644 bcm_gport_t * port) 42645 { 42646 return bcm_lb_modem_to_port_map_get( 42647 BCM_CONTROL(unit)->unit, 42648 modem_id, 42649 flags, 42650 port); 42651 } 42652 42653 int 42654 bcm_loop_lb_modem_to_port_map_set( 42655 int unit, 42656 bcm_modem_t modem_id, 42657 uint32 flags, 42658 bcm_gport_t port) 42659 { 42660 return bcm_lb_modem_to_port_map_set( 42661 BCM_CONTROL(unit)->unit, 42662 modem_id, 42663 flags, 42664 port); 42665 } 42666 42667 int 42668 bcm_loop_lb_packet_config_get( 42669 int unit, 42670 uint32 flags, 42671 bcm_lb_packet_config_t * packet_config) 42672 { 42673 return bcm_lb_packet_config_get( 42674 BCM_CONTROL(unit)->unit, 42675 flags, 42676 packet_config); 42677 } 42678 42679 int 42680 bcm_loop_lb_packet_config_set( 42681 int unit, 42682 uint32 flags, 42683 bcm_lb_packet_config_t * packet_config) 42684 { 42685 return bcm_lb_packet_config_set( 42686 BCM_CONTROL(unit)->unit, 42687 flags, 42688 packet_config); 42689 } 42690 42691 /* bcm_lb_packet_config_t_init not dispatchable */ 42692 42693 /* bcm_lb_pkt_pri_t_init not dispatchable */ 42694 42695 /* bcm_lb_rx_modem_map_config_t_init not dispatchable */ 42696 42697 int 42698 bcm_loop_lb_rx_modem_map_get( 42699 int unit, 42700 bcm_lb_rx_modem_map_index_t * map_index, 42701 uint32 flags, 42702 bcm_lb_rx_modem_map_config_t * map_config) 42703 { 42704 return bcm_lb_rx_modem_map_get( 42705 BCM_CONTROL(unit)->unit, 42706 map_index, 42707 flags, 42708 map_config); 42709 } 42710 42711 /* bcm_lb_rx_modem_map_index_t_init not dispatchable */ 42712 42713 int 42714 bcm_loop_lb_rx_modem_map_set( 42715 int unit, 42716 bcm_lb_rx_modem_map_index_t * map_index, 42717 uint32 flags, 42718 bcm_lb_rx_modem_map_config_t * map_config) 42719 { 42720 return bcm_lb_rx_modem_map_set( 42721 BCM_CONTROL(unit)->unit, 42722 map_index, 42723 flags, 42724 map_config); 42725 } 42726 42727 int 42728 bcm_loop_lb_sequence_number_width_get( 42729 int unit, 42730 bcm_lbg_t lbg_id, 42731 bcm_lb_direction_type_t direction, 42732 uint32 flags, 42733 int * number_width) 42734 { 42735 return bcm_lb_sequence_number_width_get( 42736 BCM_CONTROL(unit)->unit, 42737 lbg_id, 42738 direction, 42739 flags, 42740 number_width); 42741 } 42742 42743 int 42744 bcm_loop_lb_sequence_number_width_set( 42745 int unit, 42746 bcm_lbg_t lbg_id, 42747 bcm_lb_direction_type_t direction, 42748 uint32 flags, 42749 int number_width) 42750 { 42751 return bcm_lb_sequence_number_width_set( 42752 BCM_CONTROL(unit)->unit, 42753 lbg_id, 42754 direction, 42755 flags, 42756 number_width); 42757 } 42758 42759 int 42760 bcm_loop_lb_stat_get( 42761 int unit, 42762 bcm_lbg_t lbg_id, 42763 bcm_lb_direction_type_t direction, 42764 uint32 flags, 42765 bcm_lb_stat_val_t type, 42766 uint64 * value) 42767 { 42768 return bcm_lb_stat_get( 42769 BCM_CONTROL(unit)->unit, 42770 lbg_id, 42771 direction, 42772 flags, 42773 type, 42774 value); 42775 } 42776 42777 int 42778 bcm_loop_lb_status_get( 42779 int unit, 42780 bcm_lbg_t lbg_id, 42781 bcm_lb_direction_type_t direction, 42782 uint32 flags, 42783 bcm_lb_status_type_t status_type, 42784 int * value) 42785 { 42786 return bcm_lb_status_get( 42787 BCM_CONTROL(unit)->unit, 42788 lbg_id, 42789 direction, 42790 flags, 42791 status_type, 42792 value); 42793 } 42794 42795 /* bcm_lb_tc_dp_t_init not dispatchable */ 42796 42797 int 42798 bcm_loop_lb_tc_dp_to_priority_config_get( 42799 int unit, 42800 uint32 flags, 42801 bcm_lb_tc_dp_t * tc_dp, 42802 bcm_lb_pkt_pri_t * pkt_pri) 42803 { 42804 return bcm_lb_tc_dp_to_priority_config_get( 42805 BCM_CONTROL(unit)->unit, 42806 flags, 42807 tc_dp, 42808 pkt_pri); 42809 } 42810 42811 int 42812 bcm_loop_lb_tc_dp_to_priority_config_set( 42813 int unit, 42814 uint32 flags, 42815 bcm_lb_tc_dp_t * tc_dp, 42816 bcm_lb_pkt_pri_t * pkt_pri) 42817 { 42818 return bcm_lb_tc_dp_to_priority_config_set( 42819 BCM_CONTROL(unit)->unit, 42820 flags, 42821 tc_dp, 42822 pkt_pri); 42823 } 42824 42825 int 42826 bcm_loop_lb_tx_sched_get( 42827 int unit, 42828 uint32 flags, 42829 int max_lbg_count, 42830 bcm_lb_lbg_weight_t * lbg_weights, 42831 int * lbg_count) 42832 { 42833 return bcm_lb_tx_sched_get( 42834 BCM_CONTROL(unit)->unit, 42835 flags, 42836 max_lbg_count, 42837 lbg_weights, 42838 lbg_count); 42839 } 42840 42841 int 42842 bcm_loop_lb_tx_sched_set( 42843 int unit, 42844 uint32 flags, 42845 int lbg_count, 42846 bcm_lb_lbg_weight_t * lbg_weights) 42847 { 42848 return bcm_lb_tx_sched_set( 42849 BCM_CONTROL(unit)->unit, 42850 flags, 42851 lbg_count, 42852 lbg_weights); 42853 } 42854 42855 int 42856 bcm_loop_link_change( 42857 int unit, 42858 bcm_pbmp_t pbmp) 42859 { 42860 return bcm_link_change( 42861 BCM_CONTROL(unit)->unit, 42862 pbmp); 42863 } 42864 42865 int 42866 bcm_loop_link_wait( 42867 int unit, 42868 bcm_pbmp_t * pbm, 42869 int us) 42870 { 42871 return bcm_link_wait( 42872 BCM_CONTROL(unit)->unit, 42873 pbm, 42874 us); 42875 } 42876 42877 int 42878 bcm_loop_linkscan_detach( 42879 int unit) 42880 { 42881 return bcm_linkscan_detach( 42882 BCM_CONTROL(unit)->unit); 42883 } 42884 42885 #ifdef BROADCOM_DEBUG 42886 42887 int 42888 bcm_loop_linkscan_dump( 42889 int unit) 42890 { 42891 return bcm_linkscan_dump( 42892 BCM_CONTROL(unit)->unit); 42893 } 42894 42895 #endif /* BROADCOM_DEBUG */ 42896 42897 int 42898 bcm_loop_linkscan_enable_get( 42899 int unit, 42900 int * us) 42901 { 42902 return bcm_linkscan_enable_get( 42903 BCM_CONTROL(unit)->unit, 42904 us); 42905 } 42906 42907 int 42908 bcm_loop_linkscan_enable_port_get( 42909 int unit, 42910 bcm_port_t port) 42911 { 42912 return bcm_linkscan_enable_port_get( 42913 BCM_CONTROL(unit)->unit, 42914 port); 42915 } 42916 42917 int 42918 bcm_loop_linkscan_enable_set( 42919 int unit, 42920 int us) 42921 { 42922 return bcm_linkscan_enable_set( 42923 BCM_CONTROL(unit)->unit, 42924 us); 42925 } 42926 42927 int 42928 bcm_loop_linkscan_init( 42929 int unit) 42930 { 42931 return bcm_linkscan_init( 42932 BCM_CONTROL(unit)->unit); 42933 } 42934 42935 int 42936 bcm_loop_linkscan_mode_get( 42937 int unit, 42938 bcm_port_t port, 42939 int * mode) 42940 { 42941 return bcm_linkscan_mode_get( 42942 BCM_CONTROL(unit)->unit, 42943 port, 42944 mode); 42945 } 42946 42947 int 42948 bcm_loop_linkscan_mode_set( 42949 int unit, 42950 bcm_port_t port, 42951 int mode) 42952 { 42953 return bcm_linkscan_mode_set( 42954 BCM_CONTROL(unit)->unit, 42955 port, 42956 mode); 42957 } 42958 42959 int 42960 bcm_loop_linkscan_mode_set_pbm( 42961 int unit, 42962 bcm_pbmp_t pbm, 42963 int mode) 42964 { 42965 return bcm_linkscan_mode_set_pbm( 42966 BCM_CONTROL(unit)->unit, 42967 pbm, 42968 mode); 42969 } 42970 42971 int 42972 bcm_loop_linkscan_port_register( 42973 int unit, 42974 bcm_port_t port, 42975 bcm_linkscan_port_handler_t f) 42976 { 42977 return bcm_linkscan_port_register( 42978 BCM_CONTROL(unit)->unit, 42979 port, 42980 f); 42981 } 42982 42983 int 42984 bcm_loop_linkscan_port_unregister( 42985 int unit, 42986 bcm_port_t port, 42987 bcm_linkscan_port_handler_t f) 42988 { 42989 return bcm_linkscan_port_unregister( 42990 BCM_CONTROL(unit)->unit, 42991 port, 42992 f); 42993 } 42994 42995 int 42996 bcm_loop_linkscan_register( 42997 int unit, 42998 bcm_linkscan_handler_t f) 42999 { 43000 return bcm_linkscan_register( 43001 BCM_CONTROL(unit)->unit, 43002 f); 43003 } 43004 43005 int 43006 bcm_loop_linkscan_trigger_event_get( 43007 int unit, 43008 bcm_port_t port, 43009 uint32 flags, 43010 bcm_linkscan_trigger_event_t trigger_event, 43011 int * enable) 43012 { 43013 return bcm_linkscan_trigger_event_get( 43014 BCM_CONTROL(unit)->unit, 43015 port, 43016 flags, 43017 trigger_event, 43018 enable); 43019 } 43020 43021 int 43022 bcm_loop_linkscan_trigger_event_set( 43023 int unit, 43024 bcm_port_t port, 43025 uint32 flags, 43026 bcm_linkscan_trigger_event_t trigger_event, 43027 int enable) 43028 { 43029 return bcm_linkscan_trigger_event_set( 43030 BCM_CONTROL(unit)->unit, 43031 port, 43032 flags, 43033 trigger_event, 43034 enable); 43035 } 43036 43037 int 43038 bcm_loop_linkscan_unregister( 43039 int unit, 43040 bcm_linkscan_handler_t f) 43041 { 43042 return bcm_linkscan_unregister( 43043 BCM_CONTROL(unit)->unit, 43044 f); 43045 } 43046 43047 int 43048 bcm_loop_linkscan_update( 43049 int unit, 43050 bcm_pbmp_t pbm) 43051 { 43052 return bcm_linkscan_update( 43053 BCM_CONTROL(unit)->unit, 43054 pbm); 43055 } 43056 43057 #ifdef INCLUDE_MACSEC 43058 43059 int 43060 bcm_loop_macsec_event_enable_get( 43061 int unit, 43062 bcm_macsec_event_t t, 43063 int * enable) 43064 { 43065 return bcm_macsec_event_enable_get( 43066 BCM_CONTROL(unit)->unit, 43067 t, 43068 enable); 43069 } 43070 43071 int 43072 bcm_loop_macsec_event_enable_set( 43073 int unit, 43074 bcm_macsec_event_t t, 43075 int enable) 43076 { 43077 return bcm_macsec_event_enable_set( 43078 BCM_CONTROL(unit)->unit, 43079 t, 43080 enable); 43081 } 43082 43083 int 43084 bcm_loop_macsec_event_register( 43085 int unit, 43086 bcm_macsec_event_cb cb, 43087 void * user_data) 43088 { 43089 return bcm_macsec_event_register( 43090 BCM_CONTROL(unit)->unit, 43091 cb, 43092 user_data); 43093 } 43094 43095 int 43096 bcm_loop_macsec_event_unregister( 43097 int unit, 43098 bcm_macsec_event_cb cb) 43099 { 43100 return bcm_macsec_event_unregister( 43101 BCM_CONTROL(unit)->unit, 43102 cb); 43103 } 43104 43105 int 43106 bcm_loop_macsec_flow_create( 43107 int unit, 43108 bcm_port_t port, 43109 uint32 flags, 43110 bcm_macsec_flow_match_t * flow, 43111 bcm_macsec_flow_action_t * action, 43112 int * flowId) 43113 { 43114 return bcm_macsec_flow_create( 43115 BCM_CONTROL(unit)->unit, 43116 port, 43117 flags, 43118 flow, 43119 action, 43120 flowId); 43121 } 43122 43123 int 43124 bcm_loop_macsec_flow_destroy( 43125 int unit, 43126 bcm_port_t port, 43127 int flowId) 43128 { 43129 return bcm_macsec_flow_destroy( 43130 BCM_CONTROL(unit)->unit, 43131 port, 43132 flowId); 43133 } 43134 43135 int 43136 bcm_loop_macsec_flow_get( 43137 int unit, 43138 bcm_port_t port, 43139 int flowId, 43140 bcm_macsec_flow_match_t * flow, 43141 bcm_macsec_flow_action_t * a) 43142 { 43143 return bcm_macsec_flow_get( 43144 BCM_CONTROL(unit)->unit, 43145 port, 43146 flowId, 43147 flow, 43148 a); 43149 } 43150 43151 int 43152 bcm_loop_macsec_flow_traverse( 43153 int unit, 43154 bcm_port_t port, 43155 bcm_macsec_flow_traverse_cb callbk, 43156 void * user_data) 43157 { 43158 return bcm_macsec_flow_traverse( 43159 BCM_CONTROL(unit)->unit, 43160 port, 43161 callbk, 43162 user_data); 43163 } 43164 43165 int 43166 bcm_loop_macsec_port_capability_get( 43167 int unit, 43168 bcm_port_t port, 43169 bcm_macsec_port_capability_t * cap) 43170 { 43171 return bcm_macsec_port_capability_get( 43172 BCM_CONTROL(unit)->unit, 43173 port, 43174 cap); 43175 } 43176 43177 int 43178 bcm_loop_macsec_port_config_get( 43179 int unit, 43180 bcm_port_t port, 43181 bcm_macsec_port_config_t * cfg) 43182 { 43183 return bcm_macsec_port_config_get( 43184 BCM_CONTROL(unit)->unit, 43185 port, 43186 cfg); 43187 } 43188 43189 int 43190 bcm_loop_macsec_port_config_set( 43191 int unit, 43192 bcm_port_t port, 43193 bcm_macsec_port_config_t * cfg) 43194 { 43195 return bcm_macsec_port_config_set( 43196 BCM_CONTROL(unit)->unit, 43197 port, 43198 cfg); 43199 } 43200 43201 int 43202 bcm_loop_macsec_port_traverse( 43203 int unit, 43204 bcm_macsec_port_traverse_cb callbk, 43205 void * user_data) 43206 { 43207 return bcm_macsec_port_traverse( 43208 BCM_CONTROL(unit)->unit, 43209 callbk, 43210 user_data); 43211 } 43212 43213 int 43214 bcm_loop_macsec_secure_assoc_create( 43215 int unit, 43216 bcm_port_t port, 43217 uint32 flags, 43218 int chanId, 43219 bcm_macsec_secure_assoc_t * assoc, 43220 int * assocId) 43221 { 43222 return bcm_macsec_secure_assoc_create( 43223 BCM_CONTROL(unit)->unit, 43224 port, 43225 flags, 43226 chanId, 43227 assoc, 43228 assocId); 43229 } 43230 43231 int 43232 bcm_loop_macsec_secure_assoc_destroy( 43233 int unit, 43234 bcm_port_t port, 43235 int assocId) 43236 { 43237 return bcm_macsec_secure_assoc_destroy( 43238 BCM_CONTROL(unit)->unit, 43239 port, 43240 assocId); 43241 } 43242 43243 int 43244 bcm_loop_macsec_secure_assoc_get( 43245 int unit, 43246 bcm_port_t port, 43247 int assocId, 43248 bcm_macsec_secure_assoc_t * assoc, 43249 int * chanId) 43250 { 43251 return bcm_macsec_secure_assoc_get( 43252 BCM_CONTROL(unit)->unit, 43253 port, 43254 assocId, 43255 assoc, 43256 chanId); 43257 } 43258 43259 int 43260 bcm_loop_macsec_secure_assoc_traverse( 43261 int unit, 43262 bcm_port_t port, 43263 int chanId, 43264 bcm_macsec_secure_assoc_traverse_cb cb, 43265 void * user_data) 43266 { 43267 return bcm_macsec_secure_assoc_traverse( 43268 BCM_CONTROL(unit)->unit, 43269 port, 43270 chanId, 43271 cb, 43272 user_data); 43273 } 43274 43275 int 43276 bcm_loop_macsec_secure_chan_create( 43277 int unit, 43278 bcm_port_t port, 43279 uint32 flags, 43280 bcm_macsec_secure_chan_t * chan, 43281 int * chanId) 43282 { 43283 return bcm_macsec_secure_chan_create( 43284 BCM_CONTROL(unit)->unit, 43285 port, 43286 flags, 43287 chan, 43288 chanId); 43289 } 43290 43291 int 43292 bcm_loop_macsec_secure_chan_destroy( 43293 int unit, 43294 bcm_port_t port, 43295 int chanId) 43296 { 43297 return bcm_macsec_secure_chan_destroy( 43298 BCM_CONTROL(unit)->unit, 43299 port, 43300 chanId); 43301 } 43302 43303 int 43304 bcm_loop_macsec_secure_chan_get( 43305 int unit, 43306 bcm_port_t port, 43307 int chanId, 43308 bcm_macsec_secure_chan_t * chan) 43309 { 43310 return bcm_macsec_secure_chan_get( 43311 BCM_CONTROL(unit)->unit, 43312 port, 43313 chanId, 43314 chan); 43315 } 43316 43317 int 43318 bcm_loop_macsec_secure_chan_traverse( 43319 int unit, 43320 bcm_port_t port, 43321 bcm_macsec_chan_traverse_cb calback, 43322 void * user_data) 43323 { 43324 return bcm_macsec_secure_chan_traverse( 43325 BCM_CONTROL(unit)->unit, 43326 port, 43327 calback, 43328 user_data); 43329 } 43330 43331 int 43332 bcm_loop_macsec_stat_clear( 43333 int unit, 43334 bcm_port_t port) 43335 { 43336 return bcm_macsec_stat_clear( 43337 BCM_CONTROL(unit)->unit, 43338 port); 43339 } 43340 43341 int 43342 bcm_loop_macsec_stat_get( 43343 int unit, 43344 bcm_port_t port, 43345 bcm_macsec_stat_t stat, 43346 int chanId, 43347 int assocId, 43348 uint64 * val) 43349 { 43350 return bcm_macsec_stat_get( 43351 BCM_CONTROL(unit)->unit, 43352 port, 43353 stat, 43354 chanId, 43355 assocId, 43356 val); 43357 } 43358 43359 int 43360 bcm_loop_macsec_stat_get32( 43361 int unit, 43362 bcm_port_t port, 43363 bcm_macsec_stat_t stat, 43364 int chanId, 43365 int assocId, 43366 uint32 * val) 43367 { 43368 return bcm_macsec_stat_get32( 43369 BCM_CONTROL(unit)->unit, 43370 port, 43371 stat, 43372 chanId, 43373 assocId, 43374 val); 43375 } 43376 43377 int 43378 bcm_loop_macsec_stat_set( 43379 int unit, 43380 bcm_port_t port, 43381 bcm_macsec_stat_t stat, 43382 int chanId, 43383 int assocId, 43384 uint64 val) 43385 { 43386 return bcm_macsec_stat_set( 43387 BCM_CONTROL(unit)->unit, 43388 port, 43389 stat, 43390 chanId, 43391 assocId, 43392 val); 43393 } 43394 43395 int 43396 bcm_loop_macsec_stat_set32( 43397 int unit, 43398 bcm_port_t port, 43399 bcm_macsec_stat_t stat, 43400 int chanId, 43401 int assocId, 43402 uint32 val) 43403 { 43404 return bcm_macsec_stat_set32( 43405 BCM_CONTROL(unit)->unit, 43406 port, 43407 stat, 43408 chanId, 43409 assocId, 43410 val); 43411 } 43412 43413 #endif /* INCLUDE_MACSEC */ 43414 43415 int 43416 bcm_loop_mcast_addr_add( 43417 int unit, 43418 bcm_mcast_addr_t * mcaddr) 43419 { 43420 return bcm_mcast_addr_add( 43421 BCM_CONTROL(unit)->unit, 43422 mcaddr); 43423 } 43424 43425 int 43426 bcm_loop_mcast_addr_add_w_l2mcindex( 43427 int unit, 43428 bcm_mcast_addr_t * mcaddr) 43429 { 43430 return bcm_mcast_addr_add_w_l2mcindex( 43431 BCM_CONTROL(unit)->unit, 43432 mcaddr); 43433 } 43434 43435 int 43436 bcm_loop_mcast_addr_remove( 43437 int unit, 43438 bcm_mac_t mac, 43439 bcm_vlan_t vid) 43440 { 43441 return bcm_mcast_addr_remove( 43442 BCM_CONTROL(unit)->unit, 43443 mac, 43444 vid); 43445 } 43446 43447 int 43448 bcm_loop_mcast_addr_remove_w_l2mcindex( 43449 int unit, 43450 bcm_mcast_addr_t * mcaddr) 43451 { 43452 return bcm_mcast_addr_remove_w_l2mcindex( 43453 BCM_CONTROL(unit)->unit, 43454 mcaddr); 43455 } 43456 43457 /* bcm_mcast_addr_t_init not dispatchable */ 43458 43459 int 43460 bcm_loop_mcast_bitmap_del( 43461 int unit, 43462 int mc_idx, 43463 bcm_port_t in_port, 43464 bcm_pbmp_t pbmp) 43465 { 43466 return bcm_mcast_bitmap_del( 43467 BCM_CONTROL(unit)->unit, 43468 mc_idx, 43469 in_port, 43470 pbmp); 43471 } 43472 43473 int 43474 bcm_loop_mcast_bitmap_get( 43475 int unit, 43476 int mc_idx, 43477 bcm_port_t in_port, 43478 bcm_pbmp_t * pbmp) 43479 { 43480 return bcm_mcast_bitmap_get( 43481 BCM_CONTROL(unit)->unit, 43482 mc_idx, 43483 in_port, 43484 pbmp); 43485 } 43486 43487 int 43488 bcm_loop_mcast_bitmap_max_get( 43489 int unit, 43490 int * max_index) 43491 { 43492 return bcm_mcast_bitmap_max_get( 43493 BCM_CONTROL(unit)->unit, 43494 max_index); 43495 } 43496 43497 int 43498 bcm_loop_mcast_bitmap_set( 43499 int unit, 43500 int mc_idx, 43501 bcm_port_t in_port, 43502 bcm_pbmp_t pbmp) 43503 { 43504 return bcm_mcast_bitmap_set( 43505 BCM_CONTROL(unit)->unit, 43506 mc_idx, 43507 in_port, 43508 pbmp); 43509 } 43510 43511 int 43512 bcm_loop_mcast_init( 43513 int unit) 43514 { 43515 return bcm_mcast_init( 43516 BCM_CONTROL(unit)->unit); 43517 } 43518 43519 int 43520 bcm_loop_mcast_join( 43521 int unit, 43522 bcm_mac_t mcMacAddr, 43523 bcm_vlan_t vlanId, 43524 int srcPort, 43525 bcm_mcast_addr_t * mcaddr, 43526 bcm_pbmp_t * allRouterBmp) 43527 { 43528 return bcm_mcast_join( 43529 BCM_CONTROL(unit)->unit, 43530 mcMacAddr, 43531 vlanId, 43532 srcPort, 43533 mcaddr, 43534 allRouterBmp); 43535 } 43536 43537 int 43538 bcm_loop_mcast_leave( 43539 int unit, 43540 bcm_mac_t mcMacAddr, 43541 bcm_vlan_t vlanId, 43542 int srcPort) 43543 { 43544 return bcm_mcast_leave( 43545 BCM_CONTROL(unit)->unit, 43546 mcMacAddr, 43547 vlanId, 43548 srcPort); 43549 } 43550 43551 int 43552 bcm_loop_mcast_port_add( 43553 int unit, 43554 bcm_mcast_addr_t * mcaddr) 43555 { 43556 return bcm_mcast_port_add( 43557 BCM_CONTROL(unit)->unit, 43558 mcaddr); 43559 } 43560 43561 int 43562 bcm_loop_mcast_port_get( 43563 int unit, 43564 bcm_mac_t mac, 43565 bcm_vlan_t vid, 43566 bcm_mcast_addr_t * mcaddr) 43567 { 43568 return bcm_mcast_port_get( 43569 BCM_CONTROL(unit)->unit, 43570 mac, 43571 vid, 43572 mcaddr); 43573 } 43574 43575 int 43576 bcm_loop_mcast_port_remove( 43577 int unit, 43578 bcm_mcast_addr_t * mcaddr) 43579 { 43580 return bcm_mcast_port_remove( 43581 BCM_CONTROL(unit)->unit, 43582 mcaddr); 43583 } 43584 43585 #ifdef INCLUDE_L3 43586 43587 int 43588 bcm_loop_mim_detach( 43589 int unit) 43590 { 43591 return bcm_mim_detach( 43592 BCM_CONTROL(unit)->unit); 43593 } 43594 43595 int 43596 bcm_loop_mim_init( 43597 int unit) 43598 { 43599 return bcm_mim_init( 43600 BCM_CONTROL(unit)->unit); 43601 } 43602 43603 int 43604 bcm_loop_mim_lookup_id_stat_attach( 43605 int unit, 43606 int lookup_id, 43607 uint32 stat_counter_id) 43608 { 43609 return bcm_mim_lookup_id_stat_attach( 43610 BCM_CONTROL(unit)->unit, 43611 lookup_id, 43612 stat_counter_id); 43613 } 43614 43615 int 43616 bcm_loop_mim_lookup_id_stat_counter_get( 43617 int unit, 43618 int lookup_id, 43619 bcm_mim_stat_t stat, 43620 uint32 num_entries, 43621 uint32 * counter_indexes, 43622 bcm_stat_value_t * counter_values) 43623 { 43624 return bcm_mim_lookup_id_stat_counter_get( 43625 BCM_CONTROL(unit)->unit, 43626 lookup_id, 43627 stat, 43628 num_entries, 43629 counter_indexes, 43630 counter_values); 43631 } 43632 43633 int 43634 bcm_loop_mim_lookup_id_stat_counter_set( 43635 int unit, 43636 int lookup_id, 43637 bcm_mim_stat_t stat, 43638 uint32 num_entries, 43639 uint32 * counter_indexes, 43640 bcm_stat_value_t * counter_values) 43641 { 43642 return bcm_mim_lookup_id_stat_counter_set( 43643 BCM_CONTROL(unit)->unit, 43644 lookup_id, 43645 stat, 43646 num_entries, 43647 counter_indexes, 43648 counter_values); 43649 } 43650 43651 int 43652 bcm_loop_mim_lookup_id_stat_counter_sync_get( 43653 int unit, 43654 int lookup_id, 43655 bcm_mim_stat_t stat, 43656 uint32 num_entries, 43657 uint32 * counter_indexes, 43658 bcm_stat_value_t * counter_values) 43659 { 43660 return bcm_mim_lookup_id_stat_counter_sync_get( 43661 BCM_CONTROL(unit)->unit, 43662 lookup_id, 43663 stat, 43664 num_entries, 43665 counter_indexes, 43666 counter_values); 43667 } 43668 43669 int 43670 bcm_loop_mim_lookup_id_stat_detach( 43671 int unit, 43672 int lookup_id) 43673 { 43674 return bcm_mim_lookup_id_stat_detach( 43675 BCM_CONTROL(unit)->unit, 43676 lookup_id); 43677 } 43678 43679 int 43680 bcm_loop_mim_lookup_id_stat_id_get( 43681 int unit, 43682 int lookup_id, 43683 bcm_mim_stat_t stat, 43684 uint32 * stat_counter_id) 43685 { 43686 return bcm_mim_lookup_id_stat_id_get( 43687 BCM_CONTROL(unit)->unit, 43688 lookup_id, 43689 stat, 43690 stat_counter_id); 43691 } 43692 43693 int 43694 bcm_loop_mim_port_add( 43695 int unit, 43696 bcm_mim_vpn_t vpn, 43697 bcm_mim_port_t * mim_port) 43698 { 43699 return bcm_mim_port_add( 43700 BCM_CONTROL(unit)->unit, 43701 vpn, 43702 mim_port); 43703 } 43704 43705 int 43706 bcm_loop_mim_port_delete( 43707 int unit, 43708 bcm_mim_vpn_t vpn, 43709 bcm_gport_t mim_port_id) 43710 { 43711 return bcm_mim_port_delete( 43712 BCM_CONTROL(unit)->unit, 43713 vpn, 43714 mim_port_id); 43715 } 43716 43717 int 43718 bcm_loop_mim_port_delete_all( 43719 int unit, 43720 bcm_mim_vpn_t vpn) 43721 { 43722 return bcm_mim_port_delete_all( 43723 BCM_CONTROL(unit)->unit, 43724 vpn); 43725 } 43726 43727 int 43728 bcm_loop_mim_port_get( 43729 int unit, 43730 bcm_mim_vpn_t vpn, 43731 bcm_mim_port_t * mim_port) 43732 { 43733 return bcm_mim_port_get( 43734 BCM_CONTROL(unit)->unit, 43735 vpn, 43736 mim_port); 43737 } 43738 43739 int 43740 bcm_loop_mim_port_get_all( 43741 int unit, 43742 bcm_mim_vpn_t vpn, 43743 int port_max, 43744 bcm_mim_port_t * port_array, 43745 int * port_count) 43746 { 43747 return bcm_mim_port_get_all( 43748 BCM_CONTROL(unit)->unit, 43749 vpn, 43750 port_max, 43751 port_array, 43752 port_count); 43753 } 43754 43755 /* bcm_mim_port_t_init not dispatchable */ 43756 43757 /* bcm_mim_vpn_config_t_init not dispatchable */ 43758 43759 int 43760 bcm_loop_mim_vpn_create( 43761 int unit, 43762 bcm_mim_vpn_config_t * info) 43763 { 43764 return bcm_mim_vpn_create( 43765 BCM_CONTROL(unit)->unit, 43766 info); 43767 } 43768 43769 int 43770 bcm_loop_mim_vpn_destroy( 43771 int unit, 43772 bcm_mim_vpn_t vpn) 43773 { 43774 return bcm_mim_vpn_destroy( 43775 BCM_CONTROL(unit)->unit, 43776 vpn); 43777 } 43778 43779 int 43780 bcm_loop_mim_vpn_destroy_all( 43781 int unit) 43782 { 43783 return bcm_mim_vpn_destroy_all( 43784 BCM_CONTROL(unit)->unit); 43785 } 43786 43787 int 43788 bcm_loop_mim_vpn_get( 43789 int unit, 43790 bcm_mim_vpn_t vpn, 43791 bcm_mim_vpn_config_t * info) 43792 { 43793 return bcm_mim_vpn_get( 43794 BCM_CONTROL(unit)->unit, 43795 vpn, 43796 info); 43797 } 43798 43799 int 43800 bcm_loop_mim_vpn_stat_attach( 43801 int unit, 43802 bcm_mim_vpn_t vpn, 43803 uint32 stat_counter_id) 43804 { 43805 return bcm_mim_vpn_stat_attach( 43806 BCM_CONTROL(unit)->unit, 43807 vpn, 43808 stat_counter_id); 43809 } 43810 43811 int 43812 bcm_loop_mim_vpn_stat_counter_get( 43813 int unit, 43814 bcm_mim_vpn_t vpn, 43815 bcm_mim_stat_t stat, 43816 uint32 num_entries, 43817 uint32 * counter_indexes, 43818 bcm_stat_value_t * counter_values) 43819 { 43820 return bcm_mim_vpn_stat_counter_get( 43821 BCM_CONTROL(unit)->unit, 43822 vpn, 43823 stat, 43824 num_entries, 43825 counter_indexes, 43826 counter_values); 43827 } 43828 43829 int 43830 bcm_loop_mim_vpn_stat_counter_set( 43831 int unit, 43832 bcm_mim_vpn_t vpn, 43833 bcm_mim_stat_t stat, 43834 uint32 num_entries, 43835 uint32 * counter_indexes, 43836 bcm_stat_value_t * counter_values) 43837 { 43838 return bcm_mim_vpn_stat_counter_set( 43839 BCM_CONTROL(unit)->unit, 43840 vpn, 43841 stat, 43842 num_entries, 43843 counter_indexes, 43844 counter_values); 43845 } 43846 43847 int 43848 bcm_loop_mim_vpn_stat_counter_sync_get( 43849 int unit, 43850 bcm_mim_vpn_t vpn, 43851 bcm_mim_stat_t stat, 43852 uint32 num_entries, 43853 uint32 * counter_indexes, 43854 bcm_stat_value_t * counter_values) 43855 { 43856 return bcm_mim_vpn_stat_counter_sync_get( 43857 BCM_CONTROL(unit)->unit, 43858 vpn, 43859 stat, 43860 num_entries, 43861 counter_indexes, 43862 counter_values); 43863 } 43864 43865 int 43866 bcm_loop_mim_vpn_stat_detach( 43867 int unit, 43868 bcm_mim_vpn_t vpn) 43869 { 43870 return bcm_mim_vpn_stat_detach( 43871 BCM_CONTROL(unit)->unit, 43872 vpn); 43873 } 43874 43875 int 43876 bcm_loop_mim_vpn_stat_id_get( 43877 int unit, 43878 bcm_mim_vpn_t vpn, 43879 bcm_mim_stat_t stat, 43880 uint32 * stat_counter_id) 43881 { 43882 return bcm_mim_vpn_stat_id_get( 43883 BCM_CONTROL(unit)->unit, 43884 vpn, 43885 stat, 43886 stat_counter_id); 43887 } 43888 43889 int 43890 bcm_loop_mim_vpn_traverse( 43891 int unit, 43892 bcm_mim_vpn_traverse_cb cb, 43893 void * user_data) 43894 { 43895 return bcm_mim_vpn_traverse( 43896 BCM_CONTROL(unit)->unit, 43897 cb, 43898 user_data); 43899 } 43900 43901 #endif /* INCLUDE_L3 */ 43902 43903 int 43904 bcm_loop_mirror_destination_count_command_get( 43905 int unit, 43906 bcm_core_t core_id, 43907 bcm_gport_t mirror_dest_id, 43908 int counter_cmd_id, 43909 uint32 flags, 43910 bcm_mirror_profile_cmd_count_t * mirror_count_info) 43911 { 43912 return bcm_mirror_destination_count_command_get( 43913 BCM_CONTROL(unit)->unit, 43914 core_id, 43915 mirror_dest_id, 43916 counter_cmd_id, 43917 flags, 43918 mirror_count_info); 43919 } 43920 43921 int 43922 bcm_loop_mirror_destination_count_command_set( 43923 int unit, 43924 bcm_core_t core_id, 43925 bcm_gport_t mirror_dest_id, 43926 int counter_cmd_id, 43927 uint32 flags, 43928 bcm_mirror_profile_cmd_count_t * mirror_count_info) 43929 { 43930 return bcm_mirror_destination_count_command_set( 43931 BCM_CONTROL(unit)->unit, 43932 core_id, 43933 mirror_dest_id, 43934 counter_cmd_id, 43935 flags, 43936 mirror_count_info); 43937 } 43938 43939 int 43940 bcm_loop_mirror_destination_create( 43941 int unit, 43942 bcm_mirror_destination_t * mirror_dest) 43943 { 43944 return bcm_mirror_destination_create( 43945 BCM_CONTROL(unit)->unit, 43946 mirror_dest); 43947 } 43948 43949 int 43950 bcm_loop_mirror_destination_destroy( 43951 int unit, 43952 bcm_gport_t mirror_dest_id) 43953 { 43954 return bcm_mirror_destination_destroy( 43955 BCM_CONTROL(unit)->unit, 43956 mirror_dest_id); 43957 } 43958 43959 int 43960 bcm_loop_mirror_destination_get( 43961 int unit, 43962 bcm_gport_t mirror_dest_id, 43963 bcm_mirror_destination_t * mirror_dest) 43964 { 43965 return bcm_mirror_destination_get( 43966 BCM_CONTROL(unit)->unit, 43967 mirror_dest_id, 43968 mirror_dest); 43969 } 43970 43971 /* bcm_mirror_destination_t_init not dispatchable */ 43972 43973 int 43974 bcm_loop_mirror_destination_traverse( 43975 int unit, 43976 bcm_mirror_destination_traverse_cb cb, 43977 void * user_data) 43978 { 43979 return bcm_mirror_destination_traverse( 43980 BCM_CONTROL(unit)->unit, 43981 cb, 43982 user_data); 43983 } 43984 43985 int 43986 bcm_loop_mirror_egress_get( 43987 int unit, 43988 bcm_port_t port, 43989 int * val) 43990 { 43991 return bcm_mirror_egress_get( 43992 BCM_CONTROL(unit)->unit, 43993 port, 43994 val); 43995 } 43996 43997 int 43998 bcm_loop_mirror_egress_set( 43999 int unit, 44000 bcm_port_t port, 44001 int val) 44002 { 44003 return bcm_mirror_egress_set( 44004 BCM_CONTROL(unit)->unit, 44005 port, 44006 val); 44007 } 44008 44009 int 44010 bcm_loop_mirror_header_info_get( 44011 int unit, 44012 bcm_gport_t mirror_dest_id, 44013 uint32 * flags, 44014 bcm_mirror_header_info_t * mirror_header_info) 44015 { 44016 return bcm_mirror_header_info_get( 44017 BCM_CONTROL(unit)->unit, 44018 mirror_dest_id, 44019 flags, 44020 mirror_header_info); 44021 } 44022 44023 int 44024 bcm_loop_mirror_header_info_set( 44025 int unit, 44026 uint32 flags, 44027 bcm_gport_t mirror_dest_id, 44028 bcm_mirror_header_info_t * mirror_header_info) 44029 { 44030 return bcm_mirror_header_info_set( 44031 BCM_CONTROL(unit)->unit, 44032 flags, 44033 mirror_dest_id, 44034 mirror_header_info); 44035 } 44036 44037 /* bcm_mirror_header_info_t_init not dispatchable */ 44038 44039 int 44040 bcm_loop_mirror_ingress_get( 44041 int unit, 44042 bcm_port_t port, 44043 int * val) 44044 { 44045 return bcm_mirror_ingress_get( 44046 BCM_CONTROL(unit)->unit, 44047 port, 44048 val); 44049 } 44050 44051 int 44052 bcm_loop_mirror_ingress_set( 44053 int unit, 44054 bcm_port_t port, 44055 int val) 44056 { 44057 return bcm_mirror_ingress_set( 44058 BCM_CONTROL(unit)->unit, 44059 port, 44060 val); 44061 } 44062 44063 int 44064 bcm_loop_mirror_init( 44065 int unit) 44066 { 44067 return bcm_mirror_init( 44068 BCM_CONTROL(unit)->unit); 44069 } 44070 44071 int 44072 bcm_loop_mirror_mode_get( 44073 int unit, 44074 int * mode) 44075 { 44076 return bcm_mirror_mode_get( 44077 BCM_CONTROL(unit)->unit, 44078 mode); 44079 } 44080 44081 int 44082 bcm_loop_mirror_mode_set( 44083 int unit, 44084 int mode) 44085 { 44086 return bcm_mirror_mode_set( 44087 BCM_CONTROL(unit)->unit, 44088 mode); 44089 } 44090 44091 /* bcm_mirror_options_t_init not dispatchable */ 44092 44093 int 44094 bcm_loop_mirror_payload_zero_control_multi_get( 44095 int unit, 44096 bcm_mirror_payload_zero_info_t * payload_zero_config_array, 44097 int num_configs) 44098 { 44099 return bcm_mirror_payload_zero_control_multi_get( 44100 BCM_CONTROL(unit)->unit, 44101 payload_zero_config_array, 44102 num_configs); 44103 } 44104 44105 int 44106 bcm_loop_mirror_payload_zero_control_multi_set( 44107 int unit, 44108 bcm_mirror_payload_zero_info_t * payload_zero_config_array, 44109 int num_configs) 44110 { 44111 return bcm_mirror_payload_zero_control_multi_set( 44112 BCM_CONTROL(unit)->unit, 44113 payload_zero_config_array, 44114 num_configs); 44115 } 44116 44117 /* bcm_mirror_payload_zero_info_t_init not dispatchable */ 44118 44119 /* bcm_mirror_payload_zero_offsets_t_init not dispatchable */ 44120 44121 int 44122 bcm_loop_mirror_payload_zero_profile_create( 44123 int unit, 44124 bcm_mirror_payload_zero_offsets_t * mirror_payload_offset_info, 44125 uint32 flags, 44126 uint32 * profile_index) 44127 { 44128 return bcm_mirror_payload_zero_profile_create( 44129 BCM_CONTROL(unit)->unit, 44130 mirror_payload_offset_info, 44131 flags, 44132 profile_index); 44133 } 44134 44135 int 44136 bcm_loop_mirror_payload_zero_profile_destroy( 44137 int unit, 44138 uint32 flags, 44139 uint32 profile_index) 44140 { 44141 return bcm_mirror_payload_zero_profile_destroy( 44142 BCM_CONTROL(unit)->unit, 44143 flags, 44144 profile_index); 44145 } 44146 44147 /* bcm_mirror_pkt_header_updates_t_init not dispatchable */ 44148 44149 int 44150 bcm_loop_mirror_port_dest_add( 44151 int unit, 44152 bcm_port_t port, 44153 uint32 flags, 44154 bcm_gport_t mirror_dest_id) 44155 { 44156 return bcm_mirror_port_dest_add( 44157 BCM_CONTROL(unit)->unit, 44158 port, 44159 flags, 44160 mirror_dest_id); 44161 } 44162 44163 int 44164 bcm_loop_mirror_port_dest_delete( 44165 int unit, 44166 bcm_port_t port, 44167 uint32 flags, 44168 bcm_gport_t mirror_dest_id) 44169 { 44170 return bcm_mirror_port_dest_delete( 44171 BCM_CONTROL(unit)->unit, 44172 port, 44173 flags, 44174 mirror_dest_id); 44175 } 44176 44177 int 44178 bcm_loop_mirror_port_dest_delete_all( 44179 int unit, 44180 bcm_port_t port, 44181 uint32 flags) 44182 { 44183 return bcm_mirror_port_dest_delete_all( 44184 BCM_CONTROL(unit)->unit, 44185 port, 44186 flags); 44187 } 44188 44189 int 44190 bcm_loop_mirror_port_dest_get( 44191 int unit, 44192 bcm_port_t port, 44193 uint32 flags, 44194 int mirror_dest_size, 44195 bcm_gport_t * mirror_dest, 44196 int * mirror_dest_count) 44197 { 44198 return bcm_mirror_port_dest_get( 44199 BCM_CONTROL(unit)->unit, 44200 port, 44201 flags, 44202 mirror_dest_size, 44203 mirror_dest, 44204 mirror_dest_count); 44205 } 44206 44207 int 44208 bcm_loop_mirror_port_destination_add( 44209 int unit, 44210 bcm_port_t port, 44211 uint32 flags, 44212 bcm_gport_t mirror_dest, 44213 bcm_mirror_options_t options) 44214 { 44215 return bcm_mirror_port_destination_add( 44216 BCM_CONTROL(unit)->unit, 44217 port, 44218 flags, 44219 mirror_dest, 44220 options); 44221 } 44222 44223 int 44224 bcm_loop_mirror_port_destination_get( 44225 int unit, 44226 bcm_port_t port, 44227 uint32 flags, 44228 int mirror_dest_size, 44229 bcm_gport_t * mirror_dest, 44230 int * mirror_dest_count, 44231 bcm_mirror_options_t * options) 44232 { 44233 return bcm_mirror_port_destination_get( 44234 BCM_CONTROL(unit)->unit, 44235 port, 44236 flags, 44237 mirror_dest_size, 44238 mirror_dest, 44239 mirror_dest_count, 44240 options); 44241 } 44242 44243 int 44244 bcm_loop_mirror_port_get( 44245 int unit, 44246 bcm_port_t port, 44247 bcm_module_t * dest_mod, 44248 bcm_port_t * dest_port, 44249 uint32 * flags) 44250 { 44251 return bcm_mirror_port_get( 44252 BCM_CONTROL(unit)->unit, 44253 port, 44254 dest_mod, 44255 dest_port, 44256 flags); 44257 } 44258 44259 int 44260 bcm_loop_mirror_port_info_get( 44261 int unit, 44262 bcm_port_t port, 44263 uint32 flags, 44264 bcm_mirror_port_info_t * info) 44265 { 44266 return bcm_mirror_port_info_get( 44267 BCM_CONTROL(unit)->unit, 44268 port, 44269 flags, 44270 info); 44271 } 44272 44273 int 44274 bcm_loop_mirror_port_info_set( 44275 int unit, 44276 bcm_port_t port, 44277 uint32 flags, 44278 bcm_mirror_port_info_t * info) 44279 { 44280 return bcm_mirror_port_info_set( 44281 BCM_CONTROL(unit)->unit, 44282 port, 44283 flags, 44284 info); 44285 } 44286 44287 /* bcm_mirror_port_info_t_init not dispatchable */ 44288 44289 int 44290 bcm_loop_mirror_port_set( 44291 int unit, 44292 bcm_port_t port, 44293 bcm_module_t dest_mod, 44294 bcm_port_t dest_port, 44295 uint32 flags) 44296 { 44297 return bcm_mirror_port_set( 44298 BCM_CONTROL(unit)->unit, 44299 port, 44300 dest_mod, 44301 dest_port, 44302 flags); 44303 } 44304 44305 int 44306 bcm_loop_mirror_port_to_rcy_port_map_get( 44307 int unit, 44308 uint32 flags, 44309 bcm_port_t forward_port, 44310 bcm_mirror_port_to_rcy_map_info_t * rcy_map_info) 44311 { 44312 return bcm_mirror_port_to_rcy_port_map_get( 44313 BCM_CONTROL(unit)->unit, 44314 flags, 44315 forward_port, 44316 rcy_map_info); 44317 } 44318 44319 int 44320 bcm_loop_mirror_port_to_rcy_port_map_set( 44321 int unit, 44322 uint32 flags, 44323 bcm_port_t forward_port, 44324 bcm_mirror_port_to_rcy_map_info_t * rcy_map_info) 44325 { 44326 return bcm_mirror_port_to_rcy_port_map_set( 44327 BCM_CONTROL(unit)->unit, 44328 flags, 44329 forward_port, 44330 rcy_map_info); 44331 } 44332 44333 int 44334 bcm_loop_mirror_port_vlan_dest_add( 44335 int unit, 44336 bcm_port_t port, 44337 bcm_vlan_t vlan, 44338 uint32 flags, 44339 bcm_gport_t destid) 44340 { 44341 return bcm_mirror_port_vlan_dest_add( 44342 BCM_CONTROL(unit)->unit, 44343 port, 44344 vlan, 44345 flags, 44346 destid); 44347 } 44348 44349 int 44350 bcm_loop_mirror_port_vlan_dest_delete( 44351 int unit, 44352 bcm_port_t port, 44353 bcm_vlan_t vlan, 44354 uint32 flags, 44355 bcm_gport_t destid) 44356 { 44357 return bcm_mirror_port_vlan_dest_delete( 44358 BCM_CONTROL(unit)->unit, 44359 port, 44360 vlan, 44361 flags, 44362 destid); 44363 } 44364 44365 int 44366 bcm_loop_mirror_port_vlan_dest_delete_all( 44367 int unit, 44368 bcm_port_t port, 44369 bcm_vlan_t vlan, 44370 uint32 flags) 44371 { 44372 return bcm_mirror_port_vlan_dest_delete_all( 44373 BCM_CONTROL(unit)->unit, 44374 port, 44375 vlan, 44376 flags); 44377 } 44378 44379 int 44380 bcm_loop_mirror_port_vlan_dest_get( 44381 int unit, 44382 bcm_port_t port, 44383 bcm_vlan_t vlan, 44384 uint32 flags, 44385 uint32 mirror_dest_size, 44386 bcm_gport_t * destid, 44387 uint32 * destcount) 44388 { 44389 return bcm_mirror_port_vlan_dest_get( 44390 BCM_CONTROL(unit)->unit, 44391 port, 44392 vlan, 44393 flags, 44394 mirror_dest_size, 44395 destid, 44396 destcount); 44397 } 44398 44399 int 44400 bcm_loop_mirror_port_vlan_destination_add( 44401 int unit, 44402 bcm_port_t port, 44403 bcm_vlan_t vlan, 44404 uint32 flags, 44405 bcm_gport_t destid, 44406 bcm_mirror_options_t options) 44407 { 44408 return bcm_mirror_port_vlan_destination_add( 44409 BCM_CONTROL(unit)->unit, 44410 port, 44411 vlan, 44412 flags, 44413 destid, 44414 options); 44415 } 44416 44417 int 44418 bcm_loop_mirror_port_vlan_destination_get( 44419 int unit, 44420 bcm_port_t port, 44421 bcm_vlan_t vlan, 44422 uint32 flags, 44423 uint32 mirror_dest_size, 44424 bcm_gport_t * destid, 44425 uint32 * destcount, 44426 bcm_mirror_options_t * options) 44427 { 44428 return bcm_mirror_port_vlan_destination_get( 44429 BCM_CONTROL(unit)->unit, 44430 port, 44431 vlan, 44432 flags, 44433 mirror_dest_size, 44434 destid, 44435 destcount, 44436 options); 44437 } 44438 44439 int 44440 bcm_loop_mirror_port_vlan_get( 44441 int unit, 44442 bcm_port_t port, 44443 bcm_vlan_t vlan, 44444 bcm_gport_t * dest_port, 44445 uint32 * flags) 44446 { 44447 return bcm_mirror_port_vlan_get( 44448 BCM_CONTROL(unit)->unit, 44449 port, 44450 vlan, 44451 dest_port, 44452 flags); 44453 } 44454 44455 int 44456 bcm_loop_mirror_port_vlan_set( 44457 int unit, 44458 bcm_port_t port, 44459 bcm_vlan_t vlan, 44460 bcm_gport_t destport, 44461 uint32 flags) 44462 { 44463 return bcm_mirror_port_vlan_set( 44464 BCM_CONTROL(unit)->unit, 44465 port, 44466 vlan, 44467 destport, 44468 flags); 44469 } 44470 44471 int 44472 bcm_loop_mirror_to_get( 44473 int unit, 44474 bcm_port_t * port) 44475 { 44476 return bcm_mirror_to_get( 44477 BCM_CONTROL(unit)->unit, 44478 port); 44479 } 44480 44481 int 44482 bcm_loop_mirror_to_pbmp_get( 44483 int unit, 44484 bcm_port_t port, 44485 bcm_pbmp_t * pbmp) 44486 { 44487 return bcm_mirror_to_pbmp_get( 44488 BCM_CONTROL(unit)->unit, 44489 port, 44490 pbmp); 44491 } 44492 44493 int 44494 bcm_loop_mirror_to_pbmp_set( 44495 int unit, 44496 bcm_port_t port, 44497 bcm_pbmp_t pbmp) 44498 { 44499 return bcm_mirror_to_pbmp_set( 44500 BCM_CONTROL(unit)->unit, 44501 port, 44502 pbmp); 44503 } 44504 44505 int 44506 bcm_loop_mirror_to_set( 44507 int unit, 44508 bcm_port_t port) 44509 { 44510 return bcm_mirror_to_set( 44511 BCM_CONTROL(unit)->unit, 44512 port); 44513 } 44514 44515 int 44516 bcm_loop_mirror_vlan_get( 44517 int unit, 44518 bcm_port_t port, 44519 uint16 * tpid, 44520 uint16 * vlan) 44521 { 44522 return bcm_mirror_vlan_get( 44523 BCM_CONTROL(unit)->unit, 44524 port, 44525 tpid, 44526 vlan); 44527 } 44528 44529 int 44530 bcm_loop_mirror_vlan_set( 44531 int unit, 44532 bcm_port_t port, 44533 uint16 tpid, 44534 uint16 vlan) 44535 { 44536 return bcm_mirror_vlan_set( 44537 BCM_CONTROL(unit)->unit, 44538 port, 44539 tpid, 44540 vlan); 44541 } 44542 44543 /* bcm_module_name not dispatchable */ 44544 44545 #ifdef INCLUDE_L3 44546 44547 int 44548 bcm_loop_mpls_cleanup( 44549 int unit) 44550 { 44551 return bcm_mpls_cleanup( 44552 BCM_CONTROL(unit)->unit); 44553 } 44554 44555 /* bcm_mpls_egress_label_t_init not dispatchable */ 44556 44557 int 44558 bcm_loop_mpls_entropy_identifier_add( 44559 int unit, 44560 uint32 options, 44561 bcm_mpls_entropy_identifier_t * info) 44562 { 44563 return bcm_mpls_entropy_identifier_add( 44564 BCM_CONTROL(unit)->unit, 44565 options, 44566 info); 44567 } 44568 44569 int 44570 bcm_loop_mpls_entropy_identifier_delete( 44571 int unit, 44572 bcm_mpls_entropy_identifier_t * info) 44573 { 44574 return bcm_mpls_entropy_identifier_delete( 44575 BCM_CONTROL(unit)->unit, 44576 info); 44577 } 44578 44579 int 44580 bcm_loop_mpls_entropy_identifier_delete_all( 44581 int unit) 44582 { 44583 return bcm_mpls_entropy_identifier_delete_all( 44584 BCM_CONTROL(unit)->unit); 44585 } 44586 44587 int 44588 bcm_loop_mpls_entropy_identifier_get( 44589 int unit, 44590 bcm_mpls_entropy_identifier_t * info) 44591 { 44592 return bcm_mpls_entropy_identifier_get( 44593 BCM_CONTROL(unit)->unit, 44594 info); 44595 } 44596 44597 /* bcm_mpls_entropy_identifier_t_init not dispatchable */ 44598 44599 int 44600 bcm_loop_mpls_entropy_identifier_traverse( 44601 int unit, 44602 bcm_mpls_entropy_identifier_traverse_cb cb, 44603 void * user_data) 44604 { 44605 return bcm_mpls_entropy_identifier_traverse( 44606 BCM_CONTROL(unit)->unit, 44607 cb, 44608 user_data); 44609 } 44610 44611 int 44612 bcm_loop_mpls_esi_encap_add( 44613 int unit, 44614 bcm_mpls_esi_info_t * esi_info) 44615 { 44616 return bcm_mpls_esi_encap_add( 44617 BCM_CONTROL(unit)->unit, 44618 esi_info); 44619 } 44620 44621 int 44622 bcm_loop_mpls_esi_encap_delete( 44623 int unit, 44624 bcm_mpls_esi_info_t * esi_info) 44625 { 44626 return bcm_mpls_esi_encap_delete( 44627 BCM_CONTROL(unit)->unit, 44628 esi_info); 44629 } 44630 44631 int 44632 bcm_loop_mpls_esi_encap_get( 44633 int unit, 44634 bcm_mpls_esi_info_t * esi_info) 44635 { 44636 return bcm_mpls_esi_encap_get( 44637 BCM_CONTROL(unit)->unit, 44638 esi_info); 44639 } 44640 44641 int 44642 bcm_loop_mpls_esi_encap_traverse( 44643 int unit, 44644 bcm_mpls_esi_encap_traverse_cb cb, 44645 void * user_data) 44646 { 44647 return bcm_mpls_esi_encap_traverse( 44648 BCM_CONTROL(unit)->unit, 44649 cb, 44650 user_data); 44651 } 44652 44653 /* bcm_mpls_esi_info_t_init not dispatchable */ 44654 44655 int 44656 bcm_loop_mpls_exp_map_create( 44657 int unit, 44658 uint32 flags, 44659 int * exp_map_id) 44660 { 44661 return bcm_mpls_exp_map_create( 44662 BCM_CONTROL(unit)->unit, 44663 flags, 44664 exp_map_id); 44665 } 44666 44667 int 44668 bcm_loop_mpls_exp_map_destroy( 44669 int unit, 44670 int exp_map_id) 44671 { 44672 return bcm_mpls_exp_map_destroy( 44673 BCM_CONTROL(unit)->unit, 44674 exp_map_id); 44675 } 44676 44677 int 44678 bcm_loop_mpls_exp_map_get( 44679 int unit, 44680 int exp_map_id, 44681 bcm_mpls_exp_map_t * exp_map) 44682 { 44683 return bcm_mpls_exp_map_get( 44684 BCM_CONTROL(unit)->unit, 44685 exp_map_id, 44686 exp_map); 44687 } 44688 44689 int 44690 bcm_loop_mpls_exp_map_set( 44691 int unit, 44692 int exp_map_id, 44693 bcm_mpls_exp_map_t * exp_map) 44694 { 44695 return bcm_mpls_exp_map_set( 44696 BCM_CONTROL(unit)->unit, 44697 exp_map_id, 44698 exp_map); 44699 } 44700 44701 /* bcm_mpls_exp_map_t_init not dispatchable */ 44702 44703 int 44704 bcm_loop_mpls_init( 44705 int unit) 44706 { 44707 return bcm_mpls_init( 44708 BCM_CONTROL(unit)->unit); 44709 } 44710 44711 int 44712 bcm_loop_mpls_label_stat_attach( 44713 int unit, 44714 bcm_mpls_label_t label, 44715 bcm_gport_t port, 44716 uint32 stat_counter_id) 44717 { 44718 return bcm_mpls_label_stat_attach( 44719 BCM_CONTROL(unit)->unit, 44720 label, 44721 port, 44722 stat_counter_id); 44723 } 44724 44725 int 44726 bcm_loop_mpls_label_stat_clear( 44727 int unit, 44728 bcm_mpls_label_t label, 44729 bcm_gport_t port, 44730 bcm_mpls_stat_t stat) 44731 { 44732 return bcm_mpls_label_stat_clear( 44733 BCM_CONTROL(unit)->unit, 44734 label, 44735 port, 44736 stat); 44737 } 44738 44739 int 44740 bcm_loop_mpls_label_stat_counter_get( 44741 int unit, 44742 bcm_mpls_label_t label, 44743 bcm_gport_t port, 44744 bcm_mpls_stat_t stat, 44745 uint32 num_entries, 44746 uint32 * counter_indexes, 44747 bcm_stat_value_t * counter_values) 44748 { 44749 return bcm_mpls_label_stat_counter_get( 44750 BCM_CONTROL(unit)->unit, 44751 label, 44752 port, 44753 stat, 44754 num_entries, 44755 counter_indexes, 44756 counter_values); 44757 } 44758 44759 int 44760 bcm_loop_mpls_label_stat_counter_set( 44761 int unit, 44762 bcm_mpls_label_t label, 44763 bcm_gport_t port, 44764 bcm_mpls_stat_t stat, 44765 uint32 num_entries, 44766 uint32 * counter_indexes, 44767 bcm_stat_value_t * counter_values) 44768 { 44769 return bcm_mpls_label_stat_counter_set( 44770 BCM_CONTROL(unit)->unit, 44771 label, 44772 port, 44773 stat, 44774 num_entries, 44775 counter_indexes, 44776 counter_values); 44777 } 44778 44779 int 44780 bcm_loop_mpls_label_stat_counter_sync_get( 44781 int unit, 44782 bcm_mpls_label_t label, 44783 bcm_gport_t port, 44784 bcm_mpls_stat_t stat, 44785 uint32 num_entries, 44786 uint32 * counter_indexes, 44787 bcm_stat_value_t * counter_values) 44788 { 44789 return bcm_mpls_label_stat_counter_sync_get( 44790 BCM_CONTROL(unit)->unit, 44791 label, 44792 port, 44793 stat, 44794 num_entries, 44795 counter_indexes, 44796 counter_values); 44797 } 44798 44799 int 44800 bcm_loop_mpls_label_stat_detach( 44801 int unit, 44802 bcm_mpls_label_t label, 44803 bcm_gport_t port) 44804 { 44805 return bcm_mpls_label_stat_detach( 44806 BCM_CONTROL(unit)->unit, 44807 label, 44808 port); 44809 } 44810 44811 int 44812 bcm_loop_mpls_label_stat_enable_set( 44813 int unit, 44814 bcm_mpls_label_t label, 44815 bcm_gport_t port, 44816 int enable) 44817 { 44818 return bcm_mpls_label_stat_enable_set( 44819 BCM_CONTROL(unit)->unit, 44820 label, 44821 port, 44822 enable); 44823 } 44824 44825 int 44826 bcm_loop_mpls_label_stat_get( 44827 int unit, 44828 bcm_mpls_label_t label, 44829 bcm_gport_t port, 44830 bcm_mpls_stat_t stat, 44831 uint64 * val) 44832 { 44833 return bcm_mpls_label_stat_get( 44834 BCM_CONTROL(unit)->unit, 44835 label, 44836 port, 44837 stat, 44838 val); 44839 } 44840 44841 int 44842 bcm_loop_mpls_label_stat_get32( 44843 int unit, 44844 bcm_mpls_label_t label, 44845 bcm_gport_t port, 44846 bcm_mpls_stat_t stat, 44847 uint32 * val) 44848 { 44849 return bcm_mpls_label_stat_get32( 44850 BCM_CONTROL(unit)->unit, 44851 label, 44852 port, 44853 stat, 44854 val); 44855 } 44856 44857 int 44858 bcm_loop_mpls_label_stat_id_get( 44859 int unit, 44860 bcm_mpls_label_t label, 44861 bcm_gport_t port, 44862 bcm_mpls_stat_t stat, 44863 uint32 * stat_counter_id) 44864 { 44865 return bcm_mpls_label_stat_id_get( 44866 BCM_CONTROL(unit)->unit, 44867 label, 44868 port, 44869 stat, 44870 stat_counter_id); 44871 } 44872 44873 int 44874 bcm_loop_mpls_label_stat_sync_get( 44875 int unit, 44876 bcm_mpls_label_t label, 44877 bcm_gport_t port, 44878 bcm_mpls_stat_t stat, 44879 uint64 * val) 44880 { 44881 return bcm_mpls_label_stat_sync_get( 44882 BCM_CONTROL(unit)->unit, 44883 label, 44884 port, 44885 stat, 44886 val); 44887 } 44888 44889 int 44890 bcm_loop_mpls_label_stat_sync_get32( 44891 int unit, 44892 bcm_mpls_label_t label, 44893 bcm_gport_t port, 44894 bcm_mpls_stat_t stat, 44895 uint32 * val) 44896 { 44897 return bcm_mpls_label_stat_sync_get32( 44898 BCM_CONTROL(unit)->unit, 44899 label, 44900 port, 44901 stat, 44902 val); 44903 } 44904 44905 int 44906 bcm_loop_mpls_port_add( 44907 int unit, 44908 bcm_vpn_t vpn, 44909 bcm_mpls_port_t * mpls_port) 44910 { 44911 return bcm_mpls_port_add( 44912 BCM_CONTROL(unit)->unit, 44913 vpn, 44914 mpls_port); 44915 } 44916 44917 int 44918 bcm_loop_mpls_port_delete( 44919 int unit, 44920 bcm_vpn_t vpn, 44921 bcm_gport_t mpls_port_id) 44922 { 44923 return bcm_mpls_port_delete( 44924 BCM_CONTROL(unit)->unit, 44925 vpn, 44926 mpls_port_id); 44927 } 44928 44929 int 44930 bcm_loop_mpls_port_delete_all( 44931 int unit, 44932 bcm_vpn_t vpn) 44933 { 44934 return bcm_mpls_port_delete_all( 44935 BCM_CONTROL(unit)->unit, 44936 vpn); 44937 } 44938 44939 int 44940 bcm_loop_mpls_port_get( 44941 int unit, 44942 bcm_vpn_t vpn, 44943 bcm_mpls_port_t * mpls_port) 44944 { 44945 return bcm_mpls_port_get( 44946 BCM_CONTROL(unit)->unit, 44947 vpn, 44948 mpls_port); 44949 } 44950 44951 int 44952 bcm_loop_mpls_port_get_all( 44953 int unit, 44954 bcm_vpn_t vpn, 44955 int port_max, 44956 bcm_mpls_port_t * port_array, 44957 int * port_count) 44958 { 44959 return bcm_mpls_port_get_all( 44960 BCM_CONTROL(unit)->unit, 44961 vpn, 44962 port_max, 44963 port_array, 44964 port_count); 44965 } 44966 44967 int 44968 bcm_loop_mpls_port_stat_attach( 44969 int unit, 44970 bcm_vpn_t vpn, 44971 bcm_gport_t port, 44972 uint32 stat_counter_id) 44973 { 44974 return bcm_mpls_port_stat_attach( 44975 BCM_CONTROL(unit)->unit, 44976 vpn, 44977 port, 44978 stat_counter_id); 44979 } 44980 44981 int 44982 bcm_loop_mpls_port_stat_counter_get( 44983 int unit, 44984 bcm_vpn_t vpn, 44985 bcm_gport_t port, 44986 bcm_mpls_stat_t stat, 44987 uint32 num_entries, 44988 uint32 * counter_indexes, 44989 bcm_stat_value_t * counter_values) 44990 { 44991 return bcm_mpls_port_stat_counter_get( 44992 BCM_CONTROL(unit)->unit, 44993 vpn, 44994 port, 44995 stat, 44996 num_entries, 44997 counter_indexes, 44998 counter_values); 44999 } 45000 45001 int 45002 bcm_loop_mpls_port_stat_counter_set( 45003 int unit, 45004 bcm_vpn_t vpn, 45005 bcm_gport_t port, 45006 bcm_mpls_stat_t stat, 45007 uint32 num_entries, 45008 uint32 * counter_indexes, 45009 bcm_stat_value_t * counter_values) 45010 { 45011 return bcm_mpls_port_stat_counter_set( 45012 BCM_CONTROL(unit)->unit, 45013 vpn, 45014 port, 45015 stat, 45016 num_entries, 45017 counter_indexes, 45018 counter_values); 45019 } 45020 45021 int 45022 bcm_loop_mpls_port_stat_counter_sync_get( 45023 int unit, 45024 bcm_vpn_t vpn, 45025 bcm_gport_t port, 45026 bcm_mpls_stat_t stat, 45027 uint32 num_entries, 45028 uint32 * counter_indexes, 45029 bcm_stat_value_t * counter_values) 45030 { 45031 return bcm_mpls_port_stat_counter_sync_get( 45032 BCM_CONTROL(unit)->unit, 45033 vpn, 45034 port, 45035 stat, 45036 num_entries, 45037 counter_indexes, 45038 counter_values); 45039 } 45040 45041 int 45042 bcm_loop_mpls_port_stat_detach( 45043 int unit, 45044 bcm_vpn_t vpn, 45045 bcm_gport_t port) 45046 { 45047 return bcm_mpls_port_stat_detach( 45048 BCM_CONTROL(unit)->unit, 45049 vpn, 45050 port); 45051 } 45052 45053 int 45054 bcm_loop_mpls_port_stat_enable_set( 45055 int unit, 45056 bcm_gport_t mpls_port, 45057 int enable) 45058 { 45059 return bcm_mpls_port_stat_enable_set( 45060 BCM_CONTROL(unit)->unit, 45061 mpls_port, 45062 enable); 45063 } 45064 45065 int 45066 bcm_loop_mpls_port_stat_get( 45067 int unit, 45068 bcm_gport_t mpls_port, 45069 bcm_cos_t cos, 45070 bcm_mpls_port_stat_t stat, 45071 uint64 * val) 45072 { 45073 return bcm_mpls_port_stat_get( 45074 BCM_CONTROL(unit)->unit, 45075 mpls_port, 45076 cos, 45077 stat, 45078 val); 45079 } 45080 45081 int 45082 bcm_loop_mpls_port_stat_get32( 45083 int unit, 45084 bcm_gport_t mpls_port, 45085 bcm_cos_t cos, 45086 bcm_mpls_port_stat_t stat, 45087 uint32 * val) 45088 { 45089 return bcm_mpls_port_stat_get32( 45090 BCM_CONTROL(unit)->unit, 45091 mpls_port, 45092 cos, 45093 stat, 45094 val); 45095 } 45096 45097 int 45098 bcm_loop_mpls_port_stat_id_get( 45099 int unit, 45100 bcm_vpn_t vpn, 45101 bcm_gport_t port, 45102 bcm_mpls_stat_t stat, 45103 uint32 * stat_counter_id) 45104 { 45105 return bcm_mpls_port_stat_id_get( 45106 BCM_CONTROL(unit)->unit, 45107 vpn, 45108 port, 45109 stat, 45110 stat_counter_id); 45111 } 45112 45113 int 45114 bcm_loop_mpls_port_stat_set( 45115 int unit, 45116 bcm_gport_t mpls_port, 45117 bcm_cos_t cos, 45118 bcm_mpls_port_stat_t stat, 45119 uint64 val) 45120 { 45121 return bcm_mpls_port_stat_set( 45122 BCM_CONTROL(unit)->unit, 45123 mpls_port, 45124 cos, 45125 stat, 45126 val); 45127 } 45128 45129 int 45130 bcm_loop_mpls_port_stat_set32( 45131 int unit, 45132 bcm_gport_t mpls_port, 45133 bcm_cos_t cos, 45134 bcm_mpls_port_stat_t stat, 45135 uint32 val) 45136 { 45137 return bcm_mpls_port_stat_set32( 45138 BCM_CONTROL(unit)->unit, 45139 mpls_port, 45140 cos, 45141 stat, 45142 val); 45143 } 45144 45145 /* bcm_mpls_port_t_init not dispatchable */ 45146 45147 int 45148 bcm_loop_mpls_port_traverse( 45149 int unit, 45150 bcm_mpls_port_traverse_info_t additional_info, 45151 bcm_mpls_port_traverse_cb trav_fn, 45152 void * user_data) 45153 { 45154 return bcm_mpls_port_traverse( 45155 BCM_CONTROL(unit)->unit, 45156 additional_info, 45157 trav_fn, 45158 user_data); 45159 } 45160 45161 int 45162 bcm_loop_mpls_range_action_add( 45163 int unit, 45164 bcm_mpls_label_t label_low, 45165 bcm_mpls_label_t label_high, 45166 bcm_mpls_range_action_t * action) 45167 { 45168 return bcm_mpls_range_action_add( 45169 BCM_CONTROL(unit)->unit, 45170 label_low, 45171 label_high, 45172 action); 45173 } 45174 45175 int 45176 bcm_loop_mpls_range_action_get( 45177 int unit, 45178 bcm_mpls_label_t label_low, 45179 bcm_mpls_label_t label_high, 45180 bcm_mpls_range_action_t * action) 45181 { 45182 return bcm_mpls_range_action_get( 45183 BCM_CONTROL(unit)->unit, 45184 label_low, 45185 label_high, 45186 action); 45187 } 45188 45189 int 45190 bcm_loop_mpls_range_action_remove( 45191 int unit, 45192 bcm_mpls_label_t label_low, 45193 bcm_mpls_label_t label_high) 45194 { 45195 return bcm_mpls_range_action_remove( 45196 BCM_CONTROL(unit)->unit, 45197 label_low, 45198 label_high); 45199 } 45200 45201 /* bcm_mpls_range_action_t_init not dispatchable */ 45202 45203 int 45204 bcm_loop_mpls_special_label_egress_add( 45205 int unit, 45206 bcm_mpls_special_label_type_t label_type, 45207 bcm_mpls_special_label_t label_info) 45208 { 45209 return bcm_mpls_special_label_egress_add( 45210 BCM_CONTROL(unit)->unit, 45211 label_type, 45212 label_info); 45213 } 45214 45215 int 45216 bcm_loop_mpls_special_label_egress_delete( 45217 int unit, 45218 bcm_mpls_special_label_type_t label_type, 45219 bcm_mpls_special_label_t label_info) 45220 { 45221 return bcm_mpls_special_label_egress_delete( 45222 BCM_CONTROL(unit)->unit, 45223 label_type, 45224 label_info); 45225 } 45226 45227 int 45228 bcm_loop_mpls_special_label_egress_delete_all( 45229 int unit) 45230 { 45231 return bcm_mpls_special_label_egress_delete_all( 45232 BCM_CONTROL(unit)->unit); 45233 } 45234 45235 int 45236 bcm_loop_mpls_special_label_egress_get( 45237 int unit, 45238 bcm_mpls_special_label_type_t label_type, 45239 bcm_mpls_special_label_t * label_info) 45240 { 45241 return bcm_mpls_special_label_egress_get( 45242 BCM_CONTROL(unit)->unit, 45243 label_type, 45244 label_info); 45245 } 45246 45247 int 45248 bcm_loop_mpls_special_label_egress_traverse( 45249 int unit, 45250 bcm_mpls_special_label_egress_traverse_cb cb, 45251 void * user_data) 45252 { 45253 return bcm_mpls_special_label_egress_traverse( 45254 BCM_CONTROL(unit)->unit, 45255 cb, 45256 user_data); 45257 } 45258 45259 int 45260 bcm_loop_mpls_special_label_identifier_add( 45261 int unit, 45262 bcm_mpls_special_label_type_t label_type, 45263 bcm_mpls_special_label_t label_info) 45264 { 45265 return bcm_mpls_special_label_identifier_add( 45266 BCM_CONTROL(unit)->unit, 45267 label_type, 45268 label_info); 45269 } 45270 45271 int 45272 bcm_loop_mpls_special_label_identifier_delete( 45273 int unit, 45274 bcm_mpls_special_label_type_t label_type, 45275 bcm_mpls_special_label_t label_info) 45276 { 45277 return bcm_mpls_special_label_identifier_delete( 45278 BCM_CONTROL(unit)->unit, 45279 label_type, 45280 label_info); 45281 } 45282 45283 int 45284 bcm_loop_mpls_special_label_identifier_delete_all( 45285 int unit) 45286 { 45287 return bcm_mpls_special_label_identifier_delete_all( 45288 BCM_CONTROL(unit)->unit); 45289 } 45290 45291 int 45292 bcm_loop_mpls_special_label_identifier_get( 45293 int unit, 45294 bcm_mpls_special_label_type_t label_type, 45295 bcm_mpls_special_label_t * label_info) 45296 { 45297 return bcm_mpls_special_label_identifier_get( 45298 BCM_CONTROL(unit)->unit, 45299 label_type, 45300 label_info); 45301 } 45302 45303 int 45304 bcm_loop_mpls_special_label_identifier_traverse( 45305 int unit, 45306 bcm_mpls_special_label_identifier_traverse_cb cb, 45307 void * user_data) 45308 { 45309 return bcm_mpls_special_label_identifier_traverse( 45310 BCM_CONTROL(unit)->unit, 45311 cb, 45312 user_data); 45313 } 45314 45315 int 45316 bcm_loop_mpls_special_label_push_action_get( 45317 int unit, 45318 bcm_mpls_special_label_push_element_t * element, 45319 int * push_action) 45320 { 45321 return bcm_mpls_special_label_push_action_get( 45322 BCM_CONTROL(unit)->unit, 45323 element, 45324 push_action); 45325 } 45326 45327 int 45328 bcm_loop_mpls_special_label_push_action_set( 45329 int unit, 45330 bcm_mpls_special_label_push_element_t * element, 45331 int push_action) 45332 { 45333 return bcm_mpls_special_label_push_action_set( 45334 BCM_CONTROL(unit)->unit, 45335 element, 45336 push_action); 45337 } 45338 45339 /* bcm_mpls_special_label_push_element_t_init not dispatchable */ 45340 45341 /* bcm_mpls_special_label_t_init not dispatchable */ 45342 45343 /* bcm_mpls_stat_info_t_init not dispatchable */ 45344 45345 int 45346 bcm_loop_mpls_tunnel_initiator_clear( 45347 int unit, 45348 bcm_if_t intf) 45349 { 45350 return bcm_mpls_tunnel_initiator_clear( 45351 BCM_CONTROL(unit)->unit, 45352 intf); 45353 } 45354 45355 int 45356 bcm_loop_mpls_tunnel_initiator_clear_all( 45357 int unit) 45358 { 45359 return bcm_mpls_tunnel_initiator_clear_all( 45360 BCM_CONTROL(unit)->unit); 45361 } 45362 45363 int 45364 bcm_loop_mpls_tunnel_initiator_create( 45365 int unit, 45366 bcm_if_t intf, 45367 int num_labels, 45368 bcm_mpls_egress_label_t * label_array) 45369 { 45370 return bcm_mpls_tunnel_initiator_create( 45371 BCM_CONTROL(unit)->unit, 45372 intf, 45373 num_labels, 45374 label_array); 45375 } 45376 45377 int 45378 bcm_loop_mpls_tunnel_initiator_get( 45379 int unit, 45380 bcm_if_t intf, 45381 int label_max, 45382 bcm_mpls_egress_label_t * label_array, 45383 int * label_count) 45384 { 45385 return bcm_mpls_tunnel_initiator_get( 45386 BCM_CONTROL(unit)->unit, 45387 intf, 45388 label_max, 45389 label_array, 45390 label_count); 45391 } 45392 45393 int 45394 bcm_loop_mpls_tunnel_initiator_set( 45395 int unit, 45396 bcm_if_t intf, 45397 int num_labels, 45398 bcm_mpls_egress_label_t * label_array) 45399 { 45400 return bcm_mpls_tunnel_initiator_set( 45401 BCM_CONTROL(unit)->unit, 45402 intf, 45403 num_labels, 45404 label_array); 45405 } 45406 45407 int 45408 bcm_loop_mpls_tunnel_initiator_traverse( 45409 int unit, 45410 bcm_mpls_tunnel_initiator_traverse_info_t * additional_info, 45411 bcm_mpls_tunnel_initiator_traverse_cb cb, 45412 void * user_data) 45413 { 45414 return bcm_mpls_tunnel_initiator_traverse( 45415 BCM_CONTROL(unit)->unit, 45416 additional_info, 45417 cb, 45418 user_data); 45419 } 45420 45421 int 45422 bcm_loop_mpls_tunnel_label_counter_id_detach( 45423 int unit, 45424 bcm_if_t intf_id, 45425 uint32 stat_counter_id) 45426 { 45427 return bcm_mpls_tunnel_label_counter_id_detach( 45428 BCM_CONTROL(unit)->unit, 45429 intf_id, 45430 stat_counter_id); 45431 } 45432 45433 int 45434 bcm_loop_mpls_tunnel_label_counter_id_num_get( 45435 int unit, 45436 bcm_if_t intf_id, 45437 int * num_counters, 45438 uint32 * stat_counter_id) 45439 { 45440 return bcm_mpls_tunnel_label_counter_id_num_get( 45441 BCM_CONTROL(unit)->unit, 45442 intf_id, 45443 num_counters, 45444 stat_counter_id); 45445 } 45446 45447 int 45448 bcm_loop_mpls_tunnel_label_counter_id_stat_get( 45449 int unit, 45450 bcm_if_t intf_id, 45451 uint32 stat_counter_id, 45452 bcm_mpls_stat_info_t * stat_info) 45453 { 45454 return bcm_mpls_tunnel_label_counter_id_stat_get( 45455 BCM_CONTROL(unit)->unit, 45456 intf_id, 45457 stat_counter_id, 45458 stat_info); 45459 } 45460 45461 int 45462 bcm_loop_mpls_tunnel_label_counter_id_stat_set( 45463 int unit, 45464 bcm_if_t intf_id, 45465 uint32 stat_counter_id, 45466 bcm_mpls_stat_info_t * stat_info) 45467 { 45468 return bcm_mpls_tunnel_label_counter_id_stat_set( 45469 BCM_CONTROL(unit)->unit, 45470 intf_id, 45471 stat_counter_id, 45472 stat_info); 45473 } 45474 45475 int 45476 bcm_loop_mpls_tunnel_label_counter_id_stat_sync_get( 45477 int unit, 45478 bcm_if_t intf_id, 45479 uint32 stat_counter_id, 45480 bcm_mpls_stat_info_t * stat_info) 45481 { 45482 return bcm_mpls_tunnel_label_counter_id_stat_sync_get( 45483 BCM_CONTROL(unit)->unit, 45484 intf_id, 45485 stat_counter_id, 45486 stat_info); 45487 } 45488 45489 int 45490 bcm_loop_mpls_tunnel_stat_attach( 45491 int unit, 45492 bcm_if_t intf_id, 45493 uint32 stat_counter_id) 45494 { 45495 return bcm_mpls_tunnel_stat_attach( 45496 BCM_CONTROL(unit)->unit, 45497 intf_id, 45498 stat_counter_id); 45499 } 45500 45501 int 45502 bcm_loop_mpls_tunnel_stat_counter_get( 45503 int unit, 45504 bcm_if_t intf_id, 45505 bcm_mpls_stat_t stat, 45506 uint32 num_entries, 45507 uint32 * counter_indexes, 45508 bcm_stat_value_t * counter_values) 45509 { 45510 return bcm_mpls_tunnel_stat_counter_get( 45511 BCM_CONTROL(unit)->unit, 45512 intf_id, 45513 stat, 45514 num_entries, 45515 counter_indexes, 45516 counter_values); 45517 } 45518 45519 int 45520 bcm_loop_mpls_tunnel_stat_counter_set( 45521 int unit, 45522 bcm_if_t intf_id, 45523 bcm_mpls_stat_t stat, 45524 uint32 num_entries, 45525 uint32 * counter_indexes, 45526 bcm_stat_value_t * counter_values) 45527 { 45528 return bcm_mpls_tunnel_stat_counter_set( 45529 BCM_CONTROL(unit)->unit, 45530 intf_id, 45531 stat, 45532 num_entries, 45533 counter_indexes, 45534 counter_values); 45535 } 45536 45537 int 45538 bcm_loop_mpls_tunnel_stat_counter_sync_get( 45539 int unit, 45540 bcm_if_t intf_id, 45541 bcm_mpls_stat_t stat, 45542 uint32 num_entries, 45543 uint32 * counter_indexes, 45544 bcm_stat_value_t * counter_values) 45545 { 45546 return bcm_mpls_tunnel_stat_counter_sync_get( 45547 BCM_CONTROL(unit)->unit, 45548 intf_id, 45549 stat, 45550 num_entries, 45551 counter_indexes, 45552 counter_values); 45553 } 45554 45555 int 45556 bcm_loop_mpls_tunnel_stat_detach( 45557 int unit, 45558 bcm_if_t intf_id) 45559 { 45560 return bcm_mpls_tunnel_stat_detach( 45561 BCM_CONTROL(unit)->unit, 45562 intf_id); 45563 } 45564 45565 int 45566 bcm_loop_mpls_tunnel_stat_id_get( 45567 int unit, 45568 bcm_if_t intf_id, 45569 bcm_mpls_stat_t stat, 45570 uint32 * stat_counter_id) 45571 { 45572 return bcm_mpls_tunnel_stat_id_get( 45573 BCM_CONTROL(unit)->unit, 45574 intf_id, 45575 stat, 45576 stat_counter_id); 45577 } 45578 45579 int 45580 bcm_loop_mpls_tunnel_switch_add( 45581 int unit, 45582 bcm_mpls_tunnel_switch_t * info) 45583 { 45584 return bcm_mpls_tunnel_switch_add( 45585 BCM_CONTROL(unit)->unit, 45586 info); 45587 } 45588 45589 int 45590 bcm_loop_mpls_tunnel_switch_create( 45591 int unit, 45592 bcm_mpls_tunnel_switch_t * info) 45593 { 45594 return bcm_mpls_tunnel_switch_create( 45595 BCM_CONTROL(unit)->unit, 45596 info); 45597 } 45598 45599 int 45600 bcm_loop_mpls_tunnel_switch_delete( 45601 int unit, 45602 bcm_mpls_tunnel_switch_t * info) 45603 { 45604 return bcm_mpls_tunnel_switch_delete( 45605 BCM_CONTROL(unit)->unit, 45606 info); 45607 } 45608 45609 int 45610 bcm_loop_mpls_tunnel_switch_delete_all( 45611 int unit) 45612 { 45613 return bcm_mpls_tunnel_switch_delete_all( 45614 BCM_CONTROL(unit)->unit); 45615 } 45616 45617 int 45618 bcm_loop_mpls_tunnel_switch_get( 45619 int unit, 45620 bcm_mpls_tunnel_switch_t * info) 45621 { 45622 return bcm_mpls_tunnel_switch_get( 45623 BCM_CONTROL(unit)->unit, 45624 info); 45625 } 45626 45627 /* bcm_mpls_tunnel_switch_t_init not dispatchable */ 45628 45629 int 45630 bcm_loop_mpls_tunnel_switch_traverse( 45631 int unit, 45632 bcm_mpls_tunnel_switch_traverse_cb cb, 45633 void * user_data) 45634 { 45635 return bcm_mpls_tunnel_switch_traverse( 45636 BCM_CONTROL(unit)->unit, 45637 cb, 45638 user_data); 45639 } 45640 45641 /* bcm_mpls_vpn_config_t_init not dispatchable */ 45642 45643 int 45644 bcm_loop_mpls_vpn_id_create( 45645 int unit, 45646 bcm_mpls_vpn_config_t * info) 45647 { 45648 return bcm_mpls_vpn_id_create( 45649 BCM_CONTROL(unit)->unit, 45650 info); 45651 } 45652 45653 int 45654 bcm_loop_mpls_vpn_id_destroy( 45655 int unit, 45656 bcm_vpn_t vpn) 45657 { 45658 return bcm_mpls_vpn_id_destroy( 45659 BCM_CONTROL(unit)->unit, 45660 vpn); 45661 } 45662 45663 int 45664 bcm_loop_mpls_vpn_id_destroy_all( 45665 int unit) 45666 { 45667 return bcm_mpls_vpn_id_destroy_all( 45668 BCM_CONTROL(unit)->unit); 45669 } 45670 45671 int 45672 bcm_loop_mpls_vpn_id_get( 45673 int unit, 45674 bcm_vpn_t vpn, 45675 bcm_mpls_vpn_config_t * info) 45676 { 45677 return bcm_mpls_vpn_id_get( 45678 BCM_CONTROL(unit)->unit, 45679 vpn, 45680 info); 45681 } 45682 45683 int 45684 bcm_loop_mpls_vpn_traverse( 45685 int unit, 45686 bcm_mpls_vpn_traverse_cb cb, 45687 void * user_data) 45688 { 45689 return bcm_mpls_vpn_traverse( 45690 BCM_CONTROL(unit)->unit, 45691 cb, 45692 user_data); 45693 } 45694 45695 #endif /* INCLUDE_L3 */ 45696 45697 int 45698 bcm_loop_multicast_add( 45699 int unit, 45700 bcm_multicast_t group, 45701 uint32 flags, 45702 int nof_replications, 45703 bcm_multicast_replication_t * rep_array) 45704 { 45705 return bcm_multicast_add( 45706 BCM_CONTROL(unit)->unit, 45707 group, 45708 flags, 45709 nof_replications, 45710 rep_array); 45711 } 45712 45713 int 45714 bcm_loop_multicast_control_get( 45715 int unit, 45716 bcm_multicast_t group, 45717 bcm_multicast_control_t type, 45718 int * arg) 45719 { 45720 return bcm_multicast_control_get( 45721 BCM_CONTROL(unit)->unit, 45722 group, 45723 type, 45724 arg); 45725 } 45726 45727 int 45728 bcm_loop_multicast_control_set( 45729 int unit, 45730 bcm_multicast_t group, 45731 bcm_multicast_control_t type, 45732 int arg) 45733 { 45734 return bcm_multicast_control_set( 45735 BCM_CONTROL(unit)->unit, 45736 group, 45737 type, 45738 arg); 45739 } 45740 45741 int 45742 bcm_loop_multicast_create( 45743 int unit, 45744 uint32 flags, 45745 bcm_multicast_t * group) 45746 { 45747 return bcm_multicast_create( 45748 BCM_CONTROL(unit)->unit, 45749 flags, 45750 group); 45751 } 45752 45753 int 45754 bcm_loop_multicast_delete( 45755 int unit, 45756 bcm_multicast_t group, 45757 uint32 flags, 45758 int nof_replications, 45759 bcm_multicast_replication_t * rep_array) 45760 { 45761 return bcm_multicast_delete( 45762 BCM_CONTROL(unit)->unit, 45763 group, 45764 flags, 45765 nof_replications, 45766 rep_array); 45767 } 45768 45769 int 45770 bcm_loop_multicast_destroy( 45771 int unit, 45772 bcm_multicast_t group) 45773 { 45774 return bcm_multicast_destroy( 45775 BCM_CONTROL(unit)->unit, 45776 group); 45777 } 45778 45779 int 45780 bcm_loop_multicast_detach( 45781 int unit) 45782 { 45783 return bcm_multicast_detach( 45784 BCM_CONTROL(unit)->unit); 45785 } 45786 45787 int 45788 bcm_loop_multicast_egress_add( 45789 int unit, 45790 bcm_multicast_t group, 45791 bcm_gport_t port, 45792 bcm_if_t encap_id) 45793 { 45794 return bcm_multicast_egress_add( 45795 BCM_CONTROL(unit)->unit, 45796 group, 45797 port, 45798 encap_id); 45799 } 45800 45801 int 45802 bcm_loop_multicast_egress_delete( 45803 int unit, 45804 bcm_multicast_t group, 45805 bcm_gport_t port, 45806 bcm_if_t encap_id) 45807 { 45808 return bcm_multicast_egress_delete( 45809 BCM_CONTROL(unit)->unit, 45810 group, 45811 port, 45812 encap_id); 45813 } 45814 45815 int 45816 bcm_loop_multicast_egress_delete_all( 45817 int unit, 45818 bcm_multicast_t group) 45819 { 45820 return bcm_multicast_egress_delete_all( 45821 BCM_CONTROL(unit)->unit, 45822 group); 45823 } 45824 45825 int 45826 bcm_loop_multicast_egress_get( 45827 int unit, 45828 bcm_multicast_t group, 45829 int port_max, 45830 bcm_gport_t * port_array, 45831 bcm_if_t * encap_id_array, 45832 int * port_count) 45833 { 45834 return bcm_multicast_egress_get( 45835 BCM_CONTROL(unit)->unit, 45836 group, 45837 port_max, 45838 port_array, 45839 encap_id_array, 45840 port_count); 45841 } 45842 45843 int 45844 bcm_loop_multicast_egress_object_encap_get( 45845 int unit, 45846 bcm_multicast_t group, 45847 bcm_if_t intf, 45848 bcm_if_t * encap_id) 45849 { 45850 return bcm_multicast_egress_object_encap_get( 45851 BCM_CONTROL(unit)->unit, 45852 group, 45853 intf, 45854 encap_id); 45855 } 45856 45857 int 45858 bcm_loop_multicast_egress_set( 45859 int unit, 45860 bcm_multicast_t group, 45861 int port_count, 45862 bcm_gport_t * port_array, 45863 bcm_if_t * encap_id_array) 45864 { 45865 return bcm_multicast_egress_set( 45866 BCM_CONTROL(unit)->unit, 45867 group, 45868 port_count, 45869 port_array, 45870 encap_id_array); 45871 } 45872 45873 int 45874 bcm_loop_multicast_egress_subscriber_add( 45875 int unit, 45876 bcm_multicast_t group, 45877 bcm_gport_t port, 45878 bcm_if_t encap_id, 45879 bcm_gport_t subscriber_queue) 45880 { 45881 return bcm_multicast_egress_subscriber_add( 45882 BCM_CONTROL(unit)->unit, 45883 group, 45884 port, 45885 encap_id, 45886 subscriber_queue); 45887 } 45888 45889 int 45890 bcm_loop_multicast_egress_subscriber_delete( 45891 int unit, 45892 bcm_multicast_t group, 45893 bcm_gport_t port, 45894 bcm_if_t encap_id, 45895 bcm_gport_t subscriber_queue) 45896 { 45897 return bcm_multicast_egress_subscriber_delete( 45898 BCM_CONTROL(unit)->unit, 45899 group, 45900 port, 45901 encap_id, 45902 subscriber_queue); 45903 } 45904 45905 int 45906 bcm_loop_multicast_egress_subscriber_get( 45907 int unit, 45908 bcm_multicast_t group, 45909 int port_max, 45910 bcm_gport_t * port_array, 45911 bcm_if_t * encap_id_array, 45912 bcm_gport_t * subscriber_queue_array, 45913 int * port_count) 45914 { 45915 return bcm_multicast_egress_subscriber_get( 45916 BCM_CONTROL(unit)->unit, 45917 group, 45918 port_max, 45919 port_array, 45920 encap_id_array, 45921 subscriber_queue_array, 45922 port_count); 45923 } 45924 45925 int 45926 bcm_loop_multicast_egress_subscriber_qos_map_get( 45927 int unit, 45928 bcm_multicast_t group, 45929 bcm_gport_t port, 45930 bcm_gport_t subscriber_queue, 45931 int * qos_map_id) 45932 { 45933 return bcm_multicast_egress_subscriber_qos_map_get( 45934 BCM_CONTROL(unit)->unit, 45935 group, 45936 port, 45937 subscriber_queue, 45938 qos_map_id); 45939 } 45940 45941 int 45942 bcm_loop_multicast_egress_subscriber_qos_map_set( 45943 int unit, 45944 bcm_multicast_t group, 45945 bcm_gport_t port, 45946 bcm_gport_t subscriber_queue, 45947 int qos_map_id) 45948 { 45949 return bcm_multicast_egress_subscriber_qos_map_set( 45950 BCM_CONTROL(unit)->unit, 45951 group, 45952 port, 45953 subscriber_queue, 45954 qos_map_id); 45955 } 45956 45957 int 45958 bcm_loop_multicast_egress_subscriber_set( 45959 int unit, 45960 bcm_multicast_t group, 45961 int port_count, 45962 bcm_gport_t * port_array, 45963 bcm_if_t * encap_id_array, 45964 bcm_gport_t * subscriber_queue_array) 45965 { 45966 return bcm_multicast_egress_subscriber_set( 45967 BCM_CONTROL(unit)->unit, 45968 group, 45969 port_count, 45970 port_array, 45971 encap_id_array, 45972 subscriber_queue_array); 45973 } 45974 45975 int 45976 bcm_loop_multicast_encap_extension_create( 45977 int unit, 45978 uint32 flags, 45979 bcm_if_t * multicast_replication_index, 45980 int encap_extension_count, 45981 bcm_if_t * encap_extension_array) 45982 { 45983 return bcm_multicast_encap_extension_create( 45984 BCM_CONTROL(unit)->unit, 45985 flags, 45986 multicast_replication_index, 45987 encap_extension_count, 45988 encap_extension_array); 45989 } 45990 45991 int 45992 bcm_loop_multicast_encap_extension_delete_all( 45993 int unit) 45994 { 45995 return bcm_multicast_encap_extension_delete_all( 45996 BCM_CONTROL(unit)->unit); 45997 } 45998 45999 int 46000 bcm_loop_multicast_encap_extension_destroy( 46001 int unit, 46002 uint32 flags, 46003 bcm_if_t multicast_replication_index) 46004 { 46005 return bcm_multicast_encap_extension_destroy( 46006 BCM_CONTROL(unit)->unit, 46007 flags, 46008 multicast_replication_index); 46009 } 46010 46011 int 46012 bcm_loop_multicast_encap_extension_get( 46013 int unit, 46014 uint32 flags, 46015 bcm_if_t multicast_replication_index, 46016 int encap_max, 46017 bcm_if_t * encap_extension_array, 46018 int * encap_extension_count) 46019 { 46020 return bcm_multicast_encap_extension_get( 46021 BCM_CONTROL(unit)->unit, 46022 flags, 46023 multicast_replication_index, 46024 encap_max, 46025 encap_extension_array, 46026 encap_extension_count); 46027 } 46028 46029 int 46030 bcm_loop_multicast_encap_extension_traverse( 46031 int unit, 46032 bcm_multicast_encap_extension_traverse_cb trav_fn, 46033 void * user_data) 46034 { 46035 return bcm_multicast_encap_extension_traverse( 46036 BCM_CONTROL(unit)->unit, 46037 trav_fn, 46038 user_data); 46039 } 46040 46041 int 46042 bcm_loop_multicast_extender_encap_get( 46043 int unit, 46044 bcm_multicast_t group, 46045 bcm_gport_t port, 46046 bcm_gport_t extender_port_id, 46047 bcm_if_t * encap_id) 46048 { 46049 return bcm_multicast_extender_encap_get( 46050 BCM_CONTROL(unit)->unit, 46051 group, 46052 port, 46053 extender_port_id, 46054 encap_id); 46055 } 46056 46057 int 46058 bcm_loop_multicast_fabric_distribution_get( 46059 int unit, 46060 bcm_multicast_t group, 46061 bcm_fabric_distribution_t * ds_id) 46062 { 46063 return bcm_multicast_fabric_distribution_get( 46064 BCM_CONTROL(unit)->unit, 46065 group, 46066 ds_id); 46067 } 46068 46069 int 46070 bcm_loop_multicast_fabric_distribution_set( 46071 int unit, 46072 bcm_multicast_t group, 46073 bcm_fabric_distribution_t ds_id) 46074 { 46075 return bcm_multicast_fabric_distribution_set( 46076 BCM_CONTROL(unit)->unit, 46077 group, 46078 ds_id); 46079 } 46080 46081 int 46082 bcm_loop_multicast_get( 46083 int unit, 46084 bcm_multicast_t group, 46085 uint32 flags, 46086 int replication_max, 46087 bcm_multicast_replication_t * out_rep_array, 46088 int * rep_count) 46089 { 46090 return bcm_multicast_get( 46091 BCM_CONTROL(unit)->unit, 46092 group, 46093 flags, 46094 replication_max, 46095 out_rep_array, 46096 rep_count); 46097 } 46098 46099 int 46100 bcm_loop_multicast_group_free_range_get( 46101 int unit, 46102 uint32 type_flag, 46103 bcm_multicast_t * group_min, 46104 bcm_multicast_t * group_max) 46105 { 46106 return bcm_multicast_group_free_range_get( 46107 BCM_CONTROL(unit)->unit, 46108 type_flag, 46109 group_min, 46110 group_max); 46111 } 46112 46113 int 46114 bcm_loop_multicast_group_get( 46115 int unit, 46116 bcm_multicast_t group, 46117 uint32 * flags) 46118 { 46119 return bcm_multicast_group_get( 46120 BCM_CONTROL(unit)->unit, 46121 group, 46122 flags); 46123 } 46124 46125 int 46126 bcm_loop_multicast_group_is_free( 46127 int unit, 46128 bcm_multicast_t group) 46129 { 46130 return bcm_multicast_group_is_free( 46131 BCM_CONTROL(unit)->unit, 46132 group); 46133 } 46134 46135 int 46136 bcm_loop_multicast_group_traverse( 46137 int unit, 46138 bcm_multicast_group_traverse_cb_t trav_fn, 46139 uint32 flags, 46140 void * user_data) 46141 { 46142 return bcm_multicast_group_traverse( 46143 BCM_CONTROL(unit)->unit, 46144 trav_fn, 46145 flags, 46146 user_data); 46147 } 46148 46149 int 46150 bcm_loop_multicast_ingress_add( 46151 int unit, 46152 bcm_multicast_t group, 46153 bcm_gport_t port, 46154 bcm_if_t encap_id) 46155 { 46156 return bcm_multicast_ingress_add( 46157 BCM_CONTROL(unit)->unit, 46158 group, 46159 port, 46160 encap_id); 46161 } 46162 46163 int 46164 bcm_loop_multicast_ingress_delete( 46165 int unit, 46166 bcm_multicast_t group, 46167 bcm_gport_t port, 46168 bcm_if_t encap_id) 46169 { 46170 return bcm_multicast_ingress_delete( 46171 BCM_CONTROL(unit)->unit, 46172 group, 46173 port, 46174 encap_id); 46175 } 46176 46177 int 46178 bcm_loop_multicast_ingress_delete_all( 46179 int unit, 46180 bcm_multicast_t group) 46181 { 46182 return bcm_multicast_ingress_delete_all( 46183 BCM_CONTROL(unit)->unit, 46184 group); 46185 } 46186 46187 int 46188 bcm_loop_multicast_ingress_get( 46189 int unit, 46190 bcm_multicast_t group, 46191 int port_max, 46192 bcm_gport_t * port_array, 46193 bcm_if_t * encap_id_array, 46194 int * port_count) 46195 { 46196 return bcm_multicast_ingress_get( 46197 BCM_CONTROL(unit)->unit, 46198 group, 46199 port_max, 46200 port_array, 46201 encap_id_array, 46202 port_count); 46203 } 46204 46205 int 46206 bcm_loop_multicast_ingress_set( 46207 int unit, 46208 bcm_multicast_t group, 46209 int port_count, 46210 bcm_gport_t * port_array, 46211 bcm_if_t * encap_id_array) 46212 { 46213 return bcm_multicast_ingress_set( 46214 BCM_CONTROL(unit)->unit, 46215 group, 46216 port_count, 46217 port_array, 46218 encap_id_array); 46219 } 46220 46221 int 46222 bcm_loop_multicast_init( 46223 int unit) 46224 { 46225 return bcm_multicast_init( 46226 BCM_CONTROL(unit)->unit); 46227 } 46228 46229 int 46230 bcm_loop_multicast_l2_encap_get( 46231 int unit, 46232 bcm_multicast_t group, 46233 bcm_gport_t port, 46234 bcm_vlan_t vlan, 46235 bcm_if_t * encap_id) 46236 { 46237 return bcm_multicast_l2_encap_get( 46238 BCM_CONTROL(unit)->unit, 46239 group, 46240 port, 46241 vlan, 46242 encap_id); 46243 } 46244 46245 int 46246 bcm_loop_multicast_l2gre_encap_get( 46247 int unit, 46248 bcm_multicast_t group, 46249 bcm_gport_t port, 46250 bcm_gport_t l2gre_port_id, 46251 bcm_if_t * encap_id) 46252 { 46253 return bcm_multicast_l2gre_encap_get( 46254 BCM_CONTROL(unit)->unit, 46255 group, 46256 port, 46257 l2gre_port_id, 46258 encap_id); 46259 } 46260 46261 int 46262 bcm_loop_multicast_l3_encap_get( 46263 int unit, 46264 bcm_multicast_t group, 46265 bcm_gport_t port, 46266 bcm_if_t intf, 46267 bcm_if_t * encap_id) 46268 { 46269 return bcm_multicast_l3_encap_get( 46270 BCM_CONTROL(unit)->unit, 46271 group, 46272 port, 46273 intf, 46274 encap_id); 46275 } 46276 46277 int 46278 bcm_loop_multicast_mac_encap_get( 46279 int unit, 46280 bcm_multicast_t group, 46281 bcm_gport_t port, 46282 bcm_gport_t mac_port_id, 46283 bcm_if_t * encap_id) 46284 { 46285 return bcm_multicast_mac_encap_get( 46286 BCM_CONTROL(unit)->unit, 46287 group, 46288 port, 46289 mac_port_id, 46290 encap_id); 46291 } 46292 46293 int 46294 bcm_loop_multicast_mim_encap_get( 46295 int unit, 46296 bcm_multicast_t group, 46297 bcm_gport_t port, 46298 bcm_gport_t mim_port_id, 46299 bcm_if_t * encap_id) 46300 { 46301 return bcm_multicast_mim_encap_get( 46302 BCM_CONTROL(unit)->unit, 46303 group, 46304 port, 46305 mim_port_id, 46306 encap_id); 46307 } 46308 46309 int 46310 bcm_loop_multicast_multi_alloc( 46311 int unit, 46312 bcm_multicast_multi_info_t mc_multi_info, 46313 bcm_multicast_t * base_mc_group) 46314 { 46315 return bcm_multicast_multi_alloc( 46316 BCM_CONTROL(unit)->unit, 46317 mc_multi_info, 46318 base_mc_group); 46319 } 46320 46321 int 46322 bcm_loop_multicast_multi_free( 46323 int unit, 46324 bcm_multicast_t base_mc_group) 46325 { 46326 return bcm_multicast_multi_free( 46327 BCM_CONTROL(unit)->unit, 46328 base_mc_group); 46329 } 46330 46331 /* bcm_multicast_multi_info_t_init not dispatchable */ 46332 46333 int 46334 bcm_loop_multicast_niv_encap_get( 46335 int unit, 46336 bcm_multicast_t group, 46337 bcm_gport_t port, 46338 bcm_gport_t niv_port_id, 46339 bcm_if_t * encap_id) 46340 { 46341 return bcm_multicast_niv_encap_get( 46342 BCM_CONTROL(unit)->unit, 46343 group, 46344 port, 46345 niv_port_id, 46346 encap_id); 46347 } 46348 46349 int 46350 bcm_loop_multicast_repl_get( 46351 int unit, 46352 int index, 46353 bcm_port_t port, 46354 bcm_vlan_vector_t vlan_vec) 46355 { 46356 return bcm_multicast_repl_get( 46357 BCM_CONTROL(unit)->unit, 46358 index, 46359 port, 46360 vlan_vec); 46361 } 46362 46363 int 46364 bcm_loop_multicast_repl_set( 46365 int unit, 46366 int mc_index, 46367 bcm_port_t port, 46368 bcm_vlan_vector_t vlan_vec) 46369 { 46370 return bcm_multicast_repl_set( 46371 BCM_CONTROL(unit)->unit, 46372 mc_index, 46373 port, 46374 vlan_vec); 46375 } 46376 46377 /* bcm_multicast_replication_t_init not dispatchable */ 46378 46379 int 46380 bcm_loop_multicast_set( 46381 int unit, 46382 bcm_multicast_t group, 46383 uint32 flags, 46384 int nof_replications, 46385 bcm_multicast_replication_t * rep_array) 46386 { 46387 return bcm_multicast_set( 46388 BCM_CONTROL(unit)->unit, 46389 group, 46390 flags, 46391 nof_replications, 46392 rep_array); 46393 } 46394 46395 int 46396 bcm_loop_multicast_stat_control_get( 46397 int unit, 46398 bcm_core_t core_id, 46399 uint32 flags, 46400 int command_id, 46401 bcm_multicast_stat_control_type_t type, 46402 int * arg) 46403 { 46404 return bcm_multicast_stat_control_get( 46405 BCM_CONTROL(unit)->unit, 46406 core_id, 46407 flags, 46408 command_id, 46409 type, 46410 arg); 46411 } 46412 46413 int 46414 bcm_loop_multicast_stat_control_set( 46415 int unit, 46416 bcm_core_t core_id, 46417 uint32 flags, 46418 int command_id, 46419 bcm_multicast_stat_control_type_t type, 46420 int arg) 46421 { 46422 return bcm_multicast_stat_control_set( 46423 BCM_CONTROL(unit)->unit, 46424 core_id, 46425 flags, 46426 command_id, 46427 type, 46428 arg); 46429 } 46430 46431 int 46432 bcm_loop_multicast_subport_encap_get( 46433 int unit, 46434 bcm_multicast_t group, 46435 bcm_gport_t port, 46436 bcm_gport_t subport, 46437 bcm_if_t * encap_id) 46438 { 46439 return bcm_multicast_subport_encap_get( 46440 BCM_CONTROL(unit)->unit, 46441 group, 46442 port, 46443 subport, 46444 encap_id); 46445 } 46446 46447 int 46448 bcm_loop_multicast_trill_encap_get( 46449 int unit, 46450 bcm_multicast_t group, 46451 bcm_gport_t port, 46452 bcm_if_t intf, 46453 bcm_if_t * encap_id) 46454 { 46455 return bcm_multicast_trill_encap_get( 46456 BCM_CONTROL(unit)->unit, 46457 group, 46458 port, 46459 intf, 46460 encap_id); 46461 } 46462 46463 int 46464 bcm_loop_multicast_vlan_encap_get( 46465 int unit, 46466 bcm_multicast_t group, 46467 bcm_gport_t port, 46468 bcm_gport_t vlan_port_id, 46469 bcm_if_t * encap_id) 46470 { 46471 return bcm_multicast_vlan_encap_get( 46472 BCM_CONTROL(unit)->unit, 46473 group, 46474 port, 46475 vlan_port_id, 46476 encap_id); 46477 } 46478 46479 int 46480 bcm_loop_multicast_vpls_encap_get( 46481 int unit, 46482 bcm_multicast_t group, 46483 bcm_gport_t port, 46484 bcm_gport_t mpls_port_id, 46485 bcm_if_t * encap_id) 46486 { 46487 return bcm_multicast_vpls_encap_get( 46488 BCM_CONTROL(unit)->unit, 46489 group, 46490 port, 46491 mpls_port_id, 46492 encap_id); 46493 } 46494 46495 int 46496 bcm_loop_multicast_vxlan_encap_get( 46497 int unit, 46498 bcm_multicast_t group, 46499 bcm_gport_t port, 46500 bcm_gport_t vxlan_port_id, 46501 bcm_if_t * encap_id) 46502 { 46503 return bcm_multicast_vxlan_encap_get( 46504 BCM_CONTROL(unit)->unit, 46505 group, 46506 port, 46507 vxlan_port_id, 46508 encap_id); 46509 } 46510 46511 int 46512 bcm_loop_multicast_wlan_encap_get( 46513 int unit, 46514 bcm_multicast_t group, 46515 bcm_gport_t port, 46516 bcm_gport_t wlan_port_id, 46517 bcm_if_t * encap_id) 46518 { 46519 return bcm_multicast_wlan_encap_get( 46520 BCM_CONTROL(unit)->unit, 46521 group, 46522 port, 46523 wlan_port_id, 46524 encap_id); 46525 } 46526 46527 #ifdef INCLUDE_L3 46528 46529 int 46530 bcm_loop_niv_cleanup( 46531 int unit) 46532 { 46533 return bcm_niv_cleanup( 46534 BCM_CONTROL(unit)->unit); 46535 } 46536 46537 int 46538 bcm_loop_niv_egress_add( 46539 int unit, 46540 bcm_gport_t niv_port, 46541 bcm_niv_egress_t * niv_egress) 46542 { 46543 return bcm_niv_egress_add( 46544 BCM_CONTROL(unit)->unit, 46545 niv_port, 46546 niv_egress); 46547 } 46548 46549 int 46550 bcm_loop_niv_egress_delete( 46551 int unit, 46552 bcm_gport_t niv_port, 46553 bcm_niv_egress_t * niv_egress) 46554 { 46555 return bcm_niv_egress_delete( 46556 BCM_CONTROL(unit)->unit, 46557 niv_port, 46558 niv_egress); 46559 } 46560 46561 int 46562 bcm_loop_niv_egress_delete_all( 46563 int unit, 46564 bcm_gport_t niv_port) 46565 { 46566 return bcm_niv_egress_delete_all( 46567 BCM_CONTROL(unit)->unit, 46568 niv_port); 46569 } 46570 46571 int 46572 bcm_loop_niv_egress_get( 46573 int unit, 46574 bcm_gport_t niv_port, 46575 int array_size, 46576 bcm_niv_egress_t * niv_egress_array, 46577 int * count) 46578 { 46579 return bcm_niv_egress_get( 46580 BCM_CONTROL(unit)->unit, 46581 niv_port, 46582 array_size, 46583 niv_egress_array, 46584 count); 46585 } 46586 46587 int 46588 bcm_loop_niv_egress_set( 46589 int unit, 46590 bcm_gport_t niv_port, 46591 int array_size, 46592 bcm_niv_egress_t * niv_egress_array) 46593 { 46594 return bcm_niv_egress_set( 46595 BCM_CONTROL(unit)->unit, 46596 niv_port, 46597 array_size, 46598 niv_egress_array); 46599 } 46600 46601 /* bcm_niv_egress_t_init not dispatchable */ 46602 46603 int 46604 bcm_loop_niv_forward_add( 46605 int unit, 46606 bcm_niv_forward_t * iv_fwd_entry) 46607 { 46608 return bcm_niv_forward_add( 46609 BCM_CONTROL(unit)->unit, 46610 iv_fwd_entry); 46611 } 46612 46613 int 46614 bcm_loop_niv_forward_delete( 46615 int unit, 46616 bcm_niv_forward_t * iv_fwd_entry) 46617 { 46618 return bcm_niv_forward_delete( 46619 BCM_CONTROL(unit)->unit, 46620 iv_fwd_entry); 46621 } 46622 46623 int 46624 bcm_loop_niv_forward_delete_all( 46625 int unit) 46626 { 46627 return bcm_niv_forward_delete_all( 46628 BCM_CONTROL(unit)->unit); 46629 } 46630 46631 int 46632 bcm_loop_niv_forward_get( 46633 int unit, 46634 bcm_niv_forward_t * iv_fwd_entry) 46635 { 46636 return bcm_niv_forward_get( 46637 BCM_CONTROL(unit)->unit, 46638 iv_fwd_entry); 46639 } 46640 46641 /* bcm_niv_forward_t_init not dispatchable */ 46642 46643 int 46644 bcm_loop_niv_forward_traverse( 46645 int unit, 46646 bcm_niv_forward_traverse_cb cb, 46647 void * user_data) 46648 { 46649 return bcm_niv_forward_traverse( 46650 BCM_CONTROL(unit)->unit, 46651 cb, 46652 user_data); 46653 } 46654 46655 int 46656 bcm_loop_niv_init( 46657 int unit) 46658 { 46659 return bcm_niv_init( 46660 BCM_CONTROL(unit)->unit); 46661 } 46662 46663 int 46664 bcm_loop_niv_port_add( 46665 int unit, 46666 bcm_niv_port_t * niv_port) 46667 { 46668 return bcm_niv_port_add( 46669 BCM_CONTROL(unit)->unit, 46670 niv_port); 46671 } 46672 46673 int 46674 bcm_loop_niv_port_delete( 46675 int unit, 46676 bcm_gport_t niv_port_id) 46677 { 46678 return bcm_niv_port_delete( 46679 BCM_CONTROL(unit)->unit, 46680 niv_port_id); 46681 } 46682 46683 int 46684 bcm_loop_niv_port_delete_all( 46685 int unit) 46686 { 46687 return bcm_niv_port_delete_all( 46688 BCM_CONTROL(unit)->unit); 46689 } 46690 46691 int 46692 bcm_loop_niv_port_get( 46693 int unit, 46694 bcm_niv_port_t * niv_port) 46695 { 46696 return bcm_niv_port_get( 46697 BCM_CONTROL(unit)->unit, 46698 niv_port); 46699 } 46700 46701 /* bcm_niv_port_t_init not dispatchable */ 46702 46703 int 46704 bcm_loop_niv_port_traverse( 46705 int unit, 46706 bcm_niv_port_traverse_cb cb, 46707 void * user_data) 46708 { 46709 return bcm_niv_port_traverse( 46710 BCM_CONTROL(unit)->unit, 46711 cb, 46712 user_data); 46713 } 46714 46715 /* bcm_oam_action_key_t_init not dispatchable */ 46716 46717 /* bcm_oam_action_result_t_init not dispatchable */ 46718 46719 #endif /* INCLUDE_L3 */ 46720 46721 int 46722 bcm_loop_oam_ais_add( 46723 int unit, 46724 bcm_oam_ais_t * ais_ptr) 46725 { 46726 return bcm_oam_ais_add( 46727 BCM_CONTROL(unit)->unit, 46728 ais_ptr); 46729 } 46730 46731 int 46732 bcm_loop_oam_ais_delete( 46733 int unit, 46734 bcm_oam_ais_t * ais_ptr) 46735 { 46736 return bcm_oam_ais_delete( 46737 BCM_CONTROL(unit)->unit, 46738 ais_ptr); 46739 } 46740 46741 int 46742 bcm_loop_oam_ais_get( 46743 int unit, 46744 bcm_oam_ais_t * ais_ptr) 46745 { 46746 return bcm_oam_ais_get( 46747 BCM_CONTROL(unit)->unit, 46748 ais_ptr); 46749 } 46750 46751 /* bcm_oam_ais_t_init not dispatchable */ 46752 46753 int 46754 bcm_loop_oam_control_get( 46755 int unit, 46756 bcm_oam_control_type_t type, 46757 uint64 * arg) 46758 { 46759 return bcm_oam_control_get( 46760 BCM_CONTROL(unit)->unit, 46761 type, 46762 arg); 46763 } 46764 46765 int 46766 bcm_loop_oam_control_indexed_get( 46767 int unit, 46768 bcm_oam_control_key_t key, 46769 uint64 * arg) 46770 { 46771 return bcm_oam_control_indexed_get( 46772 BCM_CONTROL(unit)->unit, 46773 key, 46774 arg); 46775 } 46776 46777 int 46778 bcm_loop_oam_control_indexed_set( 46779 int unit, 46780 bcm_oam_control_key_t key, 46781 uint64 arg) 46782 { 46783 return bcm_oam_control_indexed_set( 46784 BCM_CONTROL(unit)->unit, 46785 key, 46786 arg); 46787 } 46788 46789 int 46790 bcm_loop_oam_control_set( 46791 int unit, 46792 bcm_oam_control_type_t type, 46793 uint64 arg) 46794 { 46795 return bcm_oam_control_set( 46796 BCM_CONTROL(unit)->unit, 46797 type, 46798 arg); 46799 } 46800 46801 int 46802 bcm_loop_oam_csf_add( 46803 int unit, 46804 bcm_oam_csf_t * csf_ptr) 46805 { 46806 return bcm_oam_csf_add( 46807 BCM_CONTROL(unit)->unit, 46808 csf_ptr); 46809 } 46810 46811 int 46812 bcm_loop_oam_csf_delete( 46813 int unit, 46814 bcm_oam_csf_t * csf_ptr) 46815 { 46816 return bcm_oam_csf_delete( 46817 BCM_CONTROL(unit)->unit, 46818 csf_ptr); 46819 } 46820 46821 int 46822 bcm_loop_oam_csf_get( 46823 int unit, 46824 bcm_oam_csf_t * csf_ptr) 46825 { 46826 return bcm_oam_csf_get( 46827 BCM_CONTROL(unit)->unit, 46828 csf_ptr); 46829 } 46830 46831 /* bcm_oam_csf_t_init not dispatchable */ 46832 46833 int 46834 bcm_loop_oam_delay_add( 46835 int unit, 46836 bcm_oam_delay_t * delay_ptr) 46837 { 46838 return bcm_oam_delay_add( 46839 BCM_CONTROL(unit)->unit, 46840 delay_ptr); 46841 } 46842 46843 int 46844 bcm_loop_oam_delay_delete( 46845 int unit, 46846 bcm_oam_delay_t * delay_ptr) 46847 { 46848 return bcm_oam_delay_delete( 46849 BCM_CONTROL(unit)->unit, 46850 delay_ptr); 46851 } 46852 46853 int 46854 bcm_loop_oam_delay_get( 46855 int unit, 46856 bcm_oam_delay_t * delay_ptr) 46857 { 46858 return bcm_oam_delay_get( 46859 BCM_CONTROL(unit)->unit, 46860 delay_ptr); 46861 } 46862 46863 /* bcm_oam_delay_t_init not dispatchable */ 46864 46865 int 46866 bcm_loop_oam_detach( 46867 int unit) 46868 { 46869 return bcm_oam_detach( 46870 BCM_CONTROL(unit)->unit); 46871 } 46872 46873 int 46874 bcm_loop_oam_endpoint_action_set( 46875 int unit, 46876 bcm_oam_endpoint_t id, 46877 bcm_oam_endpoint_action_t * action) 46878 { 46879 return bcm_oam_endpoint_action_set( 46880 BCM_CONTROL(unit)->unit, 46881 id, 46882 action); 46883 } 46884 46885 /* bcm_oam_endpoint_action_t_init not dispatchable */ 46886 46887 int 46888 bcm_loop_oam_endpoint_create( 46889 int unit, 46890 bcm_oam_endpoint_info_t * endpoint_info) 46891 { 46892 return bcm_oam_endpoint_create( 46893 BCM_CONTROL(unit)->unit, 46894 endpoint_info); 46895 } 46896 46897 int 46898 bcm_loop_oam_endpoint_destroy( 46899 int unit, 46900 bcm_oam_endpoint_t endpoint) 46901 { 46902 return bcm_oam_endpoint_destroy( 46903 BCM_CONTROL(unit)->unit, 46904 endpoint); 46905 } 46906 46907 int 46908 bcm_loop_oam_endpoint_destroy_all( 46909 int unit, 46910 bcm_oam_group_t group) 46911 { 46912 return bcm_oam_endpoint_destroy_all( 46913 BCM_CONTROL(unit)->unit, 46914 group); 46915 } 46916 46917 int 46918 bcm_loop_oam_endpoint_egress_intf_egress_attach( 46919 int unit, 46920 bcm_oam_endpoint_t endpoint_id, 46921 bcm_if_t egress_intf) 46922 { 46923 return bcm_oam_endpoint_egress_intf_egress_attach( 46924 BCM_CONTROL(unit)->unit, 46925 endpoint_id, 46926 egress_intf); 46927 } 46928 46929 int 46930 bcm_loop_oam_endpoint_egress_intf_egress_attach_get( 46931 int unit, 46932 bcm_oam_endpoint_t endpoint_id, 46933 int max_count, 46934 bcm_if_t * egress_intf, 46935 int * count) 46936 { 46937 return bcm_oam_endpoint_egress_intf_egress_attach_get( 46938 BCM_CONTROL(unit)->unit, 46939 endpoint_id, 46940 max_count, 46941 egress_intf, 46942 count); 46943 } 46944 46945 int 46946 bcm_loop_oam_endpoint_egress_intf_egress_detach( 46947 int unit, 46948 bcm_oam_endpoint_t endpoint_id, 46949 bcm_if_t egress_intf) 46950 { 46951 return bcm_oam_endpoint_egress_intf_egress_detach( 46952 BCM_CONTROL(unit)->unit, 46953 endpoint_id, 46954 egress_intf); 46955 } 46956 46957 int 46958 bcm_loop_oam_endpoint_faults_multi_get( 46959 int unit, 46960 uint32 flags, 46961 bcm_oam_protocol_type_t endpoint_protocol, 46962 uint32 max_endpoints, 46963 bcm_oam_endpoint_fault_t * faults, 46964 uint32 * endpoint_count) 46965 { 46966 return bcm_oam_endpoint_faults_multi_get( 46967 BCM_CONTROL(unit)->unit, 46968 flags, 46969 endpoint_protocol, 46970 max_endpoints, 46971 faults, 46972 endpoint_count); 46973 } 46974 46975 int 46976 bcm_loop_oam_endpoint_get( 46977 int unit, 46978 bcm_oam_endpoint_t endpoint, 46979 bcm_oam_endpoint_info_t * endpoint_info) 46980 { 46981 return bcm_oam_endpoint_get( 46982 BCM_CONTROL(unit)->unit, 46983 endpoint, 46984 endpoint_info); 46985 } 46986 46987 int 46988 bcm_loop_oam_endpoint_gport_egress_attach( 46989 int unit, 46990 bcm_oam_endpoint_t endpoint, 46991 bcm_gport_t gport) 46992 { 46993 return bcm_oam_endpoint_gport_egress_attach( 46994 BCM_CONTROL(unit)->unit, 46995 endpoint, 46996 gport); 46997 } 46998 46999 int 47000 bcm_loop_oam_endpoint_gport_egress_attach_get( 47001 int unit, 47002 bcm_oam_endpoint_t endpoint, 47003 int max_count, 47004 bcm_gport_t * gport, 47005 int * count) 47006 { 47007 return bcm_oam_endpoint_gport_egress_attach_get( 47008 BCM_CONTROL(unit)->unit, 47009 endpoint, 47010 max_count, 47011 gport, 47012 count); 47013 } 47014 47015 int 47016 bcm_loop_oam_endpoint_gport_egress_detach( 47017 int unit, 47018 bcm_oam_endpoint_t endpoint, 47019 bcm_gport_t gport) 47020 { 47021 return bcm_oam_endpoint_gport_egress_detach( 47022 BCM_CONTROL(unit)->unit, 47023 endpoint, 47024 gport); 47025 } 47026 47027 /* bcm_oam_endpoint_info_t_init not dispatchable */ 47028 47029 int 47030 bcm_loop_oam_endpoint_traverse( 47031 int unit, 47032 bcm_oam_group_t group, 47033 bcm_oam_endpoint_traverse_cb cb, 47034 void * user_data) 47035 { 47036 return bcm_oam_endpoint_traverse( 47037 BCM_CONTROL(unit)->unit, 47038 group, 47039 cb, 47040 user_data); 47041 } 47042 47043 int 47044 bcm_loop_oam_event_register( 47045 int unit, 47046 bcm_oam_event_types_t event_types, 47047 bcm_oam_event_cb cb, 47048 void * user_data) 47049 { 47050 return bcm_oam_event_register( 47051 BCM_CONTROL(unit)->unit, 47052 event_types, 47053 cb, 47054 user_data); 47055 } 47056 47057 int 47058 bcm_loop_oam_event_unregister( 47059 int unit, 47060 bcm_oam_event_types_t event_types, 47061 bcm_oam_event_cb cb) 47062 { 47063 return bcm_oam_event_unregister( 47064 BCM_CONTROL(unit)->unit, 47065 event_types, 47066 cb); 47067 } 47068 47069 int 47070 bcm_loop_oam_group_create( 47071 int unit, 47072 bcm_oam_group_info_t * group_info) 47073 { 47074 return bcm_oam_group_create( 47075 BCM_CONTROL(unit)->unit, 47076 group_info); 47077 } 47078 47079 int 47080 bcm_loop_oam_group_destroy( 47081 int unit, 47082 bcm_oam_group_t group) 47083 { 47084 return bcm_oam_group_destroy( 47085 BCM_CONTROL(unit)->unit, 47086 group); 47087 } 47088 47089 int 47090 bcm_loop_oam_group_destroy_all( 47091 int unit) 47092 { 47093 return bcm_oam_group_destroy_all( 47094 BCM_CONTROL(unit)->unit); 47095 } 47096 47097 int 47098 bcm_loop_oam_group_get( 47099 int unit, 47100 bcm_oam_group_t group, 47101 bcm_oam_group_info_t * group_info) 47102 { 47103 return bcm_oam_group_get( 47104 BCM_CONTROL(unit)->unit, 47105 group, 47106 group_info); 47107 } 47108 47109 /* bcm_oam_group_info_t_init not dispatchable */ 47110 47111 int 47112 bcm_loop_oam_group_traverse( 47113 int unit, 47114 bcm_oam_group_traverse_cb cb, 47115 void * user_data) 47116 { 47117 return bcm_oam_group_traverse( 47118 BCM_CONTROL(unit)->unit, 47119 cb, 47120 user_data); 47121 } 47122 47123 int 47124 bcm_loop_oam_init( 47125 int unit) 47126 { 47127 return bcm_oam_init( 47128 BCM_CONTROL(unit)->unit); 47129 } 47130 47131 int 47132 bcm_loop_oam_lif_profile_get( 47133 int unit, 47134 uint32 flags, 47135 bcm_gport_t gport, 47136 bcm_oam_profile_t * ingress_oam_profile, 47137 bcm_oam_profile_t * egress_oam_profile) 47138 { 47139 return bcm_oam_lif_profile_get( 47140 BCM_CONTROL(unit)->unit, 47141 flags, 47142 gport, 47143 ingress_oam_profile, 47144 egress_oam_profile); 47145 } 47146 47147 int 47148 bcm_loop_oam_lif_profile_set( 47149 int unit, 47150 uint32 flags, 47151 bcm_gport_t gport, 47152 bcm_oam_profile_t ingress_oam_profile, 47153 bcm_oam_profile_t egress_oam_profile) 47154 { 47155 return bcm_oam_lif_profile_set( 47156 BCM_CONTROL(unit)->unit, 47157 flags, 47158 gport, 47159 ingress_oam_profile, 47160 egress_oam_profile); 47161 } 47162 47163 int 47164 bcm_loop_oam_lookup_enable_get( 47165 int unit, 47166 bcm_oam_lookup_type_t type, 47167 bcm_oam_conditions_t * condition) 47168 { 47169 return bcm_oam_lookup_enable_get( 47170 BCM_CONTROL(unit)->unit, 47171 type, 47172 condition); 47173 } 47174 47175 int 47176 bcm_loop_oam_lookup_enable_multi_set( 47177 int unit, 47178 bcm_oam_lookup_types_t types, 47179 bcm_oam_conditions_t conditions, 47180 int enable) 47181 { 47182 return bcm_oam_lookup_enable_multi_set( 47183 BCM_CONTROL(unit)->unit, 47184 types, 47185 conditions, 47186 enable); 47187 } 47188 47189 int 47190 bcm_loop_oam_lookup_enable_set( 47191 int unit, 47192 bcm_oam_lookup_type_t type, 47193 bcm_oam_condition_t condition, 47194 int enable) 47195 { 47196 return bcm_oam_lookup_enable_set( 47197 BCM_CONTROL(unit)->unit, 47198 type, 47199 condition, 47200 enable); 47201 } 47202 47203 int 47204 bcm_loop_oam_loopback_add( 47205 int unit, 47206 bcm_oam_loopback_t * loopback_ptr) 47207 { 47208 return bcm_oam_loopback_add( 47209 BCM_CONTROL(unit)->unit, 47210 loopback_ptr); 47211 } 47212 47213 int 47214 bcm_loop_oam_loopback_delete( 47215 int unit, 47216 bcm_oam_loopback_t * loopback_ptr) 47217 { 47218 return bcm_oam_loopback_delete( 47219 BCM_CONTROL(unit)->unit, 47220 loopback_ptr); 47221 } 47222 47223 int 47224 bcm_loop_oam_loopback_get( 47225 int unit, 47226 bcm_oam_loopback_t * loopback_ptr) 47227 { 47228 return bcm_oam_loopback_get( 47229 BCM_CONTROL(unit)->unit, 47230 loopback_ptr); 47231 } 47232 47233 /* bcm_oam_loopback_t_init not dispatchable */ 47234 47235 int 47236 bcm_loop_oam_loss_add( 47237 int unit, 47238 bcm_oam_loss_t * loss_ptr) 47239 { 47240 return bcm_oam_loss_add( 47241 BCM_CONTROL(unit)->unit, 47242 loss_ptr); 47243 } 47244 47245 int 47246 bcm_loop_oam_loss_delete( 47247 int unit, 47248 bcm_oam_loss_t * loss_ptr) 47249 { 47250 return bcm_oam_loss_delete( 47251 BCM_CONTROL(unit)->unit, 47252 loss_ptr); 47253 } 47254 47255 int 47256 bcm_loop_oam_loss_get( 47257 int unit, 47258 bcm_oam_loss_t * loss_ptr) 47259 { 47260 return bcm_oam_loss_get( 47261 BCM_CONTROL(unit)->unit, 47262 loss_ptr); 47263 } 47264 47265 /* bcm_oam_loss_t_init not dispatchable */ 47266 47267 int 47268 bcm_loop_oam_mpls_tp_channel_type_rx_delete( 47269 int unit, 47270 bcm_oam_mpls_tp_channel_type_t channel_type, 47271 int num_values, 47272 int * list_of_values) 47273 { 47274 return bcm_oam_mpls_tp_channel_type_rx_delete( 47275 BCM_CONTROL(unit)->unit, 47276 channel_type, 47277 num_values, 47278 list_of_values); 47279 } 47280 47281 int 47282 bcm_loop_oam_mpls_tp_channel_type_rx_get( 47283 int unit, 47284 bcm_oam_mpls_tp_channel_type_t channel_type, 47285 int num_values, 47286 int * list_of_values, 47287 int * value_count) 47288 { 47289 return bcm_oam_mpls_tp_channel_type_rx_get( 47290 BCM_CONTROL(unit)->unit, 47291 channel_type, 47292 num_values, 47293 list_of_values, 47294 value_count); 47295 } 47296 47297 int 47298 bcm_loop_oam_mpls_tp_channel_type_rx_set( 47299 int unit, 47300 bcm_oam_mpls_tp_channel_type_t channel_type, 47301 int num_values, 47302 int * list_of_values) 47303 { 47304 return bcm_oam_mpls_tp_channel_type_rx_set( 47305 BCM_CONTROL(unit)->unit, 47306 channel_type, 47307 num_values, 47308 list_of_values); 47309 } 47310 47311 int 47312 bcm_loop_oam_mpls_tp_channel_type_tx_delete( 47313 int unit, 47314 bcm_oam_mpls_tp_channel_type_t channel_type, 47315 int value) 47316 { 47317 return bcm_oam_mpls_tp_channel_type_tx_delete( 47318 BCM_CONTROL(unit)->unit, 47319 channel_type, 47320 value); 47321 } 47322 47323 int 47324 bcm_loop_oam_mpls_tp_channel_type_tx_get( 47325 int unit, 47326 bcm_oam_mpls_tp_channel_type_t channel_type, 47327 int * value) 47328 { 47329 return bcm_oam_mpls_tp_channel_type_tx_get( 47330 BCM_CONTROL(unit)->unit, 47331 channel_type, 47332 value); 47333 } 47334 47335 int 47336 bcm_loop_oam_mpls_tp_channel_type_tx_set( 47337 int unit, 47338 bcm_oam_mpls_tp_channel_type_t channel_type, 47339 int value) 47340 { 47341 return bcm_oam_mpls_tp_channel_type_tx_set( 47342 BCM_CONTROL(unit)->unit, 47343 channel_type, 47344 value); 47345 } 47346 47347 int 47348 bcm_loop_oam_opcode_group_get( 47349 int unit, 47350 bcm_oam_protocol_type_t protocol, 47351 bcm_oam_opcode_t opcode, 47352 uint8 * opcode_group) 47353 { 47354 return bcm_oam_opcode_group_get( 47355 BCM_CONTROL(unit)->unit, 47356 protocol, 47357 opcode, 47358 opcode_group); 47359 } 47360 47361 int 47362 bcm_loop_oam_opcode_group_set( 47363 int unit, 47364 bcm_oam_protocol_type_t protocol, 47365 bcm_oam_opcodes_t opcodes, 47366 uint8 opcode_group) 47367 { 47368 return bcm_oam_opcode_group_set( 47369 BCM_CONTROL(unit)->unit, 47370 protocol, 47371 opcodes, 47372 opcode_group); 47373 } 47374 47375 int 47376 bcm_loop_oam_opcode_map_get( 47377 int unit, 47378 int opcode, 47379 int * profile) 47380 { 47381 return bcm_oam_opcode_map_get( 47382 BCM_CONTROL(unit)->unit, 47383 opcode, 47384 profile); 47385 } 47386 47387 int 47388 bcm_loop_oam_opcode_map_set( 47389 int unit, 47390 int opcode, 47391 int profile) 47392 { 47393 return bcm_oam_opcode_map_set( 47394 BCM_CONTROL(unit)->unit, 47395 opcode, 47396 profile); 47397 } 47398 47399 int 47400 bcm_loop_oam_opcodes_count_profile_create( 47401 int unit, 47402 uint8 * lm_count_profile) 47403 { 47404 return bcm_oam_opcodes_count_profile_create( 47405 BCM_CONTROL(unit)->unit, 47406 lm_count_profile); 47407 } 47408 47409 int 47410 bcm_loop_oam_opcodes_count_profile_delete( 47411 int unit, 47412 uint8 lm_count_profile) 47413 { 47414 return bcm_oam_opcodes_count_profile_delete( 47415 BCM_CONTROL(unit)->unit, 47416 lm_count_profile); 47417 } 47418 47419 int 47420 bcm_loop_oam_opcodes_count_profile_get( 47421 int unit, 47422 uint8 lm_count_profile, 47423 uint8 count_enable, 47424 bcm_oam_opcodes_t * opcodes_bitmap) 47425 { 47426 return bcm_oam_opcodes_count_profile_get( 47427 BCM_CONTROL(unit)->unit, 47428 lm_count_profile, 47429 count_enable, 47430 opcodes_bitmap); 47431 } 47432 47433 int 47434 bcm_loop_oam_opcodes_count_profile_set( 47435 int unit, 47436 uint8 lm_count_profile, 47437 uint8 count_enable, 47438 bcm_oam_opcodes_t * opcodes_bitmap) 47439 { 47440 return bcm_oam_opcodes_count_profile_set( 47441 BCM_CONTROL(unit)->unit, 47442 lm_count_profile, 47443 count_enable, 47444 opcodes_bitmap); 47445 } 47446 47447 /* bcm_oam_performance_event_data_t_init not dispatchable */ 47448 47449 int 47450 bcm_loop_oam_performance_event_register( 47451 int unit, 47452 bcm_oam_event_types_t event_types, 47453 bcm_oam_performance_event_cb cb, 47454 void * user_data) 47455 { 47456 return bcm_oam_performance_event_register( 47457 BCM_CONTROL(unit)->unit, 47458 event_types, 47459 cb, 47460 user_data); 47461 } 47462 47463 int 47464 bcm_loop_oam_performance_event_unregister( 47465 int unit, 47466 bcm_oam_event_types_t event_types, 47467 bcm_oam_performance_event_cb cb) 47468 { 47469 return bcm_oam_performance_event_unregister( 47470 BCM_CONTROL(unit)->unit, 47471 event_types, 47472 cb); 47473 } 47474 47475 int 47476 bcm_loop_oam_pm_event_register( 47477 int unit, 47478 bcm_oam_event_types_t event_types, 47479 bcm_oam_pm_event_cb cb, 47480 void * user_data) 47481 { 47482 return bcm_oam_pm_event_register( 47483 BCM_CONTROL(unit)->unit, 47484 event_types, 47485 cb, 47486 user_data); 47487 } 47488 47489 int 47490 bcm_loop_oam_pm_event_unregister( 47491 int unit, 47492 bcm_oam_event_types_t event_types, 47493 bcm_oam_pm_event_cb cb) 47494 { 47495 return bcm_oam_pm_event_unregister( 47496 BCM_CONTROL(unit)->unit, 47497 event_types, 47498 cb); 47499 } 47500 47501 int 47502 bcm_loop_oam_pm_profile_attach( 47503 int unit, 47504 bcm_oam_endpoint_t endpoint_id, 47505 int profile_id) 47506 { 47507 return bcm_oam_pm_profile_attach( 47508 BCM_CONTROL(unit)->unit, 47509 endpoint_id, 47510 profile_id); 47511 } 47512 47513 int 47514 bcm_loop_oam_pm_profile_attach_get( 47515 int unit, 47516 bcm_oam_endpoint_t endpoint_id, 47517 int * profile_id) 47518 { 47519 return bcm_oam_pm_profile_attach_get( 47520 BCM_CONTROL(unit)->unit, 47521 endpoint_id, 47522 profile_id); 47523 } 47524 47525 int 47526 bcm_loop_oam_pm_profile_create( 47527 int unit, 47528 bcm_oam_pm_profile_info_t * profile_info) 47529 { 47530 return bcm_oam_pm_profile_create( 47531 BCM_CONTROL(unit)->unit, 47532 profile_info); 47533 } 47534 47535 int 47536 bcm_loop_oam_pm_profile_delete( 47537 int unit, 47538 bcm_oam_pm_profile_t profile_id) 47539 { 47540 return bcm_oam_pm_profile_delete( 47541 BCM_CONTROL(unit)->unit, 47542 profile_id); 47543 } 47544 47545 int 47546 bcm_loop_oam_pm_profile_delete_all( 47547 int unit) 47548 { 47549 return bcm_oam_pm_profile_delete_all( 47550 BCM_CONTROL(unit)->unit); 47551 } 47552 47553 int 47554 bcm_loop_oam_pm_profile_detach( 47555 int unit, 47556 bcm_oam_endpoint_t endpoint_id, 47557 int profile_id) 47558 { 47559 return bcm_oam_pm_profile_detach( 47560 BCM_CONTROL(unit)->unit, 47561 endpoint_id, 47562 profile_id); 47563 } 47564 47565 int 47566 bcm_loop_oam_pm_profile_get( 47567 int unit, 47568 bcm_oam_pm_profile_info_t * profile_info) 47569 { 47570 return bcm_oam_pm_profile_get( 47571 BCM_CONTROL(unit)->unit, 47572 profile_info); 47573 } 47574 47575 int 47576 bcm_loop_oam_pm_profile_traverse( 47577 int unit, 47578 bcm_oam_pm_profile_traverse_cb cb, 47579 void * user_data) 47580 { 47581 return bcm_oam_pm_profile_traverse( 47582 BCM_CONTROL(unit)->unit, 47583 cb, 47584 user_data); 47585 } 47586 47587 int 47588 bcm_loop_oam_pm_raw_data_read_done( 47589 int unit, 47590 bcm_oam_event_types_t event_types, 47591 uint32 read_index) 47592 { 47593 return bcm_oam_pm_raw_data_read_done( 47594 BCM_CONTROL(unit)->unit, 47595 event_types, 47596 read_index); 47597 } 47598 47599 int 47600 bcm_loop_oam_pm_stats_get( 47601 int unit, 47602 bcm_oam_endpoint_t endpoint_id, 47603 bcm_oam_pm_stats_t * stats_ptr) 47604 { 47605 return bcm_oam_pm_stats_get( 47606 BCM_CONTROL(unit)->unit, 47607 endpoint_id, 47608 stats_ptr); 47609 } 47610 47611 int 47612 bcm_loop_oam_profile_action_get( 47613 int unit, 47614 uint32 flags, 47615 bcm_oam_profile_t profile_id, 47616 bcm_oam_action_key_t * oam_action_key, 47617 bcm_oam_action_result_t * oam_action_result) 47618 { 47619 return bcm_oam_profile_action_get( 47620 BCM_CONTROL(unit)->unit, 47621 flags, 47622 profile_id, 47623 oam_action_key, 47624 oam_action_result); 47625 } 47626 47627 int 47628 bcm_loop_oam_profile_action_set( 47629 int unit, 47630 uint32 flags, 47631 bcm_oam_profile_t profile_id, 47632 bcm_oam_action_key_t * oam_action_key, 47633 bcm_oam_action_result_t * oam_action_result) 47634 { 47635 return bcm_oam_profile_action_set( 47636 BCM_CONTROL(unit)->unit, 47637 flags, 47638 profile_id, 47639 oam_action_key, 47640 oam_action_result); 47641 } 47642 47643 int 47644 bcm_loop_oam_profile_create( 47645 int unit, 47646 uint32 flags, 47647 bcm_oam_profile_type_t oam_profile_type, 47648 bcm_oam_profile_t * profile_id) 47649 { 47650 return bcm_oam_profile_create( 47651 BCM_CONTROL(unit)->unit, 47652 flags, 47653 oam_profile_type, 47654 profile_id); 47655 } 47656 47657 int 47658 bcm_loop_oam_profile_delete( 47659 int unit, 47660 uint32 flags, 47661 bcm_oam_profile_t profile_id) 47662 { 47663 return bcm_oam_profile_delete( 47664 BCM_CONTROL(unit)->unit, 47665 flags, 47666 profile_id); 47667 } 47668 47669 int 47670 bcm_loop_oam_profile_id_get_by_type( 47671 int unit, 47672 uint8 profile_id, 47673 bcm_oam_profile_type_t oam_profile_type, 47674 uint32 * flags, 47675 bcm_oam_profile_t * enc_profile_id) 47676 { 47677 return bcm_oam_profile_id_get_by_type( 47678 BCM_CONTROL(unit)->unit, 47679 profile_id, 47680 oam_profile_type, 47681 flags, 47682 enc_profile_id); 47683 } 47684 47685 int 47686 bcm_loop_oam_protection_packet_header_get( 47687 int unit, 47688 bcm_pkt_blk_t * packet_header) 47689 { 47690 return bcm_oam_protection_packet_header_get( 47691 BCM_CONTROL(unit)->unit, 47692 packet_header); 47693 } 47694 47695 int 47696 bcm_loop_oam_protection_packet_header_set( 47697 int unit, 47698 bcm_pkt_blk_t * packet_header) 47699 { 47700 return bcm_oam_protection_packet_header_set( 47701 BCM_CONTROL(unit)->unit, 47702 packet_header); 47703 } 47704 47705 int 47706 bcm_loop_oam_psc_add( 47707 int unit, 47708 bcm_oam_psc_t * psc_ptr) 47709 { 47710 return bcm_oam_psc_add( 47711 BCM_CONTROL(unit)->unit, 47712 psc_ptr); 47713 } 47714 47715 int 47716 bcm_loop_oam_psc_delete( 47717 int unit, 47718 bcm_oam_psc_t * psc_ptr) 47719 { 47720 return bcm_oam_psc_delete( 47721 BCM_CONTROL(unit)->unit, 47722 psc_ptr); 47723 } 47724 47725 int 47726 bcm_loop_oam_psc_get( 47727 int unit, 47728 bcm_oam_psc_t * psc_ptr) 47729 { 47730 return bcm_oam_psc_get( 47731 BCM_CONTROL(unit)->unit, 47732 psc_ptr); 47733 } 47734 47735 /* bcm_oam_psc_t_init not dispatchable */ 47736 47737 int 47738 bcm_loop_oam_pw_status_add( 47739 int unit, 47740 bcm_oam_pw_status_t * pw_status_ptr) 47741 { 47742 return bcm_oam_pw_status_add( 47743 BCM_CONTROL(unit)->unit, 47744 pw_status_ptr); 47745 } 47746 47747 int 47748 bcm_loop_oam_pw_status_delete( 47749 int unit, 47750 bcm_oam_pw_status_t * pw_status_ptr) 47751 { 47752 return bcm_oam_pw_status_delete( 47753 BCM_CONTROL(unit)->unit, 47754 pw_status_ptr); 47755 } 47756 47757 int 47758 bcm_loop_oam_pw_status_get( 47759 int unit, 47760 bcm_oam_pw_status_t * pw_status_ptr) 47761 { 47762 return bcm_oam_pw_status_get( 47763 BCM_CONTROL(unit)->unit, 47764 pw_status_ptr); 47765 } 47766 47767 /* bcm_oam_pw_status_t_init not dispatchable */ 47768 47769 int 47770 bcm_loop_oam_reflector_encap_create( 47771 int unit, 47772 uint32 flags, 47773 bcm_if_t * encap_id) 47774 { 47775 return bcm_oam_reflector_encap_create( 47776 BCM_CONTROL(unit)->unit, 47777 flags, 47778 encap_id); 47779 } 47780 47781 int 47782 bcm_loop_oam_reflector_encap_destroy( 47783 int unit, 47784 uint32 flags, 47785 bcm_if_t encap_id) 47786 { 47787 return bcm_oam_reflector_encap_destroy( 47788 BCM_CONTROL(unit)->unit, 47789 flags, 47790 encap_id); 47791 } 47792 47793 int 47794 bcm_loop_oam_sd_sf_detection_add( 47795 int unit, 47796 bcm_oam_sd_sf_detection_t * sd_sf_ptr) 47797 { 47798 return bcm_oam_sd_sf_detection_add( 47799 BCM_CONTROL(unit)->unit, 47800 sd_sf_ptr); 47801 } 47802 47803 int 47804 bcm_loop_oam_sd_sf_detection_delete( 47805 int unit, 47806 bcm_oam_sd_sf_detection_t * sd_sf_ptr) 47807 { 47808 return bcm_oam_sd_sf_detection_delete( 47809 BCM_CONTROL(unit)->unit, 47810 sd_sf_ptr); 47811 } 47812 47813 int 47814 bcm_loop_oam_sd_sf_detection_get( 47815 int unit, 47816 bcm_oam_sd_sf_detection_t * sd_sf_ptr) 47817 { 47818 return bcm_oam_sd_sf_detection_get( 47819 BCM_CONTROL(unit)->unit, 47820 sd_sf_ptr); 47821 } 47822 47823 /* bcm_oam_sd_sf_detection_t_init not dispatchable */ 47824 47825 int 47826 bcm_loop_oam_tod_leap_control_get( 47827 int unit, 47828 bcm_oam_timestamp_format_t ts_format, 47829 bcm_oam_tod_leap_control_t * leap_info) 47830 { 47831 return bcm_oam_tod_leap_control_get( 47832 BCM_CONTROL(unit)->unit, 47833 ts_format, 47834 leap_info); 47835 } 47836 47837 int 47838 bcm_loop_oam_tod_leap_control_set( 47839 int unit, 47840 bcm_oam_timestamp_format_t ts_format, 47841 bcm_oam_tod_leap_control_t leap_info) 47842 { 47843 return bcm_oam_tod_leap_control_set( 47844 BCM_CONTROL(unit)->unit, 47845 ts_format, 47846 leap_info); 47847 } 47848 47849 int 47850 bcm_loop_oam_trunk_ports_add( 47851 int unit, 47852 bcm_gport_t trunk_gport, 47853 int max_ports, 47854 bcm_gport_t * port_arr) 47855 { 47856 return bcm_oam_trunk_ports_add( 47857 BCM_CONTROL(unit)->unit, 47858 trunk_gport, 47859 max_ports, 47860 port_arr); 47861 } 47862 47863 int 47864 bcm_loop_oam_trunk_ports_delete( 47865 int unit, 47866 bcm_gport_t trunk_gport, 47867 int max_ports, 47868 bcm_gport_t * port_arr) 47869 { 47870 return bcm_oam_trunk_ports_delete( 47871 BCM_CONTROL(unit)->unit, 47872 trunk_gport, 47873 max_ports, 47874 port_arr); 47875 } 47876 47877 int 47878 bcm_loop_oam_trunk_ports_get( 47879 int unit, 47880 bcm_gport_t trunk_gport, 47881 int max_ports, 47882 bcm_gport_t * port_arr, 47883 int * port_count) 47884 { 47885 return bcm_oam_trunk_ports_get( 47886 BCM_CONTROL(unit)->unit, 47887 trunk_gport, 47888 max_ports, 47889 port_arr, 47890 port_count); 47891 } 47892 47893 int 47894 bcm_loop_oam_tst_rx_add( 47895 int unit, 47896 bcm_oam_tst_rx_t * tst_ptr) 47897 { 47898 return bcm_oam_tst_rx_add( 47899 BCM_CONTROL(unit)->unit, 47900 tst_ptr); 47901 } 47902 47903 int 47904 bcm_loop_oam_tst_rx_delete( 47905 int unit, 47906 bcm_oam_tst_rx_t * tst_ptr) 47907 { 47908 return bcm_oam_tst_rx_delete( 47909 BCM_CONTROL(unit)->unit, 47910 tst_ptr); 47911 } 47912 47913 int 47914 bcm_loop_oam_tst_rx_get( 47915 int unit, 47916 bcm_oam_tst_rx_t * tst_ptr) 47917 { 47918 return bcm_oam_tst_rx_get( 47919 BCM_CONTROL(unit)->unit, 47920 tst_ptr); 47921 } 47922 47923 /* bcm_oam_tst_rx_t_init not dispatchable */ 47924 47925 int 47926 bcm_loop_oam_tst_tx_add( 47927 int unit, 47928 bcm_oam_tst_tx_t * tst_ptr) 47929 { 47930 return bcm_oam_tst_tx_add( 47931 BCM_CONTROL(unit)->unit, 47932 tst_ptr); 47933 } 47934 47935 int 47936 bcm_loop_oam_tst_tx_delete( 47937 int unit, 47938 bcm_oam_tst_tx_t * tst_ptr) 47939 { 47940 return bcm_oam_tst_tx_delete( 47941 BCM_CONTROL(unit)->unit, 47942 tst_ptr); 47943 } 47944 47945 int 47946 bcm_loop_oam_tst_tx_get( 47947 int unit, 47948 bcm_oam_tst_tx_t * tst_ptr) 47949 { 47950 return bcm_oam_tst_tx_get( 47951 BCM_CONTROL(unit)->unit, 47952 tst_ptr); 47953 } 47954 47955 /* bcm_oam_tst_tx_t_init not dispatchable */ 47956 47957 int 47958 bcm_loop_oam_upmep_cosq_get( 47959 int unit, 47960 bcm_oam_upmep_pdu_type_t upmep_pdu_type, 47961 bcm_cos_queue_t * cosq) 47962 { 47963 return bcm_oam_upmep_cosq_get( 47964 BCM_CONTROL(unit)->unit, 47965 upmep_pdu_type, 47966 cosq); 47967 } 47968 47969 int 47970 bcm_loop_oam_upmep_cosq_set( 47971 int unit, 47972 bcm_oam_upmep_pdu_type_t upmep_pdu_type, 47973 bcm_cos_queue_t cosq) 47974 { 47975 return bcm_oam_upmep_cosq_set( 47976 BCM_CONTROL(unit)->unit, 47977 upmep_pdu_type, 47978 cosq); 47979 } 47980 47981 int 47982 bcm_loop_oam_y_1711_alarm_add( 47983 int unit, 47984 bcm_oam_y_1711_alarm_t * alarm_ptr) 47985 { 47986 return bcm_oam_y_1711_alarm_add( 47987 BCM_CONTROL(unit)->unit, 47988 alarm_ptr); 47989 } 47990 47991 int 47992 bcm_loop_oam_y_1711_alarm_delete( 47993 int unit, 47994 bcm_oam_y_1711_alarm_t * alarm_ptr) 47995 { 47996 return bcm_oam_y_1711_alarm_delete( 47997 BCM_CONTROL(unit)->unit, 47998 alarm_ptr); 47999 } 48000 48001 int 48002 bcm_loop_oam_y_1711_alarm_get( 48003 int unit, 48004 bcm_oam_y_1711_alarm_t * alarm_ptr) 48005 { 48006 return bcm_oam_y_1711_alarm_get( 48007 BCM_CONTROL(unit)->unit, 48008 alarm_ptr); 48009 } 48010 48011 /* bcm_oam_y_1711_alarm_t_init not dispatchable */ 48012 48013 int 48014 bcm_loop_obm_cb_register( 48015 int unit, 48016 bcm_obm_callback_fn fn, 48017 void * user_data) 48018 { 48019 return bcm_obm_cb_register( 48020 BCM_CONTROL(unit)->unit, 48021 fn, 48022 user_data); 48023 } 48024 48025 int 48026 bcm_loop_obm_cb_unregister( 48027 int unit, 48028 bcm_obm_callback_fn fn, 48029 void * user_data) 48030 { 48031 return bcm_obm_cb_unregister( 48032 BCM_CONTROL(unit)->unit, 48033 fn, 48034 user_data); 48035 } 48036 48037 int 48038 bcm_loop_obm_port_max_usage_mode_get( 48039 int unit, 48040 bcm_port_t port, 48041 bcm_obm_max_watermark_mode_t * obm_wm_mode) 48042 { 48043 return bcm_obm_port_max_usage_mode_get( 48044 BCM_CONTROL(unit)->unit, 48045 port, 48046 obm_wm_mode); 48047 } 48048 48049 int 48050 bcm_loop_obm_port_max_usage_mode_set( 48051 int unit, 48052 bcm_port_t port, 48053 bcm_obm_max_watermark_mode_t obm_wm_mode) 48054 { 48055 return bcm_obm_port_max_usage_mode_set( 48056 BCM_CONTROL(unit)->unit, 48057 port, 48058 obm_wm_mode); 48059 } 48060 48061 int 48062 bcm_loop_obm_port_pri_traffic_class_mapping_get( 48063 int unit, 48064 bcm_port_t port, 48065 bcm_obm_lookup_priority_type_t piority_type, 48066 int priority, 48067 bcm_obm_traffic_class_t * obm_tc) 48068 { 48069 return bcm_obm_port_pri_traffic_class_mapping_get( 48070 BCM_CONTROL(unit)->unit, 48071 port, 48072 piority_type, 48073 priority, 48074 obm_tc); 48075 } 48076 48077 int 48078 bcm_loop_obm_port_pri_traffic_class_mapping_set( 48079 int unit, 48080 bcm_port_t port, 48081 bcm_obm_lookup_priority_type_t piority_type, 48082 int priority, 48083 bcm_obm_traffic_class_t obm_tc) 48084 { 48085 return bcm_obm_port_pri_traffic_class_mapping_set( 48086 BCM_CONTROL(unit)->unit, 48087 port, 48088 piority_type, 48089 priority, 48090 obm_tc); 48091 } 48092 48093 int 48094 bcm_loop_obm_traffic_class_pfc_priority_mapping_get( 48095 int unit, 48096 bcm_port_t port, 48097 bcm_obm_traffic_class_t obm_traffic_class, 48098 int max_pri_count, 48099 int * priority_list, 48100 int * pri_count) 48101 { 48102 return bcm_obm_traffic_class_pfc_priority_mapping_get( 48103 BCM_CONTROL(unit)->unit, 48104 port, 48105 obm_traffic_class, 48106 max_pri_count, 48107 priority_list, 48108 pri_count); 48109 } 48110 48111 int 48112 bcm_loop_obm_traffic_class_pfc_priority_mapping_set( 48113 int unit, 48114 bcm_port_t port, 48115 bcm_obm_traffic_class_t obm_traffic_class, 48116 int max_pri_count, 48117 int * priority_list) 48118 { 48119 return bcm_obm_traffic_class_pfc_priority_mapping_set( 48120 BCM_CONTROL(unit)->unit, 48121 port, 48122 obm_traffic_class, 48123 max_pri_count, 48124 priority_list); 48125 } 48126 48127 int 48128 bcm_loop_oob_fc_rx_config_get( 48129 int unit, 48130 bcm_oob_fc_rx_intf_id_t intf_id, 48131 bcm_oob_fc_rx_config_t * config, 48132 int array_max, 48133 bcm_gport_t * gport_array, 48134 int * array_count) 48135 { 48136 return bcm_oob_fc_rx_config_get( 48137 BCM_CONTROL(unit)->unit, 48138 intf_id, 48139 config, 48140 array_max, 48141 gport_array, 48142 array_count); 48143 } 48144 48145 int 48146 bcm_loop_oob_fc_rx_config_set( 48147 int unit, 48148 bcm_oob_fc_rx_intf_id_t intf_id, 48149 bcm_oob_fc_rx_config_t * config, 48150 int array_count, 48151 bcm_gport_t * gport_array) 48152 { 48153 return bcm_oob_fc_rx_config_set( 48154 BCM_CONTROL(unit)->unit, 48155 intf_id, 48156 config, 48157 array_count, 48158 gport_array); 48159 } 48160 48161 /* bcm_oob_fc_rx_config_t_init not dispatchable */ 48162 48163 int 48164 bcm_loop_oob_fc_rx_port_offset_get( 48165 int unit, 48166 bcm_oob_fc_rx_intf_id_t intf_id, 48167 bcm_gport_t gport, 48168 uint32 * offset) 48169 { 48170 return bcm_oob_fc_rx_port_offset_get( 48171 BCM_CONTROL(unit)->unit, 48172 intf_id, 48173 gport, 48174 offset); 48175 } 48176 48177 int 48178 bcm_loop_oob_fc_rx_port_tc_mapping_get( 48179 int unit, 48180 bcm_oob_fc_rx_intf_id_t intf_id, 48181 bcm_gport_t gport, 48182 uint32 tc, 48183 uint32 * pri_bmp) 48184 { 48185 return bcm_oob_fc_rx_port_tc_mapping_get( 48186 BCM_CONTROL(unit)->unit, 48187 intf_id, 48188 gport, 48189 tc, 48190 pri_bmp); 48191 } 48192 48193 int 48194 bcm_loop_oob_fc_rx_port_tc_mapping_multi_get( 48195 int unit, 48196 bcm_oob_fc_rx_intf_id_t intf_id, 48197 bcm_gport_t gport, 48198 int array_max, 48199 uint32 * tc, 48200 uint32 * pri_bmp, 48201 int * array_count) 48202 { 48203 return bcm_oob_fc_rx_port_tc_mapping_multi_get( 48204 BCM_CONTROL(unit)->unit, 48205 intf_id, 48206 gport, 48207 array_max, 48208 tc, 48209 pri_bmp, 48210 array_count); 48211 } 48212 48213 int 48214 bcm_loop_oob_fc_rx_port_tc_mapping_multi_set( 48215 int unit, 48216 bcm_oob_fc_rx_intf_id_t intf_id, 48217 bcm_gport_t gport, 48218 int array_count, 48219 uint32 * tc, 48220 uint32 * pri_bmp) 48221 { 48222 return bcm_oob_fc_rx_port_tc_mapping_multi_set( 48223 BCM_CONTROL(unit)->unit, 48224 intf_id, 48225 gport, 48226 array_count, 48227 tc, 48228 pri_bmp); 48229 } 48230 48231 int 48232 bcm_loop_oob_fc_rx_port_tc_mapping_set( 48233 int unit, 48234 bcm_oob_fc_rx_intf_id_t intf_id, 48235 bcm_gport_t gport, 48236 uint32 tc, 48237 uint32 pri_bmp) 48238 { 48239 return bcm_oob_fc_rx_port_tc_mapping_set( 48240 BCM_CONTROL(unit)->unit, 48241 intf_id, 48242 gport, 48243 tc, 48244 pri_bmp); 48245 } 48246 48247 int 48248 bcm_loop_oob_fc_tx_config_get( 48249 int unit, 48250 bcm_oob_fc_tx_config_t * config) 48251 { 48252 return bcm_oob_fc_tx_config_get( 48253 BCM_CONTROL(unit)->unit, 48254 config); 48255 } 48256 48257 int 48258 bcm_loop_oob_fc_tx_config_set( 48259 int unit, 48260 bcm_oob_fc_tx_config_t * config) 48261 { 48262 return bcm_oob_fc_tx_config_set( 48263 BCM_CONTROL(unit)->unit, 48264 config); 48265 } 48266 48267 /* bcm_oob_fc_tx_config_t_init not dispatchable */ 48268 48269 int 48270 bcm_loop_oob_fc_tx_info_get( 48271 int unit, 48272 bcm_oob_fc_tx_info_t * info) 48273 { 48274 return bcm_oob_fc_tx_info_get( 48275 BCM_CONTROL(unit)->unit, 48276 info); 48277 } 48278 48279 /* bcm_oob_fc_tx_info_t_init not dispatchable */ 48280 48281 int 48282 bcm_loop_oob_fc_tx_port_mapping_get( 48283 int unit, 48284 int max_count, 48285 int * port_array, 48286 int * oob_port_array, 48287 int * count) 48288 { 48289 return bcm_oob_fc_tx_port_mapping_get( 48290 BCM_CONTROL(unit)->unit, 48291 max_count, 48292 port_array, 48293 oob_port_array, 48294 count); 48295 } 48296 48297 int 48298 bcm_loop_oob_fc_tx_port_mapping_set( 48299 int unit, 48300 int count, 48301 int * port_array, 48302 int * oob_port_array) 48303 { 48304 return bcm_oob_fc_tx_port_mapping_set( 48305 BCM_CONTROL(unit)->unit, 48306 count, 48307 port_array, 48308 oob_port_array); 48309 } 48310 48311 /* bcm_oob_fc_tx_queue_config_t_init not dispatchable */ 48312 48313 int 48314 bcm_loop_oob_fc_tx_queue_profile_get( 48315 int unit, 48316 int profile_id, 48317 int max_count, 48318 bcm_oob_fc_tx_queue_config_t * config, 48319 int * count) 48320 { 48321 return bcm_oob_fc_tx_queue_profile_get( 48322 BCM_CONTROL(unit)->unit, 48323 profile_id, 48324 max_count, 48325 config, 48326 count); 48327 } 48328 48329 int 48330 bcm_loop_oob_fc_tx_queue_profile_set( 48331 int unit, 48332 int profile_id, 48333 int count, 48334 bcm_oob_fc_tx_queue_config_t * config) 48335 { 48336 return bcm_oob_fc_tx_queue_profile_set( 48337 BCM_CONTROL(unit)->unit, 48338 profile_id, 48339 count, 48340 config); 48341 } 48342 48343 int 48344 bcm_loop_oob_stats_config_get( 48345 int unit, 48346 bcm_oob_stats_config_t * config) 48347 { 48348 return bcm_oob_stats_config_get( 48349 BCM_CONTROL(unit)->unit, 48350 config); 48351 } 48352 48353 int 48354 bcm_loop_oob_stats_config_set( 48355 int unit, 48356 bcm_oob_stats_config_t * config) 48357 { 48358 return bcm_oob_stats_config_set( 48359 BCM_CONTROL(unit)->unit, 48360 config); 48361 } 48362 48363 /* bcm_oob_stats_config_t_init not dispatchable */ 48364 48365 int 48366 bcm_loop_oob_stats_pool_mapping_get( 48367 int unit, 48368 int offset, 48369 uint8 * dir, 48370 bcm_service_pool_id_t * pool) 48371 { 48372 return bcm_oob_stats_pool_mapping_get( 48373 BCM_CONTROL(unit)->unit, 48374 offset, 48375 dir, 48376 pool); 48377 } 48378 48379 int 48380 bcm_loop_oob_stats_pool_mapping_multi_get( 48381 int unit, 48382 int array_max, 48383 int * offset_array, 48384 uint8 * dir_array, 48385 bcm_service_pool_id_t * pool_array, 48386 int * array_count) 48387 { 48388 return bcm_oob_stats_pool_mapping_multi_get( 48389 BCM_CONTROL(unit)->unit, 48390 array_max, 48391 offset_array, 48392 dir_array, 48393 pool_array, 48394 array_count); 48395 } 48396 48397 int 48398 bcm_loop_oob_stats_pool_mapping_multi_set( 48399 int unit, 48400 int array_count, 48401 int * offset_array, 48402 uint8 * dir_array, 48403 bcm_service_pool_id_t * pool_array) 48404 { 48405 return bcm_oob_stats_pool_mapping_multi_set( 48406 BCM_CONTROL(unit)->unit, 48407 array_count, 48408 offset_array, 48409 dir_array, 48410 pool_array); 48411 } 48412 48413 int 48414 bcm_loop_oob_stats_pool_mapping_set( 48415 int unit, 48416 int offset, 48417 uint8 dir, 48418 bcm_service_pool_id_t pool) 48419 { 48420 return bcm_oob_stats_pool_mapping_set( 48421 BCM_CONTROL(unit)->unit, 48422 offset, 48423 dir, 48424 pool); 48425 } 48426 48427 int 48428 bcm_loop_oob_stats_queue_mapping_get( 48429 int unit, 48430 int offset, 48431 bcm_gport_t * gport) 48432 { 48433 return bcm_oob_stats_queue_mapping_get( 48434 BCM_CONTROL(unit)->unit, 48435 offset, 48436 gport); 48437 } 48438 48439 int 48440 bcm_loop_oob_stats_queue_mapping_multi_get( 48441 int unit, 48442 int array_max, 48443 int * offset_array, 48444 bcm_gport_t * gport_array, 48445 int * array_count) 48446 { 48447 return bcm_oob_stats_queue_mapping_multi_get( 48448 BCM_CONTROL(unit)->unit, 48449 array_max, 48450 offset_array, 48451 gport_array, 48452 array_count); 48453 } 48454 48455 int 48456 bcm_loop_oob_stats_queue_mapping_multi_set( 48457 int unit, 48458 int array_count, 48459 int * offset_array, 48460 bcm_gport_t * gport_array) 48461 { 48462 return bcm_oob_stats_queue_mapping_multi_set( 48463 BCM_CONTROL(unit)->unit, 48464 array_count, 48465 offset_array, 48466 gport_array); 48467 } 48468 48469 int 48470 bcm_loop_oob_stats_queue_mapping_set( 48471 int unit, 48472 int offset, 48473 bcm_gport_t gport) 48474 { 48475 return bcm_oob_stats_queue_mapping_set( 48476 BCM_CONTROL(unit)->unit, 48477 offset, 48478 gport); 48479 } 48480 48481 /* bcm_phy_config_t_init not dispatchable */ 48482 48483 /* bcm_pkt_alloc not dispatchable */ 48484 48485 /* bcm_pkt_blk_alloc not dispatchable */ 48486 48487 /* bcm_pkt_blk_free not dispatchable */ 48488 48489 /* bcm_pkt_blk_t_init not dispatchable */ 48490 48491 /* bcm_pkt_byte_index not dispatchable */ 48492 48493 /* bcm_pkt_clear not dispatchable */ 48494 48495 /* bcm_pkt_ecmp_grp_set not dispatchable */ 48496 48497 /* bcm_pkt_ecmp_member_set not dispatchable */ 48498 48499 /* bcm_pkt_flags_init not dispatchable */ 48500 48501 /* bcm_pkt_flags_len_setup not dispatchable */ 48502 48503 /* bcm_pkt_free not dispatchable */ 48504 48505 /* bcm_pkt_memcpy not dispatchable */ 48506 48507 /* bcm_pkt_nexthop_set not dispatchable */ 48508 48509 /* bcm_pkt_rx_alloc not dispatchable */ 48510 48511 /* bcm_pkt_rx_free not dispatchable */ 48512 48513 /* bcm_pkt_t_init not dispatchable */ 48514 48515 int 48516 bcm_loop_policer_action_add( 48517 int unit, 48518 uint32 action_id, 48519 bcm_policer_action_t action, 48520 uint32 param0) 48521 { 48522 return bcm_policer_action_add( 48523 BCM_CONTROL(unit)->unit, 48524 action_id, 48525 action, 48526 param0); 48527 } 48528 48529 int 48530 bcm_loop_policer_action_attach( 48531 int unit, 48532 bcm_policer_t policer_id, 48533 uint32 action_id) 48534 { 48535 return bcm_policer_action_attach( 48536 BCM_CONTROL(unit)->unit, 48537 policer_id, 48538 action_id); 48539 } 48540 48541 int 48542 bcm_loop_policer_action_attach_get( 48543 int unit, 48544 bcm_policer_t policer_id, 48545 uint32 * action_id) 48546 { 48547 return bcm_policer_action_attach_get( 48548 BCM_CONTROL(unit)->unit, 48549 policer_id, 48550 action_id); 48551 } 48552 48553 int 48554 bcm_loop_policer_action_create( 48555 int unit, 48556 uint32 * action_id) 48557 { 48558 return bcm_policer_action_create( 48559 BCM_CONTROL(unit)->unit, 48560 action_id); 48561 } 48562 48563 int 48564 bcm_loop_policer_action_destroy( 48565 int unit, 48566 uint32 action_id) 48567 { 48568 return bcm_policer_action_destroy( 48569 BCM_CONTROL(unit)->unit, 48570 action_id); 48571 } 48572 48573 int 48574 bcm_loop_policer_action_detach( 48575 int unit, 48576 bcm_policer_t policer_id, 48577 uint32 action_id) 48578 { 48579 return bcm_policer_action_detach( 48580 BCM_CONTROL(unit)->unit, 48581 policer_id, 48582 action_id); 48583 } 48584 48585 int 48586 bcm_loop_policer_action_get( 48587 int unit, 48588 uint32 action_id, 48589 bcm_policer_action_t action, 48590 uint32 * param0) 48591 { 48592 return bcm_policer_action_get( 48593 BCM_CONTROL(unit)->unit, 48594 action_id, 48595 action, 48596 param0); 48597 } 48598 48599 int 48600 bcm_loop_policer_aggregate_group_create( 48601 int unit, 48602 bcm_policer_aggregate_group_info_t * info, 48603 bcm_policer_t * policer_id, 48604 int * npolicers) 48605 { 48606 return bcm_policer_aggregate_group_create( 48607 BCM_CONTROL(unit)->unit, 48608 info, 48609 policer_id, 48610 npolicers); 48611 } 48612 48613 int 48614 bcm_loop_policer_color_decision_get( 48615 int unit, 48616 bcm_policer_color_decision_t * policer_color_decision) 48617 { 48618 return bcm_policer_color_decision_get( 48619 BCM_CONTROL(unit)->unit, 48620 policer_color_decision); 48621 } 48622 48623 int 48624 bcm_loop_policer_color_decision_set( 48625 int unit, 48626 bcm_policer_color_decision_t * policer_color_decision) 48627 { 48628 return bcm_policer_color_decision_set( 48629 BCM_CONTROL(unit)->unit, 48630 policer_color_decision); 48631 } 48632 48633 int 48634 bcm_loop_policer_color_resolution_get( 48635 int unit, 48636 bcm_policer_color_resolution_t * policer_color_resolution) 48637 { 48638 return bcm_policer_color_resolution_get( 48639 BCM_CONTROL(unit)->unit, 48640 policer_color_resolution); 48641 } 48642 48643 int 48644 bcm_loop_policer_color_resolution_set( 48645 int unit, 48646 bcm_policer_color_resolution_t * policer_color_resolution) 48647 { 48648 return bcm_policer_color_resolution_set( 48649 BCM_CONTROL(unit)->unit, 48650 policer_color_resolution); 48651 } 48652 48653 /* bcm_policer_color_resolution_t_init not dispatchable */ 48654 48655 /* bcm_policer_config_t_init not dispatchable */ 48656 48657 int 48658 bcm_loop_policer_control_get( 48659 int unit, 48660 int flags, 48661 int policer_database_handle, 48662 bcm_policer_control_type_t type, 48663 uint32 * arg) 48664 { 48665 return bcm_policer_control_get( 48666 BCM_CONTROL(unit)->unit, 48667 flags, 48668 policer_database_handle, 48669 type, 48670 arg); 48671 } 48672 48673 int 48674 bcm_loop_policer_control_set( 48675 int unit, 48676 int flags, 48677 int policer_database_handle, 48678 bcm_policer_control_type_t type, 48679 uint32 arg) 48680 { 48681 return bcm_policer_control_set( 48682 BCM_CONTROL(unit)->unit, 48683 flags, 48684 policer_database_handle, 48685 type, 48686 arg); 48687 } 48688 48689 int 48690 bcm_loop_policer_create( 48691 int unit, 48692 bcm_policer_config_t * pol_cfg, 48693 bcm_policer_t * policer_id) 48694 { 48695 return bcm_policer_create( 48696 BCM_CONTROL(unit)->unit, 48697 pol_cfg, 48698 policer_id); 48699 } 48700 48701 int 48702 bcm_loop_policer_custom_group_create( 48703 int unit, 48704 uint32 flags, 48705 uint32 mode_id, 48706 bcm_policer_t macro_flow_policer_id, 48707 bcm_policer_t * policer_id, 48708 uint32 * npolicers) 48709 { 48710 return bcm_policer_custom_group_create( 48711 BCM_CONTROL(unit)->unit, 48712 flags, 48713 mode_id, 48714 macro_flow_policer_id, 48715 policer_id, 48716 npolicers); 48717 } 48718 48719 int 48720 bcm_loop_policer_custom_group_id_copy( 48721 int unit, 48722 bcm_policer_group_info_t * old_policer_group_info, 48723 bcm_policer_group_info_t * new_policer_group_info) 48724 { 48725 return bcm_policer_custom_group_id_copy( 48726 BCM_CONTROL(unit)->unit, 48727 old_policer_group_info, 48728 new_policer_group_info); 48729 } 48730 48731 int 48732 bcm_loop_policer_custom_group_id_create( 48733 int unit, 48734 uint32 flags, 48735 uint32 mode_id, 48736 bcm_policer_t macro_flow_policer_id, 48737 bcm_policer_group_info_t * policer_group_info) 48738 { 48739 return bcm_policer_custom_group_id_create( 48740 BCM_CONTROL(unit)->unit, 48741 flags, 48742 mode_id, 48743 macro_flow_policer_id, 48744 policer_group_info); 48745 } 48746 48747 /* bcm_policer_database_attach_config_t_init not dispatchable */ 48748 48749 /* bcm_policer_database_config_t_init not dispatchable */ 48750 48751 int 48752 bcm_loop_policer_database_create( 48753 int unit, 48754 int flags, 48755 int policer_database_handle, 48756 bcm_policer_database_config_t * config) 48757 { 48758 return bcm_policer_database_create( 48759 BCM_CONTROL(unit)->unit, 48760 flags, 48761 policer_database_handle, 48762 config); 48763 } 48764 48765 int 48766 bcm_loop_policer_database_destroy( 48767 int unit, 48768 int flags, 48769 int policer_database_handle) 48770 { 48771 return bcm_policer_database_destroy( 48772 BCM_CONTROL(unit)->unit, 48773 flags, 48774 policer_database_handle); 48775 } 48776 48777 int 48778 bcm_loop_policer_database_enable_get( 48779 int unit, 48780 int flags, 48781 int policer_database_handle, 48782 int * enable) 48783 { 48784 return bcm_policer_database_enable_get( 48785 BCM_CONTROL(unit)->unit, 48786 flags, 48787 policer_database_handle, 48788 enable); 48789 } 48790 48791 int 48792 bcm_loop_policer_database_enable_set( 48793 int unit, 48794 int flags, 48795 int policer_database_handle, 48796 int enable) 48797 { 48798 return bcm_policer_database_enable_set( 48799 BCM_CONTROL(unit)->unit, 48800 flags, 48801 policer_database_handle, 48802 enable); 48803 } 48804 48805 int 48806 bcm_loop_policer_destroy( 48807 int unit, 48808 bcm_policer_t policer_id) 48809 { 48810 return bcm_policer_destroy( 48811 BCM_CONTROL(unit)->unit, 48812 policer_id); 48813 } 48814 48815 int 48816 bcm_loop_policer_destroy_all( 48817 int unit) 48818 { 48819 return bcm_policer_destroy_all( 48820 BCM_CONTROL(unit)->unit); 48821 } 48822 48823 int 48824 bcm_loop_policer_engine_database_attach( 48825 int unit, 48826 int flags, 48827 bcm_policer_engine_t * engine, 48828 bcm_policer_database_attach_config_t * config) 48829 { 48830 return bcm_policer_engine_database_attach( 48831 BCM_CONTROL(unit)->unit, 48832 flags, 48833 engine, 48834 config); 48835 } 48836 48837 int 48838 bcm_loop_policer_engine_database_detach( 48839 int unit, 48840 int flags, 48841 bcm_policer_engine_t * engine) 48842 { 48843 return bcm_policer_engine_database_detach( 48844 BCM_CONTROL(unit)->unit, 48845 flags, 48846 engine); 48847 } 48848 48849 int 48850 bcm_loop_policer_engine_database_get( 48851 int unit, 48852 int flags, 48853 bcm_policer_engine_t * engine, 48854 bcm_policer_database_attach_config_t * config) 48855 { 48856 return bcm_policer_engine_database_get( 48857 BCM_CONTROL(unit)->unit, 48858 flags, 48859 engine, 48860 config); 48861 } 48862 48863 /* bcm_policer_engine_t_init not dispatchable */ 48864 48865 int 48866 bcm_loop_policer_envelop_create( 48867 int unit, 48868 uint32 flag, 48869 bcm_policer_t macro_flow_policer_id, 48870 bcm_policer_t * policer_id) 48871 { 48872 return bcm_policer_envelop_create( 48873 BCM_CONTROL(unit)->unit, 48874 flag, 48875 macro_flow_policer_id, 48876 policer_id); 48877 } 48878 48879 int 48880 bcm_loop_policer_envelop_group_create( 48881 int unit, 48882 uint32 flag, 48883 bcm_policer_group_mode_t mode, 48884 bcm_policer_t macro_flow_policer_id, 48885 bcm_policer_t * policer_id, 48886 int * npolicers) 48887 { 48888 return bcm_policer_envelop_group_create( 48889 BCM_CONTROL(unit)->unit, 48890 flag, 48891 mode, 48892 macro_flow_policer_id, 48893 policer_id, 48894 npolicers); 48895 } 48896 48897 /* bcm_policer_expansion_group_t_init not dispatchable */ 48898 48899 int 48900 bcm_loop_policer_expansion_groups_get( 48901 int unit, 48902 int flags, 48903 bcm_core_t core_id, 48904 bcm_policer_expansion_group_t * expansion_group) 48905 { 48906 return bcm_policer_expansion_groups_get( 48907 BCM_CONTROL(unit)->unit, 48908 flags, 48909 core_id, 48910 expansion_group); 48911 } 48912 48913 int 48914 bcm_loop_policer_expansion_groups_set( 48915 int unit, 48916 int flags, 48917 bcm_core_t core_id, 48918 bcm_policer_expansion_group_t * expansion_group) 48919 { 48920 return bcm_policer_expansion_groups_set( 48921 BCM_CONTROL(unit)->unit, 48922 flags, 48923 core_id, 48924 expansion_group); 48925 } 48926 48927 int 48928 bcm_loop_policer_get( 48929 int unit, 48930 bcm_policer_t policer_id, 48931 bcm_policer_config_t * pol_cfg) 48932 { 48933 return bcm_policer_get( 48934 BCM_CONTROL(unit)->unit, 48935 policer_id, 48936 pol_cfg); 48937 } 48938 48939 int 48940 bcm_loop_policer_global_meter_config_get( 48941 int unit, 48942 bcm_policer_global_meter_config_t * config) 48943 { 48944 return bcm_policer_global_meter_config_get( 48945 BCM_CONTROL(unit)->unit, 48946 config); 48947 } 48948 48949 int 48950 bcm_loop_policer_global_meter_config_set( 48951 int unit, 48952 bcm_policer_global_meter_config_t * config) 48953 { 48954 return bcm_policer_global_meter_config_set( 48955 BCM_CONTROL(unit)->unit, 48956 config); 48957 } 48958 48959 /* bcm_policer_global_meter_config_t_init not dispatchable */ 48960 48961 int 48962 bcm_loop_policer_group_create( 48963 int unit, 48964 bcm_policer_group_mode_t mode, 48965 bcm_policer_t * policer_id, 48966 int * npolicers) 48967 { 48968 return bcm_policer_group_create( 48969 BCM_CONTROL(unit)->unit, 48970 mode, 48971 policer_id, 48972 npolicers); 48973 } 48974 48975 int 48976 bcm_loop_policer_group_create_with_map( 48977 int unit, 48978 bcm_policer_group_mode_t mode, 48979 bcm_policer_map_t * offset_map, 48980 bcm_policer_t * policer_id, 48981 int * num_policers) 48982 { 48983 return bcm_policer_group_create_with_map( 48984 BCM_CONTROL(unit)->unit, 48985 mode, 48986 offset_map, 48987 policer_id, 48988 num_policers); 48989 } 48990 48991 int 48992 bcm_loop_policer_group_get( 48993 int unit, 48994 bcm_policer_t base_policer_id, 48995 int member_max, 48996 bcm_policer_t * member_array, 48997 int * member_count) 48998 { 48999 return bcm_policer_group_get( 49000 BCM_CONTROL(unit)->unit, 49001 base_policer_id, 49002 member_max, 49003 member_array, 49004 member_count); 49005 } 49006 49007 /* bcm_policer_group_info_t_init not dispatchable */ 49008 49009 /* bcm_policer_group_mode_attr_selector_t_init not dispatchable */ 49010 49011 int 49012 bcm_loop_policer_group_mode_id_create( 49013 int unit, 49014 uint32 flags, 49015 bcm_policer_group_mode_type_t type, 49016 uint32 total_policers, 49017 uint32 num_selectors, 49018 bcm_policer_group_mode_attr_selector_t * attr_selectors, 49019 uint32 * mode_id) 49020 { 49021 return bcm_policer_group_mode_id_create( 49022 BCM_CONTROL(unit)->unit, 49023 flags, 49024 type, 49025 total_policers, 49026 num_selectors, 49027 attr_selectors, 49028 mode_id); 49029 } 49030 49031 int 49032 bcm_loop_policer_group_mode_id_destroy( 49033 int unit, 49034 uint32 mode_id) 49035 { 49036 return bcm_policer_group_mode_id_destroy( 49037 BCM_CONTROL(unit)->unit, 49038 mode_id); 49039 } 49040 49041 int 49042 bcm_loop_policer_group_mode_id_get( 49043 int unit, 49044 uint32 mode_id, 49045 uint32 num_selectors, 49046 uint32 * flags, 49047 bcm_policer_group_mode_type_t * type, 49048 uint32 * total_policers, 49049 bcm_policer_group_mode_attr_selector_t * attr_selectors, 49050 uint32 * actual_num_selectors) 49051 { 49052 return bcm_policer_group_mode_id_get( 49053 BCM_CONTROL(unit)->unit, 49054 mode_id, 49055 num_selectors, 49056 flags, 49057 type, 49058 total_policers, 49059 attr_selectors, 49060 actual_num_selectors); 49061 } 49062 49063 int 49064 bcm_loop_policer_init( 49065 int unit) 49066 { 49067 return bcm_policer_init( 49068 BCM_CONTROL(unit)->unit); 49069 } 49070 49071 /* bcm_policer_map_t_init not dispatchable */ 49072 49073 int 49074 bcm_loop_policer_packet_counter_get32( 49075 int unit, 49076 bcm_policer_t policer_id, 49077 uint32 * count) 49078 { 49079 return bcm_policer_packet_counter_get32( 49080 BCM_CONTROL(unit)->unit, 49081 policer_id, 49082 count); 49083 } 49084 49085 int 49086 bcm_loop_policer_packet_reset_counter_get32( 49087 int unit, 49088 bcm_policer_t policer_id, 49089 uint32 * count) 49090 { 49091 return bcm_policer_packet_reset_counter_get32( 49092 BCM_CONTROL(unit)->unit, 49093 policer_id, 49094 count); 49095 } 49096 49097 /* bcm_policer_primary_color_resolution_config_t_init not dispatchable */ 49098 49099 int 49100 bcm_loop_policer_primary_color_resolution_get( 49101 int unit, 49102 int flags, 49103 bcm_policer_primary_color_resolution_key_t * key, 49104 bcm_policer_primary_color_resolution_config_t * config) 49105 { 49106 return bcm_policer_primary_color_resolution_get( 49107 BCM_CONTROL(unit)->unit, 49108 flags, 49109 key, 49110 config); 49111 } 49112 49113 /* bcm_policer_primary_color_resolution_key_t_init not dispatchable */ 49114 49115 int 49116 bcm_loop_policer_primary_color_resolution_set( 49117 int unit, 49118 int flags, 49119 bcm_policer_primary_color_resolution_key_t * key, 49120 bcm_policer_primary_color_resolution_config_t * config) 49121 { 49122 return bcm_policer_primary_color_resolution_set( 49123 BCM_CONTROL(unit)->unit, 49124 flags, 49125 key, 49126 config); 49127 } 49128 49129 int 49130 bcm_loop_policer_set( 49131 int unit, 49132 bcm_policer_t policer_id, 49133 bcm_policer_config_t * pol_cfg) 49134 { 49135 return bcm_policer_set( 49136 BCM_CONTROL(unit)->unit, 49137 policer_id, 49138 pol_cfg); 49139 } 49140 49141 int 49142 bcm_loop_policer_stat_enable_get( 49143 int unit, 49144 bcm_policer_t policer_id, 49145 int * enable) 49146 { 49147 return bcm_policer_stat_enable_get( 49148 BCM_CONTROL(unit)->unit, 49149 policer_id, 49150 enable); 49151 } 49152 49153 int 49154 bcm_loop_policer_stat_enable_set( 49155 int unit, 49156 bcm_policer_t policer_id, 49157 int enable) 49158 { 49159 return bcm_policer_stat_enable_set( 49160 BCM_CONTROL(unit)->unit, 49161 policer_id, 49162 enable); 49163 } 49164 49165 int 49166 bcm_loop_policer_stat_get( 49167 int unit, 49168 bcm_policer_t policer_id, 49169 bcm_cos_t int_pri, 49170 bcm_policer_stat_t stat, 49171 uint64 * value) 49172 { 49173 return bcm_policer_stat_get( 49174 BCM_CONTROL(unit)->unit, 49175 policer_id, 49176 int_pri, 49177 stat, 49178 value); 49179 } 49180 49181 int 49182 bcm_loop_policer_stat_get32( 49183 int unit, 49184 bcm_policer_t policer_id, 49185 bcm_cos_t int_pri, 49186 bcm_policer_stat_t stat, 49187 uint32 * value) 49188 { 49189 return bcm_policer_stat_get32( 49190 BCM_CONTROL(unit)->unit, 49191 policer_id, 49192 int_pri, 49193 stat, 49194 value); 49195 } 49196 49197 int 49198 bcm_loop_policer_stat_set( 49199 int unit, 49200 bcm_policer_t policer_id, 49201 bcm_cos_t int_pri, 49202 bcm_policer_stat_t stat, 49203 uint64 value) 49204 { 49205 return bcm_policer_stat_set( 49206 BCM_CONTROL(unit)->unit, 49207 policer_id, 49208 int_pri, 49209 stat, 49210 value); 49211 } 49212 49213 int 49214 bcm_loop_policer_stat_set32( 49215 int unit, 49216 bcm_policer_t policer_id, 49217 bcm_cos_t int_pri, 49218 bcm_policer_stat_t stat, 49219 uint32 value) 49220 { 49221 return bcm_policer_stat_set32( 49222 BCM_CONTROL(unit)->unit, 49223 policer_id, 49224 int_pri, 49225 stat, 49226 value); 49227 } 49228 49229 int 49230 bcm_loop_policer_traverse( 49231 int unit, 49232 bcm_policer_traverse_cb cb, 49233 void * user_data) 49234 { 49235 return bcm_policer_traverse( 49236 BCM_CONTROL(unit)->unit, 49237 cb, 49238 user_data); 49239 } 49240 49241 int 49242 bcm_loop_port_ability_advert_get( 49243 int unit, 49244 bcm_port_t port, 49245 bcm_port_ability_t * ability_mask) 49246 { 49247 return bcm_port_ability_advert_get( 49248 BCM_CONTROL(unit)->unit, 49249 port, 49250 ability_mask); 49251 } 49252 49253 int 49254 bcm_loop_port_ability_advert_set( 49255 int unit, 49256 bcm_port_t port, 49257 bcm_port_ability_t * ability_mask) 49258 { 49259 return bcm_port_ability_advert_set( 49260 BCM_CONTROL(unit)->unit, 49261 port, 49262 ability_mask); 49263 } 49264 49265 int 49266 bcm_loop_port_ability_get( 49267 int unit, 49268 bcm_port_t port, 49269 bcm_port_abil_t * local_ability_mask) 49270 { 49271 return bcm_port_ability_get( 49272 BCM_CONTROL(unit)->unit, 49273 port, 49274 local_ability_mask); 49275 } 49276 49277 int 49278 bcm_loop_port_ability_local_get( 49279 int unit, 49280 bcm_port_t port, 49281 bcm_port_ability_t * local_ability_mask) 49282 { 49283 return bcm_port_ability_local_get( 49284 BCM_CONTROL(unit)->unit, 49285 port, 49286 local_ability_mask); 49287 } 49288 49289 int 49290 bcm_loop_port_ability_remote_get( 49291 int unit, 49292 bcm_port_t port, 49293 bcm_port_ability_t * ability_mask) 49294 { 49295 return bcm_port_ability_remote_get( 49296 BCM_CONTROL(unit)->unit, 49297 port, 49298 ability_mask); 49299 } 49300 49301 /* bcm_port_ability_t_init not dispatchable */ 49302 49303 int 49304 bcm_loop_port_add( 49305 int unit, 49306 bcm_port_t port, 49307 uint32 flags, 49308 bcm_port_interface_info_t * interface_info, 49309 bcm_port_mapping_info_t * mapping_info) 49310 { 49311 return bcm_port_add( 49312 BCM_CONTROL(unit)->unit, 49313 port, 49314 flags, 49315 interface_info, 49316 mapping_info); 49317 } 49318 49319 int 49320 bcm_loop_port_advert_get( 49321 int unit, 49322 bcm_port_t port, 49323 bcm_port_abil_t * ability_mask) 49324 { 49325 return bcm_port_advert_get( 49326 BCM_CONTROL(unit)->unit, 49327 port, 49328 ability_mask); 49329 } 49330 49331 int 49332 bcm_loop_port_advert_remote_get( 49333 int unit, 49334 bcm_port_t port, 49335 bcm_port_abil_t * ability_mask) 49336 { 49337 return bcm_port_advert_remote_get( 49338 BCM_CONTROL(unit)->unit, 49339 port, 49340 ability_mask); 49341 } 49342 49343 int 49344 bcm_loop_port_advert_set( 49345 int unit, 49346 bcm_port_t port, 49347 bcm_port_abil_t ability_mask) 49348 { 49349 return bcm_port_advert_set( 49350 BCM_CONTROL(unit)->unit, 49351 port, 49352 ability_mask); 49353 } 49354 49355 int 49356 bcm_loop_port_autoneg_ability_advert_get( 49357 int unit, 49358 bcm_port_t port, 49359 int max_num_ability, 49360 bcm_port_speed_ability_t * abilities_array, 49361 int * actual_num_ability) 49362 { 49363 return bcm_port_autoneg_ability_advert_get( 49364 BCM_CONTROL(unit)->unit, 49365 port, 49366 max_num_ability, 49367 abilities_array, 49368 actual_num_ability); 49369 } 49370 49371 int 49372 bcm_loop_port_autoneg_ability_advert_set( 49373 int unit, 49374 bcm_port_t port, 49375 int num_ability, 49376 bcm_port_speed_ability_t * abilities_array) 49377 { 49378 return bcm_port_autoneg_ability_advert_set( 49379 BCM_CONTROL(unit)->unit, 49380 port, 49381 num_ability, 49382 abilities_array); 49383 } 49384 49385 int 49386 bcm_loop_port_autoneg_ability_remote_get( 49387 int unit, 49388 bcm_port_t port, 49389 int max_num_ability, 49390 bcm_port_speed_ability_t * abilities_array, 49391 int * actual_num_ability) 49392 { 49393 return bcm_port_autoneg_ability_remote_get( 49394 BCM_CONTROL(unit)->unit, 49395 port, 49396 max_num_ability, 49397 abilities_array, 49398 actual_num_ability); 49399 } 49400 49401 int 49402 bcm_loop_port_autoneg_get( 49403 int unit, 49404 bcm_port_t port, 49405 int * autoneg) 49406 { 49407 return bcm_port_autoneg_get( 49408 BCM_CONTROL(unit)->unit, 49409 port, 49410 autoneg); 49411 } 49412 49413 int 49414 bcm_loop_port_autoneg_set( 49415 int unit, 49416 bcm_port_t port, 49417 int autoneg) 49418 { 49419 return bcm_port_autoneg_set( 49420 BCM_CONTROL(unit)->unit, 49421 port, 49422 autoneg); 49423 } 49424 49425 int 49426 bcm_loop_port_bpdu_enable_get( 49427 int unit, 49428 bcm_port_t port, 49429 int * enable) 49430 { 49431 return bcm_port_bpdu_enable_get( 49432 BCM_CONTROL(unit)->unit, 49433 port, 49434 enable); 49435 } 49436 49437 int 49438 bcm_loop_port_bpdu_enable_set( 49439 int unit, 49440 bcm_port_t port, 49441 int enable) 49442 { 49443 return bcm_port_bpdu_enable_set( 49444 BCM_CONTROL(unit)->unit, 49445 port, 49446 enable); 49447 } 49448 49449 int 49450 bcm_loop_port_cable_diag( 49451 int unit, 49452 bcm_port_t port, 49453 bcm_port_cable_diag_t * status) 49454 { 49455 return bcm_port_cable_diag( 49456 BCM_CONTROL(unit)->unit, 49457 port, 49458 status); 49459 } 49460 49461 int 49462 bcm_loop_port_cfi_color_get( 49463 int unit, 49464 bcm_port_t port, 49465 int cfi, 49466 bcm_color_t * color) 49467 { 49468 return bcm_port_cfi_color_get( 49469 BCM_CONTROL(unit)->unit, 49470 port, 49471 cfi, 49472 color); 49473 } 49474 49475 int 49476 bcm_loop_port_cfi_color_set( 49477 int unit, 49478 bcm_port_t port, 49479 int cfi, 49480 bcm_color_t color) 49481 { 49482 return bcm_port_cfi_color_set( 49483 BCM_CONTROL(unit)->unit, 49484 port, 49485 cfi, 49486 color); 49487 } 49488 49489 int 49490 bcm_loop_port_class_get( 49491 int unit, 49492 bcm_port_t port, 49493 bcm_port_class_t pclass, 49494 uint32 * class_id) 49495 { 49496 return bcm_port_class_get( 49497 BCM_CONTROL(unit)->unit, 49498 port, 49499 pclass, 49500 class_id); 49501 } 49502 49503 int 49504 bcm_loop_port_class_set( 49505 int unit, 49506 bcm_port_t port, 49507 bcm_port_class_t pclass, 49508 uint32 class_id) 49509 { 49510 return bcm_port_class_set( 49511 BCM_CONTROL(unit)->unit, 49512 port, 49513 pclass, 49514 class_id); 49515 } 49516 49517 int 49518 bcm_loop_port_clear( 49519 int unit) 49520 { 49521 return bcm_port_clear( 49522 BCM_CONTROL(unit)->unit); 49523 } 49524 49525 int 49526 bcm_loop_port_config_get( 49527 int unit, 49528 bcm_port_config_t * config) 49529 { 49530 return bcm_port_config_get( 49531 BCM_CONTROL(unit)->unit, 49532 config); 49533 } 49534 49535 int 49536 bcm_loop_port_config_phy_oam_get( 49537 int unit, 49538 bcm_port_t port, 49539 bcm_port_config_phy_oam_t * conf) 49540 { 49541 return bcm_port_config_phy_oam_get( 49542 BCM_CONTROL(unit)->unit, 49543 port, 49544 conf); 49545 } 49546 49547 int 49548 bcm_loop_port_config_phy_oam_set( 49549 int unit, 49550 bcm_port_t port, 49551 bcm_port_config_phy_oam_t * conf) 49552 { 49553 return bcm_port_config_phy_oam_set( 49554 BCM_CONTROL(unit)->unit, 49555 port, 49556 conf); 49557 } 49558 49559 /* bcm_port_config_t_init not dispatchable */ 49560 49561 int 49562 bcm_loop_port_congestion_config_get( 49563 int unit, 49564 bcm_gport_t port, 49565 bcm_port_congestion_config_t * config) 49566 { 49567 return bcm_port_congestion_config_get( 49568 BCM_CONTROL(unit)->unit, 49569 port, 49570 config); 49571 } 49572 49573 int 49574 bcm_loop_port_congestion_config_set( 49575 int unit, 49576 bcm_gport_t port, 49577 bcm_port_congestion_config_t * config) 49578 { 49579 return bcm_port_congestion_config_set( 49580 BCM_CONTROL(unit)->unit, 49581 port, 49582 config); 49583 } 49584 49585 /* bcm_port_congestion_config_t_init not dispatchable */ 49586 49587 int 49588 bcm_loop_port_congestion_get( 49589 int unit, 49590 bcm_gport_t congestion_port, 49591 bcm_gport_t port, 49592 uint32 flags, 49593 int * channel_id) 49594 { 49595 return bcm_port_congestion_get( 49596 BCM_CONTROL(unit)->unit, 49597 congestion_port, 49598 port, 49599 flags, 49600 channel_id); 49601 } 49602 49603 int 49604 bcm_loop_port_congestion_set( 49605 int unit, 49606 bcm_gport_t congestion_port, 49607 bcm_gport_t port, 49608 uint32 flags, 49609 int channel_id) 49610 { 49611 return bcm_port_congestion_set( 49612 BCM_CONTROL(unit)->unit, 49613 congestion_port, 49614 port, 49615 flags, 49616 channel_id); 49617 } 49618 49619 int 49620 bcm_loop_port_control_get( 49621 int unit, 49622 bcm_port_t port, 49623 bcm_port_control_t type, 49624 int * value) 49625 { 49626 return bcm_port_control_get( 49627 BCM_CONTROL(unit)->unit, 49628 port, 49629 type, 49630 value); 49631 } 49632 49633 int 49634 bcm_loop_port_control_phy_oam_get( 49635 int unit, 49636 bcm_port_t port, 49637 bcm_port_control_phy_oam_t type, 49638 uint64 * value) 49639 { 49640 return bcm_port_control_phy_oam_get( 49641 BCM_CONTROL(unit)->unit, 49642 port, 49643 type, 49644 value); 49645 } 49646 49647 int 49648 bcm_loop_port_control_phy_oam_set( 49649 int unit, 49650 bcm_port_t port, 49651 bcm_port_control_phy_oam_t type, 49652 uint64 value) 49653 { 49654 return bcm_port_control_phy_oam_set( 49655 BCM_CONTROL(unit)->unit, 49656 port, 49657 type, 49658 value); 49659 } 49660 49661 int 49662 bcm_loop_port_control_phy_timesync_get( 49663 int unit, 49664 bcm_port_t port, 49665 bcm_port_control_phy_timesync_t type, 49666 uint64 * value) 49667 { 49668 return bcm_port_control_phy_timesync_get( 49669 BCM_CONTROL(unit)->unit, 49670 port, 49671 type, 49672 value); 49673 } 49674 49675 int 49676 bcm_loop_port_control_phy_timesync_set( 49677 int unit, 49678 bcm_port_t port, 49679 bcm_port_control_phy_timesync_t type, 49680 uint64 value) 49681 { 49682 return bcm_port_control_phy_timesync_set( 49683 BCM_CONTROL(unit)->unit, 49684 port, 49685 type, 49686 value); 49687 } 49688 49689 int 49690 bcm_loop_port_control_set( 49691 int unit, 49692 bcm_port_t port, 49693 bcm_port_control_t type, 49694 int value) 49695 { 49696 return bcm_port_control_set( 49697 BCM_CONTROL(unit)->unit, 49698 port, 49699 type, 49700 value); 49701 } 49702 49703 int 49704 bcm_loop_port_detach( 49705 int unit, 49706 bcm_pbmp_t pbmp, 49707 bcm_pbmp_t * detached) 49708 { 49709 return bcm_port_detach( 49710 BCM_CONTROL(unit)->unit, 49711 pbmp, 49712 detached); 49713 } 49714 49715 int 49716 bcm_loop_port_discard_get( 49717 int unit, 49718 bcm_port_t port, 49719 int * mode) 49720 { 49721 return bcm_port_discard_get( 49722 BCM_CONTROL(unit)->unit, 49723 port, 49724 mode); 49725 } 49726 49727 int 49728 bcm_loop_port_discard_set( 49729 int unit, 49730 bcm_port_t port, 49731 int mode) 49732 { 49733 return bcm_port_discard_set( 49734 BCM_CONTROL(unit)->unit, 49735 port, 49736 mode); 49737 } 49738 49739 int 49740 bcm_loop_port_dscp_map_get( 49741 int unit, 49742 bcm_port_t port, 49743 int srccp, 49744 int * mapcp, 49745 int * prio) 49746 { 49747 return bcm_port_dscp_map_get( 49748 BCM_CONTROL(unit)->unit, 49749 port, 49750 srccp, 49751 mapcp, 49752 prio); 49753 } 49754 49755 int 49756 bcm_loop_port_dscp_map_mode_get( 49757 int unit, 49758 bcm_port_t port, 49759 int * mode) 49760 { 49761 return bcm_port_dscp_map_mode_get( 49762 BCM_CONTROL(unit)->unit, 49763 port, 49764 mode); 49765 } 49766 49767 int 49768 bcm_loop_port_dscp_map_mode_set( 49769 int unit, 49770 bcm_port_t port, 49771 int mode) 49772 { 49773 return bcm_port_dscp_map_mode_set( 49774 BCM_CONTROL(unit)->unit, 49775 port, 49776 mode); 49777 } 49778 49779 int 49780 bcm_loop_port_dscp_map_set( 49781 int unit, 49782 bcm_port_t port, 49783 int srccp, 49784 int mapcp, 49785 int prio) 49786 { 49787 return bcm_port_dscp_map_set( 49788 BCM_CONTROL(unit)->unit, 49789 port, 49790 srccp, 49791 mapcp, 49792 prio); 49793 } 49794 49795 int 49796 bcm_loop_port_dscp_unmap_get( 49797 int unit, 49798 bcm_port_t port, 49799 int internal_pri, 49800 bcm_color_t color, 49801 int * pkt_dscp) 49802 { 49803 return bcm_port_dscp_unmap_get( 49804 BCM_CONTROL(unit)->unit, 49805 port, 49806 internal_pri, 49807 color, 49808 pkt_dscp); 49809 } 49810 49811 int 49812 bcm_loop_port_dscp_unmap_set( 49813 int unit, 49814 bcm_port_t port, 49815 int internal_pri, 49816 bcm_color_t color, 49817 int pkt_dscp) 49818 { 49819 return bcm_port_dscp_unmap_set( 49820 BCM_CONTROL(unit)->unit, 49821 port, 49822 internal_pri, 49823 color, 49824 pkt_dscp); 49825 } 49826 49827 int 49828 bcm_loop_port_dtag_mode_get( 49829 int unit, 49830 bcm_port_t port, 49831 int * mode) 49832 { 49833 return bcm_port_dtag_mode_get( 49834 BCM_CONTROL(unit)->unit, 49835 port, 49836 mode); 49837 } 49838 49839 int 49840 bcm_loop_port_dtag_mode_set( 49841 int unit, 49842 bcm_port_t port, 49843 int mode) 49844 { 49845 return bcm_port_dtag_mode_set( 49846 BCM_CONTROL(unit)->unit, 49847 port, 49848 mode); 49849 } 49850 49851 int 49852 bcm_loop_port_duplex_get( 49853 int unit, 49854 bcm_port_t port, 49855 int * duplex) 49856 { 49857 return bcm_port_duplex_get( 49858 BCM_CONTROL(unit)->unit, 49859 port, 49860 duplex); 49861 } 49862 49863 int 49864 bcm_loop_port_duplex_set( 49865 int unit, 49866 bcm_port_t port, 49867 int duplex) 49868 { 49869 return bcm_port_duplex_set( 49870 BCM_CONTROL(unit)->unit, 49871 port, 49872 duplex); 49873 } 49874 49875 /* bcm_port_e2efc_remote_module_config_t_init not dispatchable */ 49876 49877 int 49878 bcm_loop_port_e2efc_remote_module_enable_get( 49879 int unit, 49880 bcm_module_t remote_module, 49881 bcm_port_e2efc_mode_t mode, 49882 int * enable, 49883 bcm_port_e2efc_remote_module_config_t * e2efc_rmod_cfg) 49884 { 49885 return bcm_port_e2efc_remote_module_enable_get( 49886 BCM_CONTROL(unit)->unit, 49887 remote_module, 49888 mode, 49889 enable, 49890 e2efc_rmod_cfg); 49891 } 49892 49893 int 49894 bcm_loop_port_e2efc_remote_module_enable_set( 49895 int unit, 49896 bcm_module_t remote_module, 49897 bcm_port_e2efc_mode_t mode, 49898 int enable, 49899 bcm_port_e2efc_remote_module_config_t * e2efc_rmod_cfg) 49900 { 49901 return bcm_port_e2efc_remote_module_enable_set( 49902 BCM_CONTROL(unit)->unit, 49903 remote_module, 49904 mode, 49905 enable, 49906 e2efc_rmod_cfg); 49907 } 49908 49909 int 49910 bcm_loop_port_e2efc_remote_module_traverse( 49911 int unit, 49912 bcm_port_e2efc_remote_module_traverse_cb cb, 49913 void * user_data) 49914 { 49915 return bcm_port_e2efc_remote_module_traverse( 49916 BCM_CONTROL(unit)->unit, 49917 cb, 49918 user_data); 49919 } 49920 49921 int 49922 bcm_loop_port_e2efc_remote_port_add( 49923 int unit, 49924 bcm_port_e2efc_remote_port_config_t * e2efc_rport_cfg, 49925 int * rport_handle_id) 49926 { 49927 return bcm_port_e2efc_remote_port_add( 49928 BCM_CONTROL(unit)->unit, 49929 e2efc_rport_cfg, 49930 rport_handle_id); 49931 } 49932 49933 /* bcm_port_e2efc_remote_port_config_t_init not dispatchable */ 49934 49935 int 49936 bcm_loop_port_e2efc_remote_port_delete( 49937 int unit, 49938 int rport_handle_id) 49939 { 49940 return bcm_port_e2efc_remote_port_delete( 49941 BCM_CONTROL(unit)->unit, 49942 rport_handle_id); 49943 } 49944 49945 int 49946 bcm_loop_port_e2efc_remote_port_get( 49947 int unit, 49948 int rport_handle_id, 49949 bcm_port_e2efc_remote_port_config_t * e2efc_rport_cfg) 49950 { 49951 return bcm_port_e2efc_remote_port_get( 49952 BCM_CONTROL(unit)->unit, 49953 rport_handle_id, 49954 e2efc_rport_cfg); 49955 } 49956 49957 int 49958 bcm_loop_port_e2efc_remote_port_set( 49959 int unit, 49960 int rport_handle_id, 49961 bcm_port_e2efc_remote_port_config_t * e2efc_rport_cfg) 49962 { 49963 return bcm_port_e2efc_remote_port_set( 49964 BCM_CONTROL(unit)->unit, 49965 rport_handle_id, 49966 e2efc_rport_cfg); 49967 } 49968 49969 int 49970 bcm_loop_port_e2efc_remote_port_traverse( 49971 int unit, 49972 bcm_port_e2efc_remote_port_traverse_cb cb, 49973 void * user_data) 49974 { 49975 return bcm_port_e2efc_remote_port_traverse( 49976 BCM_CONTROL(unit)->unit, 49977 cb, 49978 user_data); 49979 } 49980 49981 int 49982 bcm_loop_port_egress_get( 49983 int unit, 49984 bcm_port_t port, 49985 int modid, 49986 bcm_pbmp_t * pbmp) 49987 { 49988 return bcm_port_egress_get( 49989 BCM_CONTROL(unit)->unit, 49990 port, 49991 modid, 49992 pbmp); 49993 } 49994 49995 int 49996 bcm_loop_port_egress_set( 49997 int unit, 49998 bcm_port_t port, 49999 int modid, 50000 bcm_pbmp_t pbmp) 50001 { 50002 return bcm_port_egress_set( 50003 BCM_CONTROL(unit)->unit, 50004 port, 50005 modid, 50006 pbmp); 50007 } 50008 50009 int 50010 bcm_loop_port_enable_get( 50011 int unit, 50012 bcm_port_t port, 50013 int * enable) 50014 { 50015 return bcm_port_enable_get( 50016 BCM_CONTROL(unit)->unit, 50017 port, 50018 enable); 50019 } 50020 50021 int 50022 bcm_loop_port_enable_set( 50023 int unit, 50024 bcm_port_t port, 50025 int enable) 50026 { 50027 return bcm_port_enable_set( 50028 BCM_CONTROL(unit)->unit, 50029 port, 50030 enable); 50031 } 50032 50033 int 50034 bcm_loop_port_encap_config_get( 50035 int unit, 50036 bcm_gport_t gport, 50037 bcm_port_encap_config_t * encap_config) 50038 { 50039 return bcm_port_encap_config_get( 50040 BCM_CONTROL(unit)->unit, 50041 gport, 50042 encap_config); 50043 } 50044 50045 int 50046 bcm_loop_port_encap_config_set( 50047 int unit, 50048 bcm_gport_t gport, 50049 bcm_port_encap_config_t * encap_config) 50050 { 50051 return bcm_port_encap_config_set( 50052 BCM_CONTROL(unit)->unit, 50053 gport, 50054 encap_config); 50055 } 50056 50057 /* bcm_port_encap_config_t_init not dispatchable */ 50058 50059 int 50060 bcm_loop_port_encap_get( 50061 int unit, 50062 bcm_port_t port, 50063 int * mode) 50064 { 50065 return bcm_port_encap_get( 50066 BCM_CONTROL(unit)->unit, 50067 port, 50068 mode); 50069 } 50070 50071 int 50072 bcm_loop_port_encap_local_get( 50073 int unit, 50074 bcm_gport_t gport, 50075 uint32 flags, 50076 int * encap_local_id) 50077 { 50078 return bcm_port_encap_local_get( 50079 BCM_CONTROL(unit)->unit, 50080 gport, 50081 flags, 50082 encap_local_id); 50083 } 50084 50085 int 50086 bcm_loop_port_encap_map_get( 50087 int unit, 50088 uint32 flags, 50089 bcm_if_t encap_id, 50090 bcm_gport_t * port) 50091 { 50092 return bcm_port_encap_map_get( 50093 BCM_CONTROL(unit)->unit, 50094 flags, 50095 encap_id, 50096 port); 50097 } 50098 50099 int 50100 bcm_loop_port_encap_map_set( 50101 int unit, 50102 uint32 flags, 50103 bcm_if_t encap_id, 50104 bcm_gport_t port) 50105 { 50106 return bcm_port_encap_map_set( 50107 BCM_CONTROL(unit)->unit, 50108 flags, 50109 encap_id, 50110 port); 50111 } 50112 50113 int 50114 bcm_loop_port_encap_set( 50115 int unit, 50116 bcm_port_t port, 50117 int mode) 50118 { 50119 return bcm_port_encap_set( 50120 BCM_CONTROL(unit)->unit, 50121 port, 50122 mode); 50123 } 50124 50125 int 50126 bcm_loop_port_extender_mapping_info_get( 50127 int unit, 50128 uint32 flags, 50129 bcm_port_extender_mapping_type_t type, 50130 bcm_port_extender_mapping_info_t * mapping_info) 50131 { 50132 return bcm_port_extender_mapping_info_get( 50133 BCM_CONTROL(unit)->unit, 50134 flags, 50135 type, 50136 mapping_info); 50137 } 50138 50139 int 50140 bcm_loop_port_extender_mapping_info_set( 50141 int unit, 50142 uint32 flags, 50143 bcm_port_extender_mapping_type_t type, 50144 bcm_port_extender_mapping_info_t * mapping_info) 50145 { 50146 return bcm_port_extender_mapping_info_set( 50147 BCM_CONTROL(unit)->unit, 50148 flags, 50149 type, 50150 mapping_info); 50151 } 50152 50153 /* bcm_port_extender_mapping_info_t_init not dispatchable */ 50154 50155 int 50156 bcm_loop_port_fault_get( 50157 int unit, 50158 bcm_port_t port, 50159 uint32 * flags) 50160 { 50161 return bcm_port_fault_get( 50162 BCM_CONTROL(unit)->unit, 50163 port, 50164 flags); 50165 } 50166 50167 int 50168 bcm_loop_port_flood_block_get( 50169 int unit, 50170 bcm_port_t ingress_port, 50171 bcm_port_t egress_port, 50172 uint32 * flags) 50173 { 50174 return bcm_port_flood_block_get( 50175 BCM_CONTROL(unit)->unit, 50176 ingress_port, 50177 egress_port, 50178 flags); 50179 } 50180 50181 int 50182 bcm_loop_port_flood_block_set( 50183 int unit, 50184 bcm_port_t ingress_port, 50185 bcm_port_t egress_port, 50186 uint32 flags) 50187 { 50188 return bcm_port_flood_block_set( 50189 BCM_CONTROL(unit)->unit, 50190 ingress_port, 50191 egress_port, 50192 flags); 50193 } 50194 50195 int 50196 bcm_loop_port_flood_group_get( 50197 int unit, 50198 bcm_gport_t port, 50199 uint32 flags, 50200 bcm_port_flood_group_t * flood_groups) 50201 { 50202 return bcm_port_flood_group_get( 50203 BCM_CONTROL(unit)->unit, 50204 port, 50205 flags, 50206 flood_groups); 50207 } 50208 50209 int 50210 bcm_loop_port_flood_group_set( 50211 int unit, 50212 bcm_gport_t port, 50213 uint32 flags, 50214 bcm_port_flood_group_t * flood_groups) 50215 { 50216 return bcm_port_flood_group_set( 50217 BCM_CONTROL(unit)->unit, 50218 port, 50219 flags, 50220 flood_groups); 50221 } 50222 50223 /* bcm_port_flood_group_t_init not dispatchable */ 50224 50225 int 50226 bcm_loop_port_force_dest_get( 50227 int unit, 50228 bcm_gport_t gport, 50229 bcm_port_dest_info_t * dest_info) 50230 { 50231 return bcm_port_force_dest_get( 50232 BCM_CONTROL(unit)->unit, 50233 gport, 50234 dest_info); 50235 } 50236 50237 int 50238 bcm_loop_port_force_dest_set( 50239 int unit, 50240 bcm_gport_t gport, 50241 bcm_port_dest_info_t * dest_info) 50242 { 50243 return bcm_port_force_dest_set( 50244 BCM_CONTROL(unit)->unit, 50245 gport, 50246 dest_info); 50247 } 50248 50249 int 50250 bcm_loop_port_force_forward_get( 50251 int unit, 50252 bcm_port_t port, 50253 bcm_port_t * egr_port, 50254 int * enabled) 50255 { 50256 return bcm_port_force_forward_get( 50257 BCM_CONTROL(unit)->unit, 50258 port, 50259 egr_port, 50260 enabled); 50261 } 50262 50263 int 50264 bcm_loop_port_force_forward_mode_get( 50265 int unit, 50266 bcm_port_t port, 50267 bcm_port_t * egr_port, 50268 uint32 * flags) 50269 { 50270 return bcm_port_force_forward_mode_get( 50271 BCM_CONTROL(unit)->unit, 50272 port, 50273 egr_port, 50274 flags); 50275 } 50276 50277 int 50278 bcm_loop_port_force_forward_mode_set( 50279 int unit, 50280 bcm_port_t port, 50281 bcm_port_t egr_port, 50282 uint32 flags) 50283 { 50284 return bcm_port_force_forward_mode_set( 50285 BCM_CONTROL(unit)->unit, 50286 port, 50287 egr_port, 50288 flags); 50289 } 50290 50291 int 50292 bcm_loop_port_force_forward_set( 50293 int unit, 50294 bcm_port_t port, 50295 bcm_port_t egr_port, 50296 int enable) 50297 { 50298 return bcm_port_force_forward_set( 50299 BCM_CONTROL(unit)->unit, 50300 port, 50301 egr_port, 50302 enable); 50303 } 50304 50305 int 50306 bcm_loop_port_force_vlan_get( 50307 int unit, 50308 bcm_port_t port, 50309 bcm_vlan_t * vlan, 50310 int * pkt_prio, 50311 uint32 * flags) 50312 { 50313 return bcm_port_force_vlan_get( 50314 BCM_CONTROL(unit)->unit, 50315 port, 50316 vlan, 50317 pkt_prio, 50318 flags); 50319 } 50320 50321 int 50322 bcm_loop_port_force_vlan_set( 50323 int unit, 50324 bcm_port_t port, 50325 bcm_vlan_t vlan, 50326 int pkt_prio, 50327 uint32 flags) 50328 { 50329 return bcm_port_force_vlan_set( 50330 BCM_CONTROL(unit)->unit, 50331 port, 50332 vlan, 50333 pkt_prio, 50334 flags); 50335 } 50336 50337 int 50338 bcm_loop_port_frame_max_get( 50339 int unit, 50340 bcm_port_t port, 50341 int * size) 50342 { 50343 return bcm_port_frame_max_get( 50344 BCM_CONTROL(unit)->unit, 50345 port, 50346 size); 50347 } 50348 50349 int 50350 bcm_loop_port_frame_max_set( 50351 int unit, 50352 bcm_port_t port, 50353 int size) 50354 { 50355 return bcm_port_frame_max_set( 50356 BCM_CONTROL(unit)->unit, 50357 port, 50358 size); 50359 } 50360 50361 int 50362 bcm_loop_port_get( 50363 int unit, 50364 bcm_port_t port, 50365 uint32 * flags, 50366 bcm_port_interface_info_t * interface_info, 50367 bcm_port_mapping_info_t * mapping_info) 50368 { 50369 return bcm_port_get( 50370 BCM_CONTROL(unit)->unit, 50371 port, 50372 flags, 50373 interface_info, 50374 mapping_info); 50375 } 50376 50377 int 50378 bcm_loop_port_gport_add( 50379 int unit, 50380 bcm_port_t local_port, 50381 bcm_gport_t modport) 50382 { 50383 return bcm_port_gport_add( 50384 BCM_CONTROL(unit)->unit, 50385 local_port, 50386 modport); 50387 } 50388 50389 int 50390 bcm_loop_port_gport_delete( 50391 int unit, 50392 bcm_port_t local_port, 50393 bcm_gport_t modport) 50394 { 50395 return bcm_port_gport_delete( 50396 BCM_CONTROL(unit)->unit, 50397 local_port, 50398 modport); 50399 } 50400 50401 int 50402 bcm_loop_port_gport_delete_all( 50403 int unit, 50404 bcm_port_t local_port) 50405 { 50406 return bcm_port_gport_delete_all( 50407 BCM_CONTROL(unit)->unit, 50408 local_port); 50409 } 50410 50411 int 50412 bcm_loop_port_gport_free_range_get( 50413 int unit, 50414 uint32 gport_type, 50415 bcm_gport_t * gport_min, 50416 bcm_gport_t * gport_max) 50417 { 50418 return bcm_port_gport_free_range_get( 50419 BCM_CONTROL(unit)->unit, 50420 gport_type, 50421 gport_min, 50422 gport_max); 50423 } 50424 50425 int 50426 bcm_loop_port_gport_get( 50427 int unit, 50428 bcm_port_t port, 50429 bcm_gport_t * gport) 50430 { 50431 return bcm_port_gport_get( 50432 BCM_CONTROL(unit)->unit, 50433 port, 50434 gport); 50435 } 50436 50437 int 50438 bcm_loop_port_gport_get_all( 50439 int unit, 50440 bcm_port_t local_port, 50441 int size, 50442 bcm_gport_t * gport_array, 50443 int * count) 50444 { 50445 return bcm_port_gport_get_all( 50446 BCM_CONTROL(unit)->unit, 50447 local_port, 50448 size, 50449 gport_array, 50450 count); 50451 } 50452 50453 int 50454 bcm_loop_port_gport_is_free( 50455 int unit, 50456 bcm_gport_t gport) 50457 { 50458 return bcm_port_gport_is_free( 50459 BCM_CONTROL(unit)->unit, 50460 gport); 50461 } 50462 50463 int 50464 bcm_loop_port_ifg_get( 50465 int unit, 50466 bcm_port_t port, 50467 int speed, 50468 bcm_port_duplex_t duplex, 50469 int * bit_times) 50470 { 50471 return bcm_port_ifg_get( 50472 BCM_CONTROL(unit)->unit, 50473 port, 50474 speed, 50475 duplex, 50476 bit_times); 50477 } 50478 50479 int 50480 bcm_loop_port_ifg_set( 50481 int unit, 50482 bcm_port_t port, 50483 int speed, 50484 bcm_port_duplex_t duplex, 50485 int bit_times) 50486 { 50487 return bcm_port_ifg_set( 50488 BCM_CONTROL(unit)->unit, 50489 port, 50490 speed, 50491 duplex, 50492 bit_times); 50493 } 50494 50495 int 50496 bcm_loop_port_ifilter_get( 50497 int unit, 50498 bcm_port_t port, 50499 int * mode) 50500 { 50501 return bcm_port_ifilter_get( 50502 BCM_CONTROL(unit)->unit, 50503 port, 50504 mode); 50505 } 50506 50507 int 50508 bcm_loop_port_ifilter_set( 50509 int unit, 50510 bcm_port_t port, 50511 int mode) 50512 { 50513 return bcm_port_ifilter_set( 50514 BCM_CONTROL(unit)->unit, 50515 port, 50516 mode); 50517 } 50518 50519 int 50520 bcm_loop_port_ilkn_lane_map_get( 50521 int unit, 50522 int flags, 50523 bcm_port_t port, 50524 int num_of_lanes, 50525 int * lanes) 50526 { 50527 return bcm_port_ilkn_lane_map_get( 50528 BCM_CONTROL(unit)->unit, 50529 flags, 50530 port, 50531 num_of_lanes, 50532 lanes); 50533 } 50534 50535 int 50536 bcm_loop_port_ilkn_lane_map_set( 50537 int unit, 50538 int flags, 50539 bcm_port_t port, 50540 int num_of_lanes, 50541 int * lanes) 50542 { 50543 return bcm_port_ilkn_lane_map_set( 50544 BCM_CONTROL(unit)->unit, 50545 flags, 50546 port, 50547 num_of_lanes, 50548 lanes); 50549 } 50550 50551 int 50552 bcm_loop_port_info_get( 50553 int unit, 50554 bcm_port_t port, 50555 bcm_port_info_t * info) 50556 { 50557 return bcm_port_info_get( 50558 BCM_CONTROL(unit)->unit, 50559 port, 50560 info); 50561 } 50562 50563 int 50564 bcm_loop_port_info_restore( 50565 int unit, 50566 bcm_port_t port, 50567 bcm_port_info_t * info) 50568 { 50569 return bcm_port_info_restore( 50570 BCM_CONTROL(unit)->unit, 50571 port, 50572 info); 50573 } 50574 50575 int 50576 bcm_loop_port_info_save( 50577 int unit, 50578 bcm_port_t port, 50579 bcm_port_info_t * info) 50580 { 50581 return bcm_port_info_save( 50582 BCM_CONTROL(unit)->unit, 50583 port, 50584 info); 50585 } 50586 50587 int 50588 bcm_loop_port_info_set( 50589 int unit, 50590 bcm_port_t port, 50591 bcm_port_info_t * info) 50592 { 50593 return bcm_port_info_set( 50594 BCM_CONTROL(unit)->unit, 50595 port, 50596 info); 50597 } 50598 50599 /* bcm_port_info_t_init not dispatchable */ 50600 50601 int 50602 bcm_loop_port_ingress_tdm_failover_get( 50603 int unit, 50604 int flag, 50605 bcm_pbmp_t * tdm_enable_pbmp) 50606 { 50607 return bcm_port_ingress_tdm_failover_get( 50608 BCM_CONTROL(unit)->unit, 50609 flag, 50610 tdm_enable_pbmp); 50611 } 50612 50613 int 50614 bcm_loop_port_ingress_tdm_failover_set( 50615 int unit, 50616 int flag, 50617 bcm_pbmp_t tdm_enable_pbmp) 50618 { 50619 return bcm_port_ingress_tdm_failover_set( 50620 BCM_CONTROL(unit)->unit, 50621 flag, 50622 tdm_enable_pbmp); 50623 } 50624 50625 int 50626 bcm_loop_port_init( 50627 int unit) 50628 { 50629 return bcm_port_init( 50630 BCM_CONTROL(unit)->unit); 50631 } 50632 50633 int 50634 bcm_loop_port_inner_tpid_get( 50635 int unit, 50636 bcm_port_t port, 50637 uint16 * tpid) 50638 { 50639 return bcm_port_inner_tpid_get( 50640 BCM_CONTROL(unit)->unit, 50641 port, 50642 tpid); 50643 } 50644 50645 int 50646 bcm_loop_port_inner_tpid_set( 50647 int unit, 50648 bcm_port_t port, 50649 uint16 tpid) 50650 { 50651 return bcm_port_inner_tpid_set( 50652 BCM_CONTROL(unit)->unit, 50653 port, 50654 tpid); 50655 } 50656 50657 int 50658 bcm_loop_port_interface_config_get( 50659 int unit, 50660 bcm_port_t port, 50661 bcm_port_interface_config_t * config) 50662 { 50663 return bcm_port_interface_config_get( 50664 BCM_CONTROL(unit)->unit, 50665 port, 50666 config); 50667 } 50668 50669 int 50670 bcm_loop_port_interface_config_set( 50671 int unit, 50672 bcm_port_t port, 50673 bcm_port_interface_config_t * config) 50674 { 50675 return bcm_port_interface_config_set( 50676 BCM_CONTROL(unit)->unit, 50677 port, 50678 config); 50679 } 50680 50681 /* bcm_port_interface_config_t_init not dispatchable */ 50682 50683 int 50684 bcm_loop_port_interface_get( 50685 int unit, 50686 bcm_port_t port, 50687 bcm_port_if_t * intf) 50688 { 50689 return bcm_port_interface_get( 50690 BCM_CONTROL(unit)->unit, 50691 port, 50692 intf); 50693 } 50694 50695 int 50696 bcm_loop_port_interface_set( 50697 int unit, 50698 bcm_port_t port, 50699 bcm_port_if_t intf) 50700 { 50701 return bcm_port_interface_set( 50702 BCM_CONTROL(unit)->unit, 50703 port, 50704 intf); 50705 } 50706 50707 int 50708 bcm_loop_port_internal_get( 50709 int unit, 50710 uint32 flags, 50711 int internal_ports_max, 50712 bcm_gport_t * internal_gport, 50713 int * internal_ports_count) 50714 { 50715 return bcm_port_internal_get( 50716 BCM_CONTROL(unit)->unit, 50717 flags, 50718 internal_ports_max, 50719 internal_gport, 50720 internal_ports_count); 50721 } 50722 50723 int 50724 bcm_loop_port_ipmc_modify_get( 50725 int unit, 50726 bcm_port_t port, 50727 uint32 * flags) 50728 { 50729 return bcm_port_ipmc_modify_get( 50730 BCM_CONTROL(unit)->unit, 50731 port, 50732 flags); 50733 } 50734 50735 int 50736 bcm_loop_port_ipmc_modify_set( 50737 int unit, 50738 bcm_port_t port, 50739 uint32 flags) 50740 { 50741 return bcm_port_ipmc_modify_set( 50742 BCM_CONTROL(unit)->unit, 50743 port, 50744 flags); 50745 } 50746 50747 int 50748 bcm_loop_port_jam_get( 50749 int unit, 50750 bcm_port_t port, 50751 int * enable) 50752 { 50753 return bcm_port_jam_get( 50754 BCM_CONTROL(unit)->unit, 50755 port, 50756 enable); 50757 } 50758 50759 int 50760 bcm_loop_port_jam_set( 50761 int unit, 50762 bcm_port_t port, 50763 int enable) 50764 { 50765 return bcm_port_jam_set( 50766 BCM_CONTROL(unit)->unit, 50767 port, 50768 enable); 50769 } 50770 50771 int 50772 bcm_loop_port_l3_enable_get( 50773 int unit, 50774 bcm_port_t port, 50775 int * enable) 50776 { 50777 return bcm_port_l3_enable_get( 50778 BCM_CONTROL(unit)->unit, 50779 port, 50780 enable); 50781 } 50782 50783 int 50784 bcm_loop_port_l3_enable_set( 50785 int unit, 50786 bcm_port_t port, 50787 int enable) 50788 { 50789 return bcm_port_l3_enable_set( 50790 BCM_CONTROL(unit)->unit, 50791 port, 50792 enable); 50793 } 50794 50795 int 50796 bcm_loop_port_l3_encapsulated_mtu_get( 50797 int unit, 50798 bcm_port_t port, 50799 int * size) 50800 { 50801 return bcm_port_l3_encapsulated_mtu_get( 50802 BCM_CONTROL(unit)->unit, 50803 port, 50804 size); 50805 } 50806 50807 int 50808 bcm_loop_port_l3_encapsulated_mtu_set( 50809 int unit, 50810 bcm_port_t port, 50811 int size) 50812 { 50813 return bcm_port_l3_encapsulated_mtu_set( 50814 BCM_CONTROL(unit)->unit, 50815 port, 50816 size); 50817 } 50818 50819 int 50820 bcm_loop_port_l3_modify_get( 50821 int unit, 50822 bcm_port_t port, 50823 uint32 * flags) 50824 { 50825 return bcm_port_l3_modify_get( 50826 BCM_CONTROL(unit)->unit, 50827 port, 50828 flags); 50829 } 50830 50831 int 50832 bcm_loop_port_l3_modify_set( 50833 int unit, 50834 bcm_port_t port, 50835 uint32 flags) 50836 { 50837 return bcm_port_l3_modify_set( 50838 BCM_CONTROL(unit)->unit, 50839 port, 50840 flags); 50841 } 50842 50843 int 50844 bcm_loop_port_l3_mtu_get( 50845 int unit, 50846 bcm_port_t port, 50847 int * size) 50848 { 50849 return bcm_port_l3_mtu_get( 50850 BCM_CONTROL(unit)->unit, 50851 port, 50852 size); 50853 } 50854 50855 int 50856 bcm_loop_port_l3_mtu_set( 50857 int unit, 50858 bcm_port_t port, 50859 int size) 50860 { 50861 return bcm_port_l3_mtu_set( 50862 BCM_CONTROL(unit)->unit, 50863 port, 50864 size); 50865 } 50866 50867 int 50868 bcm_loop_port_lane_to_serdes_map_get( 50869 int unit, 50870 int flags, 50871 int map_size, 50872 bcm_port_lane_to_serdes_map_t * serdes_map) 50873 { 50874 return bcm_port_lane_to_serdes_map_get( 50875 BCM_CONTROL(unit)->unit, 50876 flags, 50877 map_size, 50878 serdes_map); 50879 } 50880 50881 int 50882 bcm_loop_port_lane_to_serdes_map_set( 50883 int unit, 50884 int flags, 50885 int map_size, 50886 bcm_port_lane_to_serdes_map_t * serdes_map) 50887 { 50888 return bcm_port_lane_to_serdes_map_set( 50889 BCM_CONTROL(unit)->unit, 50890 flags, 50891 map_size, 50892 serdes_map); 50893 } 50894 50895 int 50896 bcm_loop_port_learn_get( 50897 int unit, 50898 bcm_port_t port, 50899 uint32 * flags) 50900 { 50901 return bcm_port_learn_get( 50902 BCM_CONTROL(unit)->unit, 50903 port, 50904 flags); 50905 } 50906 50907 int 50908 bcm_loop_port_learn_modify( 50909 int unit, 50910 bcm_port_t port, 50911 uint32 add, 50912 uint32 remove) 50913 { 50914 return bcm_port_learn_modify( 50915 BCM_CONTROL(unit)->unit, 50916 port, 50917 add, 50918 remove); 50919 } 50920 50921 int 50922 bcm_loop_port_learn_set( 50923 int unit, 50924 bcm_port_t port, 50925 uint32 flags) 50926 { 50927 return bcm_port_learn_set( 50928 BCM_CONTROL(unit)->unit, 50929 port, 50930 flags); 50931 } 50932 50933 int 50934 bcm_loop_port_link_failed_clear( 50935 int unit, 50936 bcm_port_t port) 50937 { 50938 return bcm_port_link_failed_clear( 50939 BCM_CONTROL(unit)->unit, 50940 port); 50941 } 50942 50943 int 50944 bcm_loop_port_link_state_get( 50945 int unit, 50946 bcm_port_t port, 50947 uint32 flags, 50948 bcm_port_link_state_t * state) 50949 { 50950 return bcm_port_link_state_get( 50951 BCM_CONTROL(unit)->unit, 50952 port, 50953 flags, 50954 state); 50955 } 50956 50957 int 50958 bcm_loop_port_link_status_get( 50959 int unit, 50960 bcm_port_t port, 50961 int * status) 50962 { 50963 return bcm_port_link_status_get( 50964 BCM_CONTROL(unit)->unit, 50965 port, 50966 status); 50967 } 50968 50969 int 50970 bcm_loop_port_linkscan_get( 50971 int unit, 50972 bcm_port_t port, 50973 int * linkscan) 50974 { 50975 return bcm_port_linkscan_get( 50976 BCM_CONTROL(unit)->unit, 50977 port, 50978 linkscan); 50979 } 50980 50981 int 50982 bcm_loop_port_linkscan_set( 50983 int unit, 50984 bcm_port_t port, 50985 int linkscan) 50986 { 50987 return bcm_port_linkscan_set( 50988 BCM_CONTROL(unit)->unit, 50989 port, 50990 linkscan); 50991 } 50992 50993 int 50994 bcm_loop_port_local_get( 50995 int unit, 50996 bcm_gport_t gport, 50997 bcm_port_t * local_port) 50998 { 50999 return bcm_port_local_get( 51000 BCM_CONTROL(unit)->unit, 51001 gport, 51002 local_port); 51003 } 51004 51005 int 51006 bcm_loop_port_loopback_get( 51007 int unit, 51008 bcm_port_t port, 51009 int * loopback) 51010 { 51011 return bcm_port_loopback_get( 51012 BCM_CONTROL(unit)->unit, 51013 port, 51014 loopback); 51015 } 51016 51017 int 51018 bcm_loop_port_loopback_set( 51019 int unit, 51020 bcm_port_t port, 51021 int loopback) 51022 { 51023 return bcm_port_loopback_set( 51024 BCM_CONTROL(unit)->unit, 51025 port, 51026 loopback); 51027 } 51028 51029 int 51030 bcm_loop_port_management_packet_config_get( 51031 int unit, 51032 bcm_port_t port, 51033 bcm_port_management_packet_config_t * config_array, 51034 int max_config, 51035 int * config_count) 51036 { 51037 return bcm_port_management_packet_config_get( 51038 BCM_CONTROL(unit)->unit, 51039 port, 51040 config_array, 51041 max_config, 51042 config_count); 51043 } 51044 51045 int 51046 bcm_loop_port_management_packet_config_set( 51047 int unit, 51048 bcm_port_t port, 51049 bcm_port_management_packet_config_t * config) 51050 { 51051 return bcm_port_management_packet_config_set( 51052 BCM_CONTROL(unit)->unit, 51053 port, 51054 config); 51055 } 51056 51057 /* bcm_port_mapping_info_t_init not dispatchable */ 51058 51059 int 51060 bcm_loop_port_master_get( 51061 int unit, 51062 bcm_port_t port, 51063 int * ms) 51064 { 51065 return bcm_port_master_get( 51066 BCM_CONTROL(unit)->unit, 51067 port, 51068 ms); 51069 } 51070 51071 int 51072 bcm_loop_port_master_set( 51073 int unit, 51074 bcm_port_t port, 51075 int ms) 51076 { 51077 return bcm_port_master_set( 51078 BCM_CONTROL(unit)->unit, 51079 port, 51080 ms); 51081 } 51082 51083 int 51084 bcm_loop_port_match_add( 51085 int unit, 51086 bcm_gport_t port, 51087 bcm_port_match_info_t * match) 51088 { 51089 return bcm_port_match_add( 51090 BCM_CONTROL(unit)->unit, 51091 port, 51092 match); 51093 } 51094 51095 int 51096 bcm_loop_port_match_delete( 51097 int unit, 51098 bcm_gport_t port, 51099 bcm_port_match_info_t * match) 51100 { 51101 return bcm_port_match_delete( 51102 BCM_CONTROL(unit)->unit, 51103 port, 51104 match); 51105 } 51106 51107 int 51108 bcm_loop_port_match_delete_all( 51109 int unit, 51110 bcm_gport_t port) 51111 { 51112 return bcm_port_match_delete_all( 51113 BCM_CONTROL(unit)->unit, 51114 port); 51115 } 51116 51117 /* bcm_port_match_info_t_init not dispatchable */ 51118 51119 int 51120 bcm_loop_port_match_multi_get( 51121 int unit, 51122 bcm_gport_t port, 51123 int size, 51124 bcm_port_match_info_t * match_array, 51125 int * count) 51126 { 51127 return bcm_port_match_multi_get( 51128 BCM_CONTROL(unit)->unit, 51129 port, 51130 size, 51131 match_array, 51132 count); 51133 } 51134 51135 int 51136 bcm_loop_port_match_replace( 51137 int unit, 51138 bcm_gport_t port, 51139 bcm_port_match_info_t * old_match, 51140 bcm_port_match_info_t * new_match) 51141 { 51142 return bcm_port_match_replace( 51143 BCM_CONTROL(unit)->unit, 51144 port, 51145 old_match, 51146 new_match); 51147 } 51148 51149 int 51150 bcm_loop_port_match_set( 51151 int unit, 51152 bcm_gport_t port, 51153 int size, 51154 bcm_port_match_info_t * match_array) 51155 { 51156 return bcm_port_match_set( 51157 BCM_CONTROL(unit)->unit, 51158 port, 51159 size, 51160 match_array); 51161 } 51162 51163 int 51164 bcm_loop_port_mdix_get( 51165 int unit, 51166 bcm_port_t port, 51167 bcm_port_mdix_t * mode) 51168 { 51169 return bcm_port_mdix_get( 51170 BCM_CONTROL(unit)->unit, 51171 port, 51172 mode); 51173 } 51174 51175 int 51176 bcm_loop_port_mdix_set( 51177 int unit, 51178 bcm_port_t port, 51179 bcm_port_mdix_t mode) 51180 { 51181 return bcm_port_mdix_set( 51182 BCM_CONTROL(unit)->unit, 51183 port, 51184 mode); 51185 } 51186 51187 int 51188 bcm_loop_port_mdix_status_get( 51189 int unit, 51190 bcm_port_t port, 51191 bcm_port_mdix_status_t * status) 51192 { 51193 return bcm_port_mdix_status_get( 51194 BCM_CONTROL(unit)->unit, 51195 port, 51196 status); 51197 } 51198 51199 int 51200 bcm_loop_port_medium_config_get( 51201 int unit, 51202 bcm_port_t port, 51203 bcm_port_medium_t medium, 51204 bcm_phy_config_t * config) 51205 { 51206 return bcm_port_medium_config_get( 51207 BCM_CONTROL(unit)->unit, 51208 port, 51209 medium, 51210 config); 51211 } 51212 51213 int 51214 bcm_loop_port_medium_config_set( 51215 int unit, 51216 bcm_port_t port, 51217 bcm_port_medium_t medium, 51218 bcm_phy_config_t * config) 51219 { 51220 return bcm_port_medium_config_set( 51221 BCM_CONTROL(unit)->unit, 51222 port, 51223 medium, 51224 config); 51225 } 51226 51227 int 51228 bcm_loop_port_medium_get( 51229 int unit, 51230 bcm_port_t port, 51231 bcm_port_medium_t * medium) 51232 { 51233 return bcm_port_medium_get( 51234 BCM_CONTROL(unit)->unit, 51235 port, 51236 medium); 51237 } 51238 51239 int 51240 bcm_loop_port_medium_status_register( 51241 int unit, 51242 bcm_port_t port, 51243 bcm_port_medium_status_cb_t callback, 51244 void * user_data) 51245 { 51246 return bcm_port_medium_status_register( 51247 BCM_CONTROL(unit)->unit, 51248 port, 51249 callback, 51250 user_data); 51251 } 51252 51253 int 51254 bcm_loop_port_medium_status_unregister( 51255 int unit, 51256 bcm_port_t port, 51257 bcm_port_medium_status_cb_t callback, 51258 void * user_data) 51259 { 51260 return bcm_port_medium_status_unregister( 51261 BCM_CONTROL(unit)->unit, 51262 port, 51263 callback, 51264 user_data); 51265 } 51266 51267 int 51268 bcm_loop_port_modid_egress_get( 51269 int unit, 51270 bcm_port_t port, 51271 bcm_module_t modid, 51272 bcm_pbmp_t * pbmp) 51273 { 51274 return bcm_port_modid_egress_get( 51275 BCM_CONTROL(unit)->unit, 51276 port, 51277 modid, 51278 pbmp); 51279 } 51280 51281 int 51282 bcm_loop_port_modid_egress_set( 51283 int unit, 51284 bcm_port_t port, 51285 bcm_module_t modid, 51286 bcm_pbmp_t pbmp) 51287 { 51288 return bcm_port_modid_egress_set( 51289 BCM_CONTROL(unit)->unit, 51290 port, 51291 modid, 51292 pbmp); 51293 } 51294 51295 int 51296 bcm_loop_port_modid_enable_get( 51297 int unit, 51298 bcm_port_t port, 51299 int modid, 51300 int * enable) 51301 { 51302 return bcm_port_modid_enable_get( 51303 BCM_CONTROL(unit)->unit, 51304 port, 51305 modid, 51306 enable); 51307 } 51308 51309 int 51310 bcm_loop_port_modid_enable_set( 51311 int unit, 51312 bcm_port_t port, 51313 int modid, 51314 int enable) 51315 { 51316 return bcm_port_modid_enable_set( 51317 BCM_CONTROL(unit)->unit, 51318 port, 51319 modid, 51320 enable); 51321 } 51322 51323 int 51324 bcm_loop_port_nif_priority_get( 51325 int unit, 51326 bcm_gport_t local_port, 51327 uint32 flags, 51328 bcm_port_nif_prio_t * priority, 51329 bcm_pbmp_t * affected_ports) 51330 { 51331 return bcm_port_nif_priority_get( 51332 BCM_CONTROL(unit)->unit, 51333 local_port, 51334 flags, 51335 priority, 51336 affected_ports); 51337 } 51338 51339 int 51340 bcm_loop_port_nif_priority_set( 51341 int unit, 51342 bcm_gport_t local_port, 51343 uint32 flags, 51344 bcm_port_nif_prio_t * priority, 51345 bcm_pbmp_t * affected_ports) 51346 { 51347 return bcm_port_nif_priority_set( 51348 BCM_CONTROL(unit)->unit, 51349 local_port, 51350 flags, 51351 priority, 51352 affected_ports); 51353 } 51354 51355 int 51356 bcm_loop_port_pause_addr_get( 51357 int unit, 51358 bcm_port_t port, 51359 bcm_mac_t mac) 51360 { 51361 return bcm_port_pause_addr_get( 51362 BCM_CONTROL(unit)->unit, 51363 port, 51364 mac); 51365 } 51366 51367 int 51368 bcm_loop_port_pause_addr_set( 51369 int unit, 51370 bcm_port_t port, 51371 bcm_mac_t mac) 51372 { 51373 return bcm_port_pause_addr_set( 51374 BCM_CONTROL(unit)->unit, 51375 port, 51376 mac); 51377 } 51378 51379 int 51380 bcm_loop_port_pause_get( 51381 int unit, 51382 bcm_port_t port, 51383 int * pause_tx, 51384 int * pause_rx) 51385 { 51386 return bcm_port_pause_get( 51387 BCM_CONTROL(unit)->unit, 51388 port, 51389 pause_tx, 51390 pause_rx); 51391 } 51392 51393 int 51394 bcm_loop_port_pause_set( 51395 int unit, 51396 bcm_port_t port, 51397 int pause_tx, 51398 int pause_rx) 51399 { 51400 return bcm_port_pause_set( 51401 BCM_CONTROL(unit)->unit, 51402 port, 51403 pause_tx, 51404 pause_rx); 51405 } 51406 51407 int 51408 bcm_loop_port_pause_sym_get( 51409 int unit, 51410 bcm_port_t port, 51411 int * pause) 51412 { 51413 return bcm_port_pause_sym_get( 51414 BCM_CONTROL(unit)->unit, 51415 port, 51416 pause); 51417 } 51418 51419 int 51420 bcm_loop_port_pause_sym_set( 51421 int unit, 51422 bcm_port_t port, 51423 int pause) 51424 { 51425 return bcm_port_pause_sym_set( 51426 BCM_CONTROL(unit)->unit, 51427 port, 51428 pause); 51429 } 51430 51431 int 51432 bcm_loop_port_pfm_get( 51433 int unit, 51434 bcm_port_t port, 51435 int * mode) 51436 { 51437 return bcm_port_pfm_get( 51438 BCM_CONTROL(unit)->unit, 51439 port, 51440 mode); 51441 } 51442 51443 int 51444 bcm_loop_port_pfm_set( 51445 int unit, 51446 bcm_port_t port, 51447 int mode) 51448 { 51449 return bcm_port_pfm_set( 51450 BCM_CONTROL(unit)->unit, 51451 port, 51452 mode); 51453 } 51454 51455 int 51456 bcm_loop_port_phy_control_get( 51457 int unit, 51458 bcm_port_t port, 51459 bcm_port_phy_control_t type, 51460 uint32 * value) 51461 { 51462 return bcm_port_phy_control_get( 51463 BCM_CONTROL(unit)->unit, 51464 port, 51465 type, 51466 value); 51467 } 51468 51469 int 51470 bcm_loop_port_phy_control_set( 51471 int unit, 51472 bcm_port_t port, 51473 bcm_port_phy_control_t type, 51474 uint32 value) 51475 { 51476 return bcm_port_phy_control_set( 51477 BCM_CONTROL(unit)->unit, 51478 port, 51479 type, 51480 value); 51481 } 51482 51483 int 51484 bcm_loop_port_phy_drv_name_get( 51485 int unit, 51486 bcm_port_t port, 51487 char * name, 51488 int len) 51489 { 51490 return bcm_port_phy_drv_name_get( 51491 BCM_CONTROL(unit)->unit, 51492 port, 51493 name, 51494 len); 51495 } 51496 51497 int 51498 bcm_loop_port_phy_firmware_set( 51499 int unit, 51500 bcm_port_t port, 51501 uint32 flags, 51502 int offset, 51503 uint8 * array, 51504 int length) 51505 { 51506 return bcm_port_phy_firmware_set( 51507 BCM_CONTROL(unit)->unit, 51508 port, 51509 flags, 51510 offset, 51511 array, 51512 length); 51513 } 51514 51515 int 51516 bcm_loop_port_phy_get( 51517 int unit, 51518 bcm_port_t port, 51519 uint32 flags, 51520 uint32 phy_reg_addr, 51521 uint32 * phy_data) 51522 { 51523 return bcm_port_phy_get( 51524 BCM_CONTROL(unit)->unit, 51525 port, 51526 flags, 51527 phy_reg_addr, 51528 phy_data); 51529 } 51530 51531 int 51532 bcm_loop_port_phy_modify( 51533 int unit, 51534 bcm_port_t port, 51535 uint32 flags, 51536 uint32 phy_reg_addr, 51537 uint32 phy_data, 51538 uint32 phy_mask) 51539 { 51540 return bcm_port_phy_modify( 51541 BCM_CONTROL(unit)->unit, 51542 port, 51543 flags, 51544 phy_reg_addr, 51545 phy_data, 51546 phy_mask); 51547 } 51548 51549 int 51550 bcm_loop_port_phy_multi_get( 51551 int unit, 51552 bcm_port_t port, 51553 uint32 flags, 51554 uint32 dev_addr, 51555 uint32 offset, 51556 int max_size, 51557 uint8 * data, 51558 int * actual_size) 51559 { 51560 return bcm_port_phy_multi_get( 51561 BCM_CONTROL(unit)->unit, 51562 port, 51563 flags, 51564 dev_addr, 51565 offset, 51566 max_size, 51567 data, 51568 actual_size); 51569 } 51570 51571 int 51572 bcm_loop_port_phy_reset( 51573 int unit, 51574 bcm_port_t port) 51575 { 51576 return bcm_port_phy_reset( 51577 BCM_CONTROL(unit)->unit, 51578 port); 51579 } 51580 51581 int 51582 bcm_loop_port_phy_reset_register( 51583 int unit, 51584 bcm_port_t port, 51585 bcm_port_phy_reset_cb_t callback, 51586 void * user_data) 51587 { 51588 return bcm_port_phy_reset_register( 51589 BCM_CONTROL(unit)->unit, 51590 port, 51591 callback, 51592 user_data); 51593 } 51594 51595 int 51596 bcm_loop_port_phy_reset_unregister( 51597 int unit, 51598 bcm_port_t port, 51599 bcm_port_phy_reset_cb_t callback, 51600 void * user_data) 51601 { 51602 return bcm_port_phy_reset_unregister( 51603 BCM_CONTROL(unit)->unit, 51604 port, 51605 callback, 51606 user_data); 51607 } 51608 51609 int 51610 bcm_loop_port_phy_set( 51611 int unit, 51612 bcm_port_t port, 51613 uint32 flags, 51614 uint32 phy_reg_addr, 51615 uint32 phy_data) 51616 { 51617 return bcm_port_phy_set( 51618 BCM_CONTROL(unit)->unit, 51619 port, 51620 flags, 51621 phy_reg_addr, 51622 phy_data); 51623 } 51624 51625 int 51626 bcm_loop_port_phy_timesync_config_get( 51627 int unit, 51628 bcm_port_t port, 51629 bcm_port_phy_timesync_config_t * conf) 51630 { 51631 return bcm_port_phy_timesync_config_get( 51632 BCM_CONTROL(unit)->unit, 51633 port, 51634 conf); 51635 } 51636 51637 int 51638 bcm_loop_port_phy_timesync_config_set( 51639 int unit, 51640 bcm_port_t port, 51641 bcm_port_phy_timesync_config_t * conf) 51642 { 51643 return bcm_port_phy_timesync_config_set( 51644 BCM_CONTROL(unit)->unit, 51645 port, 51646 conf); 51647 } 51648 51649 /* bcm_port_phy_timesync_config_t_init not dispatchable */ 51650 51651 int 51652 bcm_loop_port_phy_timesync_enhanced_capture_get( 51653 int unit, 51654 bcm_port_t port, 51655 bcm_port_phy_timesync_enhanced_capture_t * value) 51656 { 51657 return bcm_port_phy_timesync_enhanced_capture_get( 51658 BCM_CONTROL(unit)->unit, 51659 port, 51660 value); 51661 } 51662 51663 int 51664 bcm_loop_port_phy_tx_get( 51665 int unit, 51666 bcm_port_t port, 51667 bcm_port_phy_tx_t * tx) 51668 { 51669 return bcm_port_phy_tx_get( 51670 BCM_CONTROL(unit)->unit, 51671 port, 51672 tx); 51673 } 51674 51675 int 51676 bcm_loop_port_phy_tx_set( 51677 int unit, 51678 bcm_port_t port, 51679 bcm_port_phy_tx_t * tx) 51680 { 51681 return bcm_port_phy_tx_set( 51682 BCM_CONTROL(unit)->unit, 51683 port, 51684 tx); 51685 } 51686 51687 /* bcm_port_phy_tx_t_init not dispatchable */ 51688 51689 int 51690 bcm_loop_port_policer_get( 51691 int unit, 51692 bcm_port_t port, 51693 bcm_policer_t * policer_id) 51694 { 51695 return bcm_port_policer_get( 51696 BCM_CONTROL(unit)->unit, 51697 port, 51698 policer_id); 51699 } 51700 51701 int 51702 bcm_loop_port_policer_set( 51703 int unit, 51704 bcm_port_t port, 51705 bcm_policer_t policer_id) 51706 { 51707 return bcm_port_policer_set( 51708 BCM_CONTROL(unit)->unit, 51709 port, 51710 policer_id); 51711 } 51712 51713 int 51714 bcm_loop_port_pon_info_get( 51715 int unit, 51716 bcm_port_t pon_port, 51717 bcm_port_pon_info_t * info) 51718 { 51719 return bcm_port_pon_info_get( 51720 BCM_CONTROL(unit)->unit, 51721 pon_port, 51722 info); 51723 } 51724 51725 int 51726 bcm_loop_port_pon_info_set( 51727 int unit, 51728 bcm_port_t pon_port, 51729 bcm_port_pon_info_t * info) 51730 { 51731 return bcm_port_pon_info_set( 51732 BCM_CONTROL(unit)->unit, 51733 pon_port, 51734 info); 51735 } 51736 51737 int 51738 bcm_loop_port_pon_tunnel_add( 51739 int unit, 51740 bcm_gport_t pon_port, 51741 uint32 flags, 51742 bcm_gport_t * tunnel_port_id) 51743 { 51744 return bcm_port_pon_tunnel_add( 51745 BCM_CONTROL(unit)->unit, 51746 pon_port, 51747 flags, 51748 tunnel_port_id); 51749 } 51750 51751 int 51752 bcm_loop_port_pon_tunnel_map_get( 51753 int unit, 51754 bcm_gport_t pon_port, 51755 bcm_tunnel_id_t tunnel_id, 51756 bcm_gport_t * tunnel_port_id) 51757 { 51758 return bcm_port_pon_tunnel_map_get( 51759 BCM_CONTROL(unit)->unit, 51760 pon_port, 51761 tunnel_id, 51762 tunnel_port_id); 51763 } 51764 51765 int 51766 bcm_loop_port_pon_tunnel_map_set( 51767 int unit, 51768 bcm_gport_t pon_port, 51769 bcm_tunnel_id_t tunnel_id, 51770 bcm_gport_t tunnel_port_id) 51771 { 51772 return bcm_port_pon_tunnel_map_set( 51773 BCM_CONTROL(unit)->unit, 51774 pon_port, 51775 tunnel_id, 51776 tunnel_port_id); 51777 } 51778 51779 int 51780 bcm_loop_port_pon_tunnel_remove( 51781 int unit, 51782 bcm_gport_t tunnel_port_id) 51783 { 51784 return bcm_port_pon_tunnel_remove( 51785 BCM_CONTROL(unit)->unit, 51786 tunnel_port_id); 51787 } 51788 51789 int 51790 bcm_loop_port_preemption_control_get( 51791 int unit, 51792 bcm_gport_t gport, 51793 bcm_port_preempt_control_t type, 51794 uint32 * arg) 51795 { 51796 return bcm_port_preemption_control_get( 51797 BCM_CONTROL(unit)->unit, 51798 gport, 51799 type, 51800 arg); 51801 } 51802 51803 int 51804 bcm_loop_port_preemption_control_set( 51805 int unit, 51806 bcm_gport_t gport, 51807 bcm_port_preempt_control_t type, 51808 uint32 arg) 51809 { 51810 return bcm_port_preemption_control_set( 51811 BCM_CONTROL(unit)->unit, 51812 gport, 51813 type, 51814 arg); 51815 } 51816 51817 int 51818 bcm_loop_port_preemption_status_get( 51819 int unit, 51820 bcm_gport_t gport, 51821 bcm_port_preempt_status_t type, 51822 uint32 * status) 51823 { 51824 return bcm_port_preemption_status_get( 51825 BCM_CONTROL(unit)->unit, 51826 gport, 51827 type, 51828 status); 51829 } 51830 51831 int 51832 bcm_loop_port_priority_color_get( 51833 int unit, 51834 bcm_port_t port, 51835 int prio, 51836 bcm_color_t * color) 51837 { 51838 return bcm_port_priority_color_get( 51839 BCM_CONTROL(unit)->unit, 51840 port, 51841 prio, 51842 color); 51843 } 51844 51845 int 51846 bcm_loop_port_priority_color_set( 51847 int unit, 51848 bcm_port_t port, 51849 int prio, 51850 bcm_color_t color) 51851 { 51852 return bcm_port_priority_color_set( 51853 BCM_CONTROL(unit)->unit, 51854 port, 51855 prio, 51856 color); 51857 } 51858 51859 int 51860 bcm_loop_port_priority_config_get( 51861 int unit, 51862 bcm_port_t port, 51863 bcm_port_prio_config_t * priority_config) 51864 { 51865 return bcm_port_priority_config_get( 51866 BCM_CONTROL(unit)->unit, 51867 port, 51868 priority_config); 51869 } 51870 51871 int 51872 bcm_loop_port_priority_config_set( 51873 int unit, 51874 bcm_port_t port, 51875 bcm_port_prio_config_t * port_priority_config) 51876 { 51877 return bcm_port_priority_config_set( 51878 BCM_CONTROL(unit)->unit, 51879 port, 51880 port_priority_config); 51881 } 51882 51883 int 51884 bcm_loop_port_priority_group_config_get( 51885 int unit, 51886 bcm_gport_t gport, 51887 int priority_group, 51888 bcm_port_priority_group_config_t * prigrp_config) 51889 { 51890 return bcm_port_priority_group_config_get( 51891 BCM_CONTROL(unit)->unit, 51892 gport, 51893 priority_group, 51894 prigrp_config); 51895 } 51896 51897 int 51898 bcm_loop_port_priority_group_config_set( 51899 int unit, 51900 bcm_gport_t gport, 51901 int priority_group, 51902 bcm_port_priority_group_config_t * prigrp_config) 51903 { 51904 return bcm_port_priority_group_config_set( 51905 BCM_CONTROL(unit)->unit, 51906 gport, 51907 priority_group, 51908 prigrp_config); 51909 } 51910 51911 /* bcm_port_priority_group_config_t_init not dispatchable */ 51912 51913 int 51914 bcm_loop_port_priority_group_mapping_get( 51915 int unit, 51916 bcm_gport_t gport, 51917 int prio, 51918 int * priority_group) 51919 { 51920 return bcm_port_priority_group_mapping_get( 51921 BCM_CONTROL(unit)->unit, 51922 gport, 51923 prio, 51924 priority_group); 51925 } 51926 51927 int 51928 bcm_loop_port_priority_group_mapping_set( 51929 int unit, 51930 bcm_gport_t gport, 51931 int prio, 51932 int priority_group) 51933 { 51934 return bcm_port_priority_group_mapping_set( 51935 BCM_CONTROL(unit)->unit, 51936 gport, 51937 prio, 51938 priority_group); 51939 } 51940 51941 int 51942 bcm_loop_port_probe( 51943 int unit, 51944 bcm_pbmp_t pbmp, 51945 bcm_pbmp_t * okay_pbmp) 51946 { 51947 return bcm_port_probe( 51948 BCM_CONTROL(unit)->unit, 51949 pbmp, 51950 okay_pbmp); 51951 } 51952 51953 int 51954 bcm_loop_port_protocol_vlan_add( 51955 int unit, 51956 bcm_port_t port, 51957 bcm_port_frametype_t frame, 51958 bcm_port_ethertype_t ether, 51959 bcm_vlan_t vid) 51960 { 51961 return bcm_port_protocol_vlan_add( 51962 BCM_CONTROL(unit)->unit, 51963 port, 51964 frame, 51965 ether, 51966 vid); 51967 } 51968 51969 int 51970 bcm_loop_port_protocol_vlan_delete( 51971 int unit, 51972 bcm_port_t port, 51973 bcm_port_frametype_t frame, 51974 bcm_port_ethertype_t ether) 51975 { 51976 return bcm_port_protocol_vlan_delete( 51977 BCM_CONTROL(unit)->unit, 51978 port, 51979 frame, 51980 ether); 51981 } 51982 51983 int 51984 bcm_loop_port_protocol_vlan_delete_all( 51985 int unit, 51986 bcm_port_t port) 51987 { 51988 return bcm_port_protocol_vlan_delete_all( 51989 BCM_CONTROL(unit)->unit, 51990 port); 51991 } 51992 51993 int 51994 bcm_loop_port_queued_count_get( 51995 int unit, 51996 bcm_port_t port, 51997 uint32 * count) 51998 { 51999 return bcm_port_queued_count_get( 52000 BCM_CONTROL(unit)->unit, 52001 port, 52002 count); 52003 } 52004 52005 int 52006 bcm_loop_port_rate_egress_get( 52007 int unit, 52008 bcm_port_t port, 52009 uint32 * kbits_sec, 52010 uint32 * kbits_burst) 52011 { 52012 return bcm_port_rate_egress_get( 52013 BCM_CONTROL(unit)->unit, 52014 port, 52015 kbits_sec, 52016 kbits_burst); 52017 } 52018 52019 int 52020 bcm_loop_port_rate_egress_pps_get( 52021 int unit, 52022 bcm_port_t port, 52023 uint32 * pps, 52024 uint32 * burst) 52025 { 52026 return bcm_port_rate_egress_pps_get( 52027 BCM_CONTROL(unit)->unit, 52028 port, 52029 pps, 52030 burst); 52031 } 52032 52033 int 52034 bcm_loop_port_rate_egress_pps_set( 52035 int unit, 52036 bcm_port_t port, 52037 uint32 pps, 52038 uint32 burst) 52039 { 52040 return bcm_port_rate_egress_pps_set( 52041 BCM_CONTROL(unit)->unit, 52042 port, 52043 pps, 52044 burst); 52045 } 52046 52047 int 52048 bcm_loop_port_rate_egress_set( 52049 int unit, 52050 bcm_port_t port, 52051 uint32 kbits_sec, 52052 uint32 kbits_burst) 52053 { 52054 return bcm_port_rate_egress_set( 52055 BCM_CONTROL(unit)->unit, 52056 port, 52057 kbits_sec, 52058 kbits_burst); 52059 } 52060 52061 int 52062 bcm_loop_port_rate_ingress_get( 52063 int unit, 52064 bcm_port_t port, 52065 uint32 * kbits_sec, 52066 uint32 * kbits_burst) 52067 { 52068 return bcm_port_rate_ingress_get( 52069 BCM_CONTROL(unit)->unit, 52070 port, 52071 kbits_sec, 52072 kbits_burst); 52073 } 52074 52075 int 52076 bcm_loop_port_rate_ingress_set( 52077 int unit, 52078 bcm_port_t port, 52079 uint32 kbits_sec, 52080 uint32 kbits_burst) 52081 { 52082 return bcm_port_rate_ingress_set( 52083 BCM_CONTROL(unit)->unit, 52084 port, 52085 kbits_sec, 52086 kbits_burst); 52087 } 52088 52089 int 52090 bcm_loop_port_rate_pause_get( 52091 int unit, 52092 bcm_port_t port, 52093 uint32 * kbits_pause, 52094 uint32 * kbits_resume) 52095 { 52096 return bcm_port_rate_pause_get( 52097 BCM_CONTROL(unit)->unit, 52098 port, 52099 kbits_pause, 52100 kbits_resume); 52101 } 52102 52103 int 52104 bcm_loop_port_rate_pause_set( 52105 int unit, 52106 bcm_port_t port, 52107 uint32 kbits_pause, 52108 uint32 kbits_resume) 52109 { 52110 return bcm_port_rate_pause_set( 52111 BCM_CONTROL(unit)->unit, 52112 port, 52113 kbits_pause, 52114 kbits_resume); 52115 } 52116 52117 int 52118 bcm_loop_port_redirect_config_get( 52119 int unit, 52120 bcm_gport_t gport, 52121 bcm_port_redirect_config_t * redirect_config) 52122 { 52123 return bcm_port_redirect_config_get( 52124 BCM_CONTROL(unit)->unit, 52125 gport, 52126 redirect_config); 52127 } 52128 52129 int 52130 bcm_loop_port_redirect_config_set( 52131 int unit, 52132 bcm_gport_t port, 52133 bcm_port_redirect_config_t * redirect_config) 52134 { 52135 return bcm_port_redirect_config_set( 52136 BCM_CONTROL(unit)->unit, 52137 port, 52138 redirect_config); 52139 } 52140 52141 /* bcm_port_redirect_config_t_init not dispatchable */ 52142 52143 int 52144 bcm_loop_port_remove( 52145 int unit, 52146 bcm_port_t port, 52147 uint32 flags) 52148 { 52149 return bcm_port_remove( 52150 BCM_CONTROL(unit)->unit, 52151 port, 52152 flags); 52153 } 52154 52155 int 52156 bcm_loop_port_resource_default_get( 52157 int unit, 52158 bcm_gport_t port, 52159 uint32 flags, 52160 bcm_port_resource_t * resource) 52161 { 52162 return bcm_port_resource_default_get( 52163 BCM_CONTROL(unit)->unit, 52164 port, 52165 flags, 52166 resource); 52167 } 52168 52169 int 52170 bcm_loop_port_resource_get( 52171 int unit, 52172 bcm_gport_t port, 52173 bcm_port_resource_t * resource) 52174 { 52175 return bcm_port_resource_get( 52176 BCM_CONTROL(unit)->unit, 52177 port, 52178 resource); 52179 } 52180 52181 int 52182 bcm_loop_port_resource_multi_set( 52183 int unit, 52184 int nport, 52185 bcm_port_resource_t * resource) 52186 { 52187 return bcm_port_resource_multi_set( 52188 BCM_CONTROL(unit)->unit, 52189 nport, 52190 resource); 52191 } 52192 52193 int 52194 bcm_loop_port_resource_set( 52195 int unit, 52196 bcm_gport_t port, 52197 bcm_port_resource_t * resource) 52198 { 52199 return bcm_port_resource_set( 52200 BCM_CONTROL(unit)->unit, 52201 port, 52202 resource); 52203 } 52204 52205 int 52206 bcm_loop_port_resource_speed_config_validate( 52207 int unit, 52208 bcm_port_resource_t * resource, 52209 bcm_pbmp_t * pbmp) 52210 { 52211 return bcm_port_resource_speed_config_validate( 52212 BCM_CONTROL(unit)->unit, 52213 resource, 52214 pbmp); 52215 } 52216 52217 int 52218 bcm_loop_port_resource_speed_get( 52219 int unit, 52220 bcm_gport_t port, 52221 bcm_port_resource_t * resource) 52222 { 52223 return bcm_port_resource_speed_get( 52224 BCM_CONTROL(unit)->unit, 52225 port, 52226 resource); 52227 } 52228 52229 int 52230 bcm_loop_port_resource_speed_multi_set( 52231 int unit, 52232 int nport, 52233 bcm_port_resource_t * resource) 52234 { 52235 return bcm_port_resource_speed_multi_set( 52236 BCM_CONTROL(unit)->unit, 52237 nport, 52238 resource); 52239 } 52240 52241 int 52242 bcm_loop_port_resource_speed_set( 52243 int unit, 52244 bcm_gport_t port, 52245 bcm_port_resource_t * resource) 52246 { 52247 return bcm_port_resource_speed_set( 52248 BCM_CONTROL(unit)->unit, 52249 port, 52250 resource); 52251 } 52252 52253 /* bcm_port_resource_t_init not dispatchable */ 52254 52255 int 52256 bcm_loop_port_resource_traverse( 52257 int unit, 52258 bcm_port_resource_traverse_cb trav_fn, 52259 void * user_data) 52260 { 52261 return bcm_port_resource_traverse( 52262 BCM_CONTROL(unit)->unit, 52263 trav_fn, 52264 user_data); 52265 } 52266 52267 int 52268 bcm_loop_port_rlm_config_get( 52269 int unit, 52270 bcm_port_t port, 52271 bcm_port_rlm_config_t * rlm_config, 52272 int * enable) 52273 { 52274 return bcm_port_rlm_config_get( 52275 BCM_CONTROL(unit)->unit, 52276 port, 52277 rlm_config, 52278 enable); 52279 } 52280 52281 int 52282 bcm_loop_port_rlm_config_set( 52283 int unit, 52284 bcm_port_t port, 52285 bcm_port_rlm_config_t * rlm_config, 52286 int enable) 52287 { 52288 return bcm_port_rlm_config_set( 52289 BCM_CONTROL(unit)->unit, 52290 port, 52291 rlm_config, 52292 enable); 52293 } 52294 52295 /* bcm_port_rlm_config_t_init not dispatchable */ 52296 52297 int 52298 bcm_loop_port_rlm_status_get( 52299 int unit, 52300 bcm_port_t port, 52301 bcm_port_rlm_status_t * rlm_status) 52302 { 52303 return bcm_port_rlm_status_get( 52304 BCM_CONTROL(unit)->unit, 52305 port, 52306 rlm_status); 52307 } 52308 52309 int 52310 bcm_loop_port_sample_rate_get( 52311 int unit, 52312 bcm_port_t port, 52313 int * ingress_rate, 52314 int * egress_rate) 52315 { 52316 return bcm_port_sample_rate_get( 52317 BCM_CONTROL(unit)->unit, 52318 port, 52319 ingress_rate, 52320 egress_rate); 52321 } 52322 52323 int 52324 bcm_loop_port_sample_rate_set( 52325 int unit, 52326 bcm_port_t port, 52327 int ingress_rate, 52328 int egress_rate) 52329 { 52330 return bcm_port_sample_rate_set( 52331 BCM_CONTROL(unit)->unit, 52332 port, 52333 ingress_rate, 52334 egress_rate); 52335 } 52336 52337 int 52338 bcm_loop_port_selective_get( 52339 int unit, 52340 bcm_port_t port, 52341 bcm_port_info_t * info) 52342 { 52343 return bcm_port_selective_get( 52344 BCM_CONTROL(unit)->unit, 52345 port, 52346 info); 52347 } 52348 52349 int 52350 bcm_loop_port_selective_set( 52351 int unit, 52352 bcm_port_t port, 52353 bcm_port_info_t * info) 52354 { 52355 return bcm_port_selective_set( 52356 BCM_CONTROL(unit)->unit, 52357 port, 52358 info); 52359 } 52360 52361 int 52362 bcm_loop_port_speed_ability_local_get( 52363 int unit, 52364 bcm_port_t port, 52365 int max_num_ability, 52366 bcm_port_speed_ability_t * abilities_array, 52367 int * actual_num_ability) 52368 { 52369 return bcm_port_speed_ability_local_get( 52370 BCM_CONTROL(unit)->unit, 52371 port, 52372 max_num_ability, 52373 abilities_array, 52374 actual_num_ability); 52375 } 52376 52377 int 52378 bcm_loop_port_speed_get( 52379 int unit, 52380 bcm_port_t port, 52381 int * speed) 52382 { 52383 return bcm_port_speed_get( 52384 BCM_CONTROL(unit)->unit, 52385 port, 52386 speed); 52387 } 52388 52389 int 52390 bcm_loop_port_speed_max( 52391 int unit, 52392 bcm_port_t port, 52393 int * speed) 52394 { 52395 return bcm_port_speed_max( 52396 BCM_CONTROL(unit)->unit, 52397 port, 52398 speed); 52399 } 52400 52401 int 52402 bcm_loop_port_speed_set( 52403 int unit, 52404 bcm_port_t port, 52405 int speed) 52406 { 52407 return bcm_port_speed_set( 52408 BCM_CONTROL(unit)->unit, 52409 port, 52410 speed); 52411 } 52412 52413 int 52414 bcm_loop_port_stat_attach( 52415 int unit, 52416 bcm_gport_t port, 52417 uint32 stat_counter_id) 52418 { 52419 return bcm_port_stat_attach( 52420 BCM_CONTROL(unit)->unit, 52421 port, 52422 stat_counter_id); 52423 } 52424 52425 int 52426 bcm_loop_port_stat_counter_get( 52427 int unit, 52428 bcm_gport_t port, 52429 bcm_port_stat_t stat, 52430 uint32 num_entries, 52431 uint32 * counter_indexes, 52432 bcm_stat_value_t * counter_values) 52433 { 52434 return bcm_port_stat_counter_get( 52435 BCM_CONTROL(unit)->unit, 52436 port, 52437 stat, 52438 num_entries, 52439 counter_indexes, 52440 counter_values); 52441 } 52442 52443 int 52444 bcm_loop_port_stat_counter_set( 52445 int unit, 52446 bcm_gport_t port, 52447 bcm_port_stat_t stat, 52448 uint32 num_entries, 52449 uint32 * counter_indexes, 52450 bcm_stat_value_t * counter_values) 52451 { 52452 return bcm_port_stat_counter_set( 52453 BCM_CONTROL(unit)->unit, 52454 port, 52455 stat, 52456 num_entries, 52457 counter_indexes, 52458 counter_values); 52459 } 52460 52461 int 52462 bcm_loop_port_stat_counter_sync_get( 52463 int unit, 52464 bcm_gport_t port, 52465 bcm_port_stat_t stat, 52466 uint32 num_entries, 52467 uint32 * counter_indexes, 52468 bcm_stat_value_t * counter_values) 52469 { 52470 return bcm_port_stat_counter_sync_get( 52471 BCM_CONTROL(unit)->unit, 52472 port, 52473 stat, 52474 num_entries, 52475 counter_indexes, 52476 counter_values); 52477 } 52478 52479 int 52480 bcm_loop_port_stat_detach( 52481 int unit, 52482 bcm_gport_t port) 52483 { 52484 return bcm_port_stat_detach( 52485 BCM_CONTROL(unit)->unit, 52486 port); 52487 } 52488 52489 int 52490 bcm_loop_port_stat_detach_with_id( 52491 int unit, 52492 bcm_gport_t port, 52493 uint32 stat_counter_id) 52494 { 52495 return bcm_port_stat_detach_with_id( 52496 BCM_CONTROL(unit)->unit, 52497 port, 52498 stat_counter_id); 52499 } 52500 52501 int 52502 bcm_loop_port_stat_enable_set( 52503 int unit, 52504 bcm_gport_t port, 52505 int enable) 52506 { 52507 return bcm_port_stat_enable_set( 52508 BCM_CONTROL(unit)->unit, 52509 port, 52510 enable); 52511 } 52512 52513 int 52514 bcm_loop_port_stat_get( 52515 int unit, 52516 bcm_gport_t port, 52517 bcm_port_stat_t stat, 52518 uint64 * val) 52519 { 52520 return bcm_port_stat_get( 52521 BCM_CONTROL(unit)->unit, 52522 port, 52523 stat, 52524 val); 52525 } 52526 52527 int 52528 bcm_loop_port_stat_get32( 52529 int unit, 52530 bcm_gport_t port, 52531 bcm_port_stat_t stat, 52532 uint32 * val) 52533 { 52534 return bcm_port_stat_get32( 52535 BCM_CONTROL(unit)->unit, 52536 port, 52537 stat, 52538 val); 52539 } 52540 52541 int 52542 bcm_loop_port_stat_id_get( 52543 int unit, 52544 bcm_gport_t port, 52545 bcm_port_stat_t stat, 52546 uint32 * stat_counter_id) 52547 { 52548 return bcm_port_stat_id_get( 52549 BCM_CONTROL(unit)->unit, 52550 port, 52551 stat, 52552 stat_counter_id); 52553 } 52554 52555 int 52556 bcm_loop_port_stat_multi_get( 52557 int unit, 52558 bcm_gport_t port, 52559 int nstat, 52560 bcm_port_stat_t * stat_arr, 52561 uint64 * value_arr) 52562 { 52563 return bcm_port_stat_multi_get( 52564 BCM_CONTROL(unit)->unit, 52565 port, 52566 nstat, 52567 stat_arr, 52568 value_arr); 52569 } 52570 52571 int 52572 bcm_loop_port_stat_multi_get32( 52573 int unit, 52574 bcm_gport_t port, 52575 int nstat, 52576 bcm_port_stat_t * stat_arr, 52577 uint32 * value_arr) 52578 { 52579 return bcm_port_stat_multi_get32( 52580 BCM_CONTROL(unit)->unit, 52581 port, 52582 nstat, 52583 stat_arr, 52584 value_arr); 52585 } 52586 52587 int 52588 bcm_loop_port_stat_multi_set( 52589 int unit, 52590 bcm_gport_t port, 52591 int nstat, 52592 bcm_port_stat_t * stat_arr, 52593 uint64 * value_arr) 52594 { 52595 return bcm_port_stat_multi_set( 52596 BCM_CONTROL(unit)->unit, 52597 port, 52598 nstat, 52599 stat_arr, 52600 value_arr); 52601 } 52602 52603 int 52604 bcm_loop_port_stat_multi_set32( 52605 int unit, 52606 bcm_gport_t port, 52607 int nstat, 52608 bcm_port_stat_t * stat_arr, 52609 uint32 * value_arr) 52610 { 52611 return bcm_port_stat_multi_set32( 52612 BCM_CONTROL(unit)->unit, 52613 port, 52614 nstat, 52615 stat_arr, 52616 value_arr); 52617 } 52618 52619 int 52620 bcm_loop_port_stat_set( 52621 int unit, 52622 bcm_gport_t port, 52623 bcm_port_stat_t stat, 52624 uint64 val) 52625 { 52626 return bcm_port_stat_set( 52627 BCM_CONTROL(unit)->unit, 52628 port, 52629 stat, 52630 val); 52631 } 52632 52633 int 52634 bcm_loop_port_stat_set32( 52635 int unit, 52636 bcm_gport_t port, 52637 bcm_port_stat_t stat, 52638 uint32 val) 52639 { 52640 return bcm_port_stat_set32( 52641 BCM_CONTROL(unit)->unit, 52642 port, 52643 stat, 52644 val); 52645 } 52646 52647 int 52648 bcm_loop_port_stat_sync_get( 52649 int unit, 52650 bcm_gport_t port, 52651 bcm_port_stat_t stat, 52652 uint64 * val) 52653 { 52654 return bcm_port_stat_sync_get( 52655 BCM_CONTROL(unit)->unit, 52656 port, 52657 stat, 52658 val); 52659 } 52660 52661 int 52662 bcm_loop_port_stat_sync_get32( 52663 int unit, 52664 bcm_gport_t port, 52665 bcm_port_stat_t stat, 52666 uint32 * val) 52667 { 52668 return bcm_port_stat_sync_get32( 52669 BCM_CONTROL(unit)->unit, 52670 port, 52671 stat, 52672 val); 52673 } 52674 52675 int 52676 bcm_loop_port_stp_get( 52677 int unit, 52678 bcm_port_t port, 52679 int * state) 52680 { 52681 return bcm_port_stp_get( 52682 BCM_CONTROL(unit)->unit, 52683 port, 52684 state); 52685 } 52686 52687 int 52688 bcm_loop_port_stp_set( 52689 int unit, 52690 bcm_port_t port, 52691 int state) 52692 { 52693 return bcm_port_stp_set( 52694 BCM_CONTROL(unit)->unit, 52695 port, 52696 state); 52697 } 52698 52699 int 52700 bcm_loop_port_subsidiary_ports_get( 52701 int unit, 52702 bcm_port_t port, 52703 bcm_pbmp_t * pbmp) 52704 { 52705 return bcm_port_subsidiary_ports_get( 52706 BCM_CONTROL(unit)->unit, 52707 port, 52708 pbmp); 52709 } 52710 52711 int 52712 bcm_loop_port_tgid_get( 52713 int unit, 52714 bcm_port_t port, 52715 int * tgid, 52716 int * psc) 52717 { 52718 return bcm_port_tgid_get( 52719 BCM_CONTROL(unit)->unit, 52720 port, 52721 tgid, 52722 psc); 52723 } 52724 52725 int 52726 bcm_loop_port_tgid_set( 52727 int unit, 52728 bcm_port_t port, 52729 int tgid, 52730 int psc) 52731 { 52732 return bcm_port_tgid_set( 52733 BCM_CONTROL(unit)->unit, 52734 port, 52735 tgid, 52736 psc); 52737 } 52738 52739 int 52740 bcm_loop_port_timestamp_adjust_get( 52741 int unit, 52742 bcm_port_t port, 52743 bcm_port_timestamp_adjust_t * ts_adjust) 52744 { 52745 return bcm_port_timestamp_adjust_get( 52746 BCM_CONTROL(unit)->unit, 52747 port, 52748 ts_adjust); 52749 } 52750 52751 int 52752 bcm_loop_port_timestamp_adjust_set( 52753 int unit, 52754 bcm_port_t port, 52755 bcm_port_timestamp_adjust_t * ts_adjust) 52756 { 52757 return bcm_port_timestamp_adjust_set( 52758 BCM_CONTROL(unit)->unit, 52759 port, 52760 ts_adjust); 52761 } 52762 52763 int 52764 bcm_loop_port_timesync_config_get( 52765 int unit, 52766 bcm_port_t port, 52767 int array_size, 52768 bcm_port_timesync_config_t * config_array, 52769 int * array_count) 52770 { 52771 return bcm_port_timesync_config_get( 52772 BCM_CONTROL(unit)->unit, 52773 port, 52774 array_size, 52775 config_array, 52776 array_count); 52777 } 52778 52779 int 52780 bcm_loop_port_timesync_config_set( 52781 int unit, 52782 bcm_port_t port, 52783 int config_count, 52784 bcm_port_timesync_config_t * config_array) 52785 { 52786 return bcm_port_timesync_config_set( 52787 BCM_CONTROL(unit)->unit, 52788 port, 52789 config_count, 52790 config_array); 52791 } 52792 52793 /* bcm_port_timesync_config_t_init not dispatchable */ 52794 52795 int 52796 bcm_loop_port_timesync_tx_info_get( 52797 int unit, 52798 bcm_port_t port, 52799 bcm_port_timesync_tx_info_t * tx_info) 52800 { 52801 return bcm_port_timesync_tx_info_get( 52802 BCM_CONTROL(unit)->unit, 52803 port, 52804 tx_info); 52805 } 52806 52807 int 52808 bcm_loop_port_tpid_add( 52809 int unit, 52810 bcm_port_t port, 52811 uint16 tpid, 52812 int color_select) 52813 { 52814 return bcm_port_tpid_add( 52815 BCM_CONTROL(unit)->unit, 52816 port, 52817 tpid, 52818 color_select); 52819 } 52820 52821 int 52822 bcm_loop_port_tpid_class_create( 52823 int unit, 52824 uint32 flags, 52825 bcm_port_tag_struct_type_t tag_struct_type, 52826 bcm_port_tag_format_class_t * tag_format_class_id) 52827 { 52828 return bcm_port_tpid_class_create( 52829 BCM_CONTROL(unit)->unit, 52830 flags, 52831 tag_struct_type, 52832 tag_format_class_id); 52833 } 52834 52835 int 52836 bcm_loop_port_tpid_class_destroy( 52837 int unit, 52838 uint32 flags, 52839 bcm_port_tag_format_class_t tag_format_class_id) 52840 { 52841 return bcm_port_tpid_class_destroy( 52842 BCM_CONTROL(unit)->unit, 52843 flags, 52844 tag_format_class_id); 52845 } 52846 52847 int 52848 bcm_loop_port_tpid_class_get( 52849 int unit, 52850 bcm_port_tpid_class_t * tpid_class) 52851 { 52852 return bcm_port_tpid_class_get( 52853 BCM_CONTROL(unit)->unit, 52854 tpid_class); 52855 } 52856 52857 int 52858 bcm_loop_port_tpid_class_set( 52859 int unit, 52860 bcm_port_tpid_class_t * tpid_class) 52861 { 52862 return bcm_port_tpid_class_set( 52863 BCM_CONTROL(unit)->unit, 52864 tpid_class); 52865 } 52866 52867 /* bcm_port_tpid_class_t_init not dispatchable */ 52868 52869 int 52870 bcm_loop_port_tpid_delete( 52871 int unit, 52872 bcm_port_t port, 52873 uint16 tpid) 52874 { 52875 return bcm_port_tpid_delete( 52876 BCM_CONTROL(unit)->unit, 52877 port, 52878 tpid); 52879 } 52880 52881 int 52882 bcm_loop_port_tpid_delete_all( 52883 int unit, 52884 bcm_port_t port) 52885 { 52886 return bcm_port_tpid_delete_all( 52887 BCM_CONTROL(unit)->unit, 52888 port); 52889 } 52890 52891 int 52892 bcm_loop_port_tpid_get( 52893 int unit, 52894 bcm_port_t port, 52895 uint16 * tpid) 52896 { 52897 return bcm_port_tpid_get( 52898 BCM_CONTROL(unit)->unit, 52899 port, 52900 tpid); 52901 } 52902 52903 int 52904 bcm_loop_port_tpid_get_all( 52905 int unit, 52906 bcm_port_t port, 52907 int size, 52908 uint16 * tpid_array, 52909 int * color_array, 52910 int * count) 52911 { 52912 return bcm_port_tpid_get_all( 52913 BCM_CONTROL(unit)->unit, 52914 port, 52915 size, 52916 tpid_array, 52917 color_array, 52918 count); 52919 } 52920 52921 int 52922 bcm_loop_port_tpid_set( 52923 int unit, 52924 bcm_port_t port, 52925 uint16 tpid) 52926 { 52927 return bcm_port_tpid_set( 52928 BCM_CONTROL(unit)->unit, 52929 port, 52930 tpid); 52931 } 52932 52933 int 52934 bcm_loop_port_trunk_index_get( 52935 int unit, 52936 bcm_port_t port, 52937 int * port_index) 52938 { 52939 return bcm_port_trunk_index_get( 52940 BCM_CONTROL(unit)->unit, 52941 port, 52942 port_index); 52943 } 52944 52945 int 52946 bcm_loop_port_trunk_index_set( 52947 int unit, 52948 bcm_port_t port, 52949 int port_index) 52950 { 52951 return bcm_port_trunk_index_set( 52952 BCM_CONTROL(unit)->unit, 52953 port, 52954 port_index); 52955 } 52956 52957 int 52958 bcm_loop_port_untagged_priority_get( 52959 int unit, 52960 bcm_port_t port, 52961 int * priority) 52962 { 52963 return bcm_port_untagged_priority_get( 52964 BCM_CONTROL(unit)->unit, 52965 port, 52966 priority); 52967 } 52968 52969 int 52970 bcm_loop_port_untagged_priority_set( 52971 int unit, 52972 bcm_port_t port, 52973 int priority) 52974 { 52975 return bcm_port_untagged_priority_set( 52976 BCM_CONTROL(unit)->unit, 52977 port, 52978 priority); 52979 } 52980 52981 int 52982 bcm_loop_port_untagged_vlan_get( 52983 int unit, 52984 bcm_port_t port, 52985 bcm_vlan_t * vid_ptr) 52986 { 52987 return bcm_port_untagged_vlan_get( 52988 BCM_CONTROL(unit)->unit, 52989 port, 52990 vid_ptr); 52991 } 52992 52993 int 52994 bcm_loop_port_untagged_vlan_set( 52995 int unit, 52996 bcm_port_t port, 52997 bcm_vlan_t vid) 52998 { 52999 return bcm_port_untagged_vlan_set( 53000 BCM_CONTROL(unit)->unit, 53001 port, 53002 vid); 53003 } 53004 53005 int 53006 bcm_loop_port_update( 53007 int unit, 53008 bcm_port_t port, 53009 int link) 53010 { 53011 return bcm_port_update( 53012 BCM_CONTROL(unit)->unit, 53013 port, 53014 link); 53015 } 53016 53017 int 53018 bcm_loop_port_vlan_dscp_map_get( 53019 int unit, 53020 bcm_port_t port, 53021 bcm_vlan_t vlan, 53022 int dscp, 53023 int * internal_pri, 53024 bcm_color_t * color) 53025 { 53026 return bcm_port_vlan_dscp_map_get( 53027 BCM_CONTROL(unit)->unit, 53028 port, 53029 vlan, 53030 dscp, 53031 internal_pri, 53032 color); 53033 } 53034 53035 int 53036 bcm_loop_port_vlan_dscp_map_set( 53037 int unit, 53038 bcm_port_t port, 53039 bcm_vlan_t vlan, 53040 int dscp, 53041 int internal_pri, 53042 bcm_color_t color) 53043 { 53044 return bcm_port_vlan_dscp_map_set( 53045 BCM_CONTROL(unit)->unit, 53046 port, 53047 vlan, 53048 dscp, 53049 internal_pri, 53050 color); 53051 } 53052 53053 int 53054 bcm_loop_port_vlan_inner_tag_get( 53055 int unit, 53056 bcm_port_t port, 53057 uint16 * inner_tag) 53058 { 53059 return bcm_port_vlan_inner_tag_get( 53060 BCM_CONTROL(unit)->unit, 53061 port, 53062 inner_tag); 53063 } 53064 53065 int 53066 bcm_loop_port_vlan_inner_tag_set( 53067 int unit, 53068 bcm_port_t port, 53069 uint16 inner_tag) 53070 { 53071 return bcm_port_vlan_inner_tag_set( 53072 BCM_CONTROL(unit)->unit, 53073 port, 53074 inner_tag); 53075 } 53076 53077 int 53078 bcm_loop_port_vlan_member_get( 53079 int unit, 53080 bcm_port_t port, 53081 uint32 * flags) 53082 { 53083 return bcm_port_vlan_member_get( 53084 BCM_CONTROL(unit)->unit, 53085 port, 53086 flags); 53087 } 53088 53089 int 53090 bcm_loop_port_vlan_member_set( 53091 int unit, 53092 bcm_port_t port, 53093 uint32 flags) 53094 { 53095 return bcm_port_vlan_member_set( 53096 BCM_CONTROL(unit)->unit, 53097 port, 53098 flags); 53099 } 53100 53101 int 53102 bcm_loop_port_vlan_pri_map_get( 53103 int unit, 53104 bcm_port_t port, 53105 bcm_vlan_t vlan, 53106 int pkt_pri, 53107 int cfi, 53108 int * internal_pri, 53109 bcm_color_t * color) 53110 { 53111 return bcm_port_vlan_pri_map_get( 53112 BCM_CONTROL(unit)->unit, 53113 port, 53114 vlan, 53115 pkt_pri, 53116 cfi, 53117 internal_pri, 53118 color); 53119 } 53120 53121 int 53122 bcm_loop_port_vlan_pri_map_set( 53123 int unit, 53124 bcm_port_t port, 53125 bcm_vlan_t vlan, 53126 int pkt_pri, 53127 int cfi, 53128 int internal_pri, 53129 bcm_color_t color) 53130 { 53131 return bcm_port_vlan_pri_map_set( 53132 BCM_CONTROL(unit)->unit, 53133 port, 53134 vlan, 53135 pkt_pri, 53136 cfi, 53137 internal_pri, 53138 color); 53139 } 53140 53141 int 53142 bcm_loop_port_vlan_priority_map_get( 53143 int unit, 53144 bcm_port_t port, 53145 int pkt_pri, 53146 int cfi, 53147 int * internal_pri, 53148 bcm_color_t * color) 53149 { 53150 return bcm_port_vlan_priority_map_get( 53151 BCM_CONTROL(unit)->unit, 53152 port, 53153 pkt_pri, 53154 cfi, 53155 internal_pri, 53156 color); 53157 } 53158 53159 int 53160 bcm_loop_port_vlan_priority_map_set( 53161 int unit, 53162 bcm_port_t port, 53163 int pkt_pri, 53164 int cfi, 53165 int internal_pri, 53166 bcm_color_t color) 53167 { 53168 return bcm_port_vlan_priority_map_set( 53169 BCM_CONTROL(unit)->unit, 53170 port, 53171 pkt_pri, 53172 cfi, 53173 internal_pri, 53174 color); 53175 } 53176 53177 int 53178 bcm_loop_port_vlan_priority_mapping_get( 53179 int unit, 53180 bcm_port_t port, 53181 bcm_vlan_t vid, 53182 int pkt_pri, 53183 int cfi, 53184 bcm_priority_mapping_t * pri_map) 53185 { 53186 return bcm_port_vlan_priority_mapping_get( 53187 BCM_CONTROL(unit)->unit, 53188 port, 53189 vid, 53190 pkt_pri, 53191 cfi, 53192 pri_map); 53193 } 53194 53195 int 53196 bcm_loop_port_vlan_priority_mapping_set( 53197 int unit, 53198 bcm_port_t port, 53199 bcm_vlan_t vid, 53200 int pkt_pri, 53201 int cfi, 53202 bcm_priority_mapping_t * pri_map) 53203 { 53204 return bcm_port_vlan_priority_mapping_set( 53205 BCM_CONTROL(unit)->unit, 53206 port, 53207 vid, 53208 pkt_pri, 53209 cfi, 53210 pri_map); 53211 } 53212 53213 int 53214 bcm_loop_port_vlan_priority_unmap_get( 53215 int unit, 53216 bcm_port_t port, 53217 int internal_pri, 53218 bcm_color_t color, 53219 int * pkt_pri, 53220 int * cfi) 53221 { 53222 return bcm_port_vlan_priority_unmap_get( 53223 BCM_CONTROL(unit)->unit, 53224 port, 53225 internal_pri, 53226 color, 53227 pkt_pri, 53228 cfi); 53229 } 53230 53231 int 53232 bcm_loop_port_vlan_priority_unmap_set( 53233 int unit, 53234 bcm_port_t port, 53235 int internal_pri, 53236 bcm_color_t color, 53237 int pkt_pri, 53238 int cfi) 53239 { 53240 return bcm_port_vlan_priority_unmap_set( 53241 BCM_CONTROL(unit)->unit, 53242 port, 53243 internal_pri, 53244 color, 53245 pkt_pri, 53246 cfi); 53247 } 53248 53249 int 53250 bcm_loop_port_vlan_vector_get( 53251 int unit, 53252 bcm_gport_t port_id, 53253 bcm_vlan_vector_t vlan_vec) 53254 { 53255 return bcm_port_vlan_vector_get( 53256 BCM_CONTROL(unit)->unit, 53257 port_id, 53258 vlan_vec); 53259 } 53260 53261 int 53262 bcm_loop_port_vlan_vector_set( 53263 int unit, 53264 bcm_gport_t port_id, 53265 bcm_vlan_vector_t vlan_vec) 53266 { 53267 return bcm_port_vlan_vector_set( 53268 BCM_CONTROL(unit)->unit, 53269 port_id, 53270 vlan_vec); 53271 } 53272 53273 int 53274 bcm_loop_port_wide_data_get( 53275 int unit, 53276 bcm_gport_t gport, 53277 uint32 flags, 53278 uint64 * data) 53279 { 53280 return bcm_port_wide_data_get( 53281 BCM_CONTROL(unit)->unit, 53282 gport, 53283 flags, 53284 data); 53285 } 53286 53287 int 53288 bcm_loop_port_wide_data_set( 53289 int unit, 53290 bcm_gport_t gport, 53291 uint32 flags, 53292 uint64 data) 53293 { 53294 return bcm_port_wide_data_set( 53295 BCM_CONTROL(unit)->unit, 53296 gport, 53297 flags, 53298 data); 53299 } 53300 53301 /* bcm_priority_mapping_t_init not dispatchable */ 53302 53303 #ifdef INCLUDE_L3 53304 53305 int 53306 bcm_loop_proxy_cleanup( 53307 int unit) 53308 { 53309 return bcm_proxy_cleanup( 53310 BCM_CONTROL(unit)->unit); 53311 } 53312 53313 int 53314 bcm_loop_proxy_client_set( 53315 int unit, 53316 bcm_port_t client_port, 53317 bcm_proxy_proto_type_t proto_type, 53318 bcm_module_t server_modid, 53319 bcm_port_t server_port, 53320 int enable) 53321 { 53322 return bcm_proxy_client_set( 53323 BCM_CONTROL(unit)->unit, 53324 client_port, 53325 proto_type, 53326 server_modid, 53327 server_port, 53328 enable); 53329 } 53330 53331 int 53332 bcm_loop_proxy_egress_create( 53333 int unit, 53334 uint32 flags, 53335 bcm_proxy_egress_t * proxy_egress, 53336 bcm_if_t * proxy_if_id) 53337 { 53338 return bcm_proxy_egress_create( 53339 BCM_CONTROL(unit)->unit, 53340 flags, 53341 proxy_egress, 53342 proxy_if_id); 53343 } 53344 53345 int 53346 bcm_loop_proxy_egress_destroy( 53347 int unit, 53348 bcm_if_t proxy_if_id) 53349 { 53350 return bcm_proxy_egress_destroy( 53351 BCM_CONTROL(unit)->unit, 53352 proxy_if_id); 53353 } 53354 53355 int 53356 bcm_loop_proxy_egress_get( 53357 int unit, 53358 bcm_if_t proxy_if_id, 53359 bcm_proxy_egress_t * proxy_egress) 53360 { 53361 return bcm_proxy_egress_get( 53362 BCM_CONTROL(unit)->unit, 53363 proxy_if_id, 53364 proxy_egress); 53365 } 53366 53367 /* bcm_proxy_egress_t_init not dispatchable */ 53368 53369 int 53370 bcm_loop_proxy_egress_traverse( 53371 int unit, 53372 bcm_proxy_egress_traverse_cb trav_fn, 53373 void * user_data) 53374 { 53375 return bcm_proxy_egress_traverse( 53376 BCM_CONTROL(unit)->unit, 53377 trav_fn, 53378 user_data); 53379 } 53380 53381 int 53382 bcm_loop_proxy_init( 53383 int unit) 53384 { 53385 return bcm_proxy_init( 53386 BCM_CONTROL(unit)->unit); 53387 } 53388 53389 int 53390 bcm_loop_proxy_server_get( 53391 int unit, 53392 bcm_port_t server_port, 53393 bcm_proxy_mode_t mode, 53394 int * enable) 53395 { 53396 return bcm_proxy_server_get( 53397 BCM_CONTROL(unit)->unit, 53398 server_port, 53399 mode, 53400 enable); 53401 } 53402 53403 int 53404 bcm_loop_proxy_server_port_get( 53405 int unit, 53406 bcm_gport_t local_ingress_port, 53407 bcm_proxy_server_t * proxy_server, 53408 int * enable) 53409 { 53410 return bcm_proxy_server_port_get( 53411 BCM_CONTROL(unit)->unit, 53412 local_ingress_port, 53413 proxy_server, 53414 enable); 53415 } 53416 53417 int 53418 bcm_loop_proxy_server_port_set( 53419 int unit, 53420 bcm_gport_t local_ingress_port, 53421 bcm_proxy_server_t * proxy_server, 53422 int enable) 53423 { 53424 return bcm_proxy_server_port_set( 53425 BCM_CONTROL(unit)->unit, 53426 local_ingress_port, 53427 proxy_server, 53428 enable); 53429 } 53430 53431 int 53432 bcm_loop_proxy_server_set( 53433 int unit, 53434 bcm_port_t server_port, 53435 bcm_proxy_mode_t mode, 53436 int enable) 53437 { 53438 return bcm_proxy_server_set( 53439 BCM_CONTROL(unit)->unit, 53440 server_port, 53441 mode, 53442 enable); 53443 } 53444 53445 /* bcm_proxy_server_t_init not dispatchable */ 53446 53447 #endif /* INCLUDE_L3 */ 53448 #ifdef INCLUDE_PSTATS 53449 53450 int 53451 bcm_loop_pstats_data_sync( 53452 int unit) 53453 { 53454 return bcm_pstats_data_sync( 53455 BCM_CONTROL(unit)->unit); 53456 } 53457 53458 /* bcm_pstats_data_t_init not dispatchable */ 53459 53460 int 53461 bcm_loop_pstats_session_create( 53462 int unit, 53463 int options, 53464 int array_count, 53465 bcm_pstats_session_element_t * element_array, 53466 bcm_pstats_session_id_t * session_id) 53467 { 53468 return bcm_pstats_session_create( 53469 BCM_CONTROL(unit)->unit, 53470 options, 53471 array_count, 53472 element_array, 53473 session_id); 53474 } 53475 53476 int 53477 bcm_loop_pstats_session_data_clear( 53478 int unit, 53479 bcm_pstats_session_id_t session_id) 53480 { 53481 return bcm_pstats_session_data_clear( 53482 BCM_CONTROL(unit)->unit, 53483 session_id); 53484 } 53485 53486 int 53487 bcm_loop_pstats_session_data_get( 53488 int unit, 53489 bcm_pstats_session_id_t session_id, 53490 bcm_pstats_timestamp_t * timestamp, 53491 int array_max, 53492 bcm_pstats_data_t * data_array, 53493 int * array_count) 53494 { 53495 return bcm_pstats_session_data_get( 53496 BCM_CONTROL(unit)->unit, 53497 session_id, 53498 timestamp, 53499 array_max, 53500 data_array, 53501 array_count); 53502 } 53503 53504 int 53505 bcm_loop_pstats_session_data_sync_get( 53506 int unit, 53507 bcm_pstats_session_id_t session_id, 53508 bcm_pstats_timestamp_t * timestamp, 53509 int array_max, 53510 bcm_pstats_data_t * data_array, 53511 int * array_count) 53512 { 53513 return bcm_pstats_session_data_sync_get( 53514 BCM_CONTROL(unit)->unit, 53515 session_id, 53516 timestamp, 53517 array_max, 53518 data_array, 53519 array_count); 53520 } 53521 53522 int 53523 bcm_loop_pstats_session_destroy( 53524 int unit, 53525 bcm_pstats_session_id_t session_id) 53526 { 53527 return bcm_pstats_session_destroy( 53528 BCM_CONTROL(unit)->unit, 53529 session_id); 53530 } 53531 53532 /* bcm_pstats_session_element_t_init not dispatchable */ 53533 53534 int 53535 bcm_loop_pstats_session_get( 53536 int unit, 53537 bcm_pstats_session_id_t session_id, 53538 int array_max, 53539 bcm_pstats_session_element_t * element_array, 53540 int * array_count) 53541 { 53542 return bcm_pstats_session_get( 53543 BCM_CONTROL(unit)->unit, 53544 session_id, 53545 array_max, 53546 element_array, 53547 array_count); 53548 } 53549 53550 int 53551 bcm_loop_pstats_session_traverse( 53552 int unit, 53553 bcm_pstats_session_traverse_cb cb, 53554 void * user_data) 53555 { 53556 return bcm_pstats_session_traverse( 53557 BCM_CONTROL(unit)->unit, 53558 cb, 53559 user_data); 53560 } 53561 53562 /* bcm_pstats_timestamp_t_init not dispatchable */ 53563 53564 #endif /* INCLUDE_PSTATS */ 53565 #ifdef INCLUDE_PTP 53566 53567 int 53568 bcm_loop_ptp_acceptable_master_add( 53569 int unit, 53570 bcm_ptp_stack_id_t ptp_id, 53571 int clock_num, 53572 int port_num, 53573 int priority1_alt_value, 53574 bcm_ptp_clock_peer_address_t * master_info) 53575 { 53576 return bcm_ptp_acceptable_master_add( 53577 BCM_CONTROL(unit)->unit, 53578 ptp_id, 53579 clock_num, 53580 port_num, 53581 priority1_alt_value, 53582 master_info); 53583 } 53584 53585 int 53586 bcm_loop_ptp_acceptable_master_enabled_get( 53587 int unit, 53588 bcm_ptp_stack_id_t ptp_id, 53589 int clock_num, 53590 int port_num, 53591 uint8 * enabled) 53592 { 53593 return bcm_ptp_acceptable_master_enabled_get( 53594 BCM_CONTROL(unit)->unit, 53595 ptp_id, 53596 clock_num, 53597 port_num, 53598 enabled); 53599 } 53600 53601 int 53602 bcm_loop_ptp_acceptable_master_enabled_set( 53603 int unit, 53604 bcm_ptp_stack_id_t ptp_id, 53605 int clock_num, 53606 int port_num, 53607 uint8 enabled) 53608 { 53609 return bcm_ptp_acceptable_master_enabled_set( 53610 BCM_CONTROL(unit)->unit, 53611 ptp_id, 53612 clock_num, 53613 port_num, 53614 enabled); 53615 } 53616 53617 int 53618 bcm_loop_ptp_acceptable_master_list( 53619 int unit, 53620 bcm_ptp_stack_id_t ptp_id, 53621 int clock_num, 53622 int port_num, 53623 int max_num_masters, 53624 int * num_masters, 53625 bcm_ptp_clock_peer_address_t * master_addr) 53626 { 53627 return bcm_ptp_acceptable_master_list( 53628 BCM_CONTROL(unit)->unit, 53629 ptp_id, 53630 clock_num, 53631 port_num, 53632 max_num_masters, 53633 num_masters, 53634 master_addr); 53635 } 53636 53637 int 53638 bcm_loop_ptp_acceptable_master_remove( 53639 int unit, 53640 bcm_ptp_stack_id_t ptp_id, 53641 int clock_num, 53642 int port_num, 53643 bcm_ptp_clock_peer_address_t * master_info) 53644 { 53645 return bcm_ptp_acceptable_master_remove( 53646 BCM_CONTROL(unit)->unit, 53647 ptp_id, 53648 clock_num, 53649 port_num, 53650 master_info); 53651 } 53652 53653 int 53654 bcm_loop_ptp_acceptable_master_table_clear( 53655 int unit, 53656 bcm_ptp_stack_id_t ptp_id, 53657 int clock_num, 53658 int port_num) 53659 { 53660 return bcm_ptp_acceptable_master_table_clear( 53661 BCM_CONTROL(unit)->unit, 53662 ptp_id, 53663 clock_num, 53664 port_num); 53665 } 53666 53667 int 53668 bcm_loop_ptp_acceptable_master_table_size_get( 53669 int unit, 53670 bcm_ptp_stack_id_t ptp_id, 53671 int clock_num, 53672 int port_num, 53673 int * max_table_entries) 53674 { 53675 return bcm_ptp_acceptable_master_table_size_get( 53676 BCM_CONTROL(unit)->unit, 53677 ptp_id, 53678 clock_num, 53679 port_num, 53680 max_table_entries); 53681 } 53682 53683 int 53684 bcm_loop_ptp_bs_time_info_get( 53685 int unit, 53686 bcm_ptp_stack_id_t ptp_id, 53687 int clock_num, 53688 bcm_ptp_bs_time_info_t * time) 53689 { 53690 return bcm_ptp_bs_time_info_get( 53691 BCM_CONTROL(unit)->unit, 53692 ptp_id, 53693 clock_num, 53694 time); 53695 } 53696 53697 int 53698 bcm_loop_ptp_cb_register( 53699 int unit, 53700 bcm_ptp_cb_types_t cb_types, 53701 bcm_ptp_cb cb, 53702 void * user_data) 53703 { 53704 return bcm_ptp_cb_register( 53705 BCM_CONTROL(unit)->unit, 53706 cb_types, 53707 cb, 53708 user_data); 53709 } 53710 53711 int 53712 bcm_loop_ptp_cb_unregister( 53713 int unit, 53714 bcm_ptp_cb_types_t cb_types, 53715 bcm_ptp_cb cb) 53716 { 53717 return bcm_ptp_cb_unregister( 53718 BCM_CONTROL(unit)->unit, 53719 cb_types, 53720 cb); 53721 } 53722 53723 int 53724 bcm_loop_ptp_clock_accuracy_get( 53725 int unit, 53726 bcm_ptp_stack_id_t ptp_id, 53727 int clock_num, 53728 bcm_ptp_clock_accuracy_t * accuracy) 53729 { 53730 return bcm_ptp_clock_accuracy_get( 53731 BCM_CONTROL(unit)->unit, 53732 ptp_id, 53733 clock_num, 53734 accuracy); 53735 } 53736 53737 int 53738 bcm_loop_ptp_clock_accuracy_set( 53739 int unit, 53740 bcm_ptp_stack_id_t ptp_id, 53741 int clock_num, 53742 bcm_ptp_clock_accuracy_t * accuracy) 53743 { 53744 return bcm_ptp_clock_accuracy_set( 53745 BCM_CONTROL(unit)->unit, 53746 ptp_id, 53747 clock_num, 53748 accuracy); 53749 } 53750 53751 int 53752 bcm_loop_ptp_clock_apts_enable_get( 53753 int unit, 53754 bcm_ptp_stack_id_t ptp_id, 53755 int clock_num, 53756 int * enable) 53757 { 53758 return bcm_ptp_clock_apts_enable_get( 53759 BCM_CONTROL(unit)->unit, 53760 ptp_id, 53761 clock_num, 53762 enable); 53763 } 53764 53765 int 53766 bcm_loop_ptp_clock_apts_enable_set( 53767 int unit, 53768 bcm_ptp_stack_id_t ptp_id, 53769 int clock_num, 53770 int enable) 53771 { 53772 return bcm_ptp_clock_apts_enable_set( 53773 BCM_CONTROL(unit)->unit, 53774 ptp_id, 53775 clock_num, 53776 enable); 53777 } 53778 53779 int 53780 bcm_loop_ptp_clock_apts_mode_get( 53781 int unit, 53782 bcm_ptp_stack_id_t ptp_id, 53783 int clock_num, 53784 bcm_ptp_clock_apts_mode_t * current_mode) 53785 { 53786 return bcm_ptp_clock_apts_mode_get( 53787 BCM_CONTROL(unit)->unit, 53788 ptp_id, 53789 clock_num, 53790 current_mode); 53791 } 53792 53793 int 53794 bcm_loop_ptp_clock_apts_source_enable_get( 53795 int unit, 53796 bcm_ptp_stack_id_t ptp_id, 53797 int clock_num, 53798 bcm_ptp_clock_apts_source_t source, 53799 int * enable) 53800 { 53801 return bcm_ptp_clock_apts_source_enable_get( 53802 BCM_CONTROL(unit)->unit, 53803 ptp_id, 53804 clock_num, 53805 source, 53806 enable); 53807 } 53808 53809 int 53810 bcm_loop_ptp_clock_apts_source_enable_set( 53811 int unit, 53812 bcm_ptp_stack_id_t ptp_id, 53813 int clock_num, 53814 bcm_ptp_clock_apts_source_t source, 53815 int enable) 53816 { 53817 return bcm_ptp_clock_apts_source_enable_set( 53818 BCM_CONTROL(unit)->unit, 53819 ptp_id, 53820 clock_num, 53821 source, 53822 enable); 53823 } 53824 53825 int 53826 bcm_loop_ptp_clock_apts_source_prio_get( 53827 int unit, 53828 bcm_ptp_stack_id_t ptp_id, 53829 int clock_num, 53830 int * num_sources, 53831 bcm_ptp_clock_apts_source_t * priority_list) 53832 { 53833 return bcm_ptp_clock_apts_source_prio_get( 53834 BCM_CONTROL(unit)->unit, 53835 ptp_id, 53836 clock_num, 53837 num_sources, 53838 priority_list); 53839 } 53840 53841 int 53842 bcm_loop_ptp_clock_apts_source_prio_set( 53843 int unit, 53844 bcm_ptp_stack_id_t ptp_id, 53845 int clock_num, 53846 int num_sources, 53847 bcm_ptp_clock_apts_source_t * priority_list) 53848 { 53849 return bcm_ptp_clock_apts_source_prio_set( 53850 BCM_CONTROL(unit)->unit, 53851 ptp_id, 53852 clock_num, 53853 num_sources, 53854 priority_list); 53855 } 53856 53857 int 53858 bcm_loop_ptp_clock_bmca_override_get( 53859 int unit, 53860 bcm_ptp_stack_id_t ptp_id, 53861 int clock_num, 53862 uint32 * flags, 53863 uint32 * enable_mask) 53864 { 53865 return bcm_ptp_clock_bmca_override_get( 53866 BCM_CONTROL(unit)->unit, 53867 ptp_id, 53868 clock_num, 53869 flags, 53870 enable_mask); 53871 } 53872 53873 int 53874 bcm_loop_ptp_clock_bmca_override_set( 53875 int unit, 53876 bcm_ptp_stack_id_t ptp_id, 53877 int clock_num, 53878 uint32 flags, 53879 uint32 enable_mask) 53880 { 53881 return bcm_ptp_clock_bmca_override_set( 53882 BCM_CONTROL(unit)->unit, 53883 ptp_id, 53884 clock_num, 53885 flags, 53886 enable_mask); 53887 } 53888 53889 int 53890 bcm_loop_ptp_clock_create( 53891 int unit, 53892 bcm_ptp_stack_id_t ptp_id, 53893 bcm_ptp_clock_info_t * clock_info) 53894 { 53895 return bcm_ptp_clock_create( 53896 BCM_CONTROL(unit)->unit, 53897 ptp_id, 53898 clock_info); 53899 } 53900 53901 int 53902 bcm_loop_ptp_clock_current_dataset_get( 53903 int unit, 53904 bcm_ptp_stack_id_t ptp_id, 53905 int clock_num, 53906 bcm_ptp_current_dataset_t * dataset) 53907 { 53908 return bcm_ptp_clock_current_dataset_get( 53909 BCM_CONTROL(unit)->unit, 53910 ptp_id, 53911 clock_num, 53912 dataset); 53913 } 53914 53915 int 53916 bcm_loop_ptp_clock_default_dataset_get( 53917 int unit, 53918 bcm_ptp_stack_id_t ptp_id, 53919 int clock_num, 53920 bcm_ptp_default_dataset_t * dataset) 53921 { 53922 return bcm_ptp_clock_default_dataset_get( 53923 BCM_CONTROL(unit)->unit, 53924 ptp_id, 53925 clock_num, 53926 dataset); 53927 } 53928 53929 int 53930 bcm_loop_ptp_clock_domain_get( 53931 int unit, 53932 bcm_ptp_stack_id_t ptp_id, 53933 int clock_num, 53934 uint32 * domain) 53935 { 53936 return bcm_ptp_clock_domain_get( 53937 BCM_CONTROL(unit)->unit, 53938 ptp_id, 53939 clock_num, 53940 domain); 53941 } 53942 53943 int 53944 bcm_loop_ptp_clock_domain_set( 53945 int unit, 53946 bcm_ptp_stack_id_t ptp_id, 53947 int clock_num, 53948 uint32 domain) 53949 { 53950 return bcm_ptp_clock_domain_set( 53951 BCM_CONTROL(unit)->unit, 53952 ptp_id, 53953 clock_num, 53954 domain); 53955 } 53956 53957 int 53958 bcm_loop_ptp_clock_get( 53959 int unit, 53960 bcm_ptp_stack_id_t ptp_id, 53961 int clock_num, 53962 bcm_ptp_clock_info_t * clock_info) 53963 { 53964 return bcm_ptp_clock_get( 53965 BCM_CONTROL(unit)->unit, 53966 ptp_id, 53967 clock_num, 53968 clock_info); 53969 } 53970 53971 int 53972 bcm_loop_ptp_clock_local_priority_get( 53973 int unit, 53974 bcm_ptp_stack_id_t ptp_id, 53975 int clock_num, 53976 uint8 * local_priority) 53977 { 53978 return bcm_ptp_clock_local_priority_get( 53979 BCM_CONTROL(unit)->unit, 53980 ptp_id, 53981 clock_num, 53982 local_priority); 53983 } 53984 53985 int 53986 bcm_loop_ptp_clock_local_priority_set( 53987 int unit, 53988 bcm_ptp_stack_id_t ptp_id, 53989 int clock_num, 53990 uint8 local_priority) 53991 { 53992 return bcm_ptp_clock_local_priority_set( 53993 BCM_CONTROL(unit)->unit, 53994 ptp_id, 53995 clock_num, 53996 local_priority); 53997 } 53998 53999 int 54000 bcm_loop_ptp_clock_max_steps_removed_get( 54001 int unit, 54002 bcm_ptp_stack_id_t ptp_id, 54003 int clock_num, 54004 uint8 * max_steps_removed) 54005 { 54006 return bcm_ptp_clock_max_steps_removed_get( 54007 BCM_CONTROL(unit)->unit, 54008 ptp_id, 54009 clock_num, 54010 max_steps_removed); 54011 } 54012 54013 int 54014 bcm_loop_ptp_clock_max_steps_removed_set( 54015 int unit, 54016 bcm_ptp_stack_id_t ptp_id, 54017 int clock_num, 54018 uint8 max_steps_removed) 54019 { 54020 return bcm_ptp_clock_max_steps_removed_set( 54021 BCM_CONTROL(unit)->unit, 54022 ptp_id, 54023 clock_num, 54024 max_steps_removed); 54025 } 54026 54027 int 54028 bcm_loop_ptp_clock_parent_dataset_get( 54029 int unit, 54030 bcm_ptp_stack_id_t ptp_id, 54031 int clock_num, 54032 bcm_ptp_parent_dataset_t * dataset) 54033 { 54034 return bcm_ptp_clock_parent_dataset_get( 54035 BCM_CONTROL(unit)->unit, 54036 ptp_id, 54037 clock_num, 54038 dataset); 54039 } 54040 54041 int 54042 bcm_loop_ptp_clock_peer_age_timer_get( 54043 int unit, 54044 bcm_ptp_stack_id_t ptp_id, 54045 int clock_num, 54046 uint8 * aging_time) 54047 { 54048 return bcm_ptp_clock_peer_age_timer_get( 54049 BCM_CONTROL(unit)->unit, 54050 ptp_id, 54051 clock_num, 54052 aging_time); 54053 } 54054 54055 int 54056 bcm_loop_ptp_clock_peer_age_timer_set( 54057 int unit, 54058 bcm_ptp_stack_id_t ptp_id, 54059 int clock_num, 54060 uint8 aging_time) 54061 { 54062 return bcm_ptp_clock_peer_age_timer_set( 54063 BCM_CONTROL(unit)->unit, 54064 ptp_id, 54065 clock_num, 54066 aging_time); 54067 } 54068 54069 int 54070 bcm_loop_ptp_clock_port_announce_receipt_timeout_get( 54071 int unit, 54072 bcm_ptp_stack_id_t ptp_id, 54073 int clock_num, 54074 uint32 clock_port, 54075 uint32 * timeout) 54076 { 54077 return bcm_ptp_clock_port_announce_receipt_timeout_get( 54078 BCM_CONTROL(unit)->unit, 54079 ptp_id, 54080 clock_num, 54081 clock_port, 54082 timeout); 54083 } 54084 54085 int 54086 bcm_loop_ptp_clock_port_announce_receipt_timeout_set( 54087 int unit, 54088 bcm_ptp_stack_id_t ptp_id, 54089 int clock_num, 54090 uint32 clock_port, 54091 uint32 timeout) 54092 { 54093 return bcm_ptp_clock_port_announce_receipt_timeout_set( 54094 BCM_CONTROL(unit)->unit, 54095 ptp_id, 54096 clock_num, 54097 clock_port, 54098 timeout); 54099 } 54100 54101 int 54102 bcm_loop_ptp_clock_port_configure( 54103 int unit, 54104 bcm_ptp_stack_id_t ptp_id, 54105 int clock_num, 54106 uint32 clock_port, 54107 bcm_ptp_clock_port_info_t * info) 54108 { 54109 return bcm_ptp_clock_port_configure( 54110 BCM_CONTROL(unit)->unit, 54111 ptp_id, 54112 clock_num, 54113 clock_port, 54114 info); 54115 } 54116 54117 int 54118 bcm_loop_ptp_clock_port_dataset_get( 54119 int unit, 54120 bcm_ptp_stack_id_t ptp_id, 54121 int clock_num, 54122 uint32 clock_port, 54123 bcm_ptp_port_dataset_t * dataset) 54124 { 54125 return bcm_ptp_clock_port_dataset_get( 54126 BCM_CONTROL(unit)->unit, 54127 ptp_id, 54128 clock_num, 54129 clock_port, 54130 dataset); 54131 } 54132 54133 int 54134 bcm_loop_ptp_clock_port_delay_mechanism_get( 54135 int unit, 54136 bcm_ptp_stack_id_t ptp_id, 54137 int clock_num, 54138 uint32 clock_port, 54139 uint32 * delay_mechanism) 54140 { 54141 return bcm_ptp_clock_port_delay_mechanism_get( 54142 BCM_CONTROL(unit)->unit, 54143 ptp_id, 54144 clock_num, 54145 clock_port, 54146 delay_mechanism); 54147 } 54148 54149 int 54150 bcm_loop_ptp_clock_port_delay_mechanism_set( 54151 int unit, 54152 bcm_ptp_stack_id_t ptp_id, 54153 int clock_num, 54154 uint32 clock_port, 54155 uint32 delay_mechanism) 54156 { 54157 return bcm_ptp_clock_port_delay_mechanism_set( 54158 BCM_CONTROL(unit)->unit, 54159 ptp_id, 54160 clock_num, 54161 clock_port, 54162 delay_mechanism); 54163 } 54164 54165 int 54166 bcm_loop_ptp_clock_port_disable( 54167 int unit, 54168 bcm_ptp_stack_id_t ptp_id, 54169 int clock_num, 54170 uint32 clock_port) 54171 { 54172 return bcm_ptp_clock_port_disable( 54173 BCM_CONTROL(unit)->unit, 54174 ptp_id, 54175 clock_num, 54176 clock_port); 54177 } 54178 54179 int 54180 bcm_loop_ptp_clock_port_drop_counters_enable_set( 54181 int unit, 54182 bcm_ptp_stack_id_t ptp_id, 54183 int clock_num, 54184 uint32 clock_port, 54185 int enable) 54186 { 54187 return bcm_ptp_clock_port_drop_counters_enable_set( 54188 BCM_CONTROL(unit)->unit, 54189 ptp_id, 54190 clock_num, 54191 clock_port, 54192 enable); 54193 } 54194 54195 int 54196 bcm_loop_ptp_clock_port_drop_counters_get( 54197 int unit, 54198 bcm_ptp_stack_id_t ptp_id, 54199 int clock_num, 54200 uint32 clock_port, 54201 bcm_ptp_clock_port_packet_drop_counters_t * per_port_packet_drop_counters) 54202 { 54203 return bcm_ptp_clock_port_drop_counters_get( 54204 BCM_CONTROL(unit)->unit, 54205 ptp_id, 54206 clock_num, 54207 clock_port, 54208 per_port_packet_drop_counters); 54209 } 54210 54211 int 54212 bcm_loop_ptp_clock_port_enable( 54213 int unit, 54214 bcm_ptp_stack_id_t ptp_id, 54215 int clock_num, 54216 uint32 clock_port) 54217 { 54218 return bcm_ptp_clock_port_enable( 54219 BCM_CONTROL(unit)->unit, 54220 ptp_id, 54221 clock_num, 54222 clock_port); 54223 } 54224 54225 int 54226 bcm_loop_ptp_clock_port_identity_get( 54227 int unit, 54228 bcm_ptp_stack_id_t ptp_id, 54229 int clock_num, 54230 uint32 clock_port, 54231 bcm_ptp_port_identity_t * identity) 54232 { 54233 return bcm_ptp_clock_port_identity_get( 54234 BCM_CONTROL(unit)->unit, 54235 ptp_id, 54236 clock_num, 54237 clock_port, 54238 identity); 54239 } 54240 54241 int 54242 bcm_loop_ptp_clock_port_info_get( 54243 int unit, 54244 bcm_ptp_stack_id_t ptp_id, 54245 int clock_num, 54246 uint32 clock_port, 54247 bcm_ptp_clock_port_info_t * info) 54248 { 54249 return bcm_ptp_clock_port_info_get( 54250 BCM_CONTROL(unit)->unit, 54251 ptp_id, 54252 clock_num, 54253 clock_port, 54254 info); 54255 } 54256 54257 int 54258 bcm_loop_ptp_clock_port_latency_set( 54259 int unit, 54260 bcm_ptp_stack_id_t ptp_id, 54261 int clock_num, 54262 uint32 clock_port, 54263 uint32 latency_in, 54264 uint32 latency_out) 54265 { 54266 return bcm_ptp_clock_port_latency_set( 54267 BCM_CONTROL(unit)->unit, 54268 ptp_id, 54269 clock_num, 54270 clock_port, 54271 latency_in, 54272 latency_out); 54273 } 54274 54275 int 54276 bcm_loop_ptp_clock_port_log_announce_interval_get( 54277 int unit, 54278 bcm_ptp_stack_id_t ptp_id, 54279 int clock_num, 54280 uint32 clock_port, 54281 int * interval) 54282 { 54283 return bcm_ptp_clock_port_log_announce_interval_get( 54284 BCM_CONTROL(unit)->unit, 54285 ptp_id, 54286 clock_num, 54287 clock_port, 54288 interval); 54289 } 54290 54291 int 54292 bcm_loop_ptp_clock_port_log_announce_interval_set( 54293 int unit, 54294 bcm_ptp_stack_id_t ptp_id, 54295 int clock_num, 54296 uint32 clock_port, 54297 int interval) 54298 { 54299 return bcm_ptp_clock_port_log_announce_interval_set( 54300 BCM_CONTROL(unit)->unit, 54301 ptp_id, 54302 clock_num, 54303 clock_port, 54304 interval); 54305 } 54306 54307 int 54308 bcm_loop_ptp_clock_port_log_min_delay_req_interval_get( 54309 int unit, 54310 bcm_ptp_stack_id_t ptp_id, 54311 int clock_num, 54312 uint32 clock_port, 54313 int * interval) 54314 { 54315 return bcm_ptp_clock_port_log_min_delay_req_interval_get( 54316 BCM_CONTROL(unit)->unit, 54317 ptp_id, 54318 clock_num, 54319 clock_port, 54320 interval); 54321 } 54322 54323 int 54324 bcm_loop_ptp_clock_port_log_min_delay_req_interval_set( 54325 int unit, 54326 bcm_ptp_stack_id_t ptp_id, 54327 int clock_num, 54328 uint32 clock_port, 54329 int interval) 54330 { 54331 return bcm_ptp_clock_port_log_min_delay_req_interval_set( 54332 BCM_CONTROL(unit)->unit, 54333 ptp_id, 54334 clock_num, 54335 clock_port, 54336 interval); 54337 } 54338 54339 int 54340 bcm_loop_ptp_clock_port_log_min_pdelay_req_interval_get( 54341 int unit, 54342 bcm_ptp_stack_id_t ptp_id, 54343 int clock_num, 54344 uint32 clock_port, 54345 int * interval) 54346 { 54347 return bcm_ptp_clock_port_log_min_pdelay_req_interval_get( 54348 BCM_CONTROL(unit)->unit, 54349 ptp_id, 54350 clock_num, 54351 clock_port, 54352 interval); 54353 } 54354 54355 int 54356 bcm_loop_ptp_clock_port_log_min_pdelay_req_interval_set( 54357 int unit, 54358 bcm_ptp_stack_id_t ptp_id, 54359 int clock_num, 54360 uint32 clock_port, 54361 int interval) 54362 { 54363 return bcm_ptp_clock_port_log_min_pdelay_req_interval_set( 54364 BCM_CONTROL(unit)->unit, 54365 ptp_id, 54366 clock_num, 54367 clock_port, 54368 interval); 54369 } 54370 54371 int 54372 bcm_loop_ptp_clock_port_log_sync_interval_get( 54373 int unit, 54374 bcm_ptp_stack_id_t ptp_id, 54375 int clock_num, 54376 uint32 clock_port, 54377 int * interval) 54378 { 54379 return bcm_ptp_clock_port_log_sync_interval_get( 54380 BCM_CONTROL(unit)->unit, 54381 ptp_id, 54382 clock_num, 54383 clock_port, 54384 interval); 54385 } 54386 54387 int 54388 bcm_loop_ptp_clock_port_log_sync_interval_set( 54389 int unit, 54390 bcm_ptp_stack_id_t ptp_id, 54391 int clock_num, 54392 uint32 clock_port, 54393 int interval) 54394 { 54395 return bcm_ptp_clock_port_log_sync_interval_set( 54396 BCM_CONTROL(unit)->unit, 54397 ptp_id, 54398 clock_num, 54399 clock_port, 54400 interval); 54401 } 54402 54403 int 54404 bcm_loop_ptp_clock_port_mac_get( 54405 int unit, 54406 bcm_ptp_stack_id_t ptp_id, 54407 int clock_num, 54408 uint32 clock_port, 54409 bcm_mac_t * mac) 54410 { 54411 return bcm_ptp_clock_port_mac_get( 54412 BCM_CONTROL(unit)->unit, 54413 ptp_id, 54414 clock_num, 54415 clock_port, 54416 mac); 54417 } 54418 54419 int 54420 bcm_loop_ptp_clock_port_protocol_get( 54421 int unit, 54422 bcm_ptp_stack_id_t ptp_id, 54423 int clock_num, 54424 uint32 clock_port, 54425 bcm_ptp_protocol_t * protocol) 54426 { 54427 return bcm_ptp_clock_port_protocol_get( 54428 BCM_CONTROL(unit)->unit, 54429 ptp_id, 54430 clock_num, 54431 clock_port, 54432 protocol); 54433 } 54434 54435 int 54436 bcm_loop_ptp_clock_port_type_get( 54437 int unit, 54438 bcm_ptp_stack_id_t ptp_id, 54439 int clock_num, 54440 uint32 clock_port, 54441 bcm_ptp_port_type_t * type) 54442 { 54443 return bcm_ptp_clock_port_type_get( 54444 BCM_CONTROL(unit)->unit, 54445 ptp_id, 54446 clock_num, 54447 clock_port, 54448 type); 54449 } 54450 54451 int 54452 bcm_loop_ptp_clock_port_version_number_get( 54453 int unit, 54454 bcm_ptp_stack_id_t ptp_id, 54455 int clock_num, 54456 uint32 clock_port, 54457 uint32 * version) 54458 { 54459 return bcm_ptp_clock_port_version_number_get( 54460 BCM_CONTROL(unit)->unit, 54461 ptp_id, 54462 clock_num, 54463 clock_port, 54464 version); 54465 } 54466 54467 int 54468 bcm_loop_ptp_clock_priority1_get( 54469 int unit, 54470 bcm_ptp_stack_id_t ptp_id, 54471 int clock_num, 54472 uint32 * priority1) 54473 { 54474 return bcm_ptp_clock_priority1_get( 54475 BCM_CONTROL(unit)->unit, 54476 ptp_id, 54477 clock_num, 54478 priority1); 54479 } 54480 54481 int 54482 bcm_loop_ptp_clock_priority1_set( 54483 int unit, 54484 bcm_ptp_stack_id_t ptp_id, 54485 int clock_num, 54486 uint32 priority1) 54487 { 54488 return bcm_ptp_clock_priority1_set( 54489 BCM_CONTROL(unit)->unit, 54490 ptp_id, 54491 clock_num, 54492 priority1); 54493 } 54494 54495 int 54496 bcm_loop_ptp_clock_priority2_get( 54497 int unit, 54498 bcm_ptp_stack_id_t ptp_id, 54499 int clock_num, 54500 uint32 * priority2) 54501 { 54502 return bcm_ptp_clock_priority2_get( 54503 BCM_CONTROL(unit)->unit, 54504 ptp_id, 54505 clock_num, 54506 priority2); 54507 } 54508 54509 int 54510 bcm_loop_ptp_clock_priority2_set( 54511 int unit, 54512 bcm_ptp_stack_id_t ptp_id, 54513 int clock_num, 54514 uint32 priority2) 54515 { 54516 return bcm_ptp_clock_priority2_set( 54517 BCM_CONTROL(unit)->unit, 54518 ptp_id, 54519 clock_num, 54520 priority2); 54521 } 54522 54523 int 54524 bcm_loop_ptp_clock_quality_get( 54525 int unit, 54526 bcm_ptp_stack_id_t ptp_id, 54527 int clock_num, 54528 bcm_ptp_clock_quality_t * clock_quality, 54529 uint32 flags) 54530 { 54531 return bcm_ptp_clock_quality_get( 54532 BCM_CONTROL(unit)->unit, 54533 ptp_id, 54534 clock_num, 54535 clock_quality, 54536 flags); 54537 } 54538 54539 int 54540 bcm_loop_ptp_clock_quality_set( 54541 int unit, 54542 bcm_ptp_stack_id_t ptp_id, 54543 int clock_num, 54544 bcm_ptp_clock_quality_t clock_quality, 54545 uint32 flags) 54546 { 54547 return bcm_ptp_clock_quality_set( 54548 BCM_CONTROL(unit)->unit, 54549 ptp_id, 54550 clock_num, 54551 clock_quality, 54552 flags); 54553 } 54554 54555 int 54556 bcm_loop_ptp_clock_slaveonly_get( 54557 int unit, 54558 bcm_ptp_stack_id_t ptp_id, 54559 int clock_num, 54560 uint32 * slaveonly) 54561 { 54562 return bcm_ptp_clock_slaveonly_get( 54563 BCM_CONTROL(unit)->unit, 54564 ptp_id, 54565 clock_num, 54566 slaveonly); 54567 } 54568 54569 int 54570 bcm_loop_ptp_clock_slaveonly_set( 54571 int unit, 54572 bcm_ptp_stack_id_t ptp_id, 54573 int clock_num, 54574 uint32 slaveonly) 54575 { 54576 return bcm_ptp_clock_slaveonly_set( 54577 BCM_CONTROL(unit)->unit, 54578 ptp_id, 54579 clock_num, 54580 slaveonly); 54581 } 54582 54583 int 54584 bcm_loop_ptp_clock_time_get( 54585 int unit, 54586 bcm_ptp_stack_id_t ptp_id, 54587 int clock_num, 54588 bcm_ptp_timestamp_t * time) 54589 { 54590 return bcm_ptp_clock_time_get( 54591 BCM_CONTROL(unit)->unit, 54592 ptp_id, 54593 clock_num, 54594 time); 54595 } 54596 54597 int 54598 bcm_loop_ptp_clock_time_properties_get( 54599 int unit, 54600 bcm_ptp_stack_id_t ptp_id, 54601 int clock_num, 54602 bcm_ptp_time_properties_t * data) 54603 { 54604 return bcm_ptp_clock_time_properties_get( 54605 BCM_CONTROL(unit)->unit, 54606 ptp_id, 54607 clock_num, 54608 data); 54609 } 54610 54611 int 54612 bcm_loop_ptp_clock_time_set( 54613 int unit, 54614 bcm_ptp_stack_id_t ptp_id, 54615 int clock_num, 54616 bcm_ptp_timestamp_t * time) 54617 { 54618 return bcm_ptp_clock_time_set( 54619 BCM_CONTROL(unit)->unit, 54620 ptp_id, 54621 clock_num, 54622 time); 54623 } 54624 54625 int 54626 bcm_loop_ptp_clock_timescale_get( 54627 int unit, 54628 bcm_ptp_stack_id_t ptp_id, 54629 int clock_num, 54630 bcm_ptp_timescale_t * timescale) 54631 { 54632 return bcm_ptp_clock_timescale_get( 54633 BCM_CONTROL(unit)->unit, 54634 ptp_id, 54635 clock_num, 54636 timescale); 54637 } 54638 54639 int 54640 bcm_loop_ptp_clock_timescale_set( 54641 int unit, 54642 bcm_ptp_stack_id_t ptp_id, 54643 int clock_num, 54644 bcm_ptp_timescale_t * timescale) 54645 { 54646 return bcm_ptp_clock_timescale_set( 54647 BCM_CONTROL(unit)->unit, 54648 ptp_id, 54649 clock_num, 54650 timescale); 54651 } 54652 54653 int 54654 bcm_loop_ptp_clock_traceability_get( 54655 int unit, 54656 bcm_ptp_stack_id_t ptp_id, 54657 int clock_num, 54658 bcm_ptp_trace_t * trace) 54659 { 54660 return bcm_ptp_clock_traceability_get( 54661 BCM_CONTROL(unit)->unit, 54662 ptp_id, 54663 clock_num, 54664 trace); 54665 } 54666 54667 int 54668 bcm_loop_ptp_clock_traceability_set( 54669 int unit, 54670 bcm_ptp_stack_id_t ptp_id, 54671 int clock_num, 54672 bcm_ptp_trace_t * trace) 54673 { 54674 return bcm_ptp_clock_traceability_set( 54675 BCM_CONTROL(unit)->unit, 54676 ptp_id, 54677 clock_num, 54678 trace); 54679 } 54680 54681 int 54682 bcm_loop_ptp_clock_user_description_set( 54683 int unit, 54684 bcm_ptp_stack_id_t ptp_id, 54685 int clock_num, 54686 uint8 * desc) 54687 { 54688 return bcm_ptp_clock_user_description_set( 54689 BCM_CONTROL(unit)->unit, 54690 ptp_id, 54691 clock_num, 54692 desc); 54693 } 54694 54695 int 54696 bcm_loop_ptp_clock_utc_get( 54697 int unit, 54698 bcm_ptp_stack_id_t ptp_id, 54699 int clock_num, 54700 bcm_ptp_utc_t * utc) 54701 { 54702 return bcm_ptp_clock_utc_get( 54703 BCM_CONTROL(unit)->unit, 54704 ptp_id, 54705 clock_num, 54706 utc); 54707 } 54708 54709 int 54710 bcm_loop_ptp_clock_utc_set( 54711 int unit, 54712 bcm_ptp_stack_id_t ptp_id, 54713 int clock_num, 54714 bcm_ptp_utc_t * utc) 54715 { 54716 return bcm_ptp_clock_utc_set( 54717 BCM_CONTROL(unit)->unit, 54718 ptp_id, 54719 clock_num, 54720 utc); 54721 } 54722 54723 int 54724 bcm_loop_ptp_ctdev_alarm_callback_register( 54725 int unit, 54726 bcm_ptp_stack_id_t ptp_id, 54727 int clock_num, 54728 bcm_ptp_ctdev_alarm_cb alarm_cb) 54729 { 54730 return bcm_ptp_ctdev_alarm_callback_register( 54731 BCM_CONTROL(unit)->unit, 54732 ptp_id, 54733 clock_num, 54734 alarm_cb); 54735 } 54736 54737 int 54738 bcm_loop_ptp_ctdev_alarm_callback_unregister( 54739 int unit, 54740 bcm_ptp_stack_id_t ptp_id, 54741 int clock_num) 54742 { 54743 return bcm_ptp_ctdev_alarm_callback_unregister( 54744 BCM_CONTROL(unit)->unit, 54745 ptp_id, 54746 clock_num); 54747 } 54748 54749 int 54750 bcm_loop_ptp_ctdev_alpha_get( 54751 int unit, 54752 bcm_ptp_stack_id_t ptp_id, 54753 int clock_num, 54754 uint16 * alpha_numerator, 54755 uint16 * alpha_denominator) 54756 { 54757 return bcm_ptp_ctdev_alpha_get( 54758 BCM_CONTROL(unit)->unit, 54759 ptp_id, 54760 clock_num, 54761 alpha_numerator, 54762 alpha_denominator); 54763 } 54764 54765 int 54766 bcm_loop_ptp_ctdev_alpha_set( 54767 int unit, 54768 bcm_ptp_stack_id_t ptp_id, 54769 int clock_num, 54770 uint16 alpha_numerator, 54771 uint16 alpha_denominator) 54772 { 54773 return bcm_ptp_ctdev_alpha_set( 54774 BCM_CONTROL(unit)->unit, 54775 ptp_id, 54776 clock_num, 54777 alpha_numerator, 54778 alpha_denominator); 54779 } 54780 54781 int 54782 bcm_loop_ptp_ctdev_enable_get( 54783 int unit, 54784 bcm_ptp_stack_id_t ptp_id, 54785 int clock_num, 54786 int * enable, 54787 uint32 * flags) 54788 { 54789 return bcm_ptp_ctdev_enable_get( 54790 BCM_CONTROL(unit)->unit, 54791 ptp_id, 54792 clock_num, 54793 enable, 54794 flags); 54795 } 54796 54797 int 54798 bcm_loop_ptp_ctdev_enable_set( 54799 int unit, 54800 bcm_ptp_stack_id_t ptp_id, 54801 int clock_num, 54802 int enable, 54803 uint32 flags) 54804 { 54805 return bcm_ptp_ctdev_enable_set( 54806 BCM_CONTROL(unit)->unit, 54807 ptp_id, 54808 clock_num, 54809 enable, 54810 flags); 54811 } 54812 54813 int 54814 bcm_loop_ptp_ctdev_verbose_get( 54815 int unit, 54816 bcm_ptp_stack_id_t ptp_id, 54817 int clock_num, 54818 int * verbose) 54819 { 54820 return bcm_ptp_ctdev_verbose_get( 54821 BCM_CONTROL(unit)->unit, 54822 ptp_id, 54823 clock_num, 54824 verbose); 54825 } 54826 54827 int 54828 bcm_loop_ptp_ctdev_verbose_set( 54829 int unit, 54830 bcm_ptp_stack_id_t ptp_id, 54831 int clock_num, 54832 int verbose) 54833 { 54834 return bcm_ptp_ctdev_verbose_set( 54835 BCM_CONTROL(unit)->unit, 54836 ptp_id, 54837 clock_num, 54838 verbose); 54839 } 54840 54841 int 54842 bcm_loop_ptp_detach( 54843 int unit) 54844 { 54845 return bcm_ptp_detach( 54846 BCM_CONTROL(unit)->unit); 54847 } 54848 54849 int 54850 bcm_loop_ptp_external_phy_synchronize( 54851 int unit, 54852 bcm_ptp_stack_id_t ptp_id, 54853 int clock_num, 54854 bcm_ptp_external_phy_config_t extphy_config) 54855 { 54856 return bcm_ptp_external_phy_synchronize( 54857 BCM_CONTROL(unit)->unit, 54858 ptp_id, 54859 clock_num, 54860 extphy_config); 54861 } 54862 54863 int 54864 bcm_loop_ptp_foreign_master_dataset_get( 54865 int unit, 54866 bcm_ptp_stack_id_t ptp_id, 54867 int clock_num, 54868 int port_num, 54869 bcm_ptp_foreign_master_dataset_t * data_set) 54870 { 54871 return bcm_ptp_foreign_master_dataset_get( 54872 BCM_CONTROL(unit)->unit, 54873 ptp_id, 54874 clock_num, 54875 port_num, 54876 data_set); 54877 } 54878 54879 int 54880 bcm_loop_ptp_g8275p1_traceability_info_clock_class_map( 54881 int unit, 54882 bcm_ptp_stack_id_t ptp_id, 54883 int clock_num, 54884 bcm_ptp_g8275p1_clock_traceability_info_t traceability_info, 54885 uint8 * clock_class) 54886 { 54887 return bcm_ptp_g8275p1_traceability_info_clock_class_map( 54888 BCM_CONTROL(unit)->unit, 54889 ptp_id, 54890 clock_num, 54891 traceability_info, 54892 clock_class); 54893 } 54894 54895 int 54896 bcm_loop_ptp_init( 54897 int unit) 54898 { 54899 return bcm_ptp_init( 54900 BCM_CONTROL(unit)->unit); 54901 } 54902 54903 int 54904 bcm_loop_ptp_input_channel_precedence_mode_set( 54905 int unit, 54906 bcm_ptp_stack_id_t ptp_id, 54907 int clock_num, 54908 int channel_select_mode) 54909 { 54910 return bcm_ptp_input_channel_precedence_mode_set( 54911 BCM_CONTROL(unit)->unit, 54912 ptp_id, 54913 clock_num, 54914 channel_select_mode); 54915 } 54916 54917 int 54918 bcm_loop_ptp_input_channel_switching_mode_set( 54919 int unit, 54920 bcm_ptp_stack_id_t ptp_id, 54921 int clock_num, 54922 int channel_switching_mode) 54923 { 54924 return bcm_ptp_input_channel_switching_mode_set( 54925 BCM_CONTROL(unit)->unit, 54926 ptp_id, 54927 clock_num, 54928 channel_switching_mode); 54929 } 54930 54931 int 54932 bcm_loop_ptp_input_channels_get( 54933 int unit, 54934 bcm_ptp_stack_id_t ptp_id, 54935 int clock_num, 54936 int * num_channels, 54937 bcm_ptp_channel_t * channels) 54938 { 54939 return bcm_ptp_input_channels_get( 54940 BCM_CONTROL(unit)->unit, 54941 ptp_id, 54942 clock_num, 54943 num_channels, 54944 channels); 54945 } 54946 54947 int 54948 bcm_loop_ptp_input_channels_set( 54949 int unit, 54950 bcm_ptp_stack_id_t ptp_id, 54951 int clock_num, 54952 int num_channels, 54953 bcm_ptp_channel_t * channels) 54954 { 54955 return bcm_ptp_input_channels_set( 54956 BCM_CONTROL(unit)->unit, 54957 ptp_id, 54958 clock_num, 54959 num_channels, 54960 channels); 54961 } 54962 54963 int 54964 bcm_loop_ptp_modular_enable_get( 54965 int unit, 54966 bcm_ptp_stack_id_t ptp_id, 54967 int clock_num, 54968 int * enable, 54969 uint32 * flags) 54970 { 54971 return bcm_ptp_modular_enable_get( 54972 BCM_CONTROL(unit)->unit, 54973 ptp_id, 54974 clock_num, 54975 enable, 54976 flags); 54977 } 54978 54979 int 54980 bcm_loop_ptp_modular_enable_set( 54981 int unit, 54982 bcm_ptp_stack_id_t ptp_id, 54983 int clock_num, 54984 int enable, 54985 uint32 flags) 54986 { 54987 return bcm_ptp_modular_enable_set( 54988 BCM_CONTROL(unit)->unit, 54989 ptp_id, 54990 clock_num, 54991 enable, 54992 flags); 54993 } 54994 54995 int 54996 bcm_loop_ptp_modular_phyts_get( 54997 int unit, 54998 bcm_ptp_stack_id_t ptp_id, 54999 int clock_num, 55000 int * phyts, 55001 int * framesync_pin) 55002 { 55003 return bcm_ptp_modular_phyts_get( 55004 BCM_CONTROL(unit)->unit, 55005 ptp_id, 55006 clock_num, 55007 phyts, 55008 framesync_pin); 55009 } 55010 55011 int 55012 bcm_loop_ptp_modular_phyts_set( 55013 int unit, 55014 bcm_ptp_stack_id_t ptp_id, 55015 int clock_num, 55016 int phyts, 55017 int framesync_pin) 55018 { 55019 return bcm_ptp_modular_phyts_set( 55020 BCM_CONTROL(unit)->unit, 55021 ptp_id, 55022 clock_num, 55023 phyts, 55024 framesync_pin); 55025 } 55026 55027 int 55028 bcm_loop_ptp_modular_portbitmap_get( 55029 int unit, 55030 bcm_ptp_stack_id_t ptp_id, 55031 int clock_num, 55032 bcm_pbmp_t * pbmp) 55033 { 55034 return bcm_ptp_modular_portbitmap_get( 55035 BCM_CONTROL(unit)->unit, 55036 ptp_id, 55037 clock_num, 55038 pbmp); 55039 } 55040 55041 int 55042 bcm_loop_ptp_modular_portbitmap_set( 55043 int unit, 55044 bcm_ptp_stack_id_t ptp_id, 55045 int clock_num, 55046 bcm_pbmp_t pbmp) 55047 { 55048 return bcm_ptp_modular_portbitmap_set( 55049 BCM_CONTROL(unit)->unit, 55050 ptp_id, 55051 clock_num, 55052 pbmp); 55053 } 55054 55055 int 55056 bcm_loop_ptp_modular_verbose_get( 55057 int unit, 55058 bcm_ptp_stack_id_t ptp_id, 55059 int clock_num, 55060 int * verbose) 55061 { 55062 return bcm_ptp_modular_verbose_get( 55063 BCM_CONTROL(unit)->unit, 55064 ptp_id, 55065 clock_num, 55066 verbose); 55067 } 55068 55069 int 55070 bcm_loop_ptp_modular_verbose_set( 55071 int unit, 55072 bcm_ptp_stack_id_t ptp_id, 55073 int clock_num, 55074 int verbose) 55075 { 55076 return bcm_ptp_modular_verbose_set( 55077 BCM_CONTROL(unit)->unit, 55078 ptp_id, 55079 clock_num, 55080 verbose); 55081 } 55082 55083 int 55084 bcm_loop_ptp_packet_counters_clear( 55085 int unit, 55086 bcm_ptp_stack_id_t ptp_id, 55087 int clock_num, 55088 int port_num, 55089 uint32 counter_bitmap) 55090 { 55091 return bcm_ptp_packet_counters_clear( 55092 BCM_CONTROL(unit)->unit, 55093 ptp_id, 55094 clock_num, 55095 port_num, 55096 counter_bitmap); 55097 } 55098 55099 int 55100 bcm_loop_ptp_packet_counters_get( 55101 int unit, 55102 bcm_ptp_stack_id_t ptp_id, 55103 int clock_num, 55104 bcm_ptp_packet_counters_t * counters) 55105 { 55106 return bcm_ptp_packet_counters_get( 55107 BCM_CONTROL(unit)->unit, 55108 ptp_id, 55109 clock_num, 55110 counters); 55111 } 55112 55113 int 55114 bcm_loop_ptp_peer_dataset_get( 55115 int unit, 55116 bcm_ptp_stack_id_t ptp_id, 55117 int clock_num, 55118 int port_num, 55119 int max_num_peers, 55120 bcm_ptp_peer_entry_t * peers, 55121 int * num_peers) 55122 { 55123 return bcm_ptp_peer_dataset_get( 55124 BCM_CONTROL(unit)->unit, 55125 ptp_id, 55126 clock_num, 55127 port_num, 55128 max_num_peers, 55129 peers, 55130 num_peers); 55131 } 55132 55133 int 55134 bcm_loop_ptp_phase_offset_get( 55135 int unit, 55136 bcm_ptp_stack_id_t ptp_id, 55137 int clock_num, 55138 bcm_ptp_phase_offset_t * offset) 55139 { 55140 return bcm_ptp_phase_offset_get( 55141 BCM_CONTROL(unit)->unit, 55142 ptp_id, 55143 clock_num, 55144 offset); 55145 } 55146 55147 int 55148 bcm_loop_ptp_phase_offset_set( 55149 int unit, 55150 bcm_ptp_stack_id_t ptp_id, 55151 int clock_num, 55152 const bcm_ptp_phase_offset_t * offset) 55153 { 55154 return bcm_ptp_phase_offset_set( 55155 BCM_CONTROL(unit)->unit, 55156 ptp_id, 55157 clock_num, 55158 offset); 55159 } 55160 55161 int 55162 bcm_loop_ptp_pkt_flags_override_get( 55163 int unit, 55164 bcm_ptp_stack_id_t ptp_id, 55165 int clock_num, 55166 uint32 * override_flag, 55167 uint32 * override_value) 55168 { 55169 return bcm_ptp_pkt_flags_override_get( 55170 BCM_CONTROL(unit)->unit, 55171 ptp_id, 55172 clock_num, 55173 override_flag, 55174 override_value); 55175 } 55176 55177 int 55178 bcm_loop_ptp_pkt_flags_override_set( 55179 int unit, 55180 bcm_ptp_stack_id_t ptp_id, 55181 int clock_num, 55182 uint32 override_flag, 55183 uint32 override_value) 55184 { 55185 return bcm_ptp_pkt_flags_override_set( 55186 BCM_CONTROL(unit)->unit, 55187 ptp_id, 55188 clock_num, 55189 override_flag, 55190 override_value); 55191 } 55192 55193 int 55194 bcm_loop_ptp_primary_domain_get( 55195 int unit, 55196 bcm_ptp_stack_id_t ptp_id, 55197 int clock_num, 55198 int * primary_domain) 55199 { 55200 return bcm_ptp_primary_domain_get( 55201 BCM_CONTROL(unit)->unit, 55202 ptp_id, 55203 clock_num, 55204 primary_domain); 55205 } 55206 55207 int 55208 bcm_loop_ptp_primary_domain_set( 55209 int unit, 55210 bcm_ptp_stack_id_t ptp_id, 55211 int clock_num, 55212 int primary_domain) 55213 { 55214 return bcm_ptp_primary_domain_set( 55215 BCM_CONTROL(unit)->unit, 55216 ptp_id, 55217 clock_num, 55218 primary_domain); 55219 } 55220 55221 int 55222 bcm_loop_ptp_servo_configuration_get( 55223 int unit, 55224 bcm_ptp_stack_id_t ptp_id, 55225 int clock_num, 55226 bcm_ptp_servo_config_t * config) 55227 { 55228 return bcm_ptp_servo_configuration_get( 55229 BCM_CONTROL(unit)->unit, 55230 ptp_id, 55231 clock_num, 55232 config); 55233 } 55234 55235 int 55236 bcm_loop_ptp_servo_configuration_set( 55237 int unit, 55238 bcm_ptp_stack_id_t ptp_id, 55239 int clock_num, 55240 bcm_ptp_servo_config_t * config) 55241 { 55242 return bcm_ptp_servo_configuration_set( 55243 BCM_CONTROL(unit)->unit, 55244 ptp_id, 55245 clock_num, 55246 config); 55247 } 55248 55249 int 55250 bcm_loop_ptp_servo_status_get( 55251 int unit, 55252 bcm_ptp_stack_id_t ptp_id, 55253 int clock_num, 55254 bcm_ptp_servo_status_t * status) 55255 { 55256 return bcm_ptp_servo_status_get( 55257 BCM_CONTROL(unit)->unit, 55258 ptp_id, 55259 clock_num, 55260 status); 55261 } 55262 55263 int 55264 bcm_loop_ptp_servo_threshold_get( 55265 int unit, 55266 bcm_ptp_stack_id_t ptp_id, 55267 int clock_num, 55268 bcm_ptp_servo_threshold_t * threshold) 55269 { 55270 return bcm_ptp_servo_threshold_get( 55271 BCM_CONTROL(unit)->unit, 55272 ptp_id, 55273 clock_num, 55274 threshold); 55275 } 55276 55277 int 55278 bcm_loop_ptp_servo_threshold_set( 55279 int unit, 55280 bcm_ptp_stack_id_t ptp_id, 55281 int clock_num, 55282 bcm_ptp_servo_threshold_t * threshold) 55283 { 55284 return bcm_ptp_servo_threshold_set( 55285 BCM_CONTROL(unit)->unit, 55286 ptp_id, 55287 clock_num, 55288 threshold); 55289 } 55290 55291 int 55292 bcm_loop_ptp_signal_output_get( 55293 int unit, 55294 bcm_ptp_stack_id_t ptp_id, 55295 int clock_num, 55296 int * signal_output_count, 55297 bcm_ptp_signal_output_t * signal_output_id) 55298 { 55299 return bcm_ptp_signal_output_get( 55300 BCM_CONTROL(unit)->unit, 55301 ptp_id, 55302 clock_num, 55303 signal_output_count, 55304 signal_output_id); 55305 } 55306 55307 int 55308 bcm_loop_ptp_signal_output_remove( 55309 int unit, 55310 bcm_ptp_stack_id_t ptp_id, 55311 int clock_num, 55312 int signal_output_id) 55313 { 55314 return bcm_ptp_signal_output_remove( 55315 BCM_CONTROL(unit)->unit, 55316 ptp_id, 55317 clock_num, 55318 signal_output_id); 55319 } 55320 55321 int 55322 bcm_loop_ptp_signal_output_set( 55323 int unit, 55324 bcm_ptp_stack_id_t ptp_id, 55325 int clock_num, 55326 int * signal_output_id, 55327 bcm_ptp_signal_output_t * output_info) 55328 { 55329 return bcm_ptp_signal_output_set( 55330 BCM_CONTROL(unit)->unit, 55331 ptp_id, 55332 clock_num, 55333 signal_output_id, 55334 output_info); 55335 } 55336 55337 int 55338 bcm_loop_ptp_signaled_unicast_master_add( 55339 int unit, 55340 bcm_ptp_stack_id_t ptp_id, 55341 int clock_num, 55342 int port_num, 55343 bcm_ptp_clock_unicast_master_t * master_info, 55344 uint32 mask) 55345 { 55346 return bcm_ptp_signaled_unicast_master_add( 55347 BCM_CONTROL(unit)->unit, 55348 ptp_id, 55349 clock_num, 55350 port_num, 55351 master_info, 55352 mask); 55353 } 55354 55355 int 55356 bcm_loop_ptp_signaled_unicast_master_remove( 55357 int unit, 55358 bcm_ptp_stack_id_t ptp_id, 55359 int clock_num, 55360 int port_num, 55361 bcm_ptp_clock_peer_address_t * master_info) 55362 { 55363 return bcm_ptp_signaled_unicast_master_remove( 55364 BCM_CONTROL(unit)->unit, 55365 ptp_id, 55366 clock_num, 55367 port_num, 55368 master_info); 55369 } 55370 55371 int 55372 bcm_loop_ptp_signaled_unicast_slave_list( 55373 int unit, 55374 bcm_ptp_stack_id_t ptp_id, 55375 int clock_num, 55376 int port_num, 55377 int max_num_slaves, 55378 int * num_slaves, 55379 bcm_ptp_clock_peer_t * slave_info) 55380 { 55381 return bcm_ptp_signaled_unicast_slave_list( 55382 BCM_CONTROL(unit)->unit, 55383 ptp_id, 55384 clock_num, 55385 port_num, 55386 max_num_slaves, 55387 num_slaves, 55388 slave_info); 55389 } 55390 55391 int 55392 bcm_loop_ptp_signaled_unicast_slave_table_clear( 55393 int unit, 55394 bcm_ptp_stack_id_t ptp_id, 55395 int clock_num, 55396 int port_num, 55397 int callstack) 55398 { 55399 return bcm_ptp_signaled_unicast_slave_table_clear( 55400 BCM_CONTROL(unit)->unit, 55401 ptp_id, 55402 clock_num, 55403 port_num, 55404 callstack); 55405 } 55406 55407 int 55408 bcm_loop_ptp_signaling_arbiter_register( 55409 int unit, 55410 bcm_ptp_stack_id_t ptp_id, 55411 int clock_num, 55412 bcm_ptp_signaling_arbiter_t arb, 55413 void * user_data) 55414 { 55415 return bcm_ptp_signaling_arbiter_register( 55416 BCM_CONTROL(unit)->unit, 55417 ptp_id, 55418 clock_num, 55419 arb, 55420 user_data); 55421 } 55422 55423 int 55424 bcm_loop_ptp_signaling_arbiter_unregister( 55425 int unit, 55426 bcm_ptp_stack_id_t ptp_id, 55427 int clock_num) 55428 { 55429 return bcm_ptp_signaling_arbiter_unregister( 55430 BCM_CONTROL(unit)->unit, 55431 ptp_id, 55432 clock_num); 55433 } 55434 55435 int 55436 bcm_loop_ptp_stack_create( 55437 int unit, 55438 bcm_ptp_stack_info_t * ptp_info) 55439 { 55440 return bcm_ptp_stack_create( 55441 BCM_CONTROL(unit)->unit, 55442 ptp_info); 55443 } 55444 55445 int 55446 bcm_loop_ptp_stack_destroy( 55447 int unit, 55448 bcm_ptp_stack_id_t ptp_id) 55449 { 55450 return bcm_ptp_stack_destroy( 55451 BCM_CONTROL(unit)->unit, 55452 ptp_id); 55453 } 55454 55455 int 55456 bcm_loop_ptp_stack_get( 55457 int unit, 55458 bcm_ptp_stack_id_t ptp_id, 55459 bcm_ptp_stack_info_t * ptp_info) 55460 { 55461 return bcm_ptp_stack_get( 55462 BCM_CONTROL(unit)->unit, 55463 ptp_id, 55464 ptp_info); 55465 } 55466 55467 int 55468 bcm_loop_ptp_stack_get_all( 55469 int unit, 55470 int max_size, 55471 bcm_ptp_stack_info_t * ptp_info, 55472 int * no_of_stacks) 55473 { 55474 return bcm_ptp_stack_get_all( 55475 BCM_CONTROL(unit)->unit, 55476 max_size, 55477 ptp_info, 55478 no_of_stacks); 55479 } 55480 55481 int 55482 bcm_loop_ptp_static_unicast_master_add( 55483 int unit, 55484 bcm_ptp_stack_id_t ptp_id, 55485 int clock_num, 55486 int port_num, 55487 bcm_ptp_clock_unicast_master_t * master_info) 55488 { 55489 return bcm_ptp_static_unicast_master_add( 55490 BCM_CONTROL(unit)->unit, 55491 ptp_id, 55492 clock_num, 55493 port_num, 55494 master_info); 55495 } 55496 55497 int 55498 bcm_loop_ptp_static_unicast_master_list( 55499 int unit, 55500 bcm_ptp_stack_id_t ptp_id, 55501 int clock_num, 55502 int port_num, 55503 int max_num_masters, 55504 int * num_masters, 55505 bcm_ptp_clock_peer_address_t * master_addr) 55506 { 55507 return bcm_ptp_static_unicast_master_list( 55508 BCM_CONTROL(unit)->unit, 55509 ptp_id, 55510 clock_num, 55511 port_num, 55512 max_num_masters, 55513 num_masters, 55514 master_addr); 55515 } 55516 55517 int 55518 bcm_loop_ptp_static_unicast_master_remove( 55519 int unit, 55520 bcm_ptp_stack_id_t ptp_id, 55521 int clock_num, 55522 int port_num, 55523 bcm_ptp_clock_peer_address_t * master_info) 55524 { 55525 return bcm_ptp_static_unicast_master_remove( 55526 BCM_CONTROL(unit)->unit, 55527 ptp_id, 55528 clock_num, 55529 port_num, 55530 master_info); 55531 } 55532 55533 int 55534 bcm_loop_ptp_static_unicast_master_table_clear( 55535 int unit, 55536 bcm_ptp_stack_id_t ptp_id, 55537 int clock_num, 55538 int port_num) 55539 { 55540 return bcm_ptp_static_unicast_master_table_clear( 55541 BCM_CONTROL(unit)->unit, 55542 ptp_id, 55543 clock_num, 55544 port_num); 55545 } 55546 55547 int 55548 bcm_loop_ptp_static_unicast_master_table_size_get( 55549 int unit, 55550 bcm_ptp_stack_id_t ptp_id, 55551 int clock_num, 55552 int port_num, 55553 int * max_table_entries) 55554 { 55555 return bcm_ptp_static_unicast_master_table_size_get( 55556 BCM_CONTROL(unit)->unit, 55557 ptp_id, 55558 clock_num, 55559 port_num, 55560 max_table_entries); 55561 } 55562 55563 int 55564 bcm_loop_ptp_static_unicast_slave_add( 55565 int unit, 55566 bcm_ptp_stack_id_t ptp_id, 55567 int clock_num, 55568 int port_num, 55569 bcm_ptp_clock_peer_t * slave_info) 55570 { 55571 return bcm_ptp_static_unicast_slave_add( 55572 BCM_CONTROL(unit)->unit, 55573 ptp_id, 55574 clock_num, 55575 port_num, 55576 slave_info); 55577 } 55578 55579 int 55580 bcm_loop_ptp_static_unicast_slave_list( 55581 int unit, 55582 bcm_ptp_stack_id_t ptp_id, 55583 int clock_num, 55584 int port_num, 55585 int max_num_slaves, 55586 int * num_slaves, 55587 bcm_ptp_clock_peer_t * slave_info) 55588 { 55589 return bcm_ptp_static_unicast_slave_list( 55590 BCM_CONTROL(unit)->unit, 55591 ptp_id, 55592 clock_num, 55593 port_num, 55594 max_num_slaves, 55595 num_slaves, 55596 slave_info); 55597 } 55598 55599 int 55600 bcm_loop_ptp_static_unicast_slave_remove( 55601 int unit, 55602 bcm_ptp_stack_id_t ptp_id, 55603 int clock_num, 55604 int port_num, 55605 bcm_ptp_clock_peer_t * slave_info) 55606 { 55607 return bcm_ptp_static_unicast_slave_remove( 55608 BCM_CONTROL(unit)->unit, 55609 ptp_id, 55610 clock_num, 55611 port_num, 55612 slave_info); 55613 } 55614 55615 int 55616 bcm_loop_ptp_static_unicast_slave_table_clear( 55617 int unit, 55618 bcm_ptp_stack_id_t ptp_id, 55619 int clock_num, 55620 int port_num) 55621 { 55622 return bcm_ptp_static_unicast_slave_table_clear( 55623 BCM_CONTROL(unit)->unit, 55624 ptp_id, 55625 clock_num, 55626 port_num); 55627 } 55628 55629 int 55630 bcm_loop_ptp_sync_phy( 55631 int unit, 55632 bcm_ptp_stack_id_t ptp_id, 55633 int clock_num, 55634 bcm_ptp_sync_phy_input_t sync_input) 55635 { 55636 return bcm_ptp_sync_phy( 55637 BCM_CONTROL(unit)->unit, 55638 ptp_id, 55639 clock_num, 55640 sync_input); 55641 } 55642 55643 int 55644 bcm_loop_ptp_telecom_g8265_init( 55645 int unit, 55646 bcm_ptp_stack_id_t ptp_id, 55647 int clock_num) 55648 { 55649 return bcm_ptp_telecom_g8265_init( 55650 BCM_CONTROL(unit)->unit, 55651 ptp_id, 55652 clock_num); 55653 } 55654 55655 int 55656 bcm_loop_ptp_telecom_g8265_network_option_get( 55657 int unit, 55658 bcm_ptp_stack_id_t ptp_id, 55659 int clock_num, 55660 bcm_ptp_telecom_g8265_network_option_t * network_option) 55661 { 55662 return bcm_ptp_telecom_g8265_network_option_get( 55663 BCM_CONTROL(unit)->unit, 55664 ptp_id, 55665 clock_num, 55666 network_option); 55667 } 55668 55669 int 55670 bcm_loop_ptp_telecom_g8265_network_option_set( 55671 int unit, 55672 bcm_ptp_stack_id_t ptp_id, 55673 int clock_num, 55674 bcm_ptp_telecom_g8265_network_option_t network_option) 55675 { 55676 return bcm_ptp_telecom_g8265_network_option_set( 55677 BCM_CONTROL(unit)->unit, 55678 ptp_id, 55679 clock_num, 55680 network_option); 55681 } 55682 55683 int 55684 bcm_loop_ptp_telecom_g8265_packet_master_add( 55685 int unit, 55686 bcm_ptp_stack_id_t ptp_id, 55687 int clock_num, 55688 int port_num, 55689 bcm_ptp_clock_port_address_t * address) 55690 { 55691 return bcm_ptp_telecom_g8265_packet_master_add( 55692 BCM_CONTROL(unit)->unit, 55693 ptp_id, 55694 clock_num, 55695 port_num, 55696 address); 55697 } 55698 55699 int 55700 bcm_loop_ptp_telecom_g8265_packet_master_best_get( 55701 int unit, 55702 bcm_ptp_stack_id_t ptp_id, 55703 int clock_num, 55704 bcm_ptp_telecom_g8265_pktmaster_t * pktmaster) 55705 { 55706 return bcm_ptp_telecom_g8265_packet_master_best_get( 55707 BCM_CONTROL(unit)->unit, 55708 ptp_id, 55709 clock_num, 55710 pktmaster); 55711 } 55712 55713 int 55714 bcm_loop_ptp_telecom_g8265_packet_master_get( 55715 int unit, 55716 bcm_ptp_stack_id_t ptp_id, 55717 int clock_num, 55718 bcm_ptp_clock_port_address_t * address, 55719 bcm_ptp_telecom_g8265_pktmaster_t * pktmaster) 55720 { 55721 return bcm_ptp_telecom_g8265_packet_master_get( 55722 BCM_CONTROL(unit)->unit, 55723 ptp_id, 55724 clock_num, 55725 address, 55726 pktmaster); 55727 } 55728 55729 int 55730 bcm_loop_ptp_telecom_g8265_packet_master_list( 55731 int unit, 55732 bcm_ptp_stack_id_t ptp_id, 55733 int clock_num, 55734 int max_master_count, 55735 int * num_masters, 55736 int * best_master, 55737 bcm_ptp_telecom_g8265_pktmaster_t * pktmaster) 55738 { 55739 return bcm_ptp_telecom_g8265_packet_master_list( 55740 BCM_CONTROL(unit)->unit, 55741 ptp_id, 55742 clock_num, 55743 max_master_count, 55744 num_masters, 55745 best_master, 55746 pktmaster); 55747 } 55748 55749 int 55750 bcm_loop_ptp_telecom_g8265_packet_master_lockout_set( 55751 int unit, 55752 bcm_ptp_stack_id_t ptp_id, 55753 int clock_num, 55754 uint8 lockout, 55755 bcm_ptp_clock_port_address_t * address) 55756 { 55757 return bcm_ptp_telecom_g8265_packet_master_lockout_set( 55758 BCM_CONTROL(unit)->unit, 55759 ptp_id, 55760 clock_num, 55761 lockout, 55762 address); 55763 } 55764 55765 int 55766 bcm_loop_ptp_telecom_g8265_packet_master_non_reversion_set( 55767 int unit, 55768 bcm_ptp_stack_id_t ptp_id, 55769 int clock_num, 55770 uint8 nonres, 55771 bcm_ptp_clock_port_address_t * address) 55772 { 55773 return bcm_ptp_telecom_g8265_packet_master_non_reversion_set( 55774 BCM_CONTROL(unit)->unit, 55775 ptp_id, 55776 clock_num, 55777 nonres, 55778 address); 55779 } 55780 55781 int 55782 bcm_loop_ptp_telecom_g8265_packet_master_priority_override( 55783 int unit, 55784 bcm_ptp_stack_id_t ptp_id, 55785 int clock_num, 55786 uint8 override, 55787 bcm_ptp_clock_port_address_t * address) 55788 { 55789 return bcm_ptp_telecom_g8265_packet_master_priority_override( 55790 BCM_CONTROL(unit)->unit, 55791 ptp_id, 55792 clock_num, 55793 override, 55794 address); 55795 } 55796 55797 int 55798 bcm_loop_ptp_telecom_g8265_packet_master_priority_set( 55799 int unit, 55800 bcm_ptp_stack_id_t ptp_id, 55801 int clock_num, 55802 uint16 priority, 55803 bcm_ptp_clock_port_address_t * address) 55804 { 55805 return bcm_ptp_telecom_g8265_packet_master_priority_set( 55806 BCM_CONTROL(unit)->unit, 55807 ptp_id, 55808 clock_num, 55809 priority, 55810 address); 55811 } 55812 55813 int 55814 bcm_loop_ptp_telecom_g8265_packet_master_remove( 55815 int unit, 55816 bcm_ptp_stack_id_t ptp_id, 55817 int clock_num, 55818 int port_num, 55819 bcm_ptp_clock_port_address_t * address) 55820 { 55821 return bcm_ptp_telecom_g8265_packet_master_remove( 55822 BCM_CONTROL(unit)->unit, 55823 ptp_id, 55824 clock_num, 55825 port_num, 55826 address); 55827 } 55828 55829 int 55830 bcm_loop_ptp_telecom_g8265_packet_master_wait_duration_set( 55831 int unit, 55832 bcm_ptp_stack_id_t ptp_id, 55833 int clock_num, 55834 uint64 wait_sec, 55835 bcm_ptp_clock_port_address_t * address) 55836 { 55837 return bcm_ptp_telecom_g8265_packet_master_wait_duration_set( 55838 BCM_CONTROL(unit)->unit, 55839 ptp_id, 55840 clock_num, 55841 wait_sec, 55842 address); 55843 } 55844 55845 int 55846 bcm_loop_ptp_telecom_g8265_pktstats_thresholds_get( 55847 int unit, 55848 bcm_ptp_stack_id_t ptp_id, 55849 int clock_num, 55850 bcm_ptp_telecom_g8265_pktstats_t * thresholds) 55851 { 55852 return bcm_ptp_telecom_g8265_pktstats_thresholds_get( 55853 BCM_CONTROL(unit)->unit, 55854 ptp_id, 55855 clock_num, 55856 thresholds); 55857 } 55858 55859 int 55860 bcm_loop_ptp_telecom_g8265_pktstats_thresholds_set( 55861 int unit, 55862 bcm_ptp_stack_id_t ptp_id, 55863 int clock_num, 55864 bcm_ptp_telecom_g8265_pktstats_t thresholds) 55865 { 55866 return bcm_ptp_telecom_g8265_pktstats_thresholds_set( 55867 BCM_CONTROL(unit)->unit, 55868 ptp_id, 55869 clock_num, 55870 thresholds); 55871 } 55872 55873 int 55874 bcm_loop_ptp_telecom_g8265_quality_level_set( 55875 int unit, 55876 bcm_ptp_stack_id_t ptp_id, 55877 int clock_num, 55878 bcm_ptp_telecom_g8265_quality_level_t ql) 55879 { 55880 return bcm_ptp_telecom_g8265_quality_level_set( 55881 BCM_CONTROL(unit)->unit, 55882 ptp_id, 55883 clock_num, 55884 ql); 55885 } 55886 55887 int 55888 bcm_loop_ptp_telecom_g8265_receipt_timeout_get( 55889 int unit, 55890 bcm_ptp_stack_id_t ptp_id, 55891 int clock_num, 55892 bcm_ptp_message_type_t message_type, 55893 uint32 * receipt_timeout) 55894 { 55895 return bcm_ptp_telecom_g8265_receipt_timeout_get( 55896 BCM_CONTROL(unit)->unit, 55897 ptp_id, 55898 clock_num, 55899 message_type, 55900 receipt_timeout); 55901 } 55902 55903 int 55904 bcm_loop_ptp_telecom_g8265_receipt_timeout_set( 55905 int unit, 55906 bcm_ptp_stack_id_t ptp_id, 55907 int clock_num, 55908 bcm_ptp_message_type_t message_type, 55909 uint32 receipt_timeout) 55910 { 55911 return bcm_ptp_telecom_g8265_receipt_timeout_set( 55912 BCM_CONTROL(unit)->unit, 55913 ptp_id, 55914 clock_num, 55915 message_type, 55916 receipt_timeout); 55917 } 55918 55919 int 55920 bcm_loop_ptp_telecom_g8265_shutdown( 55921 int unit) 55922 { 55923 return bcm_ptp_telecom_g8265_shutdown( 55924 BCM_CONTROL(unit)->unit); 55925 } 55926 55927 int 55928 bcm_loop_ptp_time_format_set( 55929 int unit, 55930 bcm_ptp_stack_id_t ptp_id, 55931 bcm_ptp_time_type_t type) 55932 { 55933 return bcm_ptp_time_format_set( 55934 BCM_CONTROL(unit)->unit, 55935 ptp_id, 55936 type); 55937 } 55938 55939 int 55940 bcm_loop_ptp_timesource_input_status_get( 55941 int unit, 55942 bcm_ptp_stack_id_t ptp_id, 55943 int clock_num, 55944 bcm_ptp_timesource_status_t * status) 55945 { 55946 return bcm_ptp_timesource_input_status_get( 55947 BCM_CONTROL(unit)->unit, 55948 ptp_id, 55949 clock_num, 55950 status); 55951 } 55952 55953 int 55954 bcm_loop_ptp_tod_input_sources_get( 55955 int unit, 55956 bcm_ptp_stack_id_t ptp_id, 55957 int clock_num, 55958 int * num_tod_sources, 55959 bcm_ptp_tod_input_t * tod_sources) 55960 { 55961 return bcm_ptp_tod_input_sources_get( 55962 BCM_CONTROL(unit)->unit, 55963 ptp_id, 55964 clock_num, 55965 num_tod_sources, 55966 tod_sources); 55967 } 55968 55969 int 55970 bcm_loop_ptp_tod_input_sources_set( 55971 int unit, 55972 bcm_ptp_stack_id_t ptp_id, 55973 int clock_num, 55974 int num_tod_sources, 55975 bcm_ptp_tod_input_t * tod_sources) 55976 { 55977 return bcm_ptp_tod_input_sources_set( 55978 BCM_CONTROL(unit)->unit, 55979 ptp_id, 55980 clock_num, 55981 num_tod_sources, 55982 tod_sources); 55983 } 55984 55985 int 55986 bcm_loop_ptp_tod_output_get( 55987 int unit, 55988 bcm_ptp_stack_id_t ptp_id, 55989 int clock_num, 55990 int * tod_output_count, 55991 bcm_ptp_tod_output_t * tod_output) 55992 { 55993 return bcm_ptp_tod_output_get( 55994 BCM_CONTROL(unit)->unit, 55995 ptp_id, 55996 clock_num, 55997 tod_output_count, 55998 tod_output); 55999 } 56000 56001 int 56002 bcm_loop_ptp_tod_output_remove( 56003 int unit, 56004 bcm_ptp_stack_id_t ptp_id, 56005 int clock_num, 56006 int tod_output_id) 56007 { 56008 return bcm_ptp_tod_output_remove( 56009 BCM_CONTROL(unit)->unit, 56010 ptp_id, 56011 clock_num, 56012 tod_output_id); 56013 } 56014 56015 int 56016 bcm_loop_ptp_tod_output_set( 56017 int unit, 56018 bcm_ptp_stack_id_t ptp_id, 56019 int clock_num, 56020 int * tod_output_id, 56021 bcm_ptp_tod_output_t * output_info) 56022 { 56023 return bcm_ptp_tod_output_set( 56024 BCM_CONTROL(unit)->unit, 56025 ptp_id, 56026 clock_num, 56027 tod_output_id, 56028 output_info); 56029 } 56030 56031 int 56032 bcm_loop_ptp_transparent_clock_default_dataset_get( 56033 int unit, 56034 bcm_ptp_stack_id_t ptp_id, 56035 int clock_num, 56036 bcm_ptp_transparent_clock_default_dataset_t * data_set) 56037 { 56038 return bcm_ptp_transparent_clock_default_dataset_get( 56039 BCM_CONTROL(unit)->unit, 56040 ptp_id, 56041 clock_num, 56042 data_set); 56043 } 56044 56045 int 56046 bcm_loop_ptp_transparent_clock_port_dataset_get( 56047 int unit, 56048 bcm_ptp_stack_id_t ptp_id, 56049 int clock_num, 56050 uint16 clock_port, 56051 bcm_ptp_transparent_clock_port_dataset_t * data_set) 56052 { 56053 return bcm_ptp_transparent_clock_port_dataset_get( 56054 BCM_CONTROL(unit)->unit, 56055 ptp_id, 56056 clock_num, 56057 clock_port, 56058 data_set); 56059 } 56060 56061 int 56062 bcm_loop_ptp_unicast_request_duration_get( 56063 int unit, 56064 bcm_ptp_stack_id_t ptp_id, 56065 int clock_num, 56066 int port_num, 56067 uint32 * duration) 56068 { 56069 return bcm_ptp_unicast_request_duration_get( 56070 BCM_CONTROL(unit)->unit, 56071 ptp_id, 56072 clock_num, 56073 port_num, 56074 duration); 56075 } 56076 56077 int 56078 bcm_loop_ptp_unicast_request_duration_max_get( 56079 int unit, 56080 bcm_ptp_stack_id_t ptp_id, 56081 int clock_num, 56082 int port_num, 56083 uint32 * duration_max) 56084 { 56085 return bcm_ptp_unicast_request_duration_max_get( 56086 BCM_CONTROL(unit)->unit, 56087 ptp_id, 56088 clock_num, 56089 port_num, 56090 duration_max); 56091 } 56092 56093 int 56094 bcm_loop_ptp_unicast_request_duration_max_set( 56095 int unit, 56096 bcm_ptp_stack_id_t ptp_id, 56097 int clock_num, 56098 int port_num, 56099 uint32 duration_max) 56100 { 56101 return bcm_ptp_unicast_request_duration_max_set( 56102 BCM_CONTROL(unit)->unit, 56103 ptp_id, 56104 clock_num, 56105 port_num, 56106 duration_max); 56107 } 56108 56109 int 56110 bcm_loop_ptp_unicast_request_duration_min_get( 56111 int unit, 56112 bcm_ptp_stack_id_t ptp_id, 56113 int clock_num, 56114 int port_num, 56115 uint32 * duration_min) 56116 { 56117 return bcm_ptp_unicast_request_duration_min_get( 56118 BCM_CONTROL(unit)->unit, 56119 ptp_id, 56120 clock_num, 56121 port_num, 56122 duration_min); 56123 } 56124 56125 int 56126 bcm_loop_ptp_unicast_request_duration_min_set( 56127 int unit, 56128 bcm_ptp_stack_id_t ptp_id, 56129 int clock_num, 56130 int port_num, 56131 uint32 duration_min) 56132 { 56133 return bcm_ptp_unicast_request_duration_min_set( 56134 BCM_CONTROL(unit)->unit, 56135 ptp_id, 56136 clock_num, 56137 port_num, 56138 duration_min); 56139 } 56140 56141 int 56142 bcm_loop_ptp_unicast_request_duration_set( 56143 int unit, 56144 bcm_ptp_stack_id_t ptp_id, 56145 int clock_num, 56146 int port_num, 56147 uint32 duration) 56148 { 56149 return bcm_ptp_unicast_request_duration_set( 56150 BCM_CONTROL(unit)->unit, 56151 ptp_id, 56152 clock_num, 56153 port_num, 56154 duration); 56155 } 56156 56157 #endif /* INCLUDE_PTP */ 56158 56159 int 56160 bcm_loop_qos_control_get( 56161 int unit, 56162 bcm_qos_control_type_t type, 56163 int * arg) 56164 { 56165 return bcm_qos_control_get( 56166 BCM_CONTROL(unit)->unit, 56167 type, 56168 arg); 56169 } 56170 56171 int 56172 bcm_loop_qos_control_set( 56173 int unit, 56174 bcm_qos_control_type_t type, 56175 int arg) 56176 { 56177 return bcm_qos_control_set( 56178 BCM_CONTROL(unit)->unit, 56179 type, 56180 arg); 56181 } 56182 56183 int 56184 bcm_loop_qos_detach( 56185 int unit) 56186 { 56187 return bcm_qos_detach( 56188 BCM_CONTROL(unit)->unit); 56189 } 56190 56191 /* bcm_qos_egress_model_t_init not dispatchable */ 56192 56193 /* bcm_qos_ingress_model_t_init not dispatchable */ 56194 56195 int 56196 bcm_loop_qos_init( 56197 int unit) 56198 { 56199 return bcm_qos_init( 56200 BCM_CONTROL(unit)->unit); 56201 } 56202 56203 int 56204 bcm_loop_qos_map_add( 56205 int unit, 56206 uint32 flags, 56207 bcm_qos_map_t * map, 56208 int map_id) 56209 { 56210 return bcm_qos_map_add( 56211 BCM_CONTROL(unit)->unit, 56212 flags, 56213 map, 56214 map_id); 56215 } 56216 56217 int 56218 bcm_loop_qos_map_control_get( 56219 int unit, 56220 uint32 map_id, 56221 uint32 flags, 56222 bcm_qos_map_control_type_t type, 56223 uint64 * arg) 56224 { 56225 return bcm_qos_map_control_get( 56226 BCM_CONTROL(unit)->unit, 56227 map_id, 56228 flags, 56229 type, 56230 arg); 56231 } 56232 56233 int 56234 bcm_loop_qos_map_control_set( 56235 int unit, 56236 uint32 map_id, 56237 uint32 flags, 56238 bcm_qos_map_control_type_t type, 56239 uint64 arg) 56240 { 56241 return bcm_qos_map_control_set( 56242 BCM_CONTROL(unit)->unit, 56243 map_id, 56244 flags, 56245 type, 56246 arg); 56247 } 56248 56249 int 56250 bcm_loop_qos_map_create( 56251 int unit, 56252 uint32 flags, 56253 int * map_id) 56254 { 56255 return bcm_qos_map_create( 56256 BCM_CONTROL(unit)->unit, 56257 flags, 56258 map_id); 56259 } 56260 56261 int 56262 bcm_loop_qos_map_delete( 56263 int unit, 56264 uint32 flags, 56265 bcm_qos_map_t * map, 56266 int map_id) 56267 { 56268 return bcm_qos_map_delete( 56269 BCM_CONTROL(unit)->unit, 56270 flags, 56271 map, 56272 map_id); 56273 } 56274 56275 int 56276 bcm_loop_qos_map_destroy( 56277 int unit, 56278 int map_id) 56279 { 56280 return bcm_qos_map_destroy( 56281 BCM_CONTROL(unit)->unit, 56282 map_id); 56283 } 56284 56285 int 56286 bcm_loop_qos_map_id_get_by_profile( 56287 int unit, 56288 uint32 flags, 56289 int profile, 56290 int * map_id) 56291 { 56292 return bcm_qos_map_id_get_by_profile( 56293 BCM_CONTROL(unit)->unit, 56294 flags, 56295 profile, 56296 map_id); 56297 } 56298 56299 int 56300 bcm_loop_qos_map_multi_get( 56301 int unit, 56302 uint32 flags, 56303 int map_id, 56304 int array_size, 56305 bcm_qos_map_t * array, 56306 int * array_count) 56307 { 56308 return bcm_qos_map_multi_get( 56309 BCM_CONTROL(unit)->unit, 56310 flags, 56311 map_id, 56312 array_size, 56313 array, 56314 array_count); 56315 } 56316 56317 /* bcm_qos_map_t_init not dispatchable */ 56318 56319 int 56320 bcm_loop_qos_multi_get( 56321 int unit, 56322 int array_size, 56323 int * map_ids_array, 56324 int * flags_array, 56325 int * array_count) 56326 { 56327 return bcm_qos_multi_get( 56328 BCM_CONTROL(unit)->unit, 56329 array_size, 56330 map_ids_array, 56331 flags_array, 56332 array_count); 56333 } 56334 56335 int 56336 bcm_loop_qos_port_map_get( 56337 int unit, 56338 bcm_gport_t port, 56339 int * ing_map, 56340 int * egr_map) 56341 { 56342 return bcm_qos_port_map_get( 56343 BCM_CONTROL(unit)->unit, 56344 port, 56345 ing_map, 56346 egr_map); 56347 } 56348 56349 int 56350 bcm_loop_qos_port_map_set( 56351 int unit, 56352 bcm_gport_t port, 56353 int ing_map, 56354 int egr_map) 56355 { 56356 return bcm_qos_port_map_set( 56357 BCM_CONTROL(unit)->unit, 56358 port, 56359 ing_map, 56360 egr_map); 56361 } 56362 56363 int 56364 bcm_loop_qos_port_map_type_get( 56365 int unit, 56366 bcm_gport_t port, 56367 uint32 flags, 56368 int * map_id) 56369 { 56370 return bcm_qos_port_map_type_get( 56371 BCM_CONTROL(unit)->unit, 56372 port, 56373 flags, 56374 map_id); 56375 } 56376 56377 int 56378 bcm_loop_qos_port_vlan_map_get( 56379 int unit, 56380 bcm_port_t port, 56381 bcm_vlan_t vid, 56382 int * ing_map, 56383 int * egr_map) 56384 { 56385 return bcm_qos_port_vlan_map_get( 56386 BCM_CONTROL(unit)->unit, 56387 port, 56388 vid, 56389 ing_map, 56390 egr_map); 56391 } 56392 56393 int 56394 bcm_loop_qos_port_vlan_map_set( 56395 int unit, 56396 bcm_port_t port, 56397 bcm_vlan_t vid, 56398 int ing_map, 56399 int egr_map) 56400 { 56401 return bcm_qos_port_vlan_map_set( 56402 BCM_CONTROL(unit)->unit, 56403 port, 56404 vid, 56405 ing_map, 56406 egr_map); 56407 } 56408 56409 /* bcm_range_config_t_init not dispatchable */ 56410 56411 int 56412 bcm_loop_range_create( 56413 int unit, 56414 int flags, 56415 bcm_range_config_t * range_cfg) 56416 { 56417 return bcm_range_create( 56418 BCM_CONTROL(unit)->unit, 56419 flags, 56420 range_cfg); 56421 } 56422 56423 int 56424 bcm_loop_range_destroy( 56425 int unit, 56426 bcm_range_t rid) 56427 { 56428 return bcm_range_destroy( 56429 BCM_CONTROL(unit)->unit, 56430 rid); 56431 } 56432 56433 int 56434 bcm_loop_range_get( 56435 int unit, 56436 bcm_range_config_t * range_cfg) 56437 { 56438 return bcm_range_get( 56439 BCM_CONTROL(unit)->unit, 56440 range_cfg); 56441 } 56442 56443 /* bcm_range_group_config_t_init not dispatchable */ 56444 56445 int 56446 bcm_loop_range_group_create( 56447 int unit, 56448 bcm_range_group_config_t * range_group_config) 56449 { 56450 return bcm_range_group_create( 56451 BCM_CONTROL(unit)->unit, 56452 range_group_config); 56453 } 56454 56455 int 56456 bcm_loop_range_group_delete( 56457 int unit, 56458 bcm_range_group_config_t * range_group_config) 56459 { 56460 return bcm_range_group_delete( 56461 BCM_CONTROL(unit)->unit, 56462 range_group_config); 56463 } 56464 56465 int 56466 bcm_loop_range_group_get( 56467 int unit, 56468 bcm_range_group_config_t * range_group_config) 56469 { 56470 return bcm_range_group_get( 56471 BCM_CONTROL(unit)->unit, 56472 range_group_config); 56473 } 56474 56475 int 56476 bcm_loop_range_group_update( 56477 int unit, 56478 bcm_range_group_config_t * range_group_config) 56479 { 56480 return bcm_range_group_update( 56481 BCM_CONTROL(unit)->unit, 56482 range_group_config); 56483 } 56484 56485 int 56486 bcm_loop_range_oper_mode_get( 56487 int unit, 56488 bcm_range_oper_mode_t * oper_mode) 56489 { 56490 return bcm_range_oper_mode_get( 56491 BCM_CONTROL(unit)->unit, 56492 oper_mode); 56493 } 56494 56495 int 56496 bcm_loop_range_oper_mode_set( 56497 int unit, 56498 bcm_range_oper_mode_t oper_mode) 56499 { 56500 return bcm_range_oper_mode_set( 56501 BCM_CONTROL(unit)->unit, 56502 oper_mode); 56503 } 56504 56505 int 56506 bcm_loop_range_traverse( 56507 int unit, 56508 bcm_range_traverse_cb callback, 56509 void * user_data) 56510 { 56511 return bcm_range_traverse( 56512 BCM_CONTROL(unit)->unit, 56513 callback, 56514 user_data); 56515 } 56516 56517 int 56518 bcm_loop_rate_bandwidth_get( 56519 int unit, 56520 bcm_port_t port, 56521 int flags, 56522 uint32 * kbits_sec, 56523 uint32 * kbits_burst) 56524 { 56525 return bcm_rate_bandwidth_get( 56526 BCM_CONTROL(unit)->unit, 56527 port, 56528 flags, 56529 kbits_sec, 56530 kbits_burst); 56531 } 56532 56533 int 56534 bcm_loop_rate_bandwidth_set( 56535 int unit, 56536 bcm_port_t port, 56537 int flags, 56538 uint32 kbits_sec, 56539 uint32 kbits_burst) 56540 { 56541 return bcm_rate_bandwidth_set( 56542 BCM_CONTROL(unit)->unit, 56543 port, 56544 flags, 56545 kbits_sec, 56546 kbits_burst); 56547 } 56548 56549 int 56550 bcm_loop_rate_bcast_get( 56551 int unit, 56552 int * pps, 56553 int * flags, 56554 int port) 56555 { 56556 return bcm_rate_bcast_get( 56557 BCM_CONTROL(unit)->unit, 56558 pps, 56559 flags, 56560 port); 56561 } 56562 56563 int 56564 bcm_loop_rate_bcast_set( 56565 int unit, 56566 int pps, 56567 int flags, 56568 int port) 56569 { 56570 return bcm_rate_bcast_set( 56571 BCM_CONTROL(unit)->unit, 56572 pps, 56573 flags, 56574 port); 56575 } 56576 56577 int 56578 bcm_loop_rate_dlfbc_get( 56579 int unit, 56580 int * pps, 56581 int * flags, 56582 int port) 56583 { 56584 return bcm_rate_dlfbc_get( 56585 BCM_CONTROL(unit)->unit, 56586 pps, 56587 flags, 56588 port); 56589 } 56590 56591 int 56592 bcm_loop_rate_dlfbc_set( 56593 int unit, 56594 int pps, 56595 int flags, 56596 int port) 56597 { 56598 return bcm_rate_dlfbc_set( 56599 BCM_CONTROL(unit)->unit, 56600 pps, 56601 flags, 56602 port); 56603 } 56604 56605 int 56606 bcm_loop_rate_get( 56607 int unit, 56608 int * pps, 56609 int * flags) 56610 { 56611 return bcm_rate_get( 56612 BCM_CONTROL(unit)->unit, 56613 pps, 56614 flags); 56615 } 56616 56617 /* bcm_rate_limit_t_init not dispatchable */ 56618 56619 int 56620 bcm_loop_rate_mcast_get( 56621 int unit, 56622 int * pps, 56623 int * flags, 56624 int port) 56625 { 56626 return bcm_rate_mcast_get( 56627 BCM_CONTROL(unit)->unit, 56628 pps, 56629 flags, 56630 port); 56631 } 56632 56633 int 56634 bcm_loop_rate_mcast_set( 56635 int unit, 56636 int pps, 56637 int flags, 56638 int port) 56639 { 56640 return bcm_rate_mcast_set( 56641 BCM_CONTROL(unit)->unit, 56642 pps, 56643 flags, 56644 port); 56645 } 56646 56647 int 56648 bcm_loop_rate_packet_get( 56649 int unit, 56650 bcm_port_t port, 56651 bcm_rate_packet_t * pkt_rate) 56652 { 56653 return bcm_rate_packet_get( 56654 BCM_CONTROL(unit)->unit, 56655 port, 56656 pkt_rate); 56657 } 56658 56659 int 56660 bcm_loop_rate_packet_set( 56661 int unit, 56662 bcm_port_t port, 56663 bcm_rate_packet_t * pkt_rate) 56664 { 56665 return bcm_rate_packet_set( 56666 BCM_CONTROL(unit)->unit, 56667 port, 56668 pkt_rate); 56669 } 56670 56671 /* bcm_rate_packet_t_init not dispatchable */ 56672 56673 int 56674 bcm_loop_rate_set( 56675 int unit, 56676 int pps, 56677 int flags) 56678 { 56679 return bcm_rate_set( 56680 BCM_CONTROL(unit)->unit, 56681 pps, 56682 flags); 56683 } 56684 56685 int 56686 bcm_loop_rate_type_get( 56687 int unit, 56688 bcm_rate_limit_t * rl) 56689 { 56690 return bcm_rate_type_get( 56691 BCM_CONTROL(unit)->unit, 56692 rl); 56693 } 56694 56695 int 56696 bcm_loop_rate_type_set( 56697 int unit, 56698 bcm_rate_limit_t * rl) 56699 { 56700 return bcm_rate_type_set( 56701 BCM_CONTROL(unit)->unit, 56702 rl); 56703 } 56704 56705 #ifdef INCLUDE_REGEX 56706 56707 int 56708 bcm_loop_regex_config_get( 56709 int unit, 56710 bcm_regex_config_t * config) 56711 { 56712 return bcm_regex_config_get( 56713 BCM_CONTROL(unit)->unit, 56714 config); 56715 } 56716 56717 int 56718 bcm_loop_regex_config_set( 56719 int unit, 56720 bcm_regex_config_t * config) 56721 { 56722 return bcm_regex_config_set( 56723 BCM_CONTROL(unit)->unit, 56724 config); 56725 } 56726 56727 /* bcm_regex_config_t_init not dispatchable */ 56728 56729 /* bcm_regex_engine_config_t_init not dispatchable */ 56730 56731 int 56732 bcm_loop_regex_engine_create( 56733 int unit, 56734 bcm_regex_engine_config_t * config, 56735 bcm_regex_engine_t * engid) 56736 { 56737 return bcm_regex_engine_create( 56738 BCM_CONTROL(unit)->unit, 56739 config, 56740 engid); 56741 } 56742 56743 int 56744 bcm_loop_regex_engine_destroy( 56745 int unit, 56746 bcm_regex_engine_t engid) 56747 { 56748 return bcm_regex_engine_destroy( 56749 BCM_CONTROL(unit)->unit, 56750 engid); 56751 } 56752 56753 int 56754 bcm_loop_regex_engine_get( 56755 int unit, 56756 bcm_regex_engine_t engid, 56757 bcm_regex_engine_config_t * config) 56758 { 56759 return bcm_regex_engine_get( 56760 BCM_CONTROL(unit)->unit, 56761 engid, 56762 config); 56763 } 56764 56765 int 56766 bcm_loop_regex_engine_info_get( 56767 int unit, 56768 int engine_id, 56769 bcm_regex_engine_info_t * regex_engine_info) 56770 { 56771 return bcm_regex_engine_info_get( 56772 BCM_CONTROL(unit)->unit, 56773 engine_id, 56774 regex_engine_info); 56775 } 56776 56777 int 56778 bcm_loop_regex_engine_traverse( 56779 int unit, 56780 bcm_regex_engine_traverse_cb cb, 56781 void * user_data) 56782 { 56783 return bcm_regex_engine_traverse( 56784 BCM_CONTROL(unit)->unit, 56785 cb, 56786 user_data); 56787 } 56788 56789 int 56790 bcm_loop_regex_exclude_add( 56791 int unit, 56792 uint8 protocol, 56793 uint16 l4_start, 56794 uint16 l4_end) 56795 { 56796 return bcm_regex_exclude_add( 56797 BCM_CONTROL(unit)->unit, 56798 protocol, 56799 l4_start, 56800 l4_end); 56801 } 56802 56803 int 56804 bcm_loop_regex_exclude_delete( 56805 int unit, 56806 uint8 protocol, 56807 uint16 l4_start, 56808 uint16 l4_end) 56809 { 56810 return bcm_regex_exclude_delete( 56811 BCM_CONTROL(unit)->unit, 56812 protocol, 56813 l4_start, 56814 l4_end); 56815 } 56816 56817 int 56818 bcm_loop_regex_exclude_delete_all( 56819 int unit) 56820 { 56821 return bcm_regex_exclude_delete_all( 56822 BCM_CONTROL(unit)->unit); 56823 } 56824 56825 int 56826 bcm_loop_regex_exclude_get( 56827 int unit, 56828 int array_size, 56829 uint8 * protocol, 56830 uint16 * l4low, 56831 uint16 * l4high, 56832 int * array_count) 56833 { 56834 return bcm_regex_exclude_get( 56835 BCM_CONTROL(unit)->unit, 56836 array_size, 56837 protocol, 56838 l4low, 56839 l4high, 56840 array_count); 56841 } 56842 56843 int 56844 bcm_loop_regex_get_match_id( 56845 int unit, 56846 int signature_id, 56847 int * match_id) 56848 { 56849 return bcm_regex_get_match_id( 56850 BCM_CONTROL(unit)->unit, 56851 signature_id, 56852 match_id); 56853 } 56854 56855 int 56856 bcm_loop_regex_get_sig_id( 56857 int unit, 56858 int match_id, 56859 int * signature_id) 56860 { 56861 return bcm_regex_get_sig_id( 56862 BCM_CONTROL(unit)->unit, 56863 match_id, 56864 signature_id); 56865 } 56866 56867 int 56868 bcm_loop_regex_info_get( 56869 int unit, 56870 bcm_regex_info_t * regex_info) 56871 { 56872 return bcm_regex_info_get( 56873 BCM_CONTROL(unit)->unit, 56874 regex_info); 56875 } 56876 56877 int 56878 bcm_loop_regex_init( 56879 int unit) 56880 { 56881 return bcm_regex_init( 56882 BCM_CONTROL(unit)->unit); 56883 } 56884 56885 int 56886 bcm_loop_regex_match_check( 56887 int unit, 56888 bcm_regex_match_t * matches, 56889 int count, 56890 int * metric) 56891 { 56892 return bcm_regex_match_check( 56893 BCM_CONTROL(unit)->unit, 56894 matches, 56895 count, 56896 metric); 56897 } 56898 56899 int 56900 bcm_loop_regex_match_set( 56901 int unit, 56902 bcm_regex_engine_t engid, 56903 bcm_regex_match_t * matches, 56904 int count) 56905 { 56906 return bcm_regex_match_set( 56907 BCM_CONTROL(unit)->unit, 56908 engid, 56909 matches, 56910 count); 56911 } 56912 56913 /* bcm_regex_match_t_init not dispatchable */ 56914 56915 int 56916 bcm_loop_regex_policy_action_add( 56917 int unit, 56918 bcm_regex_policy_t policy, 56919 bcm_field_action_t action, 56920 uint32 param0, 56921 uint32 param1) 56922 { 56923 return bcm_regex_policy_action_add( 56924 BCM_CONTROL(unit)->unit, 56925 policy, 56926 action, 56927 param0, 56928 param1); 56929 } 56930 56931 int 56932 bcm_loop_regex_policy_action_delete( 56933 int unit, 56934 bcm_regex_policy_t policy, 56935 bcm_field_action_t action, 56936 uint32 param0, 56937 uint32 param1) 56938 { 56939 return bcm_regex_policy_action_delete( 56940 BCM_CONTROL(unit)->unit, 56941 policy, 56942 action, 56943 param0, 56944 param1); 56945 } 56946 56947 int 56948 bcm_loop_regex_policy_action_get( 56949 int unit, 56950 bcm_regex_policy_t policy, 56951 bcm_field_action_t action, 56952 uint32 * param0, 56953 uint32 * param1) 56954 { 56955 return bcm_regex_policy_action_get( 56956 BCM_CONTROL(unit)->unit, 56957 policy, 56958 action, 56959 param0, 56960 param1); 56961 } 56962 56963 int 56964 bcm_loop_regex_policy_action_mac_add( 56965 int unit, 56966 bcm_regex_policy_t policy, 56967 bcm_field_action_t action, 56968 bcm_mac_t mac) 56969 { 56970 return bcm_regex_policy_action_mac_add( 56971 BCM_CONTROL(unit)->unit, 56972 policy, 56973 action, 56974 mac); 56975 } 56976 56977 int 56978 bcm_loop_regex_policy_action_mac_get( 56979 int unit, 56980 bcm_regex_policy_t policy, 56981 bcm_field_action_t action, 56982 bcm_mac_t * mac) 56983 { 56984 return bcm_regex_policy_action_mac_get( 56985 BCM_CONTROL(unit)->unit, 56986 policy, 56987 action, 56988 mac); 56989 } 56990 56991 int 56992 bcm_loop_regex_policy_action_ports_add( 56993 int unit, 56994 bcm_regex_policy_t policy, 56995 bcm_field_action_t action, 56996 bcm_pbmp_t pbmp) 56997 { 56998 return bcm_regex_policy_action_ports_add( 56999 BCM_CONTROL(unit)->unit, 57000 policy, 57001 action, 57002 pbmp); 57003 } 57004 57005 int 57006 bcm_loop_regex_policy_action_ports_get( 57007 int unit, 57008 bcm_regex_policy_t policy, 57009 bcm_field_action_t action, 57010 bcm_pbmp_t * pbmp) 57011 { 57012 return bcm_regex_policy_action_ports_get( 57013 BCM_CONTROL(unit)->unit, 57014 policy, 57015 action, 57016 pbmp); 57017 } 57018 57019 int 57020 bcm_loop_regex_policy_action_remove( 57021 int unit, 57022 bcm_regex_policy_t policy, 57023 bcm_field_action_t action) 57024 { 57025 return bcm_regex_policy_action_remove( 57026 BCM_CONTROL(unit)->unit, 57027 policy, 57028 action); 57029 } 57030 57031 int 57032 bcm_loop_regex_policy_action_remove_all( 57033 int unit, 57034 bcm_regex_policy_t policy) 57035 { 57036 return bcm_regex_policy_action_remove_all( 57037 BCM_CONTROL(unit)->unit, 57038 policy); 57039 } 57040 57041 int 57042 bcm_loop_regex_policy_create( 57043 int unit, 57044 int flags, 57045 bcm_regex_policy_t * policy) 57046 { 57047 return bcm_regex_policy_create( 57048 BCM_CONTROL(unit)->unit, 57049 flags, 57050 policy); 57051 } 57052 57053 int 57054 bcm_loop_regex_policy_destroy( 57055 int unit, 57056 bcm_regex_policy_t policy) 57057 { 57058 return bcm_regex_policy_destroy( 57059 BCM_CONTROL(unit)->unit, 57060 policy); 57061 } 57062 57063 int 57064 bcm_loop_regex_policy_destroy_all( 57065 int unit) 57066 { 57067 return bcm_regex_policy_destroy_all( 57068 BCM_CONTROL(unit)->unit); 57069 } 57070 57071 int 57072 bcm_loop_regex_policy_install( 57073 int unit, 57074 bcm_regex_policy_t policy) 57075 { 57076 return bcm_regex_policy_install( 57077 BCM_CONTROL(unit)->unit, 57078 policy); 57079 } 57080 57081 int 57082 bcm_loop_regex_policy_policer_attach( 57083 int unit, 57084 bcm_regex_policy_t policy, 57085 int level, 57086 bcm_policer_t policer_id) 57087 { 57088 return bcm_regex_policy_policer_attach( 57089 BCM_CONTROL(unit)->unit, 57090 policy, 57091 level, 57092 policer_id); 57093 } 57094 57095 int 57096 bcm_loop_regex_policy_policer_detach( 57097 int unit, 57098 bcm_regex_policy_t policy, 57099 int level) 57100 { 57101 return bcm_regex_policy_policer_detach( 57102 BCM_CONTROL(unit)->unit, 57103 policy, 57104 level); 57105 } 57106 57107 int 57108 bcm_loop_regex_policy_policer_detach_all( 57109 int unit, 57110 bcm_regex_policy_t policy) 57111 { 57112 return bcm_regex_policy_policer_detach_all( 57113 BCM_CONTROL(unit)->unit, 57114 policy); 57115 } 57116 57117 int 57118 bcm_loop_regex_policy_policer_get( 57119 int unit, 57120 bcm_regex_policy_t policy, 57121 int level, 57122 bcm_policer_t * policer_id) 57123 { 57124 return bcm_regex_policy_policer_get( 57125 BCM_CONTROL(unit)->unit, 57126 policy, 57127 level, 57128 policer_id); 57129 } 57130 57131 int 57132 bcm_loop_regex_policy_remove( 57133 int unit, 57134 bcm_regex_policy_t policy) 57135 { 57136 return bcm_regex_policy_remove( 57137 BCM_CONTROL(unit)->unit, 57138 policy); 57139 } 57140 57141 int 57142 bcm_loop_regex_policy_stat_attach( 57143 int unit, 57144 bcm_regex_policy_t policy, 57145 int stat_id) 57146 { 57147 return bcm_regex_policy_stat_attach( 57148 BCM_CONTROL(unit)->unit, 57149 policy, 57150 stat_id); 57151 } 57152 57153 int 57154 bcm_loop_regex_policy_stat_detach( 57155 int unit, 57156 bcm_regex_policy_t policy, 57157 int stat_id) 57158 { 57159 return bcm_regex_policy_stat_detach( 57160 BCM_CONTROL(unit)->unit, 57161 policy, 57162 stat_id); 57163 } 57164 57165 int 57166 bcm_loop_regex_policy_stat_get( 57167 int unit, 57168 bcm_regex_policy_t policy, 57169 int * stat_id) 57170 { 57171 return bcm_regex_policy_stat_get( 57172 BCM_CONTROL(unit)->unit, 57173 policy, 57174 stat_id); 57175 } 57176 57177 int 57178 bcm_loop_regex_report_register( 57179 int unit, 57180 uint32 reports, 57181 bcm_regex_report_cb callback, 57182 void * user_data) 57183 { 57184 return bcm_regex_report_register( 57185 BCM_CONTROL(unit)->unit, 57186 reports, 57187 callback, 57188 user_data); 57189 } 57190 57191 /* bcm_regex_report_t_init not dispatchable */ 57192 57193 int 57194 bcm_loop_regex_report_unregister( 57195 int unit, 57196 uint32 reports, 57197 bcm_regex_report_cb callback, 57198 void * user_data) 57199 { 57200 return bcm_regex_report_unregister( 57201 BCM_CONTROL(unit)->unit, 57202 reports, 57203 callback, 57204 user_data); 57205 } 57206 57207 int 57208 bcm_loop_regex_session_add( 57209 int unit, 57210 int flags, 57211 bcm_regex_session_key_t * key, 57212 bcm_regex_session_t * session) 57213 { 57214 return bcm_regex_session_add( 57215 BCM_CONTROL(unit)->unit, 57216 flags, 57217 key, 57218 session); 57219 } 57220 57221 int 57222 bcm_loop_regex_session_delete( 57223 int unit, 57224 bcm_regex_session_key_t * key) 57225 { 57226 return bcm_regex_session_delete( 57227 BCM_CONTROL(unit)->unit, 57228 key); 57229 } 57230 57231 int 57232 bcm_loop_regex_session_delete_all( 57233 int unit) 57234 { 57235 return bcm_regex_session_delete_all( 57236 BCM_CONTROL(unit)->unit); 57237 } 57238 57239 int 57240 bcm_loop_regex_session_get( 57241 int unit, 57242 int flags, 57243 bcm_regex_session_key_t * key, 57244 bcm_regex_session_t * session) 57245 { 57246 return bcm_regex_session_get( 57247 BCM_CONTROL(unit)->unit, 57248 flags, 57249 key, 57250 session); 57251 } 57252 57253 /* bcm_regex_session_key_t_init not dispatchable */ 57254 57255 int 57256 bcm_loop_regex_session_policy_update( 57257 int unit, 57258 int flags, 57259 int flow_index, 57260 bcm_regex_policy_t policy) 57261 { 57262 return bcm_regex_session_policy_update( 57263 BCM_CONTROL(unit)->unit, 57264 flags, 57265 flow_index, 57266 policy); 57267 } 57268 57269 /* bcm_regex_session_t_init not dispatchable */ 57270 57271 int 57272 bcm_loop_regex_session_traverse( 57273 int unit, 57274 int flags, 57275 bcm_regex_session_traverse_cb cb, 57276 void * user_data) 57277 { 57278 return bcm_regex_session_traverse( 57279 BCM_CONTROL(unit)->unit, 57280 flags, 57281 cb, 57282 user_data); 57283 } 57284 57285 int 57286 bcm_loop_regex_stat_create( 57287 int unit, 57288 int flags, 57289 int nstat, 57290 bcm_field_stat_t * stat_arr, 57291 int * stat_id) 57292 { 57293 return bcm_regex_stat_create( 57294 BCM_CONTROL(unit)->unit, 57295 flags, 57296 nstat, 57297 stat_arr, 57298 stat_id); 57299 } 57300 57301 int 57302 bcm_loop_regex_stat_destroy( 57303 int unit, 57304 int stat_id) 57305 { 57306 return bcm_regex_stat_destroy( 57307 BCM_CONTROL(unit)->unit, 57308 stat_id); 57309 } 57310 57311 int 57312 bcm_loop_regex_stat_get( 57313 int unit, 57314 bcm_regex_stat_t type, 57315 uint64 * val) 57316 { 57317 return bcm_regex_stat_get( 57318 BCM_CONTROL(unit)->unit, 57319 type, 57320 val); 57321 } 57322 57323 int 57324 bcm_loop_regex_stat_set( 57325 int unit, 57326 bcm_regex_stat_t type, 57327 uint64 val) 57328 { 57329 return bcm_regex_stat_set( 57330 BCM_CONTROL(unit)->unit, 57331 type, 57332 val); 57333 } 57334 57335 #endif /* INCLUDE_REGEX */ 57336 57337 int 57338 bcm_loop_rx_CopyToCpu_config_add( 57339 int unit, 57340 uint32 options, 57341 bcm_rx_CopyToCpu_config_t * copyToCpu_config) 57342 { 57343 return bcm_rx_CopyToCpu_config_add( 57344 BCM_CONTROL(unit)->unit, 57345 options, 57346 copyToCpu_config); 57347 } 57348 57349 int 57350 bcm_loop_rx_CopyToCpu_config_delete( 57351 int unit, 57352 int index) 57353 { 57354 return bcm_rx_CopyToCpu_config_delete( 57355 BCM_CONTROL(unit)->unit, 57356 index); 57357 } 57358 57359 int 57360 bcm_loop_rx_CopyToCpu_config_delete_all( 57361 int unit) 57362 { 57363 return bcm_rx_CopyToCpu_config_delete_all( 57364 BCM_CONTROL(unit)->unit); 57365 } 57366 57367 int 57368 bcm_loop_rx_CopyToCpu_config_get( 57369 int unit, 57370 int index, 57371 bcm_rx_CopyToCpu_config_t * copyToCpu_config) 57372 { 57373 return bcm_rx_CopyToCpu_config_get( 57374 BCM_CONTROL(unit)->unit, 57375 index, 57376 copyToCpu_config); 57377 } 57378 57379 int 57380 bcm_loop_rx_CopyToCpu_config_get_all( 57381 int unit, 57382 int entries_max, 57383 bcm_rx_CopyToCpu_config_t * copyToCpu_config, 57384 int * entries_count) 57385 { 57386 return bcm_rx_CopyToCpu_config_get_all( 57387 BCM_CONTROL(unit)->unit, 57388 entries_max, 57389 copyToCpu_config, 57390 entries_count); 57391 } 57392 57393 /* bcm_rx_CopyToCpu_config_t_init not dispatchable */ 57394 57395 int 57396 bcm_loop_rx_active( 57397 int unit) 57398 { 57399 return bcm_rx_active( 57400 BCM_CONTROL(unit)->unit); 57401 } 57402 57403 int 57404 bcm_loop_rx_alloc( 57405 int unit, 57406 int pkt_size, 57407 uint32 flags, 57408 void ** buf) 57409 { 57410 return bcm_rx_alloc( 57411 BCM_CONTROL(unit)->unit, 57412 pkt_size, 57413 flags, 57414 buf); 57415 } 57416 57417 int 57418 bcm_loop_rx_burst_get( 57419 int unit, 57420 int * burst) 57421 { 57422 return bcm_rx_burst_get( 57423 BCM_CONTROL(unit)->unit, 57424 burst); 57425 } 57426 57427 int 57428 bcm_loop_rx_burst_set( 57429 int unit, 57430 int burst) 57431 { 57432 return bcm_rx_burst_set( 57433 BCM_CONTROL(unit)->unit, 57434 burst); 57435 } 57436 57437 int 57438 bcm_loop_rx_cfg_get( 57439 int unit, 57440 bcm_rx_cfg_t * cfg) 57441 { 57442 return bcm_rx_cfg_get( 57443 BCM_CONTROL(unit)->unit, 57444 cfg); 57445 } 57446 57447 int 57448 bcm_loop_rx_cfg_init( 57449 int unit) 57450 { 57451 return bcm_rx_cfg_init( 57452 BCM_CONTROL(unit)->unit); 57453 } 57454 57455 /* bcm_rx_cfg_t_init not dispatchable */ 57456 57457 int 57458 bcm_loop_rx_channels_running( 57459 int unit, 57460 uint32 * channels) 57461 { 57462 return bcm_rx_channels_running( 57463 BCM_CONTROL(unit)->unit, 57464 channels); 57465 } 57466 57467 int 57468 bcm_loop_rx_clear( 57469 int unit) 57470 { 57471 return bcm_rx_clear( 57472 BCM_CONTROL(unit)->unit); 57473 } 57474 57475 int 57476 bcm_loop_rx_control_get( 57477 int unit, 57478 bcm_rx_control_t type, 57479 int * arg) 57480 { 57481 return bcm_rx_control_get( 57482 BCM_CONTROL(unit)->unit, 57483 type, 57484 arg); 57485 } 57486 57487 int 57488 bcm_loop_rx_control_set( 57489 int unit, 57490 bcm_rx_control_t type, 57491 int arg) 57492 { 57493 return bcm_rx_control_set( 57494 BCM_CONTROL(unit)->unit, 57495 type, 57496 arg); 57497 } 57498 57499 int 57500 bcm_loop_rx_cos_burst_get( 57501 int unit, 57502 int cos, 57503 int * burst) 57504 { 57505 return bcm_rx_cos_burst_get( 57506 BCM_CONTROL(unit)->unit, 57507 cos, 57508 burst); 57509 } 57510 57511 int 57512 bcm_loop_rx_cos_burst_set( 57513 int unit, 57514 int cos, 57515 int burst) 57516 { 57517 return bcm_rx_cos_burst_set( 57518 BCM_CONTROL(unit)->unit, 57519 cos, 57520 burst); 57521 } 57522 57523 int 57524 bcm_loop_rx_cos_max_len_get( 57525 int unit, 57526 int cos, 57527 int * max_q_len) 57528 { 57529 return bcm_rx_cos_max_len_get( 57530 BCM_CONTROL(unit)->unit, 57531 cos, 57532 max_q_len); 57533 } 57534 57535 int 57536 bcm_loop_rx_cos_max_len_set( 57537 int unit, 57538 int cos, 57539 int max_q_len) 57540 { 57541 return bcm_rx_cos_max_len_set( 57542 BCM_CONTROL(unit)->unit, 57543 cos, 57544 max_q_len); 57545 } 57546 57547 int 57548 bcm_loop_rx_cos_rate_get( 57549 int unit, 57550 int cos, 57551 int * pps) 57552 { 57553 return bcm_rx_cos_rate_get( 57554 BCM_CONTROL(unit)->unit, 57555 cos, 57556 pps); 57557 } 57558 57559 int 57560 bcm_loop_rx_cos_rate_set( 57561 int unit, 57562 int cos, 57563 int pps) 57564 { 57565 return bcm_rx_cos_rate_set( 57566 BCM_CONTROL(unit)->unit, 57567 cos, 57568 pps); 57569 } 57570 57571 int 57572 bcm_loop_rx_cosq_mapping_delete( 57573 int unit, 57574 int index) 57575 { 57576 return bcm_rx_cosq_mapping_delete( 57577 BCM_CONTROL(unit)->unit, 57578 index); 57579 } 57580 57581 int 57582 bcm_loop_rx_cosq_mapping_extended_get( 57583 int unit, 57584 bcm_rx_cosq_mapping_t * rx_cosq_mapping) 57585 { 57586 return bcm_rx_cosq_mapping_extended_get( 57587 BCM_CONTROL(unit)->unit, 57588 rx_cosq_mapping); 57589 } 57590 57591 int 57592 bcm_loop_rx_cosq_mapping_extended_set( 57593 int unit, 57594 uint32 options, 57595 bcm_rx_cosq_mapping_t * rx_cosq_mapping) 57596 { 57597 return bcm_rx_cosq_mapping_extended_set( 57598 BCM_CONTROL(unit)->unit, 57599 options, 57600 rx_cosq_mapping); 57601 } 57602 57603 int 57604 bcm_loop_rx_cosq_mapping_get( 57605 int unit, 57606 int index, 57607 bcm_rx_reasons_t * reasons, 57608 bcm_rx_reasons_t * reasons_mask, 57609 uint8 * int_prio, 57610 uint8 * int_prio_mask, 57611 uint32 * packet_type, 57612 uint32 * packet_type_mask, 57613 bcm_cos_queue_t * cosq) 57614 { 57615 return bcm_rx_cosq_mapping_get( 57616 BCM_CONTROL(unit)->unit, 57617 index, 57618 reasons, 57619 reasons_mask, 57620 int_prio, 57621 int_prio_mask, 57622 packet_type, 57623 packet_type_mask, 57624 cosq); 57625 } 57626 57627 int 57628 bcm_loop_rx_cosq_mapping_reasons_get( 57629 int unit, 57630 bcm_rx_reasons_t * reasons) 57631 { 57632 return bcm_rx_cosq_mapping_reasons_get( 57633 BCM_CONTROL(unit)->unit, 57634 reasons); 57635 } 57636 57637 int 57638 bcm_loop_rx_cosq_mapping_set( 57639 int unit, 57640 int index, 57641 bcm_rx_reasons_t reasons, 57642 bcm_rx_reasons_t reasons_mask, 57643 uint8 int_prio, 57644 uint8 int_prio_mask, 57645 uint32 packet_type, 57646 uint32 packet_type_mask, 57647 bcm_cos_queue_t cosq) 57648 { 57649 return bcm_rx_cosq_mapping_set( 57650 BCM_CONTROL(unit)->unit, 57651 index, 57652 reasons, 57653 reasons_mask, 57654 int_prio, 57655 int_prio_mask, 57656 packet_type, 57657 packet_type_mask, 57658 cosq); 57659 } 57660 57661 int 57662 bcm_loop_rx_cosq_mapping_size_get( 57663 int unit, 57664 int * size) 57665 { 57666 return bcm_rx_cosq_mapping_size_get( 57667 BCM_CONTROL(unit)->unit, 57668 size); 57669 } 57670 57671 /* bcm_rx_cosq_mapping_t_init not dispatchable */ 57672 57673 int 57674 bcm_loop_rx_cpu_rate_get( 57675 int unit, 57676 int * pps) 57677 { 57678 return bcm_rx_cpu_rate_get( 57679 BCM_CONTROL(unit)->unit, 57680 pps); 57681 } 57682 57683 int 57684 bcm_loop_rx_cpu_rate_set( 57685 int unit, 57686 int pps) 57687 { 57688 return bcm_rx_cpu_rate_set( 57689 BCM_CONTROL(unit)->unit, 57690 pps); 57691 } 57692 57693 int 57694 bcm_loop_rx_free( 57695 int unit, 57696 void * pkt_data) 57697 { 57698 return bcm_rx_free( 57699 BCM_CONTROL(unit)->unit, 57700 pkt_data); 57701 } 57702 57703 int 57704 bcm_loop_rx_free_enqueue( 57705 int unit, 57706 void * pkt_data) 57707 { 57708 return bcm_rx_free_enqueue( 57709 BCM_CONTROL(unit)->unit, 57710 pkt_data); 57711 } 57712 57713 int 57714 bcm_loop_rx_init( 57715 int unit) 57716 { 57717 return bcm_rx_init( 57718 BCM_CONTROL(unit)->unit); 57719 } 57720 57721 /* bcm_rx_mtu_config_t_init not dispatchable */ 57722 57723 int 57724 bcm_loop_rx_mtu_get( 57725 int unit, 57726 bcm_rx_mtu_config_t * config) 57727 { 57728 return bcm_rx_mtu_get( 57729 BCM_CONTROL(unit)->unit, 57730 config); 57731 } 57732 57733 int 57734 bcm_loop_rx_mtu_profile_get( 57735 int unit, 57736 uint32 flags, 57737 bcm_rx_mtu_profile_key_t * mtu_key, 57738 bcm_rx_mtu_profile_value_t * mtu_value) 57739 { 57740 return bcm_rx_mtu_profile_get( 57741 BCM_CONTROL(unit)->unit, 57742 flags, 57743 mtu_key, 57744 mtu_value); 57745 } 57746 57747 /* bcm_rx_mtu_profile_key_t_init not dispatchable */ 57748 57749 int 57750 bcm_loop_rx_mtu_profile_set( 57751 int unit, 57752 uint32 flags, 57753 bcm_rx_mtu_profile_key_t * mtu_key, 57754 bcm_rx_mtu_profile_value_t * mtu_value) 57755 { 57756 return bcm_rx_mtu_profile_set( 57757 BCM_CONTROL(unit)->unit, 57758 flags, 57759 mtu_key, 57760 mtu_value); 57761 } 57762 57763 /* bcm_rx_mtu_profile_value_t_init not dispatchable */ 57764 57765 int 57766 bcm_loop_rx_mtu_set( 57767 int unit, 57768 bcm_rx_mtu_config_t * config) 57769 { 57770 return bcm_rx_mtu_set( 57771 BCM_CONTROL(unit)->unit, 57772 config); 57773 } 57774 57775 /* bcm_rx_pool_alloc not dispatchable */ 57776 57777 /* bcm_rx_pool_cleanup not dispatchable */ 57778 57779 /* bcm_rx_pool_dump not dispatchable */ 57780 57781 /* bcm_rx_pool_free not dispatchable */ 57782 57783 /* bcm_rx_pool_free_verify not dispatchable */ 57784 57785 /* bcm_rx_pool_own not dispatchable */ 57786 57787 /* bcm_rx_pool_report not dispatchable */ 57788 57789 /* bcm_rx_pool_setup not dispatchable */ 57790 57791 /* bcm_rx_pool_setup_done not dispatchable */ 57792 57793 int 57794 bcm_loop_rx_queue_channel_get( 57795 int unit, 57796 bcm_cos_queue_t queue_id, 57797 bcm_rx_chan_t * chan_id) 57798 { 57799 return bcm_rx_queue_channel_get( 57800 BCM_CONTROL(unit)->unit, 57801 queue_id, 57802 chan_id); 57803 } 57804 57805 int 57806 bcm_loop_rx_queue_channel_set( 57807 int unit, 57808 bcm_cos_queue_t queue_id, 57809 bcm_rx_chan_t chan_id) 57810 { 57811 return bcm_rx_queue_channel_set( 57812 BCM_CONTROL(unit)->unit, 57813 queue_id, 57814 chan_id); 57815 } 57816 57817 int 57818 bcm_loop_rx_queue_max_get( 57819 int unit, 57820 bcm_cos_queue_t * cosq) 57821 { 57822 return bcm_rx_queue_max_get( 57823 BCM_CONTROL(unit)->unit, 57824 cosq); 57825 } 57826 57827 int 57828 bcm_loop_rx_queue_packet_count_get( 57829 int unit, 57830 bcm_cos_queue_t cosq, 57831 int * packet_count) 57832 { 57833 return bcm_rx_queue_packet_count_get( 57834 BCM_CONTROL(unit)->unit, 57835 cosq, 57836 packet_count); 57837 } 57838 57839 int 57840 bcm_loop_rx_queue_rate_limit_status_get( 57841 int unit, 57842 bcm_cos_queue_t cosq, 57843 int * packet_tokens) 57844 { 57845 return bcm_rx_queue_rate_limit_status_get( 57846 BCM_CONTROL(unit)->unit, 57847 cosq, 57848 packet_tokens); 57849 } 57850 57851 int 57852 bcm_loop_rx_queue_register( 57853 int unit, 57854 const char * name, 57855 bcm_cos_queue_t cosq, 57856 bcm_rx_cb_f callback, 57857 uint8 priority, 57858 void * cookie, 57859 uint32 flags) 57860 { 57861 return bcm_rx_queue_register( 57862 BCM_CONTROL(unit)->unit, 57863 name, 57864 cosq, 57865 callback, 57866 priority, 57867 cookie, 57868 flags); 57869 } 57870 57871 int 57872 bcm_loop_rx_queue_unregister( 57873 int unit, 57874 bcm_cos_queue_t cosq, 57875 bcm_rx_cb_f callback, 57876 uint8 priority) 57877 { 57878 return bcm_rx_queue_unregister( 57879 BCM_CONTROL(unit)->unit, 57880 cosq, 57881 callback, 57882 priority); 57883 } 57884 57885 int 57886 bcm_loop_rx_rate_get( 57887 int unit, 57888 int * pps) 57889 { 57890 return bcm_rx_rate_get( 57891 BCM_CONTROL(unit)->unit, 57892 pps); 57893 } 57894 57895 int 57896 bcm_loop_rx_rate_set( 57897 int unit, 57898 int pps) 57899 { 57900 return bcm_rx_rate_set( 57901 BCM_CONTROL(unit)->unit, 57902 pps); 57903 } 57904 57905 int 57906 bcm_loop_rx_reasons_get( 57907 int unit, 57908 bcm_rx_reasons_t * reasons) 57909 { 57910 return bcm_rx_reasons_get( 57911 BCM_CONTROL(unit)->unit, 57912 reasons); 57913 } 57914 57915 int 57916 bcm_loop_rx_reasons_policer_set( 57917 int unit, 57918 bcm_rx_reasons_t rx_reasons, 57919 bcm_policer_t polid) 57920 { 57921 return bcm_rx_reasons_policer_set( 57922 BCM_CONTROL(unit)->unit, 57923 rx_reasons, 57924 polid); 57925 } 57926 57927 /* bcm_rx_reasons_t_init not dispatchable */ 57928 57929 int 57930 bcm_loop_rx_redirect_reasons_get( 57931 int unit, 57932 bcm_rx_redirect_t mode, 57933 bcm_rx_reasons_t * reasons) 57934 { 57935 return bcm_rx_redirect_reasons_get( 57936 BCM_CONTROL(unit)->unit, 57937 mode, 57938 reasons); 57939 } 57940 57941 int 57942 bcm_loop_rx_redirect_reasons_set( 57943 int unit, 57944 bcm_rx_redirect_t mode, 57945 bcm_rx_reasons_t reasons) 57946 { 57947 return bcm_rx_redirect_reasons_set( 57948 BCM_CONTROL(unit)->unit, 57949 mode, 57950 reasons); 57951 } 57952 57953 int 57954 bcm_loop_rx_register( 57955 int unit, 57956 const char * name, 57957 bcm_rx_cb_f callback, 57958 uint8 priority, 57959 void * cookie, 57960 uint32 flags) 57961 { 57962 return bcm_rx_register( 57963 BCM_CONTROL(unit)->unit, 57964 name, 57965 callback, 57966 priority, 57967 cookie, 57968 flags); 57969 } 57970 57971 /* bcm_rx_remote_pkt_alloc not dispatchable */ 57972 57973 int 57974 bcm_loop_rx_remote_pkt_enqueue( 57975 int unit, 57976 bcm_pkt_t * pkt) 57977 { 57978 return bcm_rx_remote_pkt_enqueue( 57979 BCM_CONTROL(unit)->unit, 57980 pkt); 57981 } 57982 57983 /* bcm_rx_remote_pkt_free not dispatchable */ 57984 57985 int 57986 bcm_loop_rx_sched_register( 57987 int unit, 57988 bcm_rx_sched_cb sched_cb) 57989 { 57990 return bcm_rx_sched_register( 57991 BCM_CONTROL(unit)->unit, 57992 sched_cb); 57993 } 57994 57995 int 57996 bcm_loop_rx_sched_unregister( 57997 int unit) 57998 { 57999 return bcm_rx_sched_unregister( 58000 BCM_CONTROL(unit)->unit); 58001 } 58002 58003 #ifdef BROADCOM_DEBUG 58004 58005 int 58006 bcm_loop_rx_show( 58007 int unit) 58008 { 58009 return bcm_rx_show( 58010 BCM_CONTROL(unit)->unit); 58011 } 58012 58013 /* bcm_rx_snoop_config_t_init not dispatchable */ 58014 58015 #endif /* BROADCOM_DEBUG */ 58016 58017 int 58018 bcm_loop_rx_snoop_create( 58019 int unit, 58020 int flags, 58021 int * snoop_cmnd) 58022 { 58023 return bcm_rx_snoop_create( 58024 BCM_CONTROL(unit)->unit, 58025 flags, 58026 snoop_cmnd); 58027 } 58028 58029 int 58030 bcm_loop_rx_snoop_destroy( 58031 int unit, 58032 int flags, 58033 int snoop_cmnd) 58034 { 58035 return bcm_rx_snoop_destroy( 58036 BCM_CONTROL(unit)->unit, 58037 flags, 58038 snoop_cmnd); 58039 } 58040 58041 int 58042 bcm_loop_rx_snoop_get( 58043 int unit, 58044 int snoop_cmnd, 58045 bcm_rx_snoop_config_t * config) 58046 { 58047 return bcm_rx_snoop_get( 58048 BCM_CONTROL(unit)->unit, 58049 snoop_cmnd, 58050 config); 58051 } 58052 58053 int 58054 bcm_loop_rx_snoop_set( 58055 int unit, 58056 int snoop_cmnd, 58057 bcm_rx_snoop_config_t * config) 58058 { 58059 return bcm_rx_snoop_set( 58060 BCM_CONTROL(unit)->unit, 58061 snoop_cmnd, 58062 config); 58063 } 58064 58065 int 58066 bcm_loop_rx_start( 58067 int unit, 58068 bcm_rx_cfg_t * cfg) 58069 { 58070 return bcm_rx_start( 58071 BCM_CONTROL(unit)->unit, 58072 cfg); 58073 } 58074 58075 int 58076 bcm_loop_rx_stop( 58077 int unit, 58078 bcm_rx_cfg_t * cfg) 58079 { 58080 return bcm_rx_stop( 58081 BCM_CONTROL(unit)->unit, 58082 cfg); 58083 } 58084 58085 int 58086 bcm_loop_rx_trap_action_profile_clear( 58087 int unit, 58088 bcm_rx_trap_t trap_type) 58089 { 58090 return bcm_rx_trap_action_profile_clear( 58091 BCM_CONTROL(unit)->unit, 58092 trap_type); 58093 } 58094 58095 int 58096 bcm_loop_rx_trap_action_profile_get( 58097 int unit, 58098 bcm_rx_trap_t trap_type, 58099 bcm_gport_t * gport) 58100 { 58101 return bcm_rx_trap_action_profile_get( 58102 BCM_CONTROL(unit)->unit, 58103 trap_type, 58104 gport); 58105 } 58106 58107 int 58108 bcm_loop_rx_trap_action_profile_set( 58109 int unit, 58110 uint32 flags, 58111 bcm_rx_trap_t trap_type, 58112 bcm_gport_t gport) 58113 { 58114 return bcm_rx_trap_action_profile_set( 58115 BCM_CONTROL(unit)->unit, 58116 flags, 58117 trap_type, 58118 gport); 58119 } 58120 58121 /* bcm_rx_trap_config_t_init not dispatchable */ 58122 58123 int 58124 bcm_loop_rx_trap_get( 58125 int unit, 58126 int trap_id, 58127 bcm_rx_trap_config_t * config) 58128 { 58129 return bcm_rx_trap_get( 58130 BCM_CONTROL(unit)->unit, 58131 trap_id, 58132 config); 58133 } 58134 58135 /* bcm_rx_trap_lif_config_t_init not dispatchable */ 58136 58137 int 58138 bcm_loop_rx_trap_lif_get( 58139 int unit, 58140 bcm_rx_trap_lif_config_t * lif_config_p) 58141 { 58142 return bcm_rx_trap_lif_get( 58143 BCM_CONTROL(unit)->unit, 58144 lif_config_p); 58145 } 58146 58147 int 58148 bcm_loop_rx_trap_lif_set( 58149 int unit, 58150 uint32 flags, 58151 bcm_rx_trap_lif_config_t * lif_config_p) 58152 { 58153 return bcm_rx_trap_lif_set( 58154 BCM_CONTROL(unit)->unit, 58155 flags, 58156 lif_config_p); 58157 } 58158 58159 /* bcm_rx_trap_prog_config_t_init not dispatchable */ 58160 58161 int 58162 bcm_loop_rx_trap_prog_get( 58163 int unit, 58164 uint8 prog_index, 58165 bcm_rx_trap_prog_config_t * prog_config_p) 58166 { 58167 return bcm_rx_trap_prog_get( 58168 BCM_CONTROL(unit)->unit, 58169 prog_index, 58170 prog_config_p); 58171 } 58172 58173 int 58174 bcm_loop_rx_trap_prog_set( 58175 int unit, 58176 uint32 flags, 58177 uint8 prog_index, 58178 bcm_rx_trap_prog_config_t * prog_config_p) 58179 { 58180 return bcm_rx_trap_prog_set( 58181 BCM_CONTROL(unit)->unit, 58182 flags, 58183 prog_index, 58184 prog_config_p); 58185 } 58186 58187 int 58188 bcm_loop_rx_trap_protocol_clear( 58189 int unit, 58190 bcm_rx_trap_protocol_key_t * key_p) 58191 { 58192 return bcm_rx_trap_protocol_clear( 58193 BCM_CONTROL(unit)->unit, 58194 key_p); 58195 } 58196 58197 int 58198 bcm_loop_rx_trap_protocol_get( 58199 int unit, 58200 bcm_rx_trap_protocol_key_t * key_p, 58201 bcm_gport_t * trap_gport_p) 58202 { 58203 return bcm_rx_trap_protocol_get( 58204 BCM_CONTROL(unit)->unit, 58205 key_p, 58206 trap_gport_p); 58207 } 58208 58209 /* bcm_rx_trap_protocol_key_t_init not dispatchable */ 58210 58211 int 58212 bcm_loop_rx_trap_protocol_profiles_get( 58213 int unit, 58214 bcm_gport_t port, 58215 bcm_rx_trap_protocol_profiles_t * protocol_profiles_p) 58216 { 58217 return bcm_rx_trap_protocol_profiles_get( 58218 BCM_CONTROL(unit)->unit, 58219 port, 58220 protocol_profiles_p); 58221 } 58222 58223 int 58224 bcm_loop_rx_trap_protocol_profiles_set( 58225 int unit, 58226 bcm_gport_t port, 58227 bcm_rx_trap_protocol_profiles_t * protocol_profiles_p) 58228 { 58229 return bcm_rx_trap_protocol_profiles_set( 58230 BCM_CONTROL(unit)->unit, 58231 port, 58232 protocol_profiles_p); 58233 } 58234 58235 /* bcm_rx_trap_protocol_profiles_t_init not dispatchable */ 58236 58237 int 58238 bcm_loop_rx_trap_protocol_set( 58239 int unit, 58240 bcm_rx_trap_protocol_key_t * key_p, 58241 bcm_gport_t trap_gport) 58242 { 58243 return bcm_rx_trap_protocol_set( 58244 BCM_CONTROL(unit)->unit, 58245 key_p, 58246 trap_gport); 58247 } 58248 58249 int 58250 bcm_loop_rx_trap_set( 58251 int unit, 58252 int trap_id, 58253 bcm_rx_trap_config_t * config) 58254 { 58255 return bcm_rx_trap_set( 58256 BCM_CONTROL(unit)->unit, 58257 trap_id, 58258 config); 58259 } 58260 58261 int 58262 bcm_loop_rx_trap_sw_to_hw_id_map_get( 58263 int unit, 58264 uint32 flags, 58265 int sw_trap_id, 58266 int * hw_trap_id) 58267 { 58268 return bcm_rx_trap_sw_to_hw_id_map_get( 58269 BCM_CONTROL(unit)->unit, 58270 flags, 58271 sw_trap_id, 58272 hw_trap_id); 58273 } 58274 58275 int 58276 bcm_loop_rx_trap_type_create( 58277 int unit, 58278 int flags, 58279 bcm_rx_trap_t type, 58280 int * trap_id) 58281 { 58282 return bcm_rx_trap_type_create( 58283 BCM_CONTROL(unit)->unit, 58284 flags, 58285 type, 58286 trap_id); 58287 } 58288 58289 int 58290 bcm_loop_rx_trap_type_destroy( 58291 int unit, 58292 int trap_id) 58293 { 58294 return bcm_rx_trap_type_destroy( 58295 BCM_CONTROL(unit)->unit, 58296 trap_id); 58297 } 58298 58299 int 58300 bcm_loop_rx_trap_type_from_id_get( 58301 int unit, 58302 int flags, 58303 int trap_id, 58304 bcm_rx_trap_t * trap_type) 58305 { 58306 return bcm_rx_trap_type_from_id_get( 58307 BCM_CONTROL(unit)->unit, 58308 flags, 58309 trap_id, 58310 trap_type); 58311 } 58312 58313 int 58314 bcm_loop_rx_trap_type_get( 58315 int unit, 58316 int flags, 58317 bcm_rx_trap_t type, 58318 int * trap_id) 58319 { 58320 return bcm_rx_trap_type_get( 58321 BCM_CONTROL(unit)->unit, 58322 flags, 58323 type, 58324 trap_id); 58325 } 58326 58327 int 58328 bcm_loop_rx_unit_next_get( 58329 int unit, 58330 int * next_unit) 58331 { 58332 return bcm_rx_unit_next_get( 58333 BCM_CONTROL(unit)->unit, 58334 next_unit); 58335 } 58336 58337 int 58338 bcm_loop_rx_unregister( 58339 int unit, 58340 bcm_rx_cb_f callback, 58341 uint8 priority) 58342 { 58343 return bcm_rx_unregister( 58344 BCM_CONTROL(unit)->unit, 58345 callback, 58346 priority); 58347 } 58348 58349 int 58350 bcm_loop_sat_config_get( 58351 int unit, 58352 bcm_sat_config_t * conf) 58353 { 58354 return bcm_sat_config_get( 58355 BCM_CONTROL(unit)->unit, 58356 conf); 58357 } 58358 58359 int 58360 bcm_loop_sat_config_set( 58361 int unit, 58362 bcm_sat_config_t * conf) 58363 { 58364 return bcm_sat_config_set( 58365 BCM_CONTROL(unit)->unit, 58366 conf); 58367 } 58368 58369 /* bcm_sat_config_t_init not dispatchable */ 58370 58371 int 58372 bcm_loop_sat_ctf_availability_config_set( 58373 int unit, 58374 bcm_sat_ctf_t ctf_id, 58375 bcm_sat_ctf_availability_config_t * config) 58376 { 58377 return bcm_sat_ctf_availability_config_set( 58378 BCM_CONTROL(unit)->unit, 58379 ctf_id, 58380 config); 58381 } 58382 58383 /* bcm_sat_ctf_availability_config_t_init not dispatchable */ 58384 58385 int 58386 bcm_loop_sat_ctf_bin_limit_get( 58387 int unit, 58388 int max_bins_count, 58389 bcm_sat_ctf_bin_limit_t * bins, 58390 int * bins_count) 58391 { 58392 return bcm_sat_ctf_bin_limit_get( 58393 BCM_CONTROL(unit)->unit, 58394 max_bins_count, 58395 bins, 58396 bins_count); 58397 } 58398 58399 int 58400 bcm_loop_sat_ctf_bin_limit_set( 58401 int unit, 58402 int bins_count, 58403 bcm_sat_ctf_bin_limit_t * bins) 58404 { 58405 return bcm_sat_ctf_bin_limit_set( 58406 BCM_CONTROL(unit)->unit, 58407 bins_count, 58408 bins); 58409 } 58410 58411 /* bcm_sat_ctf_bin_limit_t_init not dispatchable */ 58412 58413 int 58414 bcm_loop_sat_ctf_create( 58415 int unit, 58416 uint32 flags, 58417 bcm_sat_ctf_t * ctf_id) 58418 { 58419 return bcm_sat_ctf_create( 58420 BCM_CONTROL(unit)->unit, 58421 flags, 58422 ctf_id); 58423 } 58424 58425 int 58426 bcm_loop_sat_ctf_destroy( 58427 int unit, 58428 bcm_sat_ctf_t ctf_id) 58429 { 58430 return bcm_sat_ctf_destroy( 58431 BCM_CONTROL(unit)->unit, 58432 ctf_id); 58433 } 58434 58435 int 58436 bcm_loop_sat_ctf_destroy_all( 58437 int unit) 58438 { 58439 return bcm_sat_ctf_destroy_all( 58440 BCM_CONTROL(unit)->unit); 58441 } 58442 58443 int 58444 bcm_loop_sat_ctf_identifier_map( 58445 int unit, 58446 bcm_sat_ctf_identifier_t * identifier, 58447 bcm_sat_ctf_t ctf_id) 58448 { 58449 return bcm_sat_ctf_identifier_map( 58450 BCM_CONTROL(unit)->unit, 58451 identifier, 58452 ctf_id); 58453 } 58454 58455 /* bcm_sat_ctf_identifier_t_init not dispatchable */ 58456 58457 int 58458 bcm_loop_sat_ctf_identifier_unmap( 58459 int unit, 58460 bcm_sat_ctf_identifier_t * identifier) 58461 { 58462 return bcm_sat_ctf_identifier_unmap( 58463 BCM_CONTROL(unit)->unit, 58464 identifier); 58465 } 58466 58467 int 58468 bcm_loop_sat_ctf_packet_config( 58469 int unit, 58470 bcm_sat_ctf_t ctf_id, 58471 bcm_sat_ctf_packet_info_t * packet_info) 58472 { 58473 return bcm_sat_ctf_packet_config( 58474 BCM_CONTROL(unit)->unit, 58475 ctf_id, 58476 packet_info); 58477 } 58478 58479 /* bcm_sat_ctf_packet_info_t_init not dispatchable */ 58480 58481 /* bcm_sat_ctf_report_config_t_init not dispatchable */ 58482 58483 int 58484 bcm_loop_sat_ctf_reports_config_set( 58485 int unit, 58486 bcm_sat_ctf_t ctf_id, 58487 bcm_sat_ctf_report_config_t * reports) 58488 { 58489 return bcm_sat_ctf_reports_config_set( 58490 BCM_CONTROL(unit)->unit, 58491 ctf_id, 58492 reports); 58493 } 58494 58495 int 58496 bcm_loop_sat_ctf_stat_config_set( 58497 int unit, 58498 bcm_sat_ctf_t ctf_id, 58499 bcm_sat_ctf_stat_config_t * stat) 58500 { 58501 return bcm_sat_ctf_stat_config_set( 58502 BCM_CONTROL(unit)->unit, 58503 ctf_id, 58504 stat); 58505 } 58506 58507 /* bcm_sat_ctf_stat_config_t_init not dispatchable */ 58508 58509 int 58510 bcm_loop_sat_ctf_stat_get( 58511 int unit, 58512 bcm_sat_ctf_t ctf_id, 58513 uint32 flags, 58514 bcm_sat_ctf_stat_t * stat) 58515 { 58516 return bcm_sat_ctf_stat_get( 58517 BCM_CONTROL(unit)->unit, 58518 ctf_id, 58519 flags, 58520 stat); 58521 } 58522 58523 /* bcm_sat_ctf_stat_t_init not dispatchable */ 58524 58525 int 58526 bcm_loop_sat_ctf_trap_add( 58527 int unit, 58528 uint32 trap_id) 58529 { 58530 return bcm_sat_ctf_trap_add( 58531 BCM_CONTROL(unit)->unit, 58532 trap_id); 58533 } 58534 58535 int 58536 bcm_loop_sat_ctf_trap_data_to_session_map( 58537 int unit, 58538 uint32 trap_data, 58539 uint32 trap_data_mask, 58540 uint32 session_id) 58541 { 58542 return bcm_sat_ctf_trap_data_to_session_map( 58543 BCM_CONTROL(unit)->unit, 58544 trap_data, 58545 trap_data_mask, 58546 session_id); 58547 } 58548 58549 int 58550 bcm_loop_sat_ctf_trap_data_to_session_unmap( 58551 int unit, 58552 uint32 trap_data, 58553 uint32 trap_data_mask) 58554 { 58555 return bcm_sat_ctf_trap_data_to_session_unmap( 58556 BCM_CONTROL(unit)->unit, 58557 trap_data, 58558 trap_data_mask); 58559 } 58560 58561 int 58562 bcm_loop_sat_ctf_trap_remove( 58563 int unit, 58564 uint32 trap_id) 58565 { 58566 return bcm_sat_ctf_trap_remove( 58567 BCM_CONTROL(unit)->unit, 58568 trap_id); 58569 } 58570 58571 int 58572 bcm_loop_sat_ctf_trap_remove_all( 58573 int unit) 58574 { 58575 return bcm_sat_ctf_trap_remove_all( 58576 BCM_CONTROL(unit)->unit); 58577 } 58578 58579 int 58580 bcm_loop_sat_ctf_traverse( 58581 int unit, 58582 bcm_sat_ctf_traverse_cb cb, 58583 void * user_data) 58584 { 58585 return bcm_sat_ctf_traverse( 58586 BCM_CONTROL(unit)->unit, 58587 cb, 58588 user_data); 58589 } 58590 58591 int 58592 bcm_loop_sat_endpoint_create( 58593 int unit, 58594 bcm_sat_endpoint_info_t * endpoint_info) 58595 { 58596 return bcm_sat_endpoint_create( 58597 BCM_CONTROL(unit)->unit, 58598 endpoint_info); 58599 } 58600 58601 int 58602 bcm_loop_sat_endpoint_destroy( 58603 int unit, 58604 bcm_sat_endpoint_t endpoint, 58605 uint32 flags) 58606 { 58607 return bcm_sat_endpoint_destroy( 58608 BCM_CONTROL(unit)->unit, 58609 endpoint, 58610 flags); 58611 } 58612 58613 int 58614 bcm_loop_sat_endpoint_destroy_all( 58615 int unit, 58616 uint32 flags) 58617 { 58618 return bcm_sat_endpoint_destroy_all( 58619 BCM_CONTROL(unit)->unit, 58620 flags); 58621 } 58622 58623 int 58624 bcm_loop_sat_endpoint_get( 58625 int unit, 58626 bcm_sat_endpoint_t endpoint, 58627 uint32 flags, 58628 bcm_sat_endpoint_info_t * endpoint_info) 58629 { 58630 return bcm_sat_endpoint_get( 58631 BCM_CONTROL(unit)->unit, 58632 endpoint, 58633 flags, 58634 endpoint_info); 58635 } 58636 58637 /* bcm_sat_endpoint_info_t_init not dispatchable */ 58638 58639 int 58640 bcm_loop_sat_endpoint_traverse( 58641 int unit, 58642 uint32 flags, 58643 bcm_sat_endpoint_traverse_cb cb, 58644 void * user_data) 58645 { 58646 return bcm_sat_endpoint_traverse( 58647 BCM_CONTROL(unit)->unit, 58648 flags, 58649 cb, 58650 user_data); 58651 } 58652 58653 int 58654 bcm_loop_sat_event_register( 58655 int unit, 58656 bcm_sat_event_type_t event_type, 58657 bcm_sat_event_cb cb, 58658 void * user_data) 58659 { 58660 return bcm_sat_event_register( 58661 BCM_CONTROL(unit)->unit, 58662 event_type, 58663 cb, 58664 user_data); 58665 } 58666 58667 int 58668 bcm_loop_sat_event_unregister( 58669 int unit, 58670 bcm_sat_event_type_t event_type, 58671 bcm_sat_event_cb cb) 58672 { 58673 return bcm_sat_event_unregister( 58674 BCM_CONTROL(unit)->unit, 58675 event_type, 58676 cb); 58677 } 58678 58679 int 58680 bcm_loop_sat_gtf_bandwidth_get( 58681 int unit, 58682 bcm_sat_gtf_t gtf_id, 58683 int priority, 58684 bcm_sat_gtf_bandwidth_t * bw) 58685 { 58686 return bcm_sat_gtf_bandwidth_get( 58687 BCM_CONTROL(unit)->unit, 58688 gtf_id, 58689 priority, 58690 bw); 58691 } 58692 58693 int 58694 bcm_loop_sat_gtf_bandwidth_set( 58695 int unit, 58696 bcm_sat_gtf_t gtf_id, 58697 int priority, 58698 bcm_sat_gtf_bandwidth_t * bw) 58699 { 58700 return bcm_sat_gtf_bandwidth_set( 58701 BCM_CONTROL(unit)->unit, 58702 gtf_id, 58703 priority, 58704 bw); 58705 } 58706 58707 /* bcm_sat_gtf_bandwidth_t_init not dispatchable */ 58708 58709 int 58710 bcm_loop_sat_gtf_create( 58711 int unit, 58712 uint32 flags, 58713 bcm_sat_gtf_t * gtf_id) 58714 { 58715 return bcm_sat_gtf_create( 58716 BCM_CONTROL(unit)->unit, 58717 flags, 58718 gtf_id); 58719 } 58720 58721 int 58722 bcm_loop_sat_gtf_destroy( 58723 int unit, 58724 bcm_sat_gtf_t gtf_id) 58725 { 58726 return bcm_sat_gtf_destroy( 58727 BCM_CONTROL(unit)->unit, 58728 gtf_id); 58729 } 58730 58731 int 58732 bcm_loop_sat_gtf_destroy_all( 58733 int unit) 58734 { 58735 return bcm_sat_gtf_destroy_all( 58736 BCM_CONTROL(unit)->unit); 58737 } 58738 58739 int 58740 bcm_loop_sat_gtf_packet_config( 58741 int unit, 58742 bcm_sat_gtf_t gtf_id, 58743 bcm_sat_gtf_packet_config_t * config) 58744 { 58745 return bcm_sat_gtf_packet_config( 58746 BCM_CONTROL(unit)->unit, 58747 gtf_id, 58748 config); 58749 } 58750 58751 int 58752 bcm_loop_sat_gtf_packet_config_get( 58753 int unit, 58754 bcm_sat_gtf_t gtf_id, 58755 bcm_sat_gtf_packet_config_t * config) 58756 { 58757 return bcm_sat_gtf_packet_config_get( 58758 BCM_CONTROL(unit)->unit, 58759 gtf_id, 58760 config); 58761 } 58762 58763 int 58764 bcm_loop_sat_gtf_packet_config_set( 58765 int unit, 58766 bcm_sat_gtf_t gtf_id, 58767 bcm_sat_gtf_packet_config_t * config) 58768 { 58769 return bcm_sat_gtf_packet_config_set( 58770 BCM_CONTROL(unit)->unit, 58771 gtf_id, 58772 config); 58773 } 58774 58775 /* bcm_sat_gtf_packet_config_t_init not dispatchable */ 58776 58777 /* bcm_sat_gtf_packet_edit_t_init not dispatchable */ 58778 58779 int 58780 bcm_loop_sat_gtf_packet_start( 58781 int unit, 58782 bcm_sat_gtf_t gtf_id, 58783 bcm_sat_gtf_pri_t priority) 58784 { 58785 return bcm_sat_gtf_packet_start( 58786 BCM_CONTROL(unit)->unit, 58787 gtf_id, 58788 priority); 58789 } 58790 58791 int 58792 bcm_loop_sat_gtf_packet_stop( 58793 int unit, 58794 bcm_sat_gtf_t gtf_id, 58795 bcm_sat_gtf_pri_t priority) 58796 { 58797 return bcm_sat_gtf_packet_stop( 58798 BCM_CONTROL(unit)->unit, 58799 gtf_id, 58800 priority); 58801 } 58802 58803 int 58804 bcm_loop_sat_gtf_rate_pattern_get( 58805 int unit, 58806 bcm_sat_gtf_t gtf_id, 58807 int priority, 58808 bcm_sat_gtf_rate_pattern_t * config) 58809 { 58810 return bcm_sat_gtf_rate_pattern_get( 58811 BCM_CONTROL(unit)->unit, 58812 gtf_id, 58813 priority, 58814 config); 58815 } 58816 58817 int 58818 bcm_loop_sat_gtf_rate_pattern_set( 58819 int unit, 58820 bcm_sat_gtf_t gtf_id, 58821 int priority, 58822 bcm_sat_gtf_rate_pattern_t * config) 58823 { 58824 return bcm_sat_gtf_rate_pattern_set( 58825 BCM_CONTROL(unit)->unit, 58826 gtf_id, 58827 priority, 58828 config); 58829 } 58830 58831 /* bcm_sat_gtf_rate_pattern_t_init not dispatchable */ 58832 58833 int 58834 bcm_loop_sat_gtf_stat_get( 58835 int unit, 58836 bcm_sat_gtf_t gtf_id, 58837 int priority, 58838 uint32 flags, 58839 bcm_sat_gtf_stat_counter_t type, 58840 uint64 * value) 58841 { 58842 return bcm_sat_gtf_stat_get( 58843 BCM_CONTROL(unit)->unit, 58844 gtf_id, 58845 priority, 58846 flags, 58847 type, 58848 value); 58849 } 58850 58851 int 58852 bcm_loop_sat_gtf_stat_multi_get( 58853 int unit, 58854 bcm_sat_gtf_t gtf_id, 58855 bcm_sat_gtf_stat_multi_t * stat) 58856 { 58857 return bcm_sat_gtf_stat_multi_get( 58858 BCM_CONTROL(unit)->unit, 58859 gtf_id, 58860 stat); 58861 } 58862 58863 int 58864 bcm_loop_sat_gtf_traverse( 58865 int unit, 58866 bcm_sat_gtf_traverse_cb cb, 58867 void * user_data) 58868 { 58869 return bcm_sat_gtf_traverse( 58870 BCM_CONTROL(unit)->unit, 58871 cb, 58872 user_data); 58873 } 58874 58875 /* bcm_sat_header_user_define_offsets_t_init not dispatchable */ 58876 58877 /* bcm_sat_payload_t_init not dispatchable */ 58878 58879 /* bcm_sat_stamp_t_init not dispatchable */ 58880 58881 int 58882 bcm_loop_srv6_sid_initiator_create( 58883 int unit, 58884 bcm_srv6_sid_initiator_info_t * info) 58885 { 58886 return bcm_srv6_sid_initiator_create( 58887 BCM_CONTROL(unit)->unit, 58888 info); 58889 } 58890 58891 int 58892 bcm_loop_srv6_sid_initiator_delete( 58893 int unit, 58894 bcm_srv6_sid_initiator_info_t * info) 58895 { 58896 return bcm_srv6_sid_initiator_delete( 58897 BCM_CONTROL(unit)->unit, 58898 info); 58899 } 58900 58901 int 58902 bcm_loop_srv6_sid_initiator_get( 58903 int unit, 58904 bcm_srv6_sid_initiator_info_t * info) 58905 { 58906 return bcm_srv6_sid_initiator_get( 58907 BCM_CONTROL(unit)->unit, 58908 info); 58909 } 58910 58911 /* bcm_srv6_sid_initiator_info_t_init not dispatchable */ 58912 58913 int 58914 bcm_loop_srv6_sid_initiator_traverse( 58915 int unit, 58916 bcm_srv6_sid_initiator_traverse_info_t additional_info, 58917 bcm_srv6_sid_initiator_traverse_cb cb, 58918 void * user_data) 58919 { 58920 return bcm_srv6_sid_initiator_traverse( 58921 BCM_CONTROL(unit)->unit, 58922 additional_info, 58923 cb, 58924 user_data); 58925 } 58926 58927 int 58928 bcm_loop_srv6_srh_base_initiator_create( 58929 int unit, 58930 bcm_srv6_srh_base_initiator_info_t * info) 58931 { 58932 return bcm_srv6_srh_base_initiator_create( 58933 BCM_CONTROL(unit)->unit, 58934 info); 58935 } 58936 58937 int 58938 bcm_loop_srv6_srh_base_initiator_delete( 58939 int unit, 58940 bcm_srv6_srh_base_initiator_info_t * info) 58941 { 58942 return bcm_srv6_srh_base_initiator_delete( 58943 BCM_CONTROL(unit)->unit, 58944 info); 58945 } 58946 58947 int 58948 bcm_loop_srv6_srh_base_initiator_get( 58949 int unit, 58950 bcm_srv6_srh_base_initiator_info_t * info) 58951 { 58952 return bcm_srv6_srh_base_initiator_get( 58953 BCM_CONTROL(unit)->unit, 58954 info); 58955 } 58956 58957 /* bcm_srv6_srh_base_initiator_info_t_init not dispatchable */ 58958 58959 int 58960 bcm_loop_srv6_srh_base_initiator_traverse( 58961 int unit, 58962 bcm_srv6_srh_base_initiator_traverse_info_t additional_info, 58963 bcm_srv6_srh_base_initiator_traverse_cb cb, 58964 void * user_data) 58965 { 58966 return bcm_srv6_srh_base_initiator_traverse( 58967 BCM_CONTROL(unit)->unit, 58968 additional_info, 58969 cb, 58970 user_data); 58971 } 58972 58973 int 58974 bcm_loop_srv6_terminator_next_protocol_add( 58975 int unit, 58976 bcm_srv6_terminator_next_protocol_mapping_t * info) 58977 { 58978 return bcm_srv6_terminator_next_protocol_add( 58979 BCM_CONTROL(unit)->unit, 58980 info); 58981 } 58982 58983 int 58984 bcm_loop_srv6_terminator_next_protocol_delete( 58985 int unit, 58986 bcm_srv6_terminator_next_protocol_mapping_t * info) 58987 { 58988 return bcm_srv6_terminator_next_protocol_delete( 58989 BCM_CONTROL(unit)->unit, 58990 info); 58991 } 58992 58993 int 58994 bcm_loop_srv6_terminator_next_protocol_get( 58995 int unit, 58996 bcm_srv6_terminator_next_protocol_mapping_t * info) 58997 { 58998 return bcm_srv6_terminator_next_protocol_get( 58999 BCM_CONTROL(unit)->unit, 59000 info); 59001 } 59002 59003 /* bcm_srv6_terminator_next_protocol_mapping_t_init not dispatchable */ 59004 59005 int 59006 bcm_loop_srv6_terminator_next_protocol_traverse( 59007 int unit, 59008 bcm_srv6_terminator_next_protocol_traverse_info_t additional_info, 59009 bcm_srv6_terminator_next_protocol_traverse_cb cb, 59010 void * user_data) 59011 { 59012 return bcm_srv6_terminator_next_protocol_traverse( 59013 BCM_CONTROL(unit)->unit, 59014 additional_info, 59015 cb, 59016 user_data); 59017 } 59018 59019 int 59020 bcm_loop_stat_clear( 59021 int unit, 59022 bcm_port_t port) 59023 { 59024 return bcm_stat_clear( 59025 BCM_CONTROL(unit)->unit, 59026 port); 59027 } 59028 59029 int 59030 bcm_loop_stat_clear_single( 59031 int unit, 59032 bcm_port_t port, 59033 bcm_stat_val_t type) 59034 { 59035 return bcm_stat_clear_single( 59036 BCM_CONTROL(unit)->unit, 59037 port, 59038 type); 59039 } 59040 59041 int 59042 bcm_loop_stat_control_get( 59043 int unit, 59044 int flags, 59045 bcm_stat_control_t type, 59046 int * arg) 59047 { 59048 return bcm_stat_control_get( 59049 BCM_CONTROL(unit)->unit, 59050 flags, 59051 type, 59052 arg); 59053 } 59054 59055 int 59056 bcm_loop_stat_control_set( 59057 int unit, 59058 int flags, 59059 bcm_stat_control_t type, 59060 int arg) 59061 { 59062 return bcm_stat_control_set( 59063 BCM_CONTROL(unit)->unit, 59064 flags, 59065 type, 59066 arg); 59067 } 59068 59069 /* bcm_stat_counter_command_id_key_t_init not dispatchable */ 59070 59071 int 59072 bcm_loop_stat_counter_config_get( 59073 int unit, 59074 bcm_stat_counter_engine_t * engine, 59075 bcm_stat_counter_config_t * config) 59076 { 59077 return bcm_stat_counter_config_get( 59078 BCM_CONTROL(unit)->unit, 59079 engine, 59080 config); 59081 } 59082 59083 int 59084 bcm_loop_stat_counter_config_set( 59085 int unit, 59086 bcm_stat_counter_engine_t * engine, 59087 bcm_stat_counter_config_t * config) 59088 { 59089 return bcm_stat_counter_config_set( 59090 BCM_CONTROL(unit)->unit, 59091 engine, 59092 config); 59093 } 59094 59095 int 59096 bcm_loop_stat_counter_database_control_get( 59097 int unit, 59098 uint32 flags, 59099 bcm_stat_counter_database_t * database, 59100 bcm_stat_counter_database_control_t control, 59101 uint32 * arg) 59102 { 59103 return bcm_stat_counter_database_control_get( 59104 BCM_CONTROL(unit)->unit, 59105 flags, 59106 database, 59107 control, 59108 arg); 59109 } 59110 59111 int 59112 bcm_loop_stat_counter_database_control_set( 59113 int unit, 59114 uint32 flags, 59115 bcm_stat_counter_database_t * database, 59116 bcm_stat_counter_database_control_t control, 59117 uint32 arg) 59118 { 59119 return bcm_stat_counter_database_control_set( 59120 BCM_CONTROL(unit)->unit, 59121 flags, 59122 database, 59123 control, 59124 arg); 59125 } 59126 59127 int 59128 bcm_loop_stat_counter_database_create( 59129 int unit, 59130 uint32 flags, 59131 bcm_core_t core_id, 59132 int * database_id) 59133 { 59134 return bcm_stat_counter_database_create( 59135 BCM_CONTROL(unit)->unit, 59136 flags, 59137 core_id, 59138 database_id); 59139 } 59140 59141 int 59142 bcm_loop_stat_counter_database_destroy( 59143 int unit, 59144 uint32 flags, 59145 bcm_stat_counter_database_t * database) 59146 { 59147 return bcm_stat_counter_database_destroy( 59148 BCM_CONTROL(unit)->unit, 59149 flags, 59150 database); 59151 } 59152 59153 int 59154 bcm_loop_stat_counter_database_enable_get( 59155 int unit, 59156 uint32 flags, 59157 bcm_stat_counter_database_t * database, 59158 bcm_stat_counter_enable_t * enable) 59159 { 59160 return bcm_stat_counter_database_enable_get( 59161 BCM_CONTROL(unit)->unit, 59162 flags, 59163 database, 59164 enable); 59165 } 59166 59167 int 59168 bcm_loop_stat_counter_database_enable_set( 59169 int unit, 59170 uint32 flags, 59171 bcm_stat_counter_database_t * database, 59172 bcm_stat_counter_enable_t * enable) 59173 { 59174 return bcm_stat_counter_database_enable_set( 59175 BCM_CONTROL(unit)->unit, 59176 flags, 59177 database, 59178 enable); 59179 } 59180 59181 /* bcm_stat_counter_database_t_init not dispatchable */ 59182 59183 /* bcm_stat_counter_enable_t_init not dispatchable */ 59184 59185 int 59186 bcm_loop_stat_counter_engine_attach( 59187 int unit, 59188 uint32 flags, 59189 bcm_stat_counter_database_t * database, 59190 int engine_id) 59191 { 59192 return bcm_stat_counter_engine_attach( 59193 BCM_CONTROL(unit)->unit, 59194 flags, 59195 database, 59196 engine_id); 59197 } 59198 59199 int 59200 bcm_loop_stat_counter_engine_control_get( 59201 int unit, 59202 uint32 flags, 59203 bcm_stat_engine_t * engine, 59204 bcm_stat_counter_engine_control_t control, 59205 uint32 * arg) 59206 { 59207 return bcm_stat_counter_engine_control_get( 59208 BCM_CONTROL(unit)->unit, 59209 flags, 59210 engine, 59211 control, 59212 arg); 59213 } 59214 59215 int 59216 bcm_loop_stat_counter_engine_control_set( 59217 int unit, 59218 uint32 flags, 59219 bcm_stat_engine_t * engine, 59220 bcm_stat_counter_engine_control_t control, 59221 uint32 arg) 59222 { 59223 return bcm_stat_counter_engine_control_set( 59224 BCM_CONTROL(unit)->unit, 59225 flags, 59226 engine, 59227 control, 59228 arg); 59229 } 59230 59231 int 59232 bcm_loop_stat_counter_engine_detach( 59233 int unit, 59234 uint32 flags, 59235 bcm_stat_counter_database_t * database, 59236 int engine_id) 59237 { 59238 return bcm_stat_counter_engine_detach( 59239 BCM_CONTROL(unit)->unit, 59240 flags, 59241 database, 59242 engine_id); 59243 } 59244 59245 int 59246 bcm_loop_stat_counter_eviction_get( 59247 int unit, 59248 uint32 flags, 59249 bcm_stat_engine_t * engine, 59250 bcm_stat_eviction_t * eviction) 59251 { 59252 return bcm_stat_counter_eviction_get( 59253 BCM_CONTROL(unit)->unit, 59254 flags, 59255 engine, 59256 eviction); 59257 } 59258 59259 int 59260 bcm_loop_stat_counter_eviction_set( 59261 int unit, 59262 uint32 flags, 59263 bcm_stat_engine_t * engine, 59264 bcm_stat_eviction_t * eviction) 59265 { 59266 return bcm_stat_counter_eviction_set( 59267 BCM_CONTROL(unit)->unit, 59268 flags, 59269 engine, 59270 eviction); 59271 } 59272 59273 int 59274 bcm_loop_stat_counter_expansion_select_get( 59275 int unit, 59276 uint32 flags, 59277 bcm_stat_counter_interface_key_t * interface, 59278 bcm_stat_expansion_select_t * expansion_select) 59279 { 59280 return bcm_stat_counter_expansion_select_get( 59281 BCM_CONTROL(unit)->unit, 59282 flags, 59283 interface, 59284 expansion_select); 59285 } 59286 59287 int 59288 bcm_loop_stat_counter_expansion_select_set( 59289 int unit, 59290 uint32 flags, 59291 bcm_stat_counter_interface_key_t * interface, 59292 bcm_stat_expansion_select_t * expansion_select) 59293 { 59294 return bcm_stat_counter_expansion_select_set( 59295 BCM_CONTROL(unit)->unit, 59296 flags, 59297 interface, 59298 expansion_select); 59299 } 59300 59301 int 59302 bcm_loop_stat_counter_explicit_get( 59303 int unit, 59304 uint32 flags, 59305 bcm_stat_counter_explicit_input_data_t * stat_counter_input_data, 59306 bcm_stat_counter_output_data_t * stat_counter_output_data) 59307 { 59308 return bcm_stat_counter_explicit_get( 59309 BCM_CONTROL(unit)->unit, 59310 flags, 59311 stat_counter_input_data, 59312 stat_counter_output_data); 59313 } 59314 59315 /* bcm_stat_counter_explicit_input_data_t_init not dispatchable */ 59316 59317 int 59318 bcm_loop_stat_counter_filter_get( 59319 int unit, 59320 bcm_stat_counter_source_t source, 59321 int filter_max_count, 59322 bcm_stat_counter_filter_t * filter_array, 59323 int * filter_count) 59324 { 59325 return bcm_stat_counter_filter_get( 59326 BCM_CONTROL(unit)->unit, 59327 source, 59328 filter_max_count, 59329 filter_array, 59330 filter_count); 59331 } 59332 59333 int 59334 bcm_loop_stat_counter_filter_group_get( 59335 int unit, 59336 uint32 flags, 59337 bcm_stat_counter_command_id_key_t * key, 59338 bcm_stat_counter_group_filter_t filter, 59339 int * is_active) 59340 { 59341 return bcm_stat_counter_filter_group_get( 59342 BCM_CONTROL(unit)->unit, 59343 flags, 59344 key, 59345 filter, 59346 is_active); 59347 } 59348 59349 int 59350 bcm_loop_stat_counter_filter_group_set( 59351 int unit, 59352 uint32 flags, 59353 bcm_stat_counter_command_id_key_t * key, 59354 bcm_stat_counter_group_filter_t filter, 59355 int is_active) 59356 { 59357 return bcm_stat_counter_filter_group_set( 59358 BCM_CONTROL(unit)->unit, 59359 flags, 59360 key, 59361 filter, 59362 is_active); 59363 } 59364 59365 int 59366 bcm_loop_stat_counter_filter_is_active_get( 59367 int unit, 59368 bcm_stat_counter_source_t source, 59369 bcm_stat_counter_filter_t filter, 59370 int * is_active) 59371 { 59372 return bcm_stat_counter_filter_is_active_get( 59373 BCM_CONTROL(unit)->unit, 59374 source, 59375 filter, 59376 is_active); 59377 } 59378 59379 int 59380 bcm_loop_stat_counter_filter_set( 59381 int unit, 59382 bcm_stat_counter_source_t source, 59383 bcm_stat_counter_filter_t * filter_array, 59384 int filter_count, 59385 int is_active) 59386 { 59387 return bcm_stat_counter_filter_set( 59388 BCM_CONTROL(unit)->unit, 59389 source, 59390 filter_array, 59391 filter_count, 59392 is_active); 59393 } 59394 59395 int 59396 bcm_loop_stat_counter_get( 59397 int unit, 59398 uint32 flags, 59399 bcm_stat_counter_input_data_t * stat_counter_input_data, 59400 bcm_stat_counter_output_data_t * stat_counter_output_data) 59401 { 59402 return bcm_stat_counter_get( 59403 BCM_CONTROL(unit)->unit, 59404 flags, 59405 stat_counter_input_data, 59406 stat_counter_output_data); 59407 } 59408 59409 /* bcm_stat_counter_input_data_t_init not dispatchable */ 59410 59411 int 59412 bcm_loop_stat_counter_interface_get( 59413 int unit, 59414 uint32 flags, 59415 bcm_stat_counter_database_t * database, 59416 bcm_stat_counter_interface_t * config) 59417 { 59418 return bcm_stat_counter_interface_get( 59419 BCM_CONTROL(unit)->unit, 59420 flags, 59421 database, 59422 config); 59423 } 59424 59425 /* bcm_stat_counter_interface_key_t_init not dispatchable */ 59426 59427 int 59428 bcm_loop_stat_counter_interface_set( 59429 int unit, 59430 uint32 flags, 59431 bcm_stat_counter_database_t * database, 59432 bcm_stat_counter_interface_t * config) 59433 { 59434 return bcm_stat_counter_interface_set( 59435 BCM_CONTROL(unit)->unit, 59436 flags, 59437 database, 59438 config); 59439 } 59440 59441 /* bcm_stat_counter_interface_t_init not dispatchable */ 59442 59443 int 59444 bcm_loop_stat_counter_lif_counting_get( 59445 int unit, 59446 uint32 flags, 59447 bcm_stat_counter_source_t * source, 59448 bcm_stat_counter_lif_mask_t * counting_mask, 59449 bcm_stat_counter_lif_stack_id_t * lif_stack_id_to_count) 59450 { 59451 return bcm_stat_counter_lif_counting_get( 59452 BCM_CONTROL(unit)->unit, 59453 flags, 59454 source, 59455 counting_mask, 59456 lif_stack_id_to_count); 59457 } 59458 59459 int 59460 bcm_loop_stat_counter_lif_counting_range_get( 59461 int unit, 59462 uint32 flags, 59463 bcm_stat_counter_source_type_t source, 59464 bcm_stat_counter_lif_range_id_t range_id, 59465 bcm_stat_counter_lif_counting_range_t * lif_range) 59466 { 59467 return bcm_stat_counter_lif_counting_range_get( 59468 BCM_CONTROL(unit)->unit, 59469 flags, 59470 source, 59471 range_id, 59472 lif_range); 59473 } 59474 59475 int 59476 bcm_loop_stat_counter_lif_counting_range_set( 59477 int unit, 59478 uint32 flags, 59479 bcm_stat_counter_source_type_t source, 59480 bcm_stat_counter_lif_range_id_t range_id, 59481 bcm_stat_counter_lif_counting_range_t * lif_range) 59482 { 59483 return bcm_stat_counter_lif_counting_range_set( 59484 BCM_CONTROL(unit)->unit, 59485 flags, 59486 source, 59487 range_id, 59488 lif_range); 59489 } 59490 59491 int 59492 bcm_loop_stat_counter_lif_counting_set( 59493 int unit, 59494 uint32 flags, 59495 bcm_stat_counter_source_t * source, 59496 bcm_stat_counter_lif_mask_t * counting_mask, 59497 bcm_stat_counter_lif_stack_id_t lif_stack_id_to_count) 59498 { 59499 return bcm_stat_counter_lif_counting_set( 59500 BCM_CONTROL(unit)->unit, 59501 flags, 59502 source, 59503 counting_mask, 59504 lif_stack_id_to_count); 59505 } 59506 59507 /* bcm_stat_counter_output_data_t_init not dispatchable */ 59508 59509 /* bcm_stat_counter_set_map_t_init not dispatchable */ 59510 59511 int 59512 bcm_loop_stat_counter_set_mapping_get( 59513 int unit, 59514 uint32 flags, 59515 bcm_stat_counter_database_t * database, 59516 bcm_stat_counter_set_map_t * counter_set_map) 59517 { 59518 return bcm_stat_counter_set_mapping_get( 59519 BCM_CONTROL(unit)->unit, 59520 flags, 59521 database, 59522 counter_set_map); 59523 } 59524 59525 int 59526 bcm_loop_stat_counter_set_mapping_set( 59527 int unit, 59528 uint32 flags, 59529 bcm_stat_counter_database_t * database, 59530 bcm_stat_counter_set_map_t * counter_set_map) 59531 { 59532 return bcm_stat_counter_set_mapping_set( 59533 BCM_CONTROL(unit)->unit, 59534 flags, 59535 database, 59536 counter_set_map); 59537 } 59538 59539 int 59540 bcm_loop_stat_custom_add( 59541 int unit, 59542 bcm_port_t port, 59543 bcm_stat_val_t type, 59544 bcm_custom_stat_trigger_t trigger) 59545 { 59546 return bcm_stat_custom_add( 59547 BCM_CONTROL(unit)->unit, 59548 port, 59549 type, 59550 trigger); 59551 } 59552 59553 int 59554 bcm_loop_stat_custom_check( 59555 int unit, 59556 bcm_port_t port, 59557 bcm_stat_val_t type, 59558 bcm_custom_stat_trigger_t trigger, 59559 int * result) 59560 { 59561 return bcm_stat_custom_check( 59562 BCM_CONTROL(unit)->unit, 59563 port, 59564 type, 59565 trigger, 59566 result); 59567 } 59568 59569 int 59570 bcm_loop_stat_custom_counter_id_move( 59571 int unit, 59572 bcm_stat_custom_base_index_action_t idx_action, 59573 bcm_stat_custom_counter_info_t counter_info_old, 59574 bcm_stat_custom_counter_info_t * counter_info_new) 59575 { 59576 return bcm_stat_custom_counter_id_move( 59577 BCM_CONTROL(unit)->unit, 59578 idx_action, 59579 counter_info_old, 59580 counter_info_new); 59581 } 59582 59583 /* bcm_stat_custom_counter_info_t_init not dispatchable */ 59584 59585 int 59586 bcm_loop_stat_custom_delete( 59587 int unit, 59588 bcm_port_t port, 59589 bcm_stat_val_t type, 59590 bcm_custom_stat_trigger_t trigger) 59591 { 59592 return bcm_stat_custom_delete( 59593 BCM_CONTROL(unit)->unit, 59594 port, 59595 type, 59596 trigger); 59597 } 59598 59599 int 59600 bcm_loop_stat_custom_delete_all( 59601 int unit, 59602 bcm_port_t port, 59603 bcm_stat_val_t type) 59604 { 59605 return bcm_stat_custom_delete_all( 59606 BCM_CONTROL(unit)->unit, 59607 port, 59608 type); 59609 } 59610 59611 int 59612 bcm_loop_stat_custom_get( 59613 int unit, 59614 bcm_port_t port, 59615 bcm_stat_val_t type, 59616 uint32 * flags) 59617 { 59618 return bcm_stat_custom_get( 59619 BCM_CONTROL(unit)->unit, 59620 port, 59621 type, 59622 flags); 59623 } 59624 59625 int 59626 bcm_loop_stat_custom_group_create( 59627 int unit, 59628 uint32 mode_id, 59629 bcm_stat_object_t object, 59630 uint32 * stat_counter_id, 59631 uint32 * num_entries) 59632 { 59633 return bcm_stat_custom_group_create( 59634 BCM_CONTROL(unit)->unit, 59635 mode_id, 59636 object, 59637 stat_counter_id, 59638 num_entries); 59639 } 59640 59641 int 59642 bcm_loop_stat_custom_group_id_create( 59643 int unit, 59644 uint32 mode_id, 59645 bcm_stat_object_t object, 59646 uint32 pool_id, 59647 uint32 base_idx, 59648 bcm_stat_custom_counter_info_t * counter_info) 59649 { 59650 return bcm_stat_custom_group_id_create( 59651 BCM_CONTROL(unit)->unit, 59652 mode_id, 59653 object, 59654 pool_id, 59655 base_idx, 59656 counter_info); 59657 } 59658 59659 int 59660 bcm_loop_stat_custom_set( 59661 int unit, 59662 bcm_port_t port, 59663 bcm_stat_val_t type, 59664 uint32 flags) 59665 { 59666 return bcm_stat_custom_set( 59667 BCM_CONTROL(unit)->unit, 59668 port, 59669 type, 59670 flags); 59671 } 59672 59673 int 59674 bcm_loop_stat_direct_get( 59675 int unit, 59676 bcm_port_t port, 59677 bcm_stat_val_t type, 59678 uint64 * value) 59679 { 59680 return bcm_stat_direct_get( 59681 BCM_CONTROL(unit)->unit, 59682 port, 59683 type, 59684 value); 59685 } 59686 59687 int 59688 bcm_loop_stat_direct_multi_get( 59689 int unit, 59690 bcm_port_t port, 59691 int nstat, 59692 bcm_stat_val_t * stat_arr, 59693 uint64 * value_arr) 59694 { 59695 return bcm_stat_direct_multi_get( 59696 BCM_CONTROL(unit)->unit, 59697 port, 59698 nstat, 59699 stat_arr, 59700 value_arr); 59701 } 59702 59703 int 59704 bcm_loop_stat_egress_receive_tm_pointer_format_get( 59705 int unit, 59706 int flags, 59707 bcm_stat_egress_receive_tm_pointer_format_t * pointer_format) 59708 { 59709 return bcm_stat_egress_receive_tm_pointer_format_get( 59710 BCM_CONTROL(unit)->unit, 59711 flags, 59712 pointer_format); 59713 } 59714 59715 int 59716 bcm_loop_stat_egress_receive_tm_pointer_format_set( 59717 int unit, 59718 int flags, 59719 bcm_stat_egress_receive_tm_pointer_format_t * pointer_format) 59720 { 59721 return bcm_stat_egress_receive_tm_pointer_format_set( 59722 BCM_CONTROL(unit)->unit, 59723 flags, 59724 pointer_format); 59725 } 59726 59727 /* bcm_stat_engine_t_init not dispatchable */ 59728 59729 int 59730 bcm_loop_stat_eviction_boundaries_get( 59731 int unit, 59732 uint32 flags, 59733 bcm_stat_engine_t * engine, 59734 bcm_stat_eviction_boundaries_t * boundaries) 59735 { 59736 return bcm_stat_eviction_boundaries_get( 59737 BCM_CONTROL(unit)->unit, 59738 flags, 59739 engine, 59740 boundaries); 59741 } 59742 59743 int 59744 bcm_loop_stat_eviction_boundaries_set( 59745 int unit, 59746 uint32 flags, 59747 bcm_stat_engine_t * engine, 59748 bcm_stat_eviction_boundaries_t * boundaries) 59749 { 59750 return bcm_stat_eviction_boundaries_set( 59751 BCM_CONTROL(unit)->unit, 59752 flags, 59753 engine, 59754 boundaries); 59755 } 59756 59757 /* bcm_stat_eviction_boundaries_t_init not dispatchable */ 59758 59759 /* bcm_stat_eviction_t_init not dispatchable */ 59760 59761 /* bcm_stat_expansion_data_mapping_t_init not dispatchable */ 59762 59763 /* bcm_stat_expansion_select_t_init not dispatchable */ 59764 59765 int 59766 bcm_loop_stat_flex_counter_get( 59767 int unit, 59768 uint32 stat_counter_id, 59769 bcm_stat_flex_stat_t stat, 59770 uint32 num_entries, 59771 uint32 * counter_indexes, 59772 bcm_stat_value_t * counter_values) 59773 { 59774 return bcm_stat_flex_counter_get( 59775 BCM_CONTROL(unit)->unit, 59776 stat_counter_id, 59777 stat, 59778 num_entries, 59779 counter_indexes, 59780 counter_values); 59781 } 59782 59783 int 59784 bcm_loop_stat_flex_counter_set( 59785 int unit, 59786 uint32 stat_counter_id, 59787 bcm_stat_flex_stat_t stat, 59788 uint32 num_entries, 59789 uint32 * counter_indexes, 59790 bcm_stat_value_t * counter_values) 59791 { 59792 return bcm_stat_flex_counter_set( 59793 BCM_CONTROL(unit)->unit, 59794 stat_counter_id, 59795 stat, 59796 num_entries, 59797 counter_indexes, 59798 counter_values); 59799 } 59800 59801 int 59802 bcm_loop_stat_flex_counter_sync_get( 59803 int unit, 59804 uint32 stat_counter_id, 59805 bcm_stat_flex_stat_t stat, 59806 uint32 num_entries, 59807 uint32 * counter_indexes, 59808 bcm_stat_value_t * counter_values) 59809 { 59810 return bcm_stat_flex_counter_sync_get( 59811 BCM_CONTROL(unit)->unit, 59812 stat_counter_id, 59813 stat, 59814 num_entries, 59815 counter_indexes, 59816 counter_values); 59817 } 59818 59819 int 59820 bcm_loop_stat_flex_pool_info_multi_get( 59821 int unit, 59822 bcm_stat_flex_direction_t direction, 59823 uint32 num_pools, 59824 bcm_stat_flex_pool_stat_info_t * flex_pool_stat, 59825 uint32 * actual_num_pools) 59826 { 59827 return bcm_stat_flex_pool_info_multi_get( 59828 BCM_CONTROL(unit)->unit, 59829 direction, 59830 num_pools, 59831 flex_pool_stat, 59832 actual_num_pools); 59833 } 59834 59835 /* bcm_stat_flex_pool_stat_info_t_init not dispatchable */ 59836 59837 int 59838 bcm_loop_stat_get( 59839 int unit, 59840 bcm_port_t port, 59841 bcm_stat_val_t type, 59842 uint64 * value) 59843 { 59844 return bcm_stat_get( 59845 BCM_CONTROL(unit)->unit, 59846 port, 59847 type, 59848 value); 59849 } 59850 59851 int 59852 bcm_loop_stat_get32( 59853 int unit, 59854 bcm_port_t port, 59855 bcm_stat_val_t type, 59856 uint32 * value) 59857 { 59858 return bcm_stat_get32( 59859 BCM_CONTROL(unit)->unit, 59860 port, 59861 type, 59862 value); 59863 } 59864 59865 int 59866 bcm_loop_stat_group_create( 59867 int unit, 59868 bcm_stat_object_t object, 59869 bcm_stat_group_mode_t group_mode, 59870 uint32 * stat_counter_id, 59871 uint32 * num_entries) 59872 { 59873 return bcm_stat_group_create( 59874 BCM_CONTROL(unit)->unit, 59875 object, 59876 group_mode, 59877 stat_counter_id, 59878 num_entries); 59879 } 59880 59881 int 59882 bcm_loop_stat_group_destroy( 59883 int unit, 59884 uint32 stat_counter_id) 59885 { 59886 return bcm_stat_group_destroy( 59887 BCM_CONTROL(unit)->unit, 59888 stat_counter_id); 59889 } 59890 59891 int 59892 bcm_loop_stat_group_drop_reasons_get( 59893 int unit, 59894 uint32 flags, 59895 bcm_stat_counter_group_filter_t group, 59896 int max_drop_reason_count, 59897 bcm_cosq_drop_reason_t * drop_reasons_array, 59898 int * drop_reasons_count) 59899 { 59900 return bcm_stat_group_drop_reasons_get( 59901 BCM_CONTROL(unit)->unit, 59902 flags, 59903 group, 59904 max_drop_reason_count, 59905 drop_reasons_array, 59906 drop_reasons_count); 59907 } 59908 59909 int 59910 bcm_loop_stat_group_drop_reasons_set( 59911 int unit, 59912 uint32 flags, 59913 bcm_stat_counter_group_filter_t group, 59914 bcm_cosq_drop_reason_t * drop_reasons_array, 59915 int drop_reasons_count) 59916 { 59917 return bcm_stat_group_drop_reasons_set( 59918 BCM_CONTROL(unit)->unit, 59919 flags, 59920 group, 59921 drop_reasons_array, 59922 drop_reasons_count); 59923 } 59924 59925 int 59926 bcm_loop_stat_group_dump( 59927 int unit, 59928 bcm_stat_object_t object, 59929 bcm_stat_group_mode_t group_mode) 59930 { 59931 return bcm_stat_group_dump( 59932 BCM_CONTROL(unit)->unit, 59933 object, 59934 group_mode); 59935 } 59936 59937 int 59938 bcm_loop_stat_group_dump_all( 59939 int unit) 59940 { 59941 return bcm_stat_group_dump_all( 59942 BCM_CONTROL(unit)->unit); 59943 } 59944 59945 int 59946 bcm_loop_stat_group_mode_attr_class_id_create( 59947 int unit, 59948 bcm_stat_group_mode_attr_t attr, 59949 uint32 num_of_attr_values, 59950 uint32 * attr_values, 59951 bcm_stat_group_mode_attr_class_id_t * attr_class_id) 59952 { 59953 return bcm_stat_group_mode_attr_class_id_create( 59954 BCM_CONTROL(unit)->unit, 59955 attr, 59956 num_of_attr_values, 59957 attr_values, 59958 attr_class_id); 59959 } 59960 59961 int 59962 bcm_loop_stat_group_mode_attr_class_id_destroy( 59963 int unit, 59964 bcm_stat_group_mode_attr_class_id_t attr_class_id) 59965 { 59966 return bcm_stat_group_mode_attr_class_id_destroy( 59967 BCM_CONTROL(unit)->unit, 59968 attr_class_id); 59969 } 59970 59971 /* bcm_stat_group_mode_attr_selector_t_init not dispatchable */ 59972 59973 /* bcm_stat_group_mode_hint_t_init not dispatchable */ 59974 59975 int 59976 bcm_loop_stat_group_mode_id_config_create( 59977 int unit, 59978 uint32 options, 59979 bcm_stat_group_mode_id_config_t * stat_config, 59980 uint32 num_selectors, 59981 bcm_stat_group_mode_attr_selector_t * attr_sel, 59982 uint32 * mode_id) 59983 { 59984 return bcm_stat_group_mode_id_config_create( 59985 BCM_CONTROL(unit)->unit, 59986 options, 59987 stat_config, 59988 num_selectors, 59989 attr_sel, 59990 mode_id); 59991 } 59992 59993 int 59994 bcm_loop_stat_group_mode_id_config_get( 59995 int unit, 59996 uint32 mode_id, 59997 bcm_stat_group_mode_id_config_t * config, 59998 uint32 num_selectors, 59999 bcm_stat_group_mode_attr_selector_t * attr_sel, 60000 uint32 * actual_num_selectors) 60001 { 60002 return bcm_stat_group_mode_id_config_get( 60003 BCM_CONTROL(unit)->unit, 60004 mode_id, 60005 config, 60006 num_selectors, 60007 attr_sel, 60008 actual_num_selectors); 60009 } 60010 60011 /* bcm_stat_group_mode_id_config_t_init not dispatchable */ 60012 60013 int 60014 bcm_loop_stat_group_mode_id_create( 60015 int unit, 60016 uint32 flags, 60017 uint32 total_counters, 60018 uint32 num_selectors, 60019 bcm_stat_group_mode_attr_selector_t * attr_selectors, 60020 uint32 * mode_id) 60021 { 60022 return bcm_stat_group_mode_id_create( 60023 BCM_CONTROL(unit)->unit, 60024 flags, 60025 total_counters, 60026 num_selectors, 60027 attr_selectors, 60028 mode_id); 60029 } 60030 60031 int 60032 bcm_loop_stat_group_mode_id_destroy( 60033 int unit, 60034 uint32 mode_id) 60035 { 60036 return bcm_stat_group_mode_id_destroy( 60037 BCM_CONTROL(unit)->unit, 60038 mode_id); 60039 } 60040 60041 int 60042 bcm_loop_stat_group_mode_id_get( 60043 int unit, 60044 uint32 mode_id, 60045 uint32 * flags, 60046 uint32 * total_counters, 60047 uint32 num_selectors, 60048 bcm_stat_group_mode_attr_selector_t * attr_selectors, 60049 uint32 * actual_num_selectors) 60050 { 60051 return bcm_stat_group_mode_id_get( 60052 BCM_CONTROL(unit)->unit, 60053 mode_id, 60054 flags, 60055 total_counters, 60056 num_selectors, 60057 attr_selectors, 60058 actual_num_selectors); 60059 } 60060 60061 int 60062 bcm_loop_stat_id_get_all( 60063 int unit, 60064 bcm_stat_object_t object, 60065 int stat_max, 60066 uint32 * stat_array, 60067 int * stat_count) 60068 { 60069 return bcm_stat_id_get_all( 60070 BCM_CONTROL(unit)->unit, 60071 object, 60072 stat_max, 60073 stat_array, 60074 stat_count); 60075 } 60076 60077 int 60078 bcm_loop_stat_init( 60079 int unit) 60080 { 60081 return bcm_stat_init( 60082 BCM_CONTROL(unit)->unit); 60083 } 60084 60085 int 60086 bcm_loop_stat_latency_port_stat_id_get( 60087 int unit, 60088 int flags, 60089 bcm_stat_latency_port_stat_id_key_t * key, 60090 int * stat_id) 60091 { 60092 return bcm_stat_latency_port_stat_id_get( 60093 BCM_CONTROL(unit)->unit, 60094 flags, 60095 key, 60096 stat_id); 60097 } 60098 60099 int 60100 bcm_loop_stat_lif_counting_profile_get( 60101 int unit, 60102 uint32 flags, 60103 int lif_counting_profile, 60104 bcm_stat_lif_counting_t * lif_counting) 60105 { 60106 return bcm_stat_lif_counting_profile_get( 60107 BCM_CONTROL(unit)->unit, 60108 flags, 60109 lif_counting_profile, 60110 lif_counting); 60111 } 60112 60113 int 60114 bcm_loop_stat_lif_counting_profile_set( 60115 int unit, 60116 uint32 flags, 60117 int lif_counting_profile, 60118 bcm_stat_lif_counting_t * lif_counting) 60119 { 60120 return bcm_stat_lif_counting_profile_set( 60121 BCM_CONTROL(unit)->unit, 60122 flags, 60123 lif_counting_profile, 60124 lif_counting); 60125 } 60126 60127 int 60128 bcm_loop_stat_lif_counting_stack_level_priority_get( 60129 int unit, 60130 uint32 flags, 60131 bcm_stat_lif_counting_source_t * source, 60132 bcm_stat_counter_lif_stack_id_t lif_stack_level, 60133 int * priority) 60134 { 60135 return bcm_stat_lif_counting_stack_level_priority_get( 60136 BCM_CONTROL(unit)->unit, 60137 flags, 60138 source, 60139 lif_stack_level, 60140 priority); 60141 } 60142 60143 int 60144 bcm_loop_stat_lif_counting_stack_level_priority_set( 60145 int unit, 60146 uint32 flags, 60147 bcm_stat_lif_counting_source_t * source, 60148 bcm_stat_counter_lif_stack_id_t lif_stack_level, 60149 int priority) 60150 { 60151 return bcm_stat_lif_counting_stack_level_priority_set( 60152 BCM_CONTROL(unit)->unit, 60153 flags, 60154 source, 60155 lif_stack_level, 60156 priority); 60157 } 60158 60159 int 60160 bcm_loop_stat_multi_get( 60161 int unit, 60162 bcm_port_t port, 60163 int nstat, 60164 bcm_stat_val_t * stat_arr, 60165 uint64 * value_arr) 60166 { 60167 return bcm_stat_multi_get( 60168 BCM_CONTROL(unit)->unit, 60169 port, 60170 nstat, 60171 stat_arr, 60172 value_arr); 60173 } 60174 60175 int 60176 bcm_loop_stat_multi_get32( 60177 int unit, 60178 bcm_port_t port, 60179 int nstat, 60180 bcm_stat_val_t * stat_arr, 60181 uint32 * value_arr) 60182 { 60183 return bcm_stat_multi_get32( 60184 BCM_CONTROL(unit)->unit, 60185 port, 60186 nstat, 60187 stat_arr, 60188 value_arr); 60189 } 60190 60191 int 60192 bcm_loop_stat_pkt_size_adjust_select_get( 60193 int unit, 60194 int flags, 60195 bcm_stat_counter_command_id_key_t * key, 60196 bcm_stat_pkt_size_adjust_select_type_t select_type, 60197 int * enable) 60198 { 60199 return bcm_stat_pkt_size_adjust_select_get( 60200 BCM_CONTROL(unit)->unit, 60201 flags, 60202 key, 60203 select_type, 60204 enable); 60205 } 60206 60207 int 60208 bcm_loop_stat_pkt_size_adjust_select_set( 60209 int unit, 60210 int flags, 60211 bcm_stat_counter_command_id_key_t * key, 60212 bcm_stat_pkt_size_adjust_select_type_t select_type, 60213 int enable) 60214 { 60215 return bcm_stat_pkt_size_adjust_select_set( 60216 BCM_CONTROL(unit)->unit, 60217 flags, 60218 key, 60219 select_type, 60220 enable); 60221 } 60222 60223 /* bcm_stat_pp_info_t_init not dispatchable */ 60224 60225 int 60226 bcm_loop_stat_pp_profile_create( 60227 int unit, 60228 int flags, 60229 bcm_stat_counter_interface_type_t engine_source, 60230 int * stat_pp_profile, 60231 bcm_stat_pp_profile_info_t * stat_pp_profile_info) 60232 { 60233 return bcm_stat_pp_profile_create( 60234 BCM_CONTROL(unit)->unit, 60235 flags, 60236 engine_source, 60237 stat_pp_profile, 60238 stat_pp_profile_info); 60239 } 60240 60241 int 60242 bcm_loop_stat_pp_profile_delete( 60243 int unit, 60244 int stat_pp_profile) 60245 { 60246 return bcm_stat_pp_profile_delete( 60247 BCM_CONTROL(unit)->unit, 60248 stat_pp_profile); 60249 } 60250 60251 int 60252 bcm_loop_stat_pp_profile_get( 60253 int unit, 60254 int stat_pp_profile, 60255 bcm_stat_pp_profile_info_t * stat_pp_profile_info) 60256 { 60257 return bcm_stat_pp_profile_get( 60258 BCM_CONTROL(unit)->unit, 60259 stat_pp_profile, 60260 stat_pp_profile_info); 60261 } 60262 60263 /* bcm_stat_pp_profile_info_t_init not dispatchable */ 60264 60265 int 60266 bcm_loop_stat_stif_record_format_get( 60267 int unit, 60268 int flags, 60269 int max_nof_elements, 60270 bcm_stat_stif_record_format_element_t * elements_array, 60271 int * nof_elements) 60272 { 60273 return bcm_stat_stif_record_format_get( 60274 BCM_CONTROL(unit)->unit, 60275 flags, 60276 max_nof_elements, 60277 elements_array, 60278 nof_elements); 60279 } 60280 60281 int 60282 bcm_loop_stat_stif_record_format_set( 60283 int unit, 60284 int flags, 60285 int nof_elements, 60286 bcm_stat_stif_record_format_element_t * record_format_elements) 60287 { 60288 return bcm_stat_stif_record_format_set( 60289 BCM_CONTROL(unit)->unit, 60290 flags, 60291 nof_elements, 60292 record_format_elements); 60293 } 60294 60295 int 60296 bcm_loop_stat_stif_source_mapping_get( 60297 int unit, 60298 int flags, 60299 bcm_stat_stif_source_t source, 60300 bcm_port_t * port) 60301 { 60302 return bcm_stat_stif_source_mapping_get( 60303 BCM_CONTROL(unit)->unit, 60304 flags, 60305 source, 60306 port); 60307 } 60308 60309 int 60310 bcm_loop_stat_stif_source_mapping_set( 60311 int unit, 60312 int flags, 60313 bcm_stat_stif_source_t source, 60314 bcm_port_t port) 60315 { 60316 return bcm_stat_stif_source_mapping_set( 60317 BCM_CONTROL(unit)->unit, 60318 flags, 60319 source, 60320 port); 60321 } 60322 60323 int 60324 bcm_loop_stat_sync( 60325 int unit) 60326 { 60327 return bcm_stat_sync( 60328 BCM_CONTROL(unit)->unit); 60329 } 60330 60331 int 60332 bcm_loop_stat_sync_get( 60333 int unit, 60334 bcm_port_t port, 60335 bcm_stat_val_t type, 60336 uint64 * value) 60337 { 60338 return bcm_stat_sync_get( 60339 BCM_CONTROL(unit)->unit, 60340 port, 60341 type, 60342 value); 60343 } 60344 60345 int 60346 bcm_loop_stat_sync_get32( 60347 int unit, 60348 bcm_port_t port, 60349 bcm_stat_val_t type, 60350 uint32 * value) 60351 { 60352 return bcm_stat_sync_get32( 60353 BCM_CONTROL(unit)->unit, 60354 port, 60355 type, 60356 value); 60357 } 60358 60359 int 60360 bcm_loop_stat_sync_multi_get( 60361 int unit, 60362 bcm_port_t port, 60363 int nstat, 60364 bcm_stat_val_t * stat_arr, 60365 uint64 * value_arr) 60366 { 60367 return bcm_stat_sync_multi_get( 60368 BCM_CONTROL(unit)->unit, 60369 port, 60370 nstat, 60371 stat_arr, 60372 value_arr); 60373 } 60374 60375 int 60376 bcm_loop_stat_sync_multi_get32( 60377 int unit, 60378 bcm_port_t port, 60379 int nstat, 60380 bcm_stat_val_t * stat_arr, 60381 uint32 * value_arr) 60382 { 60383 return bcm_stat_sync_multi_get32( 60384 BCM_CONTROL(unit)->unit, 60385 port, 60386 nstat, 60387 stat_arr, 60388 value_arr); 60389 } 60390 60391 int 60392 bcm_loop_stat_threshold_get( 60393 int unit, 60394 bcm_port_t port, 60395 bcm_stat_val_t stat, 60396 bcm_stat_threshold_t * threshold) 60397 { 60398 return bcm_stat_threshold_get( 60399 BCM_CONTROL(unit)->unit, 60400 port, 60401 stat, 60402 threshold); 60403 } 60404 60405 int 60406 bcm_loop_stat_threshold_set( 60407 int unit, 60408 bcm_port_t port, 60409 bcm_stat_val_t stat, 60410 bcm_stat_threshold_t * threshold) 60411 { 60412 return bcm_stat_threshold_set( 60413 BCM_CONTROL(unit)->unit, 60414 port, 60415 stat, 60416 threshold); 60417 } 60418 60419 /* bcm_stat_value_t_init not dispatchable */ 60420 60421 int 60422 bcm_loop_stg_clear( 60423 int unit) 60424 { 60425 return bcm_stg_clear( 60426 BCM_CONTROL(unit)->unit); 60427 } 60428 60429 int 60430 bcm_loop_stg_count_get( 60431 int unit, 60432 int * max_stg) 60433 { 60434 return bcm_stg_count_get( 60435 BCM_CONTROL(unit)->unit, 60436 max_stg); 60437 } 60438 60439 int 60440 bcm_loop_stg_create( 60441 int unit, 60442 bcm_stg_t * stg_ptr) 60443 { 60444 return bcm_stg_create( 60445 BCM_CONTROL(unit)->unit, 60446 stg_ptr); 60447 } 60448 60449 int 60450 bcm_loop_stg_create_id( 60451 int unit, 60452 bcm_stg_t stg) 60453 { 60454 return bcm_stg_create_id( 60455 BCM_CONTROL(unit)->unit, 60456 stg); 60457 } 60458 60459 int 60460 bcm_loop_stg_default_get( 60461 int unit, 60462 bcm_stg_t * stg_ptr) 60463 { 60464 return bcm_stg_default_get( 60465 BCM_CONTROL(unit)->unit, 60466 stg_ptr); 60467 } 60468 60469 int 60470 bcm_loop_stg_default_set( 60471 int unit, 60472 bcm_stg_t stg) 60473 { 60474 return bcm_stg_default_set( 60475 BCM_CONTROL(unit)->unit, 60476 stg); 60477 } 60478 60479 int 60480 bcm_loop_stg_destroy( 60481 int unit, 60482 bcm_stg_t stg) 60483 { 60484 return bcm_stg_destroy( 60485 BCM_CONTROL(unit)->unit, 60486 stg); 60487 } 60488 60489 int 60490 bcm_loop_stg_init( 60491 int unit) 60492 { 60493 return bcm_stg_init( 60494 BCM_CONTROL(unit)->unit); 60495 } 60496 60497 int 60498 bcm_loop_stg_list( 60499 int unit, 60500 bcm_stg_t ** list, 60501 int * count) 60502 { 60503 return bcm_stg_list( 60504 BCM_CONTROL(unit)->unit, 60505 list, 60506 count); 60507 } 60508 60509 int 60510 bcm_loop_stg_list_destroy( 60511 int unit, 60512 bcm_stg_t * list, 60513 int count) 60514 { 60515 return bcm_stg_list_destroy( 60516 BCM_CONTROL(unit)->unit, 60517 list, 60518 count); 60519 } 60520 60521 int 60522 bcm_loop_stg_stp_get( 60523 int unit, 60524 bcm_stg_t stg, 60525 bcm_port_t port, 60526 int * stp_state) 60527 { 60528 return bcm_stg_stp_get( 60529 BCM_CONTROL(unit)->unit, 60530 stg, 60531 port, 60532 stp_state); 60533 } 60534 60535 int 60536 bcm_loop_stg_stp_set( 60537 int unit, 60538 bcm_stg_t stg, 60539 bcm_port_t port, 60540 int stp_state) 60541 { 60542 return bcm_stg_stp_set( 60543 BCM_CONTROL(unit)->unit, 60544 stg, 60545 port, 60546 stp_state); 60547 } 60548 60549 int 60550 bcm_loop_stg_vlan_add( 60551 int unit, 60552 bcm_stg_t stg, 60553 bcm_vlan_t vid) 60554 { 60555 return bcm_stg_vlan_add( 60556 BCM_CONTROL(unit)->unit, 60557 stg, 60558 vid); 60559 } 60560 60561 int 60562 bcm_loop_stg_vlan_list( 60563 int unit, 60564 bcm_stg_t stg, 60565 bcm_vlan_t ** list, 60566 int * count) 60567 { 60568 return bcm_stg_vlan_list( 60569 BCM_CONTROL(unit)->unit, 60570 stg, 60571 list, 60572 count); 60573 } 60574 60575 int 60576 bcm_loop_stg_vlan_list_destroy( 60577 int unit, 60578 bcm_vlan_t * list, 60579 int count) 60580 { 60581 return bcm_stg_vlan_list_destroy( 60582 BCM_CONTROL(unit)->unit, 60583 list, 60584 count); 60585 } 60586 60587 int 60588 bcm_loop_stg_vlan_remove( 60589 int unit, 60590 bcm_stg_t stg, 60591 bcm_vlan_t vid) 60592 { 60593 return bcm_stg_vlan_remove( 60594 BCM_CONTROL(unit)->unit, 60595 stg, 60596 vid); 60597 } 60598 60599 int 60600 bcm_loop_stg_vlan_remove_all( 60601 int unit, 60602 bcm_stg_t stg) 60603 { 60604 return bcm_stg_vlan_remove_all( 60605 BCM_CONTROL(unit)->unit, 60606 stg); 60607 } 60608 60609 int 60610 bcm_loop_stk_domain_stk_trunk_add( 60611 int unit, 60612 int tm_domain, 60613 bcm_trunk_t stk_trunk) 60614 { 60615 return bcm_stk_domain_stk_trunk_add( 60616 BCM_CONTROL(unit)->unit, 60617 tm_domain, 60618 stk_trunk); 60619 } 60620 60621 int 60622 bcm_loop_stk_domain_stk_trunk_delete( 60623 int unit, 60624 int tm_domain, 60625 bcm_trunk_t stk_trunk) 60626 { 60627 return bcm_stk_domain_stk_trunk_delete( 60628 BCM_CONTROL(unit)->unit, 60629 tm_domain, 60630 stk_trunk); 60631 } 60632 60633 int 60634 bcm_loop_stk_domain_stk_trunk_get( 60635 int unit, 60636 bcm_trunk_t stk_trunk, 60637 int domain_max, 60638 int * domain_array, 60639 int * domain_count) 60640 { 60641 return bcm_stk_domain_stk_trunk_get( 60642 BCM_CONTROL(unit)->unit, 60643 stk_trunk, 60644 domain_max, 60645 domain_array, 60646 domain_count); 60647 } 60648 60649 int 60650 bcm_loop_stk_fmod_lmod_mapping_get( 60651 int unit, 60652 bcm_port_t port, 60653 bcm_module_t * fmod, 60654 bcm_module_t * lmod) 60655 { 60656 return bcm_stk_fmod_lmod_mapping_get( 60657 BCM_CONTROL(unit)->unit, 60658 port, 60659 fmod, 60660 lmod); 60661 } 60662 60663 int 60664 bcm_loop_stk_fmod_lmod_mapping_set( 60665 int unit, 60666 bcm_port_t port, 60667 bcm_module_t fmod, 60668 bcm_module_t lmod) 60669 { 60670 return bcm_stk_fmod_lmod_mapping_set( 60671 BCM_CONTROL(unit)->unit, 60672 port, 60673 fmod, 60674 lmod); 60675 } 60676 60677 int 60678 bcm_loop_stk_fmod_smod_mapping_get( 60679 int unit, 60680 bcm_port_t port, 60681 bcm_module_t fmod, 60682 bcm_module_t * smod, 60683 bcm_port_t * sport, 60684 uint32 * nports) 60685 { 60686 return bcm_stk_fmod_smod_mapping_get( 60687 BCM_CONTROL(unit)->unit, 60688 port, 60689 fmod, 60690 smod, 60691 sport, 60692 nports); 60693 } 60694 60695 int 60696 bcm_loop_stk_fmod_smod_mapping_set( 60697 int unit, 60698 bcm_port_t port, 60699 bcm_module_t fmod, 60700 bcm_module_t smod, 60701 bcm_port_t sport, 60702 uint32 nports) 60703 { 60704 return bcm_stk_fmod_smod_mapping_set( 60705 BCM_CONTROL(unit)->unit, 60706 port, 60707 fmod, 60708 smod, 60709 sport, 60710 nports); 60711 } 60712 60713 int 60714 bcm_loop_stk_gport_sysport_get( 60715 int unit, 60716 bcm_gport_t gport, 60717 bcm_gport_t * sysport) 60718 { 60719 return bcm_stk_gport_sysport_get( 60720 BCM_CONTROL(unit)->unit, 60721 gport, 60722 sysport); 60723 } 60724 60725 int 60726 bcm_loop_stk_init( 60727 int unit) 60728 { 60729 return bcm_stk_init( 60730 BCM_CONTROL(unit)->unit); 60731 } 60732 60733 int 60734 bcm_loop_stk_mode_get( 60735 int unit, 60736 uint32 * flags) 60737 { 60738 return bcm_stk_mode_get( 60739 BCM_CONTROL(unit)->unit, 60740 flags); 60741 } 60742 60743 int 60744 bcm_loop_stk_mode_set( 60745 int unit, 60746 uint32 flags) 60747 { 60748 return bcm_stk_mode_set( 60749 BCM_CONTROL(unit)->unit, 60750 flags); 60751 } 60752 60753 int 60754 bcm_loop_stk_modid_config_add( 60755 int unit, 60756 bcm_stk_modid_config_t * modid) 60757 { 60758 return bcm_stk_modid_config_add( 60759 BCM_CONTROL(unit)->unit, 60760 modid); 60761 } 60762 60763 int 60764 bcm_loop_stk_modid_config_delete( 60765 int unit, 60766 bcm_stk_modid_config_t * modid) 60767 { 60768 return bcm_stk_modid_config_delete( 60769 BCM_CONTROL(unit)->unit, 60770 modid); 60771 } 60772 60773 int 60774 bcm_loop_stk_modid_config_delete_all( 60775 int unit) 60776 { 60777 return bcm_stk_modid_config_delete_all( 60778 BCM_CONTROL(unit)->unit); 60779 } 60780 60781 int 60782 bcm_loop_stk_modid_config_get( 60783 int unit, 60784 bcm_stk_modid_config_t * modid) 60785 { 60786 return bcm_stk_modid_config_get( 60787 BCM_CONTROL(unit)->unit, 60788 modid); 60789 } 60790 60791 int 60792 bcm_loop_stk_modid_config_get_all( 60793 int unit, 60794 int modid_max, 60795 bcm_stk_modid_config_t * modid_array, 60796 int * modid_count) 60797 { 60798 return bcm_stk_modid_config_get_all( 60799 BCM_CONTROL(unit)->unit, 60800 modid_max, 60801 modid_array, 60802 modid_count); 60803 } 60804 60805 int 60806 bcm_loop_stk_modid_config_set( 60807 int unit, 60808 bcm_stk_modid_config_t * modid) 60809 { 60810 return bcm_stk_modid_config_set( 60811 BCM_CONTROL(unit)->unit, 60812 modid); 60813 } 60814 60815 /* bcm_stk_modid_config_t_init not dispatchable */ 60816 60817 int 60818 bcm_loop_stk_modid_count( 60819 int unit, 60820 int * num_modid) 60821 { 60822 return bcm_stk_modid_count( 60823 BCM_CONTROL(unit)->unit, 60824 num_modid); 60825 } 60826 60827 int 60828 bcm_loop_stk_modid_domain_add( 60829 int unit, 60830 int modid, 60831 int tm_domain) 60832 { 60833 return bcm_stk_modid_domain_add( 60834 BCM_CONTROL(unit)->unit, 60835 modid, 60836 tm_domain); 60837 } 60838 60839 int 60840 bcm_loop_stk_modid_domain_delete( 60841 int unit, 60842 int modid, 60843 int tm_domain) 60844 { 60845 return bcm_stk_modid_domain_delete( 60846 BCM_CONTROL(unit)->unit, 60847 modid, 60848 tm_domain); 60849 } 60850 60851 int 60852 bcm_loop_stk_modid_domain_get( 60853 int unit, 60854 int tm_domain, 60855 int mod_max, 60856 int * mod_array, 60857 int * mod_count) 60858 { 60859 return bcm_stk_modid_domain_get( 60860 BCM_CONTROL(unit)->unit, 60861 tm_domain, 60862 mod_max, 60863 mod_array, 60864 mod_count); 60865 } 60866 60867 int 60868 bcm_loop_stk_modid_get( 60869 int unit, 60870 int * modid) 60871 { 60872 return bcm_stk_modid_get( 60873 BCM_CONTROL(unit)->unit, 60874 modid); 60875 } 60876 60877 int 60878 bcm_loop_stk_modid_set( 60879 int unit, 60880 int modid) 60881 { 60882 return bcm_stk_modid_set( 60883 BCM_CONTROL(unit)->unit, 60884 modid); 60885 } 60886 60887 int 60888 bcm_loop_stk_modmap_enable_get( 60889 int unit, 60890 bcm_port_t port, 60891 int * enable) 60892 { 60893 return bcm_stk_modmap_enable_get( 60894 BCM_CONTROL(unit)->unit, 60895 port, 60896 enable); 60897 } 60898 60899 int 60900 bcm_loop_stk_modmap_enable_set( 60901 int unit, 60902 bcm_port_t port, 60903 int enable) 60904 { 60905 return bcm_stk_modmap_enable_set( 60906 BCM_CONTROL(unit)->unit, 60907 port, 60908 enable); 60909 } 60910 60911 int 60912 bcm_loop_stk_modmap_map( 60913 int unit, 60914 int setget, 60915 bcm_module_t mod_in, 60916 bcm_port_t port_in, 60917 bcm_module_t * mod_out, 60918 bcm_port_t * port_out) 60919 { 60920 return bcm_stk_modmap_map( 60921 BCM_CONTROL(unit)->unit, 60922 setget, 60923 mod_in, 60924 port_in, 60925 mod_out, 60926 port_out); 60927 } 60928 60929 int 60930 bcm_loop_stk_modmap_register( 60931 int unit, 60932 bcm_stk_modmap_cb_t func) 60933 { 60934 return bcm_stk_modmap_register( 60935 BCM_CONTROL(unit)->unit, 60936 func); 60937 } 60938 60939 int 60940 bcm_loop_stk_modmap_unregister( 60941 int unit) 60942 { 60943 return bcm_stk_modmap_unregister( 60944 BCM_CONTROL(unit)->unit); 60945 } 60946 60947 int 60948 bcm_loop_stk_modport_add( 60949 int unit, 60950 int modid, 60951 bcm_port_t port) 60952 { 60953 return bcm_stk_modport_add( 60954 BCM_CONTROL(unit)->unit, 60955 modid, 60956 port); 60957 } 60958 60959 int 60960 bcm_loop_stk_modport_clear( 60961 int unit, 60962 int modid) 60963 { 60964 return bcm_stk_modport_clear( 60965 BCM_CONTROL(unit)->unit, 60966 modid); 60967 } 60968 60969 int 60970 bcm_loop_stk_modport_clear_all( 60971 int unit) 60972 { 60973 return bcm_stk_modport_clear_all( 60974 BCM_CONTROL(unit)->unit); 60975 } 60976 60977 int 60978 bcm_loop_stk_modport_delete( 60979 int unit, 60980 int modid, 60981 bcm_port_t port) 60982 { 60983 return bcm_stk_modport_delete( 60984 BCM_CONTROL(unit)->unit, 60985 modid, 60986 port); 60987 } 60988 60989 int 60990 bcm_loop_stk_modport_get( 60991 int unit, 60992 int modid, 60993 int * port) 60994 { 60995 return bcm_stk_modport_get( 60996 BCM_CONTROL(unit)->unit, 60997 modid, 60998 port); 60999 } 61000 61001 int 61002 bcm_loop_stk_modport_get_all( 61003 int unit, 61004 int modid, 61005 int port_max, 61006 int * port_array, 61007 int * port_count) 61008 { 61009 return bcm_stk_modport_get_all( 61010 BCM_CONTROL(unit)->unit, 61011 modid, 61012 port_max, 61013 port_array, 61014 port_count); 61015 } 61016 61017 int 61018 bcm_loop_stk_modport_remote_map_get( 61019 int unit, 61020 bcm_gport_t port, 61021 uint32 flags, 61022 int * remote_modid, 61023 bcm_port_t * remote_port) 61024 { 61025 return bcm_stk_modport_remote_map_get( 61026 BCM_CONTROL(unit)->unit, 61027 port, 61028 flags, 61029 remote_modid, 61030 remote_port); 61031 } 61032 61033 int 61034 bcm_loop_stk_modport_remote_map_set( 61035 int unit, 61036 bcm_gport_t port, 61037 uint32 flags, 61038 int remote_modid, 61039 bcm_port_t remote_port) 61040 { 61041 return bcm_stk_modport_remote_map_set( 61042 BCM_CONTROL(unit)->unit, 61043 port, 61044 flags, 61045 remote_modid, 61046 remote_port); 61047 } 61048 61049 int 61050 bcm_loop_stk_modport_set( 61051 int unit, 61052 int modid, 61053 int port) 61054 { 61055 return bcm_stk_modport_set( 61056 BCM_CONTROL(unit)->unit, 61057 modid, 61058 port); 61059 } 61060 61061 int 61062 bcm_loop_stk_module_control_get( 61063 int unit, 61064 uint32 flags, 61065 bcm_module_t module, 61066 bcm_stk_module_control_t control, 61067 int * arg) 61068 { 61069 return bcm_stk_module_control_get( 61070 BCM_CONTROL(unit)->unit, 61071 flags, 61072 module, 61073 control, 61074 arg); 61075 } 61076 61077 int 61078 bcm_loop_stk_module_control_set( 61079 int unit, 61080 uint32 flags, 61081 bcm_module_t module, 61082 bcm_stk_module_control_t control, 61083 int arg) 61084 { 61085 return bcm_stk_module_control_set( 61086 BCM_CONTROL(unit)->unit, 61087 flags, 61088 module, 61089 control, 61090 arg); 61091 } 61092 61093 int 61094 bcm_loop_stk_module_enable( 61095 int unit, 61096 bcm_module_t modid, 61097 int nports, 61098 int enable) 61099 { 61100 return bcm_stk_module_enable( 61101 BCM_CONTROL(unit)->unit, 61102 modid, 61103 nports, 61104 enable); 61105 } 61106 61107 int 61108 bcm_loop_stk_module_max_get( 61109 int unit, 61110 uint32 flags, 61111 bcm_module_t * max_module) 61112 { 61113 return bcm_stk_module_max_get( 61114 BCM_CONTROL(unit)->unit, 61115 flags, 61116 max_module); 61117 } 61118 61119 int 61120 bcm_loop_stk_module_max_set( 61121 int unit, 61122 uint32 flags, 61123 bcm_module_t max_module) 61124 { 61125 return bcm_stk_module_max_set( 61126 BCM_CONTROL(unit)->unit, 61127 flags, 61128 max_module); 61129 } 61130 61131 int 61132 bcm_loop_stk_my_modid_get( 61133 int unit, 61134 int * my_modid) 61135 { 61136 return bcm_stk_my_modid_get( 61137 BCM_CONTROL(unit)->unit, 61138 my_modid); 61139 } 61140 61141 int 61142 bcm_loop_stk_my_modid_set( 61143 int unit, 61144 int my_modid) 61145 { 61146 return bcm_stk_my_modid_set( 61147 BCM_CONTROL(unit)->unit, 61148 my_modid); 61149 } 61150 61151 int 61152 bcm_loop_stk_pbmp_get( 61153 int unit, 61154 bcm_pbmp_t * cur_pbm, 61155 bcm_pbmp_t * inactive_pbm) 61156 { 61157 return bcm_stk_pbmp_get( 61158 BCM_CONTROL(unit)->unit, 61159 cur_pbm, 61160 inactive_pbm); 61161 } 61162 61163 int 61164 bcm_loop_stk_port_get( 61165 int unit, 61166 bcm_port_t port, 61167 uint32 * flags) 61168 { 61169 return bcm_stk_port_get( 61170 BCM_CONTROL(unit)->unit, 61171 port, 61172 flags); 61173 } 61174 61175 int 61176 bcm_loop_stk_port_modmap_group_get( 61177 int unit, 61178 bcm_port_t port, 61179 int * group) 61180 { 61181 return bcm_stk_port_modmap_group_get( 61182 BCM_CONTROL(unit)->unit, 61183 port, 61184 group); 61185 } 61186 61187 int 61188 bcm_loop_stk_port_modmap_group_max_get( 61189 int unit, 61190 int * max_group) 61191 { 61192 return bcm_stk_port_modmap_group_max_get( 61193 BCM_CONTROL(unit)->unit, 61194 max_group); 61195 } 61196 61197 int 61198 bcm_loop_stk_port_modmap_group_set( 61199 int unit, 61200 bcm_port_t port, 61201 int group) 61202 { 61203 return bcm_stk_port_modmap_group_set( 61204 BCM_CONTROL(unit)->unit, 61205 port, 61206 group); 61207 } 61208 61209 int 61210 bcm_loop_stk_port_modport_add( 61211 int unit, 61212 bcm_port_t ing_port, 61213 bcm_module_t dest_modid, 61214 bcm_port_t dest_port) 61215 { 61216 return bcm_stk_port_modport_add( 61217 BCM_CONTROL(unit)->unit, 61218 ing_port, 61219 dest_modid, 61220 dest_port); 61221 } 61222 61223 int 61224 bcm_loop_stk_port_modport_clear( 61225 int unit, 61226 bcm_port_t ing_port, 61227 bcm_module_t dest_modid) 61228 { 61229 return bcm_stk_port_modport_clear( 61230 BCM_CONTROL(unit)->unit, 61231 ing_port, 61232 dest_modid); 61233 } 61234 61235 int 61236 bcm_loop_stk_port_modport_clear_all( 61237 int unit, 61238 bcm_port_t ing_port) 61239 { 61240 return bcm_stk_port_modport_clear_all( 61241 BCM_CONTROL(unit)->unit, 61242 ing_port); 61243 } 61244 61245 int 61246 bcm_loop_stk_port_modport_delete( 61247 int unit, 61248 bcm_port_t ing_port, 61249 bcm_module_t dest_modid, 61250 bcm_port_t dest_port) 61251 { 61252 return bcm_stk_port_modport_delete( 61253 BCM_CONTROL(unit)->unit, 61254 ing_port, 61255 dest_modid, 61256 dest_port); 61257 } 61258 61259 int 61260 bcm_loop_stk_port_modport_get( 61261 int unit, 61262 bcm_port_t ing_port, 61263 bcm_module_t dest_modid, 61264 bcm_port_t * dest_port) 61265 { 61266 return bcm_stk_port_modport_get( 61267 BCM_CONTROL(unit)->unit, 61268 ing_port, 61269 dest_modid, 61270 dest_port); 61271 } 61272 61273 int 61274 bcm_loop_stk_port_modport_get_all( 61275 int unit, 61276 bcm_port_t ing_port, 61277 bcm_module_t dest_modid, 61278 int dest_port_max, 61279 bcm_port_t * dest_port_array, 61280 int * dest_port_count) 61281 { 61282 return bcm_stk_port_modport_get_all( 61283 BCM_CONTROL(unit)->unit, 61284 ing_port, 61285 dest_modid, 61286 dest_port_max, 61287 dest_port_array, 61288 dest_port_count); 61289 } 61290 61291 int 61292 bcm_loop_stk_port_modport_set( 61293 int unit, 61294 bcm_port_t ing_port, 61295 bcm_module_t dest_modid, 61296 bcm_port_t dest_port) 61297 { 61298 return bcm_stk_port_modport_set( 61299 BCM_CONTROL(unit)->unit, 61300 ing_port, 61301 dest_modid, 61302 dest_port); 61303 } 61304 61305 int 61306 bcm_loop_stk_port_set( 61307 int unit, 61308 bcm_port_t port, 61309 uint32 flags) 61310 { 61311 return bcm_stk_port_set( 61312 BCM_CONTROL(unit)->unit, 61313 port, 61314 flags); 61315 } 61316 61317 int 61318 bcm_loop_stk_sysport_gport_get( 61319 int unit, 61320 bcm_gport_t sysport, 61321 bcm_gport_t * gport) 61322 { 61323 return bcm_stk_sysport_gport_get( 61324 BCM_CONTROL(unit)->unit, 61325 sysport, 61326 gport); 61327 } 61328 61329 int 61330 bcm_loop_stk_sysport_gport_set( 61331 int unit, 61332 bcm_gport_t sysport, 61333 bcm_gport_t gport) 61334 { 61335 return bcm_stk_sysport_gport_set( 61336 BCM_CONTROL(unit)->unit, 61337 sysport, 61338 gport); 61339 } 61340 61341 int 61342 bcm_loop_stk_system_gport_map_create( 61343 int unit, 61344 bcm_stk_system_gport_map_t * sys_gport_map) 61345 { 61346 return bcm_stk_system_gport_map_create( 61347 BCM_CONTROL(unit)->unit, 61348 sys_gport_map); 61349 } 61350 61351 int 61352 bcm_loop_stk_system_gport_map_destroy( 61353 int unit, 61354 bcm_gport_t system_gport) 61355 { 61356 return bcm_stk_system_gport_map_destroy( 61357 BCM_CONTROL(unit)->unit, 61358 system_gport); 61359 } 61360 61361 int 61362 bcm_loop_stk_system_gport_map_get( 61363 int unit, 61364 bcm_stk_system_gport_map_t * sys_gport_map) 61365 { 61366 return bcm_stk_system_gport_map_get( 61367 BCM_CONTROL(unit)->unit, 61368 sys_gport_map); 61369 } 61370 61371 int 61372 bcm_loop_stk_ucbitmap_del( 61373 int unit, 61374 bcm_port_t port, 61375 int modid, 61376 bcm_pbmp_t pbmp) 61377 { 61378 return bcm_stk_ucbitmap_del( 61379 BCM_CONTROL(unit)->unit, 61380 port, 61381 modid, 61382 pbmp); 61383 } 61384 61385 int 61386 bcm_loop_stk_ucbitmap_get( 61387 int unit, 61388 int port, 61389 int modid, 61390 bcm_pbmp_t * pbmp) 61391 { 61392 return bcm_stk_ucbitmap_get( 61393 BCM_CONTROL(unit)->unit, 61394 port, 61395 modid, 61396 pbmp); 61397 } 61398 61399 int 61400 bcm_loop_stk_ucbitmap_set( 61401 int unit, 61402 int port, 61403 int modid, 61404 bcm_pbmp_t pbmp) 61405 { 61406 return bcm_stk_ucbitmap_set( 61407 BCM_CONTROL(unit)->unit, 61408 port, 61409 modid, 61410 pbmp); 61411 } 61412 61413 int 61414 bcm_loop_stk_update_callback_register( 61415 int unit, 61416 bcm_stk_cb_f cb, 61417 void * cookie) 61418 { 61419 return bcm_stk_update_callback_register( 61420 BCM_CONTROL(unit)->unit, 61421 cb, 61422 cookie); 61423 } 61424 61425 int 61426 bcm_loop_stk_update_callback_unregister( 61427 int unit, 61428 bcm_stk_cb_f cb, 61429 void * cookie) 61430 { 61431 return bcm_stk_update_callback_unregister( 61432 BCM_CONTROL(unit)->unit, 61433 cb, 61434 cookie); 61435 } 61436 61437 int 61438 bcm_loop_subport_cleanup( 61439 int unit) 61440 { 61441 return bcm_subport_cleanup( 61442 BCM_CONTROL(unit)->unit); 61443 } 61444 61445 /* bcm_subport_config_t_init not dispatchable */ 61446 61447 int 61448 bcm_loop_subport_gport_modport_get( 61449 int unit, 61450 bcm_gport_t subport_gport, 61451 bcm_module_t * module, 61452 bcm_port_t * port) 61453 { 61454 return bcm_subport_gport_modport_get( 61455 BCM_CONTROL(unit)->unit, 61456 subport_gport, 61457 module, 61458 port); 61459 } 61460 61461 /* bcm_subport_group_config_t_init not dispatchable */ 61462 61463 int 61464 bcm_loop_subport_group_create( 61465 int unit, 61466 bcm_subport_group_config_t * config, 61467 bcm_gport_t * group) 61468 { 61469 return bcm_subport_group_create( 61470 BCM_CONTROL(unit)->unit, 61471 config, 61472 group); 61473 } 61474 61475 int 61476 bcm_loop_subport_group_destroy( 61477 int unit, 61478 bcm_gport_t group) 61479 { 61480 return bcm_subport_group_destroy( 61481 BCM_CONTROL(unit)->unit, 61482 group); 61483 } 61484 61485 int 61486 bcm_loop_subport_group_get( 61487 int unit, 61488 bcm_gport_t group, 61489 bcm_subport_group_config_t * config) 61490 { 61491 return bcm_subport_group_get( 61492 BCM_CONTROL(unit)->unit, 61493 group, 61494 config); 61495 } 61496 61497 int 61498 bcm_loop_subport_group_linkphy_config_get( 61499 int unit, 61500 bcm_gport_t port, 61501 bcm_subport_group_linkphy_config_t * linkphy_config) 61502 { 61503 return bcm_subport_group_linkphy_config_get( 61504 BCM_CONTROL(unit)->unit, 61505 port, 61506 linkphy_config); 61507 } 61508 61509 int 61510 bcm_loop_subport_group_linkphy_config_set( 61511 int unit, 61512 bcm_gport_t port, 61513 bcm_subport_group_linkphy_config_t * linkphy_config) 61514 { 61515 return bcm_subport_group_linkphy_config_set( 61516 BCM_CONTROL(unit)->unit, 61517 port, 61518 linkphy_config); 61519 } 61520 61521 /* bcm_subport_group_linkphy_config_t_init not dispatchable */ 61522 61523 int 61524 bcm_loop_subport_group_traverse( 61525 int unit, 61526 bcm_gport_t subport_group, 61527 bcm_subport_port_traverse_cb cb, 61528 void * user_data) 61529 { 61530 return bcm_subport_group_traverse( 61531 BCM_CONTROL(unit)->unit, 61532 subport_group, 61533 cb, 61534 user_data); 61535 } 61536 61537 int 61538 bcm_loop_subport_init( 61539 int unit) 61540 { 61541 return bcm_subport_init( 61542 BCM_CONTROL(unit)->unit); 61543 } 61544 61545 /* bcm_subport_linkphy_rx_error_reg_info_t_init not dispatchable */ 61546 61547 int 61548 bcm_loop_subport_linkphy_rx_error_register( 61549 int unit, 61550 bcm_subport_linkphy_rx_errors_t errors, 61551 bcm_subport_linkphy_rx_error_reg_info_t * reg_info, 61552 void * user_data) 61553 { 61554 return bcm_subport_linkphy_rx_error_register( 61555 BCM_CONTROL(unit)->unit, 61556 errors, 61557 reg_info, 61558 user_data); 61559 } 61560 61561 int 61562 bcm_loop_subport_linkphy_rx_error_unregister( 61563 int unit, 61564 bcm_subport_linkphy_rx_errors_t errors) 61565 { 61566 return bcm_subport_linkphy_rx_error_unregister( 61567 BCM_CONTROL(unit)->unit, 61568 errors); 61569 } 61570 61571 int 61572 bcm_loop_subport_port_add( 61573 int unit, 61574 bcm_subport_config_t * config, 61575 bcm_gport_t * port) 61576 { 61577 return bcm_subport_port_add( 61578 BCM_CONTROL(unit)->unit, 61579 config, 61580 port); 61581 } 61582 61583 int 61584 bcm_loop_subport_port_delete( 61585 int unit, 61586 bcm_gport_t port) 61587 { 61588 return bcm_subport_port_delete( 61589 BCM_CONTROL(unit)->unit, 61590 port); 61591 } 61592 61593 int 61594 bcm_loop_subport_port_get( 61595 int unit, 61596 bcm_gport_t port, 61597 bcm_subport_config_t * config) 61598 { 61599 return bcm_subport_port_get( 61600 BCM_CONTROL(unit)->unit, 61601 port, 61602 config); 61603 } 61604 61605 int 61606 bcm_loop_subport_port_stat_get( 61607 int unit, 61608 bcm_gport_t port, 61609 int stream_id, 61610 bcm_subport_stat_t stat_type, 61611 uint64 * val) 61612 { 61613 return bcm_subport_port_stat_get( 61614 BCM_CONTROL(unit)->unit, 61615 port, 61616 stream_id, 61617 stat_type, 61618 val); 61619 } 61620 61621 int 61622 bcm_loop_subport_port_stat_set( 61623 int unit, 61624 bcm_gport_t port, 61625 int stream_id, 61626 bcm_subport_stat_t stat_type, 61627 uint64 val) 61628 { 61629 return bcm_subport_port_stat_set( 61630 BCM_CONTROL(unit)->unit, 61631 port, 61632 stream_id, 61633 stat_type, 61634 val); 61635 } 61636 61637 int 61638 bcm_loop_subport_port_traverse( 61639 int unit, 61640 bcm_subport_port_traverse_cb cb, 61641 void * user_data) 61642 { 61643 return bcm_subport_port_traverse( 61644 BCM_CONTROL(unit)->unit, 61645 cb, 61646 user_data); 61647 } 61648 61649 int 61650 bcm_loop_sum_config_get( 61651 int unit, 61652 bcm_sum_config_t * config_data, 61653 bcm_pbmp_t * pbmp) 61654 { 61655 return bcm_sum_config_get( 61656 BCM_CONTROL(unit)->unit, 61657 config_data, 61658 pbmp); 61659 } 61660 61661 int 61662 bcm_loop_sum_config_set( 61663 int unit, 61664 bcm_sum_config_t * config_data, 61665 bcm_pbmp_t pbmp) 61666 { 61667 return bcm_sum_config_set( 61668 BCM_CONTROL(unit)->unit, 61669 config_data, 61670 pbmp); 61671 } 61672 61673 /* bcm_sum_config_t_init not dispatchable */ 61674 61675 int 61676 bcm_loop_sum_detach( 61677 int unit) 61678 { 61679 return bcm_sum_detach( 61680 BCM_CONTROL(unit)->unit); 61681 } 61682 61683 int 61684 bcm_loop_sum_init( 61685 int unit) 61686 { 61687 return bcm_sum_init( 61688 BCM_CONTROL(unit)->unit); 61689 } 61690 61691 int 61692 bcm_loop_sum_stat_get( 61693 int unit, 61694 uint32 max_samples, 61695 bcm_sum_stat_info_t * stats_data, 61696 uint32 * num_samples, 61697 bcm_sum_stat_type_t stat_type, 61698 uint32 usec_sample_period) 61699 { 61700 return bcm_sum_stat_get( 61701 BCM_CONTROL(unit)->unit, 61702 max_samples, 61703 stats_data, 61704 num_samples, 61705 stat_type, 61706 usec_sample_period); 61707 } 61708 61709 /* bcm_sum_stat_info_t_init not dispatchable */ 61710 61711 int 61712 bcm_loop_switch_agm_create( 61713 int unit, 61714 uint32 options, 61715 bcm_switch_agm_info_t * agm_info) 61716 { 61717 return bcm_switch_agm_create( 61718 BCM_CONTROL(unit)->unit, 61719 options, 61720 agm_info); 61721 } 61722 61723 int 61724 bcm_loop_switch_agm_destroy( 61725 int unit, 61726 bcm_switch_agm_id_t agm_id) 61727 { 61728 return bcm_switch_agm_destroy( 61729 BCM_CONTROL(unit)->unit, 61730 agm_id); 61731 } 61732 61733 int 61734 bcm_loop_switch_agm_enable_get( 61735 int unit, 61736 bcm_switch_agm_id_t agm_id, 61737 int * enable) 61738 { 61739 return bcm_switch_agm_enable_get( 61740 BCM_CONTROL(unit)->unit, 61741 agm_id, 61742 enable); 61743 } 61744 61745 int 61746 bcm_loop_switch_agm_enable_set( 61747 int unit, 61748 bcm_switch_agm_id_t agm_id, 61749 int enable) 61750 { 61751 return bcm_switch_agm_enable_set( 61752 BCM_CONTROL(unit)->unit, 61753 agm_id, 61754 enable); 61755 } 61756 61757 int 61758 bcm_loop_switch_agm_get( 61759 int unit, 61760 bcm_switch_agm_info_t * agm_info) 61761 { 61762 return bcm_switch_agm_get( 61763 BCM_CONTROL(unit)->unit, 61764 agm_info); 61765 } 61766 61767 /* bcm_switch_agm_info_t_init not dispatchable */ 61768 61769 int 61770 bcm_loop_switch_agm_l3_ecmp_attach_get( 61771 int unit, 61772 bcm_switch_agm_id_t agm_id, 61773 bcm_if_t * l3_ecmp_id) 61774 { 61775 return bcm_switch_agm_l3_ecmp_attach_get( 61776 BCM_CONTROL(unit)->unit, 61777 agm_id, 61778 l3_ecmp_id); 61779 } 61780 61781 int 61782 bcm_loop_switch_agm_stat_clear( 61783 int unit, 61784 bcm_switch_agm_id_t agm_id) 61785 { 61786 return bcm_switch_agm_stat_clear( 61787 BCM_CONTROL(unit)->unit, 61788 agm_id); 61789 } 61790 61791 int 61792 bcm_loop_switch_agm_stat_get( 61793 int unit, 61794 bcm_switch_agm_id_t agm_id, 61795 int nstat, 61796 bcm_switch_agm_stat_t * stat_arr) 61797 { 61798 return bcm_switch_agm_stat_get( 61799 BCM_CONTROL(unit)->unit, 61800 agm_id, 61801 nstat, 61802 stat_arr); 61803 } 61804 61805 /* bcm_switch_agm_stat_t_init not dispatchable */ 61806 61807 int 61808 bcm_loop_switch_agm_traverse( 61809 int unit, 61810 int flags, 61811 bcm_switch_agm_traverse_cb trav_fn, 61812 void * user_data) 61813 { 61814 return bcm_switch_agm_traverse( 61815 BCM_CONTROL(unit)->unit, 61816 flags, 61817 trav_fn, 61818 user_data); 61819 } 61820 61821 int 61822 bcm_loop_switch_agm_trunk_attach_get( 61823 int unit, 61824 bcm_switch_agm_id_t agm_id, 61825 bcm_trunk_t * trunk_id) 61826 { 61827 return bcm_switch_agm_trunk_attach_get( 61828 BCM_CONTROL(unit)->unit, 61829 agm_id, 61830 trunk_id); 61831 } 61832 61833 int 61834 bcm_loop_switch_chip_info_get( 61835 int unit, 61836 bcm_switch_chip_info_t info_type, 61837 int max_size, 61838 void * data_buf, 61839 int * actual_size) 61840 { 61841 return bcm_switch_chip_info_get( 61842 BCM_CONTROL(unit)->unit, 61843 info_type, 61844 max_size, 61845 data_buf, 61846 actual_size); 61847 } 61848 61849 int 61850 bcm_loop_switch_control_get( 61851 int unit, 61852 bcm_switch_control_t type, 61853 int * arg) 61854 { 61855 return bcm_switch_control_get( 61856 BCM_CONTROL(unit)->unit, 61857 type, 61858 arg); 61859 } 61860 61861 int 61862 bcm_loop_switch_control_indexed_get( 61863 int unit, 61864 bcm_switch_control_key_t key, 61865 bcm_switch_control_info_t * value) 61866 { 61867 return bcm_switch_control_indexed_get( 61868 BCM_CONTROL(unit)->unit, 61869 key, 61870 value); 61871 } 61872 61873 int 61874 bcm_loop_switch_control_indexed_port_get( 61875 int unit, 61876 bcm_port_t port, 61877 bcm_switch_control_key_t key, 61878 bcm_switch_control_info_t * value) 61879 { 61880 return bcm_switch_control_indexed_port_get( 61881 BCM_CONTROL(unit)->unit, 61882 port, 61883 key, 61884 value); 61885 } 61886 61887 int 61888 bcm_loop_switch_control_indexed_port_set( 61889 int unit, 61890 bcm_port_t port, 61891 bcm_switch_control_key_t key, 61892 bcm_switch_control_info_t value) 61893 { 61894 return bcm_switch_control_indexed_port_set( 61895 BCM_CONTROL(unit)->unit, 61896 port, 61897 key, 61898 value); 61899 } 61900 61901 int 61902 bcm_loop_switch_control_indexed_set( 61903 int unit, 61904 bcm_switch_control_key_t key, 61905 bcm_switch_control_info_t value) 61906 { 61907 return bcm_switch_control_indexed_set( 61908 BCM_CONTROL(unit)->unit, 61909 key, 61910 value); 61911 } 61912 61913 int 61914 bcm_loop_switch_control_port_get( 61915 int unit, 61916 bcm_port_t port, 61917 bcm_switch_control_t type, 61918 int * arg) 61919 { 61920 return bcm_switch_control_port_get( 61921 BCM_CONTROL(unit)->unit, 61922 port, 61923 type, 61924 arg); 61925 } 61926 61927 int 61928 bcm_loop_switch_control_port_set( 61929 int unit, 61930 bcm_port_t port, 61931 bcm_switch_control_t type, 61932 int arg) 61933 { 61934 return bcm_switch_control_port_set( 61935 BCM_CONTROL(unit)->unit, 61936 port, 61937 type, 61938 arg); 61939 } 61940 61941 int 61942 bcm_loop_switch_control_set( 61943 int unit, 61944 bcm_switch_control_t type, 61945 int arg) 61946 { 61947 return bcm_switch_control_set( 61948 BCM_CONTROL(unit)->unit, 61949 type, 61950 arg); 61951 } 61952 61953 int 61954 bcm_loop_switch_dosattack_event_get( 61955 int unit, 61956 uint32 flags, 61957 bcm_switch_dosattack_event_t event, 61958 int * arg) 61959 { 61960 return bcm_switch_dosattack_event_get( 61961 BCM_CONTROL(unit)->unit, 61962 flags, 61963 event, 61964 arg); 61965 } 61966 61967 int 61968 bcm_loop_switch_dosattack_event_set( 61969 int unit, 61970 uint32 flags, 61971 bcm_switch_dosattack_event_t event, 61972 int arg) 61973 { 61974 return bcm_switch_dosattack_event_set( 61975 BCM_CONTROL(unit)->unit, 61976 flags, 61977 event, 61978 arg); 61979 } 61980 61981 int 61982 bcm_loop_switch_dram_init( 61983 int unit, 61984 uint32 flags) 61985 { 61986 return bcm_switch_dram_init( 61987 BCM_CONTROL(unit)->unit, 61988 flags); 61989 } 61990 61991 int 61992 bcm_loop_switch_dram_power_down( 61993 int unit, 61994 uint32 flags) 61995 { 61996 return bcm_switch_dram_power_down( 61997 BCM_CONTROL(unit)->unit, 61998 flags); 61999 } 62000 62001 int 62002 bcm_loop_switch_dram_power_down_cb_register( 62003 int unit, 62004 uint32 flags, 62005 bcm_switch_dram_power_down_callback_t callback, 62006 void * userdata) 62007 { 62008 return bcm_switch_dram_power_down_cb_register( 62009 BCM_CONTROL(unit)->unit, 62010 flags, 62011 callback, 62012 userdata); 62013 } 62014 62015 int 62016 bcm_loop_switch_dram_power_down_cb_unregister( 62017 int unit, 62018 bcm_switch_dram_power_down_callback_t callback, 62019 void * userdata) 62020 { 62021 return bcm_switch_dram_power_down_cb_unregister( 62022 BCM_CONTROL(unit)->unit, 62023 callback, 62024 userdata); 62025 } 62026 62027 int 62028 bcm_loop_switch_dram_traffic_enable_set( 62029 int unit, 62030 uint32 flags, 62031 uint32 enable) 62032 { 62033 return bcm_switch_dram_traffic_enable_set( 62034 BCM_CONTROL(unit)->unit, 62035 flags, 62036 enable); 62037 } 62038 62039 int 62040 bcm_loop_switch_dram_vendor_info_get( 62041 int unit, 62042 bcm_switch_dram_vendor_info_t * info) 62043 { 62044 return bcm_switch_dram_vendor_info_get( 62045 BCM_CONTROL(unit)->unit, 62046 info); 62047 } 62048 62049 int 62050 bcm_loop_switch_encap_create( 62051 int unit, 62052 bcm_switch_encap_info_t * encap_info, 62053 bcm_if_t * encap_id) 62054 { 62055 return bcm_switch_encap_create( 62056 BCM_CONTROL(unit)->unit, 62057 encap_info, 62058 encap_id); 62059 } 62060 62061 int 62062 bcm_loop_switch_encap_destroy( 62063 int unit, 62064 bcm_if_t encap_id) 62065 { 62066 return bcm_switch_encap_destroy( 62067 BCM_CONTROL(unit)->unit, 62068 encap_id); 62069 } 62070 62071 int 62072 bcm_loop_switch_encap_destroy_all( 62073 int unit) 62074 { 62075 return bcm_switch_encap_destroy_all( 62076 BCM_CONTROL(unit)->unit); 62077 } 62078 62079 int 62080 bcm_loop_switch_encap_get( 62081 int unit, 62082 bcm_if_t encap_id, 62083 bcm_switch_encap_info_t * encap_info) 62084 { 62085 return bcm_switch_encap_get( 62086 BCM_CONTROL(unit)->unit, 62087 encap_id, 62088 encap_info); 62089 } 62090 62091 /* bcm_switch_encap_info_t_init not dispatchable */ 62092 62093 int 62094 bcm_loop_switch_encap_set( 62095 int unit, 62096 bcm_if_t encap_id, 62097 bcm_switch_encap_info_t * encap_info) 62098 { 62099 return bcm_switch_encap_set( 62100 BCM_CONTROL(unit)->unit, 62101 encap_id, 62102 encap_info); 62103 } 62104 62105 int 62106 bcm_loop_switch_encap_traverse( 62107 int unit, 62108 bcm_switch_encap_traverse_cb cb_fn, 62109 void * user_data) 62110 { 62111 return bcm_switch_encap_traverse( 62112 BCM_CONTROL(unit)->unit, 62113 cb_fn, 62114 user_data); 62115 } 62116 62117 int 62118 bcm_loop_switch_event_control_get( 62119 int unit, 62120 bcm_switch_event_t event, 62121 bcm_switch_event_control_t type, 62122 uint32 * value) 62123 { 62124 return bcm_switch_event_control_get( 62125 BCM_CONTROL(unit)->unit, 62126 event, 62127 type, 62128 value); 62129 } 62130 62131 int 62132 bcm_loop_switch_event_control_set( 62133 int unit, 62134 bcm_switch_event_t event, 62135 bcm_switch_event_control_t type, 62136 uint32 value) 62137 { 62138 return bcm_switch_event_control_set( 62139 BCM_CONTROL(unit)->unit, 62140 event, 62141 type, 62142 value); 62143 } 62144 62145 int 62146 bcm_loop_switch_event_register( 62147 int unit, 62148 bcm_switch_event_cb_t cb, 62149 void * userdata) 62150 { 62151 return bcm_switch_event_register( 62152 BCM_CONTROL(unit)->unit, 62153 cb, 62154 userdata); 62155 } 62156 62157 int 62158 bcm_loop_switch_event_unregister( 62159 int unit, 62160 bcm_switch_event_cb_t cb, 62161 void * userdata) 62162 { 62163 return bcm_switch_event_unregister( 62164 BCM_CONTROL(unit)->unit, 62165 cb, 62166 userdata); 62167 } 62168 62169 int 62170 bcm_loop_switch_fec_property_get( 62171 int unit, 62172 bcm_switch_fec_property_config_t * fec_config) 62173 { 62174 return bcm_switch_fec_property_get( 62175 BCM_CONTROL(unit)->unit, 62176 fec_config); 62177 } 62178 62179 int 62180 bcm_loop_switch_hard_reset_cb_register( 62181 int unit, 62182 uint32 flags, 62183 bcm_switch_hard_reset_callback_t callback, 62184 void * userdata) 62185 { 62186 return bcm_switch_hard_reset_cb_register( 62187 BCM_CONTROL(unit)->unit, 62188 flags, 62189 callback, 62190 userdata); 62191 } 62192 62193 int 62194 bcm_loop_switch_hard_reset_cb_unregister( 62195 int unit, 62196 bcm_switch_hard_reset_callback_t callback, 62197 void * userdata) 62198 { 62199 return bcm_switch_hard_reset_cb_unregister( 62200 BCM_CONTROL(unit)->unit, 62201 callback, 62202 userdata); 62203 } 62204 62205 int 62206 bcm_loop_switch_hash_banks_config_get( 62207 int unit, 62208 bcm_switch_hash_table_t hash_table, 62209 uint32 bank_num, 62210 int * hash_type, 62211 uint32 * hash_offset) 62212 { 62213 return bcm_switch_hash_banks_config_get( 62214 BCM_CONTROL(unit)->unit, 62215 hash_table, 62216 bank_num, 62217 hash_type, 62218 hash_offset); 62219 } 62220 62221 int 62222 bcm_loop_switch_hash_banks_config_set( 62223 int unit, 62224 bcm_switch_hash_table_t hash_table, 62225 uint32 bank_num, 62226 int hash_type, 62227 uint32 hash_offset) 62228 { 62229 return bcm_switch_hash_banks_config_set( 62230 BCM_CONTROL(unit)->unit, 62231 hash_table, 62232 bank_num, 62233 hash_type, 62234 hash_offset); 62235 } 62236 62237 int 62238 bcm_loop_switch_hash_banks_max_get( 62239 int unit, 62240 bcm_switch_hash_table_t hash_table, 62241 uint32 * bank_count) 62242 { 62243 return bcm_switch_hash_banks_max_get( 62244 BCM_CONTROL(unit)->unit, 62245 hash_table, 62246 bank_count); 62247 } 62248 62249 /* bcm_switch_hash_entry_config_t_init not dispatchable */ 62250 62251 int 62252 bcm_loop_switch_hash_entry_create( 62253 int unit, 62254 bcm_field_group_t group, 62255 bcm_hash_entry_t * entry) 62256 { 62257 return bcm_switch_hash_entry_create( 62258 BCM_CONTROL(unit)->unit, 62259 group, 62260 entry); 62261 } 62262 62263 int 62264 bcm_loop_switch_hash_entry_create_qset( 62265 int unit, 62266 bcm_field_qset_t qset, 62267 bcm_hash_entry_t * entry) 62268 { 62269 return bcm_switch_hash_entry_create_qset( 62270 BCM_CONTROL(unit)->unit, 62271 qset, 62272 entry); 62273 } 62274 62275 int 62276 bcm_loop_switch_hash_entry_destroy( 62277 int unit, 62278 bcm_hash_entry_t entry) 62279 { 62280 return bcm_switch_hash_entry_destroy( 62281 BCM_CONTROL(unit)->unit, 62282 entry); 62283 } 62284 62285 int 62286 bcm_loop_switch_hash_entry_get( 62287 int unit, 62288 bcm_hash_entry_t entry, 62289 bcm_switch_hash_entry_config_t * config) 62290 { 62291 return bcm_switch_hash_entry_get( 62292 BCM_CONTROL(unit)->unit, 62293 entry, 62294 config); 62295 } 62296 62297 int 62298 bcm_loop_switch_hash_entry_install( 62299 int unit, 62300 bcm_hash_entry_t entry, 62301 uint32 offset) 62302 { 62303 return bcm_switch_hash_entry_install( 62304 BCM_CONTROL(unit)->unit, 62305 entry, 62306 offset); 62307 } 62308 62309 int 62310 bcm_loop_switch_hash_entry_reinstall( 62311 int unit, 62312 bcm_hash_entry_t entry, 62313 uint32 offset) 62314 { 62315 return bcm_switch_hash_entry_reinstall( 62316 BCM_CONTROL(unit)->unit, 62317 entry, 62318 offset); 62319 } 62320 62321 int 62322 bcm_loop_switch_hash_entry_remove( 62323 int unit, 62324 bcm_hash_entry_t entry) 62325 { 62326 return bcm_switch_hash_entry_remove( 62327 BCM_CONTROL(unit)->unit, 62328 entry); 62329 } 62330 62331 int 62332 bcm_loop_switch_hash_entry_set( 62333 int unit, 62334 bcm_hash_entry_t entry, 62335 bcm_switch_hash_entry_config_t * config) 62336 { 62337 return bcm_switch_hash_entry_set( 62338 BCM_CONTROL(unit)->unit, 62339 entry, 62340 config); 62341 } 62342 62343 int 62344 bcm_loop_switch_hash_entry_traverse( 62345 int unit, 62346 int flags, 62347 bcm_switch_hash_entry_traverse_cb cb_fn, 62348 void * user_data) 62349 { 62350 return bcm_switch_hash_entry_traverse( 62351 BCM_CONTROL(unit)->unit, 62352 flags, 62353 cb_fn, 62354 user_data); 62355 } 62356 62357 int 62358 bcm_loop_switch_hash_qualify_data( 62359 int unit, 62360 bcm_hash_entry_t entry, 62361 int qual_id, 62362 uint32 data, 62363 uint32 mask) 62364 { 62365 return bcm_switch_hash_qualify_data( 62366 BCM_CONTROL(unit)->unit, 62367 entry, 62368 qual_id, 62369 data, 62370 mask); 62371 } 62372 62373 int 62374 bcm_loop_switch_hash_qualify_udf( 62375 int unit, 62376 bcm_hash_entry_t entry, 62377 bcm_udf_id_t udf_id, 62378 int length, 62379 uint8 * data, 62380 uint8 * mask) 62381 { 62382 return bcm_switch_hash_qualify_udf( 62383 BCM_CONTROL(unit)->unit, 62384 entry, 62385 udf_id, 62386 length, 62387 data, 62388 mask); 62389 } 62390 62391 int 62392 bcm_loop_switch_hash_qualify_udf_get( 62393 int unit, 62394 bcm_hash_entry_t entry, 62395 bcm_udf_id_t udf_id, 62396 int max_length, 62397 uint8 * data, 62398 uint8 * mask, 62399 int * actual_length) 62400 { 62401 return bcm_switch_hash_qualify_udf_get( 62402 BCM_CONTROL(unit)->unit, 62403 entry, 62404 udf_id, 62405 max_length, 62406 data, 62407 mask, 62408 actual_length); 62409 } 62410 62411 int 62412 bcm_loop_switch_ipv6_reserved_multicast_addr_get( 62413 int unit, 62414 bcm_ip6_t * ip6_addr, 62415 bcm_ip6_t * ip6_mask) 62416 { 62417 return bcm_switch_ipv6_reserved_multicast_addr_get( 62418 BCM_CONTROL(unit)->unit, 62419 ip6_addr, 62420 ip6_mask); 62421 } 62422 62423 int 62424 bcm_loop_switch_ipv6_reserved_multicast_addr_multi_get( 62425 int unit, 62426 int inner, 62427 int num, 62428 bcm_ip6_t * ip6_addr, 62429 bcm_ip6_t * ip6_mask) 62430 { 62431 return bcm_switch_ipv6_reserved_multicast_addr_multi_get( 62432 BCM_CONTROL(unit)->unit, 62433 inner, 62434 num, 62435 ip6_addr, 62436 ip6_mask); 62437 } 62438 62439 int 62440 bcm_loop_switch_ipv6_reserved_multicast_addr_multi_set( 62441 int unit, 62442 int inner, 62443 int num, 62444 bcm_ip6_t * ip6_addr, 62445 bcm_ip6_t * ip6_mask) 62446 { 62447 return bcm_switch_ipv6_reserved_multicast_addr_multi_set( 62448 BCM_CONTROL(unit)->unit, 62449 inner, 62450 num, 62451 ip6_addr, 62452 ip6_mask); 62453 } 62454 62455 int 62456 bcm_loop_switch_ipv6_reserved_multicast_addr_set( 62457 int unit, 62458 bcm_ip6_t ip6_addr, 62459 bcm_ip6_t ip6_mask) 62460 { 62461 return bcm_switch_ipv6_reserved_multicast_addr_set( 62462 BCM_CONTROL(unit)->unit, 62463 ip6_addr, 62464 ip6_mask); 62465 } 62466 62467 int 62468 bcm_loop_switch_kbp_apptype_info_get( 62469 int unit, 62470 bcm_core_t core, 62471 bcm_field_AppType_t apptype, 62472 bcm_switch_kbp_apptype_info_t * apptype_info) 62473 { 62474 return bcm_switch_kbp_apptype_info_get( 62475 BCM_CONTROL(unit)->unit, 62476 core, 62477 apptype, 62478 apptype_info); 62479 } 62480 62481 int 62482 bcm_loop_switch_kbp_info_get( 62483 int unit, 62484 bcm_core_t core, 62485 bcm_switch_kbp_info_t * kbp_info) 62486 { 62487 return bcm_switch_kbp_info_get( 62488 BCM_CONTROL(unit)->unit, 62489 core, 62490 kbp_info); 62491 } 62492 62493 int 62494 bcm_loop_switch_l3_protocol_group_get( 62495 int unit, 62496 uint32 * group_members, 62497 bcm_l3_protocol_group_id_t * group_id) 62498 { 62499 return bcm_switch_l3_protocol_group_get( 62500 BCM_CONTROL(unit)->unit, 62501 group_members, 62502 group_id); 62503 } 62504 62505 int 62506 bcm_loop_switch_l3_protocol_group_set( 62507 int unit, 62508 uint32 group_members, 62509 bcm_l3_protocol_group_id_t group_id) 62510 { 62511 return bcm_switch_l3_protocol_group_set( 62512 BCM_CONTROL(unit)->unit, 62513 group_members, 62514 group_id); 62515 } 62516 62517 int 62518 bcm_loop_switch_lif_property_get( 62519 int unit, 62520 bcm_switch_lif_property_t lif_property, 62521 bcm_switch_lif_property_config_t * lif_config) 62522 { 62523 return bcm_switch_lif_property_get( 62524 BCM_CONTROL(unit)->unit, 62525 lif_property, 62526 lif_config); 62527 } 62528 62529 int 62530 bcm_loop_switch_lif_property_set( 62531 int unit, 62532 bcm_switch_lif_property_t lif_property, 62533 bcm_switch_lif_property_config_t * lif_config) 62534 { 62535 return bcm_switch_lif_property_set( 62536 BCM_CONTROL(unit)->unit, 62537 lif_property, 62538 lif_config); 62539 } 62540 62541 int 62542 bcm_loop_switch_match_config_add( 62543 int unit, 62544 bcm_switch_match_service_t match_service, 62545 bcm_switch_match_config_info_t * config_info, 62546 int * match_id) 62547 { 62548 return bcm_switch_match_config_add( 62549 BCM_CONTROL(unit)->unit, 62550 match_service, 62551 config_info, 62552 match_id); 62553 } 62554 62555 int 62556 bcm_loop_switch_match_config_delete( 62557 int unit, 62558 bcm_switch_match_service_t match_service, 62559 int match_id) 62560 { 62561 return bcm_switch_match_config_delete( 62562 BCM_CONTROL(unit)->unit, 62563 match_service, 62564 match_id); 62565 } 62566 62567 int 62568 bcm_loop_switch_match_config_delete_all( 62569 int unit, 62570 bcm_switch_match_service_t match_service) 62571 { 62572 return bcm_switch_match_config_delete_all( 62573 BCM_CONTROL(unit)->unit, 62574 match_service); 62575 } 62576 62577 int 62578 bcm_loop_switch_match_config_get( 62579 int unit, 62580 bcm_switch_match_service_t match_service, 62581 int match_id, 62582 bcm_switch_match_config_info_t * config_info) 62583 { 62584 return bcm_switch_match_config_get( 62585 BCM_CONTROL(unit)->unit, 62586 match_service, 62587 match_id, 62588 config_info); 62589 } 62590 62591 /* bcm_switch_match_config_info_t_init not dispatchable */ 62592 62593 int 62594 bcm_loop_switch_match_config_set( 62595 int unit, 62596 bcm_switch_match_service_t match_service, 62597 int match_id, 62598 bcm_switch_match_config_info_t * config_info) 62599 { 62600 return bcm_switch_match_config_set( 62601 BCM_CONTROL(unit)->unit, 62602 match_service, 62603 match_id, 62604 config_info); 62605 } 62606 62607 int 62608 bcm_loop_switch_match_config_traverse( 62609 int unit, 62610 bcm_switch_match_service_t match_service, 62611 bcm_switch_match_config_traverse_cb cb_fn, 62612 void * user_data) 62613 { 62614 return bcm_switch_match_config_traverse( 62615 BCM_CONTROL(unit)->unit, 62616 match_service, 62617 cb_fn, 62618 user_data); 62619 } 62620 62621 int 62622 bcm_loop_switch_match_control_get( 62623 int unit, 62624 bcm_switch_match_service_t match_service, 62625 bcm_switch_match_control_type_t control_type, 62626 bcm_gport_t gport, 62627 bcm_switch_match_control_info_t * control_info) 62628 { 62629 return bcm_switch_match_control_get( 62630 BCM_CONTROL(unit)->unit, 62631 match_service, 62632 control_type, 62633 gport, 62634 control_info); 62635 } 62636 62637 /* bcm_switch_match_control_info_t_init not dispatchable */ 62638 62639 int 62640 bcm_loop_switch_match_control_set( 62641 int unit, 62642 bcm_switch_match_service_t match_service, 62643 bcm_switch_match_control_type_t control_type, 62644 bcm_gport_t gport, 62645 bcm_switch_match_control_info_t * control_info) 62646 { 62647 return bcm_switch_match_control_set( 62648 BCM_CONTROL(unit)->unit, 62649 match_service, 62650 control_type, 62651 gport, 62652 control_info); 62653 } 62654 62655 int 62656 bcm_loop_switch_match_control_traverse( 62657 int unit, 62658 bcm_switch_match_service_t match_service, 62659 bcm_switch_match_control_traverse_cb cb_fn, 62660 void * user_data) 62661 { 62662 return bcm_switch_match_control_traverse( 62663 BCM_CONTROL(unit)->unit, 62664 match_service, 62665 cb_fn, 62666 user_data); 62667 } 62668 62669 int 62670 bcm_loop_switch_network_group_config_get( 62671 int unit, 62672 bcm_switch_network_group_t source_network_group_id, 62673 bcm_switch_network_group_config_t * config) 62674 { 62675 return bcm_switch_network_group_config_get( 62676 BCM_CONTROL(unit)->unit, 62677 source_network_group_id, 62678 config); 62679 } 62680 62681 int 62682 bcm_loop_switch_network_group_config_set( 62683 int unit, 62684 bcm_switch_network_group_t source_network_group_id, 62685 bcm_switch_network_group_config_t * config) 62686 { 62687 return bcm_switch_network_group_config_set( 62688 BCM_CONTROL(unit)->unit, 62689 source_network_group_id, 62690 config); 62691 } 62692 62693 /* bcm_switch_network_group_config_t_init not dispatchable */ 62694 62695 int 62696 bcm_loop_switch_object_count_get( 62697 int unit, 62698 bcm_switch_object_t object, 62699 int * entries) 62700 { 62701 return bcm_switch_object_count_get( 62702 BCM_CONTROL(unit)->unit, 62703 object, 62704 entries); 62705 } 62706 62707 int 62708 bcm_loop_switch_object_count_multi_get( 62709 int unit, 62710 int object_size, 62711 bcm_switch_object_t * object_array, 62712 int * entries) 62713 { 62714 return bcm_switch_object_count_multi_get( 62715 BCM_CONTROL(unit)->unit, 62716 object_size, 62717 object_array, 62718 entries); 62719 } 62720 62721 int 62722 bcm_loop_switch_obm_classifier_mapping_get( 62723 int unit, 62724 bcm_gport_t gport, 62725 bcm_switch_obm_classifier_type_t switch_obm_classifier_type, 62726 bcm_switch_obm_classifier_t * switch_obm_classifier) 62727 { 62728 return bcm_switch_obm_classifier_mapping_get( 62729 BCM_CONTROL(unit)->unit, 62730 gport, 62731 switch_obm_classifier_type, 62732 switch_obm_classifier); 62733 } 62734 62735 int 62736 bcm_loop_switch_obm_classifier_mapping_multi_get( 62737 int unit, 62738 bcm_gport_t port, 62739 bcm_switch_obm_classifier_type_t switch_obm_classifier_type, 62740 int array_max, 62741 bcm_switch_obm_classifier_t * switch_obm_classifier, 62742 int * array_count) 62743 { 62744 return bcm_switch_obm_classifier_mapping_multi_get( 62745 BCM_CONTROL(unit)->unit, 62746 port, 62747 switch_obm_classifier_type, 62748 array_max, 62749 switch_obm_classifier, 62750 array_count); 62751 } 62752 62753 int 62754 bcm_loop_switch_obm_classifier_mapping_multi_set( 62755 int unit, 62756 bcm_gport_t gport, 62757 bcm_switch_obm_classifier_type_t switch_obm_classifier_type, 62758 int array_count, 62759 bcm_switch_obm_classifier_t * switch_obm_classifier) 62760 { 62761 return bcm_switch_obm_classifier_mapping_multi_set( 62762 BCM_CONTROL(unit)->unit, 62763 gport, 62764 switch_obm_classifier_type, 62765 array_count, 62766 switch_obm_classifier); 62767 } 62768 62769 int 62770 bcm_loop_switch_obm_classifier_mapping_set( 62771 int unit, 62772 bcm_gport_t gport, 62773 bcm_switch_obm_classifier_type_t switch_obm_classifier_type, 62774 bcm_switch_obm_classifier_t * switch_obm_classifier) 62775 { 62776 return bcm_switch_obm_classifier_mapping_set( 62777 BCM_CONTROL(unit)->unit, 62778 gport, 62779 switch_obm_classifier_type, 62780 switch_obm_classifier); 62781 } 62782 62783 /* bcm_switch_obm_classifier_t_init not dispatchable */ 62784 62785 int 62786 bcm_loop_switch_olp_l2_addr_add( 62787 int unit, 62788 uint32 options, 62789 bcm_switch_olp_l2_addr_t * l2_addr) 62790 { 62791 return bcm_switch_olp_l2_addr_add( 62792 BCM_CONTROL(unit)->unit, 62793 options, 62794 l2_addr); 62795 } 62796 62797 int 62798 bcm_loop_switch_olp_l2_addr_delete( 62799 int unit, 62800 bcm_switch_olp_l2_addr_t * l2_addr) 62801 { 62802 return bcm_switch_olp_l2_addr_delete( 62803 BCM_CONTROL(unit)->unit, 62804 l2_addr); 62805 } 62806 62807 int 62808 bcm_loop_switch_olp_l2_addr_delete_all( 62809 int unit) 62810 { 62811 return bcm_switch_olp_l2_addr_delete_all( 62812 BCM_CONTROL(unit)->unit); 62813 } 62814 62815 int 62816 bcm_loop_switch_olp_l2_addr_get( 62817 int unit, 62818 bcm_switch_olp_l2_addr_t * l2_addr) 62819 { 62820 return bcm_switch_olp_l2_addr_get( 62821 BCM_CONTROL(unit)->unit, 62822 l2_addr); 62823 } 62824 62825 /* bcm_switch_olp_l2_addr_t_init not dispatchable */ 62826 62827 int 62828 bcm_loop_switch_olp_l2_addr_traverse( 62829 int unit, 62830 bcm_switch_olp_l2_addr_traverse_cb cb_fn, 62831 void * user_data) 62832 { 62833 return bcm_switch_olp_l2_addr_traverse( 62834 BCM_CONTROL(unit)->unit, 62835 cb_fn, 62836 user_data); 62837 } 62838 62839 int 62840 bcm_loop_switch_opaque_tag_config_get( 62841 int unit, 62842 int index, 62843 bcm_switch_opaque_tag_params_t * opaque_tag_config) 62844 { 62845 return bcm_switch_opaque_tag_config_get( 62846 BCM_CONTROL(unit)->unit, 62847 index, 62848 opaque_tag_config); 62849 } 62850 62851 int 62852 bcm_loop_switch_opaque_tag_config_set( 62853 int unit, 62854 int index, 62855 bcm_switch_opaque_tag_params_t * opaque_tag_config) 62856 { 62857 return bcm_switch_opaque_tag_config_set( 62858 BCM_CONTROL(unit)->unit, 62859 index, 62860 opaque_tag_config); 62861 } 62862 62863 /* bcm_switch_opaque_tag_config_t_init not dispatchable */ 62864 62865 int 62866 bcm_loop_switch_pkt_info_hash_get( 62867 int unit, 62868 bcm_switch_pkt_info_t * pkt_info, 62869 bcm_gport_t * dst_gport, 62870 bcm_if_t * dst_intf) 62871 { 62872 return bcm_switch_pkt_info_hash_get( 62873 BCM_CONTROL(unit)->unit, 62874 pkt_info, 62875 dst_gport, 62876 dst_intf); 62877 } 62878 62879 /* bcm_switch_pkt_info_t_init not dispatchable */ 62880 62881 int 62882 bcm_loop_switch_pkt_trace_info_clear( 62883 int unit, 62884 bcm_port_t port) 62885 { 62886 return bcm_switch_pkt_trace_info_clear( 62887 BCM_CONTROL(unit)->unit, 62888 port); 62889 } 62890 62891 int 62892 bcm_loop_switch_pkt_trace_info_get( 62893 int unit, 62894 uint32 options, 62895 uint8 port, 62896 int len, 62897 uint8 * data, 62898 bcm_switch_pkt_trace_info_t * pkt_trace_info) 62899 { 62900 return bcm_switch_pkt_trace_info_get( 62901 BCM_CONTROL(unit)->unit, 62902 options, 62903 port, 62904 len, 62905 data, 62906 pkt_trace_info); 62907 } 62908 62909 int 62910 bcm_loop_switch_pkt_trace_raw_data_get( 62911 int unit, 62912 uint32 options, 62913 uint8 port, 62914 int len, 62915 uint8 * data, 62916 uint32 raw_data_buf_size, 62917 uint8 * raw_data, 62918 uint32 * raw_data_size) 62919 { 62920 return bcm_switch_pkt_trace_raw_data_get( 62921 BCM_CONTROL(unit)->unit, 62922 options, 62923 port, 62924 len, 62925 data, 62926 raw_data_buf_size, 62927 raw_data, 62928 raw_data_size); 62929 } 62930 62931 /* bcm_switch_profile_mapping_t_init not dispatchable */ 62932 62933 int 62934 bcm_loop_switch_rcpu_decap_priority_map_get( 62935 int unit, 62936 int decap_pri, 62937 int * internal_cpu_pri) 62938 { 62939 return bcm_switch_rcpu_decap_priority_map_get( 62940 BCM_CONTROL(unit)->unit, 62941 decap_pri, 62942 internal_cpu_pri); 62943 } 62944 62945 int 62946 bcm_loop_switch_rcpu_decap_priority_map_set( 62947 int unit, 62948 int decap_pri, 62949 int internal_cpu_pri) 62950 { 62951 return bcm_switch_rcpu_decap_priority_map_set( 62952 BCM_CONTROL(unit)->unit, 62953 decap_pri, 62954 internal_cpu_pri); 62955 } 62956 62957 int 62958 bcm_loop_switch_rcpu_encap_priority_map_get( 62959 int unit, 62960 uint32 flags, 62961 int internal_cpu_pri, 62962 int * encap_pri) 62963 { 62964 return bcm_switch_rcpu_encap_priority_map_get( 62965 BCM_CONTROL(unit)->unit, 62966 flags, 62967 internal_cpu_pri, 62968 encap_pri); 62969 } 62970 62971 int 62972 bcm_loop_switch_rcpu_encap_priority_map_set( 62973 int unit, 62974 uint32 flags, 62975 int internal_cpu_pri, 62976 int encap_pri) 62977 { 62978 return bcm_switch_rcpu_encap_priority_map_set( 62979 BCM_CONTROL(unit)->unit, 62980 flags, 62981 internal_cpu_pri, 62982 encap_pri); 62983 } 62984 62985 int 62986 bcm_loop_switch_reflector_create( 62987 int unit, 62988 uint32 flags, 62989 bcm_if_t * encap_id, 62990 bcm_switch_reflector_data_t * data) 62991 { 62992 return bcm_switch_reflector_create( 62993 BCM_CONTROL(unit)->unit, 62994 flags, 62995 encap_id, 62996 data); 62997 } 62998 62999 /* bcm_switch_reflector_data_t_init not dispatchable */ 63000 63001 int 63002 bcm_loop_switch_reflector_destroy( 63003 int unit, 63004 uint32 flags, 63005 bcm_if_t encap_id) 63006 { 63007 return bcm_switch_reflector_destroy( 63008 BCM_CONTROL(unit)->unit, 63009 flags, 63010 encap_id); 63011 } 63012 63013 int 63014 bcm_loop_switch_reflector_get( 63015 int unit, 63016 uint32 flags, 63017 bcm_if_t encap_id, 63018 bcm_switch_reflector_data_t * data) 63019 { 63020 return bcm_switch_reflector_get( 63021 BCM_CONTROL(unit)->unit, 63022 flags, 63023 encap_id, 63024 data); 63025 } 63026 63027 int 63028 bcm_loop_switch_reflector_traverse( 63029 int unit, 63030 uint32 flags, 63031 bcm_switch_reflector_traverse_cb traverse_cb, 63032 void * user_data) 63033 { 63034 return bcm_switch_reflector_traverse( 63035 BCM_CONTROL(unit)->unit, 63036 flags, 63037 traverse_cb, 63038 user_data); 63039 } 63040 63041 int 63042 bcm_loop_switch_rov_get( 63043 int unit, 63044 uint32 flags, 63045 uint32 * rov) 63046 { 63047 return bcm_switch_rov_get( 63048 BCM_CONTROL(unit)->unit, 63049 flags, 63050 rov); 63051 } 63052 63053 int 63054 bcm_loop_switch_ser_error_stat_clear( 63055 int unit, 63056 bcm_switch_ser_error_stat_type_t stat_type) 63057 { 63058 return bcm_switch_ser_error_stat_clear( 63059 BCM_CONTROL(unit)->unit, 63060 stat_type); 63061 } 63062 63063 int 63064 bcm_loop_switch_ser_error_stat_get( 63065 int unit, 63066 bcm_switch_ser_error_stat_type_t stat_type, 63067 uint32 * value) 63068 { 63069 return bcm_switch_ser_error_stat_get( 63070 BCM_CONTROL(unit)->unit, 63071 stat_type, 63072 value); 63073 } 63074 63075 /* bcm_switch_ser_error_stat_type_t_init not dispatchable */ 63076 63077 int 63078 bcm_loop_switch_ser_log_info_get( 63079 int unit, 63080 int id, 63081 bcm_switch_ser_log_info_t * info) 63082 { 63083 return bcm_switch_ser_log_info_get( 63084 BCM_CONTROL(unit)->unit, 63085 id, 63086 info); 63087 } 63088 63089 /* bcm_switch_ser_log_info_t_init not dispatchable */ 63090 63091 /* bcm_switch_service_config_t_init not dispatchable */ 63092 63093 int 63094 bcm_loop_switch_service_get( 63095 int unit, 63096 bcm_switch_service_t service, 63097 bcm_switch_service_config_t * config) 63098 { 63099 return bcm_switch_service_get( 63100 BCM_CONTROL(unit)->unit, 63101 service, 63102 config); 63103 } 63104 63105 int 63106 bcm_loop_switch_service_set( 63107 int unit, 63108 bcm_switch_service_t service, 63109 bcm_switch_service_config_t * config) 63110 { 63111 return bcm_switch_service_set( 63112 BCM_CONTROL(unit)->unit, 63113 service, 63114 config); 63115 } 63116 63117 int 63118 bcm_loop_switch_stable_register( 63119 int unit, 63120 bcm_switch_read_func_t rf, 63121 bcm_switch_write_func_t wf) 63122 { 63123 return bcm_switch_stable_register( 63124 BCM_CONTROL(unit)->unit, 63125 rf, 63126 wf); 63127 } 63128 63129 int 63130 bcm_loop_switch_temperature_monitor_get( 63131 int unit, 63132 int temperature_max, 63133 bcm_switch_temperature_monitor_t * temperature_array, 63134 int * temperature_count) 63135 { 63136 return bcm_switch_temperature_monitor_get( 63137 BCM_CONTROL(unit)->unit, 63138 temperature_max, 63139 temperature_array, 63140 temperature_count); 63141 } 63142 63143 int 63144 bcm_loop_switch_thermo_sensor_read( 63145 int unit, 63146 bcm_switch_thermo_sensor_type_t sensor_type, 63147 int interface_id, 63148 bcm_switch_thermo_sensor_t * sensor_data) 63149 { 63150 return bcm_switch_thermo_sensor_read( 63151 BCM_CONTROL(unit)->unit, 63152 sensor_type, 63153 interface_id, 63154 sensor_data); 63155 } 63156 63157 int 63158 bcm_loop_switch_tpid_add( 63159 int unit, 63160 uint32 options, 63161 bcm_switch_tpid_info_t * tpid_info) 63162 { 63163 return bcm_switch_tpid_add( 63164 BCM_CONTROL(unit)->unit, 63165 options, 63166 tpid_info); 63167 } 63168 63169 int 63170 bcm_loop_switch_tpid_class_get( 63171 int unit, 63172 bcm_switch_tpid_class_t * tpid_class) 63173 { 63174 return bcm_switch_tpid_class_get( 63175 BCM_CONTROL(unit)->unit, 63176 tpid_class); 63177 } 63178 63179 /* bcm_switch_tpid_class_t_init not dispatchable */ 63180 63181 int 63182 bcm_loop_switch_tpid_delete( 63183 int unit, 63184 bcm_switch_tpid_info_t * tpid_info) 63185 { 63186 return bcm_switch_tpid_delete( 63187 BCM_CONTROL(unit)->unit, 63188 tpid_info); 63189 } 63190 63191 int 63192 bcm_loop_switch_tpid_delete_all( 63193 int unit) 63194 { 63195 return bcm_switch_tpid_delete_all( 63196 BCM_CONTROL(unit)->unit); 63197 } 63198 63199 int 63200 bcm_loop_switch_tpid_get( 63201 int unit, 63202 bcm_switch_tpid_info_t * tpid_info) 63203 { 63204 return bcm_switch_tpid_get( 63205 BCM_CONTROL(unit)->unit, 63206 tpid_info); 63207 } 63208 63209 int 63210 bcm_loop_switch_tpid_get_all( 63211 int unit, 63212 int size, 63213 bcm_switch_tpid_info_t * tpid_info_array, 63214 int * count) 63215 { 63216 return bcm_switch_tpid_get_all( 63217 BCM_CONTROL(unit)->unit, 63218 size, 63219 tpid_info_array, 63220 count); 63221 } 63222 63223 int 63224 bcm_loop_switch_user_buffer_read( 63225 int unit, 63226 uint32 flags, 63227 bcm_switch_user_buffer_type_t buff_type, 63228 uint8 * buf, 63229 int offset, 63230 int nbytes) 63231 { 63232 return bcm_switch_user_buffer_read( 63233 BCM_CONTROL(unit)->unit, 63234 flags, 63235 buff_type, 63236 buf, 63237 offset, 63238 nbytes); 63239 } 63240 63241 int 63242 bcm_loop_switch_user_buffer_write( 63243 int unit, 63244 uint32 flags, 63245 bcm_switch_user_buffer_type_t buff_type, 63246 uint8 * buf, 63247 int offset, 63248 int nbytes) 63249 { 63250 return bcm_switch_user_buffer_write( 63251 BCM_CONTROL(unit)->unit, 63252 flags, 63253 buff_type, 63254 buf, 63255 offset, 63256 nbytes); 63257 } 63258 63259 #ifdef INCLUDE_PTP 63260 63261 int 63262 bcm_loop_tdpll_dpll_bandwidth_get( 63263 int unit, 63264 int stack_id, 63265 int dpll_index, 63266 bcm_tdpll_dpll_bandwidth_t * bandwidth) 63267 { 63268 return bcm_tdpll_dpll_bandwidth_get( 63269 BCM_CONTROL(unit)->unit, 63270 stack_id, 63271 dpll_index, 63272 bandwidth); 63273 } 63274 63275 int 63276 bcm_loop_tdpll_dpll_bandwidth_set( 63277 int unit, 63278 int stack_id, 63279 int dpll_index, 63280 bcm_tdpll_dpll_bandwidth_t * bandwidth) 63281 { 63282 return bcm_tdpll_dpll_bandwidth_set( 63283 BCM_CONTROL(unit)->unit, 63284 stack_id, 63285 dpll_index, 63286 bandwidth); 63287 } 63288 63289 int 63290 bcm_loop_tdpll_dpll_bindings_get( 63291 int unit, 63292 int stack_id, 63293 int dpll_index, 63294 bcm_tdpll_dpll_bindings_t * bindings) 63295 { 63296 return bcm_tdpll_dpll_bindings_get( 63297 BCM_CONTROL(unit)->unit, 63298 stack_id, 63299 dpll_index, 63300 bindings); 63301 } 63302 63303 int 63304 bcm_loop_tdpll_dpll_bindings_set( 63305 int unit, 63306 int stack_id, 63307 int dpll_index, 63308 bcm_tdpll_dpll_bindings_t * bindings) 63309 { 63310 return bcm_tdpll_dpll_bindings_set( 63311 BCM_CONTROL(unit)->unit, 63312 stack_id, 63313 dpll_index, 63314 bindings); 63315 } 63316 63317 int 63318 bcm_loop_tdpll_dpll_phase_control_get( 63319 int unit, 63320 int stack_id, 63321 int dpll_index, 63322 bcm_tdpll_dpll_phase_control_t * phase_control) 63323 { 63324 return bcm_tdpll_dpll_phase_control_get( 63325 BCM_CONTROL(unit)->unit, 63326 stack_id, 63327 dpll_index, 63328 phase_control); 63329 } 63330 63331 int 63332 bcm_loop_tdpll_dpll_phase_control_set( 63333 int unit, 63334 int stack_id, 63335 int dpll_index, 63336 bcm_tdpll_dpll_phase_control_t * phase_control) 63337 { 63338 return bcm_tdpll_dpll_phase_control_set( 63339 BCM_CONTROL(unit)->unit, 63340 stack_id, 63341 dpll_index, 63342 phase_control); 63343 } 63344 63345 int 63346 bcm_loop_tdpll_dpll_reference_get( 63347 int unit, 63348 int stack_id, 63349 int max_num_dpll, 63350 int * dpll_ref, 63351 int * num_dpll) 63352 { 63353 return bcm_tdpll_dpll_reference_get( 63354 BCM_CONTROL(unit)->unit, 63355 stack_id, 63356 max_num_dpll, 63357 dpll_ref, 63358 num_dpll); 63359 } 63360 63361 int 63362 bcm_loop_tdpll_esmc_essm_code_get( 63363 int unit, 63364 int stack_id, 63365 int dpll_index, 63366 bcm_esmc_essm_code_t * essm_code) 63367 { 63368 return bcm_tdpll_esmc_essm_code_get( 63369 BCM_CONTROL(unit)->unit, 63370 stack_id, 63371 dpll_index, 63372 essm_code); 63373 } 63374 63375 int 63376 bcm_loop_tdpll_esmc_essm_code_set( 63377 int unit, 63378 int stack_id, 63379 int dpll_index, 63380 bcm_esmc_essm_code_t essm_code) 63381 { 63382 return bcm_tdpll_esmc_essm_code_set( 63383 BCM_CONTROL(unit)->unit, 63384 stack_id, 63385 dpll_index, 63386 essm_code); 63387 } 63388 63389 int 63390 bcm_loop_tdpll_esmc_holdover_ql_get( 63391 int unit, 63392 int stack_id, 63393 int dpll_index, 63394 bcm_esmc_quality_level_t * ql) 63395 { 63396 return bcm_tdpll_esmc_holdover_ql_get( 63397 BCM_CONTROL(unit)->unit, 63398 stack_id, 63399 dpll_index, 63400 ql); 63401 } 63402 63403 int 63404 bcm_loop_tdpll_esmc_holdover_ql_set( 63405 int unit, 63406 int stack_id, 63407 int dpll_index, 63408 bcm_esmc_quality_level_t ql) 63409 { 63410 return bcm_tdpll_esmc_holdover_ql_set( 63411 BCM_CONTROL(unit)->unit, 63412 stack_id, 63413 dpll_index, 63414 ql); 63415 } 63416 63417 int 63418 bcm_loop_tdpll_esmc_mac_get( 63419 int unit, 63420 int stack_id, 63421 int dpll_index, 63422 bcm_mac_t * mac) 63423 { 63424 return bcm_tdpll_esmc_mac_get( 63425 BCM_CONTROL(unit)->unit, 63426 stack_id, 63427 dpll_index, 63428 mac); 63429 } 63430 63431 int 63432 bcm_loop_tdpll_esmc_mac_set( 63433 int unit, 63434 int stack_id, 63435 int dpll_index, 63436 bcm_mac_t * mac) 63437 { 63438 return bcm_tdpll_esmc_mac_set( 63439 BCM_CONTROL(unit)->unit, 63440 stack_id, 63441 dpll_index, 63442 mac); 63443 } 63444 63445 int 63446 bcm_loop_tdpll_esmc_ql_get( 63447 int unit, 63448 int stack_id, 63449 int dpll_index, 63450 bcm_esmc_quality_level_t * ql) 63451 { 63452 return bcm_tdpll_esmc_ql_get( 63453 BCM_CONTROL(unit)->unit, 63454 stack_id, 63455 dpll_index, 63456 ql); 63457 } 63458 63459 int 63460 bcm_loop_tdpll_esmc_ql_set( 63461 int unit, 63462 int stack_id, 63463 int dpll_index, 63464 bcm_esmc_quality_level_t ql) 63465 { 63466 return bcm_tdpll_esmc_ql_set( 63467 BCM_CONTROL(unit)->unit, 63468 stack_id, 63469 dpll_index, 63470 ql); 63471 } 63472 63473 int 63474 bcm_loop_tdpll_esmc_rx_enable_get( 63475 int unit, 63476 int stack_id, 63477 int * enable) 63478 { 63479 return bcm_tdpll_esmc_rx_enable_get( 63480 BCM_CONTROL(unit)->unit, 63481 stack_id, 63482 enable); 63483 } 63484 63485 int 63486 bcm_loop_tdpll_esmc_rx_enable_set( 63487 int unit, 63488 int stack_id, 63489 int enable) 63490 { 63491 return bcm_tdpll_esmc_rx_enable_set( 63492 BCM_CONTROL(unit)->unit, 63493 stack_id, 63494 enable); 63495 } 63496 63497 int 63498 bcm_loop_tdpll_esmc_rx_portbitmap_get( 63499 int unit, 63500 int stack_id, 63501 int dpll_index, 63502 bcm_pbmp_t * pbmp) 63503 { 63504 return bcm_tdpll_esmc_rx_portbitmap_get( 63505 BCM_CONTROL(unit)->unit, 63506 stack_id, 63507 dpll_index, 63508 pbmp); 63509 } 63510 63511 int 63512 bcm_loop_tdpll_esmc_rx_portbitmap_set( 63513 int unit, 63514 int stack_id, 63515 int dpll_index, 63516 bcm_pbmp_t pbmp) 63517 { 63518 return bcm_tdpll_esmc_rx_portbitmap_set( 63519 BCM_CONTROL(unit)->unit, 63520 stack_id, 63521 dpll_index, 63522 pbmp); 63523 } 63524 63525 int 63526 bcm_loop_tdpll_esmc_rx_state_machine( 63527 int unit, 63528 int stack_id, 63529 int ingress_port, 63530 bcm_esmc_pdu_data_t * esmc_pdu_data) 63531 { 63532 return bcm_tdpll_esmc_rx_state_machine( 63533 BCM_CONTROL(unit)->unit, 63534 stack_id, 63535 ingress_port, 63536 esmc_pdu_data); 63537 } 63538 63539 int 63540 bcm_loop_tdpll_esmc_tx_enable_get( 63541 int unit, 63542 int stack_id, 63543 int dpll_index, 63544 int * enable) 63545 { 63546 return bcm_tdpll_esmc_tx_enable_get( 63547 BCM_CONTROL(unit)->unit, 63548 stack_id, 63549 dpll_index, 63550 enable); 63551 } 63552 63553 int 63554 bcm_loop_tdpll_esmc_tx_enable_set( 63555 int unit, 63556 int stack_id, 63557 int dpll_index, 63558 int enable) 63559 { 63560 return bcm_tdpll_esmc_tx_enable_set( 63561 BCM_CONTROL(unit)->unit, 63562 stack_id, 63563 dpll_index, 63564 enable); 63565 } 63566 63567 int 63568 bcm_loop_tdpll_esmc_tx_portbitmap_get( 63569 int unit, 63570 int stack_id, 63571 int dpll_index, 63572 bcm_pbmp_t * pbmp) 63573 { 63574 return bcm_tdpll_esmc_tx_portbitmap_get( 63575 BCM_CONTROL(unit)->unit, 63576 stack_id, 63577 dpll_index, 63578 pbmp); 63579 } 63580 63581 int 63582 bcm_loop_tdpll_esmc_tx_portbitmap_set( 63583 int unit, 63584 int stack_id, 63585 int dpll_index, 63586 bcm_pbmp_t pbmp) 63587 { 63588 return bcm_tdpll_esmc_tx_portbitmap_set( 63589 BCM_CONTROL(unit)->unit, 63590 stack_id, 63591 dpll_index, 63592 pbmp); 63593 } 63594 63595 int 63596 bcm_loop_tdpll_event_callback_register( 63597 int unit, 63598 int stack_id, 63599 bcm_tdpll_event_cb_f event_cb) 63600 { 63601 return bcm_tdpll_event_callback_register( 63602 BCM_CONTROL(unit)->unit, 63603 stack_id, 63604 event_cb); 63605 } 63606 63607 int 63608 bcm_loop_tdpll_event_callback_unregister( 63609 int unit, 63610 int stack_id) 63611 { 63612 return bcm_tdpll_event_callback_unregister( 63613 BCM_CONTROL(unit)->unit, 63614 stack_id); 63615 } 63616 63617 int 63618 bcm_loop_tdpll_input_clock_best_get( 63619 int unit, 63620 int stack_id, 63621 int dpll_index, 63622 int * best_clock) 63623 { 63624 return bcm_tdpll_input_clock_best_get( 63625 BCM_CONTROL(unit)->unit, 63626 stack_id, 63627 dpll_index, 63628 best_clock); 63629 } 63630 63631 int 63632 bcm_loop_tdpll_input_clock_callback_register( 63633 int unit, 63634 int stack_id, 63635 bcm_tdpll_callback_type_t type, 63636 bcm_tdpll_input_clock_cb callback) 63637 { 63638 return bcm_tdpll_input_clock_callback_register( 63639 BCM_CONTROL(unit)->unit, 63640 stack_id, 63641 type, 63642 callback); 63643 } 63644 63645 int 63646 bcm_loop_tdpll_input_clock_callback_unregister( 63647 int unit, 63648 int stack_id, 63649 bcm_tdpll_callback_type_t type) 63650 { 63651 return bcm_tdpll_input_clock_callback_unregister( 63652 BCM_CONTROL(unit)->unit, 63653 stack_id, 63654 type); 63655 } 63656 63657 int 63658 bcm_loop_tdpll_input_clock_control( 63659 int unit, 63660 int stack_id, 63661 int enable) 63662 { 63663 return bcm_tdpll_input_clock_control( 63664 BCM_CONTROL(unit)->unit, 63665 stack_id, 63666 enable); 63667 } 63668 63669 int 63670 bcm_loop_tdpll_input_clock_enable_get( 63671 int unit, 63672 int stack_id, 63673 int clock_index, 63674 int * enable) 63675 { 63676 return bcm_tdpll_input_clock_enable_get( 63677 BCM_CONTROL(unit)->unit, 63678 stack_id, 63679 clock_index, 63680 enable); 63681 } 63682 63683 int 63684 bcm_loop_tdpll_input_clock_enable_set( 63685 int unit, 63686 int stack_id, 63687 int clock_index, 63688 int enable) 63689 { 63690 return bcm_tdpll_input_clock_enable_set( 63691 BCM_CONTROL(unit)->unit, 63692 stack_id, 63693 clock_index, 63694 enable); 63695 } 63696 63697 int 63698 bcm_loop_tdpll_input_clock_frequency_error_get( 63699 int unit, 63700 int stack_id, 63701 int clock_index, 63702 int * freq_error_ppb) 63703 { 63704 return bcm_tdpll_input_clock_frequency_error_get( 63705 BCM_CONTROL(unit)->unit, 63706 stack_id, 63707 clock_index, 63708 freq_error_ppb); 63709 } 63710 63711 int 63712 bcm_loop_tdpll_input_clock_frequency_get( 63713 int unit, 63714 int stack_id, 63715 int clock_index, 63716 uint32 * clock_frequency, 63717 uint32 * tsevent_frequency) 63718 { 63719 return bcm_tdpll_input_clock_frequency_get( 63720 BCM_CONTROL(unit)->unit, 63721 stack_id, 63722 clock_index, 63723 clock_frequency, 63724 tsevent_frequency); 63725 } 63726 63727 int 63728 bcm_loop_tdpll_input_clock_frequency_set( 63729 int unit, 63730 int stack_id, 63731 int clock_index, 63732 uint32 clock_frequency, 63733 uint32 tsevent_frequency) 63734 { 63735 return bcm_tdpll_input_clock_frequency_set( 63736 BCM_CONTROL(unit)->unit, 63737 stack_id, 63738 clock_index, 63739 clock_frequency, 63740 tsevent_frequency); 63741 } 63742 63743 int 63744 bcm_loop_tdpll_input_clock_l1mux_get( 63745 int unit, 63746 int stack_id, 63747 int clock_index, 63748 bcm_tdpll_input_clock_l1mux_t * l1mux) 63749 { 63750 return bcm_tdpll_input_clock_l1mux_get( 63751 BCM_CONTROL(unit)->unit, 63752 stack_id, 63753 clock_index, 63754 l1mux); 63755 } 63756 63757 int 63758 bcm_loop_tdpll_input_clock_l1mux_set( 63759 int unit, 63760 int stack_id, 63761 int clock_index, 63762 bcm_tdpll_input_clock_l1mux_t * l1mux) 63763 { 63764 return bcm_tdpll_input_clock_l1mux_set( 63765 BCM_CONTROL(unit)->unit, 63766 stack_id, 63767 clock_index, 63768 l1mux); 63769 } 63770 63771 int 63772 bcm_loop_tdpll_input_clock_lockout_get( 63773 int unit, 63774 int stack_id, 63775 int clock_index, 63776 int * lockout) 63777 { 63778 return bcm_tdpll_input_clock_lockout_get( 63779 BCM_CONTROL(unit)->unit, 63780 stack_id, 63781 clock_index, 63782 lockout); 63783 } 63784 63785 int 63786 bcm_loop_tdpll_input_clock_lockout_set( 63787 int unit, 63788 int stack_id, 63789 int clock_index, 63790 int lockout) 63791 { 63792 return bcm_tdpll_input_clock_lockout_set( 63793 BCM_CONTROL(unit)->unit, 63794 stack_id, 63795 clock_index, 63796 lockout); 63797 } 63798 63799 int 63800 bcm_loop_tdpll_input_clock_mac_get( 63801 int unit, 63802 int stack_id, 63803 int clock_index, 63804 bcm_mac_t * mac) 63805 { 63806 return bcm_tdpll_input_clock_mac_get( 63807 BCM_CONTROL(unit)->unit, 63808 stack_id, 63809 clock_index, 63810 mac); 63811 } 63812 63813 int 63814 bcm_loop_tdpll_input_clock_mac_set( 63815 int unit, 63816 int stack_id, 63817 int clock_index, 63818 bcm_mac_t * mac) 63819 { 63820 return bcm_tdpll_input_clock_mac_set( 63821 BCM_CONTROL(unit)->unit, 63822 stack_id, 63823 clock_index, 63824 mac); 63825 } 63826 63827 int 63828 bcm_loop_tdpll_input_clock_monitor_callback_register( 63829 int unit, 63830 int stack_id, 63831 bcm_tdpll_input_clock_monitor_cb monitor_cb) 63832 { 63833 return bcm_tdpll_input_clock_monitor_callback_register( 63834 BCM_CONTROL(unit)->unit, 63835 stack_id, 63836 monitor_cb); 63837 } 63838 63839 int 63840 bcm_loop_tdpll_input_clock_monitor_callback_unregister( 63841 int unit, 63842 int stack_id) 63843 { 63844 return bcm_tdpll_input_clock_monitor_callback_unregister( 63845 BCM_CONTROL(unit)->unit, 63846 stack_id); 63847 } 63848 63849 int 63850 bcm_loop_tdpll_input_clock_monitor_interval_get( 63851 int unit, 63852 int stack_id, 63853 uint32 * monitor_interval) 63854 { 63855 return bcm_tdpll_input_clock_monitor_interval_get( 63856 BCM_CONTROL(unit)->unit, 63857 stack_id, 63858 monitor_interval); 63859 } 63860 63861 int 63862 bcm_loop_tdpll_input_clock_monitor_interval_set( 63863 int unit, 63864 int stack_id, 63865 uint32 monitor_interval) 63866 { 63867 return bcm_tdpll_input_clock_monitor_interval_set( 63868 BCM_CONTROL(unit)->unit, 63869 stack_id, 63870 monitor_interval); 63871 } 63872 63873 int 63874 bcm_loop_tdpll_input_clock_monitor_threshold_get( 63875 int unit, 63876 int stack_id, 63877 bcm_tdpll_input_clock_monitor_type_t threshold_type, 63878 uint32 * threshold) 63879 { 63880 return bcm_tdpll_input_clock_monitor_threshold_get( 63881 BCM_CONTROL(unit)->unit, 63882 stack_id, 63883 threshold_type, 63884 threshold); 63885 } 63886 63887 int 63888 bcm_loop_tdpll_input_clock_monitor_threshold_set( 63889 int unit, 63890 int stack_id, 63891 bcm_tdpll_input_clock_monitor_type_t threshold_type, 63892 uint32 threshold) 63893 { 63894 return bcm_tdpll_input_clock_monitor_threshold_set( 63895 BCM_CONTROL(unit)->unit, 63896 stack_id, 63897 threshold_type, 63898 threshold); 63899 } 63900 63901 int 63902 bcm_loop_tdpll_input_clock_priority_get( 63903 int unit, 63904 int stack_id, 63905 int clock_index, 63906 int * priority) 63907 { 63908 return bcm_tdpll_input_clock_priority_get( 63909 BCM_CONTROL(unit)->unit, 63910 stack_id, 63911 clock_index, 63912 priority); 63913 } 63914 63915 int 63916 bcm_loop_tdpll_input_clock_priority_set( 63917 int unit, 63918 int stack_id, 63919 int clock_index, 63920 int priority) 63921 { 63922 return bcm_tdpll_input_clock_priority_set( 63923 BCM_CONTROL(unit)->unit, 63924 stack_id, 63925 clock_index, 63926 priority); 63927 } 63928 63929 int 63930 bcm_loop_tdpll_input_clock_ql_change_callback_register( 63931 int unit, 63932 int stack_id, 63933 bcm_tdpll_input_clock_ql_change_cb ql_change_cb) 63934 { 63935 return bcm_tdpll_input_clock_ql_change_callback_register( 63936 BCM_CONTROL(unit)->unit, 63937 stack_id, 63938 ql_change_cb); 63939 } 63940 63941 int 63942 bcm_loop_tdpll_input_clock_ql_change_callback_unregister( 63943 int unit, 63944 int stack_id) 63945 { 63946 return bcm_tdpll_input_clock_ql_change_callback_unregister( 63947 BCM_CONTROL(unit)->unit, 63948 stack_id); 63949 } 63950 63951 int 63952 bcm_loop_tdpll_input_clock_ql_enabled_get( 63953 int unit, 63954 int stack_id, 63955 int dpll_index, 63956 int * ql_enabled) 63957 { 63958 return bcm_tdpll_input_clock_ql_enabled_get( 63959 BCM_CONTROL(unit)->unit, 63960 stack_id, 63961 dpll_index, 63962 ql_enabled); 63963 } 63964 63965 int 63966 bcm_loop_tdpll_input_clock_ql_enabled_set( 63967 int unit, 63968 int stack_id, 63969 int dpll_index, 63970 int ql_enabled) 63971 { 63972 return bcm_tdpll_input_clock_ql_enabled_set( 63973 BCM_CONTROL(unit)->unit, 63974 stack_id, 63975 dpll_index, 63976 ql_enabled); 63977 } 63978 63979 int 63980 bcm_loop_tdpll_input_clock_ql_get( 63981 int unit, 63982 int stack_id, 63983 int clock_index, 63984 bcm_esmc_quality_level_t * ql) 63985 { 63986 return bcm_tdpll_input_clock_ql_get( 63987 BCM_CONTROL(unit)->unit, 63988 stack_id, 63989 clock_index, 63990 ql); 63991 } 63992 63993 int 63994 bcm_loop_tdpll_input_clock_ql_set( 63995 int unit, 63996 int stack_id, 63997 int clock_index, 63998 bcm_esmc_quality_level_t ql) 63999 { 64000 return bcm_tdpll_input_clock_ql_set( 64001 BCM_CONTROL(unit)->unit, 64002 stack_id, 64003 clock_index, 64004 ql); 64005 } 64006 64007 int 64008 bcm_loop_tdpll_input_clock_revertive_get( 64009 int unit, 64010 int stack_id, 64011 int dpll_index, 64012 int * revertive) 64013 { 64014 return bcm_tdpll_input_clock_revertive_get( 64015 BCM_CONTROL(unit)->unit, 64016 stack_id, 64017 dpll_index, 64018 revertive); 64019 } 64020 64021 int 64022 bcm_loop_tdpll_input_clock_revertive_set( 64023 int unit, 64024 int stack_id, 64025 int dpll_index, 64026 int revertive) 64027 { 64028 return bcm_tdpll_input_clock_revertive_set( 64029 BCM_CONTROL(unit)->unit, 64030 stack_id, 64031 dpll_index, 64032 revertive); 64033 } 64034 64035 int 64036 bcm_loop_tdpll_input_clock_selector_callback_register( 64037 int unit, 64038 int stack_id, 64039 bcm_tdpll_input_clock_selector_cb selector_cb) 64040 { 64041 return bcm_tdpll_input_clock_selector_callback_register( 64042 BCM_CONTROL(unit)->unit, 64043 stack_id, 64044 selector_cb); 64045 } 64046 64047 int 64048 bcm_loop_tdpll_input_clock_selector_callback_unregister( 64049 int unit, 64050 int stack_id) 64051 { 64052 return bcm_tdpll_input_clock_selector_callback_unregister( 64053 BCM_CONTROL(unit)->unit, 64054 stack_id); 64055 } 64056 64057 int 64058 bcm_loop_tdpll_input_clock_threshold_state_get( 64059 int unit, 64060 int stack_id, 64061 int clock_index, 64062 bcm_tdpll_input_clock_monitor_type_t threshold_type, 64063 int * threshold_state) 64064 { 64065 return bcm_tdpll_input_clock_threshold_state_get( 64066 BCM_CONTROL(unit)->unit, 64067 stack_id, 64068 clock_index, 64069 threshold_type, 64070 threshold_state); 64071 } 64072 64073 int 64074 bcm_loop_tdpll_input_clock_valid_get( 64075 int unit, 64076 int stack_id, 64077 int clock_index, 64078 int * valid) 64079 { 64080 return bcm_tdpll_input_clock_valid_get( 64081 BCM_CONTROL(unit)->unit, 64082 stack_id, 64083 clock_index, 64084 valid); 64085 } 64086 64087 int 64088 bcm_loop_tdpll_input_clock_valid_set( 64089 int unit, 64090 int stack_id, 64091 int clock_index, 64092 int valid) 64093 { 64094 return bcm_tdpll_input_clock_valid_set( 64095 BCM_CONTROL(unit)->unit, 64096 stack_id, 64097 clock_index, 64098 valid); 64099 } 64100 64101 int 64102 bcm_loop_tdpll_output_clock_deriv_frequency_get( 64103 int unit, 64104 int stack_id, 64105 int clock_index, 64106 uint32 * deriv_frequency) 64107 { 64108 return bcm_tdpll_output_clock_deriv_frequency_get( 64109 BCM_CONTROL(unit)->unit, 64110 stack_id, 64111 clock_index, 64112 deriv_frequency); 64113 } 64114 64115 int 64116 bcm_loop_tdpll_output_clock_deriv_frequency_set( 64117 int unit, 64118 int stack_id, 64119 int clock_index, 64120 uint32 deriv_frequency) 64121 { 64122 return bcm_tdpll_output_clock_deriv_frequency_set( 64123 BCM_CONTROL(unit)->unit, 64124 stack_id, 64125 clock_index, 64126 deriv_frequency); 64127 } 64128 64129 int 64130 bcm_loop_tdpll_output_clock_enable_get( 64131 int unit, 64132 int stack_id, 64133 int clock_index, 64134 int * enable) 64135 { 64136 return bcm_tdpll_output_clock_enable_get( 64137 BCM_CONTROL(unit)->unit, 64138 stack_id, 64139 clock_index, 64140 enable); 64141 } 64142 64143 int 64144 bcm_loop_tdpll_output_clock_enable_set( 64145 int unit, 64146 int stack_id, 64147 int clock_index, 64148 int enable) 64149 { 64150 return bcm_tdpll_output_clock_enable_set( 64151 BCM_CONTROL(unit)->unit, 64152 stack_id, 64153 clock_index, 64154 enable); 64155 } 64156 64157 int 64158 bcm_loop_tdpll_output_clock_holdover_data_get( 64159 int unit, 64160 int stack_id, 64161 int clock_index, 64162 bcm_tdpll_holdover_data_t * hdata) 64163 { 64164 return bcm_tdpll_output_clock_holdover_data_get( 64165 BCM_CONTROL(unit)->unit, 64166 stack_id, 64167 clock_index, 64168 hdata); 64169 } 64170 64171 int 64172 bcm_loop_tdpll_output_clock_holdover_frequency_set( 64173 int unit, 64174 int stack_id, 64175 int clock_index, 64176 bcm_tdpll_frequency_correction_t hfreq) 64177 { 64178 return bcm_tdpll_output_clock_holdover_frequency_set( 64179 BCM_CONTROL(unit)->unit, 64180 stack_id, 64181 clock_index, 64182 hfreq); 64183 } 64184 64185 int 64186 bcm_loop_tdpll_output_clock_holdover_mode_get( 64187 int unit, 64188 int stack_id, 64189 int clock_index, 64190 bcm_tdpll_holdover_mode_t * hmode) 64191 { 64192 return bcm_tdpll_output_clock_holdover_mode_get( 64193 BCM_CONTROL(unit)->unit, 64194 stack_id, 64195 clock_index, 64196 hmode); 64197 } 64198 64199 int 64200 bcm_loop_tdpll_output_clock_holdover_mode_set( 64201 int unit, 64202 int stack_id, 64203 int clock_index, 64204 bcm_tdpll_holdover_mode_t hmode) 64205 { 64206 return bcm_tdpll_output_clock_holdover_mode_set( 64207 BCM_CONTROL(unit)->unit, 64208 stack_id, 64209 clock_index, 64210 hmode); 64211 } 64212 64213 int 64214 bcm_loop_tdpll_output_clock_holdover_reset( 64215 int unit, 64216 int stack_id, 64217 int clock_index) 64218 { 64219 return bcm_tdpll_output_clock_holdover_reset( 64220 BCM_CONTROL(unit)->unit, 64221 stack_id, 64222 clock_index); 64223 } 64224 64225 int 64226 bcm_loop_tdpll_output_clock_synth_frequency_get( 64227 int unit, 64228 int stack_id, 64229 int clock_index, 64230 uint32 * synth_frequency, 64231 uint32 * tsevent_frequency) 64232 { 64233 return bcm_tdpll_output_clock_synth_frequency_get( 64234 BCM_CONTROL(unit)->unit, 64235 stack_id, 64236 clock_index, 64237 synth_frequency, 64238 tsevent_frequency); 64239 } 64240 64241 int 64242 bcm_loop_tdpll_output_clock_synth_frequency_set( 64243 int unit, 64244 int stack_id, 64245 int clock_index, 64246 uint32 synth_frequency, 64247 uint32 tsevent_frequency) 64248 { 64249 return bcm_tdpll_output_clock_synth_frequency_set( 64250 BCM_CONTROL(unit)->unit, 64251 stack_id, 64252 clock_index, 64253 synth_frequency, 64254 tsevent_frequency); 64255 } 64256 64257 #endif /* INCLUDE_PTP */ 64258 64259 int 64260 bcm_loop_telemetry_config_get( 64261 int unit, 64262 int telemetry_instance, 64263 int core, 64264 int max_count, 64265 bcm_telemetry_config_t * telemetry_config_list, 64266 int * config_count) 64267 { 64268 return bcm_telemetry_config_get( 64269 BCM_CONTROL(unit)->unit, 64270 telemetry_instance, 64271 core, 64272 max_count, 64273 telemetry_config_list, 64274 config_count); 64275 } 64276 64277 int 64278 bcm_loop_telemetry_config_set( 64279 int unit, 64280 int telemetry_instance, 64281 int core, 64282 int config_count, 64283 bcm_telemetry_config_t * telemetry_config_list) 64284 { 64285 return bcm_telemetry_config_set( 64286 BCM_CONTROL(unit)->unit, 64287 telemetry_instance, 64288 core, 64289 config_count, 64290 telemetry_config_list); 64291 } 64292 64293 /* bcm_telemetry_config_t_init not dispatchable */ 64294 64295 int 64296 bcm_loop_telemetry_detach( 64297 int unit) 64298 { 64299 return bcm_telemetry_detach( 64300 BCM_CONTROL(unit)->unit); 64301 } 64302 64303 int 64304 bcm_loop_telemetry_export_config_delete( 64305 int unit, 64306 int telemetry_instance, 64307 bcm_collector_t collector_id, 64308 int export_profile_id) 64309 { 64310 return bcm_telemetry_export_config_delete( 64311 BCM_CONTROL(unit)->unit, 64312 telemetry_instance, 64313 collector_id, 64314 export_profile_id); 64315 } 64316 64317 int 64318 bcm_loop_telemetry_export_config_get( 64319 int unit, 64320 int telemetry_instance, 64321 bcm_collector_t * collector_id, 64322 int * export_profile_id) 64323 { 64324 return bcm_telemetry_export_config_get( 64325 BCM_CONTROL(unit)->unit, 64326 telemetry_instance, 64327 collector_id, 64328 export_profile_id); 64329 } 64330 64331 int 64332 bcm_loop_telemetry_export_config_set( 64333 int unit, 64334 int telemetry_instance, 64335 bcm_collector_t collector_id, 64336 int export_profile_id) 64337 { 64338 return bcm_telemetry_export_config_set( 64339 BCM_CONTROL(unit)->unit, 64340 telemetry_instance, 64341 collector_id, 64342 export_profile_id); 64343 } 64344 64345 int 64346 bcm_loop_telemetry_init( 64347 int unit) 64348 { 64349 return bcm_telemetry_init( 64350 BCM_CONTROL(unit)->unit); 64351 } 64352 64353 int 64354 bcm_loop_telemetry_instance_export_stats_get( 64355 int unit, 64356 int telemetry_instance, 64357 bcm_collector_t collector_id, 64358 bcm_telemetry_instance_export_stats_t * stats) 64359 { 64360 return bcm_telemetry_instance_export_stats_get( 64361 BCM_CONTROL(unit)->unit, 64362 telemetry_instance, 64363 collector_id, 64364 stats); 64365 } 64366 64367 int 64368 bcm_loop_telemetry_instance_export_stats_set( 64369 int unit, 64370 int telemetry_instance, 64371 bcm_collector_t collector_id, 64372 bcm_telemetry_instance_export_stats_t * stats) 64373 { 64374 return bcm_telemetry_instance_export_stats_set( 64375 BCM_CONTROL(unit)->unit, 64376 telemetry_instance, 64377 collector_id, 64378 stats); 64379 } 64380 64381 int 64382 bcm_loop_telemetry_system_id_get( 64383 int unit, 64384 int max_system_id_len, 64385 int * system_id_len, 64386 uint8 * system_id) 64387 { 64388 return bcm_telemetry_system_id_get( 64389 BCM_CONTROL(unit)->unit, 64390 max_system_id_len, 64391 system_id_len, 64392 system_id); 64393 } 64394 64395 int 64396 bcm_loop_telemetry_system_id_set( 64397 int unit, 64398 int system_id_len, 64399 uint8 * system_id) 64400 { 64401 return bcm_telemetry_system_id_set( 64402 BCM_CONTROL(unit)->unit, 64403 system_id_len, 64404 system_id); 64405 } 64406 64407 int 64408 bcm_loop_time_bs_log_configure_get( 64409 int unit, 64410 bcm_time_bs_log_cfg_t * bs_log_cfg) 64411 { 64412 return bcm_time_bs_log_configure_get( 64413 BCM_CONTROL(unit)->unit, 64414 bs_log_cfg); 64415 } 64416 64417 int 64418 bcm_loop_time_bs_log_configure_set( 64419 int unit, 64420 bcm_time_bs_log_cfg_t bs_log_cfg) 64421 { 64422 return bcm_time_bs_log_configure_set( 64423 BCM_CONTROL(unit)->unit, 64424 bs_log_cfg); 64425 } 64426 64427 int 64428 bcm_loop_time_bs_time_get( 64429 int unit, 64430 bcm_time_spec_t * bs_time) 64431 { 64432 return bcm_time_bs_time_get( 64433 BCM_CONTROL(unit)->unit, 64434 bs_time); 64435 } 64436 64437 int 64438 bcm_loop_time_capture_cb_register( 64439 int unit, 64440 bcm_time_if_t id, 64441 bcm_time_capture_cb_type_t cb_type, 64442 bcm_time_capture_cb cb, 64443 void * user_data) 64444 { 64445 return bcm_time_capture_cb_register( 64446 BCM_CONTROL(unit)->unit, 64447 id, 64448 cb_type, 64449 cb, 64450 user_data); 64451 } 64452 64453 int 64454 bcm_loop_time_capture_cb_unregister( 64455 int unit, 64456 bcm_time_if_t id, 64457 bcm_time_capture_cb_type_t cb_type) 64458 { 64459 return bcm_time_capture_cb_unregister( 64460 BCM_CONTROL(unit)->unit, 64461 id, 64462 cb_type); 64463 } 64464 64465 int 64466 bcm_loop_time_capture_enable_set( 64467 int unit, 64468 bcm_time_if_t id, 64469 bcm_time_capture_t * time_capture, 64470 int enable, 64471 int * capture_handle) 64472 { 64473 return bcm_time_capture_enable_set( 64474 BCM_CONTROL(unit)->unit, 64475 id, 64476 time_capture, 64477 enable, 64478 capture_handle); 64479 } 64480 64481 int 64482 bcm_loop_time_capture_get( 64483 int unit, 64484 bcm_time_if_t intf_id, 64485 bcm_time_capture_t * time) 64486 { 64487 return bcm_time_capture_get( 64488 BCM_CONTROL(unit)->unit, 64489 intf_id, 64490 time); 64491 } 64492 64493 /* bcm_time_capture_t_init not dispatchable */ 64494 64495 int 64496 bcm_loop_time_deinit( 64497 int unit) 64498 { 64499 return bcm_time_deinit( 64500 BCM_CONTROL(unit)->unit); 64501 } 64502 64503 int 64504 bcm_loop_time_heartbeat_enable_get( 64505 int unit, 64506 bcm_time_if_t id, 64507 int * enable) 64508 { 64509 return bcm_time_heartbeat_enable_get( 64510 BCM_CONTROL(unit)->unit, 64511 id, 64512 enable); 64513 } 64514 64515 int 64516 bcm_loop_time_heartbeat_enable_set( 64517 int unit, 64518 bcm_time_if_t id, 64519 int enable) 64520 { 64521 return bcm_time_heartbeat_enable_set( 64522 BCM_CONTROL(unit)->unit, 64523 id, 64524 enable); 64525 } 64526 64527 int 64528 bcm_loop_time_heartbeat_register( 64529 int unit, 64530 bcm_time_if_t id, 64531 bcm_time_heartbeat_cb f, 64532 void * user_data) 64533 { 64534 return bcm_time_heartbeat_register( 64535 BCM_CONTROL(unit)->unit, 64536 id, 64537 f, 64538 user_data); 64539 } 64540 64541 int 64542 bcm_loop_time_heartbeat_unregister( 64543 int unit, 64544 bcm_time_if_t id) 64545 { 64546 return bcm_time_heartbeat_unregister( 64547 BCM_CONTROL(unit)->unit, 64548 id); 64549 } 64550 64551 int 64552 bcm_loop_time_init( 64553 int unit) 64554 { 64555 return bcm_time_init( 64556 BCM_CONTROL(unit)->unit); 64557 } 64558 64559 int 64560 bcm_loop_time_interface_add( 64561 int unit, 64562 bcm_time_interface_t * intf) 64563 { 64564 return bcm_time_interface_add( 64565 BCM_CONTROL(unit)->unit, 64566 intf); 64567 } 64568 64569 int 64570 bcm_loop_time_interface_delete( 64571 int unit, 64572 bcm_time_if_t intf_id) 64573 { 64574 return bcm_time_interface_delete( 64575 BCM_CONTROL(unit)->unit, 64576 intf_id); 64577 } 64578 64579 int 64580 bcm_loop_time_interface_delete_all( 64581 int unit) 64582 { 64583 return bcm_time_interface_delete_all( 64584 BCM_CONTROL(unit)->unit); 64585 } 64586 64587 int 64588 bcm_loop_time_interface_get( 64589 int unit, 64590 bcm_time_interface_t * intf) 64591 { 64592 return bcm_time_interface_get( 64593 BCM_CONTROL(unit)->unit, 64594 intf); 64595 } 64596 64597 /* bcm_time_interface_t_init not dispatchable */ 64598 64599 int 64600 bcm_loop_time_interface_traverse( 64601 int unit, 64602 bcm_time_interface_traverse_cb cb, 64603 void * user_data) 64604 { 64605 return bcm_time_interface_traverse( 64606 BCM_CONTROL(unit)->unit, 64607 cb, 64608 user_data); 64609 } 64610 64611 /* bcm_time_spec_t_init not dispatchable */ 64612 64613 int 64614 bcm_loop_time_synce_clock_get( 64615 int unit, 64616 bcm_time_synce_clock_src_type_t clk_src, 64617 bcm_time_synce_divisor_setting_t * divisor_setting) 64618 { 64619 return bcm_time_synce_clock_get( 64620 BCM_CONTROL(unit)->unit, 64621 clk_src, 64622 divisor_setting); 64623 } 64624 64625 int 64626 bcm_loop_time_synce_clock_set( 64627 int unit, 64628 bcm_time_synce_clock_src_type_t clk_src, 64629 bcm_time_synce_divisor_setting_t * divisor_setting) 64630 { 64631 return bcm_time_synce_clock_set( 64632 BCM_CONTROL(unit)->unit, 64633 clk_src, 64634 divisor_setting); 64635 } 64636 64637 int 64638 bcm_loop_time_synce_clock_source_control_get( 64639 int unit, 64640 bcm_time_synce_clock_source_config_t * clk_src_config, 64641 bcm_time_synce_clock_source_control_t control, 64642 int * value) 64643 { 64644 return bcm_time_synce_clock_source_control_get( 64645 BCM_CONTROL(unit)->unit, 64646 clk_src_config, 64647 control, 64648 value); 64649 } 64650 64651 int 64652 bcm_loop_time_synce_clock_source_control_set( 64653 int unit, 64654 bcm_time_synce_clock_source_config_t * clk_src_config, 64655 bcm_time_synce_clock_source_control_t control, 64656 int value) 64657 { 64658 return bcm_time_synce_clock_source_control_set( 64659 BCM_CONTROL(unit)->unit, 64660 clk_src_config, 64661 control, 64662 value); 64663 } 64664 64665 /* bcm_time_synce_divisor_setting_t_init not dispatchable */ 64666 64667 int 64668 bcm_loop_time_tod_get( 64669 int unit, 64670 uint32 stages, 64671 bcm_time_tod_t * tod) 64672 { 64673 return bcm_time_tod_get( 64674 BCM_CONTROL(unit)->unit, 64675 stages, 64676 tod); 64677 } 64678 64679 int 64680 bcm_loop_time_tod_set( 64681 int unit, 64682 uint32 stages, 64683 bcm_time_tod_t * tod) 64684 { 64685 return bcm_time_tod_set( 64686 BCM_CONTROL(unit)->unit, 64687 stages, 64688 tod); 64689 } 64690 64691 /* bcm_time_tod_t_init not dispatchable */ 64692 64693 int 64694 bcm_loop_time_trigger_enable_get( 64695 int unit, 64696 bcm_time_if_t id, 64697 uint32 * mode_flags) 64698 { 64699 return bcm_time_trigger_enable_get( 64700 BCM_CONTROL(unit)->unit, 64701 id, 64702 mode_flags); 64703 } 64704 64705 int 64706 bcm_loop_time_trigger_enable_set( 64707 int unit, 64708 bcm_time_if_t id, 64709 uint32 mode_flags) 64710 { 64711 return bcm_time_trigger_enable_set( 64712 BCM_CONTROL(unit)->unit, 64713 id, 64714 mode_flags); 64715 } 64716 64717 int 64718 bcm_loop_time_ts_counter_get( 64719 int unit, 64720 bcm_time_ts_counter_t * counter) 64721 { 64722 return bcm_time_ts_counter_get( 64723 BCM_CONTROL(unit)->unit, 64724 counter); 64725 } 64726 64727 int 64728 bcm_loop_time_ts_counter_set( 64729 int unit, 64730 bcm_time_ts_counter_t * counter) 64731 { 64732 return bcm_time_ts_counter_set( 64733 BCM_CONTROL(unit)->unit, 64734 counter); 64735 } 64736 64737 /* bcm_time_ts_counter_t_init not dispatchable */ 64738 64739 /* bcm_topo_map_get not dispatchable */ 64740 64741 /* bcm_topo_map_set not dispatchable */ 64742 64743 int 64744 bcm_loop_topo_port_get( 64745 int unit, 64746 int dest_modid, 64747 bcm_port_t * exit_port) 64748 { 64749 return bcm_topo_port_get( 64750 BCM_CONTROL(unit)->unit, 64751 dest_modid, 64752 exit_port); 64753 } 64754 64755 #ifdef INCLUDE_L3 64756 64757 int 64758 bcm_loop_trill_cleanup( 64759 int unit) 64760 { 64761 return bcm_trill_cleanup( 64762 BCM_CONTROL(unit)->unit); 64763 } 64764 64765 int 64766 bcm_loop_trill_init( 64767 int unit) 64768 { 64769 return bcm_trill_init( 64770 BCM_CONTROL(unit)->unit); 64771 } 64772 64773 int 64774 bcm_loop_trill_multicast_adjacency_add( 64775 int unit, 64776 bcm_trill_multicast_adjacency_t * trill_multicast_adjacency) 64777 { 64778 return bcm_trill_multicast_adjacency_add( 64779 BCM_CONTROL(unit)->unit, 64780 trill_multicast_adjacency); 64781 } 64782 64783 int 64784 bcm_loop_trill_multicast_adjacency_delete( 64785 int unit, 64786 bcm_trill_multicast_adjacency_t * trill_multicast_adjacency) 64787 { 64788 return bcm_trill_multicast_adjacency_delete( 64789 BCM_CONTROL(unit)->unit, 64790 trill_multicast_adjacency); 64791 } 64792 64793 int 64794 bcm_loop_trill_multicast_adjacency_delete_all( 64795 int unit) 64796 { 64797 return bcm_trill_multicast_adjacency_delete_all( 64798 BCM_CONTROL(unit)->unit); 64799 } 64800 64801 int 64802 bcm_loop_trill_multicast_adjacency_traverse( 64803 int unit, 64804 bcm_trill_multicast_adjacency_traverse_cb cb, 64805 void * user_data) 64806 { 64807 return bcm_trill_multicast_adjacency_traverse( 64808 BCM_CONTROL(unit)->unit, 64809 cb, 64810 user_data); 64811 } 64812 64813 int 64814 bcm_loop_trill_multicast_delete_all( 64815 int unit, 64816 bcm_trill_name_t root_name) 64817 { 64818 return bcm_trill_multicast_delete_all( 64819 BCM_CONTROL(unit)->unit, 64820 root_name); 64821 } 64822 64823 int 64824 bcm_loop_trill_multicast_entry_add( 64825 int unit, 64826 bcm_trill_multicast_entry_t * trill_mc_entry) 64827 { 64828 return bcm_trill_multicast_entry_add( 64829 BCM_CONTROL(unit)->unit, 64830 trill_mc_entry); 64831 } 64832 64833 int 64834 bcm_loop_trill_multicast_entry_delete( 64835 int unit, 64836 bcm_trill_multicast_entry_t * trill_mc_entry) 64837 { 64838 return bcm_trill_multicast_entry_delete( 64839 BCM_CONTROL(unit)->unit, 64840 trill_mc_entry); 64841 } 64842 64843 int 64844 bcm_loop_trill_multicast_entry_get( 64845 int unit, 64846 bcm_trill_multicast_entry_t * trill_mc_entry) 64847 { 64848 return bcm_trill_multicast_entry_get( 64849 BCM_CONTROL(unit)->unit, 64850 trill_mc_entry); 64851 } 64852 64853 /* bcm_trill_multicast_entry_t_init not dispatchable */ 64854 64855 int 64856 bcm_loop_trill_multicast_entry_traverse( 64857 int unit, 64858 bcm_trill_multicast_entry_traverse_cb cb, 64859 void * user_data) 64860 { 64861 return bcm_trill_multicast_entry_traverse( 64862 BCM_CONTROL(unit)->unit, 64863 cb, 64864 user_data); 64865 } 64866 64867 int 64868 bcm_loop_trill_multicast_source_add( 64869 int unit, 64870 bcm_trill_name_t root_name, 64871 bcm_trill_name_t source_rbridge_name, 64872 bcm_gport_t port, 64873 bcm_if_t encap_intf) 64874 { 64875 return bcm_trill_multicast_source_add( 64876 BCM_CONTROL(unit)->unit, 64877 root_name, 64878 source_rbridge_name, 64879 port, 64880 encap_intf); 64881 } 64882 64883 int 64884 bcm_loop_trill_multicast_source_delete( 64885 int unit, 64886 bcm_trill_name_t root_name, 64887 bcm_trill_name_t source_rbridge_name, 64888 bcm_gport_t port, 64889 bcm_if_t encap_intf) 64890 { 64891 return bcm_trill_multicast_source_delete( 64892 BCM_CONTROL(unit)->unit, 64893 root_name, 64894 source_rbridge_name, 64895 port, 64896 encap_intf); 64897 } 64898 64899 int 64900 bcm_loop_trill_multicast_source_get( 64901 int unit, 64902 bcm_trill_name_t root_name, 64903 bcm_trill_name_t source_rbridge_name, 64904 bcm_gport_t * port) 64905 { 64906 return bcm_trill_multicast_source_get( 64907 BCM_CONTROL(unit)->unit, 64908 root_name, 64909 source_rbridge_name, 64910 port); 64911 } 64912 64913 int 64914 bcm_loop_trill_multicast_source_traverse( 64915 int unit, 64916 bcm_trill_multicast_source_traverse_cb cb, 64917 void * user_data) 64918 { 64919 return bcm_trill_multicast_source_traverse( 64920 BCM_CONTROL(unit)->unit, 64921 cb, 64922 user_data); 64923 } 64924 64925 int 64926 bcm_loop_trill_port_add( 64927 int unit, 64928 bcm_trill_port_t * trill_port) 64929 { 64930 return bcm_trill_port_add( 64931 BCM_CONTROL(unit)->unit, 64932 trill_port); 64933 } 64934 64935 int 64936 bcm_loop_trill_port_delete( 64937 int unit, 64938 bcm_gport_t trill_port_id) 64939 { 64940 return bcm_trill_port_delete( 64941 BCM_CONTROL(unit)->unit, 64942 trill_port_id); 64943 } 64944 64945 int 64946 bcm_loop_trill_port_delete_all( 64947 int unit) 64948 { 64949 return bcm_trill_port_delete_all( 64950 BCM_CONTROL(unit)->unit); 64951 } 64952 64953 int 64954 bcm_loop_trill_port_get( 64955 int unit, 64956 bcm_trill_port_t * trill_port) 64957 { 64958 return bcm_trill_port_get( 64959 BCM_CONTROL(unit)->unit, 64960 trill_port); 64961 } 64962 64963 int 64964 bcm_loop_trill_port_get_all( 64965 int unit, 64966 int port_max, 64967 bcm_trill_port_t * port_array, 64968 int * port_count) 64969 { 64970 return bcm_trill_port_get_all( 64971 BCM_CONTROL(unit)->unit, 64972 port_max, 64973 port_array, 64974 port_count); 64975 } 64976 64977 /* bcm_trill_port_t_init not dispatchable */ 64978 64979 int 64980 bcm_loop_trill_rbridge_entry_add( 64981 int unit, 64982 bcm_trill_rbridge_t * trill_entry) 64983 { 64984 return bcm_trill_rbridge_entry_add( 64985 BCM_CONTROL(unit)->unit, 64986 trill_entry); 64987 } 64988 64989 int 64990 bcm_loop_trill_rbridge_entry_delete( 64991 int unit, 64992 bcm_trill_rbridge_t * trill_entry) 64993 { 64994 return bcm_trill_rbridge_entry_delete( 64995 BCM_CONTROL(unit)->unit, 64996 trill_entry); 64997 } 64998 64999 int 65000 bcm_loop_trill_rbridge_entry_get( 65001 int unit, 65002 bcm_trill_rbridge_t * trill_entry) 65003 { 65004 return bcm_trill_rbridge_entry_get( 65005 BCM_CONTROL(unit)->unit, 65006 trill_entry); 65007 } 65008 65009 int 65010 bcm_loop_trill_stat_clear( 65011 int unit, 65012 bcm_port_t port, 65013 bcm_trill_stat_t stat) 65014 { 65015 return bcm_trill_stat_clear( 65016 BCM_CONTROL(unit)->unit, 65017 port, 65018 stat); 65019 } 65020 65021 int 65022 bcm_loop_trill_stat_get( 65023 int unit, 65024 bcm_port_t port, 65025 bcm_trill_stat_t stat, 65026 uint64 * val) 65027 { 65028 return bcm_trill_stat_get( 65029 BCM_CONTROL(unit)->unit, 65030 port, 65031 stat, 65032 val); 65033 } 65034 65035 int 65036 bcm_loop_trill_stat_get32( 65037 int unit, 65038 bcm_port_t port, 65039 bcm_trill_stat_t stat, 65040 uint32 * val) 65041 { 65042 return bcm_trill_stat_get32( 65043 BCM_CONTROL(unit)->unit, 65044 port, 65045 stat, 65046 val); 65047 } 65048 65049 /* bcm_trill_vpn_config_t_init not dispatchable */ 65050 65051 int 65052 bcm_loop_trill_vpn_create( 65053 int unit, 65054 bcm_trill_vpn_config_t * info) 65055 { 65056 return bcm_trill_vpn_create( 65057 BCM_CONTROL(unit)->unit, 65058 info); 65059 } 65060 65061 int 65062 bcm_loop_trill_vpn_destroy( 65063 int unit, 65064 bcm_vpn_t vpn) 65065 { 65066 return bcm_trill_vpn_destroy( 65067 BCM_CONTROL(unit)->unit, 65068 vpn); 65069 } 65070 65071 int 65072 bcm_loop_trill_vpn_destroy_all( 65073 int unit) 65074 { 65075 return bcm_trill_vpn_destroy_all( 65076 BCM_CONTROL(unit)->unit); 65077 } 65078 65079 int 65080 bcm_loop_trill_vpn_get( 65081 int unit, 65082 bcm_vpn_t vpn, 65083 bcm_trill_vpn_config_t * info) 65084 { 65085 return bcm_trill_vpn_get( 65086 BCM_CONTROL(unit)->unit, 65087 vpn, 65088 info); 65089 } 65090 65091 int 65092 bcm_loop_trill_vpn_traverse( 65093 int unit, 65094 bcm_trill_vpn_traverse_cb cb, 65095 void * user_data) 65096 { 65097 return bcm_trill_vpn_traverse( 65098 BCM_CONTROL(unit)->unit, 65099 cb, 65100 user_data); 65101 } 65102 65103 #endif /* INCLUDE_L3 */ 65104 65105 int 65106 bcm_loop_trunk_agm_attach( 65107 int unit, 65108 bcm_trunk_t trunk_id, 65109 bcm_switch_agm_id_t agm_id) 65110 { 65111 return bcm_trunk_agm_attach( 65112 BCM_CONTROL(unit)->unit, 65113 trunk_id, 65114 agm_id); 65115 } 65116 65117 int 65118 bcm_loop_trunk_agm_attach_get( 65119 int unit, 65120 bcm_trunk_t trunk_id, 65121 bcm_switch_agm_id_t * agm_id) 65122 { 65123 return bcm_trunk_agm_attach_get( 65124 BCM_CONTROL(unit)->unit, 65125 trunk_id, 65126 agm_id); 65127 } 65128 65129 int 65130 bcm_loop_trunk_agm_detach( 65131 int unit, 65132 bcm_trunk_t trunk_id, 65133 bcm_switch_agm_id_t agm_id) 65134 { 65135 return bcm_trunk_agm_detach( 65136 BCM_CONTROL(unit)->unit, 65137 trunk_id, 65138 agm_id); 65139 } 65140 65141 int 65142 bcm_loop_trunk_bitmap_expand( 65143 int unit, 65144 bcm_pbmp_t * pbmp_ptr) 65145 { 65146 return bcm_trunk_bitmap_expand( 65147 BCM_CONTROL(unit)->unit, 65148 pbmp_ptr); 65149 } 65150 65151 int 65152 bcm_loop_trunk_chip_info_get( 65153 int unit, 65154 bcm_trunk_chip_info_t * ta_info) 65155 { 65156 return bcm_trunk_chip_info_get( 65157 BCM_CONTROL(unit)->unit, 65158 ta_info); 65159 } 65160 65161 /* bcm_trunk_chip_info_t_init not dispatchable */ 65162 65163 int 65164 bcm_loop_trunk_create( 65165 int unit, 65166 uint32 flags, 65167 bcm_trunk_t * tid) 65168 { 65169 return bcm_trunk_create( 65170 BCM_CONTROL(unit)->unit, 65171 flags, 65172 tid); 65173 } 65174 65175 int 65176 bcm_loop_trunk_destroy( 65177 int unit, 65178 bcm_trunk_t tid) 65179 { 65180 return bcm_trunk_destroy( 65181 BCM_CONTROL(unit)->unit, 65182 tid); 65183 } 65184 65185 int 65186 bcm_loop_trunk_detach( 65187 int unit) 65188 { 65189 return bcm_trunk_detach( 65190 BCM_CONTROL(unit)->unit); 65191 } 65192 65193 int 65194 bcm_loop_trunk_egress_get( 65195 int unit, 65196 bcm_trunk_t tid, 65197 bcm_pbmp_t * pbmp) 65198 { 65199 return bcm_trunk_egress_get( 65200 BCM_CONTROL(unit)->unit, 65201 tid, 65202 pbmp); 65203 } 65204 65205 int 65206 bcm_loop_trunk_egress_set( 65207 int unit, 65208 bcm_trunk_t tid, 65209 bcm_pbmp_t pbmp) 65210 { 65211 return bcm_trunk_egress_set( 65212 BCM_CONTROL(unit)->unit, 65213 tid, 65214 pbmp); 65215 } 65216 65217 int 65218 bcm_loop_trunk_ethertype_get( 65219 int unit, 65220 uint32 * flags, 65221 int ethertype_max, 65222 int * ethertype_array, 65223 int * ethertype_count) 65224 { 65225 return bcm_trunk_ethertype_get( 65226 BCM_CONTROL(unit)->unit, 65227 flags, 65228 ethertype_max, 65229 ethertype_array, 65230 ethertype_count); 65231 } 65232 65233 int 65234 bcm_loop_trunk_ethertype_set( 65235 int unit, 65236 uint32 flags, 65237 int ethertype_count, 65238 int * ethertype_array) 65239 { 65240 return bcm_trunk_ethertype_set( 65241 BCM_CONTROL(unit)->unit, 65242 flags, 65243 ethertype_count, 65244 ethertype_array); 65245 } 65246 65247 int 65248 bcm_loop_trunk_failover_get( 65249 int unit, 65250 bcm_trunk_t tid, 65251 bcm_gport_t failport, 65252 int * psc, 65253 uint32 * flags, 65254 int array_size, 65255 bcm_gport_t * fail_to_array, 65256 int * array_count) 65257 { 65258 return bcm_trunk_failover_get( 65259 BCM_CONTROL(unit)->unit, 65260 tid, 65261 failport, 65262 psc, 65263 flags, 65264 array_size, 65265 fail_to_array, 65266 array_count); 65267 } 65268 65269 int 65270 bcm_loop_trunk_failover_set( 65271 int unit, 65272 bcm_trunk_t tid, 65273 bcm_gport_t failport, 65274 int psc, 65275 uint32 flags, 65276 int count, 65277 bcm_gport_t * fail_to_array) 65278 { 65279 return bcm_trunk_failover_set( 65280 BCM_CONTROL(unit)->unit, 65281 tid, 65282 failport, 65283 psc, 65284 flags, 65285 count, 65286 fail_to_array); 65287 } 65288 65289 int 65290 bcm_loop_trunk_find( 65291 int unit, 65292 bcm_module_t modid, 65293 bcm_gport_t gport, 65294 bcm_trunk_t * tid) 65295 { 65296 return bcm_trunk_find( 65297 BCM_CONTROL(unit)->unit, 65298 modid, 65299 gport, 65300 tid); 65301 } 65302 65303 int 65304 bcm_loop_trunk_get( 65305 int unit, 65306 bcm_trunk_t tid, 65307 bcm_trunk_info_t * t_data, 65308 int member_max, 65309 bcm_trunk_member_t * member_array, 65310 int * member_count) 65311 { 65312 return bcm_trunk_get( 65313 BCM_CONTROL(unit)->unit, 65314 tid, 65315 t_data, 65316 member_max, 65317 member_array, 65318 member_count); 65319 } 65320 65321 int 65322 bcm_loop_trunk_gport_add( 65323 int unit, 65324 bcm_trunk_t tid, 65325 bcm_gport_t gport) 65326 { 65327 return bcm_trunk_gport_add( 65328 BCM_CONTROL(unit)->unit, 65329 tid, 65330 gport); 65331 } 65332 65333 int 65334 bcm_loop_trunk_gport_delete( 65335 int unit, 65336 bcm_trunk_t tid, 65337 bcm_gport_t gport) 65338 { 65339 return bcm_trunk_gport_delete( 65340 BCM_CONTROL(unit)->unit, 65341 tid, 65342 gport); 65343 } 65344 65345 int 65346 bcm_loop_trunk_gport_delete_all( 65347 int unit, 65348 bcm_trunk_t tid) 65349 { 65350 return bcm_trunk_gport_delete_all( 65351 BCM_CONTROL(unit)->unit, 65352 tid); 65353 } 65354 65355 int 65356 bcm_loop_trunk_gport_get_all( 65357 int unit, 65358 bcm_trunk_t tid, 65359 int gport_size, 65360 bcm_gport_t * gport_array, 65361 int * count) 65362 { 65363 return bcm_trunk_gport_get_all( 65364 BCM_CONTROL(unit)->unit, 65365 tid, 65366 gport_size, 65367 gport_array, 65368 count); 65369 } 65370 65371 /* bcm_trunk_info_t_init not dispatchable */ 65372 65373 int 65374 bcm_loop_trunk_init( 65375 int unit) 65376 { 65377 return bcm_trunk_init( 65378 BCM_CONTROL(unit)->unit); 65379 } 65380 65381 int 65382 bcm_loop_trunk_mcast_join( 65383 int unit, 65384 bcm_trunk_t tid, 65385 bcm_vlan_t vid, 65386 bcm_mac_t mac) 65387 { 65388 return bcm_trunk_mcast_join( 65389 BCM_CONTROL(unit)->unit, 65390 tid, 65391 vid, 65392 mac); 65393 } 65394 65395 int 65396 bcm_loop_trunk_member_add( 65397 int unit, 65398 bcm_trunk_t tid, 65399 bcm_trunk_member_t * member) 65400 { 65401 return bcm_trunk_member_add( 65402 BCM_CONTROL(unit)->unit, 65403 tid, 65404 member); 65405 } 65406 65407 int 65408 bcm_loop_trunk_member_delete( 65409 int unit, 65410 bcm_trunk_t tid, 65411 bcm_trunk_member_t * member) 65412 { 65413 return bcm_trunk_member_delete( 65414 BCM_CONTROL(unit)->unit, 65415 tid, 65416 member); 65417 } 65418 65419 int 65420 bcm_loop_trunk_member_delete_all( 65421 int unit, 65422 bcm_trunk_t tid) 65423 { 65424 return bcm_trunk_member_delete_all( 65425 BCM_CONTROL(unit)->unit, 65426 tid); 65427 } 65428 65429 int 65430 bcm_loop_trunk_member_status_get( 65431 int unit, 65432 bcm_gport_t member, 65433 int * status) 65434 { 65435 return bcm_trunk_member_status_get( 65436 BCM_CONTROL(unit)->unit, 65437 member, 65438 status); 65439 } 65440 65441 int 65442 bcm_loop_trunk_member_status_set( 65443 int unit, 65444 bcm_gport_t member, 65445 int status) 65446 { 65447 return bcm_trunk_member_status_set( 65448 BCM_CONTROL(unit)->unit, 65449 member, 65450 status); 65451 } 65452 65453 /* bcm_trunk_member_t_init not dispatchable */ 65454 65455 int 65456 bcm_loop_trunk_override_ipmc_get( 65457 int unit, 65458 bcm_port_t port, 65459 bcm_trunk_t tid, 65460 int idx, 65461 int * enable) 65462 { 65463 return bcm_trunk_override_ipmc_get( 65464 BCM_CONTROL(unit)->unit, 65465 port, 65466 tid, 65467 idx, 65468 enable); 65469 } 65470 65471 int 65472 bcm_loop_trunk_override_ipmc_set( 65473 int unit, 65474 bcm_port_t port, 65475 bcm_trunk_t tid, 65476 int idx, 65477 int enable) 65478 { 65479 return bcm_trunk_override_ipmc_set( 65480 BCM_CONTROL(unit)->unit, 65481 port, 65482 tid, 65483 idx, 65484 enable); 65485 } 65486 65487 int 65488 bcm_loop_trunk_override_mcast_get( 65489 int unit, 65490 bcm_port_t port, 65491 bcm_trunk_t tid, 65492 int idx, 65493 int * enable) 65494 { 65495 return bcm_trunk_override_mcast_get( 65496 BCM_CONTROL(unit)->unit, 65497 port, 65498 tid, 65499 idx, 65500 enable); 65501 } 65502 65503 int 65504 bcm_loop_trunk_override_mcast_set( 65505 int unit, 65506 bcm_port_t port, 65507 bcm_trunk_t tid, 65508 int idx, 65509 int enable) 65510 { 65511 return bcm_trunk_override_mcast_set( 65512 BCM_CONTROL(unit)->unit, 65513 port, 65514 tid, 65515 idx, 65516 enable); 65517 } 65518 65519 int 65520 bcm_loop_trunk_override_ucast_get( 65521 int unit, 65522 bcm_port_t port, 65523 bcm_trunk_t tid, 65524 int modid, 65525 int * enable) 65526 { 65527 return bcm_trunk_override_ucast_get( 65528 BCM_CONTROL(unit)->unit, 65529 port, 65530 tid, 65531 modid, 65532 enable); 65533 } 65534 65535 int 65536 bcm_loop_trunk_override_ucast_set( 65537 int unit, 65538 bcm_port_t port, 65539 bcm_trunk_t tid, 65540 int modid, 65541 int enable) 65542 { 65543 return bcm_trunk_override_ucast_set( 65544 BCM_CONTROL(unit)->unit, 65545 port, 65546 tid, 65547 modid, 65548 enable); 65549 } 65550 65551 int 65552 bcm_loop_trunk_override_vlan_get( 65553 int unit, 65554 bcm_port_t port, 65555 bcm_trunk_t tid, 65556 bcm_vlan_t vid, 65557 int * enable) 65558 { 65559 return bcm_trunk_override_vlan_get( 65560 BCM_CONTROL(unit)->unit, 65561 port, 65562 tid, 65563 vid, 65564 enable); 65565 } 65566 65567 int 65568 bcm_loop_trunk_override_vlan_set( 65569 int unit, 65570 bcm_port_t port, 65571 bcm_trunk_t tid, 65572 bcm_vlan_t vid, 65573 int enable) 65574 { 65575 return bcm_trunk_override_vlan_set( 65576 BCM_CONTROL(unit)->unit, 65577 port, 65578 tid, 65579 vid, 65580 enable); 65581 } 65582 65583 int 65584 bcm_loop_trunk_pool_get( 65585 int unit, 65586 bcm_port_t port, 65587 bcm_trunk_t tid, 65588 int * size, 65589 int weights[BCM_TRUNK_MAX_PORTCNT]) 65590 { 65591 return bcm_trunk_pool_get( 65592 BCM_CONTROL(unit)->unit, 65593 port, 65594 tid, 65595 size, 65596 weights); 65597 } 65598 65599 int 65600 bcm_loop_trunk_pool_set( 65601 int unit, 65602 bcm_port_t port, 65603 bcm_trunk_t tid, 65604 int size, 65605 const int weights[BCM_TRUNK_MAX_PORTCNT]) 65606 { 65607 return bcm_trunk_pool_set( 65608 BCM_CONTROL(unit)->unit, 65609 port, 65610 tid, 65611 size, 65612 weights); 65613 } 65614 65615 int 65616 bcm_loop_trunk_pp_port_allocation_get( 65617 int unit, 65618 bcm_trunk_t trunk_id, 65619 uint32 flags, 65620 bcm_trunk_pp_port_allocation_info_t * allocation_info) 65621 { 65622 return bcm_trunk_pp_port_allocation_get( 65623 BCM_CONTROL(unit)->unit, 65624 trunk_id, 65625 flags, 65626 allocation_info); 65627 } 65628 65629 /* bcm_trunk_pp_port_allocation_info_t_init not dispatchable */ 65630 65631 int 65632 bcm_loop_trunk_pp_port_allocation_set( 65633 int unit, 65634 bcm_trunk_t trunk_id, 65635 uint32 flags, 65636 bcm_trunk_pp_port_allocation_info_t * allocation_info) 65637 { 65638 return bcm_trunk_pp_port_allocation_set( 65639 BCM_CONTROL(unit)->unit, 65640 trunk_id, 65641 flags, 65642 allocation_info); 65643 } 65644 65645 int 65646 bcm_loop_trunk_psc_get( 65647 int unit, 65648 bcm_trunk_t tid, 65649 int * psc) 65650 { 65651 return bcm_trunk_psc_get( 65652 BCM_CONTROL(unit)->unit, 65653 tid, 65654 psc); 65655 } 65656 65657 int 65658 bcm_loop_trunk_psc_set( 65659 int unit, 65660 bcm_trunk_t tid, 65661 int psc) 65662 { 65663 return bcm_trunk_psc_set( 65664 BCM_CONTROL(unit)->unit, 65665 tid, 65666 psc); 65667 } 65668 65669 int 65670 bcm_loop_trunk_resilient_replace( 65671 int unit, 65672 uint32 flags, 65673 bcm_trunk_resilient_entry_t * match_entry, 65674 int * num_entries, 65675 bcm_trunk_resilient_entry_t * replace_entry) 65676 { 65677 return bcm_trunk_resilient_replace( 65678 BCM_CONTROL(unit)->unit, 65679 flags, 65680 match_entry, 65681 num_entries, 65682 replace_entry); 65683 } 65684 65685 int 65686 bcm_loop_trunk_resilient_traverse( 65687 int unit, 65688 uint32 flags, 65689 bcm_trunk_resilient_entry_t * match_entry, 65690 bcm_trunk_resilient_traverse_cb trav_fn, 65691 void * user_data) 65692 { 65693 return bcm_trunk_resilient_traverse( 65694 BCM_CONTROL(unit)->unit, 65695 flags, 65696 match_entry, 65697 trav_fn, 65698 user_data); 65699 } 65700 65701 int 65702 bcm_loop_trunk_set( 65703 int unit, 65704 bcm_trunk_t tid, 65705 bcm_trunk_info_t * trunk_info, 65706 int member_count, 65707 bcm_trunk_member_t * member_array) 65708 { 65709 return bcm_trunk_set( 65710 BCM_CONTROL(unit)->unit, 65711 tid, 65712 trunk_info, 65713 member_count, 65714 member_array); 65715 } 65716 65717 int 65718 bcm_loop_trunk_spa_to_system_phys_port_map_get( 65719 int unit, 65720 uint32 flags, 65721 uint32 system_port_aggregate, 65722 bcm_gport_t * gport) 65723 { 65724 return bcm_trunk_spa_to_system_phys_port_map_get( 65725 BCM_CONTROL(unit)->unit, 65726 flags, 65727 system_port_aggregate, 65728 gport); 65729 } 65730 65731 int 65732 bcm_loop_trunk_vplag_get( 65733 int unit, 65734 bcm_trunk_t tid, 65735 bcm_gport_t * vplag_port_id) 65736 { 65737 return bcm_trunk_vplag_get( 65738 BCM_CONTROL(unit)->unit, 65739 tid, 65740 vplag_port_id); 65741 } 65742 65743 int 65744 bcm_loop_trunk_with_vplag_create( 65745 int unit, 65746 uint32 flags, 65747 bcm_trunk_t * tid, 65748 bcm_gport_t * vplag_port_id) 65749 { 65750 return bcm_trunk_with_vplag_create( 65751 BCM_CONTROL(unit)->unit, 65752 flags, 65753 tid, 65754 vplag_port_id); 65755 } 65756 65757 int 65758 bcm_loop_tsn_control_get( 65759 int unit, 65760 bcm_tsn_control_t type, 65761 uint32 * arg) 65762 { 65763 return bcm_tsn_control_get( 65764 BCM_CONTROL(unit)->unit, 65765 type, 65766 arg); 65767 } 65768 65769 int 65770 bcm_loop_tsn_control_set( 65771 int unit, 65772 bcm_tsn_control_t type, 65773 uint32 arg) 65774 { 65775 return bcm_tsn_control_set( 65776 BCM_CONTROL(unit)->unit, 65777 type, 65778 arg); 65779 } 65780 65781 int 65782 bcm_loop_tsn_detach( 65783 int unit) 65784 { 65785 return bcm_tsn_detach( 65786 BCM_CONTROL(unit)->unit); 65787 } 65788 65789 int 65790 bcm_loop_tsn_event_notification_traverse( 65791 int unit, 65792 bcm_tsn_event_notification_traverse_cb cb, 65793 void * user_data) 65794 { 65795 return bcm_tsn_event_notification_traverse( 65796 BCM_CONTROL(unit)->unit, 65797 cb, 65798 user_data); 65799 } 65800 65801 int 65802 bcm_loop_tsn_event_register( 65803 int unit, 65804 bcm_tsn_event_type_t event, 65805 bcm_tsn_event_source_t * src, 65806 bcm_tsn_event_cb cb, 65807 void * user_data) 65808 { 65809 return bcm_tsn_event_register( 65810 BCM_CONTROL(unit)->unit, 65811 event, 65812 src, 65813 cb, 65814 user_data); 65815 } 65816 65817 /* bcm_tsn_event_source_t_init not dispatchable */ 65818 65819 int 65820 bcm_loop_tsn_event_unregister( 65821 int unit, 65822 bcm_tsn_event_type_t event, 65823 bcm_tsn_event_source_t * src, 65824 bcm_tsn_event_cb cb) 65825 { 65826 return bcm_tsn_event_unregister( 65827 BCM_CONTROL(unit)->unit, 65828 event, 65829 src, 65830 cb); 65831 } 65832 65833 int 65834 bcm_loop_tsn_flow_config_get( 65835 int unit, 65836 bcm_tsn_flow_t flow_id, 65837 bcm_tsn_flow_config_t * config) 65838 { 65839 return bcm_tsn_flow_config_get( 65840 BCM_CONTROL(unit)->unit, 65841 flow_id, 65842 config); 65843 } 65844 65845 int 65846 bcm_loop_tsn_flow_config_set( 65847 int unit, 65848 bcm_tsn_flow_t flow_id, 65849 bcm_tsn_flow_config_t * config) 65850 { 65851 return bcm_tsn_flow_config_set( 65852 BCM_CONTROL(unit)->unit, 65853 flow_id, 65854 config); 65855 } 65856 65857 /* bcm_tsn_flow_config_t_init not dispatchable */ 65858 65859 int 65860 bcm_loop_tsn_flowset_config_get( 65861 int unit, 65862 bcm_tsn_flowset_t flowset, 65863 bcm_tsn_pri_map_t * pri_map, 65864 bcm_tsn_flow_config_t * default_config) 65865 { 65866 return bcm_tsn_flowset_config_get( 65867 BCM_CONTROL(unit)->unit, 65868 flowset, 65869 pri_map, 65870 default_config); 65871 } 65872 65873 int 65874 bcm_loop_tsn_flowset_create( 65875 int unit, 65876 bcm_tsn_pri_map_t pri_map, 65877 bcm_tsn_flow_config_t * default_config, 65878 bcm_tsn_flowset_t * flowset) 65879 { 65880 return bcm_tsn_flowset_create( 65881 BCM_CONTROL(unit)->unit, 65882 pri_map, 65883 default_config, 65884 flowset); 65885 } 65886 65887 int 65888 bcm_loop_tsn_flowset_destroy( 65889 int unit, 65890 bcm_tsn_flowset_t flowset) 65891 { 65892 return bcm_tsn_flowset_destroy( 65893 BCM_CONTROL(unit)->unit, 65894 flowset); 65895 } 65896 65897 int 65898 bcm_loop_tsn_flowset_flow_get( 65899 int unit, 65900 bcm_tsn_flowset_t flowset, 65901 int index, 65902 bcm_tsn_flow_t * flow_id) 65903 { 65904 return bcm_tsn_flowset_flow_get( 65905 BCM_CONTROL(unit)->unit, 65906 flowset, 65907 index, 65908 flow_id); 65909 } 65910 65911 int 65912 bcm_loop_tsn_flowset_status_get( 65913 int unit, 65914 bcm_tsn_flowset_t flowset, 65915 bcm_tsn_flowset_status_t * status) 65916 { 65917 return bcm_tsn_flowset_status_get( 65918 BCM_CONTROL(unit)->unit, 65919 flowset, 65920 status); 65921 } 65922 65923 /* bcm_tsn_flowset_status_t_init not dispatchable */ 65924 65925 int 65926 bcm_loop_tsn_flowset_traverse( 65927 int unit, 65928 bcm_tsn_flowset_traverse_cb cb, 65929 void * user_data) 65930 { 65931 return bcm_tsn_flowset_traverse( 65932 BCM_CONTROL(unit)->unit, 65933 cb, 65934 user_data); 65935 } 65936 65937 int 65938 bcm_loop_tsn_ingress_mtu_config_get( 65939 int unit, 65940 bcm_tsn_ingress_mtu_config_t * config) 65941 { 65942 return bcm_tsn_ingress_mtu_config_get( 65943 BCM_CONTROL(unit)->unit, 65944 config); 65945 } 65946 65947 int 65948 bcm_loop_tsn_ingress_mtu_config_set( 65949 int unit, 65950 bcm_tsn_ingress_mtu_config_t * config) 65951 { 65952 return bcm_tsn_ingress_mtu_config_set( 65953 BCM_CONTROL(unit)->unit, 65954 config); 65955 } 65956 65957 /* bcm_tsn_ingress_mtu_config_t_init not dispatchable */ 65958 65959 int 65960 bcm_loop_tsn_ingress_stu_config_get( 65961 int unit, 65962 bcm_tsn_ingress_stu_config_t * config) 65963 { 65964 return bcm_tsn_ingress_stu_config_get( 65965 BCM_CONTROL(unit)->unit, 65966 config); 65967 } 65968 65969 int 65970 bcm_loop_tsn_ingress_stu_config_set( 65971 int unit, 65972 bcm_tsn_ingress_stu_config_t * config) 65973 { 65974 return bcm_tsn_ingress_stu_config_set( 65975 BCM_CONTROL(unit)->unit, 65976 config); 65977 } 65978 65979 /* bcm_tsn_ingress_stu_config_t_init not dispatchable */ 65980 65981 int 65982 bcm_loop_tsn_init( 65983 int unit) 65984 { 65985 return bcm_tsn_init( 65986 BCM_CONTROL(unit)->unit); 65987 } 65988 65989 /* bcm_tsn_mtu_config_t_init not dispatchable */ 65990 65991 int 65992 bcm_loop_tsn_mtu_profile_create( 65993 int unit, 65994 bcm_tsn_mtu_profile_type_t type, 65995 bcm_tsn_mtu_config_t * config, 65996 int * mtu_profile_id) 65997 { 65998 return bcm_tsn_mtu_profile_create( 65999 BCM_CONTROL(unit)->unit, 66000 type, 66001 config, 66002 mtu_profile_id); 66003 } 66004 66005 int 66006 bcm_loop_tsn_mtu_profile_destroy( 66007 int unit, 66008 int mtu_profile_id) 66009 { 66010 return bcm_tsn_mtu_profile_destroy( 66011 BCM_CONTROL(unit)->unit, 66012 mtu_profile_id); 66013 } 66014 66015 int 66016 bcm_loop_tsn_mtu_profile_get( 66017 int unit, 66018 int mtu_profile_id, 66019 bcm_tsn_mtu_profile_type_t * type, 66020 bcm_tsn_mtu_config_t * config) 66021 { 66022 return bcm_tsn_mtu_profile_get( 66023 BCM_CONTROL(unit)->unit, 66024 mtu_profile_id, 66025 type, 66026 config); 66027 } 66028 66029 int 66030 bcm_loop_tsn_mtu_profile_set( 66031 int unit, 66032 int mtu_profile_id, 66033 bcm_tsn_mtu_config_t * config) 66034 { 66035 return bcm_tsn_mtu_profile_set( 66036 BCM_CONTROL(unit)->unit, 66037 mtu_profile_id, 66038 config); 66039 } 66040 66041 int 66042 bcm_loop_tsn_mtu_profile_traverse( 66043 int unit, 66044 bcm_tsn_mtu_profile_traverse_cb cb, 66045 void * user_data) 66046 { 66047 return bcm_tsn_mtu_profile_traverse( 66048 BCM_CONTROL(unit)->unit, 66049 cb, 66050 user_data); 66051 } 66052 66053 int 66054 bcm_loop_tsn_port_control_get( 66055 int unit, 66056 bcm_gport_t port, 66057 bcm_tsn_control_t type, 66058 uint32 * arg) 66059 { 66060 return bcm_tsn_port_control_get( 66061 BCM_CONTROL(unit)->unit, 66062 port, 66063 type, 66064 arg); 66065 } 66066 66067 int 66068 bcm_loop_tsn_port_control_set( 66069 int unit, 66070 bcm_gport_t port, 66071 bcm_tsn_control_t type, 66072 uint32 arg) 66073 { 66074 return bcm_tsn_port_control_set( 66075 BCM_CONTROL(unit)->unit, 66076 port, 66077 type, 66078 arg); 66079 } 66080 66081 int 66082 bcm_loop_tsn_port_stat_get( 66083 int unit, 66084 bcm_gport_t port, 66085 bcm_tsn_stat_t stat, 66086 uint64 * val) 66087 { 66088 return bcm_tsn_port_stat_get( 66089 BCM_CONTROL(unit)->unit, 66090 port, 66091 stat, 66092 val); 66093 } 66094 66095 int 66096 bcm_loop_tsn_port_stat_get32( 66097 int unit, 66098 bcm_gport_t port, 66099 bcm_tsn_stat_t stat, 66100 uint32 * val) 66101 { 66102 return bcm_tsn_port_stat_get32( 66103 BCM_CONTROL(unit)->unit, 66104 port, 66105 stat, 66106 val); 66107 } 66108 66109 int 66110 bcm_loop_tsn_port_stat_multi_get( 66111 int unit, 66112 bcm_gport_t port, 66113 int nstat, 66114 bcm_tsn_stat_t * stat_arr, 66115 uint64 * value_arr) 66116 { 66117 return bcm_tsn_port_stat_multi_get( 66118 BCM_CONTROL(unit)->unit, 66119 port, 66120 nstat, 66121 stat_arr, 66122 value_arr); 66123 } 66124 66125 int 66126 bcm_loop_tsn_port_stat_multi_get32( 66127 int unit, 66128 bcm_gport_t port, 66129 int nstat, 66130 bcm_tsn_stat_t * stat_arr, 66131 uint32 * value_arr) 66132 { 66133 return bcm_tsn_port_stat_multi_get32( 66134 BCM_CONTROL(unit)->unit, 66135 port, 66136 nstat, 66137 stat_arr, 66138 value_arr); 66139 } 66140 66141 int 66142 bcm_loop_tsn_port_stat_multi_set( 66143 int unit, 66144 bcm_gport_t port, 66145 int nstat, 66146 bcm_tsn_stat_t * stat_arr, 66147 uint64 * value_arr) 66148 { 66149 return bcm_tsn_port_stat_multi_set( 66150 BCM_CONTROL(unit)->unit, 66151 port, 66152 nstat, 66153 stat_arr, 66154 value_arr); 66155 } 66156 66157 int 66158 bcm_loop_tsn_port_stat_multi_set32( 66159 int unit, 66160 bcm_gport_t port, 66161 int nstat, 66162 bcm_tsn_stat_t * stat_arr, 66163 uint32 * value_arr) 66164 { 66165 return bcm_tsn_port_stat_multi_set32( 66166 BCM_CONTROL(unit)->unit, 66167 port, 66168 nstat, 66169 stat_arr, 66170 value_arr); 66171 } 66172 66173 int 66174 bcm_loop_tsn_port_stat_set( 66175 int unit, 66176 bcm_gport_t port, 66177 bcm_tsn_stat_t stat, 66178 uint64 val) 66179 { 66180 return bcm_tsn_port_stat_set( 66181 BCM_CONTROL(unit)->unit, 66182 port, 66183 stat, 66184 val); 66185 } 66186 66187 int 66188 bcm_loop_tsn_port_stat_set32( 66189 int unit, 66190 bcm_gport_t port, 66191 bcm_tsn_stat_t stat, 66192 uint32 val) 66193 { 66194 return bcm_tsn_port_stat_set32( 66195 BCM_CONTROL(unit)->unit, 66196 port, 66197 stat, 66198 val); 66199 } 66200 66201 int 66202 bcm_loop_tsn_port_stat_sync_get( 66203 int unit, 66204 bcm_gport_t port, 66205 bcm_tsn_stat_t stat, 66206 uint64 * val) 66207 { 66208 return bcm_tsn_port_stat_sync_get( 66209 BCM_CONTROL(unit)->unit, 66210 port, 66211 stat, 66212 val); 66213 } 66214 66215 int 66216 bcm_loop_tsn_port_stat_sync_get32( 66217 int unit, 66218 bcm_gport_t port, 66219 bcm_tsn_stat_t stat, 66220 uint32 * val) 66221 { 66222 return bcm_tsn_port_stat_sync_get32( 66223 BCM_CONTROL(unit)->unit, 66224 port, 66225 stat, 66226 val); 66227 } 66228 66229 int 66230 bcm_loop_tsn_port_stat_sync_multi_get( 66231 int unit, 66232 bcm_gport_t port, 66233 int nstat, 66234 bcm_tsn_stat_t * stat_arr, 66235 uint64 * value_arr) 66236 { 66237 return bcm_tsn_port_stat_sync_multi_get( 66238 BCM_CONTROL(unit)->unit, 66239 port, 66240 nstat, 66241 stat_arr, 66242 value_arr); 66243 } 66244 66245 int 66246 bcm_loop_tsn_port_stat_sync_multi_get32( 66247 int unit, 66248 bcm_gport_t port, 66249 int nstat, 66250 bcm_tsn_stat_t * stat_arr, 66251 uint32 * value_arr) 66252 { 66253 return bcm_tsn_port_stat_sync_multi_get32( 66254 BCM_CONTROL(unit)->unit, 66255 port, 66256 nstat, 66257 stat_arr, 66258 value_arr); 66259 } 66260 66261 /* bcm_tsn_pri_map_config_t_init not dispatchable */ 66262 66263 int 66264 bcm_loop_tsn_pri_map_create( 66265 int unit, 66266 bcm_tsn_pri_map_config_t * config, 66267 bcm_tsn_pri_map_t * map_id) 66268 { 66269 return bcm_tsn_pri_map_create( 66270 BCM_CONTROL(unit)->unit, 66271 config, 66272 map_id); 66273 } 66274 66275 int 66276 bcm_loop_tsn_pri_map_destroy( 66277 int unit, 66278 bcm_tsn_pri_map_t map_id) 66279 { 66280 return bcm_tsn_pri_map_destroy( 66281 BCM_CONTROL(unit)->unit, 66282 map_id); 66283 } 66284 66285 /* bcm_tsn_pri_map_entry_t_init not dispatchable */ 66286 66287 int 66288 bcm_loop_tsn_pri_map_get( 66289 int unit, 66290 bcm_tsn_pri_map_t map_id, 66291 bcm_tsn_pri_map_config_t * config) 66292 { 66293 return bcm_tsn_pri_map_get( 66294 BCM_CONTROL(unit)->unit, 66295 map_id, 66296 config); 66297 } 66298 66299 int 66300 bcm_loop_tsn_pri_map_set( 66301 int unit, 66302 bcm_tsn_pri_map_t map_id, 66303 bcm_tsn_pri_map_config_t * config) 66304 { 66305 return bcm_tsn_pri_map_set( 66306 BCM_CONTROL(unit)->unit, 66307 map_id, 66308 config); 66309 } 66310 66311 int 66312 bcm_loop_tsn_pri_map_traverse( 66313 int unit, 66314 bcm_tsn_pri_map_traverse_cb cb, 66315 void * user_data) 66316 { 66317 return bcm_tsn_pri_map_traverse( 66318 BCM_CONTROL(unit)->unit, 66319 cb, 66320 user_data); 66321 } 66322 66323 /* bcm_tsn_sr_auto_learn_config_t_init not dispatchable */ 66324 66325 int 66326 bcm_loop_tsn_sr_auto_learn_enable( 66327 int unit, 66328 int enable, 66329 bcm_tsn_sr_auto_learn_config_t * config) 66330 { 66331 return bcm_tsn_sr_auto_learn_enable( 66332 BCM_CONTROL(unit)->unit, 66333 enable, 66334 config); 66335 } 66336 66337 int 66338 bcm_loop_tsn_sr_auto_learn_enable_get( 66339 int unit, 66340 int * enabled, 66341 bcm_tsn_sr_auto_learn_config_t * config) 66342 { 66343 return bcm_tsn_sr_auto_learn_enable_get( 66344 BCM_CONTROL(unit)->unit, 66345 enabled, 66346 config); 66347 } 66348 66349 /* bcm_tsn_sr_auto_learn_group_config_t_init not dispatchable */ 66350 66351 int 66352 bcm_loop_tsn_sr_auto_learn_group_create( 66353 int unit, 66354 bcm_tsn_sr_auto_learn_group_config_t * config, 66355 int * group_id) 66356 { 66357 return bcm_tsn_sr_auto_learn_group_create( 66358 BCM_CONTROL(unit)->unit, 66359 config, 66360 group_id); 66361 } 66362 66363 int 66364 bcm_loop_tsn_sr_auto_learn_group_destroy( 66365 int unit, 66366 int group_id) 66367 { 66368 return bcm_tsn_sr_auto_learn_group_destroy( 66369 BCM_CONTROL(unit)->unit, 66370 group_id); 66371 } 66372 66373 int 66374 bcm_loop_tsn_sr_auto_learn_group_get( 66375 int unit, 66376 int group_id, 66377 bcm_tsn_sr_auto_learn_group_config_t * config) 66378 { 66379 return bcm_tsn_sr_auto_learn_group_get( 66380 BCM_CONTROL(unit)->unit, 66381 group_id, 66382 config); 66383 } 66384 66385 int 66386 bcm_loop_tsn_sr_auto_learn_group_set( 66387 int unit, 66388 int group_id, 66389 bcm_tsn_sr_auto_learn_group_config_t * config) 66390 { 66391 return bcm_tsn_sr_auto_learn_group_set( 66392 BCM_CONTROL(unit)->unit, 66393 group_id, 66394 config); 66395 } 66396 66397 int 66398 bcm_loop_tsn_sr_auto_learn_group_traverse( 66399 int unit, 66400 bcm_tsn_sr_auto_learn_group_traverse_cb cb, 66401 void * user_data) 66402 { 66403 return bcm_tsn_sr_auto_learn_group_traverse( 66404 BCM_CONTROL(unit)->unit, 66405 cb, 66406 user_data); 66407 } 66408 66409 int 66410 bcm_loop_tsn_sr_flow_stat_get( 66411 int unit, 66412 bcm_tsn_sr_flow_t flow, 66413 bcm_tsn_stat_t stat, 66414 uint64 * val) 66415 { 66416 return bcm_tsn_sr_flow_stat_get( 66417 BCM_CONTROL(unit)->unit, 66418 flow, 66419 stat, 66420 val); 66421 } 66422 66423 int 66424 bcm_loop_tsn_sr_flow_stat_get32( 66425 int unit, 66426 bcm_tsn_sr_flow_t flow, 66427 bcm_tsn_stat_t stat, 66428 uint32 * val) 66429 { 66430 return bcm_tsn_sr_flow_stat_get32( 66431 BCM_CONTROL(unit)->unit, 66432 flow, 66433 stat, 66434 val); 66435 } 66436 66437 int 66438 bcm_loop_tsn_sr_flow_stat_group_get( 66439 int unit, 66440 bcm_tsn_sr_flow_t flow, 66441 bcm_tsn_stat_group_type_t group_type, 66442 bcm_tsn_stat_group_t * stat_group) 66443 { 66444 return bcm_tsn_sr_flow_stat_group_get( 66445 BCM_CONTROL(unit)->unit, 66446 flow, 66447 group_type, 66448 stat_group); 66449 } 66450 66451 int 66452 bcm_loop_tsn_sr_flow_stat_group_set( 66453 int unit, 66454 bcm_tsn_sr_flow_t flow, 66455 bcm_tsn_stat_group_type_t group_type, 66456 bcm_tsn_stat_group_t stat_group) 66457 { 66458 return bcm_tsn_sr_flow_stat_group_set( 66459 BCM_CONTROL(unit)->unit, 66460 flow, 66461 group_type, 66462 stat_group); 66463 } 66464 66465 int 66466 bcm_loop_tsn_sr_flow_stat_multi_get( 66467 int unit, 66468 bcm_tsn_sr_flow_t flow, 66469 int nstat, 66470 bcm_tsn_stat_t * stat_arr, 66471 uint64 * value_arr) 66472 { 66473 return bcm_tsn_sr_flow_stat_multi_get( 66474 BCM_CONTROL(unit)->unit, 66475 flow, 66476 nstat, 66477 stat_arr, 66478 value_arr); 66479 } 66480 66481 int 66482 bcm_loop_tsn_sr_flow_stat_multi_get32( 66483 int unit, 66484 bcm_tsn_sr_flow_t flow, 66485 int nstat, 66486 bcm_tsn_stat_t * stat_arr, 66487 uint32 * value_arr) 66488 { 66489 return bcm_tsn_sr_flow_stat_multi_get32( 66490 BCM_CONTROL(unit)->unit, 66491 flow, 66492 nstat, 66493 stat_arr, 66494 value_arr); 66495 } 66496 66497 int 66498 bcm_loop_tsn_sr_flow_stat_multi_set( 66499 int unit, 66500 bcm_tsn_sr_flow_t flow, 66501 int nstat, 66502 bcm_tsn_stat_t * stat_arr, 66503 uint64 * value_arr) 66504 { 66505 return bcm_tsn_sr_flow_stat_multi_set( 66506 BCM_CONTROL(unit)->unit, 66507 flow, 66508 nstat, 66509 stat_arr, 66510 value_arr); 66511 } 66512 66513 int 66514 bcm_loop_tsn_sr_flow_stat_multi_set32( 66515 int unit, 66516 bcm_tsn_sr_flow_t flow, 66517 int nstat, 66518 bcm_tsn_stat_t * stat_arr, 66519 uint32 * value_arr) 66520 { 66521 return bcm_tsn_sr_flow_stat_multi_set32( 66522 BCM_CONTROL(unit)->unit, 66523 flow, 66524 nstat, 66525 stat_arr, 66526 value_arr); 66527 } 66528 66529 int 66530 bcm_loop_tsn_sr_flow_stat_set( 66531 int unit, 66532 bcm_tsn_sr_flow_t flow, 66533 bcm_tsn_stat_t stat, 66534 uint64 val) 66535 { 66536 return bcm_tsn_sr_flow_stat_set( 66537 BCM_CONTROL(unit)->unit, 66538 flow, 66539 stat, 66540 val); 66541 } 66542 66543 int 66544 bcm_loop_tsn_sr_flow_stat_set32( 66545 int unit, 66546 bcm_tsn_sr_flow_t flow, 66547 bcm_tsn_stat_t stat, 66548 uint32 val) 66549 { 66550 return bcm_tsn_sr_flow_stat_set32( 66551 BCM_CONTROL(unit)->unit, 66552 flow, 66553 stat, 66554 val); 66555 } 66556 66557 int 66558 bcm_loop_tsn_sr_flow_stat_sync_get( 66559 int unit, 66560 bcm_tsn_sr_flow_t flow, 66561 bcm_tsn_stat_t stat, 66562 uint64 * val) 66563 { 66564 return bcm_tsn_sr_flow_stat_sync_get( 66565 BCM_CONTROL(unit)->unit, 66566 flow, 66567 stat, 66568 val); 66569 } 66570 66571 int 66572 bcm_loop_tsn_sr_flow_stat_sync_get32( 66573 int unit, 66574 bcm_tsn_sr_flow_t flow, 66575 bcm_tsn_stat_t stat, 66576 uint32 * val) 66577 { 66578 return bcm_tsn_sr_flow_stat_sync_get32( 66579 BCM_CONTROL(unit)->unit, 66580 flow, 66581 stat, 66582 val); 66583 } 66584 66585 int 66586 bcm_loop_tsn_sr_flow_stat_sync_multi_get( 66587 int unit, 66588 bcm_tsn_sr_flow_t flow, 66589 int nstat, 66590 bcm_tsn_stat_t * stat_arr, 66591 uint64 * value_arr) 66592 { 66593 return bcm_tsn_sr_flow_stat_sync_multi_get( 66594 BCM_CONTROL(unit)->unit, 66595 flow, 66596 nstat, 66597 stat_arr, 66598 value_arr); 66599 } 66600 66601 int 66602 bcm_loop_tsn_sr_flow_stat_sync_multi_get32( 66603 int unit, 66604 bcm_tsn_sr_flow_t flow, 66605 int nstat, 66606 bcm_tsn_stat_t * stat_arr, 66607 uint32 * value_arr) 66608 { 66609 return bcm_tsn_sr_flow_stat_sync_multi_get32( 66610 BCM_CONTROL(unit)->unit, 66611 flow, 66612 nstat, 66613 stat_arr, 66614 value_arr); 66615 } 66616 66617 int 66618 bcm_loop_tsn_sr_flowset_destroy( 66619 int unit, 66620 bcm_tsn_sr_flowset_t flowset) 66621 { 66622 return bcm_tsn_sr_flowset_destroy( 66623 BCM_CONTROL(unit)->unit, 66624 flowset); 66625 } 66626 66627 int 66628 bcm_loop_tsn_sr_flowset_flow_get( 66629 int unit, 66630 bcm_tsn_sr_flowset_t flowset, 66631 int index, 66632 bcm_tsn_sr_flow_t * flow_id) 66633 { 66634 return bcm_tsn_sr_flowset_flow_get( 66635 BCM_CONTROL(unit)->unit, 66636 flowset, 66637 index, 66638 flow_id); 66639 } 66640 66641 int 66642 bcm_loop_tsn_sr_flowset_status_get( 66643 int unit, 66644 bcm_tsn_sr_flowset_t flowset, 66645 bcm_tsn_sr_flowset_status_t * status) 66646 { 66647 return bcm_tsn_sr_flowset_status_get( 66648 BCM_CONTROL(unit)->unit, 66649 flowset, 66650 status); 66651 } 66652 66653 /* bcm_tsn_sr_flowset_status_t_init not dispatchable */ 66654 66655 int 66656 bcm_loop_tsn_sr_flowset_traverse( 66657 int unit, 66658 int is_rx, 66659 bcm_tsn_sr_flowset_traverse_cb cb, 66660 void * user_data) 66661 { 66662 return bcm_tsn_sr_flowset_traverse( 66663 BCM_CONTROL(unit)->unit, 66664 is_rx, 66665 cb, 66666 user_data); 66667 } 66668 66669 int 66670 bcm_loop_tsn_sr_port_config_get( 66671 int unit, 66672 bcm_gport_t port, 66673 bcm_tsn_sr_port_config_t * config) 66674 { 66675 return bcm_tsn_sr_port_config_get( 66676 BCM_CONTROL(unit)->unit, 66677 port, 66678 config); 66679 } 66680 66681 int 66682 bcm_loop_tsn_sr_port_config_set( 66683 int unit, 66684 bcm_gport_t port, 66685 bcm_tsn_sr_port_config_t * config) 66686 { 66687 return bcm_tsn_sr_port_config_set( 66688 BCM_CONTROL(unit)->unit, 66689 port, 66690 config); 66691 } 66692 66693 /* bcm_tsn_sr_port_config_t_init not dispatchable */ 66694 66695 int 66696 bcm_loop_tsn_sr_rx_flow_config_get( 66697 int unit, 66698 bcm_tsn_sr_flow_t flow_id, 66699 bcm_tsn_sr_rx_flow_config_t * config) 66700 { 66701 return bcm_tsn_sr_rx_flow_config_get( 66702 BCM_CONTROL(unit)->unit, 66703 flow_id, 66704 config); 66705 } 66706 66707 int 66708 bcm_loop_tsn_sr_rx_flow_config_set( 66709 int unit, 66710 bcm_tsn_sr_flow_t flow_id, 66711 bcm_tsn_sr_rx_flow_config_t * config) 66712 { 66713 return bcm_tsn_sr_rx_flow_config_set( 66714 BCM_CONTROL(unit)->unit, 66715 flow_id, 66716 config); 66717 } 66718 66719 /* bcm_tsn_sr_rx_flow_config_t_init not dispatchable */ 66720 66721 int 66722 bcm_loop_tsn_sr_rx_flow_reset( 66723 int unit, 66724 uint32 flags, 66725 bcm_tsn_sr_flow_t flow_id) 66726 { 66727 return bcm_tsn_sr_rx_flow_reset( 66728 BCM_CONTROL(unit)->unit, 66729 flags, 66730 flow_id); 66731 } 66732 66733 int 66734 bcm_loop_tsn_sr_rx_flow_seqnum_history_get( 66735 int unit, 66736 bcm_tsn_sr_flow_t flow_id, 66737 int offset_in_bits, 66738 int max_size_in_bits, 66739 uint8 * history_bits, 66740 int * actual_size_in_bits) 66741 { 66742 return bcm_tsn_sr_rx_flow_seqnum_history_get( 66743 BCM_CONTROL(unit)->unit, 66744 flow_id, 66745 offset_in_bits, 66746 max_size_in_bits, 66747 history_bits, 66748 actual_size_in_bits); 66749 } 66750 66751 int 66752 bcm_loop_tsn_sr_rx_flow_seqnum_history_set( 66753 int unit, 66754 bcm_tsn_sr_flow_t flow_id, 66755 int offset_in_bits, 66756 int size_in_bits, 66757 uint8 * history_bits) 66758 { 66759 return bcm_tsn_sr_rx_flow_seqnum_history_set( 66760 BCM_CONTROL(unit)->unit, 66761 flow_id, 66762 offset_in_bits, 66763 size_in_bits, 66764 history_bits); 66765 } 66766 66767 int 66768 bcm_loop_tsn_sr_rx_flow_status_get( 66769 int unit, 66770 bcm_tsn_sr_flow_t flow_id, 66771 bcm_tsn_sr_rx_flow_status_t * status) 66772 { 66773 return bcm_tsn_sr_rx_flow_status_get( 66774 BCM_CONTROL(unit)->unit, 66775 flow_id, 66776 status); 66777 } 66778 66779 /* bcm_tsn_sr_rx_flow_status_t_init not dispatchable */ 66780 66781 int 66782 bcm_loop_tsn_sr_rx_flowset_config_get( 66783 int unit, 66784 bcm_tsn_sr_flowset_t flowset, 66785 bcm_tsn_pri_map_t * pri_map, 66786 bcm_tsn_sr_rx_flow_config_t * default_config) 66787 { 66788 return bcm_tsn_sr_rx_flowset_config_get( 66789 BCM_CONTROL(unit)->unit, 66790 flowset, 66791 pri_map, 66792 default_config); 66793 } 66794 66795 int 66796 bcm_loop_tsn_sr_rx_flowset_create( 66797 int unit, 66798 bcm_tsn_pri_map_t pri_map, 66799 bcm_tsn_sr_rx_flow_config_t * default_config, 66800 bcm_tsn_sr_flowset_t * flowset) 66801 { 66802 return bcm_tsn_sr_rx_flowset_create( 66803 BCM_CONTROL(unit)->unit, 66804 pri_map, 66805 default_config, 66806 flowset); 66807 } 66808 66809 int 66810 bcm_loop_tsn_sr_tx_flow_config_get( 66811 int unit, 66812 bcm_tsn_sr_flow_t flow_id, 66813 bcm_tsn_sr_tx_flow_config_t * config) 66814 { 66815 return bcm_tsn_sr_tx_flow_config_get( 66816 BCM_CONTROL(unit)->unit, 66817 flow_id, 66818 config); 66819 } 66820 66821 int 66822 bcm_loop_tsn_sr_tx_flow_config_set( 66823 int unit, 66824 bcm_tsn_sr_flow_t flow_id, 66825 bcm_tsn_sr_tx_flow_config_t * config) 66826 { 66827 return bcm_tsn_sr_tx_flow_config_set( 66828 BCM_CONTROL(unit)->unit, 66829 flow_id, 66830 config); 66831 } 66832 66833 /* bcm_tsn_sr_tx_flow_config_t_init not dispatchable */ 66834 66835 int 66836 bcm_loop_tsn_sr_tx_flow_status_get( 66837 int unit, 66838 bcm_tsn_sr_flow_t flow_id, 66839 bcm_tsn_sr_tx_flow_status_t * status) 66840 { 66841 return bcm_tsn_sr_tx_flow_status_get( 66842 BCM_CONTROL(unit)->unit, 66843 flow_id, 66844 status); 66845 } 66846 66847 /* bcm_tsn_sr_tx_flow_status_t_init not dispatchable */ 66848 66849 int 66850 bcm_loop_tsn_sr_tx_flowset_config_get( 66851 int unit, 66852 bcm_tsn_sr_flowset_t flowset, 66853 bcm_tsn_pri_map_t * pri_map, 66854 bcm_tsn_sr_tx_flow_config_t * default_config) 66855 { 66856 return bcm_tsn_sr_tx_flowset_config_get( 66857 BCM_CONTROL(unit)->unit, 66858 flowset, 66859 pri_map, 66860 default_config); 66861 } 66862 66863 int 66864 bcm_loop_tsn_sr_tx_flowset_create( 66865 int unit, 66866 bcm_tsn_pri_map_t pri_map, 66867 bcm_tsn_sr_tx_flow_config_t * default_config, 66868 bcm_tsn_sr_flowset_t * flowset) 66869 { 66870 return bcm_tsn_sr_tx_flowset_create( 66871 BCM_CONTROL(unit)->unit, 66872 pri_map, 66873 default_config, 66874 flowset); 66875 } 66876 66877 int 66878 bcm_loop_tsn_stat_group_create( 66879 int unit, 66880 bcm_tsn_stat_group_type_t group_type, 66881 int count, 66882 bcm_tsn_stat_t * stat_arr, 66883 bcm_tsn_stat_group_t * id) 66884 { 66885 return bcm_tsn_stat_group_create( 66886 BCM_CONTROL(unit)->unit, 66887 group_type, 66888 count, 66889 stat_arr, 66890 id); 66891 } 66892 66893 int 66894 bcm_loop_tsn_stat_group_destroy( 66895 int unit, 66896 bcm_tsn_stat_group_t id) 66897 { 66898 return bcm_tsn_stat_group_destroy( 66899 BCM_CONTROL(unit)->unit, 66900 id); 66901 } 66902 66903 int 66904 bcm_loop_tsn_stat_group_get( 66905 int unit, 66906 bcm_tsn_stat_group_t id, 66907 bcm_tsn_stat_group_type_t * group_type, 66908 int max, 66909 bcm_tsn_stat_t * stat_arr, 66910 int * count) 66911 { 66912 return bcm_tsn_stat_group_get( 66913 BCM_CONTROL(unit)->unit, 66914 id, 66915 group_type, 66916 max, 66917 stat_arr, 66918 count); 66919 } 66920 66921 int 66922 bcm_loop_tsn_stat_group_set( 66923 int unit, 66924 bcm_tsn_stat_group_t id, 66925 int count, 66926 bcm_tsn_stat_t * stat_arr) 66927 { 66928 return bcm_tsn_stat_group_set( 66929 BCM_CONTROL(unit)->unit, 66930 id, 66931 count, 66932 stat_arr); 66933 } 66934 66935 int 66936 bcm_loop_tsn_stat_group_traverse( 66937 int unit, 66938 bcm_tsn_stat_group_traverse_cb cb, 66939 void * user_data) 66940 { 66941 return bcm_tsn_stat_group_traverse( 66942 BCM_CONTROL(unit)->unit, 66943 cb, 66944 user_data); 66945 } 66946 66947 /* bcm_tsn_stat_threshold_config_t_init not dispatchable */ 66948 66949 int 66950 bcm_loop_tsn_stat_threshold_get( 66951 int unit, 66952 bcm_tsn_stat_threshold_source_t source, 66953 bcm_tsn_stat_t stat, 66954 bcm_tsn_stat_threshold_config_t * config) 66955 { 66956 return bcm_tsn_stat_threshold_get( 66957 BCM_CONTROL(unit)->unit, 66958 source, 66959 stat, 66960 config); 66961 } 66962 66963 int 66964 bcm_loop_tsn_stat_threshold_set( 66965 int unit, 66966 bcm_tsn_stat_threshold_source_t source, 66967 bcm_tsn_stat_t stat, 66968 bcm_tsn_stat_threshold_config_t * config) 66969 { 66970 return bcm_tsn_stat_threshold_set( 66971 BCM_CONTROL(unit)->unit, 66972 source, 66973 stat, 66974 config); 66975 } 66976 66977 /* bcm_tsn_stu_config_t_init not dispatchable */ 66978 66979 int 66980 bcm_loop_tsn_stu_profile_create( 66981 int unit, 66982 bcm_tsn_stu_profile_type_t type, 66983 bcm_tsn_stu_config_t * config, 66984 int * stu_profile_id) 66985 { 66986 return bcm_tsn_stu_profile_create( 66987 BCM_CONTROL(unit)->unit, 66988 type, 66989 config, 66990 stu_profile_id); 66991 } 66992 66993 int 66994 bcm_loop_tsn_stu_profile_destroy( 66995 int unit, 66996 int stu_profile_id) 66997 { 66998 return bcm_tsn_stu_profile_destroy( 66999 BCM_CONTROL(unit)->unit, 67000 stu_profile_id); 67001 } 67002 67003 int 67004 bcm_loop_tsn_stu_profile_get( 67005 int unit, 67006 int stu_profile_id, 67007 bcm_tsn_stu_profile_type_t * type, 67008 bcm_tsn_stu_config_t * config) 67009 { 67010 return bcm_tsn_stu_profile_get( 67011 BCM_CONTROL(unit)->unit, 67012 stu_profile_id, 67013 type, 67014 config); 67015 } 67016 67017 int 67018 bcm_loop_tsn_stu_profile_set( 67019 int unit, 67020 int stu_profile_id, 67021 bcm_tsn_stu_config_t * config) 67022 { 67023 return bcm_tsn_stu_profile_set( 67024 BCM_CONTROL(unit)->unit, 67025 stu_profile_id, 67026 config); 67027 } 67028 67029 int 67030 bcm_loop_tsn_stu_profile_traverse( 67031 int unit, 67032 bcm_tsn_stu_profile_traverse_cb cb, 67033 void * user_data) 67034 { 67035 return bcm_tsn_stu_profile_traverse( 67036 BCM_CONTROL(unit)->unit, 67037 cb, 67038 user_data); 67039 } 67040 67041 int 67042 bcm_loop_tsn_taf_control_get( 67043 int unit, 67044 int taf_gate, 67045 bcm_tsn_taf_control_t type, 67046 uint32 * arg) 67047 { 67048 return bcm_tsn_taf_control_get( 67049 BCM_CONTROL(unit)->unit, 67050 taf_gate, 67051 type, 67052 arg); 67053 } 67054 67055 int 67056 bcm_loop_tsn_taf_control_set( 67057 int unit, 67058 int taf_gate, 67059 bcm_tsn_taf_control_t type, 67060 uint32 arg) 67061 { 67062 return bcm_tsn_taf_control_set( 67063 BCM_CONTROL(unit)->unit, 67064 taf_gate, 67065 type, 67066 arg); 67067 } 67068 67069 int 67070 bcm_loop_tsn_taf_cosq_mapping_profile_create( 67071 int unit, 67072 int * cosq_profile) 67073 { 67074 return bcm_tsn_taf_cosq_mapping_profile_create( 67075 BCM_CONTROL(unit)->unit, 67076 cosq_profile); 67077 } 67078 67079 int 67080 bcm_loop_tsn_taf_cosq_mapping_profile_destroy( 67081 int unit, 67082 int cosq_profile) 67083 { 67084 return bcm_tsn_taf_cosq_mapping_profile_destroy( 67085 BCM_CONTROL(unit)->unit, 67086 cosq_profile); 67087 } 67088 67089 int 67090 bcm_loop_tsn_taf_cosq_mapping_profile_get( 67091 int unit, 67092 int cosq_profile, 67093 bcm_cos_t priority, 67094 bcm_cos_queue_t * cosq) 67095 { 67096 return bcm_tsn_taf_cosq_mapping_profile_get( 67097 BCM_CONTROL(unit)->unit, 67098 cosq_profile, 67099 priority, 67100 cosq); 67101 } 67102 67103 int 67104 bcm_loop_tsn_taf_cosq_mapping_profile_set( 67105 int unit, 67106 int cosq_profile, 67107 bcm_cos_t priority, 67108 bcm_cos_queue_t cosq) 67109 { 67110 return bcm_tsn_taf_cosq_mapping_profile_set( 67111 BCM_CONTROL(unit)->unit, 67112 cosq_profile, 67113 priority, 67114 cosq); 67115 } 67116 67117 int 67118 bcm_loop_tsn_taf_cosq_mapping_profile_traverse( 67119 int unit, 67120 bcm_tsn_taf_cosq_mapping_profile_traverse_cb cb, 67121 void * user_data) 67122 { 67123 return bcm_tsn_taf_cosq_mapping_profile_traverse( 67124 BCM_CONTROL(unit)->unit, 67125 cb, 67126 user_data); 67127 } 67128 67129 int 67130 bcm_loop_tsn_taf_event_register( 67131 int unit, 67132 bcm_tsn_taf_event_types_t event_types, 67133 int taf_gate, 67134 bcm_tsn_taf_event_cb cb, 67135 void * user_data) 67136 { 67137 return bcm_tsn_taf_event_register( 67138 BCM_CONTROL(unit)->unit, 67139 event_types, 67140 taf_gate, 67141 cb, 67142 user_data); 67143 } 67144 67145 int 67146 bcm_loop_tsn_taf_event_unregister( 67147 int unit, 67148 bcm_tsn_taf_event_types_t event_types, 67149 int taf_gate, 67150 bcm_tsn_taf_event_cb cb) 67151 { 67152 return bcm_tsn_taf_event_unregister( 67153 BCM_CONTROL(unit)->unit, 67154 event_types, 67155 taf_gate, 67156 cb); 67157 } 67158 67159 int 67160 bcm_loop_tsn_taf_gate_create( 67161 int unit, 67162 int flags, 67163 int * taf_gate_id) 67164 { 67165 return bcm_tsn_taf_gate_create( 67166 BCM_CONTROL(unit)->unit, 67167 flags, 67168 taf_gate_id); 67169 } 67170 67171 int 67172 bcm_loop_tsn_taf_gate_destroy( 67173 int unit, 67174 int taf_gate_id) 67175 { 67176 return bcm_tsn_taf_gate_destroy( 67177 BCM_CONTROL(unit)->unit, 67178 taf_gate_id); 67179 } 67180 67181 int 67182 bcm_loop_tsn_taf_gate_max_bytes_profile_create( 67183 int unit, 67184 int taf_gate_id, 67185 uint64 max_bytes, 67186 int * profile_id) 67187 { 67188 return bcm_tsn_taf_gate_max_bytes_profile_create( 67189 BCM_CONTROL(unit)->unit, 67190 taf_gate_id, 67191 max_bytes, 67192 profile_id); 67193 } 67194 67195 int 67196 bcm_loop_tsn_taf_gate_max_bytes_profile_destroy( 67197 int unit, 67198 int taf_gate_id, 67199 int profile_id) 67200 { 67201 return bcm_tsn_taf_gate_max_bytes_profile_destroy( 67202 BCM_CONTROL(unit)->unit, 67203 taf_gate_id, 67204 profile_id); 67205 } 67206 67207 int 67208 bcm_loop_tsn_taf_gate_max_bytes_profile_get( 67209 int unit, 67210 int taf_gate_id, 67211 int profile_id, 67212 uint64 * max_bytes) 67213 { 67214 return bcm_tsn_taf_gate_max_bytes_profile_get( 67215 BCM_CONTROL(unit)->unit, 67216 taf_gate_id, 67217 profile_id, 67218 max_bytes); 67219 } 67220 67221 int 67222 bcm_loop_tsn_taf_gate_max_bytes_profile_set( 67223 int unit, 67224 int taf_gate_id, 67225 int profile_id, 67226 uint64 max_bytes) 67227 { 67228 return bcm_tsn_taf_gate_max_bytes_profile_set( 67229 BCM_CONTROL(unit)->unit, 67230 taf_gate_id, 67231 profile_id, 67232 max_bytes); 67233 } 67234 67235 int 67236 bcm_loop_tsn_taf_gate_max_bytes_profile_traverse( 67237 int unit, 67238 int taf_gate_id, 67239 bcm_tsn_taf_gate_max_bytes_profile_traverse_cb cb, 67240 void * user_data) 67241 { 67242 return bcm_tsn_taf_gate_max_bytes_profile_traverse( 67243 BCM_CONTROL(unit)->unit, 67244 taf_gate_id, 67245 cb, 67246 user_data); 67247 } 67248 67249 int 67250 bcm_loop_tsn_taf_gate_stat_get( 67251 int unit, 67252 int taf_gate_id, 67253 bcm_tsn_taf_gate_stat_t stat, 67254 uint64 * val) 67255 { 67256 return bcm_tsn_taf_gate_stat_get( 67257 BCM_CONTROL(unit)->unit, 67258 taf_gate_id, 67259 stat, 67260 val); 67261 } 67262 67263 int 67264 bcm_loop_tsn_taf_gate_stat_get32( 67265 int unit, 67266 int taf_gate_id, 67267 bcm_tsn_taf_gate_stat_t stat, 67268 uint32 * val) 67269 { 67270 return bcm_tsn_taf_gate_stat_get32( 67271 BCM_CONTROL(unit)->unit, 67272 taf_gate_id, 67273 stat, 67274 val); 67275 } 67276 67277 int 67278 bcm_loop_tsn_taf_gate_stat_multi_get( 67279 int unit, 67280 int taf_gate_id, 67281 int nstat, 67282 bcm_tsn_taf_gate_stat_t * stat_arr, 67283 uint64 * val_arr) 67284 { 67285 return bcm_tsn_taf_gate_stat_multi_get( 67286 BCM_CONTROL(unit)->unit, 67287 taf_gate_id, 67288 nstat, 67289 stat_arr, 67290 val_arr); 67291 } 67292 67293 int 67294 bcm_loop_tsn_taf_gate_stat_multi_get32( 67295 int unit, 67296 int taf_gate_id, 67297 int nstat, 67298 bcm_tsn_taf_gate_stat_t * stat_arr, 67299 uint32 * val_arr) 67300 { 67301 return bcm_tsn_taf_gate_stat_multi_get32( 67302 BCM_CONTROL(unit)->unit, 67303 taf_gate_id, 67304 nstat, 67305 stat_arr, 67306 val_arr); 67307 } 67308 67309 int 67310 bcm_loop_tsn_taf_gate_stat_multi_set( 67311 int unit, 67312 int taf_gate_id, 67313 int nstat, 67314 bcm_tsn_taf_gate_stat_t * stat_arr, 67315 uint64 * val_arr) 67316 { 67317 return bcm_tsn_taf_gate_stat_multi_set( 67318 BCM_CONTROL(unit)->unit, 67319 taf_gate_id, 67320 nstat, 67321 stat_arr, 67322 val_arr); 67323 } 67324 67325 int 67326 bcm_loop_tsn_taf_gate_stat_multi_set32( 67327 int unit, 67328 int taf_gate_id, 67329 int nstat, 67330 bcm_tsn_taf_gate_stat_t * stat_arr, 67331 uint32 * val_arr) 67332 { 67333 return bcm_tsn_taf_gate_stat_multi_set32( 67334 BCM_CONTROL(unit)->unit, 67335 taf_gate_id, 67336 nstat, 67337 stat_arr, 67338 val_arr); 67339 } 67340 67341 int 67342 bcm_loop_tsn_taf_gate_stat_set( 67343 int unit, 67344 int taf_gate_id, 67345 bcm_tsn_taf_gate_stat_t stat, 67346 uint64 val) 67347 { 67348 return bcm_tsn_taf_gate_stat_set( 67349 BCM_CONTROL(unit)->unit, 67350 taf_gate_id, 67351 stat, 67352 val); 67353 } 67354 67355 int 67356 bcm_loop_tsn_taf_gate_stat_set32( 67357 int unit, 67358 int taf_gate_id, 67359 bcm_tsn_taf_gate_stat_t stat, 67360 uint32 val) 67361 { 67362 return bcm_tsn_taf_gate_stat_set32( 67363 BCM_CONTROL(unit)->unit, 67364 taf_gate_id, 67365 stat, 67366 val); 67367 } 67368 67369 int 67370 bcm_loop_tsn_taf_gate_stat_sync_get( 67371 int unit, 67372 int taf_gate_id, 67373 bcm_tsn_taf_gate_stat_t stat, 67374 uint64 * val) 67375 { 67376 return bcm_tsn_taf_gate_stat_sync_get( 67377 BCM_CONTROL(unit)->unit, 67378 taf_gate_id, 67379 stat, 67380 val); 67381 } 67382 67383 int 67384 bcm_loop_tsn_taf_gate_stat_sync_get32( 67385 int unit, 67386 int taf_gate_id, 67387 bcm_tsn_taf_gate_stat_t stat, 67388 uint32 * val) 67389 { 67390 return bcm_tsn_taf_gate_stat_sync_get32( 67391 BCM_CONTROL(unit)->unit, 67392 taf_gate_id, 67393 stat, 67394 val); 67395 } 67396 67397 int 67398 bcm_loop_tsn_taf_gate_stat_sync_multi_get( 67399 int unit, 67400 int taf_gate_id, 67401 int nstat, 67402 bcm_tsn_taf_gate_stat_t * stat_arr, 67403 uint64 * val_arr) 67404 { 67405 return bcm_tsn_taf_gate_stat_sync_multi_get( 67406 BCM_CONTROL(unit)->unit, 67407 taf_gate_id, 67408 nstat, 67409 stat_arr, 67410 val_arr); 67411 } 67412 67413 int 67414 bcm_loop_tsn_taf_gate_stat_sync_multi_get32( 67415 int unit, 67416 int taf_gate_id, 67417 int nstat, 67418 bcm_tsn_taf_gate_stat_t * stat_arr, 67419 uint32 * val_arr) 67420 { 67421 return bcm_tsn_taf_gate_stat_sync_multi_get32( 67422 BCM_CONTROL(unit)->unit, 67423 taf_gate_id, 67424 nstat, 67425 stat_arr, 67426 val_arr); 67427 } 67428 67429 int 67430 bcm_loop_tsn_taf_gate_traverse( 67431 int unit, 67432 bcm_tsn_taf_gate_traverse_cb cb, 67433 void * user_data) 67434 { 67435 return bcm_tsn_taf_gate_traverse( 67436 BCM_CONTROL(unit)->unit, 67437 cb, 67438 user_data); 67439 } 67440 67441 int 67442 bcm_loop_tsn_taf_profile_commit( 67443 int unit, 67444 int taf_gate, 67445 bcm_tsn_taf_profile_id_t pid) 67446 { 67447 return bcm_tsn_taf_profile_commit( 67448 BCM_CONTROL(unit)->unit, 67449 taf_gate, 67450 pid); 67451 } 67452 67453 int 67454 bcm_loop_tsn_taf_profile_create( 67455 int unit, 67456 int taf_gate, 67457 bcm_tsn_taf_profile_t * profile, 67458 bcm_tsn_taf_profile_id_t * pid) 67459 { 67460 return bcm_tsn_taf_profile_create( 67461 BCM_CONTROL(unit)->unit, 67462 taf_gate, 67463 profile, 67464 pid); 67465 } 67466 67467 int 67468 bcm_loop_tsn_taf_profile_destroy( 67469 int unit, 67470 int taf_gate, 67471 bcm_tsn_taf_profile_id_t pid) 67472 { 67473 return bcm_tsn_taf_profile_destroy( 67474 BCM_CONTROL(unit)->unit, 67475 taf_gate, 67476 pid); 67477 } 67478 67479 int 67480 bcm_loop_tsn_taf_profile_destroy_all( 67481 int unit, 67482 int taf_gate) 67483 { 67484 return bcm_tsn_taf_profile_destroy_all( 67485 BCM_CONTROL(unit)->unit, 67486 taf_gate); 67487 } 67488 67489 int 67490 bcm_loop_tsn_taf_profile_get( 67491 int unit, 67492 int taf_gate, 67493 bcm_tsn_taf_profile_id_t pid, 67494 bcm_tsn_taf_profile_t * profile) 67495 { 67496 return bcm_tsn_taf_profile_get( 67497 BCM_CONTROL(unit)->unit, 67498 taf_gate, 67499 pid, 67500 profile); 67501 } 67502 67503 int 67504 bcm_loop_tsn_taf_profile_set( 67505 int unit, 67506 int taf_gate, 67507 bcm_tsn_taf_profile_id_t pid, 67508 bcm_tsn_taf_profile_t * profile) 67509 { 67510 return bcm_tsn_taf_profile_set( 67511 BCM_CONTROL(unit)->unit, 67512 taf_gate, 67513 pid, 67514 profile); 67515 } 67516 67517 int 67518 bcm_loop_tsn_taf_profile_status_get( 67519 int unit, 67520 int taf_gate, 67521 bcm_tsn_taf_profile_id_t pid, 67522 bcm_tsn_taf_profile_status_t * status) 67523 { 67524 return bcm_tsn_taf_profile_status_get( 67525 BCM_CONTROL(unit)->unit, 67526 taf_gate, 67527 pid, 67528 status); 67529 } 67530 67531 /* bcm_tsn_taf_profile_status_t_init not dispatchable */ 67532 67533 /* bcm_tsn_taf_profile_t_init not dispatchable */ 67534 67535 int 67536 bcm_loop_tsn_taf_profile_traverse( 67537 int unit, 67538 int taf_gate, 67539 bcm_tsn_taf_profile_traverse_cb cb, 67540 void * user_data) 67541 { 67542 return bcm_tsn_taf_profile_traverse( 67543 BCM_CONTROL(unit)->unit, 67544 taf_gate, 67545 cb, 67546 user_data); 67547 } 67548 67549 int 67550 bcm_loop_tsn_taf_status_get( 67551 int unit, 67552 int taf_gate, 67553 bcm_tsn_taf_status_t type, 67554 uint32 * arg) 67555 { 67556 return bcm_tsn_taf_status_get( 67557 BCM_CONTROL(unit)->unit, 67558 taf_gate, 67559 type, 67560 arg); 67561 } 67562 67563 #ifdef INCLUDE_L3 67564 67565 int 67566 bcm_loop_tunnel_config_get( 67567 int unit, 67568 bcm_tunnel_config_t * tconfig) 67569 { 67570 return bcm_tunnel_config_get( 67571 BCM_CONTROL(unit)->unit, 67572 tconfig); 67573 } 67574 67575 int 67576 bcm_loop_tunnel_config_set( 67577 int unit, 67578 bcm_tunnel_config_t * tconfig) 67579 { 67580 return bcm_tunnel_config_set( 67581 BCM_CONTROL(unit)->unit, 67582 tconfig); 67583 } 67584 67585 /* bcm_tunnel_config_t_init not dispatchable */ 67586 67587 int 67588 bcm_loop_tunnel_dscp_map_create( 67589 int unit, 67590 uint32 flags, 67591 int * dscp_map_id) 67592 { 67593 return bcm_tunnel_dscp_map_create( 67594 BCM_CONTROL(unit)->unit, 67595 flags, 67596 dscp_map_id); 67597 } 67598 67599 int 67600 bcm_loop_tunnel_dscp_map_destroy( 67601 int unit, 67602 int dscp_map_id) 67603 { 67604 return bcm_tunnel_dscp_map_destroy( 67605 BCM_CONTROL(unit)->unit, 67606 dscp_map_id); 67607 } 67608 67609 int 67610 bcm_loop_tunnel_dscp_map_get( 67611 int unit, 67612 int dscp_map_id, 67613 bcm_tunnel_dscp_map_t * dscp_map) 67614 { 67615 return bcm_tunnel_dscp_map_get( 67616 BCM_CONTROL(unit)->unit, 67617 dscp_map_id, 67618 dscp_map); 67619 } 67620 67621 int 67622 bcm_loop_tunnel_dscp_map_port_get( 67623 int unit, 67624 bcm_port_t port, 67625 bcm_tunnel_dscp_map_t * dscp_map) 67626 { 67627 return bcm_tunnel_dscp_map_port_get( 67628 BCM_CONTROL(unit)->unit, 67629 port, 67630 dscp_map); 67631 } 67632 67633 int 67634 bcm_loop_tunnel_dscp_map_port_set( 67635 int unit, 67636 bcm_port_t port, 67637 bcm_tunnel_dscp_map_t * dscp_map) 67638 { 67639 return bcm_tunnel_dscp_map_port_set( 67640 BCM_CONTROL(unit)->unit, 67641 port, 67642 dscp_map); 67643 } 67644 67645 int 67646 bcm_loop_tunnel_dscp_map_set( 67647 int unit, 67648 int dscp_map_id, 67649 bcm_tunnel_dscp_map_t * dscp_map) 67650 { 67651 return bcm_tunnel_dscp_map_set( 67652 BCM_CONTROL(unit)->unit, 67653 dscp_map_id, 67654 dscp_map); 67655 } 67656 67657 /* bcm_tunnel_dscp_map_t_init not dispatchable */ 67658 67659 int 67660 bcm_loop_tunnel_initiator_clear( 67661 int unit, 67662 bcm_l3_intf_t * intf) 67663 { 67664 return bcm_tunnel_initiator_clear( 67665 BCM_CONTROL(unit)->unit, 67666 intf); 67667 } 67668 67669 int 67670 bcm_loop_tunnel_initiator_create( 67671 int unit, 67672 bcm_l3_intf_t * intf, 67673 bcm_tunnel_initiator_t * tunnel) 67674 { 67675 return bcm_tunnel_initiator_create( 67676 BCM_CONTROL(unit)->unit, 67677 intf, 67678 tunnel); 67679 } 67680 67681 int 67682 bcm_loop_tunnel_initiator_get( 67683 int unit, 67684 bcm_l3_intf_t * intf, 67685 bcm_tunnel_initiator_t * tunnel) 67686 { 67687 return bcm_tunnel_initiator_get( 67688 BCM_CONTROL(unit)->unit, 67689 intf, 67690 tunnel); 67691 } 67692 67693 int 67694 bcm_loop_tunnel_initiator_set( 67695 int unit, 67696 bcm_l3_intf_t * intf, 67697 bcm_tunnel_initiator_t * tunnel) 67698 { 67699 return bcm_tunnel_initiator_set( 67700 BCM_CONTROL(unit)->unit, 67701 intf, 67702 tunnel); 67703 } 67704 67705 /* bcm_tunnel_initiator_t_init not dispatchable */ 67706 67707 int 67708 bcm_loop_tunnel_initiator_traverse( 67709 int unit, 67710 bcm_tunnel_initiator_traverse_cb cb, 67711 void * user_data) 67712 { 67713 return bcm_tunnel_initiator_traverse( 67714 BCM_CONTROL(unit)->unit, 67715 cb, 67716 user_data); 67717 } 67718 67719 int 67720 bcm_loop_tunnel_terminator_add( 67721 int unit, 67722 bcm_tunnel_terminator_t * info) 67723 { 67724 return bcm_tunnel_terminator_add( 67725 BCM_CONTROL(unit)->unit, 67726 info); 67727 } 67728 67729 /* bcm_tunnel_terminator_config_action_t_init not dispatchable */ 67730 67731 int 67732 bcm_loop_tunnel_terminator_config_add( 67733 int unit, 67734 uint32 flags, 67735 bcm_tunnel_terminator_config_key_t * config_key, 67736 bcm_tunnel_terminator_config_action_t * config_action) 67737 { 67738 return bcm_tunnel_terminator_config_add( 67739 BCM_CONTROL(unit)->unit, 67740 flags, 67741 config_key, 67742 config_action); 67743 } 67744 67745 int 67746 bcm_loop_tunnel_terminator_config_delete( 67747 int unit, 67748 bcm_tunnel_terminator_config_key_t * config_key) 67749 { 67750 return bcm_tunnel_terminator_config_delete( 67751 BCM_CONTROL(unit)->unit, 67752 config_key); 67753 } 67754 67755 int 67756 bcm_loop_tunnel_terminator_config_get( 67757 int unit, 67758 bcm_tunnel_terminator_config_key_t * config_key, 67759 bcm_tunnel_terminator_config_action_t * config_action) 67760 { 67761 return bcm_tunnel_terminator_config_get( 67762 BCM_CONTROL(unit)->unit, 67763 config_key, 67764 config_action); 67765 } 67766 67767 /* bcm_tunnel_terminator_config_key_t_init not dispatchable */ 67768 67769 int 67770 bcm_loop_tunnel_terminator_config_traverse( 67771 int unit, 67772 bcm_tunnel_terminator_config_traverse_cb cb, 67773 void * user_data) 67774 { 67775 return bcm_tunnel_terminator_config_traverse( 67776 BCM_CONTROL(unit)->unit, 67777 cb, 67778 user_data); 67779 } 67780 67781 int 67782 bcm_loop_tunnel_terminator_create( 67783 int unit, 67784 bcm_tunnel_terminator_t * info) 67785 { 67786 return bcm_tunnel_terminator_create( 67787 BCM_CONTROL(unit)->unit, 67788 info); 67789 } 67790 67791 int 67792 bcm_loop_tunnel_terminator_delete( 67793 int unit, 67794 bcm_tunnel_terminator_t * info) 67795 { 67796 return bcm_tunnel_terminator_delete( 67797 BCM_CONTROL(unit)->unit, 67798 info); 67799 } 67800 67801 int 67802 bcm_loop_tunnel_terminator_get( 67803 int unit, 67804 bcm_tunnel_terminator_t * info) 67805 { 67806 return bcm_tunnel_terminator_get( 67807 BCM_CONTROL(unit)->unit, 67808 info); 67809 } 67810 67811 /* bcm_tunnel_terminator_t_init not dispatchable */ 67812 67813 int 67814 bcm_loop_tunnel_terminator_traverse( 67815 int unit, 67816 bcm_tunnel_terminator_traverse_cb cb, 67817 void * user_data) 67818 { 67819 return bcm_tunnel_terminator_traverse( 67820 BCM_CONTROL(unit)->unit, 67821 cb, 67822 user_data); 67823 } 67824 67825 int 67826 bcm_loop_tunnel_terminator_update( 67827 int unit, 67828 bcm_tunnel_terminator_t * info) 67829 { 67830 return bcm_tunnel_terminator_update( 67831 BCM_CONTROL(unit)->unit, 67832 info); 67833 } 67834 67835 int 67836 bcm_loop_tunnel_terminator_vlan_get( 67837 int unit, 67838 bcm_gport_t tunnel, 67839 bcm_vlan_vector_t * vlan_vec) 67840 { 67841 return bcm_tunnel_terminator_vlan_get( 67842 BCM_CONTROL(unit)->unit, 67843 tunnel, 67844 vlan_vec); 67845 } 67846 67847 int 67848 bcm_loop_tunnel_terminator_vlan_set( 67849 int unit, 67850 bcm_gport_t tunnel, 67851 bcm_vlan_vector_t vlan_vec) 67852 { 67853 return bcm_tunnel_terminator_vlan_set( 67854 BCM_CONTROL(unit)->unit, 67855 tunnel, 67856 vlan_vec); 67857 } 67858 67859 #endif /* INCLUDE_L3 */ 67860 67861 int 67862 bcm_loop_tx( 67863 int unit, 67864 bcm_pkt_t * tx_pkt, 67865 void * cookie) 67866 { 67867 return bcm_tx( 67868 BCM_CONTROL(unit)->unit, 67869 tx_pkt, 67870 cookie); 67871 } 67872 67873 int 67874 bcm_loop_tx_array( 67875 int unit, 67876 bcm_pkt_t ** pkt, 67877 int count, 67878 bcm_pkt_cb_f all_done_cb, 67879 void * cookie) 67880 { 67881 return bcm_tx_array( 67882 BCM_CONTROL(unit)->unit, 67883 pkt, 67884 count, 67885 all_done_cb, 67886 cookie); 67887 } 67888 67889 /* bcm_tx_cpu_tunnel not dispatchable */ 67890 67891 /* bcm_tx_cpu_tunnel_get not dispatchable */ 67892 67893 /* bcm_tx_cpu_tunnel_set not dispatchable */ 67894 67895 #ifdef BROADCOM_DEBUG 67896 67897 int 67898 bcm_loop_tx_dv_dump( 67899 int unit, 67900 void * dv_p) 67901 { 67902 return bcm_tx_dv_dump( 67903 BCM_CONTROL(unit)->unit, 67904 dv_p); 67905 } 67906 67907 #endif /* BROADCOM_DEBUG */ 67908 67909 int 67910 bcm_loop_tx_init( 67911 int unit) 67912 { 67913 return bcm_tx_init( 67914 BCM_CONTROL(unit)->unit); 67915 } 67916 67917 int 67918 bcm_loop_tx_list( 67919 int unit, 67920 bcm_pkt_t * pkt, 67921 bcm_pkt_cb_f all_done_cb, 67922 void * cookie) 67923 { 67924 return bcm_tx_list( 67925 BCM_CONTROL(unit)->unit, 67926 pkt, 67927 all_done_cb, 67928 cookie); 67929 } 67930 67931 int 67932 bcm_loop_tx_pkt_l2_map( 67933 int unit, 67934 bcm_pkt_t * pkt, 67935 bcm_mac_t dest_mac, 67936 int vid) 67937 { 67938 return bcm_tx_pkt_l2_map( 67939 BCM_CONTROL(unit)->unit, 67940 pkt, 67941 dest_mac, 67942 vid); 67943 } 67944 67945 int 67946 bcm_loop_tx_pkt_setup( 67947 int unit, 67948 bcm_pkt_t * tx_pkt) 67949 { 67950 return bcm_tx_pkt_setup( 67951 BCM_CONTROL(unit)->unit, 67952 tx_pkt); 67953 } 67954 67955 #ifdef BROADCOM_DEBUG 67956 67957 int 67958 bcm_loop_tx_show( 67959 int unit) 67960 { 67961 return bcm_tx_show( 67962 BCM_CONTROL(unit)->unit); 67963 } 67964 67965 #endif /* BROADCOM_DEBUG */ 67966 67967 int 67968 bcm_loop_txbeacon_destroy( 67969 int unit, 67970 bcm_txbeacon_pkt_id_t pkt_id) 67971 { 67972 return bcm_txbeacon_destroy( 67973 BCM_CONTROL(unit)->unit, 67974 pkt_id); 67975 } 67976 67977 int 67978 bcm_loop_txbeacon_init( 67979 int unit, 67980 int uC) 67981 { 67982 return bcm_txbeacon_init( 67983 BCM_CONTROL(unit)->unit, 67984 uC); 67985 } 67986 67987 int 67988 bcm_loop_txbeacon_pkt_get( 67989 int unit, 67990 bcm_txbeacon_t * txbeacon) 67991 { 67992 return bcm_txbeacon_pkt_get( 67993 BCM_CONTROL(unit)->unit, 67994 txbeacon); 67995 } 67996 67997 int 67998 bcm_loop_txbeacon_pkt_setup( 67999 int unit, 68000 bcm_txbeacon_t * txbeacon) 68001 { 68002 return bcm_txbeacon_pkt_setup( 68003 BCM_CONTROL(unit)->unit, 68004 txbeacon); 68005 } 68006 68007 int 68008 bcm_loop_txbeacon_start( 68009 int unit, 68010 bcm_txbeacon_pkt_id_t pkt_id) 68011 { 68012 return bcm_txbeacon_start( 68013 BCM_CONTROL(unit)->unit, 68014 pkt_id); 68015 } 68016 68017 int 68018 bcm_loop_txbeacon_stop( 68019 int unit, 68020 bcm_txbeacon_pkt_id_t pkt_id) 68021 { 68022 return bcm_txbeacon_stop( 68023 BCM_CONTROL(unit)->unit, 68024 pkt_id); 68025 } 68026 68027 int 68028 bcm_loop_txbeacon_traverse( 68029 int unit, 68030 bcm_txbeacon_traverse_cb_t trav_fn, 68031 void * user_data) 68032 { 68033 return bcm_txbeacon_traverse( 68034 BCM_CONTROL(unit)->unit, 68035 trav_fn, 68036 user_data); 68037 } 68038 68039 int 68040 bcm_loop_udf_abstract_pkt_format_info_get( 68041 int unit, 68042 bcm_udf_abstract_pkt_format_t abstract_pkt_format, 68043 bcm_udf_abstract_pkt_format_info_t * pkt_format_info) 68044 { 68045 return bcm_udf_abstract_pkt_format_info_get( 68046 BCM_CONTROL(unit)->unit, 68047 abstract_pkt_format, 68048 pkt_format_info); 68049 } 68050 68051 int 68052 bcm_loop_udf_abstract_pkt_format_object_list_get( 68053 int unit, 68054 bcm_udf_abstract_pkt_format_t abstract_pkt_format, 68055 int max, 68056 bcm_udf_id_t * udf_id_list, 68057 int * actual) 68058 { 68059 return bcm_udf_abstract_pkt_format_object_list_get( 68060 BCM_CONTROL(unit)->unit, 68061 abstract_pkt_format, 68062 max, 68063 udf_id_list, 68064 actual); 68065 } 68066 68067 /* bcm_udf_alloc_hints_t_init not dispatchable */ 68068 68069 int 68070 bcm_loop_udf_chunk_create( 68071 int unit, 68072 bcm_udf_alloc_hints_t * hints, 68073 bcm_udf_chunk_info_t * udf_chunk_info, 68074 bcm_udf_id_t * udf_id) 68075 { 68076 return bcm_udf_chunk_create( 68077 BCM_CONTROL(unit)->unit, 68078 hints, 68079 udf_chunk_info, 68080 udf_id); 68081 } 68082 68083 int 68084 bcm_loop_udf_chunk_info_get( 68085 int unit, 68086 bcm_udf_id_t udf_id, 68087 bcm_udf_chunk_info_t * udf_chunk_info) 68088 { 68089 return bcm_udf_chunk_info_get( 68090 BCM_CONTROL(unit)->unit, 68091 udf_id, 68092 udf_chunk_info); 68093 } 68094 68095 /* bcm_udf_chunk_info_t_init not dispatchable */ 68096 68097 int 68098 bcm_loop_udf_create( 68099 int unit, 68100 bcm_udf_alloc_hints_t * hints, 68101 bcm_udf_t * udf_info, 68102 bcm_udf_id_t * udf_id) 68103 { 68104 return bcm_udf_create( 68105 BCM_CONTROL(unit)->unit, 68106 hints, 68107 udf_info, 68108 udf_id); 68109 } 68110 68111 int 68112 bcm_loop_udf_destroy( 68113 int unit, 68114 bcm_udf_id_t udf_id) 68115 { 68116 return bcm_udf_destroy( 68117 BCM_CONTROL(unit)->unit, 68118 udf_id); 68119 } 68120 68121 int 68122 bcm_loop_udf_detach( 68123 int unit) 68124 { 68125 return bcm_udf_detach( 68126 BCM_CONTROL(unit)->unit); 68127 } 68128 68129 int 68130 bcm_loop_udf_flow_based_chunk_arrange_get( 68131 int unit, 68132 bcm_udf_tunnel_term_flow_type_t flow_type, 68133 uint32 * chunk_bmap) 68134 { 68135 return bcm_udf_flow_based_chunk_arrange_get( 68136 BCM_CONTROL(unit)->unit, 68137 flow_type, 68138 chunk_bmap); 68139 } 68140 68141 int 68142 bcm_loop_udf_flow_based_chunk_arrange_set( 68143 int unit, 68144 bcm_udf_tunnel_term_flow_type_t flow_type, 68145 uint32 chunk_bmap) 68146 { 68147 return bcm_udf_flow_based_chunk_arrange_set( 68148 BCM_CONTROL(unit)->unit, 68149 flow_type, 68150 chunk_bmap); 68151 } 68152 68153 int 68154 bcm_loop_udf_get( 68155 int unit, 68156 bcm_udf_id_t udf_id, 68157 bcm_udf_t * udf_info) 68158 { 68159 return bcm_udf_get( 68160 BCM_CONTROL(unit)->unit, 68161 udf_id, 68162 udf_info); 68163 } 68164 68165 int 68166 bcm_loop_udf_get_all( 68167 int unit, 68168 int max, 68169 bcm_udf_id_t * udf_id_list, 68170 int * actual) 68171 { 68172 return bcm_udf_get_all( 68173 BCM_CONTROL(unit)->unit, 68174 max, 68175 udf_id_list, 68176 actual); 68177 } 68178 68179 int 68180 bcm_loop_udf_hash_config_add( 68181 int unit, 68182 uint32 options, 68183 bcm_udf_hash_config_t * config) 68184 { 68185 return bcm_udf_hash_config_add( 68186 BCM_CONTROL(unit)->unit, 68187 options, 68188 config); 68189 } 68190 68191 int 68192 bcm_loop_udf_hash_config_delete( 68193 int unit, 68194 bcm_udf_hash_config_t * config) 68195 { 68196 return bcm_udf_hash_config_delete( 68197 BCM_CONTROL(unit)->unit, 68198 config); 68199 } 68200 68201 int 68202 bcm_loop_udf_hash_config_delete_all( 68203 int unit) 68204 { 68205 return bcm_udf_hash_config_delete_all( 68206 BCM_CONTROL(unit)->unit); 68207 } 68208 68209 int 68210 bcm_loop_udf_hash_config_get( 68211 int unit, 68212 bcm_udf_hash_config_t * config) 68213 { 68214 return bcm_udf_hash_config_get( 68215 BCM_CONTROL(unit)->unit, 68216 config); 68217 } 68218 68219 int 68220 bcm_loop_udf_hash_config_get_all( 68221 int unit, 68222 int max, 68223 bcm_udf_hash_config_t * config_list, 68224 int * actual) 68225 { 68226 return bcm_udf_hash_config_get_all( 68227 BCM_CONTROL(unit)->unit, 68228 max, 68229 config_list, 68230 actual); 68231 } 68232 68233 /* bcm_udf_hash_config_t_init not dispatchable */ 68234 68235 int 68236 bcm_loop_udf_init( 68237 int unit) 68238 { 68239 return bcm_udf_init( 68240 BCM_CONTROL(unit)->unit); 68241 } 68242 68243 int 68244 bcm_loop_udf_oper_mode_get( 68245 int unit, 68246 bcm_udf_oper_mode_t * mode) 68247 { 68248 return bcm_udf_oper_mode_get( 68249 BCM_CONTROL(unit)->unit, 68250 mode); 68251 } 68252 68253 int 68254 bcm_loop_udf_oper_mode_set( 68255 int unit, 68256 bcm_udf_oper_mode_t mode) 68257 { 68258 return bcm_udf_oper_mode_set( 68259 BCM_CONTROL(unit)->unit, 68260 mode); 68261 } 68262 68263 int 68264 bcm_loop_udf_pkt_format_add( 68265 int unit, 68266 bcm_udf_id_t udf_id, 68267 bcm_udf_pkt_format_id_t pkt_format_id) 68268 { 68269 return bcm_udf_pkt_format_add( 68270 BCM_CONTROL(unit)->unit, 68271 udf_id, 68272 pkt_format_id); 68273 } 68274 68275 int 68276 bcm_loop_udf_pkt_format_create( 68277 int unit, 68278 bcm_udf_pkt_format_options_t options, 68279 bcm_udf_pkt_format_info_t * pkt_format, 68280 bcm_udf_pkt_format_id_t * pkt_format_id) 68281 { 68282 return bcm_udf_pkt_format_create( 68283 BCM_CONTROL(unit)->unit, 68284 options, 68285 pkt_format, 68286 pkt_format_id); 68287 } 68288 68289 int 68290 bcm_loop_udf_pkt_format_delete( 68291 int unit, 68292 bcm_udf_id_t udf_id, 68293 bcm_udf_pkt_format_id_t pkt_format_id) 68294 { 68295 return bcm_udf_pkt_format_delete( 68296 BCM_CONTROL(unit)->unit, 68297 udf_id, 68298 pkt_format_id); 68299 } 68300 68301 int 68302 bcm_loop_udf_pkt_format_delete_all( 68303 int unit, 68304 bcm_udf_id_t udf_id) 68305 { 68306 return bcm_udf_pkt_format_delete_all( 68307 BCM_CONTROL(unit)->unit, 68308 udf_id); 68309 } 68310 68311 int 68312 bcm_loop_udf_pkt_format_destroy( 68313 int unit, 68314 bcm_udf_pkt_format_id_t pkt_format_id) 68315 { 68316 return bcm_udf_pkt_format_destroy( 68317 BCM_CONTROL(unit)->unit, 68318 pkt_format_id); 68319 } 68320 68321 int 68322 bcm_loop_udf_pkt_format_get( 68323 int unit, 68324 bcm_udf_pkt_format_id_t pkt_format_id, 68325 int max, 68326 bcm_udf_id_t * udf_id_list, 68327 int * actual) 68328 { 68329 return bcm_udf_pkt_format_get( 68330 BCM_CONTROL(unit)->unit, 68331 pkt_format_id, 68332 max, 68333 udf_id_list, 68334 actual); 68335 } 68336 68337 int 68338 bcm_loop_udf_pkt_format_get_all( 68339 int unit, 68340 bcm_udf_id_t udf_id, 68341 int max, 68342 bcm_udf_pkt_format_id_t * pkt_format_id_list, 68343 int * actual) 68344 { 68345 return bcm_udf_pkt_format_get_all( 68346 BCM_CONTROL(unit)->unit, 68347 udf_id, 68348 max, 68349 pkt_format_id_list, 68350 actual); 68351 } 68352 68353 int 68354 bcm_loop_udf_pkt_format_info_get( 68355 int unit, 68356 bcm_udf_pkt_format_id_t pkt_format_id, 68357 bcm_udf_pkt_format_info_t * pkt_format) 68358 { 68359 return bcm_udf_pkt_format_info_get( 68360 BCM_CONTROL(unit)->unit, 68361 pkt_format_id, 68362 pkt_format); 68363 } 68364 68365 /* bcm_udf_pkt_format_info_t_init not dispatchable */ 68366 68367 int 68368 bcm_loop_udf_range_checker_chunk_info_get( 68369 int unit, 68370 uint8 * num_chunks, 68371 uint32 * chunk_bmap) 68372 { 68373 return bcm_udf_range_checker_chunk_info_get( 68374 BCM_CONTROL(unit)->unit, 68375 num_chunks, 68376 chunk_bmap); 68377 } 68378 68379 /* bcm_udf_t_init not dispatchable */ 68380 68381 /* bcm_unit_local not dispatchable */ 68382 68383 /* bcm_unit_max not dispatchable */ 68384 68385 /* bcm_unit_remote not dispatchable */ 68386 68387 /* bcm_unit_remote_unit_get not dispatchable */ 68388 68389 /* bcm_unit_subtype_get not dispatchable */ 68390 68391 /* bcm_unit_valid not dispatchable */ 68392 68393 /* bcm_vlan_action_set_t_init not dispatchable */ 68394 68395 int 68396 bcm_loop_vlan_block_get( 68397 int unit, 68398 bcm_vlan_t vlan, 68399 bcm_vlan_block_t * vlan_block) 68400 { 68401 return bcm_vlan_block_get( 68402 BCM_CONTROL(unit)->unit, 68403 vlan, 68404 vlan_block); 68405 } 68406 68407 int 68408 bcm_loop_vlan_block_set( 68409 int unit, 68410 bcm_vlan_t vlan, 68411 bcm_vlan_block_t * vlan_block) 68412 { 68413 return bcm_vlan_block_set( 68414 BCM_CONTROL(unit)->unit, 68415 vlan, 68416 vlan_block); 68417 } 68418 68419 /* bcm_vlan_block_t_init not dispatchable */ 68420 68421 int 68422 bcm_loop_vlan_control_get( 68423 int unit, 68424 bcm_vlan_control_t type, 68425 int * arg) 68426 { 68427 return bcm_vlan_control_get( 68428 BCM_CONTROL(unit)->unit, 68429 type, 68430 arg); 68431 } 68432 68433 int 68434 bcm_loop_vlan_control_port_get( 68435 int unit, 68436 int port, 68437 bcm_vlan_control_port_t type, 68438 int * arg) 68439 { 68440 return bcm_vlan_control_port_get( 68441 BCM_CONTROL(unit)->unit, 68442 port, 68443 type, 68444 arg); 68445 } 68446 68447 int 68448 bcm_loop_vlan_control_port_set( 68449 int unit, 68450 int port, 68451 bcm_vlan_control_port_t type, 68452 int arg) 68453 { 68454 return bcm_vlan_control_port_set( 68455 BCM_CONTROL(unit)->unit, 68456 port, 68457 type, 68458 arg); 68459 } 68460 68461 int 68462 bcm_loop_vlan_control_set( 68463 int unit, 68464 bcm_vlan_control_t type, 68465 int arg) 68466 { 68467 return bcm_vlan_control_set( 68468 BCM_CONTROL(unit)->unit, 68469 type, 68470 arg); 68471 } 68472 68473 int 68474 bcm_loop_vlan_control_vlan_get( 68475 int unit, 68476 bcm_vlan_t vlan, 68477 bcm_vlan_control_vlan_t * control) 68478 { 68479 return bcm_vlan_control_vlan_get( 68480 BCM_CONTROL(unit)->unit, 68481 vlan, 68482 control); 68483 } 68484 68485 int 68486 bcm_loop_vlan_control_vlan_selective_get( 68487 int unit, 68488 bcm_vlan_t vlan, 68489 uint32 valid_fields, 68490 bcm_vlan_control_vlan_t * control) 68491 { 68492 return bcm_vlan_control_vlan_selective_get( 68493 BCM_CONTROL(unit)->unit, 68494 vlan, 68495 valid_fields, 68496 control); 68497 } 68498 68499 int 68500 bcm_loop_vlan_control_vlan_selective_set( 68501 int unit, 68502 bcm_vlan_t vlan, 68503 uint32 valid_fields, 68504 bcm_vlan_control_vlan_t * control) 68505 { 68506 return bcm_vlan_control_vlan_selective_set( 68507 BCM_CONTROL(unit)->unit, 68508 vlan, 68509 valid_fields, 68510 control); 68511 } 68512 68513 int 68514 bcm_loop_vlan_control_vlan_set( 68515 int unit, 68516 bcm_vlan_t vlan, 68517 bcm_vlan_control_vlan_t control) 68518 { 68519 return bcm_vlan_control_vlan_set( 68520 BCM_CONTROL(unit)->unit, 68521 vlan, 68522 control); 68523 } 68524 68525 /* bcm_vlan_control_vlan_t_init not dispatchable */ 68526 68527 int 68528 bcm_loop_vlan_create( 68529 int unit, 68530 bcm_vlan_t vid) 68531 { 68532 return bcm_vlan_create( 68533 BCM_CONTROL(unit)->unit, 68534 vid); 68535 } 68536 68537 int 68538 bcm_loop_vlan_cross_connect_add( 68539 int unit, 68540 bcm_vlan_t outer_vlan, 68541 bcm_vlan_t inner_vlan, 68542 bcm_gport_t port_1, 68543 bcm_gport_t port_2) 68544 { 68545 return bcm_vlan_cross_connect_add( 68546 BCM_CONTROL(unit)->unit, 68547 outer_vlan, 68548 inner_vlan, 68549 port_1, 68550 port_2); 68551 } 68552 68553 int 68554 bcm_loop_vlan_cross_connect_delete( 68555 int unit, 68556 bcm_vlan_t outer_vlan, 68557 bcm_vlan_t inner_vlan) 68558 { 68559 return bcm_vlan_cross_connect_delete( 68560 BCM_CONTROL(unit)->unit, 68561 outer_vlan, 68562 inner_vlan); 68563 } 68564 68565 int 68566 bcm_loop_vlan_cross_connect_delete_all( 68567 int unit) 68568 { 68569 return bcm_vlan_cross_connect_delete_all( 68570 BCM_CONTROL(unit)->unit); 68571 } 68572 68573 int 68574 bcm_loop_vlan_cross_connect_traverse( 68575 int unit, 68576 bcm_vlan_cross_connect_traverse_cb cb, 68577 void * user_data) 68578 { 68579 return bcm_vlan_cross_connect_traverse( 68580 BCM_CONTROL(unit)->unit, 68581 cb, 68582 user_data); 68583 } 68584 68585 /* bcm_vlan_data_t_init not dispatchable */ 68586 68587 int 68588 bcm_loop_vlan_default_get( 68589 int unit, 68590 bcm_vlan_t * vid_ptr) 68591 { 68592 return bcm_vlan_default_get( 68593 BCM_CONTROL(unit)->unit, 68594 vid_ptr); 68595 } 68596 68597 int 68598 bcm_loop_vlan_default_set( 68599 int unit, 68600 bcm_vlan_t vid) 68601 { 68602 return bcm_vlan_default_set( 68603 BCM_CONTROL(unit)->unit, 68604 vid); 68605 } 68606 68607 int 68608 bcm_loop_vlan_destroy( 68609 int unit, 68610 bcm_vlan_t vid) 68611 { 68612 return bcm_vlan_destroy( 68613 BCM_CONTROL(unit)->unit, 68614 vid); 68615 } 68616 68617 int 68618 bcm_loop_vlan_destroy_all( 68619 int unit) 68620 { 68621 return bcm_vlan_destroy_all( 68622 BCM_CONTROL(unit)->unit); 68623 } 68624 68625 int 68626 bcm_loop_vlan_dtag_add( 68627 int unit, 68628 int port, 68629 bcm_vlan_t old_vid, 68630 bcm_vlan_t new_vid, 68631 int prio) 68632 { 68633 return bcm_vlan_dtag_add( 68634 BCM_CONTROL(unit)->unit, 68635 port, 68636 old_vid, 68637 new_vid, 68638 prio); 68639 } 68640 68641 int 68642 bcm_loop_vlan_dtag_delete( 68643 int unit, 68644 int port, 68645 bcm_vlan_t old_vid) 68646 { 68647 return bcm_vlan_dtag_delete( 68648 BCM_CONTROL(unit)->unit, 68649 port, 68650 old_vid); 68651 } 68652 68653 int 68654 bcm_loop_vlan_dtag_delete_all( 68655 int unit) 68656 { 68657 return bcm_vlan_dtag_delete_all( 68658 BCM_CONTROL(unit)->unit); 68659 } 68660 68661 int 68662 bcm_loop_vlan_dtag_get( 68663 int unit, 68664 int port, 68665 bcm_vlan_t old_vid, 68666 bcm_vlan_t * new_vid, 68667 int * prio) 68668 { 68669 return bcm_vlan_dtag_get( 68670 BCM_CONTROL(unit)->unit, 68671 port, 68672 old_vid, 68673 new_vid, 68674 prio); 68675 } 68676 68677 int 68678 bcm_loop_vlan_dtag_range_add( 68679 int unit, 68680 int port, 68681 bcm_vlan_t old_vid_low, 68682 bcm_vlan_t old_vid_high, 68683 bcm_vlan_t new_vid, 68684 int int_prio) 68685 { 68686 return bcm_vlan_dtag_range_add( 68687 BCM_CONTROL(unit)->unit, 68688 port, 68689 old_vid_low, 68690 old_vid_high, 68691 new_vid, 68692 int_prio); 68693 } 68694 68695 int 68696 bcm_loop_vlan_dtag_range_delete( 68697 int unit, 68698 int port, 68699 bcm_vlan_t old_vid_low, 68700 bcm_vlan_t old_vid_high) 68701 { 68702 return bcm_vlan_dtag_range_delete( 68703 BCM_CONTROL(unit)->unit, 68704 port, 68705 old_vid_low, 68706 old_vid_high); 68707 } 68708 68709 int 68710 bcm_loop_vlan_dtag_range_delete_all( 68711 int unit) 68712 { 68713 return bcm_vlan_dtag_range_delete_all( 68714 BCM_CONTROL(unit)->unit); 68715 } 68716 68717 int 68718 bcm_loop_vlan_dtag_range_get( 68719 int unit, 68720 int port, 68721 bcm_vlan_t old_vid_low, 68722 bcm_vlan_t old_vid_high, 68723 bcm_vlan_t * new_vid, 68724 int * prio) 68725 { 68726 return bcm_vlan_dtag_range_get( 68727 BCM_CONTROL(unit)->unit, 68728 port, 68729 old_vid_low, 68730 old_vid_high, 68731 new_vid, 68732 prio); 68733 } 68734 68735 int 68736 bcm_loop_vlan_dtag_range_traverse( 68737 int unit, 68738 bcm_vlan_dtag_range_traverse_cb cb, 68739 void * user_data) 68740 { 68741 return bcm_vlan_dtag_range_traverse( 68742 BCM_CONTROL(unit)->unit, 68743 cb, 68744 user_data); 68745 } 68746 68747 int 68748 bcm_loop_vlan_dtag_traverse( 68749 int unit, 68750 bcm_vlan_dtag_traverse_cb cb, 68751 void * user_data) 68752 { 68753 return bcm_vlan_dtag_traverse( 68754 BCM_CONTROL(unit)->unit, 68755 cb, 68756 user_data); 68757 } 68758 68759 int 68760 bcm_loop_vlan_gport_add( 68761 int unit, 68762 bcm_vlan_t vlan, 68763 bcm_gport_t port, 68764 int flags) 68765 { 68766 return bcm_vlan_gport_add( 68767 BCM_CONTROL(unit)->unit, 68768 vlan, 68769 port, 68770 flags); 68771 } 68772 68773 int 68774 bcm_loop_vlan_gport_delete( 68775 int unit, 68776 bcm_vlan_t vlan, 68777 bcm_gport_t port) 68778 { 68779 return bcm_vlan_gport_delete( 68780 BCM_CONTROL(unit)->unit, 68781 vlan, 68782 port); 68783 } 68784 68785 int 68786 bcm_loop_vlan_gport_delete_all( 68787 int unit, 68788 bcm_vlan_t vlan) 68789 { 68790 return bcm_vlan_gport_delete_all( 68791 BCM_CONTROL(unit)->unit, 68792 vlan); 68793 } 68794 68795 int 68796 bcm_loop_vlan_gport_extended_delete( 68797 int unit, 68798 bcm_vlan_t vlan, 68799 bcm_gport_t port, 68800 int flags) 68801 { 68802 return bcm_vlan_gport_extended_delete( 68803 BCM_CONTROL(unit)->unit, 68804 vlan, 68805 port, 68806 flags); 68807 } 68808 68809 int 68810 bcm_loop_vlan_gport_get( 68811 int unit, 68812 bcm_vlan_t vlan, 68813 bcm_gport_t port, 68814 int * flags) 68815 { 68816 return bcm_vlan_gport_get( 68817 BCM_CONTROL(unit)->unit, 68818 vlan, 68819 port, 68820 flags); 68821 } 68822 68823 int 68824 bcm_loop_vlan_gport_get_all( 68825 int unit, 68826 bcm_vlan_t vlan, 68827 int array_max, 68828 bcm_gport_t * gport_array, 68829 int * flags_array, 68830 int * array_size) 68831 { 68832 return bcm_vlan_gport_get_all( 68833 BCM_CONTROL(unit)->unit, 68834 vlan, 68835 array_max, 68836 gport_array, 68837 flags_array, 68838 array_size); 68839 } 68840 68841 int 68842 bcm_loop_vlan_gport_info_get( 68843 int unit, 68844 bcm_vlan_gport_info_t * vlan_gport_info) 68845 { 68846 return bcm_vlan_gport_info_get( 68847 BCM_CONTROL(unit)->unit, 68848 vlan_gport_info); 68849 } 68850 68851 /* bcm_vlan_gport_info_t_init not dispatchable */ 68852 68853 int 68854 bcm_loop_vlan_init( 68855 int unit) 68856 { 68857 return bcm_vlan_init( 68858 BCM_CONTROL(unit)->unit); 68859 } 68860 68861 int 68862 bcm_loop_vlan_ip_action_add( 68863 int unit, 68864 bcm_vlan_ip_t * vlan_ip, 68865 bcm_vlan_action_set_t * action) 68866 { 68867 return bcm_vlan_ip_action_add( 68868 BCM_CONTROL(unit)->unit, 68869 vlan_ip, 68870 action); 68871 } 68872 68873 int 68874 bcm_loop_vlan_ip_action_delete( 68875 int unit, 68876 bcm_vlan_ip_t * vlan_ip) 68877 { 68878 return bcm_vlan_ip_action_delete( 68879 BCM_CONTROL(unit)->unit, 68880 vlan_ip); 68881 } 68882 68883 int 68884 bcm_loop_vlan_ip_action_delete_all( 68885 int unit) 68886 { 68887 return bcm_vlan_ip_action_delete_all( 68888 BCM_CONTROL(unit)->unit); 68889 } 68890 68891 int 68892 bcm_loop_vlan_ip_action_get( 68893 int unit, 68894 bcm_vlan_ip_t * vlan_ip, 68895 bcm_vlan_action_set_t * action) 68896 { 68897 return bcm_vlan_ip_action_get( 68898 BCM_CONTROL(unit)->unit, 68899 vlan_ip, 68900 action); 68901 } 68902 68903 int 68904 bcm_loop_vlan_ip_action_traverse( 68905 int unit, 68906 bcm_vlan_ip_action_traverse_cb cb, 68907 void * user_data) 68908 { 68909 return bcm_vlan_ip_action_traverse( 68910 BCM_CONTROL(unit)->unit, 68911 cb, 68912 user_data); 68913 } 68914 68915 int 68916 bcm_loop_vlan_ip_add( 68917 int unit, 68918 bcm_vlan_ip_t * vlan_ip) 68919 { 68920 return bcm_vlan_ip_add( 68921 BCM_CONTROL(unit)->unit, 68922 vlan_ip); 68923 } 68924 68925 int 68926 bcm_loop_vlan_ip_delete( 68927 int unit, 68928 bcm_vlan_ip_t * vlan_ip) 68929 { 68930 return bcm_vlan_ip_delete( 68931 BCM_CONTROL(unit)->unit, 68932 vlan_ip); 68933 } 68934 68935 int 68936 bcm_loop_vlan_ip_delete_all( 68937 int unit) 68938 { 68939 return bcm_vlan_ip_delete_all( 68940 BCM_CONTROL(unit)->unit); 68941 } 68942 68943 /* bcm_vlan_ip_t_init not dispatchable */ 68944 68945 int 68946 bcm_loop_vlan_list( 68947 int unit, 68948 bcm_vlan_data_t ** listp, 68949 int * countp) 68950 { 68951 return bcm_vlan_list( 68952 BCM_CONTROL(unit)->unit, 68953 listp, 68954 countp); 68955 } 68956 68957 int 68958 bcm_loop_vlan_list_by_pbmp( 68959 int unit, 68960 bcm_pbmp_t ports, 68961 bcm_vlan_data_t ** listp, 68962 int * countp) 68963 { 68964 return bcm_vlan_list_by_pbmp( 68965 BCM_CONTROL(unit)->unit, 68966 ports, 68967 listp, 68968 countp); 68969 } 68970 68971 int 68972 bcm_loop_vlan_list_destroy( 68973 int unit, 68974 bcm_vlan_data_t * list, 68975 int count) 68976 { 68977 return bcm_vlan_list_destroy( 68978 BCM_CONTROL(unit)->unit, 68979 list, 68980 count); 68981 } 68982 68983 int 68984 bcm_loop_vlan_mac_action_add( 68985 int unit, 68986 bcm_mac_t mac, 68987 bcm_vlan_action_set_t * action) 68988 { 68989 return bcm_vlan_mac_action_add( 68990 BCM_CONTROL(unit)->unit, 68991 mac, 68992 action); 68993 } 68994 68995 int 68996 bcm_loop_vlan_mac_action_delete( 68997 int unit, 68998 bcm_mac_t mac) 68999 { 69000 return bcm_vlan_mac_action_delete( 69001 BCM_CONTROL(unit)->unit, 69002 mac); 69003 } 69004 69005 int 69006 bcm_loop_vlan_mac_action_delete_all( 69007 int unit) 69008 { 69009 return bcm_vlan_mac_action_delete_all( 69010 BCM_CONTROL(unit)->unit); 69011 } 69012 69013 int 69014 bcm_loop_vlan_mac_action_get( 69015 int unit, 69016 bcm_mac_t mac, 69017 bcm_vlan_action_set_t * action) 69018 { 69019 return bcm_vlan_mac_action_get( 69020 BCM_CONTROL(unit)->unit, 69021 mac, 69022 action); 69023 } 69024 69025 int 69026 bcm_loop_vlan_mac_action_traverse( 69027 int unit, 69028 bcm_vlan_mac_action_traverse_cb cb, 69029 void * user_data) 69030 { 69031 return bcm_vlan_mac_action_traverse( 69032 BCM_CONTROL(unit)->unit, 69033 cb, 69034 user_data); 69035 } 69036 69037 int 69038 bcm_loop_vlan_mac_add( 69039 int unit, 69040 bcm_mac_t mac, 69041 bcm_vlan_t vid, 69042 int prio) 69043 { 69044 return bcm_vlan_mac_add( 69045 BCM_CONTROL(unit)->unit, 69046 mac, 69047 vid, 69048 prio); 69049 } 69050 69051 int 69052 bcm_loop_vlan_mac_delete( 69053 int unit, 69054 bcm_mac_t mac) 69055 { 69056 return bcm_vlan_mac_delete( 69057 BCM_CONTROL(unit)->unit, 69058 mac); 69059 } 69060 69061 int 69062 bcm_loop_vlan_mac_delete_all( 69063 int unit) 69064 { 69065 return bcm_vlan_mac_delete_all( 69066 BCM_CONTROL(unit)->unit); 69067 } 69068 69069 int 69070 bcm_loop_vlan_match_action_add( 69071 int unit, 69072 uint32 options, 69073 bcm_vlan_match_info_t * match_info, 69074 bcm_vlan_action_set_t * action_set) 69075 { 69076 return bcm_vlan_match_action_add( 69077 BCM_CONTROL(unit)->unit, 69078 options, 69079 match_info, 69080 action_set); 69081 } 69082 69083 int 69084 bcm_loop_vlan_match_action_delete( 69085 int unit, 69086 bcm_vlan_match_info_t * match_info) 69087 { 69088 return bcm_vlan_match_action_delete( 69089 BCM_CONTROL(unit)->unit, 69090 match_info); 69091 } 69092 69093 int 69094 bcm_loop_vlan_match_action_delete_all( 69095 int unit, 69096 bcm_vlan_match_t match) 69097 { 69098 return bcm_vlan_match_action_delete_all( 69099 BCM_CONTROL(unit)->unit, 69100 match); 69101 } 69102 69103 int 69104 bcm_loop_vlan_match_action_get( 69105 int unit, 69106 bcm_vlan_match_info_t * match_info, 69107 bcm_vlan_action_set_t * action_set) 69108 { 69109 return bcm_vlan_match_action_get( 69110 BCM_CONTROL(unit)->unit, 69111 match_info, 69112 action_set); 69113 } 69114 69115 int 69116 bcm_loop_vlan_match_action_multi_get( 69117 int unit, 69118 bcm_vlan_match_t match, 69119 int size, 69120 bcm_vlan_match_info_t * match_info_array, 69121 bcm_vlan_action_set_t * action_set_array, 69122 int * count) 69123 { 69124 return bcm_vlan_match_action_multi_get( 69125 BCM_CONTROL(unit)->unit, 69126 match, 69127 size, 69128 match_info_array, 69129 action_set_array, 69130 count); 69131 } 69132 69133 /* bcm_vlan_match_info_t_init not dispatchable */ 69134 69135 int 69136 bcm_loop_vlan_mcast_flood_get( 69137 int unit, 69138 bcm_vlan_t vlan, 69139 bcm_vlan_mcast_flood_t * mode) 69140 { 69141 return bcm_vlan_mcast_flood_get( 69142 BCM_CONTROL(unit)->unit, 69143 vlan, 69144 mode); 69145 } 69146 69147 int 69148 bcm_loop_vlan_mcast_flood_set( 69149 int unit, 69150 bcm_vlan_t vlan, 69151 bcm_vlan_mcast_flood_t mode) 69152 { 69153 return bcm_vlan_mcast_flood_set( 69154 BCM_CONTROL(unit)->unit, 69155 vlan, 69156 mode); 69157 } 69158 69159 int 69160 bcm_loop_vlan_policer_get( 69161 int unit, 69162 bcm_vlan_t vlan, 69163 bcm_policer_t * policer_id) 69164 { 69165 return bcm_vlan_policer_get( 69166 BCM_CONTROL(unit)->unit, 69167 vlan, 69168 policer_id); 69169 } 69170 69171 int 69172 bcm_loop_vlan_policer_set( 69173 int unit, 69174 bcm_vlan_t vlan, 69175 bcm_policer_t policer_id) 69176 { 69177 return bcm_vlan_policer_set( 69178 BCM_CONTROL(unit)->unit, 69179 vlan, 69180 policer_id); 69181 } 69182 69183 int 69184 bcm_loop_vlan_port_add( 69185 int unit, 69186 bcm_vlan_t vid, 69187 bcm_pbmp_t pbmp, 69188 bcm_pbmp_t ubmp) 69189 { 69190 return bcm_vlan_port_add( 69191 BCM_CONTROL(unit)->unit, 69192 vid, 69193 pbmp, 69194 ubmp); 69195 } 69196 69197 int 69198 bcm_loop_vlan_port_create( 69199 int unit, 69200 bcm_vlan_port_t * vlan_port) 69201 { 69202 return bcm_vlan_port_create( 69203 BCM_CONTROL(unit)->unit, 69204 vlan_port); 69205 } 69206 69207 int 69208 bcm_loop_vlan_port_default_action_delete( 69209 int unit, 69210 bcm_port_t port) 69211 { 69212 return bcm_vlan_port_default_action_delete( 69213 BCM_CONTROL(unit)->unit, 69214 port); 69215 } 69216 69217 int 69218 bcm_loop_vlan_port_default_action_get( 69219 int unit, 69220 bcm_port_t port, 69221 bcm_vlan_action_set_t * action) 69222 { 69223 return bcm_vlan_port_default_action_get( 69224 BCM_CONTROL(unit)->unit, 69225 port, 69226 action); 69227 } 69228 69229 int 69230 bcm_loop_vlan_port_default_action_set( 69231 int unit, 69232 bcm_port_t port, 69233 bcm_vlan_action_set_t * action) 69234 { 69235 return bcm_vlan_port_default_action_set( 69236 BCM_CONTROL(unit)->unit, 69237 port, 69238 action); 69239 } 69240 69241 int 69242 bcm_loop_vlan_port_destroy( 69243 int unit, 69244 bcm_gport_t gport) 69245 { 69246 return bcm_vlan_port_destroy( 69247 BCM_CONTROL(unit)->unit, 69248 gport); 69249 } 69250 69251 int 69252 bcm_loop_vlan_port_egress_default_action_delete( 69253 int unit, 69254 bcm_port_t port) 69255 { 69256 return bcm_vlan_port_egress_default_action_delete( 69257 BCM_CONTROL(unit)->unit, 69258 port); 69259 } 69260 69261 int 69262 bcm_loop_vlan_port_egress_default_action_get( 69263 int unit, 69264 bcm_port_t port, 69265 bcm_vlan_action_set_t * action) 69266 { 69267 return bcm_vlan_port_egress_default_action_get( 69268 BCM_CONTROL(unit)->unit, 69269 port, 69270 action); 69271 } 69272 69273 int 69274 bcm_loop_vlan_port_egress_default_action_set( 69275 int unit, 69276 bcm_port_t port, 69277 bcm_vlan_action_set_t * action) 69278 { 69279 return bcm_vlan_port_egress_default_action_set( 69280 BCM_CONTROL(unit)->unit, 69281 port, 69282 action); 69283 } 69284 69285 int 69286 bcm_loop_vlan_port_find( 69287 int unit, 69288 bcm_vlan_port_t * vlan_port) 69289 { 69290 return bcm_vlan_port_find( 69291 BCM_CONTROL(unit)->unit, 69292 vlan_port); 69293 } 69294 69295 int 69296 bcm_loop_vlan_port_get( 69297 int unit, 69298 bcm_vlan_t vid, 69299 bcm_pbmp_t * pbmp, 69300 bcm_pbmp_t * ubmp) 69301 { 69302 return bcm_vlan_port_get( 69303 BCM_CONTROL(unit)->unit, 69304 vid, 69305 pbmp, 69306 ubmp); 69307 } 69308 69309 int 69310 bcm_loop_vlan_port_protocol_action_add( 69311 int unit, 69312 bcm_port_t port, 69313 bcm_port_frametype_t frame, 69314 bcm_port_ethertype_t ether, 69315 bcm_vlan_action_set_t * action) 69316 { 69317 return bcm_vlan_port_protocol_action_add( 69318 BCM_CONTROL(unit)->unit, 69319 port, 69320 frame, 69321 ether, 69322 action); 69323 } 69324 69325 int 69326 bcm_loop_vlan_port_protocol_action_delete( 69327 int unit, 69328 bcm_port_t port, 69329 bcm_port_frametype_t frame, 69330 bcm_port_ethertype_t ether) 69331 { 69332 return bcm_vlan_port_protocol_action_delete( 69333 BCM_CONTROL(unit)->unit, 69334 port, 69335 frame, 69336 ether); 69337 } 69338 69339 int 69340 bcm_loop_vlan_port_protocol_action_delete_all( 69341 int unit, 69342 bcm_port_t port) 69343 { 69344 return bcm_vlan_port_protocol_action_delete_all( 69345 BCM_CONTROL(unit)->unit, 69346 port); 69347 } 69348 69349 int 69350 bcm_loop_vlan_port_protocol_action_get( 69351 int unit, 69352 bcm_port_t port, 69353 bcm_port_frametype_t frame, 69354 bcm_port_ethertype_t ether, 69355 bcm_vlan_action_set_t * action) 69356 { 69357 return bcm_vlan_port_protocol_action_get( 69358 BCM_CONTROL(unit)->unit, 69359 port, 69360 frame, 69361 ether, 69362 action); 69363 } 69364 69365 int 69366 bcm_loop_vlan_port_protocol_action_traverse( 69367 int unit, 69368 bcm_vlan_port_protocol_action_traverse_cb cb, 69369 void * user_data) 69370 { 69371 return bcm_vlan_port_protocol_action_traverse( 69372 BCM_CONTROL(unit)->unit, 69373 cb, 69374 user_data); 69375 } 69376 69377 int 69378 bcm_loop_vlan_port_remove( 69379 int unit, 69380 bcm_vlan_t vid, 69381 bcm_pbmp_t pbmp) 69382 { 69383 return bcm_vlan_port_remove( 69384 BCM_CONTROL(unit)->unit, 69385 vid, 69386 pbmp); 69387 } 69388 69389 int 69390 bcm_loop_vlan_port_stat_multi_get( 69391 int unit, 69392 bcm_vlan_t vlan, 69393 bcm_port_t port, 69394 bcm_cos_t cos, 69395 int nstat, 69396 bcm_vlan_stat_t * stat_arr, 69397 uint64 * value_arr) 69398 { 69399 return bcm_vlan_port_stat_multi_get( 69400 BCM_CONTROL(unit)->unit, 69401 vlan, 69402 port, 69403 cos, 69404 nstat, 69405 stat_arr, 69406 value_arr); 69407 } 69408 69409 int 69410 bcm_loop_vlan_port_stat_multi_get32( 69411 int unit, 69412 bcm_vlan_t vlan, 69413 bcm_port_t port, 69414 bcm_cos_t cos, 69415 int nstat, 69416 bcm_vlan_stat_t * stat_arr, 69417 uint32 * value_arr) 69418 { 69419 return bcm_vlan_port_stat_multi_get32( 69420 BCM_CONTROL(unit)->unit, 69421 vlan, 69422 port, 69423 cos, 69424 nstat, 69425 stat_arr, 69426 value_arr); 69427 } 69428 69429 int 69430 bcm_loop_vlan_port_stat_multi_set( 69431 int unit, 69432 bcm_vlan_t vlan, 69433 bcm_port_t port, 69434 bcm_cos_t cos, 69435 int nstat, 69436 bcm_vlan_stat_t * stat_arr, 69437 uint64 * value_arr) 69438 { 69439 return bcm_vlan_port_stat_multi_set( 69440 BCM_CONTROL(unit)->unit, 69441 vlan, 69442 port, 69443 cos, 69444 nstat, 69445 stat_arr, 69446 value_arr); 69447 } 69448 69449 int 69450 bcm_loop_vlan_port_stat_multi_set32( 69451 int unit, 69452 bcm_vlan_t vlan, 69453 bcm_port_t port, 69454 bcm_cos_t cos, 69455 int nstat, 69456 bcm_vlan_stat_t * stat_arr, 69457 uint32 * value_arr) 69458 { 69459 return bcm_vlan_port_stat_multi_set32( 69460 BCM_CONTROL(unit)->unit, 69461 vlan, 69462 port, 69463 cos, 69464 nstat, 69465 stat_arr, 69466 value_arr); 69467 } 69468 69469 /* bcm_vlan_port_t_init not dispatchable */ 69470 69471 int 69472 bcm_loop_vlan_port_translation_get( 69473 int unit, 69474 bcm_vlan_port_translation_t * vlan_port_translation) 69475 { 69476 return bcm_vlan_port_translation_get( 69477 BCM_CONTROL(unit)->unit, 69478 vlan_port_translation); 69479 } 69480 69481 int 69482 bcm_loop_vlan_port_translation_set( 69483 int unit, 69484 bcm_vlan_port_translation_t * vlan_port_translation) 69485 { 69486 return bcm_vlan_port_translation_set( 69487 BCM_CONTROL(unit)->unit, 69488 vlan_port_translation); 69489 } 69490 69491 /* bcm_vlan_port_translation_t_init not dispatchable */ 69492 69493 int 69494 bcm_loop_vlan_port_traverse( 69495 int unit, 69496 bcm_vlan_port_traverse_info_t * additional_info, 69497 bcm_vlan_port_traverse_cb trav_fn, 69498 void * user_data) 69499 { 69500 return bcm_vlan_port_traverse( 69501 BCM_CONTROL(unit)->unit, 69502 additional_info, 69503 trav_fn, 69504 user_data); 69505 } 69506 69507 int 69508 bcm_loop_vlan_queue_map_attach( 69509 int unit, 69510 bcm_vlan_t vlan, 69511 int qmid) 69512 { 69513 return bcm_vlan_queue_map_attach( 69514 BCM_CONTROL(unit)->unit, 69515 vlan, 69516 qmid); 69517 } 69518 69519 int 69520 bcm_loop_vlan_queue_map_attach_get( 69521 int unit, 69522 bcm_vlan_t vlan, 69523 int * qmid) 69524 { 69525 return bcm_vlan_queue_map_attach_get( 69526 BCM_CONTROL(unit)->unit, 69527 vlan, 69528 qmid); 69529 } 69530 69531 int 69532 bcm_loop_vlan_queue_map_create( 69533 int unit, 69534 uint32 flags, 69535 int * qmid) 69536 { 69537 return bcm_vlan_queue_map_create( 69538 BCM_CONTROL(unit)->unit, 69539 flags, 69540 qmid); 69541 } 69542 69543 int 69544 bcm_loop_vlan_queue_map_destroy( 69545 int unit, 69546 int qmid) 69547 { 69548 return bcm_vlan_queue_map_destroy( 69549 BCM_CONTROL(unit)->unit, 69550 qmid); 69551 } 69552 69553 int 69554 bcm_loop_vlan_queue_map_destroy_all( 69555 int unit) 69556 { 69557 return bcm_vlan_queue_map_destroy_all( 69558 BCM_CONTROL(unit)->unit); 69559 } 69560 69561 int 69562 bcm_loop_vlan_queue_map_detach( 69563 int unit, 69564 bcm_vlan_t vlan) 69565 { 69566 return bcm_vlan_queue_map_detach( 69567 BCM_CONTROL(unit)->unit, 69568 vlan); 69569 } 69570 69571 int 69572 bcm_loop_vlan_queue_map_detach_all( 69573 int unit) 69574 { 69575 return bcm_vlan_queue_map_detach_all( 69576 BCM_CONTROL(unit)->unit); 69577 } 69578 69579 int 69580 bcm_loop_vlan_queue_map_get( 69581 int unit, 69582 int qmid, 69583 int pkt_pri, 69584 int cfi, 69585 int * queue, 69586 int * color) 69587 { 69588 return bcm_vlan_queue_map_get( 69589 BCM_CONTROL(unit)->unit, 69590 qmid, 69591 pkt_pri, 69592 cfi, 69593 queue, 69594 color); 69595 } 69596 69597 int 69598 bcm_loop_vlan_queue_map_set( 69599 int unit, 69600 int qmid, 69601 int pkt_pri, 69602 int cfi, 69603 int queue, 69604 int color) 69605 { 69606 return bcm_vlan_queue_map_set( 69607 BCM_CONTROL(unit)->unit, 69608 qmid, 69609 pkt_pri, 69610 cfi, 69611 queue, 69612 color); 69613 } 69614 69615 int 69616 bcm_loop_vlan_stat_attach( 69617 int unit, 69618 bcm_vlan_t vlan, 69619 uint32 stat_counter_id) 69620 { 69621 return bcm_vlan_stat_attach( 69622 BCM_CONTROL(unit)->unit, 69623 vlan, 69624 stat_counter_id); 69625 } 69626 69627 int 69628 bcm_loop_vlan_stat_counter_get( 69629 int unit, 69630 bcm_vlan_t vlan, 69631 bcm_vlan_stat_t stat, 69632 uint32 num_entries, 69633 uint32 * counter_indexes, 69634 bcm_stat_value_t * counter_values) 69635 { 69636 return bcm_vlan_stat_counter_get( 69637 BCM_CONTROL(unit)->unit, 69638 vlan, 69639 stat, 69640 num_entries, 69641 counter_indexes, 69642 counter_values); 69643 } 69644 69645 int 69646 bcm_loop_vlan_stat_counter_set( 69647 int unit, 69648 bcm_vlan_t vlan, 69649 bcm_vlan_stat_t stat, 69650 uint32 num_entries, 69651 uint32 * counter_indexes, 69652 bcm_stat_value_t * counter_values) 69653 { 69654 return bcm_vlan_stat_counter_set( 69655 BCM_CONTROL(unit)->unit, 69656 vlan, 69657 stat, 69658 num_entries, 69659 counter_indexes, 69660 counter_values); 69661 } 69662 69663 int 69664 bcm_loop_vlan_stat_counter_sync_get( 69665 int unit, 69666 bcm_vlan_t vlan, 69667 bcm_vlan_stat_t stat, 69668 uint32 num_entries, 69669 uint32 * counter_indexes, 69670 bcm_stat_value_t * counter_values) 69671 { 69672 return bcm_vlan_stat_counter_sync_get( 69673 BCM_CONTROL(unit)->unit, 69674 vlan, 69675 stat, 69676 num_entries, 69677 counter_indexes, 69678 counter_values); 69679 } 69680 69681 int 69682 bcm_loop_vlan_stat_detach( 69683 int unit, 69684 bcm_vlan_t vlan) 69685 { 69686 return bcm_vlan_stat_detach( 69687 BCM_CONTROL(unit)->unit, 69688 vlan); 69689 } 69690 69691 int 69692 bcm_loop_vlan_stat_detach_with_id( 69693 int unit, 69694 bcm_vlan_t vlan, 69695 uint32 stat_counter_id) 69696 { 69697 return bcm_vlan_stat_detach_with_id( 69698 BCM_CONTROL(unit)->unit, 69699 vlan, 69700 stat_counter_id); 69701 } 69702 69703 int 69704 bcm_loop_vlan_stat_enable_set( 69705 int unit, 69706 bcm_vlan_t vlan, 69707 int enable) 69708 { 69709 return bcm_vlan_stat_enable_set( 69710 BCM_CONTROL(unit)->unit, 69711 vlan, 69712 enable); 69713 } 69714 69715 int 69716 bcm_loop_vlan_stat_get( 69717 int unit, 69718 bcm_vlan_t vlan, 69719 bcm_cos_t cos, 69720 bcm_vlan_stat_t stat, 69721 uint64 * val) 69722 { 69723 return bcm_vlan_stat_get( 69724 BCM_CONTROL(unit)->unit, 69725 vlan, 69726 cos, 69727 stat, 69728 val); 69729 } 69730 69731 int 69732 bcm_loop_vlan_stat_get32( 69733 int unit, 69734 bcm_vlan_t vlan, 69735 bcm_cos_t cos, 69736 bcm_vlan_stat_t stat, 69737 uint32 * val) 69738 { 69739 return bcm_vlan_stat_get32( 69740 BCM_CONTROL(unit)->unit, 69741 vlan, 69742 cos, 69743 stat, 69744 val); 69745 } 69746 69747 int 69748 bcm_loop_vlan_stat_id_get( 69749 int unit, 69750 bcm_vlan_t vlan, 69751 bcm_vlan_stat_t stat, 69752 uint32 * stat_counter_id) 69753 { 69754 return bcm_vlan_stat_id_get( 69755 BCM_CONTROL(unit)->unit, 69756 vlan, 69757 stat, 69758 stat_counter_id); 69759 } 69760 69761 int 69762 bcm_loop_vlan_stat_multi_get( 69763 int unit, 69764 bcm_vlan_t vlan, 69765 bcm_cos_t cos, 69766 int nstat, 69767 bcm_vlan_stat_t * stat_arr, 69768 uint64 * value_arr) 69769 { 69770 return bcm_vlan_stat_multi_get( 69771 BCM_CONTROL(unit)->unit, 69772 vlan, 69773 cos, 69774 nstat, 69775 stat_arr, 69776 value_arr); 69777 } 69778 69779 int 69780 bcm_loop_vlan_stat_multi_get32( 69781 int unit, 69782 bcm_vlan_t vlan, 69783 bcm_cos_t cos, 69784 int nstat, 69785 bcm_vlan_stat_t * stat_arr, 69786 uint32 * value_arr) 69787 { 69788 return bcm_vlan_stat_multi_get32( 69789 BCM_CONTROL(unit)->unit, 69790 vlan, 69791 cos, 69792 nstat, 69793 stat_arr, 69794 value_arr); 69795 } 69796 69797 int 69798 bcm_loop_vlan_stat_multi_set( 69799 int unit, 69800 bcm_vlan_t vlan, 69801 bcm_cos_t cos, 69802 int nstat, 69803 bcm_vlan_stat_t * stat_arr, 69804 uint64 * value_arr) 69805 { 69806 return bcm_vlan_stat_multi_set( 69807 BCM_CONTROL(unit)->unit, 69808 vlan, 69809 cos, 69810 nstat, 69811 stat_arr, 69812 value_arr); 69813 } 69814 69815 int 69816 bcm_loop_vlan_stat_multi_set32( 69817 int unit, 69818 bcm_vlan_t vlan, 69819 bcm_cos_t cos, 69820 int nstat, 69821 bcm_vlan_stat_t * stat_arr, 69822 uint32 * value_arr) 69823 { 69824 return bcm_vlan_stat_multi_set32( 69825 BCM_CONTROL(unit)->unit, 69826 vlan, 69827 cos, 69828 nstat, 69829 stat_arr, 69830 value_arr); 69831 } 69832 69833 int 69834 bcm_loop_vlan_stat_set( 69835 int unit, 69836 bcm_vlan_t vlan, 69837 bcm_cos_t cos, 69838 bcm_vlan_stat_t stat, 69839 uint64 val) 69840 { 69841 return bcm_vlan_stat_set( 69842 BCM_CONTROL(unit)->unit, 69843 vlan, 69844 cos, 69845 stat, 69846 val); 69847 } 69848 69849 int 69850 bcm_loop_vlan_stat_set32( 69851 int unit, 69852 bcm_vlan_t vlan, 69853 bcm_cos_t cos, 69854 bcm_vlan_stat_t stat, 69855 uint32 val) 69856 { 69857 return bcm_vlan_stat_set32( 69858 BCM_CONTROL(unit)->unit, 69859 vlan, 69860 cos, 69861 stat, 69862 val); 69863 } 69864 69865 int 69866 bcm_loop_vlan_stat_sync_get( 69867 int unit, 69868 bcm_vlan_t vlan, 69869 bcm_cos_t cos, 69870 bcm_vlan_stat_t stat, 69871 uint64 * val) 69872 { 69873 return bcm_vlan_stat_sync_get( 69874 BCM_CONTROL(unit)->unit, 69875 vlan, 69876 cos, 69877 stat, 69878 val); 69879 } 69880 69881 int 69882 bcm_loop_vlan_stat_sync_get32( 69883 int unit, 69884 bcm_vlan_t vlan, 69885 bcm_cos_t cos, 69886 bcm_vlan_stat_t stat, 69887 uint32 * val) 69888 { 69889 return bcm_vlan_stat_sync_get32( 69890 BCM_CONTROL(unit)->unit, 69891 vlan, 69892 cos, 69893 stat, 69894 val); 69895 } 69896 69897 int 69898 bcm_loop_vlan_stg_get( 69899 int unit, 69900 bcm_vlan_t vid, 69901 bcm_stg_t * stg_ptr) 69902 { 69903 return bcm_vlan_stg_get( 69904 BCM_CONTROL(unit)->unit, 69905 vid, 69906 stg_ptr); 69907 } 69908 69909 int 69910 bcm_loop_vlan_stg_set( 69911 int unit, 69912 bcm_vlan_t vid, 69913 bcm_stg_t stg) 69914 { 69915 return bcm_vlan_stg_set( 69916 BCM_CONTROL(unit)->unit, 69917 vid, 69918 stg); 69919 } 69920 69921 int 69922 bcm_loop_vlan_stp_get( 69923 int unit, 69924 bcm_vlan_t vid, 69925 bcm_port_t port, 69926 int * stp_state) 69927 { 69928 return bcm_vlan_stp_get( 69929 BCM_CONTROL(unit)->unit, 69930 vid, 69931 port, 69932 stp_state); 69933 } 69934 69935 int 69936 bcm_loop_vlan_stp_set( 69937 int unit, 69938 bcm_vlan_t vid, 69939 bcm_port_t port, 69940 int stp_state) 69941 { 69942 return bcm_vlan_stp_set( 69943 BCM_CONTROL(unit)->unit, 69944 vid, 69945 port, 69946 stp_state); 69947 } 69948 69949 int 69950 bcm_loop_vlan_translate_action_add( 69951 int unit, 69952 bcm_gport_t port, 69953 bcm_vlan_translate_key_t key_type, 69954 bcm_vlan_t outer_vlan, 69955 bcm_vlan_t inner_vlan, 69956 bcm_vlan_action_set_t * action) 69957 { 69958 return bcm_vlan_translate_action_add( 69959 BCM_CONTROL(unit)->unit, 69960 port, 69961 key_type, 69962 outer_vlan, 69963 inner_vlan, 69964 action); 69965 } 69966 69967 int 69968 bcm_loop_vlan_translate_action_class_get( 69969 int unit, 69970 bcm_vlan_translate_action_class_t * action_class) 69971 { 69972 return bcm_vlan_translate_action_class_get( 69973 BCM_CONTROL(unit)->unit, 69974 action_class); 69975 } 69976 69977 int 69978 bcm_loop_vlan_translate_action_class_set( 69979 int unit, 69980 bcm_vlan_translate_action_class_t * action_class) 69981 { 69982 return bcm_vlan_translate_action_class_set( 69983 BCM_CONTROL(unit)->unit, 69984 action_class); 69985 } 69986 69987 /* bcm_vlan_translate_action_class_t_init not dispatchable */ 69988 69989 int 69990 bcm_loop_vlan_translate_action_create( 69991 int unit, 69992 bcm_gport_t port, 69993 bcm_vlan_translate_key_t key_type, 69994 bcm_vlan_t outer_vlan, 69995 bcm_vlan_t inner_vlan, 69996 bcm_vlan_action_set_t * action) 69997 { 69998 return bcm_vlan_translate_action_create( 69999 BCM_CONTROL(unit)->unit, 70000 port, 70001 key_type, 70002 outer_vlan, 70003 inner_vlan, 70004 action); 70005 } 70006 70007 int 70008 bcm_loop_vlan_translate_action_delete( 70009 int unit, 70010 bcm_gport_t port, 70011 bcm_vlan_translate_key_t key_type, 70012 bcm_vlan_t outer_vlan, 70013 bcm_vlan_t inner_vlan) 70014 { 70015 return bcm_vlan_translate_action_delete( 70016 BCM_CONTROL(unit)->unit, 70017 port, 70018 key_type, 70019 outer_vlan, 70020 inner_vlan); 70021 } 70022 70023 int 70024 bcm_loop_vlan_translate_action_get( 70025 int unit, 70026 bcm_gport_t port, 70027 bcm_vlan_translate_key_t key_type, 70028 bcm_vlan_t outer_vlan, 70029 bcm_vlan_t inner_vlan, 70030 bcm_vlan_action_set_t * action) 70031 { 70032 return bcm_vlan_translate_action_get( 70033 BCM_CONTROL(unit)->unit, 70034 port, 70035 key_type, 70036 outer_vlan, 70037 inner_vlan, 70038 action); 70039 } 70040 70041 int 70042 bcm_loop_vlan_translate_action_id_create( 70043 int unit, 70044 uint32 flags, 70045 int * action_id) 70046 { 70047 return bcm_vlan_translate_action_id_create( 70048 BCM_CONTROL(unit)->unit, 70049 flags, 70050 action_id); 70051 } 70052 70053 int 70054 bcm_loop_vlan_translate_action_id_destroy( 70055 int unit, 70056 uint32 flags, 70057 int action_id) 70058 { 70059 return bcm_vlan_translate_action_id_destroy( 70060 BCM_CONTROL(unit)->unit, 70061 flags, 70062 action_id); 70063 } 70064 70065 int 70066 bcm_loop_vlan_translate_action_id_destroy_all( 70067 int unit, 70068 uint32 flags) 70069 { 70070 return bcm_vlan_translate_action_id_destroy_all( 70071 BCM_CONTROL(unit)->unit, 70072 flags); 70073 } 70074 70075 int 70076 bcm_loop_vlan_translate_action_id_get( 70077 int unit, 70078 uint32 flags, 70079 int action_id, 70080 bcm_vlan_action_set_t * action) 70081 { 70082 return bcm_vlan_translate_action_id_get( 70083 BCM_CONTROL(unit)->unit, 70084 flags, 70085 action_id, 70086 action); 70087 } 70088 70089 int 70090 bcm_loop_vlan_translate_action_id_set( 70091 int unit, 70092 uint32 flags, 70093 int action_id, 70094 bcm_vlan_action_set_t * action) 70095 { 70096 return bcm_vlan_translate_action_id_set( 70097 BCM_CONTROL(unit)->unit, 70098 flags, 70099 action_id, 70100 action); 70101 } 70102 70103 int 70104 bcm_loop_vlan_translate_action_range_add( 70105 int unit, 70106 bcm_gport_t port, 70107 bcm_vlan_t outer_vlan_low, 70108 bcm_vlan_t outer_vlan_high, 70109 bcm_vlan_t inner_vlan_low, 70110 bcm_vlan_t inner_vlan_high, 70111 bcm_vlan_action_set_t * action) 70112 { 70113 return bcm_vlan_translate_action_range_add( 70114 BCM_CONTROL(unit)->unit, 70115 port, 70116 outer_vlan_low, 70117 outer_vlan_high, 70118 inner_vlan_low, 70119 inner_vlan_high, 70120 action); 70121 } 70122 70123 int 70124 bcm_loop_vlan_translate_action_range_delete( 70125 int unit, 70126 bcm_gport_t port, 70127 bcm_vlan_t outer_vlan_low, 70128 bcm_vlan_t outer_vlan_high, 70129 bcm_vlan_t inner_vlan_low, 70130 bcm_vlan_t inner_vlan_high) 70131 { 70132 return bcm_vlan_translate_action_range_delete( 70133 BCM_CONTROL(unit)->unit, 70134 port, 70135 outer_vlan_low, 70136 outer_vlan_high, 70137 inner_vlan_low, 70138 inner_vlan_high); 70139 } 70140 70141 int 70142 bcm_loop_vlan_translate_action_range_delete_all( 70143 int unit) 70144 { 70145 return bcm_vlan_translate_action_range_delete_all( 70146 BCM_CONTROL(unit)->unit); 70147 } 70148 70149 int 70150 bcm_loop_vlan_translate_action_range_get( 70151 int unit, 70152 bcm_gport_t port, 70153 bcm_vlan_t outer_vlan_low, 70154 bcm_vlan_t outer_vlan_high, 70155 bcm_vlan_t inner_vlan_low, 70156 bcm_vlan_t inner_vlan_high, 70157 bcm_vlan_action_set_t * action) 70158 { 70159 return bcm_vlan_translate_action_range_get( 70160 BCM_CONTROL(unit)->unit, 70161 port, 70162 outer_vlan_low, 70163 outer_vlan_high, 70164 inner_vlan_low, 70165 inner_vlan_high, 70166 action); 70167 } 70168 70169 int 70170 bcm_loop_vlan_translate_action_range_traverse( 70171 int unit, 70172 bcm_vlan_translate_action_range_traverse_cb cb, 70173 void * user_data) 70174 { 70175 return bcm_vlan_translate_action_range_traverse( 70176 BCM_CONTROL(unit)->unit, 70177 cb, 70178 user_data); 70179 } 70180 70181 int 70182 bcm_loop_vlan_translate_action_traverse( 70183 int unit, 70184 bcm_vlan_translate_action_traverse_cb cb, 70185 void * user_data) 70186 { 70187 return bcm_vlan_translate_action_traverse( 70188 BCM_CONTROL(unit)->unit, 70189 cb, 70190 user_data); 70191 } 70192 70193 int 70194 bcm_loop_vlan_translate_add( 70195 int unit, 70196 int port, 70197 bcm_vlan_t old_vid, 70198 bcm_vlan_t new_vid, 70199 int prio) 70200 { 70201 return bcm_vlan_translate_add( 70202 BCM_CONTROL(unit)->unit, 70203 port, 70204 old_vid, 70205 new_vid, 70206 prio); 70207 } 70208 70209 int 70210 bcm_loop_vlan_translate_delete( 70211 int unit, 70212 int port, 70213 bcm_vlan_t old_vid) 70214 { 70215 return bcm_vlan_translate_delete( 70216 BCM_CONTROL(unit)->unit, 70217 port, 70218 old_vid); 70219 } 70220 70221 int 70222 bcm_loop_vlan_translate_delete_all( 70223 int unit) 70224 { 70225 return bcm_vlan_translate_delete_all( 70226 BCM_CONTROL(unit)->unit); 70227 } 70228 70229 int 70230 bcm_loop_vlan_translate_egress_action_add( 70231 int unit, 70232 int port_class, 70233 bcm_vlan_t outer_vlan, 70234 bcm_vlan_t inner_vlan, 70235 bcm_vlan_action_set_t * action) 70236 { 70237 return bcm_vlan_translate_egress_action_add( 70238 BCM_CONTROL(unit)->unit, 70239 port_class, 70240 outer_vlan, 70241 inner_vlan, 70242 action); 70243 } 70244 70245 int 70246 bcm_loop_vlan_translate_egress_action_delete( 70247 int unit, 70248 int port_class, 70249 bcm_vlan_t outer_vlan, 70250 bcm_vlan_t inner_vlan) 70251 { 70252 return bcm_vlan_translate_egress_action_delete( 70253 BCM_CONTROL(unit)->unit, 70254 port_class, 70255 outer_vlan, 70256 inner_vlan); 70257 } 70258 70259 int 70260 bcm_loop_vlan_translate_egress_action_get( 70261 int unit, 70262 int port_class, 70263 bcm_vlan_t outer_vlan, 70264 bcm_vlan_t inner_vlan, 70265 bcm_vlan_action_set_t * action) 70266 { 70267 return bcm_vlan_translate_egress_action_get( 70268 BCM_CONTROL(unit)->unit, 70269 port_class, 70270 outer_vlan, 70271 inner_vlan, 70272 action); 70273 } 70274 70275 int 70276 bcm_loop_vlan_translate_egress_action_traverse( 70277 int unit, 70278 bcm_vlan_translate_egress_action_traverse_cb cb, 70279 void * user_data) 70280 { 70281 return bcm_vlan_translate_egress_action_traverse( 70282 BCM_CONTROL(unit)->unit, 70283 cb, 70284 user_data); 70285 } 70286 70287 int 70288 bcm_loop_vlan_translate_egress_add( 70289 int unit, 70290 int port, 70291 bcm_vlan_t old_vid, 70292 bcm_vlan_t new_vid, 70293 int prio) 70294 { 70295 return bcm_vlan_translate_egress_add( 70296 BCM_CONTROL(unit)->unit, 70297 port, 70298 old_vid, 70299 new_vid, 70300 prio); 70301 } 70302 70303 int 70304 bcm_loop_vlan_translate_egress_delete( 70305 int unit, 70306 int port, 70307 bcm_vlan_t old_vid) 70308 { 70309 return bcm_vlan_translate_egress_delete( 70310 BCM_CONTROL(unit)->unit, 70311 port, 70312 old_vid); 70313 } 70314 70315 int 70316 bcm_loop_vlan_translate_egress_delete_all( 70317 int unit) 70318 { 70319 return bcm_vlan_translate_egress_delete_all( 70320 BCM_CONTROL(unit)->unit); 70321 } 70322 70323 int 70324 bcm_loop_vlan_translate_egress_get( 70325 int unit, 70326 int port, 70327 bcm_vlan_t old_vid, 70328 bcm_vlan_t * new_vid, 70329 int * prio) 70330 { 70331 return bcm_vlan_translate_egress_get( 70332 BCM_CONTROL(unit)->unit, 70333 port, 70334 old_vid, 70335 new_vid, 70336 prio); 70337 } 70338 70339 int 70340 bcm_loop_vlan_translate_egress_gport_action_add( 70341 int unit, 70342 bcm_gport_t port, 70343 bcm_vlan_t outer_vlan, 70344 bcm_vlan_t inner_vlan, 70345 bcm_vlan_action_set_t * action) 70346 { 70347 return bcm_vlan_translate_egress_gport_action_add( 70348 BCM_CONTROL(unit)->unit, 70349 port, 70350 outer_vlan, 70351 inner_vlan, 70352 action); 70353 } 70354 70355 int 70356 bcm_loop_vlan_translate_egress_gport_action_delete( 70357 int unit, 70358 bcm_gport_t port, 70359 bcm_vlan_t outer_vlan, 70360 bcm_vlan_t inner_vlan) 70361 { 70362 return bcm_vlan_translate_egress_gport_action_delete( 70363 BCM_CONTROL(unit)->unit, 70364 port, 70365 outer_vlan, 70366 inner_vlan); 70367 } 70368 70369 int 70370 bcm_loop_vlan_translate_egress_gport_action_get( 70371 int unit, 70372 bcm_gport_t port, 70373 bcm_vlan_t outer_vlan, 70374 bcm_vlan_t inner_vlan, 70375 bcm_vlan_action_set_t * action) 70376 { 70377 return bcm_vlan_translate_egress_gport_action_get( 70378 BCM_CONTROL(unit)->unit, 70379 port, 70380 outer_vlan, 70381 inner_vlan, 70382 action); 70383 } 70384 70385 int 70386 bcm_loop_vlan_translate_egress_stat_attach( 70387 int unit, 70388 int port_class, 70389 bcm_vlan_t outer_vlan, 70390 bcm_vlan_t inner_vlan, 70391 uint32 stat_counter_id) 70392 { 70393 return bcm_vlan_translate_egress_stat_attach( 70394 BCM_CONTROL(unit)->unit, 70395 port_class, 70396 outer_vlan, 70397 inner_vlan, 70398 stat_counter_id); 70399 } 70400 70401 int 70402 bcm_loop_vlan_translate_egress_stat_counter_get( 70403 int unit, 70404 int port_class, 70405 bcm_vlan_t outer_vlan, 70406 bcm_vlan_t inner_vlan, 70407 bcm_vlan_stat_t stat, 70408 uint32 num_entries, 70409 uint32 * counter_indexes, 70410 bcm_stat_value_t * counter_values) 70411 { 70412 return bcm_vlan_translate_egress_stat_counter_get( 70413 BCM_CONTROL(unit)->unit, 70414 port_class, 70415 outer_vlan, 70416 inner_vlan, 70417 stat, 70418 num_entries, 70419 counter_indexes, 70420 counter_values); 70421 } 70422 70423 int 70424 bcm_loop_vlan_translate_egress_stat_counter_set( 70425 int unit, 70426 int port_class, 70427 bcm_vlan_t outer_vlan, 70428 bcm_vlan_t inner_vlan, 70429 bcm_vlan_stat_t stat, 70430 uint32 num_entries, 70431 uint32 * counter_indexes, 70432 bcm_stat_value_t * counter_values) 70433 { 70434 return bcm_vlan_translate_egress_stat_counter_set( 70435 BCM_CONTROL(unit)->unit, 70436 port_class, 70437 outer_vlan, 70438 inner_vlan, 70439 stat, 70440 num_entries, 70441 counter_indexes, 70442 counter_values); 70443 } 70444 70445 int 70446 bcm_loop_vlan_translate_egress_stat_counter_sync_get( 70447 int unit, 70448 int port_class, 70449 bcm_vlan_t outer_vlan, 70450 bcm_vlan_t inner_vlan, 70451 bcm_vlan_stat_t stat, 70452 uint32 num_entries, 70453 uint32 * counter_indexes, 70454 bcm_stat_value_t * counter_values) 70455 { 70456 return bcm_vlan_translate_egress_stat_counter_sync_get( 70457 BCM_CONTROL(unit)->unit, 70458 port_class, 70459 outer_vlan, 70460 inner_vlan, 70461 stat, 70462 num_entries, 70463 counter_indexes, 70464 counter_values); 70465 } 70466 70467 int 70468 bcm_loop_vlan_translate_egress_stat_detach( 70469 int unit, 70470 int port_class, 70471 bcm_vlan_t outer_vlan, 70472 bcm_vlan_t inner_vlan) 70473 { 70474 return bcm_vlan_translate_egress_stat_detach( 70475 BCM_CONTROL(unit)->unit, 70476 port_class, 70477 outer_vlan, 70478 inner_vlan); 70479 } 70480 70481 int 70482 bcm_loop_vlan_translate_egress_stat_enable_set( 70483 int unit, 70484 int port_class, 70485 bcm_vlan_t outer_vlan, 70486 bcm_vlan_t inner_vlan, 70487 int enable) 70488 { 70489 return bcm_vlan_translate_egress_stat_enable_set( 70490 BCM_CONTROL(unit)->unit, 70491 port_class, 70492 outer_vlan, 70493 inner_vlan, 70494 enable); 70495 } 70496 70497 int 70498 bcm_loop_vlan_translate_egress_stat_get( 70499 int unit, 70500 int port_class, 70501 bcm_vlan_t outer_vlan, 70502 bcm_vlan_t inner_vlan, 70503 bcm_vlan_stat_t stat, 70504 uint64 * val) 70505 { 70506 return bcm_vlan_translate_egress_stat_get( 70507 BCM_CONTROL(unit)->unit, 70508 port_class, 70509 outer_vlan, 70510 inner_vlan, 70511 stat, 70512 val); 70513 } 70514 70515 int 70516 bcm_loop_vlan_translate_egress_stat_get32( 70517 int unit, 70518 int port_class, 70519 bcm_vlan_t outer_vlan, 70520 bcm_vlan_t inner_vlan, 70521 bcm_vlan_stat_t stat, 70522 uint32 * val) 70523 { 70524 return bcm_vlan_translate_egress_stat_get32( 70525 BCM_CONTROL(unit)->unit, 70526 port_class, 70527 outer_vlan, 70528 inner_vlan, 70529 stat, 70530 val); 70531 } 70532 70533 int 70534 bcm_loop_vlan_translate_egress_stat_id_get( 70535 int unit, 70536 int port_class, 70537 bcm_vlan_t outer_vlan, 70538 bcm_vlan_t inner_vlan, 70539 bcm_vlan_stat_t stat, 70540 uint32 * stat_counter_id) 70541 { 70542 return bcm_vlan_translate_egress_stat_id_get( 70543 BCM_CONTROL(unit)->unit, 70544 port_class, 70545 outer_vlan, 70546 inner_vlan, 70547 stat, 70548 stat_counter_id); 70549 } 70550 70551 int 70552 bcm_loop_vlan_translate_egress_stat_multi_get( 70553 int unit, 70554 int port_class, 70555 bcm_vlan_t outer_vlan, 70556 bcm_vlan_t inner_vlan, 70557 int nstat, 70558 bcm_vlan_stat_t * stat_arr, 70559 uint64 * value_arr) 70560 { 70561 return bcm_vlan_translate_egress_stat_multi_get( 70562 BCM_CONTROL(unit)->unit, 70563 port_class, 70564 outer_vlan, 70565 inner_vlan, 70566 nstat, 70567 stat_arr, 70568 value_arr); 70569 } 70570 70571 int 70572 bcm_loop_vlan_translate_egress_stat_multi_get32( 70573 int unit, 70574 int port_class, 70575 bcm_vlan_t outer_vlan, 70576 bcm_vlan_t inner_vlan, 70577 int nstat, 70578 bcm_vlan_stat_t * stat_arr, 70579 uint32 * value_arr) 70580 { 70581 return bcm_vlan_translate_egress_stat_multi_get32( 70582 BCM_CONTROL(unit)->unit, 70583 port_class, 70584 outer_vlan, 70585 inner_vlan, 70586 nstat, 70587 stat_arr, 70588 value_arr); 70589 } 70590 70591 int 70592 bcm_loop_vlan_translate_egress_stat_multi_set( 70593 int unit, 70594 int port_class, 70595 bcm_vlan_t outer_vlan, 70596 bcm_vlan_t inner_vlan, 70597 int nstat, 70598 bcm_vlan_stat_t * stat_arr, 70599 uint64 * value_arr) 70600 { 70601 return bcm_vlan_translate_egress_stat_multi_set( 70602 BCM_CONTROL(unit)->unit, 70603 port_class, 70604 outer_vlan, 70605 inner_vlan, 70606 nstat, 70607 stat_arr, 70608 value_arr); 70609 } 70610 70611 int 70612 bcm_loop_vlan_translate_egress_stat_multi_set32( 70613 int unit, 70614 int port_class, 70615 bcm_vlan_t outer_vlan, 70616 bcm_vlan_t inner_vlan, 70617 int nstat, 70618 bcm_vlan_stat_t * stat_arr, 70619 uint32 * value_arr) 70620 { 70621 return bcm_vlan_translate_egress_stat_multi_set32( 70622 BCM_CONTROL(unit)->unit, 70623 port_class, 70624 outer_vlan, 70625 inner_vlan, 70626 nstat, 70627 stat_arr, 70628 value_arr); 70629 } 70630 70631 int 70632 bcm_loop_vlan_translate_egress_stat_set( 70633 int unit, 70634 int port_class, 70635 bcm_vlan_t outer_vlan, 70636 bcm_vlan_t inner_vlan, 70637 bcm_vlan_stat_t stat, 70638 uint64 val) 70639 { 70640 return bcm_vlan_translate_egress_stat_set( 70641 BCM_CONTROL(unit)->unit, 70642 port_class, 70643 outer_vlan, 70644 inner_vlan, 70645 stat, 70646 val); 70647 } 70648 70649 int 70650 bcm_loop_vlan_translate_egress_stat_set32( 70651 int unit, 70652 int port_class, 70653 bcm_vlan_t outer_vlan, 70654 bcm_vlan_t inner_vlan, 70655 bcm_vlan_stat_t stat, 70656 uint32 val) 70657 { 70658 return bcm_vlan_translate_egress_stat_set32( 70659 BCM_CONTROL(unit)->unit, 70660 port_class, 70661 outer_vlan, 70662 inner_vlan, 70663 stat, 70664 val); 70665 } 70666 70667 int 70668 bcm_loop_vlan_translate_egress_stat_sync_get( 70669 int unit, 70670 int port_class, 70671 bcm_vlan_t outer_vlan, 70672 bcm_vlan_t inner_vlan, 70673 bcm_vlan_stat_t stat, 70674 uint64 * val) 70675 { 70676 return bcm_vlan_translate_egress_stat_sync_get( 70677 BCM_CONTROL(unit)->unit, 70678 port_class, 70679 outer_vlan, 70680 inner_vlan, 70681 stat, 70682 val); 70683 } 70684 70685 int 70686 bcm_loop_vlan_translate_egress_stat_sync_get32( 70687 int unit, 70688 int port_class, 70689 bcm_vlan_t outer_vlan, 70690 bcm_vlan_t inner_vlan, 70691 bcm_vlan_stat_t stat, 70692 uint32 * val) 70693 { 70694 return bcm_vlan_translate_egress_stat_sync_get32( 70695 BCM_CONTROL(unit)->unit, 70696 port_class, 70697 outer_vlan, 70698 inner_vlan, 70699 stat, 70700 val); 70701 } 70702 70703 int 70704 bcm_loop_vlan_translate_egress_traverse( 70705 int unit, 70706 bcm_vlan_translate_egress_traverse_cb cb, 70707 void * user_data) 70708 { 70709 return bcm_vlan_translate_egress_traverse( 70710 BCM_CONTROL(unit)->unit, 70711 cb, 70712 user_data); 70713 } 70714 70715 int 70716 bcm_loop_vlan_translate_get( 70717 int unit, 70718 int port, 70719 bcm_vlan_t old_vid, 70720 bcm_vlan_t * new_vid, 70721 int * prio) 70722 { 70723 return bcm_vlan_translate_get( 70724 BCM_CONTROL(unit)->unit, 70725 port, 70726 old_vid, 70727 new_vid, 70728 prio); 70729 } 70730 70731 int 70732 bcm_loop_vlan_translate_range_add( 70733 int unit, 70734 int port, 70735 bcm_vlan_t old_vid_low, 70736 bcm_vlan_t old_vid_high, 70737 bcm_vlan_t new_vid, 70738 int int_prio) 70739 { 70740 return bcm_vlan_translate_range_add( 70741 BCM_CONTROL(unit)->unit, 70742 port, 70743 old_vid_low, 70744 old_vid_high, 70745 new_vid, 70746 int_prio); 70747 } 70748 70749 int 70750 bcm_loop_vlan_translate_range_delete( 70751 int unit, 70752 int port, 70753 bcm_vlan_t old_vid_low, 70754 bcm_vlan_t old_vid_high) 70755 { 70756 return bcm_vlan_translate_range_delete( 70757 BCM_CONTROL(unit)->unit, 70758 port, 70759 old_vid_low, 70760 old_vid_high); 70761 } 70762 70763 int 70764 bcm_loop_vlan_translate_range_delete_all( 70765 int unit) 70766 { 70767 return bcm_vlan_translate_range_delete_all( 70768 BCM_CONTROL(unit)->unit); 70769 } 70770 70771 int 70772 bcm_loop_vlan_translate_range_get( 70773 int unit, 70774 int port, 70775 bcm_vlan_t old_vid_low, 70776 bcm_vlan_t old_vid_high, 70777 bcm_vlan_t * new_vid, 70778 int * int_prio) 70779 { 70780 return bcm_vlan_translate_range_get( 70781 BCM_CONTROL(unit)->unit, 70782 port, 70783 old_vid_low, 70784 old_vid_high, 70785 new_vid, 70786 int_prio); 70787 } 70788 70789 int 70790 bcm_loop_vlan_translate_range_traverse( 70791 int unit, 70792 bcm_vlan_translate_range_traverse_cb cb, 70793 void * user_data) 70794 { 70795 return bcm_vlan_translate_range_traverse( 70796 BCM_CONTROL(unit)->unit, 70797 cb, 70798 user_data); 70799 } 70800 70801 int 70802 bcm_loop_vlan_translate_stat_attach( 70803 int unit, 70804 bcm_gport_t port, 70805 bcm_vlan_translate_key_t key_type, 70806 bcm_vlan_t outer_vlan, 70807 bcm_vlan_t inner_vlan, 70808 uint32 stat_counter_id) 70809 { 70810 return bcm_vlan_translate_stat_attach( 70811 BCM_CONTROL(unit)->unit, 70812 port, 70813 key_type, 70814 outer_vlan, 70815 inner_vlan, 70816 stat_counter_id); 70817 } 70818 70819 int 70820 bcm_loop_vlan_translate_stat_counter_get( 70821 int unit, 70822 bcm_gport_t port, 70823 bcm_vlan_translate_key_t key_type, 70824 bcm_vlan_t outer_vlan, 70825 bcm_vlan_t inner_vlan, 70826 bcm_vlan_stat_t stat, 70827 uint32 num_entries, 70828 uint32 * counter_indexes, 70829 bcm_stat_value_t * counter_values) 70830 { 70831 return bcm_vlan_translate_stat_counter_get( 70832 BCM_CONTROL(unit)->unit, 70833 port, 70834 key_type, 70835 outer_vlan, 70836 inner_vlan, 70837 stat, 70838 num_entries, 70839 counter_indexes, 70840 counter_values); 70841 } 70842 70843 int 70844 bcm_loop_vlan_translate_stat_counter_set( 70845 int unit, 70846 bcm_gport_t port, 70847 bcm_vlan_translate_key_t key_type, 70848 bcm_vlan_t outer_vlan, 70849 bcm_vlan_t inner_vlan, 70850 bcm_vlan_stat_t stat, 70851 uint32 num_entries, 70852 uint32 * counter_indexes, 70853 bcm_stat_value_t * counter_values) 70854 { 70855 return bcm_vlan_translate_stat_counter_set( 70856 BCM_CONTROL(unit)->unit, 70857 port, 70858 key_type, 70859 outer_vlan, 70860 inner_vlan, 70861 stat, 70862 num_entries, 70863 counter_indexes, 70864 counter_values); 70865 } 70866 70867 int 70868 bcm_loop_vlan_translate_stat_counter_sync_get( 70869 int unit, 70870 bcm_gport_t port, 70871 bcm_vlan_translate_key_t key_type, 70872 bcm_vlan_t outer_vlan, 70873 bcm_vlan_t inner_vlan, 70874 bcm_vlan_stat_t stat, 70875 uint32 num_entries, 70876 uint32 * counter_indexes, 70877 bcm_stat_value_t * counter_values) 70878 { 70879 return bcm_vlan_translate_stat_counter_sync_get( 70880 BCM_CONTROL(unit)->unit, 70881 port, 70882 key_type, 70883 outer_vlan, 70884 inner_vlan, 70885 stat, 70886 num_entries, 70887 counter_indexes, 70888 counter_values); 70889 } 70890 70891 int 70892 bcm_loop_vlan_translate_stat_detach( 70893 int unit, 70894 bcm_gport_t port, 70895 bcm_vlan_translate_key_t key_type, 70896 bcm_vlan_t outer_vlan, 70897 bcm_vlan_t inner_vlan) 70898 { 70899 return bcm_vlan_translate_stat_detach( 70900 BCM_CONTROL(unit)->unit, 70901 port, 70902 key_type, 70903 outer_vlan, 70904 inner_vlan); 70905 } 70906 70907 int 70908 bcm_loop_vlan_translate_stat_enable_set( 70909 int unit, 70910 bcm_gport_t port, 70911 bcm_vlan_translate_key_t key_type, 70912 bcm_vlan_t outer_vlan, 70913 bcm_vlan_t inner_vlan, 70914 int enable) 70915 { 70916 return bcm_vlan_translate_stat_enable_set( 70917 BCM_CONTROL(unit)->unit, 70918 port, 70919 key_type, 70920 outer_vlan, 70921 inner_vlan, 70922 enable); 70923 } 70924 70925 int 70926 bcm_loop_vlan_translate_stat_get( 70927 int unit, 70928 bcm_gport_t port, 70929 bcm_vlan_translate_key_t key_type, 70930 bcm_vlan_t outer_vlan, 70931 bcm_vlan_t inner_vlan, 70932 bcm_vlan_stat_t stat, 70933 uint64 * val) 70934 { 70935 return bcm_vlan_translate_stat_get( 70936 BCM_CONTROL(unit)->unit, 70937 port, 70938 key_type, 70939 outer_vlan, 70940 inner_vlan, 70941 stat, 70942 val); 70943 } 70944 70945 int 70946 bcm_loop_vlan_translate_stat_get32( 70947 int unit, 70948 bcm_gport_t port, 70949 bcm_vlan_translate_key_t key_type, 70950 bcm_vlan_t outer_vlan, 70951 bcm_vlan_t inner_vlan, 70952 bcm_vlan_stat_t stat, 70953 uint32 * val) 70954 { 70955 return bcm_vlan_translate_stat_get32( 70956 BCM_CONTROL(unit)->unit, 70957 port, 70958 key_type, 70959 outer_vlan, 70960 inner_vlan, 70961 stat, 70962 val); 70963 } 70964 70965 int 70966 bcm_loop_vlan_translate_stat_id_get( 70967 int unit, 70968 bcm_gport_t port, 70969 bcm_vlan_translate_key_t key_type, 70970 bcm_vlan_t outer_vlan, 70971 bcm_vlan_t inner_vlan, 70972 bcm_vlan_stat_t stat, 70973 uint32 * stat_counter_id) 70974 { 70975 return bcm_vlan_translate_stat_id_get( 70976 BCM_CONTROL(unit)->unit, 70977 port, 70978 key_type, 70979 outer_vlan, 70980 inner_vlan, 70981 stat, 70982 stat_counter_id); 70983 } 70984 70985 int 70986 bcm_loop_vlan_translate_stat_multi_get( 70987 int unit, 70988 bcm_gport_t port, 70989 bcm_vlan_translate_key_t key_type, 70990 bcm_vlan_t outer_vlan, 70991 bcm_vlan_t inner_vlan, 70992 int nstat, 70993 bcm_vlan_stat_t * stat_arr, 70994 uint64 * value_arr) 70995 { 70996 return bcm_vlan_translate_stat_multi_get( 70997 BCM_CONTROL(unit)->unit, 70998 port, 70999 key_type, 71000 outer_vlan, 71001 inner_vlan, 71002 nstat, 71003 stat_arr, 71004 value_arr); 71005 } 71006 71007 int 71008 bcm_loop_vlan_translate_stat_multi_get32( 71009 int unit, 71010 bcm_gport_t port, 71011 bcm_vlan_translate_key_t key_type, 71012 bcm_vlan_t outer_vlan, 71013 bcm_vlan_t inner_vlan, 71014 int nstat, 71015 bcm_vlan_stat_t * stat_arr, 71016 uint32 * value_arr) 71017 { 71018 return bcm_vlan_translate_stat_multi_get32( 71019 BCM_CONTROL(unit)->unit, 71020 port, 71021 key_type, 71022 outer_vlan, 71023 inner_vlan, 71024 nstat, 71025 stat_arr, 71026 value_arr); 71027 } 71028 71029 int 71030 bcm_loop_vlan_translate_stat_multi_set( 71031 int unit, 71032 bcm_gport_t port, 71033 bcm_vlan_translate_key_t key_type, 71034 bcm_vlan_t outer_vlan, 71035 bcm_vlan_t inner_vlan, 71036 int nstat, 71037 bcm_vlan_stat_t * stat_arr, 71038 uint64 * value_arr) 71039 { 71040 return bcm_vlan_translate_stat_multi_set( 71041 BCM_CONTROL(unit)->unit, 71042 port, 71043 key_type, 71044 outer_vlan, 71045 inner_vlan, 71046 nstat, 71047 stat_arr, 71048 value_arr); 71049 } 71050 71051 int 71052 bcm_loop_vlan_translate_stat_multi_set32( 71053 int unit, 71054 bcm_gport_t port, 71055 bcm_vlan_translate_key_t key_type, 71056 bcm_vlan_t outer_vlan, 71057 bcm_vlan_t inner_vlan, 71058 int nstat, 71059 bcm_vlan_stat_t * stat_arr, 71060 uint32 * value_arr) 71061 { 71062 return bcm_vlan_translate_stat_multi_set32( 71063 BCM_CONTROL(unit)->unit, 71064 port, 71065 key_type, 71066 outer_vlan, 71067 inner_vlan, 71068 nstat, 71069 stat_arr, 71070 value_arr); 71071 } 71072 71073 int 71074 bcm_loop_vlan_translate_stat_set( 71075 int unit, 71076 bcm_gport_t port, 71077 bcm_vlan_translate_key_t key_type, 71078 bcm_vlan_t outer_vlan, 71079 bcm_vlan_t inner_vlan, 71080 bcm_vlan_stat_t stat, 71081 uint64 val) 71082 { 71083 return bcm_vlan_translate_stat_set( 71084 BCM_CONTROL(unit)->unit, 71085 port, 71086 key_type, 71087 outer_vlan, 71088 inner_vlan, 71089 stat, 71090 val); 71091 } 71092 71093 int 71094 bcm_loop_vlan_translate_stat_set32( 71095 int unit, 71096 bcm_gport_t port, 71097 bcm_vlan_translate_key_t key_type, 71098 bcm_vlan_t outer_vlan, 71099 bcm_vlan_t inner_vlan, 71100 bcm_vlan_stat_t stat, 71101 uint32 val) 71102 { 71103 return bcm_vlan_translate_stat_set32( 71104 BCM_CONTROL(unit)->unit, 71105 port, 71106 key_type, 71107 outer_vlan, 71108 inner_vlan, 71109 stat, 71110 val); 71111 } 71112 71113 int 71114 bcm_loop_vlan_translate_stat_sync_get( 71115 int unit, 71116 bcm_gport_t port, 71117 bcm_vlan_translate_key_t key_type, 71118 bcm_vlan_t outer_vlan, 71119 bcm_vlan_t inner_vlan, 71120 bcm_vlan_stat_t stat, 71121 uint64 * val) 71122 { 71123 return bcm_vlan_translate_stat_sync_get( 71124 BCM_CONTROL(unit)->unit, 71125 port, 71126 key_type, 71127 outer_vlan, 71128 inner_vlan, 71129 stat, 71130 val); 71131 } 71132 71133 int 71134 bcm_loop_vlan_translate_stat_sync_get32( 71135 int unit, 71136 bcm_gport_t port, 71137 bcm_vlan_translate_key_t key_type, 71138 bcm_vlan_t outer_vlan, 71139 bcm_vlan_t inner_vlan, 71140 bcm_vlan_stat_t stat, 71141 uint32 * val) 71142 { 71143 return bcm_vlan_translate_stat_sync_get32( 71144 BCM_CONTROL(unit)->unit, 71145 port, 71146 key_type, 71147 outer_vlan, 71148 inner_vlan, 71149 stat, 71150 val); 71151 } 71152 71153 int 71154 bcm_loop_vlan_translate_traverse( 71155 int unit, 71156 bcm_vlan_translate_traverse_cb cb, 71157 void * user_data) 71158 { 71159 return bcm_vlan_translate_traverse( 71160 BCM_CONTROL(unit)->unit, 71161 cb, 71162 user_data); 71163 } 71164 71165 int 71166 bcm_loop_vlan_vector_flags_set( 71167 int unit, 71168 bcm_vlan_vector_t vlan_vector, 71169 uint32 flags_mask, 71170 uint32 flags_value) 71171 { 71172 return bcm_vlan_vector_flags_set( 71173 BCM_CONTROL(unit)->unit, 71174 vlan_vector, 71175 flags_mask, 71176 flags_value); 71177 } 71178 71179 int 71180 bcm_loop_vlan_vector_stp_set( 71181 int unit, 71182 bcm_vlan_vector_t vlan_vector, 71183 bcm_port_t port, 71184 int stp_state) 71185 { 71186 return bcm_vlan_vector_stp_set( 71187 BCM_CONTROL(unit)->unit, 71188 vlan_vector, 71189 port, 71190 stp_state); 71191 } 71192 71193 /* bcm_vlan_vpn_config_t_init not dispatchable */ 71194 71195 #ifdef INCLUDE_L3 71196 71197 int 71198 bcm_loop_vlan_vpn_create( 71199 int unit, 71200 bcm_vlan_vpn_config_t * info) 71201 { 71202 return bcm_vlan_vpn_create( 71203 BCM_CONTROL(unit)->unit, 71204 info); 71205 } 71206 71207 int 71208 bcm_loop_vlan_vpn_destroy( 71209 int unit, 71210 bcm_vpn_t vpn) 71211 { 71212 return bcm_vlan_vpn_destroy( 71213 BCM_CONTROL(unit)->unit, 71214 vpn); 71215 } 71216 71217 int 71218 bcm_loop_vlan_vpn_destroy_all( 71219 int unit) 71220 { 71221 return bcm_vlan_vpn_destroy_all( 71222 BCM_CONTROL(unit)->unit); 71223 } 71224 71225 int 71226 bcm_loop_vlan_vpn_get( 71227 int unit, 71228 bcm_vpn_t vpn, 71229 bcm_vlan_vpn_config_t * info) 71230 { 71231 return bcm_vlan_vpn_get( 71232 BCM_CONTROL(unit)->unit, 71233 vpn, 71234 info); 71235 } 71236 71237 int 71238 bcm_loop_vlan_vpn_traverse( 71239 int unit, 71240 bcm_vlan_vpn_traverse_cb cb, 71241 void * user_data) 71242 { 71243 return bcm_vlan_vpn_traverse( 71244 BCM_CONTROL(unit)->unit, 71245 cb, 71246 user_data); 71247 } 71248 71249 #endif /* INCLUDE_L3 */ 71250 71251 int 71252 bcm_loop_vswitch_create( 71253 int unit, 71254 bcm_vlan_t * vsi) 71255 { 71256 return bcm_vswitch_create( 71257 BCM_CONTROL(unit)->unit, 71258 vsi); 71259 } 71260 71261 int 71262 bcm_loop_vswitch_create_with_id( 71263 int unit, 71264 bcm_vlan_t vsi) 71265 { 71266 return bcm_vswitch_create_with_id( 71267 BCM_CONTROL(unit)->unit, 71268 vsi); 71269 } 71270 71271 int 71272 bcm_loop_vswitch_cross_connect_add( 71273 int unit, 71274 bcm_vswitch_cross_connect_t * gports) 71275 { 71276 return bcm_vswitch_cross_connect_add( 71277 BCM_CONTROL(unit)->unit, 71278 gports); 71279 } 71280 71281 int 71282 bcm_loop_vswitch_cross_connect_delete( 71283 int unit, 71284 bcm_vswitch_cross_connect_t * gports) 71285 { 71286 return bcm_vswitch_cross_connect_delete( 71287 BCM_CONTROL(unit)->unit, 71288 gports); 71289 } 71290 71291 int 71292 bcm_loop_vswitch_cross_connect_delete_all( 71293 int unit) 71294 { 71295 return bcm_vswitch_cross_connect_delete_all( 71296 BCM_CONTROL(unit)->unit); 71297 } 71298 71299 int 71300 bcm_loop_vswitch_cross_connect_get( 71301 int unit, 71302 bcm_vswitch_cross_connect_t * gports) 71303 { 71304 return bcm_vswitch_cross_connect_get( 71305 BCM_CONTROL(unit)->unit, 71306 gports); 71307 } 71308 71309 /* bcm_vswitch_cross_connect_t_init not dispatchable */ 71310 71311 int 71312 bcm_loop_vswitch_cross_connect_traverse( 71313 int unit, 71314 bcm_vswitch_cross_connect_traverse_cb cb, 71315 void * user_data) 71316 { 71317 return bcm_vswitch_cross_connect_traverse( 71318 BCM_CONTROL(unit)->unit, 71319 cb, 71320 user_data); 71321 } 71322 71323 int 71324 bcm_loop_vswitch_destroy( 71325 int unit, 71326 bcm_vlan_t vsi) 71327 { 71328 return bcm_vswitch_destroy( 71329 BCM_CONTROL(unit)->unit, 71330 vsi); 71331 } 71332 71333 int 71334 bcm_loop_vswitch_destroy_all( 71335 int unit) 71336 { 71337 return bcm_vswitch_destroy_all( 71338 BCM_CONTROL(unit)->unit); 71339 } 71340 71341 int 71342 bcm_loop_vswitch_detach( 71343 int unit) 71344 { 71345 return bcm_vswitch_detach( 71346 BCM_CONTROL(unit)->unit); 71347 } 71348 71349 int 71350 bcm_loop_vswitch_flexible_connect_add( 71351 int unit, 71352 uint32 flags, 71353 bcm_vswitch_flexible_connect_match_t * port_match, 71354 bcm_vswitch_flexible_connect_fwd_t * port_fwd) 71355 { 71356 return bcm_vswitch_flexible_connect_add( 71357 BCM_CONTROL(unit)->unit, 71358 flags, 71359 port_match, 71360 port_fwd); 71361 } 71362 71363 int 71364 bcm_loop_vswitch_flexible_connect_delete( 71365 int unit, 71366 bcm_vswitch_flexible_connect_match_t * port_match) 71367 { 71368 return bcm_vswitch_flexible_connect_delete( 71369 BCM_CONTROL(unit)->unit, 71370 port_match); 71371 } 71372 71373 /* bcm_vswitch_flexible_connect_fwd_t_init not dispatchable */ 71374 71375 int 71376 bcm_loop_vswitch_flexible_connect_get( 71377 int unit, 71378 uint32 flags, 71379 bcm_vswitch_flexible_connect_match_t * port_match, 71380 bcm_vswitch_flexible_connect_fwd_t * port_fwd) 71381 { 71382 return bcm_vswitch_flexible_connect_get( 71383 BCM_CONTROL(unit)->unit, 71384 flags, 71385 port_match, 71386 port_fwd); 71387 } 71388 71389 /* bcm_vswitch_flexible_connect_match_t_init not dispatchable */ 71390 71391 int 71392 bcm_loop_vswitch_init( 71393 int unit) 71394 { 71395 return bcm_vswitch_init( 71396 BCM_CONTROL(unit)->unit); 71397 } 71398 71399 int 71400 bcm_loop_vswitch_port_add( 71401 int unit, 71402 bcm_vlan_t vsi, 71403 bcm_gport_t port) 71404 { 71405 return bcm_vswitch_port_add( 71406 BCM_CONTROL(unit)->unit, 71407 vsi, 71408 port); 71409 } 71410 71411 int 71412 bcm_loop_vswitch_port_delete( 71413 int unit, 71414 bcm_vlan_t vsi, 71415 bcm_gport_t port) 71416 { 71417 return bcm_vswitch_port_delete( 71418 BCM_CONTROL(unit)->unit, 71419 vsi, 71420 port); 71421 } 71422 71423 int 71424 bcm_loop_vswitch_port_delete_all( 71425 int unit, 71426 bcm_vlan_t vsi) 71427 { 71428 return bcm_vswitch_port_delete_all( 71429 BCM_CONTROL(unit)->unit, 71430 vsi); 71431 } 71432 71433 int 71434 bcm_loop_vswitch_port_get( 71435 int unit, 71436 bcm_gport_t port, 71437 bcm_vlan_t * vsi) 71438 { 71439 return bcm_vswitch_port_get( 71440 BCM_CONTROL(unit)->unit, 71441 port, 71442 vsi); 71443 } 71444 71445 int 71446 bcm_loop_vswitch_port_traverse( 71447 int unit, 71448 bcm_vlan_t vsi, 71449 bcm_vswitch_port_traverse_cb cb, 71450 void * user_data) 71451 { 71452 return bcm_vswitch_port_traverse( 71453 BCM_CONTROL(unit)->unit, 71454 vsi, 71455 cb, 71456 user_data); 71457 } 71458 71459 #ifdef INCLUDE_L3 71460 71461 int 71462 bcm_loop_vxlan_cleanup( 71463 int unit) 71464 { 71465 return bcm_vxlan_cleanup( 71466 BCM_CONTROL(unit)->unit); 71467 } 71468 71469 int 71470 bcm_loop_vxlan_dip_stat_attach( 71471 int unit, 71472 bcm_ip_t vxlan_dip, 71473 uint32 stat_counter_id) 71474 { 71475 return bcm_vxlan_dip_stat_attach( 71476 BCM_CONTROL(unit)->unit, 71477 vxlan_dip, 71478 stat_counter_id); 71479 } 71480 71481 int 71482 bcm_loop_vxlan_dip_stat_counter_get( 71483 int unit, 71484 bcm_ip_t vxlan_dip, 71485 bcm_vxlan_dip_stat_t stat, 71486 uint32 num_entries, 71487 uint32 * counter_indexes, 71488 bcm_stat_value_t * counter_values) 71489 { 71490 return bcm_vxlan_dip_stat_counter_get( 71491 BCM_CONTROL(unit)->unit, 71492 vxlan_dip, 71493 stat, 71494 num_entries, 71495 counter_indexes, 71496 counter_values); 71497 } 71498 71499 int 71500 bcm_loop_vxlan_dip_stat_counter_set( 71501 int unit, 71502 bcm_ip_t vxlan_dip, 71503 bcm_vxlan_dip_stat_t stat, 71504 uint32 num_entries, 71505 uint32 * counter_indexes, 71506 bcm_stat_value_t * counter_values) 71507 { 71508 return bcm_vxlan_dip_stat_counter_set( 71509 BCM_CONTROL(unit)->unit, 71510 vxlan_dip, 71511 stat, 71512 num_entries, 71513 counter_indexes, 71514 counter_values); 71515 } 71516 71517 int 71518 bcm_loop_vxlan_dip_stat_detach( 71519 int unit, 71520 bcm_ip_t vxlan_dip) 71521 { 71522 return bcm_vxlan_dip_stat_detach( 71523 BCM_CONTROL(unit)->unit, 71524 vxlan_dip); 71525 } 71526 71527 int 71528 bcm_loop_vxlan_dip_stat_id_get( 71529 int unit, 71530 bcm_ip_t vxlan_dip, 71531 bcm_vxlan_dip_stat_t stat, 71532 uint32 * stat_counter_id) 71533 { 71534 return bcm_vxlan_dip_stat_id_get( 71535 BCM_CONTROL(unit)->unit, 71536 vxlan_dip, 71537 stat, 71538 stat_counter_id); 71539 } 71540 71541 int 71542 bcm_loop_vxlan_dip_stat_multi_get( 71543 int unit, 71544 bcm_ip_t vxlan_dip, 71545 int nstat, 71546 bcm_vxlan_dip_stat_t * stat_arr, 71547 uint64 * value_arr) 71548 { 71549 return bcm_vxlan_dip_stat_multi_get( 71550 BCM_CONTROL(unit)->unit, 71551 vxlan_dip, 71552 nstat, 71553 stat_arr, 71554 value_arr); 71555 } 71556 71557 int 71558 bcm_loop_vxlan_dip_stat_multi_get32( 71559 int unit, 71560 bcm_ip_t vxlan_dip, 71561 int nstat, 71562 bcm_vxlan_dip_stat_t * stat_arr, 71563 uint32 * value_arr) 71564 { 71565 return bcm_vxlan_dip_stat_multi_get32( 71566 BCM_CONTROL(unit)->unit, 71567 vxlan_dip, 71568 nstat, 71569 stat_arr, 71570 value_arr); 71571 } 71572 71573 int 71574 bcm_loop_vxlan_dip_stat_multi_set( 71575 int unit, 71576 bcm_ip_t vxlan_dip, 71577 int nstat, 71578 bcm_vxlan_dip_stat_t * stat_arr, 71579 uint64 * value_arr) 71580 { 71581 return bcm_vxlan_dip_stat_multi_set( 71582 BCM_CONTROL(unit)->unit, 71583 vxlan_dip, 71584 nstat, 71585 stat_arr, 71586 value_arr); 71587 } 71588 71589 int 71590 bcm_loop_vxlan_dip_stat_multi_set32( 71591 int unit, 71592 bcm_ip_t vxlan_dip, 71593 int nstat, 71594 bcm_vxlan_dip_stat_t * stat_arr, 71595 uint32 * value_arr) 71596 { 71597 return bcm_vxlan_dip_stat_multi_set32( 71598 BCM_CONTROL(unit)->unit, 71599 vxlan_dip, 71600 nstat, 71601 stat_arr, 71602 value_arr); 71603 } 71604 71605 int 71606 bcm_loop_vxlan_init( 71607 int unit) 71608 { 71609 return bcm_vxlan_init( 71610 BCM_CONTROL(unit)->unit); 71611 } 71612 71613 int 71614 bcm_loop_vxlan_network_domain_config_add( 71615 int unit, 71616 bcm_vxlan_network_domain_config_t * config) 71617 { 71618 return bcm_vxlan_network_domain_config_add( 71619 BCM_CONTROL(unit)->unit, 71620 config); 71621 } 71622 71623 int 71624 bcm_loop_vxlan_network_domain_config_get( 71625 int unit, 71626 bcm_vxlan_network_domain_config_t * config) 71627 { 71628 return bcm_vxlan_network_domain_config_get( 71629 BCM_CONTROL(unit)->unit, 71630 config); 71631 } 71632 71633 int 71634 bcm_loop_vxlan_network_domain_config_remove( 71635 int unit, 71636 bcm_vxlan_network_domain_config_t * config) 71637 { 71638 return bcm_vxlan_network_domain_config_remove( 71639 BCM_CONTROL(unit)->unit, 71640 config); 71641 } 71642 71643 /* bcm_vxlan_network_domain_config_t_init not dispatchable */ 71644 71645 int 71646 bcm_loop_vxlan_network_domain_config_traverse( 71647 int unit, 71648 bcm_vxlan_network_domain_config_additional_info_t * additional_info, 71649 bcm_vxlan_network_domain_config_traverse_cb cb, 71650 void * user_data) 71651 { 71652 return bcm_vxlan_network_domain_config_traverse( 71653 BCM_CONTROL(unit)->unit, 71654 additional_info, 71655 cb, 71656 user_data); 71657 } 71658 71659 int 71660 bcm_loop_vxlan_port_add( 71661 int unit, 71662 bcm_vpn_t l2vpn, 71663 bcm_vxlan_port_t * vxlan_port) 71664 { 71665 return bcm_vxlan_port_add( 71666 BCM_CONTROL(unit)->unit, 71667 l2vpn, 71668 vxlan_port); 71669 } 71670 71671 int 71672 bcm_loop_vxlan_port_delete( 71673 int unit, 71674 bcm_vpn_t l2vpn, 71675 bcm_gport_t vxlan_port_id) 71676 { 71677 return bcm_vxlan_port_delete( 71678 BCM_CONTROL(unit)->unit, 71679 l2vpn, 71680 vxlan_port_id); 71681 } 71682 71683 int 71684 bcm_loop_vxlan_port_delete_all( 71685 int unit, 71686 bcm_vpn_t l2vpn) 71687 { 71688 return bcm_vxlan_port_delete_all( 71689 BCM_CONTROL(unit)->unit, 71690 l2vpn); 71691 } 71692 71693 int 71694 bcm_loop_vxlan_port_get( 71695 int unit, 71696 bcm_vpn_t l2vpn, 71697 bcm_vxlan_port_t * vxlan_port) 71698 { 71699 return bcm_vxlan_port_get( 71700 BCM_CONTROL(unit)->unit, 71701 l2vpn, 71702 vxlan_port); 71703 } 71704 71705 int 71706 bcm_loop_vxlan_port_get_all( 71707 int unit, 71708 bcm_vpn_t l2vpn, 71709 int port_max, 71710 bcm_vxlan_port_t * port_array, 71711 int * port_count) 71712 { 71713 return bcm_vxlan_port_get_all( 71714 BCM_CONTROL(unit)->unit, 71715 l2vpn, 71716 port_max, 71717 port_array, 71718 port_count); 71719 } 71720 71721 /* bcm_vxlan_port_t_init not dispatchable */ 71722 71723 int 71724 bcm_loop_vxlan_port_traverse( 71725 int unit, 71726 bcm_vxlan_port_traverse_cb cb, 71727 void * user_data) 71728 { 71729 return bcm_vxlan_port_traverse( 71730 BCM_CONTROL(unit)->unit, 71731 cb, 71732 user_data); 71733 } 71734 71735 int 71736 bcm_loop_vxlan_stat_attach( 71737 int unit, 71738 bcm_gport_t port, 71739 bcm_vpn_t vpn, 71740 uint32 stat_counter_id) 71741 { 71742 return bcm_vxlan_stat_attach( 71743 BCM_CONTROL(unit)->unit, 71744 port, 71745 vpn, 71746 stat_counter_id); 71747 } 71748 71749 int 71750 bcm_loop_vxlan_stat_counter_get( 71751 int unit, 71752 bcm_gport_t port, 71753 bcm_vpn_t vpn, 71754 bcm_vxlan_stat_t stat, 71755 uint32 num_entries, 71756 uint32 * counter_indexes, 71757 bcm_stat_value_t * counter_values) 71758 { 71759 return bcm_vxlan_stat_counter_get( 71760 BCM_CONTROL(unit)->unit, 71761 port, 71762 vpn, 71763 stat, 71764 num_entries, 71765 counter_indexes, 71766 counter_values); 71767 } 71768 71769 int 71770 bcm_loop_vxlan_stat_counter_set( 71771 int unit, 71772 bcm_gport_t port, 71773 bcm_vpn_t vpn, 71774 bcm_vxlan_stat_t stat, 71775 uint32 num_entries, 71776 uint32 * counter_indexes, 71777 bcm_stat_value_t * counter_values) 71778 { 71779 return bcm_vxlan_stat_counter_set( 71780 BCM_CONTROL(unit)->unit, 71781 port, 71782 vpn, 71783 stat, 71784 num_entries, 71785 counter_indexes, 71786 counter_values); 71787 } 71788 71789 int 71790 bcm_loop_vxlan_stat_counter_sync_get( 71791 int unit, 71792 bcm_gport_t port, 71793 bcm_vpn_t vpn, 71794 bcm_vxlan_stat_t stat, 71795 uint32 num_entries, 71796 uint32 * counter_indexes, 71797 bcm_stat_value_t * counter_values) 71798 { 71799 return bcm_vxlan_stat_counter_sync_get( 71800 BCM_CONTROL(unit)->unit, 71801 port, 71802 vpn, 71803 stat, 71804 num_entries, 71805 counter_indexes, 71806 counter_values); 71807 } 71808 71809 int 71810 bcm_loop_vxlan_stat_detach( 71811 int unit, 71812 bcm_gport_t port, 71813 bcm_vpn_t vpn) 71814 { 71815 return bcm_vxlan_stat_detach( 71816 BCM_CONTROL(unit)->unit, 71817 port, 71818 vpn); 71819 } 71820 71821 int 71822 bcm_loop_vxlan_stat_enable_set( 71823 int unit, 71824 bcm_gport_t port, 71825 bcm_vpn_t vpn, 71826 int enable) 71827 { 71828 return bcm_vxlan_stat_enable_set( 71829 BCM_CONTROL(unit)->unit, 71830 port, 71831 vpn, 71832 enable); 71833 } 71834 71835 int 71836 bcm_loop_vxlan_stat_id_get( 71837 int unit, 71838 bcm_gport_t port, 71839 bcm_vpn_t vpn, 71840 bcm_vxlan_stat_t stat, 71841 uint32 * stat_counter_id) 71842 { 71843 return bcm_vxlan_stat_id_get( 71844 BCM_CONTROL(unit)->unit, 71845 port, 71846 vpn, 71847 stat, 71848 stat_counter_id); 71849 } 71850 71851 int 71852 bcm_loop_vxlan_stat_multi_get( 71853 int unit, 71854 bcm_gport_t port, 71855 bcm_vpn_t vpn, 71856 int nstat, 71857 bcm_vxlan_stat_t * stat_arr, 71858 uint64 * value_arr) 71859 { 71860 return bcm_vxlan_stat_multi_get( 71861 BCM_CONTROL(unit)->unit, 71862 port, 71863 vpn, 71864 nstat, 71865 stat_arr, 71866 value_arr); 71867 } 71868 71869 int 71870 bcm_loop_vxlan_stat_multi_get32( 71871 int unit, 71872 bcm_gport_t port, 71873 bcm_vpn_t vpn, 71874 int nstat, 71875 bcm_vxlan_stat_t * stat_arr, 71876 uint32 * value_arr) 71877 { 71878 return bcm_vxlan_stat_multi_get32( 71879 BCM_CONTROL(unit)->unit, 71880 port, 71881 vpn, 71882 nstat, 71883 stat_arr, 71884 value_arr); 71885 } 71886 71887 int 71888 bcm_loop_vxlan_stat_multi_set( 71889 int unit, 71890 bcm_gport_t port, 71891 bcm_vpn_t vpn, 71892 int nstat, 71893 bcm_vxlan_stat_t * stat_arr, 71894 uint64 * value_arr) 71895 { 71896 return bcm_vxlan_stat_multi_set( 71897 BCM_CONTROL(unit)->unit, 71898 port, 71899 vpn, 71900 nstat, 71901 stat_arr, 71902 value_arr); 71903 } 71904 71905 int 71906 bcm_loop_vxlan_stat_multi_set32( 71907 int unit, 71908 bcm_gport_t port, 71909 bcm_vpn_t vpn, 71910 int nstat, 71911 bcm_vxlan_stat_t * stat_arr, 71912 uint32 * value_arr) 71913 { 71914 return bcm_vxlan_stat_multi_set32( 71915 BCM_CONTROL(unit)->unit, 71916 port, 71917 vpn, 71918 nstat, 71919 stat_arr, 71920 value_arr); 71921 } 71922 71923 int 71924 bcm_loop_vxlan_tunnel_initiator_create( 71925 int unit, 71926 bcm_tunnel_initiator_t * info) 71927 { 71928 return bcm_vxlan_tunnel_initiator_create( 71929 BCM_CONTROL(unit)->unit, 71930 info); 71931 } 71932 71933 int 71934 bcm_loop_vxlan_tunnel_initiator_destroy( 71935 int unit, 71936 bcm_gport_t vxlan_tunnel_id) 71937 { 71938 return bcm_vxlan_tunnel_initiator_destroy( 71939 BCM_CONTROL(unit)->unit, 71940 vxlan_tunnel_id); 71941 } 71942 71943 int 71944 bcm_loop_vxlan_tunnel_initiator_destroy_all( 71945 int unit) 71946 { 71947 return bcm_vxlan_tunnel_initiator_destroy_all( 71948 BCM_CONTROL(unit)->unit); 71949 } 71950 71951 int 71952 bcm_loop_vxlan_tunnel_initiator_get( 71953 int unit, 71954 bcm_tunnel_initiator_t * info) 71955 { 71956 return bcm_vxlan_tunnel_initiator_get( 71957 BCM_CONTROL(unit)->unit, 71958 info); 71959 } 71960 71961 int 71962 bcm_loop_vxlan_tunnel_initiator_traverse( 71963 int unit, 71964 bcm_tunnel_initiator_traverse_cb cb, 71965 void * user_data) 71966 { 71967 return bcm_vxlan_tunnel_initiator_traverse( 71968 BCM_CONTROL(unit)->unit, 71969 cb, 71970 user_data); 71971 } 71972 71973 int 71974 bcm_loop_vxlan_tunnel_terminator_create( 71975 int unit, 71976 bcm_tunnel_terminator_t * info) 71977 { 71978 return bcm_vxlan_tunnel_terminator_create( 71979 BCM_CONTROL(unit)->unit, 71980 info); 71981 } 71982 71983 int 71984 bcm_loop_vxlan_tunnel_terminator_destroy( 71985 int unit, 71986 bcm_gport_t vxlan_tunnel_id) 71987 { 71988 return bcm_vxlan_tunnel_terminator_destroy( 71989 BCM_CONTROL(unit)->unit, 71990 vxlan_tunnel_id); 71991 } 71992 71993 int 71994 bcm_loop_vxlan_tunnel_terminator_destroy_all( 71995 int unit) 71996 { 71997 return bcm_vxlan_tunnel_terminator_destroy_all( 71998 BCM_CONTROL(unit)->unit); 71999 } 72000 72001 int 72002 bcm_loop_vxlan_tunnel_terminator_get( 72003 int unit, 72004 bcm_tunnel_terminator_t * info) 72005 { 72006 return bcm_vxlan_tunnel_terminator_get( 72007 BCM_CONTROL(unit)->unit, 72008 info); 72009 } 72010 72011 int 72012 bcm_loop_vxlan_tunnel_terminator_traverse( 72013 int unit, 72014 bcm_tunnel_terminator_traverse_cb cb, 72015 void * user_data) 72016 { 72017 return bcm_vxlan_tunnel_terminator_traverse( 72018 BCM_CONTROL(unit)->unit, 72019 cb, 72020 user_data); 72021 } 72022 72023 int 72024 bcm_loop_vxlan_tunnel_terminator_update( 72025 int unit, 72026 bcm_tunnel_terminator_t * info) 72027 { 72028 return bcm_vxlan_tunnel_terminator_update( 72029 BCM_CONTROL(unit)->unit, 72030 info); 72031 } 72032 72033 /* bcm_vxlan_vpn_config_t_init not dispatchable */ 72034 72035 int 72036 bcm_loop_vxlan_vpn_create( 72037 int unit, 72038 bcm_vxlan_vpn_config_t * info) 72039 { 72040 return bcm_vxlan_vpn_create( 72041 BCM_CONTROL(unit)->unit, 72042 info); 72043 } 72044 72045 int 72046 bcm_loop_vxlan_vpn_destroy( 72047 int unit, 72048 bcm_vpn_t l2vpn) 72049 { 72050 return bcm_vxlan_vpn_destroy( 72051 BCM_CONTROL(unit)->unit, 72052 l2vpn); 72053 } 72054 72055 int 72056 bcm_loop_vxlan_vpn_destroy_all( 72057 int unit) 72058 { 72059 return bcm_vxlan_vpn_destroy_all( 72060 BCM_CONTROL(unit)->unit); 72061 } 72062 72063 int 72064 bcm_loop_vxlan_vpn_get( 72065 int unit, 72066 bcm_vpn_t l2vpn, 72067 bcm_vxlan_vpn_config_t * info) 72068 { 72069 return bcm_vxlan_vpn_get( 72070 BCM_CONTROL(unit)->unit, 72071 l2vpn, 72072 info); 72073 } 72074 72075 int 72076 bcm_loop_vxlan_vpn_traverse( 72077 int unit, 72078 bcm_vxlan_vpn_traverse_cb cb, 72079 void * user_data) 72080 { 72081 return bcm_vxlan_vpn_traverse( 72082 BCM_CONTROL(unit)->unit, 72083 cb, 72084 user_data); 72085 } 72086 72087 int 72088 bcm_loop_wlan_client_add( 72089 int unit, 72090 bcm_wlan_client_t * info) 72091 { 72092 return bcm_wlan_client_add( 72093 BCM_CONTROL(unit)->unit, 72094 info); 72095 } 72096 72097 int 72098 bcm_loop_wlan_client_delete( 72099 int unit, 72100 bcm_mac_t mac) 72101 { 72102 return bcm_wlan_client_delete( 72103 BCM_CONTROL(unit)->unit, 72104 mac); 72105 } 72106 72107 int 72108 bcm_loop_wlan_client_delete_all( 72109 int unit) 72110 { 72111 return bcm_wlan_client_delete_all( 72112 BCM_CONTROL(unit)->unit); 72113 } 72114 72115 int 72116 bcm_loop_wlan_client_get( 72117 int unit, 72118 bcm_mac_t mac, 72119 bcm_wlan_client_t * info) 72120 { 72121 return bcm_wlan_client_get( 72122 BCM_CONTROL(unit)->unit, 72123 mac, 72124 info); 72125 } 72126 72127 /* bcm_wlan_client_t_init not dispatchable */ 72128 72129 int 72130 bcm_loop_wlan_client_traverse( 72131 int unit, 72132 bcm_wlan_client_traverse_cb cb, 72133 void * user_data) 72134 { 72135 return bcm_wlan_client_traverse( 72136 BCM_CONTROL(unit)->unit, 72137 cb, 72138 user_data); 72139 } 72140 72141 int 72142 bcm_loop_wlan_detach( 72143 int unit) 72144 { 72145 return bcm_wlan_detach( 72146 BCM_CONTROL(unit)->unit); 72147 } 72148 72149 int 72150 bcm_loop_wlan_init( 72151 int unit) 72152 { 72153 return bcm_wlan_init( 72154 BCM_CONTROL(unit)->unit); 72155 } 72156 72157 int 72158 bcm_loop_wlan_port_add( 72159 int unit, 72160 bcm_wlan_port_t * info) 72161 { 72162 return bcm_wlan_port_add( 72163 BCM_CONTROL(unit)->unit, 72164 info); 72165 } 72166 72167 int 72168 bcm_loop_wlan_port_delete( 72169 int unit, 72170 bcm_gport_t wlan_port_id) 72171 { 72172 return bcm_wlan_port_delete( 72173 BCM_CONTROL(unit)->unit, 72174 wlan_port_id); 72175 } 72176 72177 int 72178 bcm_loop_wlan_port_delete_all( 72179 int unit) 72180 { 72181 return bcm_wlan_port_delete_all( 72182 BCM_CONTROL(unit)->unit); 72183 } 72184 72185 int 72186 bcm_loop_wlan_port_get( 72187 int unit, 72188 bcm_gport_t wlan_port_id, 72189 bcm_wlan_port_t * info) 72190 { 72191 return bcm_wlan_port_get( 72192 BCM_CONTROL(unit)->unit, 72193 wlan_port_id, 72194 info); 72195 } 72196 72197 /* bcm_wlan_port_t_init not dispatchable */ 72198 72199 int 72200 bcm_loop_wlan_port_traverse( 72201 int unit, 72202 bcm_wlan_port_traverse_cb cb, 72203 void * user_data) 72204 { 72205 return bcm_wlan_port_traverse( 72206 BCM_CONTROL(unit)->unit, 72207 cb, 72208 user_data); 72209 } 72210 72211 int 72212 bcm_loop_wlan_tunnel_initiator_create( 72213 int unit, 72214 bcm_tunnel_initiator_t * info) 72215 { 72216 return bcm_wlan_tunnel_initiator_create( 72217 BCM_CONTROL(unit)->unit, 72218 info); 72219 } 72220 72221 int 72222 bcm_loop_wlan_tunnel_initiator_destroy( 72223 int unit, 72224 bcm_gport_t wlan_tunnel_id) 72225 { 72226 return bcm_wlan_tunnel_initiator_destroy( 72227 BCM_CONTROL(unit)->unit, 72228 wlan_tunnel_id); 72229 } 72230 72231 int 72232 bcm_loop_wlan_tunnel_initiator_get( 72233 int unit, 72234 bcm_tunnel_initiator_t * info) 72235 { 72236 return bcm_wlan_tunnel_initiator_get( 72237 BCM_CONTROL(unit)->unit, 72238 info); 72239 } 72240 72241 #endif /* INCLUDE_L3 */ 72242 #ifdef INCLUDE_XFLOW_MACSEC 72243 72244 int 72245 bcm_loop_xflow_macsec_control_get( 72246 int unit, 72247 uint32 flags, 72248 bcm_xflow_macsec_instance_id_t instance_id, 72249 bcm_xflow_macsec_control_t type, 72250 uint64 * value) 72251 { 72252 return bcm_xflow_macsec_control_get( 72253 BCM_CONTROL(unit)->unit, 72254 flags, 72255 instance_id, 72256 type, 72257 value); 72258 } 72259 72260 int 72261 bcm_loop_xflow_macsec_control_set( 72262 int unit, 72263 uint32 flags, 72264 bcm_xflow_macsec_instance_id_t instance_id, 72265 bcm_xflow_macsec_control_t type, 72266 uint64 value) 72267 { 72268 return bcm_xflow_macsec_control_set( 72269 BCM_CONTROL(unit)->unit, 72270 flags, 72271 instance_id, 72272 type, 72273 value); 72274 } 72275 72276 int 72277 bcm_loop_xflow_macsec_decrypt_flow_create( 72278 int unit, 72279 uint32 flags, 72280 bcm_xflow_macsec_instance_id_t instance_id, 72281 bcm_xflow_macsec_decrypt_flow_info_t * flow_info, 72282 int priority, 72283 bcm_xflow_macsec_flow_id_t * flow_id) 72284 { 72285 return bcm_xflow_macsec_decrypt_flow_create( 72286 BCM_CONTROL(unit)->unit, 72287 flags, 72288 instance_id, 72289 flow_info, 72290 priority, 72291 flow_id); 72292 } 72293 72294 int 72295 bcm_loop_xflow_macsec_decrypt_flow_destroy( 72296 int unit, 72297 bcm_xflow_macsec_flow_id_t flow_id) 72298 { 72299 return bcm_xflow_macsec_decrypt_flow_destroy( 72300 BCM_CONTROL(unit)->unit, 72301 flow_id); 72302 } 72303 72304 int 72305 bcm_loop_xflow_macsec_decrypt_flow_enable_get( 72306 int unit, 72307 bcm_xflow_macsec_flow_id_t flow_id, 72308 int * enable) 72309 { 72310 return bcm_xflow_macsec_decrypt_flow_enable_get( 72311 BCM_CONTROL(unit)->unit, 72312 flow_id, 72313 enable); 72314 } 72315 72316 int 72317 bcm_loop_xflow_macsec_decrypt_flow_enable_set( 72318 int unit, 72319 bcm_xflow_macsec_flow_id_t flow_id, 72320 int enable) 72321 { 72322 return bcm_xflow_macsec_decrypt_flow_enable_set( 72323 BCM_CONTROL(unit)->unit, 72324 flow_id, 72325 enable); 72326 } 72327 72328 int 72329 bcm_loop_xflow_macsec_decrypt_flow_get( 72330 int unit, 72331 bcm_xflow_macsec_flow_id_t flow_id, 72332 bcm_xflow_macsec_decrypt_flow_info_t * flow_info, 72333 int * priority) 72334 { 72335 return bcm_xflow_macsec_decrypt_flow_get( 72336 BCM_CONTROL(unit)->unit, 72337 flow_id, 72338 flow_info, 72339 priority); 72340 } 72341 72342 /* bcm_xflow_macsec_decrypt_flow_info_t_init not dispatchable */ 72343 72344 int 72345 bcm_loop_xflow_macsec_decrypt_flow_set( 72346 int unit, 72347 bcm_xflow_macsec_flow_id_t flow_id, 72348 bcm_xflow_macsec_decrypt_flow_info_t * flow_info, 72349 int priority) 72350 { 72351 return bcm_xflow_macsec_decrypt_flow_set( 72352 BCM_CONTROL(unit)->unit, 72353 flow_id, 72354 flow_info, 72355 priority); 72356 } 72357 72358 int 72359 bcm_loop_xflow_macsec_decrypt_policy_create( 72360 int unit, 72361 uint32 flags, 72362 bcm_xflow_macsec_instance_id_t instance_id, 72363 bcm_xflow_macsec_decrypt_policy_info_t * policy_info, 72364 bcm_xflow_macsec_policy_id_t * policy_id) 72365 { 72366 return bcm_xflow_macsec_decrypt_policy_create( 72367 BCM_CONTROL(unit)->unit, 72368 flags, 72369 instance_id, 72370 policy_info, 72371 policy_id); 72372 } 72373 72374 int 72375 bcm_loop_xflow_macsec_decrypt_policy_destroy( 72376 int unit, 72377 bcm_xflow_macsec_policy_id_t policy_id) 72378 { 72379 return bcm_xflow_macsec_decrypt_policy_destroy( 72380 BCM_CONTROL(unit)->unit, 72381 policy_id); 72382 } 72383 72384 int 72385 bcm_loop_xflow_macsec_decrypt_policy_get( 72386 int unit, 72387 bcm_xflow_macsec_policy_id_t policy_id, 72388 bcm_xflow_macsec_decrypt_policy_info_t * policy_info) 72389 { 72390 return bcm_xflow_macsec_decrypt_policy_get( 72391 BCM_CONTROL(unit)->unit, 72392 policy_id, 72393 policy_info); 72394 } 72395 72396 /* bcm_xflow_macsec_decrypt_policy_info_t_init not dispatchable */ 72397 72398 int 72399 bcm_loop_xflow_macsec_decrypt_policy_set( 72400 int unit, 72401 bcm_xflow_macsec_policy_id_t policy_id, 72402 bcm_xflow_macsec_decrypt_policy_info_t * policy_info) 72403 { 72404 return bcm_xflow_macsec_decrypt_policy_set( 72405 BCM_CONTROL(unit)->unit, 72406 policy_id, 72407 policy_info); 72408 } 72409 72410 int 72411 bcm_loop_xflow_macsec_event_deregister( 72412 int unit, 72413 bcm_xflow_macsec_event_cb cb) 72414 { 72415 return bcm_xflow_macsec_event_deregister( 72416 BCM_CONTROL(unit)->unit, 72417 cb); 72418 } 72419 72420 int 72421 bcm_loop_xflow_macsec_event_register( 72422 int unit, 72423 bcm_xflow_macsec_event_cb cb, 72424 void * user_data) 72425 { 72426 return bcm_xflow_macsec_event_register( 72427 BCM_CONTROL(unit)->unit, 72428 cb, 72429 user_data); 72430 } 72431 72432 int 72433 bcm_loop_xflow_macsec_mac_addr_control_get( 72434 int unit, 72435 uint32 flags, 72436 bcm_xflow_macsec_instance_id_t instance_id, 72437 bcm_xflow_macsec_mac_addr_control_t control_type, 72438 bcm_xflow_macsec_mac_addr_info_t * control_info) 72439 { 72440 return bcm_xflow_macsec_mac_addr_control_get( 72441 BCM_CONTROL(unit)->unit, 72442 flags, 72443 instance_id, 72444 control_type, 72445 control_info); 72446 } 72447 72448 int 72449 bcm_loop_xflow_macsec_mac_addr_control_set( 72450 int unit, 72451 uint32 flags, 72452 bcm_xflow_macsec_instance_id_t instance_id, 72453 bcm_xflow_macsec_mac_addr_control_t control_type, 72454 bcm_xflow_macsec_mac_addr_info_t * control_info) 72455 { 72456 return bcm_xflow_macsec_mac_addr_control_set( 72457 BCM_CONTROL(unit)->unit, 72458 flags, 72459 instance_id, 72460 control_type, 72461 control_info); 72462 } 72463 72464 int 72465 bcm_loop_xflow_macsec_mtu_get( 72466 int unit, 72467 int flags, 72468 bcm_xflow_macsec_instance_id_t instance_id, 72469 bcm_xflow_macsec_mtu_t mtu_sel, 72470 uint32 * mtu) 72471 { 72472 return bcm_xflow_macsec_mtu_get( 72473 BCM_CONTROL(unit)->unit, 72474 flags, 72475 instance_id, 72476 mtu_sel, 72477 mtu); 72478 } 72479 72480 int 72481 bcm_loop_xflow_macsec_mtu_set( 72482 int unit, 72483 int flags, 72484 bcm_xflow_macsec_instance_id_t instance_id, 72485 uint32 mtu, 72486 bcm_xflow_macsec_mtu_t * mtu_sel) 72487 { 72488 return bcm_xflow_macsec_mtu_set( 72489 BCM_CONTROL(unit)->unit, 72490 flags, 72491 instance_id, 72492 mtu, 72493 mtu_sel); 72494 } 72495 72496 int 72497 bcm_loop_xflow_macsec_sectag_etype_get( 72498 int unit, 72499 bcm_xflow_macsec_instance_id_t instance_id, 72500 bcm_xflow_macsec_sectag_ethertype_t sectag_etype_sel, 72501 uint32 * sectag_etype) 72502 { 72503 return bcm_xflow_macsec_sectag_etype_get( 72504 BCM_CONTROL(unit)->unit, 72505 instance_id, 72506 sectag_etype_sel, 72507 sectag_etype); 72508 } 72509 72510 int 72511 bcm_loop_xflow_macsec_sectag_etype_set( 72512 int unit, 72513 int flags, 72514 bcm_xflow_macsec_instance_id_t instance_id, 72515 uint32 sectag_etype, 72516 bcm_xflow_macsec_sectag_ethertype_t * sectag_etype_sel) 72517 { 72518 return bcm_xflow_macsec_sectag_etype_set( 72519 BCM_CONTROL(unit)->unit, 72520 flags, 72521 instance_id, 72522 sectag_etype, 72523 sectag_etype_sel); 72524 } 72525 72526 int 72527 bcm_loop_xflow_macsec_secure_assoc_create( 72528 int unit, 72529 uint32 flags, 72530 bcm_xflow_macsec_secure_chan_id_t chan_id, 72531 bcm_xflow_macsec_secure_assoc_info_t * assoc_info, 72532 bcm_xflow_macsec_secure_assoc_id_t * assoc_id) 72533 { 72534 return bcm_xflow_macsec_secure_assoc_create( 72535 BCM_CONTROL(unit)->unit, 72536 flags, 72537 chan_id, 72538 assoc_info, 72539 assoc_id); 72540 } 72541 72542 int 72543 bcm_loop_xflow_macsec_secure_assoc_destroy( 72544 int unit, 72545 bcm_xflow_macsec_secure_assoc_id_t assoc_id) 72546 { 72547 return bcm_xflow_macsec_secure_assoc_destroy( 72548 BCM_CONTROL(unit)->unit, 72549 assoc_id); 72550 } 72551 72552 int 72553 bcm_loop_xflow_macsec_secure_assoc_get( 72554 int unit, 72555 bcm_xflow_macsec_secure_assoc_id_t assoc_id, 72556 bcm_xflow_macsec_secure_assoc_info_t * assoc_info, 72557 bcm_xflow_macsec_secure_chan_id_t * chan_id) 72558 { 72559 return bcm_xflow_macsec_secure_assoc_get( 72560 BCM_CONTROL(unit)->unit, 72561 assoc_id, 72562 assoc_info, 72563 chan_id); 72564 } 72565 72566 /* bcm_xflow_macsec_secure_assoc_info_t_init not dispatchable */ 72567 72568 int 72569 bcm_loop_xflow_macsec_secure_assoc_set( 72570 int unit, 72571 bcm_xflow_macsec_secure_assoc_id_t assoc_id, 72572 bcm_xflow_macsec_secure_assoc_info_t * assoc_info) 72573 { 72574 return bcm_xflow_macsec_secure_assoc_set( 72575 BCM_CONTROL(unit)->unit, 72576 assoc_id, 72577 assoc_info); 72578 } 72579 72580 int 72581 bcm_loop_xflow_macsec_secure_assoc_traverse( 72582 int unit, 72583 bcm_xflow_macsec_secure_chan_id_t chan_id, 72584 bcm_xflow_macsec_secure_assoc_traverse_cb callback, 72585 void * user_data) 72586 { 72587 return bcm_xflow_macsec_secure_assoc_traverse( 72588 BCM_CONTROL(unit)->unit, 72589 chan_id, 72590 callback, 72591 user_data); 72592 } 72593 72594 int 72595 bcm_loop_xflow_macsec_secure_chan_create( 72596 int unit, 72597 uint32 flags, 72598 bcm_xflow_macsec_instance_id_t instance_id, 72599 bcm_xflow_macsec_secure_chan_info_t * chan_info, 72600 int priority, 72601 bcm_xflow_macsec_secure_chan_id_t * chan_id) 72602 { 72603 return bcm_xflow_macsec_secure_chan_create( 72604 BCM_CONTROL(unit)->unit, 72605 flags, 72606 instance_id, 72607 chan_info, 72608 priority, 72609 chan_id); 72610 } 72611 72612 int 72613 bcm_loop_xflow_macsec_secure_chan_destroy( 72614 int unit, 72615 bcm_xflow_macsec_secure_chan_id_t chan_id) 72616 { 72617 return bcm_xflow_macsec_secure_chan_destroy( 72618 BCM_CONTROL(unit)->unit, 72619 chan_id); 72620 } 72621 72622 int 72623 bcm_loop_xflow_macsec_secure_chan_enable_get( 72624 int unit, 72625 bcm_xflow_macsec_secure_chan_id_t chan_id, 72626 int * enable) 72627 { 72628 return bcm_xflow_macsec_secure_chan_enable_get( 72629 BCM_CONTROL(unit)->unit, 72630 chan_id, 72631 enable); 72632 } 72633 72634 int 72635 bcm_loop_xflow_macsec_secure_chan_enable_set( 72636 int unit, 72637 bcm_xflow_macsec_secure_chan_id_t chan_id, 72638 int enable) 72639 { 72640 return bcm_xflow_macsec_secure_chan_enable_set( 72641 BCM_CONTROL(unit)->unit, 72642 chan_id, 72643 enable); 72644 } 72645 72646 int 72647 bcm_loop_xflow_macsec_secure_chan_get( 72648 int unit, 72649 bcm_xflow_macsec_secure_chan_id_t chan_id, 72650 bcm_xflow_macsec_secure_chan_info_t * chan_info, 72651 int * priority) 72652 { 72653 return bcm_xflow_macsec_secure_chan_get( 72654 BCM_CONTROL(unit)->unit, 72655 chan_id, 72656 chan_info, 72657 priority); 72658 } 72659 72660 /* bcm_xflow_macsec_secure_chan_info_t_init not dispatchable */ 72661 72662 int 72663 bcm_loop_xflow_macsec_secure_chan_info_traverse( 72664 int unit, 72665 uint32 flags, 72666 bcm_xflow_macsec_instance_id_t instance_id, 72667 bcm_xflow_macsec_chan_traverse_cb callback, 72668 void * user_data) 72669 { 72670 return bcm_xflow_macsec_secure_chan_info_traverse( 72671 BCM_CONTROL(unit)->unit, 72672 flags, 72673 instance_id, 72674 callback, 72675 user_data); 72676 } 72677 72678 int 72679 bcm_loop_xflow_macsec_secure_chan_set( 72680 int unit, 72681 uint32 flags, 72682 bcm_xflow_macsec_secure_chan_id_t chan_id, 72683 bcm_xflow_macsec_secure_chan_info_t * chan_info, 72684 int priority) 72685 { 72686 return bcm_xflow_macsec_secure_chan_set( 72687 BCM_CONTROL(unit)->unit, 72688 flags, 72689 chan_id, 72690 chan_info, 72691 priority); 72692 } 72693 72694 int 72695 bcm_loop_xflow_macsec_stat_get( 72696 int unit, 72697 uint32 flags, 72698 bcm_xflow_macsec_id_t id, 72699 bcm_xflow_macsec_stat_type_t stat_type, 72700 uint64 * value) 72701 { 72702 return bcm_xflow_macsec_stat_get( 72703 BCM_CONTROL(unit)->unit, 72704 flags, 72705 id, 72706 stat_type, 72707 value); 72708 } 72709 72710 int 72711 bcm_loop_xflow_macsec_stat_multi_get( 72712 int unit, 72713 uint32 flags, 72714 bcm_xflow_macsec_id_t id, 72715 uint32 num_stats, 72716 bcm_xflow_macsec_stat_type_t * stat_type_array, 72717 uint64 * value_array) 72718 { 72719 return bcm_xflow_macsec_stat_multi_get( 72720 BCM_CONTROL(unit)->unit, 72721 flags, 72722 id, 72723 num_stats, 72724 stat_type_array, 72725 value_array); 72726 } 72727 72728 int 72729 bcm_loop_xflow_macsec_stat_multi_set( 72730 int unit, 72731 uint32 flags, 72732 bcm_xflow_macsec_id_t id, 72733 uint32 num_stats, 72734 bcm_xflow_macsec_stat_type_t * stat_type_array, 72735 uint64 * value_array) 72736 { 72737 return bcm_xflow_macsec_stat_multi_set( 72738 BCM_CONTROL(unit)->unit, 72739 flags, 72740 id, 72741 num_stats, 72742 stat_type_array, 72743 value_array); 72744 } 72745 72746 int 72747 bcm_loop_xflow_macsec_stat_set( 72748 int unit, 72749 uint32 flags, 72750 bcm_xflow_macsec_id_t id, 72751 bcm_xflow_macsec_stat_type_t stat_type, 72752 uint64 value) 72753 { 72754 return bcm_xflow_macsec_stat_set( 72755 BCM_CONTROL(unit)->unit, 72756 flags, 72757 id, 72758 stat_type, 72759 value); 72760 } 72761 72762 int 72763 bcm_loop_xflow_macsec_subport_id_get( 72764 int unit, 72765 bcm_xflow_macsec_id_t id, 72766 bcm_xflow_macsec_subport_id_t * macsec_subport_id) 72767 { 72768 return bcm_xflow_macsec_subport_id_get( 72769 BCM_CONTROL(unit)->unit, 72770 id, 72771 macsec_subport_id); 72772 } 72773 72774 int 72775 bcm_loop_xflow_macsec_vlan_tpid_array_get( 72776 int unit, 72777 bcm_xflow_macsec_instance_id_t instance_id, 72778 bcm_xflow_macsec_vlan_tpid_t * vlan_tpid) 72779 { 72780 return bcm_xflow_macsec_vlan_tpid_array_get( 72781 BCM_CONTROL(unit)->unit, 72782 instance_id, 72783 vlan_tpid); 72784 } 72785 72786 int 72787 bcm_loop_xflow_macsec_vlan_tpid_array_index_get( 72788 int unit, 72789 bcm_xflow_macsec_instance_id_t instance_id, 72790 uint32 vlan_tpid, 72791 uint8 * tpid_index_sel) 72792 { 72793 return bcm_xflow_macsec_vlan_tpid_array_index_get( 72794 BCM_CONTROL(unit)->unit, 72795 instance_id, 72796 vlan_tpid, 72797 tpid_index_sel); 72798 } 72799 72800 int 72801 bcm_loop_xflow_macsec_vlan_tpid_array_set( 72802 int unit, 72803 bcm_xflow_macsec_instance_id_t instance_id, 72804 bcm_xflow_macsec_vlan_tpid_t * vlan_tpid) 72805 { 72806 return bcm_xflow_macsec_vlan_tpid_array_set( 72807 BCM_CONTROL(unit)->unit, 72808 instance_id, 72809 vlan_tpid); 72810 } 72811 72812 #endif /* INCLUDE_XFLOW_MACSEC */ 72813 72814 #endif /* BCM_LOOP_SUPPORT */