This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How could I make sure the driver work success?

Note: This was originally posted on 3rd November 2011 at http://forums.arm.com

Dear all,

I'm trying to build linux Mali200 driver in arm system.
I build mali.ko and insert it success in linux.
The attachment is log when I insert module.
It always told me "Mali device driver r2p2-03rel0 loaded".

Would you please tell me how could I make sure the driver work success?
Because I try to run the SimpleProject.
It always get the error message "Error: No EGL Display available at src/egl_runtime.c:64"

thanks.

James
Parents
  • Note: This was originally posted on 3rd November 2011 at http://forums.arm.com

    Hi Pete,

    Thanks for your information.

    #cat /proc/devices
    Character devices:
    ...
    29 fb
    ...
    250 mali
    251 ump


    My framebuffer device is /dev/fb.
    So I send the command "export FRAMEBUFFER=/dev/fb" than

    insmod ump.ko ump_major=251; insmod mali.ko mali_major=250 mali_debug_level=6

    And my userspace libraries is in /lib/gles20.

    # ls /lib/gles20/
    libEGL.so         libEGL.so.1.4     libGLESv2.so.2    libMali.so
    libEGL.so.1       libGLESv2.so      libGLESv2.so.2.0  libstdc++.so.6


    But I think it can find userspace libraries. If not it will show above
    # ./main.exe
    ./main.exe: error while loading shared libraries: libEGL.so: cannot open shared object file: No such file or directory


    Thanks.

    James
Reply
  • Note: This was originally posted on 3rd November 2011 at http://forums.arm.com

    Hi Pete,

    Thanks for your information.

    #cat /proc/devices
    Character devices:
    ...
    29 fb
    ...
    250 mali
    251 ump


    My framebuffer device is /dev/fb.
    So I send the command "export FRAMEBUFFER=/dev/fb" than

    insmod ump.ko ump_major=251; insmod mali.ko mali_major=250 mali_debug_level=6

    And my userspace libraries is in /lib/gles20.

    # ls /lib/gles20/
    libEGL.so         libEGL.so.1.4     libGLESv2.so.2    libMali.so
    libEGL.so.1       libGLESv2.so      libGLESv2.so.2.0  libstdc++.so.6


    But I think it can find userspace libraries. If not it will show above
    # ./main.exe
    ./main.exe: error while loading shared libraries: libEGL.so: cannot open shared object file: No such file or directory


    Thanks.

    James
Children
  • hello,James

    I meet the same question with you .

    could tell me how you get such lib:

    /lib/gles20/
    libEGL.so         libEGL.so.1.4     libGLESv2.so.2    libMali.so
    libEGL.so.1       libGLESv2.so      libGLESv2.so.2.0  libstdc++.so.6

    when I tranparent the lib , I just use the compiled lib at SDK_PATH/build_arm/lib/arm,but there only are three lib files:

    libEGL.so                    libGLESv1_CM.so                libGLESv2.so

    Could tell me the way where I can get them ?

              Thanks.

              Larry

  • Hi Larry,

    As with most Linux based systems, they would be symlinks to each other.

    E.g. libEGL.so -> libEGL.so.1 -> libEGL.so.1.4

    Please note that the binaries found in the SDK are for linking only. You will need to run it using the binaries on your target hardware, not these.

    Finally, this original thread was from 2013, this discussion was based around Utgard, and that had a monolithic library where EGL, GLESv1 and GLESv2 were symlinks to libMali.so.

    Depending on your target hardware, this may not be the case.

    Kind Regards,

    Michael McGeagh

  • Hi ,Michael

    Thanks for you help .And I know the reason.

    My target board have a CPU exynos 4412 which contain a GPU Mali 400 , and I just find the kernel driver on the Mali Developer Center. But  I couldn't find the user space drivers for OpenGL ES .

    So do you know how to find source code of OpenGL ES  for the Mali 400 .I had find all the Mali Developer Center but couldn't find it .

    Thanks

    Larry

  • Hi Larry,

    The Mali Driver comes in 2 parts, kernel side and userspace side.

    The kernel side is under GPL and freely available to download from our website, as you have already found.

    However the userspace side is proprietary. We do not give the sources publicly to this.

    It is expected that you get your Mali driver from the SoC vendor. In this instance it would be Samsung.

    However please note that a lot of development board companies also provide BSPs with working Mali driver binaries integrated.

    For example, if you were using the HardKernel ODROID X (which has the Exynos 4412), you would obtain the userspace Mali driver from HardKernel.

    I hope that helps clarify things for you.

    Kind Regards

    Michael McGeagh