@@ -13129,4 +13129,277 @@ No
1312913129- nx_shaper_default_mapping_get
1313013130- nx_shaper_mapping_set
1313113131- nx_shaper_cbs_parameter_set
13132- - nx_shaper_fp_parameter_set
13132+ - nx_shaper_fp_parameter_set
13133+
13134+ ## nx_srp_init
13135+ Initialization of SRP.
13136+
13137+ ### Prototype
13138+
13139+ ```c
13140+ UINT nx_srp_init(NX_SRP *srp_ptr, NX_IP *ip_ptr, UINT interface_index, NX_PACKET_POOL *pkt_pool_ptr,
13141+ VOID *stack_ptr, ULONG stack_size, UINT priority);
13142+ ```
13143+ ### Description
13144+
13145+ This function initialize SRP, it initializes MRP, MSRP, MVRP sequencly, and create a thread in MRP initializaton.
13146+
13147+ ### Parameters
13148+
13149+ - *srp_ptr*: Pointer to SRP instance.
13150+ - *ip_ptr*: Pointer to IP instance.
13151+ - *interface_index*: Index of the network interface to use SRP.
13152+ - *pkt_pool_ptr*: pointer to Packet pool.
13153+ - *stack_ptr*: pointer to SRP thread Stack.
13154+ - *stack_size*: SRP thread Stack size .
13155+ - *priority*: SRP thread priority.
13156+
13157+
13158+ ### Return Values
13159+
13160+ - **NX_SUCCESS** (0x00) Successful init
13161+ - **NX_INVALID_INTERFACE** (0x4C) Invalid interface index
13162+ - **NX_PTR_ERROR** (0x07) Invalid IP pointer
13163+
13164+ ### Allowed From
13165+
13166+ Threads
13167+
13168+ ### Preemption Possible
13169+
13170+ No
13171+
13172+ ### Example
13173+
13174+ ```c
13175+ #define SRP_THREAD_PRIORITY 5
13176+ #define SRP_INTERFACE 0
13177+ NX_SRP nx_srp;
13178+ NX_IP ip_0;
13179+ NX_PACKET_POOL pool_0;
13180+ ULONG srp_stack[2048 *2 / sizeof(ULONG)];
13181+
13182+ /* Create the SRP client instance */
13183+ nx_srp_init(&nx_srp, &ip_0, SRP_INTERFACE, &pool_0,
13184+ (UCHAR *)srp_stack, sizeof(srp_stack), SRP_THREAD_PRIORITY);
13185+
13186+
13187+ ```
13188+ ### See Also
13189+
13190+ - nx_srp_talker_start
13191+ - nx_srp_talker_stop
13192+ - nx_srp_listener_start
13193+ - nx_srp_listener_stop
13194+
13195+
13196+
13197+ ## nx_srp_talker_start
13198+ Start SRP talker.
13199+
13200+ ### Prototype
13201+
13202+ ```c
13203+ UINT nx_srp_talker_start(NX_SRP *srp_ptr, NX_MSRP_DOMAIN *srp_domain, UCHAR *stream_id, UCHAR *dest_addr,
13204+ UINT max_frame_size, UINT max_interval_frames, NX_MRP_EVENT_CALLBACK event_callback);
13205+ ```
13206+ ### Description
13207+
13208+ This function start SRP talker, it sets event callback funtions and register domain, Vlan, stream request.
13209+
13210+ ### Parameters
13211+
13212+ - *srp_ptr*: Pointer to SRP instance.
13213+ - *event_callback*: callback invoked by application to monitor the SRP process.
13214+ - *stream_id*: stream id of talker advertised.
13215+
13216+
13217+ ### Return Values
13218+
13219+ - **NX_SUCCESS** (0x00) Successful start
13220+ - **NX_INVALID_PARAMETERS** (0x4D) Invalid parameter
13221+ - **NX_MSRP_EVENT_NOT_SUPPORTED** (0x06) unsupported event
13222+ - **NX_MSRP_ATTRIBUTE_FIND_ERROR** (0x09) not found attribute
13223+
13224+
13225+ ### Allowed From
13226+
13227+ Threads
13228+
13229+ ### Preemption Possible
13230+
13231+ No
13232+
13233+ ### Example
13234+
13235+ ```c
13236+ #define SRP_THREAD_PRIORITY 5
13237+ #define SRP_INTERFACE 0
13238+ NX_SRP nx_srp;
13239+ UINT MaxFrameSize = 1300;
13240+ UINT MaxIntervalFrames = 1;
13241+ UCHAR dest_addr[6] ={0X91,0XE0,0XF0,0X00,0X0E,0X80};
13242+ UCHAR stream_id[8] = {0X00,0X11,0X22,0X33,0X44,0X56,0,1};
13243+ NX_MSRP_DOMAIN srp_domain = {5,2,2};
13244+ UINT srp_event_callback(NX_MRP_PARTICIPANT* participant, NX_MRP_ATTRIBUTE* attribute, UCHAR event,VOID *callback_data);
13245+
13246+ /* start the SRP client */
13247+ status = nx_srp_talker_start(&nx_srp, &srp_domain, stream_id, dest_addr,
13248+ MaxFrameSize, MaxIntervalFrames, srp_event_callback);
13249+
13250+
13251+ ```
13252+ ### See Also
13253+
13254+ - nx_srp_init
13255+ - nx_srp_talker_stop
13256+ - nx_srp_listener_start
13257+ - nx_srp_listener_stop
13258+
13259+ ## nx_srp_talker_stop
13260+ Stop SRP talker.
13261+
13262+ ### Prototype
13263+
13264+ ```c
13265+ UINT nx_srp_talker_stop(NX_SRP *srp_ptr, UCHAR *stream_id, NX_MSRP_DOMAIN *domain)
13266+ ```
13267+ ### Description
13268+
13269+ This function stop SRP talker. It withdraw the domain,Vlan,stream request.
13270+
13271+ ### Parameters
13272+
13273+ - *srp_ptr*: Pointer to SRP instance.
13274+ - *stream_id*: stream id of talker advertised.
13275+ - *domain*: domain of SRP talker.
13276+
13277+
13278+ ### Return Values
13279+
13280+ - **NX_SUCCESS** (0x00) Successful stop
13281+ - **NX_INVALID_PARAMETERS** (0x4D) Invalid parameter
13282+ - **NX_MSRP_EVENT_NOT_SUPPORTED** (0x06) unsupported event
13283+ - **NX_MSRP_ATTRIBUTE_FIND_ERROR** (0x09) not found attribute
13284+
13285+ ### Allowed From
13286+
13287+ Threads
13288+
13289+ ### Preemption Possible
13290+
13291+ No
13292+
13293+ ### Example
13294+
13295+ ```c
13296+ NX_SRP nx_srp;
13297+ UCHAR stream_id[8] = {0X00,0X11,0X22,0X33,0X44,0X56,0,1};
13298+ NX_MSRP_DOMAIN srp_domain = {5,2,2};
13299+
13300+ nx_srp_talker_stop(&nx_srp,stream_id, &srp_domain );
13301+ ```
13302+ ### See Also
13303+
13304+ - nx_srp_init
13305+ - nx_srp_talker_start
13306+ - nx_srp_listener_start
13307+ - nx_srp_listener_stop
13308+
13309+ ## nx_srp_listener_start
13310+ Start SRP listener.
13311+
13312+ ### Prototype
13313+
13314+ ```c
13315+
13316+ UINT nx_srp_listener_start(NX_SRP *srp_ptr, NX_MRP_EVENT_CALLBACK event_callback, UCHAR *stream_id)
13317+ ```
13318+ ### Description
13319+
13320+ This function start SRP listener. It enables listener and set user date and callback function.
13321+
13322+ ### Parameters
13323+
13324+ - *srp_ptr*: Pointer to SRP instance.
13325+ - *event_callback*: callback invoked by application to monitor the SRP process.
13326+ - *stream_id*: stream id of listener attached.
13327+
13328+
13329+ ### Return Values
13330+
13331+ - **NX_MSRP_SUCCESS** (0x00) Successful listener start
13332+
13333+
13334+ ### Allowed From
13335+
13336+ Threads
13337+
13338+ ### Preemption Possible
13339+
13340+ No
13341+
13342+ ### Example
13343+
13344+ ```c
13345+ NX_SRP nx_srp;
13346+ UCHAR stream_id[8] = {0X00,0X11,0X22,0X33,0X44,0X56,0,1};
13347+ UINT srp_event_callback(NX_MRP_PARTICIPANT* participant, NX_MRP_ATTRIBUTE* attribute, UCHAR event,VOID *callback_data);
13348+
13349+ nx_srp_listener_start(&nx_srp, srp_event_callback, stream_id)
13350+ ```
13351+ ### See Also
13352+
13353+ - nx_srp_init
13354+ - nx_srp_talker_start
13355+ - nx_srp_talker_stop
13356+ - nx_srp_listener_stop
13357+
13358+ ## nx_srp_listener_stop
13359+ Stop SRP listener.
13360+
13361+ ### Prototype
13362+
13363+ ```c
13364+ UINT nx_srp_listener_stop(NX_SRP *srp_ptr, UCHAR *stream_id, NX_MSRP_DOMAIN *domain)
13365+ ```
13366+ ### Description
13367+
13368+ This function stop SRP listener. It unregister the domain,Vlan stream attached to talker.
13369+
13370+ ### Parameters
13371+
13372+ - *srp_ptr*: Pointer to SRP instance.
13373+ - *stream_id*: Stream id of listener attached to.
13374+ - *domain*: Domain of listener attached to.
13375+
13376+ ### Return Values
13377+
13378+ - **NX_SUCCESS** (0x00) Successful stop
13379+ - **NX_INVALID_PARAMETERS** (0x4D) Invalid parameter
13380+ - **NX_MSRP_EVENT_NOT_SUPPORTED** (0x06) unsupported event
13381+ - **NX_MSRP_ATTRIBUTE_FIND_ERROR** (0x09) not found attribute
13382+
13383+ ### Allowed From
13384+
13385+ Threads
13386+
13387+ ### Preemption Possible
13388+
13389+ No
13390+
13391+ ### Example
13392+
13393+ ```c
13394+ NX_SRP nx_srp;
13395+ UCHAR stream_id[8] = {0X00,0X11,0X22,0X33,0X44,0X56,0,1};
13396+ NX_MSRP_DOMAIN srp_domain = {5,2,2};
13397+
13398+ nx_srp_listener_stop(&nx_srp,stream_id, &srp_domain );
13399+ ```
13400+ ### See Also
13401+
13402+ - nx_srp_init
13403+ - nx_srp_talker_start
13404+ - nx_srp_talker_stop
13405+ - nx_srp_listener_start
0 commit comments