Add support to encode and decode string data type into a QMI message.
If a string has a <Type>:<Length>:<Value> information associated with it,
then the length information holds the length of the string. If the string
is part of a nested structure, then the length of the string is explicitly
encoded into the QMI message.
Change-Id: If488d25eaf6d97cd9422848e7bfdfd17cdb68fa0
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
The new API is added to verify the maximum length of a QMI message
embedded inside the message descriptor matches the expected maximum
length of the concerned QMI message. The expected maximum length of
the QMI message is calculated using the message descriptor which
describes all the elements in the structure.
Change-Id: I09602df410d9891d60f1502245ad055653f8f0f7
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
Introduce Encode/Decode Library to perform QMI message marshaling.
The QMI Encode/Decode Library encodes the kernel C data structures into
QMI wire format and decodes the messages in QMI wire format into kernel
C structures.
Change-Id: Ib443e697dafedeac8a790de9a3a8ed4a8444082f
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>