summaryrefslogtreecommitdiffstats
path: root/conf/include
AgeCommit message (Expand)AuthorFilesLines
2024-07-09meta-agl-kvm-demo: update for YP scarthgap and clean upScott Murray3-21/+0
2024-03-08Cluster support fixesScott Murray1-2/+2
2023-05-09Enable ext4 image and disable wic in case of agl-container-guest-demoNaoto Yamaguchi1-0/+2
2023-05-09Disable rngd in container guestNaoto Yamaguchi1-0/+1
2023-05-09Create new agl feature to use container guest integrationNaoto Yamaguchi1-0/+2
2023-04-27kuksa-val: Rework to support updated SSL certificatesScott Murray1-0/+7
2023-01-29Run agl-compositor in system scope for QEMU+KVM demo imageScott Murray3-0/+21
2022-12-10agl-demo-preload: Enable CAN FD for reference h/wScott Murray1-0/+3
2021-11-03Prepare master for new framework integrationJan-Simon Möller3-24/+1
2021-08-20Convert to new override syntaxScott Murray2-8/+8
2021-06-14Add kernel-modules package to demo imagesScott Murray1-0/+7
2021-03-01Mask out older recipes in meta-iot-cloudScott Murray1-0/+5
2021-01-14meta-agl-demo: move open-vm-tools and vboxguestdrivers to meta-agl-demoJan-Simon Moeller1-0/+3
2021-01-13Remove separate agl-{cluster,telematics}-demo featuresScott Murray4-12/+0
2021-01-12Add dev-mapping-ci recipeScott Murray1-0/+3
2020-12-17Move core speech service to meta-agl-demokoi_10.91.0koi/10.91.010.91.0Jan-Simon Moeller1-0/+5
2020-12-17SPEC-3723: restructure meta-agl-demoJan-Simon Moeller5-3/+16
2020-05-18Update test/devel feature and crosssdk definitionsScott Murray1-8/+0
2020-05-08Widget packaging reworkScott Murray2-0/+16
2019-12-30Add demo low-can device mappingScott Murray1-0/+4
2018-06-29Disable the webruntimeflounder_5.99.1flounder/5.99.15.99.1Jan-Simon Möller1-1/+2
2017-09-06Upgrade to pyroChanghyeok Bae1-11/+1
2017-04-05Add automount to DISTRO_FEATURES for agl-demo.incMatt Ranostay1-0/+1
2017-03-29Rename webruntime DISTRO_FEATURESRonan Le Martret1-1/+3
2017-02-09iotivity: Migrate from agl-demo to agl-iotivity featurePhilippe Coval1-1/+0
2017-01-25Move feature code into the meta recipesRonan1-0/+14
s="n">errorStatus, "Couldn't get response request object"); return; } if(! json_object_is_type(returnedRequestJ, json_type_object)) { AFB_ReqFail(request, errorStatus, "Response request object is not valid"); return; } if(! json_object_object_get_ex(returnedRequestJ, "status", &returnedStatusJ)) { AFB_ReqFail(request, errorStatus, "Couldn't get response status object"); return; } if(! json_object_is_type(returnedStatusJ, json_type_string)) { AFB_ReqFail(request, errorStatus, "Response status object is not valid"); return; } returnedStatus = (char *) json_object_get_string(returnedStatusJ); if(! strcmp(returnedStatus, "unknown-api")) { AFB_ReqFailF(request, errorStatus, "Api %s not found", apiCalled); return; } if(! strcmp(returnedStatus, "unknown-verb")) { AFB_ReqFailF(request, errorStatus, "Verb %s of api %s not found", verbCalled, apiCalled); return; } if(! json_object_object_get_ex(returnedRequestJ, "info", &returnedInfoJ)) { AFB_ReqFail(request, errorStatus, "Couldn't get response info object"); return; } if(! json_object_is_type(returnedInfoJ, json_type_string)) { AFB_ReqFail(request, errorStatus, "Response info object is not valid"); return; } returnedInfo = (char *) json_object_get_string(returnedInfoJ); AFB_ReqFailF(request, errorStatus, "Api %s and verb %s found, but this error was raised : '%s' with this info : '%s'", apiCalled, verbCalled, returnedStatus, returnedInfo); } int HalCtlsHandleMixerAttachResponse(AFB_ReqT request, struct CtlHalStreamsDataT *currentHalStreamsData, json_object *mixerResponseJ) { int err = 0; unsigned int idx; char *currentStreamName, *currentStreamCardId; AFB_ApiT apiHandle; struct HalUtlApiVerb *CtlHalDynApiStreamVerbs; json_object *currentStreamJ; apiHandle = (AFB_ApiT) afb_request_get_dynapi(request); if(! apiHandle) { AFB_ReqWarning(request, "%s: Can't get current hal api handle", __func__); return -1; } switch(json_object_get_type(mixerResponseJ)) { case json_type_object: currentHalStreamsData->count = 1; break; case json_type_array: currentHalStreamsData->count = json_object_array_length(mixerResponseJ); break; default: currentHalStreamsData->count = 0; AFB_ReqWarning(request, "%s: no streams returned", __func__); return -2; } currentHalStreamsData->data = (struct CtlHalStreamData *) calloc(currentHalStreamsData->count, sizeof(struct CtlHalStreamData)); CtlHalDynApiStreamVerbs = alloca((currentHalStreamsData->count + 1) * sizeof(struct HalUtlApiVerb)); memset(CtlHalDynApiStreamVerbs, '\0', (currentHalStreamsData->count + 1) * sizeof(struct HalUtlApiVerb)); CtlHalDynApiStreamVerbs[currentHalStreamsData->count].verb = NULL; for(idx = 0; idx < currentHalStreamsData->count; idx++) { if(currentHalStreamsData->count > 1) currentStreamJ = json_object_array_get_idx(mixerResponseJ, (int) idx); else currentStreamJ = mixerResponseJ; if(wrap_json_unpack(currentStreamJ, "{s:s}", "uid", &currentStreamName)) { AFB_ReqWarning(request, "%s: can't find name in current stream object", __func__); err -= 10; } else if(wrap_json_unpack(currentStreamJ, "{s:s}", "alsa", &currentStreamCardId)) { AFB_ReqWarning(request, "%s: can't find card id in current stream object", __func__); err -= 1000; } else { currentHalStreamsData->data[idx].name = strdup(currentStreamName); currentHalStreamsData->data[idx].streamCardId = strdup(currentStreamCardId); CtlHalDynApiStreamVerbs[idx].verb = currentStreamName; CtlHalDynApiStreamVerbs[idx].callback = HalCtlsActionOnStream; CtlHalDynApiStreamVerbs[idx].info = "Peform action on this stream"; } } if(HalUtlLoadVerbs(apiHandle, CtlHalDynApiStreamVerbs)) { AFB_ReqWarning(request, "%s: error while creating verbs for streams", __func__); err -= 100000; } return err; }