summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2020-06-09Update autobuild scriptsjellyfish_9.99.3jellyfish_9.99.2jellyfish_9.99.1jellyfish/9.99.3jellyfish/9.99.2jellyfish/9.99.19.99.39.99.29.99.1Scott Murray2-204/+154
Update autobuild scripts with reworked version that fixes building outside of the source tree. Bug-AGL: SPEC-2049, SPEC-3300 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Iba0b1bded9ac84b20c5615dc7c79b78978b16827
2020-02-18Update autobuild script to create new targetsFrederic Marec2-26/+174
Update autobuild script to create multiple widget target debug, coverage and all Bug-AGL: SPEC-2049 Signed-off-by: Frederic Marec <frederic.marec@iot.bzh> Change-Id: I9b1bcb6259c7753614feb365b337df58bdff566a
2019-12-31Add support for TEF665x in agl-service-radioicefish_8.99.5icefish/8.99.58.99.5VahidGharaee6-1/+1613
This is a NXP tuner AM/FM/RDS. The chip has analogue and digital sound output and input. Chip is controlled through i2c. I had to add a sound cart to the kernel to be able to capture the i2s data from the chip. Some of the verbs still to be implemented. I test it on a costum board with imx6solo. Bug-AGL SPEC-3071 Signed-off-by: VahidGharaee <vgharaee@gmail.com> Change-Id: I868706e6d275aef77f77138f815b1b53d64780be
2019-12-19Fixes for corking and restart behavioricefish_8.99.4icefish/8.99.48.99.4Scott Murray2-6/+38
Fixes: - Track playing state in binding code to properly ignore signal-composer events when not playing. - Add changing of pipeline state in response to the GstBus GST_MESSAGE_REQUEST_STATE message to the KF code, this is required to have the second request to switch back to PLAYING state be sent, and hence properly keeping track of corked state. Also added required gstreamer main loop so GstBus actually works. - The alsasrc used in the KF code's gstreamer pipeline seems to not handle the switch to READY state on pause (currently required to trigger Wireplumber policy) as expected; it seems to keep feeding the pipeline, causing long stalls on restart. For now, taking the stream fully down to NULL state seems to work around this issue. Bug-AGL: SPEC-3061, SPEC-3046 Change-Id: I31b2759d10087efbe4ccd885600be95b7029c598 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2019-12-16Add workaround for Wireplumber policy implementationScott Murray2-3/+29
Add hopefully temporary workarounds for current Wireplumber policy implementation that requires taking gstreamer state to READY or STOPPED to trigger policy. Also add a fix for resuming playback from corked state. Bug-AGL: SPEC-3061, SPEC-3023 Change-Id: I1020f9de1fc7dc82c3bb58f0870880ecbf4c09ef Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2019-12-14radio: check for corking from PipeWireicefish_8.99.3icefish/8.99.38.99.3Matt Ranostay3-0/+33
Check if PipeWire is corking the audio stream and if so don't process signal-composer events till uncorked Bug-AGL: SPEC-3023 Change-Id: I1a4623022bbe28658bc97b5fe0cda58863f20d8c Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2019-12-14Initial steering wheel event supportScott Murray3-4/+69
Add initial basic support for next/previous events from signal composer, mapping them to seek forward/back. More work will be required to handle the issues around both mediaplayer and radio both being running and differentiating which should handle the events. Additionally, complete transition to binding version 3 to clean things up. Bug-AGL: SPEC-3046 Change-Id: I251fa461c96dba584a3fe0069bab4fd2e54701ad Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2019-12-02Migration to binding V3icefish_8.99.2icefish/8.99.28.99.2Li Xiaoming4-73/+73
Bug-AGL: SPEC-2745 Change-Id: I5ee9d3118a302f0edf5fe79a43590818d3d829c3 Signed-off-by: Li Xiaoming <lixm.fnst@cn.fujitsu.com>
2019-11-25fix(config.cmake): set PROJECT_URL to silence CMake warningLi Xiaoming1-0/+1
No homepage url found. Please set a PROJECT_URL cmake variable in your config.cmake. Bug-AGL: SPEC-2804 Change-Id: Ide7d38f4f1eaa88363cb4f00a21ae949e74ab37f Signed-off-by: Li Xiaoming <lixm.fnst@cn.fujitsu.com>
2019-09-09Update Kingfisher support for PipeWire and security changesicefish_8.99.1icefish/8.99.18.99.1Scott Murray1-29/+48
Changes: - Restore the previous Gstreamer pipeline code that used the Si4689 ALSA input device as a source sink, now with an appropriate PipeWire output sink. This will be required until PipeWire adds some form of loopback service, which could be used instead. - Remove usage of the si_init script, as the sysfs accesses it performs cannot obviously be enabled via SMACK labelling in a safe fashion. Since the Si4689 on the KF will not work without the reset toggling done in si_init, the script is now called at boot by a systemd service added in a corresponding change in meta-agl-bsp. Bug-AGL: SPEC-2716 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I5c5007d809efd4144dd5fbb25d1c07cfe1ff2b8f
2019-08-01Switch back to user scope for nowScott Murray1-1/+0
Until SPEC-2687 is addressed and platform scope services can use pipewire, switch back to user scope to facilitate testing. Bug-AGL: SPEC-2715. Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ib110a25dd4e08c59dd8486901e39f780556ae3c3
2019-07-12radio: gstreamer: use pwaudiosink instead of alsasinkhalibut_7.99.3halibut/7.99.37.99.3George Kiagiadakis1-1/+2
This native pipewire sink has better performance and allows 1) properly selecting the role of the app 2) proper handling of the situation where another app with higher priority has taken over the audio stream Bug-AGL: SPEC-2634 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com> Change-Id: I9d0ea9ff475817c0944dd7c2b6d153f149abc957
2019-06-26Update permissionshalibut_7.99.2halibut/7.99.27.99.2Scott Murray1-0/+2
Set new platform scope and audio permissions, as there should only be one instance of this service and it needs access to audio devices. Bug-AGL: SPEC-2573 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I2b5222bc4437b7cf52edd00ca0060fc37e2cae64
2019-06-10Remove support for 4A and pulseaudio completelyGeorge Kiagiadakis6-448/+9
Bug-AGL: SPEC-2473 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com> Change-Id: I320be57ce48a63c7e85b8daebf7b094423f580f9
2019-06-04cmake: build radio_output_gstreamer when we have pipewireGeorge Kiagiadakis1-1/+1
The actual code does not need to change for the moment. GStreamer alsasink will redirect the stream to pipewire. Bug-AGL: SPEC-2473 Change-Id: Ibd791cc8fc4ec8f2c7ddaba82aac1de143856324 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-04rtlsdr: improve rtlsdr_set_output to handle NULL as the output stringGeorge Kiagiadakis1-3/+2
Bug-AGL: SPEC-2473 Change-Id: I89f754bd83687159c3aecb3074cba4fcf16c7d37 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-04kingfisher: initialize variableGeorge Kiagiadakis1-1/+1
Bug-AGL: SPEC-2473 Change-Id: Idade62b5e0248d1a2e9e9387696a5df012f6953f Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-04binding: make 4A truly optionalGeorge Kiagiadakis2-25/+11
The non-4A codepaths were totally broken here Bug-AGL: SPEC-2473 Change-Id: I1c3c49688566684455bf9522f68f506eaf6aa6c3 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-03-16binding: radio: remove useless .gitmoduleshalibut_7.99.1halibut/7.99.17.99.1Matt Ranostay1-3/+0
Bug-AGL: SPEC-2268 Change-Id: I9591651aea39856cfa9413c6fe1903ac4851d064 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2019-02-27autobuild: fix warnings due to cp command exit errorRaquel Medina4-120/+158
- bring latest version of autobuild script in - move conf.d/autobuild to root folder - update autobuild script to fix warnings triggered by cp operation error. Change-Id: I27a50b382fd55521a7ad397b317c60cfccca98ed Bug-AGL: SPEC-2164 Signed-off-by: Raquel Medina <raquel.medina@konsulko.com>
2019-01-06Add status eventhalibut_7.90.0halibut/7.90.0guppy_6.99.4guppy/6.99.47.90.06.99.4Scott Murray2-0/+20
Add a status event to indicate playing versus stopped state, this allows users to detect when the binding has been stopped by another user. Change-Id: I4c1256427f0113b535e12a2dbc121d45c93dc0dd Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit a2fdf6e139207e7b0e0270c8a167c6a30c8fe61d)
2019-01-04Add audio role open/close supportScott Murray4-131/+143
Rework things so that the 4A audio role is only opened while playing, and closed when stopped. Further work will need to be done to handle the possibility of the output device changing on subsequent opens, both the RTL SDR and Kingfisher case have complications around doing so: - The RTL SDR helper application needs to be enhanced to add an output setting command. Killing it and starting it again would also work, but likely will add noticeable UI latency. - On the Kingfisher, the binding currently has no control over the output used for the loopback, as it is being set up down in the soft-mixer based on HAL values. Change-Id: I4aa83c937972ec5d91f7b78421a11148c7fe0afc Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit f1d5902c92eafd3aad62e29298502603a9b56d81)
2018-10-31Migrate app-templates to CMake moduleguppy_6.99.3guppy_6.99.2guppy_6.99.1guppy/6.99.3guppy/6.99.2guppy/6.99.16.99.36.99.26.99.1Romain Forlot2-3/+7
Bug-AGL SPEC-1682 Change-Id: I38f701e16210145c99cf566a369985de432082e4 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-10-13binding: radio: update version of conf.d/app-templates submoduleMatt Ranostay2-1/+1
To allow coverage tests to be run it requires the app-templates to be updated to a recent release. Bug-AGL: SPEC-1799 Change-Id: Ia2bf6eeee478e2542bf71cb0cb794aa9a33f3fb9 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2018-10-11Merge "Use latest version of app-templates submodule."Stéphane Desneux1-0/+0
2018-10-10Use latest version of app-templates submodule.Thierry Bultel1-0/+0
Changes of app-templates: (0f25ab2 - Romain Forlot) Adding warning message to migrate on CMake module (3dc85ec - Thierry Bultel) common.cmake: fixed erroneous search path for os-release (7fa5e5a - Romain Forlot) Fix: missing gcov symbol in compiled binaries (76e12e7 - CorentinLGS) app-templates doc: Changed doc to fit new format. (02f45f1 - Romain Forlot) Update Docs (52ae181 - Romain Forlot) Fix: typo (f0b24b0 - Romain Forlot) Rollback about TEST build type (e841a77 - Romain Forlot) Adding a TEST build type (994ebc1 - Romain Forlot) Change default compilation options. (85d5ffd - Romain Forlot) Test widget only if there are test materials (d14bdce - Romain Forlot) Handles more test LABELS. (70cf8fd - Romain Forlot) Missing flag for COVERAGE build type (3c99b8a - Romain Forlot) Create a test widget (9c1a0fb - Romain Forlot) Fix: interpreted '&' character (9202fac - Romain Forlot) More accurate comment about widget template file. (f94e45e - Romain Forlot) Align sample on actual default compile options (d0acc2a - Romain Forlot) Add support to binding version 3. Change-Id: I52bfb4637d7623fc2894f93b65970c949c1eefc2 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-10-09Use feature 'required-binding'Jose Bollo2-1/+4
The feature "urn:AGL:widget:required-binding" is now preferred to the feature "urn:AGL:widget:required-api" for requiring a local binding. Bug-AGL: SPEC-1800 Change-Id: I337a33651c5c548e5776ea1d1e2980dfad3010c4 Signed-off-by: Jose Bollo <jose.bollo@iot.bzh>
2018-07-17cmake: added missing dependency to libusb-1.0guppy_6.90.0guppy/6.90.0flounder_5.99.6flounder_5.99.5flounder_5.99.4flounder_5.99.3flounder_5.99.2flounder/5.99.6flounder/5.99.5flounder/5.99.4flounder/5.99.3flounder/5.99.26.90.05.99.65.99.55.99.45.99.35.99.2Thierry Bultel1-1/+2
The build needs libusb-1.0. Everything foes right when building for Yocto, that already and likely has the needed things. Issue seen when building for a linux host. The missing check did not point out the need for libusb-1.0-devel Change-Id: I7440e2d9ca21232d11e5cabafc79b383092e8890 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17.gitignore: added build*Thierry Bultel1-0/+1
Change-Id: I830ac299ee713344046d6e6ee96774cf04df516b Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17added an html5 page for testingThierry Bultel8-0/+459
Change-Id: Ia07a32583a08b9b3e17296e560d80a2758f00658 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17fixed the support for 4a frameworkThierry Bultel2-74/+152
Changed the api call for getting an audio role. Mapped the stop/start operations to mute/unmute actions on role verb. No longer uses a gstreamer pipeline for the sound output, since it is 4a-softmixer that performs the read/write loop instead. Change-Id: I91e4f801a0da866c50b2218622e810d7350ab8a9 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17added api verb for RDS informationThierry Bultel3-3/+71
Added a verb to retrieve the RDS information. Notice that it is only supported on the kingfisher implementation. Change-Id: I0e2a830ff77154eb8cbb780bb599fb49f71a5b1c Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17Set the binding version in cmake instead of sourceThierry Bultel4-8/+2
Setting AFB_BINDING_VERSION is cmake makes merges easier between branches, since it is always defined once at a single place instead that in each file that need it. Also removed the "INSTALL" section with LIBRARY_DESTINATION since it is now treated in app-templates. Change-Id: I7ef5f3b4d2009ab6ec296ac70bfc0a5647f9534c Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17radio_impl_rtldsr: use macros for hardcoded sizesThierry Bultel1-32/+46
and fixes some complication warnings Change-Id: I3e9031eb215c3331ffb2264afad5ff07fca2bb46 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17Fixed compilation warningsThierry Bultel9-41/+49
Fixed all the compilation warning that appeared with the latest version of gcc. There are still warnings in the gstreamer headers, that would likely be fixed by a gstreamer bump. Change-Id: I3ae7698dbff47303be366d9755a643a013bb4e51 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-07-17Use latest version of conf.d/app-templates submodule.Thierry Bultel2-6/+2
Changes of conf.d/app-templates: (6fb3846 - Romain Forlot) Warning if not using wgtpkg-pack to make a widget (35f3af1 - Sebastien Douheret) Rework CMAKE_INSTALL_PREFIX and INSTALL_PREFIX var (332f377 - Romain Forlot) Be able to overwrite BUILD_TYPE using CLI (1ec7531 - Romain Forlot) Use CACHE variable for other common CMAKE variable (0880356 - Romain Forlot) Fix:: wrong wgt using RELEASE BUILD TYPE (eec9f07 - Romain Forlot) Fix: SYSROOT location detection... Wrong test. (291aa4e - Romain Forlot) Change the default debug compilation options. (22a2cbf - Romain Forlot) Clearer coverage compilation options configuration (aa68dbd - Romain Forlot) Don't overwrite the autobuild script if it exists (a13e7b9 - Romain Forlot) Disable the in-tree build method. (51026d2 - Romain Forlot) Detect Yocto as OS distribution (1f2944e - Romain Forlot) Fix: wrong compile options added (92646f6 - Romain Forlot) Fallback using zip format if no wgtpkg-pack found (f65761c - José Bollo) 02-variables.cmake: Avoid checking CXX version if not required (3965d37 - José Bollo) config.cmake.sample: Remove dependency to libsystemd (a45ae0c - José Bollo) config.cmake.sample: Remove dependency to libmicrohttpd (9b17efe - Thierry Bultel) Added -D_FORTIFY_SOURCE=2 to CFLAGS (66f7bc8 - Thierry Bultel) start-on-target: uses RSYNC_PREFIX path for config (e400fb3 - Sebastien Douheret) Fixed spelling. (6621af0 - Romain Forlot) Improve OS detection (829dd69 - Romain Forlot) Fix: OS detection (8f5a17b - Romain Forlot) Launch from workdir (72ca4ff - Romain Forlot) Change closing that could fix native debugging (6e1a3c3 - Romain Forlot) Fix filename pattern to match .cmake files (30e78a5 - Romain Forlot) Adding cmake file at the root directory (a3c312e - Romain Forlot) Adds commit hash to the version. (6c0e9e4 - Romain Forlot) Change default sample settings. (dd0cec7 - Romain Forlot) Forgot updating README also... (66d0ca1 - Romain Forlot) Update documentation (4b26503 - Romain Forlot) Use LFSH named, rename data to var (bb3c541 - Romain Forlot) Use new CPP generation from afb-genskel (ee5d60f - Romain Forlot) Update README with latest docs modifications (f3954e8 - Romain Forlot) Doesn't set rpath for built target and update doc (935c390 - Romain Forlot) Details external library. (dc4debf - Romain Forlot) Deprecate PROJECT_LIBDIR and PROJECT_RESOURCES var (c9fdbc1 - Romain Forlot) Make sure to point to correct dir for cmake script (818a2bc - Romain Forlot) Fix variables checking. (e40a854 - Romain Forlot) CMake doesn't path protection. (0487d44 - Romain Forlot) Compare to manual Project version if not from git (7dabdeb - Romain Forlot) No failure if none tags found on project git repo (52a3998 - Romain Forlot) Protect path with space in it. (1687531 - Romain Forlot) Check version between app-templates and project. (d275993 - Romain Forlot) Cleaning (054d3b8 - Romain Forlot) Could specify others default install directories (8c2b059 - Scott Murray) Fix finding config template (c881d86 - Romain Forlot) Disallow build in-source. (17456de - Romain Forlot) Keep libraries and binding in the same directory (8a77e99 - Romain Forlot) Update README and documentation (0fb7a38 - Romain Forlot) Include ExternalProject CMake module by default (6485d21 - Romain Forlot) Cleaning (cc6d75e - Romain Forlot) Handle imported target to populate package folder (637b244 - Romain Forlot) Control install destination directory (cd06605 - Romain Forlot) Fix: wrong if closure... (e846150 - Romain Forlot) Make use of LibEfence optional (6393acf - Romain Forlot) Update Readme (3465ddb - Romain Forlot) Fix: No build error on input files checked (9116b93 - Romain Forlot) Adding install target to autobuild script (908a037 - Romain Forlot) Handle controller plugin populate and install (784e0e5 - Romain Forlot) Clearer output when checking data file (5df967a - Romain Forlot) Don't fails if data files checker not found. (b05e442 - Romain Forlot) Update doc (e9a682f - Romain Forlot) Copying content not the directory. (11478fa - Romain Forlot) Disabling packaging target. To be externalized (37d062d - Romain Forlot) Added populate binding config files (b5fb436 - Romain Forlot) Fix: wrong OS detection when SDK env or Yocto (42e5f14 - Stephane Desneux) templates.d: adjustments for xds (gdb*.ini, xds-project-target.conf) (b1c4a8f - Stephane Desneux) start-on-target.sh.in: use --monitoring option to start afb-daemon (4488c5e - Romain Forlot) Dirty fix to handle distro specific packages deps (7995a00 - Ronan Le Martret) Fix pkgconfig parsing result (6829eb3 - Ronan Le Martret) Fix deb packaging pkgconfig dependency (454f835 - Romain Forlot) Fix: output msg if build fail on remote populate (36dca05 - Romain Forlot) add_input_target targets built by default (4a4b3cc - Romain Forlot) Update doc and README with latest modifications (28dcbc3 - Romain Forlot) Generic default CLOSING_MESSAGE in sample config (73f75d5 - Romain Forlot) Indent (bd08c67 - Romain Forlot) Comment apparently uneeded section. (cf98a0c - Romain Forlot) Change luac option to do only syntax checking (5e0b34e - Romain Forlot) Fix: use of filter in Cmake 3.5 (fcc49c7 - Romain Forlot) Fix: mistaped (1223c0b - Romain Forlot) Fix: luac invokation failed. (6ca5346 - Romain Forlot) Workaround to bugged list filter backport function (13239eb - Romain Forlot) Fix: wrong variable detection (367dde6 - Romain Forlot) OS detection to fallback instead of addition (08aec90 - Romain Forlot) Enhances OS detection with Yocto and SDK (0365ed1 - Romain Forlot) Format: Remove spaces at EOL (2e8abc4 - Romain Forlot) Better OS detection. (20aab30 - Romain Forlot) Format, improve config.cmake.sample file (de03118 - Romain Forlot) Add macros to make a 2nd pass on required module (4d67d06 - Romain Forlot) Better OS detection and inclusion per distribution (3a90fb6 - Romain Forlot) Don't output compiled lua file when checked. (350c5b9 - Romain Forlot) Install automatically managed for populate targets (3e81095 - Romain Forlot) Fix: BINDINGV2 target not populated (9a73785 - Romain Forlot) Better handling icon&config.xml to build widget (90f7727 - Romain Forlot) Cleaning, format (104c349 - Romain Forlot) Duplicate variable meant to set installation dir (aa763dd - Romain Forlot) Make CMake minimal version to at least v3.5 (421f628 - Romain Forlot) Remove JSON checker not suitable for schema check (7919a68 - Romain Forlot) Added per project custom template dir (f6de0ca - Romain Forlot) Fix: missing dev pkg files error. Now well checked (9c71a76 - Romain Forlot) Personal files inclusion now by projects. (0013593 - Romain Forlot) Fix new arbo (22fee6b - Romain Forlot) Reorganization between variables/build options (735b677 - Romain Forlot) Avoid wrong OPENAPI_DEF variable definition (ff2dc94 - Romain Forlot) Better handling of icons (474a2e9 - Romain Forlot) Ease standard target DATA and HTDOCS creation (e1ef035 - Romain Forlot) Extending pluggable arch for templates (20c82ee - Romain Forlot) Update documentation about properties (35e2d30 - Romain Forlot) Be able to choose openAPI definition file name. Change-Id: I3f461b4e1caa6979988c75c62f3c78525edf8574 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-06-05Rework output to directly support 4Aflounder_5.99.1flounder/5.99.15.99.1Scott Murray9-57/+382
When building for 4A, switch to new gstreamer-based ALSA output for the RTL-SDR backend, and the Kingfisher backend now uses a gstreamer pipeline for its loopback to either an ALSA or Pulse sink depending on 4A or not. Using gstreamer instead of direct ALSA output has the benefit of transparently handling resampling to the M3ULCB hardware's required 48 KHz sample rate for the RTL-SDR backend. Change-Id: I2bfbf924927bb461cce88b04aba0e626f8d71215 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2018-06-05Split rtlsdr code into standalone helperScott Murray6-60/+487
To avoid the GPL licensed code in rtl_fm.c making all of the binding GPL, rework things to wrap it with a simple standalone helper executable that is driven via stdin/stdout. While this could potentially be done by running the original unmodified rtl_fm utility itself, it would be impossible to implement scanning with that approach without some compromising of playback latency and quality. The current helper implementation is simple enough that replacing it with an alternate one should be relatively straightforward if that is desired. Change-Id: If83b834da3999f5807d1453524ae72b1c3559c90 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2018-06-05Always enable Kingfisher supportScott Murray3-12/+10
Make Kingfisher support unconditional to move all platform detection to run-time. This fixes the issue of violating the application build workflow with the SDK. Additionally, the Kingfisher detection has been improved with an added check for the Si4689 device-tree node to differentiate from a regular M3ULCB, and the Kingfisher output has been fixed for recent BSP changes. Change-Id: I28e18a065385205aefec974079b0a9c2d31059b6 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2018-05-15Remove reference to <afb/afb-service-itf.h>José Bollo1-1/+0
Change-Id: Ic5130850f76db94d86fb94e904ac5f985cf0aa30 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-03-20binding: update kingfisher i2c bus numberHarunobu Kurokawa1-4/+4
The Si4689 radio chip I2C bus number has shifted from i2c-11 to i2c-12. This updates I2C bus number in SI scripts accordingly. Signed-off-by: Harunobu Kurokawa <harunobu.kurokawa.dn@renesas.com>
2018-03-20Add Kingfisher Si4689 supportHarunobu Kurokawa8-62/+632
Add conditionally compilable support for the Si4689 radio on the M3ULCB Kingfisher infotainment board. The codebase has been refactored to allow multiple radio implementations, and when Kingfisher support is enabled, the binding will first look for a USB RTL-SDR adapter, then fallback to the Kingfisher Si4689 if one is not found. This allows easily switching to a RTL-SDR adapter if this initial Kingfisher support encounters issues. The back end implementation relies on a patched version of the "si_ctl" utility from Cogent Embedded's Kingfisher BSP changes. The modifications to it add FM band plan selection and scanning threshold tweaking for poor radio environments. Audio output is achieved by looping the radio's PulseAudio source to the appropriate sink depending on 4A or non-4A operation. For 4A compatibility, the PulseAudio source is created if it does not exist, which currently is the case due to PulseAudio's udev module being disabled when 4A is enabled. Additionally, the FM band plan for Japan has been corrected to go to 95 MHz, and a README.md file has been added documenting the optional configuration that can be done via /etc/xdg/AGL.conf for band plan selection and scanning sensitivity. Change-Id: I204906fed741d917fc3b8be962deadb4e59989db Signed-off-by: Scott Murray <scott.murray@konsulko.com> Signed-off-by: Harunobu Kurokawa <harunobu.kurokawa.dn@renesas.com>
2018-01-15binding: radio: add binding documentationMatt Ranostay1-0/+33
Add initial documentation for agl-service-radio service Bug-AGL: SPEC-1245 Change-Id: Idff666ad36aad6d4bb3df48e865fc22a816b98ee Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2018-01-15binding: agl-service-radio: remove qmake artifactsMatt Ranostay1-11/+0
Qmake is no longer used for building this service so remove a lone .pro file Change-Id: I984b0225d965a3163f920a2397988021bb8b4b44 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2017-11-24Return a correct value for 'start'José Bollo1-2/+1
The returned value was presumed to be garbage. Change-Id: I72997d267139cc89f5dd5d325fc0512f44859b90 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-24Remove calls to 'exit'José Bollo1-6/+8
The check now return a status instead of exiting the process. Change-Id: I70bdeb4e4b3848a0c5e743a13aecec3ed8f98600 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-10-13Add gitreview file for mastereel_4.99.3eel_4.99.2eel_4.99.1eel/4.99.3eel/4.99.2eel/4.99.14.99.34.99.24.99.1Jan-Simon Möller1-0/+5
Change-Id: I8587ce03dbfe03e3e4174a09d792711200389c36 Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org>
2017-10-11Switch to AFB_SESSION_NONE for verbsScott Murray1-12/+12
Recent testing found that the verbs no longer work now with the AFB_SESSION_CHECK flag set on them and the binding split out to be standalone from the app. Since the radio does not really need the concept of a session, switch to AFB_SESSION_NONE to get things working, rather than add the extra infrastructure to enable session support. Change-Id: I9c022eaf7a18a1094b9afb7c6bddf1a8ebc9e875 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2017-08-17binding: radio: upgrade to v2 of binding frameworkMatt Ranostay1-35/+26
Update structures and function calls to afm binding framework version 2 specs Bug-AGL: SPEC-835 Change-Id: Ie9198c4fe035e2267a1098fac7995b60e65809ec Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
2017-08-17binding: radio: switch to cmake build systemMatt Ranostay14-14377/+373
Switch from qmake build system to cmake avoiding the unneeded dependency of qt Bug-AGL: SPEC-834 Change-Id: Ifcf43b8ebadf723ec0131beda7d96f705083a1c2 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>