Commit 06f81520 authored by Sakari Ailus's avatar Sakari Ailus Committed by Mauro Carvalho Chehab
Browse files

media: v4l2-fwnode: link_frequency is an optional property



v4l2_fwnode_endpoint_alloc_parse() is intended as a replacement for
v4l2_fwnode_endpoint_parse(). It parses the "link-frequency" property and
if the property isn't found, it returns an error. However,
"link-frequency" is an optional property and if it does not exist is not
an error. Instead, the number of link frequencies is simply zero in that
case.

Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: default avatarNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent 26d051e3
Loading
Loading
Loading
Loading
+15 −15
Original line number Diff line number Diff line
@@ -291,11 +291,10 @@ struct v4l2_fwnode_endpoint *v4l2_fwnode_endpoint_alloc_parse(

	rval = fwnode_property_read_u64_array(fwnode, "link-frequencies",
					      NULL, 0);
	if (rval < 0)
		goto out_err;

	if (rval > 0) {
		vep->link_frequencies =
		kmalloc_array(rval, sizeof(*vep->link_frequencies), GFP_KERNEL);
			kmalloc_array(rval, sizeof(*vep->link_frequencies),
				      GFP_KERNEL);
		if (!vep->link_frequencies) {
			rval = -ENOMEM;
			goto out_err;
@@ -303,11 +302,12 @@ struct v4l2_fwnode_endpoint *v4l2_fwnode_endpoint_alloc_parse(

		vep->nr_of_link_frequencies = rval;

	rval = fwnode_property_read_u64_array(fwnode, "link-frequencies",
					      vep->link_frequencies,
		rval = fwnode_property_read_u64_array(
			fwnode, "link-frequencies", vep->link_frequencies,
			vep->nr_of_link_frequencies);
		if (rval < 0)
			goto out_err;
	}

	return vep;