greybus: interface: Extract and store Interface feature byte
authorBryan O'Donoghue <bryan.odonoghue@linaro.org>
Sun, 15 May 2016 18:37:49 +0000 (19:37 +0100)
committerGreg Kroah-Hartman <gregkh@google.com>
Sun, 15 May 2016 18:39:57 +0000 (11:39 -0700)
commit8c81d4608dc54225005129e32cf5d2035176df5e
treee6301710678babbba659590351d654e9840dfb72
parentc8a657ba3f84643d7ef4b13ff6828e141172419a
greybus: interface: Extract and store Interface feature byte

The Interface description in the Greybus specification contains a
'features' field which is currently not implemented on the AP side. The
Interface features field provides information on optional attributes of an
Interface as a bitmask. Currently only GREYBUS_INTERFACE_FEATURE_TIMESYNC
is implemented in the specification but, the expectation is that other
feature flags will be added over time.

This patch adds support to extract the feature byte communicated in the
features field of the Interface Descriptor header and extends struct
interface to contain a features field through which any user with a pointer
to struct interface may interrogate the features of an Interface.

This is a necessary pre-cursor for TimeSync to ensure only Interfaces which
declare GREYBUS_INTERFACE_FEATURE_TIMESYNC will be included when we go
through the process of FrameTime synchronization.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/greybus_manifest.h
drivers/staging/greybus/interface.h
drivers/staging/greybus/manifest.c