1*digraph { 2* node [shape="box"]; 3* subgraph { 4* node [shape=plaintext]; 5* 6* ncsid [label=< 7* <table> 8* <tr> 9* <td bgcolor="lightblue" colspan="2" port="config">net::ConfigBase</td> 10* <td port="sockio" bgcolor="lightblue">net::SockIO</td> 11* </tr> 12* <tr><td bgcolor="lightblue" colspan="3">ncsi::StateMachine</td></tr> 13* <tr> 14* <td bgcolor="black"><font color="white">L2 FSM</font></td> 15* <td bgcolor="black"><font color="white">L3/4 FSM</font></td> 16* <td bgcolor="black"><font color="white">Test FSM</font></td> 17* </tr> 18* </table> 19* >]; 20* } 21* 22* subgraph notes { 23* node [shape="note" style="filled"]; 24* core [label="NC-SId Core" fillcolor="lightblue"]; 25* hardware [label="Hardware" fillcolor="limegreen"]; 26* external [label="External Components" color="magenta" fillcolor="white"]; 27* ec [label="EC" fillcolor="black" fontcolor="white"]; 28* } -> NIC [style="invis"]; 29* 30* subgraph external { 31* node [color="magenta"]; 32* p_networkd [label="phosphord-networkd"]; 33* systemd; 34* d_bus [shape="doublecircle" label="DBus"]; 35* } 36* 37* subgraph core_comps { 38* node [fillcolor="lightblue" style="filled"]; 39* p_config [label="net::PhosphorConfig"]; 40* ncsi_sockio [label="ncsi::SockIO"]; 41* net_ifacebase [label="net::IFaceBase"]; 42* net_iface [label="net::IFace"]; 43* 44* net_iface -> net_ifacebase [arrowhead="diamond"]; 45* ncsi_sockio -> net_iface [label="bind"]; 46* ncsid; 47* } 48* 49* NIC [shape="tab" fillcolor="limegreen" style="filled"]; 50* 51* ncsi_sockio -> ncsid:sockio [arrowhead="diamond"]; 52* NIC -> ncsi_sockio [dir="both" label="NC-SI Cable" color="limegreen"]; 53* 54* p_config -> ncsid:config [arrowhead="diamond"]; 55* p_config -> p_networkd [style="dashed"]; 56* p_config -> d_bus; 57* p_networkd -> d_bus [dir="both"]; 58* d_bus -> systemd; 59* p_networkd -> systemd [style="dashed"]; 60*} 61*