.stream_id = 1,
},
.name = "imx-dpu-crtc",
+ }, {
+ .pdata = { },
+ .name = "imx-drm-dpu-bliteng",
},
};
for (i = 0; i < client_num; i++) {
struct platform_device *pdev;
- struct device_node *of_node;
- bool is_disp;
-
- if (devtype->has_capture)
- is_disp = (i / 2) ? true : false;
- else
- is_disp = true;
-
- /* Associate subdevice with the corresponding port node */
- of_node = of_graph_get_port_by_id(dev->of_node, i);
- if (!of_node) {
- dev_info(dev, "no port@%d node in %s, not using %s%d\n",
- i, dev->of_node->full_name,
- is_disp ? "DISP" : "CSI", i % 2);
- continue;
+ struct device_node *of_node = NULL;
+ bool is_disp, is_bliteng;
+
+ if (devtype->has_capture) {
+ is_bliteng = (i == 4) ? true : false;
+ is_disp = (!is_bliteng) && ((i / 2) ? true : false);
+ } else {
+ is_bliteng = (i == 2) ? true : false;
+ is_disp = !is_bliteng;
+ }
+
+ if (is_bliteng) {
+ /* As bliteng has no of_node, so to use dpu's. */
+ of_node = dev->of_node;
+ } else {
+ /*
+ * Associate subdevice with the
+ * corresponding port node.
+ */
+ of_node = of_graph_get_port_by_id(dev->of_node, i);
+ if (!of_node) {
+ dev_info(dev, "no port@%d node in %s, not using %s%d\n",
+ i, dev->of_node->full_name,
+ is_disp ? "DISP" : "CSI", i % 2);
+ continue;
+ }
}
if (is_disp)