diff options
author | Hans Verkuil <hverkuil-cisco@xs4all.nl> | 2020-10-08 13:59:11 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-10-08 14:13:28 +0200 |
commit | 7124ae48f2a45399789bcc14389614c899f6aa7c (patch) | |
tree | 96892d24deebe9f466282d754c62c6f463c3452c | |
parent | media: dt-bindings: media: venus: Add an optional power domain for perf voting (diff) | |
download | linux-7124ae48f2a45399789bcc14389614c899f6aa7c.tar.xz linux-7124ae48f2a45399789bcc14389614c899f6aa7c.zip |
media: s5k5baf: drop 'data' field in struct s5k5baf_fw
struct s5k5baf_fw ends with this:
struct {
u16 id;
u16 offset;
} seq[0];
u16 data[];
};
which is rather confusing and can cause gcc warnings:
s5k5baf.c: In function 's5k5baf_load_setfile.isra':
s5k5baf.c:390:13: warning: array subscript 65535 is outside the bounds of an interior zero-length array 'struct <anonymous>[0]' [-Wzero-length-bounds]
390 | if (f->seq[i].offset + d <= end)
| ~~~~~~^~~
It turns out that 'data[]' is used in only one place and it can
easily be replaced by &fw->seq[0].id and 'seq[0]' can be replaced by
'seq[]'.
This is both more readable and solved that warnings.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Sylwester Nawrocki <snawrocki@kernel.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
-rw-r--r-- | drivers/media/i2c/s5k5baf.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/media/i2c/s5k5baf.c b/drivers/media/i2c/s5k5baf.c index 42584a088273..ec6f22efe19a 100644 --- a/drivers/media/i2c/s5k5baf.c +++ b/drivers/media/i2c/s5k5baf.c @@ -280,8 +280,7 @@ struct s5k5baf_fw { struct { u16 id; u16 offset; - } seq[0]; - u16 data[]; + } seq[]; }; struct s5k5baf { @@ -563,7 +562,7 @@ static u16 *s5k5baf_fw_get_seq(struct s5k5baf *state, u16 seq_id) if (fw == NULL) return NULL; - data = fw->data + 2 * fw->count; + data = &fw->seq[0].id + 2 * fw->count; for (i = 0; i < fw->count; ++i) { if (fw->seq[i].id == seq_id) |