Add Reliable Asynchronous Transfer Protocol
This patch adds support for Reliable Asynchronous Transfer Protocol (RATP)
as described in RFC916.

Communication over RS232 is often unreliable as characters are lost or
misinterpreted. This protocol allows for a reliable packet based communication
over serial lines.

The implementation simply follows the state machine described in the RFC
text with one exception. RFC916 uses a plain checksum for the
transferred data. We decided to use CRC16 for greater robustness. Since
this is the only RFC916 implementation we currently know of interoperability
with other implementations should not matter.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Andrey Smirnov <andrew.smirnov@gmail.com>
1 parent 51e97d1 commit bbdbda0a7442545ab9022f2ec78e45f1d6750f38
@Sascha Hauer Sascha Hauer authored on 2 Jun 2015
Showing 4 changed files
View
include/ratp.h 0 → 100644
View
lib/Kconfig
View
lib/Makefile
View
lib/ratp.c 0 → 100644
Too large (Show diff)