On 11/02/2015 12:16 AM, Marek Vasut wrote: > The ARINC-429 is a technical standard, which describes, among others, > a data bus used by airplanes. The standard contains much more, since > it is based off the ISO/OSI model, but this patch implements just the > data bus protocol. > > This stack is derived from the SocketCAN implementation, already present > in the kernel and thus behaves in a very similar fashion. Thus far, we > support sending RAW ARINC-429 datagrams, configuration of the RX and TX > clock speed and filtering. > > The ARINC-429 datagram is four-byte long. The first byte is always the > LABEL, the function of remaining three bytes can vary, so we handle it > as an opaque PAYLOAD. The userspace tools can send these datagrams via > a standard socket. > > A LABEL-based filtering can be configured on each socket separately in > a way comparable to CAN -- user uses setsockopt() to push a list of > label,mask tuples into the kernel and the kernel will deliver a datagram > to the socket if (<received_label> & mask) == (label & mask), otherwise > the datagram is not delivered.
What's difference compared to CAN besides a different MTU? The CAN stack is already capable to handle CAN and CAN-FD frames. Would it make sense to integrate the ARINC-429 into the existing CAN stack? Marc -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |
signature.asc
Description: OpenPGP digital signature