From 22826f0f164d48ceef18343d9e9c2a6eb3de4230 Mon Sep 17 00:00:00 2001 From: Jan-Simon Moeller Date: Mon, 18 Oct 2021 14:06:49 +0200 Subject: WIP: rm appfw Signed-off-by: Jan-Simon Moeller Change-Id: I6a90dae780a8eca7d684b5842c3af3ee55ebc509 --- .../feature/agl-cloudproxy/50_local.conf.inc | 2 + .../agl-service-bluetooth-map_git.bb | 18 + .../agl-service-bluetooth-pbap_git.bb | 18 + .../agl-service-bluetooth_git.bb | 18 + .../agl-service-can-high-level-viwi.bb | 19 + .../agl-service-can-low-level_git.bb | 23 + .../agl-service-can-low-level_git.bbappend | 10 + .../can-dev-mapping-helper_1.0.bb | 21 + .../files/can-dev-mapping-helper.conf | 3 + .../files/can-dev-mapping-helper.service | 6 + .../files/can-dev-mapping-helper.sh | 36 ++ .../agl-service-can-low-level/files/run-ptest | 3 + .../agl-service-cloudproxy_git.bb | 23 + .../agl-service-cloudproxy/libcloudproxy_git.bb | 19 + .../agl-service-data-persistence_git.bb | 17 + .../agl-service-geoclue/agl-service-geoclue_git.bb | 17 + .../agl-service-geofence_git.bb | 18 + .../agl-service-gps/agl-service-gps_git.bb | 18 + .../agl-service-homescreen_git.bb | 14 + .../agl-service-hvac/agl-service-hvac-conf_git.bb | 27 ++ .../agl-service-hvac/agl-service-hvac_git.bb | 20 + .../agl-service-identity-agent_git.bb | 17 + .../agl-service-iiodevices_git.bb | 19 + .../agl-service-mediaplayer_git.bb | 18 + .../agl-service-mediascanner_git.bb | 18 + .../agl-service-navigation_git.bb | 18 + .../agl-service-network/agl-service-network_git.bb | 25 + .../agl-service-nfc/agl-service-nfc_git.bb | 17 + .../agl-service-platform-info_git.bb | 17 + .../agl-service-radio/agl-service-radio_git.bb | 19 + .../agl-service-signal-composer_git.bb | 18 + .../agl-service-signal-composer/files/run-ptest | 3 + .../agl-service-taskmanager.bb | 18 + .../agl-service-telephony_git.bb | 18 + .../agl-service-unicens-controller_git.bb | 19 + .../agl-service-unicens/agl-service-unicens_git.bb | 19 + .../agl-service-voice-high-capabilities_git.bb | 17 + .../agl-service-voice-high_git.bb | 19 + .../default-voice-high-config/voice-high.json | 1 + .../default-voice-high-config_1.0.bb | 20 + .../agl-service-weather/agl-service-weather_git.bb | 18 + .../cluster-dashboard-demo-config_1.0.bb | 11 + .../files/AGL.conf.cluster | 2 + .../cluster-demo-network-config_1.0.bb | 33 ++ .../files/cluster-demo-network-conf.sh | 17 + .../files/cluster-demo-network-conf@.service | 12 + .../cluster-demo-simulator.bb | 23 + .../files/cluster-demo-simulator.service | 13 + .../files/simple_can_simulator.py | 381 +++++++++++++++ .../cluster-lin-bridging-config.bb | 28 ++ .../files/cluster-lin-bridging.service | 11 + .../dev-mapping/dev-mapping-ci/dev-mapping.conf.ci | 7 + .../dev-mapping/dev-mapping-ci_1.0.bb | 18 + .../dev-mapping-demo/dev-mapping.conf.demo | 7 + .../dev-mapping/dev-mapping-demo_1.0.bb | 18 + .../dev-mapping/dev-mapping.conf.default | 7 + .../recipes-config/dev-mapping/dev-mapping_0.1.bb | 18 + .../systemd-sync/systemd-agl-sync_1.0.bb | 39 ++ .../unicens-config/files/55-inic.rules | 4 + .../unicens-config/files/unicens-config.service | 11 + .../unicens-config/files/unicens-config.sh | 143 ++++++ .../unicens-config/unicens-config.bb | 31 ++ ...-gstreamer-helper-application-for-interco.patch | 517 +++++++++++++++++++++ .../bluez-alsa/bluealsa-gst-helper@.service | 18 + .../bluez-alsa/bluez-alsa_git.bb | 43 ++ .../bluez-alsa/bluez-alsa_git.bbappend | 35 ++ .../bluez-alsa/files/bluez-alsa.service | 11 + .../recipes-demo/alexa-viewer/alexa-viewer_git.bb | 38 ++ .../camera-gstreamer/camera-gstreamer_git.bb | 27 ++ .../cluster-dashboard/cluster-dashboard_git.bb | 31 ++ .../cluster-gauges-qtcompositor_git.bb | 29 ++ .../cluster-receiver/cluster-receiver_git.bb | 27 ++ .../cluster-receiver/qt-cluster-receiver_git.bb | 30 ++ .../cluster-windowmanager-conf/areas.json | 40 ++ .../cluster-windowmanager-conf/layers.json | 47 ++ .../cluster-windowmanager-conf/roles.db | 34 ++ .../cluster-windowmanager-conf_1.0.bb | 19 + _to_remove/recipes-demo/dashboard/dashboard_git.bb | 23 + .../homescreen-demo-ci/homescreen-demo-ci_git.bb | 37 ++ .../recipes-demo/homescreen/homescreen_git.bb | 43 ++ .../html5-background/html5-background_git.bb | 13 + .../html5-dashboard/html5-dashboard_git.bb | 15 + .../html5-homescreen/html5-homescreen_git.bb | 15 + .../recipes-demo/html5-hvac/html5-hvac_git.bb | 15 + .../html5-launcher/html5-launcher_git.bb | 15 + .../html5-mediaplayer/html5-mediaplayer_git.bb | 15 + .../recipes-demo/html5-mixer/html5-mixer_git.bb | 15 + .../html5-settings/html5-settings_git.bb | 15 + _to_remove/recipes-demo/hvac/hvac_git.bb | 25 + .../inputeventmanager/inputeventmanager_git.bb | 30 ++ _to_remove/recipes-demo/launcher/launcher_git.bb | 32 ++ .../recipes-demo/mediaplayer/mediaplayer_git.bb | 20 + _to_remove/recipes-demo/messaging/messaging_git.bb | 20 + _to_remove/recipes-demo/mixer/mixer_git.bb | 29 ++ .../navigation/ondemandnavi-config/naviconfig.ini | 9 + .../navigation/ondemandnavi-config_1.0.bb | 21 + .../recipes-demo/navigation/ondemandnavi_git.bb | 31 ++ .../recipes-demo/navigation/poiapp-api-key_1.0.bb | 21 + .../poiapp/0001-add-display-permission.patch | 21 + _to_remove/recipes-demo/navigation/poiapp_git.bb | 23 + _to_remove/recipes-demo/navigation/tbtnavi_git.bb | 38 ++ .../recipes-demo/onscreenapp/onscreenapp_git.bb | 18 + _to_remove/recipes-demo/phone/phone_git.bb | 24 + .../recipes-demo/radio/files/presets-ALS.conf | 12 + .../recipes-demo/radio/files/presets-CES.conf | 14 + .../recipes-demo/radio/files/presets-FOSDEM.conf | 14 + _to_remove/recipes-demo/radio/radio_git.bb | 36 ++ _to_remove/recipes-demo/settings/settings_git.bb | 31 ++ .../files/simple_can_simulator.py | 381 +++++++++++++++ .../simple-can-simulator/simple-can-simulator.bb | 15 + .../recipes-demo/taskmanager/taskmanager_git.bb | 26 ++ .../telematics-recorder/telematics-recorder_git.bb | 25 + .../waltham-receiver/waltham-receiver_git.bb | 28 ++ .../low-level-can-generator_git.bb | 17 + .../python/python3-asyncssh_2.3.0.bb | 15 + .../python/python3-pytest-dependency_0.5.1.bb | 12 + .../python/python3-pytest-reverse_1.0.1.bb | 12 + .../run-agl-postinsts/run-agl-postinsts | 48 ++ .../run-agl-postinsts/run-agl-postinsts.service | 17 + .../run-agl-postinsts/run-agl-postinsts_1.0.bb | 46 ++ .../run-agl-postinsts_1.0.bbappend | 1 + .../recipes-graphics/hmi-debug/files/hmi-debug | 8 + .../recipes-graphics/hmi-debug/hmi-debug_git.bb | 19 + .../libhomescreen/libhomescreen_git.bb | 19 + .../qlibhomescreen/qlibhomescreen_git.bb | 13 + .../recipes-graphics/wayland/weston-init.bbappend | 1 + .../wayland/weston-init/tmpfiles.conf.in | 6 + .../wayland/weston-init/weston-dep.conf.in | 3 + .../wayland/weston-init/weston.conf.in | 12 + .../wayland/weston-init/zz-dri-imx.rules.in | 2 + .../wayland/weston-init/zz-dri.rules.in | 1 + .../wayland/weston-init/zz-input.rules.in | 1 + .../wayland/weston-init/zz-tty.rules.in | 1 + .../wayland/weston-init/zz-video.rules.in | 1 + .../wayland/weston-init_agldemo.inc | 81 ++++ .../0002-src-most-add-auto-conf-feature.patch | 472 +++++++++++++++++++ ...003-core-remove-kernel-log-for-MBO-status.patch | 26 ++ .../files/0004-most-video-set-device_caps.patch | 25 + ...-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch | 25 + .../files/0006-dim2-fix-startup-sequence.patch | 186 ++++++++ .../most/files/0007-dim2-use-device-tree.patch | 378 +++++++++++++++ ...im2-read-clock-speed-from-the-device-tree.patch | 92 ++++ ...use-device-for-coherent-memory-allocation.patch | 47 ++ .../most/files/0010-backport-usb-setup-timer.patch | 35 ++ ...1-handle-snd_pcm_lib_mmap_vmalloc-removal.patch | 30 ++ .../files/0012-Fix-build-with-5.4-kernel.patch | 68 +++ .../files/0013-Fix-build-with-5.7-kernel.patch | 54 +++ .../files/0014-Fix-build-with-5.9-kernel.patch | 39 ++ _to_remove/recipes-kernel/most/most.bb | 14 + _to_remove/recipes-kernel/most/most.bbappend | 17 + .../0001-Disable-sllin-driver-debug-log.patch | 27 ++ .../sllin/files/0001_update_makefile.patch | 21 + .../files/0002_fix_null_operation_check.patch | 176 +++++++ ...llow-recent-kernels-newer-4.11.x-to-build.patch | 69 +++ .../files/0004-Fix-build-with-5.9-kernel.patch | 48 ++ .../recipes-kernel/sllin/files/lin_config.conf | 10 + .../recipes-kernel/sllin/files/sllin-demo.service | 14 + .../recipes-kernel/sllin/files/start_lin_demo.sh | 59 +++ _to_remove/recipes-kernel/sllin/sllin.bb | 45 ++ .../recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb | 40 ++ .../qt-qrcode/0001-rework-library-build.patch | 181 ++++++++ .../qt-qrcode/0002-fix-dangling-pointer.patch | 25 + _to_remove/recipes-qt/qt-qrcode/qt-qrcode_git.bb | 19 + ...Makefile-to-use-pkg-config-for-libxml-2.0.patch | 33 ++ .../0002-Change-Makefile-to-use-LDFLAGS.patch | 20 + .../recipes-support/lin-config/lin-config_git.bb | 25 + .../recipes-support/opencv/opencv_4.%.bbappend | 1 + .../recipes-support/opencv/opencv_agldemo.inc | 1 + .../gcovr-wrapper/gcovr-wrapper/gcovr-wrapper | 320 +++++++++++++ .../gcovr-wrapper/gcovr-wrapper_1.0.bb | 17 + ...0001-add-gcov-filter-source-errors-option.patch | 68 +++ _to_remove/recipes-test/gcovr/gcovr_%.bbappend | 2 + _to_remove/recipes-test/gcovr/gcovr_git.bb | 32 ++ _to_remove/recipes-test/pyagl/pyagl_git.bb | 33 ++ .../chromium/chromium-browser-service.bb | 19 + _to_remove/recipes-wam/chromium/chromium.inc | 354 ++++++++++++++ _to_remove/recipes-wam/chromium/chromium84_git.bb | 81 ++++ .../files/add-a-delay-to-agl-ready-event.patch | 70 +++ .../files/chromium-quiche-invalid-offsetof.patch | 57 +++ .../chromium/files/chromium-skia-no_sanitize.patch | 63 +++ _to_remove/recipes-wam/chromium/gn-utils.inc | 32 ++ _to_remove/recipes-wam/wam/files/WebAppMgr.env | 202 ++++++++ .../recipes-wam/wam/files/WebAppMgr@.service | 37 ++ .../recipes-wam/wam/files/trunc-webapp-roles.patch | 56 +++ _to_remove/recipes-wam/wam/files/wam-user-setup.sh | 25 + .../recipes-wam/wam/files/wam-user-setup@.service | 10 + _to_remove/recipes-wam/wam/wam_git.bb | 64 +++ conf/include/agl-cloudproxy.inc | 5 - conf/include/agl-demo-preload.inc | 7 - conf/include/agl-demo.inc | 13 +- conf/layer.conf | 2 +- .../agl-service-bluetooth-map_git.bb | 18 - .../agl-service-bluetooth-pbap_git.bb | 18 - .../agl-service-bluetooth_git.bb | 18 - .../agl-service-can-high-level-viwi.bb | 19 - .../agl-service-can-low-level_git.bb | 23 - .../agl-service-can-low-level_git.bbappend | 10 - .../can-dev-mapping-helper_1.0.bb | 21 - .../files/can-dev-mapping-helper.conf | 3 - .../files/can-dev-mapping-helper.service | 6 - .../files/can-dev-mapping-helper.sh | 36 -- .../agl-service-can-low-level/files/run-ptest | 3 - .../agl-service-cloudproxy_git.bb | 23 - .../agl-service-cloudproxy/libcloudproxy_git.bb | 19 - .../agl-service-data-persistence_git.bb | 17 - .../agl-service-geoclue/agl-service-geoclue_git.bb | 17 - .../agl-service-geofence_git.bb | 18 - .../agl-service-gps/agl-service-gps_git.bb | 18 - .../agl-service-homescreen_git.bb | 14 - .../agl-service-hvac/agl-service-hvac-conf_git.bb | 27 -- .../agl-service-hvac/agl-service-hvac_git.bb | 20 - .../agl-service-identity-agent_git.bb | 17 - .../agl-service-iiodevices_git.bb | 19 - .../agl-service-mediaplayer_git.bb | 18 - .../agl-service-mediascanner_git.bb | 18 - .../agl-service-navigation_git.bb | 18 - .../agl-service-network/agl-service-network_git.bb | 25 - .../agl-service-nfc/agl-service-nfc_git.bb | 17 - .../agl-service-platform-info_git.bb | 17 - .../agl-service-radio/agl-service-radio_git.bb | 19 - .../agl-service-signal-composer_git.bb | 18 - .../agl-service-signal-composer/files/run-ptest | 3 - .../agl-service-taskmanager.bb | 18 - .../agl-service-telephony_git.bb | 18 - .../agl-service-unicens-controller_git.bb | 19 - .../agl-service-unicens/agl-service-unicens_git.bb | 19 - .../agl-service-voice-high-capabilities_git.bb | 17 - .../agl-service-voice-high_git.bb | 19 - .../default-voice-high-config/voice-high.json | 1 - .../default-voice-high-config_1.0.bb | 20 - .../agl-service-weather/agl-service-weather_git.bb | 18 - .../agl-login-manager/agl-login-manager_%.bbappend | 1 - .../agl-login-manager/agl-login-manager_0.1.bb | 19 - .../cluster-dashboard-demo-config_1.0.bb | 11 - .../files/AGL.conf.cluster | 2 - .../cluster-demo-network-config_1.0.bb | 33 -- .../files/cluster-demo-network-conf.sh | 17 - .../files/cluster-demo-network-conf@.service | 12 - .../cluster-demo-simulator.bb | 23 - .../files/cluster-demo-simulator.service | 13 - .../files/simple_can_simulator.py | 381 --------------- .../cluster-lin-bridging-config.bb | 28 -- .../files/cluster-lin-bridging.service | 11 - .../dev-mapping/dev-mapping-ci/dev-mapping.conf.ci | 7 - recipes-config/dev-mapping/dev-mapping-ci_1.0.bb | 18 - .../dev-mapping-demo/dev-mapping.conf.demo | 7 - recipes-config/dev-mapping/dev-mapping-demo_1.0.bb | 18 - .../dev-mapping/dev-mapping.conf.default | 7 - recipes-config/dev-mapping/dev-mapping_0.1.bb | 18 - .../systemd-sync/systemd-agl-sync_1.0.bb | 39 -- recipes-config/unicens-config/files/55-inic.rules | 4 - .../unicens-config/files/unicens-config.service | 11 - .../unicens-config/files/unicens-config.sh | 143 ------ recipes-config/unicens-config/unicens-config.bb | 31 -- ...-gstreamer-helper-application-for-interco.patch | 517 --------------------- .../bluez-alsa/bluealsa-gst-helper@.service | 18 - recipes-connectivity/bluez-alsa/bluez-alsa_git.bb | 43 -- .../bluez-alsa/bluez-alsa_git.bbappend | 35 -- .../bluez-alsa/files/bluez-alsa.service | 11 - recipes-demo/alexa-viewer/alexa-viewer_git.bb | 38 -- .../camera-gstreamer/camera-gstreamer_git.bb | 27 -- .../cluster-dashboard/cluster-dashboard_git.bb | 31 -- .../cluster-gauges-qtcompositor_git.bb | 29 -- .../cluster-receiver/cluster-receiver_git.bb | 27 -- .../cluster-receiver/qt-cluster-receiver_git.bb | 30 -- .../cluster-windowmanager-conf/areas.json | 40 -- .../cluster-windowmanager-conf/layers.json | 47 -- .../cluster-windowmanager-conf/roles.db | 34 -- .../cluster-windowmanager-conf_1.0.bb | 19 - recipes-demo/dashboard/dashboard_git.bb | 23 - .../homescreen-demo-ci/homescreen-demo-ci_git.bb | 37 -- recipes-demo/homescreen/homescreen_git.bb | 28 +- .../html5-background/html5-background_git.bb | 13 - .../html5-dashboard/html5-dashboard_git.bb | 15 - .../html5-homescreen/html5-homescreen_git.bb | 15 - recipes-demo/html5-hvac/html5-hvac_git.bb | 15 - recipes-demo/html5-launcher/html5-launcher_git.bb | 15 - .../html5-mediaplayer/html5-mediaplayer_git.bb | 15 - recipes-demo/html5-mixer/html5-mixer_git.bb | 15 - recipes-demo/html5-settings/html5-settings_git.bb | 15 - recipes-demo/hvac/hvac_git.bb | 25 - .../inputeventmanager/inputeventmanager_git.bb | 30 -- recipes-demo/launcher/launcher_git.bb | 32 -- recipes-demo/mediaplayer/mediaplayer_git.bb | 20 - recipes-demo/messaging/messaging_git.bb | 20 - recipes-demo/mixer/mixer_git.bb | 29 -- .../navigation/ondemandnavi-config/naviconfig.ini | 9 - recipes-demo/navigation/ondemandnavi-config_1.0.bb | 21 - recipes-demo/navigation/ondemandnavi_git.bb | 31 -- recipes-demo/navigation/poiapp-api-key_1.0.bb | 21 - .../poiapp/0001-add-display-permission.patch | 21 - recipes-demo/navigation/poiapp_git.bb | 23 - recipes-demo/navigation/tbtnavi_git.bb | 38 -- recipes-demo/onscreenapp/onscreenapp_git.bb | 18 - recipes-demo/phone/phone_git.bb | 24 - recipes-demo/radio/files/presets-ALS.conf | 12 - recipes-demo/radio/files/presets-CES.conf | 14 - recipes-demo/radio/files/presets-FOSDEM.conf | 14 - recipes-demo/radio/radio_git.bb | 36 -- recipes-demo/settings/settings_git.bb | 31 -- .../files/simple_can_simulator.py | 381 --------------- .../simple-can-simulator/simple-can-simulator.bb | 15 - recipes-demo/taskmanager/taskmanager_git.bb | 26 -- .../telematics-recorder/telematics-recorder_git.bb | 25 - .../waltham-receiver/waltham-receiver_git.bb | 28 -- .../low-level-can-generator_git.bb | 17 - recipes-devtools/python/python3-asyncssh_2.3.0.bb | 15 - .../python/python3-pytest-dependency_0.5.1.bb | 12 - .../python/python3-pytest-reverse_1.0.1.bb | 12 - .../run-agl-postinsts/run-agl-postinsts | 48 -- .../run-agl-postinsts/run-agl-postinsts.service | 17 - .../run-agl-postinsts/run-agl-postinsts_1.0.bb | 46 -- .../run-agl-postinsts_1.0.bbappend | 1 - recipes-graphics/hmi-debug/files/hmi-debug | 8 - recipes-graphics/hmi-debug/hmi-debug_git.bb | 19 - .../libhomescreen/libhomescreen_git.bb | 19 - .../qlibhomescreen/qlibhomescreen_git.bb | 13 - recipes-graphics/wayland/weston-init.bbappend | 1 - .../wayland/weston-init/tmpfiles.conf.in | 6 - .../wayland/weston-init/weston-dep.conf.in | 3 - .../wayland/weston-init/weston.conf.in | 12 - .../wayland/weston-init/zz-dri-imx.rules.in | 2 - .../wayland/weston-init/zz-dri.rules.in | 1 - .../wayland/weston-init/zz-input.rules.in | 1 - .../wayland/weston-init/zz-tty.rules.in | 1 - .../wayland/weston-init/zz-video.rules.in | 1 - recipes-graphics/wayland/weston-init_agldemo.inc | 81 ---- .../0002-src-most-add-auto-conf-feature.patch | 472 ------------------- ...003-core-remove-kernel-log-for-MBO-status.patch | 26 -- .../files/0004-most-video-set-device_caps.patch | 25 - ...-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch | 25 - .../files/0006-dim2-fix-startup-sequence.patch | 186 -------- .../most/files/0007-dim2-use-device-tree.patch | 378 --------------- ...im2-read-clock-speed-from-the-device-tree.patch | 92 ---- ...use-device-for-coherent-memory-allocation.patch | 47 -- .../most/files/0010-backport-usb-setup-timer.patch | 35 -- ...1-handle-snd_pcm_lib_mmap_vmalloc-removal.patch | 30 -- .../files/0012-Fix-build-with-5.4-kernel.patch | 68 --- .../files/0013-Fix-build-with-5.7-kernel.patch | 54 --- .../files/0014-Fix-build-with-5.9-kernel.patch | 39 -- recipes-kernel/most/most.bb | 14 - recipes-kernel/most/most.bbappend | 17 - .../0001-Disable-sllin-driver-debug-log.patch | 27 -- .../sllin/files/0001_update_makefile.patch | 21 - .../files/0002_fix_null_operation_check.patch | 176 ------- ...llow-recent-kernels-newer-4.11.x-to-build.patch | 69 --- .../files/0004-Fix-build-with-5.9-kernel.patch | 48 -- recipes-kernel/sllin/files/lin_config.conf | 10 - recipes-kernel/sllin/files/sllin-demo.service | 14 - recipes-kernel/sllin/files/start_lin_demo.sh | 59 --- recipes-kernel/sllin/sllin.bb | 45 -- .../images/agl-cluster-demo-platform-crosssdk.bb | 27 -- .../images/agl-cluster-demo-platform.bb | 15 - .../images/agl-cluster-demo-platform.inc | 3 - .../images/agl-cluster-demo-qtcompositor.bb | 15 - .../images/agl-cluster-demo-qtcompositor.inc | 2 - .../images/agl-demo-platform-crosssdk.bb | 70 --- recipes-platform/images/agl-demo-platform-html5.bb | 14 - recipes-platform/images/agl-demo-platform-qa.bb | 13 - recipes-platform/images/agl-demo-platform.bb | 20 - recipes-platform/images/agl-demo-platform.inc | 8 - recipes-platform/images/agl-image-cluster-qt5.bb | 9 - recipes-platform/images/agl-image-cluster-qt5.inc | 7 - recipes-platform/images/agl-image-cluster.bb | 9 - recipes-platform/images/agl-image-cluster.inc | 7 - .../images/agl-image-graphical-html5.bb | 11 +- .../images/agl-image-graphical-html5.inc | 9 - .../images/agl-image-graphical-qt5-crosssdk.bb | 18 +- .../images/agl-image-graphical-qt5-crosssdk.inc | 14 - recipes-platform/images/agl-image-graphical-qt5.bb | 5 - .../images/agl-image-graphical-qt5.inc | 1 - recipes-platform/images/agl-image-ivi-crosssdk.bb | 13 +- recipes-platform/images/agl-image-ivi-qa.bb | 14 - recipes-platform/images/agl-image-ivi.bb | 13 +- recipes-platform/images/agl-image-ivi.inc | 15 - recipes-platform/images/agl-image-telematics.bb | 9 - recipes-platform/images/agl-image-telematics.inc | 5 - .../images/agl-ivi-demo-platform-crosssdk.bb | 59 +++ .../images/agl-ivi-demo-platform-html5.bb | 14 + recipes-platform/images/agl-ivi-demo-platform.bb | 13 + .../agl-telematics-demo-platform-crosssdk.bb | 21 - .../images/agl-telematics-demo-platform.bb | 13 - .../images/agl-telematics-demo-platform.inc | 3 - .../nativesdk-packagegroup-sdk-host.bbappend | 6 - .../packagegroup-agl-app-framework.bbappend | 1 - .../packagegroups/packagegroup-agl-appfw-html5.bb | 18 - .../packagegroup-agl-appfw-native-qt5.bb | 29 -- .../packagegroup-agl-cluster-demo-platform.bb | 40 -- .../packagegroup-agl-cluster-demo-qtcompositor.bb | 43 -- .../packagegroup-agl-core-devel.bbappend | 10 - .../packagegroup-agl-demo-platform-html5.bb | 34 -- .../packagegroup-agl-demo-platform-qa.bb | 15 - .../packagegroup-agl-demo-platform.bb | 46 -- .../packagegroup-agl-demo-qt-examples.bb | 26 -- .../packagegroups/packagegroup-agl-demo.bb | 27 -- .../packagegroup-agl-graphical-services.bb | 15 - .../packagegroup-agl-graphical-weston_agldemo.inc | 4 - .../packagegroups/packagegroup-agl-image-ivi.bb | 3 - .../packagegroup-agl-ivi-connectivity.bbappend | 1 - .../packagegroups/packagegroup-agl-ivi-identity.bb | 2 - .../packagegroups/packagegroup-agl-ivi-services.bb | 22 - ...ackagegroup-agl-profile-cluster-qtcompositor.bb | 1 - .../packagegroup-agl-profile-graphical-html5.bb | 1 - .../packagegroup-agl-profile-graphical-qt5.bb | 2 - .../packagegroup-agl-profile-graphical.bbappend | 3 - .../packagegroup-agl-profile-telematics.bb | 3 - .../packagegroup-agl-speech-services.bb | 2 - .../packagegroup-agl-telematics-demo-platform.bb | 2 - .../packagegroups/packagegroup-hmi-framework.bb | 18 +- recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb | 40 -- .../qt-qrcode/0001-rework-library-build.patch | 181 -------- .../qt-qrcode/0002-fix-dangling-pointer.patch | 25 - recipes-qt/qt-qrcode/qt-qrcode_git.bb | 19 - recipes-support/curl/curl_%.bbappend | 1 - recipes-support/curl/curl_agldemo.inc | 5 - ...Makefile-to-use-pkg-config-for-libxml-2.0.patch | 33 -- .../0002-Change-Makefile-to-use-LDFLAGS.patch | 20 - recipes-support/lin-config/lin-config_git.bb | 25 - recipes-support/opencv/opencv_4.%.bbappend | 1 - recipes-support/opencv/opencv_agldemo.inc | 1 - .../gcovr-wrapper/gcovr-wrapper/gcovr-wrapper | 320 ------------- recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb | 17 - ...0001-add-gcov-filter-source-errors-option.patch | 68 --- recipes-test/gcovr/gcovr_%.bbappend | 2 - recipes-test/gcovr/gcovr_git.bb | 32 -- recipes-test/pyagl/pyagl_git.bb | 33 -- recipes-wam/chromium/chromium-browser-service.bb | 19 - recipes-wam/chromium/chromium.inc | 354 -------------- recipes-wam/chromium/chromium84_git.bb | 81 ---- .../files/add-a-delay-to-agl-ready-event.patch | 70 --- .../files/chromium-quiche-invalid-offsetof.patch | 57 --- .../chromium/files/chromium-skia-no_sanitize.patch | 63 --- recipes-wam/chromium/gn-utils.inc | 32 -- recipes-wam/wam/files/WebAppMgr.env | 202 -------- recipes-wam/wam/files/WebAppMgr@.service | 37 -- recipes-wam/wam/files/trunc-webapp-roles.patch | 56 --- recipes-wam/wam/files/wam-user-setup.sh | 25 - recipes-wam/wam/files/wam-user-setup@.service | 10 - recipes-wam/wam/wam_git.bb | 64 --- scripts/run-yocto-check-layer-all-layers.sh | 2 - templates/feature/agl-cloudproxy/50_local.conf.inc | 2 - templates/feature/agl-demo/50_bblayers.conf.inc | 6 +- templates/feature/agl-demo/50_local.conf.inc | 4 - .../feature/agl-demo/README_feature_agl-demo.md | 2 - templates/feature/agl-demo/included.dep | 2 +- 445 files changed, 7994 insertions(+), 8569 deletions(-) create mode 100644 _to_remove/feature/agl-cloudproxy/50_local.conf.inc create mode 100644 _to_remove/recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb create mode 100644 _to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend create mode 100644 _to_remove/recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb create mode 100644 _to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf create mode 100644 _to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service create mode 100644 _to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh create mode 100644 _to_remove/recipes-apis/agl-service-can-low-level/files/run-ptest create mode 100644 _to_remove/recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-geofence/agl-service-geofence_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-gps/agl-service-gps_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-hvac/agl-service-hvac_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb create mode 100755 _to_remove/recipes-apis/agl-service-navigation/agl-service-navigation_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-network/agl-service-network_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-nfc/agl-service-nfc_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-radio/agl-service-radio_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-signal-composer/files/run-ptest create mode 100644 _to_remove/recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb create mode 100644 _to_remove/recipes-apis/agl-service-telephony/agl-service-telephony_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-unicens/agl-service-unicens_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb create mode 100644 _to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json create mode 100644 _to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb create mode 100644 _to_remove/recipes-apis/agl-service-weather/agl-service-weather_git.bb create mode 100644 _to_remove/recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb create mode 100644 _to_remove/recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster create mode 100644 _to_remove/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb create mode 100644 _to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh create mode 100644 _to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service create mode 100644 _to_remove/recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb create mode 100644 _to_remove/recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service create mode 100755 _to_remove/recipes-config/cluster-demo-simulator/files/simple_can_simulator.py create mode 100644 _to_remove/recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb create mode 100644 _to_remove/recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service create mode 100644 _to_remove/recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci create mode 100644 _to_remove/recipes-config/dev-mapping/dev-mapping-ci_1.0.bb create mode 100644 _to_remove/recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo create mode 100644 _to_remove/recipes-config/dev-mapping/dev-mapping-demo_1.0.bb create mode 100644 _to_remove/recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default create mode 100644 _to_remove/recipes-config/dev-mapping/dev-mapping_0.1.bb create mode 100644 _to_remove/recipes-config/systemd-sync/systemd-agl-sync_1.0.bb create mode 100644 _to_remove/recipes-config/unicens-config/files/55-inic.rules create mode 100644 _to_remove/recipes-config/unicens-config/files/unicens-config.service create mode 100644 _to_remove/recipes-config/unicens-config/files/unicens-config.sh create mode 100644 _to_remove/recipes-config/unicens-config/unicens-config.bb create mode 100644 _to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch create mode 100644 _to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service create mode 100644 _to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bb create mode 100644 _to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend create mode 100644 _to_remove/recipes-connectivity/bluez-alsa/files/bluez-alsa.service create mode 100644 _to_remove/recipes-demo/alexa-viewer/alexa-viewer_git.bb create mode 100644 _to_remove/recipes-demo/camera-gstreamer/camera-gstreamer_git.bb create mode 100644 _to_remove/recipes-demo/cluster-dashboard/cluster-dashboard_git.bb create mode 100644 _to_remove/recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb create mode 100644 _to_remove/recipes-demo/cluster-receiver/cluster-receiver_git.bb create mode 100644 _to_remove/recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb create mode 100644 _to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json create mode 100644 _to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json create mode 100644 _to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db create mode 100644 _to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb create mode 100644 _to_remove/recipes-demo/dashboard/dashboard_git.bb create mode 100644 _to_remove/recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb create mode 100644 _to_remove/recipes-demo/homescreen/homescreen_git.bb create mode 100644 _to_remove/recipes-demo/html5-background/html5-background_git.bb create mode 100644 _to_remove/recipes-demo/html5-dashboard/html5-dashboard_git.bb create mode 100644 _to_remove/recipes-demo/html5-homescreen/html5-homescreen_git.bb create mode 100644 _to_remove/recipes-demo/html5-hvac/html5-hvac_git.bb create mode 100644 _to_remove/recipes-demo/html5-launcher/html5-launcher_git.bb create mode 100644 _to_remove/recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb create mode 100644 _to_remove/recipes-demo/html5-mixer/html5-mixer_git.bb create mode 100644 _to_remove/recipes-demo/html5-settings/html5-settings_git.bb create mode 100644 _to_remove/recipes-demo/hvac/hvac_git.bb create mode 100644 _to_remove/recipes-demo/inputeventmanager/inputeventmanager_git.bb create mode 100644 _to_remove/recipes-demo/launcher/launcher_git.bb create mode 100644 _to_remove/recipes-demo/mediaplayer/mediaplayer_git.bb create mode 100644 _to_remove/recipes-demo/messaging/messaging_git.bb create mode 100644 _to_remove/recipes-demo/mixer/mixer_git.bb create mode 100644 _to_remove/recipes-demo/navigation/ondemandnavi-config/naviconfig.ini create mode 100644 _to_remove/recipes-demo/navigation/ondemandnavi-config_1.0.bb create mode 100644 _to_remove/recipes-demo/navigation/ondemandnavi_git.bb create mode 100644 _to_remove/recipes-demo/navigation/poiapp-api-key_1.0.bb create mode 100644 _to_remove/recipes-demo/navigation/poiapp/0001-add-display-permission.patch create mode 100644 _to_remove/recipes-demo/navigation/poiapp_git.bb create mode 100644 _to_remove/recipes-demo/navigation/tbtnavi_git.bb create mode 100644 _to_remove/recipes-demo/onscreenapp/onscreenapp_git.bb create mode 100644 _to_remove/recipes-demo/phone/phone_git.bb create mode 100644 _to_remove/recipes-demo/radio/files/presets-ALS.conf create mode 100644 _to_remove/recipes-demo/radio/files/presets-CES.conf create mode 100644 _to_remove/recipes-demo/radio/files/presets-FOSDEM.conf create mode 100644 _to_remove/recipes-demo/radio/radio_git.bb create mode 100644 _to_remove/recipes-demo/settings/settings_git.bb create mode 100755 _to_remove/recipes-demo/simple-can-simulator/files/simple_can_simulator.py create mode 100644 _to_remove/recipes-demo/simple-can-simulator/simple-can-simulator.bb create mode 100644 _to_remove/recipes-demo/taskmanager/taskmanager_git.bb create mode 100644 _to_remove/recipes-demo/telematics-recorder/telematics-recorder_git.bb create mode 100644 _to_remove/recipes-demo/waltham-receiver/waltham-receiver_git.bb create mode 100644 _to_remove/recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb create mode 100644 _to_remove/recipes-devtools/python/python3-asyncssh_2.3.0.bb create mode 100644 _to_remove/recipes-devtools/python/python3-pytest-dependency_0.5.1.bb create mode 100644 _to_remove/recipes-devtools/python/python3-pytest-reverse_1.0.1.bb create mode 100755 _to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts create mode 100644 _to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service create mode 100644 _to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb create mode 100644 _to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend create mode 100644 _to_remove/recipes-graphics/hmi-debug/files/hmi-debug create mode 100644 _to_remove/recipes-graphics/hmi-debug/hmi-debug_git.bb create mode 100644 _to_remove/recipes-graphics/libhomescreen/libhomescreen_git.bb create mode 100644 _to_remove/recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb create mode 100644 _to_remove/recipes-graphics/wayland/weston-init.bbappend create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/tmpfiles.conf.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/weston-dep.conf.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/weston.conf.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/zz-dri.rules.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/zz-input.rules.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/zz-tty.rules.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init/zz-video.rules.in create mode 100644 _to_remove/recipes-graphics/wayland/weston-init_agldemo.inc create mode 100644 _to_remove/recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch create mode 100644 _to_remove/recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch create mode 100644 _to_remove/recipes-kernel/most/files/0004-most-video-set-device_caps.patch create mode 100644 _to_remove/recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch create mode 100644 _to_remove/recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch create mode 100644 _to_remove/recipes-kernel/most/files/0007-dim2-use-device-tree.patch create mode 100644 _to_remove/recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch create mode 100644 _to_remove/recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch create mode 100644 _to_remove/recipes-kernel/most/files/0010-backport-usb-setup-timer.patch create mode 100644 _to_remove/recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch create mode 100644 _to_remove/recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch create mode 100644 _to_remove/recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch create mode 100644 _to_remove/recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch create mode 100644 _to_remove/recipes-kernel/most/most.bb create mode 100644 _to_remove/recipes-kernel/most/most.bbappend create mode 100644 _to_remove/recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch create mode 100644 _to_remove/recipes-kernel/sllin/files/0001_update_makefile.patch create mode 100644 _to_remove/recipes-kernel/sllin/files/0002_fix_null_operation_check.patch create mode 100644 _to_remove/recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch create mode 100644 _to_remove/recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch create mode 100644 _to_remove/recipes-kernel/sllin/files/lin_config.conf create mode 100644 _to_remove/recipes-kernel/sllin/files/sllin-demo.service create mode 100755 _to_remove/recipes-kernel/sllin/files/start_lin_demo.sh create mode 100644 _to_remove/recipes-kernel/sllin/sllin.bb create mode 100644 _to_remove/recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb create mode 100644 _to_remove/recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch create mode 100644 _to_remove/recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch create mode 100644 _to_remove/recipes-qt/qt-qrcode/qt-qrcode_git.bb create mode 100644 _to_remove/recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch create mode 100644 _to_remove/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch create mode 100644 _to_remove/recipes-support/lin-config/lin-config_git.bb create mode 100644 _to_remove/recipes-support/opencv/opencv_4.%.bbappend create mode 100644 _to_remove/recipes-support/opencv/opencv_agldemo.inc create mode 100644 _to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper create mode 100644 _to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb create mode 100644 _to_remove/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch create mode 100644 _to_remove/recipes-test/gcovr/gcovr_%.bbappend create mode 100644 _to_remove/recipes-test/gcovr/gcovr_git.bb create mode 100644 _to_remove/recipes-test/pyagl/pyagl_git.bb create mode 100644 _to_remove/recipes-wam/chromium/chromium-browser-service.bb create mode 100644 _to_remove/recipes-wam/chromium/chromium.inc create mode 100644 _to_remove/recipes-wam/chromium/chromium84_git.bb create mode 100644 _to_remove/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch create mode 100644 _to_remove/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch create mode 100644 _to_remove/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch create mode 100644 _to_remove/recipes-wam/chromium/gn-utils.inc create mode 100644 _to_remove/recipes-wam/wam/files/WebAppMgr.env create mode 100644 _to_remove/recipes-wam/wam/files/WebAppMgr@.service create mode 100644 _to_remove/recipes-wam/wam/files/trunc-webapp-roles.patch create mode 100755 _to_remove/recipes-wam/wam/files/wam-user-setup.sh create mode 100644 _to_remove/recipes-wam/wam/files/wam-user-setup@.service create mode 100644 _to_remove/recipes-wam/wam/wam_git.bb delete mode 100644 conf/include/agl-cloudproxy.inc delete mode 100644 recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb delete mode 100644 recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb delete mode 100644 recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb delete mode 100644 recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb delete mode 100644 recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb delete mode 100644 recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend delete mode 100644 recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb delete mode 100644 recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf delete mode 100644 recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service delete mode 100644 recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh delete mode 100644 recipes-apis/agl-service-can-low-level/files/run-ptest delete mode 100644 recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb delete mode 100644 recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb delete mode 100644 recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb delete mode 100644 recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb delete mode 100644 recipes-apis/agl-service-geofence/agl-service-geofence_git.bb delete mode 100644 recipes-apis/agl-service-gps/agl-service-gps_git.bb delete mode 100644 recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb delete mode 100644 recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb delete mode 100644 recipes-apis/agl-service-hvac/agl-service-hvac_git.bb delete mode 100644 recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb delete mode 100644 recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb delete mode 100644 recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb delete mode 100644 recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb delete mode 100755 recipes-apis/agl-service-navigation/agl-service-navigation_git.bb delete mode 100644 recipes-apis/agl-service-network/agl-service-network_git.bb delete mode 100644 recipes-apis/agl-service-nfc/agl-service-nfc_git.bb delete mode 100644 recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb delete mode 100644 recipes-apis/agl-service-radio/agl-service-radio_git.bb delete mode 100644 recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb delete mode 100644 recipes-apis/agl-service-signal-composer/files/run-ptest delete mode 100644 recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb delete mode 100644 recipes-apis/agl-service-telephony/agl-service-telephony_git.bb delete mode 100644 recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb delete mode 100644 recipes-apis/agl-service-unicens/agl-service-unicens_git.bb delete mode 100644 recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb delete mode 100644 recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb delete mode 100644 recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json delete mode 100644 recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb delete mode 100644 recipes-apis/agl-service-weather/agl-service-weather_git.bb delete mode 100644 recipes-config/agl-login-manager/agl-login-manager_%.bbappend delete mode 100644 recipes-config/agl-login-manager/agl-login-manager_0.1.bb delete mode 100644 recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb delete mode 100644 recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster delete mode 100644 recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb delete mode 100644 recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh delete mode 100644 recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service delete mode 100644 recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb delete mode 100644 recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service delete mode 100755 recipes-config/cluster-demo-simulator/files/simple_can_simulator.py delete mode 100644 recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb delete mode 100644 recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service delete mode 100644 recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci delete mode 100644 recipes-config/dev-mapping/dev-mapping-ci_1.0.bb delete mode 100644 recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo delete mode 100644 recipes-config/dev-mapping/dev-mapping-demo_1.0.bb delete mode 100644 recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default delete mode 100644 recipes-config/dev-mapping/dev-mapping_0.1.bb delete mode 100644 recipes-config/systemd-sync/systemd-agl-sync_1.0.bb delete mode 100644 recipes-config/unicens-config/files/55-inic.rules delete mode 100644 recipes-config/unicens-config/files/unicens-config.service delete mode 100644 recipes-config/unicens-config/files/unicens-config.sh delete mode 100644 recipes-config/unicens-config/unicens-config.bb delete mode 100644 recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch delete mode 100644 recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service delete mode 100644 recipes-connectivity/bluez-alsa/bluez-alsa_git.bb delete mode 100644 recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend delete mode 100644 recipes-connectivity/bluez-alsa/files/bluez-alsa.service delete mode 100644 recipes-demo/alexa-viewer/alexa-viewer_git.bb delete mode 100644 recipes-demo/camera-gstreamer/camera-gstreamer_git.bb delete mode 100644 recipes-demo/cluster-dashboard/cluster-dashboard_git.bb delete mode 100644 recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb delete mode 100644 recipes-demo/cluster-receiver/cluster-receiver_git.bb delete mode 100644 recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb delete mode 100644 recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json delete mode 100644 recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json delete mode 100644 recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db delete mode 100644 recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb delete mode 100644 recipes-demo/dashboard/dashboard_git.bb delete mode 100644 recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb delete mode 100644 recipes-demo/html5-background/html5-background_git.bb delete mode 100644 recipes-demo/html5-dashboard/html5-dashboard_git.bb delete mode 100644 recipes-demo/html5-homescreen/html5-homescreen_git.bb delete mode 100644 recipes-demo/html5-hvac/html5-hvac_git.bb delete mode 100644 recipes-demo/html5-launcher/html5-launcher_git.bb delete mode 100644 recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb delete mode 100644 recipes-demo/html5-mixer/html5-mixer_git.bb delete mode 100644 recipes-demo/html5-settings/html5-settings_git.bb delete mode 100644 recipes-demo/hvac/hvac_git.bb delete mode 100644 recipes-demo/inputeventmanager/inputeventmanager_git.bb delete mode 100644 recipes-demo/launcher/launcher_git.bb delete mode 100644 recipes-demo/mediaplayer/mediaplayer_git.bb delete mode 100644 recipes-demo/messaging/messaging_git.bb delete mode 100644 recipes-demo/mixer/mixer_git.bb delete mode 100644 recipes-demo/navigation/ondemandnavi-config/naviconfig.ini delete mode 100644 recipes-demo/navigation/ondemandnavi-config_1.0.bb delete mode 100644 recipes-demo/navigation/ondemandnavi_git.bb delete mode 100644 recipes-demo/navigation/poiapp-api-key_1.0.bb delete mode 100644 recipes-demo/navigation/poiapp/0001-add-display-permission.patch delete mode 100644 recipes-demo/navigation/poiapp_git.bb delete mode 100644 recipes-demo/navigation/tbtnavi_git.bb delete mode 100644 recipes-demo/onscreenapp/onscreenapp_git.bb delete mode 100644 recipes-demo/phone/phone_git.bb delete mode 100644 recipes-demo/radio/files/presets-ALS.conf delete mode 100644 recipes-demo/radio/files/presets-CES.conf delete mode 100644 recipes-demo/radio/files/presets-FOSDEM.conf delete mode 100644 recipes-demo/radio/radio_git.bb delete mode 100644 recipes-demo/settings/settings_git.bb delete mode 100755 recipes-demo/simple-can-simulator/files/simple_can_simulator.py delete mode 100644 recipes-demo/simple-can-simulator/simple-can-simulator.bb delete mode 100644 recipes-demo/taskmanager/taskmanager_git.bb delete mode 100644 recipes-demo/telematics-recorder/telematics-recorder_git.bb delete mode 100644 recipes-demo/waltham-receiver/waltham-receiver_git.bb delete mode 100644 recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb delete mode 100644 recipes-devtools/python/python3-asyncssh_2.3.0.bb delete mode 100644 recipes-devtools/python/python3-pytest-dependency_0.5.1.bb delete mode 100644 recipes-devtools/python/python3-pytest-reverse_1.0.1.bb delete mode 100755 recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts delete mode 100644 recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service delete mode 100644 recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb delete mode 100644 recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend delete mode 100644 recipes-graphics/hmi-debug/files/hmi-debug delete mode 100644 recipes-graphics/hmi-debug/hmi-debug_git.bb delete mode 100644 recipes-graphics/libhomescreen/libhomescreen_git.bb delete mode 100644 recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb delete mode 100644 recipes-graphics/wayland/weston-init.bbappend delete mode 100644 recipes-graphics/wayland/weston-init/tmpfiles.conf.in delete mode 100644 recipes-graphics/wayland/weston-init/weston-dep.conf.in delete mode 100644 recipes-graphics/wayland/weston-init/weston.conf.in delete mode 100644 recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in delete mode 100644 recipes-graphics/wayland/weston-init/zz-dri.rules.in delete mode 100644 recipes-graphics/wayland/weston-init/zz-input.rules.in delete mode 100644 recipes-graphics/wayland/weston-init/zz-tty.rules.in delete mode 100644 recipes-graphics/wayland/weston-init/zz-video.rules.in delete mode 100644 recipes-graphics/wayland/weston-init_agldemo.inc delete mode 100644 recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch delete mode 100644 recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch delete mode 100644 recipes-kernel/most/files/0004-most-video-set-device_caps.patch delete mode 100644 recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch delete mode 100644 recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch delete mode 100644 recipes-kernel/most/files/0007-dim2-use-device-tree.patch delete mode 100644 recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch delete mode 100644 recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch delete mode 100644 recipes-kernel/most/files/0010-backport-usb-setup-timer.patch delete mode 100644 recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch delete mode 100644 recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch delete mode 100644 recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch delete mode 100644 recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch delete mode 100644 recipes-kernel/most/most.bb delete mode 100644 recipes-kernel/most/most.bbappend delete mode 100644 recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch delete mode 100644 recipes-kernel/sllin/files/0001_update_makefile.patch delete mode 100644 recipes-kernel/sllin/files/0002_fix_null_operation_check.patch delete mode 100644 recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch delete mode 100644 recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch delete mode 100644 recipes-kernel/sllin/files/lin_config.conf delete mode 100644 recipes-kernel/sllin/files/sllin-demo.service delete mode 100755 recipes-kernel/sllin/files/start_lin_demo.sh delete mode 100644 recipes-kernel/sllin/sllin.bb delete mode 100644 recipes-platform/images/agl-cluster-demo-platform-crosssdk.bb delete mode 100644 recipes-platform/images/agl-cluster-demo-platform.bb delete mode 100644 recipes-platform/images/agl-cluster-demo-platform.inc delete mode 100644 recipes-platform/images/agl-cluster-demo-qtcompositor.bb delete mode 100644 recipes-platform/images/agl-cluster-demo-qtcompositor.inc delete mode 100644 recipes-platform/images/agl-demo-platform-crosssdk.bb delete mode 100644 recipes-platform/images/agl-demo-platform-html5.bb delete mode 100644 recipes-platform/images/agl-demo-platform-qa.bb delete mode 100644 recipes-platform/images/agl-demo-platform.bb delete mode 100644 recipes-platform/images/agl-demo-platform.inc delete mode 100644 recipes-platform/images/agl-image-cluster-qt5.bb delete mode 100644 recipes-platform/images/agl-image-cluster-qt5.inc delete mode 100644 recipes-platform/images/agl-image-cluster.bb delete mode 100644 recipes-platform/images/agl-image-cluster.inc delete mode 100644 recipes-platform/images/agl-image-graphical-html5.inc delete mode 100644 recipes-platform/images/agl-image-graphical-qt5-crosssdk.inc delete mode 100644 recipes-platform/images/agl-image-graphical-qt5.bb delete mode 100644 recipes-platform/images/agl-image-graphical-qt5.inc delete mode 100644 recipes-platform/images/agl-image-ivi-qa.bb delete mode 100644 recipes-platform/images/agl-image-ivi.inc delete mode 100644 recipes-platform/images/agl-image-telematics.bb delete mode 100644 recipes-platform/images/agl-image-telematics.inc create mode 100644 recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb create mode 100644 recipes-platform/images/agl-ivi-demo-platform-html5.bb create mode 100644 recipes-platform/images/agl-ivi-demo-platform.bb delete mode 100644 recipes-platform/images/agl-telematics-demo-platform-crosssdk.bb delete mode 100644 recipes-platform/images/agl-telematics-demo-platform.bb delete mode 100644 recipes-platform/images/agl-telematics-demo-platform.inc delete mode 100644 recipes-platform/packagegroups/nativesdk-packagegroup-sdk-host.bbappend delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-app-framework.bbappend delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-appfw-html5.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-appfw-native-qt5.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-cluster-demo-platform.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-cluster-demo-qtcompositor.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-core-devel.bbappend delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-demo-platform-qa.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-demo-qt-examples.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-graphical-services.bb delete mode 100644 recipes-platform/packagegroups/packagegroup-agl-profile-graphical.bbappend delete mode 100644 recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb delete mode 100644 recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch delete mode 100644 recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch delete mode 100644 recipes-qt/qt-qrcode/qt-qrcode_git.bb delete mode 100644 recipes-support/curl/curl_%.bbappend delete mode 100644 recipes-support/curl/curl_agldemo.inc delete mode 100644 recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch delete mode 100644 recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch delete mode 100644 recipes-support/lin-config/lin-config_git.bb delete mode 100644 recipes-support/opencv/opencv_4.%.bbappend delete mode 100644 recipes-support/opencv/opencv_agldemo.inc delete mode 100644 recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper delete mode 100644 recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb delete mode 100644 recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch delete mode 100644 recipes-test/gcovr/gcovr_%.bbappend delete mode 100644 recipes-test/gcovr/gcovr_git.bb delete mode 100644 recipes-test/pyagl/pyagl_git.bb delete mode 100644 recipes-wam/chromium/chromium-browser-service.bb delete mode 100644 recipes-wam/chromium/chromium.inc delete mode 100644 recipes-wam/chromium/chromium84_git.bb delete mode 100644 recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch delete mode 100644 recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch delete mode 100644 recipes-wam/chromium/files/chromium-skia-no_sanitize.patch delete mode 100644 recipes-wam/chromium/gn-utils.inc delete mode 100644 recipes-wam/wam/files/WebAppMgr.env delete mode 100644 recipes-wam/wam/files/WebAppMgr@.service delete mode 100644 recipes-wam/wam/files/trunc-webapp-roles.patch delete mode 100755 recipes-wam/wam/files/wam-user-setup.sh delete mode 100644 recipes-wam/wam/files/wam-user-setup@.service delete mode 100644 recipes-wam/wam/wam_git.bb delete mode 100644 templates/feature/agl-cloudproxy/50_local.conf.inc diff --git a/_to_remove/feature/agl-cloudproxy/50_local.conf.inc b/_to_remove/feature/agl-cloudproxy/50_local.conf.inc new file mode 100644 index 000000000..93b0cb407 --- /dev/null +++ b/_to_remove/feature/agl-cloudproxy/50_local.conf.inc @@ -0,0 +1,2 @@ +# Set cloud proxy flag +AGL_CLOUDPROXY_WANTED = "1" \ No newline at end of file diff --git a/_to_remove/recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb b/_to_remove/recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb new file mode 100644 index 000000000..4ff82fee1 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Bluetooth MAP Service Binding" +DESCRIPTION = "AGL Bluetooth MAP Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-bluetooth-map" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=89aea4e17d99a7cacdbeed46a0096b10" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-bluetooth-map;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "glib-2.0 json-c" +RDEPENDS:${PN} = "bluez5-obex agl-service-bluetooth" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb b/_to_remove/recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb new file mode 100644 index 000000000..7b5e7e429 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Bluetooth PBAP Service Binding" +DESCRIPTION = "AGL Bluetooth PBAP Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-bluetooth-pbap" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-bluetooth-pbap;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "glib-2.0 json-c" +RDEPENDS:${PN} = "bluez5-obex agl-service-bluetooth agl-service-data-persistence" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb b/_to_remove/recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb new file mode 100644 index 000000000..76f5ffa39 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Bluetooth Service Binding" +DESCRIPTION = "AGL Bluetooth Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-bluetooth" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-bluetooth;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "glib-2.0 json-c" +RDEPENDS:${PN} = "agl-service-data-persistence agl-service-network" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb b/_to_remove/recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb new file mode 100644 index 000000000..81788646c --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb @@ -0,0 +1,19 @@ +SUMMARY = "High level ViWi service" +DESCRIPTION = "AGL High Level service using ViWi protocol to expose CAN API." +HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-can-high-level-viwi/" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=5de84541278ea4e62cacfdc0f890c459" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-can-high-level-viwi;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "4.0+git${SRCPV}" +S = "${WORKDIR}/git" + +# Run-time dependencies +RDEPENDS:${PN} += "agl-service-can-low-level" + +inherit cmake aglwgt + +AGLWGT_AUTOINSTALL_${PN} := "0" diff --git a/_to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb b/_to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb new file mode 100644 index 000000000..6ac2f4f29 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb @@ -0,0 +1,23 @@ +SUMMARY = "Low level CAN service" +DESCRIPTION = "AGL Service application for read and decode CAN messages" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/low-level-can-service" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-can-low-level;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "${AGLVERSION}" +S = "${WORKDIR}/git" + +DEPENDS = "libafb-helpers libappcontroller" + +inherit cmake aglwgt pkgconfig ptest + +# For now, just enable J1939 on the qemu platforms where we know the +# linux-yocto kernel is new enough (>= 5.4) and has the support enabled. +AGLWGT_CMAKE_CONFIGURE_ARGS:append:qemuall = " -DWITH_FEATURE_J1939=ON" + +RDEPENDS:${PN} = "virtual/low-can-dev-mapping" diff --git a/_to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend b/_to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend new file mode 100644 index 000000000..bc2d0d357 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend @@ -0,0 +1,10 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +SRC_URI:append = " file://can-dev-mapping-helper.conf" + +do_install:append() { + install -D -m 0644 ${WORKDIR}/can-dev-mapping-helper.conf \ + ${D}${sysconfdir}/systemd/system/afm-service-agl-service-can-low-level-.service.d/can-dev-mapping-helper.conf +} + +RDEPENDS:${PN}:append = " can-dev-mapping-helper" diff --git a/_to_remove/recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb b/_to_remove/recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb new file mode 100644 index 000000000..cc50bfe2a --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb @@ -0,0 +1,21 @@ +SUMMARY = "Systemd unit for agl-service-can-low-level CAN device helper" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://can-dev-mapping-helper.service \ + file://can-dev-mapping-helper.sh \ +" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service + install -D -m 0755 ${WORKDIR}/${BPN}.sh ${D}${sbindir}/${BPN}.sh +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "bash" diff --git a/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf b/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf new file mode 100644 index 000000000..c89cc4d87 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf @@ -0,0 +1,3 @@ +[Unit] +Wants=can-dev-mapping-helper.service +After=can-dev-mapping-helper.service diff --git a/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service b/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service new file mode 100644 index 000000000..0436716cb --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service @@ -0,0 +1,6 @@ +[Unit] +Description=CAN interface helper + +[Service] +ExecStart=/usr/sbin/can-dev-mapping-helper.sh +Type=oneshot diff --git a/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh b/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh new file mode 100644 index 000000000..c81014f3e --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +# +# Script to bring up CAN interfaces configured in /etc/dev-mapping.conf +# as vcan interfaces if no physical interface is present. +# + +vcan_up() { + if [ -n "$1" ]; then + echo "Bringing up $1 as virtual CAN device" + ip link add dev $1 type vcan + ip link set up $1 + fi +} + +if [ ! -f /etc/dev-mapping.conf ]; then + exit 0 +fi + +hs=$(grep ^hs= /etc/dev-mapping.conf |cut -d= -f2 |tr -d '"') +ls=$(grep ^ls= /etc/dev-mapping.conf |cut -d= -f2 |tr -d '"') + +if [ -n "$hs" ]; then + echo "Checking $hs" + if ! ifconfig $hs >/dev/null 2>&1; then + vcan_up $hs + fi +fi +if [ -n "$ls" -a "$ls" != "$hs" ]; then + echo "Checking $ls" + if ! ifconfig $ls >/dev/null 2>&1; then + vcan_up $ls + fi +fi + +exit 0 diff --git a/_to_remove/recipes-apis/agl-service-can-low-level/files/run-ptest b/_to_remove/recipes-apis/agl-service-can-low-level/files/run-ptest new file mode 100644 index 000000000..cc9c41365 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-can-low-level/files/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +afm-test /usr/AGL/apps/testwgt/low-can-service-test.wgt diff --git a/_to_remove/recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb b/_to_remove/recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb new file mode 100644 index 000000000..7281a59f0 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb @@ -0,0 +1,23 @@ +SUMMARY = "AGL cloud proxy service" +DESCRIPTION = "AGL cloud proxy service build with recipe method" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-cloudproxy" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=34f8c1142fd6208a8be89399cb521df9" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-cloudproxy;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "azure-iot-sdk-c aws-iot-device-sdk-embedded-c glib-2.0 nlohmann-json" + +inherit cmake aglwgt pkgconfig + +# Azure include files +CXXFLAGS:prepend += "-I${STAGING_INCDIR}/azureiot" + +RDEPENDS:${PN} += "azure-iot-sdk-c azure-c-shared-utility aws-iot-device-sdk-embedded-c" + +BBCLASSEXTEND = "native nativesdk" diff --git a/_to_remove/recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb b/_to_remove/recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb new file mode 100644 index 000000000..dddfcc8d6 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "AGL Client Cloud Proxy Library" +DESCRIPTION = "libcloudproxy" +HOMEPAGE = "http://docs.automotivelinux.org" +LICENSE = "Apache-2.0" +SECTION = "libs" + +BBCLASSEXTEND = " nativesdk" + +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "af-binder json-c" + +inherit cmake + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/libcloudproxy;protocol=https" +SRCREV = "2d66933b9bf25af66696b097283109c8a6e87151" + +S = "${WORKDIR}/git" + diff --git a/_to_remove/recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb b/_to_remove/recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb new file mode 100644 index 000000000..569f0707e --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "AGL low level user database binding" +HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-data-persistence/" +SECTION = "base" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-data-persistence;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +inherit cmake aglwgt pkgconfig + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS += " af-binder json-c gdbm " + diff --git a/_to_remove/recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb b/_to_remove/recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb new file mode 100644 index 000000000..a12923247 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb @@ -0,0 +1,17 @@ +SUMMARY = "GeoClue Service Binding" +DESCRIPTION = "AGL GeoClue Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-geoclue" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-geoclue;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c geoclue" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-geofence/agl-service-geofence_git.bb b/_to_remove/recipes-apis/agl-service-geofence/agl-service-geofence_git.bb new file mode 100644 index 000000000..05f7f0eaa --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-geofence/agl-service-geofence_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Geofence Service Binding" +DESCRIPTION = "AGL Geofence Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-geofence" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-geofence;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c glib-2.0" +RDEPENDS:${PN} = "agl-service-gps" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-gps/agl-service-gps_git.bb b/_to_remove/recipes-apis/agl-service-gps/agl-service-gps_git.bb new file mode 100644 index 000000000..dfa7b3ebf --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-gps/agl-service-gps_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "GPS/GNSS Service Binding" +DESCRIPTION = "AGL GPS/GNSS Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-gps" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-gps;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c gpsd" +RDEPENDS:${PN} = "libgps" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb b/_to_remove/recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb new file mode 100644 index 000000000..7d2661bc0 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb @@ -0,0 +1,14 @@ +SUMMARY = "Homescreen binding and client library for application" +DESCRIPTION = "agl-service-homescreen is the binding library" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-homescreen" +SECTION = "HMI" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "dbus glib-2.0 af-binder json-c" + +inherit cmake aglwgt + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-homescreen;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" +S = "${WORKDIR}/git" diff --git a/_to_remove/recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb b/_to_remove/recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb new file mode 100644 index 000000000..4078c6107 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb @@ -0,0 +1,27 @@ +SUMMARY = "HVAC Service Binding Configuration" +DESCRIPTION = "AGL HVAC Service Binding Configuration" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-hvac" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-hvac;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install () { + install -D -m 644 ${S}/hvac.json ${D}${sysconfdir}/hvac.json +} + +do_install:append:ulcb() { + sed -i -e "s#vcan0#sllin0#g" ${D}${sysconfdir}/hvac.json +} + diff --git a/_to_remove/recipes-apis/agl-service-hvac/agl-service-hvac_git.bb b/_to_remove/recipes-apis/agl-service-hvac/agl-service-hvac_git.bb new file mode 100644 index 000000000..8d1399c60 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-hvac/agl-service-hvac_git.bb @@ -0,0 +1,20 @@ +SUMMARY = "HVAC Service Binding" +DESCRIPTION = "AGL HVAC Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-hvac" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-hvac;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c" + +inherit cmake aglwgt pkgconfig + +RDEPENDS:${PN} += "agl-service-identity-agent agl-service-can-low-level" +RRECOMMENDS:${PN} += "agl-service-hvac-conf" diff --git a/_to_remove/recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb b/_to_remove/recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb new file mode 100644 index 000000000..f2474be7b --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "AGL identity agent binding" +HOMEPAGE = "https://gitlab.com/iotbzh/aia-binding" +SECTION = "base" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-identity-agent;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" +PV = "1.0+git${SRCPV}" + +inherit cmake aglwgt pkgconfig + +S = "${WORKDIR}/git" + +DEPENDS = "curl af-binder json-c systemd" + diff --git a/_to_remove/recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb b/_to_remove/recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb new file mode 100644 index 000000000..600f9103a --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "IIODEVICES Service Binding" +DESCRIPTION = "AGL IIODEVICES Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-iiodevices" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-iiodevices;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c libiio glib-2.0" + +RDEPENDS:${PN} = "libiio" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb b/_to_remove/recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb new file mode 100644 index 000000000..c7d695f25 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Mediaplayer Service Binding" +DESCRIPTION = "AGL Mediaplayer Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-mediaplayer" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/apps/agl-service-mediaplayer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c gstreamer1.0 gstreamer1.0-plugins-base" +RDEPENDS:${PN} = "agl-service-mediascanner agl-service-bluetooth gstreamer1.0-plugins-bad-waylandsink" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb b/_to_remove/recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb new file mode 100644 index 000000000..1013ab693 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Mediascanner Service Binding" +DESCRIPTION = "AGL Mediascanner Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-mediascanner" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-mediascanner;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c sqlite3 glib-2.0" +RDEPENDS:${PN} = "lightmediascanner" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-navigation/agl-service-navigation_git.bb b/_to_remove/recipes-apis/agl-service-navigation/agl-service-navigation_git.bb new file mode 100755 index 000000000..2d40d15ee --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-navigation/agl-service-navigation_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Navigation Service Binding" +DESCRIPTION = "AGL Navigation Service API Binding" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "json-c libdbus-c++" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-navigation;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "0.1+git${SRCPV}" +S = "${WORKDIR}/git" + +inherit cmake aglwgt pkgconfig + +RDEPENDS:${PN} += "json-c libdbus-c++" diff --git a/_to_remove/recipes-apis/agl-service-network/agl-service-network_git.bb b/_to_remove/recipes-apis/agl-service-network/agl-service-network_git.bb new file mode 100644 index 000000000..3599e3cd7 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-network/agl-service-network_git.bb @@ -0,0 +1,25 @@ +SUMMARY = "Network Service Binding" +DESCRIPTION = "AGL Network Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-network" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-network;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "glib-2.0 json-c" + +inherit cmake aglwgt pkgconfig + +do_install:append() { + install -d ${D}${sbindir} + install -m 755 ${B}/build-release/test/agl-service-network-ctl ${D}${sbindir} +} + +FILES:${PN}-tools = "${sbindir}/agl-service-network-ctl" +PACKAGES:prepend = "${PN}-tools " diff --git a/_to_remove/recipes-apis/agl-service-nfc/agl-service-nfc_git.bb b/_to_remove/recipes-apis/agl-service-nfc/agl-service-nfc_git.bb new file mode 100644 index 000000000..1757dcb38 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-nfc/agl-service-nfc_git.bb @@ -0,0 +1,17 @@ +SUMMARY = "agl-service-nfc" +DESCRIPTION = "" +HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-nfc/" +SECTION = "apps" +DEPENDS = "af-binder json-c glib-2.0 neardal" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit cmake pkgconfig aglwgt + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-nfc;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + diff --git a/_to_remove/recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb b/_to_remove/recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb new file mode 100644 index 000000000..43eed3f2e --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb @@ -0,0 +1,17 @@ +SUMMARY = "Platform info provider binding" +DESCRIPTION = "AGL Platform info provider binding" +HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-platform-info/" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-platform-info;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "libafb-helpers" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-radio/agl-service-radio_git.bb b/_to_remove/recipes-apis/agl-service-radio/agl-service-radio_git.bb new file mode 100644 index 000000000..a46ce128c --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-radio/agl-service-radio_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "Radio Service Binding" +DESCRIPTION = "AGL Radio Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-radio" +SECTION = "apps" +LICENSE = "Apache-2.0 & GPLv2" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ + file://LICENSE.GPL-2.0-only;md5=751419260aa954499f7abaabaa882bbe" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-radio;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +# build-time dependencies +DEPENDS = "rtl-sdr glib-2.0 gstreamer1.0 libusb-compat" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb b/_to_remove/recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb new file mode 100644 index 000000000..8f79527e6 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "agl-service-signal-composer" +DESCRIPTION = "AGL High Level Signaling service to handle CAN, LIN, and others signaling sources" +HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-signal-composer/" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit cmake pkgconfig aglwgt ptest + +DEPENDS += "lua lua-native libappcontroller libafb-helpers" +RDEPENDS:${PN} += "lua" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-signal-composer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "${AGLVERSION}" +S = "${WORKDIR}/git" diff --git a/_to_remove/recipes-apis/agl-service-signal-composer/files/run-ptest b/_to_remove/recipes-apis/agl-service-signal-composer/files/run-ptest new file mode 100644 index 000000000..49187ad85 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-signal-composer/files/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +afm-test /usr/AGL/apps/testwgt/signal-composer-test.wgt diff --git a/_to_remove/recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb b/_to_remove/recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb new file mode 100644 index 000000000..6c5a18107 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb @@ -0,0 +1,18 @@ +SUMMARY = "Task Manager Service Binding" +DESCRIPTION = "AGL Task Manager Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-taskmanager" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-taskmanager;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c procps" + +inherit cmake aglwgt pkgconfig + diff --git a/_to_remove/recipes-apis/agl-service-telephony/agl-service-telephony_git.bb b/_to_remove/recipes-apis/agl-service-telephony/agl-service-telephony_git.bb new file mode 100644 index 000000000..656d76e0c --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-telephony/agl-service-telephony_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Telephony Service Binding" +DESCRIPTION = "AGL Telephony Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-telephony" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-telephony;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "json-c glib-2.0" +RDEPENDS:${PN} = "ofono" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb b/_to_remove/recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb new file mode 100644 index 000000000..90df1dc48 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "Infotainment network device control" +DESCRIPTION = "Abstraction layer to control INICnet devices" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-unicens-controller" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" + +SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/apps/agl-service-unicens-controller;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "0.1+git${SRCPV}" +S = "${WORKDIR}/git" + +inherit cmake aglwgt pkgconfig + +DEPENDS += "json-c af-binder libafb-helpers" +RDEPENDS:${PN} += "agl-service-unicens" + diff --git a/_to_remove/recipes-apis/agl-service-unicens/agl-service-unicens_git.bb b/_to_remove/recipes-apis/agl-service-unicens/agl-service-unicens_git.bb new file mode 100644 index 000000000..b6f006e39 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-unicens/agl-service-unicens_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "4A - Infotainment network setup and access" +DESCRIPTION = "Infotainment network setup and access (using Unified Centralized Network Stack)" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-unicens" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=89aea4e17d99a7cacdbeed46a0096b10" + +SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/apps/agl-service-unicens;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "0.1+git${SRCPV}" +S = "${WORKDIR}/git" + +inherit cmake aglwgt pkgconfig + +DEPENDS += "alsa-lib json-c systemd af-binder glib-2.0 libxml2 libafb-helpers" +RDEPENDS:${PN} += "libxml2 " + diff --git a/_to_remove/recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb b/_to_remove/recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb new file mode 100644 index 000000000..0ab1f3d8f --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb @@ -0,0 +1,17 @@ +SUMMARY = "agl-service-voice-high" +DESCRIPTION = "AGL High Level Voice service" +HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-voice-high-capabilities" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +DEPENDS = "libafb-helpers libappcontroller nlohmann-json" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high-capabilities.git;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "0.1+git${SRCPV}" +S = "${WORKDIR}/git" + +inherit cmake pkgconfig aglwgt diff --git a/_to_remove/recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb b/_to_remove/recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb new file mode 100644 index 000000000..54620144a --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "High level voice service binding" +DESCRIPTION = "agl-service-voice-high is the binding library" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +DEPENDS = "json-c systemd af-binder libafb-helpers libappcontroller nlohmann-json glib-2.0" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +inherit cmake aglwgt + +RDEPENDS:${PN} += "virtual/voice-high-config" diff --git a/_to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json b/_to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json new file mode 100644 index 000000000..1b72b8c85 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json @@ -0,0 +1 @@ +{ "default": "" } diff --git a/_to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb b/_to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb new file mode 100644 index 000000000..caa66188f --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb @@ -0,0 +1,20 @@ +SUMMARY = "High level voice service binding default voiceagent configuration" +DESCRIPTION = "Default voiceagent JSON configuration file for agl-service-voice-high binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +SRC_URI = "file://voice-high.json" + +inherit allarch + +do_compile[noexec] = "1" + +do_install () { + install -D -m 644 ${WORKDIR}/voice-high.json ${D}${sysconfdir}/xdg/AGL/voice-high.json +} + +RPROVIDES:${PN} += "virtual/voice-high-config" + diff --git a/_to_remove/recipes-apis/agl-service-weather/agl-service-weather_git.bb b/_to_remove/recipes-apis/agl-service-weather/agl-service-weather_git.bb new file mode 100644 index 000000000..abc401f93 --- /dev/null +++ b/_to_remove/recipes-apis/agl-service-weather/agl-service-weather_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Weather Service Binding" +DESCRIPTION = "AGL Weather Service Binding" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-weather" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-weather;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +DEPENDS = "glib-2.0 json-c" +RDEPENDS:${PN} = "agl-service-geoclue" + +inherit cmake aglwgt pkgconfig diff --git a/_to_remove/recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb b/_to_remove/recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb new file mode 100644 index 000000000..f1fce78f8 --- /dev/null +++ b/_to_remove/recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb @@ -0,0 +1,11 @@ +SUMMARY = "AGL cluster demo dashboard configuration file" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +SRC_URI += "file://AGL.conf.cluster" + +inherit allarch + +do_install() { + install -D -m 0644 ${WORKDIR}/AGL.conf.cluster ${D}${sysconfdir}/xdg/AGL.conf +} diff --git a/_to_remove/recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster b/_to_remove/recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster new file mode 100644 index 000000000..dd8a912c5 --- /dev/null +++ b/_to_remove/recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster @@ -0,0 +1,2 @@ +[dashboard] +animation=false diff --git a/_to_remove/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb b/_to_remove/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb new file mode 100644 index 000000000..8d737282d --- /dev/null +++ b/_to_remove/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb @@ -0,0 +1,33 @@ +SUMMARY = "Setting files for cluster network for the AGL Demonstrator" +DESCRIPTION = "Setting files for cluster network for the AGL Demonstrator" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://cluster-demo-network-conf@.service \ + file://cluster-demo-network-conf.sh \ +" + +# Network device for dedicated connection to cluster +AGL_CLUSTER_NET_DEVICE ?= "eth1" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + # Install helper script + install -d ${D}${sbindir} + install -m 0755 ${WORKDIR}/cluster-demo-network-conf.sh ${D}${sbindir}/ + + # Install service unit + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/cluster-demo-network-conf@.service ${D}${systemd_system_unitdir}/ + + # Add symlink to network.target.wants + install -d ${D}${sysconfdir}/systemd/system/network.target.wants + ln -s ${systemd_system_unitdir}/cluster-demo-network-conf@.service \ + ${D}${sysconfdir}/systemd/system/network.target.wants/cluster-demo-network-conf@${AGL_CLUSTER_NET_DEVICE}.service +} + +FILES:${PN} += "${systemd_system_unitdir}" diff --git a/_to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh b/_to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh new file mode 100644 index 000000000..3f538175f --- /dev/null +++ b/_to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +CONNMAN_CONF=/etc/connman/main.conf +CLUSTER_ADDRESS=192.168.20.93 + +if [ -z "$1" ]; then + echo "Usage: $0 " + exit 1 +fi + +# Need to blacklist given device with connman if it isn't already, +# otherwise connman will over-ride address configuration. +if ! grep '^NetworkInterfaceBlacklist=' ${CONNMAN_CONF} | grep -q $1; then + sed -i "s/^\(NetworkInterfaceBlacklist=.*\)/\1,$1/" ${CONNMAN_CONF} +fi + +/sbin/ifconfig $1 ${CLUSTER_ADDRESS} diff --git a/_to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service b/_to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service new file mode 100644 index 000000000..5fc29b7a0 --- /dev/null +++ b/_to_remove/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service @@ -0,0 +1,12 @@ +[Unit] +Description=Configure dedicated link for cluster demo network +After=sys-subsystem-net-devices-%i.device +Requires=sys-subsystem-net-devices-%i.device +Before=network.target + +[Service] +ExecStart=/usr/sbin/cluster-demo-network-conf.sh %i +Type=oneshot + +[Install] +WantedBy=network.target diff --git a/_to_remove/recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb b/_to_remove/recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb new file mode 100644 index 000000000..2eaabc979 --- /dev/null +++ b/_to_remove/recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "Systemd unit to start simple CAN simulator" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = "file://cluster-demo-simulator.service" + +inherit systemd + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE:${PN} = "cluster-demo-simulator.service" +SYSTEMD_AUTO_ENABLE:${PN} = "enable" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/cluster-demo-simulator.service ${D}${systemd_system_unitdir} +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} = "simple-can-simulator" diff --git a/_to_remove/recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service b/_to_remove/recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service new file mode 100644 index 000000000..04d41c6cf --- /dev/null +++ b/_to_remove/recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service @@ -0,0 +1,13 @@ +[Unit] +Description=Cluster demo driving simulator +After=sllin-demo.service sllin-demo-virtual.service cluster-lin-bridging.service +Requires=sllin-demo.service sllin-demo-virtual.service cluster-lin-bridging.service + +[Service] +Type=simple +Restart=always +RestartSec=1 +ExecStart=/usr/bin/python3 /usr/sbin/simple_can_simulator.py + +[Install] +WantedBy=multi-user.target diff --git a/_to_remove/recipes-config/cluster-demo-simulator/files/simple_can_simulator.py b/_to_remove/recipes-config/cluster-demo-simulator/files/simple_can_simulator.py new file mode 100755 index 000000000..83f88706e --- /dev/null +++ b/_to_remove/recipes-config/cluster-demo-simulator/files/simple_can_simulator.py @@ -0,0 +1,381 @@ +#!/usr/bin/env python3 +# Copyright (c) 2016 Alex Bencz +# Copyright (c) 2019 Konsulko Group, smurray@konsulko.com +# Copyright (c) 2020 The Linux Foundation, jsmoeller@linuxfoundation.org +# +# Permission is hereby granted, free of charge, to any person obtaining a copy of +# this software and associated documentation files (the "Software"), to deal in +# the Software without restriction, including without limitation the rights to +# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +# of the Software, and to permit persons to whom the Software is furnished to do +# so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + +# +# CANSocket from: +# +# https://github.com/abencz/python_socketcan/blob/master/python_socketcan_example.py +# + +import sys +import socket +import argparse +import struct +import errno +import threading +import time + +class CANSocket(object): + FORMAT = "= self.vehicle_speed: + return + v = (self.vehicle_speed - target_speed) / (duration * self.freq) + r = (self.engine_speed - target_rpm) / (duration * self.freq) + while self.vehicle_speed > target_speed and (not self.CRUISEACTIVE or bycruise): + with self.lock: + self.vehicle_speed -= v; + self.engine_speed -= r; + time.sleep(1 / self.freq) + + def increase(self, bycruise = True): + if self.CRUISEACTIVE: + target_speed = self.vehicle_speed + 5 + target_rpm = self.engine_speed * 1.1 + self.accelerate(target_speed, target_rpm, 2, bycruise) + + def decrease(self, bycruise = True): + if self.CRUISEACTIVE: + target_speed = self.vehicle_speed - 5 + target_rpm = self.engine_speed * 0.9 + self.brake(target_speed, target_rpm, 2, bycruise) + + def resume(self, bycruise = True): + target_speed = self.CRUISESPEED + target_rpm = self.CRUISERPM + current_speed = self.get_vehicle_speed() + if target_speed > current_speed: + self.accelerate(target_speed, target_rpm, 2, bycruise) + else: + self.brake(target_speed, target_rpm, 2, bycruise) + + def run(self): + while True: + if not self.CRUISEACTIVE: + self.accelerate(80, 3000, 5) + self.accelerate(104, 4000, 3) + self.brake(80, 3000, 3) + self.accelerate(104, 4000, 6) + self.brake(40, 2000, 4) + self.accelerate(90, 3000, 5) + self.brake(1, 650, 5) + if not self.CRUISEACTIVE: + self.reset() + time.sleep(5) + +class DiagnosticMessageHandler(object): + def __init__(self, can_sock, simulator, verbose=False): + self.can_sock = can_sock + self.simulator = simulator + self.verbose = verbose + self.thread = threading.Thread(target=self.run, daemon=True) + + def start(self): + self.thread.start() + + def run(self): + while True: + can_id, data = self.can_sock.recv() + #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) + if can_id == 0x7df: + # OBD-II request + if data[1] == 0x01 and data[2] == 0x0C: + # Engine speed + speed = self.simulator.get_engine_speed() + #print('engine speed = %d' % speed) + if speed > 16383.75: + speed = 16383.75 + reply = [ 0x04, 0x41, 0x0C ] + reply.append(4 * speed // 256) + reply.append(4 * speed % 256) + # pad remaining bytes to make 8 + reply.append(0) + reply.append(0) + reply.append(0) + self.can_sock.send(0x7e8, bytes(reply), 0) + elif data[1] == 0x01 and data[2] == 0x0D: + # Vehicle speed + speed = int(self.simulator.get_vehicle_speed()) % 256 + #print('vehicle speed = %d' % speed) + reply = [ 0x03, 0x41, 0x0D ] + reply.append(speed) + # pad remaining bytes to make 8 + reply.append(0) + reply.append(0) + reply.append(0) + reply.append(0) + self.can_sock.send(0x7e8, bytes(reply), 0) + +class SteeringWheelMessageHandler(object): + def __init__(self, can_sock, simulator, verbose=False): + self.can_sock = can_sock + self.simulator = simulator + self.verbose = verbose + self.thread = threading.Thread(target=self.run, daemon=True) + self.buttonpressed = False + self.buttonenabled = False + self.buttoncancel = False + self.buttondec = False + self.buttoninc = False + self.cruisemode = False + self.cruiseactive = False + + def start(self): + self.thread.start() + + def run(self): + while True: + can_id, data = self.can_sock.recv() + #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) + if can_id == 0x21: + #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) + if data: + #if data[6]: + #print('data6: %02X' % (data[6])) + if data[6] == 0x80 and not self.buttonpressed: + # we do skip any further lin messages + # two buttons at the same time won't work + # (aka unlikely w/o twisting fingers) + self.buttonpressed = True + self.buttonenabled = True + if data[6] == 0x08 and not self.buttonpressed: + self.buttonpressed = True + self.buttoncancel = True + if data[6] == 0x10 and not self.buttonpressed: + self.buttonpressed = True + self.buttondec = True + if data[6] == 0x40 and not self.buttonpressed: + self.buttonpressed = True + self.buttoninc = True + if data[6] == 0x00 and self.buttonpressed: + #now handle it as the button was released + if self.buttonenabled: + self.buttonenabled = False + self.cruisemode = not self.cruisemode + #print("set cruisemode to %s" % self.cruisemode) + self.simulator.CRUISEMODE = self.cruisemode + # disable/reset all if going off + if not self.cruisemode: + self.cruiseactive = False + self.simulator.CRUISEACTIVE = self.cruiseactive + self.simulator.CRUISESPEED = 0 + self.simulator.CRUISERPM = 0 + #print("set cruiseactive to %s" % self.cruiseactive) + if self.buttoncancel: + self.buttoncancel = False + self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() + self.simulator.CRUISERPM = self.simulator.get_engine_speed() + #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) + #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) + self.cruiseactive = False + #print("set cruiseactive to %s" % self.cruiseactive ) + self.simulator.CRUISEACTIVE = self.cruiseactive + if self.buttondec: + self.buttondec = False + if self.cruiseactive: + #print("decrease") + self.simulator.decrease() + else: + # set speed + #print("set speed") + self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() + self.simulator.CRUISERPM = self.simulator.get_engine_speed() + #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) + #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) + self.cruiseactive = not self.cruiseactive + #print("set cruiseactive to %s" % self.cruiseactive ) + self.simulator.CRUISEACTIVE = self.cruiseactive + if self.buttoninc: + self.buttoninc = False + if self.cruiseactive: + #print("increase") + self.simulator.increase() + else: + if self.simulator.CRUISESPEED > 0: + # resume + self.cruiseactive = not self.cruiseactive + self.simulator.CRUISEACTIVE = self.cruiseactive + #print("set cruiseactive to %s" % self.cruiseactive ) + #print("resume") + self.simulator.resume() + self.buttonpressed = False + + +class StatusMessageSender(object): + def __init__(self, can_sock, simulator, verbose=False): + self.can_sock = can_sock + self.simulator = simulator + self.verbose = verbose + self.thread = threading.Thread(target=self.run, daemon=True) + + def start(self): + self.thread.start() + + def run(self): + while True: + # Engine speed + speed = self.simulator.get_engine_speed() + if self.verbose: + print('engine speed = %d' % speed) + if speed > 16383.75: + speed = 16383.75 + # Message is 1 byte unknown, 1 byte fuel level, 2 bytes engine speed (4x), fuel low @ bit 55 + msg = [ 0, 0 ] + speed *= 4 + msg.append(speed // 256) + msg.append(speed % 256) + # pad remaining bytes to make 8 + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + self.can_sock.send(0x3d9, bytes(msg), 0) + + # Vehicle speed + speed = int(self.simulator.get_vehicle_speed()) % 256 + if self.verbose: + print('vehicle speed = %d' % speed) + # Message is 15 bits speed (64x), left aligned + msg = [ ] + # Note: extra 2x to yield required left-alignment + speed *= 128 + msg.append(speed // 256) + msg.append(speed % 256) + # pad remaining bytes to make 8 + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + self.can_sock.send(0x3e9, bytes(msg), 0) + + # Sleep 100 ms + time.sleep(0.1) + +def main(): + parser = argparse.ArgumentParser(description='Simple CAN vehicle simulator.') + parser.add_argument('interface', type=str, help='interface name (e.g. vcan0)') + parser.add_argument('-v', '--verbose', help='increase output verbosity', action='store_true') + args = parser.parse_args() + + try: + can_sock = CANSocket(args.interface) + diag_can_sock = CANSocket(args.interface) + steeringwheel_can_sock = CANSocket(args.interface) + except OSError as e: + sys.stderr.write('Could not listen on interface {0}\n'.format(args.interface)) + sys.exit(e.errno) + + print('Using {0}'.format(args.interface)) + sim = VehicleSimulator() + status_sender = StatusMessageSender(can_sock, sim, args.verbose) + diag_handler = DiagnosticMessageHandler(diag_can_sock, sim, args.verbose) + steeringwheel_handler = SteeringWheelMessageHandler(steeringwheel_can_sock, sim, args.verbose) + sim.start() + status_sender.start() + diag_handler.start() + steeringwheel_handler.start() + try: + while True: + time.sleep(60) + except (KeyboardInterrupt, SystemExit): + #sim.stop() + sys.exit(0) + +if __name__ == '__main__': + main() diff --git a/_to_remove/recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb b/_to_remove/recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb new file mode 100644 index 000000000..5366f2d0b --- /dev/null +++ b/_to_remove/recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb @@ -0,0 +1,28 @@ +DESCRIPTION = "Configure LIN to external CAN bridging" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = "\ + file://cluster-lin-bridging.service \ +" + +inherit systemd + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE:${PN} = "cluster-lin-bridging.service" +SYSTEMD_AUTO_ENABLE:${PN} = "enable" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/cluster-lin-bridging.service ${D}${systemd_system_unitdir} +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} = " \ + can-utils \ + sllin \ +" diff --git a/_to_remove/recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service b/_to_remove/recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service new file mode 100644 index 000000000..1dde33786 --- /dev/null +++ b/_to_remove/recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service @@ -0,0 +1,11 @@ +[Unit] +Description=LIN to CAN bridging +After=sllin-demo.service sllin-demo-virtual.service +Requires=sllin-demo.service sllin-demo-virtual.service + +[Service] +Type=simple +ExecStart=/usr/bin/candump -s 2 -B can0 sllin0 + +[Install] +WantedBy=multi-user.target diff --git a/_to_remove/recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci b/_to_remove/recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci new file mode 100644 index 000000000..bd5c2135a --- /dev/null +++ b/_to_remove/recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci @@ -0,0 +1,7 @@ +; Default CAN device mapping +; Format has to follow ini rules key="value", notice " around value. + +[CANbus-mapping] +hs="vcan0" +ls="vcan0" +j1939="vcan0" diff --git a/_to_remove/recipes-config/dev-mapping/dev-mapping-ci_1.0.bb b/_to_remove/recipes-config/dev-mapping/dev-mapping-ci_1.0.bb new file mode 100644 index 000000000..7b40e40c6 --- /dev/null +++ b/_to_remove/recipes-config/dev-mapping/dev-mapping-ci_1.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "AGL demo device mapping configuration file" +DESCRIPTION = "This provides a default dev-mapping.conf file \ + that defines mapping between kernel device and logical name \ + used in the low-can binding for the AGL CI setup." + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +SRC_URI += "file://dev-mapping.conf.ci" + +inherit allarch + +do_install() { + install -d ${D}${sysconfdir} + install -m 0644 ${WORKDIR}/dev-mapping.conf.ci ${D}${sysconfdir}/dev-mapping.conf +} + +RPROVIDES:${PN} = "virtual/low-can-dev-mapping" diff --git a/_to_remove/recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo b/_to_remove/recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo new file mode 100644 index 000000000..1fd12ad03 --- /dev/null +++ b/_to_remove/recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo @@ -0,0 +1,7 @@ +; Default CAN device mapping +; Format has to follow ini rules key="value", notice " around value. + +[CANbus-mapping] +hs="can0" +ls="sllin0" +j1939="can0" diff --git a/_to_remove/recipes-config/dev-mapping/dev-mapping-demo_1.0.bb b/_to_remove/recipes-config/dev-mapping/dev-mapping-demo_1.0.bb new file mode 100644 index 000000000..23fdc078a --- /dev/null +++ b/_to_remove/recipes-config/dev-mapping/dev-mapping-demo_1.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "AGL demo device mapping configuration file" +DESCRIPTION = "This provide default dev-mapping.conf file \ + that defines mapping between kernel device and logical name \ + used in low-can binding for the AGL demo setup." + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +SRC_URI += "file://dev-mapping.conf.demo" + +inherit allarch + +do_install() { + install -d ${D}${sysconfdir} + install -m 0644 ${WORKDIR}/dev-mapping.conf.demo ${D}${sysconfdir}/dev-mapping.conf +} + +RPROVIDES:${PN} = "virtual/low-can-dev-mapping" diff --git a/_to_remove/recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default b/_to_remove/recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default new file mode 100644 index 000000000..8519a5873 --- /dev/null +++ b/_to_remove/recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default @@ -0,0 +1,7 @@ +; Default CAN device mapping +; Format has to follow ini rules key="value", notice " around value. + +[CANbus-mapping] +hs="can0" +ls="can0" +j1939="can0" diff --git a/_to_remove/recipes-config/dev-mapping/dev-mapping_0.1.bb b/_to_remove/recipes-config/dev-mapping/dev-mapping_0.1.bb new file mode 100644 index 000000000..f880d39d8 --- /dev/null +++ b/_to_remove/recipes-config/dev-mapping/dev-mapping_0.1.bb @@ -0,0 +1,18 @@ +SUMMARY = "AGL Device mapping configuration file" +DESCRIPTION = "This provide default dev-mapping.conf file \ + that defines mapping between kernel device and logical name \ + used in low-can binding by example." + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +SRC_URI += "file://dev-mapping.conf.default" + +inherit allarch + +do_install() { + install -d ${D}${sysconfdir} + install -m 0644 ${WORKDIR}/dev-mapping.conf.default ${D}${sysconfdir}/dev-mapping.conf +} + +RPROVIDES:${PN} = "virtual/low-can-dev-mapping" diff --git a/_to_remove/recipes-config/systemd-sync/systemd-agl-sync_1.0.bb b/_to_remove/recipes-config/systemd-sync/systemd-agl-sync_1.0.bb new file mode 100644 index 000000000..0b2dc4e4d --- /dev/null +++ b/_to_remove/recipes-config/systemd-sync/systemd-agl-sync_1.0.bb @@ -0,0 +1,39 @@ +SUMMARY = "Systemd synchronization script" +DESCRIPTION = "\ +Systemd synchronization script \ +reload daemon at the first boot. \ +" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +#This script should be the last to be execute at the first boot +POST_INSTALL_LEVEL = "X0" +POST_INSTALL_SCRIPT ?= "${POST_INSTALL_LEVEL}-${PN}.sh" + +do_install() { + install -d ${D}/${sysconfdir}/agl-postinsts + cat > ${D}/${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT} < /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_direction 2>/dev/null +echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_datatype 2>/dev/null +echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_number_of_buffers 2>/dev/null +echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_buffer_size 2>/dev/null + +echo mdev0:ep8f:inic-usb-crx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null + +#aim: cdev +#name: inic-usb-ctx +echo tx > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_direction 2>/dev/null +echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_datatype 2>/dev/null +echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_number_of_buffers 2>/dev/null +echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_buffer_size 2>/dev/null + +echo mdev0:ep0f:inic-usb-ctx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null + +########################################## +# interface: mdev1 +#aim: networking +#name: inic-usb-arx +echo rx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_direction 2>/dev/null +echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_datatype 2>/dev/null +echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_number_of_buffers 2>/dev/null +echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_buffer_size 2>/dev/null + +echo mdev1:ep8e:inic-usb-arx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null +#aim: networking +#name: inic-usb-atx +echo tx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_direction 2>/dev/null +echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_datatype 2>/dev/null +echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_number_of_buffers 2>/dev/null +echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_buffer_size 2>/dev/null + +echo mdev1:ep0e:inic-usb-atx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null +########################################### +## interface: mdev0 +## chip: Durango +##aim: cdev +##name: inic-usb-crx +echo rx > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_direction 2>/dev/null +echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_datatype 2>/dev/null +echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_number_of_buffers 2>/dev/null +echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_buffer_size 2>/dev/null + +echo mdev0:ep87:inic-usb-crx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null +#aim: cdev +#name: inic-usb-ctx +echo tx > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_direction 2>/dev/null +echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_datatype 2>/dev/null +echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_number_of_buffers 2>/dev/null +echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_buffer_size 2>/dev/null + +echo mdev0:ep07:inic-usb-ctx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null +########################################### +## interface: mdev1 +## chip: Durango +## aim: networking +##name: inic-usb-arx +echo rx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_direction 2>/dev/null +echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_datatype 2>/dev/null +echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_number_of_buffers 2>/dev/null +echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_buffer_size 2>/dev/null + +echo mdev1:ep86:inic-usb-arx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null +#aim: networking +#name: inic-usb-atx +echo tx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_direction 2>/dev/null +echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_datatype 2>/dev/null +echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_number_of_buffers 2>/dev/null +echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_buffer_size 2>/dev/null + +echo mdev1:ep06:inic-usb-atx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null + +########################################## +# interface: mdev2 +#aim: sound +#name: ep01-6ch.6x16 +echo tx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_direction 2>/dev/null +echo sync > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_datatype 2>/dev/null +echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_number_of_buffers 2>/dev/null +echo 1008 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_buffer_size 2>/dev/null +echo 12 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_subbuffer_size 2>/dev/null +echo 42 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_packets_per_xact 2>/dev/null + +echo mdev2:ep01:ep01-6ch.6x16 > /sys/devices/virtual/most/mostcore/aims/sound/add_link 2>/dev/null + +# interface: mdev2 +# aim: sound +# name: ep81-1ch.1x16 +echo rx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_direction 2>/dev/null +echo sync > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_datatype 2>/dev/null +echo 8 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_number_of_buffers 2>/dev/null +echo 2048 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_buffer_size 2>/dev/null +echo 2 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_subbuffer_size 2>/dev/null +echo 256 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_packets_per_xact 2>/dev/null + +echo mdev2:ep81:ep81-1ch.1x16 > /sys/devices/virtual/most/mostcore/aims/sound/add_link 2>/dev/null + +# interface: mdev2 +# aim: sound +# name: ep82-1ch.1x16 +echo rx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_direction 2>/dev/null +echo sync > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_datatype 2>/dev/null +echo 8 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_number_of_buffers 2>/dev/null +echo 2048 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_buffer_size 2>/dev/null +echo 2 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_subbuffer_size 2>/dev/null +echo 256 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_packets_per_xact 2>/dev/null + +echo mdev2:ep82:ep82-1ch.1x16 > /sys/devices/virtual/most/mostcore/aims/sound/add_link 2>/dev/null + +##aim: cdev +##name: inic-usb-itx1 +echo tx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_direction 2>/dev/null +echo isoc > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_datatype 2>/dev/null +echo 8 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_number_of_buffers 2>/dev/null +echo 7520 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_buffer_size 2>/dev/null +echo 188 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_subbuffer_size 2>/dev/null +echo 2 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_packets_per_xact 2>/dev/null + +echo mdev2:ep02:inic-usb-itx1 > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null diff --git a/_to_remove/recipes-config/unicens-config/unicens-config.bb b/_to_remove/recipes-config/unicens-config/unicens-config.bb new file mode 100644 index 000000000..57b93a76f --- /dev/null +++ b/_to_remove/recipes-config/unicens-config/unicens-config.bb @@ -0,0 +1,31 @@ +DESCRIPTION = "Configure MOST driver" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" + +RDEPENDS:${PN} = "bash" + +SRC_URI = "\ + file://unicens-config.service \ + file://unicens-config.sh \ + file://55-inic.rules \ +" + + +inherit systemd + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE:${PN} = "unicens-config.service" +SYSTEMD_AUTO_ENABLE:${PN} = "enable" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/unicens-config.service ${D}${systemd_system_unitdir} + install -d ${D}${bindir} + install -m 0755 ${WORKDIR}/unicens-config.sh ${D}${bindir} + install -D -m 0644 ${WORKDIR}/55-inic.rules ${D}${sysconfdir}/udev/rules.d/55-inic.rules +} + +FILES:${PN} += "${systemd_system_unitdir}" diff --git a/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch new file mode 100644 index 000000000..6c9a388c8 --- /dev/null +++ b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch @@ -0,0 +1,517 @@ +From f2e6a0a324106b40195f88953e55a355875d2b1b Mon Sep 17 00:00:00 2001 +From: George Kiagiadakis +Date: Fri, 4 Oct 2019 20:51:24 +0300 +Subject: [PATCH] utils: add a gstreamer helper application for interconnection + with pipewire + +Unfortunately, the bluez-alsa PCM plugin does not work correctly +when it is used through pipewire (or gstreamer, or anywhere really...). + +Thanfully, the bluez-alsa PCM plugin is only a simple client that +reads/writes on a file descriptor that was opened by bluealsa. +This allows us to use bluealsa without the PCM plugin, just like it +is done in the aplay.c util. + +This one uses GStreamer to implement the plumbing between pipewire +and the file descriptor. On the reading side we are also doing some +tricks to ensure a smooth stream, which is not the case for the +stream that is coming out of bluealsa. + +This helper is implemented as a patch to bluez-alsa so that it can +use its internal private API. In the future this needs some re-thinking. + +Upstream-Status: Inappropriate +--- + configure.ac | 7 + + utils/Makefile.am | 20 +++ + utils/gst-helper.c | 432 +++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 459 insertions(+) + create mode 100644 utils/gst-helper.c + +diff --git a/configure.ac b/configure.ac +index 4825afa..9125871 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -141,6 +141,13 @@ AM_COND_IF([ENABLE_HCITOP], [ + PKG_CHECK_MODULES([NCURSES], [ncurses]) + ]) + ++AC_ARG_ENABLE([gsthelper], ++ [AS_HELP_STRING([--enable-gsthelper], [enable building of gsthelper tool])]) ++AM_CONDITIONAL([ENABLE_GSTHELPER], [test "x$enable_gsthelper" = "xyes"]) ++AM_COND_IF([ENABLE_GSTHELPER], [ ++ PKG_CHECK_MODULES([GST], [gstreamer-1.0 glib-2.0]) ++]) ++ + AC_ARG_ENABLE([test], + [AS_HELP_STRING([--enable-test], [enable unit test])]) + AM_CONDITIONAL([ENABLE_TEST], [test "x$enable_test" = "xyes"]) +diff --git a/utils/Makefile.am b/utils/Makefile.am +index 9057f2c..9790474 100644 +--- a/utils/Makefile.am ++++ b/utils/Makefile.am +@@ -47,3 +47,23 @@ hcitop_LDADD = \ + @LIBBSD_LIBS@ \ + @NCURSES_LIBS@ + endif ++ ++if ENABLE_GSTHELPER ++bin_PROGRAMS += bluealsa-gst-helper ++bluealsa_gst_helper_SOURCES = \ ++ ../src/shared/dbus-client.c \ ++ ../src/shared/ffb.c \ ++ ../src/shared/log.c \ ++ gst-helper.c ++bluealsa_gst_helper_CFLAGS = \ ++ -I$(top_srcdir)/src \ ++ @ALSA_CFLAGS@ \ ++ @BLUEZ_CFLAGS@ \ ++ @DBUS1_CFLAGS@ \ ++ @GST_CFLAGS@ ++bluealsa_gst_helper_LDADD = \ ++ @ALSA_LIBS@ \ ++ @BLUEZ_LIBS@ \ ++ @DBUS1_LIBS@ \ ++ @GST_LIBS@ ++endif +diff --git a/utils/gst-helper.c b/utils/gst-helper.c +new file mode 100644 +index 0000000..de1d47c +--- /dev/null ++++ b/utils/gst-helper.c +@@ -0,0 +1,432 @@ ++/* Bluez-Alsa PipeWire integration GStreamer helper ++ * ++ * Copyright © 2016-2019 Arkadiusz Bokowy ++ * Copyright © 2019 Collabora Ltd. ++ * @author George Kiagiadakis ++ * ++ * SPDX-License-Identifier: MIT ++ */ ++ ++#if HAVE_CONFIG_H ++# include ++#endif ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++ ++#include "shared/dbus-client.h" ++#include "shared/defs.h" ++#include "shared/ffb.h" ++#include "shared/log.h" ++ ++struct worker { ++ /* used BlueALSA PCM device */ ++ struct ba_pcm ba_pcm; ++ /* file descriptor of PCM FIFO */ ++ int ba_pcm_fd; ++ /* file descriptor of PCM control */ ++ int ba_pcm_ctrl_fd; ++ /* the gstreamer pipelines (sink & source) */ ++ GstElement *pipeline[2]; ++ /* the queue & pwaudiosink of the sink pipeline */ ++ GstElement *queue; ++ GstElement *pwelem; ++}; ++ ++static struct ba_dbus_ctx dbus_ctx; ++static GHashTable *workers; ++static bool main_loop_on = true; ++ ++static void ++main_loop_stop(int sig) ++{ ++ /* Call to this handler restores the default action, so on the ++ * second call the program will be forcefully terminated. */ ++ ++ struct sigaction sigact = { .sa_handler = SIG_DFL }; ++ sigaction(sig, &sigact, NULL); ++ ++ main_loop_on = false; ++} ++ ++static GstBusSyncReply ++bus_sync_handler(GstBus *bus, GstMessage *message, gpointer user_data) ++{ ++ struct worker *w = user_data; ++ GstState s; ++ ++ switch (GST_MESSAGE_TYPE (message)) { ++ case GST_MESSAGE_REQUEST_STATE: ++ gst_message_parse_request_state (message, &s); ++ ++ debug ("corked: %d", (s == GST_STATE_PAUSED)); ++ ++ /* drop queue data when corked */ ++ g_object_set (w->queue, ++ "leaky", (s == GST_STATE_PAUSED) ? 2 /* downstream */ : 0 /* no */, ++ NULL); ++ gst_element_set_state (w->pwelem, s); ++ ++ /* flush the queue when resuming */ ++ if (s == GST_STATE_PLAYING) { ++ gst_element_send_event (w->queue, gst_event_new_flush_start ()); ++ gst_element_send_event (w->queue, gst_event_new_flush_stop (FALSE)); ++ } ++ break; ++ default: ++ break; ++ } ++ ++ gst_message_unref (message); ++ return GST_BUS_DROP; ++} ++ ++static int ++worker_start_pipeline(struct worker *w, int id, int mode, int profile) ++{ ++ GError *gerr = NULL; ++ DBusError err = DBUS_ERROR_INIT; ++ const gchar * role = NULL; ++ ++ if (w->pipeline[id]) ++ return 0; ++ ++ if (!bluealsa_dbus_pcm_open(&dbus_ctx, w->ba_pcm.pcm_path, mode, ++ &w->ba_pcm_fd, &w->ba_pcm_ctrl_fd, &err)) { ++ error("Couldn't open PCM: %s", err.message); ++ dbus_error_free(&err); ++ goto fail; ++ } ++ ++ if (mode == BA_PCM_FLAG_SINK) { ++ debug("sink start"); ++ w->pipeline[id] = gst_parse_launch( ++ /* add a silent live source to ensure a perfect live stream on the ++ output, even when the bt device is not sending or has gaps; ++ this also effectively changes the clock to be the system clock, ++ which is the same clock used by bluez-alsa on the sending side */ ++ "audiotestsrc is-live=true wave=silence ! capsfilter name=capsf " ++ "! audiomixer name=m " ++ /* mix the input from bluez-alsa using fdsrc; rawaudioparse ++ is necessary to convert bytes to time and align the buffers */ ++ "fdsrc name=fdelem do-timestamp=true ! capsfilter name=capsf2 " ++ "! rawaudioparse use-sink-caps=true ! m. " ++ /* take the mixer output, convert and push to pipewire */ ++ "m.src ! capsfilter name=capsf3 ! audioconvert ! audioresample " ++ "! audio/x-raw,format=F32LE,rate=48000 ! identity sync=true " ++ "! queue name=queue leaky=no max-size-time=0 max-size-buffers=0 max-size-bytes=192000 " ++ "! pwaudiosink name=pwelem", ++ &gerr); ++ ++ /* a2dp is for music, sco is for calls */ ++ role = (profile == BA_PCM_FLAG_PROFILE_A2DP) ? "Multimedia" : "Communication"; ++ } ++ else if (mode == BA_PCM_FLAG_SOURCE && profile == BA_PCM_FLAG_PROFILE_SCO) { ++ debug("source start"); ++ w->pipeline[id] = gst_parse_launch( ++ /* read from pipewire and put the buffers on a leaky queue, which ++ will essentially allow pwaudiosrc to continue working while ++ the fdsink is blocked (when there is no phone call in progress). ++ 9600 bytes = 50ms @ F32LE/1ch/48000 ++ */ ++ "pwaudiosrc name=pwelem ! audio/x-raw,format=F32LE,rate=48000 " ++ "! queue name=queue leaky=downstream max-size-time=0 max-size-buffers=0 max-size-bytes=9600 " ++ "! audioconvert ! audioresample ! capsfilter name=capsf " ++ "! fdsink name=fdelem", &gerr); ++ ++ role = "Communication"; ++ } ++ ++ if (gerr) { ++ error("Failed to start pipeline: %s", gerr->message); ++ g_error_free(gerr); ++ goto fail; ++ } ++ ++ if (w->pipeline[id]) { ++ g_autofree gchar *capsstr = NULL; ++ g_autoptr (GstElement) fdelem = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "fdelem"); ++ g_autoptr (GstElement) pwelem = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "pwelem"); ++ g_autoptr (GstElement) queue = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "queue"); ++ g_autoptr (GstElement) capsf = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "capsf"); ++ g_autoptr (GstElement) capsf2 = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "capsf2"); ++ g_autoptr (GstElement) capsf3 = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "capsf3"); ++ g_autoptr (GstCaps) caps = gst_caps_new_simple("audio/x-raw", ++ "format", G_TYPE_STRING, "S16LE", ++ "layout", G_TYPE_STRING, "interleaved", ++ "channels", G_TYPE_INT, w->ba_pcm.channels, ++ "rate", G_TYPE_INT, w->ba_pcm.sampling, ++ NULL); ++ g_autoptr (GstStructure) stream_props = gst_structure_new("props", ++ "media.role", G_TYPE_STRING, role, ++ "bluealsa.profile", G_TYPE_STRING, ++ (profile == BA_PCM_FLAG_PROFILE_SCO) ? "sco" : "a2dp", ++ NULL); ++ ++ g_object_set(capsf, "caps", caps, NULL); ++ if (capsf2) ++ g_object_set(capsf2, "caps", caps, NULL); ++ if (capsf3) ++ g_object_set(capsf3, "caps", caps, NULL); ++ ++ capsstr = gst_caps_to_string (caps); ++ debug(" caps: %s", capsstr); ++ ++ g_object_set(fdelem, "fd", w->ba_pcm_fd, NULL); ++ g_object_set(pwelem, "stream-properties", stream_props, NULL); ++ ++ if (mode == BA_PCM_FLAG_SINK) { ++ g_autoptr (GstBus) bus = gst_pipeline_get_bus(GST_PIPELINE(w->pipeline[id])); ++ gst_bus_set_sync_handler(bus, bus_sync_handler, w, NULL); ++ w->queue = queue; ++ w->pwelem = pwelem; ++ } ++ ++ gst_element_set_state(w->pipeline[id], GST_STATE_PLAYING); ++ } ++ ++ return 0; ++fail: ++ g_clear_object(&w->pipeline[id]); ++ return -1; ++} ++ ++static int ++worker_start(struct worker *w) ++{ ++ int mode = w->ba_pcm.flags & (BA_PCM_FLAG_SOURCE | BA_PCM_FLAG_SINK); ++ int profile = w->ba_pcm.flags & (BA_PCM_FLAG_PROFILE_A2DP | BA_PCM_FLAG_PROFILE_SCO); ++ /* human-readable BT address */ ++ char addr[18]; ++ ++ g_return_val_if_fail (profile != 0 && profile != (BA_PCM_FLAG_PROFILE_A2DP | BA_PCM_FLAG_PROFILE_SCO), -1); ++ ++ ba2str(&w->ba_pcm.addr, addr); ++ debug("%p: worker start addr:%s, mode:0x%x, profile:0x%x", w, addr, mode, profile); ++ ++ if (mode & BA_PCM_FLAG_SINK) ++ worker_start_pipeline(w, 0, BA_PCM_FLAG_SINK, profile); ++ if (mode & BA_PCM_FLAG_SOURCE) ++ worker_start_pipeline(w, 1, BA_PCM_FLAG_SOURCE, profile); ++} ++ ++static int ++worker_stop(struct worker *w) ++{ ++ debug("stop worker %p", w); ++ if (w->pipeline[0]) { ++ gst_element_set_state(w->pipeline[0], GST_STATE_NULL); ++ g_clear_object(&w->pipeline[0]); ++ } ++ if (w->pipeline[1]) { ++ gst_element_set_state(w->pipeline[1], GST_STATE_NULL); ++ g_clear_object(&w->pipeline[1]); ++ } ++ if (w->ba_pcm_fd != -1) { ++ close(w->ba_pcm_fd); ++ w->ba_pcm_fd = -1; ++ } ++ if (w->ba_pcm_ctrl_fd != -1) { ++ close(w->ba_pcm_ctrl_fd); ++ w->ba_pcm_ctrl_fd = -1; ++ } ++ return 0; ++} ++ ++static int ++supervise_pcm_worker(struct worker *worker) ++{ ++ if (worker == NULL) ++ return -1; ++ ++ /* no mode? */ ++ if (worker->ba_pcm.flags & (BA_PCM_FLAG_SOURCE | BA_PCM_FLAG_SINK) == 0) ++ goto stop; ++ ++ /* no profile? */ ++ if (worker->ba_pcm.flags & (BA_PCM_FLAG_PROFILE_A2DP | BA_PCM_FLAG_PROFILE_SCO) == 0) ++ goto stop; ++ ++ /* check whether SCO has selected codec */ ++ if (worker->ba_pcm.flags & BA_PCM_FLAG_PROFILE_SCO && ++ worker->ba_pcm.codec == 0) { ++ debug("Skipping SCO with codec not selected"); ++ goto stop; ++ } ++ ++start: ++ return worker_start(worker); ++stop: ++ return worker_stop(worker); ++} ++ ++static void ++worker_new(struct ba_pcm *pcm) ++{ ++ struct worker *w = g_slice_new0 (struct worker); ++ memcpy(&w->ba_pcm, pcm, sizeof(struct ba_pcm)); ++ w->ba_pcm_fd = -1; ++ w->ba_pcm_ctrl_fd = -1; ++ g_hash_table_insert(workers, w->ba_pcm.pcm_path, w); ++ supervise_pcm_worker(w); ++} ++ ++static DBusHandlerResult ++dbus_signal_handler(DBusConnection *conn, DBusMessage *message, void *data) ++{ ++ (void)conn; ++ (void)data; ++ ++ const char *path = dbus_message_get_path(message); ++ const char *interface = dbus_message_get_interface(message); ++ const char *signal = dbus_message_get_member(message); ++ ++ DBusMessageIter iter; ++ struct worker *worker; ++ ++ if (strcmp(interface, BLUEALSA_INTERFACE_MANAGER) == 0) { ++ ++ if (strcmp(signal, "PCMAdded") == 0) { ++ struct ba_pcm pcm; ++ if (!dbus_message_iter_init(message, &iter) || ++ !bluealsa_dbus_message_iter_get_pcm(&iter, NULL, &pcm)) { ++ error("Couldn't add new PCM: %s", "Invalid signal signature"); ++ goto fail; ++ } ++ worker_new(&pcm); ++ return DBUS_HANDLER_RESULT_HANDLED; ++ } ++ ++ if (strcmp(signal, "PCMRemoved") == 0) { ++ if (!dbus_message_iter_init(message, &iter) || ++ dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_OBJECT_PATH) { ++ error("Couldn't remove PCM: %s", "Invalid signal signature"); ++ goto fail; ++ } ++ dbus_message_iter_get_basic(&iter, &path); ++ g_hash_table_remove(workers, path); ++ return DBUS_HANDLER_RESULT_HANDLED; ++ } ++ ++ } ++ ++ if (strcmp(interface, DBUS_INTERFACE_PROPERTIES) == 0) { ++ worker = g_hash_table_lookup(workers, path); ++ if (!worker) ++ goto fail; ++ if (!dbus_message_iter_init(message, &iter) || ++ dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_STRING) { ++ error("Couldn't update PCM: %s", "Invalid signal signature"); ++ goto fail; ++ } ++ dbus_message_iter_get_basic(&iter, &interface); ++ dbus_message_iter_next(&iter); ++ if (!bluealsa_dbus_message_iter_get_pcm_props(&iter, NULL, &worker->ba_pcm)) ++ goto fail; ++ supervise_pcm_worker(worker); ++ return DBUS_HANDLER_RESULT_HANDLED; ++ } ++ ++fail: ++ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; ++} ++ ++static void ++destroy_worker(void *worker) ++{ ++ struct worker *w = worker; ++ worker_stop(w); ++ g_slice_free(struct worker, w); ++} ++ ++int ++main(int argc, char *argv[]) ++{ ++ int ret = EXIT_SUCCESS; ++ ++ log_open(argv[0], false, false); ++ gst_init(&argc, &argv); ++ dbus_threads_init_default(); ++ ++ DBusError err = DBUS_ERROR_INIT; ++ if (!bluealsa_dbus_connection_ctx_init(&dbus_ctx, BLUEALSA_SERVICE, &err)) { ++ error("Couldn't initialize D-Bus context: %s", err.message); ++ return EXIT_FAILURE; ++ } ++ ++ bluealsa_dbus_connection_signal_match_add(&dbus_ctx, ++ BLUEALSA_SERVICE, NULL, BLUEALSA_INTERFACE_MANAGER, "PCMAdded", NULL); ++ bluealsa_dbus_connection_signal_match_add(&dbus_ctx, ++ BLUEALSA_SERVICE, NULL, BLUEALSA_INTERFACE_MANAGER, "PCMRemoved", NULL); ++ bluealsa_dbus_connection_signal_match_add(&dbus_ctx, ++ BLUEALSA_SERVICE, NULL, DBUS_INTERFACE_PROPERTIES, "PropertiesChanged", ++ "arg0='"BLUEALSA_INTERFACE_PCM"'"); ++ ++ if (!dbus_connection_add_filter(dbus_ctx.conn, dbus_signal_handler, NULL, NULL)) { ++ error("Couldn't add D-Bus filter: %s", err.message); ++ return EXIT_FAILURE; ++ } ++ ++ workers = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, destroy_worker); ++ ++ { ++ struct ba_pcm *pcms = NULL; ++ size_t pcms_count = 0, i; ++ ++ if (!bluealsa_dbus_get_pcms(&dbus_ctx, &pcms, &pcms_count, &err)) ++ warn("Couldn't get BlueALSA PCM list: %s", err.message); ++ ++ for (i = 0; i < pcms_count; i++) { ++ worker_new(&pcms[i]); ++ } ++ ++ free(pcms); ++ } ++ ++ struct sigaction sigact = { .sa_handler = main_loop_stop }; ++ sigaction(SIGTERM, &sigact, NULL); ++ sigaction(SIGINT, &sigact, NULL); ++ ++ /* Ignore SIGPIPE, which may be received when writing to the bluealsa ++ socket when it is closed on the remote end */ ++ signal(SIGPIPE, SIG_IGN); ++ ++ debug("Starting main loop"); ++ while (main_loop_on) { ++ ++ struct pollfd pfds[10]; ++ nfds_t pfds_len = ARRAYSIZE(pfds); ++ ++ if (!bluealsa_dbus_connection_poll_fds(&dbus_ctx, pfds, &pfds_len)) { ++ error("Couldn't get D-Bus connection file descriptors"); ++ ret = EXIT_FAILURE; ++ goto out; ++ } ++ ++ if (poll(pfds, pfds_len, -1) == -1 && ++ errno == EINTR) ++ continue; ++ ++ if (bluealsa_dbus_connection_poll_dispatch(&dbus_ctx, pfds, pfds_len)) ++ while (dbus_connection_dispatch(dbus_ctx.conn) == DBUS_DISPATCH_DATA_REMAINS) ++ continue; ++ ++ } ++ ++out: ++ g_hash_table_unref(workers); ++ return ret; ++} +-- +2.24.0 + diff --git a/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service new file mode 100644 index 000000000..495ab6222 --- /dev/null +++ b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service @@ -0,0 +1,18 @@ +[Unit] +Description=Bluetooth audio helper for user %i +Requires=pipewire@%i.socket bluez-alsa.service +After=pipewire@%i.socket bluez-alsa.service + +[Service] +Type=simple +Restart=on-failure +ExecStart=/usr/bin/bluealsa-gst-helper + +Environment=XDG_RUNTIME_DIR=/run/user/%i +Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%i/bus + +User=%i +Slice=user-%i.slice +SupplementaryGroups=audio +UMask=0077 +CapabilityBoundingSet= diff --git a/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bb b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bb new file mode 100644 index 000000000..27f462a87 --- /dev/null +++ b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bb @@ -0,0 +1,43 @@ +SUMMARY = "Bluetooth Audio ALSA Backend" +HOMEPAGE = "https://github.com/Arkq/bluez-alsa" +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3d7d6ac7e2dbd2505652dceb3acdf1fe" + +SRC_URI = "git://github.com/Arkq/bluez-alsa.git;protocol=https;branch=master" +SRCREV = "2cd6e4686f7808276480b430fb37df55dfdcc02b" + +SRC_URI += "file://bluez-alsa.service" + +S = "${WORKDIR}/git" + +DEPENDS += "alsa-lib bluez5 systemd glib-2.0 sbc" + +PACKAGECONFIG[aac] = "--enable-aac, --disable-aac, " +PACKAGECONFIG[aptx] = "--enable-aptx,--disable-aptx," +PACKAGECONFIG[ofono] = "--enable-ofono, --disable-ofono," + +inherit autotools pkgconfig +inherit systemd + +SYSTEMD_AUTO_ENABLE = "enable" +SYSTEMD_SERVICE:${PN} = "bluez-alsa.service" + +PACKAGECONFIG += "ofono" + +# enable debug tools in devel images +PACKAGECONFIG[hcitop] = "--enable-hcitop, --disable-hcitop, libbsd ncurses" +PACKAGECONFIG[rfcomm] = "--enable-rfcomm, --disable-rfcomm," +PACKAGECONFIG:append:agl-devel = " hcitop rfcomm" + +do_install:append () { + install -d ${D}${base_libdir}/systemd/system + install -m 0644 ${WORKDIR}/bluez-alsa.service ${D}${base_libdir}/systemd/system +} + +FILES:${PN} += "\ + ${datadir}/alsa/alsa.conf.d/20-bluealsa.conf\ + ${libdir}/alsa-lib/libasound_module_ctl_bluealsa.so\ + ${libdir}/alsa-lib/libasound_module_pcm_bluealsa.so\ +" diff --git a/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend new file mode 100644 index 000000000..b592e822b --- /dev/null +++ b/_to_remove/recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend @@ -0,0 +1,35 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/bluez-alsa:" + +SRC_URI += "\ + file://0001-utils-add-a-gstreamer-helper-application-for-interco.patch \ + file://bluealsa-gst-helper@.service \ + " + +PACKAGECONFIG += "gsthelper" +PACKAGECONFIG[gsthelper] = "--enable-gsthelper, --disable-gsthelper, gstreamer1.0" + +do_install:append() { + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + # install the service file + mkdir -p ${D}${systemd_system_unitdir}/ + install -m 0644 ${WORKDIR}/bluealsa-gst-helper@.service ${D}${systemd_system_unitdir}/bluealsa-gst-helper@.service + + # enable the helper to start together with afm-user-session + mkdir -p ${D}${systemd_system_unitdir}/afm-user-session@.target.wants + ln -sf ../bluealsa-gst-helper@.service ${D}${systemd_system_unitdir}/afm-user-session@.target.wants/bluealsa-gst-helper@.service + fi +} + +PACKAGES =+ "${PN}-pipewire" + +FILES:${PN}-pipewire = "\ + ${bindir}/bluealsa-gst-helper \ + ${systemd_system_unitdir}/bluealsa-gst-helper@.service \ + ${systemd_system_unitdir}/afm-user-session@.target.wants/bluealsa-gst-helper@.service \ + " +RDEPENDS:${PN}-pipewire += "\ + bluez-alsa \ + pipewire \ + gstreamer1.0-plugins-base \ + gstreamer1.0-pipewire \ + " diff --git a/_to_remove/recipes-connectivity/bluez-alsa/files/bluez-alsa.service b/_to_remove/recipes-connectivity/bluez-alsa/files/bluez-alsa.service new file mode 100644 index 000000000..b59302ee4 --- /dev/null +++ b/_to_remove/recipes-connectivity/bluez-alsa/files/bluez-alsa.service @@ -0,0 +1,11 @@ +[Unit] +Description=Bluetooth Audio ALSA Backend +After=bluetooth.service +Requires=bluetooth.service + +[Service] +Type=simple +ExecStart=/usr/bin/bluealsa -p a2dp-sink -p hfp-ofono + +[Install] +WantedBy=multi-user.target diff --git a/_to_remove/recipes-demo/alexa-viewer/alexa-viewer_git.bb b/_to_remove/recipes-demo/alexa-viewer/alexa-viewer_git.bb new file mode 100644 index 000000000..d8af6888c --- /dev/null +++ b/_to_remove/recipes-demo/alexa-viewer/alexa-viewer_git.bb @@ -0,0 +1,38 @@ +SUMMARY = "Demo voice capabilities template viewer for Alexa voiceagent" +DESCRIPTION = "Demo voice capabilities template viewer for Alexa voiceagent" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/alexa-viewer" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = " \ + qtquickcontrols2 \ + qlibhomescreen \ + af-binder \ + libqtappfw \ + wayland-native \ + wayland \ + qtwayland \ + qtwayland-native \ + agl-compositor \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/alexa-viewer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit cmake_qt5 aglwgt + +OECMAKE_CXX_FLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" + +RDEPENDS:${PN} = " \ + libqtappfw \ + libafbwsc \ + qlibhomescreen \ + agl-service-homescreen \ + agl-service-voice-high-capabilities \ +" diff --git a/_to_remove/recipes-demo/camera-gstreamer/camera-gstreamer_git.bb b/_to_remove/recipes-demo/camera-gstreamer/camera-gstreamer_git.bb new file mode 100644 index 000000000..4fe09e913 --- /dev/null +++ b/_to_remove/recipes-demo/camera-gstreamer/camera-gstreamer_git.bb @@ -0,0 +1,27 @@ +SUMMARY = "Camera gstreamer demo application" +DESCRIPTION = "AGL demonstration of displaying incoming camera feed" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/camera-gstreamer" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = " \ + wayland wayland-native \ + gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/camera-gstreamer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit cmake pkgconfig aglwgt + +RDEPENDS:${PN} += " \ + gstreamer1.0-plugins-base \ + gstreamer1.0-plugins-good \ + gstreamer1.0-plugins-bad \ +" diff --git a/_to_remove/recipes-demo/cluster-dashboard/cluster-dashboard_git.bb b/_to_remove/recipes-demo/cluster-dashboard/cluster-dashboard_git.bb new file mode 100644 index 000000000..480d1f22d --- /dev/null +++ b/_to_remove/recipes-demo/cluster-dashboard/cluster-dashboard_git.bb @@ -0,0 +1,31 @@ +SUMMARY = "Instrument Cluster Dashboard application" +DESCRIPTION = "AGL demonstration instrument cluster dashboard application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-cluster-demo-dashboard" +SECTION = "apps" + +LICENSE = "Apache-2.0 & BSD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ + file://app/cluster-gauges.qml;beginline=9;endline=48;md5=54187d50b29429abee6095fe8b7c1a78" + +DEPENDS = " \ + qtquickcontrols2 libqtappfw glib-2.0 \ + wayland-native wayland qtwayland qtwayland-native \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-cluster-demo-dashboard;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit pkgconfig cmake_qt5 aglwgt + +RDEPENDS:${PN} += " \ + qtquickcontrols \ + qtquickcontrols-qmlplugins \ + qtquickcontrols2 \ + qtquickcontrols2-qmlplugins \ + libqtappfw \ + agl-service-signal-composer \ +" diff --git a/_to_remove/recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb b/_to_remove/recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb new file mode 100644 index 000000000..8b5b62093 --- /dev/null +++ b/_to_remove/recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb @@ -0,0 +1,29 @@ +SUMMARY = "Minimal cluster demo gauges that can be used standalone" +DESCRIPTION = "AGL HMI Application for demonstrating instrument cluster gauges as a wayland compositor" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-cluster-demo-gauges" +SECTION = "apps" + +LICENSE = "Apache-2.0 & BSD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ + file://app/cluster-gauges.qml;beginline=10;endline=49;md5=54187d50b29429abee6095fe8b7c1a78" + +DEPENDS = "qtquickcontrols2 qtwebsockets" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-cluster-demo-gauges;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit pkgconfig cmake_qt5 aglwgt + +RDEPENDS:${PN} += " \ + qtquickcontrols \ + qtquickcontrols-qmlplugins \ + qtquickcontrols2 \ + qtquickcontrols2-qmlplugins \ + qtwebsockets \ + qtwebsockets-qmlplugins \ + kms-conf \ +" diff --git a/_to_remove/recipes-demo/cluster-receiver/cluster-receiver_git.bb b/_to_remove/recipes-demo/cluster-receiver/cluster-receiver_git.bb new file mode 100644 index 000000000..7028d5fc1 --- /dev/null +++ b/_to_remove/recipes-demo/cluster-receiver/cluster-receiver_git.bb @@ -0,0 +1,27 @@ +SUMMARY = "Instrument Cluster Receiver application" +DESCRIPTION = "AGL demonstration instrument cluster remote display application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-cluster-demo-receiver" +SECTION = "apps" + +LICENSE = "Apache-2.0 & MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=374fee6a7817f1e1a5a7bfb7b7989553" + +DEPENDS = " \ + wayland wayland-native \ + gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad agl-compositor \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-cluster-demo-receiver;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit cmake pkgconfig aglwgt + +RDEPENDS:${PN} += " \ + gstreamer1.0-plugins-base \ + gstreamer1.0-plugins-good \ + gstreamer1.0-plugins-bad \ +" diff --git a/_to_remove/recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb b/_to_remove/recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb new file mode 100644 index 000000000..80f8edbb0 --- /dev/null +++ b/_to_remove/recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb @@ -0,0 +1,30 @@ +SUMMARY = "Instrument Cluster Receiver AGL Demonstration" +DESCRIPTION = "AGL HMI Application for demonstrating instrument cluster remote display" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/admin/repos/apps/agl-qt-cluster-demo-receiver" +SECTION = "apps" + +LICENSE = "Apache-2.0 & MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ + file://app/surface.hpp;beginline=5;endline=21;md5=5351c531a191f0e3463aafcd0a6a00a3" + +DEPENDS = " \ + wayland wayland-native \ + qtwayland qtwayland-native \ + qtquickcontrols2 qtwebsockets qtbase qtdeclarative \ + gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-qt-cluster-demo-receiver;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit cmake_qt5 pkgconfig aglwgt + +RDEPENDS:${PN} += " \ + gstreamer1.0-plugins-base \ + gstreamer1.0-plugins-good \ + gstreamer1.0-plugins-bad \ +" diff --git a/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json new file mode 100644 index 000000000..90180dcaf --- /dev/null +++ b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json @@ -0,0 +1,40 @@ +{ + "areas": [ + { + "name": "fullscreen", + "rect": { + "x": 0, + "y": 0, + "w": 1920, + "h": 1080 + } + }, + { + "name": "normal.full", + "rect": { + "x": 640, + "y": 180, + "w": 640, + "h": 720 + } + }, + { + "name": "restriction.normal", + "rect": { + "x": 640, + "y": 180, + "w": 640, + "h": 720 + } + }, + { + "name": "on_screen", + "rect": { + "x": 640, + "y": 180, + "w": 640, + "h": 720 + } + } + ] +} diff --git a/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json new file mode 100644 index 000000000..5c6a5b35d --- /dev/null +++ b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json @@ -0,0 +1,47 @@ +{ + "description": "Layer mapping", + "mappings": [ + { + "name": "BackGroundLayer", + "role" : "receiver", + "id_range_begin": 0, + "id_range_end": 0, + "comment": "Work Around: This is a special fallback layer that not stopping wayland event loop." + }, + { + "name": "FarHomeScreen", + "role": "homescreen", + "id_range_begin": 100, + "id_range_end": 199, + "comment": "FarHomeScreen is the part of HomeScreen. The z order of this layer is lower than NearHomeScreen" + }, + { + "name": "Apps", + "role": "receiver|fallback", + "id_range_begin": 1000, + "id_range_end": 2999, + "comment": "Application layer" + }, + { + "name": "Popup", + "role": "popup*", + "id_range_begin": 4000, + "id_range_end": 4999, + "comment": "This layer is for popup application layer" + }, + { + "name": "Restriction", + "role": "restriction", + "id_range_begin": 5000, + "id_range_end": 5999, + "comment": "This layer is for restriction notification on driving. This is used by restriction role" + }, + { + "name": "OnScreen", + "role": "^on_screen.*", + "id_range_begin": 6000, + "id_range_end": 6999, + "comment": "System notification layer. For example, on_screen_low_battery_alert to notify user" + } + ] +} diff --git a/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db new file mode 100644 index 000000000..13702144a --- /dev/null +++ b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db @@ -0,0 +1,34 @@ +{ + "roles":[ + { + "category": "homescreen", + "role": "homescreen", + "area": "fullscreen", + "layer": "homescreen", + }, + { + "category": "debug", + "role": "receiver | fallback", + "area": "normal.full", + "layer": "apps", + }, + { + "category": "restriction", + "role": "restriction", + "area": "restriction.normal", + "layer": "restriction", + }, + { + "category": "pop_up", + "role": "on_screen | on_screen_phone", + "area": "on_screen", + "layer": "on_screen", + }, + { + "category": "system_alert", + "role": "system_alert", + "area": "on_screen", + "layer": "on_screen", + } + ] +} diff --git a/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb new file mode 100644 index 000000000..f8cf9b928 --- /dev/null +++ b/_to_remove/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb @@ -0,0 +1,19 @@ +SUMMARY = "Cluster demo windowmanager configuration" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +SRC_URI = "file://layers.json \ + file://areas.json \ + file://roles.db \ +" + +do_compile[noexec] = "1" + +do_install() { + install -d ${D}${sysconfdir}/xdg/windowmanager + install -m 0644 ${WORKDIR}/layers.json ${D}${sysconfdir}/xdg/windowmanager/layers.json + install -m 0644 ${WORKDIR}/areas.json ${D}${sysconfdir}/xdg/windowmanager/areas.json + install -m 0644 ${WORKDIR}/roles.db ${D}${sysconfdir}/xdg/windowmanager/roles.db +} + +#FILES:${PN} += "${sysconfdir}/*" diff --git a/_to_remove/recipes-demo/dashboard/dashboard_git.bb b/_to_remove/recipes-demo/dashboard/dashboard_git.bb new file mode 100644 index 000000000..22f5b73ec --- /dev/null +++ b/_to_remove/recipes-demo/dashboard/dashboard_git.bb @@ -0,0 +1,23 @@ +SUMMARY = "Dashboard application" +DESCRIPTION = "AGL demonstration Dashboard application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/dashboard" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "qtquickcontrols2 qttools-native libqtappfw" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/dashboard;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +RDEPENDS:${PN} += " \ + libqtappfw \ + agl-service-signal-composer \ +" diff --git a/_to_remove/recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb b/_to_remove/recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb new file mode 100644 index 000000000..d33356999 --- /dev/null +++ b/_to_remove/recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb @@ -0,0 +1,37 @@ +SUMMARY = "homescreen-demo-ci AGL client shell for testing in CI" +DESCRIPTION = "homescreen-demo-ci AGL client shell for testing in CI" +HOMEPAGE = "http://docs.automotivelinux.org" +LICENSE = "MIT" +SECTION = "apps" +LIC_FILES_CHKSUM = "file://COPYING;md5=374fee6a7817f1e1a5a7bfb7b7989553" + +DEPENDS = "\ + qtbase \ + qtdeclarative \ + qtquickcontrols2 \ + agl-service-homescreen \ + agl-service-weather \ + libqtappfw \ + libhomescreen \ + libafb-helpers-qt \ + wayland-native \ + wayland \ + qtwayland \ + qtwayland-native \ +" + +inherit qmake5 systemd pkgconfig aglwgt + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/homescreen-demo-ci;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" + +OE_QMAKE_CXXFLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" + +RDEPENDS:${PN} += " \ + libqtappfw \ +" diff --git a/_to_remove/recipes-demo/homescreen/homescreen_git.bb b/_to_remove/recipes-demo/homescreen/homescreen_git.bb new file mode 100644 index 000000000..bf8034b91 --- /dev/null +++ b/_to_remove/recipes-demo/homescreen/homescreen_git.bb @@ -0,0 +1,43 @@ +SUMMARY = "Home Screen application" +DESCRIPTION = "AGL demonstration Home Screen application" +HOMEPAGE = "http://docs.automotivelinux.org" +LICENSE = "Apache-2.0" +SECTION = "apps" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = " \ + qtbase \ + qtdeclarative \ + qtquickcontrols2 \ + libqtappfw \ + libhomescreen \ + libafb-helpers-qt \ + wayland-native \ + wayland \ + qtwayland \ + qtwayland-native \ + agl-compositor \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/homescreen;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 systemd pkgconfig aglwgt + +PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" + +OE_QMAKE_CXXFLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" + +RDEPENDS:${PN} += " \ + libqtappfw \ + agl-service-audiomixer \ + agl-service-bluetooth \ + agl-service-homescreen \ + agl-service-network \ + agl-service-weather \ + agl-service-voice-high \ +" diff --git a/_to_remove/recipes-demo/html5-background/html5-background_git.bb b/_to_remove/recipes-demo/html5-background/html5-background_git.bb new file mode 100644 index 000000000..4be560709 --- /dev/null +++ b/_to_remove/recipes-demo/html5-background/html5-background_git.bb @@ -0,0 +1,13 @@ +SUMMARY = "AGL HTML5 Background Application" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://github.com/AGL-web-applications/background.git;protocol=https;branch=master" +SRCREV = "3b8dae349d428c0230b9885f86d421d43cda5638" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/html5-dashboard/html5-dashboard_git.bb b/_to_remove/recipes-demo/html5-dashboard/html5-dashboard_git.bb new file mode 100644 index 000000000..7f375670b --- /dev/null +++ b/_to_remove/recipes-demo/html5-dashboard/html5-dashboard_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "AGL HTML5 dashboard Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-dashboard/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-dashboard;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/html5-homescreen/html5-homescreen_git.bb b/_to_remove/recipes-demo/html5-homescreen/html5-homescreen_git.bb new file mode 100644 index 000000000..f927cb70b --- /dev/null +++ b/_to_remove/recipes-demo/html5-homescreen/html5-homescreen_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "AGL HTML5 Homescreen Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-homescreen/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-homescreen;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/html5-hvac/html5-hvac_git.bb b/_to_remove/recipes-demo/html5-hvac/html5-hvac_git.bb new file mode 100644 index 000000000..91654b42b --- /dev/null +++ b/_to_remove/recipes-demo/html5-hvac/html5-hvac_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "AGL HTML5 HVAC Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-hvac/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-hvac;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/html5-launcher/html5-launcher_git.bb b/_to_remove/recipes-demo/html5-launcher/html5-launcher_git.bb new file mode 100644 index 000000000..ab99cf5f0 --- /dev/null +++ b/_to_remove/recipes-demo/html5-launcher/html5-launcher_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "AGL HTML5 Launcher Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-launcher/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-launcher;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb b/_to_remove/recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb new file mode 100644 index 000000000..ddb2ee29f --- /dev/null +++ b/_to_remove/recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "AGL HTML5 Mediaplayer Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-mediaplayer/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-mediaplayer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/html5-mixer/html5-mixer_git.bb b/_to_remove/recipes-demo/html5-mixer/html5-mixer_git.bb new file mode 100644 index 000000000..e643c59c7 --- /dev/null +++ b/_to_remove/recipes-demo/html5-mixer/html5-mixer_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "AGL HTML5 Mixer Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-mixer/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-mixer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/html5-settings/html5-settings_git.bb b/_to_remove/recipes-demo/html5-settings/html5-settings_git.bb new file mode 100644 index 000000000..010c69105 --- /dev/null +++ b/_to_remove/recipes-demo/html5-settings/html5-settings_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "AGL HTML5 Settings Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-settings/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-settings;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +inherit aglwgt diff --git a/_to_remove/recipes-demo/hvac/hvac_git.bb b/_to_remove/recipes-demo/hvac/hvac_git.bb new file mode 100644 index 000000000..c7da0ef49 --- /dev/null +++ b/_to_remove/recipes-demo/hvac/hvac_git.bb @@ -0,0 +1,25 @@ +SUMMARY = "HVAC application" +DESCRIPTION = "AGL demonstration HVAC application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/hvac" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = " \ + qtquickcontrols2 \ + libhomescreen \ + qttools-native \ + libqtappfw \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/hvac;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +RDEPENDS:${PN} = "agl-service-hvac libqtappfw" diff --git a/_to_remove/recipes-demo/inputeventmanager/inputeventmanager_git.bb b/_to_remove/recipes-demo/inputeventmanager/inputeventmanager_git.bb new file mode 100644 index 000000000..8718f1844 --- /dev/null +++ b/_to_remove/recipes-demo/inputeventmanager/inputeventmanager_git.bb @@ -0,0 +1,30 @@ +SUMMARY = "AGL InputEventManager Application" +DESCRIPTION = "InputEventManager" +HOMEPAGE = "http://docs.automotivelinux.org" +LICENSE = "Apache-2.0" +SECTION = "apps" +S = "${WORKDIR}/git" + +inherit qmake5 systemd +DEPENDS = " qtbase " + +LIC_FILES_CHKSUM = "file://inputeventmanager/LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/inputeventmanager.git;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "b2f1646ac78cf61acd66c643b7638bd1b007d5a0" +# PV needs to be modified with SRCPV to work AUTOREV correctly +PV = "0.0+git${SRCPV}" + +PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" + +do_install() { + install -d ${D}/usr/AGL/${PN} + install -m 0755 ${B}/inputeventmanager/InputEventManager ${D}/usr/AGL/${PN}/ + + install -d ${D}${systemd_user_unitdir} + install -m 0644 ${S}/inputeventmanager/conf/InputEventManager.service ${D}${systemd_user_unitdir} +} + +FILES:${PN} += "/usr/AGL/${PN}/ ${systemd_user_unitdir}" +FILES:${PN}-dbg += "/usr/AGL/${PN}/.debug" + diff --git a/_to_remove/recipes-demo/launcher/launcher_git.bb b/_to_remove/recipes-demo/launcher/launcher_git.bb new file mode 100644 index 000000000..d2de209a1 --- /dev/null +++ b/_to_remove/recipes-demo/launcher/launcher_git.bb @@ -0,0 +1,32 @@ +SUMMARY = "AGL Launcher Application" +DESCRIPTION = "AGL Launcher Application build with recipe method" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/launcher" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +DEPENDS = "\ + qtbase \ + qtdeclarative \ + qtquickcontrols2 \ + qtwebsockets \ + qlibhomescreen \ + wayland-native \ + wayland \ + qtwayland \ + qtwayland-native \ + agl-compositor \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/launcher;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 systemd pkgconfig aglwgt + +PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" + +RDEPENDS:${PN} = "agl-service-homescreen" diff --git a/_to_remove/recipes-demo/mediaplayer/mediaplayer_git.bb b/_to_remove/recipes-demo/mediaplayer/mediaplayer_git.bb new file mode 100644 index 000000000..f6538fdcf --- /dev/null +++ b/_to_remove/recipes-demo/mediaplayer/mediaplayer_git.bb @@ -0,0 +1,20 @@ +SUMMARY = "Media Player application" +DESCRIPTION = "AGL demonstration Media Player application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/mediaplayer" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "qtquickcontrols2 libqtappfw" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/mediaplayer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +RDEPENDS:${PN} += "agl-service-mediaplayer libqtappfw" diff --git a/_to_remove/recipes-demo/messaging/messaging_git.bb b/_to_remove/recipes-demo/messaging/messaging_git.bb new file mode 100644 index 000000000..586996c75 --- /dev/null +++ b/_to_remove/recipes-demo/messaging/messaging_git.bb @@ -0,0 +1,20 @@ +SUMMARY = "Messaging application" +DESCRIPTION = "AGL demonstration Messaging application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/messaging" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "qtquickcontrols2 libqtappfw" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/messaging;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +RDEPENDS:${PN} += "agl-service-bluetooth-map libqtappfw" diff --git a/_to_remove/recipes-demo/mixer/mixer_git.bb b/_to_remove/recipes-demo/mixer/mixer_git.bb new file mode 100644 index 000000000..c99c04420 --- /dev/null +++ b/_to_remove/recipes-demo/mixer/mixer_git.bb @@ -0,0 +1,29 @@ +SUMMARY = "Mixer application" +DESCRIPTION = "AGL demonstration Mixer application for control of PipeWire mixer elements" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/mixer" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = " \ + qtquickcontrols2 \ + qtwebsockets \ + libafb-helpers-qt \ +" + +PROVIDES += "virtual/mixer" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/mixer;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit cmake_qt5 aglwgt + +OECMAKE_CXX_FLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" + +RDEPENDS:${PN} = "agl-service-audiomixer" +RPROVIDES:${PN} += "virtual/mixer" diff --git a/_to_remove/recipes-demo/navigation/ondemandnavi-config/naviconfig.ini b/_to_remove/recipes-demo/navigation/ondemandnavi-config/naviconfig.ini new file mode 100644 index 000000000..f99c4483d --- /dev/null +++ b/_to_remove/recipes-demo/navigation/ondemandnavi-config/naviconfig.ini @@ -0,0 +1,9 @@ +{ + "mapAccessToken":"MAPBOX_ACCESS_TOKEN", + "speed":60, + "interval":100, + "latitude":36.1363, + "longitude":-115.151, + "mapStyleUrls":"styles/v1/mapbox/streets-v11", + "enableOSM":true +} diff --git a/_to_remove/recipes-demo/navigation/ondemandnavi-config_1.0.bb b/_to_remove/recipes-demo/navigation/ondemandnavi-config_1.0.bb new file mode 100644 index 000000000..212971f26 --- /dev/null +++ b/_to_remove/recipes-demo/navigation/ondemandnavi-config_1.0.bb @@ -0,0 +1,21 @@ +SUMMARY = "AGL Reference On Demand Navigation application config." +DESCRIPTION = "Config file for on-demand navigation app." +HOMEPAGE = "https://github.com/YoshitoMomiyama/aglqtnavigation.git" +SECTION = "apps" +LICENSE = "Proprietary" + +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28" + +SRC_URI = "file://naviconfig.ini \ + " + +inherit allarch + +MAPBOX_ACCESS_TOKEN ?= "Please set mapbox access token" + +do_compile[noexec] = "1" + +do_install () { + install -D -m 644 ${WORKDIR}/naviconfig.ini ${D}${sysconfdir}/naviconfig.ini + sed -i -e 's/MAPBOX_ACCESS_TOKEN/${MAPBOX_ACCESS_TOKEN}/' ${D}${sysconfdir}/naviconfig.ini +} diff --git a/_to_remove/recipes-demo/navigation/ondemandnavi_git.bb b/_to_remove/recipes-demo/navigation/ondemandnavi_git.bb new file mode 100644 index 000000000..5264ba633 --- /dev/null +++ b/_to_remove/recipes-demo/navigation/ondemandnavi_git.bb @@ -0,0 +1,31 @@ +SUMMARY = "Navigation application." +DESCRIPTION = "AGL demonstration Navigation application based on QtLocation widget." +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/ondemandnavi" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "qtquickcontrols2 qtlocation libqtappfw" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/ondemandnavi;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt pkgconfig + +RDEPENDS:${PN} += " \ + qtlocation \ + flite \ + libqtappfw \ + openjtalk \ + gstreamer1.0 \ + ondemandnavi-config \ + agl-service-navigation \ +" + +RPROVIDES:${PN} = "virtual/navigation" + diff --git a/_to_remove/recipes-demo/navigation/poiapp-api-key_1.0.bb b/_to_remove/recipes-demo/navigation/poiapp-api-key_1.0.bb new file mode 100644 index 000000000..d353d7dd5 --- /dev/null +++ b/_to_remove/recipes-demo/navigation/poiapp-api-key_1.0.bb @@ -0,0 +1,21 @@ +SUMMARY = "AGL Reference POI application API key." +DESCRIPTION = "Preload the API key for the AGL POI application." +HOMEPAGE = "https://github.com/AGLExport/genivi-navi-yelp-client" +SECTION = "apps" +LICENSE = "Proprietary" +LIC_FILES_CHKSUM="file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28" + +inherit allarch + +do_fetch[noexec] = "1" +do_unpack[noexec] = "1" +do_compile[noexec] = "1" + +POIAPP_CLIENT_ID ?= "" +POIAPP_API_KEY ?= "" + +do_install () { + install -d ${D}${sysconfdir} + echo "${POIAPP_CLIENT_ID}" > ${D}${sysconfdir}/poikey + echo "${POIAPP_API_KEY}" >> ${D}${sysconfdir}/poikey +} diff --git a/_to_remove/recipes-demo/navigation/poiapp/0001-add-display-permission.patch b/_to_remove/recipes-demo/navigation/poiapp/0001-add-display-permission.patch new file mode 100644 index 000000000..25a8fc313 --- /dev/null +++ b/_to_remove/recipes-demo/navigation/poiapp/0001-add-display-permission.patch @@ -0,0 +1,21 @@ +Add display permission + +Add display permission required to work with the running as non-root +change for applications. + +Upstream-Status: pending + +Signed-off-by: Scott Murray + +diff --git a/config.xml.in b/config.xml.in +index b8cfccd..bec206d 100755 +--- a/config.xml.in ++++ b/config.xml.in +@@ -13,6 +13,7 @@ + + + ++ + + GPL + diff --git a/_to_remove/recipes-demo/navigation/poiapp_git.bb b/_to_remove/recipes-demo/navigation/poiapp_git.bb new file mode 100644 index 000000000..08e174f74 --- /dev/null +++ b/_to_remove/recipes-demo/navigation/poiapp_git.bb @@ -0,0 +1,23 @@ +SUMMARY = "AGL Reference POI application." +DESCRIPTION = "This application provides the function of destination search to AGL. It uses the API provided by AGL Reference Navigation. This application uses yelp WebAPI." +HOMEPAGE = "https://github.com/AGLExport/genivi-navi-yelp-client" +SECTION = "apps" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://LICENSE;md5=4ee23c52855c222cba72583d301d2338" + +DEPENDS = " \ + qtbase \ + json-c \ + libhomescreen \ + libqtappfw \ +" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/poi-yelp;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit cmake_qt5 pkgconfig aglwgt + +RDEPENDS:${PN} = "qtbase libqtappfw" diff --git a/_to_remove/recipes-demo/navigation/tbtnavi_git.bb b/_to_remove/recipes-demo/navigation/tbtnavi_git.bb new file mode 100644 index 000000000..a4f22545f --- /dev/null +++ b/_to_remove/recipes-demo/navigation/tbtnavi_git.bb @@ -0,0 +1,38 @@ +SUMMARY = "AGL Reference Navigation Cluster Streaming application" +DESCRIPTION = "Demo AGL turn by turn cluster navigation application based on QtLocation widget." +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/admin/repos/apps/tbtnavi" +SECTION = "apps" + +LICENSE = "Apache-2.0 & ISC & BSD-3-Clause & BSL-1.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ + file://LICENSE.mapbox-cheap-ruler-cpp;md5=761263ee6bdc98e8697d9fbc897021ba \ + file://LICENSE.mapbox-geometry.hpp;md5=6e44f5d6aeec54f40fc84eebe3c6fc6c \ + file://LICENSE.mapbox-variant;md5=79558839a9db3e807e4ae6f8cd100c1c \ + file://include/mapbox/recursive_wrapper.hpp;beginline=4;endline=13;md5=cd3341aae76c0cf8345935abd20f0051 \ +" + +DEPENDS = " \ + qtbase \ + qtquickcontrols2 \ + qtlocation \ + libqtappfw \ + wayland-native \ + qtwayland-native \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/tbtnavi;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt pkgconfig + +RDEPENDS:${PN} += " \ + qtlocation \ + ondemandnavi-config \ + agl-service-navigation \ + agl-service-signal-composer \ + libqtappfw \ +" diff --git a/_to_remove/recipes-demo/onscreenapp/onscreenapp_git.bb b/_to_remove/recipes-demo/onscreenapp/onscreenapp_git.bb new file mode 100644 index 000000000..32a7a2db3 --- /dev/null +++ b/_to_remove/recipes-demo/onscreenapp/onscreenapp_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "onscreenapp for displaying popup windows" +DESCRIPTION = "AGL demonstration HMI Application for displaying popup windows" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/onscreenapp" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "qtquickcontrols2 libhomescreen qlibhomescreen" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/onscreenapp;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt diff --git a/_to_remove/recipes-demo/phone/phone_git.bb b/_to_remove/recipes-demo/phone/phone_git.bb new file mode 100644 index 000000000..71ef6ed7c --- /dev/null +++ b/_to_remove/recipes-demo/phone/phone_git.bb @@ -0,0 +1,24 @@ +SUMMARY = "Phone application" +DESCRIPTION = "AGL demonstration Phone application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/phone" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "qtquickcontrols2 libqtappfw gstreamer1.0" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/phone;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +RDEPENDS:${PN} += " \ + agl-service-telephony \ + agl-service-bluetooth-pbap \ + libqtappfw \ +" diff --git a/_to_remove/recipes-demo/radio/files/presets-ALS.conf b/_to_remove/recipes-demo/radio/files/presets-ALS.conf new file mode 100644 index 000000000..ff5592272 --- /dev/null +++ b/_to_remove/recipes-demo/radio/files/presets-ALS.conf @@ -0,0 +1,12 @@ +[fmPresets] +1\frequency=76100000 +1\title=Inter FM +2\frequency=77100000 +2\title=The Open University of Japan +3\frequency=80000000 +3\title=TOKYO FM +4\frequency=81300000 +4\title=J-WAVE +5\frequency=82500000 +5\title=NHK FM Tokyo +size=5 diff --git a/_to_remove/recipes-demo/radio/files/presets-CES.conf b/_to_remove/recipes-demo/radio/files/presets-CES.conf new file mode 100644 index 000000000..83caeffe1 --- /dev/null +++ b/_to_remove/recipes-demo/radio/files/presets-CES.conf @@ -0,0 +1,14 @@ +[fmPresets] +1\frequency=93100000 +1\title=93.1 The Mountain +2\frequency=94100000 +2\title=Mix 94.1 +3\frequency=96300000 +3\title=96.3 KKLZ +4\frequency=102700000 +4\title=102.7 THE COYOTE +5\frequency=88900000 +5\title=News 88.9 +6\frequency=91500000 +6\title=KUNV +size=6 diff --git a/_to_remove/recipes-demo/radio/files/presets-FOSDEM.conf b/_to_remove/recipes-demo/radio/files/presets-FOSDEM.conf new file mode 100644 index 000000000..b88364f72 --- /dev/null +++ b/_to_remove/recipes-demo/radio/files/presets-FOSDEM.conf @@ -0,0 +1,14 @@ +[fmPresets] +1\frequency=92100000 +1\title=92.1 Radio Campus +2\frequency=92500000 +2\title=92.5 RTBF La Première +3\frequency=93200000 +3\title=93.2 RTBF Classic 21 +4\frequency=98800000 +4\title=98.8 FM Brussel +5\frequency=103700000 +5\title=103.7 NRJ +6\frequency=104000000 +6\title=104.0 Bel RTL +size=6 diff --git a/_to_remove/recipes-demo/radio/radio_git.bb b/_to_remove/recipes-demo/radio/radio_git.bb new file mode 100644 index 000000000..c635f2c35 --- /dev/null +++ b/_to_remove/recipes-demo/radio/radio_git.bb @@ -0,0 +1,36 @@ +SUMMARY = "Radio application" +DESCRIPTION = "AGL demonstration Radio application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/radio" +SECTION = "apps" + +LICENSE = "Apache-2.0 & GPLv2+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "qtquickcontrols2 libqtappfw rtl-sdr" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/radio;protocol=https;branch=${AGL_BRANCH} \ + file://presets-ALS.conf \ + file://presets-CES.conf \ + file://presets-FOSDEM.conf \ +" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +# ALS, CES, FOSDEM available +AGL_RADIO_PRESETS_LOCALE ?= "CES" +do_install:append() { + install -d ${D}${sysconfdir}/xdg/AGL + install -m 0644 ${WORKDIR}/presets-CES.conf ${D}${sysconfdir}/xdg/AGL/radio-presets-CES.conf + install -m 0644 ${WORKDIR}/presets-ALS.conf ${D}${sysconfdir}/xdg/AGL/radio-presets-ALS.conf + install -m 0644 ${WORKDIR}/presets-FOSDEM.conf ${D}${sysconfdir}/xdg/AGL/radio-presets-FOSDEM.conf + install -m 0644 ${WORKDIR}/presets-${AGL_RADIO_PRESETS_LOCALE}.conf ${D}${sysconfdir}/xdg/AGL/radio-presets.conf +} + +FILES:${PN} += "${sysconfdir}/xdg/AGL/*" + +RDEPENDS:${PN} += "agl-service-radio libqtappfw" diff --git a/_to_remove/recipes-demo/settings/settings_git.bb b/_to_remove/recipes-demo/settings/settings_git.bb new file mode 100644 index 000000000..60cbdf595 --- /dev/null +++ b/_to_remove/recipes-demo/settings/settings_git.bb @@ -0,0 +1,31 @@ +SUMMARY = "Settings application" +DESCRIPTION = "AGL demonstration Settings application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/settings" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = " \ + libqtappfw \ + qtquickcontrols2 \ + qt-qrcode \ + qtvirtualkeyboard \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/settings;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +RDEPENDS:${PN} += " \ + qt-qrcode \ + agl-service-bluetooth \ + agl-service-network \ + agl-service-voice-high \ + libqtappfw \ +" diff --git a/_to_remove/recipes-demo/simple-can-simulator/files/simple_can_simulator.py b/_to_remove/recipes-demo/simple-can-simulator/files/simple_can_simulator.py new file mode 100755 index 000000000..83f88706e --- /dev/null +++ b/_to_remove/recipes-demo/simple-can-simulator/files/simple_can_simulator.py @@ -0,0 +1,381 @@ +#!/usr/bin/env python3 +# Copyright (c) 2016 Alex Bencz +# Copyright (c) 2019 Konsulko Group, smurray@konsulko.com +# Copyright (c) 2020 The Linux Foundation, jsmoeller@linuxfoundation.org +# +# Permission is hereby granted, free of charge, to any person obtaining a copy of +# this software and associated documentation files (the "Software"), to deal in +# the Software without restriction, including without limitation the rights to +# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +# of the Software, and to permit persons to whom the Software is furnished to do +# so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + +# +# CANSocket from: +# +# https://github.com/abencz/python_socketcan/blob/master/python_socketcan_example.py +# + +import sys +import socket +import argparse +import struct +import errno +import threading +import time + +class CANSocket(object): + FORMAT = "= self.vehicle_speed: + return + v = (self.vehicle_speed - target_speed) / (duration * self.freq) + r = (self.engine_speed - target_rpm) / (duration * self.freq) + while self.vehicle_speed > target_speed and (not self.CRUISEACTIVE or bycruise): + with self.lock: + self.vehicle_speed -= v; + self.engine_speed -= r; + time.sleep(1 / self.freq) + + def increase(self, bycruise = True): + if self.CRUISEACTIVE: + target_speed = self.vehicle_speed + 5 + target_rpm = self.engine_speed * 1.1 + self.accelerate(target_speed, target_rpm, 2, bycruise) + + def decrease(self, bycruise = True): + if self.CRUISEACTIVE: + target_speed = self.vehicle_speed - 5 + target_rpm = self.engine_speed * 0.9 + self.brake(target_speed, target_rpm, 2, bycruise) + + def resume(self, bycruise = True): + target_speed = self.CRUISESPEED + target_rpm = self.CRUISERPM + current_speed = self.get_vehicle_speed() + if target_speed > current_speed: + self.accelerate(target_speed, target_rpm, 2, bycruise) + else: + self.brake(target_speed, target_rpm, 2, bycruise) + + def run(self): + while True: + if not self.CRUISEACTIVE: + self.accelerate(80, 3000, 5) + self.accelerate(104, 4000, 3) + self.brake(80, 3000, 3) + self.accelerate(104, 4000, 6) + self.brake(40, 2000, 4) + self.accelerate(90, 3000, 5) + self.brake(1, 650, 5) + if not self.CRUISEACTIVE: + self.reset() + time.sleep(5) + +class DiagnosticMessageHandler(object): + def __init__(self, can_sock, simulator, verbose=False): + self.can_sock = can_sock + self.simulator = simulator + self.verbose = verbose + self.thread = threading.Thread(target=self.run, daemon=True) + + def start(self): + self.thread.start() + + def run(self): + while True: + can_id, data = self.can_sock.recv() + #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) + if can_id == 0x7df: + # OBD-II request + if data[1] == 0x01 and data[2] == 0x0C: + # Engine speed + speed = self.simulator.get_engine_speed() + #print('engine speed = %d' % speed) + if speed > 16383.75: + speed = 16383.75 + reply = [ 0x04, 0x41, 0x0C ] + reply.append(4 * speed // 256) + reply.append(4 * speed % 256) + # pad remaining bytes to make 8 + reply.append(0) + reply.append(0) + reply.append(0) + self.can_sock.send(0x7e8, bytes(reply), 0) + elif data[1] == 0x01 and data[2] == 0x0D: + # Vehicle speed + speed = int(self.simulator.get_vehicle_speed()) % 256 + #print('vehicle speed = %d' % speed) + reply = [ 0x03, 0x41, 0x0D ] + reply.append(speed) + # pad remaining bytes to make 8 + reply.append(0) + reply.append(0) + reply.append(0) + reply.append(0) + self.can_sock.send(0x7e8, bytes(reply), 0) + +class SteeringWheelMessageHandler(object): + def __init__(self, can_sock, simulator, verbose=False): + self.can_sock = can_sock + self.simulator = simulator + self.verbose = verbose + self.thread = threading.Thread(target=self.run, daemon=True) + self.buttonpressed = False + self.buttonenabled = False + self.buttoncancel = False + self.buttondec = False + self.buttoninc = False + self.cruisemode = False + self.cruiseactive = False + + def start(self): + self.thread.start() + + def run(self): + while True: + can_id, data = self.can_sock.recv() + #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) + if can_id == 0x21: + #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) + if data: + #if data[6]: + #print('data6: %02X' % (data[6])) + if data[6] == 0x80 and not self.buttonpressed: + # we do skip any further lin messages + # two buttons at the same time won't work + # (aka unlikely w/o twisting fingers) + self.buttonpressed = True + self.buttonenabled = True + if data[6] == 0x08 and not self.buttonpressed: + self.buttonpressed = True + self.buttoncancel = True + if data[6] == 0x10 and not self.buttonpressed: + self.buttonpressed = True + self.buttondec = True + if data[6] == 0x40 and not self.buttonpressed: + self.buttonpressed = True + self.buttoninc = True + if data[6] == 0x00 and self.buttonpressed: + #now handle it as the button was released + if self.buttonenabled: + self.buttonenabled = False + self.cruisemode = not self.cruisemode + #print("set cruisemode to %s" % self.cruisemode) + self.simulator.CRUISEMODE = self.cruisemode + # disable/reset all if going off + if not self.cruisemode: + self.cruiseactive = False + self.simulator.CRUISEACTIVE = self.cruiseactive + self.simulator.CRUISESPEED = 0 + self.simulator.CRUISERPM = 0 + #print("set cruiseactive to %s" % self.cruiseactive) + if self.buttoncancel: + self.buttoncancel = False + self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() + self.simulator.CRUISERPM = self.simulator.get_engine_speed() + #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) + #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) + self.cruiseactive = False + #print("set cruiseactive to %s" % self.cruiseactive ) + self.simulator.CRUISEACTIVE = self.cruiseactive + if self.buttondec: + self.buttondec = False + if self.cruiseactive: + #print("decrease") + self.simulator.decrease() + else: + # set speed + #print("set speed") + self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() + self.simulator.CRUISERPM = self.simulator.get_engine_speed() + #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) + #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) + self.cruiseactive = not self.cruiseactive + #print("set cruiseactive to %s" % self.cruiseactive ) + self.simulator.CRUISEACTIVE = self.cruiseactive + if self.buttoninc: + self.buttoninc = False + if self.cruiseactive: + #print("increase") + self.simulator.increase() + else: + if self.simulator.CRUISESPEED > 0: + # resume + self.cruiseactive = not self.cruiseactive + self.simulator.CRUISEACTIVE = self.cruiseactive + #print("set cruiseactive to %s" % self.cruiseactive ) + #print("resume") + self.simulator.resume() + self.buttonpressed = False + + +class StatusMessageSender(object): + def __init__(self, can_sock, simulator, verbose=False): + self.can_sock = can_sock + self.simulator = simulator + self.verbose = verbose + self.thread = threading.Thread(target=self.run, daemon=True) + + def start(self): + self.thread.start() + + def run(self): + while True: + # Engine speed + speed = self.simulator.get_engine_speed() + if self.verbose: + print('engine speed = %d' % speed) + if speed > 16383.75: + speed = 16383.75 + # Message is 1 byte unknown, 1 byte fuel level, 2 bytes engine speed (4x), fuel low @ bit 55 + msg = [ 0, 0 ] + speed *= 4 + msg.append(speed // 256) + msg.append(speed % 256) + # pad remaining bytes to make 8 + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + self.can_sock.send(0x3d9, bytes(msg), 0) + + # Vehicle speed + speed = int(self.simulator.get_vehicle_speed()) % 256 + if self.verbose: + print('vehicle speed = %d' % speed) + # Message is 15 bits speed (64x), left aligned + msg = [ ] + # Note: extra 2x to yield required left-alignment + speed *= 128 + msg.append(speed // 256) + msg.append(speed % 256) + # pad remaining bytes to make 8 + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + msg.append(0) + self.can_sock.send(0x3e9, bytes(msg), 0) + + # Sleep 100 ms + time.sleep(0.1) + +def main(): + parser = argparse.ArgumentParser(description='Simple CAN vehicle simulator.') + parser.add_argument('interface', type=str, help='interface name (e.g. vcan0)') + parser.add_argument('-v', '--verbose', help='increase output verbosity', action='store_true') + args = parser.parse_args() + + try: + can_sock = CANSocket(args.interface) + diag_can_sock = CANSocket(args.interface) + steeringwheel_can_sock = CANSocket(args.interface) + except OSError as e: + sys.stderr.write('Could not listen on interface {0}\n'.format(args.interface)) + sys.exit(e.errno) + + print('Using {0}'.format(args.interface)) + sim = VehicleSimulator() + status_sender = StatusMessageSender(can_sock, sim, args.verbose) + diag_handler = DiagnosticMessageHandler(diag_can_sock, sim, args.verbose) + steeringwheel_handler = SteeringWheelMessageHandler(steeringwheel_can_sock, sim, args.verbose) + sim.start() + status_sender.start() + diag_handler.start() + steeringwheel_handler.start() + try: + while True: + time.sleep(60) + except (KeyboardInterrupt, SystemExit): + #sim.stop() + sys.exit(0) + +if __name__ == '__main__': + main() diff --git a/_to_remove/recipes-demo/simple-can-simulator/simple-can-simulator.bb b/_to_remove/recipes-demo/simple-can-simulator/simple-can-simulator.bb new file mode 100644 index 000000000..947e0c6a5 --- /dev/null +++ b/_to_remove/recipes-demo/simple-can-simulator/simple-can-simulator.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "Simulator that generates CAN messages of a driving car" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${WORKDIR}/simple_can_simulator.py;beginline=2;endline=22;md5=9bb9c582301261d21460d2bc5bb8c225" + +SRC_URI = "file://simple_can_simulator.py" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + install -d ${D}${sbindir} + install -m 0755 ${WORKDIR}/simple_can_simulator.py ${D}${sbindir} +} + +RDEPENDS:${PN} = "python3" diff --git a/_to_remove/recipes-demo/taskmanager/taskmanager_git.bb b/_to_remove/recipes-demo/taskmanager/taskmanager_git.bb new file mode 100644 index 000000000..96b6d270f --- /dev/null +++ b/_to_remove/recipes-demo/taskmanager/taskmanager_git.bb @@ -0,0 +1,26 @@ +SUMMARY = "Task Manager application" +DESCRIPTION = "AGL demonstration task visualization and management application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/taskmanager" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = " \ + qtquickcontrols2 \ + qtwebsockets \ + qtcharts \ + libqtappfw \ + libhomescreen \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/taskmanager;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit qmake5 aglwgt + +RDEPENDS:${PN} += "agl-service-taskmanager libqtappfw" diff --git a/_to_remove/recipes-demo/telematics-recorder/telematics-recorder_git.bb b/_to_remove/recipes-demo/telematics-recorder/telematics-recorder_git.bb new file mode 100644 index 000000000..322acc5c3 --- /dev/null +++ b/_to_remove/recipes-demo/telematics-recorder/telematics-recorder_git.bb @@ -0,0 +1,25 @@ +SUMMARY = "Telematics Recorder application" +DESCRIPTION = "AGL demonstration telematics recorder application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-telematics-demo-recorder" +SECTION = "apps" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" + +DEPENDS = "glib-2.0 mosquitto" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-telematics-demo-recorder;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AUTOREV}" + +S = "${WORKDIR}/git" + +inherit cmake aglwgt + +RDEPENDS:${PN} += " \ + agl-service-can-low-level \ + agl-service-gps \ + agl-service-network \ + libmosquitto1 \ +" diff --git a/_to_remove/recipes-demo/waltham-receiver/waltham-receiver_git.bb b/_to_remove/recipes-demo/waltham-receiver/waltham-receiver_git.bb new file mode 100644 index 000000000..75ada4dd1 --- /dev/null +++ b/_to_remove/recipes-demo/waltham-receiver/waltham-receiver_git.bb @@ -0,0 +1,28 @@ +SUMMARY = "Waltham Receiver application" +DESCRIPTION = "AGL demonstration Waltham receiver interactive remote display application" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/waltham-receiver.git" +SECTION = "apps" + +LICENSE = "Apache-2.0 & MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=374fee6a7817f1e1a5a7bfb7b7989553" + +DEPENDS = " \ + waltham wayland wayland-native \ + gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad \ +" + +PV = "1.0+git${SRCPV}" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/waltham-receiver.git;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +S = "${WORKDIR}/git" + +inherit cmake pkgconfig aglwgt + +RDEPENDS:${PN} += " \ + gstreamer1.0-plugins-base \ + gstreamer1.0-plugins-good \ + gstreamer1.0-plugins-bad \ + waltham \ +" diff --git a/_to_remove/recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb b/_to_remove/recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb new file mode 100644 index 000000000..4c0bda071 --- /dev/null +++ b/_to_remove/recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb @@ -0,0 +1,17 @@ +SUMMARY = "Low level CAN generator" +DESCRIPTION = "Generator used to customize low level CAN service with customs signals" +SECTION = "devel" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit cmake pkgconfig +BBCLASSEXTEND = "nativesdk" +DEPENDS = " cmake-apps-module" + +SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/src/low-level-can-generator;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "0a3e354c3d81866e1a755367ab5592b3ced868bb" + +PV = "${AGLVERSION}" +S = "${WORKDIR}/git" + diff --git a/_to_remove/recipes-devtools/python/python3-asyncssh_2.3.0.bb b/_to_remove/recipes-devtools/python/python3-asyncssh_2.3.0.bb new file mode 100644 index 000000000..f764b5545 --- /dev/null +++ b/_to_remove/recipes-devtools/python/python3-asyncssh_2.3.0.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "\ +AsyncSSH is a Python package which provides an asynchronous client and \ +server implementation of the SSHv2 protocol on top of the Python \ +asyncio framework." +HOMEPAGE = "https://github.com/ronf/asyncssh" +LICENSE = "EPL-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=d9fc0efef5228704e7f5b37f27192723" + +SRC_URI[sha256sum] = "44bda34c7123f00c3df95d24e2dc8d43c4d17b456fbb8c434ef4f4a7ebb5265e" + +inherit pypi setuptools3 + +RDEPENDS:${PN} += "${PYTHON_PN}-asyncio ${PYTHON_PN}-cryptography" + +BBCLASSEXTEND = "native" diff --git a/_to_remove/recipes-devtools/python/python3-pytest-dependency_0.5.1.bb b/_to_remove/recipes-devtools/python/python3-pytest-dependency_0.5.1.bb new file mode 100644 index 000000000..5ff2d4ecf --- /dev/null +++ b/_to_remove/recipes-devtools/python/python3-pytest-dependency_0.5.1.bb @@ -0,0 +1,12 @@ +DESCRIPTION = "pytest-dependency manages dependencies of tests." +HOMEPAGE = "https://github.com/RKrahl/pytest-dependency" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://README.rst;md5=35b9938ae48d25e6b8306232e98463dd" + +SRC_URI[sha256sum] = "c2a892906192663f85030a6ab91304e508e546cddfe557d692d61ec57a1d946b" + +inherit pypi setuptools3 + +DEPENDS += "${PYTHON_PN}-pytest-native" + +BBCLASSEXTEND = "native" diff --git a/_to_remove/recipes-devtools/python/python3-pytest-reverse_1.0.1.bb b/_to_remove/recipes-devtools/python/python3-pytest-reverse_1.0.1.bb new file mode 100644 index 000000000..5ed9b1d9d --- /dev/null +++ b/_to_remove/recipes-devtools/python/python3-pytest-reverse_1.0.1.bb @@ -0,0 +1,12 @@ +DESCRIPTION = "pytest-reverse is a pytest plugin to reverse test order" +HOMEPAGE = "https://github.com/adamchainz/pytest-reverse" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=caf1f407ae86ecd57ab721dff94079b7" + +SRC_URI[sha256sum] = "40cbc47df8a262fed778e500f4d0b17d2d08ef8b9fbf899c0bab9488be192aac" + +inherit pypi setuptools3 + +DEPENDS += "${PYTHON_PN}-pytest-native" + +BBCLASSEXTEND = "native" diff --git a/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts new file mode 100755 index 000000000..1d1a5a059 --- /dev/null +++ b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts @@ -0,0 +1,48 @@ +#!/bin/sh +# +# Copyright 2017 IoT.bzh. + +# Author: Ronan Le Martret +# + +# The following script will run all the scriptlets found in #SYSCONFDIR#/agl-postinsts. + +agl_pi_dir="#SYSCONFDIR#/agl-postinsts" + +POSTINST_LOGGING=1 +LOGFILE=/var/log/agl-postinstall.log + +[ -e $LOGFILE ] && mv ${LOGFILE} ${LOGFILE}.old.$(date +%F--%H%M.%S) + +append_log=">>$LOGFILE 2>&1" + +exec_postinst_scriptlets() { + for i in `ls $agl_pi_dir`; do + i=$agl_pi_dir/$i + echo "Running postinst $i..." + [ "$POSTINST_LOGGING" = "1" ] && eval echo "Running postinst $i..." $append_log + if [ -x $i ]; then + eval sh -c $i $append_log + if [ $? -eq 0 ]; then + rm $i + else + echo "ERROR: postinst $i failed." + [ "$POSTINST_LOGGING" = "1" ] && eval echo "ERROR: postinst $i failed." $append_log + remove_agl_pi_dir=0 + fi + else + echo "ERROR: postinst $i do not exists or do not have execute permission." + [ "$POSTINST_LOGGING" = "1" ] && eval echo "ERROR: postinst $i do not exists or do not have execute permission." $append_log + remove_agl_pi_dir=0 + fi + done +} + +remove_agl_pi_dir=1 +exec_postinst_scriptlets +systemctl daemon-reload + +# since all postinstalls executed successfully, remove the postinstalls directory +if [ $remove_agl_pi_dir = 1 ]; then + rm -rf $agl_pi_dir +fi diff --git a/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service new file mode 100644 index 000000000..8f8667db6 --- /dev/null +++ b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service @@ -0,0 +1,17 @@ +[Unit] +Description=Run pending agl postinsts +DefaultDependencies=no +After=#SYSTEMD_SERVICE_AFTER# +Before=#SYSTEMD_SERVICE_BEFORE# +ConditionPathExists=#SYSCONFDIR#/agl-postinsts + +[Service] +Type=oneshot +StandardOutput=journal+console +ExecStart=#SBINDIR#/run-agl-postinsts +ExecStartPost=#BASE_BINDIR#/systemctl disable run-agl-postinsts.service +RemainAfterExit=No +TimeoutSec=0 + +[Install] +WantedBy=multi-user.target diff --git a/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb new file mode 100644 index 000000000..e7b916360 --- /dev/null +++ b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb @@ -0,0 +1,46 @@ +SUMMARY = "Runs AGL postinstall scripts on first boot of the target device" +SECTION = "devel" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = "file://run-agl-postinsts \ + file://run-agl-postinsts.service" + +S = "${WORKDIR}" + +inherit allarch systemd + +SYSTEMD_SERVICE:${PN} = "run-agl-postinsts.service" + +SYSTEMD_SERVICE_AFTER ?= "dbus.service cynagora.service" + +SYSTEMD_SERVICE_BEFORE ?= "systemd-user-sessions.service" + +do_configure() { + : +} + +do_compile () { + : +} + +do_install() { + install -d ${D}${sbindir} + install -m 0755 ${WORKDIR}/run-agl-postinsts ${D}${sbindir}/ + + install -d ${D}${systemd_unitdir}/system/ + install -m 0644 ${WORKDIR}/run-agl-postinsts.service ${D}${systemd_unitdir}/system/ + + sed -i -e 's:#SYSCONFDIR#:${sysconfdir}:g' \ + -e 's:#SBINDIR#:${sbindir}:g' \ + -e 's:#BASE_BINDIR#:${base_bindir}:g' \ + -e 's:#LOCALSTATEDIR#:${localstatedir}:g' \ + ${D}${sbindir}/run-agl-postinsts \ + ${D}${systemd_unitdir}/system/run-agl-postinsts.service + + sed -i -e 's:#SYSTEMD_SERVICE_AFTER#:${SYSTEMD_SERVICE_AFTER}:g' \ + -e 's:#SYSTEMD_SERVICE_BEFORE#:${SYSTEMD_SERVICE_BEFORE}:g' \ + ${D}${systemd_unitdir}/system/run-agl-postinsts.service +} + diff --git a/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend new file mode 100644 index 000000000..32e3d6b88 --- /dev/null +++ b/_to_remove/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend @@ -0,0 +1 @@ +SYSTEMD_SERVICE_AFTER:append = " afm-system-daemon.service" diff --git a/_to_remove/recipes-graphics/hmi-debug/files/hmi-debug b/_to_remove/recipes-graphics/hmi-debug/files/hmi-debug new file mode 100644 index 000000000..fee9573b7 --- /dev/null +++ b/_to_remove/recipes-graphics/hmi-debug/files/hmi-debug @@ -0,0 +1,8 @@ +#You can select log level of HMI framework +#1 ERROR +#2 WARNING +#3 NOTICE +#4 INFO +#5 DEBUG +#If you want to output debug log about hmi-framework, please uncomment the following. +#USE_HMI_DEBUG=5 diff --git a/_to_remove/recipes-graphics/hmi-debug/hmi-debug_git.bb b/_to_remove/recipes-graphics/hmi-debug/hmi-debug_git.bb new file mode 100644 index 000000000..84dff74ae --- /dev/null +++ b/_to_remove/recipes-graphics/hmi-debug/hmi-debug_git.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "Configurations for HMI framework" + +SECTION = "HMI" +LICENSE = "Apache-2.0" + +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +SRC_URI = " \ + file://hmi-debug \ +" + +FILES:${PN} = " \ + ${sysconfdir}/afm/unit.env.d \ +" + +do_install() { + install -d ${D}${sysconfdir}/afm/unit.env.d + install -m 644 ${WORKDIR}/hmi-debug ${D}${sysconfdir}/afm/unit.env.d +} diff --git a/_to_remove/recipes-graphics/libhomescreen/libhomescreen_git.bb b/_to_remove/recipes-graphics/libhomescreen/libhomescreen_git.bb new file mode 100644 index 000000000..483b11eb7 --- /dev/null +++ b/_to_remove/recipes-graphics/libhomescreen/libhomescreen_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "AGL Home Screen Library" +DESCRIPTION = "libhomescreen" +HOMEPAGE = "http://docs.automotivelinux.org" +LICENSE = "Apache-2.0" +SECTION = "libs" + +BBCLASSEXTEND = " nativesdk" + +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +DEPENDS = "af-binder json-c" + +inherit cmake + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/libhomescreen.git;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "0d65d54ba63508c0ef545d02e94d5702f9c8ecb3" +S = "${WORKDIR}/git" + +RDEPENDS:${PN} = "agl-service-homescreen" diff --git a/_to_remove/recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb b/_to_remove/recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb new file mode 100644 index 000000000..a9f1ccf37 --- /dev/null +++ b/_to_remove/recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb @@ -0,0 +1,13 @@ +SUMMARY = "A wrapper library of libhomescreen for Qt Application in AGL" +SECTION = "libs" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93" + +DEPENDS = "qtbase libhomescreen" +RDEPENDS:${PN} = "libhomescreen" + +inherit qmake5 + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/libqthomescreen.git;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "b218476402bceda7eb42d41064552a7261ff3205" +S = "${WORKDIR}/git" diff --git a/_to_remove/recipes-graphics/wayland/weston-init.bbappend b/_to_remove/recipes-graphics/wayland/weston-init.bbappend new file mode 100644 index 000000000..8af3184af --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init.bbappend @@ -0,0 +1 @@ +require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'weston-init_agldemo.inc', '', d)} diff --git a/_to_remove/recipes-graphics/wayland/weston-init/tmpfiles.conf.in b/_to_remove/recipes-graphics/wayland/weston-init/tmpfiles.conf.in new file mode 100644 index 000000000..c4b302faf --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/tmpfiles.conf.in @@ -0,0 +1,6 @@ +# This file is distributed to create weston XDG_RUNTIME_DIR (/run/deamon/@WESTONUSER@) +# +# See tmpfiles.d(5) for details + +d /run/platform/ 0775 root root - +d /run/platform/@WESTONUSER@ 0770 @WESTONUSER@ @WESTONGROUP@ - diff --git a/_to_remove/recipes-graphics/wayland/weston-init/weston-dep.conf.in b/_to_remove/recipes-graphics/wayland/weston-init/weston-dep.conf.in new file mode 100644 index 000000000..2b8102096 --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/weston-dep.conf.in @@ -0,0 +1,3 @@ +[Unit] +Requires=@WESTON_DRM_DEVICE@ +After=@WESTON_DRM_DEVICE@ diff --git a/_to_remove/recipes-graphics/wayland/weston-init/weston.conf.in b/_to_remove/recipes-graphics/wayland/weston-init/weston.conf.in new file mode 100644 index 000000000..9c3df052d --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/weston.conf.in @@ -0,0 +1,12 @@ +[Service] +Type=notify +Environment="XDG_RUNTIME_DIR=@XDG_RUNTIME_DIR@" +# Note that clearing PAMName (thus not having PAMName=login) disables +# logind support for the session, which allows setting XDG_RUNTIME_DIR +# to something other than /run/user/% (as is done above). +# Without systemd-logind support, weston needs to be patched to allow +# its direct launcher to work for non-root users in this scenario. +PAMName= +ExecStart= +ExecStart=@WESTONSTART@ +SmackProcessLabel=System::Weston diff --git a/_to_remove/recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in b/_to_remove/recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in new file mode 100644 index 000000000..585db6be8 --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in @@ -0,0 +1,2 @@ +SUBSYSTEM=="gpu_class", MODE="0660", GROUP="@WESTONGROUP@", SECLABEL{smack}="*" + diff --git a/_to_remove/recipes-graphics/wayland/weston-init/zz-dri.rules.in b/_to_remove/recipes-graphics/wayland/weston-init/zz-dri.rules.in new file mode 100644 index 000000000..51c68c303 --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/zz-dri.rules.in @@ -0,0 +1 @@ +SUBSYSTEM=="drm", MODE="0660", GROUP="@WESTONGROUP@", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston@@WESTONUSER@.service" diff --git a/_to_remove/recipes-graphics/wayland/weston-init/zz-input.rules.in b/_to_remove/recipes-graphics/wayland/weston-init/zz-input.rules.in new file mode 100644 index 000000000..fb3e677f4 --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/zz-input.rules.in @@ -0,0 +1 @@ +SUBSYSTEM=="input", MODE="0660", GROUP="input", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston@@WESTONUSER@.service" diff --git a/_to_remove/recipes-graphics/wayland/weston-init/zz-tty.rules.in b/_to_remove/recipes-graphics/wayland/weston-init/zz-tty.rules.in new file mode 100644 index 000000000..e5ce4b553 --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/zz-tty.rules.in @@ -0,0 +1 @@ +SUBSYSTEM=="tty", KERNEL=="tty7", OWNER="@WESTONUSER@", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston@@WESTONUSER@.service" diff --git a/_to_remove/recipes-graphics/wayland/weston-init/zz-video.rules.in b/_to_remove/recipes-graphics/wayland/weston-init/zz-video.rules.in new file mode 100644 index 000000000..1dfa3c18c --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init/zz-video.rules.in @@ -0,0 +1 @@ +SUBSYSTEM=="video4linux", MODE="0660", KERNEL=="video*", GROUP="display", SECLABEL{smack}="*", TAG+="systemd" diff --git a/_to_remove/recipes-graphics/wayland/weston-init_agldemo.inc b/_to_remove/recipes-graphics/wayland/weston-init_agldemo.inc new file mode 100644 index 000000000..4815079f2 --- /dev/null +++ b/_to_remove/recipes-graphics/wayland/weston-init_agldemo.inc @@ -0,0 +1,81 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/weston-init:" + +inherit agl-graphical + +AGL_DEFAULT_WESTONSTART ??= "/usr/bin/agl-compositor --config ${sysconfdir}/xdg/weston/weston.ini" +WESTON_USE_PIXMAN ??= "0" + +WESTONSTART ??= "${AGL_DEFAULT_WESTONSTART} ${WESTONARGS}" +WESTONSTART:append = " ${@bb.utils.contains("IMAGE_FEATURES", "debug-tweaks", " --log=${DISPLAY_XDG_RUNTIME_DIR}/compositor.log", "",d)}" +WESTONSTART:append = " ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", " --debug", "",d)}" +WESTONSTART:append = " ${@bb.utils.contains("WESTON_USE_PIXMAN", "1", " --use-pixman", "",d)}" + +# Systemd name of DRM device to have weston/agl-compositor startup depend +# upon, if required. Currently only x86-64 seems to need a dependency to +# avoid failures due to racing with i915 driver init on e.g. UpSquared. +# It seems safer for now to only apply it there rather than doing a blanket +# default everywhere that might then need to be over-ridden for vendor BSPs. +WESTON_DRM_DEVICE ?= "" + +WIFILES = " \ + file://weston.conf.in \ + file://weston-dep.conf.in \ + file://tmpfiles.conf.in \ + file://zz-dri.rules.in \ + file://zz-input.rules.in \ + file://zz-tty.rules.in \ + file://zz-video.rules.in \ +" + +WIFILES:append:imx = " \ + file://zz-dri-imx.rules.in \ +" + +SRC_URI:append = " ${WIFILES}" + +do_install:append() { + # Remove upstream weston udev rules just to be safe + rm -f ${D}${sysconfdir}/udev/rules.d/71-weston-drm.rules + + # Process ".in" files + files=$(echo ${WIFILES} | sed s,file://,,g) + for f in ${files}; do + g=${f%.in} + if [ "${f}" != "${g}" ]; then + sed -e "s,@WESTONUSER@,${WESTONUSER},g" \ + -e "s,@WESTONGROUP@,${WESTONGROUP},g" \ + -e "s,@XDG_RUNTIME_DIR@,${DISPLAY_XDG_RUNTIME_DIR},g" \ + -e "s,@WESTONSTART@,${WESTONSTART},g" \ + -e "s,@WESTON_DRM_DEVICE@,${WESTON_DRM_DEVICE},g" \ + ${WORKDIR}/${f} > ${WORKDIR}/${g} + fi + done + + # Install weston drop-in + install -d ${D}${systemd_system_unitdir}/weston@.service.d + install -m644 ${WORKDIR}/weston.conf ${D}/${systemd_system_unitdir}/weston@.service.d/weston-init.conf + + # Install weston DRM device dependency drop-in if required + if [ -n "${WESTON_DRM_DEVICE}" ]; then + install -m 0644 ${WORKDIR}/weston-dep.conf ${D}/${systemd_system_unitdir}/weston@.service.d/ + fi + + # Install tmpfiles drop-in + install -d ${D}${libdir}/tmpfiles.d + install -m644 ${WORKDIR}/tmpfiles.conf ${D}${libdir}/tmpfiles.d/weston-init.conf + + # Install udev rules + install -d ${D}${sysconfdir}/udev/rules.d + for f in ${files}; do + g=${f%.in} + h=${g%.rules} + if [ "${g}" != "${h}" ]; then + install -m644 ${WORKDIR}/${g} ${D}${sysconfdir}/udev/rules.d + fi + done +} + +FILES:${PN} += " \ + ${libdir}/tmpfiles.d/ \ + ${systemd_system_unitdir}/weston@.service.d/ \ +" diff --git a/_to_remove/recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch b/_to_remove/recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch new file mode 100644 index 000000000..dd811c81b --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch @@ -0,0 +1,472 @@ +From 9cb7cb85f59509ac445116e9458c502cf6cb74e6 Mon Sep 17 00:00:00 2001 +From: Christian Gromm +Date: Thu, 9 Nov 2017 13:20:23 +0100 +Subject: [PATCH 2/2] src: most: add auto conf feature + +This patch adds the auto configuration feature to the driver +sources. It is needed to have the driver configured automatically +upon start up w/o the need for userspace to set up sysfs. + +Signed-off-by: Christian Gromm +--- + driver/Makefile | 3 + + driver/default_conf.c | 162 ++++++++++++++++++++++++++++++++++++++++++++++ + driver/include/mostcore.h | 64 ++++++++++++++++++ + driver/mostcore/core.c | 120 ++++++++++++++++++++++++++++------ + 4 files changed, 331 insertions(+), 18 deletions(-) + create mode 100644 driver/default_conf.c + +diff --git a/Makefile b/Makefile +index e77a4b6..6d74ebe 100644 +--- a/Makefile ++++ b/Makefile +@@ -6,6 +6,9 @@ obj-m := mostcore.o + mostcore-y := mostcore/core.o + CFLAGS_core.o := -I$(src)/include/ + ++obj-m += default_conf.o ++CFLAGL_default_conf.o := -I$(src)/include ++ + obj-m += aim_cdev.o + aim_cdev-y := aim-cdev/cdev.o + CFLAGS_cdev.o := -I$(src)/include/ +diff --git a/default_conf.c b/default_conf.c +new file mode 100644 +index 0000000..adb1786 +--- /dev/null ++++ b/default_conf.c +@@ -0,0 +1,162 @@ ++/* ++ * default_conf.c - Default configuration for the MOST channels. ++ * ++ * Copyright (C) 2017, Microchip Technology Germany II GmbH & Co. KG ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * This file is licensed under GPLv2. ++ */ ++ ++#include "include/mostcore.h" ++#include ++ ++static struct most_config_probe config_probes[] = { ++ ++ /* OS81118 Control */ ++ { ++ .ch_name = "ep8f", ++ .cfg = { ++ .direction = MOST_CH_RX, ++ .data_type = MOST_CH_CONTROL, ++ .num_buffers = 16, ++ .buffer_size = 64, ++ }, ++ .aim_name = "cdev", ++ .aim_param = "inic-usb-crx", ++ }, ++ { ++ .ch_name = "ep0f", ++ .cfg = { ++ .direction = MOST_CH_TX, ++ .data_type = MOST_CH_CONTROL, ++ .num_buffers = 16, ++ .buffer_size = 64, ++ }, ++ .aim_name = "cdev", ++ .aim_param = "inic-usb-ctx", ++ }, ++ /* OS81118 Async */ ++ { ++ .ch_name = "ep8e", ++ .cfg = { ++ .direction = MOST_CH_RX, ++ .data_type = MOST_CH_ASYNC, ++ .num_buffers = 20, ++ .buffer_size = 1522, ++ }, ++ .aim_name = "networking", ++ .aim_param = "inic-usb-arx", ++ }, ++ { ++ .ch_name = "ep0e", ++ .cfg = { ++ .direction = MOST_CH_TX, ++ .data_type = MOST_CH_ASYNC, ++ .num_buffers = 20, ++ .buffer_size = 1522, ++ }, ++ .aim_name = "networking", ++ .aim_param = "inic-usb-atx", ++ }, ++ /* OS81210 Control */ ++ { ++ .ch_name = "ep87", ++ .cfg = { ++ .direction = MOST_CH_RX, ++ .data_type = MOST_CH_CONTROL, ++ .num_buffers = 16, ++ .buffer_size = 64, ++ }, ++ .aim_name = "cdev", ++ .aim_param = "inic-usb-crx", ++ }, ++ { ++ .ch_name = "ep07", ++ .cfg = { ++ .direction = MOST_CH_TX, ++ .data_type = MOST_CH_CONTROL, ++ .num_buffers = 16, ++ .buffer_size = 64, ++ }, ++ .aim_name = "cdev", ++ .aim_param = "inic-usb-ctx", ++ }, ++ /* OS81210 Async */ ++ { ++ .ch_name = "ep86", ++ .cfg = { ++ .direction = MOST_CH_RX, ++ .data_type = MOST_CH_ASYNC, ++ .num_buffers = 20, ++ .buffer_size = 1522, ++ }, ++ .aim_name = "networking", ++ .aim_param = "inic-usb-arx", ++ }, ++ { ++ .ch_name = "ep06", ++ .cfg = { ++ .direction = MOST_CH_TX, ++ .data_type = MOST_CH_ASYNC, ++ .num_buffers = 20, ++ .buffer_size = 1522, ++ }, ++ .aim_name = "networking", ++ .aim_param = "inic-usb-atx", ++ }, ++ /* Streaming channels (common for all INICs) */ ++ { ++ .ch_name = "ep01", ++ .cfg = { ++ .direction = MOST_CH_TX, ++ .data_type = MOST_CH_SYNC, ++ .num_buffers = 8, ++ .buffer_size = 2 * 12 * 42, ++ .subbuffer_size = 12, ++ .packets_per_xact = 42, ++ }, ++ .aim_name = "sound", ++ .aim_param = "ep01-6ch.6x16", ++ }, ++ { ++ .ch_name = "ep02", ++ .cfg = { ++ .direction = MOST_CH_TX, ++ .data_type = MOST_CH_ISOC, ++ .num_buffers = 8, ++ .buffer_size = 40 * 188, ++ .subbuffer_size = 188, ++ .packets_per_xact = 2, ++ }, ++ .aim_name = "cdev", ++ .aim_param = "inic-usb-itx1", ++ }, ++ ++ /* sentinel */ ++ {} ++}; ++ ++static struct most_config_set config_set = { ++ .probes = config_probes ++}; ++ ++static int __init mod_init(void) ++{ ++ most_register_config_set(&config_set); ++ return 0; ++} ++ ++static void __exit mod_exit(void) ++{ ++ most_deregister_config_set(&config_set); ++} ++ ++module_init(mod_init); ++module_exit(mod_exit); ++MODULE_LICENSE("GPL"); ++MODULE_AUTHOR("Andrey Shvetsov "); ++MODULE_DESCRIPTION("Default configuration for the MOST channels"); +diff --git a/include/mostcore.h b/include/mostcore.h +index dc87121..3c00efb 100644 +--- a/include/mostcore.h ++++ b/include/mostcore.h +@@ -145,6 +145,39 @@ struct most_channel_config { + u16 dbr_size; + }; + ++/** ++ * struct most_config_probe - matching rule, channel configuration and ++ * the optional AIM name used for the automatic configuration and linking ++ * of the channel ++ * @dev_name: optional matching device id ++ * ("usb_device 1-1:1.0," "dim2-12345678", etc.) ++ * @ch_name: matching channel name ("ep8f", "ca2", etc.) ++ * @cfg: configuration that will be applied for the found channel ++ * @aim_name: optional name of the AIM that will be linked to the channel ++ * ("cdev", "networking", "v4l", "sound") ++ * @aim_param: AIM dependent parameter (it is the character device name ++ * for the cdev AIM, PCM format for the audio AIM, etc.) ++ */ ++struct most_config_probe { ++ const char *dev_name; ++ const char *ch_name; ++ struct most_channel_config cfg; ++ const char *aim_name; ++ const char *aim_param; ++}; ++ ++/** ++ * struct most_config_set - the configuration set containing ++ * several automatic configurations for the different channels ++ * @probes: list of the matching rules and the configurations, ++ * that must be ended with the empty structure ++ * @list: list head used by the MostCore ++ */ ++struct most_config_set { ++ const struct most_config_probe *probes; ++ struct list_head list; ++}; ++ + /* + * struct mbo - MOST Buffer Object. + * @context: context for core completion handler +@@ -285,6 +318,37 @@ struct most_aim { + }; + + /** ++ * most_register_config_set - registers the configuration set ++ * ++ * @cfg_set: configuration set to be registered for the future probes ++ * ++ * The function registers the given configuration set. ++ * ++ * It is possible to register or deregister several configuration sets ++ * independently. Different configuration sets may contain the ++ * overlapped matching rules but later registered configuration set has ++ * the higher priority over the prior registered set. ++ * ++ * The only the first matched configuration is applied for each ++ * channel. ++ * ++ * The configuration for the channel is applied at the time of ++ * registration of the parent most_interface. ++ */ ++void most_register_config_set(struct most_config_set *cfg_set); ++ ++/** ++ * most_deregister_config_set - deregisters the prior registered ++ * configuration set ++ * ++ * @cfg_set: configuration set to be deregistered ++ * ++ * The calling of this function does not change the current ++ * configuration of the channels. ++ */ ++void most_deregister_config_set(struct most_config_set *cfg_set); ++ ++/** + * most_register_interface - Registers instance of the interface. + * @iface: Pointer to the interface instance description. + * +diff --git a/mostcore/core.c b/mostcore/core.c +index 9e0a352..6035cf0 100644 +--- a/mostcore/core.c ++++ b/mostcore/core.c +@@ -36,6 +36,8 @@ static struct class *most_class; + static struct device *core_dev; + static struct ida mdev_id; + static int dummy_num_buffers; ++static struct list_head config_probes; ++struct mutex config_probes_mt; /* config_probes */ + + struct most_c_aim_obj { + struct most_aim *ptr; +@@ -918,6 +920,30 @@ most_c_obj *get_channel_by_name(char *mdev, char *mdev_ch) + return c; + } + ++static int link_channel_to_aim(struct most_c_obj *c, struct most_aim *aim, ++ char *aim_param) ++{ ++ int ret; ++ struct most_aim **aim_ptr; ++ ++ if (!c->aim0.ptr) ++ aim_ptr = &c->aim0.ptr; ++ else if (!c->aim1.ptr) ++ aim_ptr = &c->aim1.ptr; ++ else ++ return -ENOSPC; ++ ++ *aim_ptr = aim; ++ ret = aim->probe_channel(c->iface, c->channel_id, ++ &c->cfg, &c->kobj, aim_param); ++ if (ret) { ++ *aim_ptr = NULL; ++ return ret; ++ } ++ ++ return 0; ++} ++ + /** + * add_link_store - store() function for add_link attribute + * @aim_obj: pointer to AIM object +@@ -946,45 +972,33 @@ static ssize_t add_link_store(struct most_aim_obj *aim_obj, + size_t len) + { + struct most_c_obj *c; +- struct most_aim **aim_ptr; + char buffer[STRING_SIZE]; + char *mdev; + char *mdev_ch; +- char *mdev_devnod; ++ char *aim_param; + char devnod_buf[STRING_SIZE]; + int ret; + size_t max_len = min_t(size_t, len + 1, STRING_SIZE); + + strlcpy(buffer, buf, max_len); + +- ret = split_string(buffer, &mdev, &mdev_ch, &mdev_devnod); ++ ret = split_string(buffer, &mdev, &mdev_ch, &aim_param); + if (ret) + return ret; + +- if (!mdev_devnod || *mdev_devnod == 0) { ++ if (!aim_param || *aim_param == 0) { + snprintf(devnod_buf, sizeof(devnod_buf), "%s-%s", mdev, + mdev_ch); +- mdev_devnod = devnod_buf; ++ aim_param = devnod_buf; + } + + c = get_channel_by_name(mdev, mdev_ch); + if (IS_ERR(c)) + return -ENODEV; + +- if (!c->aim0.ptr) +- aim_ptr = &c->aim0.ptr; +- else if (!c->aim1.ptr) +- aim_ptr = &c->aim1.ptr; +- else +- return -ENOSPC; +- +- *aim_ptr = aim_obj->driver; +- ret = aim_obj->driver->probe_channel(c->iface, c->channel_id, +- &c->cfg, &c->kobj, mdev_devnod); +- if (ret) { +- *aim_ptr = NULL; ++ ret = link_channel_to_aim(c, aim_obj->driver, aim_param); ++ if (ret) + return ret; +- } + + return len; + } +@@ -1679,6 +1693,73 @@ int most_deregister_aim(struct most_aim *aim) + } + EXPORT_SYMBOL_GPL(most_deregister_aim); + ++void most_register_config_set(struct most_config_set *cfg_set) ++{ ++ mutex_lock(&config_probes_mt); ++ list_add(&cfg_set->list, &config_probes); ++ mutex_unlock(&config_probes_mt); ++} ++EXPORT_SYMBOL(most_register_config_set); ++ ++void most_deregister_config_set(struct most_config_set *cfg_set) ++{ ++ mutex_lock(&config_probes_mt); ++ list_del(&cfg_set->list); ++ mutex_unlock(&config_probes_mt); ++} ++EXPORT_SYMBOL(most_deregister_config_set); ++ ++static int probe_aim(struct most_c_obj *c, ++ const char *aim_name, const char *aim_param) ++{ ++ struct most_aim_obj *aim_obj; ++ char buf[STRING_SIZE]; ++ ++ list_for_each_entry(aim_obj, &aim_list, list) { ++ if (!strcmp(aim_obj->driver->name, aim_name)) { ++ strlcpy(buf, aim_param ? aim_param : "", sizeof(buf)); ++ return link_channel_to_aim(c, aim_obj->driver, buf); ++ } ++ } ++ return 0; ++} ++ ++static bool probe_config_set(struct most_c_obj *c, ++ const char *dev_name, const char *ch_name, ++ const struct most_config_probe *p) ++{ ++ int err; ++ ++ for (; p->ch_name; p++) { ++ if ((p->dev_name && strcmp(dev_name, p->dev_name)) || ++ strcmp(ch_name, p->ch_name)) ++ continue; ++ ++ c->cfg = p->cfg; ++ if (p->aim_name) { ++ err = probe_aim(c, p->aim_name, p->aim_param); ++ if (err) ++ pr_err("failed to autolink %s to %s: %d\n", ++ ch_name, p->aim_name, err); ++ } ++ return true; ++ } ++ return false; ++} ++ ++static void find_configuration(struct most_c_obj *c, const char *dev_name, ++ const char *ch_name) ++{ ++ struct most_config_set *plist; ++ ++ mutex_lock(&config_probes_mt); ++ list_for_each_entry(plist, &config_probes, list) { ++ if (probe_config_set(c, dev_name, ch_name, plist->probes)) ++ break; ++ } ++ mutex_unlock(&config_probes_mt); ++} ++ + /** + * most_register_interface - registers an interface with core + * @iface: pointer to the instance of the interface description. +@@ -1777,6 +1858,7 @@ struct kobject *most_register_interface(struct most_interface *iface) + mutex_init(&c->start_mutex); + mutex_init(&c->nq_mutex); + list_add_tail(&c->list, &inst->channel_list); ++ find_configuration(c, iface->description, channel_name); + } + pr_info("registered new MOST device mdev%d (%s)\n", + inst->dev_id, iface->description); +@@ -1880,6 +1962,8 @@ static int __init most_init(void) + pr_info("init()\n"); + INIT_LIST_HEAD(&instance_list); + INIT_LIST_HEAD(&aim_list); ++ INIT_LIST_HEAD(&config_probes); ++ mutex_init(&config_probes_mt); + ida_init(&mdev_id); + + err = bus_register(&most_bus); +-- +2.7.4 + diff --git a/_to_remove/recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch b/_to_remove/recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch new file mode 100644 index 000000000..4703844a1 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch @@ -0,0 +1,26 @@ +From b269994be937cbb31c0d73ecc899ca8a545a6a4a Mon Sep 17 00:00:00 2001 +From: Christian Gromm +Date: Mon, 4 Sep 2017 11:09:17 +0200 +Subject: [PATCH 3/5] core: remove kernel log for MBO status + +Signed-off-by: Christian Gromm +--- + driver/mostcore/core.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/mostcore/core.c b/mostcore/core.c +index 931efb9..595becc 100644 +--- a/mostcore/core.c ++++ b/mostcore/core.c +@@ -1348,8 +1348,6 @@ static void most_write_completion(struct mbo *mbo) + BUG_ON((!mbo) || (!mbo->context)); + + c = mbo->context; +- if (mbo->status == MBO_E_INVAL) +- pr_info("WARN: Tx MBO status: invalid\n"); + if (unlikely(c->is_poisoned || (mbo->status == MBO_E_CLOSE))) + trash_mbo(mbo); + else +-- +2.7.4 + diff --git a/_to_remove/recipes-kernel/most/files/0004-most-video-set-device_caps.patch b/_to_remove/recipes-kernel/most/files/0004-most-video-set-device_caps.patch new file mode 100644 index 000000000..010d4b0d0 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0004-most-video-set-device_caps.patch @@ -0,0 +1,25 @@ +From a5fd2ae8d4a3b2a8f7a33a4ea469ea7ee0d946ef Mon Sep 17 00:00:00 2001 +From: Christian Gromm +Date: Mon, 4 Sep 2017 15:36:38 +0200 +Subject: [PATCH 4/5] most: video: set device_caps + +Signed-off-by: Christian Gromm +--- + driver/aim-v4l2/video.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/aim-v4l2/video.c b/aim-v4l2/video.c +index e074841..6405a03 100644 +--- a/aim-v4l2/video.c ++++ b/aim-v4l2/video.c +@@ -263,6 +263,7 @@ static int vidioc_querycap(struct file *file, void *priv, + snprintf(cap->bus_info, sizeof(cap->bus_info), + "%s", mdev->iface->description); + ++ cap->device_caps = + cap->capabilities = + V4L2_CAP_READWRITE | + V4L2_CAP_TUNER | +-- +2.7.4 + diff --git a/_to_remove/recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch b/_to_remove/recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch new file mode 100644 index 000000000..ebaee9e14 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch @@ -0,0 +1,25 @@ +From 7518453386ad3e82008186a6c9ca86ed8c136801 Mon Sep 17 00:00:00 2001 +From: Christian Gromm +Date: Mon, 4 Sep 2017 16:08:38 +0200 +Subject: [PATCH 5/5] most: video: set V4L2_CAP_DEVICE_CAPS flag + +Signed-off-by: Christian Gromm +--- + driver/aim-v4l2/video.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/aim-v4l2/video.c b/aim-v4l2/video.c +index 6405a03..db75d4d 100644 +--- a/aim-v4l2/video.c ++++ b/aim-v4l2/video.c +@@ -265,6 +265,7 @@ static int vidioc_querycap(struct file *file, void *priv, + + cap->device_caps = + cap->capabilities = ++ V4L2_CAP_DEVICE_CAPS | + V4L2_CAP_READWRITE | + V4L2_CAP_TUNER | + V4L2_CAP_VIDEO_CAPTURE; +-- +2.7.4 + diff --git a/_to_remove/recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch b/_to_remove/recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch new file mode 100644 index 000000000..59c6ae671 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch @@ -0,0 +1,186 @@ +From 63bcd9b421ae7927948bffec9566db47f40ea290 Mon Sep 17 00:00:00 2001 +From: Andrey Shvetsov +Date: Tue, 30 Jan 2018 17:34:09 +0100 +Subject: [PATCH] staging: most: dim2: fix startup sequence + +Platform specific initializations (pdata->init) must be done before DIM2 +IP module startup (dim_startup). + +Signed-off-by: Andrey Shvetsov +--- + hdm-dim2/dim2_hdm.c | 90 +++++++++++++++++++++++++++++++++++++++--------------------------------------------------- + 1 file changed, 39 insertions(+), 51 deletions(-) + +diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c +index 893b8e4..e4629a5 100644 +--- a/hdm-dim2/dim2_hdm.c ++++ b/hdm-dim2/dim2_hdm.c +@@ -155,38 +155,6 @@ void dimcb_on_error(u8 error_id, const char *error_message) + } + + /** +- * startup_dim - initialize the dim2 interface +- * @pdev: platform device +- */ +-static int startup_dim(struct platform_device *pdev) +-{ +- struct dim2_hdm *dev = platform_get_drvdata(pdev); +- struct dim2_platform_data *pdata = pdev->dev.platform_data; +- u8 hal_ret; +- int ret; +- +- if (!pdata) { +- pr_err("missing platform data\n"); +- return -EINVAL; +- } +- +- ret = pdata->init ? pdata->init(pdata, dev->io_base) : 0; +- if (ret) +- return ret; +- +- pr_info("sync: num of frames per sub-buffer: %u\n", fcnt); +- hal_ret = dim_startup(dev->io_base, pdata->clk_speed, fcnt); +- if (hal_ret != DIM_NO_ERROR) { +- pr_err("dim_startup failed: %d\n", hal_ret); +- if (pdata && pdata->destroy) +- pdata->destroy(pdata); +- return -ENODEV; +- } +- +- return 0; +-} +- +-/** + * try_start_dim_transfer - try to transfer a buffer on a channel + * @hdm_ch: channel specific data + * +@@ -727,10 +695,12 @@ static void dma_free(struct mbo *mbo, u32 size) + */ + static int dim2_probe(struct platform_device *pdev) + { ++ struct dim2_platform_data *pdata = pdev->dev.platform_data; + struct dim2_hdm *dev; + struct resource *res; + int ret, i; + struct kobject *kobj; ++ u8 hal_ret; + int irq; + + dev = devm_kzalloc(&pdev->dev, sizeof(*dev), GFP_KERNEL); +@@ -745,38 +715,59 @@ static int dim2_probe(struct platform_device *pdev) + if (IS_ERR(dev->io_base)) + return PTR_ERR(dev->io_base); + ++ if (!pdata) { ++ dev_err(&pdev->dev, "missing platform data\n"); ++ return -EINVAL; ++ } ++ ++ ret = pdata->init ? pdata->init(pdata, dev->io_base) : 0; ++ if (ret) ++ return ret; ++ ++ dev_info(&pdev->dev, "sync: num of frames per sub-buffer: %u\n", fcnt); ++ hal_ret = dim_startup(dev->io_base, pdata->clk_speed, fcnt); ++ if (hal_ret != DIM_NO_ERROR) { ++ dev_err(&pdev->dev, "dim_startup failed: %d\n", hal_ret); ++ ret = -ENODEV; ++ goto err_bsp_destroy; ++ } ++ + irq = platform_get_irq(pdev, 0); + if (irq < 0) { + dev_err(&pdev->dev, "failed to get ahb0_int irq: %d\n", irq); +- return irq; ++ ret = irq; ++ goto err_shutdown_dim; + } + + ret = devm_request_irq(&pdev->dev, irq, dim2_ahb_isr, 0, + "dim2_ahb0_int", dev); + if (ret) { + dev_err(&pdev->dev, "failed to request ahb0_int irq %d\n", irq); +- return ret; ++ goto err_shutdown_dim; + } + + irq = platform_get_irq(pdev, 1); + if (irq < 0) { + dev_err(&pdev->dev, "failed to get mlb_int irq: %d\n", irq); +- return irq; ++ ret = irq; ++ goto err_shutdown_dim; + } + + ret = devm_request_irq(&pdev->dev, irq, dim2_mlb_isr, 0, + "dim2_mlb_int", dev); + if (ret) { + dev_err(&pdev->dev, "failed to request mlb_int irq %d\n", irq); +- return ret; ++ goto err_shutdown_dim; + } + + init_waitqueue_head(&dev->netinfo_waitq); + dev->deliver_netinfo = 0; +- dev->netinfo_task = kthread_run(&deliver_netinfo_thread, (void *)dev, ++ dev->netinfo_task = kthread_run(&deliver_netinfo_thread, dev, + "dim2_netinfo"); +- if (IS_ERR(dev->netinfo_task)) +- return PTR_ERR(dev->netinfo_task); ++ if (IS_ERR(dev->netinfo_task)) { ++ ret = PTR_ERR(dev->netinfo_task); ++ goto err_shutdown_dim; ++ } + + for (i = 0; i < DMA_CHANNELS; i++) { + struct most_channel_capability *cap = dev->capabilities + i; +@@ -833,20 +824,17 @@ static int dim2_probe(struct platform_device *pdev) + if (ret) + goto err_unreg_iface; + +- ret = startup_dim(pdev); +- if (ret) { +- dev_err(&pdev->dev, "failed to initialize DIM2\n"); +- goto err_destroy_bus; +- } +- + return 0; + +-err_destroy_bus: +- dim2_sysfs_destroy(&dev->bus); + err_unreg_iface: + most_deregister_interface(&dev->most_iface); + err_stop_thread: + kthread_stop(dev->netinfo_task); ++err_shutdown_dim: ++ dim_shutdown(); ++err_bsp_destroy: ++ if (pdata && pdata->destroy) ++ pdata->destroy(pdata); + + return ret; + } +@@ -863,6 +851,10 @@ static int dim2_remove(struct platform_device *pdev) + struct dim2_platform_data *pdata = pdev->dev.platform_data; + unsigned long flags; + ++ dim2_sysfs_destroy(&dev->bus); ++ most_deregister_interface(&dev->most_iface); ++ kthread_stop(dev->netinfo_task); ++ + spin_lock_irqsave(&dim_lock, flags); + dim_shutdown(); + spin_unlock_irqrestore(&dim_lock, flags); +@@ -870,10 +862,6 @@ static int dim2_remove(struct platform_device *pdev) + if (pdata && pdata->destroy) + pdata->destroy(pdata); + +- dim2_sysfs_destroy(&dev->bus); +- most_deregister_interface(&dev->most_iface); +- kthread_stop(dev->netinfo_task); +- + /* + * break link to local platform_device_id struct + * to prevent crash by unload platform device module +-- +libgit2 0.26.0 diff --git a/_to_remove/recipes-kernel/most/files/0007-dim2-use-device-tree.patch b/_to_remove/recipes-kernel/most/files/0007-dim2-use-device-tree.patch new file mode 100644 index 000000000..679fab79c --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0007-dim2-use-device-tree.patch @@ -0,0 +1,378 @@ +From 8e16207392cd715ea88f6780981a3d55ab005588 Mon Sep 17 00:00:00 2001 +From: Andrey Shvetsov +Date: Mon, 12 Feb 2018 12:23:37 +0100 +Subject: [PATCH] staging: most: dim2: use device tree + +Current dim2 driver expects the existence of a platform driver that +implements the platform specific initialization and delivery of the irq +numbers. + +This patch integrates the device tree activity and platform specific +code into the driver. + +Signed-off-by: Andrey Shvetsov +--- + hdm-dim2/dim2_hdm.c | 222 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------- + hdm-dim2/dim2_hdm.h | 28 ---------------------------- + hdm-dim2/platform/dim2_arwen_mlb3.c | 165 --------------------------------------------------------------------------------------------------------------------------------------------------------------------- + hdm-dim2/platform/dim2_arwen_mlb6.c | 169 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + hdm-dim2/platform/dim2_h2_dt.c | 227 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + hdm-dim2/platform/dim2_mx6q.c | 192 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + hdm-dim2/platform/dim2_mx6q_dt.c | 224 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + 7 files changed, 193 insertions(+), 1034 deletions(-) + delete mode 100644 hdm-dim2/dim2_hdm.h + delete mode 100644 hdm-dim2/platform/dim2_arwen_mlb3.c + delete mode 100644 hdm-dim2/platform/dim2_arwen_mlb6.c + delete mode 100644 hdm-dim2/platform/dim2_h2_dt.c + delete mode 100644 hdm-dim2/platform/dim2_mx6q.c + delete mode 100644 hdm-dim2/platform/dim2_mx6q_dt.c + +diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c +index e4629a5..2dba917 100644 +--- a/hdm-dim2/dim2_hdm.c ++++ b/hdm-dim2/dim2_hdm.c +@@ -14,6 +14,7 @@ + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + + #include ++#include + #include + #include + #include +@@ -21,13 +22,13 @@ + #include + #include + #include ++#include + #include + #include + #include + + #include + #include "dim2_hal.h" +-#include "dim2_hdm.h" + #include "dim2_errors.h" + #include "dim2_sysfs.h" + +@@ -93,6 +94,9 @@ struct dim2_hdm { + struct most_interface most_iface; + char name[16 + sizeof "dim2-"]; + void __iomem *io_base; ++ u8 clk_speed; ++ struct clk *clk; ++ struct clk *clk_pll; + struct task_struct *netinfo_task; + wait_queue_head_t netinfo_waitq; + int deliver_netinfo; +@@ -102,6 +106,12 @@ struct dim2_hdm { + struct medialb_bus bus; + void (*on_netinfo)(struct most_interface *, + unsigned char, unsigned char *); ++ void (*disable_platform)(struct platform_device *); ++}; ++ ++struct dim2_platform_data { ++ int (*enable)(struct platform_device *); ++ void (*disable)(struct platform_device *); + }; + + #define iface_to_hdm(iface) container_of(iface, struct dim2_hdm, most_iface) +@@ -686,6 +696,8 @@ static void dma_free(struct mbo *mbo, u32 size) + dma_free_coherent(NULL, size, mbo->virt_address, mbo->bus_address); + } + ++static const struct of_device_id dim2_of_match[]; ++ + /* + * dim2_probe - dim2 probe handler + * @pdev: platform device structure +@@ -695,7 +707,7 @@ static void dma_free(struct mbo *mbo, u32 size) + */ + static int dim2_probe(struct platform_device *pdev) + { +- struct dim2_platform_data *pdata = pdev->dev.platform_data; ++ const struct dim2_platform_data *pdata; + struct dim2_hdm *dev; + struct resource *res; + int ret, i; +@@ -703,6 +715,8 @@ static int dim2_probe(struct platform_device *pdev) + u8 hal_ret; + int irq; + ++ enum { MLB_INT_IDX, AHB0_INT_IDX }; ++ + dev = devm_kzalloc(&pdev->dev, sizeof(*dev), GFP_KERNEL); + if (!dev) + return -ENOMEM; +@@ -710,29 +724,30 @@ static int dim2_probe(struct platform_device *pdev) + dev->atx_idx = -1; + + platform_set_drvdata(pdev, dev); ++ ++ dev->clk_speed = CLK_4096FS; ++ + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + dev->io_base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(dev->io_base)) + return PTR_ERR(dev->io_base); + +- if (!pdata) { +- dev_err(&pdev->dev, "missing platform data\n"); +- return -EINVAL; +- } +- +- ret = pdata->init ? pdata->init(pdata, dev->io_base) : 0; ++ pdata = of_match_node(dim2_of_match, pdev->dev.of_node)->data; ++ ret = pdata && pdata->enable ? pdata->enable(pdev) : 0; + if (ret) + return ret; + ++ dev->disable_platform = pdata ? pdata->disable : 0; ++ + dev_info(&pdev->dev, "sync: num of frames per sub-buffer: %u\n", fcnt); +- hal_ret = dim_startup(dev->io_base, pdata->clk_speed, fcnt); ++ hal_ret = dim_startup(dev->io_base, dev->clk_speed, fcnt); + if (hal_ret != DIM_NO_ERROR) { + dev_err(&pdev->dev, "dim_startup failed: %d\n", hal_ret); + ret = -ENODEV; +- goto err_bsp_destroy; ++ goto err_disable_platform; + } + +- irq = platform_get_irq(pdev, 0); ++ irq = platform_get_irq(pdev, AHB0_INT_IDX); + if (irq < 0) { + dev_err(&pdev->dev, "failed to get ahb0_int irq: %d\n", irq); + ret = irq; +@@ -746,7 +761,7 @@ static int dim2_probe(struct platform_device *pdev) + goto err_shutdown_dim; + } + +- irq = platform_get_irq(pdev, 1); ++ irq = platform_get_irq(pdev, MLB_INT_IDX); + if (irq < 0) { + dev_err(&pdev->dev, "failed to get mlb_int irq: %d\n", irq); + ret = irq; +@@ -832,9 +847,9 @@ static int dim2_probe(struct platform_device *pdev) + kthread_stop(dev->netinfo_task); + err_shutdown_dim: + dim_shutdown(); +-err_bsp_destroy: +- if (pdata && pdata->destroy) +- pdata->destroy(pdata); ++err_disable_platform: ++ if (dev->disable_platform) ++ dev->disable_platform(pdev); + + return ret; + } +@@ -848,7 +863,6 @@ static int dim2_probe(struct platform_device *pdev) + static int dim2_remove(struct platform_device *pdev) + { + struct dim2_hdm *dev = platform_get_drvdata(pdev); +- struct dim2_platform_data *pdata = pdev->dev.platform_data; + unsigned long flags; + + dim2_sysfs_destroy(&dev->bus); +@@ -859,37 +873,187 @@ static int dim2_remove(struct platform_device *pdev) + dim_shutdown(); + spin_unlock_irqrestore(&dim_lock, flags); + +- if (pdata && pdata->destroy) +- pdata->destroy(pdata); ++ if (dev->disable_platform) ++ dev->disable_platform(pdev); ++ ++ return 0; ++} ++ ++/* platform specific functions [[ */ ++ ++static int fsl_mx6_enable(struct platform_device *pdev) ++{ ++ struct dim2_hdm *dev = platform_get_drvdata(pdev); ++ int ret; ++ ++ dev->clk = devm_clk_get(&pdev->dev, "mlb"); ++ if (IS_ERR_OR_NULL(dev->clk)) { ++ dev_err(&pdev->dev, "unable to get mlb clock\n"); ++ return -EFAULT; ++ } ++ ++ ret = clk_prepare_enable(dev->clk); ++ if (ret) { ++ dev_err(&pdev->dev, "%s\n", "clk_prepare_enable failed"); ++ return ret; ++ } ++ ++ if (dev->clk_speed >= CLK_2048FS) { ++ /* enable pll */ ++ dev->clk_pll = devm_clk_get(&pdev->dev, "pll8_mlb"); ++ if (IS_ERR_OR_NULL(dev->clk_pll)) { ++ dev_err(&pdev->dev, "unable to get mlb pll clock\n"); ++ clk_disable_unprepare(dev->clk); ++ return -EFAULT; ++ } ++ ++ writel(0x888, dev->io_base + 0x38); ++ clk_prepare_enable(dev->clk_pll); ++ } ++ ++ return 0; ++} ++ ++static void fsl_mx6_disable(struct platform_device *pdev) ++{ ++ struct dim2_hdm *dev = platform_get_drvdata(pdev); ++ ++ if (dev->clk_speed >= CLK_2048FS) ++ clk_disable_unprepare(dev->clk_pll); ++ ++ clk_disable_unprepare(dev->clk); ++} ++ ++static int rcar_h2_enable(struct platform_device *pdev) ++{ ++ struct dim2_hdm *dev = platform_get_drvdata(pdev); ++ int ret; ++ ++ dev->clk = devm_clk_get(&pdev->dev, NULL); ++ if (IS_ERR(dev->clk)) { ++ dev_err(&pdev->dev, "cannot get clock\n"); ++ return PTR_ERR(dev->clk); ++ } ++ ++ ret = clk_prepare_enable(dev->clk); ++ if (ret) { ++ dev_err(&pdev->dev, "%s\n", "clk_prepare_enable failed"); ++ return ret; ++ } ++ ++ if (dev->clk_speed >= CLK_2048FS) { ++ /* enable MLP pll and LVDS drivers */ ++ writel(0x03, dev->io_base + 0x600); ++ /* set bias */ ++ writel(0x888, dev->io_base + 0x38); ++ } else { ++ /* PLL */ ++ writel(0x04, dev->io_base + 0x600); ++ } ++ + +- /* +- * break link to local platform_device_id struct +- * to prevent crash by unload platform device module +- */ +- pdev->id_entry = NULL; ++ /* BBCR = 0b11 */ ++ writel(0x03, dev->io_base + 0x500); ++ writel(0x0002FF02, dev->io_base + 0x508); + + return 0; + } + +-static const struct platform_device_id dim2_id[] = { +- { "medialb_dim2" }, +- { }, /* Terminating entry */ ++static void rcar_h2_disable(struct platform_device *pdev) ++{ ++ struct dim2_hdm *dev = platform_get_drvdata(pdev); ++ ++ clk_disable_unprepare(dev->clk); ++ ++ /* disable PLLs and LVDS drivers */ ++ writel(0x0, dev->io_base + 0x600); ++} ++ ++static int rcar_m3_enable(struct platform_device *pdev) ++{ ++ struct dim2_hdm *dev = platform_get_drvdata(pdev); ++ u32 enable_512fs = dev->clk_speed == CLK_512FS; ++ int ret; ++ ++ dev->clk = devm_clk_get(&pdev->dev, NULL); ++ if (IS_ERR(dev->clk)) { ++ dev_err(&pdev->dev, "cannot get clock\n"); ++ return PTR_ERR(dev->clk); ++ } ++ ++ ret = clk_prepare_enable(dev->clk); ++ if (ret) { ++ dev_err(&pdev->dev, "%s\n", "clk_prepare_enable failed"); ++ return ret; ++ } ++ ++ /* PLL */ ++ writel(0x04, dev->io_base + 0x600); ++ ++ writel(enable_512fs, dev->io_base + 0x604); ++ ++ /* BBCR = 0b11 */ ++ writel(0x03, dev->io_base + 0x500); ++ writel(0x0002FF02, dev->io_base + 0x508); ++ ++ return 0; ++} ++ ++static void rcar_m3_disable(struct platform_device *pdev) ++{ ++ struct dim2_hdm *dev = platform_get_drvdata(pdev); ++ ++ clk_disable_unprepare(dev->clk); ++ ++ /* disable PLLs and LVDS drivers */ ++ writel(0x0, dev->io_base + 0x600); ++} ++ ++/* ]] platform specific functions */ ++ ++enum dim2_platforms { FSL_MX6, RCAR_H2, RCAR_M3 }; ++ ++static struct dim2_platform_data plat_data[] = { ++ [FSL_MX6] = { .enable = fsl_mx6_enable, .disable = fsl_mx6_disable }, ++ [RCAR_H2] = { .enable = rcar_h2_enable, .disable = rcar_h2_disable }, ++ [RCAR_M3] = { .enable = rcar_m3_enable, .disable = rcar_m3_disable }, ++}; ++ ++static const struct of_device_id dim2_of_match[] = { ++ { ++ .compatible = "fsl,imx6q-mlb150", ++ .data = plat_data + FSL_MX6 ++ }, ++ { ++ .compatible = "renesas,mlp", ++ .data = plat_data + RCAR_H2 ++ }, ++ { ++ .compatible = "rcar,medialb-dim2", ++ .data = plat_data + RCAR_M3 ++ }, ++ { ++ .compatible = "xlnx,axi4-os62420_3pin-1.00.a", ++ }, ++ { ++ .compatible = "xlnx,axi4-os62420_6pin-1.00.a", ++ }, ++ {}, + }; + +-MODULE_DEVICE_TABLE(platform, dim2_id); ++MODULE_DEVICE_TABLE(of, dim2_of_match); + + static struct platform_driver dim2_driver = { + .probe = dim2_probe, + .remove = dim2_remove, +- .id_table = dim2_id, + .driver = { + .name = "hdm_dim2", ++ .of_match_table = dim2_of_match, + }, + }; + + module_platform_driver(dim2_driver); + +-MODULE_AUTHOR("Jain Roy Ambi "); + MODULE_AUTHOR("Andrey Shvetsov "); + MODULE_DESCRIPTION("MediaLB DIM2 Hardware Dependent Module"); + MODULE_LICENSE("GPL"); +libgit2 0.26.0 diff --git a/_to_remove/recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch b/_to_remove/recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch new file mode 100644 index 000000000..1b01fb156 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch @@ -0,0 +1,92 @@ +From 839ad403a2d8081a6c15f6fc2836b01919338f3c Mon Sep 17 00:00:00 2001 +From: Andrey Shvetsov +Date: Mon, 12 Feb 2018 12:24:37 +0100 +Subject: [PATCH] staging: most: dim2: read clock speed from the device tree + +This implements reading of the clock speed parameter from the device +tree. + +Signed-off-by: Andrey Shvetsov +--- + Documentation/devicetree/bindings/inic/microchip,inic-dim2.txt | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + hdm-dim2/dim2_hdm.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- + 2 files changed, 113 insertions(+), 1 deletion(-) + create mode 100644 Documentation/devicetree/bindings/inic/microchip,inic-dim2.txt + +diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c +index 2dba917..05e1896 100644 +--- a/hdm-dim2/dim2_hdm.c ++++ b/hdm-dim2/dim2_hdm.c +@@ -698,6 +698,42 @@ static void dma_free(struct mbo *mbo, u32 size) + + static const struct of_device_id dim2_of_match[]; + ++static struct { ++ const char *clock_speed; ++ u8 clk_speed; ++} clk_mt[] = { ++ { "256fs", CLK_256FS }, ++ { "512fs", CLK_512FS }, ++ { "1024fs", CLK_1024FS }, ++ { "2048fs", CLK_2048FS }, ++ { "3072fs", CLK_3072FS }, ++ { "4096fs", CLK_4096FS }, ++ { "6144fs", CLK_6144FS }, ++ { "8192fs", CLK_8192FS }, ++}; ++ ++/** ++ * get_dim2_clk_speed - converts string to DIM2 clock speed value ++ * ++ * @clock_speed: string in the format "{NUMBER}fs" ++ * @val: pointer to get one of the CLK_{NUMBER}FS values ++ * ++ * By success stores one of the CLK_{NUMBER}FS in the *val and returns 0, ++ * otherwise returns -EINVAL. ++ */ ++static int get_dim2_clk_speed(const char *clock_speed, u8 *val) ++{ ++ int i; ++ ++ for (i = 0; i < ARRAY_SIZE(clk_mt); i++) { ++ if (!strcmp(clock_speed, clk_mt[i].clock_speed)) { ++ *val = clk_mt[i].clk_speed; ++ return 0; ++ } ++ } ++ return -EINVAL; ++} ++ + /* + * dim2_probe - dim2 probe handler + * @pdev: platform device structure +@@ -708,6 +744,7 @@ static const struct of_device_id dim2_of_match[]; + static int dim2_probe(struct platform_device *pdev) + { + const struct dim2_platform_data *pdata; ++ const char *clock_speed; + struct dim2_hdm *dev; + struct resource *res; + int ret, i; +@@ -725,7 +762,18 @@ static int dim2_probe(struct platform_device *pdev) + + platform_set_drvdata(pdev, dev); + +- dev->clk_speed = CLK_4096FS; ++ ret = of_property_read_string(pdev->dev.of_node, ++ "microchip,clock-speed", &clock_speed); ++ if (ret) { ++ dev_err(&pdev->dev, "missing dt property clock-speed\n"); ++ return ret; ++ } ++ ++ ret = get_dim2_clk_speed(clock_speed, &dev->clk_speed); ++ if (ret) { ++ dev_err(&pdev->dev, "bad dt property clock-speed\n"); ++ return ret; ++ } + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + dev->io_base = devm_ioremap_resource(&pdev->dev, res); +-- +libgit2 0.26.0 diff --git a/_to_remove/recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch b/_to_remove/recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch new file mode 100644 index 000000000..08cd6f99d --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch @@ -0,0 +1,47 @@ +From 756f2f1f90524c2620ed7951e436d13bdb929a6b Mon Sep 17 00:00:00 2001 +From: Andrey Shvetsov +Date: Mon, 12 Feb 2018 12:25:37 +0100 +Subject: [PATCH] staging: most: dim2: use device for coherent memory allocation + +On several modern architectures the allocation of coherent memory needs +a device that has the dma_ops properly set. This patch enables use of +the DIM2 platform device for the allocation process. + +Signed-off-by: Andrey Shvetsov +--- + hdm-dim2/dim2_hdm.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c +index 05e1896..1847091 100644 +--- a/hdm-dim2/dim2_hdm.c ++++ b/hdm-dim2/dim2_hdm.c +@@ -688,12 +688,16 @@ static int poison_channel(struct most_interface *most_iface, int ch_idx) + + static void *dma_alloc(struct mbo *mbo, u32 size) + { +- return dma_alloc_coherent(NULL, size, &mbo->bus_address, GFP_KERNEL); ++ struct device *dev = mbo->ifp->dev; ++ ++ return dma_alloc_coherent(dev, size, &mbo->bus_address, GFP_KERNEL); + } + + static void dma_free(struct mbo *mbo, u32 size) + { +- dma_free_coherent(NULL, size, mbo->virt_address, mbo->bus_address); ++ struct device *dev = mbo->ifp->dev; ++ ++ dma_free_coherent(dev, size, mbo->virt_address, mbo->bus_address); + } + + static const struct of_device_id dim2_of_match[]; +@@ -875,6 +879,7 @@ static int dim2_probe(struct platform_device *pdev) + dev->most_iface.poison_channel = poison_channel; + dev->most_iface.request_netinfo = request_netinfo; + dev->most_iface.extra_attrs = DBR_ATTRS; ++ dev->most_iface.dev = &pdev->dev; + + kobj = most_register_interface(&dev->most_iface); + if (IS_ERR(kobj)) { +-- +libgit2 0.26.0 diff --git a/_to_remove/recipes-kernel/most/files/0010-backport-usb-setup-timer.patch b/_to_remove/recipes-kernel/most/files/0010-backport-usb-setup-timer.patch new file mode 100644 index 000000000..ff21b2130 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0010-backport-usb-setup-timer.patch @@ -0,0 +1,35 @@ +From 8eaec876f732c7e4b238ada5f9304c6da2380eb1 Mon Sep 17 00:00:00 2001 +From: Andrey Shvetsov +Date: Fri, 8 Feb 2019 22:44:32 +0000 +Subject: [PATCH] backport: usb: setup_timer + +--- + driver/hdm-usb/hdm_usb.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/hdm-usb/hdm_usb.c b/hdm-usb/hdm_usb.c +index 5b0af88..9896835 100644 +--- a/hdm-usb/hdm_usb.c ++++ b/hdm-usb/hdm_usb.c +@@ -760,9 +760,9 @@ static void hdm_request_netinfo(struct most_interface *iface, int channel, + * The handler runs in interrupt context. That's why we need to defer the + * tasks to a work queue. + */ +-static void link_stat_timer_handler(unsigned long data) ++static void link_stat_timer_handler(struct timer_list *t) + { +- struct most_dev *mdev = (struct most_dev *)data; ++ struct most_dev *mdev = from_timer(mdev, t, link_stat_timer); + + schedule_work(&mdev->poll_work_obj); + mdev->link_stat_timer.expires = jiffies + (2 * HZ); +@@ -1154,8 +1154,7 @@ hdm_probe(struct usb_interface *interface, const struct usb_device_id *id) + num_endpoints = usb_iface_desc->desc.bNumEndpoints; + mutex_init(&mdev->io_mutex); + INIT_WORK(&mdev->poll_work_obj, wq_netinfo); +- setup_timer(&mdev->link_stat_timer, link_stat_timer_handler, +- (unsigned long)mdev); ++ timer_setup(&mdev->link_stat_timer, link_stat_timer_handler, 0); + + mdev->usb_device = usb_dev; + mdev->link_stat_timer.expires = jiffies + (2 * HZ); diff --git a/_to_remove/recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch b/_to_remove/recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch new file mode 100644 index 000000000..d4383c4f6 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch @@ -0,0 +1,30 @@ +Handle snd_pcm_lib_mmap_vmalloc removal in 4.19 + +Add .mmap field back to pcm_ops for kernels older than 4.19. + +Upstream-Status: Inappropriate + +Signed-off-by: Scott Murray + +diff --git a/aim-sound/sound.c b/aim-sound/sound.c +index 4b3329b..c0a26be 100644 +--- a/aim-sound/sound.c ++++ b/aim-sound/sound.c +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -463,6 +464,9 @@ static const struct snd_pcm_ops pcm_ops = { + .trigger = pcm_trigger, + .pointer = pcm_pointer, + .page = snd_pcm_lib_get_vmalloc_page, ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,19,0) ++ .mmap = snd_pcm_lib_mmap_vmalloc, ++#endif + }; + + static int split_arg_list(char *buf, char **card_name, u16 *ch_num, diff --git a/_to_remove/recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch b/_to_remove/recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch new file mode 100644 index 000000000..02eca27d2 --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch @@ -0,0 +1,68 @@ +From 877d7475413bb787deb07aa83bafac03efa399fa Mon Sep 17 00:00:00 2001 +From: Paul Barker +Date: Mon, 24 Feb 2020 14:58:52 +0000 +Subject: [PATCH] Fix build with 5.4 kernel + +Signed-off-by: Paul Barker +--- + driver/Makefile | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 281241d..609e692 100644 +--- a/Makefile ++++ b/Makefile +@@ -5,6 +5,7 @@ SRC := $(shell pwd) + obj-m := mostcore.o + mostcore-y := mostcore/core.o + CFLAGS_core.o := -I$(src)/include/ ++CFLAGS_mostcore/core.o := -I$(src)/include/ + + obj-m += default_conf.o + CFLAGL_default_conf.o := -I$(src)/include +@@ -12,33 +13,41 @@ CFLAGL_default_conf.o := -I$(src)/include + obj-m += aim_cdev.o + aim_cdev-y := aim-cdev/cdev.o + CFLAGS_cdev.o := -I$(src)/include/ ++CFLAGS_aim-cdev/cdev.o := -I$(src)/include/ + + obj-m += aim_network.o + aim_network-y := aim-network/networking.o + CFLAGS_networking.o := -I$(src)/include/ ++CFLAGS_aim-network/networking.o := -I$(src)/include/ + + obj-m += aim_sound.o + aim_sound-y := aim-sound/sound.o + CFLAGS_sound.o := -I$(src)/include/ ++CFLAGS_aim-sound/sound.o := -I$(src)/include/ + + obj-m += aim_v4l2.o + aim_v4l2-y := aim-v4l2/video.o + CFLAGS_video.o := -Idrivers/media/video -I$(src)/include/ ++CFLAGS_aim-v4l2/video.o := -Idrivers/media/video -I$(src)/include/ + + obj-m += hdm_i2c.o + hdm_i2c-y := hdm-i2c/hdm_i2c.o + CFLAGS_hdm_i2c.o := -I$(src)/include/ ++CFLAGS_hdm-i2c/hdm_i2c.o := -I$(src)/include/ + + ifdef CONFIG_OF + obj-m += hdm_dim2.o + hdm_dim2-y := hdm-dim2/dim2_hdm.o hdm-dim2/dim2_hal.o hdm-dim2/dim2_sysfs.o + CFLAGS_dim2_hdm.o := -I$(src)/include/ ++CFLAGS_hdm-dim2/dim2_hdm.o := -I$(src)/include/ ++CFLAGS_hdm-dim2/dim2_hal.o := -I$(src)/include/ ++CFLAGS_hdm-dim2/dim2_sysfs.o := -I$(src)/include/ + endif + + obj-m += hdm_usb.o + hdm_usb-y := hdm-usb/hdm_usb.o + CFLAGS_hdm_usb.o := -I$(src)/include/ +- ++CFLAGS_hdm-usb/hdm_usb.o := -I$(src)/include/ + + all: + $(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules +-- +2.20.1 + diff --git a/_to_remove/recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch b/_to_remove/recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch new file mode 100644 index 000000000..85e38857c --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch @@ -0,0 +1,54 @@ +Fix building against 5.7 or newer kernels + +VFL_TYPE_GRABBER was renamed VFL_TYPE_VIDEO in 5.7. Marking as +inappropriate for upstream for now, as it seems the standalone +version of the driver has been superceded by the version in the +staging tree in the mainline kernel, and there are no obvious +signs of maintenance. + +Upstream-Status: Inappropriate [no upstream] +Signed-off-by: Scott Murray + +--- +diff --git a/aim-v4l2/video.c b/aim-v4l2/video.c +index db75d4d..fbf7139 100644 +--- a/aim-v4l2/video.c ++++ b/aim-v4l2/video.c +@@ -14,6 +14,7 @@ + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + + #include ++#include + #include + #include + #include +@@ -31,6 +32,11 @@ + + #define V4L2_AIM_MAX_INPUT 1 + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,7,0) ++/* Handle pre-5.7 naming */ ++#define VFL_TYPE_VIDEO VFL_TYPE_GRABBER ++#endif ++ + static struct most_aim aim_info; + + struct most_video_dev { +@@ -82,7 +88,7 @@ static int aim_vdev_open(struct file *filp) + v4l2_info(&mdev->v4l2_dev, "aim_vdev_open()\n"); + + switch (vdev->vfl_type) { +- case VFL_TYPE_GRABBER: ++ case VFL_TYPE_VIDEO: + break; + default: + return -EINVAL; +@@ -461,7 +467,7 @@ static int aim_register_videodev(struct most_video_dev *mdev) + + /* Register the v4l2 device */ + video_set_drvdata(mdev->vdev, mdev); +- ret = video_register_device(mdev->vdev, VFL_TYPE_GRABBER, -1); ++ ret = video_register_device(mdev->vdev, VFL_TYPE_VIDEO, -1); + if (ret) { + v4l2_err(&mdev->v4l2_dev, "video_register_device failed (%d)\n", + ret); diff --git a/_to_remove/recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch b/_to_remove/recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch new file mode 100644 index 000000000..fd430c9df --- /dev/null +++ b/_to_remove/recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch @@ -0,0 +1,39 @@ +Fix building against 5.9 or newer kernels + +DECLARE_TASKLET was replaced with DECLARE_TASKLET_OLD in 5.9. +Marking as inappropriate for upstream for now, as it seems the +standalone version of the driver has been superceded by the version +in the staging tree in the mainline kernel, and there are no obvious +signs of maintenance. + +Upstream-Status: Inappropriate [no upstream] +Signed-off-by: Scott Murray + +--- + driver/hdm-dim2/dim2_hdm.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c +index 1847091..fc02c6b 100644 +--- a/hdm-dim2/dim2_hdm.c ++++ b/hdm-dim2/dim2_hdm.c +@@ -14,6 +14,7 @@ + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + + #include ++#include + #include + #include + #include +@@ -53,7 +54,11 @@ MODULE_PARM_DESC(fcnt, "Num of frames per sub-buffer for sync channels as a powe + static DEFINE_SPINLOCK(dim_lock); + + static void dim2_tasklet_fn(unsigned long data); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,9,0) + static DECLARE_TASKLET(dim2_tasklet, dim2_tasklet_fn, 0); ++#else ++static DECLARE_TASKLET_OLD(dim2_tasklet, dim2_tasklet_fn); ++#endif + + /** + * struct hdm_channel - private structure to keep channel specific data diff --git a/_to_remove/recipes-kernel/most/most.bb b/_to_remove/recipes-kernel/most/most.bb new file mode 100644 index 000000000..f709a6d9a --- /dev/null +++ b/_to_remove/recipes-kernel/most/most.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "Build MOST driver" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://mostcore/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e" + +inherit module + +PV = "0.1" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/most;protocol=https;branch=${AGL_BRANCH}" + +S = "${WORKDIR}/git/driver" +SRCREV = "e4dbbaf9e7652efaed0df3e0aab4464f5f228573" + +KERNEL_MODULE_AUTOLOAD += "aim_cdev aim_sound aim_network aim_v4l2 hdm_i2c hdm_dim2 hdm_usb mostcore" diff --git a/_to_remove/recipes-kernel/most/most.bbappend b/_to_remove/recipes-kernel/most/most.bbappend new file mode 100644 index 000000000..af7ea687e --- /dev/null +++ b/_to_remove/recipes-kernel/most/most.bbappend @@ -0,0 +1,17 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +SRC_URI:append = " \ + file://0002-src-most-add-auto-conf-feature.patch \ + file://0003-core-remove-kernel-log-for-MBO-status.patch \ + file://0004-most-video-set-device_caps.patch \ + file://0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch \ + file://0006-dim2-fix-startup-sequence.patch \ + file://0007-dim2-use-device-tree.patch \ + file://0008-dim2-read-clock-speed-from-the-device-tree.patch \ + file://0009-dim2-use-device-for-coherent-memory-allocation.patch \ + file://0010-backport-usb-setup-timer.patch \ + file://0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch \ + file://0012-Fix-build-with-5.4-kernel.patch \ + file://0013-Fix-build-with-5.7-kernel.patch \ + file://0014-Fix-build-with-5.9-kernel.patch \ +" diff --git a/_to_remove/recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch b/_to_remove/recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch new file mode 100644 index 000000000..99d6183ab --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch @@ -0,0 +1,27 @@ +From 04ffb4b8f828c19e914987e271aaf3aa7eab28bf Mon Sep 17 00:00:00 2001 +From: Yuichi Kusakabe +Date: Thu, 29 Nov 2018 22:12:00 +0900 +Subject: [PATCH] Disable sllin driver debug log + +Signed-off-by: Yuichi Kusakabe +--- + sllin/sllin.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/sllin/sllin.c b/sllin/sllin.c +index 77b2cb8..133d6e9 100644 +--- a/sllin/sllin.c ++++ b/sllin/sllin.c +@@ -41,7 +41,9 @@ + * Funded by: Volkswagen Group Research + */ + ++#if 0 + #define DEBUG 1 /* Enables pr_debug() printouts */ ++#endif + + #include + #include +-- +2.7.4 + diff --git a/_to_remove/recipes-kernel/sllin/files/0001_update_makefile.patch b/_to_remove/recipes-kernel/sllin/files/0001_update_makefile.patch new file mode 100644 index 000000000..7db57802b --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/0001_update_makefile.patch @@ -0,0 +1,21 @@ +diff --git a/sllin/Makefile b/sllin/Makefile +index 8ae7510..037846f 100644 +--- a/sllin/Makefile ++++ b/sllin/Makefile +@@ -1,10 +1,11 @@ + obj-m += sllin.o +-KPATH=/lib/modules/$(shell uname -r)/build ++KPATH=$(KERNEL_SRC) + #KPATH=/mnt/data/_dokumenty_/_w_/_dce_can_/src/can-benchmark/kernel/build/shark/3.0.4 + #KPATH=/mnt/data/_dokumenty_/_w_/_dce_can_/src/can-benchmark/kernel/build/shark/2.6.36 +- ++SRC := $(shell pwd) + all: +- make -C ${KPATH} M=$(PWD) modules +- ++ make -C ${KPATH} M=$(SRC) modules ++modules_install: ++ make -C ${KPATH} M=$(SRC) modules_install + clean: +- make -C ${KPATH} M=$(PWD) clean ++ make -C ${KPATH} M=$(SRC) clean diff --git a/_to_remove/recipes-kernel/sllin/files/0002_fix_null_operation_check.patch b/_to_remove/recipes-kernel/sllin/files/0002_fix_null_operation_check.patch new file mode 100644 index 000000000..896e2680d --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/0002_fix_null_operation_check.patch @@ -0,0 +1,176 @@ +diff --git a/sllin/sllin.c b/sllin/sllin.c +index 2db896f..2969448 100644 +--- a/sllin/sllin.c ++++ b/sllin/sllin.c +@@ -869,7 +869,6 @@ static int sllin_send_tx_buff(struct sllin *sl) + #else + remains = sl->tx_lim - sl->tx_cnt; + #endif +- + res = tty->ops->write(tty, sl->tx_buff + sl->tx_cnt, remains); + if (res < 0) + goto error_in_write; +@@ -916,10 +915,25 @@ static int sllin_send_break(struct sllin *sl) + unsigned long break_baud; + int res; + ++ netdev_dbg(sl->dev, "%s()# invoke.\n", __func__); ++ if (tty == NULL) { ++ netdev_dbg(sl->dev, "%s() tty == NULL.\n", __func__); ++ sl->lin_state = SLSTATE_IDLE; ++ return -1; ++ } ++ if (tty->ops == NULL) { ++ netdev_dbg(sl->dev, "%s() tty->ops == NULL.\n", __func__); ++ sl->lin_state = SLSTATE_IDLE; ++ return -1; ++ } + break_baud = ((sl->lin_baud * 2) / 3); + sltty_change_speed(tty, break_baud); + +- tty->ops->flush_buffer(tty); ++ if (tty->ops->flush_buffer) { ++ tty->ops->flush_buffer(tty); ++ } else { ++ netdev_dbg(sl->dev, "%s() tty->ops->flush_buffer is NULL.\n", __func__); ++ } + sl->rx_cnt = SLLIN_BUFF_BREAK; + + sl->rx_expect = SLLIN_BUFF_BREAK + 1; +@@ -943,6 +957,17 @@ static int sllin_send_break(struct sllin *sl) + unsigned long usleep_range_min; + unsigned long usleep_range_max; + ++ netdev_dbg(sl->dev, "%s() invoke.\n", __func__); ++ if (tty == NULL) { ++ netdev_dbg(sl->dev, "%s() tty == NULL.\n", __func__); ++ sl->lin_state = SLSTATE_IDLE; ++ return -1; ++ } ++ if (tty->ops == NULL) { ++ netdev_dbg(sl->dev, "%s() tty->ops == NULL.\n", __func__); ++ sl->lin_state = SLSTATE_IDLE; ++ return -1; ++ } + break_baud = ((sl->lin_baud * 2) / 3); + sl->rx_cnt = SLLIN_BUFF_BREAK; + sl->rx_expect = SLLIN_BUFF_BREAK + 1; +@@ -950,21 +975,31 @@ static int sllin_send_break(struct sllin *sl) + + /* Do the break ourselves; Inspired by + http://lxr.linux.no/#linux+v3.1.2/drivers/tty/tty_io.c#L2452 */ +- retval = tty->ops->break_ctl(tty, -1); +- if (retval) +- return retval; ++ if (tty->ops->break_ctl) { ++ retval = tty->ops->break_ctl(tty, -1); ++ if (retval) ++ return retval; ++ } else { ++ netdev_dbg(sl->dev, "%s() tty->ops->break_ctl is NULL.\n", __func__); ++ } + + /* udelay(712); */ + usleep_range_min = (1000000l * SLLIN_SAMPLES_PER_CHAR) / break_baud; + usleep_range_max = usleep_range_min + 50; + usleep_range(usleep_range_min, usleep_range_max); + +- retval = tty->ops->break_ctl(tty, 0); ++ if(tty->ops->break_ctl) { ++ retval = tty->ops->break_ctl(tty, 0); ++ } + usleep_range_min = (1000000l * 1 /* 1 bit */) / break_baud; + usleep_range_max = usleep_range_min + 30; + usleep_range(usleep_range_min, usleep_range_max); + +- tty->ops->flush_buffer(tty); ++ if ( tty->ops->flush_buffer) { ++ tty->ops->flush_buffer(tty); ++ } else { ++ netdev_dbg(sl->dev, "%s() tty->ops->flush_buffer is NULL.\n", __func__); ++ } + + sl->tx_cnt = SLLIN_BUFF_SYNC; + +@@ -1028,6 +1063,12 @@ static int sllin_kwthread(void *ptr) + int lin_dlc; + u8 lin_data_buff[SLLIN_DATA_MAX]; + ++ if (sl == NULL) { ++ pr_err("sllin: sl is NULL\n"); ++ } ++ if (sl->dev == NULL) { ++ pr_err("sllin: sl->dev is NULL\n"); ++ } + + if ((sl->lin_state == SLSTATE_IDLE) && sl->lin_master && + sl->id_to_send) { +@@ -1036,6 +1077,7 @@ static int sllin_kwthread(void *ptr) + } + } + ++ netdev_dbg(sl->dev, "sllin_kthread \n"); + wait_event_killable(sl->kwt_wq, kthread_should_stop() || + test_bit(SLF_RXEVENT, &sl->flags) || + test_bit(SLF_TXEVENT, &sl->flags) || +@@ -1046,6 +1088,7 @@ static int sllin_kwthread(void *ptr) + (sl->lin_state == SLSTATE_RESPONSE_WAIT)) + && test_bit(SLF_MSGEVENT, &sl->flags))); + ++ netdev_dbg(sl->dev, "sllin_kthread \n"); + if (test_and_clear_bit(SLF_RXEVENT, &sl->flags)) { + netdev_dbg(sl->dev, "sllin_kthread RXEVENT\n"); + } +@@ -1078,21 +1121,25 @@ static int sllin_kwthread(void *ptr) + sl->lin_state = SLSTATE_IDLE; + } + ++ netdev_dbg(sl->dev, "sllin_kthread: lin_state <%08x>\n",sl->lin_state); + switch (sl->lin_state) { + case SLSTATE_IDLE: + if (!test_bit(SLF_MSGEVENT, &sl->flags)) + break; +- ++ if (sl->tx_req_skb == NULL) ++ netdev_dbg(sl->dev, "sl->tx_req_skb == NULL\n"); ++ if (sl->tx_req_skb->data == NULL) ++ netdev_dbg(sl->dev, "sl->tx_req_skb->data == NULL\n"); + cf = (struct can_frame *)sl->tx_req_skb->data; + + /* SFF RTR CAN frame -> LIN header */ + if (cf->can_id & CAN_RTR_FLAG) { + struct sllin_conf_entry *sce; + +- netdev_dbg(sl->dev, "%s: RTR SFF CAN frame, ID = %x\n", +- __func__, cf->can_id & LIN_ID_MASK); + + sce = &sl->linfr_cache[cf->can_id & LIN_ID_MASK]; ++ netdev_dbg(sl->dev, "%s: RTR SFF CAN frame, ID = %x dlc=%d\n", ++ __func__, cf->can_id & LIN_ID_MASK, sce->dlc); + spin_lock_irqsave(&sl->linfr_lock, flags); + + /* Is there Slave response in linfr_cache to be sent? */ +@@ -1114,8 +1161,8 @@ static int sllin_kwthread(void *ptr) + spin_unlock_irqrestore(&sl->linfr_lock, flags); + + } else { /* SFF NON-RTR CAN frame -> LIN header + LIN response */ +- netdev_dbg(sl->dev, "%s: NON-RTR SFF CAN frame, ID = %x\n", +- __func__, (int)cf->can_id & LIN_ID_MASK); ++ netdev_dbg(sl->dev, "%s: NON-RTR SFF CAN frame, ID = %x\n dlc=%d", ++ __func__, (int)cf->can_id & LIN_ID_MASK, cf->can_dlc); + + lin_data = cf->data; + lin_dlc = cf->can_dlc; +@@ -1140,6 +1187,7 @@ static int sllin_kwthread(void *ptr) + hrtimer_start(&sl->rx_timer, + ktime_add(ktime_get(), sl->rx_timer_timeout), + HRTIMER_MODE_ABS); ++ netdev_dbg(sl->dev, "sllin_kthread: SLSTATE finish\n"); + break; + + case SLSTATE_BREAK_SENT: +@@ -1654,3 +1702,4 @@ static void __exit sllin_exit(void) + + module_init(sllin_init); + module_exit(sllin_exit); ++ diff --git a/_to_remove/recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch b/_to_remove/recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch new file mode 100644 index 000000000..c8f2f9268 --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch @@ -0,0 +1,69 @@ +From fcebb8f510bbb5c681f1f9af4506b4de241837dd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jan-Simon=20M=C3=B6ller?= +Date: Wed, 31 Oct 2018 20:48:20 +0000 +Subject: [PATCH] Allow recent kernels newer 4.11.x to build +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +API changes enforce porting. + +Signed-off-by: Jan-Simon Möller +--- + sllin/sllin.c | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +diff --git a/sllin/sllin.c b/sllin/sllin.c +index 2969448..7e17127 100644 +--- a/sllin/sllin.c ++++ b/sllin/sllin.c +@@ -56,7 +56,12 @@ + #include + #include + #include ++#include ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0) + #include ++#else ++#include ++#endif + #include + #include + #include +@@ -447,7 +451,9 @@ static int sll_open(struct net_device *dev) + static void sll_free_netdev(struct net_device *dev) + { + int i = dev->base_addr; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,9) + free_netdev(dev); ++#endif + sllin_devs[i] = NULL; + } + +@@ -460,7 +466,12 @@ static const struct net_device_ops sll_netdev_ops = { + static void sll_setup(struct net_device *dev) + { + dev->netdev_ops = &sll_netdev_ops; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,9) + dev->destructor = sll_free_netdev; ++#else ++ dev->needs_free_netdev = true; ++ dev->priv_destructor = sll_free_netdev; ++#endif + + dev->hard_header_len = 0; + dev->addr_len = 0; +@@ -1685,8 +1696,10 @@ static void __exit sllin_exit(void) + sl = netdev_priv(dev); + if (sl->tty) { + netdev_dbg(sl->dev, "tty discipline still running\n"); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,9) + /* Intentionally leak the control block. */ + dev->destructor = NULL; ++#endif + } + + unregister_netdev(dev); +-- +2.13.7 + diff --git a/_to_remove/recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch b/_to_remove/recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch new file mode 100644 index 000000000..f3bcda9fe --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch @@ -0,0 +1,48 @@ +Use sched_set_fifo on newer kernels + +The 5.9 kernel removed the export of sched_setscheduler, use +the new sched_set_fifo API if building on 5.9 or newer. There +is a slight difference in resulting priority level, the new +API will yield a priority of 50 instead of the explicit value +of 40 being used with sched_setscheduler, but this should not +be an issue. + +Upstream-Status: Inappropriate [no upstream] +Signed-off-by: Scott Murray + +--- +diff --git a/sllin/sllin.c b/sllin/sllin.c +index 133d6e9..92c52ad 100644 +--- a/sllin/sllin.c ++++ b/sllin/sllin.c +@@ -1059,14 +1059,20 @@ static int sllin_kwthread(void *ptr) + { + struct sllin *sl = (struct sllin *)ptr; + struct tty_struct *tty = sl->tty; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,9,0) + struct sched_param schparam = { .sched_priority = 40 }; ++#endif + int tx_bytes = 0; /* Used for Network statistics */ + unsigned long flags; + int lin_id; + struct sllin_conf_entry *sce; + + netdev_dbg(sl->dev, "sllin_kwthread started.\n"); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,9,0) + sched_setscheduler(current, SCHED_FIFO, &schparam); ++#else ++ sched_set_fifo(current); ++#endif + + clear_bit(SLF_ERROR, &sl->flags); + sltty_change_speed(tty, sl->lin_baud); +@@ -1274,8 +1280,8 @@ slstate_response_wait: + sl->lin_state = SLSTATE_RESPONSE_WAIT_BUS; + } + } ++ fallthrough; + +- /* Be aware, no BREAK here */ + case SLSTATE_RESPONSE_WAIT_BUS: + if (sl->rx_cnt < sl->rx_expect) + continue; diff --git a/_to_remove/recipes-kernel/sllin/files/lin_config.conf b/_to_remove/recipes-kernel/sllin/files/lin_config.conf new file mode 100644 index 000000000..9775b8b39 --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/lin_config.conf @@ -0,0 +1,10 @@ + + + + + + + 33 + + + diff --git a/_to_remove/recipes-kernel/sllin/files/sllin-demo.service b/_to_remove/recipes-kernel/sllin/files/sllin-demo.service new file mode 100644 index 000000000..e3e7432f3 --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/sllin-demo.service @@ -0,0 +1,14 @@ +[Unit] +Description=LIN demo configuration +ConditionPathExists=/dev/ttyUSB0 +After=afm-system-daemon.service +Before=can-dev-mapping-helper.service + +[Service] +Type=forking +PIDFile=/run/lin_config/lin_config.pid +ExecStart=/usr/bin/start_lin_demo.sh +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target diff --git a/_to_remove/recipes-kernel/sllin/files/start_lin_demo.sh b/_to_remove/recipes-kernel/sllin/files/start_lin_demo.sh new file mode 100755 index 000000000..c7627ca74 --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/files/start_lin_demo.sh @@ -0,0 +1,59 @@ +#!/bin/sh + +# Attach serial LIN->CAN bridge and set up LIN polling +if [ -c /dev/ttyUSB0 ]; then + sleep 1 + /usr/bin/lin_config -c /etc/lin_config.conf -a sllin:/dev/ttyUSB0 + mkdir -p /run/lin_config/ + pidof lin_config > /run/lin_config/lin_config.pid + sleep 1 +else + ip link add dev sllin0 type vcan +fi +ip link set sllin0 up + +# Initialize HVAC controller +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 02A# +usleep 100000 +cansend sllin0 02B# +usleep 100000 +cansend sllin0 032#F0F8FFFFFFFFFFFF +usleep 100000 +cansend sllin0 032#F0F8FFFFFFFFFFFF +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 030# +usleep 100000 +cansend sllin0 02D# +usleep 100000 +cansend sllin0 02C# +usleep 100000 +cansend sllin0 02D# +usleep 100000 +cansend sllin0 02C# +usleep 100000 + diff --git a/_to_remove/recipes-kernel/sllin/sllin.bb b/_to_remove/recipes-kernel/sllin/sllin.bb new file mode 100644 index 000000000..cc72b3095 --- /dev/null +++ b/_to_remove/recipes-kernel/sllin/sllin.bb @@ -0,0 +1,45 @@ +DESCRIPTION = "slLIN driver module" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://sllin.c;beginline=7;endline=37;md5=6408e14dba951f8cbe3c2a003a0d89d2" + +inherit module systemd + +DEPENDS = "virtual/kernel" + +SRC_URI = "git://github.com/trainman419/linux-lin.git;protocol=https" +SRCREV = "155d885e8ccc907a56f6c86c4b159fac27ef6fec" +S = "${WORKDIR}/git/sllin" + +PV = "0.1+git${SRCPV}" + +SRC_URI:append = " \ + file://0001_update_makefile.patch;pnum=2 \ + file://0002_fix_null_operation_check.patch;pnum=2 \ + file://0003-Allow-recent-kernels-newer-4.11.x-to-build.patch;pnum=2 \ + file://0001-Disable-sllin-driver-debug-log.patch;pnum=2 \ + file://0004-Fix-build-with-5.9-kernel.patch;pnum=2 \ + file://sllin-demo.service \ + file://start_lin_demo.sh \ + file://lin_config.conf \ +" + +KERNEL_MODULE_AUTOLOAD:append = " sllin" +KERNEL_MODULE_PROBECONF:append = " sllin" + +SLLINBAUDRATE ??= "9600" +module_conf_sllin = "options sllin baudrate=${SLLINBAUDRATE}" + +SYSTEMD_SERVICE:${PN} = "sllin-demo.service" + +do_install:append () { + install -d 644 ${D}/${bindir} + install -m 755 ${WORKDIR}/start_lin_demo.sh ${D}/${bindir}/start_lin_demo.sh + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/sllin-demo.service ${D}${systemd_system_unitdir}/ + install -d ${D}${sysconfdir} + install -m 0644 ${WORKDIR}/lin_config.conf ${D}${sysconfdir}/ +} + +FILES:${PN} += "${bindir}/start_lin_demo.sh ${sysconfdir}/lin_config.conf" + +RDEPENDS:${PN} += "lin-config" diff --git a/_to_remove/recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb b/_to_remove/recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb new file mode 100644 index 000000000..131210897 --- /dev/null +++ b/_to_remove/recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb @@ -0,0 +1,40 @@ +SUMMARY = "Configuration files for running wayland with a non-weston compositor" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + +inherit allarch agl-graphical + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + # Add a rule to ensure the 'display' user has permissions to + # open the graphics device + install -d ${D}${sysconfdir}/udev/rules.d + cat >${D}${sysconfdir}/udev/rules.d/zz-dri.rules <<'EOF' +SUBSYSTEM=="drm", MODE="0660", GROUP="${WESTONGROUP}", SECLABEL{smack}="*" +EOF + + # user 'display' must also be able to access /dev/input/* + cat >${D}${sysconfdir}/udev/rules.d/zz-input.rules <<'EOF' +SUBSYSTEM=="input", MODE="0660", GROUP="input", SECLABEL{smack}="^" +EOF + + # user 'display' must also be able to access /dev/media*, etc. + cat >${D}${sysconfdir}/udev/rules.d/zz-remote-display.rules <<'EOF' +SUBSYSTEM=="media", MODE="0660", GROUP="display", SECLABEL{smack}="*" +SUBSYSTEM=="video4linux", MODE="0660", GROUP="display", SECLABEL{smack}="*" +KERNEL=="uvcs", SUBSYSTEM=="misc", MODE="0660", GROUP="display", SECLABEL{smack}="*" +KERNEL=="rgnmm", SUBSYSTEM=="misc", MODE="0660", GROUP="display", SECLABEL{smack}="*" +EOF +} + +do_install:append:imx() { + install -d ${D}${sysconfdir}/udev/rules.d + cat >>${D}${sysconfdir}/udev/rules.d/zz-dri.rules <<'EOF' +SUBSYSTEM=="gpu_class", MODE="0660", GROUP="${WESTONGROUP}", SECLABEL{smack}="*" +EOF + +} + +RCONFLICTS:${PN} = "weston-init" diff --git a/_to_remove/recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch b/_to_remove/recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch new file mode 100644 index 000000000..76795268c --- /dev/null +++ b/_to_remove/recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch @@ -0,0 +1,181 @@ +Rework library build + +Rework qmake files to build libraries out of the quickitem and widget +code instead of sample programs. This allows using the associated +classes without copying the source and running afoul of the LGPL +licensing. Also add pkgconfig file generation to simplify usage, fix +header installation, and use pkgconfig to pull in libqrencode instead +of having to clone a copy in-tree and building it. + +Upstream-Status: inappropriate [embedded-specific] + +Signed-off-by: Scott Murray + +diff --git a/lib/lib.pro b/lib/lib.pro +index d046bc4..6b6c199 100644 +--- a/lib/lib.pro ++++ b/lib/lib.pro +@@ -1,6 +1,9 @@ + TARGET = qtqrcode + TEMPLATE = lib + ++CONFIG += link_pkgconfig create_pc create_prl no_install_prl ++PKGCONFIG += libqrencode ++ + DEFINES += \ + QTQRCODE_LIBRARY \ + QTQRCODE_PLUS_FEATURES +@@ -12,7 +15,8 @@ contains(DEFINES, QTQRCODE_PLUS_FEATURES) { + qtqrcodepainter.cpp + + HEADERS +=\ +- qtqrcodepainter.h ++ qtqrcodepainter.h \ ++ QtQrCodePainter + + } else { + QT -= gui +@@ -23,16 +27,29 @@ SOURCES += \ + + HEADERS +=\ + qtqrcode_global.h \ +- qtqrcode.h ++ qtqrcode.h \ ++ QtQrCode + + INCLUDEPATH += $$PWD + + include(../defaults.pri) +-include(libqrencode.pri) + # Default rules for deployment. + include(deployment.pri) + + unix { ++ headers.path = /usr/include + target.path = /usr/lib +- INSTALLS += target + } ++ ++headers.files = $$HEADERS ++ ++INSTALLS += headers ++ ++QMAKE_PKGCONFIG_NAME = qtqrcode ++QMAKE_PKGCONFIG_FILE = $${QMAKE_PKGCONFIG_NAME} ++QMAKE_PKGCONFIG_VERSION = $${VERSION} ++QMAKE_PKGCONFIG_DESCRIPTION = A wrapper interface for qrencode for Qt ++QMAKE_PKGCONFIG_LIBDIR = ${prefix}/lib ++QMAKE_PKGCONFIG_INCDIR = ${prefix}/include ++QMAKE_PKGCONFIG_REQUIRES = libqrencode ++QMAKE_PKGCONFIG_DESTDIR = pkgconfig +diff --git a/lib/qtqrcode.h b/lib/qtqrcode.h +index 2a7a1ff..0830826 100644 +--- a/lib/qtqrcode.h ++++ b/lib/qtqrcode.h +@@ -31,7 +31,7 @@ + #include + #include + +-#include "libqrencode/qrencode.h" ++#include + + class QtQrCodeData; + +diff --git a/quickitem/quickitem.pro b/quickitem/quickitem.pro +index ecfef1b..067dc46 100644 +--- a/quickitem/quickitem.pro ++++ b/quickitem/quickitem.pro +@@ -1,5 +1,7 @@ +-TEMPLATE = app +-TARGET = QuickItem ++TEMPLATE = lib ++TARGET = qtqrcode-quickitem ++ ++CONFIG += create_pc create_prl no_install_prl + + QT += qml quick widgets + +@@ -7,7 +9,7 @@ LIBS += -L../lib -lqtqrcode + + DEFINES += + +-SOURCES += main.cpp \ ++SOURCES += \ + QtQrCodeQuickItem.cpp + + HEADERS += \ +@@ -21,3 +23,21 @@ QML_IMPORT_PATH = + include(../defaults.pri) + # Default rules for deployment. + include(deployment.pri) ++ ++unix { ++ headers.path = /usr/include ++ target.path = /usr/lib ++} ++ ++headers.files = $$HEADERS ++ ++INSTALLS += headers ++ ++QMAKE_PKGCONFIG_NAME = qtqrcode-quickitem ++QMAKE_PKGCONFIG_FILE = $${QMAKE_PKGCONFIG_NAME} ++QMAKE_PKGCONFIG_VERSION = $${VERSION} ++QMAKE_PKGCONFIG_DESCRIPTION = Qt QuickItem wrapper for qt-qrcode library ++QMAKE_PKGCONFIG_LIBDIR = ${prefix}/lib ++QMAKE_PKGCONFIG_INCDIR = ${prefix}/include ++QMAKE_PKGCONFIG_REQUIRES = qtqrcode ++QMAKE_PKGCONFIG_DESTDIR = pkgconfig +diff --git a/widget/widget.pro b/widget/widget.pro +index 2e26a8c..63add50 100644 +--- a/widget/widget.pro ++++ b/widget/widget.pro +@@ -1,5 +1,7 @@ +-TEMPLATE = app +-TARGET = Widget ++TEMPLATE = lib ++TARGET = qtqrcode-widget ++ ++CONFIG += create_pc create_prl no_install_prl + + greaterThan(QT_MAJOR_VERSION, 4): QT += widgets + +@@ -9,18 +11,28 @@ LIBS += -L../lib -lqtqrcode + + DEFINES += + +-SOURCES += main.cpp\ +- MainWindow.cpp \ +- QtQrCodeWidget.cpp +- +-HEADERS += MainWindow.hpp \ +- QtQrCodeWidget.hpp ++SOURCES += QtQrCodeWidget.cpp + +-FORMS += MainWindow.ui +- +-CONFIG += mobility +-MOBILITY = ++HEADERS += QtQrCodeWidget.hpp + + include(../defaults.pri) + # Default rules for deployment. + include(deployment.pri) ++ ++unix { ++ headers.path = /usr/include ++ target.path = /usr/lib ++} ++ ++headers.files = $$HEADERS ++ ++INSTALLS += headers ++ ++QMAKE_PKGCONFIG_NAME = qtqrcode-widget ++QMAKE_PKGCONFIG_FILE = $${QMAKE_PKGCONFIG_NAME} ++QMAKE_PKGCONFIG_VERSION = $${VERSION} ++QMAKE_PKGCONFIG_DESCRIPTION = Qt widget wrapper for qt-qrcode library ++QMAKE_PKGCONFIG_LIBDIR = ${prefix}/lib ++QMAKE_PKGCONFIG_INCDIR = ${prefix}/include ++QMAKE_PKGCONFIG_REQUIRES = qtqrcode ++QMAKE_PKGCONFIG_DESTDIR = pkgconfig diff --git a/_to_remove/recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch b/_to_remove/recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch new file mode 100644 index 000000000..489a49edb --- /dev/null +++ b/_to_remove/recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch @@ -0,0 +1,25 @@ +From 5fc5a92e3568674a08a6e7594d050e963d0d854b Mon Sep 17 00:00:00 2001 +From: Raquel Medina +Date: Mon, 18 May 2020 19:18:00 +0200 +Subject: [PATCH] fix dangling pointer + +Bug-AGL: SPEC-3664 +Signed-off-by: Raquel Medina +--- + lib/qtqrcode.cpp | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/lib/qtqrcode.cpp b/lib/qtqrcode.cpp +index a7000f0..825c354 100644 +--- a/lib/qtqrcode.cpp ++++ b/lib/qtqrcode.cpp +@@ -116,8 +116,7 @@ void QtQrCode::setBaseQrCodeData(QRcode *qrCode) + { + d->width = qrCode->width; + d->data.clear(); +- // TODO: Beware it here +- d->data = (const char *) qrCode->data; ++ d->data = QByteArray(reinterpret_cast(qrCode->data), d->width*d->width); + QRcode_free(qrCode); + } + diff --git a/_to_remove/recipes-qt/qt-qrcode/qt-qrcode_git.bb b/_to_remove/recipes-qt/qt-qrcode/qt-qrcode_git.bb new file mode 100644 index 000000000..fcc71390d --- /dev/null +++ b/_to_remove/recipes-qt/qt-qrcode/qt-qrcode_git.bb @@ -0,0 +1,19 @@ +SUMMARY = "Qt QR code library" +DESCRIPTION = "Qt/C++ library for encoding and visualization of data in a \ +QR Code symbol. This library consists of a Qt wrapper for libqrencode, and \ +Qt components that are able to visualize the result." +LICENSE = "LGPLv3+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=94a3f3bdf61243b5e5cf569fbfbbea52" + +DEPENDS = "qtbase qtdeclarative qtquickcontrols2 qtsvg qrencode" + +SRC_URI = "git://github.com/danielsanfr/qt-qrcode.git;protocol=https \ + file://0001-rework-library-build.patch \ + file://0002-fix-dangling-pointer.patch \ + " +SRCREV = "2d57d9c6e2341689d10f9360a16a08831a4a820b" + +PV = "git${SRCPV}" +S = "${WORKDIR}/git" + +inherit qmake5 diff --git a/_to_remove/recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch b/_to_remove/recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch new file mode 100644 index 000000000..fe08b7d81 --- /dev/null +++ b/_to_remove/recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch @@ -0,0 +1,33 @@ +From 59acd73ba3bd6cc4151b890d135c6d690a83374d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jan-Simon=20M=C3=B6ller?= +Date: Tue, 1 Oct 2019 15:24:07 +0000 +Subject: [PATCH] Change Makefile to use pkg-config for libxml-2.0 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +instead of xml2-config. + +Upstream-Status: Pending + +Signed-off-by: Jan-Simon Möller +--- + lin_config/src/Makefile | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/Makefile b/Makefile +index cf5c515..3fc4df1 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,6 +1,5 @@ +-CC=gcc +-CFLAGS=-std=gnu99 -Wall -pedantic $(DEBUG) `xml2-config --cflags` `pkg-config --cflags libnl-route-3.0` -I$(INCLUDE) +-LIBS=`xml2-config --libs` `pkg-config --libs libnl-route-3.0` ++CFLAGS=-std=gnu99 -Wall -pedantic $(DEBUG) `pkg-config --cflags libxml-2.0` `pkg-config --cflags libnl-route-3.0` -I$(INCLUDE) ++LIBS=`pkg-config --libs libxml-2.0` `pkg-config --libs libnl-route-3.0` + INCLUDE=../../sllin + DEBUG=-ggdb + +-- +2.16.4 + diff --git a/_to_remove/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch b/_to_remove/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch new file mode 100644 index 000000000..26364455a --- /dev/null +++ b/_to_remove/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch @@ -0,0 +1,20 @@ +Use LDFLAGS when linking + +Use LDFLAGS when linking the output binary to quiet QA warnings due to +missing link flags. + +Upstream-Status: Pending + +Signed-off-by: Scott Murray + +--- a/Makefile 2019-11-05 11:08:11.060565285 +0000 ++++ b/Makefile 2019-11-05 11:09:38.663570084 +0000 +@@ -6,7 +6,7 @@ + objects = linc_parse_xml.o pcl_config.o sllin_config.o lin_config.o + + lin_config: $(objects) +- $(CC) $(objects) $(LIBS) -o lin_config ++ $(CC) $(LDFLAGS) $(objects) $(LIBS) -o lin_config + + %.o : %.c %.h + $(CC) $(CFLAGS) $(LIBS) -c $< -o $@ diff --git a/_to_remove/recipes-support/lin-config/lin-config_git.bb b/_to_remove/recipes-support/lin-config/lin-config_git.bb new file mode 100644 index 000000000..7585156f2 --- /dev/null +++ b/_to_remove/recipes-support/lin-config/lin-config_git.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "lin-config tool for the sllin driver module" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://lin_config.c;beginline=4;endline=9;md5=196a29df19a30dbc752937bdfc819d7a" + +DEPENDS += "libnl libxml2" + +SRC_URI = "git://github.com/trainman419/linux-lin.git;protocol=https" +SRCREV = "155d885e8ccc907a56f6c86c4b159fac27ef6fec" +S = "${WORKDIR}/git/lin_config/src" + +SRC_URI:append = " \ + file://0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch \ + file://0002-Change-Makefile-to-use-LDFLAGS.patch \ + " + +inherit pkgconfig + +PV = "0.1+git${SRCPV}" + +do_configure[noexec] = "1" + +do_install:append() { + install -d ${D}/${bindir} + install -m 755 ${S}/lin_config ${D}/${bindir} +} diff --git a/_to_remove/recipes-support/opencv/opencv_4.%.bbappend b/_to_remove/recipes-support/opencv/opencv_4.%.bbappend new file mode 100644 index 000000000..a1016a6d0 --- /dev/null +++ b/_to_remove/recipes-support/opencv/opencv_4.%.bbappend @@ -0,0 +1 @@ +require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'opencv_agldemo.inc', '', d)} diff --git a/_to_remove/recipes-support/opencv/opencv_agldemo.inc b/_to_remove/recipes-support/opencv/opencv_agldemo.inc new file mode 100644 index 000000000..16640023e --- /dev/null +++ b/_to_remove/recipes-support/opencv/opencv_agldemo.inc @@ -0,0 +1 @@ +PACKAGECONFIG:poky = "jpeg png v4l libv4l gstreamer" diff --git a/_to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper b/_to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper new file mode 100644 index 000000000..12580237d --- /dev/null +++ b/_to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper @@ -0,0 +1,320 @@ +#!/bin/bash +# +# Copyright (C) 2020 Konsulko Group +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# gcovr wrapper for generating coverage reports against AGL bindings +# on target. With a given binding name or coverage widget file, the +# coverage version will be installed, and the pyagl tests for the +# binding run before generating a report with gcovr. The afm-test +# test widget or a user-supplied command may be run instead of the +# pyagl tests, see usage below, or run with "--help". +# + +usage() { + cat <<-EOF + Usage: + $(basename $0) [options] + + Options: + -h, --help + Print this help and exit + + -k, --keep + Do not remove temporary files/directories + + -o, --gcovr-options + Additional gcovr options, multiple options should be quoted + + -w, --workdir + gcov/gcovr temporary working directory, defaults to /tmp/gcov + The directory will be removed after running without --keep if it + is empty, use caution if specifying existing system directories! + + --pyagl + Run pyagl tests for binding, enabled by default + + --afm-test + Run afm-test test widget tests for binding. + If specified, disables pyagl tests; note that the last argument in + the command-line will take precedence. + + -c, --command + Test command to use in place of pyagl or afm-test, should be quote + If specified, disables pyagl and afm-test tests. + + EOF +} + +# Helper to validate widget install dir +check_wgt_install() { + if [ ! \( -d $1 -o -f $1/config.xml \) ]; then + echo "ERROR: No widget install at $1" + exit 1 + elif [ ! -d $1/src ]; then + echo "ERROR: No source in $1/src" + exit 1 + fi +} + +# Helper to run gcovr inside mount namespace environment +gcovr_runner() { + wgt_install_dir=/var/local/lib/afm/applications/$1 + check_wgt_install ${wgt_install_dir} + + if [ ! -d $workdir/$1 ]; then + echo "ERROR: No coverage data in $workdir/$1" + exit 1 + fi + + # Get original source path + gcno=$(cd $workdir/$1 && find -name '*.gcno' | head -n 1 | cut -d/ -f2-) + if [ -z "$gcno" ]; then + echo "ERROR: no gcno file found in $workdir/$1" + exit 1 + fi + srcfile=$(strings $workdir/$1/${gcno} | grep "$(basename ${gcno%.gcno})$" | uniq) + srcdir=$(echo $srcfile | sed "s|/${gcno%%/*}/.*$||") + + # Set up mounts for chroot to run gcovr in + # NOTE: We do not unmount these later, as we assume we are in a + # private mount namespace and they will go away on exit from + # it. + echo "Setting up mounts" + tmpdir=$(mktemp -d) + echo $tmpdir > $workdir/.runner_tmpdir + mkdir -p $tmpdir/{lower,upper,work,merged} + # NOTE: Could potentially use rbind here, but explicitly mounting + # just what we need seems safer + mount --bind / $tmpdir/lower + mount -t overlay -o lowerdir=$tmpdir/lower,upperdir=$tmpdir/upper,workdir=$tmpdir/work overlay $tmpdir/merged + mount --bind /proc $tmpdir/merged/proc + mount --bind /sys $tmpdir/merged/sys + mount --bind /dev $tmpdir/merged/dev + mount --bind /tmp $tmpdir/merged/tmp + # Bind in the data files + # NOTE: $workdir is bound instead of specifically just $workdir/$1, + # so that e.g. html output to another directory in /tmp will + # work as expected. A determined user may be able to shoot + # themselves in the foot, but for now the trade off seems + # acceptable. + mkdir -p $tmpdir/merged/$workdir + mount --bind $workdir $tmpdir/merged/$workdir + # Bind the source files to their expected location + mkdir -p $tmpdir/merged/$srcdir + mount --bind ${wgt_install_dir}/src $tmpdir/merged/$srcdir + + echo "Entering chroot" + echo + exec chroot $tmpdir/merged \ + /usr/bin/gcovr -r $srcdir --object-directory $workdir/$1 --gcov-filter-source-errors -s ${GCOV_RUNNER_GCOVR_OPTIONS} +} + +# Helper to clean up after runner +gcovr_runner_cleanup() { + rm -rf $workdir/$1 + if [ -f $workdir/.runner_tmpdir ]; then + tmpdir=$(cat $workdir/.runner_tmpdir) + rm -rf $tmpdir + rm -f $workdir/.runner_tmpdir + fi + if [ "$workdir" != "/tmp" ]; then + rmdir $workdir 2>/dev/null || true + fi +} + +# Parse arguments +OPTS=$(getopt -o +hko:pw:c: --longoptions gcovr-runner,afm-test,command:,help,keep,gcovr-options:,pyagl,workdir: -n "$(basename $0)" -- "$@") +if [ $? -ne 0 ]; then + exit 1 +fi +eval set -- "$OPTS" + +runner=false +keep=false +wgt="" +cmd="" +options="" +afmtest=false +pyagl=true +workdir="/tmp/gcov" + +while true; do + case "$1" in + --gcovr-runner) runner=true; shift;; + --afm-test) afmtest=true; pyagl=false; shift;; + -c|--command) cmd="$2"; shift; shift;; + -h|--help) usage; exit 0;; + -k|--keep) keep=true; shift;; + -o|--gcovr-options) options="$2"; shift; shift;; + -p|--pyagl) pyagl=true; afmtest=false; shift;; + -w|--workdir) workdir="$2"; shift; shift;; + --) shift; break;; + *) break;; + esac +done + +# Encode the assumption that a specified command means it runs instead +# of any other tests. +if [ -s "$cmd" ]; then + pyagl=false + afmtest=false +fi + +if [ $# -ne 1 ]; then + # Always expect widget name as single non-option argument + usage + exit 1 +fi + +# Rationalize workdir just in case +workdir=$(realpath "$workdir") + +if [ "$runner" = "true" ]; then + if [ "${GCOV_RUNNER_READY}" != "true" ]; then + echo "ERROR: gcovr environment not ready!" + exit 1 + fi + gcovr_runner $1 + # If we get here, it'd be an error, so return 1 + exit 1 +fi + +binding=$1 +if [ "${1%.wgt}" != "$1" ]; then + # User has specified path to a widget file + wgt=$(realpath $1) + binding=$(basename "${1%-coverage.wgt}") +else + wgt=/usr/AGL/apps/coverage/${binding}-coverage.wgt +fi +if [ ! -f $wgt ]; then + echo "ERROR: No widget $wgt" + exit 1 +elif [ "$afmtest" = "true" -a ! -f /usr/AGL/apps/test/${binding}-test.wgt ]; then + echo "ERROR: No test widget for $binding" + exit 1 +fi + +# Determine starting systemd unit name +service=$(systemctl --all |grep afm-service-$binding |sed 's/^[ *] \([^ ]*\).*/\1/') +if [ -z "$service" ]; then + echo "ERROR: Could not determine systemd service unit for $binding" + exit 1 +fi + +# Install coverage widget +echo "Removing $binding widget" +systemctl stop $service +afm-util remove $binding +echo +echo "Installing $binding coverage widget" +afm-util install $wgt +echo + +wgt_install_dir=/var/local/lib/afm/applications/$binding +check_wgt_install ${wgt_install_dir} +gcov_src=${wgt_install_dir}/coverage +if [ ! -d ${gcov_src} ]; then + echo "ERROR: No coverage information in ${gcov_src}" + exit 1 +elif [ ! -f ${gcov_src}/gcov.env ]; then + echo "ERROR: No gcov environment file at ${gcov_src}/gcov.env" + exit 1 +fi + +# +# NOTE: In theory, the coverage data collection could be done inside +# the mount namespace / chroot, but the potential for issues +# when doing that seems higher than just running gcovr there, +# so a conservative approach is taken. +# + +# Set up things for the binary to write out gcda data files +# +# Having the matching build directory hierarchy in place and +# writeable by the target binary before any restart and testing is +# key to things working. +# +# As well, the environment file with the GCOV_PREFIX and +# GCOV_PREFIX_STRIP values needs to be present before running so the +# gcda files will get written into the relocated build hierarchy. +# +echo "Installing coverage information for $binding" +mkdir -p $workdir +rm -rf $workdir/$binding +cp -dr ${gcov_src} $workdir/$binding +chsmack -r -a System::Log $workdir +chmod -R go+w $workdir + +# Install the gcov environment file +mkdir -p /etc/afm/widget.env.d/$binding +if [ "${workdir}" = "/tmp/gcov" ]; then + cp ${gcov_src}/gcov.env /etc/afm/widget.env.d/$binding/gcov +else + # Update GCOV_PREFIX to point into workdir + sed "s|^GCOV_PREFIX=.*|GCOV_PREFIX=${workdir}/$binding|" ${gcov_src}/gcov.env > /etc/afm/widget.env.d/$binding/gcov +fi +chsmack -r -a _ /etc/afm/widget.env.d/$binding + +# Determine new systemd unit name (version may now be different) +service=$(systemctl --all |grep afm-service-$binding |sed 's/^[ *] \([^ ]*\).*/\1/') +if [ -z "$service" ]; then + echo "ERROR: Could not determine systemd service unit for $binding" + exit 1 +fi + +# Restart the binding +systemctl start $service +echo + +# Run tests or given command +if [ -n "$cmd" ]; then + echo "Running command: $cmd" + export AGL_AVAILABLE_INTERFACES=${AGL_AVAILABLE_INTERFACES:-ethernet} + eval $cmd +elif [ "$pyagl" = "true" ]; then + echo "Running $binding pyagl tests" + export AGL_AVAILABLE_INTERFACES=${AGL_AVAILABLE_INTERFACES:-ethernet} + pytest -k "${binding#agl-service-} and not hwrequired" /usr/lib/python3.?/site-packages/pyagl +else + echo "Running $binding test widget" + # NOTE: su to agl-driver is required here to avoid fallout from + # the "afm-util run" in afm-test seemingly triggering the + # start of other per-user bindings for the root user. + su -l -c "/usr/bin/afm-test /usr/AGL/apps/test/${binding}-test.wgt" agl-driver +fi + +# Restart again to trigger data file writing +systemctl restart $service +echo + +# Run ourselves in gcovr runner mode inside a private mount namespace +export GCOV_RUNNER_READY=true +# NOTE: Passing gcovr options in the environment to avoid quoting hassles +export GCOV_RUNNER_GCOVR_OPTIONS="$options" +runner_options="--workdir ${workdir}" +unshare -m $0 --gcovr-runner ${runner_options} $binding +rc=$? + +if [ "$keep" != "true" ]; then + # Clean up after ourselves + gcovr_runner_cleanup $1 + rm -f /etc/afm/widget.env.d/$1/gcov + rmdir /etc/afm/widget.env.d/$1 2>/dev/null || true +fi + +exit $rc + diff --git a/_to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb b/_to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb new file mode 100644 index 000000000..8cb228d50 --- /dev/null +++ b/_to_remove/recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb @@ -0,0 +1,17 @@ +SUMMARY = "AGL gcovr wrapper" +DESCRIPTION = "This wrapper script enables running gcovr against a \ +AGL binding to generate a coverage report of running pyagl tests, \ +the afm-test test widget, or a user-supplied command." + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +SRC_URI += "file://gcovr-wrapper" + +inherit allarch + +do_install() { + install -D -m 0755 ${WORKDIR}/gcovr-wrapper ${D}${bindir}/gcovr-wrapper +} + +RDEPENDS:${PN} = "bash gcovr" diff --git a/_to_remove/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch b/_to_remove/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch new file mode 100644 index 000000000..be1dcf829 --- /dev/null +++ b/_to_remove/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch @@ -0,0 +1,68 @@ +Add option to filter gcov source errors + +Add "--gcov-filter-source-errors" to apply filters to the source +files in the errors from gcov. If all source files in the errors +are filtered, then the error is ignored so that the file will be +processed. This enables the usecase of running on a target where +only the source tree for a binary is available, but not all of the +external source headers are. + +Upstream-Status: pending + +Signed-off-by: Scott Murray + +diff --git a/gcovr/configuration.py b/gcovr/configuration.py +index 1356097..083532c 100644 +--- a/gcovr/configuration.py ++++ b/gcovr/configuration.py +@@ -915,6 +915,14 @@ GCOVR_CONFIG_OPTIONS = [ + "Default: {default!s}.", + action="store_true", + ), ++ GcovrConfigOption( ++ "gcov_filter_source_errors", ['--gcov-filter-source-errors'], ++ group="gcov_options", ++ help="Apply filters to missing source file errors in GCOV files " ++ "instead of exiting with an error. " ++ "Default: {default!s}.", ++ action="store_true", ++ ), + GcovrConfigOption( + "objdir", ['--object-directory'], + group="gcov_options", +diff --git a/gcovr/gcov.py b/gcovr/gcov.py +index de79215..171d68d 100644 +--- a/gcovr/gcov.py ++++ b/gcovr/gcov.py +@@ -667,11 +667,27 @@ def run_gcov_and_process_files( + chdir=chdir, + tempdir=tempdir) + ++ skip = False + if source_re.search(err): +- # gcov tossed errors: try the next potential_wd +- error(err) +- done = False +- else: ++ ignore = False ++ if options.gcov_filter_source_errors: ++ # Check if errors are all from source that is filtered ++ ignore = True ++ for line in err.splitlines(): ++ src_fname = line.split()[-1] ++ filtered, excluded = apply_filter_include_exclude( ++ src_fname, options.filter, options.exclude) ++ if not (filtered or excluded): ++ ignore = False ++ break ++ ++ if not ignore: ++ # gcov tossed errors: try the next potential_wd ++ error(err) ++ skip = True ++ ++ done = False ++ if not skip: + # Process *.gcov files + for fname in active_gcov_files: + process_gcov_data(fname, covdata, abs_filename, options) diff --git a/_to_remove/recipes-test/gcovr/gcovr_%.bbappend b/_to_remove/recipes-test/gcovr/gcovr_%.bbappend new file mode 100644 index 000000000..699aea214 --- /dev/null +++ b/_to_remove/recipes-test/gcovr/gcovr_%.bbappend @@ -0,0 +1,2 @@ +# Add not yet upstreamed patch that enables on target gcov usage +SRC_URI += "file://0001-add-gcov-filter-source-errors-option.patch" diff --git a/_to_remove/recipes-test/gcovr/gcovr_git.bb b/_to_remove/recipes-test/gcovr/gcovr_git.bb new file mode 100644 index 000000000..d302c0f63 --- /dev/null +++ b/_to_remove/recipes-test/gcovr/gcovr_git.bb @@ -0,0 +1,32 @@ +SUMMARY = "Generate GCC code coverage reports" +DESCRIPTION = "Gcovr provides a utility for managing the use of the GNU gcov \ +utility and generating summarized code coverage results." +HOMEPAGE = "https://gcovr.com" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=221e634a1ceafe02ef74462cbff2fb16" + +PV = "4.2+git${SRCPV}" +SRC_URI = "git://github.com/gcovr/gcovr.git;protocol=https" +SRCREV = "1bc72e3bb59b9296e962b350691732ddafbd3195" + +S = "${WORKDIR}/git" + +inherit setuptools3 + +RDEPENDS:${PN} += " \ + python3-compression \ + python3-core \ + python3-crypt \ + python3-datetime \ + python3-difflib \ + python3-io \ + python3-jinja2 \ + python3-json \ + python3-lxml \ + python3-multiprocessing \ + python3-pygments \ + python3-pytest \ + python3-shell \ + python3-threading \ + python3-typing \ +" diff --git a/_to_remove/recipes-test/pyagl/pyagl_git.bb b/_to_remove/recipes-test/pyagl/pyagl_git.bb new file mode 100644 index 000000000..ee01ce52f --- /dev/null +++ b/_to_remove/recipes-test/pyagl/pyagl_git.bb @@ -0,0 +1,33 @@ +SUMMARY = "Python bindings and tests for Automotive Grade Linux services" +HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/src/pyagl" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/pyagl;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "137a32d3b0068e2141ed9aab23d8a8956c0cb094" +PV = "${AGL_BRANCH}+git${SRCPV}" + +S = "${WORKDIR}/git" + +inherit setuptools3 + +do_install:append() { + install -D -m 0755 ${S}/pyagl/scripts/pyagl ${D}${bindir}/pyagl +} + +RDEPENDS:${PN} += " \ + python3-asyncio \ + python3-asyncssh \ + python3-core \ + python3-json \ + python3-logging \ + python3-math \ + python3-parse \ + python3-pprint \ + python3-pytest \ + python3-pytest-asyncio \ + python3-pytest-dependency \ + python3-pytest-reverse \ + python3-typing \ + python3-websockets \ +" diff --git a/_to_remove/recipes-wam/chromium/chromium-browser-service.bb b/_to_remove/recipes-wam/chromium/chromium-browser-service.bb new file mode 100644 index 000000000..d9a4206d5 --- /dev/null +++ b/_to_remove/recipes-wam/chromium/chromium-browser-service.bb @@ -0,0 +1,19 @@ +SUMMARY = "Chromium browser widget" +DESCRIPTION = "Wgt packaging for running chromium installed browser" +HOMEPAGE = "https://webosose.org" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/chromium;protocol=https;branch=${AGL_BRANCH}" +SRCREV = "${AGL_APP_REVISION}" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" + +#build-time dependencies +DEPENDS += "af-binder af-main-native chromium84" + +inherit cmake aglwgt + +RDEPENDS:${PN} += "chromium84-browser" diff --git a/_to_remove/recipes-wam/chromium/chromium.inc b/_to_remove/recipes-wam/chromium/chromium.inc new file mode 100644 index 000000000..722ba9a34 --- /dev/null +++ b/_to_remove/recipes-wam/chromium/chromium.inc @@ -0,0 +1,354 @@ +# Copyright (c) 2018 LG Electronics, Inc. + +SUMMARY = "Chromium webruntime for webOS" +AUTHOR = "Lokesh Kumar Goel " +SECTION = "webos/apps" +LICENSE = "Apache-2.0 & BSD-3-Clause & LGPL-2.0 & LGPL-2.1" +LIC_FILES_CHKSUM = "\ + file://src/LICENSE;md5=0fca02217a5d49a14dfe2d11837bb34d \ + file://src/third_party/blink/renderer/core/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \ + file://src/third_party/blink/renderer/core/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \ +" + +require gn-utils.inc + +inherit gettext qemu pythonnative + +DEPENDS = "virtual/gettext wayland wayland-native pixman freetype glib-2.0 fontconfig openssl pango cairo icu libxkbcommon libexif dbus pciutils udev libcap alsa-lib virtual/egl elfutils-native libdrm atk at-spi2-atk gperf-native gconf nss nss-native nspr nspr-native bison-native qemu-native" + +PROVIDES = "${BROWSER_APPLICATION}" + +SRCREV_v8 = "1e3af71f1ff3735e8a5b639c48dfca63a7b8a647" + +# we don't include SRCPV in PV, so we have to manually include SRCREVs in do_fetch vardeps +do_fetch[vardeps] += "SRCREV_v8" +SRCREV_FORMAT = "main_v8" + +S = "${WORKDIR}/git" + +SRC_DIR = "${S}/src" +BUILD_TYPE = "Release" + +B = "${WORKDIR}/build" +OUT_DIR = "${B}/${BUILD_TYPE}" + +WEBRUNTIME_BUILD_TARGET = "webos:weboswebruntime" +BROWSER_APP_BUILD_TARGET = "chrome" +BROWSER_APPLICATION = "chromium84-browser" +BROWSER_APPLICATION_DIR = "/opt/chromium84" + +TARGET = "${WEBRUNTIME_BUILD_TARGET} ${BROWSER_APP_BUILD_TARGET}" + +# Skip do_install:append of webos_system_bus. It is not compatible with this component. +WEBOS_SYSTEM_BUS_FILES_LOCATION = "${S}/files/sysbus" + +PACKAGECONFIG ?= "jumbo use-upstream-wayland" + + +# Set a default value for jumbo file merge of 8. This should be good for build +# servers and workstations with a big number of cores. In case build is +# happening in a machine with less cores but still enough RAM a good value could +# be 50. +JUMBO_FILE_MERGE_LIMIT="8" +PACKAGECONFIG[jumbo] = "use_jumbo_build=true jumbo_file_merge_limit=${JUMBO_FILE_MERGE_LIMIT}, use_jumbo_build=false" + +PACKAGECONFIG[lttng] = "use_lttng=true,use_lttng=false,lttng-ust,lttng-tools lttng-modules babeltrace" + +# Chromium can use v4l2 device for hardware accelerated video decoding on such boards as Renesas R-car M3, for example. +# In case of R-car m3, additional patches are required for gstreamer and v4l2apps. +# See https://github.com/igel-oss/meta-browser-hwdecode/tree/igalia-chromium71. +PACKAGECONFIG[use-linux-v4l2] = "use_v4l2_codec=true use_v4lplugin=true use_linux_v4l2_only=true" + +PACKAGECONFIG[use-upstream-wayland] = " \ + ozone_platform_wayland_external=false ozone_platform_wayland=true, \ + ozone_platform_wayland_external=true ozone_platform_wayland=false \ +" + +GN_ARGS = "\ + enable_memorymanager_webapi=false\ + ffmpeg_branding=\"Chrome\"\ + host_os=\"linux\"\ + ozone_auto_platforms=false\ + proprietary_codecs=true\ + target_os=\"linux\"\ + treat_warnings_as_errors=false\ + is_agl=true\ + use_cbe=true\ + is_chrome_cbe=true\ + is_component_build=false\ + use_cups=false\ + use_custom_libcxx=false\ + use_kerberos=false\ + use_neva_media=false\ + use_ozone=true\ + use_xkbcommon=true\ + use_wayland_gbm=false\ + use_pmlog=false\ + use_system_debugger_abort=true\ + ${PACKAGECONFIG_CONFARGS}\ +" + +# From Chromium's BUILDCONFIG.gn: +# Set to enable the official build level of optimization. This has nothing +# to do with branding, but enables an additional level of optimization above +# release (!is_debug). This might be better expressed as a tri-state +# (debug, release, official) but for historical reasons there are two +# separate flags. +# See also: https://groups.google.com/a/chromium.org/d/msg/chromium-dev/hkcb6AOX5gE/PPT1ukWoBwAJ +GN_ARGS += "is_debug=false is_official_build=true" + +# is_cfi default value is true for x86-64 builds with is_official_build=true. +# As of M63, we explicitly need to set it to false, otherwise we fail the +# following assertion in //build/config/sanitizers/sanitizers.gni: +# assert(!is_cfi || is_clang, +# "is_cfi requires setting is_clang = true in 'gn args'") +GN_ARGS += "is_cfi=false" + +# By default, passing is_official_build=true to GN causes its symbol_level +# variable to be set to "2". This means the compiler will be passed "-g2" and +# we will end up with a very large chrome binary (around 5Gb as of M58) +# regardless of whether DEBUG_BUILD has been set or not. In addition, binutils, +# file and other utilities are unable to read a 32-bit binary this size, which +# causes it not to be stripped. +# The solution is two-fold: +# 1. Make sure -g is not passed on 32-bit architectures via DEBUG_FLAGS. -g is +# the same as -g2. -g1 generates an 800MB binary, which is a lot more +# manageable. +# 2. Explicitly pass symbol_level=0 to GN. This causes -g0 to be passed +# instead, so that if DEBUG_BUILD is not set GN will not create a huge debug +# binary anyway. Since our compiler flags are passed after GN's, -g0 does +# not cause any issues if DEBUG_BUILD is set, as -g1 will be passed later. +DEBUG_FLAGS:remove:arm = "-g" +DEBUG_FLAGS:append:arm = "-g1" +DEBUG_FLAGS:remove:x86 = "-g" +DEBUG_FLAGS:append:x86 = "-g1" +GN_ARGS += "symbol_level=0" + +# We do not want to use Chromium's own Debian-based sysroots, it is easier to +# just let Chromium's build system assume we are not using a sysroot at all and +# let Yocto handle everything. +GN_ARGS += "use_sysroot=false" + +# ARM builds need special additional flags (see ${S}/build/config/arm.gni). +# If we do not pass |arm_arch| and friends to GN, it will deduce a value that +# will then conflict with TUNE_CCARGS and CC. +# Note that as of M61 in some corner cases parts of the build system disable +# the "compiler_arm_fpu" GN config, whereas -mfpu is always passed via ${CC}. +# We might want to rework that if there are issues in the future. +def get_compiler_flag(params, param_name, d): + """Given a sequence of compiler arguments in |params|, returns the value of + an option |param_name| or an empty string if the option is not present.""" + for param in params: + if param.startswith(param_name): + return param.split('=')[1] + return '' + +ARM_FLOAT_ABI = "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hard', 'softfp', d)}" +ARM_FPU = "${@get_compiler_flag(d.getVar('TUNE_CCARGS').split(), '-mfpu', d)}" +ARM_TUNE = "${@get_compiler_flag(d.getVar('TUNE_CCARGS').split(), '-mcpu', d)}" +ARM_VERSION:aarch64 = "8" +ARM_VERSION:armv7a = "7" +ARM_VERSION:armv7ve = "7" +ARM_VERSION:armv6 = "6" + +# GN computes and defaults to it automatically where needed +# forcing it from cmdline breaks build on places where it ends up +# overriding what GN wants +TUNE_CCARGS:remove = "-mthumb" + +GN_ARGS:append:arm = " \ + arm_float_abi=\"${ARM_FLOAT_ABI}\" \ + arm_fpu=\"${ARM_FPU}\" \ + arm_tune=\"${ARM_TUNE}\" \ + arm_version=${ARM_VERSION} \ +" +# tcmalloc's atomicops-internals-arm-v6plus.h uses the "dmb" instruction that +# is not available on (some?) ARMv6 models, which causes the build to fail. +GN_ARGS:append:armv6 += 'use_allocator="none"' +# The WebRTC code fails to build on ARMv6 when NEON is enabled. +# https://bugs.chromium.org/p/webrtc/issues/detail?id=6574 +GN_ARGS:append:armv6 += 'arm_use_neon=false' + +# Disable glibc shims on musl +# tcmalloc does not play well with musl as of M62 (and possibly earlier). +# https://github.com/gperftools/gperftools/issues/693 +GN_ARGS:append:libc-musl = ' use_allocator_shim=false' + +# More options to speed up the build +GN_ARGS += "\ + enable_nacl=false\ + disable_ftp_support=true\ + enable_print_preview=false\ + enable_remoting=false\ + use_glib=true\ + use_gnome_keyring=false\ + use_pulseaudio=false\ +" + +# Doesn't build for armv[45]* +COMPATIBLE_MACHINE = "(-)" +COMPATIBLE_MACHINE:aarch64 = "(.*)" +COMPATIBLE_MACHINE:armv6 = "(.*)" +COMPATIBLE_MACHINE:armv7a = "(.*)" +COMPATIBLE_MACHINE:armv7ve = "(.*)" +COMPATIBLE_MACHINE:x86 = "(.*)" +COMPATIBLE_MACHINE:x86-64 = "(.*)" + +#CHROMIUM_PLUGINS_PATH = "${libdir}" +CBE_DATA_PATH = "${libdir}/cbe" +CBE_DATA_LOCALES_PATH = "${CBE_DATA_PATH}/locales" + +# The text relocations are intentional -- see comments in [GF-52468] +# TODO: check if we need INSANE_SKIP on ldflags +INSANE_SKIP:${PN} = "textrel ldflags" + + +do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+" +do_compile() { + if [ ! -f ${OUT_DIR}/build.ninja ]; then + do_configure + fi + + export PATH="${S}/depot_tools:$PATH" + ${S}/depot_tools/ninja ${PARALLEL_MAKE} -v -C ${OUT_DIR} ${TARGET} +} + +do_configure() { + configure_env +} + +configure_env() { + export GYP_CHROMIUM_NO_ACTION=1 + export PATH="${S}/depot_tools:$PATH" + + GN_ARGS="${GN_ARGS}" + echo GN_ARGS is ${GN_ARGS} + echo BUILD_TARGETS are ${TARGET} + cd ${SRC_DIR} + gn gen ${OUT_DIR} --args="${GN_ARGS}" +} + +WINDOW_SIZE ?= "1920,1080" + +configure_browser_settings() { + USER_AGENT="Mozilla/5.0 (Linux; NetCast; U) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/${CHROMIUM_VERSION} Safari/537.31" + echo "${USER_AGENT}" > ${D_DIR}/user_agent_conf + #We can replace below WINDOW_SIZE values from build configuration if available + #echo "${WINDOW_SIZE}" > ${D_DIR}/window_size_conf +} + +install_chromium_browser() { + # Install browser files + ${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR} webos/install/default_browser + + D_DIR=${D}${BROWSER_APPLICATION_DIR} + L_DIR=${D}${CBE_DATA_PATH} + install -d ${D_DIR} + install -d ${L_DIR} + + cp -R --no-dereference --preserve=mode,links -v ${OUT_DIR}/image/${BROWSER_APPLICATION_DIR}/* ${D_DIR} + + # AGL does not have PMLOG + sed -i.bak s/PmLogCtl.*// ${D_DIR}/run_webbrowser + + # To execute chromium in JAILER, Security Part needs permissions change + # run_webbrowser: Script file for launching chromium + chmod -v 755 ${D_DIR}/chrome + chmod -v 755 ${D_DIR}/kill_webbrowser + chmod -v 755 ${D_DIR}/run_webbrowser + + configure_browser_settings +} + +install_webruntime() { + + # # Generate install webos webview files + # ${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR} webos/install/weboswebruntime + + # # Move installation files to D directory + # mv ${OUT_DIR}/image/* ${D} + # # Rename include and locale directories + # mv ${D}${includedir}/webruntime ${D}${includedir}/${BPN} + # mv ${D}${CBE_DATA_PATH}/neva_locales ${D}${CBE_DATA_LOCALES_PATH} + + # # move this to separate mksnapshot-cross recipe once we figure out how to build just cross mksnapshot from chromium repository + # install -d ${D}${bindir_cross} + # gzip -c ${OUT_DIR}/${MKSNAPSHOT_PATH}mksnapshot > ${D}${bindir_cross}/${HOST_SYS}-mksnapshot.gz + + install -d ${D}${libdir} + install -d ${D}${libdir}/swiftshader + install -d ${D}${includedir}/${BPN} + install -d ${D}${CBE_DATA_PATH} + install -d ${D}${CBE_DATA_LOCALES_PATH} + + # Install webos webview files + ${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR} webos/install/weboswebruntime + + install -v -m 0644 ${OUT_DIR}/swiftshader/*.so ${D}${libdir}/swiftshader + + cp -R --no-dereference --preserve=mode,links -v ${OUT_DIR}/image/${includedir}/${BPN}/* ${D}${includedir}/${BPN}/ + install -v -m 0644 ${OUT_DIR}/image/${libdir}/*.so ${D}${libdir} + + install -v -m 0644 ${OUT_DIR}/image/${CBE_DATA_PATH}/icudtl.dat ${D}${CBE_DATA_PATH} + install -v -m 0644 ${OUT_DIR}/image/${CBE_DATA_PATH}/snapshot_blob.bin ${D}${CBE_DATA_PATH} + # app_runtime_content.pak, webos_content.pak, extensions_shell_and_test.pak + install -v -m 0644 ${OUT_DIR}/image/${CBE_DATA_PATH}/*.pak ${D}${CBE_DATA_PATH} + + cp -R --no-dereference --preserve=mode,links -v ${OUT_DIR}/image/${CBE_DATA_LOCALES_PATH}/*.pak ${D}${CBE_DATA_LOCALES_PATH} + + chown root:root -R ${D}${libdir} + chown root:root -R ${D}${includedir} + chown root:root -R ${D}${CBE_DATA_LOCALES_PATH} + + # move this to separate mksnapshot-cross recipe once we figure out how to build just cross mksnapshot from chromium repository + install -d ${D}${base_bindir} + gzip -c ${OUT_DIR}/${MKSNAPSHOT_PATH}mksnapshot > ${D}${base_bindir}/${HOST_SYS}-mksnapshot.gz + +} + +do_install() { + install_webruntime + install_chromium_browser +} + +WEBOS_SYSTEM_BUS_DIRS_LEGACY_BROWSER_APPLICATION = " \ + ${webos_sysbus_prvservicesdir}/${BROWSER_APPLICATION}.service \ + ${webos_sysbus_pubservicesdir}/${BROWSER_APPLICATION}.service \ + ${webos_sysbus_prvrolesdir}/${BROWSER_APPLICATION}.json \ + ${webos_sysbus_pubrolesdir}/${BROWSER_APPLICATION}.json \ +" + +SYSROOT_DIRS:append = " ${bindir_cross}" + +PACKAGES:prepend = " \ + ${PN}-cross-mksnapshot \ + ${BROWSER_APPLICATION} \ +" + +FILES:${BROWSER_APPLICATION} += " \ + ${BROWSER_APPLICATION_DIR} \ + ${WEBOS_SYSTEM_BUS_DIRS_LEGACY_BROWSER_APPLICATION} \ +" + +RDEPENDS:${BROWSER_APPLICATION} += "${PN}" + +VIRTUAL-RUNTIME_gpu-libs ?= "" +RDEPENDS:${PN} += "${VIRTUAL-RUNTIME_gpu-libs}" + +# The text relocations are intentional -- see comments in [GF-52468] +# TODO: check if we need INSANE_SKIP on ldflags +INSANE_SKIP:${BROWSER_APPLICATION} += "libdir ldflags textrel" + +FILES:${PN} = " \ + ${libdir}/*.so \ + ${libdir}/swiftshader/*.so \ + ${CBE_DATA_PATH}/* \ + ${libdir}/${BPN}/*.so \ + ${WEBOS_SYSTEM_BUS_DIRS} \ +" + +FILES:${PN}-dev = " \ + ${includedir} \ +" + +FILES:${PN}-cross-mksnapshot = "${bindir_cross}/${HOST_SYS}-mksnapshot.gz" diff --git a/_to_remove/recipes-wam/chromium/chromium84_git.bb b/_to_remove/recipes-wam/chromium/chromium84_git.bb new file mode 100644 index 000000000..755c4ce92 --- /dev/null +++ b/_to_remove/recipes-wam/chromium/chromium84_git.bb @@ -0,0 +1,81 @@ +require chromium.inc + +SRC_URI = "\ + git://github.com/igalia/${PN};branch=koi;protocol=https;rev=${SRCREV_chromium84};name=chromium84 \ + git://github.com/webosose/chromium-v8;branch=@chromium84;destsuffix=git/src/v8;rev=${SRCREV_v8};name=v8 \ + file://add-a-delay-to-agl-ready-event.patch \ + file://chromium-quiche-invalid-offsetof.patch \ + file://chromium-skia-no_sanitize.patch \ +" + +# Needed by catapult +DEPENDS += "libhomescreen python-six-native python-beautifulsoup4-native python-lxml-native python-html5lib-native python-webencodings-native" + +SRCREV_chromium84 = "17ab9d58b9d5da9102b119d39cf49a002e61ea1b" +SRCREV_v8 = "5c1d89dd2945a10cf7a6a3458050b3177a870b09" + +BROWSER_APPLICATION = "chromium84-browser" +BROWSER_APPLICATION_DIR = "/opt/chromium84" +MKSNAPSHOT_PATH = "v8_snapshot/" + +PACKAGECONFIG:remove="jumbo" + +GN_ARGS += "use_gtk=false" + +# Disable closure_compile +# Else we need HOSTTOOLS += "java" +GN_ARGS += "closure_compile=false" + +# When using meta-clang, one can switch to using the lld linker +# by using the ld-is-lld distro feature otherwise use gold linker +GN_ARGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', 'use_lld=true use_gold=false', bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'use_lld=false use_gold=true', 'use_lld=false use_gold=false', d), d)}" + +# Toolchains we will use for the build. We need to point to the toolchain file +# we've created, set the right target architecture and make sure we are not +# using Chromium's toolchain (bundled clang, bundled binutils etc). +GN_ARGS += "\ + host_toolchain=\"//build/toolchain/cros:host\" \ + cros_host_is_clang=false \ + use_custom_libcxx_for_host=false \ + cros_host_ar=\"${BUILD_AR}\" \ + cros_host_cc=\"${BUILD_CC} ${BUILD_CFLAGS}\" \ + cros_host_cxx=\"${BUILD_CXX} ${BUILD_CXXFLAGS}\" \ + cros_host_extra_ldflags=\"${BUILD_LDFLAGS}\" \ + custom_toolchain=\"//build/toolchain/cros:target\" \ + is_clang=false \ + use_custom_libcxx=false \ + target_cpu=\"${@gn_arch_name('${TUNE_ARCH}')}\" \ + cros_target_ar=\"${AR}\" \ + cros_target_cc=\"${CC}\" \ + cros_target_cxx=\"${CXX}\" \ + cros_target_extra_ldflags=\"${LDFLAGS}\" \ + v8_snapshot_toolchain=\"//build/toolchain/cros:v8_snapshot\" \ + cros_v8_snapshot_is_clang=false \ + cros_v8_snapshot_ar=\"${BUILD_AR}\" \ + cros_v8_snapshot_cc=\"${BUILD_CC}\" \ + cros_v8_snapshot_cxx=\"${BUILD_CXX}\" \ + linux_use_bundled_binutils=false \ + gold_path=\"\" \ + v8_enable_embedded_builtins=false \ + use_v8_context_snapshot=false \ +" + +GN_ARGS:append = " \ + use_system_minigbm=false \ + use_wayland_gbm=false \ +" + +GN_ARGS:append = " \ + is_webos=false \ + is_agl=true \ +" + +# TODO: drop this after we migrate to ubuntu 16.04 or above +GN_ARGS += "\ + fatal_linker_warnings=false\ +" + +# TODO(rzanoni) copied from original recipe to fix qemux86 build. +# check if it can be removed in the future. +PACKAGECONFIG:remove:qemux86 = "gstreamer umediaserver neva-media gav neva-webrtc" +#END TODO diff --git a/_to_remove/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch b/_to_remove/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch new file mode 100644 index 000000000..20caccbf6 --- /dev/null +++ b/_to_remove/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch @@ -0,0 +1,70 @@ +From d2d09d3e13a3874961971d343553106a1f3d5ac7 Mon Sep 17 00:00:00 2001 +From: Roger Zanoni +Date: Thu, 3 Jun 2021 10:53:40 +0200 +Subject: [PATCH] Add a delay to agl ready event + +Delay ready() to ensure that all the window and surfaces setup +is done before notifying the compositor +--- + .../ozone/platform/wayland/host/wayland_window.cc | 14 +++++++++++++- + .../ozone/platform/wayland/host/wayland_window.h | 5 +++++ + 2 files changed, 18 insertions(+), 1 deletion(-) + +diff --git a/src/ui/ozone/platform/wayland/host/wayland_window.cc b/src/ui/ozone/platform/wayland/host/wayland_window.cc +index d2a9b0dae5..27749fd70d 100644 +--- a/src/ui/ozone/platform/wayland/host/wayland_window.cc ++++ b/src/ui/ozone/platform/wayland/host/wayland_window.cc +@@ -299,7 +299,19 @@ WaylandWindow::SetAglReady(void) + if (!connection_->agl_shell_manager) { + return; + } +- connection_->agl_shell_manager->ready(); ++ ++ // Delay activation to ensure that all the setup is done ++ // TODO(rzanoni): find a more deterministic way of doing this ++ set_ready_timer_.Start(FROM_HERE, ++ base::TimeDelta::FromMilliseconds(500), ++ this, ++ &WaylandWindow::SetReadyCallback); ++} ++ ++ ++void WaylandWindow::SetReadyCallback() { ++ connection_->agl_shell_manager->ready(); ++ connection_->ScheduleFlush(); + } + + bool WaylandWindow::CanDispatchEvent(const PlatformEvent& event) { +diff --git a/src/ui/ozone/platform/wayland/host/wayland_window.h b/src/ui/ozone/platform/wayland/host/wayland_window.h +index 2acac98ae9..c10db38d21 100644 +--- a/src/ui/ozone/platform/wayland/host/wayland_window.h ++++ b/src/ui/ozone/platform/wayland/host/wayland_window.h +@@ -15,6 +15,7 @@ + #include "base/containers/flat_set.h" + #include "base/gtest_prod_util.h" + #include "base/memory/ref_counted.h" ++#include "base/timer/timer.h" + #include "ui/events/platform/platform_event_dispatcher.h" + #include "ui/gfx/geometry/rect.h" + #include "ui/gfx/native_widget_types.h" +@@ -232,6 +233,8 @@ class WaylandWindow : public PlatformWindow, public PlatformEventDispatcher { + // Returns a root parent window. + WaylandWindow* GetRootParentWindow(); + ++ void SetReadyCallback(); ++ + // Install a surface listener and start getting wl_output enter/leave events. + void AddSurfaceListener(); + +@@ -311,6 +314,8 @@ class WaylandWindow : public PlatformWindow, public PlatformEventDispatcher { + // The type of the current WaylandWindow object. + ui::PlatformWindowType type_ = ui::PlatformWindowType::kWindow; + ++ base::OneShotTimer set_ready_timer_; ++ + DISALLOW_COPY_AND_ASSIGN(WaylandWindow); + }; + +-- +2.32.0 + diff --git a/_to_remove/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch b/_to_remove/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch new file mode 100644 index 000000000..4fdd98de4 --- /dev/null +++ b/_to_remove/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch @@ -0,0 +1,57 @@ +From 4cea86e76af28b28aa72cb7c69ff7cf242b2bd5d Mon Sep 17 00:00:00 2001 +From: Stephan Hartmann +Date: Sat, 27 Jun 2020 12:18:05 +0000 +Subject: [PATCH] GCC: supress invalid-offsetof warning + +GCC emits a warning if offsetof is used for non-POD +types. However, GCC supports this and prints only +the warning, because it might be nonportable code. +Disable the warning for GCC with a pragma. +--- + src/net/third_party/quiche/src/quic/core/frames/quic_frame.h | 7 +++++++ + .../quiche/src/quic/core/frames/quic_inlined_frame.h | 7 +++++++ + 2 files changed, 14 insertions(+) + +diff --git a/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h b/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h +index 756b69f..aceba76 100644 +--- a/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h ++++ b/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h +@@ -110,8 +110,15 @@ struct QUIC_EXPORT_PRIVATE QuicFrame { + + static_assert(sizeof(QuicFrame) <= 24, + "Frames larger than 24 bytes should be referenced by pointer."); ++#if defined(__GNUC__) ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Winvalid-offsetof" ++#endif + static_assert(offsetof(QuicStreamFrame, type) == offsetof(QuicFrame, type), + "Offset of |type| must match in QuicFrame and QuicStreamFrame"); ++#if defined(__GNUC__) ++#pragma GCC diagnostic pop ++#endif + + // A inline size of 1 is chosen to optimize the typical use case of + // 1-stream-frame in QuicTransmissionInfo.retransmittable_frames. +diff --git a/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h b/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h +index 08c4869..804e4bb 100644 +--- a/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h ++++ b/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h +@@ -17,8 +17,15 @@ namespace quic { + template + struct QUIC_EXPORT_PRIVATE QuicInlinedFrame { + QuicInlinedFrame(QuicFrameType type) : type(type) { ++#if defined(__GNUC__) ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Winvalid-offsetof" ++#endif + static_assert(offsetof(DerivedT, type) == 0, + "type must be the first field."); ++#if defined(__GNUC__) ++#pragma GCC diagnostic pop ++#endif + static_assert(sizeof(DerivedT) <= 24, + "Frames larger than 24 bytes should not be inlined."); + } +-- +2.26.2 + diff --git a/_to_remove/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch b/_to_remove/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch new file mode 100644 index 000000000..abfba57ab --- /dev/null +++ b/_to_remove/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch @@ -0,0 +1,63 @@ +From 04765936a0a8dd3ac3f530786fce6b5cea826d3e Mon Sep 17 00:00:00 2001 +From: Roger Zanoni +Date: Wed, 24 Feb 2021 13:50:27 +0100 +Subject: [PATCH] [skia][build] fix skia no_sanitize build issues for gcc + +Based on https://src.fedoraproject.org/rpms/chromium/blob/rawhide/f/chromium-skia-no_sanitize.patch + +--- + .../skia/include/private/SkFloatingPoint.h | 24 +++++++++++++++++++ + 1 file changed, 24 insertions(+) + +diff --git a/src/third_party/skia/include/private/SkFloatingPoint.h b/src/third_party/skia/include/private/SkFloatingPoint.h +index 110dda2ae4..8223e9b57d 100644 +--- a/src/third_party/skia/include/private/SkFloatingPoint.h ++++ b/src/third_party/skia/include/private/SkFloatingPoint.h +@@ -159,7 +159,15 @@ static inline int64_t sk_float_saturate2int64(float x) { + // Cast double to float, ignoring any warning about too-large finite values being cast to float. + // Clang thinks this is undefined, but it's actually implementation defined to return either + // the largest float or infinity (one of the two bracketing representable floats). Good enough! ++#if defined(__GNUC__) && __GNUC__ >= 8 ++__attribute__((no_sanitize("float-cast-overflow"))) ++#else ++# if defined(__GNUC__) ++__attribute__((no_sanitize_undefined)) ++# else + [[clang::no_sanitize("float-cast-overflow")]] ++# endif ++#endif + static inline float sk_double_to_float(double x) { + return static_cast(x); + } +@@ -226,12 +234,28 @@ static inline float sk_float_rsqrt(float x) { + // IEEE defines how float divide behaves for non-finite values and zero-denoms, but C does not + // so we have a helper that suppresses the possible undefined-behavior warnings. + ++#if defined(__GNUC__) && __GNUC__ >= 8 ++__attribute__((no_sanitize("float-divide-by-zero"))) ++#else ++# if defined(__GNUC__) ++__attribute__((no_sanitize_undefined)) ++# else + [[clang::no_sanitize("float-divide-by-zero")]] ++# endif ++#endif + static inline float sk_ieee_float_divide(float numer, float denom) { + return numer / denom; + } + ++#if defined(__GNUC__) && __GNUC__ >= 8 ++__attribute__((no_sanitize("float-cast-overflow"))) ++#else ++# if defined(__GNUC__) ++__attribute__((no_sanitize_undefined)) ++# else + [[clang::no_sanitize("float-divide-by-zero")]] ++# endif ++#endif + static inline double sk_ieee_double_divide(double numer, double denom) { + return numer / denom; + } +-- +2.30.1 + diff --git a/_to_remove/recipes-wam/chromium/gn-utils.inc b/_to_remove/recipes-wam/chromium/gn-utils.inc new file mode 100644 index 000000000..156b56d2d --- /dev/null +++ b/_to_remove/recipes-wam/chromium/gn-utils.inc @@ -0,0 +1,32 @@ +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +def gn_arch_name(yocto_arch): + """Translates between Yocto's architecture values and the corresponding + ones used by GN.""" + translation_table = { + 'aarch64': 'arm64', + 'arm': 'arm', + 'i586': 'x86', + 'i686': 'x86', + 'x86_64': 'x64', + } + try: + return translation_table[yocto_arch] + except KeyError: + bb.fatal('"%s" is not a supported architecture.' % yocto_arch) diff --git a/_to_remove/recipes-wam/wam/files/WebAppMgr.env b/_to_remove/recipes-wam/wam/files/WebAppMgr.env new file mode 100644 index 000000000..c8ddc5173 --- /dev/null +++ b/_to_remove/recipes-wam/wam/files/WebAppMgr.env @@ -0,0 +1,202 @@ +##### AGL: not set in WebAppMgr@.service +#XDG_SESSION_ID="c2" + +##### AGL: set by WebAppMgr@.service (depends on user) +#XDG_RUNTIME_DIR="/run/user/%i" + +# Set wam executable file path +HOOK_SEGV=NO +WAM_EXE_PATH="/usr/bin/WebAppMgr" + +# Set wam name for user-agent +WAM_NAME="WebAppManager" + +# Only allow UTF8 encoding for luna-service messages. +LS_ENABLE_UTF8=1 + +# Set effective userid and groupid +#WAM_UID="wam" +#WAM_GID="compositor" + +# Set location of error page (will follow localization rules based on this path) +#WAM_ERROR_PAGE="file:///usr/share/localization/wam/loaderror.html" + +# suspending javascript execution delay for page visibility +WAM_SUSPEND_DELAY_IN_MS=250 + +#if [ -e "etc/wam/make_shm.sh" ] ; then +# /etc/wam/make_shm.sh +#fi + +# Set user data directory for WebAppMgr +##### AGL: set by WebAppMgr@.service (depends on user) +#WAM_DATA_PATH="/home/%i/wamdata" + +# ensure that wam data directories exist +#mkdir -p ${WAM_DATA_PATH} + +# set directories permission +#chown ${WAM_UID}:${WAM_GID} ${WAM_DATA_PATH} + +# setup 50 Mb maximum for ApplicationCache +WAM_APPCACHE_MAXSIZE=52428800 + +# setup 10 Mb maximum for ApplicationCache per domain +WAM_APPCACHE_DOMAINLIMIT=10485760 + +# setup 50 Mb maximum for DiskCache +WAM_DISKCACHE_MAXSIZE=52428800 + +# setup 256 Kb maximum for resource buffer allocation +WAM_RESOURCE_BUFFER_MAX_ALLOC_SIZE=262144 + +# setup 1 Mb for resource buffer +WAM_RESOURCE_BUFFER_SIZE=1048576 + +# setup 200 seconds for watchdog timeout of render process +WATCHDOG_RENDER_TIMEOUT=200 + +# setup nubmer of raster threads to 1 +BLINK_NUM_RASTER_THREADS=2 + +# use default tile width if not sed by recipe +#if [ "$BLINK_NUM_RASTER_THREADS" = "WEBOS${BLINK_NUM_RASTER_THREADS#WEBOS}" ]; then +BLINK_NUM_RASTER_THREADS=1 +#fi + +# setup 6 Mb maximum for the program GPU cache +GPU_PROGRAM_CACHE_SIZE=6144 + +# disable using enyo system app specfic optimization +# currently used optimizations : inline caching off +#USE_SYSTEM_APP_OPTIMIZATION="0" + +# Set location of NaCl modules +#CHROMIUM_PATH="/usr/palm/applications/com.lge.app.chromium" +#NACL_PLUGIN=${CHROMIUM_PATH}"/libppGoogleNaClPluginChrome.so" +#NACL_IRT_LIBRARY=${CHROMIUM_PATH}"/nacl_irt_arm.nexe" +#NACL_HELPER=${CHROMIUM_PATH}"/nacl_helper" +#NACL_HELPER_BOOTSTRAP=${CHROMIUM_PATH}"/nacl_helper_bootstrap" + +# Set location of NPAPI plugins for all Apps including default Apps +# This is for the flash plugin of Signage, webOS TV doesn't use it. +#PRIVILEGED_PLUGIN_PATH="" + +# Set location of NPAPI plugins for NetCast Apps +# NetCast Apps should access only the plugins in this path +#NETCAST_PLUGIN_PATH="/usr/lib/BrowserPlugins" + +# Set location of NPAPI plugins for HbbTV app. +#HBBTV_PLUGIN_PATH="/usr/lib/HbbtvPlugins" + +# Set InetTV player stored path +#INETTV_HTML_PLAYER_PATH="/usr/share/inettv/inettv_player/index.html" + +# Set location of extra libraries +#CDM_LIB_PATH="/usr/lib" + +# Set location of all NPAPI plugins +NPAPI_PLUGIN_PATH=${HBBTV_PLUGIN_PATH}":"${NETCAST_PLUGIN_PATH}":"${PRIVILEGED_PLUGIN_PATH} + +#if [ -e "etc/wam/make_shm.sh" ] ; then +# /etc/wam/make_shm.sh +#fi + +# setup 8 Mb minimum codecache capacity +JSC_minGlobalCodeCacheCapacity=8388608 + +# Enable more explicit logging of timing with regards to rendering +# export WAM2_ENABLE_DEBUG_RENDER_TIMING=1 + +# enable Web Inspector and Tellurium if in developer mode +TELLURIUM_NUB_PATH=/usr/palm/tellurium/telluriumnub.js +ENABLE_INSPECTOR=1 + +# Enable cursor by default +ENABLE_CURSOR_BY_DEFAULT=1 + +# Enable launch optimization +ENABLE_LAUNCH_OPTIMIZATION=1 + +# Set the duration(seconds) passed from last network activity (e.g. FMP Detector) +# If set to a positive value, adjust a custom timeout for a network stable timer in FMPDetector +NETWORK_STABLE_TIMEOUT=3 + +# please keep it in alphabetical order +#WAM_EXTRA_FLAGS="" +#WAM_JS_FLAGS="" +#WAM_COMMON_SWITCHES=" \ +# --application-cache-domain-limit=$WAM_APPCACHE_DOMAINLIMIT \ +# --application-cache-size=$WAM_APPCACHE_MAXSIZE \ +# --browser-subprocess-path=$WAM_EXE_PATH \ +# --disable-direct-npapi-requests \ +# --disable-extensions \ +# --disable-low-res-tiling \ +# --disable-new-video-renderer \ +# --disk-cache-size=$WAM_DISKCACHE_MAXSIZE \ +# --enable-aggressive-release-policy \ +# --enable-accelerated-plugin-rendering \ +# --accelerated-plugin-rendering-blacklist=device;drmAgent;sound;service \ +# --enable-gpu-rasterization \ +# --disable-gpu-rasterization-for-first-frame \ +# --enable-key-event-throttling \ +# --enable-threaded-compositing \ +# --enable-watchdog \ +# --hide-selection-handles \ +# --ignore-gpu-blacklist \ +# --ignore-netif=p2p \ +# --in-process-gpu \ +# --max-unused-resource-memory-usage-percentage=0 \ +# --network-stable-timeout=$NETWORK_STABLE_TIMEOUT \ +# --noerrdialogs \ +# --num-raster-threads=$BLINK_NUM_RASTER_THREADS \ +# --ozone-platform=wayland \ +# --remote-debugging-port=9998 \ +# --resource-buffer-max-allocation-size=$WAM_RESOURCE_BUFFER_MAX_ALLOC_SIZE \ +# --resource-buffer-size=$WAM_RESOURCE_BUFFER_SIZE \ +# --touch-events=disabled \ +# --ui-disable-opaque-shader-program \ +# --user-agent-suffix=SmartTV \ +# --user-data-dir=$WAM_DATA_PATH \ +# --enable-devtools-experiments \ +# --webos-wam \ " + +#WAM_LITE_SWITCHES=" --in-process-zygote " + +#export WAM_WEBOS_LITE=NO +#if [ "${WAM_WEBOS_LITE}" = "YES" ] ; then +# export WAM_SWITCHES=${WAM_COMMON_SWITCHES}${WAM_LITE_SWITCHES} +# export SKIA_FONT_CACHE_SIZE=1 +# export SKIA_IMAGE_CACHE_SIZE=40 +# export SKIA_BACKGROUND_FONT_CACHE_SIZE=0 +#else +# export WAM_SWITCHES=${WAM_COMMON_SWITCHES} +# export SKIA_FONT_CACHE_SIZE=8 +# export SKIA_IMAGE_CACHE_SIZE=80 +# export SKIA_BACKGROUND_FONT_CACHE_SIZE=512 +#fi + +#export WAM_EXTRA_SKIA_CACHE_SWITCHES=" \ +# --skia-font-cache-size-mb=$SKIA_FONT_CACHE_SIZE \ +# --skia-image-cache-size-mb=$SKIA_IMAGE_CACHE_SIZE \ +# --skia-background-font-cache-size-kb=$SKIA_BACKGROUND_FONT_CACHE_SIZE \ +# " + +#export WAM_EXTRA_GPU_TUNING_SWITCHES=" \ +# --gpu-program-cache-size-kb=$GPU_PROGRAM_CACHE_SIZE \ +# " +#export WAM_WATCHDOG_RENDER_TIMEOUT_SWITCHES=" \ +# --watchdog-render-timeout=$WATCHDOG_RENDER_TIMEOUT \ +# " + +#WEBOS_LOAD_ACCESSIBILITY_PLUGIN=1 + +#WAM_V8_CODE_CACHE_SWITCHES=" --enable-local-resource-code-cache --disallow-code-cache-from-file-uris-with-query-string " + +# Load any special configuration from plugins +#if [ -e "/etc/wam/plugins/conf.sh" ] ; then +# . /etc/wam/plugins/conf.sh || true +#fi + +#exec $WAM_EXE_PATH $WAM_SWITCHES $WAM_EXTRA_SKIA_CACHE_SWITCHES $WAM_EXTRA_GPU_TUNING_SWITCHES $WAM_WATCHDOG_RENDER_TIMEOUT_SWITCHES $WAM_EXTRA_FLAGS $WAM_V8_CODE_CACHE_SWITCHES --js-flags="$WAM_JS_FLAGS" + diff --git a/_to_remove/recipes-wam/wam/files/WebAppMgr@.service b/_to_remove/recipes-wam/wam/files/WebAppMgr@.service new file mode 100644 index 000000000..beffd114c --- /dev/null +++ b/_to_remove/recipes-wam/wam/files/WebAppMgr@.service @@ -0,0 +1,37 @@ +# @@@LICENSE +# +# Copyright (c) 2017-2018 LG Electronics, Inc. +# +# Confidential computer software. Valid license from LG required for +# possession, use or copying. Consistent with FAR 12.211 and 12.212, +# Commercial Computer Software, Computer Software Documentation, and +# Technical Data for Commercial Items are licensed to the U.S. Government +# under vendor's standard commercial license. +# +# LICENSE@@@ + +[Unit] +Description="WebAppMgr is responsible for running web apps and manage their lifecycle" +After=afm-service-homescreen-service--0.1--main@%i.service weston@display.service +Wants=afm-service-homescreen-service--0.1--main@%i.service +BindsTo=weston@display.service + +[Service] +Type=simple +User=%i +Slice=user-%i.slice +SmackProcessLabel=System +SupplementaryGroups=audio display +UMask=0077 +CapabilityBoundingSet= +OOMScoreAdjust=-1000 +EnvironmentFile=-/etc/default/WebAppMgr.env +Environment=XDG_RUNTIME_DIR=/run/user/%i +Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%i/bus +Environment=WAM_DATA_PATH="/home/%i/wamdata" +ExecStart=/usr/bin/WebAppMgr --enable-features=UseOzonePlatform --ozone-platform=wayland --no-sandbox --use-viz-fmp-with-timeout=0 --in-process-gpu --remote-debugging-port=9998 --user-data-dir="/home/%i/wamdata" --webos-wam +Restart=on-failure +RestartSec=50 + +[Install] +WantedBy=default.target diff --git a/_to_remove/recipes-wam/wam/files/trunc-webapp-roles.patch b/_to_remove/recipes-wam/wam/files/trunc-webapp-roles.patch new file mode 100644 index 000000000..829abe07f --- /dev/null +++ b/_to_remove/recipes-wam/wam/files/trunc-webapp-roles.patch @@ -0,0 +1,56 @@ +From f31e93261f34abaa3dcdc4959963f5b5a8983002 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jan-Simon=20M=C3=B6ller?= +Date: Thu, 25 Jun 2020 19:47:24 +0200 +Subject: [PATCH] Set webapp roles that are max 12 characters long. + +From: =?UTF-8?q?Jacobo=20Aragunde=20P=C3=A9rez?= + +This is a workaround for SPEC-3127. To prevent repeated roles as much +as possible, I'm using the appid as a basis instead of "Webapp-" + +host + port, which has many chances to be redundant in the first 12 +chars. + +Bug-AGL: SPEC-3127 + +--- + src/agl/WebRuntimeAGL.cpp | 10 +++------- + 1 file changed, 3 insertions(+), 7 deletions(-) + +diff --git a/src/agl/WebRuntimeAGL.cpp b/src/agl/WebRuntimeAGL.cpp +index aed928b..efd2ee4 100644 +--- a/src/agl/WebRuntimeAGL.cpp ++++ b/src/agl/WebRuntimeAGL.cpp +@@ -274,7 +274,6 @@ int WebAppLauncherRuntime::run(int argc, const char** argv) { + + m_id = getAppId(args); + m_url = getAppUrl(args); +- m_role = "WebApp"; + + setup_signals(); + +@@ -326,15 +325,9 @@ bool WebAppLauncherRuntime::init() { + if (n != std::string::npos) { + std::string sport = authority.substr(n+1); + m_host = authority.substr(0, n); +- m_role.push_back('-'); +- m_role.append(m_host); +- m_role.push_back('-'); +- m_role.append(sport); + m_port = stringTo(sport); + } else { + m_host = authority; +- m_role.push_back('-'); +- m_role.append(m_host); + } + } + +@@ -375,6 +368,9 @@ bool WebAppLauncherRuntime::init() { + m_role = "homescreen"; + else if (m_id.rfind("webapps-homescreen", 0) == 0) + m_role = "homescreen"; ++ else { ++ m_role = m_id.substr(0,12); ++ } + + LOG_DEBUG("id=[%s], name=[%s], role=[%s], url=[%s], host=[%s], port=%d, token=[%s], width=[%s], height[%s], surface_type[%d], panel_type[%d]", + m_id.c_str(), m_name.c_str(), m_role.c_str(), m_url.c_str(), diff --git a/_to_remove/recipes-wam/wam/files/wam-user-setup.sh b/_to_remove/recipes-wam/wam/files/wam-user-setup.sh new file mode 100755 index 000000000..515ea82ec --- /dev/null +++ b/_to_remove/recipes-wam/wam/files/wam-user-setup.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +uid="$1" +bdir=/run/user +udir="$bdir/$uid" +hdir="/home/$uid" + +dodir() { + local x smackset="$1" + shift + for x; do + test -e "$x" || mkdir -m 700 "$x" + chmod 700 "$x" + chown "$uid:$uid" "$x" + chsmack $smackset "$x" + done +} + +dodir '-t -a User::Home' "$hdir/wamdata" + +# Initialize lockfile, without this apps will be blocked by SMACK +touch "$udir/wamsocket.lock" +chmod 660 "$udir/wamsocket.lock" +chown "$uid:$uid" "$udir/wamsocket.lock" +chsmack -a User::App-Shared "$udir/wamsocket.lock" diff --git a/_to_remove/recipes-wam/wam/files/wam-user-setup@.service b/_to_remove/recipes-wam/wam/files/wam-user-setup@.service new file mode 100644 index 000000000..f4814787d --- /dev/null +++ b/_to_remove/recipes-wam/wam/files/wam-user-setup@.service @@ -0,0 +1,10 @@ +[Unit] +Description=Set up WAM for user %i +Requires=afm-user-setup@i.service +After=user-runtime-dir@%i.service afm-user-setup@i.service +Before=user@%i.service + +[Service] +Type=oneshot +StartLimitInterval=0 +ExecStart=-/usr/libexec/wam/wam-user-setup.sh %i diff --git a/_to_remove/recipes-wam/wam/wam_git.bb b/_to_remove/recipes-wam/wam/wam_git.bb new file mode 100644 index 000000000..9de8573fa --- /dev/null +++ b/_to_remove/recipes-wam/wam/wam_git.bb @@ -0,0 +1,64 @@ +SUMMARY = "WAM" +AUTHOR = "Jani Hautakangas " +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit cmake + +DEPENDS = "glib-2.0 jsoncpp boost chromium84 libhomescreen protobuf protobuf-native" + +EXTRA_OECMAKE = "\ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=${prefix} \ + -DPLATFORM_NAME=${@'${DISTRO}'.upper().replace('-', '_')} \ + -DCHROMIUM_SRC_DIR=${STAGING_INCDIR}/chromium84" + +PR="r0" + +PROVIDES += "virtual/webruntime" +RPROVIDES:${PN} += "virtual/webruntime" + +# Disable some of securit_flags +# Disable D_FORTIFY_SOURCE=2 and -fstack-protector-strong +# Refer conf/distro/include/security_flags.inc in meta-webos/conf/distro/include/webos.inc +lcl_maybe_fortify = "" +SECURITY_STACK_PROTECTOR = "" + +SRC_URI = "\ + git://github.com/igalia/${BPN}.git;branch=koi;protocol=https \ + file://WebAppMgr@.service \ + file://WebAppMgr.env \ + file://wam-user-setup.sh \ + file://wam-user-setup@.service \ + file://trunc-webapp-roles.patch \ +" +S = "${WORKDIR}/git" +SRCREV = "2a246d2ea79bd335b86942a5579d6de0c9ddce40" + +do_install:append() { + install -d ${D}${sysconfdir}/wam + install -v -m 644 ${S}/files/launch/security_policy.conf ${D}${sysconfdir}/wam/security_policy.conf + install -d ${D}${systemd_system_unitdir} + install -v -m 644 ${WORKDIR}/WebAppMgr@.service ${D}${systemd_system_unitdir}/WebAppMgr@.service + install -d ${D}${sysconfdir}/default/ + install -v -m 644 ${WORKDIR}/WebAppMgr.env ${D}${sysconfdir}/default/WebAppMgr.env + ln -snf WebAppMgr ${D}${bindir}/web-runtime + install -d ${D}${systemd_system_unitdir}/afm-user-session@.target.wants + ln -sf ../WebAppMgr@.service ${D}${systemd_system_unitdir}/afm-user-session@.target.wants/ + install -d ${D}${libexecdir}/wam/ + install -v -m 755 ${WORKDIR}/wam-user-setup.sh ${D}${libexecdir}/wam/wam-user-setup.sh + install -v -m 644 ${WORKDIR}/wam-user-setup@.service ${D}${systemd_system_unitdir}/wam-user-setup@.service + install -d ${D}${systemd_system_unitdir}/user-runtime-dir@.service.wants/ + ln -sf ../wam-user-setup@.service ${D}${systemd_system_unitdir}/user-runtime-dir@.service.wants/ +} + +FILES:${PN} += "${sysconfdir}/init ${sysconfdir}/wam ${libdir}/webappmanager/plugins/*.so ${systemd_system_unitdir}" + +CXXFLAGS:append:agl-devel = " -DAGL_DEVEL" + +do_install:append:agl-devel() { + # Enable remote inspector and dev mode + install -d ${D}${localstatedir}/agl-devel/preferences + touch ${D}${localstatedir}/agl-devel/preferences/debug_system_apps + touch ${D}${localstatedir}/agl-devel/preferences/devmode_enabled +} diff --git a/conf/include/agl-cloudproxy.inc b/conf/include/agl-cloudproxy.inc deleted file mode 100644 index d62e3095f..000000000 --- a/conf/include/agl-cloudproxy.inc +++ /dev/null @@ -1,5 +0,0 @@ -# Mask out recipes with older versions than those available in -# meta-oe and meta-python -BBMASK += "meta-iot-cloud/recipes-support/cjson/cjson_1.7.10.bb" -BBMASK += "meta-iot-cloud/recipes-devtools/python/python3-httplib2_0.11.3.bb" -BBMASK += "meta-iot-cloud/recipes-devtools/python/python3-xmltodict_0.11.0.bb" diff --git a/conf/include/agl-demo-preload.inc b/conf/include/agl-demo-preload.inc index a41168951..b6ae2ae2e 100644 --- a/conf/include/agl-demo-preload.inc +++ b/conf/include/agl-demo-preload.inc @@ -1,8 +1 @@ AGL_FEATURES:append = " agl-demo-preload" - -# Use demo device mapping for low-can that enables sllin0 -PREFERRED_RPROVIDER_virtual/low-can-dev-mapping = "dev-mapping-demo" - -# Extend agl-voiceagent-alexa image feature to preload voiceagent -# configuration package. -FEATURE_PACKAGES_agl-voiceagent-alexa:append = " virtual/alexa-voiceagent-config" diff --git a/conf/include/agl-demo.inc b/conf/include/agl-demo.inc index 99085c183..a47f41d70 100644 --- a/conf/include/agl-demo.inc +++ b/conf/include/agl-demo.inc @@ -12,19 +12,8 @@ IMAGE_INSTALL:append = " screen mc " # individually. IMAGE_INSTALL:append = " ${@'kernel-modules' if d.getVar('PREFERRED_PROVIDER_virtual/kernel') != 'linux-dummy' else ''}" -# Extend agl-voiceagent-alexa image feature with local alexa-viewer -# package. -FEATURE_PACKAGES_agl-voiceagent-alexa:append = " alexa-viewer" - # enable the layer AGL_FEATURES:append = " agldemo" -# Set preferred provider for low-can device mapping configuration -PREFERRED_RPROVIDER_virtual/low-can-dev-mapping ?= "${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'dev-mapping-ci', 'dev-mapping', d)}" - -# voice api inclusion -PREFERRED_RPROVIDER_virtual/voice-high-config = "default-voice-high-config" -FEATURE_PACKAGES_agl-speech-framework = "packagegroup-agl-speech-services" - # install virtualbox drivers for vmdk -IMAGE_INSTALL:append = "${@bb.utils.contains_any('IMAGE_FSTYPES', 'wic.vmdk wic.vmdk.xz', ' open-vm-tools vboxguestdrivers', '', d)}" +#IMAGE_INSTALL:append = "${@bb.utils.contains_any('IMAGE_FSTYPES', 'wic.vmdk wic.vmdk.xz', ' open-vm-tools vboxguestdrivers', '', d)}" diff --git a/conf/layer.conf b/conf/layer.conf index f9ef8c6f2..e76256434 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -11,5 +11,5 @@ BBFILE_PRIORITY_agldemo = "70" LAYERSERIES_COMPAT_agldemo = "dunfell" -LAYERDEPENDS_agldemo = "aglcore app-framework qt5-layer openembedded-layer" +LAYERDEPENDS_agldemo = "aglcore qt5-layer openembedded-layer" diff --git a/recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb b/recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb deleted file mode 100644 index 4ff82fee1..000000000 --- a/recipes-apis/agl-service-bluetooth-map/agl-service-bluetooth-map_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Bluetooth MAP Service Binding" -DESCRIPTION = "AGL Bluetooth MAP Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-bluetooth-map" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=89aea4e17d99a7cacdbeed46a0096b10" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-bluetooth-map;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "glib-2.0 json-c" -RDEPENDS:${PN} = "bluez5-obex agl-service-bluetooth" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb b/recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb deleted file mode 100644 index 7b5e7e429..000000000 --- a/recipes-apis/agl-service-bluetooth-pbap/agl-service-bluetooth-pbap_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Bluetooth PBAP Service Binding" -DESCRIPTION = "AGL Bluetooth PBAP Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-bluetooth-pbap" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-bluetooth-pbap;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "glib-2.0 json-c" -RDEPENDS:${PN} = "bluez5-obex agl-service-bluetooth agl-service-data-persistence" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb b/recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb deleted file mode 100644 index 76f5ffa39..000000000 --- a/recipes-apis/agl-service-bluetooth/agl-service-bluetooth_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Bluetooth Service Binding" -DESCRIPTION = "AGL Bluetooth Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-bluetooth" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-bluetooth;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "glib-2.0 json-c" -RDEPENDS:${PN} = "agl-service-data-persistence agl-service-network" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb b/recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb deleted file mode 100644 index 81788646c..000000000 --- a/recipes-apis/agl-service-can-high-level-viwi/agl-service-can-high-level-viwi.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "High level ViWi service" -DESCRIPTION = "AGL High Level service using ViWi protocol to expose CAN API." -HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-can-high-level-viwi/" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=5de84541278ea4e62cacfdc0f890c459" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-can-high-level-viwi;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "4.0+git${SRCPV}" -S = "${WORKDIR}/git" - -# Run-time dependencies -RDEPENDS:${PN} += "agl-service-can-low-level" - -inherit cmake aglwgt - -AGLWGT_AUTOINSTALL_${PN} := "0" diff --git a/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb b/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb deleted file mode 100644 index 6ac2f4f29..000000000 --- a/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "Low level CAN service" -DESCRIPTION = "AGL Service application for read and decode CAN messages" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/low-level-can-service" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-can-low-level;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "${AGLVERSION}" -S = "${WORKDIR}/git" - -DEPENDS = "libafb-helpers libappcontroller" - -inherit cmake aglwgt pkgconfig ptest - -# For now, just enable J1939 on the qemu platforms where we know the -# linux-yocto kernel is new enough (>= 5.4) and has the support enabled. -AGLWGT_CMAKE_CONFIGURE_ARGS:append:qemuall = " -DWITH_FEATURE_J1939=ON" - -RDEPENDS:${PN} = "virtual/low-can-dev-mapping" diff --git a/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend b/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend deleted file mode 100644 index bc2d0d357..000000000 --- a/recipes-apis/agl-service-can-low-level/agl-service-can-low-level_git.bbappend +++ /dev/null @@ -1,10 +0,0 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/files:" - -SRC_URI:append = " file://can-dev-mapping-helper.conf" - -do_install:append() { - install -D -m 0644 ${WORKDIR}/can-dev-mapping-helper.conf \ - ${D}${sysconfdir}/systemd/system/afm-service-agl-service-can-low-level-.service.d/can-dev-mapping-helper.conf -} - -RDEPENDS:${PN}:append = " can-dev-mapping-helper" diff --git a/recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb b/recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb deleted file mode 100644 index cc50bfe2a..000000000 --- a/recipes-apis/agl-service-can-low-level/can-dev-mapping-helper_1.0.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "Systemd unit for agl-service-can-low-level CAN device helper" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -inherit systemd allarch - -SRC_URI = "file://can-dev-mapping-helper.service \ - file://can-dev-mapping-helper.sh \ -" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service - install -D -m 0755 ${WORKDIR}/${BPN}.sh ${D}${sbindir}/${BPN}.sh -} - -FILES:${PN} += "${systemd_system_unitdir}" - -RDEPENDS:${PN} += "bash" diff --git a/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf b/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf deleted file mode 100644 index c89cc4d87..000000000 --- a/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.conf +++ /dev/null @@ -1,3 +0,0 @@ -[Unit] -Wants=can-dev-mapping-helper.service -After=can-dev-mapping-helper.service diff --git a/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service b/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service deleted file mode 100644 index 0436716cb..000000000 --- a/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.service +++ /dev/null @@ -1,6 +0,0 @@ -[Unit] -Description=CAN interface helper - -[Service] -ExecStart=/usr/sbin/can-dev-mapping-helper.sh -Type=oneshot diff --git a/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh b/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh deleted file mode 100644 index c81014f3e..000000000 --- a/recipes-apis/agl-service-can-low-level/files/can-dev-mapping-helper.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -# -# Script to bring up CAN interfaces configured in /etc/dev-mapping.conf -# as vcan interfaces if no physical interface is present. -# - -vcan_up() { - if [ -n "$1" ]; then - echo "Bringing up $1 as virtual CAN device" - ip link add dev $1 type vcan - ip link set up $1 - fi -} - -if [ ! -f /etc/dev-mapping.conf ]; then - exit 0 -fi - -hs=$(grep ^hs= /etc/dev-mapping.conf |cut -d= -f2 |tr -d '"') -ls=$(grep ^ls= /etc/dev-mapping.conf |cut -d= -f2 |tr -d '"') - -if [ -n "$hs" ]; then - echo "Checking $hs" - if ! ifconfig $hs >/dev/null 2>&1; then - vcan_up $hs - fi -fi -if [ -n "$ls" -a "$ls" != "$hs" ]; then - echo "Checking $ls" - if ! ifconfig $ls >/dev/null 2>&1; then - vcan_up $ls - fi -fi - -exit 0 diff --git a/recipes-apis/agl-service-can-low-level/files/run-ptest b/recipes-apis/agl-service-can-low-level/files/run-ptest deleted file mode 100644 index cc9c41365..000000000 --- a/recipes-apis/agl-service-can-low-level/files/run-ptest +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -afm-test /usr/AGL/apps/testwgt/low-can-service-test.wgt diff --git a/recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb b/recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb deleted file mode 100644 index 7281a59f0..000000000 --- a/recipes-apis/agl-service-cloudproxy/agl-service-cloudproxy_git.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "AGL cloud proxy service" -DESCRIPTION = "AGL cloud proxy service build with recipe method" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-cloudproxy" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=34f8c1142fd6208a8be89399cb521df9" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-cloudproxy;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "azure-iot-sdk-c aws-iot-device-sdk-embedded-c glib-2.0 nlohmann-json" - -inherit cmake aglwgt pkgconfig - -# Azure include files -CXXFLAGS:prepend += "-I${STAGING_INCDIR}/azureiot" - -RDEPENDS:${PN} += "azure-iot-sdk-c azure-c-shared-utility aws-iot-device-sdk-embedded-c" - -BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb b/recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb deleted file mode 100644 index dddfcc8d6..000000000 --- a/recipes-apis/agl-service-cloudproxy/libcloudproxy_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "AGL Client Cloud Proxy Library" -DESCRIPTION = "libcloudproxy" -HOMEPAGE = "http://docs.automotivelinux.org" -LICENSE = "Apache-2.0" -SECTION = "libs" - -BBCLASSEXTEND = " nativesdk" - -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "af-binder json-c" - -inherit cmake - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/libcloudproxy;protocol=https" -SRCREV = "2d66933b9bf25af66696b097283109c8a6e87151" - -S = "${WORKDIR}/git" - diff --git a/recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb b/recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb deleted file mode 100644 index 569f0707e..000000000 --- a/recipes-apis/agl-service-data-persistence/agl-service-data-persistence_git.bb +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "AGL low level user database binding" -HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-data-persistence/" -SECTION = "base" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-data-persistence;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -inherit cmake aglwgt pkgconfig - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS += " af-binder json-c gdbm " - diff --git a/recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb b/recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb deleted file mode 100644 index a12923247..000000000 --- a/recipes-apis/agl-service-geoclue/agl-service-geoclue_git.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "GeoClue Service Binding" -DESCRIPTION = "AGL GeoClue Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-geoclue" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-geoclue;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c geoclue" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-geofence/agl-service-geofence_git.bb b/recipes-apis/agl-service-geofence/agl-service-geofence_git.bb deleted file mode 100644 index 05f7f0eaa..000000000 --- a/recipes-apis/agl-service-geofence/agl-service-geofence_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Geofence Service Binding" -DESCRIPTION = "AGL Geofence Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-geofence" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-geofence;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c glib-2.0" -RDEPENDS:${PN} = "agl-service-gps" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-gps/agl-service-gps_git.bb b/recipes-apis/agl-service-gps/agl-service-gps_git.bb deleted file mode 100644 index dfa7b3ebf..000000000 --- a/recipes-apis/agl-service-gps/agl-service-gps_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "GPS/GNSS Service Binding" -DESCRIPTION = "AGL GPS/GNSS Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-gps" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-gps;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c gpsd" -RDEPENDS:${PN} = "libgps" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb b/recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb deleted file mode 100644 index 7d2661bc0..000000000 --- a/recipes-apis/agl-service-homescreen/agl-service-homescreen_git.bb +++ /dev/null @@ -1,14 +0,0 @@ -SUMMARY = "Homescreen binding and client library for application" -DESCRIPTION = "agl-service-homescreen is the binding library" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-homescreen" -SECTION = "HMI" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "dbus glib-2.0 af-binder json-c" - -inherit cmake aglwgt - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-homescreen;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" -S = "${WORKDIR}/git" diff --git a/recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb b/recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb deleted file mode 100644 index 4078c6107..000000000 --- a/recipes-apis/agl-service-hvac/agl-service-hvac-conf_git.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "HVAC Service Binding Configuration" -DESCRIPTION = "AGL HVAC Service Binding Configuration" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-hvac" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-hvac;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -PACKAGE_ARCH = "${MACHINE_ARCH}" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install () { - install -D -m 644 ${S}/hvac.json ${D}${sysconfdir}/hvac.json -} - -do_install:append:ulcb() { - sed -i -e "s#vcan0#sllin0#g" ${D}${sysconfdir}/hvac.json -} - diff --git a/recipes-apis/agl-service-hvac/agl-service-hvac_git.bb b/recipes-apis/agl-service-hvac/agl-service-hvac_git.bb deleted file mode 100644 index 8d1399c60..000000000 --- a/recipes-apis/agl-service-hvac/agl-service-hvac_git.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "HVAC Service Binding" -DESCRIPTION = "AGL HVAC Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-hvac" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-hvac;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c" - -inherit cmake aglwgt pkgconfig - -RDEPENDS:${PN} += "agl-service-identity-agent agl-service-can-low-level" -RRECOMMENDS:${PN} += "agl-service-hvac-conf" diff --git a/recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb b/recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb deleted file mode 100644 index f2474be7b..000000000 --- a/recipes-apis/agl-service-identity-agent/agl-service-identity-agent_git.bb +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "AGL identity agent binding" -HOMEPAGE = "https://gitlab.com/iotbzh/aia-binding" -SECTION = "base" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-identity-agent;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" -PV = "1.0+git${SRCPV}" - -inherit cmake aglwgt pkgconfig - -S = "${WORKDIR}/git" - -DEPENDS = "curl af-binder json-c systemd" - diff --git a/recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb b/recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb deleted file mode 100644 index 600f9103a..000000000 --- a/recipes-apis/agl-service-iiodevices/agl-service-iiodevices_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "IIODEVICES Service Binding" -DESCRIPTION = "AGL IIODEVICES Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-iiodevices" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-iiodevices;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c libiio glib-2.0" - -RDEPENDS:${PN} = "libiio" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb b/recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb deleted file mode 100644 index c7d695f25..000000000 --- a/recipes-apis/agl-service-mediaplayer/agl-service-mediaplayer_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Mediaplayer Service Binding" -DESCRIPTION = "AGL Mediaplayer Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-mediaplayer" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/apps/agl-service-mediaplayer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c gstreamer1.0 gstreamer1.0-plugins-base" -RDEPENDS:${PN} = "agl-service-mediascanner agl-service-bluetooth gstreamer1.0-plugins-bad-waylandsink" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb b/recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb deleted file mode 100644 index 1013ab693..000000000 --- a/recipes-apis/agl-service-mediascanner/agl-service-mediascanner_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Mediascanner Service Binding" -DESCRIPTION = "AGL Mediascanner Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-mediascanner" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-mediascanner;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c sqlite3 glib-2.0" -RDEPENDS:${PN} = "lightmediascanner" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-navigation/agl-service-navigation_git.bb b/recipes-apis/agl-service-navigation/agl-service-navigation_git.bb deleted file mode 100755 index 2d40d15ee..000000000 --- a/recipes-apis/agl-service-navigation/agl-service-navigation_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Navigation Service Binding" -DESCRIPTION = "AGL Navigation Service API Binding" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "json-c libdbus-c++" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-navigation;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "0.1+git${SRCPV}" -S = "${WORKDIR}/git" - -inherit cmake aglwgt pkgconfig - -RDEPENDS:${PN} += "json-c libdbus-c++" diff --git a/recipes-apis/agl-service-network/agl-service-network_git.bb b/recipes-apis/agl-service-network/agl-service-network_git.bb deleted file mode 100644 index 3599e3cd7..000000000 --- a/recipes-apis/agl-service-network/agl-service-network_git.bb +++ /dev/null @@ -1,25 +0,0 @@ -SUMMARY = "Network Service Binding" -DESCRIPTION = "AGL Network Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-network" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-network;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "glib-2.0 json-c" - -inherit cmake aglwgt pkgconfig - -do_install:append() { - install -d ${D}${sbindir} - install -m 755 ${B}/build-release/test/agl-service-network-ctl ${D}${sbindir} -} - -FILES:${PN}-tools = "${sbindir}/agl-service-network-ctl" -PACKAGES:prepend = "${PN}-tools " diff --git a/recipes-apis/agl-service-nfc/agl-service-nfc_git.bb b/recipes-apis/agl-service-nfc/agl-service-nfc_git.bb deleted file mode 100644 index 1757dcb38..000000000 --- a/recipes-apis/agl-service-nfc/agl-service-nfc_git.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "agl-service-nfc" -DESCRIPTION = "" -HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-nfc/" -SECTION = "apps" -DEPENDS = "af-binder json-c glib-2.0 neardal" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -inherit cmake pkgconfig aglwgt - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-nfc;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - diff --git a/recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb b/recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb deleted file mode 100644 index 43eed3f2e..000000000 --- a/recipes-apis/agl-service-platform-info/agl-service-platform-info_git.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "Platform info provider binding" -DESCRIPTION = "AGL Platform info provider binding" -HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-platform-info/" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-platform-info;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "libafb-helpers" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-radio/agl-service-radio_git.bb b/recipes-apis/agl-service-radio/agl-service-radio_git.bb deleted file mode 100644 index a46ce128c..000000000 --- a/recipes-apis/agl-service-radio/agl-service-radio_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "Radio Service Binding" -DESCRIPTION = "AGL Radio Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-radio" -SECTION = "apps" -LICENSE = "Apache-2.0 & GPLv2" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ - file://LICENSE.GPL-2.0-only;md5=751419260aa954499f7abaabaa882bbe" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-radio;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -# build-time dependencies -DEPENDS = "rtl-sdr glib-2.0 gstreamer1.0 libusb-compat" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb b/recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb deleted file mode 100644 index 8f79527e6..000000000 --- a/recipes-apis/agl-service-signal-composer/agl-service-signal-composer_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "agl-service-signal-composer" -DESCRIPTION = "AGL High Level Signaling service to handle CAN, LIN, and others signaling sources" -HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-signal-composer/" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -inherit cmake pkgconfig aglwgt ptest - -DEPENDS += "lua lua-native libappcontroller libafb-helpers" -RDEPENDS:${PN} += "lua" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-signal-composer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "${AGLVERSION}" -S = "${WORKDIR}/git" diff --git a/recipes-apis/agl-service-signal-composer/files/run-ptest b/recipes-apis/agl-service-signal-composer/files/run-ptest deleted file mode 100644 index 49187ad85..000000000 --- a/recipes-apis/agl-service-signal-composer/files/run-ptest +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -afm-test /usr/AGL/apps/testwgt/signal-composer-test.wgt diff --git a/recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb b/recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb deleted file mode 100644 index 6c5a18107..000000000 --- a/recipes-apis/agl-service-taskmanager/agl-service-taskmanager.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Task Manager Service Binding" -DESCRIPTION = "AGL Task Manager Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-taskmanager" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-taskmanager;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c procps" - -inherit cmake aglwgt pkgconfig - diff --git a/recipes-apis/agl-service-telephony/agl-service-telephony_git.bb b/recipes-apis/agl-service-telephony/agl-service-telephony_git.bb deleted file mode 100644 index 656d76e0c..000000000 --- a/recipes-apis/agl-service-telephony/agl-service-telephony_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Telephony Service Binding" -DESCRIPTION = "AGL Telephony Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-telephony" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-telephony;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "json-c glib-2.0" -RDEPENDS:${PN} = "ofono" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb b/recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb deleted file mode 100644 index 90df1dc48..000000000 --- a/recipes-apis/agl-service-unicens-controller/agl-service-unicens-controller_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "Infotainment network device control" -DESCRIPTION = "Abstraction layer to control INICnet devices" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-unicens-controller" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" - -SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/apps/agl-service-unicens-controller;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "0.1+git${SRCPV}" -S = "${WORKDIR}/git" - -inherit cmake aglwgt pkgconfig - -DEPENDS += "json-c af-binder libafb-helpers" -RDEPENDS:${PN} += "agl-service-unicens" - diff --git a/recipes-apis/agl-service-unicens/agl-service-unicens_git.bb b/recipes-apis/agl-service-unicens/agl-service-unicens_git.bb deleted file mode 100644 index b6f006e39..000000000 --- a/recipes-apis/agl-service-unicens/agl-service-unicens_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "4A - Infotainment network setup and access" -DESCRIPTION = "Infotainment network setup and access (using Unified Centralized Network Stack)" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-unicens" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=89aea4e17d99a7cacdbeed46a0096b10" - -SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/apps/agl-service-unicens;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "0.1+git${SRCPV}" -S = "${WORKDIR}/git" - -inherit cmake aglwgt pkgconfig - -DEPENDS += "alsa-lib json-c systemd af-binder glib-2.0 libxml2 libafb-helpers" -RDEPENDS:${PN} += "libxml2 " - diff --git a/recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb b/recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb deleted file mode 100644 index 0ab1f3d8f..000000000 --- a/recipes-apis/agl-service-voice-high-capabilities/agl-service-voice-high-capabilities_git.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "agl-service-voice-high" -DESCRIPTION = "AGL High Level Voice service" -HOMEPAGE = "https://git.automotivelinux.org/apps/agl-service-voice-high-capabilities" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -DEPENDS = "libafb-helpers libappcontroller nlohmann-json" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high-capabilities.git;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "0.1+git${SRCPV}" -S = "${WORKDIR}/git" - -inherit cmake pkgconfig aglwgt diff --git a/recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb b/recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb deleted file mode 100644 index 54620144a..000000000 --- a/recipes-apis/agl-service-voice-high/agl-service-voice-high_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "High level voice service binding" -DESCRIPTION = "agl-service-voice-high is the binding library" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -DEPENDS = "json-c systemd af-binder libafb-helpers libappcontroller nlohmann-json glib-2.0" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -inherit cmake aglwgt - -RDEPENDS:${PN} += "virtual/voice-high-config" diff --git a/recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json b/recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json deleted file mode 100644 index 1b72b8c85..000000000 --- a/recipes-apis/agl-service-voice-high/default-voice-high-config/voice-high.json +++ /dev/null @@ -1 +0,0 @@ -{ "default": "" } diff --git a/recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb b/recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb deleted file mode 100644 index caa66188f..000000000 --- a/recipes-apis/agl-service-voice-high/default-voice-high-config_1.0.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "High level voice service binding default voiceagent configuration" -DESCRIPTION = "Default voiceagent JSON configuration file for agl-service-voice-high binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/agl-service-voice-high" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -SRC_URI = "file://voice-high.json" - -inherit allarch - -do_compile[noexec] = "1" - -do_install () { - install -D -m 644 ${WORKDIR}/voice-high.json ${D}${sysconfdir}/xdg/AGL/voice-high.json -} - -RPROVIDES:${PN} += "virtual/voice-high-config" - diff --git a/recipes-apis/agl-service-weather/agl-service-weather_git.bb b/recipes-apis/agl-service-weather/agl-service-weather_git.bb deleted file mode 100644 index abc401f93..000000000 --- a/recipes-apis/agl-service-weather/agl-service-weather_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Weather Service Binding" -DESCRIPTION = "AGL Weather Service Binding" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-service-weather" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-service-weather;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -DEPENDS = "glib-2.0 json-c" -RDEPENDS:${PN} = "agl-service-geoclue" - -inherit cmake aglwgt pkgconfig diff --git a/recipes-config/agl-login-manager/agl-login-manager_%.bbappend b/recipes-config/agl-login-manager/agl-login-manager_%.bbappend deleted file mode 100644 index fe3a90317..000000000 --- a/recipes-config/agl-login-manager/agl-login-manager_%.bbappend +++ /dev/null @@ -1 +0,0 @@ -LOGIN_USER ?= "1001" diff --git a/recipes-config/agl-login-manager/agl-login-manager_0.1.bb b/recipes-config/agl-login-manager/agl-login-manager_0.1.bb deleted file mode 100644 index 20ca12639..000000000 --- a/recipes-config/agl-login-manager/agl-login-manager_0.1.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "AGL Login manager" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" - -LOGIN_USER ??="1001 1002" - -RDEPENDS:${PN} += "af-main" - -do_install:append() { - - install -d ${D}${systemd_system_unitdir}/multi-user.target.wants/ - - for AGL_USER in ${LOGIN_USER};do - ln -s ../afm-user-session@.service ${D}${systemd_system_unitdir}/multi-user.target.wants/afm-user-session@${AGL_USER}.service - done -} - -FILES:${PN} += "${systemd_system_unitdir}" diff --git a/recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb b/recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb deleted file mode 100644 index f1fce78f8..000000000 --- a/recipes-config/cluster-dashboard-demo-config/cluster-dashboard-demo-config_1.0.bb +++ /dev/null @@ -1,11 +0,0 @@ -SUMMARY = "AGL cluster demo dashboard configuration file" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" - -SRC_URI += "file://AGL.conf.cluster" - -inherit allarch - -do_install() { - install -D -m 0644 ${WORKDIR}/AGL.conf.cluster ${D}${sysconfdir}/xdg/AGL.conf -} diff --git a/recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster b/recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster deleted file mode 100644 index dd8a912c5..000000000 --- a/recipes-config/cluster-dashboard-demo-config/files/AGL.conf.cluster +++ /dev/null @@ -1,2 +0,0 @@ -[dashboard] -animation=false diff --git a/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb b/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb deleted file mode 100644 index 8d737282d..000000000 --- a/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb +++ /dev/null @@ -1,33 +0,0 @@ -SUMMARY = "Setting files for cluster network for the AGL Demonstrator" -DESCRIPTION = "Setting files for cluster network for the AGL Demonstrator" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -inherit systemd allarch - -SRC_URI = "file://cluster-demo-network-conf@.service \ - file://cluster-demo-network-conf.sh \ -" - -# Network device for dedicated connection to cluster -AGL_CLUSTER_NET_DEVICE ?= "eth1" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - # Install helper script - install -d ${D}${sbindir} - install -m 0755 ${WORKDIR}/cluster-demo-network-conf.sh ${D}${sbindir}/ - - # Install service unit - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/cluster-demo-network-conf@.service ${D}${systemd_system_unitdir}/ - - # Add symlink to network.target.wants - install -d ${D}${sysconfdir}/systemd/system/network.target.wants - ln -s ${systemd_system_unitdir}/cluster-demo-network-conf@.service \ - ${D}${sysconfdir}/systemd/system/network.target.wants/cluster-demo-network-conf@${AGL_CLUSTER_NET_DEVICE}.service -} - -FILES:${PN} += "${systemd_system_unitdir}" diff --git a/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh b/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh deleted file mode 100644 index 3f538175f..000000000 --- a/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh - -CONNMAN_CONF=/etc/connman/main.conf -CLUSTER_ADDRESS=192.168.20.93 - -if [ -z "$1" ]; then - echo "Usage: $0 " - exit 1 -fi - -# Need to blacklist given device with connman if it isn't already, -# otherwise connman will over-ride address configuration. -if ! grep '^NetworkInterfaceBlacklist=' ${CONNMAN_CONF} | grep -q $1; then - sed -i "s/^\(NetworkInterfaceBlacklist=.*\)/\1,$1/" ${CONNMAN_CONF} -fi - -/sbin/ifconfig $1 ${CLUSTER_ADDRESS} diff --git a/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service b/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service deleted file mode 100644 index 5fc29b7a0..000000000 --- a/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Configure dedicated link for cluster demo network -After=sys-subsystem-net-devices-%i.device -Requires=sys-subsystem-net-devices-%i.device -Before=network.target - -[Service] -ExecStart=/usr/sbin/cluster-demo-network-conf.sh %i -Type=oneshot - -[Install] -WantedBy=network.target diff --git a/recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb b/recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb deleted file mode 100644 index 2eaabc979..000000000 --- a/recipes-config/cluster-demo-simulator/cluster-demo-simulator.bb +++ /dev/null @@ -1,23 +0,0 @@ -DESCRIPTION = "Systemd unit to start simple CAN simulator" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -SRC_URI = "file://cluster-demo-simulator.service" - -inherit systemd - -SYSTEMD_PACKAGES = "${PN}" -SYSTEMD_SERVICE:${PN} = "cluster-demo-simulator.service" -SYSTEMD_AUTO_ENABLE:${PN} = "enable" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/cluster-demo-simulator.service ${D}${systemd_system_unitdir} -} - -FILES:${PN} += "${systemd_system_unitdir}" - -RDEPENDS:${PN} = "simple-can-simulator" diff --git a/recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service b/recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service deleted file mode 100644 index 04d41c6cf..000000000 --- a/recipes-config/cluster-demo-simulator/files/cluster-demo-simulator.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Cluster demo driving simulator -After=sllin-demo.service sllin-demo-virtual.service cluster-lin-bridging.service -Requires=sllin-demo.service sllin-demo-virtual.service cluster-lin-bridging.service - -[Service] -Type=simple -Restart=always -RestartSec=1 -ExecStart=/usr/bin/python3 /usr/sbin/simple_can_simulator.py - -[Install] -WantedBy=multi-user.target diff --git a/recipes-config/cluster-demo-simulator/files/simple_can_simulator.py b/recipes-config/cluster-demo-simulator/files/simple_can_simulator.py deleted file mode 100755 index 83f88706e..000000000 --- a/recipes-config/cluster-demo-simulator/files/simple_can_simulator.py +++ /dev/null @@ -1,381 +0,0 @@ -#!/usr/bin/env python3 -# Copyright (c) 2016 Alex Bencz -# Copyright (c) 2019 Konsulko Group, smurray@konsulko.com -# Copyright (c) 2020 The Linux Foundation, jsmoeller@linuxfoundation.org -# -# Permission is hereby granted, free of charge, to any person obtaining a copy of -# this software and associated documentation files (the "Software"), to deal in -# the Software without restriction, including without limitation the rights to -# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -# of the Software, and to permit persons to whom the Software is furnished to do -# so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -# -# CANSocket from: -# -# https://github.com/abencz/python_socketcan/blob/master/python_socketcan_example.py -# - -import sys -import socket -import argparse -import struct -import errno -import threading -import time - -class CANSocket(object): - FORMAT = "= self.vehicle_speed: - return - v = (self.vehicle_speed - target_speed) / (duration * self.freq) - r = (self.engine_speed - target_rpm) / (duration * self.freq) - while self.vehicle_speed > target_speed and (not self.CRUISEACTIVE or bycruise): - with self.lock: - self.vehicle_speed -= v; - self.engine_speed -= r; - time.sleep(1 / self.freq) - - def increase(self, bycruise = True): - if self.CRUISEACTIVE: - target_speed = self.vehicle_speed + 5 - target_rpm = self.engine_speed * 1.1 - self.accelerate(target_speed, target_rpm, 2, bycruise) - - def decrease(self, bycruise = True): - if self.CRUISEACTIVE: - target_speed = self.vehicle_speed - 5 - target_rpm = self.engine_speed * 0.9 - self.brake(target_speed, target_rpm, 2, bycruise) - - def resume(self, bycruise = True): - target_speed = self.CRUISESPEED - target_rpm = self.CRUISERPM - current_speed = self.get_vehicle_speed() - if target_speed > current_speed: - self.accelerate(target_speed, target_rpm, 2, bycruise) - else: - self.brake(target_speed, target_rpm, 2, bycruise) - - def run(self): - while True: - if not self.CRUISEACTIVE: - self.accelerate(80, 3000, 5) - self.accelerate(104, 4000, 3) - self.brake(80, 3000, 3) - self.accelerate(104, 4000, 6) - self.brake(40, 2000, 4) - self.accelerate(90, 3000, 5) - self.brake(1, 650, 5) - if not self.CRUISEACTIVE: - self.reset() - time.sleep(5) - -class DiagnosticMessageHandler(object): - def __init__(self, can_sock, simulator, verbose=False): - self.can_sock = can_sock - self.simulator = simulator - self.verbose = verbose - self.thread = threading.Thread(target=self.run, daemon=True) - - def start(self): - self.thread.start() - - def run(self): - while True: - can_id, data = self.can_sock.recv() - #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) - if can_id == 0x7df: - # OBD-II request - if data[1] == 0x01 and data[2] == 0x0C: - # Engine speed - speed = self.simulator.get_engine_speed() - #print('engine speed = %d' % speed) - if speed > 16383.75: - speed = 16383.75 - reply = [ 0x04, 0x41, 0x0C ] - reply.append(4 * speed // 256) - reply.append(4 * speed % 256) - # pad remaining bytes to make 8 - reply.append(0) - reply.append(0) - reply.append(0) - self.can_sock.send(0x7e8, bytes(reply), 0) - elif data[1] == 0x01 and data[2] == 0x0D: - # Vehicle speed - speed = int(self.simulator.get_vehicle_speed()) % 256 - #print('vehicle speed = %d' % speed) - reply = [ 0x03, 0x41, 0x0D ] - reply.append(speed) - # pad remaining bytes to make 8 - reply.append(0) - reply.append(0) - reply.append(0) - reply.append(0) - self.can_sock.send(0x7e8, bytes(reply), 0) - -class SteeringWheelMessageHandler(object): - def __init__(self, can_sock, simulator, verbose=False): - self.can_sock = can_sock - self.simulator = simulator - self.verbose = verbose - self.thread = threading.Thread(target=self.run, daemon=True) - self.buttonpressed = False - self.buttonenabled = False - self.buttoncancel = False - self.buttondec = False - self.buttoninc = False - self.cruisemode = False - self.cruiseactive = False - - def start(self): - self.thread.start() - - def run(self): - while True: - can_id, data = self.can_sock.recv() - #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) - if can_id == 0x21: - #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) - if data: - #if data[6]: - #print('data6: %02X' % (data[6])) - if data[6] == 0x80 and not self.buttonpressed: - # we do skip any further lin messages - # two buttons at the same time won't work - # (aka unlikely w/o twisting fingers) - self.buttonpressed = True - self.buttonenabled = True - if data[6] == 0x08 and not self.buttonpressed: - self.buttonpressed = True - self.buttoncancel = True - if data[6] == 0x10 and not self.buttonpressed: - self.buttonpressed = True - self.buttondec = True - if data[6] == 0x40 and not self.buttonpressed: - self.buttonpressed = True - self.buttoninc = True - if data[6] == 0x00 and self.buttonpressed: - #now handle it as the button was released - if self.buttonenabled: - self.buttonenabled = False - self.cruisemode = not self.cruisemode - #print("set cruisemode to %s" % self.cruisemode) - self.simulator.CRUISEMODE = self.cruisemode - # disable/reset all if going off - if not self.cruisemode: - self.cruiseactive = False - self.simulator.CRUISEACTIVE = self.cruiseactive - self.simulator.CRUISESPEED = 0 - self.simulator.CRUISERPM = 0 - #print("set cruiseactive to %s" % self.cruiseactive) - if self.buttoncancel: - self.buttoncancel = False - self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() - self.simulator.CRUISERPM = self.simulator.get_engine_speed() - #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) - #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) - self.cruiseactive = False - #print("set cruiseactive to %s" % self.cruiseactive ) - self.simulator.CRUISEACTIVE = self.cruiseactive - if self.buttondec: - self.buttondec = False - if self.cruiseactive: - #print("decrease") - self.simulator.decrease() - else: - # set speed - #print("set speed") - self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() - self.simulator.CRUISERPM = self.simulator.get_engine_speed() - #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) - #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) - self.cruiseactive = not self.cruiseactive - #print("set cruiseactive to %s" % self.cruiseactive ) - self.simulator.CRUISEACTIVE = self.cruiseactive - if self.buttoninc: - self.buttoninc = False - if self.cruiseactive: - #print("increase") - self.simulator.increase() - else: - if self.simulator.CRUISESPEED > 0: - # resume - self.cruiseactive = not self.cruiseactive - self.simulator.CRUISEACTIVE = self.cruiseactive - #print("set cruiseactive to %s" % self.cruiseactive ) - #print("resume") - self.simulator.resume() - self.buttonpressed = False - - -class StatusMessageSender(object): - def __init__(self, can_sock, simulator, verbose=False): - self.can_sock = can_sock - self.simulator = simulator - self.verbose = verbose - self.thread = threading.Thread(target=self.run, daemon=True) - - def start(self): - self.thread.start() - - def run(self): - while True: - # Engine speed - speed = self.simulator.get_engine_speed() - if self.verbose: - print('engine speed = %d' % speed) - if speed > 16383.75: - speed = 16383.75 - # Message is 1 byte unknown, 1 byte fuel level, 2 bytes engine speed (4x), fuel low @ bit 55 - msg = [ 0, 0 ] - speed *= 4 - msg.append(speed // 256) - msg.append(speed % 256) - # pad remaining bytes to make 8 - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - self.can_sock.send(0x3d9, bytes(msg), 0) - - # Vehicle speed - speed = int(self.simulator.get_vehicle_speed()) % 256 - if self.verbose: - print('vehicle speed = %d' % speed) - # Message is 15 bits speed (64x), left aligned - msg = [ ] - # Note: extra 2x to yield required left-alignment - speed *= 128 - msg.append(speed // 256) - msg.append(speed % 256) - # pad remaining bytes to make 8 - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - self.can_sock.send(0x3e9, bytes(msg), 0) - - # Sleep 100 ms - time.sleep(0.1) - -def main(): - parser = argparse.ArgumentParser(description='Simple CAN vehicle simulator.') - parser.add_argument('interface', type=str, help='interface name (e.g. vcan0)') - parser.add_argument('-v', '--verbose', help='increase output verbosity', action='store_true') - args = parser.parse_args() - - try: - can_sock = CANSocket(args.interface) - diag_can_sock = CANSocket(args.interface) - steeringwheel_can_sock = CANSocket(args.interface) - except OSError as e: - sys.stderr.write('Could not listen on interface {0}\n'.format(args.interface)) - sys.exit(e.errno) - - print('Using {0}'.format(args.interface)) - sim = VehicleSimulator() - status_sender = StatusMessageSender(can_sock, sim, args.verbose) - diag_handler = DiagnosticMessageHandler(diag_can_sock, sim, args.verbose) - steeringwheel_handler = SteeringWheelMessageHandler(steeringwheel_can_sock, sim, args.verbose) - sim.start() - status_sender.start() - diag_handler.start() - steeringwheel_handler.start() - try: - while True: - time.sleep(60) - except (KeyboardInterrupt, SystemExit): - #sim.stop() - sys.exit(0) - -if __name__ == '__main__': - main() diff --git a/recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb b/recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb deleted file mode 100644 index 5366f2d0b..000000000 --- a/recipes-config/cluster-lin-bridging-config/cluster-lin-bridging-config.bb +++ /dev/null @@ -1,28 +0,0 @@ -DESCRIPTION = "Configure LIN to external CAN bridging" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -SRC_URI = "\ - file://cluster-lin-bridging.service \ -" - -inherit systemd - -SYSTEMD_PACKAGES = "${PN}" -SYSTEMD_SERVICE:${PN} = "cluster-lin-bridging.service" -SYSTEMD_AUTO_ENABLE:${PN} = "enable" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/cluster-lin-bridging.service ${D}${systemd_system_unitdir} -} - -FILES:${PN} += "${systemd_system_unitdir}" - -RDEPENDS:${PN} = " \ - can-utils \ - sllin \ -" diff --git a/recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service b/recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service deleted file mode 100644 index 1dde33786..000000000 --- a/recipes-config/cluster-lin-bridging-config/files/cluster-lin-bridging.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=LIN to CAN bridging -After=sllin-demo.service sllin-demo-virtual.service -Requires=sllin-demo.service sllin-demo-virtual.service - -[Service] -Type=simple -ExecStart=/usr/bin/candump -s 2 -B can0 sllin0 - -[Install] -WantedBy=multi-user.target diff --git a/recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci b/recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci deleted file mode 100644 index bd5c2135a..000000000 --- a/recipes-config/dev-mapping/dev-mapping-ci/dev-mapping.conf.ci +++ /dev/null @@ -1,7 +0,0 @@ -; Default CAN device mapping -; Format has to follow ini rules key="value", notice " around value. - -[CANbus-mapping] -hs="vcan0" -ls="vcan0" -j1939="vcan0" diff --git a/recipes-config/dev-mapping/dev-mapping-ci_1.0.bb b/recipes-config/dev-mapping/dev-mapping-ci_1.0.bb deleted file mode 100644 index 7b40e40c6..000000000 --- a/recipes-config/dev-mapping/dev-mapping-ci_1.0.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "AGL demo device mapping configuration file" -DESCRIPTION = "This provides a default dev-mapping.conf file \ - that defines mapping between kernel device and logical name \ - used in the low-can binding for the AGL CI setup." - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" - -SRC_URI += "file://dev-mapping.conf.ci" - -inherit allarch - -do_install() { - install -d ${D}${sysconfdir} - install -m 0644 ${WORKDIR}/dev-mapping.conf.ci ${D}${sysconfdir}/dev-mapping.conf -} - -RPROVIDES:${PN} = "virtual/low-can-dev-mapping" diff --git a/recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo b/recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo deleted file mode 100644 index 1fd12ad03..000000000 --- a/recipes-config/dev-mapping/dev-mapping-demo/dev-mapping.conf.demo +++ /dev/null @@ -1,7 +0,0 @@ -; Default CAN device mapping -; Format has to follow ini rules key="value", notice " around value. - -[CANbus-mapping] -hs="can0" -ls="sllin0" -j1939="can0" diff --git a/recipes-config/dev-mapping/dev-mapping-demo_1.0.bb b/recipes-config/dev-mapping/dev-mapping-demo_1.0.bb deleted file mode 100644 index 23fdc078a..000000000 --- a/recipes-config/dev-mapping/dev-mapping-demo_1.0.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "AGL demo device mapping configuration file" -DESCRIPTION = "This provide default dev-mapping.conf file \ - that defines mapping between kernel device and logical name \ - used in low-can binding for the AGL demo setup." - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" - -SRC_URI += "file://dev-mapping.conf.demo" - -inherit allarch - -do_install() { - install -d ${D}${sysconfdir} - install -m 0644 ${WORKDIR}/dev-mapping.conf.demo ${D}${sysconfdir}/dev-mapping.conf -} - -RPROVIDES:${PN} = "virtual/low-can-dev-mapping" diff --git a/recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default b/recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default deleted file mode 100644 index 8519a5873..000000000 --- a/recipes-config/dev-mapping/dev-mapping/dev-mapping.conf.default +++ /dev/null @@ -1,7 +0,0 @@ -; Default CAN device mapping -; Format has to follow ini rules key="value", notice " around value. - -[CANbus-mapping] -hs="can0" -ls="can0" -j1939="can0" diff --git a/recipes-config/dev-mapping/dev-mapping_0.1.bb b/recipes-config/dev-mapping/dev-mapping_0.1.bb deleted file mode 100644 index f880d39d8..000000000 --- a/recipes-config/dev-mapping/dev-mapping_0.1.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "AGL Device mapping configuration file" -DESCRIPTION = "This provide default dev-mapping.conf file \ - that defines mapping between kernel device and logical name \ - used in low-can binding by example." - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" - -SRC_URI += "file://dev-mapping.conf.default" - -inherit allarch - -do_install() { - install -d ${D}${sysconfdir} - install -m 0644 ${WORKDIR}/dev-mapping.conf.default ${D}${sysconfdir}/dev-mapping.conf -} - -RPROVIDES:${PN} = "virtual/low-can-dev-mapping" diff --git a/recipes-config/systemd-sync/systemd-agl-sync_1.0.bb b/recipes-config/systemd-sync/systemd-agl-sync_1.0.bb deleted file mode 100644 index 0b2dc4e4d..000000000 --- a/recipes-config/systemd-sync/systemd-agl-sync_1.0.bb +++ /dev/null @@ -1,39 +0,0 @@ -SUMMARY = "Systemd synchronization script" -DESCRIPTION = "\ -Systemd synchronization script \ -reload daemon at the first boot. \ -" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -#This script should be the last to be execute at the first boot -POST_INSTALL_LEVEL = "X0" -POST_INSTALL_SCRIPT ?= "${POST_INSTALL_LEVEL}-${PN}.sh" - -do_install() { - install -d ${D}/${sysconfdir}/agl-postinsts - cat > ${D}/${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT} < /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_direction 2>/dev/null -echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_datatype 2>/dev/null -echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_number_of_buffers 2>/dev/null -echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep8f/set_buffer_size 2>/dev/null - -echo mdev0:ep8f:inic-usb-crx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null - -#aim: cdev -#name: inic-usb-ctx -echo tx > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_direction 2>/dev/null -echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_datatype 2>/dev/null -echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_number_of_buffers 2>/dev/null -echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep0f/set_buffer_size 2>/dev/null - -echo mdev0:ep0f:inic-usb-ctx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null - -########################################## -# interface: mdev1 -#aim: networking -#name: inic-usb-arx -echo rx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_direction 2>/dev/null -echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_datatype 2>/dev/null -echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_number_of_buffers 2>/dev/null -echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep8e/set_buffer_size 2>/dev/null - -echo mdev1:ep8e:inic-usb-arx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null -#aim: networking -#name: inic-usb-atx -echo tx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_direction 2>/dev/null -echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_datatype 2>/dev/null -echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_number_of_buffers 2>/dev/null -echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep0e/set_buffer_size 2>/dev/null - -echo mdev1:ep0e:inic-usb-atx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null -########################################### -## interface: mdev0 -## chip: Durango -##aim: cdev -##name: inic-usb-crx -echo rx > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_direction 2>/dev/null -echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_datatype 2>/dev/null -echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_number_of_buffers 2>/dev/null -echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep87/set_buffer_size 2>/dev/null - -echo mdev0:ep87:inic-usb-crx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null -#aim: cdev -#name: inic-usb-ctx -echo tx > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_direction 2>/dev/null -echo control > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_datatype 2>/dev/null -echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_number_of_buffers 2>/dev/null -echo 64 > /sys/devices/virtual/most/mostcore/devices/mdev0/ep07/set_buffer_size 2>/dev/null - -echo mdev0:ep07:inic-usb-ctx > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null -########################################### -## interface: mdev1 -## chip: Durango -## aim: networking -##name: inic-usb-arx -echo rx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_direction 2>/dev/null -echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_datatype 2>/dev/null -echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_number_of_buffers 2>/dev/null -echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep86/set_buffer_size 2>/dev/null - -echo mdev1:ep86:inic-usb-arx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null -#aim: networking -#name: inic-usb-atx -echo tx > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_direction 2>/dev/null -echo async > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_datatype 2>/dev/null -echo 20 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_number_of_buffers 2>/dev/null -echo 1522 > /sys/devices/virtual/most/mostcore/devices/mdev1/ep06/set_buffer_size 2>/dev/null - -echo mdev1:ep06:inic-usb-atx > /sys/devices/virtual/most/mostcore/aims/networking/add_link 2>/dev/null - -########################################## -# interface: mdev2 -#aim: sound -#name: ep01-6ch.6x16 -echo tx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_direction 2>/dev/null -echo sync > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_datatype 2>/dev/null -echo 16 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_number_of_buffers 2>/dev/null -echo 1008 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_buffer_size 2>/dev/null -echo 12 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_subbuffer_size 2>/dev/null -echo 42 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep01/set_packets_per_xact 2>/dev/null - -echo mdev2:ep01:ep01-6ch.6x16 > /sys/devices/virtual/most/mostcore/aims/sound/add_link 2>/dev/null - -# interface: mdev2 -# aim: sound -# name: ep81-1ch.1x16 -echo rx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_direction 2>/dev/null -echo sync > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_datatype 2>/dev/null -echo 8 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_number_of_buffers 2>/dev/null -echo 2048 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_buffer_size 2>/dev/null -echo 2 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_subbuffer_size 2>/dev/null -echo 256 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep81/set_packets_per_xact 2>/dev/null - -echo mdev2:ep81:ep81-1ch.1x16 > /sys/devices/virtual/most/mostcore/aims/sound/add_link 2>/dev/null - -# interface: mdev2 -# aim: sound -# name: ep82-1ch.1x16 -echo rx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_direction 2>/dev/null -echo sync > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_datatype 2>/dev/null -echo 8 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_number_of_buffers 2>/dev/null -echo 2048 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_buffer_size 2>/dev/null -echo 2 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_subbuffer_size 2>/dev/null -echo 256 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep82/set_packets_per_xact 2>/dev/null - -echo mdev2:ep82:ep82-1ch.1x16 > /sys/devices/virtual/most/mostcore/aims/sound/add_link 2>/dev/null - -##aim: cdev -##name: inic-usb-itx1 -echo tx > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_direction 2>/dev/null -echo isoc > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_datatype 2>/dev/null -echo 8 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_number_of_buffers 2>/dev/null -echo 7520 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_buffer_size 2>/dev/null -echo 188 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_subbuffer_size 2>/dev/null -echo 2 > /sys/devices/virtual/most/mostcore/devices/mdev2/ep02/set_packets_per_xact 2>/dev/null - -echo mdev2:ep02:inic-usb-itx1 > /sys/devices/virtual/most/mostcore/aims/cdev/add_link 2>/dev/null diff --git a/recipes-config/unicens-config/unicens-config.bb b/recipes-config/unicens-config/unicens-config.bb deleted file mode 100644 index 57b93a76f..000000000 --- a/recipes-config/unicens-config/unicens-config.bb +++ /dev/null @@ -1,31 +0,0 @@ -DESCRIPTION = "Configure MOST driver" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" - -RDEPENDS:${PN} = "bash" - -SRC_URI = "\ - file://unicens-config.service \ - file://unicens-config.sh \ - file://55-inic.rules \ -" - - -inherit systemd - -SYSTEMD_PACKAGES = "${PN}" -SYSTEMD_SERVICE:${PN} = "unicens-config.service" -SYSTEMD_AUTO_ENABLE:${PN} = "enable" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/unicens-config.service ${D}${systemd_system_unitdir} - install -d ${D}${bindir} - install -m 0755 ${WORKDIR}/unicens-config.sh ${D}${bindir} - install -D -m 0644 ${WORKDIR}/55-inic.rules ${D}${sysconfdir}/udev/rules.d/55-inic.rules -} - -FILES:${PN} += "${systemd_system_unitdir}" diff --git a/recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch b/recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch deleted file mode 100644 index 6c9a388c8..000000000 --- a/recipes-connectivity/bluez-alsa/bluez-alsa/0001-utils-add-a-gstreamer-helper-application-for-interco.patch +++ /dev/null @@ -1,517 +0,0 @@ -From f2e6a0a324106b40195f88953e55a355875d2b1b Mon Sep 17 00:00:00 2001 -From: George Kiagiadakis -Date: Fri, 4 Oct 2019 20:51:24 +0300 -Subject: [PATCH] utils: add a gstreamer helper application for interconnection - with pipewire - -Unfortunately, the bluez-alsa PCM plugin does not work correctly -when it is used through pipewire (or gstreamer, or anywhere really...). - -Thanfully, the bluez-alsa PCM plugin is only a simple client that -reads/writes on a file descriptor that was opened by bluealsa. -This allows us to use bluealsa without the PCM plugin, just like it -is done in the aplay.c util. - -This one uses GStreamer to implement the plumbing between pipewire -and the file descriptor. On the reading side we are also doing some -tricks to ensure a smooth stream, which is not the case for the -stream that is coming out of bluealsa. - -This helper is implemented as a patch to bluez-alsa so that it can -use its internal private API. In the future this needs some re-thinking. - -Upstream-Status: Inappropriate ---- - configure.ac | 7 + - utils/Makefile.am | 20 +++ - utils/gst-helper.c | 432 +++++++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 459 insertions(+) - create mode 100644 utils/gst-helper.c - -diff --git a/configure.ac b/configure.ac -index 4825afa..9125871 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -141,6 +141,13 @@ AM_COND_IF([ENABLE_HCITOP], [ - PKG_CHECK_MODULES([NCURSES], [ncurses]) - ]) - -+AC_ARG_ENABLE([gsthelper], -+ [AS_HELP_STRING([--enable-gsthelper], [enable building of gsthelper tool])]) -+AM_CONDITIONAL([ENABLE_GSTHELPER], [test "x$enable_gsthelper" = "xyes"]) -+AM_COND_IF([ENABLE_GSTHELPER], [ -+ PKG_CHECK_MODULES([GST], [gstreamer-1.0 glib-2.0]) -+]) -+ - AC_ARG_ENABLE([test], - [AS_HELP_STRING([--enable-test], [enable unit test])]) - AM_CONDITIONAL([ENABLE_TEST], [test "x$enable_test" = "xyes"]) -diff --git a/utils/Makefile.am b/utils/Makefile.am -index 9057f2c..9790474 100644 ---- a/utils/Makefile.am -+++ b/utils/Makefile.am -@@ -47,3 +47,23 @@ hcitop_LDADD = \ - @LIBBSD_LIBS@ \ - @NCURSES_LIBS@ - endif -+ -+if ENABLE_GSTHELPER -+bin_PROGRAMS += bluealsa-gst-helper -+bluealsa_gst_helper_SOURCES = \ -+ ../src/shared/dbus-client.c \ -+ ../src/shared/ffb.c \ -+ ../src/shared/log.c \ -+ gst-helper.c -+bluealsa_gst_helper_CFLAGS = \ -+ -I$(top_srcdir)/src \ -+ @ALSA_CFLAGS@ \ -+ @BLUEZ_CFLAGS@ \ -+ @DBUS1_CFLAGS@ \ -+ @GST_CFLAGS@ -+bluealsa_gst_helper_LDADD = \ -+ @ALSA_LIBS@ \ -+ @BLUEZ_LIBS@ \ -+ @DBUS1_LIBS@ \ -+ @GST_LIBS@ -+endif -diff --git a/utils/gst-helper.c b/utils/gst-helper.c -new file mode 100644 -index 0000000..de1d47c ---- /dev/null -+++ b/utils/gst-helper.c -@@ -0,0 +1,432 @@ -+/* Bluez-Alsa PipeWire integration GStreamer helper -+ * -+ * Copyright © 2016-2019 Arkadiusz Bokowy -+ * Copyright © 2019 Collabora Ltd. -+ * @author George Kiagiadakis -+ * -+ * SPDX-License-Identifier: MIT -+ */ -+ -+#if HAVE_CONFIG_H -+# include -+#endif -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+ -+#include "shared/dbus-client.h" -+#include "shared/defs.h" -+#include "shared/ffb.h" -+#include "shared/log.h" -+ -+struct worker { -+ /* used BlueALSA PCM device */ -+ struct ba_pcm ba_pcm; -+ /* file descriptor of PCM FIFO */ -+ int ba_pcm_fd; -+ /* file descriptor of PCM control */ -+ int ba_pcm_ctrl_fd; -+ /* the gstreamer pipelines (sink & source) */ -+ GstElement *pipeline[2]; -+ /* the queue & pwaudiosink of the sink pipeline */ -+ GstElement *queue; -+ GstElement *pwelem; -+}; -+ -+static struct ba_dbus_ctx dbus_ctx; -+static GHashTable *workers; -+static bool main_loop_on = true; -+ -+static void -+main_loop_stop(int sig) -+{ -+ /* Call to this handler restores the default action, so on the -+ * second call the program will be forcefully terminated. */ -+ -+ struct sigaction sigact = { .sa_handler = SIG_DFL }; -+ sigaction(sig, &sigact, NULL); -+ -+ main_loop_on = false; -+} -+ -+static GstBusSyncReply -+bus_sync_handler(GstBus *bus, GstMessage *message, gpointer user_data) -+{ -+ struct worker *w = user_data; -+ GstState s; -+ -+ switch (GST_MESSAGE_TYPE (message)) { -+ case GST_MESSAGE_REQUEST_STATE: -+ gst_message_parse_request_state (message, &s); -+ -+ debug ("corked: %d", (s == GST_STATE_PAUSED)); -+ -+ /* drop queue data when corked */ -+ g_object_set (w->queue, -+ "leaky", (s == GST_STATE_PAUSED) ? 2 /* downstream */ : 0 /* no */, -+ NULL); -+ gst_element_set_state (w->pwelem, s); -+ -+ /* flush the queue when resuming */ -+ if (s == GST_STATE_PLAYING) { -+ gst_element_send_event (w->queue, gst_event_new_flush_start ()); -+ gst_element_send_event (w->queue, gst_event_new_flush_stop (FALSE)); -+ } -+ break; -+ default: -+ break; -+ } -+ -+ gst_message_unref (message); -+ return GST_BUS_DROP; -+} -+ -+static int -+worker_start_pipeline(struct worker *w, int id, int mode, int profile) -+{ -+ GError *gerr = NULL; -+ DBusError err = DBUS_ERROR_INIT; -+ const gchar * role = NULL; -+ -+ if (w->pipeline[id]) -+ return 0; -+ -+ if (!bluealsa_dbus_pcm_open(&dbus_ctx, w->ba_pcm.pcm_path, mode, -+ &w->ba_pcm_fd, &w->ba_pcm_ctrl_fd, &err)) { -+ error("Couldn't open PCM: %s", err.message); -+ dbus_error_free(&err); -+ goto fail; -+ } -+ -+ if (mode == BA_PCM_FLAG_SINK) { -+ debug("sink start"); -+ w->pipeline[id] = gst_parse_launch( -+ /* add a silent live source to ensure a perfect live stream on the -+ output, even when the bt device is not sending or has gaps; -+ this also effectively changes the clock to be the system clock, -+ which is the same clock used by bluez-alsa on the sending side */ -+ "audiotestsrc is-live=true wave=silence ! capsfilter name=capsf " -+ "! audiomixer name=m " -+ /* mix the input from bluez-alsa using fdsrc; rawaudioparse -+ is necessary to convert bytes to time and align the buffers */ -+ "fdsrc name=fdelem do-timestamp=true ! capsfilter name=capsf2 " -+ "! rawaudioparse use-sink-caps=true ! m. " -+ /* take the mixer output, convert and push to pipewire */ -+ "m.src ! capsfilter name=capsf3 ! audioconvert ! audioresample " -+ "! audio/x-raw,format=F32LE,rate=48000 ! identity sync=true " -+ "! queue name=queue leaky=no max-size-time=0 max-size-buffers=0 max-size-bytes=192000 " -+ "! pwaudiosink name=pwelem", -+ &gerr); -+ -+ /* a2dp is for music, sco is for calls */ -+ role = (profile == BA_PCM_FLAG_PROFILE_A2DP) ? "Multimedia" : "Communication"; -+ } -+ else if (mode == BA_PCM_FLAG_SOURCE && profile == BA_PCM_FLAG_PROFILE_SCO) { -+ debug("source start"); -+ w->pipeline[id] = gst_parse_launch( -+ /* read from pipewire and put the buffers on a leaky queue, which -+ will essentially allow pwaudiosrc to continue working while -+ the fdsink is blocked (when there is no phone call in progress). -+ 9600 bytes = 50ms @ F32LE/1ch/48000 -+ */ -+ "pwaudiosrc name=pwelem ! audio/x-raw,format=F32LE,rate=48000 " -+ "! queue name=queue leaky=downstream max-size-time=0 max-size-buffers=0 max-size-bytes=9600 " -+ "! audioconvert ! audioresample ! capsfilter name=capsf " -+ "! fdsink name=fdelem", &gerr); -+ -+ role = "Communication"; -+ } -+ -+ if (gerr) { -+ error("Failed to start pipeline: %s", gerr->message); -+ g_error_free(gerr); -+ goto fail; -+ } -+ -+ if (w->pipeline[id]) { -+ g_autofree gchar *capsstr = NULL; -+ g_autoptr (GstElement) fdelem = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "fdelem"); -+ g_autoptr (GstElement) pwelem = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "pwelem"); -+ g_autoptr (GstElement) queue = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "queue"); -+ g_autoptr (GstElement) capsf = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "capsf"); -+ g_autoptr (GstElement) capsf2 = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "capsf2"); -+ g_autoptr (GstElement) capsf3 = gst_bin_get_by_name(GST_BIN(w->pipeline[id]), "capsf3"); -+ g_autoptr (GstCaps) caps = gst_caps_new_simple("audio/x-raw", -+ "format", G_TYPE_STRING, "S16LE", -+ "layout", G_TYPE_STRING, "interleaved", -+ "channels", G_TYPE_INT, w->ba_pcm.channels, -+ "rate", G_TYPE_INT, w->ba_pcm.sampling, -+ NULL); -+ g_autoptr (GstStructure) stream_props = gst_structure_new("props", -+ "media.role", G_TYPE_STRING, role, -+ "bluealsa.profile", G_TYPE_STRING, -+ (profile == BA_PCM_FLAG_PROFILE_SCO) ? "sco" : "a2dp", -+ NULL); -+ -+ g_object_set(capsf, "caps", caps, NULL); -+ if (capsf2) -+ g_object_set(capsf2, "caps", caps, NULL); -+ if (capsf3) -+ g_object_set(capsf3, "caps", caps, NULL); -+ -+ capsstr = gst_caps_to_string (caps); -+ debug(" caps: %s", capsstr); -+ -+ g_object_set(fdelem, "fd", w->ba_pcm_fd, NULL); -+ g_object_set(pwelem, "stream-properties", stream_props, NULL); -+ -+ if (mode == BA_PCM_FLAG_SINK) { -+ g_autoptr (GstBus) bus = gst_pipeline_get_bus(GST_PIPELINE(w->pipeline[id])); -+ gst_bus_set_sync_handler(bus, bus_sync_handler, w, NULL); -+ w->queue = queue; -+ w->pwelem = pwelem; -+ } -+ -+ gst_element_set_state(w->pipeline[id], GST_STATE_PLAYING); -+ } -+ -+ return 0; -+fail: -+ g_clear_object(&w->pipeline[id]); -+ return -1; -+} -+ -+static int -+worker_start(struct worker *w) -+{ -+ int mode = w->ba_pcm.flags & (BA_PCM_FLAG_SOURCE | BA_PCM_FLAG_SINK); -+ int profile = w->ba_pcm.flags & (BA_PCM_FLAG_PROFILE_A2DP | BA_PCM_FLAG_PROFILE_SCO); -+ /* human-readable BT address */ -+ char addr[18]; -+ -+ g_return_val_if_fail (profile != 0 && profile != (BA_PCM_FLAG_PROFILE_A2DP | BA_PCM_FLAG_PROFILE_SCO), -1); -+ -+ ba2str(&w->ba_pcm.addr, addr); -+ debug("%p: worker start addr:%s, mode:0x%x, profile:0x%x", w, addr, mode, profile); -+ -+ if (mode & BA_PCM_FLAG_SINK) -+ worker_start_pipeline(w, 0, BA_PCM_FLAG_SINK, profile); -+ if (mode & BA_PCM_FLAG_SOURCE) -+ worker_start_pipeline(w, 1, BA_PCM_FLAG_SOURCE, profile); -+} -+ -+static int -+worker_stop(struct worker *w) -+{ -+ debug("stop worker %p", w); -+ if (w->pipeline[0]) { -+ gst_element_set_state(w->pipeline[0], GST_STATE_NULL); -+ g_clear_object(&w->pipeline[0]); -+ } -+ if (w->pipeline[1]) { -+ gst_element_set_state(w->pipeline[1], GST_STATE_NULL); -+ g_clear_object(&w->pipeline[1]); -+ } -+ if (w->ba_pcm_fd != -1) { -+ close(w->ba_pcm_fd); -+ w->ba_pcm_fd = -1; -+ } -+ if (w->ba_pcm_ctrl_fd != -1) { -+ close(w->ba_pcm_ctrl_fd); -+ w->ba_pcm_ctrl_fd = -1; -+ } -+ return 0; -+} -+ -+static int -+supervise_pcm_worker(struct worker *worker) -+{ -+ if (worker == NULL) -+ return -1; -+ -+ /* no mode? */ -+ if (worker->ba_pcm.flags & (BA_PCM_FLAG_SOURCE | BA_PCM_FLAG_SINK) == 0) -+ goto stop; -+ -+ /* no profile? */ -+ if (worker->ba_pcm.flags & (BA_PCM_FLAG_PROFILE_A2DP | BA_PCM_FLAG_PROFILE_SCO) == 0) -+ goto stop; -+ -+ /* check whether SCO has selected codec */ -+ if (worker->ba_pcm.flags & BA_PCM_FLAG_PROFILE_SCO && -+ worker->ba_pcm.codec == 0) { -+ debug("Skipping SCO with codec not selected"); -+ goto stop; -+ } -+ -+start: -+ return worker_start(worker); -+stop: -+ return worker_stop(worker); -+} -+ -+static void -+worker_new(struct ba_pcm *pcm) -+{ -+ struct worker *w = g_slice_new0 (struct worker); -+ memcpy(&w->ba_pcm, pcm, sizeof(struct ba_pcm)); -+ w->ba_pcm_fd = -1; -+ w->ba_pcm_ctrl_fd = -1; -+ g_hash_table_insert(workers, w->ba_pcm.pcm_path, w); -+ supervise_pcm_worker(w); -+} -+ -+static DBusHandlerResult -+dbus_signal_handler(DBusConnection *conn, DBusMessage *message, void *data) -+{ -+ (void)conn; -+ (void)data; -+ -+ const char *path = dbus_message_get_path(message); -+ const char *interface = dbus_message_get_interface(message); -+ const char *signal = dbus_message_get_member(message); -+ -+ DBusMessageIter iter; -+ struct worker *worker; -+ -+ if (strcmp(interface, BLUEALSA_INTERFACE_MANAGER) == 0) { -+ -+ if (strcmp(signal, "PCMAdded") == 0) { -+ struct ba_pcm pcm; -+ if (!dbus_message_iter_init(message, &iter) || -+ !bluealsa_dbus_message_iter_get_pcm(&iter, NULL, &pcm)) { -+ error("Couldn't add new PCM: %s", "Invalid signal signature"); -+ goto fail; -+ } -+ worker_new(&pcm); -+ return DBUS_HANDLER_RESULT_HANDLED; -+ } -+ -+ if (strcmp(signal, "PCMRemoved") == 0) { -+ if (!dbus_message_iter_init(message, &iter) || -+ dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_OBJECT_PATH) { -+ error("Couldn't remove PCM: %s", "Invalid signal signature"); -+ goto fail; -+ } -+ dbus_message_iter_get_basic(&iter, &path); -+ g_hash_table_remove(workers, path); -+ return DBUS_HANDLER_RESULT_HANDLED; -+ } -+ -+ } -+ -+ if (strcmp(interface, DBUS_INTERFACE_PROPERTIES) == 0) { -+ worker = g_hash_table_lookup(workers, path); -+ if (!worker) -+ goto fail; -+ if (!dbus_message_iter_init(message, &iter) || -+ dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_STRING) { -+ error("Couldn't update PCM: %s", "Invalid signal signature"); -+ goto fail; -+ } -+ dbus_message_iter_get_basic(&iter, &interface); -+ dbus_message_iter_next(&iter); -+ if (!bluealsa_dbus_message_iter_get_pcm_props(&iter, NULL, &worker->ba_pcm)) -+ goto fail; -+ supervise_pcm_worker(worker); -+ return DBUS_HANDLER_RESULT_HANDLED; -+ } -+ -+fail: -+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; -+} -+ -+static void -+destroy_worker(void *worker) -+{ -+ struct worker *w = worker; -+ worker_stop(w); -+ g_slice_free(struct worker, w); -+} -+ -+int -+main(int argc, char *argv[]) -+{ -+ int ret = EXIT_SUCCESS; -+ -+ log_open(argv[0], false, false); -+ gst_init(&argc, &argv); -+ dbus_threads_init_default(); -+ -+ DBusError err = DBUS_ERROR_INIT; -+ if (!bluealsa_dbus_connection_ctx_init(&dbus_ctx, BLUEALSA_SERVICE, &err)) { -+ error("Couldn't initialize D-Bus context: %s", err.message); -+ return EXIT_FAILURE; -+ } -+ -+ bluealsa_dbus_connection_signal_match_add(&dbus_ctx, -+ BLUEALSA_SERVICE, NULL, BLUEALSA_INTERFACE_MANAGER, "PCMAdded", NULL); -+ bluealsa_dbus_connection_signal_match_add(&dbus_ctx, -+ BLUEALSA_SERVICE, NULL, BLUEALSA_INTERFACE_MANAGER, "PCMRemoved", NULL); -+ bluealsa_dbus_connection_signal_match_add(&dbus_ctx, -+ BLUEALSA_SERVICE, NULL, DBUS_INTERFACE_PROPERTIES, "PropertiesChanged", -+ "arg0='"BLUEALSA_INTERFACE_PCM"'"); -+ -+ if (!dbus_connection_add_filter(dbus_ctx.conn, dbus_signal_handler, NULL, NULL)) { -+ error("Couldn't add D-Bus filter: %s", err.message); -+ return EXIT_FAILURE; -+ } -+ -+ workers = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, destroy_worker); -+ -+ { -+ struct ba_pcm *pcms = NULL; -+ size_t pcms_count = 0, i; -+ -+ if (!bluealsa_dbus_get_pcms(&dbus_ctx, &pcms, &pcms_count, &err)) -+ warn("Couldn't get BlueALSA PCM list: %s", err.message); -+ -+ for (i = 0; i < pcms_count; i++) { -+ worker_new(&pcms[i]); -+ } -+ -+ free(pcms); -+ } -+ -+ struct sigaction sigact = { .sa_handler = main_loop_stop }; -+ sigaction(SIGTERM, &sigact, NULL); -+ sigaction(SIGINT, &sigact, NULL); -+ -+ /* Ignore SIGPIPE, which may be received when writing to the bluealsa -+ socket when it is closed on the remote end */ -+ signal(SIGPIPE, SIG_IGN); -+ -+ debug("Starting main loop"); -+ while (main_loop_on) { -+ -+ struct pollfd pfds[10]; -+ nfds_t pfds_len = ARRAYSIZE(pfds); -+ -+ if (!bluealsa_dbus_connection_poll_fds(&dbus_ctx, pfds, &pfds_len)) { -+ error("Couldn't get D-Bus connection file descriptors"); -+ ret = EXIT_FAILURE; -+ goto out; -+ } -+ -+ if (poll(pfds, pfds_len, -1) == -1 && -+ errno == EINTR) -+ continue; -+ -+ if (bluealsa_dbus_connection_poll_dispatch(&dbus_ctx, pfds, pfds_len)) -+ while (dbus_connection_dispatch(dbus_ctx.conn) == DBUS_DISPATCH_DATA_REMAINS) -+ continue; -+ -+ } -+ -+out: -+ g_hash_table_unref(workers); -+ return ret; -+} --- -2.24.0 - diff --git a/recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service b/recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service deleted file mode 100644 index 495ab6222..000000000 --- a/recipes-connectivity/bluez-alsa/bluez-alsa/bluealsa-gst-helper@.service +++ /dev/null @@ -1,18 +0,0 @@ -[Unit] -Description=Bluetooth audio helper for user %i -Requires=pipewire@%i.socket bluez-alsa.service -After=pipewire@%i.socket bluez-alsa.service - -[Service] -Type=simple -Restart=on-failure -ExecStart=/usr/bin/bluealsa-gst-helper - -Environment=XDG_RUNTIME_DIR=/run/user/%i -Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%i/bus - -User=%i -Slice=user-%i.slice -SupplementaryGroups=audio -UMask=0077 -CapabilityBoundingSet= diff --git a/recipes-connectivity/bluez-alsa/bluez-alsa_git.bb b/recipes-connectivity/bluez-alsa/bluez-alsa_git.bb deleted file mode 100644 index 27f462a87..000000000 --- a/recipes-connectivity/bluez-alsa/bluez-alsa_git.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "Bluetooth Audio ALSA Backend" -HOMEPAGE = "https://github.com/Arkq/bluez-alsa" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3d7d6ac7e2dbd2505652dceb3acdf1fe" - -SRC_URI = "git://github.com/Arkq/bluez-alsa.git;protocol=https;branch=master" -SRCREV = "2cd6e4686f7808276480b430fb37df55dfdcc02b" - -SRC_URI += "file://bluez-alsa.service" - -S = "${WORKDIR}/git" - -DEPENDS += "alsa-lib bluez5 systemd glib-2.0 sbc" - -PACKAGECONFIG[aac] = "--enable-aac, --disable-aac, " -PACKAGECONFIG[aptx] = "--enable-aptx,--disable-aptx," -PACKAGECONFIG[ofono] = "--enable-ofono, --disable-ofono," - -inherit autotools pkgconfig -inherit systemd - -SYSTEMD_AUTO_ENABLE = "enable" -SYSTEMD_SERVICE:${PN} = "bluez-alsa.service" - -PACKAGECONFIG += "ofono" - -# enable debug tools in devel images -PACKAGECONFIG[hcitop] = "--enable-hcitop, --disable-hcitop, libbsd ncurses" -PACKAGECONFIG[rfcomm] = "--enable-rfcomm, --disable-rfcomm," -PACKAGECONFIG:append:agl-devel = " hcitop rfcomm" - -do_install:append () { - install -d ${D}${base_libdir}/systemd/system - install -m 0644 ${WORKDIR}/bluez-alsa.service ${D}${base_libdir}/systemd/system -} - -FILES:${PN} += "\ - ${datadir}/alsa/alsa.conf.d/20-bluealsa.conf\ - ${libdir}/alsa-lib/libasound_module_ctl_bluealsa.so\ - ${libdir}/alsa-lib/libasound_module_pcm_bluealsa.so\ -" diff --git a/recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend b/recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend deleted file mode 100644 index b592e822b..000000000 --- a/recipes-connectivity/bluez-alsa/bluez-alsa_git.bbappend +++ /dev/null @@ -1,35 +0,0 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/bluez-alsa:" - -SRC_URI += "\ - file://0001-utils-add-a-gstreamer-helper-application-for-interco.patch \ - file://bluealsa-gst-helper@.service \ - " - -PACKAGECONFIG += "gsthelper" -PACKAGECONFIG[gsthelper] = "--enable-gsthelper, --disable-gsthelper, gstreamer1.0" - -do_install:append() { - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - # install the service file - mkdir -p ${D}${systemd_system_unitdir}/ - install -m 0644 ${WORKDIR}/bluealsa-gst-helper@.service ${D}${systemd_system_unitdir}/bluealsa-gst-helper@.service - - # enable the helper to start together with afm-user-session - mkdir -p ${D}${systemd_system_unitdir}/afm-user-session@.target.wants - ln -sf ../bluealsa-gst-helper@.service ${D}${systemd_system_unitdir}/afm-user-session@.target.wants/bluealsa-gst-helper@.service - fi -} - -PACKAGES =+ "${PN}-pipewire" - -FILES:${PN}-pipewire = "\ - ${bindir}/bluealsa-gst-helper \ - ${systemd_system_unitdir}/bluealsa-gst-helper@.service \ - ${systemd_system_unitdir}/afm-user-session@.target.wants/bluealsa-gst-helper@.service \ - " -RDEPENDS:${PN}-pipewire += "\ - bluez-alsa \ - pipewire \ - gstreamer1.0-plugins-base \ - gstreamer1.0-pipewire \ - " diff --git a/recipes-connectivity/bluez-alsa/files/bluez-alsa.service b/recipes-connectivity/bluez-alsa/files/bluez-alsa.service deleted file mode 100644 index b59302ee4..000000000 --- a/recipes-connectivity/bluez-alsa/files/bluez-alsa.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Bluetooth Audio ALSA Backend -After=bluetooth.service -Requires=bluetooth.service - -[Service] -Type=simple -ExecStart=/usr/bin/bluealsa -p a2dp-sink -p hfp-ofono - -[Install] -WantedBy=multi-user.target diff --git a/recipes-demo/alexa-viewer/alexa-viewer_git.bb b/recipes-demo/alexa-viewer/alexa-viewer_git.bb deleted file mode 100644 index d8af6888c..000000000 --- a/recipes-demo/alexa-viewer/alexa-viewer_git.bb +++ /dev/null @@ -1,38 +0,0 @@ -SUMMARY = "Demo voice capabilities template viewer for Alexa voiceagent" -DESCRIPTION = "Demo voice capabilities template viewer for Alexa voiceagent" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/alexa-viewer" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = " \ - qtquickcontrols2 \ - qlibhomescreen \ - af-binder \ - libqtappfw \ - wayland-native \ - wayland \ - qtwayland \ - qtwayland-native \ - agl-compositor \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/alexa-viewer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit cmake_qt5 aglwgt - -OECMAKE_CXX_FLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" - -RDEPENDS:${PN} = " \ - libqtappfw \ - libafbwsc \ - qlibhomescreen \ - agl-service-homescreen \ - agl-service-voice-high-capabilities \ -" diff --git a/recipes-demo/camera-gstreamer/camera-gstreamer_git.bb b/recipes-demo/camera-gstreamer/camera-gstreamer_git.bb deleted file mode 100644 index 4fe09e913..000000000 --- a/recipes-demo/camera-gstreamer/camera-gstreamer_git.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "Camera gstreamer demo application" -DESCRIPTION = "AGL demonstration of displaying incoming camera feed" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/camera-gstreamer" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = " \ - wayland wayland-native \ - gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/camera-gstreamer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit cmake pkgconfig aglwgt - -RDEPENDS:${PN} += " \ - gstreamer1.0-plugins-base \ - gstreamer1.0-plugins-good \ - gstreamer1.0-plugins-bad \ -" diff --git a/recipes-demo/cluster-dashboard/cluster-dashboard_git.bb b/recipes-demo/cluster-dashboard/cluster-dashboard_git.bb deleted file mode 100644 index 480d1f22d..000000000 --- a/recipes-demo/cluster-dashboard/cluster-dashboard_git.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Instrument Cluster Dashboard application" -DESCRIPTION = "AGL demonstration instrument cluster dashboard application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-cluster-demo-dashboard" -SECTION = "apps" - -LICENSE = "Apache-2.0 & BSD" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ - file://app/cluster-gauges.qml;beginline=9;endline=48;md5=54187d50b29429abee6095fe8b7c1a78" - -DEPENDS = " \ - qtquickcontrols2 libqtappfw glib-2.0 \ - wayland-native wayland qtwayland qtwayland-native \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-cluster-demo-dashboard;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit pkgconfig cmake_qt5 aglwgt - -RDEPENDS:${PN} += " \ - qtquickcontrols \ - qtquickcontrols-qmlplugins \ - qtquickcontrols2 \ - qtquickcontrols2-qmlplugins \ - libqtappfw \ - agl-service-signal-composer \ -" diff --git a/recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb b/recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb deleted file mode 100644 index 8b5b62093..000000000 --- a/recipes-demo/cluster-gauges-qtcompositor/cluster-gauges-qtcompositor_git.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Minimal cluster demo gauges that can be used standalone" -DESCRIPTION = "AGL HMI Application for demonstrating instrument cluster gauges as a wayland compositor" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-cluster-demo-gauges" -SECTION = "apps" - -LICENSE = "Apache-2.0 & BSD" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ - file://app/cluster-gauges.qml;beginline=10;endline=49;md5=54187d50b29429abee6095fe8b7c1a78" - -DEPENDS = "qtquickcontrols2 qtwebsockets" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-cluster-demo-gauges;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit pkgconfig cmake_qt5 aglwgt - -RDEPENDS:${PN} += " \ - qtquickcontrols \ - qtquickcontrols-qmlplugins \ - qtquickcontrols2 \ - qtquickcontrols2-qmlplugins \ - qtwebsockets \ - qtwebsockets-qmlplugins \ - kms-conf \ -" diff --git a/recipes-demo/cluster-receiver/cluster-receiver_git.bb b/recipes-demo/cluster-receiver/cluster-receiver_git.bb deleted file mode 100644 index 7028d5fc1..000000000 --- a/recipes-demo/cluster-receiver/cluster-receiver_git.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "Instrument Cluster Receiver application" -DESCRIPTION = "AGL demonstration instrument cluster remote display application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-cluster-demo-receiver" -SECTION = "apps" - -LICENSE = "Apache-2.0 & MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=374fee6a7817f1e1a5a7bfb7b7989553" - -DEPENDS = " \ - wayland wayland-native \ - gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad agl-compositor \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-cluster-demo-receiver;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit cmake pkgconfig aglwgt - -RDEPENDS:${PN} += " \ - gstreamer1.0-plugins-base \ - gstreamer1.0-plugins-good \ - gstreamer1.0-plugins-bad \ -" diff --git a/recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb b/recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb deleted file mode 100644 index 80f8edbb0..000000000 --- a/recipes-demo/cluster-receiver/qt-cluster-receiver_git.bb +++ /dev/null @@ -1,30 +0,0 @@ -SUMMARY = "Instrument Cluster Receiver AGL Demonstration" -DESCRIPTION = "AGL HMI Application for demonstrating instrument cluster remote display" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/admin/repos/apps/agl-qt-cluster-demo-receiver" -SECTION = "apps" - -LICENSE = "Apache-2.0 & MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ - file://app/surface.hpp;beginline=5;endline=21;md5=5351c531a191f0e3463aafcd0a6a00a3" - -DEPENDS = " \ - wayland wayland-native \ - qtwayland qtwayland-native \ - qtquickcontrols2 qtwebsockets qtbase qtdeclarative \ - gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-qt-cluster-demo-receiver;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit cmake_qt5 pkgconfig aglwgt - -RDEPENDS:${PN} += " \ - gstreamer1.0-plugins-base \ - gstreamer1.0-plugins-good \ - gstreamer1.0-plugins-bad \ -" diff --git a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json b/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json deleted file mode 100644 index 90180dcaf..000000000 --- a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/areas.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "areas": [ - { - "name": "fullscreen", - "rect": { - "x": 0, - "y": 0, - "w": 1920, - "h": 1080 - } - }, - { - "name": "normal.full", - "rect": { - "x": 640, - "y": 180, - "w": 640, - "h": 720 - } - }, - { - "name": "restriction.normal", - "rect": { - "x": 640, - "y": 180, - "w": 640, - "h": 720 - } - }, - { - "name": "on_screen", - "rect": { - "x": 640, - "y": 180, - "w": 640, - "h": 720 - } - } - ] -} diff --git a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json b/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json deleted file mode 100644 index 5c6a5b35d..000000000 --- a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/layers.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "description": "Layer mapping", - "mappings": [ - { - "name": "BackGroundLayer", - "role" : "receiver", - "id_range_begin": 0, - "id_range_end": 0, - "comment": "Work Around: This is a special fallback layer that not stopping wayland event loop." - }, - { - "name": "FarHomeScreen", - "role": "homescreen", - "id_range_begin": 100, - "id_range_end": 199, - "comment": "FarHomeScreen is the part of HomeScreen. The z order of this layer is lower than NearHomeScreen" - }, - { - "name": "Apps", - "role": "receiver|fallback", - "id_range_begin": 1000, - "id_range_end": 2999, - "comment": "Application layer" - }, - { - "name": "Popup", - "role": "popup*", - "id_range_begin": 4000, - "id_range_end": 4999, - "comment": "This layer is for popup application layer" - }, - { - "name": "Restriction", - "role": "restriction", - "id_range_begin": 5000, - "id_range_end": 5999, - "comment": "This layer is for restriction notification on driving. This is used by restriction role" - }, - { - "name": "OnScreen", - "role": "^on_screen.*", - "id_range_begin": 6000, - "id_range_end": 6999, - "comment": "System notification layer. For example, on_screen_low_battery_alert to notify user" - } - ] -} diff --git a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db b/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db deleted file mode 100644 index 13702144a..000000000 --- a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf/roles.db +++ /dev/null @@ -1,34 +0,0 @@ -{ - "roles":[ - { - "category": "homescreen", - "role": "homescreen", - "area": "fullscreen", - "layer": "homescreen", - }, - { - "category": "debug", - "role": "receiver | fallback", - "area": "normal.full", - "layer": "apps", - }, - { - "category": "restriction", - "role": "restriction", - "area": "restriction.normal", - "layer": "restriction", - }, - { - "category": "pop_up", - "role": "on_screen | on_screen_phone", - "area": "on_screen", - "layer": "on_screen", - }, - { - "category": "system_alert", - "role": "system_alert", - "area": "on_screen", - "layer": "on_screen", - } - ] -} diff --git a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb b/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb deleted file mode 100644 index f8cf9b928..000000000 --- a/recipes-demo/cluster-windowmanager-conf/cluster-windowmanager-conf_1.0.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "Cluster demo windowmanager configuration" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" - -SRC_URI = "file://layers.json \ - file://areas.json \ - file://roles.db \ -" - -do_compile[noexec] = "1" - -do_install() { - install -d ${D}${sysconfdir}/xdg/windowmanager - install -m 0644 ${WORKDIR}/layers.json ${D}${sysconfdir}/xdg/windowmanager/layers.json - install -m 0644 ${WORKDIR}/areas.json ${D}${sysconfdir}/xdg/windowmanager/areas.json - install -m 0644 ${WORKDIR}/roles.db ${D}${sysconfdir}/xdg/windowmanager/roles.db -} - -#FILES:${PN} += "${sysconfdir}/*" diff --git a/recipes-demo/dashboard/dashboard_git.bb b/recipes-demo/dashboard/dashboard_git.bb deleted file mode 100644 index 22f5b73ec..000000000 --- a/recipes-demo/dashboard/dashboard_git.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "Dashboard application" -DESCRIPTION = "AGL demonstration Dashboard application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/dashboard" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "qtquickcontrols2 qttools-native libqtappfw" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/dashboard;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -RDEPENDS:${PN} += " \ - libqtappfw \ - agl-service-signal-composer \ -" diff --git a/recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb b/recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb deleted file mode 100644 index d33356999..000000000 --- a/recipes-demo/homescreen-demo-ci/homescreen-demo-ci_git.bb +++ /dev/null @@ -1,37 +0,0 @@ -SUMMARY = "homescreen-demo-ci AGL client shell for testing in CI" -DESCRIPTION = "homescreen-demo-ci AGL client shell for testing in CI" -HOMEPAGE = "http://docs.automotivelinux.org" -LICENSE = "MIT" -SECTION = "apps" -LIC_FILES_CHKSUM = "file://COPYING;md5=374fee6a7817f1e1a5a7bfb7b7989553" - -DEPENDS = "\ - qtbase \ - qtdeclarative \ - qtquickcontrols2 \ - agl-service-homescreen \ - agl-service-weather \ - libqtappfw \ - libhomescreen \ - libafb-helpers-qt \ - wayland-native \ - wayland \ - qtwayland \ - qtwayland-native \ -" - -inherit qmake5 systemd pkgconfig aglwgt - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/homescreen-demo-ci;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" - -OE_QMAKE_CXXFLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" - -RDEPENDS:${PN} += " \ - libqtappfw \ -" diff --git a/recipes-demo/homescreen/homescreen_git.bb b/recipes-demo/homescreen/homescreen_git.bb index bf8034b91..b53519e9a 100644 --- a/recipes-demo/homescreen/homescreen_git.bb +++ b/recipes-demo/homescreen/homescreen_git.bb @@ -4,40 +4,38 @@ HOMEPAGE = "http://docs.automotivelinux.org" LICENSE = "Apache-2.0" SECTION = "apps" LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" +#LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" DEPENDS = " \ qtbase \ qtdeclarative \ qtquickcontrols2 \ - libqtappfw \ - libhomescreen \ - libafb-helpers-qt \ wayland-native \ wayland \ qtwayland \ qtwayland-native \ agl-compositor \ + json-c \ + qtwebsockets \ " PV = "1.0+git${SRCPV}" -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/homescreen;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/homescreen;protocol=https;nobranch=1" +SRCREV = "09b5eb1b42910e84612a37a0fb44629c73eee3e7" S = "${WORKDIR}/git" -inherit qmake5 systemd pkgconfig aglwgt +inherit qmake5 systemd pkgconfig PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" OE_QMAKE_CXXFLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" -RDEPENDS:${PN} += " \ - libqtappfw \ - agl-service-audiomixer \ - agl-service-bluetooth \ - agl-service-homescreen \ - agl-service-network \ - agl-service-weather \ - agl-service-voice-high \ -" + +do_install:append() { + + install -d ${D}/${bindir} + install -m 0644 ${B}/homescreen/HomeScreen ${D}/${bindir}/homescreen + +} \ No newline at end of file diff --git a/recipes-demo/html5-background/html5-background_git.bb b/recipes-demo/html5-background/html5-background_git.bb deleted file mode 100644 index 4be560709..000000000 --- a/recipes-demo/html5-background/html5-background_git.bb +++ /dev/null @@ -1,13 +0,0 @@ -SUMMARY = "AGL HTML5 Background Application" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://github.com/AGL-web-applications/background.git;protocol=https;branch=master" -SRCREV = "3b8dae349d428c0230b9885f86d421d43cda5638" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/html5-dashboard/html5-dashboard_git.bb b/recipes-demo/html5-dashboard/html5-dashboard_git.bb deleted file mode 100644 index 7f375670b..000000000 --- a/recipes-demo/html5-dashboard/html5-dashboard_git.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "AGL HTML5 dashboard Application" -HOMEPAGE = "https://git.automotivelinux.org/apps/html5-dashboard/" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-dashboard;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/html5-homescreen/html5-homescreen_git.bb b/recipes-demo/html5-homescreen/html5-homescreen_git.bb deleted file mode 100644 index f927cb70b..000000000 --- a/recipes-demo/html5-homescreen/html5-homescreen_git.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "AGL HTML5 Homescreen Application" -HOMEPAGE = "https://git.automotivelinux.org/apps/html5-homescreen/" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-homescreen;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/html5-hvac/html5-hvac_git.bb b/recipes-demo/html5-hvac/html5-hvac_git.bb deleted file mode 100644 index 91654b42b..000000000 --- a/recipes-demo/html5-hvac/html5-hvac_git.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "AGL HTML5 HVAC Application" -HOMEPAGE = "https://git.automotivelinux.org/apps/html5-hvac/" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-hvac;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/html5-launcher/html5-launcher_git.bb b/recipes-demo/html5-launcher/html5-launcher_git.bb deleted file mode 100644 index ab99cf5f0..000000000 --- a/recipes-demo/html5-launcher/html5-launcher_git.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "AGL HTML5 Launcher Application" -HOMEPAGE = "https://git.automotivelinux.org/apps/html5-launcher/" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-launcher;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb b/recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb deleted file mode 100644 index ddb2ee29f..000000000 --- a/recipes-demo/html5-mediaplayer/html5-mediaplayer_git.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "AGL HTML5 Mediaplayer Application" -HOMEPAGE = "https://git.automotivelinux.org/apps/html5-mediaplayer/" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-mediaplayer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/html5-mixer/html5-mixer_git.bb b/recipes-demo/html5-mixer/html5-mixer_git.bb deleted file mode 100644 index e643c59c7..000000000 --- a/recipes-demo/html5-mixer/html5-mixer_git.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "AGL HTML5 Mixer Application" -HOMEPAGE = "https://git.automotivelinux.org/apps/html5-mixer/" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-mixer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/html5-settings/html5-settings_git.bb b/recipes-demo/html5-settings/html5-settings_git.bb deleted file mode 100644 index 010c69105..000000000 --- a/recipes-demo/html5-settings/html5-settings_git.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "AGL HTML5 Settings Application" -HOMEPAGE = "https://git.automotivelinux.org/apps/html5-settings/" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/html5-settings;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -DEPENDS = "nodejs-native" - -inherit aglwgt diff --git a/recipes-demo/hvac/hvac_git.bb b/recipes-demo/hvac/hvac_git.bb deleted file mode 100644 index c7da0ef49..000000000 --- a/recipes-demo/hvac/hvac_git.bb +++ /dev/null @@ -1,25 +0,0 @@ -SUMMARY = "HVAC application" -DESCRIPTION = "AGL demonstration HVAC application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/hvac" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = " \ - qtquickcontrols2 \ - libhomescreen \ - qttools-native \ - libqtappfw \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/hvac;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -RDEPENDS:${PN} = "agl-service-hvac libqtappfw" diff --git a/recipes-demo/inputeventmanager/inputeventmanager_git.bb b/recipes-demo/inputeventmanager/inputeventmanager_git.bb deleted file mode 100644 index 8718f1844..000000000 --- a/recipes-demo/inputeventmanager/inputeventmanager_git.bb +++ /dev/null @@ -1,30 +0,0 @@ -SUMMARY = "AGL InputEventManager Application" -DESCRIPTION = "InputEventManager" -HOMEPAGE = "http://docs.automotivelinux.org" -LICENSE = "Apache-2.0" -SECTION = "apps" -S = "${WORKDIR}/git" - -inherit qmake5 systemd -DEPENDS = " qtbase " - -LIC_FILES_CHKSUM = "file://inputeventmanager/LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/inputeventmanager.git;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "b2f1646ac78cf61acd66c643b7638bd1b007d5a0" -# PV needs to be modified with SRCPV to work AUTOREV correctly -PV = "0.0+git${SRCPV}" - -PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" - -do_install() { - install -d ${D}/usr/AGL/${PN} - install -m 0755 ${B}/inputeventmanager/InputEventManager ${D}/usr/AGL/${PN}/ - - install -d ${D}${systemd_user_unitdir} - install -m 0644 ${S}/inputeventmanager/conf/InputEventManager.service ${D}${systemd_user_unitdir} -} - -FILES:${PN} += "/usr/AGL/${PN}/ ${systemd_user_unitdir}" -FILES:${PN}-dbg += "/usr/AGL/${PN}/.debug" - diff --git a/recipes-demo/launcher/launcher_git.bb b/recipes-demo/launcher/launcher_git.bb deleted file mode 100644 index d2de209a1..000000000 --- a/recipes-demo/launcher/launcher_git.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "AGL Launcher Application" -DESCRIPTION = "AGL Launcher Application build with recipe method" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/launcher" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" - -DEPENDS = "\ - qtbase \ - qtdeclarative \ - qtquickcontrols2 \ - qtwebsockets \ - qlibhomescreen \ - wayland-native \ - wayland \ - qtwayland \ - qtwayland-native \ - agl-compositor \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/launcher;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 systemd pkgconfig aglwgt - -PATH:prepend = "${STAGING_DIR_NATIVE}${OE_QMAKE_PATH_QT_BINS}:" - -RDEPENDS:${PN} = "agl-service-homescreen" diff --git a/recipes-demo/mediaplayer/mediaplayer_git.bb b/recipes-demo/mediaplayer/mediaplayer_git.bb deleted file mode 100644 index f6538fdcf..000000000 --- a/recipes-demo/mediaplayer/mediaplayer_git.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "Media Player application" -DESCRIPTION = "AGL demonstration Media Player application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/mediaplayer" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "qtquickcontrols2 libqtappfw" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/mediaplayer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -RDEPENDS:${PN} += "agl-service-mediaplayer libqtappfw" diff --git a/recipes-demo/messaging/messaging_git.bb b/recipes-demo/messaging/messaging_git.bb deleted file mode 100644 index 586996c75..000000000 --- a/recipes-demo/messaging/messaging_git.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "Messaging application" -DESCRIPTION = "AGL demonstration Messaging application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/messaging" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "qtquickcontrols2 libqtappfw" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/messaging;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -RDEPENDS:${PN} += "agl-service-bluetooth-map libqtappfw" diff --git a/recipes-demo/mixer/mixer_git.bb b/recipes-demo/mixer/mixer_git.bb deleted file mode 100644 index c99c04420..000000000 --- a/recipes-demo/mixer/mixer_git.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Mixer application" -DESCRIPTION = "AGL demonstration Mixer application for control of PipeWire mixer elements" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/mixer" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = " \ - qtquickcontrols2 \ - qtwebsockets \ - libafb-helpers-qt \ -" - -PROVIDES += "virtual/mixer" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/mixer;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit cmake_qt5 aglwgt - -OECMAKE_CXX_FLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '' , '-DQT_NO_DEBUG_OUTPUT', d)}" - -RDEPENDS:${PN} = "agl-service-audiomixer" -RPROVIDES:${PN} += "virtual/mixer" diff --git a/recipes-demo/navigation/ondemandnavi-config/naviconfig.ini b/recipes-demo/navigation/ondemandnavi-config/naviconfig.ini deleted file mode 100644 index f99c4483d..000000000 --- a/recipes-demo/navigation/ondemandnavi-config/naviconfig.ini +++ /dev/null @@ -1,9 +0,0 @@ -{ - "mapAccessToken":"MAPBOX_ACCESS_TOKEN", - "speed":60, - "interval":100, - "latitude":36.1363, - "longitude":-115.151, - "mapStyleUrls":"styles/v1/mapbox/streets-v11", - "enableOSM":true -} diff --git a/recipes-demo/navigation/ondemandnavi-config_1.0.bb b/recipes-demo/navigation/ondemandnavi-config_1.0.bb deleted file mode 100644 index 212971f26..000000000 --- a/recipes-demo/navigation/ondemandnavi-config_1.0.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "AGL Reference On Demand Navigation application config." -DESCRIPTION = "Config file for on-demand navigation app." -HOMEPAGE = "https://github.com/YoshitoMomiyama/aglqtnavigation.git" -SECTION = "apps" -LICENSE = "Proprietary" - -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28" - -SRC_URI = "file://naviconfig.ini \ - " - -inherit allarch - -MAPBOX_ACCESS_TOKEN ?= "Please set mapbox access token" - -do_compile[noexec] = "1" - -do_install () { - install -D -m 644 ${WORKDIR}/naviconfig.ini ${D}${sysconfdir}/naviconfig.ini - sed -i -e 's/MAPBOX_ACCESS_TOKEN/${MAPBOX_ACCESS_TOKEN}/' ${D}${sysconfdir}/naviconfig.ini -} diff --git a/recipes-demo/navigation/ondemandnavi_git.bb b/recipes-demo/navigation/ondemandnavi_git.bb deleted file mode 100644 index 5264ba633..000000000 --- a/recipes-demo/navigation/ondemandnavi_git.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Navigation application." -DESCRIPTION = "AGL demonstration Navigation application based on QtLocation widget." -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/ondemandnavi" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "qtquickcontrols2 qtlocation libqtappfw" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/ondemandnavi;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt pkgconfig - -RDEPENDS:${PN} += " \ - qtlocation \ - flite \ - libqtappfw \ - openjtalk \ - gstreamer1.0 \ - ondemandnavi-config \ - agl-service-navigation \ -" - -RPROVIDES:${PN} = "virtual/navigation" - diff --git a/recipes-demo/navigation/poiapp-api-key_1.0.bb b/recipes-demo/navigation/poiapp-api-key_1.0.bb deleted file mode 100644 index d353d7dd5..000000000 --- a/recipes-demo/navigation/poiapp-api-key_1.0.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "AGL Reference POI application API key." -DESCRIPTION = "Preload the API key for the AGL POI application." -HOMEPAGE = "https://github.com/AGLExport/genivi-navi-yelp-client" -SECTION = "apps" -LICENSE = "Proprietary" -LIC_FILES_CHKSUM="file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28" - -inherit allarch - -do_fetch[noexec] = "1" -do_unpack[noexec] = "1" -do_compile[noexec] = "1" - -POIAPP_CLIENT_ID ?= "" -POIAPP_API_KEY ?= "" - -do_install () { - install -d ${D}${sysconfdir} - echo "${POIAPP_CLIENT_ID}" > ${D}${sysconfdir}/poikey - echo "${POIAPP_API_KEY}" >> ${D}${sysconfdir}/poikey -} diff --git a/recipes-demo/navigation/poiapp/0001-add-display-permission.patch b/recipes-demo/navigation/poiapp/0001-add-display-permission.patch deleted file mode 100644 index 25a8fc313..000000000 --- a/recipes-demo/navigation/poiapp/0001-add-display-permission.patch +++ /dev/null @@ -1,21 +0,0 @@ -Add display permission - -Add display permission required to work with the running as non-root -change for applications. - -Upstream-Status: pending - -Signed-off-by: Scott Murray - -diff --git a/config.xml.in b/config.xml.in -index b8cfccd..bec206d 100755 ---- a/config.xml.in -+++ b/config.xml.in -@@ -13,6 +13,7 @@ - - - -+ - - GPL - diff --git a/recipes-demo/navigation/poiapp_git.bb b/recipes-demo/navigation/poiapp_git.bb deleted file mode 100644 index 08e174f74..000000000 --- a/recipes-demo/navigation/poiapp_git.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "AGL Reference POI application." -DESCRIPTION = "This application provides the function of destination search to AGL. It uses the API provided by AGL Reference Navigation. This application uses yelp WebAPI." -HOMEPAGE = "https://github.com/AGLExport/genivi-navi-yelp-client" -SECTION = "apps" - -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://LICENSE;md5=4ee23c52855c222cba72583d301d2338" - -DEPENDS = " \ - qtbase \ - json-c \ - libhomescreen \ - libqtappfw \ -" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/poi-yelp;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit cmake_qt5 pkgconfig aglwgt - -RDEPENDS:${PN} = "qtbase libqtappfw" diff --git a/recipes-demo/navigation/tbtnavi_git.bb b/recipes-demo/navigation/tbtnavi_git.bb deleted file mode 100644 index a4f22545f..000000000 --- a/recipes-demo/navigation/tbtnavi_git.bb +++ /dev/null @@ -1,38 +0,0 @@ -SUMMARY = "AGL Reference Navigation Cluster Streaming application" -DESCRIPTION = "Demo AGL turn by turn cluster navigation application based on QtLocation widget." -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/admin/repos/apps/tbtnavi" -SECTION = "apps" - -LICENSE = "Apache-2.0 & ISC & BSD-3-Clause & BSL-1.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984 \ - file://LICENSE.mapbox-cheap-ruler-cpp;md5=761263ee6bdc98e8697d9fbc897021ba \ - file://LICENSE.mapbox-geometry.hpp;md5=6e44f5d6aeec54f40fc84eebe3c6fc6c \ - file://LICENSE.mapbox-variant;md5=79558839a9db3e807e4ae6f8cd100c1c \ - file://include/mapbox/recursive_wrapper.hpp;beginline=4;endline=13;md5=cd3341aae76c0cf8345935abd20f0051 \ -" - -DEPENDS = " \ - qtbase \ - qtquickcontrols2 \ - qtlocation \ - libqtappfw \ - wayland-native \ - qtwayland-native \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/tbtnavi;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt pkgconfig - -RDEPENDS:${PN} += " \ - qtlocation \ - ondemandnavi-config \ - agl-service-navigation \ - agl-service-signal-composer \ - libqtappfw \ -" diff --git a/recipes-demo/onscreenapp/onscreenapp_git.bb b/recipes-demo/onscreenapp/onscreenapp_git.bb deleted file mode 100644 index 32a7a2db3..000000000 --- a/recipes-demo/onscreenapp/onscreenapp_git.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "onscreenapp for displaying popup windows" -DESCRIPTION = "AGL demonstration HMI Application for displaying popup windows" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/onscreenapp" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "qtquickcontrols2 libhomescreen qlibhomescreen" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/onscreenapp;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt diff --git a/recipes-demo/phone/phone_git.bb b/recipes-demo/phone/phone_git.bb deleted file mode 100644 index 71ef6ed7c..000000000 --- a/recipes-demo/phone/phone_git.bb +++ /dev/null @@ -1,24 +0,0 @@ -SUMMARY = "Phone application" -DESCRIPTION = "AGL demonstration Phone application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/phone" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "qtquickcontrols2 libqtappfw gstreamer1.0" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/phone;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -RDEPENDS:${PN} += " \ - agl-service-telephony \ - agl-service-bluetooth-pbap \ - libqtappfw \ -" diff --git a/recipes-demo/radio/files/presets-ALS.conf b/recipes-demo/radio/files/presets-ALS.conf deleted file mode 100644 index ff5592272..000000000 --- a/recipes-demo/radio/files/presets-ALS.conf +++ /dev/null @@ -1,12 +0,0 @@ -[fmPresets] -1\frequency=76100000 -1\title=Inter FM -2\frequency=77100000 -2\title=The Open University of Japan -3\frequency=80000000 -3\title=TOKYO FM -4\frequency=81300000 -4\title=J-WAVE -5\frequency=82500000 -5\title=NHK FM Tokyo -size=5 diff --git a/recipes-demo/radio/files/presets-CES.conf b/recipes-demo/radio/files/presets-CES.conf deleted file mode 100644 index 83caeffe1..000000000 --- a/recipes-demo/radio/files/presets-CES.conf +++ /dev/null @@ -1,14 +0,0 @@ -[fmPresets] -1\frequency=93100000 -1\title=93.1 The Mountain -2\frequency=94100000 -2\title=Mix 94.1 -3\frequency=96300000 -3\title=96.3 KKLZ -4\frequency=102700000 -4\title=102.7 THE COYOTE -5\frequency=88900000 -5\title=News 88.9 -6\frequency=91500000 -6\title=KUNV -size=6 diff --git a/recipes-demo/radio/files/presets-FOSDEM.conf b/recipes-demo/radio/files/presets-FOSDEM.conf deleted file mode 100644 index b88364f72..000000000 --- a/recipes-demo/radio/files/presets-FOSDEM.conf +++ /dev/null @@ -1,14 +0,0 @@ -[fmPresets] -1\frequency=92100000 -1\title=92.1 Radio Campus -2\frequency=92500000 -2\title=92.5 RTBF La Première -3\frequency=93200000 -3\title=93.2 RTBF Classic 21 -4\frequency=98800000 -4\title=98.8 FM Brussel -5\frequency=103700000 -5\title=103.7 NRJ -6\frequency=104000000 -6\title=104.0 Bel RTL -size=6 diff --git a/recipes-demo/radio/radio_git.bb b/recipes-demo/radio/radio_git.bb deleted file mode 100644 index c635f2c35..000000000 --- a/recipes-demo/radio/radio_git.bb +++ /dev/null @@ -1,36 +0,0 @@ -SUMMARY = "Radio application" -DESCRIPTION = "AGL demonstration Radio application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/radio" -SECTION = "apps" - -LICENSE = "Apache-2.0 & GPLv2+" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "qtquickcontrols2 libqtappfw rtl-sdr" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/radio;protocol=https;branch=${AGL_BRANCH} \ - file://presets-ALS.conf \ - file://presets-CES.conf \ - file://presets-FOSDEM.conf \ -" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -# ALS, CES, FOSDEM available -AGL_RADIO_PRESETS_LOCALE ?= "CES" -do_install:append() { - install -d ${D}${sysconfdir}/xdg/AGL - install -m 0644 ${WORKDIR}/presets-CES.conf ${D}${sysconfdir}/xdg/AGL/radio-presets-CES.conf - install -m 0644 ${WORKDIR}/presets-ALS.conf ${D}${sysconfdir}/xdg/AGL/radio-presets-ALS.conf - install -m 0644 ${WORKDIR}/presets-FOSDEM.conf ${D}${sysconfdir}/xdg/AGL/radio-presets-FOSDEM.conf - install -m 0644 ${WORKDIR}/presets-${AGL_RADIO_PRESETS_LOCALE}.conf ${D}${sysconfdir}/xdg/AGL/radio-presets.conf -} - -FILES:${PN} += "${sysconfdir}/xdg/AGL/*" - -RDEPENDS:${PN} += "agl-service-radio libqtappfw" diff --git a/recipes-demo/settings/settings_git.bb b/recipes-demo/settings/settings_git.bb deleted file mode 100644 index 60cbdf595..000000000 --- a/recipes-demo/settings/settings_git.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "Settings application" -DESCRIPTION = "AGL demonstration Settings application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/settings" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = " \ - libqtappfw \ - qtquickcontrols2 \ - qt-qrcode \ - qtvirtualkeyboard \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/settings;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -RDEPENDS:${PN} += " \ - qt-qrcode \ - agl-service-bluetooth \ - agl-service-network \ - agl-service-voice-high \ - libqtappfw \ -" diff --git a/recipes-demo/simple-can-simulator/files/simple_can_simulator.py b/recipes-demo/simple-can-simulator/files/simple_can_simulator.py deleted file mode 100755 index 83f88706e..000000000 --- a/recipes-demo/simple-can-simulator/files/simple_can_simulator.py +++ /dev/null @@ -1,381 +0,0 @@ -#!/usr/bin/env python3 -# Copyright (c) 2016 Alex Bencz -# Copyright (c) 2019 Konsulko Group, smurray@konsulko.com -# Copyright (c) 2020 The Linux Foundation, jsmoeller@linuxfoundation.org -# -# Permission is hereby granted, free of charge, to any person obtaining a copy of -# this software and associated documentation files (the "Software"), to deal in -# the Software without restriction, including without limitation the rights to -# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -# of the Software, and to permit persons to whom the Software is furnished to do -# so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. - -# -# CANSocket from: -# -# https://github.com/abencz/python_socketcan/blob/master/python_socketcan_example.py -# - -import sys -import socket -import argparse -import struct -import errno -import threading -import time - -class CANSocket(object): - FORMAT = "= self.vehicle_speed: - return - v = (self.vehicle_speed - target_speed) / (duration * self.freq) - r = (self.engine_speed - target_rpm) / (duration * self.freq) - while self.vehicle_speed > target_speed and (not self.CRUISEACTIVE or bycruise): - with self.lock: - self.vehicle_speed -= v; - self.engine_speed -= r; - time.sleep(1 / self.freq) - - def increase(self, bycruise = True): - if self.CRUISEACTIVE: - target_speed = self.vehicle_speed + 5 - target_rpm = self.engine_speed * 1.1 - self.accelerate(target_speed, target_rpm, 2, bycruise) - - def decrease(self, bycruise = True): - if self.CRUISEACTIVE: - target_speed = self.vehicle_speed - 5 - target_rpm = self.engine_speed * 0.9 - self.brake(target_speed, target_rpm, 2, bycruise) - - def resume(self, bycruise = True): - target_speed = self.CRUISESPEED - target_rpm = self.CRUISERPM - current_speed = self.get_vehicle_speed() - if target_speed > current_speed: - self.accelerate(target_speed, target_rpm, 2, bycruise) - else: - self.brake(target_speed, target_rpm, 2, bycruise) - - def run(self): - while True: - if not self.CRUISEACTIVE: - self.accelerate(80, 3000, 5) - self.accelerate(104, 4000, 3) - self.brake(80, 3000, 3) - self.accelerate(104, 4000, 6) - self.brake(40, 2000, 4) - self.accelerate(90, 3000, 5) - self.brake(1, 650, 5) - if not self.CRUISEACTIVE: - self.reset() - time.sleep(5) - -class DiagnosticMessageHandler(object): - def __init__(self, can_sock, simulator, verbose=False): - self.can_sock = can_sock - self.simulator = simulator - self.verbose = verbose - self.thread = threading.Thread(target=self.run, daemon=True) - - def start(self): - self.thread.start() - - def run(self): - while True: - can_id, data = self.can_sock.recv() - #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) - if can_id == 0x7df: - # OBD-II request - if data[1] == 0x01 and data[2] == 0x0C: - # Engine speed - speed = self.simulator.get_engine_speed() - #print('engine speed = %d' % speed) - if speed > 16383.75: - speed = 16383.75 - reply = [ 0x04, 0x41, 0x0C ] - reply.append(4 * speed // 256) - reply.append(4 * speed % 256) - # pad remaining bytes to make 8 - reply.append(0) - reply.append(0) - reply.append(0) - self.can_sock.send(0x7e8, bytes(reply), 0) - elif data[1] == 0x01 and data[2] == 0x0D: - # Vehicle speed - speed = int(self.simulator.get_vehicle_speed()) % 256 - #print('vehicle speed = %d' % speed) - reply = [ 0x03, 0x41, 0x0D ] - reply.append(speed) - # pad remaining bytes to make 8 - reply.append(0) - reply.append(0) - reply.append(0) - reply.append(0) - self.can_sock.send(0x7e8, bytes(reply), 0) - -class SteeringWheelMessageHandler(object): - def __init__(self, can_sock, simulator, verbose=False): - self.can_sock = can_sock - self.simulator = simulator - self.verbose = verbose - self.thread = threading.Thread(target=self.run, daemon=True) - self.buttonpressed = False - self.buttonenabled = False - self.buttoncancel = False - self.buttondec = False - self.buttoninc = False - self.cruisemode = False - self.cruiseactive = False - - def start(self): - self.thread.start() - - def run(self): - while True: - can_id, data = self.can_sock.recv() - #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) - if can_id == 0x21: - #print('%03X#%s' % (can_id, ''.join(format(x, '02X') for x in data))) - if data: - #if data[6]: - #print('data6: %02X' % (data[6])) - if data[6] == 0x80 and not self.buttonpressed: - # we do skip any further lin messages - # two buttons at the same time won't work - # (aka unlikely w/o twisting fingers) - self.buttonpressed = True - self.buttonenabled = True - if data[6] == 0x08 and not self.buttonpressed: - self.buttonpressed = True - self.buttoncancel = True - if data[6] == 0x10 and not self.buttonpressed: - self.buttonpressed = True - self.buttondec = True - if data[6] == 0x40 and not self.buttonpressed: - self.buttonpressed = True - self.buttoninc = True - if data[6] == 0x00 and self.buttonpressed: - #now handle it as the button was released - if self.buttonenabled: - self.buttonenabled = False - self.cruisemode = not self.cruisemode - #print("set cruisemode to %s" % self.cruisemode) - self.simulator.CRUISEMODE = self.cruisemode - # disable/reset all if going off - if not self.cruisemode: - self.cruiseactive = False - self.simulator.CRUISEACTIVE = self.cruiseactive - self.simulator.CRUISESPEED = 0 - self.simulator.CRUISERPM = 0 - #print("set cruiseactive to %s" % self.cruiseactive) - if self.buttoncancel: - self.buttoncancel = False - self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() - self.simulator.CRUISERPM = self.simulator.get_engine_speed() - #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) - #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) - self.cruiseactive = False - #print("set cruiseactive to %s" % self.cruiseactive ) - self.simulator.CRUISEACTIVE = self.cruiseactive - if self.buttondec: - self.buttondec = False - if self.cruiseactive: - #print("decrease") - self.simulator.decrease() - else: - # set speed - #print("set speed") - self.simulator.CRUISESPEED = self.simulator.get_vehicle_speed() - self.simulator.CRUISERPM = self.simulator.get_engine_speed() - #print("set cruisespeed to %d" % self.simulator.CRUISESPEED ) - #print("set cruiserpm to %d" % self.simulator.CRUISERPM ) - self.cruiseactive = not self.cruiseactive - #print("set cruiseactive to %s" % self.cruiseactive ) - self.simulator.CRUISEACTIVE = self.cruiseactive - if self.buttoninc: - self.buttoninc = False - if self.cruiseactive: - #print("increase") - self.simulator.increase() - else: - if self.simulator.CRUISESPEED > 0: - # resume - self.cruiseactive = not self.cruiseactive - self.simulator.CRUISEACTIVE = self.cruiseactive - #print("set cruiseactive to %s" % self.cruiseactive ) - #print("resume") - self.simulator.resume() - self.buttonpressed = False - - -class StatusMessageSender(object): - def __init__(self, can_sock, simulator, verbose=False): - self.can_sock = can_sock - self.simulator = simulator - self.verbose = verbose - self.thread = threading.Thread(target=self.run, daemon=True) - - def start(self): - self.thread.start() - - def run(self): - while True: - # Engine speed - speed = self.simulator.get_engine_speed() - if self.verbose: - print('engine speed = %d' % speed) - if speed > 16383.75: - speed = 16383.75 - # Message is 1 byte unknown, 1 byte fuel level, 2 bytes engine speed (4x), fuel low @ bit 55 - msg = [ 0, 0 ] - speed *= 4 - msg.append(speed // 256) - msg.append(speed % 256) - # pad remaining bytes to make 8 - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - self.can_sock.send(0x3d9, bytes(msg), 0) - - # Vehicle speed - speed = int(self.simulator.get_vehicle_speed()) % 256 - if self.verbose: - print('vehicle speed = %d' % speed) - # Message is 15 bits speed (64x), left aligned - msg = [ ] - # Note: extra 2x to yield required left-alignment - speed *= 128 - msg.append(speed // 256) - msg.append(speed % 256) - # pad remaining bytes to make 8 - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - msg.append(0) - self.can_sock.send(0x3e9, bytes(msg), 0) - - # Sleep 100 ms - time.sleep(0.1) - -def main(): - parser = argparse.ArgumentParser(description='Simple CAN vehicle simulator.') - parser.add_argument('interface', type=str, help='interface name (e.g. vcan0)') - parser.add_argument('-v', '--verbose', help='increase output verbosity', action='store_true') - args = parser.parse_args() - - try: - can_sock = CANSocket(args.interface) - diag_can_sock = CANSocket(args.interface) - steeringwheel_can_sock = CANSocket(args.interface) - except OSError as e: - sys.stderr.write('Could not listen on interface {0}\n'.format(args.interface)) - sys.exit(e.errno) - - print('Using {0}'.format(args.interface)) - sim = VehicleSimulator() - status_sender = StatusMessageSender(can_sock, sim, args.verbose) - diag_handler = DiagnosticMessageHandler(diag_can_sock, sim, args.verbose) - steeringwheel_handler = SteeringWheelMessageHandler(steeringwheel_can_sock, sim, args.verbose) - sim.start() - status_sender.start() - diag_handler.start() - steeringwheel_handler.start() - try: - while True: - time.sleep(60) - except (KeyboardInterrupt, SystemExit): - #sim.stop() - sys.exit(0) - -if __name__ == '__main__': - main() diff --git a/recipes-demo/simple-can-simulator/simple-can-simulator.bb b/recipes-demo/simple-can-simulator/simple-can-simulator.bb deleted file mode 100644 index 947e0c6a5..000000000 --- a/recipes-demo/simple-can-simulator/simple-can-simulator.bb +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "Simulator that generates CAN messages of a driving car" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${WORKDIR}/simple_can_simulator.py;beginline=2;endline=22;md5=9bb9c582301261d21460d2bc5bb8c225" - -SRC_URI = "file://simple_can_simulator.py" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - install -d ${D}${sbindir} - install -m 0755 ${WORKDIR}/simple_can_simulator.py ${D}${sbindir} -} - -RDEPENDS:${PN} = "python3" diff --git a/recipes-demo/taskmanager/taskmanager_git.bb b/recipes-demo/taskmanager/taskmanager_git.bb deleted file mode 100644 index 96b6d270f..000000000 --- a/recipes-demo/taskmanager/taskmanager_git.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "Task Manager application" -DESCRIPTION = "AGL demonstration task visualization and management application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/taskmanager" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = " \ - qtquickcontrols2 \ - qtwebsockets \ - qtcharts \ - libqtappfw \ - libhomescreen \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/taskmanager;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit qmake5 aglwgt - -RDEPENDS:${PN} += "agl-service-taskmanager libqtappfw" diff --git a/recipes-demo/telematics-recorder/telematics-recorder_git.bb b/recipes-demo/telematics-recorder/telematics-recorder_git.bb deleted file mode 100644 index 322acc5c3..000000000 --- a/recipes-demo/telematics-recorder/telematics-recorder_git.bb +++ /dev/null @@ -1,25 +0,0 @@ -SUMMARY = "Telematics Recorder application" -DESCRIPTION = "AGL demonstration telematics recorder application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/apps/agl-telematics-demo-recorder" -SECTION = "apps" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" - -DEPENDS = "glib-2.0 mosquitto" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-telematics-demo-recorder;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AUTOREV}" - -S = "${WORKDIR}/git" - -inherit cmake aglwgt - -RDEPENDS:${PN} += " \ - agl-service-can-low-level \ - agl-service-gps \ - agl-service-network \ - libmosquitto1 \ -" diff --git a/recipes-demo/waltham-receiver/waltham-receiver_git.bb b/recipes-demo/waltham-receiver/waltham-receiver_git.bb deleted file mode 100644 index 75ada4dd1..000000000 --- a/recipes-demo/waltham-receiver/waltham-receiver_git.bb +++ /dev/null @@ -1,28 +0,0 @@ -SUMMARY = "Waltham Receiver application" -DESCRIPTION = "AGL demonstration Waltham receiver interactive remote display application" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/waltham-receiver.git" -SECTION = "apps" - -LICENSE = "Apache-2.0 & MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=374fee6a7817f1e1a5a7bfb7b7989553" - -DEPENDS = " \ - waltham wayland wayland-native \ - gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad \ -" - -PV = "1.0+git${SRCPV}" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/waltham-receiver.git;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -S = "${WORKDIR}/git" - -inherit cmake pkgconfig aglwgt - -RDEPENDS:${PN} += " \ - gstreamer1.0-plugins-base \ - gstreamer1.0-plugins-good \ - gstreamer1.0-plugins-bad \ - waltham \ -" diff --git a/recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb b/recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb deleted file mode 100644 index 4c0bda071..000000000 --- a/recipes-devtools/low-level-can-generator/low-level-can-generator_git.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "Low level CAN generator" -DESCRIPTION = "Generator used to customize low level CAN service with customs signals" -SECTION = "devel" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -inherit cmake pkgconfig -BBCLASSEXTEND = "nativesdk" -DEPENDS = " cmake-apps-module" - -SRC_URI = "gitsm://gerrit.automotivelinux.org/gerrit/src/low-level-can-generator;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "0a3e354c3d81866e1a755367ab5592b3ced868bb" - -PV = "${AGLVERSION}" -S = "${WORKDIR}/git" - diff --git a/recipes-devtools/python/python3-asyncssh_2.3.0.bb b/recipes-devtools/python/python3-asyncssh_2.3.0.bb deleted file mode 100644 index f764b5545..000000000 --- a/recipes-devtools/python/python3-asyncssh_2.3.0.bb +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "\ -AsyncSSH is a Python package which provides an asynchronous client and \ -server implementation of the SSHv2 protocol on top of the Python \ -asyncio framework." -HOMEPAGE = "https://github.com/ronf/asyncssh" -LICENSE = "EPL-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=d9fc0efef5228704e7f5b37f27192723" - -SRC_URI[sha256sum] = "44bda34c7123f00c3df95d24e2dc8d43c4d17b456fbb8c434ef4f4a7ebb5265e" - -inherit pypi setuptools3 - -RDEPENDS:${PN} += "${PYTHON_PN}-asyncio ${PYTHON_PN}-cryptography" - -BBCLASSEXTEND = "native" diff --git a/recipes-devtools/python/python3-pytest-dependency_0.5.1.bb b/recipes-devtools/python/python3-pytest-dependency_0.5.1.bb deleted file mode 100644 index 5ff2d4ecf..000000000 --- a/recipes-devtools/python/python3-pytest-dependency_0.5.1.bb +++ /dev/null @@ -1,12 +0,0 @@ -DESCRIPTION = "pytest-dependency manages dependencies of tests." -HOMEPAGE = "https://github.com/RKrahl/pytest-dependency" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://README.rst;md5=35b9938ae48d25e6b8306232e98463dd" - -SRC_URI[sha256sum] = "c2a892906192663f85030a6ab91304e508e546cddfe557d692d61ec57a1d946b" - -inherit pypi setuptools3 - -DEPENDS += "${PYTHON_PN}-pytest-native" - -BBCLASSEXTEND = "native" diff --git a/recipes-devtools/python/python3-pytest-reverse_1.0.1.bb b/recipes-devtools/python/python3-pytest-reverse_1.0.1.bb deleted file mode 100644 index 5ed9b1d9d..000000000 --- a/recipes-devtools/python/python3-pytest-reverse_1.0.1.bb +++ /dev/null @@ -1,12 +0,0 @@ -DESCRIPTION = "pytest-reverse is a pytest plugin to reverse test order" -HOMEPAGE = "https://github.com/adamchainz/pytest-reverse" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE;md5=caf1f407ae86ecd57ab721dff94079b7" - -SRC_URI[sha256sum] = "40cbc47df8a262fed778e500f4d0b17d2d08ef8b9fbf899c0bab9488be192aac" - -inherit pypi setuptools3 - -DEPENDS += "${PYTHON_PN}-pytest-native" - -BBCLASSEXTEND = "native" diff --git a/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts b/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts deleted file mode 100755 index 1d1a5a059..000000000 --- a/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh -# -# Copyright 2017 IoT.bzh. - -# Author: Ronan Le Martret -# - -# The following script will run all the scriptlets found in #SYSCONFDIR#/agl-postinsts. - -agl_pi_dir="#SYSCONFDIR#/agl-postinsts" - -POSTINST_LOGGING=1 -LOGFILE=/var/log/agl-postinstall.log - -[ -e $LOGFILE ] && mv ${LOGFILE} ${LOGFILE}.old.$(date +%F--%H%M.%S) - -append_log=">>$LOGFILE 2>&1" - -exec_postinst_scriptlets() { - for i in `ls $agl_pi_dir`; do - i=$agl_pi_dir/$i - echo "Running postinst $i..." - [ "$POSTINST_LOGGING" = "1" ] && eval echo "Running postinst $i..." $append_log - if [ -x $i ]; then - eval sh -c $i $append_log - if [ $? -eq 0 ]; then - rm $i - else - echo "ERROR: postinst $i failed." - [ "$POSTINST_LOGGING" = "1" ] && eval echo "ERROR: postinst $i failed." $append_log - remove_agl_pi_dir=0 - fi - else - echo "ERROR: postinst $i do not exists or do not have execute permission." - [ "$POSTINST_LOGGING" = "1" ] && eval echo "ERROR: postinst $i do not exists or do not have execute permission." $append_log - remove_agl_pi_dir=0 - fi - done -} - -remove_agl_pi_dir=1 -exec_postinst_scriptlets -systemctl daemon-reload - -# since all postinstalls executed successfully, remove the postinstalls directory -if [ $remove_agl_pi_dir = 1 ]; then - rm -rf $agl_pi_dir -fi diff --git a/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service b/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service deleted file mode 100644 index 8f8667db6..000000000 --- a/recipes-devtools/run-agl-postinsts/run-agl-postinsts/run-agl-postinsts.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Run pending agl postinsts -DefaultDependencies=no -After=#SYSTEMD_SERVICE_AFTER# -Before=#SYSTEMD_SERVICE_BEFORE# -ConditionPathExists=#SYSCONFDIR#/agl-postinsts - -[Service] -Type=oneshot -StandardOutput=journal+console -ExecStart=#SBINDIR#/run-agl-postinsts -ExecStartPost=#BASE_BINDIR#/systemctl disable run-agl-postinsts.service -RemainAfterExit=No -TimeoutSec=0 - -[Install] -WantedBy=multi-user.target diff --git a/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb b/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb deleted file mode 100644 index e7b916360..000000000 --- a/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bb +++ /dev/null @@ -1,46 +0,0 @@ -SUMMARY = "Runs AGL postinstall scripts on first boot of the target device" -SECTION = "devel" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -SRC_URI = "file://run-agl-postinsts \ - file://run-agl-postinsts.service" - -S = "${WORKDIR}" - -inherit allarch systemd - -SYSTEMD_SERVICE:${PN} = "run-agl-postinsts.service" - -SYSTEMD_SERVICE_AFTER ?= "dbus.service cynagora.service" - -SYSTEMD_SERVICE_BEFORE ?= "systemd-user-sessions.service" - -do_configure() { - : -} - -do_compile () { - : -} - -do_install() { - install -d ${D}${sbindir} - install -m 0755 ${WORKDIR}/run-agl-postinsts ${D}${sbindir}/ - - install -d ${D}${systemd_unitdir}/system/ - install -m 0644 ${WORKDIR}/run-agl-postinsts.service ${D}${systemd_unitdir}/system/ - - sed -i -e 's:#SYSCONFDIR#:${sysconfdir}:g' \ - -e 's:#SBINDIR#:${sbindir}:g' \ - -e 's:#BASE_BINDIR#:${base_bindir}:g' \ - -e 's:#LOCALSTATEDIR#:${localstatedir}:g' \ - ${D}${sbindir}/run-agl-postinsts \ - ${D}${systemd_unitdir}/system/run-agl-postinsts.service - - sed -i -e 's:#SYSTEMD_SERVICE_AFTER#:${SYSTEMD_SERVICE_AFTER}:g' \ - -e 's:#SYSTEMD_SERVICE_BEFORE#:${SYSTEMD_SERVICE_BEFORE}:g' \ - ${D}${systemd_unitdir}/system/run-agl-postinsts.service -} - diff --git a/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend b/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend deleted file mode 100644 index 32e3d6b88..000000000 --- a/recipes-devtools/run-agl-postinsts/run-agl-postinsts_1.0.bbappend +++ /dev/null @@ -1 +0,0 @@ -SYSTEMD_SERVICE_AFTER:append = " afm-system-daemon.service" diff --git a/recipes-graphics/hmi-debug/files/hmi-debug b/recipes-graphics/hmi-debug/files/hmi-debug deleted file mode 100644 index fee9573b7..000000000 --- a/recipes-graphics/hmi-debug/files/hmi-debug +++ /dev/null @@ -1,8 +0,0 @@ -#You can select log level of HMI framework -#1 ERROR -#2 WARNING -#3 NOTICE -#4 INFO -#5 DEBUG -#If you want to output debug log about hmi-framework, please uncomment the following. -#USE_HMI_DEBUG=5 diff --git a/recipes-graphics/hmi-debug/hmi-debug_git.bb b/recipes-graphics/hmi-debug/hmi-debug_git.bb deleted file mode 100644 index 84dff74ae..000000000 --- a/recipes-graphics/hmi-debug/hmi-debug_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -DESCRIPTION = "Configurations for HMI framework" - -SECTION = "HMI" -LICENSE = "Apache-2.0" - -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -SRC_URI = " \ - file://hmi-debug \ -" - -FILES:${PN} = " \ - ${sysconfdir}/afm/unit.env.d \ -" - -do_install() { - install -d ${D}${sysconfdir}/afm/unit.env.d - install -m 644 ${WORKDIR}/hmi-debug ${D}${sysconfdir}/afm/unit.env.d -} diff --git a/recipes-graphics/libhomescreen/libhomescreen_git.bb b/recipes-graphics/libhomescreen/libhomescreen_git.bb deleted file mode 100644 index 483b11eb7..000000000 --- a/recipes-graphics/libhomescreen/libhomescreen_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "AGL Home Screen Library" -DESCRIPTION = "libhomescreen" -HOMEPAGE = "http://docs.automotivelinux.org" -LICENSE = "Apache-2.0" -SECTION = "libs" - -BBCLASSEXTEND = " nativesdk" - -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -DEPENDS = "af-binder json-c" - -inherit cmake - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/libhomescreen.git;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "0d65d54ba63508c0ef545d02e94d5702f9c8ecb3" -S = "${WORKDIR}/git" - -RDEPENDS:${PN} = "agl-service-homescreen" diff --git a/recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb b/recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb deleted file mode 100644 index a9f1ccf37..000000000 --- a/recipes-graphics/qlibhomescreen/qlibhomescreen_git.bb +++ /dev/null @@ -1,13 +0,0 @@ -SUMMARY = "A wrapper library of libhomescreen for Qt Application in AGL" -SECTION = "libs" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93" - -DEPENDS = "qtbase libhomescreen" -RDEPENDS:${PN} = "libhomescreen" - -inherit qmake5 - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/libqthomescreen.git;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "b218476402bceda7eb42d41064552a7261ff3205" -S = "${WORKDIR}/git" diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-graphics/wayland/weston-init.bbappend deleted file mode 100644 index 8af3184af..000000000 --- a/recipes-graphics/wayland/weston-init.bbappend +++ /dev/null @@ -1 +0,0 @@ -require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'weston-init_agldemo.inc', '', d)} diff --git a/recipes-graphics/wayland/weston-init/tmpfiles.conf.in b/recipes-graphics/wayland/weston-init/tmpfiles.conf.in deleted file mode 100644 index c4b302faf..000000000 --- a/recipes-graphics/wayland/weston-init/tmpfiles.conf.in +++ /dev/null @@ -1,6 +0,0 @@ -# This file is distributed to create weston XDG_RUNTIME_DIR (/run/deamon/@WESTONUSER@) -# -# See tmpfiles.d(5) for details - -d /run/platform/ 0775 root root - -d /run/platform/@WESTONUSER@ 0770 @WESTONUSER@ @WESTONGROUP@ - diff --git a/recipes-graphics/wayland/weston-init/weston-dep.conf.in b/recipes-graphics/wayland/weston-init/weston-dep.conf.in deleted file mode 100644 index 2b8102096..000000000 --- a/recipes-graphics/wayland/weston-init/weston-dep.conf.in +++ /dev/null @@ -1,3 +0,0 @@ -[Unit] -Requires=@WESTON_DRM_DEVICE@ -After=@WESTON_DRM_DEVICE@ diff --git a/recipes-graphics/wayland/weston-init/weston.conf.in b/recipes-graphics/wayland/weston-init/weston.conf.in deleted file mode 100644 index 9c3df052d..000000000 --- a/recipes-graphics/wayland/weston-init/weston.conf.in +++ /dev/null @@ -1,12 +0,0 @@ -[Service] -Type=notify -Environment="XDG_RUNTIME_DIR=@XDG_RUNTIME_DIR@" -# Note that clearing PAMName (thus not having PAMName=login) disables -# logind support for the session, which allows setting XDG_RUNTIME_DIR -# to something other than /run/user/% (as is done above). -# Without systemd-logind support, weston needs to be patched to allow -# its direct launcher to work for non-root users in this scenario. -PAMName= -ExecStart= -ExecStart=@WESTONSTART@ -SmackProcessLabel=System::Weston diff --git a/recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in b/recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in deleted file mode 100644 index 585db6be8..000000000 --- a/recipes-graphics/wayland/weston-init/zz-dri-imx.rules.in +++ /dev/null @@ -1,2 +0,0 @@ -SUBSYSTEM=="gpu_class", MODE="0660", GROUP="@WESTONGROUP@", SECLABEL{smack}="*" - diff --git a/recipes-graphics/wayland/weston-init/zz-dri.rules.in b/recipes-graphics/wayland/weston-init/zz-dri.rules.in deleted file mode 100644 index 51c68c303..000000000 --- a/recipes-graphics/wayland/weston-init/zz-dri.rules.in +++ /dev/null @@ -1 +0,0 @@ -SUBSYSTEM=="drm", MODE="0660", GROUP="@WESTONGROUP@", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston@@WESTONUSER@.service" diff --git a/recipes-graphics/wayland/weston-init/zz-input.rules.in b/recipes-graphics/wayland/weston-init/zz-input.rules.in deleted file mode 100644 index fb3e677f4..000000000 --- a/recipes-graphics/wayland/weston-init/zz-input.rules.in +++ /dev/null @@ -1 +0,0 @@ -SUBSYSTEM=="input", MODE="0660", GROUP="input", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston@@WESTONUSER@.service" diff --git a/recipes-graphics/wayland/weston-init/zz-tty.rules.in b/recipes-graphics/wayland/weston-init/zz-tty.rules.in deleted file mode 100644 index e5ce4b553..000000000 --- a/recipes-graphics/wayland/weston-init/zz-tty.rules.in +++ /dev/null @@ -1 +0,0 @@ -SUBSYSTEM=="tty", KERNEL=="tty7", OWNER="@WESTONUSER@", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston@@WESTONUSER@.service" diff --git a/recipes-graphics/wayland/weston-init/zz-video.rules.in b/recipes-graphics/wayland/weston-init/zz-video.rules.in deleted file mode 100644 index 1dfa3c18c..000000000 --- a/recipes-graphics/wayland/weston-init/zz-video.rules.in +++ /dev/null @@ -1 +0,0 @@ -SUBSYSTEM=="video4linux", MODE="0660", KERNEL=="video*", GROUP="display", SECLABEL{smack}="*", TAG+="systemd" diff --git a/recipes-graphics/wayland/weston-init_agldemo.inc b/recipes-graphics/wayland/weston-init_agldemo.inc deleted file mode 100644 index 4815079f2..000000000 --- a/recipes-graphics/wayland/weston-init_agldemo.inc +++ /dev/null @@ -1,81 +0,0 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/weston-init:" - -inherit agl-graphical - -AGL_DEFAULT_WESTONSTART ??= "/usr/bin/agl-compositor --config ${sysconfdir}/xdg/weston/weston.ini" -WESTON_USE_PIXMAN ??= "0" - -WESTONSTART ??= "${AGL_DEFAULT_WESTONSTART} ${WESTONARGS}" -WESTONSTART:append = " ${@bb.utils.contains("IMAGE_FEATURES", "debug-tweaks", " --log=${DISPLAY_XDG_RUNTIME_DIR}/compositor.log", "",d)}" -WESTONSTART:append = " ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", " --debug", "",d)}" -WESTONSTART:append = " ${@bb.utils.contains("WESTON_USE_PIXMAN", "1", " --use-pixman", "",d)}" - -# Systemd name of DRM device to have weston/agl-compositor startup depend -# upon, if required. Currently only x86-64 seems to need a dependency to -# avoid failures due to racing with i915 driver init on e.g. UpSquared. -# It seems safer for now to only apply it there rather than doing a blanket -# default everywhere that might then need to be over-ridden for vendor BSPs. -WESTON_DRM_DEVICE ?= "" - -WIFILES = " \ - file://weston.conf.in \ - file://weston-dep.conf.in \ - file://tmpfiles.conf.in \ - file://zz-dri.rules.in \ - file://zz-input.rules.in \ - file://zz-tty.rules.in \ - file://zz-video.rules.in \ -" - -WIFILES:append:imx = " \ - file://zz-dri-imx.rules.in \ -" - -SRC_URI:append = " ${WIFILES}" - -do_install:append() { - # Remove upstream weston udev rules just to be safe - rm -f ${D}${sysconfdir}/udev/rules.d/71-weston-drm.rules - - # Process ".in" files - files=$(echo ${WIFILES} | sed s,file://,,g) - for f in ${files}; do - g=${f%.in} - if [ "${f}" != "${g}" ]; then - sed -e "s,@WESTONUSER@,${WESTONUSER},g" \ - -e "s,@WESTONGROUP@,${WESTONGROUP},g" \ - -e "s,@XDG_RUNTIME_DIR@,${DISPLAY_XDG_RUNTIME_DIR},g" \ - -e "s,@WESTONSTART@,${WESTONSTART},g" \ - -e "s,@WESTON_DRM_DEVICE@,${WESTON_DRM_DEVICE},g" \ - ${WORKDIR}/${f} > ${WORKDIR}/${g} - fi - done - - # Install weston drop-in - install -d ${D}${systemd_system_unitdir}/weston@.service.d - install -m644 ${WORKDIR}/weston.conf ${D}/${systemd_system_unitdir}/weston@.service.d/weston-init.conf - - # Install weston DRM device dependency drop-in if required - if [ -n "${WESTON_DRM_DEVICE}" ]; then - install -m 0644 ${WORKDIR}/weston-dep.conf ${D}/${systemd_system_unitdir}/weston@.service.d/ - fi - - # Install tmpfiles drop-in - install -d ${D}${libdir}/tmpfiles.d - install -m644 ${WORKDIR}/tmpfiles.conf ${D}${libdir}/tmpfiles.d/weston-init.conf - - # Install udev rules - install -d ${D}${sysconfdir}/udev/rules.d - for f in ${files}; do - g=${f%.in} - h=${g%.rules} - if [ "${g}" != "${h}" ]; then - install -m644 ${WORKDIR}/${g} ${D}${sysconfdir}/udev/rules.d - fi - done -} - -FILES:${PN} += " \ - ${libdir}/tmpfiles.d/ \ - ${systemd_system_unitdir}/weston@.service.d/ \ -" diff --git a/recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch b/recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch deleted file mode 100644 index dd811c81b..000000000 --- a/recipes-kernel/most/files/0002-src-most-add-auto-conf-feature.patch +++ /dev/null @@ -1,472 +0,0 @@ -From 9cb7cb85f59509ac445116e9458c502cf6cb74e6 Mon Sep 17 00:00:00 2001 -From: Christian Gromm -Date: Thu, 9 Nov 2017 13:20:23 +0100 -Subject: [PATCH 2/2] src: most: add auto conf feature - -This patch adds the auto configuration feature to the driver -sources. It is needed to have the driver configured automatically -upon start up w/o the need for userspace to set up sysfs. - -Signed-off-by: Christian Gromm ---- - driver/Makefile | 3 + - driver/default_conf.c | 162 ++++++++++++++++++++++++++++++++++++++++++++++ - driver/include/mostcore.h | 64 ++++++++++++++++++ - driver/mostcore/core.c | 120 ++++++++++++++++++++++++++++------ - 4 files changed, 331 insertions(+), 18 deletions(-) - create mode 100644 driver/default_conf.c - -diff --git a/Makefile b/Makefile -index e77a4b6..6d74ebe 100644 ---- a/Makefile -+++ b/Makefile -@@ -6,6 +6,9 @@ obj-m := mostcore.o - mostcore-y := mostcore/core.o - CFLAGS_core.o := -I$(src)/include/ - -+obj-m += default_conf.o -+CFLAGL_default_conf.o := -I$(src)/include -+ - obj-m += aim_cdev.o - aim_cdev-y := aim-cdev/cdev.o - CFLAGS_cdev.o := -I$(src)/include/ -diff --git a/default_conf.c b/default_conf.c -new file mode 100644 -index 0000000..adb1786 ---- /dev/null -+++ b/default_conf.c -@@ -0,0 +1,162 @@ -+/* -+ * default_conf.c - Default configuration for the MOST channels. -+ * -+ * Copyright (C) 2017, Microchip Technology Germany II GmbH & Co. KG -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * This file is licensed under GPLv2. -+ */ -+ -+#include "include/mostcore.h" -+#include -+ -+static struct most_config_probe config_probes[] = { -+ -+ /* OS81118 Control */ -+ { -+ .ch_name = "ep8f", -+ .cfg = { -+ .direction = MOST_CH_RX, -+ .data_type = MOST_CH_CONTROL, -+ .num_buffers = 16, -+ .buffer_size = 64, -+ }, -+ .aim_name = "cdev", -+ .aim_param = "inic-usb-crx", -+ }, -+ { -+ .ch_name = "ep0f", -+ .cfg = { -+ .direction = MOST_CH_TX, -+ .data_type = MOST_CH_CONTROL, -+ .num_buffers = 16, -+ .buffer_size = 64, -+ }, -+ .aim_name = "cdev", -+ .aim_param = "inic-usb-ctx", -+ }, -+ /* OS81118 Async */ -+ { -+ .ch_name = "ep8e", -+ .cfg = { -+ .direction = MOST_CH_RX, -+ .data_type = MOST_CH_ASYNC, -+ .num_buffers = 20, -+ .buffer_size = 1522, -+ }, -+ .aim_name = "networking", -+ .aim_param = "inic-usb-arx", -+ }, -+ { -+ .ch_name = "ep0e", -+ .cfg = { -+ .direction = MOST_CH_TX, -+ .data_type = MOST_CH_ASYNC, -+ .num_buffers = 20, -+ .buffer_size = 1522, -+ }, -+ .aim_name = "networking", -+ .aim_param = "inic-usb-atx", -+ }, -+ /* OS81210 Control */ -+ { -+ .ch_name = "ep87", -+ .cfg = { -+ .direction = MOST_CH_RX, -+ .data_type = MOST_CH_CONTROL, -+ .num_buffers = 16, -+ .buffer_size = 64, -+ }, -+ .aim_name = "cdev", -+ .aim_param = "inic-usb-crx", -+ }, -+ { -+ .ch_name = "ep07", -+ .cfg = { -+ .direction = MOST_CH_TX, -+ .data_type = MOST_CH_CONTROL, -+ .num_buffers = 16, -+ .buffer_size = 64, -+ }, -+ .aim_name = "cdev", -+ .aim_param = "inic-usb-ctx", -+ }, -+ /* OS81210 Async */ -+ { -+ .ch_name = "ep86", -+ .cfg = { -+ .direction = MOST_CH_RX, -+ .data_type = MOST_CH_ASYNC, -+ .num_buffers = 20, -+ .buffer_size = 1522, -+ }, -+ .aim_name = "networking", -+ .aim_param = "inic-usb-arx", -+ }, -+ { -+ .ch_name = "ep06", -+ .cfg = { -+ .direction = MOST_CH_TX, -+ .data_type = MOST_CH_ASYNC, -+ .num_buffers = 20, -+ .buffer_size = 1522, -+ }, -+ .aim_name = "networking", -+ .aim_param = "inic-usb-atx", -+ }, -+ /* Streaming channels (common for all INICs) */ -+ { -+ .ch_name = "ep01", -+ .cfg = { -+ .direction = MOST_CH_TX, -+ .data_type = MOST_CH_SYNC, -+ .num_buffers = 8, -+ .buffer_size = 2 * 12 * 42, -+ .subbuffer_size = 12, -+ .packets_per_xact = 42, -+ }, -+ .aim_name = "sound", -+ .aim_param = "ep01-6ch.6x16", -+ }, -+ { -+ .ch_name = "ep02", -+ .cfg = { -+ .direction = MOST_CH_TX, -+ .data_type = MOST_CH_ISOC, -+ .num_buffers = 8, -+ .buffer_size = 40 * 188, -+ .subbuffer_size = 188, -+ .packets_per_xact = 2, -+ }, -+ .aim_name = "cdev", -+ .aim_param = "inic-usb-itx1", -+ }, -+ -+ /* sentinel */ -+ {} -+}; -+ -+static struct most_config_set config_set = { -+ .probes = config_probes -+}; -+ -+static int __init mod_init(void) -+{ -+ most_register_config_set(&config_set); -+ return 0; -+} -+ -+static void __exit mod_exit(void) -+{ -+ most_deregister_config_set(&config_set); -+} -+ -+module_init(mod_init); -+module_exit(mod_exit); -+MODULE_LICENSE("GPL"); -+MODULE_AUTHOR("Andrey Shvetsov "); -+MODULE_DESCRIPTION("Default configuration for the MOST channels"); -diff --git a/include/mostcore.h b/include/mostcore.h -index dc87121..3c00efb 100644 ---- a/include/mostcore.h -+++ b/include/mostcore.h -@@ -145,6 +145,39 @@ struct most_channel_config { - u16 dbr_size; - }; - -+/** -+ * struct most_config_probe - matching rule, channel configuration and -+ * the optional AIM name used for the automatic configuration and linking -+ * of the channel -+ * @dev_name: optional matching device id -+ * ("usb_device 1-1:1.0," "dim2-12345678", etc.) -+ * @ch_name: matching channel name ("ep8f", "ca2", etc.) -+ * @cfg: configuration that will be applied for the found channel -+ * @aim_name: optional name of the AIM that will be linked to the channel -+ * ("cdev", "networking", "v4l", "sound") -+ * @aim_param: AIM dependent parameter (it is the character device name -+ * for the cdev AIM, PCM format for the audio AIM, etc.) -+ */ -+struct most_config_probe { -+ const char *dev_name; -+ const char *ch_name; -+ struct most_channel_config cfg; -+ const char *aim_name; -+ const char *aim_param; -+}; -+ -+/** -+ * struct most_config_set - the configuration set containing -+ * several automatic configurations for the different channels -+ * @probes: list of the matching rules and the configurations, -+ * that must be ended with the empty structure -+ * @list: list head used by the MostCore -+ */ -+struct most_config_set { -+ const struct most_config_probe *probes; -+ struct list_head list; -+}; -+ - /* - * struct mbo - MOST Buffer Object. - * @context: context for core completion handler -@@ -285,6 +318,37 @@ struct most_aim { - }; - - /** -+ * most_register_config_set - registers the configuration set -+ * -+ * @cfg_set: configuration set to be registered for the future probes -+ * -+ * The function registers the given configuration set. -+ * -+ * It is possible to register or deregister several configuration sets -+ * independently. Different configuration sets may contain the -+ * overlapped matching rules but later registered configuration set has -+ * the higher priority over the prior registered set. -+ * -+ * The only the first matched configuration is applied for each -+ * channel. -+ * -+ * The configuration for the channel is applied at the time of -+ * registration of the parent most_interface. -+ */ -+void most_register_config_set(struct most_config_set *cfg_set); -+ -+/** -+ * most_deregister_config_set - deregisters the prior registered -+ * configuration set -+ * -+ * @cfg_set: configuration set to be deregistered -+ * -+ * The calling of this function does not change the current -+ * configuration of the channels. -+ */ -+void most_deregister_config_set(struct most_config_set *cfg_set); -+ -+/** - * most_register_interface - Registers instance of the interface. - * @iface: Pointer to the interface instance description. - * -diff --git a/mostcore/core.c b/mostcore/core.c -index 9e0a352..6035cf0 100644 ---- a/mostcore/core.c -+++ b/mostcore/core.c -@@ -36,6 +36,8 @@ static struct class *most_class; - static struct device *core_dev; - static struct ida mdev_id; - static int dummy_num_buffers; -+static struct list_head config_probes; -+struct mutex config_probes_mt; /* config_probes */ - - struct most_c_aim_obj { - struct most_aim *ptr; -@@ -918,6 +920,30 @@ most_c_obj *get_channel_by_name(char *mdev, char *mdev_ch) - return c; - } - -+static int link_channel_to_aim(struct most_c_obj *c, struct most_aim *aim, -+ char *aim_param) -+{ -+ int ret; -+ struct most_aim **aim_ptr; -+ -+ if (!c->aim0.ptr) -+ aim_ptr = &c->aim0.ptr; -+ else if (!c->aim1.ptr) -+ aim_ptr = &c->aim1.ptr; -+ else -+ return -ENOSPC; -+ -+ *aim_ptr = aim; -+ ret = aim->probe_channel(c->iface, c->channel_id, -+ &c->cfg, &c->kobj, aim_param); -+ if (ret) { -+ *aim_ptr = NULL; -+ return ret; -+ } -+ -+ return 0; -+} -+ - /** - * add_link_store - store() function for add_link attribute - * @aim_obj: pointer to AIM object -@@ -946,45 +972,33 @@ static ssize_t add_link_store(struct most_aim_obj *aim_obj, - size_t len) - { - struct most_c_obj *c; -- struct most_aim **aim_ptr; - char buffer[STRING_SIZE]; - char *mdev; - char *mdev_ch; -- char *mdev_devnod; -+ char *aim_param; - char devnod_buf[STRING_SIZE]; - int ret; - size_t max_len = min_t(size_t, len + 1, STRING_SIZE); - - strlcpy(buffer, buf, max_len); - -- ret = split_string(buffer, &mdev, &mdev_ch, &mdev_devnod); -+ ret = split_string(buffer, &mdev, &mdev_ch, &aim_param); - if (ret) - return ret; - -- if (!mdev_devnod || *mdev_devnod == 0) { -+ if (!aim_param || *aim_param == 0) { - snprintf(devnod_buf, sizeof(devnod_buf), "%s-%s", mdev, - mdev_ch); -- mdev_devnod = devnod_buf; -+ aim_param = devnod_buf; - } - - c = get_channel_by_name(mdev, mdev_ch); - if (IS_ERR(c)) - return -ENODEV; - -- if (!c->aim0.ptr) -- aim_ptr = &c->aim0.ptr; -- else if (!c->aim1.ptr) -- aim_ptr = &c->aim1.ptr; -- else -- return -ENOSPC; -- -- *aim_ptr = aim_obj->driver; -- ret = aim_obj->driver->probe_channel(c->iface, c->channel_id, -- &c->cfg, &c->kobj, mdev_devnod); -- if (ret) { -- *aim_ptr = NULL; -+ ret = link_channel_to_aim(c, aim_obj->driver, aim_param); -+ if (ret) - return ret; -- } - - return len; - } -@@ -1679,6 +1693,73 @@ int most_deregister_aim(struct most_aim *aim) - } - EXPORT_SYMBOL_GPL(most_deregister_aim); - -+void most_register_config_set(struct most_config_set *cfg_set) -+{ -+ mutex_lock(&config_probes_mt); -+ list_add(&cfg_set->list, &config_probes); -+ mutex_unlock(&config_probes_mt); -+} -+EXPORT_SYMBOL(most_register_config_set); -+ -+void most_deregister_config_set(struct most_config_set *cfg_set) -+{ -+ mutex_lock(&config_probes_mt); -+ list_del(&cfg_set->list); -+ mutex_unlock(&config_probes_mt); -+} -+EXPORT_SYMBOL(most_deregister_config_set); -+ -+static int probe_aim(struct most_c_obj *c, -+ const char *aim_name, const char *aim_param) -+{ -+ struct most_aim_obj *aim_obj; -+ char buf[STRING_SIZE]; -+ -+ list_for_each_entry(aim_obj, &aim_list, list) { -+ if (!strcmp(aim_obj->driver->name, aim_name)) { -+ strlcpy(buf, aim_param ? aim_param : "", sizeof(buf)); -+ return link_channel_to_aim(c, aim_obj->driver, buf); -+ } -+ } -+ return 0; -+} -+ -+static bool probe_config_set(struct most_c_obj *c, -+ const char *dev_name, const char *ch_name, -+ const struct most_config_probe *p) -+{ -+ int err; -+ -+ for (; p->ch_name; p++) { -+ if ((p->dev_name && strcmp(dev_name, p->dev_name)) || -+ strcmp(ch_name, p->ch_name)) -+ continue; -+ -+ c->cfg = p->cfg; -+ if (p->aim_name) { -+ err = probe_aim(c, p->aim_name, p->aim_param); -+ if (err) -+ pr_err("failed to autolink %s to %s: %d\n", -+ ch_name, p->aim_name, err); -+ } -+ return true; -+ } -+ return false; -+} -+ -+static void find_configuration(struct most_c_obj *c, const char *dev_name, -+ const char *ch_name) -+{ -+ struct most_config_set *plist; -+ -+ mutex_lock(&config_probes_mt); -+ list_for_each_entry(plist, &config_probes, list) { -+ if (probe_config_set(c, dev_name, ch_name, plist->probes)) -+ break; -+ } -+ mutex_unlock(&config_probes_mt); -+} -+ - /** - * most_register_interface - registers an interface with core - * @iface: pointer to the instance of the interface description. -@@ -1777,6 +1858,7 @@ struct kobject *most_register_interface(struct most_interface *iface) - mutex_init(&c->start_mutex); - mutex_init(&c->nq_mutex); - list_add_tail(&c->list, &inst->channel_list); -+ find_configuration(c, iface->description, channel_name); - } - pr_info("registered new MOST device mdev%d (%s)\n", - inst->dev_id, iface->description); -@@ -1880,6 +1962,8 @@ static int __init most_init(void) - pr_info("init()\n"); - INIT_LIST_HEAD(&instance_list); - INIT_LIST_HEAD(&aim_list); -+ INIT_LIST_HEAD(&config_probes); -+ mutex_init(&config_probes_mt); - ida_init(&mdev_id); - - err = bus_register(&most_bus); --- -2.7.4 - diff --git a/recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch b/recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch deleted file mode 100644 index 4703844a1..000000000 --- a/recipes-kernel/most/files/0003-core-remove-kernel-log-for-MBO-status.patch +++ /dev/null @@ -1,26 +0,0 @@ -From b269994be937cbb31c0d73ecc899ca8a545a6a4a Mon Sep 17 00:00:00 2001 -From: Christian Gromm -Date: Mon, 4 Sep 2017 11:09:17 +0200 -Subject: [PATCH 3/5] core: remove kernel log for MBO status - -Signed-off-by: Christian Gromm ---- - driver/mostcore/core.c | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/mostcore/core.c b/mostcore/core.c -index 931efb9..595becc 100644 ---- a/mostcore/core.c -+++ b/mostcore/core.c -@@ -1348,8 +1348,6 @@ static void most_write_completion(struct mbo *mbo) - BUG_ON((!mbo) || (!mbo->context)); - - c = mbo->context; -- if (mbo->status == MBO_E_INVAL) -- pr_info("WARN: Tx MBO status: invalid\n"); - if (unlikely(c->is_poisoned || (mbo->status == MBO_E_CLOSE))) - trash_mbo(mbo); - else --- -2.7.4 - diff --git a/recipes-kernel/most/files/0004-most-video-set-device_caps.patch b/recipes-kernel/most/files/0004-most-video-set-device_caps.patch deleted file mode 100644 index 010d4b0d0..000000000 --- a/recipes-kernel/most/files/0004-most-video-set-device_caps.patch +++ /dev/null @@ -1,25 +0,0 @@ -From a5fd2ae8d4a3b2a8f7a33a4ea469ea7ee0d946ef Mon Sep 17 00:00:00 2001 -From: Christian Gromm -Date: Mon, 4 Sep 2017 15:36:38 +0200 -Subject: [PATCH 4/5] most: video: set device_caps - -Signed-off-by: Christian Gromm ---- - driver/aim-v4l2/video.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/aim-v4l2/video.c b/aim-v4l2/video.c -index e074841..6405a03 100644 ---- a/aim-v4l2/video.c -+++ b/aim-v4l2/video.c -@@ -263,6 +263,7 @@ static int vidioc_querycap(struct file *file, void *priv, - snprintf(cap->bus_info, sizeof(cap->bus_info), - "%s", mdev->iface->description); - -+ cap->device_caps = - cap->capabilities = - V4L2_CAP_READWRITE | - V4L2_CAP_TUNER | --- -2.7.4 - diff --git a/recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch b/recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch deleted file mode 100644 index ebaee9e14..000000000 --- a/recipes-kernel/most/files/0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 7518453386ad3e82008186a6c9ca86ed8c136801 Mon Sep 17 00:00:00 2001 -From: Christian Gromm -Date: Mon, 4 Sep 2017 16:08:38 +0200 -Subject: [PATCH 5/5] most: video: set V4L2_CAP_DEVICE_CAPS flag - -Signed-off-by: Christian Gromm ---- - driver/aim-v4l2/video.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/aim-v4l2/video.c b/aim-v4l2/video.c -index 6405a03..db75d4d 100644 ---- a/aim-v4l2/video.c -+++ b/aim-v4l2/video.c -@@ -265,6 +265,7 @@ static int vidioc_querycap(struct file *file, void *priv, - - cap->device_caps = - cap->capabilities = -+ V4L2_CAP_DEVICE_CAPS | - V4L2_CAP_READWRITE | - V4L2_CAP_TUNER | - V4L2_CAP_VIDEO_CAPTURE; --- -2.7.4 - diff --git a/recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch b/recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch deleted file mode 100644 index 59c6ae671..000000000 --- a/recipes-kernel/most/files/0006-dim2-fix-startup-sequence.patch +++ /dev/null @@ -1,186 +0,0 @@ -From 63bcd9b421ae7927948bffec9566db47f40ea290 Mon Sep 17 00:00:00 2001 -From: Andrey Shvetsov -Date: Tue, 30 Jan 2018 17:34:09 +0100 -Subject: [PATCH] staging: most: dim2: fix startup sequence - -Platform specific initializations (pdata->init) must be done before DIM2 -IP module startup (dim_startup). - -Signed-off-by: Andrey Shvetsov ---- - hdm-dim2/dim2_hdm.c | 90 +++++++++++++++++++++++++++++++++++++++--------------------------------------------------- - 1 file changed, 39 insertions(+), 51 deletions(-) - -diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c -index 893b8e4..e4629a5 100644 ---- a/hdm-dim2/dim2_hdm.c -+++ b/hdm-dim2/dim2_hdm.c -@@ -155,38 +155,6 @@ void dimcb_on_error(u8 error_id, const char *error_message) - } - - /** -- * startup_dim - initialize the dim2 interface -- * @pdev: platform device -- */ --static int startup_dim(struct platform_device *pdev) --{ -- struct dim2_hdm *dev = platform_get_drvdata(pdev); -- struct dim2_platform_data *pdata = pdev->dev.platform_data; -- u8 hal_ret; -- int ret; -- -- if (!pdata) { -- pr_err("missing platform data\n"); -- return -EINVAL; -- } -- -- ret = pdata->init ? pdata->init(pdata, dev->io_base) : 0; -- if (ret) -- return ret; -- -- pr_info("sync: num of frames per sub-buffer: %u\n", fcnt); -- hal_ret = dim_startup(dev->io_base, pdata->clk_speed, fcnt); -- if (hal_ret != DIM_NO_ERROR) { -- pr_err("dim_startup failed: %d\n", hal_ret); -- if (pdata && pdata->destroy) -- pdata->destroy(pdata); -- return -ENODEV; -- } -- -- return 0; --} -- --/** - * try_start_dim_transfer - try to transfer a buffer on a channel - * @hdm_ch: channel specific data - * -@@ -727,10 +695,12 @@ static void dma_free(struct mbo *mbo, u32 size) - */ - static int dim2_probe(struct platform_device *pdev) - { -+ struct dim2_platform_data *pdata = pdev->dev.platform_data; - struct dim2_hdm *dev; - struct resource *res; - int ret, i; - struct kobject *kobj; -+ u8 hal_ret; - int irq; - - dev = devm_kzalloc(&pdev->dev, sizeof(*dev), GFP_KERNEL); -@@ -745,38 +715,59 @@ static int dim2_probe(struct platform_device *pdev) - if (IS_ERR(dev->io_base)) - return PTR_ERR(dev->io_base); - -+ if (!pdata) { -+ dev_err(&pdev->dev, "missing platform data\n"); -+ return -EINVAL; -+ } -+ -+ ret = pdata->init ? pdata->init(pdata, dev->io_base) : 0; -+ if (ret) -+ return ret; -+ -+ dev_info(&pdev->dev, "sync: num of frames per sub-buffer: %u\n", fcnt); -+ hal_ret = dim_startup(dev->io_base, pdata->clk_speed, fcnt); -+ if (hal_ret != DIM_NO_ERROR) { -+ dev_err(&pdev->dev, "dim_startup failed: %d\n", hal_ret); -+ ret = -ENODEV; -+ goto err_bsp_destroy; -+ } -+ - irq = platform_get_irq(pdev, 0); - if (irq < 0) { - dev_err(&pdev->dev, "failed to get ahb0_int irq: %d\n", irq); -- return irq; -+ ret = irq; -+ goto err_shutdown_dim; - } - - ret = devm_request_irq(&pdev->dev, irq, dim2_ahb_isr, 0, - "dim2_ahb0_int", dev); - if (ret) { - dev_err(&pdev->dev, "failed to request ahb0_int irq %d\n", irq); -- return ret; -+ goto err_shutdown_dim; - } - - irq = platform_get_irq(pdev, 1); - if (irq < 0) { - dev_err(&pdev->dev, "failed to get mlb_int irq: %d\n", irq); -- return irq; -+ ret = irq; -+ goto err_shutdown_dim; - } - - ret = devm_request_irq(&pdev->dev, irq, dim2_mlb_isr, 0, - "dim2_mlb_int", dev); - if (ret) { - dev_err(&pdev->dev, "failed to request mlb_int irq %d\n", irq); -- return ret; -+ goto err_shutdown_dim; - } - - init_waitqueue_head(&dev->netinfo_waitq); - dev->deliver_netinfo = 0; -- dev->netinfo_task = kthread_run(&deliver_netinfo_thread, (void *)dev, -+ dev->netinfo_task = kthread_run(&deliver_netinfo_thread, dev, - "dim2_netinfo"); -- if (IS_ERR(dev->netinfo_task)) -- return PTR_ERR(dev->netinfo_task); -+ if (IS_ERR(dev->netinfo_task)) { -+ ret = PTR_ERR(dev->netinfo_task); -+ goto err_shutdown_dim; -+ } - - for (i = 0; i < DMA_CHANNELS; i++) { - struct most_channel_capability *cap = dev->capabilities + i; -@@ -833,20 +824,17 @@ static int dim2_probe(struct platform_device *pdev) - if (ret) - goto err_unreg_iface; - -- ret = startup_dim(pdev); -- if (ret) { -- dev_err(&pdev->dev, "failed to initialize DIM2\n"); -- goto err_destroy_bus; -- } -- - return 0; - --err_destroy_bus: -- dim2_sysfs_destroy(&dev->bus); - err_unreg_iface: - most_deregister_interface(&dev->most_iface); - err_stop_thread: - kthread_stop(dev->netinfo_task); -+err_shutdown_dim: -+ dim_shutdown(); -+err_bsp_destroy: -+ if (pdata && pdata->destroy) -+ pdata->destroy(pdata); - - return ret; - } -@@ -863,6 +851,10 @@ static int dim2_remove(struct platform_device *pdev) - struct dim2_platform_data *pdata = pdev->dev.platform_data; - unsigned long flags; - -+ dim2_sysfs_destroy(&dev->bus); -+ most_deregister_interface(&dev->most_iface); -+ kthread_stop(dev->netinfo_task); -+ - spin_lock_irqsave(&dim_lock, flags); - dim_shutdown(); - spin_unlock_irqrestore(&dim_lock, flags); -@@ -870,10 +862,6 @@ static int dim2_remove(struct platform_device *pdev) - if (pdata && pdata->destroy) - pdata->destroy(pdata); - -- dim2_sysfs_destroy(&dev->bus); -- most_deregister_interface(&dev->most_iface); -- kthread_stop(dev->netinfo_task); -- - /* - * break link to local platform_device_id struct - * to prevent crash by unload platform device module --- -libgit2 0.26.0 diff --git a/recipes-kernel/most/files/0007-dim2-use-device-tree.patch b/recipes-kernel/most/files/0007-dim2-use-device-tree.patch deleted file mode 100644 index 679fab79c..000000000 --- a/recipes-kernel/most/files/0007-dim2-use-device-tree.patch +++ /dev/null @@ -1,378 +0,0 @@ -From 8e16207392cd715ea88f6780981a3d55ab005588 Mon Sep 17 00:00:00 2001 -From: Andrey Shvetsov -Date: Mon, 12 Feb 2018 12:23:37 +0100 -Subject: [PATCH] staging: most: dim2: use device tree - -Current dim2 driver expects the existence of a platform driver that -implements the platform specific initialization and delivery of the irq -numbers. - -This patch integrates the device tree activity and platform specific -code into the driver. - -Signed-off-by: Andrey Shvetsov ---- - hdm-dim2/dim2_hdm.c | 222 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------- - hdm-dim2/dim2_hdm.h | 28 ---------------------------- - hdm-dim2/platform/dim2_arwen_mlb3.c | 165 --------------------------------------------------------------------------------------------------------------------------------------------------------------------- - hdm-dim2/platform/dim2_arwen_mlb6.c | 169 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - hdm-dim2/platform/dim2_h2_dt.c | 227 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - hdm-dim2/platform/dim2_mx6q.c | 192 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - hdm-dim2/platform/dim2_mx6q_dt.c | 224 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - 7 files changed, 193 insertions(+), 1034 deletions(-) - delete mode 100644 hdm-dim2/dim2_hdm.h - delete mode 100644 hdm-dim2/platform/dim2_arwen_mlb3.c - delete mode 100644 hdm-dim2/platform/dim2_arwen_mlb6.c - delete mode 100644 hdm-dim2/platform/dim2_h2_dt.c - delete mode 100644 hdm-dim2/platform/dim2_mx6q.c - delete mode 100644 hdm-dim2/platform/dim2_mx6q_dt.c - -diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c -index e4629a5..2dba917 100644 ---- a/hdm-dim2/dim2_hdm.c -+++ b/hdm-dim2/dim2_hdm.c -@@ -14,6 +14,7 @@ - #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt - - #include -+#include - #include - #include - #include -@@ -21,13 +22,13 @@ - #include - #include - #include -+#include - #include - #include - #include - - #include - #include "dim2_hal.h" --#include "dim2_hdm.h" - #include "dim2_errors.h" - #include "dim2_sysfs.h" - -@@ -93,6 +94,9 @@ struct dim2_hdm { - struct most_interface most_iface; - char name[16 + sizeof "dim2-"]; - void __iomem *io_base; -+ u8 clk_speed; -+ struct clk *clk; -+ struct clk *clk_pll; - struct task_struct *netinfo_task; - wait_queue_head_t netinfo_waitq; - int deliver_netinfo; -@@ -102,6 +106,12 @@ struct dim2_hdm { - struct medialb_bus bus; - void (*on_netinfo)(struct most_interface *, - unsigned char, unsigned char *); -+ void (*disable_platform)(struct platform_device *); -+}; -+ -+struct dim2_platform_data { -+ int (*enable)(struct platform_device *); -+ void (*disable)(struct platform_device *); - }; - - #define iface_to_hdm(iface) container_of(iface, struct dim2_hdm, most_iface) -@@ -686,6 +696,8 @@ static void dma_free(struct mbo *mbo, u32 size) - dma_free_coherent(NULL, size, mbo->virt_address, mbo->bus_address); - } - -+static const struct of_device_id dim2_of_match[]; -+ - /* - * dim2_probe - dim2 probe handler - * @pdev: platform device structure -@@ -695,7 +707,7 @@ static void dma_free(struct mbo *mbo, u32 size) - */ - static int dim2_probe(struct platform_device *pdev) - { -- struct dim2_platform_data *pdata = pdev->dev.platform_data; -+ const struct dim2_platform_data *pdata; - struct dim2_hdm *dev; - struct resource *res; - int ret, i; -@@ -703,6 +715,8 @@ static int dim2_probe(struct platform_device *pdev) - u8 hal_ret; - int irq; - -+ enum { MLB_INT_IDX, AHB0_INT_IDX }; -+ - dev = devm_kzalloc(&pdev->dev, sizeof(*dev), GFP_KERNEL); - if (!dev) - return -ENOMEM; -@@ -710,29 +724,30 @@ static int dim2_probe(struct platform_device *pdev) - dev->atx_idx = -1; - - platform_set_drvdata(pdev, dev); -+ -+ dev->clk_speed = CLK_4096FS; -+ - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - dev->io_base = devm_ioremap_resource(&pdev->dev, res); - if (IS_ERR(dev->io_base)) - return PTR_ERR(dev->io_base); - -- if (!pdata) { -- dev_err(&pdev->dev, "missing platform data\n"); -- return -EINVAL; -- } -- -- ret = pdata->init ? pdata->init(pdata, dev->io_base) : 0; -+ pdata = of_match_node(dim2_of_match, pdev->dev.of_node)->data; -+ ret = pdata && pdata->enable ? pdata->enable(pdev) : 0; - if (ret) - return ret; - -+ dev->disable_platform = pdata ? pdata->disable : 0; -+ - dev_info(&pdev->dev, "sync: num of frames per sub-buffer: %u\n", fcnt); -- hal_ret = dim_startup(dev->io_base, pdata->clk_speed, fcnt); -+ hal_ret = dim_startup(dev->io_base, dev->clk_speed, fcnt); - if (hal_ret != DIM_NO_ERROR) { - dev_err(&pdev->dev, "dim_startup failed: %d\n", hal_ret); - ret = -ENODEV; -- goto err_bsp_destroy; -+ goto err_disable_platform; - } - -- irq = platform_get_irq(pdev, 0); -+ irq = platform_get_irq(pdev, AHB0_INT_IDX); - if (irq < 0) { - dev_err(&pdev->dev, "failed to get ahb0_int irq: %d\n", irq); - ret = irq; -@@ -746,7 +761,7 @@ static int dim2_probe(struct platform_device *pdev) - goto err_shutdown_dim; - } - -- irq = platform_get_irq(pdev, 1); -+ irq = platform_get_irq(pdev, MLB_INT_IDX); - if (irq < 0) { - dev_err(&pdev->dev, "failed to get mlb_int irq: %d\n", irq); - ret = irq; -@@ -832,9 +847,9 @@ static int dim2_probe(struct platform_device *pdev) - kthread_stop(dev->netinfo_task); - err_shutdown_dim: - dim_shutdown(); --err_bsp_destroy: -- if (pdata && pdata->destroy) -- pdata->destroy(pdata); -+err_disable_platform: -+ if (dev->disable_platform) -+ dev->disable_platform(pdev); - - return ret; - } -@@ -848,7 +863,6 @@ static int dim2_probe(struct platform_device *pdev) - static int dim2_remove(struct platform_device *pdev) - { - struct dim2_hdm *dev = platform_get_drvdata(pdev); -- struct dim2_platform_data *pdata = pdev->dev.platform_data; - unsigned long flags; - - dim2_sysfs_destroy(&dev->bus); -@@ -859,37 +873,187 @@ static int dim2_remove(struct platform_device *pdev) - dim_shutdown(); - spin_unlock_irqrestore(&dim_lock, flags); - -- if (pdata && pdata->destroy) -- pdata->destroy(pdata); -+ if (dev->disable_platform) -+ dev->disable_platform(pdev); -+ -+ return 0; -+} -+ -+/* platform specific functions [[ */ -+ -+static int fsl_mx6_enable(struct platform_device *pdev) -+{ -+ struct dim2_hdm *dev = platform_get_drvdata(pdev); -+ int ret; -+ -+ dev->clk = devm_clk_get(&pdev->dev, "mlb"); -+ if (IS_ERR_OR_NULL(dev->clk)) { -+ dev_err(&pdev->dev, "unable to get mlb clock\n"); -+ return -EFAULT; -+ } -+ -+ ret = clk_prepare_enable(dev->clk); -+ if (ret) { -+ dev_err(&pdev->dev, "%s\n", "clk_prepare_enable failed"); -+ return ret; -+ } -+ -+ if (dev->clk_speed >= CLK_2048FS) { -+ /* enable pll */ -+ dev->clk_pll = devm_clk_get(&pdev->dev, "pll8_mlb"); -+ if (IS_ERR_OR_NULL(dev->clk_pll)) { -+ dev_err(&pdev->dev, "unable to get mlb pll clock\n"); -+ clk_disable_unprepare(dev->clk); -+ return -EFAULT; -+ } -+ -+ writel(0x888, dev->io_base + 0x38); -+ clk_prepare_enable(dev->clk_pll); -+ } -+ -+ return 0; -+} -+ -+static void fsl_mx6_disable(struct platform_device *pdev) -+{ -+ struct dim2_hdm *dev = platform_get_drvdata(pdev); -+ -+ if (dev->clk_speed >= CLK_2048FS) -+ clk_disable_unprepare(dev->clk_pll); -+ -+ clk_disable_unprepare(dev->clk); -+} -+ -+static int rcar_h2_enable(struct platform_device *pdev) -+{ -+ struct dim2_hdm *dev = platform_get_drvdata(pdev); -+ int ret; -+ -+ dev->clk = devm_clk_get(&pdev->dev, NULL); -+ if (IS_ERR(dev->clk)) { -+ dev_err(&pdev->dev, "cannot get clock\n"); -+ return PTR_ERR(dev->clk); -+ } -+ -+ ret = clk_prepare_enable(dev->clk); -+ if (ret) { -+ dev_err(&pdev->dev, "%s\n", "clk_prepare_enable failed"); -+ return ret; -+ } -+ -+ if (dev->clk_speed >= CLK_2048FS) { -+ /* enable MLP pll and LVDS drivers */ -+ writel(0x03, dev->io_base + 0x600); -+ /* set bias */ -+ writel(0x888, dev->io_base + 0x38); -+ } else { -+ /* PLL */ -+ writel(0x04, dev->io_base + 0x600); -+ } -+ - -- /* -- * break link to local platform_device_id struct -- * to prevent crash by unload platform device module -- */ -- pdev->id_entry = NULL; -+ /* BBCR = 0b11 */ -+ writel(0x03, dev->io_base + 0x500); -+ writel(0x0002FF02, dev->io_base + 0x508); - - return 0; - } - --static const struct platform_device_id dim2_id[] = { -- { "medialb_dim2" }, -- { }, /* Terminating entry */ -+static void rcar_h2_disable(struct platform_device *pdev) -+{ -+ struct dim2_hdm *dev = platform_get_drvdata(pdev); -+ -+ clk_disable_unprepare(dev->clk); -+ -+ /* disable PLLs and LVDS drivers */ -+ writel(0x0, dev->io_base + 0x600); -+} -+ -+static int rcar_m3_enable(struct platform_device *pdev) -+{ -+ struct dim2_hdm *dev = platform_get_drvdata(pdev); -+ u32 enable_512fs = dev->clk_speed == CLK_512FS; -+ int ret; -+ -+ dev->clk = devm_clk_get(&pdev->dev, NULL); -+ if (IS_ERR(dev->clk)) { -+ dev_err(&pdev->dev, "cannot get clock\n"); -+ return PTR_ERR(dev->clk); -+ } -+ -+ ret = clk_prepare_enable(dev->clk); -+ if (ret) { -+ dev_err(&pdev->dev, "%s\n", "clk_prepare_enable failed"); -+ return ret; -+ } -+ -+ /* PLL */ -+ writel(0x04, dev->io_base + 0x600); -+ -+ writel(enable_512fs, dev->io_base + 0x604); -+ -+ /* BBCR = 0b11 */ -+ writel(0x03, dev->io_base + 0x500); -+ writel(0x0002FF02, dev->io_base + 0x508); -+ -+ return 0; -+} -+ -+static void rcar_m3_disable(struct platform_device *pdev) -+{ -+ struct dim2_hdm *dev = platform_get_drvdata(pdev); -+ -+ clk_disable_unprepare(dev->clk); -+ -+ /* disable PLLs and LVDS drivers */ -+ writel(0x0, dev->io_base + 0x600); -+} -+ -+/* ]] platform specific functions */ -+ -+enum dim2_platforms { FSL_MX6, RCAR_H2, RCAR_M3 }; -+ -+static struct dim2_platform_data plat_data[] = { -+ [FSL_MX6] = { .enable = fsl_mx6_enable, .disable = fsl_mx6_disable }, -+ [RCAR_H2] = { .enable = rcar_h2_enable, .disable = rcar_h2_disable }, -+ [RCAR_M3] = { .enable = rcar_m3_enable, .disable = rcar_m3_disable }, -+}; -+ -+static const struct of_device_id dim2_of_match[] = { -+ { -+ .compatible = "fsl,imx6q-mlb150", -+ .data = plat_data + FSL_MX6 -+ }, -+ { -+ .compatible = "renesas,mlp", -+ .data = plat_data + RCAR_H2 -+ }, -+ { -+ .compatible = "rcar,medialb-dim2", -+ .data = plat_data + RCAR_M3 -+ }, -+ { -+ .compatible = "xlnx,axi4-os62420_3pin-1.00.a", -+ }, -+ { -+ .compatible = "xlnx,axi4-os62420_6pin-1.00.a", -+ }, -+ {}, - }; - --MODULE_DEVICE_TABLE(platform, dim2_id); -+MODULE_DEVICE_TABLE(of, dim2_of_match); - - static struct platform_driver dim2_driver = { - .probe = dim2_probe, - .remove = dim2_remove, -- .id_table = dim2_id, - .driver = { - .name = "hdm_dim2", -+ .of_match_table = dim2_of_match, - }, - }; - - module_platform_driver(dim2_driver); - --MODULE_AUTHOR("Jain Roy Ambi "); - MODULE_AUTHOR("Andrey Shvetsov "); - MODULE_DESCRIPTION("MediaLB DIM2 Hardware Dependent Module"); - MODULE_LICENSE("GPL"); -libgit2 0.26.0 diff --git a/recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch b/recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch deleted file mode 100644 index 1b01fb156..000000000 --- a/recipes-kernel/most/files/0008-dim2-read-clock-speed-from-the-device-tree.patch +++ /dev/null @@ -1,92 +0,0 @@ -From 839ad403a2d8081a6c15f6fc2836b01919338f3c Mon Sep 17 00:00:00 2001 -From: Andrey Shvetsov -Date: Mon, 12 Feb 2018 12:24:37 +0100 -Subject: [PATCH] staging: most: dim2: read clock speed from the device tree - -This implements reading of the clock speed parameter from the device -tree. - -Signed-off-by: Andrey Shvetsov ---- - Documentation/devicetree/bindings/inic/microchip,inic-dim2.txt | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - hdm-dim2/dim2_hdm.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- - 2 files changed, 113 insertions(+), 1 deletion(-) - create mode 100644 Documentation/devicetree/bindings/inic/microchip,inic-dim2.txt - -diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c -index 2dba917..05e1896 100644 ---- a/hdm-dim2/dim2_hdm.c -+++ b/hdm-dim2/dim2_hdm.c -@@ -698,6 +698,42 @@ static void dma_free(struct mbo *mbo, u32 size) - - static const struct of_device_id dim2_of_match[]; - -+static struct { -+ const char *clock_speed; -+ u8 clk_speed; -+} clk_mt[] = { -+ { "256fs", CLK_256FS }, -+ { "512fs", CLK_512FS }, -+ { "1024fs", CLK_1024FS }, -+ { "2048fs", CLK_2048FS }, -+ { "3072fs", CLK_3072FS }, -+ { "4096fs", CLK_4096FS }, -+ { "6144fs", CLK_6144FS }, -+ { "8192fs", CLK_8192FS }, -+}; -+ -+/** -+ * get_dim2_clk_speed - converts string to DIM2 clock speed value -+ * -+ * @clock_speed: string in the format "{NUMBER}fs" -+ * @val: pointer to get one of the CLK_{NUMBER}FS values -+ * -+ * By success stores one of the CLK_{NUMBER}FS in the *val and returns 0, -+ * otherwise returns -EINVAL. -+ */ -+static int get_dim2_clk_speed(const char *clock_speed, u8 *val) -+{ -+ int i; -+ -+ for (i = 0; i < ARRAY_SIZE(clk_mt); i++) { -+ if (!strcmp(clock_speed, clk_mt[i].clock_speed)) { -+ *val = clk_mt[i].clk_speed; -+ return 0; -+ } -+ } -+ return -EINVAL; -+} -+ - /* - * dim2_probe - dim2 probe handler - * @pdev: platform device structure -@@ -708,6 +744,7 @@ static const struct of_device_id dim2_of_match[]; - static int dim2_probe(struct platform_device *pdev) - { - const struct dim2_platform_data *pdata; -+ const char *clock_speed; - struct dim2_hdm *dev; - struct resource *res; - int ret, i; -@@ -725,7 +762,18 @@ static int dim2_probe(struct platform_device *pdev) - - platform_set_drvdata(pdev, dev); - -- dev->clk_speed = CLK_4096FS; -+ ret = of_property_read_string(pdev->dev.of_node, -+ "microchip,clock-speed", &clock_speed); -+ if (ret) { -+ dev_err(&pdev->dev, "missing dt property clock-speed\n"); -+ return ret; -+ } -+ -+ ret = get_dim2_clk_speed(clock_speed, &dev->clk_speed); -+ if (ret) { -+ dev_err(&pdev->dev, "bad dt property clock-speed\n"); -+ return ret; -+ } - - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - dev->io_base = devm_ioremap_resource(&pdev->dev, res); --- -libgit2 0.26.0 diff --git a/recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch b/recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch deleted file mode 100644 index 08cd6f99d..000000000 --- a/recipes-kernel/most/files/0009-dim2-use-device-for-coherent-memory-allocation.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 756f2f1f90524c2620ed7951e436d13bdb929a6b Mon Sep 17 00:00:00 2001 -From: Andrey Shvetsov -Date: Mon, 12 Feb 2018 12:25:37 +0100 -Subject: [PATCH] staging: most: dim2: use device for coherent memory allocation - -On several modern architectures the allocation of coherent memory needs -a device that has the dma_ops properly set. This patch enables use of -the DIM2 platform device for the allocation process. - -Signed-off-by: Andrey Shvetsov ---- - hdm-dim2/dim2_hdm.c | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c -index 05e1896..1847091 100644 ---- a/hdm-dim2/dim2_hdm.c -+++ b/hdm-dim2/dim2_hdm.c -@@ -688,12 +688,16 @@ static int poison_channel(struct most_interface *most_iface, int ch_idx) - - static void *dma_alloc(struct mbo *mbo, u32 size) - { -- return dma_alloc_coherent(NULL, size, &mbo->bus_address, GFP_KERNEL); -+ struct device *dev = mbo->ifp->dev; -+ -+ return dma_alloc_coherent(dev, size, &mbo->bus_address, GFP_KERNEL); - } - - static void dma_free(struct mbo *mbo, u32 size) - { -- dma_free_coherent(NULL, size, mbo->virt_address, mbo->bus_address); -+ struct device *dev = mbo->ifp->dev; -+ -+ dma_free_coherent(dev, size, mbo->virt_address, mbo->bus_address); - } - - static const struct of_device_id dim2_of_match[]; -@@ -875,6 +879,7 @@ static int dim2_probe(struct platform_device *pdev) - dev->most_iface.poison_channel = poison_channel; - dev->most_iface.request_netinfo = request_netinfo; - dev->most_iface.extra_attrs = DBR_ATTRS; -+ dev->most_iface.dev = &pdev->dev; - - kobj = most_register_interface(&dev->most_iface); - if (IS_ERR(kobj)) { --- -libgit2 0.26.0 diff --git a/recipes-kernel/most/files/0010-backport-usb-setup-timer.patch b/recipes-kernel/most/files/0010-backport-usb-setup-timer.patch deleted file mode 100644 index ff21b2130..000000000 --- a/recipes-kernel/most/files/0010-backport-usb-setup-timer.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 8eaec876f732c7e4b238ada5f9304c6da2380eb1 Mon Sep 17 00:00:00 2001 -From: Andrey Shvetsov -Date: Fri, 8 Feb 2019 22:44:32 +0000 -Subject: [PATCH] backport: usb: setup_timer - ---- - driver/hdm-usb/hdm_usb.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - -diff --git a/hdm-usb/hdm_usb.c b/hdm-usb/hdm_usb.c -index 5b0af88..9896835 100644 ---- a/hdm-usb/hdm_usb.c -+++ b/hdm-usb/hdm_usb.c -@@ -760,9 +760,9 @@ static void hdm_request_netinfo(struct most_interface *iface, int channel, - * The handler runs in interrupt context. That's why we need to defer the - * tasks to a work queue. - */ --static void link_stat_timer_handler(unsigned long data) -+static void link_stat_timer_handler(struct timer_list *t) - { -- struct most_dev *mdev = (struct most_dev *)data; -+ struct most_dev *mdev = from_timer(mdev, t, link_stat_timer); - - schedule_work(&mdev->poll_work_obj); - mdev->link_stat_timer.expires = jiffies + (2 * HZ); -@@ -1154,8 +1154,7 @@ hdm_probe(struct usb_interface *interface, const struct usb_device_id *id) - num_endpoints = usb_iface_desc->desc.bNumEndpoints; - mutex_init(&mdev->io_mutex); - INIT_WORK(&mdev->poll_work_obj, wq_netinfo); -- setup_timer(&mdev->link_stat_timer, link_stat_timer_handler, -- (unsigned long)mdev); -+ timer_setup(&mdev->link_stat_timer, link_stat_timer_handler, 0); - - mdev->usb_device = usb_dev; - mdev->link_stat_timer.expires = jiffies + (2 * HZ); diff --git a/recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch b/recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch deleted file mode 100644 index d4383c4f6..000000000 --- a/recipes-kernel/most/files/0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch +++ /dev/null @@ -1,30 +0,0 @@ -Handle snd_pcm_lib_mmap_vmalloc removal in 4.19 - -Add .mmap field back to pcm_ops for kernels older than 4.19. - -Upstream-Status: Inappropriate - -Signed-off-by: Scott Murray - -diff --git a/aim-sound/sound.c b/aim-sound/sound.c -index 4b3329b..c0a26be 100644 ---- a/aim-sound/sound.c -+++ b/aim-sound/sound.c -@@ -17,6 +17,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -463,6 +464,9 @@ static const struct snd_pcm_ops pcm_ops = { - .trigger = pcm_trigger, - .pointer = pcm_pointer, - .page = snd_pcm_lib_get_vmalloc_page, -+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,19,0) -+ .mmap = snd_pcm_lib_mmap_vmalloc, -+#endif - }; - - static int split_arg_list(char *buf, char **card_name, u16 *ch_num, diff --git a/recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch b/recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch deleted file mode 100644 index 02eca27d2..000000000 --- a/recipes-kernel/most/files/0012-Fix-build-with-5.4-kernel.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 877d7475413bb787deb07aa83bafac03efa399fa Mon Sep 17 00:00:00 2001 -From: Paul Barker -Date: Mon, 24 Feb 2020 14:58:52 +0000 -Subject: [PATCH] Fix build with 5.4 kernel - -Signed-off-by: Paul Barker ---- - driver/Makefile | 11 ++++++++++- - 1 file changed, 10 insertions(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index 281241d..609e692 100644 ---- a/Makefile -+++ b/Makefile -@@ -5,6 +5,7 @@ SRC := $(shell pwd) - obj-m := mostcore.o - mostcore-y := mostcore/core.o - CFLAGS_core.o := -I$(src)/include/ -+CFLAGS_mostcore/core.o := -I$(src)/include/ - - obj-m += default_conf.o - CFLAGL_default_conf.o := -I$(src)/include -@@ -12,33 +13,41 @@ CFLAGL_default_conf.o := -I$(src)/include - obj-m += aim_cdev.o - aim_cdev-y := aim-cdev/cdev.o - CFLAGS_cdev.o := -I$(src)/include/ -+CFLAGS_aim-cdev/cdev.o := -I$(src)/include/ - - obj-m += aim_network.o - aim_network-y := aim-network/networking.o - CFLAGS_networking.o := -I$(src)/include/ -+CFLAGS_aim-network/networking.o := -I$(src)/include/ - - obj-m += aim_sound.o - aim_sound-y := aim-sound/sound.o - CFLAGS_sound.o := -I$(src)/include/ -+CFLAGS_aim-sound/sound.o := -I$(src)/include/ - - obj-m += aim_v4l2.o - aim_v4l2-y := aim-v4l2/video.o - CFLAGS_video.o := -Idrivers/media/video -I$(src)/include/ -+CFLAGS_aim-v4l2/video.o := -Idrivers/media/video -I$(src)/include/ - - obj-m += hdm_i2c.o - hdm_i2c-y := hdm-i2c/hdm_i2c.o - CFLAGS_hdm_i2c.o := -I$(src)/include/ -+CFLAGS_hdm-i2c/hdm_i2c.o := -I$(src)/include/ - - ifdef CONFIG_OF - obj-m += hdm_dim2.o - hdm_dim2-y := hdm-dim2/dim2_hdm.o hdm-dim2/dim2_hal.o hdm-dim2/dim2_sysfs.o - CFLAGS_dim2_hdm.o := -I$(src)/include/ -+CFLAGS_hdm-dim2/dim2_hdm.o := -I$(src)/include/ -+CFLAGS_hdm-dim2/dim2_hal.o := -I$(src)/include/ -+CFLAGS_hdm-dim2/dim2_sysfs.o := -I$(src)/include/ - endif - - obj-m += hdm_usb.o - hdm_usb-y := hdm-usb/hdm_usb.o - CFLAGS_hdm_usb.o := -I$(src)/include/ -- -+CFLAGS_hdm-usb/hdm_usb.o := -I$(src)/include/ - - all: - $(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules --- -2.20.1 - diff --git a/recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch b/recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch deleted file mode 100644 index 85e38857c..000000000 --- a/recipes-kernel/most/files/0013-Fix-build-with-5.7-kernel.patch +++ /dev/null @@ -1,54 +0,0 @@ -Fix building against 5.7 or newer kernels - -VFL_TYPE_GRABBER was renamed VFL_TYPE_VIDEO in 5.7. Marking as -inappropriate for upstream for now, as it seems the standalone -version of the driver has been superceded by the version in the -staging tree in the mainline kernel, and there are no obvious -signs of maintenance. - -Upstream-Status: Inappropriate [no upstream] -Signed-off-by: Scott Murray - ---- -diff --git a/aim-v4l2/video.c b/aim-v4l2/video.c -index db75d4d..fbf7139 100644 ---- a/aim-v4l2/video.c -+++ b/aim-v4l2/video.c -@@ -14,6 +14,7 @@ - #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt - - #include -+#include - #include - #include - #include -@@ -31,6 +32,11 @@ - - #define V4L2_AIM_MAX_INPUT 1 - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5,7,0) -+/* Handle pre-5.7 naming */ -+#define VFL_TYPE_VIDEO VFL_TYPE_GRABBER -+#endif -+ - static struct most_aim aim_info; - - struct most_video_dev { -@@ -82,7 +88,7 @@ static int aim_vdev_open(struct file *filp) - v4l2_info(&mdev->v4l2_dev, "aim_vdev_open()\n"); - - switch (vdev->vfl_type) { -- case VFL_TYPE_GRABBER: -+ case VFL_TYPE_VIDEO: - break; - default: - return -EINVAL; -@@ -461,7 +467,7 @@ static int aim_register_videodev(struct most_video_dev *mdev) - - /* Register the v4l2 device */ - video_set_drvdata(mdev->vdev, mdev); -- ret = video_register_device(mdev->vdev, VFL_TYPE_GRABBER, -1); -+ ret = video_register_device(mdev->vdev, VFL_TYPE_VIDEO, -1); - if (ret) { - v4l2_err(&mdev->v4l2_dev, "video_register_device failed (%d)\n", - ret); diff --git a/recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch b/recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch deleted file mode 100644 index fd430c9df..000000000 --- a/recipes-kernel/most/files/0014-Fix-build-with-5.9-kernel.patch +++ /dev/null @@ -1,39 +0,0 @@ -Fix building against 5.9 or newer kernels - -DECLARE_TASKLET was replaced with DECLARE_TASKLET_OLD in 5.9. -Marking as inappropriate for upstream for now, as it seems the -standalone version of the driver has been superceded by the version -in the staging tree in the mainline kernel, and there are no obvious -signs of maintenance. - -Upstream-Status: Inappropriate [no upstream] -Signed-off-by: Scott Murray - ---- - driver/hdm-dim2/dim2_hdm.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c -index 1847091..fc02c6b 100644 ---- a/hdm-dim2/dim2_hdm.c -+++ b/hdm-dim2/dim2_hdm.c -@@ -14,6 +14,7 @@ - #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt - - #include -+#include - #include - #include - #include -@@ -53,7 +54,11 @@ MODULE_PARM_DESC(fcnt, "Num of frames per sub-buffer for sync channels as a powe - static DEFINE_SPINLOCK(dim_lock); - - static void dim2_tasklet_fn(unsigned long data); -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5,9,0) - static DECLARE_TASKLET(dim2_tasklet, dim2_tasklet_fn, 0); -+#else -+static DECLARE_TASKLET_OLD(dim2_tasklet, dim2_tasklet_fn); -+#endif - - /** - * struct hdm_channel - private structure to keep channel specific data diff --git a/recipes-kernel/most/most.bb b/recipes-kernel/most/most.bb deleted file mode 100644 index f709a6d9a..000000000 --- a/recipes-kernel/most/most.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "Build MOST driver" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://mostcore/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e" - -inherit module - -PV = "0.1" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/most;protocol=https;branch=${AGL_BRANCH}" - -S = "${WORKDIR}/git/driver" -SRCREV = "e4dbbaf9e7652efaed0df3e0aab4464f5f228573" - -KERNEL_MODULE_AUTOLOAD += "aim_cdev aim_sound aim_network aim_v4l2 hdm_i2c hdm_dim2 hdm_usb mostcore" diff --git a/recipes-kernel/most/most.bbappend b/recipes-kernel/most/most.bbappend deleted file mode 100644 index af7ea687e..000000000 --- a/recipes-kernel/most/most.bbappend +++ /dev/null @@ -1,17 +0,0 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/files:" - -SRC_URI:append = " \ - file://0002-src-most-add-auto-conf-feature.patch \ - file://0003-core-remove-kernel-log-for-MBO-status.patch \ - file://0004-most-video-set-device_caps.patch \ - file://0005-most-video-set-V4L2_CAP_DEVICE_CAPS-flag.patch \ - file://0006-dim2-fix-startup-sequence.patch \ - file://0007-dim2-use-device-tree.patch \ - file://0008-dim2-read-clock-speed-from-the-device-tree.patch \ - file://0009-dim2-use-device-for-coherent-memory-allocation.patch \ - file://0010-backport-usb-setup-timer.patch \ - file://0011-handle-snd_pcm_lib_mmap_vmalloc-removal.patch \ - file://0012-Fix-build-with-5.4-kernel.patch \ - file://0013-Fix-build-with-5.7-kernel.patch \ - file://0014-Fix-build-with-5.9-kernel.patch \ -" diff --git a/recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch b/recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch deleted file mode 100644 index 99d6183ab..000000000 --- a/recipes-kernel/sllin/files/0001-Disable-sllin-driver-debug-log.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 04ffb4b8f828c19e914987e271aaf3aa7eab28bf Mon Sep 17 00:00:00 2001 -From: Yuichi Kusakabe -Date: Thu, 29 Nov 2018 22:12:00 +0900 -Subject: [PATCH] Disable sllin driver debug log - -Signed-off-by: Yuichi Kusakabe ---- - sllin/sllin.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/sllin/sllin.c b/sllin/sllin.c -index 77b2cb8..133d6e9 100644 ---- a/sllin/sllin.c -+++ b/sllin/sllin.c -@@ -41,7 +41,9 @@ - * Funded by: Volkswagen Group Research - */ - -+#if 0 - #define DEBUG 1 /* Enables pr_debug() printouts */ -+#endif - - #include - #include --- -2.7.4 - diff --git a/recipes-kernel/sllin/files/0001_update_makefile.patch b/recipes-kernel/sllin/files/0001_update_makefile.patch deleted file mode 100644 index 7db57802b..000000000 --- a/recipes-kernel/sllin/files/0001_update_makefile.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/sllin/Makefile b/sllin/Makefile -index 8ae7510..037846f 100644 ---- a/sllin/Makefile -+++ b/sllin/Makefile -@@ -1,10 +1,11 @@ - obj-m += sllin.o --KPATH=/lib/modules/$(shell uname -r)/build -+KPATH=$(KERNEL_SRC) - #KPATH=/mnt/data/_dokumenty_/_w_/_dce_can_/src/can-benchmark/kernel/build/shark/3.0.4 - #KPATH=/mnt/data/_dokumenty_/_w_/_dce_can_/src/can-benchmark/kernel/build/shark/2.6.36 -- -+SRC := $(shell pwd) - all: -- make -C ${KPATH} M=$(PWD) modules -- -+ make -C ${KPATH} M=$(SRC) modules -+modules_install: -+ make -C ${KPATH} M=$(SRC) modules_install - clean: -- make -C ${KPATH} M=$(PWD) clean -+ make -C ${KPATH} M=$(SRC) clean diff --git a/recipes-kernel/sllin/files/0002_fix_null_operation_check.patch b/recipes-kernel/sllin/files/0002_fix_null_operation_check.patch deleted file mode 100644 index 896e2680d..000000000 --- a/recipes-kernel/sllin/files/0002_fix_null_operation_check.patch +++ /dev/null @@ -1,176 +0,0 @@ -diff --git a/sllin/sllin.c b/sllin/sllin.c -index 2db896f..2969448 100644 ---- a/sllin/sllin.c -+++ b/sllin/sllin.c -@@ -869,7 +869,6 @@ static int sllin_send_tx_buff(struct sllin *sl) - #else - remains = sl->tx_lim - sl->tx_cnt; - #endif -- - res = tty->ops->write(tty, sl->tx_buff + sl->tx_cnt, remains); - if (res < 0) - goto error_in_write; -@@ -916,10 +915,25 @@ static int sllin_send_break(struct sllin *sl) - unsigned long break_baud; - int res; - -+ netdev_dbg(sl->dev, "%s()# invoke.\n", __func__); -+ if (tty == NULL) { -+ netdev_dbg(sl->dev, "%s() tty == NULL.\n", __func__); -+ sl->lin_state = SLSTATE_IDLE; -+ return -1; -+ } -+ if (tty->ops == NULL) { -+ netdev_dbg(sl->dev, "%s() tty->ops == NULL.\n", __func__); -+ sl->lin_state = SLSTATE_IDLE; -+ return -1; -+ } - break_baud = ((sl->lin_baud * 2) / 3); - sltty_change_speed(tty, break_baud); - -- tty->ops->flush_buffer(tty); -+ if (tty->ops->flush_buffer) { -+ tty->ops->flush_buffer(tty); -+ } else { -+ netdev_dbg(sl->dev, "%s() tty->ops->flush_buffer is NULL.\n", __func__); -+ } - sl->rx_cnt = SLLIN_BUFF_BREAK; - - sl->rx_expect = SLLIN_BUFF_BREAK + 1; -@@ -943,6 +957,17 @@ static int sllin_send_break(struct sllin *sl) - unsigned long usleep_range_min; - unsigned long usleep_range_max; - -+ netdev_dbg(sl->dev, "%s() invoke.\n", __func__); -+ if (tty == NULL) { -+ netdev_dbg(sl->dev, "%s() tty == NULL.\n", __func__); -+ sl->lin_state = SLSTATE_IDLE; -+ return -1; -+ } -+ if (tty->ops == NULL) { -+ netdev_dbg(sl->dev, "%s() tty->ops == NULL.\n", __func__); -+ sl->lin_state = SLSTATE_IDLE; -+ return -1; -+ } - break_baud = ((sl->lin_baud * 2) / 3); - sl->rx_cnt = SLLIN_BUFF_BREAK; - sl->rx_expect = SLLIN_BUFF_BREAK + 1; -@@ -950,21 +975,31 @@ static int sllin_send_break(struct sllin *sl) - - /* Do the break ourselves; Inspired by - http://lxr.linux.no/#linux+v3.1.2/drivers/tty/tty_io.c#L2452 */ -- retval = tty->ops->break_ctl(tty, -1); -- if (retval) -- return retval; -+ if (tty->ops->break_ctl) { -+ retval = tty->ops->break_ctl(tty, -1); -+ if (retval) -+ return retval; -+ } else { -+ netdev_dbg(sl->dev, "%s() tty->ops->break_ctl is NULL.\n", __func__); -+ } - - /* udelay(712); */ - usleep_range_min = (1000000l * SLLIN_SAMPLES_PER_CHAR) / break_baud; - usleep_range_max = usleep_range_min + 50; - usleep_range(usleep_range_min, usleep_range_max); - -- retval = tty->ops->break_ctl(tty, 0); -+ if(tty->ops->break_ctl) { -+ retval = tty->ops->break_ctl(tty, 0); -+ } - usleep_range_min = (1000000l * 1 /* 1 bit */) / break_baud; - usleep_range_max = usleep_range_min + 30; - usleep_range(usleep_range_min, usleep_range_max); - -- tty->ops->flush_buffer(tty); -+ if ( tty->ops->flush_buffer) { -+ tty->ops->flush_buffer(tty); -+ } else { -+ netdev_dbg(sl->dev, "%s() tty->ops->flush_buffer is NULL.\n", __func__); -+ } - - sl->tx_cnt = SLLIN_BUFF_SYNC; - -@@ -1028,6 +1063,12 @@ static int sllin_kwthread(void *ptr) - int lin_dlc; - u8 lin_data_buff[SLLIN_DATA_MAX]; - -+ if (sl == NULL) { -+ pr_err("sllin: sl is NULL\n"); -+ } -+ if (sl->dev == NULL) { -+ pr_err("sllin: sl->dev is NULL\n"); -+ } - - if ((sl->lin_state == SLSTATE_IDLE) && sl->lin_master && - sl->id_to_send) { -@@ -1036,6 +1077,7 @@ static int sllin_kwthread(void *ptr) - } - } - -+ netdev_dbg(sl->dev, "sllin_kthread \n"); - wait_event_killable(sl->kwt_wq, kthread_should_stop() || - test_bit(SLF_RXEVENT, &sl->flags) || - test_bit(SLF_TXEVENT, &sl->flags) || -@@ -1046,6 +1088,7 @@ static int sllin_kwthread(void *ptr) - (sl->lin_state == SLSTATE_RESPONSE_WAIT)) - && test_bit(SLF_MSGEVENT, &sl->flags))); - -+ netdev_dbg(sl->dev, "sllin_kthread \n"); - if (test_and_clear_bit(SLF_RXEVENT, &sl->flags)) { - netdev_dbg(sl->dev, "sllin_kthread RXEVENT\n"); - } -@@ -1078,21 +1121,25 @@ static int sllin_kwthread(void *ptr) - sl->lin_state = SLSTATE_IDLE; - } - -+ netdev_dbg(sl->dev, "sllin_kthread: lin_state <%08x>\n",sl->lin_state); - switch (sl->lin_state) { - case SLSTATE_IDLE: - if (!test_bit(SLF_MSGEVENT, &sl->flags)) - break; -- -+ if (sl->tx_req_skb == NULL) -+ netdev_dbg(sl->dev, "sl->tx_req_skb == NULL\n"); -+ if (sl->tx_req_skb->data == NULL) -+ netdev_dbg(sl->dev, "sl->tx_req_skb->data == NULL\n"); - cf = (struct can_frame *)sl->tx_req_skb->data; - - /* SFF RTR CAN frame -> LIN header */ - if (cf->can_id & CAN_RTR_FLAG) { - struct sllin_conf_entry *sce; - -- netdev_dbg(sl->dev, "%s: RTR SFF CAN frame, ID = %x\n", -- __func__, cf->can_id & LIN_ID_MASK); - - sce = &sl->linfr_cache[cf->can_id & LIN_ID_MASK]; -+ netdev_dbg(sl->dev, "%s: RTR SFF CAN frame, ID = %x dlc=%d\n", -+ __func__, cf->can_id & LIN_ID_MASK, sce->dlc); - spin_lock_irqsave(&sl->linfr_lock, flags); - - /* Is there Slave response in linfr_cache to be sent? */ -@@ -1114,8 +1161,8 @@ static int sllin_kwthread(void *ptr) - spin_unlock_irqrestore(&sl->linfr_lock, flags); - - } else { /* SFF NON-RTR CAN frame -> LIN header + LIN response */ -- netdev_dbg(sl->dev, "%s: NON-RTR SFF CAN frame, ID = %x\n", -- __func__, (int)cf->can_id & LIN_ID_MASK); -+ netdev_dbg(sl->dev, "%s: NON-RTR SFF CAN frame, ID = %x\n dlc=%d", -+ __func__, (int)cf->can_id & LIN_ID_MASK, cf->can_dlc); - - lin_data = cf->data; - lin_dlc = cf->can_dlc; -@@ -1140,6 +1187,7 @@ static int sllin_kwthread(void *ptr) - hrtimer_start(&sl->rx_timer, - ktime_add(ktime_get(), sl->rx_timer_timeout), - HRTIMER_MODE_ABS); -+ netdev_dbg(sl->dev, "sllin_kthread: SLSTATE finish\n"); - break; - - case SLSTATE_BREAK_SENT: -@@ -1654,3 +1702,4 @@ static void __exit sllin_exit(void) - - module_init(sllin_init); - module_exit(sllin_exit); -+ diff --git a/recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch b/recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch deleted file mode 100644 index c8f2f9268..000000000 --- a/recipes-kernel/sllin/files/0003-Allow-recent-kernels-newer-4.11.x-to-build.patch +++ /dev/null @@ -1,69 +0,0 @@ -From fcebb8f510bbb5c681f1f9af4506b4de241837dd Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jan-Simon=20M=C3=B6ller?= -Date: Wed, 31 Oct 2018 20:48:20 +0000 -Subject: [PATCH] Allow recent kernels newer 4.11.x to build -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -API changes enforce porting. - -Signed-off-by: Jan-Simon Möller ---- - sllin/sllin.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - -diff --git a/sllin/sllin.c b/sllin/sllin.c -index 2969448..7e17127 100644 ---- a/sllin/sllin.c -+++ b/sllin/sllin.c -@@ -56,7 +56,12 @@ - #include - #include - #include -+#include -+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0) - #include -+#else -+#include -+#endif - #include - #include - #include -@@ -447,7 +451,9 @@ static int sll_open(struct net_device *dev) - static void sll_free_netdev(struct net_device *dev) - { - int i = dev->base_addr; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,9) - free_netdev(dev); -+#endif - sllin_devs[i] = NULL; - } - -@@ -460,7 +466,12 @@ static const struct net_device_ops sll_netdev_ops = { - static void sll_setup(struct net_device *dev) - { - dev->netdev_ops = &sll_netdev_ops; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,9) - dev->destructor = sll_free_netdev; -+#else -+ dev->needs_free_netdev = true; -+ dev->priv_destructor = sll_free_netdev; -+#endif - - dev->hard_header_len = 0; - dev->addr_len = 0; -@@ -1685,8 +1696,10 @@ static void __exit sllin_exit(void) - sl = netdev_priv(dev); - if (sl->tty) { - netdev_dbg(sl->dev, "tty discipline still running\n"); -+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,9) - /* Intentionally leak the control block. */ - dev->destructor = NULL; -+#endif - } - - unregister_netdev(dev); --- -2.13.7 - diff --git a/recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch b/recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch deleted file mode 100644 index f3bcda9fe..000000000 --- a/recipes-kernel/sllin/files/0004-Fix-build-with-5.9-kernel.patch +++ /dev/null @@ -1,48 +0,0 @@ -Use sched_set_fifo on newer kernels - -The 5.9 kernel removed the export of sched_setscheduler, use -the new sched_set_fifo API if building on 5.9 or newer. There -is a slight difference in resulting priority level, the new -API will yield a priority of 50 instead of the explicit value -of 40 being used with sched_setscheduler, but this should not -be an issue. - -Upstream-Status: Inappropriate [no upstream] -Signed-off-by: Scott Murray - ---- -diff --git a/sllin/sllin.c b/sllin/sllin.c -index 133d6e9..92c52ad 100644 ---- a/sllin/sllin.c -+++ b/sllin/sllin.c -@@ -1059,14 +1059,20 @@ static int sllin_kwthread(void *ptr) - { - struct sllin *sl = (struct sllin *)ptr; - struct tty_struct *tty = sl->tty; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5,9,0) - struct sched_param schparam = { .sched_priority = 40 }; -+#endif - int tx_bytes = 0; /* Used for Network statistics */ - unsigned long flags; - int lin_id; - struct sllin_conf_entry *sce; - - netdev_dbg(sl->dev, "sllin_kwthread started.\n"); -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5,9,0) - sched_setscheduler(current, SCHED_FIFO, &schparam); -+#else -+ sched_set_fifo(current); -+#endif - - clear_bit(SLF_ERROR, &sl->flags); - sltty_change_speed(tty, sl->lin_baud); -@@ -1274,8 +1280,8 @@ slstate_response_wait: - sl->lin_state = SLSTATE_RESPONSE_WAIT_BUS; - } - } -+ fallthrough; - -- /* Be aware, no BREAK here */ - case SLSTATE_RESPONSE_WAIT_BUS: - if (sl->rx_cnt < sl->rx_expect) - continue; diff --git a/recipes-kernel/sllin/files/lin_config.conf b/recipes-kernel/sllin/files/lin_config.conf deleted file mode 100644 index 9775b8b39..000000000 --- a/recipes-kernel/sllin/files/lin_config.conf +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - 33 - - - diff --git a/recipes-kernel/sllin/files/sllin-demo.service b/recipes-kernel/sllin/files/sllin-demo.service deleted file mode 100644 index e3e7432f3..000000000 --- a/recipes-kernel/sllin/files/sllin-demo.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=LIN demo configuration -ConditionPathExists=/dev/ttyUSB0 -After=afm-system-daemon.service -Before=can-dev-mapping-helper.service - -[Service] -Type=forking -PIDFile=/run/lin_config/lin_config.pid -ExecStart=/usr/bin/start_lin_demo.sh -RemainAfterExit=yes - -[Install] -WantedBy=multi-user.target diff --git a/recipes-kernel/sllin/files/start_lin_demo.sh b/recipes-kernel/sllin/files/start_lin_demo.sh deleted file mode 100755 index c7627ca74..000000000 --- a/recipes-kernel/sllin/files/start_lin_demo.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/sh - -# Attach serial LIN->CAN bridge and set up LIN polling -if [ -c /dev/ttyUSB0 ]; then - sleep 1 - /usr/bin/lin_config -c /etc/lin_config.conf -a sllin:/dev/ttyUSB0 - mkdir -p /run/lin_config/ - pidof lin_config > /run/lin_config/lin_config.pid - sleep 1 -else - ip link add dev sllin0 type vcan -fi -ip link set sllin0 up - -# Initialize HVAC controller -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 02A# -usleep 100000 -cansend sllin0 02B# -usleep 100000 -cansend sllin0 032#F0F8FFFFFFFFFFFF -usleep 100000 -cansend sllin0 032#F0F8FFFFFFFFFFFF -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 030# -usleep 100000 -cansend sllin0 02D# -usleep 100000 -cansend sllin0 02C# -usleep 100000 -cansend sllin0 02D# -usleep 100000 -cansend sllin0 02C# -usleep 100000 - diff --git a/recipes-kernel/sllin/sllin.bb b/recipes-kernel/sllin/sllin.bb deleted file mode 100644 index cc72b3095..000000000 --- a/recipes-kernel/sllin/sllin.bb +++ /dev/null @@ -1,45 +0,0 @@ -DESCRIPTION = "slLIN driver module" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://sllin.c;beginline=7;endline=37;md5=6408e14dba951f8cbe3c2a003a0d89d2" - -inherit module systemd - -DEPENDS = "virtual/kernel" - -SRC_URI = "git://github.com/trainman419/linux-lin.git;protocol=https" -SRCREV = "155d885e8ccc907a56f6c86c4b159fac27ef6fec" -S = "${WORKDIR}/git/sllin" - -PV = "0.1+git${SRCPV}" - -SRC_URI:append = " \ - file://0001_update_makefile.patch;pnum=2 \ - file://0002_fix_null_operation_check.patch;pnum=2 \ - file://0003-Allow-recent-kernels-newer-4.11.x-to-build.patch;pnum=2 \ - file://0001-Disable-sllin-driver-debug-log.patch;pnum=2 \ - file://0004-Fix-build-with-5.9-kernel.patch;pnum=2 \ - file://sllin-demo.service \ - file://start_lin_demo.sh \ - file://lin_config.conf \ -" - -KERNEL_MODULE_AUTOLOAD:append = " sllin" -KERNEL_MODULE_PROBECONF:append = " sllin" - -SLLINBAUDRATE ??= "9600" -module_conf_sllin = "options sllin baudrate=${SLLINBAUDRATE}" - -SYSTEMD_SERVICE:${PN} = "sllin-demo.service" - -do_install:append () { - install -d 644 ${D}/${bindir} - install -m 755 ${WORKDIR}/start_lin_demo.sh ${D}/${bindir}/start_lin_demo.sh - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/sllin-demo.service ${D}${systemd_system_unitdir}/ - install -d ${D}${sysconfdir} - install -m 0644 ${WORKDIR}/lin_config.conf ${D}${sysconfdir}/ -} - -FILES:${PN} += "${bindir}/start_lin_demo.sh ${sysconfdir}/lin_config.conf" - -RDEPENDS:${PN} += "lin-config" diff --git a/recipes-platform/images/agl-cluster-demo-platform-crosssdk.bb b/recipes-platform/images/agl-cluster-demo-platform-crosssdk.bb deleted file mode 100644 index 8251272cb..000000000 --- a/recipes-platform/images/agl-cluster-demo-platform-crosssdk.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "Cross SDK of AGL Distribution for Cluster profile Demo" - -DESCRIPTION = "SDK image for AGL Distribution for Cluster profile Demo. \ -It includes the full meta-toolchain, plus developement headers and libraries \ -to form a standalone cross SDK." - -require agl-cluster-demo-platform.bb - -LICENSE = "MIT" - -IMAGE_FEATURES:append = " dev-pkgs" -IMAGE_INSTALL:append = " kernel-dev kernel-devsrc" - -inherit populate_sdk populate_sdk_qt5 - -# Task do_populate_sdk and do_rootfs can't be exec simultaneously. -# Both exec "createrepo" on the same directory, and so one of them -# can failed (randomly). -addtask do_populate_sdk after do_rootfs - -# Add wayland-scanner to SDK (SPEC-945) -# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup -# wayland-scanner is in nativesdk-wayland-dev ! -# option: add also nativesdk-qtwayland-tools -TOOLCHAIN_HOST_TASK:append = " nativesdk-wayland nativesdk-wayland-dev" - -TOOLCHAIN_HOST_TASK:append = " nativesdk-perl-modules " diff --git a/recipes-platform/images/agl-cluster-demo-platform.bb b/recipes-platform/images/agl-cluster-demo-platform.bb deleted file mode 100644 index 2e8be720c..000000000 --- a/recipes-platform/images/agl-cluster-demo-platform.bb +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "AGL Cluster Demo Platform image currently contains a simple cluster interface." - -require agl-cluster-demo-platform.inc - -LICENSE = "MIT" - -IMAGE_FEATURES:append = "" - -# add packages for cluster demo platform (include demo apps) here -IMAGE_INSTALL:append = " \ - packagegroup-agl-cluster-demo-platform \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "cluster-dashboard-demo-config", "", d)} \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "weston-ini-conf-landscape-inverted", "weston-ini-conf-landscape", d)} \ - " - diff --git a/recipes-platform/images/agl-cluster-demo-platform.inc b/recipes-platform/images/agl-cluster-demo-platform.inc deleted file mode 100644 index 8745ca941..000000000 --- a/recipes-platform/images/agl-cluster-demo-platform.inc +++ /dev/null @@ -1,3 +0,0 @@ -# Base image -require recipes-platform/images/agl-image-cluster-qt5.inc - diff --git a/recipes-platform/images/agl-cluster-demo-qtcompositor.bb b/recipes-platform/images/agl-cluster-demo-qtcompositor.bb deleted file mode 100644 index 0e9afb9c2..000000000 --- a/recipes-platform/images/agl-cluster-demo-qtcompositor.bb +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "AGL Cluster Demo Qtwayland Compositor image currently contains a \ -simple cluster interface and some AGL service." - -require agl-cluster-demo-qtcompositor.inc - -LICENSE = "MIT" - -IMAGE_FEATURES:append = " \ - " - -# add packages for cluster demo qtcompositor -IMAGE_INSTALL:append = " \ - packagegroup-agl-cluster-demo-qtcompositor \ - " - diff --git a/recipes-platform/images/agl-cluster-demo-qtcompositor.inc b/recipes-platform/images/agl-cluster-demo-qtcompositor.inc deleted file mode 100644 index 11c1ebce9..000000000 --- a/recipes-platform/images/agl-cluster-demo-qtcompositor.inc +++ /dev/null @@ -1,2 +0,0 @@ -# Base image -require recipes-platform/images/agl-image-cluster-qt5.inc diff --git a/recipes-platform/images/agl-demo-platform-crosssdk.bb b/recipes-platform/images/agl-demo-platform-crosssdk.bb deleted file mode 100644 index 7f98b41a4..000000000 --- a/recipes-platform/images/agl-demo-platform-crosssdk.bb +++ /dev/null @@ -1,70 +0,0 @@ -SUMMARY = "Cross SDK of Full AGL Distribution for IVI profile" - -DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \ -It includes the full meta-toolchain, plus developement headers and libraries \ -to form a standalone cross SDK." - -require agl-demo-platform.bb - -LICENSE = "MIT" - -require agl-image-graphical-qt5-crosssdk.inc - -inherit populate_sdk populate_sdk_qt5 - -# Task do_populate_sdk and do_rootfs can't be exec simultaneously. -# Both exec "createrepo" on the same directory, and so one of them -# can failed (randomly). -addtask do_populate_sdk after do_rootfs - -# Add mosquitto to support building the telematics demo application. -# This is currently required for CI, as it uses agl-demo-platform-crosssdk -# to build everything. An agenda item has been tabled for the May 2019 F2F -# meeting to discuss the path forward (separate versus superset SDKs), this -# should be reviewed after that. -TOOLCHAIN_TARGET_TASK += "mosquitto-dev" - -# Add nlohmann-json to support building the speech services. -# Required until either the agl-speech-framework feature is added as a -# dependency of agl-demo, or the speech services are migrated into the -# core profile. -TOOLCHAIN_TARGET_TASK += "nlohmann-json-dev" - -# Add libstdc++-staticdev to support building agl-service-voice-high or -# other users of the C++17 filesystem standard library feature. -# Can be removed upon upgrade to gcc 9.x, as it will no longer be necessary. -TOOLCHAIN_TARGET_TASK += "libstdc++-staticdev" - -# Add gcc-sanitizers to support building applications using the SDK with -# AddressSanitizer support to detect use-after-frees along with other -# memory issue. -TOOLCHAIN_TARGET_TASK += "gcc-sanitizers" - -# Add azure-iot-sdk-c to support building agl-service-cloudproxy -# and other users of Azure sdk. -TOOLCHAIN_TARGET_TASK += "azure-iot-sdk-c umock-c" - -# Add mbedTLS to support building aws-iot-device-sdk-embedded-c -TOOLCHAIN_TARGET_TASK += "mbedtls" - -# Add aws-iot-device-embedded-c sdk to support building agl-service-cloudproxy -# and other users of AWS sdk. -# These packages are required to add static library and headers: -TOOLCHAIN_TARGET_TASK += "aws-iot-device-sdk-embedded-c-staticdev" -TOOLCHAIN_TARGET_TASK += "aws-iot-device-sdk-embedded-c-dev" - -TOOLCHAIN_TARGET_TASK += "waltham-dev" - - -# Required dependencies for app and test builds -TOOLCHAIN_HOST_TASK += " \ - nativesdk-lua \ - " - -# Required dependencies for app and test builds -TOOLCHAIN_TARGET_TASK += " \ - lua-dev \ - lua-staticdev \ - libafb-helpers-staticdev \ - libappcontroller-staticdev \ - " \ No newline at end of file diff --git a/recipes-platform/images/agl-demo-platform-html5.bb b/recipes-platform/images/agl-demo-platform-html5.bb deleted file mode 100644 index a78b8b68b..000000000 --- a/recipes-platform/images/agl-demo-platform-html5.bb +++ /dev/null @@ -1,14 +0,0 @@ -SUMMARY = "DEMO platform of AGL HTML5 profile" -DESCRIPTION = "Contains the web runtime and sample web apps" - -require agl-demo-platform.inc - -LICENSE = "MIT" - -IMAGE_FEATURES:append = " \ - " - -# add packages for demo platform (include demo apps) here -IMAGE_INSTALL:append = " \ - packagegroup-agl-demo-platform-html5 \ - " diff --git a/recipes-platform/images/agl-demo-platform-qa.bb b/recipes-platform/images/agl-demo-platform-qa.bb deleted file mode 100644 index 05598ca79..000000000 --- a/recipes-platform/images/agl-demo-platform-qa.bb +++ /dev/null @@ -1,13 +0,0 @@ -SUMMARY = "A full set of AGL Distribution for testing as Quality Assurance" - -DESCRIPTION = "A full set of AGL Distribution. This image also has additional \ -packages (e.g. commandline tools) for Quality Assurance(QA)." - -LICENSE = "MIT" - -require agl-demo-platform.bb - -IMAGE_INSTALL:append = " \ - packagegroup-ivi-common-test \ - packagegroup-agl-demo-platform-qa \ - " diff --git a/recipes-platform/images/agl-demo-platform.bb b/recipes-platform/images/agl-demo-platform.bb deleted file mode 100644 index 5643d4dad..000000000 --- a/recipes-platform/images/agl-demo-platform.bb +++ /dev/null @@ -1,20 +0,0 @@ -DESCRIPTION = "AGL Demo Platform image currently contains a simple HMI and \ -demos." - -require agl-demo-platform.inc - -LICENSE = "MIT" - -# The demo will not work on the pi3 due to the gfx memory -# and the applications requiring FHD (SPEC-390) -COMPATIBLE_MACHINE:raspberrypi3 = "(^$)" - -# Always include the test widgets -IMAGE_FEATURES:append = " agl-test-wgt" - -# add packages for demo platform (include demo apps) here -IMAGE_INSTALL:append = " \ - packagegroup-agl-demo-platform \ - distro-build-manifest \ - " - diff --git a/recipes-platform/images/agl-demo-platform.inc b/recipes-platform/images/agl-demo-platform.inc deleted file mode 100644 index e901409a3..000000000 --- a/recipes-platform/images/agl-demo-platform.inc +++ /dev/null @@ -1,8 +0,0 @@ -# Base image -require agl-image-ivi.inc - -# Pull in speech framework bits -IMAGE_FEATURES += "agl-speech-framework" - -# Pull in Alexa voiceagent if configured -IMAGE_FEATURES += "${@bb.utils.filter("AGL_FEATURES", "agl-voiceagent-alexa", d)}" diff --git a/recipes-platform/images/agl-image-cluster-qt5.bb b/recipes-platform/images/agl-image-cluster-qt5.bb deleted file mode 100644 index ec4c9876d..000000000 --- a/recipes-platform/images/agl-image-cluster-qt5.bb +++ /dev/null @@ -1,9 +0,0 @@ -SUMMARY = "A basic Wayland based cluster image with Qt5 support" - -require agl-image-cluster-qt5.inc - -LICENSE = "MIT" - -IMAGE_INSTALL:append = "\ - profile-cluster-qt5 \ - " diff --git a/recipes-platform/images/agl-image-cluster-qt5.inc b/recipes-platform/images/agl-image-cluster-qt5.inc deleted file mode 100644 index 93826aa46..000000000 --- a/recipes-platform/images/agl-image-cluster-qt5.inc +++ /dev/null @@ -1,7 +0,0 @@ -require recipes-platform/images/agl-image-boot.inc - -IMAGE_FEATURES += "splash package-management ssh-server-dropbear" - -inherit features_check - -REQUIRED_DISTRO_FEATURES = "wayland" diff --git a/recipes-platform/images/agl-image-cluster.bb b/recipes-platform/images/agl-image-cluster.bb deleted file mode 100644 index c4e33e332..000000000 --- a/recipes-platform/images/agl-image-cluster.bb +++ /dev/null @@ -1,9 +0,0 @@ -SUMMARY = "A basic Wayland based cluster image" - -require agl-image-cluster.inc - -LICENSE = "MIT" - -IMAGE_INSTALL:append = "\ - profile-cluster \ - " diff --git a/recipes-platform/images/agl-image-cluster.inc b/recipes-platform/images/agl-image-cluster.inc deleted file mode 100644 index 93826aa46..000000000 --- a/recipes-platform/images/agl-image-cluster.inc +++ /dev/null @@ -1,7 +0,0 @@ -require recipes-platform/images/agl-image-boot.inc - -IMAGE_FEATURES += "splash package-management ssh-server-dropbear" - -inherit features_check - -REQUIRED_DISTRO_FEATURES = "wayland" diff --git a/recipes-platform/images/agl-image-graphical-html5.bb b/recipes-platform/images/agl-image-graphical-html5.bb index 4ca67634a..c25a92750 100644 --- a/recipes-platform/images/agl-image-graphical-html5.bb +++ b/recipes-platform/images/agl-image-graphical-html5.bb @@ -1,6 +1,15 @@ SUMMARY = "An image containing all packages required to run web applications" -require agl-image-graphical-html5.inc +require recipes-platform/images/agl-image-minimal.inc + +IMAGE_FEATURES += "splash" + +IMAGE_FEATURES += "${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'ssh-server-dropbear' , '', d)}" + +inherit features_check + +REQUIRED_DISTRO_FEATURES = "wayland" + LICENSE = "MIT" diff --git a/recipes-platform/images/agl-image-graphical-html5.inc b/recipes-platform/images/agl-image-graphical-html5.inc deleted file mode 100644 index e943b9903..000000000 --- a/recipes-platform/images/agl-image-graphical-html5.inc +++ /dev/null @@ -1,9 +0,0 @@ -require recipes-platform/images/agl-image-minimal.inc - -IMAGE_FEATURES += "splash" - -IMAGE_FEATURES += "${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'ssh-server-dropbear' , '', d)}" - -inherit features_check - -REQUIRED_DISTRO_FEATURES = "wayland" diff --git a/recipes-platform/images/agl-image-graphical-qt5-crosssdk.bb b/recipes-platform/images/agl-image-graphical-qt5-crosssdk.bb index 5147ea44a..596ac80eb 100755 --- a/recipes-platform/images/agl-image-graphical-qt5-crosssdk.bb +++ b/recipes-platform/images/agl-image-graphical-qt5-crosssdk.bb @@ -4,11 +4,25 @@ DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \ It includes the full meta-toolchain, plus developement headers and libraries \ to form a standalone cross SDK." -require agl-image-graphical-qt5.bb +#require agl-image-graphical-qt5.bb +require recipes-platform/images/agl-image-weston.inc + LICENSE = "MIT" -require agl-image-graphical-qt5-crosssdk.inc +require recipes-platform/images/agl-image-minimal-crosssdk.inc + +# Add wayland-scanner to SDK (SPEC-945) +# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup +# wayland-scanner is in nativesdk-wayland-dev ! +# option: add also nativesdk-qtwayland-tools +TOOLCHAIN_HOST_TASK:append = " nativesdk-wayland nativesdk-wayland-dev" + +TOOLCHAIN_HOST_TASK:append = " nativesdk-perl-modules " + +# Add qtwaylandscanner to the SDK +TOOLCHAIN_HOST_TASK:append = " nativesdk-qtwayland-tools " + inherit populate_sdk populate_sdk_qt5 diff --git a/recipes-platform/images/agl-image-graphical-qt5-crosssdk.inc b/recipes-platform/images/agl-image-graphical-qt5-crosssdk.inc deleted file mode 100644 index 760cbac05..000000000 --- a/recipes-platform/images/agl-image-graphical-qt5-crosssdk.inc +++ /dev/null @@ -1,14 +0,0 @@ -require recipes-platform/images/agl-image-minimal-crosssdk.inc - -TOOLCHAIN_TARGET_TASK += "libafb-helpers-qt-staticdev" - -# Add wayland-scanner to SDK (SPEC-945) -# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup -# wayland-scanner is in nativesdk-wayland-dev ! -# option: add also nativesdk-qtwayland-tools -TOOLCHAIN_HOST_TASK:append = " nativesdk-wayland nativesdk-wayland-dev" - -TOOLCHAIN_HOST_TASK:append = " nativesdk-perl-modules " - -# Add qtwaylandscanner to the SDK -TOOLCHAIN_HOST_TASK:append = " nativesdk-qtwayland-tools " diff --git a/recipes-platform/images/agl-image-graphical-qt5.bb b/recipes-platform/images/agl-image-graphical-qt5.bb deleted file mode 100644 index bcfd724fa..000000000 --- a/recipes-platform/images/agl-image-graphical-qt5.bb +++ /dev/null @@ -1,5 +0,0 @@ -SUMMARY = "A very basic Wayland image with a terminal" - -require agl-image-graphical-qt5.inc - -LICENSE = "MIT" diff --git a/recipes-platform/images/agl-image-graphical-qt5.inc b/recipes-platform/images/agl-image-graphical-qt5.inc deleted file mode 100644 index 114d06a07..000000000 --- a/recipes-platform/images/agl-image-graphical-qt5.inc +++ /dev/null @@ -1 +0,0 @@ -require recipes-platform/images/agl-image-weston.inc diff --git a/recipes-platform/images/agl-image-ivi-crosssdk.bb b/recipes-platform/images/agl-image-ivi-crosssdk.bb index 72bf8f7b0..9636b609e 100644 --- a/recipes-platform/images/agl-image-ivi-crosssdk.bb +++ b/recipes-platform/images/agl-image-ivi-crosssdk.bb @@ -1,5 +1,16 @@ require recipes-platform/images/agl-image-minimal-crosssdk.inc -require agl-image-ivi.inc + +require recipes-platform/images/agl-image-minimal.inc + +IMAGE_INSTALL:append = "\ + packagegroup-agl-image-ivi \ + packagegroup-agl-ivi-services \ + ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'packagegroup-pipewire', '', d)} \ + can-utils \ + iproute2 \ + " + +IMAGE_FEATURES += "splash package-management ssh-server-dropbear" inherit populate_sdk diff --git a/recipes-platform/images/agl-image-ivi-qa.bb b/recipes-platform/images/agl-image-ivi-qa.bb deleted file mode 100644 index 2a1dd1a09..000000000 --- a/recipes-platform/images/agl-image-ivi-qa.bb +++ /dev/null @@ -1,14 +0,0 @@ -SUMMARY = "A basic system of AGL distribution of IVI profile for Quality Assurance(QA)" - -DESCRIPTION = "A basic set of AGL Distribution. This image also has additional \ -packages (e.g. commandline tools) for Quality Assurance(QA)." - -require agl-image-ivi.bb - -LICENSE = "MIT" - -IMAGE_INSTALL:append = " \ - packagegroup-agl-test \ - packagegroup-ivi-common-test \ - " - diff --git a/recipes-platform/images/agl-image-ivi.bb b/recipes-platform/images/agl-image-ivi.bb index b3c72de0c..198d3fe33 100644 --- a/recipes-platform/images/agl-image-ivi.bb +++ b/recipes-platform/images/agl-image-ivi.bb @@ -2,7 +2,18 @@ SUMMARY = "A basic system of AGL distribution of IVI profile" DESCRIPTION = "Basic image for baseline of AGL Distribution for IVI profile." -require agl-image-ivi.inc +require recipes-platform/images/agl-image-minimal.inc + +IMAGE_INSTALL:append = "\ + packagegroup-agl-image-ivi \ + packagegroup-agl-ivi-services \ + ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'packagegroup-pipewire', '', d)} \ + can-utils \ + iproute2 \ + " + +IMAGE_FEATURES += "splash package-management ssh-server-dropbear" + LICENSE = "MIT" diff --git a/recipes-platform/images/agl-image-ivi.inc b/recipes-platform/images/agl-image-ivi.inc deleted file mode 100644 index 0f6b1e553..000000000 --- a/recipes-platform/images/agl-image-ivi.inc +++ /dev/null @@ -1,15 +0,0 @@ -require recipes-platform/images/agl-image-minimal.inc - -IMAGE_INSTALL:append = "\ - packagegroup-agl-image-ivi \ - packagegroup-agl-ivi-services \ - agl-service-homescreen \ - agl-service-weather \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'packagegroup-pipewire', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'agl-service-mediaplayer', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'agl-service-radio', '', d)} \ - can-utils \ - iproute2 \ - " - -IMAGE_FEATURES += "splash package-management ssh-server-dropbear" diff --git a/recipes-platform/images/agl-image-telematics.bb b/recipes-platform/images/agl-image-telematics.bb deleted file mode 100644 index 94dd60986..000000000 --- a/recipes-platform/images/agl-image-telematics.bb +++ /dev/null @@ -1,9 +0,0 @@ -SUMMARY = "A basic telematics image" - -require agl-image-telematics.inc - -LICENSE = "MIT" - -IMAGE_INSTALL:append = "\ - profile-telematics \ - " diff --git a/recipes-platform/images/agl-image-telematics.inc b/recipes-platform/images/agl-image-telematics.inc deleted file mode 100644 index 3e951550e..000000000 --- a/recipes-platform/images/agl-image-telematics.inc +++ /dev/null @@ -1,5 +0,0 @@ -require recipes-platform/images/agl-image-boot.inc - -inherit features_check - -REQUIRED_DISTRO_FEATURES = "3g" diff --git a/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb b/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb new file mode 100644 index 000000000..490047635 --- /dev/null +++ b/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb @@ -0,0 +1,59 @@ +SUMMARY = "Cross SDK of Full AGL Distribution for IVI profile" + +DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \ +It includes the full meta-toolchain, plus developement headers and libraries \ +to form a standalone cross SDK." + + +# add packages for demo platform (include demo apps) here +IMAGE_INSTALL:append = " \ + packagegroup-agl-demo-platform \ + " + +LICENSE = "MIT" + +#require agl-image-graphical-qt5-crosssdk.inc +require recipes-platform/images/agl-image-weston.inc +require recipes-platform/images/agl-image-minimal-crosssdk.inc + +# Add wayland-scanner to SDK (SPEC-945) +# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup +# wayland-scanner is in nativesdk-wayland-dev ! +# option: add also nativesdk-qtwayland-tools +TOOLCHAIN_HOST_TASK:append = " nativesdk-wayland nativesdk-wayland-dev" + +TOOLCHAIN_HOST_TASK:append = " nativesdk-perl-modules " + +# Add qtwaylandscanner to the SDK +TOOLCHAIN_HOST_TASK:append = " nativesdk-qtwayland-tools " + + +# Task do_populate_sdk and do_rootfs can't be exec simultaneously. +# Both exec "createrepo" on the same directory, and so one of them +# can failed (randomly). +addtask do_populate_sdk after do_rootfs + +inherit populate_sdk populate_sdk_qt5 + +# Task do_populate_sdk and do_rootfs can't be exec simultaneously. +# Both exec "createrepo" on the same directory, and so one of them +# can failed (randomly). +addtask do_populate_sdk after do_rootfs + +# Add gcc-sanitizers to support building applications using the SDK with +# AddressSanitizer support to detect use-after-frees along with other +# memory issue. +TOOLCHAIN_TARGET_TASK += "gcc-sanitizers" + +TOOLCHAIN_TARGET_TASK += "waltham-dev" + + +TOOLCHAIN_HOST_TASK += " \ + nativesdk-lua \ + " + +# Required dependencies for app and test builds +TOOLCHAIN_TARGET_TASK += " \ + lua-dev \ + lua-staticdev \ + " \ No newline at end of file diff --git a/recipes-platform/images/agl-ivi-demo-platform-html5.bb b/recipes-platform/images/agl-ivi-demo-platform-html5.bb new file mode 100644 index 000000000..bef66eb32 --- /dev/null +++ b/recipes-platform/images/agl-ivi-demo-platform-html5.bb @@ -0,0 +1,14 @@ +SUMMARY = "DEMO platform of AGL HTML5 profile" +DESCRIPTION = "Contains the web runtime and sample web apps" + +require agl-image-ivi.bb + +LICENSE = "MIT" + +IMAGE_FEATURES:append = " \ + " + +# add packages for demo platform (include demo apps) here +IMAGE_INSTALL:append = " \ + packagegroup-agl-demo-platform-html5 \ + " diff --git a/recipes-platform/images/agl-ivi-demo-platform.bb b/recipes-platform/images/agl-ivi-demo-platform.bb new file mode 100644 index 000000000..78a6b2c24 --- /dev/null +++ b/recipes-platform/images/agl-ivi-demo-platform.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "AGL Demo Platform image currently contains a simple HMI and \ +demos." + +require agl-image-ivi.bb + + +LICENSE = "MIT" + +# add packages for demo platform (include demo apps) here +IMAGE_INSTALL:append = " \ + packagegroup-agl-demo-platform \ + " + diff --git a/recipes-platform/images/agl-telematics-demo-platform-crosssdk.bb b/recipes-platform/images/agl-telematics-demo-platform-crosssdk.bb deleted file mode 100644 index a3efec425..000000000 --- a/recipes-platform/images/agl-telematics-demo-platform-crosssdk.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "Cross SDK of AGL Distribution for telematics profile Demo" - -DESCRIPTION = "SDK image for AGL Distribution for Telematics profile Demo. \ -It includes the full meta-toolchain, plus developement headers and libraries \ -to form a standalone cross SDK." - -require agl-telematics-demo-platform.bb - -LICENSE = "MIT" - -IMAGE_FEATURES:append = " dev-pkgs" -IMAGE_INSTALL:append = " kernel-dev kernel-devsrc" - -inherit populate_sdk - -# Task do_populate_sdk and do_rootfs can't be exec simultaneously. -# Both exec "createrepo" on the same directory, and so one of them -# can failed (randomly). -addtask do_populate_sdk after do_rootfs - -TOOLCHAIN_HOST_TASK:append = " nativesdk-perl-modules " diff --git a/recipes-platform/images/agl-telematics-demo-platform.bb b/recipes-platform/images/agl-telematics-demo-platform.bb deleted file mode 100644 index 41ae11b33..000000000 --- a/recipes-platform/images/agl-telematics-demo-platform.bb +++ /dev/null @@ -1,13 +0,0 @@ -DESCRIPTION = "AGL Telematics Demo Platform image." - -require agl-telematics-demo-platform.inc - -LICENSE = "MIT" - -IMAGE_FEATURES:append = " \ - " - -IMAGE_INSTALL:append = " \ - packagegroup-agl-telematics-demo-platform \ - " - diff --git a/recipes-platform/images/agl-telematics-demo-platform.inc b/recipes-platform/images/agl-telematics-demo-platform.inc deleted file mode 100644 index bd3a89ee1..000000000 --- a/recipes-platform/images/agl-telematics-demo-platform.inc +++ /dev/null @@ -1,3 +0,0 @@ -# Base image -require recipes-platform/images/agl-image-telematics.inc - diff --git a/recipes-platform/packagegroups/nativesdk-packagegroup-sdk-host.bbappend b/recipes-platform/packagegroups/nativesdk-packagegroup-sdk-host.bbappend deleted file mode 100644 index 9476fac5e..000000000 --- a/recipes-platform/packagegroups/nativesdk-packagegroup-sdk-host.bbappend +++ /dev/null @@ -1,6 +0,0 @@ -RDEPENDS:${PN} =+ "nativesdk-af-main-tools nativesdk-af-binder-devtools" -RDEPENDS:${PN} += "nativesdk-low-level-can-generator \ - nativesdk-cmake-apps-module \ - nativesdk-cmake-apps-module-doc \ -" - diff --git a/recipes-platform/packagegroups/packagegroup-agl-app-framework.bbappend b/recipes-platform/packagegroups/packagegroup-agl-app-framework.bbappend deleted file mode 100644 index bb9f0f9d7..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-app-framework.bbappend +++ /dev/null @@ -1 +0,0 @@ -RDEPENDS:${PN}:append = " systemd-agl-sync run-agl-postinsts" diff --git a/recipes-platform/packagegroups/packagegroup-agl-appfw-html5.bb b/recipes-platform/packagegroups/packagegroup-agl-appfw-html5.bb deleted file mode 100644 index 6fed7e7d8..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-appfw-html5.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "AGL web runtime packages" -DESCRIPTION = "Specific packages for the AGL web runtime (minus profile-graphical)" - -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-appfw-html5 \ - " - -ALLOW_EMPTY:${PN} = "1" - -# add packages for WAM -RDEPENDS:${PN} += " \ - chromium-browser-service \ - wam \ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-appfw-native-qt5.bb b/recipes-platform/packagegroups/packagegroup-agl-appfw-native-qt5.bb deleted file mode 100644 index 151245d5d..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-appfw-native-qt5.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Qt5 for native GUI framework of AGL IVI profile" -DESCRIPTION = "A set of Qt5 packages which required by Native App Fw Subsystem" - -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-appfw-native-qt5 \ - " - -#ALLOW_EMPTY:${PN} = "1" - -RDEPENDS:${PN} += "\ - qtbase \ - qtbase-dev \ - qtbase-plugins \ - qtbase-staticdev \ - qtbase-tools \ - qtdeclarative \ - qtdeclarative-qmlplugins \ - qtdeclarative-tools \ - qtcharts \ - qtwayland \ - qtwayland-plugins \ - qtwayland-tools \ - qtgraphicaleffects-qmlplugins \ - qtvirtualkeyboard \ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-cluster-demo-platform.bb b/recipes-platform/packagegroups/packagegroup-agl-cluster-demo-platform.bb deleted file mode 100644 index 681a04370..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-cluster-demo-platform.bb +++ /dev/null @@ -1,40 +0,0 @@ -SUMMARY = "The software for demo platform of AGL cluster profile" -DESCRIPTION = "A set of packages belong to AGL Cluster Demo Platform" - -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-cluster-demo-platform \ - " - -ALLOW_EMPTY:${PN} = "1" - -RDEPENDS:${PN} += "\ - packagegroup-agl-profile-cluster-qt5 \ - packagegroup-agl-ttf-fonts \ - packagegroup-agl-source-han-sans-ttf-fonts \ - packagegroup-agl-networking \ - " - - -AGL_APPS = " \ - cluster-dashboard \ - cluster-receiver \ - qt-cluster-receiver \ - " - -AGL_APIS = " \ - agl-service-can-low-level \ - agl-service-gps \ - agl-service-signal-composer \ - " - -RDEPENDS:${PN}:append = " \ - hmi-debug \ - can-utils \ - linux-firmware-ralink \ - ${AGL_APPS} \ - ${AGL_APIS} \ -" diff --git a/recipes-platform/packagegroups/packagegroup-agl-cluster-demo-qtcompositor.bb b/recipes-platform/packagegroups/packagegroup-agl-cluster-demo-qtcompositor.bb deleted file mode 100644 index 6a1455e99..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-cluster-demo-qtcompositor.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "The software for AGL Cluster Demo Qtwayland Compositor" -DESCRIPTION = "A set of packages belong to AGL Cluster Demo Qtwayland Compositor" - -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-cluster-demo-qtcompositor \ - " - -ALLOW_EMPTY:${PN} = "1" - -RDEPENDS:${PN} += "\ - packagegroup-agl-profile-cluster-qtcompositor \ - packagegroup-agl-ttf-fonts \ - packagegroup-agl-networking \ - " - -AGL_SERVICE = " \ - agl-service-bluetooth \ - agl-service-can-low-level \ - agl-service-data-persistence \ - agl-service-gps \ - agl-service-network \ - agl-service-unicens \ - agl-service-hvac \ - agl-service-nfc \ - agl-service-identity-agent \ - " - -AGL_APPS = " \ - cluster-gauges-qtcompositor \ - " - -RDEPENDS:${PN}:append = " \ - libva-utils \ - linux-firmware-ralink \ - can-utils \ - most \ - ${AGL_SERVICE} \ - ${AGL_APPS} \ -" diff --git a/recipes-platform/packagegroups/packagegroup-agl-core-devel.bbappend b/recipes-platform/packagegroups/packagegroup-agl-core-devel.bbappend deleted file mode 100644 index 37414a170..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-core-devel.bbappend +++ /dev/null @@ -1,10 +0,0 @@ -RDEPENDS:${PN}:append = "\ - pyagl \ - gcov \ - gcov-symlinks \ - gcovr \ - gcovr-wrapper \ - jq \ - htop \ - tree \ -" diff --git a/recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb b/recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb deleted file mode 100644 index ac82d73c7..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb +++ /dev/null @@ -1,34 +0,0 @@ -SUMMARY = "The software for DEMO platform of AGL HTML5 profile" -DESCRIPTION = "Packages required to demo the HTML5 profile and sample web apps" - -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-demo-platform-html5 \ - " - -ALLOW_EMPTY:${PN} = "1" - -RDEPENDS:${PN} += "\ - packagegroup-agl-image-ivi \ - packagegroup-agl-profile-graphical-html5 \ - packagegroup-agl-demo \ - " - -AGL_APPS = " \ - html5-homescreen \ - html5-launcher \ - html5-hvac \ - html5-settings \ - html5-mixer \ - html5-mediaplayer \ - html5-dashboard \ - html5-background \ - " - -RDEPENDS:${PN}:append = " \ - weston-ini-conf-landscape \ - ${AGL_APPS} \ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-demo-platform-qa.bb b/recipes-platform/packagegroups/packagegroup-agl-demo-platform-qa.bb deleted file mode 100644 index ca4cf1571..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-demo-platform-qa.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "The software for DEMO platform of AGL IVI profile" -DESCRIPTION = "A set of packages belong to AGL Demo Platform includes utilities for testing distribution as Quality Assurance" - -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-demo-platform-qa \ - " - -ALLOW_EMPTY:${PN} = "1" - -RDEPENDS:${PN} += "\ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-demo-platform.bb b/recipes-platform/packagegroups/packagegroup-agl-demo-platform.bb index 6fec1fc5c..baffeb296 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-demo-platform.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-demo-platform.bb @@ -23,38 +23,6 @@ RDEPENDS:${PN} += "\ packagegroup-agl-demo \ " -AGL_APPS = " \ - dashboard \ - hvac \ - mediaplayer \ - virtual/navigation \ - phone \ - poiapp \ - radio \ - settings \ - messaging \ - ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'taskmanager' , '', d)} \ - ${@bb.utils.contains('AGL_FEATURES', 'waltham-remoting', 'waltham waltham-transmitter-plugin' , '', d)} \ - virtual/mixer \ - virtual/qtwayland-config \ - " - -QTAGLEXTRAS = " libqtappfw" - -# add support for websocket in Qt and QML -QTAGLEXTRAS:append = " qtwebsockets qtwebsockets-qmlplugins" -#PREFERRED_PROVIDER_virtual/webruntime = "web-runtime" - -# Cluster demo support. -# ATM no cluster map viewer is supported with the older navigation application. -MAPVIEWER = "${@bb.utils.contains("PREFERRED_RPROVIDER_virtual/navigation", "ondemandnavi", "tbtnavi", "",d)}" -CLUSTER_SUPPORT_PACKAGES = " \ - ${MAPVIEWER} \ - cluster-demo-network-config \ - cluster-lin-bridging-config \ - cluster-demo-simulator \ -" -CLUSTER_SUPPORT = "${@bb.utils.contains("AGL_FEATURES", "agl-cluster-demo-support", "${CLUSTER_SUPPORT_PACKAGES}", "",d)}" DEMO_UNIT_CONF ?= "" # Hook for demo platform configuration @@ -71,9 +39,6 @@ RDEPENDS:${PN}:append = " \ qtquickcontrols2-agl \ qtquickcontrols2-agl-style \ ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'unzip' , '', d)} \ - ${AGL_APPS} \ - ${QTAGLEXTRAS} \ - ${CLUSTER_SUPPORT} \ ${DEMO_PRELOAD} \ " @@ -84,15 +49,4 @@ RDEPENDS:${PN}:append = " \ # names from the virtual/ RPROVIDES at present. RDEPENDS:${PN}-devel = " \ packagegroup-hmi-framework-devel \ - dashboard-dbg \ - hvac-dbg \ - mediaplayer-dbg \ - mixer-dbg \ - phone-dbg \ - ondemandnavi-dbg \ - poiapp-dbg \ - radio-dbg \ - settings-dbg \ - messaging-dbg \ - taskmanager-dbg \ " diff --git a/recipes-platform/packagegroups/packagegroup-agl-demo-qt-examples.bb b/recipes-platform/packagegroups/packagegroup-agl-demo-qt-examples.bb deleted file mode 100644 index f928d6527..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-demo-qt-examples.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "The examples to test Qt5 on AGL Demo Platform" -DESCRIPTION = "A set of packages which contains Qt5 examples" - -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-demo-qt-examples \ - " - -ALLOW_EMPTY:${PN} = "1" - -RDEPENDS:${PN} += "\ - qt3d-examples \ - qtbase-examples \ - qtconnectivity-examples \ - qtdeclarative-examples \ - qtlocation-examples \ - qtmultimedia-examples \ - qtsensors-examples \ - qtsystems-examples \ - qttools-examples \ - qtwayland-examples \ - qtxmlpatterns-examples \ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-demo.bb b/recipes-platform/packagegroups/packagegroup-agl-demo.bb index 48b605dbd..b0db220fc 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-demo.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-demo.bb @@ -11,30 +11,6 @@ PACKAGES = "\ ALLOW_EMPTY:${PN} = "1" -# MOST out-of-tree kernel drivers -################################# -MOST_DRIVERS ??= " \ - most \ - " -# These boards use different kernels - needs to be checked -MOST_DRIVERS_dragonboard-410c ?= "" -MOST_DRIVERS_cyclone5 ?= "" - - -# HVAC dependencies -################### -LIN_DRIVERS ??= " sllin" -# These boards use different kernels - needs to be checked -LIN_DRIVERS_dra7xx-evm ?= "" -LIN_DRIVERS_dragonboard-410c ?= "" - -# UNICENS service -UNICENS ?= " \ - unicens-config \ - agl-service-unicens \ - agl-service-unicens-controller \ - " - # Hook for demo platform configuration # ATM, only used to disable btwilink module on [MH]3ULCB + Kingfisher by default, # setting DEMO_ENABLE_BTWILINK to "true" in local.conf / site.conf re-enables. @@ -66,9 +42,6 @@ RDEPENDS:${PN} += " \ can-utils \ cannelloni \ iproute2 \ - ${UNICENS} \ - ${MOST_DRIVERS} \ - ${LIN_DRIVERS} \ ${DEMO_PLATFORM_CONF} \ ${TTF_FONTS} \ ${@bb.utils.contains('DISTRO_FEATURES', 'webruntime', 'virtual/webruntime', '', d)} \ diff --git a/recipes-platform/packagegroups/packagegroup-agl-graphical-services.bb b/recipes-platform/packagegroups/packagegroup-agl-graphical-services.bb deleted file mode 100644 index 9152dc4ac..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-graphical-services.bb +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "The minimal set of packages for Connectivity Subsystem" -LICENSE = "MIT" - -inherit packagegroup - -PACKAGES = "\ - packagegroup-agl-graphical-services \ - " - -ALLOW_EMPTY:${PN} = "1" - -RDEPENDS:${PN} = "\ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'agl-service-mediaplayer', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'agl-service-radio', '', d)} \ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-graphical-weston_agldemo.inc b/recipes-platform/packagegroups/packagegroup-agl-graphical-weston_agldemo.inc index 83b5c3497..c2250c6f2 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-graphical-weston_agldemo.inc +++ b/recipes-platform/packagegroups/packagegroup-agl-graphical-weston_agldemo.inc @@ -1,7 +1,3 @@ RDEPENDS:${PN} += " \ agl-compositor \ " -# appfw -RDEPENDS:${PN} += " \ - agl-login-manager \ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-image-ivi.bb b/recipes-platform/packagegroups/packagegroup-agl-image-ivi.bb index 1f912be22..ea165effb 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-image-ivi.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-image-ivi.bb @@ -21,6 +21,3 @@ RDEPENDS:${PN} += "\ packagegroup-agl-ivi-navigation \ " -RDEPENDS:${PN} += "\ - agl-login-manager \ - " diff --git a/recipes-platform/packagegroups/packagegroup-agl-ivi-connectivity.bbappend b/recipes-platform/packagegroups/packagegroup-agl-ivi-connectivity.bbappend index dcff983b2..0551c4e91 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-ivi-connectivity.bbappend +++ b/recipes-platform/packagegroups/packagegroup-agl-ivi-connectivity.bbappend @@ -1,5 +1,4 @@ RDEPENDS:${PN} += "\ - agl-service-nfc \ " diff --git a/recipes-platform/packagegroups/packagegroup-agl-ivi-identity.bb b/recipes-platform/packagegroups/packagegroup-agl-ivi-identity.bb index b5549a0dc..c81aa8072 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-ivi-identity.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-ivi-identity.bb @@ -1,8 +1,6 @@ inherit packagegroup RDEPENDS:${PN} += "\ - agl-service-data-persistence \ - agl-service-identity-agent \ " LICENSE = "MIT" diff --git a/recipes-platform/packagegroups/packagegroup-agl-ivi-services.bb b/recipes-platform/packagegroups/packagegroup-agl-ivi-services.bb index 39e77fabd..213b47576 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-ivi-services.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-ivi-services.bb @@ -8,26 +8,4 @@ PACKAGES = "\ " RDEPENDS:${PN} += "\ - agl-service-bluetooth \ - agl-service-bluetooth-map \ - agl-service-bluetooth-pbap \ - agl-service-can-low-level \ - agl-service-geoclue \ - agl-service-geofence \ - agl-service-gps \ - agl-service-hvac \ - agl-service-identity-agent \ - agl-service-iiodevices \ - agl-service-mediascanner \ - agl-service-navigation \ - agl-service-nfc \ - agl-service-signal-composer \ - agl-service-telephony \ - agl-service-unicens \ - agl-service-unicens-controller \ - agl-service-weather \ - ${@bb.utils.contains('AGL_CLOUDPROXY_WANTED','1', 'agl-service-cloudproxy libcloudproxy', '', d)} \ - agl-service-data-persistence \ - agl-service-network \ - agl-service-platform-info \ " diff --git a/recipes-platform/packagegroups/packagegroup-agl-profile-cluster-qtcompositor.bb b/recipes-platform/packagegroups/packagegroup-agl-profile-cluster-qtcompositor.bb index c004f48aa..ae1ad96be 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-profile-cluster-qtcompositor.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-profile-cluster-qtcompositor.bb @@ -30,7 +30,6 @@ QT_LITE = " \ RDEPENDS:${PN}:append = " \ ${QT_LITE} \ - agl-login-manager \ " RDEPENDS:profile-cluster-qt5 = "${PN}" diff --git a/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-html5.bb b/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-html5.bb index c25401a24..d39291614 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-html5.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-html5.bb @@ -17,7 +17,6 @@ RDEPENDS:${PN} += "\ " RDEPENDS:${PN} += "\ - agl-login-manager \ " RDEPENDS:profile-graphical-html5 = "${PN}" diff --git a/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-qt5.bb b/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-qt5.bb index fc30d6a45..9f4e7f4f5 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-qt5.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-profile-graphical-qt5.bb @@ -13,11 +13,9 @@ ALLOW_EMPTY:${PN} = "1" RDEPENDS:${PN} += "\ packagegroup-agl-profile-graphical \ - packagegroup-agl-appfw-native-qt5 \ " RDEPENDS:${PN} += "\ - agl-login-manager \ " RDEPENDS:profile-graphical-qt5 = "${PN}" diff --git a/recipes-platform/packagegroups/packagegroup-agl-profile-graphical.bbappend b/recipes-platform/packagegroups/packagegroup-agl-profile-graphical.bbappend deleted file mode 100644 index 56afcfa41..000000000 --- a/recipes-platform/packagegroups/packagegroup-agl-profile-graphical.bbappend +++ /dev/null @@ -1,3 +0,0 @@ -RDEPENDS:${PN} += "\ - packagegroup-agl-graphical-services \ -" diff --git a/recipes-platform/packagegroups/packagegroup-agl-profile-telematics.bb b/recipes-platform/packagegroups/packagegroup-agl-profile-telematics.bb index 32702d74a..4377dbbc8 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-profile-telematics.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-profile-telematics.bb @@ -16,9 +16,6 @@ RDEPENDS:${PN} += "\ packagegroup-agl-core-security \ ${@bb.utils.contains('VIRTUAL-RUNTIME_net_manager','connman','connman connman-client','',d)} \ ${@bb.utils.contains("DISTRO_FEATURES", "3g", "libqmi", "", d)} \ - agl-login-manager \ - agl-service-can-low-level \ - agl-service-network \ can-utils \ " diff --git a/recipes-platform/packagegroups/packagegroup-agl-speech-services.bb b/recipes-platform/packagegroups/packagegroup-agl-speech-services.bb index 18691c2a0..ceffd093b 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-speech-services.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-speech-services.bb @@ -8,6 +8,4 @@ PACKAGES = "\ " RDEPENDS:${PN} += "\ - agl-service-voice-high \ - agl-service-voice-high-capabilities \ " diff --git a/recipes-platform/packagegroups/packagegroup-agl-telematics-demo-platform.bb b/recipes-platform/packagegroups/packagegroup-agl-telematics-demo-platform.bb index 548337d45..17b5c8b24 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-telematics-demo-platform.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-telematics-demo-platform.bb @@ -16,11 +16,9 @@ RDEPENDS:${PN} += "\ " AGL_APPS = " \ - telematics-recorder \ " AGL_APIS = " \ - agl-service-gps \ " RDEPENDS:${PN}:append = " \ diff --git a/recipes-platform/packagegroups/packagegroup-hmi-framework.bb b/recipes-platform/packagegroups/packagegroup-hmi-framework.bb index d4f32d483..5036ee39a 100644 --- a/recipes-platform/packagegroups/packagegroup-hmi-framework.bb +++ b/recipes-platform/packagegroups/packagegroup-hmi-framework.bb @@ -16,21 +16,13 @@ PACKAGES = "\ " RDEPENDS:${PN} = " \ - agl-service-homescreen \ homescreen \ - libhomescreen \ - qlibhomescreen \ - hmi-debug \ - launcher \ -" + " + +# hmi-debug \ +# launcher \ +#" # temporarily disable due to failure to install package when AGLCI is on #RDEPENDS:append_${PN} = " ${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'homescreen-demo-ci', '', d)}" -# NOTE: Currently no coverage versions of these widgets, they should -# be added here when available. -RDEPENDS:${PN}-devel = " \ - agl-service-homescreen-dbg \ - homescreen-dbg \ - launcher-dbg \ -" diff --git a/recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb b/recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb deleted file mode 100644 index 131210897..000000000 --- a/recipes-qt/qt-cluster/qtcompositor-conf_1.0.bb +++ /dev/null @@ -1,40 +0,0 @@ -SUMMARY = "Configuration files for running wayland with a non-weston compositor" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" - -inherit allarch agl-graphical - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - # Add a rule to ensure the 'display' user has permissions to - # open the graphics device - install -d ${D}${sysconfdir}/udev/rules.d - cat >${D}${sysconfdir}/udev/rules.d/zz-dri.rules <<'EOF' -SUBSYSTEM=="drm", MODE="0660", GROUP="${WESTONGROUP}", SECLABEL{smack}="*" -EOF - - # user 'display' must also be able to access /dev/input/* - cat >${D}${sysconfdir}/udev/rules.d/zz-input.rules <<'EOF' -SUBSYSTEM=="input", MODE="0660", GROUP="input", SECLABEL{smack}="^" -EOF - - # user 'display' must also be able to access /dev/media*, etc. - cat >${D}${sysconfdir}/udev/rules.d/zz-remote-display.rules <<'EOF' -SUBSYSTEM=="media", MODE="0660", GROUP="display", SECLABEL{smack}="*" -SUBSYSTEM=="video4linux", MODE="0660", GROUP="display", SECLABEL{smack}="*" -KERNEL=="uvcs", SUBSYSTEM=="misc", MODE="0660", GROUP="display", SECLABEL{smack}="*" -KERNEL=="rgnmm", SUBSYSTEM=="misc", MODE="0660", GROUP="display", SECLABEL{smack}="*" -EOF -} - -do_install:append:imx() { - install -d ${D}${sysconfdir}/udev/rules.d - cat >>${D}${sysconfdir}/udev/rules.d/zz-dri.rules <<'EOF' -SUBSYSTEM=="gpu_class", MODE="0660", GROUP="${WESTONGROUP}", SECLABEL{smack}="*" -EOF - -} - -RCONFLICTS:${PN} = "weston-init" diff --git a/recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch b/recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch deleted file mode 100644 index 76795268c..000000000 --- a/recipes-qt/qt-qrcode/qt-qrcode/0001-rework-library-build.patch +++ /dev/null @@ -1,181 +0,0 @@ -Rework library build - -Rework qmake files to build libraries out of the quickitem and widget -code instead of sample programs. This allows using the associated -classes without copying the source and running afoul of the LGPL -licensing. Also add pkgconfig file generation to simplify usage, fix -header installation, and use pkgconfig to pull in libqrencode instead -of having to clone a copy in-tree and building it. - -Upstream-Status: inappropriate [embedded-specific] - -Signed-off-by: Scott Murray - -diff --git a/lib/lib.pro b/lib/lib.pro -index d046bc4..6b6c199 100644 ---- a/lib/lib.pro -+++ b/lib/lib.pro -@@ -1,6 +1,9 @@ - TARGET = qtqrcode - TEMPLATE = lib - -+CONFIG += link_pkgconfig create_pc create_prl no_install_prl -+PKGCONFIG += libqrencode -+ - DEFINES += \ - QTQRCODE_LIBRARY \ - QTQRCODE_PLUS_FEATURES -@@ -12,7 +15,8 @@ contains(DEFINES, QTQRCODE_PLUS_FEATURES) { - qtqrcodepainter.cpp - - HEADERS +=\ -- qtqrcodepainter.h -+ qtqrcodepainter.h \ -+ QtQrCodePainter - - } else { - QT -= gui -@@ -23,16 +27,29 @@ SOURCES += \ - - HEADERS +=\ - qtqrcode_global.h \ -- qtqrcode.h -+ qtqrcode.h \ -+ QtQrCode - - INCLUDEPATH += $$PWD - - include(../defaults.pri) --include(libqrencode.pri) - # Default rules for deployment. - include(deployment.pri) - - unix { -+ headers.path = /usr/include - target.path = /usr/lib -- INSTALLS += target - } -+ -+headers.files = $$HEADERS -+ -+INSTALLS += headers -+ -+QMAKE_PKGCONFIG_NAME = qtqrcode -+QMAKE_PKGCONFIG_FILE = $${QMAKE_PKGCONFIG_NAME} -+QMAKE_PKGCONFIG_VERSION = $${VERSION} -+QMAKE_PKGCONFIG_DESCRIPTION = A wrapper interface for qrencode for Qt -+QMAKE_PKGCONFIG_LIBDIR = ${prefix}/lib -+QMAKE_PKGCONFIG_INCDIR = ${prefix}/include -+QMAKE_PKGCONFIG_REQUIRES = libqrencode -+QMAKE_PKGCONFIG_DESTDIR = pkgconfig -diff --git a/lib/qtqrcode.h b/lib/qtqrcode.h -index 2a7a1ff..0830826 100644 ---- a/lib/qtqrcode.h -+++ b/lib/qtqrcode.h -@@ -31,7 +31,7 @@ - #include - #include - --#include "libqrencode/qrencode.h" -+#include - - class QtQrCodeData; - -diff --git a/quickitem/quickitem.pro b/quickitem/quickitem.pro -index ecfef1b..067dc46 100644 ---- a/quickitem/quickitem.pro -+++ b/quickitem/quickitem.pro -@@ -1,5 +1,7 @@ --TEMPLATE = app --TARGET = QuickItem -+TEMPLATE = lib -+TARGET = qtqrcode-quickitem -+ -+CONFIG += create_pc create_prl no_install_prl - - QT += qml quick widgets - -@@ -7,7 +9,7 @@ LIBS += -L../lib -lqtqrcode - - DEFINES += - --SOURCES += main.cpp \ -+SOURCES += \ - QtQrCodeQuickItem.cpp - - HEADERS += \ -@@ -21,3 +23,21 @@ QML_IMPORT_PATH = - include(../defaults.pri) - # Default rules for deployment. - include(deployment.pri) -+ -+unix { -+ headers.path = /usr/include -+ target.path = /usr/lib -+} -+ -+headers.files = $$HEADERS -+ -+INSTALLS += headers -+ -+QMAKE_PKGCONFIG_NAME = qtqrcode-quickitem -+QMAKE_PKGCONFIG_FILE = $${QMAKE_PKGCONFIG_NAME} -+QMAKE_PKGCONFIG_VERSION = $${VERSION} -+QMAKE_PKGCONFIG_DESCRIPTION = Qt QuickItem wrapper for qt-qrcode library -+QMAKE_PKGCONFIG_LIBDIR = ${prefix}/lib -+QMAKE_PKGCONFIG_INCDIR = ${prefix}/include -+QMAKE_PKGCONFIG_REQUIRES = qtqrcode -+QMAKE_PKGCONFIG_DESTDIR = pkgconfig -diff --git a/widget/widget.pro b/widget/widget.pro -index 2e26a8c..63add50 100644 ---- a/widget/widget.pro -+++ b/widget/widget.pro -@@ -1,5 +1,7 @@ --TEMPLATE = app --TARGET = Widget -+TEMPLATE = lib -+TARGET = qtqrcode-widget -+ -+CONFIG += create_pc create_prl no_install_prl - - greaterThan(QT_MAJOR_VERSION, 4): QT += widgets - -@@ -9,18 +11,28 @@ LIBS += -L../lib -lqtqrcode - - DEFINES += - --SOURCES += main.cpp\ -- MainWindow.cpp \ -- QtQrCodeWidget.cpp -- --HEADERS += MainWindow.hpp \ -- QtQrCodeWidget.hpp -+SOURCES += QtQrCodeWidget.cpp - --FORMS += MainWindow.ui -- --CONFIG += mobility --MOBILITY = -+HEADERS += QtQrCodeWidget.hpp - - include(../defaults.pri) - # Default rules for deployment. - include(deployment.pri) -+ -+unix { -+ headers.path = /usr/include -+ target.path = /usr/lib -+} -+ -+headers.files = $$HEADERS -+ -+INSTALLS += headers -+ -+QMAKE_PKGCONFIG_NAME = qtqrcode-widget -+QMAKE_PKGCONFIG_FILE = $${QMAKE_PKGCONFIG_NAME} -+QMAKE_PKGCONFIG_VERSION = $${VERSION} -+QMAKE_PKGCONFIG_DESCRIPTION = Qt widget wrapper for qt-qrcode library -+QMAKE_PKGCONFIG_LIBDIR = ${prefix}/lib -+QMAKE_PKGCONFIG_INCDIR = ${prefix}/include -+QMAKE_PKGCONFIG_REQUIRES = qtqrcode -+QMAKE_PKGCONFIG_DESTDIR = pkgconfig diff --git a/recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch b/recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch deleted file mode 100644 index 489a49edb..000000000 --- a/recipes-qt/qt-qrcode/qt-qrcode/0002-fix-dangling-pointer.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 5fc5a92e3568674a08a6e7594d050e963d0d854b Mon Sep 17 00:00:00 2001 -From: Raquel Medina -Date: Mon, 18 May 2020 19:18:00 +0200 -Subject: [PATCH] fix dangling pointer - -Bug-AGL: SPEC-3664 -Signed-off-by: Raquel Medina ---- - lib/qtqrcode.cpp | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/lib/qtqrcode.cpp b/lib/qtqrcode.cpp -index a7000f0..825c354 100644 ---- a/lib/qtqrcode.cpp -+++ b/lib/qtqrcode.cpp -@@ -116,8 +116,7 @@ void QtQrCode::setBaseQrCodeData(QRcode *qrCode) - { - d->width = qrCode->width; - d->data.clear(); -- // TODO: Beware it here -- d->data = (const char *) qrCode->data; -+ d->data = QByteArray(reinterpret_cast(qrCode->data), d->width*d->width); - QRcode_free(qrCode); - } - diff --git a/recipes-qt/qt-qrcode/qt-qrcode_git.bb b/recipes-qt/qt-qrcode/qt-qrcode_git.bb deleted file mode 100644 index fcc71390d..000000000 --- a/recipes-qt/qt-qrcode/qt-qrcode_git.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "Qt QR code library" -DESCRIPTION = "Qt/C++ library for encoding and visualization of data in a \ -QR Code symbol. This library consists of a Qt wrapper for libqrencode, and \ -Qt components that are able to visualize the result." -LICENSE = "LGPLv3+" -LIC_FILES_CHKSUM = "file://LICENSE;md5=94a3f3bdf61243b5e5cf569fbfbbea52" - -DEPENDS = "qtbase qtdeclarative qtquickcontrols2 qtsvg qrencode" - -SRC_URI = "git://github.com/danielsanfr/qt-qrcode.git;protocol=https \ - file://0001-rework-library-build.patch \ - file://0002-fix-dangling-pointer.patch \ - " -SRCREV = "2d57d9c6e2341689d10f9360a16a08831a4a820b" - -PV = "git${SRCPV}" -S = "${WORKDIR}/git" - -inherit qmake5 diff --git a/recipes-support/curl/curl_%.bbappend b/recipes-support/curl/curl_%.bbappend deleted file mode 100644 index b126b6d20..000000000 --- a/recipes-support/curl/curl_%.bbappend +++ /dev/null @@ -1 +0,0 @@ -require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'curl_agldemo.inc', '', d)} diff --git a/recipes-support/curl/curl_agldemo.inc b/recipes-support/curl/curl_agldemo.inc deleted file mode 100644 index fc24cea15..000000000 --- a/recipes-support/curl/curl_agldemo.inc +++ /dev/null @@ -1,5 +0,0 @@ -# Cannot just append to PACKAGECONFIG, as nghttp2's dependencies do not build -# for native/nativesdk, and appending class-target does not work because of -# the weak definition of PACKAGECONFIG in the recipe, so need to copy the -# definition to add nghttp2... -PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} gnutls libidn proxy threaded-resolver verbose zlib nghttp2" diff --git a/recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch b/recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch deleted file mode 100644 index fe08b7d81..000000000 --- a/recipes-support/lin-config/files/0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 59acd73ba3bd6cc4151b890d135c6d690a83374d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jan-Simon=20M=C3=B6ller?= -Date: Tue, 1 Oct 2019 15:24:07 +0000 -Subject: [PATCH] Change Makefile to use pkg-config for libxml-2.0 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -instead of xml2-config. - -Upstream-Status: Pending - -Signed-off-by: Jan-Simon Möller ---- - lin_config/src/Makefile | 5 ++--- - 1 file changed, 2 insertions(+), 3 deletions(-) - -diff --git a/Makefile b/Makefile -index cf5c515..3fc4df1 100644 ---- a/Makefile -+++ b/Makefile -@@ -1,6 +1,5 @@ --CC=gcc --CFLAGS=-std=gnu99 -Wall -pedantic $(DEBUG) `xml2-config --cflags` `pkg-config --cflags libnl-route-3.0` -I$(INCLUDE) --LIBS=`xml2-config --libs` `pkg-config --libs libnl-route-3.0` -+CFLAGS=-std=gnu99 -Wall -pedantic $(DEBUG) `pkg-config --cflags libxml-2.0` `pkg-config --cflags libnl-route-3.0` -I$(INCLUDE) -+LIBS=`pkg-config --libs libxml-2.0` `pkg-config --libs libnl-route-3.0` - INCLUDE=../../sllin - DEBUG=-ggdb - --- -2.16.4 - diff --git a/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch b/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch deleted file mode 100644 index 26364455a..000000000 --- a/recipes-support/lin-config/files/0002-Change-Makefile-to-use-LDFLAGS.patch +++ /dev/null @@ -1,20 +0,0 @@ -Use LDFLAGS when linking - -Use LDFLAGS when linking the output binary to quiet QA warnings due to -missing link flags. - -Upstream-Status: Pending - -Signed-off-by: Scott Murray - ---- a/Makefile 2019-11-05 11:08:11.060565285 +0000 -+++ b/Makefile 2019-11-05 11:09:38.663570084 +0000 -@@ -6,7 +6,7 @@ - objects = linc_parse_xml.o pcl_config.o sllin_config.o lin_config.o - - lin_config: $(objects) -- $(CC) $(objects) $(LIBS) -o lin_config -+ $(CC) $(LDFLAGS) $(objects) $(LIBS) -o lin_config - - %.o : %.c %.h - $(CC) $(CFLAGS) $(LIBS) -c $< -o $@ diff --git a/recipes-support/lin-config/lin-config_git.bb b/recipes-support/lin-config/lin-config_git.bb deleted file mode 100644 index 7585156f2..000000000 --- a/recipes-support/lin-config/lin-config_git.bb +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "lin-config tool for the sllin driver module" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://lin_config.c;beginline=4;endline=9;md5=196a29df19a30dbc752937bdfc819d7a" - -DEPENDS += "libnl libxml2" - -SRC_URI = "git://github.com/trainman419/linux-lin.git;protocol=https" -SRCREV = "155d885e8ccc907a56f6c86c4b159fac27ef6fec" -S = "${WORKDIR}/git/lin_config/src" - -SRC_URI:append = " \ - file://0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch \ - file://0002-Change-Makefile-to-use-LDFLAGS.patch \ - " - -inherit pkgconfig - -PV = "0.1+git${SRCPV}" - -do_configure[noexec] = "1" - -do_install:append() { - install -d ${D}/${bindir} - install -m 755 ${S}/lin_config ${D}/${bindir} -} diff --git a/recipes-support/opencv/opencv_4.%.bbappend b/recipes-support/opencv/opencv_4.%.bbappend deleted file mode 100644 index a1016a6d0..000000000 --- a/recipes-support/opencv/opencv_4.%.bbappend +++ /dev/null @@ -1 +0,0 @@ -require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'opencv_agldemo.inc', '', d)} diff --git a/recipes-support/opencv/opencv_agldemo.inc b/recipes-support/opencv/opencv_agldemo.inc deleted file mode 100644 index 16640023e..000000000 --- a/recipes-support/opencv/opencv_agldemo.inc +++ /dev/null @@ -1 +0,0 @@ -PACKAGECONFIG:poky = "jpeg png v4l libv4l gstreamer" diff --git a/recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper b/recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper deleted file mode 100644 index 12580237d..000000000 --- a/recipes-test/gcovr-wrapper/gcovr-wrapper/gcovr-wrapper +++ /dev/null @@ -1,320 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2020 Konsulko Group -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# -# gcovr wrapper for generating coverage reports against AGL bindings -# on target. With a given binding name or coverage widget file, the -# coverage version will be installed, and the pyagl tests for the -# binding run before generating a report with gcovr. The afm-test -# test widget or a user-supplied command may be run instead of the -# pyagl tests, see usage below, or run with "--help". -# - -usage() { - cat <<-EOF - Usage: - $(basename $0) [options] - - Options: - -h, --help - Print this help and exit - - -k, --keep - Do not remove temporary files/directories - - -o, --gcovr-options - Additional gcovr options, multiple options should be quoted - - -w, --workdir - gcov/gcovr temporary working directory, defaults to /tmp/gcov - The directory will be removed after running without --keep if it - is empty, use caution if specifying existing system directories! - - --pyagl - Run pyagl tests for binding, enabled by default - - --afm-test - Run afm-test test widget tests for binding. - If specified, disables pyagl tests; note that the last argument in - the command-line will take precedence. - - -c, --command - Test command to use in place of pyagl or afm-test, should be quote - If specified, disables pyagl and afm-test tests. - - EOF -} - -# Helper to validate widget install dir -check_wgt_install() { - if [ ! \( -d $1 -o -f $1/config.xml \) ]; then - echo "ERROR: No widget install at $1" - exit 1 - elif [ ! -d $1/src ]; then - echo "ERROR: No source in $1/src" - exit 1 - fi -} - -# Helper to run gcovr inside mount namespace environment -gcovr_runner() { - wgt_install_dir=/var/local/lib/afm/applications/$1 - check_wgt_install ${wgt_install_dir} - - if [ ! -d $workdir/$1 ]; then - echo "ERROR: No coverage data in $workdir/$1" - exit 1 - fi - - # Get original source path - gcno=$(cd $workdir/$1 && find -name '*.gcno' | head -n 1 | cut -d/ -f2-) - if [ -z "$gcno" ]; then - echo "ERROR: no gcno file found in $workdir/$1" - exit 1 - fi - srcfile=$(strings $workdir/$1/${gcno} | grep "$(basename ${gcno%.gcno})$" | uniq) - srcdir=$(echo $srcfile | sed "s|/${gcno%%/*}/.*$||") - - # Set up mounts for chroot to run gcovr in - # NOTE: We do not unmount these later, as we assume we are in a - # private mount namespace and they will go away on exit from - # it. - echo "Setting up mounts" - tmpdir=$(mktemp -d) - echo $tmpdir > $workdir/.runner_tmpdir - mkdir -p $tmpdir/{lower,upper,work,merged} - # NOTE: Could potentially use rbind here, but explicitly mounting - # just what we need seems safer - mount --bind / $tmpdir/lower - mount -t overlay -o lowerdir=$tmpdir/lower,upperdir=$tmpdir/upper,workdir=$tmpdir/work overlay $tmpdir/merged - mount --bind /proc $tmpdir/merged/proc - mount --bind /sys $tmpdir/merged/sys - mount --bind /dev $tmpdir/merged/dev - mount --bind /tmp $tmpdir/merged/tmp - # Bind in the data files - # NOTE: $workdir is bound instead of specifically just $workdir/$1, - # so that e.g. html output to another directory in /tmp will - # work as expected. A determined user may be able to shoot - # themselves in the foot, but for now the trade off seems - # acceptable. - mkdir -p $tmpdir/merged/$workdir - mount --bind $workdir $tmpdir/merged/$workdir - # Bind the source files to their expected location - mkdir -p $tmpdir/merged/$srcdir - mount --bind ${wgt_install_dir}/src $tmpdir/merged/$srcdir - - echo "Entering chroot" - echo - exec chroot $tmpdir/merged \ - /usr/bin/gcovr -r $srcdir --object-directory $workdir/$1 --gcov-filter-source-errors -s ${GCOV_RUNNER_GCOVR_OPTIONS} -} - -# Helper to clean up after runner -gcovr_runner_cleanup() { - rm -rf $workdir/$1 - if [ -f $workdir/.runner_tmpdir ]; then - tmpdir=$(cat $workdir/.runner_tmpdir) - rm -rf $tmpdir - rm -f $workdir/.runner_tmpdir - fi - if [ "$workdir" != "/tmp" ]; then - rmdir $workdir 2>/dev/null || true - fi -} - -# Parse arguments -OPTS=$(getopt -o +hko:pw:c: --longoptions gcovr-runner,afm-test,command:,help,keep,gcovr-options:,pyagl,workdir: -n "$(basename $0)" -- "$@") -if [ $? -ne 0 ]; then - exit 1 -fi -eval set -- "$OPTS" - -runner=false -keep=false -wgt="" -cmd="" -options="" -afmtest=false -pyagl=true -workdir="/tmp/gcov" - -while true; do - case "$1" in - --gcovr-runner) runner=true; shift;; - --afm-test) afmtest=true; pyagl=false; shift;; - -c|--command) cmd="$2"; shift; shift;; - -h|--help) usage; exit 0;; - -k|--keep) keep=true; shift;; - -o|--gcovr-options) options="$2"; shift; shift;; - -p|--pyagl) pyagl=true; afmtest=false; shift;; - -w|--workdir) workdir="$2"; shift; shift;; - --) shift; break;; - *) break;; - esac -done - -# Encode the assumption that a specified command means it runs instead -# of any other tests. -if [ -s "$cmd" ]; then - pyagl=false - afmtest=false -fi - -if [ $# -ne 1 ]; then - # Always expect widget name as single non-option argument - usage - exit 1 -fi - -# Rationalize workdir just in case -workdir=$(realpath "$workdir") - -if [ "$runner" = "true" ]; then - if [ "${GCOV_RUNNER_READY}" != "true" ]; then - echo "ERROR: gcovr environment not ready!" - exit 1 - fi - gcovr_runner $1 - # If we get here, it'd be an error, so return 1 - exit 1 -fi - -binding=$1 -if [ "${1%.wgt}" != "$1" ]; then - # User has specified path to a widget file - wgt=$(realpath $1) - binding=$(basename "${1%-coverage.wgt}") -else - wgt=/usr/AGL/apps/coverage/${binding}-coverage.wgt -fi -if [ ! -f $wgt ]; then - echo "ERROR: No widget $wgt" - exit 1 -elif [ "$afmtest" = "true" -a ! -f /usr/AGL/apps/test/${binding}-test.wgt ]; then - echo "ERROR: No test widget for $binding" - exit 1 -fi - -# Determine starting systemd unit name -service=$(systemctl --all |grep afm-service-$binding |sed 's/^[ *] \([^ ]*\).*/\1/') -if [ -z "$service" ]; then - echo "ERROR: Could not determine systemd service unit for $binding" - exit 1 -fi - -# Install coverage widget -echo "Removing $binding widget" -systemctl stop $service -afm-util remove $binding -echo -echo "Installing $binding coverage widget" -afm-util install $wgt -echo - -wgt_install_dir=/var/local/lib/afm/applications/$binding -check_wgt_install ${wgt_install_dir} -gcov_src=${wgt_install_dir}/coverage -if [ ! -d ${gcov_src} ]; then - echo "ERROR: No coverage information in ${gcov_src}" - exit 1 -elif [ ! -f ${gcov_src}/gcov.env ]; then - echo "ERROR: No gcov environment file at ${gcov_src}/gcov.env" - exit 1 -fi - -# -# NOTE: In theory, the coverage data collection could be done inside -# the mount namespace / chroot, but the potential for issues -# when doing that seems higher than just running gcovr there, -# so a conservative approach is taken. -# - -# Set up things for the binary to write out gcda data files -# -# Having the matching build directory hierarchy in place and -# writeable by the target binary before any restart and testing is -# key to things working. -# -# As well, the environment file with the GCOV_PREFIX and -# GCOV_PREFIX_STRIP values needs to be present before running so the -# gcda files will get written into the relocated build hierarchy. -# -echo "Installing coverage information for $binding" -mkdir -p $workdir -rm -rf $workdir/$binding -cp -dr ${gcov_src} $workdir/$binding -chsmack -r -a System::Log $workdir -chmod -R go+w $workdir - -# Install the gcov environment file -mkdir -p /etc/afm/widget.env.d/$binding -if [ "${workdir}" = "/tmp/gcov" ]; then - cp ${gcov_src}/gcov.env /etc/afm/widget.env.d/$binding/gcov -else - # Update GCOV_PREFIX to point into workdir - sed "s|^GCOV_PREFIX=.*|GCOV_PREFIX=${workdir}/$binding|" ${gcov_src}/gcov.env > /etc/afm/widget.env.d/$binding/gcov -fi -chsmack -r -a _ /etc/afm/widget.env.d/$binding - -# Determine new systemd unit name (version may now be different) -service=$(systemctl --all |grep afm-service-$binding |sed 's/^[ *] \([^ ]*\).*/\1/') -if [ -z "$service" ]; then - echo "ERROR: Could not determine systemd service unit for $binding" - exit 1 -fi - -# Restart the binding -systemctl start $service -echo - -# Run tests or given command -if [ -n "$cmd" ]; then - echo "Running command: $cmd" - export AGL_AVAILABLE_INTERFACES=${AGL_AVAILABLE_INTERFACES:-ethernet} - eval $cmd -elif [ "$pyagl" = "true" ]; then - echo "Running $binding pyagl tests" - export AGL_AVAILABLE_INTERFACES=${AGL_AVAILABLE_INTERFACES:-ethernet} - pytest -k "${binding#agl-service-} and not hwrequired" /usr/lib/python3.?/site-packages/pyagl -else - echo "Running $binding test widget" - # NOTE: su to agl-driver is required here to avoid fallout from - # the "afm-util run" in afm-test seemingly triggering the - # start of other per-user bindings for the root user. - su -l -c "/usr/bin/afm-test /usr/AGL/apps/test/${binding}-test.wgt" agl-driver -fi - -# Restart again to trigger data file writing -systemctl restart $service -echo - -# Run ourselves in gcovr runner mode inside a private mount namespace -export GCOV_RUNNER_READY=true -# NOTE: Passing gcovr options in the environment to avoid quoting hassles -export GCOV_RUNNER_GCOVR_OPTIONS="$options" -runner_options="--workdir ${workdir}" -unshare -m $0 --gcovr-runner ${runner_options} $binding -rc=$? - -if [ "$keep" != "true" ]; then - # Clean up after ourselves - gcovr_runner_cleanup $1 - rm -f /etc/afm/widget.env.d/$1/gcov - rmdir /etc/afm/widget.env.d/$1 2>/dev/null || true -fi - -exit $rc - diff --git a/recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb b/recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb deleted file mode 100644 index 8cb228d50..000000000 --- a/recipes-test/gcovr-wrapper/gcovr-wrapper_1.0.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "AGL gcovr wrapper" -DESCRIPTION = "This wrapper script enables running gcovr against a \ -AGL binding to generate a coverage report of running pyagl tests, \ -the afm-test test widget, or a user-supplied command." - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -SRC_URI += "file://gcovr-wrapper" - -inherit allarch - -do_install() { - install -D -m 0755 ${WORKDIR}/gcovr-wrapper ${D}${bindir}/gcovr-wrapper -} - -RDEPENDS:${PN} = "bash gcovr" diff --git a/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch b/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch deleted file mode 100644 index be1dcf829..000000000 --- a/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch +++ /dev/null @@ -1,68 +0,0 @@ -Add option to filter gcov source errors - -Add "--gcov-filter-source-errors" to apply filters to the source -files in the errors from gcov. If all source files in the errors -are filtered, then the error is ignored so that the file will be -processed. This enables the usecase of running on a target where -only the source tree for a binary is available, but not all of the -external source headers are. - -Upstream-Status: pending - -Signed-off-by: Scott Murray - -diff --git a/gcovr/configuration.py b/gcovr/configuration.py -index 1356097..083532c 100644 ---- a/gcovr/configuration.py -+++ b/gcovr/configuration.py -@@ -915,6 +915,14 @@ GCOVR_CONFIG_OPTIONS = [ - "Default: {default!s}.", - action="store_true", - ), -+ GcovrConfigOption( -+ "gcov_filter_source_errors", ['--gcov-filter-source-errors'], -+ group="gcov_options", -+ help="Apply filters to missing source file errors in GCOV files " -+ "instead of exiting with an error. " -+ "Default: {default!s}.", -+ action="store_true", -+ ), - GcovrConfigOption( - "objdir", ['--object-directory'], - group="gcov_options", -diff --git a/gcovr/gcov.py b/gcovr/gcov.py -index de79215..171d68d 100644 ---- a/gcovr/gcov.py -+++ b/gcovr/gcov.py -@@ -667,11 +667,27 @@ def run_gcov_and_process_files( - chdir=chdir, - tempdir=tempdir) - -+ skip = False - if source_re.search(err): -- # gcov tossed errors: try the next potential_wd -- error(err) -- done = False -- else: -+ ignore = False -+ if options.gcov_filter_source_errors: -+ # Check if errors are all from source that is filtered -+ ignore = True -+ for line in err.splitlines(): -+ src_fname = line.split()[-1] -+ filtered, excluded = apply_filter_include_exclude( -+ src_fname, options.filter, options.exclude) -+ if not (filtered or excluded): -+ ignore = False -+ break -+ -+ if not ignore: -+ # gcov tossed errors: try the next potential_wd -+ error(err) -+ skip = True -+ -+ done = False -+ if not skip: - # Process *.gcov files - for fname in active_gcov_files: - process_gcov_data(fname, covdata, abs_filename, options) diff --git a/recipes-test/gcovr/gcovr_%.bbappend b/recipes-test/gcovr/gcovr_%.bbappend deleted file mode 100644 index 699aea214..000000000 --- a/recipes-test/gcovr/gcovr_%.bbappend +++ /dev/null @@ -1,2 +0,0 @@ -# Add not yet upstreamed patch that enables on target gcov usage -SRC_URI += "file://0001-add-gcov-filter-source-errors-option.patch" diff --git a/recipes-test/gcovr/gcovr_git.bb b/recipes-test/gcovr/gcovr_git.bb deleted file mode 100644 index d302c0f63..000000000 --- a/recipes-test/gcovr/gcovr_git.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "Generate GCC code coverage reports" -DESCRIPTION = "Gcovr provides a utility for managing the use of the GNU gcov \ -utility and generating summarized code coverage results." -HOMEPAGE = "https://gcovr.com" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=221e634a1ceafe02ef74462cbff2fb16" - -PV = "4.2+git${SRCPV}" -SRC_URI = "git://github.com/gcovr/gcovr.git;protocol=https" -SRCREV = "1bc72e3bb59b9296e962b350691732ddafbd3195" - -S = "${WORKDIR}/git" - -inherit setuptools3 - -RDEPENDS:${PN} += " \ - python3-compression \ - python3-core \ - python3-crypt \ - python3-datetime \ - python3-difflib \ - python3-io \ - python3-jinja2 \ - python3-json \ - python3-lxml \ - python3-multiprocessing \ - python3-pygments \ - python3-pytest \ - python3-shell \ - python3-threading \ - python3-typing \ -" diff --git a/recipes-test/pyagl/pyagl_git.bb b/recipes-test/pyagl/pyagl_git.bb deleted file mode 100644 index ee01ce52f..000000000 --- a/recipes-test/pyagl/pyagl_git.bb +++ /dev/null @@ -1,33 +0,0 @@ -SUMMARY = "Python bindings and tests for Automotive Grade Linux services" -HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/src/pyagl" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/pyagl;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "137a32d3b0068e2141ed9aab23d8a8956c0cb094" -PV = "${AGL_BRANCH}+git${SRCPV}" - -S = "${WORKDIR}/git" - -inherit setuptools3 - -do_install:append() { - install -D -m 0755 ${S}/pyagl/scripts/pyagl ${D}${bindir}/pyagl -} - -RDEPENDS:${PN} += " \ - python3-asyncio \ - python3-asyncssh \ - python3-core \ - python3-json \ - python3-logging \ - python3-math \ - python3-parse \ - python3-pprint \ - python3-pytest \ - python3-pytest-asyncio \ - python3-pytest-dependency \ - python3-pytest-reverse \ - python3-typing \ - python3-websockets \ -" diff --git a/recipes-wam/chromium/chromium-browser-service.bb b/recipes-wam/chromium/chromium-browser-service.bb deleted file mode 100644 index d9a4206d5..000000000 --- a/recipes-wam/chromium/chromium-browser-service.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "Chromium browser widget" -DESCRIPTION = "Wgt packaging for running chromium installed browser" -HOMEPAGE = "https://webosose.org" -SECTION = "apps" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/chromium;protocol=https;branch=${AGL_BRANCH}" -SRCREV = "${AGL_APP_REVISION}" - -PV = "1.0+git${SRCPV}" -S = "${WORKDIR}/git" - -#build-time dependencies -DEPENDS += "af-binder af-main-native chromium84" - -inherit cmake aglwgt - -RDEPENDS:${PN} += "chromium84-browser" diff --git a/recipes-wam/chromium/chromium.inc b/recipes-wam/chromium/chromium.inc deleted file mode 100644 index 722ba9a34..000000000 --- a/recipes-wam/chromium/chromium.inc +++ /dev/null @@ -1,354 +0,0 @@ -# Copyright (c) 2018 LG Electronics, Inc. - -SUMMARY = "Chromium webruntime for webOS" -AUTHOR = "Lokesh Kumar Goel " -SECTION = "webos/apps" -LICENSE = "Apache-2.0 & BSD-3-Clause & LGPL-2.0 & LGPL-2.1" -LIC_FILES_CHKSUM = "\ - file://src/LICENSE;md5=0fca02217a5d49a14dfe2d11837bb34d \ - file://src/third_party/blink/renderer/core/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \ - file://src/third_party/blink/renderer/core/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \ -" - -require gn-utils.inc - -inherit gettext qemu pythonnative - -DEPENDS = "virtual/gettext wayland wayland-native pixman freetype glib-2.0 fontconfig openssl pango cairo icu libxkbcommon libexif dbus pciutils udev libcap alsa-lib virtual/egl elfutils-native libdrm atk at-spi2-atk gperf-native gconf nss nss-native nspr nspr-native bison-native qemu-native" - -PROVIDES = "${BROWSER_APPLICATION}" - -SRCREV_v8 = "1e3af71f1ff3735e8a5b639c48dfca63a7b8a647" - -# we don't include SRCPV in PV, so we have to manually include SRCREVs in do_fetch vardeps -do_fetch[vardeps] += "SRCREV_v8" -SRCREV_FORMAT = "main_v8" - -S = "${WORKDIR}/git" - -SRC_DIR = "${S}/src" -BUILD_TYPE = "Release" - -B = "${WORKDIR}/build" -OUT_DIR = "${B}/${BUILD_TYPE}" - -WEBRUNTIME_BUILD_TARGET = "webos:weboswebruntime" -BROWSER_APP_BUILD_TARGET = "chrome" -BROWSER_APPLICATION = "chromium84-browser" -BROWSER_APPLICATION_DIR = "/opt/chromium84" - -TARGET = "${WEBRUNTIME_BUILD_TARGET} ${BROWSER_APP_BUILD_TARGET}" - -# Skip do_install:append of webos_system_bus. It is not compatible with this component. -WEBOS_SYSTEM_BUS_FILES_LOCATION = "${S}/files/sysbus" - -PACKAGECONFIG ?= "jumbo use-upstream-wayland" - - -# Set a default value for jumbo file merge of 8. This should be good for build -# servers and workstations with a big number of cores. In case build is -# happening in a machine with less cores but still enough RAM a good value could -# be 50. -JUMBO_FILE_MERGE_LIMIT="8" -PACKAGECONFIG[jumbo] = "use_jumbo_build=true jumbo_file_merge_limit=${JUMBO_FILE_MERGE_LIMIT}, use_jumbo_build=false" - -PACKAGECONFIG[lttng] = "use_lttng=true,use_lttng=false,lttng-ust,lttng-tools lttng-modules babeltrace" - -# Chromium can use v4l2 device for hardware accelerated video decoding on such boards as Renesas R-car M3, for example. -# In case of R-car m3, additional patches are required for gstreamer and v4l2apps. -# See https://github.com/igel-oss/meta-browser-hwdecode/tree/igalia-chromium71. -PACKAGECONFIG[use-linux-v4l2] = "use_v4l2_codec=true use_v4lplugin=true use_linux_v4l2_only=true" - -PACKAGECONFIG[use-upstream-wayland] = " \ - ozone_platform_wayland_external=false ozone_platform_wayland=true, \ - ozone_platform_wayland_external=true ozone_platform_wayland=false \ -" - -GN_ARGS = "\ - enable_memorymanager_webapi=false\ - ffmpeg_branding=\"Chrome\"\ - host_os=\"linux\"\ - ozone_auto_platforms=false\ - proprietary_codecs=true\ - target_os=\"linux\"\ - treat_warnings_as_errors=false\ - is_agl=true\ - use_cbe=true\ - is_chrome_cbe=true\ - is_component_build=false\ - use_cups=false\ - use_custom_libcxx=false\ - use_kerberos=false\ - use_neva_media=false\ - use_ozone=true\ - use_xkbcommon=true\ - use_wayland_gbm=false\ - use_pmlog=false\ - use_system_debugger_abort=true\ - ${PACKAGECONFIG_CONFARGS}\ -" - -# From Chromium's BUILDCONFIG.gn: -# Set to enable the official build level of optimization. This has nothing -# to do with branding, but enables an additional level of optimization above -# release (!is_debug). This might be better expressed as a tri-state -# (debug, release, official) but for historical reasons there are two -# separate flags. -# See also: https://groups.google.com/a/chromium.org/d/msg/chromium-dev/hkcb6AOX5gE/PPT1ukWoBwAJ -GN_ARGS += "is_debug=false is_official_build=true" - -# is_cfi default value is true for x86-64 builds with is_official_build=true. -# As of M63, we explicitly need to set it to false, otherwise we fail the -# following assertion in //build/config/sanitizers/sanitizers.gni: -# assert(!is_cfi || is_clang, -# "is_cfi requires setting is_clang = true in 'gn args'") -GN_ARGS += "is_cfi=false" - -# By default, passing is_official_build=true to GN causes its symbol_level -# variable to be set to "2". This means the compiler will be passed "-g2" and -# we will end up with a very large chrome binary (around 5Gb as of M58) -# regardless of whether DEBUG_BUILD has been set or not. In addition, binutils, -# file and other utilities are unable to read a 32-bit binary this size, which -# causes it not to be stripped. -# The solution is two-fold: -# 1. Make sure -g is not passed on 32-bit architectures via DEBUG_FLAGS. -g is -# the same as -g2. -g1 generates an 800MB binary, which is a lot more -# manageable. -# 2. Explicitly pass symbol_level=0 to GN. This causes -g0 to be passed -# instead, so that if DEBUG_BUILD is not set GN will not create a huge debug -# binary anyway. Since our compiler flags are passed after GN's, -g0 does -# not cause any issues if DEBUG_BUILD is set, as -g1 will be passed later. -DEBUG_FLAGS:remove:arm = "-g" -DEBUG_FLAGS:append:arm = "-g1" -DEBUG_FLAGS:remove:x86 = "-g" -DEBUG_FLAGS:append:x86 = "-g1" -GN_ARGS += "symbol_level=0" - -# We do not want to use Chromium's own Debian-based sysroots, it is easier to -# just let Chromium's build system assume we are not using a sysroot at all and -# let Yocto handle everything. -GN_ARGS += "use_sysroot=false" - -# ARM builds need special additional flags (see ${S}/build/config/arm.gni). -# If we do not pass |arm_arch| and friends to GN, it will deduce a value that -# will then conflict with TUNE_CCARGS and CC. -# Note that as of M61 in some corner cases parts of the build system disable -# the "compiler_arm_fpu" GN config, whereas -mfpu is always passed via ${CC}. -# We might want to rework that if there are issues in the future. -def get_compiler_flag(params, param_name, d): - """Given a sequence of compiler arguments in |params|, returns the value of - an option |param_name| or an empty string if the option is not present.""" - for param in params: - if param.startswith(param_name): - return param.split('=')[1] - return '' - -ARM_FLOAT_ABI = "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hard', 'softfp', d)}" -ARM_FPU = "${@get_compiler_flag(d.getVar('TUNE_CCARGS').split(), '-mfpu', d)}" -ARM_TUNE = "${@get_compiler_flag(d.getVar('TUNE_CCARGS').split(), '-mcpu', d)}" -ARM_VERSION:aarch64 = "8" -ARM_VERSION:armv7a = "7" -ARM_VERSION:armv7ve = "7" -ARM_VERSION:armv6 = "6" - -# GN computes and defaults to it automatically where needed -# forcing it from cmdline breaks build on places where it ends up -# overriding what GN wants -TUNE_CCARGS:remove = "-mthumb" - -GN_ARGS:append:arm = " \ - arm_float_abi=\"${ARM_FLOAT_ABI}\" \ - arm_fpu=\"${ARM_FPU}\" \ - arm_tune=\"${ARM_TUNE}\" \ - arm_version=${ARM_VERSION} \ -" -# tcmalloc's atomicops-internals-arm-v6plus.h uses the "dmb" instruction that -# is not available on (some?) ARMv6 models, which causes the build to fail. -GN_ARGS:append:armv6 += 'use_allocator="none"' -# The WebRTC code fails to build on ARMv6 when NEON is enabled. -# https://bugs.chromium.org/p/webrtc/issues/detail?id=6574 -GN_ARGS:append:armv6 += 'arm_use_neon=false' - -# Disable glibc shims on musl -# tcmalloc does not play well with musl as of M62 (and possibly earlier). -# https://github.com/gperftools/gperftools/issues/693 -GN_ARGS:append:libc-musl = ' use_allocator_shim=false' - -# More options to speed up the build -GN_ARGS += "\ - enable_nacl=false\ - disable_ftp_support=true\ - enable_print_preview=false\ - enable_remoting=false\ - use_glib=true\ - use_gnome_keyring=false\ - use_pulseaudio=false\ -" - -# Doesn't build for armv[45]* -COMPATIBLE_MACHINE = "(-)" -COMPATIBLE_MACHINE:aarch64 = "(.*)" -COMPATIBLE_MACHINE:armv6 = "(.*)" -COMPATIBLE_MACHINE:armv7a = "(.*)" -COMPATIBLE_MACHINE:armv7ve = "(.*)" -COMPATIBLE_MACHINE:x86 = "(.*)" -COMPATIBLE_MACHINE:x86-64 = "(.*)" - -#CHROMIUM_PLUGINS_PATH = "${libdir}" -CBE_DATA_PATH = "${libdir}/cbe" -CBE_DATA_LOCALES_PATH = "${CBE_DATA_PATH}/locales" - -# The text relocations are intentional -- see comments in [GF-52468] -# TODO: check if we need INSANE_SKIP on ldflags -INSANE_SKIP:${PN} = "textrel ldflags" - - -do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+" -do_compile() { - if [ ! -f ${OUT_DIR}/build.ninja ]; then - do_configure - fi - - export PATH="${S}/depot_tools:$PATH" - ${S}/depot_tools/ninja ${PARALLEL_MAKE} -v -C ${OUT_DIR} ${TARGET} -} - -do_configure() { - configure_env -} - -configure_env() { - export GYP_CHROMIUM_NO_ACTION=1 - export PATH="${S}/depot_tools:$PATH" - - GN_ARGS="${GN_ARGS}" - echo GN_ARGS is ${GN_ARGS} - echo BUILD_TARGETS are ${TARGET} - cd ${SRC_DIR} - gn gen ${OUT_DIR} --args="${GN_ARGS}" -} - -WINDOW_SIZE ?= "1920,1080" - -configure_browser_settings() { - USER_AGENT="Mozilla/5.0 (Linux; NetCast; U) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/${CHROMIUM_VERSION} Safari/537.31" - echo "${USER_AGENT}" > ${D_DIR}/user_agent_conf - #We can replace below WINDOW_SIZE values from build configuration if available - #echo "${WINDOW_SIZE}" > ${D_DIR}/window_size_conf -} - -install_chromium_browser() { - # Install browser files - ${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR} webos/install/default_browser - - D_DIR=${D}${BROWSER_APPLICATION_DIR} - L_DIR=${D}${CBE_DATA_PATH} - install -d ${D_DIR} - install -d ${L_DIR} - - cp -R --no-dereference --preserve=mode,links -v ${OUT_DIR}/image/${BROWSER_APPLICATION_DIR}/* ${D_DIR} - - # AGL does not have PMLOG - sed -i.bak s/PmLogCtl.*// ${D_DIR}/run_webbrowser - - # To execute chromium in JAILER, Security Part needs permissions change - # run_webbrowser: Script file for launching chromium - chmod -v 755 ${D_DIR}/chrome - chmod -v 755 ${D_DIR}/kill_webbrowser - chmod -v 755 ${D_DIR}/run_webbrowser - - configure_browser_settings -} - -install_webruntime() { - - # # Generate install webos webview files - # ${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR} webos/install/weboswebruntime - - # # Move installation files to D directory - # mv ${OUT_DIR}/image/* ${D} - # # Rename include and locale directories - # mv ${D}${includedir}/webruntime ${D}${includedir}/${BPN} - # mv ${D}${CBE_DATA_PATH}/neva_locales ${D}${CBE_DATA_LOCALES_PATH} - - # # move this to separate mksnapshot-cross recipe once we figure out how to build just cross mksnapshot from chromium repository - # install -d ${D}${bindir_cross} - # gzip -c ${OUT_DIR}/${MKSNAPSHOT_PATH}mksnapshot > ${D}${bindir_cross}/${HOST_SYS}-mksnapshot.gz - - install -d ${D}${libdir} - install -d ${D}${libdir}/swiftshader - install -d ${D}${includedir}/${BPN} - install -d ${D}${CBE_DATA_PATH} - install -d ${D}${CBE_DATA_LOCALES_PATH} - - # Install webos webview files - ${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR} webos/install/weboswebruntime - - install -v -m 0644 ${OUT_DIR}/swiftshader/*.so ${D}${libdir}/swiftshader - - cp -R --no-dereference --preserve=mode,links -v ${OUT_DIR}/image/${includedir}/${BPN}/* ${D}${includedir}/${BPN}/ - install -v -m 0644 ${OUT_DIR}/image/${libdir}/*.so ${D}${libdir} - - install -v -m 0644 ${OUT_DIR}/image/${CBE_DATA_PATH}/icudtl.dat ${D}${CBE_DATA_PATH} - install -v -m 0644 ${OUT_DIR}/image/${CBE_DATA_PATH}/snapshot_blob.bin ${D}${CBE_DATA_PATH} - # app_runtime_content.pak, webos_content.pak, extensions_shell_and_test.pak - install -v -m 0644 ${OUT_DIR}/image/${CBE_DATA_PATH}/*.pak ${D}${CBE_DATA_PATH} - - cp -R --no-dereference --preserve=mode,links -v ${OUT_DIR}/image/${CBE_DATA_LOCALES_PATH}/*.pak ${D}${CBE_DATA_LOCALES_PATH} - - chown root:root -R ${D}${libdir} - chown root:root -R ${D}${includedir} - chown root:root -R ${D}${CBE_DATA_LOCALES_PATH} - - # move this to separate mksnapshot-cross recipe once we figure out how to build just cross mksnapshot from chromium repository - install -d ${D}${base_bindir} - gzip -c ${OUT_DIR}/${MKSNAPSHOT_PATH}mksnapshot > ${D}${base_bindir}/${HOST_SYS}-mksnapshot.gz - -} - -do_install() { - install_webruntime - install_chromium_browser -} - -WEBOS_SYSTEM_BUS_DIRS_LEGACY_BROWSER_APPLICATION = " \ - ${webos_sysbus_prvservicesdir}/${BROWSER_APPLICATION}.service \ - ${webos_sysbus_pubservicesdir}/${BROWSER_APPLICATION}.service \ - ${webos_sysbus_prvrolesdir}/${BROWSER_APPLICATION}.json \ - ${webos_sysbus_pubrolesdir}/${BROWSER_APPLICATION}.json \ -" - -SYSROOT_DIRS:append = " ${bindir_cross}" - -PACKAGES:prepend = " \ - ${PN}-cross-mksnapshot \ - ${BROWSER_APPLICATION} \ -" - -FILES:${BROWSER_APPLICATION} += " \ - ${BROWSER_APPLICATION_DIR} \ - ${WEBOS_SYSTEM_BUS_DIRS_LEGACY_BROWSER_APPLICATION} \ -" - -RDEPENDS:${BROWSER_APPLICATION} += "${PN}" - -VIRTUAL-RUNTIME_gpu-libs ?= "" -RDEPENDS:${PN} += "${VIRTUAL-RUNTIME_gpu-libs}" - -# The text relocations are intentional -- see comments in [GF-52468] -# TODO: check if we need INSANE_SKIP on ldflags -INSANE_SKIP:${BROWSER_APPLICATION} += "libdir ldflags textrel" - -FILES:${PN} = " \ - ${libdir}/*.so \ - ${libdir}/swiftshader/*.so \ - ${CBE_DATA_PATH}/* \ - ${libdir}/${BPN}/*.so \ - ${WEBOS_SYSTEM_BUS_DIRS} \ -" - -FILES:${PN}-dev = " \ - ${includedir} \ -" - -FILES:${PN}-cross-mksnapshot = "${bindir_cross}/${HOST_SYS}-mksnapshot.gz" diff --git a/recipes-wam/chromium/chromium84_git.bb b/recipes-wam/chromium/chromium84_git.bb deleted file mode 100644 index 755c4ce92..000000000 --- a/recipes-wam/chromium/chromium84_git.bb +++ /dev/null @@ -1,81 +0,0 @@ -require chromium.inc - -SRC_URI = "\ - git://github.com/igalia/${PN};branch=koi;protocol=https;rev=${SRCREV_chromium84};name=chromium84 \ - git://github.com/webosose/chromium-v8;branch=@chromium84;destsuffix=git/src/v8;rev=${SRCREV_v8};name=v8 \ - file://add-a-delay-to-agl-ready-event.patch \ - file://chromium-quiche-invalid-offsetof.patch \ - file://chromium-skia-no_sanitize.patch \ -" - -# Needed by catapult -DEPENDS += "libhomescreen python-six-native python-beautifulsoup4-native python-lxml-native python-html5lib-native python-webencodings-native" - -SRCREV_chromium84 = "17ab9d58b9d5da9102b119d39cf49a002e61ea1b" -SRCREV_v8 = "5c1d89dd2945a10cf7a6a3458050b3177a870b09" - -BROWSER_APPLICATION = "chromium84-browser" -BROWSER_APPLICATION_DIR = "/opt/chromium84" -MKSNAPSHOT_PATH = "v8_snapshot/" - -PACKAGECONFIG:remove="jumbo" - -GN_ARGS += "use_gtk=false" - -# Disable closure_compile -# Else we need HOSTTOOLS += "java" -GN_ARGS += "closure_compile=false" - -# When using meta-clang, one can switch to using the lld linker -# by using the ld-is-lld distro feature otherwise use gold linker -GN_ARGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', 'use_lld=true use_gold=false', bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'use_lld=false use_gold=true', 'use_lld=false use_gold=false', d), d)}" - -# Toolchains we will use for the build. We need to point to the toolchain file -# we've created, set the right target architecture and make sure we are not -# using Chromium's toolchain (bundled clang, bundled binutils etc). -GN_ARGS += "\ - host_toolchain=\"//build/toolchain/cros:host\" \ - cros_host_is_clang=false \ - use_custom_libcxx_for_host=false \ - cros_host_ar=\"${BUILD_AR}\" \ - cros_host_cc=\"${BUILD_CC} ${BUILD_CFLAGS}\" \ - cros_host_cxx=\"${BUILD_CXX} ${BUILD_CXXFLAGS}\" \ - cros_host_extra_ldflags=\"${BUILD_LDFLAGS}\" \ - custom_toolchain=\"//build/toolchain/cros:target\" \ - is_clang=false \ - use_custom_libcxx=false \ - target_cpu=\"${@gn_arch_name('${TUNE_ARCH}')}\" \ - cros_target_ar=\"${AR}\" \ - cros_target_cc=\"${CC}\" \ - cros_target_cxx=\"${CXX}\" \ - cros_target_extra_ldflags=\"${LDFLAGS}\" \ - v8_snapshot_toolchain=\"//build/toolchain/cros:v8_snapshot\" \ - cros_v8_snapshot_is_clang=false \ - cros_v8_snapshot_ar=\"${BUILD_AR}\" \ - cros_v8_snapshot_cc=\"${BUILD_CC}\" \ - cros_v8_snapshot_cxx=\"${BUILD_CXX}\" \ - linux_use_bundled_binutils=false \ - gold_path=\"\" \ - v8_enable_embedded_builtins=false \ - use_v8_context_snapshot=false \ -" - -GN_ARGS:append = " \ - use_system_minigbm=false \ - use_wayland_gbm=false \ -" - -GN_ARGS:append = " \ - is_webos=false \ - is_agl=true \ -" - -# TODO: drop this after we migrate to ubuntu 16.04 or above -GN_ARGS += "\ - fatal_linker_warnings=false\ -" - -# TODO(rzanoni) copied from original recipe to fix qemux86 build. -# check if it can be removed in the future. -PACKAGECONFIG:remove:qemux86 = "gstreamer umediaserver neva-media gav neva-webrtc" -#END TODO diff --git a/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch b/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch deleted file mode 100644 index 20caccbf6..000000000 --- a/recipes-wam/chromium/files/add-a-delay-to-agl-ready-event.patch +++ /dev/null @@ -1,70 +0,0 @@ -From d2d09d3e13a3874961971d343553106a1f3d5ac7 Mon Sep 17 00:00:00 2001 -From: Roger Zanoni -Date: Thu, 3 Jun 2021 10:53:40 +0200 -Subject: [PATCH] Add a delay to agl ready event - -Delay ready() to ensure that all the window and surfaces setup -is done before notifying the compositor ---- - .../ozone/platform/wayland/host/wayland_window.cc | 14 +++++++++++++- - .../ozone/platform/wayland/host/wayland_window.h | 5 +++++ - 2 files changed, 18 insertions(+), 1 deletion(-) - -diff --git a/src/ui/ozone/platform/wayland/host/wayland_window.cc b/src/ui/ozone/platform/wayland/host/wayland_window.cc -index d2a9b0dae5..27749fd70d 100644 ---- a/src/ui/ozone/platform/wayland/host/wayland_window.cc -+++ b/src/ui/ozone/platform/wayland/host/wayland_window.cc -@@ -299,7 +299,19 @@ WaylandWindow::SetAglReady(void) - if (!connection_->agl_shell_manager) { - return; - } -- connection_->agl_shell_manager->ready(); -+ -+ // Delay activation to ensure that all the setup is done -+ // TODO(rzanoni): find a more deterministic way of doing this -+ set_ready_timer_.Start(FROM_HERE, -+ base::TimeDelta::FromMilliseconds(500), -+ this, -+ &WaylandWindow::SetReadyCallback); -+} -+ -+ -+void WaylandWindow::SetReadyCallback() { -+ connection_->agl_shell_manager->ready(); -+ connection_->ScheduleFlush(); - } - - bool WaylandWindow::CanDispatchEvent(const PlatformEvent& event) { -diff --git a/src/ui/ozone/platform/wayland/host/wayland_window.h b/src/ui/ozone/platform/wayland/host/wayland_window.h -index 2acac98ae9..c10db38d21 100644 ---- a/src/ui/ozone/platform/wayland/host/wayland_window.h -+++ b/src/ui/ozone/platform/wayland/host/wayland_window.h -@@ -15,6 +15,7 @@ - #include "base/containers/flat_set.h" - #include "base/gtest_prod_util.h" - #include "base/memory/ref_counted.h" -+#include "base/timer/timer.h" - #include "ui/events/platform/platform_event_dispatcher.h" - #include "ui/gfx/geometry/rect.h" - #include "ui/gfx/native_widget_types.h" -@@ -232,6 +233,8 @@ class WaylandWindow : public PlatformWindow, public PlatformEventDispatcher { - // Returns a root parent window. - WaylandWindow* GetRootParentWindow(); - -+ void SetReadyCallback(); -+ - // Install a surface listener and start getting wl_output enter/leave events. - void AddSurfaceListener(); - -@@ -311,6 +314,8 @@ class WaylandWindow : public PlatformWindow, public PlatformEventDispatcher { - // The type of the current WaylandWindow object. - ui::PlatformWindowType type_ = ui::PlatformWindowType::kWindow; - -+ base::OneShotTimer set_ready_timer_; -+ - DISALLOW_COPY_AND_ASSIGN(WaylandWindow); - }; - --- -2.32.0 - diff --git a/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch b/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch deleted file mode 100644 index 4fdd98de4..000000000 --- a/recipes-wam/chromium/files/chromium-quiche-invalid-offsetof.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 4cea86e76af28b28aa72cb7c69ff7cf242b2bd5d Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 27 Jun 2020 12:18:05 +0000 -Subject: [PATCH] GCC: supress invalid-offsetof warning - -GCC emits a warning if offsetof is used for non-POD -types. However, GCC supports this and prints only -the warning, because it might be nonportable code. -Disable the warning for GCC with a pragma. ---- - src/net/third_party/quiche/src/quic/core/frames/quic_frame.h | 7 +++++++ - .../quiche/src/quic/core/frames/quic_inlined_frame.h | 7 +++++++ - 2 files changed, 14 insertions(+) - -diff --git a/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h b/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h -index 756b69f..aceba76 100644 ---- a/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h -+++ b/src/net/third_party/quiche/src/quic/core/frames/quic_frame.h -@@ -110,8 +110,15 @@ struct QUIC_EXPORT_PRIVATE QuicFrame { - - static_assert(sizeof(QuicFrame) <= 24, - "Frames larger than 24 bytes should be referenced by pointer."); -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Winvalid-offsetof" -+#endif - static_assert(offsetof(QuicStreamFrame, type) == offsetof(QuicFrame, type), - "Offset of |type| must match in QuicFrame and QuicStreamFrame"); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - - // A inline size of 1 is chosen to optimize the typical use case of - // 1-stream-frame in QuicTransmissionInfo.retransmittable_frames. -diff --git a/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h b/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h -index 08c4869..804e4bb 100644 ---- a/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h -+++ b/src/net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h -@@ -17,8 +17,15 @@ namespace quic { - template - struct QUIC_EXPORT_PRIVATE QuicInlinedFrame { - QuicInlinedFrame(QuicFrameType type) : type(type) { -+#if defined(__GNUC__) -+#pragma GCC diagnostic push -+#pragma GCC diagnostic ignored "-Winvalid-offsetof" -+#endif - static_assert(offsetof(DerivedT, type) == 0, - "type must be the first field."); -+#if defined(__GNUC__) -+#pragma GCC diagnostic pop -+#endif - static_assert(sizeof(DerivedT) <= 24, - "Frames larger than 24 bytes should not be inlined."); - } --- -2.26.2 - diff --git a/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch b/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch deleted file mode 100644 index abfba57ab..000000000 --- a/recipes-wam/chromium/files/chromium-skia-no_sanitize.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 04765936a0a8dd3ac3f530786fce6b5cea826d3e Mon Sep 17 00:00:00 2001 -From: Roger Zanoni -Date: Wed, 24 Feb 2021 13:50:27 +0100 -Subject: [PATCH] [skia][build] fix skia no_sanitize build issues for gcc - -Based on https://src.fedoraproject.org/rpms/chromium/blob/rawhide/f/chromium-skia-no_sanitize.patch - ---- - .../skia/include/private/SkFloatingPoint.h | 24 +++++++++++++++++++ - 1 file changed, 24 insertions(+) - -diff --git a/src/third_party/skia/include/private/SkFloatingPoint.h b/src/third_party/skia/include/private/SkFloatingPoint.h -index 110dda2ae4..8223e9b57d 100644 ---- a/src/third_party/skia/include/private/SkFloatingPoint.h -+++ b/src/third_party/skia/include/private/SkFloatingPoint.h -@@ -159,7 +159,15 @@ static inline int64_t sk_float_saturate2int64(float x) { - // Cast double to float, ignoring any warning about too-large finite values being cast to float. - // Clang thinks this is undefined, but it's actually implementation defined to return either - // the largest float or infinity (one of the two bracketing representable floats). Good enough! -+#if defined(__GNUC__) && __GNUC__ >= 8 -+__attribute__((no_sanitize("float-cast-overflow"))) -+#else -+# if defined(__GNUC__) -+__attribute__((no_sanitize_undefined)) -+# else - [[clang::no_sanitize("float-cast-overflow")]] -+# endif -+#endif - static inline float sk_double_to_float(double x) { - return static_cast(x); - } -@@ -226,12 +234,28 @@ static inline float sk_float_rsqrt(float x) { - // IEEE defines how float divide behaves for non-finite values and zero-denoms, but C does not - // so we have a helper that suppresses the possible undefined-behavior warnings. - -+#if defined(__GNUC__) && __GNUC__ >= 8 -+__attribute__((no_sanitize("float-divide-by-zero"))) -+#else -+# if defined(__GNUC__) -+__attribute__((no_sanitize_undefined)) -+# else - [[clang::no_sanitize("float-divide-by-zero")]] -+# endif -+#endif - static inline float sk_ieee_float_divide(float numer, float denom) { - return numer / denom; - } - -+#if defined(__GNUC__) && __GNUC__ >= 8 -+__attribute__((no_sanitize("float-cast-overflow"))) -+#else -+# if defined(__GNUC__) -+__attribute__((no_sanitize_undefined)) -+# else - [[clang::no_sanitize("float-divide-by-zero")]] -+# endif -+#endif - static inline double sk_ieee_double_divide(double numer, double denom) { - return numer / denom; - } --- -2.30.1 - diff --git a/recipes-wam/chromium/gn-utils.inc b/recipes-wam/chromium/gn-utils.inc deleted file mode 100644 index 156b56d2d..000000000 --- a/recipes-wam/chromium/gn-utils.inc +++ /dev/null @@ -1,32 +0,0 @@ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. - -def gn_arch_name(yocto_arch): - """Translates between Yocto's architecture values and the corresponding - ones used by GN.""" - translation_table = { - 'aarch64': 'arm64', - 'arm': 'arm', - 'i586': 'x86', - 'i686': 'x86', - 'x86_64': 'x64', - } - try: - return translation_table[yocto_arch] - except KeyError: - bb.fatal('"%s" is not a supported architecture.' % yocto_arch) diff --git a/recipes-wam/wam/files/WebAppMgr.env b/recipes-wam/wam/files/WebAppMgr.env deleted file mode 100644 index c8ddc5173..000000000 --- a/recipes-wam/wam/files/WebAppMgr.env +++ /dev/null @@ -1,202 +0,0 @@ -##### AGL: not set in WebAppMgr@.service -#XDG_SESSION_ID="c2" - -##### AGL: set by WebAppMgr@.service (depends on user) -#XDG_RUNTIME_DIR="/run/user/%i" - -# Set wam executable file path -HOOK_SEGV=NO -WAM_EXE_PATH="/usr/bin/WebAppMgr" - -# Set wam name for user-agent -WAM_NAME="WebAppManager" - -# Only allow UTF8 encoding for luna-service messages. -LS_ENABLE_UTF8=1 - -# Set effective userid and groupid -#WAM_UID="wam" -#WAM_GID="compositor" - -# Set location of error page (will follow localization rules based on this path) -#WAM_ERROR_PAGE="file:///usr/share/localization/wam/loaderror.html" - -# suspending javascript execution delay for page visibility -WAM_SUSPEND_DELAY_IN_MS=250 - -#if [ -e "etc/wam/make_shm.sh" ] ; then -# /etc/wam/make_shm.sh -#fi - -# Set user data directory for WebAppMgr -##### AGL: set by WebAppMgr@.service (depends on user) -#WAM_DATA_PATH="/home/%i/wamdata" - -# ensure that wam data directories exist -#mkdir -p ${WAM_DATA_PATH} - -# set directories permission -#chown ${WAM_UID}:${WAM_GID} ${WAM_DATA_PATH} - -# setup 50 Mb maximum for ApplicationCache -WAM_APPCACHE_MAXSIZE=52428800 - -# setup 10 Mb maximum for ApplicationCache per domain -WAM_APPCACHE_DOMAINLIMIT=10485760 - -# setup 50 Mb maximum for DiskCache -WAM_DISKCACHE_MAXSIZE=52428800 - -# setup 256 Kb maximum for resource buffer allocation -WAM_RESOURCE_BUFFER_MAX_ALLOC_SIZE=262144 - -# setup 1 Mb for resource buffer -WAM_RESOURCE_BUFFER_SIZE=1048576 - -# setup 200 seconds for watchdog timeout of render process -WATCHDOG_RENDER_TIMEOUT=200 - -# setup nubmer of raster threads to 1 -BLINK_NUM_RASTER_THREADS=2 - -# use default tile width if not sed by recipe -#if [ "$BLINK_NUM_RASTER_THREADS" = "WEBOS${BLINK_NUM_RASTER_THREADS#WEBOS}" ]; then -BLINK_NUM_RASTER_THREADS=1 -#fi - -# setup 6 Mb maximum for the program GPU cache -GPU_PROGRAM_CACHE_SIZE=6144 - -# disable using enyo system app specfic optimization -# currently used optimizations : inline caching off -#USE_SYSTEM_APP_OPTIMIZATION="0" - -# Set location of NaCl modules -#CHROMIUM_PATH="/usr/palm/applications/com.lge.app.chromium" -#NACL_PLUGIN=${CHROMIUM_PATH}"/libppGoogleNaClPluginChrome.so" -#NACL_IRT_LIBRARY=${CHROMIUM_PATH}"/nacl_irt_arm.nexe" -#NACL_HELPER=${CHROMIUM_PATH}"/nacl_helper" -#NACL_HELPER_BOOTSTRAP=${CHROMIUM_PATH}"/nacl_helper_bootstrap" - -# Set location of NPAPI plugins for all Apps including default Apps -# This is for the flash plugin of Signage, webOS TV doesn't use it. -#PRIVILEGED_PLUGIN_PATH="" - -# Set location of NPAPI plugins for NetCast Apps -# NetCast Apps should access only the plugins in this path -#NETCAST_PLUGIN_PATH="/usr/lib/BrowserPlugins" - -# Set location of NPAPI plugins for HbbTV app. -#HBBTV_PLUGIN_PATH="/usr/lib/HbbtvPlugins" - -# Set InetTV player stored path -#INETTV_HTML_PLAYER_PATH="/usr/share/inettv/inettv_player/index.html" - -# Set location of extra libraries -#CDM_LIB_PATH="/usr/lib" - -# Set location of all NPAPI plugins -NPAPI_PLUGIN_PATH=${HBBTV_PLUGIN_PATH}":"${NETCAST_PLUGIN_PATH}":"${PRIVILEGED_PLUGIN_PATH} - -#if [ -e "etc/wam/make_shm.sh" ] ; then -# /etc/wam/make_shm.sh -#fi - -# setup 8 Mb minimum codecache capacity -JSC_minGlobalCodeCacheCapacity=8388608 - -# Enable more explicit logging of timing with regards to rendering -# export WAM2_ENABLE_DEBUG_RENDER_TIMING=1 - -# enable Web Inspector and Tellurium if in developer mode -TELLURIUM_NUB_PATH=/usr/palm/tellurium/telluriumnub.js -ENABLE_INSPECTOR=1 - -# Enable cursor by default -ENABLE_CURSOR_BY_DEFAULT=1 - -# Enable launch optimization -ENABLE_LAUNCH_OPTIMIZATION=1 - -# Set the duration(seconds) passed from last network activity (e.g. FMP Detector) -# If set to a positive value, adjust a custom timeout for a network stable timer in FMPDetector -NETWORK_STABLE_TIMEOUT=3 - -# please keep it in alphabetical order -#WAM_EXTRA_FLAGS="" -#WAM_JS_FLAGS="" -#WAM_COMMON_SWITCHES=" \ -# --application-cache-domain-limit=$WAM_APPCACHE_DOMAINLIMIT \ -# --application-cache-size=$WAM_APPCACHE_MAXSIZE \ -# --browser-subprocess-path=$WAM_EXE_PATH \ -# --disable-direct-npapi-requests \ -# --disable-extensions \ -# --disable-low-res-tiling \ -# --disable-new-video-renderer \ -# --disk-cache-size=$WAM_DISKCACHE_MAXSIZE \ -# --enable-aggressive-release-policy \ -# --enable-accelerated-plugin-rendering \ -# --accelerated-plugin-rendering-blacklist=device;drmAgent;sound;service \ -# --enable-gpu-rasterization \ -# --disable-gpu-rasterization-for-first-frame \ -# --enable-key-event-throttling \ -# --enable-threaded-compositing \ -# --enable-watchdog \ -# --hide-selection-handles \ -# --ignore-gpu-blacklist \ -# --ignore-netif=p2p \ -# --in-process-gpu \ -# --max-unused-resource-memory-usage-percentage=0 \ -# --network-stable-timeout=$NETWORK_STABLE_TIMEOUT \ -# --noerrdialogs \ -# --num-raster-threads=$BLINK_NUM_RASTER_THREADS \ -# --ozone-platform=wayland \ -# --remote-debugging-port=9998 \ -# --resource-buffer-max-allocation-size=$WAM_RESOURCE_BUFFER_MAX_ALLOC_SIZE \ -# --resource-buffer-size=$WAM_RESOURCE_BUFFER_SIZE \ -# --touch-events=disabled \ -# --ui-disable-opaque-shader-program \ -# --user-agent-suffix=SmartTV \ -# --user-data-dir=$WAM_DATA_PATH \ -# --enable-devtools-experiments \ -# --webos-wam \ " - -#WAM_LITE_SWITCHES=" --in-process-zygote " - -#export WAM_WEBOS_LITE=NO -#if [ "${WAM_WEBOS_LITE}" = "YES" ] ; then -# export WAM_SWITCHES=${WAM_COMMON_SWITCHES}${WAM_LITE_SWITCHES} -# export SKIA_FONT_CACHE_SIZE=1 -# export SKIA_IMAGE_CACHE_SIZE=40 -# export SKIA_BACKGROUND_FONT_CACHE_SIZE=0 -#else -# export WAM_SWITCHES=${WAM_COMMON_SWITCHES} -# export SKIA_FONT_CACHE_SIZE=8 -# export SKIA_IMAGE_CACHE_SIZE=80 -# export SKIA_BACKGROUND_FONT_CACHE_SIZE=512 -#fi - -#export WAM_EXTRA_SKIA_CACHE_SWITCHES=" \ -# --skia-font-cache-size-mb=$SKIA_FONT_CACHE_SIZE \ -# --skia-image-cache-size-mb=$SKIA_IMAGE_CACHE_SIZE \ -# --skia-background-font-cache-size-kb=$SKIA_BACKGROUND_FONT_CACHE_SIZE \ -# " - -#export WAM_EXTRA_GPU_TUNING_SWITCHES=" \ -# --gpu-program-cache-size-kb=$GPU_PROGRAM_CACHE_SIZE \ -# " -#export WAM_WATCHDOG_RENDER_TIMEOUT_SWITCHES=" \ -# --watchdog-render-timeout=$WATCHDOG_RENDER_TIMEOUT \ -# " - -#WEBOS_LOAD_ACCESSIBILITY_PLUGIN=1 - -#WAM_V8_CODE_CACHE_SWITCHES=" --enable-local-resource-code-cache --disallow-code-cache-from-file-uris-with-query-string " - -# Load any special configuration from plugins -#if [ -e "/etc/wam/plugins/conf.sh" ] ; then -# . /etc/wam/plugins/conf.sh || true -#fi - -#exec $WAM_EXE_PATH $WAM_SWITCHES $WAM_EXTRA_SKIA_CACHE_SWITCHES $WAM_EXTRA_GPU_TUNING_SWITCHES $WAM_WATCHDOG_RENDER_TIMEOUT_SWITCHES $WAM_EXTRA_FLAGS $WAM_V8_CODE_CACHE_SWITCHES --js-flags="$WAM_JS_FLAGS" - diff --git a/recipes-wam/wam/files/WebAppMgr@.service b/recipes-wam/wam/files/WebAppMgr@.service deleted file mode 100644 index beffd114c..000000000 --- a/recipes-wam/wam/files/WebAppMgr@.service +++ /dev/null @@ -1,37 +0,0 @@ -# @@@LICENSE -# -# Copyright (c) 2017-2018 LG Electronics, Inc. -# -# Confidential computer software. Valid license from LG required for -# possession, use or copying. Consistent with FAR 12.211 and 12.212, -# Commercial Computer Software, Computer Software Documentation, and -# Technical Data for Commercial Items are licensed to the U.S. Government -# under vendor's standard commercial license. -# -# LICENSE@@@ - -[Unit] -Description="WebAppMgr is responsible for running web apps and manage their lifecycle" -After=afm-service-homescreen-service--0.1--main@%i.service weston@display.service -Wants=afm-service-homescreen-service--0.1--main@%i.service -BindsTo=weston@display.service - -[Service] -Type=simple -User=%i -Slice=user-%i.slice -SmackProcessLabel=System -SupplementaryGroups=audio display -UMask=0077 -CapabilityBoundingSet= -OOMScoreAdjust=-1000 -EnvironmentFile=-/etc/default/WebAppMgr.env -Environment=XDG_RUNTIME_DIR=/run/user/%i -Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%i/bus -Environment=WAM_DATA_PATH="/home/%i/wamdata" -ExecStart=/usr/bin/WebAppMgr --enable-features=UseOzonePlatform --ozone-platform=wayland --no-sandbox --use-viz-fmp-with-timeout=0 --in-process-gpu --remote-debugging-port=9998 --user-data-dir="/home/%i/wamdata" --webos-wam -Restart=on-failure -RestartSec=50 - -[Install] -WantedBy=default.target diff --git a/recipes-wam/wam/files/trunc-webapp-roles.patch b/recipes-wam/wam/files/trunc-webapp-roles.patch deleted file mode 100644 index 829abe07f..000000000 --- a/recipes-wam/wam/files/trunc-webapp-roles.patch +++ /dev/null @@ -1,56 +0,0 @@ -From f31e93261f34abaa3dcdc4959963f5b5a8983002 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jan-Simon=20M=C3=B6ller?= -Date: Thu, 25 Jun 2020 19:47:24 +0200 -Subject: [PATCH] Set webapp roles that are max 12 characters long. - -From: =?UTF-8?q?Jacobo=20Aragunde=20P=C3=A9rez?= - -This is a workaround for SPEC-3127. To prevent repeated roles as much -as possible, I'm using the appid as a basis instead of "Webapp-" + -host + port, which has many chances to be redundant in the first 12 -chars. - -Bug-AGL: SPEC-3127 - ---- - src/agl/WebRuntimeAGL.cpp | 10 +++------- - 1 file changed, 3 insertions(+), 7 deletions(-) - -diff --git a/src/agl/WebRuntimeAGL.cpp b/src/agl/WebRuntimeAGL.cpp -index aed928b..efd2ee4 100644 ---- a/src/agl/WebRuntimeAGL.cpp -+++ b/src/agl/WebRuntimeAGL.cpp -@@ -274,7 +274,6 @@ int WebAppLauncherRuntime::run(int argc, const char** argv) { - - m_id = getAppId(args); - m_url = getAppUrl(args); -- m_role = "WebApp"; - - setup_signals(); - -@@ -326,15 +325,9 @@ bool WebAppLauncherRuntime::init() { - if (n != std::string::npos) { - std::string sport = authority.substr(n+1); - m_host = authority.substr(0, n); -- m_role.push_back('-'); -- m_role.append(m_host); -- m_role.push_back('-'); -- m_role.append(sport); - m_port = stringTo(sport); - } else { - m_host = authority; -- m_role.push_back('-'); -- m_role.append(m_host); - } - } - -@@ -375,6 +368,9 @@ bool WebAppLauncherRuntime::init() { - m_role = "homescreen"; - else if (m_id.rfind("webapps-homescreen", 0) == 0) - m_role = "homescreen"; -+ else { -+ m_role = m_id.substr(0,12); -+ } - - LOG_DEBUG("id=[%s], name=[%s], role=[%s], url=[%s], host=[%s], port=%d, token=[%s], width=[%s], height[%s], surface_type[%d], panel_type[%d]", - m_id.c_str(), m_name.c_str(), m_role.c_str(), m_url.c_str(), diff --git a/recipes-wam/wam/files/wam-user-setup.sh b/recipes-wam/wam/files/wam-user-setup.sh deleted file mode 100755 index 515ea82ec..000000000 --- a/recipes-wam/wam/files/wam-user-setup.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -uid="$1" -bdir=/run/user -udir="$bdir/$uid" -hdir="/home/$uid" - -dodir() { - local x smackset="$1" - shift - for x; do - test -e "$x" || mkdir -m 700 "$x" - chmod 700 "$x" - chown "$uid:$uid" "$x" - chsmack $smackset "$x" - done -} - -dodir '-t -a User::Home' "$hdir/wamdata" - -# Initialize lockfile, without this apps will be blocked by SMACK -touch "$udir/wamsocket.lock" -chmod 660 "$udir/wamsocket.lock" -chown "$uid:$uid" "$udir/wamsocket.lock" -chsmack -a User::App-Shared "$udir/wamsocket.lock" diff --git a/recipes-wam/wam/files/wam-user-setup@.service b/recipes-wam/wam/files/wam-user-setup@.service deleted file mode 100644 index f4814787d..000000000 --- a/recipes-wam/wam/files/wam-user-setup@.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=Set up WAM for user %i -Requires=afm-user-setup@i.service -After=user-runtime-dir@%i.service afm-user-setup@i.service -Before=user@%i.service - -[Service] -Type=oneshot -StartLimitInterval=0 -ExecStart=-/usr/libexec/wam/wam-user-setup.sh %i diff --git a/recipes-wam/wam/wam_git.bb b/recipes-wam/wam/wam_git.bb deleted file mode 100644 index 9de8573fa..000000000 --- a/recipes-wam/wam/wam_git.bb +++ /dev/null @@ -1,64 +0,0 @@ -SUMMARY = "WAM" -AUTHOR = "Jani Hautakangas " -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" - -inherit cmake - -DEPENDS = "glib-2.0 jsoncpp boost chromium84 libhomescreen protobuf protobuf-native" - -EXTRA_OECMAKE = "\ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=${prefix} \ - -DPLATFORM_NAME=${@'${DISTRO}'.upper().replace('-', '_')} \ - -DCHROMIUM_SRC_DIR=${STAGING_INCDIR}/chromium84" - -PR="r0" - -PROVIDES += "virtual/webruntime" -RPROVIDES:${PN} += "virtual/webruntime" - -# Disable some of securit_flags -# Disable D_FORTIFY_SOURCE=2 and -fstack-protector-strong -# Refer conf/distro/include/security_flags.inc in meta-webos/conf/distro/include/webos.inc -lcl_maybe_fortify = "" -SECURITY_STACK_PROTECTOR = "" - -SRC_URI = "\ - git://github.com/igalia/${BPN}.git;branch=koi;protocol=https \ - file://WebAppMgr@.service \ - file://WebAppMgr.env \ - file://wam-user-setup.sh \ - file://wam-user-setup@.service \ - file://trunc-webapp-roles.patch \ -" -S = "${WORKDIR}/git" -SRCREV = "2a246d2ea79bd335b86942a5579d6de0c9ddce40" - -do_install:append() { - install -d ${D}${sysconfdir}/wam - install -v -m 644 ${S}/files/launch/security_policy.conf ${D}${sysconfdir}/wam/security_policy.conf - install -d ${D}${systemd_system_unitdir} - install -v -m 644 ${WORKDIR}/WebAppMgr@.service ${D}${systemd_system_unitdir}/WebAppMgr@.service - install -d ${D}${sysconfdir}/default/ - install -v -m 644 ${WORKDIR}/WebAppMgr.env ${D}${sysconfdir}/default/WebAppMgr.env - ln -snf WebAppMgr ${D}${bindir}/web-runtime - install -d ${D}${systemd_system_unitdir}/afm-user-session@.target.wants - ln -sf ../WebAppMgr@.service ${D}${systemd_system_unitdir}/afm-user-session@.target.wants/ - install -d ${D}${libexecdir}/wam/ - install -v -m 755 ${WORKDIR}/wam-user-setup.sh ${D}${libexecdir}/wam/wam-user-setup.sh - install -v -m 644 ${WORKDIR}/wam-user-setup@.service ${D}${systemd_system_unitdir}/wam-user-setup@.service - install -d ${D}${systemd_system_unitdir}/user-runtime-dir@.service.wants/ - ln -sf ../wam-user-setup@.service ${D}${systemd_system_unitdir}/user-runtime-dir@.service.wants/ -} - -FILES:${PN} += "${sysconfdir}/init ${sysconfdir}/wam ${libdir}/webappmanager/plugins/*.so ${systemd_system_unitdir}" - -CXXFLAGS:append:agl-devel = " -DAGL_DEVEL" - -do_install:append:agl-devel() { - # Enable remote inspector and dev mode - install -d ${D}${localstatedir}/agl-devel/preferences - touch ${D}${localstatedir}/agl-devel/preferences/debug_system_apps - touch ${D}${localstatedir}/agl-devel/preferences/devmode_enabled -} diff --git a/scripts/run-yocto-check-layer-all-layers.sh b/scripts/run-yocto-check-layer-all-layers.sh index 20ded0e93..2d96eda51 100755 --- a/scripts/run-yocto-check-layer-all-layers.sh +++ b/scripts/run-yocto-check-layer-all-layers.sh @@ -52,10 +52,8 @@ yocto-check-layer -d \ $AGLROOT/external/meta-openembedded/meta-perl \ $AGLROOT/meta-agl/meta-agl-core \ $AGLROOT/external/meta-qt5 \ - $AGLROOT/meta-agl/meta-app-framework \ --additional-layers \ $AGLROOT/external/meta-qt5 \ - $AGLROOT/meta-agl/meta-app-framework \ $AGLROOT/external/meta-python2 \ -- \ $AGLROOT/meta-agl-demo diff --git a/templates/feature/agl-cloudproxy/50_local.conf.inc b/templates/feature/agl-cloudproxy/50_local.conf.inc deleted file mode 100644 index 93b0cb407..000000000 --- a/templates/feature/agl-cloudproxy/50_local.conf.inc +++ /dev/null @@ -1,2 +0,0 @@ -# Set cloud proxy flag -AGL_CLOUDPROXY_WANTED = "1" \ No newline at end of file diff --git a/templates/feature/agl-demo/50_bblayers.conf.inc b/templates/feature/agl-demo/50_bblayers.conf.inc index 5562e5e03..7dfba9085 100644 --- a/templates/feature/agl-demo/50_bblayers.conf.inc +++ b/templates/feature/agl-demo/50_bblayers.conf.inc @@ -5,11 +5,13 @@ BBLAYERS =+ " \ " AGL_META_FILESYSTEMS = "${METADIR}/external/meta-openembedded/meta-filesystems" +AGL_META_PYTHON = "${METADIR}/external/meta-openembedded/meta-python" # OpenEmbedded layer to add support for multiple cloud service provider solutions #--------------------------------------------------- BBLAYERS =+ " \ - ${METADIR}/external/meta-iot-cloud \ ${METADIR}/external/meta-qt5 \ - ${METADIR}/external/meta-python2 \ " + +# ${METADIR}/external/meta-python2 \ +# \ No newline at end of file diff --git a/templates/feature/agl-demo/50_local.conf.inc b/templates/feature/agl-demo/50_local.conf.inc index 3b866e6f0..76626243c 100644 --- a/templates/feature/agl-demo/50_local.conf.inc +++ b/templates/feature/agl-demo/50_local.conf.inc @@ -1,6 +1,2 @@ #see meta-agl-demo/conf/include/agl-demo.inc require conf/include/agl-demo.inc - -#see meta-agl-demo/conf/include/agl-cloudproxy.inc -#SPEC-3826 -require conf/include/agl-cloudproxy.inc diff --git a/templates/feature/agl-demo/README_feature_agl-demo.md b/templates/feature/agl-demo/README_feature_agl-demo.md index 76b587edb..31883cd69 100644 --- a/templates/feature/agl-demo/README_feature_agl-demo.md +++ b/templates/feature/agl-demo/README_feature_agl-demo.md @@ -11,8 +11,6 @@ authors: Jan-Simon Möller , Martin Kelly