aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-10-17Merge "Allow use of dependency free function for everyone"Stéphane Desneux1-0/+1
2019-10-17Merge "Move hal api delete code into a function"Stéphane Desneux3-11/+46
2019-10-17Merge "Reorder 'internals-hal-cb.c' functions"Stéphane Desneux2-559/+559
2019-10-17Merge "Correct behaviour of halmap handling function"Stéphane Desneux1-2/+2
2019-10-17Merge "Correct hal-4a-example.json"Stéphane Desneux1-1/+1
2019-10-17Merge "Correction of print in control creation function"Stéphane Desneux1-1/+1
2019-10-17Merge "Remove an unnecessary double pointer"Stéphane Desneux1-7/+3
2019-10-17Allow use of dependency free function for everyoneJonathan Aillet1-0/+1
Allow use of 'HalUtlFreeSelectedProbedDeviceDataAllocation' function available in '4a-hal-utilities' for everyone. This function can be used to free allocated content stored in dependency data structure after a successfully search for dependency. BUG-AGL: SPEC-2886 Change-Id: I1c68b32fc7adc0191ee05ce4b9fdc54db2f8b105 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Move hal api delete code into a functionJonathan Aillet3-11/+46
BUG-AGL: SPEC-2885 Change-Id: I23c605440782f8caeef30c1fe41f4cac5b704dbb Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Reorder 'internals-hal-cb.c' functionsJonathan Aillet2-559/+559
Reorder hal json section handling functions in 'internals-hal-cb.c' to match processing order define in 'ctrlSectionsDefault' table. BUG-AGL: SPEC-2885 Change-Id: I9bf2c59706982339b5676fe900c7f48af68b96c8 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Correct behaviour of halmap handling functionJonathan Aillet1-2/+2
Correct behaviour of halmap handling function by : - Avoid unnecessary set to 0 newly allocated data. - Correct return value. BUG-AGL: SPEC-2884 Change-Id: I647812e8fe8770954ada5cfded2505bf9f412699 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Correct hal-4a-example.jsonJonathan Aillet1-1/+1
Correct hal-4a-example.json in section creating custom ALSA control linked to an afb api/verb call. BUG-AGL: SPEC-2884 Change-Id: I273c5b3f326ee3b1531426738045a1391fa727f2 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Correction of print in control creation functionJonathan Aillet1-1/+1
Correction of an error print in ALSA control creation function. BUG-AGL: SPEC-2884 Change-Id: I518eae1595bfeaaf9437e442895efea2f3c77904 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Remove useless things about ping functionJonathan Aillet2-3/+0
Remove useless things about 'HalUtlPing' function. BUG-AGL: SPEC-2884 Change-Id: I8ad30e91ac45d340a5f64922da6a87658a3cd2b3 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Remove an unnecessary double pointerJonathan Aillet1-7/+3
Remove an unnecessary double pointer in 'InternalHalHandleOneHalDependencies' function. BUG-AGL: SPEC-2884 Change-Id: I20e0b0d11288814322b3480a70b77df14a08564a Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-10-17Prevent binder exit when hal initialization failsJonathan Aillet4-11/+17
No longer returns an error in hal api initialization function when an non-blocking error happens (e.g. card-sound not found). This will prevent application framework binder exit. BUG-AGL: SPEC-2906 Change-Id: I0ef5e5f624fc0021771f40f37ce5663510a7e03e Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-09-26Update call to 'subscribe' verb of 'alsacore' apiJonathan Aillet3-8/+14
Update call to 'subscribe' verb of 'alsacore' api to match last '4a-alsacore' events/subscription handling updates. BUG-AGL: SPEC-2832 Change-Id: Ib6b5e1f4536440fd4f83a07d66fe047bfa889a5b Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-09-26Rename dependencies object keyJonathan Aillet1-1/+1
Rename dependencies object key to avoid having references to '4a-hal' in '4a-smixer. BUG-AGL: SPEC-2831 Change-Id: Ibc7ff7551eccfe9dfade951d44c10185f16b1e5c Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-12Move ping function in 4a-hal-utilitiesJonathan Aillet9-38/+88
Move ping function in 4a-utilities and register it as verb into 4a-hal-manager and into each created 4a-hal-*. Updates 4a-hal json configuration files to match these modifications. BUG-AGL: SPEC-2733 Change-Id: If93a31296206923860262b225a8c7e0e8a6fd521 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-12Add information when calling mixer attach verbJonathan Aillet1-3/+3
Add information about not resolved dependencies when calling mixer attach verb (will be used to detect json format error). BUG-AGL: SPEC-2733 Change-Id: Iae5f339aacef9fd97b923e75142d9cd0176f4b6f Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-12Remove error when no stream was created by mixerJonathan Aillet1-9/+22
Remove error generation when no stream was created by mixer at 'attach' call. BUG-AGL: SPEC-2733 Change-Id: If5f0b521c449d3599925abe5e3e5a22d849f3c5d Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-12Create 'all_streams' verb at binding startupJonathan Aillet3-20/+7
Create 'all_streams' verb at binding startup, that way, it will always be created. Generate a request fail when a call is done when no streams are created. BUG-AGL: SPEC-2733 Change-Id: I1b7ec3b8ed0fcd617e4a016e455beb447d233c82 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-12Optimize hal 'info' response json allocationJonathan Aillet3-40/+74
Optimize hal 'info' response json allocation by removing empty objects/arrays from response. BUG-AGL: SPEC-2733 Change-Id: I521626b67076b603ab1caa974b697246c8fff759 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-12Add information about events in README.mdJonathan Aillet1-6/+213
Add information about events in README.md : - Add information about existing 'internal' hal events. - Add information about events to provide for an 'external' hal. BUG-AGL: SPEC-2683 Change-Id: I46e43fab026f850fd67852a19442ef6987872b61 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-12Minor corrections in README.mdJonathan Aillet1-3/+3
Correct some typo and call format for '4a-hal-manager loaded'. BUG-AGL: SPEC-2683 Change-Id: I67916fcecab1efa4646badfd54ef87c8f6889dc5 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-08-06Correct ramps call syntax in README.mdJonathan Aillet1-2/+2
Correct ramps call syntax in README.md. BUG-AGL: SPEC-2683 Change-Id: Ib580a3dc7c681949c542f8dec1eb97fd14e9088a Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-07-31Add an example json configurationJonathan Aillet1-0/+272
Add an example json configuration files to show how to write "haldependencies" and "halmap" sections. BUG-AGL: SPEC-2683 Change-Id: I3642677ec6aae6144d2e30dc3f3680ebf473dccf Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-07-31README.md updatesJonathan Aillet1-149/+704
Update README.md to describe last version of hal functionalities and how to compile/use 4a-hal. BUG-AGL: SPEC-2683 Change-Id: I8ddf97872fc34c6e3fb3a9f7cc59a096849854fa Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-07-18Remove hal if an error happened at hal inithalibut_8.0.6halibut_8.0.5halibut_8.0.4halibut_8.0.3halibut_8.0.2halibut_8.0.1halibut_8.0.0halibut/8.0.6halibut/8.0.5halibut/8.0.4halibut/8.0.3halibut/8.0.2halibut/8.0.1halibut/8.0.08.0.68.0.58.0.48.0.38.0.28.0.18.0.0halibutJonathan Aillet1-2/+33
Remove hal api and hal data if an error happened at hal initialization. Also prevent binding to stop if a hal failed to init. BUG-AGL: SPEC-2652 Change-Id: Ifcef2fdf135e152f300febf6a934e43352f86fc2 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-07-18Add hal api handler utilities filesJonathan Aillet4-27/+203
Add utilities files to create/delete hal apis while adding hal data to hal data list. Use it to create new hal apis. BUG-AGL: SPEC-2652 Change-Id: I62e99cda31bb2c6f597da27960102c036a25b733 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-07-18Correct error level for hal-dependenciesJonathan Aillet1-4/+4
Correct error level when a mandatory hal-dependencies is not available. BUG-AGL: SPEC-2652 Change-Id: I053913a83be8124eaac26dd4f2cd28d1e5ff5083 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-07-18Correct typo in stream handling filesJonathan Aillet2-4/+4
Correct typo in stream handling files. BUG-AGL: SPEC-2652 Change-Id: I3a1ee384dabf564b9d4903e2bac51210d357ff8f Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-26Remove global card number of halhalibut_7.99.3halibut_7.99.2halibut/7.99.3halibut/7.99.27.99.37.99.2Jonathan Aillet7-88/+32
As we are now using haldependencies to get hal card number(s), it does not make sense to store a global card number for a hal. BUG-AGL: SPEC-2329 Change-Id: If5beb84b71b5e5e67aeabd947b5c3edbf154fa3c Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-26Use haldependencies to process and handle halmapJonathan Aillet6-130/+337
Use haldependencies section definition to process and to handle halmap section. That means that each 'halmap' control can use its own probed audio device card number using a targeted dependencies. Also, change halmap section definition to be able to handle several halmap defined with the same dependencies. Update example hal to match new json file format. BUG-AGL: SPEC-2329 Change-Id: I31997a037ee8f0e727e0a67866d651b988b85260 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-25Avoid unnecessary overwriting of ALSA ctrl dataJonathan Aillet1-13/+7
Avoid overwriting stored ALSA control properties data when only calling to get current ALSA control values. BUG-AGL: SPEC-2329 Change-Id: Iaaef1266aea334c8799ab31fd2e523871be9b3a7 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-25Avoid unnecessary call for ALSA ctrl propertiesJonathan Aillet1-4/+5
Avoid getting ALSA control properties if the structure to store them is not allocated. BUG-AGL: SPEC-2329 Change-Id: If5fbacc7616250d8abf86f561f51a147868fea07 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-25Use a dynamic allocation for halmap data storageJonathan Aillet4-31/+82
Use a dynamically allocated structure to store properties about ALSA controls (halmap). BUG-AGL: SPEC-2329 Change-Id: I691648452d6c950d201bc25977a493608fede197 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-25Use of linked list for 'halmap' dataJonathan Aillet8-265/+276
Use of linked list for 'halmap' data instead of a fixed array. It uses the same mechanism already implemented for other linked list. BUG-AGL: SPEC-2329 Change-Id: I2ff9c9a797a5547cd74f0240c5b7573a02c90781 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-25Rework json strings allocation/freeingJonathan Aillet3-54/+159
Rework json strings allocation/freeing because : - Some json strings are freed twice. - Some containing strings json are not correctly freed. BUG-AGL: SPEC-2329 Change-Id: I90f9470c6a4bc4b1641a01dd2da5051da1ff9547 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-25Move function used to process all halmap objectsJonathan Aillet1-50/+50
Move function used to process all halmap json objects. BUG-AGL: SPEC-2329 Change-Id: I692b1810ce2298b24198a001c26b9233740ca31a Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-25Add function to get probed device card numberJonathan Aillet2-0/+13
Add function to get probed device card number using its uid. BUG-AGL: SPEC-2329 Change-Id: I75bd368d0b1d0ab6d41fc0d75b30511fa7e8584f Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-18Add a function to handle selected dependencyJonathan Aillet2-19/+67
Add a function to handle selected dependency using its uid. BUG-AGL: SPEC-2329 Change-Id: I0e92448f9102bc5e6e0f19d1598d75c1ba782863 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-18Refactoring 'hal data' linked listJonathan Aillet5-147/+76
Refactoring 'hal data' linked list code using liburcu. BUG-AGL: SPEC-2329 Change-Id: Ia51d362f96838f4b5bb77e8d1b85fa8d1ab4bed1 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-18Refactoring 'streams data' linked listJonathan Aillet6-216/+216
Refactoring 'streams data' linked list code using liburcu. BUG-AGL: SPEC-2329 Change-Id: Idf9367c015d73574d96d83c82a9e8f5b7588a45d Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-18Refactoring 'probed devices' linked listJonathan Aillet7-147/+181
Refactoring 'probed devices' linked list code using liburcu. BUG-AGL: SPEC-2329 Change-Id: I4d0255bc020733b1abbea1f3e6195c73cf8da8f6 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-18Move function about dependency selectionJonathan Aillet1-27/+27
Move function used to test if a dependency is selected. BUG-AGL: SPEC-2329 Change-Id: Ic577a33741d705e09dd14a48dde0483db792b97d Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-06Add 'hal-dependencies' info in 'loaded' responseJonathan Aillet1-3/+10
Add all 'hal-dependencies' compact json info in response of hal-manager 'loaded' verb call. BUG-AGL: SPEC-2329 Change-Id: I45a94c80be078236fbc581e62654f5261e1b281e Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-06Add 'hal-dependencies' info at hal 'info' callJonathan Aillet1-3/+13
Add available 'hal-dependencies' full json info in response of hal 'info' verb call. BUG-AGL: SPEC-2329 Change-Id: I74615b84d015d142a6aebc291fb9e849a053344a Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-06Send 'hal-dependencies' info with mixer attachJonathan Aillet1-5/+16
Send available 'hal-dependencies' compact json info with mixer attach call to allow mixer to use 'hal-dependencies' for audio cards detection/resolution. BUG-AGL: SPEC-2329 Change-Id: I0e64a45bc9296e1aa1310f6c01b1ebbce8524dcd Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2019-06-06Add func to generate 'hal-dependencies' info jsonJonathan Aillet2-7/+389
Add functions to generate 'hal-dependencies' information json. Provide two type of json generation ('compact' with only extended card number info, and 'full' with all ALSA card info). Provide function to get information about all 'hal-dependencies' and another function to get information about validated 'hal-dependencies'. BUG-AGL: SPEC-2329 Change-Id: If04cbbab7c79a066d2d03fa5ff16ea698de9b018 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>