Commit e40f1bcb authored by Sakari Ailus's avatar Sakari Ailus Committed by Mauro Carvalho Chehab

media: ccs: Replace somewhat harsh internal checks based on BUG with WARN_ON

If an internal driver error was encountered, BUG was issued. Instead, do
less harsh WARN_ON_ONCE and try to manage with the consequences.
Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 7d8d59f2
...@@ -546,6 +546,10 @@ static void ccs_update_mbus_formats(struct ccs_sensor *sensor) ...@@ -546,6 +546,10 @@ static void ccs_update_mbus_formats(struct ccs_sensor *sensor)
to_csi_format_idx(sensor->internal_csi_format) & ~3; to_csi_format_idx(sensor->internal_csi_format) & ~3;
unsigned int pixel_order = ccs_pixel_order(sensor); unsigned int pixel_order = ccs_pixel_order(sensor);
if (WARN_ON_ONCE(max(internal_csi_format_idx, csi_format_idx) +
pixel_order >= ARRAY_SIZE(ccs_csi_data_formats)))
return;
sensor->mbus_frame_fmts = sensor->mbus_frame_fmts =
sensor->default_mbus_frame_fmts << pixel_order; sensor->default_mbus_frame_fmts << pixel_order;
sensor->csi_format = sensor->csi_format =
...@@ -554,9 +558,6 @@ static void ccs_update_mbus_formats(struct ccs_sensor *sensor) ...@@ -554,9 +558,6 @@ static void ccs_update_mbus_formats(struct ccs_sensor *sensor)
&ccs_csi_data_formats[internal_csi_format_idx &ccs_csi_data_formats[internal_csi_format_idx
+ pixel_order]; + pixel_order];
BUG_ON(max(internal_csi_format_idx, csi_format_idx) + pixel_order
>= ARRAY_SIZE(ccs_csi_data_formats));
dev_dbg(&client->dev, "new pixel order %s\n", dev_dbg(&client->dev, "new pixel order %s\n",
pixel_order_str[pixel_order]); pixel_order_str[pixel_order]);
} }
...@@ -1806,7 +1807,7 @@ static void ccs_propagate(struct v4l2_subdev *subdev, ...@@ -1806,7 +1807,7 @@ static void ccs_propagate(struct v4l2_subdev *subdev,
*crops[CCS_PAD_SRC] = *comp; *crops[CCS_PAD_SRC] = *comp;
break; break;
default: default:
BUG(); WARN_ON_ONCE(1);
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment