Lines Matching refs:fwnode

118 static int v4l2_fwnode_endpoint_parse_csi2_bus(struct fwnode_handle *fwnode,  in v4l2_fwnode_endpoint_parse_csi2_bus()  argument
155 rval = fwnode_property_count_u32(fwnode, "data-lanes"); in v4l2_fwnode_endpoint_parse_csi2_bus()
160 fwnode_property_read_u32_array(fwnode, "data-lanes", array, in v4l2_fwnode_endpoint_parse_csi2_bus()
183 rval = fwnode_property_count_u32(fwnode, "lane-polarities"); in v4l2_fwnode_endpoint_parse_csi2_bus()
194 if (!fwnode_property_read_u32(fwnode, "clock-lanes", &v)) { in v4l2_fwnode_endpoint_parse_csi2_bus()
207 if (fwnode_property_present(fwnode, "clock-noncontinuous")) { in v4l2_fwnode_endpoint_parse_csi2_bus()
237 fwnode_property_read_u32_array(fwnode, in v4l2_fwnode_endpoint_parse_csi2_bus()
262 v4l2_fwnode_endpoint_parse_parallel_bus(struct fwnode_handle *fwnode, in v4l2_fwnode_endpoint_parse_parallel_bus() argument
273 if (!fwnode_property_read_u32(fwnode, "hsync-active", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
281 if (!fwnode_property_read_u32(fwnode, "vsync-active", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
289 if (!fwnode_property_read_u32(fwnode, "field-even-active", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
297 if (!fwnode_property_read_u32(fwnode, "pclk-sample", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
305 if (!fwnode_property_read_u32(fwnode, "data-active", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
313 if (fwnode_property_present(fwnode, "slave-mode")) { in v4l2_fwnode_endpoint_parse_parallel_bus()
322 if (!fwnode_property_read_u32(fwnode, "bus-width", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
327 if (!fwnode_property_read_u32(fwnode, "data-shift", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
332 if (!fwnode_property_read_u32(fwnode, "sync-on-green-active", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
340 if (!fwnode_property_read_u32(fwnode, "data-enable-active", &v)) { in v4l2_fwnode_endpoint_parse_parallel_bus()
368 v4l2_fwnode_endpoint_parse_csi1_bus(struct fwnode_handle *fwnode, in v4l2_fwnode_endpoint_parse_csi1_bus() argument
375 if (!fwnode_property_read_u32(fwnode, "clock-inv", &v)) { in v4l2_fwnode_endpoint_parse_csi1_bus()
380 if (!fwnode_property_read_u32(fwnode, "strobe", &v)) { in v4l2_fwnode_endpoint_parse_csi1_bus()
385 if (!fwnode_property_read_u32(fwnode, "data-lanes", &v)) { in v4l2_fwnode_endpoint_parse_csi1_bus()
390 if (!fwnode_property_read_u32(fwnode, "clock-lanes", &v)) { in v4l2_fwnode_endpoint_parse_csi1_bus()
401 static int __v4l2_fwnode_endpoint_parse(struct fwnode_handle *fwnode, in __v4l2_fwnode_endpoint_parse() argument
408 pr_debug("===== begin parsing endpoint %pfw\n", fwnode); in __v4l2_fwnode_endpoint_parse()
410 fwnode_property_read_u32(fwnode, "bus-type", &bus_type); in __v4l2_fwnode_endpoint_parse()
434 rval = v4l2_fwnode_endpoint_parse_csi2_bus(fwnode, vep, in __v4l2_fwnode_endpoint_parse()
440 v4l2_fwnode_endpoint_parse_parallel_bus(fwnode, vep, in __v4l2_fwnode_endpoint_parse()
450 v4l2_fwnode_endpoint_parse_csi1_bus(fwnode, vep, vep->bus_type); in __v4l2_fwnode_endpoint_parse()
455 rval = v4l2_fwnode_endpoint_parse_csi2_bus(fwnode, vep, in __v4l2_fwnode_endpoint_parse()
463 v4l2_fwnode_endpoint_parse_parallel_bus(fwnode, vep, in __v4l2_fwnode_endpoint_parse()
472 fwnode_graph_parse_endpoint(fwnode, &vep->base); in __v4l2_fwnode_endpoint_parse()
477 int v4l2_fwnode_endpoint_parse(struct fwnode_handle *fwnode, in v4l2_fwnode_endpoint_parse() argument
482 ret = __v4l2_fwnode_endpoint_parse(fwnode, vep); in v4l2_fwnode_endpoint_parse()
484 pr_debug("===== end parsing endpoint %pfw\n", fwnode); in v4l2_fwnode_endpoint_parse()
500 int v4l2_fwnode_endpoint_alloc_parse(struct fwnode_handle *fwnode, in v4l2_fwnode_endpoint_alloc_parse() argument
505 rval = __v4l2_fwnode_endpoint_parse(fwnode, vep); in v4l2_fwnode_endpoint_alloc_parse()
509 rval = fwnode_property_count_u64(fwnode, "link-frequencies"); in v4l2_fwnode_endpoint_alloc_parse()
521 rval = fwnode_property_read_u64_array(fwnode, in v4l2_fwnode_endpoint_alloc_parse()
535 pr_debug("===== end parsing endpoint %pfw\n", fwnode); in v4l2_fwnode_endpoint_alloc_parse()
541 int v4l2_fwnode_parse_link(struct fwnode_handle *fwnode, in v4l2_fwnode_parse_link() argument
548 fwnode_graph_parse_endpoint(fwnode, &fwep); in v4l2_fwnode_parse_link()
551 link->local_node = fwnode_graph_get_port_parent(fwnode); in v4l2_fwnode_parse_link()
553 fwnode = fwnode_graph_get_remote_endpoint(fwnode); in v4l2_fwnode_parse_link()
554 if (!fwnode) { in v4l2_fwnode_parse_link()
555 fwnode_handle_put(fwnode); in v4l2_fwnode_parse_link()
559 fwnode_graph_parse_endpoint(fwnode, &fwep); in v4l2_fwnode_parse_link()
562 link->remote_node = fwnode_graph_get_port_parent(fwnode); in v4l2_fwnode_parse_link()
601 v4l2_fwnode_connector_parse_analog(struct fwnode_handle *fwnode, in v4l2_fwnode_connector_parse_analog() argument
607 ret = fwnode_property_read_u32(fwnode, "sdtv-standards", &stds); in v4l2_fwnode_connector_parse_analog()
633 v4l2_fwnode_get_connector_type(struct fwnode_handle *fwnode) in v4l2_fwnode_get_connector_type() argument
638 if (!fwnode) in v4l2_fwnode_get_connector_type()
642 err = fwnode_property_read_string(fwnode, "compatible", &type_name); in v4l2_fwnode_get_connector_type()
649 int v4l2_fwnode_connector_parse(struct fwnode_handle *fwnode, in v4l2_fwnode_connector_parse() argument
657 if (!fwnode) in v4l2_fwnode_connector_parse()
664 connector_node = fwnode_graph_get_port_parent(fwnode); in v4l2_fwnode_connector_parse()
668 connector_node = fwnode_graph_get_remote_port_parent(fwnode); in v4l2_fwnode_connector_parse()
701 int v4l2_fwnode_connector_add_link(struct fwnode_handle *fwnode, in v4l2_fwnode_connector_add_link() argument
708 if (!fwnode || !connector || connector->type == V4L2_CONN_UNKNOWN) in v4l2_fwnode_connector_add_link()
711 connector_ep = fwnode_graph_get_remote_endpoint(fwnode); in v4l2_fwnode_connector_add_link()
743 struct fwnode_handle *fwnode = dev_fwnode(dev); in v4l2_fwnode_device_parse() local
750 ret = fwnode_property_read_u32(fwnode, "orientation", &val); in v4l2_fwnode_device_parse()
767 ret = fwnode_property_read_u32(fwnode, "rotation", &val); in v4l2_fwnode_device_parse()
798 asd->match.fwnode = in v4l2_async_nf_fwnode_parse_endpoint()
800 if (!asd->match.fwnode) { in v4l2_async_nf_fwnode_parse_endpoint()
836 fwnode_handle_put(asd->match.fwnode); in v4l2_async_nf_fwnode_parse_endpoint()
848 struct fwnode_handle *fwnode; in v4l2_async_nf_parse_fwnode_endpoints() local
854 fwnode_graph_for_each_endpoint(dev_fwnode(dev), fwnode) { in v4l2_async_nf_parse_fwnode_endpoints()
858 dev_fwnode = fwnode_graph_get_port_parent(fwnode); in v4l2_async_nf_parse_fwnode_endpoints()
866 fwnode, in v4l2_async_nf_parse_fwnode_endpoints()
873 fwnode_handle_put(fwnode); in v4l2_async_nf_parse_fwnode_endpoints()
903 fwnode_handle_put(args.fwnode); in v4l2_fwnode_reference_parse()
921 asd = v4l2_async_nf_add_fwnode(notifier, args.fwnode, in v4l2_fwnode_reference_parse()
923 fwnode_handle_put(args.fwnode); in v4l2_fwnode_reference_parse()
1096 v4l2_fwnode_reference_get_int_prop(struct fwnode_handle *fwnode, in v4l2_fwnode_reference_get_int_prop() argument
1113 ret = fwnode_property_get_reference_args(fwnode, prop, NULL, nprops, in v4l2_fwnode_reference_get_int_prop()
1122 fwnode = fwnode_args.fwnode; in v4l2_fwnode_reference_get_int_prop()
1127 fwnode_for_each_child_node(fwnode, child) { in v4l2_fwnode_reference_get_int_prop()
1136 fwnode_handle_put(fwnode); in v4l2_fwnode_reference_get_int_prop()
1140 fwnode = ERR_PTR(-ENOENT); in v4l2_fwnode_reference_get_int_prop()
1146 fwnode = child; in v4l2_fwnode_reference_get_int_prop()
1149 return fwnode; in v4l2_fwnode_reference_get_int_prop()
1186 struct fwnode_handle *fwnode; in v4l2_fwnode_reference_parse_int_props() local
1195 fwnode = v4l2_fwnode_reference_get_int_prop(dev_fwnode(dev), in v4l2_fwnode_reference_parse_int_props()
1198 if (IS_ERR(fwnode)) { in v4l2_fwnode_reference_parse_int_props()
1204 if (PTR_ERR(fwnode) != -ENOENT && in v4l2_fwnode_reference_parse_int_props()
1205 PTR_ERR(fwnode) != -ENODATA) in v4l2_fwnode_reference_parse_int_props()
1206 return PTR_ERR(fwnode); in v4l2_fwnode_reference_parse_int_props()
1209 fwnode_handle_put(fwnode); in v4l2_fwnode_reference_parse_int_props()
1214 !IS_ERR((fwnode = v4l2_fwnode_reference_get_int_prop(dev_fwnode(dev), in v4l2_fwnode_reference_parse_int_props()
1221 asd = v4l2_async_nf_add_fwnode(notifier, fwnode, in v4l2_fwnode_reference_parse_int_props()
1223 fwnode_handle_put(fwnode); in v4l2_fwnode_reference_parse_int_props()
1234 return !fwnode || PTR_ERR(fwnode) == -ENOENT ? 0 : PTR_ERR(fwnode); in v4l2_fwnode_reference_parse_int_props()