Hi Martin,
On Mon, Nov 16, 2015 at 12:37 PM, Martin Stein <martin.stein@...1...
wrote:
Hi Joseph,
Am 15.11.2015 um 03:05 schrieb Joseph Lee:
Hi Martin, thank you so much! it works for me.
Nice! Could you please also share with us what the problem was and what solved it.
the problem was that the SDHC driver timed out which then generates the "Completion host signal timed out" error message. It is solved by replacing
if (!wait_for<Irqstat>(irq_goal, _delayer)) { PERR("Completion host signal timed out");
in [1] with
if (!wait_for<Irqstat>(irq_goal, _delayer, 3000)) { PERR("Completion host signal timed out %x", read<Irqstat>());
[1] repos/os/src/drivers/sd_card/spec/imx53/esdhcv2.cc: line 116
Now I just need to use the sd_card driver with Genode trustzone feature (hw_imx53_qsb_tz). I tried to incorporate sd_card driver with tz_vmm run script and make run/tz_vmm. I get the following log messages and it gets stuck. it doesn't even run tz_vmm application. I appreciate if you can give me some hints to fix this.
As already mentioned earlier in this discussion, hw_imx53_qsb_tz sets the ESDHC MMIO and IRQs unsecure. This is done in [1], [2] and [3]. You can find examples on how to do Trustzone settings specifier-dependend in my working branch [4].
I tried to modify trustzone settings for ESDHC MMIO and IRQs and make run/tz_vmm. it hangs when the Linux kernel tries to access the sd_card and displays the following error message.
mxsdhci: MXC Secure Digital Host Controller Interface driver mxsdhci: MXC SDHCI Controller Driver. [init -> tz_vmm] Cpu state: [init -> tz_vmm] Register Virt Phys [init -> tz_vmm] --------------------------------- [init -> tz_vmm] r0 = c5bc6e00 [85bc6e00] [init -> tz_vmm] r1 = 00000001 [00000000] [init -> tz_vmm] r2 = c030aef8 [8030aef8] [init -> tz_vmm] r3 = c690e000 [50004000] [init -> tz_vmm] r4 = c5bc6e00 [85bc6e00] [init -> tz_vmm] r5 = c5bc6e00 [85bc6e00] [init -> tz_vmm] r6 = 00000000 [00000000] [init -> tz_vmm] r7 = 00000001 [00000000] [init -> tz_vmm] r8 = c088cf50 [8088cf50] [init -> tz_vmm] r9 = 00000000 [00000000] [init -> tz_vmm] r10 = 00000001 [00000000] [init -> tz_vmm] r11 = c5b5b0c0 [85b5b0c0] [init -> tz_vmm] r12 = 00002000 [00000000] [init -> tz_vmm] sp = 00000000 [00000000] [init -> tz_vmm] lr = 00000000 [00000000] [init -> tz_vmm] ip = c0309288 [80309288] [init -> tz_vmm] cpsr = 20000013 [init -> tz_vmm] sp_und = c08e3978 [808e3978] [init -> tz_vmm] lr_und = c08e3978 [808e3978] [init -> tz_vmm] spsr_und = 00000000 [00000000] [init -> tz_vmm] sp_svc = c5023ee8 [85023ee8] [init -> tz_vmm] lr_svc = c030afd0 [8030afd0] [init -> tz_vmm] spsr_svc = 60000013 [00000000] [init -> tz_vmm] sp_abt = c08e396c [808e396c] [init -> tz_vmm] lr_abt = c0038a20 [80038a20] [init -> tz_vmm] spsr_abt = 20000093 [00000000] [init -> tz_vmm] sp_irq = c08e3960 [808e3960] [init -> tz_vmm] lr_irq = c0038a80 [80038a80] [init -> tz_vmm] spsr_irq = 60000093 [00000000] [init -> tz_vmm] sp_fiq = 00000000 [00000000] [init -> tz_vmm] lr_fiq = 00000000 [00000000] [init -> tz_vmm] spsr_fiq = 00000000 [00000000] [init -> tz_vmm] ttbr0 = 85e34019 [init -> tz_vmm] ttbr1 = 80004019 [init -> tz_vmm] ttbrc = 00000000 [init -> tz_vmm] dfar = c690e02c [5000402c] [init -> tz_vmm] exception = data_abort [init -> tz_vmm] Could not handle data-abort will exit!
Thanks,
Cheers, Martin
[1] repos/base-hw/src/core/include/spec/imx53/trustzone/csu.h:159 [2] repos/base-hw/src/core/include/spec/imx53/trustzone/csu.h:215 [3] repos/base-hw/src/core/spec/imx53/trustzone/platform_support.cc:48 [4] https://github.com/m-stein/genode/tree/1497_usb_armory_demo
Presto, an open source distributed SQL query engine for big data, initially developed by Facebook, enables you to easily query your data on Hadoop in a more interactive manner. Teradata is also now providing full enterprise support for Presto. Download a free open source copy now. http://pubads.g.doubleclick.net/gampad/clk?id=250295911&iu=/4140 _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main