aboutsummaryrefslogtreecommitdiff
path: root/docs/kernel_network.puml
blob: 39c7f55cf8b4de7e0aa78ed22bdf5de7825d7bef (plain)
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
@startuml

skinparam backgroundColor #FEFEFE

box "Application" #0091BD
participant "main()" as main
end box

box "Driver library" #00C1DE
participant "Device" as ddev
participant "Buffer" as dbuf
participant "Network" as dnet
participant "Inference" as dinf
end box

box "Kernel driver" #7D868C
participant "Device" as kdev
participant "Buffer" as kbuf
participant "Network" as knet
participant "Inference" as kinf
end box

activate main

note over main
    Create device
    Allocate and fill network buffer
end note

main -> dnet++: Network(device, buffer)
    dnet -> kdev++: ioctl(NETWORK_CREATE, buffer)
        note over knet
            Create network and return file descriptor
        end note

        kdev -> knet++: create(buffer)
        return file descriptor
    return file descriptor
return

@enduml