diff options
author | Mauro Carvalho Chehab <mchehab@s-opensource.com> | 2017-06-26 21:07:54 +0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@s-opensource.com> | 2017-07-20 23:26:21 +0300 |
commit | 4ee236219f6da367093b503b52fcceb609397c6f (patch) | |
tree | d7c7b6acba03202f54f9434b827ebcafefcda9df /include/media/v4l2-fwnode.h | |
parent | 1ad371deb9b0be142dca205611a56854a37fc48d (diff) | |
download | linux-4ee236219f6da367093b503b52fcceb609397c6f.tar.xz |
media: v4l2-fwnode: suppress a warning at OF parsing logic
smatch produce this warning:
drivers/media/v4l2-core/v4l2-fwnode.c:76 v4l2_fwnode_endpoint_parse_csi_bus() error: buffer overflow 'array' 5 <= u16max
That's because, in thesis, the routine might have called with
some value at bus->num_data_lanes. That's not the current
case.
Yet, better to shut up this warning, and make the code more
reliable if some future changes might cause a bug.
While here, simplify the code a little bit by reading only
once from lanes-properties array.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'include/media/v4l2-fwnode.h')
-rw-r--r-- | include/media/v4l2-fwnode.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/media/v4l2-fwnode.h b/include/media/v4l2-fwnode.h index 29ae22bbbbaf..b373c43f65e8 100644 --- a/include/media/v4l2-fwnode.h +++ b/include/media/v4l2-fwnode.h @@ -26,6 +26,8 @@ struct fwnode_handle; +#define MAX_DATA_LANES 4 + /** * struct v4l2_fwnode_bus_mipi_csi2 - MIPI CSI-2 bus data structure * @flags: media bus (V4L2_MBUS_*) flags @@ -37,10 +39,10 @@ struct fwnode_handle; */ struct v4l2_fwnode_bus_mipi_csi2 { unsigned int flags; - unsigned char data_lanes[4]; + unsigned char data_lanes[MAX_DATA_LANES]; unsigned char clock_lane; unsigned short num_data_lanes; - bool lane_polarities[5]; + bool lane_polarities[MAX_DATA_LANES + 1]; }; /** |