blob: 68da0df0e8be7020e64e9bc12998a70200c0666d [file] [log] [blame]
Shad Ansari2f7f9be2017-06-07 13:34:53 -07001/******************************************************************************
2 *
3 * <:copyright-BRCM:2016:DUAL/GPL:standard
4 *
5 * Copyright (c) 2016 Broadcom
6 * All Rights Reserved
7 *
8 * Unless you and Broadcom execute a separate written software license
9 * agreement governing use of this software, this software is licensed
10 * to you under the terms of the GNU General Public License version 2
11 * (the "GPL"), available at http://www.broadcom.com/licenses/GPLv2.php,
12 * with the following added to such license:
13 *
14 * As a special exception, the copyright holders of this software give
15 * you permission to link this software with independent modules, and
16 * to copy and distribute the resulting executable under terms of your
17 * choice, provided that you also meet, for each linked independent
18 * module, the terms and conditions of the license of that module.
19 * An independent module is a module which is not derived from this
20 * software. The special exception does not apply to any modifications
21 * of the software.
22 *
23 * Not withstanding the above, under no circumstances may you combine
24 * this software in any way with any other Broadcom software provided
25 * under a license other than the GPL, without Broadcom's express prior
26 * written consent.
27 *
28 * :>
29 *
30 *****************************************************************************/
31
32/**
33 * @file bal_mac_util_epon.h
34 *
35 * @brief mac util interfaces definition used by Bal Core, for EPON
36 *
37 * This file expose the APIs to the core to configure the mac
38 * with regarding to the operation of access terminal, interface, subscriber terminal and flow.
39 *
40 * @addtogroup mac_util
41 */
42
43/*@{*/
44
45#include <bal_mac_util.h>
46
47/* Temporarily exclude some code to get this module compiling again - we should get rid of this ASAP */
48#define BAL_EPON_EXCLUDE 0
49
50#if BAL_EPON_EXCLUDE
51bcmos_errno mac_util_handle_all_olt_ind_for_epon (bcmolt_devid device_id, bcmolt_msg *p_msg);
52
53bcmos_errno mac_util_register_for_epon_auto_indications(struct bcmolt_rx_cfg *p_rx_cfg, bcmolt_devid device_id);
54#endif /* BAL_EPON_EXCLUDE */
55
56bcmos_errno mac_util_access_terminal_set_for_epon_8_tdma(
57 acc_term_inst *p_acc_term,
58 bal_util_oper_acc_term op_type,
59 bcmolt_devid device_id);
60
61bcmos_errno mac_util_access_terminal_set_for_epon_4_tdma(
62 acc_term_inst *p_acc_term,
63 bal_util_oper_acc_term op_type,
64 bcmolt_devid device_id);
65
66bcmos_errno mac_util_access_terminal_set_for_epon_16_1g(
67 acc_term_inst *p_acc_term,
68 bal_util_oper_acc_term op_type,
69 bcmolt_devid device_id);
70
71bcmos_errno mac_util_access_terminal_set_for_epon_8_1g(
72 acc_term_inst *p_acc_term,
73 bal_util_oper_acc_term op_type,
74 bcmolt_devid device_id);
75
76bcmos_errno mac_util_access_terminal_set_for_epon_4_1g(
77 acc_term_inst *p_acc_term,
78 bal_util_oper_acc_term op_type,
79 bcmolt_devid device_id);
80
81bcmos_errno mac_util_access_terminal_set_for_epon_8_10g(
82 acc_term_inst *p_acc_term,
83 bal_util_oper_acc_term op_type,
84 bcmolt_devid device_id);
85
86bcmos_errno mac_util_access_terminal_set_for_epon_4_10g(
87 acc_term_inst *p_acc_term,
88 bal_util_oper_acc_term op_type,
89 bcmolt_devid device_id);
90
91bcmos_errno mac_util_access_terminal_set_for_epon_2_10g(
92 acc_term_inst *p_acc_term,
93 bal_util_oper_acc_term op_type,
94 bcmolt_devid device_id);
95
96bcmos_errno mac_util_interface_set_for_epon(acc_term_interface *p_interface_inst, bal_util_oper_if op_type);
97
98#if BAL_EPON_EXCLUDE
99bcmos_errno mac_util_validate_subscriber_terminal_info_for_epon(const bcmbal_subscriber_terminal_cfg *p_sub_term_req);
100
101bcmos_errno mac_util_subscriber_terminal_set_for_epon(sub_term_inst *p_sub_term_inst, bal_util_oper_sub_term op_type, bcmos_bool is_post_discovery);
102
103bcmos_errno mac_util_flow_set_for_epon (bcmbal_flow_cfg *p_flow_req, bal_util_oper_flow op_type, flow_inst *p_flow_core);
104
105void bal_proxy_rx_cb_for_epon (bcmolt_devid device_id, bcmolt_msg *p_msg);
106#endif /* BAL_EPON_EXCLUDE */
107
108/*@}*/
109