<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span><font face="times new roman, new york, times, serif"><div><br></div><div>>>  2.l4_ipc_error( ),return 4,i look up in l4re document it means</div><div>>> L4_ENOT_EXISTENT.but how can i solve that?</div><div>>The documentation in the header file (pkg/l4sys/include/ipc.h) is quite clear about the error source:</div><div>>L4_IPC_ENOT_EXISTENT    = 0x04, /**< Non-existing destination or source.</div><div>>could you please give us a minimal code example (including the lua script and both communcation partners) that >causes this? You communication partner has probably terminated or something like that.</div><div>i want to use touchscreen on my omap3530 board.then i add REQUIRES_LIBS_arm = libdrivers-input in file pkg/input/lib/src/makefie. then in function tsc_irq_func(
 ) in file pkg/drivers/input/src/tsc-omap3.c , l4_ipc_err( tag,l4_utcb()) return 4.</div><div><br></div><div><br></div><div>the arm-omap3.devs </div><div><div># OMAP3 (OMAP3EVM, Beagleboard)</div><div><br></div><div>hw-root</div><div>{</div><div>  sys => new Device()</div><div>  {</div><div>    .hid = "System Control";</div><div>    new-res Mmio(0x48002000 .. 0x48002fff);</div><div>    new-res Mmio(0x48004000 .. 0x48004fff);</div><div>  }</div><div><br></div><div>  prcm => new Device()</div><div>  {</div><div>    .hid = "OMAP PRCM";</div><div>    new-res Mmio(0x48004000 .. 0x48004fff);</div><div>    new-res Mmio(0x48005000 .. 0x48005fff);</div><div>  }</div><div><br></div><div>  gpio => new Device()</div><div>  {</div><div>    .hid = "GPIO";</div><div>    new-res Mmio(0x48004000 .. 0x48004fff);</div><div>   
 new-res Mmio(0x48310000 .. 0x48310fff);</div><div>    new-res Mmio(0x49050000 .. 0x49050fff);</div><div>    new-res Mmio(0x49052000 .. 0x49052fff);</div><div>    new-res Mmio(0x49054000 .. 0x49054fff);</div><div>    new-res Mmio(0x49056000 .. 0x49056fff);</div><div>    new-res Mmio(0x49058000 .. 0x49058fff);</div><div>  }</div><div><br></div><div>  lcd => new Device()</div><div>  {</div><div>    .hid = "OMAP_LCD";</div><div>    new-res Mmio(0x48050000 .. 0x48050fff);</div><div>  }</div><div><br></div><div>  i2c1 => new Device()</div><div>  {</div><div>    .hid = "I2C";</div><div>    new-res Mmio(0x48070000 .. 0x48070fff);</div><div>  }</div><div><br></div><div>  kp => new Device()</div><div>  {</div><div>    .hid = "OMAP_KP";</div><div>    new-res Mmio(0x48070000 ..
 0x48070fff);</div><div>  }</div><div><br></div><div>  mcspi => new Device()</div><div>  {</div><div>    .hid = "McSPI";</div><div>    new-res Mmio(0x48098000 .. 0x48098fff);</div><div>  }</div><div><br></div><div>  tsc => new Device()</div><div>  {</div><div>    .hid = "OMAP_TSC";</div><div>    new-res Mmio(0x48098000 .. 0x48098fff);</div><div>    new-res Irq(32);</div><div>  }</div><div>}</div><div><br></div><div><br></div><div>the l4_android-arm.vbus file is</div><div><div># vim:set ft=ioconfig:</div><div># configuration file for io</div><div><br></div><div>gui => new System_bus()</div><div>{</div><div>  #KBD => wrap(hw-root.KBD);</div><div>  #MOUSE => wrap(hw-root.MOUSE);</div><div>  tsc => wrap(hw-root.tsc);</div><div>  mcspi => wrap(hw-root.mcspi);</div><div>  kp => wrap(hw-root.kp);</div><div>  i2c1 =>
 wrap(hw-root.i2c1);</div><div><br></div><div>  gpio => wrap(hw-root.gpio);</div><div>}</div><div><br></div><div>fbdrv => new System_bus()</div><div>{</div><div>  sys => wrap(hw-root.sys);</div><div>  lcd => wrap(hw-root.lcd);</div><div>}</div><div><br></div><div>android_bus => new System_bus()</div><div>{</div><div>}</div><div><br></div><div>the cfg file is</div><div><div>require("L4");</div><div><br></div><div>local lxname = "vmlinuz.android";</div><div>local l = L4.default_loader;</div><div><br></div><div>local io_caps = {</div><div>  sigma0 = L4.cast(L4.Proto.Factory, L4.Env.sigma0):create(L4.Proto.Sigma0);</div><div>  gui = L4.default_loader:new_channel():svr();</div><div>  android_bus = L4.default_loader:new_channel():svr();</div><div>  fbdrv = L4.default_loader:new_channel():svr();</div><div>  rom = L4.Env.rom;</div><div>  icu = L4.Env.icu;</div><div>};</div><div><br></div><div>local
 fb_caps = {</div><div>    vbus = io_caps.fbdrv;</div><div>    rom = L4.Env.rom;</div><div>    fb = L4.default_loader:new_channel():svr();</div><div>};</div><div><br></div><div>L4.default_loader:startv(</div><div>  {</div><div>    caps = io_caps,</div><div>    log = { "io", "red" },</div><div>  },</div><div>  "rom/io", "rom/arm-omap3.devs", "rom/l4_android-arm.vbus");</div><div><br></div><div>L4.default_loader:startv(</div><div>        {</div><div>        caps = fb_caps,</div><div>        log =  { "fb", "cyan" },</div><div>        },</div><div>        "rom/fb-drv");</div><div><br></div><div><br></div><div>local mag_caps = {</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>mag = l:new_channel(),</div><div><span class="Apple-tab-span" style="white-space:pre">
        </span>svc = l:new_channel(),</div><div>};</div><div><br></div><div>l:start({</div><div>          caps = {</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>    vbus = io_caps.gui,</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>    fb   = fb_caps.fb,</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>    mag  = mag_caps.mag:svr(),</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>    svc  = mag_caps.svc:svr(),</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>  },</div><div>          log      = { "mag", "g" },</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>  l4re_dbg = L4.Dbg.Warn,</div><div>        },</div><div><span class="Apple-tab-span" style="white-space:pre">
        </span>"rom/mag");</div><div><br></div><div>local android_caps = {</div><div>  log = L4.Env.log:m("rws");</div><div>  vbus = io_caps.android_bus;</div><div>  rom = L4.Env.rom;</div><div>  fb = mag_caps.svc:create(L4.Proto.Goos, "g=800x476+0+0");</div><div>};</div><div><br></div><div>L4.default_loader:start(</div><div>  {</div><div>    caps = android_caps,</div><div>    l4re_dbg = L4.Dbg.Warn,</div><div>    log = { "android", "yellow" },</div><div>  },</div><div>  "rom/" .. lxname .. " console=ttyLv0 androidboot.console=ttyLv0 mem=128M l4bdds.add=rom/system-arm-ginger.img,rw boot=local android.ril=ttyLv1 ip=dhcp l4x_rd=rom/root-arm-ginger.img rw root=1:0 ramdisk_size=1500 init=/init --debug l4fb.touchscreen=1");</div><div><br></div><div>thanks!</div></div></div></div></font></span></div></div></body></html>