Prusa MINI Firmware overview
Main Page
Modules
Classes
Files
File List
File Members
slipif.h
Go to the documentation of this file.
1
/**
2
* @file
3
*
4
* SLIP netif API
5
*/
6
7
/*
8
* Copyright (c) 2001, Swedish Institute of Computer Science.
9
* All rights reserved.
10
*
11
* Redistribution and use in source and binary forms, with or without
12
* modification, are permitted provided that the following conditions
13
* are met:
14
* 1. Redistributions of source code must retain the above copyright
15
* notice, this list of conditions and the following disclaimer.
16
* 2. Redistributions in binary form must reproduce the above copyright
17
* notice, this list of conditions and the following disclaimer in the
18
* documentation and/or other materials provided with the distribution.
19
* 3. Neither the name of the Institute nor the names of its contributors
20
* may be used to endorse or promote products derived from this software
21
* without specific prior written permission.
22
*
23
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
24
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
27
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33
* SUCH DAMAGE.
34
*
35
* This file is part of the lwIP TCP/IP stack.
36
*
37
* Author: Adam Dunkels <adam@sics.se>
38
*
39
*/
40
#ifndef LWIP_HDR_NETIF_SLIPIF_H
41
#define LWIP_HDR_NETIF_SLIPIF_H
42
43
#include "
lwip/opt.h
"
44
#include "
lwip/netif.h
"
45
46
/** Set this to 1 to start a thread that blocks reading on the serial line
47
* (using sio_read()).
48
*/
49
#ifndef SLIP_USE_RX_THREAD
50
#define SLIP_USE_RX_THREAD !NO_SYS
51
#endif
52
53
/** Set this to 1 to enable functions to pass in RX bytes from ISR context.
54
* If enabled, slipif_received_byte[s]() process incoming bytes and put assembled
55
* packets on a queue, which is fed into lwIP from slipif_poll().
56
* If disabled, slipif_poll() polls the serial line (using sio_tryread()).
57
*/
58
#ifndef SLIP_RX_FROM_ISR
59
#define SLIP_RX_FROM_ISR 0
60
#endif
61
62
/** Set this to 1 (default for SLIP_RX_FROM_ISR) to queue incoming packets
63
* received by slipif_received_byte[s]() as long as PBUF_POOL pbufs are available.
64
* If disabled, packets will be dropped if more than one packet is received.
65
*/
66
#ifndef SLIP_RX_QUEUE
67
#define SLIP_RX_QUEUE SLIP_RX_FROM_ISR
68
#endif
69
70
#ifdef __cplusplus
71
extern
"C"
{
72
#endif
73
74
err_t
slipif_init
(
struct
netif
*
netif
);
75
void
slipif_poll
(
struct
netif
*
netif
);
76
#if SLIP_RX_FROM_ISR
77
void
slipif_process_rxqueue(
struct
netif
*
netif
);
78
void
slipif_received_byte(
struct
netif
*
netif
,
u8_t
data
);
79
void
slipif_received_bytes(
struct
netif
*
netif
,
u8_t
*
data
,
u8_t
len);
80
#endif
/* SLIP_RX_FROM_ISR */
81
82
#ifdef __cplusplus
83
}
84
#endif
85
86
#endif
/* LWIP_HDR_NETIF_SLIPIF_H */
opt.h
data
uint8_t data[8]
Definition:
masstorage.h:49
netif.h
u8_t
uint8_t u8_t
Definition:
arch.h:119
netif
Definition:
netif.h:225
err_t
s8_t err_t
Definition:
err.h:57
slipif_init
err_t slipif_init(struct netif *netif)
Definition:
slipif.c:361
slipif_poll
void slipif_poll(struct netif *netif)
Definition:
slipif.c:427
Prusa-Firmware-Buddy-Private1
lib
Middlewares
Third_Party
LwIP
src
include
netif
slipif.h
Generated by
1.8.16