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 No display android UI,logcat show that E/FramebufferNativeWindow( 355): couldn't open framebuffer HAL (Bad address)

Other Parts Discussed in Thread: AM3359

Hi All:

         We do an out AM3359 board , it reference AM335x EVM.

        what difference between TI AM335x EVM and our AM3359 board.

                              TI AM335x EVM         our AM3359 board

        ETH                 may be grmii               MII

       WIFI                 wl127x                            No wifi  No BT

       Audio             McASP1                         McASP0

      other is same.

        And We have run it in linux embeded os.

        But when we  do android os on our AM3359 board,it can show robot, but can't display other after this.

        So I do logcat to an file.

         it show many error,such as :

         E/BatteryService(  355): Could not open /sys/class/power_supply
         I/sysproc (  355): Entered system_init()
         I/sysproc (  355): ServiceManager: 0x7cac0
         I/SurfaceFlinger(  355): SurfaceFlinger is starting
         I/SurfaceFlinger(  355): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...
         E/FramebufferNativeWindow(  355): couldn't open framebuffer HAL (Bad address)

        I think this error may cause no display Android desktop.

        I do the filesystem follow   TI-Android-GingerBread-2_3_4-DevKit-2_1_1 DeveloperGuide.mht   and TI-Android-GingerBread-2_3_4-DevKit-2_1_1 UserGuide.mht

                                1.  download TI_Android_GingerBread_2_3_4_AM335x_Sources.tar.gz

                                2. cd TI_Android_GingerBread_2_3_4_AM335x_Sources             ./.repo/repo/repo sync --local-only

                                3. make TARGET_PRODUCT=am335xevm OMAPES=4.x -j2

            0624.console-log.txt

       

                0636.logcat-20120227-0840.txt                           

        Can you help me , I am very worried. Thank you very much!

        Regards

        nmy

 

 

 

  • Hi nmy,

    Can you try without the SGX components?

    Easy way to disable SGX is

    1) delete system/bin/sgx/rc.pvr

    2) delete /system/lib/hw/gralloc.omap3.so.*

    The differences you mentioned could not create boot up problems.

    What is your panel size and depth?

  • Could you please check whether pvrsrvkm.ko and omaplfb.ko kernel modules are properly inserted on your platform?

    Also there seems to be an issue with the following from the logs, could you please ensure that there are no illegal memory writes -

    # devmem2 0x4830A204 
    
    /dev/mem opened.[  108.236082] Unhandled fault: external abort on non-linefetch (0x1018) at 0x40160204
    
    Memory mapped at address 0x40160000.
    [  108.358730] Unhandled fault: external abort on non-linefetch (0x1018) at 0x40160204
    [1] + Stopped (s[  108.408710] Unhandled fault: external abort on non-linefetch (0x1018) at 0x40160204
    ignal)        devmem2 0x4830A204

    Regards,

    Aditya

  • Hi Arun:

                 Thank you for your reply.

                 I have test you suggestion,  disable SGX through

    1) delete system/bin/sgx/rc.pvr

    2) delete /system/lib/hw/gralloc.omap3.so.*

                Now it can enter android desktop,see follow picture

             but  this  touchscreen is inaccurate  ,and  response is very slow,

    And attach logcat and console log

    6254.console-log-20120227-1507.txt

    2860.logcat-20120227-1507.txt

    And you can see touchscreen is init ok in console log and  logcat

    [    1.294399] mousedev: PS/2 mouse device common for all mice
    [    1.301228] input: ti-tsc-adcc as /devices/platform/tsc/input/input0

     I/EventHub(  137): New device: path=/dev/input/event0 name=ti-tsc-adcc id=0x10000 (of 0x1) index=1 fd=83 classes=0x4
    E/EventHub(  137): could not get driver version for /dev/input/mouse0, Not a typewriter

    And in logcat , there are much error about alsa,but  I think McASP0 is init ok in console log ,and at android startup ,

    i have listen an sound from earphone.

    [    1.470820] asoc: tlv320aic3x-hifi <-> davinci-mcasp.0 mapping ok
    [    1.478104] ALSA device list:
    [    1.481230]   #0: AM335X EVM

    so could you help me to analyse  those question.

             1. touchscreen  how to calibrate

             2. why it so slow

             3. alsa why so much error

    Thank you very much!

    Regards

     nmy

     

    1.If reserve sgx in filesystem , android will stop here

    2.if disable sgx in filesystem ,android enter desktop 

     

  • The UI response is slow because SGX is disabled on your platform. Can you please re-enable/install SGX and check for the suggestions in my previous post?

    Regards,

    Aditya

  • Hi Aditya:

                 Thank your reply!

                 I have reinstall filesystem,and I found that pvrsrvkm.ko and omaplfb.ko  is in follow folder.

                 system/bin/sgx/omaplfb.ko

                 system/bin/sgx/pvrsrvkm.ko

                 system/bin/sgx/rc.pvr

    After system startup, android stop at robot display.

    And when I do  devmem2 0x4830A204 command, it show follow

    # devmem2 0x4830A204
    /dev/mem opened.[  241.581112] Unhandled fault: external abort on non-linefetch (0x1018) at 0x40239204

    Memory mapped at address 0x40239000.
    [  241.697857] Unhandled fault: external abort on non-linefetch (0x1018) at 0x40239204
    [  241.755501] Unhandled fault: external abort on non-linefetch (0x1018) at 0x40239204
    [1]   Bus error               devmem2 0x4830A204

    If i don't do this commad,

     

  • Ps:

          My panel is 7 inch, 800*480, 16bit  RGB depth.

          I also saw someone say that bootargs's vram may be cause some problem. Is it bootarg's problem??

  • First of all, "vram" in bootargs is not applicable to AM335x devices,  so doesn't have any meaning here.

    Also I did not understand what you want to do with the command "devmem2 0x4830A204"??? Which module are you trying to access here?

    Please note that, LCDC module is mapped at 0x4830_E000.

    Thanks,

    Vaibhav

  • Hi vaibhav:

                     Thanks for your reply!

                      devmem2 0x4830A204  command, I reference follow web site:

                      http://e2e.ti.com/support/embedded/android/f/509/t/125885.aspx

                     So I unsderstand  we can't do this command.

                     Could you help me analyse  those quetion above.

     

    Thank you very much!

    Regards

     nmy

  • I think you should not run that devmem2 command as above. It was meant to check the silicon rev for Beagle board.

    On your platform when you execute "lsmod " do you see the kernel modules (*.kos) as pointed in the above post?

    if not please execute the "/system/bin/sgx/rc.pvr", that should initialize your platform and boot.

    Regards,

    Aditya

  • Hi Aditya:

              Could you help answer other quetion above?

  • Hi.

             1. touchscreen  how to calibrate

    Can you check the wiki http://processors.wiki.ti.com/index.php/TI-Android-GingerBread-2.3.4-DevKit-2.1.1_PortingGuides#Touchscreen and follow the section on calibration?

             2. why it so slow

    Can you check the following

    1. Check /proc/interrupts to see you are getting interrupts from the touch screen hardware.

    2. See getevent to see you are getting events from the input subsystem, when you are touching

             3. alsa why so much error

    Are you able to here the audio and is it clear?

    Audio controls shown in logcat are outdated and can be ignored. AM335X audio device use the default controls.


  • All:

           Thank you all the same!

           We have solve this quetion, based the patch in URL:

            https://gitorious.org/rowboat/kernel/commit/1630f6cf6d67fc3c651e4b0c1f980da17fbd7b07

          Now am335x android work very well!

  • Hello,
    I'm having the same trouble with my AM335xevm.
    I'm trying to compile a new Android image but without success.
    I've downloaded the Android source code for this evaluation board from TI website (http://software-dl.ti.com/dsps/dsps_public_sw/sdo_tii/TI_Android_DevKit/TI_Android_GingerBread_2_3_4_DevKit_2_1_1/index_FDS.html) and I've compiled a new image following the guide from TI (http://processors.wiki.ti.com/index.php/TI-Android-GingerBread-2.3.4-DevKit-2.1.1_DeveloperGuide). When the kit is turned on with the new image on a SD card the boot procedure stops with several green robots on screen.
    With the Android image available on TI website everything works fine.
    The steps I've made are:
    1 - Toolchain setup
    2 - Build Bootloader
    3 - Build Android Linux Kernel
    4 - Build Android Filesystem
    5 - Create root filesystem tarball
    6 - Generate SD/MMC card to boot Android

    I've consulted this thread and applied the patch for the da8xx-fb video driver but the result is the same.
    Is there something I'm missing?
  • I probably have isolated the problem to the MLO file which is generated at the same time that the u-boot file. If I replace the MLO file from the one who is in the pré-compiled image from TI, the kit starts without problems.

    I made a new Android Image and use the MLO and u-boot files from the pré-compiled image from TI, to confirm, and it worked.