[libcamera-devel] Need help with IPU6 vs SimplePipeLine handler
Hans de Goede
hdegoede at redhat.com
Sun Oct 1 14:34:39 CEST 2023
Hi,
On 10/1/23 11:32, Laurent Pinchart wrote:
> Hi Hans,
>
> On Sun, Oct 01, 2023 at 11:14:33AM +0200, Hans de Goede via libcamera-devel wrote:
>> Hi All,
>>
>> I have raw bayer capture working from the cmdline, but after this naive patch:
>>
>> --- a/src/libcamera/pipeline/simple/simple.cpp
>> +++ b/src/libcamera/pipeline/simple/simple.cpp
>> @@ -196,6 +196,7 @@ static const SimplePipelineInfo supportedDevices[] = {
>> { "mxc-isi", {} },
>> { "qcom-camss", {} },
>> { "sun6i-csi", {} },
>> + { "intel-ipu6", {} },
>> };
>>
>> } /* namespace */
>>
>>
>> qcam still does not see the camera. I believe that this is likely caused
>> by the CSI2-receiver on the IPU6 not being so simple. It appears to have
>> some sort of cross-switch giving it a whole bunch of different inputs
>> and outputs and we need to set that up to connect the CSI data from the sensor
>> to one of the inputs and likewise make it dump the raw bayer data into
>> /dev/video#.
>
> Could you provide the output of media-ctl --print-dot ? It will help
> visualize the topology, the text representation is a monster.
Attached.
On 10/1/23 12:48, Andrey Konovalov wrote:
> Also if you prepend your qcam command with LIBCAMERA_LOG_LEVELS=SimplePipeline:DEBUG
> you will see how SimplePipeline handler is trying to configure the pipeline.
LIBCAMERA_LOG_LEVELS=SimplePipeline:DEBUG qcam
does not log anything other then the libcamera version.
"LIBCAMERA_LOG_LEVELS=*:DEBUG qcam" logs:
[0:15:16.743042795] [5307] INFO IPAManager ipa_manager.cpp:143 libcamera is not installed. Adding '/home/hans/projects/libcamera/redhat-linux-build/src/ipa' to the IPA search path
[0:15:16.763804299] [5307] DEBUG IPAModule ipa_module.cpp:334 ipa_ipu3.so: IPA module /home/hans/projects/libcamera/redhat-linux-build/src/ipa/ipu3/ipa_ipu3.so is signed
[0:15:16.763909675] [5307] DEBUG IPAManager ipa_manager.cpp:245 Loaded IPA module '/home/hans/projects/libcamera/redhat-linux-build/src/ipa/ipu3/ipa_ipu3.so'
[0:15:16.764150556] [5307] DEBUG IPAModule ipa_module.cpp:334 ipa_ipu3.so: IPA module /usr/lib64/libcamera/ipa_ipu3.so is signed
[0:15:16.764202449] [5307] DEBUG IPAManager ipa_manager.cpp:245 Loaded IPA module '/usr/lib64/libcamera/ipa_ipu3.so'
[0:15:16.764268394] [5307] INFO Camera camera_manager.cpp:284 libcamera v0.1.0+55-06d972b4
[0:15:16.764738627] [5319] DEBUG Camera camera_manager.cpp:69 Starting camera manager
[0:15:16.781475753] [5319] DEBUG DeviceEnumerator device_enumerator.cpp:224 New media device "intel-ipu6" created from /dev/media0
[0:15:16.781498544] [5319] DEBUG DeviceEnumerator device_enumerator_udev.cpp:96 Defer media device /dev/media0 due to 36 missing dependencies
[0:15:16.788819335] [5319] DEBUG DeviceEnumerator device_enumerator_udev.cpp:322 All dependencies for media device /dev/media0 found
[0:15:16.788839378] [5319] DEBUG DeviceEnumerator device_enumerator.cpp:252 Added device /dev/media0: intel-ipu6
[0:15:16.789012574] [5319] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerIPU3'
[0:15:16.789027627] [5319] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerUVC'
Hmm, this makes me wonder if it is even trying to use the SimplePipelineHandler at all ?
Regards,
Hans
>
>> Specifically I need to run the following script before capturing raw
>> bayer from /dev/video0 :
>>
>> ```
>> #!/bin/bash
>>
>> MDEV=/dev/media0
>>
>> media-ctl -d $MDEV -l "\"ov2740 19-0036\":0 -> \"Intel IPU6 CSI2 1\":0[1]"
>>
>> media-ctl -d $MDEV -V "\"ov2740 19-0036\":0 [fmt:SGRBG10/1932x1092]"
>> media-ctl -d $MDEV -V "\"Intel IPU6 CSI2 1\":0 [fmt:SGRBG10/1932x1092]"
>> media-ctl -d $MDEV -V "\"Intel IPU6 CSI2 1\":1 [fmt:SGRBG10/1932x1092]"
>>
>> media-ctl -d $MDEV -l "\"ov2740 19-0036\":0 -> \"Intel IPU6 CSI2 1\":0[1]"
>> media-ctl -d $MDEV -l "\"Intel IPU6 CSI2 1\":1 -> \"Intel IPU6 ISYS Capture 0\":0[5]"
>> ```
>>
>> Full media-ctl -p output below. So I guess that even without the ISP IPU6
>> is probably going to need its own pipelinehandler, or am I missing something here?
>
> [snip]
>
-------------- next part --------------
digraph board {
rankdir=TB
n00000001 [label="Intel IPU6 ISYS Capture 0\n/dev/video0", shape=box, style=filled, fillcolor=yellow]
n00000005 [label="Intel IPU6 ISYS Capture 1\n/dev/video1", shape=box, style=filled, fillcolor=yellow]
n00000009 [label="Intel IPU6 ISYS Capture 2\n/dev/video2", shape=box, style=filled, fillcolor=yellow]
n0000000d [label="Intel IPU6 ISYS Capture 3\n/dev/video3", shape=box, style=filled, fillcolor=yellow]
n00000011 [label="Intel IPU6 ISYS Capture 4\n/dev/video4", shape=box, style=filled, fillcolor=yellow]
n00000015 [label="Intel IPU6 ISYS Capture 5\n/dev/video5", shape=box, style=filled, fillcolor=yellow]
n00000019 [label="Intel IPU6 ISYS Capture 6\n/dev/video6", shape=box, style=filled, fillcolor=yellow]
n0000001d [label="Intel IPU6 ISYS Capture 7\n/dev/video7", shape=box, style=filled, fillcolor=yellow]
n00000021 [label="Intel IPU6 ISYS Capture 8\n/dev/video8", shape=box, style=filled, fillcolor=yellow]
n00000025 [label="Intel IPU6 ISYS Capture 9\n/dev/video9", shape=box, style=filled, fillcolor=yellow]
n00000029 [label="Intel IPU6 ISYS Capture 10\n/dev/video10", shape=box, style=filled, fillcolor=yellow]
n0000002d [label="Intel IPU6 ISYS Capture 11\n/dev/video11", shape=box, style=filled, fillcolor=yellow]
n00000031 [label="Intel IPU6 ISYS Capture 12\n/dev/video12", shape=box, style=filled, fillcolor=yellow]
n00000035 [label="Intel IPU6 ISYS Capture 13\n/dev/video13", shape=box, style=filled, fillcolor=yellow]
n00000039 [label="Intel IPU6 ISYS Capture 14\n/dev/video14", shape=box, style=filled, fillcolor=yellow]
n0000003d [label="Intel IPU6 ISYS Capture 15\n/dev/video15", shape=box, style=filled, fillcolor=yellow]
n00000041 [label="Intel IPU6 ISYS Capture 16\n/dev/video16", shape=box, style=filled, fillcolor=yellow]
n00000045 [label="Intel IPU6 ISYS Capture 17\n/dev/video17", shape=box, style=filled, fillcolor=yellow]
n00000049 [label="Intel IPU6 ISYS Capture 18\n/dev/video18", shape=box, style=filled, fillcolor=yellow]
n0000004d [label="Intel IPU6 ISYS Capture 19\n/dev/video19", shape=box, style=filled, fillcolor=yellow]
n00000051 [label="Intel IPU6 ISYS Capture 20\n/dev/video20", shape=box, style=filled, fillcolor=yellow]
n00000055 [label="Intel IPU6 ISYS Capture 21\n/dev/video21", shape=box, style=filled, fillcolor=yellow]
n00000059 [label="Intel IPU6 ISYS Capture 22\n/dev/video22", shape=box, style=filled, fillcolor=yellow]
n0000005d [label="Intel IPU6 ISYS Capture 23\n/dev/video23", shape=box, style=filled, fillcolor=yellow]
n00000061 [label="Intel IPU6 ISYS Capture 24\n/dev/video24", shape=box, style=filled, fillcolor=yellow]
n00000065 [label="Intel IPU6 ISYS Capture 25\n/dev/video25", shape=box, style=filled, fillcolor=yellow]
n00000069 [label="Intel IPU6 ISYS Capture 26\n/dev/video26", shape=box, style=filled, fillcolor=yellow]
n0000006d [label="Intel IPU6 ISYS Capture 27\n/dev/video27", shape=box, style=filled, fillcolor=yellow]
n00000071 [label="Intel IPU6 ISYS Capture 28\n/dev/video28", shape=box, style=filled, fillcolor=yellow]
n00000075 [label="Intel IPU6 ISYS Capture 29\n/dev/video29", shape=box, style=filled, fillcolor=yellow]
n00000079 [label="Intel IPU6 ISYS Capture 30\n/dev/video30", shape=box, style=filled, fillcolor=yellow]
n0000007d [label="{{<port0> 0} | Intel IPU6 CSI2 0\n/dev/v4l-subdev0 | {<port1> 1 | <port2> 2 | <port3> 3 | <port4> 4 | <port5> 5 | <port6> 6 | <port7> 7 | <port8> 8}}", shape=Mrecord, style=filled, fillcolor=green]
n0000007d:port1 -> n00000001 [style=dashed]
n0000007d:port2 -> n00000001 [style=dashed]
n0000007d:port3 -> n00000001 [style=dashed]
n0000007d:port4 -> n00000001 [style=dashed]
n0000007d:port5 -> n00000001 [style=dashed]
n0000007d:port6 -> n00000001 [style=dashed]
n0000007d:port7 -> n00000001 [style=dashed]
n0000007d:port8 -> n00000001 [style=dashed]
n0000007d:port1 -> n00000005 [style=dashed]
n0000007d:port2 -> n00000005 [style=dashed]
n0000007d:port3 -> n00000005 [style=dashed]
n0000007d:port4 -> n00000005 [style=dashed]
n0000007d:port5 -> n00000005 [style=dashed]
n0000007d:port6 -> n00000005 [style=dashed]
n0000007d:port7 -> n00000005 [style=dashed]
n0000007d:port8 -> n00000005 [style=dashed]
n0000007d:port1 -> n00000009 [style=dashed]
n0000007d:port2 -> n00000009 [style=dashed]
n0000007d:port3 -> n00000009 [style=dashed]
n0000007d:port4 -> n00000009 [style=dashed]
n0000007d:port5 -> n00000009 [style=dashed]
n0000007d:port6 -> n00000009 [style=dashed]
n0000007d:port7 -> n00000009 [style=dashed]
n0000007d:port8 -> n00000009 [style=dashed]
n0000007d:port1 -> n0000000d [style=dashed]
n0000007d:port2 -> n0000000d [style=dashed]
n0000007d:port3 -> n0000000d [style=dashed]
n0000007d:port4 -> n0000000d [style=dashed]
n0000007d:port5 -> n0000000d [style=dashed]
n0000007d:port6 -> n0000000d [style=dashed]
n0000007d:port7 -> n0000000d [style=dashed]
n0000007d:port8 -> n0000000d [style=dashed]
n0000007d:port1 -> n00000011 [style=dashed]
n0000007d:port2 -> n00000011 [style=dashed]
n0000007d:port3 -> n00000011 [style=dashed]
n0000007d:port4 -> n00000011 [style=dashed]
n0000007d:port5 -> n00000011 [style=dashed]
n0000007d:port6 -> n00000011 [style=dashed]
n0000007d:port7 -> n00000011 [style=dashed]
n0000007d:port8 -> n00000011 [style=dashed]
n0000007d:port1 -> n00000015 [style=dashed]
n0000007d:port2 -> n00000015 [style=dashed]
n0000007d:port3 -> n00000015 [style=dashed]
n0000007d:port4 -> n00000015 [style=dashed]
n0000007d:port5 -> n00000015 [style=dashed]
n0000007d:port6 -> n00000015 [style=dashed]
n0000007d:port7 -> n00000015 [style=dashed]
n0000007d:port8 -> n00000015 [style=dashed]
n0000007d:port1 -> n00000019 [style=dashed]
n0000007d:port2 -> n00000019 [style=dashed]
n0000007d:port3 -> n00000019 [style=dashed]
n0000007d:port4 -> n00000019 [style=dashed]
n0000007d:port5 -> n00000019 [style=dashed]
n0000007d:port6 -> n00000019 [style=dashed]
n0000007d:port7 -> n00000019 [style=dashed]
n0000007d:port8 -> n00000019 [style=dashed]
n0000007d:port1 -> n0000001d [style=dashed]
n0000007d:port2 -> n0000001d [style=dashed]
n0000007d:port3 -> n0000001d [style=dashed]
n0000007d:port4 -> n0000001d [style=dashed]
n0000007d:port5 -> n0000001d [style=dashed]
n0000007d:port6 -> n0000001d [style=dashed]
n0000007d:port7 -> n0000001d [style=dashed]
n0000007d:port8 -> n0000001d [style=dashed]
n0000007d:port1 -> n00000021 [style=dashed]
n0000007d:port2 -> n00000021 [style=dashed]
n0000007d:port3 -> n00000021 [style=dashed]
n0000007d:port4 -> n00000021 [style=dashed]
n0000007d:port5 -> n00000021 [style=dashed]
n0000007d:port6 -> n00000021 [style=dashed]
n0000007d:port7 -> n00000021 [style=dashed]
n0000007d:port8 -> n00000021 [style=dashed]
n0000007d:port1 -> n00000025 [style=dashed]
n0000007d:port2 -> n00000025 [style=dashed]
n0000007d:port3 -> n00000025 [style=dashed]
n0000007d:port4 -> n00000025 [style=dashed]
n0000007d:port5 -> n00000025 [style=dashed]
n0000007d:port6 -> n00000025 [style=dashed]
n0000007d:port7 -> n00000025 [style=dashed]
n0000007d:port8 -> n00000025 [style=dashed]
n0000007d:port1 -> n00000029 [style=dashed]
n0000007d:port2 -> n00000029 [style=dashed]
n0000007d:port3 -> n00000029 [style=dashed]
n0000007d:port4 -> n00000029 [style=dashed]
n0000007d:port5 -> n00000029 [style=dashed]
n0000007d:port6 -> n00000029 [style=dashed]
n0000007d:port7 -> n00000029 [style=dashed]
n0000007d:port8 -> n00000029 [style=dashed]
n0000007d:port1 -> n0000002d [style=dashed]
n0000007d:port2 -> n0000002d [style=dashed]
n0000007d:port3 -> n0000002d [style=dashed]
n0000007d:port4 -> n0000002d [style=dashed]
n0000007d:port5 -> n0000002d [style=dashed]
n0000007d:port6 -> n0000002d [style=dashed]
n0000007d:port7 -> n0000002d [style=dashed]
n0000007d:port8 -> n0000002d [style=dashed]
n0000007d:port1 -> n00000031 [style=dashed]
n0000007d:port2 -> n00000031 [style=dashed]
n0000007d:port3 -> n00000031 [style=dashed]
n0000007d:port4 -> n00000031 [style=dashed]
n0000007d:port5 -> n00000031 [style=dashed]
n0000007d:port6 -> n00000031 [style=dashed]
n0000007d:port7 -> n00000031 [style=dashed]
n0000007d:port8 -> n00000031 [style=dashed]
n0000007d:port1 -> n00000035 [style=dashed]
n0000007d:port2 -> n00000035 [style=dashed]
n0000007d:port3 -> n00000035 [style=dashed]
n0000007d:port4 -> n00000035 [style=dashed]
n0000007d:port5 -> n00000035 [style=dashed]
n0000007d:port6 -> n00000035 [style=dashed]
n0000007d:port7 -> n00000035 [style=dashed]
n0000007d:port8 -> n00000035 [style=dashed]
n0000007d:port1 -> n00000039 [style=dashed]
n0000007d:port2 -> n00000039 [style=dashed]
n0000007d:port3 -> n00000039 [style=dashed]
n0000007d:port4 -> n00000039 [style=dashed]
n0000007d:port5 -> n00000039 [style=dashed]
n0000007d:port6 -> n00000039 [style=dashed]
n0000007d:port7 -> n00000039 [style=dashed]
n0000007d:port8 -> n00000039 [style=dashed]
n0000007d:port1 -> n0000003d [style=dashed]
n0000007d:port2 -> n0000003d [style=dashed]
n0000007d:port3 -> n0000003d [style=dashed]
n0000007d:port4 -> n0000003d [style=dashed]
n0000007d:port5 -> n0000003d [style=dashed]
n0000007d:port6 -> n0000003d [style=dashed]
n0000007d:port7 -> n0000003d [style=dashed]
n0000007d:port8 -> n0000003d [style=dashed]
n0000007d:port1 -> n00000041 [style=dashed]
n0000007d:port2 -> n00000041 [style=dashed]
n0000007d:port3 -> n00000041 [style=dashed]
n0000007d:port4 -> n00000041 [style=dashed]
n0000007d:port5 -> n00000041 [style=dashed]
n0000007d:port6 -> n00000041 [style=dashed]
n0000007d:port7 -> n00000041 [style=dashed]
n0000007d:port8 -> n00000041 [style=dashed]
n0000007d:port1 -> n00000045 [style=dashed]
n0000007d:port2 -> n00000045 [style=dashed]
n0000007d:port3 -> n00000045 [style=dashed]
n0000007d:port4 -> n00000045 [style=dashed]
n0000007d:port5 -> n00000045 [style=dashed]
n0000007d:port6 -> n00000045 [style=dashed]
n0000007d:port7 -> n00000045 [style=dashed]
n0000007d:port8 -> n00000045 [style=dashed]
n0000007d:port1 -> n00000049 [style=dashed]
n0000007d:port2 -> n00000049 [style=dashed]
n0000007d:port3 -> n00000049 [style=dashed]
n0000007d:port4 -> n00000049 [style=dashed]
n0000007d:port5 -> n00000049 [style=dashed]
n0000007d:port6 -> n00000049 [style=dashed]
n0000007d:port7 -> n00000049 [style=dashed]
n0000007d:port8 -> n00000049 [style=dashed]
n0000007d:port1 -> n0000004d [style=dashed]
n0000007d:port2 -> n0000004d [style=dashed]
n0000007d:port3 -> n0000004d [style=dashed]
n0000007d:port4 -> n0000004d [style=dashed]
n0000007d:port5 -> n0000004d [style=dashed]
n0000007d:port6 -> n0000004d [style=dashed]
n0000007d:port7 -> n0000004d [style=dashed]
n0000007d:port8 -> n0000004d [style=dashed]
n0000007d:port1 -> n00000051 [style=dashed]
n0000007d:port2 -> n00000051 [style=dashed]
n0000007d:port3 -> n00000051 [style=dashed]
n0000007d:port4 -> n00000051 [style=dashed]
n0000007d:port5 -> n00000051 [style=dashed]
n0000007d:port6 -> n00000051 [style=dashed]
n0000007d:port7 -> n00000051 [style=dashed]
n0000007d:port8 -> n00000051 [style=dashed]
n0000007d:port1 -> n00000055 [style=dashed]
n0000007d:port2 -> n00000055 [style=dashed]
n0000007d:port3 -> n00000055 [style=dashed]
n0000007d:port4 -> n00000055 [style=dashed]
n0000007d:port5 -> n00000055 [style=dashed]
n0000007d:port6 -> n00000055 [style=dashed]
n0000007d:port7 -> n00000055 [style=dashed]
n0000007d:port8 -> n00000055 [style=dashed]
n0000007d:port1 -> n00000059 [style=dashed]
n0000007d:port2 -> n00000059 [style=dashed]
n0000007d:port3 -> n00000059 [style=dashed]
n0000007d:port4 -> n00000059 [style=dashed]
n0000007d:port5 -> n00000059 [style=dashed]
n0000007d:port6 -> n00000059 [style=dashed]
n0000007d:port7 -> n00000059 [style=dashed]
n0000007d:port8 -> n00000059 [style=dashed]
n0000007d:port1 -> n0000005d [style=dashed]
n0000007d:port2 -> n0000005d [style=dashed]
n0000007d:port3 -> n0000005d [style=dashed]
n0000007d:port4 -> n0000005d [style=dashed]
n0000007d:port5 -> n0000005d [style=dashed]
n0000007d:port6 -> n0000005d [style=dashed]
n0000007d:port7 -> n0000005d [style=dashed]
n0000007d:port8 -> n0000005d [style=dashed]
n0000007d:port1 -> n00000061 [style=dashed]
n0000007d:port2 -> n00000061 [style=dashed]
n0000007d:port3 -> n00000061 [style=dashed]
n0000007d:port4 -> n00000061 [style=dashed]
n0000007d:port5 -> n00000061 [style=dashed]
n0000007d:port6 -> n00000061 [style=dashed]
n0000007d:port7 -> n00000061 [style=dashed]
n0000007d:port8 -> n00000061 [style=dashed]
n0000007d:port1 -> n00000065 [style=dashed]
n0000007d:port2 -> n00000065 [style=dashed]
n0000007d:port3 -> n00000065 [style=dashed]
n0000007d:port4 -> n00000065 [style=dashed]
n0000007d:port5 -> n00000065 [style=dashed]
n0000007d:port6 -> n00000065 [style=dashed]
n0000007d:port7 -> n00000065 [style=dashed]
n0000007d:port8 -> n00000065 [style=dashed]
n0000007d:port1 -> n00000069 [style=dashed]
n0000007d:port2 -> n00000069 [style=dashed]
n0000007d:port3 -> n00000069 [style=dashed]
n0000007d:port4 -> n00000069 [style=dashed]
n0000007d:port5 -> n00000069 [style=dashed]
n0000007d:port6 -> n00000069 [style=dashed]
n0000007d:port7 -> n00000069 [style=dashed]
n0000007d:port8 -> n00000069 [style=dashed]
n0000007d:port1 -> n0000006d [style=dashed]
n0000007d:port2 -> n0000006d [style=dashed]
n0000007d:port3 -> n0000006d [style=dashed]
n0000007d:port4 -> n0000006d [style=dashed]
n0000007d:port5 -> n0000006d [style=dashed]
n0000007d:port6 -> n0000006d [style=dashed]
n0000007d:port7 -> n0000006d [style=dashed]
n0000007d:port8 -> n0000006d [style=dashed]
n0000007d:port1 -> n00000071 [style=dashed]
n0000007d:port2 -> n00000071 [style=dashed]
n0000007d:port3 -> n00000071 [style=dashed]
n0000007d:port4 -> n00000071 [style=dashed]
n0000007d:port5 -> n00000071 [style=dashed]
n0000007d:port6 -> n00000071 [style=dashed]
n0000007d:port7 -> n00000071 [style=dashed]
n0000007d:port8 -> n00000071 [style=dashed]
n0000007d:port1 -> n00000075 [style=dashed]
n0000007d:port2 -> n00000075 [style=dashed]
n0000007d:port3 -> n00000075 [style=dashed]
n0000007d:port4 -> n00000075 [style=dashed]
n0000007d:port5 -> n00000075 [style=dashed]
n0000007d:port6 -> n00000075 [style=dashed]
n0000007d:port7 -> n00000075 [style=dashed]
n0000007d:port8 -> n00000075 [style=dashed]
n0000007d:port1 -> n00000079 [style=dashed]
n0000007d:port2 -> n00000079 [style=dashed]
n0000007d:port3 -> n00000079 [style=dashed]
n0000007d:port4 -> n00000079 [style=dashed]
n0000007d:port5 -> n00000079 [style=dashed]
n0000007d:port6 -> n00000079 [style=dashed]
n0000007d:port7 -> n00000079 [style=dashed]
n0000007d:port8 -> n00000079 [style=dashed]
n00000087 [label="{{<port0> 0} | Intel IPU6 CSI2 1\n/dev/v4l-subdev1 | {<port1> 1 | <port2> 2 | <port3> 3 | <port4> 4 | <port5> 5 | <port6> 6 | <port7> 7 | <port8> 8}}", shape=Mrecord, style=filled, fillcolor=green]
n00000087:port1 -> n00000001
n00000087:port2 -> n00000001 [style=dashed]
n00000087:port3 -> n00000001 [style=dashed]
n00000087:port4 -> n00000001 [style=dashed]
n00000087:port5 -> n00000001 [style=dashed]
n00000087:port6 -> n00000001 [style=dashed]
n00000087:port7 -> n00000001 [style=dashed]
n00000087:port8 -> n00000001 [style=dashed]
n00000087:port1 -> n00000005 [style=dashed]
n00000087:port2 -> n00000005 [style=dashed]
n00000087:port3 -> n00000005 [style=dashed]
n00000087:port4 -> n00000005 [style=dashed]
n00000087:port5 -> n00000005 [style=dashed]
n00000087:port6 -> n00000005 [style=dashed]
n00000087:port7 -> n00000005 [style=dashed]
n00000087:port8 -> n00000005 [style=dashed]
n00000087:port1 -> n00000009 [style=dashed]
n00000087:port2 -> n00000009 [style=dashed]
n00000087:port3 -> n00000009 [style=dashed]
n00000087:port4 -> n00000009 [style=dashed]
n00000087:port5 -> n00000009 [style=dashed]
n00000087:port6 -> n00000009 [style=dashed]
n00000087:port7 -> n00000009 [style=dashed]
n00000087:port8 -> n00000009 [style=dashed]
n00000087:port1 -> n0000000d [style=dashed]
n00000087:port2 -> n0000000d [style=dashed]
n00000087:port3 -> n0000000d [style=dashed]
n00000087:port4 -> n0000000d [style=dashed]
n00000087:port5 -> n0000000d [style=dashed]
n00000087:port6 -> n0000000d [style=dashed]
n00000087:port7 -> n0000000d [style=dashed]
n00000087:port8 -> n0000000d [style=dashed]
n00000087:port1 -> n00000011 [style=dashed]
n00000087:port2 -> n00000011 [style=dashed]
n00000087:port3 -> n00000011 [style=dashed]
n00000087:port4 -> n00000011 [style=dashed]
n00000087:port5 -> n00000011 [style=dashed]
n00000087:port6 -> n00000011 [style=dashed]
n00000087:port7 -> n00000011 [style=dashed]
n00000087:port8 -> n00000011 [style=dashed]
n00000087:port1 -> n00000015 [style=dashed]
n00000087:port2 -> n00000015 [style=dashed]
n00000087:port3 -> n00000015 [style=dashed]
n00000087:port4 -> n00000015 [style=dashed]
n00000087:port5 -> n00000015 [style=dashed]
n00000087:port6 -> n00000015 [style=dashed]
n00000087:port7 -> n00000015 [style=dashed]
n00000087:port8 -> n00000015 [style=dashed]
n00000087:port1 -> n00000019 [style=dashed]
n00000087:port2 -> n00000019 [style=dashed]
n00000087:port3 -> n00000019 [style=dashed]
n00000087:port4 -> n00000019 [style=dashed]
n00000087:port5 -> n00000019 [style=dashed]
n00000087:port6 -> n00000019 [style=dashed]
n00000087:port7 -> n00000019 [style=dashed]
n00000087:port8 -> n00000019 [style=dashed]
n00000087:port1 -> n0000001d [style=dashed]
n00000087:port2 -> n0000001d [style=dashed]
n00000087:port3 -> n0000001d [style=dashed]
n00000087:port4 -> n0000001d [style=dashed]
n00000087:port5 -> n0000001d [style=dashed]
n00000087:port6 -> n0000001d [style=dashed]
n00000087:port7 -> n0000001d [style=dashed]
n00000087:port8 -> n0000001d [style=dashed]
n00000087:port1 -> n00000021 [style=dashed]
n00000087:port2 -> n00000021 [style=dashed]
n00000087:port3 -> n00000021 [style=dashed]
n00000087:port4 -> n00000021 [style=dashed]
n00000087:port5 -> n00000021 [style=dashed]
n00000087:port6 -> n00000021 [style=dashed]
n00000087:port7 -> n00000021 [style=dashed]
n00000087:port8 -> n00000021 [style=dashed]
n00000087:port1 -> n00000025 [style=dashed]
n00000087:port2 -> n00000025 [style=dashed]
n00000087:port3 -> n00000025 [style=dashed]
n00000087:port4 -> n00000025 [style=dashed]
n00000087:port5 -> n00000025 [style=dashed]
n00000087:port6 -> n00000025 [style=dashed]
n00000087:port7 -> n00000025 [style=dashed]
n00000087:port8 -> n00000025 [style=dashed]
n00000087:port1 -> n00000029 [style=dashed]
n00000087:port2 -> n00000029 [style=dashed]
n00000087:port3 -> n00000029 [style=dashed]
n00000087:port4 -> n00000029 [style=dashed]
n00000087:port5 -> n00000029 [style=dashed]
n00000087:port6 -> n00000029 [style=dashed]
n00000087:port7 -> n00000029 [style=dashed]
n00000087:port8 -> n00000029 [style=dashed]
n00000087:port1 -> n0000002d [style=dashed]
n00000087:port2 -> n0000002d [style=dashed]
n00000087:port3 -> n0000002d [style=dashed]
n00000087:port4 -> n0000002d [style=dashed]
n00000087:port5 -> n0000002d [style=dashed]
n00000087:port6 -> n0000002d [style=dashed]
n00000087:port7 -> n0000002d [style=dashed]
n00000087:port8 -> n0000002d [style=dashed]
n00000087:port1 -> n00000031 [style=dashed]
n00000087:port2 -> n00000031 [style=dashed]
n00000087:port3 -> n00000031 [style=dashed]
n00000087:port4 -> n00000031 [style=dashed]
n00000087:port5 -> n00000031 [style=dashed]
n00000087:port6 -> n00000031 [style=dashed]
n00000087:port7 -> n00000031 [style=dashed]
n00000087:port8 -> n00000031 [style=dashed]
n00000087:port1 -> n00000035 [style=dashed]
n00000087:port2 -> n00000035 [style=dashed]
n00000087:port3 -> n00000035 [style=dashed]
n00000087:port4 -> n00000035 [style=dashed]
n00000087:port5 -> n00000035 [style=dashed]
n00000087:port6 -> n00000035 [style=dashed]
n00000087:port7 -> n00000035 [style=dashed]
n00000087:port8 -> n00000035 [style=dashed]
n00000087:port1 -> n00000039 [style=dashed]
n00000087:port2 -> n00000039 [style=dashed]
n00000087:port3 -> n00000039 [style=dashed]
n00000087:port4 -> n00000039 [style=dashed]
n00000087:port5 -> n00000039 [style=dashed]
n00000087:port6 -> n00000039 [style=dashed]
n00000087:port7 -> n00000039 [style=dashed]
n00000087:port8 -> n00000039 [style=dashed]
n00000087:port1 -> n0000003d [style=dashed]
n00000087:port2 -> n0000003d [style=dashed]
n00000087:port3 -> n0000003d [style=dashed]
n00000087:port4 -> n0000003d [style=dashed]
n00000087:port5 -> n0000003d [style=dashed]
n00000087:port6 -> n0000003d [style=dashed]
n00000087:port7 -> n0000003d [style=dashed]
n00000087:port8 -> n0000003d [style=dashed]
n00000087:port1 -> n00000041 [style=dashed]
n00000087:port2 -> n00000041 [style=dashed]
n00000087:port3 -> n00000041 [style=dashed]
n00000087:port4 -> n00000041 [style=dashed]
n00000087:port5 -> n00000041 [style=dashed]
n00000087:port6 -> n00000041 [style=dashed]
n00000087:port7 -> n00000041 [style=dashed]
n00000087:port8 -> n00000041 [style=dashed]
n00000087:port1 -> n00000045 [style=dashed]
n00000087:port2 -> n00000045 [style=dashed]
n00000087:port3 -> n00000045 [style=dashed]
n00000087:port4 -> n00000045 [style=dashed]
n00000087:port5 -> n00000045 [style=dashed]
n00000087:port6 -> n00000045 [style=dashed]
n00000087:port7 -> n00000045 [style=dashed]
n00000087:port8 -> n00000045 [style=dashed]
n00000087:port1 -> n00000049 [style=dashed]
n00000087:port2 -> n00000049 [style=dashed]
n00000087:port3 -> n00000049 [style=dashed]
n00000087:port4 -> n00000049 [style=dashed]
n00000087:port5 -> n00000049 [style=dashed]
n00000087:port6 -> n00000049 [style=dashed]
n00000087:port7 -> n00000049 [style=dashed]
n00000087:port8 -> n00000049 [style=dashed]
n00000087:port1 -> n0000004d [style=dashed]
n00000087:port2 -> n0000004d [style=dashed]
n00000087:port3 -> n0000004d [style=dashed]
n00000087:port4 -> n0000004d [style=dashed]
n00000087:port5 -> n0000004d [style=dashed]
n00000087:port6 -> n0000004d [style=dashed]
n00000087:port7 -> n0000004d [style=dashed]
n00000087:port8 -> n0000004d [style=dashed]
n00000087:port1 -> n00000051 [style=dashed]
n00000087:port2 -> n00000051 [style=dashed]
n00000087:port3 -> n00000051 [style=dashed]
n00000087:port4 -> n00000051 [style=dashed]
n00000087:port5 -> n00000051 [style=dashed]
n00000087:port6 -> n00000051 [style=dashed]
n00000087:port7 -> n00000051 [style=dashed]
n00000087:port8 -> n00000051 [style=dashed]
n00000087:port1 -> n00000055 [style=dashed]
n00000087:port2 -> n00000055 [style=dashed]
n00000087:port3 -> n00000055 [style=dashed]
n00000087:port4 -> n00000055 [style=dashed]
n00000087:port5 -> n00000055 [style=dashed]
n00000087:port6 -> n00000055 [style=dashed]
n00000087:port7 -> n00000055 [style=dashed]
n00000087:port8 -> n00000055 [style=dashed]
n00000087:port1 -> n00000059 [style=dashed]
n00000087:port2 -> n00000059 [style=dashed]
n00000087:port3 -> n00000059 [style=dashed]
n00000087:port4 -> n00000059 [style=dashed]
n00000087:port5 -> n00000059 [style=dashed]
n00000087:port6 -> n00000059 [style=dashed]
n00000087:port7 -> n00000059 [style=dashed]
n00000087:port8 -> n00000059 [style=dashed]
n00000087:port1 -> n0000005d [style=dashed]
n00000087:port2 -> n0000005d [style=dashed]
n00000087:port3 -> n0000005d [style=dashed]
n00000087:port4 -> n0000005d [style=dashed]
n00000087:port5 -> n0000005d [style=dashed]
n00000087:port6 -> n0000005d [style=dashed]
n00000087:port7 -> n0000005d [style=dashed]
n00000087:port8 -> n0000005d [style=dashed]
n00000087:port1 -> n00000061 [style=dashed]
n00000087:port2 -> n00000061 [style=dashed]
n00000087:port3 -> n00000061 [style=dashed]
n00000087:port4 -> n00000061 [style=dashed]
n00000087:port5 -> n00000061 [style=dashed]
n00000087:port6 -> n00000061 [style=dashed]
n00000087:port7 -> n00000061 [style=dashed]
n00000087:port8 -> n00000061 [style=dashed]
n00000087:port1 -> n00000065 [style=dashed]
n00000087:port2 -> n00000065 [style=dashed]
n00000087:port3 -> n00000065 [style=dashed]
n00000087:port4 -> n00000065 [style=dashed]
n00000087:port5 -> n00000065 [style=dashed]
n00000087:port6 -> n00000065 [style=dashed]
n00000087:port7 -> n00000065 [style=dashed]
n00000087:port8 -> n00000065 [style=dashed]
n00000087:port1 -> n00000069 [style=dashed]
n00000087:port2 -> n00000069 [style=dashed]
n00000087:port3 -> n00000069 [style=dashed]
n00000087:port4 -> n00000069 [style=dashed]
n00000087:port5 -> n00000069 [style=dashed]
n00000087:port6 -> n00000069 [style=dashed]
n00000087:port7 -> n00000069 [style=dashed]
n00000087:port8 -> n00000069 [style=dashed]
n00000087:port1 -> n0000006d [style=dashed]
n00000087:port2 -> n0000006d [style=dashed]
n00000087:port3 -> n0000006d [style=dashed]
n00000087:port4 -> n0000006d [style=dashed]
n00000087:port5 -> n0000006d [style=dashed]
n00000087:port6 -> n0000006d [style=dashed]
n00000087:port7 -> n0000006d [style=dashed]
n00000087:port8 -> n0000006d [style=dashed]
n00000087:port1 -> n00000071 [style=dashed]
n00000087:port2 -> n00000071 [style=dashed]
n00000087:port3 -> n00000071 [style=dashed]
n00000087:port4 -> n00000071 [style=dashed]
n00000087:port5 -> n00000071 [style=dashed]
n00000087:port6 -> n00000071 [style=dashed]
n00000087:port7 -> n00000071 [style=dashed]
n00000087:port8 -> n00000071 [style=dashed]
n00000087:port1 -> n00000075 [style=dashed]
n00000087:port2 -> n00000075 [style=dashed]
n00000087:port3 -> n00000075 [style=dashed]
n00000087:port4 -> n00000075 [style=dashed]
n00000087:port5 -> n00000075 [style=dashed]
n00000087:port6 -> n00000075 [style=dashed]
n00000087:port7 -> n00000075 [style=dashed]
n00000087:port8 -> n00000075 [style=dashed]
n00000087:port1 -> n00000079 [style=dashed]
n00000087:port2 -> n00000079 [style=dashed]
n00000087:port3 -> n00000079 [style=dashed]
n00000087:port4 -> n00000079 [style=dashed]
n00000087:port5 -> n00000079 [style=dashed]
n00000087:port6 -> n00000079 [style=dashed]
n00000087:port7 -> n00000079 [style=dashed]
n00000087:port8 -> n00000079 [style=dashed]
n00000091 [label="{{<port0> 0} | Intel IPU6 CSI2 2\n/dev/v4l-subdev2 | {<port1> 1 | <port2> 2 | <port3> 3 | <port4> 4 | <port5> 5 | <port6> 6 | <port7> 7 | <port8> 8}}", shape=Mrecord, style=filled, fillcolor=green]
n00000091:port1 -> n00000001 [style=dashed]
n00000091:port2 -> n00000001 [style=dashed]
n00000091:port3 -> n00000001 [style=dashed]
n00000091:port4 -> n00000001 [style=dashed]
n00000091:port5 -> n00000001 [style=dashed]
n00000091:port6 -> n00000001 [style=dashed]
n00000091:port7 -> n00000001 [style=dashed]
n00000091:port8 -> n00000001 [style=dashed]
n00000091:port1 -> n00000005 [style=dashed]
n00000091:port2 -> n00000005 [style=dashed]
n00000091:port3 -> n00000005 [style=dashed]
n00000091:port4 -> n00000005 [style=dashed]
n00000091:port5 -> n00000005 [style=dashed]
n00000091:port6 -> n00000005 [style=dashed]
n00000091:port7 -> n00000005 [style=dashed]
n00000091:port8 -> n00000005 [style=dashed]
n00000091:port1 -> n00000009 [style=dashed]
n00000091:port2 -> n00000009 [style=dashed]
n00000091:port3 -> n00000009 [style=dashed]
n00000091:port4 -> n00000009 [style=dashed]
n00000091:port5 -> n00000009 [style=dashed]
n00000091:port6 -> n00000009 [style=dashed]
n00000091:port7 -> n00000009 [style=dashed]
n00000091:port8 -> n00000009 [style=dashed]
n00000091:port1 -> n0000000d [style=dashed]
n00000091:port2 -> n0000000d [style=dashed]
n00000091:port3 -> n0000000d [style=dashed]
n00000091:port4 -> n0000000d [style=dashed]
n00000091:port5 -> n0000000d [style=dashed]
n00000091:port6 -> n0000000d [style=dashed]
n00000091:port7 -> n0000000d [style=dashed]
n00000091:port8 -> n0000000d [style=dashed]
n00000091:port1 -> n00000011 [style=dashed]
n00000091:port2 -> n00000011 [style=dashed]
n00000091:port3 -> n00000011 [style=dashed]
n00000091:port4 -> n00000011 [style=dashed]
n00000091:port5 -> n00000011 [style=dashed]
n00000091:port6 -> n00000011 [style=dashed]
n00000091:port7 -> n00000011 [style=dashed]
n00000091:port8 -> n00000011 [style=dashed]
n00000091:port1 -> n00000015 [style=dashed]
n00000091:port2 -> n00000015 [style=dashed]
n00000091:port3 -> n00000015 [style=dashed]
n00000091:port4 -> n00000015 [style=dashed]
n00000091:port5 -> n00000015 [style=dashed]
n00000091:port6 -> n00000015 [style=dashed]
n00000091:port7 -> n00000015 [style=dashed]
n00000091:port8 -> n00000015 [style=dashed]
n00000091:port1 -> n00000019 [style=dashed]
n00000091:port2 -> n00000019 [style=dashed]
n00000091:port3 -> n00000019 [style=dashed]
n00000091:port4 -> n00000019 [style=dashed]
n00000091:port5 -> n00000019 [style=dashed]
n00000091:port6 -> n00000019 [style=dashed]
n00000091:port7 -> n00000019 [style=dashed]
n00000091:port8 -> n00000019 [style=dashed]
n00000091:port1 -> n0000001d [style=dashed]
n00000091:port2 -> n0000001d [style=dashed]
n00000091:port3 -> n0000001d [style=dashed]
n00000091:port4 -> n0000001d [style=dashed]
n00000091:port5 -> n0000001d [style=dashed]
n00000091:port6 -> n0000001d [style=dashed]
n00000091:port7 -> n0000001d [style=dashed]
n00000091:port8 -> n0000001d [style=dashed]
n00000091:port1 -> n00000021 [style=dashed]
n00000091:port2 -> n00000021 [style=dashed]
n00000091:port3 -> n00000021 [style=dashed]
n00000091:port4 -> n00000021 [style=dashed]
n00000091:port5 -> n00000021 [style=dashed]
n00000091:port6 -> n00000021 [style=dashed]
n00000091:port7 -> n00000021 [style=dashed]
n00000091:port8 -> n00000021 [style=dashed]
n00000091:port1 -> n00000025 [style=dashed]
n00000091:port2 -> n00000025 [style=dashed]
n00000091:port3 -> n00000025 [style=dashed]
n00000091:port4 -> n00000025 [style=dashed]
n00000091:port5 -> n00000025 [style=dashed]
n00000091:port6 -> n00000025 [style=dashed]
n00000091:port7 -> n00000025 [style=dashed]
n00000091:port8 -> n00000025 [style=dashed]
n00000091:port1 -> n00000029 [style=dashed]
n00000091:port2 -> n00000029 [style=dashed]
n00000091:port3 -> n00000029 [style=dashed]
n00000091:port4 -> n00000029 [style=dashed]
n00000091:port5 -> n00000029 [style=dashed]
n00000091:port6 -> n00000029 [style=dashed]
n00000091:port7 -> n00000029 [style=dashed]
n00000091:port8 -> n00000029 [style=dashed]
n00000091:port1 -> n0000002d [style=dashed]
n00000091:port2 -> n0000002d [style=dashed]
n00000091:port3 -> n0000002d [style=dashed]
n00000091:port4 -> n0000002d [style=dashed]
n00000091:port5 -> n0000002d [style=dashed]
n00000091:port6 -> n0000002d [style=dashed]
n00000091:port7 -> n0000002d [style=dashed]
n00000091:port8 -> n0000002d [style=dashed]
n00000091:port1 -> n00000031 [style=dashed]
n00000091:port2 -> n00000031 [style=dashed]
n00000091:port3 -> n00000031 [style=dashed]
n00000091:port4 -> n00000031 [style=dashed]
n00000091:port5 -> n00000031 [style=dashed]
n00000091:port6 -> n00000031 [style=dashed]
n00000091:port7 -> n00000031 [style=dashed]
n00000091:port8 -> n00000031 [style=dashed]
n00000091:port1 -> n00000035 [style=dashed]
n00000091:port2 -> n00000035 [style=dashed]
n00000091:port3 -> n00000035 [style=dashed]
n00000091:port4 -> n00000035 [style=dashed]
n00000091:port5 -> n00000035 [style=dashed]
n00000091:port6 -> n00000035 [style=dashed]
n00000091:port7 -> n00000035 [style=dashed]
n00000091:port8 -> n00000035 [style=dashed]
n00000091:port1 -> n00000039 [style=dashed]
n00000091:port2 -> n00000039 [style=dashed]
n00000091:port3 -> n00000039 [style=dashed]
n00000091:port4 -> n00000039 [style=dashed]
n00000091:port5 -> n00000039 [style=dashed]
n00000091:port6 -> n00000039 [style=dashed]
n00000091:port7 -> n00000039 [style=dashed]
n00000091:port8 -> n00000039 [style=dashed]
n00000091:port1 -> n0000003d [style=dashed]
n00000091:port2 -> n0000003d [style=dashed]
n00000091:port3 -> n0000003d [style=dashed]
n00000091:port4 -> n0000003d [style=dashed]
n00000091:port5 -> n0000003d [style=dashed]
n00000091:port6 -> n0000003d [style=dashed]
n00000091:port7 -> n0000003d [style=dashed]
n00000091:port8 -> n0000003d [style=dashed]
n00000091:port1 -> n00000041 [style=dashed]
n00000091:port2 -> n00000041 [style=dashed]
n00000091:port3 -> n00000041 [style=dashed]
n00000091:port4 -> n00000041 [style=dashed]
n00000091:port5 -> n00000041 [style=dashed]
n00000091:port6 -> n00000041 [style=dashed]
n00000091:port7 -> n00000041 [style=dashed]
n00000091:port8 -> n00000041 [style=dashed]
n00000091:port1 -> n00000045 [style=dashed]
n00000091:port2 -> n00000045 [style=dashed]
n00000091:port3 -> n00000045 [style=dashed]
n00000091:port4 -> n00000045 [style=dashed]
n00000091:port5 -> n00000045 [style=dashed]
n00000091:port6 -> n00000045 [style=dashed]
n00000091:port7 -> n00000045 [style=dashed]
n00000091:port8 -> n00000045 [style=dashed]
n00000091:port1 -> n00000049 [style=dashed]
n00000091:port2 -> n00000049 [style=dashed]
n00000091:port3 -> n00000049 [style=dashed]
n00000091:port4 -> n00000049 [style=dashed]
n00000091:port5 -> n00000049 [style=dashed]
n00000091:port6 -> n00000049 [style=dashed]
n00000091:port7 -> n00000049 [style=dashed]
n00000091:port8 -> n00000049 [style=dashed]
n00000091:port1 -> n0000004d [style=dashed]
n00000091:port2 -> n0000004d [style=dashed]
n00000091:port3 -> n0000004d [style=dashed]
n00000091:port4 -> n0000004d [style=dashed]
n00000091:port5 -> n0000004d [style=dashed]
n00000091:port6 -> n0000004d [style=dashed]
n00000091:port7 -> n0000004d [style=dashed]
n00000091:port8 -> n0000004d [style=dashed]
n00000091:port1 -> n00000051 [style=dashed]
n00000091:port2 -> n00000051 [style=dashed]
n00000091:port3 -> n00000051 [style=dashed]
n00000091:port4 -> n00000051 [style=dashed]
n00000091:port5 -> n00000051 [style=dashed]
n00000091:port6 -> n00000051 [style=dashed]
n00000091:port7 -> n00000051 [style=dashed]
n00000091:port8 -> n00000051 [style=dashed]
n00000091:port1 -> n00000055 [style=dashed]
n00000091:port2 -> n00000055 [style=dashed]
n00000091:port3 -> n00000055 [style=dashed]
n00000091:port4 -> n00000055 [style=dashed]
n00000091:port5 -> n00000055 [style=dashed]
n00000091:port6 -> n00000055 [style=dashed]
n00000091:port7 -> n00000055 [style=dashed]
n00000091:port8 -> n00000055 [style=dashed]
n00000091:port1 -> n00000059 [style=dashed]
n00000091:port2 -> n00000059 [style=dashed]
n00000091:port3 -> n00000059 [style=dashed]
n00000091:port4 -> n00000059 [style=dashed]
n00000091:port5 -> n00000059 [style=dashed]
n00000091:port6 -> n00000059 [style=dashed]
n00000091:port7 -> n00000059 [style=dashed]
n00000091:port8 -> n00000059 [style=dashed]
n00000091:port1 -> n0000005d [style=dashed]
n00000091:port2 -> n0000005d [style=dashed]
n00000091:port3 -> n0000005d [style=dashed]
n00000091:port4 -> n0000005d [style=dashed]
n00000091:port5 -> n0000005d [style=dashed]
n00000091:port6 -> n0000005d [style=dashed]
n00000091:port7 -> n0000005d [style=dashed]
n00000091:port8 -> n0000005d [style=dashed]
n00000091:port1 -> n00000061 [style=dashed]
n00000091:port2 -> n00000061 [style=dashed]
n00000091:port3 -> n00000061 [style=dashed]
n00000091:port4 -> n00000061 [style=dashed]
n00000091:port5 -> n00000061 [style=dashed]
n00000091:port6 -> n00000061 [style=dashed]
n00000091:port7 -> n00000061 [style=dashed]
n00000091:port8 -> n00000061 [style=dashed]
n00000091:port1 -> n00000065 [style=dashed]
n00000091:port2 -> n00000065 [style=dashed]
n00000091:port3 -> n00000065 [style=dashed]
n00000091:port4 -> n00000065 [style=dashed]
n00000091:port5 -> n00000065 [style=dashed]
n00000091:port6 -> n00000065 [style=dashed]
n00000091:port7 -> n00000065 [style=dashed]
n00000091:port8 -> n00000065 [style=dashed]
n00000091:port1 -> n00000069 [style=dashed]
n00000091:port2 -> n00000069 [style=dashed]
n00000091:port3 -> n00000069 [style=dashed]
n00000091:port4 -> n00000069 [style=dashed]
n00000091:port5 -> n00000069 [style=dashed]
n00000091:port6 -> n00000069 [style=dashed]
n00000091:port7 -> n00000069 [style=dashed]
n00000091:port8 -> n00000069 [style=dashed]
n00000091:port1 -> n0000006d [style=dashed]
n00000091:port2 -> n0000006d [style=dashed]
n00000091:port3 -> n0000006d [style=dashed]
n00000091:port4 -> n0000006d [style=dashed]
n00000091:port5 -> n0000006d [style=dashed]
n00000091:port6 -> n0000006d [style=dashed]
n00000091:port7 -> n0000006d [style=dashed]
n00000091:port8 -> n0000006d [style=dashed]
n00000091:port1 -> n00000071 [style=dashed]
n00000091:port2 -> n00000071 [style=dashed]
n00000091:port3 -> n00000071 [style=dashed]
n00000091:port4 -> n00000071 [style=dashed]
n00000091:port5 -> n00000071 [style=dashed]
n00000091:port6 -> n00000071 [style=dashed]
n00000091:port7 -> n00000071 [style=dashed]
n00000091:port8 -> n00000071 [style=dashed]
n00000091:port1 -> n00000075 [style=dashed]
n00000091:port2 -> n00000075 [style=dashed]
n00000091:port3 -> n00000075 [style=dashed]
n00000091:port4 -> n00000075 [style=dashed]
n00000091:port5 -> n00000075 [style=dashed]
n00000091:port6 -> n00000075 [style=dashed]
n00000091:port7 -> n00000075 [style=dashed]
n00000091:port8 -> n00000075 [style=dashed]
n00000091:port1 -> n00000079 [style=dashed]
n00000091:port2 -> n00000079 [style=dashed]
n00000091:port3 -> n00000079 [style=dashed]
n00000091:port4 -> n00000079 [style=dashed]
n00000091:port5 -> n00000079 [style=dashed]
n00000091:port6 -> n00000079 [style=dashed]
n00000091:port7 -> n00000079 [style=dashed]
n00000091:port8 -> n00000079 [style=dashed]
n0000009b [label="{{<port0> 0} | Intel IPU6 CSI2 3\n/dev/v4l-subdev3 | {<port1> 1 | <port2> 2 | <port3> 3 | <port4> 4 | <port5> 5 | <port6> 6 | <port7> 7 | <port8> 8}}", shape=Mrecord, style=filled, fillcolor=green]
n0000009b:port1 -> n00000001 [style=dashed]
n0000009b:port2 -> n00000001 [style=dashed]
n0000009b:port3 -> n00000001 [style=dashed]
n0000009b:port4 -> n00000001 [style=dashed]
n0000009b:port5 -> n00000001 [style=dashed]
n0000009b:port6 -> n00000001 [style=dashed]
n0000009b:port7 -> n00000001 [style=dashed]
n0000009b:port8 -> n00000001 [style=dashed]
n0000009b:port1 -> n00000005 [style=dashed]
n0000009b:port2 -> n00000005 [style=dashed]
n0000009b:port3 -> n00000005 [style=dashed]
n0000009b:port4 -> n00000005 [style=dashed]
n0000009b:port5 -> n00000005 [style=dashed]
n0000009b:port6 -> n00000005 [style=dashed]
n0000009b:port7 -> n00000005 [style=dashed]
n0000009b:port8 -> n00000005 [style=dashed]
n0000009b:port1 -> n00000009 [style=dashed]
n0000009b:port2 -> n00000009 [style=dashed]
n0000009b:port3 -> n00000009 [style=dashed]
n0000009b:port4 -> n00000009 [style=dashed]
n0000009b:port5 -> n00000009 [style=dashed]
n0000009b:port6 -> n00000009 [style=dashed]
n0000009b:port7 -> n00000009 [style=dashed]
n0000009b:port8 -> n00000009 [style=dashed]
n0000009b:port1 -> n0000000d [style=dashed]
n0000009b:port2 -> n0000000d [style=dashed]
n0000009b:port3 -> n0000000d [style=dashed]
n0000009b:port4 -> n0000000d [style=dashed]
n0000009b:port5 -> n0000000d [style=dashed]
n0000009b:port6 -> n0000000d [style=dashed]
n0000009b:port7 -> n0000000d [style=dashed]
n0000009b:port8 -> n0000000d [style=dashed]
n0000009b:port1 -> n00000011 [style=dashed]
n0000009b:port2 -> n00000011 [style=dashed]
n0000009b:port3 -> n00000011 [style=dashed]
n0000009b:port4 -> n00000011 [style=dashed]
n0000009b:port5 -> n00000011 [style=dashed]
n0000009b:port6 -> n00000011 [style=dashed]
n0000009b:port7 -> n00000011 [style=dashed]
n0000009b:port8 -> n00000011 [style=dashed]
n0000009b:port1 -> n00000015 [style=dashed]
n0000009b:port2 -> n00000015 [style=dashed]
n0000009b:port3 -> n00000015 [style=dashed]
n0000009b:port4 -> n00000015 [style=dashed]
n0000009b:port5 -> n00000015 [style=dashed]
n0000009b:port6 -> n00000015 [style=dashed]
n0000009b:port7 -> n00000015 [style=dashed]
n0000009b:port8 -> n00000015 [style=dashed]
n0000009b:port1 -> n00000019 [style=dashed]
n0000009b:port2 -> n00000019 [style=dashed]
n0000009b:port3 -> n00000019 [style=dashed]
n0000009b:port4 -> n00000019 [style=dashed]
n0000009b:port5 -> n00000019 [style=dashed]
n0000009b:port6 -> n00000019 [style=dashed]
n0000009b:port7 -> n00000019 [style=dashed]
n0000009b:port8 -> n00000019 [style=dashed]
n0000009b:port1 -> n0000001d [style=dashed]
n0000009b:port2 -> n0000001d [style=dashed]
n0000009b:port3 -> n0000001d [style=dashed]
n0000009b:port4 -> n0000001d [style=dashed]
n0000009b:port5 -> n0000001d [style=dashed]
n0000009b:port6 -> n0000001d [style=dashed]
n0000009b:port7 -> n0000001d [style=dashed]
n0000009b:port8 -> n0000001d [style=dashed]
n0000009b:port1 -> n00000021 [style=dashed]
n0000009b:port2 -> n00000021 [style=dashed]
n0000009b:port3 -> n00000021 [style=dashed]
n0000009b:port4 -> n00000021 [style=dashed]
n0000009b:port5 -> n00000021 [style=dashed]
n0000009b:port6 -> n00000021 [style=dashed]
n0000009b:port7 -> n00000021 [style=dashed]
n0000009b:port8 -> n00000021 [style=dashed]
n0000009b:port1 -> n00000025 [style=dashed]
n0000009b:port2 -> n00000025 [style=dashed]
n0000009b:port3 -> n00000025 [style=dashed]
n0000009b:port4 -> n00000025 [style=dashed]
n0000009b:port5 -> n00000025 [style=dashed]
n0000009b:port6 -> n00000025 [style=dashed]
n0000009b:port7 -> n00000025 [style=dashed]
n0000009b:port8 -> n00000025 [style=dashed]
n0000009b:port1 -> n00000029 [style=dashed]
n0000009b:port2 -> n00000029 [style=dashed]
n0000009b:port3 -> n00000029 [style=dashed]
n0000009b:port4 -> n00000029 [style=dashed]
n0000009b:port5 -> n00000029 [style=dashed]
n0000009b:port6 -> n00000029 [style=dashed]
n0000009b:port7 -> n00000029 [style=dashed]
n0000009b:port8 -> n00000029 [style=dashed]
n0000009b:port1 -> n0000002d [style=dashed]
n0000009b:port2 -> n0000002d [style=dashed]
n0000009b:port3 -> n0000002d [style=dashed]
n0000009b:port4 -> n0000002d [style=dashed]
n0000009b:port5 -> n0000002d [style=dashed]
n0000009b:port6 -> n0000002d [style=dashed]
n0000009b:port7 -> n0000002d [style=dashed]
n0000009b:port8 -> n0000002d [style=dashed]
n0000009b:port1 -> n00000031 [style=dashed]
n0000009b:port2 -> n00000031 [style=dashed]
n0000009b:port3 -> n00000031 [style=dashed]
n0000009b:port4 -> n00000031 [style=dashed]
n0000009b:port5 -> n00000031 [style=dashed]
n0000009b:port6 -> n00000031 [style=dashed]
n0000009b:port7 -> n00000031 [style=dashed]
n0000009b:port8 -> n00000031 [style=dashed]
n0000009b:port1 -> n00000035 [style=dashed]
n0000009b:port2 -> n00000035 [style=dashed]
n0000009b:port3 -> n00000035 [style=dashed]
n0000009b:port4 -> n00000035 [style=dashed]
n0000009b:port5 -> n00000035 [style=dashed]
n0000009b:port6 -> n00000035 [style=dashed]
n0000009b:port7 -> n00000035 [style=dashed]
n0000009b:port8 -> n00000035 [style=dashed]
n0000009b:port1 -> n00000039 [style=dashed]
n0000009b:port2 -> n00000039 [style=dashed]
n0000009b:port3 -> n00000039 [style=dashed]
n0000009b:port4 -> n00000039 [style=dashed]
n0000009b:port5 -> n00000039 [style=dashed]
n0000009b:port6 -> n00000039 [style=dashed]
n0000009b:port7 -> n00000039 [style=dashed]
n0000009b:port8 -> n00000039 [style=dashed]
n0000009b:port1 -> n0000003d [style=dashed]
n0000009b:port2 -> n0000003d [style=dashed]
n0000009b:port3 -> n0000003d [style=dashed]
n0000009b:port4 -> n0000003d [style=dashed]
n0000009b:port5 -> n0000003d [style=dashed]
n0000009b:port6 -> n0000003d [style=dashed]
n0000009b:port7 -> n0000003d [style=dashed]
n0000009b:port8 -> n0000003d [style=dashed]
n0000009b:port1 -> n00000041 [style=dashed]
n0000009b:port2 -> n00000041 [style=dashed]
n0000009b:port3 -> n00000041 [style=dashed]
n0000009b:port4 -> n00000041 [style=dashed]
n0000009b:port5 -> n00000041 [style=dashed]
n0000009b:port6 -> n00000041 [style=dashed]
n0000009b:port7 -> n00000041 [style=dashed]
n0000009b:port8 -> n00000041 [style=dashed]
n0000009b:port1 -> n00000045 [style=dashed]
n0000009b:port2 -> n00000045 [style=dashed]
n0000009b:port3 -> n00000045 [style=dashed]
n0000009b:port4 -> n00000045 [style=dashed]
n0000009b:port5 -> n00000045 [style=dashed]
n0000009b:port6 -> n00000045 [style=dashed]
n0000009b:port7 -> n00000045 [style=dashed]
n0000009b:port8 -> n00000045 [style=dashed]
n0000009b:port1 -> n00000049 [style=dashed]
n0000009b:port2 -> n00000049 [style=dashed]
n0000009b:port3 -> n00000049 [style=dashed]
n0000009b:port4 -> n00000049 [style=dashed]
n0000009b:port5 -> n00000049 [style=dashed]
n0000009b:port6 -> n00000049 [style=dashed]
n0000009b:port7 -> n00000049 [style=dashed]
n0000009b:port8 -> n00000049 [style=dashed]
n0000009b:port1 -> n0000004d [style=dashed]
n0000009b:port2 -> n0000004d [style=dashed]
n0000009b:port3 -> n0000004d [style=dashed]
n0000009b:port4 -> n0000004d [style=dashed]
n0000009b:port5 -> n0000004d [style=dashed]
n0000009b:port6 -> n0000004d [style=dashed]
n0000009b:port7 -> n0000004d [style=dashed]
n0000009b:port8 -> n0000004d [style=dashed]
n0000009b:port1 -> n00000051 [style=dashed]
n0000009b:port2 -> n00000051 [style=dashed]
n0000009b:port3 -> n00000051 [style=dashed]
n0000009b:port4 -> n00000051 [style=dashed]
n0000009b:port5 -> n00000051 [style=dashed]
n0000009b:port6 -> n00000051 [style=dashed]
n0000009b:port7 -> n00000051 [style=dashed]
n0000009b:port8 -> n00000051 [style=dashed]
n0000009b:port1 -> n00000055 [style=dashed]
n0000009b:port2 -> n00000055 [style=dashed]
n0000009b:port3 -> n00000055 [style=dashed]
n0000009b:port4 -> n00000055 [style=dashed]
n0000009b:port5 -> n00000055 [style=dashed]
n0000009b:port6 -> n00000055 [style=dashed]
n0000009b:port7 -> n00000055 [style=dashed]
n0000009b:port8 -> n00000055 [style=dashed]
n0000009b:port1 -> n00000059 [style=dashed]
n0000009b:port2 -> n00000059 [style=dashed]
n0000009b:port3 -> n00000059 [style=dashed]
n0000009b:port4 -> n00000059 [style=dashed]
n0000009b:port5 -> n00000059 [style=dashed]
n0000009b:port6 -> n00000059 [style=dashed]
n0000009b:port7 -> n00000059 [style=dashed]
n0000009b:port8 -> n00000059 [style=dashed]
n0000009b:port1 -> n0000005d [style=dashed]
n0000009b:port2 -> n0000005d [style=dashed]
n0000009b:port3 -> n0000005d [style=dashed]
n0000009b:port4 -> n0000005d [style=dashed]
n0000009b:port5 -> n0000005d [style=dashed]
n0000009b:port6 -> n0000005d [style=dashed]
n0000009b:port7 -> n0000005d [style=dashed]
n0000009b:port8 -> n0000005d [style=dashed]
n0000009b:port1 -> n00000061 [style=dashed]
n0000009b:port2 -> n00000061 [style=dashed]
n0000009b:port3 -> n00000061 [style=dashed]
n0000009b:port4 -> n00000061 [style=dashed]
n0000009b:port5 -> n00000061 [style=dashed]
n0000009b:port6 -> n00000061 [style=dashed]
n0000009b:port7 -> n00000061 [style=dashed]
n0000009b:port8 -> n00000061 [style=dashed]
n0000009b:port1 -> n00000065 [style=dashed]
n0000009b:port2 -> n00000065 [style=dashed]
n0000009b:port3 -> n00000065 [style=dashed]
n0000009b:port4 -> n00000065 [style=dashed]
n0000009b:port5 -> n00000065 [style=dashed]
n0000009b:port6 -> n00000065 [style=dashed]
n0000009b:port7 -> n00000065 [style=dashed]
n0000009b:port8 -> n00000065 [style=dashed]
n0000009b:port1 -> n00000069 [style=dashed]
n0000009b:port2 -> n00000069 [style=dashed]
n0000009b:port3 -> n00000069 [style=dashed]
n0000009b:port4 -> n00000069 [style=dashed]
n0000009b:port5 -> n00000069 [style=dashed]
n0000009b:port6 -> n00000069 [style=dashed]
n0000009b:port7 -> n00000069 [style=dashed]
n0000009b:port8 -> n00000069 [style=dashed]
n0000009b:port1 -> n0000006d [style=dashed]
n0000009b:port2 -> n0000006d [style=dashed]
n0000009b:port3 -> n0000006d [style=dashed]
n0000009b:port4 -> n0000006d [style=dashed]
n0000009b:port5 -> n0000006d [style=dashed]
n0000009b:port6 -> n0000006d [style=dashed]
n0000009b:port7 -> n0000006d [style=dashed]
n0000009b:port8 -> n0000006d [style=dashed]
n0000009b:port1 -> n00000071 [style=dashed]
n0000009b:port2 -> n00000071 [style=dashed]
n0000009b:port3 -> n00000071 [style=dashed]
n0000009b:port4 -> n00000071 [style=dashed]
n0000009b:port5 -> n00000071 [style=dashed]
n0000009b:port6 -> n00000071 [style=dashed]
n0000009b:port7 -> n00000071 [style=dashed]
n0000009b:port8 -> n00000071 [style=dashed]
n0000009b:port1 -> n00000075 [style=dashed]
n0000009b:port2 -> n00000075 [style=dashed]
n0000009b:port3 -> n00000075 [style=dashed]
n0000009b:port4 -> n00000075 [style=dashed]
n0000009b:port5 -> n00000075 [style=dashed]
n0000009b:port6 -> n00000075 [style=dashed]
n0000009b:port7 -> n00000075 [style=dashed]
n0000009b:port8 -> n00000075 [style=dashed]
n0000009b:port1 -> n00000079 [style=dashed]
n0000009b:port2 -> n00000079 [style=dashed]
n0000009b:port3 -> n00000079 [style=dashed]
n0000009b:port4 -> n00000079 [style=dashed]
n0000009b:port5 -> n00000079 [style=dashed]
n0000009b:port6 -> n00000079 [style=dashed]
n0000009b:port7 -> n00000079 [style=dashed]
n0000009b:port8 -> n00000079 [style=dashed]
n00000865 [label="{{} | ov2740 19-0036\n/dev/v4l-subdev4 | {<port0> 0}}", shape=Mrecord, style=filled, fillcolor=green]
n00000865:port0 -> n00000087:port0
}
More information about the libcamera-devel
mailing list