Re: [PATCH 1/2] input: cyapa: fix sparse warning issue of incorrect type in assiggment
From: Jeremiah Mahler <hidden>
Date: 2015-01-22 09:31:38
Also in:
lkml
Dudley, Mis-spelled 'assiggment' in Subject line. On Thu, Jan 22, 2015 at 02:50:05PM +0800, Dudley Du wrote:
Fixes the sparse warning issue of the incorrect type in assignment which found by the kbuild test robot.
I wasn't able to reproduce the sparse warning. Was it for a specific architecture? Perhaps include a link to the email sent by the kbuild test robot. [...]
struct gen5_bl_metadata_row_params {
__le16 size;
- __le16 maximun_size;
+ __le16 maximum_size;I don't think sparse cares about variable names. Be sure to note these changes in your log.
quoted hunk ↗ jump to hunk
__le32 app_start; __le16 app_len; __le16 app_crc;@@ -1192,67 +1192,69 @@ static int cyapa_gen5_bl_enter(struct cyapa *cyapa) static int cyapa_gen5_check_fw(struct cyapa *cyapa, const struct firmware *fw) { struct device *dev = &cyapa->client->dev; - struct gen5_bl_metadata_row_params metadata; - struct cyapa_tsg_bin_image *image; - int flash_records_count; - u16 app_crc = 0; - u16 app_integrity_crc = 0; - u16 row_num; - u8 *data; + const struct cyapa_tsg_bin_image *image = (const void *)fw->data; + const struct cyapa_tsg_bin_image_data_record *app_integrity; + const struct gen5_bl_metadata_row_params *metadata; + size_t flash_records_count; + u32 fw_app_start, fw_upgrade_start; + u16 fw_app_len, fw_upgrade_len; + u16 app_crc; + u16 app_integrity_crc; int record_index; int i; - image = (struct cyapa_tsg_bin_image *)fw->data; flash_records_count = (fw->size - sizeof(struct cyapa_tsg_bin_image_head)) / sizeof(struct cyapa_tsg_bin_image_data_record); - /* APP_INTEGRITY row is always the last row block, - * and the row id must be 0x01ff */ - row_num = get_unaligned_be16( - &image->records[flash_records_count - 1].row_number); - if (image->records[flash_records_count - 1].flash_array_id != 0x00 && - row_num != 0x01ff) { + /* + * APP_INTEGRITY row is always the last row block, + * and the row id must be 0x01ff. + */ + app_integrity = &image->records[flash_records_count - 1]; + + if (app_integrity->flash_array_id != 0x00 || + get_unaligned_be16(&app_integrity->row_number) != 0x01ff) {
I could be wrong but it looks there are a lot of changes un-related to the sparse warning. I am not opposed to this per se but they should be noted in the log message. [...] -- - Jeremiah Mahler