Data format

Device modules can pass data in any format they want up to protocol modules. But protocol modules must pass data in a specific format to filter modules.

This protocol module: Must format data into a:
Keyboard struct packet_kbd
Relative struct packet_rel
Absolute struct packet_abs

See the header <devi.h> for the format of these structures. All these structures have a timestamp field; you fill them in using the library call clk_get().