Develop Trustzone support for imx6

chirag garg chiragdthinker at ...9...
Mon Apr 27 11:32:14 CEST 2015


Hello Bharath,

As I can see in your log:

Download linux binary ...(put your linux file manually)
wrong # args: should be "run_boot_dir"

It seems that you haven't put the normal world OS image as "linux" in
your <Genode_Dir>/build_sabrelite/bin/ folder as the log message
clearly says
that "put your linux file manually".
We have tried with the Genode as normal world OS. I have put one file
on the following link you can use this.
 https://github.com/chiragdthinker/Genode_Binaries/

you can download the linux file from here and put in the above mentioned folder.

I think this will solve your problem. Don't hesitate to ask any other
doubts on this.

Regards

Chirag Garg
IIT Madras , Rise Lab

On Mon, Apr 27, 2015 at 2:32 PM, bharath <bharathkr.bojja at ...9...> wrote:

> chirag garg <chiragdthinker at ...52...> writes:
>
> >
> >
> >
> > Hello Thong,
> > It seems, you are trying to run i.mx53 image on the i.mx6 board if that
> is
> the case it will not work. To run the printf script over the imx6 platform
> you should try out the latest master branch of Genode on git hub that have
> the imx6 support without trustzone.https://github.com/genodelabs/genode
> >
> > For the TrustZone support on imx6 SABRE Lite board our team is also
> working at IIT Madras , As of now we are able to run Genode(secure world)
> beside Genode(normal world) so you can take a look at IIT Madras repository
> as the initial starting point.
> >
> > Genode as secure world :
> https://github.com/iitmadras/genode/tree/hw_sabrelite_tz_supportIn the
> hw_sabrelite_tz_support branch tz_vmm_mx6 will work as tz_vmm  Genode as
> normal world :
> https://github.com/iitmadras/genode/tree/hw_sabrelite_tz_normal_os
> > Switch application in the hw_sabrelite_tz_normal_os branch will serve you
> as a linux (for normal world) kernel image in tz_vmm.
> >
> >
> >
> > Regards
> > Chirag Garg
> > IIT Madras , Rise Lab
> >
> > On Tue, Apr 21, 2015 at 8:20 AM, thong <thong-
> kmCu2mEWxz5BDgjK7y7TUQ at ...325...> wrote:Hi all,
> > I am a newbie in embedded linux system, and my team is starting to
> > integrate our biometric identification solution into the board
> > i.MX6Q-SABRESD using Secure OS on Trustzone. After take a research
> > around, I decide to try start with Genode on imx53_tablet_demo
> athttps://
> github.com/skalk/genode/blob/i.MX53_tablet_demo/os/src/server/vmm/
> imx53/README.
> > I tried to modify base-hw/src/core/kernel/kernel.cc to add a code line
> > PDBG("Hello\n") at the beginning of main routine void kernel() and
> > expected to receive a "Hello" message on my Serial Terminal. I followed
> > the instructions in README and be success to build the Genode with
> > command line:
> > RUN_OPT="--target uboot" make run/printf
> > I use pre-built u-boot-mx6dl-sabresd.bin from Freescale.
> > When I try to boot my Genode build in var/run/printf/ it just stopped at
> > "Starting kernel..." message:
> > U-Boot 2009.08 (Aug 16 2013 - 12:04:20)
> > CPU: Freescale i.MX6 family TO1.2 at 792 MHz
> > Thermal sensor with ratio = 187
> > Temperature:   48 C, calibration data 0x59e4ff7d
> > mx6q pll1: 792MHz
> > mx6q pll2: 528MHz
> > mx6q pll3: 480MHz
> > mx6q pll8: 50MHz
> > ipg clock     : 66000000Hz
> > ipg per clock : 66000000Hz
> > uart clock    : 80000000Hz
> > cspi clock    : 60000000Hz
> > ahb clock     : 132000000Hz
> > axi clock   : 264000000Hz
> > emi_slow clock: 132000000Hz
> > ddr clock     : 528000000Hz
> > usdhc1 clock  : 198000000Hz
> > usdhc2 clock  : 198000000Hz
> > usdhc3 clock  : 198000000Hz
> > usdhc4 clock  : 198000000Hz
> > nfc clock     : 24000000Hz
> > Board: i.MX6Q-SABRESD: unknown-board Board: 0x63012 [POR ]
> > Boot Device: SD
> > I2C:   ready
> > DRAM:   1 GB
> > MMC:   FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2,FSL_USDHC: 3
> > In:    serial
> > Out:   serial
> > Err:   serial
> > i2c: I2C3 SDA is low, start i2c recovery...
> > I2C3 Recovery success
> > Found PFUZE100! deviceid=10,revid=11
> > Net:   got MAC address from IIM: 00:04:9f:02:e0:39
> > FEC0 [PRIME]
> > Hit any key to stop autoboot:  0
> > MX6Q SABRESD U-Boot > fatload mmc 2:1 0x20000000 uImage_imx6_tz
> > reading uImage_imx6_tz
> > 359877 bytes read
> > MX6Q SABRESD U-Boot > bootm 20000000
> > ## Booting kernel from Legacy Image at 20000000 ...
> >     Image Name:
> >     Image Type:   ARM Linux Kernel Image (gzip compressed)
> >     Data Size:    359813 Bytes = 351.4 kB
> >     Load Address: 10001000
> >     Entry Point:  10001000
> >     Verifying Checksum ... OK
> >     Uncompressing Kernel Image ... OK
> > Starting kernel ...
> > I highly appreciate any respond to help me on this.
> > Thank you very much in advance.
> > --Thong Nguyen.
> >
> --------------------------------------------------------------------------
> ----
> > BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> > Develop your own process in accordance with the BPMN 2 standard
> > Learn Process modeling best practices with Bonita BPM through live
> exerciseshttp://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-
> event?utm_
> > source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> > _______________________________________________
> > genode-main mailing listgenode-main-
> 5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
> @public.gmane.orghttps://lists.sourceforge.n
> et/lists/listinfo/genode-main
> >
> >
> >
> >
> >
> >
> >
> --------------------------------------------------------------------------
> ----
> > BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> > Develop your own process in accordance with the BPMN 2 standard
> > Learn Process modeling best practices with Bonita BPM through live
> exercises
> > http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?
> utm_
> > source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> >
> > _______________________________________________
> > genode-main mailing list
> > genode-main at ...52...
> > https://lists.sourceforge.net/lists/listinfo/genode-main
> >
>
> Hi,
>
> I have downloaded genode-hw_sabrelite_tz_support for Genode as secure world
> in the following link:
> https://github.com/iitmadras/genode/tree/hw_sabrelite_tz_support
>
> I tried build by the following steps:
> cd genode-hw_sabrelite_tz_support/tools/
> ./create_builddir hw_sabrelite_tz BUILD_DIR=build_sabrelite
> cd build_sabrelite/
> RUN_OPT="--target uboot"
> make run/tz_vmm_mx6
>
> It is giving the following error:
>
> including genode-hw_sabrelite_tz_support/repos/os/run/tz_vmm_mx6.run
> building targets: core init server/tz_vmm
> spawn make core init server/tz_vmm
> make[1]: Entering directory `genode-
> hw_sabrelite_tz_support/tool/build_sabrelite'
> checking library dependencies...
> Skip target server/tz_vmm/imx53_qsb because it requires hw_imx53_qsb
> platform_imx53
> Skip target server/tz_vmm/usb_armory because it requires hw_usb_armory
> platform_imx53
>   Library platform
>     MERGE    platform.lib.a
>   Library cxx
>     COMPILE  exception.o
>     COMPILE  guard.o
>     COMPILE  malloc_free.o
>     COMPILE  misc.o
>     COMPILE  new_delete.o
>     COMPILE  unwind.o
>     MERGE    supc++.o
>     CONVERT  supc++.o
>     MERGE    cxx.lib.a
>   Library base-common
>     COMPILE  allocator/allocator_avl.o
>     COMPILE  allocator/slab.o
>     COMPILE  avl_tree/avl_tree.o
>     COMPILE  child/child.o
>     COMPILE  console/console.o
>     COMPILE  elf/elf_binary.o
>     COMPILE  heap/heap.o
>     COMPILE  heap/sliced_heap.o
>     COMPILE  ipc/ipc.o
>     COMPILE  ipc/ipc_marshal_cap.o
>     COMPILE  kernel/interface.o
>     COMPILE  lock/lock.o
>     COMPILE  process/process.o
>     COMPILE  server/common.o
>     COMPILE  server/server.o
>     COMPILE  signal/common.o
>     COMPILE  signal/platform.o
>     COMPILE  signal/signal.o
>     COMPILE  thread/bootstrap.o
>     COMPILE  thread/context_allocator.o
>     COMPILE  thread/trace.o
>     MERGE    base-common.lib.a
>   Library syscall
>     MERGE    syscall.lib.a
>   Library startup
>     COMPILE  _main.o
>     ASSEMBLE crt0.o
>     COMPILE  init_main_thread.o
>     MERGE    startup.lib.a
>   Library base
>     COMPILE  console/log_console.o
>     COMPILE  cpu/cache.o
>     COMPILE  env/context_area.o
>     COMPILE  env/env.o
>     COMPILE  env/reinitialize.o
>     COMPILE  thread/start.o
>     COMPILE  thread/thread.o
>     MERGE    base.lib.a
>   Library init_pd_args
>     COMPILE  pd_args.o
>     MERGE    init_pd_args.lib.a
>   Library config
>     COMPILE  config.o
>     MERGE    config.lib.a
>   Program init/init
>     COMPILE  main.o
>     LINK     init
>   Program server/tz_vmm/imx6/tz_vmm
>     COMPILE  main.o
>     LINK     tz_vmm
>   Library core-perf_counter_on
>     COMPILE  spec/arm_v7/perf_counter.o
>     MERGE    core-perf_counter_on.lib.a
>   Library core-perf_counter
>     MERGE    core-perf_counter.lib.a
>   Library core-trustzone_on
>     COMPILE  _main.o
>     ASSEMBLE boot_modules.o
>     COMPILE  console.o
>     COMPILE  context_area.o
>     COMPILE  core_mem_alloc.o
>     COMPILE  core_rm_session.o
>     COMPILE  cpu_session_component.o
>     COMPILE  cpu_session_support.o
>     COMPILE  dataspace_component.o
>     COMPILE  dump_alloc.o
>     COMPILE  init_main_thread.o
>     COMPILE  io_mem_session_component.o
>     COMPILE  io_mem_session_support.o
>     COMPILE  irq_session_component.o
>     COMPILE  kernel/cpu.o
>     COMPILE  kernel/irq.o
>     COMPILE  kernel/kernel.o
>     COMPILE  kernel/pd.o
>     COMPILE  kernel/signal_receiver.o
>     COMPILE  kernel/thread.o
>     COMPILE  main.o
>     COMPILE  pager.o
>     COMPILE  pd_session_component.o
>     COMPILE  platform.o
>     COMPILE  platform_pd.o
>     COMPILE  platform_thread.o
>     COMPILE  ram_session_component.o
>     COMPILE  ram_session_support.o
>     COMPILE  rm_session_component.o
>     COMPILE  rm_session_support.o
>     COMPILE  rom_session_component.o
>     COMPILE  signal_session_component.o
>     COMPILE  spec/arm/cpu.o
>     ASSEMBLE spec/arm/crt0.o
>     COMPILE  spec/arm/kernel/cpu.o
>     COMPILE  spec/arm/kernel/cpu_context.o
>     ASSEMBLE spec/arm/kernel/crt0.o
>     COMPILE  spec/arm/kernel/thread.o
>     COMPILE  spec/arm/kernel/thread_base.o
>     COMPILE  spec/arm/platform_support.o
>     COMPILE  spec/arm_v7/cpu.o
>     COMPILE  spec/arm_v7/kernel/vm_thread.o
>     ASSEMBLE spec/arm_v7/mode_transition.o
>     COMPILE  spec/arm_v7/trustzone/kernel/vm.o
>     COMPILE  spec/arm_v7/trustzone/kernel/vm_thread.o
>     ASSEMBLE spec/arm_v7/trustzone/mode_transition.o
>     COMPILE  spec/arm_v7/trustzone/vm_session_component.o
>     COMPILE  spec/arm_v7/vm_session_component.o
>     COMPILE  spec/imx6/trustzone/pic.o
>     COMPILE  spec/imx6/trustzone/platform_services.o
>     COMPILE  spec/imx6/trustzone/platform_support.o
>     COMPILE  thread/thread.o
>     COMPILE  thread_start.o
>     COMPILE  trace_session_component.o
>     COMPILE  version.o
>     MERGE    core-trustzone_on.lib.a
>   Library core-trustzone
>     MERGE    core-trustzone.lib.a
>   Library core
>     MERGE    core.lib.a
>   Program core/core
>     COMPILE  kernel/test.o
>     LINK     core
> make[1]: Leaving directory `genode-
> hw_sabrelite_tz_support/tool/build_sabrelite'
> genode build completed
> Download initramfs ...
> Download linux binary ...(put your linux file manually)
> wrong # args: should be "run_boot_dir"
>     while executing
> "run_boot_dir $binaries"
>     (procedure "build_boot_image" line 2)
>     invoked from within
> "build_boot_image "core init tz_vmm linux initrd.gz""
>     (file "genode-hw_sabrelite_tz_support/repos/os/run/tz_vmm_mx6.run" line
> 49)
>     invoked from within
> "source $include_name"
>     ("foreach" body line 6)
>     invoked from within
> "foreach include_name [get_cmd_arg --include ""] {
>         # first check if the include name is absolute
>         if {[string first "/" $include_name] == 0} {
>                 puts ..."
>     (file "genode-hw_sabrelite_tz_support/tool/run/run" line 630)
> make: *** [run/tz_vmm_mx6] Error 1
>
> What will be the problem?
>
> ------------------------------------------------------------------------------
> One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable Insights
> Deep dive visibility with transaction tracing using APM Insight.
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________
> genode-main mailing list
> genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>




More information about the users mailing list