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.

problem with insmod cmemk.ko

Hi,

I am working on dm365 board, getting following problem while insmod cmemk.ko module:

insmod cmemk.ko phys_start=0x87000000 phys_end=0x88000000 pools=1x10 CMEMK module: built on Jul 14 2010 at 17:02:50

Reference Linux version 2.6.32
File /sim/scratch_a0868396/arago-install/dvsdk_3_10_00_19/linuxutils_2_25_04_10/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
no physical memory specified, continuing with no memory allocation capability...
cmemk initialized

DM365 board SDRAM size: 128 MB

mem = 60M (giving in bootargs)

  • This is the first time we have seen a report of a problem such as this.  I don't see anything wrong with the 'insmod' command (I assume the trailing text after "pools=1x10" is not part of the insmod command).

    The fact that you got that message tells me that the cmemk.ko module did not get the parameters passed to it correctly, and I don't know what sort of issue could cause that.  Perhaps a rebuild would help?  (while pointing to your kernel source tree).

    Could you try running
        % modinfo cmemk.ko
    and report the output here?  A normal, working cmemk.ko would show something similar to this:
    root@arago:/ce-s06x# modinfo cmemk.ko
    filename:       cmemk.ko
    license:        GPL
    depends:
    vermagic:       2.6.34 mod_unload modversions ARMv7
    parm:           phys_start:
                     Start Address for CMEM Pool Memory (charp)
    parm:           phys_end:
                     End Address for CMEM Pool Memory (charp)
    parm:           pools:
                     List of Pool Sizes and Number of Entries, comma separated,
                     decimal sizes (array of charp)
    parm:           phys_start_1:
                     Start Address for Extended CMEM Pool Memory (charp)
    parm:           phys_end_1:
                     End Address for Extended CMEM Pool Memory (charp)
    parm:           pools_1:
                     List of Pool Sizes and Number of Entries, comma separated,
                     decimal sizes, for Extended CMEM Pool (array of charp)
    parm:           allowOverlap:
                     Set to 1 if cmem range is allowed to overlap memory range
                     allocated to kernel physical mem (via mem=xxx) (int)
    parm:           useHeapIfPoolUnavailable:
                     Set to 1 if you want a pool-based allocation request to
                     fall back to a heap-based allocation attempt (int)

    Regards,

    - Rob

     

  • Thanks Robert,

     

    The Problem has been resolved after inserting the "  " in the insmod command.

    # insmod cmemk.ko "phys_start=0x87000000 phys_end=0x88000000 pools=1x10"

    CMEMK module: built on Jul 14 2010 at 17:02:50
    Reference Linux version 2.6.32
    File /sim/scratch_a0868396/arago-install/dvsdk_3_10_00_19/linuxutils_2_25_04_10/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
    allocated heap buffer 0xc5000000 of size 0xfff000
    cmemk initialized