]> rtime.felk.cvut.cz Git - l4.git/blob - l4/conf/examples/arm-rv-lcd.cfg
update
[l4.git] / l4 / conf / examples / arm-rv-lcd.cfg
1 -- vim:set ft=lua:
2
3 -- This script shall start mag. For that we need a frame-buffer and io to
4 -- get access to the required hardware resources. Target platform is ARM
5 -- Real-View as used with QEmu.
6
7 require("L4");
8
9
10 local l = L4.default_loader;
11
12 local io_buses =
13   {
14     gui   = l:new_channel();
15     fbdrv = l:new_channel();
16   };
17
18 l:start({
19           caps = {
20             gui    = io_buses.gui:svr(), 
21             fbdrv  = io_buses.fbdrv:svr(), 
22
23             icu    = L4.Env.icu,
24             sigma0 = L4.cast(L4.Proto.Factory, L4.Env.sigma0):create(L4.Proto.Sigma0),
25           },
26           log      = { "IO", "y" },
27           l4re_dbg = L4.Dbg.Warn,
28         },
29         "rom/io rom/arm-rv-eb.devs rom/arm-rv-lcd.io");
30
31 local fbdrv_fb = l:new_channel();
32
33 l:startv({
34            caps = {
35              vbus = io_buses.fbdrv,
36              fb   = fbdrv_fb:svr(),
37            },
38            log      = { "fbdrv", "r" },
39            l4re_dbg = L4.Dbg.Warn,
40          },
41          "rom/fb-drv", "-c", "1024 565 bgr");
42
43 local mag_caps = {
44                    mag = l:new_channel(),
45                    svc = l:new_channel(),
46                  };
47
48 l:start({
49           caps = {
50             vbus = io_buses.gui,
51             fb   = fbdrv_fb,
52             mag  = mag_caps.mag:svr(),
53             svc  = mag_caps.svc:svr(),
54           },
55           log      = { "mag", "g" },
56           l4re_dbg = L4.Dbg.Warn,
57           -- scheduler = L4.Env.user_factory:create(L4.Proto.Scheduler, 0xa0, 0x80),
58         },
59         "rom/mag");
60
61 e = l:start({ caps = {
62                 fb = mag_caps.svc:create(L4.Proto.Goos, "g=640x480"),
63               },
64               log      = { "spectrum", "b" },
65               l4re_dbg = L4.Dbg.Warn,
66               -- scheduler = L4.Env.user_factory:create(L4.Proto.Scheduler, 0x18, 0x8),
67             },
68             "rom/ex_fb_spectrum");
69 print("ex_fb_spectrum exited with: " .. e:wait());