MCUSW
Loading...
Searching...
No Matches
Eth_VirtMac.h
Go to the documentation of this file.
1/*
2*
3* Copyright (C) 2024 Texas Instruments Incorporated
4*
5* All rights reserved not granted herein.
6*
7* Limited License.
8*
9* Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive
10* license under copyrights and patents it now or hereafter owns or controls to make,
11* have made, use, import, offer to sell and sell ("Utilize") this software subject to the
12* terms herein. With respect to the foregoing patent license, such license is granted
13* solely to the extent that any such patent is necessary to Utilize the software alone.
14* The patent license shall not apply to any combinations which include this software,
15* other than combinations with devices manufactured by or for TI ("TI Devices").
16* No hardware patent is licensed hereunder.
17*
18* Redistributions must preserve existing copyright notices and reproduce this license
19* (including the above copyright notice and the disclaimer and (if applicable) source
20* code license limitations below) in the documentation and/or other materials provided
21* with the distribution
22*
23* Redistribution and use in binary form, without modification, are permitted provided
24* that the following conditions are met:
25*
26* * No reverse engineering, decompilation, or disassembly of this software is
27* permitted with respect to any software provided in binary form.
28*
29* * any redistribution and use are licensed by TI for use only with TI Devices.
30*
31* * Nothing shall obligate TI to provide you with source code for the software
32* licensed and provided to you in object code.
33*
34* If software source code is provided to you, modification and redistribution of the
35* source code are permitted provided that the following conditions are met:
36*
37* * any redistribution and use of the source code, including any resulting derivative
38* works, are licensed by TI for use only with TI Devices.
39*
40* * any redistribution and use of any object code compiled from the source code
41* and any resulting derivative works, are licensed by TI for use only with TI Devices.
42*
43* Neither the name of Texas Instruments Incorporated nor the names of its suppliers
44*
45* may be used to endorse or promote products derived from this software without
46* specific prior written permission.
47*
48* DISCLAIMER.
49*
50* THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY EXPRESS
51* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
52* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
53* IN NO EVENT SHALL TI AND TI'S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT,
54* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
55* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
56* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
57* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
58* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
59* OF THE POSSIBILITY OF SUCH DAMAGE.
60*
61*/
62
85#ifndef ETH_VIRTMAC_H__
86#define ETH_VIRTMAC_H__
87
88/* ========================================================================== */
89/* Include Files */
90/* ========================================================================== */
91
92#include "Eth_Types.h"
93#include "Eth_Cfg.h"
94
95#ifdef __cplusplus
96extern "C"
97{
98#endif
99
100/* ========================================================================== */
101/* Macros & Typedefs */
102/* ========================================================================== */
103
104/* None */
105
106/* ========================================================================== */
107/* Function Declarations */
108/* ========================================================================== */
109
110#if (STD_ON == ETH_VIRTUALMAC_SUPPORT)
147FUNC(Std_ReturnType, ETH_CODE)
148Eth_VirtMacRpcInit(P2CONST(Eth_ConfigType, AUTOMATIC, ETH_PBCFG) CfgPtr);
149#endif /* (STD_ON == ETH_VIRTUALMAC_SUPPORT) */
150
151#if (STD_ON == ETH_VIRTUALMAC_SUPPORT)
189FUNC(Std_ReturnType, ETH_CODE)
191#endif /* (STD_ON == ETH_VIRTUALMAC_SUPPORT) */
192
193#if (STD_ON == ETH_VIRTUALMAC_SUPPORT)
221FUNC(Std_ReturnType, ETH_CODE)
223#endif /* (STD_ON == ETH_VIRTUALMAC_SUPPORT) */
224
225#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_NOTIFYMSGRECEIVED_API))
261FUNC(Std_ReturnType, ETH_CODE)
263#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_NOTIFYMSGRECEIVED_API)) */
264
265#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_SUBSCRIBEALLTRAFFIC_API))
313FUNC(Std_ReturnType, ETH_CODE)
315#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_SUBSCRIBEALLTRAFFIC_API)) */
316
317#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_UNSUBSCRIBEALLTRAFFIC_API))
368FUNC(Std_ReturnType, ETH_CODE)
370#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_UNSUBSCRIBEALLTRAFFIC_API)) */
371
372#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_SUBSCRIBEDSTMAC_API))
428FUNC(Std_ReturnType, ETH_CODE)
429Eth_DispatchVirtmacSubscribeDstMac(uint8 CtrlIdx, uint8 *macAddress);
430#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_SUBSCRIBEDSTMAC_API)) */
431
432#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_UNSUBSCRIBEDSTMAC_API))
488FUNC(Std_ReturnType, ETH_CODE)
489Eth_DispatchVirtmacUnsubscribeDstMac(uint8 CtrlIdx, uint8 *macAddress);
490#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_UNSUBSCRIBEDSTMAC_API)) */
491
492#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_ASSOCIATEIPV4MACADDR_API))
543FUNC(Std_ReturnType, ETH_CODE)
544Eth_DispatchVirtmacAssociateIPv4Macaddr(uint8 CtrlIdx, uint8 *ipv4Address, uint8 *macAddress);
545#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_ASSOCIATEIPV4MACADDR_API)) */
546
547
548#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_DISASSOCIATEIPV4MACADDR_API))
596FUNC(Std_ReturnType, ETH_CODE)
597Eth_DispatchVirtmacDisassociateIPv4Macaddr(uint8 CtrlIdx, uint8 *ipv4Address);
598#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_DISASSOCIATEIPV4MACADDR_API)) */
599
600#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_ADD_MCAST_MACADDR_API))
651FUNC(Std_ReturnType, ETH_CODE)
652Eth_DispatchVirtmacAddMcastAddr(uint8 CtrlIdx, uint8 *macAddress, uint32 vlanId);
653#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_ADD_MCAST_MACADDR_API)) */
654
655#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_DEL_MACADDR_API))
702FUNC(Std_ReturnType, ETH_CODE)
703Eth_DispatchVirtmacDelAddr(uint8 CtrlIdx, uint8 *macAddress, uint32 vlanId);
704#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_DEL_MACADDR_API)) */
705
706#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_ADD_VLAN_API))
749FUNC(Std_ReturnType, ETH_CODE)
750Eth_DispatchVirtmacAddVlan(uint8 CtrlIdx, uint32 vlanId);
751#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_ADD_VLAN_API)) */
752
753#if ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_DEL_VLAN_API))
794FUNC(Std_ReturnType, ETH_CODE)
795Eth_DispatchVirtmacDelVlan(uint8 CtrlIdx, uint32 vlanId);
796#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) && (STD_ON == ETH_VIRTUALMAC_DEL_VLAN_API)) */
797
798#if (STD_ON == ETH_VIRTUALMAC_SUPPORT)
820FUNC(void, ETH_CODE)
822#endif /* ((STD_ON == ETH_VIRTUALMAC_SUPPORT) */
823
824
825#ifdef __cplusplus
826}
827#endif
828
829#endif
830
This file contains generated configuration for ETH MCAL driver.
Std_ReturnType Eth_DispatchVirtmacUnsubscribeDstMac(uint8 CtrlIdx, uint8 *macAddress)
Dispatch virtual mac destination traffic unsubscription request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacUnsubscribeAllTraffic(uint8 CtrlIdx)
Dispatch virtual mac all traffic unsubscription request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacSubscribeAllTraffic(uint8 CtrlIdx)
Dispatch virtual mac all traffic subscription request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacDelVlan(uint8 CtrlIdx, uint32 vlanId)
Dispatch virtual VLAN leave command to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacAssociateIPv4Macaddr(uint8 CtrlIdx, uint8 *ipv4Address, uint8 *macAddress)
Dispatch virtual mac IPV4 address:destination mac association request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacDelAddr(uint8 CtrlIdx, uint8 *macAddress, uint32 vlanId)
Dispatch virtual mac removal of given mac address from switch address resolution table request to eth...
Std_ReturnType Eth_DispatchVirtmacDisassociateIPv4Macaddr(uint8 CtrlIdx, uint8 *ipv4Address)
Dispatch virtual mac IPV4 address:destination mac disassociation request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacSubscribeDstMac(uint8 CtrlIdx, uint8 *macAddress)
Dispatch virtual mac destination mac traffic subscription request to ethernet firmware.
Std_ReturnType Eth_VirtMacRpcInit(const Eth_ConfigType *CfgPtr)
This function initializes Eth Virtual MAC driver's Remote Procedure Call.
void Eth_VirtMac_MainFunction(uint8 ctrlIdx)
Std_ReturnType Eth_DispatchVirtmacInit(uint8 CtrlIdx)
Dispatch virtual mac initialization request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacAddVlan(uint8 CtrlIdx, uint32 vlanId)
Dispatch virtual VLAN join request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacDeinit(uint8 CtrlIdx)
Dispatch virtual mac deinit request to ethernet firmware.
Std_ReturnType Eth_DispatchVirtmacAddMcastAddr(uint8 CtrlIdx, uint8 *macAddress, uint32 vlanId)
Dispatch virtual mac addition of given multicast address to switch address resolution table request t...
Std_ReturnType Eth_NotifyVirtmacMsgReceived(uint8 CtrlIdx)
Notify Ethernet driver that a RPC msg has been received from ethernet firmware.
Eth configuration type Configuration data of all controller.
Definition Eth_Cfg.h:1021