This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM335x SGX kernel modules loaded



Hello,


I'm using a board based on the AM335x SoC with the ti-linux-kernel/ti-linux-4.1.y Linux kernel.

I followed the instructions from "Graphics SDK Quick installation and user guide" for download, compilation and installation of the Linux-Graphics-SDK-05.01.01.02.

The following command+ restart was used to install 8.x SGX release user libraries:

/etc/init.d/335x-demo


The following command was used for loading the kernel modules:

/etc/init.d/rc.pvr start


The following error message was generated:

/usr/local/bin/pvrsrvctl: SrvInit failed (already initialized?) (err=4)

gfx_check.sh output:

WSEGL settings
[default]
WindowSystem=libpvrPVR2D_FRONTWSEGL.so
#WindowSystem=libpvrPVR2D_FLIPWSEGL.so

------
ARM CPU information
processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 597.60
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc08
CPU revision    : 2

Hardware        : Generic AM33XX (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000
------
SGX driver information
Version SGX_DDK_Linux_CustomerTI sgxddk 1.10@2359475 (release) /home/uri/ext_proj/Graphics_SDK_5_01_01_02/GFX_Linux_KM
System Version String: None
------
Framebuffer settings

mode "1024x768"
    geometry 1024 768 1024 768 32
    timings 0 0 0 0 0 0 0
    accel true
    rgba 8/16,8/8,8/0,0/0
endmode

Frame buffer device information:
    Name        :
    Address     : 0x9e900000
    Size        : 3145728
    Type        : PACKED PIXELS
    Visual      : TRUECOLOR
    XPanStep    : 1
    YPanStep    : 1
    YWrapStep   : 0
    LineLength  : 4096
    Accelerator : No
------
Rotation settings
0
------
Kernel Module information
Module                  Size  Used by
pvrsrvkm              179161  0
bnep                   10936  2
rfcomm                 33719  0
bluetooth             363099  10 bnep,rfcomm
ipv6                  405731  12
musb_dsps               7857  0
musb_hdrc              50144  1 musb_dsps
usbcore               182198  1 musb_hdrc
snd_soc_davinci_mcasp    16279  0
snd_soc_edma            1049  1 snd_soc_davinci_mcasp
snd_soc_omap            2888  1 snd_soc_davinci_mcasp
snd_soc_core          162187  3 snd_soc_davinci_mcasp,snd_soc_edma,snd_soc_omap
snd_compress            8651  1 snd_soc_core
snd_pcm_dmaengine       5299  2 snd_soc_core,snd_soc_omap
snd_pcm                90201  4 snd_soc_davinci_mcasp,snd_soc_core,snd_soc_omap,snd_pcm_dmaengine
snd_timer              20727  1 snd_pcm
snd                    61659  4 snd_soc_core,snd_timer,snd_pcm,snd_compress
evdev                  10836  0
joydev                  9487  0
wlcore_spi              3700  0
ti_am335x_adc           5313  0
kfifo_buf               3181  1 ti_am335x_adc
omap_rng                4634  0
industrialio           39300  2 ti_am335x_adc,kfifo_buf
rng_core                7840  1 omap_rng
soundcore               7226  1 snd
musb_am335x             1346  0
omap_wdt                4016  0
------
Boot settings
bootargs=console=ttyO0,115200n8 ip=dhcp root=/dev/nfs nfsroot=192.168.11.218:/home/uri/export/wheezy_hf,nfsvers=2 rw rootwait ip=dhcp mem=512M vram=50M
------
Linux Kernel version
Linux debian-armhf 4.1.13-01905-g27ab869-dirty #2 SMP Mon Jan 4 15:39:38 IST 2016 armv7l GNU/Linux

Thanks,

Uri

  • Hi,

    I will ask the software team to comment.
  • Hi Uri,

    This is the community debian distribution for BBB right?

    Can you share the output of
    modprobe omapdrm_pvr
    lsmod

    in TI SDK pvr driver is located in /lib/modules/<kernel_release>/extra/omapdrm_pvr.ko

    Best Regards,
    Yordan
  • Hi Yordan,

    Thank you the quick response.

    I'm using the CM-T335 module.

    The /lib/modules/<kernel_release>/extra/omapdrm_pvr.ko file is missing.

    The content of the extra directory:

    # ls -l /lib/modules/4.1.13-01905-g27ab869-dirty/extra/
    omaplfb.ko   pvrsrvkm.ko

    Maybe a kernel configuration issue?

    Thanks,

    Uri

  • Hi Uri,

    Ok, if lsmod does NOT show that they are already inserted, then you should execute modprobe omaplfb & modprobe pvrsrvkm.

    Then try:
    pvrsrvinit

    this binary should be located in usr/bin/. If the pvr init succeeds, see if your graphics applications will work.

    Hope this helps.

    Best Regards,
    Yordan
  • Hi Yordan,

    The following error messages are generated for modprobe omaplfb attempt:

    root@debian-armhf:~# modprobe omaplfb
    [ 1716.280620] omaplfb: Unknown symbol register_vsync_cb (err 0)
    [ 1716.287136] omaplfb: Unknown symbol unregister_vsync_cb (err 0)
    ERROR: could not insert 'omaplfb': Unknown symbol in module, or unknown parameter (see dmesg)

    root@debian-armhf:~# dmesg | tail -4
    [ 1247.035362] PVR: PVRCore_Init
    [ 1247.052060] PVR: PVRCore_Init: major device 247
    [ 1247.139791] omaplfb: Unknown symbol register_vsync_cb (err 0)
    [ 1247.146196] omaplfb: Unknown symbol unregister_vsync_cb (err 0)

    Thanks,

    Uri

  • Hi,

    Sorry for the delayed responose.

    I've seen these errors:
    "Unknown symbol in module, or unknown parameter "
    When the .ko file does not match the kernel tag (driver was not build against the kernel build tag).

    Did you build your omaplfb & pvr drivers against the used kernel build? That is set the KERNEL_DIR parameter to point the kernel sources, you use in your system?

    Best Regards,
    Yordan

  • Hi Yordan,

    The omaplfb & pvr drivers was built against the used kernel build.

    To set the kernel directory, the KERNEL_INSTALL_DIR parameter in the file Rules.make was updated.

    The following error messages are generated, when KERNEL_INSTALL_DIR parameter is deferent from the used kernel:

    [  470.519573] omaplfb: disagrees about version of symbol module_layout
    insmod: ERROR: could not insert module /lib/modules/4.4.0-rc7-00019-g475f69d-dirty/extra/omaplfb.ko: Invalid module format

    Please let me know how to update the KERNEL_DIR parameter.

    Thanks,

    Uri

  • Hi,
    I have same problem. You can use Ti version of SGX driver. Kernel module omapdrm_pvr.ko. For build it, go to <SDK-dir>/board-support/external-drive/<omap....>. Then cross-compile needed lib's, from SGX-SDK.
  • Just an addition to Igor's answer.

    Here are the sources of sgx ddk kernel modules & sgx ddk user modules:
    https://git.ti.com/graphics/

    Best Regards,
    Yordan
  • Do libraries have backward compatibility with am335x?
    And is there any instructions for rebuilding and installing the file system?
    The "README" file only installation. It's about a branch located at
    git.ti.com/.../k4.1

    Best Regards,
    Igor
  • Hi Yordan and Igor,

    Thank you for your help.

    I was able to build and install omapdrm_pvr.ko on the target file system.

    I'm still unable to run any of the SGX demos:
    root@cm-debian:/opt/gfxsdkdemos/ogles# ./OGLESEvilSkull
    PVR: Hint: Setting WindowSystem to libpvrPVR2D_FRONTWSEGL.so
    PVR:(Error): PVRSRVMetricsTimeNow: using (potentially) low resolution timer [97, /pvr_metrics.c]
    PVR:(Error): OpenServices: Cannot open device driver /dev/pvrsrvkm. [79, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVConnect: Unable to open connection. [337, /bridged_pvr_glue.c]
    PVR:(Error): Couldn't connect to services [58, /srv_sgx.c]
    Exit message has been set to: "PVRShell: Unable to initialise EGL

    The following build/install process was used:
    1. Build the Linux-Graphics-SDK-05.01.01.02.
    2. Install the Linux-Graphics-SDK-05.01.01.02 build result on the target file system.
    3. Build the omapdrm_pvr.ko.
    4. install omapdrm_pvr.ko on the target file system.
    5. On the target:
    /etc/init.d/335x-demo
    6. Restart the target.
    7. On the target:
    modprobe omapdrm_pvr

    I'm unable to locate pvrsrvinit (Mentioned by Yordan at Jan 11).

    Relevant lsmod part:

    root@cm-debian:/opt/gfxsdkdemos/ogles# lsmod
    Module Size Used by
    omapdrm_pvr 339508 0
    omapdrm 78118 1 omapdrm_pvr
    fb_sys_fops 1475 1 omapdrm

    Regards,
    Uri
  • Hi,

    pvrsrvinit is an executable binary that starts the SGX core. It is located in the filesystem in /usr/bin/pvrsrvinit. It can be execute as shown bellow:
    ./pvrsrvinit

    From the bootlog above, I see that you have a problem with the user modules:
    PVR:(Error): PVRSRVMetricsTimeNow: using (potentially) low resolution timer [97, /pvr_metrics.c]
    PVR:(Error): OpenServices: Cannot open device driver /dev/pvrsrvkm. [79, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVConnect: Unable to open connection. [337, /bridged_pvr_glue.c]

    Can you try to start the sgx with pvrsrvinit & then execute the demo? If that doesn't work, I suspect you may need to reinstall the user modules.

    Best Regards,
    Yordan
  • Hi Yordan,

    The following error messages are generated for pvrsrvinit attempt:

    root@am335x-evm:~# pvrsrvinit
    PVR:(Error): OpenServices: Cannot open device driver /dev/pvrsrvkm. [79, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2413, /bridged_pvr_glue.c]
    PVR:(Error): SrvInit: PVRSRVInitSrvConnect failed (4) [37, /srvinit.c]
    PVR:(Error): main: SrvInit failed (4) [49, /pvrsrvinit.c]

    Thanks,

    Uri

  • Hi Uri,

    Sorry for the delayed response.

    As I said, I've seen this errors:
    PVR:(Error): OpenServices: Cannot open device driver /dev/pvrsrvkm. [79, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2413, /bridged_pvr_glue.c]

    When the user modules were broken. Can you try reinstalling them? According to SDK02.00.01.07 software manifest you can download them from:
    git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git;protocol=git;branch=master
    Files from:
    git://arago-project.org/git/meta-arago.git
    git://arago-project.org/git/meta-ti.git

    Best Regards,
    Yordan
  • Hi,

    That's the right decision. It is currently the only one. However, the installation requires an additional library libdrm.so. You also need to add a script to auto-run pvrsrvinit. Is it possible to make these additions to the graphics-omap5-sgx-ddk-um-linux?

  • Sorry, just to clarify the above git links are from AM57xx sdk, in AM335x SDK the branch is different: am3/k4.1

    Best Regards,
    Yordan
  • Hi Yordan and Igor,

    Thank you for your patience.

    The same results after re-installation.

    Please review my installation of the user modules process:
    git clone git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git
    git checkout origin/am3/k4.1
    export DISCIMAGE=/path/to/target/file/system
    sudo -E make install

    I'm not sure what to do with the following git repositories:
    git://arago-project.org/git/meta-arago.git
    git://arago-project.org/git/meta-ti.git

    The libdrm.so library mentioned by Igor is in the file system, not installed by the the re-installation:
    # ll /path/to/target/file/system/usr/lib/ | grep libdrm
    -rwxr-xr-x 1 root root 36K 01-24 12:50 libdrm.so.2.4.0
    lrwxrwxrwx 1 root root 20 01-24 12:50 libdrm_omap.so.1 -> libdrm_omap.so.1.0.0
    lrwxrwxrwx 1 root root 15 01-24 12:50 libdrm.so.2 -> libdrm.so.2.4.0
    -rwxr-xr-x 1 root root 6.6K 01-24 12:50 libdrm_omap.so.1.0.0

    Maybe the file system or kernel that I'm using are problematic?
    The kernel was compiled from git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git
    The file system was extracted from tisdk-rootfs-image-am335x-evm.tar.gz

    Thanks,
    Uri
  • Hi,

    After extract  tisdk-rootfs-image-am335x-evm.tar.gz, you already have all needed to run the example apps from /usr/bin/SGX. 

    If you can't run apps. Try run pvrsrvinit before.

    If an error occurs, attach the boot log, run applications, the result of command lsmod, ps, ls / dev.
    I'll try to help.

    I have to start the graphics component took about a week.
    After a hard way - my way :)

  • Hi Igor,

    I'm unable to run the apps and the pvrsrvinit - both are generating error messages.

    The boot log is included with the apps and pvrsrvinit attempts.

    Good luck with the graphics component :)

    Thanks,

    Uri

    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Initializing cgroup subsys cpuset
    [    0.000000] Initializing cgroup subsys cpu
    [    0.000000] Initializing cgroup subsys cpuacct
    [    0.000000] Linux version 4.1.15-00210-g93045c7-dirty (uri@urim-desk) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03) ) #5 SMP PREEMPT Tue Jan 19 14:58:20 IST 2016
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] Machine model: CompuLab CM-T335 on SB-T335
    [    0.000000] cma: Reserved 16 MiB at 0x9e800000
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (sgx neon )
    [    0.000000] PERCPU: Embedded 13 pages/cpu @dfe95000 s23040 r8192 d22016 u53248
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129664
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/nfs nfsroot=192.168.11.218:/home/uri/export/ti-fs,nfsvers=2 rootwait rw ip=dhcp
    [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Memory: 482932K/523264K available (6856K kernel code, 629K rwdata, 2328K rodata, 420K init, 8227K bss, 23948K reserved, 16384K cma-reserved, 0K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    [    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc090063c   (9186 kB)
    [    0.000000]       .init : 0xc0901000 - 0xc096a000   ( 420 kB)
    [    0.000000]       .data : 0xc096a000 - 0xc0a0752c   ( 630 kB)
    [    0.000000]        .bss : 0xc0a0a000 - 0xc1212fd8   (8228 kB)
    [    0.000000] Running RCU self tests
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000]  RCU lockdep checking is enabled.
    [    0.000000]  Additional per-CPU info printed with stalls.
    [    0.000000]  RCU restricting CPUs from NR_CPUS=2 to nr_cpu_ids=1.
    [    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] OMAP clockevent source: timer2 at 25000000 Hz
    [    0.000022] sched_clock: 32 bits at 25MHz, resolution 40ns, wraps every 85899345900ns
    [    0.000060] clocksource timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 76450417870 ns
    [    0.000135] OMAP clocksource: timer1 at 25000000 Hz
    [    0.001507] Console: colour dummy device 80x30
    [    0.001599] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
    [    0.001615] ... MAX_LOCKDEP_SUBCLASSES:  8
    [    0.001630] ... MAX_LOCK_DEPTH:          48
    [    0.001644] ... MAX_LOCKDEP_KEYS:        8191
    [    0.001658] ... CLASSHASH_SIZE:          4096
    [    0.001672] ... MAX_LOCKDEP_ENTRIES:     32768
    [    0.001686] ... MAX_LOCKDEP_CHAINS:      65536
    [    0.001700] ... CHAINHASH_SIZE:          32768
    [    0.001714]  memory used by lock dependency info: 5167 kB
    [    0.001729]  per task-struct memory footprint: 1152 bytes
    [    0.001771] Calibrating delay loop... 597.60 BogoMIPS (lpj=2988032)
    [    0.107992] pid_max: default: 32768 minimum: 301
    [    0.108548] Security Framework initialized
    [    0.108814] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.108842] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.113814] Initializing cgroup subsys blkio
    [    0.113889] Initializing cgroup subsys memory
    [    0.114045] Initializing cgroup subsys devices
    [    0.114191] Initializing cgroup subsys freezer
    [    0.114395] Initializing cgroup subsys perf_event
    [    0.114505] CPU: Testing write buffer coherency: ok
    [    0.116918] CPU0: thread -1, cpu 0, socket -1, mpidr 0
    [    0.117111] Setting up static identity map for 0x80008280 - 0x800082f0
    [    0.159815] Brought up 1 CPUs
    [    0.159859] SMP: Total of 1 processors activated (597.60 BogoMIPS).
    [    0.159878] CPU: All CPU(s) started in SVC mode.
    [    0.165576] devtmpfs: initialized
    [    0.235023] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.318666] omap_hwmod: tptc0 using broken dt data from edma
    [    0.319609] omap_hwmod: tptc1 using broken dt data from edma
    [    0.320515] omap_hwmod: tptc2 using broken dt data from edma
    [    0.334677] omap_hwmod: debugss: _wait_target_disable failed
    [    0.338176] omap_hwmod: rtc: _wait_target_ready failed: -16
    [    0.338207] omap_hwmod: rtc: cannot be enabled for reset (3)
    [    0.397462] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.401707] pinctrl core: initialized pinctrl subsystem
    [    0.411274] NET: Registered protocol family 16
    [    0.423651] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.458260] cpuidle: using governor ladder
    [    0.488097] cpuidle: using governor menu
    [    0.507151] OMAP GPIO hardware version 0.1
    [    0.549659] omap-gpmc 50000000.gpmc: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_nandflash_pins, deferring probe
    [    0.559085] No ATAGs?
    [    0.559144] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.662106] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
    [    0.672991] SCSI subsystem initialized
    [    0.674788] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
    [    0.675349] pps_core: LinuxPPS API ver. 1 registered
    [    0.675370] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.675483] PTP clock support registered
    [    0.682948] Switched to clocksource timer1
    [    0.963729] NET: Registered protocol family 2
    [    0.967909] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.968251] TCP bind hash table entries: 4096 (order: 5, 147456 bytes)
    [    0.970713] TCP: Hash tables configured (established 4096 bind 4096)
    [    0.971093] UDP hash table entries: 256 (order: 2, 20480 bytes)
    [    0.971428] UDP-Lite hash table entries: 256 (order: 2, 20480 bytes)
    [    0.973262] NET: Registered protocol family 1
    [    0.976040] RPC: Registered named UNIX socket transport module.
    [    0.976079] RPC: Registered udp transport module.
    [    0.976098] RPC: Registered tcp transport module.
    [    0.976116] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.978616] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
    [    0.978770] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    0.989176] futex hash table entries: 256 (order: 2, 16384 bytes)
    [    0.989605] audit: initializing netlink subsys (disabled)
    [    0.990040] audit: type=2000 audit(0.980:1): initialized
    [    0.998582] VFS: Disk quotas dquot_6.6.0
    [    0.998877] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [    1.003646] NFS: Registering the id_resolver key type
    [    1.004334] Key type id_resolver registered
    [    1.004362] Key type id_legacy registered
    [    1.004753] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
    [    1.015397] io scheduler noop registered
    [    1.015459] io scheduler deadline registered
    [    1.015554] io scheduler cfq registered (default)
    [    1.019294] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    1.029052] backlight supply power not found, using dummy regulator
    [    1.037169] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
    [    1.048491] omap_uart 44e09000.serial: no wakeirq for uart0
    [    1.050190] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 155, base_baud = 3000000) is a OMAP UART0
    [    1.822189] console [ttyO0] enabled
    [    1.828963] omap_uart 48022000.serial: no wakeirq for uart1
    [    1.835789] 48022000.serial: ttyO1 at MMIO 0x48022000 (irq = 156, base_baud = 3000000) is a OMAP UART1
    [    1.848216] [drm] Initialized drm 1.1.0 20060810
    [    1.869174] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [    1.876524] [drm] No driver support for vblank timestamp query.
    [    1.950750] Console: switching to colour frame buffer device 128x48
    [    1.972639] tilcdc 4830e000.lcdc: fb0:  frame buffer device
    [    1.978585] tilcdc 4830e000.lcdc: registered panic notifier
    [    2.013032] [drm] Initialized tilcdc 1.0.0 20121205 on minor 1
    [    2.080414] brd: module loaded
    [    2.119246] loop: module loaded
    [    2.131233] mtdoops: mtd device (mtddev=name/number) must be supplied
    [    2.223032] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
    [    2.229487] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
    [    2.244685] libphy: 4a101000.mdio: probed
    [    2.248934] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver Atheros 8031 ethernet
    [    2.261217] cpsw 4a100000.ethernet: Detected MACID = 00:01:c0:18:30:8c
    [    2.278800] mousedev: PS/2 mouse device common for all mice
    [    2.287648] input: ti-tsc as /devices/platform/ocp/44e0d000.tscadc/TI-am335x-tsc/input/input0
    [    2.300324] i2c /dev entries driver
    [    2.356108] oprofile: using arm/armv7
    [    2.363511] Initializing XFRM netlink socket
    [    2.368359] NET: Registered protocol family 17
    [    2.373308] NET: Registered protocol family 15
    [    2.378689] Key type dns_resolver registered
    [    2.385358] omap_voltage_late_init: Voltage driver support not added
    [    2.392090] sr_dev_init: No voltage domain specified for smartreflex0. Cannot initialize
    [    2.400920] sr_dev_init: No voltage domain specified for smartreflex1. Cannot initialize
    [    2.412443] ThumbEE CPU extension supported.
    [    2.417427] Registering SWP/SWPB emulation handler
    [    2.422506] SmartReflex Class3 initialized
    [    2.437045] omap-gpmc 50000000.gpmc: GPMC revision 6.0
    [    2.443703] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000
    [    2.452424] omap-gpmc 50000000.gpmc: cannot request GPMC CS 0
    [    2.459133] omap-gpmc 50000000.gpmc: failed to probe DT children
    [    2.469596] omap-gpmc: probe of 50000000.gpmc failed with error -16
    [    2.486993] at24 0-0050: 256 byte 24c02 EEPROM, writable, 16 bytes/write
    [    2.516762] rtc-em3027 0-0056: rtc core: registered rtc-em3027 as rtc0
    [    2.529081] GPIO line 509 (dvi-enable) hogged as output/high
    [    2.535909] GPIO line 507 (lcd-enable) hogged as output/high
    [    2.543393] pca953x 0-0026: interrupt support not compiled in
    [    2.549712] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    2.560738] rtc-em3027 0-0056: setting system clock to 2016-01-26 10:51:15 UTC (1453805475)
    [    2.569816] sr_init: No PMIC hook to init smartreflex
    [    2.575722] sr_init: platform driver register failed for SR
    [    2.622093] net eth0: initializing cpsw version 1.12 (0)
    [    2.703862] net eth0: phy found : id is : 0x4dd074
    [    6.703948] cpsw 4a100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
    [    6.732971] Sending DHCP requests ., OK
    [    7.322992] IP-Config: Got DHCP answer from 10.1.1.240, my address is 192.168.41.62
    [    7.334717] IP-Config: Complete:
    [    7.338161]      device=eth0, hwaddr=00:01:c0:18:30:8c, ipaddr=192.168.41.62, mask=255.255.0.0, gw=192.168.0.110
    [    7.349138]      host=192.168.41.62, domain=compulab.local, nis-domain=(none)
    [    7.357026]      bootserver=10.1.1.247, rootserver=192.168.11.218, rootpath=
    [    7.364439]      nameserver0=192.168.10.13, nameserver1=10.1.1.247
    [    7.371281] vwlan_fixed: disabling
    [    7.374953] vmmc_fixed: disabling
    [    7.415598] VFS: Mounted root (nfs filesystem) on device 0:16.
    [    7.425261] devtmpfs: mounted
    [    7.429840] Freeing unused kernel memory: 420K (c0901000 - c096a000)
    INIT: version 2.88 booting
    Starting udev
    [   10.279575] random: nonblocking pool is initialized
    [   10.429832] udevd[71]: starting version 182
    [   12.968946] 47401300.usb-phy supply vcc not found, using dummy regulator
    [   14.639372] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [   15.459848] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
    
    udevadm settle - timeout of 3 seconds reached, the event queue contains:
      /sys/devices/platform/ocp/44e0b000.i2c/i2c-0/0-0026/gpio/gpiochip496 (640)
      /sys/devices/platform/ocp/44e0b000.i2c/i2c-0/0-0056/rtc/rtc0 (643)
      /sys/devices/platform/ocp/44e0d000.tscadc/TI-am335x-adc (646)
      /sys/devices/platform/ocp/44e0d000.tscadc/TI-am335x-tsc/input/input0 (648)
      /sys/devices/platform/ocp/44e0d000.tscadc/TI-am335x-tsc/input/input0/mouse0 (649)
      /sys/devices/platform/ocp/48030000.spi/spi_master/spi1/spi1.1 (656)
      /sys/devices/platform/ocp/4803c000.mcasp (657)
      /sys/devices/platform/ocp/48300000.epwmss/48300100.ecap (676)
      /sys/devices/platform/ocp/48300000.epwmss/48300100.ecap/pwm/pwmchip0 (677)
      /sys/devices/platform/ocp/48310000.rng (682)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0 (684)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan0 (685)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan1 (686)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan10 (687)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan11 (688)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan12 (689)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan13 (690)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan14 (691)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan15 (692)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan16 (693)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan17 (694)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan18 (695)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan19 (696)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan2 (697)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan20 (698)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan21 (699)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan22 (700)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan23 (701)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan24 (702)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan25 (703)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan26 (704)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan27 (705)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan28 (706)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan29 (707)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan3 (708)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan30 (709)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan31 (710)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan32 (711)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan33 (712)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan34 (713)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan35 (714)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan36 (715)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan37 (716)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan38 (717)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan39 (718)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan4 (719)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan40 (720)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan41 (721)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan42 (722)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan43 (723)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan44 (724)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan45 (725)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan46 (726)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan47 (727)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan48 (728)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan49 (729)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan5 (730)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan50 (731)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan51 (732)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan52 (733)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan53 (734)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan54 (735)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan55 (736)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan56 (737)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan57 (738)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan58 (739)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan59 (740)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan6 (741)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan60 (742)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan61 (743)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan62 (744)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan63 (745)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan7 (746)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan8 (747)
      /sys/devices/platform/ocp/49000000.edma/edma-dma-engine.0/dma/dma0chan9 (748)
      /sys/devices/platform/ocp/4a100000.ethernet/44e10650.cpsw-phy-sel (750)
      /sys/devices/platform/ocp/4a100000.ethernet/4a101000.mdio (751)
      /sys/devices/platform/ocp/4a100000.ethernet/4a101000.mdio/4a101000.mdio:00 (752)
      /sys/devices/platform/ocp/4a100000.ethernet/4a101000.mdio/mdio_bus/4a101000.mdio (753)
      /sys/devices/platform/ocp/4a100000.ethernet/net/eth0 (754)
      /sys/devices/platform/ocp/ocp:l4_wkup@44c00000/44d00000.wkup_m3 (762)
      /sys/devices/platform/ocp/ocp:l4_wkup@44c00000/44e00000.prcm (763)
      /sys/devices/platform/ocp/ocp:l4_wkup@44c00000/44e10000.scm (764)
      /sys/devices/platform/ocp/ocp:l4_wkup@44c00000/44e10000.scm/44e10000.scm_conf (765)
      /sys/devices/platform/ocp/ocp:l4_wkup@44c00000/44e10000.scm/44e10800.pinmux (766)
      /sys/devices/platform/ocp/ocp:l4_wkup@44c00000/44e10000.scm/44e11324.wkup_m3_ipc (767)
      /sys/devices/platform/serial8250 (775)
      /sys/devices/platform/soc (776)
      /sys/devices/platform/soc/soc:mpu (777)
      /sys/devices/platform/sound (778)
      /sys/devices/tracepoint (785)
    bootlogd: cannot allocate pseudo tty: No such file or directory
    Starting random number generator daemon[   29.361482] usbcore: registered new interface driver usbfs
    [   29.714688] usbcore: registered new interface driver hub
    [   29.889193] usbcore: registered new device driver usb
    .
    [   31.569190] musb-hdrc musb-hdrc.0.auto: MUSB HDRC host driver
    [   31.586363] musb-hdrc musb-hdrc.0.auto: new USB bus registered, assigned bus number 1
    [   31.618929] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [   31.636115] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   31.651334] usb usb1: Product: MUSB HDRC host driver
    [   31.662461] usb usb1: Manufacturer: Linux 4.1.15-00210-g93045c7-dirty musb-hcd
    [   31.683570] usb usb1: SerialNumber: musb-hdrc.0.auto
    [   31.747258] hub 1-0:1.0: USB hub found
    [   31.757572] hub 1-0:1.0: 1 port detected
    [   32.243506] usb 1-1: new high-speed USB device number 2 using musb-hdrc
    [   32.394160] usb 1-1: New USB device found, idVendor=0424, idProduct=2514
    [   32.401549] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
    [   32.441613] hub 1-1:1.0: USB hub found
    [   32.453741] hub 1-1:1.0: 4 ports detected
    ALSA: Restoring mixer settings...
    /usr/sbin/alsactl: load_state:1729: No soundcards found...
    INIT: Entering runlevel: 5
    NOT configuring network interfaces: / is an NFS mount
    udhcpc (v1.23.1) started
    Sending discover...
    Sending select for 192.168.43.84...
    Lease of 192.168.43.84 obtained, lease time 600
    /etc/udhcpc.d/50default: Adding DNS 192.168.10.13
    /etc/udhcpc.d/50default: Adding DNS 10.1.1.247
    Starting system message bus: dbus.
    UIM SYSFS Node Not Found
    Initializing the graphics driver ...
    PVR:(Error): OpenServices: Cannot open device driver /dev/omapdrm_pvr. [140, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2572, /bridged_pvr_glue.c]
    PVR:(Error): SrvInit: PVRSRVInitSrvConnect failed (4) [37, /srvinit.c]
    PVR:(Error): main: SrvInit failed (4) [49, /pvrsrvinit.c]
    Starting Dropbear SSH server: [   46.709244] NET: Registered protocol family 10
    dropbear.
    Starting telnet daemon.
    Starting rpcbind daemon...done.
    starting statd: done
    Starting syslogd/klogd: done
    Starting thttpd.
    Starting Lighttpd Web Server: 2016-01-26 10:52:01: (/home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/lighttpd/1.4.35-r1/lighttpd-1.4.35/src/log.c.164) server started 
    lighttpd.
    /
    Starting Matrix GUI application.
    Enabling thermal zones...
    /etc/rc5.d/S98thermal-zone-init: line 7: /sys/class/thermal/thermal_zone*/mode: No such file or directory
    ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the following GPLv3 packages:
            autoconf
            binutils
            cpp-symlinks
            cpp
            g++-symlinks
            g++
            gcc-symlinks
            gcc
            gdb
            gdbserver
            gstreamer1.0-libav
            libgmp10
            libmpc3
            libmpfr4
            make
    
    If you do not wish to distribute GPLv3 components please remove
    the above packages prior to distribution.  This can be done using
    the opkg remove command.  i.e.:
        opkg remove <package>
    Where <package> is the name printed in the list above
    
    NOTE: If the package is a dependency of another package you
          will be notified of the dependent packages.  You should
          use the --force-removal-of-dependent-packages option to
          also remove the dependent packages as well
    ***************************************************************
    ***************************************************************
    
     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            
    
    Arago Project http://arago-project.org am335x-evm /dev/ttyO0
    
    Arago 2015.12 am335x-evm /dev/ttyO0
    
    am335x-evm login: root
    root@am335x-evm:~# modprobe omapdrm_pvr
    root@am335x-evm:~# /usr/bin/SGX/demos/Raw/OGLESEvilSkull 
    PVR: Hint: Setting WindowSystem to libpvrDRMWSEGL_FRONT.so
    
    PVR:(Error): OpenServices: Cannot open device driver /dev/omapdrm_pvr. [140, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVConnect: Unable to open connection. [361, /bridged_pvr_glue.c]
    Cannot initialize PVR2D contex
    Exit message has been set to: "PVRShell: Unable to initialise EGL
    ".
    PVRShell: EGL Error (EGL_NOT_INITIALIZED)
    InitAPI failed!
    PVRShell: Unable to initialise EGL
    root@am335x-evm:~# pvrsrvinit
    PVR:(Error): OpenServices: Cannot open device driver /dev/omapdrm_pvr. [140, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2572, /bridged_pvr_glue.c]
    PVR:(Error): SrvInit: PVRSRVInitSrvConnect failed (4) [37, /srvinit.c]
    PVR:(Error): main: SrvInit failed (4) [49, /pvrsrvinit.c]
    root@am335x-evm:~# 
    root@am335x-evm:~# lsmod
    Module                  Size  Used by
    omapdrm_pvr           340573  0 
    omapdrm                78118  1 omapdrm_pvr
    fb_sys_fops             1475  1 omapdrm
    ipv6                  410534  24 
    musb_dsps               7857  0 
    musb_hdrc              50144  1 musb_dsps
    usbcore               182198  1 musb_hdrc
    snd_soc_davinci_mcasp    16279  0 
    snd_soc_edma            1049  1 snd_soc_davinci_mcasp
    snd_soc_omap            2888  1 snd_soc_davinci_mcasp
    snd_soc_core          170089  3 snd_soc_davinci_mcasp,snd_soc_edma,snd_soc_omap
    snd_compress            8651  1 snd_soc_core
    snd_pcm_dmaengine       5299  2 snd_soc_core,snd_soc_omap
    snd_pcm                90201  4 snd_soc_davinci_mcasp,snd_soc_core,snd_soc_omap,snd_pcm_dmaengine
    evdev                  10840  0 
    snd_timer              20727  1 snd_pcm
    ti_am335x_adc           5313  0 
    joydev                  9495  0 
    kfifo_buf               3181  1 ti_am335x_adc
    snd                    61659  4 snd_soc_core,snd_timer,snd_pcm,snd_compress
    industrialio           39300  2 ti_am335x_adc,kfifo_buf
    wlcore_spi              3700  0 
    omap_rng                4634  0 
    rng_core                7840  2 omap_rng
    soundcore               7226  1 snd
    omap_wdt                4016  0 
    musb_am335x             1346  0 
    root@am335x-evm:~# ps
      PID USER       VSZ STAT COMMAND
        1 root      1384 S    init [5]
        2 root         0 SW   [kthreadd]
        3 root         0 SW   [ksoftirqd/0]
        5 root         0 SW<  [kworker/0:0H]
        6 root         0 SW   [kworker/u2:0]
        7 root         0 SW   [rcu_preempt]
        8 root         0 SW   [rcu_sched]
        9 root         0 SW   [rcu_bh]
       10 root         0 SW   [migration/0]
       11 root         0 SW<  [khelper]
       12 root         0 SW   [kdevtmpfs]
       13 root         0 SW<  [netns]
       14 root         0 SW<  [perf]
       15 root         0 SW   [kworker/0:1]
       16 root         0 SW<  [writeback]
       17 root         0 SW<  [crypto]
       18 root         0 SW<  [bioset]
       19 root         0 SW<  [kblockd]
       20 root         0 SW<  [rpciod]
       21 root         0 SW   [kswapd0]
       22 root         0 SW   [fsnotify_mark]
       23 root         0 SW<  [nfsiod]
       31 root         0 SW   [spi1]
       32 root         0 SW   [kworker/u2:1]
       35 root         0 SW<  [deferwq]
       36 root         0 SW   [irq/157-44e0b00]
       37 root         0 SW   [kworker/0:2]
       38 root         0 SW<  [kworker/0:1H]
       71 root      3012 S    /lib/udev/udevd -d
      190 root         0 SW   [irq/183-TI-am33]
      384 root         0 SW   [irq/188-4803c00]
      388 root         0 SW   [irq/187-4803c00]
      460 root      3008 S    /lib/udev/udevd -d
      461 root      3008 S    /lib/udev/udevd -d
      462 root      1368 S    /usr/sbin/rngd
      572 root      1956 S    udhcpc
      578 messageb  2592 S    /usr/bin/dbus-daemon --system
      592 root         0 SW<  [ipv6_addrconf]
      593 root      2236 S    /usr/sbin/dropbear -r /etc/dropbear/dropbear_rsa_hos
      596 root      1956 S    /usr/sbin/telnetd
      600 rpc       2216 S    /usr/sbin/rpcbind
      605 rpcuser   1980 S    /usr/sbin/rpc.statd
      613 root      1956 S    /sbin/syslogd -n -O /var/log/messages
      615 root      1956 S    /sbin/klogd -n
      618 nobody    2476 S    /usr/sbin/thttpd -d /srv/www -p 8080
      622 root      4444 S    /usr/sbin/lighttpd -f /etc/lighttpd.conf
      700 root      3396 S    /bin/login --
      701 root      1960 S    /sbin/getty 38400 tty1
      702 root      2812 S    -sh
      725 root      2372 R    ps
    root@am335x-evm:~# ls /dev
    autofs              pts                 tty19               tty52
    block               ram0                tty2                tty53
    bus                 ram1                tty20               tty54
    char                ram10               tty21               tty55
    console             ram11               tty22               tty56
    cpu_dma_latency     ram12               tty23               tty57
    dri                 ram13               tty24               tty58
    fb                  ram14               tty25               tty59
    fb0                 ram15               tty26               tty6
    fd                  ram2                tty27               tty60
    full                ram3                tty28               tty61
    hwrng               ram4                tty29               tty62
    i2c-0               ram5                tty3                tty63
    iio:device0         ram6                tty30               tty7
    initctl             ram7                tty31               tty8
    input               ram8                tty32               tty9
    kmem                ram9                tty33               ttyO0
    kmsg                random              tty34               ttyO1
    log                 rtc                 tty35               ttyS0
    loop-control        rtc0                tty36               ttyS1
    loop0               shm                 tty37               ttyS2
    loop1               snd                 tty38               ttyS3
    loop2               stderr              tty39               ubi_ctrl
    loop3               stdin               tty4                udev_network_queue
    loop4               stdout              tty40               urandom
    loop5               tty                 tty41               vcs
    loop6               tty0                tty42               vcs1
    loop7               tty1                tty43               vcs2
    mem                 tty10               tty44               vcs4
    memory_bandwidth    tty11               tty45               vcsa
    mtab                tty12               tty46               vcsa1
    network_latency     tty13               tty47               vcsa2
    network_throughput  tty14               tty48               vcsa4
    null                tty15               tty49               vhci
    psaux               tty16               tty5                watchdog
    ptmx                tty17               tty50               watchdog0
    ptp0                tty18               tty51               zero
    

  • Hi Uri,

    It seems that your kernel is indeed somehow damaged. Udev cannot properly stat the SGX for some reason.

    Is it possible to try with the Official SDK release: software-dl.ti.com/.../index_FDS.html

    Download ti-processor-sdk-linux-am335x-evm-02.00.01.07-Linux-x86-Install.bin make it executable & install the SDK sources with ./ti-processor-sdk-linux-am335x-evm-02.00.01.07-Linux-x86-Install.bin

    Build the kernel with your customizations in dts, defconfig & drivers (so that they match your custom board)... Then install the prebuilt filesystem & change the kernel & dts inside /boot directory with your custom builds.

    Best Regards,
    Yordan
  • Hi Yorden,

    The kernel was build from the official SDK release, following path:
    board-support/linux-4.1.13+gitAUTOINC+8dc66170d9-g8dc6617
    The following file system was used from the official SDK release:
    filesystem/tisdk-rootfs-image-am335x-evm.tar.gz

    After kernel compilation, the following error messages were generated for KOs installation attempt:
    $ INSTALL_MOD_PATH=/path/to/file/system/ make modules_install
    INSTALL crypto/arc4.ko
    [ ... ]
    INSTALL sound/soundcore.ko
    DEPMOD 4.1.13-g8dc6617
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/cryptodev.ko needs unknown symbol mutex_lock
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_save_state
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_request_region
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_enable_device
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_choose_state
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_get_device
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_set_power_state
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_clear_master
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol preempt_schedule
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol mutex_lock
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol mutex_lock_interruptible
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_restore_state
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_set_master
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_disable_device
    depmod: WARNING: /path/to/file/system/lib/modules/4.1.13-g8dc6617/extra/omapdrm_pvr.ko needs unknown symbol pci_release_region

    The following error messages are generated on the target for omapdrm_pvr.ko load attempt:
    root@am335x-evm:~# modprobe omapdrm_pvr
    [ 129.401818] omapdrm_pvr: disagrees about version of symbol module_layout

    Thanks,
    Uri
  • Hi, 

    Absolutely correct warning and error.
    When assembling the module graphics and encryption options in the kernel has enabled support for "pci".

    Kernel modules have a number of dependencies on existing components in a vigorous for which they were collected. When the differences are not significant, you will receive a warning. In case of violation of dependencies get an error or mismatch about version of symbol module_layout.

    This means that by removing one or more kernel modules in the source code which was needed string EXPORT_SYMBOL line you get a mismatch of dependencies. EXPORT_SYMBOL makes a symbol accessible to dynamically loaded modules (provided that said modules add an extern declaration).

    Decision.

    1.  untar tisdk-rootfs-image-am335x-computers
    2.  in the root directory ti-processor-sdk-linux-am335x-evm-02.00.01.07 edit Rules.make. Install or check the correct values for all items.
    3.  in the root directory ti-processor-sdk-linux-am335x-evm-02.00.01.07 enter commands:
    • sudo make clean  
    • sudo make all
    • sudo make install 

    More information: processors.wiki.ti.com/.../Processor_Linux_SDK_Top-Level_Makefile.

    Look for more information about the linux kernel module dependencies in Google

    Best Regards, 

    Igor

  • Hi,

    The same result after following Igor's recommendation - complete compilation and/ installation from the official SDK:

    root@am335x-evm:~# pvrsrvinit
    PVR:(Error): OpenServices: Cannot open device driver /dev/omapdrm_pvr. [140, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2572, /bridged_pvr_glue.c]
    PVR:(Error): SrvInit: PVRSRVInitSrvConnect failed (4) [37, /srvinit.c]
    PVR:(Error): main: SrvInit failed (4) [49, /pvrsrvinit.c]

    Can it be a kernel configuration issue?

    Thanks,

    Uri

  • Hi Yordan,

    My kernel is linux-3.2.0-psp05.06.00.00. I install the Graphics_SDK_4_08_00_02.
    This is what I get after ./gfx_check.sh:

    root@jane /home$ ./gfx_check.sh
    WSEGL settings
    [default]
    WindowSystem=libpvrPVR2D_FRONTWSEGL.so
    #WindowSystem=libpvrPVR2D_FLIPWSEGL.so

    ------
    ARM CPU information
    Processor       : ARMv7 Processor rev 2 (v7l)
    BogoMIPS        : 597.60
    Features        : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls
    CPU implementer : 0x41
    CPU architecture: 7
    CPU variant     : 0x3
    CPU part        : 0xc08
    CPU revision    : 2

    Hardware        : am335xevm
    Revision        : 0000
    Serial          : 0000000000000000
    ------
    SGX driver information
    Version SGX_DDK_Linux_CustomerTI sgxddk 19 1.9@2188537 (debug) /home/jane/graphics/Graphics_SDK_4_08_00_02/GFX_Linux_KM
    System Version String: None
    ------
    Framebuffer settings
    fbset: can't open '/dev/fb/0': No such file or directory
    ------
    Rotation settings
    0
    ------
    Kernel Module information
    pvrsrvkm 494222 6 - Live 0xbf000000 (O)
    ------
    Boot settings
    console=ttyO0,115200 mem=200M sysdebug=on root=/dev/nfs ip=dhcp nfsroot=192.168.2.4:/nfsroot/the_rootfs_jane,v3,tcp
    ------
    Linux Kernel version
    Linux Tek-ULPP 3.2.0 #2 PREEMPT Fri Aug 5 14:29:24 CST 2016 armv7l GNU/Linux

    But after I run 335x-demo, get the error:

    root@jane /etc/init.d$ ./335x-demo
    0x10205
    debug8.x
    installing 8.x SGX debug user libraries

    Installing PowerVR Consumer/Embedded DDK 'sgxddk_1.9@2188537' on target

    File system installation root is /

    Nothing to un-install.
    boot script rc.pvr -> /etc/init.d/rc.pvr
    kernel module pvrsrvkm.ko -> /lib/modules/3.2.0/extra/pvrsrvkm.ko
    kernel module omaplfb.ko -> /lib/modules/3.2.0/extra/omaplfb.ko
    shared library libGLES_CM.so -> /usr/lib/libGLES_CM.so.1.9.2188537
    shared library libusc.so -> /usr/lib/libusc.so.1.9.2188537
    shared library libGLESv2.so -> /usr/lib/libGLESv2.so.1.9.2188537
    shared library libglslcompiler.so -> /usr/lib/libglslcompiler.so.1.9.2188537
    shared library libIMGegl.so -> /usr/lib/libIMGegl.so.1.9.2188537
    shared library libEGL.so -> /usr/lib/libEGL.so.1.9.2188537
    shared library libpvr2d.so -> /usr/lib/libpvr2d.so.1.9.2188537
    shared library libpvrPVR2D_BLITWSEGL.so -> /usr/lib/libpvrPVR2D_BLITWSEGL.so.1.9.2188537
    shared library libpvrPVR2D_FLIPWSEGL.so -> /usr/lib/libpvrPVR2D_FLIPWSEGL.so.1.9.2188537
    shared library libpvrPVR2D_FRONTWSEGL.so -> /usr/lib/libpvrPVR2D_FRONTWSEGL.so.1.9.2188537
    shared library libpvrPVR2D_LINUXFBWSEGL.so -> /usr/lib/libpvrPVR2D_LINUXFBWSEGL.so.1.9.2188537
    shared library libpvrEWS_WSEGL.so -> /usr/lib/libpvrEWS_WSEGL.so.1.9.2188537
    shared library libsrv_um.so -> /usr/lib/libsrv_um.so.1.9.2188537
    shared library libsrv_init.so -> /usr/lib/libsrv_init.so.1.9.2188537
    shared library libPVRScopeServices.so -> /usr/lib/libPVRScopeServices.so.1.9.2188537
    shared library libews.so -> /usr/lib/libews.so.1.9.2188537
    binary pvrsrvctl -> /usr/local/bin/pvrsrvctl
    binary sgx_init_test -> /usr/local/bin/sgx_init_test
    binary ews_server -> /usr/local/bin/ews_server
    binary ews_server_es2 -> /usr/local/bin/ews_server_es2
    binary services_test -> /usr/local/bin/services_test
    binary sgx_blit_test -> /usr/local/bin/sgx_blit_test
    binary sgx_clipblit_test -> /usr/local/bin/sgx_clipblit_test
    binary sgx_flip_test -> /usr/local/bin/sgx_flip_test
    binary sgx_render_flip_test -> /usr/local/bin/sgx_render_flip_test
    binary pvr2d_test -> /usr/local/bin/pvr2d_test
    binary gles1test1 -> /usr/local/bin/gles1test1
    binary gles2test1 -> /usr/local/bin/gles2test1
    shader glsltest1_vertshader.txt -> /usr/local/bin/glsltest1_vertshader.txt
    shader glsltest1_fragshaderA.txt -> /usr/local/bin/glsltest1_fragshaderA.txt
    shader glsltest1_fragshaderB.txt -> /usr/local/bin/glsltest1_fragshaderB.txt
    binary eglinfo -> /usr/local/bin/eglinfo
    binary ews_test_gles1 -> /usr/local/bin/ews_test_gles1
    binary ews_test_gles2 -> /usr/local/bin/ews_test_gles2
    shader ews_test_gles2_main.vert -> /usr/local/bin/ews_test_gles2_main.vert
    shader ews_test_gles2_main.frag -> /usr/local/bin/ews_test_gles2_main.frag
    shader ews_test_gles2_pp.vert -> /usr/local/bin/ews_test_gles2_pp.vert
    shader ews_test_gles2_pp.frag -> /usr/local/bin/ews_test_gles2_pp.frag
    binary ews_test_swrender -> /usr/local/bin/ews_test_swrender

    Installation complete!
    You may now reboot your target.

    [   39.238342] Disabling lock debugging due to kernel taint
    [   39.275299] PVR: PVRCore_Init
    [   39.291290] PVR: PVRSRVDriverProbe(pDevice=bf069a18)
    [   39.296661] PVR: EnableSystemClocks: Enabling System Clocks
    [   39.319458] PVR: GPTIMER11 clock is 25MHz
    [   39.324279] PVR: PVRCore_Init: major device 252
    [   39.463745] PVR: Installing MISR with cookie bf06caf8
    [   39.469360] PVR: Installing device LISR SGX ISR on IRQ 37 with cookie cc2ccac0
    [   39.477478] Unhandled fault: external abort on non-linefetch (0x1028) at 0xd0000014
    [   39.485534] Internal error: : 1028 [#1] PREEMPT
    [   39.490325] Modules linked in: pvrsrvkm(O)
    [   39.494659] CPU: 0    Tainted: G           O  (3.2.0 #2)
    [   39.500457] PC is at OSReadHWReg+0x24/0x48 [pvrsrvkm]
    [   39.505920] LR is at SysCreateVersionString+0x50/0x124 [pvrsrvkm]
    [   39.512268] pc : [<bf02b8cc>]    lr : [<bf048148>]    psr: a0000013
    [   39.512298] sp : cba01d78  ip : cba01d98  fp : cba01d94
    [   39.524261] r10: 00000000  r9 : cba00000  r8 : 00000000
    [   39.529724] r7 : cc306200  r6 : c01c6745  r5 : bea1c95c  r4 : bf06caf8
    [   39.536529] r3 : d0000014  r2 : d0000000  r1 : 00000014  r0 : d0000000
    [   39.543334] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
    [   39.550781] Control: 10c5387d  Table: 8c2a8019  DAC: 00000015
    [   39.556762] Process pvrsrvctl (pid: 1159, stack limit = 0xcba002f0)
    [   39.563323] Stack: (0xcba01d78 to 0xcba02000)
    [   39.567871] 1d60:                                                       00000014 d0000000
    [   39.576385] 1d80: bf05a79c d0000000 cba01dc4 cba01d98 bf048148 bf02b8b4 bf0309c8 cc2ccac0
    [   39.584930] 1da0: bf05a79c 00000080 bf02a5bc 00000025 cc284b40 d0000000 cba01de4 cba01dc8
    [   39.593475] 1dc0: bf0489ec bf048104 00000008 00000000 cc30a9c0 cc30a9c0 cba01e14 cba01de8
    [   39.601989] 1de0: bf011b40 bf0488e4 cc23cc80 ffa1c9ab 00000000 00000001 bea1c9a4 bf06caf8
    [   39.610534] 1e00: cba01dfc 00000001 cba01e34 cba01e18 bf040d94 bf011abc cc23cc80 cd07e000
    [   39.619079] 1e20: cd07d000 00000045 cba01e74 cba01e38 bf04388c bf040cfc 00000008 00000001
    [   39.627624] 1e40: cba01ea4 cc23cc80 bf06caf8 cc1cf300 cba01e48 bf040cf0 cd07e000 cd07d000
    [   39.636138] 1e60: 00000045 fffffff2 cba01f04 cba01e78 bf02ece4 bf043558 c8c58f60 cb9b15c0
    [   39.644683] 1e80: cba01ed4 cba01e90 bf024eb0 bea1c95c c01c6745 cc30a9c0 8c3bac90 c8c5cf98
    [   39.653228] 1ea0: cc23cc80 00000045 0000001c bea1c9a4 00000008 bea1c99c 00000008 00000001
    [   39.661773] 1ec0: c8c5cd24 c8c58f8c cba01f14 cba01ed8 c8c66f00 bf024d64 bf0528f8 c8c5ccf8
    [   39.670288] 1ee0: 00000000 c01c6745 cba01ea4 00000487 bea1c95c fffffff2 cba01f74 cba01f08
    [   39.678833] 1f00: c00c6580 bf02e99c cc2d4440 cc2d4440 c061e870 00000000 cc2d4440 cc2d4440
    [   39.687377] 1f20: cba01f44 cba01f30 c00a1ac8 c00b1b44 405d2000 cc1da800 cba01f84 cba01f48
    [   39.695892] 1f40: 60000013 cba00000 405d3000 cc1da834 cc30a9c0 bea1c95c c01c6745 00000003
    [   39.704437] 1f60: 00000000 cba00000 cba01fa4 cba01f78 c00c6b08 c00c6504 cba01fa4 00000000
    [   39.712982] 1f80: c00a3fbc 40249b70 40248000 00008ca0 00000036 c0014628 00000000 cba01fa8
    [   39.721527] 1fa0: c0014480 c00c6a98 40249b70 40248000 00000003 c01c6745 bea1c95c bea1c95c
    [   39.730041] 1fc0: 40249b70 40248000 00008ca0 00000036 00000000 00000000 40052000 bea1c984
    [   39.738586] 1fe0: 00000000 bea1c940 400e4abc 401df1cc 60000010 00000003 00000000 00000000
    [   39.747100] Backtrace:
    [   39.749877] [<bf02b8a8>] (OSReadHWReg+0x0/0x48 [pvrsrvkm]) from [<bf048148>] (SysCreateVersionString+0x50/0x124 [pvrsrvkm])
    [   39.761718] [<bf0480f8>] (SysCreateVersionString+0x0/0x124 [pvrsrvkm]) from [<bf0489ec>] (SysFinalise+0x114/0x198 [pvrsrvkm])
    [   39.773681] [<bf0488d8>] (SysFinalise+0x0/0x198 [pvrsrvkm]) from [<bf011b40>] (PVRSRVFinaliseSystem+0x90/0x13c [pvrsrvkm])
    [   39.785217]  r4:cc30a9c0
    [   39.788024] [<bf011ab0>] (PVRSRVFinaliseSystem+0x0/0x13c [pvrsrvkm]) from [<bf040d94>] (PVRSRVInitSrvDisconnectBW+0xa4/0xf8 [pvrsrvkm])
    [   39.800933] [<bf040cf0>] (PVRSRVInitSrvDisconnectBW+0x0/0xf8 [pvrsrvkm]) from [<bf04388c>] (BridgedDispatchKM+0x340/0x3e8 [pvrsrvkm])
    [   39.813629] [<bf04354c>] (BridgedDispatchKM+0x0/0x3e8 [pvrsrvkm]) from [<bf02ece4>] (PVRSRV_BridgeDispatchKM+0x354/0x4a0 [pvrsrvkm])
    [   39.826171] [<bf02e990>] (PVRSRV_BridgeDispatchKM+0x0/0x4a0 [pvrsrvkm]) from [<c00c6580>] (do_vfs_ioctl+0x88/0x594)
    [   39.837066] [<c00c64f8>] (do_vfs_ioctl+0x0/0x594) from [<c00c6b08>] (sys_ioctl+0x7c/0x84)
    [   39.845611]  r9:cba00000 r8:00000000 r7:00000003 r6:c01c6745 r5:bea1c95c
    [   39.852447] r4:cc30a9c0
    [   39.855194] [<c00c6a8c>] (sys_ioctl+0x0/0x84) from [<c0014480>] (ret_fast_syscall+0x0/0x30)
    [   39.863891]  r8:c0014628 r7:00000036 r6:00008ca0 r5:40248000 r4:40249b70
    [   39.870910] Code: e50b101c e51b2018 e51b301c e0823003 (e5933000)
    [   39.877746] ---[ end trace dc99644845caad0a ]---

     

    Best Regards

    xixiguo