Documentation / gpu / dp-mst / topology-figure-2.dot


Based on kernel version 6.8. Page generated on 2024-03-11 21:26 EST.

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