aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2018-10-08Parse controller config to get halmixer json objectJonathan Aillet4-1/+107
Parse controller configuration to get halmixer json object, this object is inside 'halmixer' section of controller configuration file. Use streams defined in this 'halmixer' section to get available streams of this hal, store them, and declare them as hal api verbs. Change-Id: I47adb2756f89f2a84c8d651ba38ecea5b84079c3 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Implementation of functions for external halJonathan Aillet1-6/+116
Implementation of functions that allows to handle register/unregister external hal. Change-Id: Idf7ad2ab7dd811195a9c86d3fc194086746e99ef Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Handle if some hal info are not availableJonathan Aillet1-5/+6
Handle the case if some hal info are not available when the data of all registered hal are requested. Change-Id: Ia55fcc9ff6e964fe23965cf92bb06533c3d11695 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Use a structure to store ctl hal specific dataJonathan Aillet3-8/+61
To avoid multiple variables at NULL in specific hal data, use a structure to store all controller hal specific data. These data won't be use if the hal is external (registered). Example of controller hal specific data : - Mixer api name - Mixer initialization json - Mixer streams names and card id ... Change-Id: Ifc4823d5ea21ed408b4ecc25b870cad74d3b2173 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Use json_object* instead of struct json_object*Jonathan Aillet2-3/+3
In code, use json_object* instead of struct json_object*. Change-Id: I9b37f30807331b6f85dc7f36242d5c1206093565 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Change the way that hal data are initialized and freedJonathan Aillet1-7/+10
Initialized the whole hal data structure instead of member by member. Free all strings if the hal is external (in this case, strings are allocated by hal manager). Change-Id: Ic860bcbf1999a870f34d12640e9c68b2cbc50876 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Rename function used to load verbs into a dynamic apiJonathan Aillet4-4/+4
Rename function used to load verbs into a dynamic api from 'HalUtlLoadStaticVerbs' to 'HalUtlLoadVerbs' because it is used to load not only static verbs. Change-Id: Idc033ccf0a8e7556e0809e8fa3554d09d0e81d39 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Update json controller configs to match example HWJonathan Aillet2-30/+308
Update json controller configs to match example HW (hal-mixer section). Clean unnecessary controls. Add stream controls section. Change-Id: I68d789d8f7fdc0160f52828e27ee6bfc7556c84b Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Regroup declaration of variables in functionsJonathan Aillet1-7/+5
Regroup declaration of variables in 'HalMgrLoaded' function. Add error info when responding that the request have failed. Change-Id: Ib25159f37928bd8cc442e9db08b280e93b6b568b Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Remove some unnecessary freeJonathan Aillet1-20/+2
Remove some unnecessary free that used to free strings that are handled by controller. Remove test if NULL before free (free doesn't do anything if pointer is NULL). Change-Id: I9f9bdb3f194900567da6bd2dada6dae4ea87b1fa Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Remove the 'ping' of each hal controller apiJonathan Aillet3-4/+2
Remove the 'ping' verb of each hal controller api which won't be useful anymore. Rename action in configuration file to be able ping an api nevertheless. Change-Id: I5b1ce8f8cd83dc3e689c3bd676244477921ba20d Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Add a 'List' verb to each hal controller apiJonathan Aillet4-0/+69
Add a 'List' verb to each hal controller api which will list verbs available for this api. The callback of the verb is not implemented yet. Change-Id: Ibc44ef8673267b0b952b32fb256214452aa3c000 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Change the name of controller configuration filesJonathan Aillet4-3/+3
Change the name of controller configuration files to be sure that they will be found during 'CtlConfigScan'. Add the name that the binder should take into config.cmake to be sure that the controller configuration files will be found during 'CtlConfigScan'. Change-Id: I94c55c186c52f6f89b06400133cfbce36221d245 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Change how to request all loaded api infoJonathan Aillet1-18/+6
Instead of receiving all info about api by passing request arg : { "option" : "metadata" } api info will be obtained by passing this request arg : { "verbose" : 1 } Change-Id: I26a14d61ffefbb7f4630f4a3199ee5238008263a Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Remove sections id in sections callbacks structureJonathan Aillet1-6/+5
Remove sections id in sections callbacks structure because it's not mandatory anymore (it's even harder to add a section with these ids). Change-Id: I04caa1c83137e4165c023207d2b58376c176c248 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Change names of some structures fieldsJonathan Aillet4-30/+26
Change names of some structures fields to match the fileds name in controller structure. Change-Id: I579ec53835daa010154982539d09d5a2dcbd28b2 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Get Hal controller api structure fields properlyJonathan Aillet3-32/+7
Because of a recent change in the app-controller, change the way that metadata was get. Avoid to parse json again and use only CtlConfigT strcuture fields to fill Hal controller api structure. Add a fields info in Hal controller api structure. Change-Id: I17ff00bfd6d0991bed47831a92bf81ddcf3fb4c9 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Corrects json controller configurationsJonathan Aillet2-99/+51
Corrects json controller configurations to look more like a definitive hal configuration. Change-Id: I2281df854d408dcf8064a77d1941f4fca8c8b28e Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Update json controller configurationsJonathan Aillet2-13/+5
Update json controller configurations for new version of app-controller submodule that handles more metadata fields. Change-Id: Ie8c85973ea58e0bdf791a785a00e3cca901099f9 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Update version of app-controller submodule.Jonathan Aillet1-0/+0
Changes of app-controller: (bc3e9be - Jonathan Aillet) Increase lua script max message size (bea75dd - Jonathan Aillet) Prevent lost of config file path when searching (d07474e - Jonathan Aillet) Correct way that api actions are handled in controller (f7d4b1c - Jonathan Aillet) Handle more metadata in controller. (e7377f7 - Jonathan Aillet) Add possibility to set prefix to NULL in CtlConfigScan (4a72302 - Thierry Bultel) Fixed compilation warnings with gcc-7.2.0 Change-Id: Ia2ab9c0157634f1bac82fb0f062f377b1bb137b8 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Corrects version of app-controller submoduleJonathan Aillet1-0/+0
Corrects version of app-controller submodule. Change-Id: I71716e4c82675afe7c01440b29ed61909f2f99fe Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Pre-version of 4a-hal-managerJonathan Aillet14-0/+1160
Pre-version of 4a-hal manager that uses app-fwk DynAPI and app-controller. Current version : - Declare a new API for each HAL (each .json config file is used to generate one app-controller API) at startup. - Define verbs that will be provided by this API. - Provide verb to list and get info of loaded API. Change-Id: I7bb6e8b7539b1acd5556fd9275a1b536e129332d Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Add HAL configuration example json.Jonathan Aillet2-0/+142
Add HAL configuration example json which will be used to create controller APIs, each json file will correspond to an HAL API. Content of json is a descirption of a different HAL controller. Add compilation configuration for 4a-hal-gezneric project. Change-Id: If681563a5fa378a378906653538405093e4ce5ff Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Add compilation configurationJonathan Aillet11-0/+561
Add compilation configuration for 4a-hal-gezneric project. Change-Id: If5bc696cbf3170923ea67cef301c71720a70fe70 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Update submodulesJonathan Aillet2-0/+0
Update submodules. Change-Id: Icfaf691f382c76e9e059c7a24b243a633310a2c2 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Update gitignoreJonathan Aillet1-0/+1
Update gitignore. Change-Id: I7b34b3be7ac4a868c5938059160bcd1f3d0f2ec4 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Add submodule for afb-helpersJonathan Aillet2-0/+3
Add submodule for afb-helpers (needed for app-controller and DynAPI) Change-Id: I721a06db89f9ab07c182a776b7102821fa8be473 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Add submodules and gitignoreJonathan Aillet4-0/+25
Change-Id: I0562f322f5ce0936349c9cd883344a1e72a58e75 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-10-08Initial commitLoïc Collignon [IoT.bzh]2-0/+203
Change-Id: Ia7ff4e9b99308c5f9e0c570dd4becbd6da4b316c Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>