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.

Recompile linux kernel for BBB (SDK 07.00.00): no PVR driver...



Hello,
I am just trying to recompile linux kernel from your SDK 07.00.00 for BeagleBoard Black...


I made the following steps:

1) make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabihf- distclean

2) make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabihf- omap2plus_defconfig

I am quite unsure here about "omap2plus_defconfig"... is it correct?

3) make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabihf- uImage

4) make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabihf- modules

Copied zImage to target /boot folder and then executed:

5) sudo make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabihf- modules_install INSTALL_MOD_PATH=/path/to/target/rootfs

Everything is fine but the PVR drivers seems not to compile... when I boot my BBB with the just compiled kernel it says:

Starting PVR
Error: missing filename.
Could not find pvrsrvkm driver

Am I missing something? Do I need to compile something else? Maybe the Graphics SDK? If so can somebody point me out detailed instructions about that? (please consider I am quite a newbie in Linux development)...


Anyway in the past I succeeded in recompiling the linux kernel from your 06.00.00 SDK (for AM335x) and I haven't had to recompile the Graphics SDK too... does something have changed meanwhile?

Thanks.



  • Hi Morix,

    The correct defconfig is "tisdk_am335x-evm_defconfig". Here is the guide: http://processors.wiki.ti.com/index.php/Linux_Kernel_Users_Guide

    Best regards,
    Miroslav

  • Miroslav,
    thanks for the info...

    Anyway, returning to my original question, I recompiled the kernel using "tisdk_am335x-evm_defconfig" but again I cannot load the PVR driver at startup (see my original post)...

    So, I tried to compile the Graphics SDK on my own (following the instructions at http://processors.wiki.ti.com/index.php/Graphics_SDK_Quick_installation_and_user_guide) and I obtained a folder named "/opt/gfxlibraries/gfx_rel_es8.x" on my target filesystem... I launched "install.sh" from that folder and rebooted the device...

    During the reboot the device is able to load the PVR driver... but it says:

    FATAL: Module omaplfb not found.
    FATAL: Module bufferclass_ti not found

    Actually "omaplfb.ko" is in "/lib/modules/3.12.10-ti2013.12.01/extra" and this point is fixed simply executing "depmod" on target and rebooting again...

    Instead "bufferclass_ti.ko" is not in "/lib/modules/3.12.10-ti2013.12.01/extra" but I was able to copy it from "/opt/gfxlibraries/gfx_rel_es8.x"... Rebooting again all the problems seem to be fixed and the PVR driver is working fine...

    *BUT*: is my procedure correct? Am I missing/mistaking something?


    Thanks & regards,
    /Morix

    .


     

  • Morix,

    The bufferclass_ti, omaplfb and pvrsrvkm modules are by default present in /lib/modules/3.12.10-ti2013.12.01/kernel/drivers/gpu/pvr/. Please check this.

    Are you using the rootfs from SDK v7?

    Best regards,
    Miroslav

  • Miroslav,
    you are right: "bufferclass_ti", "omaplfb" and "pvrsrvkm" are in "/lib/modules/3.12.10-ti2013.12.01/kernel/drivers/gpu/pvr" and in fact when I use the prebuilt system image from SDK v7 everything is fine...


    If you read again my posts here above, the problem started when I tried to compile the linux kernel on my own (using "

    tisdk_am335x-evm_defconfig", as suggested by you) but doing so the PVR driver was not compiled...

    So I arranged to compile it using the Graphics SDK, but then I discover some problems (described in my previous post) for which I am willing to have some clarifications...

    I look forward for receiving news from your... Thanks & regards.

  • Morix, these kernel modules are built when building the Graphics SDK, not the linux kernel. When you successfully compile the Graphics SDK and then run "make BUILD=release OMAPES=8.x install" these three modules are moved to the correct folder inside <rootfs>/lib/modules/3.12.10-ti2013.12.01/kernel/drivers/gpu/pvr/

    Best regards,
    Miroslav

  • Miroslav,
    you are completely right...  pvrsvr.ko, omapfb.ko and bufferclass_ti.ko are not compiled together with linux kernel but compiling the Graphics SDK...

    *BUT* here comes the problem...

    You told me that after making "make BUILD=release OMAPES=8.x install" these modules are copied to "<rootfs>/lib/modules/3.12.10-ti2013.12.01/kernel/drivers/gpu/pvr" but this is not true (at least in my case)... after issuing the command you said, I find the directory "<rootfs>/opt/gfxlibraries" on my target file system... Then, if I launch the script "install.sh" (found in that folder), I get the pvrsvr.ko module installed to "/lib/modules/3.12.10-ti2013.12.01/extra", omapfb.ko is also installed to "/lib/modules/3.12.10-ti2013.12.01/extra" but it is not loaded at startup until a perform an explicit "depmod" and bufferclass_ti.ko is not copied at all under "/lib/modules/..." but it is in "/opt/gfxlibraries"... if I copy if from there to "/lib/modules/3.12.10-ti2013.12.01/extra" (and I perform again a depmod) then the PVR driver is finally loaded successfully...

    But... hey: it seems to me that my procedure is far beyond the "standard" procedure for installing the Graphics SDK that you described... what am I doing wrong?

  • Morix,

    I never had to run the /opt/gfxlibraries/gfx_rel_es8.x/install.sh script. This isn't even mentioned in the Graphics User Guide. What I do to install the modules in my target file system is just follow the user guide and run: make BUILD=release OMAPES=8.x install

    This command uses the Rules.make file to know where to install the modules. Please let me know what the above command prints in your console after issuing it. This is how a normal output looks like:

    make BUILD=release OMAPES=8.x install

    exporting necessary variables and installing...
    ########################################################
    Please ensure that PSP Linux kernel is re-built atleast once,
    Please refer online guide for further details.
    ########################################################
    creating directories...
    copying startup files...
    copying user space graphics libraries to target file system...
    copying install information to target file system...
    copying graphics SDK demos to target file system...

    Best regards,
    Miroslav