On Tuesday, November 03, 2015 at 06:32:12 PM, Oliver Hartkopp wrote: [...]
> It looks like you need to shift the stuff in user space every time. > > So you might better think of something like this: > > struct a429_frame { > __u32 label; /* ARINC 429 label */ > __u8 length; /* always set to 8 */ > __u8 __pad; /* padding */ > __u8 __res0; /* reserved / padding */ > __u8 __res1; /* reserved / padding */ > __u32 data __attribute__((aligned(8))); > __u8 p; /* p */ > __u8 ssm; /* ssm */ > __u8 sdi; /* sdi */ > __u8 __end; /* padding */ > }; You don't want to interpret those P(arity)/SSM/SDI bits, since they differ depending on whatever the remote party sends. That's why I decided to just make those into 3-bytes of data and let the userland application deal with it as seen fit. Besides, the ARINC "FTP" really uses those 3 bytes as plain data. > Good thing would be that you can directly see the content in logfiles and > you can easily modify the content on the fly by can-gw. > > Of course the arinc netdevice driver would have to take care to do the > correct rx/tx whatever. But routing and processing arinc content through > the CAN stack does not seem to be a bad idea IMO. Pretty much, yeah. Best regards, Marek Vasut -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html