vxWorks6.6 : how to enable WRS_VX_SMP? - VxWorks

This is a discussion on vxWorks6.6 : how to enable WRS_VX_SMP? - VxWorks ; Hi All, I am using vxworks6.6 and trying to build BSP provided by the Wind River for the Raza XLR, which is multi core chip. When I create bootloader project with work bench 3.3 and compile the BSP with SMP ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: vxWorks6.6 : how to enable WRS_VX_SMP?

  1. vxWorks6.6 : how to enable WRS_VX_SMP?

    Hi All,

    I am using vxworks6.6 and trying to build BSP provided by the Wind
    River for the Raza XLR, which is multi core chip. When I create
    bootloader project with work bench 3.3 and compile the BSP with SMP
    kernel, image supports only one CPU. If I look at the BSP code, if
    WRS_VX_SMP flag defined then support for multi core will get enabled.
    But I dont find any option to enable that flag. If I just add this
    flag in config,h, there will be compile problem in the kernel. Can
    anyone explain how to compile BSP for the SMP kernel?

    thanks,
    MB.

  2. Re: vxWorks6.6 : how to enable WRS_VX_SMP?

    Hi,

    AFAIK SMP support is an add one feature and not included in standard
    vxWorks delivery. Did you buy it?

    Best Regards
    VKG | Ritsoft Technologies

  3. Re: vxWorks6.6 : how to enable WRS_VX_SMP?

    On Apr 1, 7:50 am, MB wrote:
    > Hi All,
    >
    > I am using vxworks6.6 and trying to build BSP provided by the Wind
    > River for the Raza XLR, which is multi core chip. When I create
    > bootloader project with work bench 3.3 and compile the BSP with SMP
    > kernel, image supports only one CPU. If I look at the BSP code, if
    > WRS_VX_SMP flag defined then support for multi core will get enabled.
    > But I dont find any option to enable that flag. If I just add this
    > flag in config,h, there will be compile problem in the kernel. Can
    > anyone explain how to compile BSP for the SMP kernel?
    >
    > thanks,
    > MB.



    The answer is that you do not. You can only build an SMP image using
    Workbench or vxprj. If you made any changes to the BSP files, please
    back them out: building an SMP image directly from the BSP directory
    is not supported. Assuming you have actually installed all of the
    necessary products (i.e. SMP-enabled OS libraries -- yes, SMP support
    is not included in the base product: you do need to buy it
    separately), you should be able to do the following:

    % cd $(WIND_BASE)/target/proj
    % vxprj -smp create rmi_xlr_mipsi64sf sfdiab
    % cd rmi_xlr_mipsi64sf_sfdiab
    % vxprk build

    Depending on which Raza board you have, I believe the Raza image will
    give you up to 32 logical CPUs by default (8 real CPU cores with 4
    hyperthreads each). I think you can change the number of CPUs by
    setting the VX_SMP_NUM_CPUS property.

    Note: bootroms (and/or bootApps) are always uniprocessor, so if you
    find yourself saying "I tried to build an SMP bootrom and it doesn't
    work!" that's because it's not supposed to. (There's little point in
    having an SMP bootrom.)

    "How do I tell if I have the SMP OS libraries installed?"

    The uniprocessor libraries live under target/lib. The SMP libraries
    are under target/lib_smp instead.

    "What if I have a source license and need to recompile the SMP
    libraries?"

    Then make sure to include VXBUILD=SMP in your build command, e.g.:

    % cd $(WIND_BASE)target/src
    % make CPU=MIPSI64 TOOL=sfdiab VXBUILD=SMP

    -Bill

  4. Re: vxWorks6.6 : how to enable WRS_VX_SMP?

    On Apr 1, 4:05*pm, noiset...@gmail.com wrote:
    > On Apr 1, 7:50 am, MB wrote:
    >
    > > Hi *All,

    >
    > > I am using *vxworks6.6 and trying to build BSP provided by the Wind
    > > River for the Raza XLR, which is multi core chip. *When I create
    > > bootloader project with work bench 3.3 and compile the BSP with SMP
    > > kernel, *image supports only one CPU. *If I look at the BSP code, *if
    > > WRS_VX_SMP flag defined then support for multi core will get enabled.
    > > But I dont find any option to enable that flag. *If I just add this
    > > flag in config,h, there will be compile problem in the kernel. *Can
    > > anyone explain how to compile BSP for the SMP kernel?

    >
    > > thanks,
    > > MB.

    >
    > The answer is that you do not. You can only build an SMP image using
    > Workbench or vxprj. If you made any changes to the BSP files, please
    > back them out: building an SMP image directly from the BSP directory
    > is not supported. Assuming you have actually installed all of the
    > necessary products (i.e. SMP-enabled OS libraries -- yes, SMP support
    > is not included in the base product: you do need to buy it
    > separately), you should be able to do the following:
    >
    > % cd $(WIND_BASE)/target/proj
    > % vxprj -smp create rmi_xlr_mipsi64sf sfdiab
    > % cd rmi_xlr_mipsi64sf_sfdiab
    > % vxprk build
    >
    > Depending on which Raza board you have, I believe the Raza image will
    > give you up to 32 logical CPUs by default (8 real CPU cores with 4
    > hyperthreads each). I think you can change the number of CPUs by
    > setting the VX_SMP_NUM_CPUS property.
    >
    > Note: bootroms (and/or bootApps) are always uniprocessor, so if you
    > find yourself saying "I tried to build an SMP bootrom and it doesn't
    > work!" that's because it's not supposed to. (There's little point in
    > having an SMP bootrom.)
    >
    > "How do I tell if I have the SMP OS libraries installed?"
    >
    > The uniprocessor libraries live under target/lib. The SMP libraries
    > are under target/lib_smp instead.
    >
    > "What if I have a source license and need to recompile the SMP
    > libraries?"
    >
    > Then make sure to include VXBUILD=SMP in your build command, e.g.:
    >
    > % cd $(WIND_BASE)target/src
    > % make CPU=MIPSI64 TOOL=sfdiab VXBUILD=SMP
    >
    > -Bill


    Hello,
    Most of what Bill told - all are valid except one spell mistake.

    The line
    > % vxprk build

    should have been:
    vxprj build proj_wpj> vxWorks

    To know whether your copy of the installation is SMP capable or not,
    just examine the target/lib folders.
    You should have some thing like $WIND_BASE/target/lib_smp*** folders.
    If you do not have this folder, then, your installation is a
    uniprocessors version & you can not build SMP projects.
    ( I would say, bootroms are always uniprocessors versions irrespective
    of whether your installation is SMPor UP).

    The general command line build commands are:
    (from windriver shell environment):
    for UP - project: vxprj create -force

    vxprj build
    vxWorks

    for SMP project:
    vxprj create smp
    vxprj build
    vxWorks

    ( for help, vxprj without any arguments should give all the
    applicable / possible parameters.
    In addition, you can add a component, add a file uisng vxprj command
    line tool)

    Enjoy the ride..
    -Venkat Dyavana


+ Reply to Thread