1*4882a593Smuzhiyundigraph T { 2*4882a593Smuzhiyun /* Make sure our payloads are always drawn below the driver node */ 3*4882a593Smuzhiyun subgraph cluster_driver { 4*4882a593Smuzhiyun fillcolor = grey; 5*4882a593Smuzhiyun style = filled; 6*4882a593Smuzhiyun edge [dir=none]; 7*4882a593Smuzhiyun driver -> payload1; 8*4882a593Smuzhiyun driver -> payload2 [penwidth=3]; 9*4882a593Smuzhiyun edge [dir=""]; 10*4882a593Smuzhiyun } 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun /* Driver malloc references */ 13*4882a593Smuzhiyun edge [style=dashed]; 14*4882a593Smuzhiyun driver -> port1; 15*4882a593Smuzhiyun driver -> port2; 16*4882a593Smuzhiyun driver -> port3:e; 17*4882a593Smuzhiyun driver -> port4 [color=grey]; 18*4882a593Smuzhiyun payload1:s -> port1:e; 19*4882a593Smuzhiyun payload2:s -> port3:e [penwidth=3]; 20*4882a593Smuzhiyun edge [style=""]; 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun subgraph cluster_topology { 23*4882a593Smuzhiyun label="Topology Manager"; 24*4882a593Smuzhiyun labelloc=bottom; 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun /* Topology references */ 27*4882a593Smuzhiyun mstb1 -> {port1, port2}; 28*4882a593Smuzhiyun port1 -> mstb2; 29*4882a593Smuzhiyun edge [color=grey]; 30*4882a593Smuzhiyun port2 -> mstb3 -> {port3, port4}; 31*4882a593Smuzhiyun port3 -> mstb4; 32*4882a593Smuzhiyun edge [color=""]; 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun /* Malloc references */ 35*4882a593Smuzhiyun edge [style=dashed;dir=back]; 36*4882a593Smuzhiyun mstb1 -> {port1, port2}; 37*4882a593Smuzhiyun port1 -> mstb2; 38*4882a593Smuzhiyun port2 -> mstb3 [penwidth=3]; 39*4882a593Smuzhiyun mstb3 -> port3 [penwidth=3]; 40*4882a593Smuzhiyun edge [color=grey]; 41*4882a593Smuzhiyun mstb3 -> port4; 42*4882a593Smuzhiyun port3 -> mstb4; 43*4882a593Smuzhiyun } 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun mstb1 [label="MSTB #1";style=filled;fillcolor=palegreen]; 46*4882a593Smuzhiyun mstb2 [label="MSTB #2";style=filled;fillcolor=palegreen]; 47*4882a593Smuzhiyun mstb3 [label="MSTB #3";style=filled;fillcolor=palegreen;penwidth=3]; 48*4882a593Smuzhiyun mstb4 [label="MSTB #4";style=filled;fillcolor=grey]; 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun port1 [label="Port #1"]; 51*4882a593Smuzhiyun port2 [label="Port #2";penwidth=5]; 52*4882a593Smuzhiyun port3 [label="Port #3";penwidth=3]; 53*4882a593Smuzhiyun port4 [label="Port #4";style=filled;fillcolor=grey]; 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun driver [label="DRM driver";style=filled;shape=box;fillcolor=lightblue]; 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun payload1 [label="Payload #1";style=filled;shape=box;fillcolor=lightblue]; 58*4882a593Smuzhiyun payload2 [label="Payload #2";style=filled;shape=box;fillcolor=lightblue;penwidth=3]; 59*4882a593Smuzhiyun} 60