On Wed, Sep 03, 2014 at 02:14:20PM +0400, Maxim Uvarov wrote: > Hello Jacob, > > that is interesting. Sound linke not huge work is needed. But in your case > you need to implement > separate "odp platform" which will use Cavium specific things instead of > linux-generic. > > I also have some notes bellow. > > On 09/03/2014 11:49 AM, Jacob, Jerin wrote: > >All, > > > >We have tried to add ODP bare-metal support for Cavium SoC to find the gap > >in ODP mainline API definition for bare-metal run-time environment support. > > > >I would like to share the findings so that we can discuss and going forward > >we can > >incorporate those gaps in ODP API definition and have bare metal support in > >ODP. > > > >Following are the details: > > > >1) Generic ODP API to launch the work on selected cores. > >Currently applications are using > >odp_linux_pthread_create/odp_linux_pthread_join > >API's to do the same. Which needs to changed to generic ODP API. > > > >Expectation: > >Function "main" in the app shall be invoked by the root core and > >other core shall be launched by the root core using ODP API. > > That might be good catch. We do cpu isolation for odp process in linux. But > still did not define > proper set up for this. Or script will isolate core and then we need odp app > moved to that specific > core or we do everything in odp app. In you particular case I think it's > reasonable to send patch > for this and we can discuss how is that suitable for other SoC. > > >2) ODP API's support command line parsing. > >If an ODP application demands for more sophisticated command line parsing > >(can not be achieved through getopt*) then I think > >we should have dedicated ODP API's for command line parsing like dpdk. > > Does patch "[v5] Add-global_init-paramiters" solve your problem? > https://patches.linaro.org/36509/ > > >3) Changes in configure.ac > >Need an additional configure option to skip checking the linux specific > >libraries in configure.ac > > That is fine. Do not see any problem with changing configure.ac or moving > it's parts > to platform specific folder. > > >4) Avoid using global variables in odp application for sharing > >the data between cores. > > Not sure that I understand that. Are you saying about reserving memory > blocks > with different names for all application instances?
I was trying to say that the use of global variable for sharing the data between cores very well work on one process and multiple pthread scenario like current linux generic examples. But it would break when we move to multi process or bare metal environment. > > Best regards, > Maxim. > > >Any thoughts ? > > > >- Jerin. > >_______________________________________________ > >lng-odp mailing list > >[email protected] > >http://lists.linaro.org/mailman/listinfo/lng-odp > _______________________________________________ lng-odp mailing list [email protected] http://lists.linaro.org/mailman/listinfo/lng-odp
