greybus: manifest: Account for padding in string descriptor

String descriptors are padded towards the end to align them to 4 byte
boundaries. Take that into account while calculating expected size.

Reviewed-by: Alex Elder <elder@linaro.org>
Reviewed-by: Johan Hovold <johan@hovoldconsulting.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
Viresh Kumar 2015-04-28 19:51:35 +05:30 committed by Greg Kroah-Hartman
parent af6e8b4233
commit fa2fbf16f6
1 changed files with 3 additions and 0 deletions

View File

@ -100,6 +100,9 @@ static int identify_descriptor(struct gb_interface *intf,
case GREYBUS_TYPE_STRING:
expected_size += sizeof(struct greybus_descriptor_string);
expected_size += desc->string.length;
/* String descriptors are padded to 4 byte boundaries */
expected_size = ALIGN(expected_size, 4);
break;
case GREYBUS_TYPE_INTERFACE:
expected_size += sizeof(struct greybus_descriptor_interface);